@economic/taco 2.48.2 → 2.49.0-server.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (660) hide show
  1. package/dist/components/Calendar/Calendar.d.ts +0 -1
  2. package/dist/components/Report/Report.d.ts +1 -1
  3. package/dist/components/SearchInput2/SearchInput2.d.ts +2 -0
  4. package/dist/components/Table3/features/useEditingState.d.ts +11 -11
  5. package/dist/components/Table3/features/useTableEditing.d.ts +13 -13
  6. package/dist/esm/_virtual/_rollupPluginBabelHelpers.js +63 -0
  7. package/dist/esm/_virtual/_rollupPluginBabelHelpers.js.map +1 -0
  8. package/dist/esm/node_modules/babel-plugin-transform-async-to-promises/helpers.mjs.js +17 -17
  9. package/dist/esm/node_modules/babel-plugin-transform-async-to-promises/helpers.mjs.js.map +1 -1
  10. package/dist/esm/packages/taco/src/charts/components/Area/AreaChart.js +32 -24
  11. package/dist/esm/packages/taco/src/charts/components/Area/AreaChart.js.map +1 -1
  12. package/dist/esm/packages/taco/src/charts/components/Bar/BarChart.js +84 -61
  13. package/dist/esm/packages/taco/src/charts/components/Bar/BarChart.js.map +1 -1
  14. package/dist/esm/packages/taco/src/charts/components/Donut/ActiveShape.js +16 -15
  15. package/dist/esm/packages/taco/src/charts/components/Donut/ActiveShape.js.map +1 -1
  16. package/dist/esm/packages/taco/src/charts/components/Donut/CenteredLabel.js +12 -13
  17. package/dist/esm/packages/taco/src/charts/components/Donut/CenteredLabel.js.map +1 -1
  18. package/dist/esm/packages/taco/src/charts/components/Donut/DonutChart.js +104 -68
  19. package/dist/esm/packages/taco/src/charts/components/Donut/DonutChart.js.map +1 -1
  20. package/dist/esm/packages/taco/src/charts/components/Donut/Legend.js +39 -29
  21. package/dist/esm/packages/taco/src/charts/components/Donut/Legend.js.map +1 -1
  22. package/dist/esm/packages/taco/src/charts/components/Donut/util.js +2 -2
  23. package/dist/esm/packages/taco/src/charts/components/Donut/util.js.map +1 -1
  24. package/dist/esm/packages/taco/src/charts/components/Legend.js +46 -37
  25. package/dist/esm/packages/taco/src/charts/components/Legend.js.map +1 -1
  26. package/dist/esm/packages/taco/src/charts/components/Line/LineChart.js +32 -24
  27. package/dist/esm/packages/taco/src/charts/components/Line/LineChart.js.map +1 -1
  28. package/dist/esm/packages/taco/src/charts/components/ResponsiveContainer.js +5 -3
  29. package/dist/esm/packages/taco/src/charts/components/ResponsiveContainer.js.map +1 -1
  30. package/dist/esm/packages/taco/src/charts/components/Tooltip.js +26 -25
  31. package/dist/esm/packages/taco/src/charts/components/Tooltip.js.map +1 -1
  32. package/dist/esm/packages/taco/src/charts/utils/color.js +13 -12
  33. package/dist/esm/packages/taco/src/charts/utils/color.js.map +1 -1
  34. package/dist/esm/packages/taco/src/charts/utils/common.js +39 -26
  35. package/dist/esm/packages/taco/src/charts/utils/common.js.map +1 -1
  36. package/dist/esm/packages/taco/src/components/Accordion/Accordion.js +30 -31
  37. package/dist/esm/packages/taco/src/components/Accordion/Accordion.js.map +1 -1
  38. package/dist/esm/packages/taco/src/components/Alert/Alert.js +7 -9
  39. package/dist/esm/packages/taco/src/components/Alert/Alert.js.map +1 -1
  40. package/dist/esm/packages/taco/src/components/AlertDialog/AlertDialog.js +14 -13
  41. package/dist/esm/packages/taco/src/components/AlertDialog/AlertDialog.js.map +1 -1
  42. package/dist/esm/packages/taco/src/components/AlertDialog/Context.js +2 -2
  43. package/dist/esm/packages/taco/src/components/AlertDialog/Context.js.map +1 -1
  44. package/dist/esm/packages/taco/src/components/AlertDialog/components/Content.js +10 -9
  45. package/dist/esm/packages/taco/src/components/AlertDialog/components/Content.js.map +1 -1
  46. package/dist/esm/packages/taco/src/components/AlertDialog/components/Footer.js +4 -4
  47. package/dist/esm/packages/taco/src/components/AlertDialog/components/Footer.js.map +1 -1
  48. package/dist/esm/packages/taco/src/components/AlertDialog/components/Trigger.js +5 -6
  49. package/dist/esm/packages/taco/src/components/AlertDialog/components/Trigger.js.map +1 -1
  50. package/dist/esm/packages/taco/src/components/Backdrop/Backdrop.js +2 -2
  51. package/dist/esm/packages/taco/src/components/Backdrop/Backdrop.js.map +1 -1
  52. package/dist/esm/packages/taco/src/components/Badge/Badge.js +21 -25
  53. package/dist/esm/packages/taco/src/components/Badge/Badge.js.map +1 -1
  54. package/dist/esm/packages/taco/src/components/BadgeIcon/BadgeIcon.js +12 -14
  55. package/dist/esm/packages/taco/src/components/BadgeIcon/BadgeIcon.js.map +1 -1
  56. package/dist/esm/packages/taco/src/components/Banner/Banner.js +7 -10
  57. package/dist/esm/packages/taco/src/components/Banner/Banner.js.map +1 -1
  58. package/dist/esm/packages/taco/src/components/Banner/util.js +3 -3
  59. package/dist/esm/packages/taco/src/components/Banner/util.js.map +1 -1
  60. package/dist/esm/packages/taco/src/components/Button/Button.js +26 -28
  61. package/dist/esm/packages/taco/src/components/Button/Button.js.map +1 -1
  62. package/dist/esm/packages/taco/src/components/Button/util.js +25 -24
  63. package/dist/esm/packages/taco/src/components/Button/util.js.map +1 -1
  64. package/dist/esm/packages/taco/src/components/Calendar/Calendar.js +80 -77
  65. package/dist/esm/packages/taco/src/components/Calendar/Calendar.js.map +1 -1
  66. package/dist/esm/packages/taco/src/components/Card/Card.js +14 -15
  67. package/dist/esm/packages/taco/src/components/Card/Card.js.map +1 -1
  68. package/dist/esm/packages/taco/src/components/Checkbox/Checkbox.js +24 -22
  69. package/dist/esm/packages/taco/src/components/Checkbox/Checkbox.js.map +1 -1
  70. package/dist/esm/packages/taco/src/components/Combobox/Combobox.js +21 -23
  71. package/dist/esm/packages/taco/src/components/Combobox/Combobox.js.map +1 -1
  72. package/dist/esm/packages/taco/src/components/Combobox/useCombobox.js +76 -64
  73. package/dist/esm/packages/taco/src/components/Combobox/useCombobox.js.map +1 -1
  74. package/dist/esm/packages/taco/src/components/Datepicker/Datepicker.js +60 -57
  75. package/dist/esm/packages/taco/src/components/Datepicker/Datepicker.js.map +1 -1
  76. package/dist/esm/packages/taco/src/components/Datepicker/useDatepicker.js +32 -40
  77. package/dist/esm/packages/taco/src/components/Datepicker/useDatepicker.js.map +1 -1
  78. package/dist/esm/packages/taco/src/components/Dialog/Context.js +4 -4
  79. package/dist/esm/packages/taco/src/components/Dialog/Context.js.map +1 -1
  80. package/dist/esm/packages/taco/src/components/Dialog/Dialog.js +54 -39
  81. package/dist/esm/packages/taco/src/components/Dialog/Dialog.js.map +1 -1
  82. package/dist/esm/packages/taco/src/components/Dialog/components/Content.js +36 -38
  83. package/dist/esm/packages/taco/src/components/Dialog/components/Content.js.map +1 -1
  84. package/dist/esm/packages/taco/src/components/Dialog/components/DialogDrawer.js +3 -3
  85. package/dist/esm/packages/taco/src/components/Dialog/components/DialogDrawer.js.map +1 -1
  86. package/dist/esm/packages/taco/src/components/Dialog/components/Extra.js +2 -2
  87. package/dist/esm/packages/taco/src/components/Dialog/components/Extra.js.map +1 -1
  88. package/dist/esm/packages/taco/src/components/Dialog/components/Trigger.js +5 -6
  89. package/dist/esm/packages/taco/src/components/Dialog/components/Trigger.js.map +1 -1
  90. package/dist/esm/packages/taco/src/components/Dialog/util.js +7 -3
  91. package/dist/esm/packages/taco/src/components/Dialog/util.js.map +1 -1
  92. package/dist/esm/packages/taco/src/components/Drawer/Context.js +5 -5
  93. package/dist/esm/packages/taco/src/components/Drawer/Context.js.map +1 -1
  94. package/dist/esm/packages/taco/src/components/Drawer/Drawer.js +61 -51
  95. package/dist/esm/packages/taco/src/components/Drawer/Drawer.js.map +1 -1
  96. package/dist/esm/packages/taco/src/components/Drawer/components/Content.js +134 -145
  97. package/dist/esm/packages/taco/src/components/Drawer/components/Content.js.map +1 -1
  98. package/dist/esm/packages/taco/src/components/Drawer/components/Trigger.js +1 -1
  99. package/dist/esm/packages/taco/src/components/Drawer/components/Trigger.js.map +1 -1
  100. package/dist/esm/packages/taco/src/components/Drawer/util.js +5 -5
  101. package/dist/esm/packages/taco/src/components/Drawer/util.js.map +1 -1
  102. package/dist/esm/packages/taco/src/components/Field/Field.js +14 -12
  103. package/dist/esm/packages/taco/src/components/Field/Field.js.map +1 -1
  104. package/dist/esm/packages/taco/src/components/Form/Form.js +7 -6
  105. package/dist/esm/packages/taco/src/components/Form/Form.js.map +1 -1
  106. package/dist/esm/packages/taco/src/components/Group/Group.js +9 -7
  107. package/dist/esm/packages/taco/src/components/Group/Group.js.map +1 -1
  108. package/dist/esm/packages/taco/src/components/Hanger/Hanger.js +37 -36
  109. package/dist/esm/packages/taco/src/components/Hanger/Hanger.js.map +1 -1
  110. package/dist/esm/packages/taco/src/components/Header/Header.js +2 -2
  111. package/dist/esm/packages/taco/src/components/Header/Header.js.map +1 -1
  112. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Avatar.js +14 -10
  113. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Avatar.js.map +1 -1
  114. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Badge.js +5 -4
  115. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Badge.js.map +1 -1
  116. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Display.js +7 -9
  117. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Display.js.map +1 -1
  118. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Item.js +9 -9
  119. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Item.js.map +1 -1
  120. package/dist/esm/packages/taco/src/components/Header/components/AgreementSelector.js +66 -46
  121. package/dist/esm/packages/taco/src/components/Header/components/AgreementSelector.js.map +1 -1
  122. package/dist/esm/packages/taco/src/components/Header/components/Button.js +12 -8
  123. package/dist/esm/packages/taco/src/components/Header/components/Button.js.map +1 -1
  124. package/dist/esm/packages/taco/src/components/Header/components/Link.js +22 -18
  125. package/dist/esm/packages/taco/src/components/Header/components/Link.js.map +1 -1
  126. package/dist/esm/packages/taco/src/components/Header/components/Logo.js +4 -4
  127. package/dist/esm/packages/taco/src/components/Header/components/Logo.js.map +1 -1
  128. package/dist/esm/packages/taco/src/components/Header/components/MenuButton.js +2 -2
  129. package/dist/esm/packages/taco/src/components/Header/components/MenuButton.js.map +1 -1
  130. package/dist/esm/packages/taco/src/components/Header/components/PrimaryNavigation.js +10 -9
  131. package/dist/esm/packages/taco/src/components/Header/components/PrimaryNavigation.js.map +1 -1
  132. package/dist/esm/packages/taco/src/components/Header/components/SecondaryNavigation.js +2 -2
  133. package/dist/esm/packages/taco/src/components/Header/components/SecondaryNavigation.js.map +1 -1
  134. package/dist/esm/packages/taco/src/components/HoverCard/HoverCard.js +5 -7
  135. package/dist/esm/packages/taco/src/components/HoverCard/HoverCard.js.map +1 -1
  136. package/dist/esm/packages/taco/src/components/HoverCard/Primitives.js +1 -1
  137. package/dist/esm/packages/taco/src/components/HoverCard/Primitives.js.map +1 -1
  138. package/dist/esm/packages/taco/src/components/Icon/Icon.js +7 -7
  139. package/dist/esm/packages/taco/src/components/Icon/Icon.js.map +1 -1
  140. package/dist/esm/packages/taco/src/components/Icon/components/index.js +4 -4
  141. package/dist/esm/packages/taco/src/components/Icon/components/index.js.map +1 -1
  142. package/dist/esm/packages/taco/src/components/IconButton/IconButton.js +22 -23
  143. package/dist/esm/packages/taco/src/components/IconButton/IconButton.js.map +1 -1
  144. package/dist/esm/packages/taco/src/components/Input/Input.js +45 -44
  145. package/dist/esm/packages/taco/src/components/Input/Input.js.map +1 -1
  146. package/dist/esm/packages/taco/src/components/Input/util.js +8 -5
  147. package/dist/esm/packages/taco/src/components/Input/util.js.map +1 -1
  148. package/dist/esm/packages/taco/src/components/Layout/Layout.js +7 -5
  149. package/dist/esm/packages/taco/src/components/Layout/Layout.js.map +1 -1
  150. package/dist/esm/packages/taco/src/components/Layout/components/Content.js +2 -2
  151. package/dist/esm/packages/taco/src/components/Layout/components/Content.js.map +1 -1
  152. package/dist/esm/packages/taco/src/components/Layout/components/Context.js +4 -2
  153. package/dist/esm/packages/taco/src/components/Layout/components/Context.js.map +1 -1
  154. package/dist/esm/packages/taco/src/components/Layout/components/Page.js +2 -2
  155. package/dist/esm/packages/taco/src/components/Layout/components/Page.js.map +1 -1
  156. package/dist/esm/packages/taco/src/components/Layout/components/Sidebar.js +34 -27
  157. package/dist/esm/packages/taco/src/components/Layout/components/Sidebar.js.map +1 -1
  158. package/dist/esm/packages/taco/src/components/Layout/components/Top.js +9 -6
  159. package/dist/esm/packages/taco/src/components/Layout/components/Top.js.map +1 -1
  160. package/dist/esm/packages/taco/src/components/List/components/Button.js +1 -1
  161. package/dist/esm/packages/taco/src/components/List/components/Button.js.map +1 -1
  162. package/dist/esm/packages/taco/src/components/List/components/Collapsible.js +10 -7
  163. package/dist/esm/packages/taco/src/components/List/components/Collapsible.js.map +1 -1
  164. package/dist/esm/packages/taco/src/components/List/components/Group.js +1 -1
  165. package/dist/esm/packages/taco/src/components/List/components/Group.js.map +1 -1
  166. package/dist/esm/packages/taco/src/components/List/components/Item.js +15 -13
  167. package/dist/esm/packages/taco/src/components/List/components/Item.js.map +1 -1
  168. package/dist/esm/packages/taco/src/components/List/components/Link.js +3 -3
  169. package/dist/esm/packages/taco/src/components/List/components/Link.js.map +1 -1
  170. package/dist/esm/packages/taco/src/components/List/components/Toggle.js +29 -27
  171. package/dist/esm/packages/taco/src/components/List/components/Toggle.js.map +1 -1
  172. package/dist/esm/packages/taco/src/components/Listbox/Listbox.js +21 -26
  173. package/dist/esm/packages/taco/src/components/Listbox/Listbox.js.map +1 -1
  174. package/dist/esm/packages/taco/src/components/Listbox/ScrollableList.js +82 -70
  175. package/dist/esm/packages/taco/src/components/Listbox/ScrollableList.js.map +1 -1
  176. package/dist/esm/packages/taco/src/components/Listbox/useListbox.js +56 -51
  177. package/dist/esm/packages/taco/src/components/Listbox/useListbox.js.map +1 -1
  178. package/dist/esm/packages/taco/src/components/Listbox/useMultiListbox.js +83 -65
  179. package/dist/esm/packages/taco/src/components/Listbox/useMultiListbox.js.map +1 -1
  180. package/dist/esm/packages/taco/src/components/Listbox/useTypeahead.js +9 -10
  181. package/dist/esm/packages/taco/src/components/Listbox/useTypeahead.js.map +1 -1
  182. package/dist/esm/packages/taco/src/components/Listbox/util.js +78 -48
  183. package/dist/esm/packages/taco/src/components/Listbox/util.js.map +1 -1
  184. package/dist/esm/packages/taco/src/components/Menu/Context.js +2 -2
  185. package/dist/esm/packages/taco/src/components/Menu/Context.js.map +1 -1
  186. package/dist/esm/packages/taco/src/components/Menu/Menu.js +42 -26
  187. package/dist/esm/packages/taco/src/components/Menu/Menu.js.map +1 -1
  188. package/dist/esm/packages/taco/src/components/Menu/components/Checkbox.js +8 -8
  189. package/dist/esm/packages/taco/src/components/Menu/components/Checkbox.js.map +1 -1
  190. package/dist/esm/packages/taco/src/components/Menu/components/Content.js +27 -21
  191. package/dist/esm/packages/taco/src/components/Menu/components/Content.js.map +1 -1
  192. package/dist/esm/packages/taco/src/components/Menu/components/Header.js +3 -3
  193. package/dist/esm/packages/taco/src/components/Menu/components/Header.js.map +1 -1
  194. package/dist/esm/packages/taco/src/components/Menu/components/Item.js +32 -32
  195. package/dist/esm/packages/taco/src/components/Menu/components/Item.js.map +1 -1
  196. package/dist/esm/packages/taco/src/components/Menu/components/Link.js +10 -10
  197. package/dist/esm/packages/taco/src/components/Menu/components/Link.js.map +1 -1
  198. package/dist/esm/packages/taco/src/components/Menu/components/RadioGroup.js +15 -16
  199. package/dist/esm/packages/taco/src/components/Menu/components/RadioGroup.js.map +1 -1
  200. package/dist/esm/packages/taco/src/components/Menu/components/Separator.js +1 -1
  201. package/dist/esm/packages/taco/src/components/Menu/components/Separator.js.map +1 -1
  202. package/dist/esm/packages/taco/src/components/Menu/components/SubMenu.js +7 -7
  203. package/dist/esm/packages/taco/src/components/Menu/components/SubMenu.js.map +1 -1
  204. package/dist/esm/packages/taco/src/components/Menu/components/Trigger.js +5 -5
  205. package/dist/esm/packages/taco/src/components/Menu/components/Trigger.js.map +1 -1
  206. package/dist/esm/packages/taco/src/components/ModeSwitch/ModeSwitch.js +6 -6
  207. package/dist/esm/packages/taco/src/components/ModeSwitch/ModeSwitch.js.map +1 -1
  208. package/dist/esm/packages/taco/src/components/Navigation/Navigation.js +41 -36
  209. package/dist/esm/packages/taco/src/components/Navigation/Navigation.js.map +1 -1
  210. package/dist/esm/packages/taco/src/components/Navigation2/Navigation2.js +6 -6
  211. package/dist/esm/packages/taco/src/components/Navigation2/Navigation2.js.map +1 -1
  212. package/dist/esm/packages/taco/src/components/Navigation2/components/Content.js +6 -6
  213. package/dist/esm/packages/taco/src/components/Navigation2/components/Content.js.map +1 -1
  214. package/dist/esm/packages/taco/src/components/Navigation2/components/Group.js +14 -11
  215. package/dist/esm/packages/taco/src/components/Navigation2/components/Group.js.map +1 -1
  216. package/dist/esm/packages/taco/src/components/Navigation2/components/Link.js +31 -24
  217. package/dist/esm/packages/taco/src/components/Navigation2/components/Link.js.map +1 -1
  218. package/dist/esm/packages/taco/src/components/Navigation2/components/Section.js +7 -7
  219. package/dist/esm/packages/taco/src/components/Navigation2/components/Section.js.map +1 -1
  220. package/dist/esm/packages/taco/src/components/Navigation2/components/util.js +9 -7
  221. package/dist/esm/packages/taco/src/components/Navigation2/components/util.js.map +1 -1
  222. package/dist/esm/packages/taco/src/components/OverflowGroup/OverflowGroup.js +48 -51
  223. package/dist/esm/packages/taco/src/components/OverflowGroup/OverflowGroup.js.map +1 -1
  224. package/dist/esm/packages/taco/src/components/Pagination/PageNumbers.js +26 -23
  225. package/dist/esm/packages/taco/src/components/Pagination/PageNumbers.js.map +1 -1
  226. package/dist/esm/packages/taco/src/components/Pagination/Pagination.js +53 -39
  227. package/dist/esm/packages/taco/src/components/Pagination/Pagination.js.map +1 -1
  228. package/dist/esm/packages/taco/src/components/Pagination/usePagination.js +17 -7
  229. package/dist/esm/packages/taco/src/components/Pagination/usePagination.js.map +1 -1
  230. package/dist/esm/packages/taco/src/components/Pagination/usePaginationShortcuts.js +8 -9
  231. package/dist/esm/packages/taco/src/components/Pagination/usePaginationShortcuts.js.map +1 -1
  232. package/dist/esm/packages/taco/src/components/Popover/Popover.js +45 -43
  233. package/dist/esm/packages/taco/src/components/Popover/Popover.js.map +1 -1
  234. package/dist/esm/packages/taco/src/components/Popover/Primitives.js +1 -1
  235. package/dist/esm/packages/taco/src/components/Popover/Primitives.js.map +1 -1
  236. package/dist/esm/packages/taco/src/components/Popover/util.js +3 -1
  237. package/dist/esm/packages/taco/src/components/Popover/util.js.map +1 -1
  238. package/dist/esm/packages/taco/src/components/Progress/Progress.js +13 -11
  239. package/dist/esm/packages/taco/src/components/Progress/Progress.js.map +1 -1
  240. package/dist/esm/packages/taco/src/components/Provider/Localization.js +13 -12
  241. package/dist/esm/packages/taco/src/components/Provider/Localization.js.map +1 -1
  242. package/dist/esm/packages/taco/src/components/Provider/Provider.js +8 -8
  243. package/dist/esm/packages/taco/src/components/Provider/Provider.js.map +1 -1
  244. package/dist/esm/packages/taco/src/components/RadioGroup/RadioGroup.js +54 -47
  245. package/dist/esm/packages/taco/src/components/RadioGroup/RadioGroup.js.map +1 -1
  246. package/dist/esm/packages/taco/src/components/RadioGroup/util.js +7 -1
  247. package/dist/esm/packages/taco/src/components/RadioGroup/util.js.map +1 -1
  248. package/dist/esm/packages/taco/src/components/Report/Report.js +7 -5
  249. package/dist/esm/packages/taco/src/components/Report/Report.js.map +1 -1
  250. package/dist/esm/packages/taco/src/components/Report/useReport.js +1 -1
  251. package/dist/esm/packages/taco/src/components/Report/useReport.js.map +1 -1
  252. package/dist/esm/packages/taco/src/components/ScrollArea/ScrollArea.js +17 -13
  253. package/dist/esm/packages/taco/src/components/ScrollArea/ScrollArea.js.map +1 -1
  254. package/dist/esm/packages/taco/src/components/SearchInput/SearchInput.js +11 -11
  255. package/dist/esm/packages/taco/src/components/SearchInput/SearchInput.js.map +1 -1
  256. package/dist/esm/packages/taco/src/components/SearchInput2/SearchInput2.js +48 -40
  257. package/dist/esm/packages/taco/src/components/SearchInput2/SearchInput2.js.map +1 -1
  258. package/dist/esm/packages/taco/src/components/Select/Select.js +28 -31
  259. package/dist/esm/packages/taco/src/components/Select/Select.js.map +1 -1
  260. package/dist/esm/packages/taco/src/components/Select/useSelect.js +79 -70
  261. package/dist/esm/packages/taco/src/components/Select/useSelect.js.map +1 -1
  262. package/dist/esm/packages/taco/src/components/Select2/Select2.js +154 -121
  263. package/dist/esm/packages/taco/src/components/Select2/Select2.js.map +1 -1
  264. package/dist/esm/packages/taco/src/components/Select2/components/Collection.js +2 -4
  265. package/dist/esm/packages/taco/src/components/Select2/components/Collection.js.map +1 -1
  266. package/dist/esm/packages/taco/src/components/Select2/components/Context.js +4 -2
  267. package/dist/esm/packages/taco/src/components/Select2/components/Context.js.map +1 -1
  268. package/dist/esm/packages/taco/src/components/Select2/components/Create.js +45 -41
  269. package/dist/esm/packages/taco/src/components/Select2/components/Create.js.map +1 -1
  270. package/dist/esm/packages/taco/src/components/Select2/components/Edit.js +145 -129
  271. package/dist/esm/packages/taco/src/components/Select2/components/Edit.js.map +1 -1
  272. package/dist/esm/packages/taco/src/components/Select2/components/Group.js +8 -8
  273. package/dist/esm/packages/taco/src/components/Select2/components/Group.js.map +1 -1
  274. package/dist/esm/packages/taco/src/components/Select2/components/Option.js +29 -30
  275. package/dist/esm/packages/taco/src/components/Select2/components/Option.js.map +1 -1
  276. package/dist/esm/packages/taco/src/components/Select2/components/Search.js +9 -10
  277. package/dist/esm/packages/taco/src/components/Select2/components/Search.js.map +1 -1
  278. package/dist/esm/packages/taco/src/components/Select2/components/Title.js +2 -2
  279. package/dist/esm/packages/taco/src/components/Select2/components/Title.js.map +1 -1
  280. package/dist/esm/packages/taco/src/components/Select2/components/Trigger.js +136 -128
  281. package/dist/esm/packages/taco/src/components/Select2/components/Trigger.js.map +1 -1
  282. package/dist/esm/packages/taco/src/components/Select2/hooks/useChildren.js +32 -23
  283. package/dist/esm/packages/taco/src/components/Select2/hooks/useChildren.js.map +1 -1
  284. package/dist/esm/packages/taco/src/components/Select2/utilities.js +13 -6
  285. package/dist/esm/packages/taco/src/components/Select2/utilities.js.map +1 -1
  286. package/dist/esm/packages/taco/src/components/Shortcut/Shortcut.js +16 -13
  287. package/dist/esm/packages/taco/src/components/Shortcut/Shortcut.js.map +1 -1
  288. package/dist/esm/packages/taco/src/components/Spinner/Spinner.js +17 -12
  289. package/dist/esm/packages/taco/src/components/Spinner/Spinner.js.map +1 -1
  290. package/dist/esm/packages/taco/src/components/Switch/Switch.js +14 -14
  291. package/dist/esm/packages/taco/src/components/Switch/Switch.js.map +1 -1
  292. package/dist/esm/packages/taco/src/components/Table/components/BaseTable.js +28 -23
  293. package/dist/esm/packages/taco/src/components/Table/components/BaseTable.js.map +1 -1
  294. package/dist/esm/packages/taco/src/components/Table/components/PaginatedTable.js +7 -3
  295. package/dist/esm/packages/taco/src/components/Table/components/PaginatedTable.js.map +1 -1
  296. package/dist/esm/packages/taco/src/components/Table/components/Table.js +22 -18
  297. package/dist/esm/packages/taco/src/components/Table/components/Table.js.map +1 -1
  298. package/dist/esm/packages/taco/src/components/Table/components/WindowedTable.js +100 -92
  299. package/dist/esm/packages/taco/src/components/Table/components/WindowedTable.js.map +1 -1
  300. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowActions.js +137 -119
  301. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowActions.js.map +1 -1
  302. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowDraggable.js +55 -55
  303. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowDraggable.js.map +1 -1
  304. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowEditing.js +35 -41
  305. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowEditing.js.map +1 -1
  306. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowSelect.js +77 -71
  307. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowSelect.js.map +1 -1
  308. package/dist/esm/packages/taco/src/components/Table/hooks/useRowCreation.js +56 -30
  309. package/dist/esm/packages/taco/src/components/Table/hooks/useRowCreation.js.map +1 -1
  310. package/dist/esm/packages/taco/src/components/Table/hooks/useTable.js +151 -142
  311. package/dist/esm/packages/taco/src/components/Table/hooks/useTable.js.map +1 -1
  312. package/dist/esm/packages/taco/src/components/Table/hooks/useTableKeyboardNavigation.js +22 -20
  313. package/dist/esm/packages/taco/src/components/Table/hooks/useTableKeyboardNavigation.js.map +1 -1
  314. package/dist/esm/packages/taco/src/components/Table/util/renderColumn.js +9 -12
  315. package/dist/esm/packages/taco/src/components/Table/util/renderColumn.js.map +1 -1
  316. package/dist/esm/packages/taco/src/components/Table/util/renderRow.js +41 -41
  317. package/dist/esm/packages/taco/src/components/Table/util/renderRow.js.map +1 -1
  318. package/dist/esm/packages/taco/src/components/Table/util/rowIndexPath.js +16 -14
  319. package/dist/esm/packages/taco/src/components/Table/util/rowIndexPath.js.map +1 -1
  320. package/dist/esm/packages/taco/src/components/Table/util/sortTypes.js +32 -26
  321. package/dist/esm/packages/taco/src/components/Table/util/sortTypes.js.map +1 -1
  322. package/dist/esm/packages/taco/src/components/Table/util.js +37 -30
  323. package/dist/esm/packages/taco/src/components/Table/util.js.map +1 -1
  324. package/dist/esm/packages/taco/src/components/Table3/Table3.js +12 -10
  325. package/dist/esm/packages/taco/src/components/Table3/Table3.js.map +1 -1
  326. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Cell.js +13 -14
  327. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Cell.js.map +1 -1
  328. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Editing/RowMoveIndicator.js +21 -23
  329. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Editing/RowMoveIndicator.js.map +1 -1
  330. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Editing/TextareaWithAutosizing.js +20 -17
  331. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Editing/TextareaWithAutosizing.js.map +1 -1
  332. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingControlCell.js +71 -75
  333. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingControlCell.js.map +1 -1
  334. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingDisplayCell.js +2 -2
  335. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingDisplayCell.js.map +1 -1
  336. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/util.js +19 -20
  337. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/util.js.map +1 -1
  338. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Internal/EditingActionsMenu.js +26 -25
  339. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Internal/EditingActionsMenu.js.map +1 -1
  340. package/dist/esm/packages/taco/src/components/Table3/components/Editing/Alert.js +60 -48
  341. package/dist/esm/packages/taco/src/components/Table3/components/Editing/Alert.js.map +1 -1
  342. package/dist/esm/packages/taco/src/components/Table3/components/Editing/DiscardChangesConfirmationDialog.js +7 -8
  343. package/dist/esm/packages/taco/src/components/Table3/components/Editing/DiscardChangesConfirmationDialog.js.map +1 -1
  344. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/CreateNewRow.js +18 -19
  345. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/CreateNewRow.js.map +1 -1
  346. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/SaveStatus.js +7 -10
  347. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/SaveStatus.js.map +1 -1
  348. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/TemporaryRow.js +38 -35
  349. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/TemporaryRow.js.map +1 -1
  350. package/dist/esm/packages/taco/src/components/Table3/components/Row/Row.js +15 -15
  351. package/dist/esm/packages/taco/src/components/Table3/components/Row/Row.js.map +1 -1
  352. package/dist/esm/packages/taco/src/components/Table3/components/Toolbar/Editing/Editing.js +8 -11
  353. package/dist/esm/packages/taco/src/components/Table3/components/Toolbar/Editing/Editing.js.map +1 -1
  354. package/dist/esm/packages/taco/src/components/Table3/features/useEditingState.js +181 -241
  355. package/dist/esm/packages/taco/src/components/Table3/features/useEditingState.js.map +1 -1
  356. package/dist/esm/packages/taco/src/components/Table3/features/useTableEditing.js +55 -33
  357. package/dist/esm/packages/taco/src/components/Table3/features/useTableEditing.js.map +1 -1
  358. package/dist/esm/packages/taco/src/components/Table3/listeners/useTableEditingListener.js +33 -28
  359. package/dist/esm/packages/taco/src/components/Table3/listeners/useTableEditingListener.js.map +1 -1
  360. package/dist/esm/packages/taco/src/components/Table3/useTable3.js +25 -19
  361. package/dist/esm/packages/taco/src/components/Table3/useTable3.js.map +1 -1
  362. package/dist/esm/packages/taco/src/components/Table3/util/editing.js +29 -35
  363. package/dist/esm/packages/taco/src/components/Table3/util/editing.js.map +1 -1
  364. package/dist/esm/packages/taco/src/components/Tabs/Tabs.js +34 -35
  365. package/dist/esm/packages/taco/src/components/Tabs/Tabs.js.map +1 -1
  366. package/dist/esm/packages/taco/src/components/Tag/Tag.js +12 -12
  367. package/dist/esm/packages/taco/src/components/Tag/Tag.js.map +1 -1
  368. package/dist/esm/packages/taco/src/components/Textarea/Textarea.js +8 -11
  369. package/dist/esm/packages/taco/src/components/Textarea/Textarea.js.map +1 -1
  370. package/dist/esm/packages/taco/src/components/Toast/Toast.js +19 -20
  371. package/dist/esm/packages/taco/src/components/Toast/Toast.js.map +1 -1
  372. package/dist/esm/packages/taco/src/components/Toast/Toaster.js +117 -96
  373. package/dist/esm/packages/taco/src/components/Toast/Toaster.js.map +1 -1
  374. package/dist/esm/packages/taco/src/components/Toast/util.js +6 -4
  375. package/dist/esm/packages/taco/src/components/Toast/util.js.map +1 -1
  376. package/dist/esm/packages/taco/src/components/Tooltip/Tooltip.js +10 -9
  377. package/dist/esm/packages/taco/src/components/Tooltip/Tooltip.js.map +1 -1
  378. package/dist/esm/packages/taco/src/components/Tour/Tour.js +49 -46
  379. package/dist/esm/packages/taco/src/components/Tour/Tour.js.map +1 -1
  380. package/dist/esm/packages/taco/src/components/Treeview/Treeview.js +33 -27
  381. package/dist/esm/packages/taco/src/components/Treeview/Treeview.js.map +1 -1
  382. package/dist/esm/packages/taco/src/components/Truncate/Truncate.js +15 -13
  383. package/dist/esm/packages/taco/src/components/Truncate/Truncate.js.map +1 -1
  384. package/dist/esm/packages/taco/src/components/VisuallyHidden/VisuallyHidden.js +1 -1
  385. package/dist/esm/packages/taco/src/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
  386. package/dist/esm/packages/taco/src/hooks/useBoundaryOverflowDetection.js +11 -6
  387. package/dist/esm/packages/taco/src/hooks/useBoundaryOverflowDetection.js.map +1 -1
  388. package/dist/esm/packages/taco/src/hooks/useBoundingClientRectListener.js +19 -13
  389. package/dist/esm/packages/taco/src/hooks/useBoundingClientRectListener.js.map +1 -1
  390. package/dist/esm/packages/taco/src/hooks/useGlobalKeyDown.js +4 -4
  391. package/dist/esm/packages/taco/src/hooks/useGlobalKeyDown.js.map +1 -1
  392. package/dist/esm/packages/taco/src/hooks/useId.js +4 -2
  393. package/dist/esm/packages/taco/src/hooks/useId.js.map +1 -1
  394. package/dist/esm/packages/taco/src/hooks/useIntersectionObserver.js +20 -18
  395. package/dist/esm/packages/taco/src/hooks/useIntersectionObserver.js.map +1 -1
  396. package/dist/esm/packages/taco/src/hooks/useIsFormControl.js +7 -5
  397. package/dist/esm/packages/taco/src/hooks/useIsFormControl.js.map +1 -1
  398. package/dist/esm/packages/taco/src/hooks/useIsHoverStatePaused.js +9 -5
  399. package/dist/esm/packages/taco/src/hooks/useIsHoverStatePaused.js.map +1 -1
  400. package/dist/esm/packages/taco/src/hooks/useIsLargeScreen.js +3 -1
  401. package/dist/esm/packages/taco/src/hooks/useIsLargeScreen.js.map +1 -1
  402. package/dist/esm/packages/taco/src/hooks/useLazyEffect.js +2 -2
  403. package/dist/esm/packages/taco/src/hooks/useLazyEffect.js.map +1 -1
  404. package/dist/esm/packages/taco/src/hooks/useLocalStorage.js +24 -22
  405. package/dist/esm/packages/taco/src/hooks/useLocalStorage.js.map +1 -1
  406. package/dist/esm/packages/taco/src/hooks/useMatchMedia.js +13 -6
  407. package/dist/esm/packages/taco/src/hooks/useMatchMedia.js.map +1 -1
  408. package/dist/esm/packages/taco/src/hooks/useMergedRef.js +3 -3
  409. package/dist/esm/packages/taco/src/hooks/useMergedRef.js.map +1 -1
  410. package/dist/esm/packages/taco/src/hooks/usePrevious.js +2 -2
  411. package/dist/esm/packages/taco/src/hooks/usePrevious.js.map +1 -1
  412. package/dist/esm/packages/taco/src/index.js +1 -0
  413. package/dist/esm/packages/taco/src/index.js.map +1 -1
  414. package/dist/esm/packages/taco/src/primitives/BubbleSelect.js +14 -14
  415. package/dist/esm/packages/taco/src/primitives/BubbleSelect.js.map +1 -1
  416. package/dist/esm/packages/taco/src/primitives/Button.js +15 -12
  417. package/dist/esm/packages/taco/src/primitives/Button.js.map +1 -1
  418. package/dist/esm/packages/taco/src/primitives/Collection/components/Root.js +50 -44
  419. package/dist/esm/packages/taco/src/primitives/Collection/components/Root.js.map +1 -1
  420. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Context.js +4 -2
  421. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Context.js.map +1 -1
  422. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Group.js +9 -5
  423. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Group.js.map +1 -1
  424. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Option.js +16 -18
  425. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Option.js.map +1 -1
  426. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Root.js +47 -40
  427. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Root.js.map +1 -1
  428. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Title.js +9 -10
  429. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Title.js.map +1 -1
  430. package/dist/esm/packages/taco/src/primitives/Sortable/components/Container.js +22 -20
  431. package/dist/esm/packages/taco/src/primitives/Sortable/components/Container.js.map +1 -1
  432. package/dist/esm/packages/taco/src/primitives/Sortable/components/Item.js +24 -27
  433. package/dist/esm/packages/taco/src/primitives/Sortable/components/Item.js.map +1 -1
  434. package/dist/esm/packages/taco/src/primitives/Sortable/components/List.js +11 -10
  435. package/dist/esm/packages/taco/src/primitives/Sortable/components/List.js.map +1 -1
  436. package/dist/esm/packages/taco/src/primitives/Table/Core/Table.js +22 -19
  437. package/dist/esm/packages/taco/src/primitives/Table/Core/Table.js.map +1 -1
  438. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/Body.js +25 -22
  439. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/Body.js.map +1 -1
  440. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/EmptyStateBody.js +7 -7
  441. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/EmptyStateBody.js.map +1 -1
  442. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/util.js +30 -14
  443. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/util.js.map +1 -1
  444. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/BuiltIns/DisplayCell.js +18 -19
  445. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/BuiltIns/DisplayCell.js.map +1 -1
  446. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/BuiltIns/GroupedCell.js +34 -34
  447. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/BuiltIns/GroupedCell.js.map +1 -1
  448. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/Cell.js +10 -12
  449. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/Cell.js.map +1 -1
  450. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/util.js +19 -18
  451. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/util.js.map +1 -1
  452. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Actions.js +42 -40
  453. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Actions.js.map +1 -1
  454. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Drag.js +5 -7
  455. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Drag.js.map +1 -1
  456. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Expansion.js +19 -24
  457. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Expansion.js.map +1 -1
  458. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Selection.js +60 -56
  459. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Selection.js.map +1 -1
  460. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Footer.js +27 -23
  461. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Footer.js.map +1 -1
  462. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Summary.js +16 -17
  463. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Summary.js.map +1 -1
  464. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/Header.js +86 -87
  465. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/Header.js.map +1 -1
  466. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Goto.js +14 -11
  467. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Goto.js.map +1 -1
  468. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Menu.js +85 -58
  469. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Menu.js.map +1 -1
  470. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Resizer.js +18 -20
  471. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Resizer.js.map +1 -1
  472. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/SortIndicator.js +3 -3
  473. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/SortIndicator.js.map +1 -1
  474. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/util.js +11 -6
  475. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/util.js.map +1 -1
  476. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/DisplayRow.js +58 -49
  477. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/DisplayRow.js.map +1 -1
  478. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/SkeletonRow.js +41 -43
  479. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/SkeletonRow.js.map +1 -1
  480. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/Row.js +61 -19
  481. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/Row.js.map +1 -1
  482. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/RowContext.js +1 -1
  483. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/RowContext.js.map +1 -1
  484. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/Toolbar.js +11 -11
  485. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/Toolbar.js.map +1 -1
  486. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/FilterContext.js +1 -1
  487. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/FilterContext.js.map +1 -1
  488. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/Filters.js +23 -22
  489. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/Filters.js.map +1 -1
  490. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/ManageFiltersPopover.js +54 -39
  491. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/ManageFiltersPopover.js.map +1 -1
  492. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/Filter.js +39 -37
  493. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/Filter.js.map +1 -1
  494. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterColumn.js +20 -16
  495. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterColumn.js.map +1 -1
  496. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterComparator.js +16 -15
  497. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterComparator.js.map +1 -1
  498. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterValue.js +50 -41
  499. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterValue.js.map +1 -1
  500. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/util.js +13 -9
  501. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/util.js.map +1 -1
  502. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/Print.js +59 -51
  503. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/Print.js.map +1 -1
  504. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/PrintDialog.js +71 -67
  505. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/PrintDialog.js.map +1 -1
  506. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Search/Search.js +60 -34
  507. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Search/Search.js.map +1 -1
  508. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Settings/HideOrOrderPopover.js +64 -44
  509. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Settings/HideOrOrderPopover.js.map +1 -1
  510. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Settings/Settings.js +62 -51
  511. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Settings/Settings.js.map +1 -1
  512. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableGlobalShortcuts.js +7 -7
  513. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableGlobalShortcuts.js.map +1 -1
  514. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableRef.js +13 -5
  515. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableRef.js.map +1 -1
  516. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableRenderer.js +122 -79
  517. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableRenderer.js.map +1 -1
  518. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyle.js +15 -15
  519. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyle.js.map +1 -1
  520. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyleColumnFreezing.js +31 -41
  521. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyleColumnFreezing.js.map +1 -1
  522. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyleGrid.js +31 -30
  523. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyleGrid.js.map +1 -1
  524. package/dist/esm/packages/taco/src/primitives/Table/Core/listeners/useTableRowActiveListener.js +3 -3
  525. package/dist/esm/packages/taco/src/primitives/Table/Core/listeners/useTableRowActiveListener.js.map +1 -1
  526. package/dist/esm/packages/taco/src/primitives/Table/Core/useTable.js +14 -15
  527. package/dist/esm/packages/taco/src/primitives/Table/Core/useTable.js.map +1 -1
  528. package/dist/esm/packages/taco/src/primitives/Table/Core/util/rows.js +2 -2
  529. package/dist/esm/packages/taco/src/primitives/Table/Core/util/rows.js.map +1 -1
  530. package/dist/esm/packages/taco/src/primitives/Table/types.js.map +1 -1
  531. package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader.js +47 -43
  532. package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader.js.map +1 -1
  533. package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader2.js +231 -0
  534. package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader2.js.map +1 -0
  535. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableColumnFreezing.js +11 -6
  536. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableColumnFreezing.js.map +1 -1
  537. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableColumnOrdering.js +5 -2
  538. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableColumnOrdering.js.map +1 -1
  539. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableFontSize.js +15 -5
  540. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableFontSize.js.map +1 -1
  541. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableFooter.js +5 -2
  542. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableFooter.js.map +1 -1
  543. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTablePrinting.js +26 -16
  544. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTablePrinting.js.map +1 -1
  545. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowActions.js +9 -3
  546. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowActions.js.map +1 -1
  547. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowActive.js +43 -24
  548. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowActive.js.map +1 -1
  549. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowClick.js +9 -6
  550. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowClick.js.map +1 -1
  551. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowDrag.js +9 -4
  552. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowDrag.js.map +1 -1
  553. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowDrop.js +5 -2
  554. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowDrop.js.map +1 -1
  555. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowExpansion.js +9 -3
  556. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowExpansion.js.map +1 -1
  557. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowGoto.js +5 -2
  558. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowGoto.js.map +1 -1
  559. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowGroups.js +1 -1
  560. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowGroups.js.map +1 -1
  561. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowHeight.js +15 -5
  562. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowHeight.js.map +1 -1
  563. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowSelection.js +14 -9
  564. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowSelection.js.map +1 -1
  565. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableSearch.js +26 -13
  566. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableSearch.js.map +1 -1
  567. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableServerLoading.js +43 -20
  568. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableServerLoading.js.map +1 -1
  569. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableSettings.js +34 -24
  570. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableSettings.js.map +1 -1
  571. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableDataListener.js +4 -4
  572. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableDataListener.js.map +1 -1
  573. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableFilterListener.js +5 -3
  574. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableFilterListener.js.map +1 -1
  575. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableFontSizeListener.js +20 -16
  576. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableFontSizeListener.js.map +1 -1
  577. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowHeightListener.js +2 -2
  578. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowHeightListener.js.map +1 -1
  579. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowSelectionListener.js +8 -6
  580. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowSelectionListener.js.map +1 -1
  581. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSearchListener.js +17 -16
  582. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSearchListener.js.map +1 -1
  583. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableServerLoadingListener.js +8 -4
  584. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableServerLoadingListener.js.map +1 -1
  585. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSettingsListener.js +8 -6
  586. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSettingsListener.js.map +1 -1
  587. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableShortcutsListener.js +17 -17
  588. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableShortcutsListener.js.map +1 -1
  589. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSortingListener.js +2 -2
  590. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSortingListener.js.map +1 -1
  591. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/useTableManager.js +56 -56
  592. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/useTableManager.js.map +1 -1
  593. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/columns.js +61 -29
  594. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/columns.js.map +1 -1
  595. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/dataTypes.js +8 -8
  596. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/dataTypes.js.map +1 -1
  597. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/filtering.js +33 -19
  598. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/filtering.js.map +1 -1
  599. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/presets.js +11 -11
  600. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/presets.js.map +1 -1
  601. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/search.js +24 -20
  602. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/search.js.map +1 -1
  603. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/settings.js +6 -7
  604. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/settings.js.map +1 -1
  605. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/setup.js +145 -107
  606. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/setup.js.map +1 -1
  607. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/sorting.js +3 -1
  608. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/sorting.js.map +1 -1
  609. package/dist/esm/packages/taco/src/types.js +1 -1
  610. package/dist/esm/packages/taco/src/types.js.map +1 -1
  611. package/dist/esm/packages/taco/src/utils/aria.js +2 -2
  612. package/dist/esm/packages/taco/src/utils/aria.js.map +1 -1
  613. package/dist/esm/packages/taco/src/utils/date.js +47 -23
  614. package/dist/esm/packages/taco/src/utils/date.js.map +1 -1
  615. package/dist/esm/packages/taco/src/utils/debounce.js +10 -4
  616. package/dist/esm/packages/taco/src/utils/debounce.js.map +1 -1
  617. package/dist/esm/packages/taco/src/utils/device.js +4 -2
  618. package/dist/esm/packages/taco/src/utils/device.js.map +1 -1
  619. package/dist/esm/packages/taco/src/utils/dom.js +29 -23
  620. package/dist/esm/packages/taco/src/utils/dom.js.map +1 -1
  621. package/dist/esm/packages/taco/src/utils/hooks/useDraggable.js +40 -38
  622. package/dist/esm/packages/taco/src/utils/hooks/useDraggable.js.map +1 -1
  623. package/dist/esm/packages/taco/src/utils/hooks/useDropTarget.js +9 -7
  624. package/dist/esm/packages/taco/src/utils/hooks/useDropTarget.js.map +1 -1
  625. package/dist/esm/packages/taco/src/utils/hooks/useListKeyboardNavigation.js +20 -9
  626. package/dist/esm/packages/taco/src/utils/hooks/useListKeyboardNavigation.js.map +1 -1
  627. package/dist/esm/packages/taco/src/utils/hooks/useListScrollTo.js +9 -9
  628. package/dist/esm/packages/taco/src/utils/hooks/useListScrollTo.js.map +1 -1
  629. package/dist/esm/packages/taco/src/utils/hooks/useOnClickOutside.js +8 -6
  630. package/dist/esm/packages/taco/src/utils/hooks/useOnClickOutside.js.map +1 -1
  631. package/dist/esm/packages/taco/src/utils/hooks/useTimer.js +16 -11
  632. package/dist/esm/packages/taco/src/utils/hooks/useTimer.js.map +1 -1
  633. package/dist/esm/packages/taco/src/utils/hooks/useTruncated.js +11 -6
  634. package/dist/esm/packages/taco/src/utils/hooks/useTruncated.js.map +1 -1
  635. package/dist/esm/packages/taco/src/utils/input.js +10 -7
  636. package/dist/esm/packages/taco/src/utils/input.js.map +1 -1
  637. package/dist/esm/packages/taco/src/utils/keyboard.js +10 -7
  638. package/dist/esm/packages/taco/src/utils/keyboard.js.map +1 -1
  639. package/dist/esm/packages/taco/src/utils/mergeRefs.js +2 -2
  640. package/dist/esm/packages/taco/src/utils/mergeRefs.js.map +1 -1
  641. package/dist/esm/packages/taco/src/utils/tailwind.js +5 -5
  642. package/dist/esm/packages/taco/src/utils/tailwind.js.map +1 -1
  643. package/dist/esm/packages/taco/tailwind.colors.js +1 -1
  644. package/dist/esm/packages/taco/tailwind.colors.js.map +1 -1
  645. package/dist/hooks/useLazyDebouncedEffect.d.ts +2 -0
  646. package/dist/index.d.ts +1 -0
  647. package/dist/primitives/Table/Core/components/Row/BuiltIns/SkeletonRow.d.ts +2 -2
  648. package/dist/primitives/Table/Core/components/Row/Row.d.ts +2 -0
  649. package/dist/primitives/Table/Core/features/useTableRenderer.d.ts +1 -1
  650. package/dist/primitives/Table/types.d.ts +10 -6
  651. package/dist/primitives/Table/useTableDataLoader2.d.ts +23 -0
  652. package/dist/primitives/Table/useTableManager/features/useTableSearch.d.ts +4 -2
  653. package/dist/primitives/Table/useTableManager/features/useTableServerLoading.d.ts +4 -1
  654. package/dist/primitives/Table/useTableManager/listeners/useTableSearchListener.d.ts +1 -2
  655. package/dist/primitives/Table/useTableManager/util/columns.d.ts +2 -1
  656. package/dist/taco.cjs.development.js +8213 -6946
  657. package/dist/taco.cjs.development.js.map +1 -1
  658. package/dist/taco.cjs.production.min.js +1 -1
  659. package/dist/taco.cjs.production.min.js.map +1 -1
  660. package/package.json +2 -3
