@multiplatform.one/table 6.0.4 → 6.3.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 (1104) hide show
  1. package/README.md +125 -65
  2. package/dist/cjs/components/ChildTable/index.cjs +44 -9
  3. package/dist/cjs/components/ChildTable/index.native.js +56 -13
  4. package/dist/cjs/components/ChildTable/index.native.js.map +1 -1
  5. package/dist/cjs/components/ColumnHeaderFilter/index.cjs +27 -110
  6. package/dist/cjs/components/ColumnHeaderFilter/index.native.js +27 -119
  7. package/dist/cjs/components/ColumnHeaderFilter/index.native.js.map +1 -1
  8. package/dist/cjs/components/DataTable/DataTableCardControls.cjs +133 -0
  9. package/dist/cjs/components/DataTable/DataTableCardControls.native.js +140 -0
  10. package/dist/cjs/components/DataTable/DataTableCardControls.native.js.map +1 -0
  11. package/dist/cjs/components/DataTable/DataTableMobileCards.cjs +125 -59
  12. package/dist/cjs/components/DataTable/DataTableMobileCards.native.js +114 -49
  13. package/dist/cjs/components/DataTable/DataTableMobileCards.native.js.map +1 -1
  14. package/dist/cjs/components/DataTable/DataTableRoot.cjs +574 -170
  15. package/dist/cjs/components/DataTable/DataTableRoot.native.js +699 -178
  16. package/dist/cjs/components/DataTable/DataTableRoot.native.js.map +1 -1
  17. package/dist/cjs/components/DataTable/DataTableStateContext.native.js.map +1 -1
  18. package/dist/cjs/components/DataTable/DataTableVirtualized.cjs +78 -3
  19. package/dist/cjs/components/DataTable/DataTableVirtualized.native.js +86 -3
  20. package/dist/cjs/components/DataTable/DataTableVirtualized.native.js.map +1 -1
  21. package/dist/cjs/components/DataTable/index.cjs +2 -0
  22. package/dist/cjs/components/DataTable/index.native.js +170 -72
  23. package/dist/cjs/components/DataTable/index.native.js.map +1 -1
  24. package/dist/cjs/components/DataTableBulkActions/index.cjs +62 -146
  25. package/dist/cjs/components/DataTableBulkActions/index.native.js +77 -153
  26. package/dist/cjs/components/DataTableBulkActions/index.native.js.map +1 -1
  27. package/dist/cjs/components/DataTableCell/CellModalEditor.cjs +61 -8
  28. package/dist/cjs/components/DataTableCell/CellModalEditor.native.js +73 -66
  29. package/dist/cjs/components/DataTableCell/CellModalEditor.native.js.map +1 -1
  30. package/dist/cjs/components/DataTableCell/CellOptionsEditor.cjs +87 -0
  31. package/dist/cjs/components/DataTableCell/CellOptionsEditor.native.js +100 -0
  32. package/dist/cjs/components/DataTableCell/CellOptionsEditor.native.js.map +1 -0
  33. package/dist/cjs/components/DataTableCell/index.cjs +524 -147
  34. package/dist/cjs/components/DataTableCell/index.native.js +666 -210
  35. package/dist/cjs/components/DataTableCell/index.native.js.map +1 -1
  36. package/dist/cjs/components/DataTableColumnPinning/index.cjs +95 -24
  37. package/dist/cjs/components/DataTableColumnPinning/index.native.js +101 -25
  38. package/dist/cjs/components/DataTableColumnPinning/index.native.js.map +1 -1
  39. package/dist/cjs/components/DataTableDateFilter/index.cjs +385 -197
  40. package/dist/cjs/components/DataTableDateFilter/index.native.js +414 -213
  41. package/dist/cjs/components/DataTableDateFilter/index.native.js.map +1 -1
  42. package/dist/cjs/components/DataTableExport/index.cjs +223 -195
  43. package/dist/cjs/components/DataTableExport/index.native.js +318 -217
  44. package/dist/cjs/components/DataTableExport/index.native.js.map +1 -1
  45. package/dist/cjs/components/DataTableFilterButton/index.cjs +349 -0
  46. package/dist/cjs/components/DataTableFilterButton/index.native.js +402 -0
  47. package/dist/cjs/components/DataTableFilterButton/index.native.js.map +1 -0
  48. package/dist/cjs/components/DataTableFilterChips/index.cjs +120 -0
  49. package/dist/cjs/components/DataTableFilterChips/index.native.js +187 -0
  50. package/dist/cjs/components/DataTableFilterChips/index.native.js.map +1 -0
  51. package/dist/cjs/components/DataTableFilters/index.cjs +36 -31
  52. package/dist/cjs/components/DataTableFilters/index.native.js +36 -31
  53. package/dist/cjs/components/DataTableFilters/index.native.js.map +1 -1
  54. package/dist/cjs/components/DataTableGrouping/index.cjs +246 -189
  55. package/dist/cjs/components/DataTableGrouping/index.native.js +283 -203
  56. package/dist/cjs/components/DataTableGrouping/index.native.js.map +1 -1
  57. package/dist/cjs/components/DataTablePagination/index.cjs +103 -329
  58. package/dist/cjs/components/DataTablePagination/index.native.js +115 -377
  59. package/dist/cjs/components/DataTablePagination/index.native.js.map +1 -1
  60. package/dist/cjs/components/DataTableSearch/index.cjs +132 -155
  61. package/dist/cjs/components/DataTableSearch/index.native.js +164 -170
  62. package/dist/cjs/components/DataTableSearch/index.native.js.map +1 -1
  63. package/dist/cjs/components/DataTableToolbar/index.cjs +71 -116
  64. package/dist/cjs/components/DataTableToolbar/index.native.js +98 -123
  65. package/dist/cjs/components/DataTableToolbar/index.native.js.map +1 -1
  66. package/dist/cjs/components/DataTableViewOptions/index.cjs +73 -169
  67. package/dist/cjs/components/DataTableViewOptions/index.native.js +88 -184
  68. package/dist/cjs/components/DataTableViewOptions/index.native.js.map +1 -1
  69. package/dist/cjs/components/FilterManager.cjs +7 -5
  70. package/dist/cjs/components/FilterManager.native.js +21 -8
  71. package/dist/cjs/components/FilterManager.native.js.map +1 -1
  72. package/dist/cjs/components/FilterOperatorValueEditor/index.cjs +109 -0
  73. package/dist/cjs/components/FilterOperatorValueEditor/index.native.js +121 -0
  74. package/dist/cjs/components/FilterOperatorValueEditor/index.native.js.map +1 -0
  75. package/dist/cjs/components/SavedFilterDropdown.cjs +3 -3
  76. package/dist/cjs/components/SavedFilterDropdown.native.js +3 -3
  77. package/dist/cjs/components/SavedFilterDropdown.native.js.map +1 -1
  78. package/dist/cjs/components/SimpleTable/index.cjs +22 -15
  79. package/dist/cjs/components/SimpleTable/index.native.js +31 -19
  80. package/dist/cjs/components/SimpleTable/index.native.js.map +1 -1
  81. package/dist/cjs/components/TableInput/index.cjs +149 -49
  82. package/dist/cjs/components/TableInput/index.native.js +181 -71
  83. package/dist/cjs/components/TableInput/index.native.js.map +1 -1
  84. package/dist/cjs/components/TableInput/shared.cjs +36 -0
  85. package/dist/cjs/components/TableInput/shared.native.js +41 -0
  86. package/dist/cjs/components/TableInput/shared.native.js.map +1 -0
  87. package/dist/cjs/hooks/useDataTable.cjs +114 -21
  88. package/dist/cjs/hooks/useDataTable.native.js +126 -25
  89. package/dist/cjs/hooks/useDataTable.native.js.map +1 -1
  90. package/dist/cjs/hooks/useInfiniteRows.cjs +193 -0
  91. package/dist/cjs/hooks/useInfiniteRows.native.js +203 -0
  92. package/dist/cjs/hooks/useInfiniteRows.native.js.map +1 -0
  93. package/dist/cjs/hooks/useTableFiltering.cjs +14 -18
  94. package/dist/cjs/hooks/useTableFiltering.native.js +17 -23
  95. package/dist/cjs/hooks/useTableFiltering.native.js.map +1 -1
  96. package/dist/cjs/hooks/useTablePagination.cjs +2 -2
  97. package/dist/cjs/hooks/useTablePagination.native.js +2 -2
  98. package/dist/cjs/hooks/useTablePagination.native.js.map +1 -1
  99. package/dist/cjs/index.cjs +26 -1
  100. package/dist/cjs/index.native.js +25 -0
  101. package/dist/cjs/index.native.js.map +1 -1
  102. package/dist/cjs/shared/t.cjs +50 -0
  103. package/dist/cjs/shared/t.native.js +55 -0
  104. package/dist/cjs/shared/t.native.js.map +1 -0
  105. package/dist/cjs/utils/columnAlign.cjs +60 -0
  106. package/dist/cjs/utils/columnAlign.native.js +67 -0
  107. package/dist/cjs/utils/columnAlign.native.js.map +1 -0
  108. package/dist/cjs/utils/filterFields.cjs +185 -0
  109. package/dist/cjs/utils/filterFields.native.js +247 -0
  110. package/dist/cjs/utils/filterFields.native.js.map +1 -0
  111. package/dist/cjs/utils/filterUtils.cjs +39 -20
  112. package/dist/cjs/utils/filterUtils.native.js +39 -20
  113. package/dist/cjs/utils/filterUtils.native.js.map +1 -1
  114. package/dist/cjs/utils/paginationDefaults.cjs +32 -0
  115. package/dist/cjs/utils/paginationDefaults.native.js +35 -0
  116. package/dist/cjs/utils/paginationDefaults.native.js.map +1 -0
  117. package/dist/cjs/utils/urlStateUtils.cjs +2 -1
  118. package/dist/cjs/utils/urlStateUtils.native.js +2 -1
  119. package/dist/cjs/utils/urlStateUtils.native.js.map +1 -1
  120. package/dist/cjs/utils/viewData.cjs +45 -0
  121. package/dist/cjs/utils/viewData.native.js +69 -0
  122. package/dist/cjs/utils/viewData.native.js.map +1 -0
  123. package/dist/cjs/utils/withInterp.cjs +39 -0
  124. package/dist/cjs/utils/withInterp.native.js +42 -0
  125. package/dist/cjs/utils/withInterp.native.js.map +1 -0
  126. package/dist/esm/components/ChildTable/index.mjs +45 -10
  127. package/dist/esm/components/ChildTable/index.mjs.map +1 -1
  128. package/dist/esm/components/ChildTable/index.native.js +57 -14
  129. package/dist/esm/components/ChildTable/index.native.js.map +1 -1
  130. package/dist/esm/components/ColumnHeaderFilter/index.mjs +29 -111
  131. package/dist/esm/components/ColumnHeaderFilter/index.mjs.map +1 -1
  132. package/dist/esm/components/ColumnHeaderFilter/index.native.js +30 -121
  133. package/dist/esm/components/ColumnHeaderFilter/index.native.js.map +1 -1
  134. package/dist/esm/components/DataTable/DataTableCardControls.mjs +108 -0
  135. package/dist/esm/components/DataTable/DataTableCardControls.mjs.map +1 -0
  136. package/dist/esm/components/DataTable/DataTableCardControls.native.js +112 -0
  137. package/dist/esm/components/DataTable/DataTableCardControls.native.js.map +1 -0
  138. package/dist/esm/components/DataTable/DataTableMobileCards.mjs +128 -62
  139. package/dist/esm/components/DataTable/DataTableMobileCards.mjs.map +1 -1
  140. package/dist/esm/components/DataTable/DataTableMobileCards.native.js +117 -52
  141. package/dist/esm/components/DataTable/DataTableMobileCards.native.js.map +1 -1
  142. package/dist/esm/components/DataTable/DataTableRoot.mjs +578 -174
  143. package/dist/esm/components/DataTable/DataTableRoot.mjs.map +1 -1
  144. package/dist/esm/components/DataTable/DataTableRoot.native.js +703 -182
  145. package/dist/esm/components/DataTable/DataTableRoot.native.js.map +1 -1
  146. package/dist/esm/components/DataTable/DataTableStateContext.mjs.map +1 -1
  147. package/dist/esm/components/DataTable/DataTableStateContext.native.js.map +1 -1
  148. package/dist/esm/components/DataTable/DataTableVirtualized.mjs +79 -4
  149. package/dist/esm/components/DataTable/DataTableVirtualized.mjs.map +1 -1
  150. package/dist/esm/components/DataTable/DataTableVirtualized.native.js +87 -4
  151. package/dist/esm/components/DataTable/DataTableVirtualized.native.js.map +1 -1
  152. package/dist/esm/components/DataTable/index.mjs +2 -0
  153. package/dist/esm/components/DataTable/index.mjs.map +1 -1
  154. package/dist/esm/components/DataTable/index.native.js +172 -74
  155. package/dist/esm/components/DataTable/index.native.js.map +1 -1
  156. package/dist/esm/components/DataTableBulkActions/index.mjs +65 -147
  157. package/dist/esm/components/DataTableBulkActions/index.mjs.map +1 -1
  158. package/dist/esm/components/DataTableBulkActions/index.native.js +80 -154
  159. package/dist/esm/components/DataTableBulkActions/index.native.js.map +1 -1
  160. package/dist/esm/components/DataTableCell/CellModalEditor.mjs +62 -9
  161. package/dist/esm/components/DataTableCell/CellModalEditor.mjs.map +1 -1
  162. package/dist/esm/components/DataTableCell/CellModalEditor.native.js +74 -67
  163. package/dist/esm/components/DataTableCell/CellModalEditor.native.js.map +1 -1
  164. package/dist/esm/components/DataTableCell/CellOptionsEditor.mjs +62 -0
  165. package/dist/esm/components/DataTableCell/CellOptionsEditor.mjs.map +1 -0
  166. package/dist/esm/components/DataTableCell/CellOptionsEditor.native.js +72 -0
  167. package/dist/esm/components/DataTableCell/CellOptionsEditor.native.js.map +1 -0
  168. package/dist/esm/components/DataTableCell/index.mjs +527 -149
  169. package/dist/esm/components/DataTableCell/index.mjs.map +1 -1
  170. package/dist/esm/components/DataTableCell/index.native.js +670 -213
  171. package/dist/esm/components/DataTableCell/index.native.js.map +1 -1
  172. package/dist/esm/components/DataTableColumnPinning/index.mjs +99 -28
  173. package/dist/esm/components/DataTableColumnPinning/index.mjs.map +1 -1
  174. package/dist/esm/components/DataTableColumnPinning/index.native.js +105 -29
  175. package/dist/esm/components/DataTableColumnPinning/index.native.js.map +1 -1
  176. package/dist/esm/components/DataTableDateFilter/index.mjs +387 -200
  177. package/dist/esm/components/DataTableDateFilter/index.mjs.map +1 -1
  178. package/dist/esm/components/DataTableDateFilter/index.native.js +416 -216
  179. package/dist/esm/components/DataTableDateFilter/index.native.js.map +1 -1
  180. package/dist/esm/components/DataTableExport/index.mjs +223 -195
  181. package/dist/esm/components/DataTableExport/index.mjs.map +1 -1
  182. package/dist/esm/components/DataTableExport/index.native.js +318 -217
  183. package/dist/esm/components/DataTableExport/index.native.js.map +1 -1
  184. package/dist/esm/components/DataTableFilterButton/index.mjs +324 -0
  185. package/dist/esm/components/DataTableFilterButton/index.mjs.map +1 -0
  186. package/dist/esm/components/DataTableFilterButton/index.native.js +374 -0
  187. package/dist/esm/components/DataTableFilterButton/index.native.js.map +1 -0
  188. package/dist/esm/components/DataTableFilterChips/index.mjs +95 -0
  189. package/dist/esm/components/DataTableFilterChips/index.mjs.map +1 -0
  190. package/dist/esm/components/DataTableFilterChips/index.native.js +159 -0
  191. package/dist/esm/components/DataTableFilterChips/index.native.js.map +1 -0
  192. package/dist/esm/components/DataTableFilters/index.mjs +36 -31
  193. package/dist/esm/components/DataTableFilters/index.mjs.map +1 -1
  194. package/dist/esm/components/DataTableFilters/index.native.js +36 -31
  195. package/dist/esm/components/DataTableFilters/index.native.js.map +1 -1
  196. package/dist/esm/components/DataTableGrouping/index.mjs +248 -191
  197. package/dist/esm/components/DataTableGrouping/index.mjs.map +1 -1
  198. package/dist/esm/components/DataTableGrouping/index.native.js +285 -205
  199. package/dist/esm/components/DataTableGrouping/index.native.js.map +1 -1
  200. package/dist/esm/components/DataTablePagination/index.mjs +105 -329
  201. package/dist/esm/components/DataTablePagination/index.mjs.map +1 -1
  202. package/dist/esm/components/DataTablePagination/index.native.js +117 -366
  203. package/dist/esm/components/DataTablePagination/index.native.js.map +1 -1
  204. package/dist/esm/components/DataTableSearch/index.mjs +135 -156
  205. package/dist/esm/components/DataTableSearch/index.mjs.map +1 -1
  206. package/dist/esm/components/DataTableSearch/index.native.js +167 -171
  207. package/dist/esm/components/DataTableSearch/index.native.js.map +1 -1
  208. package/dist/esm/components/DataTableToolbar/index.mjs +75 -118
  209. package/dist/esm/components/DataTableToolbar/index.mjs.map +1 -1
  210. package/dist/esm/components/DataTableToolbar/index.native.js +102 -125
  211. package/dist/esm/components/DataTableToolbar/index.native.js.map +1 -1
  212. package/dist/esm/components/DataTableViewOptions/index.mjs +75 -171
  213. package/dist/esm/components/DataTableViewOptions/index.mjs.map +1 -1
  214. package/dist/esm/components/DataTableViewOptions/index.native.js +90 -186
  215. package/dist/esm/components/DataTableViewOptions/index.native.js.map +1 -1
  216. package/dist/esm/components/FilterManager.mjs +7 -5
  217. package/dist/esm/components/FilterManager.mjs.map +1 -1
  218. package/dist/esm/components/FilterManager.native.js +21 -8
  219. package/dist/esm/components/FilterManager.native.js.map +1 -1
  220. package/dist/esm/components/FilterOperatorValueEditor/index.mjs +84 -0
  221. package/dist/esm/components/FilterOperatorValueEditor/index.mjs.map +1 -0
  222. package/dist/esm/components/FilterOperatorValueEditor/index.native.js +93 -0
  223. package/dist/esm/components/FilterOperatorValueEditor/index.native.js.map +1 -0
  224. package/dist/esm/components/SavedFilterDropdown.mjs +3 -3
  225. package/dist/esm/components/SavedFilterDropdown.mjs.map +1 -1
  226. package/dist/esm/components/SavedFilterDropdown.native.js +3 -3
  227. package/dist/esm/components/SavedFilterDropdown.native.js.map +1 -1
  228. package/dist/esm/components/SimpleTable/index.mjs +22 -15
  229. package/dist/esm/components/SimpleTable/index.mjs.map +1 -1
  230. package/dist/esm/components/SimpleTable/index.native.js +31 -19
  231. package/dist/esm/components/SimpleTable/index.native.js.map +1 -1
  232. package/dist/esm/components/TableInput/index.mjs +149 -49
  233. package/dist/esm/components/TableInput/index.mjs.map +1 -1
  234. package/dist/esm/components/TableInput/index.native.js +181 -71
  235. package/dist/esm/components/TableInput/index.native.js.map +1 -1
  236. package/dist/esm/components/TableInput/shared.mjs +9 -0
  237. package/dist/esm/components/TableInput/shared.mjs.map +1 -0
  238. package/dist/esm/components/TableInput/shared.native.js +11 -0
  239. package/dist/esm/components/TableInput/shared.native.js.map +1 -0
  240. package/dist/esm/hooks/useDataTable.mjs +115 -22
  241. package/dist/esm/hooks/useDataTable.mjs.map +1 -1
  242. package/dist/esm/hooks/useDataTable.native.js +127 -26
  243. package/dist/esm/hooks/useDataTable.native.js.map +1 -1
  244. package/dist/esm/hooks/useInfiniteRows.mjs +168 -0
  245. package/dist/esm/hooks/useInfiniteRows.mjs.map +1 -0
  246. package/dist/esm/hooks/useInfiniteRows.native.js +175 -0
  247. package/dist/esm/hooks/useInfiniteRows.native.js.map +1 -0
  248. package/dist/esm/hooks/useTableFiltering.mjs +14 -18
  249. package/dist/esm/hooks/useTableFiltering.mjs.map +1 -1
  250. package/dist/esm/hooks/useTableFiltering.native.js +17 -23
  251. package/dist/esm/hooks/useTableFiltering.native.js.map +1 -1
  252. package/dist/esm/hooks/useTablePagination.mjs +2 -2
  253. package/dist/esm/hooks/useTablePagination.mjs.map +1 -1
  254. package/dist/esm/hooks/useTablePagination.native.js +2 -2
  255. package/dist/esm/hooks/useTablePagination.native.js.map +1 -1
  256. package/dist/esm/index.mjs +8 -1
  257. package/dist/esm/index.mjs.map +1 -1
  258. package/dist/esm/index.native.js +8 -1
  259. package/dist/esm/index.native.js.map +1 -1
  260. package/dist/esm/shared/t.mjs +14 -0
  261. package/dist/esm/shared/t.mjs.map +1 -0
  262. package/dist/esm/shared/t.native.js +16 -0
  263. package/dist/esm/shared/t.native.js.map +1 -0
  264. package/dist/esm/utils/columnAlign.mjs +34 -0
  265. package/dist/esm/utils/columnAlign.mjs.map +1 -0
  266. package/dist/esm/utils/columnAlign.native.js +38 -0
  267. package/dist/esm/utils/columnAlign.native.js.map +1 -0
  268. package/dist/esm/utils/filterFields.mjs +149 -0
  269. package/dist/esm/utils/filterFields.mjs.map +1 -0
  270. package/dist/esm/utils/filterFields.native.js +208 -0
  271. package/dist/esm/utils/filterFields.native.js.map +1 -0
  272. package/dist/esm/utils/filterUtils.mjs +39 -20
  273. package/dist/esm/utils/filterUtils.mjs.map +1 -1
  274. package/dist/esm/utils/filterUtils.native.js +39 -20
  275. package/dist/esm/utils/filterUtils.native.js.map +1 -1
  276. package/dist/esm/utils/paginationDefaults.mjs +5 -0
  277. package/dist/esm/utils/paginationDefaults.mjs.map +1 -0
  278. package/dist/esm/utils/paginationDefaults.native.js +5 -0
  279. package/dist/esm/utils/paginationDefaults.native.js.map +1 -0
  280. package/dist/esm/utils/urlStateUtils.mjs +2 -1
  281. package/dist/esm/utils/urlStateUtils.mjs.map +1 -1
  282. package/dist/esm/utils/urlStateUtils.native.js +2 -1
  283. package/dist/esm/utils/urlStateUtils.native.js.map +1 -1
  284. package/dist/esm/utils/viewData.mjs +20 -0
  285. package/dist/esm/utils/viewData.mjs.map +1 -0
  286. package/dist/esm/utils/viewData.native.js +41 -0
  287. package/dist/esm/utils/viewData.native.js.map +1 -0
  288. package/dist/esm/utils/withInterp.mjs +13 -0
  289. package/dist/esm/utils/withInterp.mjs.map +1 -0
  290. package/dist/esm/utils/withInterp.native.js +13 -0
  291. package/dist/esm/utils/withInterp.native.js.map +1 -0
  292. package/dist/jsx/components/ChildTable/index.mjs +45 -10
  293. package/dist/jsx/components/ChildTable/index.mjs.map +1 -1
  294. package/dist/jsx/components/ChildTable/index.native.js +56 -13
  295. package/dist/jsx/components/ChildTable/index.native.js.map +1 -1
  296. package/dist/jsx/components/ColumnHeaderFilter/index.mjs +29 -111
  297. package/dist/jsx/components/ColumnHeaderFilter/index.mjs.map +1 -1
  298. package/dist/jsx/components/ColumnHeaderFilter/index.native.js +27 -119
  299. package/dist/jsx/components/ColumnHeaderFilter/index.native.js.map +1 -1
  300. package/dist/jsx/components/DataTable/DataTableCardControls.mjs +108 -0
  301. package/dist/jsx/components/DataTable/DataTableCardControls.mjs.map +1 -0
  302. package/dist/jsx/components/DataTable/DataTableCardControls.native.js +140 -0
  303. package/dist/jsx/components/DataTable/DataTableCardControls.native.js.map +1 -0
  304. package/dist/jsx/components/DataTable/DataTableMobileCards.mjs +128 -62
  305. package/dist/jsx/components/DataTable/DataTableMobileCards.mjs.map +1 -1
  306. package/dist/jsx/components/DataTable/DataTableMobileCards.native.js +114 -49
  307. package/dist/jsx/components/DataTable/DataTableMobileCards.native.js.map +1 -1
  308. package/dist/jsx/components/DataTable/DataTableRoot.mjs +578 -174
  309. package/dist/jsx/components/DataTable/DataTableRoot.mjs.map +1 -1
  310. package/dist/jsx/components/DataTable/DataTableRoot.native.js +699 -178
  311. package/dist/jsx/components/DataTable/DataTableRoot.native.js.map +1 -1
  312. package/dist/jsx/components/DataTable/DataTableStateContext.mjs.map +1 -1
  313. package/dist/jsx/components/DataTable/DataTableStateContext.native.js.map +1 -1
  314. package/dist/jsx/components/DataTable/DataTableVirtualized.mjs +79 -4
  315. package/dist/jsx/components/DataTable/DataTableVirtualized.mjs.map +1 -1
  316. package/dist/jsx/components/DataTable/DataTableVirtualized.native.js +86 -3
  317. package/dist/jsx/components/DataTable/DataTableVirtualized.native.js.map +1 -1
  318. package/dist/jsx/components/DataTable/index.mjs +2 -0
  319. package/dist/jsx/components/DataTable/index.mjs.map +1 -1
  320. package/dist/jsx/components/DataTable/index.native.js +170 -72
  321. package/dist/jsx/components/DataTable/index.native.js.map +1 -1
  322. package/dist/jsx/components/DataTableBulkActions/index.mjs +65 -147
  323. package/dist/jsx/components/DataTableBulkActions/index.mjs.map +1 -1
  324. package/dist/jsx/components/DataTableBulkActions/index.native.js +77 -153
  325. package/dist/jsx/components/DataTableBulkActions/index.native.js.map +1 -1
  326. package/dist/jsx/components/DataTableCell/CellModalEditor.mjs +62 -9
  327. package/dist/jsx/components/DataTableCell/CellModalEditor.mjs.map +1 -1
  328. package/dist/jsx/components/DataTableCell/CellModalEditor.native.js +73 -66
  329. package/dist/jsx/components/DataTableCell/CellModalEditor.native.js.map +1 -1
  330. package/dist/jsx/components/DataTableCell/CellOptionsEditor.mjs +62 -0
  331. package/dist/jsx/components/DataTableCell/CellOptionsEditor.mjs.map +1 -0
  332. package/dist/jsx/components/DataTableCell/CellOptionsEditor.native.js +100 -0
  333. package/dist/jsx/components/DataTableCell/CellOptionsEditor.native.js.map +1 -0
  334. package/dist/jsx/components/DataTableCell/index.mjs +527 -149
  335. package/dist/jsx/components/DataTableCell/index.mjs.map +1 -1
  336. package/dist/jsx/components/DataTableCell/index.native.js +666 -210
  337. package/dist/jsx/components/DataTableCell/index.native.js.map +1 -1
  338. package/dist/jsx/components/DataTableColumnPinning/index.mjs +99 -28
  339. package/dist/jsx/components/DataTableColumnPinning/index.mjs.map +1 -1
  340. package/dist/jsx/components/DataTableColumnPinning/index.native.js +101 -25
  341. package/dist/jsx/components/DataTableColumnPinning/index.native.js.map +1 -1
  342. package/dist/jsx/components/DataTableDateFilter/index.mjs +387 -200
  343. package/dist/jsx/components/DataTableDateFilter/index.mjs.map +1 -1
  344. package/dist/jsx/components/DataTableDateFilter/index.native.js +414 -213
  345. package/dist/jsx/components/DataTableDateFilter/index.native.js.map +1 -1
  346. package/dist/jsx/components/DataTableExport/index.mjs +223 -195
  347. package/dist/jsx/components/DataTableExport/index.mjs.map +1 -1
  348. package/dist/jsx/components/DataTableExport/index.native.js +318 -217
  349. package/dist/jsx/components/DataTableExport/index.native.js.map +1 -1
  350. package/dist/jsx/components/DataTableFilterButton/index.mjs +324 -0
  351. package/dist/jsx/components/DataTableFilterButton/index.mjs.map +1 -0
  352. package/dist/jsx/components/DataTableFilterButton/index.native.js +402 -0
  353. package/dist/jsx/components/DataTableFilterButton/index.native.js.map +1 -0
  354. package/dist/jsx/components/DataTableFilterChips/index.mjs +95 -0
  355. package/dist/jsx/components/DataTableFilterChips/index.mjs.map +1 -0
  356. package/dist/jsx/components/DataTableFilterChips/index.native.js +187 -0
  357. package/dist/jsx/components/DataTableFilterChips/index.native.js.map +1 -0
  358. package/dist/jsx/components/DataTableFilters/index.mjs +36 -31
  359. package/dist/jsx/components/DataTableFilters/index.mjs.map +1 -1
  360. package/dist/jsx/components/DataTableFilters/index.native.js +36 -31
  361. package/dist/jsx/components/DataTableFilters/index.native.js.map +1 -1
  362. package/dist/jsx/components/DataTableGrouping/index.mjs +248 -191
  363. package/dist/jsx/components/DataTableGrouping/index.mjs.map +1 -1
  364. package/dist/jsx/components/DataTableGrouping/index.native.js +283 -203
  365. package/dist/jsx/components/DataTableGrouping/index.native.js.map +1 -1
  366. package/dist/jsx/components/DataTablePagination/index.mjs +105 -329
  367. package/dist/jsx/components/DataTablePagination/index.mjs.map +1 -1
  368. package/dist/jsx/components/DataTablePagination/index.native.js +115 -377
  369. package/dist/jsx/components/DataTablePagination/index.native.js.map +1 -1
  370. package/dist/jsx/components/DataTableSearch/index.mjs +135 -156
  371. package/dist/jsx/components/DataTableSearch/index.mjs.map +1 -1
  372. package/dist/jsx/components/DataTableSearch/index.native.js +164 -170
  373. package/dist/jsx/components/DataTableSearch/index.native.js.map +1 -1
  374. package/dist/jsx/components/DataTableToolbar/index.mjs +75 -118
  375. package/dist/jsx/components/DataTableToolbar/index.mjs.map +1 -1
  376. package/dist/jsx/components/DataTableToolbar/index.native.js +98 -123
  377. package/dist/jsx/components/DataTableToolbar/index.native.js.map +1 -1
  378. package/dist/jsx/components/DataTableViewOptions/index.mjs +75 -171
  379. package/dist/jsx/components/DataTableViewOptions/index.mjs.map +1 -1
  380. package/dist/jsx/components/DataTableViewOptions/index.native.js +88 -184
  381. package/dist/jsx/components/DataTableViewOptions/index.native.js.map +1 -1
  382. package/dist/jsx/components/FilterManager.mjs +7 -5
  383. package/dist/jsx/components/FilterManager.mjs.map +1 -1
  384. package/dist/jsx/components/FilterManager.native.js +21 -8
  385. package/dist/jsx/components/FilterManager.native.js.map +1 -1
  386. package/dist/jsx/components/FilterOperatorValueEditor/index.mjs +84 -0
  387. package/dist/jsx/components/FilterOperatorValueEditor/index.mjs.map +1 -0
  388. package/dist/jsx/components/FilterOperatorValueEditor/index.native.js +121 -0
  389. package/dist/jsx/components/FilterOperatorValueEditor/index.native.js.map +1 -0
  390. package/dist/jsx/components/SavedFilterDropdown.mjs +3 -3
  391. package/dist/jsx/components/SavedFilterDropdown.mjs.map +1 -1
  392. package/dist/jsx/components/SavedFilterDropdown.native.js +3 -3
  393. package/dist/jsx/components/SavedFilterDropdown.native.js.map +1 -1
  394. package/dist/jsx/components/SimpleTable/index.mjs +22 -15
  395. package/dist/jsx/components/SimpleTable/index.mjs.map +1 -1
  396. package/dist/jsx/components/SimpleTable/index.native.js +31 -19
  397. package/dist/jsx/components/SimpleTable/index.native.js.map +1 -1
  398. package/dist/jsx/components/TableInput/index.mjs +149 -49
  399. package/dist/jsx/components/TableInput/index.mjs.map +1 -1
  400. package/dist/jsx/components/TableInput/index.native.js +181 -71
  401. package/dist/jsx/components/TableInput/index.native.js.map +1 -1
  402. package/dist/jsx/components/TableInput/shared.mjs +9 -0
  403. package/dist/jsx/components/TableInput/shared.mjs.map +1 -0
  404. package/dist/jsx/components/TableInput/shared.native.js +41 -0
  405. package/dist/jsx/components/TableInput/shared.native.js.map +1 -0
  406. package/dist/jsx/hooks/useDataTable.mjs +115 -22
  407. package/dist/jsx/hooks/useDataTable.mjs.map +1 -1
  408. package/dist/jsx/hooks/useDataTable.native.js +126 -25
  409. package/dist/jsx/hooks/useDataTable.native.js.map +1 -1
  410. package/dist/jsx/hooks/useInfiniteRows.mjs +168 -0
  411. package/dist/jsx/hooks/useInfiniteRows.mjs.map +1 -0
  412. package/dist/jsx/hooks/useInfiniteRows.native.js +203 -0
  413. package/dist/jsx/hooks/useInfiniteRows.native.js.map +1 -0
  414. package/dist/jsx/hooks/useTableFiltering.mjs +14 -18
  415. package/dist/jsx/hooks/useTableFiltering.mjs.map +1 -1
  416. package/dist/jsx/hooks/useTableFiltering.native.js +17 -23
  417. package/dist/jsx/hooks/useTableFiltering.native.js.map +1 -1
  418. package/dist/jsx/hooks/useTablePagination.mjs +2 -2
  419. package/dist/jsx/hooks/useTablePagination.mjs.map +1 -1
  420. package/dist/jsx/hooks/useTablePagination.native.js +2 -2
  421. package/dist/jsx/hooks/useTablePagination.native.js.map +1 -1
  422. package/dist/jsx/index.js +8 -1
  423. package/dist/jsx/index.js.map +1 -1
  424. package/dist/jsx/index.mjs +8 -1
  425. package/dist/jsx/index.mjs.map +1 -1
  426. package/dist/jsx/index.native.js +25 -0
  427. package/dist/jsx/index.native.js.map +1 -1
  428. package/dist/jsx/shared/t.mjs +14 -0
  429. package/dist/jsx/shared/t.mjs.map +1 -0
  430. package/dist/jsx/shared/t.native.js +55 -0
  431. package/dist/jsx/shared/t.native.js.map +1 -0
  432. package/dist/jsx/utils/columnAlign.mjs +34 -0
  433. package/dist/jsx/utils/columnAlign.mjs.map +1 -0
  434. package/dist/jsx/utils/columnAlign.native.js +67 -0
  435. package/dist/jsx/utils/columnAlign.native.js.map +1 -0
  436. package/dist/jsx/utils/filterFields.mjs +149 -0
  437. package/dist/jsx/utils/filterFields.mjs.map +1 -0
  438. package/dist/jsx/utils/filterFields.native.js +247 -0
  439. package/dist/jsx/utils/filterFields.native.js.map +1 -0
  440. package/dist/jsx/utils/filterUtils.mjs +39 -20
  441. package/dist/jsx/utils/filterUtils.mjs.map +1 -1
  442. package/dist/jsx/utils/filterUtils.native.js +39 -20
  443. package/dist/jsx/utils/filterUtils.native.js.map +1 -1
  444. package/dist/jsx/utils/paginationDefaults.mjs +5 -0
  445. package/dist/jsx/utils/paginationDefaults.mjs.map +1 -0
  446. package/dist/jsx/utils/paginationDefaults.native.js +35 -0
  447. package/dist/jsx/utils/paginationDefaults.native.js.map +1 -0
  448. package/dist/jsx/utils/urlStateUtils.mjs +2 -1
  449. package/dist/jsx/utils/urlStateUtils.mjs.map +1 -1
  450. package/dist/jsx/utils/urlStateUtils.native.js +2 -1
  451. package/dist/jsx/utils/urlStateUtils.native.js.map +1 -1
  452. package/dist/jsx/utils/viewData.mjs +20 -0
  453. package/dist/jsx/utils/viewData.mjs.map +1 -0
  454. package/dist/jsx/utils/viewData.native.js +69 -0
  455. package/dist/jsx/utils/viewData.native.js.map +1 -0
  456. package/dist/jsx/utils/withInterp.mjs +13 -0
  457. package/dist/jsx/utils/withInterp.mjs.map +1 -0
  458. package/dist/jsx/utils/withInterp.native.js +42 -0
  459. package/dist/jsx/utils/withInterp.native.js.map +1 -0
  460. package/package.json +29 -19
  461. package/src/components/ChildTable/index.tsx +70 -9
  462. package/src/components/ColumnHeaderFilter/index.tsx +43 -161
  463. package/src/components/DataTable/DataTable.spec.tsx +347 -0
  464. package/src/components/DataTable/DataTable.stories.tsx +363 -9
  465. package/src/components/DataTable/DataTableCardControls.tsx +148 -0
  466. package/src/components/DataTable/DataTableMobileCards.tsx +153 -80
  467. package/src/components/DataTable/DataTableRoot.tsx +847 -181
  468. package/src/components/DataTable/DataTableStateContext.ts +24 -1
  469. package/src/components/DataTable/DataTableVirtualized.tsx +98 -4
  470. package/src/components/DataTable/FieldsInCells.stories.tsx +296 -6
  471. package/src/components/DataTable/cardLayout.spec.tsx +294 -0
  472. package/src/components/DataTable/chromeInterplay.spec.tsx +282 -0
  473. package/src/components/DataTable/compoundComponent.spec.tsx +6 -1
  474. package/src/components/DataTable/disabledContract.spec.tsx +242 -0
  475. package/src/components/DataTable/expandCaretRtl.spec.tsx +80 -0
  476. package/src/components/DataTable/headerSorting.spec.tsx +155 -0
  477. package/src/components/DataTable/index.native.tsx +220 -77
  478. package/src/components/DataTable/index.tsx +2 -0
  479. package/src/components/DataTable/infiniteMode.spec.tsx +118 -0
  480. package/src/components/DataTable/pinningGeometry.spec.tsx +144 -0
  481. package/src/components/DataTable/rowActionLabels.spec.tsx +97 -0
  482. package/src/components/DataTable/virtualizedGrouping.spec.tsx +99 -0
  483. package/src/components/DataTableBulkActions/DataTableBulkActions.spec.tsx +276 -3
  484. package/src/components/DataTableBulkActions/DataTableBulkActions.stories.tsx +1 -0
  485. package/src/components/DataTableBulkActions/index.tsx +119 -184
  486. package/src/components/DataTableCell/CellModalEditor.native.tsx +116 -0
  487. package/src/components/DataTableCell/CellModalEditor.tsx +83 -11
  488. package/src/components/DataTableCell/CellOptionsEditor.tsx +91 -0
  489. package/src/components/DataTableCell/DataTableCell.stories.tsx +514 -9
  490. package/src/components/DataTableCell/cellDraftPolicy.spec.tsx +638 -0
  491. package/src/components/DataTableCell/dataTableCell.spec.tsx +174 -26
  492. package/src/components/DataTableCell/index.tsx +730 -191
  493. package/src/components/DataTableColumnPinning/DataTableColumnPinning.stories.tsx +14 -0
  494. package/src/components/DataTableColumnPinning/index.tsx +130 -36
  495. package/src/components/DataTableDateFilter/DataTableDateFilter.spec.tsx +234 -80
  496. package/src/components/DataTableDateFilter/DataTableDateFilter.stories.tsx +7 -32
  497. package/src/components/DataTableDateFilter/index.tsx +357 -160
  498. package/src/components/DataTableExport/DataTableExport.spec.tsx +225 -8
  499. package/src/components/DataTableExport/index.tsx +241 -186
  500. package/src/components/DataTableFilterButton/index.tsx +406 -0
  501. package/src/components/DataTableFilterChips/DataTableFilterChips.spec.tsx +190 -0
  502. package/src/components/DataTableFilterChips/index.tsx +127 -0
  503. package/src/components/DataTableFilters/index.tsx +39 -31
  504. package/src/components/DataTableGrouping/DataTableGrouping.spec.tsx +173 -1
  505. package/src/components/DataTableGrouping/index.tsx +233 -140
  506. package/src/components/DataTablePagination/DataTablePagination.spec.tsx +91 -12
  507. package/src/components/DataTablePagination/DataTablePagination.stories.tsx +182 -6
  508. package/src/components/DataTablePagination/index.tsx +97 -324
  509. package/src/components/DataTableSearch/DataTableSearch.spec.tsx +14 -14
  510. package/src/components/DataTableSearch/index.tsx +106 -118
  511. package/src/components/DataTableToolbar/DataTableToolbar.spec.tsx +51 -11
  512. package/src/components/DataTableToolbar/DataTableToolbar.stories.tsx +205 -8
  513. package/src/components/DataTableToolbar/index.tsx +86 -123
  514. package/src/components/DataTableViewOptions/DataTableViewOptions.spec.tsx +5 -5
  515. package/src/components/DataTableViewOptions/DataTableViewOptions.stories.tsx +41 -3
  516. package/src/components/DataTableViewOptions/index.tsx +89 -183
  517. package/src/components/FilterManager.spec.tsx +7 -4
  518. package/src/components/FilterManager.tsx +25 -5
  519. package/src/components/FilterOperatorValueEditor/index.tsx +124 -0
  520. package/src/components/SavedFilterDropdown.tsx +7 -5
  521. package/src/components/SimpleTable/SimpleTable.stories.tsx +114 -0
  522. package/src/components/SimpleTable/index.tsx +35 -17
  523. package/src/components/SimpleTable/simpleTable.spec.tsx +25 -5
  524. package/src/components/Table/Table.stories.tsx +105 -0
  525. package/src/components/Table/accessibility.spec.tsx +24 -8
  526. package/src/components/TableInput/TableInput.stories.tsx +266 -8
  527. package/src/components/TableInput/index.native.tsx +202 -51
  528. package/src/components/TableInput/index.tsx +236 -56
  529. package/src/components/TableInput/shared.ts +20 -0
  530. package/src/components/TableInput/tableInput.spec.tsx +458 -0
  531. package/src/components/componentConsistency.spec.tsx +19 -13
  532. package/src/hooks/hookDecomposition.spec.ts +35 -1
  533. package/src/hooks/useDataTable.ts +169 -24
  534. package/src/hooks/useInfiniteRows.spec.tsx +215 -0
  535. package/src/hooks/useInfiniteRows.ts +242 -0
  536. package/src/hooks/useTableFiltering.ts +22 -21
  537. package/src/hooks/useTablePagination.ts +2 -3
  538. package/src/index.ts +37 -1
  539. package/src/shared/t.ts +24 -0
  540. package/src/types.ts +217 -5
  541. package/src/utils/columnAlign.spec.ts +53 -0
  542. package/src/utils/columnAlign.ts +60 -0
  543. package/src/utils/filterFields.spec.ts +237 -0
  544. package/src/utils/filterFields.ts +273 -0
  545. package/src/utils/filterUtils.ts +34 -24
  546. package/src/utils/filterUtilsContracts.spec.ts +190 -0
  547. package/src/utils/paginationDefaults.spec.ts +43 -0
  548. package/src/utils/paginationDefaults.ts +21 -0
  549. package/src/utils/urlStateUtils.spec.ts +2 -2
  550. package/src/utils/urlStateUtils.ts +2 -1
  551. package/src/utils/viewData.ts +27 -0
  552. package/src/utils/withInterp.spec.ts +30 -0
  553. package/src/utils/withInterp.ts +31 -0
  554. package/types/components/ChildTable/index.d.ts +28 -0
  555. package/types/components/ChildTable/index.d.ts.map +1 -0
  556. package/types/components/ColumnHeaderFilter/index.d.ts +23 -0
  557. package/types/components/ColumnHeaderFilter/index.d.ts.map +1 -0
  558. package/types/components/DataTable/DataTableCardControls.d.ts +30 -0
  559. package/types/components/DataTable/DataTableCardControls.d.ts.map +1 -0
  560. package/types/components/DataTable/DataTableContext.d.ts +11 -0
  561. package/types/components/DataTable/DataTableContext.d.ts.map +1 -0
  562. package/types/components/DataTable/DataTableMobileCards.d.ts +37 -0
  563. package/types/components/DataTable/DataTableMobileCards.d.ts.map +1 -0
  564. package/types/components/DataTable/DataTableRoot.d.ts +22 -0
  565. package/types/components/DataTable/DataTableRoot.d.ts.map +1 -0
  566. package/types/components/DataTable/DataTableStateContext.d.ts +77 -0
  567. package/types/components/DataTable/DataTableStateContext.d.ts.map +1 -0
  568. package/types/components/DataTable/DataTableVirtualized.d.ts +36 -0
  569. package/types/components/DataTable/DataTableVirtualized.d.ts.map +1 -0
  570. package/types/components/DataTable/index.d.ts +42 -0
  571. package/types/components/DataTable/index.d.ts.map +1 -0
  572. package/types/components/DataTable/index.native.d.ts +33 -0
  573. package/types/components/DataTable/index.native.d.ts.map +1 -0
  574. package/types/components/DataTableBulkActions/index.d.ts +33 -0
  575. package/types/components/DataTableBulkActions/index.d.ts.map +1 -0
  576. package/types/components/DataTableCell/CellModalEditor.d.ts +34 -0
  577. package/types/components/DataTableCell/CellModalEditor.d.ts.map +1 -0
  578. package/types/components/DataTableCell/CellModalEditor.native.d.ts +20 -0
  579. package/types/components/DataTableCell/CellModalEditor.native.d.ts.map +1 -0
  580. package/types/components/DataTableCell/CellOptionsEditor.d.ts +30 -0
  581. package/types/components/DataTableCell/CellOptionsEditor.d.ts.map +1 -0
  582. package/types/components/DataTableCell/index.d.ts +51 -0
  583. package/types/components/DataTableCell/index.d.ts.map +1 -0
  584. package/types/components/DataTableColumnPinning/index.d.ts +53 -0
  585. package/types/components/DataTableColumnPinning/index.d.ts.map +1 -0
  586. package/types/components/DataTableDateFilter/index.d.ts +54 -0
  587. package/types/components/DataTableDateFilter/index.d.ts.map +1 -0
  588. package/types/components/DataTableExport/index.d.ts +37 -0
  589. package/types/components/DataTableExport/index.d.ts.map +1 -0
  590. package/types/components/DataTableFilterButton/index.d.ts +16 -0
  591. package/types/components/DataTableFilterButton/index.d.ts.map +1 -0
  592. package/types/components/DataTableFilterChips/index.d.ts +12 -0
  593. package/types/components/DataTableFilterChips/index.d.ts.map +1 -0
  594. package/types/components/DataTableFilters/index.d.ts +19 -0
  595. package/types/components/DataTableFilters/index.d.ts.map +1 -0
  596. package/types/components/DataTableGrouping/index.d.ts +79 -0
  597. package/types/components/DataTableGrouping/index.d.ts.map +1 -0
  598. package/types/components/DataTablePagination/index.d.ts +23 -0
  599. package/types/components/DataTablePagination/index.d.ts.map +1 -0
  600. package/types/components/DataTableSearch/index.d.ts +57 -0
  601. package/types/components/DataTableSearch/index.d.ts.map +1 -0
  602. package/types/components/DataTableToolbar/index.d.ts +23 -0
  603. package/types/components/DataTableToolbar/index.d.ts.map +1 -0
  604. package/types/components/DataTableViewOptions/index.d.ts +28 -0
  605. package/types/components/DataTableViewOptions/index.d.ts.map +1 -0
  606. package/types/components/FilterManager.d.ts +16 -0
  607. package/types/components/FilterManager.d.ts.map +1 -0
  608. package/types/components/FilterOperatorValueEditor/index.d.ts +23 -0
  609. package/types/components/FilterOperatorValueEditor/index.d.ts.map +1 -0
  610. package/types/components/KnobDialog.d.ts +57 -0
  611. package/types/components/KnobDialog.d.ts.map +1 -0
  612. package/types/components/SavedFilterDropdown.d.ts +11 -0
  613. package/types/components/SavedFilterDropdown.d.ts.map +1 -0
  614. package/types/components/SimpleTable/index.d.ts +45 -0
  615. package/types/components/SimpleTable/index.d.ts.map +1 -0
  616. package/types/components/TableInput/index.d.ts +66 -0
  617. package/types/components/TableInput/index.d.ts.map +1 -0
  618. package/types/components/TableInput/index.native.d.ts +55 -0
  619. package/types/components/TableInput/index.native.d.ts.map +1 -0
  620. package/types/components/TableInput/shared.d.ts +12 -0
  621. package/types/components/TableInput/shared.d.ts.map +1 -0
  622. package/types/hooks/useDataTable.d.ts +16 -0
  623. package/types/hooks/useDataTable.d.ts.map +1 -0
  624. package/types/hooks/useDataTableKeyboard.d.ts +22 -0
  625. package/types/hooks/useDataTableKeyboard.d.ts.map +1 -0
  626. package/types/hooks/useDragScroll.d.ts +10 -0
  627. package/types/hooks/useDragScroll.d.ts.map +1 -0
  628. package/types/hooks/useInfiniteRows.d.ts +57 -0
  629. package/types/hooks/useInfiniteRows.d.ts.map +1 -0
  630. package/types/hooks/useSavedFilters.d.ts +78 -0
  631. package/types/hooks/useSavedFilters.d.ts.map +1 -0
  632. package/types/hooks/useTableColumnPinning.d.ts +12 -0
  633. package/types/hooks/useTableColumnPinning.d.ts.map +1 -0
  634. package/types/hooks/useTableFiltering.d.ts +27 -0
  635. package/types/hooks/useTableFiltering.d.ts.map +1 -0
  636. package/types/hooks/useTableGrouping.d.ts +33 -0
  637. package/types/hooks/useTableGrouping.d.ts.map +1 -0
  638. package/types/hooks/useTableKeyboard.d.ts +24 -0
  639. package/types/hooks/useTableKeyboard.d.ts.map +1 -0
  640. package/types/hooks/useTablePagination.d.ts +17 -0
  641. package/types/hooks/useTablePagination.d.ts.map +1 -0
  642. package/types/hooks/useTableSearch.d.ts +27 -0
  643. package/types/hooks/useTableSearch.d.ts.map +1 -0
  644. package/types/hooks/useTableSelection.d.ts +14 -0
  645. package/types/hooks/useTableSelection.d.ts.map +1 -0
  646. package/types/hooks/useTableSorting.d.ts +12 -0
  647. package/types/hooks/useTableSorting.d.ts.map +1 -0
  648. package/types/hooks/useTableUrlSync.d.ts +15 -0
  649. package/types/hooks/useTableUrlSync.d.ts.map +1 -0
  650. package/types/hooks/useTableViews.d.ts +26 -0
  651. package/types/hooks/useTableViews.d.ts.map +1 -0
  652. package/types/index.d.ts +68 -0
  653. package/types/index.d.ts.map +1 -0
  654. package/types/shared/t.d.ts +10 -0
  655. package/types/shared/t.d.ts.map +1 -0
  656. package/types/shims/primitives.d.ts +3 -0
  657. package/types/shims/primitives.d.ts.map +1 -0
  658. package/types/shims/tableCellContext.d.ts +3 -0
  659. package/types/shims/tableCellContext.d.ts.map +1 -0
  660. package/types/types.d.ts +525 -0
  661. package/types/types.d.ts.map +1 -0
  662. package/types/utils/columnAlign.d.ts +23 -0
  663. package/types/utils/columnAlign.d.ts.map +1 -0
  664. package/types/utils/filterFields.d.ts +57 -0
  665. package/types/utils/filterFields.d.ts.map +1 -0
  666. package/types/utils/filterUtils.d.ts +24 -0
  667. package/types/utils/filterUtils.d.ts.map +1 -0
  668. package/types/utils/paginationDefaults.d.ts +18 -0
  669. package/types/utils/paginationDefaults.d.ts.map +1 -0
  670. package/types/utils/urlStateUtils.d.ts +8 -0
  671. package/types/utils/urlStateUtils.d.ts.map +1 -0
  672. package/types/utils/viewData.d.ts +11 -0
  673. package/types/utils/viewData.d.ts.map +1 -0
  674. package/types/utils/withInterp.d.ts +19 -0
  675. package/types/utils/withInterp.d.ts.map +1 -0
  676. package/dist/cjs/components/ColumnHeaderFilter/ColumnHeaderFilter.stories.cjs +0 -50
  677. package/dist/cjs/components/ColumnHeaderFilter/ColumnHeaderFilter.stories.native.js +0 -55
  678. package/dist/cjs/components/ColumnHeaderFilter/ColumnHeaderFilter.stories.native.js.map +0 -1
  679. package/dist/cjs/components/DataTable/DataTable.spec.cjs +0 -516
  680. package/dist/cjs/components/DataTable/DataTable.spec.native.js +0 -539
  681. package/dist/cjs/components/DataTable/DataTable.spec.native.js.map +0 -1
  682. package/dist/cjs/components/DataTable/DataTable.stories.cjs +0 -2779
  683. package/dist/cjs/components/DataTable/DataTable.stories.native.js +0 -2912
  684. package/dist/cjs/components/DataTable/DataTable.stories.native.js.map +0 -1
  685. package/dist/cjs/components/DataTable/FieldsInCells.stories.cjs +0 -244
  686. package/dist/cjs/components/DataTable/FieldsInCells.stories.native.js +0 -265
  687. package/dist/cjs/components/DataTable/FieldsInCells.stories.native.js.map +0 -1
  688. package/dist/cjs/components/DataTable/compoundComponent.spec.cjs +0 -334
  689. package/dist/cjs/components/DataTable/compoundComponent.spec.native.js +0 -348
  690. package/dist/cjs/components/DataTable/compoundComponent.spec.native.js.map +0 -1
  691. package/dist/cjs/components/DataTableBulkActions/DataTableBulkActions.spec.cjs +0 -305
  692. package/dist/cjs/components/DataTableBulkActions/DataTableBulkActions.spec.native.js +0 -340
  693. package/dist/cjs/components/DataTableBulkActions/DataTableBulkActions.spec.native.js.map +0 -1
  694. package/dist/cjs/components/DataTableBulkActions/DataTableBulkActions.stories.cjs +0 -347
  695. package/dist/cjs/components/DataTableBulkActions/DataTableBulkActions.stories.native.js +0 -372
  696. package/dist/cjs/components/DataTableBulkActions/DataTableBulkActions.stories.native.js.map +0 -1
  697. package/dist/cjs/components/DataTableCell/DataTableCell.stories.cjs +0 -50
  698. package/dist/cjs/components/DataTableCell/DataTableCell.stories.native.js +0 -55
  699. package/dist/cjs/components/DataTableCell/DataTableCell.stories.native.js.map +0 -1
  700. package/dist/cjs/components/DataTableCell/dataTableCell.spec.cjs +0 -203
  701. package/dist/cjs/components/DataTableCell/dataTableCell.spec.native.js +0 -220
  702. package/dist/cjs/components/DataTableCell/dataTableCell.spec.native.js.map +0 -1
  703. package/dist/cjs/components/DataTableColumnPinning/DataTableColumnPinning.spec.cjs +0 -287
  704. package/dist/cjs/components/DataTableColumnPinning/DataTableColumnPinning.spec.native.js +0 -315
  705. package/dist/cjs/components/DataTableColumnPinning/DataTableColumnPinning.spec.native.js.map +0 -1
  706. package/dist/cjs/components/DataTableColumnPinning/DataTableColumnPinning.stories.cjs +0 -486
  707. package/dist/cjs/components/DataTableColumnPinning/DataTableColumnPinning.stories.native.js +0 -541
  708. package/dist/cjs/components/DataTableColumnPinning/DataTableColumnPinning.stories.native.js.map +0 -1
  709. package/dist/cjs/components/DataTableDateFilter/DataTableDateFilter.spec.cjs +0 -409
  710. package/dist/cjs/components/DataTableDateFilter/DataTableDateFilter.spec.native.js +0 -459
  711. package/dist/cjs/components/DataTableDateFilter/DataTableDateFilter.spec.native.js.map +0 -1
  712. package/dist/cjs/components/DataTableDateFilter/DataTableDateFilter.stories.cjs +0 -368
  713. package/dist/cjs/components/DataTableDateFilter/DataTableDateFilter.stories.native.js +0 -375
  714. package/dist/cjs/components/DataTableDateFilter/DataTableDateFilter.stories.native.js.map +0 -1
  715. package/dist/cjs/components/DataTableExport/DataTableExport.spec.cjs +0 -334
  716. package/dist/cjs/components/DataTableExport/DataTableExport.spec.native.js +0 -349
  717. package/dist/cjs/components/DataTableExport/DataTableExport.spec.native.js.map +0 -1
  718. package/dist/cjs/components/DataTableExport/DataTableExport.stories.cjs +0 -452
  719. package/dist/cjs/components/DataTableExport/DataTableExport.stories.native.js +0 -479
  720. package/dist/cjs/components/DataTableExport/DataTableExport.stories.native.js.map +0 -1
  721. package/dist/cjs/components/DataTableFilters/DataTableFilters.spec.cjs +0 -687
  722. package/dist/cjs/components/DataTableFilters/DataTableFilters.spec.native.js +0 -698
  723. package/dist/cjs/components/DataTableFilters/DataTableFilters.spec.native.js.map +0 -1
  724. package/dist/cjs/components/DataTableFilters/DataTableFilters.stories.cjs +0 -551
  725. package/dist/cjs/components/DataTableFilters/DataTableFilters.stories.native.js +0 -564
  726. package/dist/cjs/components/DataTableFilters/DataTableFilters.stories.native.js.map +0 -1
  727. package/dist/cjs/components/DataTableGrouping/DataTableGrouping.spec.cjs +0 -249
  728. package/dist/cjs/components/DataTableGrouping/DataTableGrouping.spec.native.js +0 -284
  729. package/dist/cjs/components/DataTableGrouping/DataTableGrouping.spec.native.js.map +0 -1
  730. package/dist/cjs/components/DataTableGrouping/DataTableGrouping.stories.cjs +0 -523
  731. package/dist/cjs/components/DataTableGrouping/DataTableGrouping.stories.native.js +0 -545
  732. package/dist/cjs/components/DataTableGrouping/DataTableGrouping.stories.native.js.map +0 -1
  733. package/dist/cjs/components/DataTablePagination/DataTablePagination.spec.cjs +0 -386
  734. package/dist/cjs/components/DataTablePagination/DataTablePagination.spec.native.js +0 -389
  735. package/dist/cjs/components/DataTablePagination/DataTablePagination.spec.native.js.map +0 -1
  736. package/dist/cjs/components/DataTablePagination/DataTablePagination.stories.cjs +0 -604
  737. package/dist/cjs/components/DataTablePagination/DataTablePagination.stories.native.js +0 -627
  738. package/dist/cjs/components/DataTablePagination/DataTablePagination.stories.native.js.map +0 -1
  739. package/dist/cjs/components/DataTableSearch/DataTableSearch.spec.cjs +0 -469
  740. package/dist/cjs/components/DataTableSearch/DataTableSearch.spec.native.js +0 -472
  741. package/dist/cjs/components/DataTableSearch/DataTableSearch.spec.native.js.map +0 -1
  742. package/dist/cjs/components/DataTableSearch/DataTableSearch.stories.cjs +0 -82
  743. package/dist/cjs/components/DataTableSearch/DataTableSearch.stories.native.js +0 -89
  744. package/dist/cjs/components/DataTableSearch/DataTableSearch.stories.native.js.map +0 -1
  745. package/dist/cjs/components/DataTableToolbar/DataTableToolbar.spec.cjs +0 -572
  746. package/dist/cjs/components/DataTableToolbar/DataTableToolbar.spec.native.js +0 -575
  747. package/dist/cjs/components/DataTableToolbar/DataTableToolbar.spec.native.js.map +0 -1
  748. package/dist/cjs/components/DataTableToolbar/DataTableToolbar.stories.cjs +0 -51
  749. package/dist/cjs/components/DataTableToolbar/DataTableToolbar.stories.native.js +0 -56
  750. package/dist/cjs/components/DataTableToolbar/DataTableToolbar.stories.native.js.map +0 -1
  751. package/dist/cjs/components/DataTableViewOptions/DataTableViewOptions.spec.cjs +0 -126
  752. package/dist/cjs/components/DataTableViewOptions/DataTableViewOptions.spec.native.js +0 -129
  753. package/dist/cjs/components/DataTableViewOptions/DataTableViewOptions.spec.native.js.map +0 -1
  754. package/dist/cjs/components/DataTableViewOptions/DataTableViewOptions.stories.cjs +0 -436
  755. package/dist/cjs/components/DataTableViewOptions/DataTableViewOptions.stories.native.js +0 -458
  756. package/dist/cjs/components/DataTableViewOptions/DataTableViewOptions.stories.native.js.map +0 -1
  757. package/dist/cjs/components/FilterManager.spec.cjs +0 -52
  758. package/dist/cjs/components/FilterManager.spec.native.js +0 -55
  759. package/dist/cjs/components/FilterManager.spec.native.js.map +0 -1
  760. package/dist/cjs/components/SavedFilterDropdown.spec.cjs +0 -83
  761. package/dist/cjs/components/SavedFilterDropdown.spec.native.js +0 -86
  762. package/dist/cjs/components/SavedFilterDropdown.spec.native.js.map +0 -1
  763. package/dist/cjs/components/SimpleTable/simpleTable.spec.cjs +0 -162
  764. package/dist/cjs/components/SimpleTable/simpleTable.spec.native.js +0 -165
  765. package/dist/cjs/components/SimpleTable/simpleTable.spec.native.js.map +0 -1
  766. package/dist/cjs/components/Table/Table.stories.cjs +0 -196
  767. package/dist/cjs/components/Table/Table.stories.native.js +0 -207
  768. package/dist/cjs/components/Table/Table.stories.native.js.map +0 -1
  769. package/dist/cjs/components/Table/accessibility.spec.cjs +0 -186
  770. package/dist/cjs/components/Table/accessibility.spec.native.js +0 -216
  771. package/dist/cjs/components/Table/accessibility.spec.native.js.map +0 -1
  772. package/dist/cjs/components/TableInput/TableInput.stories.cjs +0 -50
  773. package/dist/cjs/components/TableInput/TableInput.stories.native.js +0 -55
  774. package/dist/cjs/components/TableInput/TableInput.stories.native.js.map +0 -1
  775. package/dist/cjs/components/componentConsistency.spec.cjs +0 -37
  776. package/dist/cjs/components/componentConsistency.spec.native.js +0 -48
  777. package/dist/cjs/components/componentConsistency.spec.native.js.map +0 -1
  778. package/dist/cjs/hooks/hookDecomposition.spec.cjs +0 -326
  779. package/dist/cjs/hooks/hookDecomposition.spec.native.js +0 -351
  780. package/dist/cjs/hooks/hookDecomposition.spec.native.js.map +0 -1
  781. package/dist/cjs/hooks/useDataTable.spec.cjs +0 -10
  782. package/dist/cjs/hooks/useDataTable.spec.native.js +0 -13
  783. package/dist/cjs/hooks/useDataTable.spec.native.js.map +0 -1
  784. package/dist/cjs/hooks/useSavedFilters.spec.cjs +0 -212
  785. package/dist/cjs/hooks/useSavedFilters.spec.native.js +0 -240
  786. package/dist/cjs/hooks/useSavedFilters.spec.native.js.map +0 -1
  787. package/dist/cjs/utils/filterUtils.spec.cjs +0 -350
  788. package/dist/cjs/utils/filterUtils.spec.native.js +0 -353
  789. package/dist/cjs/utils/filterUtils.spec.native.js.map +0 -1
  790. package/dist/cjs/utils/urlStateUtils.spec.cjs +0 -234
  791. package/dist/cjs/utils/urlStateUtils.spec.native.js +0 -239
  792. package/dist/cjs/utils/urlStateUtils.spec.native.js.map +0 -1
  793. package/dist/esm/components/ColumnHeaderFilter/ColumnHeaderFilter.stories.mjs +0 -24
  794. package/dist/esm/components/ColumnHeaderFilter/ColumnHeaderFilter.stories.mjs.map +0 -1
  795. package/dist/esm/components/ColumnHeaderFilter/ColumnHeaderFilter.stories.native.js +0 -26
  796. package/dist/esm/components/ColumnHeaderFilter/ColumnHeaderFilter.stories.native.js.map +0 -1
  797. package/dist/esm/components/DataTable/DataTable.spec.mjs +0 -517
  798. package/dist/esm/components/DataTable/DataTable.spec.mjs.map +0 -1
  799. package/dist/esm/components/DataTable/DataTable.spec.native.js +0 -537
  800. package/dist/esm/components/DataTable/DataTable.spec.native.js.map +0 -1
  801. package/dist/esm/components/DataTable/DataTable.stories.mjs +0 -2672
  802. package/dist/esm/components/DataTable/DataTable.stories.mjs.map +0 -1
  803. package/dist/esm/components/DataTable/DataTable.stories.native.js +0 -2802
  804. package/dist/esm/components/DataTable/DataTable.stories.native.js.map +0 -1
  805. package/dist/esm/components/DataTable/FieldsInCells.stories.mjs +0 -217
  806. package/dist/esm/components/DataTable/FieldsInCells.stories.mjs.map +0 -1
  807. package/dist/esm/components/DataTable/FieldsInCells.stories.native.js +0 -224
  808. package/dist/esm/components/DataTable/FieldsInCells.stories.native.js.map +0 -1
  809. package/dist/esm/components/DataTable/compoundComponent.spec.mjs +0 -335
  810. package/dist/esm/components/DataTable/compoundComponent.spec.mjs.map +0 -1
  811. package/dist/esm/components/DataTable/compoundComponent.spec.native.js +0 -346
  812. package/dist/esm/components/DataTable/compoundComponent.spec.native.js.map +0 -1
  813. package/dist/esm/components/DataTableBulkActions/DataTableBulkActions.spec.mjs +0 -306
  814. package/dist/esm/components/DataTableBulkActions/DataTableBulkActions.spec.mjs.map +0 -1
  815. package/dist/esm/components/DataTableBulkActions/DataTableBulkActions.spec.native.js +0 -338
  816. package/dist/esm/components/DataTableBulkActions/DataTableBulkActions.spec.native.js.map +0 -1
  817. package/dist/esm/components/DataTableBulkActions/DataTableBulkActions.stories.mjs +0 -304
  818. package/dist/esm/components/DataTableBulkActions/DataTableBulkActions.stories.mjs.map +0 -1
  819. package/dist/esm/components/DataTableBulkActions/DataTableBulkActions.stories.native.js +0 -326
  820. package/dist/esm/components/DataTableBulkActions/DataTableBulkActions.stories.native.js.map +0 -1
  821. package/dist/esm/components/DataTableCell/DataTableCell.stories.mjs +0 -24
  822. package/dist/esm/components/DataTableCell/DataTableCell.stories.mjs.map +0 -1
  823. package/dist/esm/components/DataTableCell/DataTableCell.stories.native.js +0 -26
  824. package/dist/esm/components/DataTableCell/DataTableCell.stories.native.js.map +0 -1
  825. package/dist/esm/components/DataTableCell/dataTableCell.spec.mjs +0 -180
  826. package/dist/esm/components/DataTableCell/dataTableCell.spec.mjs.map +0 -1
  827. package/dist/esm/components/DataTableCell/dataTableCell.spec.native.js +0 -194
  828. package/dist/esm/components/DataTableCell/dataTableCell.spec.native.js.map +0 -1
  829. package/dist/esm/components/DataTableColumnPinning/DataTableColumnPinning.spec.mjs +0 -264
  830. package/dist/esm/components/DataTableColumnPinning/DataTableColumnPinning.spec.mjs.map +0 -1
  831. package/dist/esm/components/DataTableColumnPinning/DataTableColumnPinning.spec.native.js +0 -289
  832. package/dist/esm/components/DataTableColumnPinning/DataTableColumnPinning.spec.native.js.map +0 -1
  833. package/dist/esm/components/DataTableColumnPinning/DataTableColumnPinning.stories.mjs +0 -457
  834. package/dist/esm/components/DataTableColumnPinning/DataTableColumnPinning.stories.mjs.map +0 -1
  835. package/dist/esm/components/DataTableColumnPinning/DataTableColumnPinning.stories.native.js +0 -509
  836. package/dist/esm/components/DataTableColumnPinning/DataTableColumnPinning.stories.native.js.map +0 -1
  837. package/dist/esm/components/DataTableDateFilter/DataTableDateFilter.spec.mjs +0 -386
  838. package/dist/esm/components/DataTableDateFilter/DataTableDateFilter.spec.mjs.map +0 -1
  839. package/dist/esm/components/DataTableDateFilter/DataTableDateFilter.spec.native.js +0 -433
  840. package/dist/esm/components/DataTableDateFilter/DataTableDateFilter.spec.native.js.map +0 -1
  841. package/dist/esm/components/DataTableDateFilter/DataTableDateFilter.stories.mjs +0 -325
  842. package/dist/esm/components/DataTableDateFilter/DataTableDateFilter.stories.mjs.map +0 -1
  843. package/dist/esm/components/DataTableDateFilter/DataTableDateFilter.stories.native.js +0 -329
  844. package/dist/esm/components/DataTableDateFilter/DataTableDateFilter.stories.native.js.map +0 -1
  845. package/dist/esm/components/DataTableExport/DataTableExport.spec.mjs +0 -335
  846. package/dist/esm/components/DataTableExport/DataTableExport.spec.mjs.map +0 -1
  847. package/dist/esm/components/DataTableExport/DataTableExport.spec.native.js +0 -347
  848. package/dist/esm/components/DataTableExport/DataTableExport.spec.native.js.map +0 -1
  849. package/dist/esm/components/DataTableExport/DataTableExport.stories.mjs +0 -419
  850. package/dist/esm/components/DataTableExport/DataTableExport.stories.mjs.map +0 -1
  851. package/dist/esm/components/DataTableExport/DataTableExport.stories.native.js +0 -443
  852. package/dist/esm/components/DataTableExport/DataTableExport.stories.native.js.map +0 -1
  853. package/dist/esm/components/DataTableFilters/DataTableFilters.spec.mjs +0 -688
  854. package/dist/esm/components/DataTableFilters/DataTableFilters.spec.mjs.map +0 -1
  855. package/dist/esm/components/DataTableFilters/DataTableFilters.spec.native.js +0 -696
  856. package/dist/esm/components/DataTableFilters/DataTableFilters.spec.native.js.map +0 -1
  857. package/dist/esm/components/DataTableFilters/DataTableFilters.stories.mjs +0 -499
  858. package/dist/esm/components/DataTableFilters/DataTableFilters.stories.mjs.map +0 -1
  859. package/dist/esm/components/DataTableFilters/DataTableFilters.stories.native.js +0 -509
  860. package/dist/esm/components/DataTableFilters/DataTableFilters.stories.native.js.map +0 -1
  861. package/dist/esm/components/DataTableGrouping/DataTableGrouping.spec.mjs +0 -249
  862. package/dist/esm/components/DataTableGrouping/DataTableGrouping.spec.mjs.map +0 -1
  863. package/dist/esm/components/DataTableGrouping/DataTableGrouping.spec.native.js +0 -281
  864. package/dist/esm/components/DataTableGrouping/DataTableGrouping.spec.native.js.map +0 -1
  865. package/dist/esm/components/DataTableGrouping/DataTableGrouping.stories.mjs +0 -479
  866. package/dist/esm/components/DataTableGrouping/DataTableGrouping.stories.mjs.map +0 -1
  867. package/dist/esm/components/DataTableGrouping/DataTableGrouping.stories.native.js +0 -498
  868. package/dist/esm/components/DataTableGrouping/DataTableGrouping.stories.native.js.map +0 -1
  869. package/dist/esm/components/DataTablePagination/DataTablePagination.spec.mjs +0 -387
  870. package/dist/esm/components/DataTablePagination/DataTablePagination.spec.mjs.map +0 -1
  871. package/dist/esm/components/DataTablePagination/DataTablePagination.spec.native.js +0 -387
  872. package/dist/esm/components/DataTablePagination/DataTablePagination.spec.native.js.map +0 -1
  873. package/dist/esm/components/DataTablePagination/DataTablePagination.stories.mjs +0 -546
  874. package/dist/esm/components/DataTablePagination/DataTablePagination.stories.mjs.map +0 -1
  875. package/dist/esm/components/DataTablePagination/DataTablePagination.stories.native.js +0 -566
  876. package/dist/esm/components/DataTablePagination/DataTablePagination.stories.native.js.map +0 -1
  877. package/dist/esm/components/DataTableSearch/DataTableSearch.spec.mjs +0 -470
  878. package/dist/esm/components/DataTableSearch/DataTableSearch.spec.mjs.map +0 -1
  879. package/dist/esm/components/DataTableSearch/DataTableSearch.spec.native.js +0 -470
  880. package/dist/esm/components/DataTableSearch/DataTableSearch.spec.native.js.map +0 -1
  881. package/dist/esm/components/DataTableSearch/DataTableSearch.stories.mjs +0 -56
  882. package/dist/esm/components/DataTableSearch/DataTableSearch.stories.mjs.map +0 -1
  883. package/dist/esm/components/DataTableSearch/DataTableSearch.stories.native.js +0 -60
  884. package/dist/esm/components/DataTableSearch/DataTableSearch.stories.native.js.map +0 -1
  885. package/dist/esm/components/DataTableToolbar/DataTableToolbar.spec.mjs +0 -573
  886. package/dist/esm/components/DataTableToolbar/DataTableToolbar.spec.mjs.map +0 -1
  887. package/dist/esm/components/DataTableToolbar/DataTableToolbar.spec.native.js +0 -573
  888. package/dist/esm/components/DataTableToolbar/DataTableToolbar.spec.native.js.map +0 -1
  889. package/dist/esm/components/DataTableToolbar/DataTableToolbar.stories.mjs +0 -25
  890. package/dist/esm/components/DataTableToolbar/DataTableToolbar.stories.mjs.map +0 -1
  891. package/dist/esm/components/DataTableToolbar/DataTableToolbar.stories.native.js +0 -27
  892. package/dist/esm/components/DataTableToolbar/DataTableToolbar.stories.native.js.map +0 -1
  893. package/dist/esm/components/DataTableViewOptions/DataTableViewOptions.spec.mjs +0 -126
  894. package/dist/esm/components/DataTableViewOptions/DataTableViewOptions.spec.mjs.map +0 -1
  895. package/dist/esm/components/DataTableViewOptions/DataTableViewOptions.spec.native.js +0 -126
  896. package/dist/esm/components/DataTableViewOptions/DataTableViewOptions.spec.native.js.map +0 -1
  897. package/dist/esm/components/DataTableViewOptions/DataTableViewOptions.stories.mjs +0 -393
  898. package/dist/esm/components/DataTableViewOptions/DataTableViewOptions.stories.mjs.map +0 -1
  899. package/dist/esm/components/DataTableViewOptions/DataTableViewOptions.stories.native.js +0 -412
  900. package/dist/esm/components/DataTableViewOptions/DataTableViewOptions.stories.native.js.map +0 -1
  901. package/dist/esm/components/FilterManager.spec.mjs +0 -53
  902. package/dist/esm/components/FilterManager.spec.mjs.map +0 -1
  903. package/dist/esm/components/FilterManager.spec.native.js +0 -53
  904. package/dist/esm/components/FilterManager.spec.native.js.map +0 -1
  905. package/dist/esm/components/SavedFilterDropdown.spec.mjs +0 -84
  906. package/dist/esm/components/SavedFilterDropdown.spec.mjs.map +0 -1
  907. package/dist/esm/components/SavedFilterDropdown.spec.native.js +0 -84
  908. package/dist/esm/components/SavedFilterDropdown.spec.native.js.map +0 -1
  909. package/dist/esm/components/SimpleTable/simpleTable.spec.mjs +0 -163
  910. package/dist/esm/components/SimpleTable/simpleTable.spec.mjs.map +0 -1
  911. package/dist/esm/components/SimpleTable/simpleTable.spec.native.js +0 -163
  912. package/dist/esm/components/SimpleTable/simpleTable.spec.native.js.map +0 -1
  913. package/dist/esm/components/Table/Table.stories.mjs +0 -167
  914. package/dist/esm/components/Table/Table.stories.mjs.map +0 -1
  915. package/dist/esm/components/Table/Table.stories.native.js +0 -175
  916. package/dist/esm/components/Table/Table.stories.native.js.map +0 -1
  917. package/dist/esm/components/Table/accessibility.spec.mjs +0 -187
  918. package/dist/esm/components/Table/accessibility.spec.mjs.map +0 -1
  919. package/dist/esm/components/Table/accessibility.spec.native.js +0 -214
  920. package/dist/esm/components/Table/accessibility.spec.native.js.map +0 -1
  921. package/dist/esm/components/TableInput/TableInput.stories.mjs +0 -24
  922. package/dist/esm/components/TableInput/TableInput.stories.mjs.map +0 -1
  923. package/dist/esm/components/TableInput/TableInput.stories.native.js +0 -26
  924. package/dist/esm/components/TableInput/TableInput.stories.native.js.map +0 -1
  925. package/dist/esm/components/componentConsistency.spec.mjs +0 -38
  926. package/dist/esm/components/componentConsistency.spec.mjs.map +0 -1
  927. package/dist/esm/components/componentConsistency.spec.native.js +0 -46
  928. package/dist/esm/components/componentConsistency.spec.native.js.map +0 -1
  929. package/dist/esm/hooks/hookDecomposition.spec.mjs +0 -327
  930. package/dist/esm/hooks/hookDecomposition.spec.mjs.map +0 -1
  931. package/dist/esm/hooks/hookDecomposition.spec.native.js +0 -349
  932. package/dist/esm/hooks/hookDecomposition.spec.native.js.map +0 -1
  933. package/dist/esm/hooks/useDataTable.spec.mjs +0 -11
  934. package/dist/esm/hooks/useDataTable.spec.mjs.map +0 -1
  935. package/dist/esm/hooks/useDataTable.spec.native.js +0 -11
  936. package/dist/esm/hooks/useDataTable.spec.native.js.map +0 -1
  937. package/dist/esm/hooks/useSavedFilters.spec.mjs +0 -213
  938. package/dist/esm/hooks/useSavedFilters.spec.mjs.map +0 -1
  939. package/dist/esm/hooks/useSavedFilters.spec.native.js +0 -238
  940. package/dist/esm/hooks/useSavedFilters.spec.native.js.map +0 -1
  941. package/dist/esm/utils/filterUtils.spec.mjs +0 -351
  942. package/dist/esm/utils/filterUtils.spec.mjs.map +0 -1
  943. package/dist/esm/utils/filterUtils.spec.native.js +0 -351
  944. package/dist/esm/utils/filterUtils.spec.native.js.map +0 -1
  945. package/dist/esm/utils/urlStateUtils.spec.mjs +0 -235
  946. package/dist/esm/utils/urlStateUtils.spec.mjs.map +0 -1
  947. package/dist/esm/utils/urlStateUtils.spec.native.js +0 -237
  948. package/dist/esm/utils/urlStateUtils.spec.native.js.map +0 -1
  949. package/dist/jsx/components/ColumnHeaderFilter/ColumnHeaderFilter.stories.mjs +0 -24
  950. package/dist/jsx/components/ColumnHeaderFilter/ColumnHeaderFilter.stories.mjs.map +0 -1
  951. package/dist/jsx/components/ColumnHeaderFilter/ColumnHeaderFilter.stories.native.js +0 -55
  952. package/dist/jsx/components/ColumnHeaderFilter/ColumnHeaderFilter.stories.native.js.map +0 -1
  953. package/dist/jsx/components/DataTable/DataTable.spec.mjs +0 -517
  954. package/dist/jsx/components/DataTable/DataTable.spec.mjs.map +0 -1
  955. package/dist/jsx/components/DataTable/DataTable.spec.native.js +0 -539
  956. package/dist/jsx/components/DataTable/DataTable.spec.native.js.map +0 -1
  957. package/dist/jsx/components/DataTable/DataTable.stories.mjs +0 -2672
  958. package/dist/jsx/components/DataTable/DataTable.stories.mjs.map +0 -1
  959. package/dist/jsx/components/DataTable/DataTable.stories.native.js +0 -2912
  960. package/dist/jsx/components/DataTable/DataTable.stories.native.js.map +0 -1
  961. package/dist/jsx/components/DataTable/FieldsInCells.stories.mjs +0 -217
  962. package/dist/jsx/components/DataTable/FieldsInCells.stories.mjs.map +0 -1
  963. package/dist/jsx/components/DataTable/FieldsInCells.stories.native.js +0 -265
  964. package/dist/jsx/components/DataTable/FieldsInCells.stories.native.js.map +0 -1
  965. package/dist/jsx/components/DataTable/compoundComponent.spec.mjs +0 -335
  966. package/dist/jsx/components/DataTable/compoundComponent.spec.mjs.map +0 -1
  967. package/dist/jsx/components/DataTable/compoundComponent.spec.native.js +0 -348
  968. package/dist/jsx/components/DataTable/compoundComponent.spec.native.js.map +0 -1
  969. package/dist/jsx/components/DataTableBulkActions/DataTableBulkActions.spec.mjs +0 -306
  970. package/dist/jsx/components/DataTableBulkActions/DataTableBulkActions.spec.mjs.map +0 -1
  971. package/dist/jsx/components/DataTableBulkActions/DataTableBulkActions.spec.native.js +0 -340
  972. package/dist/jsx/components/DataTableBulkActions/DataTableBulkActions.spec.native.js.map +0 -1
  973. package/dist/jsx/components/DataTableBulkActions/DataTableBulkActions.stories.mjs +0 -304
  974. package/dist/jsx/components/DataTableBulkActions/DataTableBulkActions.stories.mjs.map +0 -1
  975. package/dist/jsx/components/DataTableBulkActions/DataTableBulkActions.stories.native.js +0 -372
  976. package/dist/jsx/components/DataTableBulkActions/DataTableBulkActions.stories.native.js.map +0 -1
  977. package/dist/jsx/components/DataTableCell/DataTableCell.stories.mjs +0 -24
  978. package/dist/jsx/components/DataTableCell/DataTableCell.stories.mjs.map +0 -1
  979. package/dist/jsx/components/DataTableCell/DataTableCell.stories.native.js +0 -55
  980. package/dist/jsx/components/DataTableCell/DataTableCell.stories.native.js.map +0 -1
  981. package/dist/jsx/components/DataTableCell/dataTableCell.spec.mjs +0 -180
  982. package/dist/jsx/components/DataTableCell/dataTableCell.spec.mjs.map +0 -1
  983. package/dist/jsx/components/DataTableCell/dataTableCell.spec.native.js +0 -220
  984. package/dist/jsx/components/DataTableCell/dataTableCell.spec.native.js.map +0 -1
  985. package/dist/jsx/components/DataTableColumnPinning/DataTableColumnPinning.spec.mjs +0 -264
  986. package/dist/jsx/components/DataTableColumnPinning/DataTableColumnPinning.spec.mjs.map +0 -1
  987. package/dist/jsx/components/DataTableColumnPinning/DataTableColumnPinning.spec.native.js +0 -315
  988. package/dist/jsx/components/DataTableColumnPinning/DataTableColumnPinning.spec.native.js.map +0 -1
  989. package/dist/jsx/components/DataTableColumnPinning/DataTableColumnPinning.stories.mjs +0 -457
  990. package/dist/jsx/components/DataTableColumnPinning/DataTableColumnPinning.stories.mjs.map +0 -1
  991. package/dist/jsx/components/DataTableColumnPinning/DataTableColumnPinning.stories.native.js +0 -541
  992. package/dist/jsx/components/DataTableColumnPinning/DataTableColumnPinning.stories.native.js.map +0 -1
  993. package/dist/jsx/components/DataTableDateFilter/DataTableDateFilter.spec.mjs +0 -386
  994. package/dist/jsx/components/DataTableDateFilter/DataTableDateFilter.spec.mjs.map +0 -1
  995. package/dist/jsx/components/DataTableDateFilter/DataTableDateFilter.spec.native.js +0 -459
  996. package/dist/jsx/components/DataTableDateFilter/DataTableDateFilter.spec.native.js.map +0 -1
  997. package/dist/jsx/components/DataTableDateFilter/DataTableDateFilter.stories.mjs +0 -325
  998. package/dist/jsx/components/DataTableDateFilter/DataTableDateFilter.stories.mjs.map +0 -1
  999. package/dist/jsx/components/DataTableDateFilter/DataTableDateFilter.stories.native.js +0 -375
  1000. package/dist/jsx/components/DataTableDateFilter/DataTableDateFilter.stories.native.js.map +0 -1
  1001. package/dist/jsx/components/DataTableExport/DataTableExport.spec.mjs +0 -335
  1002. package/dist/jsx/components/DataTableExport/DataTableExport.spec.mjs.map +0 -1
  1003. package/dist/jsx/components/DataTableExport/DataTableExport.spec.native.js +0 -349
  1004. package/dist/jsx/components/DataTableExport/DataTableExport.spec.native.js.map +0 -1
  1005. package/dist/jsx/components/DataTableExport/DataTableExport.stories.mjs +0 -419
  1006. package/dist/jsx/components/DataTableExport/DataTableExport.stories.mjs.map +0 -1
  1007. package/dist/jsx/components/DataTableExport/DataTableExport.stories.native.js +0 -479
  1008. package/dist/jsx/components/DataTableExport/DataTableExport.stories.native.js.map +0 -1
  1009. package/dist/jsx/components/DataTableFilters/DataTableFilters.spec.mjs +0 -688
  1010. package/dist/jsx/components/DataTableFilters/DataTableFilters.spec.mjs.map +0 -1
  1011. package/dist/jsx/components/DataTableFilters/DataTableFilters.spec.native.js +0 -698
  1012. package/dist/jsx/components/DataTableFilters/DataTableFilters.spec.native.js.map +0 -1
  1013. package/dist/jsx/components/DataTableFilters/DataTableFilters.stories.mjs +0 -499
  1014. package/dist/jsx/components/DataTableFilters/DataTableFilters.stories.mjs.map +0 -1
  1015. package/dist/jsx/components/DataTableFilters/DataTableFilters.stories.native.js +0 -564
  1016. package/dist/jsx/components/DataTableFilters/DataTableFilters.stories.native.js.map +0 -1
  1017. package/dist/jsx/components/DataTableGrouping/DataTableGrouping.spec.mjs +0 -249
  1018. package/dist/jsx/components/DataTableGrouping/DataTableGrouping.spec.mjs.map +0 -1
  1019. package/dist/jsx/components/DataTableGrouping/DataTableGrouping.spec.native.js +0 -284
  1020. package/dist/jsx/components/DataTableGrouping/DataTableGrouping.spec.native.js.map +0 -1
  1021. package/dist/jsx/components/DataTableGrouping/DataTableGrouping.stories.mjs +0 -479
  1022. package/dist/jsx/components/DataTableGrouping/DataTableGrouping.stories.mjs.map +0 -1
  1023. package/dist/jsx/components/DataTableGrouping/DataTableGrouping.stories.native.js +0 -545
  1024. package/dist/jsx/components/DataTableGrouping/DataTableGrouping.stories.native.js.map +0 -1
  1025. package/dist/jsx/components/DataTablePagination/DataTablePagination.spec.mjs +0 -387
  1026. package/dist/jsx/components/DataTablePagination/DataTablePagination.spec.mjs.map +0 -1
  1027. package/dist/jsx/components/DataTablePagination/DataTablePagination.spec.native.js +0 -389
  1028. package/dist/jsx/components/DataTablePagination/DataTablePagination.spec.native.js.map +0 -1
  1029. package/dist/jsx/components/DataTablePagination/DataTablePagination.stories.mjs +0 -546
  1030. package/dist/jsx/components/DataTablePagination/DataTablePagination.stories.mjs.map +0 -1
  1031. package/dist/jsx/components/DataTablePagination/DataTablePagination.stories.native.js +0 -627
  1032. package/dist/jsx/components/DataTablePagination/DataTablePagination.stories.native.js.map +0 -1
  1033. package/dist/jsx/components/DataTableSearch/DataTableSearch.spec.mjs +0 -470
  1034. package/dist/jsx/components/DataTableSearch/DataTableSearch.spec.mjs.map +0 -1
  1035. package/dist/jsx/components/DataTableSearch/DataTableSearch.spec.native.js +0 -472
  1036. package/dist/jsx/components/DataTableSearch/DataTableSearch.spec.native.js.map +0 -1
  1037. package/dist/jsx/components/DataTableSearch/DataTableSearch.stories.mjs +0 -56
  1038. package/dist/jsx/components/DataTableSearch/DataTableSearch.stories.mjs.map +0 -1
  1039. package/dist/jsx/components/DataTableSearch/DataTableSearch.stories.native.js +0 -89
  1040. package/dist/jsx/components/DataTableSearch/DataTableSearch.stories.native.js.map +0 -1
  1041. package/dist/jsx/components/DataTableToolbar/DataTableToolbar.spec.mjs +0 -573
  1042. package/dist/jsx/components/DataTableToolbar/DataTableToolbar.spec.mjs.map +0 -1
  1043. package/dist/jsx/components/DataTableToolbar/DataTableToolbar.spec.native.js +0 -575
  1044. package/dist/jsx/components/DataTableToolbar/DataTableToolbar.spec.native.js.map +0 -1
  1045. package/dist/jsx/components/DataTableToolbar/DataTableToolbar.stories.mjs +0 -25
  1046. package/dist/jsx/components/DataTableToolbar/DataTableToolbar.stories.mjs.map +0 -1
  1047. package/dist/jsx/components/DataTableToolbar/DataTableToolbar.stories.native.js +0 -56
  1048. package/dist/jsx/components/DataTableToolbar/DataTableToolbar.stories.native.js.map +0 -1
  1049. package/dist/jsx/components/DataTableViewOptions/DataTableViewOptions.spec.mjs +0 -126
  1050. package/dist/jsx/components/DataTableViewOptions/DataTableViewOptions.spec.mjs.map +0 -1
  1051. package/dist/jsx/components/DataTableViewOptions/DataTableViewOptions.spec.native.js +0 -129
  1052. package/dist/jsx/components/DataTableViewOptions/DataTableViewOptions.spec.native.js.map +0 -1
  1053. package/dist/jsx/components/DataTableViewOptions/DataTableViewOptions.stories.mjs +0 -393
  1054. package/dist/jsx/components/DataTableViewOptions/DataTableViewOptions.stories.mjs.map +0 -1
  1055. package/dist/jsx/components/DataTableViewOptions/DataTableViewOptions.stories.native.js +0 -458
  1056. package/dist/jsx/components/DataTableViewOptions/DataTableViewOptions.stories.native.js.map +0 -1
  1057. package/dist/jsx/components/FilterManager.spec.mjs +0 -53
  1058. package/dist/jsx/components/FilterManager.spec.mjs.map +0 -1
  1059. package/dist/jsx/components/FilterManager.spec.native.js +0 -55
  1060. package/dist/jsx/components/FilterManager.spec.native.js.map +0 -1
  1061. package/dist/jsx/components/SavedFilterDropdown.spec.mjs +0 -84
  1062. package/dist/jsx/components/SavedFilterDropdown.spec.mjs.map +0 -1
  1063. package/dist/jsx/components/SavedFilterDropdown.spec.native.js +0 -86
  1064. package/dist/jsx/components/SavedFilterDropdown.spec.native.js.map +0 -1
  1065. package/dist/jsx/components/SimpleTable/simpleTable.spec.mjs +0 -163
  1066. package/dist/jsx/components/SimpleTable/simpleTable.spec.mjs.map +0 -1
  1067. package/dist/jsx/components/SimpleTable/simpleTable.spec.native.js +0 -165
  1068. package/dist/jsx/components/SimpleTable/simpleTable.spec.native.js.map +0 -1
  1069. package/dist/jsx/components/Table/Table.stories.mjs +0 -167
  1070. package/dist/jsx/components/Table/Table.stories.mjs.map +0 -1
  1071. package/dist/jsx/components/Table/Table.stories.native.js +0 -207
  1072. package/dist/jsx/components/Table/Table.stories.native.js.map +0 -1
  1073. package/dist/jsx/components/Table/accessibility.spec.mjs +0 -187
  1074. package/dist/jsx/components/Table/accessibility.spec.mjs.map +0 -1
  1075. package/dist/jsx/components/Table/accessibility.spec.native.js +0 -216
  1076. package/dist/jsx/components/Table/accessibility.spec.native.js.map +0 -1
  1077. package/dist/jsx/components/TableInput/TableInput.stories.mjs +0 -24
  1078. package/dist/jsx/components/TableInput/TableInput.stories.mjs.map +0 -1
  1079. package/dist/jsx/components/TableInput/TableInput.stories.native.js +0 -55
  1080. package/dist/jsx/components/TableInput/TableInput.stories.native.js.map +0 -1
  1081. package/dist/jsx/components/componentConsistency.spec.mjs +0 -38
  1082. package/dist/jsx/components/componentConsistency.spec.mjs.map +0 -1
  1083. package/dist/jsx/components/componentConsistency.spec.native.js +0 -48
  1084. package/dist/jsx/components/componentConsistency.spec.native.js.map +0 -1
  1085. package/dist/jsx/hooks/hookDecomposition.spec.mjs +0 -327
  1086. package/dist/jsx/hooks/hookDecomposition.spec.mjs.map +0 -1
  1087. package/dist/jsx/hooks/hookDecomposition.spec.native.js +0 -351
  1088. package/dist/jsx/hooks/hookDecomposition.spec.native.js.map +0 -1
  1089. package/dist/jsx/hooks/useDataTable.spec.mjs +0 -11
  1090. package/dist/jsx/hooks/useDataTable.spec.mjs.map +0 -1
  1091. package/dist/jsx/hooks/useDataTable.spec.native.js +0 -13
  1092. package/dist/jsx/hooks/useDataTable.spec.native.js.map +0 -1
  1093. package/dist/jsx/hooks/useSavedFilters.spec.mjs +0 -213
  1094. package/dist/jsx/hooks/useSavedFilters.spec.mjs.map +0 -1
  1095. package/dist/jsx/hooks/useSavedFilters.spec.native.js +0 -240
  1096. package/dist/jsx/hooks/useSavedFilters.spec.native.js.map +0 -1
  1097. package/dist/jsx/utils/filterUtils.spec.mjs +0 -351
  1098. package/dist/jsx/utils/filterUtils.spec.mjs.map +0 -1
  1099. package/dist/jsx/utils/filterUtils.spec.native.js +0 -353
  1100. package/dist/jsx/utils/filterUtils.spec.native.js.map +0 -1
  1101. package/dist/jsx/utils/urlStateUtils.spec.mjs +0 -235
  1102. package/dist/jsx/utils/urlStateUtils.spec.mjs.map +0 -1
  1103. package/dist/jsx/utils/urlStateUtils.spec.native.js +0 -239
  1104. package/dist/jsx/utils/urlStateUtils.spec.native.js.map +0 -1
