@economic/taco 2.49.0-server.4 → 2.49.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (644) hide show
  1. package/dist/components/Table3/components/Row/Editing/CreateNewRow.d.ts +0 -1
  2. package/dist/components/Table3/features/useTableEditing.d.ts +2 -2
  3. package/dist/esm/node_modules/babel-plugin-transform-async-to-promises/helpers.mjs.js +17 -17
  4. package/dist/esm/node_modules/babel-plugin-transform-async-to-promises/helpers.mjs.js.map +1 -1
  5. package/dist/esm/packages/taco/src/charts/components/Area/AreaChart.js +24 -32
  6. package/dist/esm/packages/taco/src/charts/components/Area/AreaChart.js.map +1 -1
  7. package/dist/esm/packages/taco/src/charts/components/Bar/BarChart.js +61 -84
  8. package/dist/esm/packages/taco/src/charts/components/Bar/BarChart.js.map +1 -1
  9. package/dist/esm/packages/taco/src/charts/components/Donut/ActiveShape.js +15 -16
  10. package/dist/esm/packages/taco/src/charts/components/Donut/ActiveShape.js.map +1 -1
  11. package/dist/esm/packages/taco/src/charts/components/Donut/CenteredLabel.js +13 -12
  12. package/dist/esm/packages/taco/src/charts/components/Donut/CenteredLabel.js.map +1 -1
  13. package/dist/esm/packages/taco/src/charts/components/Donut/DonutChart.js +68 -104
  14. package/dist/esm/packages/taco/src/charts/components/Donut/DonutChart.js.map +1 -1
  15. package/dist/esm/packages/taco/src/charts/components/Donut/Legend.js +29 -38
  16. package/dist/esm/packages/taco/src/charts/components/Donut/Legend.js.map +1 -1
  17. package/dist/esm/packages/taco/src/charts/components/Donut/util.js +2 -2
  18. package/dist/esm/packages/taco/src/charts/components/Donut/util.js.map +1 -1
  19. package/dist/esm/packages/taco/src/charts/components/Legend.js +37 -45
  20. package/dist/esm/packages/taco/src/charts/components/Legend.js.map +1 -1
  21. package/dist/esm/packages/taco/src/charts/components/Line/LineChart.js +24 -32
  22. package/dist/esm/packages/taco/src/charts/components/Line/LineChart.js.map +1 -1
  23. package/dist/esm/packages/taco/src/charts/components/ResponsiveContainer.js +3 -5
  24. package/dist/esm/packages/taco/src/charts/components/ResponsiveContainer.js.map +1 -1
  25. package/dist/esm/packages/taco/src/charts/components/Tooltip.js +25 -26
  26. package/dist/esm/packages/taco/src/charts/components/Tooltip.js.map +1 -1
  27. package/dist/esm/packages/taco/src/charts/utils/color.js +12 -13
  28. package/dist/esm/packages/taco/src/charts/utils/color.js.map +1 -1
  29. package/dist/esm/packages/taco/src/charts/utils/common.js +26 -39
  30. package/dist/esm/packages/taco/src/charts/utils/common.js.map +1 -1
  31. package/dist/esm/packages/taco/src/components/Accordion/Accordion.js +31 -30
  32. package/dist/esm/packages/taco/src/components/Accordion/Accordion.js.map +1 -1
  33. package/dist/esm/packages/taco/src/components/Alert/Alert.js +9 -7
  34. package/dist/esm/packages/taco/src/components/Alert/Alert.js.map +1 -1
  35. package/dist/esm/packages/taco/src/components/AlertDialog/AlertDialog.js +13 -14
  36. package/dist/esm/packages/taco/src/components/AlertDialog/AlertDialog.js.map +1 -1
  37. package/dist/esm/packages/taco/src/components/AlertDialog/Context.js +2 -2
  38. package/dist/esm/packages/taco/src/components/AlertDialog/Context.js.map +1 -1
  39. package/dist/esm/packages/taco/src/components/AlertDialog/components/Content.js +9 -10
  40. package/dist/esm/packages/taco/src/components/AlertDialog/components/Content.js.map +1 -1
  41. package/dist/esm/packages/taco/src/components/AlertDialog/components/Footer.js +4 -4
  42. package/dist/esm/packages/taco/src/components/AlertDialog/components/Footer.js.map +1 -1
  43. package/dist/esm/packages/taco/src/components/AlertDialog/components/Trigger.js +6 -5
  44. package/dist/esm/packages/taco/src/components/AlertDialog/components/Trigger.js.map +1 -1
  45. package/dist/esm/packages/taco/src/components/Backdrop/Backdrop.js +2 -2
  46. package/dist/esm/packages/taco/src/components/Backdrop/Backdrop.js.map +1 -1
  47. package/dist/esm/packages/taco/src/components/Badge/Badge.js +25 -21
  48. package/dist/esm/packages/taco/src/components/Badge/Badge.js.map +1 -1
  49. package/dist/esm/packages/taco/src/components/BadgeIcon/BadgeIcon.js +14 -12
  50. package/dist/esm/packages/taco/src/components/BadgeIcon/BadgeIcon.js.map +1 -1
  51. package/dist/esm/packages/taco/src/components/Banner/Banner.js +10 -7
  52. package/dist/esm/packages/taco/src/components/Banner/Banner.js.map +1 -1
  53. package/dist/esm/packages/taco/src/components/Banner/util.js +3 -3
  54. package/dist/esm/packages/taco/src/components/Banner/util.js.map +1 -1
  55. package/dist/esm/packages/taco/src/components/Button/Button.js +28 -26
  56. package/dist/esm/packages/taco/src/components/Button/Button.js.map +1 -1
  57. package/dist/esm/packages/taco/src/components/Button/util.js +24 -25
  58. package/dist/esm/packages/taco/src/components/Button/util.js.map +1 -1
  59. package/dist/esm/packages/taco/src/components/Calendar/Calendar.js +71 -75
  60. package/dist/esm/packages/taco/src/components/Calendar/Calendar.js.map +1 -1
  61. package/dist/esm/packages/taco/src/components/Card/Card.js +15 -14
  62. package/dist/esm/packages/taco/src/components/Card/Card.js.map +1 -1
  63. package/dist/esm/packages/taco/src/components/Checkbox/Checkbox.js +22 -24
  64. package/dist/esm/packages/taco/src/components/Checkbox/Checkbox.js.map +1 -1
  65. package/dist/esm/packages/taco/src/components/Combobox/Combobox.js +23 -21
  66. package/dist/esm/packages/taco/src/components/Combobox/Combobox.js.map +1 -1
  67. package/dist/esm/packages/taco/src/components/Combobox/useCombobox.js +64 -76
  68. package/dist/esm/packages/taco/src/components/Combobox/useCombobox.js.map +1 -1
  69. package/dist/esm/packages/taco/src/components/Datepicker/Datepicker.js +57 -60
  70. package/dist/esm/packages/taco/src/components/Datepicker/Datepicker.js.map +1 -1
  71. package/dist/esm/packages/taco/src/components/Datepicker/useDatepicker.js +28 -27
  72. package/dist/esm/packages/taco/src/components/Datepicker/useDatepicker.js.map +1 -1
  73. package/dist/esm/packages/taco/src/components/Dialog/Context.js +4 -4
  74. package/dist/esm/packages/taco/src/components/Dialog/Context.js.map +1 -1
  75. package/dist/esm/packages/taco/src/components/Dialog/Dialog.js +39 -54
  76. package/dist/esm/packages/taco/src/components/Dialog/Dialog.js.map +1 -1
  77. package/dist/esm/packages/taco/src/components/Dialog/components/Content.js +38 -36
  78. package/dist/esm/packages/taco/src/components/Dialog/components/Content.js.map +1 -1
  79. package/dist/esm/packages/taco/src/components/Dialog/components/DialogDrawer.js +3 -3
  80. package/dist/esm/packages/taco/src/components/Dialog/components/DialogDrawer.js.map +1 -1
  81. package/dist/esm/packages/taco/src/components/Dialog/components/Extra.js +2 -2
  82. package/dist/esm/packages/taco/src/components/Dialog/components/Extra.js.map +1 -1
  83. package/dist/esm/packages/taco/src/components/Dialog/components/Trigger.js +6 -5
  84. package/dist/esm/packages/taco/src/components/Dialog/components/Trigger.js.map +1 -1
  85. package/dist/esm/packages/taco/src/components/Dialog/util.js +3 -7
  86. package/dist/esm/packages/taco/src/components/Dialog/util.js.map +1 -1
  87. package/dist/esm/packages/taco/src/components/Drawer/Context.js +5 -5
  88. package/dist/esm/packages/taco/src/components/Drawer/Context.js.map +1 -1
  89. package/dist/esm/packages/taco/src/components/Drawer/Drawer.js +51 -61
  90. package/dist/esm/packages/taco/src/components/Drawer/Drawer.js.map +1 -1
  91. package/dist/esm/packages/taco/src/components/Drawer/components/Content.js +145 -134
  92. package/dist/esm/packages/taco/src/components/Drawer/components/Content.js.map +1 -1
  93. package/dist/esm/packages/taco/src/components/Drawer/components/Trigger.js +1 -1
  94. package/dist/esm/packages/taco/src/components/Drawer/components/Trigger.js.map +1 -1
  95. package/dist/esm/packages/taco/src/components/Drawer/util.js +5 -5
  96. package/dist/esm/packages/taco/src/components/Drawer/util.js.map +1 -1
  97. package/dist/esm/packages/taco/src/components/Field/Field.js +12 -14
  98. package/dist/esm/packages/taco/src/components/Field/Field.js.map +1 -1
  99. package/dist/esm/packages/taco/src/components/Form/Form.js +6 -7
  100. package/dist/esm/packages/taco/src/components/Form/Form.js.map +1 -1
  101. package/dist/esm/packages/taco/src/components/Group/Group.js +7 -9
  102. package/dist/esm/packages/taco/src/components/Group/Group.js.map +1 -1
  103. package/dist/esm/packages/taco/src/components/Hanger/Hanger.js +36 -37
  104. package/dist/esm/packages/taco/src/components/Hanger/Hanger.js.map +1 -1
  105. package/dist/esm/packages/taco/src/components/Header/Header.js +2 -2
  106. package/dist/esm/packages/taco/src/components/Header/Header.js.map +1 -1
  107. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Avatar.js +10 -14
  108. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Avatar.js.map +1 -1
  109. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Badge.js +4 -5
  110. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Badge.js.map +1 -1
  111. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Display.js +9 -7
  112. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Display.js.map +1 -1
  113. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Item.js +9 -9
  114. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Item.js.map +1 -1
  115. package/dist/esm/packages/taco/src/components/Header/components/AgreementSelector.js +46 -66
  116. package/dist/esm/packages/taco/src/components/Header/components/AgreementSelector.js.map +1 -1
  117. package/dist/esm/packages/taco/src/components/Header/components/Button.js +8 -12
  118. package/dist/esm/packages/taco/src/components/Header/components/Button.js.map +1 -1
  119. package/dist/esm/packages/taco/src/components/Header/components/Link.js +18 -22
  120. package/dist/esm/packages/taco/src/components/Header/components/Link.js.map +1 -1
  121. package/dist/esm/packages/taco/src/components/Header/components/Logo.js +4 -4
  122. package/dist/esm/packages/taco/src/components/Header/components/Logo.js.map +1 -1
  123. package/dist/esm/packages/taco/src/components/Header/components/MenuButton.js +2 -2
  124. package/dist/esm/packages/taco/src/components/Header/components/MenuButton.js.map +1 -1
  125. package/dist/esm/packages/taco/src/components/Header/components/PrimaryNavigation.js +9 -10
  126. package/dist/esm/packages/taco/src/components/Header/components/PrimaryNavigation.js.map +1 -1
  127. package/dist/esm/packages/taco/src/components/Header/components/SecondaryNavigation.js +2 -2
  128. package/dist/esm/packages/taco/src/components/Header/components/SecondaryNavigation.js.map +1 -1
  129. package/dist/esm/packages/taco/src/components/HoverCard/HoverCard.js +7 -5
  130. package/dist/esm/packages/taco/src/components/HoverCard/HoverCard.js.map +1 -1
  131. package/dist/esm/packages/taco/src/components/HoverCard/Primitives.js +1 -1
  132. package/dist/esm/packages/taco/src/components/HoverCard/Primitives.js.map +1 -1
  133. package/dist/esm/packages/taco/src/components/Icon/Icon.js +7 -7
  134. package/dist/esm/packages/taco/src/components/Icon/Icon.js.map +1 -1
  135. package/dist/esm/packages/taco/src/components/Icon/components/index.js +4 -4
  136. package/dist/esm/packages/taco/src/components/Icon/components/index.js.map +1 -1
  137. package/dist/esm/packages/taco/src/components/IconButton/IconButton.js +23 -22
  138. package/dist/esm/packages/taco/src/components/IconButton/IconButton.js.map +1 -1
  139. package/dist/esm/packages/taco/src/components/Input/Input.js +44 -45
  140. package/dist/esm/packages/taco/src/components/Input/Input.js.map +1 -1
  141. package/dist/esm/packages/taco/src/components/Input/util.js +5 -8
  142. package/dist/esm/packages/taco/src/components/Input/util.js.map +1 -1
  143. package/dist/esm/packages/taco/src/components/Layout/Layout.js +5 -7
  144. package/dist/esm/packages/taco/src/components/Layout/Layout.js.map +1 -1
  145. package/dist/esm/packages/taco/src/components/Layout/components/Content.js +2 -2
  146. package/dist/esm/packages/taco/src/components/Layout/components/Content.js.map +1 -1
  147. package/dist/esm/packages/taco/src/components/Layout/components/Context.js +2 -4
  148. package/dist/esm/packages/taco/src/components/Layout/components/Context.js.map +1 -1
  149. package/dist/esm/packages/taco/src/components/Layout/components/Page.js +2 -2
  150. package/dist/esm/packages/taco/src/components/Layout/components/Page.js.map +1 -1
  151. package/dist/esm/packages/taco/src/components/Layout/components/Sidebar.js +27 -34
  152. package/dist/esm/packages/taco/src/components/Layout/components/Sidebar.js.map +1 -1
  153. package/dist/esm/packages/taco/src/components/Layout/components/Top.js +6 -9
  154. package/dist/esm/packages/taco/src/components/Layout/components/Top.js.map +1 -1
  155. package/dist/esm/packages/taco/src/components/List/components/Button.js +1 -1
  156. package/dist/esm/packages/taco/src/components/List/components/Button.js.map +1 -1
  157. package/dist/esm/packages/taco/src/components/List/components/Collapsible.js +7 -10
  158. package/dist/esm/packages/taco/src/components/List/components/Collapsible.js.map +1 -1
  159. package/dist/esm/packages/taco/src/components/List/components/Group.js +1 -1
  160. package/dist/esm/packages/taco/src/components/List/components/Group.js.map +1 -1
  161. package/dist/esm/packages/taco/src/components/List/components/Item.js +13 -15
  162. package/dist/esm/packages/taco/src/components/List/components/Item.js.map +1 -1
  163. package/dist/esm/packages/taco/src/components/List/components/Link.js +3 -3
  164. package/dist/esm/packages/taco/src/components/List/components/Link.js.map +1 -1
  165. package/dist/esm/packages/taco/src/components/List/components/Toggle.js +27 -29
  166. package/dist/esm/packages/taco/src/components/List/components/Toggle.js.map +1 -1
  167. package/dist/esm/packages/taco/src/components/Listbox/Listbox.js +26 -21
  168. package/dist/esm/packages/taco/src/components/Listbox/Listbox.js.map +1 -1
  169. package/dist/esm/packages/taco/src/components/Listbox/ScrollableList.js +70 -82
  170. package/dist/esm/packages/taco/src/components/Listbox/ScrollableList.js.map +1 -1
  171. package/dist/esm/packages/taco/src/components/Listbox/useListbox.js +51 -56
  172. package/dist/esm/packages/taco/src/components/Listbox/useListbox.js.map +1 -1
  173. package/dist/esm/packages/taco/src/components/Listbox/useMultiListbox.js +65 -83
  174. package/dist/esm/packages/taco/src/components/Listbox/useMultiListbox.js.map +1 -1
  175. package/dist/esm/packages/taco/src/components/Listbox/useTypeahead.js +10 -9
  176. package/dist/esm/packages/taco/src/components/Listbox/useTypeahead.js.map +1 -1
  177. package/dist/esm/packages/taco/src/components/Listbox/util.js +48 -78
  178. package/dist/esm/packages/taco/src/components/Listbox/util.js.map +1 -1
  179. package/dist/esm/packages/taco/src/components/Menu/Context.js +2 -2
  180. package/dist/esm/packages/taco/src/components/Menu/Context.js.map +1 -1
  181. package/dist/esm/packages/taco/src/components/Menu/Menu.js +26 -42
  182. package/dist/esm/packages/taco/src/components/Menu/Menu.js.map +1 -1
  183. package/dist/esm/packages/taco/src/components/Menu/components/Checkbox.js +8 -8
  184. package/dist/esm/packages/taco/src/components/Menu/components/Checkbox.js.map +1 -1
  185. package/dist/esm/packages/taco/src/components/Menu/components/Content.js +22 -28
  186. package/dist/esm/packages/taco/src/components/Menu/components/Content.js.map +1 -1
  187. package/dist/esm/packages/taco/src/components/Menu/components/Header.js +3 -3
  188. package/dist/esm/packages/taco/src/components/Menu/components/Header.js.map +1 -1
  189. package/dist/esm/packages/taco/src/components/Menu/components/Item.js +32 -32
  190. package/dist/esm/packages/taco/src/components/Menu/components/Item.js.map +1 -1
  191. package/dist/esm/packages/taco/src/components/Menu/components/Link.js +10 -10
  192. package/dist/esm/packages/taco/src/components/Menu/components/Link.js.map +1 -1
  193. package/dist/esm/packages/taco/src/components/Menu/components/RadioGroup.js +16 -15
  194. package/dist/esm/packages/taco/src/components/Menu/components/RadioGroup.js.map +1 -1
  195. package/dist/esm/packages/taco/src/components/Menu/components/Separator.js +1 -1
  196. package/dist/esm/packages/taco/src/components/Menu/components/Separator.js.map +1 -1
  197. package/dist/esm/packages/taco/src/components/Menu/components/SubMenu.js +7 -7
  198. package/dist/esm/packages/taco/src/components/Menu/components/SubMenu.js.map +1 -1
  199. package/dist/esm/packages/taco/src/components/Menu/components/Trigger.js +5 -5
  200. package/dist/esm/packages/taco/src/components/Menu/components/Trigger.js.map +1 -1
  201. package/dist/esm/packages/taco/src/components/ModeSwitch/ModeSwitch.js +6 -6
  202. package/dist/esm/packages/taco/src/components/ModeSwitch/ModeSwitch.js.map +1 -1
  203. package/dist/esm/packages/taco/src/components/Navigation/Navigation.js +36 -41
  204. package/dist/esm/packages/taco/src/components/Navigation/Navigation.js.map +1 -1
  205. package/dist/esm/packages/taco/src/components/Navigation2/Navigation2.js +6 -6
  206. package/dist/esm/packages/taco/src/components/Navigation2/Navigation2.js.map +1 -1
  207. package/dist/esm/packages/taco/src/components/Navigation2/components/Content.js +6 -6
  208. package/dist/esm/packages/taco/src/components/Navigation2/components/Content.js.map +1 -1
  209. package/dist/esm/packages/taco/src/components/Navigation2/components/Group.js +11 -14
  210. package/dist/esm/packages/taco/src/components/Navigation2/components/Group.js.map +1 -1
  211. package/dist/esm/packages/taco/src/components/Navigation2/components/Link.js +24 -31
  212. package/dist/esm/packages/taco/src/components/Navigation2/components/Link.js.map +1 -1
  213. package/dist/esm/packages/taco/src/components/Navigation2/components/Section.js +7 -7
  214. package/dist/esm/packages/taco/src/components/Navigation2/components/Section.js.map +1 -1
  215. package/dist/esm/packages/taco/src/components/Navigation2/components/util.js +7 -9
  216. package/dist/esm/packages/taco/src/components/Navigation2/components/util.js.map +1 -1
  217. package/dist/esm/packages/taco/src/components/OverflowGroup/OverflowGroup.js +51 -48
  218. package/dist/esm/packages/taco/src/components/OverflowGroup/OverflowGroup.js.map +1 -1
  219. package/dist/esm/packages/taco/src/components/Pagination/PageNumbers.js +23 -26
  220. package/dist/esm/packages/taco/src/components/Pagination/PageNumbers.js.map +1 -1
  221. package/dist/esm/packages/taco/src/components/Pagination/Pagination.js +39 -53
  222. package/dist/esm/packages/taco/src/components/Pagination/Pagination.js.map +1 -1
  223. package/dist/esm/packages/taco/src/components/Pagination/usePagination.js +7 -17
  224. package/dist/esm/packages/taco/src/components/Pagination/usePagination.js.map +1 -1
  225. package/dist/esm/packages/taco/src/components/Pagination/usePaginationShortcuts.js +9 -8
  226. package/dist/esm/packages/taco/src/components/Pagination/usePaginationShortcuts.js.map +1 -1
  227. package/dist/esm/packages/taco/src/components/Popover/Popover.js +43 -45
  228. package/dist/esm/packages/taco/src/components/Popover/Popover.js.map +1 -1
  229. package/dist/esm/packages/taco/src/components/Popover/Primitives.js +1 -1
  230. package/dist/esm/packages/taco/src/components/Popover/Primitives.js.map +1 -1
  231. package/dist/esm/packages/taco/src/components/Popover/util.js +1 -3
  232. package/dist/esm/packages/taco/src/components/Popover/util.js.map +1 -1
  233. package/dist/esm/packages/taco/src/components/Progress/Progress.js +11 -13
  234. package/dist/esm/packages/taco/src/components/Progress/Progress.js.map +1 -1
  235. package/dist/esm/packages/taco/src/components/Provider/Localization.js +12 -13
  236. package/dist/esm/packages/taco/src/components/Provider/Localization.js.map +1 -1
  237. package/dist/esm/packages/taco/src/components/Provider/Provider.js +8 -8
  238. package/dist/esm/packages/taco/src/components/Provider/Provider.js.map +1 -1
  239. package/dist/esm/packages/taco/src/components/RadioGroup/RadioGroup.js +47 -54
  240. package/dist/esm/packages/taco/src/components/RadioGroup/RadioGroup.js.map +1 -1
  241. package/dist/esm/packages/taco/src/components/RadioGroup/util.js +1 -7
  242. package/dist/esm/packages/taco/src/components/RadioGroup/util.js.map +1 -1
  243. package/dist/esm/packages/taco/src/components/Report/Report.js +5 -7
  244. package/dist/esm/packages/taco/src/components/Report/Report.js.map +1 -1
  245. package/dist/esm/packages/taco/src/components/Report/useReport.js +1 -1
  246. package/dist/esm/packages/taco/src/components/Report/useReport.js.map +1 -1
  247. package/dist/esm/packages/taco/src/components/ScrollArea/ScrollArea.js +13 -17
  248. package/dist/esm/packages/taco/src/components/ScrollArea/ScrollArea.js.map +1 -1
  249. package/dist/esm/packages/taco/src/components/SearchInput/SearchInput.js +11 -11
  250. package/dist/esm/packages/taco/src/components/SearchInput/SearchInput.js.map +1 -1
  251. package/dist/esm/packages/taco/src/components/SearchInput2/SearchInput2.js +39 -44
  252. package/dist/esm/packages/taco/src/components/SearchInput2/SearchInput2.js.map +1 -1
  253. package/dist/esm/packages/taco/src/components/Select/Select.js +31 -28
  254. package/dist/esm/packages/taco/src/components/Select/Select.js.map +1 -1
  255. package/dist/esm/packages/taco/src/components/Select/useSelect.js +70 -79
  256. package/dist/esm/packages/taco/src/components/Select/useSelect.js.map +1 -1
  257. package/dist/esm/packages/taco/src/components/Select2/Select2.js +121 -154
  258. package/dist/esm/packages/taco/src/components/Select2/Select2.js.map +1 -1
  259. package/dist/esm/packages/taco/src/components/Select2/components/Collection.js +4 -2
  260. package/dist/esm/packages/taco/src/components/Select2/components/Collection.js.map +1 -1
  261. package/dist/esm/packages/taco/src/components/Select2/components/Context.js +2 -4
  262. package/dist/esm/packages/taco/src/components/Select2/components/Context.js.map +1 -1
  263. package/dist/esm/packages/taco/src/components/Select2/components/Create.js +41 -45
  264. package/dist/esm/packages/taco/src/components/Select2/components/Create.js.map +1 -1
  265. package/dist/esm/packages/taco/src/components/Select2/components/Edit.js +129 -145
  266. package/dist/esm/packages/taco/src/components/Select2/components/Edit.js.map +1 -1
  267. package/dist/esm/packages/taco/src/components/Select2/components/Group.js +8 -8
  268. package/dist/esm/packages/taco/src/components/Select2/components/Group.js.map +1 -1
  269. package/dist/esm/packages/taco/src/components/Select2/components/Option.js +30 -29
  270. package/dist/esm/packages/taco/src/components/Select2/components/Option.js.map +1 -1
  271. package/dist/esm/packages/taco/src/components/Select2/components/Search.js +10 -9
  272. package/dist/esm/packages/taco/src/components/Select2/components/Search.js.map +1 -1
  273. package/dist/esm/packages/taco/src/components/Select2/components/Title.js +2 -2
  274. package/dist/esm/packages/taco/src/components/Select2/components/Title.js.map +1 -1
  275. package/dist/esm/packages/taco/src/components/Select2/components/Trigger.js +128 -136
  276. package/dist/esm/packages/taco/src/components/Select2/components/Trigger.js.map +1 -1
  277. package/dist/esm/packages/taco/src/components/Select2/hooks/useChildren.js +23 -32
  278. package/dist/esm/packages/taco/src/components/Select2/hooks/useChildren.js.map +1 -1
  279. package/dist/esm/packages/taco/src/components/Select2/utilities.js +6 -13
  280. package/dist/esm/packages/taco/src/components/Select2/utilities.js.map +1 -1
  281. package/dist/esm/packages/taco/src/components/Shortcut/Shortcut.js +13 -16
  282. package/dist/esm/packages/taco/src/components/Shortcut/Shortcut.js.map +1 -1
  283. package/dist/esm/packages/taco/src/components/Spinner/Spinner.js +12 -17
  284. package/dist/esm/packages/taco/src/components/Spinner/Spinner.js.map +1 -1
  285. package/dist/esm/packages/taco/src/components/Switch/Switch.js +14 -14
  286. package/dist/esm/packages/taco/src/components/Switch/Switch.js.map +1 -1
  287. package/dist/esm/packages/taco/src/components/Table/components/BaseTable.js +23 -28
  288. package/dist/esm/packages/taco/src/components/Table/components/BaseTable.js.map +1 -1
  289. package/dist/esm/packages/taco/src/components/Table/components/PaginatedTable.js +3 -7
  290. package/dist/esm/packages/taco/src/components/Table/components/PaginatedTable.js.map +1 -1
  291. package/dist/esm/packages/taco/src/components/Table/components/Table.js +18 -22
  292. package/dist/esm/packages/taco/src/components/Table/components/Table.js.map +1 -1
  293. package/dist/esm/packages/taco/src/components/Table/components/WindowedTable.js +92 -100
  294. package/dist/esm/packages/taco/src/components/Table/components/WindowedTable.js.map +1 -1
  295. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowActions.js +118 -136
  296. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowActions.js.map +1 -1
  297. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowDraggable.js +55 -55
  298. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowDraggable.js.map +1 -1
  299. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowEditing.js +41 -35
  300. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowEditing.js.map +1 -1
  301. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowSelect.js +71 -77
  302. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowSelect.js.map +1 -1
  303. package/dist/esm/packages/taco/src/components/Table/hooks/useRowCreation.js +30 -56
  304. package/dist/esm/packages/taco/src/components/Table/hooks/useRowCreation.js.map +1 -1
  305. package/dist/esm/packages/taco/src/components/Table/hooks/useTable.js +142 -151
  306. package/dist/esm/packages/taco/src/components/Table/hooks/useTable.js.map +1 -1
  307. package/dist/esm/packages/taco/src/components/Table/hooks/useTableKeyboardNavigation.js +20 -22
  308. package/dist/esm/packages/taco/src/components/Table/hooks/useTableKeyboardNavigation.js.map +1 -1
  309. package/dist/esm/packages/taco/src/components/Table/util/renderColumn.js +12 -9
  310. package/dist/esm/packages/taco/src/components/Table/util/renderColumn.js.map +1 -1
  311. package/dist/esm/packages/taco/src/components/Table/util/renderRow.js +41 -41
  312. package/dist/esm/packages/taco/src/components/Table/util/renderRow.js.map +1 -1
  313. package/dist/esm/packages/taco/src/components/Table/util/rowIndexPath.js +14 -16
  314. package/dist/esm/packages/taco/src/components/Table/util/rowIndexPath.js.map +1 -1
  315. package/dist/esm/packages/taco/src/components/Table/util/sortTypes.js +26 -32
  316. package/dist/esm/packages/taco/src/components/Table/util/sortTypes.js.map +1 -1
  317. package/dist/esm/packages/taco/src/components/Table/util.js +30 -37
  318. package/dist/esm/packages/taco/src/components/Table/util.js.map +1 -1
  319. package/dist/esm/packages/taco/src/components/Table3/Table3.js +10 -13
  320. package/dist/esm/packages/taco/src/components/Table3/Table3.js.map +1 -1
  321. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Cell.js +14 -13
  322. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Cell.js.map +1 -1
  323. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Editing/RowMoveIndicator.js +23 -21
  324. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Editing/RowMoveIndicator.js.map +1 -1
  325. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Editing/TextareaWithAutosizing.js +17 -20
  326. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Editing/TextareaWithAutosizing.js.map +1 -1
  327. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingControlCell.js +75 -71
  328. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingControlCell.js.map +1 -1
  329. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingDisplayCell.js +2 -2
  330. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingDisplayCell.js.map +1 -1
  331. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/util.js +20 -19
  332. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/util.js.map +1 -1
  333. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Internal/EditingActionsMenu.js +25 -26
  334. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Internal/EditingActionsMenu.js.map +1 -1
  335. package/dist/esm/packages/taco/src/components/Table3/components/Editing/Alert.js +41 -48
  336. package/dist/esm/packages/taco/src/components/Table3/components/Editing/Alert.js.map +1 -1
  337. package/dist/esm/packages/taco/src/components/Table3/components/Editing/DiscardChangesConfirmationDialog.js +8 -7
  338. package/dist/esm/packages/taco/src/components/Table3/components/Editing/DiscardChangesConfirmationDialog.js.map +1 -1
  339. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/CreateNewRow.js +18 -18
  340. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/CreateNewRow.js.map +1 -1
  341. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/SaveStatus.js +10 -7
  342. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/SaveStatus.js.map +1 -1
  343. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/TemporaryRow.js +36 -38
  344. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/TemporaryRow.js.map +1 -1
  345. package/dist/esm/packages/taco/src/components/Table3/components/Row/Row.js +15 -15
  346. package/dist/esm/packages/taco/src/components/Table3/components/Row/Row.js.map +1 -1
  347. package/dist/esm/packages/taco/src/components/Table3/components/Toolbar/Editing/Editing.js +11 -8
  348. package/dist/esm/packages/taco/src/components/Table3/components/Toolbar/Editing/Editing.js.map +1 -1
  349. package/dist/esm/packages/taco/src/components/Table3/features/useEditingState.js +208 -167
  350. package/dist/esm/packages/taco/src/components/Table3/features/useEditingState.js.map +1 -1
  351. package/dist/esm/packages/taco/src/components/Table3/features/useTableEditing.js +50 -63
  352. package/dist/esm/packages/taco/src/components/Table3/features/useTableEditing.js.map +1 -1
  353. package/dist/esm/packages/taco/src/components/Table3/listeners/useTableEditingListener.js +16 -18
  354. package/dist/esm/packages/taco/src/components/Table3/listeners/useTableEditingListener.js.map +1 -1
  355. package/dist/esm/packages/taco/src/components/Table3/useTable3.js +19 -25
  356. package/dist/esm/packages/taco/src/components/Table3/useTable3.js.map +1 -1
  357. package/dist/esm/packages/taco/src/components/Table3/util/editing.js +35 -29
  358. package/dist/esm/packages/taco/src/components/Table3/util/editing.js.map +1 -1
  359. package/dist/esm/packages/taco/src/components/Tabs/Tabs.js +35 -34
  360. package/dist/esm/packages/taco/src/components/Tabs/Tabs.js.map +1 -1
  361. package/dist/esm/packages/taco/src/components/Tag/Tag.js +12 -12
  362. package/dist/esm/packages/taco/src/components/Tag/Tag.js.map +1 -1
  363. package/dist/esm/packages/taco/src/components/Textarea/Textarea.js +11 -8
  364. package/dist/esm/packages/taco/src/components/Textarea/Textarea.js.map +1 -1
  365. package/dist/esm/packages/taco/src/components/Toast/Toast.js +20 -19
  366. package/dist/esm/packages/taco/src/components/Toast/Toast.js.map +1 -1
  367. package/dist/esm/packages/taco/src/components/Toast/Toaster.js +96 -117
  368. package/dist/esm/packages/taco/src/components/Toast/Toaster.js.map +1 -1
  369. package/dist/esm/packages/taco/src/components/Toast/util.js +4 -6
  370. package/dist/esm/packages/taco/src/components/Toast/util.js.map +1 -1
  371. package/dist/esm/packages/taco/src/components/Tooltip/Tooltip.js +9 -10
  372. package/dist/esm/packages/taco/src/components/Tooltip/Tooltip.js.map +1 -1
  373. package/dist/esm/packages/taco/src/components/Tour/Tour.js +46 -49
  374. package/dist/esm/packages/taco/src/components/Tour/Tour.js.map +1 -1
  375. package/dist/esm/packages/taco/src/components/Treeview/Treeview.js +27 -33
  376. package/dist/esm/packages/taco/src/components/Treeview/Treeview.js.map +1 -1
  377. package/dist/esm/packages/taco/src/components/Truncate/Truncate.js +13 -15
  378. package/dist/esm/packages/taco/src/components/Truncate/Truncate.js.map +1 -1
  379. package/dist/esm/packages/taco/src/components/VisuallyHidden/VisuallyHidden.js +1 -1
  380. package/dist/esm/packages/taco/src/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
  381. package/dist/esm/packages/taco/src/hooks/useBoundaryOverflowDetection.js +6 -11
  382. package/dist/esm/packages/taco/src/hooks/useBoundaryOverflowDetection.js.map +1 -1
  383. package/dist/esm/packages/taco/src/hooks/useBoundingClientRectListener.js +13 -19
  384. package/dist/esm/packages/taco/src/hooks/useBoundingClientRectListener.js.map +1 -1
  385. package/dist/esm/packages/taco/src/hooks/useGlobalKeyDown.js +4 -4
  386. package/dist/esm/packages/taco/src/hooks/useGlobalKeyDown.js.map +1 -1
  387. package/dist/esm/packages/taco/src/hooks/useId.js +2 -4
  388. package/dist/esm/packages/taco/src/hooks/useId.js.map +1 -1
  389. package/dist/esm/packages/taco/src/hooks/useIntersectionObserver.js +18 -20
  390. package/dist/esm/packages/taco/src/hooks/useIntersectionObserver.js.map +1 -1
  391. package/dist/esm/packages/taco/src/hooks/useIsFormControl.js +5 -7
  392. package/dist/esm/packages/taco/src/hooks/useIsFormControl.js.map +1 -1
  393. package/dist/esm/packages/taco/src/hooks/useIsHoverStatePaused.js +5 -9
  394. package/dist/esm/packages/taco/src/hooks/useIsHoverStatePaused.js.map +1 -1
  395. package/dist/esm/packages/taco/src/hooks/useIsLargeScreen.js +1 -3
  396. package/dist/esm/packages/taco/src/hooks/useIsLargeScreen.js.map +1 -1
  397. package/dist/esm/packages/taco/src/hooks/useLazyEffect.js +2 -2
  398. package/dist/esm/packages/taco/src/hooks/useLazyEffect.js.map +1 -1
  399. package/dist/esm/packages/taco/src/hooks/useLocalStorage.js +22 -24
  400. package/dist/esm/packages/taco/src/hooks/useLocalStorage.js.map +1 -1
  401. package/dist/esm/packages/taco/src/hooks/useMatchMedia.js +6 -13
  402. package/dist/esm/packages/taco/src/hooks/useMatchMedia.js.map +1 -1
  403. package/dist/esm/packages/taco/src/hooks/useMergedRef.js +3 -3
  404. package/dist/esm/packages/taco/src/hooks/useMergedRef.js.map +1 -1
  405. package/dist/esm/packages/taco/src/hooks/usePrevious.js +2 -2
  406. package/dist/esm/packages/taco/src/hooks/usePrevious.js.map +1 -1
  407. package/dist/esm/packages/taco/src/primitives/BubbleSelect.js +14 -14
  408. package/dist/esm/packages/taco/src/primitives/BubbleSelect.js.map +1 -1
  409. package/dist/esm/packages/taco/src/primitives/Button.js +13 -16
  410. package/dist/esm/packages/taco/src/primitives/Button.js.map +1 -1
  411. package/dist/esm/packages/taco/src/primitives/Collection/components/Root.js +49 -53
  412. package/dist/esm/packages/taco/src/primitives/Collection/components/Root.js.map +1 -1
  413. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Context.js +2 -4
  414. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Context.js.map +1 -1
  415. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Group.js +5 -9
  416. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Group.js.map +1 -1
  417. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Option.js +18 -16
  418. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Option.js.map +1 -1
  419. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Root.js +40 -47
  420. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Root.js.map +1 -1
  421. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Title.js +10 -9
  422. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Title.js.map +1 -1
  423. package/dist/esm/packages/taco/src/primitives/Sortable/components/Container.js +20 -22
  424. package/dist/esm/packages/taco/src/primitives/Sortable/components/Container.js.map +1 -1
  425. package/dist/esm/packages/taco/src/primitives/Sortable/components/Item.js +27 -24
  426. package/dist/esm/packages/taco/src/primitives/Sortable/components/Item.js.map +1 -1
  427. package/dist/esm/packages/taco/src/primitives/Sortable/components/List.js +10 -11
  428. package/dist/esm/packages/taco/src/primitives/Sortable/components/List.js.map +1 -1
  429. package/dist/esm/packages/taco/src/primitives/Table/Core/Table.js +19 -22
  430. package/dist/esm/packages/taco/src/primitives/Table/Core/Table.js.map +1 -1
  431. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/Body.js +22 -25
  432. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/Body.js.map +1 -1
  433. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/EmptyStateBody.js +7 -7
  434. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/EmptyStateBody.js.map +1 -1
  435. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/util.js +14 -30
  436. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/util.js.map +1 -1
  437. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/BuiltIns/DisplayCell.js +19 -18
  438. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/BuiltIns/DisplayCell.js.map +1 -1
  439. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/BuiltIns/GroupedCell.js +34 -34
  440. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/BuiltIns/GroupedCell.js.map +1 -1
  441. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/Cell.js +12 -10
  442. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/Cell.js.map +1 -1
  443. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/util.js +18 -19
  444. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/util.js.map +1 -1
  445. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Actions.js +40 -42
  446. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Actions.js.map +1 -1
  447. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Drag.js +7 -5
  448. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Drag.js.map +1 -1
  449. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Expansion.js +24 -19
  450. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Expansion.js.map +1 -1
  451. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Selection.js +55 -56
  452. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Selection.js.map +1 -1
  453. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Footer.js +23 -27
  454. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Footer.js.map +1 -1
  455. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Summary.js +16 -13
  456. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Summary.js.map +1 -1
  457. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/Header.js +87 -86
  458. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/Header.js.map +1 -1
  459. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Goto.js +11 -14
  460. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Goto.js.map +1 -1
  461. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Menu.js +58 -85
  462. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Menu.js.map +1 -1
  463. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Resizer.js +20 -18
  464. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Resizer.js.map +1 -1
  465. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/SortIndicator.js +3 -3
  466. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/SortIndicator.js.map +1 -1
  467. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/util.js +6 -11
  468. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/util.js.map +1 -1
  469. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/DisplayRow.js +49 -58
  470. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/DisplayRow.js.map +1 -1
  471. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/SkeletonRow.js +32 -28
  472. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/SkeletonRow.js.map +1 -1
  473. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/Row.js +30 -35
  474. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/Row.js.map +1 -1
  475. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/RowContext.js +1 -1
  476. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/RowContext.js.map +1 -1
  477. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/Toolbar.js +11 -11
  478. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/Toolbar.js.map +1 -1
  479. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/FilterContext.js +1 -1
  480. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/FilterContext.js.map +1 -1
  481. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/Filters.js +22 -23
  482. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/Filters.js.map +1 -1
  483. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/ManageFiltersPopover.js +39 -54
  484. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/ManageFiltersPopover.js.map +1 -1
  485. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/Filter.js +37 -39
  486. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/Filter.js.map +1 -1
  487. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterColumn.js +16 -20
  488. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterColumn.js.map +1 -1
  489. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterComparator.js +15 -16
  490. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterComparator.js.map +1 -1
  491. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterValue.js +41 -50
  492. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterValue.js.map +1 -1
  493. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/util.js +9 -13
  494. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/util.js.map +1 -1
  495. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/Print.js +51 -57
  496. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/Print.js.map +1 -1
  497. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/PrintDialog.js +67 -71
  498. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/PrintDialog.js.map +1 -1
  499. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Search/Search.js +37 -40
  500. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Search/Search.js.map +1 -1
  501. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Settings/HideOrOrderPopover.js +44 -64
  502. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Settings/HideOrOrderPopover.js.map +1 -1
  503. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Settings/Settings.js +51 -62
  504. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Settings/Settings.js.map +1 -1
  505. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableGlobalShortcuts.js +6 -6
  506. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableGlobalShortcuts.js.map +1 -1
  507. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableRef.js +5 -13
  508. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableRef.js.map +1 -1
  509. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableRenderer.js +74 -90
  510. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableRenderer.js.map +1 -1
  511. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyle.js +15 -15
  512. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyle.js.map +1 -1
  513. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyleColumnFreezing.js +41 -31
  514. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyleColumnFreezing.js.map +1 -1
  515. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyleGrid.js +30 -31
  516. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyleGrid.js.map +1 -1
  517. package/dist/esm/packages/taco/src/primitives/Table/Core/listeners/useTableRowActiveListener.js +3 -3
  518. package/dist/esm/packages/taco/src/primitives/Table/Core/listeners/useTableRowActiveListener.js.map +1 -1
  519. package/dist/esm/packages/taco/src/primitives/Table/Core/useTable.js +15 -14
  520. package/dist/esm/packages/taco/src/primitives/Table/Core/useTable.js.map +1 -1
  521. package/dist/esm/packages/taco/src/primitives/Table/Core/util/rows.js +2 -2
  522. package/dist/esm/packages/taco/src/primitives/Table/Core/util/rows.js.map +1 -1
  523. package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader.js +38 -44
  524. package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader.js.map +1 -1
  525. package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader2.js +56 -64
  526. package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader2.js.map +1 -1
  527. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableColumnFreezing.js +6 -11
  528. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableColumnFreezing.js.map +1 -1
  529. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableColumnOrdering.js +2 -5
  530. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableColumnOrdering.js.map +1 -1
  531. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableFontSize.js +5 -15
  532. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableFontSize.js.map +1 -1
  533. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableFooter.js +2 -5
  534. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableFooter.js.map +1 -1
  535. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTablePrinting.js +16 -26
  536. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTablePrinting.js.map +1 -1
  537. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowActions.js +3 -9
  538. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowActions.js.map +1 -1
  539. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowActive.js +23 -42
  540. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowActive.js.map +1 -1
  541. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowClick.js +6 -9
  542. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowClick.js.map +1 -1
  543. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowDrag.js +4 -9
  544. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowDrag.js.map +1 -1
  545. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowDrop.js +2 -5
  546. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowDrop.js.map +1 -1
  547. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowExpansion.js +3 -9
  548. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowExpansion.js.map +1 -1
  549. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowGoto.js +2 -5
  550. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowGoto.js.map +1 -1
  551. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowGroups.js +1 -1
  552. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowGroups.js.map +1 -1
  553. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowHeight.js +5 -15
  554. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowHeight.js.map +1 -1
  555. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowSelection.js +9 -14
  556. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowSelection.js.map +1 -1
  557. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableSearch.js +13 -25
  558. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableSearch.js.map +1 -1
  559. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableServerLoading.js +26 -47
  560. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableServerLoading.js.map +1 -1
  561. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableSettings.js +24 -34
  562. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableSettings.js.map +1 -1
  563. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableDataListener.js +6 -7
  564. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableDataListener.js.map +1 -1
  565. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableFilterListener.js +3 -3
  566. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableFilterListener.js.map +1 -1
  567. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableFontSizeListener.js +16 -20
  568. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableFontSizeListener.js.map +1 -1
  569. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowHeightListener.js +2 -2
  570. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowHeightListener.js.map +1 -1
  571. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowSelectionListener.js +4 -6
  572. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowSelectionListener.js.map +1 -1
  573. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSearchListener.js +8 -8
  574. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSearchListener.js.map +1 -1
  575. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableServerLoadingListener.js +6 -6
  576. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableServerLoadingListener.js.map +1 -1
  577. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSettingsListener.js +6 -8
  578. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSettingsListener.js.map +1 -1
  579. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableShortcutsListener.js +17 -17
  580. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableShortcutsListener.js.map +1 -1
  581. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSortingListener.js +2 -2
  582. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSortingListener.js.map +1 -1
  583. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/useTableManager.js +56 -56
  584. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/useTableManager.js.map +1 -1
  585. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/columns.js +30 -59
  586. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/columns.js.map +1 -1
  587. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/dataTypes.js +8 -8
  588. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/dataTypes.js.map +1 -1
  589. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/filtering.js +19 -33
  590. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/filtering.js.map +1 -1
  591. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/presets.js +11 -11
  592. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/presets.js.map +1 -1
  593. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/search.js +20 -24
  594. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/search.js.map +1 -1
  595. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/settings.js +7 -6
  596. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/settings.js.map +1 -1
  597. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/setup.js +107 -139
  598. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/setup.js.map +1 -1
  599. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/sorting.js +1 -3
  600. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/sorting.js.map +1 -1
  601. package/dist/esm/packages/taco/src/types.js +1 -1
  602. package/dist/esm/packages/taco/src/types.js.map +1 -1
  603. package/dist/esm/packages/taco/src/utils/aria.js +2 -2
  604. package/dist/esm/packages/taco/src/utils/aria.js.map +1 -1
  605. package/dist/esm/packages/taco/src/utils/date.js +23 -47
  606. package/dist/esm/packages/taco/src/utils/date.js.map +1 -1
  607. package/dist/esm/packages/taco/src/utils/debounce.js +4 -10
  608. package/dist/esm/packages/taco/src/utils/debounce.js.map +1 -1
  609. package/dist/esm/packages/taco/src/utils/device.js +2 -4
  610. package/dist/esm/packages/taco/src/utils/device.js.map +1 -1
  611. package/dist/esm/packages/taco/src/utils/dom.js +23 -29
  612. package/dist/esm/packages/taco/src/utils/dom.js.map +1 -1
  613. package/dist/esm/packages/taco/src/utils/hooks/useDraggable.js +38 -40
  614. package/dist/esm/packages/taco/src/utils/hooks/useDraggable.js.map +1 -1
  615. package/dist/esm/packages/taco/src/utils/hooks/useDropTarget.js +7 -9
  616. package/dist/esm/packages/taco/src/utils/hooks/useDropTarget.js.map +1 -1
  617. package/dist/esm/packages/taco/src/utils/hooks/useListKeyboardNavigation.js +9 -20
  618. package/dist/esm/packages/taco/src/utils/hooks/useListKeyboardNavigation.js.map +1 -1
  619. package/dist/esm/packages/taco/src/utils/hooks/useListScrollTo.js +9 -9
  620. package/dist/esm/packages/taco/src/utils/hooks/useListScrollTo.js.map +1 -1
  621. package/dist/esm/packages/taco/src/utils/hooks/useOnClickOutside.js +6 -8
  622. package/dist/esm/packages/taco/src/utils/hooks/useOnClickOutside.js.map +1 -1
  623. package/dist/esm/packages/taco/src/utils/hooks/useTimer.js +11 -16
  624. package/dist/esm/packages/taco/src/utils/hooks/useTimer.js.map +1 -1
  625. package/dist/esm/packages/taco/src/utils/hooks/useTruncated.js +6 -11
  626. package/dist/esm/packages/taco/src/utils/hooks/useTruncated.js.map +1 -1
  627. package/dist/esm/packages/taco/src/utils/input.js +7 -10
  628. package/dist/esm/packages/taco/src/utils/input.js.map +1 -1
  629. package/dist/esm/packages/taco/src/utils/keyboard.js +5 -8
  630. package/dist/esm/packages/taco/src/utils/keyboard.js.map +1 -1
  631. package/dist/esm/packages/taco/src/utils/mergeRefs.js +2 -2
  632. package/dist/esm/packages/taco/src/utils/mergeRefs.js.map +1 -1
  633. package/dist/esm/packages/taco/src/utils/tailwind.js +5 -5
  634. package/dist/esm/packages/taco/src/utils/tailwind.js.map +1 -1
  635. package/dist/esm/packages/taco/tailwind.colors.js +1 -1
  636. package/dist/esm/packages/taco/tailwind.colors.js.map +1 -1
  637. package/dist/primitives/Table/useTableManager/listeners/useTableDataListener.d.ts +1 -1
  638. package/dist/taco.cjs.development.js +6928 -7878
  639. package/dist/taco.cjs.development.js.map +1 -1
  640. package/dist/taco.cjs.production.min.js +1 -1
  641. package/dist/taco.cjs.production.min.js.map +1 -1
  642. package/package.json +3 -2
  643. package/dist/esm/_virtual/_rollupPluginBabelHelpers.js +0 -63
  644. package/dist/esm/_virtual/_rollupPluginBabelHelpers.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"useCombobox.js","sources":["../../../../../../../src/components/Combobox/useCombobox.tsx"],"sourcesContent":["import * as React from 'react';\nimport { v4 as uuid } from 'uuid';\nimport debounce from 'lodash/debounce';\nimport { ComboboxProps } from './Combobox';\nimport {\n setInputValueByRef,\n getIndexFromValue,\n findByValue,\n useFlattenedData,\n sanitizeItem,\n getOptionParents,\n filterData,\n} from '../Listbox/util';\nimport { createCustomKeyboardEvent } from '../../utils/input';\nimport { useMergedRef } from '../../hooks/useMergedRef';\nimport { getId, ScrollableListItemValue, ScrollableListPropsWithRef } from '../Listbox/ScrollableList';\nimport { InputProps } from '../Input/Input';\nimport { isElementInsideTable3OrReport } from '../../utils/dom';\n\nconst debouncer = debounce(f => f(), 200);\n\nconst convertToInputValue = (value: ScrollableListItemValue | undefined) => String(value ?? '');\n\ntype useCombobox = React.HTMLAttributes<HTMLDivElement> & {\n combobox: React.HTMLAttributes<HTMLSpanElement>;\n input: Omit<InputProps, 'defaultValue'> & { ref: React.RefObject<HTMLInputElement> };\n list: ScrollableListPropsWithRef;\n button: { ref: any };\n popover: { open: boolean; onOpenChange: (open: boolean) => void };\n};\n\nexport const useCombobox = (\n {\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n data: unfilteredData = [],\n defaultValue,\n disabled,\n id: nativeId,\n inline,\n loading: __,\n onChange,\n onClick,\n onKeyDown,\n onSearch,\n readOnly,\n value,\n ...props\n }: Omit<ComboboxProps, 'dialog'>,\n ref: React.Ref<HTMLInputElement>\n): useCombobox => {\n const inputRef = useMergedRef<HTMLInputElement>(ref);\n const buttonRef = React.useRef<HTMLButtonElement>(null);\n const listRef = React.useRef<HTMLUListElement>(null);\n const [open, setOpen] = React.useState(false);\n const listId = React.useMemo(() => uuid(), []);\n const [inputValue, setInputValue] = React.useState<string>(convertToInputValue(value));\n const shouldFilterData = !onSearch && (!inline || (inline && inputValue !== convertToInputValue(value)));\n const flattenedData = useFlattenedData(unfilteredData);\n const data = React.useMemo(\n () => (shouldFilterData ? filterData(flattenedData, inputValue) : flattenedData),\n [shouldFilterData, inputValue, flattenedData]\n );\n // listbox/select change value _with_ the index, but combobox changes on select of an index (click/enter), so we need state\n const [currentIndex, setCurrentIndex] = React.useState<number | undefined>(\n inputValue !== undefined ? getIndexFromValue(data, inputValue) : undefined\n );\n\n const setInputValueByIndex = (index: number | undefined): void => {\n if (index !== undefined) {\n const option = data[index];\n\n if (option && !option.disabled) {\n setInputValueByRef(inputRef.current, option.value, 'focusout');\n }\n }\n };\n\n const setCurrentValue = (index: number | undefined) => {\n if (index === undefined) {\n return;\n }\n\n const option = data[index];\n\n // if the selected option is not already selected, trigger blur event\n if (option.value !== value) {\n setInputValueByIndex(index);\n } else {\n // if the selected option is already selected, refill input with its value\n setInputValue(convertToInputValue(value));\n }\n };\n\n // ensure the external value is synced with the internal value when mounting, e.g. incase a default value was set\n React.useEffect(() => {\n if (defaultValue && !value) {\n setInputValueByIndex(getIndexFromValue(data, defaultValue));\n }\n }, [data]);\n\n // update input value if it changed 'externally', e.g. clicking/entering an item in the listbox, from a modal etc\n React.useEffect(() => {\n if (value !== undefined && value !== inputValue) {\n setInputValue(convertToInputValue(value));\n }\n }, [value]);\n\n React.useEffect(() => {\n if (onSearch) {\n debouncer(() => {\n onSearch(inputValue);\n });\n }\n }, [inputValue]);\n\n // show listbox based on input value\n React.useEffect(() => {\n // don't show the popover if the internal (input) value already is the current value\n // this prevents the popover showing after selecting a value or pressing escape\n const isCurrentValue = value !== undefined && value !== null && inputValue === String(value);\n\n if (inputValue && data.length && !isCurrentValue) {\n setCurrentIndex(0);\n\n if (!open) {\n setOpen(true);\n }\n } else {\n setOpen(false);\n }\n }, [inputValue, data]);\n\n React.useEffect(() => {\n if (open) {\n setCurrentIndex(getIndexFromValue(data, inputValue) || 0);\n } else {\n setCurrentIndex(undefined);\n }\n }, [open]);\n\n // event handlers\n const handleInputBlur = (event: React.FocusEvent<HTMLInputElement>): void => {\n event.persist();\n\n if (listRef.current && event.relatedTarget === listRef.current) {\n event.preventDefault();\n return;\n }\n\n // event.target.value is always a string so it is important to cast value to a string before checking the equality\n if (onChange && event.target.value !== String(value)) {\n const item = findByValue(flattenedData, event.target.value);\n (event as any).detail = sanitizeItem(item);\n\n const parents = getOptionParents(flattenedData, item?.path);\n\n if (parents !== null && parents.length > 0) {\n (event as any).detail.parents = parents;\n }\n\n onChange(event);\n }\n\n if (props.onBlur) {\n props.onBlur(event);\n }\n };\n\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement>): void => {\n setInputValue(event.target.value);\n };\n\n const handleInputClick = (event: React.MouseEvent<HTMLInputElement>): void => {\n if (inline || (!open && inputValue && data.length)) {\n setOpen(true);\n }\n\n if (onClick) {\n event.persist();\n onClick(event);\n }\n };\n\n const handleInputKeyDown = (event: React.KeyboardEvent<HTMLInputElement>): void => {\n event.persist();\n\n if (!event.ctrlKey && !event.metaKey) {\n switch (event.key) {\n case 'Backspace': {\n return;\n }\n\n case 'Escape': {\n event.preventDefault();\n setInputValue(convertToInputValue(value));\n setOpen(false);\n return;\n }\n\n case 'Tab': {\n setCurrentValue(currentIndex);\n setOpen(false);\n return;\n }\n\n case 'Enter': {\n event.preventDefault();\n\n if (isElementInsideTable3OrReport(event.currentTarget)) {\n if (inline && !open) {\n setOpen(true);\n } else if (buttonRef.current && !open) {\n buttonRef.current.click();\n }\n }\n\n if (open) {\n setCurrentValue(currentIndex);\n setOpen(false);\n }\n\n return;\n }\n\n case 'ArrowDown':\n if (open) {\n event.preventDefault();\n } else {\n if (!inline && buttonRef.current && !isElementInsideTable3OrReport(event.currentTarget)) {\n buttonRef.current.click();\n }\n }\n break;\n\n case 'ArrowUp':\n case 'Home':\n case 'End': {\n if (open) {\n event.preventDefault();\n }\n break;\n }\n\n default:\n }\n\n // we aren't focused on the list, so manually forward the keydown event to it\n if (listRef.current) {\n listRef.current.dispatchEvent(createCustomKeyboardEvent(event));\n }\n\n if (inline && !open) {\n if (\n (event.key === 'ArrowUp' || event.key === 'ArrowDown') &&\n !isElementInsideTable3OrReport(event.currentTarget)\n ) {\n event.preventDefault();\n const initialIndex = event.key === 'ArrowUp' ? data.length - 1 : 0;\n setCurrentIndex(currentIndex !== undefined ? currentIndex : initialIndex);\n setOpen(true);\n }\n }\n }\n\n if (!event.isDefaultPrevented() && onKeyDown) {\n event.persist();\n onKeyDown(event);\n }\n };\n\n const handleListboxChange = (index: number): void => {\n setCurrentIndex(index);\n };\n\n const handleListboxClick = (event: React.MouseEvent<HTMLLIElement>, index: number): void => {\n event.preventDefault();\n setCurrentValue(index);\n setOpen(false);\n };\n\n const combobox = {\n 'aria-expanded': open,\n 'aria-owns': listId,\n 'aria-haspopup': 'listbox' as const,\n role: 'combobox',\n };\n\n const input = {\n ...props,\n 'aria-controls': listId,\n // Indicates that the autocomplete behavior of the text input is to suggest a list of possible values in a popup and that the suggestions\n // are related to the string that is present in the textbox\n 'aria-autocomplete': 'list' as const,\n // Enables assistive technologies to know which element the application regards as focused while DOM focus remains on the input element\n 'aria-activedescendant':\n currentIndex !== undefined && data[currentIndex] ? getId(listId, String(data[currentIndex].value)) : undefined,\n 'aria-labelledby': ariaLabelledBy,\n disabled,\n onBlur: !disabled && !readOnly ? handleInputBlur : undefined,\n onChange: !disabled && !readOnly ? handleInputChange : undefined,\n onClick: !disabled && !readOnly ? handleInputClick : undefined,\n onKeyDown: !disabled && !readOnly ? handleInputKeyDown : undefined,\n readOnly,\n ref: inputRef,\n type: 'text',\n value: inputValue ?? '',\n };\n\n const list: ScrollableListPropsWithRef = {\n 'aria-labelledby': ariaLabelledBy,\n data,\n disabled,\n id: listId,\n onChange: handleListboxChange,\n onClick: handleListboxClick,\n ref: listRef,\n scrollOnFocus: false,\n tabIndex: -1,\n value: currentIndex,\n };\n\n const button = {\n ref: buttonRef,\n };\n\n return {\n combobox,\n input,\n list,\n button,\n popover: {\n open,\n onOpenChange: setOpen,\n //visible: !data.length ? false : open,\n },\n };\n};\n"],"names":["debouncer","debounce","f","convertToInputValue","value","String","useCombobox","_ref","ref","ariaLabelledBy","_ref$data","data","unfilteredData","defaultValue","disabled","inline","onChange","onClick","onKeyDown","onSearch","readOnly","props","_objectWithoutPropertiesLoose","_excluded","inputRef","useMergedRef","buttonRef","React","listRef","_React$useState","open","setOpen","listId","uuid","_React$useState2","inputValue","setInputValue","shouldFilterData","flattenedData","useFlattenedData","filterData","_React$useState3","undefined","getIndexFromValue","currentIndex","setCurrentIndex","setInputValueByIndex","index","option","setInputValueByRef","current","setCurrentValue","isCurrentValue","length","handleInputBlur","event","persist","relatedTarget","preventDefault","target","item","findByValue","detail","sanitizeItem","parents","getOptionParents","path","onBlur","handleInputChange","handleInputClick","handleInputKeyDown","ctrlKey","metaKey","key","isElementInsideTable3OrReport","currentTarget","click","dispatchEvent","createCustomKeyboardEvent","initialIndex","isDefaultPrevented","handleListboxChange","handleListboxClick","combobox","role","input","_extends","getId","type","list","id","scrollOnFocus","tabIndex","button","popover","onOpenChange"],"mappings":"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"}