@@ -1,20 +1,22 @@
1
1
  import React__default from 'react';
2
+ import { extends as _extends } from '../../../../../../../_virtual/_rollupPluginBabelHelpers.js';
2
3
  import { useVirtualizer, defaultRangeExtractor } from '@tanstack/react-virtual';
3
4
  import { ROW_HEIGHT_ESTIMATES } from '../util/rows.js';
4
5
  import { Row } from '../components/Row/Row.js';
6
+ import { SkeletonRow } from '../components/Row/BuiltIns/SkeletonRow.js';
5
7
 
6
8
  // scroll padding end is designed to always show half of the next row
7
9
  function getScrollPaddingEndOffset(table) {
8
- const tableMeta = table.options.meta;
9
- let offset = 2;
10
+ var tableMeta = table.options.meta;
11
+ var offset = 2;
10
12
  if (tableMeta.footer.isEnabled) {
11
13
  offset += 1;
12
14
  }
13
15
  if (table.getHeaderGroups().length > 1) {
14
16
  offset += table.getHeaderGroups().length - 1;
15
17
  }
16
- let height = ROW_HEIGHT_ESTIMATES.medium * offset;
17
- const bottomRows = table.getBottomRows();
18
+ var height = ROW_HEIGHT_ESTIMATES.medium * offset;
19
+ var bottomRows = table.getBottomRows();
18
20
  if (bottomRows.length) {
19
21
  // 1.4 offsets for half rows and also accounts for increased row heights (which is likely in pinned rows)
20
22
  height += ROW_HEIGHT_ESTIMATES[tableMeta.rowHeight.height] * 1.4 * bottomRows.length;
@@ -24,62 +26,68 @@ function getScrollPaddingEndOffset(table) {
24
26
  // scroll padding end is designed to always show half of the next row
25
27
  function getPaddingEndOffset(table, options) {
26
28
  var _table$getBottomRows, _options$virtualiserP;
27
- const bottomRows = (_table$getBottomRows = table.getBottomRows()) !== null && _table$getBottomRows !== void 0 ? _table$getBottomRows : [];
29
+ var bottomRows = (_table$getBottomRows = table.getBottomRows()) !== null && _table$getBottomRows !== void 0 ? _table$getBottomRows : [];
28
30
  return ROW_HEIGHT_ESTIMATES.medium * ((_options$virtualiserP = options === null || options === void 0 ? void 0 : options.virtualiserPaddingEndOffset) !== null && _options$virtualiserP !== void 0 ? _options$virtualiserP : 1) * bottomRows.length;
29
31
  }
30
- function useTableRenderer(renderers, table, tableRef, defaultRowActiveIndex, options) {
31
- var _table$getState$group, _table$getCenterRows, _virtualItems$padding, _virtualItems$padding2, _virtualItems$padding3, _ref, _virtualItems;
32
- const tableMeta = table.options.meta;
33
- const isTableRowGrouped = !!((_table$getState$group = table.getState().grouping) !== null && _table$getState$group !== void 0 && _table$getState$group.length);
34
- const rows = (_table$getCenterRows = table.getCenterRows()) !== null && _table$getCenterRows !== void 0 ? _table$getCenterRows : [];
32
+ function useTableRenderer(renderers, table, tableRef, length, defaultRowActiveIndex, options) {
33
+ var _table$getState$group, _table$getCenterRows, _virtualItems$padding, _virtualItems$padding2, _virtualItems$padding3, _virtualItems$end, _virtualItems;
34
+ var tableMeta = table.options.meta;
35
+ var isTableRowGrouped = !!((_table$getState$group = table.getState().grouping) !== null && _table$getState$group !== void 0 && _table$getState$group.length);
36
+ var rows = (_table$getCenterRows = table.getCenterRows()) !== null && _table$getCenterRows !== void 0 ? _table$getCenterRows : [];
35
37
  // expanded rows
36
- const {
37
- createRowMeasurer,
38
- estimateSize
39
- } = useRowHeightVirtualisation(table);
38
+ var _useRowHeightVirtuali = useRowHeightVirtualisation(table),
39
+ createRowMeasurer = _useRowHeightVirtuali.createRowMeasurer,
40
+ estimateSize = _useRowHeightVirtuali.estimateSize;
40
41
  // row groups
41
- const rangeExtractor = useRowGroupVirtualisation(table);
42
+ var rangeExtractor = useRowGroupVirtualisation(table);
42
43
  // account for thead and tfoot in the scroll area - both are always medium row height
43
- const scrollPaddingStart = ROW_HEIGHT_ESTIMATES.medium;
44
- const virtualiser = useVirtualizer({
45
- count: rows.length,
46
- estimateSize,
47
- getScrollElement: () => tableRef.current,
48
- overscan: tableMeta.printing.isPrinting ? rows.length : undefined,
49
- rangeExtractor,
44
+ var scrollPaddingStart = ROW_HEIGHT_ESTIMATES.medium;
45
+ var count = tableMeta.server.isEnabled && tableMeta.server._experimentalDataLoader2 ? length : rows.length;
46
+ var virtualiser = useVirtualizer({
47
+ count: count,
48
+ estimateSize: estimateSize,
49
+ getScrollElement: function getScrollElement() {
50
+ return tableRef.current;
51
+ },
52
+ overscan: tableMeta.printing.isPrinting ? count : undefined,
53
+ rangeExtractor: rangeExtractor,
50
54
  // correctly sets the scroll padding offset, e.g. when keyboard navigating rows in the list
51
- scrollPaddingStart,
55
+ scrollPaddingStart: scrollPaddingStart,
52
56
  scrollPaddingEnd: getScrollPaddingEndOffset(table),
53
57
  paddingEnd: getPaddingEndOffset(table, options)
54
58
  });
55
- const totalSize = virtualiser.getTotalSize();
56
- const virtualItems = virtualiser.getVirtualItems();
57
- const scrollToIndex = React__default.useCallback((index, options = {
58
- align: 'auto',
59
- behavior: 'smooth'
60
- }) => {
61
- const notSmooth = {
62
- ...options,
59
+ var totalSize = virtualiser.getTotalSize();
60
+ var virtualItems = virtualiser.getVirtualItems();
61
+ var scrollToIndex = React__default.useCallback(function (index, options) {
62
+ if (options === void 0) {
63
+ options = {
64
+ align: 'auto',
65
+ behavior: 'smooth'
66
+ };
67
+ }
68
+ var notSmooth = _extends({}, options, {
63
69
  behavior: 'auto'
64
- };
70
+ });
65
71
  if (tableRef.current) {
66
72
  if (index === 0) {
67
73
  virtualiser.scrollToOffset(0, notSmooth);
68
- } else if (index === rows.length - 1) {
74
+ } else if (index === count - 1) {
69
75
  // sometimes the last row doesn't fully show, so we just force scroll to the bottom
70
76
  tableRef.current.scrollTop = tableRef.current.scrollHeight;
71
77
  } else {
72
78
  virtualiser.scrollToIndex(index, options);
73
79
  }
74
80
  }
75
- }, [virtualItems.length, tableRef.current, totalSize, rows.length]);
81
+ }, [virtualItems.length, tableRef.current, totalSize, count]);
76
82
  // use row 1 not 0, because 0 might be sticky in grouped tables and it's start value will always be 0
77
- const paddingStartIndex = isTableRowGrouped && rows.length > 1 ? 1 : 0;
78
- const startValue = isTableRowGrouped ? ((_virtualItems$padding = virtualItems[paddingStartIndex]) === null || _virtualItems$padding === void 0 ? void 0 : _virtualItems$padding.start) - ((_virtualItems$padding2 = virtualItems[paddingStartIndex]) === null || _virtualItems$padding2 === void 0 ? void 0 : _virtualItems$padding2.size) : (_virtualItems$padding3 = virtualItems[paddingStartIndex]) === null || _virtualItems$padding3 === void 0 ? void 0 : _virtualItems$padding3.start;
83
+ var paddingStartIndex = isTableRowGrouped && count > 1 ? 1 : 0;
84
+ var startValue = isTableRowGrouped ? ((_virtualItems$padding = virtualItems[paddingStartIndex]) === null || _virtualItems$padding === void 0 ? void 0 : _virtualItems$padding.start) - ((_virtualItems$padding2 = virtualItems[paddingStartIndex]) === null || _virtualItems$padding2 === void 0 ? void 0 : _virtualItems$padding2.size) : (_virtualItems$padding3 = virtualItems[paddingStartIndex]) === null || _virtualItems$padding3 === void 0 ? void 0 : _virtualItems$padding3.start;
79
85
  // styling for offsetting rows - this "is" the virtualisation
80
- const [paddingTop, paddingBottom] = virtualItems.length > 0 ? [Math.max(0, startValue !== null && startValue !== void 0 ? startValue : 0), Math.max(0, (_ref = totalSize - ((_virtualItems = virtualItems[virtualItems.length - 1]) === null || _virtualItems === void 0 ? void 0 : _virtualItems.end)) !== null && _ref !== void 0 ? _ref : 0)] : [0, 0];
86
+ var _ref = virtualItems.length > 0 ? [Math.max(0, startValue !== null && startValue !== void 0 ? startValue : 0), Math.max(0, totalSize - ((_virtualItems$end = (_virtualItems = virtualItems[virtualItems.length - 1]) === null || _virtualItems === void 0 ? void 0 : _virtualItems.end) !== null && _virtualItems$end !== void 0 ? _virtualItems$end : 0))] : [0, 0],
87
+ paddingTop = _ref[0],
88
+ paddingBottom = _ref[1];
81
89
  // ensure default active rows are scrolled to
82
- React__default.useEffect(() => {
90
+ React__default.useEffect(function () {
83
91
  if (defaultRowActiveIndex) {
84
92
  scrollToIndex(defaultRowActiveIndex, {
85
93
  align: 'center',
@@ -88,29 +96,54 @@ function useTableRenderer(renderers, table, tableRef, defaultRowActiveIndex, opt
88
96
  }
89
97
  }, []);
90
98
  // rendered output
91
- let style = {};
92
- let content = null;
99
+ var style = {};
100
+ var content = null;
93
101
  // bottom rows aren't virtualised (they're sticky) but we need to set the height
94
- if (rows.length || table.getBottomRows().length) {
102
+ if (count || table.getBottomRows().length) {
95
103
  style = {
96
104
  height: totalSize,
97
- paddingBottom,
98
- paddingTop
105
+ paddingBottom: isNaN(paddingBottom) ? 0 : paddingBottom,
106
+ paddingTop: isNaN(paddingTop) ? 0 : paddingTop
99
107
  };
100
108
  }
101
109
  // only render non sticky rows
102
- if (rows.length) {
103
- content = virtualItems.map(virtualRow => {
110
+ if (count) {
111
+ content = virtualItems.map(function (virtualRow) {
112
+ var _row, _virtualiser$scrollDi2;
104
113
  // there appears to be a react-virtual bug where it inserts a single `undefined` item at the end of the row, which crashes here
105
114
  if (!virtualRow) {
106
115
  return null;
107
116
  }
108
- const row = rows[virtualRow.index];
109
- const measureRow = createRowMeasurer(virtualiser.resizeItem, virtualRow);
117
+ var row;
118
+ if (tableMeta.server.isEnabled && tableMeta.server._experimentalDataLoader2) {
119
+ var _tableMeta$server$pag, _tableMeta$server$pag2;
120
+ var currentPageIndex = Math.floor(virtualRow.index / tableMeta.server.pageSize) * tableMeta.server.pageSize / tableMeta.server.pageSize;
121
+ var pagePosition = (_tableMeta$server$pag = (_tableMeta$server$pag2 = tableMeta.server.pages) === null || _tableMeta$server$pag2 === void 0 ? void 0 : _tableMeta$server$pag2.indexOf(currentPageIndex)) !== null && _tableMeta$server$pag !== void 0 ? _tableMeta$server$pag : -1;
122
+ if (pagePosition > -1) {
123
+ // "flatten" row indexes down into the dataloader2 dataset size
124
+ // for example, with a page size of 100...
125
+ // row index 14267 is actually one of index 67, 167, 267 etc within the dataset (depending on number of pages stored)
126
+ var fakeIndex = pagePosition * tableMeta.server.pageSize + virtualRow.index % tableMeta.server.pageSize;
127
+ row = rows[fakeIndex];
128
+ }
129
+ } else {
130
+ row = rows[virtualRow.index];
131
+ }
132
+ if (!((_row = row) !== null && _row !== void 0 && _row.original)) {
133
+ var _virtualiser$scrollDi;
134
+ return /*#__PURE__*/React__default.createElement(SkeletonRow, {
135
+ key: virtualRow.index,
136
+ index: virtualRow.index,
137
+ scrollDirection: (_virtualiser$scrollDi = virtualiser.scrollDirection) !== null && _virtualiser$scrollDi !== void 0 ? _virtualiser$scrollDi : undefined,
138
+ table: table
139
+ });
140
+ }
141
+ var measureRow = createRowMeasurer(virtualiser.resizeItem, virtualRow);
110
142
  return /*#__PURE__*/React__default.createElement(Row, {
111
143
  key: row.id,
112
144
  row: row,
113
145
  index: virtualRow.index,
146
+ scrollDirection: (_virtualiser$scrollDi2 = virtualiser.scrollDirection) !== null && _virtualiser$scrollDi2 !== void 0 ? _virtualiser$scrollDi2 : undefined,
114
147
  table: table,
115
148
  measureRow: measureRow,
116
149
  renderer: renderers.row,
@@ -120,55 +153,61 @@ function useTableRenderer(renderers, table, tableRef, defaultRowActiveIndex, opt
120
153
  }
121
154
  return {
122
155
  rows: content,
123
- style,
124
- scrollToIndex
156
+ style: style,
157
+ scrollToIndex: scrollToIndex
125
158
  };
126
159
  }
127
160
  // support varying row heights - variable row heights, row expansion
128
161
  function useRowHeightVirtualisation(table) {
129
- const tableMeta = table.options.meta;
130
- const rows = table.getRowModel().rows;
131
- const expandedState = table.getState().expanded;
132
- const [expandedRowHeightsCache, setExpandedRowHeightsCache] = React__default.useState({});
162
+ var tableMeta = table.options.meta;
163
+ var rows = table.getRowModel().rows;
164
+ var expandedState = table.getState().expanded;
165
+ var _React$useState = React__default.useState({}),
166
+ expandedRowHeightsCache = _React$useState[0],
167
+ setExpandedRowHeightsCache = _React$useState[1];
133
168
  // look at all registered expanded row heights and use them to form a more accurate average size
134
169
  // it might be worth considering if taking the max, or an upper bound, would be better
135
- const averageExpandedRowHeight = React__default.useMemo(() => {
136
- const values = Object.values(expandedRowHeightsCache);
137
- return values.length ? values.reduce((a, b) => a + b, 0) / values.length : 0;
170
+ var averageExpandedRowHeight = React__default.useMemo(function () {
171
+ var values = Object.values(expandedRowHeightsCache);
172
+ return values.length ? values.reduce(function (a, b) {
173
+ return a + b;
174
+ }, 0) / values.length : 0;
138
175
  }, [expandedRowHeightsCache]);
139
176
  // row heights
140
- const estimateSize = React__default.useCallback(index => {
177
+ var estimateSize = React__default.useCallback(function (index) {
141
178
  var _rows$index, _rows$index$getIsExpa;
142
- const rowHeight = tableMeta.rowHeight.height ? ROW_HEIGHT_ESTIMATES[tableMeta.rowHeight.height] : ROW_HEIGHT_ESTIMATES.medium;
179
+ var rowHeight = tableMeta.rowHeight.height ? ROW_HEIGHT_ESTIMATES[tableMeta.rowHeight.height] : ROW_HEIGHT_ESTIMATES.medium;
143
180
  if (expandedState === true || (_rows$index = rows[index]) !== null && _rows$index !== void 0 && (_rows$index$getIsExpa = _rows$index.getIsExpanded) !== null && _rows$index$getIsExpa !== void 0 && _rows$index$getIsExpa.call(_rows$index)) {
144
181
  return rowHeight + averageExpandedRowHeight;
145
182
  }
146
183
  return rowHeight;
147
184
  }, [tableMeta.rowHeight.height, averageExpandedRowHeight, expandedState]);
148
- const createRowMeasurer = React__default.useCallback((resizeItem, virtualRow) => (rowHeight, expansionHeight) => {
149
- // register the expansion height so that it can be used to determine an average
150
- if (expansionHeight) {
151
- setExpandedRowHeightsCache(cache => ({
152
- ...cache,
153
- [virtualRow.index]: expansionHeight
154
- }));
155
- }
156
- // update the whole row's size to include the expanded height
157
- resizeItem(virtualRow, rowHeight + (expansionHeight !== null && expansionHeight !== void 0 ? expansionHeight : 0));
185
+ var createRowMeasurer = React__default.useCallback(function (resizeItem, virtualRow) {
186
+ return function (rowHeight, expansionHeight) {
187
+ // register the expansion height so that it can be used to determine an average
188
+ if (expansionHeight) {
189
+ setExpandedRowHeightsCache(function (cache) {
190
+ var _extends2;
191
+ return _extends({}, cache, (_extends2 = {}, _extends2[virtualRow.index] = expansionHeight, _extends2));
192
+ });
193
+ }
194
+ // update the whole row's size to include the expanded height
195
+ resizeItem(virtualRow, rowHeight + (expansionHeight !== null && expansionHeight !== void 0 ? expansionHeight : 0));
196
+ };
158
197
  }, []);
159
198
  return {
160
- estimateSize,
161
- createRowMeasurer
199
+ estimateSize: estimateSize,
200
+ createRowMeasurer: createRowMeasurer
162
201
  };
163
202
  }
164
203
  // support virtualised row groups (where the row group headers are sticky)
165
204
  function useRowGroupVirtualisation(table) {
166
- const rows = table.getRowModel().rows;
167
- const isTableGrouped = !!table.getState().grouping.length;
168
- const rowGroupIndexes = React__default.useMemo(() => {
169
- const indexes = [];
205
+ var rows = table.getRowModel().rows;
206
+ var isTableGrouped = !!table.getState().grouping.length;
207
+ var rowGroupIndexes = React__default.useMemo(function () {
208
+ var indexes = [];
170
209
  if (isTableGrouped) {
171
- rows.forEach((row, index) => {
210
+ rows.forEach(function (row, index) {
172
211
  if (row.getIsGrouped()) {
173
212
  indexes.push(index);
174
213
  }
@@ -177,11 +216,15 @@ function useRowGroupVirtualisation(table) {
177
216
  return indexes;
178
217
  }, [rows]);
179
218
  // this is taken from the react-virtual docs/examples
180
- const rangeExtractor = React__default.useCallback(range => {
219
+ var rangeExtractor = React__default.useCallback(function (range) {
181
220
  var _reverse$find;
182
- const activeRowGroupIndex = (_reverse$find = [...rowGroupIndexes].reverse().find(index => range.startIndex >= index)) !== null && _reverse$find !== void 0 ? _reverse$find : rowGroupIndexes[0];
183
- const next = new Set([activeRowGroupIndex, ...defaultRangeExtractor(range)]);
184
- return [...next].sort((a, b) => a - b);
221
+ var activeRowGroupIndex = (_reverse$find = [].concat(rowGroupIndexes).reverse().find(function (index) {
222
+ return range.startIndex >= index;
223
+ })) !== null && _reverse$find !== void 0 ? _reverse$find : rowGroupIndexes[0];
224
+ var next = new Set([activeRowGroupIndex].concat(defaultRangeExtractor(range)));
225
+ return [].concat(next).sort(function (a, b) {
226
+ return a - b;
227
+ });
185
228
  }, [rowGroupIndexes]);
186
229
  return isTableGrouped ? rangeExtractor : undefined;
187
230
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useTableRenderer.js","sources":["../../../../../../../../../src/primitives/Table/Core/features/useTableRenderer.tsx"],"sourcesContent":["import React, { CSSProperties } from 'react';\nimport { Table as ReactTable, TableMeta as ReactTableMeta } from '@tanstack/react-table';\nimport {\n useVirtualizer,\n defaultRangeExtractor,\n ScrollToOptions as ReactVirtualScrollToOptions,\n VirtualItem,\n} from '@tanstack/react-virtual';\nimport { ROW_HEIGHT_ESTIMATES } from '../util/rows';\nimport { Row } from '../components/Row/Row';\nimport { useTableRenderers, useTableRenderOptions } from '../types';\nimport { TableRef } from '../../types';\n\n// scroll padding end is designed to always show half of the next row\nfunction getScrollPaddingEndOffset<TType = unknown>(table: ReactTable<TType>) {\n const tableMeta = table.options.meta as ReactTableMeta<TType>;\n let offset = 2;\n\n if (tableMeta.footer.isEnabled) {\n offset += 1;\n }\n\n if (table.getHeaderGroups().length > 1) {\n offset += table.getHeaderGroups().length - 1;\n }\n\n let height = ROW_HEIGHT_ESTIMATES.medium * offset;\n\n const bottomRows = table.getBottomRows();\n\n if (bottomRows.length) {\n // 1.4 offsets for half rows and also accounts for increased row heights (which is likely in pinned rows)\n height += ROW_HEIGHT_ESTIMATES[tableMeta.rowHeight.height] * 1.4 * bottomRows.length;\n }\n\n return height;\n}\n\n// scroll padding end is designed to always show half of the next row\nfunction getPaddingEndOffset<TType = unknown>(table: ReactTable<TType>, options?: useTableRenderOptions) {\n const bottomRows = table.getBottomRows() ?? [];\n return ROW_HEIGHT_ESTIMATES.medium * (options?.virtualiserPaddingEndOffset ?? 1) * bottomRows.length;\n}\n\nexport function useTableRenderer<TType = unknown>(\n renderers: useTableRenderers<TType>,\n table: ReactTable<TType>,\n tableRef: React.RefObject<TableRef>,\n defaultRowActiveIndex?: number | undefined,\n options?: useTableRenderOptions\n) {\n const tableMeta = table.options.meta as ReactTableMeta<TType>;\n const isTableRowGrouped = !!table.getState().grouping?.length;\n\n const rows = table.getCenterRows() ?? [];\n\n // expanded rows\n const { createRowMeasurer, estimateSize } = useRowHeightVirtualisation<TType>(table);\n\n // row groups\n const rangeExtractor = useRowGroupVirtualisation<TType>(table);\n\n // account for thead and tfoot in the scroll area - both are always medium row height\n const scrollPaddingStart = ROW_HEIGHT_ESTIMATES.medium;\n\n const virtualiser = useVirtualizer({\n count: rows.length,\n estimateSize,\n getScrollElement: () => tableRef.current,\n overscan: tableMeta.printing.isPrinting ? rows.length : undefined,\n rangeExtractor,\n // correctly sets the scroll padding offset, e.g. when keyboard navigating rows in the list\n scrollPaddingStart,\n scrollPaddingEnd: getScrollPaddingEndOffset(table),\n paddingEnd: getPaddingEndOffset(table, options),\n });\n\n const totalSize = virtualiser.getTotalSize();\n const virtualItems = virtualiser.getVirtualItems();\n\n const scrollToIndex = React.useCallback(\n (index: number, options: ReactVirtualScrollToOptions = { align: 'auto', behavior: 'smooth' }) => {\n const notSmooth: ReactVirtualScrollToOptions = { ...options, behavior: 'auto' };\n\n if (tableRef.current) {\n if (index === 0) {\n virtualiser.scrollToOffset(0, notSmooth);\n } else if (index === rows.length - 1) {\n // sometimes the last row doesn't fully show, so we just force scroll to the bottom\n tableRef.current.scrollTop = tableRef.current.scrollHeight;\n } else {\n virtualiser.scrollToIndex(index, options);\n }\n }\n },\n [virtualItems.length, tableRef.current, totalSize, rows.length]\n );\n\n // use row 1 not 0, because 0 might be sticky in grouped tables and it's start value will always be 0\n const paddingStartIndex = isTableRowGrouped && rows.length > 1 ? 1 : 0;\n\n const startValue = isTableRowGrouped\n ? virtualItems[paddingStartIndex]?.start - virtualItems[paddingStartIndex]?.size\n : virtualItems[paddingStartIndex]?.start;\n\n // styling for offsetting rows - this \"is\" the virtualisation\n const [paddingTop, paddingBottom] =\n virtualItems.length > 0\n ? [Math.max(0, startValue ?? 0), Math.max(0, totalSize - virtualItems[virtualItems.length - 1]?.end ?? 0)]\n : [0, 0];\n\n // ensure default active rows are scrolled to\n React.useEffect(() => {\n if (defaultRowActiveIndex) {\n scrollToIndex(defaultRowActiveIndex, { align: 'center', behavior: 'auto' });\n }\n }, []);\n\n // rendered output\n let style: CSSProperties = {};\n let content: (JSX.Element | null)[] | null = null;\n\n // bottom rows aren't virtualised (they're sticky) but we need to set the height\n if (rows.length || table.getBottomRows().length) {\n style = {\n height: totalSize,\n paddingBottom,\n paddingTop,\n };\n }\n\n // only render non sticky rows\n if (rows.length) {\n content = virtualItems.map(virtualRow => {\n // there appears to be a react-virtual bug where it inserts a single `undefined` item at the end of the row, which crashes here\n if (!virtualRow) {\n return null;\n }\n\n const row = rows[virtualRow.index];\n const measureRow = createRowMeasurer(virtualiser.resizeItem, virtualRow);\n return (\n <Row\n key={row.id}\n row={row}\n index={virtualRow.index}\n table={table}\n measureRow={measureRow}\n renderer={renderers.row}\n cellRenderer={renderers.cell}\n />\n );\n });\n }\n\n return {\n rows: content,\n style,\n scrollToIndex,\n };\n}\n\n// support varying row heights - variable row heights, row expansion\nfunction useRowHeightVirtualisation<TType = unknown>(table: ReactTable<TType>) {\n const tableMeta = table.options.meta as ReactTableMeta<TType>;\n const rows = table.getRowModel().rows;\n const expandedState = table.getState().expanded;\n\n const [expandedRowHeightsCache, setExpandedRowHeightsCache] = React.useState<Record<number, number>>({});\n\n // look at all registered expanded row heights and use them to form a more accurate average size\n // it might be worth considering if taking the max, or an upper bound, would be better\n const averageExpandedRowHeight = React.useMemo(() => {\n const values: number[] = Object.values(expandedRowHeightsCache);\n return values.length ? values.reduce((a, b) => a + b, 0) / values.length : 0;\n }, [expandedRowHeightsCache]);\n\n // row heights\n const estimateSize = React.useCallback(\n (index: number) => {\n const rowHeight = tableMeta.rowHeight.height\n ? ROW_HEIGHT_ESTIMATES[tableMeta.rowHeight.height]\n : ROW_HEIGHT_ESTIMATES.medium;\n\n if (expandedState === true || rows[index]?.getIsExpanded?.()) {\n return rowHeight + averageExpandedRowHeight;\n }\n\n return rowHeight;\n },\n [tableMeta.rowHeight.height, averageExpandedRowHeight, expandedState]\n );\n\n const createRowMeasurer = React.useCallback(\n (resizeItem: (item: VirtualItem, size: number) => void, virtualRow: VirtualItem) =>\n (rowHeight: number, expansionHeight?: number) => {\n // register the expansion height so that it can be used to determine an average\n if (expansionHeight) {\n setExpandedRowHeightsCache(cache => ({ ...cache, [virtualRow.index]: expansionHeight }));\n }\n\n // update the whole row's size to include the expanded height\n resizeItem(virtualRow, rowHeight + (expansionHeight ?? 0));\n },\n []\n );\n\n return { estimateSize, createRowMeasurer };\n}\n\n// support virtualised row groups (where the row group headers are sticky)\nfunction useRowGroupVirtualisation<TType = unknown>(table: ReactTable<TType>) {\n const rows = table.getRowModel().rows;\n const isTableGrouped = !!table.getState().grouping.length;\n\n const rowGroupIndexes = React.useMemo(() => {\n const indexes: number[] = [];\n\n if (isTableGrouped) {\n rows.forEach((row, index) => {\n if (row.getIsGrouped()) {\n indexes.push(index);\n }\n });\n }\n\n return indexes;\n }, [rows]);\n\n // this is taken from the react-virtual docs/examples\n const rangeExtractor = React.useCallback(\n range => {\n const activeRowGroupIndex =\n [...rowGroupIndexes].reverse().find(index => range.startIndex >= index) ?? rowGroupIndexes[0];\n\n const next = new Set([activeRowGroupIndex, ...defaultRangeExtractor(range)]);\n return [...next].sort((a, b) => a - b);\n },\n [rowGroupIndexes]\n );\n\n return isTableGrouped ? rangeExtractor : undefined;\n}\n"],"names":["getScrollPaddingEndOffset","table","tableMeta","options","meta","offset","footer","isEnabled","getHeaderGroups","length","height","ROW_HEIGHT_ESTIMATES","medium","bottomRows","getBottomRows","rowHeight","getPaddingEndOffset","_table$getBottomRows","_options$virtualiserP","virtualiserPaddingEndOffset","useTableRenderer","renderers","tableRef","defaultRowActiveIndex","isTableRowGrouped","_table$getState$group","getState","grouping","rows","_table$getCenterRows","getCenterRows","createRowMeasurer","estimateSize","useRowHeightVirtualisation","rangeExtractor","useRowGroupVirtualisation","scrollPaddingStart","virtualiser","useVirtualizer","count","getScrollElement","current","overscan","printing","isPrinting","undefined","scrollPaddingEnd","paddingEnd","totalSize","getTotalSize","virtualItems","getVirtualItems","scrollToIndex","React","useCallback","index","align","behavior","notSmooth","scrollToOffset","scrollTop","scrollHeight","paddingStartIndex","startValue","_virtualItems$padding","start","_virtualItems$padding2","size","_virtualItems$padding3","paddingTop","paddingBottom","Math","max","_ref","_virtualItems","end","useEffect","style","content","map","virtualRow","row","measureRow","resizeItem","Row","key","id","renderer","cellRenderer","cell","getRowModel","expandedState","expanded","expandedRowHeightsCache","setExpandedRowHeightsCache","useState","averageExpandedRowHeight","useMemo","values","Object","reduce","a","b","_rows$index","_rows$index$getIsExpa","getIsExpanded","call","expansionHeight","cache","isTableGrouped","rowGroupIndexes","indexes","forEach","getIsGrouped","push","range","activeRowGroupIndex","_reverse$find","reverse","find","startIndex","next","Set","defaultRangeExtractor","sort"],"mappings":"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"}
1
+ {"version":3,"file":"useTableRenderer.js","sources":["../../../../../../../../../src/primitives/Table/Core/features/useTableRenderer.tsx"],"sourcesContent":["import React, { CSSProperties } from 'react';\nimport { Table as ReactTable, TableMeta as ReactTableMeta, Row as ReactTableRow } from '@tanstack/react-table';\nimport {\n useVirtualizer,\n defaultRangeExtractor,\n ScrollToOptions as ReactVirtualScrollToOptions,\n VirtualItem,\n} from '@tanstack/react-virtual';\nimport { ROW_HEIGHT_ESTIMATES } from '../util/rows';\nimport { Row } from '../components/Row/Row';\nimport { useTableRenderers, useTableRenderOptions } from '../types';\nimport { TableRef } from '../../types';\nimport { SkeletonRow } from '../components/Row/BuiltIns/SkeletonRow';\n\n// scroll padding end is designed to always show half of the next row\nfunction getScrollPaddingEndOffset<TType = unknown>(table: ReactTable<TType>) {\n const tableMeta = table.options.meta as ReactTableMeta<TType>;\n let offset = 2;\n\n if (tableMeta.footer.isEnabled) {\n offset += 1;\n }\n\n if (table.getHeaderGroups().length > 1) {\n offset += table.getHeaderGroups().length - 1;\n }\n\n let height = ROW_HEIGHT_ESTIMATES.medium * offset;\n\n const bottomRows = table.getBottomRows();\n\n if (bottomRows.length) {\n // 1.4 offsets for half rows and also accounts for increased row heights (which is likely in pinned rows)\n height += ROW_HEIGHT_ESTIMATES[tableMeta.rowHeight.height] * 1.4 * bottomRows.length;\n }\n\n return height;\n}\n\n// scroll padding end is designed to always show half of the next row\nfunction getPaddingEndOffset<TType = unknown>(table: ReactTable<TType>, options?: useTableRenderOptions) {\n const bottomRows = table.getBottomRows() ?? [];\n return ROW_HEIGHT_ESTIMATES.medium * (options?.virtualiserPaddingEndOffset ?? 1) * bottomRows.length;\n}\n\nexport function useTableRenderer<TType = unknown>(\n renderers: useTableRenderers<TType>,\n table: ReactTable<TType>,\n tableRef: React.RefObject<TableRef>,\n length: number,\n defaultRowActiveIndex?: number | undefined,\n options?: useTableRenderOptions\n) {\n const tableMeta = table.options.meta as ReactTableMeta<TType>;\n const isTableRowGrouped = !!table.getState().grouping?.length;\n const rows = table.getCenterRows() ?? [];\n\n // expanded rows\n const { createRowMeasurer, estimateSize } = useRowHeightVirtualisation<TType>(table);\n\n // row groups\n const rangeExtractor = useRowGroupVirtualisation<TType>(table);\n\n // account for thead and tfoot in the scroll area - both are always medium row height\n const scrollPaddingStart = ROW_HEIGHT_ESTIMATES.medium;\n\n const count = tableMeta.server.isEnabled && tableMeta.server._experimentalDataLoader2 ? length : rows.length;\n\n const virtualiser = useVirtualizer({\n count,\n estimateSize,\n getScrollElement: () => tableRef.current,\n overscan: tableMeta.printing.isPrinting ? count : undefined,\n rangeExtractor,\n // correctly sets the scroll padding offset, e.g. when keyboard navigating rows in the list\n scrollPaddingStart,\n scrollPaddingEnd: getScrollPaddingEndOffset(table),\n paddingEnd: getPaddingEndOffset(table, options),\n });\n\n const totalSize = virtualiser.getTotalSize();\n const virtualItems = virtualiser.getVirtualItems();\n\n const scrollToIndex = React.useCallback(\n (index: number, options: ReactVirtualScrollToOptions = { align: 'auto', behavior: 'smooth' }) => {\n const notSmooth: ReactVirtualScrollToOptions = { ...options, behavior: 'auto' };\n\n if (tableRef.current) {\n if (index === 0) {\n virtualiser.scrollToOffset(0, notSmooth);\n } else if (index === count - 1) {\n // sometimes the last row doesn't fully show, so we just force scroll to the bottom\n tableRef.current.scrollTop = tableRef.current.scrollHeight;\n } else {\n virtualiser.scrollToIndex(index, options);\n }\n }\n },\n [virtualItems.length, tableRef.current, totalSize, count]\n );\n\n // use row 1 not 0, because 0 might be sticky in grouped tables and it's start value will always be 0\n const paddingStartIndex = isTableRowGrouped && count > 1 ? 1 : 0;\n\n const startValue = isTableRowGrouped\n ? virtualItems[paddingStartIndex]?.start - virtualItems[paddingStartIndex]?.size\n : virtualItems[paddingStartIndex]?.start;\n\n // styling for offsetting rows - this \"is\" the virtualisation\n const [paddingTop, paddingBottom] =\n virtualItems.length > 0\n ? [Math.max(0, startValue ?? 0), Math.max(0, totalSize - (virtualItems[virtualItems.length - 1]?.end ?? 0))]\n : [0, 0];\n\n // ensure default active rows are scrolled to\n React.useEffect(() => {\n if (defaultRowActiveIndex) {\n scrollToIndex(defaultRowActiveIndex, { align: 'center', behavior: 'auto' });\n }\n }, []);\n\n // rendered output\n let style: CSSProperties = {};\n let content: (JSX.Element | null)[] | null = null;\n\n // bottom rows aren't virtualised (they're sticky) but we need to set the height\n if (count || table.getBottomRows().length) {\n style = {\n height: totalSize,\n paddingBottom: isNaN(paddingBottom) ? 0 : paddingBottom,\n paddingTop: isNaN(paddingTop) ? 0 : paddingTop,\n };\n }\n\n // only render non sticky rows\n if (count) {\n content = virtualItems.map(virtualRow => {\n // there appears to be a react-virtual bug where it inserts a single `undefined` item at the end of the row, which crashes here\n if (!virtualRow) {\n return null;\n }\n\n let row: ReactTableRow<TType> | undefined;\n\n if (tableMeta.server.isEnabled && tableMeta.server._experimentalDataLoader2) {\n const currentPageIndex =\n (Math.floor(virtualRow.index / tableMeta.server.pageSize) * tableMeta.server.pageSize) /\n tableMeta.server.pageSize;\n const pagePosition = tableMeta.server.pages?.indexOf(currentPageIndex) ?? -1;\n\n if (pagePosition > -1) {\n // \"flatten\" row indexes down into the dataloader2 dataset size\n // for example, with a page size of 100...\n // row index 14267 is actually one of index 67, 167, 267 etc within the dataset (depending on number of pages stored)\n const fakeIndex = pagePosition * tableMeta.server.pageSize + (virtualRow.index % tableMeta.server.pageSize);\n row = rows[fakeIndex];\n }\n } else {\n row = rows[virtualRow.index];\n }\n\n if (!row?.original) {\n return (\n <SkeletonRow\n key={virtualRow.index}\n index={virtualRow.index}\n scrollDirection={virtualiser.scrollDirection ?? undefined}\n table={table}\n />\n );\n }\n\n const measureRow = createRowMeasurer(virtualiser.resizeItem, virtualRow);\n return (\n <Row\n key={row.id}\n row={row}\n index={virtualRow.index}\n scrollDirection={virtualiser.scrollDirection ?? undefined}\n table={table}\n measureRow={measureRow}\n renderer={renderers.row}\n cellRenderer={renderers.cell}\n />\n );\n });\n }\n\n return {\n rows: content,\n style,\n scrollToIndex,\n };\n}\n\n// support varying row heights - variable row heights, row expansion\nfunction useRowHeightVirtualisation<TType = unknown>(table: ReactTable<TType>) {\n const tableMeta = table.options.meta as ReactTableMeta<TType>;\n const rows = table.getRowModel().rows;\n const expandedState = table.getState().expanded;\n\n const [expandedRowHeightsCache, setExpandedRowHeightsCache] = React.useState<Record<number, number>>({});\n\n // look at all registered expanded row heights and use them to form a more accurate average size\n // it might be worth considering if taking the max, or an upper bound, would be better\n const averageExpandedRowHeight = React.useMemo(() => {\n const values: number[] = Object.values(expandedRowHeightsCache);\n return values.length ? values.reduce((a, b) => a + b, 0) / values.length : 0;\n }, [expandedRowHeightsCache]);\n\n // row heights\n const estimateSize = React.useCallback(\n (index: number) => {\n const rowHeight = tableMeta.rowHeight.height\n ? ROW_HEIGHT_ESTIMATES[tableMeta.rowHeight.height]\n : ROW_HEIGHT_ESTIMATES.medium;\n\n if (expandedState === true || rows[index]?.getIsExpanded?.()) {\n return rowHeight + averageExpandedRowHeight;\n }\n\n return rowHeight;\n },\n [tableMeta.rowHeight.height, averageExpandedRowHeight, expandedState]\n );\n\n const createRowMeasurer = React.useCallback(\n (resizeItem: (item: VirtualItem, size: number) => void, virtualRow: VirtualItem) =>\n (rowHeight: number, expansionHeight?: number) => {\n // register the expansion height so that it can be used to determine an average\n if (expansionHeight) {\n setExpandedRowHeightsCache(cache => ({ ...cache, [virtualRow.index]: expansionHeight }));\n }\n\n // update the whole row's size to include the expanded height\n resizeItem(virtualRow, rowHeight + (expansionHeight ?? 0));\n },\n []\n );\n\n return { estimateSize, createRowMeasurer };\n}\n\n// support virtualised row groups (where the row group headers are sticky)\nfunction useRowGroupVirtualisation<TType = unknown>(table: ReactTable<TType>) {\n const rows = table.getRowModel().rows;\n const isTableGrouped = !!table.getState().grouping.length;\n\n const rowGroupIndexes = React.useMemo(() => {\n const indexes: number[] = [];\n\n if (isTableGrouped) {\n rows.forEach((row, index) => {\n if (row.getIsGrouped()) {\n indexes.push(index);\n }\n });\n }\n\n return indexes;\n }, [rows]);\n\n // this is taken from the react-virtual docs/examples\n const rangeExtractor = React.useCallback(\n range => {\n const activeRowGroupIndex =\n [...rowGroupIndexes].reverse().find(index => range.startIndex >= index) ?? rowGroupIndexes[0];\n\n const next = new Set([activeRowGroupIndex, ...defaultRangeExtractor(range)]);\n return [...next].sort((a, b) => a - b);\n },\n [rowGroupIndexes]\n );\n\n return isTableGrouped ? rangeExtractor : undefined;\n}\n"],"names":["getScrollPaddingEndOffset","table","tableMeta","options","meta","offset","footer","isEnabled","getHeaderGroups","length","height","ROW_HEIGHT_ESTIMATES","medium","bottomRows","getBottomRows","rowHeight","getPaddingEndOffset","_table$getBottomRows","_options$virtualiserP","virtualiserPaddingEndOffset","useTableRenderer","renderers","tableRef","defaultRowActiveIndex","isTableRowGrouped","_table$getState$group","getState","grouping","rows","_table$getCenterRows","getCenterRows","_useRowHeightVirtuali","useRowHeightVirtualisation","createRowMeasurer","estimateSize","rangeExtractor","useRowGroupVirtualisation","scrollPaddingStart","count","server","_experimentalDataLoader2","virtualiser","useVirtualizer","getScrollElement","current","overscan","printing","isPrinting","undefined","scrollPaddingEnd","paddingEnd","totalSize","getTotalSize","virtualItems","getVirtualItems","scrollToIndex","React","useCallback","index","align","behavior","notSmooth","_extends","scrollToOffset","scrollTop","scrollHeight","paddingStartIndex","startValue","_virtualItems$padding","start","_virtualItems$padding2","size","_virtualItems$padding3","_ref","Math","max","_virtualItems$end","_virtualItems","end","paddingTop","paddingBottom","useEffect","style","content","isNaN","map","virtualRow","row","_tableMeta$server$pag","_tableMeta$server$pag2","currentPageIndex","floor","pageSize","pagePosition","pages","indexOf","fakeIndex","_row","original","_virtualiser$scrollDi","SkeletonRow","key","scrollDirection","measureRow","resizeItem","Row","id","_virtualiser$scrollDi2","renderer","cellRenderer","cell","getRowModel","expandedState","expanded","_React$useState","useState","expandedRowHeightsCache","setExpandedRowHeightsCache","averageExpandedRowHeight","useMemo","values","Object","reduce","a","b","_rows$index","_rows$index$getIsExpa","getIsExpanded","call","expansionHeight","cache","_extends2","isTableGrouped","rowGroupIndexes","indexes","forEach","getIsGrouped","push","range","activeRowGroupIndex","_reverse$find","concat","reverse","find","startIndex","next","Set","defaultRangeExtractor","sort"],"mappings":"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"}
@@ -1,26 +1,26 @@
1
+ import { extends as _extends } from '../../../../../../../_virtual/_rollupPluginBabelHelpers.js';
1
2
  import { useTableStyleGrid } from './useTableStyleGrid.js';
2
3
  import { useTableStyleColumnFreezing } from './useTableStyleColumnFreezing.js';
3
4
 
4
5
  function useTableStyle(tableId, table) {
5
- const tableMeta = table.options.meta;
6
- const {
7
- style: cssGridStyle,
8
- stylesheet: cssGridStylesheet
9
- } = useTableStyleGrid(tableId, table, tableMeta.fontSize.size);
10
- const {
11
- stylesheet: columnFreezingStylesheet
12
- } = useTableStyleColumnFreezing(tableId, table);
13
- const style = {
6
+ var tableMeta = table.options.meta;
7
+ var _useTableStyleGrid = useTableStyleGrid(tableId, table, tableMeta.fontSize.size),
8
+ cssGridStyle = _useTableStyleGrid.style,
9
+ cssGridStylesheet = _useTableStyleGrid.stylesheet;
10
+ var _useTableStyleColumnF = useTableStyleColumnFreezing(tableId, table),
11
+ columnFreezingStylesheet = _useTableStyleColumnF.stylesheet;
12
+ var style = _extends({
14
13
  // css vars required by children of table
15
14
  '--table-header-group-depth': table.getHeaderGroups().length,
16
15
  '--table-cell-padding-x': getCellWidthPadding(tableMeta.fontSize.size),
17
- '--table-cell-padding-y': getCellHeightPadding(tableMeta.rowHeight.height, tableMeta.fontSize.size),
18
- ...cssGridStyle
19
- };
20
- const stylesheet = [cssGridStylesheet, columnFreezingStylesheet].filter(s => !!s).join('\n');
16
+ '--table-cell-padding-y': getCellHeightPadding(tableMeta.rowHeight.height, tableMeta.fontSize.size)
17
+ }, cssGridStyle);
18
+ var stylesheet = [cssGridStylesheet, columnFreezingStylesheet].filter(function (s) {
19
+ return !!s;
20
+ }).join('\n');
21
21
  return {
22
- style,
23
- stylesheet
22
+ style: style,
23
+ stylesheet: stylesheet
24
24
  };
25
25
  }
26
26
  // we cannot just use a fixed height because our rows need to grow in height (images, edit mode validation etc)
@@ -1 +1 @@
1
- {"version":3,"file":"useTableStyle.js","sources":["../../../../../../../../../src/primitives/Table/Core/features/useTableStyle.tsx"],"sourcesContent":["import { Table as ReactTable, TableMeta as ReactTableMeta } from '@tanstack/react-table';\nimport { useTableStyleGrid } from './useTableStyleGrid';\nimport { useTableStyleColumnFreezing } from './useTableStyleColumnFreezing';\nimport { TableFontSize, TableRowHeight } from '../../types';\n\nexport function useTableStyle<TType = unknown>(tableId: string, table: ReactTable<TType>) {\n const tableMeta = table.options.meta as ReactTableMeta<TType>;\n const { style: cssGridStyle, stylesheet: cssGridStylesheet } = useTableStyleGrid<TType>(\n tableId,\n table,\n tableMeta.fontSize.size\n );\n const { stylesheet: columnFreezingStylesheet } = useTableStyleColumnFreezing(tableId, table);\n\n const style = {\n // css vars required by children of table\n '--table-header-group-depth': table.getHeaderGroups().length,\n '--table-cell-padding-x': getCellWidthPadding(tableMeta.fontSize.size),\n '--table-cell-padding-y': getCellHeightPadding(tableMeta.rowHeight.height, tableMeta.fontSize.size),\n ...cssGridStyle,\n };\n\n const stylesheet = [cssGridStylesheet, columnFreezingStylesheet].filter(s => !!s).join('\\n');\n\n return { style, stylesheet };\n}\n\n// we cannot just use a fixed height because our rows need to grow in height (images, edit mode validation etc)\nfunction getCellHeightPadding(height: TableRowHeight, fontSize: TableFontSize) {\n // TODO: can we get the rem values from tailwind\n switch (height) {\n case 'short': {\n switch (fontSize) {\n case 'small':\n return '8px';\n\n default:\n return '6px';\n }\n }\n\n case 'tall': {\n switch (fontSize) {\n case 'small':\n return '16px';\n\n case 'large':\n return '12px';\n\n default:\n return '14px';\n }\n }\n\n case 'extra-tall': {\n switch (fontSize) {\n case 'small':\n return '22px';\n\n case 'large':\n return '18px';\n\n default:\n return '20px';\n }\n }\n\n default: {\n switch (fontSize) {\n case 'small':\n return '12px';\n\n case 'large':\n return '8px';\n\n default:\n return '10px';\n }\n }\n }\n}\n\nfunction getCellWidthPadding(fontSize: TableFontSize) {\n switch (fontSize) {\n case 'small':\n return '8px';\n\n case 'medium':\n return '12px';\n\n default:\n return '16px';\n }\n}\n"],"names":["useTableStyle","tableId","table","tableMeta","options","meta","style","cssGridStyle","stylesheet","cssGridStylesheet","useTableStyleGrid","fontSize","size","columnFreezingStylesheet","useTableStyleColumnFreezing","getHeaderGroups","length","getCellWidthPadding","getCellHeightPadding","rowHeight","height","filter","s","join"],"mappings":";;;SAKgBA,aAAaA,CAAkBC,OAAe,EAAEC,KAAwB;EACpF,MAAMC,SAAS,GAAGD,KAAK,CAACE,OAAO,CAACC,IAA6B;EAC7D,MAAM;IAAEC,KAAK,EAAEC,YAAY;IAAEC,UAAU,EAAEC;GAAmB,GAAGC,iBAAiB,CAC5ET,OAAO,EACPC,KAAK,EACLC,SAAS,CAACQ,QAAQ,CAACC,IAAI,CAC1B;EACD,MAAM;IAAEJ,UAAU,EAAEK;GAA0B,GAAGC,2BAA2B,CAACb,OAAO,EAAEC,KAAK,CAAC;EAE5F,MAAMI,KAAK,GAAG;;IAEV,4BAA4B,EAAEJ,KAAK,CAACa,eAAe,EAAE,CAACC,MAAM;IAC5D,wBAAwB,EAAEC,mBAAmB,CAACd,SAAS,CAACQ,QAAQ,CAACC,IAAI,CAAC;IACtE,wBAAwB,EAAEM,oBAAoB,CAACf,SAAS,CAACgB,SAAS,CAACC,MAAM,EAAEjB,SAAS,CAACQ,QAAQ,CAACC,IAAI,CAAC;IACnG,GAAGL;GACN;EAED,MAAMC,UAAU,GAAG,CAACC,iBAAiB,EAAEI,wBAAwB,CAAC,CAACQ,MAAM,CAACC,CAAC,IAAI,CAAC,CAACA,CAAC,CAAC,CAACC,IAAI,CAAC,IAAI,CAAC;EAE5F,OAAO;IAAEjB,KAAK;IAAEE;GAAY;AAChC;AAEA;AACA,SAASU,oBAAoBA,CAACE,MAAsB,EAAET,QAAuB;;EAEzE,QAAQS,MAAM;IACV,KAAK,OAAO;MAAE;QACV,QAAQT,QAAQ;UACZ,KAAK,OAAO;YACR,OAAO,KAAK;UAEhB;YACI,OAAO,KAAK;;;IAIxB,KAAK,MAAM;MAAE;QACT,QAAQA,QAAQ;UACZ,KAAK,OAAO;YACR,OAAO,MAAM;UAEjB,KAAK,OAAO;YACR,OAAO,MAAM;UAEjB;YACI,OAAO,MAAM;;;IAIzB,KAAK,YAAY;MAAE;QACf,QAAQA,QAAQ;UACZ,KAAK,OAAO;YACR,OAAO,MAAM;UAEjB,KAAK,OAAO;YACR,OAAO,MAAM;UAEjB;YACI,OAAO,MAAM;;;IAIzB;MAAS;QACL,QAAQA,QAAQ;UACZ,KAAK,OAAO;YACR,OAAO,MAAM;UAEjB,KAAK,OAAO;YACR,OAAO,KAAK;UAEhB;YACI,OAAO,MAAM;;;;AAIjC;AAEA,SAASM,mBAAmBA,CAACN,QAAuB;EAChD,QAAQA,QAAQ;IACZ,KAAK,OAAO;MACR,OAAO,KAAK;IAEhB,KAAK,QAAQ;MACT,OAAO,MAAM;IAEjB;MACI,OAAO,MAAM;;AAEzB;;;;"}
1
+ {"version":3,"file":"useTableStyle.js","sources":["../../../../../../../../../src/primitives/Table/Core/features/useTableStyle.tsx"],"sourcesContent":["import { Table as ReactTable, TableMeta as ReactTableMeta } from '@tanstack/react-table';\nimport { useTableStyleGrid } from './useTableStyleGrid';\nimport { useTableStyleColumnFreezing } from './useTableStyleColumnFreezing';\nimport { TableFontSize, TableRowHeight } from '../../types';\n\nexport function useTableStyle<TType = unknown>(tableId: string, table: ReactTable<TType>) {\n const tableMeta = table.options.meta as ReactTableMeta<TType>;\n const { style: cssGridStyle, stylesheet: cssGridStylesheet } = useTableStyleGrid<TType>(\n tableId,\n table,\n tableMeta.fontSize.size\n );\n const { stylesheet: columnFreezingStylesheet } = useTableStyleColumnFreezing(tableId, table);\n\n const style = {\n // css vars required by children of table\n '--table-header-group-depth': table.getHeaderGroups().length,\n '--table-cell-padding-x': getCellWidthPadding(tableMeta.fontSize.size),\n '--table-cell-padding-y': getCellHeightPadding(tableMeta.rowHeight.height, tableMeta.fontSize.size),\n ...cssGridStyle,\n };\n\n const stylesheet = [cssGridStylesheet, columnFreezingStylesheet].filter(s => !!s).join('\\n');\n\n return { style, stylesheet };\n}\n\n// we cannot just use a fixed height because our rows need to grow in height (images, edit mode validation etc)\nfunction getCellHeightPadding(height: TableRowHeight, fontSize: TableFontSize) {\n // TODO: can we get the rem values from tailwind\n switch (height) {\n case 'short': {\n switch (fontSize) {\n case 'small':\n return '8px';\n\n default:\n return '6px';\n }\n }\n\n case 'tall': {\n switch (fontSize) {\n case 'small':\n return '16px';\n\n case 'large':\n return '12px';\n\n default:\n return '14px';\n }\n }\n\n case 'extra-tall': {\n switch (fontSize) {\n case 'small':\n return '22px';\n\n case 'large':\n return '18px';\n\n default:\n return '20px';\n }\n }\n\n default: {\n switch (fontSize) {\n case 'small':\n return '12px';\n\n case 'large':\n return '8px';\n\n default:\n return '10px';\n }\n }\n }\n}\n\nfunction getCellWidthPadding(fontSize: TableFontSize) {\n switch (fontSize) {\n case 'small':\n return '8px';\n\n case 'medium':\n return '12px';\n\n default:\n return '16px';\n }\n}\n"],"names":["useTableStyle","tableId","table","tableMeta","options","meta","_useTableStyleGrid","useTableStyleGrid","fontSize","size","cssGridStyle","style","cssGridStylesheet","stylesheet","_useTableStyleColumnF","useTableStyleColumnFreezing","columnFreezingStylesheet","_extends","getHeaderGroups","length","getCellWidthPadding","getCellHeightPadding","rowHeight","height","filter","s","join"],"mappings":";;;;SAKgBA,aAAaA,CAAkBC,OAAe,EAAEC,KAAwB;EACpF,IAAMC,SAAS,GAAGD,KAAK,CAACE,OAAO,CAACC,IAA6B;EAC7D,IAAAC,kBAAA,GAA+DC,iBAAiB,CAC5EN,OAAO,EACPC,KAAK,EACLC,SAAS,CAACK,QAAQ,CAACC,IAAI,CAC1B;IAJcC,YAAY,GAAAJ,kBAAA,CAAnBK,KAAK;IAA4BC,iBAAiB,GAAAN,kBAAA,CAA7BO,UAAU;EAKvC,IAAAC,qBAAA,GAAiDC,2BAA2B,CAACd,OAAO,EAAEC,KAAK,CAAC;IAAxEc,wBAAwB,GAAAF,qBAAA,CAApCD,UAAU;EAElB,IAAMF,KAAK,GAAAM,QAAA;;IAEP,4BAA4B,EAAEf,KAAK,CAACgB,eAAe,EAAE,CAACC,MAAM;IAC5D,wBAAwB,EAAEC,mBAAmB,CAACjB,SAAS,CAACK,QAAQ,CAACC,IAAI,CAAC;IACtE,wBAAwB,EAAEY,oBAAoB,CAAClB,SAAS,CAACmB,SAAS,CAACC,MAAM,EAAEpB,SAAS,CAACK,QAAQ,CAACC,IAAI;KAC/FC,YAAY,CAClB;EAED,IAAMG,UAAU,GAAG,CAACD,iBAAiB,EAAEI,wBAAwB,CAAC,CAACQ,MAAM,CAAC,UAAAC,CAAC;IAAA,OAAI,CAAC,CAACA,CAAC;IAAC,CAACC,IAAI,CAAC,IAAI,CAAC;EAE5F,OAAO;IAAEf,KAAK,EAALA,KAAK;IAAEE,UAAU,EAAVA;GAAY;AAChC;AAEA;AACA,SAASQ,oBAAoBA,CAACE,MAAsB,EAAEf,QAAuB;;EAEzE,QAAQe,MAAM;IACV,KAAK,OAAO;MAAE;QACV,QAAQf,QAAQ;UACZ,KAAK,OAAO;YACR,OAAO,KAAK;UAEhB;YACI,OAAO,KAAK;;;IAIxB,KAAK,MAAM;MAAE;QACT,QAAQA,QAAQ;UACZ,KAAK,OAAO;YACR,OAAO,MAAM;UAEjB,KAAK,OAAO;YACR,OAAO,MAAM;UAEjB;YACI,OAAO,MAAM;;;IAIzB,KAAK,YAAY;MAAE;QACf,QAAQA,QAAQ;UACZ,KAAK,OAAO;YACR,OAAO,MAAM;UAEjB,KAAK,OAAO;YACR,OAAO,MAAM;UAEjB;YACI,OAAO,MAAM;;;IAIzB;MAAS;QACL,QAAQA,QAAQ;UACZ,KAAK,OAAO;YACR,OAAO,MAAM;UAEjB,KAAK,OAAO;YACR,OAAO,KAAK;UAEhB;YACI,OAAO,MAAM;;;;AAIjC;AAEA,SAASY,mBAAmBA,CAACZ,QAAuB;EAChD,QAAQA,QAAQ;IACZ,KAAK,OAAO;MACR,OAAO,KAAK;IAEhB,KAAK,QAAQ;MACT,OAAO,MAAM;IAEjB;MACI,OAAO,MAAM;;AAEzB;;;;"}
@@ -1,59 +1,49 @@
1
1
  import React__default from 'react';
2
2
 
3
3
  function useTableStyleColumnFreezing(tableId, table) {
4
- const {
5
- columnPinning,
6
- columnSizing
7
- } = table.getState();
8
- const stylesheet = React__default.useMemo(() => {
9
- const styles = [];
4
+ var _table$getState = table.getState(),
5
+ columnPinning = _table$getState.columnPinning,
6
+ columnSizing = _table$getState.columnSizing;
7
+ var stylesheet = React__default.useMemo(function () {
8
+ var styles = [];
10
9
  // might be a better way to get this information, but it wasn't obvious
11
- const all = table.getFlatHeaders().filter(column => !column.subHeaders.length).map(x => x.id);
12
- const left = table.getLeftFlatHeaders().filter(column => !column.subHeaders.length);
13
- const right = table.getRightFlatHeaders().filter(column => !column.subHeaders.length);
10
+ var all = table.getFlatHeaders().filter(function (column) {
11
+ return !column.subHeaders.length;
12
+ }).map(function (x) {
13
+ return x.id;
14
+ });
15
+ var left = table.getLeftFlatHeaders().filter(function (column) {
16
+ return !column.subHeaders.length;
17
+ });
18
+ var right = table.getRightFlatHeaders().filter(function (column) {
19
+ return !column.subHeaders.length;
20
+ });
14
21
  if (left.length) {
15
- left.forEach(cell => {
16
- styles.push(`table[data-taco^='table']#${tableId} [data-cell-id="${cell.column.id}"] {
17
- left: ${cell.column.getStart(cell.column.getIsPinned())}px;
18
- }`);
22
+ left.forEach(function (cell) {
23
+ styles.push("table[data-taco^='table']#" + tableId + " [data-cell-id=\"" + cell.column.id + "\"] {\n left: " + cell.column.getStart(cell.column.getIsPinned()) + "px;\n }");
19
24
  });
20
- const leftIds = left.map(x => x.id);
21
- const index = all.indexOf(leftIds[leftIds.length - 1]);
25
+ var leftIds = left.map(function (x) {
26
+ return x.id;
27
+ });
28
+ var index = all.indexOf(leftIds[leftIds.length - 1]);
22
29
  // add right border, hide the header seperator and add shadow when scrolled
23
30
  // we have to be specific so that nested tables don't inherit the same css
24
- styles.push(`table[data-taco^='table']#${tableId} > thead > tr > th:nth-child(${index + 1}),
25
- table[data-taco^='table']#${tableId} > tbody > tr > td:nth-child(${index + 1}),
26
- table[data-taco^='table']#${tableId} > tfoot > tr > td:nth-child(${index + 1}):not([data-cell-id^="__"]) {
27
- border-right-width: 1px;
28
- }\ntable[data-taco^='table']#${tableId} > thead > tr > th:nth-child(${index + 1})[data-cell-id^="__"],
29
- table[data-taco^='table']#${tableId} > tbody > tr > td:nth-child(${index + 1})[data-cell-id^="__"] {
30
- border-right-color: transparent;
31
- }\ntable[data-taco^='table']#${tableId} > thead > tr > th:nth-child(${index + 1}):after {
32
- content: none;
33
- }\ntable[data-taco^='table'][data-table-horizontally-scrolled="true"]#${tableId} > thead > tr > th:nth-child(${index + 1}),
34
- table[data-taco^='table'][data-table-horizontally-scrolled="true"]#${tableId} > tbody > tr > td:nth-child(${index + 1}),
35
- table[data-taco^='table'][data-table-horizontally-scrolled="true"]#${tableId} > tfoot > tr > td:nth-child(${index + 1}) {
36
- border-right-color: rgb(221, 221, 221);
37
- box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), 6px 0px 6px rgb(0 0 0/8%);
38
- }`);
31
+ styles.push("table[data-taco^='table']#" + tableId + " > thead > tr > th:nth-child(" + (index + 1) + "),\n table[data-taco^='table']#" + tableId + " > tbody > tr > td:nth-child(" + (index + 1) + "),\n table[data-taco^='table']#" + tableId + " > tfoot > tr > td:nth-child(" + (index + 1) + "):not([data-cell-id^=\"__\"]) {\n border-right-width: 1px;\n }\ntable[data-taco^='table']#" + tableId + " > thead > tr > th:nth-child(" + (index + 1) + ")[data-cell-id^=\"__\"],\n table[data-taco^='table']#" + tableId + " > tbody > tr > td:nth-child(" + (index + 1) + ")[data-cell-id^=\"__\"] {\n border-right-color: transparent;\n }\ntable[data-taco^='table']#" + tableId + " > thead > tr > th:nth-child(" + (index + 1) + "):after {\n content: none;\n }\ntable[data-taco^='table'][data-table-horizontally-scrolled=\"true\"]#" + tableId + " > thead > tr > th:nth-child(" + (index + 1) + "),\n table[data-taco^='table'][data-table-horizontally-scrolled=\"true\"]#" + tableId + " > tbody > tr > td:nth-child(" + (index + 1) + "),\n table[data-taco^='table'][data-table-horizontally-scrolled=\"true\"]#" + tableId + " > tfoot > tr > td:nth-child(" + (index + 1) + ") {\n border-right-color: rgb(221, 221, 221);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), 6px 0px 6px rgb(0 0 0/8%);\n }");
39
32
  }
40
33
  if (right.length) {
41
- right.forEach(cell => {
42
- styles.push(`table[data-taco^='table']#${tableId} [data-cell-id="${cell.column.id}"] {
43
- right: ${cell.column.getStart(cell.column.getIsPinned())}px;
44
- }`);
34
+ right.forEach(function (cell) {
35
+ styles.push("table[data-taco^='table']#" + tableId + " [data-cell-id=\"" + cell.column.id + "\"] {\n right: " + cell.column.getStart(cell.column.getIsPinned()) + "px;\n }");
36
+ });
37
+ var rightIds = right.map(function (x) {
38
+ return x.id;
45
39
  });
46
- const rightIds = right.map(x => x.id);
47
- const index = all.indexOf(rightIds[rightIds.length - 1]);
48
- styles.push(`table[data-taco^='table']#${tableId} > thead > tr > th:nth-child(${index + 1}):not([data-cell-id^="__"]),
49
- table[data-taco^='table']#${tableId} > tbody > tr > td:nth-child(${index + 1}):not([data-cell-id^="__"]) {
50
- border-left-width: 1px;
51
- }`);
40
+ var _index = all.indexOf(rightIds[rightIds.length - 1]);
41
+ styles.push("table[data-taco^='table']#" + tableId + " > thead > tr > th:nth-child(" + (_index + 1) + "):not([data-cell-id^=\"__\"]),\n table[data-taco^='table']#" + tableId + " > tbody > tr > td:nth-child(" + (_index + 1) + "):not([data-cell-id^=\"__\"]) {\n border-left-width: 1px;\n }");
52
42
  }
53
43
  return styles.join('\n');
54
44
  }, [columnPinning, columnSizing]);
55
45
  return {
56
- stylesheet
46
+ stylesheet: stylesheet
57
47
  };
58
48
  }
59
49