@vuu-ui/vuu-ui-controls 0.9.2 → 0.9.3

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 (986) hide show
  1. package/cjs/node_modules/tabbable/dist/index.esm.js +539 -0
  2. package/cjs/node_modules/tabbable/dist/index.esm.js.map +1 -0
  3. package/cjs/packages/vuu-ui-controls/src/calendar/Calendar.js.map +1 -0
  4. package/cjs/packages/vuu-ui-controls/src/calendar/internal/CalendarCarousel.js.map +1 -0
  5. package/cjs/packages/vuu-ui-controls/src/calendar/internal/CalendarContext.js.map +1 -0
  6. package/cjs/packages/vuu-ui-controls/src/calendar/internal/CalendarDay.js.map +1 -0
  7. package/cjs/packages/vuu-ui-controls/src/calendar/internal/CalendarMonth.js.map +1 -0
  8. package/cjs/packages/vuu-ui-controls/src/calendar/internal/CalendarNavigation.js.map +1 -0
  9. package/cjs/packages/vuu-ui-controls/src/calendar/internal/CalendarWeekHeader.js.map +1 -0
  10. package/cjs/packages/vuu-ui-controls/src/calendar/internal/useFocusManagement.js.map +1 -0
  11. package/cjs/packages/vuu-ui-controls/src/calendar/internal/utils.js.map +1 -0
  12. package/cjs/packages/vuu-ui-controls/src/calendar/useCalendar.js.map +1 -0
  13. package/cjs/packages/vuu-ui-controls/src/calendar/useCalendarDay.js.map +1 -0
  14. package/cjs/packages/vuu-ui-controls/src/calendar/useSelection.js.map +1 -0
  15. package/cjs/packages/vuu-ui-controls/src/column-picker/ColumnPicker.js.map +1 -0
  16. package/cjs/packages/vuu-ui-controls/src/column-picker/ColumnSearch.js.map +1 -0
  17. package/cjs/packages/vuu-ui-controls/src/common-hooks/collectionProvider.js.map +1 -0
  18. package/cjs/packages/vuu-ui-controls/src/common-hooks/isPlainObject.js.map +1 -0
  19. package/cjs/packages/vuu-ui-controls/src/common-hooks/itemToString.js.map +1 -0
  20. package/cjs/packages/vuu-ui-controls/src/common-hooks/selectionTypes.js.map +1 -0
  21. package/cjs/packages/vuu-ui-controls/src/common-hooks/use-resize-observer.js.map +1 -0
  22. package/cjs/packages/vuu-ui-controls/src/common-hooks/useCollectionItems.js.map +1 -0
  23. package/cjs/packages/vuu-ui-controls/src/common-hooks/useControlled.js.map +1 -0
  24. package/cjs/packages/vuu-ui-controls/src/common-hooks/useSelection.js.map +1 -0
  25. package/cjs/packages/vuu-ui-controls/src/cycle-state-button/CycleStateButton.js.map +1 -0
  26. package/cjs/packages/vuu-ui-controls/src/date-input/DateInput.js.map +1 -0
  27. package/cjs/packages/vuu-ui-controls/src/date-picker/DatePicker.js.map +1 -0
  28. package/cjs/packages/vuu-ui-controls/src/date-picker/DatePickerContext.js.map +1 -0
  29. package/cjs/packages/vuu-ui-controls/src/date-picker/DatePickerPanel.js.map +1 -0
  30. package/cjs/packages/vuu-ui-controls/src/drag-drop/DragDropProvider.js.map +1 -0
  31. package/cjs/packages/vuu-ui-controls/src/drag-drop/DragDropState.js.map +1 -0
  32. package/cjs/packages/vuu-ui-controls/src/drag-drop/Draggable.js +90 -0
  33. package/cjs/packages/vuu-ui-controls/src/drag-drop/Draggable.js.map +1 -0
  34. package/cjs/packages/vuu-ui-controls/src/drag-drop/dragDropTypes.js.map +1 -0
  35. package/cjs/packages/vuu-ui-controls/src/drag-drop/drop-target-utils.js.map +1 -0
  36. package/cjs/packages/vuu-ui-controls/src/drag-drop/useAutoScroll.js.map +1 -0
  37. package/cjs/packages/vuu-ui-controls/src/drag-drop/useDragDisplacers.js.map +1 -0
  38. package/cjs/packages/vuu-ui-controls/src/drag-drop/useDragDrop.js.map +1 -0
  39. package/cjs/packages/vuu-ui-controls/src/drag-drop/useDragDropCopy.js.map +1 -0
  40. package/cjs/packages/vuu-ui-controls/src/drag-drop/useDragDropIndicator.js.map +1 -0
  41. package/cjs/packages/vuu-ui-controls/src/drag-drop/useDragDropNaturalMovement.js.map +1 -0
  42. package/cjs/packages/vuu-ui-controls/src/drag-drop/useDropIndicator.js.map +1 -0
  43. package/cjs/packages/vuu-ui-controls/src/drag-drop/useGlobalDragDrop.js.map +1 -0
  44. package/cjs/packages/vuu-ui-controls/src/editable/useEditableText.js.map +1 -0
  45. package/cjs/packages/vuu-ui-controls/src/editable-label/EditableLabel.js.map +1 -0
  46. package/cjs/packages/vuu-ui-controls/src/expando-input/ExpandoInput.js.map +1 -0
  47. package/cjs/packages/vuu-ui-controls/src/icon-button/Icon.js.map +1 -0
  48. package/cjs/packages/vuu-ui-controls/src/icon-button/IconButton.js.map +1 -0
  49. package/cjs/packages/vuu-ui-controls/src/icon-button/ToggleIconButton.css.js +6 -0
  50. package/cjs/packages/vuu-ui-controls/src/icon-button/ToggleIconButton.js.map +1 -0
  51. package/cjs/packages/vuu-ui-controls/src/index.js +232 -0
  52. package/cjs/packages/vuu-ui-controls/src/index.js.map +1 -0
  53. package/cjs/packages/vuu-ui-controls/src/instrument-picker/TablePicker.js.map +1 -0
  54. package/cjs/packages/vuu-ui-controls/src/instrument-picker/useTablePicker.js.map +1 -0
  55. package/cjs/packages/vuu-ui-controls/src/list/Highlighter.js.map +1 -0
  56. package/cjs/packages/vuu-ui-controls/src/list/List.js.map +1 -0
  57. package/cjs/packages/vuu-ui-controls/src/list/ListItem.js.map +1 -0
  58. package/cjs/packages/vuu-ui-controls/src/list/ListItemGroup.js.map +1 -0
  59. package/cjs/packages/vuu-ui-controls/src/list/ListItemHeader.js.map +1 -0
  60. package/cjs/packages/vuu-ui-controls/src/list/RadioIcon.js.map +1 -0
  61. package/cjs/packages/vuu-ui-controls/src/list/common-hooks/keyUtils.js.map +1 -0
  62. package/cjs/packages/vuu-ui-controls/src/list/common-hooks/list-dom-utils.js.map +1 -0
  63. package/cjs/packages/vuu-ui-controls/src/list/common-hooks/useCollapsibleGroups.js.map +1 -0
  64. package/cjs/packages/vuu-ui-controls/src/list/common-hooks/useImperativeScrollingAPI.js.map +1 -0
  65. package/cjs/packages/vuu-ui-controls/src/list/common-hooks/useKeyboardNavigation.js.map +1 -0
  66. package/cjs/packages/vuu-ui-controls/src/list/common-hooks/useTypeahead.js.map +1 -0
  67. package/cjs/packages/vuu-ui-controls/src/list/common-hooks/useViewportTracking.js.map +1 -0
  68. package/cjs/packages/vuu-ui-controls/src/list/common-hooks/utils/collection-item-utils.js.map +1 -0
  69. package/cjs/packages/vuu-ui-controls/src/list/common-hooks/utils/filter-utils.js.map +1 -0
  70. package/cjs/packages/vuu-ui-controls/src/list/common-hooks/utils/isSelected.js.map +1 -0
  71. package/cjs/packages/vuu-ui-controls/src/list/useList.js.map +1 -0
  72. package/cjs/packages/vuu-ui-controls/src/list/useListDrop.js.map +1 -0
  73. package/cjs/packages/vuu-ui-controls/src/list/useListHeight.js.map +1 -0
  74. package/cjs/packages/vuu-ui-controls/src/list/useScrollPosition.js.map +1 -0
  75. package/cjs/packages/vuu-ui-controls/src/measured-container/MeasuredContainer.js +70 -0
  76. package/cjs/packages/vuu-ui-controls/src/measured-container/MeasuredContainer.js.map +1 -0
  77. package/cjs/packages/vuu-ui-controls/src/measured-container/useMeasuredContainer.js +140 -0
  78. package/cjs/packages/vuu-ui-controls/src/measured-container/useMeasuredContainer.js.map +1 -0
  79. package/cjs/packages/vuu-ui-controls/src/measured-container/useResizeObserver.js.map +1 -0
  80. package/cjs/packages/vuu-ui-controls/src/overflow-container/OverflowContainer.js.map +1 -0
  81. package/cjs/packages/vuu-ui-controls/src/overflow-container/overflow-utils.js.map +1 -0
  82. package/cjs/packages/vuu-ui-controls/src/overflow-container/useOverflowContainer.js.map +1 -0
  83. package/cjs/packages/vuu-ui-controls/src/price-ticker/PriceTicker.js.map +1 -0
  84. package/cjs/packages/vuu-ui-controls/src/split-button/SplitButton.css.js +6 -0
  85. package/cjs/packages/vuu-ui-controls/src/split-button/SplitButton.js.map +1 -0
  86. package/cjs/packages/vuu-ui-controls/src/split-button/SplitStateButton.css.js +6 -0
  87. package/cjs/packages/vuu-ui-controls/src/split-button/SplitStateButton.js.map +1 -0
  88. package/cjs/packages/vuu-ui-controls/src/split-button/useSplitButton.js.map +1 -0
  89. package/cjs/packages/vuu-ui-controls/src/table-search/SearchCell.js.map +1 -0
  90. package/cjs/packages/vuu-ui-controls/src/table-search/TableSearch.js.map +1 -0
  91. package/cjs/packages/vuu-ui-controls/src/table-search/useTableSearch.js.map +1 -0
  92. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabBar.css.js +6 -0
  93. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabBar.css.js.map +1 -0
  94. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabBar.js +41 -0
  95. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabBar.js.map +1 -0
  96. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabListNext.css.js +6 -0
  97. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabListNext.css.js.map +1 -0
  98. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabListNext.js +124 -0
  99. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabListNext.js.map +1 -0
  100. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabNext.css.js +6 -0
  101. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabNext.css.js.map +1 -0
  102. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabNext.js +110 -0
  103. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabNext.js.map +1 -0
  104. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabNextAction.js +35 -0
  105. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabNextAction.js.map +1 -0
  106. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabNextContext.js +23 -0
  107. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabNextContext.js.map +1 -0
  108. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabNextPanel.css.js +6 -0
  109. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabNextPanel.css.js.map +1 -0
  110. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabNextPanel.js +77 -0
  111. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabNextPanel.js.map +1 -0
  112. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabNextTrigger.css.js +6 -0
  113. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabNextTrigger.css.js.map +1 -0
  114. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabNextTrigger.js +74 -0
  115. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabNextTrigger.js.map +1 -0
  116. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabOverflowList.css.js +6 -0
  117. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabOverflowList.css.js.map +1 -0
  118. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabOverflowList.js +130 -0
  119. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabOverflowList.js.map +1 -0
  120. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabsNext.js +174 -0
  121. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabsNext.js.map +1 -0
  122. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabsNextContext.js +33 -0
  123. package/cjs/packages/vuu-ui-controls/src/tabs-next/TabsNextContext.js.map +1 -0
  124. package/cjs/packages/vuu-ui-controls/src/tabs-next/hooks/useCollection.js +91 -0
  125. package/cjs/packages/vuu-ui-controls/src/tabs-next/hooks/useCollection.js.map +1 -0
  126. package/cjs/packages/vuu-ui-controls/src/tabs-next/hooks/useFocusOutside.js +24 -0
  127. package/cjs/packages/vuu-ui-controls/src/tabs-next/hooks/useFocusOutside.js.map +1 -0
  128. package/cjs/packages/vuu-ui-controls/src/tabs-next/hooks/useOverflow.js +138 -0
  129. package/cjs/packages/vuu-ui-controls/src/tabs-next/hooks/useOverflow.js.map +1 -0
  130. package/cjs/packages/vuu-ui-controls/src/tabstrip/Tab.js.map +1 -0
  131. package/cjs/packages/vuu-ui-controls/src/tabstrip/TabMenu.js.map +1 -0
  132. package/cjs/packages/vuu-ui-controls/src/tabstrip/TabMenuOptions.js.map +1 -0
  133. package/cjs/packages/vuu-ui-controls/src/tabstrip/Tabstrip.css.js +6 -0
  134. package/cjs/packages/vuu-ui-controls/src/tabstrip/Tabstrip.js.map +1 -0
  135. package/cjs/packages/vuu-ui-controls/src/tabstrip/tabstrip-dom-utils.js.map +1 -0
  136. package/cjs/packages/vuu-ui-controls/src/tabstrip/useAnimatedSelectionThumb.js.map +1 -0
  137. package/cjs/packages/vuu-ui-controls/src/tabstrip/useKeyboardNavigation.js.map +1 -0
  138. package/cjs/packages/vuu-ui-controls/src/tabstrip/useSelection.js.map +1 -0
  139. package/cjs/packages/vuu-ui-controls/src/tabstrip/useTabstrip.js.map +1 -0
  140. package/cjs/packages/vuu-ui-controls/src/toolbar/Toolbar.js.map +1 -0
  141. package/cjs/packages/vuu-ui-controls/src/toolbar/toolbar-dom-utils.js.map +1 -0
  142. package/cjs/packages/vuu-ui-controls/src/toolbar/useKeyboardNavigation.js.map +1 -0
  143. package/cjs/packages/vuu-ui-controls/src/toolbar/useSelection.js.map +1 -0
  144. package/cjs/packages/vuu-ui-controls/src/toolbar/useToolbar.js.map +1 -0
  145. package/cjs/packages/vuu-ui-controls/src/utils/escapeRegExp.js.map +1 -0
  146. package/cjs/packages/vuu-ui-controls/src/utils/forwardCallbackProps.js.map +1 -0
  147. package/cjs/packages/vuu-ui-controls/src/utils/isOverflowElement.js.map +1 -0
  148. package/cjs/packages/vuu-ui-controls/src/utils/isPlainObject.js.map +1 -0
  149. package/cjs/packages/vuu-ui-controls/src/vuu-date-picker/VuuDatePicker.js.map +1 -0
  150. package/cjs/packages/vuu-ui-controls/src/vuu-input/VuuInput.js.map +1 -0
  151. package/cjs/packages/vuu-ui-controls/src/vuu-typeahead-input/VuuTypeaheadInput.js.map +1 -0
  152. package/cjs/packages/vuu-ui-controls/src/vuu-typeahead-input/useVuuTypeaheadInput.js.map +1 -0
  153. package/esm/node_modules/tabbable/dist/index.esm.js +536 -0
  154. package/esm/node_modules/tabbable/dist/index.esm.js.map +1 -0
  155. package/esm/packages/vuu-ui-controls/src/calendar/Calendar.js.map +1 -0
  156. package/esm/packages/vuu-ui-controls/src/calendar/internal/CalendarCarousel.js.map +1 -0
  157. package/esm/packages/vuu-ui-controls/src/calendar/internal/CalendarContext.js.map +1 -0
  158. package/esm/packages/vuu-ui-controls/src/calendar/internal/CalendarDay.js.map +1 -0
  159. package/esm/packages/vuu-ui-controls/src/calendar/internal/CalendarMonth.js.map +1 -0
  160. package/esm/packages/vuu-ui-controls/src/calendar/internal/CalendarNavigation.js.map +1 -0
  161. package/esm/packages/vuu-ui-controls/src/calendar/internal/CalendarWeekHeader.js.map +1 -0
  162. package/esm/packages/vuu-ui-controls/src/calendar/internal/useFocusManagement.js.map +1 -0
  163. package/esm/packages/vuu-ui-controls/src/calendar/internal/utils.js.map +1 -0
  164. package/esm/packages/vuu-ui-controls/src/calendar/useCalendar.js.map +1 -0
  165. package/esm/packages/vuu-ui-controls/src/calendar/useCalendarDay.js.map +1 -0
  166. package/esm/packages/vuu-ui-controls/src/calendar/useSelection.js.map +1 -0
  167. package/esm/packages/vuu-ui-controls/src/column-picker/ColumnPicker.js.map +1 -0
  168. package/esm/packages/vuu-ui-controls/src/column-picker/ColumnSearch.js.map +1 -0
  169. package/esm/packages/vuu-ui-controls/src/common-hooks/collectionProvider.js.map +1 -0
  170. package/esm/packages/vuu-ui-controls/src/common-hooks/isPlainObject.js.map +1 -0
  171. package/esm/packages/vuu-ui-controls/src/common-hooks/itemToString.js.map +1 -0
  172. package/esm/packages/vuu-ui-controls/src/common-hooks/selectionTypes.js.map +1 -0
  173. package/esm/packages/vuu-ui-controls/src/common-hooks/use-resize-observer.js.map +1 -0
  174. package/esm/packages/vuu-ui-controls/src/common-hooks/useCollectionItems.js.map +1 -0
  175. package/esm/packages/vuu-ui-controls/src/common-hooks/useControlled.js.map +1 -0
  176. package/esm/packages/vuu-ui-controls/src/common-hooks/useSelection.js.map +1 -0
  177. package/esm/packages/vuu-ui-controls/src/cycle-state-button/CycleStateButton.js.map +1 -0
  178. package/esm/packages/vuu-ui-controls/src/date-input/DateInput.js.map +1 -0
  179. package/esm/packages/vuu-ui-controls/src/date-picker/DatePicker.js.map +1 -0
  180. package/esm/packages/vuu-ui-controls/src/date-picker/DatePickerContext.js.map +1 -0
  181. package/esm/packages/vuu-ui-controls/src/date-picker/DatePickerPanel.js.map +1 -0
  182. package/esm/packages/vuu-ui-controls/src/drag-drop/DragDropProvider.js.map +1 -0
  183. package/esm/packages/vuu-ui-controls/src/drag-drop/DragDropState.js.map +1 -0
  184. package/esm/packages/vuu-ui-controls/src/drag-drop/Draggable.js +85 -0
  185. package/esm/packages/vuu-ui-controls/src/drag-drop/Draggable.js.map +1 -0
  186. package/esm/packages/vuu-ui-controls/src/drag-drop/dragDropTypes.js.map +1 -0
  187. package/esm/packages/vuu-ui-controls/src/drag-drop/drop-target-utils.js.map +1 -0
  188. package/esm/packages/vuu-ui-controls/src/drag-drop/useAutoScroll.js.map +1 -0
  189. package/esm/packages/vuu-ui-controls/src/drag-drop/useDragDisplacers.js.map +1 -0
  190. package/esm/packages/vuu-ui-controls/src/drag-drop/useDragDrop.js +502 -0
  191. package/esm/packages/vuu-ui-controls/src/drag-drop/useDragDrop.js.map +1 -0
  192. package/esm/packages/vuu-ui-controls/src/drag-drop/useDragDropCopy.js.map +1 -0
  193. package/esm/packages/vuu-ui-controls/src/drag-drop/useDragDropIndicator.js +249 -0
  194. package/esm/packages/vuu-ui-controls/src/drag-drop/useDragDropIndicator.js.map +1 -0
  195. package/esm/packages/vuu-ui-controls/src/drag-drop/useDragDropNaturalMovement.js +263 -0
  196. package/esm/packages/vuu-ui-controls/src/drag-drop/useDragDropNaturalMovement.js.map +1 -0
  197. package/esm/packages/vuu-ui-controls/src/drag-drop/useDropIndicator.js.map +1 -0
  198. package/esm/packages/vuu-ui-controls/src/drag-drop/useGlobalDragDrop.js.map +1 -0
  199. package/esm/packages/vuu-ui-controls/src/editable/useEditableText.js.map +1 -0
  200. package/esm/packages/vuu-ui-controls/src/editable-label/EditableLabel.js.map +1 -0
  201. package/esm/packages/vuu-ui-controls/src/expando-input/ExpandoInput.js.map +1 -0
  202. package/esm/packages/vuu-ui-controls/src/icon-button/Icon.js.map +1 -0
  203. package/esm/packages/vuu-ui-controls/src/icon-button/IconButton.js.map +1 -0
  204. package/esm/packages/vuu-ui-controls/src/icon-button/ToggleIconButton.css.js +4 -0
  205. package/esm/packages/vuu-ui-controls/src/icon-button/ToggleIconButton.js.map +1 -0
  206. package/esm/packages/vuu-ui-controls/src/index.js +73 -0
  207. package/esm/packages/vuu-ui-controls/src/index.js.map +1 -0
  208. package/esm/packages/vuu-ui-controls/src/instrument-picker/TablePicker.js.map +1 -0
  209. package/esm/packages/vuu-ui-controls/src/instrument-picker/useTablePicker.js.map +1 -0
  210. package/esm/packages/vuu-ui-controls/src/list/Highlighter.js.map +1 -0
  211. package/esm/packages/vuu-ui-controls/src/list/List.js.map +1 -0
  212. package/esm/packages/vuu-ui-controls/src/list/ListItem.js.map +1 -0
  213. package/esm/packages/vuu-ui-controls/src/list/ListItemGroup.js.map +1 -0
  214. package/esm/packages/vuu-ui-controls/src/list/ListItemHeader.js.map +1 -0
  215. package/esm/packages/vuu-ui-controls/src/list/RadioIcon.js.map +1 -0
  216. package/esm/packages/vuu-ui-controls/src/list/common-hooks/keyUtils.js.map +1 -0
  217. package/esm/packages/vuu-ui-controls/src/list/common-hooks/list-dom-utils.js.map +1 -0
  218. package/esm/packages/vuu-ui-controls/src/list/common-hooks/useCollapsibleGroups.js.map +1 -0
  219. package/esm/packages/vuu-ui-controls/src/list/common-hooks/useImperativeScrollingAPI.js.map +1 -0
  220. package/esm/packages/vuu-ui-controls/src/list/common-hooks/useKeyboardNavigation.js.map +1 -0
  221. package/esm/packages/vuu-ui-controls/src/list/common-hooks/useTypeahead.js.map +1 -0
  222. package/esm/packages/vuu-ui-controls/src/list/common-hooks/useViewportTracking.js.map +1 -0
  223. package/esm/packages/vuu-ui-controls/src/list/common-hooks/utils/collection-item-utils.js.map +1 -0
  224. package/esm/packages/vuu-ui-controls/src/list/common-hooks/utils/filter-utils.js.map +1 -0
  225. package/esm/packages/vuu-ui-controls/src/list/common-hooks/utils/isSelected.js.map +1 -0
  226. package/esm/packages/vuu-ui-controls/src/list/useList.js.map +1 -0
  227. package/esm/packages/vuu-ui-controls/src/list/useListDrop.js.map +1 -0
  228. package/esm/packages/vuu-ui-controls/src/list/useListHeight.js.map +1 -0
  229. package/esm/packages/vuu-ui-controls/src/list/useScrollPosition.js.map +1 -0
  230. package/esm/packages/vuu-ui-controls/src/measured-container/MeasuredContainer.js +68 -0
  231. package/esm/packages/vuu-ui-controls/src/measured-container/MeasuredContainer.js.map +1 -0
  232. package/esm/packages/vuu-ui-controls/src/measured-container/useMeasuredContainer.js +137 -0
  233. package/esm/packages/vuu-ui-controls/src/measured-container/useMeasuredContainer.js.map +1 -0
  234. package/esm/packages/vuu-ui-controls/src/measured-container/useResizeObserver.js.map +1 -0
  235. package/esm/packages/vuu-ui-controls/src/overflow-container/OverflowContainer.js.map +1 -0
  236. package/esm/packages/vuu-ui-controls/src/overflow-container/overflow-utils.js.map +1 -0
  237. package/esm/packages/vuu-ui-controls/src/overflow-container/useOverflowContainer.js.map +1 -0
  238. package/esm/packages/vuu-ui-controls/src/price-ticker/PriceTicker.js.map +1 -0
  239. package/esm/packages/vuu-ui-controls/src/split-button/SplitButton.css.js +4 -0
  240. package/esm/packages/vuu-ui-controls/src/split-button/SplitButton.js.map +1 -0
  241. package/esm/packages/vuu-ui-controls/src/split-button/SplitStateButton.css.js +4 -0
  242. package/esm/packages/vuu-ui-controls/src/split-button/SplitStateButton.js.map +1 -0
  243. package/esm/packages/vuu-ui-controls/src/split-button/useSplitButton.js.map +1 -0
  244. package/esm/packages/vuu-ui-controls/src/table-search/SearchCell.js.map +1 -0
  245. package/esm/packages/vuu-ui-controls/src/table-search/TableSearch.js.map +1 -0
  246. package/esm/packages/vuu-ui-controls/src/table-search/useTableSearch.js.map +1 -0
  247. package/esm/packages/vuu-ui-controls/src/tabs-next/TabBar.css.js +4 -0
  248. package/esm/packages/vuu-ui-controls/src/tabs-next/TabBar.css.js.map +1 -0
  249. package/esm/packages/vuu-ui-controls/src/tabs-next/TabBar.js +39 -0
  250. package/esm/packages/vuu-ui-controls/src/tabs-next/TabBar.js.map +1 -0
  251. package/esm/packages/vuu-ui-controls/src/tabs-next/TabListNext.css.js +4 -0
  252. package/esm/packages/vuu-ui-controls/src/tabs-next/TabListNext.css.js.map +1 -0
  253. package/esm/packages/vuu-ui-controls/src/tabs-next/TabListNext.js +122 -0
  254. package/esm/packages/vuu-ui-controls/src/tabs-next/TabListNext.js.map +1 -0
  255. package/esm/packages/vuu-ui-controls/src/tabs-next/TabNext.css.js +4 -0
  256. package/esm/packages/vuu-ui-controls/src/tabs-next/TabNext.css.js.map +1 -0
  257. package/esm/packages/vuu-ui-controls/src/tabs-next/TabNext.js +108 -0
  258. package/esm/packages/vuu-ui-controls/src/tabs-next/TabNext.js.map +1 -0
  259. package/esm/packages/vuu-ui-controls/src/tabs-next/TabNextAction.js +33 -0
  260. package/esm/packages/vuu-ui-controls/src/tabs-next/TabNextAction.js.map +1 -0
  261. package/esm/packages/vuu-ui-controls/src/tabs-next/TabNextContext.js +20 -0
  262. package/esm/packages/vuu-ui-controls/src/tabs-next/TabNextContext.js.map +1 -0
  263. package/esm/packages/vuu-ui-controls/src/tabs-next/TabNextPanel.css.js +4 -0
  264. package/esm/packages/vuu-ui-controls/src/tabs-next/TabNextPanel.css.js.map +1 -0
  265. package/esm/packages/vuu-ui-controls/src/tabs-next/TabNextPanel.js +75 -0
  266. package/esm/packages/vuu-ui-controls/src/tabs-next/TabNextPanel.js.map +1 -0
  267. package/esm/packages/vuu-ui-controls/src/tabs-next/TabNextTrigger.css.js +4 -0
  268. package/esm/packages/vuu-ui-controls/src/tabs-next/TabNextTrigger.css.js.map +1 -0
  269. package/esm/packages/vuu-ui-controls/src/tabs-next/TabNextTrigger.js +72 -0
  270. package/esm/packages/vuu-ui-controls/src/tabs-next/TabNextTrigger.js.map +1 -0
  271. package/esm/packages/vuu-ui-controls/src/tabs-next/TabOverflowList.css.js +4 -0
  272. package/esm/packages/vuu-ui-controls/src/tabs-next/TabOverflowList.css.js.map +1 -0
  273. package/esm/packages/vuu-ui-controls/src/tabs-next/TabOverflowList.js +128 -0
  274. package/esm/packages/vuu-ui-controls/src/tabs-next/TabOverflowList.js.map +1 -0
  275. package/esm/packages/vuu-ui-controls/src/tabs-next/TabsNext.js +172 -0
  276. package/esm/packages/vuu-ui-controls/src/tabs-next/TabsNext.js.map +1 -0
  277. package/esm/packages/vuu-ui-controls/src/tabs-next/TabsNextContext.js +30 -0
  278. package/esm/packages/vuu-ui-controls/src/tabs-next/TabsNextContext.js.map +1 -0
  279. package/esm/packages/vuu-ui-controls/src/tabs-next/hooks/useCollection.js +89 -0
  280. package/esm/packages/vuu-ui-controls/src/tabs-next/hooks/useCollection.js.map +1 -0
  281. package/esm/packages/vuu-ui-controls/src/tabs-next/hooks/useFocusOutside.js +22 -0
  282. package/esm/packages/vuu-ui-controls/src/tabs-next/hooks/useFocusOutside.js.map +1 -0
  283. package/esm/packages/vuu-ui-controls/src/tabs-next/hooks/useOverflow.js +136 -0
  284. package/esm/packages/vuu-ui-controls/src/tabs-next/hooks/useOverflow.js.map +1 -0
  285. package/esm/packages/vuu-ui-controls/src/tabstrip/Tab.js.map +1 -0
  286. package/esm/packages/vuu-ui-controls/src/tabstrip/TabMenu.js.map +1 -0
  287. package/esm/packages/vuu-ui-controls/src/tabstrip/TabMenuOptions.js.map +1 -0
  288. package/esm/packages/vuu-ui-controls/src/tabstrip/Tabstrip.css.js +4 -0
  289. package/esm/packages/vuu-ui-controls/src/tabstrip/Tabstrip.js.map +1 -0
  290. package/esm/packages/vuu-ui-controls/src/tabstrip/tabstrip-dom-utils.js.map +1 -0
  291. package/esm/packages/vuu-ui-controls/src/tabstrip/useAnimatedSelectionThumb.js.map +1 -0
  292. package/esm/packages/vuu-ui-controls/src/tabstrip/useKeyboardNavigation.js.map +1 -0
  293. package/esm/packages/vuu-ui-controls/src/tabstrip/useSelection.js.map +1 -0
  294. package/esm/packages/vuu-ui-controls/src/tabstrip/useTabstrip.js.map +1 -0
  295. package/esm/packages/vuu-ui-controls/src/toolbar/Toolbar.js.map +1 -0
  296. package/esm/packages/vuu-ui-controls/src/toolbar/toolbar-dom-utils.js.map +1 -0
  297. package/esm/packages/vuu-ui-controls/src/toolbar/useKeyboardNavigation.js.map +1 -0
  298. package/esm/packages/vuu-ui-controls/src/toolbar/useSelection.js.map +1 -0
  299. package/esm/packages/vuu-ui-controls/src/toolbar/useToolbar.js.map +1 -0
  300. package/esm/packages/vuu-ui-controls/src/utils/escapeRegExp.js.map +1 -0
  301. package/esm/packages/vuu-ui-controls/src/utils/forwardCallbackProps.js.map +1 -0
  302. package/esm/packages/vuu-ui-controls/src/utils/isOverflowElement.js.map +1 -0
  303. package/esm/packages/vuu-ui-controls/src/utils/isPlainObject.js.map +1 -0
  304. package/esm/packages/vuu-ui-controls/src/vuu-date-picker/VuuDatePicker.js.map +1 -0
  305. package/esm/packages/vuu-ui-controls/src/vuu-input/VuuInput.js.map +1 -0
  306. package/esm/packages/vuu-ui-controls/src/vuu-typeahead-input/VuuTypeaheadInput.js.map +1 -0
  307. package/esm/packages/vuu-ui-controls/src/vuu-typeahead-input/useVuuTypeaheadInput.js.map +1 -0
  308. package/package.json +9 -9
  309. package/types/calendar/Calendar.d.ts +0 -1
  310. package/types/calendar/internal/CalendarCarousel.d.ts +0 -1
  311. package/types/calendar/internal/CalendarContext.d.ts +0 -1
  312. package/types/calendar/useCalendar.d.ts +4 -4
  313. package/types/calendar/useCalendarDay.d.ts +2 -2
  314. package/types/column-picker/ColumnPicker.d.ts +0 -1
  315. package/types/common-hooks/collectionProvider.d.ts +1 -1
  316. package/types/common-hooks/selectionTypes.d.ts +1 -1
  317. package/types/cycle-state-button/CycleStateButton.d.ts +0 -1
  318. package/types/date-picker/DatePickerContext.d.ts +0 -1
  319. package/types/drag-drop/DragDropProvider.d.ts +1 -1
  320. package/types/drag-drop/DropIndicator.d.ts +1 -2
  321. package/types/drag-drop/drop-target-utils.d.ts +24 -20
  322. package/types/drag-drop/useAutoScroll.d.ts +2 -2
  323. package/types/drag-drop/useGlobalDragDrop.d.ts +0 -1
  324. package/types/expando-input/ExpandoInput.d.ts +0 -1
  325. package/types/icon-button/Icon.d.ts +1 -1
  326. package/types/icon-button/IconButton.d.ts +0 -1
  327. package/types/icon-button/ToggleIconButton.d.ts +1 -2
  328. package/types/index.d.ts +1 -1
  329. package/types/instrument-picker/SearchCell.d.ts +1 -2
  330. package/types/instrument-picker/TablePicker.d.ts +1 -1
  331. package/types/instrument-picker/useTablePicker.d.ts +3 -10
  332. package/types/list/ChevronIcon.d.ts +1 -1
  333. package/types/list/ListItem.d.ts +1 -1
  334. package/types/list/RadioIcon.d.ts +1 -2
  335. package/types/list/common-hooks/useTypeahead.d.ts +0 -1
  336. package/types/overflow-container/useOverflowContainer.d.ts +4 -5
  337. package/types/price-ticker/PriceTicker.d.ts +1 -1
  338. package/types/split-button/SplitStateButton.d.ts +0 -1
  339. package/types/split-button/useSplitButton.d.ts +58 -55
  340. package/types/table-search/SearchCell.d.ts +1 -2
  341. package/types/table-search/TableSearch.d.ts +1 -1
  342. package/types/tabs-next/TabBar.d.ts +12 -0
  343. package/types/tabs-next/TabListNext.d.ts +12 -0
  344. package/types/tabs-next/TabNext.d.ts +12 -0
  345. package/types/tabs-next/TabNextAction.d.ts +5 -0
  346. package/types/tabs-next/TabNextContext.d.ts +12 -0
  347. package/types/tabs-next/TabNextPanel.d.ts +8 -0
  348. package/types/tabs-next/TabNextTrigger.d.ts +5 -0
  349. package/types/tabs-next/TabOverflowList.d.ts +11 -0
  350. package/types/tabs-next/TabsNext.d.ts +17 -0
  351. package/types/tabs-next/TabsNextContext.d.ts +21 -0
  352. package/types/tabs-next/hooks/useCollection.d.ts +18 -0
  353. package/types/tabs-next/hooks/useFocusOutside.d.ts +2 -0
  354. package/types/tabs-next/hooks/useOverflow.d.ts +11 -0
  355. package/types/tabs-next/index.d.ts +7 -0
  356. package/types/tabstrip/Tab.d.ts +23 -22
  357. package/types/tabstrip/TabMenu.d.ts +1 -2
  358. package/types/tabstrip/Tabstrip.d.ts +1 -2
  359. package/types/tabstrip/useSelection.d.ts +3 -3
  360. package/types/tabstrip/useTabstrip.d.ts +5 -5
  361. package/types/toolbar/Toolbar.d.ts +1 -2
  362. package/types/toolbar/useToolbar.d.ts +1 -1
  363. package/types/vuu-date-picker/VuuDatePicker.d.ts +4 -6
  364. package/types/vuu-typeahead-input/VuuTypeaheadInput.d.ts +1 -2
  365. package/cjs/calendar/Calendar.js.map +0 -1
  366. package/cjs/calendar/internal/CalendarCarousel.js.map +0 -1
  367. package/cjs/calendar/internal/CalendarContext.js.map +0 -1
  368. package/cjs/calendar/internal/CalendarDay.js.map +0 -1
  369. package/cjs/calendar/internal/CalendarMonth.js.map +0 -1
  370. package/cjs/calendar/internal/CalendarNavigation.js.map +0 -1
  371. package/cjs/calendar/internal/CalendarWeekHeader.js.map +0 -1
  372. package/cjs/calendar/internal/useFocusManagement.js.map +0 -1
  373. package/cjs/calendar/internal/utils.js.map +0 -1
  374. package/cjs/calendar/useCalendar.js.map +0 -1
  375. package/cjs/calendar/useCalendarDay.js.map +0 -1
  376. package/cjs/calendar/useSelection.js.map +0 -1
  377. package/cjs/column-picker/ColumnPicker.js.map +0 -1
  378. package/cjs/column-picker/ColumnSearch.js.map +0 -1
  379. package/cjs/common-hooks/collectionProvider.js.map +0 -1
  380. package/cjs/common-hooks/isPlainObject.js.map +0 -1
  381. package/cjs/common-hooks/itemToString.js.map +0 -1
  382. package/cjs/common-hooks/selectionTypes.js.map +0 -1
  383. package/cjs/common-hooks/use-resize-observer.js.map +0 -1
  384. package/cjs/common-hooks/useCollectionItems.js.map +0 -1
  385. package/cjs/common-hooks/useControlled.js.map +0 -1
  386. package/cjs/common-hooks/useSelection.js.map +0 -1
  387. package/cjs/cycle-state-button/CycleStateButton.js.map +0 -1
  388. package/cjs/date-input/DateInput.js.map +0 -1
  389. package/cjs/date-picker/DatePicker.js.map +0 -1
  390. package/cjs/date-picker/DatePickerContext.js.map +0 -1
  391. package/cjs/date-picker/DatePickerPanel.js.map +0 -1
  392. package/cjs/drag-drop/DragDropProvider.js.map +0 -1
  393. package/cjs/drag-drop/DragDropState.js.map +0 -1
  394. package/cjs/drag-drop/Draggable.js +0 -95
  395. package/cjs/drag-drop/Draggable.js.map +0 -1
  396. package/cjs/drag-drop/dragDropTypes.js.map +0 -1
  397. package/cjs/drag-drop/drop-target-utils.js.map +0 -1
  398. package/cjs/drag-drop/useAutoScroll.js.map +0 -1
  399. package/cjs/drag-drop/useDragDisplacers.js.map +0 -1
  400. package/cjs/drag-drop/useDragDrop.js.map +0 -1
  401. package/cjs/drag-drop/useDragDropCopy.js.map +0 -1
  402. package/cjs/drag-drop/useDragDropIndicator.js.map +0 -1
  403. package/cjs/drag-drop/useDragDropNaturalMovement.js.map +0 -1
  404. package/cjs/drag-drop/useDropIndicator.js.map +0 -1
  405. package/cjs/drag-drop/useGlobalDragDrop.js.map +0 -1
  406. package/cjs/editable/useEditableText.js.map +0 -1
  407. package/cjs/editable-label/EditableLabel.js.map +0 -1
  408. package/cjs/expando-input/ExpandoInput.js.map +0 -1
  409. package/cjs/icon-button/Icon.js.map +0 -1
  410. package/cjs/icon-button/IconButton.js.map +0 -1
  411. package/cjs/icon-button/ToggleIconButton.css.js +0 -6
  412. package/cjs/icon-button/ToggleIconButton.js.map +0 -1
  413. package/cjs/index.js +0 -223
  414. package/cjs/index.js.map +0 -1
  415. package/cjs/instrument-picker/TablePicker.js.map +0 -1
  416. package/cjs/instrument-picker/useTablePicker.js.map +0 -1
  417. package/cjs/list/Highlighter.js.map +0 -1
  418. package/cjs/list/List.js.map +0 -1
  419. package/cjs/list/ListItem.js.map +0 -1
  420. package/cjs/list/ListItemGroup.js.map +0 -1
  421. package/cjs/list/ListItemHeader.js.map +0 -1
  422. package/cjs/list/RadioIcon.js.map +0 -1
  423. package/cjs/list/common-hooks/keyUtils.js.map +0 -1
  424. package/cjs/list/common-hooks/list-dom-utils.js.map +0 -1
  425. package/cjs/list/common-hooks/useCollapsibleGroups.js.map +0 -1
  426. package/cjs/list/common-hooks/useImperativeScrollingAPI.js.map +0 -1
  427. package/cjs/list/common-hooks/useKeyboardNavigation.js.map +0 -1
  428. package/cjs/list/common-hooks/useTypeahead.js.map +0 -1
  429. package/cjs/list/common-hooks/useViewportTracking.js.map +0 -1
  430. package/cjs/list/common-hooks/utils/collection-item-utils.js.map +0 -1
  431. package/cjs/list/common-hooks/utils/filter-utils.js.map +0 -1
  432. package/cjs/list/common-hooks/utils/isSelected.js.map +0 -1
  433. package/cjs/list/useList.js.map +0 -1
  434. package/cjs/list/useListDrop.js.map +0 -1
  435. package/cjs/list/useListHeight.js.map +0 -1
  436. package/cjs/list/useScrollPosition.js.map +0 -1
  437. package/cjs/measured-container/MeasuredContainer.js +0 -69
  438. package/cjs/measured-container/MeasuredContainer.js.map +0 -1
  439. package/cjs/measured-container/useMeasuredContainer.js +0 -137
  440. package/cjs/measured-container/useMeasuredContainer.js.map +0 -1
  441. package/cjs/measured-container/useResizeObserver.js.map +0 -1
  442. package/cjs/overflow-container/OverflowContainer.js.map +0 -1
  443. package/cjs/overflow-container/overflow-utils.js.map +0 -1
  444. package/cjs/overflow-container/useOverflowContainer.js.map +0 -1
  445. package/cjs/price-ticker/PriceTicker.js.map +0 -1
  446. package/cjs/split-button/SplitButton.css.js +0 -6
  447. package/cjs/split-button/SplitButton.js.map +0 -1
  448. package/cjs/split-button/SplitStateButton.css.js +0 -6
  449. package/cjs/split-button/SplitStateButton.js.map +0 -1
  450. package/cjs/split-button/useSplitButton.js.map +0 -1
  451. package/cjs/table-search/SearchCell.js.map +0 -1
  452. package/cjs/table-search/TableSearch.js.map +0 -1
  453. package/cjs/table-search/useTableSearch.js.map +0 -1
  454. package/cjs/tabstrip/Tab.js.map +0 -1
  455. package/cjs/tabstrip/TabMenu.js.map +0 -1
  456. package/cjs/tabstrip/TabMenuOptions.js.map +0 -1
  457. package/cjs/tabstrip/Tabstrip.css.js +0 -6
  458. package/cjs/tabstrip/Tabstrip.js.map +0 -1
  459. package/cjs/tabstrip/tabstrip-dom-utils.js.map +0 -1
  460. package/cjs/tabstrip/useAnimatedSelectionThumb.js.map +0 -1
  461. package/cjs/tabstrip/useKeyboardNavigation.js.map +0 -1
  462. package/cjs/tabstrip/useSelection.js.map +0 -1
  463. package/cjs/tabstrip/useTabstrip.js.map +0 -1
  464. package/cjs/toolbar/Toolbar.js.map +0 -1
  465. package/cjs/toolbar/toolbar-dom-utils.js.map +0 -1
  466. package/cjs/toolbar/useKeyboardNavigation.js.map +0 -1
  467. package/cjs/toolbar/useSelection.js.map +0 -1
  468. package/cjs/toolbar/useToolbar.js.map +0 -1
  469. package/cjs/tree/Tree.css.js +0 -6
  470. package/cjs/tree/Tree.css.js.map +0 -1
  471. package/cjs/tree/Tree.js +0 -179
  472. package/cjs/tree/Tree.js.map +0 -1
  473. package/cjs/tree/hierarchical-data-utils.js +0 -72
  474. package/cjs/tree/hierarchical-data-utils.js.map +0 -1
  475. package/cjs/tree/key-code.js +0 -62
  476. package/cjs/tree/key-code.js.map +0 -1
  477. package/cjs/tree/list-dom-utils.js +0 -19
  478. package/cjs/tree/list-dom-utils.js.map +0 -1
  479. package/cjs/tree/treeTypeUtils.js +0 -6
  480. package/cjs/tree/treeTypeUtils.js.map +0 -1
  481. package/cjs/tree/use-collapsible-groups.js +0 -85
  482. package/cjs/tree/use-collapsible-groups.js.map +0 -1
  483. package/cjs/tree/use-hierarchical-data.js +0 -51
  484. package/cjs/tree/use-hierarchical-data.js.map +0 -1
  485. package/cjs/tree/use-items-with-ids.js +0 -100
  486. package/cjs/tree/use-items-with-ids.js.map +0 -1
  487. package/cjs/tree/use-keyboard-navigation.js +0 -144
  488. package/cjs/tree/use-keyboard-navigation.js.map +0 -1
  489. package/cjs/tree/use-selection.js +0 -154
  490. package/cjs/tree/use-selection.js.map +0 -1
  491. package/cjs/tree/use-tree-keyboard-navigation.js +0 -41
  492. package/cjs/tree/use-tree-keyboard-navigation.js.map +0 -1
  493. package/cjs/tree/use-viewport-tracking.js +0 -76
  494. package/cjs/tree/use-viewport-tracking.js.map +0 -1
  495. package/cjs/tree/useTree.js +0 -106
  496. package/cjs/tree/useTree.js.map +0 -1
  497. package/cjs/utils/escapeRegExp.js.map +0 -1
  498. package/cjs/utils/forwardCallbackProps.js.map +0 -1
  499. package/cjs/utils/isOverflowElement.js.map +0 -1
  500. package/cjs/utils/isPlainObject.js.map +0 -1
  501. package/cjs/vuu-date-picker/VuuDatePicker.js.map +0 -1
  502. package/cjs/vuu-input/VuuInput.js.map +0 -1
  503. package/cjs/vuu-typeahead-input/VuuTypeaheadInput.js.map +0 -1
  504. package/cjs/vuu-typeahead-input/useVuuTypeaheadInput.js.map +0 -1
  505. package/esm/calendar/Calendar.js.map +0 -1
  506. package/esm/calendar/internal/CalendarCarousel.js.map +0 -1
  507. package/esm/calendar/internal/CalendarContext.js.map +0 -1
  508. package/esm/calendar/internal/CalendarDay.js.map +0 -1
  509. package/esm/calendar/internal/CalendarMonth.js.map +0 -1
  510. package/esm/calendar/internal/CalendarNavigation.js.map +0 -1
  511. package/esm/calendar/internal/CalendarWeekHeader.js.map +0 -1
  512. package/esm/calendar/internal/useFocusManagement.js.map +0 -1
  513. package/esm/calendar/internal/utils.js.map +0 -1
  514. package/esm/calendar/useCalendar.js.map +0 -1
  515. package/esm/calendar/useCalendarDay.js.map +0 -1
  516. package/esm/calendar/useSelection.js.map +0 -1
  517. package/esm/column-picker/ColumnPicker.js.map +0 -1
  518. package/esm/column-picker/ColumnSearch.js.map +0 -1
  519. package/esm/common-hooks/collectionProvider.js.map +0 -1
  520. package/esm/common-hooks/isPlainObject.js.map +0 -1
  521. package/esm/common-hooks/itemToString.js.map +0 -1
  522. package/esm/common-hooks/selectionTypes.js.map +0 -1
  523. package/esm/common-hooks/use-resize-observer.js.map +0 -1
  524. package/esm/common-hooks/useCollectionItems.js.map +0 -1
  525. package/esm/common-hooks/useControlled.js.map +0 -1
  526. package/esm/common-hooks/useSelection.js.map +0 -1
  527. package/esm/cycle-state-button/CycleStateButton.js.map +0 -1
  528. package/esm/date-input/DateInput.js.map +0 -1
  529. package/esm/date-picker/DatePicker.js.map +0 -1
  530. package/esm/date-picker/DatePickerContext.js.map +0 -1
  531. package/esm/date-picker/DatePickerPanel.js.map +0 -1
  532. package/esm/drag-drop/DragDropProvider.js.map +0 -1
  533. package/esm/drag-drop/DragDropState.js.map +0 -1
  534. package/esm/drag-drop/Draggable.js +0 -90
  535. package/esm/drag-drop/Draggable.js.map +0 -1
  536. package/esm/drag-drop/dragDropTypes.js.map +0 -1
  537. package/esm/drag-drop/drop-target-utils.js.map +0 -1
  538. package/esm/drag-drop/useAutoScroll.js.map +0 -1
  539. package/esm/drag-drop/useDragDisplacers.js.map +0 -1
  540. package/esm/drag-drop/useDragDrop.js +0 -502
  541. package/esm/drag-drop/useDragDrop.js.map +0 -1
  542. package/esm/drag-drop/useDragDropCopy.js.map +0 -1
  543. package/esm/drag-drop/useDragDropIndicator.js +0 -249
  544. package/esm/drag-drop/useDragDropIndicator.js.map +0 -1
  545. package/esm/drag-drop/useDragDropNaturalMovement.js +0 -263
  546. package/esm/drag-drop/useDragDropNaturalMovement.js.map +0 -1
  547. package/esm/drag-drop/useDropIndicator.js.map +0 -1
  548. package/esm/drag-drop/useGlobalDragDrop.js.map +0 -1
  549. package/esm/editable/useEditableText.js.map +0 -1
  550. package/esm/editable-label/EditableLabel.js.map +0 -1
  551. package/esm/expando-input/ExpandoInput.js.map +0 -1
  552. package/esm/icon-button/Icon.js.map +0 -1
  553. package/esm/icon-button/IconButton.js.map +0 -1
  554. package/esm/icon-button/ToggleIconButton.css.js +0 -4
  555. package/esm/icon-button/ToggleIconButton.js.map +0 -1
  556. package/esm/index.js +0 -68
  557. package/esm/index.js.map +0 -1
  558. package/esm/instrument-picker/TablePicker.js.map +0 -1
  559. package/esm/instrument-picker/useTablePicker.js.map +0 -1
  560. package/esm/list/Highlighter.js.map +0 -1
  561. package/esm/list/List.js.map +0 -1
  562. package/esm/list/ListItem.js.map +0 -1
  563. package/esm/list/ListItemGroup.js.map +0 -1
  564. package/esm/list/ListItemHeader.js.map +0 -1
  565. package/esm/list/RadioIcon.js.map +0 -1
  566. package/esm/list/common-hooks/keyUtils.js.map +0 -1
  567. package/esm/list/common-hooks/list-dom-utils.js.map +0 -1
  568. package/esm/list/common-hooks/useCollapsibleGroups.js.map +0 -1
  569. package/esm/list/common-hooks/useImperativeScrollingAPI.js.map +0 -1
  570. package/esm/list/common-hooks/useKeyboardNavigation.js.map +0 -1
  571. package/esm/list/common-hooks/useTypeahead.js.map +0 -1
  572. package/esm/list/common-hooks/useViewportTracking.js.map +0 -1
  573. package/esm/list/common-hooks/utils/collection-item-utils.js.map +0 -1
  574. package/esm/list/common-hooks/utils/filter-utils.js.map +0 -1
  575. package/esm/list/common-hooks/utils/isSelected.js.map +0 -1
  576. package/esm/list/useList.js.map +0 -1
  577. package/esm/list/useListDrop.js.map +0 -1
  578. package/esm/list/useListHeight.js.map +0 -1
  579. package/esm/list/useScrollPosition.js.map +0 -1
  580. package/esm/measured-container/MeasuredContainer.js +0 -67
  581. package/esm/measured-container/MeasuredContainer.js.map +0 -1
  582. package/esm/measured-container/useMeasuredContainer.js +0 -134
  583. package/esm/measured-container/useMeasuredContainer.js.map +0 -1
  584. package/esm/measured-container/useResizeObserver.js.map +0 -1
  585. package/esm/overflow-container/OverflowContainer.js.map +0 -1
  586. package/esm/overflow-container/overflow-utils.js.map +0 -1
  587. package/esm/overflow-container/useOverflowContainer.js.map +0 -1
  588. package/esm/price-ticker/PriceTicker.js.map +0 -1
  589. package/esm/split-button/SplitButton.css.js +0 -4
  590. package/esm/split-button/SplitButton.js.map +0 -1
  591. package/esm/split-button/SplitStateButton.css.js +0 -4
  592. package/esm/split-button/SplitStateButton.js.map +0 -1
  593. package/esm/split-button/useSplitButton.js.map +0 -1
  594. package/esm/table-search/SearchCell.js.map +0 -1
  595. package/esm/table-search/TableSearch.js.map +0 -1
  596. package/esm/table-search/useTableSearch.js.map +0 -1
  597. package/esm/tabstrip/Tab.js.map +0 -1
  598. package/esm/tabstrip/TabMenu.js.map +0 -1
  599. package/esm/tabstrip/TabMenuOptions.js.map +0 -1
  600. package/esm/tabstrip/Tabstrip.css.js +0 -4
  601. package/esm/tabstrip/Tabstrip.js.map +0 -1
  602. package/esm/tabstrip/tabstrip-dom-utils.js.map +0 -1
  603. package/esm/tabstrip/useAnimatedSelectionThumb.js.map +0 -1
  604. package/esm/tabstrip/useKeyboardNavigation.js.map +0 -1
  605. package/esm/tabstrip/useSelection.js.map +0 -1
  606. package/esm/tabstrip/useTabstrip.js.map +0 -1
  607. package/esm/toolbar/Toolbar.js.map +0 -1
  608. package/esm/toolbar/toolbar-dom-utils.js.map +0 -1
  609. package/esm/toolbar/useKeyboardNavigation.js.map +0 -1
  610. package/esm/toolbar/useSelection.js.map +0 -1
  611. package/esm/toolbar/useToolbar.js.map +0 -1
  612. package/esm/tree/Tree.css.js +0 -4
  613. package/esm/tree/Tree.css.js.map +0 -1
  614. package/esm/tree/Tree.js +0 -176
  615. package/esm/tree/Tree.js.map +0 -1
  616. package/esm/tree/hierarchical-data-utils.js +0 -65
  617. package/esm/tree/hierarchical-data-utils.js.map +0 -1
  618. package/esm/tree/key-code.js +0 -54
  619. package/esm/tree/key-code.js.map +0 -1
  620. package/esm/tree/list-dom-utils.js +0 -15
  621. package/esm/tree/list-dom-utils.js.map +0 -1
  622. package/esm/tree/treeTypeUtils.js +0 -4
  623. package/esm/tree/treeTypeUtils.js.map +0 -1
  624. package/esm/tree/use-collapsible-groups.js +0 -83
  625. package/esm/tree/use-collapsible-groups.js.map +0 -1
  626. package/esm/tree/use-hierarchical-data.js +0 -49
  627. package/esm/tree/use-hierarchical-data.js.map +0 -1
  628. package/esm/tree/use-items-with-ids.js +0 -98
  629. package/esm/tree/use-items-with-ids.js.map +0 -1
  630. package/esm/tree/use-keyboard-navigation.js +0 -142
  631. package/esm/tree/use-keyboard-navigation.js.map +0 -1
  632. package/esm/tree/use-selection.js +0 -147
  633. package/esm/tree/use-selection.js.map +0 -1
  634. package/esm/tree/use-tree-keyboard-navigation.js +0 -39
  635. package/esm/tree/use-tree-keyboard-navigation.js.map +0 -1
  636. package/esm/tree/use-viewport-tracking.js +0 -74
  637. package/esm/tree/use-viewport-tracking.js.map +0 -1
  638. package/esm/tree/useTree.js +0 -104
  639. package/esm/tree/useTree.js.map +0 -1
  640. package/esm/utils/escapeRegExp.js.map +0 -1
  641. package/esm/utils/forwardCallbackProps.js.map +0 -1
  642. package/esm/utils/isOverflowElement.js.map +0 -1
  643. package/esm/utils/isPlainObject.js.map +0 -1
  644. package/esm/vuu-date-picker/VuuDatePicker.js.map +0 -1
  645. package/esm/vuu-input/VuuInput.js.map +0 -1
  646. package/esm/vuu-typeahead-input/VuuTypeaheadInput.js.map +0 -1
  647. package/esm/vuu-typeahead-input/useVuuTypeaheadInput.js.map +0 -1
  648. package/types/tree/Tree.d.ts +0 -19
  649. package/types/tree/hierarchical-data-utils.d.ts +0 -8
  650. package/types/tree/index.d.ts +0 -3
  651. package/types/tree/key-code.d.ts +0 -11
  652. package/types/tree/list-dom-utils.d.ts +0 -6
  653. package/types/tree/treeTypeUtils.d.ts +0 -2
  654. package/types/tree/use-collapsible-groups.d.ts +0 -18
  655. package/types/tree/use-hierarchical-data.d.ts +0 -6
  656. package/types/tree/use-items-with-ids.d.ts +0 -8
  657. package/types/tree/use-keyboard-navigation.d.ts +0 -26
  658. package/types/tree/use-selection.d.ts +0 -31
  659. package/types/tree/use-tree-keyboard-navigation.d.ts +0 -12
  660. package/types/tree/use-viewport-tracking.d.ts +0 -2
  661. package/types/tree/useTree.d.ts +0 -30
  662. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/Calendar.css.js +0 -0
  663. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/Calendar.css.js.map +0 -0
  664. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/Calendar.js +0 -0
  665. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarCarousel.css.js +0 -0
  666. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarCarousel.css.js.map +0 -0
  667. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarCarousel.js +0 -0
  668. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarContext.js +0 -0
  669. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarDay.css.js +0 -0
  670. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarDay.css.js.map +0 -0
  671. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarDay.js +0 -0
  672. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarMonth.css.js +0 -0
  673. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarMonth.css.js.map +0 -0
  674. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarMonth.js +0 -0
  675. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarNavigation.css.js +0 -0
  676. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarNavigation.css.js.map +0 -0
  677. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarNavigation.js +0 -0
  678. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarWeekHeader.css.js +0 -0
  679. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarWeekHeader.css.js.map +0 -0
  680. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarWeekHeader.js +0 -0
  681. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/internal/useFocusManagement.js +0 -0
  682. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/internal/utils.js +0 -0
  683. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/useCalendar.js +0 -0
  684. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/useCalendarDay.js +0 -0
  685. /package/cjs/{calendar → packages/vuu-ui-controls/src/calendar}/useSelection.js +0 -0
  686. /package/cjs/{column-picker → packages/vuu-ui-controls/src/column-picker}/ColumnPicker.css.js +0 -0
  687. /package/cjs/{column-picker → packages/vuu-ui-controls/src/column-picker}/ColumnPicker.css.js.map +0 -0
  688. /package/cjs/{column-picker → packages/vuu-ui-controls/src/column-picker}/ColumnPicker.js +0 -0
  689. /package/cjs/{column-picker → packages/vuu-ui-controls/src/column-picker}/ColumnSearch.css.js +0 -0
  690. /package/cjs/{column-picker → packages/vuu-ui-controls/src/column-picker}/ColumnSearch.css.js.map +0 -0
  691. /package/cjs/{column-picker → packages/vuu-ui-controls/src/column-picker}/ColumnSearch.js +0 -0
  692. /package/cjs/{common-hooks → packages/vuu-ui-controls/src/common-hooks}/collectionProvider.js +0 -0
  693. /package/cjs/{common-hooks → packages/vuu-ui-controls/src/common-hooks}/isPlainObject.js +0 -0
  694. /package/cjs/{common-hooks → packages/vuu-ui-controls/src/common-hooks}/itemToString.js +0 -0
  695. /package/cjs/{common-hooks → packages/vuu-ui-controls/src/common-hooks}/selectionTypes.js +0 -0
  696. /package/cjs/{common-hooks → packages/vuu-ui-controls/src/common-hooks}/use-resize-observer.js +0 -0
  697. /package/cjs/{common-hooks → packages/vuu-ui-controls/src/common-hooks}/useCollectionItems.js +0 -0
  698. /package/cjs/{common-hooks → packages/vuu-ui-controls/src/common-hooks}/useControlled.js +0 -0
  699. /package/cjs/{common-hooks → packages/vuu-ui-controls/src/common-hooks}/useSelection.js +0 -0
  700. /package/cjs/{cycle-state-button → packages/vuu-ui-controls/src/cycle-state-button}/CycleStateButton.js +0 -0
  701. /package/cjs/{date-input → packages/vuu-ui-controls/src/date-input}/DateInput.css.js +0 -0
  702. /package/cjs/{date-input → packages/vuu-ui-controls/src/date-input}/DateInput.css.js.map +0 -0
  703. /package/cjs/{date-input → packages/vuu-ui-controls/src/date-input}/DateInput.js +0 -0
  704. /package/cjs/{date-picker → packages/vuu-ui-controls/src/date-picker}/DatePicker.js +0 -0
  705. /package/cjs/{date-picker → packages/vuu-ui-controls/src/date-picker}/DatePickerContext.js +0 -0
  706. /package/cjs/{date-picker → packages/vuu-ui-controls/src/date-picker}/DatePickerPanel.css.js +0 -0
  707. /package/cjs/{date-picker → packages/vuu-ui-controls/src/date-picker}/DatePickerPanel.css.js.map +0 -0
  708. /package/cjs/{date-picker → packages/vuu-ui-controls/src/date-picker}/DatePickerPanel.js +0 -0
  709. /package/cjs/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/DragDropProvider.js +0 -0
  710. /package/cjs/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/DragDropState.js +0 -0
  711. /package/cjs/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/Draggable.css.js +0 -0
  712. /package/cjs/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/Draggable.css.js.map +0 -0
  713. /package/cjs/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/dragDropTypes.js +0 -0
  714. /package/cjs/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/drop-target-utils.js +0 -0
  715. /package/cjs/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/useAutoScroll.js +0 -0
  716. /package/cjs/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/useDragDisplacers.js +0 -0
  717. /package/cjs/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/useDragDrop.js +0 -0
  718. /package/cjs/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/useDragDropCopy.js +0 -0
  719. /package/cjs/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/useDragDropIndicator.js +0 -0
  720. /package/cjs/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/useDragDropNaturalMovement.js +0 -0
  721. /package/cjs/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/useDropIndicator.js +0 -0
  722. /package/cjs/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/useGlobalDragDrop.js +0 -0
  723. /package/cjs/{editable → packages/vuu-ui-controls/src/editable}/useEditableText.js +0 -0
  724. /package/cjs/{editable-label → packages/vuu-ui-controls/src/editable-label}/EditableLabel.css.js +0 -0
  725. /package/cjs/{editable-label → packages/vuu-ui-controls/src/editable-label}/EditableLabel.css.js.map +0 -0
  726. /package/cjs/{editable-label → packages/vuu-ui-controls/src/editable-label}/EditableLabel.js +0 -0
  727. /package/cjs/{expando-input → packages/vuu-ui-controls/src/expando-input}/ExpandoInput.css.js +0 -0
  728. /package/cjs/{expando-input → packages/vuu-ui-controls/src/expando-input}/ExpandoInput.css.js.map +0 -0
  729. /package/cjs/{expando-input → packages/vuu-ui-controls/src/expando-input}/ExpandoInput.js +0 -0
  730. /package/cjs/{icon-button → packages/vuu-ui-controls/src/icon-button}/Icon.css.js +0 -0
  731. /package/cjs/{icon-button → packages/vuu-ui-controls/src/icon-button}/Icon.css.js.map +0 -0
  732. /package/cjs/{icon-button → packages/vuu-ui-controls/src/icon-button}/Icon.js +0 -0
  733. /package/cjs/{icon-button → packages/vuu-ui-controls/src/icon-button}/IconButton.css.js +0 -0
  734. /package/cjs/{icon-button → packages/vuu-ui-controls/src/icon-button}/IconButton.css.js.map +0 -0
  735. /package/cjs/{icon-button → packages/vuu-ui-controls/src/icon-button}/IconButton.js +0 -0
  736. /package/cjs/{icon-button → packages/vuu-ui-controls/src/icon-button}/ToggleIconButton.css.js.map +0 -0
  737. /package/cjs/{icon-button → packages/vuu-ui-controls/src/icon-button}/ToggleIconButton.js +0 -0
  738. /package/cjs/{instrument-picker → packages/vuu-ui-controls/src/instrument-picker}/TablePicker.css.js +0 -0
  739. /package/cjs/{instrument-picker → packages/vuu-ui-controls/src/instrument-picker}/TablePicker.css.js.map +0 -0
  740. /package/cjs/{instrument-picker → packages/vuu-ui-controls/src/instrument-picker}/TablePicker.js +0 -0
  741. /package/cjs/{instrument-picker → packages/vuu-ui-controls/src/instrument-picker}/useTablePicker.js +0 -0
  742. /package/cjs/{list → packages/vuu-ui-controls/src/list}/Highlighter.css.js +0 -0
  743. /package/cjs/{list → packages/vuu-ui-controls/src/list}/Highlighter.css.js.map +0 -0
  744. /package/cjs/{list → packages/vuu-ui-controls/src/list}/Highlighter.js +0 -0
  745. /package/cjs/{list → packages/vuu-ui-controls/src/list}/List.css.js +0 -0
  746. /package/cjs/{list → packages/vuu-ui-controls/src/list}/List.css.js.map +0 -0
  747. /package/cjs/{list → packages/vuu-ui-controls/src/list}/List.js +0 -0
  748. /package/cjs/{list → packages/vuu-ui-controls/src/list}/ListItem.css.js +0 -0
  749. /package/cjs/{list → packages/vuu-ui-controls/src/list}/ListItem.css.js.map +0 -0
  750. /package/cjs/{list → packages/vuu-ui-controls/src/list}/ListItem.js +0 -0
  751. /package/cjs/{list → packages/vuu-ui-controls/src/list}/ListItemGroup.js +0 -0
  752. /package/cjs/{list → packages/vuu-ui-controls/src/list}/ListItemHeader.js +0 -0
  753. /package/cjs/{list → packages/vuu-ui-controls/src/list}/RadioIcon.css.js +0 -0
  754. /package/cjs/{list → packages/vuu-ui-controls/src/list}/RadioIcon.css.js.map +0 -0
  755. /package/cjs/{list → packages/vuu-ui-controls/src/list}/RadioIcon.js +0 -0
  756. /package/cjs/{list → packages/vuu-ui-controls/src/list}/common-hooks/keyUtils.js +0 -0
  757. /package/cjs/{list → packages/vuu-ui-controls/src/list}/common-hooks/list-dom-utils.js +0 -0
  758. /package/cjs/{list → packages/vuu-ui-controls/src/list}/common-hooks/useCollapsibleGroups.js +0 -0
  759. /package/cjs/{list → packages/vuu-ui-controls/src/list}/common-hooks/useImperativeScrollingAPI.js +0 -0
  760. /package/cjs/{list → packages/vuu-ui-controls/src/list}/common-hooks/useKeyboardNavigation.js +0 -0
  761. /package/cjs/{list → packages/vuu-ui-controls/src/list}/common-hooks/useTypeahead.js +0 -0
  762. /package/cjs/{list → packages/vuu-ui-controls/src/list}/common-hooks/useViewportTracking.js +0 -0
  763. /package/cjs/{list → packages/vuu-ui-controls/src/list}/common-hooks/utils/collection-item-utils.js +0 -0
  764. /package/cjs/{list → packages/vuu-ui-controls/src/list}/common-hooks/utils/filter-utils.js +0 -0
  765. /package/cjs/{list → packages/vuu-ui-controls/src/list}/common-hooks/utils/isSelected.js +0 -0
  766. /package/cjs/{list → packages/vuu-ui-controls/src/list}/useList.js +0 -0
  767. /package/cjs/{list → packages/vuu-ui-controls/src/list}/useListDrop.js +0 -0
  768. /package/cjs/{list → packages/vuu-ui-controls/src/list}/useListHeight.js +0 -0
  769. /package/cjs/{list → packages/vuu-ui-controls/src/list}/useScrollPosition.js +0 -0
  770. /package/cjs/{measured-container → packages/vuu-ui-controls/src/measured-container}/MeasuredContainer.css.js +0 -0
  771. /package/cjs/{measured-container → packages/vuu-ui-controls/src/measured-container}/MeasuredContainer.css.js.map +0 -0
  772. /package/cjs/{measured-container → packages/vuu-ui-controls/src/measured-container}/useResizeObserver.js +0 -0
  773. /package/cjs/{overflow-container → packages/vuu-ui-controls/src/overflow-container}/OverflowContainer.css.js +0 -0
  774. /package/cjs/{overflow-container → packages/vuu-ui-controls/src/overflow-container}/OverflowContainer.css.js.map +0 -0
  775. /package/cjs/{overflow-container → packages/vuu-ui-controls/src/overflow-container}/OverflowContainer.js +0 -0
  776. /package/cjs/{overflow-container → packages/vuu-ui-controls/src/overflow-container}/overflow-utils.js +0 -0
  777. /package/cjs/{overflow-container → packages/vuu-ui-controls/src/overflow-container}/useOverflowContainer.js +0 -0
  778. /package/cjs/{price-ticker → packages/vuu-ui-controls/src/price-ticker}/PriceTicker.css.js +0 -0
  779. /package/cjs/{price-ticker → packages/vuu-ui-controls/src/price-ticker}/PriceTicker.css.js.map +0 -0
  780. /package/cjs/{price-ticker → packages/vuu-ui-controls/src/price-ticker}/PriceTicker.js +0 -0
  781. /package/cjs/{split-button → packages/vuu-ui-controls/src/split-button}/SplitButton.css.js.map +0 -0
  782. /package/cjs/{split-button → packages/vuu-ui-controls/src/split-button}/SplitButton.js +0 -0
  783. /package/cjs/{split-button → packages/vuu-ui-controls/src/split-button}/SplitStateButton.css.js.map +0 -0
  784. /package/cjs/{split-button → packages/vuu-ui-controls/src/split-button}/SplitStateButton.js +0 -0
  785. /package/cjs/{split-button → packages/vuu-ui-controls/src/split-button}/useSplitButton.js +0 -0
  786. /package/cjs/{table-search → packages/vuu-ui-controls/src/table-search}/SearchCell.css.js +0 -0
  787. /package/cjs/{table-search → packages/vuu-ui-controls/src/table-search}/SearchCell.css.js.map +0 -0
  788. /package/cjs/{table-search → packages/vuu-ui-controls/src/table-search}/SearchCell.js +0 -0
  789. /package/cjs/{table-search → packages/vuu-ui-controls/src/table-search}/TableSearch.css.js +0 -0
  790. /package/cjs/{table-search → packages/vuu-ui-controls/src/table-search}/TableSearch.css.js.map +0 -0
  791. /package/cjs/{table-search → packages/vuu-ui-controls/src/table-search}/TableSearch.js +0 -0
  792. /package/cjs/{table-search → packages/vuu-ui-controls/src/table-search}/useTableSearch.js +0 -0
  793. /package/cjs/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/Tab.css.js +0 -0
  794. /package/cjs/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/Tab.css.js.map +0 -0
  795. /package/cjs/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/Tab.js +0 -0
  796. /package/cjs/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/TabMenu.css.js +0 -0
  797. /package/cjs/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/TabMenu.css.js.map +0 -0
  798. /package/cjs/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/TabMenu.js +0 -0
  799. /package/cjs/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/TabMenuOptions.js +0 -0
  800. /package/cjs/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/Tabstrip.css.js.map +0 -0
  801. /package/cjs/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/Tabstrip.js +0 -0
  802. /package/cjs/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/tabstrip-dom-utils.js +0 -0
  803. /package/cjs/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/useAnimatedSelectionThumb.js +0 -0
  804. /package/cjs/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/useKeyboardNavigation.js +0 -0
  805. /package/cjs/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/useSelection.js +0 -0
  806. /package/cjs/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/useTabstrip.js +0 -0
  807. /package/cjs/{toolbar → packages/vuu-ui-controls/src/toolbar}/Toolbar.css.js +0 -0
  808. /package/cjs/{toolbar → packages/vuu-ui-controls/src/toolbar}/Toolbar.css.js.map +0 -0
  809. /package/cjs/{toolbar → packages/vuu-ui-controls/src/toolbar}/Toolbar.js +0 -0
  810. /package/cjs/{toolbar → packages/vuu-ui-controls/src/toolbar}/toolbar-dom-utils.js +0 -0
  811. /package/cjs/{toolbar → packages/vuu-ui-controls/src/toolbar}/useKeyboardNavigation.js +0 -0
  812. /package/cjs/{toolbar → packages/vuu-ui-controls/src/toolbar}/useSelection.js +0 -0
  813. /package/cjs/{toolbar → packages/vuu-ui-controls/src/toolbar}/useToolbar.js +0 -0
  814. /package/cjs/{utils → packages/vuu-ui-controls/src/utils}/escapeRegExp.js +0 -0
  815. /package/cjs/{utils → packages/vuu-ui-controls/src/utils}/forwardCallbackProps.js +0 -0
  816. /package/cjs/{utils → packages/vuu-ui-controls/src/utils}/isOverflowElement.js +0 -0
  817. /package/cjs/{utils → packages/vuu-ui-controls/src/utils}/isPlainObject.js +0 -0
  818. /package/cjs/{vuu-date-picker → packages/vuu-ui-controls/src/vuu-date-picker}/VuuDatePicker.js +0 -0
  819. /package/cjs/{vuu-input → packages/vuu-ui-controls/src/vuu-input}/VuuInput.css.js +0 -0
  820. /package/cjs/{vuu-input → packages/vuu-ui-controls/src/vuu-input}/VuuInput.css.js.map +0 -0
  821. /package/cjs/{vuu-input → packages/vuu-ui-controls/src/vuu-input}/VuuInput.js +0 -0
  822. /package/cjs/{vuu-typeahead-input → packages/vuu-ui-controls/src/vuu-typeahead-input}/VuuTypeaheadInput.css.js +0 -0
  823. /package/cjs/{vuu-typeahead-input → packages/vuu-ui-controls/src/vuu-typeahead-input}/VuuTypeaheadInput.css.js.map +0 -0
  824. /package/cjs/{vuu-typeahead-input → packages/vuu-ui-controls/src/vuu-typeahead-input}/VuuTypeaheadInput.js +0 -0
  825. /package/cjs/{vuu-typeahead-input → packages/vuu-ui-controls/src/vuu-typeahead-input}/useVuuTypeaheadInput.js +0 -0
  826. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/Calendar.css.js +0 -0
  827. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/Calendar.css.js.map +0 -0
  828. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/Calendar.js +0 -0
  829. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarCarousel.css.js +0 -0
  830. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarCarousel.css.js.map +0 -0
  831. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarCarousel.js +0 -0
  832. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarContext.js +0 -0
  833. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarDay.css.js +0 -0
  834. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarDay.css.js.map +0 -0
  835. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarDay.js +0 -0
  836. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarMonth.css.js +0 -0
  837. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarMonth.css.js.map +0 -0
  838. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarMonth.js +0 -0
  839. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarNavigation.css.js +0 -0
  840. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarNavigation.css.js.map +0 -0
  841. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarNavigation.js +0 -0
  842. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarWeekHeader.css.js +0 -0
  843. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarWeekHeader.css.js.map +0 -0
  844. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/internal/CalendarWeekHeader.js +0 -0
  845. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/internal/useFocusManagement.js +0 -0
  846. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/internal/utils.js +0 -0
  847. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/useCalendar.js +0 -0
  848. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/useCalendarDay.js +0 -0
  849. /package/esm/{calendar → packages/vuu-ui-controls/src/calendar}/useSelection.js +0 -0
  850. /package/esm/{column-picker → packages/vuu-ui-controls/src/column-picker}/ColumnPicker.css.js +0 -0
  851. /package/esm/{column-picker → packages/vuu-ui-controls/src/column-picker}/ColumnPicker.css.js.map +0 -0
  852. /package/esm/{column-picker → packages/vuu-ui-controls/src/column-picker}/ColumnPicker.js +0 -0
  853. /package/esm/{column-picker → packages/vuu-ui-controls/src/column-picker}/ColumnSearch.css.js +0 -0
  854. /package/esm/{column-picker → packages/vuu-ui-controls/src/column-picker}/ColumnSearch.css.js.map +0 -0
  855. /package/esm/{column-picker → packages/vuu-ui-controls/src/column-picker}/ColumnSearch.js +0 -0
  856. /package/esm/{common-hooks → packages/vuu-ui-controls/src/common-hooks}/collectionProvider.js +0 -0
  857. /package/esm/{common-hooks → packages/vuu-ui-controls/src/common-hooks}/isPlainObject.js +0 -0
  858. /package/esm/{common-hooks → packages/vuu-ui-controls/src/common-hooks}/itemToString.js +0 -0
  859. /package/esm/{common-hooks → packages/vuu-ui-controls/src/common-hooks}/selectionTypes.js +0 -0
  860. /package/esm/{common-hooks → packages/vuu-ui-controls/src/common-hooks}/use-resize-observer.js +0 -0
  861. /package/esm/{common-hooks → packages/vuu-ui-controls/src/common-hooks}/useCollectionItems.js +0 -0
  862. /package/esm/{common-hooks → packages/vuu-ui-controls/src/common-hooks}/useControlled.js +0 -0
  863. /package/esm/{common-hooks → packages/vuu-ui-controls/src/common-hooks}/useSelection.js +0 -0
  864. /package/esm/{cycle-state-button → packages/vuu-ui-controls/src/cycle-state-button}/CycleStateButton.js +0 -0
  865. /package/esm/{date-input → packages/vuu-ui-controls/src/date-input}/DateInput.css.js +0 -0
  866. /package/esm/{date-input → packages/vuu-ui-controls/src/date-input}/DateInput.css.js.map +0 -0
  867. /package/esm/{date-input → packages/vuu-ui-controls/src/date-input}/DateInput.js +0 -0
  868. /package/esm/{date-picker → packages/vuu-ui-controls/src/date-picker}/DatePicker.js +0 -0
  869. /package/esm/{date-picker → packages/vuu-ui-controls/src/date-picker}/DatePickerContext.js +0 -0
  870. /package/esm/{date-picker → packages/vuu-ui-controls/src/date-picker}/DatePickerPanel.css.js +0 -0
  871. /package/esm/{date-picker → packages/vuu-ui-controls/src/date-picker}/DatePickerPanel.css.js.map +0 -0
  872. /package/esm/{date-picker → packages/vuu-ui-controls/src/date-picker}/DatePickerPanel.js +0 -0
  873. /package/esm/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/DragDropProvider.js +0 -0
  874. /package/esm/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/DragDropState.js +0 -0
  875. /package/esm/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/Draggable.css.js +0 -0
  876. /package/esm/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/Draggable.css.js.map +0 -0
  877. /package/esm/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/dragDropTypes.js +0 -0
  878. /package/esm/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/drop-target-utils.js +0 -0
  879. /package/esm/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/useAutoScroll.js +0 -0
  880. /package/esm/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/useDragDisplacers.js +0 -0
  881. /package/esm/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/useDragDropCopy.js +0 -0
  882. /package/esm/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/useDropIndicator.js +0 -0
  883. /package/esm/{drag-drop → packages/vuu-ui-controls/src/drag-drop}/useGlobalDragDrop.js +0 -0
  884. /package/esm/{editable → packages/vuu-ui-controls/src/editable}/useEditableText.js +0 -0
  885. /package/esm/{editable-label → packages/vuu-ui-controls/src/editable-label}/EditableLabel.css.js +0 -0
  886. /package/esm/{editable-label → packages/vuu-ui-controls/src/editable-label}/EditableLabel.css.js.map +0 -0
  887. /package/esm/{editable-label → packages/vuu-ui-controls/src/editable-label}/EditableLabel.js +0 -0
  888. /package/esm/{expando-input → packages/vuu-ui-controls/src/expando-input}/ExpandoInput.css.js +0 -0
  889. /package/esm/{expando-input → packages/vuu-ui-controls/src/expando-input}/ExpandoInput.css.js.map +0 -0
  890. /package/esm/{expando-input → packages/vuu-ui-controls/src/expando-input}/ExpandoInput.js +0 -0
  891. /package/esm/{icon-button → packages/vuu-ui-controls/src/icon-button}/Icon.css.js +0 -0
  892. /package/esm/{icon-button → packages/vuu-ui-controls/src/icon-button}/Icon.css.js.map +0 -0
  893. /package/esm/{icon-button → packages/vuu-ui-controls/src/icon-button}/Icon.js +0 -0
  894. /package/esm/{icon-button → packages/vuu-ui-controls/src/icon-button}/IconButton.css.js +0 -0
  895. /package/esm/{icon-button → packages/vuu-ui-controls/src/icon-button}/IconButton.css.js.map +0 -0
  896. /package/esm/{icon-button → packages/vuu-ui-controls/src/icon-button}/IconButton.js +0 -0
  897. /package/esm/{icon-button → packages/vuu-ui-controls/src/icon-button}/ToggleIconButton.css.js.map +0 -0
  898. /package/esm/{icon-button → packages/vuu-ui-controls/src/icon-button}/ToggleIconButton.js +0 -0
  899. /package/esm/{instrument-picker → packages/vuu-ui-controls/src/instrument-picker}/TablePicker.css.js +0 -0
  900. /package/esm/{instrument-picker → packages/vuu-ui-controls/src/instrument-picker}/TablePicker.css.js.map +0 -0
  901. /package/esm/{instrument-picker → packages/vuu-ui-controls/src/instrument-picker}/TablePicker.js +0 -0
  902. /package/esm/{instrument-picker → packages/vuu-ui-controls/src/instrument-picker}/useTablePicker.js +0 -0
  903. /package/esm/{list → packages/vuu-ui-controls/src/list}/Highlighter.css.js +0 -0
  904. /package/esm/{list → packages/vuu-ui-controls/src/list}/Highlighter.css.js.map +0 -0
  905. /package/esm/{list → packages/vuu-ui-controls/src/list}/Highlighter.js +0 -0
  906. /package/esm/{list → packages/vuu-ui-controls/src/list}/List.css.js +0 -0
  907. /package/esm/{list → packages/vuu-ui-controls/src/list}/List.css.js.map +0 -0
  908. /package/esm/{list → packages/vuu-ui-controls/src/list}/List.js +0 -0
  909. /package/esm/{list → packages/vuu-ui-controls/src/list}/ListItem.css.js +0 -0
  910. /package/esm/{list → packages/vuu-ui-controls/src/list}/ListItem.css.js.map +0 -0
  911. /package/esm/{list → packages/vuu-ui-controls/src/list}/ListItem.js +0 -0
  912. /package/esm/{list → packages/vuu-ui-controls/src/list}/ListItemGroup.js +0 -0
  913. /package/esm/{list → packages/vuu-ui-controls/src/list}/ListItemHeader.js +0 -0
  914. /package/esm/{list → packages/vuu-ui-controls/src/list}/RadioIcon.css.js +0 -0
  915. /package/esm/{list → packages/vuu-ui-controls/src/list}/RadioIcon.css.js.map +0 -0
  916. /package/esm/{list → packages/vuu-ui-controls/src/list}/RadioIcon.js +0 -0
  917. /package/esm/{list → packages/vuu-ui-controls/src/list}/common-hooks/keyUtils.js +0 -0
  918. /package/esm/{list → packages/vuu-ui-controls/src/list}/common-hooks/list-dom-utils.js +0 -0
  919. /package/esm/{list → packages/vuu-ui-controls/src/list}/common-hooks/useCollapsibleGroups.js +0 -0
  920. /package/esm/{list → packages/vuu-ui-controls/src/list}/common-hooks/useImperativeScrollingAPI.js +0 -0
  921. /package/esm/{list → packages/vuu-ui-controls/src/list}/common-hooks/useKeyboardNavigation.js +0 -0
  922. /package/esm/{list → packages/vuu-ui-controls/src/list}/common-hooks/useTypeahead.js +0 -0
  923. /package/esm/{list → packages/vuu-ui-controls/src/list}/common-hooks/useViewportTracking.js +0 -0
  924. /package/esm/{list → packages/vuu-ui-controls/src/list}/common-hooks/utils/collection-item-utils.js +0 -0
  925. /package/esm/{list → packages/vuu-ui-controls/src/list}/common-hooks/utils/filter-utils.js +0 -0
  926. /package/esm/{list → packages/vuu-ui-controls/src/list}/common-hooks/utils/isSelected.js +0 -0
  927. /package/esm/{list → packages/vuu-ui-controls/src/list}/useList.js +0 -0
  928. /package/esm/{list → packages/vuu-ui-controls/src/list}/useListDrop.js +0 -0
  929. /package/esm/{list → packages/vuu-ui-controls/src/list}/useListHeight.js +0 -0
  930. /package/esm/{list → packages/vuu-ui-controls/src/list}/useScrollPosition.js +0 -0
  931. /package/esm/{measured-container → packages/vuu-ui-controls/src/measured-container}/MeasuredContainer.css.js +0 -0
  932. /package/esm/{measured-container → packages/vuu-ui-controls/src/measured-container}/MeasuredContainer.css.js.map +0 -0
  933. /package/esm/{measured-container → packages/vuu-ui-controls/src/measured-container}/useResizeObserver.js +0 -0
  934. /package/esm/{overflow-container → packages/vuu-ui-controls/src/overflow-container}/OverflowContainer.css.js +0 -0
  935. /package/esm/{overflow-container → packages/vuu-ui-controls/src/overflow-container}/OverflowContainer.css.js.map +0 -0
  936. /package/esm/{overflow-container → packages/vuu-ui-controls/src/overflow-container}/OverflowContainer.js +0 -0
  937. /package/esm/{overflow-container → packages/vuu-ui-controls/src/overflow-container}/overflow-utils.js +0 -0
  938. /package/esm/{overflow-container → packages/vuu-ui-controls/src/overflow-container}/useOverflowContainer.js +0 -0
  939. /package/esm/{price-ticker → packages/vuu-ui-controls/src/price-ticker}/PriceTicker.css.js +0 -0
  940. /package/esm/{price-ticker → packages/vuu-ui-controls/src/price-ticker}/PriceTicker.css.js.map +0 -0
  941. /package/esm/{price-ticker → packages/vuu-ui-controls/src/price-ticker}/PriceTicker.js +0 -0
  942. /package/esm/{split-button → packages/vuu-ui-controls/src/split-button}/SplitButton.css.js.map +0 -0
  943. /package/esm/{split-button → packages/vuu-ui-controls/src/split-button}/SplitButton.js +0 -0
  944. /package/esm/{split-button → packages/vuu-ui-controls/src/split-button}/SplitStateButton.css.js.map +0 -0
  945. /package/esm/{split-button → packages/vuu-ui-controls/src/split-button}/SplitStateButton.js +0 -0
  946. /package/esm/{split-button → packages/vuu-ui-controls/src/split-button}/useSplitButton.js +0 -0
  947. /package/esm/{table-search → packages/vuu-ui-controls/src/table-search}/SearchCell.css.js +0 -0
  948. /package/esm/{table-search → packages/vuu-ui-controls/src/table-search}/SearchCell.css.js.map +0 -0
  949. /package/esm/{table-search → packages/vuu-ui-controls/src/table-search}/SearchCell.js +0 -0
  950. /package/esm/{table-search → packages/vuu-ui-controls/src/table-search}/TableSearch.css.js +0 -0
  951. /package/esm/{table-search → packages/vuu-ui-controls/src/table-search}/TableSearch.css.js.map +0 -0
  952. /package/esm/{table-search → packages/vuu-ui-controls/src/table-search}/TableSearch.js +0 -0
  953. /package/esm/{table-search → packages/vuu-ui-controls/src/table-search}/useTableSearch.js +0 -0
  954. /package/esm/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/Tab.css.js +0 -0
  955. /package/esm/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/Tab.css.js.map +0 -0
  956. /package/esm/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/Tab.js +0 -0
  957. /package/esm/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/TabMenu.css.js +0 -0
  958. /package/esm/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/TabMenu.css.js.map +0 -0
  959. /package/esm/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/TabMenu.js +0 -0
  960. /package/esm/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/TabMenuOptions.js +0 -0
  961. /package/esm/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/Tabstrip.css.js.map +0 -0
  962. /package/esm/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/Tabstrip.js +0 -0
  963. /package/esm/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/tabstrip-dom-utils.js +0 -0
  964. /package/esm/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/useAnimatedSelectionThumb.js +0 -0
  965. /package/esm/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/useKeyboardNavigation.js +0 -0
  966. /package/esm/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/useSelection.js +0 -0
  967. /package/esm/{tabstrip → packages/vuu-ui-controls/src/tabstrip}/useTabstrip.js +0 -0
  968. /package/esm/{toolbar → packages/vuu-ui-controls/src/toolbar}/Toolbar.css.js +0 -0
  969. /package/esm/{toolbar → packages/vuu-ui-controls/src/toolbar}/Toolbar.css.js.map +0 -0
  970. /package/esm/{toolbar → packages/vuu-ui-controls/src/toolbar}/Toolbar.js +0 -0
  971. /package/esm/{toolbar → packages/vuu-ui-controls/src/toolbar}/toolbar-dom-utils.js +0 -0
  972. /package/esm/{toolbar → packages/vuu-ui-controls/src/toolbar}/useKeyboardNavigation.js +0 -0
  973. /package/esm/{toolbar → packages/vuu-ui-controls/src/toolbar}/useSelection.js +0 -0
  974. /package/esm/{toolbar → packages/vuu-ui-controls/src/toolbar}/useToolbar.js +0 -0
  975. /package/esm/{utils → packages/vuu-ui-controls/src/utils}/escapeRegExp.js +0 -0
  976. /package/esm/{utils → packages/vuu-ui-controls/src/utils}/forwardCallbackProps.js +0 -0
  977. /package/esm/{utils → packages/vuu-ui-controls/src/utils}/isOverflowElement.js +0 -0
  978. /package/esm/{utils → packages/vuu-ui-controls/src/utils}/isPlainObject.js +0 -0
  979. /package/esm/{vuu-date-picker → packages/vuu-ui-controls/src/vuu-date-picker}/VuuDatePicker.js +0 -0
  980. /package/esm/{vuu-input → packages/vuu-ui-controls/src/vuu-input}/VuuInput.css.js +0 -0
  981. /package/esm/{vuu-input → packages/vuu-ui-controls/src/vuu-input}/VuuInput.css.js.map +0 -0
  982. /package/esm/{vuu-input → packages/vuu-ui-controls/src/vuu-input}/VuuInput.js +0 -0
  983. /package/esm/{vuu-typeahead-input → packages/vuu-ui-controls/src/vuu-typeahead-input}/VuuTypeaheadInput.css.js +0 -0
  984. /package/esm/{vuu-typeahead-input → packages/vuu-ui-controls/src/vuu-typeahead-input}/VuuTypeaheadInput.css.js.map +0 -0
  985. /package/esm/{vuu-typeahead-input → packages/vuu-ui-controls/src/vuu-typeahead-input}/VuuTypeaheadInput.js +0 -0
  986. /package/esm/{vuu-typeahead-input → packages/vuu-ui-controls/src/vuu-typeahead-input}/useVuuTypeaheadInput.js +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDragDropNaturalMovement.js","sources":["../../src/drag-drop/useDragDropNaturalMovement.tsx"],"sourcesContent":["import { useCallback, useMemo, useRef, useState } from \"react\";\n\nimport {\n Direction,\n DropOptions,\n InternalDragDropProps,\n InternalDragHookResult,\n ViewportRange,\n} from \"./dragDropTypes\";\nimport { useDragDisplacers } from \"./useDragDisplacers\";\nimport { dispatchMouseEvent } from \"@vuu-ui/vuu-utils\";\nimport {\n dimensions,\n getIndexOfDraggedItem,\n getItemParentContainer,\n getNextDropTarget,\n MeasuredDropTarget,\n measureDropTargets,\n NOT_HIDDEN,\n NOT_OVERFLOWED,\n} from \"./drop-target-utils\";\n\ntype DragPosition = {\n direction?: Direction;\n insertionPosition: number;\n};\n\nexport const useDragDropNaturalMovement = ({\n containerRef,\n orientation = \"horizontal\",\n itemQuery = \"*\",\n selected,\n viewportRange,\n}: InternalDragDropProps): InternalDragHookResult => {\n const dragPositionRef = useRef<DragPosition>({\n direction: undefined,\n insertionPosition: -1,\n });\n const isScrollable = useRef(false);\n /** current position of dragged element */\n const dragPosRef = useRef<number>(-1);\n const measuredDropTargets = useRef<MeasuredDropTarget[]>([]);\n const overflowMenuShowingRef = useRef(false);\n\n const [showOverflow, setShowOverflow] = useState(false);\n\n const { clearSpacers, displaceItem, displaceLastItem, setTerminalSpacer } =\n useDragDisplacers(orientation);\n\n const draggedItemRef = useRef<MeasuredDropTarget>();\n const fullItemQuery = `:is(${itemQuery}${NOT_OVERFLOWED}${NOT_HIDDEN},.vuuOverflowContainer-OverflowIndicator)`;\n\n const indexOf = (dropTarget: MeasuredDropTarget) =>\n measuredDropTargets.current.findIndex((d) => d.id === dropTarget.id);\n\n // Shouldn't need this - but viewportRange is always stale in stopScrolling. Checked all dependencies\n // look ok. Something to do with setTimeout / scrollHandler ?\n const rangeRef = useRef<ViewportRange>();\n rangeRef.current = viewportRange;\n\n const handleScrollStart = useCallback(\n (scrollDirection: \"fwd\" | \"bwd\") => {\n const itemContainer = getItemParentContainer(\n containerRef.current,\n itemQuery,\n );\n const { current: draggedItem } = draggedItemRef;\n\n // When we start scrolling, insert a spacer at the start of end of the collection.\n // This is what we will need if user scrolls right to end and it will give the correct\n // scrollHeight. Ig user stops scrolling before start/end we will reposition the\n // spacer(s) appropriately\n if (itemContainer && draggedItem) {\n setTerminalSpacer(\n itemContainer,\n scrollDirection === \"fwd\" ? \"end\" : \"start\",\n draggedItem.size,\n );\n }\n },\n [containerRef, itemQuery, setTerminalSpacer],\n );\n\n const handleScrollStop = useCallback(\n (scrollDirection: \"fwd\" | \"bwd\") => {\n const { current: container } = containerRef;\n const { current: draggedItem } = draggedItemRef;\n const { current: dragPosition } = dragPositionRef;\n if (container && draggedItem) {\n const dropTargets = (measuredDropTargets.current = measureDropTargets(\n container,\n orientation,\n fullItemQuery,\n rangeRef.current,\n ));\n\n const dropTargetAtBoundary =\n scrollDirection === \"fwd\" ? dropTargets.at(-1) : dropTargets.at(0);\n\n if (dropTargetAtBoundary) {\n const { mid, end, size, start } = dropTargetAtBoundary;\n if (scrollDirection === \"fwd\") {\n const draggedDropTarget = {\n ...draggedItem,\n start: Math.round(start + size),\n mid: Math.round(mid + size),\n end: Math.round(end + size),\n };\n dropTargets.push(draggedDropTarget);\n dragPosition.insertionPosition = dropTargetAtBoundary.index + 1;\n } else {\n const draggedDropTarget = {\n ...draggedItem,\n start: Math.round(start - size),\n mid: Math.round(mid - size),\n end: Math.round(end - size),\n };\n dropTargets.unshift(draggedDropTarget);\n dragPosition.insertionPosition = 0;\n }\n }\n }\n },\n [containerRef, fullItemQuery, orientation],\n );\n\n const beginDrag = useCallback(\n (dragElement: HTMLElement) => {\n if (\n //TODO need a different check for selected\n dragElement.ariaSelected &&\n Array.isArray(selected) &&\n selected.length > 1\n ) {\n console.log(\"its a selected element, and we have a multi select\");\n }\n const { current: container } = containerRef;\n const { current: dragPosition } = dragPositionRef;\n\n if (container && dragElement) {\n const internalDrag = container.contains(dragElement);\n const { SCROLL_SIZE, CLIENT_SIZE } = dimensions(orientation);\n const { id: draggedItemId } = dragElement;\n const { [SCROLL_SIZE]: scrollSize, [CLIENT_SIZE]: clientSize } =\n container;\n isScrollable.current = scrollSize > clientSize;\n const dropTargets = (measuredDropTargets.current = measureDropTargets(\n container,\n orientation,\n fullItemQuery,\n viewportRange,\n draggedItemId,\n ));\n\n if (internalDrag) {\n const indexOfDraggedItem = getIndexOfDraggedItem(dropTargets);\n const draggedItem = dropTargets[indexOfDraggedItem];\n if (draggedItem && container) {\n draggedItemRef.current = draggedItem;\n const displaceFunction = draggedItem.isLast\n ? displaceLastItem\n : displaceItem;\n\n // This should return the insertion position of dragged item\n // which depends on both dro[Target and direction]\n dragPosition.insertionPosition = displaceFunction(\n dropTargets,\n draggedItem,\n draggedItem.size,\n false,\n \"static\",\n );\n }\n } else {\n // prettier-ignore\n const { top: dragPos, height: size } = dragElement.getBoundingClientRect();\n // prettier-ignore\n const dropTarget = getNextDropTarget( dropTargets, dragPos, size, \"fwd\");\n const index = dropTargets.indexOf(dropTarget);\n const { start, end, mid } = dropTarget;\n\n // need to compute the correct position of this\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n const draggedItem = (draggedItemRef.current = {\n end,\n mid,\n start,\n isDraggedItem: true,\n isExternal: true,\n size,\n });\n\n const indexOfDropTarget = dropTargets.indexOf(dropTarget);\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n dropTargets.splice(indexOfDropTarget, 0, draggedItem);\n for (let i = index + 1; i < dropTargets.length; i++) {\n const target = dropTargets[i];\n target.mid += size;\n target.end += size;\n target.start += size;\n }\n\n const displaceFunction = dropTarget.isLast\n ? displaceLastItem\n : displaceItem;\n\n displaceFunction(\n dropTargets,\n dropTarget,\n dropTarget.size,\n true,\n \"static\",\n );\n }\n }\n },\n [\n containerRef,\n displaceItem,\n displaceLastItem,\n fullItemQuery,\n orientation,\n selected,\n viewportRange,\n ],\n );\n\n const [showPopup, hidePopup] = useMemo(() => {\n let popupShowing = false;\n const show = (dropTarget: MeasuredDropTarget) => {\n if (!popupShowing) {\n popupShowing = true;\n const button = dropTarget.element.querySelector(\n \".vuuPopupMenu\",\n ) as HTMLElement;\n if (button) {\n dispatchMouseEvent(button, \"click\");\n }\n }\n };\n\n const hide = (dropTarget: MeasuredDropTarget) => {\n if (popupShowing) {\n popupShowing = false;\n const button = dropTarget.element.querySelector(\n \".vuuPopupMenu\",\n ) as HTMLElement;\n if (button) {\n dispatchMouseEvent(button, \"click\");\n }\n }\n };\n\n return [show, hide];\n }, []);\n\n const drag = useCallback(\n (dragPos: number, mouseMoveDirection: \"fwd\" | \"bwd\") => {\n const { current: draggedItem } = draggedItemRef;\n const { current: dragPosition } = dragPositionRef;\n\n if (draggedItem) {\n if (containerRef.current) {\n dragPosRef.current = dragPos;\n\n const { current: dropTargets } = measuredDropTargets;\n const nextDropTarget = getNextDropTarget(\n dropTargets,\n dragPos,\n draggedItem.size,\n mouseMoveDirection,\n );\n\n if (nextDropTarget && !nextDropTarget.isDraggedItem) {\n if (nextDropTarget.isOverflowIndicator) {\n // Does this belong in here or can we abstract it out\n setShowOverflow((overflowMenuShowingRef.current = true));\n showPopup(nextDropTarget);\n } else {\n const { size } = draggedItem;\n const targetIndex = indexOf(nextDropTarget);\n\n const displaceFunc =\n targetIndex === dropTargets.length - 1\n ? displaceLastItem\n : displaceItem;\n\n dragPosition.insertionPosition = displaceFunc(\n dropTargets,\n nextDropTarget,\n size,\n true,\n mouseMoveDirection,\n );\n\n const overflowIndicator = dropTargets.at(\n -1,\n ) as MeasuredDropTarget;\n hidePopup(overflowIndicator);\n setShowOverflow((overflowMenuShowingRef.current = false));\n }\n }\n dragPosition.direction = mouseMoveDirection;\n }\n }\n },\n [containerRef, displaceItem, displaceLastItem, hidePopup, showPopup],\n );\n\n const drop = useCallback((): DropOptions => {\n clearSpacers();\n const { current: dropTargets } = measuredDropTargets;\n const { current: dragPosition } = dragPositionRef;\n const indexOfDraggedItem = getIndexOfDraggedItem(dropTargets);\n const draggedItem = dropTargets[indexOfDraggedItem];\n const { insertionPosition } = dragPosition;\n const { index: fromIndex, isExternal } = draggedItem;\n\n if (overflowMenuShowingRef.current) {\n setShowOverflow(false);\n }\n\n dragPosition.direction = undefined;\n dragPosition.insertionPosition = -1;\n\n const isLastItem = indexOfDraggedItem === dropTargets.length - 1;\n const toIndex = overflowMenuShowingRef.current\n ? -1\n : fromIndex < insertionPosition && !isLastItem\n ? insertionPosition - 1\n : insertionPosition;\n\n return { fromIndex, toIndex, isExternal };\n }, [clearSpacers]);\n\n const releaseDrag = useCallback(() => {\n clearSpacers(true);\n }, [clearSpacers]);\n\n return {\n beginDrag,\n drag,\n drop,\n handleScrollStart,\n handleScrollStop,\n releaseDrag,\n revealOverflowedItems: showOverflow,\n };\n};\n"],"names":["useRef","useState","useDragDisplacers","NOT_OVERFLOWED","NOT_HIDDEN","useCallback","getItemParentContainer","measureDropTargets","dimensions","getIndexOfDraggedItem","getNextDropTarget","useMemo","dispatchMouseEvent"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDropIndicator.js","sources":["../../src/drag-drop/useDropIndicator.ts"],"sourcesContent":["import { useCallback, useMemo } from \"react\";\nimport { dropZone, MeasuredDropTarget } from \"./drop-target-utils\";\nimport { createDropIndicatorPosition } from \"./Draggable\";\n\nexport const SPACER_SIZE = 0;\n\nexport type DropIndicatorHookResult = {\n positionDropIndicator: (\n dropTarget: MeasuredDropTarget,\n dropZone: dropZone\n ) => HTMLElement;\n clearSpacer: () => void;\n};\n\nexport type DropIndicatorHook = () => DropIndicatorHookResult;\n\nexport const useDropIndicator: DropIndicatorHook = () => {\n const spacer = useMemo(() => createDropIndicatorPosition(), []);\n const clearSpacer = useCallback(() => spacer.remove(), [spacer]);\n const positionDropIndicator = useCallback(\n (dropTarget: MeasuredDropTarget, dropZone: \"start\" | \"end\" = \"end\") => {\n if (dropZone === \"end\") {\n dropTarget.element.after(spacer);\n } else {\n dropTarget.element.before(spacer);\n }\n return spacer;\n },\n [spacer]\n );\n\n return {\n positionDropIndicator,\n clearSpacer,\n };\n};\n"],"names":["useMemo","createDropIndicatorPosition","useCallback","dropZone"],"mappings":";;;;;AAgBO,MAAM,mBAAsC,MAAM;AACvD,EAAA,MAAM,SAASA,aAAQ,CAAA,MAAMC,qCAA4B,EAAA,EAAG,EAAE,CAAA,CAAA;AAC9D,EAAM,MAAA,WAAA,GAAcC,kBAAY,MAAM,MAAA,CAAO,QAAU,EAAA,CAAC,MAAM,CAAC,CAAA,CAAA;AAC/D,EAAA,MAAM,qBAAwB,GAAAA,iBAAA;AAAA,IAC5B,CAAC,UAAgCC,EAAAA,SAAAA,GAA4B,KAAU,KAAA;AACrE,MAAA,IAAIA,cAAa,KAAO,EAAA;AACtB,QAAW,UAAA,CAAA,OAAA,CAAQ,MAAM,MAAM,CAAA,CAAA;AAAA,OAC1B,MAAA;AACL,QAAW,UAAA,CAAA,OAAA,CAAQ,OAAO,MAAM,CAAA,CAAA;AAAA,OAClC;AACA,MAAO,OAAA,MAAA,CAAA;AAAA,KACT;AAAA,IACA,CAAC,MAAM,CAAA;AAAA,GACT,CAAA;AAEA,EAAO,OAAA;AAAA,IACL,qBAAA;AAAA,IACA,WAAA;AAAA,GACF,CAAA;AACF;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useGlobalDragDrop.js","sources":["../../src/drag-drop/useGlobalDragDrop.ts"],"sourcesContent":["import { boxContainsPoint, dispatchCustomEvent } from \"@vuu-ui/vuu-utils\";\nimport { useCallback, useRef } from \"react\";\nimport { MeasuredTarget } from \"./DragDropProvider\";\nimport { DragDropState } from \"./DragDropState\";\nimport { MouseOffset } from \"./dragDropTypes\";\n\nexport type ResumeDragHandler = (dragDropState: DragDropState) => boolean;\nexport type GlobalDropHandler = (dragDropState: DragDropState) => void;\n\nexport const useGlobalDragDrop = ({\n onDragOverDropTarget,\n onDrop,\n}: {\n onDragOverDropTarget: (\n dropTargetId: string,\n dragDropState: DragDropState,\n ) => boolean;\n onDrop: (dropTargetId: string, dragDropState: DragDropState) => void;\n}) => {\n const dropTargetRef = useRef<string>();\n const measuredDropTargetsRef = useRef<Record<string, MeasuredTarget>>();\n\n const dragDropStateRef = useRef<DragDropState | null>(null);\n /** current mouse position */\n const mousePosRef = useRef<MouseOffset>({ x: 0, y: 0 });\n\n const overDropTarget = useCallback((x: number, y: number) => {\n const { current: dropTargets } = measuredDropTargetsRef;\n if (dropTargets) {\n for (const [id, measuredTarget] of Object.entries(dropTargets)) {\n if (boxContainsPoint(measuredTarget, x, y)) {\n return id;\n }\n }\n }\n return undefined;\n }, []);\n\n const dragMouseMoveHandler = useCallback(\n (evt: MouseEvent) => {\n const { clientX, clientY } = evt;\n const { current: dragDropState } = dragDropStateRef;\n\n mousePosRef.current.x = clientX;\n mousePosRef.current.y = clientY;\n\n if (dragDropState?.draggableElement) {\n const { draggableElement, mouseOffset } = dragDropState;\n\n const dragPosX = mousePosRef.current.x - mouseOffset.x;\n const dragPosY = mousePosRef.current.y - mouseOffset.y;\n draggableElement.style.top = `${dragPosY}px`;\n draggableElement.style.left = `${dragPosX}px`;\n\n const dropTargetId = overDropTarget(dragPosX, dragPosY);\n if (dropTargetId) {\n const dropTargetWillResumeDrag = onDragOverDropTarget(\n dropTargetId,\n dragDropState,\n );\n if (dropTargetWillResumeDrag) {\n // prettier-ignore\n document.removeEventListener(\"mousemove\", dragMouseMoveHandler, false);\n document.removeEventListener(\"mouseup\", dragMouseUpHandler, false);\n dragDropStateRef.current = null;\n dropTargetRef.current = undefined;\n } else {\n dropTargetRef.current = dropTargetId;\n }\n } else {\n dropTargetRef.current = undefined;\n }\n }\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [],\n );\n\n const dragMouseUpHandler = useCallback(() => {\n document.removeEventListener(\"mousemove\", dragMouseMoveHandler, false);\n document.removeEventListener(\"mouseup\", dragMouseUpHandler, false);\n const { current: dragDropState } = dragDropStateRef;\n if (dragDropState) {\n dragDropStateRef.current = null;\n if (dropTargetRef.current) {\n onDrop(dropTargetRef.current, dragDropState);\n }\n if (dragDropState.draggableElement) {\n dispatchCustomEvent(dragDropState.draggableElement, \"vuu-dropped\");\n }\n }\n }, [dragMouseMoveHandler, onDrop]);\n\n const resumeDrag = useCallback<ResumeDragHandler>(\n (dragDropState) => {\n dragDropStateRef.current = dragDropState;\n document.addEventListener(\"mousemove\", dragMouseMoveHandler, false);\n document.addEventListener(\"mouseup\", dragMouseUpHandler, false);\n\n return true;\n },\n [dragMouseMoveHandler, dragMouseUpHandler],\n );\n\n return {\n measuredDropTargetsRef,\n resumeDrag,\n };\n};\n"],"names":["useRef","useCallback","boxContainsPoint","dispatchCustomEvent"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useEditableText.js","sources":["../../src/editable/useEditableText.ts"],"sourcesContent":["import { DataValueValidationChecker } from \"@vuu-ui/vuu-data-types\";\nimport { VuuRowDataItemType } from \"@vuu-ui/vuu-protocol-types\";\nimport { DataItemEditHandler } from \"@vuu-ui/vuu-table-types\";\nimport { dispatchCustomEvent, getTypedValue } from \"@vuu-ui/vuu-utils\";\nimport {\n FocusEventHandler,\n FormEventHandler,\n KeyboardEvent,\n useCallback,\n useMemo,\n useRef,\n useState,\n} from \"react\";\n\nexport interface EditableTextHookProps<\n T extends VuuRowDataItemType = VuuRowDataItemType,\n> {\n clientSideEditValidationCheck?: DataValueValidationChecker;\n value?: T;\n onEdit?: DataItemEditHandler;\n type?: \"string\" | \"number\" | \"boolean\";\n}\n\ntype EditState = {\n message?: string;\n value: string;\n};\n\nconst stringValueOf = (value?: VuuRowDataItemType) => value?.toString() ?? \"\";\n\nexport const useEditableText = <T extends string | number | boolean = string>({\n clientSideEditValidationCheck,\n value,\n onEdit,\n type = \"string\",\n}: EditableTextHookProps<T>) => {\n // console.log(\"initial value: \", initialValue);\n const [editState, setEditState] = useState<EditState>({\n value: stringValueOf(value),\n });\n // console.log(\"edit state: \", editState);\n const initialValueRef = useRef<string>(value?.toString() ?? \"\");\n const isDirtyRef = useRef(false);\n\n useMemo(() => {\n if (initialValueRef.current !== value?.toString()) {\n initialValueRef.current = stringValueOf(value);\n setEditState({ message: \"\", value: stringValueOf(value) });\n console.log(\"initial value changed to: \", value);\n }\n }, [value]);\n\n const commit = useCallback(\n async (target: HTMLElement) => {\n const { value } = editState;\n if (isDirtyRef.current) {\n const result = clientSideEditValidationCheck?.(value, \"*\");\n if (result?.ok === false) {\n setEditState((state) => ({\n ...state,\n message: result?.messages?.join(\",\"),\n }));\n } else {\n setEditState((state) => ({ ...state, message: undefined }));\n const response = await onEdit?.(\n { editType: \"commit\", value, isValid: true },\n \"commit\",\n );\n if (response === true) {\n isDirtyRef.current = false;\n initialValueRef.current = value;\n dispatchCustomEvent(target, \"vuu-commit\");\n } else if (typeof response === \"string\") {\n setEditState((state) => ({ ...state, message: response }));\n }\n }\n } else {\n // why, if not dirty ?\n dispatchCustomEvent(target, \"vuu-commit\");\n }\n },\n [clientSideEditValidationCheck, editState, onEdit],\n );\n\n const handleKeyDown = useCallback(\n (evt: KeyboardEvent<HTMLElement>) => {\n if (evt.key === \"Enter\") {\n commit(evt.target as HTMLElement);\n } else if (\n evt.key === \"ArrowRight\" ||\n evt.key === \"ArrowLeft\" ||\n evt.key === \"ArrowUp\" ||\n evt.key === \"ArrowDown\"\n ) {\n evt.stopPropagation();\n } else if (evt.key === \"Escape\") {\n if (isDirtyRef.current) {\n const { value: previousValue } = editState;\n isDirtyRef.current = false;\n setEditState({ value: initialValueRef.current, message: undefined });\n // this assumes the original value was valid, is that safe ?\n onEdit?.(\n {\n editType: \"cancel\",\n isValid: true,\n previousValue,\n value: initialValueRef.current,\n },\n \"cancel\",\n );\n }\n }\n },\n [commit, editState, onEdit],\n );\n\n const handleBlur = useCallback<FocusEventHandler<HTMLElement>>(\n (evt) => {\n if (isDirtyRef.current) {\n commit(evt.target as HTMLElement);\n }\n },\n [commit],\n );\n\n const handleChange = useCallback<FormEventHandler>(\n (evt) => {\n const { value } = evt.target as HTMLInputElement;\n const typedValue = getTypedValue(value, type);\n console.log(\n `[useEditableText] handleChange '${value}' typedValue ${typedValue}\n initial value ${initialValueRef.current}\n `,\n );\n isDirtyRef.current = value !== initialValueRef.current;\n const result = clientSideEditValidationCheck?.(value, \"change\");\n console.log({ result, value });\n setEditState({ value });\n\n onEdit?.(\n { editType: \"change\", isValid: result?.ok !== false, value },\n \"change\",\n );\n if (result?.ok === false) {\n console.log(\"cell fails validation\");\n setEditState({ value, message: result.messages?.join(\",\") });\n }\n },\n [clientSideEditValidationCheck, onEdit, type],\n );\n\n return {\n //TODO why are we detecting commit here, why not use VuuInput ?\n inputProps: {\n onBlur: handleBlur,\n onKeyDown: handleKeyDown,\n },\n onChange: handleChange,\n value: editState.value,\n warningMessage: editState.message,\n };\n};\n"],"names":["useState","useRef","useMemo","useCallback","value","dispatchCustomEvent","getTypedValue"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"EditableLabel.js","sources":["../../src/editable-label/EditableLabel.tsx"],"sourcesContent":["import cx from \"clsx\";\nimport {\n ChangeEvent,\n KeyboardEvent,\n useCallback,\n useLayoutEffect,\n forwardRef,\n ForwardedRef,\n ReactElement,\n useRef,\n HTMLAttributes,\n useImperativeHandle,\n} from \"react\";\nimport { Input, useControlled } from \"@salt-ds/core\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useWindow } from \"@salt-ds/window\";\n\nimport editableLabelCss from \"./EditableLabel.css\";\n\nconst classBase = \"vuuEditableLabel\";\n\nexport type ExitEditModeHandler = (\n originalLabel: string | undefined,\n editedLabel: string | undefined,\n allowDeactivation?: boolean,\n editCancelled?: boolean,\n) => void;\n\nexport interface EditAPI {\n beginEdit: () => void;\n}\n\nexport const NullEditAPI: EditAPI = {\n beginEdit: () => undefined,\n};\n\nexport interface EditableLabelProps\n extends Omit<HTMLAttributes<HTMLDivElement>, \"onChange\"> {\n className?: string;\n defaultEditing?: boolean;\n defaultValue?: string;\n editLabelApiRef?: ForwardedRef<EditAPI>;\n editing?: boolean;\n onEnterEditMode?: () => void;\n onChange?: (value: string) => void;\n onExitEditMode: ExitEditModeHandler;\n defaultIsEditing?: boolean;\n value?: string;\n}\n\nexport const EditableLabel = forwardRef(function EditableLabel(\n {\n className: classNameProp,\n defaultEditing,\n defaultValue,\n editLabelApiRef,\n editing: editingProp,\n onChange,\n onEnterEditMode,\n onExitEditMode,\n value: valueProp,\n ...restProps\n }: EditableLabelProps,\n forwardedRef: ForwardedRef<HTMLDivElement>,\n): ReactElement<EditableLabelProps> {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"vuu-editable-label\",\n css: editableLabelCss,\n window: targetWindow,\n });\n\n const inputRef = useRef<HTMLInputElement | null>(null);\n const editingRef = useRef<boolean>(false);\n\n const [value, setValue] = useControlled({\n controlled: valueProp,\n default: defaultValue ?? \"\",\n name: \"EditableLabel\",\n state: \"value\",\n });\n\n const [editing, _setEditing] = useControlled({\n controlled: editingProp,\n default: defaultEditing ?? false,\n name: \"EditableLabel\",\n state: \"editing\",\n });\n\n const setEditing = useCallback(\n (value: boolean) => {\n _setEditing((editingRef.current = value));\n },\n [_setEditing],\n );\n\n const initialValue = useRef(value);\n\n useLayoutEffect(() => {\n if (editing) {\n if (inputRef.current !== null) {\n inputRef.current.select();\n inputRef.current.focus();\n }\n }\n }, [editing, inputRef]);\n\n const beginEdit = useCallback(() => {\n setEditing(true);\n onEnterEditMode?.();\n }, [onEnterEditMode, setEditing]);\n\n useImperativeHandle(\n editLabelApiRef,\n () => ({\n beginEdit,\n }),\n [beginEdit],\n );\n\n const exitEditMode = useCallback(\n ({ cancelEdit = false, allowDeactivation = false } = {}) => {\n setEditing(false);\n const originalValue = initialValue.current;\n if (cancelEdit || originalValue === value) {\n if (originalValue !== value) {\n setValue(originalValue);\n }\n onExitEditMode?.(\n originalValue,\n originalValue,\n allowDeactivation,\n cancelEdit,\n );\n } else {\n initialValue.current = value;\n onExitEditMode?.(originalValue, value, allowDeactivation, cancelEdit);\n }\n },\n [onExitEditMode, setEditing, setValue, value],\n );\n\n const handleChange = (evt: ChangeEvent<HTMLInputElement>) => {\n const { value } = evt.target;\n setValue(value);\n onChange && onChange(value);\n };\n\n // We need the ref here as the blur fires before setEditing has taken effect,\n // so we get a double call to exitEditMode if edit is cancelled.\n const handleBlur = useCallback(() => {\n if (editingRef.current) {\n exitEditMode({ allowDeactivation: true });\n }\n }, [exitEditMode]);\n\n const handleKeyDown = (evt: KeyboardEvent<HTMLInputElement>) => {\n if (editing && evt.key === \"Enter\") {\n evt.stopPropagation();\n // we are likely to lose focus as a consequence of user response\n // to exitEdit transition, don't want it to trigger another\n //shouldn't we call setEditing here in case we are in uncontrolled mode ?\n exitEditMode();\n } else if (evt.key === \"ArrowRight\" || evt.key === \"ArrowLeft\") {\n evt.stopPropagation();\n } else if (evt.key === \"Escape\") {\n exitEditMode({ cancelEdit: true });\n }\n };\n\n const className = cx(classBase, classNameProp, {\n [`${classBase}-editing`]: editing,\n });\n return (\n <div\n {...restProps}\n className={className}\n data-text={value}\n ref={forwardedRef}\n >\n {editing ? (\n <Input\n inputProps={{ className: `${classBase}-input`, spellCheck: false }}\n value={value}\n onBlur={handleBlur}\n onChange={handleChange}\n onKeyDown={handleKeyDown}\n inputRef={inputRef}\n textAlign=\"left\"\n variant=\"secondary\"\n />\n ) : (\n <span className={`${classBase}-label`}>{value}</span>\n )}\n </div>\n );\n});\n"],"names":["forwardRef","EditableLabel","useWindow","useComponentCssInjection","editableLabelCss","useRef","useControlled","useCallback","value","useLayoutEffect","useImperativeHandle","jsx","Input"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExpandoInput.js","sources":["../../src/expando-input/ExpandoInput.tsx"],"sourcesContent":["import cx from \"clsx\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { ForwardedRef, forwardRef } from \"react\";\nimport { VuuInput, VuuInputProps } from \"../vuu-input\";\n\nimport expandoInputCss from \"./ExpandoInput.css\";\n\nconst classBase = \"vuuExpandoInput\";\n\nconst noop = () => undefined;\n\nexport interface ExpandoInputProps extends Omit<VuuInputProps, \"onCommit\"> {\n onCommit?: VuuInputProps[\"onCommit\"];\n}\n\nexport const ExpandoInput = forwardRef(function ExpandoInput(\n {\n className: classNameProp,\n errorMessage,\n value,\n inputProps,\n onCommit = noop,\n ...props\n }: ExpandoInputProps,\n forwardedRef: ForwardedRef<HTMLDivElement>,\n) {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"vuu-expando-input\",\n css: expandoInputCss,\n window: targetWindow,\n });\n\n return (\n <div\n className={cx(classBase, classNameProp, {\n [`${classBase}-error`]: errorMessage,\n })}\n data-text={value}\n >\n <VuuInput\n {...props}\n errorMessage={errorMessage}\n inputProps={{ ...inputProps, className: `${classBase}-input` }}\n onCommit={onCommit}\n ref={forwardedRef}\n style={{ padding: 0 }}\n textAlign=\"left\"\n value={value}\n variant=\"secondary\"\n />\n </div>\n );\n});\n"],"names":["forwardRef","ExpandoInput","useWindow","useComponentCssInjection","expandoInputCss","jsx","VuuInput"],"mappings":";;;;;;;;;;AAQA,MAAM,SAAY,GAAA,iBAAA,CAAA;AAElB,MAAM,OAAO,MAAM,KAAA,CAAA,CAAA;AAMN,MAAA,YAAA,GAAeA,gBAAW,CAAA,SAASC,aAC9C,CAAA;AAAA,EACE,SAAW,EAAA,aAAA;AAAA,EACX,YAAA;AAAA,EACA,KAAA;AAAA,EACA,UAAA;AAAA,EACA,QAAW,GAAA,IAAA;AAAA,EACX,GAAG,KAAA;AACL,CAAA,EACA,YACA,EAAA;AACA,EAAA,MAAM,eAAeC,gBAAU,EAAA,CAAA;AAC/B,EAAyBC,+BAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,mBAAA;AAAA,IACR,GAAK,EAAAC,cAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EACE,uBAAAC,cAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAG,CAAA,SAAA,EAAW,aAAe,EAAA;AAAA,QACtC,CAAC,CAAA,EAAG,SAAS,CAAA,MAAA,CAAQ,GAAG,YAAA;AAAA,OACzB,CAAA;AAAA,MACD,WAAW,EAAA,KAAA;AAAA,MAEX,QAAA,kBAAAA,cAAA;AAAA,QAACC,iBAAA;AAAA,QAAA;AAAA,UACE,GAAG,KAAA;AAAA,UACJ,YAAA;AAAA,UACA,YAAY,EAAE,GAAG,YAAY,SAAW,EAAA,CAAA,EAAG,SAAS,CAAS,MAAA,CAAA,EAAA;AAAA,UAC7D,QAAA;AAAA,UACA,GAAK,EAAA,YAAA;AAAA,UACL,KAAA,EAAO,EAAE,OAAA,EAAS,CAAE,EAAA;AAAA,UACpB,SAAU,EAAA,MAAA;AAAA,UACV,KAAA;AAAA,UACA,OAAQ,EAAA,WAAA;AAAA,SAAA;AAAA,OACV;AAAA,KAAA;AAAA,GACF,CAAA;AAEJ,CAAC;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Icon.js","sources":["../../src/icon-button/Icon.tsx"],"sourcesContent":["import { HTMLAttributes } from \"react\";\nimport cx from \"clsx\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useWindow } from \"@salt-ds/window\";\n\nimport iconCss from \"./Icon.css\";\n\nconst classBase = \"vuuIcon\";\n\nexport interface IconProps extends HTMLAttributes<HTMLSpanElement> {\n name: string;\n size?: number;\n}\n\nexport const Icon = ({\n className,\n name,\n size,\n style: styleProp,\n ...htmlAttributes\n}: IconProps) => {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"vuu-icon\",\n css: iconCss,\n window: targetWindow,\n });\n\n const style =\n typeof size === \"number\"\n ? { ...styleProp, \"--vuu-icon-size\": `${size}px` }\n : styleProp;\n return (\n <span\n {...htmlAttributes}\n className={cx(classBase, className)}\n data-icon={name}\n role=\"img\"\n style={style}\n />\n );\n};\n"],"names":["useWindow","useComponentCssInjection","iconCss","jsx"],"mappings":";;;;;;;;AAOA,MAAM,SAAY,GAAA,SAAA,CAAA;AAOX,MAAM,OAAO,CAAC;AAAA,EACnB,SAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,KAAO,EAAA,SAAA;AAAA,EACP,GAAG,cAAA;AACL,CAAiB,KAAA;AACf,EAAA,MAAM,eAAeA,gBAAU,EAAA,CAAA;AAC/B,EAAyBC,+BAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,UAAA;AAAA,IACR,GAAK,EAAAC,MAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EAAM,MAAA,KAAA,GACJ,OAAO,IAAA,KAAS,QACZ,GAAA,EAAE,GAAG,SAAA,EAAW,iBAAmB,EAAA,CAAA,EAAG,IAAI,CAAA,EAAA,CAAA,EAC1C,GAAA,SAAA,CAAA;AACN,EACE,uBAAAC,cAAA;AAAA,IAAC,MAAA;AAAA,IAAA;AAAA,MACE,GAAG,cAAA;AAAA,MACJ,SAAA,EAAW,EAAG,CAAA,SAAA,EAAW,SAAS,CAAA;AAAA,MAClC,WAAW,EAAA,IAAA;AAAA,MACX,IAAK,EAAA,KAAA;AAAA,MACL,KAAA;AAAA,KAAA;AAAA,GACF,CAAA;AAEJ;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"IconButton.js","sources":["../../src/icon-button/IconButton.tsx"],"sourcesContent":["import cx from \"clsx\";\nimport { Button, ButtonProps } from \"@salt-ds/core\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { Icon } from \"./Icon\";\nimport { forwardRef } from \"react\";\n\nimport iconButtonCss from \"./IconButton.css\";\n\nconst classBase = \"vuuIconButton\";\n\nexport interface IconButtonProps extends Omit<ButtonProps, \"children\"> {\n icon: string;\n size?: number;\n}\n\nexport const IconButton = forwardRef<HTMLButtonElement, IconButtonProps>(\n function IconButton(\n { \"aria-label\": ariaLabel, className, icon, size, ...buttonProps },\n ref\n ) {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"vuu-icon-button\",\n css: iconButtonCss,\n window: targetWindow,\n });\n\n return (\n <Button {...buttonProps} className={cx(classBase, className)} ref={ref}>\n <Icon aria-label={ariaLabel} name={icon} size={size} />\n </Button>\n );\n }\n);\n"],"names":["forwardRef","IconButton","useWindow","useComponentCssInjection","iconButtonCss","Button","Icon"],"mappings":";;;;;;;;;;;AASA,MAAM,SAAY,GAAA,eAAA,CAAA;AAOX,MAAM,UAAa,GAAAA,gBAAA;AAAA,EACxB,SAASC,WACP,CAAA,EAAE,YAAc,EAAA,SAAA,EAAW,SAAW,EAAA,IAAA,EAAM,IAAM,EAAA,GAAG,WAAY,EAAA,EACjE,GACA,EAAA;AACA,IAAA,MAAM,eAAeC,gBAAU,EAAA,CAAA;AAC/B,IAAyBC,+BAAA,CAAA;AAAA,MACvB,MAAQ,EAAA,iBAAA;AAAA,MACR,GAAK,EAAAC,YAAA;AAAA,MACL,MAAQ,EAAA,YAAA;AAAA,KACT,CAAA,CAAA;AAED,IAAA,sCACGC,WAAQ,EAAA,EAAA,GAAG,WAAa,EAAA,SAAA,EAAW,GAAG,SAAW,EAAA,SAAS,CAAG,EAAA,GAAA,EAC5D,yCAACC,SAAK,EAAA,EAAA,YAAA,EAAY,WAAW,IAAM,EAAA,IAAA,EAAM,MAAY,CACvD,EAAA,CAAA,CAAA;AAAA,GAEJ;AACF;;;;"}
