import type { ICellRendererParams } from '@ag-grid-community/core'; import { Skeleton } from '/@/renderer/components/skeleton'; import { CellContainer } from '/@/renderer/components/virtual-table/cells/generic-cell'; import { useMemo } from 'react'; import { Text } from '/@/renderer/components/text'; const URL_REGEX = /((?:https?:\/\/)?(?:[\w-]{1,32}(?:\.[\w-]{1,32})+)(?:\/[\w\-./?%&=][^.|^\s]*)?)/g; const replaceURLWithHTMLLinks = (text: string) => { const urlRegex = new RegExp(URL_REGEX, 'g'); return text.replaceAll( urlRegex, (url) => `${url}`, ); }; export const NoteCell = ({ value }: ICellRendererParams) => { const formattedValue = useMemo(() => { if (!value) { return ''; } return replaceURLWithHTMLLinks(value); }, [value]); if (value === undefined) { return ( ); } return ( ); };