feat(plugins/catalog): added custom sort on createLabelColumn

Signed-off-by: Aurelio Saraiva <aurelio.saraiva@creditas.com.br>
This commit is contained in:
Aurelio Saraiva
2024-04-08 14:23:19 +02:00
parent 06be96d9d3
commit 1370bc6c34
@@ -184,12 +184,23 @@ export const columnFactories = Object.freeze({
key: string,
options?: { title?: string; defaultValue?: string },
): TableColumn<CatalogTableRow> {
function formatContent(keyLabel: string, entity: Entity): string {
const labels: Record<string, string> | undefined =
entity.metadata?.labels;
return (labels && labels[keyLabel]) || '';
}
return {
title: options?.title || 'Label',
field: 'entity.metadata.labels',
cellStyle: {
padding: '0px 16px 0px 20px',
},
customSort({ entity: entity1 }, { entity: entity2 }) {
return formatContent(key, entity1).localeCompare(
formatContent(key, entity2),
);
},
render: ({ entity }: { entity: Entity }) => {
const labels: Record<string, string> | undefined =
entity.metadata?.labels;