@@ -1,6 +0,0 @@
1
- 'use strict';
2
-
3
- var toggleIconCss = ".vuuToggleIconButton {\n &.saltButton {\n &:active {\n --saltButton-background-active: transparent;\n }\n &:hover {\n --saltButton-background-hover: transparent;\n }\n .vuuIcon {\n --vuu-icon-height: 18px;\n --vuu-icon-left: -3px;\n --vuu-icon-width: 18px;\n &:after {\n transition: transform 0.1s linear;\n }\n &[data-icon=\"triangle-down\"]:after {\n --vuu-icon-left: -1px;\n --vuu-icon-top: -3px;\n }\n }\n border: none;\n border-radius: 0;\n height: 18px;\n left: 0;\n min-width: 16px;\n padding: 0;\n width: 18px;\n }\n}\n\n.vuuTableGroupCell:hover {\n .vuuToggleIconButton {\n .vuuIcon:after {\n --vuu-icon-color: var(--salt-palette-interact-cta-background-hover);\n }\n }\n}\n";
4
-
5
- module.exports = toggleIconCss;
6
- //# sourceMappingURL=ToggleIconButton.css.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ToggleIconButton.js","sources":["../../src/icon-button/ToggleIconButton.tsx"],"sourcesContent":["import { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useWindow } from \"@salt-ds/window\";\nimport cx from \"clsx\";\nimport { IconButton, IconButtonProps } from \"./IconButton\";\n\nimport toggleIconCss from \"./ToggleIconButton.css\";\n\nconst classBase = \"vuuToggleIconButton\";\n\nexport interface ToggleIconButtonProps extends Omit<IconButtonProps, \"icon\"> {\n isExpanded: boolean;\n}\n\nexport const ToggleIconButton = ({\n className,\n isExpanded,\n size = 7,\n variant = \"secondary\",\n ...props\n}: ToggleIconButtonProps) => {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"vuu-toggle-icon-button\",\n css: toggleIconCss,\n window: targetWindow,\n });\n\n const icon = isExpanded ? \"triangle-down\" : \"triangle-right\";\n return (\n <IconButton\n {...props}\n className={cx(classBase, className)}\n icon={icon}\n size={size}\n variant={variant}\n />\n );\n};\n"],"names":["useWindow","useComponentCssInjection","toggleIconCss","jsx","IconButton"],"mappings":";;;;;;;;;AAOA,MAAM,SAAY,GAAA,qBAAA,CAAA;AAMX,MAAM,mBAAmB,CAAC;AAAA,EAC/B,SAAA;AAAA,EACA,UAAA;AAAA,EACA,IAAO,GAAA,CAAA;AAAA,EACP,OAAU,GAAA,WAAA;AAAA,EACV,GAAG,KAAA;AACL,CAA6B,KAAA;AAC3B,EAAA,MAAM,eAAeA,gBAAU,EAAA,CAAA;AAC/B,EAAyBC,+BAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,wBAAA;AAAA,IACR,GAAK,EAAAC,kBAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EAAM,MAAA,IAAA,GAAO,aAAa,eAAkB,GAAA,gBAAA,CAAA;AAC5C,EACE,uBAAAC,cAAA;AAAA,IAACC,qBAAA;AAAA,IAAA;AAAA,MACE,GAAG,KAAA;AAAA,MACJ,SAAA,EAAW,EAAG,CAAA,SAAA,EAAW,SAAS,CAAA;AAAA,MAClC,IAAA;AAAA,MACA,IAAA;AAAA,MACA,OAAA;AAAA,KAAA;AAAA,GACF,CAAA;AAEJ;;;;"}
package/cjs/index.js DELETED
@@ -1,223 +0,0 @@
1
- 'use strict';
2
-
3
- var Calendar = require('./calendar/Calendar.js');
4
- var useCalendarDay = require('./calendar/useCalendarDay.js');
5
- var useCalendar = require('./calendar/useCalendar.js');
6
- var useSelection = require('./calendar/useSelection.js');
7
- var ColumnPicker = require('./column-picker/ColumnPicker.js');
8
- var ColumnSearch = require('./column-picker/ColumnSearch.js');
9
- var collectionProvider = require('./common-hooks/collectionProvider.js');
10
- var itemToString = require('./common-hooks/itemToString.js');
11
- var useCollectionItems = require('./common-hooks/useCollectionItems.js');
12
- var useControlled = require('./common-hooks/useControlled.js');
13
- var useResizeObserver = require('./common-hooks/use-resize-observer.js');
14
- var selectionTypes = require('./common-hooks/selectionTypes.js');
15
- var CycleStateButton = require('./cycle-state-button/CycleStateButton.js');
16
- var DateInput = require('./date-input/DateInput.js');
17
- var DatePicker = require('./date-picker/DatePicker.js');
18
- var dragDropTypes = require('./drag-drop/dragDropTypes.js');
19
- var DragDropProvider = require('./drag-drop/DragDropProvider.js');
20
- var DragDropState = require('./drag-drop/DragDropState.js');
21
- var useDragDrop = require('./drag-drop/useDragDrop.js');
22
- var dropTargetUtils = require('./drag-drop/drop-target-utils.js');
23
- var useGlobalDragDrop = require('./drag-drop/useGlobalDragDrop.js');
24
- var useEditableText = require('./editable/useEditableText.js');
25
- var EditableLabel = require('./editable-label/EditableLabel.js');
26
- var ExpandoInput = require('./expando-input/ExpandoInput.js');
27
- var Icon = require('./icon-button/Icon.js');
28
- var IconButton = require('./icon-button/IconButton.js');
29
- var ToggleIconButton = require('./icon-button/ToggleIconButton.js');
30
- var TablePicker = require('./instrument-picker/TablePicker.js');
31
- var TableSearch = require('./table-search/TableSearch.js');
32
- var keyUtils = require('./list/common-hooks/keyUtils.js');
33
- var useCollapsibleGroups = require('./list/common-hooks/useCollapsibleGroups.js');
34
- var listDomUtils = require('./list/common-hooks/list-dom-utils.js');
35
- var useImperativeScrollingAPI = require('./list/common-hooks/useImperativeScrollingAPI.js');
36
- var useKeyboardNavigation = require('./list/common-hooks/useKeyboardNavigation.js');
37
- var useSelection$1 = require('./common-hooks/useSelection.js');
38
- var useTypeahead = require('./list/common-hooks/useTypeahead.js');
39
- var useViewportTracking = require('./list/common-hooks/useViewportTracking.js');
40
- var collectionItemUtils = require('./list/common-hooks/utils/collection-item-utils.js');
41
- var filterUtils = require('./list/common-hooks/utils/filter-utils.js');
42
- var isSelected = require('./list/common-hooks/utils/isSelected.js');
43
- var Highlighter = require('./list/Highlighter.js');
44
- var ListItem = require('./list/ListItem.js');
45
- var List = require('./list/List.js');
46
- var ListItemHeader = require('./list/ListItemHeader.js');
47
- var ListItemGroup = require('./list/ListItemGroup.js');
48
- var useList = require('./list/useList.js');
49
- var RadioIcon = require('./list/RadioIcon.js');
50
- var MeasuredContainer = require('./measured-container/MeasuredContainer.js');
51
- var useMeasuredContainer = require('./measured-container/useMeasuredContainer.js');
52
- var OverflowContainer = require('./overflow-container/OverflowContainer.js');
53
- var overflowUtils = require('./overflow-container/overflow-utils.js');
54
- var PriceTicker = require('./price-ticker/PriceTicker.js');
55
- var SplitButton = require('./split-button/SplitButton.js');
56
- var SplitStateButton = require('./split-button/SplitStateButton.js');
57
- var Tabstrip = require('./tabstrip/Tabstrip.js');
58
- var Tab = require('./tabstrip/Tab.js');
59
- var tabstripDomUtils = require('./tabstrip/tabstrip-dom-utils.js');
60
- var Toolbar = require('./toolbar/Toolbar.js');
61
- var Tree = require('./tree/Tree.js');
62
- var useItemsWithIds = require('./tree/use-items-with-ids.js');
63
- var escapeRegExp = require('./utils/escapeRegExp.js');
64
- var isOverflowElement = require('./utils/isOverflowElement.js');
65
- var isPlainObject = require('./utils/isPlainObject.js');
66
- var forwardCallbackProps = require('./utils/forwardCallbackProps.js');
67
- var VuuDatePicker = require('./vuu-date-picker/VuuDatePicker.js');
68
- var VuuInput = require('./vuu-input/VuuInput.js');
69
- var VuuTypeaheadInput = require('./vuu-typeahead-input/VuuTypeaheadInput.js');
70
-
71
-
72
-
73
- exports.Calendar = Calendar.Calendar;
74
- exports.useCalendarDay = useCalendarDay.useCalendarDay;
75
- exports.useCalendar = useCalendar.useCalendar;
76
- exports.isRangeOrOffsetSelectionValue = useSelection.isRangeOrOffsetSelectionValue;
77
- exports.isRangeOrOffsetSelectionWithStartDate = useSelection.isRangeOrOffsetSelectionWithStartDate;
78
- exports.useSelectionCalendar = useSelection.useSelectionCalendar;
79
- exports.useSelectionDay = useSelection.useSelectionDay;
80
- exports.ColumnPicker = ColumnPicker.ColumnPicker;
81
- exports.ColumnSearch = ColumnSearch.ColumnSearch;
82
- exports.CollectionContext = collectionProvider.CollectionContext;
83
- exports.CollectionProvider = collectionProvider.CollectionProvider;
84
- exports.useCollection = collectionProvider.useCollection;
85
- exports.itemToString = itemToString.itemToString;
86
- exports.useCollectionItems = useCollectionItems.useCollectionItems;
87
- exports.useControlled = useControlled.useControlled;
88
- exports.HeightOnly = useResizeObserver.HeightOnly;
89
- exports.WidthHeight = useResizeObserver.WidthHeight;
90
- exports.WidthOnly = useResizeObserver.WidthOnly;
91
- exports.useResizeObserver = useResizeObserver.useResizeObserver;
92
- exports.allowMultipleSelection = selectionTypes.allowMultipleSelection;
93
- exports.deselectionIsAllowed = selectionTypes.deselectionIsAllowed;
94
- exports.getFirstSelectedItem = selectionTypes.getFirstSelectedItem;
95
- exports.hasSelection = selectionTypes.hasSelection;
96
- exports.isMultiSelection = selectionTypes.isMultiSelection;
97
- exports.isSingleSelection = selectionTypes.isSingleSelection;
98
- exports.selectionIsDisallowed = selectionTypes.selectionIsDisallowed;
99
- exports.CycleStateButton = CycleStateButton.CycleStateButton;
100
- exports.DateInput = DateInput.DateInput;
101
- exports.DatePicker = DatePicker.DatePicker;
102
- exports.BWD = dragDropTypes.BWD;
103
- exports.FWD = dragDropTypes.FWD;
104
- exports.DragDropProvider = DragDropProvider.DragDropProvider;
105
- exports.useDragDropProvider = DragDropProvider.useDragDropProvider;
106
- exports.DragDropState = DragDropState.DragDropState;
107
- exports.useDragDrop = useDragDrop.useDragDrop;
108
- exports.NOT_HIDDEN = dropTargetUtils.NOT_HIDDEN;
109
- exports.NOT_OVERFLOWED = dropTargetUtils.NOT_OVERFLOWED;
110
- exports.cloneElement = dropTargetUtils.cloneElement;
111
- exports.constrainRect = dropTargetUtils.constrainRect;
112
- exports.dimensions = dropTargetUtils.dimensions;
113
- exports.dropTargetsDebugString = dropTargetUtils.dropTargetsDebugString;
114
- exports.getIndexOfDraggedItem = dropTargetUtils.getIndexOfDraggedItem;
115
- exports.getItemById = dropTargetUtils.getItemById;
116
- exports.getItemParentContainer = dropTargetUtils.getItemParentContainer;
117
- exports.getNextDropTarget = dropTargetUtils.getNextDropTarget;
118
- exports.getScrollableContainer = dropTargetUtils.getScrollableContainer;
119
- exports.isContainerScrollable = dropTargetUtils.isContainerScrollable;
120
- exports.measureDropTargets = dropTargetUtils.measureDropTargets;
121
- exports.measureElementSizeAndPosition = dropTargetUtils.measureElementSizeAndPosition;
122
- exports.mutateDropTargetsSwitchDropTargetPosition = dropTargetUtils.mutateDropTargetsSwitchDropTargetPosition;
123
- exports.removeDraggedItem = dropTargetUtils.removeDraggedItem;
124
- exports.useGlobalDragDrop = useGlobalDragDrop.useGlobalDragDrop;
125
- exports.useEditableText = useEditableText.useEditableText;
126
- exports.EditableLabel = EditableLabel.EditableLabel;
127
- exports.NullEditAPI = EditableLabel.NullEditAPI;
128
- exports.ExpandoInput = ExpandoInput.ExpandoInput;
129
- exports.Icon = Icon.Icon;
130
- exports.IconButton = IconButton.IconButton;
131
- exports.ToggleIconButton = ToggleIconButton.ToggleIconButton;
132
- exports.TablePicker = TablePicker.TablePicker;
133
- exports.TableSearch = TableSearch.TableSearch;
134
- exports.ArrowDown = keyUtils.ArrowDown;
135
- exports.ArrowLeft = keyUtils.ArrowLeft;
136
- exports.ArrowRight = keyUtils.ArrowRight;
137
- exports.ArrowUp = keyUtils.ArrowUp;
138
- exports.End = keyUtils.End;
139
- exports.Enter = keyUtils.Enter;
140
- exports.Escape = keyUtils.Escape;
141
- exports.Home = keyUtils.Home;
142
- exports.PageDown = keyUtils.PageDown;
143
- exports.PageUp = keyUtils.PageUp;
144
- exports.Space = keyUtils.Space;
145
- exports.isCharacterKey = keyUtils.isCharacterKey;
146
- exports.isNavigationKey = keyUtils.isNavigationKey;
147
- exports.useCollapsibleGroups = useCollapsibleGroups.useCollapsibleGroups;
148
- exports.closestListItemId = listDomUtils.closestListItemId;
149
- exports.closestListItemIndex = listDomUtils.closestListItemIndex;
150
- exports.listItemElement = listDomUtils.listItemElement;
151
- exports.listItemId = listDomUtils.listItemId;
152
- exports.listItemIndex = listDomUtils.listItemIndex;
153
- exports.useImperativeScrollingAPI = useImperativeScrollingAPI.useImperativeScrollingAPI;
154
- exports.LIST_FOCUS_VISIBLE = useKeyboardNavigation.LIST_FOCUS_VISIBLE;
155
- exports.useKeyboardNavigation = useKeyboardNavigation.useKeyboardNavigation;
156
- exports.CHECKBOX = useSelection$1.CHECKBOX;
157
- exports.GROUP_SELECTION_CASCADE = useSelection$1.GROUP_SELECTION_CASCADE;
158
- exports.GROUP_SELECTION_NONE = useSelection$1.GROUP_SELECTION_NONE;
159
- exports.GROUP_SELECTION_SINGLE = useSelection$1.GROUP_SELECTION_SINGLE;
160
- exports.groupSelectionEnabled = useSelection$1.groupSelectionEnabled;
161
- exports.useSelection = useSelection$1.useSelection;
162
- exports.useTypeahead = useTypeahead.useTypeahead;
163
- exports.useViewportTracking = useViewportTracking.useViewportTracking;
164
- exports.childIsGroup = collectionItemUtils.childIsGroup;
165
- exports.childItems = collectionItemUtils.childItems;
166
- exports.countChildItems = collectionItemUtils.countChildItems;
167
- exports.getChildLabel = collectionItemUtils.getChildLabel;
168
- exports.getChildNodes = collectionItemUtils.getChildNodes;
169
- exports.isDisabled = collectionItemUtils.isDisabled;
170
- exports.isFocusable = collectionItemUtils.isFocusable;
171
- exports.isGroupNode = collectionItemUtils.isGroupNode;
172
- exports.isHeader = collectionItemUtils.isHeader;
173
- exports.isParentPath = collectionItemUtils.isParentPath;
174
- exports.replaceCollectionItem = collectionItemUtils.replaceCollectionItem;
175
- exports.sourceItemHasProp = collectionItemUtils.sourceItemHasProp;
176
- exports.sourceItems = collectionItemUtils.sourceItems;
177
- exports.getDefaultFilter = filterUtils.getDefaultFilter;
178
- exports.getDefaultFilterRegex = filterUtils.getDefaultFilterRegex;
179
- exports.isSelected = isSelected.isSelected;
180
- exports.Highlighter = Highlighter.Highlighter;
181
- exports.ListItem = ListItem.ListItem;
182
- exports.ListItemProxy = ListItem.ListItemProxy;
183
- exports.List = List.List;
184
- exports.ListItemHeader = ListItemHeader.ListItemHeader;
185
- exports.ListItemGroup = ListItemGroup.ListItemGroup;
186
- exports.useList = useList.useList;
187
- exports.RadioIcon = RadioIcon.RadioIcon;
188
- exports.MeasuredContainer = MeasuredContainer.MeasuredContainer;
189
- exports.reduceSizeHeight = useMeasuredContainer.reduceSizeHeight;
190
- exports.useMeasuredContainer = useMeasuredContainer.useMeasuredContainer;
191
- exports.OverflowContainer = OverflowContainer.OverflowContainer;
192
- exports.NO_WRAPPED_ITEMS = overflowUtils.NO_WRAPPED_ITEMS;
193
- exports.applyOverflowClassToWrappedItems = overflowUtils.applyOverflowClassToWrappedItems;
194
- exports.correctForWrappedHighPriorityItems = overflowUtils.correctForWrappedHighPriorityItems;
195
- exports.correctForWrappedOverflowIndicator = overflowUtils.correctForWrappedOverflowIndicator;
196
- exports.getElementsMarkedAsWrapped = overflowUtils.getElementsMarkedAsWrapped;
197
- exports.getNonWrappedAndWrappedItems = overflowUtils.getNonWrappedAndWrappedItems;
198
- exports.highPriorityItemsHaveWrappedButShouldNotHave = overflowUtils.highPriorityItemsHaveWrappedButShouldNotHave;
199
- exports.markElementAsWrapped = overflowUtils.markElementAsWrapped;
200
- exports.overflowIndicatorHasWrappedButShouldNotHave = overflowUtils.overflowIndicatorHasWrappedButShouldNotHave;
201
- exports.removeOverflowIndicatorIfNoLongerNeeded = overflowUtils.removeOverflowIndicatorIfNoLongerNeeded;
202
- exports.sortByScreenOrder = overflowUtils.sortByScreenOrder;
203
- exports.switchWrappedItemIntoView = overflowUtils.switchWrappedItemIntoView;
204
- exports.unmarkItemsWhichAreNoLongerWrapped = overflowUtils.unmarkItemsWhichAreNoLongerWrapped;
205
- exports.PriceTicker = PriceTicker.PriceTicker;
206
- exports.SplitButton = SplitButton.SplitButton;
207
- exports.SplitStateButton = SplitStateButton.SplitStateButton;
208
- exports.Tabstrip = Tabstrip.Tabstrip;
209
- exports.Tab = Tab.Tab;
210
- exports.getIndexOfEditedItem = tabstripDomUtils.getIndexOfEditedItem;
211
- exports.getIndexOfSelectedTab = tabstripDomUtils.getIndexOfSelectedTab;
212
- exports.Toolbar = Toolbar.Toolbar;
213
- exports.Tree = Tree.Tree;
214
- exports.TreeNode = Tree.TreeNode;
215
- exports.useItemsWithIds = useItemsWithIds.useItemsWithIds;
216
- exports.escapeRegExp = escapeRegExp.escapeRegExp;
217
- exports.isOverflowElement = isOverflowElement.isOverflowElement;
218
- exports.isPlainObject = isPlainObject.isPlainObject;
219
- exports.forwardCallbackProps = forwardCallbackProps.forwardCallbackProps;
220
- exports.VuuDatePicker = VuuDatePicker.VuuDatePicker;
221
- exports.VuuInput = VuuInput.VuuInput;
222
- exports.VuuTypeaheadInput = VuuTypeaheadInput.VuuTypeaheadInput;
223
- //# sourceMappingURL=index.js.map
package/cjs/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"TablePicker.js","sources":["../../src/instrument-picker/TablePicker.tsx"],"sourcesContent":["import type { DataSourceRowObject, TableSchema } from \"@vuu-ui/vuu-data-types\";\nimport { Table, type TableProps } from \"@vuu-ui/vuu-table\";\nimport {\n Input,\n useFloatingComponent,\n useIdMemo,\n type FloatingComponentProps,\n} from \"@salt-ds/core\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useWindow } from \"@salt-ds/window\";\nimport cx from \"clsx\";\nimport { forwardRef, useMemo, type HTMLAttributes } from \"react\";\nimport { IconButton } from \"../icon-button\";\nimport tablePickerCss from \"./TablePicker.css\";\nimport { useTablePicker } from \"./useTablePicker\";\n\nconst classBase = \"vuuTablePicker\";\n\ninterface FloatingTableProps extends FloatingComponentProps {\n collapsed?: boolean;\n}\n\nexport interface TablePickerProps\n extends Omit<HTMLAttributes<HTMLElement>, \"onSelect\">,\n Pick<TableProps, \"onSelect\"> {\n TableProps?: Pick<TableProps, \"config\">;\n rowToString?: (row: DataSourceRowObject) => string;\n schema: TableSchema;\n searchColumns?: string[];\n}\n\nconst FloatingTable = forwardRef<HTMLDivElement, FloatingTableProps>(\n function FloatingTable(\n { children, className, collapsed, open, ...props },\n forwardedRef,\n ) {\n const { Component: FloatingComponent } = useFloatingComponent();\n return (\n <FloatingComponent\n className={cx(\n `${classBase}-floating-table`,\n {\n [`${classBase}-collapsed`]: collapsed,\n },\n className,\n )}\n role=\"listbox\"\n open={open}\n {...props}\n ref={forwardedRef}\n >\n {children}\n </FloatingComponent>\n );\n },\n);\n\nexport const TablePicker = ({\n TableProps,\n onSelect,\n rowToString,\n schema,\n searchColumns,\n ...htmlAttributes\n}: TablePickerProps) => {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"vuu-table-picker\",\n css: tablePickerCss,\n window: targetWindow,\n });\n\n const tableId = useIdMemo();\n\n const {\n containerRef,\n dataSource,\n highlightedIndex,\n floatingUIProps: { x, y, strategy, floating, reference },\n inputProps,\n interactionPropGetters: { getFloatingProps, getReferenceProps },\n onKeyDown,\n open,\n tableConfig,\n tableHandlers,\n tableRef,\n value,\n width,\n } = useTablePicker({\n TableProps,\n rowToString,\n onSelect,\n schema,\n searchColumns,\n });\n\n const endAdornment = useMemo(\n () => (\n <IconButton\n {...getReferenceProps()}\n data-embedded\n ref={reference}\n icon=\"chevron-down\"\n onKeyDown={onKeyDown}\n variant=\"secondary\"\n />\n ),\n [getReferenceProps, onKeyDown, reference],\n );\n\n return (\n <div {...htmlAttributes} className={classBase} ref={containerRef}>\n <Input {...inputProps} endAdornment={endAdornment} value={value} />\n <FloatingTable\n {...getFloatingProps()}\n collapsed={!open}\n id={tableId}\n open={open}\n left={x + 3}\n position={strategy}\n ref={floating}\n top={y + 3}\n >\n <Table\n {...tableHandlers}\n config={tableConfig}\n dataSource={dataSource}\n highlightedIndex={highlightedIndex}\n maxViewportRowLimit={10}\n navigationStyle=\"row\"\n ref={tableRef}\n selectionModel=\"single\"\n showColumnHeaders={false}\n width={width - 3}\n />\n </FloatingTable>\n </div>\n );\n};\n"],"names":["forwardRef","FloatingTable","useFloatingComponent","jsx","useWindow","useComponentCssInjection","tablePickerCss","useIdMemo","useTablePicker","useMemo","IconButton","Input","Table"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useTablePicker.js","sources":["../../src/instrument-picker/useTablePicker.ts"],"sourcesContent":["import {\n flip,\n size,\n useClick,\n useDismiss,\n useInteractions,\n} from \"@floating-ui/react\";\nimport { useFloatingUI } from \"@salt-ds/core\";\nimport {\n ChangeEvent,\n KeyboardEventHandler,\n RefCallback,\n useCallback,\n useMemo,\n useRef,\n useState,\n} from \"react\";\n\nimport type { DataSourceRowObject } from \"@vuu-ui/vuu-data-types\";\nimport type {\n TableConfig,\n TableRowSelectHandler,\n} from \"@vuu-ui/vuu-table-types\";\nimport { isStringColumn, toColumnName, useDataSource } from \"@vuu-ui/vuu-utils\";\nimport type { TablePickerProps } from \"./TablePicker\";\nimport {\n isNavigationKey,\n isRowSelectionKey,\n useControlledTableNavigation,\n} from \"@vuu-ui/vuu-table\";\n\nexport interface TablePickerHookProps\n extends Pick<\n TablePickerProps,\n \"TableProps\" | \"onSelect\" | \"rowToString\" | \"schema\" | \"searchColumns\"\n > {\n defaultIsOpen?: boolean;\n isOpen?: boolean;\n}\n\nconst defaultRowToString = (row: DataSourceRowObject) =>\n Object.values(row.data).join(\" \");\n\nexport const useTablePicker = ({\n TableProps,\n onSelect,\n rowToString = defaultRowToString,\n schema,\n searchColumns = schema.columns.filter(isStringColumn).map(toColumnName),\n}: TablePickerHookProps) => {\n const { VuuDataSource } = useDataSource();\n const [value, setValue] = useState(\"\");\n const [open, setOpen] = useState(false);\n\n const widthRef = useRef(-1);\n\n const tableColumns = TableProps?.config.columns;\n\n const containerRef = useCallback<RefCallback<HTMLDivElement>>((el) => {\n widthRef.current = el?.clientWidth ?? -1;\n }, []);\n\n const dataSource = useMemo(() => {\n const columns = tableColumns ?? schema.columns;\n\n return new VuuDataSource({\n columns: columns.map((c) => c.name),\n table: schema.table,\n });\n }, [tableColumns, VuuDataSource, schema]);\n\n const navigation = useControlledTableNavigation(-1, dataSource.size);\n\n const baseFilterPattern = useMemo(\n // TODO make this contains once server supports it\n () => searchColumns.map((col) => `${col} starts \"__VALUE__\"`).join(\" or \"),\n [searchColumns],\n );\n\n // const handleOpenChange = useCallback<OpenChangeHandler>(\n // (open, closeReason) => {\n // setIsOpen(open);\n // onOpenChange?.(open, closeReason);\n // },\n // [onOpenChange, setIsOpen],\n // );\n\n const { context, elements, ...floatingUIProps } = useFloatingUI({\n open,\n onOpenChange: setOpen,\n placement: \"bottom-end\",\n strategy: \"fixed\",\n middleware: [\n size({\n apply({ rects, elements, availableHeight }) {\n Object.assign(elements.floating.style, {\n minWidth: `${rects.reference.width}px`,\n maxHeight: `max(calc(${availableHeight}px - var(--salt-spacing-100)), calc((var(--salt-size-base) + var(--salt-spacing-100)) * 5))`,\n });\n },\n }),\n flip({ fallbackStrategy: \"initialPlacement\" }),\n ],\n });\n\n const interactionPropGetters = useInteractions([\n useDismiss(context),\n useClick(context, { keyboardHandlers: false, toggle: false }),\n ]);\n\n const handleInputChange = useCallback(\n (evt: ChangeEvent<HTMLInputElement>) => {\n const { value } = evt.target;\n setValue(value);\n\n console.log(`input changed ${value}`);\n\n if (value && value.trim().length) {\n const filter = baseFilterPattern.replaceAll(\"__VALUE__\", value);\n dataSource.filter = {\n filter,\n };\n } else {\n dataSource.filter = {\n filter: \"\",\n };\n }\n },\n [baseFilterPattern, dataSource],\n );\n\n const handleSelectRow = useCallback<TableRowSelectHandler>(\n (row) => {\n const value = row === null ? \"\" : rowToString(row);\n setValue(value);\n onSelect?.(row);\n // TODO do we need to include a reason ?\n requestAnimationFrame(() => {\n setOpen(false);\n });\n },\n [onSelect, rowToString],\n );\n\n const handleKeyDown = useCallback<KeyboardEventHandler<HTMLElement>>(\n (evt) => {\n if (open) {\n if (isNavigationKey(evt.key, \"row\") || isRowSelectionKey(evt.key)) {\n navigation.onKeyDown(evt);\n }\n } else {\n if (evt.key === \"ArrowDown\" || evt.key === \"Enter\") {\n setOpen(true);\n }\n }\n },\n [navigation, open],\n );\n\n const inputProps = {\n inputProps: {\n autoComplete: \"off\",\n onKeyDown: handleKeyDown,\n },\n onChange: handleInputChange,\n };\n const tableHandlers = {\n onSelect: handleSelectRow,\n };\n\n const tableConfig = useMemo<TableConfig>(() => {\n const config = TableProps?.config;\n if (config) {\n const {\n columns = schema.columns,\n columnLayout = \"fit\",\n ...rest\n } = config;\n return {\n columns,\n columnLayout,\n ...rest,\n };\n } else {\n return {\n columnLayout: \"fit\",\n columns: schema.columns,\n };\n }\n }, [TableProps, schema]);\n\n return {\n containerRef,\n dataSource,\n highlightedIndex: navigation.highlightedIndexRef.current,\n floatingUIProps,\n inputProps,\n interactionPropGetters,\n onKeyDown: handleKeyDown,\n open,\n tableConfig,\n tableHandlers,\n tableRef: navigation.tableRef,\n value,\n width: widthRef.current,\n };\n};\n"],"names":["isStringColumn","toColumnName","useDataSource","useState","useRef","useCallback","useMemo","useControlledTableNavigation","useFloatingUI","size","elements","flip","useInteractions","useDismiss","useClick","value","isNavigationKey","isRowSelectionKey"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Highlighter.js","sources":["../../src/list/Highlighter.tsx"],"sourcesContent":["import { makePrefixer } from \"@salt-ds/core\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { ReactElement } from \"react\";\nimport { escapeRegExp } from \"../utils\";\n\nimport highlighterCss from \"./Highlighter.css\";\n\nconst withBaseName = makePrefixer(\"saltHighlighter\");\n\nexport interface HighlighterProps {\n matchPattern?: RegExp | string;\n text?: string;\n}\n\nexport const Highlighter = (\n props: HighlighterProps\n): ReactElement<HighlighterProps> => {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"vuu-highlighter\",\n css: highlighterCss,\n window: targetWindow,\n });\n\n const { matchPattern, text = \"\" } = props;\n\n const matchRegex =\n typeof matchPattern === \"string\"\n ? new RegExp(`(${escapeRegExp(matchPattern)})`, \"gi\")\n : matchPattern;\n\n if (matchRegex === undefined) {\n return <>{text}</>;\n }\n return (\n <span>\n {text.split(matchRegex).map((part, index) =>\n part.match(matchRegex) ? (\n <strong\n className={withBaseName(\"highlight\")}\n key={`${index}-${part}`}\n >\n {part}\n </strong>\n ) : (\n part\n )\n )}\n </span>\n );\n};\n"],"names":["makePrefixer","useWindow","useComponentCssInjection","highlighterCss","escapeRegExp","jsx"],"mappings":";;;;;;;;;AAQA,MAAM,YAAA,GAAeA,kBAAa,iBAAiB,CAAA,CAAA;AAOtC,MAAA,WAAA,GAAc,CACzB,KACmC,KAAA;AACnC,EAAA,MAAM,eAAeC,gBAAU,EAAA,CAAA;AAC/B,EAAyBC,+BAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,iBAAA;AAAA,IACR,GAAK,EAAAC,aAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EAAA,MAAM,EAAE,YAAA,EAAc,IAAO,GAAA,EAAA,EAAO,GAAA,KAAA,CAAA;AAEpC,EAAA,MAAM,UACJ,GAAA,OAAO,YAAiB,KAAA,QAAA,GACpB,IAAI,MAAA,CAAO,CAAI,CAAA,EAAAC,yBAAA,CAAa,YAAY,CAAC,CAAK,CAAA,CAAA,EAAA,IAAI,CAClD,GAAA,YAAA,CAAA;AAEN,EAAA,IAAI,eAAe,KAAW,CAAA,EAAA;AAC5B,IAAA,6DAAU,QAAK,EAAA,IAAA,EAAA,CAAA,CAAA;AAAA,GACjB;AACA,EAAA,uBACGC,cAAA,CAAA,MAAA,EAAA,EACE,QAAK,EAAA,IAAA,CAAA,KAAA,CAAM,UAAU,CAAE,CAAA,GAAA;AAAA,IAAI,CAAC,IAAM,EAAA,KAAA,KACjC,IAAK,CAAA,KAAA,CAAM,UAAU,CACnB,mBAAAA,cAAA;AAAA,MAAC,QAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAW,aAAa,WAAW,CAAA;AAAA,QAGlC,QAAA,EAAA,IAAA;AAAA,OAAA;AAAA,MAFI,CAAA,EAAG,KAAK,CAAA,CAAA,EAAI,IAAI,CAAA,CAAA;AAAA,KAKvB,GAAA,IAAA;AAAA,GAGN,EAAA,CAAA,CAAA;AAEJ;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"List.js","sources":["../../src/list/List.tsx"],"sourcesContent":["import { useId } from \"@vuu-ui/vuu-utils\";\nimport { useForkRef } from \"@salt-ds/core\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useWindow } from \"@salt-ds/window\";\nimport cx from \"clsx\";\nimport {\n cloneElement,\n ForwardedRef,\n forwardRef,\n isValidElement,\n ReactElement,\n useCallback,\n useRef,\n useState,\n} from \"react\";\nimport {\n CollectionIndexer,\n CollectionItem,\n itemToString as defaultItemToString,\n SelectionStrategy,\n} from \"../common-hooks\";\nimport {\n isSelected,\n LIST_FOCUS_VISIBLE,\n useCollectionItems,\n useImperativeScrollingAPI,\n} from \"./common-hooks\";\n\nimport { ListItem as DefaultListItem, ListItemProxy } from \"./ListItem\";\nimport { ListItemProps, ListProps } from \"./listTypes\";\nimport { useList } from \"./useList\";\nimport { useListHeight } from \"./useListHeight\";\nimport { useScrollPosition } from \"./useScrollPosition\";\nimport { MeasuredContainer, MeasuredSize } from \"../measured-container\";\n\nimport listCss from \"./List.css\";\n\nconst defaultEmptyMessage = \"No data to display\";\n\nconst classBase = \"vuuList\";\n\nexport const List = forwardRef(function List<\n Item = string,\n S extends SelectionStrategy = \"default\",\n>(\n {\n ListItem = DefaultListItem,\n ListPlaceholder,\n allowDragDrop,\n children,\n className,\n collapsibleHeaders = false,\n defaultHighlightedIndex,\n defaultSelected,\n disabled: listDisabled = false,\n disableFocus = false,\n disableTypeToSelect,\n displayedItemCount = 10,\n emptyMessage,\n focusVisible: focusVisibleProp,\n getItemHeight: getItemHeightProp,\n getItemId,\n height,\n highlightedIndex: highlightedIndexProp,\n id: idProp,\n itemGapSize = 0,\n itemHeight: itemHeightProp,\n itemTextHighlightPattern,\n itemToString = defaultItemToString,\n listHandlers: listHandlersProp,\n maxHeight,\n maxWidth,\n minHeight,\n minWidth,\n onClick: onClickProp,\n onDragStart,\n onDrop,\n onMoveListItem,\n onSelect,\n onSelectionChange,\n onHighlight,\n restoreLastFocus,\n selected: selectedProp,\n selectionStrategy,\n checkable = selectionStrategy === \"multiple\",\n scrollingApiRef,\n // TODO do we still need these ?\n selectionKeys,\n showEmptyMessage = false,\n source,\n style: styleProp,\n stickyHeaders,\n tabIndex = 0,\n tabToSelect,\n ...htmlAttributes\n }: ListProps<Item, S>,\n forwardedRef?: ForwardedRef<HTMLDivElement>,\n) {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"vuu-list\",\n css: listCss,\n window: targetWindow,\n });\n\n const id = useId(idProp);\n const contentContainerRef = useRef<HTMLDivElement>(null);\n const [size, setSize] = useState<MeasuredSize | undefined>();\n const handleResize = useCallback((size: MeasuredSize) => {\n setSize(size);\n }, []);\n\n const collectionHook = useCollectionItems<Item>({\n id,\n label: \"List\",\n source,\n children,\n options: {\n collapsibleHeaders,\n // Add Group ChildTypes to options\n getItemId,\n itemToString,\n },\n });\n\n const {\n listClientHeight,\n computedListHeight,\n listItemHeight,\n rowHeightProxyRef,\n } = useListHeight({\n displayedItemCount,\n getItemHeight: getItemHeightProp,\n height,\n itemCount: collectionHook.data.length,\n itemGapSize,\n itemHeight: itemHeightProp,\n size,\n });\n\n const { onVerticalScroll, viewportRange } = useScrollPosition({\n containerSize:\n // TODO whats the right way to handle string values - ie percentages\n listClientHeight ?? computedListHeight ?? size?.height ?? 0,\n itemCount: collectionHook.data.length,\n itemGapSize: itemGapSize,\n itemSize: listItemHeight,\n });\n\n const {\n containerRef,\n setContainerRef,\n draggable,\n draggedItemIndex,\n dropIndicator,\n focusVisible,\n highlightedIndex,\n listControlProps,\n listHandlers,\n listItemHeaderHandlers,\n scrollIntoView,\n selected,\n } = useList<Item, S>({\n allowDragDrop,\n collapsibleHeaders,\n collectionHook,\n contentRef: contentContainerRef,\n defaultHighlightedIndex,\n defaultSelected: collectionHook.itemToCollectionItemId(defaultSelected),\n disabled: listDisabled,\n disableTypeToSelect,\n highlightedIndex: highlightedIndexProp,\n id,\n label: \"List\",\n listHandlers: listHandlersProp, // should this be in context ?\n onClick: onClickProp,\n onDragStart,\n onDrop,\n onMoveListItem,\n onSelect,\n onSelectionChange,\n onHighlight,\n restoreLastFocus,\n selected: collectionHook.itemToCollectionItemId(selectedProp as any),\n selectionStrategy,\n selectionKeys,\n stickyHeaders,\n tabToSelect,\n viewportRange,\n });\n\n useImperativeScrollingAPI({\n collectionHook,\n forwardedRef: scrollingApiRef,\n // this should surely be scrollContainerRef\n scrollableRef: containerRef,\n scrollIntoView,\n });\n\n // focusVisible passes as a prop takes precedence\n const appliedFocusVisible = focusVisibleProp ?? focusVisible;\n\n const createHeader: (\n idx: { value: number },\n headerId: string,\n title: string,\n expanded?: boolean,\n ) => ReactElement = function createHeader(idx, headerId, title, expanded) {\n const header = (\n <ListItem\n {...listItemHeaderHandlers}\n className={cx(`${classBase}Header`, {\n focusVisible: collapsibleHeaders && appliedFocusVisible === idx.value,\n })}\n aria-expanded={expanded}\n data-index={collapsibleHeaders ? idx.value : undefined}\n data-highlighted={idx.value === highlightedIndex || undefined}\n data-sticky={stickyHeaders}\n data-selectable={false}\n id={headerId}\n itemHeight={getItemHeight(idx.value)}\n key={`header-${idx.value}`}\n label={title}\n // role=\"presentation\"\n />\n );\n idx.value += 1;\n return header;\n };\n\n const getItemHeight =\n getItemHeightProp === undefined ? () => itemHeightProp : getItemHeightProp;\n\n function renderCollectionItem(\n list: ReactElement[],\n item: CollectionItem<Item>,\n idx: { value: number },\n ) {\n // Note, a number of these props are specific to ListItem. What if user\n // implements a custom ListItem but neglects to handle all these props.\n // Is that on them ?\n const { disabled, value, id: itemId, label } = item;\n const isChildItem = isValidElement(value);\n const listItemProps: ListItemProps<Item> & {\n key: string;\n \"data-index\": number;\n } = {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore until we refactor this whole section\n className: cx(value?.props?.className, {\n vuuHighlighted: idx.value === highlightedIndex,\n vuuFocusVisible: appliedFocusVisible === idx.value,\n [`vuuDraggable-dragAway`]: draggedItemIndex === idx.value,\n }),\n disabled: disabled || listDisabled,\n id: itemId,\n item: isChildItem ? undefined : (item?.value ?? undefined),\n itemHeight: getItemHeight(idx.value),\n itemTextHighlightPattern,\n key: itemId,\n \"data-index\": idx.value,\n label,\n role: \"option\",\n selected: isSelected<Item>(selected, item),\n showCheckbox: checkable,\n };\n list.push(\n isChildItem ? (\n cloneElement(value, listItemProps)\n ) : (\n <ListItem {...listItemProps} />\n ),\n );\n\n idx.value += 1;\n }\n\n const addGroup: (\n list: ReactElement[],\n items: CollectionItem<Item>[],\n idx: { value: number },\n ) => void = function addGroup(\n list: ReactElement[],\n items: CollectionItem<Item>[],\n idx: { value: number },\n ) {\n const { count = 0, id, expanded, label = \"\" } = items[idx.value];\n const header = createHeader(idx, id, label, expanded);\n const childItems: ReactElement | ReactElement[] =\n expanded !== false\n ? [header].concat(\n renderCollectionItems(items, idx, idx.value + count) || [],\n )\n : header;\n\n list.push(\n <div key={id} role=\"group\">\n {childItems}\n </div>,\n );\n };\n\n const renderCollectionItems = (\n items: CollectionItem<Item>[],\n idx: CollectionIndexer = { value: 0 },\n end = items.length,\n ): ReactElement[] | undefined => {\n const listItems: ReactElement[] = [];\n while (idx.value < end) {\n const item = items[idx.value];\n if (item.header) {\n listItems.push(\n createHeader(idx, item.id, item.label!, item.expanded === false),\n );\n } else if (item.childNodes) {\n addGroup(listItems, items, idx);\n } else {\n renderCollectionItem(listItems, item, idx);\n }\n }\n return listItems;\n };\n\n function renderEmpty() {\n if (emptyMessage || showEmptyMessage) {\n return (\n <span className={`${classBase}-empty-message`}>\n {emptyMessage ?? defaultEmptyMessage}\n </span>\n );\n } else {\n return null;\n }\n }\n\n const isEmpty = collectionHook.data.length === 0;\n\n const renderContent = () => {\n if (!isEmpty) {\n // const itemsToRender =\n // typeof draggedItemIndex === \"number\" && draggedItemIndex >= 0\n // ? collectionHook.data.filter((d) => d.index !== draggedItemIndex)\n // : collectionHook.data;\n const itemsToRender = collectionHook.data;\n\n return renderCollectionItems(itemsToRender);\n } else {\n renderEmpty();\n }\n };\n const contentHeight = \"auto\";\n const sizeStyles = {\n \"--list-borderWidth\":\n \"var(--vuuList-borderWidth, var(--salt-size-border, 0))\",\n \"--list-item-gap\": itemGapSize ? `${itemGapSize}px` : undefined,\n \"--computed-list-height\":\n computedListHeight === undefined ? undefined : `${computedListHeight}px`,\n minWidth,\n minHeight,\n maxWidth,\n maxHeight,\n };\n return (\n <MeasuredContainer\n aria-multiselectable={\n selectionStrategy === \"multiple\" ||\n selectionStrategy === \"extended\" ||\n selectionStrategy === \"extended-multi-range\" ||\n undefined\n }\n {...htmlAttributes}\n {...listHandlers}\n {...listControlProps}\n className={cx(classBase, className, \"vuuScrollable\", {\n [`${classBase}-collapsible`]: collapsibleHeaders,\n [`${classBase}-contentSized`]: computedListHeight !== undefined,\n [`${classBase}-empty`]: isEmpty,\n vuuFocusVisible: highlightedIndex === LIST_FOCUS_VISIBLE,\n })}\n height={computedListHeight ?? height}\n id={`${id}`}\n onResize={handleResize}\n ref={useForkRef<HTMLDivElement>(setContainerRef, forwardedRef)}\n role=\"listbox\"\n style={{ ...styleProp, ...sizeStyles }}\n tabIndex={listDisabled || disableFocus ? undefined : tabIndex}\n >\n <ListItemProxy\n ref={rowHeightProxyRef}\n height={itemHeightProp}\n key=\"canary\"\n />\n {collectionHook.data.length === 0 && ListPlaceholder !== undefined ? (\n <>\n <ListPlaceholder />\n </>\n ) : (\n <div className={`${classBase}-viewport`} onScroll={onVerticalScroll}>\n <div\n className={`${classBase}-scrollingContentContainer`}\n ref={contentContainerRef}\n style={{ height: contentHeight }}\n >\n {renderContent()}\n {dropIndicator}\n {draggable}\n </div>\n </div>\n )}\n </MeasuredContainer>\n );\n}) as <Item = string, S extends SelectionStrategy = \"default\">(\n props: ListProps<Item, S> & {\n ref?: ForwardedRef<HTMLDivElement>;\n },\n) => ReactElement<ListProps<Item>>;\n"],"names":["forwardRef","List","ListItem","DefaultListItem","itemToString","defaultItemToString","useWindow","useComponentCssInjection","listCss","useId","useRef","useState","useCallback","size","useCollectionItems","useListHeight","useScrollPosition","useList","useImperativeScrollingAPI","createHeader","createElement","isValidElement","isSelected","cloneElement","jsx","addGroup","id","jsxs","MeasuredContainer","LIST_FOCUS_VISIBLE","useForkRef","ListItemProxy"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ListItem.js","sources":["../../src/list/ListItem.tsx"],"sourcesContent":["import { ForwardedRef, forwardRef, HTMLAttributes } from \"react\";\nimport cx from \"clsx\";\nimport { Checkbox } from \"@salt-ds/core\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { ListItemProps, ListItemType } from \"./listTypes\";\nimport { Highlighter } from \"./Highlighter\";\n\nimport listItemCss from \"./ListItem.css\";\n\nconst classBase = \"vuuListItem\";\n\n// A dummy ListItem rendered once and not visible. We measure this to\n// determine height of ListItem and monitor it for size changes (in\n// case of runtime density switch). This allows ListItem height to\n// be controlled purely through CSS.\nexport const ListItemProxy = forwardRef(function ListItemProxy(\n {\n height,\n ...htmlAttributes\n }: HTMLAttributes<HTMLDivElement> & {\n height?: number;\n },\n forwardedRef: ForwardedRef<HTMLDivElement>\n) {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"vuu-list-item\",\n css: listItemCss,\n window: targetWindow,\n });\n\n return (\n <div\n {...htmlAttributes}\n aria-hidden\n className={cx(classBase, `${classBase}-proxy`)}\n ref={forwardedRef}\n style={{ height }}\n />\n );\n});\n\n// Note: the memo is effective if List label is passed as simple string\n// If children are used, it is the responsibility of caller to memoise\n// these if performance on highlight is perceived to be an issue.\nexport const ListItem = forwardRef<HTMLDivElement, ListItemProps>(\n function ListItem(\n {\n children,\n className: classNameProp,\n disabled,\n tabIndex,\n item,\n itemHeight,\n itemTextHighlightPattern,\n label,\n selectable: _notUsed,\n selected,\n showCheckbox,\n style: styleProp,\n ...props\n },\n forwardedRef\n ) {\n const className = cx(classBase, classNameProp, {\n vuuDisabled: disabled,\n [`${classBase}-checkbox`]: showCheckbox,\n });\n const style =\n itemHeight !== undefined\n ? {\n ...styleProp,\n height: itemHeight,\n }\n : styleProp;\n\n return (\n <div\n className={className}\n {...props}\n aria-disabled={disabled || undefined}\n aria-selected={selected || undefined}\n ref={forwardedRef}\n style={style}\n >\n {showCheckbox && <Checkbox aria-hidden checked={selected} />}\n {children && typeof children !== \"string\" ? (\n children\n ) : itemTextHighlightPattern == null ? (\n <span className={`${classBase}-textWrapper`}>\n {label || children}\n </span>\n ) : (\n <Highlighter\n matchPattern={itemTextHighlightPattern}\n text={label || (children as string)}\n />\n )}\n </div>\n );\n }\n) as ListItemType;\n"],"names":["forwardRef","ListItemProxy","useWindow","useComponentCssInjection","listItemCss","jsx","ListItem","jsxs","Checkbox","Highlighter"],"mappings":";;;;;;;;;;;AAUA,MAAM,SAAY,GAAA,aAAA,CAAA;AAML,MAAA,aAAA,GAAgBA,gBAAW,CAAA,SAASC,cAC/C,CAAA;AAAA,EACE,MAAA;AAAA,EACA,GAAG,cAAA;AACL,CAAA,EAGA,YACA,EAAA;AACA,EAAA,MAAM,eAAeC,gBAAU,EAAA,CAAA;AAC/B,EAAyBC,+BAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,eAAA;AAAA,IACR,GAAK,EAAAC,UAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EACE,uBAAAC,cAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACE,GAAG,cAAA;AAAA,MACJ,aAAW,EAAA,IAAA;AAAA,MACX,SAAW,EAAA,EAAA,CAAG,SAAW,EAAA,CAAA,EAAG,SAAS,CAAQ,MAAA,CAAA,CAAA;AAAA,MAC7C,GAAK,EAAA,YAAA;AAAA,MACL,KAAA,EAAO,EAAE,MAAO,EAAA;AAAA,KAAA;AAAA,GAClB,CAAA;AAEJ,CAAC,EAAA;AAKM,MAAM,QAAW,GAAAL,gBAAA;AAAA,EACtB,SAASM,SACP,CAAA;AAAA,IACE,QAAA;AAAA,IACA,SAAW,EAAA,aAAA;AAAA,IACX,QAAA;AAAA,IACA,QAAA;AAAA,IACA,IAAA;AAAA,IACA,UAAA;AAAA,IACA,wBAAA;AAAA,IACA,KAAA;AAAA,IACA,UAAY,EAAA,QAAA;AAAA,IACZ,QAAA;AAAA,IACA,YAAA;AAAA,IACA,KAAO,EAAA,SAAA;AAAA,IACP,GAAG,KAAA;AAAA,KAEL,YACA,EAAA;AACA,IAAM,MAAA,SAAA,GAAY,EAAG,CAAA,SAAA,EAAW,aAAe,EAAA;AAAA,MAC7C,WAAa,EAAA,QAAA;AAAA,MACb,CAAC,CAAA,EAAG,SAAS,CAAA,SAAA,CAAW,GAAG,YAAA;AAAA,KAC5B,CAAA,CAAA;AACD,IAAM,MAAA,KAAA,GACJ,eAAe,KACX,CAAA,GAAA;AAAA,MACE,GAAG,SAAA;AAAA,MACH,MAAQ,EAAA,UAAA;AAAA,KAEV,GAAA,SAAA,CAAA;AAEN,IACE,uBAAAC,eAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA;AAAA,QACC,GAAG,KAAA;AAAA,QACJ,iBAAe,QAAY,IAAA,KAAA,CAAA;AAAA,QAC3B,iBAAe,QAAY,IAAA,KAAA,CAAA;AAAA,QAC3B,GAAK,EAAA,YAAA;AAAA,QACL,KAAA;AAAA,QAEC,QAAA,EAAA;AAAA,UAAA,YAAA,oBAAiBF,cAAA,CAAAG,aAAA,EAAA,EAAS,aAAW,EAAA,IAAA,EAAC,SAAS,QAAU,EAAA,CAAA;AAAA,UACzD,QAAY,IAAA,OAAO,QAAa,KAAA,QAAA,GAC/B,WACE,wBAA4B,IAAA,IAAA,mBAC7BH,cAAA,CAAA,MAAA,EAAA,EAAK,WAAW,CAAG,EAAA,SAAS,CAC1B,YAAA,CAAA,EAAA,QAAA,EAAA,KAAA,IAAS,UACZ,CAEA,mBAAAA,cAAA;AAAA,YAACI,uBAAA;AAAA,YAAA;AAAA,cACC,YAAc,EAAA,wBAAA;AAAA,cACd,MAAM,KAAU,IAAA,QAAA;AAAA,aAAA;AAAA,WAClB;AAAA,SAAA;AAAA,OAAA;AAAA,KAEJ,CAAA;AAAA,GAEJ;AACF;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ListItemGroup.js","sources":["../../src/list/ListItemGroup.ts"],"sourcesContent":["import { HTMLAttributes } from \"react\";\n\n// Purely used as markers, props will be extracted\nexport interface ListItemGroupProps extends HTMLAttributes<HTMLDivElement> {\n // children?: ListItemType | ListItemType[];\n children?: JSX.Element | JSX.Element[];\n label?: string;\n}\nexport const ListItemGroup = (_: ListItemGroupProps) => null;\n"],"names":[],"mappings":";;AAQa,MAAA,aAAA,GAAgB,CAAC,CAA0B,KAAA;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ListItemHeader.js","sources":["../../src/list/ListItemHeader.ts"],"sourcesContent":["import { HTMLAttributes } from \"react\";\n\n// Purely used as markers, props will be extracted\nexport interface ListItemHeaderProps extends HTMLAttributes<HTMLDivElement> {\n label?: string;\n}\nexport const ListItemHeader = (_: ListItemHeaderProps) => null;\n"],"names":[],"mappings":";;AAMa,MAAA,cAAA,GAAiB,CAAC,CAA2B,KAAA;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"RadioIcon.js","sources":["../../src/list/RadioIcon.tsx"],"sourcesContent":["import cx from \"clsx\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useWindow } from \"@salt-ds/window\";\n\nimport radioIconCss from \"./RadioIcon.css\";\n\nconst classBase = \"vuuRadioIcon\";\n\nexport const RadioIcon = ({ checked = false, ...htmlAttributes }) => {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"vuu-radio-icon\",\n css: radioIconCss,\n window: targetWindow,\n });\n\n return (\n <span\n {...htmlAttributes}\n className={cx(classBase, { [`${classBase}-checked`]: checked })}\n />\n );\n};\n"],"names":["useWindow","useComponentCssInjection","radioIconCss","jsx"],"mappings":";;;;;;;;AAMA,MAAM,SAAY,GAAA,cAAA,CAAA;AAEX,MAAM,YAAY,CAAC,EAAE,UAAU,KAAO,EAAA,GAAG,gBAAqB,KAAA;AACnE,EAAA,MAAM,eAAeA,gBAAU,EAAA,CAAA;AAC/B,EAAyBC,+BAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,gBAAA;AAAA,IACR,GAAK,EAAAC,WAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EACE,uBAAAC,cAAA;AAAA,IAAC,MAAA;AAAA,IAAA;AAAA,MACE,GAAG,cAAA;AAAA,MACJ,SAAA,EAAW,EAAG,CAAA,SAAA,EAAW,EAAE,CAAC,GAAG,SAAS,CAAA,QAAA,CAAU,GAAG,OAAA,EAAS,CAAA;AAAA,KAAA;AAAA,GAChE,CAAA;AAEJ;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"keyUtils.js","sources":["../../../src/list/common-hooks/keyUtils.ts"],"sourcesContent":["import React from \"react\";\n\nfunction union<T>(set1: Set<T>, ...sets: Set<T>[]) {\n const result = new Set(set1);\n for (const set of sets) {\n for (const element of set) {\n result.add(element);\n }\n }\n return result;\n}\n\nexport const ArrowUp = \"ArrowUp\";\nexport const ArrowDown = \"ArrowDown\";\nexport const ArrowLeft = \"ArrowLeft\";\nexport const ArrowRight = \"ArrowRight\";\nexport const Enter = \"Enter\";\nexport const Escape = \"Escape\";\nexport const Home = \"Home\";\nexport const End = \"End\";\nexport const PageUp = \"PageUp\";\nexport const PageDown = \"PageDown\";\nexport const Space = \" \";\n\nconst actionKeys = new Set([\"Enter\", \"Delete\", \" \"]);\nconst focusKeys = new Set([\"Tab\"]);\nconst arrowLeftRightKeys = new Set([\"ArrowRight\", \"ArrowLeft\"]);\nconst navigationKeys = new Set([\n Home,\n End,\n PageUp,\n PageDown,\n ArrowDown,\n ArrowUp,\n]);\nconst functionKeys = new Set([\n \"F1\",\n \"F2\",\n \"F3\",\n \"F4\",\n \"F5\",\n \"F6\",\n \"F7\",\n \"F8\",\n \"F9\",\n \"F10\",\n \"F11\",\n \"F12\",\n]);\nconst specialKeys = union(\n actionKeys,\n navigationKeys,\n arrowLeftRightKeys,\n functionKeys,\n focusKeys\n);\nexport const isCharacterKey = (evt: React.KeyboardEvent): boolean => {\n if (specialKeys.has(evt.key)) {\n return false;\n }\n return evt.key.length === 1 && !evt.ctrlKey && !evt.metaKey && !evt.altKey;\n};\n\nexport const isNavigationKey = ({ key }: React.KeyboardEvent): boolean => {\n return navigationKeys.has(key);\n};\n"],"names":[],"mappings":";;AAEA,SAAS,KAAA,CAAS,SAAiB,IAAgB,EAAA;AACjD,EAAM,MAAA,MAAA,GAAS,IAAI,GAAA,CAAI,IAAI,CAAA,CAAA;AAC3B,EAAA,KAAA,MAAW,OAAO,IAAM,EAAA;AACtB,IAAA,KAAA,MAAW,WAAW,GAAK,EAAA;AACzB,MAAA,MAAA,CAAO,IAAI,OAAO,CAAA,CAAA;AAAA,KACpB;AAAA,GACF;AACA,EAAO,OAAA,MAAA,CAAA;AACT,CAAA;AAEO,MAAM,OAAU,GAAA,UAAA;AAChB,MAAM,SAAY,GAAA,YAAA;AAClB,MAAM,SAAY,GAAA,YAAA;AAClB,MAAM,UAAa,GAAA,aAAA;AACnB,MAAM,KAAQ,GAAA,QAAA;AACd,MAAM,MAAS,GAAA,SAAA;AACf,MAAM,IAAO,GAAA,OAAA;AACb,MAAM,GAAM,GAAA,MAAA;AACZ,MAAM,MAAS,GAAA,SAAA;AACf,MAAM,QAAW,GAAA,WAAA;AACjB,MAAM,KAAQ,GAAA,IAAA;AAErB,MAAM,6BAAiB,IAAA,GAAA,CAAI,CAAC,OAAS,EAAA,QAAA,EAAU,GAAG,CAAC,CAAA,CAAA;AACnD,MAAM,SAAY,mBAAA,IAAI,GAAI,CAAA,CAAC,KAAK,CAAC,CAAA,CAAA;AACjC,MAAM,qCAAyB,IAAA,GAAA,CAAI,CAAC,YAAA,EAAc,WAAW,CAAC,CAAA,CAAA;AAC9D,MAAM,cAAA,uBAAqB,GAAI,CAAA;AAAA,EAC7B,IAAA;AAAA,EACA,GAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AACF,CAAC,CAAA,CAAA;AACD,MAAM,YAAA,uBAAmB,GAAI,CAAA;AAAA,EAC3B,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,KAAA;AAAA,EACA,KAAA;AAAA,EACA,KAAA;AACF,CAAC,CAAA,CAAA;AACD,MAAM,WAAc,GAAA,KAAA;AAAA,EAClB,UAAA;AAAA,EACA,cAAA;AAAA,EACA,kBAAA;AAAA,EACA,YAAA;AAAA,EACA,SAAA;AACF,CAAA,CAAA;AACa,MAAA,cAAA,GAAiB,CAAC,GAAsC,KAAA;AACnE,EAAA,IAAI,WAAY,CAAA,GAAA,CAAI,GAAI,CAAA,GAAG,CAAG,EAAA;AAC5B,IAAO,OAAA,KAAA,CAAA;AAAA,GACT;AACA,EAAO,OAAA,GAAA,CAAI,GAAI,CAAA,MAAA,KAAW,CAAK,IAAA,CAAC,GAAI,CAAA,OAAA,IAAW,CAAC,GAAA,CAAI,OAAW,IAAA,CAAC,GAAI,CAAA,MAAA,CAAA;AACtE,EAAA;AAEO,MAAM,eAAkB,GAAA,CAAC,EAAE,GAAA,EAAwC,KAAA;AACxE,EAAO,OAAA,cAAA,CAAe,IAAI,GAAG,CAAA,CAAA;AAC/B;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"list-dom-utils.js","sources":["../../../src/list/common-hooks/list-dom-utils.ts"],"sourcesContent":["export const listItemElement = (listEl: HTMLElement, listItemIdx: number) =>\n listEl.querySelector(`:scope > [data-idx=\"${listItemIdx}\"]`);\n\nexport function listItemIndex(listItemEl?: HTMLElement) {\n if (listItemEl) {\n let idx: string | null | undefined = listItemEl.dataset.index;\n if (idx) {\n return parseInt(idx, 10);\n // eslint-disable-next-line no-cond-assign\n } else if ((idx = listItemEl.ariaPosInSet)) {\n return parseInt(idx, 10) - 1;\n }\n }\n return -1;\n}\n\nexport const listItemId = (el: HTMLElement | null) => el?.id;\n\nconst closestListItem = (el: HTMLElement) =>\n el.closest(\"[data-index],[aria-posinset]\") as HTMLElement;\n\nexport const closestListItemId = (el: HTMLElement) =>\n listItemId(closestListItem(el));\n\nexport const closestListItemIndex = (el: HTMLElement) =>\n listItemIndex(closestListItem(el));\n"],"names":[],"mappings":";;AAAa,MAAA,eAAA,GAAkB,CAAC,MAAqB,EAAA,WAAA,KACnD,OAAO,aAAc,CAAA,CAAA,oBAAA,EAAuB,WAAW,CAAI,EAAA,CAAA,EAAA;AAEtD,SAAS,cAAc,UAA0B,EAAA;AACtD,EAAA,IAAI,UAAY,EAAA;AACd,IAAI,IAAA,GAAA,GAAiC,WAAW,OAAQ,CAAA,KAAA,CAAA;AACxD,IAAA,IAAI,GAAK,EAAA;AACP,MAAO,OAAA,QAAA,CAAS,KAAK,EAAE,CAAA,CAAA;AAAA,KAEzB,MAAA,IAAY,GAAM,GAAA,UAAA,CAAW,YAAe,EAAA;AAC1C,MAAO,OAAA,QAAA,CAAS,GAAK,EAAA,EAAE,CAAI,GAAA,CAAA,CAAA;AAAA,KAC7B;AAAA,GACF;AACA,EAAO,OAAA,CAAA,CAAA,CAAA;AACT,CAAA;AAEa,MAAA,UAAA,GAAa,CAAC,EAAA,KAA2B,EAAI,EAAA,GAAA;AAE1D,MAAM,eAAkB,GAAA,CAAC,EACvB,KAAA,EAAA,CAAG,QAAQ,8BAA8B,CAAA,CAAA;AAEpC,MAAM,oBAAoB,CAAC,EAAA,KAChC,UAAW,CAAA,eAAA,CAAgB,EAAE,CAAC,EAAA;AAEzB,MAAM,uBAAuB,CAAC,EAAA,KACnC,aAAc,CAAA,eAAA,CAAgB,EAAE,CAAC;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useCollapsibleGroups.js","sources":["../../../src/list/common-hooks/useCollapsibleGroups.ts"],"sourcesContent":["import { MouseEvent, useCallback } from \"react\";\nimport { ArrowLeft, ArrowRight, Enter } from \"./keyUtils\";\nimport { ListHandlers } from \"../../common-hooks\";\nimport {\n CollectionHookResult,\n CollectionItem,\n} from \"../../common-hooks/collectionTypes\";\n\nconst NO_HANDLERS = {};\nconst canToggleItem = (item: CollectionItem<unknown>) =>\n Array.isArray(item.childNodes);\n// TODO how do we determine this and where does this function belong = in the collectionHook ?\nconst canSelectItem = (_: CollectionItem<unknown>) => true;\n\nconst toggleIconClicked = (el: HTMLElement) => {\n const closestToggle = el.closest(\n \"[data-toggle],[aria-expanded]\"\n ) as HTMLElement;\n return closestToggle.dataset.toggle === \"true\";\n};\n\ninterface CollapsibleHookProps<Item> {\n collapsibleHeaders?: boolean;\n collectionHook: CollectionHookResult<Item>;\n highlightedIdx: number;\n onToggle?: (node: Item) => void;\n}\n\ninterface CollapsibleHookResult {\n onClick?: ListHandlers[\"onClick\"];\n onKeyDown?: ListHandlers[\"onKeyDown\"];\n}\n\nexport const useCollapsibleGroups = <Item>({\n collapsibleHeaders,\n collectionHook,\n highlightedIdx,\n onToggle,\n}: CollapsibleHookProps<Item>): CollapsibleHookResult => {\n const handleKeyDown = useCallback(\n (e: KeyboardEvent) => {\n if (e.key === ArrowRight || e.key === Enter) {\n const item = collectionHook.data[highlightedIdx];\n if (item) {\n if (item.expanded === false && item.value) {\n e.preventDefault();\n collectionHook.expandGroupItem(item);\n onToggle?.(item.value);\n }\n }\n }\n\n if (e.key === ArrowLeft || e.key === Enter) {\n const item = collectionHook.data[highlightedIdx];\n if (item) {\n if (item.expanded && item.value) {\n e.preventDefault();\n collectionHook.collapseGroupItem(item);\n onToggle?.(item.value);\n }\n }\n }\n },\n [\n collectionHook.collapseGroupItem,\n collectionHook.data,\n collectionHook.expandGroupItem,\n highlightedIdx,\n ]\n );\n\n const handleClick = useCallback(\n (evt: MouseEvent<HTMLElement>) => {\n console.log(`useCollapsibleGroups idx=${highlightedIdx}`);\n const item = collectionHook.data[highlightedIdx];\n console.log(evt.target, evt.currentTarget);\n if (\n item &&\n canToggleItem(item) &&\n (!canSelectItem(item) || toggleIconClicked(evt.target as HTMLElement))\n ) {\n evt.stopPropagation();\n evt.preventDefault();\n if (item.expanded === false && item.value) {\n collectionHook.expandGroupItem(item);\n onToggle?.(item.value);\n } else if (item.expanded === true && item.value) {\n collectionHook.collapseGroupItem(item);\n onToggle?.(item.value);\n }\n }\n },\n [\n collectionHook.collapseGroupItem,\n collectionHook.data,\n collectionHook.expandGroupItem,\n highlightedIdx,\n ]\n );\n\n /**\n * These are List handlers, so we will not have reference to the actual node\n * element. We must rely on highlightedIdx to tell us which node is interactive.\n */\n const listHandlers = {\n onClick: handleClick,\n onKeyDown: handleKeyDown,\n };\n\n return collapsibleHeaders ? listHandlers : NO_HANDLERS;\n};\n"],"names":["useCallback","ArrowRight","Enter","ArrowLeft"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useImperativeScrollingAPI.js","sources":["../../../src/list/common-hooks/useImperativeScrollingAPI.ts"],"sourcesContent":["import {\n ForwardedRef,\n MutableRefObject,\n useImperativeHandle,\n useMemo,\n} from \"react\";\nimport {\n CollectionHookResult,\n CollectionItem,\n} from \"../../common-hooks/collectionTypes\";\n\nexport interface ScrollingAPI<Item> {\n scrollToIndex: (itemIndex: number) => void;\n scrollToItem: (item: Item) => void;\n scrollTo: (scrollOffset: number) => void;\n}\n\nexport interface ScrollingAPIHook<Item> {\n collectionHook: CollectionHookResult<Item>;\n forwardedRef?: ForwardedRef<ScrollingAPI<Item>>;\n scrollableRef: MutableRefObject<HTMLElement | null>;\n scrollIntoView?: (item: CollectionItem<Item>) => void;\n}\n\nconst noScrolling: ScrollingAPI<unknown> = {\n scrollToIndex: () => undefined,\n scrollToItem: () => undefined,\n scrollTo: () => undefined,\n};\n\nexport const useImperativeScrollingAPI = <Item>({\n collectionHook,\n forwardedRef,\n scrollableRef,\n scrollIntoView,\n}: ScrollingAPIHook<Item>) => {\n const scrollHandles: ScrollingAPI<Item> = useMemo(\n () => ({\n scrollToIndex: (itemIndex: number) => {\n const collectionItem = collectionHook.data[itemIndex];\n if (collectionItem) {\n scrollIntoView?.(collectionItem);\n }\n },\n scrollToItem: (item: Item) => {\n const collectionItem = collectionHook.toCollectionItem(item);\n if (collectionItem) {\n scrollIntoView?.(collectionItem);\n }\n },\n scrollTo: (scrollOffset: number) => {\n if (scrollableRef?.current) {\n scrollableRef.current.scrollTop = scrollOffset;\n }\n },\n }),\n [collectionHook, scrollIntoView, scrollableRef]\n );\n\n useImperativeHandle(\n forwardedRef,\n () => {\n if (scrollableRef.current) {\n return scrollHandles;\n } else {\n return noScrolling;\n }\n },\n [scrollHandles, scrollableRef]\n );\n};\n"],"names":["useMemo","useImperativeHandle"],"mappings":";;;;AAwBA,MAAM,WAAqC,GAAA;AAAA,EACzC,eAAe,MAAM,KAAA,CAAA;AAAA,EACrB,cAAc,MAAM,KAAA,CAAA;AAAA,EACpB,UAAU,MAAM,KAAA,CAAA;AAClB,CAAA,CAAA;AAEO,MAAM,4BAA4B,CAAO;AAAA,EAC9C,cAAA;AAAA,EACA,YAAA;AAAA,EACA,aAAA;AAAA,EACA,cAAA;AACF,CAA8B,KAAA;AAC5B,EAAA,MAAM,aAAoC,GAAAA,aAAA;AAAA,IACxC,OAAO;AAAA,MACL,aAAA,EAAe,CAAC,SAAsB,KAAA;AACpC,QAAM,MAAA,cAAA,GAAiB,cAAe,CAAA,IAAA,CAAK,SAAS,CAAA,CAAA;AACpD,QAAA,IAAI,cAAgB,EAAA;AAClB,UAAA,cAAA,GAAiB,cAAc,CAAA,CAAA;AAAA,SACjC;AAAA,OACF;AAAA,MACA,YAAA,EAAc,CAAC,IAAe,KAAA;AAC5B,QAAM,MAAA,cAAA,GAAiB,cAAe,CAAA,gBAAA,CAAiB,IAAI,CAAA,CAAA;AAC3D,QAAA,IAAI,cAAgB,EAAA;AAClB,UAAA,cAAA,GAAiB,cAAc,CAAA,CAAA;AAAA,SACjC;AAAA,OACF;AAAA,MACA,QAAA,EAAU,CAAC,YAAyB,KAAA;AAClC,QAAA,IAAI,eAAe,OAAS,EAAA;AAC1B,UAAA,aAAA,CAAc,QAAQ,SAAY,GAAA,YAAA,CAAA;AAAA,SACpC;AAAA,OACF;AAAA,KACF,CAAA;AAAA,IACA,CAAC,cAAgB,EAAA,cAAA,EAAgB,aAAa,CAAA;AAAA,GAChD,CAAA;AAEA,EAAAC,yBAAA;AAAA,IACE,YAAA;AAAA,IACA,MAAM;AACJ,MAAA,IAAI,cAAc,OAAS,EAAA;AACzB,QAAO,OAAA,aAAA,CAAA;AAAA,OACF,MAAA;AACL,QAAO,OAAA,WAAA,CAAA;AAAA,OACT;AAAA,KACF;AAAA,IACA,CAAC,eAAe,aAAa,CAAA;AAAA,GAC/B,CAAA;AACF;;;;"}