ingress.getName(),
[columnId.namespace]: ingress => ingress.getNs(),
[columnId.age]: ingress => -ingress.getCreationTimestamp(),
} }
searchFilters={ [
ingress => ingress.getSearchFields(),
ingress => ingress.getPorts(),
] }
renderHeaderTitle="Ingresses"
renderTableHeader={ [
{ title: "Name", className: "name", sortBy: columnId.name, id: columnId.name },
{ className: "warning", showWithColumn: columnId.name },
{ title: "Namespace", className: "namespace", sortBy: columnId.namespace, id: columnId.namespace },
{ title: "LoadBalancers", className: "loadbalancers", id: columnId.loadBalancers },
{ title: "Rules", className: "rules", id: columnId.rules },
{ title: "Age", className: "age", sortBy: columnId.age, id: columnId.age },
] }
renderTableContents={ ingress => [
ingress.getName(),
,
,
ingress.getLoadBalancers().map(lb => { lb }
),
computeRouteDeclarations(ingress).map(decl => (
decl.displayAsLink
? (
)
: (
{ `${decl.url} ⇢ ${decl.service}` }
)
)),
,
] }
tableProps={ {
customRowHeights: (item, lineHeight, paddings) => {
const lines = item.getRoutes().length || 1;
return lines * lineHeight + paddings;
},
} } />