@multiplatform.one/table 7.7.6 → 7.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/ColumnHeaderFilter/index.cjs +74 -38
- package/dist/cjs/components/ColumnHeaderFilter/index.native.js +97 -51
- package/dist/cjs/components/ColumnHeaderFilter/index.native.js.map +1 -1
- package/dist/cjs/components/DataTable/DataTableCardControls.cjs +0 -1
- package/dist/cjs/components/DataTable/DataTableCardControls.native.js +0 -1
- package/dist/cjs/components/DataTable/DataTableCardControls.native.js.map +1 -1
- package/dist/cjs/components/DataTable/DataTableMobileCards.cjs +100 -33
- package/dist/cjs/components/DataTable/DataTableMobileCards.native.js +139 -38
- package/dist/cjs/components/DataTable/DataTableMobileCards.native.js.map +1 -1
- package/dist/cjs/components/DataTable/DataTableRoot.cjs +33 -6
- package/dist/cjs/components/DataTable/DataTableRoot.native.js +29 -4
- 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/index.native.js +59 -93
- package/dist/cjs/components/DataTable/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableBulkActions/index.cjs +0 -4
- package/dist/cjs/components/DataTableBulkActions/index.native.js +0 -4
- package/dist/cjs/components/DataTableBulkActions/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableCell/index.cjs +16 -1
- package/dist/cjs/components/DataTableCell/index.native.js +16 -1
- package/dist/cjs/components/DataTableCell/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableDateFilter/index.cjs +0 -7
- package/dist/cjs/components/DataTableDateFilter/index.native.js +0 -7
- package/dist/cjs/components/DataTableDateFilter/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableFilterButton/index.cjs +0 -1
- package/dist/cjs/components/DataTableFilterButton/index.native.js +0 -1
- package/dist/cjs/components/DataTableFilterChips/FilterChip.cjs +2 -1
- package/dist/cjs/components/DataTableFilterChips/FilterChip.native.js +4 -1
- package/dist/cjs/components/DataTableFilterChips/FilterChip.native.js.map +1 -1
- package/dist/cjs/components/DataTableFilters/index.cjs +0 -1
- package/dist/cjs/components/DataTableFilters/index.native.js +0 -1
- package/dist/cjs/components/DataTableGrouping/index.cjs +0 -8
- package/dist/cjs/components/DataTableGrouping/index.native.js +0 -8
- package/dist/cjs/components/DataTableGrouping/index.native.js.map +1 -1
- package/dist/cjs/components/DataTablePagination/index.cjs +29 -13
- package/dist/cjs/components/DataTablePagination/index.native.js +30 -14
- package/dist/cjs/components/DataTablePagination/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableSearch/index.cjs +0 -3
- package/dist/cjs/components/DataTableSearch/index.native.js +0 -3
- package/dist/cjs/components/DataTableSearch/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableToolbar/index.cjs +0 -1
- package/dist/cjs/components/DataTableToolbar/index.native.js +0 -1
- package/dist/cjs/components/DataTableToolbar/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableViewOptions/index.cjs +0 -5
- package/dist/cjs/components/DataTableViewOptions/index.native.js +0 -5
- package/dist/cjs/components/DataTableViewOptions/index.native.js.map +1 -1
- package/dist/cjs/components/FilterManager.cjs +0 -1
- package/dist/cjs/components/FilterManager.native.js +0 -1
- package/dist/cjs/components/FilterManager.native.js.map +1 -1
- package/dist/cjs/components/FilterOperatorValueEditor/index.cjs +2 -2
- package/dist/cjs/components/FilterOperatorValueEditor/index.native.js +2 -2
- package/dist/cjs/components/FilterOperatorValueEditor/index.native.js.map +1 -1
- package/dist/cjs/components/TableInput/index.cjs +2 -1
- package/dist/cjs/components/TableInput/index.native.js +4 -2
- package/dist/cjs/components/TableInput/index.native.js.map +1 -1
- package/dist/cjs/hooks/useDataTable.cjs +24 -8
- package/dist/cjs/hooks/useDataTable.native.js +28 -8
- package/dist/cjs/hooks/useDataTable.native.js.map +1 -1
- package/dist/cjs/index.cjs +12 -0
- package/dist/cjs/index.native.js +12 -0
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/shared/devWarn.cjs +70 -0
- package/dist/cjs/shared/devWarn.native.js +84 -0
- package/dist/cjs/shared/devWarn.native.js.map +1 -0
- package/dist/cjs/utils/columnAlign.cjs +4 -1
- package/dist/cjs/utils/columnAlign.native.js +4 -1
- package/dist/cjs/utils/columnAlign.native.js.map +1 -1
- package/dist/cjs/utils/filterFields.cjs +5 -0
- package/dist/cjs/utils/filterFields.native.js +5 -0
- package/dist/cjs/utils/filterFields.native.js.map +1 -1
- package/dist/cjs/utils/filterUtils.cjs +30 -0
- package/dist/cjs/utils/filterUtils.native.js +50 -0
- package/dist/cjs/utils/filterUtils.native.js.map +1 -1
- package/dist/cjs/utils/money.cjs +137 -0
- package/dist/cjs/utils/money.native.js +165 -0
- package/dist/cjs/utils/money.native.js.map +1 -0
- package/dist/cjs/utils/rowAccumulator.cjs +48 -0
- package/dist/cjs/utils/rowAccumulator.native.js +51 -0
- package/dist/cjs/utils/rowAccumulator.native.js.map +1 -0
- package/dist/esm/components/ColumnHeaderFilter/index.mjs +78 -42
- package/dist/esm/components/ColumnHeaderFilter/index.mjs.map +1 -1
- package/dist/esm/components/ColumnHeaderFilter/index.native.js +101 -55
- package/dist/esm/components/ColumnHeaderFilter/index.native.js.map +1 -1
- package/dist/esm/components/DataTable/DataTableCardControls.mjs +0 -1
- package/dist/esm/components/DataTable/DataTableCardControls.mjs.map +1 -1
- package/dist/esm/components/DataTable/DataTableCardControls.native.js +0 -1
- package/dist/esm/components/DataTable/DataTableCardControls.native.js.map +1 -1
- package/dist/esm/components/DataTable/DataTableMobileCards.mjs +99 -34
- package/dist/esm/components/DataTable/DataTableMobileCards.mjs.map +1 -1
- package/dist/esm/components/DataTable/DataTableMobileCards.native.js +138 -39
- package/dist/esm/components/DataTable/DataTableMobileCards.native.js.map +1 -1
- package/dist/esm/components/DataTable/DataTableRoot.mjs +33 -6
- package/dist/esm/components/DataTable/DataTableRoot.mjs.map +1 -1
- package/dist/esm/components/DataTable/DataTableRoot.native.js +29 -4
- 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/index.native.js +60 -94
- package/dist/esm/components/DataTable/index.native.js.map +1 -1
- package/dist/esm/components/DataTableBulkActions/index.mjs +0 -4
- package/dist/esm/components/DataTableBulkActions/index.mjs.map +1 -1
- package/dist/esm/components/DataTableBulkActions/index.native.js +0 -4
- package/dist/esm/components/DataTableBulkActions/index.native.js.map +1 -1
- package/dist/esm/components/DataTableCell/index.mjs +17 -2
- package/dist/esm/components/DataTableCell/index.mjs.map +1 -1
- package/dist/esm/components/DataTableCell/index.native.js +17 -2
- package/dist/esm/components/DataTableCell/index.native.js.map +1 -1
- package/dist/esm/components/DataTableDateFilter/index.mjs +0 -7
- package/dist/esm/components/DataTableDateFilter/index.mjs.map +1 -1
- package/dist/esm/components/DataTableDateFilter/index.native.js +0 -7
- package/dist/esm/components/DataTableDateFilter/index.native.js.map +1 -1
- package/dist/esm/components/DataTableFilterButton/index.mjs +0 -1
- package/dist/esm/components/DataTableFilterButton/index.mjs.map +1 -1
- package/dist/esm/components/DataTableFilterButton/index.native.js +0 -1
- package/dist/esm/components/DataTableFilterChips/FilterChip.mjs +3 -2
- package/dist/esm/components/DataTableFilterChips/FilterChip.mjs.map +1 -1
- package/dist/esm/components/DataTableFilterChips/FilterChip.native.js +5 -2
- package/dist/esm/components/DataTableFilterChips/FilterChip.native.js.map +1 -1
- package/dist/esm/components/DataTableFilters/index.mjs +0 -1
- package/dist/esm/components/DataTableFilters/index.mjs.map +1 -1
- package/dist/esm/components/DataTableFilters/index.native.js +0 -1
- package/dist/esm/components/DataTableGrouping/index.mjs +0 -8
- package/dist/esm/components/DataTableGrouping/index.mjs.map +1 -1
- package/dist/esm/components/DataTableGrouping/index.native.js +0 -8
- package/dist/esm/components/DataTableGrouping/index.native.js.map +1 -1
- package/dist/esm/components/DataTablePagination/index.mjs +30 -14
- package/dist/esm/components/DataTablePagination/index.mjs.map +1 -1
- package/dist/esm/components/DataTablePagination/index.native.js +31 -15
- package/dist/esm/components/DataTablePagination/index.native.js.map +1 -1
- package/dist/esm/components/DataTableSearch/index.mjs +0 -3
- package/dist/esm/components/DataTableSearch/index.mjs.map +1 -1
- package/dist/esm/components/DataTableSearch/index.native.js +0 -3
- package/dist/esm/components/DataTableSearch/index.native.js.map +1 -1
- package/dist/esm/components/DataTableToolbar/index.mjs +0 -1
- package/dist/esm/components/DataTableToolbar/index.mjs.map +1 -1
- package/dist/esm/components/DataTableToolbar/index.native.js +0 -1
- package/dist/esm/components/DataTableToolbar/index.native.js.map +1 -1
- package/dist/esm/components/DataTableViewOptions/index.mjs +0 -5
- package/dist/esm/components/DataTableViewOptions/index.mjs.map +1 -1
- package/dist/esm/components/DataTableViewOptions/index.native.js +0 -5
- package/dist/esm/components/DataTableViewOptions/index.native.js.map +1 -1
- package/dist/esm/components/FilterManager.mjs +0 -1
- package/dist/esm/components/FilterManager.mjs.map +1 -1
- package/dist/esm/components/FilterManager.native.js +0 -1
- package/dist/esm/components/FilterManager.native.js.map +1 -1
- package/dist/esm/components/FilterOperatorValueEditor/index.mjs +2 -2
- package/dist/esm/components/FilterOperatorValueEditor/index.mjs.map +1 -1
- package/dist/esm/components/FilterOperatorValueEditor/index.native.js +2 -2
- package/dist/esm/components/FilterOperatorValueEditor/index.native.js.map +1 -1
- package/dist/esm/components/TableInput/index.mjs +3 -2
- package/dist/esm/components/TableInput/index.mjs.map +1 -1
- package/dist/esm/components/TableInput/index.native.js +5 -3
- package/dist/esm/components/TableInput/index.native.js.map +1 -1
- package/dist/esm/hooks/useDataTable.mjs +24 -8
- package/dist/esm/hooks/useDataTable.mjs.map +1 -1
- package/dist/esm/hooks/useDataTable.native.js +28 -8
- package/dist/esm/hooks/useDataTable.native.js.map +1 -1
- package/dist/esm/index.mjs +3 -1
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +3 -1
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/shared/devWarn.mjs +43 -0
- package/dist/esm/shared/devWarn.mjs.map +1 -0
- package/dist/esm/shared/devWarn.native.js +54 -0
- package/dist/esm/shared/devWarn.native.js.map +1 -0
- package/dist/esm/utils/columnAlign.mjs +4 -1
- package/dist/esm/utils/columnAlign.mjs.map +1 -1
- package/dist/esm/utils/columnAlign.native.js +4 -1
- package/dist/esm/utils/columnAlign.native.js.map +1 -1
- package/dist/esm/utils/filterFields.mjs +5 -0
- package/dist/esm/utils/filterFields.mjs.map +1 -1
- package/dist/esm/utils/filterFields.native.js +5 -0
- package/dist/esm/utils/filterFields.native.js.map +1 -1
- package/dist/esm/utils/filterUtils.mjs +30 -0
- package/dist/esm/utils/filterUtils.mjs.map +1 -1
- package/dist/esm/utils/filterUtils.native.js +50 -0
- package/dist/esm/utils/filterUtils.native.js.map +1 -1
- package/dist/esm/utils/money.mjs +104 -0
- package/dist/esm/utils/money.mjs.map +1 -0
- package/dist/esm/utils/money.native.js +129 -0
- package/dist/esm/utils/money.native.js.map +1 -0
- package/dist/esm/utils/rowAccumulator.mjs +23 -0
- package/dist/esm/utils/rowAccumulator.mjs.map +1 -0
- package/dist/esm/utils/rowAccumulator.native.js +23 -0
- package/dist/esm/utils/rowAccumulator.native.js.map +1 -0
- package/dist/jsx/components/ColumnHeaderFilter/index.mjs +78 -42
- package/dist/jsx/components/ColumnHeaderFilter/index.mjs.map +1 -1
- package/dist/jsx/components/ColumnHeaderFilter/index.native.js +97 -51
- package/dist/jsx/components/ColumnHeaderFilter/index.native.js.map +1 -1
- package/dist/jsx/components/DataTable/DataTableCardControls.mjs +0 -1
- package/dist/jsx/components/DataTable/DataTableCardControls.mjs.map +1 -1
- package/dist/jsx/components/DataTable/DataTableCardControls.native.js +0 -1
- package/dist/jsx/components/DataTable/DataTableCardControls.native.js.map +1 -1
- package/dist/jsx/components/DataTable/DataTableMobileCards.mjs +99 -34
- package/dist/jsx/components/DataTable/DataTableMobileCards.mjs.map +1 -1
- package/dist/jsx/components/DataTable/DataTableMobileCards.native.js +139 -38
- package/dist/jsx/components/DataTable/DataTableMobileCards.native.js.map +1 -1
- package/dist/jsx/components/DataTable/DataTableRoot.mjs +33 -6
- package/dist/jsx/components/DataTable/DataTableRoot.mjs.map +1 -1
- package/dist/jsx/components/DataTable/DataTableRoot.native.js +29 -4
- 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/index.native.js +59 -93
- package/dist/jsx/components/DataTable/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableBulkActions/index.mjs +0 -4
- package/dist/jsx/components/DataTableBulkActions/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableBulkActions/index.native.js +0 -4
- package/dist/jsx/components/DataTableBulkActions/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableCell/index.mjs +17 -2
- package/dist/jsx/components/DataTableCell/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableCell/index.native.js +16 -1
- package/dist/jsx/components/DataTableCell/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableDateFilter/index.mjs +0 -7
- package/dist/jsx/components/DataTableDateFilter/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableDateFilter/index.native.js +0 -7
- package/dist/jsx/components/DataTableDateFilter/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableFilterButton/index.mjs +0 -1
- package/dist/jsx/components/DataTableFilterButton/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableFilterButton/index.native.js +0 -1
- package/dist/jsx/components/DataTableFilterChips/FilterChip.mjs +3 -2
- package/dist/jsx/components/DataTableFilterChips/FilterChip.mjs.map +1 -1
- package/dist/jsx/components/DataTableFilterChips/FilterChip.native.js +4 -1
- package/dist/jsx/components/DataTableFilterChips/FilterChip.native.js.map +1 -1
- package/dist/jsx/components/DataTableFilters/index.mjs +0 -1
- package/dist/jsx/components/DataTableFilters/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableFilters/index.native.js +0 -1
- package/dist/jsx/components/DataTableGrouping/index.mjs +0 -8
- package/dist/jsx/components/DataTableGrouping/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableGrouping/index.native.js +0 -8
- package/dist/jsx/components/DataTableGrouping/index.native.js.map +1 -1
- package/dist/jsx/components/DataTablePagination/index.mjs +30 -14
- package/dist/jsx/components/DataTablePagination/index.mjs.map +1 -1
- package/dist/jsx/components/DataTablePagination/index.native.js +30 -14
- package/dist/jsx/components/DataTablePagination/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableSearch/index.mjs +0 -3
- package/dist/jsx/components/DataTableSearch/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableSearch/index.native.js +0 -3
- package/dist/jsx/components/DataTableSearch/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableToolbar/index.mjs +0 -1
- package/dist/jsx/components/DataTableToolbar/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableToolbar/index.native.js +0 -1
- package/dist/jsx/components/DataTableToolbar/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableViewOptions/index.mjs +0 -5
- package/dist/jsx/components/DataTableViewOptions/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableViewOptions/index.native.js +0 -5
- package/dist/jsx/components/DataTableViewOptions/index.native.js.map +1 -1
- package/dist/jsx/components/FilterManager.mjs +0 -1
- package/dist/jsx/components/FilterManager.mjs.map +1 -1
- package/dist/jsx/components/FilterManager.native.js +0 -1
- package/dist/jsx/components/FilterManager.native.js.map +1 -1
- package/dist/jsx/components/FilterOperatorValueEditor/index.mjs +2 -2
- package/dist/jsx/components/FilterOperatorValueEditor/index.mjs.map +1 -1
- package/dist/jsx/components/FilterOperatorValueEditor/index.native.js +2 -2
- package/dist/jsx/components/FilterOperatorValueEditor/index.native.js.map +1 -1
- package/dist/jsx/components/TableInput/index.mjs +3 -2
- package/dist/jsx/components/TableInput/index.mjs.map +1 -1
- package/dist/jsx/components/TableInput/index.native.js +4 -2
- package/dist/jsx/components/TableInput/index.native.js.map +1 -1
- package/dist/jsx/hooks/useDataTable.mjs +24 -8
- package/dist/jsx/hooks/useDataTable.mjs.map +1 -1
- package/dist/jsx/hooks/useDataTable.native.js +28 -8
- package/dist/jsx/hooks/useDataTable.native.js.map +1 -1
- package/dist/jsx/index.js +3 -1
- package/dist/jsx/index.js.map +1 -1
- package/dist/jsx/index.mjs +3 -1
- package/dist/jsx/index.mjs.map +1 -1
- package/dist/jsx/index.native.js +12 -0
- package/dist/jsx/index.native.js.map +1 -1
- package/dist/jsx/shared/devWarn.mjs +43 -0
- package/dist/jsx/shared/devWarn.mjs.map +1 -0
- package/dist/jsx/shared/devWarn.native.js +84 -0
- package/dist/jsx/shared/devWarn.native.js.map +1 -0
- package/dist/jsx/utils/columnAlign.mjs +4 -1
- package/dist/jsx/utils/columnAlign.mjs.map +1 -1
- package/dist/jsx/utils/columnAlign.native.js +4 -1
- package/dist/jsx/utils/columnAlign.native.js.map +1 -1
- package/dist/jsx/utils/filterFields.mjs +5 -0
- package/dist/jsx/utils/filterFields.mjs.map +1 -1
- package/dist/jsx/utils/filterFields.native.js +5 -0
- package/dist/jsx/utils/filterFields.native.js.map +1 -1
- package/dist/jsx/utils/filterUtils.mjs +30 -0
- package/dist/jsx/utils/filterUtils.mjs.map +1 -1
- package/dist/jsx/utils/filterUtils.native.js +50 -0
- package/dist/jsx/utils/filterUtils.native.js.map +1 -1
- package/dist/jsx/utils/money.mjs +104 -0
- package/dist/jsx/utils/money.mjs.map +1 -0
- package/dist/jsx/utils/money.native.js +165 -0
- package/dist/jsx/utils/money.native.js.map +1 -0
- package/dist/jsx/utils/rowAccumulator.mjs +23 -0
- package/dist/jsx/utils/rowAccumulator.mjs.map +1 -0
- package/dist/jsx/utils/rowAccumulator.native.js +51 -0
- package/dist/jsx/utils/rowAccumulator.native.js.map +1 -0
- package/package.json +12 -12
- package/src/components/ColumnHeaderFilter/ColumnHeaderFilter.spec.tsx +142 -7
- package/src/components/ColumnHeaderFilter/ColumnHeaderFilter.stories.tsx +46 -9
- package/src/components/ColumnHeaderFilter/index.tsx +104 -47
- package/src/components/DataTable/DataTable.spec.tsx +5 -3
- package/src/components/DataTable/DataTable.stories.tsx +186 -14
- package/src/components/DataTable/DataTableCardControls.tsx +11 -13
- package/src/components/DataTable/DataTableMobileCards.tsx +162 -39
- package/src/components/DataTable/DataTableRoot.tsx +40 -14
- package/src/components/DataTable/DataTableStateContext.ts +7 -0
- package/src/components/DataTable/cardLayout.spec.tsx +19 -8
- package/src/components/DataTable/columnWidthLayout.spec.tsx +195 -0
- package/src/components/DataTable/dataTableMobileCards.spec.tsx +50 -2
- package/src/components/DataTable/headerSorting.spec.tsx +25 -0
- package/src/components/DataTable/index.native.tsx +80 -124
- package/src/components/DataTable/moneyColumn.spec.tsx +151 -0
- package/src/components/DataTable/nativeCardParity.spec.tsx +95 -0
- package/src/components/DataTable/rowAccumulator.spec.tsx +171 -0
- package/src/components/DataTableBulkActions/index.tsx +0 -4
- package/src/components/DataTableCell/index.tsx +28 -2
- package/src/components/DataTableColumnPinning/DataTableColumnPinning.stories.tsx +0 -4
- package/src/components/DataTableDateFilter/index.tsx +0 -7
- package/src/components/DataTableFilterButton/index.tsx +1 -1
- package/src/components/DataTableFilterChips/FilterChip.spec.tsx +6 -0
- package/src/components/DataTableFilterChips/FilterChip.tsx +3 -2
- package/src/components/DataTableFilters/index.tsx +1 -1
- package/src/components/DataTableGrouping/DataTableGrouping.stories.tsx +0 -4
- package/src/components/DataTableGrouping/index.tsx +1 -13
- package/src/components/DataTablePagination/DataTablePagination.stories.tsx +14 -1
- package/src/components/DataTablePagination/DataTablePagination.width.spec.tsx +51 -0
- package/src/components/DataTablePagination/index.tsx +60 -16
- package/src/components/DataTableSearch/index.tsx +2 -3
- package/src/components/DataTableToolbar/DataTableToolbar.stories.tsx +2 -4
- package/src/components/DataTableToolbar/index.tsx +1 -5
- package/src/components/DataTableViewOptions/index.tsx +2 -13
- package/src/components/FilterManager.tsx +1 -3
- package/src/components/FilterOperatorValueEditor/FilterOperatorValueEditor.spec.tsx +1 -1
- package/src/components/FilterOperatorValueEditor/FilterOperatorValueEditor.stories.tsx +1 -0
- package/src/components/FilterOperatorValueEditor/index.tsx +10 -2
- package/src/components/TableInput/index.native.tsx +3 -2
- package/src/components/TableInput/index.tsx +3 -2
- package/src/hooks/useDataTable.ts +43 -7
- package/src/index.ts +13 -0
- package/src/shared/devWarn.ts +97 -0
- package/src/types.ts +71 -2
- package/src/utils/columnAlign.ts +9 -1
- package/src/utils/filterFields.ts +23 -1
- package/src/utils/filterUtils.ts +50 -1
- package/src/utils/money.spec.ts +156 -0
- package/src/utils/money.ts +202 -0
- package/src/utils/rowAccumulator.ts +136 -0
- package/types/components/ColumnHeaderFilter/index.d.ts +9 -2
- package/types/components/ColumnHeaderFilter/index.d.ts.map +1 -1
- package/types/components/DataTable/DataTableCardControls.d.ts.map +1 -1
- package/types/components/DataTable/DataTableMobileCards.d.ts +42 -8
- package/types/components/DataTable/DataTableMobileCards.d.ts.map +1 -1
- package/types/components/DataTable/DataTableRoot.d.ts +1 -1
- package/types/components/DataTable/DataTableRoot.d.ts.map +1 -1
- package/types/components/DataTable/DataTableStateContext.d.ts +7 -0
- package/types/components/DataTable/DataTableStateContext.d.ts.map +1 -1
- package/types/components/DataTable/index.native.d.ts +1 -1
- package/types/components/DataTable/index.native.d.ts.map +1 -1
- package/types/components/DataTableBulkActions/index.d.ts.map +1 -1
- package/types/components/DataTableCell/index.d.ts.map +1 -1
- package/types/components/DataTableDateFilter/index.d.ts.map +1 -1
- package/types/components/DataTableFilterChips/FilterChip.d.ts.map +1 -1
- package/types/components/DataTableGrouping/index.d.ts.map +1 -1
- package/types/components/DataTablePagination/index.d.ts.map +1 -1
- package/types/components/DataTableSearch/index.d.ts.map +1 -1
- package/types/components/DataTableToolbar/index.d.ts.map +1 -1
- package/types/components/DataTableViewOptions/index.d.ts.map +1 -1
- package/types/components/FilterManager.d.ts.map +1 -1
- package/types/components/FilterOperatorValueEditor/index.d.ts.map +1 -1
- package/types/components/TableInput/index.d.ts.map +1 -1
- package/types/components/TableInput/index.native.d.ts.map +1 -1
- package/types/hooks/useDataTable.d.ts +1 -1
- package/types/hooks/useDataTable.d.ts.map +1 -1
- package/types/index.d.ts +3 -0
- package/types/index.d.ts.map +1 -1
- package/types/shared/devWarn.d.ts +50 -0
- package/types/shared/devWarn.d.ts.map +1 -0
- package/types/types.d.ts +71 -3
- package/types/types.d.ts.map +1 -1
- package/types/utils/columnAlign.d.ts.map +1 -1
- package/types/utils/filterFields.d.ts.map +1 -1
- package/types/utils/filterUtils.d.ts +1 -1
- package/types/utils/filterUtils.d.ts.map +1 -1
- package/types/utils/money.d.ts +94 -0
- package/types/utils/money.d.ts.map +1 -0
- package/types/utils/rowAccumulator.d.ts +107 -0
- package/types/utils/rowAccumulator.d.ts.map +1 -0
|
@@ -42,7 +42,7 @@ function ColumnHeaderFilter({
|
|
|
42
42
|
columnId: _columnId,
|
|
43
43
|
columnLabel,
|
|
44
44
|
columnType,
|
|
45
|
-
filterValue
|
|
45
|
+
filterValue,
|
|
46
46
|
onFilterChange,
|
|
47
47
|
options,
|
|
48
48
|
isFiltered
|
|
@@ -50,10 +50,24 @@ function ColumnHeaderFilter({
|
|
|
50
50
|
const {
|
|
51
51
|
knobProps
|
|
52
52
|
} = (0, import_theme.useResolvedKnobs)();
|
|
53
|
+
const idleColor = (0, import_theme.useGlyphColor)("$color11");
|
|
54
|
+
const activeColor = (0, import_theme.useAccentOnSurface)();
|
|
55
|
+
const glyphColor = isFiltered ? activeColor : idleColor;
|
|
56
|
+
const popoverScope = (0, import_react2.useId)();
|
|
57
|
+
const triggerRef = (0, import_react2.useRef)(null);
|
|
58
|
+
const returnFocusRef = (0, import_react2.useRef)(true);
|
|
59
|
+
(0, import_theme.ensureCompositeFocusRing)();
|
|
53
60
|
const iconPx = (0, import_chromeIcons.iconSizeForToken)(String(knobProps.sizeToken));
|
|
54
61
|
const [open, setOpen] = (0, import_react2.useState)(false);
|
|
55
|
-
const [operator, setOperator] = (0, import_react2.useState)(
|
|
62
|
+
const [operator, setOperator] = (0, import_react2.useState)(() => (0, import_filterFields.defaultOperatorForFilterType)(columnType));
|
|
56
63
|
const [value, setValue] = (0, import_react2.useState)("");
|
|
64
|
+
const handleOpenChange = next => {
|
|
65
|
+
if (next && !open) {
|
|
66
|
+
setOperator(filterValue?.operator ?? (0, import_filterFields.defaultOperatorForFilterType)(columnType));
|
|
67
|
+
setValue(filterValue?.value == null ? "" : String(filterValue.value));
|
|
68
|
+
}
|
|
69
|
+
setOpen(next);
|
|
70
|
+
};
|
|
57
71
|
const handleApply = () => {
|
|
58
72
|
if ((0, import_filterFields.operatorNeedsNoValue)(operator)) {
|
|
59
73
|
onFilterChange({
|
|
@@ -70,54 +84,76 @@ function ColumnHeaderFilter({
|
|
|
70
84
|
};
|
|
71
85
|
const handleClear = () => {
|
|
72
86
|
setValue("");
|
|
73
|
-
setOperator(
|
|
87
|
+
setOperator((0, import_filterFields.defaultOperatorForFilterType)(columnType));
|
|
74
88
|
onFilterChange(void 0);
|
|
75
89
|
};
|
|
76
90
|
return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.Popover, {
|
|
91
|
+
scope: popoverScope,
|
|
77
92
|
open,
|
|
78
|
-
onOpenChange:
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
82
|
-
|
|
83
|
-
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
alignItems: "center",
|
|
87
|
-
justifyContent: "center",
|
|
88
|
-
marginVertical: -FILTER_TRIGGER_OUTSET,
|
|
89
|
-
marginHorizontal: -FILTER_TRIGGER_OUTSET,
|
|
90
|
-
hitSlop: (0, import_theme.pressTargetHitSlop)(FILTER_TRIGGER_VISUAL),
|
|
91
|
-
opacity: isFiltered ? 1 : 0.7,
|
|
92
|
-
hoverStyle: {
|
|
93
|
-
opacity: 1
|
|
94
|
-
},
|
|
95
|
-
pressStyle: {
|
|
96
|
-
opacity: 0.9
|
|
97
|
-
},
|
|
98
|
-
onPress: e => {
|
|
99
|
-
e.stopPropagation();
|
|
100
|
-
setOpen(true);
|
|
101
|
-
},
|
|
102
|
-
role: "button",
|
|
103
|
-
"aria-label": `Filter column ${columnLabel}`,
|
|
93
|
+
onOpenChange: handleOpenChange,
|
|
94
|
+
disableFocus: true,
|
|
95
|
+
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Popover.Anchor, {
|
|
96
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Tooltip, {
|
|
97
|
+
content: isFiltered ? (0, import_t.t)("Edit filter") : (0, import_t.t)("Filter this column"),
|
|
98
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Popover.Trigger, {
|
|
99
|
+
scope: popoverScope,
|
|
100
|
+
asChild: true,
|
|
104
101
|
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
|
|
105
|
-
|
|
106
|
-
|
|
102
|
+
ref: triggerRef,
|
|
103
|
+
cursor: "pointer",
|
|
104
|
+
...(0, import_theme.pressTargetStyle)(),
|
|
107
105
|
alignItems: "center",
|
|
108
106
|
justifyContent: "center",
|
|
109
|
-
|
|
110
|
-
|
|
107
|
+
marginVertical: -FILTER_TRIGGER_OUTSET,
|
|
108
|
+
marginHorizontal: -FILTER_TRIGGER_OUTSET,
|
|
109
|
+
hitSlop: (0, import_theme.pressTargetHitSlop)(FILTER_TRIGGER_VISUAL),
|
|
110
|
+
className: "mp-chip-dismiss",
|
|
111
|
+
tabIndex: 0,
|
|
112
|
+
onKeyDown: event => {
|
|
113
|
+
if (event.key !== "Enter" && event.key !== " ") return;
|
|
114
|
+
event.preventDefault();
|
|
115
|
+
event.stopPropagation();
|
|
116
|
+
handleOpenChange(true);
|
|
117
|
+
},
|
|
118
|
+
onPress: e => {
|
|
119
|
+
e.stopPropagation();
|
|
120
|
+
handleOpenChange(true);
|
|
111
121
|
},
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
122
|
+
role: "button",
|
|
123
|
+
"aria-label": `Filter column ${columnLabel}`,
|
|
124
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
|
|
125
|
+
className: "mp-chip-dismiss-ring",
|
|
126
|
+
padding: "$1",
|
|
127
|
+
borderRadius: "$2",
|
|
128
|
+
alignItems: "center",
|
|
129
|
+
justifyContent: "center",
|
|
130
|
+
hoverStyle: {
|
|
131
|
+
backgroundColor: "$color4"
|
|
132
|
+
},
|
|
133
|
+
pressStyle: {
|
|
134
|
+
backgroundColor: "$color5"
|
|
135
|
+
},
|
|
136
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react.FunnelIcon, {
|
|
137
|
+
size: iconPx,
|
|
138
|
+
color: glyphColor,
|
|
139
|
+
weight: isFiltered ? "fill" : "regular"
|
|
140
|
+
})
|
|
116
141
|
})
|
|
117
142
|
})
|
|
118
143
|
})
|
|
119
144
|
})
|
|
120
145
|
}), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.Popover.Content, {
|
|
146
|
+
scope: popoverScope,
|
|
147
|
+
onPointerDownOutside: () => {
|
|
148
|
+
returnFocusRef.current = false;
|
|
149
|
+
},
|
|
150
|
+
onCloseAutoFocus: event => {
|
|
151
|
+
event.preventDefault();
|
|
152
|
+
if (import_tamagui.isWeb && returnFocusRef.current) {
|
|
153
|
+
triggerRef.current?.focus();
|
|
154
|
+
}
|
|
155
|
+
returnFocusRef.current = true;
|
|
156
|
+
},
|
|
121
157
|
...knobProps.elevatedSurface,
|
|
122
158
|
...knobProps.panelPadding,
|
|
123
159
|
minWidth: 240,
|
|
@@ -131,6 +167,7 @@ function ColumnHeaderFilter({
|
|
|
131
167
|
opacity: 0
|
|
132
168
|
},
|
|
133
169
|
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Popover.Arrow, {
|
|
170
|
+
scope: popoverScope,
|
|
134
171
|
borderColor: "$borderColor",
|
|
135
172
|
backgroundColor: "$color1"
|
|
136
173
|
}), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {
|
|
@@ -154,7 +191,6 @@ function ColumnHeaderFilter({
|
|
|
154
191
|
justifyContent: "flex-end",
|
|
155
192
|
children: [isFiltered && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
156
193
|
size: knobProps.sizeToken,
|
|
157
|
-
variant: "outlined",
|
|
158
194
|
onPress: handleClear,
|
|
159
195
|
children: (0, import_t.t)("Clear")
|
|
160
196
|
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
@@ -45,7 +45,7 @@ function ColumnHeaderFilter(param) {
|
|
|
45
45
|
columnId: _columnId,
|
|
46
46
|
columnLabel,
|
|
47
47
|
columnType,
|
|
48
|
-
filterValue
|
|
48
|
+
filterValue,
|
|
49
49
|
onFilterChange,
|
|
50
50
|
options,
|
|
51
51
|
isFiltered
|
|
@@ -53,10 +53,27 @@ function ColumnHeaderFilter(param) {
|
|
|
53
53
|
var {
|
|
54
54
|
knobProps
|
|
55
55
|
} = (0, import_theme.useResolvedKnobs)();
|
|
56
|
+
var idleColor = (0, import_theme.useGlyphColor)("$color11");
|
|
57
|
+
var activeColor = (0, import_theme.useAccentOnSurface)();
|
|
58
|
+
var glyphColor = isFiltered ? activeColor : idleColor;
|
|
59
|
+
var popoverScope = (0, import_react2.useId)();
|
|
60
|
+
var triggerRef = (0, import_react2.useRef)(null);
|
|
61
|
+
var returnFocusRef = (0, import_react2.useRef)(true);
|
|
62
|
+
(0, import_theme.ensureCompositeFocusRing)();
|
|
56
63
|
var iconPx = (0, import_chromeIcons.iconSizeForToken)(String(knobProps.sizeToken));
|
|
57
64
|
var [open, setOpen] = (0, import_react2.useState)(false);
|
|
58
|
-
var [operator, setOperator] = (0, import_react2.useState)(
|
|
65
|
+
var [operator, setOperator] = (0, import_react2.useState)(function () {
|
|
66
|
+
return (0, import_filterFields.defaultOperatorForFilterType)(columnType);
|
|
67
|
+
});
|
|
59
68
|
var [value, setValue] = (0, import_react2.useState)("");
|
|
69
|
+
var handleOpenChange = function handleOpenChange2(next) {
|
|
70
|
+
if (next && !open) {
|
|
71
|
+
var _ref;
|
|
72
|
+
setOperator((_ref = filterValue === null || filterValue === void 0 ? void 0 : filterValue.operator) !== null && _ref !== void 0 ? _ref : (0, import_filterFields.defaultOperatorForFilterType)(columnType));
|
|
73
|
+
setValue((filterValue === null || filterValue === void 0 ? void 0 : filterValue.value) == null ? "" : String(filterValue.value));
|
|
74
|
+
}
|
|
75
|
+
setOpen(next);
|
|
76
|
+
};
|
|
60
77
|
var handleApply = function handleApply2() {
|
|
61
78
|
if ((0, import_filterFields.operatorNeedsNoValue)(operator)) {
|
|
62
79
|
onFilterChange({
|
|
@@ -73,64 +90,93 @@ function ColumnHeaderFilter(param) {
|
|
|
73
90
|
};
|
|
74
91
|
var handleClear = function handleClear2() {
|
|
75
92
|
setValue("");
|
|
76
|
-
setOperator(
|
|
93
|
+
setOperator((0, import_filterFields.defaultOperatorForFilterType)(columnType));
|
|
77
94
|
onFilterChange(void 0);
|
|
78
95
|
};
|
|
79
96
|
return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.Popover, {
|
|
97
|
+
scope: popoverScope,
|
|
80
98
|
open,
|
|
81
|
-
onOpenChange:
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
opacity: 1
|
|
107
|
-
},
|
|
108
|
-
pressStyle: {
|
|
109
|
-
opacity: 0.9
|
|
110
|
-
},
|
|
111
|
-
onPress: function onPress(e) {
|
|
112
|
-
e.stopPropagation();
|
|
113
|
-
setOpen(true);
|
|
114
|
-
},
|
|
115
|
-
role: "button",
|
|
116
|
-
"aria-label": `Filter column ${columnLabel}`,
|
|
117
|
-
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
|
|
118
|
-
padding: "$1",
|
|
119
|
-
borderRadius: "$2",
|
|
99
|
+
onOpenChange: handleOpenChange,
|
|
100
|
+
disableFocus: true,
|
|
101
|
+
children: [
|
|
102
|
+
/* Inherit the nearest Popover before entering Tooltip. An explicit
|
|
103
|
+
scope makes Tamagui register web anchors only on mouse hover,
|
|
104
|
+
leaving keyboard opens without a reference. */
|
|
105
|
+
/* @__PURE__ */
|
|
106
|
+
(0, import_jsx_runtime.jsx)(import_tamagui.Popover.Anchor, {
|
|
107
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Tooltip, {
|
|
108
|
+
content: isFiltered ? (0, import_t.t)("Edit filter") : (0, import_t.t)("Filter this column"),
|
|
109
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Popover.Trigger, {
|
|
110
|
+
scope: popoverScope,
|
|
111
|
+
asChild: true,
|
|
112
|
+
children: (
|
|
113
|
+
/* LC-54 amendment (2026-08-13): the grown press target NEVER
|
|
114
|
+
paints — hover/press fills on this box spread across the full
|
|
115
|
+
44px floor and bled into the neighboring header rows via the
|
|
116
|
+
negative outsets. Painted hover and keyboard focus feedback
|
|
117
|
+
ride the glyph-scale ring inside
|
|
118
|
+
(Chip dismiss anatomy). */
|
|
119
|
+
/* @__PURE__ */
|
|
120
|
+
(0, import_jsx_runtime.jsx)(import_tamagui.View, {
|
|
121
|
+
ref: triggerRef,
|
|
122
|
+
cursor: "pointer",
|
|
123
|
+
...(0, import_theme.pressTargetStyle)(),
|
|
120
124
|
alignItems: "center",
|
|
121
125
|
justifyContent: "center",
|
|
122
|
-
|
|
123
|
-
|
|
126
|
+
marginVertical: -FILTER_TRIGGER_OUTSET,
|
|
127
|
+
marginHorizontal: -FILTER_TRIGGER_OUTSET,
|
|
128
|
+
hitSlop: (0, import_theme.pressTargetHitSlop)(FILTER_TRIGGER_VISUAL),
|
|
129
|
+
// Enabled glyphs keep readable ink; hue and weight distinguish
|
|
130
|
+
// an applied filter from the secondary-color idle affordance.
|
|
131
|
+
// Shared unpainted press-floor / painted glyph-ring anatomy.
|
|
132
|
+
className: "mp-chip-dismiss",
|
|
133
|
+
tabIndex: 0,
|
|
134
|
+
onKeyDown: function onKeyDown(event) {
|
|
135
|
+
if (event.key !== "Enter" && event.key !== " ") return;
|
|
136
|
+
event.preventDefault();
|
|
137
|
+
event.stopPropagation();
|
|
138
|
+
handleOpenChange(true);
|
|
139
|
+
},
|
|
140
|
+
onPress: function onPress(e) {
|
|
141
|
+
e.stopPropagation();
|
|
142
|
+
handleOpenChange(true);
|
|
124
143
|
},
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
144
|
+
role: "button",
|
|
145
|
+
"aria-label": `Filter column ${columnLabel}`,
|
|
146
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
|
|
147
|
+
className: "mp-chip-dismiss-ring",
|
|
148
|
+
padding: "$1",
|
|
149
|
+
borderRadius: "$2",
|
|
150
|
+
alignItems: "center",
|
|
151
|
+
justifyContent: "center",
|
|
152
|
+
hoverStyle: {
|
|
153
|
+
backgroundColor: "$color4"
|
|
154
|
+
},
|
|
155
|
+
pressStyle: {
|
|
156
|
+
backgroundColor: "$color5"
|
|
157
|
+
},
|
|
158
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react.FunnelIcon, {
|
|
159
|
+
size: iconPx,
|
|
160
|
+
color: glyphColor,
|
|
161
|
+
weight: isFiltered ? "fill" : "regular"
|
|
162
|
+
})
|
|
129
163
|
})
|
|
130
|
-
})
|
|
131
|
-
})
|
|
164
|
+
}))
|
|
165
|
+
})
|
|
132
166
|
})
|
|
133
167
|
}), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.Popover.Content, {
|
|
168
|
+
scope: popoverScope,
|
|
169
|
+
onPointerDownOutside: function onPointerDownOutside() {
|
|
170
|
+
returnFocusRef.current = false;
|
|
171
|
+
},
|
|
172
|
+
onCloseAutoFocus: function onCloseAutoFocus(event) {
|
|
173
|
+
event.preventDefault();
|
|
174
|
+
if (import_tamagui.isWeb && returnFocusRef.current) {
|
|
175
|
+
var _triggerRef_current;
|
|
176
|
+
(_triggerRef_current = triggerRef.current) === null || _triggerRef_current === void 0 ? void 0 : _triggerRef_current.focus();
|
|
177
|
+
}
|
|
178
|
+
returnFocusRef.current = true;
|
|
179
|
+
},
|
|
134
180
|
...knobProps.elevatedSurface,
|
|
135
181
|
...knobProps.panelPadding,
|
|
136
182
|
minWidth: 240,
|
|
@@ -144,6 +190,7 @@ function ColumnHeaderFilter(param) {
|
|
|
144
190
|
opacity: 0
|
|
145
191
|
},
|
|
146
192
|
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Popover.Arrow, {
|
|
193
|
+
scope: popoverScope,
|
|
147
194
|
borderColor: "$borderColor",
|
|
148
195
|
backgroundColor: "$color1"
|
|
149
196
|
}), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {
|
|
@@ -169,7 +216,6 @@ function ColumnHeaderFilter(param) {
|
|
|
169
216
|
justifyContent: "flex-end",
|
|
170
217
|
children: [isFiltered && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
171
218
|
size: knobProps.sizeToken,
|
|
172
|
-
variant: "outlined",
|
|
173
219
|
onPress: handleClear,
|
|
174
220
|
children: (0, import_t.t)("Clear")
|
|
175
221
|
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","ColumnHeaderFilter_exports","__export","ColumnHeaderFilter","module","exports","import_jsx_runtime","require","import_react","import_forms","import_theme","import_react2","import_components","import_tamagui","import_t","import_chromeIcons","import_filterFields","import_FilterOperatorValueEditor","FILTER_TRIGGER_VISUAL","FILTER_TRIGGER_OUTSET","Math","max","ceil","MIN_PRESS_TARGET","param","columnId","_columnId","columnLabel","columnType","filterValue","
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","ColumnHeaderFilter_exports","__export","ColumnHeaderFilter","module","exports","import_jsx_runtime","require","import_react","import_forms","import_theme","import_react2","import_components","import_tamagui","import_t","import_chromeIcons","import_filterFields","import_FilterOperatorValueEditor","FILTER_TRIGGER_VISUAL","FILTER_TRIGGER_OUTSET","Math","max","ceil","MIN_PRESS_TARGET","param","columnId","_columnId","columnLabel","columnType","filterValue","onFilterChange","options","isFiltered","knobProps","useResolvedKnobs","idleColor","useGlyphColor","activeColor","useAccentOnSurface","glyphColor","popoverScope","useId","triggerRef","useRef","returnFocusRef","ensureCompositeFocusRing","iconPx","iconSizeForToken","String","sizeToken","open","setOpen","useState","operator","setOperator","defaultOperatorForFilterType","setValue","handleOpenChange","handleOpenChange2","next","_ref","handleApply","handleApply2","operatorNeedsNoValue","handleClear","handleClear2","jsxs","Popover","scope","onOpenChange","disableFocus","children","jsx","Anchor","Tooltip","content","t","Trigger","asChild","View","ref","cursor","pressTargetStyle","alignItems","justifyContent","marginVertical","marginHorizontal","hitSlop","pressTargetHitSlop","className","tabIndex","onKeyDown","event","key","preventDefault","stopPropagation","onPress","e","role","padding","borderRadius","hoverStyle","backgroundColor","pressStyle","FunnelIcon","size","color","weight","Content","onPointerDownOutside","current","onCloseAutoFocus","isWeb","_triggerRef_current","focus","elevatedSurface","panelPadding","minWidth","transition","enterStyle","y","opacity","exitStyle"],"sources":["../../../../src/components/ColumnHeaderFilter/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -81,7 +81,6 @@ function DataTableCardControls({
|
|
|
81
81
|
asChild: true,
|
|
82
82
|
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
83
83
|
size: knobProps.sizeToken,
|
|
84
|
-
variant: "outlined",
|
|
85
84
|
icon: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react.CaretUpDownIcon, {
|
|
86
85
|
size: chrome.iconPx
|
|
87
86
|
}),
|
|
@@ -87,7 +87,6 @@ function DataTableCardControls(param) {
|
|
|
87
87
|
asChild: true,
|
|
88
88
|
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
89
89
|
size: knobProps.sizeToken,
|
|
90
|
-
variant: "outlined",
|
|
91
90
|
icon: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react.CaretUpDownIcon, {
|
|
92
91
|
size: chrome.iconPx
|
|
93
92
|
}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","DataTableCardControls_exports","__export","DataTableCardControls","module","exports","import_jsx_runtime","require","import_react","import_components","import_forms","import_theme","import_react2","import_tamagui","import_react_i18next","import_withInterp","import_DataTableFilters","import_dataTableChrome","getColumnLabel","column","columnDef","header","id","param","table","enableSorting","enableFiltering","availableColumns","compact","disabled","_table_getState_sorting","t","useTranslation","knobProps","disabledState","useResolvedKnobs","component","chrome","dataTableChrome","String","sizeToken","sortMenuOpen","setSortMenuOpen","useState","sortableColumns","getVisibleLeafColumns","filter","col","getCanSort","activeSort","getState","sorting","activeSortColumn","getColumn","sortLabel","desc","jsxs","XStack","alignItems","flexWrap","gap","paddingVertical","role","children","length","DropdownMenu","open","onOpenChange","jsx","Trigger","asChild","Button","size","
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","DataTableCardControls_exports","__export","DataTableCardControls","module","exports","import_jsx_runtime","require","import_react","import_components","import_forms","import_theme","import_react2","import_tamagui","import_react_i18next","import_withInterp","import_DataTableFilters","import_dataTableChrome","getColumnLabel","column","columnDef","header","id","param","table","enableSorting","enableFiltering","availableColumns","compact","disabled","_table_getState_sorting","t","useTranslation","knobProps","disabledState","useResolvedKnobs","component","chrome","dataTableChrome","String","sizeToken","sortMenuOpen","setSortMenuOpen","useState","sortableColumns","getVisibleLeafColumns","filter","col","getCanSort","activeSort","getState","sorting","activeSortColumn","getColumn","sortLabel","desc","jsxs","XStack","alignItems","flexWrap","gap","paddingVertical","role","children","length","DropdownMenu","open","onOpenChange","jsx","Trigger","asChild","Button","size","icon","CaretUpDownIcon","iconPx","Content","Label","map","sorted","getIsSorted","Item","closeOnSelect","CaretDownIcon","style","transform","withInterp","onSelect","toggleSorting","clearSorting","View","chromeKnobProps","pointerEvents"],"sources":["../../../../src/components/DataTable/DataTableCardControls.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -22,7 +22,9 @@ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
|
22
22
|
}), mod);
|
|
23
23
|
var DataTableMobileCards_exports = {};
|
|
24
24
|
__export(DataTableMobileCards_exports, {
|
|
25
|
-
DataTableMobileCards: () => DataTableMobileCards
|
|
25
|
+
DataTableMobileCards: () => DataTableMobileCards,
|
|
26
|
+
classifyCardField: () => classifyCardField,
|
|
27
|
+
getColumnLabel: () => getColumnLabel
|
|
26
28
|
});
|
|
27
29
|
module.exports = __toCommonJS(DataTableMobileCards_exports);
|
|
28
30
|
var import_react = require("@phosphor-icons/react");
|
|
@@ -42,6 +44,27 @@ function getColumnLabel(cell) {
|
|
|
42
44
|
if (typeof metaLabel === "string" && metaLabel) return metaLabel;
|
|
43
45
|
return typeof columnDef.header === "string" ? columnDef.header : columnDef.id || cell.column.id;
|
|
44
46
|
}
|
|
47
|
+
const selfNamingFields = /* @__PURE__ */new Set(["checkbox", "switch", "rating", "progress", "image", "signature", "fileupload", "colorpicker", "barcode", "geolocation"]);
|
|
48
|
+
const indicatorIds = /* @__PURE__ */new Set(["status", "priority", "workflow_state", "state"]);
|
|
49
|
+
const dateLike = /^\d{4}-\d{2}-\d{2}([T ]|$)|^\d{1,2}\/\d{1,2}\/\d{2,4}$/;
|
|
50
|
+
const numberLike = /^[+\-−]?[\d,\s]*\d(\.\d+)?%?$/;
|
|
51
|
+
function classifyCardField(cell) {
|
|
52
|
+
const def = cell.column.columnDef;
|
|
53
|
+
const id = String(cell.column.id ?? "");
|
|
54
|
+
const role = def.meta?.role;
|
|
55
|
+
if (role === "hidden" || role === "skip") return "skip";
|
|
56
|
+
if (role === "actions" || id.startsWith("_") || def.field && selfNamingFields.has(def.field)) {
|
|
57
|
+
return "control";
|
|
58
|
+
}
|
|
59
|
+
const raw = typeof cell.getValue === "function" ? cell.getValue() : void 0;
|
|
60
|
+
if (raw == null || typeof raw === "string" && raw.trim() === "") return "skip";
|
|
61
|
+
if (role === "indicator" || indicatorIds.has(id)) return "bare";
|
|
62
|
+
if (typeof raw === "string") {
|
|
63
|
+
const value = raw.trim();
|
|
64
|
+
return numberLike.test(value) || dateLike.test(value) ? "figure" : "bare";
|
|
65
|
+
}
|
|
66
|
+
return "figure";
|
|
67
|
+
}
|
|
45
68
|
function DataTableMobileCards({
|
|
46
69
|
tableRows,
|
|
47
70
|
enableRowSelection = false,
|
|
@@ -72,17 +95,29 @@ function DataTableMobileCards({
|
|
|
72
95
|
compact
|
|
73
96
|
});
|
|
74
97
|
const tableZebraOn = knobProps.tableZebra === "on";
|
|
98
|
+
const renderCell = (0, import_react2.useCallback)((cell, index, rowData) => /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.TableCellContext.Provider, {
|
|
99
|
+
value: {
|
|
100
|
+
inTableCell: true,
|
|
101
|
+
isHeader: false
|
|
102
|
+
},
|
|
103
|
+
children: renderCellContent(cell, index, rowData)
|
|
104
|
+
}), [renderCellContent]);
|
|
75
105
|
const renderMobileCard = (0, import_react2.useCallback)((row, index) => {
|
|
76
106
|
const rowData = row.original;
|
|
77
107
|
const visibleCells = row.getVisibleCells();
|
|
78
108
|
const [titleCell, ...detailCells] = visibleCells;
|
|
79
109
|
const showDelete = showDeleteRow && !readOnly;
|
|
110
|
+
const bare = [];
|
|
111
|
+
const figures = [];
|
|
112
|
+
const controls = [];
|
|
113
|
+
for (const cell of detailCells) {
|
|
114
|
+
const kind = classifyCardField(cell);
|
|
115
|
+
if (kind === "bare") bare.push(cell);else if (kind === "figure") figures.push(cell);else if (kind === "control") controls.push(cell);
|
|
116
|
+
}
|
|
117
|
+
const hasBody = bare.length > 0 || figures.length > 0 || controls.length > 0;
|
|
80
118
|
return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.View, {
|
|
81
119
|
testID: "data-table-card",
|
|
82
|
-
...knobProps.surface,
|
|
83
120
|
...knobProps.cardSurface,
|
|
84
|
-
elevation: knobProps.elevation,
|
|
85
|
-
borderColor: "$color6",
|
|
86
121
|
...(tableZebraOn && index % 2 === 1 ? {
|
|
87
122
|
backgroundColor: "$color2"
|
|
88
123
|
} : {}),
|
|
@@ -94,7 +129,7 @@ function DataTableMobileCards({
|
|
|
94
129
|
children: [/* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
|
|
95
130
|
alignItems: "center",
|
|
96
131
|
gap: "$2",
|
|
97
|
-
...(
|
|
132
|
+
...(hasBody ? {
|
|
98
133
|
paddingBottom: "$2",
|
|
99
134
|
marginBottom: "$2",
|
|
100
135
|
...import_theme.hairline.bottom,
|
|
@@ -119,16 +154,11 @@ function DataTableMobileCards({
|
|
|
119
154
|
flex: 1,
|
|
120
155
|
minWidth: 0,
|
|
121
156
|
"aria-label": getColumnLabel(titleCell),
|
|
157
|
+
accessibilityLabel: getColumnLabel(titleCell),
|
|
122
158
|
...{
|
|
123
159
|
"data-card-slot": "title"
|
|
124
160
|
},
|
|
125
|
-
children:
|
|
126
|
-
value: {
|
|
127
|
-
inTableCell: true,
|
|
128
|
-
isHeader: false
|
|
129
|
-
},
|
|
130
|
-
children: renderCellContent(titleCell, index, rowData)
|
|
131
|
-
})
|
|
161
|
+
children: renderCell(titleCell, index, rowData)
|
|
132
162
|
}) : /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
|
|
133
163
|
flex: 1
|
|
134
164
|
}), showRowNumbers && /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.Text, {
|
|
@@ -149,32 +179,69 @@ function DataTableMobileCards({
|
|
|
149
179
|
row: index + 1
|
|
150
180
|
})
|
|
151
181
|
})]
|
|
152
|
-
}),
|
|
153
|
-
|
|
182
|
+
}), bare.length > 0 ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.XStack, {
|
|
183
|
+
flexWrap: "wrap",
|
|
154
184
|
alignItems: "center",
|
|
155
|
-
paddingVertical: "$1.5",
|
|
156
185
|
gap: "$2",
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
|
|
165
|
-
flex: 1,
|
|
186
|
+
...{
|
|
187
|
+
"data-card-slot": "meta"
|
|
188
|
+
},
|
|
189
|
+
children: bare.map((cell, i) => /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
|
|
190
|
+
alignItems: "center",
|
|
191
|
+
gap: "$2",
|
|
192
|
+
flexShrink: 1,
|
|
166
193
|
minWidth: 0,
|
|
167
|
-
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
children:
|
|
173
|
-
})
|
|
174
|
-
|
|
194
|
+
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.VisuallyHidden, {
|
|
195
|
+
children: `${getColumnLabel(cell)}: `
|
|
196
|
+
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
|
|
197
|
+
flexShrink: 1,
|
|
198
|
+
minWidth: 0,
|
|
199
|
+
children: renderCell(cell, index, rowData)
|
|
200
|
+
}), i < bare.length - 1 ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
|
|
201
|
+
fontSize: knobProps.sizeToken,
|
|
202
|
+
color: "$color8",
|
|
203
|
+
"aria-hidden": true,
|
|
204
|
+
accessibilityElementsHidden: true,
|
|
205
|
+
importantForAccessibility: "no-hide-descendants",
|
|
206
|
+
children: "\xB7"
|
|
207
|
+
}) : null]
|
|
208
|
+
}, cell.id))
|
|
209
|
+
}) : null, figures.length > 0 ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.XStack, {
|
|
210
|
+
flexWrap: "wrap",
|
|
211
|
+
alignItems: "center",
|
|
212
|
+
gap: "$3",
|
|
213
|
+
paddingTop: bare.length > 0 ? "$1.5" : 0,
|
|
214
|
+
...{
|
|
215
|
+
"data-card-slot": "figure"
|
|
216
|
+
},
|
|
217
|
+
children: figures.map(cell => /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
|
|
218
|
+
alignItems: "center",
|
|
219
|
+
gap: "$1.5",
|
|
220
|
+
flexShrink: 1,
|
|
221
|
+
minWidth: 0,
|
|
222
|
+
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
|
|
223
|
+
fontSize: knobProps.sizeToken,
|
|
224
|
+
color: "$color10",
|
|
225
|
+
fontWeight: "500",
|
|
226
|
+
children: getColumnLabel(cell)
|
|
227
|
+
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
|
|
228
|
+
flexShrink: 1,
|
|
229
|
+
minWidth: 0,
|
|
230
|
+
children: renderCell(cell, index, rowData)
|
|
231
|
+
})]
|
|
232
|
+
}, cell.id))
|
|
233
|
+
}) : null, controls.map(cell => /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.View, {
|
|
234
|
+
paddingTop: "$2",
|
|
235
|
+
minWidth: 0,
|
|
236
|
+
...{
|
|
237
|
+
"data-card-slot": "control"
|
|
238
|
+
},
|
|
239
|
+
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.VisuallyHidden, {
|
|
240
|
+
children: `${getColumnLabel(cell)}: `
|
|
241
|
+
}), renderCell(cell, index, rowData)]
|
|
175
242
|
}, cell.id))]
|
|
176
243
|
}, `${row.id}-${index}`);
|
|
177
|
-
}, [enableRowSelection, showRowNumbers, showDeleteRow, readOnly, disabled, dataLength, minRows,
|
|
244
|
+
}, [enableRowSelection, showRowNumbers, showDeleteRow, readOnly, disabled, dataLength, minRows, renderCell, onDeleteRow, compact, knobProps, tableZebraOn, t, selectRowLabel, getRowPressProps]);
|
|
178
245
|
return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.View, {
|
|
179
246
|
flexDirection: "column",
|
|
180
247
|
...knobProps.gap,
|