diff --git a/.changeset/violet-memes-bet.md b/.changeset/violet-memes-bet.md new file mode 100644 index 0000000000..440c762ffa --- /dev/null +++ b/.changeset/violet-memes-bet.md @@ -0,0 +1,5 @@ +--- +'@backstage/canon': patch +--- + +Add support for column sizing in DataTable. diff --git a/packages/canon/src/components/DataTable/Pagination/DataTablePagination.tsx b/packages/canon/src/components/DataTable/Pagination/DataTablePagination.tsx index c1c73ee13c..eabea109fa 100644 --- a/packages/canon/src/components/DataTable/Pagination/DataTablePagination.tsx +++ b/packages/canon/src/components/DataTable/Pagination/DataTablePagination.tsx @@ -36,6 +36,7 @@ const DataTablePagination = forwardRef( return (
diff --git a/packages/canon/src/components/DataTable/Table/DataTableTable.tsx b/packages/canon/src/components/DataTable/Table/DataTableTable.tsx index 6b0fafa67d..954cf9f703 100644 --- a/packages/canon/src/components/DataTable/Table/DataTableTable.tsx +++ b/packages/canon/src/components/DataTable/Table/DataTableTable.tsx @@ -28,13 +28,21 @@ const DataTableTable = forwardRef( const { table } = useDataTable(); return ( - + {table.getHeaderGroups().map(headerGroup => ( {headerGroup.headers.map(header => { return ( - + {header.isPlaceholder ? null : flexRender( @@ -55,7 +63,10 @@ const DataTableTable = forwardRef( data-state={row.getIsSelected() && 'selected'} > {row.getVisibleCells().map(cell => ( - + {flexRender(cell.column.columnDef.cell, cell.getContext())} ))} @@ -66,6 +77,7 @@ const DataTableTable = forwardRef( No results. diff --git a/packages/canon/src/components/DataTable/mocked-columns.tsx b/packages/canon/src/components/DataTable/mocked-columns.tsx index 9f2ce72378..e2d898769f 100644 --- a/packages/canon/src/components/DataTable/mocked-columns.tsx +++ b/packages/canon/src/components/DataTable/mocked-columns.tsx @@ -42,6 +42,7 @@ export const columns: ColumnDef[] = [ ), enableSorting: false, enableHiding: false, + size: 50, }, { accessorKey: 'name', @@ -53,6 +54,7 @@ export const columns: ColumnDef[] = [ href="/" /> ), + size: 450, }, { accessorKey: 'owner', @@ -60,15 +62,18 @@ export const columns: ColumnDef[] = [ cell: ({ row }) => ( ), + size: 200, }, { accessorKey: 'type', header: 'Type', cell: ({ row }) => , + size: 150, }, { accessorKey: 'tags', header: 'Tags', cell: ({ row }) => , + size: 150, }, ];