@multiplatform.one/table 6.4.3 → 6.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/ChildTable/index.native.js +1 -1
- package/dist/cjs/components/ChildTable/index.native.js.map +1 -1
- package/dist/cjs/components/ColumnHeaderFilter/index.cjs +1 -0
- package/dist/cjs/components/ColumnHeaderFilter/index.native.js +2 -1
- package/dist/cjs/components/ColumnHeaderFilter/index.native.js.map +1 -1
- package/dist/cjs/components/DataTable/DataTableCardControls.native.js +1 -1
- package/dist/cjs/components/DataTable/DataTableCardControls.native.js.map +1 -1
- package/dist/cjs/components/DataTable/DataTableContext.native.js.map +1 -1
- package/dist/cjs/components/DataTable/DataTableMobileCards.cjs +9 -3
- package/dist/cjs/components/DataTable/DataTableMobileCards.native.js +12 -3
- package/dist/cjs/components/DataTable/DataTableMobileCards.native.js.map +1 -1
- package/dist/cjs/components/DataTable/DataTableRoot.cjs +133 -13
- package/dist/cjs/components/DataTable/DataTableRoot.native.js +166 -20
- package/dist/cjs/components/DataTable/DataTableRoot.native.js.map +1 -1
- package/dist/cjs/components/DataTable/DataTableStateContext.native.js.map +1 -1
- package/dist/cjs/components/DataTable/DataTableVirtualized.cjs +3 -1
- package/dist/cjs/components/DataTable/DataTableVirtualized.native.js +3 -1
- package/dist/cjs/components/DataTable/DataTableVirtualized.native.js.map +1 -1
- package/dist/cjs/components/DataTable/index.native.js +49 -12
- package/dist/cjs/components/DataTable/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableBulkActions/index.cjs +16 -1
- package/dist/cjs/components/DataTableBulkActions/index.native.js +20 -1
- package/dist/cjs/components/DataTableBulkActions/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableCell/CellModalEditor.cjs +4 -8
- package/dist/cjs/components/DataTableCell/CellOptionsEditor.native.js.map +1 -1
- package/dist/cjs/components/DataTableCell/index.cjs +1 -33
- package/dist/cjs/components/DataTableCell/index.native.js +1 -34
- package/dist/cjs/components/DataTableCell/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableColumnPinning/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableDateFilter/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableExport/index.cjs +1 -0
- package/dist/cjs/components/DataTableExport/index.native.js +1 -0
- package/dist/cjs/components/DataTableExport/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableFilterButton/index.cjs +1 -1
- package/dist/cjs/components/DataTableFilterButton/index.native.js +5 -2
- package/dist/cjs/components/DataTableFilterButton/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableFilterChips/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableFilters/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableGrouping/index.cjs +1 -0
- package/dist/cjs/components/DataTableGrouping/index.native.js +1 -0
- package/dist/cjs/components/DataTableGrouping/index.native.js.map +1 -1
- package/dist/cjs/components/DataTablePagination/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableSearch/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableToolbar/index.cjs +1 -0
- package/dist/cjs/components/DataTableToolbar/index.native.js +2 -1
- package/dist/cjs/components/DataTableToolbar/index.native.js.map +1 -1
- package/dist/cjs/components/DataTableViewOptions/index.native.js.map +1 -1
- package/dist/cjs/components/FilterManager.cjs +18 -14
- package/dist/cjs/components/FilterManager.native.js +18 -14
- package/dist/cjs/components/FilterManager.native.js.map +1 -1
- package/dist/cjs/components/FilterOperatorValueEditor/index.native.js.map +1 -1
- package/dist/cjs/components/KnobDialog.native.js.map +1 -1
- package/dist/cjs/components/SavedFilterDropdown.native.js.map +1 -1
- package/dist/cjs/components/SimpleTable/index.native.js.map +1 -1
- package/dist/cjs/components/TableInput/index.native.js +4 -1
- package/dist/cjs/components/TableInput/index.native.js.map +1 -1
- package/dist/cjs/components/TableInput/shared.native.js.map +1 -1
- package/dist/cjs/hooks/useDataTable.cjs +17 -1
- package/dist/cjs/hooks/useDataTable.native.js +19 -1
- package/dist/cjs/hooks/useDataTable.native.js.map +1 -1
- package/dist/cjs/hooks/useDataTableKeyboard.native.js.map +1 -1
- package/dist/cjs/hooks/useDragScroll.native.js.map +1 -1
- package/dist/cjs/hooks/useInfiniteRows.native.js.map +1 -1
- package/dist/cjs/hooks/useSavedFilters.native.js.map +1 -1
- package/dist/cjs/hooks/useTableColumnPinning.native.js.map +1 -1
- package/dist/cjs/hooks/useTableFiltering.native.js.map +1 -1
- package/dist/cjs/hooks/useTableGrouping.native.js.map +1 -1
- package/dist/cjs/hooks/useTableKeyboard.native.js.map +1 -1
- package/dist/cjs/hooks/useTablePagination.native.js.map +1 -1
- package/dist/cjs/hooks/useTableSearch.native.js.map +1 -1
- package/dist/cjs/hooks/useTableSelection.native.js.map +1 -1
- package/dist/cjs/hooks/useTableSorting.native.js.map +1 -1
- package/dist/cjs/hooks/useTableUrlSync.native.js.map +1 -1
- package/dist/cjs/hooks/useTableViews.native.js.map +1 -1
- package/dist/cjs/shared/t.native.js.map +1 -1
- package/dist/cjs/shims/primitives.native.js.map +1 -1
- package/dist/cjs/shims/tableCellContext.native.js.map +1 -1
- package/dist/cjs/types.native.js.map +1 -1
- package/dist/cjs/utils/columnAlign.native.js.map +1 -1
- package/dist/cjs/utils/filterFields.native.js.map +1 -1
- package/dist/cjs/utils/filterUtils.native.js.map +1 -1
- package/dist/cjs/utils/paginationDefaults.native.js.map +1 -1
- package/dist/cjs/utils/rowPress.cjs +44 -0
- package/dist/cjs/utils/rowPress.native.js +56 -0
- package/dist/cjs/utils/rowPress.native.js.map +1 -0
- package/dist/cjs/utils/urlStateUtils.native.js.map +1 -1
- package/dist/cjs/utils/viewData.native.js.map +1 -1
- package/dist/cjs/utils/withInterp.native.js.map +1 -1
- package/dist/esm/components/ColumnHeaderFilter/index.mjs +1 -0
- package/dist/esm/components/ColumnHeaderFilter/index.mjs.map +1 -1
- package/dist/esm/components/ColumnHeaderFilter/index.native.js +1 -0
- package/dist/esm/components/ColumnHeaderFilter/index.native.js.map +1 -1
- package/dist/esm/components/DataTable/DataTableMobileCards.mjs +9 -3
- package/dist/esm/components/DataTable/DataTableMobileCards.mjs.map +1 -1
- package/dist/esm/components/DataTable/DataTableMobileCards.native.js +12 -3
- package/dist/esm/components/DataTable/DataTableMobileCards.native.js.map +1 -1
- package/dist/esm/components/DataTable/DataTableRoot.mjs +133 -13
- package/dist/esm/components/DataTable/DataTableRoot.mjs.map +1 -1
- package/dist/esm/components/DataTable/DataTableRoot.native.js +159 -13
- package/dist/esm/components/DataTable/DataTableRoot.native.js.map +1 -1
- package/dist/esm/components/DataTable/DataTableVirtualized.mjs +3 -1
- package/dist/esm/components/DataTable/DataTableVirtualized.mjs.map +1 -1
- package/dist/esm/components/DataTable/DataTableVirtualized.native.js +3 -1
- package/dist/esm/components/DataTable/DataTableVirtualized.native.js.map +1 -1
- package/dist/esm/components/DataTable/index.native.js +39 -2
- package/dist/esm/components/DataTable/index.native.js.map +1 -1
- package/dist/esm/components/DataTableBulkActions/index.mjs +16 -1
- package/dist/esm/components/DataTableBulkActions/index.mjs.map +1 -1
- package/dist/esm/components/DataTableBulkActions/index.native.js +20 -1
- package/dist/esm/components/DataTableBulkActions/index.native.js.map +1 -1
- package/dist/esm/components/DataTableCell/CellModalEditor.mjs +4 -8
- package/dist/esm/components/DataTableCell/CellModalEditor.mjs.map +1 -1
- package/dist/esm/components/DataTableCell/index.mjs +1 -33
- package/dist/esm/components/DataTableCell/index.mjs.map +1 -1
- package/dist/esm/components/DataTableCell/index.native.js +1 -34
- package/dist/esm/components/DataTableCell/index.native.js.map +1 -1
- package/dist/esm/components/DataTableExport/index.mjs +1 -0
- package/dist/esm/components/DataTableExport/index.mjs.map +1 -1
- package/dist/esm/components/DataTableExport/index.native.js +1 -0
- package/dist/esm/components/DataTableExport/index.native.js.map +1 -1
- package/dist/esm/components/DataTableFilterButton/index.mjs +1 -1
- package/dist/esm/components/DataTableFilterButton/index.mjs.map +1 -1
- package/dist/esm/components/DataTableFilterButton/index.native.js +4 -1
- package/dist/esm/components/DataTableFilterButton/index.native.js.map +1 -1
- package/dist/esm/components/DataTableGrouping/index.mjs +1 -0
- package/dist/esm/components/DataTableGrouping/index.mjs.map +1 -1
- package/dist/esm/components/DataTableGrouping/index.native.js +1 -0
- package/dist/esm/components/DataTableGrouping/index.native.js.map +1 -1
- package/dist/esm/components/DataTableToolbar/index.mjs +1 -0
- package/dist/esm/components/DataTableToolbar/index.mjs.map +1 -1
- package/dist/esm/components/DataTableToolbar/index.native.js +1 -0
- package/dist/esm/components/DataTableToolbar/index.native.js.map +1 -1
- package/dist/esm/components/FilterManager.mjs +18 -14
- package/dist/esm/components/FilterManager.mjs.map +1 -1
- package/dist/esm/components/FilterManager.native.js +18 -14
- package/dist/esm/components/FilterManager.native.js.map +1 -1
- package/dist/esm/components/TableInput/index.native.js +3 -0
- package/dist/esm/components/TableInput/index.native.js.map +1 -1
- package/dist/esm/hooks/useDataTable.mjs +17 -1
- package/dist/esm/hooks/useDataTable.mjs.map +1 -1
- package/dist/esm/hooks/useDataTable.native.js +19 -1
- package/dist/esm/hooks/useDataTable.native.js.map +1 -1
- package/dist/esm/utils/rowPress.mjs +19 -0
- package/dist/esm/utils/rowPress.mjs.map +1 -0
- package/dist/esm/utils/rowPress.native.js +28 -0
- package/dist/esm/utils/rowPress.native.js.map +1 -0
- package/dist/jsx/components/ColumnHeaderFilter/index.mjs +1 -0
- package/dist/jsx/components/ColumnHeaderFilter/index.mjs.map +1 -1
- package/dist/jsx/components/ColumnHeaderFilter/index.native.js +1 -0
- package/dist/jsx/components/ColumnHeaderFilter/index.native.js.map +1 -1
- package/dist/jsx/components/DataTable/DataTableMobileCards.mjs +9 -3
- package/dist/jsx/components/DataTable/DataTableMobileCards.mjs.map +1 -1
- package/dist/jsx/components/DataTable/DataTableMobileCards.native.js +12 -3
- package/dist/jsx/components/DataTable/DataTableMobileCards.native.js.map +1 -1
- package/dist/jsx/components/DataTable/DataTableRoot.mjs +133 -13
- package/dist/jsx/components/DataTable/DataTableRoot.mjs.map +1 -1
- package/dist/jsx/components/DataTable/DataTableRoot.native.js +159 -13
- package/dist/jsx/components/DataTable/DataTableRoot.native.js.map +1 -1
- package/dist/jsx/components/DataTable/DataTableVirtualized.mjs +3 -1
- package/dist/jsx/components/DataTable/DataTableVirtualized.mjs.map +1 -1
- package/dist/jsx/components/DataTable/DataTableVirtualized.native.js +3 -1
- package/dist/jsx/components/DataTable/DataTableVirtualized.native.js.map +1 -1
- package/dist/jsx/components/DataTable/index.native.js +39 -2
- package/dist/jsx/components/DataTable/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableBulkActions/index.mjs +16 -1
- package/dist/jsx/components/DataTableBulkActions/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableBulkActions/index.native.js +20 -1
- package/dist/jsx/components/DataTableBulkActions/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableCell/CellModalEditor.mjs +4 -8
- package/dist/jsx/components/DataTableCell/CellModalEditor.mjs.map +1 -1
- package/dist/jsx/components/DataTableCell/index.mjs +1 -33
- package/dist/jsx/components/DataTableCell/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableCell/index.native.js +1 -34
- package/dist/jsx/components/DataTableCell/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableExport/index.mjs +1 -0
- package/dist/jsx/components/DataTableExport/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableExport/index.native.js +1 -0
- package/dist/jsx/components/DataTableExport/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableFilterButton/index.mjs +1 -1
- package/dist/jsx/components/DataTableFilterButton/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableFilterButton/index.native.js +4 -1
- package/dist/jsx/components/DataTableFilterButton/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableGrouping/index.mjs +1 -0
- package/dist/jsx/components/DataTableGrouping/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableGrouping/index.native.js +1 -0
- package/dist/jsx/components/DataTableGrouping/index.native.js.map +1 -1
- package/dist/jsx/components/DataTableToolbar/index.mjs +1 -0
- package/dist/jsx/components/DataTableToolbar/index.mjs.map +1 -1
- package/dist/jsx/components/DataTableToolbar/index.native.js +1 -0
- package/dist/jsx/components/DataTableToolbar/index.native.js.map +1 -1
- package/dist/jsx/components/FilterManager.mjs +18 -14
- package/dist/jsx/components/FilterManager.mjs.map +1 -1
- package/dist/jsx/components/FilterManager.native.js +18 -14
- package/dist/jsx/components/FilterManager.native.js.map +1 -1
- package/dist/jsx/components/TableInput/index.native.js +3 -0
- package/dist/jsx/components/TableInput/index.native.js.map +1 -1
- package/dist/jsx/hooks/useDataTable.mjs +17 -1
- package/dist/jsx/hooks/useDataTable.mjs.map +1 -1
- package/dist/jsx/hooks/useDataTable.native.js +19 -1
- package/dist/jsx/hooks/useDataTable.native.js.map +1 -1
- package/dist/jsx/utils/rowPress.mjs +19 -0
- package/dist/jsx/utils/rowPress.mjs.map +1 -0
- package/dist/jsx/utils/rowPress.native.js +56 -0
- package/dist/jsx/utils/rowPress.native.js.map +1 -0
- package/package.json +12 -12
- package/src/components/ColumnHeaderFilter/index.tsx +1 -0
- package/src/components/DataTable/DataTable.spec.tsx +4 -1
- package/src/components/DataTable/DataTable.stories.tsx +190 -5
- package/src/components/DataTable/DataTableMobileCards.tsx +30 -4
- package/src/components/DataTable/DataTableRoot.tsx +195 -8
- package/src/components/DataTable/DataTableVirtualized.tsx +8 -0
- package/src/components/DataTable/cardLayout.spec.tsx +4 -1
- package/src/components/DataTable/customCellAlign.spec.tsx +124 -0
- package/src/components/DataTable/disabledContract.spec.tsx +4 -3
- package/src/components/DataTable/index.native.tsx +47 -1
- package/src/components/DataTable/rowPress.spec.tsx +229 -0
- package/src/components/DataTable/selectionSemantics.spec.tsx +156 -0
- package/src/components/DataTableBulkActions/index.tsx +16 -2
- package/src/components/DataTableBulkActions/selectionCountI18n.spec.tsx +94 -0
- package/src/components/DataTableCell/CellModalEditor.tsx +3 -1
- package/src/components/DataTableCell/cellDraftPolicy.spec.tsx +10 -2
- package/src/components/DataTableCell/dataTableCell.spec.tsx +10 -2
- package/src/components/DataTableCell/index.tsx +5 -36
- package/src/components/DataTableColumnPinning/DataTableColumnPinning.stories.tsx +49 -17
- package/src/components/DataTableDateFilter/DataTableDateFilter.stories.tsx +4 -3
- package/src/components/DataTableExport/DataTableExport.stories.tsx +3 -2
- package/src/components/DataTableExport/index.tsx +1 -0
- package/src/components/DataTableFilterButton/index.tsx +4 -1
- package/src/components/DataTableGrouping/DataTableGrouping.spec.tsx +59 -2
- package/src/components/DataTableGrouping/DataTableGrouping.stories.tsx +17 -5
- package/src/components/DataTableGrouping/index.tsx +1 -0
- package/src/components/DataTablePagination/DataTablePagination.stories.tsx +34 -20
- package/src/components/DataTableToolbar/index.tsx +1 -0
- package/src/components/DataTableViewOptions/DataTableViewOptions.stories.tsx +2 -1
- package/src/components/FilterManager.tsx +21 -13
- package/src/components/TableInput/index.native.tsx +3 -0
- package/src/components/__scratch__/scratch.spec.tsx +46 -0
- package/src/hooks/useDataTable.ts +27 -1
- package/src/types.ts +25 -0
- package/src/utils/rowPress.ts +58 -0
- package/types/components/ColumnHeaderFilter/index.d.ts.map +1 -1
- package/types/components/DataTable/DataTableMobileCards.d.ts +13 -1
- package/types/components/DataTable/DataTableMobileCards.d.ts.map +1 -1
- package/types/components/DataTable/DataTableRoot.d.ts +1 -1
- package/types/components/DataTable/DataTableRoot.d.ts.map +1 -1
- package/types/components/DataTable/DataTableVirtualized.d.ts +7 -1
- package/types/components/DataTable/DataTableVirtualized.d.ts.map +1 -1
- package/types/components/DataTable/index.native.d.ts +1 -1
- package/types/components/DataTable/index.native.d.ts.map +1 -1
- package/types/components/DataTableBulkActions/index.d.ts.map +1 -1
- package/types/components/DataTableCell/CellModalEditor.d.ts.map +1 -1
- package/types/components/DataTableCell/index.d.ts.map +1 -1
- package/types/components/DataTableFilterButton/index.d.ts.map +1 -1
- package/types/components/DataTableGrouping/index.d.ts.map +1 -1
- package/types/components/DataTableToolbar/index.d.ts.map +1 -1
- package/types/components/FilterManager.d.ts +7 -1
- package/types/components/FilterManager.d.ts.map +1 -1
- package/types/components/TableInput/index.native.d.ts.map +1 -1
- package/types/hooks/useDataTable.d.ts.map +1 -1
- package/types/types.d.ts +23 -0
- package/types/types.d.ts.map +1 -1
- package/types/utils/rowPress.d.ts +20 -0
- package/types/utils/rowPress.d.ts.map +1 -0
|
@@ -52,13 +52,13 @@ var import_react_i18next = require("react-i18next");
|
|
|
52
52
|
var import_useDataTable = require("../../hooks/useDataTable.native.js");
|
|
53
53
|
var import_useDragScroll = require("../../hooks/useDragScroll.native.js");
|
|
54
54
|
var import_useDataTableKeyboard = require("../../hooks/useDataTableKeyboard.native.js");
|
|
55
|
-
var import_DataTableColumnPinning = require("../DataTableColumnPinning
|
|
56
|
-
var import_DataTablePagination = require("../DataTablePagination
|
|
57
|
-
var import_DataTableToolbar = require("../DataTableToolbar
|
|
58
|
-
var import_DataTableBulkActions = require("../DataTableBulkActions
|
|
59
|
-
var import_DataTableCell = require("../DataTableCell
|
|
60
|
-
var import_ColumnHeaderFilter = require("../ColumnHeaderFilter
|
|
61
|
-
var import_DataTableFilterChips = require("../DataTableFilterChips
|
|
55
|
+
var import_DataTableColumnPinning = require("../DataTableColumnPinning");
|
|
56
|
+
var import_DataTablePagination = require("../DataTablePagination");
|
|
57
|
+
var import_DataTableToolbar = require("../DataTableToolbar");
|
|
58
|
+
var import_DataTableBulkActions = require("../DataTableBulkActions");
|
|
59
|
+
var import_DataTableCell = require("../DataTableCell");
|
|
60
|
+
var import_ColumnHeaderFilter = require("../ColumnHeaderFilter");
|
|
61
|
+
var import_DataTableFilterChips = require("../DataTableFilterChips");
|
|
62
62
|
var import_table_primitives = require("@multiplatform.one/table-primitives");
|
|
63
63
|
var import_DataTableContext = require("./DataTableContext.native.js");
|
|
64
64
|
var import_DataTableStateContext = require("./DataTableStateContext.native.js");
|
|
@@ -68,7 +68,17 @@ var import_DataTableVirtualized = require("./DataTableVirtualized.native.js");
|
|
|
68
68
|
var import_columnAlign = require("../../utils/columnAlign.native.js");
|
|
69
69
|
var import_filterFields = require("../../utils/filterFields.native.js");
|
|
70
70
|
var import_paginationDefaults = require("../../utils/paginationDefaults.native.js");
|
|
71
|
+
var import_rowPress = require("../../utils/rowPress.native.js");
|
|
71
72
|
var import_withInterp = require("../../utils/withInterp.native.js");
|
|
73
|
+
function _instanceof(left, right) {
|
|
74
|
+
"@swc/helpers - instanceof";
|
|
75
|
+
|
|
76
|
+
if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
|
|
77
|
+
return !!right[Symbol.hasInstance](left);
|
|
78
|
+
} else {
|
|
79
|
+
return left instanceof right;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
72
82
|
var SELECTION_COL_WIDTH = 40;
|
|
73
83
|
function getColumnField(column) {
|
|
74
84
|
var _column_field;
|
|
@@ -121,6 +131,8 @@ function DataTableRoot(param) {
|
|
|
121
131
|
maxPinnedColumns = 3,
|
|
122
132
|
enableGrouping = false,
|
|
123
133
|
enableKeyboardNavigation = false,
|
|
134
|
+
onRowPress,
|
|
135
|
+
rowLabel,
|
|
124
136
|
enableRowSelection = false,
|
|
125
137
|
selectAllScope: selectAllScopeProp,
|
|
126
138
|
bulkActions,
|
|
@@ -423,6 +435,112 @@ function DataTableRoot(param) {
|
|
|
423
435
|
if (row.getCanExpand()) row.toggleExpanded();
|
|
424
436
|
} : void 0
|
|
425
437
|
});
|
|
438
|
+
var isSSR = typeof window === "undefined";
|
|
439
|
+
var rowPressActive = Boolean(onRowPress) && !disabled;
|
|
440
|
+
var [rowPressAnchor, setRowPressAnchor] = (0, import_react3.useState)(0);
|
|
441
|
+
var effectiveRowPressAnchor = Math.min(rowPressAnchor, Math.max(tableRows.length - 1, 0));
|
|
442
|
+
var deriveRowIdentity = (0, import_react3.useCallback)(function (row) {
|
|
443
|
+
var fromAccessor = rowLabel === null || rowLabel === void 0 ? void 0 : rowLabel(row.original);
|
|
444
|
+
if (fromAccessor) return fromAccessor;
|
|
445
|
+
var firstCellValue;
|
|
446
|
+
try {
|
|
447
|
+
var _row_getVisibleCells_;
|
|
448
|
+
firstCellValue = (_row_getVisibleCells_ = row.getVisibleCells()[0]) === null || _row_getVisibleCells_ === void 0 ? void 0 : _row_getVisibleCells_.getValue();
|
|
449
|
+
} catch (unused) {
|
|
450
|
+
firstCellValue = void 0;
|
|
451
|
+
}
|
|
452
|
+
if (typeof firstCellValue === "string" && firstCellValue.length > 0 || typeof firstCellValue === "number") {
|
|
453
|
+
return String(firstCellValue);
|
|
454
|
+
}
|
|
455
|
+
return void 0;
|
|
456
|
+
}, [rowLabel]);
|
|
457
|
+
var deriveRowLabel = (0, import_react3.useCallback)(function (row, rowIndex) {
|
|
458
|
+
var _deriveRowIdentity;
|
|
459
|
+
return (_deriveRowIdentity = deriveRowIdentity(row)) !== null && _deriveRowIdentity !== void 0 ? _deriveRowIdentity : (0, import_withInterp.withInterp)(t("Row {{row}}", {
|
|
460
|
+
row: rowIndex + 1
|
|
461
|
+
}), {
|
|
462
|
+
row: rowIndex + 1
|
|
463
|
+
});
|
|
464
|
+
}, [deriveRowIdentity, t]);
|
|
465
|
+
var deriveSelectRowLabel = (0, import_react3.useCallback)(function (row, rowIndex) {
|
|
466
|
+
var _deriveRowIdentity;
|
|
467
|
+
var identity = (_deriveRowIdentity = deriveRowIdentity(row)) !== null && _deriveRowIdentity !== void 0 ? _deriveRowIdentity : String(rowIndex + 1);
|
|
468
|
+
return (0, import_withInterp.withInterp)(t("Select row {{row}}", {
|
|
469
|
+
row: identity
|
|
470
|
+
}), {
|
|
471
|
+
row: identity
|
|
472
|
+
});
|
|
473
|
+
}, [deriveRowIdentity, t]);
|
|
474
|
+
var activateRowPress = (0, import_react3.useCallback)(function (row, rowIndex) {
|
|
475
|
+
onRowPress === null || onRowPress === void 0 ? void 0 : onRowPress(row.original, rowIndex);
|
|
476
|
+
}, [onRowPress]);
|
|
477
|
+
var getRowPressProps = (0, import_react3.useCallback)(function (row, rowIndex) {
|
|
478
|
+
var variant = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : "row";
|
|
479
|
+
if (!rowPressActive) return {};
|
|
480
|
+
var handlePress = function handlePress2(event) {
|
|
481
|
+
var _ref;
|
|
482
|
+
var _event_nativeEvent;
|
|
483
|
+
if (event === null || event === void 0 ? void 0 : event.defaultPrevented) return;
|
|
484
|
+
var targetEl = (_ref = event === null || event === void 0 ? void 0 : event.target) !== null && _ref !== void 0 ? _ref : event === null || event === void 0 ? void 0 : (_event_nativeEvent = event.nativeEvent) === null || _event_nativeEvent === void 0 ? void 0 : _event_nativeEvent.target;
|
|
485
|
+
if (import_tamagui.isWeb && typeof Element !== "undefined" && _instanceof(targetEl, Element)) {
|
|
486
|
+
var boundary = targetEl.closest('[data-row-press="true"]');
|
|
487
|
+
if ((0, import_rowPress.isInteractiveInnerTarget)(targetEl, boundary)) return;
|
|
488
|
+
}
|
|
489
|
+
activateRowPress(row, rowIndex);
|
|
490
|
+
};
|
|
491
|
+
return {
|
|
492
|
+
"aria-label": deriveRowLabel(row, rowIndex),
|
|
493
|
+
onPress: handlePress,
|
|
494
|
+
cursor: "pointer",
|
|
495
|
+
pressStyle: {
|
|
496
|
+
backgroundColor: "$color4"
|
|
497
|
+
},
|
|
498
|
+
...(variant === "card" ? {
|
|
499
|
+
role: "button"
|
|
500
|
+
} : {}),
|
|
501
|
+
...(import_tamagui.isWeb && !isSSR ? {
|
|
502
|
+
tabIndex: rowIndex === effectiveRowPressAnchor ? 0 : -1,
|
|
503
|
+
focusVisibleStyle: (0, import_theme.ensureFocusVisibleRing)({
|
|
504
|
+
outlineOffset: -2
|
|
505
|
+
}),
|
|
506
|
+
"data-row-press": "true",
|
|
507
|
+
onFocus: function onFocus(e) {
|
|
508
|
+
if (e.target === e.currentTarget) setRowPressAnchor(rowIndex);
|
|
509
|
+
},
|
|
510
|
+
onBlur: function onBlur(e) {
|
|
511
|
+
var next = e.relatedTarget;
|
|
512
|
+
if (!_instanceof(next, Element) || !next.closest('[data-row-press="true"]')) {
|
|
513
|
+
setRowPressAnchor(0);
|
|
514
|
+
}
|
|
515
|
+
},
|
|
516
|
+
onKeyDown: function onKeyDown(e) {
|
|
517
|
+
if (e.defaultPrevented) return;
|
|
518
|
+
if (e.target !== e.currentTarget) return;
|
|
519
|
+
var key = e.key;
|
|
520
|
+
if (key === "Enter" || key === " " || key === "Spacebar") {
|
|
521
|
+
e.preventDefault();
|
|
522
|
+
e.stopPropagation();
|
|
523
|
+
if (e.repeat) return;
|
|
524
|
+
activateRowPress(row, rowIndex);
|
|
525
|
+
return;
|
|
526
|
+
}
|
|
527
|
+
if (key === "ArrowDown" || key === "ArrowUp" || key === "Home" || key === "End") {
|
|
528
|
+
var _rowEl_closest;
|
|
529
|
+
var _pressRows_nextIdx;
|
|
530
|
+
e.preventDefault();
|
|
531
|
+
e.stopPropagation();
|
|
532
|
+
var rowEl = e.currentTarget;
|
|
533
|
+
var scope = (_rowEl_closest = rowEl.closest('[data-row-press-scope="true"]')) !== null && _rowEl_closest !== void 0 ? _rowEl_closest : rowEl.ownerDocument;
|
|
534
|
+
var pressRows = Array.from(scope.querySelectorAll('[data-row-press="true"]'));
|
|
535
|
+
var currentIdx = pressRows.indexOf(rowEl);
|
|
536
|
+
if (currentIdx < 0) return;
|
|
537
|
+
var nextIdx = key === "Home" ? 0 : key === "End" ? pressRows.length - 1 : Math.min(Math.max(currentIdx + (key === "ArrowDown" ? 1 : -1), 0), pressRows.length - 1);
|
|
538
|
+
(_pressRows_nextIdx = pressRows[nextIdx]) === null || _pressRows_nextIdx === void 0 ? void 0 : _pressRows_nextIdx.focus();
|
|
539
|
+
}
|
|
540
|
+
}
|
|
541
|
+
} : {})
|
|
542
|
+
};
|
|
543
|
+
}, [rowPressActive, deriveRowLabel, activateRowPress, effectiveRowPressAnchor, isSSR]);
|
|
426
544
|
var handleCellChange = (0, import_react3.useCallback)(async function (rowIndex, columnId, newValue) {
|
|
427
545
|
var _data_rowIndex;
|
|
428
546
|
if (readOnly || disabled) return;
|
|
@@ -466,7 +584,21 @@ function DataTableRoot(param) {
|
|
|
466
584
|
var columnId = cell.column.id;
|
|
467
585
|
var value = cell.getValue();
|
|
468
586
|
if (columnDef.cell && !columnDef.field) {
|
|
469
|
-
|
|
587
|
+
var customAlign = resolveColumnAlign({
|
|
588
|
+
...columnDef,
|
|
589
|
+
id: cell.column.id
|
|
590
|
+
});
|
|
591
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
|
|
592
|
+
width: "100%",
|
|
593
|
+
minWidth: 0,
|
|
594
|
+
flexDirection: "row",
|
|
595
|
+
alignItems: "center",
|
|
596
|
+
justifyContent: (0, import_columnAlign.alignToFlex)(customAlign),
|
|
597
|
+
...{
|
|
598
|
+
"data-cell-align": customAlign
|
|
599
|
+
},
|
|
600
|
+
children: (0, import_react_table.flexRender)(columnDef.cell, cell.getContext())
|
|
601
|
+
});
|
|
470
602
|
}
|
|
471
603
|
var columnField = getColumnField(columnDef);
|
|
472
604
|
var dateRangeLinkedColumn = (_columnDef_fieldProps = columnDef.fieldProps) === null || _columnDef_fieldProps === void 0 ? void 0 : _columnDef_fieldProps.dateRangeLinkedColumn;
|
|
@@ -497,7 +629,6 @@ function DataTableRoot(param) {
|
|
|
497
629
|
onLinkedChange
|
|
498
630
|
});
|
|
499
631
|
}, [handleCellChange, readOnly, disabled, knobProps.sizeToken, isCompact]);
|
|
500
|
-
var isSSR = typeof window === "undefined";
|
|
501
632
|
var extraColumnsBefore = (enableRowSelection ? 1 : 0) + (showRowNumbers ? 1 : 0) + (enableRowExpansion ? 1 : 0);
|
|
502
633
|
var extraColumnsAfter = showDeleteRow && !readOnly ? 1 : 0;
|
|
503
634
|
var getStickyStyle = (0, import_react3.useCallback)(function (columnId) {
|
|
@@ -569,12 +700,9 @@ function DataTableRoot(param) {
|
|
|
569
700
|
disabled,
|
|
570
701
|
checkboxProps: {
|
|
571
702
|
// Row identity in the name so repeated per-row actions are
|
|
572
|
-
// differentiated for screen readers (DG-A11Y-06).
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
}), {
|
|
576
|
-
row: rowIndex + 1
|
|
577
|
-
})
|
|
703
|
+
// differentiated for screen readers (DG-A11Y-06). The
|
|
704
|
+
// aria-label rides the role="checkbox" frame itself.
|
|
705
|
+
"aria-label": deriveSelectRowLabel(row, rowIndex)
|
|
578
706
|
},
|
|
579
707
|
compact: isCompact
|
|
580
708
|
})
|
|
@@ -717,7 +845,7 @@ function DataTableRoot(param) {
|
|
|
717
845
|
})
|
|
718
846
|
})]
|
|
719
847
|
});
|
|
720
|
-
}, [enableRowSelection, showRowNumbers, enableRowExpansion, showDeleteRow, readOnly, disabled, cellHeight, knobProps.sizeToken, cellFlexProps, getColSizeProps, getStickyStyle, renderCellContent, handleDeleteRow, data.length, minRows, isCompact, t, ExpandCaretIcon, expandedCaretRotation, clipBodyCells]);
|
|
848
|
+
}, [enableRowSelection, showRowNumbers, enableRowExpansion, showDeleteRow, readOnly, disabled, cellHeight, knobProps.sizeToken, cellFlexProps, getColSizeProps, getStickyStyle, renderCellContent, handleDeleteRow, data.length, minRows, isCompact, t, deriveSelectRowLabel, ExpandCaretIcon, expandedCaretRotation, clipBodyCells]);
|
|
721
849
|
var [filterEditTarget, setFilterEditTarget] = (0, import_react3.useState)(null);
|
|
722
850
|
var filterUi = (0, import_react3.useMemo)(function () {
|
|
723
851
|
return {
|
|
@@ -928,7 +1056,11 @@ function DataTableRoot(param) {
|
|
|
928
1056
|
selectAllChecked,
|
|
929
1057
|
selectAllIndeterminate,
|
|
930
1058
|
onToggleSelectAll: toggleSelectAll,
|
|
931
|
-
compact: isCompact
|
|
1059
|
+
compact: isCompact,
|
|
1060
|
+
selectRowLabel: deriveSelectRowLabel,
|
|
1061
|
+
...(rowPressActive ? {
|
|
1062
|
+
getRowPressProps
|
|
1063
|
+
} : {})
|
|
932
1064
|
})]
|
|
933
1065
|
}) : (/* Table View */
|
|
934
1066
|
/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
|
|
@@ -942,7 +1074,13 @@ function DataTableRoot(param) {
|
|
|
942
1074
|
},
|
|
943
1075
|
flexDirection: "column",
|
|
944
1076
|
width: "100%",
|
|
945
|
-
|
|
1077
|
+
// Grow 0 / shrink 1 / basis auto: the grid frame hugs its
|
|
1078
|
+
// rows and only compresses (into internal scroll) when the
|
|
1079
|
+
// parent is shorter. flexGrow 1 stretched the frame to fill
|
|
1080
|
+
// tall parents, painting a dead zone between the last row
|
|
1081
|
+
// and the frame's bottom border on short pages (the frame
|
|
1082
|
+
// claimed data area that held no data — Axiom 6/LC-37).
|
|
1083
|
+
flexGrow: 0,
|
|
946
1084
|
flexShrink: 1,
|
|
947
1085
|
flexBasis: "auto",
|
|
948
1086
|
minHeight: 0,
|
|
@@ -994,6 +1132,10 @@ function DataTableRoot(param) {
|
|
|
994
1132
|
...(hScroll && enableColumnPinning ? {
|
|
995
1133
|
overflow: "visible"
|
|
996
1134
|
} : {}),
|
|
1135
|
+
// Roving-focus DOM scope for onRowPress arrow keys (LC-49).
|
|
1136
|
+
...(rowPressActive ? {
|
|
1137
|
+
"data-row-press-scope": "true"
|
|
1138
|
+
} : {}),
|
|
997
1139
|
children: [/* Table Header */
|
|
998
1140
|
/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Head, {
|
|
999
1141
|
zIndex: "$1",
|
|
@@ -1278,7 +1420,10 @@ function DataTableRoot(param) {
|
|
|
1278
1420
|
extraColumnsBefore,
|
|
1279
1421
|
extraColumnsAfter,
|
|
1280
1422
|
table,
|
|
1281
|
-
hasInfiniteTail
|
|
1423
|
+
hasInfiniteTail,
|
|
1424
|
+
...(rowPressActive ? {
|
|
1425
|
+
getRowPressProps
|
|
1426
|
+
} : {})
|
|
1282
1427
|
})
|
|
1283
1428
|
})
|
|
1284
1429
|
}) : /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
|
|
@@ -1357,7 +1502,8 @@ function DataTableRoot(param) {
|
|
|
1357
1502
|
tabIndex: -1,
|
|
1358
1503
|
...{
|
|
1359
1504
|
"data-table-zebra": tableZebraOn ? index % 2 === 0 ? "even" : "odd" : "off"
|
|
1360
|
-
}
|
|
1505
|
+
},
|
|
1506
|
+
...getRowPressProps(row, index)
|
|
1361
1507
|
}, renderRowContent(row, index, isLastRow));
|
|
1362
1508
|
var subRow = enableRowExpansion && renderSubComponent && row.getIsExpanded() && !((_row_subRows = row.subRows) === null || _row_subRows === void 0 ? void 0 : _row_subRows.length) ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Row, {
|
|
1363
1509
|
backgroundColor: "$color2",
|