Files
feishin/src/renderer/components/item-list/item-table-list/columns/text-column.tsx
T
2025-11-29 19:30:49 -08:00

25 lines
824 B
TypeScript

import {
ItemTableListInnerColumn,
TableColumnTextContainer,
} from '/@/renderer/components/item-list/item-table-list/item-table-list-column';
import { Skeleton } from '/@/shared/components/skeleton/skeleton';
export const TextColumn = (props: ItemTableListInnerColumn) => {
const row: string | undefined = (props.data as (any | undefined)[])[props.rowIndex]?.[
props.columns[props.columnIndex].id
];
if (typeof row === 'string' && row) {
const maxLength = 100;
const displayText = row.length > maxLength ? `${row.slice(0, maxLength)}...` : row;
return <TableColumnTextContainer {...props}>{displayText}</TableColumnTextContainer>;
}
return (
<TableColumnTextContainer {...props}>
<Skeleton />
</TableColumnTextContainer>
);
};