@multiplatform.one/table 7.4.1 → 7.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/ChildTable/index.cjs +12 -3
- package/dist/cjs/components/ChildTable/index.native.js +14 -3
- package/dist/cjs/components/ChildTable/index.native.js.map +1 -1
- package/dist/cjs/components/ColumnHeaderFilter/index.cjs +11 -13
- package/dist/cjs/components/ColumnHeaderFilter/index.native.js +11 -16
- package/dist/cjs/components/ColumnHeaderFilter/index.native.js.map +1 -1
- package/dist/cjs/components/DataTable/DataTableCardControls.cjs +7 -4
- package/dist/cjs/components/DataTable/DataTableCardControls.native.js +7 -4
- package/dist/cjs/components/DataTable/DataTableCardControls.native.js.map +1 -1
- package/dist/cjs/components/DataTable/DataTableDocumentList.cjs +10 -4
- package/dist/cjs/components/DataTable/DataTableDocumentList.native.js +10 -4
- package/dist/cjs/components/DataTable/DataTableDocumentList.native.js.map +1 -1
- package/dist/cjs/components/DataTable/DataTableMobileCards.cjs +6 -1
- package/dist/cjs/components/DataTable/DataTableMobileCards.native.js +6 -1
- package/dist/cjs/components/DataTable/DataTableMobileCards.native.js.map +1 -1
- package/dist/cjs/components/DataTable/DataTableRoot.cjs +55 -42
- package/dist/cjs/components/DataTable/DataTableRoot.native.js +55 -42
- package/dist/cjs/components/DataTable/DataTableRoot.native.js.map +1 -1
- package/dist/cjs/components/DataTable/DataTableVirtualized.cjs +5 -2
- package/dist/cjs/components/DataTable/DataTableVirtualized.native.js +5 -2
- package/dist/cjs/components/DataTable/DataTableVirtualized.native.js.map +1 -1
- package/dist/cjs/components/DataTable/dataTableChrome.cjs +59 -0
- package/dist/cjs/components/DataTable/dataTableChrome.native.js +62 -0
- package/dist/cjs/components/DataTable/dataTableChrome.native.js.map +1 -0
- package/dist/cjs/components/DataTable/index.native.js +34 -20
- package/dist/cjs/components/DataTable/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableBulkActions/index.cjs +6 -4
- package/dist/cjs/components/DataTableBulkActions/index.native.js +6 -4
- package/dist/cjs/components/DataTableBulkActions/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableCell/CellModalEditor.cjs +9 -31
- package/dist/cjs/components/DataTableCell/CellModalEditor.native.js +2 -5
- package/dist/cjs/components/DataTableCell/CellModalEditor.native.js.map +1 -1
- package/dist/cjs/components/DataTableCell/CellOptionsEditor.cjs +0 -1
- package/dist/cjs/components/DataTableCell/CellOptionsEditor.native.js +0 -1
- package/dist/cjs/components/DataTableCell/CellOptionsEditor.native.js.map +1 -1
- package/dist/cjs/components/DataTableColumnPinning/index.cjs +7 -4
- package/dist/cjs/components/DataTableColumnPinning/index.native.js +7 -4
- package/dist/cjs/components/DataTableColumnPinning/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableDateFilter/index.cjs +24 -22
- package/dist/cjs/components/DataTableDateFilter/index.native.js +24 -22
- package/dist/cjs/components/DataTableDateFilter/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableExport/index.cjs +42 -28
- package/dist/cjs/components/DataTableExport/index.native.js +42 -28
- package/dist/cjs/components/DataTableExport/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableFacetMenu/index.cjs +10 -4
- package/dist/cjs/components/DataTableFacetMenu/index.native.js +10 -4
- package/dist/cjs/components/DataTableFacetMenu/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableFilters/index.cjs +3 -3
- package/dist/cjs/components/DataTableFilters/index.native.js +3 -3
- package/dist/cjs/components/DataTableFilters/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableGrouping/index.cjs +46 -41
- package/dist/cjs/components/DataTableGrouping/index.native.js +46 -41
- package/dist/cjs/components/DataTableGrouping/index.native.js.map +1 -1
- package/dist/cjs/components/DataTablePagination/index.cjs +4 -2
- package/dist/cjs/components/DataTablePagination/index.native.js +4 -2
- package/dist/cjs/components/DataTablePagination/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableSearch/index.cjs +3 -3
- package/dist/cjs/components/DataTableSearch/index.native.js +3 -3
- package/dist/cjs/components/DataTableToolbar/index.cjs +19 -13
- package/dist/cjs/components/DataTableToolbar/index.native.js +19 -15
- package/dist/cjs/components/DataTableToolbar/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableViewOptions/index.cjs +36 -35
- package/dist/cjs/components/DataTableViewOptions/index.native.js +36 -35
- package/dist/cjs/components/DataTableViewOptions/index.native.js.map +1 -1
- package/dist/cjs/components/KnobDialog.cjs +1 -3
- package/dist/cjs/components/KnobDialog.native.js +1 -3
- package/dist/cjs/components/KnobDialog.native.js.map +1 -1
- package/dist/cjs/components/SimpleTable/index.cjs +159 -117
- package/dist/cjs/components/SimpleTable/index.native.js +168 -128
- package/dist/cjs/components/SimpleTable/index.native.js.map +1 -1
- package/dist/cjs/components/TableInput/index.cjs +159 -90
- package/dist/cjs/components/TableInput/index.native.js +3 -3
- package/dist/cjs/components/TableInput/index.native.js.map +1 -1
- package/dist/cjs/utils/chromeIcons.cjs +31 -0
- package/dist/cjs/utils/chromeIcons.native.js +34 -0
- package/dist/cjs/utils/chromeIcons.native.js.map +1 -0
- package/dist/esm/components/ChildTable/index.mjs +12 -3
- package/dist/esm/components/ChildTable/index.mjs.map +1 -1
- package/dist/esm/components/ChildTable/index.native.js +14 -3
- package/dist/esm/components/ChildTable/index.native.js.map +1 -1
- package/dist/esm/components/ColumnHeaderFilter/index.mjs +11 -13
- package/dist/esm/components/ColumnHeaderFilter/index.mjs.map +1 -1
- package/dist/esm/components/ColumnHeaderFilter/index.native.js +11 -16
- package/dist/esm/components/ColumnHeaderFilter/index.native.js.map +1 -1
- package/dist/esm/components/DataTable/DataTableCardControls.mjs +7 -4
- package/dist/esm/components/DataTable/DataTableCardControls.mjs.map +1 -1
- package/dist/esm/components/DataTable/DataTableCardControls.native.js +7 -4
- package/dist/esm/components/DataTable/DataTableCardControls.native.js.map +1 -1
- package/dist/esm/components/DataTable/DataTableDocumentList.mjs +10 -4
- package/dist/esm/components/DataTable/DataTableDocumentList.mjs.map +1 -1
- package/dist/esm/components/DataTable/DataTableDocumentList.native.js +10 -4
- package/dist/esm/components/DataTable/DataTableDocumentList.native.js.map +1 -1
- package/dist/esm/components/DataTable/DataTableMobileCards.mjs +6 -1
- package/dist/esm/components/DataTable/DataTableMobileCards.mjs.map +1 -1
- package/dist/esm/components/DataTable/DataTableMobileCards.native.js +6 -1
- package/dist/esm/components/DataTable/DataTableMobileCards.native.js.map +1 -1
- package/dist/esm/components/DataTable/DataTableRoot.mjs +55 -42
- package/dist/esm/components/DataTable/DataTableRoot.mjs.map +1 -1
- package/dist/esm/components/DataTable/DataTableRoot.native.js +55 -42
- package/dist/esm/components/DataTable/DataTableRoot.native.js.map +1 -1
- package/dist/esm/components/DataTable/DataTableVirtualized.mjs +5 -2
- package/dist/esm/components/DataTable/DataTableVirtualized.mjs.map +1 -1
- package/dist/esm/components/DataTable/DataTableVirtualized.native.js +5 -2
- package/dist/esm/components/DataTable/DataTableVirtualized.native.js.map +1 -1
- package/dist/esm/components/DataTable/dataTableChrome.mjs +32 -0
- package/dist/esm/components/DataTable/dataTableChrome.mjs.map +1 -0
- package/dist/esm/components/DataTable/dataTableChrome.native.js +32 -0
- package/dist/esm/components/DataTable/dataTableChrome.native.js.map +1 -0
- package/dist/esm/components/DataTable/index.native.js +34 -20
- package/dist/esm/components/DataTable/index.native.js.map +1 -1
- package/dist/esm/components/DataTableBulkActions/index.mjs +6 -4
- package/dist/esm/components/DataTableBulkActions/index.mjs.map +1 -1
- package/dist/esm/components/DataTableBulkActions/index.native.js +6 -4
- package/dist/esm/components/DataTableBulkActions/index.native.js.map +1 -1
- package/dist/esm/components/DataTableCell/CellModalEditor.mjs +11 -33
- package/dist/esm/components/DataTableCell/CellModalEditor.mjs.map +1 -1
- package/dist/esm/components/DataTableCell/CellModalEditor.native.js +2 -5
- package/dist/esm/components/DataTableCell/CellModalEditor.native.js.map +1 -1
- package/dist/esm/components/DataTableCell/CellOptionsEditor.mjs +0 -1
- package/dist/esm/components/DataTableCell/CellOptionsEditor.mjs.map +1 -1
- package/dist/esm/components/DataTableCell/CellOptionsEditor.native.js +0 -1
- package/dist/esm/components/DataTableCell/CellOptionsEditor.native.js.map +1 -1
- package/dist/esm/components/DataTableColumnPinning/index.mjs +7 -4
- package/dist/esm/components/DataTableColumnPinning/index.mjs.map +1 -1
- package/dist/esm/components/DataTableColumnPinning/index.native.js +7 -4
- package/dist/esm/components/DataTableColumnPinning/index.native.js.map +1 -1
- package/dist/esm/components/DataTableDateFilter/index.mjs +24 -22
- package/dist/esm/components/DataTableDateFilter/index.mjs.map +1 -1
- package/dist/esm/components/DataTableDateFilter/index.native.js +24 -22
- package/dist/esm/components/DataTableDateFilter/index.native.js.map +1 -1
- package/dist/esm/components/DataTableExport/index.mjs +43 -29
- package/dist/esm/components/DataTableExport/index.mjs.map +1 -1
- package/dist/esm/components/DataTableExport/index.native.js +43 -29
- package/dist/esm/components/DataTableExport/index.native.js.map +1 -1
- package/dist/esm/components/DataTableFacetMenu/index.mjs +10 -4
- package/dist/esm/components/DataTableFacetMenu/index.mjs.map +1 -1
- package/dist/esm/components/DataTableFacetMenu/index.native.js +10 -4
- package/dist/esm/components/DataTableFacetMenu/index.native.js.map +1 -1
- package/dist/esm/components/DataTableFilters/index.mjs +3 -3
- package/dist/esm/components/DataTableFilters/index.mjs.map +1 -1
- package/dist/esm/components/DataTableFilters/index.native.js +3 -3
- package/dist/esm/components/DataTableFilters/index.native.js.map +1 -1
- package/dist/esm/components/DataTableGrouping/index.mjs +47 -42
- package/dist/esm/components/DataTableGrouping/index.mjs.map +1 -1
- package/dist/esm/components/DataTableGrouping/index.native.js +47 -42
- package/dist/esm/components/DataTableGrouping/index.native.js.map +1 -1
- package/dist/esm/components/DataTablePagination/index.mjs +4 -2
- package/dist/esm/components/DataTablePagination/index.mjs.map +1 -1
- package/dist/esm/components/DataTablePagination/index.native.js +4 -2
- package/dist/esm/components/DataTablePagination/index.native.js.map +1 -1
- package/dist/esm/components/DataTableSearch/index.mjs +3 -3
- package/dist/esm/components/DataTableSearch/index.native.js +3 -3
- package/dist/esm/components/DataTableToolbar/index.mjs +19 -13
- package/dist/esm/components/DataTableToolbar/index.mjs.map +1 -1
- package/dist/esm/components/DataTableToolbar/index.native.js +19 -15
- package/dist/esm/components/DataTableToolbar/index.native.js.map +1 -1
- package/dist/esm/components/DataTableViewOptions/index.mjs +36 -35
- package/dist/esm/components/DataTableViewOptions/index.mjs.map +1 -1
- package/dist/esm/components/DataTableViewOptions/index.native.js +36 -35
- package/dist/esm/components/DataTableViewOptions/index.native.js.map +1 -1
- package/dist/esm/components/KnobDialog.mjs +1 -3
- package/dist/esm/components/KnobDialog.mjs.map +1 -1
- package/dist/esm/components/KnobDialog.native.js +1 -3
- package/dist/esm/components/KnobDialog.native.js.map +1 -1
- package/dist/esm/components/SimpleTable/index.mjs +160 -118
- package/dist/esm/components/SimpleTable/index.mjs.map +1 -1
- package/dist/esm/components/SimpleTable/index.native.js +169 -129
- package/dist/esm/components/SimpleTable/index.native.js.map +1 -1
- package/dist/esm/components/TableInput/index.mjs +160 -91
- package/dist/esm/components/TableInput/index.mjs.map +1 -1
- package/dist/esm/components/TableInput/index.native.js +3 -3
- package/dist/esm/components/TableInput/index.native.js.map +1 -1
- package/dist/esm/utils/chromeIcons.mjs +6 -0
- package/dist/esm/utils/chromeIcons.mjs.map +1 -0
- package/dist/esm/utils/chromeIcons.native.js +6 -0
- package/dist/esm/utils/chromeIcons.native.js.map +1 -0
- package/dist/jsx/components/ChildTable/index.mjs +12 -3
- package/dist/jsx/components/ChildTable/index.mjs.map +1 -1
- package/dist/jsx/components/ChildTable/index.native.js +14 -3
- package/dist/jsx/components/ChildTable/index.native.js.map +1 -1
- package/dist/jsx/components/ColumnHeaderFilter/index.mjs +11 -13
- package/dist/jsx/components/ColumnHeaderFilter/index.mjs.map +1 -1
- package/dist/jsx/components/ColumnHeaderFilter/index.native.js +11 -16
- package/dist/jsx/components/ColumnHeaderFilter/index.native.js.map +1 -1
- package/dist/jsx/components/DataTable/DataTableCardControls.mjs +7 -4
- package/dist/jsx/components/DataTable/DataTableCardControls.mjs.map +1 -1
- package/dist/jsx/components/DataTable/DataTableCardControls.native.js +7 -4
- package/dist/jsx/components/DataTable/DataTableCardControls.native.js.map +1 -1
- package/dist/jsx/components/DataTable/DataTableDocumentList.mjs +10 -4
- package/dist/jsx/components/DataTable/DataTableDocumentList.mjs.map +1 -1
- package/dist/jsx/components/DataTable/DataTableDocumentList.native.js +10 -4
- package/dist/jsx/components/DataTable/DataTableDocumentList.native.js.map +1 -1
- package/dist/jsx/components/DataTable/DataTableMobileCards.mjs +6 -1
- package/dist/jsx/components/DataTable/DataTableMobileCards.mjs.map +1 -1
- package/dist/jsx/components/DataTable/DataTableMobileCards.native.js +6 -1
- package/dist/jsx/components/DataTable/DataTableMobileCards.native.js.map +1 -1
- package/dist/jsx/components/DataTable/DataTableRoot.mjs +55 -42
- package/dist/jsx/components/DataTable/DataTableRoot.mjs.map +1 -1
- package/dist/jsx/components/DataTable/DataTableRoot.native.js +55 -42
- package/dist/jsx/components/DataTable/DataTableRoot.native.js.map +1 -1
- package/dist/jsx/components/DataTable/DataTableVirtualized.mjs +5 -2
- package/dist/jsx/components/DataTable/DataTableVirtualized.mjs.map +1 -1
- package/dist/jsx/components/DataTable/DataTableVirtualized.native.js +5 -2
- package/dist/jsx/components/DataTable/DataTableVirtualized.native.js.map +1 -1
- package/dist/jsx/components/DataTable/dataTableChrome.mjs +32 -0
- package/dist/jsx/components/DataTable/dataTableChrome.mjs.map +1 -0
- package/dist/jsx/components/DataTable/dataTableChrome.native.js +62 -0
- package/dist/jsx/components/DataTable/dataTableChrome.native.js.map +1 -0
- package/dist/jsx/components/DataTable/index.native.js +34 -20
- package/dist/jsx/components/DataTable/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableBulkActions/index.mjs +6 -4
- package/dist/jsx/components/DataTableBulkActions/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableBulkActions/index.native.js +6 -4
- package/dist/jsx/components/DataTableBulkActions/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableCell/CellModalEditor.mjs +11 -33
- package/dist/jsx/components/DataTableCell/CellModalEditor.mjs.map +1 -1
- package/dist/jsx/components/DataTableCell/CellModalEditor.native.js +2 -5
- package/dist/jsx/components/DataTableCell/CellModalEditor.native.js.map +1 -1
- package/dist/jsx/components/DataTableCell/CellOptionsEditor.mjs +0 -1
- package/dist/jsx/components/DataTableCell/CellOptionsEditor.mjs.map +1 -1
- package/dist/jsx/components/DataTableCell/CellOptionsEditor.native.js +0 -1
- package/dist/jsx/components/DataTableCell/CellOptionsEditor.native.js.map +1 -1
- package/dist/jsx/components/DataTableColumnPinning/index.mjs +7 -4
- package/dist/jsx/components/DataTableColumnPinning/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableColumnPinning/index.native.js +7 -4
- package/dist/jsx/components/DataTableColumnPinning/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableDateFilter/index.mjs +24 -22
- package/dist/jsx/components/DataTableDateFilter/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableDateFilter/index.native.js +24 -22
- package/dist/jsx/components/DataTableDateFilter/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableExport/index.mjs +43 -29
- package/dist/jsx/components/DataTableExport/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableExport/index.native.js +42 -28
- package/dist/jsx/components/DataTableExport/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableFacetMenu/index.mjs +10 -4
- package/dist/jsx/components/DataTableFacetMenu/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableFacetMenu/index.native.js +10 -4
- package/dist/jsx/components/DataTableFacetMenu/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableFilters/index.mjs +3 -3
- package/dist/jsx/components/DataTableFilters/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableFilters/index.native.js +3 -3
- package/dist/jsx/components/DataTableFilters/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableGrouping/index.mjs +47 -42
- package/dist/jsx/components/DataTableGrouping/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableGrouping/index.native.js +46 -41
- package/dist/jsx/components/DataTableGrouping/index.native.js.map +1 -1
- package/dist/jsx/components/DataTablePagination/index.mjs +4 -2
- package/dist/jsx/components/DataTablePagination/index.mjs.map +1 -1
- package/dist/jsx/components/DataTablePagination/index.native.js +4 -2
- package/dist/jsx/components/DataTablePagination/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableSearch/index.mjs +3 -3
- package/dist/jsx/components/DataTableSearch/index.native.js +3 -3
- package/dist/jsx/components/DataTableToolbar/index.mjs +19 -13
- package/dist/jsx/components/DataTableToolbar/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableToolbar/index.native.js +19 -15
- package/dist/jsx/components/DataTableToolbar/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableViewOptions/index.mjs +36 -35
- package/dist/jsx/components/DataTableViewOptions/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableViewOptions/index.native.js +36 -35
- package/dist/jsx/components/DataTableViewOptions/index.native.js.map +1 -1
- package/dist/jsx/components/KnobDialog.mjs +1 -3
- package/dist/jsx/components/KnobDialog.mjs.map +1 -1
- package/dist/jsx/components/KnobDialog.native.js +1 -3
- package/dist/jsx/components/KnobDialog.native.js.map +1 -1
- package/dist/jsx/components/SimpleTable/index.mjs +160 -118
- package/dist/jsx/components/SimpleTable/index.mjs.map +1 -1
- package/dist/jsx/components/SimpleTable/index.native.js +168 -128
- package/dist/jsx/components/SimpleTable/index.native.js.map +1 -1
- package/dist/jsx/components/TableInput/index.mjs +160 -91
- package/dist/jsx/components/TableInput/index.mjs.map +1 -1
- package/dist/jsx/components/TableInput/index.native.js +3 -3
- package/dist/jsx/components/TableInput/index.native.js.map +1 -1
- package/dist/jsx/utils/chromeIcons.mjs +6 -0
- package/dist/jsx/utils/chromeIcons.mjs.map +1 -0
- package/dist/jsx/utils/chromeIcons.native.js +34 -0
- package/dist/jsx/utils/chromeIcons.native.js.map +1 -0
- package/package.json +12 -12
- package/src/components/ChildTable/ChildTable.stories.tsx +144 -0
- package/src/components/ChildTable/childTable.reorder.spec.tsx +65 -0
- package/src/components/ChildTable/childTable.spec.tsx +108 -0
- package/src/components/ChildTable/index.tsx +21 -2
- package/src/components/ColumnHeaderFilter/index.tsx +9 -14
- package/src/components/DataTable/DataTableCardControls.tsx +19 -16
- package/src/components/DataTable/DataTableDocumentList.tsx +7 -4
- package/src/components/DataTable/DataTableMobileCards.tsx +3 -1
- package/src/components/DataTable/DataTableRoot.tsx +52 -41
- package/src/components/DataTable/DataTableVirtualized.tsx +6 -2
- package/src/components/DataTable/FieldsInCells.stories.tsx +10 -5
- package/src/components/DataTable/dataTableChrome.ts +48 -0
- package/src/components/DataTable/designLaw.spec.tsx +114 -0
- package/src/components/DataTable/index.native.tsx +46 -20
- package/src/components/DataTableBulkActions/index.tsx +5 -3
- package/src/components/DataTableCell/CellModalEditor.native.tsx +3 -6
- package/src/components/DataTableCell/CellModalEditor.tsx +11 -22
- package/src/components/DataTableCell/CellOptionsEditor.tsx +0 -1
- package/src/components/DataTableCell/cellDraftPolicy.spec.tsx +8 -1
- package/src/components/DataTableCell/cellModalEditor.spec.tsx +82 -0
- package/src/components/DataTableCell/dataTableCell.spec.tsx +8 -1
- package/src/components/DataTableColumnPinning/index.tsx +6 -4
- package/src/components/DataTableDateFilter/index.tsx +19 -17
- package/src/components/DataTableExport/DataTableExport.spec.tsx +29 -0
- package/src/components/DataTableExport/index.tsx +47 -23
- package/src/components/DataTableFacetMenu/index.tsx +13 -4
- package/src/components/DataTableFilters/index.tsx +3 -3
- package/src/components/DataTableGrouping/index.tsx +42 -35
- package/src/components/DataTablePagination/index.tsx +2 -2
- package/src/components/DataTableSearch/index.tsx +3 -3
- package/src/components/DataTableToolbar/DataTableToolbar.spec.tsx +20 -0
- package/src/components/DataTableToolbar/DataTableToolbar.stories.tsx +1 -9
- package/src/components/DataTableToolbar/index.tsx +19 -14
- package/src/components/DataTableViewOptions/index.tsx +30 -30
- package/src/components/KnobDialog.tsx +1 -3
- package/src/components/SimpleTable/SimpleTable.stories.tsx +13 -0
- package/src/components/SimpleTable/index.tsx +171 -149
- package/src/components/SimpleTable/simpleTable.spec.tsx +120 -0
- package/src/components/TableInput/index.native.tsx +5 -3
- package/src/components/TableInput/index.tsx +207 -113
- package/src/components/chromeDesignLaw.spec.tsx +97 -0
- package/src/utils/chromeIcons.ts +6 -0
- package/types/components/ChildTable/index.d.ts +6 -1
- package/types/components/ChildTable/index.d.ts.map +1 -1
- package/types/components/ColumnHeaderFilter/index.d.ts.map +1 -1
- package/types/components/DataTable/DataTableCardControls.d.ts.map +1 -1
- package/types/components/DataTable/DataTableDocumentList.d.ts.map +1 -1
- package/types/components/DataTable/DataTableMobileCards.d.ts.map +1 -1
- package/types/components/DataTable/DataTableRoot.d.ts +6 -1
- package/types/components/DataTable/DataTableRoot.d.ts.map +1 -1
- package/types/components/DataTable/DataTableVirtualized.d.ts +3 -1
- package/types/components/DataTable/DataTableVirtualized.d.ts.map +1 -1
- package/types/components/DataTable/dataTableChrome.d.ts +27 -0
- package/types/components/DataTable/dataTableChrome.d.ts.map +1 -0
- package/types/components/DataTable/index.native.d.ts +1 -1
- package/types/components/DataTable/index.native.d.ts.map +1 -1
- package/types/components/DataTableBulkActions/index.d.ts.map +1 -1
- package/types/components/DataTableCell/CellModalEditor.d.ts.map +1 -1
- package/types/components/DataTableCell/CellModalEditor.native.d.ts.map +1 -1
- package/types/components/DataTableCell/CellOptionsEditor.d.ts.map +1 -1
- package/types/components/DataTableColumnPinning/index.d.ts.map +1 -1
- package/types/components/DataTableDateFilter/index.d.ts.map +1 -1
- package/types/components/DataTableExport/index.d.ts.map +1 -1
- package/types/components/DataTableFacetMenu/index.d.ts.map +1 -1
- package/types/components/DataTableGrouping/index.d.ts.map +1 -1
- package/types/components/DataTableToolbar/index.d.ts +2 -0
- package/types/components/DataTableToolbar/index.d.ts.map +1 -1
- package/types/components/DataTableViewOptions/index.d.ts.map +1 -1
- package/types/components/KnobDialog.d.ts.map +1 -1
- package/types/components/SimpleTable/index.d.ts.map +1 -1
- package/types/components/TableInput/index.d.ts +8 -4
- package/types/components/TableInput/index.d.ts.map +1 -1
- package/types/components/TableInput/index.native.d.ts +2 -0
- package/types/components/TableInput/index.native.d.ts.map +1 -1
- package/types/utils/chromeIcons.d.ts +3 -0
- package/types/utils/chromeIcons.d.ts.map +1 -0
|
@@ -15,12 +15,16 @@
|
|
|
15
15
|
* without `onChange` (see the UncontrolledStatic story).
|
|
16
16
|
*
|
|
17
17
|
* Row identity: added rows get a collision-free generated `id`. TableInput
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
* their own layer (frappe-ui).
|
|
18
|
+
* reorders through the shared kanbanDnd machine (`enableReorder`); Frappe
|
|
19
|
+
* `idx` renumbering is the ChildTable layer (MPO-22), not this field.
|
|
21
20
|
*/
|
|
22
21
|
|
|
23
22
|
import { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
23
|
+
import {
|
|
24
|
+
SortableHandle,
|
|
25
|
+
SortableSessionProvider,
|
|
26
|
+
useSortableRows,
|
|
27
|
+
} from "@multiplatform.one/components";
|
|
24
28
|
import {
|
|
25
29
|
Button,
|
|
26
30
|
Field,
|
|
@@ -34,7 +38,7 @@ import { TrashIcon, PlusIcon } from "@phosphor-icons/react";
|
|
|
34
38
|
import { useTranslation } from "react-i18next";
|
|
35
39
|
import { Table, getTableCellPadding } from "@multiplatform.one/table-primitives";
|
|
36
40
|
import { hairline, useResolvedKnobs } from "@multiplatform.one/theme";
|
|
37
|
-
import { Text, XStack, YStack, isWeb } from "tamagui";
|
|
41
|
+
import { Text, View, XStack, YStack, isWeb } from "tamagui";
|
|
38
42
|
import type {
|
|
39
43
|
DataTableColumn,
|
|
40
44
|
DataTableData,
|
|
@@ -95,6 +99,11 @@ export interface TableInputProps<TData extends DataTableData = DataTableData> {
|
|
|
95
99
|
* is the default — Frappe's grid is a dense in-list editor, not a page table.
|
|
96
100
|
*/
|
|
97
101
|
compact?: boolean;
|
|
102
|
+
/**
|
|
103
|
+
* Leading grab handle + keyboard reorder via kanbanDnd. ChildTable turns
|
|
104
|
+
* this on and writes `idx` on the change payload (MPO-22).
|
|
105
|
+
*/
|
|
106
|
+
enableReorder?: boolean;
|
|
98
107
|
}
|
|
99
108
|
|
|
100
109
|
export function TableInput<TData extends DataTableData = DataTableData>({
|
|
@@ -118,6 +127,7 @@ export function TableInput<TData extends DataTableData = DataTableData>({
|
|
|
118
127
|
emptyMessage,
|
|
119
128
|
"aria-label": ariaLabel,
|
|
120
129
|
compact = true,
|
|
130
|
+
enableReorder = false,
|
|
121
131
|
}: TableInputProps<TData>) {
|
|
122
132
|
const { t } = useTranslation();
|
|
123
133
|
const { resolvedForm } = useFormField({ form: formProp });
|
|
@@ -153,6 +163,7 @@ export function TableInput<TData extends DataTableData = DataTableData>({
|
|
|
153
163
|
emptyMessage: emptyMessage ?? t("No rows"),
|
|
154
164
|
ariaLabel: resolvedAriaLabel,
|
|
155
165
|
compact,
|
|
166
|
+
enableReorder,
|
|
156
167
|
t,
|
|
157
168
|
};
|
|
158
169
|
|
|
@@ -206,6 +217,7 @@ interface TableInputInnerProps<TData extends DataTableData> {
|
|
|
206
217
|
emptyMessage: string;
|
|
207
218
|
ariaLabel: string;
|
|
208
219
|
compact: boolean;
|
|
220
|
+
enableReorder: boolean;
|
|
209
221
|
t: (key: string, options?: Record<string, unknown>) => string;
|
|
210
222
|
}
|
|
211
223
|
|
|
@@ -225,6 +237,7 @@ function TableInputInner<TData extends DataTableData>({
|
|
|
225
237
|
emptyMessage,
|
|
226
238
|
ariaLabel,
|
|
227
239
|
compact,
|
|
240
|
+
enableReorder,
|
|
228
241
|
t,
|
|
229
242
|
}: TableInputInnerProps<TData>) {
|
|
230
243
|
const { knobProps } = useResolvedKnobs({ compact });
|
|
@@ -233,6 +246,47 @@ function TableInputInner<TData extends DataTableData>({
|
|
|
233
246
|
const [activeRowId, setActiveRowId] = useState<string | null>(null);
|
|
234
247
|
const pendingFocusRef = useRef<string | null>(null);
|
|
235
248
|
const gridRef = useRef<HTMLElement | null>(null);
|
|
249
|
+
const reorderEnabled = enableReorder && !readOnly && !skeleton;
|
|
250
|
+
|
|
251
|
+
const firstDataKey = useMemo(() => {
|
|
252
|
+
const first = columns[0];
|
|
253
|
+
if (!first) return null;
|
|
254
|
+
return typeof first.accessorKey === "string"
|
|
255
|
+
? first.accessorKey
|
|
256
|
+
: first.id || String(first.accessorKey);
|
|
257
|
+
}, [columns]);
|
|
258
|
+
|
|
259
|
+
const getSortableId = useCallback(
|
|
260
|
+
(row: TData, index: number) => String((row as DataTableData).id ?? index),
|
|
261
|
+
[],
|
|
262
|
+
);
|
|
263
|
+
const getSortableLabel = useCallback(
|
|
264
|
+
(row: TData, index: number) => {
|
|
265
|
+
if (firstDataKey) {
|
|
266
|
+
const value = row[firstDataKey as keyof TData];
|
|
267
|
+
if (value != null && String(value).trim() !== "") return String(value);
|
|
268
|
+
}
|
|
269
|
+
return withInterp(t("Row {{row}}", { row: index + 1 }), { row: index + 1 });
|
|
270
|
+
},
|
|
271
|
+
[firstDataKey, t],
|
|
272
|
+
);
|
|
273
|
+
|
|
274
|
+
const sortable = useSortableRows<TData>({
|
|
275
|
+
items: rows,
|
|
276
|
+
getId: getSortableId,
|
|
277
|
+
getLabel: getSortableLabel,
|
|
278
|
+
onChange: commit,
|
|
279
|
+
enabled: reorderEnabled,
|
|
280
|
+
containerRef: gridRef,
|
|
281
|
+
rowSelector: `[${childRowAttrs.row}]`,
|
|
282
|
+
});
|
|
283
|
+
|
|
284
|
+
const handlePointerRef = useRef(sortable.onHandlePointerDown);
|
|
285
|
+
handlePointerRef.current = sortable.onHandlePointerDown;
|
|
286
|
+
const handleKeyRef = useRef(sortable.onHandleKeyDown);
|
|
287
|
+
handleKeyRef.current = sortable.onHandleKeyDown;
|
|
288
|
+
const labelsRef = useRef(sortable.labels);
|
|
289
|
+
labelsRef.current = sortable.labels;
|
|
236
290
|
|
|
237
291
|
const lastDataColumnId = useMemo(() => {
|
|
238
292
|
const last = columns[columns.length - 1];
|
|
@@ -339,6 +393,23 @@ function TableInputInner<TData extends DataTableData>({
|
|
|
339
393
|
const tableColumns = useMemo(() => {
|
|
340
394
|
const cols: ColumnDef<TData, unknown>[] = [];
|
|
341
395
|
|
|
396
|
+
if (reorderEnabled) {
|
|
397
|
+
cols.push({
|
|
398
|
+
id: "_reorder",
|
|
399
|
+
header: "",
|
|
400
|
+
size: chromePx + 16,
|
|
401
|
+
cell: ({ row }) => (
|
|
402
|
+
<SortableHandle
|
|
403
|
+
label={labelsRef.current[row.index] ?? t("Row {{row}}", { row: row.index + 1 })}
|
|
404
|
+
itemId={String((row.original as DataTableData).id ?? row.id)}
|
|
405
|
+
compact={compact}
|
|
406
|
+
onPointerDown={(e) => handlePointerRef.current(row.index, e)}
|
|
407
|
+
onKeyDown={(e) => handleKeyRef.current(row.index, e)}
|
|
408
|
+
/>
|
|
409
|
+
),
|
|
410
|
+
});
|
|
411
|
+
}
|
|
412
|
+
|
|
342
413
|
if (showRowNumbers) {
|
|
343
414
|
cols.push({
|
|
344
415
|
id: "_rowNumber",
|
|
@@ -422,6 +493,7 @@ function TableInputInner<TData extends DataTableData>({
|
|
|
422
493
|
chromePx,
|
|
423
494
|
knobProps.label.fontSize,
|
|
424
495
|
knobProps.nestedControl.hitSlop,
|
|
496
|
+
reorderEnabled,
|
|
425
497
|
]);
|
|
426
498
|
|
|
427
499
|
const table = useReactTable({
|
|
@@ -458,119 +530,141 @@ function TableInputInner<TData extends DataTableData>({
|
|
|
458
530
|
) : null;
|
|
459
531
|
|
|
460
532
|
return (
|
|
461
|
-
<
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
<Table
|
|
470
|
-
aria-label={ariaLabel}
|
|
471
|
-
aria-busy={skeleton || undefined}
|
|
472
|
-
borderWidth={0}
|
|
473
|
-
borderRadius={0}
|
|
474
|
-
elevation={undefined}
|
|
475
|
-
{...(isEmpty ? { displayMode: "flex" as const } : null)}
|
|
533
|
+
<SortableSessionProvider sourceId={sortable.session?.id ?? null}>
|
|
534
|
+
<YStack
|
|
535
|
+
ref={gridRef as never}
|
|
536
|
+
{...knobProps.surface}
|
|
537
|
+
{...knobProps.borderRadiusOuter}
|
|
538
|
+
elevation={knobProps.elevation}
|
|
539
|
+
overflow="hidden"
|
|
540
|
+
{...(isWeb ? { onKeyDown: handleGridKeyDown as never } : null)}
|
|
476
541
|
>
|
|
477
|
-
<Table
|
|
478
|
-
{
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
<Table.Cell key={column.id}>
|
|
506
|
-
{column.id === "_actions" ? null : (
|
|
507
|
-
<Skeleton
|
|
508
|
-
variant="rounded"
|
|
509
|
-
width={column.id === "_rowNumber" ? 16 : "70%"}
|
|
510
|
-
height={16}
|
|
511
|
-
/>
|
|
512
|
-
)}
|
|
513
|
-
</Table.Cell>
|
|
542
|
+
<Table
|
|
543
|
+
aria-label={ariaLabel}
|
|
544
|
+
aria-busy={skeleton || undefined}
|
|
545
|
+
borderWidth={0}
|
|
546
|
+
borderRadius={0}
|
|
547
|
+
elevation={undefined}
|
|
548
|
+
{...(isEmpty ? { displayMode: "flex" as const } : null)}
|
|
549
|
+
>
|
|
550
|
+
<Table.Head>
|
|
551
|
+
{table.getHeaderGroups().map((headerGroup) => (
|
|
552
|
+
<Table.Row key={headerGroup.id}>
|
|
553
|
+
{headerGroup.headers.map((header) => (
|
|
554
|
+
<Table.HeaderCell
|
|
555
|
+
key={header.id}
|
|
556
|
+
style={{
|
|
557
|
+
width: header.getSize(),
|
|
558
|
+
...(isEmpty &&
|
|
559
|
+
header.column.id !== "_rowNumber" &&
|
|
560
|
+
header.column.id !== "_actions" &&
|
|
561
|
+
header.column.id !== "_reorder"
|
|
562
|
+
? { flexGrow: 1 }
|
|
563
|
+
: null),
|
|
564
|
+
}}
|
|
565
|
+
>
|
|
566
|
+
{header.isPlaceholder
|
|
567
|
+
? null
|
|
568
|
+
: flexRender(header.column.columnDef.header, header.getContext())}
|
|
569
|
+
</Table.HeaderCell>
|
|
514
570
|
))}
|
|
515
571
|
</Table.Row>
|
|
516
|
-
))
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
backgroundColor={isActive ? "$color3" : undefined}
|
|
534
|
-
hoverStyle={{ backgroundColor: "$backgroundHover" }}
|
|
535
|
-
transition={knobProps.transition}
|
|
536
|
-
// onFocusCapture is a web-only capture-phase handler outside
|
|
537
|
-
// ThemedRowProps; the bag forwards it to the DOM <tr> (house
|
|
538
|
-
// Record cast). Tracks the active row as focus enters it.
|
|
539
|
-
{...({ onFocusCapture: () => setActiveRowId(row.id) } as Record<string, unknown>)}
|
|
540
|
-
>
|
|
541
|
-
{row.getVisibleCells().map((cell) => {
|
|
542
|
-
const isData = cell.column.id !== "_rowNumber" && cell.column.id !== "_actions";
|
|
543
|
-
const field = columns.find((col) => {
|
|
544
|
-
const id =
|
|
545
|
-
typeof col.accessorKey === "string"
|
|
546
|
-
? col.accessorKey
|
|
547
|
-
: col.id || String(col.accessorKey);
|
|
548
|
-
return id === cell.column.id;
|
|
549
|
-
})?.field;
|
|
550
|
-
return (
|
|
551
|
-
<Table.Cell
|
|
552
|
-
key={cell.id}
|
|
553
|
-
{...(isData
|
|
554
|
-
? {
|
|
555
|
-
[childRowAttrs.columnId]: cell.column.id,
|
|
556
|
-
[childRowAttrs.field]: (field as string) || "input",
|
|
557
|
-
[childRowAttrs.lastInput]:
|
|
558
|
-
cell.column.id === lastDataColumnId ? "true" : undefined,
|
|
559
|
-
}
|
|
560
|
-
: null)}
|
|
561
|
-
>
|
|
562
|
-
{flexRender(cell.column.columnDef.cell, cell.getContext())}
|
|
563
|
-
</Table.Cell>
|
|
564
|
-
);
|
|
565
|
-
})}
|
|
572
|
+
))}
|
|
573
|
+
</Table.Head>
|
|
574
|
+
<Table.Body>
|
|
575
|
+
{skeleton ? (
|
|
576
|
+
Array.from({ length: SKELETON_ROW_COUNT }, (_, rowIndex) => (
|
|
577
|
+
<Table.Row key={`skeleton-${rowIndex}`}>
|
|
578
|
+
{table.getAllLeafColumns().map((column) => (
|
|
579
|
+
<Table.Cell key={column.id}>
|
|
580
|
+
{column.id === "_actions" || column.id === "_reorder" ? null : (
|
|
581
|
+
<Skeleton
|
|
582
|
+
variant="rounded"
|
|
583
|
+
width={column.id === "_rowNumber" ? 16 : "70%"}
|
|
584
|
+
height={16}
|
|
585
|
+
/>
|
|
586
|
+
)}
|
|
587
|
+
</Table.Cell>
|
|
588
|
+
))}
|
|
566
589
|
</Table.Row>
|
|
567
|
-
)
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
590
|
+
))
|
|
591
|
+
) : isEmpty ? (
|
|
592
|
+
<Table.Row>
|
|
593
|
+
<Table.Cell cellWidth="auto" justifyContent="center">
|
|
594
|
+
<Text color="$color10">{emptyMessage}</Text>
|
|
595
|
+
</Table.Cell>
|
|
596
|
+
</Table.Row>
|
|
597
|
+
) : (
|
|
598
|
+
table.getRowModel().rows.map((row) => {
|
|
599
|
+
const isActive = activeRowId === row.id;
|
|
600
|
+
return (
|
|
601
|
+
<Table.Row
|
|
602
|
+
key={row.id}
|
|
603
|
+
{...{ [childRowAttrs.row]: "true" }}
|
|
604
|
+
{...{ [childRowAttrs.rowId]: row.id }}
|
|
605
|
+
{...{ [childRowAttrs.rowIndex]: String(row.index) }}
|
|
606
|
+
{...{ [childRowAttrs.active]: isActive ? "true" : undefined }}
|
|
607
|
+
backgroundColor={isActive ? "$color3" : undefined}
|
|
608
|
+
hoverStyle={{ backgroundColor: "$backgroundHover" }}
|
|
609
|
+
transition={knobProps.transition}
|
|
610
|
+
// onFocusCapture is a web-only capture-phase handler outside
|
|
611
|
+
// ThemedRowProps; the bag forwards it to the DOM <tr> (house
|
|
612
|
+
// Record cast). Tracks the active row as focus enters it.
|
|
613
|
+
{...({ onFocusCapture: () => setActiveRowId(row.id) } as Record<
|
|
614
|
+
string,
|
|
615
|
+
unknown
|
|
616
|
+
>)}
|
|
617
|
+
>
|
|
618
|
+
{row.getVisibleCells().map((cell) => {
|
|
619
|
+
const isData =
|
|
620
|
+
cell.column.id !== "_rowNumber" &&
|
|
621
|
+
cell.column.id !== "_actions" &&
|
|
622
|
+
cell.column.id !== "_reorder";
|
|
623
|
+
const field = columns.find((col) => {
|
|
624
|
+
const id =
|
|
625
|
+
typeof col.accessorKey === "string"
|
|
626
|
+
? col.accessorKey
|
|
627
|
+
: col.id || String(col.accessorKey);
|
|
628
|
+
return id === cell.column.id;
|
|
629
|
+
})?.field;
|
|
630
|
+
return (
|
|
631
|
+
<Table.Cell
|
|
632
|
+
key={cell.id}
|
|
633
|
+
{...(isData
|
|
634
|
+
? {
|
|
635
|
+
[childRowAttrs.columnId]: cell.column.id,
|
|
636
|
+
[childRowAttrs.field]: (field as string) || "input",
|
|
637
|
+
[childRowAttrs.lastInput]:
|
|
638
|
+
cell.column.id === lastDataColumnId ? "true" : undefined,
|
|
639
|
+
}
|
|
640
|
+
: null)}
|
|
641
|
+
>
|
|
642
|
+
{flexRender(cell.column.columnDef.cell, cell.getContext())}
|
|
643
|
+
</Table.Cell>
|
|
644
|
+
);
|
|
645
|
+
})}
|
|
646
|
+
</Table.Row>
|
|
647
|
+
);
|
|
648
|
+
})
|
|
649
|
+
)}
|
|
650
|
+
</Table.Body>
|
|
651
|
+
</Table>
|
|
652
|
+
{addRowControl}
|
|
653
|
+
{reorderEnabled ? (
|
|
654
|
+
<View
|
|
655
|
+
position="absolute"
|
|
656
|
+
width={1}
|
|
657
|
+
height={1}
|
|
658
|
+
overflow="hidden"
|
|
659
|
+
opacity={0}
|
|
660
|
+
pointerEvents="none"
|
|
661
|
+
{...sortable.liveProps}
|
|
662
|
+
>
|
|
663
|
+
<Text>{sortable.announcement}</Text>
|
|
664
|
+
</View>
|
|
665
|
+
) : null}
|
|
666
|
+
</YStack>
|
|
667
|
+
</SortableSessionProvider>
|
|
574
668
|
);
|
|
575
669
|
}
|
|
576
670
|
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MPO-60 / living rulebook: remaining DataTable chrome design-law 100%.
|
|
3
|
+
*
|
|
4
|
+
* R7 pins overlay/action labels at 400. compact is not defaulted into
|
|
5
|
+
* useResolvedKnobs. Glyphs use the LC-65 icon recipe. Overlays spread
|
|
6
|
+
* elevatedSurface (borderWidth=none is zero). Named exports only.
|
|
7
|
+
*
|
|
8
|
+
* Rulings: /tmp/cursor-mpo-lanes/RULINGS-2026-08-28.md (R7, R6, LC-18).
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
import { renderWithProviders } from "@multiplatform.one/test-utils";
|
|
12
|
+
import { sizeRecipeForToken } from "@multiplatform.one/theme";
|
|
13
|
+
import { readFileSync } from "node:fs";
|
|
14
|
+
import { dirname, join } from "node:path";
|
|
15
|
+
import { fileURLToPath } from "node:url";
|
|
16
|
+
import { describe, expect, it } from "vitest";
|
|
17
|
+
import { ColumnHeaderFilter } from "./ColumnHeaderFilter";
|
|
18
|
+
import { DataTableFacetMenu } from "./DataTableFacetMenu";
|
|
19
|
+
import { iconSizeForToken } from "../utils/chromeIcons";
|
|
20
|
+
|
|
21
|
+
const here = dirname(fileURLToPath(import.meta.url));
|
|
22
|
+
|
|
23
|
+
const CHROME_INDEX = [
|
|
24
|
+
"ColumnHeaderFilter/index.tsx",
|
|
25
|
+
"DataTableBulkActions/index.tsx",
|
|
26
|
+
"DataTableColumnPinning/index.tsx",
|
|
27
|
+
"DataTableDateFilter/index.tsx",
|
|
28
|
+
"DataTableExport/index.tsx",
|
|
29
|
+
"DataTableFacetMenu/index.tsx",
|
|
30
|
+
"DataTableGrouping/index.tsx",
|
|
31
|
+
"DataTableToolbar/index.tsx",
|
|
32
|
+
"DataTableViewOptions/index.tsx",
|
|
33
|
+
];
|
|
34
|
+
|
|
35
|
+
function source(relative: string): string {
|
|
36
|
+
return readFileSync(join(here, relative), "utf8");
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
describe("table chrome design-law (R7 + compact + recipes)", () => {
|
|
40
|
+
it("does not ship illegal 500/600 label weights in chrome sources", () => {
|
|
41
|
+
for (const file of CHROME_INDEX) {
|
|
42
|
+
const src = source(file);
|
|
43
|
+
expect(src, file).not.toMatch(/fontWeight=["'](?:500|600)["']/);
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
it("does not hardcode Phosphor 14/16 or 1px overlay borders", () => {
|
|
48
|
+
for (const file of CHROME_INDEX) {
|
|
49
|
+
const src = source(file);
|
|
50
|
+
expect(src, file).not.toMatch(/size=\{1[46]\}/);
|
|
51
|
+
expect(src, file).not.toMatch(/borderWidth=\{1\}/);
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
it("does not pin density compact=false into useResolvedKnobs", () => {
|
|
56
|
+
for (const file of CHROME_INDEX) {
|
|
57
|
+
const src = source(file);
|
|
58
|
+
expect(src, file).not.toMatch(/useResolvedKnobs\(\{\s*compact:\s*true/);
|
|
59
|
+
expect(src, file).not.toMatch(/compact\s*=\s*false/);
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
|
|
63
|
+
it("Fields in Cells stories do not pin compact={false}", () => {
|
|
64
|
+
const src = source("DataTable/FieldsInCells.stories.tsx");
|
|
65
|
+
expect(src).not.toMatch(/compact=\{false\}/);
|
|
66
|
+
expect(src).toMatch(/fontWeight="400"/);
|
|
67
|
+
});
|
|
68
|
+
|
|
69
|
+
it("iconSizeForToken follows the size recipe, not a handwritten 14", () => {
|
|
70
|
+
const expected = sizeRecipeForToken("$4").iconSize;
|
|
71
|
+
expect(iconSizeForToken("$4")).toBe(expected);
|
|
72
|
+
expect(iconSizeForToken("$4")).not.toBe(14);
|
|
73
|
+
});
|
|
74
|
+
|
|
75
|
+
it("ColumnHeaderFilter title is the Filter: column label (R7)", () => {
|
|
76
|
+
const { getByLabelText } = renderWithProviders(
|
|
77
|
+
<ColumnHeaderFilter
|
|
78
|
+
columnId="status"
|
|
79
|
+
columnLabel="Status"
|
|
80
|
+
columnType="text"
|
|
81
|
+
onFilterChange={() => {}}
|
|
82
|
+
/>,
|
|
83
|
+
);
|
|
84
|
+
expect(getByLabelText("Filter column Status")).not.toBeNull();
|
|
85
|
+
});
|
|
86
|
+
|
|
87
|
+
it("DataTableFacetMenu trigger is a named export with recipe-sized caret", () => {
|
|
88
|
+
const { getByRole } = renderWithProviders(
|
|
89
|
+
<DataTableFacetMenu label="Assigned To" options={[{ value: "a", label: "A", count: 1 }]} />,
|
|
90
|
+
);
|
|
91
|
+
const trigger = getByRole("button", { name: "Assigned To" });
|
|
92
|
+
expect(trigger).toBeDefined();
|
|
93
|
+
const svg = trigger.querySelector("svg");
|
|
94
|
+
expect(svg).not.toBeNull();
|
|
95
|
+
expect(Number(svg?.getAttribute("width"))).toBe(sizeRecipeForToken("$4").iconSize);
|
|
96
|
+
});
|
|
97
|
+
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type ReactNode } from "react";
|
|
2
2
|
import { type AnyFormApi } from "@multiplatform.one/forms";
|
|
3
3
|
import type { DataTableColumn, DataTableData } from "../../types";
|
|
4
4
|
export type ChildTableProps<TRow extends DataTableData = DataTableData> = {
|
|
@@ -23,6 +23,11 @@ export type ChildTableProps<TRow extends DataTableData = DataTableData> = {
|
|
|
23
23
|
helperText?: string;
|
|
24
24
|
required?: boolean;
|
|
25
25
|
id?: string;
|
|
26
|
+
/**
|
|
27
|
+
* Leading grab handle + keyboard reorder. Default on unless the field is
|
|
28
|
+
* read-only or disabled. A committed drop rewrites `idx` 1..n (MPO-22).
|
|
29
|
+
*/
|
|
30
|
+
enableReorder?: boolean;
|
|
26
31
|
};
|
|
27
32
|
export declare function ChildTable<TRow extends DataTableData = DataTableData>(props: ChildTableProps<TRow>): import("react/jsx-runtime").JSX.Element;
|
|
28
33
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ChildTable/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ChildTable/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEpD,OAAO,EAA6B,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAGtF,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAElE,MAAM,MAAM,eAAe,CAAC,IAAI,SAAS,aAAa,GAAG,aAAa,IAAI;IACxE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC;IAClC,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;IACjC,UAAU,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AA0BF,wBAAgB,UAAU,CAAC,IAAI,SAAS,aAAa,GAAG,aAAa,EACnE,KAAK,EAAE,eAAe,CAAC,IAAI,CAAC,2CA0G7B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ColumnHeaderFilter/index.tsx"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ColumnHeaderFilter/index.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAmBH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAC;AAEjF,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,gBAAgB,CAAC;IAC7B,2CAA2C;IAC3C,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,mCAAmC;IACnC,cAAc,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IACrC,sCAAsC;IACtC,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,GAAG,CAAA;KAAE,CAAC,CAAC;IAC/C,+CAA+C;IAC/C,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAWD,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EAAE,SAAS,EACnB,WAAW,EACX,UAAU,EACV,WAAW,EAAE,YAAY,EACzB,cAAc,EACd,OAAO,EACP,UAAU,GACX,EAAE,uBAAuB,2CAkHzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTableCardControls.d.ts","sourceRoot":"","sources":["../../../src/components/DataTable/DataTableCardControls.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AASH,OAAO,KAAK,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"DataTableCardControls.d.ts","sourceRoot":"","sources":["../../../src/components/DataTable/DataTableCardControls.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AASH,OAAO,KAAK,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAK5E,MAAM,WAAW,0BAA0B;IACzC,mDAAmD;IACnD,KAAK,EAAE,GAAG,CAAC;IACX,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,6DAA6D;IAC7D,gBAAgB,CAAC,EAAE,KAAK,CAAC;QACvB,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,mBAAmB,CAAC;QAC1B,OAAO,CAAC,EAAE,mBAAmB,EAAE,CAAC;KACjC,CAAC,CAAC;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kFAAkF;IAClF,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAOD,wBAAgB,qBAAqB,CAAC,EACpC,KAAK,EACL,aAAqB,EACrB,eAAuB,EACvB,gBAAqB,EACrB,OAAe,EACf,QAAgB,GACjB,EAAE,0BAA0B,kDAiG5B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTableDocumentList.d.ts","sourceRoot":"","sources":["../../../src/components/DataTable/DataTableDocumentList.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAWH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"DataTableDocumentList.d.ts","sourceRoot":"","sources":["../../../src/components/DataTable/DataTableDocumentList.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAWH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAU/B,iFAAiF;AACjF,wBAAgB,yBAAyB,CACvC,KAAK,SAAS;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE,CAAA;CAAE,EACxE,YAAY,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,SAAS,CAY1C;AAED,MAAM,WAAW,0BAA0B,CAAC,KAAK;IAC/C,SAAS,EAAE,GAAG,EAAE,CAAC;IACjB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,iBAAiB,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,KAAK,KAAK,CAAC,SAAS,CAAC;IACpF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAC;IACxD,gBAAgB,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,GAAG,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjG,qEAAqE;IACrE,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,wBAAgB,qBAAqB,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EACvE,SAAS,EACT,kBAA0B,EAC1B,QAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,OAAe,EACf,cAAc,EACd,gBAAgB,EAChB,aAAqB,GACtB,EAAE,0BAA0B,CAAC,KAAK,CAAC,2CA6JnC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTableMobileCards.d.ts","sourceRoot":"","sources":["../../../src/components/DataTable/DataTableMobileCards.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAMH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"DataTableMobileCards.d.ts","sourceRoot":"","sources":["../../../src/components/DataTable/DataTableMobileCards.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAMH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAsB/B,MAAM,WAAW,yBAAyB,CAAC,KAAK;IAC9C,SAAS,EAAE,GAAG,EAAE,CAAC;IACjB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,cAAc,EAAE,OAAO,CAAC;IACxB,aAAa,EAAE,OAAO,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC;IAClB,kFAAkF;IAClF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,iBAAiB,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,KAAK,KAAK,CAAC,SAAS,CAAC;IACpF,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAC;IACxD;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,GAAG,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjG,qEAAqE;IACrE,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,wBAAgB,oBAAoB,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EACtE,SAAS,EACT,kBAA0B,EAC1B,cAAc,EACd,aAAa,EACb,QAAQ,EACR,QAAgB,EAChB,UAAU,EACV,OAAO,EACP,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,gBAAwB,EACxB,sBAA8B,EAC9B,iBAAiB,EACjB,OAAe,EACf,cAAc,EACd,gBAAgB,EAChB,aAAqB,GACtB,EAAE,yBAAyB,CAAC,KAAK,CAAC,2CAqLlC"}
|
|
@@ -17,6 +17,11 @@ export interface DataTableRootProps<TData extends Record<string, any> = Record<s
|
|
|
17
17
|
compact?: boolean;
|
|
18
18
|
/** Structural modifier: disabled state */
|
|
19
19
|
disabled?: boolean;
|
|
20
|
+
/** Structural intent — joins the resolver path (audit 16). */
|
|
21
|
+
accent?: boolean;
|
|
22
|
+
error?: boolean;
|
|
23
|
+
warning?: boolean;
|
|
24
|
+
success?: boolean;
|
|
20
25
|
}
|
|
21
|
-
export declare function DataTableRoot<TData extends Record<string, any> = Record<string, any>>({ data, columns, initialState, controlledState, onStateChange, onRetry, isLoading: isLoadingProp, isFetching: isFetchingProp, syncWithUrl, urlDebounceMs, urlStrategy, manualFiltering, manualPagination, manualSorting, enableFiltering, filterableFields, enableSorting, enablePagination, pageSizeOptions, paginationMode, loadPage, enableColumnVisibility, enableColumnOrdering, enableColumnResizing, enableGlobalSearch, enableViews, columnLayout, layout, enableVirtualization, virtualizationHeight, virtualizationOverscan, enableRowExpansion, renderSubComponent, getSubRows, enableColumnPinning, maxPinnedColumns, enableGrouping, enableKeyboardNavigation, onRowPress, rowLabel, enableRowSelection, selectAllScope: selectAllScopeProp, bulkActions, readOnly, onCellChange, name, form: formProp, showRowNumbers, showAddRow, showDeleteRow, minRows, maxRows, defaultRow, onDataChange, rowCount, pageCount, renderToolbar, renderPagination, renderFilters: _renderFilters, className, size, compact, disabled, children, "aria-label": ariaLabel, "aria-describedby": ariaDescribedBy, ...props }: DataTableRootProps<TData>): import("react/jsx-runtime").JSX.Element;
|
|
26
|
+
export declare function DataTableRoot<TData extends Record<string, any> = Record<string, any>>({ data, columns, initialState, controlledState, onStateChange, onRetry, isLoading: isLoadingProp, isFetching: isFetchingProp, syncWithUrl, urlDebounceMs, urlStrategy, manualFiltering, manualPagination, manualSorting, enableFiltering, filterableFields, enableSorting, enablePagination, pageSizeOptions, paginationMode, loadPage, enableColumnVisibility, enableColumnOrdering, enableColumnResizing, enableGlobalSearch, enableViews, columnLayout, layout, enableVirtualization, virtualizationHeight, virtualizationOverscan, enableRowExpansion, renderSubComponent, getSubRows, enableColumnPinning, maxPinnedColumns, enableGrouping, enableKeyboardNavigation, onRowPress, rowLabel, enableRowSelection, selectAllScope: selectAllScopeProp, bulkActions, readOnly, onCellChange, name, form: formProp, showRowNumbers, showAddRow, showDeleteRow, minRows, maxRows, defaultRow, onDataChange, rowCount, pageCount, renderToolbar, renderPagination, renderFilters: _renderFilters, className, size, compact, disabled, accent, error, warning, success, children, "aria-label": ariaLabel, "aria-describedby": ariaDescribedBy, ...props }: DataTableRootProps<TData>): import("react/jsx-runtime").JSX.Element;
|
|
22
27
|
//# sourceMappingURL=DataTableRoot.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTableRoot.d.ts","sourceRoot":"","sources":["../../../src/components/DataTable/DataTableRoot.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAcH,OAAO,KAA4D,MAAM,OAAO,CAAC;AAajF,OAAO,KAAK,EAIV,cAAc,EAEf,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"DataTableRoot.d.ts","sourceRoot":"","sources":["../../../src/components/DataTable/DataTableRoot.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAcH,OAAO,KAA4D,MAAM,OAAO,CAAC;AAajF,OAAO,KAAK,EAIV,cAAc,EAEf,MAAM,aAAa,CAAC;AA+CrB,MAAM,WAAW,kBAAkB,CACjC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CACvD,SAAQ,cAAc,CAAC,KAAK,CAAC;IAC7B,mDAAmD;IACnD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,0CAA0C;IAC1C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,8DAA8D;IAC9D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,aAAa,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EACrF,IAAI,EACJ,OAAO,EACP,YAAY,EACZ,eAAe,EACf,aAAa,EACb,OAAO,EACP,SAAS,EAAE,aAAa,EACxB,UAAU,EAAE,cAAc,EAC1B,WAAmB,EACnB,aAAmB,EACnB,WAAW,EACX,eAAuB,EACvB,gBAAwB,EACxB,aAAqB,EACrB,eAAsB,EACtB,gBAAgB,EAChB,aAAoB,EACpB,gBAAuB,EACvB,eAAe,EACf,cAAwB,EACxB,QAAQ,EACR,sBAA6B,EAC7B,oBAA4B,EAC5B,oBAA4B,EAC5B,kBAAyB,EACzB,WAAmB,EACnB,YAAsB,EACtB,MAAe,EACf,oBAA4B,EAC5B,oBAAoB,EACpB,sBAA0B,EAC1B,kBAA0B,EAC1B,kBAAkB,EAClB,UAAU,EACV,mBAA2B,EAC3B,gBAAoB,EACpB,cAAsB,EACtB,wBAAgC,EAChC,UAAU,EACV,QAAQ,EACR,kBAA0B,EAC1B,cAAc,EAAE,kBAAkB,EAClC,WAAW,EACX,QAAgB,EAChB,YAAY,EACZ,IAAI,EACJ,IAAI,EAAE,QAAQ,EACd,cAAsB,EACtB,UAAkB,EAClB,aAAqB,EACrB,OAAW,EACX,OAAO,EACP,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,aAAa,EAAE,cAAc,EAC7B,SAAS,EACT,IAAI,EACJ,OAAe,EACf,QAAgB,EAChB,MAAM,EACN,KAAK,EACL,OAAO,EACP,OAAO,EACP,QAAQ,EACR,YAAY,EAAE,SAAS,EACvB,kBAAkB,EAAE,eAAe,EACnC,GAAG,KAAK,EACT,EAAE,kBAAkB,CAAC,KAAK,CAAC,2CAsjE3B"}
|
|
@@ -36,6 +36,8 @@ export interface DataTableVirtualizedProps {
|
|
|
36
36
|
* the same activation + roving-focus contract as grid rows).
|
|
37
37
|
*/
|
|
38
38
|
getRowPressProps?: (row: any, rowIndex: number, variant?: "row" | "card") => Record<string, any>;
|
|
39
|
+
/** LC-65 row estimate — caller passes size-recipe height. */
|
|
40
|
+
rowHeightPx?: number;
|
|
39
41
|
}
|
|
40
|
-
export declare function DataTableVirtualized({ virtualItems, totalSize, bodyScrollRef, virtualizationHeight, tableRows, headerGroups, showRowNumbers, enableRowExpansion, showDeleteRow, readOnly, enableKeyboardNavigation: _enableKeyboardNavigation, keyboardNav, getColSizeProps, renderRowContent, hasInfiniteTail, getRowPressProps, }: DataTableVirtualizedProps): import("react/jsx-runtime").JSX.Element;
|
|
42
|
+
export declare function DataTableVirtualized({ virtualItems, totalSize, bodyScrollRef, virtualizationHeight, tableRows, headerGroups, showRowNumbers, enableRowExpansion, showDeleteRow, readOnly, enableKeyboardNavigation: _enableKeyboardNavigation, keyboardNav, getColSizeProps, renderRowContent, hasInfiniteTail, getRowPressProps, rowHeightPx: rowHeightPxProp, }: DataTableVirtualizedProps): import("react/jsx-runtime").JSX.Element;
|
|
41
43
|
//# sourceMappingURL=DataTableVirtualized.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTableVirtualized.d.ts","sourceRoot":"","sources":["../../../src/components/DataTable/DataTableVirtualized.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"DataTableVirtualized.d.ts","sourceRoot":"","sources":["../../../src/components/DataTable/DataTableVirtualized.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAOH,MAAM,WAAW,yBAAyB;IACxC,YAAY,EAAE,GAAG,EAAE,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACtD,oBAAoB,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,SAAS,EAAE,GAAG,EAAE,CAAC;IACjB,YAAY,EAAE,GAAG,EAAE,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,aAAa,EAAE,OAAO,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC;IAClB,wBAAwB,EAAE,OAAO,CAAC;IAClC,WAAW,EAAE,GAAG,CAAC;IACjB,eAAe,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,CAAC;IACnC,gBAAgB,EAAE,CAChB,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,OAAO,EAClB,WAAW,CAAC,EAAE,KAAK,KAChB,KAAK,CAAC,SAAS,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,KAAK,EAAE,GAAG,CAAC;IACX;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,GAAG,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjG,6DAA6D;IAC7D,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,oBAAoB,CAAC,EACnC,YAAY,EACZ,SAAS,EACT,aAAa,EACb,oBAAoB,EACpB,SAAS,EACT,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,QAAQ,EACR,wBAAwB,EAAE,yBAAyB,EACnD,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,eAAuB,EACvB,gBAAgB,EAChB,WAAW,EAAE,eAAe,GAC7B,EAAE,yBAAyB,2CAkJ3B"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DataTable chrome geometry and intent helpers.
|
|
3
|
+
*
|
|
4
|
+
* Size numbers come from LC-65 `sizeRecipeForToken` (no handwritten 14/40).
|
|
5
|
+
* Row `_intent` rides Tamagui boolean theme props on the real row host —
|
|
6
|
+
* never a Theme wrapper inside <table> (invalid HTML).
|
|
7
|
+
*/
|
|
8
|
+
export type DataTableIntentName = "accent" | "error" | "warning" | "success";
|
|
9
|
+
export declare function resolveDataTableIntent(flags: {
|
|
10
|
+
accent?: boolean;
|
|
11
|
+
error?: boolean;
|
|
12
|
+
warning?: boolean;
|
|
13
|
+
success?: boolean;
|
|
14
|
+
}): DataTableIntentName | undefined;
|
|
15
|
+
export declare function rowIntentProps(rowData: Record<string, unknown> | undefined): Record<string, true>;
|
|
16
|
+
export declare function dataTableChrome(sizeToken: string): {
|
|
17
|
+
recipe: import("@multiplatform.one/theme").SizeRecipe;
|
|
18
|
+
iconPx: number;
|
|
19
|
+
rowPx: number;
|
|
20
|
+
selectionCol: number;
|
|
21
|
+
expandCol: number;
|
|
22
|
+
rowNumberCol: number;
|
|
23
|
+
deleteCol: number;
|
|
24
|
+
indent: number;
|
|
25
|
+
};
|
|
26
|
+
export type DataTableChrome = ReturnType<typeof dataTableChrome>;
|
|
27
|
+
//# sourceMappingURL=dataTableChrome.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dataTableChrome.d.ts","sourceRoot":"","sources":["../../../src/components/DataTable/dataTableChrome.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC;AAE7E,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,mBAAmB,GAAG,SAAS,CAMlC;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAMjG;AAED,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM;;;;;;;;;EAYhD;AAED,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC"}
|