@economic/taco 2.47.0-server-2 → 2.47.0-server.11

Sign up to get free protection for your applications and to get access to all the features.
Files changed (676) hide show
  1. package/dist/components/Calendar/Calendar.d.ts +1 -0
  2. package/dist/components/Icon/components/Autopay.d.ts +3 -0
  3. package/dist/components/Icon/components/AutopayPaused.d.ts +3 -0
  4. package/dist/components/Icon/components/Person.d.ts +3 -0
  5. package/dist/components/Icon/components/PersonSolid.d.ts +3 -0
  6. package/dist/components/Icon/components/Wallet.d.ts +3 -0
  7. package/dist/components/Icon/components/index.d.ts +1 -1
  8. package/dist/components/Input/Input.d.ts +1 -1
  9. package/dist/components/Menu/components/Item.d.ts +1 -1
  10. package/dist/components/Menu/components/Link.d.ts +1 -1
  11. package/dist/components/Navigation2/components/Link.d.ts +1 -1
  12. package/dist/components/Select2/components/Option.d.ts +4 -4
  13. package/dist/components/Select2/components/Search.d.ts +1 -1
  14. package/dist/components/Table3/features/useEditingState.d.ts +1 -1
  15. package/dist/components/Table3/features/useTableEditing.d.ts +2 -2
  16. package/dist/components/Tag/Tag.d.ts +1 -1
  17. package/dist/esm/_virtual/_rollupPluginBabelHelpers.js +63 -0
  18. package/dist/esm/_virtual/_rollupPluginBabelHelpers.js.map +1 -0
  19. package/dist/esm/index.css +21 -4
  20. package/dist/esm/packages/taco/src/charts/components/Area/AreaChart.js +32 -24
  21. package/dist/esm/packages/taco/src/charts/components/Area/AreaChart.js.map +1 -1
  22. package/dist/esm/packages/taco/src/charts/components/Bar/BarChart.js +84 -61
  23. package/dist/esm/packages/taco/src/charts/components/Bar/BarChart.js.map +1 -1
  24. package/dist/esm/packages/taco/src/charts/components/Donut/ActiveShape.js +16 -15
  25. package/dist/esm/packages/taco/src/charts/components/Donut/ActiveShape.js.map +1 -1
  26. package/dist/esm/packages/taco/src/charts/components/Donut/CenteredLabel.js +12 -13
  27. package/dist/esm/packages/taco/src/charts/components/Donut/CenteredLabel.js.map +1 -1
  28. package/dist/esm/packages/taco/src/charts/components/Donut/DonutChart.js +104 -68
  29. package/dist/esm/packages/taco/src/charts/components/Donut/DonutChart.js.map +1 -1
  30. package/dist/esm/packages/taco/src/charts/components/Donut/Legend.js +38 -29
  31. package/dist/esm/packages/taco/src/charts/components/Donut/Legend.js.map +1 -1
  32. package/dist/esm/packages/taco/src/charts/components/Donut/util.js +2 -2
  33. package/dist/esm/packages/taco/src/charts/components/Donut/util.js.map +1 -1
  34. package/dist/esm/packages/taco/src/charts/components/Legend.js +45 -37
  35. package/dist/esm/packages/taco/src/charts/components/Legend.js.map +1 -1
  36. package/dist/esm/packages/taco/src/charts/components/Line/LineChart.js +32 -24
  37. package/dist/esm/packages/taco/src/charts/components/Line/LineChart.js.map +1 -1
  38. package/dist/esm/packages/taco/src/charts/components/ResponsiveContainer.js +5 -3
  39. package/dist/esm/packages/taco/src/charts/components/ResponsiveContainer.js.map +1 -1
  40. package/dist/esm/packages/taco/src/charts/components/Tooltip.js +26 -25
  41. package/dist/esm/packages/taco/src/charts/components/Tooltip.js.map +1 -1
  42. package/dist/esm/packages/taco/src/charts/utils/color.js +13 -12
  43. package/dist/esm/packages/taco/src/charts/utils/color.js.map +1 -1
  44. package/dist/esm/packages/taco/src/charts/utils/common.js +39 -26
  45. package/dist/esm/packages/taco/src/charts/utils/common.js.map +1 -1
  46. package/dist/esm/packages/taco/src/components/Accordion/Accordion.js +30 -31
  47. package/dist/esm/packages/taco/src/components/Accordion/Accordion.js.map +1 -1
  48. package/dist/esm/packages/taco/src/components/Alert/Alert.js +7 -9
  49. package/dist/esm/packages/taco/src/components/Alert/Alert.js.map +1 -1
  50. package/dist/esm/packages/taco/src/components/AlertDialog/AlertDialog.js +14 -13
  51. package/dist/esm/packages/taco/src/components/AlertDialog/AlertDialog.js.map +1 -1
  52. package/dist/esm/packages/taco/src/components/AlertDialog/Context.js +2 -2
  53. package/dist/esm/packages/taco/src/components/AlertDialog/Context.js.map +1 -1
  54. package/dist/esm/packages/taco/src/components/AlertDialog/components/Content.js +10 -9
  55. package/dist/esm/packages/taco/src/components/AlertDialog/components/Content.js.map +1 -1
  56. package/dist/esm/packages/taco/src/components/AlertDialog/components/Footer.js +4 -4
  57. package/dist/esm/packages/taco/src/components/AlertDialog/components/Footer.js.map +1 -1
  58. package/dist/esm/packages/taco/src/components/AlertDialog/components/Trigger.js +5 -6
  59. package/dist/esm/packages/taco/src/components/AlertDialog/components/Trigger.js.map +1 -1
  60. package/dist/esm/packages/taco/src/components/Backdrop/Backdrop.js +2 -2
  61. package/dist/esm/packages/taco/src/components/Backdrop/Backdrop.js.map +1 -1
  62. package/dist/esm/packages/taco/src/components/Badge/Badge.js +26 -27
  63. package/dist/esm/packages/taco/src/components/Badge/Badge.js.map +1 -1
  64. package/dist/esm/packages/taco/src/components/BadgeIcon/BadgeIcon.js +12 -14
  65. package/dist/esm/packages/taco/src/components/BadgeIcon/BadgeIcon.js.map +1 -1
  66. package/dist/esm/packages/taco/src/components/Banner/Banner.js +7 -10
  67. package/dist/esm/packages/taco/src/components/Banner/Banner.js.map +1 -1
  68. package/dist/esm/packages/taco/src/components/Banner/util.js +3 -3
  69. package/dist/esm/packages/taco/src/components/Banner/util.js.map +1 -1
  70. package/dist/esm/packages/taco/src/components/Button/Button.js +28 -29
  71. package/dist/esm/packages/taco/src/components/Button/Button.js.map +1 -1
  72. package/dist/esm/packages/taco/src/components/Button/util.js +25 -24
  73. package/dist/esm/packages/taco/src/components/Button/util.js.map +1 -1
  74. package/dist/esm/packages/taco/src/components/Calendar/Calendar.js +81 -76
  75. package/dist/esm/packages/taco/src/components/Calendar/Calendar.js.map +1 -1
  76. package/dist/esm/packages/taco/src/components/Card/Card.js +14 -15
  77. package/dist/esm/packages/taco/src/components/Card/Card.js.map +1 -1
  78. package/dist/esm/packages/taco/src/components/Checkbox/Checkbox.js +24 -22
  79. package/dist/esm/packages/taco/src/components/Checkbox/Checkbox.js.map +1 -1
  80. package/dist/esm/packages/taco/src/components/Combobox/Combobox.js +21 -23
  81. package/dist/esm/packages/taco/src/components/Combobox/Combobox.js.map +1 -1
  82. package/dist/esm/packages/taco/src/components/Combobox/useCombobox.js +76 -64
  83. package/dist/esm/packages/taco/src/components/Combobox/useCombobox.js.map +1 -1
  84. package/dist/esm/packages/taco/src/components/Datepicker/Datepicker.js +60 -57
  85. package/dist/esm/packages/taco/src/components/Datepicker/Datepicker.js.map +1 -1
  86. package/dist/esm/packages/taco/src/components/Datepicker/useDatepicker.js +41 -33
  87. package/dist/esm/packages/taco/src/components/Datepicker/useDatepicker.js.map +1 -1
  88. package/dist/esm/packages/taco/src/components/Dialog/Context.js +4 -4
  89. package/dist/esm/packages/taco/src/components/Dialog/Context.js.map +1 -1
  90. package/dist/esm/packages/taco/src/components/Dialog/Dialog.js +54 -39
  91. package/dist/esm/packages/taco/src/components/Dialog/Dialog.js.map +1 -1
  92. package/dist/esm/packages/taco/src/components/Dialog/components/Content.js +36 -38
  93. package/dist/esm/packages/taco/src/components/Dialog/components/Content.js.map +1 -1
  94. package/dist/esm/packages/taco/src/components/Dialog/components/DialogDrawer.js +3 -3
  95. package/dist/esm/packages/taco/src/components/Dialog/components/DialogDrawer.js.map +1 -1
  96. package/dist/esm/packages/taco/src/components/Dialog/components/Extra.js +2 -2
  97. package/dist/esm/packages/taco/src/components/Dialog/components/Extra.js.map +1 -1
  98. package/dist/esm/packages/taco/src/components/Dialog/components/Trigger.js +5 -6
  99. package/dist/esm/packages/taco/src/components/Dialog/components/Trigger.js.map +1 -1
  100. package/dist/esm/packages/taco/src/components/Dialog/util.js +7 -3
  101. package/dist/esm/packages/taco/src/components/Dialog/util.js.map +1 -1
  102. package/dist/esm/packages/taco/src/components/Drawer/Context.js +5 -5
  103. package/dist/esm/packages/taco/src/components/Drawer/Context.js.map +1 -1
  104. package/dist/esm/packages/taco/src/components/Drawer/Drawer.js +61 -51
  105. package/dist/esm/packages/taco/src/components/Drawer/Drawer.js.map +1 -1
  106. package/dist/esm/packages/taco/src/components/Drawer/components/Content.js +134 -145
  107. package/dist/esm/packages/taco/src/components/Drawer/components/Content.js.map +1 -1
  108. package/dist/esm/packages/taco/src/components/Drawer/components/Trigger.js +1 -1
  109. package/dist/esm/packages/taco/src/components/Drawer/components/Trigger.js.map +1 -1
  110. package/dist/esm/packages/taco/src/components/Drawer/util.js +5 -5
  111. package/dist/esm/packages/taco/src/components/Drawer/util.js.map +1 -1
  112. package/dist/esm/packages/taco/src/components/Field/Field.js +14 -12
  113. package/dist/esm/packages/taco/src/components/Field/Field.js.map +1 -1
  114. package/dist/esm/packages/taco/src/components/Form/Form.js +7 -6
  115. package/dist/esm/packages/taco/src/components/Form/Form.js.map +1 -1
  116. package/dist/esm/packages/taco/src/components/Group/Group.js +9 -7
  117. package/dist/esm/packages/taco/src/components/Group/Group.js.map +1 -1
  118. package/dist/esm/packages/taco/src/components/Hanger/Hanger.js +37 -36
  119. package/dist/esm/packages/taco/src/components/Hanger/Hanger.js.map +1 -1
  120. package/dist/esm/packages/taco/src/components/Header/Header.js +2 -2
  121. package/dist/esm/packages/taco/src/components/Header/Header.js.map +1 -1
  122. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Avatar.js +14 -10
  123. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Avatar.js.map +1 -1
  124. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Badge.js +5 -4
  125. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Badge.js.map +1 -1
  126. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Display.js +7 -9
  127. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Display.js.map +1 -1
  128. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Item.js +9 -9
  129. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Item.js.map +1 -1
  130. package/dist/esm/packages/taco/src/components/Header/components/AgreementSelector.js +66 -46
  131. package/dist/esm/packages/taco/src/components/Header/components/AgreementSelector.js.map +1 -1
  132. package/dist/esm/packages/taco/src/components/Header/components/Button.js +12 -8
  133. package/dist/esm/packages/taco/src/components/Header/components/Button.js.map +1 -1
  134. package/dist/esm/packages/taco/src/components/Header/components/Link.js +22 -18
  135. package/dist/esm/packages/taco/src/components/Header/components/Link.js.map +1 -1
  136. package/dist/esm/packages/taco/src/components/Header/components/Logo.js +4 -4
  137. package/dist/esm/packages/taco/src/components/Header/components/Logo.js.map +1 -1
  138. package/dist/esm/packages/taco/src/components/Header/components/MenuButton.js +2 -2
  139. package/dist/esm/packages/taco/src/components/Header/components/MenuButton.js.map +1 -1
  140. package/dist/esm/packages/taco/src/components/Header/components/PrimaryNavigation.js +10 -9
  141. package/dist/esm/packages/taco/src/components/Header/components/PrimaryNavigation.js.map +1 -1
  142. package/dist/esm/packages/taco/src/components/Header/components/SecondaryNavigation.js +2 -2
  143. package/dist/esm/packages/taco/src/components/Header/components/SecondaryNavigation.js.map +1 -1
  144. package/dist/esm/packages/taco/src/components/HoverCard/HoverCard.js +5 -7
  145. package/dist/esm/packages/taco/src/components/HoverCard/HoverCard.js.map +1 -1
  146. package/dist/esm/packages/taco/src/components/HoverCard/Primitives.js +1 -1
  147. package/dist/esm/packages/taco/src/components/HoverCard/Primitives.js.map +1 -1
  148. package/dist/esm/packages/taco/src/components/Icon/Icon.js +7 -7
  149. package/dist/esm/packages/taco/src/components/Icon/Icon.js.map +1 -1
  150. package/dist/esm/packages/taco/src/components/Icon/components/Autopay.js +19 -0
  151. package/dist/esm/packages/taco/src/components/Icon/components/Autopay.js.map +1 -0
  152. package/dist/esm/packages/taco/src/components/Icon/components/AutopayPaused.js +19 -0
  153. package/dist/esm/packages/taco/src/components/Icon/components/AutopayPaused.js.map +1 -0
  154. package/dist/esm/packages/taco/src/components/Icon/components/Person.js +19 -0
  155. package/dist/esm/packages/taco/src/components/Icon/components/Person.js.map +1 -0
  156. package/dist/esm/packages/taco/src/components/Icon/components/PersonSolid.js +19 -0
  157. package/dist/esm/packages/taco/src/components/Icon/components/PersonSolid.js.map +1 -0
  158. package/dist/esm/packages/taco/src/components/Icon/components/Wallet.js +19 -0
  159. package/dist/esm/packages/taco/src/components/Icon/components/Wallet.js.map +1 -0
  160. package/dist/esm/packages/taco/src/components/Icon/components/index.js +14 -4
  161. package/dist/esm/packages/taco/src/components/Icon/components/index.js.map +1 -1
  162. package/dist/esm/packages/taco/src/components/IconButton/IconButton.js +22 -23
  163. package/dist/esm/packages/taco/src/components/IconButton/IconButton.js.map +1 -1
  164. package/dist/esm/packages/taco/src/components/Input/Input.js +45 -44
  165. package/dist/esm/packages/taco/src/components/Input/Input.js.map +1 -1
  166. package/dist/esm/packages/taco/src/components/Input/util.js +8 -5
  167. package/dist/esm/packages/taco/src/components/Input/util.js.map +1 -1
  168. package/dist/esm/packages/taco/src/components/Layout/Layout.js +7 -5
  169. package/dist/esm/packages/taco/src/components/Layout/Layout.js.map +1 -1
  170. package/dist/esm/packages/taco/src/components/Layout/components/Content.js +2 -2
  171. package/dist/esm/packages/taco/src/components/Layout/components/Content.js.map +1 -1
  172. package/dist/esm/packages/taco/src/components/Layout/components/Context.js +4 -2
  173. package/dist/esm/packages/taco/src/components/Layout/components/Context.js.map +1 -1
  174. package/dist/esm/packages/taco/src/components/Layout/components/Page.js +2 -2
  175. package/dist/esm/packages/taco/src/components/Layout/components/Page.js.map +1 -1
  176. package/dist/esm/packages/taco/src/components/Layout/components/Sidebar.js +34 -27
  177. package/dist/esm/packages/taco/src/components/Layout/components/Sidebar.js.map +1 -1
  178. package/dist/esm/packages/taco/src/components/Layout/components/Top.js +9 -6
  179. package/dist/esm/packages/taco/src/components/Layout/components/Top.js.map +1 -1
  180. package/dist/esm/packages/taco/src/components/List/components/Button.js +1 -1
  181. package/dist/esm/packages/taco/src/components/List/components/Button.js.map +1 -1
  182. package/dist/esm/packages/taco/src/components/List/components/Collapsible.js +10 -7
  183. package/dist/esm/packages/taco/src/components/List/components/Collapsible.js.map +1 -1
  184. package/dist/esm/packages/taco/src/components/List/components/Group.js +1 -1
  185. package/dist/esm/packages/taco/src/components/List/components/Group.js.map +1 -1
  186. package/dist/esm/packages/taco/src/components/List/components/Item.js +15 -13
  187. package/dist/esm/packages/taco/src/components/List/components/Item.js.map +1 -1
  188. package/dist/esm/packages/taco/src/components/List/components/Link.js +3 -3
  189. package/dist/esm/packages/taco/src/components/List/components/Link.js.map +1 -1
  190. package/dist/esm/packages/taco/src/components/List/components/Toggle.js +29 -27
  191. package/dist/esm/packages/taco/src/components/List/components/Toggle.js.map +1 -1
  192. package/dist/esm/packages/taco/src/components/Listbox/Listbox.js +21 -26
  193. package/dist/esm/packages/taco/src/components/Listbox/Listbox.js.map +1 -1
  194. package/dist/esm/packages/taco/src/components/Listbox/ScrollableList.js +82 -70
  195. package/dist/esm/packages/taco/src/components/Listbox/ScrollableList.js.map +1 -1
  196. package/dist/esm/packages/taco/src/components/Listbox/useListbox.js +56 -51
  197. package/dist/esm/packages/taco/src/components/Listbox/useListbox.js.map +1 -1
  198. package/dist/esm/packages/taco/src/components/Listbox/useMultiListbox.js +83 -65
  199. package/dist/esm/packages/taco/src/components/Listbox/useMultiListbox.js.map +1 -1
  200. package/dist/esm/packages/taco/src/components/Listbox/useTypeahead.js +9 -10
  201. package/dist/esm/packages/taco/src/components/Listbox/useTypeahead.js.map +1 -1
  202. package/dist/esm/packages/taco/src/components/Listbox/util.js +78 -48
  203. package/dist/esm/packages/taco/src/components/Listbox/util.js.map +1 -1
  204. package/dist/esm/packages/taco/src/components/Menu/Context.js +2 -2
  205. package/dist/esm/packages/taco/src/components/Menu/Context.js.map +1 -1
  206. package/dist/esm/packages/taco/src/components/Menu/Menu.js +42 -26
  207. package/dist/esm/packages/taco/src/components/Menu/Menu.js.map +1 -1
  208. package/dist/esm/packages/taco/src/components/Menu/components/Checkbox.js +8 -8
  209. package/dist/esm/packages/taco/src/components/Menu/components/Checkbox.js.map +1 -1
  210. package/dist/esm/packages/taco/src/components/Menu/components/Content.js +28 -22
  211. package/dist/esm/packages/taco/src/components/Menu/components/Content.js.map +1 -1
  212. package/dist/esm/packages/taco/src/components/Menu/components/Header.js +3 -3
  213. package/dist/esm/packages/taco/src/components/Menu/components/Header.js.map +1 -1
  214. package/dist/esm/packages/taco/src/components/Menu/components/Item.js +32 -32
  215. package/dist/esm/packages/taco/src/components/Menu/components/Item.js.map +1 -1
  216. package/dist/esm/packages/taco/src/components/Menu/components/Link.js +10 -10
  217. package/dist/esm/packages/taco/src/components/Menu/components/Link.js.map +1 -1
  218. package/dist/esm/packages/taco/src/components/Menu/components/RadioGroup.js +15 -16
  219. package/dist/esm/packages/taco/src/components/Menu/components/RadioGroup.js.map +1 -1
  220. package/dist/esm/packages/taco/src/components/Menu/components/Separator.js +1 -1
  221. package/dist/esm/packages/taco/src/components/Menu/components/Separator.js.map +1 -1
  222. package/dist/esm/packages/taco/src/components/Menu/components/SubMenu.js +7 -7
  223. package/dist/esm/packages/taco/src/components/Menu/components/SubMenu.js.map +1 -1
  224. package/dist/esm/packages/taco/src/components/Menu/components/Trigger.js +5 -5
  225. package/dist/esm/packages/taco/src/components/Menu/components/Trigger.js.map +1 -1
  226. package/dist/esm/packages/taco/src/components/ModeSwitch/ModeSwitch.js +6 -6
  227. package/dist/esm/packages/taco/src/components/ModeSwitch/ModeSwitch.js.map +1 -1
  228. package/dist/esm/packages/taco/src/components/Navigation/Navigation.js +41 -36
  229. package/dist/esm/packages/taco/src/components/Navigation/Navigation.js.map +1 -1
  230. package/dist/esm/packages/taco/src/components/Navigation2/Navigation2.js +6 -6
  231. package/dist/esm/packages/taco/src/components/Navigation2/Navigation2.js.map +1 -1
  232. package/dist/esm/packages/taco/src/components/Navigation2/components/Content.js +6 -6
  233. package/dist/esm/packages/taco/src/components/Navigation2/components/Content.js.map +1 -1
  234. package/dist/esm/packages/taco/src/components/Navigation2/components/Group.js +14 -11
  235. package/dist/esm/packages/taco/src/components/Navigation2/components/Group.js.map +1 -1
  236. package/dist/esm/packages/taco/src/components/Navigation2/components/Link.js +31 -24
  237. package/dist/esm/packages/taco/src/components/Navigation2/components/Link.js.map +1 -1
  238. package/dist/esm/packages/taco/src/components/Navigation2/components/Section.js +7 -7
  239. package/dist/esm/packages/taco/src/components/Navigation2/components/Section.js.map +1 -1
  240. package/dist/esm/packages/taco/src/components/Navigation2/components/util.js +9 -7
  241. package/dist/esm/packages/taco/src/components/Navigation2/components/util.js.map +1 -1
  242. package/dist/esm/packages/taco/src/components/OverflowGroup/OverflowGroup.js +48 -51
  243. package/dist/esm/packages/taco/src/components/OverflowGroup/OverflowGroup.js.map +1 -1
  244. package/dist/esm/packages/taco/src/components/Pagination/PageNumbers.js +26 -23
  245. package/dist/esm/packages/taco/src/components/Pagination/PageNumbers.js.map +1 -1
  246. package/dist/esm/packages/taco/src/components/Pagination/Pagination.js +53 -39
  247. package/dist/esm/packages/taco/src/components/Pagination/Pagination.js.map +1 -1
  248. package/dist/esm/packages/taco/src/components/Pagination/usePagination.js +17 -7
  249. package/dist/esm/packages/taco/src/components/Pagination/usePagination.js.map +1 -1
  250. package/dist/esm/packages/taco/src/components/Pagination/usePaginationShortcuts.js +8 -9
  251. package/dist/esm/packages/taco/src/components/Pagination/usePaginationShortcuts.js.map +1 -1
  252. package/dist/esm/packages/taco/src/components/Popover/Popover.js +45 -43
  253. package/dist/esm/packages/taco/src/components/Popover/Popover.js.map +1 -1
  254. package/dist/esm/packages/taco/src/components/Popover/Primitives.js +1 -1
  255. package/dist/esm/packages/taco/src/components/Popover/Primitives.js.map +1 -1
  256. package/dist/esm/packages/taco/src/components/Popover/util.js +3 -1
  257. package/dist/esm/packages/taco/src/components/Popover/util.js.map +1 -1
  258. package/dist/esm/packages/taco/src/components/Progress/Progress.js +13 -11
  259. package/dist/esm/packages/taco/src/components/Progress/Progress.js.map +1 -1
  260. package/dist/esm/packages/taco/src/components/Provider/Localization.js +13 -12
  261. package/dist/esm/packages/taco/src/components/Provider/Localization.js.map +1 -1
  262. package/dist/esm/packages/taco/src/components/Provider/Provider.js +8 -8
  263. package/dist/esm/packages/taco/src/components/Provider/Provider.js.map +1 -1
  264. package/dist/esm/packages/taco/src/components/RadioGroup/RadioGroup.js +54 -47
  265. package/dist/esm/packages/taco/src/components/RadioGroup/RadioGroup.js.map +1 -1
  266. package/dist/esm/packages/taco/src/components/RadioGroup/util.js +7 -1
  267. package/dist/esm/packages/taco/src/components/RadioGroup/util.js.map +1 -1
  268. package/dist/esm/packages/taco/src/components/Report/Report.js +7 -5
  269. package/dist/esm/packages/taco/src/components/Report/Report.js.map +1 -1
  270. package/dist/esm/packages/taco/src/components/Report/useReport.js +1 -1
  271. package/dist/esm/packages/taco/src/components/Report/useReport.js.map +1 -1
  272. package/dist/esm/packages/taco/src/components/ScrollArea/ScrollArea.js +17 -13
  273. package/dist/esm/packages/taco/src/components/ScrollArea/ScrollArea.js.map +1 -1
  274. package/dist/esm/packages/taco/src/components/SearchInput/SearchInput.js +11 -11
  275. package/dist/esm/packages/taco/src/components/SearchInput/SearchInput.js.map +1 -1
  276. package/dist/esm/packages/taco/src/components/SearchInput2/SearchInput2.js +44 -39
  277. package/dist/esm/packages/taco/src/components/SearchInput2/SearchInput2.js.map +1 -1
  278. package/dist/esm/packages/taco/src/components/Select/Select.js +28 -31
  279. package/dist/esm/packages/taco/src/components/Select/Select.js.map +1 -1
  280. package/dist/esm/packages/taco/src/components/Select/useSelect.js +79 -70
  281. package/dist/esm/packages/taco/src/components/Select/useSelect.js.map +1 -1
  282. package/dist/esm/packages/taco/src/components/Select2/Select2.js +154 -121
  283. package/dist/esm/packages/taco/src/components/Select2/Select2.js.map +1 -1
  284. package/dist/esm/packages/taco/src/components/Select2/components/Collection.js +2 -4
  285. package/dist/esm/packages/taco/src/components/Select2/components/Collection.js.map +1 -1
  286. package/dist/esm/packages/taco/src/components/Select2/components/Context.js +4 -2
  287. package/dist/esm/packages/taco/src/components/Select2/components/Context.js.map +1 -1
  288. package/dist/esm/packages/taco/src/components/Select2/components/Create.js +45 -41
  289. package/dist/esm/packages/taco/src/components/Select2/components/Create.js.map +1 -1
  290. package/dist/esm/packages/taco/src/components/Select2/components/Edit.js +145 -129
  291. package/dist/esm/packages/taco/src/components/Select2/components/Edit.js.map +1 -1
  292. package/dist/esm/packages/taco/src/components/Select2/components/Group.js +8 -8
  293. package/dist/esm/packages/taco/src/components/Select2/components/Group.js.map +1 -1
  294. package/dist/esm/packages/taco/src/components/Select2/components/Option.js +36 -35
  295. package/dist/esm/packages/taco/src/components/Select2/components/Option.js.map +1 -1
  296. package/dist/esm/packages/taco/src/components/Select2/components/Search.js +9 -10
  297. package/dist/esm/packages/taco/src/components/Select2/components/Search.js.map +1 -1
  298. package/dist/esm/packages/taco/src/components/Select2/components/Title.js +2 -2
  299. package/dist/esm/packages/taco/src/components/Select2/components/Title.js.map +1 -1
  300. package/dist/esm/packages/taco/src/components/Select2/components/Trigger.js +173 -128
  301. package/dist/esm/packages/taco/src/components/Select2/components/Trigger.js.map +1 -1
  302. package/dist/esm/packages/taco/src/components/Select2/hooks/useChildren.js +32 -23
  303. package/dist/esm/packages/taco/src/components/Select2/hooks/useChildren.js.map +1 -1
  304. package/dist/esm/packages/taco/src/components/Select2/utilities.js +13 -6
  305. package/dist/esm/packages/taco/src/components/Select2/utilities.js.map +1 -1
  306. package/dist/esm/packages/taco/src/components/Shortcut/Shortcut.js +16 -13
  307. package/dist/esm/packages/taco/src/components/Shortcut/Shortcut.js.map +1 -1
  308. package/dist/esm/packages/taco/src/components/Spinner/Spinner.js +17 -12
  309. package/dist/esm/packages/taco/src/components/Spinner/Spinner.js.map +1 -1
  310. package/dist/esm/packages/taco/src/components/Switch/Switch.js +14 -14
  311. package/dist/esm/packages/taco/src/components/Switch/Switch.js.map +1 -1
  312. package/dist/esm/packages/taco/src/components/Table/components/BaseTable.js +28 -23
  313. package/dist/esm/packages/taco/src/components/Table/components/BaseTable.js.map +1 -1
  314. package/dist/esm/packages/taco/src/components/Table/components/PaginatedTable.js +7 -3
  315. package/dist/esm/packages/taco/src/components/Table/components/PaginatedTable.js.map +1 -1
  316. package/dist/esm/packages/taco/src/components/Table/components/Table.js +22 -18
  317. package/dist/esm/packages/taco/src/components/Table/components/Table.js.map +1 -1
  318. package/dist/esm/packages/taco/src/components/Table/components/WindowedTable.js +100 -92
  319. package/dist/esm/packages/taco/src/components/Table/components/WindowedTable.js.map +1 -1
  320. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowActions.js +136 -118
  321. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowActions.js.map +1 -1
  322. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowDraggable.js +55 -55
  323. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowDraggable.js.map +1 -1
  324. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowEditing.js +35 -41
  325. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowEditing.js.map +1 -1
  326. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowSelect.js +77 -71
  327. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowSelect.js.map +1 -1
  328. package/dist/esm/packages/taco/src/components/Table/hooks/useRowCreation.js +56 -30
  329. package/dist/esm/packages/taco/src/components/Table/hooks/useRowCreation.js.map +1 -1
  330. package/dist/esm/packages/taco/src/components/Table/hooks/useTable.js +151 -142
  331. package/dist/esm/packages/taco/src/components/Table/hooks/useTable.js.map +1 -1
  332. package/dist/esm/packages/taco/src/components/Table/hooks/useTableKeyboardNavigation.js +22 -20
  333. package/dist/esm/packages/taco/src/components/Table/hooks/useTableKeyboardNavigation.js.map +1 -1
  334. package/dist/esm/packages/taco/src/components/Table/util/renderColumn.js +9 -12
  335. package/dist/esm/packages/taco/src/components/Table/util/renderColumn.js.map +1 -1
  336. package/dist/esm/packages/taco/src/components/Table/util/renderRow.js +41 -41
  337. package/dist/esm/packages/taco/src/components/Table/util/renderRow.js.map +1 -1
  338. package/dist/esm/packages/taco/src/components/Table/util/rowIndexPath.js +16 -14
  339. package/dist/esm/packages/taco/src/components/Table/util/rowIndexPath.js.map +1 -1
  340. package/dist/esm/packages/taco/src/components/Table/util/sortTypes.js +32 -26
  341. package/dist/esm/packages/taco/src/components/Table/util/sortTypes.js.map +1 -1
  342. package/dist/esm/packages/taco/src/components/Table/util.js +37 -30
  343. package/dist/esm/packages/taco/src/components/Table/util.js.map +1 -1
  344. package/dist/esm/packages/taco/src/components/Table3/Table3.js +23 -23
  345. package/dist/esm/packages/taco/src/components/Table3/Table3.js.map +1 -1
  346. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Cell.js +13 -14
  347. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Cell.js.map +1 -1
  348. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Editing/RowMoveIndicator.js +21 -23
  349. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Editing/RowMoveIndicator.js.map +1 -1
  350. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Editing/TextareaWithAutosizing.js +20 -17
  351. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Editing/TextareaWithAutosizing.js.map +1 -1
  352. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingControlCell.js +78 -76
  353. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingControlCell.js.map +1 -1
  354. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingDisplayCell.js +2 -2
  355. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingDisplayCell.js.map +1 -1
  356. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/util.js +19 -20
  357. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/util.js.map +1 -1
  358. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Internal/EditingActionsMenu.js +26 -25
  359. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Internal/EditingActionsMenu.js.map +1 -1
  360. package/dist/esm/packages/taco/src/components/Table3/components/Editing/Alert.js +49 -40
  361. package/dist/esm/packages/taco/src/components/Table3/components/Editing/Alert.js.map +1 -1
  362. package/dist/esm/packages/taco/src/components/Table3/components/Editing/DiscardChangesConfirmationDialog.js +7 -8
  363. package/dist/esm/packages/taco/src/components/Table3/components/Editing/DiscardChangesConfirmationDialog.js.map +1 -1
  364. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/CreateNewRow.js +18 -19
  365. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/CreateNewRow.js.map +1 -1
  366. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/SaveStatus.js +7 -10
  367. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/SaveStatus.js.map +1 -1
  368. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/TemporaryRow.js +38 -36
  369. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/TemporaryRow.js.map +1 -1
  370. package/dist/esm/packages/taco/src/components/Table3/components/Row/Row.js +15 -15
  371. package/dist/esm/packages/taco/src/components/Table3/components/Row/Row.js.map +1 -1
  372. package/dist/esm/packages/taco/src/components/Table3/components/Toolbar/Editing/Editing.js +8 -11
  373. package/dist/esm/packages/taco/src/components/Table3/components/Toolbar/Editing/Editing.js.map +1 -1
  374. package/dist/esm/packages/taco/src/components/Table3/features/useEditingState.js +172 -205
  375. package/dist/esm/packages/taco/src/components/Table3/features/useEditingState.js.map +1 -1
  376. package/dist/esm/packages/taco/src/components/Table3/features/useTableEditing.js +79 -49
  377. package/dist/esm/packages/taco/src/components/Table3/features/useTableEditing.js.map +1 -1
  378. package/dist/esm/packages/taco/src/components/Table3/listeners/useTableEditingListener.js +22 -23
  379. package/dist/esm/packages/taco/src/components/Table3/listeners/useTableEditingListener.js.map +1 -1
  380. package/dist/esm/packages/taco/src/components/Table3/useTable3.js +27 -22
  381. package/dist/esm/packages/taco/src/components/Table3/useTable3.js.map +1 -1
  382. package/dist/esm/packages/taco/src/components/Table3/util/editing.js +29 -35
  383. package/dist/esm/packages/taco/src/components/Table3/util/editing.js.map +1 -1
  384. package/dist/esm/packages/taco/src/components/Tabs/Tabs.js +34 -35
  385. package/dist/esm/packages/taco/src/components/Tabs/Tabs.js.map +1 -1
  386. package/dist/esm/packages/taco/src/components/Tag/Tag.js +18 -16
  387. package/dist/esm/packages/taco/src/components/Tag/Tag.js.map +1 -1
  388. package/dist/esm/packages/taco/src/components/Textarea/Textarea.js +8 -11
  389. package/dist/esm/packages/taco/src/components/Textarea/Textarea.js.map +1 -1
  390. package/dist/esm/packages/taco/src/components/Toast/Toast.js +19 -20
  391. package/dist/esm/packages/taco/src/components/Toast/Toast.js.map +1 -1
  392. package/dist/esm/packages/taco/src/components/Toast/Toaster.js +117 -96
  393. package/dist/esm/packages/taco/src/components/Toast/Toaster.js.map +1 -1
  394. package/dist/esm/packages/taco/src/components/Toast/util.js +6 -4
  395. package/dist/esm/packages/taco/src/components/Toast/util.js.map +1 -1
  396. package/dist/esm/packages/taco/src/components/Tooltip/Tooltip.js +10 -9
  397. package/dist/esm/packages/taco/src/components/Tooltip/Tooltip.js.map +1 -1
  398. package/dist/esm/packages/taco/src/components/Tour/Tour.js +49 -46
  399. package/dist/esm/packages/taco/src/components/Tour/Tour.js.map +1 -1
  400. package/dist/esm/packages/taco/src/components/Treeview/Treeview.js +33 -27
  401. package/dist/esm/packages/taco/src/components/Treeview/Treeview.js.map +1 -1
  402. package/dist/esm/packages/taco/src/components/Truncate/Truncate.js +15 -13
  403. package/dist/esm/packages/taco/src/components/Truncate/Truncate.js.map +1 -1
  404. package/dist/esm/packages/taco/src/components/VisuallyHidden/VisuallyHidden.js +1 -1
  405. package/dist/esm/packages/taco/src/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
  406. package/dist/esm/packages/taco/src/hooks/useBoundaryOverflowDetection.js +11 -6
  407. package/dist/esm/packages/taco/src/hooks/useBoundaryOverflowDetection.js.map +1 -1
  408. package/dist/esm/packages/taco/src/hooks/useBoundingClientRectListener.js +19 -13
  409. package/dist/esm/packages/taco/src/hooks/useBoundingClientRectListener.js.map +1 -1
  410. package/dist/esm/packages/taco/src/hooks/useGlobalKeyDown.js +5 -5
  411. package/dist/esm/packages/taco/src/hooks/useGlobalKeyDown.js.map +1 -1
  412. package/dist/esm/packages/taco/src/hooks/useId.js +4 -2
  413. package/dist/esm/packages/taco/src/hooks/useId.js.map +1 -1
  414. package/dist/esm/packages/taco/src/hooks/useIntersectionObserver.js +20 -18
  415. package/dist/esm/packages/taco/src/hooks/useIntersectionObserver.js.map +1 -1
  416. package/dist/esm/packages/taco/src/hooks/useIsFormControl.js +7 -5
  417. package/dist/esm/packages/taco/src/hooks/useIsFormControl.js.map +1 -1
  418. package/dist/esm/packages/taco/src/hooks/useIsHoverStatePaused.js +9 -5
  419. package/dist/esm/packages/taco/src/hooks/useIsHoverStatePaused.js.map +1 -1
  420. package/dist/esm/packages/taco/src/hooks/useIsLargeScreen.js +3 -1
  421. package/dist/esm/packages/taco/src/hooks/useIsLargeScreen.js.map +1 -1
  422. package/dist/esm/packages/taco/src/hooks/useLazyEffect.js +3 -3
  423. package/dist/esm/packages/taco/src/hooks/useLazyEffect.js.map +1 -1
  424. package/dist/esm/packages/taco/src/hooks/useLocalStorage.js +24 -22
  425. package/dist/esm/packages/taco/src/hooks/useLocalStorage.js.map +1 -1
  426. package/dist/esm/packages/taco/src/hooks/useMatchMedia.js +13 -6
  427. package/dist/esm/packages/taco/src/hooks/useMatchMedia.js.map +1 -1
  428. package/dist/esm/packages/taco/src/hooks/useMergedRef.js +3 -3
  429. package/dist/esm/packages/taco/src/hooks/useMergedRef.js.map +1 -1
  430. package/dist/esm/packages/taco/src/hooks/usePrevious.js +2 -2
  431. package/dist/esm/packages/taco/src/hooks/usePrevious.js.map +1 -1
  432. package/dist/esm/packages/taco/src/primitives/BubbleSelect.js +14 -14
  433. package/dist/esm/packages/taco/src/primitives/BubbleSelect.js.map +1 -1
  434. package/dist/esm/packages/taco/src/primitives/Button.js +16 -18
  435. package/dist/esm/packages/taco/src/primitives/Button.js.map +1 -1
  436. package/dist/esm/packages/taco/src/primitives/Collection/components/Root.js +50 -44
  437. package/dist/esm/packages/taco/src/primitives/Collection/components/Root.js.map +1 -1
  438. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Context.js +4 -2
  439. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Context.js.map +1 -1
  440. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Group.js +9 -5
  441. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Group.js.map +1 -1
  442. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Option.js +16 -18
  443. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Option.js.map +1 -1
  444. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Root.js +47 -40
  445. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Root.js.map +1 -1
  446. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Title.js +9 -10
  447. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Title.js.map +1 -1
  448. package/dist/esm/packages/taco/src/primitives/Sortable/components/Container.js +22 -20
  449. package/dist/esm/packages/taco/src/primitives/Sortable/components/Container.js.map +1 -1
  450. package/dist/esm/packages/taco/src/primitives/Sortable/components/Item.js +24 -27
  451. package/dist/esm/packages/taco/src/primitives/Sortable/components/Item.js.map +1 -1
  452. package/dist/esm/packages/taco/src/primitives/Sortable/components/List.js +11 -10
  453. package/dist/esm/packages/taco/src/primitives/Sortable/components/List.js.map +1 -1
  454. package/dist/esm/packages/taco/src/primitives/Table/Core/Table.js +22 -19
  455. package/dist/esm/packages/taco/src/primitives/Table/Core/Table.js.map +1 -1
  456. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/Body.js +25 -22
  457. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/Body.js.map +1 -1
  458. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/EmptyStateBody.js +15 -8
  459. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/EmptyStateBody.js.map +1 -1
  460. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/util.js +30 -14
  461. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/util.js.map +1 -1
  462. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/BuiltIns/DisplayCell.js +18 -19
  463. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/BuiltIns/DisplayCell.js.map +1 -1
  464. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/BuiltIns/GroupedCell.js +34 -34
  465. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/BuiltIns/GroupedCell.js.map +1 -1
  466. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/Cell.js +10 -12
  467. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/Cell.js.map +1 -1
  468. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/util.js +19 -18
  469. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/util.js.map +1 -1
  470. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Actions.js +42 -40
  471. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Actions.js.map +1 -1
  472. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Drag.js +5 -7
  473. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Drag.js.map +1 -1
  474. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Expansion.js +19 -24
  475. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Expansion.js.map +1 -1
  476. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Selection.js +56 -55
  477. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Selection.js.map +1 -1
  478. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Footer.js +27 -23
  479. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Footer.js.map +1 -1
  480. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Summary.js +13 -16
  481. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Summary.js.map +1 -1
  482. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/Header.js +86 -87
  483. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/Header.js.map +1 -1
  484. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Goto.js +14 -11
  485. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Goto.js.map +1 -1
  486. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Menu.js +85 -58
  487. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Menu.js.map +1 -1
  488. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Resizer.js +18 -20
  489. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Resizer.js.map +1 -1
  490. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/SortIndicator.js +3 -3
  491. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/SortIndicator.js.map +1 -1
  492. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/util.js +11 -6
  493. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/util.js.map +1 -1
  494. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/DisplayRow.js +58 -49
  495. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/DisplayRow.js.map +1 -1
  496. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/SkeletonRow.js +28 -32
  497. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/SkeletonRow.js.map +1 -1
  498. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/Row.js +52 -47
  499. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/Row.js.map +1 -1
  500. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/RowContext.js +1 -1
  501. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/RowContext.js.map +1 -1
  502. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/Toolbar.js +11 -11
  503. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/Toolbar.js.map +1 -1
  504. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/FilterContext.js +6 -0
  505. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/FilterContext.js.map +1 -0
  506. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/Filters.js +23 -22
  507. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/Filters.js.map +1 -1
  508. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/ManageFiltersPopover.js +59 -42
  509. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/ManageFiltersPopover.js.map +1 -1
  510. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/Filter.js +39 -39
  511. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/Filter.js.map +1 -1
  512. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterColumn.js +21 -16
  513. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterColumn.js.map +1 -1
  514. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterComparator.js +16 -15
  515. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterComparator.js.map +1 -1
  516. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterValue.js +51 -40
  517. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterValue.js.map +1 -1
  518. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/util.js +13 -9
  519. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/util.js.map +1 -1
  520. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/Print.js +57 -51
  521. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/Print.js.map +1 -1
  522. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/PrintDialog.js +71 -67
  523. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/PrintDialog.js.map +1 -1
  524. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Search/Search.js +40 -37
  525. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Search/Search.js.map +1 -1
  526. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Settings/HideOrOrderPopover.js +64 -44
  527. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Settings/HideOrOrderPopover.js.map +1 -1
  528. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Settings/Settings.js +62 -51
  529. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Settings/Settings.js.map +1 -1
  530. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableGlobalShortcuts.js +6 -6
  531. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableGlobalShortcuts.js.map +1 -1
  532. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableRef.js +13 -5
  533. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableRef.js.map +1 -1
  534. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableRenderer.js +93 -77
  535. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableRenderer.js.map +1 -1
  536. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyle.js +15 -15
  537. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyle.js.map +1 -1
  538. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyleColumnFreezing.js +31 -41
  539. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyleColumnFreezing.js.map +1 -1
  540. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyleGrid.js +31 -30
  541. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyleGrid.js.map +1 -1
  542. package/dist/esm/packages/taco/src/primitives/Table/Core/listeners/useTableRowActiveListener.js +3 -3
  543. package/dist/esm/packages/taco/src/primitives/Table/Core/listeners/useTableRowActiveListener.js.map +1 -1
  544. package/dist/esm/packages/taco/src/primitives/Table/Core/useTable.js +14 -15
  545. package/dist/esm/packages/taco/src/primitives/Table/Core/useTable.js.map +1 -1
  546. package/dist/esm/packages/taco/src/primitives/Table/Core/util/rows.js +2 -2
  547. package/dist/esm/packages/taco/src/primitives/Table/Core/util/rows.js.map +1 -1
  548. package/dist/esm/packages/taco/src/primitives/Table/types.js.map +1 -1
  549. package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader.js +42 -36
  550. package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader.js.map +1 -1
  551. package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader2.js +137 -155
  552. package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader2.js.map +1 -1
  553. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableColumnFreezing.js +11 -6
  554. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableColumnFreezing.js.map +1 -1
  555. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableColumnOrdering.js +5 -2
  556. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableColumnOrdering.js.map +1 -1
  557. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableFontSize.js +15 -5
  558. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableFontSize.js.map +1 -1
  559. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableFooter.js +5 -2
  560. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableFooter.js.map +1 -1
  561. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTablePrinting.js +26 -16
  562. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTablePrinting.js.map +1 -1
  563. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowActions.js +9 -3
  564. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowActions.js.map +1 -1
  565. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowActive.js +42 -23
  566. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowActive.js.map +1 -1
  567. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowClick.js +9 -6
  568. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowClick.js.map +1 -1
  569. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowDrag.js +9 -4
  570. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowDrag.js.map +1 -1
  571. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowDrop.js +5 -2
  572. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowDrop.js.map +1 -1
  573. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowExpansion.js +9 -3
  574. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowExpansion.js.map +1 -1
  575. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowGoto.js +5 -2
  576. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowGoto.js.map +1 -1
  577. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowGroups.js +1 -1
  578. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowGroups.js.map +1 -1
  579. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowHeight.js +15 -5
  580. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowHeight.js.map +1 -1
  581. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowSelection.js +14 -9
  582. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowSelection.js.map +1 -1
  583. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableSearch.js +25 -13
  584. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableSearch.js.map +1 -1
  585. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableServerLoading.js +43 -22
  586. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableServerLoading.js.map +1 -1
  587. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableSettings.js +34 -24
  588. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableSettings.js.map +1 -1
  589. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableDataListener.js +4 -4
  590. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableDataListener.js.map +1 -1
  591. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableFilterListener.js +3 -3
  592. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableFilterListener.js.map +1 -1
  593. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableFontSizeListener.js +21 -16
  594. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableFontSizeListener.js.map +1 -1
  595. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowHeightListener.js +2 -2
  596. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowHeightListener.js.map +1 -1
  597. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowSelectionListener.js +6 -4
  598. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowSelectionListener.js.map +1 -1
  599. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSearchListener.js +8 -8
  600. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSearchListener.js.map +1 -1
  601. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableServerLoadingListener.js +6 -6
  602. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableServerLoadingListener.js.map +1 -1
  603. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSettingsListener.js +8 -6
  604. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSettingsListener.js.map +1 -1
  605. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableShortcutsListener.js +17 -17
  606. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableShortcutsListener.js.map +1 -1
  607. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSortingListener.js +2 -2
  608. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSortingListener.js.map +1 -1
  609. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/useTableManager.js +55 -55
  610. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/useTableManager.js.map +1 -1
  611. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/columns.js +59 -30
  612. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/columns.js.map +1 -1
  613. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/dataTypes.js +10 -6
  614. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/dataTypes.js.map +1 -1
  615. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/filtering.js +33 -19
  616. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/filtering.js.map +1 -1
  617. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/presets.js +11 -11
  618. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/presets.js.map +1 -1
  619. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/search.js +30 -20
  620. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/search.js.map +1 -1
  621. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/settings.js +6 -7
  622. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/settings.js.map +1 -1
  623. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/setup.js +146 -109
  624. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/setup.js.map +1 -1
  625. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/sorting.js +3 -1
  626. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/sorting.js.map +1 -1
  627. package/dist/esm/packages/taco/src/types.js +1 -1
  628. package/dist/esm/packages/taco/src/types.js.map +1 -1
  629. package/dist/esm/packages/taco/src/utils/aria.js +2 -2
  630. package/dist/esm/packages/taco/src/utils/aria.js.map +1 -1
  631. package/dist/esm/packages/taco/src/utils/date.js +47 -23
  632. package/dist/esm/packages/taco/src/utils/date.js.map +1 -1
  633. package/dist/esm/packages/taco/src/utils/debounce.js +10 -4
  634. package/dist/esm/packages/taco/src/utils/debounce.js.map +1 -1
  635. package/dist/esm/packages/taco/src/utils/device.js +4 -2
  636. package/dist/esm/packages/taco/src/utils/device.js.map +1 -1
  637. package/dist/esm/packages/taco/src/utils/dom.js +38 -21
  638. package/dist/esm/packages/taco/src/utils/dom.js.map +1 -1
  639. package/dist/esm/packages/taco/src/utils/hooks/useDraggable.js +40 -38
  640. package/dist/esm/packages/taco/src/utils/hooks/useDraggable.js.map +1 -1
  641. package/dist/esm/packages/taco/src/utils/hooks/useDropTarget.js +9 -7
  642. package/dist/esm/packages/taco/src/utils/hooks/useDropTarget.js.map +1 -1
  643. package/dist/esm/packages/taco/src/utils/hooks/useListKeyboardNavigation.js +20 -9
  644. package/dist/esm/packages/taco/src/utils/hooks/useListKeyboardNavigation.js.map +1 -1
  645. package/dist/esm/packages/taco/src/utils/hooks/useListScrollTo.js +9 -9
  646. package/dist/esm/packages/taco/src/utils/hooks/useListScrollTo.js.map +1 -1
  647. package/dist/esm/packages/taco/src/utils/hooks/useOnClickOutside.js +8 -6
  648. package/dist/esm/packages/taco/src/utils/hooks/useOnClickOutside.js.map +1 -1
  649. package/dist/esm/packages/taco/src/utils/hooks/useTimer.js +16 -11
  650. package/dist/esm/packages/taco/src/utils/hooks/useTimer.js.map +1 -1
  651. package/dist/esm/packages/taco/src/utils/hooks/useTruncated.js +11 -6
  652. package/dist/esm/packages/taco/src/utils/hooks/useTruncated.js.map +1 -1
  653. package/dist/esm/packages/taco/src/utils/input.js +10 -7
  654. package/dist/esm/packages/taco/src/utils/input.js.map +1 -1
  655. package/dist/esm/packages/taco/src/utils/keyboard.js +12 -6
  656. package/dist/esm/packages/taco/src/utils/keyboard.js.map +1 -1
  657. package/dist/esm/packages/taco/src/utils/mergeRefs.js +2 -2
  658. package/dist/esm/packages/taco/src/utils/mergeRefs.js.map +1 -1
  659. package/dist/esm/packages/taco/src/utils/tailwind.js +5 -5
  660. package/dist/esm/packages/taco/src/utils/tailwind.js.map +1 -1
  661. package/dist/esm/packages/taco/tailwind.colors.js +1 -1
  662. package/dist/esm/packages/taco/tailwind.colors.js.map +1 -1
  663. package/dist/hooks/useGlobalKeyDown.d.ts +1 -1
  664. package/dist/index.css +21 -4
  665. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/FilterContext.d.ts +3 -0
  666. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/Filter.d.ts +0 -1
  667. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterColumn.d.ts +0 -3
  668. package/dist/primitives/Table/types.d.ts +2 -2
  669. package/dist/primitives/Table/useTableManager/features/useTableServerLoading.d.ts +2 -1
  670. package/dist/primitives/Table/useTableManager/util/dataTypes.d.ts +1 -1
  671. package/dist/taco.cjs.development.js +8188 -7070
  672. package/dist/taco.cjs.development.js.map +1 -1
  673. package/dist/taco.cjs.production.min.js +1 -1
  674. package/dist/taco.cjs.production.min.js.map +1 -1
  675. package/dist/utils/keyboard.d.ts +1 -1
  676. package/package.json +2 -2
