@economic/taco 13.0.0 → 14.0.0-tanstack-virtual-update.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 (645) hide show
  1. package/dist/charts/components/Area/AreaChart.cjs.map +1 -1
  2. package/dist/charts/components/Area/AreaChart.js.map +1 -1
  3. package/dist/charts/components/Bar/BarChart.cjs.map +1 -1
  4. package/dist/charts/components/Bar/BarChart.js.map +1 -1
  5. package/dist/charts/components/Composed/BarLineChart.cjs.map +1 -1
  6. package/dist/charts/components/Composed/BarLineChart.js.map +1 -1
  7. package/dist/charts/components/Donut/DonutChart.cjs +1 -1
  8. package/dist/charts/components/Donut/DonutChart.cjs.map +1 -1
  9. package/dist/charts/components/Donut/DonutChart.js +1 -1
  10. package/dist/charts/components/Donut/DonutChart.js.map +1 -1
  11. package/dist/charts/components/LegacyDonut/ActiveShape.cjs.map +1 -1
  12. package/dist/charts/components/LegacyDonut/ActiveShape.js.map +1 -1
  13. package/dist/charts/components/LegacyDonut/LegacyDonutChart.cjs.map +1 -1
  14. package/dist/charts/components/LegacyDonut/LegacyDonutChart.js.map +1 -1
  15. package/dist/charts/components/LegacyDonut/Legend.cjs.map +1 -1
  16. package/dist/charts/components/LegacyDonut/Legend.js.map +1 -1
  17. package/dist/charts/components/Legend.cjs +3 -3
  18. package/dist/charts/components/Legend.cjs.map +1 -1
  19. package/dist/charts/components/Legend.js +3 -3
  20. package/dist/charts/components/Legend.js.map +1 -1
  21. package/dist/charts/components/Line/LineChart.cjs.map +1 -1
  22. package/dist/charts/components/Line/LineChart.js.map +1 -1
  23. package/dist/charts/components/Pie/PieChart.cjs.map +1 -1
  24. package/dist/charts/components/Pie/PieChart.js.map +1 -1
  25. package/dist/charts/components/useChartData.cjs +1 -1
  26. package/dist/charts/components/useChartData.cjs.map +1 -1
  27. package/dist/charts/components/useChartData.js +1 -1
  28. package/dist/charts/components/useChartData.js.map +1 -1
  29. package/dist/charts/utils/color.cjs.map +1 -1
  30. package/dist/charts/utils/color.js.map +1 -1
  31. package/dist/charts/utils/common.cjs.map +1 -1
  32. package/dist/charts/utils/common.d.ts +1 -1
  33. package/dist/charts/utils/common.js.map +1 -1
  34. package/dist/components/Accordion/Accordion.cjs.map +1 -1
  35. package/dist/components/Accordion/Accordion.js.map +1 -1
  36. package/dist/components/Actions/Button/Button.cjs +2 -2
  37. package/dist/components/Actions/Button/Button.cjs.map +1 -1
  38. package/dist/components/Actions/Button/Button.d.ts +2 -2
  39. package/dist/components/Actions/Button/Button.js +2 -2
  40. package/dist/components/Actions/Button/Button.js.map +1 -1
  41. package/dist/components/Actions/Link/Link.cjs.map +1 -1
  42. package/dist/components/Actions/Link/Link.js.map +1 -1
  43. package/dist/components/Actions/LinkButton/LinkButton.cjs +1 -1
  44. package/dist/components/Actions/LinkButton/LinkButton.cjs.map +1 -1
  45. package/dist/components/Actions/LinkButton/LinkButton.d.ts +2 -2
  46. package/dist/components/Actions/LinkButton/LinkButton.js +1 -1
  47. package/dist/components/Actions/LinkButton/LinkButton.js.map +1 -1
  48. package/dist/components/Alert/Alert.cjs.map +1 -1
  49. package/dist/components/Alert/Alert.js.map +1 -1
  50. package/dist/components/AlertDialog/components/Content.cjs +2 -2
  51. package/dist/components/AlertDialog/components/Content.cjs.map +1 -1
  52. package/dist/components/AlertDialog/components/Content.js +2 -2
  53. package/dist/components/AlertDialog/components/Content.js.map +1 -1
  54. package/dist/components/AlertDialog/components/Trigger.cjs.map +1 -1
  55. package/dist/components/AlertDialog/components/Trigger.js.map +1 -1
  56. package/dist/components/Backdrop/Backdrop.cjs.map +1 -1
  57. package/dist/components/Backdrop/Backdrop.js.map +1 -1
  58. package/dist/components/Badge/Badge.cjs +1 -1
  59. package/dist/components/Badge/Badge.cjs.map +1 -1
  60. package/dist/components/Badge/Badge.js +1 -1
  61. package/dist/components/Badge/Badge.js.map +1 -1
  62. package/dist/components/BadgeIcon/BadgeIcon.cjs.map +1 -1
  63. package/dist/components/BadgeIcon/BadgeIcon.d.ts +1 -1
  64. package/dist/components/BadgeIcon/BadgeIcon.js.map +1 -1
  65. package/dist/components/Banner/Banner.cjs +2 -2
  66. package/dist/components/Banner/Banner.cjs.map +1 -1
  67. package/dist/components/Banner/Banner.js +2 -2
  68. package/dist/components/Banner/Banner.js.map +1 -1
  69. package/dist/components/Banner/util.cjs.map +1 -1
  70. package/dist/components/Banner/util.js.map +1 -1
  71. package/dist/components/Calendar/Calendar.cjs +2 -2
  72. package/dist/components/Calendar/Calendar.cjs.map +1 -1
  73. package/dist/components/Calendar/Calendar.js +2 -2
  74. package/dist/components/Calendar/Calendar.js.map +1 -1
  75. package/dist/components/Card/Card.cjs +2 -2
  76. package/dist/components/Card/Card.cjs.map +1 -1
  77. package/dist/components/Card/Card.d.ts +1 -1
  78. package/dist/components/Card/Card.js +2 -2
  79. package/dist/components/Card/Card.js.map +1 -1
  80. package/dist/components/Checkbox/Checkbox.cjs.map +1 -1
  81. package/dist/components/Checkbox/Checkbox.js.map +1 -1
  82. package/dist/components/Combobox/Combobox.cjs +4 -4
  83. package/dist/components/Combobox/Combobox.cjs.map +1 -1
  84. package/dist/components/Combobox/Combobox.d.ts +1 -2
  85. package/dist/components/Combobox/Combobox.js +4 -4
  86. package/dist/components/Combobox/Combobox.js.map +1 -1
  87. package/dist/components/Combobox/useCombobox.cjs +3 -3
  88. package/dist/components/Combobox/useCombobox.cjs.map +1 -1
  89. package/dist/components/Combobox/useCombobox.d.ts +1 -1
  90. package/dist/components/Combobox/useCombobox.js +3 -3
  91. package/dist/components/Combobox/useCombobox.js.map +1 -1
  92. package/dist/components/Datepicker/Datepicker.cjs +3 -3
  93. package/dist/components/Datepicker/Datepicker.cjs.map +1 -1
  94. package/dist/components/Datepicker/Datepicker.d.ts +1 -2
  95. package/dist/components/Datepicker/Datepicker.js +3 -3
  96. package/dist/components/Datepicker/Datepicker.js.map +1 -1
  97. package/dist/components/Datepicker/useDatepicker.cjs.map +1 -1
  98. package/dist/components/Datepicker/useDatepicker.d.ts +1 -2
  99. package/dist/components/Datepicker/useDatepicker.js.map +1 -1
  100. package/dist/components/Dialog/components/Content.cjs +3 -3
  101. package/dist/components/Dialog/components/Content.cjs.map +1 -1
  102. package/dist/components/Dialog/components/Content.js +3 -3
  103. package/dist/components/Dialog/components/Content.js.map +1 -1
  104. package/dist/components/Dialog/components/Trigger.cjs.map +1 -1
  105. package/dist/components/Dialog/components/Trigger.js.map +1 -1
  106. package/dist/components/Drawer/Drawer.cjs.map +1 -1
  107. package/dist/components/Drawer/Drawer.d.ts +1 -1
  108. package/dist/components/Drawer/Drawer.js.map +1 -1
  109. package/dist/components/Drawer/components/Content.cjs +3 -3
  110. package/dist/components/Drawer/components/Content.cjs.map +1 -1
  111. package/dist/components/Drawer/components/Content.js +3 -3
  112. package/dist/components/Drawer/components/Content.js.map +1 -1
  113. package/dist/components/Field/Field.cjs +1 -1
  114. package/dist/components/Field/Field.cjs.map +1 -1
  115. package/dist/components/Field/Field.js +1 -1
  116. package/dist/components/Field/Field.js.map +1 -1
  117. package/dist/components/Form/Form.cjs.map +1 -1
  118. package/dist/components/Form/Form.d.ts +1 -1
  119. package/dist/components/Form/Form.js.map +1 -1
  120. package/dist/components/Group/Group.cjs.map +1 -1
  121. package/dist/components/Group/Group.d.ts +2 -1
  122. package/dist/components/Group/Group.js.map +1 -1
  123. package/dist/components/Hanger/Hanger.cjs +2 -2
  124. package/dist/components/Hanger/Hanger.cjs.map +1 -1
  125. package/dist/components/Hanger/Hanger.d.ts +1 -1
  126. package/dist/components/Hanger/Hanger.js +2 -2
  127. package/dist/components/Hanger/Hanger.js.map +1 -1
  128. package/dist/components/Header/components/Agreement/Badge.cjs.map +1 -1
  129. package/dist/components/Header/components/Agreement/Badge.js.map +1 -1
  130. package/dist/components/Header/components/Agreement/Display.cjs.map +1 -1
  131. package/dist/components/Header/components/Agreement/Display.js.map +1 -1
  132. package/dist/components/Header/components/Agreement/Item.cjs +1 -1
  133. package/dist/components/Header/components/Agreement/Item.cjs.map +1 -1
  134. package/dist/components/Header/components/Agreement/Item.js +1 -1
  135. package/dist/components/Header/components/Agreement/Item.js.map +1 -1
  136. package/dist/components/Header/components/AgreementSelector.cjs +3 -3
  137. package/dist/components/Header/components/AgreementSelector.cjs.map +1 -1
  138. package/dist/components/Header/components/AgreementSelector.js +3 -3
  139. package/dist/components/Header/components/AgreementSelector.js.map +1 -1
  140. package/dist/components/Header/components/Button.cjs.map +1 -1
  141. package/dist/components/Header/components/Button.d.ts +1 -1
  142. package/dist/components/Header/components/Button.js.map +1 -1
  143. package/dist/components/Header/components/Link.cjs +2 -2
  144. package/dist/components/Header/components/Link.cjs.map +1 -1
  145. package/dist/components/Header/components/Link.d.ts +1 -1
  146. package/dist/components/Header/components/Link.js +2 -2
  147. package/dist/components/Header/components/Link.js.map +1 -1
  148. package/dist/components/Header/components/MenuButton.cjs +1 -1
  149. package/dist/components/Header/components/MenuButton.cjs.map +1 -1
  150. package/dist/components/Header/components/MenuButton.js +1 -1
  151. package/dist/components/Header/components/MenuButton.js.map +1 -1
  152. package/dist/components/Header/components/PrimaryNavigation.cjs +3 -3
  153. package/dist/components/Header/components/PrimaryNavigation.cjs.map +1 -1
  154. package/dist/components/Header/components/PrimaryNavigation.js +3 -3
  155. package/dist/components/Header/components/PrimaryNavigation.js.map +1 -1
  156. package/dist/components/HoverCard/HoverCard.cjs.map +1 -1
  157. package/dist/components/HoverCard/HoverCard.d.ts +1 -1
  158. package/dist/components/HoverCard/HoverCard.js.map +1 -1
  159. package/dist/components/Inline/Inline.cjs +2 -6
  160. package/dist/components/Inline/Inline.cjs.map +1 -1
  161. package/dist/components/Inline/Inline.d.ts +1 -1
  162. package/dist/components/Inline/Inline.js +2 -6
  163. package/dist/components/Inline/Inline.js.map +1 -1
  164. package/dist/components/Input/Input.cjs +1 -1
  165. package/dist/components/Input/Input.cjs.map +1 -1
  166. package/dist/components/Input/Input.d.ts +1 -1
  167. package/dist/components/Input/Input.js +1 -1
  168. package/dist/components/Input/Input.js.map +1 -1
  169. package/dist/components/Layout/components/Sidebar.cjs.map +1 -1
  170. package/dist/components/Layout/components/Sidebar.js.map +1 -1
  171. package/dist/components/LegacyComponents/Button/Button.cjs +1 -1
  172. package/dist/components/LegacyComponents/Button/Button.cjs.map +1 -1
  173. package/dist/components/LegacyComponents/Button/Button.d.ts +3 -7
  174. package/dist/components/LegacyComponents/Button/Button.js +1 -1
  175. package/dist/components/LegacyComponents/Button/Button.js.map +1 -1
  176. package/dist/components/LegacyComponents/Button/util.cjs.map +1 -1
  177. package/dist/components/LegacyComponents/Button/util.js.map +1 -1
  178. package/dist/components/LegacyComponents/IconButton/IconButton.cjs +1 -1
  179. package/dist/components/LegacyComponents/IconButton/IconButton.cjs.map +1 -1
  180. package/dist/components/LegacyComponents/IconButton/IconButton.d.ts +4 -8
  181. package/dist/components/LegacyComponents/IconButton/IconButton.js +1 -1
  182. package/dist/components/LegacyComponents/IconButton/IconButton.js.map +1 -1
  183. package/dist/components/List/components/Collapsible.cjs +1 -1
  184. package/dist/components/List/components/Collapsible.cjs.map +1 -1
  185. package/dist/components/List/components/Collapsible.js +1 -1
  186. package/dist/components/List/components/Collapsible.js.map +1 -1
  187. package/dist/components/List/components/Item.cjs.map +1 -1
  188. package/dist/components/List/components/Item.d.ts +1 -1
  189. package/dist/components/List/components/Item.js.map +1 -1
  190. package/dist/components/List/components/Link.cjs +1 -1
  191. package/dist/components/List/components/Link.cjs.map +1 -1
  192. package/dist/components/List/components/Link.js +1 -1
  193. package/dist/components/List/components/Link.js.map +1 -1
  194. package/dist/components/List/components/Toggle.cjs +2 -2
  195. package/dist/components/List/components/Toggle.cjs.map +1 -1
  196. package/dist/components/List/components/Toggle.d.ts +1 -2
  197. package/dist/components/List/components/Toggle.js +2 -2
  198. package/dist/components/List/components/Toggle.js.map +1 -1
  199. package/dist/components/Listbox/Listbox.d.ts +2 -2
  200. package/dist/components/Listbox/ScrollableList.cjs +3 -3
  201. package/dist/components/Listbox/ScrollableList.cjs.map +1 -1
  202. package/dist/components/Listbox/ScrollableList.d.ts +1 -1
  203. package/dist/components/Listbox/ScrollableList.js +3 -3
  204. package/dist/components/Listbox/ScrollableList.js.map +1 -1
  205. package/dist/components/Listbox/useListbox.cjs.map +1 -1
  206. package/dist/components/Listbox/useListbox.js.map +1 -1
  207. package/dist/components/Listbox/useMultiListbox.cjs +1 -1
  208. package/dist/components/Listbox/useMultiListbox.cjs.map +1 -1
  209. package/dist/components/Listbox/useMultiListbox.js +1 -1
  210. package/dist/components/Listbox/useMultiListbox.js.map +1 -1
  211. package/dist/components/Listbox/useTypeahead.cjs.map +1 -1
  212. package/dist/components/Listbox/useTypeahead.js.map +1 -1
  213. package/dist/components/Listbox/util.cjs.map +1 -1
  214. package/dist/components/Listbox/util.js.map +1 -1
  215. package/dist/components/Menu/Menu.cjs.map +1 -1
  216. package/dist/components/Menu/Menu.js.map +1 -1
  217. package/dist/components/Menu/components/Checkbox.cjs +1 -1
  218. package/dist/components/Menu/components/Checkbox.cjs.map +1 -1
  219. package/dist/components/Menu/components/Checkbox.js +1 -1
  220. package/dist/components/Menu/components/Checkbox.js.map +1 -1
  221. package/dist/components/Menu/components/Content.cjs.map +1 -1
  222. package/dist/components/Menu/components/Content.js.map +1 -1
  223. package/dist/components/Menu/components/Item.cjs +1 -1
  224. package/dist/components/Menu/components/Item.cjs.map +1 -1
  225. package/dist/components/Menu/components/Item.d.ts +1 -2
  226. package/dist/components/Menu/components/Item.js +1 -1
  227. package/dist/components/Menu/components/Item.js.map +1 -1
  228. package/dist/components/Menu/components/Link.cjs.map +1 -1
  229. package/dist/components/Menu/components/Link.d.ts +1 -1
  230. package/dist/components/Menu/components/Link.js.map +1 -1
  231. package/dist/components/Menu/components/RadioGroup.cjs.map +1 -1
  232. package/dist/components/Menu/components/RadioGroup.d.ts +1 -1
  233. package/dist/components/Menu/components/RadioGroup.js.map +1 -1
  234. package/dist/components/Menu/components/SubMenu.cjs.map +1 -1
  235. package/dist/components/Menu/components/SubMenu.js.map +1 -1
  236. package/dist/components/Menu/components/Trigger.cjs.map +1 -1
  237. package/dist/components/Menu/components/Trigger.js.map +1 -1
  238. package/dist/components/Navigation2/components/Group.cjs.map +1 -1
  239. package/dist/components/Navigation2/components/Group.js.map +1 -1
  240. package/dist/components/Navigation2/components/Link.cjs +2 -2
  241. package/dist/components/Navigation2/components/Link.cjs.map +1 -1
  242. package/dist/components/Navigation2/components/Link.d.ts +1 -2
  243. package/dist/components/Navigation2/components/Link.js +2 -2
  244. package/dist/components/Navigation2/components/Link.js.map +1 -1
  245. package/dist/components/OverflowGroup/OverflowGroup.cjs +1 -1
  246. package/dist/components/OverflowGroup/OverflowGroup.cjs.map +1 -1
  247. package/dist/components/OverflowGroup/OverflowGroup.d.ts +1 -1
  248. package/dist/components/OverflowGroup/OverflowGroup.js +1 -1
  249. package/dist/components/OverflowGroup/OverflowGroup.js.map +1 -1
  250. package/dist/components/Pagination/PageNumbers.cjs +1 -1
  251. package/dist/components/Pagination/PageNumbers.cjs.map +1 -1
  252. package/dist/components/Pagination/PageNumbers.js +1 -1
  253. package/dist/components/Pagination/PageNumbers.js.map +1 -1
  254. package/dist/components/Pagination/Pagination.cjs +4 -4
  255. package/dist/components/Pagination/Pagination.cjs.map +1 -1
  256. package/dist/components/Pagination/Pagination.js +4 -4
  257. package/dist/components/Pagination/Pagination.js.map +1 -1
  258. package/dist/components/Popover/Popover.cjs.map +1 -1
  259. package/dist/components/Popover/Popover.d.ts +1 -1
  260. package/dist/components/Popover/Popover.js.map +1 -1
  261. package/dist/components/Provider/Localization.cjs.map +1 -1
  262. package/dist/components/Provider/Localization.d.ts +1 -1
  263. package/dist/components/Provider/Localization.js.map +1 -1
  264. package/dist/components/Provider/Provider.cjs +1 -1
  265. package/dist/components/Provider/Provider.cjs.map +1 -1
  266. package/dist/components/Provider/Provider.js +1 -1
  267. package/dist/components/Provider/Provider.js.map +1 -1
  268. package/dist/components/RadioGroup/RadioGroup.cjs +1 -1
  269. package/dist/components/RadioGroup/RadioGroup.cjs.map +1 -1
  270. package/dist/components/RadioGroup/RadioGroup.js +1 -1
  271. package/dist/components/RadioGroup/RadioGroup.js.map +1 -1
  272. package/dist/components/Report/Report.cjs.map +1 -1
  273. package/dist/components/Report/Report.js.map +1 -1
  274. package/dist/components/Report/useReport.cjs.map +1 -1
  275. package/dist/components/Report/useReport.js.map +1 -1
  276. package/dist/components/SearchInput/SearchInput.cjs +1 -1
  277. package/dist/components/SearchInput/SearchInput.cjs.map +1 -1
  278. package/dist/components/SearchInput/SearchInput.d.ts +5 -5
  279. package/dist/components/SearchInput/SearchInput.js +1 -1
  280. package/dist/components/SearchInput/SearchInput.js.map +1 -1
  281. package/dist/components/SearchInput2/SearchInput2.cjs +3 -3
  282. package/dist/components/SearchInput2/SearchInput2.cjs.map +1 -1
  283. package/dist/components/SearchInput2/SearchInput2.js +3 -3
  284. package/dist/components/SearchInput2/SearchInput2.js.map +1 -1
  285. package/dist/components/Select/Select.cjs +4 -4
  286. package/dist/components/Select/Select.cjs.map +1 -1
  287. package/dist/components/Select/Select.d.ts +5 -5
  288. package/dist/components/Select/Select.js +4 -4
  289. package/dist/components/Select/Select.js.map +1 -1
  290. package/dist/components/Select/useSelect.cjs +1 -1
  291. package/dist/components/Select/useSelect.cjs.map +1 -1
  292. package/dist/components/Select/useSelect.js +1 -1
  293. package/dist/components/Select/useSelect.js.map +1 -1
  294. package/dist/components/Select2/Select2.cjs +4 -4
  295. package/dist/components/Select2/Select2.cjs.map +1 -1
  296. package/dist/components/Select2/Select2.d.ts +2 -2
  297. package/dist/components/Select2/Select2.js +4 -4
  298. package/dist/components/Select2/Select2.js.map +1 -1
  299. package/dist/components/Select2/components/Collection.cjs.map +1 -1
  300. package/dist/components/Select2/components/Collection.js.map +1 -1
  301. package/dist/components/Select2/components/Context.cjs.map +1 -1
  302. package/dist/components/Select2/components/Context.js.map +1 -1
  303. package/dist/components/Select2/components/Create.cjs +4 -4
  304. package/dist/components/Select2/components/Create.cjs.map +1 -1
  305. package/dist/components/Select2/components/Create.js +4 -4
  306. package/dist/components/Select2/components/Create.js.map +1 -1
  307. package/dist/components/Select2/components/Edit.cjs +5 -5
  308. package/dist/components/Select2/components/Edit.cjs.map +1 -1
  309. package/dist/components/Select2/components/Edit.d.ts +1 -1
  310. package/dist/components/Select2/components/Edit.js +5 -5
  311. package/dist/components/Select2/components/Edit.js.map +1 -1
  312. package/dist/components/Select2/components/Group.cjs +1 -1
  313. package/dist/components/Select2/components/Group.cjs.map +1 -1
  314. package/dist/components/Select2/components/Group.js +1 -1
  315. package/dist/components/Select2/components/Group.js.map +1 -1
  316. package/dist/components/Select2/components/Option.cjs +4 -4
  317. package/dist/components/Select2/components/Option.cjs.map +1 -1
  318. package/dist/components/Select2/components/Option.d.ts +1 -1
  319. package/dist/components/Select2/components/Option.js +4 -4
  320. package/dist/components/Select2/components/Option.js.map +1 -1
  321. package/dist/components/Select2/components/Search.cjs +1 -1
  322. package/dist/components/Select2/components/Search.cjs.map +1 -1
  323. package/dist/components/Select2/components/Search.js +1 -1
  324. package/dist/components/Select2/components/Search.js.map +1 -1
  325. package/dist/components/Select2/components/Title.cjs.map +1 -1
  326. package/dist/components/Select2/components/Title.js.map +1 -1
  327. package/dist/components/Select2/components/Trigger.cjs +6 -6
  328. package/dist/components/Select2/components/Trigger.cjs.map +1 -1
  329. package/dist/components/Select2/components/Trigger.d.ts +1 -1
  330. package/dist/components/Select2/components/Trigger.js +6 -6
  331. package/dist/components/Select2/components/Trigger.js.map +1 -1
  332. package/dist/components/Select2/types.d.ts +1 -1
  333. package/dist/components/Select2/utilities.cjs.map +1 -1
  334. package/dist/components/Select2/utilities.js.map +1 -1
  335. package/dist/components/Shortcut/Shortcut.cjs.map +1 -1
  336. package/dist/components/Shortcut/Shortcut.js.map +1 -1
  337. package/dist/components/Stack/Stack.cjs +2 -6
  338. package/dist/components/Stack/Stack.cjs.map +1 -1
  339. package/dist/components/Stack/Stack.d.ts +1 -1
  340. package/dist/components/Stack/Stack.js +2 -6
  341. package/dist/components/Stack/Stack.js.map +1 -1
  342. package/dist/components/Switch/Switch.cjs.map +1 -1
  343. package/dist/components/Switch/Switch.js.map +1 -1
  344. package/dist/components/Table3/Table3.cjs +1 -3
  345. package/dist/components/Table3/Table3.cjs.map +1 -1
  346. package/dist/components/Table3/Table3.d.ts +1 -4
  347. package/dist/components/Table3/Table3.js +1 -3
  348. package/dist/components/Table3/Table3.js.map +1 -1
  349. package/dist/components/Table3/components/Columns/Cell/Cell.cjs.map +1 -1
  350. package/dist/components/Table3/components/Columns/Cell/Cell.js.map +1 -1
  351. package/dist/components/Table3/components/Columns/Cell/Editing/RowMoveIndicator.cjs +1 -1
  352. package/dist/components/Table3/components/Columns/Cell/Editing/RowMoveIndicator.cjs.map +1 -1
  353. package/dist/components/Table3/components/Columns/Cell/Editing/RowMoveIndicator.js +1 -1
  354. package/dist/components/Table3/components/Columns/Cell/Editing/RowMoveIndicator.js.map +1 -1
  355. package/dist/components/Table3/components/Columns/Cell/Editing/TextareaWithAutosizing.cjs.map +1 -1
  356. package/dist/components/Table3/components/Columns/Cell/Editing/TextareaWithAutosizing.js.map +1 -1
  357. package/dist/components/Table3/components/Columns/Cell/EditingControlCell.cjs +6 -6
  358. package/dist/components/Table3/components/Columns/Cell/EditingControlCell.cjs.map +1 -1
  359. package/dist/components/Table3/components/Columns/Cell/EditingControlCell.js +6 -6
  360. package/dist/components/Table3/components/Columns/Cell/EditingControlCell.js.map +1 -1
  361. package/dist/components/Table3/components/Columns/Cell/EditingDisplayCell.cjs.map +1 -1
  362. package/dist/components/Table3/components/Columns/Cell/EditingDisplayCell.js.map +1 -1
  363. package/dist/components/Table3/components/Columns/Cell/util.cjs.map +1 -1
  364. package/dist/components/Table3/components/Columns/Cell/util.js.map +1 -1
  365. package/dist/components/Table3/components/Editing/Alert.cjs +3 -3
  366. package/dist/components/Table3/components/Editing/Alert.cjs.map +1 -1
  367. package/dist/components/Table3/components/Editing/Alert.d.ts +1 -1
  368. package/dist/components/Table3/components/Editing/Alert.js +3 -3
  369. package/dist/components/Table3/components/Editing/Alert.js.map +1 -1
  370. package/dist/components/Table3/components/Editing/DiscardChangesConfirmationDialog.cjs +3 -3
  371. package/dist/components/Table3/components/Editing/DiscardChangesConfirmationDialog.cjs.map +1 -1
  372. package/dist/components/Table3/components/Editing/DiscardChangesConfirmationDialog.d.ts +1 -1
  373. package/dist/components/Table3/components/Editing/DiscardChangesConfirmationDialog.js +3 -3
  374. package/dist/components/Table3/components/Editing/DiscardChangesConfirmationDialog.js.map +1 -1
  375. package/dist/components/Table3/components/Row/Editing/CreateNewRow.cjs +2 -2
  376. package/dist/components/Table3/components/Row/Editing/CreateNewRow.cjs.map +1 -1
  377. package/dist/components/Table3/components/Row/Editing/CreateNewRow.js +2 -2
  378. package/dist/components/Table3/components/Row/Editing/CreateNewRow.js.map +1 -1
  379. package/dist/components/Table3/components/Row/Editing/SaveStatus.cjs +2 -2
  380. package/dist/components/Table3/components/Row/Editing/SaveStatus.cjs.map +1 -1
  381. package/dist/components/Table3/components/Row/Editing/SaveStatus.js +2 -2
  382. package/dist/components/Table3/components/Row/Editing/SaveStatus.js.map +1 -1
  383. package/dist/components/Table3/components/Row/Editing/TemporaryRow.cjs.map +1 -1
  384. package/dist/components/Table3/components/Row/Editing/TemporaryRow.js.map +1 -1
  385. package/dist/components/Table3/components/Row/Row.cjs.map +1 -1
  386. package/dist/components/Table3/components/Row/Row.js.map +1 -1
  387. package/dist/components/Table3/components/Toolbar/Editing/Editing.cjs +2 -2
  388. package/dist/components/Table3/components/Toolbar/Editing/Editing.cjs.map +1 -1
  389. package/dist/components/Table3/components/Toolbar/Editing/Editing.js +2 -2
  390. package/dist/components/Table3/components/Toolbar/Editing/Editing.js.map +1 -1
  391. package/dist/components/Table3/features/useEditingState.cjs +1 -1
  392. package/dist/components/Table3/features/useEditingState.cjs.map +1 -1
  393. package/dist/components/Table3/features/useEditingState.js +1 -1
  394. package/dist/components/Table3/features/useEditingState.js.map +1 -1
  395. package/dist/components/Table3/features/useTableEditing.cjs +1 -1
  396. package/dist/components/Table3/features/useTableEditing.cjs.map +1 -1
  397. package/dist/components/Table3/features/useTableEditing.js +1 -1
  398. package/dist/components/Table3/features/useTableEditing.js.map +1 -1
  399. package/dist/components/Table3/listeners/useTableEditingListener.cjs +1 -1
  400. package/dist/components/Table3/listeners/useTableEditingListener.cjs.map +1 -1
  401. package/dist/components/Table3/listeners/useTableEditingListener.js +1 -1
  402. package/dist/components/Table3/listeners/useTableEditingListener.js.map +1 -1
  403. package/dist/components/Table3/useTable3.cjs +2 -2
  404. package/dist/components/Table3/useTable3.cjs.map +1 -1
  405. package/dist/components/Table3/useTable3.js +2 -2
  406. package/dist/components/Table3/useTable3.js.map +1 -1
  407. package/dist/components/Table3/util/editing.cjs.map +1 -1
  408. package/dist/components/Table3/util/editing.d.ts +2 -2
  409. package/dist/components/Table3/util/editing.js.map +1 -1
  410. package/dist/components/Tabs/Context.cjs.map +1 -1
  411. package/dist/components/Tabs/Context.js.map +1 -1
  412. package/dist/components/Tabs/Tabs.cjs.map +1 -1
  413. package/dist/components/Tabs/Tabs.js.map +1 -1
  414. package/dist/components/Tabs/components/TabList.cjs +2 -2
  415. package/dist/components/Tabs/components/TabList.cjs.map +1 -1
  416. package/dist/components/Tabs/components/TabList.js +2 -2
  417. package/dist/components/Tabs/components/TabList.js.map +1 -1
  418. package/dist/components/Tabs/components/Trigger.cjs +3 -3
  419. package/dist/components/Tabs/components/Trigger.cjs.map +1 -1
  420. package/dist/components/Tabs/components/Trigger.js +3 -3
  421. package/dist/components/Tabs/components/Trigger.js.map +1 -1
  422. package/dist/components/Tag/Tag.cjs.map +1 -1
  423. package/dist/components/Tag/Tag.d.ts +1 -1
  424. package/dist/components/Tag/Tag.js.map +1 -1
  425. package/dist/components/Textarea/Textarea.cjs +1 -1
  426. package/dist/components/Textarea/Textarea.cjs.map +1 -1
  427. package/dist/components/Textarea/Textarea.js +1 -1
  428. package/dist/components/Textarea/Textarea.js.map +1 -1
  429. package/dist/components/Toast/Toast.cjs +2 -2
  430. package/dist/components/Toast/Toast.cjs.map +1 -1
  431. package/dist/components/Toast/Toast.js +2 -2
  432. package/dist/components/Toast/Toast.js.map +1 -1
  433. package/dist/components/Toast/util.cjs +1 -1
  434. package/dist/components/Toast/util.cjs.map +1 -1
  435. package/dist/components/Toast/util.js +1 -1
  436. package/dist/components/Toast/util.js.map +1 -1
  437. package/dist/components/Tour/Tour.cjs +2 -2
  438. package/dist/components/Tour/Tour.cjs.map +1 -1
  439. package/dist/components/Tour/Tour.js +2 -2
  440. package/dist/components/Tour/Tour.js.map +1 -1
  441. package/dist/components/Truncate/Truncate.cjs.map +1 -1
  442. package/dist/components/Truncate/Truncate.js.map +1 -1
  443. package/dist/components/Typography/Heading.cjs.map +1 -1
  444. package/dist/components/Typography/Heading.d.ts +1 -1
  445. package/dist/components/Typography/Heading.js.map +1 -1
  446. package/dist/components/Typography/Text.cjs.map +1 -1
  447. package/dist/components/Typography/Text.d.ts +1 -1
  448. package/dist/components/Typography/Text.js.map +1 -1
  449. package/dist/components/index.d.ts +0 -1
  450. package/dist/hooks/useBoundaryOverflowDetection.cjs.map +1 -1
  451. package/dist/hooks/useBoundaryOverflowDetection.js.map +1 -1
  452. package/dist/hooks/useBoundingClientRectListener.cjs.map +1 -1
  453. package/dist/hooks/useBoundingClientRectListener.js.map +1 -1
  454. package/dist/hooks/useGlobalKeyDown.cjs.map +1 -1
  455. package/dist/hooks/useGlobalKeyDown.js.map +1 -1
  456. package/dist/hooks/useTacoSettings.cjs.map +1 -1
  457. package/dist/hooks/useTacoSettings.d.ts +1 -1
  458. package/dist/hooks/useTacoSettings.js.map +1 -1
  459. package/dist/index.cjs +0 -2
  460. package/dist/index.cjs.map +1 -1
  461. package/dist/index.js +0 -2
  462. package/dist/index.js.map +1 -1
  463. package/dist/primitives/BubbleSelect.cjs.map +1 -1
  464. package/dist/primitives/BubbleSelect.js.map +1 -1
  465. package/dist/primitives/Button.cjs.map +1 -1
  466. package/dist/primitives/Button.js.map +1 -1
  467. package/dist/primitives/Collection/components/Root.cjs.map +1 -1
  468. package/dist/primitives/Collection/components/Root.js.map +1 -1
  469. package/dist/primitives/Listbox2/components/Option.cjs.map +1 -1
  470. package/dist/primitives/Listbox2/components/Option.js.map +1 -1
  471. package/dist/primitives/Listbox2/components/Root.cjs.map +1 -1
  472. package/dist/primitives/Listbox2/components/Root.js.map +1 -1
  473. package/dist/primitives/Listbox2/components/Title.cjs.map +1 -1
  474. package/dist/primitives/Listbox2/components/Title.js.map +1 -1
  475. package/dist/primitives/Table/Core/components/Body/Body.cjs.map +1 -1
  476. package/dist/primitives/Table/Core/components/Body/Body.js.map +1 -1
  477. package/dist/primitives/Table/Core/components/Body/EmptyStateBody.cjs.map +1 -1
  478. package/dist/primitives/Table/Core/components/Body/EmptyStateBody.js.map +1 -1
  479. package/dist/primitives/Table/Core/components/Body/util.cjs.map +1 -1
  480. package/dist/primitives/Table/Core/components/Body/util.js.map +1 -1
  481. package/dist/primitives/Table/Core/components/Columns/Cell/util.cjs +1 -1
  482. package/dist/primitives/Table/Core/components/Columns/Cell/util.cjs.map +1 -1
  483. package/dist/primitives/Table/Core/components/Columns/Cell/util.js +1 -1
  484. package/dist/primitives/Table/Core/components/Columns/Cell/util.js.map +1 -1
  485. package/dist/primitives/Table/Core/components/Columns/Internal/Actions.cjs +3 -3
  486. package/dist/primitives/Table/Core/components/Columns/Internal/Actions.cjs.map +1 -1
  487. package/dist/primitives/Table/Core/components/Columns/Internal/Actions.js +3 -3
  488. package/dist/primitives/Table/Core/components/Columns/Internal/Actions.js.map +1 -1
  489. package/dist/primitives/Table/Core/components/Columns/Internal/Drag.cjs +2 -2
  490. package/dist/primitives/Table/Core/components/Columns/Internal/Drag.cjs.map +1 -1
  491. package/dist/primitives/Table/Core/components/Columns/Internal/Drag.js +2 -2
  492. package/dist/primitives/Table/Core/components/Columns/Internal/Drag.js.map +1 -1
  493. package/dist/primitives/Table/Core/components/Columns/Internal/Expansion.cjs +3 -3
  494. package/dist/primitives/Table/Core/components/Columns/Internal/Expansion.cjs.map +1 -1
  495. package/dist/primitives/Table/Core/components/Columns/Internal/Expansion.js +3 -3
  496. package/dist/primitives/Table/Core/components/Columns/Internal/Expansion.js.map +1 -1
  497. package/dist/primitives/Table/Core/components/Columns/Internal/Selection.cjs +4 -4
  498. package/dist/primitives/Table/Core/components/Columns/Internal/Selection.cjs.map +1 -1
  499. package/dist/primitives/Table/Core/components/Columns/Internal/Selection.js +4 -4
  500. package/dist/primitives/Table/Core/components/Columns/Internal/Selection.js.map +1 -1
  501. package/dist/primitives/Table/Core/components/Footer/Summary.cjs.map +1 -1
  502. package/dist/primitives/Table/Core/components/Footer/Summary.js.map +1 -1
  503. package/dist/primitives/Table/Core/components/Header/Header.cjs +1 -1
  504. package/dist/primitives/Table/Core/components/Header/Header.cjs.map +1 -1
  505. package/dist/primitives/Table/Core/components/Header/Header.js +1 -1
  506. package/dist/primitives/Table/Core/components/Header/Header.js.map +1 -1
  507. package/dist/primitives/Table/Core/components/Header/components/Goto.cjs +1 -1
  508. package/dist/primitives/Table/Core/components/Header/components/Goto.cjs.map +1 -1
  509. package/dist/primitives/Table/Core/components/Header/components/Goto.d.ts +1 -1
  510. package/dist/primitives/Table/Core/components/Header/components/Goto.js +1 -1
  511. package/dist/primitives/Table/Core/components/Header/components/Goto.js.map +1 -1
  512. package/dist/primitives/Table/Core/components/Header/components/Menu.cjs +4 -6
  513. package/dist/primitives/Table/Core/components/Header/components/Menu.cjs.map +1 -1
  514. package/dist/primitives/Table/Core/components/Header/components/Menu.js +4 -6
  515. package/dist/primitives/Table/Core/components/Header/components/Menu.js.map +1 -1
  516. package/dist/primitives/Table/Core/components/Header/components/Resizer.cjs.map +1 -1
  517. package/dist/primitives/Table/Core/components/Header/components/Resizer.js.map +1 -1
  518. package/dist/primitives/Table/Core/components/Header/components/SortIndicator.cjs.map +1 -1
  519. package/dist/primitives/Table/Core/components/Header/components/SortIndicator.js.map +1 -1
  520. package/dist/primitives/Table/Core/components/Row/BuiltIns/DisplayRow.cjs +3 -1
  521. package/dist/primitives/Table/Core/components/Row/BuiltIns/DisplayRow.cjs.map +1 -1
  522. package/dist/primitives/Table/Core/components/Row/BuiltIns/DisplayRow.js +3 -1
  523. package/dist/primitives/Table/Core/components/Row/BuiltIns/DisplayRow.js.map +1 -1
  524. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/Filters.cjs +5 -5
  525. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/Filters.cjs.map +1 -1
  526. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/Filters.js +5 -5
  527. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/Filters.js.map +1 -1
  528. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/ManageFiltersPopover.cjs +4 -4
  529. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/ManageFiltersPopover.cjs.map +1 -1
  530. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/ManageFiltersPopover.js +4 -4
  531. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/ManageFiltersPopover.js.map +1 -1
  532. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/Filter.cjs +2 -2
  533. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/Filter.cjs.map +1 -1
  534. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/Filter.js +2 -2
  535. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/Filter.js.map +1 -1
  536. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterColumn.cjs +3 -3
  537. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterColumn.cjs.map +1 -1
  538. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterColumn.d.ts +1 -1
  539. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterColumn.js +3 -3
  540. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterColumn.js.map +1 -1
  541. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterComparator.cjs +2 -2
  542. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterComparator.cjs.map +1 -1
  543. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterComparator.d.ts +1 -1
  544. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterComparator.js +2 -2
  545. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterComparator.js.map +1 -1
  546. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterValue.cjs +5 -5
  547. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterValue.cjs.map +1 -1
  548. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterValue.js +5 -5
  549. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterValue.js.map +1 -1
  550. package/dist/primitives/Table/Core/components/Toolbar/components/Print/Print.cjs +4 -4
  551. package/dist/primitives/Table/Core/components/Toolbar/components/Print/Print.cjs.map +1 -1
  552. package/dist/primitives/Table/Core/components/Toolbar/components/Print/Print.js +4 -4
  553. package/dist/primitives/Table/Core/components/Toolbar/components/Print/Print.js.map +1 -1
  554. package/dist/primitives/Table/Core/components/Toolbar/components/Print/PrintDialog.cjs +6 -6
  555. package/dist/primitives/Table/Core/components/Toolbar/components/Print/PrintDialog.cjs.map +1 -1
  556. package/dist/primitives/Table/Core/components/Toolbar/components/Print/PrintDialog.d.ts +1 -2
  557. package/dist/primitives/Table/Core/components/Toolbar/components/Print/PrintDialog.js +6 -6
  558. package/dist/primitives/Table/Core/components/Toolbar/components/Print/PrintDialog.js.map +1 -1
  559. package/dist/primitives/Table/Core/components/Toolbar/components/Search/Search.cjs +2 -2
  560. package/dist/primitives/Table/Core/components/Toolbar/components/Search/Search.cjs.map +1 -1
  561. package/dist/primitives/Table/Core/components/Toolbar/components/Search/Search.js +2 -2
  562. package/dist/primitives/Table/Core/components/Toolbar/components/Search/Search.js.map +1 -1
  563. package/dist/primitives/Table/Core/components/Toolbar/components/Settings/HideOrOrderPopover.cjs +7 -7
  564. package/dist/primitives/Table/Core/components/Toolbar/components/Settings/HideOrOrderPopover.cjs.map +1 -1
  565. package/dist/primitives/Table/Core/components/Toolbar/components/Settings/HideOrOrderPopover.d.ts +1 -1
  566. package/dist/primitives/Table/Core/components/Toolbar/components/Settings/HideOrOrderPopover.js +7 -7
  567. package/dist/primitives/Table/Core/components/Toolbar/components/Settings/HideOrOrderPopover.js.map +1 -1
  568. package/dist/primitives/Table/Core/components/Toolbar/components/Settings/Settings.cjs +3 -3
  569. package/dist/primitives/Table/Core/components/Toolbar/components/Settings/Settings.cjs.map +1 -1
  570. package/dist/primitives/Table/Core/components/Toolbar/components/Settings/Settings.js +3 -3
  571. package/dist/primitives/Table/Core/components/Toolbar/components/Settings/Settings.js.map +1 -1
  572. package/dist/primitives/Table/Core/features/useTableGlobalShortcuts.cjs.map +1 -1
  573. package/dist/primitives/Table/Core/features/useTableGlobalShortcuts.js.map +1 -1
  574. package/dist/primitives/Table/Core/listeners/useTableRowActiveListener.cjs.map +1 -1
  575. package/dist/primitives/Table/Core/listeners/useTableRowActiveListener.js.map +1 -1
  576. package/dist/primitives/Table/Core/useTable.cjs.map +1 -1
  577. package/dist/primitives/Table/Core/useTable.js.map +1 -1
  578. package/dist/primitives/Table/types.cjs.map +1 -1
  579. package/dist/primitives/Table/types.d.ts +1 -1
  580. package/dist/primitives/Table/types.js.map +1 -1
  581. package/dist/primitives/Table/useTableManager/features/useTableFontSize.cjs.map +1 -1
  582. package/dist/primitives/Table/useTableManager/features/useTableFontSize.js.map +1 -1
  583. package/dist/primitives/Table/useTableManager/features/useTablePrinting.cjs.map +1 -1
  584. package/dist/primitives/Table/useTableManager/features/useTablePrinting.js.map +1 -1
  585. package/dist/primitives/Table/useTableManager/features/useTableRowActive.cjs.map +1 -1
  586. package/dist/primitives/Table/useTableManager/features/useTableRowActive.js.map +1 -1
  587. package/dist/primitives/Table/useTableManager/features/useTableSettings.cjs.map +1 -1
  588. package/dist/primitives/Table/useTableManager/features/useTableSettings.js.map +1 -1
  589. package/dist/primitives/Table/useTableManager/listeners/useTableDataListener.cjs.map +1 -1
  590. package/dist/primitives/Table/useTableManager/listeners/useTableDataListener.js.map +1 -1
  591. package/dist/primitives/Table/useTableManager/listeners/useTableFilterListener.cjs.map +1 -1
  592. package/dist/primitives/Table/useTableManager/listeners/useTableFilterListener.js.map +1 -1
  593. package/dist/primitives/Table/useTableManager/listeners/useTableFontSizeListener.cjs.map +1 -1
  594. package/dist/primitives/Table/useTableManager/listeners/useTableFontSizeListener.js.map +1 -1
  595. package/dist/primitives/Table/useTableManager/listeners/useTableRowHeightListener.cjs.map +1 -1
  596. package/dist/primitives/Table/useTableManager/listeners/useTableRowHeightListener.js.map +1 -1
  597. package/dist/primitives/Table/useTableManager/listeners/useTableRowSelectionListener.cjs.map +1 -1
  598. package/dist/primitives/Table/useTableManager/listeners/useTableRowSelectionListener.js.map +1 -1
  599. package/dist/primitives/Table/useTableManager/listeners/useTableSearchListener.cjs +1 -1
  600. package/dist/primitives/Table/useTableManager/listeners/useTableSearchListener.cjs.map +1 -1
  601. package/dist/primitives/Table/useTableManager/listeners/useTableSearchListener.js +1 -1
  602. package/dist/primitives/Table/useTableManager/listeners/useTableSearchListener.js.map +1 -1
  603. package/dist/primitives/Table/useTableManager/listeners/useTableShortcutsListener.cjs.map +1 -1
  604. package/dist/primitives/Table/useTableManager/listeners/useTableShortcutsListener.js.map +1 -1
  605. package/dist/primitives/Table/useTableManager/listeners/useTableSortingListener.cjs.map +1 -1
  606. package/dist/primitives/Table/useTableManager/listeners/useTableSortingListener.js.map +1 -1
  607. package/dist/primitives/Table/useTableManager/useTableManager.cjs +1 -1
  608. package/dist/primitives/Table/useTableManager/useTableManager.cjs.map +1 -1
  609. package/dist/primitives/Table/useTableManager/useTableManager.js +1 -1
  610. package/dist/primitives/Table/useTableManager/useTableManager.js.map +1 -1
  611. package/dist/primitives/Table/useTableManager/util/columns.cjs.map +1 -1
  612. package/dist/primitives/Table/useTableManager/util/columns.d.ts +1 -1
  613. package/dist/primitives/Table/useTableManager/util/columns.js.map +1 -1
  614. package/dist/primitives/Table/useTableManager/util/dataTypes.cjs.map +1 -1
  615. package/dist/primitives/Table/useTableManager/util/dataTypes.d.ts +1 -1
  616. package/dist/primitives/Table/useTableManager/util/dataTypes.js.map +1 -1
  617. package/dist/primitives/Table/useTableManager/util/filtering.cjs.map +1 -1
  618. package/dist/primitives/Table/useTableManager/util/filtering.d.ts +1 -1
  619. package/dist/primitives/Table/useTableManager/util/filtering.js.map +1 -1
  620. package/dist/primitives/Table/useTableManager/util/search.cjs.map +1 -1
  621. package/dist/primitives/Table/useTableManager/util/search.d.ts +1 -1
  622. package/dist/primitives/Table/useTableManager/util/search.js.map +1 -1
  623. package/dist/primitives/Table/useTableManager/util/setup.cjs +11 -1
  624. package/dist/primitives/Table/useTableManager/util/setup.cjs.map +1 -1
  625. package/dist/primitives/Table/useTableManager/util/setup.d.ts +1 -1
  626. package/dist/primitives/Table/useTableManager/util/setup.js +12 -2
  627. package/dist/primitives/Table/useTableManager/util/setup.js.map +1 -1
  628. package/dist/utils/dom.cjs.map +1 -1
  629. package/dist/utils/dom.js.map +1 -1
  630. package/dist/utils/flattenChildren.cjs +12 -0
  631. package/dist/utils/flattenChildren.cjs.map +1 -0
  632. package/dist/utils/flattenChildren.d.ts +6 -0
  633. package/dist/utils/flattenChildren.js +12 -0
  634. package/dist/utils/flattenChildren.js.map +1 -0
  635. package/dist/utils/hooks/useListKeyboardNavigation.cjs.map +1 -1
  636. package/dist/utils/hooks/useListKeyboardNavigation.js.map +1 -1
  637. package/dist/utils/storyutils.d.ts +1 -1
  638. package/dist/utils/tailwind.cjs.map +1 -1
  639. package/dist/utils/tailwind.js.map +1 -1
  640. package/package.json +6 -5
  641. package/dist/components/Treeview/Treeview.cjs +0 -52
  642. package/dist/components/Treeview/Treeview.cjs.map +0 -1
  643. package/dist/components/Treeview/Treeview.d.ts +0 -25
  644. package/dist/components/Treeview/Treeview.js +0 -52
  645. package/dist/components/Treeview/Treeview.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"useTableManager.cjs","sources":["../../../../src/primitives/Table/useTableManager/useTableManager.ts"],"sourcesContent":["import type { TableMeta as ReactTableMeta, RowData } from '@tanstack/react-table';\nimport { useReactTable, getCoreRowModel } from '@tanstack/react-table';\nimport React from 'react';\n\nimport { useLocalization } from '../../../components/Provider/Localization';\nimport type {\n TableColumnAlignment,\n TableColumnClassNameHandler,\n TableColumnDataType,\n TableColumnDataTypeOptions,\n TableColumnMenu,\n TableColumnRendererControl,\n TableEventHandler,\n TableFilterComparator,\n TableProps,\n TableRef,\n} from '../types';\n\nimport { useTableColumnFreezing } from './features/useTableColumnFreezing';\nimport { useTableColumnOrdering } from './features/useTableColumnOrdering';\nimport { useTableFontSize } from './features/useTableFontSize';\nimport { useTableFooter } from './features/useTableFooter';\nimport { useTablePrinting } from './features/useTablePrinting';\nimport { useTableRowActions } from './features/useTableRowActions';\nimport { useTableRowActive } from './features/useTableRowActive';\nimport { useTableRowClick } from './features/useTableRowClick';\nimport { useTableRowDrag } from './features/useTableRowDrag';\nimport { useTableRowDrop } from './features/useTableRowDrop';\nimport { useTableRowExpansion } from './features/useTableRowExpansion';\nimport { useTableRowGoto } from './features/useTableRowGoto';\nimport { useTableRowGroups } from './features/useTableRowGroups';\nimport { useTableRowHeight } from './features/useTableRowHeight';\nimport { useTableRowSelection } from './features/useTableRowSelection';\nimport { useTableSearch } from './features/useTableSearch';\nimport { useTableServerLoading } from './features/useTableServerLoading';\nimport { useTableSettings } from './features/useTableSettings';\nimport { useTableDataListener } from './listeners/useTableDataListener';\nimport { useTableFilterListener } from './listeners/useTableFilterListener';\nimport { useTableFontSizeListener } from './listeners/useTableFontSizeListener';\nimport { useTableRowActiveListener } from './listeners/useTableRowActiveListener';\nimport { useTableRowHeightListener } from './listeners/useTableRowHeightListener';\nimport { useTableRowSelectionListener } from './listeners/useTableRowSelectionListener';\nimport { useTableSearchListener } from './listeners/useTableSearchListener';\nimport { useTableServerLoadingListener } from './listeners/useTableServerLoadingListener';\nimport { useTableSettingsListener } from './listeners/useTableSettingsListener';\nimport { useTableShortcutsListener } from './listeners/useTableShortcutsListener';\nimport { useTableSortingListener } from './listeners/useTableSortingListener';\nimport type { useTableManagerInternalColumns } from './types';\nimport { getTableFeaturePreset } from './util/presets';\nimport { useReactTableInitialState, configureReactTableOptions, mapTableChildrenToColumns } from './util/setup';\n\n/*\n EDITING THIS FILE? READ ME FIRST!\n\n This is a shared, common hook for multiple tables. It's feature set is specifically chosen to support features\n common across those tables. If you are adding a new feature or changing an existing one, before writing any code\n in this file ask yourself the question - is this specific to a given table, or is it common to all of them.\n If you are unsure, ask your team first.\n*/\n\ndeclare module '@tanstack/table-core' {\n // oxlint-disable-next-line typescript/consistent-type-definitions -- module augmentation requires interface (declaration merging)\n interface TableMeta<TData extends RowData> {\n columnFreezing: ReturnType<typeof useTableColumnFreezing>;\n columnOrdering: ReturnType<typeof useTableColumnOrdering>;\n fontSize: ReturnType<typeof useTableFontSize>;\n footer: ReturnType<typeof useTableFooter>;\n length: number;\n onEvent: TableEventHandler;\n printing: ReturnType<typeof useTablePrinting>;\n rowActions: ReturnType<typeof useTableRowActions>;\n rowActive: ReturnType<typeof useTableRowActive>;\n rowClick: ReturnType<typeof useTableRowClick>;\n rowDrag: ReturnType<typeof useTableRowDrag>;\n rowDrop: ReturnType<typeof useTableRowDrop>;\n rowExpansion: ReturnType<typeof useTableRowExpansion>;\n rowGoto: ReturnType<typeof useTableRowGoto>;\n rowGroups: ReturnType<typeof useTableRowGroups>;\n rowHeight: ReturnType<typeof useTableRowHeight>;\n rowIdentityAccessor: keyof TData;\n rowSelection: ReturnType<typeof useTableRowSelection>;\n search: ReturnType<typeof useTableSearch>;\n server: ReturnType<typeof useTableServerLoading>;\n }\n\n // oxlint-disable-next-line no-unused-vars, typescript/consistent-type-definitions -- module augmentation requires interface (declaration merging)\n interface ColumnMeta<TData extends RowData, TValue> {\n align?: TableColumnAlignment;\n className?: TableColumnClassNameHandler<TData>;\n control?: TableColumnRendererControl<TData>;\n dataType?: TableColumnDataType;\n dataTypeOptions?: TableColumnDataTypeOptions;\n defaultWidth?: number;\n emptyState?: React.ReactNode;\n enableEditing?: boolean;\n enableOrdering?: boolean;\n enablePrinting?: boolean;\n enableSearch?: boolean;\n enableTruncate?: boolean;\n filters?: TableFilterComparator[];\n header: string;\n headerClassName?: string;\n menu?: TableColumnMenu;\n tooltip?: string;\n }\n}\n\n// Placed this array outside the hook to avoid creating a new array reference on each hook re-render\nconst DEFAULT_EMPTY_ARRAY: unknown[] = [];\n\nexport function useTableManager<TType = unknown, TMeta = object>(\n props: TableProps<TType>,\n ref: React.RefObject<TableRef>,\n meta?: Partial<ReactTableMeta<TType>> & TMeta,\n internalColumns?: useTableManagerInternalColumns<TType>\n) {\n const localization = useLocalization();\n // CSS.escape would be best here, but it doesn't seem to work very well\n const safeId = props.id.replace('.', '_');\n // configure table options, merging props with presets\n const options = getTableFeaturePreset(props);\n\n // load any persisted table settings and merge them with any defaults\n const [settings, setSettings] = useTableSettings(\n options.enableSaveSettings,\n safeId,\n props.defaultSettings,\n props.onChangeSettings,\n props.enableSaveSettingsLocally\n );\n\n // ensure data is always valid\n const data = props.data ?? DEFAULT_EMPTY_ARRAY;\n const length = props.length ?? data.length;\n\n // configure common custom features\n const columnFreezing = useTableColumnFreezing(options.enableColumnFreezing);\n const columnOrdering = useTableColumnOrdering(options.enableColumnOrdering);\n const fontSize = useTableFontSize(options.enableFontSize, settings.fontSize);\n const footer = useTableFooter(options.enableFooter);\n const printing = useTablePrinting(options.enablePrinting, safeId, props.onPrint);\n const rowActive = useTableRowActive(options.enableRowActive, props.defaultRowActiveIndex, ref);\n const rowActions = useTableRowActions<TType>(options.enableRowActions, props.rowActions, props.rowActionsLength);\n const rowClick = useTableRowClick<TType>(options.enableRowClick, props.onRowClick);\n const rowDrag = useTableRowDrag<TType>(options.enableRowDrag && !meta?.editing?.isEditing, props.onRowDrag);\n const rowDrop = useTableRowDrop<TType>(options.enableRowDrop, props.onRowDrop);\n const rowExpansion = useTableRowExpansion<TType>(\n options.enableRowExpansion,\n options.enableRowExpansionAll,\n props.rowExpansionRenderer\n );\n const rowGoto = useTableRowGoto(options.enableRowGoto, props.onRowGoto);\n const rowGroups = useTableRowGroups(props.rowActionsForGroup);\n const rowHeight = useTableRowHeight(options.enableRowHeight, settings.rowHeight);\n const controlledSelectedRows = React.useMemo(() => {\n if (props.selectedRows === undefined) {\n return undefined;\n }\n\n return Object.fromEntries(props.selectedRows.map(id => [String(id), true]));\n }, [props.selectedRows]);\n const rowSelection = useTableRowSelection(!!options.enableRowSelection, controlledSelectedRows);\n const search = useTableSearch(\n options.enableSearch,\n props.onChangeSearch,\n settings.excludeUnmatchedRecordsInSearch,\n props._experimentalDataLoader2\n );\n const server = useTableServerLoading(\n length,\n data,\n props.loadPage,\n props.loadAll,\n props.pages,\n props.pageSize,\n props._experimentalDataLoader2\n );\n\n // TODO: memoise\n // convert jsx column components into valid table columns\n const { columns, ...defaultState } = mapTableChildrenToColumns<TType>(\n props,\n settings,\n options,\n internalColumns,\n localization\n );\n\n // configure initial table state\n const initialState = useReactTableInitialState<TType>(props, columns, settings, defaultState);\n\n // create a react-table instance\n const instance = useReactTable<TType>({\n data,\n columns,\n // configure initial table state\n initialState,\n getCoreRowModel: getCoreRowModel<TType>(),\n // configure react-table built-in features\n ...configureReactTableOptions<TType>(options, props, localization),\n // settings that can be toggled by the user, and therefore require our own state\n enableGlobalFilter: search.enableGlobalFilter,\n // controlled row selection state\n ...(rowSelection.isControlled && rowSelection.controlledSelectedRows\n ? {\n state: {\n rowSelection: rowSelection.controlledSelectedRows,\n },\n onRowSelectionChange: (updaterOrValue: any) => {\n if (!props.onRowSelect) return;\n\n // TanStack Table passes an updater function, not the value directly\n const newSelection =\n typeof updaterOrValue === 'function'\n ? updaterOrValue(rowSelection.controlledSelectedRows ?? {})\n : updaterOrValue;\n\n // Since getRowId is configured with rowIdentityAccessor, we can trust the IDs match.\n // Map selected IDs back to row objects (filtering out undefined for DataLoader v1).\n const selectedIds = Object.keys(newSelection).filter(id => newSelection[id]);\n const selectedRows = data\n .filter((row): row is TType => row !== undefined)\n .filter(row => newSelection[String(row[props.rowIdentityAccessor as keyof TType])]);\n\n props.onRowSelect(selectedRows, selectedIds);\n },\n }\n : {}),\n // custom context\n meta: {\n // spread features from specific implementations\n ...meta,\n columnFreezing,\n columnOrdering,\n fontSize,\n footer,\n length,\n onEvent: props.onEvent,\n printing,\n rowActions: rowActions as any, // no other way around ReturnType<typeof X> not supporting generics\n rowActive,\n rowClick: rowClick as any, // no other way around ReturnType<typeof X> not supporting generics\n rowDrag,\n rowDrop: rowDrop as any, // no other way around ReturnType<typeof X> not supporting generics\n rowExpansion: rowExpansion as any, // no other way around ReturnType<typeof X> not supporting generics\n rowIdentityAccessor: props.rowIdentityAccessor,\n rowGoto,\n rowGroups: rowGroups as any, // no other way around ReturnType<typeof X> not supporting generics\n rowHeight,\n rowSelection,\n search,\n server,\n } as ReactTableMeta<TType> & TMeta,\n });\n\n // state listeners - we have these so that we don't have to control state outside the table\n useTableDataListener(instance, length);\n useTableFilterListener(instance, props.onChangeFilter);\n useTableFontSizeListener(instance);\n useTableRowActiveListener(instance, props.onRowActive);\n useTableRowHeightListener(instance);\n useTableRowSelectionListener(instance, props.onRowSelect);\n useTableSearchListener(instance);\n useTableServerLoadingListener(instance, server.loadPage);\n useTableSettingsListener(instance, setSettings);\n useTableShortcutsListener(instance, ref, props.shortcuts, props.enableLocalKeyboardShortcuts);\n useTableSortingListener(instance, props.onChangeSort);\n\n return {\n id: safeId,\n instance,\n meta: (instance.options.meta ?? {}) as ReactTableMeta<TType> & TMeta,\n state: instance.getState(),\n };\n}\n"],"names":["useLocalization","getTableFeaturePreset","useTableSettings","useTableColumnFreezing","useTableColumnOrdering","useTableFontSize","useTableFooter","useTablePrinting","useTableRowActive","useTableRowActions","useTableRowClick","useTableRowDrag","useTableRowDrop","useTableRowExpansion","useTableRowGoto","useTableRowGroups","useTableRowHeight","useTableRowSelection","useTableSearch","useTableServerLoading","mapTableChildrenToColumns","useReactTableInitialState","useReactTable","getCoreRowModel","configureReactTableOptions","useTableDataListener","useTableFilterListener","useTableFontSizeListener","useTableRowActiveListener","useTableRowHeightListener","useTableRowSelectionListener","useTableSearchListener","useTableServerLoadingListener","useTableSettingsListener","useTableShortcutsListener","useTableSortingListener"],"mappings":"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"}
