@vuu-ui/vuu-ui-controls 2.1.18 → 2.1.19-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (745) hide show
  1. package/package.json +14 -17
  2. package/src/calendar/Calendar.css.js +10 -0
  3. package/src/calendar/Calendar.js +70 -0
  4. package/src/calendar/index.js +4 -0
  5. package/src/calendar/internal/CalendarCarousel.css.js +19 -0
  6. package/src/calendar/internal/CalendarCarousel.js +73 -0
  7. package/src/calendar/internal/CalendarContext.js +9 -0
  8. package/src/calendar/internal/CalendarDay.css.js +116 -0
  9. package/{esm → src}/calendar/internal/CalendarDay.js +33 -53
  10. package/src/calendar/internal/CalendarMonth.css.js +13 -0
  11. package/src/calendar/internal/CalendarMonth.js +43 -0
  12. package/src/calendar/internal/CalendarNavigation.css.js +24 -0
  13. package/src/calendar/internal/CalendarNavigation.js +185 -0
  14. package/src/calendar/internal/CalendarWeekHeader.css.js +23 -0
  15. package/src/calendar/internal/CalendarWeekHeader.js +31 -0
  16. package/src/calendar/internal/useFocusManagement.js +66 -0
  17. package/src/calendar/internal/utils.js +57 -0
  18. package/src/calendar/useCalendar.js +116 -0
  19. package/src/calendar/useCalendarDay.js +74 -0
  20. package/src/calendar/useSelection.js +202 -0
  21. package/src/column-picker/ColumnPicker.css.js +8 -0
  22. package/src/column-picker/ColumnPicker.js +108 -0
  23. package/src/column-picker/ColumnSearch.css.js +61 -0
  24. package/src/column-picker/ColumnSearch.js +66 -0
  25. package/src/column-picker/index.js +2 -0
  26. package/src/column-picker/moving-window.js +49 -0
  27. package/src/common-hooks/index.js +3 -0
  28. package/src/common-hooks/selectionTypes.js +8 -0
  29. package/src/common-hooks/use-resize-observer.js +122 -0
  30. package/src/common-hooks/useControlled.js +45 -0
  31. package/src/context-panel-provider/ContextPanelProvider.js +80 -0
  32. package/src/cycle-state-button/CycleStateButton.js +30 -0
  33. package/src/cycle-state-button/index.js +1 -0
  34. package/src/date-input/DateInput.css.js +195 -0
  35. package/src/date-input/DateInput.js +210 -0
  36. package/src/date-input/index.js +1 -0
  37. package/src/date-picker/DatePicker.js +137 -0
  38. package/src/date-picker/DatePickerContext.js +20 -0
  39. package/src/date-picker/DatePickerPanel.css.js +25 -0
  40. package/src/date-picker/DatePickerPanel.js +124 -0
  41. package/src/date-picker/index.js +1 -0
  42. package/src/drag-drop/DragDropProvider.js +123 -0
  43. package/src/drag-drop/DragDropState.js +25 -0
  44. package/src/drag-drop/Draggable.css.js +57 -0
  45. package/src/drag-drop/Draggable.js +77 -0
  46. package/src/drag-drop/DropIndicator.css.js +11 -0
  47. package/src/drag-drop/DropIndicator.js +28 -0
  48. package/{esm → src}/drag-drop/dragDropTypes.js +0 -2
  49. package/src/drag-drop/drop-target-utils.js +199 -0
  50. package/src/drag-drop/index.js +6 -0
  51. package/src/drag-drop/useAutoScroll.js +53 -0
  52. package/src/drag-drop/useDragDisplacers.js +126 -0
  53. package/src/drag-drop/useDragDrop.js +435 -0
  54. package/src/drag-drop/useDragDropCopy.js +22 -0
  55. package/src/drag-drop/useDragDropIndicator.js +182 -0
  56. package/src/drag-drop/useDragDropNaturalMovement.js +205 -0
  57. package/src/drag-drop/useDropIndicator.js +21 -0
  58. package/src/drag-drop/useGlobalDragDrop.js +67 -0
  59. package/src/drag-drop/useTransition.js +11 -0
  60. package/src/editable/index.js +1 -0
  61. package/src/editable/useEditableText.js +199 -0
  62. package/src/editable-label/EditableLabel.css.js +81 -0
  63. package/src/editable-label/EditableLabel.js +125 -0
  64. package/src/editable-label/index.js +1 -0
  65. package/src/expando-input/ExpandoInput.css.js +67 -0
  66. package/src/expando-input/ExpandoInput.js +40 -0
  67. package/src/expando-input/index.js +1 -0
  68. package/src/highlighter/Highlighter.css.js +8 -0
  69. package/src/highlighter/Highlighter.js +27 -0
  70. package/src/highlighter/index.js +1 -0
  71. package/src/hover-overlay/HoverOverlay.js +92 -0
  72. package/src/icon-button/Icon.css.js +8 -0
  73. package/src/icon-button/Icon.js +26 -0
  74. package/src/icon-button/IconButton.css.js +10 -0
  75. package/src/icon-button/IconButton.js +28 -0
  76. package/src/icon-button/ToggleIconButton.css.js +47 -0
  77. package/src/icon-button/ToggleIconButton.js +26 -0
  78. package/src/icon-button/index.js +3 -0
  79. package/src/index.js +31 -0
  80. package/src/instrument-picker/SearchCell.css.js +17 -0
  81. package/src/instrument-picker/SearchCell.js +29 -0
  82. package/src/instrument-picker/TablePicker.css.js +23 -0
  83. package/src/instrument-picker/TablePicker.js +89 -0
  84. package/src/instrument-picker/index.js +1 -0
  85. package/src/instrument-picker/moving-window.js +49 -0
  86. package/src/instrument-picker/useDataSource.js +38 -0
  87. package/src/instrument-picker/useTablePicker.js +136 -0
  88. package/src/measured-container/MeasuredContainer.css.js +11 -0
  89. package/src/measured-container/MeasuredContainer.js +50 -0
  90. package/src/measured-container/index.js +2 -0
  91. package/src/measured-container/useMeasuredContainer.js +156 -0
  92. package/src/modal-provider/ModalProvider.js +147 -0
  93. package/src/overflow-container/OverflowContainer.css.js +135 -0
  94. package/src/overflow-container/OverflowContainer.js +87 -0
  95. package/src/overflow-container/index.js +2 -0
  96. package/src/overflow-container/overflow-utils.js +211 -0
  97. package/src/overflow-container/useOverflowContainer.js +108 -0
  98. package/src/price-ticker/PriceTicker.css.js +32 -0
  99. package/src/price-ticker/PriceTicker.js +51 -0
  100. package/src/price-ticker/index.js +1 -0
  101. package/src/prompt/Prompt.css.js +48 -0
  102. package/src/prompt/Prompt.js +112 -0
  103. package/src/sortable-list/SortableList.js +39 -0
  104. package/src/split-button/SplitButton.css.js +117 -0
  105. package/src/split-button/SplitButton.js +60 -0
  106. package/src/split-button/SplitStateButton.css.js +66 -0
  107. package/src/split-button/SplitStateButton.js +23 -0
  108. package/src/split-button/index.js +2 -0
  109. package/src/split-button/useSplitButton.js +61 -0
  110. package/src/table-search/SearchCell.css.js +20 -0
  111. package/src/table-search/SearchCell.js +26 -0
  112. package/src/table-search/TableSearch.css.js +27 -0
  113. package/src/table-search/TableSearch.js +81 -0
  114. package/src/table-search/index.js +1 -0
  115. package/src/table-search/moving-window.js +49 -0
  116. package/src/table-search/useTableSearch.js +30 -0
  117. package/src/tabs-next/TabBar.css.js +26 -0
  118. package/src/tabs-next/TabBar.js +27 -0
  119. package/src/tabs-next/TabListNext.css.js +36 -0
  120. package/src/tabs-next/TabListNext.js +94 -0
  121. package/src/tabs-next/TabNext.css.js +76 -0
  122. package/src/tabs-next/TabNext.js +91 -0
  123. package/src/tabs-next/TabNextAction.js +26 -0
  124. package/src/tabs-next/TabNextContext.js +14 -0
  125. package/src/tabs-next/TabNextPanel.css.js +17 -0
  126. package/src/tabs-next/TabNextPanel.js +69 -0
  127. package/src/tabs-next/TabNextTrigger.css.js +22 -0
  128. package/src/tabs-next/TabNextTrigger.js +66 -0
  129. package/src/tabs-next/TabOverflowList.css.js +77 -0
  130. package/src/tabs-next/TabOverflowList.js +115 -0
  131. package/src/tabs-next/TabsNext.js +149 -0
  132. package/src/tabs-next/TabsNextContext.js +28 -0
  133. package/src/tabs-next/hooks/useCollection.js +80 -0
  134. package/src/tabs-next/hooks/useFocusOutside.js +23 -0
  135. package/src/tabs-next/hooks/useOverflow.js +118 -0
  136. package/src/tabs-next/index.js +7 -0
  137. package/src/tabstrip/Tab.css.js +148 -0
  138. package/src/tabstrip/Tab.js +107 -0
  139. package/src/tabstrip/TabMenu.css.js +8 -0
  140. package/src/tabstrip/TabMenu.js +48 -0
  141. package/src/tabstrip/TabMenuOptions.js +14 -0
  142. package/src/tabstrip/TabsTypes.js +0 -0
  143. package/src/tabstrip/Tabstrip.css.js +121 -0
  144. package/src/tabstrip/Tabstrip.js +106 -0
  145. package/src/tabstrip/ThemeTabstrip.css.js +20 -0
  146. package/src/tabstrip/index.js +4 -0
  147. package/src/tabstrip/tabstrip-dom-utils.js +11 -0
  148. package/src/tabstrip/useAnimatedSelectionThumb.js +68 -0
  149. package/src/tabstrip/useKeyboardNavigation.js +191 -0
  150. package/src/tabstrip/useSelection.js +50 -0
  151. package/src/tabstrip/useTabstrip.js +181 -0
  152. package/src/time-input/MaskedInput.js +285 -0
  153. package/src/time-input/TimeInput.css.js +39 -0
  154. package/src/time-input/TimeInput.js +37 -0
  155. package/src/time-input/useTimeInput.js +82 -0
  156. package/src/toolbar/Toolbar.css.js +46 -0
  157. package/src/toolbar/Toolbar.js +62 -0
  158. package/src/toolbar/index.js +1 -0
  159. package/src/toolbar/toolbar-dom-utils.js +11 -0
  160. package/src/toolbar/useKeyboardNavigation.js +240 -0
  161. package/src/toolbar/useSelection.js +82 -0
  162. package/src/toolbar/useToolbar.js +73 -0
  163. package/src/utils/deprecated-types.js +0 -0
  164. package/{esm → src}/utils/escapeRegExp.js +1 -3
  165. package/src/utils/forwardCallbackProps.js +15 -0
  166. package/src/utils/index.js +5 -0
  167. package/src/utils/isOverflowElement.js +2 -0
  168. package/src/utils/isPlainObject.js +2 -0
  169. package/src/vuu-date-picker/VuuDatePicker.js +92 -0
  170. package/src/vuu-date-picker/index.js +1 -0
  171. package/src/vuu-input/VuuInput.css.js +13 -0
  172. package/src/vuu-input/VuuInput.js +85 -0
  173. package/src/vuu-input/index.js +1 -0
  174. package/src/vuu-time-picker/TimeRangePicker.js +0 -0
  175. package/src/vuu-time-picker/VuuTimePicker.css.js +14 -0
  176. package/src/vuu-time-picker/VuuTimePicker.js +26 -0
  177. package/src/vuu-typeahead-input/VuuTypeaheadInput.css.js +49 -0
  178. package/src/vuu-typeahead-input/VuuTypeaheadInput.js +46 -0
  179. package/src/vuu-typeahead-input/index.js +1 -0
  180. package/src/vuu-typeahead-input/useVuuTypeaheadInput.js +140 -0
  181. package/types/calendar/useCalendar.d.ts +3 -3
  182. package/types/calendar/useSelection.d.ts +1 -1
  183. package/types/date-input/DateInput.d.ts +1 -1
  184. package/types/date-picker/DatePicker.d.ts +1 -1
  185. package/types/date-picker/DatePickerContext.d.ts +2 -2
  186. package/types/date-picker/DatePickerPanel.d.ts +1 -1
  187. package/types/instrument-picker/useTablePicker.d.ts +4 -4
  188. package/types/split-button/useSplitButton.d.ts +120 -120
  189. package/types/tabs-next/hooks/useOverflow.d.ts +1 -1
  190. package/types/tabstrip/Tab.d.ts +1 -1
  191. package/types/tabstrip/useTabstrip.d.ts +1 -1
  192. package/types/toolbar/useToolbar.d.ts +1 -1
  193. package/cjs/calendar/Calendar.css.js +0 -6
  194. package/cjs/calendar/Calendar.css.js.map +0 -1
  195. package/cjs/calendar/Calendar.js +0 -93
  196. package/cjs/calendar/Calendar.js.map +0 -1
  197. package/cjs/calendar/internal/CalendarCarousel.css.js +0 -6
  198. package/cjs/calendar/internal/CalendarCarousel.css.js.map +0 -1
  199. package/cjs/calendar/internal/CalendarCarousel.js +0 -75
  200. package/cjs/calendar/internal/CalendarCarousel.js.map +0 -1
  201. package/cjs/calendar/internal/CalendarContext.js +0 -19
  202. package/cjs/calendar/internal/CalendarContext.js.map +0 -1
  203. package/cjs/calendar/internal/CalendarDay.css.js +0 -6
  204. package/cjs/calendar/internal/CalendarDay.css.js.map +0 -1
  205. package/cjs/calendar/internal/CalendarDay.js +0 -86
  206. package/cjs/calendar/internal/CalendarDay.js.map +0 -1
  207. package/cjs/calendar/internal/CalendarMonth.css.js +0 -6
  208. package/cjs/calendar/internal/CalendarMonth.css.js.map +0 -1
  209. package/cjs/calendar/internal/CalendarMonth.js +0 -71
  210. package/cjs/calendar/internal/CalendarMonth.js.map +0 -1
  211. package/cjs/calendar/internal/CalendarNavigation.css.js +0 -6
  212. package/cjs/calendar/internal/CalendarNavigation.css.js.map +0 -1
  213. package/cjs/calendar/internal/CalendarNavigation.js +0 -236
  214. package/cjs/calendar/internal/CalendarNavigation.js.map +0 -1
  215. package/cjs/calendar/internal/CalendarWeekHeader.css.js +0 -6
  216. package/cjs/calendar/internal/CalendarWeekHeader.css.js.map +0 -1
  217. package/cjs/calendar/internal/CalendarWeekHeader.js +0 -43
  218. package/cjs/calendar/internal/CalendarWeekHeader.js.map +0 -1
  219. package/cjs/calendar/internal/useFocusManagement.js +0 -66
  220. package/cjs/calendar/internal/useFocusManagement.js.map +0 -1
  221. package/cjs/calendar/internal/utils.js +0 -64
  222. package/cjs/calendar/internal/utils.js.map +0 -1
  223. package/cjs/calendar/useCalendar.js +0 -163
  224. package/cjs/calendar/useCalendar.js.map +0 -1
  225. package/cjs/calendar/useCalendarDay.js +0 -80
  226. package/cjs/calendar/useCalendarDay.js.map +0 -1
  227. package/cjs/calendar/useSelection.js +0 -248
  228. package/cjs/calendar/useSelection.js.map +0 -1
  229. package/cjs/column-picker/ColumnPicker.css.js +0 -6
  230. package/cjs/column-picker/ColumnPicker.css.js.map +0 -1
  231. package/cjs/column-picker/ColumnPicker.js +0 -128
  232. package/cjs/column-picker/ColumnPicker.js.map +0 -1
  233. package/cjs/column-picker/ColumnSearch.css.js +0 -6
  234. package/cjs/column-picker/ColumnSearch.css.js.map +0 -1
  235. package/cjs/column-picker/ColumnSearch.js +0 -82
  236. package/cjs/column-picker/ColumnSearch.js.map +0 -1
  237. package/cjs/common-hooks/selectionTypes.js +0 -18
  238. package/cjs/common-hooks/selectionTypes.js.map +0 -1
  239. package/cjs/common-hooks/use-resize-observer.js +0 -123
  240. package/cjs/common-hooks/use-resize-observer.js.map +0 -1
  241. package/cjs/common-hooks/useControlled.js +0 -58
  242. package/cjs/common-hooks/useControlled.js.map +0 -1
  243. package/cjs/context-panel-provider/ContextPanelProvider.js +0 -99
  244. package/cjs/context-panel-provider/ContextPanelProvider.js.map +0 -1
  245. package/cjs/cycle-state-button/CycleStateButton.js +0 -50
  246. package/cjs/cycle-state-button/CycleStateButton.js.map +0 -1
  247. package/cjs/date-input/DateInput.css.js +0 -6
  248. package/cjs/date-input/DateInput.css.js.map +0 -1
  249. package/cjs/date-input/DateInput.js +0 -277
  250. package/cjs/date-input/DateInput.js.map +0 -1
  251. package/cjs/date-picker/DatePicker.js +0 -169
  252. package/cjs/date-picker/DatePicker.js.map +0 -1
  253. package/cjs/date-picker/DatePickerContext.js +0 -26
  254. package/cjs/date-picker/DatePickerContext.js.map +0 -1
  255. package/cjs/date-picker/DatePickerPanel.css.js +0 -6
  256. package/cjs/date-picker/DatePickerPanel.css.js.map +0 -1
  257. package/cjs/date-picker/DatePickerPanel.js +0 -146
  258. package/cjs/date-picker/DatePickerPanel.js.map +0 -1
  259. package/cjs/drag-drop/DragDropProvider.js +0 -145
  260. package/cjs/drag-drop/DragDropProvider.js.map +0 -1
  261. package/cjs/drag-drop/DragDropState.js +0 -36
  262. package/cjs/drag-drop/DragDropState.js.map +0 -1
  263. package/cjs/drag-drop/Draggable.css.js +0 -6
  264. package/cjs/drag-drop/Draggable.css.js.map +0 -1
  265. package/cjs/drag-drop/Draggable.js +0 -90
  266. package/cjs/drag-drop/Draggable.js.map +0 -1
  267. package/cjs/drag-drop/dragDropTypes.js +0 -8
  268. package/cjs/drag-drop/dragDropTypes.js.map +0 -1
  269. package/cjs/drag-drop/drop-target-utils.js +0 -245
  270. package/cjs/drag-drop/drop-target-utils.js.map +0 -1
  271. package/cjs/drag-drop/useAutoScroll.js +0 -71
  272. package/cjs/drag-drop/useAutoScroll.js.map +0 -1
  273. package/cjs/drag-drop/useDragDisplacers.js +0 -160
  274. package/cjs/drag-drop/useDragDisplacers.js.map +0 -1
  275. package/cjs/drag-drop/useDragDrop.js +0 -504
  276. package/cjs/drag-drop/useDragDrop.js.map +0 -1
  277. package/cjs/drag-drop/useDragDropCopy.js +0 -34
  278. package/cjs/drag-drop/useDragDropCopy.js.map +0 -1
  279. package/cjs/drag-drop/useDragDropIndicator.js +0 -251
  280. package/cjs/drag-drop/useDragDropIndicator.js.map +0 -1
  281. package/cjs/drag-drop/useDragDropNaturalMovement.js +0 -265
  282. package/cjs/drag-drop/useDragDropNaturalMovement.js.map +0 -1
  283. package/cjs/drag-drop/useDropIndicator.js +0 -27
  284. package/cjs/drag-drop/useDropIndicator.js.map +0 -1
  285. package/cjs/drag-drop/useGlobalDragDrop.js +0 -89
  286. package/cjs/drag-drop/useGlobalDragDrop.js.map +0 -1
  287. package/cjs/editable/useEditableText.js +0 -211
  288. package/cjs/editable/useEditableText.js.map +0 -1
  289. package/cjs/editable-label/EditableLabel.css.js +0 -6
  290. package/cjs/editable-label/EditableLabel.css.js.map +0 -1
  291. package/cjs/editable-label/EditableLabel.js +0 -143
  292. package/cjs/editable-label/EditableLabel.js.map +0 -1
  293. package/cjs/expando-input/ExpandoInput.css.js +0 -6
  294. package/cjs/expando-input/ExpandoInput.css.js.map +0 -1
  295. package/cjs/expando-input/ExpandoInput.js +0 -53
  296. package/cjs/expando-input/ExpandoInput.js.map +0 -1
  297. package/cjs/hover-overlay/HoverOverlay.js +0 -96
  298. package/cjs/hover-overlay/HoverOverlay.js.map +0 -1
  299. package/cjs/icon-button/Icon.css.js +0 -6
  300. package/cjs/icon-button/Icon.css.js.map +0 -1
  301. package/cjs/icon-button/Icon.js +0 -37
  302. package/cjs/icon-button/Icon.js.map +0 -1
  303. package/cjs/icon-button/IconButton.css.js +0 -6
  304. package/cjs/icon-button/IconButton.css.js.map +0 -1
  305. package/cjs/icon-button/IconButton.js +0 -26
  306. package/cjs/icon-button/IconButton.js.map +0 -1
  307. package/cjs/icon-button/ToggleIconButton.css.js +0 -6
  308. package/cjs/icon-button/ToggleIconButton.css.js.map +0 -1
  309. package/cjs/icon-button/ToggleIconButton.js +0 -39
  310. package/cjs/icon-button/ToggleIconButton.js.map +0 -1
  311. package/cjs/index.js +0 -170
  312. package/cjs/index.js.map +0 -1
  313. package/cjs/instrument-picker/TablePicker.css.js +0 -6
  314. package/cjs/instrument-picker/TablePicker.css.js.map +0 -1
  315. package/cjs/instrument-picker/TablePicker.js +0 -130
  316. package/cjs/instrument-picker/TablePicker.js.map +0 -1
  317. package/cjs/instrument-picker/useTablePicker.js +0 -150
  318. package/cjs/instrument-picker/useTablePicker.js.map +0 -1
  319. package/cjs/measured-container/MeasuredContainer.css.js +0 -6
  320. package/cjs/measured-container/MeasuredContainer.css.js.map +0 -1
  321. package/cjs/measured-container/MeasuredContainer.js +0 -72
  322. package/cjs/measured-container/MeasuredContainer.js.map +0 -1
  323. package/cjs/measured-container/useMeasuredContainer.js +0 -167
  324. package/cjs/measured-container/useMeasuredContainer.js.map +0 -1
  325. package/cjs/modal-provider/ModalProvider.js +0 -143
  326. package/cjs/modal-provider/ModalProvider.js.map +0 -1
  327. package/cjs/overflow-container/OverflowContainer.css.js +0 -6
  328. package/cjs/overflow-container/OverflowContainer.css.js.map +0 -1
  329. package/cjs/overflow-container/OverflowContainer.js +0 -143
  330. package/cjs/overflow-container/OverflowContainer.js.map +0 -1
  331. package/cjs/overflow-container/overflow-utils.js +0 -286
  332. package/cjs/overflow-container/overflow-utils.js.map +0 -1
  333. package/cjs/overflow-container/useOverflowContainer.js +0 -143
  334. package/cjs/overflow-container/useOverflowContainer.js.map +0 -1
  335. package/cjs/price-ticker/PriceTicker.css.js +0 -6
  336. package/cjs/price-ticker/PriceTicker.css.js.map +0 -1
  337. package/cjs/price-ticker/PriceTicker.js +0 -50
  338. package/cjs/price-ticker/PriceTicker.js.map +0 -1
  339. package/cjs/prompt/Prompt.css.js +0 -6
  340. package/cjs/prompt/Prompt.css.js.map +0 -1
  341. package/cjs/prompt/Prompt.js +0 -142
  342. package/cjs/prompt/Prompt.js.map +0 -1
  343. package/cjs/sortable-list/SortableList.js +0 -37
  344. package/cjs/sortable-list/SortableList.js.map +0 -1
  345. package/cjs/split-button/SplitButton.css.js +0 -6
  346. package/cjs/split-button/SplitButton.css.js.map +0 -1
  347. package/cjs/split-button/SplitButton.js +0 -84
  348. package/cjs/split-button/SplitButton.js.map +0 -1
  349. package/cjs/split-button/SplitStateButton.css.js +0 -6
  350. package/cjs/split-button/SplitStateButton.css.js.map +0 -1
  351. package/cjs/split-button/SplitStateButton.js +0 -31
  352. package/cjs/split-button/SplitStateButton.js.map +0 -1
  353. package/cjs/split-button/useSplitButton.js +0 -84
  354. package/cjs/split-button/useSplitButton.js.map +0 -1
  355. package/cjs/table-search/SearchCell.css.js +0 -6
  356. package/cjs/table-search/SearchCell.css.js.map +0 -1
  357. package/cjs/table-search/SearchCell.js +0 -32
  358. package/cjs/table-search/SearchCell.js.map +0 -1
  359. package/cjs/table-search/TableSearch.css.js +0 -6
  360. package/cjs/table-search/TableSearch.css.js.map +0 -1
  361. package/cjs/table-search/TableSearch.js +0 -89
  362. package/cjs/table-search/TableSearch.js.map +0 -1
  363. package/cjs/table-search/useTableSearch.js +0 -39
  364. package/cjs/table-search/useTableSearch.js.map +0 -1
  365. package/cjs/tabs-next/TabBar.css.js +0 -6
  366. package/cjs/tabs-next/TabBar.css.js.map +0 -1
  367. package/cjs/tabs-next/TabBar.js +0 -41
  368. package/cjs/tabs-next/TabBar.js.map +0 -1
  369. package/cjs/tabs-next/TabListNext.css.js +0 -6
  370. package/cjs/tabs-next/TabListNext.css.js.map +0 -1
  371. package/cjs/tabs-next/TabListNext.js +0 -124
  372. package/cjs/tabs-next/TabListNext.js.map +0 -1
  373. package/cjs/tabs-next/TabNext.css.js +0 -6
  374. package/cjs/tabs-next/TabNext.css.js.map +0 -1
  375. package/cjs/tabs-next/TabNext.js +0 -110
  376. package/cjs/tabs-next/TabNext.js.map +0 -1
  377. package/cjs/tabs-next/TabNextAction.js +0 -35
  378. package/cjs/tabs-next/TabNextAction.js.map +0 -1
  379. package/cjs/tabs-next/TabNextContext.js +0 -23
  380. package/cjs/tabs-next/TabNextContext.js.map +0 -1
  381. package/cjs/tabs-next/TabNextPanel.css.js +0 -6
  382. package/cjs/tabs-next/TabNextPanel.css.js.map +0 -1
  383. package/cjs/tabs-next/TabNextPanel.js +0 -77
  384. package/cjs/tabs-next/TabNextPanel.js.map +0 -1
  385. package/cjs/tabs-next/TabNextTrigger.css.js +0 -6
  386. package/cjs/tabs-next/TabNextTrigger.css.js.map +0 -1
  387. package/cjs/tabs-next/TabNextTrigger.js +0 -74
  388. package/cjs/tabs-next/TabNextTrigger.js.map +0 -1
  389. package/cjs/tabs-next/TabOverflowList.css.js +0 -6
  390. package/cjs/tabs-next/TabOverflowList.css.js.map +0 -1
  391. package/cjs/tabs-next/TabOverflowList.js +0 -130
  392. package/cjs/tabs-next/TabOverflowList.js.map +0 -1
  393. package/cjs/tabs-next/TabsNext.js +0 -174
  394. package/cjs/tabs-next/TabsNext.js.map +0 -1
  395. package/cjs/tabs-next/TabsNextContext.js +0 -33
  396. package/cjs/tabs-next/TabsNextContext.js.map +0 -1
  397. package/cjs/tabs-next/hooks/useCollection.js +0 -91
  398. package/cjs/tabs-next/hooks/useCollection.js.map +0 -1
  399. package/cjs/tabs-next/hooks/useFocusOutside.js +0 -24
  400. package/cjs/tabs-next/hooks/useFocusOutside.js.map +0 -1
  401. package/cjs/tabs-next/hooks/useOverflow.js +0 -138
  402. package/cjs/tabs-next/hooks/useOverflow.js.map +0 -1
  403. package/cjs/tabstrip/Tab.css.js +0 -6
  404. package/cjs/tabstrip/Tab.css.js.map +0 -1
  405. package/cjs/tabstrip/Tab.js +0 -153
  406. package/cjs/tabstrip/Tab.js.map +0 -1
  407. package/cjs/tabstrip/TabMenu.css.js +0 -6
  408. package/cjs/tabstrip/TabMenu.css.js.map +0 -1
  409. package/cjs/tabstrip/TabMenu.js +0 -72
  410. package/cjs/tabstrip/TabMenu.js.map +0 -1
  411. package/cjs/tabstrip/TabMenuOptions.js +0 -20
  412. package/cjs/tabstrip/TabMenuOptions.js.map +0 -1
  413. package/cjs/tabstrip/Tabstrip.css.js +0 -6
  414. package/cjs/tabstrip/Tabstrip.css.js.map +0 -1
  415. package/cjs/tabstrip/Tabstrip.js +0 -160
  416. package/cjs/tabstrip/Tabstrip.js.map +0 -1
  417. package/cjs/tabstrip/tabstrip-dom-utils.js +0 -19
  418. package/cjs/tabstrip/tabstrip-dom-utils.js.map +0 -1
  419. package/cjs/tabstrip/useAnimatedSelectionThumb.js +0 -85
  420. package/cjs/tabstrip/useAnimatedSelectionThumb.js.map +0 -1
  421. package/cjs/tabstrip/useKeyboardNavigation.js +0 -247
  422. package/cjs/tabstrip/useKeyboardNavigation.js.map +0 -1
  423. package/cjs/tabstrip/useSelection.js +0 -60
  424. package/cjs/tabstrip/useSelection.js.map +0 -1
  425. package/cjs/tabstrip/useTabstrip.js +0 -233
  426. package/cjs/tabstrip/useTabstrip.js.map +0 -1
  427. package/cjs/time-input/MaskedInput.js +0 -377
  428. package/cjs/time-input/MaskedInput.js.map +0 -1
  429. package/cjs/time-input/TimeInput.css.js +0 -6
  430. package/cjs/time-input/TimeInput.css.js.map +0 -1
  431. package/cjs/time-input/TimeInput.js +0 -56
  432. package/cjs/time-input/TimeInput.js.map +0 -1
  433. package/cjs/time-input/useTimeInput.js +0 -121
  434. package/cjs/time-input/useTimeInput.js.map +0 -1
  435. package/cjs/toolbar/Toolbar.css.js +0 -6
  436. package/cjs/toolbar/Toolbar.css.js.map +0 -1
  437. package/cjs/toolbar/Toolbar.js +0 -90
  438. package/cjs/toolbar/Toolbar.js.map +0 -1
  439. package/cjs/toolbar/toolbar-dom-utils.js +0 -18
  440. package/cjs/toolbar/toolbar-dom-utils.js.map +0 -1
  441. package/cjs/toolbar/useKeyboardNavigation.js +0 -305
  442. package/cjs/toolbar/useKeyboardNavigation.js.map +0 -1
  443. package/cjs/toolbar/useSelection.js +0 -93
  444. package/cjs/toolbar/useSelection.js.map +0 -1
  445. package/cjs/toolbar/useToolbar.js +0 -100
  446. package/cjs/toolbar/useToolbar.js.map +0 -1
  447. package/cjs/utils/escapeRegExp.js +0 -9
  448. package/cjs/utils/escapeRegExp.js.map +0 -1
  449. package/cjs/utils/forwardCallbackProps.js +0 -22
  450. package/cjs/utils/forwardCallbackProps.js.map +0 -1
  451. package/cjs/utils/isOverflowElement.js +0 -8
  452. package/cjs/utils/isOverflowElement.js.map +0 -1
  453. package/cjs/utils/isPlainObject.js +0 -6
  454. package/cjs/utils/isPlainObject.js.map +0 -1
  455. package/cjs/vuu-date-picker/VuuDatePicker.js +0 -122
  456. package/cjs/vuu-date-picker/VuuDatePicker.js.map +0 -1
  457. package/cjs/vuu-input/VuuInput.css.js +0 -6
  458. package/cjs/vuu-input/VuuInput.css.js.map +0 -1
  459. package/cjs/vuu-input/VuuInput.js +0 -102
  460. package/cjs/vuu-input/VuuInput.js.map +0 -1
  461. package/cjs/vuu-time-picker/VuuTimePicker.css.js +0 -6
  462. package/cjs/vuu-time-picker/VuuTimePicker.css.js.map +0 -1
  463. package/cjs/vuu-time-picker/VuuTimePicker.js +0 -37
  464. package/cjs/vuu-time-picker/VuuTimePicker.js.map +0 -1
  465. package/cjs/vuu-typeahead-input/VuuTypeaheadInput.css.js +0 -6
  466. package/cjs/vuu-typeahead-input/VuuTypeaheadInput.css.js.map +0 -1
  467. package/cjs/vuu-typeahead-input/VuuTypeaheadInput.js +0 -80
  468. package/cjs/vuu-typeahead-input/VuuTypeaheadInput.js.map +0 -1
  469. package/cjs/vuu-typeahead-input/useVuuTypeaheadInput.js +0 -176
  470. package/cjs/vuu-typeahead-input/useVuuTypeaheadInput.js.map +0 -1
  471. package/esm/calendar/Calendar.css.js +0 -4
  472. package/esm/calendar/Calendar.css.js.map +0 -1
  473. package/esm/calendar/Calendar.js +0 -91
  474. package/esm/calendar/Calendar.js.map +0 -1
  475. package/esm/calendar/internal/CalendarCarousel.css.js +0 -4
  476. package/esm/calendar/internal/CalendarCarousel.css.js.map +0 -1
  477. package/esm/calendar/internal/CalendarCarousel.js +0 -73
  478. package/esm/calendar/internal/CalendarCarousel.js.map +0 -1
  479. package/esm/calendar/internal/CalendarContext.js +0 -16
  480. package/esm/calendar/internal/CalendarContext.js.map +0 -1
  481. package/esm/calendar/internal/CalendarDay.css.js +0 -4
  482. package/esm/calendar/internal/CalendarDay.css.js.map +0 -1
  483. package/esm/calendar/internal/CalendarDay.js.map +0 -1
  484. package/esm/calendar/internal/CalendarMonth.css.js +0 -4
  485. package/esm/calendar/internal/CalendarMonth.css.js.map +0 -1
  486. package/esm/calendar/internal/CalendarMonth.js +0 -69
  487. package/esm/calendar/internal/CalendarMonth.js.map +0 -1
  488. package/esm/calendar/internal/CalendarNavigation.css.js +0 -4
  489. package/esm/calendar/internal/CalendarNavigation.css.js.map +0 -1
  490. package/esm/calendar/internal/CalendarNavigation.js +0 -234
  491. package/esm/calendar/internal/CalendarNavigation.js.map +0 -1
  492. package/esm/calendar/internal/CalendarWeekHeader.css.js +0 -4
  493. package/esm/calendar/internal/CalendarWeekHeader.css.js.map +0 -1
  494. package/esm/calendar/internal/CalendarWeekHeader.js +0 -41
  495. package/esm/calendar/internal/CalendarWeekHeader.js.map +0 -1
  496. package/esm/calendar/internal/useFocusManagement.js +0 -64
  497. package/esm/calendar/internal/useFocusManagement.js.map +0 -1
  498. package/esm/calendar/internal/utils.js +0 -55
  499. package/esm/calendar/internal/utils.js.map +0 -1
  500. package/esm/calendar/useCalendar.js +0 -161
  501. package/esm/calendar/useCalendar.js.map +0 -1
  502. package/esm/calendar/useCalendarDay.js +0 -78
  503. package/esm/calendar/useCalendarDay.js.map +0 -1
  504. package/esm/calendar/useSelection.js +0 -243
  505. package/esm/calendar/useSelection.js.map +0 -1
  506. package/esm/column-picker/ColumnPicker.css.js +0 -4
  507. package/esm/column-picker/ColumnPicker.css.js.map +0 -1
  508. package/esm/column-picker/ColumnPicker.js +0 -126
  509. package/esm/column-picker/ColumnPicker.js.map +0 -1
  510. package/esm/column-picker/ColumnSearch.css.js +0 -4
  511. package/esm/column-picker/ColumnSearch.css.js.map +0 -1
  512. package/esm/column-picker/ColumnSearch.js +0 -80
  513. package/esm/column-picker/ColumnSearch.js.map +0 -1
  514. package/esm/common-hooks/selectionTypes.js +0 -10
  515. package/esm/common-hooks/selectionTypes.js.map +0 -1
  516. package/esm/common-hooks/use-resize-observer.js +0 -118
  517. package/esm/common-hooks/use-resize-observer.js.map +0 -1
  518. package/esm/common-hooks/useControlled.js +0 -56
  519. package/esm/common-hooks/useControlled.js.map +0 -1
  520. package/esm/context-panel-provider/ContextPanelProvider.js +0 -94
  521. package/esm/context-panel-provider/ContextPanelProvider.js.map +0 -1
  522. package/esm/cycle-state-button/CycleStateButton.js +0 -48
  523. package/esm/cycle-state-button/CycleStateButton.js.map +0 -1
  524. package/esm/date-input/DateInput.css.js +0 -4
  525. package/esm/date-input/DateInput.css.js.map +0 -1
  526. package/esm/date-input/DateInput.js +0 -275
  527. package/esm/date-input/DateInput.js.map +0 -1
  528. package/esm/date-picker/DatePicker.js +0 -167
  529. package/esm/date-picker/DatePicker.js.map +0 -1
  530. package/esm/date-picker/DatePickerContext.js +0 -23
  531. package/esm/date-picker/DatePickerContext.js.map +0 -1
  532. package/esm/date-picker/DatePickerPanel.css.js +0 -4
  533. package/esm/date-picker/DatePickerPanel.css.js.map +0 -1
  534. package/esm/date-picker/DatePickerPanel.js +0 -144
  535. package/esm/date-picker/DatePickerPanel.js.map +0 -1
  536. package/esm/drag-drop/DragDropProvider.js +0 -142
  537. package/esm/drag-drop/DragDropProvider.js.map +0 -1
  538. package/esm/drag-drop/DragDropState.js +0 -34
  539. package/esm/drag-drop/DragDropState.js.map +0 -1
  540. package/esm/drag-drop/Draggable.css.js +0 -4
  541. package/esm/drag-drop/Draggable.css.js.map +0 -1
  542. package/esm/drag-drop/Draggable.js +0 -85
  543. package/esm/drag-drop/Draggable.js.map +0 -1
  544. package/esm/drag-drop/dragDropTypes.js.map +0 -1
  545. package/esm/drag-drop/drop-target-utils.js +0 -228
  546. package/esm/drag-drop/drop-target-utils.js.map +0 -1
  547. package/esm/drag-drop/useAutoScroll.js +0 -69
  548. package/esm/drag-drop/useAutoScroll.js.map +0 -1
  549. package/esm/drag-drop/useDragDisplacers.js +0 -158
  550. package/esm/drag-drop/useDragDisplacers.js.map +0 -1
  551. package/esm/drag-drop/useDragDrop.js +0 -502
  552. package/esm/drag-drop/useDragDrop.js.map +0 -1
  553. package/esm/drag-drop/useDragDropCopy.js +0 -31
  554. package/esm/drag-drop/useDragDropCopy.js.map +0 -1
  555. package/esm/drag-drop/useDragDropIndicator.js +0 -249
  556. package/esm/drag-drop/useDragDropIndicator.js.map +0 -1
  557. package/esm/drag-drop/useDragDropNaturalMovement.js +0 -263
  558. package/esm/drag-drop/useDragDropNaturalMovement.js.map +0 -1
  559. package/esm/drag-drop/useDropIndicator.js +0 -25
  560. package/esm/drag-drop/useDropIndicator.js.map +0 -1
  561. package/esm/drag-drop/useGlobalDragDrop.js +0 -87
  562. package/esm/drag-drop/useGlobalDragDrop.js.map +0 -1
  563. package/esm/editable/useEditableText.js +0 -209
  564. package/esm/editable/useEditableText.js.map +0 -1
  565. package/esm/editable-label/EditableLabel.css.js +0 -4
  566. package/esm/editable-label/EditableLabel.css.js.map +0 -1
  567. package/esm/editable-label/EditableLabel.js +0 -140
  568. package/esm/editable-label/EditableLabel.js.map +0 -1
  569. package/esm/expando-input/ExpandoInput.css.js +0 -4
  570. package/esm/expando-input/ExpandoInput.css.js.map +0 -1
  571. package/esm/expando-input/ExpandoInput.js +0 -51
  572. package/esm/expando-input/ExpandoInput.js.map +0 -1
  573. package/esm/hover-overlay/HoverOverlay.js +0 -94
  574. package/esm/hover-overlay/HoverOverlay.js.map +0 -1
  575. package/esm/icon-button/Icon.css.js +0 -4
  576. package/esm/icon-button/Icon.css.js.map +0 -1
  577. package/esm/icon-button/Icon.js +0 -35
  578. package/esm/icon-button/Icon.js.map +0 -1
  579. package/esm/icon-button/IconButton.css.js +0 -4
  580. package/esm/icon-button/IconButton.css.js.map +0 -1
  581. package/esm/icon-button/IconButton.js +0 -24
  582. package/esm/icon-button/IconButton.js.map +0 -1
  583. package/esm/icon-button/ToggleIconButton.css.js +0 -4
  584. package/esm/icon-button/ToggleIconButton.css.js.map +0 -1
  585. package/esm/icon-button/ToggleIconButton.js +0 -37
  586. package/esm/icon-button/ToggleIconButton.js.map +0 -1
  587. package/esm/index.js +0 -59
  588. package/esm/index.js.map +0 -1
  589. package/esm/instrument-picker/TablePicker.css.js +0 -4
  590. package/esm/instrument-picker/TablePicker.css.js.map +0 -1
  591. package/esm/instrument-picker/TablePicker.js +0 -128
  592. package/esm/instrument-picker/TablePicker.js.map +0 -1
  593. package/esm/instrument-picker/useTablePicker.js +0 -148
  594. package/esm/instrument-picker/useTablePicker.js.map +0 -1
  595. package/esm/measured-container/MeasuredContainer.css.js +0 -4
  596. package/esm/measured-container/MeasuredContainer.css.js.map +0 -1
  597. package/esm/measured-container/MeasuredContainer.js +0 -70
  598. package/esm/measured-container/MeasuredContainer.js.map +0 -1
  599. package/esm/measured-container/useMeasuredContainer.js +0 -164
  600. package/esm/measured-container/useMeasuredContainer.js.map +0 -1
  601. package/esm/modal-provider/ModalProvider.js +0 -140
  602. package/esm/modal-provider/ModalProvider.js.map +0 -1
  603. package/esm/overflow-container/OverflowContainer.css.js +0 -4
  604. package/esm/overflow-container/OverflowContainer.css.js.map +0 -1
  605. package/esm/overflow-container/OverflowContainer.js +0 -141
  606. package/esm/overflow-container/OverflowContainer.js.map +0 -1
  607. package/esm/overflow-container/overflow-utils.js +0 -272
  608. package/esm/overflow-container/overflow-utils.js.map +0 -1
  609. package/esm/overflow-container/useOverflowContainer.js +0 -141
  610. package/esm/overflow-container/useOverflowContainer.js.map +0 -1
  611. package/esm/price-ticker/PriceTicker.css.js +0 -4
  612. package/esm/price-ticker/PriceTicker.css.js.map +0 -1
  613. package/esm/price-ticker/PriceTicker.js +0 -48
  614. package/esm/price-ticker/PriceTicker.js.map +0 -1
  615. package/esm/prompt/Prompt.css.js +0 -4
  616. package/esm/prompt/Prompt.css.js.map +0 -1
  617. package/esm/prompt/Prompt.js +0 -140
  618. package/esm/prompt/Prompt.js.map +0 -1
  619. package/esm/sortable-list/SortableList.js +0 -34
  620. package/esm/sortable-list/SortableList.js.map +0 -1
  621. package/esm/split-button/SplitButton.css.js +0 -4
  622. package/esm/split-button/SplitButton.css.js.map +0 -1
  623. package/esm/split-button/SplitButton.js +0 -82
  624. package/esm/split-button/SplitButton.js.map +0 -1
  625. package/esm/split-button/SplitStateButton.css.js +0 -4
  626. package/esm/split-button/SplitStateButton.css.js.map +0 -1
  627. package/esm/split-button/SplitStateButton.js +0 -29
  628. package/esm/split-button/SplitStateButton.js.map +0 -1
  629. package/esm/split-button/useSplitButton.js +0 -82
  630. package/esm/split-button/useSplitButton.js.map +0 -1
  631. package/esm/table-search/SearchCell.css.js +0 -4
  632. package/esm/table-search/SearchCell.css.js.map +0 -1
  633. package/esm/table-search/SearchCell.js +0 -30
  634. package/esm/table-search/SearchCell.js.map +0 -1
  635. package/esm/table-search/TableSearch.css.js +0 -4
  636. package/esm/table-search/TableSearch.css.js.map +0 -1
  637. package/esm/table-search/TableSearch.js +0 -87
  638. package/esm/table-search/TableSearch.js.map +0 -1
  639. package/esm/table-search/useTableSearch.js +0 -37
  640. package/esm/table-search/useTableSearch.js.map +0 -1
  641. package/esm/tabs-next/TabBar.css.js +0 -4
  642. package/esm/tabs-next/TabBar.css.js.map +0 -1
  643. package/esm/tabs-next/TabBar.js +0 -39
  644. package/esm/tabs-next/TabBar.js.map +0 -1
  645. package/esm/tabs-next/TabListNext.css.js +0 -4
  646. package/esm/tabs-next/TabListNext.css.js.map +0 -1
  647. package/esm/tabs-next/TabListNext.js +0 -122
  648. package/esm/tabs-next/TabListNext.js.map +0 -1
  649. package/esm/tabs-next/TabNext.css.js +0 -4
  650. package/esm/tabs-next/TabNext.css.js.map +0 -1
  651. package/esm/tabs-next/TabNext.js +0 -108
  652. package/esm/tabs-next/TabNext.js.map +0 -1
  653. package/esm/tabs-next/TabNextAction.js +0 -33
  654. package/esm/tabs-next/TabNextAction.js.map +0 -1
  655. package/esm/tabs-next/TabNextContext.js +0 -20
  656. package/esm/tabs-next/TabNextContext.js.map +0 -1
  657. package/esm/tabs-next/TabNextPanel.css.js +0 -4
  658. package/esm/tabs-next/TabNextPanel.css.js.map +0 -1
  659. package/esm/tabs-next/TabNextPanel.js +0 -75
  660. package/esm/tabs-next/TabNextPanel.js.map +0 -1
  661. package/esm/tabs-next/TabNextTrigger.css.js +0 -4
  662. package/esm/tabs-next/TabNextTrigger.css.js.map +0 -1
  663. package/esm/tabs-next/TabNextTrigger.js +0 -72
  664. package/esm/tabs-next/TabNextTrigger.js.map +0 -1
  665. package/esm/tabs-next/TabOverflowList.css.js +0 -4
  666. package/esm/tabs-next/TabOverflowList.css.js.map +0 -1
  667. package/esm/tabs-next/TabOverflowList.js +0 -128
  668. package/esm/tabs-next/TabOverflowList.js.map +0 -1
  669. package/esm/tabs-next/TabsNext.js +0 -172
  670. package/esm/tabs-next/TabsNext.js.map +0 -1
  671. package/esm/tabs-next/TabsNextContext.js +0 -30
  672. package/esm/tabs-next/TabsNextContext.js.map +0 -1
  673. package/esm/tabs-next/hooks/useCollection.js +0 -89
  674. package/esm/tabs-next/hooks/useCollection.js.map +0 -1
  675. package/esm/tabs-next/hooks/useFocusOutside.js +0 -22
  676. package/esm/tabs-next/hooks/useFocusOutside.js.map +0 -1
  677. package/esm/tabs-next/hooks/useOverflow.js +0 -136
  678. package/esm/tabs-next/hooks/useOverflow.js.map +0 -1
  679. package/esm/tabstrip/Tab.css.js +0 -4
  680. package/esm/tabstrip/Tab.css.js.map +0 -1
  681. package/esm/tabstrip/Tab.js +0 -151
  682. package/esm/tabstrip/Tab.js.map +0 -1
  683. package/esm/tabstrip/TabMenu.css.js +0 -4
  684. package/esm/tabstrip/TabMenu.css.js.map +0 -1
  685. package/esm/tabstrip/TabMenu.js +0 -70
  686. package/esm/tabstrip/TabMenu.js.map +0 -1
  687. package/esm/tabstrip/TabMenuOptions.js +0 -16
  688. package/esm/tabstrip/TabMenuOptions.js.map +0 -1
  689. package/esm/tabstrip/Tabstrip.css.js +0 -4
  690. package/esm/tabstrip/Tabstrip.css.js.map +0 -1
  691. package/esm/tabstrip/Tabstrip.js +0 -158
  692. package/esm/tabstrip/Tabstrip.js.map +0 -1
  693. package/esm/tabstrip/tabstrip-dom-utils.js +0 -16
  694. package/esm/tabstrip/tabstrip-dom-utils.js.map +0 -1
  695. package/esm/tabstrip/useAnimatedSelectionThumb.js +0 -83
  696. package/esm/tabstrip/useAnimatedSelectionThumb.js.map +0 -1
  697. package/esm/tabstrip/useKeyboardNavigation.js +0 -245
  698. package/esm/tabstrip/useKeyboardNavigation.js.map +0 -1
  699. package/esm/tabstrip/useSelection.js +0 -58
  700. package/esm/tabstrip/useSelection.js.map +0 -1
  701. package/esm/tabstrip/useTabstrip.js +0 -231
  702. package/esm/tabstrip/useTabstrip.js.map +0 -1
  703. package/esm/time-input/MaskedInput.js +0 -375
  704. package/esm/time-input/MaskedInput.js.map +0 -1
  705. package/esm/time-input/TimeInput.css.js +0 -4
  706. package/esm/time-input/TimeInput.css.js.map +0 -1
  707. package/esm/time-input/TimeInput.js +0 -54
  708. package/esm/time-input/TimeInput.js.map +0 -1
  709. package/esm/time-input/useTimeInput.js +0 -119
  710. package/esm/time-input/useTimeInput.js.map +0 -1
  711. package/esm/toolbar/Toolbar.css.js +0 -4
  712. package/esm/toolbar/Toolbar.css.js.map +0 -1
  713. package/esm/toolbar/Toolbar.js +0 -88
  714. package/esm/toolbar/Toolbar.js.map +0 -1
  715. package/esm/toolbar/toolbar-dom-utils.js +0 -15
  716. package/esm/toolbar/toolbar-dom-utils.js.map +0 -1
  717. package/esm/toolbar/useKeyboardNavigation.js +0 -303
  718. package/esm/toolbar/useKeyboardNavigation.js.map +0 -1
  719. package/esm/toolbar/useSelection.js +0 -91
  720. package/esm/toolbar/useSelection.js.map +0 -1
  721. package/esm/toolbar/useToolbar.js +0 -98
  722. package/esm/toolbar/useToolbar.js.map +0 -1
  723. package/esm/utils/escapeRegExp.js.map +0 -1
  724. package/esm/utils/forwardCallbackProps.js +0 -20
  725. package/esm/utils/forwardCallbackProps.js.map +0 -1
  726. package/esm/utils/isOverflowElement.js +0 -6
  727. package/esm/utils/isOverflowElement.js.map +0 -1
  728. package/esm/utils/isPlainObject.js +0 -4
  729. package/esm/utils/isPlainObject.js.map +0 -1
  730. package/esm/vuu-date-picker/VuuDatePicker.js +0 -120
  731. package/esm/vuu-date-picker/VuuDatePicker.js.map +0 -1
  732. package/esm/vuu-input/VuuInput.css.js +0 -4
  733. package/esm/vuu-input/VuuInput.css.js.map +0 -1
  734. package/esm/vuu-input/VuuInput.js +0 -100
  735. package/esm/vuu-input/VuuInput.js.map +0 -1
  736. package/esm/vuu-time-picker/VuuTimePicker.css.js +0 -4
  737. package/esm/vuu-time-picker/VuuTimePicker.css.js.map +0 -1
  738. package/esm/vuu-time-picker/VuuTimePicker.js +0 -35
  739. package/esm/vuu-time-picker/VuuTimePicker.js.map +0 -1
  740. package/esm/vuu-typeahead-input/VuuTypeaheadInput.css.js +0 -4
  741. package/esm/vuu-typeahead-input/VuuTypeaheadInput.css.js.map +0 -1
  742. package/esm/vuu-typeahead-input/VuuTypeaheadInput.js +0 -78
  743. package/esm/vuu-typeahead-input/VuuTypeaheadInput.js.map +0 -1
  744. package/esm/vuu-typeahead-input/useVuuTypeaheadInput.js +0 -174
  745. package/esm/vuu-typeahead-input/useVuuTypeaheadInput.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"MeasuredContainer.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -1,70 +0,0 @@
