@multiplatform.one/table 6.4.3 → 6.7.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.
Files changed (219) hide show
  1. package/dist/cjs/components/ColumnHeaderFilter/index.cjs +1 -0
  2. package/dist/cjs/components/ColumnHeaderFilter/index.native.js +1 -0
  3. package/dist/cjs/components/ColumnHeaderFilter/index.native.js.map +1 -1
  4. package/dist/cjs/components/DataTable/DataTableMobileCards.cjs +9 -3
  5. package/dist/cjs/components/DataTable/DataTableMobileCards.native.js +12 -3
  6. package/dist/cjs/components/DataTable/DataTableMobileCards.native.js.map +1 -1
  7. package/dist/cjs/components/DataTable/DataTableRoot.cjs +133 -13
  8. package/dist/cjs/components/DataTable/DataTableRoot.native.js +159 -13
  9. package/dist/cjs/components/DataTable/DataTableRoot.native.js.map +1 -1
  10. package/dist/cjs/components/DataTable/DataTableVirtualized.cjs +3 -1
  11. package/dist/cjs/components/DataTable/DataTableVirtualized.native.js +3 -1
  12. package/dist/cjs/components/DataTable/DataTableVirtualized.native.js.map +1 -1
  13. package/dist/cjs/components/DataTable/index.native.js +39 -2
  14. package/dist/cjs/components/DataTable/index.native.js.map +1 -1
  15. package/dist/cjs/components/DataTableBulkActions/index.cjs +16 -1
  16. package/dist/cjs/components/DataTableBulkActions/index.native.js +20 -1
  17. package/dist/cjs/components/DataTableBulkActions/index.native.js.map +1 -1
  18. package/dist/cjs/components/DataTableCell/CellModalEditor.cjs +4 -8
  19. package/dist/cjs/components/DataTableCell/index.cjs +1 -33
  20. package/dist/cjs/components/DataTableCell/index.native.js +1 -34
  21. package/dist/cjs/components/DataTableCell/index.native.js.map +1 -1
  22. package/dist/cjs/components/DataTableExport/index.cjs +1 -0
  23. package/dist/cjs/components/DataTableExport/index.native.js +1 -0
  24. package/dist/cjs/components/DataTableExport/index.native.js.map +1 -1
  25. package/dist/cjs/components/DataTableFilterButton/index.cjs +1 -1
  26. package/dist/cjs/components/DataTableFilterButton/index.native.js +4 -1
  27. package/dist/cjs/components/DataTableFilterButton/index.native.js.map +1 -1
  28. package/dist/cjs/components/DataTableGrouping/index.cjs +1 -0
  29. package/dist/cjs/components/DataTableGrouping/index.native.js +1 -0
  30. package/dist/cjs/components/DataTableGrouping/index.native.js.map +1 -1
  31. package/dist/cjs/components/DataTableToolbar/index.cjs +1 -0
  32. package/dist/cjs/components/DataTableToolbar/index.native.js +1 -0
  33. package/dist/cjs/components/DataTableToolbar/index.native.js.map +1 -1
  34. package/dist/cjs/components/FilterManager.cjs +18 -14
  35. package/dist/cjs/components/FilterManager.native.js +18 -14
  36. package/dist/cjs/components/FilterManager.native.js.map +1 -1
  37. package/dist/cjs/components/TableInput/index.native.js +3 -0
  38. package/dist/cjs/components/TableInput/index.native.js.map +1 -1
  39. package/dist/cjs/hooks/useDataTable.cjs +17 -1
  40. package/dist/cjs/hooks/useDataTable.native.js +19 -1
  41. package/dist/cjs/hooks/useDataTable.native.js.map +1 -1
  42. package/dist/cjs/utils/rowPress.cjs +44 -0
  43. package/dist/cjs/utils/rowPress.native.js +56 -0
  44. package/dist/cjs/utils/rowPress.native.js.map +1 -0
  45. package/dist/esm/components/ColumnHeaderFilter/index.mjs +1 -0
  46. package/dist/esm/components/ColumnHeaderFilter/index.mjs.map +1 -1
  47. package/dist/esm/components/ColumnHeaderFilter/index.native.js +1 -0
  48. package/dist/esm/components/ColumnHeaderFilter/index.native.js.map +1 -1
  49. package/dist/esm/components/DataTable/DataTableMobileCards.mjs +9 -3
  50. package/dist/esm/components/DataTable/DataTableMobileCards.mjs.map +1 -1
  51. package/dist/esm/components/DataTable/DataTableMobileCards.native.js +12 -3
  52. package/dist/esm/components/DataTable/DataTableMobileCards.native.js.map +1 -1
  53. package/dist/esm/components/DataTable/DataTableRoot.mjs +133 -13
  54. package/dist/esm/components/DataTable/DataTableRoot.mjs.map +1 -1
  55. package/dist/esm/components/DataTable/DataTableRoot.native.js +159 -13
  56. package/dist/esm/components/DataTable/DataTableRoot.native.js.map +1 -1
  57. package/dist/esm/components/DataTable/DataTableVirtualized.mjs +3 -1
  58. package/dist/esm/components/DataTable/DataTableVirtualized.mjs.map +1 -1
  59. package/dist/esm/components/DataTable/DataTableVirtualized.native.js +3 -1
  60. package/dist/esm/components/DataTable/DataTableVirtualized.native.js.map +1 -1
  61. package/dist/esm/components/DataTable/index.native.js +39 -2
  62. package/dist/esm/components/DataTable/index.native.js.map +1 -1
  63. package/dist/esm/components/DataTableBulkActions/index.mjs +16 -1
  64. package/dist/esm/components/DataTableBulkActions/index.mjs.map +1 -1
  65. package/dist/esm/components/DataTableBulkActions/index.native.js +20 -1
  66. package/dist/esm/components/DataTableBulkActions/index.native.js.map +1 -1
  67. package/dist/esm/components/DataTableCell/CellModalEditor.mjs +4 -8
  68. package/dist/esm/components/DataTableCell/CellModalEditor.mjs.map +1 -1
  69. package/dist/esm/components/DataTableCell/index.mjs +1 -33
  70. package/dist/esm/components/DataTableCell/index.mjs.map +1 -1
  71. package/dist/esm/components/DataTableCell/index.native.js +1 -34
  72. package/dist/esm/components/DataTableCell/index.native.js.map +1 -1
  73. package/dist/esm/components/DataTableExport/index.mjs +1 -0
  74. package/dist/esm/components/DataTableExport/index.mjs.map +1 -1
  75. package/dist/esm/components/DataTableExport/index.native.js +1 -0
  76. package/dist/esm/components/DataTableExport/index.native.js.map +1 -1
  77. package/dist/esm/components/DataTableFilterButton/index.mjs +1 -1
  78. package/dist/esm/components/DataTableFilterButton/index.mjs.map +1 -1
  79. package/dist/esm/components/DataTableFilterButton/index.native.js +4 -1
  80. package/dist/esm/components/DataTableFilterButton/index.native.js.map +1 -1
  81. package/dist/esm/components/DataTableGrouping/index.mjs +1 -0
  82. package/dist/esm/components/DataTableGrouping/index.mjs.map +1 -1
  83. package/dist/esm/components/DataTableGrouping/index.native.js +1 -0
  84. package/dist/esm/components/DataTableGrouping/index.native.js.map +1 -1
  85. package/dist/esm/components/DataTableToolbar/index.mjs +1 -0
  86. package/dist/esm/components/DataTableToolbar/index.mjs.map +1 -1
  87. package/dist/esm/components/DataTableToolbar/index.native.js +1 -0
  88. package/dist/esm/components/DataTableToolbar/index.native.js.map +1 -1
  89. package/dist/esm/components/FilterManager.mjs +18 -14
  90. package/dist/esm/components/FilterManager.mjs.map +1 -1
  91. package/dist/esm/components/FilterManager.native.js +18 -14
  92. package/dist/esm/components/FilterManager.native.js.map +1 -1
  93. package/dist/esm/components/TableInput/index.native.js +3 -0
  94. package/dist/esm/components/TableInput/index.native.js.map +1 -1
  95. package/dist/esm/hooks/useDataTable.mjs +17 -1
  96. package/dist/esm/hooks/useDataTable.mjs.map +1 -1
  97. package/dist/esm/hooks/useDataTable.native.js +19 -1
  98. package/dist/esm/hooks/useDataTable.native.js.map +1 -1
  99. package/dist/esm/utils/rowPress.mjs +19 -0
  100. package/dist/esm/utils/rowPress.mjs.map +1 -0
  101. package/dist/esm/utils/rowPress.native.js +28 -0
  102. package/dist/esm/utils/rowPress.native.js.map +1 -0
  103. package/dist/jsx/components/ColumnHeaderFilter/index.mjs +1 -0
  104. package/dist/jsx/components/ColumnHeaderFilter/index.mjs.map +1 -1
  105. package/dist/jsx/components/ColumnHeaderFilter/index.native.js +1 -0
  106. package/dist/jsx/components/ColumnHeaderFilter/index.native.js.map +1 -1
  107. package/dist/jsx/components/DataTable/DataTableMobileCards.mjs +9 -3
  108. package/dist/jsx/components/DataTable/DataTableMobileCards.mjs.map +1 -1
  109. package/dist/jsx/components/DataTable/DataTableMobileCards.native.js +12 -3
  110. package/dist/jsx/components/DataTable/DataTableMobileCards.native.js.map +1 -1
  111. package/dist/jsx/components/DataTable/DataTableRoot.mjs +133 -13
  112. package/dist/jsx/components/DataTable/DataTableRoot.mjs.map +1 -1
  113. package/dist/jsx/components/DataTable/DataTableRoot.native.js +159 -13
  114. package/dist/jsx/components/DataTable/DataTableRoot.native.js.map +1 -1
  115. package/dist/jsx/components/DataTable/DataTableVirtualized.mjs +3 -1
  116. package/dist/jsx/components/DataTable/DataTableVirtualized.mjs.map +1 -1
  117. package/dist/jsx/components/DataTable/DataTableVirtualized.native.js +3 -1
  118. package/dist/jsx/components/DataTable/DataTableVirtualized.native.js.map +1 -1
  119. package/dist/jsx/components/DataTable/index.native.js +39 -2
  120. package/dist/jsx/components/DataTable/index.native.js.map +1 -1
  121. package/dist/jsx/components/DataTableBulkActions/index.mjs +16 -1
  122. package/dist/jsx/components/DataTableBulkActions/index.mjs.map +1 -1
  123. package/dist/jsx/components/DataTableBulkActions/index.native.js +20 -1
  124. package/dist/jsx/components/DataTableBulkActions/index.native.js.map +1 -1
  125. package/dist/jsx/components/DataTableCell/CellModalEditor.mjs +4 -8
  126. package/dist/jsx/components/DataTableCell/CellModalEditor.mjs.map +1 -1
  127. package/dist/jsx/components/DataTableCell/index.mjs +1 -33
  128. package/dist/jsx/components/DataTableCell/index.mjs.map +1 -1
  129. package/dist/jsx/components/DataTableCell/index.native.js +1 -34
  130. package/dist/jsx/components/DataTableCell/index.native.js.map +1 -1
  131. package/dist/jsx/components/DataTableExport/index.mjs +1 -0
  132. package/dist/jsx/components/DataTableExport/index.mjs.map +1 -1
  133. package/dist/jsx/components/DataTableExport/index.native.js +1 -0
  134. package/dist/jsx/components/DataTableExport/index.native.js.map +1 -1
  135. package/dist/jsx/components/DataTableFilterButton/index.mjs +1 -1
  136. package/dist/jsx/components/DataTableFilterButton/index.mjs.map +1 -1
  137. package/dist/jsx/components/DataTableFilterButton/index.native.js +4 -1
  138. package/dist/jsx/components/DataTableFilterButton/index.native.js.map +1 -1
  139. package/dist/jsx/components/DataTableGrouping/index.mjs +1 -0
  140. package/dist/jsx/components/DataTableGrouping/index.mjs.map +1 -1
  141. package/dist/jsx/components/DataTableGrouping/index.native.js +1 -0
  142. package/dist/jsx/components/DataTableGrouping/index.native.js.map +1 -1
  143. package/dist/jsx/components/DataTableToolbar/index.mjs +1 -0
  144. package/dist/jsx/components/DataTableToolbar/index.mjs.map +1 -1
  145. package/dist/jsx/components/DataTableToolbar/index.native.js +1 -0
  146. package/dist/jsx/components/DataTableToolbar/index.native.js.map +1 -1
  147. package/dist/jsx/components/FilterManager.mjs +18 -14
  148. package/dist/jsx/components/FilterManager.mjs.map +1 -1
  149. package/dist/jsx/components/FilterManager.native.js +18 -14
  150. package/dist/jsx/components/FilterManager.native.js.map +1 -1
  151. package/dist/jsx/components/TableInput/index.native.js +3 -0
  152. package/dist/jsx/components/TableInput/index.native.js.map +1 -1
  153. package/dist/jsx/hooks/useDataTable.mjs +17 -1
  154. package/dist/jsx/hooks/useDataTable.mjs.map +1 -1
  155. package/dist/jsx/hooks/useDataTable.native.js +19 -1
  156. package/dist/jsx/hooks/useDataTable.native.js.map +1 -1
  157. package/dist/jsx/utils/rowPress.mjs +19 -0
  158. package/dist/jsx/utils/rowPress.mjs.map +1 -0
  159. package/dist/jsx/utils/rowPress.native.js +56 -0
  160. package/dist/jsx/utils/rowPress.native.js.map +1 -0
  161. package/package.json +13 -13
  162. package/src/components/ColumnHeaderFilter/index.tsx +1 -0
  163. package/src/components/DataTable/DataTable.spec.tsx +4 -1
  164. package/src/components/DataTable/DataTable.stories.tsx +190 -5
  165. package/src/components/DataTable/DataTableMobileCards.tsx +30 -4
  166. package/src/components/DataTable/DataTableRoot.tsx +195 -8
  167. package/src/components/DataTable/DataTableVirtualized.tsx +8 -0
  168. package/src/components/DataTable/cardLayout.spec.tsx +4 -1
  169. package/src/components/DataTable/customCellAlign.spec.tsx +124 -0
  170. package/src/components/DataTable/disabledContract.spec.tsx +4 -3
  171. package/src/components/DataTable/index.native.tsx +47 -1
  172. package/src/components/DataTable/rowPress.spec.tsx +229 -0
  173. package/src/components/DataTable/selectionSemantics.spec.tsx +156 -0
  174. package/src/components/DataTableBulkActions/index.tsx +16 -2
  175. package/src/components/DataTableBulkActions/selectionCountI18n.spec.tsx +94 -0
  176. package/src/components/DataTableCell/CellModalEditor.tsx +3 -1
  177. package/src/components/DataTableCell/cellDraftPolicy.spec.tsx +10 -2
  178. package/src/components/DataTableCell/dataTableCell.spec.tsx +10 -2
  179. package/src/components/DataTableCell/index.tsx +5 -36
  180. package/src/components/DataTableColumnPinning/DataTableColumnPinning.stories.tsx +49 -17
  181. package/src/components/DataTableDateFilter/DataTableDateFilter.stories.tsx +4 -3
  182. package/src/components/DataTableExport/DataTableExport.stories.tsx +3 -2
  183. package/src/components/DataTableExport/index.tsx +1 -0
  184. package/src/components/DataTableFilterButton/index.tsx +4 -1
  185. package/src/components/DataTableGrouping/DataTableGrouping.spec.tsx +59 -2
  186. package/src/components/DataTableGrouping/DataTableGrouping.stories.tsx +17 -5
  187. package/src/components/DataTableGrouping/index.tsx +1 -0
  188. package/src/components/DataTablePagination/DataTablePagination.stories.tsx +34 -20
  189. package/src/components/DataTableToolbar/index.tsx +1 -0
  190. package/src/components/DataTableViewOptions/DataTableViewOptions.stories.tsx +2 -1
  191. package/src/components/FilterManager.tsx +21 -13
  192. package/src/components/TableInput/index.native.tsx +3 -0
  193. package/src/components/__scratch__/scratch.spec.tsx +46 -0
  194. package/src/hooks/useDataTable.ts +27 -1
  195. package/src/types.ts +25 -0
  196. package/src/utils/rowPress.ts +58 -0
  197. package/types/components/ColumnHeaderFilter/index.d.ts.map +1 -1
  198. package/types/components/DataTable/DataTableMobileCards.d.ts +13 -1
  199. package/types/components/DataTable/DataTableMobileCards.d.ts.map +1 -1
  200. package/types/components/DataTable/DataTableRoot.d.ts +1 -1
  201. package/types/components/DataTable/DataTableRoot.d.ts.map +1 -1
  202. package/types/components/DataTable/DataTableVirtualized.d.ts +7 -1
  203. package/types/components/DataTable/DataTableVirtualized.d.ts.map +1 -1
  204. package/types/components/DataTable/index.native.d.ts +1 -1
  205. package/types/components/DataTable/index.native.d.ts.map +1 -1
  206. package/types/components/DataTableBulkActions/index.d.ts.map +1 -1
  207. package/types/components/DataTableCell/CellModalEditor.d.ts.map +1 -1
  208. package/types/components/DataTableCell/index.d.ts.map +1 -1
  209. package/types/components/DataTableFilterButton/index.d.ts.map +1 -1
  210. package/types/components/DataTableGrouping/index.d.ts.map +1 -1
  211. package/types/components/DataTableToolbar/index.d.ts.map +1 -1
  212. package/types/components/FilterManager.d.ts +7 -1
  213. package/types/components/FilterManager.d.ts.map +1 -1
  214. package/types/components/TableInput/index.native.d.ts.map +1 -1
  215. package/types/hooks/useDataTable.d.ts.map +1 -1
  216. package/types/types.d.ts +23 -0
  217. package/types/types.d.ts.map +1 -1
  218. package/types/utils/rowPress.d.ts +20 -0
  219. package/types/utils/rowPress.d.ts.map +1 -0