1
+ {"version":3,"file":"useTableManager.cjs","sources":["../../../../src/primitives/Table/useTableManager/useTableManager.ts"],"sourcesContent":["import type { TableMeta as ReactTableMeta, RowData } from '@tanstack/react-table';\nimport { useReactTable, getCoreRowModel } from '@tanstack/react-table';\nimport React from 'react';\n\nimport { useLocalization } from '@/components';\n\nimport type {\n TableColumnAlignment,\n TableColumnClassNameHandler,\n TableColumnDataType,\n TableColumnDataTypeOptions,\n TableColumnMenu,\n TableColumnRendererControl,\n TableEventHandler,\n TableFilterComparator,\n TableProps,\n TableRef,\n} from '../types';\n\nimport { useTableColumnFreezing } from './features/useTableColumnFreezing';\nimport { useTableColumnOrdering } from './features/useTableColumnOrdering';\nimport { useTableFontSize } from './features/useTableFontSize';\nimport { useTableFooter } from './features/useTableFooter';\nimport { useTablePrinting } from './features/useTablePrinting';\nimport { useTableRowActions } from './features/useTableRowActions';\nimport { useTableRowActive } from './features/useTableRowActive';\nimport { useTableRowClick } from './features/useTableRowClick';\nimport { useTableRowDrag } from './features/useTableRowDrag';\nimport { useTableRowDrop } from './features/useTableRowDrop';\nimport { useTableRowExpansion } from './features/useTableRowExpansion';\nimport { useTableRowGoto } from './features/useTableRowGoto';\nimport { useTableRowGroups } from './features/useTableRowGroups';\nimport { useTableRowHeight } from './features/useTableRowHeight';\nimport { useTableRowSelection } from './features/useTableRowSelection';\nimport { useTableSearch } from './features/useTableSearch';\nimport { useTableServerLoading } from './features/useTableServerLoading';\nimport { useTableSettings } from './features/useTableSettings';\nimport { useTableDataListener } from './listeners/useTableDataListener';\nimport { useTableFilterListener } from './listeners/useTableFilterListener';\nimport { useTableFontSizeListener } from './listeners/useTableFontSizeListener';\nimport { useTableRowActiveListener } from './listeners/useTableRowActiveListener';\nimport { useTableRowHeightListener } from './listeners/useTableRowHeightListener';\nimport { useTableRowSelectionListener } from './listeners/useTableRowSelectionListener';\nimport { useTableSearchListener } from './listeners/useTableSearchListener';\nimport { useTableServerLoadingListener } from './listeners/useTableServerLoadingListener';\nimport { useTableSettingsListener } from './listeners/useTableSettingsListener';\nimport { useTableShortcutsListener } from './listeners/useTableShortcutsListener';\nimport { useTableSortingListener } from './listeners/useTableSortingListener';\nimport type { useTableManagerInternalColumns } from './types';\nimport { getTableFeaturePreset } from './util/presets';\nimport { useReactTableInitialState, configureReactTableOptions, mapTableChildrenToColumns } from './util/setup';\n\n/*\n EDITING THIS FILE? READ ME FIRST!\n\n This is a shared, common hook for multiple tables. It's feature set is specifically chosen to support features\n common across those tables. If you are adding a new feature or changing an existing one, before writing any code\n in this file ask yourself the question - is this specific to a given table, or is it common to all of them.\n If you are unsure, ask your team first.\n*/\n\ndeclare module '@tanstack/table-core' {\n // oxlint-disable-next-line typescript/consistent-type-definitions -- module augmentation requires interface (declaration merging)\n interface TableMeta<TData extends RowData> {\n columnFreezing: ReturnType<typeof useTableColumnFreezing>;\n columnOrdering: ReturnType<typeof useTableColumnOrdering>;\n fontSize: ReturnType<typeof useTableFontSize>;\n footer: ReturnType<typeof useTableFooter>;\n length: number;\n onEvent: TableEventHandler;\n printing: ReturnType<typeof useTablePrinting>;\n rowActions: ReturnType<typeof useTableRowActions>;\n rowActive: ReturnType<typeof useTableRowActive>;\n rowClick: ReturnType<typeof useTableRowClick>;\n rowDrag: ReturnType<typeof useTableRowDrag>;\n rowDrop: ReturnType<typeof useTableRowDrop>;\n rowExpansion: ReturnType<typeof useTableRowExpansion>;\n rowGoto: ReturnType<typeof useTableRowGoto>;\n rowGroups: ReturnType<typeof useTableRowGroups>;\n rowHeight: ReturnType<typeof useTableRowHeight>;\n rowIdentityAccessor: keyof TData;\n rowSelection: ReturnType<typeof useTableRowSelection>;\n search: ReturnType<typeof useTableSearch>;\n server: ReturnType<typeof useTableServerLoading>;\n }\n\n // oxlint-disable-next-line no-unused-vars, typescript/consistent-type-definitions -- module augmentation requires interface (declaration merging)\n interface ColumnMeta<TData extends RowData, TValue> {\n align?: TableColumnAlignment;\n className?: TableColumnClassNameHandler<TData>;\n control?: TableColumnRendererControl<TData>;\n dataType?: TableColumnDataType;\n dataTypeOptions?: TableColumnDataTypeOptions;\n defaultWidth?: number;\n emptyState?: React.ReactNode;\n enableEditing?: boolean;\n enableOrdering?: boolean;\n enablePrinting?: boolean;\n enableSearch?: boolean;\n enableTruncate?: boolean;\n filters?: TableFilterComparator[];\n header: string;\n headerClassName?: string;\n menu?: TableColumnMenu;\n tooltip?: string;\n }\n}\n\n// Placed this array outside the hook to avoid creating a new array reference on each hook re-render\nconst DEFAULT_EMPTY_ARRAY: unknown[] = [];\n\nexport function useTableManager<TType = unknown, TMeta = object>(\n props: TableProps<TType>,\n ref: React.RefObject<TableRef>,\n meta?: Partial<ReactTableMeta<TType>> & TMeta,\n internalColumns?: useTableManagerInternalColumns<TType>\n) {\n const localization = useLocalization();\n // CSS.escape would be best here, but it doesn't seem to work very well\n const safeId = props.id.replace('.', '_');\n // configure table options, merging props with presets\n const options = getTableFeaturePreset(props);\n\n // load any persisted table settings and merge them with any defaults\n const [settings, setSettings] = useTableSettings(\n options.enableSaveSettings,\n safeId,\n props.defaultSettings,\n props.onChangeSettings,\n props.enableSaveSettingsLocally\n );\n\n // ensure data is always valid\n const data = props.data ?? DEFAULT_EMPTY_ARRAY;\n const length = props.length ?? data.length;\n\n // configure common custom features\n const columnFreezing = useTableColumnFreezing(options.enableColumnFreezing);\n const columnOrdering = useTableColumnOrdering(options.enableColumnOrdering);\n const fontSize = useTableFontSize(options.enableFontSize, settings.fontSize);\n const footer = useTableFooter(options.enableFooter);\n const printing = useTablePrinting(options.enablePrinting, safeId, props.onPrint);\n const rowActive = useTableRowActive(options.enableRowActive, props.defaultRowActiveIndex, ref);\n const rowActions = useTableRowActions<TType>(options.enableRowActions, props.rowActions, props.rowActionsLength);\n const rowClick = useTableRowClick<TType>(options.enableRowClick, props.onRowClick);\n const rowDrag = useTableRowDrag<TType>(options.enableRowDrag && !meta?.editing?.isEditing, props.onRowDrag);\n const rowDrop = useTableRowDrop<TType>(options.enableRowDrop, props.onRowDrop);\n const rowExpansion = useTableRowExpansion<TType>(\n options.enableRowExpansion,\n options.enableRowExpansionAll,\n props.rowExpansionRenderer\n );\n const rowGoto = useTableRowGoto(options.enableRowGoto, props.onRowGoto);\n const rowGroups = useTableRowGroups(props.rowActionsForGroup);\n const rowHeight = useTableRowHeight(options.enableRowHeight, settings.rowHeight);\n const controlledSelectedRows = React.useMemo(() => {\n if (props.selectedRows === undefined) {\n return undefined;\n }\n\n return Object.fromEntries(props.selectedRows.map(id => [String(id), true]));\n }, [props.selectedRows]);\n const rowSelection = useTableRowSelection(!!options.enableRowSelection, controlledSelectedRows);\n const search = useTableSearch(\n options.enableSearch,\n props.onChangeSearch,\n settings.excludeUnmatchedRecordsInSearch,\n props._experimentalDataLoader2\n );\n const server = useTableServerLoading(\n length,\n data,\n props.loadPage,\n props.loadAll,\n props.pages,\n props.pageSize,\n props._experimentalDataLoader2\n );\n\n // TODO: memoise\n // convert jsx column components into valid table columns\n const { columns, ...defaultState } = mapTableChildrenToColumns<TType>(\n props,\n settings,\n options,\n internalColumns,\n localization\n );\n\n // configure initial table state\n const initialState = useReactTableInitialState<TType>(props, columns, settings, defaultState);\n\n // create a react-table instance\n const instance = useReactTable<TType>({\n data,\n columns,\n // configure initial table state\n initialState,\n getCoreRowModel: getCoreRowModel<TType>(),\n // configure react-table built-in features\n ...configureReactTableOptions<TType>(options, props, localization),\n // settings that can be toggled by the user, and therefore require our own state\n enableGlobalFilter: search.enableGlobalFilter,\n // controlled row selection state\n ...(rowSelection.isControlled && rowSelection.controlledSelectedRows\n ? {\n state: {\n rowSelection: rowSelection.controlledSelectedRows,\n },\n onRowSelectionChange: (updaterOrValue: any) => {\n if (!props.onRowSelect) return;\n\n // TanStack Table passes an updater function, not the value directly\n const newSelection =\n typeof updaterOrValue === 'function'\n ? updaterOrValue(rowSelection.controlledSelectedRows ?? {})\n : updaterOrValue;\n\n // Since getRowId is configured with rowIdentityAccessor, we can trust the IDs match.\n // Map selected IDs back to row objects (filtering out undefined for DataLoader v1).\n const selectedIds = Object.keys(newSelection).filter(id => newSelection[id]);\n const selectedRows = data\n .filter((row): row is TType => row !== undefined)\n .filter(row => newSelection[String(row[props.rowIdentityAccessor as keyof TType])]);\n\n props.onRowSelect(selectedRows, selectedIds);\n },\n }\n : {}),\n // custom context\n meta: {\n // spread features from specific implementations\n ...meta,\n columnFreezing,\n columnOrdering,\n fontSize,\n footer,\n length,\n onEvent: props.onEvent,\n printing,\n rowActions: rowActions as any, // no other way around ReturnType<typeof X> not supporting generics\n rowActive,\n rowClick: rowClick as any, // no other way around ReturnType<typeof X> not supporting generics\n rowDrag,\n rowDrop: rowDrop as any, // no other way around ReturnType<typeof X> not supporting generics\n rowExpansion: rowExpansion as any, // no other way around ReturnType<typeof X> not supporting generics\n rowIdentityAccessor: props.rowIdentityAccessor,\n rowGoto,\n rowGroups: rowGroups as any, // no other way around ReturnType<typeof X> not supporting generics\n rowHeight,\n rowSelection,\n search,\n server,\n } as ReactTableMeta<TType> & TMeta,\n });\n\n // state listeners - we have these so that we don't have to control state outside the table\n useTableDataListener(instance, length);\n useTableFilterListener(instance, props.onChangeFilter);\n useTableFontSizeListener(instance);\n useTableRowActiveListener(instance, props.onRowActive);\n useTableRowHeightListener(instance);\n useTableRowSelectionListener(instance, props.onRowSelect);\n useTableSearchListener(instance);\n useTableServerLoadingListener(instance, server.loadPage);\n useTableSettingsListener(instance, setSettings);\n useTableShortcutsListener(instance, ref, props.shortcuts, props.enableLocalKeyboardShortcuts);\n useTableSortingListener(instance, props.onChangeSort);\n\n return {\n id: safeId,\n instance,\n meta: (instance.options.meta ?? {}) as ReactTableMeta<TType> & TMeta,\n state: instance.getState(),\n };\n}\n"],"names":["useLocalization","getTableFeaturePreset","useTableSettings","useTableColumnFreezing","useTableColumnOrdering","useTableFontSize","useTableFooter","useTablePrinting","useTableRowActive","useTableRowActions","useTableRowClick","useTableRowDrag","useTableRowDrop","useTableRowExpansion","useTableRowGoto","useTableRowGroups","useTableRowHeight","useTableRowSelection","useTableSearch","useTableServerLoading","mapTableChildrenToColumns","useReactTableInitialState","useReactTable","getCoreRowModel","configureReactTableOptions","useTableDataListener","useTableFilterListener","useTableFontSizeListener","useTableRowActiveListener","useTableRowHeightListener","useTableRowSelectionListener","useTableSearchListener","useTableServerLoadingListener","useTableSettingsListener","useTableShortcutsListener","useTableSortingListener"],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  import { useReactTable, getCoreRowModel } from "@tanstack/react-table";
2
2
  import React__default from "react";
3
- import { useLocalization } from "../../../components/Provider/Localization.js";
4
3
  import { useTableColumnFreezing } from "./features/useTableColumnFreezing.js";
5
4
  import { useTableColumnOrdering } from "./features/useTableColumnOrdering.js";
6
5
  import { useTableFontSize } from "./features/useTableFontSize.js";
@@ -32,6 +31,7 @@ import { useTableShortcutsListener } from "./listeners/useTableShortcutsListener
32
31
  import { useTableSortingListener } from "./listeners/useTableSortingListener.js";
33
32
  import { getTableFeaturePreset } from "./util/presets.js";
34
33
  import { mapTableChildrenToColumns, useReactTableInitialState, configureReactTableOptions } from "./util/setup.js";
34
+ import { useLocalization } from "../../../components/Provider/Localization.js";
35
35
  const DEFAULT_EMPTY_ARRAY = [];
36
36
  function useTableManager(props, ref, meta, internalColumns) {
37
37
  const localization = useLocalization();
@@ -1 +1 @@
1
- {"version":3,"file":"useTableManager.js","sources":["../../../../src/primitives/Table/useTableManager/useTableManager.ts"],"sourcesContent":["import type { TableMeta as ReactTableMeta, RowData } from '@tanstack/react-table';\nimport { useReactTable, getCoreRowModel } from '@tanstack/react-table';\nimport React from 'react';\n\nimport { useLocalization } from '../../../components/Provider/Localization';\nimport type {\n TableColumnAlignment,\n TableColumnClassNameHandler,\n TableColumnDataType,\n TableColumnDataTypeOptions,\n TableColumnMenu,\n TableColumnRendererControl,\n TableEventHandler,\n TableFilterComparator,\n TableProps,\n TableRef,\n} from '../types';\n\nimport { useTableColumnFreezing } from './features/useTableColumnFreezing';\nimport { useTableColumnOrdering } from './features/useTableColumnOrdering';\nimport { useTableFontSize } from './features/useTableFontSize';\nimport { useTableFooter } from './features/useTableFooter';\nimport { useTablePrinting } from './features/useTablePrinting';\nimport { useTableRowActions } from './features/useTableRowActions';\nimport { useTableRowActive } from './features/useTableRowActive';\nimport { useTableRowClick } from './features/useTableRowClick';\nimport { useTableRowDrag } from './features/useTableRowDrag';\nimport { useTableRowDrop } from './features/useTableRowDrop';\nimport { useTableRowExpansion } from './features/useTableRowExpansion';\nimport { useTableRowGoto } from './features/useTableRowGoto';\nimport { useTableRowGroups } from './features/useTableRowGroups';\nimport { useTableRowHeight } from './features/useTableRowHeight';\nimport { useTableRowSelection } from './features/useTableRowSelection';\nimport { useTableSearch } from './features/useTableSearch';\nimport { useTableServerLoading } from './features/useTableServerLoading';\nimport { useTableSettings } from './features/useTableSettings';\nimport { useTableDataListener } from './listeners/useTableDataListener';\nimport { useTableFilterListener } from './listeners/useTableFilterListener';\nimport { useTableFontSizeListener } from './listeners/useTableFontSizeListener';\nimport { useTableRowActiveListener } from './listeners/useTableRowActiveListener';\nimport { useTableRowHeightListener } from './listeners/useTableRowHeightListener';\nimport { useTableRowSelectionListener } from './listeners/useTableRowSelectionListener';\nimport { useTableSearchListener } from './listeners/useTableSearchListener';\nimport { useTableServerLoadingListener } from './listeners/useTableServerLoadingListener';\nimport { useTableSettingsListener } from './listeners/useTableSettingsListener';\nimport { useTableShortcutsListener } from './listeners/useTableShortcutsListener';\nimport { useTableSortingListener } from './listeners/useTableSortingListener';\nimport type { useTableManagerInternalColumns } from './types';\nimport { getTableFeaturePreset } from './util/presets';\nimport { useReactTableInitialState, configureReactTableOptions, mapTableChildrenToColumns } from './util/setup';\n\n/*\n EDITING THIS FILE? READ ME FIRST!\n\n This is a shared, common hook for multiple tables. It's feature set is specifically chosen to support features\n common across those tables. If you are adding a new feature or changing an existing one, before writing any code\n in this file ask yourself the question - is this specific to a given table, or is it common to all of them.\n If you are unsure, ask your team first.\n*/\n\ndeclare module '@tanstack/table-core' {\n // oxlint-disable-next-line typescript/consistent-type-definitions -- module augmentation requires interface (declaration merging)\n interface TableMeta<TData extends RowData> {\n columnFreezing: ReturnType<typeof useTableColumnFreezing>;\n columnOrdering: ReturnType<typeof useTableColumnOrdering>;\n fontSize: ReturnType<typeof useTableFontSize>;\n footer: ReturnType<typeof useTableFooter>;\n length: number;\n onEvent: TableEventHandler;\n printing: ReturnType<typeof useTablePrinting>;\n rowActions: ReturnType<typeof useTableRowActions>;\n rowActive: ReturnType<typeof useTableRowActive>;\n rowClick: ReturnType<typeof useTableRowClick>;\n rowDrag: ReturnType<typeof useTableRowDrag>;\n rowDrop: ReturnType<typeof useTableRowDrop>;\n rowExpansion: ReturnType<typeof useTableRowExpansion>;\n rowGoto: ReturnType<typeof useTableRowGoto>;\n rowGroups: ReturnType<typeof useTableRowGroups>;\n rowHeight: ReturnType<typeof useTableRowHeight>;\n rowIdentityAccessor: keyof TData;\n rowSelection: ReturnType<typeof useTableRowSelection>;\n search: ReturnType<typeof useTableSearch>;\n server: ReturnType<typeof useTableServerLoading>;\n }\n\n // oxlint-disable-next-line no-unused-vars, typescript/consistent-type-definitions -- module augmentation requires interface (declaration merging)\n interface ColumnMeta<TData extends RowData, TValue> {\n align?: TableColumnAlignment;\n className?: TableColumnClassNameHandler<TData>;\n control?: TableColumnRendererControl<TData>;\n dataType?: TableColumnDataType;\n dataTypeOptions?: TableColumnDataTypeOptions;\n defaultWidth?: number;\n emptyState?: React.ReactNode;\n enableEditing?: boolean;\n enableOrdering?: boolean;\n enablePrinting?: boolean;\n enableSearch?: boolean;\n enableTruncate?: boolean;\n filters?: TableFilterComparator[];\n header: string;\n headerClassName?: string;\n menu?: TableColumnMenu;\n tooltip?: string;\n }\n}\n\n// Placed this array outside the hook to avoid creating a new array reference on each hook re-render\nconst DEFAULT_EMPTY_ARRAY: unknown[] = [];\n\nexport function useTableManager<TType = unknown, TMeta = object>(\n props: TableProps<TType>,\n ref: React.RefObject<TableRef>,\n meta?: Partial<ReactTableMeta<TType>> & TMeta,\n internalColumns?: useTableManagerInternalColumns<TType>\n) {\n const localization = useLocalization();\n // CSS.escape would be best here, but it doesn't seem to work very well\n const safeId = props.id.replace('.', '_');\n // configure table options, merging props with presets\n const options = getTableFeaturePreset(props);\n\n // load any persisted table settings and merge them with any defaults\n const [settings, setSettings] = useTableSettings(\n options.enableSaveSettings,\n safeId,\n props.defaultSettings,\n props.onChangeSettings,\n props.enableSaveSettingsLocally\n );\n\n // ensure data is always valid\n const data = props.data ?? DEFAULT_EMPTY_ARRAY;\n const length = props.length ?? data.length;\n\n // configure common custom features\n const columnFreezing = useTableColumnFreezing(options.enableColumnFreezing);\n const columnOrdering = useTableColumnOrdering(options.enableColumnOrdering);\n const fontSize = useTableFontSize(options.enableFontSize, settings.fontSize);\n const footer = useTableFooter(options.enableFooter);\n const printing = useTablePrinting(options.enablePrinting, safeId, props.onPrint);\n const rowActive = useTableRowActive(options.enableRowActive, props.defaultRowActiveIndex, ref);\n const rowActions = useTableRowActions<TType>(options.enableRowActions, props.rowActions, props.rowActionsLength);\n const rowClick = useTableRowClick<TType>(options.enableRowClick, props.onRowClick);\n const rowDrag = useTableRowDrag<TType>(options.enableRowDrag && !meta?.editing?.isEditing, props.onRowDrag);\n const rowDrop = useTableRowDrop<TType>(options.enableRowDrop, props.onRowDrop);\n const rowExpansion = useTableRowExpansion<TType>(\n options.enableRowExpansion,\n options.enableRowExpansionAll,\n props.rowExpansionRenderer\n );\n const rowGoto = useTableRowGoto(options.enableRowGoto, props.onRowGoto);\n const rowGroups = useTableRowGroups(props.rowActionsForGroup);\n const rowHeight = useTableRowHeight(options.enableRowHeight, settings.rowHeight);\n const controlledSelectedRows = React.useMemo(() => {\n if (props.selectedRows === undefined) {\n return undefined;\n }\n\n return Object.fromEntries(props.selectedRows.map(id => [String(id), true]));\n }, [props.selectedRows]);\n const rowSelection = useTableRowSelection(!!options.enableRowSelection, controlledSelectedRows);\n const search = useTableSearch(\n options.enableSearch,\n props.onChangeSearch,\n settings.excludeUnmatchedRecordsInSearch,\n props._experimentalDataLoader2\n );\n const server = useTableServerLoading(\n length,\n data,\n props.loadPage,\n props.loadAll,\n props.pages,\n props.pageSize,\n props._experimentalDataLoader2\n );\n\n // TODO: memoise\n // convert jsx column components into valid table columns\n const { columns, ...defaultState } = mapTableChildrenToColumns<TType>(\n props,\n settings,\n options,\n internalColumns,\n localization\n );\n\n // configure initial table state\n const initialState = useReactTableInitialState<TType>(props, columns, settings, defaultState);\n\n // create a react-table instance\n const instance = useReactTable<TType>({\n data,\n columns,\n // configure initial table state\n initialState,\n getCoreRowModel: getCoreRowModel<TType>(),\n // configure react-table built-in features\n ...configureReactTableOptions<TType>(options, props, localization),\n // settings that can be toggled by the user, and therefore require our own state\n enableGlobalFilter: search.enableGlobalFilter,\n // controlled row selection state\n ...(rowSelection.isControlled && rowSelection.controlledSelectedRows\n ? {\n state: {\n rowSelection: rowSelection.controlledSelectedRows,\n },\n onRowSelectionChange: (updaterOrValue: any) => {\n if (!props.onRowSelect) return;\n\n // TanStack Table passes an updater function, not the value directly\n const newSelection =\n typeof updaterOrValue === 'function'\n ? updaterOrValue(rowSelection.controlledSelectedRows ?? {})\n : updaterOrValue;\n\n // Since getRowId is configured with rowIdentityAccessor, we can trust the IDs match.\n // Map selected IDs back to row objects (filtering out undefined for DataLoader v1).\n const selectedIds = Object.keys(newSelection).filter(id => newSelection[id]);\n const selectedRows = data\n .filter((row): row is TType => row !== undefined)\n .filter(row => newSelection[String(row[props.rowIdentityAccessor as keyof TType])]);\n\n props.onRowSelect(selectedRows, selectedIds);\n },\n }\n : {}),\n // custom context\n meta: {\n // spread features from specific implementations\n ...meta,\n columnFreezing,\n columnOrdering,\n fontSize,\n footer,\n length,\n onEvent: props.onEvent,\n printing,\n rowActions: rowActions as any, // no other way around ReturnType<typeof X> not supporting generics\n rowActive,\n rowClick: rowClick as any, // no other way around ReturnType<typeof X> not supporting generics\n rowDrag,\n rowDrop: rowDrop as any, // no other way around ReturnType<typeof X> not supporting generics\n rowExpansion: rowExpansion as any, // no other way around ReturnType<typeof X> not supporting generics\n rowIdentityAccessor: props.rowIdentityAccessor,\n rowGoto,\n rowGroups: rowGroups as any, // no other way around ReturnType<typeof X> not supporting generics\n rowHeight,\n rowSelection,\n search,\n server,\n } as ReactTableMeta<TType> & TMeta,\n });\n\n // state listeners - we have these so that we don't have to control state outside the table\n useTableDataListener(instance, length);\n useTableFilterListener(instance, props.onChangeFilter);\n useTableFontSizeListener(instance);\n useTableRowActiveListener(instance, props.onRowActive);\n useTableRowHeightListener(instance);\n useTableRowSelectionListener(instance, props.onRowSelect);\n useTableSearchListener(instance);\n useTableServerLoadingListener(instance, server.loadPage);\n useTableSettingsListener(instance, setSettings);\n useTableShortcutsListener(instance, ref, props.shortcuts, props.enableLocalKeyboardShortcuts);\n useTableSortingListener(instance, props.onChangeSort);\n\n return {\n id: safeId,\n instance,\n meta: (instance.options.meta ?? {}) as ReactTableMeta<TType> & TMeta,\n state: instance.getState(),\n };\n}\n"],"names":["React"],"mappings":"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"}
1
+ {"version":3,"file":"useTableManager.js","sources":["../../../../src/primitives/Table/useTableManager/useTableManager.ts"],"sourcesContent":["import type { TableMeta as ReactTableMeta, RowData } from '@tanstack/react-table';\nimport { useReactTable, getCoreRowModel } from '@tanstack/react-table';\nimport React from 'react';\n\nimport { useLocalization } from '@/components';\n\nimport type {\n TableColumnAlignment,\n TableColumnClassNameHandler,\n TableColumnDataType,\n TableColumnDataTypeOptions,\n TableColumnMenu,\n TableColumnRendererControl,\n TableEventHandler,\n TableFilterComparator,\n TableProps,\n TableRef,\n} from '../types';\n\nimport { useTableColumnFreezing } from './features/useTableColumnFreezing';\nimport { useTableColumnOrdering } from './features/useTableColumnOrdering';\nimport { useTableFontSize } from './features/useTableFontSize';\nimport { useTableFooter } from './features/useTableFooter';\nimport { useTablePrinting } from './features/useTablePrinting';\nimport { useTableRowActions } from './features/useTableRowActions';\nimport { useTableRowActive } from './features/useTableRowActive';\nimport { useTableRowClick } from './features/useTableRowClick';\nimport { useTableRowDrag } from './features/useTableRowDrag';\nimport { useTableRowDrop } from './features/useTableRowDrop';\nimport { useTableRowExpansion } from './features/useTableRowExpansion';\nimport { useTableRowGoto } from './features/useTableRowGoto';\nimport { useTableRowGroups } from './features/useTableRowGroups';\nimport { useTableRowHeight } from './features/useTableRowHeight';\nimport { useTableRowSelection } from './features/useTableRowSelection';\nimport { useTableSearch } from './features/useTableSearch';\nimport { useTableServerLoading } from './features/useTableServerLoading';\nimport { useTableSettings } from './features/useTableSettings';\nimport { useTableDataListener } from './listeners/useTableDataListener';\nimport { useTableFilterListener } from './listeners/useTableFilterListener';\nimport { useTableFontSizeListener } from './listeners/useTableFontSizeListener';\nimport { useTableRowActiveListener } from './listeners/useTableRowActiveListener';\nimport { useTableRowHeightListener } from './listeners/useTableRowHeightListener';\nimport { useTableRowSelectionListener } from './listeners/useTableRowSelectionListener';\nimport { useTableSearchListener } from './listeners/useTableSearchListener';\nimport { useTableServerLoadingListener } from './listeners/useTableServerLoadingListener';\nimport { useTableSettingsListener } from './listeners/useTableSettingsListener';\nimport { useTableShortcutsListener } from './listeners/useTableShortcutsListener';\nimport { useTableSortingListener } from './listeners/useTableSortingListener';\nimport type { useTableManagerInternalColumns } from './types';\nimport { getTableFeaturePreset } from './util/presets';\nimport { useReactTableInitialState, configureReactTableOptions, mapTableChildrenToColumns } from './util/setup';\n\n/*\n EDITING THIS FILE? READ ME FIRST!\n\n This is a shared, common hook for multiple tables. It's feature set is specifically chosen to support features\n common across those tables. If you are adding a new feature or changing an existing one, before writing any code\n in this file ask yourself the question - is this specific to a given table, or is it common to all of them.\n If you are unsure, ask your team first.\n*/\n\ndeclare module '@tanstack/table-core' {\n // oxlint-disable-next-line typescript/consistent-type-definitions -- module augmentation requires interface (declaration merging)\n interface TableMeta<TData extends RowData> {\n columnFreezing: ReturnType<typeof useTableColumnFreezing>;\n columnOrdering: ReturnType<typeof useTableColumnOrdering>;\n fontSize: ReturnType<typeof useTableFontSize>;\n footer: ReturnType<typeof useTableFooter>;\n length: number;\n onEvent: TableEventHandler;\n printing: ReturnType<typeof useTablePrinting>;\n rowActions: ReturnType<typeof useTableRowActions>;\n rowActive: ReturnType<typeof useTableRowActive>;\n rowClick: ReturnType<typeof useTableRowClick>;\n rowDrag: ReturnType<typeof useTableRowDrag>;\n rowDrop: ReturnType<typeof useTableRowDrop>;\n rowExpansion: ReturnType<typeof useTableRowExpansion>;\n rowGoto: ReturnType<typeof useTableRowGoto>;\n rowGroups: ReturnType<typeof useTableRowGroups>;\n rowHeight: ReturnType<typeof useTableRowHeight>;\n rowIdentityAccessor: keyof TData;\n rowSelection: ReturnType<typeof useTableRowSelection>;\n search: ReturnType<typeof useTableSearch>;\n server: ReturnType<typeof useTableServerLoading>;\n }\n\n // oxlint-disable-next-line no-unused-vars, typescript/consistent-type-definitions -- module augmentation requires interface (declaration merging)\n interface ColumnMeta<TData extends RowData, TValue> {\n align?: TableColumnAlignment;\n className?: TableColumnClassNameHandler<TData>;\n control?: TableColumnRendererControl<TData>;\n dataType?: TableColumnDataType;\n dataTypeOptions?: TableColumnDataTypeOptions;\n defaultWidth?: number;\n emptyState?: React.ReactNode;\n enableEditing?: boolean;\n enableOrdering?: boolean;\n enablePrinting?: boolean;\n enableSearch?: boolean;\n enableTruncate?: boolean;\n filters?: TableFilterComparator[];\n header: string;\n headerClassName?: string;\n menu?: TableColumnMenu;\n tooltip?: string;\n }\n}\n\n// Placed this array outside the hook to avoid creating a new array reference on each hook re-render\nconst DEFAULT_EMPTY_ARRAY: unknown[] = [];\n\nexport function useTableManager<TType = unknown, TMeta = object>(\n props: TableProps<TType>,\n ref: React.RefObject<TableRef>,\n meta?: Partial<ReactTableMeta<TType>> & TMeta,\n internalColumns?: useTableManagerInternalColumns<TType>\n) {\n const localization = useLocalization();\n // CSS.escape would be best here, but it doesn't seem to work very well\n const safeId = props.id.replace('.', '_');\n // configure table options, merging props with presets\n const options = getTableFeaturePreset(props);\n\n // load any persisted table settings and merge them with any defaults\n const [settings, setSettings] = useTableSettings(\n options.enableSaveSettings,\n safeId,\n props.defaultSettings,\n props.onChangeSettings,\n props.enableSaveSettingsLocally\n );\n\n // ensure data is always valid\n const data = props.data ?? DEFAULT_EMPTY_ARRAY;\n const length = props.length ?? data.length;\n\n // configure common custom features\n const columnFreezing = useTableColumnFreezing(options.enableColumnFreezing);\n const columnOrdering = useTableColumnOrdering(options.enableColumnOrdering);\n const fontSize = useTableFontSize(options.enableFontSize, settings.fontSize);\n const footer = useTableFooter(options.enableFooter);\n const printing = useTablePrinting(options.enablePrinting, safeId, props.onPrint);\n const rowActive = useTableRowActive(options.enableRowActive, props.defaultRowActiveIndex, ref);\n const rowActions = useTableRowActions<TType>(options.enableRowActions, props.rowActions, props.rowActionsLength);\n const rowClick = useTableRowClick<TType>(options.enableRowClick, props.onRowClick);\n const rowDrag = useTableRowDrag<TType>(options.enableRowDrag && !meta?.editing?.isEditing, props.onRowDrag);\n const rowDrop = useTableRowDrop<TType>(options.enableRowDrop, props.onRowDrop);\n const rowExpansion = useTableRowExpansion<TType>(\n options.enableRowExpansion,\n options.enableRowExpansionAll,\n props.rowExpansionRenderer\n );\n const rowGoto = useTableRowGoto(options.enableRowGoto, props.onRowGoto);\n const rowGroups = useTableRowGroups(props.rowActionsForGroup);\n const rowHeight = useTableRowHeight(options.enableRowHeight, settings.rowHeight);\n const controlledSelectedRows = React.useMemo(() => {\n if (props.selectedRows === undefined) {\n return undefined;\n }\n\n return Object.fromEntries(props.selectedRows.map(id => [String(id), true]));\n }, [props.selectedRows]);\n const rowSelection = useTableRowSelection(!!options.enableRowSelection, controlledSelectedRows);\n const search = useTableSearch(\n options.enableSearch,\n props.onChangeSearch,\n settings.excludeUnmatchedRecordsInSearch,\n props._experimentalDataLoader2\n );\n const server = useTableServerLoading(\n length,\n data,\n props.loadPage,\n props.loadAll,\n props.pages,\n props.pageSize,\n props._experimentalDataLoader2\n );\n\n // TODO: memoise\n // convert jsx column components into valid table columns\n const { columns, ...defaultState } = mapTableChildrenToColumns<TType>(\n props,\n settings,\n options,\n internalColumns,\n localization\n );\n\n // configure initial table state\n const initialState = useReactTableInitialState<TType>(props, columns, settings, defaultState);\n\n // create a react-table instance\n const instance = useReactTable<TType>({\n data,\n columns,\n // configure initial table state\n initialState,\n getCoreRowModel: getCoreRowModel<TType>(),\n // configure react-table built-in features\n ...configureReactTableOptions<TType>(options, props, localization),\n // settings that can be toggled by the user, and therefore require our own state\n enableGlobalFilter: search.enableGlobalFilter,\n // controlled row selection state\n ...(rowSelection.isControlled && rowSelection.controlledSelectedRows\n ? {\n state: {\n rowSelection: rowSelection.controlledSelectedRows,\n },\n onRowSelectionChange: (updaterOrValue: any) => {\n if (!props.onRowSelect) return;\n\n // TanStack Table passes an updater function, not the value directly\n const newSelection =\n typeof updaterOrValue === 'function'\n ? updaterOrValue(rowSelection.controlledSelectedRows ?? {})\n : updaterOrValue;\n\n // Since getRowId is configured with rowIdentityAccessor, we can trust the IDs match.\n // Map selected IDs back to row objects (filtering out undefined for DataLoader v1).\n const selectedIds = Object.keys(newSelection).filter(id => newSelection[id]);\n const selectedRows = data\n .filter((row): row is TType => row !== undefined)\n .filter(row => newSelection[String(row[props.rowIdentityAccessor as keyof TType])]);\n\n props.onRowSelect(selectedRows, selectedIds);\n },\n }\n : {}),\n // custom context\n meta: {\n // spread features from specific implementations\n ...meta,\n columnFreezing,\n columnOrdering,\n fontSize,\n footer,\n length,\n onEvent: props.onEvent,\n printing,\n rowActions: rowActions as any, // no other way around ReturnType<typeof X> not supporting generics\n rowActive,\n rowClick: rowClick as any, // no other way around ReturnType<typeof X> not supporting generics\n rowDrag,\n rowDrop: rowDrop as any, // no other way around ReturnType<typeof X> not supporting generics\n rowExpansion: rowExpansion as any, // no other way around ReturnType<typeof X> not supporting generics\n rowIdentityAccessor: props.rowIdentityAccessor,\n rowGoto,\n rowGroups: rowGroups as any, // no other way around ReturnType<typeof X> not supporting generics\n rowHeight,\n rowSelection,\n search,\n server,\n } as ReactTableMeta<TType> & TMeta,\n });\n\n // state listeners - we have these so that we don't have to control state outside the table\n useTableDataListener(instance, length);\n useTableFilterListener(instance, props.onChangeFilter);\n useTableFontSizeListener(instance);\n useTableRowActiveListener(instance, props.onRowActive);\n useTableRowHeightListener(instance);\n useTableRowSelectionListener(instance, props.onRowSelect);\n useTableSearchListener(instance);\n useTableServerLoadingListener(instance, server.loadPage);\n useTableSettingsListener(instance, setSettings);\n useTableShortcutsListener(instance, ref, props.shortcuts, props.enableLocalKeyboardShortcuts);\n useTableSortingListener(instance, props.onChangeSort);\n\n return {\n id: safeId,\n instance,\n meta: (instance.options.meta ?? {}) as ReactTableMeta<TType> & TMeta,\n state: instance.getState(),\n };\n}\n"],"names":["React"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"columns.cjs","sources":["../../../../../src/primitives/Table/useTableManager/util/columns.ts"],"sourcesContent":["import type {\n ColumnDef as ReactTableColumnDef,\n GroupColumnDef as ReactTableGroupColumnDef,\n VisibilityState as ReactTableVisibilityState,\n} from '@tanstack/react-table';\n\nimport type { Localization } from '../../../../components/Provider/Localization';\nimport type { FontSize } from '../../../../types';\nimport type { TableColumnDataType, TableColumnDataTypeOptions } from '../../types';\n\nimport { isMatched } from './search';\n\nexport function isInternalColumn(id: string | undefined) {\n return id?.startsWith('__');\n}\n\n// column widths\nexport const CELL_MIN_WIDTH: Record<FontSize, number> = {\n small: 57,\n medium: 72,\n large: 83,\n};\n\n// highlighting\nexport function isCellHighlighted<TType = unknown>(\n query: string,\n value: unknown,\n row: TType,\n dataType: TableColumnDataType | undefined,\n dataTypeOptions: TableColumnDataTypeOptions | undefined,\n localization: Localization\n) {\n if (value === undefined || value === null) {\n return false;\n }\n\n return isMatched(query, value, row, dataType, dataTypeOptions, localization);\n}\n\nfunction orderColumn<TType = unknown>(\n column: ReactTableColumnDef<TType>,\n { orderingDisabled, orderingEnabled }: { orderingDisabled: string[]; orderingEnabled: string[] }\n) {\n const groupedColumn = column as ReactTableGroupColumnDef<TType>;\n\n if (Array.isArray(groupedColumn.columns) && groupedColumn.columns.length > 0) {\n groupedColumn.columns.forEach((subcolumn: ReactTableColumnDef<TType>) =>\n orderColumn(subcolumn, { orderingDisabled, orderingEnabled })\n );\n } else if (column.meta?.enableOrdering) {\n orderingEnabled.push(column.id as string);\n } else {\n orderingDisabled.push(column.id as string);\n }\n}\n\n// ordering\nexport function ensureOrdering<TType = unknown>(\n columns: ReactTableColumnDef<TType>[],\n settingsOrder: string[] | undefined,\n pinnedOrder: string[] | undefined = [],\n internalColumnsPinnedToTheRight: string[] = ['__actions']\n): string[] {\n // internal columns come with a defined order\n const internalColumns = columns\n .filter(column => isInternalColumn(column.id) && !internalColumnsPinnedToTheRight.includes(String(column.id)))\n .map(column => column.id) as string[];\n\n // columns with ordering disabled should be moved to the front\n const orderingDisabled: string[] = [];\n let orderingEnabled: string[] = [];\n\n let orderedColumns = columns;\n\n // if settings is defined, make sure the columns that are actual children are sorted by it\n if (Array.isArray(settingsOrder)) {\n orderedColumns = columns.slice().sort(\n // the magic >>> 0 here ensures that columns that aren't found in settings, but are children, are pushed to the end\n // oxlint-disable-next-line no-bitwise, prefer-math-trunc\n (a, b) => (settingsOrder.indexOf(a.id as string) >>> 0) - (settingsOrder.indexOf(b.id as string) >>> 0)\n );\n }\n\n orderedColumns.forEach(column => {\n if (isInternalColumn(column.id)) {\n return;\n }\n\n orderColumn(column, { orderingDisabled, orderingEnabled });\n });\n\n if (settingsOrder && settingsOrder.length > 0) {\n const columnsAbsentInSettingsOrder: string[] = [];\n\n orderingEnabled = orderingEnabled\n .reduce((acc, column) => {\n const index = settingsOrder.indexOf(column);\n if (index > -1) {\n acc[index] = column;\n } else {\n columnsAbsentInSettingsOrder.push(column);\n }\n\n return acc;\n }, [] as string[])\n .filter(column => !!column)\n // Append absent columns at the end\n .concat(columnsAbsentInSettingsOrder);\n }\n\n // if pinned columns are defined, make sure they are sorted first, this ensures state matches the freezing \"upto\" behaviour\n if (Array.isArray(pinnedOrder)) {\n orderingEnabled.sort(\n // the magic >>> 0 here ensures that columns that aren't found in settings, but are children, are pushed to the end\n // oxlint-disable-next-line no-bitwise, prefer-math-trunc\n (a, b) => (pinnedOrder.indexOf(a as string) >>> 0) - (pinnedOrder.indexOf(b as string) >>> 0)\n );\n }\n\n const order = [...internalColumns, ...orderingDisabled, ...orderingEnabled];\n\n // actions should always be last, enforce that\n internalColumnsPinnedToTheRight.forEach(id => {\n if (columns.some(column => column.id === id)) {\n order.push(id);\n }\n });\n\n return order;\n}\n\n// freezing - we use the react-table pinning state, but that requires some mapping between them\nexport function unfreezeAllExternalColumns(leftPinnedState?: string[]): string[] {\n return leftPinnedState?.filter(id => isInternalColumn(id) && id !== '__actions') ?? [];\n}\n\nexport function freezeUptoExternalColumn(index: number, columns: string[]): string[] {\n return columns.slice(0, index + 1);\n}\n\nexport function getHiddenColumns(columnVisibility: ReactTableVisibilityState = {}) {\n return Object.keys(columnVisibility).filter(c => columnVisibility[c] === false);\n}\n"],"names":["isMatched"],"mappings":"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"}
1
+ {"version":3,"file":"columns.cjs","sources":["../../../../../src/primitives/Table/useTableManager/util/columns.ts"],"sourcesContent":["import type {\n ColumnDef as ReactTableColumnDef,\n GroupColumnDef as ReactTableGroupColumnDef,\n VisibilityState as ReactTableVisibilityState,\n} from '@tanstack/react-table';\n\nimport type { Localization } from '@/components';\nimport type { FontSize } from '@/types';\n\nimport type { TableColumnDataType, TableColumnDataTypeOptions } from '../../types';\n\nimport { isMatched } from './search';\n\nexport function isInternalColumn(id: string | undefined) {\n return id?.startsWith('__');\n}\n\n// column widths\nexport const CELL_MIN_WIDTH: Record<FontSize, number> = {\n small: 57,\n medium: 72,\n large: 83,\n};\n\n// highlighting\nexport function isCellHighlighted<TType = unknown>(\n query: string,\n value: unknown,\n row: TType,\n dataType: TableColumnDataType | undefined,\n dataTypeOptions: TableColumnDataTypeOptions | undefined,\n localization: Localization\n) {\n if (value === undefined || value === null) {\n return false;\n }\n\n return isMatched(query, value, row, dataType, dataTypeOptions, localization);\n}\n\nfunction orderColumn<TType = unknown>(\n column: ReactTableColumnDef<TType>,\n { orderingDisabled, orderingEnabled }: { orderingDisabled: string[]; orderingEnabled: string[] }\n) {\n const groupedColumn = column as ReactTableGroupColumnDef<TType>;\n\n if (Array.isArray(groupedColumn.columns) && groupedColumn.columns.length > 0) {\n groupedColumn.columns.forEach((subcolumn: ReactTableColumnDef<TType>) =>\n orderColumn(subcolumn, { orderingDisabled, orderingEnabled })\n );\n } else if (column.meta?.enableOrdering) {\n orderingEnabled.push(column.id as string);\n } else {\n orderingDisabled.push(column.id as string);\n }\n}\n\n// ordering\nexport function ensureOrdering<TType = unknown>(\n columns: ReactTableColumnDef<TType>[],\n settingsOrder: string[] | undefined,\n pinnedOrder: string[] | undefined = [],\n internalColumnsPinnedToTheRight: string[] = ['__actions']\n): string[] {\n // internal columns come with a defined order\n const internalColumns = columns\n .filter(column => isInternalColumn(column.id) && !internalColumnsPinnedToTheRight.includes(String(column.id)))\n .map(column => column.id) as string[];\n\n // columns with ordering disabled should be moved to the front\n const orderingDisabled: string[] = [];\n let orderingEnabled: string[] = [];\n\n let orderedColumns = columns;\n\n // if settings is defined, make sure the columns that are actual children are sorted by it\n if (Array.isArray(settingsOrder)) {\n orderedColumns = columns.slice().sort(\n // the magic >>> 0 here ensures that columns that aren't found in settings, but are children, are pushed to the end\n // oxlint-disable-next-line no-bitwise, prefer-math-trunc\n (a, b) => (settingsOrder.indexOf(a.id as string) >>> 0) - (settingsOrder.indexOf(b.id as string) >>> 0)\n );\n }\n\n orderedColumns.forEach(column => {\n if (isInternalColumn(column.id)) {\n return;\n }\n\n orderColumn(column, { orderingDisabled, orderingEnabled });\n });\n\n if (settingsOrder && settingsOrder.length > 0) {\n const columnsAbsentInSettingsOrder: string[] = [];\n\n orderingEnabled = orderingEnabled\n .reduce((acc, column) => {\n const index = settingsOrder.indexOf(column);\n if (index > -1) {\n acc[index] = column;\n } else {\n columnsAbsentInSettingsOrder.push(column);\n }\n\n return acc;\n }, [] as string[])\n .filter(column => !!column)\n // Append absent columns at the end\n .concat(columnsAbsentInSettingsOrder);\n }\n\n // if pinned columns are defined, make sure they are sorted first, this ensures state matches the freezing \"upto\" behaviour\n if (Array.isArray(pinnedOrder)) {\n orderingEnabled.sort(\n // the magic >>> 0 here ensures that columns that aren't found in settings, but are children, are pushed to the end\n // oxlint-disable-next-line no-bitwise, prefer-math-trunc\n (a, b) => (pinnedOrder.indexOf(a as string) >>> 0) - (pinnedOrder.indexOf(b as string) >>> 0)\n );\n }\n\n const order = [...internalColumns, ...orderingDisabled, ...orderingEnabled];\n\n // actions should always be last, enforce that\n internalColumnsPinnedToTheRight.forEach(id => {\n if (columns.some(column => column.id === id)) {\n order.push(id);\n }\n });\n\n return order;\n}\n\n// freezing - we use the react-table pinning state, but that requires some mapping between them\nexport function unfreezeAllExternalColumns(leftPinnedState?: string[]): string[] {\n return leftPinnedState?.filter(id => isInternalColumn(id) && id !== '__actions') ?? [];\n}\n\nexport function freezeUptoExternalColumn(index: number, columns: string[]): string[] {\n return columns.slice(0, index + 1);\n}\n\nexport function getHiddenColumns(columnVisibility: ReactTableVisibilityState = {}) {\n return Object.keys(columnVisibility).filter(c => columnVisibility[c] === false);\n}\n"],"names":["isMatched"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { ColumnDef as ReactTableColumnDef, VisibilityState as ReactTableVisibilityState } from '@tanstack/react-table';
2
- import { Localization } from '../../../../components/Provider/Localization';
2
+ import { Localization } from '../../../../components';
3
3
  import { FontSize } from '../../../../types';
4
4
  import { TableColumnDataType, TableColumnDataTypeOptions } from '../../types';
5
5
  export declare function isInternalColumn(id: string | undefined): boolean | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"columns.js","sources":["../../../../../src/primitives/Table/useTableManager/util/columns.ts"],"sourcesContent":["import type {\n ColumnDef as ReactTableColumnDef,\n GroupColumnDef as ReactTableGroupColumnDef,\n VisibilityState as ReactTableVisibilityState,\n} from '@tanstack/react-table';\n\nimport type { Localization } from '../../../../components/Provider/Localization';\nimport type { FontSize } from '../../../../types';\nimport type { TableColumnDataType, TableColumnDataTypeOptions } from '../../types';\n\nimport { isMatched } from './search';\n\nexport function isInternalColumn(id: string | undefined) {\n return id?.startsWith('__');\n}\n\n// column widths\nexport const CELL_MIN_WIDTH: Record<FontSize, number> = {\n small: 57,\n medium: 72,\n large: 83,\n};\n\n// highlighting\nexport function isCellHighlighted<TType = unknown>(\n query: string,\n value: unknown,\n row: TType,\n dataType: TableColumnDataType | undefined,\n dataTypeOptions: TableColumnDataTypeOptions | undefined,\n localization: Localization\n) {\n if (value === undefined || value === null) {\n return false;\n }\n\n return isMatched(query, value, row, dataType, dataTypeOptions, localization);\n}\n\nfunction orderColumn<TType = unknown>(\n column: ReactTableColumnDef<TType>,\n { orderingDisabled, orderingEnabled }: { orderingDisabled: string[]; orderingEnabled: string[] }\n) {\n const groupedColumn = column as ReactTableGroupColumnDef<TType>;\n\n if (Array.isArray(groupedColumn.columns) && groupedColumn.columns.length > 0) {\n groupedColumn.columns.forEach((subcolumn: ReactTableColumnDef<TType>) =>\n orderColumn(subcolumn, { orderingDisabled, orderingEnabled })\n );\n } else if (column.meta?.enableOrdering) {\n orderingEnabled.push(column.id as string);\n } else {\n orderingDisabled.push(column.id as string);\n }\n}\n\n// ordering\nexport function ensureOrdering<TType = unknown>(\n columns: ReactTableColumnDef<TType>[],\n settingsOrder: string[] | undefined,\n pinnedOrder: string[] | undefined = [],\n internalColumnsPinnedToTheRight: string[] = ['__actions']\n): string[] {\n // internal columns come with a defined order\n const internalColumns = columns\n .filter(column => isInternalColumn(column.id) && !internalColumnsPinnedToTheRight.includes(String(column.id)))\n .map(column => column.id) as string[];\n\n // columns with ordering disabled should be moved to the front\n const orderingDisabled: string[] = [];\n let orderingEnabled: string[] = [];\n\n let orderedColumns = columns;\n\n // if settings is defined, make sure the columns that are actual children are sorted by it\n if (Array.isArray(settingsOrder)) {\n orderedColumns = columns.slice().sort(\n // the magic >>> 0 here ensures that columns that aren't found in settings, but are children, are pushed to the end\n // oxlint-disable-next-line no-bitwise, prefer-math-trunc\n (a, b) => (settingsOrder.indexOf(a.id as string) >>> 0) - (settingsOrder.indexOf(b.id as string) >>> 0)\n );\n }\n\n orderedColumns.forEach(column => {\n if (isInternalColumn(column.id)) {\n return;\n }\n\n orderColumn(column, { orderingDisabled, orderingEnabled });\n });\n\n if (settingsOrder && settingsOrder.length > 0) {\n const columnsAbsentInSettingsOrder: string[] = [];\n\n orderingEnabled = orderingEnabled\n .reduce((acc, column) => {\n const index = settingsOrder.indexOf(column);\n if (index > -1) {\n acc[index] = column;\n } else {\n columnsAbsentInSettingsOrder.push(column);\n }\n\n return acc;\n }, [] as string[])\n .filter(column => !!column)\n // Append absent columns at the end\n .concat(columnsAbsentInSettingsOrder);\n }\n\n // if pinned columns are defined, make sure they are sorted first, this ensures state matches the freezing \"upto\" behaviour\n if (Array.isArray(pinnedOrder)) {\n orderingEnabled.sort(\n // the magic >>> 0 here ensures that columns that aren't found in settings, but are children, are pushed to the end\n // oxlint-disable-next-line no-bitwise, prefer-math-trunc\n (a, b) => (pinnedOrder.indexOf(a as string) >>> 0) - (pinnedOrder.indexOf(b as string) >>> 0)\n );\n }\n\n const order = [...internalColumns, ...orderingDisabled, ...orderingEnabled];\n\n // actions should always be last, enforce that\n internalColumnsPinnedToTheRight.forEach(id => {\n if (columns.some(column => column.id === id)) {\n order.push(id);\n }\n });\n\n return order;\n}\n\n// freezing - we use the react-table pinning state, but that requires some mapping between them\nexport function unfreezeAllExternalColumns(leftPinnedState?: string[]): string[] {\n return leftPinnedState?.filter(id => isInternalColumn(id) && id !== '__actions') ?? [];\n}\n\nexport function freezeUptoExternalColumn(index: number, columns: string[]): string[] {\n return columns.slice(0, index + 1);\n}\n\nexport function getHiddenColumns(columnVisibility: ReactTableVisibilityState = {}) {\n return Object.keys(columnVisibility).filter(c => columnVisibility[c] === false);\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"columns.js","sources":["../../../../../src/primitives/Table/useTableManager/util/columns.ts"],"sourcesContent":["import type {\n ColumnDef as ReactTableColumnDef,\n GroupColumnDef as ReactTableGroupColumnDef,\n VisibilityState as ReactTableVisibilityState,\n} from '@tanstack/react-table';\n\nimport type { Localization } from '@/components';\nimport type { FontSize } from '@/types';\n\nimport type { TableColumnDataType, TableColumnDataTypeOptions } from '../../types';\n\nimport { isMatched } from './search';\n\nexport function isInternalColumn(id: string | undefined) {\n return id?.startsWith('__');\n}\n\n// column widths\nexport const CELL_MIN_WIDTH: Record<FontSize, number> = {\n small: 57,\n medium: 72,\n large: 83,\n};\n\n// highlighting\nexport function isCellHighlighted<TType = unknown>(\n query: string,\n value: unknown,\n row: TType,\n dataType: TableColumnDataType | undefined,\n dataTypeOptions: TableColumnDataTypeOptions | undefined,\n localization: Localization\n) {\n if (value === undefined || value === null) {\n return false;\n }\n\n return isMatched(query, value, row, dataType, dataTypeOptions, localization);\n}\n\nfunction orderColumn<TType = unknown>(\n column: ReactTableColumnDef<TType>,\n { orderingDisabled, orderingEnabled }: { orderingDisabled: string[]; orderingEnabled: string[] }\n) {\n const groupedColumn = column as ReactTableGroupColumnDef<TType>;\n\n if (Array.isArray(groupedColumn.columns) && groupedColumn.columns.length > 0) {\n groupedColumn.columns.forEach((subcolumn: ReactTableColumnDef<TType>) =>\n orderColumn(subcolumn, { orderingDisabled, orderingEnabled })\n );\n } else if (column.meta?.enableOrdering) {\n orderingEnabled.push(column.id as string);\n } else {\n orderingDisabled.push(column.id as string);\n }\n}\n\n// ordering\nexport function ensureOrdering<TType = unknown>(\n columns: ReactTableColumnDef<TType>[],\n settingsOrder: string[] | undefined,\n pinnedOrder: string[] | undefined = [],\n internalColumnsPinnedToTheRight: string[] = ['__actions']\n): string[] {\n // internal columns come with a defined order\n const internalColumns = columns\n .filter(column => isInternalColumn(column.id) && !internalColumnsPinnedToTheRight.includes(String(column.id)))\n .map(column => column.id) as string[];\n\n // columns with ordering disabled should be moved to the front\n const orderingDisabled: string[] = [];\n let orderingEnabled: string[] = [];\n\n let orderedColumns = columns;\n\n // if settings is defined, make sure the columns that are actual children are sorted by it\n if (Array.isArray(settingsOrder)) {\n orderedColumns = columns.slice().sort(\n // the magic >>> 0 here ensures that columns that aren't found in settings, but are children, are pushed to the end\n // oxlint-disable-next-line no-bitwise, prefer-math-trunc\n (a, b) => (settingsOrder.indexOf(a.id as string) >>> 0) - (settingsOrder.indexOf(b.id as string) >>> 0)\n );\n }\n\n orderedColumns.forEach(column => {\n if (isInternalColumn(column.id)) {\n return;\n }\n\n orderColumn(column, { orderingDisabled, orderingEnabled });\n });\n\n if (settingsOrder && settingsOrder.length > 0) {\n const columnsAbsentInSettingsOrder: string[] = [];\n\n orderingEnabled = orderingEnabled\n .reduce((acc, column) => {\n const index = settingsOrder.indexOf(column);\n if (index > -1) {\n acc[index] = column;\n } else {\n columnsAbsentInSettingsOrder.push(column);\n }\n\n return acc;\n }, [] as string[])\n .filter(column => !!column)\n // Append absent columns at the end\n .concat(columnsAbsentInSettingsOrder);\n }\n\n // if pinned columns are defined, make sure they are sorted first, this ensures state matches the freezing \"upto\" behaviour\n if (Array.isArray(pinnedOrder)) {\n orderingEnabled.sort(\n // the magic >>> 0 here ensures that columns that aren't found in settings, but are children, are pushed to the end\n // oxlint-disable-next-line no-bitwise, prefer-math-trunc\n (a, b) => (pinnedOrder.indexOf(a as string) >>> 0) - (pinnedOrder.indexOf(b as string) >>> 0)\n );\n }\n\n const order = [...internalColumns, ...orderingDisabled, ...orderingEnabled];\n\n // actions should always be last, enforce that\n internalColumnsPinnedToTheRight.forEach(id => {\n if (columns.some(column => column.id === id)) {\n order.push(id);\n }\n });\n\n return order;\n}\n\n// freezing - we use the react-table pinning state, but that requires some mapping between them\nexport function unfreezeAllExternalColumns(leftPinnedState?: string[]): string[] {\n return leftPinnedState?.filter(id => isInternalColumn(id) && id !== '__actions') ?? [];\n}\n\nexport function freezeUptoExternalColumn(index: number, columns: string[]): string[] {\n return columns.slice(0, index + 1);\n}\n\nexport function getHiddenColumns(columnVisibility: ReactTableVisibilityState = {}) {\n return Object.keys(columnVisibility).filter(c => columnVisibility[c] === false);\n}\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dataTypes.cjs","sources":["../../../../../src/primitives/Table/useTableManager/util/dataTypes.ts"],"sourcesContent":["import type { SortingFnOption as ReactTableSortingFnOption } from '@tanstack/react-table';\n\nimport type { Localization } from '../../../../components/Provider/Localization';\nimport { DateTimeDataType, NumericDataType } from '../../../../utils/dataTypes';\nimport type {\n TableColumnAlignment,\n TableColumnDataType,\n TableColumnDataTypeOptionsHandler,\n TableColumnDataTypeOptions,\n} from '../../types';\nimport { TableFilterComparator } from '../../types';\n\nexport type TableDataTypeDisplayValueOptions = {\n dataTypeOptions?: TableColumnDataTypeOptionsHandler;\n localization: Localization;\n};\nexport type TableDataType<TType = unknown, TValue = any> = {\n align: TableColumnAlignment;\n sortingFn: ReactTableSortingFnOption<TType>;\n filterComparators: TableFilterComparator[];\n getDisplayValue?: (value: TValue, row: TType, options?: TableDataTypeDisplayValueOptions) => string | string[];\n parse?: (value: string, locale: string) => TValue | undefined;\n};\n\nconst dataTypes: Record<TableColumnDataType | 'auto', TableDataType> = {\n auto: {\n align: 'left',\n sortingFn: 'auto',\n filterComparators: [\n TableFilterComparator.Contains,\n TableFilterComparator.DoesNotContain,\n TableFilterComparator.IsEqualTo,\n TableFilterComparator.IsNotEqualTo,\n TableFilterComparator.IsEmpty,\n TableFilterComparator.IsNotEmpty,\n ],\n },\n // base\n text: {\n align: 'left',\n sortingFn: 'alphanumeric',\n filterComparators: [\n TableFilterComparator.Contains,\n TableFilterComparator.DoesNotContain,\n TableFilterComparator.IsEqualTo,\n TableFilterComparator.IsNotEqualTo,\n TableFilterComparator.IsEmpty,\n TableFilterComparator.IsNotEmpty,\n ],\n },\n boolean: {\n align: 'left',\n sortingFn: 'basic',\n filterComparators: [TableFilterComparator.IsEqualTo, TableFilterComparator.IsNotEqualTo],\n },\n // dates\n date: createDatetimeDataType({\n day: '2-digit',\n month: '2-digit',\n year: '2-digit',\n }),\n time: createDatetimeDataType({\n hour: '2-digit',\n minute: '2-digit',\n }),\n datetime: createDatetimeDataType({\n day: '2-digit',\n month: '2-digit',\n year: '2-digit',\n hour: '2-digit',\n minute: '2-digit',\n }),\n // numbers\n number: createNumberDataType('left'),\n amount: createNumberDataType('right', { decimals: 2, useGrouping: true }),\n percentage: createNumberDataType('right', { useGrouping: true, percent: true }),\n};\n\nfunction createDatetimeDataType<TType = unknown>(defaultOptions: Intl.DateTimeFormatOptions): TableDataType<TType, Date> {\n return {\n align: 'left',\n sortingFn: 'datetime',\n filterComparators: [\n TableFilterComparator.IsEqualTo,\n TableFilterComparator.IsNotEqualTo,\n TableFilterComparator.IsGreaterThan,\n TableFilterComparator.IsLessThan,\n TableFilterComparator.IsGreaterThanOrEqualTo,\n TableFilterComparator.IsLessThanOrEqualTo,\n TableFilterComparator.IsBetween,\n TableFilterComparator.IsEmpty,\n TableFilterComparator.IsNotEmpty,\n ],\n getDisplayValue: (value: string | Date, _: TType, options?: TableDataTypeDisplayValueOptions) => {\n if (value === undefined) {\n return '';\n }\n\n return DateTimeDataType.format(value, options?.localization.locale, defaultOptions);\n },\n parse: (value: string, locale: string) => DateTimeDataType.parse(value, locale),\n };\n}\n\nfunction createNumberDataType<TType = unknown>(\n align: TableColumnAlignment,\n defaultOptions?: TableColumnDataTypeOptions & { percent?: boolean }\n): TableDataType<TType, number> {\n return {\n align,\n sortingFn: 'basic',\n filterComparators: [\n TableFilterComparator.Contains,\n TableFilterComparator.DoesNotContain,\n TableFilterComparator.IsEqualTo,\n TableFilterComparator.IsNotEqualTo,\n TableFilterComparator.IsGreaterThan,\n TableFilterComparator.IsLessThan,\n TableFilterComparator.IsGreaterThanOrEqualTo,\n TableFilterComparator.IsLessThanOrEqualTo,\n TableFilterComparator.IsBetween,\n TableFilterComparator.IsEmpty,\n TableFilterComparator.IsNotEmpty,\n ],\n getDisplayValue: <TType = unknown>(value: number, row: TType, options?: TableDataTypeDisplayValueOptions) => {\n const dataTypeOptions =\n typeof options?.dataTypeOptions === 'function' ? options?.dataTypeOptions(row) : options?.dataTypeOptions;\n\n const numberFormatOptions: Intl.NumberFormatOptions = {\n // format\n useGrouping: dataTypeOptions?.useGrouping ?? defaultOptions?.useGrouping ?? false,\n // decimals\n minimumFractionDigits: dataTypeOptions?.decimals ?? defaultOptions?.decimals,\n maximumFractionDigits: dataTypeOptions?.decimals ?? defaultOptions?.decimals,\n };\n\n // percent\n if (defaultOptions?.percent) {\n numberFormatOptions.style = 'percent';\n } else if (dataTypeOptions?.currency) {\n // currency\n numberFormatOptions.style = 'currency';\n numberFormatOptions.currency = dataTypeOptions.currency;\n numberFormatOptions.currencyDisplay = 'code';\n }\n\n const localisedValue = NumericDataType.format(value, options?.localization.locale, numberFormatOptions);\n const localisedValueWithoutThousandsSeperator = NumericDataType.format(value, options?.localization.locale, {\n ...numberFormatOptions,\n useGrouping: false,\n });\n\n return [localisedValue, localisedValueWithoutThousandsSeperator];\n },\n parse: (value: string, locale: string) => NumericDataType.parse(value, locale),\n };\n}\n\nexport function getDataTypeProperties<TType = unknown>(dataType: TableColumnDataType | undefined): TableDataType<TType> {\n return (dataTypes[dataType ?? 'text'] ?? dataTypes.text) as TableDataType<TType>;\n}\n"],"names":["TableFilterComparator","DateTimeDataType","NumericDataType"],"mappings":"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"}
1
+ {"version":3,"file":"dataTypes.cjs","sources":["../../../../../src/primitives/Table/useTableManager/util/dataTypes.ts"],"sourcesContent":["import type { SortingFnOption as ReactTableSortingFnOption } from '@tanstack/react-table';\n\nimport type { Localization } from '@/components';\nimport { DateTimeDataType, NumericDataType } from '@/utils/dataTypes';\n\nimport type {\n TableColumnAlignment,\n TableColumnDataType,\n TableColumnDataTypeOptionsHandler,\n TableColumnDataTypeOptions,\n} from '../../types';\nimport { TableFilterComparator } from '../../types';\n\nexport type TableDataTypeDisplayValueOptions = {\n dataTypeOptions?: TableColumnDataTypeOptionsHandler;\n localization: Localization;\n};\nexport type TableDataType<TType = unknown, TValue = any> = {\n align: TableColumnAlignment;\n sortingFn: ReactTableSortingFnOption<TType>;\n filterComparators: TableFilterComparator[];\n getDisplayValue?: (value: TValue, row: TType, options?: TableDataTypeDisplayValueOptions) => string | string[];\n parse?: (value: string, locale: string) => TValue | undefined;\n};\n\nconst dataTypes: Record<TableColumnDataType | 'auto', TableDataType> = {\n auto: {\n align: 'left',\n sortingFn: 'auto',\n filterComparators: [\n TableFilterComparator.Contains,\n TableFilterComparator.DoesNotContain,\n TableFilterComparator.IsEqualTo,\n TableFilterComparator.IsNotEqualTo,\n TableFilterComparator.IsEmpty,\n TableFilterComparator.IsNotEmpty,\n ],\n },\n // base\n text: {\n align: 'left',\n sortingFn: 'alphanumeric',\n filterComparators: [\n TableFilterComparator.Contains,\n TableFilterComparator.DoesNotContain,\n TableFilterComparator.IsEqualTo,\n TableFilterComparator.IsNotEqualTo,\n TableFilterComparator.IsEmpty,\n TableFilterComparator.IsNotEmpty,\n ],\n },\n boolean: {\n align: 'left',\n sortingFn: 'basic',\n filterComparators: [TableFilterComparator.IsEqualTo, TableFilterComparator.IsNotEqualTo],\n },\n // dates\n date: createDatetimeDataType({\n day: '2-digit',\n month: '2-digit',\n year: '2-digit',\n }),\n time: createDatetimeDataType({\n hour: '2-digit',\n minute: '2-digit',\n }),\n datetime: createDatetimeDataType({\n day: '2-digit',\n month: '2-digit',\n year: '2-digit',\n hour: '2-digit',\n minute: '2-digit',\n }),\n // numbers\n number: createNumberDataType('left'),\n amount: createNumberDataType('right', { decimals: 2, useGrouping: true }),\n percentage: createNumberDataType('right', { useGrouping: true, percent: true }),\n};\n\nfunction createDatetimeDataType<TType = unknown>(defaultOptions: Intl.DateTimeFormatOptions): TableDataType<TType, Date> {\n return {\n align: 'left',\n sortingFn: 'datetime',\n filterComparators: [\n TableFilterComparator.IsEqualTo,\n TableFilterComparator.IsNotEqualTo,\n TableFilterComparator.IsGreaterThan,\n TableFilterComparator.IsLessThan,\n TableFilterComparator.IsGreaterThanOrEqualTo,\n TableFilterComparator.IsLessThanOrEqualTo,\n TableFilterComparator.IsBetween,\n TableFilterComparator.IsEmpty,\n TableFilterComparator.IsNotEmpty,\n ],\n getDisplayValue: (value: string | Date, _: TType, options?: TableDataTypeDisplayValueOptions) => {\n if (value === undefined) {\n return '';\n }\n\n return DateTimeDataType.format(value, options?.localization.locale, defaultOptions);\n },\n parse: (value: string, locale: string) => DateTimeDataType.parse(value, locale),\n };\n}\n\nfunction createNumberDataType<TType = unknown>(\n align: TableColumnAlignment,\n defaultOptions?: TableColumnDataTypeOptions & { percent?: boolean }\n): TableDataType<TType, number> {\n return {\n align,\n sortingFn: 'basic',\n filterComparators: [\n TableFilterComparator.Contains,\n TableFilterComparator.DoesNotContain,\n TableFilterComparator.IsEqualTo,\n TableFilterComparator.IsNotEqualTo,\n TableFilterComparator.IsGreaterThan,\n TableFilterComparator.IsLessThan,\n TableFilterComparator.IsGreaterThanOrEqualTo,\n TableFilterComparator.IsLessThanOrEqualTo,\n TableFilterComparator.IsBetween,\n TableFilterComparator.IsEmpty,\n TableFilterComparator.IsNotEmpty,\n ],\n getDisplayValue: <TType = unknown>(value: number, row: TType, options?: TableDataTypeDisplayValueOptions) => {\n const dataTypeOptions =\n typeof options?.dataTypeOptions === 'function' ? options?.dataTypeOptions(row) : options?.dataTypeOptions;\n\n const numberFormatOptions: Intl.NumberFormatOptions = {\n // format\n useGrouping: dataTypeOptions?.useGrouping ?? defaultOptions?.useGrouping ?? false,\n // decimals\n minimumFractionDigits: dataTypeOptions?.decimals ?? defaultOptions?.decimals,\n maximumFractionDigits: dataTypeOptions?.decimals ?? defaultOptions?.decimals,\n };\n\n // percent\n if (defaultOptions?.percent) {\n numberFormatOptions.style = 'percent';\n } else if (dataTypeOptions?.currency) {\n // currency\n numberFormatOptions.style = 'currency';\n numberFormatOptions.currency = dataTypeOptions.currency;\n numberFormatOptions.currencyDisplay = 'code';\n }\n\n const localisedValue = NumericDataType.format(value, options?.localization.locale, numberFormatOptions);\n const localisedValueWithoutThousandsSeperator = NumericDataType.format(value, options?.localization.locale, {\n ...numberFormatOptions,\n useGrouping: false,\n });\n\n return [localisedValue, localisedValueWithoutThousandsSeperator];\n },\n parse: (value: string, locale: string) => NumericDataType.parse(value, locale),\n };\n}\n\nexport function getDataTypeProperties<TType = unknown>(dataType: TableColumnDataType | undefined): TableDataType<TType> {\n return (dataTypes[dataType ?? 'text'] ?? dataTypes.text) as TableDataType<TType>;\n}\n"],"names":["TableFilterComparator","DateTimeDataType","NumericDataType"],"mappings":";;;;AAyBA,MAAM,YAAiE;AAAA,EACnE,MAAM;AAAA,IACF,OAAO;AAAA,IACP,WAAW;AAAA,IACX,mBAAmB;AAAA,MACfA,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,4BAAsB;AAAA,IAAA;AAAA,EAC1B;AAAA;AAAA,EAGJ,MAAM;AAAA,IACF,OAAO;AAAA,IACP,WAAW;AAAA,IACX,mBAAmB;AAAA,MACfA,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,4BAAsB;AAAA,IAAA;AAAA,EAC1B;AAAA,EAEJ,SAAS;AAAA,IACL,OAAO;AAAA,IACP,WAAW;AAAA,IACX,mBAAmB,CAACA,MAAAA,sBAAsB,WAAWA,MAAAA,sBAAsB,YAAY;AAAA,EAAA;AAAA;AAAA,EAG3F,MAAM,uBAAuB;AAAA,IACzB,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,EAAA,CACT;AAAA,EACD,MAAM,uBAAuB;AAAA,IACzB,MAAM;AAAA,IACN,QAAQ;AAAA,EAAA,CACX;AAAA,EACD,UAAU,uBAAuB;AAAA,IAC7B,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,EAAA,CACX;AAAA;AAAA,EAED,QAAQ,qBAAqB,MAAM;AAAA,EACnC,QAAQ,qBAAqB,SAAS,EAAE,UAAU,GAAG,aAAa,MAAM;AAAA,EACxE,YAAY,qBAAqB,SAAS,EAAE,aAAa,MAAM,SAAS,MAAM;AAClF;AAEA,SAAS,uBAAwC,gBAAwE;AACrH,SAAO;AAAA,IACH,OAAO;AAAA,IACP,WAAW;AAAA,IACX,mBAAmB;AAAA,MACfA,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,4BAAsB;AAAA,IAAA;AAAA,IAE1B,iBAAiB,CAAC,OAAsB,GAAU,YAA+C;AAC7F,UAAI,UAAU,QAAW;AACrB,eAAO;AAAA,MACX;AAEA,aAAOC,YAAAA,iBAAiB,OAAO,OAAO,SAAS,aAAa,QAAQ,cAAc;AAAA,IACtF;AAAA,IACA,OAAO,CAAC,OAAe,WAAmBA,YAAAA,iBAAiB,MAAM,OAAO,MAAM;AAAA,EAAA;AAEtF;AAEA,SAAS,qBACL,OACA,gBAC4B;AAC5B,SAAO;AAAA,IACH;AAAA,IACA,WAAW;AAAA,IACX,mBAAmB;AAAA,MACfD,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,MAAAA,sBAAsB;AAAA,MACtBA,4BAAsB;AAAA,IAAA;AAAA,IAE1B,iBAAiB,CAAkB,OAAe,KAAY,YAA+C;AACzG,YAAM,kBACF,OAAO,SAAS,oBAAoB,aAAa,SAAS,gBAAgB,GAAG,IAAI,SAAS;AAE9F,YAAM,sBAAgD;AAAA;AAAA,QAElD,aAAa,iBAAiB,eAAe,gBAAgB,eAAe;AAAA;AAAA,QAE5E,uBAAuB,iBAAiB,YAAY,gBAAgB;AAAA,QACpE,uBAAuB,iBAAiB,YAAY,gBAAgB;AAAA,MAAA;AAIxE,UAAI,gBAAgB,SAAS;AACzB,4BAAoB,QAAQ;AAAA,MAChC,WAAW,iBAAiB,UAAU;AAElC,4BAAoB,QAAQ;AAC5B,4BAAoB,WAAW,gBAAgB;AAC/C,4BAAoB,kBAAkB;AAAA,MAC1C;AAEA,YAAM,iBAAiBE,YAAAA,gBAAgB,OAAO,OAAO,SAAS,aAAa,QAAQ,mBAAmB;AACtG,YAAM,0CAA0CA,YAAAA,gBAAgB,OAAO,OAAO,SAAS,aAAa,QAAQ;AAAA,QACxG,GAAG;AAAA,QACH,aAAa;AAAA,MAAA,CAChB;AAED,aAAO,CAAC,gBAAgB,uCAAuC;AAAA,IACnE;AAAA,IACA,OAAO,CAAC,OAAe,WAAmBA,YAAAA,gBAAgB,MAAM,OAAO,MAAM;AAAA,EAAA;AAErF;AAEO,SAAS,sBAAuC,UAAiE;AACpH,SAAQ,UAAU,YAAY,MAAM,KAAK,UAAU;AACvD;;"}
@@ -1,5 +1,5 @@
1
1
  import { SortingFnOption as ReactTableSortingFnOption } from '@tanstack/react-table';
2
- import { Localization } from '../../../../components/Provider/Localization';
2
+ import { Localization } from '../../../../components';
3
3
  import { TableColumnAlignment, TableColumnDataType, TableColumnDataTypeOptionsHandler, TableFilterComparator } from '../../types';
4
4
  export type TableDataTypeDisplayValueOptions = {
5
5
  dataTypeOptions?: TableColumnDataTypeOptionsHandler;
@@ -1 +1 @@
1
- {"version":3,"file":"dataTypes.js","sources":["../../../../../src/primitives/Table/useTableManager/util/dataTypes.ts"],"sourcesContent":["import type { SortingFnOption as ReactTableSortingFnOption } from '@tanstack/react-table';\n\nimport type { Localization } from '../../../../components/Provider/Localization';\nimport { DateTimeDataType, NumericDataType } from '../../../../utils/dataTypes';\nimport type {\n TableColumnAlignment,\n TableColumnDataType,\n TableColumnDataTypeOptionsHandler,\n TableColumnDataTypeOptions,\n} from '../../types';\nimport { TableFilterComparator } from '../../types';\n\nexport type TableDataTypeDisplayValueOptions = {\n dataTypeOptions?: TableColumnDataTypeOptionsHandler;\n localization: Localization;\n};\nexport type TableDataType<TType = unknown, TValue = any> = {\n align: TableColumnAlignment;\n sortingFn: ReactTableSortingFnOption<TType>;\n filterComparators: TableFilterComparator[];\n getDisplayValue?: (value: TValue, row: TType, options?: TableDataTypeDisplayValueOptions) => string | string[];\n parse?: (value: string, locale: string) => TValue | undefined;\n};\n\nconst dataTypes: Record<TableColumnDataType | 'auto', TableDataType> = {\n auto: {\n align: 'left',\n sortingFn: 'auto',\n filterComparators: [\n TableFilterComparator.Contains,\n TableFilterComparator.DoesNotContain,\n TableFilterComparator.IsEqualTo,\n TableFilterComparator.IsNotEqualTo,\n TableFilterComparator.IsEmpty,\n TableFilterComparator.IsNotEmpty,\n ],\n },\n // base\n text: {\n align: 'left',\n sortingFn: 'alphanumeric',\n filterComparators: [\n TableFilterComparator.Contains,\n TableFilterComparator.DoesNotContain,\n TableFilterComparator.IsEqualTo,\n TableFilterComparator.IsNotEqualTo,\n TableFilterComparator.IsEmpty,\n TableFilterComparator.IsNotEmpty,\n ],\n },\n boolean: {\n align: 'left',\n sortingFn: 'basic',\n filterComparators: [TableFilterComparator.IsEqualTo, TableFilterComparator.IsNotEqualTo],\n },\n // dates\n date: createDatetimeDataType({\n day: '2-digit',\n month: '2-digit',\n year: '2-digit',\n }),\n time: createDatetimeDataType({\n hour: '2-digit',\n minute: '2-digit',\n }),\n datetime: createDatetimeDataType({\n day: '2-digit',\n month: '2-digit',\n year: '2-digit',\n hour: '2-digit',\n minute: '2-digit',\n }),\n // numbers\n number: createNumberDataType('left'),\n amount: createNumberDataType('right', { decimals: 2, useGrouping: true }),\n percentage: createNumberDataType('right', { useGrouping: true, percent: true }),\n};\n\nfunction createDatetimeDataType<TType = unknown>(defaultOptions: Intl.DateTimeFormatOptions): TableDataType<TType, Date> {\n return {\n align: 'left',\n sortingFn: 'datetime',\n filterComparators: [\n TableFilterComparator.IsEqualTo,\n TableFilterComparator.IsNotEqualTo,\n TableFilterComparator.IsGreaterThan,\n TableFilterComparator.IsLessThan,\n TableFilterComparator.IsGreaterThanOrEqualTo,\n TableFilterComparator.IsLessThanOrEqualTo,\n TableFilterComparator.IsBetween,\n TableFilterComparator.IsEmpty,\n TableFilterComparator.IsNotEmpty,\n ],\n getDisplayValue: (value: string | Date, _: TType, options?: TableDataTypeDisplayValueOptions) => {\n if (value === undefined) {\n return '';\n }\n\n return DateTimeDataType.format(value, options?.localization.locale, defaultOptions);\n },\n parse: (value: string, locale: string) => DateTimeDataType.parse(value, locale),\n };\n}\n\nfunction createNumberDataType<TType = unknown>(\n align: TableColumnAlignment,\n defaultOptions?: TableColumnDataTypeOptions & { percent?: boolean }\n): TableDataType<TType, number> {\n return {\n align,\n sortingFn: 'basic',\n filterComparators: [\n TableFilterComparator.Contains,\n TableFilterComparator.DoesNotContain,\n TableFilterComparator.IsEqualTo,\n TableFilterComparator.IsNotEqualTo,\n TableFilterComparator.IsGreaterThan,\n TableFilterComparator.IsLessThan,\n TableFilterComparator.IsGreaterThanOrEqualTo,\n TableFilterComparator.IsLessThanOrEqualTo,\n TableFilterComparator.IsBetween,\n TableFilterComparator.IsEmpty,\n TableFilterComparator.IsNotEmpty,\n ],\n getDisplayValue: <TType = unknown>(value: number, row: TType, options?: TableDataTypeDisplayValueOptions) => {\n const dataTypeOptions =\n typeof options?.dataTypeOptions === 'function' ? options?.dataTypeOptions(row) : options?.dataTypeOptions;\n\n const numberFormatOptions: Intl.NumberFormatOptions = {\n // format\n useGrouping: dataTypeOptions?.useGrouping ?? defaultOptions?.useGrouping ?? false,\n // decimals\n minimumFractionDigits: dataTypeOptions?.decimals ?? defaultOptions?.decimals,\n maximumFractionDigits: dataTypeOptions?.decimals ?? defaultOptions?.decimals,\n };\n\n // percent\n if (defaultOptions?.percent) {\n numberFormatOptions.style = 'percent';\n } else if (dataTypeOptions?.currency) {\n // currency\n numberFormatOptions.style = 'currency';\n numberFormatOptions.currency = dataTypeOptions.currency;\n numberFormatOptions.currencyDisplay = 'code';\n }\n\n const localisedValue = NumericDataType.format(value, options?.localization.locale, numberFormatOptions);\n const localisedValueWithoutThousandsSeperator = NumericDataType.format(value, options?.localization.locale, {\n ...numberFormatOptions,\n useGrouping: false,\n });\n\n return [localisedValue, localisedValueWithoutThousandsSeperator];\n },\n parse: (value: string, locale: string) => NumericDataType.parse(value, locale),\n };\n}\n\nexport function getDataTypeProperties<TType = unknown>(dataType: TableColumnDataType | undefined): TableDataType<TType> {\n return (dataTypes[dataType ?? 'text'] ?? dataTypes.text) as TableDataType<TType>;\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dataTypes.js","sources":["../../../../../src/primitives/Table/useTableManager/util/dataTypes.ts"],"sourcesContent":["import type { SortingFnOption as ReactTableSortingFnOption } from '@tanstack/react-table';\n\nimport type { Localization } from '@/components';\nimport { DateTimeDataType, NumericDataType } from '@/utils/dataTypes';\n\nimport type {\n TableColumnAlignment,\n TableColumnDataType,\n TableColumnDataTypeOptionsHandler,\n TableColumnDataTypeOptions,\n} from '../../types';\nimport { TableFilterComparator } from '../../types';\n\nexport type TableDataTypeDisplayValueOptions = {\n dataTypeOptions?: TableColumnDataTypeOptionsHandler;\n localization: Localization;\n};\nexport type TableDataType<TType = unknown, TValue = any> = {\n align: TableColumnAlignment;\n sortingFn: ReactTableSortingFnOption<TType>;\n filterComparators: TableFilterComparator[];\n getDisplayValue?: (value: TValue, row: TType, options?: TableDataTypeDisplayValueOptions) => string | string[];\n parse?: (value: string, locale: string) => TValue | undefined;\n};\n\nconst dataTypes: Record<TableColumnDataType | 'auto', TableDataType> = {\n auto: {\n align: 'left',\n sortingFn: 'auto',\n filterComparators: [\n TableFilterComparator.Contains,\n TableFilterComparator.DoesNotContain,\n TableFilterComparator.IsEqualTo,\n TableFilterComparator.IsNotEqualTo,\n TableFilterComparator.IsEmpty,\n TableFilterComparator.IsNotEmpty,\n ],\n },\n // base\n text: {\n align: 'left',\n sortingFn: 'alphanumeric',\n filterComparators: [\n TableFilterComparator.Contains,\n TableFilterComparator.DoesNotContain,\n TableFilterComparator.IsEqualTo,\n TableFilterComparator.IsNotEqualTo,\n TableFilterComparator.IsEmpty,\n TableFilterComparator.IsNotEmpty,\n ],\n },\n boolean: {\n align: 'left',\n sortingFn: 'basic',\n filterComparators: [TableFilterComparator.IsEqualTo, TableFilterComparator.IsNotEqualTo],\n },\n // dates\n date: createDatetimeDataType({\n day: '2-digit',\n month: '2-digit',\n year: '2-digit',\n }),\n time: createDatetimeDataType({\n hour: '2-digit',\n minute: '2-digit',\n }),\n datetime: createDatetimeDataType({\n day: '2-digit',\n month: '2-digit',\n year: '2-digit',\n hour: '2-digit',\n minute: '2-digit',\n }),\n // numbers\n number: createNumberDataType('left'),\n amount: createNumberDataType('right', { decimals: 2, useGrouping: true }),\n percentage: createNumberDataType('right', { useGrouping: true, percent: true }),\n};\n\nfunction createDatetimeDataType<TType = unknown>(defaultOptions: Intl.DateTimeFormatOptions): TableDataType<TType, Date> {\n return {\n align: 'left',\n sortingFn: 'datetime',\n filterComparators: [\n TableFilterComparator.IsEqualTo,\n TableFilterComparator.IsNotEqualTo,\n TableFilterComparator.IsGreaterThan,\n TableFilterComparator.IsLessThan,\n TableFilterComparator.IsGreaterThanOrEqualTo,\n TableFilterComparator.IsLessThanOrEqualTo,\n TableFilterComparator.IsBetween,\n TableFilterComparator.IsEmpty,\n TableFilterComparator.IsNotEmpty,\n ],\n getDisplayValue: (value: string | Date, _: TType, options?: TableDataTypeDisplayValueOptions) => {\n if (value === undefined) {\n return '';\n }\n\n return DateTimeDataType.format(value, options?.localization.locale, defaultOptions);\n },\n parse: (value: string, locale: string) => DateTimeDataType.parse(value, locale),\n };\n}\n\nfunction createNumberDataType<TType = unknown>(\n align: TableColumnAlignment,\n defaultOptions?: TableColumnDataTypeOptions & { percent?: boolean }\n): TableDataType<TType, number> {\n return {\n align,\n sortingFn: 'basic',\n filterComparators: [\n TableFilterComparator.Contains,\n TableFilterComparator.DoesNotContain,\n TableFilterComparator.IsEqualTo,\n TableFilterComparator.IsNotEqualTo,\n TableFilterComparator.IsGreaterThan,\n TableFilterComparator.IsLessThan,\n TableFilterComparator.IsGreaterThanOrEqualTo,\n TableFilterComparator.IsLessThanOrEqualTo,\n TableFilterComparator.IsBetween,\n TableFilterComparator.IsEmpty,\n TableFilterComparator.IsNotEmpty,\n ],\n getDisplayValue: <TType = unknown>(value: number, row: TType, options?: TableDataTypeDisplayValueOptions) => {\n const dataTypeOptions =\n typeof options?.dataTypeOptions === 'function' ? options?.dataTypeOptions(row) : options?.dataTypeOptions;\n\n const numberFormatOptions: Intl.NumberFormatOptions = {\n // format\n useGrouping: dataTypeOptions?.useGrouping ?? defaultOptions?.useGrouping ?? false,\n // decimals\n minimumFractionDigits: dataTypeOptions?.decimals ?? defaultOptions?.decimals,\n maximumFractionDigits: dataTypeOptions?.decimals ?? defaultOptions?.decimals,\n };\n\n // percent\n if (defaultOptions?.percent) {\n numberFormatOptions.style = 'percent';\n } else if (dataTypeOptions?.currency) {\n // currency\n numberFormatOptions.style = 'currency';\n numberFormatOptions.currency = dataTypeOptions.currency;\n numberFormatOptions.currencyDisplay = 'code';\n }\n\n const localisedValue = NumericDataType.format(value, options?.localization.locale, numberFormatOptions);\n const localisedValueWithoutThousandsSeperator = NumericDataType.format(value, options?.localization.locale, {\n ...numberFormatOptions,\n useGrouping: false,\n });\n\n return [localisedValue, localisedValueWithoutThousandsSeperator];\n },\n parse: (value: string, locale: string) => NumericDataType.parse(value, locale),\n };\n}\n\nexport function getDataTypeProperties<TType = unknown>(dataType: TableColumnDataType | undefined): TableDataType<TType> {\n return (dataTypes[dataType ?? 'text'] ?? dataTypes.text) as TableDataType<TType>;\n}\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"filtering.cjs","sources":["../../../../../src/primitives/Table/useTableManager/util/filtering.ts"],"sourcesContent":["import type { ColumnMeta as ReactTableColumnMeta } from '@tanstack/react-table';\n\nimport type { Localization } from '../../../../components/Provider/Localization';\nimport { NumericDataType } from '../../../../utils/dataTypes';\nimport { isWeakEqual as isWeakEqualDate } from '../../../../utils/date';\nimport type { TableFilterValue } from '../../types';\nimport { TableFilterComparator } from '../../types';\n\nimport { isMatched } from './search';\n\nexport const toLowerCase = (value: string | number) => String(value ?? '').toLocaleLowerCase();\nexport const isWeakContains = (left: string | number, right: string | number) => toLowerCase(left).includes(toLowerCase(right));\nexport const isWeakEqual = (left: string | number, right: string | number) => toLowerCase(left) === toLowerCase(right);\n\n// the filter type is only settable on the column definition, which would re-render all columns.\n// so instead we store it in the filter value, but that means we also have to destructure that\n// before we filter - that's why this custom filter function exists\nexport function columnFilterFn<TType = unknown>(\n row: TType,\n cellValue: unknown,\n meta: ReactTableColumnMeta<TType, unknown> | undefined,\n filter: TableFilterValue,\n localization: Localization\n) {\n try {\n const query = filter.value;\n const { dataType, dataTypeOptions } = meta ?? {};\n\n // handle empty states\n if (filter.comparator === TableFilterComparator.IsEmpty || filter.comparator === TableFilterComparator.IsNotEmpty) {\n const isEmpty = cellValue === undefined || cellValue === null || cellValue === '';\n return filter.comparator === TableFilterComparator.IsEmpty ? isEmpty : !isEmpty;\n }\n\n if (query === undefined || query === null || query === '') {\n return true;\n }\n\n // prep\n const evaluate = (matcher: (left: any, right: any) => boolean) => {\n return isMatched<TType>(query, cellValue, row, dataType, dataTypeOptions, localization, matcher);\n };\n\n // dates\n const isDateColumn = dataType === 'date' || dataType === 'datetime'; // || dataType === 'time'; // compare as string for now\n const valueAsDate = new Date(cellValue as string);\n\n // numbers\n const isNumberColumn = dataType === 'number' || dataType === 'amount';\n const compareNumbers = (fn: (left: number, right: number) => boolean) => {\n const input = typeof query === 'number' ? query : NumericDataType.parse(query, localization.locale);\n const value = cellValue as number; // assume it's a number since, they set the dataType\n\n if (input === undefined) {\n return false;\n }\n\n return fn(input, value);\n };\n\n switch (filter.comparator) {\n case TableFilterComparator.Contains:\n return evaluate(isWeakContains);\n\n case TableFilterComparator.DoesNotContain:\n return !evaluate(isWeakContains);\n\n case TableFilterComparator.IsEqualTo: {\n if (dataType === 'boolean') {\n return cellValue === query;\n }\n if (isDateColumn) {\n return isWeakEqualDate(query, valueAsDate);\n }\n\n return evaluate(isWeakEqual);\n }\n\n case TableFilterComparator.IsNotEqualTo: {\n if (dataType === 'boolean') {\n return cellValue !== query;\n }\n if (isDateColumn) {\n return !isWeakEqualDate(query, valueAsDate);\n }\n\n return !evaluate(isWeakEqual);\n }\n\n case TableFilterComparator.IsGreaterThan: {\n if (isDateColumn) {\n return query.getTime() < valueAsDate.getTime();\n }\n if (isNumberColumn) {\n return compareNumbers((q, v) => q < v);\n }\n\n return false;\n }\n\n case TableFilterComparator.IsLessThan: {\n if (isDateColumn) {\n return query.getTime() > valueAsDate.getTime();\n }\n if (isNumberColumn) {\n return compareNumbers((q, v) => q > v);\n }\n\n return false;\n }\n\n case TableFilterComparator.IsLessThanOrEqualTo: {\n if (isDateColumn) {\n return query.getTime() > valueAsDate.getTime() || isWeakEqualDate(valueAsDate, query);\n }\n if (isNumberColumn) {\n return compareNumbers((q, v) => q >= v);\n }\n\n return false;\n }\n\n case TableFilterComparator.IsGreaterThanOrEqualTo: {\n if (isDateColumn) {\n return query.getTime() < valueAsDate.getTime() || isWeakEqualDate(valueAsDate, query);\n }\n if (isNumberColumn) {\n return compareNumbers((q, v) => q <= v);\n }\n\n return false;\n }\n\n case TableFilterComparator.IsBetween: {\n const [fromValue, toValue] = query;\n\n if (isDateColumn) {\n if (fromValue !== undefined && valueAsDate.getTime() < fromValue.getTime()) {\n return false;\n }\n if (toValue !== undefined && valueAsDate.getTime() > toValue.getTime()) {\n return false;\n }\n\n return true;\n }\n if (isNumberColumn) {\n if (fromValue !== undefined && (cellValue as number) < fromValue) {\n return false;\n }\n\n if (toValue !== undefined && (cellValue as number) > toValue) {\n return false;\n }\n\n return true;\n }\n return false;\n }\n\n case TableFilterComparator.HasAnyOf:\n return Array.isArray(query) && Array.isArray(cellValue) ? query.some(item => cellValue.includes(item)) : false;\n\n case TableFilterComparator.HasNoneOf:\n return Array.isArray(query) && Array.isArray(cellValue)\n ? query.every(item => cellValue.includes(item) === false)\n : false;\n\n case TableFilterComparator.HasAllOf:\n return Array.isArray(query) && Array.isArray(cellValue)\n ? query.filter(v => cellValue.includes(v)).length === query.length\n : false;\n\n case TableFilterComparator.IsOneOf: {\n if (!Array.isArray(query)) {\n return false;\n }\n\n return query.some(v => isWeakEqual(String(cellValue), v));\n }\n\n case TableFilterComparator.IsNoneOf: {\n if (!Array.isArray(query)) {\n return false;\n }\n\n return query.every(v => !isWeakEqual(String(cellValue), v));\n }\n\n default:\n return false;\n }\n } catch (e) {\n // oxlint-disable-next-line no-console\n console.error(e);\n return true;\n }\n}\n"],"names":["TableFilterComparator","isMatched","NumericDataType","isWeakEqualDate"],"mappings":"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"}
1
+ {"version":3,"file":"filtering.cjs","sources":["../../../../../src/primitives/Table/useTableManager/util/filtering.ts"],"sourcesContent":["import type { ColumnMeta as ReactTableColumnMeta } from '@tanstack/react-table';\n\nimport type { Localization } from '@/components';\nimport { NumericDataType } from '@/utils/dataTypes';\nimport { isWeakEqual as isWeakEqualDate } from '@/utils/date';\n\nimport type { TableFilterValue } from '../../types';\nimport { TableFilterComparator } from '../../types';\n\nimport { isMatched } from './search';\n\nexport const toLowerCase = (value: string | number) => String(value ?? '').toLocaleLowerCase();\nexport const isWeakContains = (left: string | number, right: string | number) => toLowerCase(left).includes(toLowerCase(right));\nexport const isWeakEqual = (left: string | number, right: string | number) => toLowerCase(left) === toLowerCase(right);\n\n// the filter type is only settable on the column definition, which would re-render all columns.\n// so instead we store it in the filter value, but that means we also have to destructure that\n// before we filter - that's why this custom filter function exists\nexport function columnFilterFn<TType = unknown>(\n row: TType,\n cellValue: unknown,\n meta: ReactTableColumnMeta<TType, unknown> | undefined,\n filter: TableFilterValue,\n localization: Localization\n) {\n try {\n const query = filter.value;\n const { dataType, dataTypeOptions } = meta ?? {};\n\n // handle empty states\n if (filter.comparator === TableFilterComparator.IsEmpty || filter.comparator === TableFilterComparator.IsNotEmpty) {\n const isEmpty = cellValue === undefined || cellValue === null || cellValue === '';\n return filter.comparator === TableFilterComparator.IsEmpty ? isEmpty : !isEmpty;\n }\n\n if (query === undefined || query === null || query === '') {\n return true;\n }\n\n // prep\n const evaluate = (matcher: (left: any, right: any) => boolean) => {\n return isMatched<TType>(query, cellValue, row, dataType, dataTypeOptions, localization, matcher);\n };\n\n // dates\n const isDateColumn = dataType === 'date' || dataType === 'datetime'; // || dataType === 'time'; // compare as string for now\n const valueAsDate = new Date(cellValue as string);\n\n // numbers\n const isNumberColumn = dataType === 'number' || dataType === 'amount';\n const compareNumbers = (fn: (left: number, right: number) => boolean) => {\n const input = typeof query === 'number' ? query : NumericDataType.parse(query, localization.locale);\n const value = cellValue as number; // assume it's a number since, they set the dataType\n\n if (input === undefined) {\n return false;\n }\n\n return fn(input, value);\n };\n\n switch (filter.comparator) {\n case TableFilterComparator.Contains:\n return evaluate(isWeakContains);\n\n case TableFilterComparator.DoesNotContain:\n return !evaluate(isWeakContains);\n\n case TableFilterComparator.IsEqualTo: {\n if (dataType === 'boolean') {\n return cellValue === query;\n }\n if (isDateColumn) {\n return isWeakEqualDate(query, valueAsDate);\n }\n\n return evaluate(isWeakEqual);\n }\n\n case TableFilterComparator.IsNotEqualTo: {\n if (dataType === 'boolean') {\n return cellValue !== query;\n }\n if (isDateColumn) {\n return !isWeakEqualDate(query, valueAsDate);\n }\n\n return !evaluate(isWeakEqual);\n }\n\n case TableFilterComparator.IsGreaterThan: {\n if (isDateColumn) {\n return query.getTime() < valueAsDate.getTime();\n }\n if (isNumberColumn) {\n return compareNumbers((q, v) => q < v);\n }\n\n return false;\n }\n\n case TableFilterComparator.IsLessThan: {\n if (isDateColumn) {\n return query.getTime() > valueAsDate.getTime();\n }\n if (isNumberColumn) {\n return compareNumbers((q, v) => q > v);\n }\n\n return false;\n }\n\n case TableFilterComparator.IsLessThanOrEqualTo: {\n if (isDateColumn) {\n return query.getTime() > valueAsDate.getTime() || isWeakEqualDate(valueAsDate, query);\n }\n if (isNumberColumn) {\n return compareNumbers((q, v) => q >= v);\n }\n\n return false;\n }\n\n case TableFilterComparator.IsGreaterThanOrEqualTo: {\n if (isDateColumn) {\n return query.getTime() < valueAsDate.getTime() || isWeakEqualDate(valueAsDate, query);\n }\n if (isNumberColumn) {\n return compareNumbers((q, v) => q <= v);\n }\n\n return false;\n }\n\n case TableFilterComparator.IsBetween: {\n const [fromValue, toValue] = query;\n\n if (isDateColumn) {\n if (fromValue !== undefined && valueAsDate.getTime() < fromValue.getTime()) {\n return false;\n }\n if (toValue !== undefined && valueAsDate.getTime() > toValue.getTime()) {\n return false;\n }\n\n return true;\n }\n if (isNumberColumn) {\n if (fromValue !== undefined && (cellValue as number) < fromValue) {\n return false;\n }\n\n if (toValue !== undefined && (cellValue as number) > toValue) {\n return false;\n }\n\n return true;\n }\n return false;\n }\n\n case TableFilterComparator.HasAnyOf:\n return Array.isArray(query) && Array.isArray(cellValue) ? query.some(item => cellValue.includes(item)) : false;\n\n case TableFilterComparator.HasNoneOf:\n return Array.isArray(query) && Array.isArray(cellValue)\n ? query.every(item => cellValue.includes(item) === false)\n : false;\n\n case TableFilterComparator.HasAllOf:\n return Array.isArray(query) && Array.isArray(cellValue)\n ? query.filter(v => cellValue.includes(v)).length === query.length\n : false;\n\n case TableFilterComparator.IsOneOf: {\n if (!Array.isArray(query)) {\n return false;\n }\n\n return query.some(v => isWeakEqual(String(cellValue), v));\n }\n\n case TableFilterComparator.IsNoneOf: {\n if (!Array.isArray(query)) {\n return false;\n }\n\n return query.every(v => !isWeakEqual(String(cellValue), v));\n }\n\n default:\n return false;\n }\n } catch (e) {\n // oxlint-disable-next-line no-console\n console.error(e);\n return true;\n }\n}\n"],"names":["TableFilterComparator","isMatched","NumericDataType","isWeakEqualDate"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { ColumnMeta as ReactTableColumnMeta } from '@tanstack/react-table';
2
- import { Localization } from '../../../../components/Provider/Localization';
2
+ import { Localization } from '../../../../components';
3
3
  import { TableFilterValue } from '../../types';
4
4
  export declare const toLowerCase: (value: string | number) => string;
5
5
  export declare const isWeakContains: (left: string | number, right: string | number) => boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"filtering.js","sources":["../../../../../src/primitives/Table/useTableManager/util/filtering.ts"],"sourcesContent":["import type { ColumnMeta as ReactTableColumnMeta } from '@tanstack/react-table';\n\nimport type { Localization } from '../../../../components/Provider/Localization';\nimport { NumericDataType } from '../../../../utils/dataTypes';\nimport { isWeakEqual as isWeakEqualDate } from '../../../../utils/date';\nimport type { TableFilterValue } from '../../types';\nimport { TableFilterComparator } from '../../types';\n\nimport { isMatched } from './search';\n\nexport const toLowerCase = (value: string | number) => String(value ?? '').toLocaleLowerCase();\nexport const isWeakContains = (left: string | number, right: string | number) => toLowerCase(left).includes(toLowerCase(right));\nexport const isWeakEqual = (left: string | number, right: string | number) => toLowerCase(left) === toLowerCase(right);\n\n// the filter type is only settable on the column definition, which would re-render all columns.\n// so instead we store it in the filter value, but that means we also have to destructure that\n// before we filter - that's why this custom filter function exists\nexport function columnFilterFn<TType = unknown>(\n row: TType,\n cellValue: unknown,\n meta: ReactTableColumnMeta<TType, unknown> | undefined,\n filter: TableFilterValue,\n localization: Localization\n) {\n try {\n const query = filter.value;\n const { dataType, dataTypeOptions } = meta ?? {};\n\n // handle empty states\n if (filter.comparator === TableFilterComparator.IsEmpty || filter.comparator === TableFilterComparator.IsNotEmpty) {\n const isEmpty = cellValue === undefined || cellValue === null || cellValue === '';\n return filter.comparator === TableFilterComparator.IsEmpty ? isEmpty : !isEmpty;\n }\n\n if (query === undefined || query === null || query === '') {\n return true;\n }\n\n // prep\n const evaluate = (matcher: (left: any, right: any) => boolean) => {\n return isMatched<TType>(query, cellValue, row, dataType, dataTypeOptions, localization, matcher);\n };\n\n // dates\n const isDateColumn = dataType === 'date' || dataType === 'datetime'; // || dataType === 'time'; // compare as string for now\n const valueAsDate = new Date(cellValue as string);\n\n // numbers\n const isNumberColumn = dataType === 'number' || dataType === 'amount';\n const compareNumbers = (fn: (left: number, right: number) => boolean) => {\n const input = typeof query === 'number' ? query : NumericDataType.parse(query, localization.locale);\n const value = cellValue as number; // assume it's a number since, they set the dataType\n\n if (input === undefined) {\n return false;\n }\n\n return fn(input, value);\n };\n\n switch (filter.comparator) {\n case TableFilterComparator.Contains:\n return evaluate(isWeakContains);\n\n case TableFilterComparator.DoesNotContain:\n return !evaluate(isWeakContains);\n\n case TableFilterComparator.IsEqualTo: {\n if (dataType === 'boolean') {\n return cellValue === query;\n }\n if (isDateColumn) {\n return isWeakEqualDate(query, valueAsDate);\n }\n\n return evaluate(isWeakEqual);\n }\n\n case TableFilterComparator.IsNotEqualTo: {\n if (dataType === 'boolean') {\n return cellValue !== query;\n }\n if (isDateColumn) {\n return !isWeakEqualDate(query, valueAsDate);\n }\n\n return !evaluate(isWeakEqual);\n }\n\n case TableFilterComparator.IsGreaterThan: {\n if (isDateColumn) {\n return query.getTime() < valueAsDate.getTime();\n }\n if (isNumberColumn) {\n return compareNumbers((q, v) => q < v);\n }\n\n return false;\n }\n\n case TableFilterComparator.IsLessThan: {\n if (isDateColumn) {\n return query.getTime() > valueAsDate.getTime();\n }\n if (isNumberColumn) {\n return compareNumbers((q, v) => q > v);\n }\n\n return false;\n }\n\n case TableFilterComparator.IsLessThanOrEqualTo: {\n if (isDateColumn) {\n return query.getTime() > valueAsDate.getTime() || isWeakEqualDate(valueAsDate, query);\n }\n if (isNumberColumn) {\n return compareNumbers((q, v) => q >= v);\n }\n\n return false;\n }\n\n case TableFilterComparator.IsGreaterThanOrEqualTo: {\n if (isDateColumn) {\n return query.getTime() < valueAsDate.getTime() || isWeakEqualDate(valueAsDate, query);\n }\n if (isNumberColumn) {\n return compareNumbers((q, v) => q <= v);\n }\n\n return false;\n }\n\n case TableFilterComparator.IsBetween: {\n const [fromValue, toValue] = query;\n\n if (isDateColumn) {\n if (fromValue !== undefined && valueAsDate.getTime() < fromValue.getTime()) {\n return false;\n }\n if (toValue !== undefined && valueAsDate.getTime() > toValue.getTime()) {\n return false;\n }\n\n return true;\n }\n if (isNumberColumn) {\n if (fromValue !== undefined && (cellValue as number) < fromValue) {\n return false;\n }\n\n if (toValue !== undefined && (cellValue as number) > toValue) {\n return false;\n }\n\n return true;\n }\n return false;\n }\n\n case TableFilterComparator.HasAnyOf:\n return Array.isArray(query) && Array.isArray(cellValue) ? query.some(item => cellValue.includes(item)) : false;\n\n case TableFilterComparator.HasNoneOf:\n return Array.isArray(query) && Array.isArray(cellValue)\n ? query.every(item => cellValue.includes(item) === false)\n : false;\n\n case TableFilterComparator.HasAllOf:\n return Array.isArray(query) && Array.isArray(cellValue)\n ? query.filter(v => cellValue.includes(v)).length === query.length\n : false;\n\n case TableFilterComparator.IsOneOf: {\n if (!Array.isArray(query)) {\n return false;\n }\n\n return query.some(v => isWeakEqual(String(cellValue), v));\n }\n\n case TableFilterComparator.IsNoneOf: {\n if (!Array.isArray(query)) {\n return false;\n }\n\n return query.every(v => !isWeakEqual(String(cellValue), v));\n }\n\n default:\n return false;\n }\n } catch (e) {\n // oxlint-disable-next-line no-console\n console.error(e);\n return true;\n }\n}\n"],"names":["isWeakEqualDate"],"mappings":"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"}
1
+ {"version":3,"file":"filtering.js","sources":["../../../../../src/primitives/Table/useTableManager/util/filtering.ts"],"sourcesContent":["import type { ColumnMeta as ReactTableColumnMeta } from '@tanstack/react-table';\n\nimport type { Localization } from '@/components';\nimport { NumericDataType } from '@/utils/dataTypes';\nimport { isWeakEqual as isWeakEqualDate } from '@/utils/date';\n\nimport type { TableFilterValue } from '../../types';\nimport { TableFilterComparator } from '../../types';\n\nimport { isMatched } from './search';\n\nexport const toLowerCase = (value: string | number) => String(value ?? '').toLocaleLowerCase();\nexport const isWeakContains = (left: string | number, right: string | number) => toLowerCase(left).includes(toLowerCase(right));\nexport const isWeakEqual = (left: string | number, right: string | number) => toLowerCase(left) === toLowerCase(right);\n\n// the filter type is only settable on the column definition, which would re-render all columns.\n// so instead we store it in the filter value, but that means we also have to destructure that\n// before we filter - that's why this custom filter function exists\nexport function columnFilterFn<TType = unknown>(\n row: TType,\n cellValue: unknown,\n meta: ReactTableColumnMeta<TType, unknown> | undefined,\n filter: TableFilterValue,\n localization: Localization\n) {\n try {\n const query = filter.value;\n const { dataType, dataTypeOptions } = meta ?? {};\n\n // handle empty states\n if (filter.comparator === TableFilterComparator.IsEmpty || filter.comparator === TableFilterComparator.IsNotEmpty) {\n const isEmpty = cellValue === undefined || cellValue === null || cellValue === '';\n return filter.comparator === TableFilterComparator.IsEmpty ? isEmpty : !isEmpty;\n }\n\n if (query === undefined || query === null || query === '') {\n return true;\n }\n\n // prep\n const evaluate = (matcher: (left: any, right: any) => boolean) => {\n return isMatched<TType>(query, cellValue, row, dataType, dataTypeOptions, localization, matcher);\n };\n\n // dates\n const isDateColumn = dataType === 'date' || dataType === 'datetime'; // || dataType === 'time'; // compare as string for now\n const valueAsDate = new Date(cellValue as string);\n\n // numbers\n const isNumberColumn = dataType === 'number' || dataType === 'amount';\n const compareNumbers = (fn: (left: number, right: number) => boolean) => {\n const input = typeof query === 'number' ? query : NumericDataType.parse(query, localization.locale);\n const value = cellValue as number; // assume it's a number since, they set the dataType\n\n if (input === undefined) {\n return false;\n }\n\n return fn(input, value);\n };\n\n switch (filter.comparator) {\n case TableFilterComparator.Contains:\n return evaluate(isWeakContains);\n\n case TableFilterComparator.DoesNotContain:\n return !evaluate(isWeakContains);\n\n case TableFilterComparator.IsEqualTo: {\n if (dataType === 'boolean') {\n return cellValue === query;\n }\n if (isDateColumn) {\n return isWeakEqualDate(query, valueAsDate);\n }\n\n return evaluate(isWeakEqual);\n }\n\n case TableFilterComparator.IsNotEqualTo: {\n if (dataType === 'boolean') {\n return cellValue !== query;\n }\n if (isDateColumn) {\n return !isWeakEqualDate(query, valueAsDate);\n }\n\n return !evaluate(isWeakEqual);\n }\n\n case TableFilterComparator.IsGreaterThan: {\n if (isDateColumn) {\n return query.getTime() < valueAsDate.getTime();\n }\n if (isNumberColumn) {\n return compareNumbers((q, v) => q < v);\n }\n\n return false;\n }\n\n case TableFilterComparator.IsLessThan: {\n if (isDateColumn) {\n return query.getTime() > valueAsDate.getTime();\n }\n if (isNumberColumn) {\n return compareNumbers((q, v) => q > v);\n }\n\n return false;\n }\n\n case TableFilterComparator.IsLessThanOrEqualTo: {\n if (isDateColumn) {\n return query.getTime() > valueAsDate.getTime() || isWeakEqualDate(valueAsDate, query);\n }\n if (isNumberColumn) {\n return compareNumbers((q, v) => q >= v);\n }\n\n return false;\n }\n\n case TableFilterComparator.IsGreaterThanOrEqualTo: {\n if (isDateColumn) {\n return query.getTime() < valueAsDate.getTime() || isWeakEqualDate(valueAsDate, query);\n }\n if (isNumberColumn) {\n return compareNumbers((q, v) => q <= v);\n }\n\n return false;\n }\n\n case TableFilterComparator.IsBetween: {\n const [fromValue, toValue] = query;\n\n if (isDateColumn) {\n if (fromValue !== undefined && valueAsDate.getTime() < fromValue.getTime()) {\n return false;\n }\n if (toValue !== undefined && valueAsDate.getTime() > toValue.getTime()) {\n return false;\n }\n\n return true;\n }\n if (isNumberColumn) {\n if (fromValue !== undefined && (cellValue as number) < fromValue) {\n return false;\n }\n\n if (toValue !== undefined && (cellValue as number) > toValue) {\n return false;\n }\n\n return true;\n }\n return false;\n }\n\n case TableFilterComparator.HasAnyOf:\n return Array.isArray(query) && Array.isArray(cellValue) ? query.some(item => cellValue.includes(item)) : false;\n\n case TableFilterComparator.HasNoneOf:\n return Array.isArray(query) && Array.isArray(cellValue)\n ? query.every(item => cellValue.includes(item) === false)\n : false;\n\n case TableFilterComparator.HasAllOf:\n return Array.isArray(query) && Array.isArray(cellValue)\n ? query.filter(v => cellValue.includes(v)).length === query.length\n : false;\n\n case TableFilterComparator.IsOneOf: {\n if (!Array.isArray(query)) {\n return false;\n }\n\n return query.some(v => isWeakEqual(String(cellValue), v));\n }\n\n case TableFilterComparator.IsNoneOf: {\n if (!Array.isArray(query)) {\n return false;\n }\n\n return query.every(v => !isWeakEqual(String(cellValue), v));\n }\n\n default:\n return false;\n }\n } catch (e) {\n // oxlint-disable-next-line no-console\n console.error(e);\n return true;\n }\n}\n"],"names":["isWeakEqualDate"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"search.cjs","sources":["../../../../../src/primitives/Table/useTableManager/util/search.ts"],"sourcesContent":["import type { Table as ReactTable, TableMeta as ReactTableMeta, Row as ReactTableRow } from '@tanstack/react-table';\n\nimport type { Localization } from '../../../../components/Provider/Localization';\nimport type { TableColumnDataType, TableColumnDataTypeOptions } from '../../types';\n\nimport { getDataTypeProperties } from './dataTypes';\nimport { isWeakContains } from './filtering';\n\nconst flattenCellValue = (cellValue: object | string): any => {\n return typeof cellValue === 'object' ? Object.values(cellValue).map(flattenCellValue) : cellValue;\n};\n\nexport function isMatched<TType = unknown>(\n query: any,\n cellValue: any,\n rowValue: TType,\n dataType: TableColumnDataType | undefined,\n dataTypeOptions: TableColumnDataTypeOptions | undefined,\n localization: Localization,\n matcher: (left: any, right: any) => boolean = isWeakContains\n) {\n if (typeof cellValue === 'object') {\n return flattenCellValue(cellValue)\n .flat(Infinity)\n .find((y: any) => matcher(y, query));\n }\n const dataTypeProperties = getDataTypeProperties<TType>(dataType);\n\n if (dataTypeProperties.getDisplayValue) {\n const cellDisplayValue = dataTypeProperties.getDisplayValue(cellValue, rowValue, {\n dataTypeOptions,\n localization,\n });\n\n if (Array.isArray(cellDisplayValue)) {\n return cellDisplayValue.some(cdv => matcher(cdv, query));\n }\n\n if (cellDisplayValue !== undefined && isWeakContains(cellDisplayValue, query)) {\n return true;\n }\n } else {\n const cellValueAsString = String(cellValue ?? '');\n\n if (cellValueAsString !== undefined && matcher(cellValueAsString, query)) {\n return true;\n }\n }\n\n if (typeof query !== typeof cellValue && dataTypeProperties.parse) {\n const parsedQuery = dataTypeProperties.parse(query, localization.locale);\n\n if (parsedQuery !== undefined && matcher(cellValue, parsedQuery)) {\n return true;\n }\n }\n\n return false;\n}\n\nexport function globalFilterFn<TType = unknown>(\n row: ReactTableRow<TType>,\n columnId: string,\n searchQuery: string,\n localization: Localization\n) {\n try {\n if (row.original) {\n const cellValue = row.getValue(columnId);\n const columnMeta = row._getAllCellsByColumnId()[columnId]?.column.columnDef.meta;\n\n return isMatched<TType>(\n searchQuery,\n cellValue,\n row.original,\n columnMeta?.dataType,\n columnMeta?.dataTypeOptions,\n localization\n );\n }\n } catch {\n // we don't care, just fail silently and return no results\n }\n\n return false;\n}\n\nexport function resetHighlightedColumnIndexes<TType = unknown>(\n searchQuery: string | undefined,\n table: ReactTable<TType>,\n localization: Localization,\n // When typing a search we want to jump to the first match. But when this runs to recompute highlights after\n // an edit is saved, moving the active row would yank focus to the top of the list\n moveActiveRowToFirstMatch = true\n) {\n const tableMeta = table.options.meta as ReactTableMeta<TType>;\n let firstRowIndex: undefined | number;\n\n if (searchQuery) {\n const indexes: number[][] = [];\n const columns = table.getVisibleLeafColumns();\n const rowGrouping = table.getState().grouping;\n\n table.getRowModel().rows.forEach((row, rowIndex) => {\n columns.forEach((column, columnIndex) => {\n try {\n let allowSearch = true;\n\n if (rowGrouping?.length) {\n // if it's the grouped row, only allow search of the grouped column - because that's all that's visible\n if (row.getIsGrouped()) {\n allowSearch = column.getIsGrouped();\n }\n // otherwise for other rows, don't search the grouped column - because it isn't visible\n else if (rowGrouping.includes(column.id)) {\n allowSearch = false;\n }\n }\n\n if (column.getIsVisible() && column.columnDef.enableGlobalFilter && allowSearch) {\n const cellValue = row.getValue(column.id);\n const dataType = column.columnDef.meta?.dataType;\n const dataTypeOptions = column.columnDef.meta?.dataTypeOptions;\n\n if (isMatched<TType>(searchQuery, cellValue, row.original, dataType, dataTypeOptions, localization)) {\n indexes.push([rowIndex, columnIndex]);\n }\n }\n } catch {\n //\n }\n });\n });\n\n tableMeta.search.setHighlightedColumnIndexes(indexes);\n\n if (indexes.length) {\n firstRowIndex = indexes[0]?.[0];\n tableMeta.search.setCurrentHighlightColumnIndex(0);\n } else {\n tableMeta.search.setCurrentHighlightColumnIndex(undefined);\n }\n } else {\n tableMeta.search.setHighlightedColumnIndexes([]);\n tableMeta.search.setCurrentHighlightColumnIndex(undefined);\n }\n\n if (firstRowIndex !== undefined && moveActiveRowToFirstMatch) {\n tableMeta.rowActive.setRowActiveIndex(firstRowIndex);\n }\n\n return firstRowIndex;\n}\n"],"names":["isWeakContains","getDataTypeProperties"],"mappings":"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"}
1
+ {"version":3,"file":"search.cjs","sources":["../../../../../src/primitives/Table/useTableManager/util/search.ts"],"sourcesContent":["import type { Table as ReactTable, TableMeta as ReactTableMeta, Row as ReactTableRow } from '@tanstack/react-table';\n\nimport type { Localization } from '@/components';\n\nimport type { TableColumnDataType, TableColumnDataTypeOptions } from '../../types';\n\nimport { getDataTypeProperties } from './dataTypes';\nimport { isWeakContains } from './filtering';\n\nconst flattenCellValue = (cellValue: object | string): any => {\n return typeof cellValue === 'object' ? Object.values(cellValue).map(flattenCellValue) : cellValue;\n};\n\nexport function isMatched<TType = unknown>(\n query: any,\n cellValue: any,\n rowValue: TType,\n dataType: TableColumnDataType | undefined,\n dataTypeOptions: TableColumnDataTypeOptions | undefined,\n localization: Localization,\n matcher: (left: any, right: any) => boolean = isWeakContains\n) {\n if (typeof cellValue === 'object') {\n return flattenCellValue(cellValue)\n .flat(Infinity)\n .find((y: any) => matcher(y, query));\n }\n const dataTypeProperties = getDataTypeProperties<TType>(dataType);\n\n if (dataTypeProperties.getDisplayValue) {\n const cellDisplayValue = dataTypeProperties.getDisplayValue(cellValue, rowValue, {\n dataTypeOptions,\n localization,\n });\n\n if (Array.isArray(cellDisplayValue)) {\n return cellDisplayValue.some(cdv => matcher(cdv, query));\n }\n\n if (cellDisplayValue !== undefined && isWeakContains(cellDisplayValue, query)) {\n return true;\n }\n } else {\n const cellValueAsString = String(cellValue ?? '');\n\n if (cellValueAsString !== undefined && matcher(cellValueAsString, query)) {\n return true;\n }\n }\n\n if (typeof query !== typeof cellValue && dataTypeProperties.parse) {\n const parsedQuery = dataTypeProperties.parse(query, localization.locale);\n\n if (parsedQuery !== undefined && matcher(cellValue, parsedQuery)) {\n return true;\n }\n }\n\n return false;\n}\n\nexport function globalFilterFn<TType = unknown>(\n row: ReactTableRow<TType>,\n columnId: string,\n searchQuery: string,\n localization: Localization\n) {\n try {\n if (row.original) {\n const cellValue = row.getValue(columnId);\n const columnMeta = row._getAllCellsByColumnId()[columnId]?.column.columnDef.meta;\n\n return isMatched<TType>(\n searchQuery,\n cellValue,\n row.original,\n columnMeta?.dataType,\n columnMeta?.dataTypeOptions,\n localization\n );\n }\n } catch {\n // we don't care, just fail silently and return no results\n }\n\n return false;\n}\n\nexport function resetHighlightedColumnIndexes<TType = unknown>(\n searchQuery: string | undefined,\n table: ReactTable<TType>,\n localization: Localization,\n // When typing a search we want to jump to the first match. But when this runs to recompute highlights after\n // an edit is saved, moving the active row would yank focus to the top of the list\n moveActiveRowToFirstMatch = true\n) {\n const tableMeta = table.options.meta as ReactTableMeta<TType>;\n let firstRowIndex: undefined | number;\n\n if (searchQuery) {\n const indexes: number[][] = [];\n const columns = table.getVisibleLeafColumns();\n const rowGrouping = table.getState().grouping;\n\n table.getRowModel().rows.forEach((row, rowIndex) => {\n columns.forEach((column, columnIndex) => {\n try {\n let allowSearch = true;\n\n if (rowGrouping?.length) {\n // if it's the grouped row, only allow search of the grouped column - because that's all that's visible\n if (row.getIsGrouped()) {\n allowSearch = column.getIsGrouped();\n }\n // otherwise for other rows, don't search the grouped column - because it isn't visible\n else if (rowGrouping.includes(column.id)) {\n allowSearch = false;\n }\n }\n\n if (column.getIsVisible() && column.columnDef.enableGlobalFilter && allowSearch) {\n const cellValue = row.getValue(column.id);\n const dataType = column.columnDef.meta?.dataType;\n const dataTypeOptions = column.columnDef.meta?.dataTypeOptions;\n\n if (isMatched<TType>(searchQuery, cellValue, row.original, dataType, dataTypeOptions, localization)) {\n indexes.push([rowIndex, columnIndex]);\n }\n }\n } catch {\n //\n }\n });\n });\n\n tableMeta.search.setHighlightedColumnIndexes(indexes);\n\n if (indexes.length) {\n firstRowIndex = indexes[0]?.[0];\n tableMeta.search.setCurrentHighlightColumnIndex(0);\n } else {\n tableMeta.search.setCurrentHighlightColumnIndex(undefined);\n }\n } else {\n tableMeta.search.setHighlightedColumnIndexes([]);\n tableMeta.search.setCurrentHighlightColumnIndex(undefined);\n }\n\n if (firstRowIndex !== undefined && moveActiveRowToFirstMatch) {\n tableMeta.rowActive.setRowActiveIndex(firstRowIndex);\n }\n\n return firstRowIndex;\n}\n"],"names":["isWeakContains","getDataTypeProperties"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { Table as ReactTable, Row as ReactTableRow } from '@tanstack/react-table';
2
- import { Localization } from '../../../../components/Provider/Localization';
2
+ import { Localization } from '../../../../components';
3
3
  import { TableColumnDataType, TableColumnDataTypeOptions } from '../../types';
4
4
  export declare function isMatched<TType = unknown>(query: any, cellValue: any, rowValue: TType, dataType: TableColumnDataType | undefined, dataTypeOptions: TableColumnDataTypeOptions | undefined, localization: Localization, matcher?: (left: any, right: any) => boolean): any;
5
5
  export declare function globalFilterFn<TType = unknown>(row: ReactTableRow<TType>, columnId: string, searchQuery: string, localization: Localization): any;