@@ -51,55 +51,34 @@ var import_useDataTableKeyboard = require("../../hooks/useDataTableKeyboard.cjs"
51
51
  var import_DataTableColumnPinning = require("../DataTableColumnPinning/index.cjs");
52
52
  var import_DataTablePagination = require("../DataTablePagination/index.cjs");
53
53
  var import_DataTableToolbar = require("../DataTableToolbar/index.cjs");
54
+ var import_DataTableBulkActions = require("../DataTableBulkActions/index.cjs");
54
55
  var import_DataTableCell = require("../DataTableCell/index.cjs");
55
56
  var import_ColumnHeaderFilter = require("../ColumnHeaderFilter/index.cjs");
57
+ var import_DataTableFilterChips = require("../DataTableFilterChips/index.cjs");
56
58
  var import_table_primitives = require("@multiplatform.one/table-primitives");
57
59
  var import_DataTableContext = require("./DataTableContext.cjs");
58
60
  var import_DataTableStateContext = require("./DataTableStateContext.cjs");
61
+ var import_DataTableCardControls = require("./DataTableCardControls.cjs");
59
62
  var import_DataTableMobileCards = require("./DataTableMobileCards.cjs");
60
63
  var import_DataTableVirtualized = require("./DataTableVirtualized.cjs");
64
+ var import_columnAlign = require("../../utils/columnAlign.cjs");
65
+ var import_filterFields = require("../../utils/filterFields.cjs");
66
+ var import_paginationDefaults = require("../../utils/paginationDefaults.cjs");
67
+ var import_withInterp = require("../../utils/withInterp.cjs");
61
68
  var import_jsx_runtime = require("react/jsx-runtime");
62
69
  var import_react3 = require("react");
70
+ const SELECTION_COL_WIDTH = 40;
63
71
  function getColumnField(column) {
64
72
  return column.field ?? "input";
65
73
  }
66
- function isNumericField(field) {
67
- switch (field) {
68
- case "stepper":
69
- case "slider":
70
- case "progress":
71
- case "rating":
72
- case "duration":
73
- return true;
74
- default:
75
- return false;
76
- }
77
- }
78
- function mapFieldToFilterType(field) {
79
- switch (field) {
80
- case "stepper":
81
- case "slider":
82
- case "progress":
83
- case "rating":
84
- case "duration":
85
- return "number";
86
- case "datepicker":
87
- case "datetimepicker":
88
- case "timepicker":
89
- case "daterangepicker":
90
- case "multidatepicker":
91
- return "date";
92
- case "checkbox":
93
- case "switch":
94
- return "boolean";
95
- case "select":
96
- case "combobox":
97
- case "radiogroup":
98
- case "togglegroup":
99
- return "select";
100
- default:
101
- return "text";
102
- }
74
+ function resolveColumnAlign(column) {
75
+ return (0, import_columnAlign.getDefaultColumnAlign)({
76
+ id: typeof column.id === "string" ? column.id : void 0,
77
+ align: column.align,
78
+ field: getColumnField(column),
79
+ fieldProps: column.fieldProps,
80
+ meta: column.meta
81
+ });
103
82
  }
104
83
  const rowHeightPx = 40;
105
84
  function DataTableRoot({
@@ -107,6 +86,7 @@ function DataTableRoot({
107
86
  columns,
108
87
  initialState,
109
88
  onStateChange,
89
+ onRetry,
110
90
  syncWithUrl = false,
111
91
  urlDebounceMs = 500,
112
92
  urlStrategy,
@@ -114,14 +94,19 @@ function DataTableRoot({
114
94
  manualPagination = false,
115
95
  manualSorting = false,
116
96
  enableFiltering = true,
97
+ filterableFields,
117
98
  enableSorting = true,
118
99
  enablePagination = true,
100
+ pageSizeOptions,
101
+ paginationMode = "pages",
102
+ loadPage,
119
103
  enableColumnVisibility = true,
120
104
  enableColumnOrdering = false,
121
105
  enableColumnResizing = false,
122
106
  enableGlobalSearch = true,
123
107
  enableViews = false,
124
108
  columnLayout = "equal",
109
+ layout = "auto",
125
110
  enableVirtualization = false,
126
111
  virtualizationHeight,
127
112
  virtualizationOverscan = 5,
@@ -132,6 +117,9 @@ function DataTableRoot({
132
117
  maxPinnedColumns = 3,
133
118
  enableGrouping = false,
134
119
  enableKeyboardNavigation = false,
120
+ enableRowSelection = false,
121
+ selectAllScope: selectAllScopeProp,
122
+ bulkActions,
135
123
  readOnly = false,
136
124
  onCellChange,
137
125
  name,
@@ -151,7 +139,7 @@ function DataTableRoot({
151
139
  className,
152
140
  size,
153
141
  compact = false,
154
- disabled: _disabled = false,
142
+ disabled = false,
155
143
  children,
156
144
  "aria-label": ariaLabel,
157
145
  "aria-describedby": ariaDescribedBy,
@@ -163,13 +151,21 @@ function DataTableRoot({
163
151
  const {
164
152
  sm
165
153
  } = (0, import_tamagui.useMedia)();
154
+ const showCards = layout === "cards" || layout === "auto" && sm === false;
166
155
  const {
167
- knobProps
156
+ knobProps,
157
+ disabledState
168
158
  } = (0, import_theme.useResolvedKnobs)({
169
159
  intent: void 0,
170
160
  component: "DataTable",
171
161
  compact
172
162
  });
163
+ const isRTL = (0, import_components.useDirection)() === "rtl";
164
+ const ExpandCaretIcon = isRTL ? import_react.CaretLeftIcon : import_react.CaretRightIcon;
165
+ const expandedCaretRotation = isRTL ? "rotate(-90deg)" : "rotate(90deg)";
166
+ const tableZebraOn = knobProps.tableZebra === "on";
167
+ const bulkBarPlacement = knobProps.bulkBarPlacement === "bottom" ? "bottom" : "top";
168
+ const selectAllScope = selectAllScopeProp ?? (knobProps.selectAllScope === "filtered" ? "filtered" : "page");
173
169
  const {
174
170
  resolvedForm
175
171
  } = (0, import_forms.useFormField)({
@@ -193,8 +189,11 @@ function DataTableRoot({
193
189
  manualPagination,
194
190
  manualSorting,
195
191
  enableFiltering,
192
+ filterableFields,
196
193
  enableSorting,
197
194
  enablePagination,
195
+ paginationMode,
196
+ loadPage,
198
197
  enableColumnVisibility,
199
198
  enableColumnOrdering,
200
199
  enableColumnResizing,
@@ -211,13 +210,26 @@ function DataTableRoot({
211
210
  maxPinnedColumns,
212
211
  enableGrouping,
213
212
  enableKeyboardNavigation,
213
+ enableRowSelection,
214
214
  rowCount,
215
215
  pageCount
216
216
  });
217
+ const resolvedBulkActions = bulkActions ?? [];
218
+ const selectAllChecked = enableRowSelection && (selectAllScope === "filtered" ? table.getIsAllRowsSelected() : table.getIsAllPageRowsSelected());
219
+ const selectAllIndeterminate = enableRowSelection && (selectAllScope === "filtered" ? table.getIsSomeRowsSelected() && !table.getIsAllRowsSelected() : table.getIsSomePageRowsSelected() && !table.getIsAllPageRowsSelected());
220
+ const toggleSelectAll = (0, import_react2.useCallback)(() => {
221
+ if (selectAllScope === "filtered") {
222
+ table.toggleAllRowsSelected();
223
+ } else {
224
+ table.toggleAllPageRowsSelected();
225
+ }
226
+ }, [selectAllScope, table]);
217
227
  const resolvedSize = size ?? (knobProps.sizeToken === "$3" ? "sm" : knobProps.sizeToken === "$5" ? "lg" : "md");
218
228
  const cellHeight = resolvedSize === "sm" ? "$3" : resolvedSize === "lg" ? "$5" : "$4";
219
229
  const headerGroups = table.getHeaderGroups();
220
- const tableRows = table.getRowModel().rows;
230
+ const rowModelRows = table.getRowModel().rows;
231
+ const infinite = computed.infinite;
232
+ const tableRows = infinite ? rowModelRows.slice(0, infinite.visibleRowCount) : rowModelRows;
221
233
  const footerGroups = table.getFooterGroups();
222
234
  const hasFooter = footerGroups.some(group => group.headers.some(header => header.column.columnDef.footer != null));
223
235
  const allRowsLength = tableRows.length + headerGroups.length + (hasFooter ? footerGroups.length : 0);
@@ -225,13 +237,25 @@ function DataTableRoot({
225
237
  rowCounter.current = -1;
226
238
  const getColSizeProps = (0, import_react2.useCallback)(col => {
227
239
  const hasExplicitSize = col.columnDef.size != null;
228
- if (hasExplicitSize || enableColumnResizing) {
240
+ const isPinned = enableColumnPinning && Boolean(col.getIsPinned?.());
241
+ if (isPinned) {
242
+ const size2 = col.getSize();
243
+ return {
244
+ width: size2,
245
+ minWidth: size2,
246
+ maxWidth: size2,
247
+ flexGrow: 0,
248
+ flexShrink: 0,
249
+ flexBasis: "auto"
250
+ };
251
+ }
252
+ if (hasExplicitSize || enableColumnResizing || columnLayout === "scroll") {
229
253
  return {
230
254
  width: col.getSize()
231
255
  };
232
256
  }
233
257
  return {};
234
- }, [enableColumnResizing]);
258
+ }, [enableColumnResizing, columnLayout, enableColumnPinning]);
235
259
  const dnd = (0, import_react2.useMemo)(() => {
236
260
  if (!enableColumnOrdering || !import_tamagui.isWeb) return null;
237
261
  return {
@@ -260,9 +284,10 @@ function DataTableRoot({
260
284
  };
261
285
  }, [enableColumnOrdering, table]);
262
286
  const bodyScrollRef = (0, import_react2.useRef)(null);
263
- const isVirtualized = enableVirtualization && virtualizationHeight != null && virtualizationHeight > 0 && typeof window !== "undefined";
287
+ const isVirtualized = enableVirtualization && virtualizationHeight != null && virtualizationHeight > 0 && import_tamagui.isWeb;
288
+ const hasInfiniteTail = Boolean(infinite && !infinite.exhausted && tableRows.length > 0);
264
289
  const virtualizer = (0, import_react_virtual.useVirtualizer)({
265
- count: tableRows.length,
290
+ count: tableRows.length + (hasInfiniteTail ? 1 : 0),
266
291
  getScrollElement: () => bodyScrollRef.current,
267
292
  estimateSize: () => rowHeightPx,
268
293
  overscan: virtualizationOverscan,
@@ -270,21 +295,53 @@ function DataTableRoot({
270
295
  });
271
296
  const virtualItems = isVirtualized ? virtualizer.getVirtualItems() : [];
272
297
  const totalSize = isVirtualized ? virtualizer.getTotalSize() : 0;
298
+ const loadMoreRef = (0, import_react2.useRef)(void 0);
299
+ loadMoreRef.current = infinite?.loadMore;
300
+ const lastVirtualIndex = virtualItems.length ? virtualItems[virtualItems.length - 1].index : -1;
301
+ import_react2.default.useEffect(() => {
302
+ if (!infinite || !isVirtualized || infinite.exhausted) return;
303
+ if (lastVirtualIndex < 0) return;
304
+ if (lastVirtualIndex >= tableRows.length - import_paginationDefaults.INFINITE_TRIGGER_ROWS) {
305
+ loadMoreRef.current?.();
306
+ }
307
+ }, [infinite?.exhausted, isVirtualized, lastVirtualIndex, tableRows.length, !!infinite]);
308
+ const sentinelRef = (0, import_react2.useRef)(null);
309
+ import_react2.default.useEffect(() => {
310
+ if (!infinite || isVirtualized || infinite.exhausted) return;
311
+ if (!import_tamagui.isWeb || typeof IntersectionObserver === "undefined") return;
312
+ const node = sentinelRef.current;
313
+ if (!node) return;
314
+ const observer = new IntersectionObserver(entries => {
315
+ for (const entry of entries) {
316
+ if (entry.isIntersecting) loadMoreRef.current?.();
317
+ }
318
+ }, {
319
+ rootMargin: `${import_paginationDefaults.INFINITE_TRIGGER_ROWS * rowHeightPx}px`
320
+ });
321
+ observer.observe(node);
322
+ return () => observer.disconnect();
323
+ }, [!!infinite, infinite?.exhausted, isVirtualized, tableRows.length]);
273
324
  const isFlexLayout = columnLayout !== "auto";
274
325
  const displayMode = isFlexLayout ? "flex" : "table";
326
+ const hScroll = import_tamagui.isWeb && isFlexLayout && (columnLayout === "scroll" || enableColumnPinning);
327
+ const clipBodyCells = hScroll;
275
328
  const cellFlexProps = (0, import_react2.useMemo)(() => {
276
329
  if (!isFlexLayout) return {};
277
- if (columnLayout === "scroll") return {
278
- flex: 0,
279
- flexShrink: 0,
280
- flexGrow: 0,
281
- minWidth: 80
282
- };
283
- if (enableColumnResizing) return {
284
- flex: 0,
285
- flexShrink: 0,
286
- flexGrow: 0
287
- };
330
+ if (columnLayout === "scroll") {
331
+ return {
332
+ flexGrow: 0,
333
+ flexShrink: 0,
334
+ flexBasis: "auto",
335
+ minWidth: 80
336
+ };
337
+ }
338
+ if (enableColumnResizing) {
339
+ return {
340
+ flexGrow: 0,
341
+ flexShrink: 0,
342
+ flexBasis: "auto"
343
+ };
344
+ }
288
345
  return {
289
346
  flex: 1,
290
347
  flexShrink: 1,
@@ -293,14 +350,21 @@ function DataTableRoot({
293
350
  minWidth: 0
294
351
  };
295
352
  }, [isFlexLayout, columnLayout, enableColumnResizing]);
296
- const pinning = (0, import_react2.useMemo)(() => enableColumnPinning ? (0, import_DataTableColumnPinning.DataTableColumnPinning)({
353
+ const cardFilterColumns = (0, import_react2.useMemo)(() => columns.filter(col => col.enableColumnFilter !== false).map(col => ({
354
+ id: col.id || col.accessorKey || "",
355
+ label: typeof col.header === "string" ? col.header : col.id || col.accessorKey || "",
356
+ type: (0, import_filterFields.mapFieldToFilterType)(col.field)
357
+ })).filter(col => col.id), [columns]);
358
+ const pinningHelpers = (0, import_DataTableColumnPinning.DataTableColumnPinning)({
297
359
  table,
298
360
  maxPinnedColumns,
299
- allowPinning: true
300
- }) : null, [enableColumnPinning, table, maxPinnedColumns]);
361
+ allowPinning: true,
362
+ disabled
363
+ });
364
+ const pinning = enableColumnPinning ? pinningHelpers : null;
301
365
  const keyboardNav = (0, import_useDataTableKeyboard.useDataTableKeyboard)({
302
366
  table,
303
- enabled: enableKeyboardNavigation,
367
+ enabled: enableKeyboardNavigation && !disabled,
304
368
  viewportHeight: virtualizationHeight ?? 400,
305
369
  onScrollToRow: isVirtualized ? idx => virtualizer.scrollToIndex(idx, {
306
370
  align: "auto"
@@ -310,8 +374,9 @@ function DataTableRoot({
310
374
  } : void 0
311
375
  });
312
376
  const handleCellChange = (0, import_react2.useCallback)(async (rowIndex, columnId, newValue) => {
313
- if (readOnly) return;
377
+ if (readOnly || disabled) return;
314
378
  const previousValue = data[rowIndex]?.[columnId];
379
+ if (Object.is(previousValue, newValue)) return;
315
380
  if (onCellChange) {
316
381
  const result = await onCellChange(rowIndex, columnId, newValue, previousValue);
317
382
  if (result === false) return;
@@ -324,9 +389,9 @@ function DataTableRoot({
324
389
  };
325
390
  onDataChange(newData);
326
391
  }
327
- }, [readOnly, data, onCellChange, isFormMode, onDataChange]);
392
+ }, [readOnly, disabled, data, onCellChange, isFormMode, onDataChange]);
328
393
  const handleAddRow = (0, import_react2.useCallback)(() => {
329
- if (readOnly || maxRows && data.length >= maxRows) return;
394
+ if (readOnly || disabled || maxRows && data.length >= maxRows) return;
330
395
  const newRow = {
331
396
  ...defaultRow,
332
397
  idx: data.length + 1
@@ -334,13 +399,13 @@ function DataTableRoot({
334
399
  if (!isFormMode && onDataChange) {
335
400
  onDataChange([...data, newRow]);
336
401
  }
337
- }, [readOnly, maxRows, data, defaultRow, isFormMode, onDataChange]);
402
+ }, [readOnly, disabled, maxRows, data, defaultRow, isFormMode, onDataChange]);
338
403
  const handleDeleteRow = (0, import_react2.useCallback)(rowIndex => {
339
- if (readOnly || data.length <= minRows) return;
404
+ if (readOnly || disabled || data.length <= minRows) return;
340
405
  if (!isFormMode && onDataChange) {
341
406
  onDataChange(data.filter((_, idx) => idx !== rowIndex));
342
407
  }
343
- }, [readOnly, minRows, data, isFormMode, onDataChange]);
408
+ }, [readOnly, disabled, minRows, data, isFormMode, onDataChange]);
344
409
  const isCompact = resolvedSize === "sm" || compact;
345
410
  const renderCellContent = (0, import_react2.useCallback)((cell, rowIndex, rowData) => {
346
411
  const columnDef = cell.column.columnDef;
@@ -365,7 +430,9 @@ function DataTableRoot({
365
430
  fieldProps: columnDef.fieldProps,
366
431
  onChange: newValue => handleCellChange(rowIndex, columnId, newValue),
367
432
  readOnly,
433
+ disabled,
368
434
  columnId,
435
+ columnLabel: typeof columnDef.header === "string" ? columnDef.header : void 0,
369
436
  rowIndex,
370
437
  rowData,
371
438
  size: knobProps.sizeToken,
@@ -373,9 +440,9 @@ function DataTableRoot({
373
440
  linkedValue,
374
441
  onLinkedChange
375
442
  });
376
- }, [handleCellChange, readOnly, knobProps.sizeToken, isCompact]);
443
+ }, [handleCellChange, readOnly, disabled, knobProps.sizeToken, isCompact]);
377
444
  const isSSR = typeof window === "undefined";
378
- const extraColumnsBefore = (showRowNumbers ? 1 : 0) + (enableRowExpansion ? 1 : 0);
445
+ const extraColumnsBefore = (enableRowSelection ? 1 : 0) + (showRowNumbers ? 1 : 0) + (enableRowExpansion ? 1 : 0);
379
446
  const extraColumnsAfter = showDeleteRow && !readOnly ? 1 : 0;
380
447
  const getStickyStyle = (0, import_react2.useCallback)(columnId => {
381
448
  if (!enableColumnPinning || !pinning) return void 0;
@@ -393,11 +460,12 @@ function DataTableRoot({
393
460
  const col = table.getColumn(leftPinned[i]);
394
461
  if (col) leftOffset += col.getSize();
395
462
  }
463
+ if (enableRowSelection) leftOffset += SELECTION_COL_WIDTH;
396
464
  if (enableRowExpansion) leftOffset += 32;
397
465
  if (showRowNumbers) leftOffset += 50;
398
466
  return {
399
467
  position: "sticky",
400
- left: leftOffset,
468
+ insetInlineStart: leftOffset,
401
469
  zIndex: 2,
402
470
  backgroundColor: "$color2"
403
471
  };
@@ -411,29 +479,64 @@ function DataTableRoot({
411
479
  if (showDeleteRow && !readOnly) rightOffset += 60;
412
480
  return {
413
481
  position: "sticky",
414
- right: rightOffset,
482
+ insetInlineEnd: rightOffset,
415
483
  zIndex: 2,
416
484
  backgroundColor: "$color2"
417
485
  };
418
486
  }
419
487
  return void 0;
420
- }, [enableColumnPinning, pinning, table, enableRowExpansion, showRowNumbers, showDeleteRow, readOnly]);
421
- const renderRowContent = (0, import_react2.useCallback)((row, rowIndex, _isLastRow) => {
488
+ }, [enableColumnPinning, pinning, table, enableRowSelection, enableRowExpansion, showRowNumbers, showDeleteRow, readOnly]);
489
+ const renderRowContent = (0, import_react2.useCallback)(
490
+ // `cellElement="div"` is the virtualized escape hatch: virtual rows are
491
+ // absolutely-positioned <div role="row"> hosts, and a real <td> is not a
492
+ // valid <div> child (React validateDOMNesting + SSR reparenting). The
493
+ // div cells keep role="cell" from the primitive, preserving the
494
+ // roles-based grid semantics.
495
+ (row, rowIndex, _isLastRow, cellElement) => {
422
496
  const rowData = row.original;
497
+ const cellRenderProps = cellElement ? {
498
+ render: cellElement
499
+ } : {};
423
500
  return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
424
- children: [showRowNumbers && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Cell, {
425
- cellWidth: 50,
501
+ children: [enableRowSelection && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Cell, {
502
+ ...cellRenderProps,
503
+ cellWidth: SELECTION_COL_WIDTH,
426
504
  cellHeight,
427
505
  cellLocation: "first",
506
+ justifyContent: "center",
507
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Checkbox, {
508
+ checked: row.getIsSelected(),
509
+ onChange: checked => {
510
+ if (disabled) return;
511
+ row.toggleSelected(!!checked);
512
+ },
513
+ disabled,
514
+ checkboxProps: {
515
+ // 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
+ })
522
+ },
523
+ compact: isCompact
524
+ })
525
+ }), showRowNumbers && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Cell, {
526
+ ...cellRenderProps,
527
+ cellWidth: 50,
528
+ cellHeight,
529
+ cellLocation: enableRowSelection ? "middle" : "first",
428
530
  children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
429
531
  fontSize: knobProps.sizeToken,
430
532
  color: "$color10",
431
533
  children: rowIndex + 1
432
534
  })
433
535
  }), enableRowExpansion && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Cell, {
536
+ ...cellRenderProps,
434
537
  cellWidth: 32 + row.depth * 20,
435
538
  cellHeight,
436
- cellLocation: showRowNumbers ? "middle" : "first",
539
+ cellLocation: enableRowSelection || showRowNumbers ? "middle" : "first",
437
540
  paddingLeft: 0,
438
541
  paddingRight: 0,
439
542
  children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.View, {
@@ -467,19 +570,31 @@ function DataTableRoot({
467
570
  })]
468
571
  }, i))
469
572
  }), row.getCanExpand() ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
470
- onPress: () => row.toggleExpanded(),
471
- cursor: "pointer",
573
+ onPress: () => {
574
+ if (disabled) return;
575
+ row.toggleExpanded();
576
+ },
577
+ cursor: disabled ? "not-allowed" : "pointer",
578
+ "aria-disabled": disabled || void 0,
472
579
  padding: "$1",
473
580
  "aria-expanded": row.getIsExpanded(),
474
- "aria-label": row.getIsExpanded() ? "Collapse row" : "Expand row",
581
+ "aria-label": row.getIsExpanded() ? (0, import_withInterp.withInterp)(t("Collapse row {{row}}", {
582
+ row: rowIndex + 1
583
+ }), {
584
+ row: rowIndex + 1
585
+ }) : (0, import_withInterp.withInterp)(t("Expand row {{row}}", {
586
+ row: rowIndex + 1
587
+ }), {
588
+ row: rowIndex + 1
589
+ }),
475
590
  hoverStyle: {
476
591
  backgroundColor: "$color4"
477
592
  },
478
593
  borderRadius: "$2",
479
- children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react.CaretRightIcon, {
594
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(ExpandCaretIcon, {
480
595
  size: 14,
481
596
  style: {
482
- transform: row.getIsExpanded() ? "rotate(90deg)" : "none",
597
+ transform: row.getIsExpanded() ? expandedCaretRotation : "none",
483
598
  transition: "transform 0.15s ease"
484
599
  }
485
600
  })
@@ -488,23 +603,33 @@ function DataTableRoot({
488
603
  })]
489
604
  })
490
605
  }), row.getVisibleCells().map((cell, cellIndex) => {
491
- const isFirstDataCell = cellIndex === 0 && !showRowNumbers && !enableRowExpansion;
606
+ const isFirstDataCell = cellIndex === 0 && !enableRowSelection && !showRowNumbers && !enableRowExpansion;
492
607
  const isLastDataCell = cellIndex === row.getVisibleCells().length - 1 && !showDeleteRow;
493
608
  const cellLocation = isFirstDataCell ? "first" : isLastDataCell ? "last" : "middle";
494
609
  const stickyStyle = getStickyStyle(cell.column.id);
610
+ const columnAlign = resolveColumnAlign({
611
+ ...cell.column.columnDef,
612
+ id: cell.column.id
613
+ });
495
614
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Cell, {
615
+ ...cellRenderProps,
496
616
  ...cellFlexProps,
497
617
  ...getColSizeProps(cell.column),
498
618
  cellHeight,
499
619
  cellLocation,
620
+ justifyContent: (0, import_columnAlign.alignToFlex)(columnAlign),
621
+ "data-align": columnAlign,
622
+ ...(clipBodyCells ? {
623
+ overflow: "hidden"
624
+ } : {}),
500
625
  ...(import_tamagui.isWeb && stickyStyle ? {
501
626
  style: {
502
627
  position: "sticky",
503
- ...("left" in stickyStyle && {
504
- left: stickyStyle.left
628
+ ...("insetInlineStart" in stickyStyle && {
629
+ insetInlineStart: stickyStyle.insetInlineStart
505
630
  }),
506
- ...("right" in stickyStyle && {
507
- right: stickyStyle.right
631
+ ...("insetInlineEnd" in stickyStyle && {
632
+ insetInlineEnd: stickyStyle.insetInlineEnd
508
633
  }),
509
634
  zIndex: 2,
510
635
  backgroundColor: "var(--color2)"
@@ -513,6 +638,7 @@ function DataTableRoot({
513
638
  children: renderCellContent(cell, rowIndex, rowData)
514
639
  }, cell.id);
515
640
  }), showDeleteRow && !readOnly && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Cell, {
641
+ ...cellRenderProps,
516
642
  cellWidth: 60,
517
643
  cellHeight,
518
644
  cellLocation: "last",
@@ -521,19 +647,30 @@ function DataTableRoot({
521
647
  chromeless: true,
522
648
  circular: true,
523
649
  icon: import_react.TrashIcon,
524
- disabled: data.length <= minRows,
650
+ disabled: disabled || data.length <= minRows,
525
651
  onPress: () => handleDeleteRow(rowIndex),
526
- "aria-label": t("Delete row")
652
+ "aria-label": (0, import_withInterp.withInterp)(t("Delete row {{row}}", {
653
+ row: rowIndex + 1
654
+ }), {
655
+ row: rowIndex + 1
656
+ })
527
657
  })
528
658
  })]
529
659
  });
530
- }, [showRowNumbers, enableRowExpansion, showDeleteRow, readOnly, cellHeight, knobProps.sizeToken, cellFlexProps, getColSizeProps, getStickyStyle, renderCellContent, handleDeleteRow, data.length, minRows, t]);
660
+ }, [enableRowSelection, showRowNumbers, enableRowExpansion, showDeleteRow, readOnly, disabled, cellHeight, knobProps.sizeToken, cellFlexProps, getColSizeProps, getStickyStyle, renderCellContent, handleDeleteRow, data.length, minRows, isCompact, t, ExpandCaretIcon, expandedCaretRotation, clipBodyCells]);
661
+ const [filterEditTarget, setFilterEditTarget] = (0, import_react2.useState)(null);
662
+ const filterUi = (0, import_react2.useMemo)(() => ({
663
+ editTarget: filterEditTarget,
664
+ requestEdit: setFilterEditTarget
665
+ }), [filterEditTarget]);
531
666
  const stateContextValue = (0, import_react2.useMemo)(() => ({
532
667
  table,
533
668
  state,
534
669
  actions,
535
- computed
536
- }), [table, state, actions, computed]);
670
+ computed,
671
+ selectAllScope,
672
+ filterUi
673
+ }), [table, state, actions, computed, selectAllScope, filterUi]);
537
674
  const renderToolbarComponent = () => {
538
675
  const activeFilterCount = table.getState().columnFilters?.length || 0;
539
676
  if (renderToolbar) {
@@ -566,24 +703,66 @@ function DataTableRoot({
566
703
  });
567
704
  };
568
705
  const renderPaginationComponent = () => {
706
+ const resolvedPageSizeOptions = pageSizeOptions ?? [10, 20, 50, 100];
569
707
  if (renderPagination) {
570
708
  return renderPagination({
571
709
  pagination: state.pagination,
572
710
  onPaginationChange: actions.setPagination,
573
- pageSizeOptions: [10, 20, 50, 100]
711
+ pageSizeOptions: resolvedPageSizeOptions
574
712
  });
575
713
  }
576
714
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_DataTablePagination.DataTablePagination, {
577
715
  pagination: state.pagination,
578
716
  onPaginationChange: actions.setPagination,
579
- pageSizeOptions: [10, 20, 50, 100],
717
+ pageSizeOptions: resolvedPageSizeOptions,
580
718
  compact: true
581
719
  });
582
720
  };
583
721
  const renderInner = (tableData, effectiveHandleAddRow, effectiveHandleDeleteRow, _effectiveHandleCellChange) => {
584
722
  const hasToolbar = enableGlobalSearch || enableFiltering || enableViews;
585
723
  const scrollContainerRef = (0, import_react2.useRef)(null);
586
- (0, import_useDragScroll.useDragScroll)(scrollContainerRef, columnLayout === "scroll" && import_tamagui.isWeb && !isSSR);
724
+ const tableBodyRef = (0, import_react2.useRef)(null);
725
+ const [bodyClipped, setBodyClipped] = (0, import_react2.useState)(false);
726
+ (0, import_react2.useEffect)(() => {
727
+ if (!import_tamagui.isWeb || isSSR || showCards) return;
728
+ const el = tableBodyRef.current;
729
+ if (!el) return;
730
+ const update = () => {
731
+ setBodyClipped(el.scrollHeight - (el.scrollTop + el.clientHeight) > 1);
732
+ };
733
+ update();
734
+ el.addEventListener("scroll", update, {
735
+ passive: true
736
+ });
737
+ const ro = typeof ResizeObserver !== "undefined" ? new ResizeObserver(update) : null;
738
+ ro?.observe(el);
739
+ return () => {
740
+ el.removeEventListener("scroll", update);
741
+ ro?.disconnect();
742
+ };
743
+ }, [tableRows.length, showCards]);
744
+ (0, import_useDragScroll.useDragScroll)(scrollContainerRef, hScroll && !isSSR);
745
+ const rangeTotal = state.pagination.totalCount ?? 0;
746
+ const rangeStart = rangeTotal === 0 ? 0 : state.pagination.pageIndex * state.pagination.pageSize + 1;
747
+ const rangeEnd = Math.min((state.pagination.pageIndex + 1) * state.pagination.pageSize, rangeTotal);
748
+ const resolvedAriaLabel = ariaLabel || t("Data table");
749
+ if (state.error) {
750
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.AsyncBoundary, {
751
+ error: state.error,
752
+ onRetry,
753
+ layout: "table",
754
+ errorTitle: t("Couldn't load table"),
755
+ compact: true,
756
+ "aria-label": resolvedAriaLabel
757
+ });
758
+ }
759
+ if ((state.isLoading || infinite?.isInitialLoading) && tableRows.length === 0) {
760
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.AsyncBoundary, {
761
+ loading: true,
762
+ layout: "table",
763
+ "aria-label": resolvedAriaLabel
764
+ });
765
+ }
587
766
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_DataTableContext.DataTableContext.Provider, {
588
767
  size: resolvedSize,
589
768
  compact: isCompact,
@@ -593,26 +772,70 @@ function DataTableRoot({
593
772
  flexDirection: "column",
594
773
  gap: 0,
595
774
  width: "100%",
596
- flex: 1,
775
+ flexGrow: 1,
776
+ flexShrink: 1,
777
+ flexBasis: "auto",
597
778
  minHeight: 0,
598
779
  ...(import_tamagui.isWeb && className ? {
599
780
  className
600
781
  } : {}),
601
- "aria-label": ariaLabel || "Data table",
782
+ "aria-label": resolvedAriaLabel,
602
783
  "aria-describedby": ariaDescribedBy,
603
784
  "aria-live": "polite",
604
785
  "aria-atomic": "false",
786
+ "aria-disabled": disabled || void 0,
787
+ ...(disabled ? {
788
+ ...disabledState.assemblyKnobProps,
789
+ cursor: "not-allowed",
790
+ ...(import_tamagui.isWeb ? {
791
+ inert: true
792
+ } : {
793
+ pointerEvents: "none"
794
+ })
795
+ } : {}),
605
796
  ...props,
606
- children: [hasToolbar && renderToolbarComponent(), children, sm === false ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_DataTableMobileCards.DataTableMobileCards, {
607
- tableRows,
608
- showRowNumbers,
609
- showDeleteRow,
610
- readOnly,
611
- dataLength: tableData.length,
612
- minRows,
613
- hasActiveFilters: computed.hasActiveFilters,
614
- renderCellContent,
615
- onDeleteRow: effectiveHandleDeleteRow
797
+ children: [hasToolbar && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
798
+ width: "100%",
799
+ ...(disabled ? disabledState.chromeKnobProps : {}),
800
+ children: renderToolbarComponent()
801
+ }), enableFiltering && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
802
+ width: "100%",
803
+ ...(disabled ? disabledState.chromeKnobProps : {}),
804
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_DataTableFilterChips.DataTableFilterChips, {})
805
+ }), enableRowSelection && bulkBarPlacement === "top" ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
806
+ width: "100%",
807
+ ...(disabled ? disabledState.chromeKnobProps : {}),
808
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_DataTableBulkActions.DataTableBulkActions, {
809
+ actions: resolvedBulkActions,
810
+ maxVisibleActions: 5,
811
+ showSelectionCount: true,
812
+ placement: "top"
813
+ })
814
+ }) : null, children, showCards ? /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
815
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_DataTableCardControls.DataTableCardControls, {
816
+ table,
817
+ enableSorting,
818
+ enableFiltering,
819
+ availableColumns: cardFilterColumns,
820
+ compact: isCompact,
821
+ disabled
822
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_DataTableMobileCards.DataTableMobileCards, {
823
+ tableRows,
824
+ enableRowSelection,
825
+ showRowNumbers,
826
+ showDeleteRow,
827
+ readOnly,
828
+ disabled,
829
+ dataLength: tableData.length,
830
+ minRows,
831
+ hasActiveFilters: computed.hasActiveFilters,
832
+ renderCellContent,
833
+ onDeleteRow: effectiveHandleDeleteRow,
834
+ selectAllChecked,
835
+ selectAllIndeterminate,
836
+ onToggleSelectAll: toggleSelectAll,
837
+ compact: isCompact
838
+ })]
616
839
  }) : (/* Table View */
617
840
  /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
618
841
  ref: node => {
@@ -625,9 +848,18 @@ function DataTableRoot({
625
848
  },
626
849
  flexDirection: "column",
627
850
  width: "100%",
628
- flex: 1,
851
+ flexGrow: 1,
852
+ flexShrink: 1,
853
+ flexBasis: "auto",
629
854
  minHeight: 0,
630
- "aria-label": `${ariaLabel || "Data table"} content`,
855
+ ...(hScroll ? {
856
+ overflowX: "auto"
857
+ } : {}),
858
+ "aria-label": (0, import_withInterp.withInterp)(t("{{label}} content", {
859
+ label: resolvedAriaLabel
860
+ }), {
861
+ label: resolvedAriaLabel
862
+ }),
631
863
  tabIndex: enableKeyboardNavigation && !isSSR ? 0 : void 0,
632
864
  onKeyDown: enableKeyboardNavigation && !isSSR ? keyboardNav.handleKeyDown : void 0,
633
865
  onPress: enableKeyboardNavigation && !isSSR ? keyboardNav.handleContainerClick : void 0,
@@ -648,20 +880,21 @@ function DataTableRoot({
648
880
  borderBottomLeftRadius: knobProps.borderRadius.borderRadius,
649
881
  borderBottomRightRadius: knobProps.borderRadius.borderRadius,
650
882
  marginBottom: 0,
651
- "aria-label": ariaLabel || "Data table",
883
+ "aria-label": resolvedAriaLabel,
652
884
  "aria-rowcount": computed.totalPages * state.pagination.pageSize,
653
885
  "aria-colcount": table.getVisibleLeafColumns().length + extraColumnsBefore + extraColumnsAfter,
654
886
  width: "100%",
655
- ...(columnLayout === "scroll" && import_tamagui.isWeb ? {
656
- overflowX: "auto",
887
+ ...(hScroll ? {
657
888
  style: {
658
- minWidth: "max-content",
659
- width: "max-content"
889
+ minWidth: "max-content"
660
890
  }
661
891
  } : {}),
892
+ ...(hScroll && enableColumnPinning ? {
893
+ overflow: "visible"
894
+ } : {}),
662
895
  children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Head, {
663
896
  zIndex: "$1",
664
- "aria-label": "Table headers",
897
+ "aria-label": t("Table headers"),
665
898
  children: headerGroups.map(headerGroup => {
666
899
  rowCounter.current++;
667
900
  return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_table_primitives.Table.Row, {
@@ -675,10 +908,29 @@ function DataTableRoot({
675
908
  borderBottomRightRadius: "$0",
676
909
  "aria-rowindex": rowCounter.current
677
910
  },
678
- children: [showRowNumbers && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.HeaderCell, {
679
- cellWidth: 50,
911
+ children: [enableRowSelection && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.HeaderCell, {
912
+ cellWidth: SELECTION_COL_WIDTH,
680
913
  cellHeight,
681
914
  cellLocation: "first",
915
+ justifyContent: "center",
916
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Checkbox, {
917
+ checked: selectAllIndeterminate ? "indeterminate" : selectAllChecked,
918
+ disabled,
919
+ onChange: checked => {
920
+ if (disabled || checked === "indeterminate") return;
921
+ const shouldSelect = checked === true;
922
+ const isAll = selectAllScope === "filtered" ? table.getIsAllRowsSelected() : table.getIsAllPageRowsSelected();
923
+ if (shouldSelect !== isAll) toggleSelectAll();
924
+ },
925
+ checkboxProps: {
926
+ "aria-label": selectAllScope === "filtered" ? t("Select all matching rows") : t("Select all rows on page")
927
+ },
928
+ compact: isCompact
929
+ })
930
+ }), showRowNumbers && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.HeaderCell, {
931
+ cellWidth: 50,
932
+ cellHeight,
933
+ cellLocation: enableRowSelection ? "middle" : "first",
682
934
  children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
683
935
  fontSize: "$4",
684
936
  fontWeight: "600",
@@ -687,7 +939,7 @@ function DataTableRoot({
687
939
  }), enableRowExpansion && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.HeaderCell, {
688
940
  cellWidth: 32,
689
941
  cellHeight,
690
- cellLocation: showRowNumbers ? "middle" : "first",
942
+ cellLocation: enableRowSelection || showRowNumbers ? "middle" : "first",
691
943
  children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
692
944
  width: 14
693
945
  })
@@ -700,19 +952,38 @@ function DataTableRoot({
700
952
  const colMinSize = header.column.columnDef.minSize ?? 0;
701
953
  const colMaxSize = header.column.columnDef.maxSize ?? Number.MAX_SAFE_INTEGER;
702
954
  const stickyStyle = getStickyStyle(header.column.id);
703
- const columnField = getColumnField(header.column.columnDef);
704
- const isNumeric = isNumericField(columnField);
705
- const isFirstHeaderCell = headerIndex === 0 && !showRowNumbers && !enableRowExpansion;
955
+ const columnDef = header.column.columnDef;
956
+ const columnAlign = resolveColumnAlign({
957
+ ...columnDef,
958
+ id: header.column.id
959
+ });
960
+ const headerJustify = (0, import_columnAlign.alignToFlex)(columnAlign);
961
+ const isRightAligned = columnAlign === "right";
962
+ const isFirstHeaderCell = headerIndex === 0 && !enableRowSelection && !showRowNumbers && !enableRowExpansion;
706
963
  const isLastHeaderCell = headerIndex === headerGroup.headers.length - 1 && !(showDeleteRow && !readOnly);
707
964
  const headerCellLocation = isFirstHeaderCell ? "first" : isLastHeaderCell ? "last" : "middle";
708
965
  return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_table_primitives.Table.HeaderCell, {
709
966
  id: `${header.column.id}-header`,
710
- onPress: isSortableHeader ? header.column.getToggleSortingHandler() : void 0,
711
- cursor: isSortableHeader ? "pointer" : "default",
967
+ onPress: isSortableHeader && !disabled ? header.column.getToggleSortingHandler() : void 0,
968
+ ...(isSortableHeader && !disabled && import_tamagui.isWeb ? {
969
+ tabIndex: 0,
970
+ onKeyDown: e => {
971
+ if (e.key === "Enter" || e.key === " " || e.key === "Spacebar") {
972
+ e.preventDefault();
973
+ header.column.getToggleSortingHandler()?.(e);
974
+ }
975
+ },
976
+ focusVisibleStyle: (0, import_theme.ensureFocusVisibleRing)({
977
+ outlineOffset: -2
978
+ })
979
+ } : {}),
980
+ cursor: disabled ? "not-allowed" : isSortableHeader ? "pointer" : "default",
712
981
  position: "relative",
713
982
  cellLocation: headerCellLocation,
983
+ justifyContent: headerJustify,
984
+ "data-align": columnAlign,
714
985
  "aria-sort": isSortableHeader ? sortDirection === "asc" ? "ascending" : sortDirection === "desc" ? "descending" : "none" : void 0,
715
- ...(dnd ? {
986
+ ...(dnd && !disabled ? {
716
987
  draggable: true,
717
988
  onDragStart: e => dnd.onDragStart(e, header.column.id),
718
989
  onDragOver: dnd.onDragOver,
@@ -723,11 +994,11 @@ function DataTableRoot({
723
994
  ...(import_tamagui.isWeb && stickyStyle ? {
724
995
  style: {
725
996
  position: "sticky",
726
- ...("left" in stickyStyle && {
727
- left: stickyStyle.left
997
+ ...("insetInlineStart" in stickyStyle && {
998
+ insetInlineStart: stickyStyle.insetInlineStart
728
999
  }),
729
- ...("right" in stickyStyle && {
730
- right: stickyStyle.right
1000
+ ...("insetInlineEnd" in stickyStyle && {
1001
+ insetInlineEnd: stickyStyle.insetInlineEnd
731
1002
  }),
732
1003
  zIndex: 2,
733
1004
  backgroundColor: "var(--color2)"
@@ -737,14 +1008,14 @@ function DataTableRoot({
737
1008
  flexDirection: "row",
738
1009
  gap: "$2",
739
1010
  alignItems: "center",
740
- justifyContent: isNumeric ? "flex-end" : "space-between",
1011
+ justifyContent: isRightAligned ? "flex-end" : "space-between",
741
1012
  flex: 1,
742
1013
  children: [/* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.View, {
743
1014
  flexDirection: "row",
744
1015
  gap: "$2",
745
1016
  alignItems: "center",
746
- flex: isNumeric ? void 0 : 1,
747
- justifyContent: isNumeric ? "flex-end" : void 0,
1017
+ flex: isRightAligned ? void 0 : 1,
1018
+ justifyContent: isRightAligned ? "flex-end" : void 0,
748
1019
  children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
749
1020
  fontSize: "$4",
750
1021
  userSelect: "none",
@@ -776,19 +1047,18 @@ function DataTableRoot({
776
1047
  children: [enableFiltering && header.column.getCanFilter() && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ColumnHeaderFilter.ColumnHeaderFilter, {
777
1048
  columnId: header.column.id,
778
1049
  columnLabel: typeof header.column.columnDef.header === "string" ? header.column.columnDef.header : header.column.id,
779
- columnType: mapFieldToFilterType(getColumnField(header.column.columnDef)),
1050
+ columnType: (0, import_filterFields.mapFieldToFilterType)(getColumnField(header.column.columnDef)),
780
1051
  filterValue: header.column.getFilterValue(),
781
1052
  onFilterChange: value => header.column.setFilterValue(value),
782
1053
  isFiltered: header.column.getIsFiltered(),
783
1054
  options: header.column.columnDef.fieldProps?.options
784
- }), pinning && enableColumnPinning && /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
785
- children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(pinning.PinButton, {
786
- columnId: header.column.id,
787
- position: "left"
788
- }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(pinning.PinButton, {
789
- columnId: header.column.id,
790
- position: "right"
791
- })]
1055
+ }), pinning && enableColumnPinning &&
1056
+ /* One compact cycle control per header
1057
+ (left → right → unpin) — two full
1058
+ buttons crowded the header (owner). */
1059
+ /* @__PURE__ */
1060
+ (0, import_jsx_runtime.jsx)(pinning.PinButton, {
1061
+ columnId: header.column.id
792
1062
  })]
793
1063
  })]
794
1064
  }), canResize && resizeHandler && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
@@ -804,7 +1074,11 @@ function DataTableRoot({
804
1074
  "aria-valuenow": colSize,
805
1075
  "aria-valuemin": colMinSize,
806
1076
  "aria-valuemax": colMaxSize,
807
- "aria-label": `Resize ${header.column.columnDef.header || header.column.id} column`,
1077
+ "aria-label": (0, import_withInterp.withInterp)(t("Resize {{column}} column", {
1078
+ column: header.column.columnDef.header || header.column.id
1079
+ }), {
1080
+ column: header.column.columnDef.header || header.column.id
1081
+ }),
808
1082
  style: {
809
1083
  touchAction: "none"
810
1084
  },
@@ -818,28 +1092,35 @@ function DataTableRoot({
818
1092
  })]
819
1093
  }, headerGroup.id);
820
1094
  })
821
- }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Body, {
822
- "aria-label": "Table data",
823
- children: tableRows.length === 0 ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Row, {
1095
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_table_primitives.Table.Body, {
1096
+ role: isVirtualized ? "presentation" : "rowgroup",
1097
+ "aria-label": isVirtualized ? void 0 : t("Table data"),
1098
+ ...(hScroll && enableColumnPinning ? {
1099
+ overflowY: "visible",
1100
+ overflowX: "visible"
1101
+ } : {}),
1102
+ ref: node => {
1103
+ tableBodyRef.current = node ?? null;
1104
+ },
1105
+ children: [tableRows.length === 0 ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Row, {
824
1106
  children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Cell, {
825
- children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
826
- padding: "$8",
827
- alignItems: "center",
828
- justifyContent: "center",
1107
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.EmptyState, {
1108
+ compact: true,
829
1109
  "aria-live": "polite",
830
- children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
831
- color: "$color10",
832
- fontSize: "$4",
833
- children: computed.hasActiveFilters ? t("No results found") : t("No data available")
834
- })
1110
+ title: computed.hasActiveFilters ? t("No results found") : t("No data available")
835
1111
  })
836
1112
  })
837
1113
  }) : isVirtualized ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Row, {
1114
+ role: "presentation",
838
1115
  children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Cell, {
1116
+ role: "presentation",
839
1117
  padding: 0,
1118
+ cellWidth: "auto",
840
1119
  style: {
841
1120
  display: "block",
842
- overflow: "hidden"
1121
+ overflow: "hidden",
1122
+ width: "100%",
1123
+ minWidth: 0
843
1124
  },
844
1125
  ...{
845
1126
  colSpan: table.getVisibleLeafColumns().length + extraColumnsBefore + extraColumnsAfter
@@ -861,7 +1142,8 @@ function DataTableRoot({
861
1142
  renderRowContent,
862
1143
  extraColumnsBefore,
863
1144
  extraColumnsAfter,
864
- table
1145
+ table,
1146
+ hasInfiniteTail
865
1147
  })
866
1148
  })
867
1149
  }) : /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
@@ -883,9 +1165,20 @@ function DataTableRoot({
883
1165
  flexDirection: "row",
884
1166
  alignItems: "center",
885
1167
  gap: "$2",
886
- paddingLeft: indent,
1168
+ paddingInlineStart: indent,
887
1169
  cursor: "pointer",
888
1170
  onPress: () => row.toggleExpanded(),
1171
+ role: "button",
1172
+ tabIndex: 0,
1173
+ "aria-expanded": row.getIsExpanded(),
1174
+ ...{
1175
+ onKeyDown: e => {
1176
+ if (e.key === "Enter" || e.key === " ") {
1177
+ e.preventDefault();
1178
+ row.toggleExpanded();
1179
+ }
1180
+ }
1181
+ },
889
1182
  children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
890
1183
  fontFamily: "$mono",
891
1184
  fontSize: "$3",
@@ -903,7 +1196,7 @@ function DataTableRoot({
903
1196
  }, row.id);
904
1197
  }
905
1198
  const mainRow = /* @__PURE__ */(0, import_react3.createElement)(import_table_primitives.Table.Row, {
906
- backgroundColor: enableKeyboardNavigation && keyboardNav.isNavigating && index === keyboardNav.focusedRowIndex ? "$color4" : index % 2 === 0 ? "$color1" : "$color2",
1199
+ backgroundColor: enableKeyboardNavigation && keyboardNav.isNavigating && index === keyboardNav.focusedRowIndex ? "$color4" : tableZebraOn && index % 2 === 1 ? "$color2" : "$color1",
907
1200
  ...{
908
1201
  animation: "quick"
909
1202
  },
@@ -914,8 +1207,15 @@ function DataTableRoot({
914
1207
  rowLocation: rowCounter.current === 0 ? "first" : rowCounter.current === allRowsLength - 1 ? "last" : "middle",
915
1208
  key: `${row.id}-${index}`,
916
1209
  "aria-rowindex": rowCounter.current,
917
- "aria-label": `Row ${index + 1}`,
918
- tabIndex: -1
1210
+ "aria-label": (0, import_withInterp.withInterp)(t("Row {{row}}", {
1211
+ row: index + 1
1212
+ }), {
1213
+ row: index + 1
1214
+ }),
1215
+ tabIndex: -1,
1216
+ ...{
1217
+ "data-table-zebra": tableZebraOn ? index % 2 === 0 ? "even" : "odd" : "off"
1218
+ }
919
1219
  }, renderRowContent(row, index, isLastRow));
920
1220
  const subRow = enableRowExpansion && renderSubComponent && row.getIsExpanded() && !row.subRows?.length ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Row, {
921
1221
  backgroundColor: "$color2",
@@ -937,18 +1237,23 @@ function DataTableRoot({
937
1237
  flexGrow: 1,
938
1238
  flexBasis: 0,
939
1239
  minHeight: 0,
940
- children: [showRowNumbers && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Cell, {
941
- cellWidth: 50,
1240
+ children: [enableRowSelection && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Cell, {
1241
+ cellWidth: SELECTION_COL_WIDTH,
942
1242
  cellLocation: "first",
943
1243
  padding: 0,
944
1244
  minHeight: 0
1245
+ }), showRowNumbers && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Cell, {
1246
+ cellWidth: 50,
1247
+ cellLocation: enableRowSelection ? "middle" : "first",
1248
+ padding: 0,
1249
+ minHeight: 0
945
1250
  }), enableRowExpansion && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Cell, {
946
1251
  cellWidth: 32,
947
- cellLocation: showRowNumbers ? "middle" : "first",
1252
+ cellLocation: enableRowSelection || showRowNumbers ? "middle" : "first",
948
1253
  padding: 0,
949
1254
  minHeight: 0
950
1255
  }), headerGroups[0]?.headers.map((header, headerIndex) => {
951
- const isFirstDataCell = headerIndex === 0 && !showRowNumbers && !enableRowExpansion;
1256
+ const isFirstDataCell = headerIndex === 0 && !enableRowSelection && !showRowNumbers && !enableRowExpansion;
952
1257
  const isLastDataCell = headerIndex === headerGroups[0].headers.length - 1 && !(showDeleteRow && !readOnly);
953
1258
  const cellLoc = isFirstDataCell ? "first" : isLastDataCell ? "last" : "middle";
954
1259
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Cell, {
@@ -965,7 +1270,23 @@ function DataTableRoot({
965
1270
  minHeight: 0
966
1271
  })]
967
1272
  }, "filler-row")]
968
- })
1273
+ }), import_tamagui.isWeb && bodyClipped && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Row, {
1274
+ "aria-hidden": true,
1275
+ role: "presentation",
1276
+ position: "sticky",
1277
+ bottom: 0,
1278
+ height: 28,
1279
+ marginTop: -28,
1280
+ flexShrink: 0,
1281
+ zIndex: 2,
1282
+ pointerEvents: "none",
1283
+ ...{
1284
+ "data-table-clip-affordance": "true"
1285
+ },
1286
+ style: {
1287
+ background: "linear-gradient(to bottom, rgba(0,0,0,0), var(--background))"
1288
+ }
1289
+ })]
969
1290
  }), hasFooter && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Foot, {
970
1291
  children: footerGroups.map(footerGroup => /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Row, {
971
1292
  children: footerGroup.headers.map(header => /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table_primitives.Table.Cell, {
@@ -974,17 +1295,100 @@ function DataTableRoot({
974
1295
  }, footerGroup.id))
975
1296
  })]
976
1297
  })
977
- })), showAddRow && !readOnly && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
1298
+ })), infinite ? /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.View, {
1299
+ flexDirection: "column",
1300
+ width: "100%",
1301
+ children: [!isVirtualized && !infinite.exhausted && import_tamagui.isWeb ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
1302
+ ref: sentinelRef,
1303
+ height: 1,
1304
+ width: "100%",
1305
+ "aria-hidden": true,
1306
+ ...{
1307
+ "data-testid": "infinite-sentinel"
1308
+ }
1309
+ }) : null, !isVirtualized && infinite.isAppending ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
1310
+ flexDirection: "column",
1311
+ width: "100%",
1312
+ ...knobProps.gap,
1313
+ paddingVertical: "$2",
1314
+ "aria-hidden": true,
1315
+ ...{
1316
+ "data-testid": "infinite-append-skeleton"
1317
+ },
1318
+ children: Array.from({
1319
+ length: 3
1320
+ }).map((_, i) => /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Skeleton, {
1321
+ width: "100%",
1322
+ height: rowHeightPx - 8
1323
+ }, i))
1324
+ }) : null, /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
1325
+ role: "status",
1326
+ "aria-live": "polite",
1327
+ textAlign: "center",
1328
+ paddingVertical: "$2",
1329
+ fontSize: knobProps.sizeToken,
1330
+ color: "$color10",
1331
+ ...{
1332
+ "data-testid": "infinite-status"
1333
+ },
1334
+ children: infinite.isAppending ? t("Loading more rows\u2026") : infinite.exhausted ? typeof infinite.totalCount === "number" && infinite.totalCount > 0 ? (0, import_withInterp.bidiIsolate)((0, import_withInterp.withInterp)(t("All {{count}} rows loaded", {
1335
+ count: infinite.totalCount
1336
+ }), {
1337
+ count: infinite.totalCount
1338
+ })) : t("End of results") : typeof infinite.totalCount === "number" ? (0, import_withInterp.bidiIsolate)((0, import_withInterp.withInterp)(t("Showing {{visible}} of {{total}} rows", {
1339
+ visible: tableRows.length,
1340
+ total: infinite.totalCount
1341
+ }), {
1342
+ visible: tableRows.length,
1343
+ total: infinite.totalCount
1344
+ })) : (0, import_withInterp.bidiIsolate)((0, import_withInterp.withInterp)(t("Showing {{visible}} rows", {
1345
+ visible: tableRows.length
1346
+ }), {
1347
+ visible: tableRows.length
1348
+ }))
1349
+ })]
1350
+ }) : null, enableRowSelection && bulkBarPlacement === "bottom" ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
1351
+ width: "100%",
1352
+ ...(disabled ? disabledState.chromeKnobProps : {}),
1353
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_DataTableBulkActions.DataTableBulkActions, {
1354
+ actions: resolvedBulkActions,
1355
+ maxVisibleActions: 5,
1356
+ showSelectionCount: true,
1357
+ placement: "bottom"
1358
+ })
1359
+ }) : null, showAddRow && !readOnly && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
978
1360
  children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
979
1361
  icon: import_react.PlusIcon,
980
- disabled: maxRows !== void 0 && tableData.length >= maxRows,
1362
+ disabled: disabled || maxRows !== void 0 && tableData.length >= maxRows,
981
1363
  onPress: effectiveHandleAddRow,
982
1364
  "aria-label": t("Add Row"),
983
1365
  children: t("Add Row")
984
1366
  })
985
- }), enablePagination && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
1367
+ }), enablePagination && !infinite && /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.View, {
986
1368
  paddingTop: "$3",
987
- children: renderPaginationComponent()
1369
+ flexDirection: "row",
1370
+ alignItems: "center",
1371
+ justifyContent: "space-between",
1372
+ flexWrap: "wrap",
1373
+ ...knobProps.gap,
1374
+ ...(disabled ? disabledState.chromeKnobProps : {}),
1375
+ children: [renderPaginationComponent(), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
1376
+ fontSize: knobProps.sizeToken,
1377
+ color: "$color11",
1378
+ "aria-live": "polite",
1379
+ ...{
1380
+ "data-table-range": "true"
1381
+ },
1382
+ children: (0, import_withInterp.bidiIsolate)((0, import_withInterp.withInterp)(t("{{start}}\u2013{{end}} of {{total}}", {
1383
+ start: rangeStart,
1384
+ end: rangeEnd,
1385
+ total: rangeTotal
1386
+ }), {
1387
+ start: rangeStart,
1388
+ end: rangeEnd,
1389
+ total: rangeTotal
1390
+ }))
1391
+ })]
988
1392
  }), state.isLoading && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
