@multiplatform.one/table 6.1.0 → 6.3.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/README.md +125 -65
- package/dist/cjs/components/ChildTable/index.cjs +44 -9
- package/dist/cjs/components/ChildTable/index.native.js +56 -13
- package/dist/cjs/components/ChildTable/index.native.js.map +1 -1
- package/dist/cjs/components/ColumnHeaderFilter/index.cjs +27 -110
- package/dist/cjs/components/ColumnHeaderFilter/index.native.js +27 -119
- package/dist/cjs/components/ColumnHeaderFilter/index.native.js.map +1 -1
- package/dist/cjs/components/DataTable/DataTableCardControls.cjs +133 -0
- package/dist/cjs/components/DataTable/DataTableCardControls.native.js +140 -0
- package/dist/cjs/components/DataTable/DataTableCardControls.native.js.map +1 -0
- package/dist/cjs/components/DataTable/DataTableMobileCards.cjs +125 -59
- package/dist/cjs/components/DataTable/DataTableMobileCards.native.js +114 -49
- package/dist/cjs/components/DataTable/DataTableMobileCards.native.js.map +1 -1
- package/dist/cjs/components/DataTable/DataTableRoot.cjs +574 -170
- package/dist/cjs/components/DataTable/DataTableRoot.native.js +699 -178
- package/dist/cjs/components/DataTable/DataTableRoot.native.js.map +1 -1
- package/dist/cjs/components/DataTable/DataTableStateContext.native.js.map +1 -1
- package/dist/cjs/components/DataTable/DataTableVirtualized.cjs +78 -3
- package/dist/cjs/components/DataTable/DataTableVirtualized.native.js +86 -3
- package/dist/cjs/components/DataTable/DataTableVirtualized.native.js.map +1 -1
- package/dist/cjs/components/DataTable/index.cjs +2 -0
- package/dist/cjs/components/DataTable/index.native.js +170 -72
- package/dist/cjs/components/DataTable/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableBulkActions/index.cjs +62 -146
- package/dist/cjs/components/DataTableBulkActions/index.native.js +77 -153
- package/dist/cjs/components/DataTableBulkActions/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableCell/CellModalEditor.cjs +61 -8
- package/dist/cjs/components/DataTableCell/CellModalEditor.native.js +73 -66
- package/dist/cjs/components/DataTableCell/CellModalEditor.native.js.map +1 -1
- package/dist/cjs/components/DataTableCell/CellOptionsEditor.cjs +87 -0
- package/dist/cjs/components/DataTableCell/CellOptionsEditor.native.js +100 -0
- package/dist/cjs/components/DataTableCell/CellOptionsEditor.native.js.map +1 -0
- package/dist/cjs/components/DataTableCell/index.cjs +524 -147
- package/dist/cjs/components/DataTableCell/index.native.js +666 -210
- package/dist/cjs/components/DataTableCell/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableColumnPinning/index.cjs +95 -24
- package/dist/cjs/components/DataTableColumnPinning/index.native.js +101 -25
- package/dist/cjs/components/DataTableColumnPinning/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableDateFilter/index.cjs +385 -197
- package/dist/cjs/components/DataTableDateFilter/index.native.js +414 -213
- package/dist/cjs/components/DataTableDateFilter/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableExport/index.cjs +223 -195
- package/dist/cjs/components/DataTableExport/index.native.js +318 -217
- package/dist/cjs/components/DataTableExport/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableFilterButton/index.cjs +349 -0
- package/dist/cjs/components/DataTableFilterButton/index.native.js +402 -0
- package/dist/cjs/components/DataTableFilterButton/index.native.js.map +1 -0
- package/dist/cjs/components/DataTableFilterChips/index.cjs +120 -0
- package/dist/cjs/components/DataTableFilterChips/index.native.js +187 -0
- package/dist/cjs/components/DataTableFilterChips/index.native.js.map +1 -0
- package/dist/cjs/components/DataTableFilters/index.cjs +36 -31
- package/dist/cjs/components/DataTableFilters/index.native.js +36 -31
- package/dist/cjs/components/DataTableFilters/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableGrouping/index.cjs +246 -189
- package/dist/cjs/components/DataTableGrouping/index.native.js +283 -203
- package/dist/cjs/components/DataTableGrouping/index.native.js.map +1 -1
- package/dist/cjs/components/DataTablePagination/index.cjs +103 -329
- package/dist/cjs/components/DataTablePagination/index.native.js +115 -377
- package/dist/cjs/components/DataTablePagination/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableSearch/index.cjs +132 -155
- package/dist/cjs/components/DataTableSearch/index.native.js +164 -170
- package/dist/cjs/components/DataTableSearch/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableToolbar/index.cjs +71 -116
- package/dist/cjs/components/DataTableToolbar/index.native.js +98 -123
- package/dist/cjs/components/DataTableToolbar/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableViewOptions/index.cjs +73 -169
- package/dist/cjs/components/DataTableViewOptions/index.native.js +88 -184
- package/dist/cjs/components/DataTableViewOptions/index.native.js.map +1 -1
- package/dist/cjs/components/FilterManager.cjs +7 -5
- package/dist/cjs/components/FilterManager.native.js +21 -8
- package/dist/cjs/components/FilterManager.native.js.map +1 -1
- package/dist/cjs/components/FilterOperatorValueEditor/index.cjs +109 -0
- package/dist/cjs/components/FilterOperatorValueEditor/index.native.js +121 -0
- package/dist/cjs/components/FilterOperatorValueEditor/index.native.js.map +1 -0
- package/dist/cjs/components/SavedFilterDropdown.cjs +3 -3
- package/dist/cjs/components/SavedFilterDropdown.native.js +3 -3
- package/dist/cjs/components/SavedFilterDropdown.native.js.map +1 -1
- package/dist/cjs/components/SimpleTable/index.cjs +22 -15
- package/dist/cjs/components/SimpleTable/index.native.js +31 -19
- package/dist/cjs/components/SimpleTable/index.native.js.map +1 -1
- package/dist/cjs/components/TableInput/index.cjs +149 -49
- package/dist/cjs/components/TableInput/index.native.js +181 -71
- package/dist/cjs/components/TableInput/index.native.js.map +1 -1
- package/dist/cjs/components/TableInput/shared.cjs +36 -0
- package/dist/cjs/components/TableInput/shared.native.js +41 -0
- package/dist/cjs/components/TableInput/shared.native.js.map +1 -0
- package/dist/cjs/hooks/useDataTable.cjs +114 -21
- package/dist/cjs/hooks/useDataTable.native.js +126 -25
- package/dist/cjs/hooks/useDataTable.native.js.map +1 -1
- package/dist/cjs/hooks/useInfiniteRows.cjs +193 -0
- package/dist/cjs/hooks/useInfiniteRows.native.js +203 -0
- package/dist/cjs/hooks/useInfiniteRows.native.js.map +1 -0
- package/dist/cjs/hooks/useTableFiltering.cjs +14 -18
- package/dist/cjs/hooks/useTableFiltering.native.js +17 -23
- package/dist/cjs/hooks/useTableFiltering.native.js.map +1 -1
- package/dist/cjs/hooks/useTablePagination.cjs +2 -2
- package/dist/cjs/hooks/useTablePagination.native.js +2 -2
- package/dist/cjs/hooks/useTablePagination.native.js.map +1 -1
- package/dist/cjs/index.cjs +26 -1
- package/dist/cjs/index.native.js +25 -0
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/shared/t.cjs +50 -0
- package/dist/cjs/shared/t.native.js +55 -0
- package/dist/cjs/shared/t.native.js.map +1 -0
- package/dist/cjs/utils/columnAlign.cjs +60 -0
- package/dist/cjs/utils/columnAlign.native.js +67 -0
- package/dist/cjs/utils/columnAlign.native.js.map +1 -0
- package/dist/cjs/utils/filterFields.cjs +185 -0
- package/dist/cjs/utils/filterFields.native.js +247 -0
- package/dist/cjs/utils/filterFields.native.js.map +1 -0
- package/dist/cjs/utils/filterUtils.cjs +39 -20
- package/dist/cjs/utils/filterUtils.native.js +39 -20
- package/dist/cjs/utils/filterUtils.native.js.map +1 -1
- package/dist/cjs/utils/paginationDefaults.cjs +32 -0
- package/dist/cjs/utils/paginationDefaults.native.js +35 -0
- package/dist/cjs/utils/paginationDefaults.native.js.map +1 -0
- package/dist/cjs/utils/urlStateUtils.cjs +2 -1
- package/dist/cjs/utils/urlStateUtils.native.js +2 -1
- package/dist/cjs/utils/urlStateUtils.native.js.map +1 -1
- package/dist/cjs/utils/viewData.cjs +45 -0
- package/dist/cjs/utils/viewData.native.js +69 -0
- package/dist/cjs/utils/viewData.native.js.map +1 -0
- package/dist/cjs/utils/withInterp.cjs +39 -0
- package/dist/cjs/utils/withInterp.native.js +42 -0
- package/dist/cjs/utils/withInterp.native.js.map +1 -0
- package/dist/esm/components/ChildTable/index.mjs +45 -10
- package/dist/esm/components/ChildTable/index.mjs.map +1 -1
- package/dist/esm/components/ChildTable/index.native.js +57 -14
- package/dist/esm/components/ChildTable/index.native.js.map +1 -1
- package/dist/esm/components/ColumnHeaderFilter/index.mjs +29 -111
- package/dist/esm/components/ColumnHeaderFilter/index.mjs.map +1 -1
- package/dist/esm/components/ColumnHeaderFilter/index.native.js +30 -121
- package/dist/esm/components/ColumnHeaderFilter/index.native.js.map +1 -1
- package/dist/esm/components/DataTable/DataTableCardControls.mjs +108 -0
- package/dist/esm/components/DataTable/DataTableCardControls.mjs.map +1 -0
- package/dist/esm/components/DataTable/DataTableCardControls.native.js +112 -0
- package/dist/esm/components/DataTable/DataTableCardControls.native.js.map +1 -0
- package/dist/esm/components/DataTable/DataTableMobileCards.mjs +128 -62
- package/dist/esm/components/DataTable/DataTableMobileCards.mjs.map +1 -1
- package/dist/esm/components/DataTable/DataTableMobileCards.native.js +117 -52
- package/dist/esm/components/DataTable/DataTableMobileCards.native.js.map +1 -1
- package/dist/esm/components/DataTable/DataTableRoot.mjs +578 -174
- package/dist/esm/components/DataTable/DataTableRoot.mjs.map +1 -1
- package/dist/esm/components/DataTable/DataTableRoot.native.js +703 -182
- package/dist/esm/components/DataTable/DataTableRoot.native.js.map +1 -1
- package/dist/esm/components/DataTable/DataTableStateContext.mjs.map +1 -1
- package/dist/esm/components/DataTable/DataTableStateContext.native.js.map +1 -1
- package/dist/esm/components/DataTable/DataTableVirtualized.mjs +79 -4
- package/dist/esm/components/DataTable/DataTableVirtualized.mjs.map +1 -1
- package/dist/esm/components/DataTable/DataTableVirtualized.native.js +87 -4
- package/dist/esm/components/DataTable/DataTableVirtualized.native.js.map +1 -1
- package/dist/esm/components/DataTable/index.mjs +2 -0
- package/dist/esm/components/DataTable/index.mjs.map +1 -1
- package/dist/esm/components/DataTable/index.native.js +172 -74
- package/dist/esm/components/DataTable/index.native.js.map +1 -1
- package/dist/esm/components/DataTableBulkActions/index.mjs +65 -147
- package/dist/esm/components/DataTableBulkActions/index.mjs.map +1 -1
- package/dist/esm/components/DataTableBulkActions/index.native.js +80 -154
- package/dist/esm/components/DataTableBulkActions/index.native.js.map +1 -1
- package/dist/esm/components/DataTableCell/CellModalEditor.mjs +62 -9
- package/dist/esm/components/DataTableCell/CellModalEditor.mjs.map +1 -1
- package/dist/esm/components/DataTableCell/CellModalEditor.native.js +74 -67
- package/dist/esm/components/DataTableCell/CellModalEditor.native.js.map +1 -1
- package/dist/esm/components/DataTableCell/CellOptionsEditor.mjs +62 -0
- package/dist/esm/components/DataTableCell/CellOptionsEditor.mjs.map +1 -0
- package/dist/esm/components/DataTableCell/CellOptionsEditor.native.js +72 -0
- package/dist/esm/components/DataTableCell/CellOptionsEditor.native.js.map +1 -0
- package/dist/esm/components/DataTableCell/index.mjs +527 -149
- package/dist/esm/components/DataTableCell/index.mjs.map +1 -1
- package/dist/esm/components/DataTableCell/index.native.js +670 -213
- package/dist/esm/components/DataTableCell/index.native.js.map +1 -1
- package/dist/esm/components/DataTableColumnPinning/index.mjs +99 -28
- package/dist/esm/components/DataTableColumnPinning/index.mjs.map +1 -1
- package/dist/esm/components/DataTableColumnPinning/index.native.js +105 -29
- package/dist/esm/components/DataTableColumnPinning/index.native.js.map +1 -1
- package/dist/esm/components/DataTableDateFilter/index.mjs +387 -200
- package/dist/esm/components/DataTableDateFilter/index.mjs.map +1 -1
- package/dist/esm/components/DataTableDateFilter/index.native.js +416 -216
- package/dist/esm/components/DataTableDateFilter/index.native.js.map +1 -1
- package/dist/esm/components/DataTableExport/index.mjs +223 -195
- package/dist/esm/components/DataTableExport/index.mjs.map +1 -1
- package/dist/esm/components/DataTableExport/index.native.js +318 -217
- package/dist/esm/components/DataTableExport/index.native.js.map +1 -1
- package/dist/esm/components/DataTableFilterButton/index.mjs +324 -0
- package/dist/esm/components/DataTableFilterButton/index.mjs.map +1 -0
- package/dist/esm/components/DataTableFilterButton/index.native.js +374 -0
- package/dist/esm/components/DataTableFilterButton/index.native.js.map +1 -0
- package/dist/esm/components/DataTableFilterChips/index.mjs +95 -0
- package/dist/esm/components/DataTableFilterChips/index.mjs.map +1 -0
- package/dist/esm/components/DataTableFilterChips/index.native.js +159 -0
- package/dist/esm/components/DataTableFilterChips/index.native.js.map +1 -0
- package/dist/esm/components/DataTableFilters/index.mjs +36 -31
- package/dist/esm/components/DataTableFilters/index.mjs.map +1 -1
- package/dist/esm/components/DataTableFilters/index.native.js +36 -31
- package/dist/esm/components/DataTableFilters/index.native.js.map +1 -1
- package/dist/esm/components/DataTableGrouping/index.mjs +248 -191
- package/dist/esm/components/DataTableGrouping/index.mjs.map +1 -1
- package/dist/esm/components/DataTableGrouping/index.native.js +285 -205
- package/dist/esm/components/DataTableGrouping/index.native.js.map +1 -1
- package/dist/esm/components/DataTablePagination/index.mjs +105 -329
- package/dist/esm/components/DataTablePagination/index.mjs.map +1 -1
- package/dist/esm/components/DataTablePagination/index.native.js +117 -366
- package/dist/esm/components/DataTablePagination/index.native.js.map +1 -1
- package/dist/esm/components/DataTableSearch/index.mjs +135 -156
- package/dist/esm/components/DataTableSearch/index.mjs.map +1 -1
- package/dist/esm/components/DataTableSearch/index.native.js +167 -171
- package/dist/esm/components/DataTableSearch/index.native.js.map +1 -1
- package/dist/esm/components/DataTableToolbar/index.mjs +75 -118
- package/dist/esm/components/DataTableToolbar/index.mjs.map +1 -1
- package/dist/esm/components/DataTableToolbar/index.native.js +102 -125
- package/dist/esm/components/DataTableToolbar/index.native.js.map +1 -1
- package/dist/esm/components/DataTableViewOptions/index.mjs +75 -171
- package/dist/esm/components/DataTableViewOptions/index.mjs.map +1 -1
- package/dist/esm/components/DataTableViewOptions/index.native.js +90 -186
- package/dist/esm/components/DataTableViewOptions/index.native.js.map +1 -1
- package/dist/esm/components/FilterManager.mjs +7 -5
- package/dist/esm/components/FilterManager.mjs.map +1 -1
- package/dist/esm/components/FilterManager.native.js +21 -8
- package/dist/esm/components/FilterManager.native.js.map +1 -1
- package/dist/esm/components/FilterOperatorValueEditor/index.mjs +84 -0
- package/dist/esm/components/FilterOperatorValueEditor/index.mjs.map +1 -0
- package/dist/esm/components/FilterOperatorValueEditor/index.native.js +93 -0
- package/dist/esm/components/FilterOperatorValueEditor/index.native.js.map +1 -0
- package/dist/esm/components/SavedFilterDropdown.mjs +3 -3
- package/dist/esm/components/SavedFilterDropdown.mjs.map +1 -1
- package/dist/esm/components/SavedFilterDropdown.native.js +3 -3
- package/dist/esm/components/SavedFilterDropdown.native.js.map +1 -1
- package/dist/esm/components/SimpleTable/index.mjs +22 -15
- package/dist/esm/components/SimpleTable/index.mjs.map +1 -1
- package/dist/esm/components/SimpleTable/index.native.js +31 -19
- package/dist/esm/components/SimpleTable/index.native.js.map +1 -1
- package/dist/esm/components/TableInput/index.mjs +149 -49
- package/dist/esm/components/TableInput/index.mjs.map +1 -1
- package/dist/esm/components/TableInput/index.native.js +181 -71
- package/dist/esm/components/TableInput/index.native.js.map +1 -1
- package/dist/esm/components/TableInput/shared.mjs +9 -0
- package/dist/esm/components/TableInput/shared.mjs.map +1 -0
- package/dist/esm/components/TableInput/shared.native.js +11 -0
- package/dist/esm/components/TableInput/shared.native.js.map +1 -0
- package/dist/esm/hooks/useDataTable.mjs +115 -22
- package/dist/esm/hooks/useDataTable.mjs.map +1 -1
- package/dist/esm/hooks/useDataTable.native.js +127 -26
- package/dist/esm/hooks/useDataTable.native.js.map +1 -1
- package/dist/esm/hooks/useInfiniteRows.mjs +168 -0
- package/dist/esm/hooks/useInfiniteRows.mjs.map +1 -0
- package/dist/esm/hooks/useInfiniteRows.native.js +175 -0
- package/dist/esm/hooks/useInfiniteRows.native.js.map +1 -0
- package/dist/esm/hooks/useTableFiltering.mjs +14 -18
- package/dist/esm/hooks/useTableFiltering.mjs.map +1 -1
- package/dist/esm/hooks/useTableFiltering.native.js +17 -23
- package/dist/esm/hooks/useTableFiltering.native.js.map +1 -1
- package/dist/esm/hooks/useTablePagination.mjs +2 -2
- package/dist/esm/hooks/useTablePagination.mjs.map +1 -1
- package/dist/esm/hooks/useTablePagination.native.js +2 -2
- package/dist/esm/hooks/useTablePagination.native.js.map +1 -1
- package/dist/esm/index.mjs +8 -1
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +8 -1
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/shared/t.mjs +14 -0
- package/dist/esm/shared/t.mjs.map +1 -0
- package/dist/esm/shared/t.native.js +16 -0
- package/dist/esm/shared/t.native.js.map +1 -0
- package/dist/esm/utils/columnAlign.mjs +34 -0
- package/dist/esm/utils/columnAlign.mjs.map +1 -0
- package/dist/esm/utils/columnAlign.native.js +38 -0
- package/dist/esm/utils/columnAlign.native.js.map +1 -0
- package/dist/esm/utils/filterFields.mjs +149 -0
- package/dist/esm/utils/filterFields.mjs.map +1 -0
- package/dist/esm/utils/filterFields.native.js +208 -0
- package/dist/esm/utils/filterFields.native.js.map +1 -0
- package/dist/esm/utils/filterUtils.mjs +39 -20
- package/dist/esm/utils/filterUtils.mjs.map +1 -1
- package/dist/esm/utils/filterUtils.native.js +39 -20
- package/dist/esm/utils/filterUtils.native.js.map +1 -1
- package/dist/esm/utils/paginationDefaults.mjs +5 -0
- package/dist/esm/utils/paginationDefaults.mjs.map +1 -0
- package/dist/esm/utils/paginationDefaults.native.js +5 -0
- package/dist/esm/utils/paginationDefaults.native.js.map +1 -0
- package/dist/esm/utils/urlStateUtils.mjs +2 -1
- package/dist/esm/utils/urlStateUtils.mjs.map +1 -1
- package/dist/esm/utils/urlStateUtils.native.js +2 -1
- package/dist/esm/utils/urlStateUtils.native.js.map +1 -1
- package/dist/esm/utils/viewData.mjs +20 -0
- package/dist/esm/utils/viewData.mjs.map +1 -0
- package/dist/esm/utils/viewData.native.js +41 -0
- package/dist/esm/utils/viewData.native.js.map +1 -0
- package/dist/esm/utils/withInterp.mjs +13 -0
- package/dist/esm/utils/withInterp.mjs.map +1 -0
- package/dist/esm/utils/withInterp.native.js +13 -0
- package/dist/esm/utils/withInterp.native.js.map +1 -0
- package/dist/jsx/components/ChildTable/index.mjs +45 -10
- package/dist/jsx/components/ChildTable/index.mjs.map +1 -1
- package/dist/jsx/components/ChildTable/index.native.js +56 -13
- package/dist/jsx/components/ChildTable/index.native.js.map +1 -1
- package/dist/jsx/components/ColumnHeaderFilter/index.mjs +29 -111
- package/dist/jsx/components/ColumnHeaderFilter/index.mjs.map +1 -1
- package/dist/jsx/components/ColumnHeaderFilter/index.native.js +27 -119
- package/dist/jsx/components/ColumnHeaderFilter/index.native.js.map +1 -1
- package/dist/jsx/components/DataTable/DataTableCardControls.mjs +108 -0
- package/dist/jsx/components/DataTable/DataTableCardControls.mjs.map +1 -0
- package/dist/jsx/components/DataTable/DataTableCardControls.native.js +140 -0
- package/dist/jsx/components/DataTable/DataTableCardControls.native.js.map +1 -0
- package/dist/jsx/components/DataTable/DataTableMobileCards.mjs +128 -62
- package/dist/jsx/components/DataTable/DataTableMobileCards.mjs.map +1 -1
- package/dist/jsx/components/DataTable/DataTableMobileCards.native.js +114 -49
- package/dist/jsx/components/DataTable/DataTableMobileCards.native.js.map +1 -1
- package/dist/jsx/components/DataTable/DataTableRoot.mjs +578 -174
- package/dist/jsx/components/DataTable/DataTableRoot.mjs.map +1 -1
- package/dist/jsx/components/DataTable/DataTableRoot.native.js +699 -178
- package/dist/jsx/components/DataTable/DataTableRoot.native.js.map +1 -1
- package/dist/jsx/components/DataTable/DataTableStateContext.mjs.map +1 -1
- package/dist/jsx/components/DataTable/DataTableStateContext.native.js.map +1 -1
- package/dist/jsx/components/DataTable/DataTableVirtualized.mjs +79 -4
- package/dist/jsx/components/DataTable/DataTableVirtualized.mjs.map +1 -1
- package/dist/jsx/components/DataTable/DataTableVirtualized.native.js +86 -3
- package/dist/jsx/components/DataTable/DataTableVirtualized.native.js.map +1 -1
- package/dist/jsx/components/DataTable/index.mjs +2 -0
- package/dist/jsx/components/DataTable/index.mjs.map +1 -1
- package/dist/jsx/components/DataTable/index.native.js +170 -72
- package/dist/jsx/components/DataTable/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableBulkActions/index.mjs +65 -147
- package/dist/jsx/components/DataTableBulkActions/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableBulkActions/index.native.js +77 -153
- package/dist/jsx/components/DataTableBulkActions/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableCell/CellModalEditor.mjs +62 -9
- package/dist/jsx/components/DataTableCell/CellModalEditor.mjs.map +1 -1
- package/dist/jsx/components/DataTableCell/CellModalEditor.native.js +73 -66
- package/dist/jsx/components/DataTableCell/CellModalEditor.native.js.map +1 -1
- package/dist/jsx/components/DataTableCell/CellOptionsEditor.mjs +62 -0
- package/dist/jsx/components/DataTableCell/CellOptionsEditor.mjs.map +1 -0
- package/dist/jsx/components/DataTableCell/CellOptionsEditor.native.js +100 -0
- package/dist/jsx/components/DataTableCell/CellOptionsEditor.native.js.map +1 -0
- package/dist/jsx/components/DataTableCell/index.mjs +527 -149
- package/dist/jsx/components/DataTableCell/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableCell/index.native.js +666 -210
- package/dist/jsx/components/DataTableCell/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableColumnPinning/index.mjs +99 -28
- package/dist/jsx/components/DataTableColumnPinning/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableColumnPinning/index.native.js +101 -25
- package/dist/jsx/components/DataTableColumnPinning/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableDateFilter/index.mjs +387 -200
- package/dist/jsx/components/DataTableDateFilter/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableDateFilter/index.native.js +414 -213
- package/dist/jsx/components/DataTableDateFilter/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableExport/index.mjs +223 -195
- package/dist/jsx/components/DataTableExport/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableExport/index.native.js +318 -217
- package/dist/jsx/components/DataTableExport/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableFilterButton/index.mjs +324 -0
- package/dist/jsx/components/DataTableFilterButton/index.mjs.map +1 -0
- package/dist/jsx/components/DataTableFilterButton/index.native.js +402 -0
- package/dist/jsx/components/DataTableFilterButton/index.native.js.map +1 -0
- package/dist/jsx/components/DataTableFilterChips/index.mjs +95 -0
- package/dist/jsx/components/DataTableFilterChips/index.mjs.map +1 -0
- package/dist/jsx/components/DataTableFilterChips/index.native.js +187 -0
- package/dist/jsx/components/DataTableFilterChips/index.native.js.map +1 -0
- package/dist/jsx/components/DataTableFilters/index.mjs +36 -31
- package/dist/jsx/components/DataTableFilters/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableFilters/index.native.js +36 -31
- package/dist/jsx/components/DataTableFilters/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableGrouping/index.mjs +248 -191
- package/dist/jsx/components/DataTableGrouping/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableGrouping/index.native.js +283 -203
- package/dist/jsx/components/DataTableGrouping/index.native.js.map +1 -1
- package/dist/jsx/components/DataTablePagination/index.mjs +105 -329
- package/dist/jsx/components/DataTablePagination/index.mjs.map +1 -1
- package/dist/jsx/components/DataTablePagination/index.native.js +115 -377
- package/dist/jsx/components/DataTablePagination/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableSearch/index.mjs +135 -156
- package/dist/jsx/components/DataTableSearch/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableSearch/index.native.js +164 -170
- package/dist/jsx/components/DataTableSearch/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableToolbar/index.mjs +75 -118
- package/dist/jsx/components/DataTableToolbar/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableToolbar/index.native.js +98 -123
- package/dist/jsx/components/DataTableToolbar/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableViewOptions/index.mjs +75 -171
- package/dist/jsx/components/DataTableViewOptions/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableViewOptions/index.native.js +88 -184
- package/dist/jsx/components/DataTableViewOptions/index.native.js.map +1 -1
- package/dist/jsx/components/FilterManager.mjs +7 -5
- package/dist/jsx/components/FilterManager.mjs.map +1 -1
- package/dist/jsx/components/FilterManager.native.js +21 -8
- package/dist/jsx/components/FilterManager.native.js.map +1 -1
- package/dist/jsx/components/FilterOperatorValueEditor/index.mjs +84 -0
- package/dist/jsx/components/FilterOperatorValueEditor/index.mjs.map +1 -0
- package/dist/jsx/components/FilterOperatorValueEditor/index.native.js +121 -0
- package/dist/jsx/components/FilterOperatorValueEditor/index.native.js.map +1 -0
- package/dist/jsx/components/SavedFilterDropdown.mjs +3 -3
- package/dist/jsx/components/SavedFilterDropdown.mjs.map +1 -1
- package/dist/jsx/components/SavedFilterDropdown.native.js +3 -3
- package/dist/jsx/components/SavedFilterDropdown.native.js.map +1 -1
- package/dist/jsx/components/SimpleTable/index.mjs +22 -15
- package/dist/jsx/components/SimpleTable/index.mjs.map +1 -1
- package/dist/jsx/components/SimpleTable/index.native.js +31 -19
- package/dist/jsx/components/SimpleTable/index.native.js.map +1 -1
- package/dist/jsx/components/TableInput/index.mjs +149 -49
- package/dist/jsx/components/TableInput/index.mjs.map +1 -1
- package/dist/jsx/components/TableInput/index.native.js +181 -71
- package/dist/jsx/components/TableInput/index.native.js.map +1 -1
- package/dist/jsx/components/TableInput/shared.mjs +9 -0
- package/dist/jsx/components/TableInput/shared.mjs.map +1 -0
- package/dist/jsx/components/TableInput/shared.native.js +41 -0
- package/dist/jsx/components/TableInput/shared.native.js.map +1 -0
- package/dist/jsx/hooks/useDataTable.mjs +115 -22
- package/dist/jsx/hooks/useDataTable.mjs.map +1 -1
- package/dist/jsx/hooks/useDataTable.native.js +126 -25
- package/dist/jsx/hooks/useDataTable.native.js.map +1 -1
- package/dist/jsx/hooks/useInfiniteRows.mjs +168 -0
- package/dist/jsx/hooks/useInfiniteRows.mjs.map +1 -0
- package/dist/jsx/hooks/useInfiniteRows.native.js +203 -0
- package/dist/jsx/hooks/useInfiniteRows.native.js.map +1 -0
- package/dist/jsx/hooks/useTableFiltering.mjs +14 -18
- package/dist/jsx/hooks/useTableFiltering.mjs.map +1 -1
- package/dist/jsx/hooks/useTableFiltering.native.js +17 -23
- package/dist/jsx/hooks/useTableFiltering.native.js.map +1 -1
- package/dist/jsx/hooks/useTablePagination.mjs +2 -2
- package/dist/jsx/hooks/useTablePagination.mjs.map +1 -1
- package/dist/jsx/hooks/useTablePagination.native.js +2 -2
- package/dist/jsx/hooks/useTablePagination.native.js.map +1 -1
- package/dist/jsx/index.js +8 -1
- package/dist/jsx/index.js.map +1 -1
- package/dist/jsx/index.mjs +8 -1
- package/dist/jsx/index.mjs.map +1 -1
- package/dist/jsx/index.native.js +25 -0
- package/dist/jsx/index.native.js.map +1 -1
- package/dist/jsx/shared/t.mjs +14 -0
- package/dist/jsx/shared/t.mjs.map +1 -0
- package/dist/jsx/shared/t.native.js +55 -0
- package/dist/jsx/shared/t.native.js.map +1 -0
- package/dist/jsx/utils/columnAlign.mjs +34 -0
- package/dist/jsx/utils/columnAlign.mjs.map +1 -0
- package/dist/jsx/utils/columnAlign.native.js +67 -0
- package/dist/jsx/utils/columnAlign.native.js.map +1 -0
- package/dist/jsx/utils/filterFields.mjs +149 -0
- package/dist/jsx/utils/filterFields.mjs.map +1 -0
- package/dist/jsx/utils/filterFields.native.js +247 -0
- package/dist/jsx/utils/filterFields.native.js.map +1 -0
- package/dist/jsx/utils/filterUtils.mjs +39 -20
- package/dist/jsx/utils/filterUtils.mjs.map +1 -1
- package/dist/jsx/utils/filterUtils.native.js +39 -20
- package/dist/jsx/utils/filterUtils.native.js.map +1 -1
- package/dist/jsx/utils/paginationDefaults.mjs +5 -0
- package/dist/jsx/utils/paginationDefaults.mjs.map +1 -0
- package/dist/jsx/utils/paginationDefaults.native.js +35 -0
- package/dist/jsx/utils/paginationDefaults.native.js.map +1 -0
- package/dist/jsx/utils/urlStateUtils.mjs +2 -1
- package/dist/jsx/utils/urlStateUtils.mjs.map +1 -1
- package/dist/jsx/utils/urlStateUtils.native.js +2 -1
- package/dist/jsx/utils/urlStateUtils.native.js.map +1 -1
- package/dist/jsx/utils/viewData.mjs +20 -0
- package/dist/jsx/utils/viewData.mjs.map +1 -0
- package/dist/jsx/utils/viewData.native.js +69 -0
- package/dist/jsx/utils/viewData.native.js.map +1 -0
- package/dist/jsx/utils/withInterp.mjs +13 -0
- package/dist/jsx/utils/withInterp.mjs.map +1 -0
- package/dist/jsx/utils/withInterp.native.js +42 -0
- package/dist/jsx/utils/withInterp.native.js.map +1 -0
- package/package.json +29 -19
- package/src/components/ChildTable/index.tsx +70 -9
- package/src/components/ColumnHeaderFilter/index.tsx +43 -161
- package/src/components/DataTable/DataTable.spec.tsx +347 -0
- package/src/components/DataTable/DataTable.stories.tsx +363 -9
- package/src/components/DataTable/DataTableCardControls.tsx +148 -0
- package/src/components/DataTable/DataTableMobileCards.tsx +153 -80
- package/src/components/DataTable/DataTableRoot.tsx +847 -181
- package/src/components/DataTable/DataTableStateContext.ts +24 -1
- package/src/components/DataTable/DataTableVirtualized.tsx +98 -4
- package/src/components/DataTable/FieldsInCells.stories.tsx +296 -6
- package/src/components/DataTable/cardLayout.spec.tsx +294 -0
- package/src/components/DataTable/chromeInterplay.spec.tsx +282 -0
- package/src/components/DataTable/compoundComponent.spec.tsx +6 -1
- package/src/components/DataTable/disabledContract.spec.tsx +242 -0
- package/src/components/DataTable/expandCaretRtl.spec.tsx +80 -0
- package/src/components/DataTable/headerSorting.spec.tsx +155 -0
- package/src/components/DataTable/index.native.tsx +220 -77
- package/src/components/DataTable/index.tsx +2 -0
- package/src/components/DataTable/infiniteMode.spec.tsx +118 -0
- package/src/components/DataTable/pinningGeometry.spec.tsx +144 -0
- package/src/components/DataTable/rowActionLabels.spec.tsx +97 -0
- package/src/components/DataTable/virtualizedGrouping.spec.tsx +99 -0
- package/src/components/DataTableBulkActions/DataTableBulkActions.spec.tsx +276 -3
- package/src/components/DataTableBulkActions/DataTableBulkActions.stories.tsx +1 -0
- package/src/components/DataTableBulkActions/index.tsx +119 -184
- package/src/components/DataTableCell/CellModalEditor.native.tsx +116 -0
- package/src/components/DataTableCell/CellModalEditor.tsx +83 -11
- package/src/components/DataTableCell/CellOptionsEditor.tsx +91 -0
- package/src/components/DataTableCell/DataTableCell.stories.tsx +514 -9
- package/src/components/DataTableCell/cellDraftPolicy.spec.tsx +638 -0
- package/src/components/DataTableCell/dataTableCell.spec.tsx +174 -26
- package/src/components/DataTableCell/index.tsx +730 -191
- package/src/components/DataTableColumnPinning/DataTableColumnPinning.stories.tsx +14 -0
- package/src/components/DataTableColumnPinning/index.tsx +130 -36
- package/src/components/DataTableDateFilter/DataTableDateFilter.spec.tsx +234 -80
- package/src/components/DataTableDateFilter/DataTableDateFilter.stories.tsx +7 -32
- package/src/components/DataTableDateFilter/index.tsx +357 -160
- package/src/components/DataTableExport/DataTableExport.spec.tsx +225 -8
- package/src/components/DataTableExport/index.tsx +241 -186
- package/src/components/DataTableFilterButton/index.tsx +406 -0
- package/src/components/DataTableFilterChips/DataTableFilterChips.spec.tsx +190 -0
- package/src/components/DataTableFilterChips/index.tsx +127 -0
- package/src/components/DataTableFilters/index.tsx +39 -31
- package/src/components/DataTableGrouping/DataTableGrouping.spec.tsx +173 -1
- package/src/components/DataTableGrouping/index.tsx +233 -140
- package/src/components/DataTablePagination/DataTablePagination.spec.tsx +91 -12
- package/src/components/DataTablePagination/DataTablePagination.stories.tsx +182 -6
- package/src/components/DataTablePagination/index.tsx +97 -324
- package/src/components/DataTableSearch/DataTableSearch.spec.tsx +14 -14
- package/src/components/DataTableSearch/index.tsx +106 -118
- package/src/components/DataTableToolbar/DataTableToolbar.spec.tsx +51 -11
- package/src/components/DataTableToolbar/DataTableToolbar.stories.tsx +205 -8
- package/src/components/DataTableToolbar/index.tsx +86 -123
- package/src/components/DataTableViewOptions/DataTableViewOptions.spec.tsx +5 -5
- package/src/components/DataTableViewOptions/DataTableViewOptions.stories.tsx +41 -3
- package/src/components/DataTableViewOptions/index.tsx +89 -183
- package/src/components/FilterManager.spec.tsx +7 -4
- package/src/components/FilterManager.tsx +25 -5
- package/src/components/FilterOperatorValueEditor/index.tsx +124 -0
- package/src/components/SavedFilterDropdown.tsx +7 -5
- package/src/components/SimpleTable/SimpleTable.stories.tsx +114 -0
- package/src/components/SimpleTable/index.tsx +35 -17
- package/src/components/SimpleTable/simpleTable.spec.tsx +25 -5
- package/src/components/Table/Table.stories.tsx +105 -0
- package/src/components/Table/accessibility.spec.tsx +24 -8
- package/src/components/TableInput/TableInput.stories.tsx +266 -8
- package/src/components/TableInput/index.native.tsx +202 -51
- package/src/components/TableInput/index.tsx +236 -56
- package/src/components/TableInput/shared.ts +20 -0
- package/src/components/TableInput/tableInput.spec.tsx +458 -0
- package/src/components/componentConsistency.spec.tsx +19 -13
- package/src/hooks/hookDecomposition.spec.ts +35 -1
- package/src/hooks/useDataTable.ts +169 -24
- package/src/hooks/useInfiniteRows.spec.tsx +215 -0
- package/src/hooks/useInfiniteRows.ts +242 -0
- package/src/hooks/useTableFiltering.ts +22 -21
- package/src/hooks/useTablePagination.ts +2 -3
- package/src/index.ts +37 -1
- package/src/shared/t.ts +24 -0
- package/src/types.ts +217 -5
- package/src/utils/columnAlign.spec.ts +53 -0
- package/src/utils/columnAlign.ts +60 -0
- package/src/utils/filterFields.spec.ts +237 -0
- package/src/utils/filterFields.ts +273 -0
- package/src/utils/filterUtils.ts +34 -24
- package/src/utils/filterUtilsContracts.spec.ts +190 -0
- package/src/utils/paginationDefaults.spec.ts +43 -0
- package/src/utils/paginationDefaults.ts +21 -0
- package/src/utils/urlStateUtils.spec.ts +2 -2
- package/src/utils/urlStateUtils.ts +2 -1
- package/src/utils/viewData.ts +27 -0
- package/src/utils/withInterp.spec.ts +30 -0
- package/src/utils/withInterp.ts +31 -0
- package/types/components/ChildTable/index.d.ts +28 -0
- package/types/components/ChildTable/index.d.ts.map +1 -0
- package/types/components/ColumnHeaderFilter/index.d.ts +23 -0
- package/types/components/ColumnHeaderFilter/index.d.ts.map +1 -0
- package/types/components/DataTable/DataTableCardControls.d.ts +30 -0
- package/types/components/DataTable/DataTableCardControls.d.ts.map +1 -0
- package/types/components/DataTable/DataTableContext.d.ts +11 -0
- package/types/components/DataTable/DataTableContext.d.ts.map +1 -0
- package/types/components/DataTable/DataTableMobileCards.d.ts +37 -0
- package/types/components/DataTable/DataTableMobileCards.d.ts.map +1 -0
- package/types/components/DataTable/DataTableRoot.d.ts +22 -0
- package/types/components/DataTable/DataTableRoot.d.ts.map +1 -0
- package/types/components/DataTable/DataTableStateContext.d.ts +77 -0
- package/types/components/DataTable/DataTableStateContext.d.ts.map +1 -0
- package/types/components/DataTable/DataTableVirtualized.d.ts +36 -0
- package/types/components/DataTable/DataTableVirtualized.d.ts.map +1 -0
- package/types/components/DataTable/index.d.ts +42 -0
- package/types/components/DataTable/index.d.ts.map +1 -0
- package/types/components/DataTable/index.native.d.ts +33 -0
- package/types/components/DataTable/index.native.d.ts.map +1 -0
- package/types/components/DataTableBulkActions/index.d.ts +33 -0
- package/types/components/DataTableBulkActions/index.d.ts.map +1 -0
- package/types/components/DataTableCell/CellModalEditor.d.ts +34 -0
- package/types/components/DataTableCell/CellModalEditor.d.ts.map +1 -0
- package/types/components/DataTableCell/CellModalEditor.native.d.ts +20 -0
- package/types/components/DataTableCell/CellModalEditor.native.d.ts.map +1 -0
- package/types/components/DataTableCell/CellOptionsEditor.d.ts +30 -0
- package/types/components/DataTableCell/CellOptionsEditor.d.ts.map +1 -0
- package/types/components/DataTableCell/index.d.ts +51 -0
- package/types/components/DataTableCell/index.d.ts.map +1 -0
- package/types/components/DataTableColumnPinning/index.d.ts +53 -0
- package/types/components/DataTableColumnPinning/index.d.ts.map +1 -0
- package/types/components/DataTableDateFilter/index.d.ts +54 -0
- package/types/components/DataTableDateFilter/index.d.ts.map +1 -0
- package/types/components/DataTableExport/index.d.ts +37 -0
- package/types/components/DataTableExport/index.d.ts.map +1 -0
- package/types/components/DataTableFilterButton/index.d.ts +16 -0
- package/types/components/DataTableFilterButton/index.d.ts.map +1 -0
- package/types/components/DataTableFilterChips/index.d.ts +12 -0
- package/types/components/DataTableFilterChips/index.d.ts.map +1 -0
- package/types/components/DataTableFilters/index.d.ts +19 -0
- package/types/components/DataTableFilters/index.d.ts.map +1 -0
- package/types/components/DataTableGrouping/index.d.ts +79 -0
- package/types/components/DataTableGrouping/index.d.ts.map +1 -0
- package/types/components/DataTablePagination/index.d.ts +23 -0
- package/types/components/DataTablePagination/index.d.ts.map +1 -0
- package/types/components/DataTableSearch/index.d.ts +57 -0
- package/types/components/DataTableSearch/index.d.ts.map +1 -0
- package/types/components/DataTableToolbar/index.d.ts +23 -0
- package/types/components/DataTableToolbar/index.d.ts.map +1 -0
- package/types/components/DataTableViewOptions/index.d.ts +28 -0
- package/types/components/DataTableViewOptions/index.d.ts.map +1 -0
- package/types/components/FilterManager.d.ts +16 -0
- package/types/components/FilterManager.d.ts.map +1 -0
- package/types/components/FilterOperatorValueEditor/index.d.ts +23 -0
- package/types/components/FilterOperatorValueEditor/index.d.ts.map +1 -0
- package/types/components/KnobDialog.d.ts +57 -0
- package/types/components/KnobDialog.d.ts.map +1 -0
- package/types/components/SavedFilterDropdown.d.ts +11 -0
- package/types/components/SavedFilterDropdown.d.ts.map +1 -0
- package/types/components/SimpleTable/index.d.ts +45 -0
- package/types/components/SimpleTable/index.d.ts.map +1 -0
- package/types/components/TableInput/index.d.ts +66 -0
- package/types/components/TableInput/index.d.ts.map +1 -0
- package/types/components/TableInput/index.native.d.ts +55 -0
- package/types/components/TableInput/index.native.d.ts.map +1 -0
- package/types/components/TableInput/shared.d.ts +12 -0
- package/types/components/TableInput/shared.d.ts.map +1 -0
- package/types/hooks/useDataTable.d.ts +16 -0
- package/types/hooks/useDataTable.d.ts.map +1 -0
- package/types/hooks/useDataTableKeyboard.d.ts +22 -0
- package/types/hooks/useDataTableKeyboard.d.ts.map +1 -0
- package/types/hooks/useDragScroll.d.ts +10 -0
- package/types/hooks/useDragScroll.d.ts.map +1 -0
- package/types/hooks/useInfiniteRows.d.ts +57 -0
- package/types/hooks/useInfiniteRows.d.ts.map +1 -0
- package/types/hooks/useSavedFilters.d.ts +78 -0
- package/types/hooks/useSavedFilters.d.ts.map +1 -0
- package/types/hooks/useTableColumnPinning.d.ts +12 -0
- package/types/hooks/useTableColumnPinning.d.ts.map +1 -0
- package/types/hooks/useTableFiltering.d.ts +27 -0
- package/types/hooks/useTableFiltering.d.ts.map +1 -0
- package/types/hooks/useTableGrouping.d.ts +33 -0
- package/types/hooks/useTableGrouping.d.ts.map +1 -0
- package/types/hooks/useTableKeyboard.d.ts +24 -0
- package/types/hooks/useTableKeyboard.d.ts.map +1 -0
- package/types/hooks/useTablePagination.d.ts +17 -0
- package/types/hooks/useTablePagination.d.ts.map +1 -0
- package/types/hooks/useTableSearch.d.ts +27 -0
- package/types/hooks/useTableSearch.d.ts.map +1 -0
- package/types/hooks/useTableSelection.d.ts +14 -0
- package/types/hooks/useTableSelection.d.ts.map +1 -0
- package/types/hooks/useTableSorting.d.ts +12 -0
- package/types/hooks/useTableSorting.d.ts.map +1 -0
- package/types/hooks/useTableUrlSync.d.ts +15 -0
- package/types/hooks/useTableUrlSync.d.ts.map +1 -0
- package/types/hooks/useTableViews.d.ts +26 -0
- package/types/hooks/useTableViews.d.ts.map +1 -0
- package/types/index.d.ts +68 -0
- package/types/index.d.ts.map +1 -0
- package/types/shared/t.d.ts +10 -0
- package/types/shared/t.d.ts.map +1 -0
- package/types/shims/primitives.d.ts +3 -0
- package/types/shims/primitives.d.ts.map +1 -0
- package/types/shims/tableCellContext.d.ts +3 -0
- package/types/shims/tableCellContext.d.ts.map +1 -0
- package/types/types.d.ts +525 -0
- package/types/types.d.ts.map +1 -0
- package/types/utils/columnAlign.d.ts +23 -0
- package/types/utils/columnAlign.d.ts.map +1 -0
- package/types/utils/filterFields.d.ts +57 -0
- package/types/utils/filterFields.d.ts.map +1 -0
- package/types/utils/filterUtils.d.ts +24 -0
- package/types/utils/filterUtils.d.ts.map +1 -0
- package/types/utils/paginationDefaults.d.ts +18 -0
- package/types/utils/paginationDefaults.d.ts.map +1 -0
- package/types/utils/urlStateUtils.d.ts +8 -0
- package/types/utils/urlStateUtils.d.ts.map +1 -0
- package/types/utils/viewData.d.ts +11 -0
- package/types/utils/viewData.d.ts.map +1 -0
- package/types/utils/withInterp.d.ts +19 -0
- package/types/utils/withInterp.d.ts.map +1 -0
- package/dist/cjs/components/ColumnHeaderFilter/ColumnHeaderFilter.stories.cjs +0 -50
- package/dist/cjs/components/ColumnHeaderFilter/ColumnHeaderFilter.stories.native.js +0 -55
- package/dist/cjs/components/ColumnHeaderFilter/ColumnHeaderFilter.stories.native.js.map +0 -1
- package/dist/cjs/components/DataTable/DataTable.spec.cjs +0 -516
- package/dist/cjs/components/DataTable/DataTable.spec.native.js +0 -539
- package/dist/cjs/components/DataTable/DataTable.spec.native.js.map +0 -1
- package/dist/cjs/components/DataTable/DataTable.stories.cjs +0 -2779
- package/dist/cjs/components/DataTable/DataTable.stories.native.js +0 -2912
- package/dist/cjs/components/DataTable/DataTable.stories.native.js.map +0 -1
- package/dist/cjs/components/DataTable/FieldsInCells.stories.cjs +0 -244
- package/dist/cjs/components/DataTable/FieldsInCells.stories.native.js +0 -265
- package/dist/cjs/components/DataTable/FieldsInCells.stories.native.js.map +0 -1
- package/dist/cjs/components/DataTable/compoundComponent.spec.cjs +0 -334
- package/dist/cjs/components/DataTable/compoundComponent.spec.native.js +0 -348
- package/dist/cjs/components/DataTable/compoundComponent.spec.native.js.map +0 -1
- package/dist/cjs/components/DataTableBulkActions/DataTableBulkActions.spec.cjs +0 -305
- package/dist/cjs/components/DataTableBulkActions/DataTableBulkActions.spec.native.js +0 -340
- package/dist/cjs/components/DataTableBulkActions/DataTableBulkActions.spec.native.js.map +0 -1
- package/dist/cjs/components/DataTableBulkActions/DataTableBulkActions.stories.cjs +0 -347
- package/dist/cjs/components/DataTableBulkActions/DataTableBulkActions.stories.native.js +0 -372
- package/dist/cjs/components/DataTableBulkActions/DataTableBulkActions.stories.native.js.map +0 -1
- package/dist/cjs/components/DataTableCell/DataTableCell.stories.cjs +0 -50
- package/dist/cjs/components/DataTableCell/DataTableCell.stories.native.js +0 -55
- package/dist/cjs/components/DataTableCell/DataTableCell.stories.native.js.map +0 -1
- package/dist/cjs/components/DataTableCell/dataTableCell.spec.cjs +0 -203
- package/dist/cjs/components/DataTableCell/dataTableCell.spec.native.js +0 -220
- package/dist/cjs/components/DataTableCell/dataTableCell.spec.native.js.map +0 -1
- package/dist/cjs/components/DataTableColumnPinning/DataTableColumnPinning.spec.cjs +0 -287
- package/dist/cjs/components/DataTableColumnPinning/DataTableColumnPinning.spec.native.js +0 -315
- package/dist/cjs/components/DataTableColumnPinning/DataTableColumnPinning.spec.native.js.map +0 -1
- package/dist/cjs/components/DataTableColumnPinning/DataTableColumnPinning.stories.cjs +0 -486
- package/dist/cjs/components/DataTableColumnPinning/DataTableColumnPinning.stories.native.js +0 -541
- package/dist/cjs/components/DataTableColumnPinning/DataTableColumnPinning.stories.native.js.map +0 -1
- package/dist/cjs/components/DataTableDateFilter/DataTableDateFilter.spec.cjs +0 -409
- package/dist/cjs/components/DataTableDateFilter/DataTableDateFilter.spec.native.js +0 -459
- package/dist/cjs/components/DataTableDateFilter/DataTableDateFilter.spec.native.js.map +0 -1
- package/dist/cjs/components/DataTableDateFilter/DataTableDateFilter.stories.cjs +0 -368
- package/dist/cjs/components/DataTableDateFilter/DataTableDateFilter.stories.native.js +0 -375
- package/dist/cjs/components/DataTableDateFilter/DataTableDateFilter.stories.native.js.map +0 -1
- package/dist/cjs/components/DataTableExport/DataTableExport.spec.cjs +0 -334
- package/dist/cjs/components/DataTableExport/DataTableExport.spec.native.js +0 -349
- package/dist/cjs/components/DataTableExport/DataTableExport.spec.native.js.map +0 -1
- package/dist/cjs/components/DataTableExport/DataTableExport.stories.cjs +0 -452
- package/dist/cjs/components/DataTableExport/DataTableExport.stories.native.js +0 -479
- package/dist/cjs/components/DataTableExport/DataTableExport.stories.native.js.map +0 -1
- package/dist/cjs/components/DataTableFilters/DataTableFilters.spec.cjs +0 -687
- package/dist/cjs/components/DataTableFilters/DataTableFilters.spec.native.js +0 -698
- package/dist/cjs/components/DataTableFilters/DataTableFilters.spec.native.js.map +0 -1
- package/dist/cjs/components/DataTableFilters/DataTableFilters.stories.cjs +0 -551
- package/dist/cjs/components/DataTableFilters/DataTableFilters.stories.native.js +0 -564
- package/dist/cjs/components/DataTableFilters/DataTableFilters.stories.native.js.map +0 -1
- package/dist/cjs/components/DataTableGrouping/DataTableGrouping.spec.cjs +0 -249
- package/dist/cjs/components/DataTableGrouping/DataTableGrouping.spec.native.js +0 -284
- package/dist/cjs/components/DataTableGrouping/DataTableGrouping.spec.native.js.map +0 -1
- package/dist/cjs/components/DataTableGrouping/DataTableGrouping.stories.cjs +0 -523
- package/dist/cjs/components/DataTableGrouping/DataTableGrouping.stories.native.js +0 -545
- package/dist/cjs/components/DataTableGrouping/DataTableGrouping.stories.native.js.map +0 -1
- package/dist/cjs/components/DataTablePagination/DataTablePagination.spec.cjs +0 -386
- package/dist/cjs/components/DataTablePagination/DataTablePagination.spec.native.js +0 -389
- package/dist/cjs/components/DataTablePagination/DataTablePagination.spec.native.js.map +0 -1
- package/dist/cjs/components/DataTablePagination/DataTablePagination.stories.cjs +0 -604
- package/dist/cjs/components/DataTablePagination/DataTablePagination.stories.native.js +0 -627
- package/dist/cjs/components/DataTablePagination/DataTablePagination.stories.native.js.map +0 -1
- package/dist/cjs/components/DataTableSearch/DataTableSearch.spec.cjs +0 -469
- package/dist/cjs/components/DataTableSearch/DataTableSearch.spec.native.js +0 -472
- package/dist/cjs/components/DataTableSearch/DataTableSearch.spec.native.js.map +0 -1
- package/dist/cjs/components/DataTableSearch/DataTableSearch.stories.cjs +0 -82
- package/dist/cjs/components/DataTableSearch/DataTableSearch.stories.native.js +0 -89
- package/dist/cjs/components/DataTableSearch/DataTableSearch.stories.native.js.map +0 -1
- package/dist/cjs/components/DataTableToolbar/DataTableToolbar.spec.cjs +0 -572
- package/dist/cjs/components/DataTableToolbar/DataTableToolbar.spec.native.js +0 -575
- package/dist/cjs/components/DataTableToolbar/DataTableToolbar.spec.native.js.map +0 -1
- package/dist/cjs/components/DataTableToolbar/DataTableToolbar.stories.cjs +0 -51
- package/dist/cjs/components/DataTableToolbar/DataTableToolbar.stories.native.js +0 -56
- package/dist/cjs/components/DataTableToolbar/DataTableToolbar.stories.native.js.map +0 -1
- package/dist/cjs/components/DataTableViewOptions/DataTableViewOptions.spec.cjs +0 -126
- package/dist/cjs/components/DataTableViewOptions/DataTableViewOptions.spec.native.js +0 -129
- package/dist/cjs/components/DataTableViewOptions/DataTableViewOptions.spec.native.js.map +0 -1
- package/dist/cjs/components/DataTableViewOptions/DataTableViewOptions.stories.cjs +0 -436
- package/dist/cjs/components/DataTableViewOptions/DataTableViewOptions.stories.native.js +0 -458
- package/dist/cjs/components/DataTableViewOptions/DataTableViewOptions.stories.native.js.map +0 -1
- package/dist/cjs/components/FilterManager.spec.cjs +0 -52
- package/dist/cjs/components/FilterManager.spec.native.js +0 -55
- package/dist/cjs/components/FilterManager.spec.native.js.map +0 -1
- package/dist/cjs/components/SavedFilterDropdown.spec.cjs +0 -83
- package/dist/cjs/components/SavedFilterDropdown.spec.native.js +0 -86
- package/dist/cjs/components/SavedFilterDropdown.spec.native.js.map +0 -1
- package/dist/cjs/components/SimpleTable/simpleTable.spec.cjs +0 -162
- package/dist/cjs/components/SimpleTable/simpleTable.spec.native.js +0 -165
- package/dist/cjs/components/SimpleTable/simpleTable.spec.native.js.map +0 -1
- package/dist/cjs/components/Table/Table.stories.cjs +0 -196
- package/dist/cjs/components/Table/Table.stories.native.js +0 -207
- package/dist/cjs/components/Table/Table.stories.native.js.map +0 -1
- package/dist/cjs/components/Table/accessibility.spec.cjs +0 -186
- package/dist/cjs/components/Table/accessibility.spec.native.js +0 -216
- package/dist/cjs/components/Table/accessibility.spec.native.js.map +0 -1
- package/dist/cjs/components/TableInput/TableInput.stories.cjs +0 -50
- package/dist/cjs/components/TableInput/TableInput.stories.native.js +0 -55
- package/dist/cjs/components/TableInput/TableInput.stories.native.js.map +0 -1
- package/dist/cjs/components/componentConsistency.spec.cjs +0 -37
- package/dist/cjs/components/componentConsistency.spec.native.js +0 -48
- package/dist/cjs/components/componentConsistency.spec.native.js.map +0 -1
- package/dist/cjs/hooks/hookDecomposition.spec.cjs +0 -326
- package/dist/cjs/hooks/hookDecomposition.spec.native.js +0 -351
- package/dist/cjs/hooks/hookDecomposition.spec.native.js.map +0 -1
- package/dist/cjs/hooks/useDataTable.spec.cjs +0 -10
- package/dist/cjs/hooks/useDataTable.spec.native.js +0 -13
- package/dist/cjs/hooks/useDataTable.spec.native.js.map +0 -1
- package/dist/cjs/hooks/useSavedFilters.spec.cjs +0 -212
- package/dist/cjs/hooks/useSavedFilters.spec.native.js +0 -240
- package/dist/cjs/hooks/useSavedFilters.spec.native.js.map +0 -1
- package/dist/cjs/utils/filterUtils.spec.cjs +0 -350
- package/dist/cjs/utils/filterUtils.spec.native.js +0 -353
- package/dist/cjs/utils/filterUtils.spec.native.js.map +0 -1
- package/dist/cjs/utils/urlStateUtils.spec.cjs +0 -234
- package/dist/cjs/utils/urlStateUtils.spec.native.js +0 -239
- package/dist/cjs/utils/urlStateUtils.spec.native.js.map +0 -1
- package/dist/esm/components/ColumnHeaderFilter/ColumnHeaderFilter.stories.mjs +0 -24
- package/dist/esm/components/ColumnHeaderFilter/ColumnHeaderFilter.stories.mjs.map +0 -1
- package/dist/esm/components/ColumnHeaderFilter/ColumnHeaderFilter.stories.native.js +0 -26
- package/dist/esm/components/ColumnHeaderFilter/ColumnHeaderFilter.stories.native.js.map +0 -1
- package/dist/esm/components/DataTable/DataTable.spec.mjs +0 -517
- package/dist/esm/components/DataTable/DataTable.spec.mjs.map +0 -1
- package/dist/esm/components/DataTable/DataTable.spec.native.js +0 -537
- package/dist/esm/components/DataTable/DataTable.spec.native.js.map +0 -1
- package/dist/esm/components/DataTable/DataTable.stories.mjs +0 -2672
- package/dist/esm/components/DataTable/DataTable.stories.mjs.map +0 -1
- package/dist/esm/components/DataTable/DataTable.stories.native.js +0 -2802
- package/dist/esm/components/DataTable/DataTable.stories.native.js.map +0 -1
- package/dist/esm/components/DataTable/FieldsInCells.stories.mjs +0 -217
- package/dist/esm/components/DataTable/FieldsInCells.stories.mjs.map +0 -1
- package/dist/esm/components/DataTable/FieldsInCells.stories.native.js +0 -224
- package/dist/esm/components/DataTable/FieldsInCells.stories.native.js.map +0 -1
- package/dist/esm/components/DataTable/compoundComponent.spec.mjs +0 -335
- package/dist/esm/components/DataTable/compoundComponent.spec.mjs.map +0 -1
- package/dist/esm/components/DataTable/compoundComponent.spec.native.js +0 -346
- package/dist/esm/components/DataTable/compoundComponent.spec.native.js.map +0 -1
- package/dist/esm/components/DataTableBulkActions/DataTableBulkActions.spec.mjs +0 -306
- package/dist/esm/components/DataTableBulkActions/DataTableBulkActions.spec.mjs.map +0 -1
- package/dist/esm/components/DataTableBulkActions/DataTableBulkActions.spec.native.js +0 -338
- package/dist/esm/components/DataTableBulkActions/DataTableBulkActions.spec.native.js.map +0 -1
- package/dist/esm/components/DataTableBulkActions/DataTableBulkActions.stories.mjs +0 -304
- package/dist/esm/components/DataTableBulkActions/DataTableBulkActions.stories.mjs.map +0 -1
- package/dist/esm/components/DataTableBulkActions/DataTableBulkActions.stories.native.js +0 -326
- package/dist/esm/components/DataTableBulkActions/DataTableBulkActions.stories.native.js.map +0 -1
- package/dist/esm/components/DataTableCell/DataTableCell.stories.mjs +0 -24
- package/dist/esm/components/DataTableCell/DataTableCell.stories.mjs.map +0 -1
- package/dist/esm/components/DataTableCell/DataTableCell.stories.native.js +0 -26
- package/dist/esm/components/DataTableCell/DataTableCell.stories.native.js.map +0 -1
- package/dist/esm/components/DataTableCell/dataTableCell.spec.mjs +0 -180
- package/dist/esm/components/DataTableCell/dataTableCell.spec.mjs.map +0 -1
- package/dist/esm/components/DataTableCell/dataTableCell.spec.native.js +0 -194
- package/dist/esm/components/DataTableCell/dataTableCell.spec.native.js.map +0 -1
- package/dist/esm/components/DataTableColumnPinning/DataTableColumnPinning.spec.mjs +0 -264
- package/dist/esm/components/DataTableColumnPinning/DataTableColumnPinning.spec.mjs.map +0 -1
- package/dist/esm/components/DataTableColumnPinning/DataTableColumnPinning.spec.native.js +0 -289
- package/dist/esm/components/DataTableColumnPinning/DataTableColumnPinning.spec.native.js.map +0 -1
- package/dist/esm/components/DataTableColumnPinning/DataTableColumnPinning.stories.mjs +0 -457
- package/dist/esm/components/DataTableColumnPinning/DataTableColumnPinning.stories.mjs.map +0 -1
- package/dist/esm/components/DataTableColumnPinning/DataTableColumnPinning.stories.native.js +0 -509
- package/dist/esm/components/DataTableColumnPinning/DataTableColumnPinning.stories.native.js.map +0 -1
- package/dist/esm/components/DataTableDateFilter/DataTableDateFilter.spec.mjs +0 -386
- package/dist/esm/components/DataTableDateFilter/DataTableDateFilter.spec.mjs.map +0 -1
- package/dist/esm/components/DataTableDateFilter/DataTableDateFilter.spec.native.js +0 -433
- package/dist/esm/components/DataTableDateFilter/DataTableDateFilter.spec.native.js.map +0 -1
- package/dist/esm/components/DataTableDateFilter/DataTableDateFilter.stories.mjs +0 -325
- package/dist/esm/components/DataTableDateFilter/DataTableDateFilter.stories.mjs.map +0 -1
- package/dist/esm/components/DataTableDateFilter/DataTableDateFilter.stories.native.js +0 -329
- package/dist/esm/components/DataTableDateFilter/DataTableDateFilter.stories.native.js.map +0 -1
- package/dist/esm/components/DataTableExport/DataTableExport.spec.mjs +0 -335
- package/dist/esm/components/DataTableExport/DataTableExport.spec.mjs.map +0 -1
- package/dist/esm/components/DataTableExport/DataTableExport.spec.native.js +0 -347
- package/dist/esm/components/DataTableExport/DataTableExport.spec.native.js.map +0 -1
- package/dist/esm/components/DataTableExport/DataTableExport.stories.mjs +0 -419
- package/dist/esm/components/DataTableExport/DataTableExport.stories.mjs.map +0 -1
- package/dist/esm/components/DataTableExport/DataTableExport.stories.native.js +0 -443
- package/dist/esm/components/DataTableExport/DataTableExport.stories.native.js.map +0 -1
- package/dist/esm/components/DataTableFilters/DataTableFilters.spec.mjs +0 -688
- package/dist/esm/components/DataTableFilters/DataTableFilters.spec.mjs.map +0 -1
- package/dist/esm/components/DataTableFilters/DataTableFilters.spec.native.js +0 -696
- package/dist/esm/components/DataTableFilters/DataTableFilters.spec.native.js.map +0 -1
- package/dist/esm/components/DataTableFilters/DataTableFilters.stories.mjs +0 -499
- package/dist/esm/components/DataTableFilters/DataTableFilters.stories.mjs.map +0 -1
- package/dist/esm/components/DataTableFilters/DataTableFilters.stories.native.js +0 -509
- package/dist/esm/components/DataTableFilters/DataTableFilters.stories.native.js.map +0 -1
- package/dist/esm/components/DataTableGrouping/DataTableGrouping.spec.mjs +0 -249
- package/dist/esm/components/DataTableGrouping/DataTableGrouping.spec.mjs.map +0 -1
- package/dist/esm/components/DataTableGrouping/DataTableGrouping.spec.native.js +0 -281
- package/dist/esm/components/DataTableGrouping/DataTableGrouping.spec.native.js.map +0 -1
- package/dist/esm/components/DataTableGrouping/DataTableGrouping.stories.mjs +0 -479
- package/dist/esm/components/DataTableGrouping/DataTableGrouping.stories.mjs.map +0 -1
- package/dist/esm/components/DataTableGrouping/DataTableGrouping.stories.native.js +0 -498
- package/dist/esm/components/DataTableGrouping/DataTableGrouping.stories.native.js.map +0 -1
- package/dist/esm/components/DataTablePagination/DataTablePagination.spec.mjs +0 -387
- package/dist/esm/components/DataTablePagination/DataTablePagination.spec.mjs.map +0 -1
- package/dist/esm/components/DataTablePagination/DataTablePagination.spec.native.js +0 -387
- package/dist/esm/components/DataTablePagination/DataTablePagination.spec.native.js.map +0 -1
- package/dist/esm/components/DataTablePagination/DataTablePagination.stories.mjs +0 -546
- package/dist/esm/components/DataTablePagination/DataTablePagination.stories.mjs.map +0 -1
- package/dist/esm/components/DataTablePagination/DataTablePagination.stories.native.js +0 -566
- package/dist/esm/components/DataTablePagination/DataTablePagination.stories.native.js.map +0 -1
- package/dist/esm/components/DataTableSearch/DataTableSearch.spec.mjs +0 -470
- package/dist/esm/components/DataTableSearch/DataTableSearch.spec.mjs.map +0 -1
- package/dist/esm/components/DataTableSearch/DataTableSearch.spec.native.js +0 -470
- package/dist/esm/components/DataTableSearch/DataTableSearch.spec.native.js.map +0 -1
- package/dist/esm/components/DataTableSearch/DataTableSearch.stories.mjs +0 -56
- package/dist/esm/components/DataTableSearch/DataTableSearch.stories.mjs.map +0 -1
- package/dist/esm/components/DataTableSearch/DataTableSearch.stories.native.js +0 -60
- package/dist/esm/components/DataTableSearch/DataTableSearch.stories.native.js.map +0 -1
- package/dist/esm/components/DataTableToolbar/DataTableToolbar.spec.mjs +0 -573
- package/dist/esm/components/DataTableToolbar/DataTableToolbar.spec.mjs.map +0 -1
- package/dist/esm/components/DataTableToolbar/DataTableToolbar.spec.native.js +0 -573
- package/dist/esm/components/DataTableToolbar/DataTableToolbar.spec.native.js.map +0 -1
- package/dist/esm/components/DataTableToolbar/DataTableToolbar.stories.mjs +0 -25
- package/dist/esm/components/DataTableToolbar/DataTableToolbar.stories.mjs.map +0 -1
- package/dist/esm/components/DataTableToolbar/DataTableToolbar.stories.native.js +0 -27
- package/dist/esm/components/DataTableToolbar/DataTableToolbar.stories.native.js.map +0 -1
- package/dist/esm/components/DataTableViewOptions/DataTableViewOptions.spec.mjs +0 -126
- package/dist/esm/components/DataTableViewOptions/DataTableViewOptions.spec.mjs.map +0 -1
- package/dist/esm/components/DataTableViewOptions/DataTableViewOptions.spec.native.js +0 -126
- package/dist/esm/components/DataTableViewOptions/DataTableViewOptions.spec.native.js.map +0 -1
- package/dist/esm/components/DataTableViewOptions/DataTableViewOptions.stories.mjs +0 -393
- package/dist/esm/components/DataTableViewOptions/DataTableViewOptions.stories.mjs.map +0 -1
- package/dist/esm/components/DataTableViewOptions/DataTableViewOptions.stories.native.js +0 -412
- package/dist/esm/components/DataTableViewOptions/DataTableViewOptions.stories.native.js.map +0 -1
- package/dist/esm/components/FilterManager.spec.mjs +0 -53
- package/dist/esm/components/FilterManager.spec.mjs.map +0 -1
- package/dist/esm/components/FilterManager.spec.native.js +0 -53
- package/dist/esm/components/FilterManager.spec.native.js.map +0 -1
- package/dist/esm/components/SavedFilterDropdown.spec.mjs +0 -84
- package/dist/esm/components/SavedFilterDropdown.spec.mjs.map +0 -1
- package/dist/esm/components/SavedFilterDropdown.spec.native.js +0 -84
- package/dist/esm/components/SavedFilterDropdown.spec.native.js.map +0 -1
- package/dist/esm/components/SimpleTable/simpleTable.spec.mjs +0 -163
- package/dist/esm/components/SimpleTable/simpleTable.spec.mjs.map +0 -1
- package/dist/esm/components/SimpleTable/simpleTable.spec.native.js +0 -163
- package/dist/esm/components/SimpleTable/simpleTable.spec.native.js.map +0 -1
- package/dist/esm/components/Table/Table.stories.mjs +0 -167
- package/dist/esm/components/Table/Table.stories.mjs.map +0 -1
- package/dist/esm/components/Table/Table.stories.native.js +0 -175
- package/dist/esm/components/Table/Table.stories.native.js.map +0 -1
- package/dist/esm/components/Table/accessibility.spec.mjs +0 -187
- package/dist/esm/components/Table/accessibility.spec.mjs.map +0 -1
- package/dist/esm/components/Table/accessibility.spec.native.js +0 -214
- package/dist/esm/components/Table/accessibility.spec.native.js.map +0 -1
- package/dist/esm/components/TableInput/TableInput.stories.mjs +0 -24
- package/dist/esm/components/TableInput/TableInput.stories.mjs.map +0 -1
- package/dist/esm/components/TableInput/TableInput.stories.native.js +0 -26
- package/dist/esm/components/TableInput/TableInput.stories.native.js.map +0 -1
- package/dist/esm/components/componentConsistency.spec.mjs +0 -38
- package/dist/esm/components/componentConsistency.spec.mjs.map +0 -1
- package/dist/esm/components/componentConsistency.spec.native.js +0 -46
- package/dist/esm/components/componentConsistency.spec.native.js.map +0 -1
- package/dist/esm/hooks/hookDecomposition.spec.mjs +0 -327
- package/dist/esm/hooks/hookDecomposition.spec.mjs.map +0 -1
- package/dist/esm/hooks/hookDecomposition.spec.native.js +0 -349
- package/dist/esm/hooks/hookDecomposition.spec.native.js.map +0 -1
- package/dist/esm/hooks/useDataTable.spec.mjs +0 -11
- package/dist/esm/hooks/useDataTable.spec.mjs.map +0 -1
- package/dist/esm/hooks/useDataTable.spec.native.js +0 -11
- package/dist/esm/hooks/useDataTable.spec.native.js.map +0 -1
- package/dist/esm/hooks/useSavedFilters.spec.mjs +0 -213
- package/dist/esm/hooks/useSavedFilters.spec.mjs.map +0 -1
- package/dist/esm/hooks/useSavedFilters.spec.native.js +0 -238
- package/dist/esm/hooks/useSavedFilters.spec.native.js.map +0 -1
- package/dist/esm/utils/filterUtils.spec.mjs +0 -351
- package/dist/esm/utils/filterUtils.spec.mjs.map +0 -1
- package/dist/esm/utils/filterUtils.spec.native.js +0 -351
- package/dist/esm/utils/filterUtils.spec.native.js.map +0 -1
- package/dist/esm/utils/urlStateUtils.spec.mjs +0 -235
- package/dist/esm/utils/urlStateUtils.spec.mjs.map +0 -1
- package/dist/esm/utils/urlStateUtils.spec.native.js +0 -237
- package/dist/esm/utils/urlStateUtils.spec.native.js.map +0 -1
- package/dist/jsx/components/ColumnHeaderFilter/ColumnHeaderFilter.stories.mjs +0 -24
- package/dist/jsx/components/ColumnHeaderFilter/ColumnHeaderFilter.stories.mjs.map +0 -1
- package/dist/jsx/components/ColumnHeaderFilter/ColumnHeaderFilter.stories.native.js +0 -55
- package/dist/jsx/components/ColumnHeaderFilter/ColumnHeaderFilter.stories.native.js.map +0 -1
- package/dist/jsx/components/DataTable/DataTable.spec.mjs +0 -517
- package/dist/jsx/components/DataTable/DataTable.spec.mjs.map +0 -1
- package/dist/jsx/components/DataTable/DataTable.spec.native.js +0 -539
- package/dist/jsx/components/DataTable/DataTable.spec.native.js.map +0 -1
- package/dist/jsx/components/DataTable/DataTable.stories.mjs +0 -2672
- package/dist/jsx/components/DataTable/DataTable.stories.mjs.map +0 -1
- package/dist/jsx/components/DataTable/DataTable.stories.native.js +0 -2912
- package/dist/jsx/components/DataTable/DataTable.stories.native.js.map +0 -1
- package/dist/jsx/components/DataTable/FieldsInCells.stories.mjs +0 -217
- package/dist/jsx/components/DataTable/FieldsInCells.stories.mjs.map +0 -1
- package/dist/jsx/components/DataTable/FieldsInCells.stories.native.js +0 -265
- package/dist/jsx/components/DataTable/FieldsInCells.stories.native.js.map +0 -1
- package/dist/jsx/components/DataTable/compoundComponent.spec.mjs +0 -335
- package/dist/jsx/components/DataTable/compoundComponent.spec.mjs.map +0 -1
- package/dist/jsx/components/DataTable/compoundComponent.spec.native.js +0 -348
- package/dist/jsx/components/DataTable/compoundComponent.spec.native.js.map +0 -1
- package/dist/jsx/components/DataTableBulkActions/DataTableBulkActions.spec.mjs +0 -306
- package/dist/jsx/components/DataTableBulkActions/DataTableBulkActions.spec.mjs.map +0 -1
- package/dist/jsx/components/DataTableBulkActions/DataTableBulkActions.spec.native.js +0 -340
- package/dist/jsx/components/DataTableBulkActions/DataTableBulkActions.spec.native.js.map +0 -1
- package/dist/jsx/components/DataTableBulkActions/DataTableBulkActions.stories.mjs +0 -304
- package/dist/jsx/components/DataTableBulkActions/DataTableBulkActions.stories.mjs.map +0 -1
- package/dist/jsx/components/DataTableBulkActions/DataTableBulkActions.stories.native.js +0 -372
- package/dist/jsx/components/DataTableBulkActions/DataTableBulkActions.stories.native.js.map +0 -1
- package/dist/jsx/components/DataTableCell/DataTableCell.stories.mjs +0 -24
- package/dist/jsx/components/DataTableCell/DataTableCell.stories.mjs.map +0 -1
- package/dist/jsx/components/DataTableCell/DataTableCell.stories.native.js +0 -55
- package/dist/jsx/components/DataTableCell/DataTableCell.stories.native.js.map +0 -1
- package/dist/jsx/components/DataTableCell/dataTableCell.spec.mjs +0 -180
- package/dist/jsx/components/DataTableCell/dataTableCell.spec.mjs.map +0 -1
- package/dist/jsx/components/DataTableCell/dataTableCell.spec.native.js +0 -220
- package/dist/jsx/components/DataTableCell/dataTableCell.spec.native.js.map +0 -1
- package/dist/jsx/components/DataTableColumnPinning/DataTableColumnPinning.spec.mjs +0 -264
- package/dist/jsx/components/DataTableColumnPinning/DataTableColumnPinning.spec.mjs.map +0 -1
- package/dist/jsx/components/DataTableColumnPinning/DataTableColumnPinning.spec.native.js +0 -315
- package/dist/jsx/components/DataTableColumnPinning/DataTableColumnPinning.spec.native.js.map +0 -1
- package/dist/jsx/components/DataTableColumnPinning/DataTableColumnPinning.stories.mjs +0 -457
- package/dist/jsx/components/DataTableColumnPinning/DataTableColumnPinning.stories.mjs.map +0 -1
- package/dist/jsx/components/DataTableColumnPinning/DataTableColumnPinning.stories.native.js +0 -541
- package/dist/jsx/components/DataTableColumnPinning/DataTableColumnPinning.stories.native.js.map +0 -1
- package/dist/jsx/components/DataTableDateFilter/DataTableDateFilter.spec.mjs +0 -386
- package/dist/jsx/components/DataTableDateFilter/DataTableDateFilter.spec.mjs.map +0 -1
- package/dist/jsx/components/DataTableDateFilter/DataTableDateFilter.spec.native.js +0 -459
- package/dist/jsx/components/DataTableDateFilter/DataTableDateFilter.spec.native.js.map +0 -1
- package/dist/jsx/components/DataTableDateFilter/DataTableDateFilter.stories.mjs +0 -325
- package/dist/jsx/components/DataTableDateFilter/DataTableDateFilter.stories.mjs.map +0 -1
- package/dist/jsx/components/DataTableDateFilter/DataTableDateFilter.stories.native.js +0 -375
- package/dist/jsx/components/DataTableDateFilter/DataTableDateFilter.stories.native.js.map +0 -1
- package/dist/jsx/components/DataTableExport/DataTableExport.spec.mjs +0 -335
- package/dist/jsx/components/DataTableExport/DataTableExport.spec.mjs.map +0 -1
- package/dist/jsx/components/DataTableExport/DataTableExport.spec.native.js +0 -349
- package/dist/jsx/components/DataTableExport/DataTableExport.spec.native.js.map +0 -1
- package/dist/jsx/components/DataTableExport/DataTableExport.stories.mjs +0 -419
- package/dist/jsx/components/DataTableExport/DataTableExport.stories.mjs.map +0 -1
- package/dist/jsx/components/DataTableExport/DataTableExport.stories.native.js +0 -479
- package/dist/jsx/components/DataTableExport/DataTableExport.stories.native.js.map +0 -1
- package/dist/jsx/components/DataTableFilters/DataTableFilters.spec.mjs +0 -688
- package/dist/jsx/components/DataTableFilters/DataTableFilters.spec.mjs.map +0 -1
- package/dist/jsx/components/DataTableFilters/DataTableFilters.spec.native.js +0 -698
- package/dist/jsx/components/DataTableFilters/DataTableFilters.spec.native.js.map +0 -1
- package/dist/jsx/components/DataTableFilters/DataTableFilters.stories.mjs +0 -499
- package/dist/jsx/components/DataTableFilters/DataTableFilters.stories.mjs.map +0 -1
- package/dist/jsx/components/DataTableFilters/DataTableFilters.stories.native.js +0 -564
- package/dist/jsx/components/DataTableFilters/DataTableFilters.stories.native.js.map +0 -1
- package/dist/jsx/components/DataTableGrouping/DataTableGrouping.spec.mjs +0 -249
- package/dist/jsx/components/DataTableGrouping/DataTableGrouping.spec.mjs.map +0 -1
- package/dist/jsx/components/DataTableGrouping/DataTableGrouping.spec.native.js +0 -284
- package/dist/jsx/components/DataTableGrouping/DataTableGrouping.spec.native.js.map +0 -1
- package/dist/jsx/components/DataTableGrouping/DataTableGrouping.stories.mjs +0 -479
- package/dist/jsx/components/DataTableGrouping/DataTableGrouping.stories.mjs.map +0 -1
- package/dist/jsx/components/DataTableGrouping/DataTableGrouping.stories.native.js +0 -545
- package/dist/jsx/components/DataTableGrouping/DataTableGrouping.stories.native.js.map +0 -1
- package/dist/jsx/components/DataTablePagination/DataTablePagination.spec.mjs +0 -387
- package/dist/jsx/components/DataTablePagination/DataTablePagination.spec.mjs.map +0 -1
- package/dist/jsx/components/DataTablePagination/DataTablePagination.spec.native.js +0 -389
- package/dist/jsx/components/DataTablePagination/DataTablePagination.spec.native.js.map +0 -1
- package/dist/jsx/components/DataTablePagination/DataTablePagination.stories.mjs +0 -546
- package/dist/jsx/components/DataTablePagination/DataTablePagination.stories.mjs.map +0 -1
- package/dist/jsx/components/DataTablePagination/DataTablePagination.stories.native.js +0 -627
- package/dist/jsx/components/DataTablePagination/DataTablePagination.stories.native.js.map +0 -1
- package/dist/jsx/components/DataTableSearch/DataTableSearch.spec.mjs +0 -470
- package/dist/jsx/components/DataTableSearch/DataTableSearch.spec.mjs.map +0 -1
- package/dist/jsx/components/DataTableSearch/DataTableSearch.spec.native.js +0 -472
- package/dist/jsx/components/DataTableSearch/DataTableSearch.spec.native.js.map +0 -1
- package/dist/jsx/components/DataTableSearch/DataTableSearch.stories.mjs +0 -56
- package/dist/jsx/components/DataTableSearch/DataTableSearch.stories.mjs.map +0 -1
- package/dist/jsx/components/DataTableSearch/DataTableSearch.stories.native.js +0 -89
- package/dist/jsx/components/DataTableSearch/DataTableSearch.stories.native.js.map +0 -1
- package/dist/jsx/components/DataTableToolbar/DataTableToolbar.spec.mjs +0 -573
- package/dist/jsx/components/DataTableToolbar/DataTableToolbar.spec.mjs.map +0 -1
- package/dist/jsx/components/DataTableToolbar/DataTableToolbar.spec.native.js +0 -575
- package/dist/jsx/components/DataTableToolbar/DataTableToolbar.spec.native.js.map +0 -1
- package/dist/jsx/components/DataTableToolbar/DataTableToolbar.stories.mjs +0 -25
- package/dist/jsx/components/DataTableToolbar/DataTableToolbar.stories.mjs.map +0 -1
- package/dist/jsx/components/DataTableToolbar/DataTableToolbar.stories.native.js +0 -56
- package/dist/jsx/components/DataTableToolbar/DataTableToolbar.stories.native.js.map +0 -1
- package/dist/jsx/components/DataTableViewOptions/DataTableViewOptions.spec.mjs +0 -126
- package/dist/jsx/components/DataTableViewOptions/DataTableViewOptions.spec.mjs.map +0 -1
- package/dist/jsx/components/DataTableViewOptions/DataTableViewOptions.spec.native.js +0 -129
- package/dist/jsx/components/DataTableViewOptions/DataTableViewOptions.spec.native.js.map +0 -1
- package/dist/jsx/components/DataTableViewOptions/DataTableViewOptions.stories.mjs +0 -393
- package/dist/jsx/components/DataTableViewOptions/DataTableViewOptions.stories.mjs.map +0 -1
- package/dist/jsx/components/DataTableViewOptions/DataTableViewOptions.stories.native.js +0 -458
- package/dist/jsx/components/DataTableViewOptions/DataTableViewOptions.stories.native.js.map +0 -1
- package/dist/jsx/components/FilterManager.spec.mjs +0 -53
- package/dist/jsx/components/FilterManager.spec.mjs.map +0 -1
- package/dist/jsx/components/FilterManager.spec.native.js +0 -55
- package/dist/jsx/components/FilterManager.spec.native.js.map +0 -1
- package/dist/jsx/components/SavedFilterDropdown.spec.mjs +0 -84
- package/dist/jsx/components/SavedFilterDropdown.spec.mjs.map +0 -1
- package/dist/jsx/components/SavedFilterDropdown.spec.native.js +0 -86
- package/dist/jsx/components/SavedFilterDropdown.spec.native.js.map +0 -1
- package/dist/jsx/components/SimpleTable/simpleTable.spec.mjs +0 -163
- package/dist/jsx/components/SimpleTable/simpleTable.spec.mjs.map +0 -1
- package/dist/jsx/components/SimpleTable/simpleTable.spec.native.js +0 -165
- package/dist/jsx/components/SimpleTable/simpleTable.spec.native.js.map +0 -1
- package/dist/jsx/components/Table/Table.stories.mjs +0 -167
- package/dist/jsx/components/Table/Table.stories.mjs.map +0 -1
- package/dist/jsx/components/Table/Table.stories.native.js +0 -207
- package/dist/jsx/components/Table/Table.stories.native.js.map +0 -1
- package/dist/jsx/components/Table/accessibility.spec.mjs +0 -187
- package/dist/jsx/components/Table/accessibility.spec.mjs.map +0 -1
- package/dist/jsx/components/Table/accessibility.spec.native.js +0 -216
- package/dist/jsx/components/Table/accessibility.spec.native.js.map +0 -1
- package/dist/jsx/components/TableInput/TableInput.stories.mjs +0 -24
- package/dist/jsx/components/TableInput/TableInput.stories.mjs.map +0 -1
- package/dist/jsx/components/TableInput/TableInput.stories.native.js +0 -55
- package/dist/jsx/components/TableInput/TableInput.stories.native.js.map +0 -1
- package/dist/jsx/components/componentConsistency.spec.mjs +0 -38
- package/dist/jsx/components/componentConsistency.spec.mjs.map +0 -1
- package/dist/jsx/components/componentConsistency.spec.native.js +0 -48
- package/dist/jsx/components/componentConsistency.spec.native.js.map +0 -1
- package/dist/jsx/hooks/hookDecomposition.spec.mjs +0 -327
- package/dist/jsx/hooks/hookDecomposition.spec.mjs.map +0 -1
- package/dist/jsx/hooks/hookDecomposition.spec.native.js +0 -351
- package/dist/jsx/hooks/hookDecomposition.spec.native.js.map +0 -1
- package/dist/jsx/hooks/useDataTable.spec.mjs +0 -11
- package/dist/jsx/hooks/useDataTable.spec.mjs.map +0 -1
- package/dist/jsx/hooks/useDataTable.spec.native.js +0 -13
- package/dist/jsx/hooks/useDataTable.spec.native.js.map +0 -1
- package/dist/jsx/hooks/useSavedFilters.spec.mjs +0 -213
- package/dist/jsx/hooks/useSavedFilters.spec.mjs.map +0 -1
- package/dist/jsx/hooks/useSavedFilters.spec.native.js +0 -240
- package/dist/jsx/hooks/useSavedFilters.spec.native.js.map +0 -1
- package/dist/jsx/utils/filterUtils.spec.mjs +0 -351
- package/dist/jsx/utils/filterUtils.spec.mjs.map +0 -1
- package/dist/jsx/utils/filterUtils.spec.native.js +0 -353
- package/dist/jsx/utils/filterUtils.spec.native.js.map +0 -1
- package/dist/jsx/utils/urlStateUtils.spec.mjs +0 -235
- package/dist/jsx/utils/urlStateUtils.spec.mjs.map +0 -1
- package/dist/jsx/utils/urlStateUtils.spec.native.js +0 -239
- package/dist/jsx/utils/urlStateUtils.spec.native.js.map +0 -1
|
@@ -1,23 +1,13 @@
|
|
|
1
1
|
import { DotsThreeIcon } from "@phosphor-icons/react";
|
|
2
|
-
import {
|
|
3
|
-
import { useResolvedKnobs } from "@multiplatform.one/theme";
|
|
4
|
-
import type React from "react";
|
|
2
|
+
import { useAccentOnSurface, useResolvedKnobs } from "@multiplatform.one/theme";
|
|
5
3
|
import { useState } from "react";
|
|
6
4
|
import { Button, zIndex } from "@multiplatform.one/forms";
|
|
7
|
-
import {
|
|
5
|
+
import { ConfirmDialog, DropdownMenu } from "@multiplatform.one/components";
|
|
6
|
+
import { Text, View, XStack } from "tamagui";
|
|
7
|
+
import type { BulkAction } from "../../types";
|
|
8
8
|
import { useDataTableState } from "../DataTable/DataTableStateContext";
|
|
9
9
|
|
|
10
|
-
export
|
|
11
|
-
id: string;
|
|
12
|
-
label: string;
|
|
13
|
-
icon?: React.ReactNode;
|
|
14
|
-
confirmMessage?: string;
|
|
15
|
-
confirmTitle?: string;
|
|
16
|
-
variant?: "default" | "destructive" | "secondary";
|
|
17
|
-
onExecute: (selectedItems: T[], clearSelection: () => void) => void | Promise<void>;
|
|
18
|
-
requiresConfirmation?: boolean;
|
|
19
|
-
disabled?: boolean;
|
|
20
|
-
}
|
|
10
|
+
export type { BulkAction };
|
|
21
11
|
|
|
22
12
|
export interface DataTableBulkActionsProps<T = any> {
|
|
23
13
|
selectedItems?: T[];
|
|
@@ -26,6 +16,8 @@ export interface DataTableBulkActionsProps<T = any> {
|
|
|
26
16
|
maxVisibleActions?: number;
|
|
27
17
|
showSelectionCount?: boolean;
|
|
28
18
|
selectionKey?: keyof T;
|
|
19
|
+
/** Sticky edge for the selection bar (house `bulkBarPlacement`). Default top. */
|
|
20
|
+
placement?: "top" | "bottom";
|
|
29
21
|
}
|
|
30
22
|
|
|
31
23
|
export function DataTableBulkActions<T = any>(props: DataTableBulkActionsProps<T>) {
|
|
@@ -43,17 +35,54 @@ export function DataTableBulkActions<T = any>(props: DataTableBulkActionsProps<T
|
|
|
43
35
|
|
|
44
36
|
const {
|
|
45
37
|
actions,
|
|
46
|
-
maxVisibleActions =
|
|
38
|
+
maxVisibleActions = 5,
|
|
47
39
|
showSelectionCount = true,
|
|
48
40
|
selectionKey: _selectionKey = "id" as keyof T,
|
|
41
|
+
placement: placementProp,
|
|
49
42
|
} = props;
|
|
50
43
|
|
|
51
44
|
const [confirmAction, setConfirmAction] = useState<BulkAction<T> | null>(null);
|
|
52
45
|
const [isExecuting, setIsExecuting] = useState<string | null>(null);
|
|
53
46
|
const { knobProps } = useResolvedKnobs();
|
|
47
|
+
// UX-P04 / Axiom 12: the selection count is accent-hued text on the bar
|
|
48
|
+
// surface (page), so it needs the page-readable accent — `$accentColor` (the
|
|
49
|
+
// on-fill foreground) measured 1.88:1 as dark-scheme page text.
|
|
50
|
+
const countColor = useAccentOnSurface();
|
|
51
|
+
const placement = placementProp ?? (knobProps.bulkBarPlacement === "bottom" ? "bottom" : "top");
|
|
52
|
+
|
|
53
|
+
// DG-TBL-03 scope switch: with page scope, once the visible page is fully
|
|
54
|
+
// selected offer expanding the selection to every matching (filtered) row.
|
|
55
|
+
// The count above always reflects the true selection size across pages.
|
|
56
|
+
// Whether all matching rows are selected is asked of the table directly
|
|
57
|
+
// (getIsAllRowsSelected = all FILTERED rows) — comparing selectedItems.length
|
|
58
|
+
// to matchingCount lies when a stale selection outside the current filter
|
|
59
|
+
// inflates the count.
|
|
60
|
+
const selectAllScope = ctx?.selectAllScope ?? "page";
|
|
61
|
+
const matchingCount = ctx ? ctx.table.getFilteredRowModel().rows.length : 0;
|
|
62
|
+
const showSelectAllMatching = Boolean(
|
|
63
|
+
ctx &&
|
|
64
|
+
selectAllScope === "page" &&
|
|
65
|
+
matchingCount > 0 &&
|
|
66
|
+
ctx.table.getIsAllPageRowsSelected() &&
|
|
67
|
+
!ctx.table.getIsAllRowsSelected(),
|
|
68
|
+
);
|
|
69
|
+
|
|
70
|
+
// D-15: selection derives from the CORE row model, so it survives filter
|
|
71
|
+
// changes and can include rows the current filter hides. The count stays
|
|
72
|
+
// honest to both the model and the view by annotating the hidden remainder
|
|
73
|
+
// ("N selected (+M filtered out)") instead of silently counting invisible
|
|
74
|
+
// rows or pruning the user's selection. Only computable in context mode —
|
|
75
|
+
// an explicit selectedItems prop carries no filter relationship.
|
|
76
|
+
const filteredOutCount =
|
|
77
|
+
props.selectedItems === undefined && ctx
|
|
78
|
+
? selectedItems.length - ctx.table.getFilteredSelectedRowModel().rows.length
|
|
79
|
+
: 0;
|
|
54
80
|
|
|
55
81
|
const handleExecuteAction = async (action: BulkAction<T>) => {
|
|
56
|
-
|
|
82
|
+
// DG-DX-01/02: a bulk destructive action is at least severity medium
|
|
83
|
+
// (bulk hint), and medium+ requires the confirm gate — so destructive
|
|
84
|
+
// actions confirm even without an explicit `requiresConfirmation`.
|
|
85
|
+
if (action.requiresConfirmation || action.variant === "destructive") {
|
|
57
86
|
setConfirmAction(action);
|
|
58
87
|
return;
|
|
59
88
|
}
|
|
@@ -72,11 +101,13 @@ export function DataTableBulkActions<T = any>(props: DataTableBulkActionsProps<T
|
|
|
72
101
|
}
|
|
73
102
|
};
|
|
74
103
|
|
|
75
|
-
const handleConfirmAction =
|
|
76
|
-
if (confirmAction)
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
104
|
+
const handleConfirmAction = () => {
|
|
105
|
+
if (!confirmAction) return;
|
|
106
|
+
const action = confirmAction;
|
|
107
|
+
// The canonical dialog closes on confirm; busy feedback lives on the
|
|
108
|
+
// bulk-bar button (`loading` while executing), mirroring DestructiveAction.
|
|
109
|
+
setConfirmAction(null);
|
|
110
|
+
void executeAction(action);
|
|
80
111
|
};
|
|
81
112
|
|
|
82
113
|
const visibleActions = actions.slice(0, maxVisibleActions);
|
|
@@ -96,13 +127,32 @@ export function DataTableBulkActions<T = any>(props: DataTableBulkActionsProps<T
|
|
|
96
127
|
gap="$3"
|
|
97
128
|
backgroundColor="$color2"
|
|
98
129
|
borderColor="$color6"
|
|
130
|
+
position="sticky"
|
|
131
|
+
top={placement === "top" ? 0 : undefined}
|
|
132
|
+
bottom={placement === "bottom" ? 0 : undefined}
|
|
133
|
+
zIndex={zIndex.stickyHeader}
|
|
134
|
+
data-bulk-bar-placement={placement}
|
|
99
135
|
>
|
|
100
136
|
{showSelectionCount && (
|
|
101
|
-
<Text fontSize="$3" fontWeight="600" color=
|
|
102
|
-
{
|
|
137
|
+
<Text fontSize="$3" fontWeight="600" color={countColor}>
|
|
138
|
+
{filteredOutCount > 0
|
|
139
|
+
? `${selectedItems.length} selected (+${filteredOutCount} filtered out)`
|
|
140
|
+
: `${selectedItems.length} selected`}
|
|
103
141
|
</Text>
|
|
104
142
|
)}
|
|
105
143
|
|
|
144
|
+
{showSelectAllMatching && (
|
|
145
|
+
<Button
|
|
146
|
+
size={knobProps.sizeToken}
|
|
147
|
+
variant="outlined"
|
|
148
|
+
onPress={() => ctx?.table.toggleAllRowsSelected(true)}
|
|
149
|
+
aria-label={`Select all ${matchingCount} matching rows`}
|
|
150
|
+
{...knobProps.borderRadius}
|
|
151
|
+
>
|
|
152
|
+
{`Select all ${matchingCount}`}
|
|
153
|
+
</Button>
|
|
154
|
+
)}
|
|
155
|
+
|
|
106
156
|
<XStack gap="$2" flex={1}>
|
|
107
157
|
{visibleActions.map((action) => (
|
|
108
158
|
<Button
|
|
@@ -110,11 +160,15 @@ export function DataTableBulkActions<T = any>(props: DataTableBulkActionsProps<T
|
|
|
110
160
|
size={knobProps.sizeToken}
|
|
111
161
|
variant="outlined"
|
|
112
162
|
theme={action.variant === "destructive" ? "red" : undefined}
|
|
113
|
-
disabled={action.disabled
|
|
163
|
+
disabled={action.disabled}
|
|
164
|
+
// DG-ST-03: reason renders via the Button explain affordance;
|
|
165
|
+
// executing is derived busy state (spinner), not a bare disable.
|
|
166
|
+
disabledReason={action.disabledReason}
|
|
167
|
+
loading={isExecuting === action.id}
|
|
114
168
|
onPress={() => handleExecuteAction(action)}
|
|
115
169
|
{...knobProps.borderRadius}
|
|
116
170
|
>
|
|
117
|
-
{
|
|
171
|
+
{action.label}
|
|
118
172
|
</Button>
|
|
119
173
|
))}
|
|
120
174
|
|
|
@@ -139,16 +193,25 @@ export function DataTableBulkActions<T = any>(props: DataTableBulkActionsProps<T
|
|
|
139
193
|
</Button>
|
|
140
194
|
</View>
|
|
141
195
|
|
|
142
|
-
{/*
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
196
|
+
{/* LC-16: confirm routes through the canonical DestructiveAction→ConfirmDialog
|
|
197
|
+
gate (alertdialog role, focus trap, Escape cancels, cancel never disabled)
|
|
198
|
+
instead of a hand-rolled overlay. */}
|
|
199
|
+
<ConfirmDialog
|
|
200
|
+
open={confirmAction != null}
|
|
201
|
+
title={confirmAction ? confirmAction.confirmTitle || `Confirm ${confirmAction.label}` : ""}
|
|
202
|
+
body={
|
|
203
|
+
confirmAction
|
|
204
|
+
? confirmAction.confirmMessage ||
|
|
205
|
+
`Are you sure you want to ${confirmAction.label.toLowerCase()} ${selectedItems.length} item${
|
|
206
|
+
selectedItems.length > 1 ? "s" : ""
|
|
207
|
+
}?`
|
|
208
|
+
: undefined
|
|
209
|
+
}
|
|
210
|
+
confirmLabel={confirmAction?.label}
|
|
211
|
+
destructive={confirmAction?.variant === "destructive"}
|
|
212
|
+
onConfirm={handleConfirmAction}
|
|
213
|
+
onCancel={() => setConfirmAction(null)}
|
|
214
|
+
/>
|
|
152
215
|
</>
|
|
153
216
|
);
|
|
154
217
|
}
|
|
@@ -170,126 +233,28 @@ function BulkActionsOverflowMenu<T = any>({
|
|
|
170
233
|
}: BulkActionsOverflowMenuProps<T>) {
|
|
171
234
|
const { knobProps } = useResolvedKnobs();
|
|
172
235
|
return (
|
|
173
|
-
<
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
bw: 1,
|
|
187
|
-
bc: "$borderColor",
|
|
188
|
-
gap: knobProps.gap.gap,
|
|
189
|
-
py: knobProps.panelPadding.padding,
|
|
190
|
-
w: "100%",
|
|
191
|
-
h: "100%",
|
|
192
|
-
}}
|
|
193
|
-
{...knobProps.borderRadius}
|
|
194
|
-
borderWidth={1}
|
|
195
|
-
borderColor="$borderColor"
|
|
196
|
-
enterStyle={{ x: 0, y: -10, opacity: 0 }}
|
|
197
|
-
exitStyle={{ x: 0, y: -10, opacity: 0 }}
|
|
198
|
-
>
|
|
199
|
-
<YStack gap="$1" padding="$2" minWidth={200}>
|
|
200
|
-
{actions.map((action) => (
|
|
201
|
-
<Button
|
|
202
|
-
key={action.id}
|
|
203
|
-
size={knobProps.sizeToken}
|
|
204
|
-
variant="outlined"
|
|
205
|
-
justifyContent="flex-start"
|
|
206
|
-
disabled={action.disabled || isExecuting === action.id}
|
|
207
|
-
onPress={() => onExecuteAction(action)}
|
|
208
|
-
{...knobProps.borderRadius}
|
|
209
|
-
>
|
|
210
|
-
{isExecuting === action.id ? "..." : action.label}
|
|
211
|
-
</Button>
|
|
212
|
-
))}
|
|
213
|
-
</YStack>
|
|
214
|
-
</Popover.Content>
|
|
215
|
-
</Popover>
|
|
216
|
-
);
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
// Bulk Action Confirmation Dialog
|
|
220
|
-
|
|
221
|
-
interface BulkActionConfirmationDialogProps<T = any> {
|
|
222
|
-
action: BulkAction<T>;
|
|
223
|
-
selectedCount: number;
|
|
224
|
-
onConfirm: () => void;
|
|
225
|
-
onCancel: () => void;
|
|
226
|
-
isExecuting: boolean;
|
|
227
|
-
}
|
|
228
|
-
|
|
229
|
-
function BulkActionConfirmationDialog<T = any>({
|
|
230
|
-
action,
|
|
231
|
-
selectedCount,
|
|
232
|
-
onConfirm,
|
|
233
|
-
onCancel,
|
|
234
|
-
isExecuting,
|
|
235
|
-
}: BulkActionConfirmationDialogProps<T>) {
|
|
236
|
-
const { knobProps } = useResolvedKnobs();
|
|
237
|
-
const sz = knobProps.sizeToken;
|
|
238
|
-
const dialogMaxWidth = sz === "$3" ? 320 : sz === "$5" ? 480 : 400;
|
|
239
|
-
return (
|
|
240
|
-
<View
|
|
241
|
-
position="absolute"
|
|
242
|
-
top={0}
|
|
243
|
-
left={0}
|
|
244
|
-
right={0}
|
|
245
|
-
bottom={0}
|
|
246
|
-
backgroundColor="$shadowColor"
|
|
247
|
-
alignItems="center"
|
|
248
|
-
justifyContent="center"
|
|
249
|
-
zIndex={zIndex.loading}
|
|
250
|
-
padding="$4"
|
|
236
|
+
<DropdownMenu
|
|
237
|
+
items={actions.map((action) => ({
|
|
238
|
+
key: action.id,
|
|
239
|
+
label: isExecuting === action.id ? "..." : action.label,
|
|
240
|
+
icon: action.icon,
|
|
241
|
+
disabled: action.disabled || isExecuting === action.id,
|
|
242
|
+
// DG-ST-03: menu rows explain inline; a running action is explained
|
|
243
|
+
// as busy rather than dangling bare-disabled.
|
|
244
|
+
disabledReason:
|
|
245
|
+
action.disabledReason ?? (isExecuting === action.id ? "Running..." : undefined),
|
|
246
|
+
destructive: action.variant === "destructive",
|
|
247
|
+
onSelect: () => onExecuteAction(action),
|
|
248
|
+
}))}
|
|
251
249
|
>
|
|
252
|
-
<
|
|
253
|
-
|
|
250
|
+
<Button
|
|
251
|
+
size={knobProps.sizeToken}
|
|
252
|
+
variant="outlined"
|
|
253
|
+
icon={<DotsThreeIcon size={16} />}
|
|
254
|
+
aria-label="More bulk actions"
|
|
254
255
|
{...knobProps.borderRadius}
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
width="100%"
|
|
258
|
-
borderColor="$borderColor"
|
|
259
|
-
>
|
|
260
|
-
<YStack {...knobProps.gapLg}>
|
|
261
|
-
<Text fontSize="$5" fontWeight="600">
|
|
262
|
-
{action.confirmTitle || `Confirm ${action.label}`}
|
|
263
|
-
</Text>
|
|
264
|
-
|
|
265
|
-
<Text fontSize="$3" color="$color10">
|
|
266
|
-
{action.confirmMessage ||
|
|
267
|
-
`Are you sure you want to ${action.label.toLowerCase()} ${selectedCount} item${
|
|
268
|
-
selectedCount > 1 ? "s" : ""
|
|
269
|
-
}?`}
|
|
270
|
-
</Text>
|
|
271
|
-
|
|
272
|
-
<XStack gap="$3" justifyContent="flex-end">
|
|
273
|
-
<Button
|
|
274
|
-
size={knobProps.sizeToken}
|
|
275
|
-
variant="outlined"
|
|
276
|
-
onPress={onCancel}
|
|
277
|
-
disabled={isExecuting}
|
|
278
|
-
>
|
|
279
|
-
Cancel
|
|
280
|
-
</Button>
|
|
281
|
-
<Button
|
|
282
|
-
size={knobProps.sizeToken}
|
|
283
|
-
theme={action.variant === "destructive" ? "red" : undefined}
|
|
284
|
-
onPress={onConfirm}
|
|
285
|
-
disabled={isExecuting}
|
|
286
|
-
>
|
|
287
|
-
{isExecuting ? "..." : action.label}
|
|
288
|
-
</Button>
|
|
289
|
-
</XStack>
|
|
290
|
-
</YStack>
|
|
291
|
-
</View>
|
|
292
|
-
</View>
|
|
256
|
+
/>
|
|
257
|
+
</DropdownMenu>
|
|
293
258
|
);
|
|
294
259
|
}
|
|
295
260
|
|
|
@@ -383,33 +348,3 @@ export function useRowSelection<T = any>({
|
|
|
383
348
|
|
|
384
349
|
// Bulk Actions Helper
|
|
385
350
|
// Note: Removed hardcoded default actions. Users should define their own actions based on their specific needs.
|
|
386
|
-
|
|
387
|
-
// Utility Functions
|
|
388
|
-
|
|
389
|
-
export function convertToCSV<T extends object = any>(data: T[]): string {
|
|
390
|
-
if (data.length === 0) return "";
|
|
391
|
-
|
|
392
|
-
const headers = Object.keys(data[0]);
|
|
393
|
-
const csvRows = [
|
|
394
|
-
headers.join(","),
|
|
395
|
-
...data.map((row) =>
|
|
396
|
-
headers
|
|
397
|
-
.map((header) => {
|
|
398
|
-
const value = row[header as keyof T];
|
|
399
|
-
// Escape commas and quotes in CSV
|
|
400
|
-
const stringValue = String(value || "");
|
|
401
|
-
return stringValue.includes(",") || stringValue.includes('"')
|
|
402
|
-
? `"${stringValue.replace(/"/g, '""')}"`
|
|
403
|
-
: stringValue;
|
|
404
|
-
})
|
|
405
|
-
.join(","),
|
|
406
|
-
),
|
|
407
|
-
];
|
|
408
|
-
|
|
409
|
-
return csvRows.join("\n");
|
|
410
|
-
}
|
|
411
|
-
|
|
412
|
-
export function downloadCSV(content: string, filename: string): void {
|
|
413
|
-
const blob = new Blob([content], { type: "text/csv;charset=utf-8;" });
|
|
414
|
-
downloadBlob(blob, filename);
|
|
415
|
-
}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CellModalEditor (native) — bottom-sheet editor for tall field types.
|
|
3
|
+
*
|
|
4
|
+
* The web implementation (./CellModalEditor.tsx) opens a centered Tamagui
|
|
5
|
+
* Dialog sized with vh/vw units — neither the Dialog portal presentation nor
|
|
6
|
+
* those units work on device. On native the owner's contract for oversized
|
|
7
|
+
* cell edits is a bottom sheet, so this variant reuses the forms
|
|
8
|
+
* FloatingPanel, whose native implementation is a React Native Modal bottom
|
|
9
|
+
* sheet (same adaptive dialog/sheet split AdaptivePopup implements).
|
|
10
|
+
*
|
|
11
|
+
* Same props/API as ./CellModalEditor.tsx, same staging semantics (UX-023 /
|
|
12
|
+
* Axiom 7 AGENCY): the inner editor edits a local draft seeded on open;
|
|
13
|
+
* "Done" and backdrop-tap / Android-back commit the draft once through
|
|
14
|
+
* `onCommit` (LC-21: the cell editor's draft commits on the outside close);
|
|
15
|
+
* "Cancel" discards it. Cancel is never disabled (LC-30).
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
import { FieldDisplay, FloatingPanel, Button } from "@multiplatform.one/forms";
|
|
19
|
+
import { useResolvedKnobs } from "@multiplatform.one/theme";
|
|
20
|
+
import { useCallback, useRef, useState } from "react";
|
|
21
|
+
import { Text, View, XStack, YStack } from "tamagui";
|
|
22
|
+
import { t } from "../../shared/t";
|
|
23
|
+
import type { CellModalEditorProps } from "./CellModalEditor";
|
|
24
|
+
|
|
25
|
+
export type { CellModalEditorProps } from "./CellModalEditor";
|
|
26
|
+
|
|
27
|
+
export function CellModalEditor({
|
|
28
|
+
field,
|
|
29
|
+
value,
|
|
30
|
+
fieldProps,
|
|
31
|
+
disabled,
|
|
32
|
+
readOnly,
|
|
33
|
+
onCommit,
|
|
34
|
+
children,
|
|
35
|
+
title,
|
|
36
|
+
}: CellModalEditorProps) {
|
|
37
|
+
const { knobProps } = useResolvedKnobs();
|
|
38
|
+
const [open, setOpen] = useState(false);
|
|
39
|
+
// Draft session seeded from the committed value on open (Axiom 11).
|
|
40
|
+
const [draft, setDraft] = useState<{ value: any } | null>(null);
|
|
41
|
+
const draftRef = useRef(draft);
|
|
42
|
+
draftRef.current = draft;
|
|
43
|
+
const valueRef = useRef(value);
|
|
44
|
+
valueRef.current = value;
|
|
45
|
+
const onCommitRef = useRef(onCommit);
|
|
46
|
+
onCommitRef.current = onCommit;
|
|
47
|
+
// Cancel flags the close as a discard; Done and backdrop/back commit.
|
|
48
|
+
const discardRef = useRef(false);
|
|
49
|
+
|
|
50
|
+
const handleOpenChange = useCallback(
|
|
51
|
+
(next: boolean) => {
|
|
52
|
+
if (next) {
|
|
53
|
+
if (disabled || readOnly) return;
|
|
54
|
+
discardRef.current = false;
|
|
55
|
+
const seeded = { value: valueRef.current };
|
|
56
|
+
draftRef.current = seeded;
|
|
57
|
+
setDraft(seeded);
|
|
58
|
+
setOpen(true);
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
const active = draftRef.current;
|
|
62
|
+
if (!discardRef.current && active && !Object.is(active.value, valueRef.current)) {
|
|
63
|
+
onCommitRef.current(active.value);
|
|
64
|
+
}
|
|
65
|
+
discardRef.current = false;
|
|
66
|
+
draftRef.current = null;
|
|
67
|
+
setDraft(null);
|
|
68
|
+
setOpen(false);
|
|
69
|
+
},
|
|
70
|
+
[disabled, readOnly],
|
|
71
|
+
);
|
|
72
|
+
|
|
73
|
+
const handleCancel = useCallback(() => {
|
|
74
|
+
discardRef.current = true;
|
|
75
|
+
handleOpenChange(false);
|
|
76
|
+
}, [handleOpenChange]);
|
|
77
|
+
|
|
78
|
+
const handleDraftChange = useCallback((next: any) => {
|
|
79
|
+
draftRef.current = { value: next };
|
|
80
|
+
setDraft(draftRef.current);
|
|
81
|
+
}, []);
|
|
82
|
+
|
|
83
|
+
return (
|
|
84
|
+
<FloatingPanel
|
|
85
|
+
open={open}
|
|
86
|
+
onOpenChange={handleOpenChange}
|
|
87
|
+
disabled={disabled || readOnly}
|
|
88
|
+
scrollable
|
|
89
|
+
trigger={
|
|
90
|
+
<View
|
|
91
|
+
opacity={disabled ? 0.5 : 1}
|
|
92
|
+
flexDirection="row"
|
|
93
|
+
alignItems="center"
|
|
94
|
+
width="100%"
|
|
95
|
+
paddingHorizontal="$1"
|
|
96
|
+
paddingVertical="$1"
|
|
97
|
+
borderRadius="$2"
|
|
98
|
+
>
|
|
99
|
+
<FieldDisplay field={field} value={value} fieldProps={fieldProps} />
|
|
100
|
+
</View>
|
|
101
|
+
}
|
|
102
|
+
>
|
|
103
|
+
<YStack gap="$3">
|
|
104
|
+
<Text {...knobProps.heading} fontSize="$5" fontWeight="600">
|
|
105
|
+
{title ?? t("Edit")}
|
|
106
|
+
</Text>
|
|
107
|
+
<YStack minHeight={0}>{children(draft ? draft.value : value, handleDraftChange)}</YStack>
|
|
108
|
+
<XStack gap="$2" justifyContent="flex-end">
|
|
109
|
+
{/* LC-30 CANCEL-ALWAYS-LIVE: the discard exit never disables. */}
|
|
110
|
+
<Button onPress={handleCancel}>{t("Cancel")}</Button>
|
|
111
|
+
<Button onPress={() => handleOpenChange(false)}>{t("Done")}</Button>
|
|
112
|
+
</XStack>
|
|
113
|
+
</YStack>
|
|
114
|
+
</FloatingPanel>
|
|
115
|
+
);
|
|
116
|
+
}
|
|
@@ -3,15 +3,21 @@
|
|
|
3
3
|
* etc.) in a Tamagui Dialog that opens on cell click. Cell shows a compact
|
|
4
4
|
* `FieldDisplay` summary; click opens a centered modal with the full editor.
|
|
5
5
|
*
|
|
6
|
-
* The
|
|
7
|
-
*
|
|
8
|
-
*
|
|
6
|
+
* The modal is a staging buffer (UX-023 / Axiom 7 AGENCY): the inner editor
|
|
7
|
+
* is wired to a local draft seeded from the committed value on open — nothing
|
|
8
|
+
* reaches the row while the modal is open. "Done" commits the draft once via
|
|
9
|
+
* `onCommit`; an outside click also commits (LC-21: a cell editor's draft
|
|
10
|
+
* still commits on the outside-click close); "Cancel" and Escape discard the
|
|
11
|
+
* draft and leave the row untouched. Cancel is never disabled (LC-30) and the
|
|
12
|
+
* footer stays within the two-action dialog budget (LC-31).
|
|
9
13
|
*/
|
|
10
14
|
|
|
11
15
|
import { FieldDisplay, type FieldDisplayType } from "@multiplatform.one/forms";
|
|
16
|
+
import { TableCellContext } from "@multiplatform.one/table-primitives";
|
|
12
17
|
import { useResolvedKnobs } from "@multiplatform.one/theme";
|
|
13
|
-
import { useCallback, useState, type ReactNode } from "react";
|
|
18
|
+
import { useCallback, useRef, useState, type ReactNode } from "react";
|
|
14
19
|
import { Button, Dialog, Text, View, XStack, YStack } from "tamagui";
|
|
20
|
+
import { t } from "../../shared/t";
|
|
15
21
|
|
|
16
22
|
export interface CellModalEditorProps {
|
|
17
23
|
field: FieldDisplayType;
|
|
@@ -19,8 +25,14 @@ export interface CellModalEditorProps {
|
|
|
19
25
|
fieldProps?: Record<string, any>;
|
|
20
26
|
disabled?: boolean;
|
|
21
27
|
readOnly?: boolean;
|
|
22
|
-
/**
|
|
23
|
-
|
|
28
|
+
/** Commits the staged draft to the row. Fires at most once per session. */
|
|
29
|
+
onCommit: (value: any) => void;
|
|
30
|
+
/**
|
|
31
|
+
* Full editor mounted inside the modal, wired to the staged draft: render
|
|
32
|
+
* with `draftValue` and report edits through `onDraftChange` — never
|
|
33
|
+
* straight to the row.
|
|
34
|
+
*/
|
|
35
|
+
children: (draftValue: any, onDraftChange: (value: any) => void) => ReactNode;
|
|
24
36
|
/** Title shown in the modal header. */
|
|
25
37
|
title?: string;
|
|
26
38
|
}
|
|
@@ -31,17 +43,63 @@ export function CellModalEditor({
|
|
|
31
43
|
fieldProps,
|
|
32
44
|
disabled,
|
|
33
45
|
readOnly,
|
|
46
|
+
onCommit,
|
|
34
47
|
children,
|
|
35
48
|
title,
|
|
36
49
|
}: CellModalEditorProps) {
|
|
37
50
|
const { knobProps } = useResolvedKnobs();
|
|
38
51
|
const [open, setOpen] = useState(false);
|
|
52
|
+
// Draft session: exists only while the modal is open, seeded from the
|
|
53
|
+
// committed value so the editor starts at the cell's current value
|
|
54
|
+
// (Axiom 11 VALUE IS DATA).
|
|
55
|
+
const [draft, setDraft] = useState<{ value: any } | null>(null);
|
|
56
|
+
const draftRef = useRef(draft);
|
|
57
|
+
draftRef.current = draft;
|
|
58
|
+
const valueRef = useRef(value);
|
|
59
|
+
valueRef.current = value;
|
|
60
|
+
const onCommitRef = useRef(onCommit);
|
|
61
|
+
onCommitRef.current = onCommit;
|
|
62
|
+
// Escape / Cancel flag the close as a discard before onOpenChange(false)
|
|
63
|
+
// lands; every other close path (Done, overlay/outside click) commits.
|
|
64
|
+
const discardRef = useRef(false);
|
|
39
65
|
|
|
40
66
|
const handleOpen = useCallback(() => {
|
|
41
67
|
if (disabled || readOnly) return;
|
|
68
|
+
discardRef.current = false;
|
|
69
|
+
const seeded = { value: valueRef.current };
|
|
70
|
+
draftRef.current = seeded;
|
|
71
|
+
setDraft(seeded);
|
|
42
72
|
setOpen(true);
|
|
43
73
|
}, [disabled, readOnly]);
|
|
44
74
|
|
|
75
|
+
const handleOpenChange = useCallback(
|
|
76
|
+
(next: boolean) => {
|
|
77
|
+
if (next) {
|
|
78
|
+
handleOpen();
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
const active = draftRef.current;
|
|
82
|
+
if (!discardRef.current && active && !Object.is(active.value, valueRef.current)) {
|
|
83
|
+
onCommitRef.current(active.value);
|
|
84
|
+
}
|
|
85
|
+
discardRef.current = false;
|
|
86
|
+
draftRef.current = null;
|
|
87
|
+
setDraft(null);
|
|
88
|
+
setOpen(false);
|
|
89
|
+
},
|
|
90
|
+
[handleOpen],
|
|
91
|
+
);
|
|
92
|
+
|
|
93
|
+
const handleCancel = useCallback(() => {
|
|
94
|
+
discardRef.current = true;
|
|
95
|
+
handleOpenChange(false);
|
|
96
|
+
}, [handleOpenChange]);
|
|
97
|
+
|
|
98
|
+
const handleDraftChange = useCallback((next: any) => {
|
|
99
|
+
draftRef.current = { value: next };
|
|
100
|
+
setDraft(draftRef.current);
|
|
101
|
+
}, []);
|
|
102
|
+
|
|
45
103
|
return (
|
|
46
104
|
<>
|
|
47
105
|
<View
|
|
@@ -58,7 +116,7 @@ export function CellModalEditor({
|
|
|
58
116
|
>
|
|
59
117
|
<FieldDisplay field={field} value={value} fieldProps={fieldProps} />
|
|
60
118
|
</View>
|
|
61
|
-
<Dialog open={open} onOpenChange={
|
|
119
|
+
<Dialog open={open} onOpenChange={handleOpenChange} modal>
|
|
62
120
|
<Dialog.Portal>
|
|
63
121
|
<Dialog.Overlay opacity={0.5} enterStyle={{ opacity: 0 }} exitStyle={{ opacity: 0 }} />
|
|
64
122
|
<Dialog.Content
|
|
@@ -70,18 +128,32 @@ export function CellModalEditor({
|
|
|
70
128
|
maxWidth={720}
|
|
71
129
|
maxHeight="80vh"
|
|
72
130
|
width="90vw"
|
|
131
|
+
// Escape is a dismissal, not a confirm: mark the pending close as
|
|
132
|
+
// a discard, then let the Dialog close itself.
|
|
133
|
+
onEscapeKeyDown={() => {
|
|
134
|
+
discardRef.current = true;
|
|
135
|
+
}}
|
|
73
136
|
>
|
|
74
137
|
<Dialog.Title>
|
|
75
138
|
<Text fontSize="$5" fontWeight="600">
|
|
76
|
-
{title ?? "Edit"}
|
|
139
|
+
{title ?? t("Edit")}
|
|
77
140
|
</Text>
|
|
78
141
|
</Dialog.Title>
|
|
79
|
-
|
|
80
|
-
|
|
142
|
+
{/* flexShrink (not flex-basis 0): in the auto-height dialog a
|
|
143
|
+
basis-0 wrapper collapses and its children paint over the
|
|
144
|
+
footer / past the dialog frame (LC-10). The context reset
|
|
145
|
+
restores full field chrome — the modal is not a table cell,
|
|
146
|
+
but React context flows through the Dialog portal. */}
|
|
147
|
+
<YStack flexShrink={1} minHeight={0} marginTop="$3" marginBottom="$4">
|
|
148
|
+
<TableCellContext.Provider value={{ inTableCell: false }}>
|
|
149
|
+
{children(draft ? draft.value : value, handleDraftChange)}
|
|
150
|
+
</TableCellContext.Provider>
|
|
81
151
|
</YStack>
|
|
82
152
|
<XStack gap="$2" justifyContent="flex-end">
|
|
153
|
+
{/* LC-30 CANCEL-ALWAYS-LIVE: the discard exit never disables. */}
|
|
154
|
+
<Button onPress={handleCancel}>{t("Cancel")}</Button>
|
|
83
155
|
<Dialog.Close asChild>
|
|
84
|
-
<Button>Done</Button>
|
|
156
|
+
<Button theme="accent">{t("Done")}</Button>
|
|
85
157
|
</Dialog.Close>
|
|
86
158
|
</XStack>
|
|
87
159
|
</Dialog.Content>
|