diff --git a/web/default/src/components/data-table/core/data-table-row.tsx b/web/default/src/components/data-table/core/data-table-row.tsx index 6ae1cf98..cb4b8e8c 100644 --- a/web/default/src/components/data-table/core/data-table-row.tsx +++ b/web/default/src/components/data-table/core/data-table-row.tsx @@ -57,17 +57,22 @@ function DataTableRowInner({ className={className} {...rowProps} > - {row.getVisibleCells().map((cell) => ( - - {renderCellContent(cell)} - - ))} + {row.getVisibleCells().map((cell) => { + const renderedCell = renderCellContent(cell) + + return ( + + {renderedCell.content} + + ) + })} ) } @@ -100,9 +105,16 @@ function renderCellContent(cell: Cell) { const content = flexRender(cell.column.columnDef.cell, cell.getContext()) const textContent = getPrimitiveTextContent(content) - if (!textContent) return content + if (!textContent) { + return { content, isPrimitive: false } + } - return {content} + return { + content: ( + {content} + ), + isPrimitive: true, + } } function getPrimitiveTextContent(content: React.ReactNode): string | null { @@ -110,13 +122,5 @@ function getPrimitiveTextContent(content: React.ReactNode): string | null { return String(content) } - if ( - React.isValidElement<{ children?: React.ReactNode }>(content) && - (typeof content.props.children === 'string' || - typeof content.props.children === 'number') - ) { - return String(content.props.children) - } - return null } diff --git a/web/default/src/components/data-table/core/table-sizing.ts b/web/default/src/components/data-table/core/table-sizing.ts index aae3d791..1075088e 100644 --- a/web/default/src/components/data-table/core/table-sizing.ts +++ b/web/default/src/components/data-table/core/table-sizing.ts @@ -26,5 +26,9 @@ export function getTableSizeStyle( .getVisibleLeafColumns() .reduce((total, column) => total + column.getSize(), 0) - return { minWidth: width, tableLayout: 'fixed', width: '100%' } + return { + minWidth: `max(100%, ${width}px)`, + tableLayout: 'auto', + width: 'max-content', + } } diff --git a/web/default/src/features/usage-logs/components/model-badge.tsx b/web/default/src/features/usage-logs/components/model-badge.tsx index 66648c54..2c8dedd8 100644 --- a/web/default/src/features/usage-logs/components/model-badge.tsx +++ b/web/default/src/features/usage-logs/components/model-badge.tsx @@ -101,12 +101,12 @@ function ModelBadgeContent(props: ModelBadgeProps) { showDot={!provider} autoColor={provider ? undefined : props.modelName} className={cn( - 'border-border/60 bg-muted/30 h-6 max-w-full gap-1.5 rounded-md border px-2 [font-family:var(--font-body)]', + 'border-border/60 bg-muted/30 h-6 max-w-none gap-1.5 rounded-md border px-2 [font-family:var(--font-body)]', provider && 'text-foreground', props.className )} > - + {provider && ( )} - {props.modelName} + {props.modelName} )