989
1393
  position: "absolute",
990
1394
  top: 0,
@@ -996,9 +1400,9 @@ function DataTableRoot({
996
1400
  zIndex: import_forms.zIndex.loading,
997
1401
  "aria-busy": true,
998
1402
  "aria-live": "assertive",
999
- "aria-label": "Loading table data",
1403
+ "aria-label": t("Loading table data"),
1000
1404
  role: "status",
1001
- children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Spinner, {
1405
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Spinner, {
1002
1406
  size: "large",
1003
1407
  color: "$color10"
1004
1408
  })
@@ -1016,17 +1420,17 @@ function DataTableRoot({
1016
1420
  const formData = field.state.value ?? [];
1017
1421
  const setFormData = next => field.handleChange(next);
1018
1422
  return renderInner(formData, () => {
1019
- if (readOnly || maxRows && formData.length >= maxRows) return;
1423
+ if (readOnly || disabled || maxRows && formData.length >= maxRows) return;
1020
1424
  const newRow = {
1021
1425
  ...defaultRow,
1022
1426
  idx: formData.length + 1
1023
1427
  };
1024
1428
  setFormData([...formData, newRow]);
1025
1429
  }, idx => {
1026
- if (readOnly || formData.length <= minRows) return;
1430
+ if (readOnly || disabled || formData.length <= minRows) return;
1027
1431
  setFormData(formData.filter((_, i) => i !== idx));
1028
1432
  }, async (rowIndex, columnId, newValue) => {
1029
- if (readOnly) return;
1433
+ if (readOnly || disabled) return;
1030
1434
  const previousValue = formData[rowIndex]?.[columnId];
1031
1435
  if (onCellChange) {
1032
1436
  const result = await onCellChange(rowIndex, columnId, newValue, previousValue);