@multiplatform.one/table 7.10.0 → 7.15.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 +61 -1
- package/dist/cjs/components/ChildTable/index.cjs +8 -2
- package/dist/cjs/components/ChildTable/index.native.js +8 -2
- package/dist/cjs/components/ChildTable/index.native.js.map +1 -1
- package/dist/cjs/components/ColumnHeaderFilter/index.cjs +77 -111
- package/dist/cjs/components/ColumnHeaderFilter/index.native.js +89 -129
- package/dist/cjs/components/ColumnHeaderFilter/index.native.js.map +1 -1
- package/dist/cjs/components/DataTable/DataTableCardControls.cjs +90 -54
- package/dist/cjs/components/DataTable/DataTableCardControls.native.js +93 -56
- package/dist/cjs/components/DataTable/DataTableCardControls.native.js.map +1 -1
- package/dist/cjs/components/DataTable/DataTableRoot.cjs +68 -9
- package/dist/cjs/components/DataTable/DataTableRoot.native.js +78 -11
- package/dist/cjs/components/DataTable/DataTableRoot.native.js.map +1 -1
- package/dist/cjs/components/DataTableCell/CellModalEditor.cjs +72 -70
- package/dist/cjs/components/DataTableCell/index.cjs +2 -2
- package/dist/cjs/components/DataTableCell/index.native.js +2 -11
- package/dist/cjs/components/DataTableCell/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableDateFilter/index.cjs +135 -158
- package/dist/cjs/components/DataTableDateFilter/index.native.js +153 -183
- package/dist/cjs/components/DataTableDateFilter/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableExport/index.cjs +122 -139
- package/dist/cjs/components/DataTableExport/index.native.js +135 -157
- package/dist/cjs/components/DataTableExport/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableFilterButton/index.cjs +14 -0
- package/dist/cjs/components/DataTableFilterButton/index.native.js +15 -0
- package/dist/cjs/components/DataTableFilterButton/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableGrouping/index.cjs +192 -212
- package/dist/cjs/components/DataTableGrouping/index.native.js +209 -230
- package/dist/cjs/components/DataTableGrouping/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableSearch/index.cjs +103 -115
- package/dist/cjs/components/DataTableSearch/index.native.js +111 -123
- package/dist/cjs/components/DataTableSearch/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableToolbar/index.cjs +161 -101
- package/dist/cjs/components/DataTableToolbar/index.native.js +168 -109
- package/dist/cjs/components/DataTableToolbar/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableViewOptions/index.cjs +38 -54
- package/dist/cjs/components/DataTableViewOptions/index.native.js +40 -56
- package/dist/cjs/components/DataTableViewOptions/index.native.js.map +1 -1
- package/dist/cjs/components/FilterOperatorValueEditor/index.cjs +3 -11
- package/dist/cjs/components/FilterOperatorValueEditor/index.native.js +3 -11
- package/dist/cjs/components/FilterOperatorValueEditor/index.native.js.map +1 -1
- package/dist/cjs/components/SimpleTable/index.cjs +2 -6
- package/dist/cjs/components/SimpleTable/index.native.js +2 -6
- package/dist/cjs/components/SimpleTable/index.native.js.map +1 -1
- package/dist/cjs/components/TableInput/RowDetailEditor.cjs +190 -0
- package/dist/cjs/components/TableInput/RowDetailEditor.native.js +172 -0
- package/dist/cjs/components/TableInput/RowDetailEditor.native.js.map +1 -0
- package/dist/cjs/components/TableInput/index.cjs +42 -5
- package/dist/cjs/components/TableInput/index.native.js +64 -1
- package/dist/cjs/components/TableInput/index.native.js.map +1 -1
- package/dist/cjs/components/TableInput/shared.cjs +8 -0
- package/dist/cjs/components/TableInput/shared.native.js +10 -0
- package/dist/cjs/components/TableInput/shared.native.js.map +1 -1
- package/dist/cjs/hooks/useDataTable.cjs +43 -2
- package/dist/cjs/hooks/useDataTable.native.js +49 -3
- package/dist/cjs/hooks/useDataTable.native.js.map +1 -1
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/utils/rowPress.cjs +4 -1
- package/dist/cjs/utils/rowPress.native.js +4 -1
- package/dist/cjs/utils/rowPress.native.js.map +1 -1
- package/dist/esm/components/ChildTable/index.mjs +8 -2
- package/dist/esm/components/ChildTable/index.mjs.map +1 -1
- package/dist/esm/components/ChildTable/index.native.js +8 -2
- package/dist/esm/components/ChildTable/index.native.js.map +1 -1
- package/dist/esm/components/ColumnHeaderFilter/index.mjs +80 -114
- package/dist/esm/components/ColumnHeaderFilter/index.mjs.map +1 -1
- package/dist/esm/components/ColumnHeaderFilter/index.native.js +92 -132
- package/dist/esm/components/ColumnHeaderFilter/index.native.js.map +1 -1
- package/dist/esm/components/DataTable/DataTableCardControls.mjs +89 -54
- package/dist/esm/components/DataTable/DataTableCardControls.mjs.map +1 -1
- package/dist/esm/components/DataTable/DataTableCardControls.native.js +92 -56
- package/dist/esm/components/DataTable/DataTableCardControls.native.js.map +1 -1
- package/dist/esm/components/DataTable/DataTableRoot.mjs +70 -11
- package/dist/esm/components/DataTable/DataTableRoot.mjs.map +1 -1
- package/dist/esm/components/DataTable/DataTableRoot.native.js +80 -13
- package/dist/esm/components/DataTable/DataTableRoot.native.js.map +1 -1
- package/dist/esm/components/DataTableCell/CellModalEditor.mjs +76 -74
- package/dist/esm/components/DataTableCell/CellModalEditor.mjs.map +1 -1
- package/dist/esm/components/DataTableCell/index.mjs +3 -3
- package/dist/esm/components/DataTableCell/index.mjs.map +1 -1
- package/dist/esm/components/DataTableCell/index.native.js +3 -12
- package/dist/esm/components/DataTableCell/index.native.js.map +1 -1
- package/dist/esm/components/DataTableDateFilter/index.mjs +137 -160
- package/dist/esm/components/DataTableDateFilter/index.mjs.map +1 -1
- package/dist/esm/components/DataTableDateFilter/index.native.js +155 -185
- package/dist/esm/components/DataTableDateFilter/index.native.js.map +1 -1
- package/dist/esm/components/DataTableExport/index.mjs +124 -141
- package/dist/esm/components/DataTableExport/index.mjs.map +1 -1
- package/dist/esm/components/DataTableExport/index.native.js +137 -159
- package/dist/esm/components/DataTableExport/index.native.js.map +1 -1
- package/dist/esm/components/DataTableFilterButton/index.mjs +14 -1
- package/dist/esm/components/DataTableFilterButton/index.mjs.map +1 -1
- package/dist/esm/components/DataTableFilterButton/index.native.js +15 -1
- package/dist/esm/components/DataTableFilterButton/index.native.js.map +1 -1
- package/dist/esm/components/DataTableGrouping/index.mjs +194 -214
- package/dist/esm/components/DataTableGrouping/index.mjs.map +1 -1
- package/dist/esm/components/DataTableGrouping/index.native.js +211 -232
- package/dist/esm/components/DataTableGrouping/index.native.js.map +1 -1
- package/dist/esm/components/DataTableSearch/index.mjs +105 -117
- package/dist/esm/components/DataTableSearch/index.mjs.map +1 -1
- package/dist/esm/components/DataTableSearch/index.native.js +113 -125
- package/dist/esm/components/DataTableSearch/index.native.js.map +1 -1
- package/dist/esm/components/DataTableToolbar/index.mjs +165 -106
- package/dist/esm/components/DataTableToolbar/index.mjs.map +1 -1
- package/dist/esm/components/DataTableToolbar/index.native.js +172 -114
- package/dist/esm/components/DataTableToolbar/index.native.js.map +1 -1
- package/dist/esm/components/DataTableViewOptions/index.mjs +40 -56
- package/dist/esm/components/DataTableViewOptions/index.mjs.map +1 -1
- package/dist/esm/components/DataTableViewOptions/index.native.js +42 -58
- package/dist/esm/components/DataTableViewOptions/index.native.js.map +1 -1
- package/dist/esm/components/FilterOperatorValueEditor/index.mjs +3 -11
- package/dist/esm/components/FilterOperatorValueEditor/index.mjs.map +1 -1
- package/dist/esm/components/FilterOperatorValueEditor/index.native.js +3 -11
- package/dist/esm/components/FilterOperatorValueEditor/index.native.js.map +1 -1
- package/dist/esm/components/SimpleTable/index.mjs +3 -7
- package/dist/esm/components/SimpleTable/index.mjs.map +1 -1
- package/dist/esm/components/SimpleTable/index.native.js +3 -7
- package/dist/esm/components/SimpleTable/index.native.js.map +1 -1
- package/dist/esm/components/TableInput/RowDetailEditor.mjs +165 -0
- package/dist/esm/components/TableInput/RowDetailEditor.mjs.map +1 -0
- package/dist/esm/components/TableInput/RowDetailEditor.native.js +144 -0
- package/dist/esm/components/TableInput/RowDetailEditor.native.js.map +1 -0
- package/dist/esm/components/TableInput/index.mjs +42 -5
- package/dist/esm/components/TableInput/index.mjs.map +1 -1
- package/dist/esm/components/TableInput/index.native.js +64 -1
- package/dist/esm/components/TableInput/index.native.js.map +1 -1
- package/dist/esm/components/TableInput/shared.mjs +7 -1
- package/dist/esm/components/TableInput/shared.mjs.map +1 -1
- package/dist/esm/components/TableInput/shared.native.js +9 -1
- package/dist/esm/components/TableInput/shared.native.js.map +1 -1
- package/dist/esm/hooks/useDataTable.mjs +43 -2
- package/dist/esm/hooks/useDataTable.mjs.map +1 -1
- package/dist/esm/hooks/useDataTable.native.js +49 -3
- package/dist/esm/hooks/useDataTable.native.js.map +1 -1
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/utils/rowPress.mjs +4 -1
- package/dist/esm/utils/rowPress.mjs.map +1 -1
- package/dist/esm/utils/rowPress.native.js +4 -1
- package/dist/esm/utils/rowPress.native.js.map +1 -1
- package/dist/jsx/components/ChildTable/index.mjs +8 -2
- package/dist/jsx/components/ChildTable/index.mjs.map +1 -1
- package/dist/jsx/components/ChildTable/index.native.js +8 -2
- package/dist/jsx/components/ChildTable/index.native.js.map +1 -1
- package/dist/jsx/components/ColumnHeaderFilter/index.mjs +80 -114
- package/dist/jsx/components/ColumnHeaderFilter/index.mjs.map +1 -1
- package/dist/jsx/components/ColumnHeaderFilter/index.native.js +89 -129
- package/dist/jsx/components/ColumnHeaderFilter/index.native.js.map +1 -1
- package/dist/jsx/components/DataTable/DataTableCardControls.mjs +89 -54
- package/dist/jsx/components/DataTable/DataTableCardControls.mjs.map +1 -1
- package/dist/jsx/components/DataTable/DataTableCardControls.native.js +93 -56
- package/dist/jsx/components/DataTable/DataTableCardControls.native.js.map +1 -1
- package/dist/jsx/components/DataTable/DataTableRoot.mjs +70 -11
- package/dist/jsx/components/DataTable/DataTableRoot.mjs.map +1 -1
- package/dist/jsx/components/DataTable/DataTableRoot.native.js +78 -11
- package/dist/jsx/components/DataTable/DataTableRoot.native.js.map +1 -1
- package/dist/jsx/components/DataTableCell/CellModalEditor.mjs +76 -74
- package/dist/jsx/components/DataTableCell/CellModalEditor.mjs.map +1 -1
- package/dist/jsx/components/DataTableCell/index.mjs +3 -3
- package/dist/jsx/components/DataTableCell/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableCell/index.native.js +2 -11
- package/dist/jsx/components/DataTableCell/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableDateFilter/index.mjs +137 -160
- package/dist/jsx/components/DataTableDateFilter/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableDateFilter/index.native.js +153 -183
- package/dist/jsx/components/DataTableDateFilter/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableExport/index.mjs +124 -141
- package/dist/jsx/components/DataTableExport/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableExport/index.native.js +135 -157
- package/dist/jsx/components/DataTableExport/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableFilterButton/index.mjs +14 -1
- package/dist/jsx/components/DataTableFilterButton/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableFilterButton/index.native.js +15 -0
- package/dist/jsx/components/DataTableFilterButton/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableGrouping/index.mjs +194 -214
- package/dist/jsx/components/DataTableGrouping/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableGrouping/index.native.js +209 -230
- package/dist/jsx/components/DataTableGrouping/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableSearch/index.mjs +105 -117
- package/dist/jsx/components/DataTableSearch/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableSearch/index.native.js +111 -123
- package/dist/jsx/components/DataTableSearch/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableToolbar/index.mjs +165 -106
- package/dist/jsx/components/DataTableToolbar/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableToolbar/index.native.js +168 -109
- package/dist/jsx/components/DataTableToolbar/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableViewOptions/index.mjs +40 -56
- package/dist/jsx/components/DataTableViewOptions/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableViewOptions/index.native.js +40 -56
- package/dist/jsx/components/DataTableViewOptions/index.native.js.map +1 -1
- package/dist/jsx/components/FilterOperatorValueEditor/index.mjs +3 -11
- package/dist/jsx/components/FilterOperatorValueEditor/index.mjs.map +1 -1
- package/dist/jsx/components/FilterOperatorValueEditor/index.native.js +3 -11
- package/dist/jsx/components/FilterOperatorValueEditor/index.native.js.map +1 -1
- package/dist/jsx/components/SimpleTable/index.mjs +3 -7
- package/dist/jsx/components/SimpleTable/index.mjs.map +1 -1
- package/dist/jsx/components/SimpleTable/index.native.js +2 -6
- package/dist/jsx/components/SimpleTable/index.native.js.map +1 -1
- package/dist/jsx/components/TableInput/RowDetailEditor.mjs +165 -0
- package/dist/jsx/components/TableInput/RowDetailEditor.mjs.map +1 -0
- package/dist/jsx/components/TableInput/RowDetailEditor.native.js +172 -0
- package/dist/jsx/components/TableInput/RowDetailEditor.native.js.map +1 -0
- package/dist/jsx/components/TableInput/index.mjs +42 -5
- package/dist/jsx/components/TableInput/index.mjs.map +1 -1
- package/dist/jsx/components/TableInput/index.native.js +64 -1
- package/dist/jsx/components/TableInput/index.native.js.map +1 -1
- package/dist/jsx/components/TableInput/shared.mjs +7 -1
- package/dist/jsx/components/TableInput/shared.mjs.map +1 -1
- package/dist/jsx/components/TableInput/shared.native.js +10 -0
- package/dist/jsx/components/TableInput/shared.native.js.map +1 -1
- package/dist/jsx/hooks/useDataTable.mjs +43 -2
- package/dist/jsx/hooks/useDataTable.mjs.map +1 -1
- package/dist/jsx/hooks/useDataTable.native.js +49 -3
- package/dist/jsx/hooks/useDataTable.native.js.map +1 -1
- package/dist/jsx/index.js.map +1 -1
- package/dist/jsx/index.mjs.map +1 -1
- package/dist/jsx/index.native.js.map +1 -1
- package/dist/jsx/utils/rowPress.mjs +4 -1
- package/dist/jsx/utils/rowPress.mjs.map +1 -1
- package/dist/jsx/utils/rowPress.native.js +4 -1
- package/dist/jsx/utils/rowPress.native.js.map +1 -1
- package/package.json +16 -16
- package/src/components/ChildTable/childTable.cellHidden.spec.tsx +57 -0
- package/src/components/ChildTable/childTable.rowDetail.spec.tsx +120 -0
- package/src/components/ChildTable/index.tsx +16 -0
- package/src/components/ColumnHeaderFilter/index.tsx +89 -116
- package/src/components/DataTable/DataTable.stories.tsx +130 -6
- package/src/components/DataTable/DataTableCardControls.stories.tsx +61 -2
- package/src/components/DataTable/DataTableCardControls.tsx +92 -66
- package/src/components/DataTable/DataTableRoot.tsx +109 -18
- package/src/components/DataTable/cardLayout.spec.tsx +4 -3
- package/src/components/DataTable/cardToolbar.spec.tsx +238 -0
- package/src/components/DataTable/chromeInterplay.spec.tsx +7 -5
- package/src/components/DataTable/columnWidthLayout.spec.tsx +189 -0
- package/src/components/DataTable/dataTableCardControls.spec.tsx +3 -2
- package/src/components/DataTable/dataTableMobileCards.spec.tsx +1 -4
- package/src/components/DataTable/footerLayout.spec.tsx +250 -0
- package/src/components/DataTable/headerContainment.spec.tsx +91 -0
- package/src/components/DataTable/pinningGeometry.spec.tsx +66 -1
- package/src/components/DataTable/rowPress.spec.tsx +2 -6
- package/src/components/DataTableBulkActions/DataTableBulkActions.stories.tsx +5 -4
- package/src/components/DataTableCell/CellModalEditor.tsx +95 -75
- package/src/components/DataTableCell/cellDraftPolicy.spec.tsx +12 -2
- package/src/components/DataTableCell/cellModalEditor.spec.tsx +75 -49
- package/src/components/DataTableCell/dataTableCell.spec.tsx +31 -14
- package/src/components/DataTableCell/index.tsx +3 -2
- package/src/components/DataTableDateFilter/DataTableDateFilter.spec.tsx +6 -3
- package/src/components/DataTableDateFilter/index.tsx +151 -180
- package/src/components/DataTableExport/DataTableExport.spec.tsx +42 -18
- package/src/components/DataTableExport/index.tsx +135 -142
- package/src/components/DataTableFilterButton/index.tsx +9 -0
- package/src/components/DataTableGrouping/index.tsx +193 -195
- package/src/components/DataTableSearch/index.tsx +111 -109
- package/src/components/DataTableToolbar/index.tsx +179 -107
- package/src/components/DataTableViewOptions/DataTableViewOptions.stories.tsx +52 -0
- package/src/components/DataTableViewOptions/index.tsx +32 -40
- package/src/components/FilterOperatorValueEditor/FilterOperatorValueEditor.spec.tsx +64 -2
- package/src/components/FilterOperatorValueEditor/index.tsx +0 -8
- package/src/components/SimpleTable/index.tsx +3 -2
- package/src/components/SimpleTable/simpleTable.spec.tsx +15 -0
- package/src/components/Table/accessibility.spec.tsx +7 -19
- package/src/components/TableInput/RowDetailEditor.native.tsx +134 -0
- package/src/components/TableInput/RowDetailEditor.tsx +173 -0
- package/src/components/TableInput/index.native.tsx +49 -1
- package/src/components/TableInput/index.tsx +65 -10
- package/src/components/TableInput/shared.ts +29 -0
- package/src/components/tableDropdowns.spec.tsx +172 -0
- package/src/hooks/useDataTable.spec.ts +153 -0
- package/src/hooks/useDataTable.ts +38 -2
- package/src/index.ts +1 -0
- package/src/types.ts +14 -12
- package/src/utils/rowPress.ts +3 -0
- package/types/components/ChildTable/index.d.ts +10 -0
- package/types/components/ChildTable/index.d.ts.map +1 -1
- package/types/components/ColumnHeaderFilter/index.d.ts +1 -1
- package/types/components/ColumnHeaderFilter/index.d.ts.map +1 -1
- package/types/components/DataTable/DataTableCardControls.d.ts +3 -0
- package/types/components/DataTable/DataTableCardControls.d.ts.map +1 -1
- package/types/components/DataTable/DataTableRoot.d.ts.map +1 -1
- package/types/components/DataTableCell/CellModalEditor.d.ts +10 -7
- package/types/components/DataTableCell/CellModalEditor.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/DataTableFilterButton/index.d.ts +2 -1
- package/types/components/DataTableFilterButton/index.d.ts.map +1 -1
- package/types/components/DataTableGrouping/index.d.ts.map +1 -1
- package/types/components/DataTableSearch/index.d.ts.map +1 -1
- package/types/components/DataTableToolbar/index.d.ts +1 -0
- package/types/components/DataTableToolbar/index.d.ts.map +1 -1
- package/types/components/FilterOperatorValueEditor/index.d.ts.map +1 -1
- package/types/components/SimpleTable/index.d.ts.map +1 -1
- package/types/components/TableInput/RowDetailEditor.d.ts +24 -0
- package/types/components/TableInput/RowDetailEditor.d.ts.map +1 -0
- package/types/components/TableInput/RowDetailEditor.native.d.ts +11 -0
- package/types/components/TableInput/RowDetailEditor.native.d.ts.map +1 -0
- package/types/components/TableInput/index.d.ts +11 -2
- package/types/components/TableInput/index.d.ts.map +1 -1
- package/types/components/TableInput/index.native.d.ts +8 -1
- package/types/components/TableInput/index.native.d.ts.map +1 -1
- package/types/components/TableInput/shared.d.ts +11 -0
- package/types/components/TableInput/shared.d.ts.map +1 -1
- package/types/hooks/useDataTable.d.ts.map +1 -1
- package/types/index.d.ts +1 -0
- package/types/index.d.ts.map +1 -1
- package/types/types.d.ts +14 -12
- package/types/types.d.ts.map +1 -1
- package/types/utils/rowPress.d.ts.map +1 -1
package/README.md
CHANGED
|
@@ -189,7 +189,7 @@ Filter panels compose — they never auto-dismiss on pick:
|
|
|
189
189
|
pick.
|
|
190
190
|
|
|
191
191
|
This is rule LC-21 in the living rulebook (`docs/theme-propagation-spec.md` in the
|
|
192
|
-
[multiplatform.one repo](https://
|
|
192
|
+
[multiplatform.one repo](https://git.corp.bitspur.com/multiplatform.one/mpo)).
|
|
193
193
|
|
|
194
194
|
## 📊 Data Export
|
|
195
195
|
|
|
@@ -927,8 +927,68 @@ function ServerTable({ data, totalCount }) {
|
|
|
927
927
|
|
|
928
928
|
## 🎨 Customization
|
|
929
929
|
|
|
930
|
+
### Column widths
|
|
931
|
+
|
|
932
|
+
`DataTableColumn.width`, `minWidth` and `maxWidth` map to TanStack's `size`,
|
|
933
|
+
`minSize` and `maxSize` before table defaults are applied. Each canonical property
|
|
934
|
+
wins independently when supplied. Aliases accept finite nonnegative pixels,
|
|
935
|
+
including fractions; invalid aliases are ignored. A zero width still respects
|
|
936
|
+
the minimum, so it doesn't hide a column.
|
|
937
|
+
|
|
938
|
+
```tsx
|
|
939
|
+
const columns: DataTableColumn<Row>[] = [
|
|
940
|
+
{ accessorKey: "rank", header: "Rank", width: 48 },
|
|
941
|
+
{ accessorKey: "name", header: "Name", width: 320, minWidth: 200, maxWidth: 400 },
|
|
942
|
+
{ accessorKey: "score", header: "Score", width: 80 },
|
|
943
|
+
];
|
|
944
|
+
|
|
945
|
+
<DataTable data={rows} columns={columns} layout="table" columnLayout="scroll" />;
|
|
946
|
+
```
|
|
947
|
+
|
|
948
|
+
| Column layout | Sizing behavior |
|
|
949
|
+
| --- | --- |
|
|
950
|
+
| `equal` (default), without resizing | Unpinned cells share available width and ignore declared sizes. A development warning names `columnLayout` when widths are supplied. |
|
|
951
|
+
| `equal` with resizing | Resolved sizes set fixed cell widths. |
|
|
952
|
+
| `scroll` | Header, body and footer use resolved widths, including widths below 80px. Web tables scroll horizontally when their total exceeds the container. |
|
|
953
|
+
| `auto` | Keeps the existing table-layout algorithm on web. Resolved sizes are inputs, not a promise of measured content widths or last-column-only expansion. |
|
|
954
|
+
|
|
955
|
+
Pinned cells keep their resolved size in every mode so sticky offsets match the
|
|
956
|
+
boxes. A column with no sizing properties defaults to 150px in sized modes.
|
|
957
|
+
Fixed scroll columns can leave unused space when their total is narrower than
|
|
958
|
+
the container. Cards and list presentations keep their existing layout.
|
|
959
|
+
|
|
960
|
+
Sizing state from resizing or a loaded view overrides the initial size, subject
|
|
961
|
+
to the resolved min/max constraints. Resetting sizing reveals the declaration
|
|
962
|
+
again. Definitions aren't mutated, and grouped leaf columns are normalized
|
|
963
|
+
independently; a group width isn't distributed among its children.
|
|
964
|
+
|
|
965
|
+
This activates formerly ignored aliases in sized layouts. Review tables that
|
|
966
|
+
supplied them alongside canonical properties, especially mixed bounds such as
|
|
967
|
+
`size: 180, maxWidth: 140`, which resolves to 140 unless `maxSize` is also supplied.
|
|
968
|
+
|
|
969
|
+
Saved views still use `ColumnView.width`; their schema hasn't changed. Loading a
|
|
970
|
+
prepared view applies its sizing state. The existing save path selects columns
|
|
971
|
+
from visibility-state keys, so widths for other columns can be omitted. The
|
|
972
|
+
view-options slider retains its mount-time width snapshot after external updates
|
|
973
|
+
and its existing 50–300px editing range in 10px steps. General save/load round
|
|
974
|
+
trips and slider synchronization aren't repaired by column-definition normalization.
|
|
975
|
+
|
|
930
976
|
### Custom Toolbar
|
|
931
977
|
|
|
978
|
+
Default web cards keep the all-field **Filter** and **Sort** together in one
|
|
979
|
+
primary row. Filter includes hidden and non-column `filterableFields`; its chips
|
|
980
|
+
still reopen the same editor and can be removed or cleared. Search gets its own
|
|
981
|
+
line. Saved views, Save and the fetching indicator occupy a separate wrapping
|
|
982
|
+
group. A long active Sort label truncates within its row budget while its full
|
|
983
|
+
column and direction remain in the button's accessible description.
|
|
984
|
+
|
|
985
|
+
This composition is internal to the default cards path, including responsive
|
|
986
|
+
`layout="auto"`. Public standalone toolbars, the grid and custom `renderToolbar`
|
|
987
|
+
composition keep their existing layout. Custom toolbars retain the card Sort /
|
|
988
|
+
Add Filter fallback. That fallback remains column-based; a custom toolbar must
|
|
989
|
+
still mount `DataTableFilterButton` to host canonical hidden-field/chip editing.
|
|
990
|
+
The existing custom-only missing-editor limitation isn't repaired here.
|
|
991
|
+
|
|
932
992
|
`DataTableToolbar` composes a global-search section (the catalog `SearchInput` with a
|
|
933
993
|
clear affordance) and, behind a toolbar divider, a roving-focus actions section:
|
|
934
994
|
a filter button (when the table has filterable fields), your `customActions`, and view
|
|
@@ -65,7 +65,10 @@ function ChildTable(props) {
|
|
|
65
65
|
helperText,
|
|
66
66
|
required,
|
|
67
67
|
id: idProp,
|
|
68
|
-
enableReorder: enableReorderProp
|
|
68
|
+
enableReorder: enableReorderProp,
|
|
69
|
+
rowDetail,
|
|
70
|
+
detailColumns,
|
|
71
|
+
isCellHidden
|
|
69
72
|
} = (0, import_tamagui.useProps)(props);
|
|
70
73
|
const {
|
|
71
74
|
knobProps,
|
|
@@ -101,7 +104,10 @@ function ChildTable(props) {
|
|
|
101
104
|
showAddRow: showAddRow && !readOnly && !disabled,
|
|
102
105
|
showDeleteRow: showDeleteRow && !readOnly && !disabled,
|
|
103
106
|
compact,
|
|
104
|
-
enableReorder: enableReorder && !readOnly && !disabled
|
|
107
|
+
enableReorder: enableReorder && !readOnly && !disabled,
|
|
108
|
+
rowDetail,
|
|
109
|
+
detailColumns,
|
|
110
|
+
isCellHidden
|
|
105
111
|
});
|
|
106
112
|
if (!hasLayout && !formBound) return table;
|
|
107
113
|
const control = label ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.YStack, {
|
|
@@ -73,7 +73,10 @@ function ChildTable(props) {
|
|
|
73
73
|
helperText,
|
|
74
74
|
required,
|
|
75
75
|
id: idProp,
|
|
76
|
-
enableReorder: enableReorderProp
|
|
76
|
+
enableReorder: enableReorderProp,
|
|
77
|
+
rowDetail,
|
|
78
|
+
detailColumns,
|
|
79
|
+
isCellHidden
|
|
77
80
|
} = (0, import_tamagui.useProps)(props);
|
|
78
81
|
var {
|
|
79
82
|
knobProps,
|
|
@@ -111,7 +114,10 @@ function ChildTable(props) {
|
|
|
111
114
|
showAddRow: showAddRow && !readOnly && !disabled,
|
|
112
115
|
showDeleteRow: showDeleteRow && !readOnly && !disabled,
|
|
113
116
|
compact,
|
|
114
|
-
enableReorder: enableReorder && !readOnly && !disabled
|
|
117
|
+
enableReorder: enableReorder && !readOnly && !disabled,
|
|
118
|
+
rowDetail,
|
|
119
|
+
detailColumns,
|
|
120
|
+
isCellHidden
|
|
115
121
|
});
|
|
116
122
|
if (!hasLayout && !formBound) return table;
|
|
117
123
|
var control = label ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.YStack, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","ChildTable_exports","__export","ChildTable","module","exports","import_jsx_runtime","require","import_react","import_components","import_forms","import_tamagui","import_TableInput","ChildTableFieldError","param","form","name","children","Subscribe","jsx","selector","state","_state_fieldMeta_name","_state_fieldMeta","fieldMeta","errors","children1","length","String","props","validators","onChange","columns","defaultRow","disabled","readOnly","skeleton","compact","minRows","maxRows","showRowNumbers","showAddRow","showDeleteRow","label","error","helperText","required","id","idProp","enableReorder","enableReorderProp","useProps","knobProps","resolvedForm","useFormField","formBound","hasLayout","emitChange","useCallback","rows","next","some","row","idx","renumberIdx","Input","TableInput","table","data","control","YStack","width","role","renderLayout","renderLayout2","resolvedError","FieldLayout"],"sources":["../../../../src/components/ChildTable/index.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,kBAAA;AAAAC,QAAA,CAAAD,kBAAA;EAAAE,UAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAT,YAA4C,CAAAK,kBAAA;AAC5C,IAAAK,kBAAA,GAA4BC,OAAA;AAC5B,IAAAC,YAAA,GAA2DD,OAAA;AAC3D,IAAAE,iBAAiC,GAAAF,OAAA;AACjC,IAAAG,YAAA,GAAAH,OAA2B;
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","ChildTable_exports","__export","ChildTable","module","exports","import_jsx_runtime","require","import_react","import_components","import_forms","import_tamagui","import_TableInput","ChildTableFieldError","param","form","name","children","Subscribe","jsx","selector","state","_state_fieldMeta_name","_state_fieldMeta","fieldMeta","errors","children1","length","String","props","validators","onChange","columns","defaultRow","disabled","readOnly","skeleton","compact","minRows","maxRows","showRowNumbers","showAddRow","showDeleteRow","label","error","helperText","required","id","idProp","enableReorder","enableReorderProp","rowDetail","detailColumns","isCellHidden","useProps","knobProps","resolvedForm","useFormField","formBound","hasLayout","emitChange","useCallback","rows","next","some","row","idx","renumberIdx","Input","TableInput","table","data","control","YStack","width","role","renderLayout","renderLayout2","resolvedError","FieldLayout"],"sources":["../../../../src/components/ChildTable/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -53,9 +53,6 @@ function ColumnHeaderFilter({
|
|
|
53
53
|
const idleColor = (0, import_theme.useGlyphColor)("$color11");
|
|
54
54
|
const activeColor = (0, import_theme.useAccentOnSurface)();
|
|
55
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
56
|
(0, import_theme.ensureCompositeFocusRing)();
|
|
60
57
|
const iconPx = (0, import_chromeIcons.iconSizeForToken)(String(knobProps.sizeToken));
|
|
61
58
|
const [open, setOpen] = (0, import_react2.useState)(false);
|
|
@@ -87,119 +84,88 @@ function ColumnHeaderFilter({
|
|
|
87
84
|
setOperator((0, import_filterFields.defaultOperatorForFilterType)(columnType));
|
|
88
85
|
onFilterChange(void 0);
|
|
89
86
|
};
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
...(0, import_theme.pressTargetStyle)(),
|
|
105
|
-
alignItems: "center",
|
|
106
|
-
justifyContent: "center",
|
|
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);
|
|
121
|
-
},
|
|
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
|
-
})
|
|
141
|
-
})
|
|
142
|
-
})
|
|
143
|
-
})
|
|
144
|
-
})
|
|
145
|
-
}), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.Popover.Content, {
|
|
146
|
-
scope: popoverScope,
|
|
147
|
-
onPointerDownOutside: () => {
|
|
148
|
-
returnFocusRef.current = false;
|
|
149
|
-
},
|
|
150
|
-
onCloseAutoFocus: event => {
|
|
87
|
+
const trigger = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Tooltip, {
|
|
88
|
+
content: isFiltered ? (0, import_t.t)("Edit filter") : (0, import_t.t)("Filter this column"),
|
|
89
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
|
|
90
|
+
cursor: "pointer",
|
|
91
|
+
...(0, import_theme.pressTargetStyle)(),
|
|
92
|
+
alignItems: "center",
|
|
93
|
+
justifyContent: "center",
|
|
94
|
+
marginVertical: -FILTER_TRIGGER_OUTSET,
|
|
95
|
+
marginHorizontal: -FILTER_TRIGGER_OUTSET,
|
|
96
|
+
hitSlop: (0, import_theme.pressTargetHitSlop)(FILTER_TRIGGER_VISUAL),
|
|
97
|
+
className: "mp-chip-dismiss",
|
|
98
|
+
tabIndex: 0,
|
|
99
|
+
onKeyDown: event => {
|
|
100
|
+
if (event.key !== "Enter" && event.key !== " ") return;
|
|
151
101
|
event.preventDefault();
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
}
|
|
155
|
-
returnFocusRef.current = true;
|
|
156
|
-
},
|
|
157
|
-
...knobProps.elevatedSurface,
|
|
158
|
-
...knobProps.panelPadding,
|
|
159
|
-
minWidth: 240,
|
|
160
|
-
transition: knobProps.transition,
|
|
161
|
-
enterStyle: {
|
|
162
|
-
y: -5,
|
|
163
|
-
opacity: 0
|
|
102
|
+
event.stopPropagation();
|
|
103
|
+
handleOpenChange(true);
|
|
164
104
|
},
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
opacity: 0
|
|
105
|
+
onPress: e => {
|
|
106
|
+
e.stopPropagation();
|
|
168
107
|
},
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
108
|
+
role: "button",
|
|
109
|
+
"aria-label": `Filter column ${columnLabel}`,
|
|
110
|
+
"aria-haspopup": "dialog",
|
|
111
|
+
"aria-expanded": open,
|
|
112
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
|
|
113
|
+
className: "mp-chip-dismiss-ring",
|
|
114
|
+
padding: "$1",
|
|
115
|
+
borderRadius: "$2",
|
|
116
|
+
alignItems: "center",
|
|
117
|
+
justifyContent: "center",
|
|
118
|
+
hoverStyle: {
|
|
119
|
+
backgroundColor: "$color4"
|
|
120
|
+
},
|
|
121
|
+
pressStyle: {
|
|
122
|
+
backgroundColor: "$color5"
|
|
123
|
+
},
|
|
124
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react.FunnelIcon, {
|
|
125
|
+
size: iconPx,
|
|
126
|
+
color: glyphColor,
|
|
127
|
+
weight: isFiltered ? "fill" : "regular"
|
|
128
|
+
})
|
|
129
|
+
})
|
|
130
|
+
})
|
|
131
|
+
});
|
|
132
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.FloatingPanel, {
|
|
133
|
+
open,
|
|
134
|
+
onOpenChange: handleOpenChange,
|
|
135
|
+
trigger,
|
|
136
|
+
triggerSizing: "content",
|
|
137
|
+
widthMode: "fit-content",
|
|
138
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {
|
|
139
|
+
...knobProps.gap,
|
|
140
|
+
minWidth: 240,
|
|
141
|
+
"data-dismiss-class": "compose",
|
|
142
|
+
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
|
|
143
|
+
...knobProps.label,
|
|
144
|
+
fontWeight: "400",
|
|
145
|
+
color: "$color11",
|
|
146
|
+
children: (0, import_t.t)("Filter: {{column}}", {
|
|
147
|
+
column: columnLabel
|
|
148
|
+
})
|
|
149
|
+
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_FilterOperatorValueEditor.FilterOperatorValueEditor, {
|
|
150
|
+
fieldType: columnType,
|
|
151
|
+
operator,
|
|
152
|
+
value,
|
|
153
|
+
onOperatorChange: setOperator,
|
|
154
|
+
onValueChange: setValue,
|
|
155
|
+
options
|
|
156
|
+
}), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
|
|
174
157
|
...knobProps.gap,
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
children: (0, import_t.t)("
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
operator,
|
|
185
|
-
value,
|
|
186
|
-
onOperatorChange: setOperator,
|
|
187
|
-
onValueChange: setValue,
|
|
188
|
-
options
|
|
189
|
-
}), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
|
|
190
|
-
...knobProps.gap,
|
|
191
|
-
justifyContent: "flex-end",
|
|
192
|
-
children: [isFiltered && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
193
|
-
size: knobProps.sizeToken,
|
|
194
|
-
onPress: handleClear,
|
|
195
|
-
children: (0, import_t.t)("Clear")
|
|
196
|
-
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
197
|
-
size: knobProps.sizeToken,
|
|
198
|
-
onPress: handleApply,
|
|
199
|
-
children: (0, import_t.t)("Apply")
|
|
200
|
-
})]
|
|
158
|
+
justifyContent: "flex-end",
|
|
159
|
+
children: [isFiltered && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
160
|
+
size: knobProps.sizeToken,
|
|
161
|
+
onPress: handleClear,
|
|
162
|
+
children: (0, import_t.t)("Clear")
|
|
163
|
+
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
164
|
+
size: knobProps.sizeToken,
|
|
165
|
+
onPress: handleApply,
|
|
166
|
+
children: (0, import_t.t)("Apply")
|
|
201
167
|
})]
|
|
202
168
|
})]
|
|
203
|
-
})
|
|
169
|
+
})
|
|
204
170
|
});
|
|
205
171
|
}
|
|
@@ -56,9 +56,6 @@ function ColumnHeaderFilter(param) {
|
|
|
56
56
|
var idleColor = (0, import_theme.useGlyphColor)("$color11");
|
|
57
57
|
var activeColor = (0, import_theme.useAccentOnSurface)();
|
|
58
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
59
|
(0, import_theme.ensureCompositeFocusRing)();
|
|
63
60
|
var iconPx = (0, import_chromeIcons.iconSizeForToken)(String(knobProps.sizeToken));
|
|
64
61
|
var [open, setOpen] = (0, import_react2.useState)(false);
|
|
@@ -93,139 +90,102 @@ function ColumnHeaderFilter(param) {
|
|
|
93
90
|
setOperator((0, import_filterFields.defaultOperatorForFilterType)(columnType));
|
|
94
91
|
onFilterChange(void 0);
|
|
95
92
|
};
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
93
|
+
var trigger = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Tooltip, {
|
|
94
|
+
content: isFiltered ? (0, import_t.t)("Edit filter") : (0, import_t.t)("Filter this column"),
|
|
95
|
+
children: (
|
|
96
|
+
/* LC-54 amendment (2026-08-13): the grown press target NEVER
|
|
97
|
+
paints — hover/press fills on this box spread across the full
|
|
98
|
+
44px floor and bled into the neighboring header rows via the
|
|
99
|
+
negative outsets. Painted hover and keyboard focus feedback
|
|
100
|
+
ride the glyph-scale ring inside
|
|
101
|
+
(Chip dismiss anatomy). */
|
|
105
102
|
/* @__PURE__ */
|
|
106
|
-
(0, import_jsx_runtime.jsx)(import_tamagui.
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
ref: triggerRef,
|
|
122
|
-
cursor: "pointer",
|
|
123
|
-
...(0, import_theme.pressTargetStyle)(),
|
|
124
|
-
alignItems: "center",
|
|
125
|
-
justifyContent: "center",
|
|
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);
|
|
143
|
-
},
|
|
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
|
-
})
|
|
163
|
-
})
|
|
164
|
-
}))
|
|
165
|
-
})
|
|
166
|
-
})
|
|
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) {
|
|
103
|
+
(0, import_jsx_runtime.jsx)(import_tamagui.View, {
|
|
104
|
+
cursor: "pointer",
|
|
105
|
+
...(0, import_theme.pressTargetStyle)(),
|
|
106
|
+
alignItems: "center",
|
|
107
|
+
justifyContent: "center",
|
|
108
|
+
marginVertical: -FILTER_TRIGGER_OUTSET,
|
|
109
|
+
marginHorizontal: -FILTER_TRIGGER_OUTSET,
|
|
110
|
+
hitSlop: (0, import_theme.pressTargetHitSlop)(FILTER_TRIGGER_VISUAL),
|
|
111
|
+
// Enabled glyphs keep readable ink; hue and weight distinguish
|
|
112
|
+
// an applied filter from the secondary-color idle affordance.
|
|
113
|
+
// Shared unpainted press-floor / painted glyph-ring anatomy.
|
|
114
|
+
className: "mp-chip-dismiss",
|
|
115
|
+
tabIndex: 0,
|
|
116
|
+
onKeyDown: function onKeyDown(event) {
|
|
117
|
+
if (event.key !== "Enter" && event.key !== " ") return;
|
|
173
118
|
event.preventDefault();
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
(_triggerRef_current = triggerRef.current) === null || _triggerRef_current === void 0 ? void 0 : _triggerRef_current.focus();
|
|
177
|
-
}
|
|
178
|
-
returnFocusRef.current = true;
|
|
179
|
-
},
|
|
180
|
-
...knobProps.elevatedSurface,
|
|
181
|
-
...knobProps.panelPadding,
|
|
182
|
-
minWidth: 240,
|
|
183
|
-
transition: knobProps.transition,
|
|
184
|
-
enterStyle: {
|
|
185
|
-
y: -5,
|
|
186
|
-
opacity: 0
|
|
119
|
+
event.stopPropagation();
|
|
120
|
+
handleOpenChange(true);
|
|
187
121
|
},
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
opacity: 0
|
|
122
|
+
onPress: function onPress(e) {
|
|
123
|
+
e.stopPropagation();
|
|
191
124
|
},
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
125
|
+
role: "button",
|
|
126
|
+
"aria-label": `Filter column ${columnLabel}`,
|
|
127
|
+
"aria-haspopup": "dialog",
|
|
128
|
+
"aria-expanded": open,
|
|
129
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
|
|
130
|
+
className: "mp-chip-dismiss-ring",
|
|
131
|
+
padding: "$1",
|
|
132
|
+
borderRadius: "$2",
|
|
133
|
+
alignItems: "center",
|
|
134
|
+
justifyContent: "center",
|
|
135
|
+
hoverStyle: {
|
|
136
|
+
backgroundColor: "$color4"
|
|
137
|
+
},
|
|
138
|
+
pressStyle: {
|
|
139
|
+
backgroundColor: "$color5"
|
|
140
|
+
},
|
|
141
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react.FunnelIcon, {
|
|
142
|
+
size: iconPx,
|
|
143
|
+
color: glyphColor,
|
|
144
|
+
weight: isFiltered ? "fill" : "regular"
|
|
145
|
+
})
|
|
146
|
+
})
|
|
147
|
+
}))
|
|
148
|
+
});
|
|
149
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.FloatingPanel, {
|
|
150
|
+
open,
|
|
151
|
+
onOpenChange: handleOpenChange,
|
|
152
|
+
trigger,
|
|
153
|
+
triggerSizing: "content",
|
|
154
|
+
widthMode: "fit-content",
|
|
155
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {
|
|
156
|
+
...knobProps.gap,
|
|
157
|
+
minWidth: 240,
|
|
158
|
+
"data-dismiss-class": "compose",
|
|
159
|
+
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
|
|
160
|
+
...knobProps.label,
|
|
161
|
+
fontWeight: "400",
|
|
162
|
+
color: "$color11",
|
|
163
|
+
children: (0, import_t.t)("Filter: {{column}}", {
|
|
164
|
+
column: columnLabel
|
|
165
|
+
})
|
|
166
|
+
}), /* Shared operator/value editor (LC-16 — same one the toolbar filter uses) */
|
|
167
|
+
/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_FilterOperatorValueEditor.FilterOperatorValueEditor, {
|
|
168
|
+
fieldType: columnType,
|
|
169
|
+
operator,
|
|
170
|
+
value,
|
|
171
|
+
onOperatorChange: setOperator,
|
|
172
|
+
onValueChange: setValue,
|
|
173
|
+
options
|
|
174
|
+
}), /* Actions */
|
|
175
|
+
/* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
|
|
197
176
|
...knobProps.gap,
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
children: (0, import_t.t)("
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
fieldType: columnType,
|
|
208
|
-
operator,
|
|
209
|
-
value,
|
|
210
|
-
onOperatorChange: setOperator,
|
|
211
|
-
onValueChange: setValue,
|
|
212
|
-
options
|
|
213
|
-
}), /* Actions */
|
|
214
|
-
/* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
|
|
215
|
-
...knobProps.gap,
|
|
216
|
-
justifyContent: "flex-end",
|
|
217
|
-
children: [isFiltered && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
218
|
-
size: knobProps.sizeToken,
|
|
219
|
-
onPress: handleClear,
|
|
220
|
-
children: (0, import_t.t)("Clear")
|
|
221
|
-
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
222
|
-
size: knobProps.sizeToken,
|
|
223
|
-
onPress: handleApply,
|
|
224
|
-
children: (0, import_t.t)("Apply")
|
|
225
|
-
})]
|
|
177
|
+
justifyContent: "flex-end",
|
|
178
|
+
children: [isFiltered && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
179
|
+
size: knobProps.sizeToken,
|
|
180
|
+
onPress: handleClear,
|
|
181
|
+
children: (0, import_t.t)("Clear")
|
|
182
|
+
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
183
|
+
size: knobProps.sizeToken,
|
|
184
|
+
onPress: handleApply,
|
|
185
|
+
children: (0, import_t.t)("Apply")
|
|
226
186
|
})]
|
|
227
187
|
})]
|
|
228
|
-
})
|
|
188
|
+
})
|
|
229
189
|
});
|
|
230
190
|
}
|
|
231
191
|
//# sourceMappingURL=index.native.js.map
|
|
@@ -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","onFilterChange","options","isFiltered","knobProps","useResolvedKnobs","idleColor","useGlyphColor","activeColor","useAccentOnSurface","glyphColor","
|
|
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","ensureCompositeFocusRing","iconPx","iconSizeForToken","String","sizeToken","open","setOpen","useState","operator","setOperator","defaultOperatorForFilterType","setValue","handleOpenChange","handleOpenChange2","next","_ref","handleApply","handleApply2","operatorNeedsNoValue","handleClear","handleClear2","trigger","jsx","Tooltip","content","t","children","View","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","FloatingPanel","onOpenChange","triggerSizing","widthMode","jsxs","YStack","gap","minWidth","Text","label","fontWeight"],"sources":["../../../../src/components/ColumnHeaderFilter/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|