1
- import { jsx } from 'react/jsx-runtime';
2
- import { useComponentCssInjection } from '@salt-ds/styles';
3
- import { useWindow } from '@salt-ds/window';
4
- import { forwardRef } from 'react';
5
- import { useMeasuredContainer } from './useMeasuredContainer.js';
6
- import { useForkRef } from '@salt-ds/core';
7
- import cx from 'clsx';
8
- import measuredContainerCss from './MeasuredContainer.css.js';
9
-
10
- const baseClass = "vuuMeasuredContainer";
11
- const MeasuredContainer = forwardRef(function MeasuredContainer2({
12
- children,
13
- className,
14
- height,
15
- onResize,
16
- resizeStrategy,
17
- style,
18
- width,
19
- ...htmlAttributes
20
- }, forwardedRef) {
21
- const targetWindow = useWindow();
22
- useComponentCssInjection({
23
- testId: "vuu-measured-container",
24
- css: measuredContainerCss,
25
- window: targetWindow
26
- });
27
- const { containerRef, ...containerMeasurements } = useMeasuredContainer({
28
- height,
29
- onResize,
30
- resizeStrategy,
31
- width
32
- });
33
- const { cssSize, innerSize } = containerMeasurements;
34
- const unmeasured = innerSize === void 0;
35
- const getStyle = () => {
36
- return unmeasured ? {
37
- ...style,
38
- "--measured-css-height": `${cssSize.height}`,
39
- "--measured-css-width": `${cssSize.width}`
40
- } : {
41
- ...style,
42
- "--measured-css-height": `${cssSize.height}`,
43
- "--measured-css-width": `${cssSize.width}`,
44
- "--measured-px-height": `${innerSize?.height}px`,
45
- "--measured-px-width": `${innerSize?.width}px`
46
- };
47
- };
48
- const forkedRef = useForkRef(containerRef, forwardedRef);
49
- return unmeasured ? /* @__PURE__ */ jsx(
50
- "div",
51
- {
52
- ...htmlAttributes,
53
- className: cx(baseClass, `${baseClass}-ummeasured`),
54
- style: getStyle(),
55
- ref: containerRef
56
- }
57
- ) : /* @__PURE__ */ jsx(
58
- "div",
59
- {
60
- ...htmlAttributes,
61
- className: cx(baseClass, className),
62
- ref: forkedRef,
63
- style: getStyle(),
64
- children
65
- }
66
- );
67
- });
68
-
69
- export { MeasuredContainer };
70
- //# sourceMappingURL=MeasuredContainer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MeasuredContainer.js","sources":["../../../../packages/vuu-ui-controls/src/measured-container/MeasuredContainer.tsx"],"sourcesContent":["import { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { CSSProperties, forwardRef, ForwardedRef, HTMLAttributes } from \"react\";\nimport { MeasuredSize, useMeasuredContainer } from \"./useMeasuredContainer\";\nimport { useForkRef } from \"@salt-ds/core\";\nimport cx from \"clsx\";\n\nimport measuredContainerCss from \"./MeasuredContainer.css\";\n\nexport type ResizeStrategy = \"defer\" | \"responsive\";\n\nexport interface MeasuredContainerProps\n extends Omit<HTMLAttributes<HTMLDivElement>, \"onResize\"> {\n /**\n * A numeric value for height will result in a fixed height. To adapt to container\n * use either a percentage height or 'auto'. Always use 'auto' when rendering\n * within a column based flex container, together with a flex value (use the\n * --vuuMeasuredContainer-flex CSS custom property))\n */\n height?: number | string;\n onResize?: (size: MeasuredSize) => void;\n resizeStrategy?: ResizeStrategy;\n width?: number | string;\n}\n\nconst baseClass = \"vuuMeasuredContainer\";\n\nexport const MeasuredContainer = forwardRef(function MeasuredContainer(\n {\n children,\n className,\n height,\n onResize,\n resizeStrategy,\n style,\n width,\n ...htmlAttributes\n }: MeasuredContainerProps,\n forwardedRef: ForwardedRef<HTMLDivElement>,\n) {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"vuu-measured-container\",\n css: measuredContainerCss,\n window: targetWindow,\n });\n\n const { containerRef, ...containerMeasurements } = useMeasuredContainer({\n height,\n onResize,\n resizeStrategy,\n width,\n });\n\n const { cssSize, innerSize } = containerMeasurements;\n const unmeasured = innerSize === undefined;\n\n const getStyle = () => {\n return unmeasured\n ? ({\n ...style,\n \"--measured-css-height\": `${cssSize.height}`,\n \"--measured-css-width\": `${cssSize.width}`,\n } as CSSProperties)\n : ({\n ...style,\n \"--measured-css-height\": `${cssSize.height}`,\n \"--measured-css-width\": `${cssSize.width}`,\n \"--measured-px-height\": `${innerSize?.height}px`,\n \"--measured-px-width\": `${innerSize?.width}px`,\n } as CSSProperties);\n };\n\n const forkedRef = useForkRef(containerRef, forwardedRef);\n\n return unmeasured ? (\n <div\n {...htmlAttributes}\n className={cx(baseClass, `${baseClass}-ummeasured`)}\n style={getStyle()}\n ref={containerRef}\n />\n ) : (\n <div\n {...htmlAttributes}\n className={cx(baseClass, className)}\n ref={forkedRef}\n style={getStyle()}\n >\n {children}\n </div>\n );\n});\n"],"names":["MeasuredContainer"],"mappings":";;;;;;;;;AAyBA,MAAM,SAAY,GAAA,sBAAA;AAEL,MAAA,iBAAA,GAAoB,UAAW,CAAA,SAASA,kBACnD,CAAA;AAAA,EACE,QAAA;AAAA,EACA,SAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,cAAA;AAAA,EACA,KAAA;AAAA,EACA,KAAA;AAAA,EACA,GAAG;AACL,CAAA,EACA,YACA,EAAA;AACA,EAAA,MAAM,eAAe,SAAU,EAAA;AAC/B,EAAyB,wBAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,wBAAA;AAAA,IACR,GAAK,EAAA,oBAAA;AAAA,IACL,MAAQ,EAAA;AAAA,GACT,CAAA;AAED,EAAA,MAAM,EAAE,YAAA,EAAc,GAAG,qBAAA,KAA0B,oBAAqB,CAAA;AAAA,IACtE,MAAA;AAAA,IACA,QAAA;AAAA,IACA,cAAA;AAAA,IACA;AAAA,GACD,CAAA;AAED,EAAM,MAAA,EAAE,OAAS,EAAA,SAAA,EAAc,GAAA,qBAAA;AAC/B,EAAA,MAAM,aAAa,SAAc,KAAA,KAAA,CAAA;AAEjC,EAAA,MAAM,WAAW,MAAM;AACrB,IAAA,OAAO,UACF,GAAA;AAAA,MACC,GAAG,KAAA;AAAA,MACH,uBAAA,EAAyB,CAAG,EAAA,OAAA,CAAQ,MAAM,CAAA,CAAA;AAAA,MAC1C,sBAAA,EAAwB,CAAG,EAAA,OAAA,CAAQ,KAAK,CAAA;AAAA,KAEzC,GAAA;AAAA,MACC,GAAG,KAAA;AAAA,MACH,uBAAA,EAAyB,CAAG,EAAA,OAAA,CAAQ,MAAM,CAAA,CAAA;AAAA,MAC1C,sBAAA,EAAwB,CAAG,EAAA,OAAA,CAAQ,KAAK,CAAA,CAAA;AAAA,MACxC,sBAAA,EAAwB,CAAG,EAAA,SAAA,EAAW,MAAM,CAAA,EAAA,CAAA;AAAA,MAC5C,qBAAA,EAAuB,CAAG,EAAA,SAAA,EAAW,KAAK,CAAA,EAAA;AAAA,KAC5C;AAAA,GACN;AAEA,EAAM,MAAA,SAAA,GAAY,UAAW,CAAA,YAAA,EAAc,YAAY,CAAA;AAEvD,EAAA,OAAO,UACL,mBAAA,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACE,GAAG,cAAA;AAAA,MACJ,SAAW,EAAA,EAAA,CAAG,SAAW,EAAA,CAAA,EAAG,SAAS,CAAa,WAAA,CAAA,CAAA;AAAA,MAClD,OAAO,QAAS,EAAA;AAAA,MAChB,GAAK,EAAA;AAAA;AAAA,GAGP,mBAAA,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACE,GAAG,cAAA;AAAA,MACJ,SAAA,EAAW,EAAG,CAAA,SAAA,EAAW,SAAS,CAAA;AAAA,MAClC,GAAK,EAAA,SAAA;AAAA,MACL,OAAO,QAAS,EAAA;AAAA,MAEf;AAAA;AAAA,GACH;AAEJ,CAAC;;;;"}
@@ -1,164 +0,0 @@
1
- import { isValidNumber, useResizeObserver } from '@vuu-ui/vuu-utils';
2
- import { useRef, useState, useMemo, useCallback, useEffect } from 'react';
3
-
4
- const ClientWidthHeight = ["clientHeight", "clientWidth"];
5
- const WidthOnly = ["clientWidth"];
6
- const HeightOnly = ["clientHeight"];
7
- const NO_MEASUREMENT = [];
8
- const NullClientSize = {
9
- clientHeight: -1,
10
- clientWidth: -1
11
- };
12
- const isNumber = (val) => Number.isFinite(val);
13
- const reduceSizeHeight = (size, value) => {
14
- if (value === 0) {
15
- return size;
16
- } else {
17
- return {
18
- height: size.height - value,
19
- width: size.width
20
- };
21
- }
22
- };
23
- const getInitialValue = (value, defaultValue) => {
24
- if (isValidNumber(value)) {
25
- return `${value}px`;
26
- } else if (typeof value === "string") {
27
- return value;
28
- } else {
29
- return defaultValue;
30
- }
31
- };
32
- const getInitialCssSize = (height, width) => {
33
- return {
34
- height: getInitialValue(height, "100%"),
35
- width: getInitialValue(width, "auto")
36
- };
37
- };
38
- const getInitialInnerSize = (height, width) => {
39
- if (isValidNumber(height) && isValidNumber(width)) {
40
- return {
41
- height,
42
- width
43
- };
44
- }
45
- };
46
- const useMeasuredContainer = ({
47
- defaultHeight = 0,
48
- defaultWidth = 0,
49
- height,
50
- onResize: onResizeProp,
51
- resizeStrategy = "responsive",
52
- width
53
- }) => {
54
- const deferResize = resizeStrategy === "defer";
55
- const sizeRef = useRef(NullClientSize);
56
- const resizeHandleRef = useRef(void 0);
57
- const containerRef = useRef(null);
58
- const [size, setSize] = useState({
59
- css: getInitialCssSize(height, width),
60
- inner: getInitialInnerSize(height, width),
61
- outer: {
62
- height: height ?? "100%",
63
- width: width ?? "auto"
64
- }
65
- });
66
- const fixedHeight = typeof height === "number";
67
- const fixedWidth = typeof width === "number";
68
- const dimensions = fixedHeight && fixedWidth ? NO_MEASUREMENT : fixedHeight ? WidthOnly : fixedWidth ? HeightOnly : ClientWidthHeight;
69
- useMemo(() => {
70
- setSize((currentSize) => {
71
- const { inner, outer } = currentSize;
72
- if (isValidNumber(height) && isValidNumber(width) && inner && outer) {
73
- const { height: innerHeight, width: innerWidth } = inner;
74
- const { height: outerHeight, width: outerWidth } = outer;
75
- if (outerHeight !== height || outerWidth !== width) {
76
- const heightDiff = isValidNumber(outerHeight) ? outerHeight - innerHeight : 0;
77
- const widthDiff = isValidNumber(outerWidth) ? outerWidth - innerWidth : 0;
78
- return {
79
- ...currentSize,
80
- outer: { height, width },
81
- inner: { height: height - heightDiff, width: width - widthDiff }
82
- };
83
- }
84
- }
85
- return currentSize;
86
- });
87
- }, [height, width]);
88
- const handleResize = useCallback(
89
- (clientWidth, clientHeight) => {
90
- const { css, inner, outer } = size;
91
- let newState = size;
92
- if (fixedHeight && isNumber(clientWidth) && Math.floor(clientWidth) !== inner?.width) {
93
- newState = {
94
- css,
95
- outer,
96
- inner: {
97
- width: Math.floor(clientWidth) || defaultWidth,
98
- height
99
- }
100
- };
101
- } else if (fixedWidth && isNumber(clientHeight) && Math.floor(clientHeight) !== inner?.height) {
102
- newState = {
103
- css,
104
- outer,
105
- inner: {
106
- height: Math.floor(clientHeight) || defaultHeight,
107
- width
108
- }
109
- };
110
- } else if (isNumber(clientHeight) && isNumber(clientWidth) && (clientWidth !== inner?.width || clientHeight !== inner?.height)) {
111
- newState = {
112
- css,
113
- outer,
114
- inner: {
115
- width: Math.floor(clientWidth) || defaultWidth,
116
- height: Math.floor(clientHeight) || defaultHeight
117
- }
118
- };
119
- }
120
- if (newState !== size) {
121
- setSize(newState);
122
- }
123
- },
124
- [defaultHeight, defaultWidth, fixedHeight, fixedWidth, height, size, width]
125
- );
126
- const onResize = useCallback(
127
- ({ clientHeight, clientWidth }) => {
128
- if (deferResize) {
129
- sizeRef.current.clientHeight = clientHeight;
130
- sizeRef.current.clientWidth = clientWidth;
131
- if (resizeHandleRef.current !== null) {
132
- clearTimeout(resizeHandleRef.current);
133
- }
134
- resizeHandleRef.current = setTimeout(() => {
135
- handleResize(clientWidth, clientHeight);
136
- }, 40);
137
- } else {
138
- handleResize(clientWidth, clientHeight);
139
- }
140
- },
141
- [deferResize, handleResize]
142
- );
143
- useEffect(() => {
144
- if (size.inner) {
145
- if (containerRef.current) {
146
- if (typeof height !== "number" || height === 0) {
147
- size.inner.height = containerRef.current.clientHeight;
148
- }
149
- size.inner.width = containerRef.current.clientWidth;
150
- onResizeProp?.(size.inner);
151
- }
152
- }
153
- }, [height, onResizeProp, size.inner]);
154
- useResizeObserver(containerRef, dimensions, onResize, true);
155
- return {
156
- containerRef,
157
- cssSize: size.css,
158
- outerSize: size.outer,
159
- innerSize: size.inner
160
- };
161
- };
162
-
163
- export { reduceSizeHeight, useMeasuredContainer };
164
- //# sourceMappingURL=useMeasuredContainer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useMeasuredContainer.js","sources":["../../../../packages/vuu-ui-controls/src/measured-container/useMeasuredContainer.ts"],"sourcesContent":["import {\n isValidNumber,\n useResizeObserver,\n type ResizeHandler,\n} from \"@vuu-ui/vuu-utils\";\nimport {\n CSSProperties,\n RefObject,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { MeasuredContainerProps } from \"./MeasuredContainer\";\n\nconst ClientWidthHeight = [\"clientHeight\", \"clientWidth\"];\nconst WidthOnly = [\"clientWidth\"];\nconst HeightOnly = [\"clientHeight\"];\nconst NO_MEASUREMENT = [] as const;\n\nexport interface ClientSize {\n clientHeight: number;\n clientWidth: number;\n}\n\nconst NullClientSize: Partial<ClientSize> = {\n clientHeight: -1,\n clientWidth: -1,\n};\n\nexport interface MeasuredProps\n extends Pick<\n MeasuredContainerProps,\n \"height\" | \"onResize\" | \"resizeStrategy\" | \"width\"\n > {\n defaultHeight?: number;\n defaultWidth?: number;\n}\n\nexport type CssSize = Pick<CSSProperties, \"height\" | \"width\">;\n\nexport interface MeasuredSize {\n height: number;\n width: number;\n}\n\ninterface MeasuredState {\n css: CssSize;\n outer: CssSize;\n inner?: MeasuredSize;\n}\n\nconst isNumber = (val: unknown): val is number => Number.isFinite(val);\n\nexport interface MeasuredContainerHookResult {\n containerRef: RefObject<HTMLDivElement | null>;\n cssSize: CssSize;\n outerSize: CssSize;\n innerSize?: MeasuredSize;\n}\n\nexport const reduceSizeHeight = (\n size: MeasuredSize,\n value: number,\n): MeasuredSize => {\n if (value === 0) {\n return size;\n } else {\n return {\n height: size.height - value,\n width: size.width,\n };\n }\n};\n\nconst getInitialValue = (\n value: number | string | undefined,\n defaultValue: \"auto\" | \"100%\",\n) => {\n if (isValidNumber(value)) {\n return `${value}px`;\n } else if (typeof value === \"string\") {\n return value;\n } else {\n return defaultValue;\n }\n};\n\n// If (outer) height and width are known at initialisation (i.e. they\n// were passed as props), use as initial values for inner size. If there\n// is no border on Table, these values will not change. If there is a border,\n// inner values will be updated once measured.\nconst getInitialCssSize = (\n height?: number | string,\n width?: number | string,\n): CssSize => {\n return {\n height: getInitialValue(height, \"100%\"),\n width: getInitialValue(width, \"auto\"),\n };\n};\n\nconst getInitialInnerSize = (\n height: unknown,\n width: unknown,\n): MeasuredSize | undefined => {\n if (isValidNumber(height) && isValidNumber(width)) {\n return {\n height,\n width,\n };\n }\n};\n\nexport const useMeasuredContainer = ({\n defaultHeight = 0,\n defaultWidth = 0,\n height,\n onResize: onResizeProp,\n resizeStrategy = \"responsive\",\n width,\n}: MeasuredProps): MeasuredContainerHookResult => {\n const deferResize = resizeStrategy === \"defer\";\n const sizeRef = useRef<Partial<ClientSize>>(NullClientSize);\n const resizeHandleRef = useRef<ReturnType<typeof setTimeout>>(undefined);\n\n const containerRef = useRef<HTMLDivElement>(null);\n const [size, setSize] = useState<MeasuredState>({\n css: getInitialCssSize(height, width),\n inner: getInitialInnerSize(height, width),\n outer: {\n height: height ?? \"100%\",\n width: width ?? \"auto\",\n },\n });\n\n const fixedHeight = typeof height === \"number\";\n const fixedWidth = typeof width === \"number\";\n\n const dimensions =\n fixedHeight && fixedWidth\n ? NO_MEASUREMENT\n : fixedHeight\n ? WidthOnly\n : fixedWidth\n ? HeightOnly\n : ClientWidthHeight;\n\n useMemo(() => {\n // TODO why call state from memo.\n // Why not calculate size first inline, then assign that to state\n // on first pass\n setSize((currentSize) => {\n const { inner, outer } = currentSize;\n if (isValidNumber(height) && isValidNumber(width) && inner && outer) {\n const { height: innerHeight, width: innerWidth } = inner;\n const { height: outerHeight, width: outerWidth } = outer;\n\n if (outerHeight !== height || outerWidth !== width) {\n const heightDiff = isValidNumber(outerHeight)\n ? outerHeight - innerHeight\n : 0;\n const widthDiff = isValidNumber(outerWidth)\n ? outerWidth - innerWidth\n : 0;\n return {\n ...currentSize,\n outer: { height, width },\n inner: { height: height - heightDiff, width: width - widthDiff },\n };\n }\n }\n return currentSize;\n });\n }, [height, width]);\n\n const handleResize = useCallback(\n (clientWidth: number | undefined, clientHeight: number | undefined) => {\n const { css, inner, outer } = size;\n let newState: MeasuredState = size;\n if (\n fixedHeight &&\n isNumber(clientWidth) &&\n Math.floor(clientWidth) !== inner?.width\n ) {\n newState = {\n css,\n outer,\n inner: {\n width: Math.floor(clientWidth) || defaultWidth,\n height,\n },\n };\n } else if (\n fixedWidth &&\n isNumber(clientHeight) &&\n Math.floor(clientHeight) !== inner?.height\n ) {\n newState = {\n css,\n outer,\n inner: {\n height: Math.floor(clientHeight) || defaultHeight,\n width,\n },\n };\n } else if (\n isNumber(clientHeight) &&\n isNumber(clientWidth) &&\n (clientWidth !== inner?.width || clientHeight !== inner?.height)\n ) {\n newState = {\n css,\n outer,\n inner: {\n width: Math.floor(clientWidth) || defaultWidth,\n height: Math.floor(clientHeight) || defaultHeight,\n },\n };\n }\n\n if (newState !== size) {\n setSize(newState);\n }\n },\n [defaultHeight, defaultWidth, fixedHeight, fixedWidth, height, size, width],\n );\n\n const onResize: ResizeHandler = useCallback(\n ({ clientHeight, clientWidth }: Partial<ClientSize>) => {\n if (deferResize) {\n sizeRef.current.clientHeight = clientHeight;\n sizeRef.current.clientWidth = clientWidth;\n //\n if (resizeHandleRef.current !== null) {\n clearTimeout(resizeHandleRef.current);\n }\n resizeHandleRef.current = setTimeout(() => {\n handleResize(clientWidth, clientHeight);\n }, 40);\n } else {\n handleResize(clientWidth, clientHeight);\n }\n },\n [deferResize, handleResize],\n );\n\n useEffect(() => {\n if (size.inner) {\n if (containerRef.current) {\n if (typeof height !== \"number\" || height === 0) {\n size.inner.height = containerRef.current.clientHeight;\n }\n size.inner.width = containerRef.current.clientWidth;\n onResizeProp?.(size.inner);\n }\n }\n }, [height, onResizeProp, size.inner]);\n\n useResizeObserver(containerRef, dimensions, onResize, true);\n\n return {\n containerRef,\n cssSize: size.css,\n outerSize: size.outer,\n innerSize: size.inner,\n };\n};\n"],"names":[],"mappings":"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"}
@@ -1,140 +0,0 @@
1
- import { jsxs, jsx } from 'react/jsx-runtime';
2
- import { Dialog, DialogHeader, DialogContent, DialogCloseButton, DialogActions } from '@salt-ds/core';
3
- import { createContext, useContext, useCallback, useMemo, useState } from 'react';
4
- import { Prompt } from '../prompt/Prompt.js';
5
-
6
- var __defProp = Object.defineProperty;
7
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
- var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
9
- const useDialogHost = () => {
10
- const [dialogState, setDialogState] = useState();
11
- const [promptState, setPromptState] = useState();
12
- const closePrompt = useCallback(() => {
13
- setPromptState(void 0);
14
- }, []);
15
- const closeDialog = useCallback(() => {
16
- setDialogState(void 0);
17
- }, []);
18
- const handleOpenChange = useCallback(
19
- (open) => {
20
- if (open !== true) {
21
- closeDialog();
22
- }
23
- },
24
- [closeDialog]
25
- );
26
- const dialog = dialogState ? /* @__PURE__ */ jsxs(Dialog, { open: true, onOpenChange: handleOpenChange, children: [
27
- /* @__PURE__ */ jsx(DialogHeader, { header: dialogState.title }),
28
- /* @__PURE__ */ jsx(DialogContent, { children: dialogState.content }),
29
- dialogState.hideCloseButton !== true ? /* @__PURE__ */ jsx(
30
- DialogCloseButton,
31
- {
32
- "data-embedded": true,
33
- "data-icon": "close",
34
- onClick: closeDialog
35
- }
36
- ) : null,
37
- dialogState.actions ? /* @__PURE__ */ jsx(DialogActions, { children: dialogState.actions }) : null
38
- ] }) : null;
39
- const handleOpenChangePrompt = useCallback(
40
- (open) => {
41
- if (open !== true) {
42
- closePrompt();
43
- }
44
- promptState?.promptProps.onOpenChange?.(open);
45
- },
46
- [closePrompt, promptState]
47
- );
48
- const prompt = promptState ? /* @__PURE__ */ jsx(
49
- Prompt,
50
- {
51
- ...promptState.promptProps,
52
- onClose: closePrompt,
53
- onOpenChange: handleOpenChangePrompt,
54
- open: true,
55
- children: promptState.content
56
- }
57
- ) : null;
58
- return {
59
- dialog,
60
- prompt,
61
- setDialogState,
62
- setPromptState
63
- };
64
- };
65
- const defaultShowDialog = () => {
66
- console.warn("No DialogProvider in place");
67
- };
68
- const defaultCloseDialog = () => {
69
- console.warn("No DialogProvider in place");
70
- };
71
- const defaultShowPrompt = () => {
72
- console.warn("No DialogProvider in place");
73
- };
74
- const defaultClosePrompt = () => {
75
- console.warn("No DialogProvider in place");
76
- };
77
- class DialogContextObject {
78
- constructor() {
79
- __publicField(this, "showDialog", defaultShowDialog);
80
- __publicField(this, "closeDialog", defaultCloseDialog);
81
- __publicField(this, "showPrompt", defaultShowPrompt);
82
- __publicField(this, "closePrompt", defaultClosePrompt);
83
- __publicField(this, "setDispatchers", (showDialog, closeDialog, showPrompt, closePrompt) => {
84
- this.showDialog = showDialog;
85
- this.closeDialog = closeDialog;
86
- this.showPrompt = showPrompt;
87
- this.closePrompt = closePrompt;
88
- });
89
- }
90
- }
91
- const DialogContext = createContext(
92
- new DialogContextObject()
93
- );
94
- const DialogHost = ({ context }) => {
95
- const { dialog, setDialogState, prompt, setPromptState } = useDialogHost();
96
- const showDialog = useCallback(
97
- (dialogContent, title, actionButtons, hideCloseButton) => {
98
- setDialogState({
99
- actions: actionButtons,
100
- content: dialogContent,
101
- title,
102
- hideCloseButton
103
- });
104
- },
105
- [setDialogState]
106
- );
107
- const closeDialog = useCallback(() => {
108
- setDialogState(void 0);
109
- }, [setDialogState]);
110
- const showPrompt = useCallback(
111
- (content, promptProps) => {
112
- setPromptState({
113
- content,
114
- promptProps
115
- });
116
- },
117
- [setPromptState]
118
- );
119
- const closePrompt = useCallback(() => {
120
- setPromptState(void 0);
121
- }, [setPromptState]);
122
- useMemo(() => {
123
- context.setDispatchers(showDialog, closeDialog, showPrompt, closePrompt);
124
- }, [closeDialog, closePrompt, context, showDialog, showPrompt]);
125
- return dialog ?? prompt;
126
- };
127
- const ModalProvider = ({ children }) => {
128
- const context = useContext(DialogContext);
129
- return /* @__PURE__ */ jsxs(DialogContext.Provider, { value: context, children: [
130
- /* @__PURE__ */ jsx(DialogHost, { context }),
131
- children
132
- ] });
133
- };
134
- const useModal = () => {
135
- const { closeDialog, closePrompt, showDialog, showPrompt } = useContext(DialogContext);
136
- return { showDialog, closeDialog, showPrompt, closePrompt };
137
- };
138
-
139
- export { ModalProvider, useModal };
140
- //# sourceMappingURL=ModalProvider.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ModalProvider.js","sources":["../../../../packages/vuu-ui-controls/src/modal-provider/ModalProvider.tsx"],"sourcesContent":["import {\n Dialog,\n DialogActions,\n DialogCloseButton,\n DialogContent,\n DialogHeader,\n} from \"@salt-ds/core\";\nimport {\n createContext,\n ReactElement,\n ReactNode,\n useCallback,\n useContext,\n useMemo,\n useState,\n} from \"react\";\nimport { Prompt, PromptProps } from \"../prompt/Prompt\";\n\nexport type ShowDialog = (\n dialogContent: ReactElement,\n title: string,\n dialogActionButtons?: ReactElement[],\n hideCloseButton?: boolean,\n) => void;\n\nexport type ShowPrompt = (\n promptContent: ReactElement,\n promptProps: PromptProps,\n) => void;\n\ntype DialogState = {\n actions?: ReactElement[];\n content: ReactElement;\n title: string;\n hideCloseButton?: boolean;\n};\n\ntype PromptState = {\n content: ReactElement;\n promptProps: PromptProps;\n};\n\ntype SetDispatchers = (\n showDialog: ShowDialog,\n closeDialog: () => void,\n showPrompt: ShowPrompt,\n closePrompt: () => void,\n) => void;\n\ninterface DialogContextProps {\n closeDialog: () => void;\n closePrompt: () => void;\n showDialog: ShowDialog;\n showPrompt: ShowPrompt;\n setDispatchers: SetDispatchers;\n}\n\nconst useDialogHost = () => {\n const [dialogState, setDialogState] = useState<DialogState>();\n const [promptState, setPromptState] = useState<PromptState>();\n\n const closePrompt = useCallback(() => {\n setPromptState(undefined);\n }, []);\n\n const closeDialog = useCallback(() => {\n setDialogState(undefined);\n }, []);\n\n const handleOpenChange = useCallback(\n (open?: boolean) => {\n if (open !== true) {\n closeDialog();\n }\n },\n [closeDialog],\n );\n\n const dialog = dialogState ? (\n <Dialog open={true} onOpenChange={handleOpenChange}>\n <DialogHeader header={dialogState.title} />\n <DialogContent>{dialogState.content}</DialogContent>\n {dialogState.hideCloseButton !== true ? (\n <DialogCloseButton\n data-embedded\n data-icon=\"close\"\n onClick={closeDialog}\n />\n ) : null}\n {dialogState.actions ? (\n <DialogActions>{dialogState.actions}</DialogActions>\n ) : null}\n </Dialog>\n ) : null;\n\n const handleOpenChangePrompt = useCallback(\n (open: boolean) => {\n if (open !== true) {\n closePrompt();\n }\n promptState?.promptProps.onOpenChange?.(open);\n },\n [closePrompt, promptState],\n );\n\n const prompt = promptState ? (\n <Prompt\n {...promptState.promptProps}\n onClose={closePrompt}\n onOpenChange={handleOpenChangePrompt}\n open\n >\n {promptState.content}\n </Prompt>\n ) : null;\n\n return {\n dialog,\n prompt,\n setDialogState,\n setPromptState,\n };\n};\n\nconst defaultShowDialog: ShowDialog = () => {\n console.warn(\"No DialogProvider in place\");\n};\nconst defaultCloseDialog = () => {\n console.warn(\"No DialogProvider in place\");\n};\nconst defaultShowPrompt: ShowPrompt = () => {\n console.warn(\"No DialogProvider in place\");\n};\nconst defaultClosePrompt = () => {\n console.warn(\"No DialogProvider in place\");\n};\n\nclass DialogContextObject implements DialogContextProps {\n showDialog = defaultShowDialog;\n closeDialog = defaultCloseDialog;\n showPrompt = defaultShowPrompt;\n closePrompt = defaultClosePrompt;\n setDispatchers: SetDispatchers = (\n showDialog,\n closeDialog,\n showPrompt,\n closePrompt,\n ) => {\n this.showDialog = showDialog;\n this.closeDialog = closeDialog;\n this.showPrompt = showPrompt;\n this.closePrompt = closePrompt;\n };\n}\n\nconst DialogContext = createContext<DialogContextProps>(\n new DialogContextObject(),\n);\n\nconst DialogHost = ({ context }: { context: DialogContextProps }) => {\n const { dialog, setDialogState, prompt, setPromptState } = useDialogHost();\n const showDialog: ShowDialog = useCallback(\n (dialogContent, title, actionButtons, hideCloseButton) => {\n setDialogState({\n actions: actionButtons,\n content: dialogContent,\n title,\n hideCloseButton,\n });\n },\n [setDialogState],\n );\n const closeDialog = useCallback(() => {\n setDialogState(undefined);\n }, [setDialogState]);\n\n const showPrompt: ShowPrompt = useCallback(\n (content, promptProps) => {\n setPromptState({\n content,\n promptProps,\n });\n },\n [setPromptState],\n );\n const closePrompt = useCallback(() => {\n setPromptState(undefined);\n }, [setPromptState]);\n\n useMemo(() => {\n context.setDispatchers(showDialog, closeDialog, showPrompt, closePrompt);\n }, [closeDialog, closePrompt, context, showDialog, showPrompt]);\n return dialog ?? prompt;\n};\n\nexport const ModalProvider = ({ children }: { children: ReactNode }) => {\n const context = useContext(DialogContext);\n return (\n <DialogContext.Provider value={context}>\n <DialogHost context={context} />\n {children}\n </DialogContext.Provider>\n );\n};\n\nexport const useModal = () => {\n const { closeDialog, closePrompt, showDialog, showPrompt } =\n useContext(DialogContext);\n return { showDialog, closeDialog, showPrompt, closePrompt };\n};\n"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- var overflowContainerCss = "\n.vuuOverflowContainer {\n --overflow-borderColor: var(--vuuOverflowContainer-borderColor, none);\n --overflow-borderStyle: var(--vuuOverflowContainer-borderStyle, none);\n --overflow-borderWidth: var(--vuuOverflowContainer-borderWidth, 0px);\n\n --overflow-border-topWidth: var(--vuuOverflowContainer-borderTopWidth, var(--overflow-borderWidth));\n --overflow-border-rightWidth: var(--vuuOverflowContainer-borderRightWidth, var(--overflow-borderWidth));\n --overflow-border-bottomWidth: var(--vuuOverflowContainer-borderBottomWidth, var(--overflow-borderWidth));\n --overflow-border-leftWidth: var(--vuuOverflowContainer-borderLeftWidth, var(--overflow-borderWidth));\n \n --border: calc(var(--overflow-border-topWidth) + var(--overflow-border-bottomWidth));\n\n --overflow-item-gap : var(--vuuOverflowContainer-gap,2px);\n --overflow-direction: row; \n --overflow-height: var(--overflow-item-height);\n\n background-color: var(--vuuOverflowContainer-background);\n border-color: var(--overflow-borderColor);\n border-style: var(--overflow-borderStyle);\n border-top-width: var(--overflow-border-topWidth);\n border-right-width: var(--overflow-border-rightWidth);\n border-bottom-width: var(--overflow-border-bottomWidth);\n border-left-width: var(--overflow-border-leftWidth);\n height: var(--vuuOverflowContainer-height,var(--overflow-container-height));\n width: var(--overflow-container-width);\n}\n\n.vuuOverflowContainer.vuuOrientation-horizontal {\n --item-align: center;\n --item-margin: 0 var(--overflow-item-gap) 0 var(--overflow-item-gap);\n --overflow-container-height: calc(var(--salt-size-base) + var(--salt-spacing-100));\n --overflow-container-width: var(--vuuOverflowContainer-width, auto);\n --overflow-wrapper-height: var(--overflow-item-height);\n --overflow-item-height: var(--vuuOverflowContainer-contentHeight, calc(var(--overflow-container-height) - var(--total-border-size)));\n --overflow-item-width: auto;\n --overflow-width: 0px;\n --total-border-size: calc(var(--overflow-border-topWidth) + var(--overflow-border-bottomWidth));\n\n min-width: var(--vuuOverflowContainer-minWidth, var(--overflow-container-height));\n\n .vuuOverflowContainer-wrapContainer-overflowed {\n --overflow-left: auto;\n --overflow-position: relative;\n --overflow-width: auto;\n }\n \n}\n.vuuOverflowContainer.vuuOrientation-vertical {\n --item-align: stretch;\n --overflow-container-height: 100%;\n --overflow-container-width: var(--vuuOverflowContainer-width,calc(var(--salt-size-base) + var(--salt-spacing-100)));\n --overflow-item-height: auto;\n --overflow-item-width: calc(var(--overflow-container-width) - var(--total-border-size));\n --overflow-wrapper-height: 100%;\n --total-border-size: calc(var(--overflow-border-leftWidth) + var(--overflow-border-rightWidth));\n\n --item-margin: var(--overflow-item-gap) 0 var(--overflow-item-gap) 0;\n --overflow-direction: column; \n --overflow-height: 0px;\n --overflow-left: 0;\n --overflow-top: 100%;\n --overflow-width: auto;\n\n .vuuOverflowContainer-wrapContainer-overflowed {\n --overflow-top: auto;\n --overflow-position: relative;\n --overflow-height: auto;\n }\n\n}\n\n.vuuOverflowContainer-wrapContainer {\n align-items: var(--item-align);\n display: flex;\n flex-direction: var(--overflow-direction);\n flex-wrap: wrap;\n height: var(--overflow-wrapper-height); \n justify-content: var(--vuuOverflowContainer-justifyContent, flex-start);\n overflow: hidden;\n position: relative;\n width: 100%;\n\n}\n\n.vuuOverflowContainer-wrapContainer-overflowed {\n --overflow-order: 2;\n --overflow-left: auto;\n --overflow-position: relative;\n --overflow-width: auto;\n}\n\n.vuuOverflowContainer.vuuOrientation-vertical.vuuOverflowContainer-wrapContainer-overflowed {\n --overflow-height: auto;\n}\n\n.vuuOverflowContainer-item {\n align-items: inherit;\n display: flex;\n order: 1;\n position: relative;\n height: var(--overflow-item-height);\n margin: var(--item-margin);\n width: var(--overflow-item-width);\n}\n\n.vuuOverflowContainer-item[data-align=\"right\"] {\n margin-left: auto;\n}\n\n.vuuOverflowContainer-item.wrapped {\n --overflow-item-bg: #ccc;\n order: 3;\n visibility: hidden;\n}\n\n.vuuOverflowContainer-item.vuuDraggable-dragAway,\n.vuuOverflowContainer-item:has(.vuuDraggable-dragAway){\n display: none;\n}\n\n.vuuOverflowContainer-item.vuuDropTarget-settling {\n visibility: hidden;\n}\n\n.vuuOverflowContainer-OverflowIndicator {\n align-items: center;\n background-color: transparent;\n display: flex;\n height: var(--overflow-height);\n order: var(--overflow-order, 99);\n overflow: hidden;\n width: var(--overflow-width);\n}\n\n.vuuDraggable-vuuOverflowContainer {\n align-items: center;\n display: flex;\n height: 44px;\n}\n\n";
2
-
3
- export { overflowContainerCss as default };
4
- //# sourceMappingURL=OverflowContainer.css.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"OverflowContainer.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -1,141 +0,0 @@
1
- import { jsx, jsxs } from 'react/jsx-runtime';
2
- import { PopupMenu } from '@vuu-ui/vuu-popups';
3
- import { asReactElements, useId } from '@vuu-ui/vuu-utils';
4
- import cx from 'clsx';
5
- import { useComponentCssInjection } from '@salt-ds/styles';
6
- import { useWindow } from '@salt-ds/window';
7
- import React, { forwardRef } from 'react';
8
- import { useOverflowContainer } from './useOverflowContainer.js';
9
- import overflowContainerCss from './OverflowContainer.css.js';
10
-
11
- const classBase = "vuuOverflowContainer";
12
- const WrapContainer = React.memo(
13
- ({
14
- PopupMenuProps: PopupMenuProps2,
15
- allowDragDrop,
16
- children,
17
- id,
18
- onMoveItem,
19
- onSwitchWrappedItemIntoView,
20
- orientation,
21
- overflowIcon
22
- }) => {
23
- const childElements = asReactElements(children);
24
- const {
25
- draggable,
26
- draggedItemIndex,
27
- menuActionHandler,
28
- menuBuilder,
29
- onItemMouseDown,
30
- rootRef
31
- } = useOverflowContainer({
32
- allowDragDrop,
33
- itemCount: childElements.length,
34
- onMoveItem,
35
- onSwitchWrappedItemIntoView,
36
- orientation
37
- });
38
- const content = childElements.map((childEl, i) => {
39
- const {
40
- "data-align": align,
41
- "data-overflow-priority": overflowPriority = "0",
42
- id: itemId = `${id}-${i}`,
43
- label = `Item ${i + 1}`
44
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
45
- } = childEl.props;
46
- return /* @__PURE__ */ jsx(
47
- "div",
48
- {
49
- className: cx(`${classBase}-item`, {
50
- "vuuDraggable-dragAway": draggedItemIndex === i
51
- }),
52
- "data-index": i,
53
- "data-align": align,
54
- "data-label": label,
55
- "data-overflow-priority": overflowPriority,
56
- id: `${itemId}-wrapper`,
57
- onMouseDown: onItemMouseDown,
58
- children: childEl
59
- },
60
- i
61
- );
62
- });
63
- const overflowIndicator = /* @__PURE__ */ jsx(
64
- "div",
65
- {
66
- className: `${classBase}-OverflowIndicator`,
67
- "data-index": "overflow",
68
- children: /* @__PURE__ */ jsx(
69
- PopupMenu,
70
- {
71
- ...PopupMenuProps2,
72
- "data-embedded": true,
73
- icon: overflowIcon,
74
- menuBuilder,
75
- menuActionHandler,
76
- tabIndex: -1
77
- }
78
- )
79
- },
80
- "overflow"
81
- );
82
- content.push(overflowIndicator);
83
- return /* @__PURE__ */ jsxs("div", { className: cx(`${classBase}-wrapContainer`), ref: rootRef, children: [
84
- content,
85
- draggable
86
- ] });
87
- }
88
- );
89
- WrapContainer.displayName = "OverflowContainer.InnerContainer";
90
- const OverflowContainer = forwardRef(function OverflowContainer2({
91
- PopupMenuProps: PopupMenuProps2,
92
- allowDragDrop = false,
93
- children,
94
- className,
95
- id: idProp,
96
- onMoveItem,
97
- onSwitchWrappedItemIntoView,
98
- orientation = "horizontal",
99
- overflowIcon,
100
- overflowPosition,
101
- ...htmlAttributes
102
- }, forwardedRef) {
103
- const targetWindow = useWindow();
104
- useComponentCssInjection({
105
- testId: "vuu-overflow-container",
106
- css: overflowContainerCss,
107
- window: targetWindow
108
- });
109
- const id = useId(idProp);
110
- return /* @__PURE__ */ jsx(
111
- "div",
112
- {
113
- ...htmlAttributes,
114
- className: cx(
115
- cx(className, classBase, {
116
- "vuuOrientation-horizontal": orientation === "horizontal",
117
- "vuuOrientation-vertical": orientation === "vertical"
118
- })
119
- ),
120
- id,
121
- ref: forwardedRef,
122
- children: /* @__PURE__ */ jsx(
123
- WrapContainer,
124
- {
125
- PopupMenuProps: PopupMenuProps2,
126
- allowDragDrop,
127
- id,
128
- orientation,
129
- overflowIcon,
130
- overflowPosition,
131
- onMoveItem,
132
- onSwitchWrappedItemIntoView,
133
- children
134
- }
135
- )
136
- }
137
- );
138
- });
139
-
140
- export { OverflowContainer };
141
- //# sourceMappingURL=OverflowContainer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"OverflowContainer.js","sources":["../../../../packages/vuu-ui-controls/src/overflow-container/OverflowContainer.tsx"],"sourcesContent":["import { PopupMenu, PopupMenuProps } from \"@vuu-ui/vuu-popups\";\nimport { asReactElements, orientationType, useId } from \"@vuu-ui/vuu-utils\";\nimport cx from \"clsx\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useWindow } from \"@salt-ds/window\";\nimport React, { ForwardedRef, forwardRef, HTMLAttributes } from \"react\";\nimport { OverflowItem } from \"./overflow-utils\";\nimport { useOverflowContainer } from \"./useOverflowContainer\";\n\nimport overflowContainerCss from \"./OverflowContainer.css\";\n\nconst classBase = \"vuuOverflowContainer\";\n\nexport interface OverflowContainerProps extends HTMLAttributes<HTMLDivElement> {\n PopupMenuProps?: Partial<PopupMenuProps>;\n allowDragDrop?: boolean;\n debugId?: string;\n onMoveItem?: (fromIndex: number, toIndex: number) => void;\n onSwitchWrappedItemIntoView?: (overflowItem: OverflowItem) => void;\n orientation?: orientationType;\n overflowIcon?: string;\n overflowPosition?: \"start\" | \"end\" | number;\n}\n\nconst WrapContainer = React.memo(\n ({\n PopupMenuProps,\n allowDragDrop,\n children,\n id,\n onMoveItem,\n onSwitchWrappedItemIntoView,\n orientation,\n overflowIcon,\n }: Omit<OverflowContainerProps, \"orientation\"> &\n Required<Pick<OverflowContainerProps, \"orientation\">>) => {\n const childElements = asReactElements(children);\n const {\n draggable,\n draggedItemIndex,\n menuActionHandler,\n menuBuilder,\n onItemMouseDown,\n rootRef,\n } = useOverflowContainer({\n allowDragDrop,\n itemCount: childElements.length,\n onMoveItem,\n onSwitchWrappedItemIntoView,\n orientation,\n });\n\n const content = childElements.map((childEl, i) => {\n const {\n \"data-align\": align,\n \"data-overflow-priority\": overflowPriority = \"0\",\n id: itemId = `${id}-${i}`,\n label = `Item ${i + 1}`,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } = childEl.props as any;\n return (\n <div\n className={cx(`${classBase}-item`, {\n \"vuuDraggable-dragAway\": draggedItemIndex === i,\n })}\n data-index={i}\n data-align={align}\n data-label={label}\n data-overflow-priority={overflowPriority}\n id={`${itemId}-wrapper`}\n key={i}\n onMouseDown={onItemMouseDown}\n >\n {childEl}\n </div>\n );\n });\n\n const overflowIndicator = (\n <div\n className={`${classBase}-OverflowIndicator`}\n data-index=\"overflow\"\n key=\"overflow\"\n >\n <PopupMenu\n {...PopupMenuProps}\n data-embedded\n icon={overflowIcon}\n menuBuilder={menuBuilder}\n menuActionHandler={menuActionHandler}\n tabIndex={-1}\n />\n </div>\n );\n content.push(overflowIndicator);\n\n return (\n <div className={cx(`${classBase}-wrapContainer`)} ref={rootRef}>\n {content}\n {draggable}\n </div>\n );\n },\n);\n\nWrapContainer.displayName = \"OverflowContainer.InnerContainer\";\n\nexport const OverflowContainer = forwardRef(function OverflowContainer(\n {\n PopupMenuProps,\n allowDragDrop = false,\n children,\n className,\n id: idProp,\n onMoveItem,\n onSwitchWrappedItemIntoView,\n orientation = \"horizontal\",\n overflowIcon,\n overflowPosition,\n ...htmlAttributes\n }: OverflowContainerProps,\n forwardedRef: ForwardedRef<HTMLDivElement>,\n) {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"vuu-overflow-container\",\n css: overflowContainerCss,\n window: targetWindow,\n });\n\n const id = useId(idProp);\n\n return (\n <div\n {...htmlAttributes}\n className={cx(\n cx(className, classBase, {\n \"vuuOrientation-horizontal\": orientation === \"horizontal\",\n \"vuuOrientation-vertical\": orientation === \"vertical\",\n }),\n )}\n id={id}\n ref={forwardedRef}\n >\n <WrapContainer\n PopupMenuProps={PopupMenuProps}\n allowDragDrop={allowDragDrop}\n id={id}\n orientation={orientation}\n overflowIcon={overflowIcon}\n overflowPosition={overflowPosition}\n onMoveItem={onMoveItem}\n onSwitchWrappedItemIntoView={onSwitchWrappedItemIntoView}\n >\n {children}\n </WrapContainer>\n </div>\n );\n});\n"],"names":["PopupMenuProps","OverflowContainer"],"mappings":"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"}