1
+ {"version":3,"file":"useCombobox.js","sources":["../../../../../../../src/components/Combobox/useCombobox.tsx"],"sourcesContent":["import * as React from 'react';\nimport { v4 as uuid } from 'uuid';\nimport debounce from 'lodash/debounce';\nimport { ComboboxProps } from './Combobox';\nimport {\n setInputValueByRef,\n getIndexFromValue,\n findByValue,\n useFlattenedData,\n sanitizeItem,\n getOptionParents,\n filterData,\n} from '../Listbox/util';\nimport { createCustomKeyboardEvent } from '../../utils/input';\nimport { useMergedRef } from '../../hooks/useMergedRef';\nimport { getId, ScrollableListItemValue, ScrollableListPropsWithRef } from '../Listbox/ScrollableList';\nimport { InputProps } from '../Input/Input';\nimport { isElementInsideTable3OrReport } from '../../utils/dom';\n\nconst debouncer = debounce(f => f(), 200);\n\nconst convertToInputValue = (value: ScrollableListItemValue | undefined) => String(value ?? '');\n\ntype useCombobox = React.HTMLAttributes<HTMLDivElement> & {\n combobox: React.HTMLAttributes<HTMLSpanElement>;\n input: Omit<InputProps, 'defaultValue'> & { ref: React.RefObject<HTMLInputElement> };\n list: ScrollableListPropsWithRef;\n button: { ref: any };\n popover: { open: boolean; onOpenChange: (open: boolean) => void };\n};\n\nexport const useCombobox = (\n {\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n data: unfilteredData = [],\n defaultValue,\n disabled,\n id: nativeId,\n inline,\n loading: __,\n onChange,\n onClick,\n onKeyDown,\n onSearch,\n readOnly,\n value,\n ...props\n }: Omit<ComboboxProps, 'dialog'>,\n ref: React.Ref<HTMLInputElement>\n): useCombobox => {\n const inputRef = useMergedRef<HTMLInputElement>(ref);\n const buttonRef = React.useRef<HTMLButtonElement>(null);\n const listRef = React.useRef<HTMLUListElement>(null);\n const [open, setOpen] = React.useState(false);\n const listId = React.useMemo(() => uuid(), []);\n const [inputValue, setInputValue] = React.useState<string>(convertToInputValue(value));\n const shouldFilterData = !onSearch && (!inline || (inline && inputValue !== convertToInputValue(value)));\n const flattenedData = useFlattenedData(unfilteredData);\n const data = React.useMemo(\n () => (shouldFilterData ? filterData(flattenedData, inputValue) : flattenedData),\n [shouldFilterData, inputValue, flattenedData]\n );\n // listbox/select change value _with_ the index, but combobox changes on select of an index (click/enter), so we need state\n const [currentIndex, setCurrentIndex] = React.useState<number | undefined>(\n inputValue !== undefined ? getIndexFromValue(data, inputValue) : undefined\n );\n\n const setInputValueByIndex = (index: number | undefined): void => {\n if (index !== undefined) {\n const option = data[index];\n\n if (option && !option.disabled) {\n setInputValueByRef(inputRef.current, option.value, 'focusout');\n }\n }\n };\n\n const setCurrentValue = (index: number | undefined) => {\n if (index === undefined) {\n return;\n }\n\n const option = data[index];\n\n // if the selected option is not already selected, trigger blur event\n if (option.value !== value) {\n setInputValueByIndex(index);\n } else {\n // if the selected option is already selected, refill input with its value\n setInputValue(convertToInputValue(value));\n }\n };\n\n // ensure the external value is synced with the internal value when mounting, e.g. incase a default value was set\n React.useEffect(() => {\n if (defaultValue && !value) {\n setInputValueByIndex(getIndexFromValue(data, defaultValue));\n }\n }, [data]);\n\n // update input value if it changed 'externally', e.g. clicking/entering an item in the listbox, from a modal etc\n React.useEffect(() => {\n if (value !== undefined && value !== inputValue) {\n setInputValue(convertToInputValue(value));\n }\n }, [value]);\n\n React.useEffect(() => {\n if (onSearch) {\n debouncer(() => {\n onSearch(inputValue);\n });\n }\n }, [inputValue]);\n\n // show listbox based on input value\n React.useEffect(() => {\n // don't show the popover if the internal (input) value already is the current value\n // this prevents the popover showing after selecting a value or pressing escape\n const isCurrentValue = value !== undefined && value !== null && inputValue === String(value);\n\n if (inputValue && data.length && !isCurrentValue) {\n setCurrentIndex(0);\n\n if (!open) {\n setOpen(true);\n }\n } else {\n setOpen(false);\n }\n }, [inputValue, data]);\n\n React.useEffect(() => {\n if (open) {\n setCurrentIndex(getIndexFromValue(data, inputValue) || 0);\n } else {\n setCurrentIndex(undefined);\n }\n }, [open]);\n\n // event handlers\n const handleInputBlur = (event: React.FocusEvent<HTMLInputElement>): void => {\n event.persist();\n\n if (listRef.current && event.relatedTarget === listRef.current) {\n event.preventDefault();\n return;\n }\n\n // event.target.value is always a string so it is important to cast value to a string before checking the equality\n if (onChange && event.target.value !== String(value)) {\n const item = findByValue(flattenedData, event.target.value);\n (event as any).detail = sanitizeItem(item);\n\n const parents = getOptionParents(flattenedData, item?.path);\n\n if (parents !== null && parents.length > 0) {\n (event as any).detail.parents = parents;\n }\n\n onChange(event);\n }\n\n if (props.onBlur) {\n props.onBlur(event);\n }\n };\n\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement>): void => {\n setInputValue(event.target.value);\n };\n\n const handleInputClick = (event: React.MouseEvent<HTMLInputElement>): void => {\n if (inline || (!open && inputValue && data.length)) {\n setOpen(true);\n }\n\n if (onClick) {\n event.persist();\n onClick(event);\n }\n };\n\n const handleInputKeyDown = (event: React.KeyboardEvent<HTMLInputElement>): void => {\n event.persist();\n\n if (!event.ctrlKey && !event.metaKey) {\n switch (event.key) {\n case 'Backspace': {\n return;\n }\n\n case 'Escape': {\n event.preventDefault();\n setInputValue(convertToInputValue(value));\n setOpen(false);\n return;\n }\n\n case 'Tab': {\n setCurrentValue(currentIndex);\n setOpen(false);\n return;\n }\n\n case 'Enter': {\n event.preventDefault();\n\n if (isElementInsideTable3OrReport(event.currentTarget)) {\n if (inline && !open) {\n setOpen(true);\n } else if (buttonRef.current && !open) {\n buttonRef.current.click();\n }\n }\n\n if (open) {\n setCurrentValue(currentIndex);\n setOpen(false);\n }\n\n return;\n }\n\n case 'ArrowDown':\n if (open) {\n event.preventDefault();\n } else {\n if (!inline && buttonRef.current && !isElementInsideTable3OrReport(event.currentTarget)) {\n buttonRef.current.click();\n }\n }\n break;\n\n case 'ArrowUp':\n case 'Home':\n case 'End': {\n if (open) {\n event.preventDefault();\n }\n break;\n }\n\n default:\n }\n\n // we aren't focused on the list, so manually forward the keydown event to it\n if (listRef.current) {\n listRef.current.dispatchEvent(createCustomKeyboardEvent(event));\n }\n\n if (inline && !open) {\n if (\n (event.key === 'ArrowUp' || event.key === 'ArrowDown') &&\n !isElementInsideTable3OrReport(event.currentTarget)\n ) {\n event.preventDefault();\n const initialIndex = event.key === 'ArrowUp' ? data.length - 1 : 0;\n setCurrentIndex(currentIndex !== undefined ? currentIndex : initialIndex);\n setOpen(true);\n }\n }\n }\n\n if (!event.isDefaultPrevented() && onKeyDown) {\n event.persist();\n onKeyDown(event);\n }\n };\n\n const handleListboxChange = (index: number): void => {\n setCurrentIndex(index);\n };\n\n const handleListboxClick = (event: React.MouseEvent<HTMLLIElement>, index: number): void => {\n event.preventDefault();\n setCurrentValue(index);\n setOpen(false);\n };\n\n const combobox = {\n 'aria-expanded': open,\n 'aria-owns': listId,\n 'aria-haspopup': 'listbox' as const,\n role: 'combobox',\n };\n\n const input = {\n ...props,\n 'aria-controls': listId,\n // Indicates that the autocomplete behavior of the text input is to suggest a list of possible values in a popup and that the suggestions\n // are related to the string that is present in the textbox\n 'aria-autocomplete': 'list' as const,\n // Enables assistive technologies to know which element the application regards as focused while DOM focus remains on the input element\n 'aria-activedescendant':\n currentIndex !== undefined && data[currentIndex] ? getId(listId, String(data[currentIndex].value)) : undefined,\n 'aria-labelledby': ariaLabelledBy,\n disabled,\n onBlur: !disabled && !readOnly ? handleInputBlur : undefined,\n onChange: !disabled && !readOnly ? handleInputChange : undefined,\n onClick: !disabled && !readOnly ? handleInputClick : undefined,\n onKeyDown: !disabled && !readOnly ? handleInputKeyDown : undefined,\n readOnly,\n ref: inputRef,\n type: 'text',\n value: inputValue ?? '',\n };\n\n const list: ScrollableListPropsWithRef = {\n 'aria-labelledby': ariaLabelledBy,\n data,\n disabled,\n id: listId,\n onChange: handleListboxChange,\n onClick: handleListboxClick,\n ref: listRef,\n scrollOnFocus: false,\n tabIndex: -1,\n value: currentIndex,\n };\n\n const button = {\n ref: buttonRef,\n };\n\n return {\n combobox,\n input,\n list,\n button,\n popover: {\n open,\n onOpenChange: setOpen,\n //visible: !data.length ? false : open,\n },\n };\n};\n"],"names":["debouncer","debounce","f","convertToInputValue","value","String","useCombobox","ariaLabel","ariaLabelledBy","data","unfilteredData","defaultValue","disabled","id","nativeId","inline","loading","__","onChange","onClick","onKeyDown","onSearch","readOnly","props","ref","inputRef","useMergedRef","buttonRef","React","listRef","open","setOpen","listId","uuid","inputValue","setInputValue","shouldFilterData","flattenedData","useFlattenedData","filterData","currentIndex","setCurrentIndex","undefined","getIndexFromValue","setInputValueByIndex","index","option","setInputValueByRef","current","setCurrentValue","isCurrentValue","length","handleInputBlur","event","persist","relatedTarget","preventDefault","target","item","findByValue","detail","sanitizeItem","parents","getOptionParents","path","onBlur","handleInputChange","handleInputClick","handleInputKeyDown","ctrlKey","metaKey","key","isElementInsideTable3OrReport","currentTarget","click","dispatchEvent","createCustomKeyboardEvent","initialIndex","isDefaultPrevented","handleListboxChange","handleListboxClick","combobox","role","input","getId","type","list","scrollOnFocus","tabIndex","button","popover","onOpenChange"],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  import { forwardRef, useRef, useCallback, createElement } from 'react';
2
2
  import cn from 'clsx';
3
- import { objectWithoutPropertiesLoose as _objectWithoutPropertiesLoose } from '../../../../../_virtual/_rollupPluginBabelHelpers.js';
4
3
  import { IconButton } from '../IconButton/IconButton.js';
5
4
  import { useLocalization } from '../Provider/Localization.js';
6
5
  import { Calendar } from '../Calendar/Calendar.js';
@@ -8,28 +7,31 @@ import { Input } from '../Input/Input.js';
8
7
  import { useDatepicker } from './useDatepicker.js';
9
8
  import { Popover } from '../Popover/Popover.js';
10
9
 
11
- var _excluded = ["className", "onReset", "style", "shortcuts", "shortcutsText"];
12
- var Datepicker = /*#__PURE__*/forwardRef(function Datepicker(props, ref) {
13
- var externalClassName = props.className,
14
- handleReset = props.onReset,
15
- style = props.style,
16
- shortcuts = props.shortcuts,
17
- shortcutsText = props.shortcutsText,
18
- otherProps = _objectWithoutPropertiesLoose(props, _excluded);
19
- var _useDatepicker = useDatepicker(otherProps, ref),
20
- calendar = _useDatepicker.calendar,
21
- input = _useDatepicker.input;
22
- var _useLocalization = useLocalization(),
23
- texts = _useLocalization.texts;
24
- var className = cn('inline-flex w-full text-black font-normal', externalClassName);
25
- var popoverContentRef = useRef(null);
26
- var handleOpenAutofocus = useCallback(function (e) {
10
+ const Datepicker = /*#__PURE__*/forwardRef(function Datepicker(props, ref) {
11
+ const {
12
+ className: externalClassName,
13
+ onReset: handleReset,
14
+ style,
15
+ shortcuts,
16
+ shortcutsText,
17
+ ...otherProps
18
+ } = props;
19
+ const {
20
+ calendar,
21
+ input
22
+ } = useDatepicker(otherProps, ref);
23
+ const {
24
+ texts
25
+ } = useLocalization();
26
+ const className = cn('inline-flex w-full text-black font-normal', externalClassName);
27
+ const popoverContentRef = useRef(null);
28
+ const handleOpenAutofocus = useCallback(e => {
27
29
  var _popoverContentRef$cu, _popoverContentRef$cu2;
28
30
  e.preventDefault();
29
- var currentDay = (_popoverContentRef$cu = popoverContentRef === null || popoverContentRef === void 0 ? void 0 : (_popoverContentRef$cu2 = popoverContentRef.current) === null || _popoverContentRef$cu2 === void 0 ? void 0 : _popoverContentRef$cu2.querySelector('table button[name="day"][aria-selected="true"]')) !== null && _popoverContentRef$cu !== void 0 ? _popoverContentRef$cu : null;
31
+ const currentDay = (_popoverContentRef$cu = popoverContentRef === null || popoverContentRef === void 0 ? void 0 : (_popoverContentRef$cu2 = popoverContentRef.current) === null || _popoverContentRef$cu2 === void 0 ? void 0 : _popoverContentRef$cu2.querySelector('table button[name="day"][aria-selected="true"]')) !== null && _popoverContentRef$cu !== void 0 ? _popoverContentRef$cu : null;
30
32
  currentDay === null || currentDay === void 0 ? void 0 : currentDay.focus();
31
33
  }, [popoverContentRef]);
32
- var handleCloseAutoFocus = useCallback(function (e) {
34
+ const handleCloseAutoFocus = useCallback(e => {
33
35
  var _input$ref$current;
34
36
  e.preventDefault();
35
37
  (_input$ref$current = input.ref.current) === null || _input$ref$current === void 0 ? void 0 : _input$ref$current.focus();
@@ -44,47 +46,42 @@ var Datepicker = /*#__PURE__*/forwardRef(function Datepicker(props, ref) {
44
46
  disabled: input.disabled || input.readOnly,
45
47
  icon: "calendar",
46
48
  tabIndex: -1,
47
- popover: function popover(props) {
48
- return /*#__PURE__*/createElement(Popover, Object.assign({}, props), /*#__PURE__*/createElement(Popover.Content, {
49
- onOpenAutoFocus: handleOpenAutofocus,
50
- onCloseAutoFocus: handleCloseAutoFocus
51
- }, function (_ref) {
52
- var close = _ref.close;
53
- return /*#__PURE__*/createElement("div", {
54
- className: '[&_button[name="day"]:focus]:yt-focus -m-3 flex',
55
- ref: popoverContentRef
56
- }, /*#__PURE__*/createElement(Calendar, Object.assign({}, calendar, {
57
- onChange: function onChange(date, event) {
58
- calendar.onChange(date, event);
59
- close();
60
- }
61
- })), shortcuts && (/*#__PURE__*/createElement("div", {
62
- className: "border-grey-300 flex flex-col border-l"
63
- }, /*#__PURE__*/createElement("span", {
64
- className: "m-4 mb-3 flex h-8 w-32 items-center text-xs font-semibold"
65
- }, shortcutsText !== null && shortcutsText !== void 0 ? shortcutsText : texts.datepicker.shortcuts), /*#__PURE__*/createElement("ul", null, shortcuts.map(function (shortcut) {
66
- return /*#__PURE__*/createElement("li", {
67
- key: shortcut.text
68
- }, /*#__PURE__*/createElement("button", {
69
- type: "button",
70
- className: "hover:wcag-grey-200 flex w-full items-start px-4 py-1 text-xs",
71
- onClick: function onClick(event) {
72
- event.persist();
73
- shortcut.onClick(event);
74
- close();
75
- }
76
- }, shortcut.text));
77
- })), handleReset && (/*#__PURE__*/createElement("button", {
78
- type: "button",
79
- className: "mx-auto my-4 mt-auto inline-flex cursor-pointer border-none bg-transparent text-xs text-blue-500 hover:text-blue-300",
80
- onClick: function onClick(event) {
81
- event.persist();
82
- handleReset(event);
83
- close();
84
- }
85
- }, texts.datepicker.clear)))));
86
- }));
87
- },
49
+ popover: props => (/*#__PURE__*/createElement(Popover, Object.assign({}, props), /*#__PURE__*/createElement(Popover.Content, {
50
+ onOpenAutoFocus: handleOpenAutofocus,
51
+ onCloseAutoFocus: handleCloseAutoFocus
52
+ }, ({
53
+ close
54
+ }) => (/*#__PURE__*/createElement("div", {
55
+ className: '[&_button[name="day"]:focus]:yt-focus -m-3 flex',
56
+ ref: popoverContentRef
57
+ }, /*#__PURE__*/createElement(Calendar, Object.assign({}, calendar, {
58
+ onChange: (date, event) => {
59
+ calendar.onChange(date, event);
60
+ close();
61
+ }
62
+ })), shortcuts && (/*#__PURE__*/createElement("div", {
63
+ className: "border-grey-300 flex flex-col border-l"
64
+ }, /*#__PURE__*/createElement("span", {
65
+ className: "m-4 mb-3 flex h-8 w-32 items-center text-xs font-semibold"
66
+ }, shortcutsText !== null && shortcutsText !== void 0 ? shortcutsText : texts.datepicker.shortcuts), /*#__PURE__*/createElement("ul", null, shortcuts.map(shortcut => (/*#__PURE__*/createElement("li", {
67
+ key: shortcut.text
68
+ }, /*#__PURE__*/createElement("button", {
69
+ type: "button",
70
+ className: "hover:wcag-grey-200 flex w-full items-start px-4 py-1 text-xs",
71
+ onClick: event => {
72
+ event.persist();
73
+ shortcut.onClick(event);
74
+ close();
75
+ }
76
+ }, shortcut.text))))), handleReset && (/*#__PURE__*/createElement("button", {
77
+ type: "button",
78
+ className: "mx-auto my-4 mt-auto inline-flex cursor-pointer border-none bg-transparent text-xs text-blue-500 hover:text-blue-300",
79
+ onClick: event => {
80
+ event.persist();
81
+ handleReset(event);
82
+ close();
83
+ }
84
+ }, texts.datepicker.clear))))))))),
88
85
  tooltip: texts.datepicker.calendar
89
86
  }))
90
87
  })));
@@ -1 +1 @@
1
- {"version":3,"file":"Datepicker.js","sources":["../../../../../../../src/components/Datepicker/Datepicker.tsx"],"sourcesContent":["import * as React from 'react';\nimport cn from 'clsx';\nimport { Calendar, CalendarProps } from '../Calendar/Calendar';\nimport { Input, InputProps } from '../Input/Input';\nimport { useLocalization } from '../Provider/Localization';\nimport { useDatepicker } from './useDatepicker';\nimport { IconButton } from '../IconButton/IconButton';\nimport { Popover } from '../Popover/Popover';\n\nexport type DatepickerTexts = {\n /** Aria-label for calendar */\n calendar: string;\n /** Clear button text */\n clear: string;\n /**\n * Aria-label for calendar icon button in the input.\n * Calendar will open when user clicks this icon button.\n */\n expand: string;\n /** Shortcut heading text */\n shortcuts: string;\n};\n\nexport type DatePickerShortcut = {\n onClick: (event: React.MouseEvent) => void;\n text: string;\n};\n\nexport type DatepickerProps = Omit<InputProps, 'value'> & {\n /** [Calendar](component:calendar) component associated with the DatePicker */\n calendar?: CalendarProps;\n /** List of shortcuts */\n shortcuts?: DatePickerShortcut[];\n /** Title for the shortcuts panel */\n shortcutsText?: string;\n /** Handler to be called when the clear button is clicked */\n onReset?: (event: React.MouseEvent<HTMLButtonElement>) => void;\n /**\n * Date value of the calendar.\n * This will be displayed in DatePicker's input in the format given to the [Provider](component:provider) component\n */\n value?: Date | string;\n};\n\nexport const Datepicker = React.forwardRef(function Datepicker(props: DatepickerProps, ref: React.Ref<HTMLInputElement>) {\n const { className: externalClassName, onReset: handleReset, style, shortcuts, shortcutsText, ...otherProps } = props;\n const { calendar, input } = useDatepicker(otherProps, ref);\n const { texts } = useLocalization();\n const className = cn('inline-flex w-full text-black font-normal', externalClassName);\n\n const popoverContentRef = React.useRef<HTMLDivElement>(null);\n\n const handleOpenAutofocus = React.useCallback(\n (e: Event) => {\n e.preventDefault();\n const currentDay: HTMLButtonElement | null =\n popoverContentRef?.current?.querySelector('table button[name=\"day\"][aria-selected=\"true\"]') ?? null;\n currentDay?.focus();\n },\n [popoverContentRef]\n );\n\n const handleCloseAutoFocus = React.useCallback(\n (e: Event) => {\n e.preventDefault();\n input.ref.current?.focus();\n },\n [input.ref]\n );\n\n return (\n <span className={className} data-taco=\"datepicker\" style={style}>\n <Input\n {...input}\n button={\n input.readOnly ? undefined : (\n <IconButton\n aria-label={texts.datepicker.expand}\n disabled={input.disabled || input.readOnly}\n icon=\"calendar\"\n tabIndex={-1}\n popover={props => (\n <Popover {...props}>\n <Popover.Content\n onOpenAutoFocus={handleOpenAutofocus}\n onCloseAutoFocus={handleCloseAutoFocus}>\n {({ close }) => (\n <div\n className='[&_button[name=\"day\"]:focus]:yt-focus -m-3 flex'\n ref={popoverContentRef}>\n <Calendar\n {...calendar}\n onChange={(date: Date, event?: React.MouseEvent<Element>) => {\n calendar.onChange(date, event);\n close();\n }}\n />\n {shortcuts && (\n <div className=\"border-grey-300 flex flex-col border-l\">\n <span className=\"m-4 mb-3 flex h-8 w-32 items-center text-xs font-semibold\">\n {shortcutsText ?? texts.datepicker.shortcuts}\n </span>\n <ul>\n {shortcuts.map(shortcut => (\n <li key={shortcut.text}>\n <button\n type=\"button\"\n className=\"hover:wcag-grey-200 flex w-full items-start px-4 py-1 text-xs\"\n onClick={event => {\n event.persist();\n shortcut.onClick(event);\n close();\n }}>\n {shortcut.text}\n </button>\n </li>\n ))}\n </ul>\n {handleReset && (\n <button\n type=\"button\"\n className=\"mx-auto my-4 mt-auto inline-flex cursor-pointer border-none bg-transparent text-xs text-blue-500 hover:text-blue-300\"\n onClick={event => {\n event.persist();\n handleReset(event);\n close();\n }}>\n {texts.datepicker.clear}\n </button>\n )}\n </div>\n )}\n </div>\n )}\n </Popover.Content>\n </Popover>\n )}\n tooltip={texts.datepicker.calendar}\n />\n )\n }\n />\n </span>\n );\n});\nDatepicker.displayName = 'Datepicker';\n"],"names":["Datepicker","React","props","ref","externalClassName","className","handleReset","onReset","style","shortcuts","shortcutsText","otherProps","_objectWithoutPropertiesLoose","_excluded","_useDatepicker","useDatepicker","calendar","input","_useLocalization","useLocalization","texts","cn","popoverContentRef","handleOpenAutofocus","e","preventDefault","currentDay","_popoverContentRef$cu","_popoverContentRef$cu2","current","querySelector","focus","handleCloseAutoFocus","_input$ref$current","Input","button","readOnly","undefined","IconButton","datepicker","expand","disabled","icon","tabIndex","popover","Popover","Content","onOpenAutoFocus","onCloseAutoFocus","_ref","close","Calendar","onChange","date","event","map","shortcut","key","text","type","onClick","persist","clear","tooltip","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"Datepicker.js","sources":["../../../../../../../src/components/Datepicker/Datepicker.tsx"],"sourcesContent":["import * as React from 'react';\nimport cn from 'clsx';\nimport { Calendar, CalendarProps } from '../Calendar/Calendar';\nimport { Input, InputProps } from '../Input/Input';\nimport { useLocalization } from '../Provider/Localization';\nimport { useDatepicker } from './useDatepicker';\nimport { IconButton } from '../IconButton/IconButton';\nimport { Popover } from '../Popover/Popover';\n\nexport type DatepickerTexts = {\n /** Aria-label for calendar */\n calendar: string;\n /** Clear button text */\n clear: string;\n /**\n * Aria-label for calendar icon button in the input.\n * Calendar will open when user clicks this icon button.\n */\n expand: string;\n /** Shortcut heading text */\n shortcuts: string;\n};\n\nexport type DatePickerShortcut = {\n onClick: (event: React.MouseEvent) => void;\n text: string;\n};\n\nexport type DatepickerProps = Omit<InputProps, 'value'> & {\n /** [Calendar](component:calendar) component associated with the DatePicker */\n calendar?: CalendarProps;\n /** List of shortcuts */\n shortcuts?: DatePickerShortcut[];\n /** Title for the shortcuts panel */\n shortcutsText?: string;\n /** Handler to be called when the clear button is clicked */\n onReset?: (event: React.MouseEvent<HTMLButtonElement>) => void;\n /**\n * Date value of the calendar.\n * This will be displayed in DatePicker's input in the format given to the [Provider](component:provider) component\n */\n value?: Date | string;\n};\n\nexport const Datepicker = React.forwardRef(function Datepicker(props: DatepickerProps, ref: React.Ref<HTMLInputElement>) {\n const { className: externalClassName, onReset: handleReset, style, shortcuts, shortcutsText, ...otherProps } = props;\n const { calendar, input } = useDatepicker(otherProps, ref);\n const { texts } = useLocalization();\n const className = cn('inline-flex w-full text-black font-normal', externalClassName);\n\n const popoverContentRef = React.useRef<HTMLDivElement>(null);\n\n const handleOpenAutofocus = React.useCallback(\n (e: Event) => {\n e.preventDefault();\n const currentDay: HTMLButtonElement | null =\n popoverContentRef?.current?.querySelector('table button[name=\"day\"][aria-selected=\"true\"]') ?? null;\n currentDay?.focus();\n },\n [popoverContentRef]\n );\n\n const handleCloseAutoFocus = React.useCallback(\n (e: Event) => {\n e.preventDefault();\n input.ref.current?.focus();\n },\n [input.ref]\n );\n\n return (\n <span className={className} data-taco=\"datepicker\" style={style}>\n <Input\n {...input}\n button={\n input.readOnly ? undefined : (\n <IconButton\n aria-label={texts.datepicker.expand}\n disabled={input.disabled || input.readOnly}\n icon=\"calendar\"\n tabIndex={-1}\n popover={props => (\n <Popover {...props}>\n <Popover.Content\n onOpenAutoFocus={handleOpenAutofocus}\n onCloseAutoFocus={handleCloseAutoFocus}>\n {({ close }) => (\n <div\n className='[&_button[name=\"day\"]:focus]:yt-focus -m-3 flex'\n ref={popoverContentRef}>\n <Calendar\n {...calendar}\n onChange={(date: Date, event?: React.MouseEvent<Element>) => {\n calendar.onChange(date, event);\n close();\n }}\n />\n {shortcuts && (\n <div className=\"border-grey-300 flex flex-col border-l\">\n <span className=\"m-4 mb-3 flex h-8 w-32 items-center text-xs font-semibold\">\n {shortcutsText ?? texts.datepicker.shortcuts}\n </span>\n <ul>\n {shortcuts.map(shortcut => (\n <li key={shortcut.text}>\n <button\n type=\"button\"\n className=\"hover:wcag-grey-200 flex w-full items-start px-4 py-1 text-xs\"\n onClick={event => {\n event.persist();\n shortcut.onClick(event);\n close();\n }}>\n {shortcut.text}\n </button>\n </li>\n ))}\n </ul>\n {handleReset && (\n <button\n type=\"button\"\n className=\"mx-auto my-4 mt-auto inline-flex cursor-pointer border-none bg-transparent text-xs text-blue-500 hover:text-blue-300\"\n onClick={event => {\n event.persist();\n handleReset(event);\n close();\n }}>\n {texts.datepicker.clear}\n </button>\n )}\n </div>\n )}\n </div>\n )}\n </Popover.Content>\n </Popover>\n )}\n tooltip={texts.datepicker.calendar}\n />\n )\n }\n />\n </span>\n );\n});\nDatepicker.displayName = 'Datepicker';\n"],"names":["Datepicker","React","props","ref","className","externalClassName","onReset","handleReset","style","shortcuts","shortcutsText","otherProps","calendar","input","useDatepicker","texts","useLocalization","cn","popoverContentRef","handleOpenAutofocus","e","preventDefault","currentDay","_popoverContentRef$cu","_popoverContentRef$cu2","current","querySelector","focus","handleCloseAutoFocus","_input$ref$current","Input","button","readOnly","undefined","IconButton","datepicker","expand","disabled","icon","tabIndex","popover","Popover","Content","onOpenAutoFocus","onCloseAutoFocus","close","Calendar","onChange","date","event","map","shortcut","key","text","type","onClick","persist","clear","tooltip","displayName"],"mappings":"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"}
@@ -1,37 +1,36 @@
1
1
  import { useState, useEffect } from 'react';
2
- import { objectWithoutPropertiesLoose as _objectWithoutPropertiesLoose, extends as _extends } from '../../../../../_virtual/_rollupPluginBabelHelpers.js';
3
2
  import { useMergedRef } from '../../hooks/useMergedRef.js';
4
3
  import { useLocalization } from '../Provider/Localization.js';
5
4
  import { setInputValueByRef } from '../../utils/input.js';
6
5
  import { format, parse, parseFromCustomString } from '../../utils/date.js';
7
6
 
8
- var _excluded = ["defaultValue", "calendar", "onBlur", "onChange", "value"];
9
- var useDatepicker = function useDatepicker(_ref, ref) {
7
+ const useDatepicker = ({
8
+ defaultValue: _,
9
+ calendar,
10
+ onBlur,
11
+ onChange,
12
+ value,
13
+ ...props
14
+ }, ref) => {
10
15
  var _format;
11
- var calendar = _ref.calendar,
12
- onBlur = _ref.onBlur,
13
- onChange = _ref.onChange,
14
- value = _ref.value,
15
- props = _objectWithoutPropertiesLoose(_ref, _excluded);
16
- var inputRef = useMergedRef(ref);
17
- var _useLocalization = useLocalization(),
18
- formatting = _useLocalization.formatting;
19
- var _React$useState = useState((_format = format(value, formatting.date)) !== null && _format !== void 0 ? _format : ''),
20
- internalValue = _React$useState[0],
21
- setInternalValue = _React$useState[1];
22
- var originalValueAsDate = parse(value);
16
+ const inputRef = useMergedRef(ref);
17
+ const {
18
+ formatting
19
+ } = useLocalization();
20
+ const [internalValue, setInternalValue] = useState((_format = format(value, formatting.date)) !== null && _format !== void 0 ? _format : '');
21
+ const originalValueAsDate = parse(value);
23
22
  // update internal value if it changed 'externally'
24
- useEffect(function () {
25
- var formattedValue = format(value, formatting.date);
23
+ useEffect(() => {
24
+ const formattedValue = format(value, formatting.date);
26
25
  if (formattedValue !== internalValue) {
27
26
  setInternalValue(formattedValue !== null && formattedValue !== void 0 ? formattedValue : '');
28
27
  }
29
28
  }, [value]);
30
29
  // event handlers
31
- var handleInputBlur = function handleInputBlur(event) {
30
+ const handleInputBlur = event => {
32
31
  event.persist();
33
- var valueAsDate = parseFromCustomString(event.target.value, 'dd.mm.yy', originalValueAsDate === null || originalValueAsDate === void 0 ? void 0 : originalValueAsDate.getMonth(), originalValueAsDate === null || originalValueAsDate === void 0 ? void 0 : originalValueAsDate.getFullYear());
34
- var formattedValue = valueAsDate ? format(valueAsDate) || '' : '';
32
+ const valueAsDate = parseFromCustomString(event.target.value, 'dd.mm.yy', originalValueAsDate === null || originalValueAsDate === void 0 ? void 0 : originalValueAsDate.getMonth(), originalValueAsDate === null || originalValueAsDate === void 0 ? void 0 : originalValueAsDate.getFullYear());
33
+ const formattedValue = valueAsDate ? format(valueAsDate) || '' : '';
35
34
  event.target.value = formattedValue;
36
35
  if (onChange) {
37
36
  event.detail = valueAsDate;
@@ -44,13 +43,13 @@ var useDatepicker = function useDatepicker(_ref, ref) {
44
43
  onBlur(event);
45
44
  }
46
45
  };
47
- var handleInputChange = function handleInputChange(event) {
46
+ const handleInputChange = event => {
48
47
  setInternalValue(event.target.value);
49
48
  };
50
- var handleChange = function handleChange(date) {
49
+ const handleChange = date => {
51
50
  setInputValueByRef(inputRef.current, format(date, formatting.date), 'focusout');
52
51
  };
53
- var handleKeyDown = function handleKeyDown(event) {
52
+ const handleKeyDown = event => {
54
53
  if (props.onKeyDown) {
55
54
  props.onKeyDown(event);
56
55
  }
@@ -60,7 +59,8 @@ var useDatepicker = function useDatepicker(_ref, ref) {
60
59
  }));
61
60
  }
62
61
  };
63
- var inputProps = _extends({}, props, {
62
+ const inputProps = {
63
+ ...props,
64
64
  autoComplete: 'off',
65
65
  onBlur: handleInputBlur,
66
66
  onChange: handleInputChange,
@@ -68,11 +68,12 @@ var useDatepicker = function useDatepicker(_ref, ref) {
68
68
  ref: inputRef,
69
69
  type: 'text',
70
70
  value: internalValue
71
- });
72
- var calendarProps = _extends({}, calendar, {
71
+ };
72
+ const calendarProps = {
73
+ ...calendar,
73
74
  onChange: handleChange,
74
75
  value: originalValueAsDate
75
- });
76
+ };
76
77
  return {
77
78
  input: inputProps,
78
79
  calendar: calendarProps
@@ -1 +1 @@
1
- {"version":3,"file":"useDatepicker.js","sources":["../../../../../../../src/components/Datepicker/useDatepicker.tsx"],"sourcesContent":["import * as React from 'react';\nimport { parseFromCustomString, format, parse } from '../../utils/date';\nimport { useLocalization } from '../Provider/Localization';\nimport { setInputValueByRef } from '../../utils/input';\nimport { useMergedRef } from '../../hooks/useMergedRef';\nimport { DatepickerProps } from './Datepicker';\nimport { CalendarProps } from '../Calendar/Calendar';\nimport { InputProps as BaseInputProps } from '../Input/Input';\n\ntype InputProps = BaseInputProps & { ref: React.RefObject<HTMLInputElement> };\ntype useDatepicker = React.HTMLAttributes<HTMLDivElement> & {\n calendar: CalendarProps;\n input: InputProps;\n};\n\nexport const useDatepicker = (\n { defaultValue: _, calendar, onBlur, onChange, value, ...props }: DatepickerProps,\n ref: React.Ref<HTMLInputElement>\n): useDatepicker => {\n const inputRef = useMergedRef<HTMLInputElement>(ref);\n const { formatting } = useLocalization();\n const [internalValue, setInternalValue] = React.useState(format(value, formatting.date) ?? '');\n const originalValueAsDate = parse(value);\n\n // update internal value if it changed 'externally'\n React.useEffect(() => {\n const formattedValue = format(value, formatting.date);\n\n if (formattedValue !== internalValue) {\n setInternalValue(formattedValue ?? '');\n }\n }, [value]);\n\n // event handlers\n const handleInputBlur = (event: React.FocusEvent<HTMLInputElement>): void => {\n event.persist();\n\n const valueAsDate = parseFromCustomString(\n event.target.value,\n 'dd.mm.yy',\n originalValueAsDate?.getMonth(),\n originalValueAsDate?.getFullYear()\n );\n const formattedValue = valueAsDate ? format(valueAsDate) || '' : '';\n\n event.target.value = formattedValue;\n\n if (onChange) {\n (event as any).detail = valueAsDate;\n onChange(event);\n } else {\n // update the internal value to use the formatted date\n setInternalValue(formattedValue);\n }\n\n if (onBlur) {\n onBlur(event);\n }\n };\n\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement>): void => {\n setInternalValue(event.target.value);\n };\n\n const handleChange = date => {\n setInputValueByRef(inputRef.current, format(date, formatting.date), 'focusout');\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (props.onKeyDown) {\n props.onKeyDown(event);\n }\n\n if (event.key === 'Enter') {\n event.target.dispatchEvent(new Event('focusout', { bubbles: true }));\n }\n };\n\n const inputProps: InputProps = {\n ...props,\n autoComplete: 'off',\n onBlur: handleInputBlur,\n onChange: handleInputChange,\n onKeyDown: handleKeyDown,\n ref: inputRef,\n type: 'text',\n value: internalValue,\n };\n\n const calendarProps: CalendarProps = {\n ...calendar,\n onChange: handleChange,\n value: originalValueAsDate,\n };\n\n return {\n input: inputProps,\n calendar: calendarProps,\n };\n};\n"],"names":["useDatepicker","_ref","ref","calendar","onBlur","onChange","value","props","_objectWithoutPropertiesLoose","_excluded","inputRef","useMergedRef","_useLocalization","useLocalization","formatting","_React$useState","React","_format","format","date","internalValue","setInternalValue","originalValueAsDate","parse","formattedValue","handleInputBlur","event","persist","valueAsDate","parseFromCustomString","target","getMonth","getFullYear","detail","handleInputChange","handleChange","setInputValueByRef","current","handleKeyDown","onKeyDown","key","dispatchEvent","Event","bubbles","inputProps","_extends","autoComplete","type","calendarProps","input"],"mappings":"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"}
1
+ {"version":3,"file":"useDatepicker.js","sources":["../../../../../../../src/components/Datepicker/useDatepicker.tsx"],"sourcesContent":["import * as React from 'react';\nimport { parseFromCustomString, format, parse } from '../../utils/date';\nimport { useLocalization } from '../Provider/Localization';\nimport { setInputValueByRef } from '../../utils/input';\nimport { useMergedRef } from '../../hooks/useMergedRef';\nimport { DatepickerProps } from './Datepicker';\nimport { CalendarProps } from '../Calendar/Calendar';\nimport { InputProps as BaseInputProps } from '../Input/Input';\n\ntype InputProps = BaseInputProps & { ref: React.RefObject<HTMLInputElement> };\ntype useDatepicker = React.HTMLAttributes<HTMLDivElement> & {\n calendar: CalendarProps;\n input: InputProps;\n};\n\nexport const useDatepicker = (\n { defaultValue: _, calendar, onBlur, onChange, value, ...props }: DatepickerProps,\n ref: React.Ref<HTMLInputElement>\n): useDatepicker => {\n const inputRef = useMergedRef<HTMLInputElement>(ref);\n const { formatting } = useLocalization();\n const [internalValue, setInternalValue] = React.useState(format(value, formatting.date) ?? '');\n const originalValueAsDate = parse(value);\n\n // update internal value if it changed 'externally'\n React.useEffect(() => {\n const formattedValue = format(value, formatting.date);\n\n if (formattedValue !== internalValue) {\n setInternalValue(formattedValue ?? '');\n }\n }, [value]);\n\n // event handlers\n const handleInputBlur = (event: React.FocusEvent<HTMLInputElement>): void => {\n event.persist();\n\n const valueAsDate = parseFromCustomString(\n event.target.value,\n 'dd.mm.yy',\n originalValueAsDate?.getMonth(),\n originalValueAsDate?.getFullYear()\n );\n const formattedValue = valueAsDate ? format(valueAsDate) || '' : '';\n\n event.target.value = formattedValue;\n\n if (onChange) {\n (event as any).detail = valueAsDate;\n onChange(event);\n } else {\n // update the internal value to use the formatted date\n setInternalValue(formattedValue);\n }\n\n if (onBlur) {\n onBlur(event);\n }\n };\n\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement>): void => {\n setInternalValue(event.target.value);\n };\n\n const handleChange = date => {\n setInputValueByRef(inputRef.current, format(date, formatting.date), 'focusout');\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (props.onKeyDown) {\n props.onKeyDown(event);\n }\n\n if (event.key === 'Enter') {\n event.target.dispatchEvent(new Event('focusout', { bubbles: true }));\n }\n };\n\n const inputProps: InputProps = {\n ...props,\n autoComplete: 'off',\n onBlur: handleInputBlur,\n onChange: handleInputChange,\n onKeyDown: handleKeyDown,\n ref: inputRef,\n type: 'text',\n value: internalValue,\n };\n\n const calendarProps: CalendarProps = {\n ...calendar,\n onChange: handleChange,\n value: originalValueAsDate,\n };\n\n return {\n input: inputProps,\n calendar: calendarProps,\n };\n};\n"],"names":["useDatepicker","defaultValue","_","calendar","onBlur","onChange","value","props","ref","inputRef","useMergedRef","formatting","useLocalization","internalValue","setInternalValue","React","_format","format","date","originalValueAsDate","parse","formattedValue","handleInputBlur","event","persist","valueAsDate","parseFromCustomString","target","getMonth","getFullYear","detail","handleInputChange","handleChange","setInputValueByRef","current","handleKeyDown","onKeyDown","key","dispatchEvent","Event","bubbles","inputProps","autoComplete","type","calendarProps","input"],"mappings":"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"}
@@ -1,24 +1,24 @@
1
1
  import { createContext, useContext } from 'react';
2
2
 
3
3
  /* eslint-disable @typescript-eslint/no-empty-function */
4
- var DialogContext = /*#__PURE__*/createContext({
4
+ const DialogContext = /*#__PURE__*/createContext({
5
5
  closeOnEscape: true,
6
6
  draggable: false,
7
7
  drawer: {
8
8
  open: false,
9
- toggle: function toggle() {}
9
+ toggle: () => {}
10
10
  },
11
11
  elements: {
12
12
  drawer: undefined,
13
13
  extra: undefined
14
14
  },
15
- onClose: function onClose() {},
15
+ onClose: () => {},
16
16
  props: {},
17
17
  ref: null,
18
18
  showCloseButton: true,
19
19
  size: 'sm'
20
20
  });
21
- var useCurrentDialog = function useCurrentDialog() {
21
+ const useCurrentDialog = () => {
22
22
  return useContext(DialogContext);
23
23
  };
24
24
 
@@ -1 +1 @@
1
- {"version":3,"file":"Context.js","sources":["../../../../../../../src/components/Dialog/Context.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-empty-function */\nimport * as React from 'react';\nimport { DialogSize } from './types';\n\nexport type DialogContext = {\n closeOnEscape: boolean;\n draggable: boolean;\n drawer: {\n open: boolean;\n toggle: () => void;\n };\n elements: {\n drawer?: React.ReactNode;\n extra?: React.ReactNode;\n };\n onClose?: () => void;\n props: Record<string, any>;\n ref: React.Ref<HTMLElement>;\n showCloseButton: boolean;\n size: DialogSize;\n};\n\nexport const DialogContext = React.createContext<DialogContext>({\n closeOnEscape: true,\n draggable: false,\n drawer: {\n open: false,\n toggle: () => {},\n },\n elements: {\n drawer: undefined,\n extra: undefined,\n },\n onClose: () => {},\n props: {},\n ref: null,\n showCloseButton: true,\n size: 'sm',\n});\n\nexport const useCurrentDialog = () => {\n return React.useContext(DialogContext);\n};\n"],"names":["DialogContext","React","closeOnEscape","draggable","drawer","open","toggle","elements","undefined","extra","onClose","props","ref","showCloseButton","size","useCurrentDialog"],"mappings":";;AAAA;IAsBaA,aAAa,gBAAGC,aAAmB,CAAgB;EAC5DC,aAAa,EAAE,IAAI;EACnBC,SAAS,EAAE,KAAK;EAChBC,MAAM,EAAE;IACJC,IAAI,EAAE,KAAK;IACXC,MAAM,EAAE,SAAAA;GACX;EACDC,QAAQ,EAAE;IACNH,MAAM,EAAEI,SAAS;IACjBC,KAAK,EAAED;GACV;EACDE,OAAO,EAAE,SAAAA,YAAQ;EACjBC,KAAK,EAAE,EAAE;EACTC,GAAG,EAAE,IAAI;EACTC,eAAe,EAAE,IAAI;EACrBC,IAAI,EAAE;CACT;IAEYC,gBAAgB,GAAG,SAAnBA,gBAAgBA;EACzB,OAAOd,UAAgB,CAACD,aAAa,CAAC;AAC1C;;;;"}
1
+ {"version":3,"file":"Context.js","sources":["../../../../../../../src/components/Dialog/Context.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-empty-function */\nimport * as React from 'react';\nimport { DialogSize } from './types';\n\nexport type DialogContext = {\n closeOnEscape: boolean;\n draggable: boolean;\n drawer: {\n open: boolean;\n toggle: () => void;\n };\n elements: {\n drawer?: React.ReactNode;\n extra?: React.ReactNode;\n };\n onClose?: () => void;\n props: Record<string, any>;\n ref: React.Ref<HTMLElement>;\n showCloseButton: boolean;\n size: DialogSize;\n};\n\nexport const DialogContext = React.createContext<DialogContext>({\n closeOnEscape: true,\n draggable: false,\n drawer: {\n open: false,\n toggle: () => {},\n },\n elements: {\n drawer: undefined,\n extra: undefined,\n },\n onClose: () => {},\n props: {},\n ref: null,\n showCloseButton: true,\n size: 'sm',\n});\n\nexport const useCurrentDialog = () => {\n return React.useContext(DialogContext);\n};\n"],"names":["DialogContext","React","closeOnEscape","draggable","drawer","open","toggle","elements","undefined","extra","onClose","props","ref","showCloseButton","size","useCurrentDialog"],"mappings":";;AAAA;MAsBaA,aAAa,gBAAGC,aAAmB,CAAgB;EAC5DC,aAAa,EAAE,IAAI;EACnBC,SAAS,EAAE,KAAK;EAChBC,MAAM,EAAE;IACJC,IAAI,EAAE,KAAK;IACXC,MAAM,EAAEA;GACX;EACDC,QAAQ,EAAE;IACNH,MAAM,EAAEI,SAAS;IACjBC,KAAK,EAAED;GACV;EACDE,OAAO,EAAEA,QAAQ;EACjBC,KAAK,EAAE,EAAE;EACTC,GAAG,EAAE,IAAI;EACTC,eAAe,EAAE,IAAI;EACrBC,IAAI,EAAE;CACT;MAEYC,gBAAgB,GAAGA;EAC5B,OAAOd,UAAgB,CAACD,aAAa,CAAC;AAC1C;;;;"}
@@ -1,5 +1,4 @@
1
1
  import { forwardRef, useMemo, Children, useState, createElement } from 'react';
2
- import { objectWithoutPropertiesLoose as _objectWithoutPropertiesLoose } from '../../../../../_virtual/_rollupPluginBabelHelpers.js';
3
2
  import { Root } from '@radix-ui/react-dialog';
4
3
  import { DialogContext } from './Context.js';
5
4
  import { Trigger } from './components/Trigger.js';
@@ -7,13 +6,12 @@ import { Content, Title, Footer, Close } from './components/Content.js';
7
6
  import { DialogDrawer } from './components/DialogDrawer.js';
8
7
  import { Extra } from './components/Extra.js';
9
8
 
10
- var _excluded = ["children", "closeOnEscape", "defaultOpen", "draggable", "onChange", "onClose", "open", "showCloseButton", "size", "trigger"];
11
- var useSeparatedChildren = function useSeparatedChildren(initialChildren) {
12
- return useMemo(function () {
13
- var children = [];
14
- var drawer;
15
- var extra;
16
- Children.toArray(initialChildren).forEach(function (child) {
9
+ const useSeparatedChildren = initialChildren => {
10
+ return useMemo(() => {
11
+ const children = [];
12
+ let drawer;
13
+ let extra;
14
+ Children.toArray(initialChildren).forEach(child => {
17
15
  var _child$type, _child$type2;
18
16
  if (((_child$type = child.type) === null || _child$type === void 0 ? void 0 : _child$type.displayName) === DialogDrawer.displayName) {
19
17
  drawer = child;
@@ -26,52 +24,39 @@ var useSeparatedChildren = function useSeparatedChildren(initialChildren) {
26
24
  return [children, drawer, extra];
27
25
  }, [initialChildren]);
28
26
  };
29
- var Dialog = /*#__PURE__*/forwardRef(function Dialog(props, ref) {
30
- var initialChildren = props.children,
31
- _props$closeOnEscape = props.closeOnEscape,
32
- closeOnEscape = _props$closeOnEscape === void 0 ? true : _props$closeOnEscape,
33
- defaultOpen = props.defaultOpen,
34
- _props$draggable = props.draggable,
35
- draggable = _props$draggable === void 0 ? false : _props$draggable,
36
- onChange = props.onChange,
37
- onClose = props.onClose,
38
- open = props.open,
39
- _props$showCloseButto = props.showCloseButton,
40
- showCloseButton = _props$showCloseButto === void 0 ? true : _props$showCloseButto,
41
- _props$size = props.size,
42
- size = _props$size === void 0 ? 'sm' : _props$size,
43
- trigger = props.trigger,
44
- otherProps = _objectWithoutPropertiesLoose(props, _excluded);
45
- var _useSeparatedChildren = useSeparatedChildren(initialChildren),
46
- children = _useSeparatedChildren[0],
47
- drawer = _useSeparatedChildren[1],
48
- extra = _useSeparatedChildren[2];
49
- var _React$useState = useState(false),
50
- drawerOpen = _React$useState[0],
51
- setDrawerOpen = _React$useState[1];
52
- var context = useMemo(function () {
53
- return {
54
- closeOnEscape: closeOnEscape,
55
- draggable: draggable,
56
- drawer: {
57
- open: drawerOpen,
58
- toggle: function toggle() {
59
- return setDrawerOpen(function (isDrawerOpen) {
60
- return !isDrawerOpen;
61
- });
62
- }
63
- },
64
- elements: {
65
- drawer: drawer,
66
- extra: extra
67
- },
68
- onClose: onClose,
69
- props: otherProps,
70
- showCloseButton: showCloseButton,
71
- size: size,
72
- ref: ref
73
- };
74
- }, [closeOnEscape, drawerOpen, draggable, drawer, extra, open, otherProps, showCloseButton]);
27
+ const Dialog = /*#__PURE__*/forwardRef(function Dialog(props, ref) {
28
+ const {
29
+ children: initialChildren,
30
+ closeOnEscape = true,
31
+ defaultOpen,
32
+ draggable = false,
33
+ onChange,
34
+ onClose,
35
+ open,
36
+ showCloseButton = true,
37
+ size = 'sm',
38
+ trigger,
39
+ ...otherProps
40
+ } = props;
41
+ const [children, drawer, extra] = useSeparatedChildren(initialChildren);
42
+ const [drawerOpen, setDrawerOpen] = useState(false);
43
+ const context = useMemo(() => ({
44
+ closeOnEscape,
45
+ draggable,
46
+ drawer: {
47
+ open: drawerOpen,
48
+ toggle: () => setDrawerOpen(isDrawerOpen => !isDrawerOpen)
49
+ },
50
+ elements: {
51
+ drawer,
52
+ extra
53
+ },
54
+ onClose,
55
+ props: otherProps,
56
+ showCloseButton,
57
+ size,
58
+ ref
59
+ }), [closeOnEscape, drawerOpen, draggable, drawer, extra, open, otherProps, showCloseButton]);
75
60
  return /*#__PURE__*/createElement(DialogContext.Provider, {
76
61
  value: context
77
62
  }, /*#__PURE__*/createElement(Root, {