@multiplatform.one/table 7.11.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 +1 -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/DataTableRoot.cjs +17 -1
- package/dist/cjs/components/DataTable/DataTableRoot.native.js +25 -2
- 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/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 +44 -61
- package/dist/cjs/components/DataTableToolbar/index.native.js +46 -65
- 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 +11 -1
- package/dist/cjs/hooks/useDataTable.native.js +12 -2
- 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/DataTableRoot.mjs +17 -1
- package/dist/esm/components/DataTable/DataTableRoot.mjs.map +1 -1
- package/dist/esm/components/DataTable/DataTableRoot.native.js +25 -2
- 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/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 +46 -63
- package/dist/esm/components/DataTableToolbar/index.mjs.map +1 -1
- package/dist/esm/components/DataTableToolbar/index.native.js +48 -67
- 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 +11 -1
- package/dist/esm/hooks/useDataTable.mjs.map +1 -1
- package/dist/esm/hooks/useDataTable.native.js +12 -2
- 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/DataTableRoot.mjs +17 -1
- package/dist/jsx/components/DataTable/DataTableRoot.mjs.map +1 -1
- package/dist/jsx/components/DataTable/DataTableRoot.native.js +25 -2
- 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/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 +46 -63
- package/dist/jsx/components/DataTableToolbar/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableToolbar/index.native.js +46 -65
- 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 +11 -1
- package/dist/jsx/hooks/useDataTable.mjs.map +1 -1
- package/dist/jsx/hooks/useDataTable.native.js +12 -2
- 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 +14 -14
- 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 +71 -6
- package/src/components/DataTable/DataTableRoot.tsx +27 -4
- package/src/components/DataTable/dataTableMobileCards.spec.tsx +1 -4
- package/src/components/DataTable/headerContainment.spec.tsx +91 -0
- 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/index.tsx +135 -142
- package/src/components/DataTableGrouping/index.tsx +193 -195
- package/src/components/DataTableSearch/index.tsx +111 -109
- package/src/components/DataTableToolbar/index.tsx +39 -46
- 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 +39 -0
- package/src/hooks/useDataTable.ts +15 -1
- package/src/index.ts +1 -0
- 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/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/DataTableGrouping/index.d.ts.map +1 -1
- package/types/components/DataTableSearch/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/utils/rowPress.d.ts.map +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* TableInput — the child-table field (the forms↔table bridge).
|
|
3
3
|
*
|
|
4
|
-
* Follows the forms field contract (
|
|
4
|
+
* Follows the forms field contract (docs/standards/frontend/field-architecture.md):
|
|
5
5
|
* - Canonical change prop is `onChange(rows)` (LC-14 ONCHANGE-CANONICAL);
|
|
6
6
|
* `onDataChange(rows)` survives as a deprecated alias that fires from the
|
|
7
7
|
* same emit site, and `onCellChange(rowIndex, columnId, value)` is a
|
|
@@ -17,6 +17,8 @@
|
|
|
17
17
|
* Row identity: added rows get a collision-free generated `id`. TableInput
|
|
18
18
|
* reorders through the shared kanbanDnd machine (`enableReorder`); Frappe
|
|
19
19
|
* `idx` renumbering is the ChildTable layer (MPO-22), not this field.
|
|
20
|
+
* `rowDetail` opens one row as a form over `detailColumns` (RowDetailEditor);
|
|
21
|
+
* `isCellHidden` blanks a cell per row, and the caller owns the rule.
|
|
20
22
|
*/
|
|
21
23
|
|
|
22
24
|
import { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
@@ -47,14 +49,18 @@ import type {
|
|
|
47
49
|
} from "../../types";
|
|
48
50
|
import { DataTableCell } from "../DataTableCell";
|
|
49
51
|
import { withInterp } from "../../utils/withInterp";
|
|
52
|
+
import { RowDetailEditor } from "./RowDetailEditor";
|
|
50
53
|
import {
|
|
51
54
|
childRowAttrs,
|
|
52
55
|
childTableKeyAction,
|
|
53
56
|
generateRowId,
|
|
54
57
|
isEmptyRows,
|
|
55
58
|
SKELETON_ROW_COUNT,
|
|
59
|
+
type ChildCellHidden,
|
|
56
60
|
} from "./shared";
|
|
57
61
|
|
|
62
|
+
const chromeColumnIds = new Set(["_reorder", "_rowNumber", "_detail", "_actions"]);
|
|
63
|
+
|
|
58
64
|
export interface TableInputProps<TData extends DataTableData = DataTableData> {
|
|
59
65
|
/** Data array for the table (ignored in favor of form state in the form branch) */
|
|
60
66
|
data?: TData[];
|
|
@@ -104,6 +110,12 @@ export interface TableInputProps<TData extends DataTableData = DataTableData> {
|
|
|
104
110
|
* this on and writes `idx` on the change payload (MPO-22).
|
|
105
111
|
*/
|
|
106
112
|
enableReorder?: boolean;
|
|
113
|
+
/** Per-row button that opens the row in a detail editor (MPO-22). */
|
|
114
|
+
rowDetail?: boolean;
|
|
115
|
+
/** Fields the detail editor shows. Defaults to `columns`. */
|
|
116
|
+
detailColumns?: DataTableColumn<TData>[];
|
|
117
|
+
/** Hides one row's cell, in the grid and in the detail editor. */
|
|
118
|
+
isCellHidden?: ChildCellHidden<TData>;
|
|
107
119
|
}
|
|
108
120
|
|
|
109
121
|
export function TableInput<TData extends DataTableData = DataTableData>({
|
|
@@ -128,6 +140,9 @@ export function TableInput<TData extends DataTableData = DataTableData>({
|
|
|
128
140
|
"aria-label": ariaLabel,
|
|
129
141
|
compact = true,
|
|
130
142
|
enableReorder = false,
|
|
143
|
+
rowDetail = false,
|
|
144
|
+
detailColumns,
|
|
145
|
+
isCellHidden,
|
|
131
146
|
}: TableInputProps<TData>) {
|
|
132
147
|
const { t } = useTranslation();
|
|
133
148
|
const { resolvedForm } = useFormField({ form: formProp });
|
|
@@ -164,6 +179,9 @@ export function TableInput<TData extends DataTableData = DataTableData>({
|
|
|
164
179
|
ariaLabel: resolvedAriaLabel,
|
|
165
180
|
compact,
|
|
166
181
|
enableReorder,
|
|
182
|
+
rowDetail,
|
|
183
|
+
detailColumns: detailColumns ?? columns,
|
|
184
|
+
isCellHidden,
|
|
167
185
|
t,
|
|
168
186
|
};
|
|
169
187
|
|
|
@@ -218,6 +236,9 @@ interface TableInputInnerProps<TData extends DataTableData> {
|
|
|
218
236
|
ariaLabel: string;
|
|
219
237
|
compact: boolean;
|
|
220
238
|
enableReorder: boolean;
|
|
239
|
+
rowDetail: boolean;
|
|
240
|
+
detailColumns: DataTableColumn<TData>[];
|
|
241
|
+
isCellHidden?: ChildCellHidden<TData>;
|
|
221
242
|
t: (key: string, options?: Record<string, unknown>) => string;
|
|
222
243
|
}
|
|
223
244
|
|
|
@@ -238,6 +259,9 @@ function TableInputInner<TData extends DataTableData>({
|
|
|
238
259
|
ariaLabel,
|
|
239
260
|
compact,
|
|
240
261
|
enableReorder,
|
|
262
|
+
rowDetail,
|
|
263
|
+
detailColumns,
|
|
264
|
+
isCellHidden,
|
|
241
265
|
t,
|
|
242
266
|
}: TableInputInnerProps<TData>) {
|
|
243
267
|
const theme = useTheme();
|
|
@@ -248,6 +272,7 @@ function TableInputInner<TData extends DataTableData>({
|
|
|
248
272
|
const pendingFocusRef = useRef<string | null>(null);
|
|
249
273
|
const gridRef = useRef<HTMLElement | null>(null);
|
|
250
274
|
const reorderEnabled = enableReorder && !readOnly && !skeleton;
|
|
275
|
+
const Detail = RowDetailEditor<TData>;
|
|
251
276
|
|
|
252
277
|
const firstDataKey = useMemo(() => {
|
|
253
278
|
const first = columns[0];
|
|
@@ -329,6 +354,16 @@ function TableInputInner<TData extends DataTableData>({
|
|
|
329
354
|
[rows, commit, minRows],
|
|
330
355
|
);
|
|
331
356
|
|
|
357
|
+
const handleRowDetailCommit = useCallback(
|
|
358
|
+
(rowIndex: number, next: TData, changed: string[]) => {
|
|
359
|
+
for (const columnId of changed) {
|
|
360
|
+
onCellChange?.(rowIndex, columnId, next[columnId as keyof TData]);
|
|
361
|
+
}
|
|
362
|
+
commit(rows.map((row, index) => (index === rowIndex ? next : row)));
|
|
363
|
+
},
|
|
364
|
+
[rows, commit, onCellChange],
|
|
365
|
+
);
|
|
366
|
+
|
|
332
367
|
useEffect(() => {
|
|
333
368
|
const id = pendingFocusRef.current;
|
|
334
369
|
if (!id || typeof document === "undefined") return;
|
|
@@ -432,6 +467,7 @@ function TableInputInner<TData extends DataTableData>({
|
|
|
432
467
|
...col,
|
|
433
468
|
id: columnId,
|
|
434
469
|
cell: ({ row }) => {
|
|
470
|
+
if (isCellHidden?.(row.original, columnId, row.index)) return null;
|
|
435
471
|
const value = row.original[columnId as keyof TData];
|
|
436
472
|
const field = (col.field || "input") as DataTableField;
|
|
437
473
|
const fieldProps = col.fieldProps as DataTableFieldProps | undefined;
|
|
@@ -454,6 +490,25 @@ function TableInputInner<TData extends DataTableData>({
|
|
|
454
490
|
} as ColumnDef<TData, unknown>);
|
|
455
491
|
});
|
|
456
492
|
|
|
493
|
+
if (rowDetail) {
|
|
494
|
+
cols.push({
|
|
495
|
+
id: "_detail",
|
|
496
|
+
header: "",
|
|
497
|
+
size: chromePx + 16,
|
|
498
|
+
cell: ({ row }) => (
|
|
499
|
+
<Detail
|
|
500
|
+
row={row.original}
|
|
501
|
+
rowIndex={row.index}
|
|
502
|
+
columns={detailColumns}
|
|
503
|
+
readOnly={readOnly}
|
|
504
|
+
compact={compact}
|
|
505
|
+
isCellHidden={isCellHidden}
|
|
506
|
+
onCommit={(next, changed) => handleRowDetailCommit(row.index, next, changed)}
|
|
507
|
+
/>
|
|
508
|
+
),
|
|
509
|
+
});
|
|
510
|
+
}
|
|
511
|
+
|
|
457
512
|
if (showDeleteRow && !readOnly) {
|
|
458
513
|
cols.push({
|
|
459
514
|
id: "_actions",
|
|
@@ -495,6 +550,10 @@ function TableInputInner<TData extends DataTableData>({
|
|
|
495
550
|
knobProps.label.fontSize,
|
|
496
551
|
knobProps.nestedControl.hitSlop,
|
|
497
552
|
reorderEnabled,
|
|
553
|
+
rowDetail,
|
|
554
|
+
detailColumns,
|
|
555
|
+
isCellHidden,
|
|
556
|
+
handleRowDetailCommit,
|
|
498
557
|
]);
|
|
499
558
|
|
|
500
559
|
const table = useReactTable({
|
|
@@ -556,10 +615,7 @@ function TableInputInner<TData extends DataTableData>({
|
|
|
556
615
|
key={header.id}
|
|
557
616
|
style={{
|
|
558
617
|
width: header.getSize(),
|
|
559
|
-
...(isEmpty &&
|
|
560
|
-
header.column.id !== "_rowNumber" &&
|
|
561
|
-
header.column.id !== "_actions" &&
|
|
562
|
-
header.column.id !== "_reorder"
|
|
618
|
+
...(isEmpty && !chromeColumnIds.has(header.column.id)
|
|
563
619
|
? { flexGrow: 1 }
|
|
564
620
|
: null),
|
|
565
621
|
}}
|
|
@@ -578,7 +634,9 @@ function TableInputInner<TData extends DataTableData>({
|
|
|
578
634
|
<Table.Row key={`skeleton-${rowIndex}`}>
|
|
579
635
|
{table.getAllLeafColumns().map((column) => (
|
|
580
636
|
<Table.Cell key={column.id}>
|
|
581
|
-
{column.id === "_actions" ||
|
|
637
|
+
{column.id === "_actions" ||
|
|
638
|
+
column.id === "_reorder" ||
|
|
639
|
+
column.id === "_detail" ? null : (
|
|
582
640
|
<Skeleton
|
|
583
641
|
variant="rounded"
|
|
584
642
|
width={column.id === "_rowNumber" ? 16 : "70%"}
|
|
@@ -617,10 +675,7 @@ function TableInputInner<TData extends DataTableData>({
|
|
|
617
675
|
>)}
|
|
618
676
|
>
|
|
619
677
|
{row.getVisibleCells().map((cell) => {
|
|
620
|
-
const isData =
|
|
621
|
-
cell.column.id !== "_rowNumber" &&
|
|
622
|
-
cell.column.id !== "_actions" &&
|
|
623
|
-
cell.column.id !== "_reorder";
|
|
678
|
+
const isData = !chromeColumnIds.has(cell.column.id);
|
|
624
679
|
const field = columns.find((col) => {
|
|
625
680
|
const id =
|
|
626
681
|
typeof col.accessorKey === "string"
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
/** Shared TableInput internals (web + native). */
|
|
2
2
|
|
|
3
|
+
import type { DataTableColumn, DataTableData } from "../../types";
|
|
4
|
+
|
|
3
5
|
let rowIdCounter = 0;
|
|
4
6
|
|
|
5
7
|
/**
|
|
@@ -75,3 +77,30 @@ export function childTableKeyAction(
|
|
|
75
77
|
if (next < 0 || next >= ctx.rowCount) return null;
|
|
76
78
|
return { type: "move", rowIndex: next, columnId: ctx.columnId };
|
|
77
79
|
}
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* Per-row cell visibility (Frappe child `depends_on`, evaluated by the
|
|
83
|
+
* caller). True hides that cell's editor in the grid and its field in the
|
|
84
|
+
* row detail editor.
|
|
85
|
+
*/
|
|
86
|
+
export type ChildCellHidden<TData extends DataTableData = DataTableData> = (
|
|
87
|
+
row: TData,
|
|
88
|
+
columnId: string,
|
|
89
|
+
rowIndex: number,
|
|
90
|
+
) => boolean;
|
|
91
|
+
|
|
92
|
+
/** Row-data key a column reads (accessorKey, else id). */
|
|
93
|
+
export function columnKey<TData extends DataTableData>(col: DataTableColumn<TData>): string {
|
|
94
|
+
return typeof col.accessorKey === "string" ? col.accessorKey : col.id || String(col.accessorKey);
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
/** Column keys whose value differs between two versions of a row. */
|
|
98
|
+
export function changedColumns<TData extends DataTableData>(
|
|
99
|
+
before: TData,
|
|
100
|
+
after: TData,
|
|
101
|
+
columns: DataTableColumn<TData>[],
|
|
102
|
+
): string[] {
|
|
103
|
+
return columns
|
|
104
|
+
.map(columnKey)
|
|
105
|
+
.filter((key) => !Object.is(before[key as keyof TData], after[key as keyof TData]));
|
|
106
|
+
}
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MPO-221: a table dropdown is a FloatingPanel (the cover family, MPO-38),
|
|
3
|
+
* never Tamagui's Popover. Each surface opens the FloatingPanel viewport from
|
|
4
|
+
* its trigger, and no component source under components/ imports Popover.
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { readdirSync, readFileSync, statSync } from "node:fs";
|
|
8
|
+
import { join } from "node:path";
|
|
9
|
+
import { renderWithProviders } from "@multiplatform.one/test-utils";
|
|
10
|
+
import { fireEvent, screen, waitFor } from "@testing-library/react";
|
|
11
|
+
import type { ReactElement } from "react";
|
|
12
|
+
import { describe, expect, it, vi } from "vitest";
|
|
13
|
+
import { ColumnHeaderFilter } from "./ColumnHeaderFilter";
|
|
14
|
+
import { DataTableDateFilter } from "./DataTableDateFilter";
|
|
15
|
+
import { DataTableExport } from "./DataTableExport";
|
|
16
|
+
import { DataTableGroupingConfig } from "./DataTableGrouping";
|
|
17
|
+
import { DataTableSearch } from "./DataTableSearch";
|
|
18
|
+
import { DataTableToolbar } from "./DataTableToolbar";
|
|
19
|
+
import { DataTableViewOptions } from "./DataTableViewOptions";
|
|
20
|
+
|
|
21
|
+
const panel = () =>
|
|
22
|
+
document.querySelector('[data-testid="floating-panel-viewport"]') as HTMLElement | null;
|
|
23
|
+
|
|
24
|
+
const rows = [{ name: "Ada", city: "London" }];
|
|
25
|
+
const columns = [
|
|
26
|
+
{ accessorKey: "name", header: "Name", id: "name", searchable: true },
|
|
27
|
+
{ accessorKey: "city", header: "City", id: "city", searchable: true },
|
|
28
|
+
];
|
|
29
|
+
|
|
30
|
+
interface Surface {
|
|
31
|
+
name: string;
|
|
32
|
+
ui: ReactElement;
|
|
33
|
+
trigger: () => HTMLElement;
|
|
34
|
+
content: string;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
const surfaces: Surface[] = [
|
|
38
|
+
{
|
|
39
|
+
name: "column header filter",
|
|
40
|
+
ui: (
|
|
41
|
+
<ColumnHeaderFilter
|
|
42
|
+
columnId="name"
|
|
43
|
+
columnLabel="Name"
|
|
44
|
+
columnType="text"
|
|
45
|
+
onFilterChange={vi.fn()}
|
|
46
|
+
/>
|
|
47
|
+
),
|
|
48
|
+
trigger: () => screen.getByLabelText("Filter column Name"),
|
|
49
|
+
content: "Filter: Name",
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
name: "export options",
|
|
53
|
+
ui: <DataTableExport data={rows} columns={columns} />,
|
|
54
|
+
trigger: () => screen.getByRole("button", { name: "Export options" }),
|
|
55
|
+
content: "Export Options",
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
name: "grouping",
|
|
59
|
+
ui: (
|
|
60
|
+
<DataTableGroupingConfig
|
|
61
|
+
columns={columns}
|
|
62
|
+
currentConfig={{ columns: [], aggregations: [] }}
|
|
63
|
+
onConfigChange={vi.fn()}
|
|
64
|
+
/>
|
|
65
|
+
),
|
|
66
|
+
trigger: () => screen.getByLabelText("Grouping configuration"),
|
|
67
|
+
content: "Grouping & Aggregation",
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
name: "date filter",
|
|
71
|
+
ui: <DataTableDateFilter placeholder="Pick a date" />,
|
|
72
|
+
trigger: () => screen.getByText("Pick a date"),
|
|
73
|
+
content: "Date Filter",
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
name: "search options",
|
|
77
|
+
ui: <DataTableSearch data={rows} columns={columns} onSearchResults={vi.fn()} />,
|
|
78
|
+
trigger: () => screen.getByRole("button", { name: "Search options" }),
|
|
79
|
+
content: "Search Options",
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
name: "toolbar save-view",
|
|
83
|
+
ui: (
|
|
84
|
+
<DataTableToolbar
|
|
85
|
+
onSaveView={vi.fn()}
|
|
86
|
+
onLoadView={vi.fn()}
|
|
87
|
+
views={[]}
|
|
88
|
+
enableViews
|
|
89
|
+
showViewSelector
|
|
90
|
+
/>
|
|
91
|
+
),
|
|
92
|
+
trigger: () => screen.getByRole("button", { name: "Save view" }),
|
|
93
|
+
content: "",
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
name: "view options save-view",
|
|
97
|
+
ui: (
|
|
98
|
+
<DataTableViewOptions
|
|
99
|
+
columns={[{ id: "name", label: "Name", visible: true, order: 0 }]}
|
|
100
|
+
onSaveView={vi.fn()}
|
|
101
|
+
onLoadView={vi.fn()}
|
|
102
|
+
onResetToDefault={vi.fn()}
|
|
103
|
+
showViewManagement
|
|
104
|
+
/>
|
|
105
|
+
),
|
|
106
|
+
trigger: () => screen.getByText("Save Current View"),
|
|
107
|
+
content: "Save View",
|
|
108
|
+
},
|
|
109
|
+
];
|
|
110
|
+
|
|
111
|
+
describe("table dropdowns open FloatingPanel (MPO-221)", () => {
|
|
112
|
+
it.each(surfaces)("$name opens the FloatingPanel viewport", async ({ ui, trigger, content }) => {
|
|
113
|
+
renderWithProviders(ui);
|
|
114
|
+
expect(panel()).toBeNull();
|
|
115
|
+
fireEvent.click(trigger());
|
|
116
|
+
await waitFor(() => expect(panel()).not.toBeNull());
|
|
117
|
+
if (content) expect(panel()!.textContent).toContain(content);
|
|
118
|
+
// A compose-class editor declares its dismissal contract (LC-21 VERIFY).
|
|
119
|
+
expect(panel()!.querySelector('[data-dismiss-class="compose"]')).not.toBeNull();
|
|
120
|
+
});
|
|
121
|
+
|
|
122
|
+
it.each(surfaces)("$name closes on Escape", async ({ ui, trigger }) => {
|
|
123
|
+
renderWithProviders(ui);
|
|
124
|
+
fireEvent.click(trigger());
|
|
125
|
+
await waitFor(() => expect(panel()).not.toBeNull());
|
|
126
|
+
fireEvent.keyDown(document.activeElement ?? document.body, { key: "Escape" });
|
|
127
|
+
await waitFor(() => expect(panel()).toBeNull());
|
|
128
|
+
});
|
|
129
|
+
|
|
130
|
+
it("the save-view panel holds the view-name field and its two actions", async () => {
|
|
131
|
+
const onSaveView = vi.fn();
|
|
132
|
+
renderWithProviders(
|
|
133
|
+
<DataTableToolbar
|
|
134
|
+
onSaveView={onSaveView}
|
|
135
|
+
onLoadView={vi.fn()}
|
|
136
|
+
views={[]}
|
|
137
|
+
enableViews
|
|
138
|
+
showViewSelector
|
|
139
|
+
/>,
|
|
140
|
+
);
|
|
141
|
+
fireEvent.click(screen.getByRole("button", { name: "Save view" }));
|
|
142
|
+
await waitFor(() => expect(panel()).not.toBeNull());
|
|
143
|
+
fireEvent.change(screen.getByLabelText("View name"), { target: { value: "Mine" } });
|
|
144
|
+
fireEvent.click(screen.getByRole("button", { name: "Save" }));
|
|
145
|
+
expect(onSaveView).toHaveBeenCalledWith("Mine");
|
|
146
|
+
await waitFor(() => expect(panel()).toBeNull());
|
|
147
|
+
});
|
|
148
|
+
});
|
|
149
|
+
|
|
150
|
+
function componentSources(dir: string): string[] {
|
|
151
|
+
return readdirSync(dir).flatMap((entry) => {
|
|
152
|
+
const path = join(dir, entry);
|
|
153
|
+
if (statSync(path).isDirectory()) return componentSources(path);
|
|
154
|
+
return /\.tsx?$/.test(entry) && !/\.(spec|stories)\.tsx?$/.test(entry) ? [path] : [];
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
describe("no Tamagui Popover in the table (MPO-221)", () => {
|
|
159
|
+
it("no component source imports Popover from tamagui", () => {
|
|
160
|
+
const offenders = componentSources(__dirname).filter((file) =>
|
|
161
|
+
/import\s*{[^}]*\bPopover\b[^}]*}\s*from\s*["']tamagui["']/.test(readFileSync(file, "utf8")),
|
|
162
|
+
);
|
|
163
|
+
expect(offenders).toEqual([]);
|
|
164
|
+
});
|
|
165
|
+
|
|
166
|
+
it("no component source mounts the components PopoverContent", () => {
|
|
167
|
+
const offenders = componentSources(__dirname).filter((file) =>
|
|
168
|
+
/\bPopoverContent\b/.test(readFileSync(file, "utf8")),
|
|
169
|
+
);
|
|
170
|
+
expect(offenders).toEqual([]);
|
|
171
|
+
});
|
|
172
|
+
});
|
|
@@ -225,3 +225,42 @@ describe("useDataTable column width normalization", () => {
|
|
|
225
225
|
expect(result.current.table.getColumn("status")?.columnDef.sortingFn).toBe(sortingFn);
|
|
226
226
|
});
|
|
227
227
|
});
|
|
228
|
+
|
|
229
|
+
// ---------------------------------------------------------------------------
|
|
230
|
+
// columnOrder seeding — id-less columns keep the caller's declared order
|
|
231
|
+
// (MPO-292: `col.id || ""` matched no column, so every id-less column fell
|
|
232
|
+
// behind every id'd one)
|
|
233
|
+
// ---------------------------------------------------------------------------
|
|
234
|
+
|
|
235
|
+
describe("useDataTable columnOrder seeding", () => {
|
|
236
|
+
type Row = { id: number; name: string; status: string; owner: { name: string } };
|
|
237
|
+
const rows: Row[] = [
|
|
238
|
+
{ id: 1, name: "Alice", status: "Active", owner: { name: "Ops" } },
|
|
239
|
+
{ id: 2, name: "Bob", status: "Lead", owner: { name: "Sales" } },
|
|
240
|
+
];
|
|
241
|
+
|
|
242
|
+
it("seeds columnOrder with TanStack's own key for every column, id or not", () => {
|
|
243
|
+
const columns = [
|
|
244
|
+
{ accessorKey: "name", header: "Name" },
|
|
245
|
+
{ id: "_actions", header: "Actions", cell: () => null },
|
|
246
|
+
{ accessorKey: "owner.name", header: "Owner" },
|
|
247
|
+
{ accessorFn: (row: Row) => row.status, header: "Status" },
|
|
248
|
+
] as DataTableColumn<Row>[];
|
|
249
|
+
const { result } = renderHook(() => useDataTable({ data: rows, columns }));
|
|
250
|
+
const order = result.current.state.columnOrder;
|
|
251
|
+
expect(order).toEqual(["name", "_actions", "owner_name", "Status"]);
|
|
252
|
+
expect(new Set(order).size).toBe(columns.length);
|
|
253
|
+
for (const key of order) expect(result.current.table.getColumn(key)?.id).toBe(key);
|
|
254
|
+
});
|
|
255
|
+
|
|
256
|
+
it("renders getVisibleCells() in the declared order when id'd and id-less columns mix", () => {
|
|
257
|
+
const columns = [
|
|
258
|
+
{ accessorKey: "name", header: "Name" },
|
|
259
|
+
{ id: "_actions", header: "Actions", cell: () => null },
|
|
260
|
+
{ accessorKey: "status", header: "Status" },
|
|
261
|
+
] as DataTableColumn<Row>[];
|
|
262
|
+
const { result } = renderHook(() => useDataTable({ data: rows, columns }));
|
|
263
|
+
const cells = result.current.table.getRowModel().rows[0].getVisibleCells();
|
|
264
|
+
expect(cells.map((cell) => cell.column.id)).toEqual(["name", "_actions", "status"]);
|
|
265
|
+
});
|
|
266
|
+
});
|
|
@@ -221,6 +221,20 @@ function normalizeColumnWidths<TData extends DataTableData>(
|
|
|
221
221
|
return Object.keys(sizing).length ? { ...column, ...sizing } : column;
|
|
222
222
|
}
|
|
223
223
|
|
|
224
|
+
// TanStack keys an id-less column by its accessorKey (dots folded to "_"),
|
|
225
|
+
// then by a string header; a seeded order must use that same key or the
|
|
226
|
+
// column falls behind every matched one.
|
|
227
|
+
function columnOrderKey<TData extends DataTableData>(
|
|
228
|
+
column: ColumnDef<TData>,
|
|
229
|
+
index: number,
|
|
230
|
+
): string {
|
|
231
|
+
if (column.id) return column.id;
|
|
232
|
+
const { accessorKey, header } = column as { accessorKey?: unknown; header?: unknown };
|
|
233
|
+
if (typeof accessorKey === "string" && accessorKey) return accessorKey.replace(/\./g, "_");
|
|
234
|
+
if (typeof header === "string" && header) return header;
|
|
235
|
+
return String(index);
|
|
236
|
+
}
|
|
237
|
+
|
|
224
238
|
export function useDataTable<TData extends DataTableData = DataTableData>({
|
|
225
239
|
data = [],
|
|
226
240
|
columns = [],
|
|
@@ -269,7 +283,7 @@ export function useDataTable<TData extends DataTableData = DataTableData>({
|
|
|
269
283
|
columnFilters: [],
|
|
270
284
|
globalFilter: "",
|
|
271
285
|
columnVisibility: {},
|
|
272
|
-
columnOrder: columns.map((
|
|
286
|
+
columnOrder: columns.map((column, index) => columnOrderKey(column, index)),
|
|
273
287
|
columnSizing: {},
|
|
274
288
|
views: [],
|
|
275
289
|
...initialState,
|
package/src/index.ts
CHANGED
|
@@ -125,6 +125,7 @@ export type {
|
|
|
125
125
|
|
|
126
126
|
export { TableInput, type TableInputProps } from "./components/TableInput";
|
|
127
127
|
export { ChildTable, type ChildTableProps } from "./components/ChildTable";
|
|
128
|
+
export type { ChildCellHidden } from "./components/TableInput/shared";
|
|
128
129
|
export { DataTableCell, type DataTableCellProps } from "./components/DataTableCell";
|
|
129
130
|
export { FilterManager, type FilterManagerProps } from "./components/FilterManager";
|
|
130
131
|
export {
|
package/src/utils/rowPress.ts
CHANGED
|
@@ -33,6 +33,9 @@ const INTERACTIVE_SELECTOR = [
|
|
|
33
33
|
// Expand/collapse toggles (the row-expansion caret) predate a role — the
|
|
34
34
|
// expanded-state attribute is their detectable interactivity signal.
|
|
35
35
|
"[aria-expanded]",
|
|
36
|
+
// A cell editor's floating panel is portaled out of the row (MPO-335), and
|
|
37
|
+
// React still bubbles its presses to the row: all of it is inner control.
|
|
38
|
+
"[data-fp-portal]",
|
|
36
39
|
].join(", ");
|
|
37
40
|
|
|
38
41
|
/**
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type ReactNode } from "react";
|
|
2
2
|
import { type AnyFormApi } from "@multiplatform.one/forms";
|
|
3
|
+
import type { ChildCellHidden } from "../TableInput/shared";
|
|
3
4
|
import type { DataTableColumn, DataTableData } from "../../types";
|
|
4
5
|
export type ChildTableProps<TRow extends DataTableData = DataTableData> = {
|
|
5
6
|
name?: string;
|
|
@@ -28,6 +29,15 @@ export type ChildTableProps<TRow extends DataTableData = DataTableData> = {
|
|
|
28
29
|
* read-only or disabled. A committed drop rewrites `idx` 1..n (MPO-22).
|
|
29
30
|
*/
|
|
30
31
|
enableReorder?: boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Per-row button that opens the row in a detail editor over
|
|
34
|
+
* `detailColumns` (default `columns`). Opt-in; a read-only table opens
|
|
35
|
+
* the row for viewing (MPO-22).
|
|
36
|
+
*/
|
|
37
|
+
rowDetail?: boolean;
|
|
38
|
+
detailColumns?: DataTableColumn<TRow>[];
|
|
39
|
+
/** Hides one row's cell, in the grid and in the detail editor (MPO-22). */
|
|
40
|
+
isCellHidden?: ChildCellHidden<TRow>;
|
|
31
41
|
};
|
|
32
42
|
export declare function ChildTable<TRow extends DataTableData = DataTableData>(props: ChildTableProps<TRow>): import("react/jsx-runtime").JSX.Element;
|
|
33
43
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ChildTable/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEpD,OAAO,EAA6B,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAGtF,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAElE,MAAM,MAAM,eAAe,CAAC,IAAI,SAAS,aAAa,GAAG,aAAa,IAAI;IACxE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC;IAClC,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;IACjC,UAAU,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ChildTable/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEpD,OAAO,EAA6B,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAGtF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAElE,MAAM,MAAM,eAAe,CAAC,IAAI,SAAS,aAAa,GAAG,aAAa,IAAI;IACxE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC;IAClC,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;IACjC,UAAU,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;IACxC,2EAA2E;IAC3E,YAAY,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;CACtC,CAAC;AA0BF,wBAAgB,UAAU,CAAC,IAAI,SAAS,aAAa,GAAG,aAAa,EACnE,KAAK,EAAE,eAAe,CAAC,IAAI,CAAC,2CAgH7B"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* ColumnHeaderFilter - Filter
|
|
2
|
+
* ColumnHeaderFilter - Filter panel for individual column headers
|
|
3
3
|
* AG Grid style column filtering with operators and value inputs
|
|
4
4
|
*/
|
|
5
5
|
import type { DataTableColumnType } from "../../types";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ColumnHeaderFilter/index.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAiBH,OAAO,KAAK,EAAE,mBAAmB,EAAkB,MAAM,aAAa,CAAC;AAKvE;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GAAG,mBAAmB,CAAC;AAEnD,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,gBAAgB,CAAC;IAC7B,2CAA2C;IAC3C,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,mCAAmC;IACnC,cAAc,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IACrC,sCAAsC;IACtC,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,GAAG,CAAA;KAAE,CAAC,CAAC;IAC/C,+CAA+C;IAC/C,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAWD,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EAAE,SAAS,EACnB,WAAW,EACX,UAAU,EACV,WAAW,EACX,cAAc,EACd,OAAO,EACP,UAAU,GACX,EAAE,uBAAuB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ColumnHeaderFilter/index.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAiBH,OAAO,KAAK,EAAE,mBAAmB,EAAkB,MAAM,aAAa,CAAC;AAKvE;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GAAG,mBAAmB,CAAC;AAEnD,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,gBAAgB,CAAC;IAC7B,2CAA2C;IAC3C,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,mCAAmC;IACnC,cAAc,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IACrC,sCAAsC;IACtC,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,GAAG,CAAA;KAAE,CAAC,CAAC;IAC/C,+CAA+C;IAC/C,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAWD,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EAAE,SAAS,EACnB,WAAW,EACX,UAAU,EACV,WAAW,EACX,cAAc,EACd,OAAO,EACP,UAAU,GACX,EAAE,uBAAuB,2CAuIzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTableRoot.d.ts","sourceRoot":"","sources":["../../../src/components/DataTable/DataTableRoot.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAcH,OAAO,KAA4D,MAAM,OAAO,CAAC;AAajF,OAAO,KAAK,EAIV,cAAc,EAEf,MAAM,aAAa,CAAC;AAgDrB,MAAM,WAAW,kBAAkB,CACjC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CACvD,SAAQ,cAAc,CAAC,KAAK,CAAC;IAC7B,mDAAmD;IACnD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,0CAA0C;IAC1C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,8DAA8D;IAC9D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,aAAa,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EACrF,IAAI,EACJ,OAAO,EACP,YAAY,EACZ,eAAe,EACf,aAAa,EACb,OAAO,EACP,SAAS,EAAE,aAAa,EACxB,UAAU,EAAE,cAAc,EAC1B,WAAmB,EACnB,aAAmB,EACnB,WAAW,EACX,eAAuB,EACvB,gBAAwB,EACxB,aAAqB,EACrB,eAAsB,EACtB,gBAAgB,EAChB,aAAoB,EACpB,gBAAuB,EACvB,eAAe,EACf,cAAwB,EACxB,QAAQ,EACR,cAAc,EACd,sBAA6B,EAC7B,oBAA4B,EAC5B,oBAA4B,EAC5B,kBAAyB,EACzB,WAAmB,EACnB,YAAsB,EACtB,MAAe,EACf,oBAA4B,EAC5B,oBAAoB,EACpB,sBAA0B,EAC1B,kBAA0B,EAC1B,kBAAkB,EAClB,UAAU,EACV,mBAA2B,EAC3B,gBAAoB,EACpB,cAAsB,EACtB,wBAAgC,EAChC,UAAU,EACV,QAAQ,EACR,kBAA0B,EAC1B,cAAc,EAAE,kBAAkB,EAClC,WAAW,EACX,QAAgB,EAChB,YAAY,EACZ,IAAI,EACJ,IAAI,EAAE,QAAQ,EACd,cAAsB,EACtB,UAAkB,EAClB,aAAqB,EACrB,OAAW,EACX,OAAO,EACP,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,aAAa,EAAE,cAAc,EAC7B,SAAS,EACT,IAAI,EACJ,OAAe,EACf,QAAgB,EAChB,MAAM,EACN,KAAK,EACL,OAAO,EACP,OAAO,EACP,QAAQ,EACR,YAAY,EAAE,SAAS,EACvB,kBAAkB,EAAE,eAAe,EACnC,GAAG,KAAK,EACT,EAAE,kBAAkB,CAAC,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"DataTableRoot.d.ts","sourceRoot":"","sources":["../../../src/components/DataTable/DataTableRoot.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAcH,OAAO,KAA4D,MAAM,OAAO,CAAC;AAajF,OAAO,KAAK,EAIV,cAAc,EAEf,MAAM,aAAa,CAAC;AAgDrB,MAAM,WAAW,kBAAkB,CACjC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CACvD,SAAQ,cAAc,CAAC,KAAK,CAAC;IAC7B,mDAAmD;IACnD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,0CAA0C;IAC1C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,8DAA8D;IAC9D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,aAAa,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EACrF,IAAI,EACJ,OAAO,EACP,YAAY,EACZ,eAAe,EACf,aAAa,EACb,OAAO,EACP,SAAS,EAAE,aAAa,EACxB,UAAU,EAAE,cAAc,EAC1B,WAAmB,EACnB,aAAmB,EACnB,WAAW,EACX,eAAuB,EACvB,gBAAwB,EACxB,aAAqB,EACrB,eAAsB,EACtB,gBAAgB,EAChB,aAAoB,EACpB,gBAAuB,EACvB,eAAe,EACf,cAAwB,EACxB,QAAQ,EACR,cAAc,EACd,sBAA6B,EAC7B,oBAA4B,EAC5B,oBAA4B,EAC5B,kBAAyB,EACzB,WAAmB,EACnB,YAAsB,EACtB,MAAe,EACf,oBAA4B,EAC5B,oBAAoB,EACpB,sBAA0B,EAC1B,kBAA0B,EAC1B,kBAAkB,EAClB,UAAU,EACV,mBAA2B,EAC3B,gBAAoB,EACpB,cAAsB,EACtB,wBAAgC,EAChC,UAAU,EACV,QAAQ,EACR,kBAA0B,EAC1B,cAAc,EAAE,kBAAkB,EAClC,WAAW,EACX,QAAgB,EAChB,YAAY,EACZ,IAAI,EACJ,IAAI,EAAE,QAAQ,EACd,cAAsB,EACtB,UAAkB,EAClB,aAAqB,EACrB,OAAW,EACX,OAAO,EACP,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,aAAa,EAAE,cAAc,EAC7B,SAAS,EACT,IAAI,EACJ,OAAe,EACf,QAAgB,EAChB,MAAM,EACN,KAAK,EACL,OAAO,EACP,OAAO,EACP,QAAQ,EACR,YAAY,EAAE,SAAS,EACvB,kBAAkB,EAAE,eAAe,EACnC,GAAG,KAAK,EACT,EAAE,kBAAkB,CAAC,KAAK,CAAC,2CAyqE3B"}
|
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* CellModalEditor — wraps tall field types (FileUpload, Signature, RichText,
|
|
3
|
-
* etc.) in a
|
|
4
|
-
* `FieldDisplay` summary; click opens
|
|
3
|
+
* etc.) in a forms FloatingPanel that opens on cell click. The cell shows a
|
|
4
|
+
* compact `FieldDisplay` summary; a click opens the full editor in a panel
|
|
5
|
+
* that attaches to the cell it was opened from (MPO-38 cover contract), the
|
|
6
|
+
* same FloatingPanel the native variant uses (a sheet there and at 640 and
|
|
7
|
+
* below). It never grows the row (LC-06).
|
|
5
8
|
*
|
|
6
|
-
* The
|
|
9
|
+
* The panel is a staging buffer (UX-023 / Axiom 7 AGENCY): the inner editor
|
|
7
10
|
* is wired to a local draft seeded from the committed value on open — nothing
|
|
8
|
-
* reaches the row while the
|
|
11
|
+
* reaches the row while the panel is open. "Done" commits the draft once via
|
|
9
12
|
* `onCommit`; an outside click also commits (LC-21: a cell editor's draft
|
|
10
13
|
* still commits on the outside-click close); "Cancel" and Escape discard the
|
|
11
14
|
* draft and leave the row untouched. Cancel is never disabled (LC-30) and the
|
|
12
|
-
* footer stays within the two-action
|
|
15
|
+
* footer stays within the two-action budget (LC-31).
|
|
13
16
|
*/
|
|
14
17
|
import { type FieldDisplayType } from "@multiplatform.one/forms";
|
|
15
18
|
import { type ReactNode } from "react";
|
|
@@ -22,12 +25,12 @@ export interface CellModalEditorProps {
|
|
|
22
25
|
/** Commits the staged draft to the row. Fires at most once per session. */
|
|
23
26
|
onCommit: (value: any) => void;
|
|
24
27
|
/**
|
|
25
|
-
* Full editor mounted inside the
|
|
28
|
+
* Full editor mounted inside the panel, wired to the staged draft: render
|
|
26
29
|
* with `draftValue` and report edits through `onDraftChange` — never
|
|
27
30
|
* straight to the row.
|
|
28
31
|
*/
|
|
29
32
|
children: (draftValue: any, onDraftChange: (value: any) => void) => ReactNode;
|
|
30
|
-
/** Title shown in the
|
|
33
|
+
/** Title shown in the panel header. */
|
|
31
34
|
title?: string;
|
|
32
35
|
/**
|
|
33
36
|
* Accessible name for the chromeless cell trigger (column header).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CellModalEditor.d.ts","sourceRoot":"","sources":["../../../src/components/DataTableCell/CellModalEditor.tsx"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"CellModalEditor.d.ts","sourceRoot":"","sources":["../../../src/components/DataTableCell/CellModalEditor.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAIL,KAAK,gBAAgB,EACtB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EAA4C,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAIjF,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,gBAAgB,CAAC;IACxB,KAAK,EAAE,GAAG,CAAC;IACX,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,2EAA2E;IAC3E,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAC/B;;;;OAIG;IACH,QAAQ,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,KAAK,SAAS,CAAC;IAC9E,uCAAuC;IACvC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,KAAK,EACL,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,KAAK,GACN,EAAE,oBAAoB,2CA4ItB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/DataTableCell/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/DataTableCell/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAiDH,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAKvE,MAAM,WAAW,kBAAkB;IACjC,yBAAyB;IACzB,KAAK,EAAE,GAAG,CAAC;IACX,uEAAuE;IACvE,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,mBAAmB,CAAC;IACjC,kCAAkC;IAClC,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAC/B,yDAAyD;IACzD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qBAAqB;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,kCAAkC;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kCAAkC;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,iCAAiC;IACjC,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,kCAAkC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wEAAwE;IACxE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB;;OAEG;IACH,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;CACvC;AAED,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,KAAe,EACf,UAAe,EACf,QAAQ,EACR,QAAgB,EAChB,QAAgB,EAChB,QAAQ,EACR,WAAW,EACX,QAAQ,EAAE,SAAS,EACnB,OAAO,EACP,IAAI,EACJ,OAAO,EACP,WAAW,EAAE,YAAY,EACzB,cAAc,EAAE,eAAe,GAChC,EAAE,kBAAkB,2CAs0BpB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/DataTableDateFilter/index.tsx"],"names":[],"mappings":"AASA,OAAO,KAA4B,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/DataTableDateFilter/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/DataTableGrouping/index.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/DataTableGrouping/index.tsx"],"names":[],"mappings":"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"}
|