import { columnHelper } from './helper'; export const clusterIP = columnHelper.accessor('ClusterIPs', { header: 'Cluster IP', id: 'clusterIP', cell: ({ getValue }) => { const clusterIPs = getValue(); if (!clusterIPs?.length) { return '-'; } return clusterIPs.map((ip) =>
{ip}
); }, sortingFn: (rowA, rowB) => { const a = rowA.original.ClusterIPs; const b = rowB.original.ClusterIPs; const ipA = a?.[0]; const ipB = b?.[0]; // no ip's at top, followed by 'None', then ordered by ip if (!ipA) return 1; if (!ipB) return -1; if (ipA === ipB) return 0; if (ipA === 'None') return 1; if (ipB === 'None') return -1; // natural sort of the ip return ipA.localeCompare( ipB, navigator.languages[0] || navigator.language, { numeric: true, ignorePunctuation: true, } ); }, });