@@ -114,6 +114,7 @@ function ColumnHeaderFilter({
114
114
  backgroundColor: "$background",
115
115
  ...knobProps.panelPadding,
116
116
  minWidth: 240,
117
+ transition: knobProps.transition,
117
118
  enterStyle: {
118
119
  y: -5,
119
120
  opacity: 0
@@ -117,6 +117,7 @@ function ColumnHeaderFilter(param) {
117
117
  backgroundColor: "$background",
118
118
  ...knobProps.panelPadding,
119
119
  minWidth: 240,
120
+ transition: knobProps.transition,
120
121
  enterStyle: {
121
122
  y: -5,
122
123
  opacity: 0
@@ -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_filterFields","import_FilterOperatorValueEditor","FILTER_TRIGGER_VISUAL","FILTER_TRIGGER_OUTSET","Math","max","ceil","MIN_PRESS_TARGET","param","columnId","_columnId","columnLabel","columnType","filterValue","_filterValue","onFilterChange","options","isFiltered","knobProps","useResolvedKnobs","open","setOpen","useState","operator","setOperator","setValue","handleApply","handleApply2","operatorNeedsNoValue","handleClear","handleClear2","jsxs","Popover","onOpenChange","children","jsx","Tooltip","content","t","Trigger","asChild","View","padding","borderRadius","cursor","pressTargetStyle","alignItems","justifyContent","marginVertical","marginHorizontal","hitSlop","pressTargetHitSlop","hoverStyle","backgroundColor","pressStyle","onPress","e","stopPropagation","role","FunnelIcon","size","color","weight","Content","borderWidth","borderColor","panelPadding","minWidth","enterStyle","y","opacity","exitStyle","elevate","Arrow","YStack","gap","Text","fontSize","sizeToken","fontWeight","column"],"sources":["../../../../src/components/ColumnHeaderFilter/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
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_filterFields","import_FilterOperatorValueEditor","FILTER_TRIGGER_VISUAL","FILTER_TRIGGER_OUTSET","Math","max","ceil","MIN_PRESS_TARGET","param","columnId","_columnId","columnLabel","columnType","filterValue","_filterValue","onFilterChange","options","isFiltered","knobProps","useResolvedKnobs","open","setOpen","useState","operator","setOperator","setValue","handleApply","handleApply2","operatorNeedsNoValue","handleClear","handleClear2","jsxs","Popover","onOpenChange","children","jsx","Tooltip","content","t","Trigger","asChild","View","padding","borderRadius","cursor","pressTargetStyle","alignItems","justifyContent","marginVertical","marginHorizontal","hitSlop","pressTargetHitSlop","hoverStyle","backgroundColor","pressStyle","onPress","e","stopPropagation","role","FunnelIcon","size","color","weight","Content","borderWidth","borderColor","panelPadding","minWidth","transition","enterStyle","y","opacity","exitStyle","elevate","Arrow","YStack","gap","Text","fontSize","sizeToken","fontWeight","column"],"sources":["../../../../src/components/ColumnHeaderFilter/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -54,7 +54,9 @@ function DataTableMobileCards({
54
54
  selectAllChecked = false,
55
55
  selectAllIndeterminate = false,
56
56
  onToggleSelectAll,
57
- compact = false
57
+ compact = false,
58
+ selectRowLabel,
59
+ getRowPressProps
58
60
  }) {
59
61
  const {
60
62
  t
@@ -80,6 +82,7 @@ function DataTableMobileCards({
80
82
  ...{
81
83
  "data-table-zebra": tableZebraOn ? index % 2 === 0 ? "even" : "odd" : "off"
82
84
  },
85
+ ...(getRowPressProps ? getRowPressProps(row, index, "card") : {}),
83
86
  children: [/* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
84
87
  alignItems: "center",
85
88
  gap: "$2",
@@ -97,7 +100,7 @@ function DataTableMobileCards({
97
100
  },
98
101
  disabled,
99
102
  checkboxProps: {
100
- "aria-label": (0, import_withInterp.withInterp)(t("Select row {{row}}", {
103
+ "aria-label": selectRowLabel?.(row, index) ?? (0, import_withInterp.withInterp)(t("Select row {{row}}", {
101
104
  row: index + 1
102
105
  }), {
103
106
  row: index + 1
@@ -163,11 +166,14 @@ function DataTableMobileCards({
163
166
  })]
164
167
  }, cell.id))]
165
168
  }, `${row.id}-${index}`);
166
- }, [enableRowSelection, showRowNumbers, showDeleteRow, readOnly, disabled, dataLength, minRows, renderCellContent, onDeleteRow, compact, knobProps, tableZebraOn, t]);
169
+ }, [enableRowSelection, showRowNumbers, showDeleteRow, readOnly, disabled, dataLength, minRows, renderCellContent, onDeleteRow, compact, knobProps, tableZebraOn, t, selectRowLabel, getRowPressProps]);
167
170
  return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.View, {
168
171
  flexDirection: "column",
169
172
  ...knobProps.gap,
170
173
  testID: "data-table-cards",
174
+ ...(getRowPressProps ? {
175
+ "data-row-press-scope": "true"
176
+ } : {}),
171
177
  children: [enableRowSelection && tableRows.length > 0 && /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
172
178
  alignItems: "center",
173
179
  gap: "$2",
@@ -57,7 +57,9 @@ function DataTableMobileCards(param) {
57
57
  selectAllChecked = false,
58
58
  selectAllIndeterminate = false,
59
59
  onToggleSelectAll,
60
- compact = false
60
+ compact = false,
61
+ selectRowLabel,
62
+ getRowPressProps
61
63
  } = param;
62
64
  var {
63
65
  t
@@ -67,6 +69,7 @@ function DataTableMobileCards(param) {
67
69
  } = (0, import_theme.useResolvedKnobs)();
68
70
  var tableZebraOn = knobProps.tableZebra === "on";
69
71
  var renderMobileCard = (0, import_react2.useCallback)(function (row, index) {
72
+ var _ref;
70
73
  var rowData = row.original;
71
74
  var visibleCells = row.getVisibleCells();
72
75
  var [titleCell, ...detailCells] = visibleCells;
@@ -83,6 +86,7 @@ function DataTableMobileCards(param) {
83
86
  ...{
84
87
  "data-table-zebra": tableZebraOn ? index % 2 === 0 ? "even" : "odd" : "off"
85
88
  },
89
+ ...(getRowPressProps ? getRowPressProps(row, index, "card") : {}),
86
90
  children: [/* Card header: selection + primary-column title + row number + delete */
87
91
  /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
88
92
  alignItems: "center",
@@ -101,7 +105,7 @@ function DataTableMobileCards(param) {
101
105
  },
102
106
  disabled,
103
107
  checkboxProps: {
104
- "aria-label": (0, import_withInterp.withInterp)(t("Select row {{row}}", {
108
+ "aria-label": (_ref = selectRowLabel === null || selectRowLabel === void 0 ? void 0 : selectRowLabel(row, index)) !== null && _ref !== void 0 ? _ref : (0, import_withInterp.withInterp)(t("Select row {{row}}", {
105
109
  row: index + 1
106
110
  }), {
107
111
  row: index + 1
@@ -172,11 +176,16 @@ function DataTableMobileCards(param) {
172
176
  }, cell.id);
173
177
  })]
174
178
  }, `${row.id}-${index}`);
175
- }, [enableRowSelection, showRowNumbers, showDeleteRow, readOnly, disabled, dataLength, minRows, renderCellContent, onDeleteRow, compact, knobProps, tableZebraOn, t]);
179
+ }, [enableRowSelection, showRowNumbers, showDeleteRow, readOnly, disabled, dataLength, minRows, renderCellContent, onDeleteRow, compact, knobProps, tableZebraOn, t, selectRowLabel, getRowPressProps]);
176
180
  return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.View, {
177
181
  flexDirection: "column",
178
182
  ...knobProps.gap,
179
183
  testID: "data-table-cards",
184
+ // Roving-focus DOM scope for onRowPress arrow keys (LC-49) — keeps
185
+ // ArrowUp/Down/Home/End inside THIS table's card list.
186
+ ...(getRowPressProps ? {
187
+ "data-row-press-scope": "true"
188
+ } : {}),
180
189
  children: [enableRowSelection && tableRows.length > 0 && /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
181
190
  alignItems: "center",
182
191
  gap: "$2",
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","DataTableMobileCards_exports","__export","DataTableMobileCards","module","exports","import_jsx_runtime","require","import_react","import_components","import_forms","import_theme","import_react2","import_tamagui","import_react_i18next","import_table_primitives","import_withInterp","getColumnLabel","cell","columnDef","column","header","id","param","tableRows","enableRowSelection","showRowNumbers","showDeleteRow","readOnly","disabled","dataLength","minRows","hasActiveFilters","renderCellContent","onDeleteRow","selectAllChecked","selectAllIndeterminate","onToggleSelectAll","compact","t","useTranslation","knobProps","useResolvedKnobs","tableZebraOn","tableZebra","renderMobileCard","useCallback","row","index","rowData","original","visibleCells","getVisibleCells","titleCell","detailCells","showDelete","jsxs","View","testID","surface","cardSurface","elevation","borderColor","backgroundColor","children","XStack","alignItems","gap","length","paddingBottom","marginBottom","hairline","bottom","borderBottomColor","jsx","Checkbox","checked","getIsSelected","onChange","toggleSelected","checkboxProps","withInterp","flex","minWidth","TableCellContext","Provider","inTableCell","isHeader","Text","fontSize","sizeToken","color","fontWeight","Button","chromeless","circular","size","icon","TrashIcon","onPress","map","flexDirection","paddingVertical","width","flexShrink","shouldSelect","EmptyState"],"sources":["../../../../src/components/DataTable/DataTableMobileCards.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","DataTableMobileCards_exports","__export","DataTableMobileCards","module","exports","import_jsx_runtime","require","import_react","import_components","import_forms","import_theme","import_react2","import_tamagui","import_react_i18next","import_table_primitives","import_withInterp","getColumnLabel","cell","columnDef","column","header","id","param","tableRows","enableRowSelection","showRowNumbers","showDeleteRow","readOnly","disabled","dataLength","minRows","hasActiveFilters","renderCellContent","onDeleteRow","selectAllChecked","selectAllIndeterminate","onToggleSelectAll","compact","selectRowLabel","getRowPressProps","t","useTranslation","knobProps","useResolvedKnobs","tableZebraOn","tableZebra","renderMobileCard","useCallback","row","index","_ref","rowData","original","visibleCells","getVisibleCells","titleCell","detailCells","showDelete","jsxs","View","testID","surface","cardSurface","elevation","borderColor","backgroundColor","children","XStack","alignItems","gap","length","paddingBottom","marginBottom","hairline","bottom","borderBottomColor","jsx","Checkbox","checked","getIsSelected","onChange","toggleSelected","checkboxProps","withInterp","flex","minWidth","TableCellContext","Provider","inTableCell","isHeader","Text","fontSize","sizeToken","color","fontWeight","Button","chromeless","circular","size","icon","TrashIcon","onPress","map","flexDirection","paddingVertical","width","flexShrink","shouldSelect","EmptyState","borderRadius","title"],"sources":["../../../../src/components/DataTable/DataTableMobileCards.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -64,6 +64,7 @@ var import_DataTableVirtualized = require("./DataTableVirtualized.cjs");
64
64
  var import_columnAlign = require("../../utils/columnAlign.cjs");
65
65
  var import_filterFields = require("../../utils/filterFields.cjs");
66
66
  var import_paginationDefaults = require("../../utils/paginationDefaults.cjs");
67
+ var import_rowPress = require("../../utils/rowPress.cjs");
67
68
  var import_withInterp = require("../../utils/withInterp.cjs");
68
69
  var import_jsx_runtime = require("react/jsx-runtime");
69
70
  var import_react3 = require("react");
@@ -117,6 +118,8 @@ function DataTableRoot({
117
118
  maxPinnedColumns = 3,
118
119
  enableGrouping = false,
119
120
  enableKeyboardNavigation = false,
121
+ onRowPress,
122
+ rowLabel,
120
123
  enableRowSelection = false,
121
124
  selectAllScope: selectAllScopeProp,
122
125
  bulkActions,
@@ -373,6 +376,102 @@ function DataTableRoot({
373
376
  if (row.getCanExpand()) row.toggleExpanded();
374
377
  } : void 0
375
378
  });
379
+ const isSSR = typeof window === "undefined";
380
+ const rowPressActive = Boolean(onRowPress) && !disabled;
381
+ const [rowPressAnchor, setRowPressAnchor] = (0, import_react2.useState)(0);
382
+ const effectiveRowPressAnchor = Math.min(rowPressAnchor, Math.max(tableRows.length - 1, 0));
383
+ const deriveRowIdentity = (0, import_react2.useCallback)(row => {
384
+ const fromAccessor = rowLabel?.(row.original);
385
+ if (fromAccessor) return fromAccessor;
386
+ let firstCellValue;
387
+ try {
388
+ firstCellValue = row.getVisibleCells()[0]?.getValue();
389
+ } catch {
390
+ firstCellValue = void 0;
391
+ }
392
+ if (typeof firstCellValue === "string" && firstCellValue.length > 0 || typeof firstCellValue === "number") {
393
+ return String(firstCellValue);
394
+ }
395
+ return void 0;
396
+ }, [rowLabel]);
397
+ const deriveRowLabel = (0, import_react2.useCallback)((row, rowIndex) => deriveRowIdentity(row) ?? (0, import_withInterp.withInterp)(t("Row {{row}}", {
398
+ row: rowIndex + 1
399
+ }), {
400
+ row: rowIndex + 1
401
+ }), [deriveRowIdentity, t]);
402
+ const deriveSelectRowLabel = (0, import_react2.useCallback)((row, rowIndex) => {
403
+ const identity = deriveRowIdentity(row) ?? String(rowIndex + 1);
404
+ return (0, import_withInterp.withInterp)(t("Select row {{row}}", {
405
+ row: identity
406
+ }), {
407
+ row: identity
408
+ });
409
+ }, [deriveRowIdentity, t]);
410
+ const activateRowPress = (0, import_react2.useCallback)((row, rowIndex) => {
411
+ onRowPress?.(row.original, rowIndex);
412
+ }, [onRowPress]);
413
+ const getRowPressProps = (0, import_react2.useCallback)((row, rowIndex, variant = "row") => {
414
+ if (!rowPressActive) return {};
415
+ const handlePress = event => {
416
+ if (event?.defaultPrevented) return;
417
+ const targetEl = event?.target ?? event?.nativeEvent?.target;
418
+ if (import_tamagui.isWeb && typeof Element !== "undefined" && targetEl instanceof Element) {
419
+ const boundary = targetEl.closest('[data-row-press="true"]');
420
+ if ((0, import_rowPress.isInteractiveInnerTarget)(targetEl, boundary)) return;
421
+ }
422
+ activateRowPress(row, rowIndex);
423
+ };
424
+ return {
425
+ "aria-label": deriveRowLabel(row, rowIndex),
426
+ onPress: handlePress,
427
+ cursor: "pointer",
428
+ pressStyle: {
429
+ backgroundColor: "$color4"
430
+ },
431
+ ...(variant === "card" ? {
432
+ role: "button"
433
+ } : {}),
434
+ ...(import_tamagui.isWeb && !isSSR ? {
435
+ tabIndex: rowIndex === effectiveRowPressAnchor ? 0 : -1,
436
+ focusVisibleStyle: (0, import_theme.ensureFocusVisibleRing)({
437
+ outlineOffset: -2
438
+ }),
439
+ "data-row-press": "true",
440
+ onFocus: e => {
441
+ if (e.target === e.currentTarget) setRowPressAnchor(rowIndex);
442
+ },
443
+ onBlur: e => {
444
+ const next = e.relatedTarget;
445
+ if (!(next instanceof Element) || !next.closest('[data-row-press="true"]')) {
446
+ setRowPressAnchor(0);
447
+ }
448
+ },
449
+ onKeyDown: e => {
450
+ if (e.defaultPrevented) return;
451
+ if (e.target !== e.currentTarget) return;
452
+ const key = e.key;
453
+ if (key === "Enter" || key === " " || key === "Spacebar") {
454
+ e.preventDefault();
455
+ e.stopPropagation();
456
+ if (e.repeat) return;
457
+ activateRowPress(row, rowIndex);
458
+ return;
459
+ }
460
+ if (key === "ArrowDown" || key === "ArrowUp" || key === "Home" || key === "End") {
461
+ e.preventDefault();
462
+ e.stopPropagation();
463
+ const rowEl = e.currentTarget;
464
+ const scope = rowEl.closest('[data-row-press-scope="true"]') ?? rowEl.ownerDocument;
465
+ const pressRows = Array.from(scope.querySelectorAll('[data-row-press="true"]'));
466
+ const currentIdx = pressRows.indexOf(rowEl);
467
+ if (currentIdx < 0) return;
468
+ const nextIdx = key === "Home" ? 0 : key === "End" ? pressRows.length - 1 : Math.min(Math.max(currentIdx + (key === "ArrowDown" ? 1 : -1), 0), pressRows.length - 1);
469
+ pressRows[nextIdx]?.focus();
470
+ }
471
+ }
472
+ } : {})
473
+ };
474
+ }, [rowPressActive, deriveRowLabel, activateRowPress, effectiveRowPressAnchor, isSSR]);
376
475
  const handleCellChange = (0, import_react2.useCallback)(async (rowIndex, columnId, newValue) => {
377
476
  if (readOnly || disabled) return;
378
477
  const previousValue = data[rowIndex]?.[columnId];
@@ -412,7 +511,21 @@ function DataTableRoot({
412
511
  const columnId = cell.column.id;
413
512
  const value = cell.getValue();
414
513
  if (columnDef.cell && !columnDef.field) {
415
- return (0, import_react_table.flexRender)(columnDef.cell, cell.getContext());
514
+ const customAlign = resolveColumnAlign({
515
+ ...columnDef,
516
+ id: cell.column.id
517
+ });
518
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
519
+ width: "100%",
520
+ minWidth: 0,
521
+ flexDirection: "row",
522
+ alignItems: "center",
523
+ justifyContent: (0, import_columnAlign.alignToFlex)(customAlign),
524
+ ...{
525
+ "data-cell-align": customAlign
526
+ },
527
+ children: (0, import_react_table.flexRender)(columnDef.cell, cell.getContext())
528
+ });
416
529
  }
417
530
  const columnField = getColumnField(columnDef);
418
531
  const dateRangeLinkedColumn = columnDef.fieldProps?.dateRangeLinkedColumn;
@@ -441,7 +554,6 @@ function DataTableRoot({
441
554
  onLinkedChange
442
555
  });
443
556
  }, [handleCellChange, readOnly, disabled, knobProps.sizeToken, isCompact]);
444
- const isSSR = typeof window === "undefined";
445
557
  const extraColumnsBefore = (enableRowSelection ? 1 : 0) + (showRowNumbers ? 1 : 0) + (enableRowExpansion ? 1 : 0);
446
558
  const extraColumnsAfter = showDeleteRow && !readOnly ? 1 : 0;
447
559
  const getStickyStyle = (0, import_react2.useCallback)(columnId => {
@@ -513,12 +625,9 @@ function DataTableRoot({
513
625
  disabled,
514
626
  checkboxProps: {
515
627
  // Row identity in the name so repeated per-row actions are
516
- // differentiated for screen readers (DG-A11Y-06).
517
- "aria-label": (0, import_withInterp.withInterp)(t("Select row {{row}}", {
518
- row: rowIndex + 1
519
- }), {
520
- row: rowIndex + 1
521
- })
628
+ // differentiated for screen readers (DG-A11Y-06). The
629
+ // aria-label rides the role="checkbox" frame itself.
630
+ "aria-label": deriveSelectRowLabel(row, rowIndex)
522
631
  },
523
632
  compact: isCompact
524
633
  })
@@ -657,7 +766,7 @@ function DataTableRoot({
657
766
  })
658
767
  })]
659
768
  });
660
- }, [enableRowSelection, showRowNumbers, enableRowExpansion, showDeleteRow, readOnly, disabled, cellHeight, knobProps.sizeToken, cellFlexProps, getColSizeProps, getStickyStyle, renderCellContent, handleDeleteRow, data.length, minRows, isCompact, t, ExpandCaretIcon, expandedCaretRotation, clipBodyCells]);
769
+ }, [enableRowSelection, showRowNumbers, enableRowExpansion, showDeleteRow, readOnly, disabled, cellHeight, knobProps.sizeToken, cellFlexProps, getColSizeProps, getStickyStyle, renderCellContent, handleDeleteRow, data.length, minRows, isCompact, t, deriveSelectRowLabel, ExpandCaretIcon, expandedCaretRotation, clipBodyCells]);
661
770
  const [filterEditTarget, setFilterEditTarget] = (0, import_react2.useState)(null);
662
771
  const filterUi = (0, import_react2.useMemo)(() => ({
663
772
  editTarget: filterEditTarget,
@@ -834,7 +943,11 @@ function DataTableRoot({
834
943
  selectAllChecked,
835
944
  selectAllIndeterminate,
836
945
  onToggleSelectAll: toggleSelectAll,
837
- compact: isCompact
946
+ compact: isCompact,
947
+ selectRowLabel: deriveSelectRowLabel,
948
+ ...(rowPressActive ? {
949
+ getRowPressProps
950
+ } : {})
838
951
  })]
839
952
  }) : (/* Table View */
840
953
  /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
@@ -848,7 +961,7 @@ function DataTableRoot({
848
961
  },
849
962
  flexDirection: "column",
850
963
  width: "100%",
851
- flexGrow: 1,
964
+ flexGrow: 0,
852
965
  flexShrink: 1,
853
966
  flexBasis: "auto",
854
967
  minHeight: 0,
@@ -892,6 +1005,9 @@ function DataTableRoot({
892
1005
  ...(hScroll && enableColumnPinning ? {
893
1006
  overflow: "visible"
894
1007
  } : {}),
1008
+ ...(rowPressActive ? {
1009
+ "data-row-press-scope": "true"
1010
+ } : {}),
895
1011
  children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Head, {
896
1012
  zIndex: "$1",
897
1013
  "aria-label": t("Table headers"),
@@ -1143,7 +1259,10 @@ function DataTableRoot({
1143
1259
  extraColumnsBefore,
1144
1260
  extraColumnsAfter,
1145
1261
  table,
1146
- hasInfiniteTail
1262
+ hasInfiniteTail,
1263
+ ...(rowPressActive ? {
1264
+ getRowPressProps
1265
+ } : {})
1147
1266
  })
1148
1267
  })
1149
1268
  }) : /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
@@ -1215,7 +1334,8 @@ function DataTableRoot({
1215
1334
  tabIndex: -1,
1216
1335
  ...{
1217
1336
  "data-table-zebra": tableZebraOn ? index % 2 === 0 ? "even" : "odd" : "off"
1218
- }
1337
+ },
1338
+ ...getRowPressProps(row, index)
1219
1339
  }, renderRowContent(row, index, isLastRow));
1220
1340
  const subRow = enableRowExpansion && renderSubComponent && row.getIsExpanded() && !row.subRows?.length ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Row, {
1221
1341
  backgroundColor: "$color2",