import type { ICellRendererParams } from '@ag-grid-community/core'; import React, { useMemo } from 'react'; import { generatePath } from 'react-router'; import { Link } from 'react-router-dom'; import styles from './combined-title-cell.module.css'; import { ListCoverControls } from '/@/renderer/components/virtual-table/cells/combined-title-cell-controls'; import { AppRoute } from '/@/renderer/router/routes'; import { SEPARATOR_STRING } from '/@/shared/api/utils'; import { Image } from '/@/shared/components/image/image'; import { Skeleton } from '/@/shared/components/skeleton/skeleton'; import { Text } from '/@/shared/components/text/text'; import { AlbumArtist, Artist } from '/@/shared/types/domain-types'; export const CombinedTitleCell = ({ context, data, node, rowIndex, value, }: ICellRendererParams) => { const artists = useMemo(() => { if (!value) return null; return value.artists?.length ? value.artists : value.albumArtists; }, [value]); if (value === undefined) { return (