@@ -1,127 +1,134 @@
1
1
  import React__default from 'react';
2
- import { _finallyRethrows, _catch } from '../../../../../node_modules/babel-plugin-transform-async-to-promises/helpers.mjs.js';
2
+ import { extends as _extends } from '../../../../../_virtual/_rollupPluginBabelHelpers.js';
3
+ import { v4 } from 'uuid';
4
+ import { _catch, _finallyRethrows } from '../../../../../node_modules/babel-plugin-transform-async-to-promises/helpers.mjs.js';
3
5
  import { DEFAULT_PAGE_SIZE } from './useTableDataLoader.js';
4
6
 
5
- const DATASET_SIZE_MULTIPLIER = 15;
6
- function useTableDataLoader2(fetchPage, fetchAll, options = {
7
- pageSize: DEFAULT_PAGE_SIZE
8
- }) {
9
- const loadPage = function (pageIndex, sorting, filters, search, hiddenColumns, reset = false) {
7
+ var DATASET_SIZE_MULTIPLIER = 15;
8
+ function useTableDataLoader2(fetchPage, fetchAll, options) {
9
+ var loadPage = function loadPage(pageIndex, sorting, filters, search, hiddenColumns, reset) {
10
+ if (reset === void 0) {
11
+ reset = false;
12
+ }
10
13
  try {
11
- if (_hasFetchedAll.current) {
12
- return Promise.resolve();
13
- }
14
- // if page is already loading, abort, otherwise mark it as loading
15
- if (_pendingPageRequests.current[pageIndex]) {
14
+ // if a request is already pending for this page (and it's not a reset), skip it
15
+ if (_pendingPageRequests.current[pageIndex] && !reset) {
16
16
  return Promise.resolve();
17
- } else {
18
- _pendingPageRequests.current[pageIndex] = true;
19
17
  }
18
+ var hasChangedData = JSON.stringify(sorting) !== JSON.stringify(_lastUsedSorting.current) || JSON.stringify(filters) !== JSON.stringify(_lastUsedFilters.current) || search !== _lastUsedSearch.current;
20
19
  // if the page is already loaded and has actual rows, abort
21
- if (data.pages.includes(pageIndex)) {
22
- const position = data.pages.indexOf(pageIndex);
23
- if (data.rows[position * pageSize] !== undefined) {
24
- return Promise.resolve();
25
- }
20
+ if (data.cache[pageIndex] && data.cache[pageIndex][0] && !hasChangedData && !reset) {
21
+ return Promise.resolve();
26
22
  }
27
- // set the sorting so we can track if it changed between loads
28
- _lastUsedSorting.current = sorting;
29
- // set the filters so we can track if it changed between loads
30
- _lastUsedFilters.current = filters;
31
- const direction = getDirection2(pageIndex, _lastFetchedPage.current);
32
- const _temp2 = _finallyRethrows(function () {
33
- return _catch(function () {
34
- return Promise.resolve(fetchPage(pageIndex, pageSize, sorting, filters, search, hiddenColumns)).then(function (response) {
35
- length.current = response.length;
36
- // update state, here we do some "magic" to support "load in place"
37
- setData(currentData => {
38
- const nextPages = getPages(pageIndex, _lastFetchedPage.current, reset ? [] : currentData.pages, direction);
39
- let nextRows = currentData.rows;
40
- if (reset || !direction) {
41
- const index = nextPages.indexOf(pageIndex);
42
- const startIndex = (index > -1 ? index : 0) * pageSize;
43
- if (reset) {
44
- nextRows = [].concat(response.data);
45
- } else if (startIndex > 0 || pageIndex === 0) {
46
- nextRows = Array(startIndex).fill(undefined).concat(response.data);
47
- } else if (startIndex === 0) {
48
- nextRows = response.data.concat(currentData.rows.slice(pageSize));
49
- }
50
- } else if (direction === 'forward') {
51
- // if the new data will exceed the dataset size, then chop off the start or end
52
- // this keeps the stored dataset to our preferred size
53
- if (currentData.rows.length >= DATASET_SIZE) {
54
- nextRows = currentData.rows.slice(DEFAULT_PAGE_SIZE).concat(response.data);
55
- } else {
56
- nextRows = currentData.rows.concat(response.data);
57
- }
58
- } else if (direction === 'backward') {
59
- if (currentData.rows.length >= DATASET_SIZE) {
60
- nextRows = response.data.concat(currentData.rows.slice(0, -1 * pageSize));
61
- } else {
62
- nextRows = currentData.rows.concat(response.data);
63
- }
64
- }
65
- return {
66
- rows: nextRows,
67
- pages: nextPages
68
- };
69
- });
23
+ // create an id to track the update
24
+ var requestId = v4();
25
+ // set the page as loading, so that subsequent requests don't retrigger it
26
+ _pendingPageRequests.current[pageIndex] = true;
27
+ var _temp2 = _catch(function () {
28
+ _lastRequestId.current = requestId;
29
+ return Promise.resolve(fetchPage(pageIndex, pageSize, sorting, filters, search, hiddenColumns)).then(function (response) {
30
+ length.current = response.length;
31
+ // update state, here we do some "magic" to support "load in place"
32
+ setData(function (currentData) {
33
+ // if this request wasn't the last one, just return the current state to prevent weird updates
34
+ if (_lastRequestId.current !== requestId) {
35
+ return currentData;
36
+ }
37
+ var direction = getDirection(pageIndex, currentData.pages);
38
+ var nextPages = getPages(pageIndex, currentData.lastFetchedPage, reset ? [] : currentData.pages, direction);
39
+ // set values so we can track if they changed between loads
40
+ _lastUsedSorting.current = sorting;
41
+ _lastUsedFilters.current = filters;
42
+ _lastUsedSearch.current = search;
43
+ _lastUsedHiddenColumns.current = hiddenColumns;
44
+ // cache data as an object to prevent any duplicates for pages
45
+ var nextCache;
46
+ if (reset || hasChangedData || !direction) {
47
+ nextCache = nextPages.reduce(function (acc, p) {
48
+ var _extends2;
49
+ return _extends({}, acc, (_extends2 = {}, _extends2[p] = Array(pageSize).fill(undefined), _extends2));
50
+ }, {});
51
+ } else {
52
+ nextCache = _extends({}, currentData.cache);
53
+ }
54
+ nextCache[pageIndex] = response.data;
55
+ // cleanup "unloaded" pages
56
+ if (direction === 'forward' && currentData.rows.length >= DATASET_SIZE) {
57
+ delete nextCache[currentData.pages[0]];
58
+ } else if (direction === 'backward' && currentData.rows.length >= DATASET_SIZE) {
59
+ delete nextCache[currentData.pages[currentData.pages.length - 1]];
60
+ }
61
+ // remap rows from the cached data - do it here and not in render to save some performance
62
+ var rows = Object.values(nextCache).reduce(function (acc, p) {
63
+ return acc.concat(p);
64
+ }, []);
65
+ return {
66
+ cache: nextCache,
67
+ pages: nextPages,
68
+ rows: rows,
69
+ lastFetchedPage: pageIndex
70
+ };
70
71
  });
71
- }, function () {});
72
- }, function (_wasThrown2, _result2) {
73
- _hasFetchedAll.current = false;
74
- // reset pending requests
75
- delete _pendingPageRequests.current[pageIndex];
76
- // update the last loaded page
77
- _lastFetchedPage.current = {
78
- index: pageIndex,
79
- direction
80
- };
81
- if (_wasThrown2) throw _result2;
82
- return _result2;
83
- });
72
+ // reset pending requests
73
+ delete _pendingPageRequests.current[pageIndex];
74
+ });
75
+ }, function () {});
84
76
  return Promise.resolve(_temp2 && _temp2.then ? _temp2.then(function () {}) : void 0);
85
77
  } catch (e) {
86
78
  return Promise.reject(e);
87
79
  }
88
80
  };
89
- const {
90
- pageSize
91
- } = options;
92
- const DATASET_SIZE = DATASET_SIZE_MULTIPLIER * pageSize;
81
+ if (options === void 0) {
82
+ options = {
83
+ pageSize: DEFAULT_PAGE_SIZE
84
+ };
85
+ }
86
+ var _options = options,
87
+ pageSize = _options.pageSize;
88
+ var DATASET_SIZE = DATASET_SIZE_MULTIPLIER * pageSize;
93
89
  // track the data length, we don't know it until the first request
94
- const length = React__default.useRef(0);
90
+ var length = React__default.useRef(0);
95
91
  // data will be filled after the first request
96
- const [data, setData] = React__default.useState({
97
- rows: [],
98
- pages: []
99
- });
92
+ var _React$useState = React__default.useState({
93
+ rows: [],
94
+ pages: [],
95
+ cache: {},
96
+ lastFetchedPage: undefined
97
+ }),
98
+ data = _React$useState[0],
99
+ setData = _React$useState[1];
100
100
  // track which pages have been loaded to dedupe requests
101
- const _pendingPageRequests = React__default.useRef({});
102
- const _lastUsedSorting = React__default.useRef([]);
103
- const _lastUsedFilters = React__default.useRef([]);
104
- const _lastUsedSearch = React__default.useRef();
105
- const _lastUsedHiddenColumns = React__default.useRef([]);
106
- const _lastFetchedPage = React__default.useRef({
107
- index: undefined,
108
- direction: undefined
109
- });
110
- const _hasFetchedAll = React__default.useRef(false);
111
- const loadAll = function (sorting, filters, search, hiddenColumns) {
101
+ var _pendingPageRequests = React__default.useRef({});
102
+ // it's possible to spam updates, e.g. sort, so we don't set state if the last request wasn't the current oen
103
+ var _lastRequestId = React__default.useRef();
104
+ // store last used properties
105
+ var _lastUsedSorting = React__default.useRef([]);
106
+ var _lastUsedFilters = React__default.useRef([]);
107
+ var _lastUsedSearch = React__default.useRef();
108
+ var _lastUsedHiddenColumns = React__default.useRef([]);
109
+ var loadAll = function loadAll(sorting, filters, search, hiddenColumns) {
112
110
  try {
113
- _hasFetchedAll.current = true;
114
- // set the sorting so we can track if it changed between loads
111
+ // set values so we can track if they changed between loads
115
112
  _lastUsedSorting.current = sorting;
116
- // set the filters so we can track if it changed between loads
117
113
  _lastUsedFilters.current = filters;
118
- const _temp = _finallyRethrows(function () {
114
+ _lastUsedSearch.current = search;
115
+ _lastUsedHiddenColumns.current = hiddenColumns;
116
+ var _temp = _finallyRethrows(function () {
119
117
  return _catch(function () {
120
118
  return Promise.resolve(fetchAll(sorting, filters, search, hiddenColumns)).then(function (response) {
121
119
  length.current = response.length;
120
+ var pages = [];
121
+ var cache = {};
122
+ Array.from(Array(response.length / pageSize).keys()).forEach(function (index) {
123
+ pages.push(index);
124
+ var startIndex = index * pageSize;
125
+ cache[index] = response.data.slice(startIndex, startIndex + pageSize);
126
+ });
122
127
  setData({
128
+ cache: cache,
129
+ pages: pages,
123
130
  rows: response.data,
124
- pages: Array.from(Array(response.length / pageSize).keys())
131
+ lastFetchedPage: undefined
125
132
  });
126
133
  });
127
134
  }, function () {});
@@ -136,50 +143,39 @@ function useTableDataLoader2(fetchPage, fetchAll, options = {
136
143
  return Promise.reject(e);
137
144
  }
138
145
  };
139
- const invalidate = function () {
146
+ var invalidate = function invalidate() {
140
147
  try {
141
148
  // reset stuff
142
149
  _pendingPageRequests.current = {};
143
- _hasFetchedAll.current = false;
144
- // load the last page that we scrolled to
145
- return loadPage(getCurrentPage(data.pages, _lastFetchedPage.current), _lastUsedSorting.current, _lastUsedFilters.current, _lastUsedSearch.current, _lastUsedHiddenColumns.current, true);
150
+ // load the current page again
151
+ return loadPage(getCurrentPage(data.pages), _lastUsedSorting.current, _lastUsedFilters.current, _lastUsedSearch.current, _lastUsedHiddenColumns.current, true);
146
152
  } catch (e) {
147
153
  return Promise.reject(e);
148
154
  }
149
155
  };
150
- // search works client side - it fetches all then works client side - so these handlers are a little "weird"
151
- // if a search is currently "active", we need to re load all because
152
- const handleSort = function (sorting) {
156
+ var handleSort = function handleSort(sorting) {
153
157
  try {
154
- _lastUsedSorting.current = sorting;
155
- // reset stuff
158
+ // reset before loading the current page
156
159
  _pendingPageRequests.current = {};
157
- _hasFetchedAll.current = false;
158
- return loadPage(getCurrentPage(data.pages, _lastFetchedPage.current), sorting, _lastUsedFilters.current, _lastUsedSearch.current, _lastUsedHiddenColumns.current, true);
160
+ return loadPage(getCurrentPage(data.pages), sorting, _lastUsedFilters.current, _lastUsedSearch.current, _lastUsedHiddenColumns.current, true);
159
161
  } catch (e) {
160
162
  return Promise.reject(e);
161
163
  }
162
164
  };
163
- const handleFilter = function (filters, hiddenColumns) {
165
+ var handleFilter = function handleFilter(filters, hiddenColumns) {
164
166
  try {
165
- _lastUsedFilters.current = filters;
166
- _lastUsedHiddenColumns.current = hiddenColumns;
167
- // reset stuff
167
+ // reset before loading the current page
168
168
  _pendingPageRequests.current = {};
169
- _hasFetchedAll.current = false;
170
- return loadPage(getCurrentPage(data.pages, _lastFetchedPage.current), _lastUsedSorting.current, filters, _lastUsedSearch.current, hiddenColumns, true);
169
+ return loadPage(0, _lastUsedSorting.current, filters, _lastUsedSearch.current, hiddenColumns, true);
171
170
  } catch (e) {
172
171
  return Promise.reject(e);
173
172
  }
174
173
  };
175
- const handleSearch = function (search, hiddenColumns) {
174
+ var handleSearch = function handleSearch(search, hiddenColumns) {
176
175
  try {
177
- _lastUsedSearch.current = search;
178
- _lastUsedHiddenColumns.current = hiddenColumns;
179
- // reset stuff
176
+ // reset before loading the current page
180
177
  _pendingPageRequests.current = {};
181
- _hasFetchedAll.current = false;
182
- return loadPage(getCurrentPage(data.pages, _lastFetchedPage.current), _lastUsedSorting.current, _lastUsedFilters.current, search, hiddenColumns, true);
178
+ return loadPage(0, _lastUsedSorting.current, _lastUsedFilters.current, search, hiddenColumns, true);
183
179
  } catch (e) {
184
180
  return Promise.reject(e);
185
181
  }
@@ -188,61 +184,47 @@ function useTableDataLoader2(fetchPage, fetchAll, options = {
188
184
  data: data.rows,
189
185
  pages: data.pages,
190
186
  length: length.current,
191
- loadAll,
192
- loadPage,
187
+ loadAll: loadAll,
188
+ loadPage: loadPage,
193
189
  onChangeFilter: handleFilter,
194
190
  onChangeSearch: handleSearch,
195
191
  onChangeSort: handleSort,
196
- pageSize,
192
+ pageSize: pageSize,
197
193
  _experimentalDataLoader2: true
198
194
  }, invalidate];
199
195
  }
200
- function getCurrentPage(currentPages, lastFetchedPage) {
196
+ function getCurrentPage(currentPages) {
201
197
  if (currentPages.length <= 2) {
202
- var _currentPages$;
203
- return (_currentPages$ = currentPages[0]) !== null && _currentPages$ !== void 0 ? _currentPages$ : 0;
204
- }
205
- const middle = Math.floor(DATASET_SIZE_MULTIPLIER / 2);
206
- if (lastFetchedPage.index) {
207
- if (!lastFetchedPage.direction) {
208
- return lastFetchedPage.index;
209
- }
210
- return lastFetchedPage.direction === 'forward' ? lastFetchedPage.index + middle : lastFetchedPage.index - middle;
198
+ return currentPages[0];
211
199
  }
212
- return 0;
200
+ // for even page lengths we can't know which is the current visible page - it could even be both
201
+ // so we load one of them and rely on the "load next/previous page" functionality in row
202
+ var middle = Math.floor(currentPages.length / 2);
203
+ return currentPages[middle];
213
204
  }
214
- function getDirection2(pageIndex, lastUsedPage) {
215
- if (lastUsedPage.index === undefined) {
216
- return undefined;
217
- }
218
- if (pageIndex > lastUsedPage.index) {
219
- if (lastUsedPage.index + 1 === pageIndex || lastUsedPage.index + DATASET_SIZE_MULTIPLIER === pageIndex) {
205
+ function getDirection(pageIndex, currentPages) {
206
+ if (currentPages.length) {
207
+ if (pageIndex === currentPages[currentPages.length - 1] + 1) {
220
208
  return 'forward';
221
- }
222
- } else if (pageIndex < lastUsedPage.index) {
223
- if (lastUsedPage.index - 1 === pageIndex || lastUsedPage.index - DATASET_SIZE_MULTIPLIER === pageIndex) {
209
+ } else if (pageIndex === currentPages[0] - 1 || currentPages.length === 2 && currentPages[0] !== 0 && pageIndex === currentPages[0]) {
224
210
  return 'backward';
225
211
  }
226
212
  }
227
213
  return undefined;
228
214
  }
229
- function getPages(pageIndex, lastUsedPage, currentPages, direction) {
230
- if (currentPages.length && (pageIndex === lastUsedPage.index || currentPages.includes(pageIndex))) {
215
+ function getPages(pageIndex, lastUsedPageIndex, currentPages, direction) {
216
+ if (currentPages.length && (pageIndex === lastUsedPageIndex || currentPages.includes(pageIndex))) {
231
217
  return currentPages;
232
218
  }
233
219
  if (direction === 'forward') {
234
- const nextPages = currentPages.length === DATASET_SIZE_MULTIPLIER ? currentPages.slice(1) : currentPages;
220
+ var nextPages = currentPages.length === DATASET_SIZE_MULTIPLIER ? currentPages.slice(1) : currentPages;
235
221
  return nextPages.concat(pageIndex);
236
222
  }
237
223
  if (direction === 'backward') {
238
- const nextPages = currentPages.length === DATASET_SIZE_MULTIPLIER ? currentPages.slice(0, -1) : currentPages;
239
- return [pageIndex].concat(nextPages);
240
- }
241
- if (pageIndex === 0) {
242
- return [0];
224
+ var _nextPages = currentPages.length === DATASET_SIZE_MULTIPLIER ? currentPages.slice(0, -1) : currentPages;
225
+ return [pageIndex].concat(_nextPages);
243
226
  }
244
- // don't go forward, the current page will trigger load of the next page
245
- return [pageIndex - 1, pageIndex];
227
+ return [pageIndex];
246
228
  }
247
229
 
248
230
  export { useTableDataLoader2 };
@@ -1 +1 @@
1
- {"version":3,"file":"useTableDataLoader2.js","sources":["../../../../../../../src/primitives/Table/useTableDataLoader2.ts"],"sourcesContent":["import React from 'react';\nimport {\n TableColumnFilter,\n TableColumnSort,\n TableFilterHandler,\n TableServerLoadPageHandler,\n TableServerLoadAllHandler,\n TableSortHandler,\n TableSearchHandler,\n} from './types';\nimport { DEFAULT_PAGE_SIZE, useTableDataLoaderOptions } from './useTableDataLoader';\n\nconst DATASET_SIZE_MULTIPLIER = 15;\n\nexport type useTableDataPageFetcher2<TType = unknown> = (\n pageIndex: number,\n pageSize: number,\n sorting: TableColumnSort[],\n filters: TableColumnFilter[],\n search: string | undefined,\n hiddenColumns: string[]\n) => Promise<{ data: TType[]; length: number }>;\n\nexport type useTableDataAllFetcher2<TType = unknown> = (\n sorting: TableColumnSort[],\n filters: TableColumnFilter[],\n search: string | undefined,\n hiddenColumns: string[]\n) => Promise<{ data: TType[]; length: number }>;\n\nexport type useTableDataLoaderValues2<TType = unknown> = {\n data: TType[];\n length: number | undefined;\n loadAll: TableServerLoadAllHandler;\n loadPage: TableServerLoadPageHandler;\n onChangeFilter: TableFilterHandler;\n onChangeSearch: TableSearchHandler;\n onChangeSort: TableSortHandler;\n pageSize: number;\n pages: number[];\n _experimentalDataLoader2: boolean;\n};\n\ntype Data<TType = unknown> = {\n rows: TType[];\n pages: number[];\n};\ntype Direction = 'forward' | 'backward' | undefined;\ntype LastFetchedPage = {\n index: number | undefined;\n direction: Direction;\n};\n\nexport function useTableDataLoader2<TType = unknown>(\n fetchPage: useTableDataPageFetcher2<TType>,\n fetchAll: useTableDataAllFetcher2<TType>,\n options: useTableDataLoaderOptions = { pageSize: DEFAULT_PAGE_SIZE }\n): [useTableDataLoaderValues2<TType>, () => void] {\n const { pageSize } = options;\n const DATASET_SIZE = DATASET_SIZE_MULTIPLIER * pageSize;\n\n // track the data length, we don't know it until the first request\n const length = React.useRef<number>(0);\n // data will be filled after the first request\n const [data, setData] = React.useState<Data<TType>>({ rows: [], pages: [] });\n // track which pages have been loaded to dedupe requests\n const _pendingPageRequests = React.useRef({});\n const _lastUsedSorting = React.useRef<TableColumnSort[]>([]);\n const _lastUsedFilters = React.useRef<TableColumnFilter[]>([]);\n const _lastUsedSearch = React.useRef<string | undefined>();\n const _lastUsedHiddenColumns = React.useRef<string[]>([]);\n const _lastFetchedPage = React.useRef<LastFetchedPage>({\n index: undefined,\n direction: undefined,\n });\n const _hasFetchedAll = React.useRef<boolean>(false);\n\n async function loadPage(\n pageIndex: number,\n sorting: TableColumnSort[],\n filters: TableColumnFilter[],\n search: string | undefined,\n hiddenColumns: string[],\n reset = false\n ) {\n if (_hasFetchedAll.current) {\n return;\n }\n\n // if page is already loading, abort, otherwise mark it as loading\n if (_pendingPageRequests.current[pageIndex]) {\n return;\n } else {\n _pendingPageRequests.current[pageIndex] = true;\n }\n\n // if the page is already loaded and has actual rows, abort\n if (data.pages.includes(pageIndex)) {\n const position = data.pages.indexOf(pageIndex);\n\n if (data.rows[position * pageSize] !== undefined) {\n return;\n }\n }\n\n // set the sorting so we can track if it changed between loads\n _lastUsedSorting.current = sorting;\n // set the filters so we can track if it changed between loads\n _lastUsedFilters.current = filters;\n\n const direction = getDirection2(pageIndex, _lastFetchedPage.current);\n\n try {\n const response = await fetchPage(pageIndex, pageSize, sorting, filters, search, hiddenColumns);\n length.current = response.length;\n\n // update state, here we do some \"magic\" to support \"load in place\"\n setData(currentData => {\n const nextPages = getPages(pageIndex, _lastFetchedPage.current, reset ? [] : currentData.pages, direction);\n let nextRows = currentData.rows;\n\n if (reset || !direction) {\n const index = nextPages.indexOf(pageIndex);\n const startIndex = (index > -1 ? index : 0) * pageSize;\n\n if (reset) {\n nextRows = ([] as TType[]).concat(response.data);\n } else if (startIndex > 0 || pageIndex === 0) {\n nextRows = Array(startIndex).fill(undefined).concat(response.data);\n } else if (startIndex === 0) {\n nextRows = response.data.concat(currentData.rows.slice(pageSize));\n }\n } else if (direction === 'forward') {\n // if the new data will exceed the dataset size, then chop off the start or end\n // this keeps the stored dataset to our preferred size\n if (currentData.rows.length >= DATASET_SIZE) {\n nextRows = currentData.rows.slice(DEFAULT_PAGE_SIZE).concat(response.data);\n } else {\n nextRows = currentData.rows.concat(response.data);\n }\n } else if (direction === 'backward') {\n if (currentData.rows.length >= DATASET_SIZE) {\n nextRows = response.data.concat(currentData.rows.slice(0, -1 * pageSize));\n } else {\n nextRows = currentData.rows.concat(response.data);\n }\n }\n\n return {\n rows: nextRows,\n pages: nextPages,\n };\n });\n } catch {\n //\n } finally {\n _hasFetchedAll.current = false;\n // reset pending requests\n delete _pendingPageRequests.current[pageIndex];\n // update the last loaded page\n _lastFetchedPage.current = {\n index: pageIndex,\n direction,\n };\n }\n }\n\n const loadAll = async (\n sorting: TableColumnSort[],\n filters: TableColumnFilter[],\n search: string | undefined,\n hiddenColumns: string[]\n ) => {\n _hasFetchedAll.current = true;\n // set the sorting so we can track if it changed between loads\n _lastUsedSorting.current = sorting;\n // set the filters so we can track if it changed between loads\n _lastUsedFilters.current = filters;\n\n try {\n const response = await fetchAll(sorting, filters, search, hiddenColumns);\n length.current = response.length;\n\n setData({\n rows: response.data,\n pages: Array.from(Array(response.length / pageSize).keys()),\n });\n } catch {\n //\n } finally {\n // reset pending requests\n _pendingPageRequests.current = {};\n }\n };\n\n const invalidate = async () => {\n // reset stuff\n _pendingPageRequests.current = {};\n _hasFetchedAll.current = false;\n\n // load the last page that we scrolled to\n return loadPage(\n getCurrentPage(data.pages, _lastFetchedPage.current),\n _lastUsedSorting.current,\n _lastUsedFilters.current,\n _lastUsedSearch.current,\n _lastUsedHiddenColumns.current,\n true\n );\n };\n\n // search works client side - it fetches all then works client side - so these handlers are a little \"weird\"\n // if a search is currently \"active\", we need to re load all because\n const handleSort = async (sorting: TableColumnSort[]) => {\n _lastUsedSorting.current = sorting;\n // reset stuff\n _pendingPageRequests.current = {};\n _hasFetchedAll.current = false;\n\n return loadPage(\n getCurrentPage(data.pages, _lastFetchedPage.current),\n sorting,\n _lastUsedFilters.current,\n _lastUsedSearch.current,\n _lastUsedHiddenColumns.current,\n true\n );\n };\n const handleFilter = async (filters: TableColumnFilter[], hiddenColumns: string[]) => {\n _lastUsedFilters.current = filters;\n _lastUsedHiddenColumns.current = hiddenColumns;\n\n // reset stuff\n _pendingPageRequests.current = {};\n _hasFetchedAll.current = false;\n\n return loadPage(\n getCurrentPage(data.pages, _lastFetchedPage.current),\n _lastUsedSorting.current,\n filters,\n _lastUsedSearch.current,\n hiddenColumns,\n true\n );\n };\n const handleSearch = async (search: string | undefined, hiddenColumns: string[]) => {\n _lastUsedSearch.current = search;\n _lastUsedHiddenColumns.current = hiddenColumns;\n\n // reset stuff\n _pendingPageRequests.current = {};\n _hasFetchedAll.current = false;\n\n return loadPage(\n getCurrentPage(data.pages, _lastFetchedPage.current),\n _lastUsedSorting.current,\n _lastUsedFilters.current,\n search,\n hiddenColumns,\n true\n );\n };\n\n return [\n {\n data: data.rows,\n pages: data.pages,\n length: length.current,\n loadAll,\n loadPage,\n onChangeFilter: handleFilter,\n onChangeSearch: handleSearch,\n onChangeSort: handleSort,\n pageSize,\n _experimentalDataLoader2: true,\n },\n invalidate,\n ];\n}\n\nfunction getCurrentPage(currentPages: number[], lastFetchedPage: LastFetchedPage): number {\n if (currentPages.length <= 2) {\n return currentPages[0] ?? 0;\n }\n\n const middle = Math.floor(DATASET_SIZE_MULTIPLIER / 2);\n\n if (lastFetchedPage.index) {\n if (!lastFetchedPage.direction) {\n return lastFetchedPage.index;\n }\n\n return lastFetchedPage.direction === 'forward' ? lastFetchedPage.index + middle : lastFetchedPage.index - middle;\n }\n\n return 0;\n}\n\nfunction getDirection2(pageIndex: number, lastUsedPage: LastFetchedPage): Direction {\n if (lastUsedPage.index === undefined) {\n return undefined;\n }\n\n if (pageIndex > lastUsedPage.index) {\n if (lastUsedPage.index + 1 === pageIndex || lastUsedPage.index + DATASET_SIZE_MULTIPLIER === pageIndex) {\n return 'forward';\n }\n } else if (pageIndex < lastUsedPage.index) {\n if (lastUsedPage.index - 1 === pageIndex || lastUsedPage.index - DATASET_SIZE_MULTIPLIER === pageIndex) {\n return 'backward';\n }\n }\n\n return undefined;\n}\n\nfunction getPages(pageIndex: number, lastUsedPage: LastFetchedPage, currentPages: number[], direction: Direction) {\n if (currentPages.length && (pageIndex === lastUsedPage.index || currentPages.includes(pageIndex))) {\n return currentPages;\n }\n\n if (direction === 'forward') {\n const nextPages = currentPages.length === DATASET_SIZE_MULTIPLIER ? currentPages.slice(1) : currentPages;\n return nextPages.concat(pageIndex);\n }\n\n if (direction === 'backward') {\n const nextPages = currentPages.length === DATASET_SIZE_MULTIPLIER ? currentPages.slice(0, -1) : currentPages;\n return [pageIndex].concat(nextPages);\n }\n\n if (pageIndex === 0) {\n return [0];\n }\n\n // don't go forward, the current page will trigger load of the next page\n return [pageIndex - 1, pageIndex];\n}\n"],"names":["DATASET_SIZE_MULTIPLIER","useTableDataLoader2","fetchPage","fetchAll","options","pageSize","DEFAULT_PAGE_SIZE","loadPage","pageIndex","sorting","filters","search","hiddenColumns","reset","_hasFetchedAll","current","Promise","resolve","_pendingPageRequests","data","pages","includes","position","indexOf","rows","undefined","_lastUsedSorting","_lastUsedFilters","direction","getDirection2","_lastFetchedPage","_temp2","_finallyRethrows","_catch","then","response","length","setData","currentData","nextPages","getPages","nextRows","index","startIndex","concat","Array","fill","slice","DATASET_SIZE","_wasThrown2","_result2","e","reject","React","useRef","useState","_lastUsedSearch","_lastUsedHiddenColumns","loadAll","_temp","from","keys","_wasThrown","_result","invalidate","getCurrentPage","handleSort","handleFilter","handleSearch","onChangeFilter","onChangeSearch","onChangeSort","_experimentalDataLoader2","currentPages","lastFetchedPage","_currentPages$","middle","Math","floor","lastUsedPage"],"mappings":"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"}
1
+ {"version":3,"file":"useTableDataLoader2.js","sources":["../../../../../../../src/primitives/Table/useTableDataLoader2.ts"],"sourcesContent":["import React from 'react';\nimport { v4 as uuid } from 'uuid';\nimport {\n TableColumnFilter,\n TableColumnSort,\n TableFilterHandler,\n TableServerLoadPageHandler,\n TableServerLoadAllHandler,\n TableSortHandler,\n TableSearchHandler,\n} from './types';\nimport { DEFAULT_PAGE_SIZE, useTableDataLoaderOptions } from './useTableDataLoader';\n\nconst DATASET_SIZE_MULTIPLIER = 15;\n\nexport type useTableDataPageFetcher2<TType = unknown> = (\n pageIndex: number,\n pageSize: number,\n sorting: TableColumnSort[],\n filters: TableColumnFilter[],\n search: string | undefined,\n hiddenColumns: string[]\n) => Promise<{ data: TType[]; length: number }>;\n\nexport type useTableDataAllFetcher2<TType = unknown> = (\n sorting: TableColumnSort[],\n filters: TableColumnFilter[],\n search: string | undefined,\n hiddenColumns: string[]\n) => Promise<{ data: TType[]; length: number }>;\n\nexport type useTableDataLoaderValues2<TType = unknown> = {\n data: TType[];\n length: number | undefined;\n loadAll: TableServerLoadAllHandler;\n loadPage: TableServerLoadPageHandler;\n onChangeFilter: TableFilterHandler;\n onChangeSearch: TableSearchHandler;\n onChangeSort: TableSortHandler;\n pageSize: number;\n pages: number[];\n _experimentalDataLoader2: boolean;\n};\n\ntype Data<TType = unknown> = {\n rows: TType[];\n pages: number[];\n cache: Record<number, TType[]>;\n lastFetchedPage: number | undefined;\n};\ntype Direction = 'forward' | 'backward' | undefined;\n\nexport function useTableDataLoader2<TType = unknown>(\n fetchPage: useTableDataPageFetcher2<TType>,\n fetchAll: useTableDataAllFetcher2<TType>,\n options: useTableDataLoaderOptions = { pageSize: DEFAULT_PAGE_SIZE }\n): [useTableDataLoaderValues2<TType>, () => void] {\n const { pageSize } = options;\n const DATASET_SIZE = DATASET_SIZE_MULTIPLIER * pageSize;\n\n // track the data length, we don't know it until the first request\n const length = React.useRef<number>(0);\n // data will be filled after the first request\n const [data, setData] = React.useState<Data<TType>>({ rows: [], pages: [], cache: {}, lastFetchedPage: undefined });\n // track which pages have been loaded to dedupe requests\n const _pendingPageRequests = React.useRef({});\n // it's possible to spam updates, e.g. sort, so we don't set state if the last request wasn't the current oen\n const _lastRequestId = React.useRef<string | undefined>();\n // store last used properties\n const _lastUsedSorting = React.useRef<TableColumnSort[]>([]);\n const _lastUsedFilters = React.useRef<TableColumnFilter[]>([]);\n const _lastUsedSearch = React.useRef<string | undefined>();\n const _lastUsedHiddenColumns = React.useRef<string[]>([]);\n\n async function loadPage(\n pageIndex: number,\n sorting: TableColumnSort[],\n filters: TableColumnFilter[],\n search: string | undefined,\n hiddenColumns: string[],\n reset = false\n ) {\n // if a request is already pending for this page (and it's not a reset), skip it\n if (_pendingPageRequests.current[pageIndex] && !reset) {\n return;\n }\n\n const hasChangedData =\n JSON.stringify(sorting) !== JSON.stringify(_lastUsedSorting.current) ||\n JSON.stringify(filters) !== JSON.stringify(_lastUsedFilters.current) ||\n search !== _lastUsedSearch.current;\n\n // if the page is already loaded and has actual rows, abort\n if (data.cache[pageIndex] && data.cache[pageIndex][0] && !hasChangedData && !reset) {\n return;\n }\n\n // create an id to track the update\n const requestId = uuid();\n\n // set the page as loading, so that subsequent requests don't retrigger it\n _pendingPageRequests.current[pageIndex] = true;\n\n try {\n _lastRequestId.current = requestId;\n const response = await fetchPage(pageIndex, pageSize, sorting, filters, search, hiddenColumns);\n length.current = response.length;\n\n // update state, here we do some \"magic\" to support \"load in place\"\n setData(currentData => {\n // if this request wasn't the last one, just return the current state to prevent weird updates\n if (_lastRequestId.current !== requestId) {\n return currentData;\n }\n\n const direction = getDirection(pageIndex, currentData.pages);\n const nextPages = getPages(pageIndex, currentData.lastFetchedPage, reset ? [] : currentData.pages, direction);\n\n // set values so we can track if they changed between loads\n _lastUsedSorting.current = sorting;\n _lastUsedFilters.current = filters;\n _lastUsedSearch.current = search;\n _lastUsedHiddenColumns.current = hiddenColumns;\n\n // cache data as an object to prevent any duplicates for pages\n let nextCache: Record<number, TType[]>;\n\n if (reset || hasChangedData || !direction) {\n nextCache = nextPages.reduce((acc, p) => ({ ...acc, [p]: Array(pageSize).fill(undefined) }), {});\n } else {\n nextCache = { ...currentData.cache };\n }\n\n nextCache[pageIndex] = response.data;\n\n // cleanup \"unloaded\" pages\n if (direction === 'forward' && currentData.rows.length >= DATASET_SIZE) {\n delete nextCache[currentData.pages[0]];\n } else if (direction === 'backward' && currentData.rows.length >= DATASET_SIZE) {\n delete nextCache[currentData.pages[currentData.pages.length - 1]];\n }\n\n // remap rows from the cached data - do it here and not in render to save some performance\n const rows = Object.values(nextCache).reduce((acc, p) => acc.concat(p), []);\n\n return {\n cache: nextCache,\n pages: nextPages,\n rows: rows,\n lastFetchedPage: pageIndex,\n };\n });\n\n // reset pending requests\n delete _pendingPageRequests.current[pageIndex];\n } catch {\n //\n }\n }\n\n const loadAll = async (\n sorting: TableColumnSort[],\n filters: TableColumnFilter[],\n search: string | undefined,\n hiddenColumns: string[]\n ) => {\n // set values so we can track if they changed between loads\n _lastUsedSorting.current = sorting;\n _lastUsedFilters.current = filters;\n _lastUsedSearch.current = search;\n _lastUsedHiddenColumns.current = hiddenColumns;\n\n try {\n const response = await fetchAll(sorting, filters, search, hiddenColumns);\n length.current = response.length;\n\n const pages: number[] = [];\n const cache = {};\n\n Array.from(Array(response.length / pageSize).keys()).forEach(index => {\n pages.push(index);\n const startIndex = index * pageSize;\n cache[index] = response.data.slice(startIndex, startIndex + pageSize);\n });\n\n setData({\n cache,\n pages,\n rows: response.data,\n lastFetchedPage: undefined,\n });\n } catch {\n //\n } finally {\n // reset pending requests\n _pendingPageRequests.current = {};\n }\n };\n\n const invalidate = async () => {\n // reset stuff\n _pendingPageRequests.current = {};\n\n // load the current page again\n return loadPage(\n getCurrentPage(data.pages),\n _lastUsedSorting.current,\n _lastUsedFilters.current,\n _lastUsedSearch.current,\n _lastUsedHiddenColumns.current,\n true\n );\n };\n\n const handleSort = async (sorting: TableColumnSort[]) => {\n // reset before loading the current page\n _pendingPageRequests.current = {};\n\n return loadPage(\n getCurrentPage(data.pages),\n sorting,\n _lastUsedFilters.current,\n _lastUsedSearch.current,\n _lastUsedHiddenColumns.current,\n true\n );\n };\n const handleFilter = async (filters: TableColumnFilter[], hiddenColumns: string[]) => {\n // reset before loading the current page\n _pendingPageRequests.current = {};\n return loadPage(0, _lastUsedSorting.current, filters, _lastUsedSearch.current, hiddenColumns, true);\n };\n const handleSearch = async (search: string | undefined, hiddenColumns: string[]) => {\n // reset before loading the current page\n _pendingPageRequests.current = {};\n return loadPage(0, _lastUsedSorting.current, _lastUsedFilters.current, search, hiddenColumns, true);\n };\n\n return [\n {\n data: data.rows,\n pages: data.pages,\n length: length.current,\n loadAll,\n loadPage,\n onChangeFilter: handleFilter,\n onChangeSearch: handleSearch,\n onChangeSort: handleSort,\n pageSize,\n _experimentalDataLoader2: true,\n },\n invalidate,\n ];\n}\n\nfunction getCurrentPage(currentPages: number[]): number {\n if (currentPages.length <= 2) {\n return currentPages[0];\n }\n\n // for even page lengths we can't know which is the current visible page - it could even be both\n // so we load one of them and rely on the \"load next/previous page\" functionality in row\n const middle = Math.floor(currentPages.length / 2);\n return currentPages[middle];\n}\n\nfunction getDirection(pageIndex: number, currentPages: number[]): Direction {\n if (currentPages.length) {\n if (pageIndex === currentPages[currentPages.length - 1] + 1) {\n return 'forward';\n } else if (\n pageIndex === currentPages[0] - 1 ||\n (currentPages.length === 2 && currentPages[0] !== 0 && pageIndex === currentPages[0])\n ) {\n return 'backward';\n }\n }\n\n return undefined;\n}\n\nfunction getPages(pageIndex: number, lastUsedPageIndex: number | undefined, currentPages: number[], direction: Direction) {\n if (currentPages.length && (pageIndex === lastUsedPageIndex || currentPages.includes(pageIndex))) {\n return currentPages;\n }\n\n if (direction === 'forward') {\n const nextPages = currentPages.length === DATASET_SIZE_MULTIPLIER ? currentPages.slice(1) : currentPages;\n return nextPages.concat(pageIndex);\n }\n\n if (direction === 'backward') {\n const nextPages = currentPages.length === DATASET_SIZE_MULTIPLIER ? currentPages.slice(0, -1) : currentPages;\n return [pageIndex].concat(nextPages);\n }\n\n return [pageIndex];\n}\n"],"names":["DATASET_SIZE_MULTIPLIER","useTableDataLoader2","fetchPage","fetchAll","options","loadPage","pageIndex","sorting","filters","search","hiddenColumns","reset","_pendingPageRequests","current","Promise","resolve","hasChangedData","JSON","stringify","_lastUsedSorting","_lastUsedFilters","_lastUsedSearch","data","cache","requestId","uuid","_temp2","_catch","_lastRequestId","pageSize","then","response","length","setData","currentData","direction","getDirection","pages","nextPages","getPages","lastFetchedPage","_lastUsedHiddenColumns","nextCache","reduce","acc","p","_extends2","_extends","Array","fill","undefined","rows","DATASET_SIZE","Object","values","concat","e","reject","DEFAULT_PAGE_SIZE","_options","React","useRef","_React$useState","useState","loadAll","_temp","_finallyRethrows","from","keys","forEach","index","push","startIndex","slice","_wasThrown","_result","invalidate","getCurrentPage","handleSort","handleFilter","handleSearch","onChangeFilter","onChangeSearch","onChangeSort","_experimentalDataLoader2","currentPages","middle","Math","floor","lastUsedPageIndex","includes"],"mappings":"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"}
@@ -1,9 +1,14 @@
1
1
  import React__default from 'react';
2
2
 
3
3
  /* column freezing uses the native column pinning feature, this hook is really just a container for scrolled state */
4
- function useTableColumnFreezing(isEnabled = false) {
5
- const [isHorizontallyScrolled, setHorizontallyScrolled] = React__default.useState(false);
6
- const handleScroll = event => {
4
+ function useTableColumnFreezing(isEnabled) {
5
+ if (isEnabled === void 0) {
6
+ isEnabled = false;
7
+ }
8
+ var _React$useState = React__default.useState(false),
9
+ isHorizontallyScrolled = _React$useState[0],
10
+ setHorizontallyScrolled = _React$useState[1];
11
+ var handleScroll = function handleScroll(event) {
7
12
  if (event.currentTarget.scrollLeft > 0 && !isHorizontallyScrolled) {
8
13
  setHorizontallyScrolled(true);
9
14
  } else if (event.currentTarget.scrollLeft === 0 && isHorizontallyScrolled) {
@@ -11,9 +16,9 @@ function useTableColumnFreezing(isEnabled = false) {
11
16
  }
12
17
  };
13
18
  return {
14
- isEnabled,
15
- isHorizontallyScrolled,
16
- handleScroll
19
+ isEnabled: isEnabled,
20
+ isHorizontallyScrolled: isHorizontallyScrolled,
21
+ handleScroll: handleScroll
17
22
  };
18
23
  }
19
24
 
@@ -1 +1 @@
1
- {"version":3,"file":"useTableColumnFreezing.js","sources":["../../../../../../../../../src/primitives/Table/useTableManager/features/useTableColumnFreezing.ts"],"sourcesContent":["import React from 'react';\n\n/* column freezing uses the native column pinning feature, this hook is really just a container for scrolled state */\nexport function useTableColumnFreezing(isEnabled = false) {\n const [isHorizontallyScrolled, setHorizontallyScrolled] = React.useState(false);\n\n const handleScroll = (event: React.MouseEvent<HTMLTableElement>) => {\n if (event.currentTarget.scrollLeft > 0 && !isHorizontallyScrolled) {\n setHorizontallyScrolled(true);\n } else if (event.currentTarget.scrollLeft === 0 && isHorizontallyScrolled) {\n setHorizontallyScrolled(false);\n }\n };\n\n return {\n isEnabled,\n isHorizontallyScrolled,\n handleScroll,\n };\n}\n"],"names":["useTableColumnFreezing","isEnabled","isHorizontallyScrolled","setHorizontallyScrolled","React","useState","handleScroll","event","currentTarget","scrollLeft"],"mappings":";;AAEA;SACgBA,sBAAsBA,CAACC,SAAS,GAAG,KAAK;EACpD,MAAM,CAACC,sBAAsB,EAAEC,uBAAuB,CAAC,GAAGC,cAAK,CAACC,QAAQ,CAAC,KAAK,CAAC;EAE/E,MAAMC,YAAY,GAAIC,KAAyC;IAC3D,IAAIA,KAAK,CAACC,aAAa,CAACC,UAAU,GAAG,CAAC,IAAI,CAACP,sBAAsB,EAAE;MAC/DC,uBAAuB,CAAC,IAAI,CAAC;KAChC,MAAM,IAAII,KAAK,CAACC,aAAa,CAACC,UAAU,KAAK,CAAC,IAAIP,sBAAsB,EAAE;MACvEC,uBAAuB,CAAC,KAAK,CAAC;;GAErC;EAED,OAAO;IACHF,SAAS;IACTC,sBAAsB;IACtBI;GACH;AACL;;;;"}
1
+ {"version":3,"file":"useTableColumnFreezing.js","sources":["../../../../../../../../../src/primitives/Table/useTableManager/features/useTableColumnFreezing.ts"],"sourcesContent":["import React from 'react';\n\n/* column freezing uses the native column pinning feature, this hook is really just a container for scrolled state */\nexport function useTableColumnFreezing(isEnabled = false) {\n const [isHorizontallyScrolled, setHorizontallyScrolled] = React.useState(false);\n\n const handleScroll = (event: React.MouseEvent<HTMLTableElement>) => {\n if (event.currentTarget.scrollLeft > 0 && !isHorizontallyScrolled) {\n setHorizontallyScrolled(true);\n } else if (event.currentTarget.scrollLeft === 0 && isHorizontallyScrolled) {\n setHorizontallyScrolled(false);\n }\n };\n\n return {\n isEnabled,\n isHorizontallyScrolled,\n handleScroll,\n };\n}\n"],"names":["useTableColumnFreezing","isEnabled","_React$useState","React","useState","isHorizontallyScrolled","setHorizontallyScrolled","handleScroll","event","currentTarget","scrollLeft"],"mappings":";;AAEA;SACgBA,sBAAsBA,CAACC,SAAS;MAATA,SAAS;IAATA,SAAS,GAAG,KAAK;;EACpD,IAAAC,eAAA,GAA0DC,cAAK,CAACC,QAAQ,CAAC,KAAK,CAAC;IAAxEC,sBAAsB,GAAAH,eAAA;IAAEI,uBAAuB,GAAAJ,eAAA;EAEtD,IAAMK,YAAY,GAAG,SAAfA,YAAYA,CAAIC,KAAyC;IAC3D,IAAIA,KAAK,CAACC,aAAa,CAACC,UAAU,GAAG,CAAC,IAAI,CAACL,sBAAsB,EAAE;MAC/DC,uBAAuB,CAAC,IAAI,CAAC;KAChC,MAAM,IAAIE,KAAK,CAACC,aAAa,CAACC,UAAU,KAAK,CAAC,IAAIL,sBAAsB,EAAE;MACvEC,uBAAuB,CAAC,KAAK,CAAC;;GAErC;EAED,OAAO;IACHL,SAAS,EAATA,SAAS;IACTI,sBAAsB,EAAtBA,sBAAsB;IACtBE,YAAY,EAAZA;GACH;AACL;;;;"}
@@ -1,6 +1,9 @@
1
- function useTableColumnOrdering(isEnabled = false) {
1
+ function useTableColumnOrdering(isEnabled) {
2
+ if (isEnabled === void 0) {
3
+ isEnabled = false;
4
+ }
2
5
  return {
3
- isEnabled
6
+ isEnabled: isEnabled
4
7
  };
5
8
  }
6
9
 
@@ -1 +1 @@
1
- {"version":3,"file":"useTableColumnOrdering.js","sources":["../../../../../../../../../src/primitives/Table/useTableManager/features/useTableColumnOrdering.ts"],"sourcesContent":["export function useTableColumnOrdering(isEnabled = false) {\n return {\n isEnabled,\n };\n}\n"],"names":["useTableColumnOrdering","isEnabled"],"mappings":"SAAgBA,sBAAsBA,CAACC,SAAS,GAAG,KAAK;EACpD,OAAO;IACHA;GACH;AACL;;;;"}
1
+ {"version":3,"file":"useTableColumnOrdering.js","sources":["../../../../../../../../../src/primitives/Table/useTableManager/features/useTableColumnOrdering.ts"],"sourcesContent":["export function useTableColumnOrdering(isEnabled = false) {\n return {\n isEnabled,\n };\n}\n"],"names":["useTableColumnOrdering","isEnabled"],"mappings":"SAAgBA,sBAAsBA,CAACC,SAAS;MAATA,SAAS;IAATA,SAAS,GAAG,KAAK;;EACpD,OAAO;IACHA,SAAS,EAATA;GACH;AACL;;;;"}
@@ -1,11 +1,21 @@
1
1
  import React__default from 'react';
2
2
 
3
- function useTableFontSize(isEnabled = false, defaultFontSize = 'medium') {
4
- const [size, setSize] = React__default.useState(defaultFontSize);
3
+ function useTableFontSize(isEnabled, defaultFontSize) {
4
+ if (isEnabled === void 0) {
5
+ isEnabled = false;
6
+ }
7
+ if (defaultFontSize === void 0) {
8
+ defaultFontSize = 'medium';
9
+ }
10
+ var _React$useState = React__default.useState(defaultFontSize),
11
+ size = _React$useState[0],
12
+ setSize = _React$useState[1];
5
13
  return {
6
- isEnabled,
7
- size,
8
- setSize: isEnabled ? setSize : () => undefined
14
+ isEnabled: isEnabled,
15
+ size: size,
16
+ setSize: isEnabled ? setSize : function () {
17
+ return undefined;
18
+ }
9
19
  };
10
20
  }
11
21
 
@@ -1 +1 @@
1
- {"version":3,"file":"useTableFontSize.js","sources":["../../../../../../../../../src/primitives/Table/useTableManager/features/useTableFontSize.ts"],"sourcesContent":["import React from 'react';\nimport { FontSize } from '../../../../types';\n\nexport function useTableFontSize(isEnabled = false, defaultFontSize: FontSize = 'medium') {\n const [size, setSize] = React.useState<FontSize>(defaultFontSize);\n\n return {\n isEnabled,\n size,\n setSize: isEnabled ? setSize : () => undefined,\n };\n}\n"],"names":["useTableFontSize","isEnabled","defaultFontSize","size","setSize","React","useState","undefined"],"mappings":";;SAGgBA,gBAAgBA,CAACC,SAAS,GAAG,KAAK,EAAEC,kBAA4B,QAAQ;EACpF,MAAM,CAACC,IAAI,EAAEC,OAAO,CAAC,GAAGC,cAAK,CAACC,QAAQ,CAAWJ,eAAe,CAAC;EAEjE,OAAO;IACHD,SAAS;IACTE,IAAI;IACJC,OAAO,EAAEH,SAAS,GAAGG,OAAO,GAAG,MAAMG;GACxC;AACL;;;;"}
1
+ {"version":3,"file":"useTableFontSize.js","sources":["../../../../../../../../../src/primitives/Table/useTableManager/features/useTableFontSize.ts"],"sourcesContent":["import React from 'react';\nimport { FontSize } from '../../../../types';\n\nexport function useTableFontSize(isEnabled = false, defaultFontSize: FontSize = 'medium') {\n const [size, setSize] = React.useState<FontSize>(defaultFontSize);\n\n return {\n isEnabled,\n size,\n setSize: isEnabled ? setSize : () => undefined,\n };\n}\n"],"names":["useTableFontSize","isEnabled","defaultFontSize","_React$useState","React","useState","size","setSize","undefined"],"mappings":";;SAGgBA,gBAAgBA,CAACC,SAAS,EAAUC;MAAnBD,SAAS;IAATA,SAAS,GAAG,KAAK;;EAAA,IAAEC;IAAAA,kBAA4B,QAAQ;;EACpF,IAAAC,eAAA,GAAwBC,cAAK,CAACC,QAAQ,CAAWH,eAAe,CAAC;IAA1DI,IAAI,GAAAH,eAAA;IAAEI,OAAO,GAAAJ,eAAA;EAEpB,OAAO;IACHF,SAAS,EAATA,SAAS;IACTK,IAAI,EAAJA,IAAI;IACJC,OAAO,EAAEN,SAAS,GAAGM,OAAO,GAAG;MAAA,OAAMC,SAAS;;GACjD;AACL;;;;"}
@@ -1,6 +1,9 @@
1
- function useTableFooter(isEnabled = false) {
1
+ function useTableFooter(isEnabled) {
2
+ if (isEnabled === void 0) {
3
+ isEnabled = false;
4
+ }
2
5
  return {
3
- isEnabled
6
+ isEnabled: isEnabled
4
7
  };
5
8
  }
6
9
 
@@ -1 +1 @@
1
- {"version":3,"file":"useTableFooter.js","sources":["../../../../../../../../../src/primitives/Table/useTableManager/features/useTableFooter.ts"],"sourcesContent":["export function useTableFooter(isEnabled = false) {\n return {\n isEnabled,\n };\n}\n"],"names":["useTableFooter","isEnabled"],"mappings":"SAAgBA,cAAcA,CAACC,SAAS,GAAG,KAAK;EAC5C,OAAO;IACHA;GACH;AACL;;;;"}
1
+ {"version":3,"file":"useTableFooter.js","sources":["../../../../../../../../../src/primitives/Table/useTableManager/features/useTableFooter.ts"],"sourcesContent":["export function useTableFooter(isEnabled = false) {\n return {\n isEnabled,\n };\n}\n"],"names":["useTableFooter","isEnabled"],"mappings":"SAAgBA,cAAcA,CAACC,SAAS;MAATA,SAAS;IAATA,SAAS,GAAG,KAAK;;EAC5C,OAAO;IACHA,SAAS,EAATA;GACH;AACL;;;;"}