@salt-ds/lab 1.0.0-alpha.0 → 1.0.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (785) hide show
  1. package/dist-cjs/packages/lab/src/accordion/Accordion.js +2 -6
  2. package/dist-cjs/packages/lab/src/accordion/Accordion.js.map +1 -1
  3. package/dist-cjs/packages/lab/src/accordion/AccordionDetails.js +3 -7
  4. package/dist-cjs/packages/lab/src/accordion/AccordionDetails.js.map +1 -1
  5. package/dist-cjs/packages/lab/src/accordion/AccordionSection.js +3 -6
  6. package/dist-cjs/packages/lab/src/accordion/AccordionSection.js.map +1 -1
  7. package/dist-cjs/packages/lab/src/accordion/AccordionSummary.js +2 -6
  8. package/dist-cjs/packages/lab/src/accordion/AccordionSummary.js.map +1 -1
  9. package/dist-cjs/packages/lab/src/app-header/AppHeader.js +3 -6
  10. package/dist-cjs/packages/lab/src/app-header/AppHeader.js.map +1 -1
  11. package/dist-cjs/packages/lab/src/avatar/Avatar.js +2 -6
  12. package/dist-cjs/packages/lab/src/avatar/Avatar.js.map +1 -1
  13. package/dist-cjs/packages/lab/src/badge/Badge.js +4 -8
  14. package/dist-cjs/packages/lab/src/badge/Badge.js.map +1 -1
  15. package/dist-cjs/packages/lab/src/banner/Banner.js +5 -9
  16. package/dist-cjs/packages/lab/src/banner/Banner.js.map +1 -1
  17. package/dist-cjs/packages/lab/src/breadcrumbs/Breadcrumb.js +4 -8
  18. package/dist-cjs/packages/lab/src/breadcrumbs/Breadcrumb.js.map +1 -1
  19. package/dist-cjs/packages/lab/src/breadcrumbs/Breadcrumbs.js +3 -4
  20. package/dist-cjs/packages/lab/src/breadcrumbs/Breadcrumbs.js.map +1 -1
  21. package/dist-cjs/packages/lab/src/button-bar/ButtonBar.js +2 -6
  22. package/dist-cjs/packages/lab/src/button-bar/ButtonBar.js.map +1 -1
  23. package/dist-cjs/packages/lab/src/button-bar/OrderedButton.js +3 -6
  24. package/dist-cjs/packages/lab/src/button-bar/OrderedButton.js.map +1 -1
  25. package/dist-cjs/packages/lab/src/calendar/Calendar.js +2 -6
  26. package/dist-cjs/packages/lab/src/calendar/Calendar.js.map +1 -1
  27. package/dist-cjs/packages/lab/src/calendar/internal/CalendarDay.js +34 -54
  28. package/dist-cjs/packages/lab/src/calendar/internal/CalendarDay.js.map +1 -1
  29. package/dist-cjs/packages/lab/src/calendar/internal/CalendarMonth.js +2 -6
  30. package/dist-cjs/packages/lab/src/calendar/internal/CalendarMonth.js.map +1 -1
  31. package/dist-cjs/packages/lab/src/calendar/internal/CalendarNavigation.js +38 -72
  32. package/dist-cjs/packages/lab/src/calendar/internal/CalendarNavigation.js.map +1 -1
  33. package/dist-cjs/packages/lab/src/calendar/internal/CalendarWeekHeader.js +2 -6
  34. package/dist-cjs/packages/lab/src/calendar/internal/CalendarWeekHeader.js.map +1 -1
  35. package/dist-cjs/packages/lab/src/calendar/useSelection.js +3 -6
  36. package/dist-cjs/packages/lab/src/calendar/useSelection.js.map +1 -1
  37. package/dist-cjs/packages/lab/src/carousel/Carousel.js +3 -6
  38. package/dist-cjs/packages/lab/src/carousel/Carousel.js.map +1 -1
  39. package/dist-cjs/packages/lab/src/carousel/CarouselSlide.js +4 -8
  40. package/dist-cjs/packages/lab/src/carousel/CarouselSlide.js.map +1 -1
  41. package/dist-cjs/packages/lab/src/cascading-menu/CascadingMenu.js +2 -1
  42. package/dist-cjs/packages/lab/src/cascading-menu/CascadingMenu.js.map +1 -1
  43. package/dist-cjs/packages/lab/src/cascading-menu/CascadingMenuItem.js +48 -69
  44. package/dist-cjs/packages/lab/src/cascading-menu/CascadingMenuItem.js.map +1 -1
  45. package/dist-cjs/packages/lab/src/cascading-menu/CascadingMenuList.js +5 -9
  46. package/dist-cjs/packages/lab/src/cascading-menu/CascadingMenuList.js.map +1 -1
  47. package/dist-cjs/packages/lab/src/cascading-menu/internal/useClickAway.js +1 -0
  48. package/dist-cjs/packages/lab/src/cascading-menu/internal/useClickAway.js.map +1 -1
  49. package/dist-cjs/packages/lab/src/cascading-menu/internal/useMenuTriggerHandlers.js +1 -0
  50. package/dist-cjs/packages/lab/src/cascading-menu/internal/useMenuTriggerHandlers.js.map +1 -1
  51. package/dist-cjs/packages/lab/src/checkbox/Checkbox.js +2 -6
  52. package/dist-cjs/packages/lab/src/checkbox/Checkbox.js.map +1 -1
  53. package/dist-cjs/packages/lab/src/checkbox/CheckboxBase.js +2 -6
  54. package/dist-cjs/packages/lab/src/checkbox/CheckboxBase.js.map +1 -1
  55. package/dist-cjs/packages/lab/src/checkbox/CheckboxGroup.js +2 -6
  56. package/dist-cjs/packages/lab/src/checkbox/CheckboxGroup.js.map +1 -1
  57. package/dist-cjs/packages/lab/src/checkbox/CheckboxIcon.js +4 -8
  58. package/dist-cjs/packages/lab/src/checkbox/CheckboxIcon.js.map +1 -1
  59. package/dist-cjs/packages/lab/src/color-chooser/AlphaInputField.js +2 -6
  60. package/dist-cjs/packages/lab/src/color-chooser/AlphaInputField.js.map +1 -1
  61. package/dist-cjs/packages/lab/src/color-chooser/ColorChooser.js +7 -11
  62. package/dist-cjs/packages/lab/src/color-chooser/ColorChooser.js.map +1 -1
  63. package/dist-cjs/packages/lab/src/color-chooser/ColorPicker.js +7 -11
  64. package/dist-cjs/packages/lab/src/color-chooser/ColorPicker.js.map +1 -1
  65. package/dist-cjs/packages/lab/src/color-chooser/DictTabs.js +3 -7
  66. package/dist-cjs/packages/lab/src/color-chooser/DictTabs.js.map +1 -1
  67. package/dist-cjs/packages/lab/src/color-chooser/HexInput.js +4 -8
  68. package/dist-cjs/packages/lab/src/color-chooser/HexInput.js.map +1 -1
  69. package/dist-cjs/packages/lab/src/color-chooser/RGBAInput.js +5 -9
  70. package/dist-cjs/packages/lab/src/color-chooser/RGBAInput.js.map +1 -1
  71. package/dist-cjs/packages/lab/src/color-chooser/Swatch.js +2 -6
  72. package/dist-cjs/packages/lab/src/color-chooser/Swatch.js.map +1 -1
  73. package/dist-cjs/packages/lab/src/color-chooser/Swatches.js +6 -10
  74. package/dist-cjs/packages/lab/src/color-chooser/Swatches.js.map +1 -1
  75. package/dist-cjs/packages/lab/src/combo-box/ComboBox.js +1 -0
  76. package/dist-cjs/packages/lab/src/combo-box/ComboBox.js.map +1 -1
  77. package/dist-cjs/packages/lab/src/combo-box/useCombobox.js +1 -0
  78. package/dist-cjs/packages/lab/src/combo-box/useCombobox.js.map +1 -1
  79. package/dist-cjs/packages/lab/src/combo-box-deprecated/ComboBoxDeprecated.js +3 -7
  80. package/dist-cjs/packages/lab/src/combo-box-deprecated/ComboBoxDeprecated.js.map +1 -1
  81. package/dist-cjs/packages/lab/src/combo-box-deprecated/filterHelpers.js +1 -0
  82. package/dist-cjs/packages/lab/src/combo-box-deprecated/filterHelpers.js.map +1 -1
  83. package/dist-cjs/packages/lab/src/combo-box-deprecated/internal/DefaultComboBox.js +21 -39
  84. package/dist-cjs/packages/lab/src/combo-box-deprecated/internal/DefaultComboBox.js.map +1 -1
  85. package/dist-cjs/packages/lab/src/combo-box-deprecated/internal/MultiSelectComboBox.js +28 -49
  86. package/dist-cjs/packages/lab/src/combo-box-deprecated/internal/MultiSelectComboBox.js.map +1 -1
  87. package/dist-cjs/packages/lab/src/combo-box-deprecated/internal/useComboBox.js +1 -0
  88. package/dist-cjs/packages/lab/src/combo-box-deprecated/internal/useComboBox.js.map +1 -1
  89. package/dist-cjs/packages/lab/src/combo-box-deprecated/internal/useMultiSelectComboBox.js +1 -0
  90. package/dist-cjs/packages/lab/src/combo-box-deprecated/internal/useMultiSelectComboBox.js.map +1 -1
  91. package/dist-cjs/packages/lab/src/common-hooks/useAutoSizer.js +3 -2
  92. package/dist-cjs/packages/lab/src/common-hooks/useAutoSizer.js.map +1 -1
  93. package/dist-cjs/packages/lab/src/common-hooks/useViewportTracking.js +3 -2
  94. package/dist-cjs/packages/lab/src/common-hooks/useViewportTracking.js.map +1 -1
  95. package/dist-cjs/packages/lab/src/common-hooks/utils/filter-utils.js +1 -0
  96. package/dist-cjs/packages/lab/src/common-hooks/utils/filter-utils.js.map +1 -1
  97. package/dist-cjs/packages/lab/src/contact-details/ContactAction.js +8 -23
  98. package/dist-cjs/packages/lab/src/contact-details/ContactAction.js.map +1 -1
  99. package/dist-cjs/packages/lab/src/contact-details/ContactAvatar.js +2 -6
  100. package/dist-cjs/packages/lab/src/contact-details/ContactAvatar.js.map +1 -1
  101. package/dist-cjs/packages/lab/src/contact-details/ContactDetails.js +2 -6
  102. package/dist-cjs/packages/lab/src/contact-details/ContactDetails.js.map +1 -1
  103. package/dist-cjs/packages/lab/src/contact-details/ContactFavoriteToggle.js.map +1 -1
  104. package/dist-cjs/packages/lab/src/contact-details/ContactMetadata.js +2 -6
  105. package/dist-cjs/packages/lab/src/contact-details/ContactMetadata.js.map +1 -1
  106. package/dist-cjs/packages/lab/src/contact-details/ContactPrimaryInfo.js +2 -6
  107. package/dist-cjs/packages/lab/src/contact-details/ContactPrimaryInfo.js.map +1 -1
  108. package/dist-cjs/packages/lab/src/contact-details/ContactSecondaryInfo.js +2 -6
  109. package/dist-cjs/packages/lab/src/contact-details/ContactSecondaryInfo.js.map +1 -1
  110. package/dist-cjs/packages/lab/src/contact-details/ContactTertiaryInfo.js +2 -6
  111. package/dist-cjs/packages/lab/src/contact-details/ContactTertiaryInfo.js.map +1 -1
  112. package/dist-cjs/packages/lab/src/contact-details/MailLinkComponent.js +1 -0
  113. package/dist-cjs/packages/lab/src/contact-details/MailLinkComponent.js.map +1 -1
  114. package/dist-cjs/packages/lab/src/contact-details/internal/FavoriteToggleWithTooltip.js +8 -19
  115. package/dist-cjs/packages/lab/src/contact-details/internal/FavoriteToggleWithTooltip.js.map +1 -1
  116. package/dist-cjs/packages/lab/src/contact-details/internal/StarIconContainer.js +3 -7
  117. package/dist-cjs/packages/lab/src/contact-details/internal/StarIconContainer.js.map +1 -1
  118. package/dist-cjs/packages/lab/src/content-status/ContentStatus.js +6 -10
  119. package/dist-cjs/packages/lab/src/content-status/ContentStatus.js.map +1 -1
  120. package/dist-cjs/packages/lab/src/content-status/internal/StatusIndicator.js +4 -9
  121. package/dist-cjs/packages/lab/src/content-status/internal/StatusIndicator.js.map +1 -1
  122. package/dist-cjs/packages/lab/src/control-label/ControlLabel.js +2 -6
  123. package/dist-cjs/packages/lab/src/control-label/ControlLabel.js.map +1 -1
  124. package/dist-cjs/packages/lab/src/deck-item/DeckItem.js +2 -6
  125. package/dist-cjs/packages/lab/src/deck-item/DeckItem.js.map +1 -1
  126. package/dist-cjs/packages/lab/src/deck-layout/DeckLayout.js +4 -7
  127. package/dist-cjs/packages/lab/src/deck-layout/DeckLayout.js.map +1 -1
  128. package/dist-cjs/packages/lab/src/dialog/Dialog.js +2 -6
  129. package/dist-cjs/packages/lab/src/dialog/Dialog.js.map +1 -1
  130. package/dist-cjs/packages/lab/src/dialog/DialogActions.js +2 -6
  131. package/dist-cjs/packages/lab/src/dialog/DialogActions.js.map +1 -1
  132. package/dist-cjs/packages/lab/src/dialog/DialogContent.js +2 -6
  133. package/dist-cjs/packages/lab/src/dialog/DialogContent.js.map +1 -1
  134. package/dist-cjs/packages/lab/src/dialog/DialogTitle.js +2 -6
  135. package/dist-cjs/packages/lab/src/dialog/DialogTitle.js.map +1 -1
  136. package/dist-cjs/packages/lab/src/dropdown/Dropdown.js +1 -0
  137. package/dist-cjs/packages/lab/src/dropdown/Dropdown.js.map +1 -1
  138. package/dist-cjs/packages/lab/src/dropdown/DropdownBase.js +10 -14
  139. package/dist-cjs/packages/lab/src/dropdown/DropdownBase.js.map +1 -1
  140. package/dist-cjs/packages/lab/src/dropdown/DropdownButton.js +2 -6
  141. package/dist-cjs/packages/lab/src/dropdown/DropdownButton.js.map +1 -1
  142. package/dist-cjs/packages/lab/src/dropdown/useDropdown.js +1 -0
  143. package/dist-cjs/packages/lab/src/dropdown/useDropdown.js.map +1 -1
  144. package/dist-cjs/packages/lab/src/dropdown/useDropdownBase.js +1 -0
  145. package/dist-cjs/packages/lab/src/dropdown/useDropdownBase.js.map +1 -1
  146. package/dist-cjs/packages/lab/src/editable-label/EditableLabel.js +2 -6
  147. package/dist-cjs/packages/lab/src/editable-label/EditableLabel.js.map +1 -1
  148. package/dist-cjs/packages/lab/src/file-drop-zone/FileDropZone.js +2 -6
  149. package/dist-cjs/packages/lab/src/file-drop-zone/FileDropZone.js.map +1 -1
  150. package/dist-cjs/packages/lab/src/form-field/FormField.js +61 -78
  151. package/dist-cjs/packages/lab/src/form-field/FormField.js.map +1 -1
  152. package/dist-cjs/packages/lab/src/form-field/FormLabel.js +2 -6
  153. package/dist-cjs/packages/lab/src/form-field/FormLabel.js.map +1 -1
  154. package/dist-cjs/packages/lab/src/form-field/StatusIndicator.js +18 -35
  155. package/dist-cjs/packages/lab/src/form-field/StatusIndicator.js.map +1 -1
  156. package/dist-cjs/packages/lab/src/form-group/FormGroup.js +2 -6
  157. package/dist-cjs/packages/lab/src/form-group/FormGroup.js.map +1 -1
  158. package/dist-cjs/packages/lab/src/formatted-input/FormattedInput.js +2 -6
  159. package/dist-cjs/packages/lab/src/formatted-input/FormattedInput.js.map +1 -1
  160. package/dist-cjs/packages/lab/src/formatted-input/internal/InputWithMask.js +2 -6
  161. package/dist-cjs/packages/lab/src/formatted-input/internal/InputWithMask.js.map +1 -1
  162. package/dist-cjs/packages/lab/src/index.js +3 -19
  163. package/dist-cjs/packages/lab/src/index.js.map +1 -1
  164. package/dist-cjs/packages/lab/src/input/Input.js +4 -8
  165. package/dist-cjs/packages/lab/src/input/Input.js.map +1 -1
  166. package/dist-cjs/packages/lab/src/input/StaticInputAdornment.js +2 -6
  167. package/dist-cjs/packages/lab/src/input/StaticInputAdornment.js.map +1 -1
  168. package/dist-cjs/packages/lab/src/layer-layout/LayerLayout.js +6 -9
  169. package/dist-cjs/packages/lab/src/layer-layout/LayerLayout.js.map +1 -1
  170. package/dist-cjs/packages/lab/src/list/Highlighter.js +1 -0
  171. package/dist-cjs/packages/lab/src/list/Highlighter.js.map +1 -1
  172. package/dist-cjs/packages/lab/src/list/List.js +5 -8
  173. package/dist-cjs/packages/lab/src/list/List.js.map +1 -1
  174. package/dist-cjs/packages/lab/src/list/ListItem.js +3 -7
  175. package/dist-cjs/packages/lab/src/list/ListItem.js.map +1 -1
  176. package/dist-cjs/packages/lab/src/list/VirtualizedList.js +4 -7
  177. package/dist-cjs/packages/lab/src/list/VirtualizedList.js.map +1 -1
  178. package/dist-cjs/packages/lab/src/list/useList.js +2 -1
  179. package/dist-cjs/packages/lab/src/list/useList.js.map +1 -1
  180. package/dist-cjs/packages/lab/src/list/useListHeight.js +1 -0
  181. package/dist-cjs/packages/lab/src/list/useListHeight.js.map +1 -1
  182. package/dist-cjs/packages/lab/src/list/useVirtualization.js +2 -1
  183. package/dist-cjs/packages/lab/src/list/useVirtualization.js.map +1 -1
  184. package/dist-cjs/packages/lab/src/list-deprecated/List.js +5 -26
  185. package/dist-cjs/packages/lab/src/list-deprecated/List.js.map +1 -1
  186. package/dist-cjs/packages/lab/src/list-deprecated/ListBase.js +3 -7
  187. package/dist-cjs/packages/lab/src/list-deprecated/ListBase.js.map +1 -1
  188. package/dist-cjs/packages/lab/src/list-deprecated/ListItemBase.js +29 -63
  189. package/dist-cjs/packages/lab/src/list-deprecated/ListItemBase.js.map +1 -1
  190. package/dist-cjs/packages/lab/src/list-deprecated/internal/Highlighter.js +1 -0
  191. package/dist-cjs/packages/lab/src/list-deprecated/internal/Highlighter.js.map +1 -1
  192. package/dist-cjs/packages/lab/src/list-deprecated/useTypeSelect.js +1 -0
  193. package/dist-cjs/packages/lab/src/list-deprecated/useTypeSelect.js.map +1 -1
  194. package/dist-cjs/packages/lab/src/logo/Logo.js +5 -9
  195. package/dist-cjs/packages/lab/src/logo/Logo.js.map +1 -1
  196. package/dist-cjs/packages/lab/src/menu-button/MenuButtonTrigger.js +2 -6
  197. package/dist-cjs/packages/lab/src/menu-button/MenuButtonTrigger.js.map +1 -1
  198. package/dist-cjs/packages/lab/src/metric/Metric.js +2 -6
  199. package/dist-cjs/packages/lab/src/metric/Metric.js.map +1 -1
  200. package/dist-cjs/packages/lab/src/metric/MetricContent.js +2 -6
  201. package/dist-cjs/packages/lab/src/metric/MetricContent.js.map +1 -1
  202. package/dist-cjs/packages/lab/src/metric/MetricHeader.js +2 -6
  203. package/dist-cjs/packages/lab/src/metric/MetricHeader.js.map +1 -1
  204. package/dist-cjs/packages/lab/src/overlay/Overlay.js +4 -8
  205. package/dist-cjs/packages/lab/src/overlay/Overlay.js.map +1 -1
  206. package/dist-cjs/packages/lab/src/overlay/useOverlay.js +11 -12
  207. package/dist-cjs/packages/lab/src/overlay/useOverlay.js.map +1 -1
  208. package/dist-cjs/packages/lab/src/pagination/ArrowButton.js +2 -6
  209. package/dist-cjs/packages/lab/src/pagination/ArrowButton.js.map +1 -1
  210. package/dist-cjs/packages/lab/src/pagination/CompactInput.js +3 -7
  211. package/dist-cjs/packages/lab/src/pagination/CompactInput.js.map +1 -1
  212. package/dist-cjs/packages/lab/src/pagination/GoToInput.js +3 -7
  213. package/dist-cjs/packages/lab/src/pagination/GoToInput.js.map +1 -1
  214. package/dist-cjs/packages/lab/src/pagination/PageButton.js +2 -6
  215. package/dist-cjs/packages/lab/src/pagination/PageButton.js.map +1 -1
  216. package/dist-cjs/packages/lab/src/pagination/Pagination.js +2 -6
  217. package/dist-cjs/packages/lab/src/pagination/Pagination.js.map +1 -1
  218. package/dist-cjs/packages/lab/src/pagination/Paginator.js +2 -6
  219. package/dist-cjs/packages/lab/src/pagination/Paginator.js.map +1 -1
  220. package/dist-cjs/packages/lab/src/parent-child-item/ParentChildItem.js +2 -6
  221. package/dist-cjs/packages/lab/src/parent-child-item/ParentChildItem.js.map +1 -1
  222. package/dist-cjs/packages/lab/src/parent-child-layout/ParentChildLayout.js +3 -6
  223. package/dist-cjs/packages/lab/src/parent-child-layout/ParentChildLayout.js.map +1 -1
  224. package/dist-cjs/packages/lab/src/pill/ClosablePill.js +2 -6
  225. package/dist-cjs/packages/lab/src/pill/ClosablePill.js.map +1 -1
  226. package/dist-cjs/packages/lab/src/pill/PillBase.js +42 -62
  227. package/dist-cjs/packages/lab/src/pill/PillBase.js.map +1 -1
  228. package/dist-cjs/packages/lab/src/pill/SelectablePill.js +2 -6
  229. package/dist-cjs/packages/lab/src/pill/SelectablePill.js.map +1 -1
  230. package/dist-cjs/packages/lab/src/pill/internal/DeleteButton.js +2 -6
  231. package/dist-cjs/packages/lab/src/pill/internal/DeleteButton.js.map +1 -1
  232. package/dist-cjs/packages/lab/src/pill/internal/DivButton.js +2 -6
  233. package/dist-cjs/packages/lab/src/pill/internal/DivButton.js.map +1 -1
  234. package/dist-cjs/packages/lab/src/progress/CircularProgress/CircularProgress.js +4 -8
  235. package/dist-cjs/packages/lab/src/progress/CircularProgress/CircularProgress.js.map +1 -1
  236. package/dist-cjs/packages/lab/src/progress/LinearProgress/LinearProgress.js +5 -9
  237. package/dist-cjs/packages/lab/src/progress/LinearProgress/LinearProgress.js.map +1 -1
  238. package/dist-cjs/packages/lab/src/query-input/QueryInput.js +2 -6
  239. package/dist-cjs/packages/lab/src/query-input/QueryInput.js.map +1 -1
  240. package/dist-cjs/packages/lab/src/query-input/internal/CategoryList.js +1 -0
  241. package/dist-cjs/packages/lab/src/query-input/internal/CategoryList.js.map +1 -1
  242. package/dist-cjs/packages/lab/src/query-input/internal/CategoryListItem.js +1 -0
  243. package/dist-cjs/packages/lab/src/query-input/internal/CategoryListItem.js.map +1 -1
  244. package/dist-cjs/packages/lab/src/query-input/internal/QueryInputBody.js +1 -0
  245. package/dist-cjs/packages/lab/src/query-input/internal/QueryInputBody.js.map +1 -1
  246. package/dist-cjs/packages/lab/src/query-input/internal/SearchList.js +1 -0
  247. package/dist-cjs/packages/lab/src/query-input/internal/SearchList.js.map +1 -1
  248. package/dist-cjs/packages/lab/src/query-input/internal/ValueList.js +1 -0
  249. package/dist-cjs/packages/lab/src/query-input/internal/ValueList.js.map +1 -1
  250. package/dist-cjs/packages/lab/src/query-input/internal/ValueSelector.js +2 -3
  251. package/dist-cjs/packages/lab/src/query-input/internal/ValueSelector.js.map +1 -1
  252. package/dist-cjs/packages/lab/src/query-input/useQueryInput.js +1 -0
  253. package/dist-cjs/packages/lab/src/query-input/useQueryInput.js.map +1 -1
  254. package/dist-cjs/packages/lab/src/radio-button/RadioButton.js +3 -7
  255. package/dist-cjs/packages/lab/src/radio-button/RadioButton.js.map +1 -1
  256. package/dist-cjs/packages/lab/src/radio-button/RadioButtonBase.js +2 -6
  257. package/dist-cjs/packages/lab/src/radio-button/RadioButtonBase.js.map +1 -1
  258. package/dist-cjs/packages/lab/src/radio-button/RadioButtonGroup.js +3 -7
  259. package/dist-cjs/packages/lab/src/radio-button/RadioButtonGroup.js.map +1 -1
  260. package/dist-cjs/packages/lab/src/radio-button/RadioButtonIcon.js +2 -6
  261. package/dist-cjs/packages/lab/src/radio-button/RadioButtonIcon.js.map +1 -1
  262. package/dist-cjs/packages/lab/src/responsive/useOverflow.js +1 -0
  263. package/dist-cjs/packages/lab/src/responsive/useOverflow.js.map +1 -1
  264. package/dist-cjs/packages/lab/src/responsive/useResizeObserver.js +6 -3
  265. package/dist-cjs/packages/lab/src/responsive/useResizeObserver.js.map +1 -1
  266. package/dist-cjs/packages/lab/src/scrim/Scrim.js +2 -3
  267. package/dist-cjs/packages/lab/src/scrim/Scrim.js.map +1 -1
  268. package/dist-cjs/packages/lab/src/search-input/SearchInput.js +3 -7
  269. package/dist-cjs/packages/lab/src/search-input/SearchInput.js.map +1 -1
  270. package/dist-cjs/packages/lab/src/skip-link/SkipLink.js +3 -7
  271. package/dist-cjs/packages/lab/src/skip-link/SkipLink.js.map +1 -1
  272. package/dist-cjs/packages/lab/src/skip-link/SkipLinks.js +2 -6
  273. package/dist-cjs/packages/lab/src/skip-link/SkipLinks.js.map +1 -1
  274. package/dist-cjs/packages/lab/src/slider/Slider.js +2 -6
  275. package/dist-cjs/packages/lab/src/slider/Slider.js.map +1 -1
  276. package/dist-cjs/packages/lab/src/slider/internal/SliderHandle.js +18 -31
  277. package/dist-cjs/packages/lab/src/slider/internal/SliderHandle.js.map +1 -1
  278. package/dist-cjs/packages/lab/src/slider/internal/SliderRailMarks.js +2 -6
  279. package/dist-cjs/packages/lab/src/slider/internal/SliderRailMarks.js.map +1 -1
  280. package/dist-cjs/packages/lab/src/stepper-input/StepperInput.js +5 -9
  281. package/dist-cjs/packages/lab/src/stepper-input/StepperInput.js.map +1 -1
  282. package/dist-cjs/packages/lab/src/switch/Switch.js +4 -8
  283. package/dist-cjs/packages/lab/src/switch/Switch.js.map +1 -1
  284. package/dist-cjs/packages/lab/src/tabs/Tab.js +2 -6
  285. package/dist-cjs/packages/lab/src/tabs/Tab.js.map +1 -1
  286. package/dist-cjs/packages/lab/src/tabs/TabPanel.js +2 -6
  287. package/dist-cjs/packages/lab/src/tabs/TabPanel.js.map +1 -1
  288. package/dist-cjs/packages/lab/src/tabs/Tabs.js +2 -6
  289. package/dist-cjs/packages/lab/src/tabs/Tabs.js.map +1 -1
  290. package/dist-cjs/packages/lab/src/tabs/Tabstrip.js +37 -48
  291. package/dist-cjs/packages/lab/src/tabs/Tabstrip.js.map +1 -1
  292. package/dist-cjs/packages/lab/src/tabs/drag-drop/Draggable.js +2 -6
  293. package/dist-cjs/packages/lab/src/tabs/drag-drop/Draggable.js.map +1 -1
  294. package/dist-cjs/packages/lab/src/tabs/useActivationIndicator.js +1 -0
  295. package/dist-cjs/packages/lab/src/tabs/useActivationIndicator.js.map +1 -1
  296. package/dist-cjs/packages/lab/src/tabs/useKeyboardNavigation.js +1 -0
  297. package/dist-cjs/packages/lab/src/tabs/useKeyboardNavigation.js.map +1 -1
  298. package/dist-cjs/packages/lab/src/toggle-button/ToggleButton.js +8 -32
  299. package/dist-cjs/packages/lab/src/toggle-button/ToggleButton.js.map +1 -1
  300. package/dist-cjs/packages/lab/src/toggle-button/ToggleButtonGroup.js +2 -6
  301. package/dist-cjs/packages/lab/src/toggle-button/ToggleButtonGroup.js.map +1 -1
  302. package/dist-cjs/packages/lab/src/tokenized-input/TokenizedInput.js.map +1 -1
  303. package/dist-cjs/packages/lab/src/tokenized-input/TokenizedInputBase.js +7 -12
  304. package/dist-cjs/packages/lab/src/tokenized-input/TokenizedInputBase.js.map +1 -1
  305. package/dist-cjs/packages/lab/src/tokenized-input/internal/InputPill.js +2 -6
  306. package/dist-cjs/packages/lab/src/tokenized-input/internal/InputPill.js.map +1 -1
  307. package/dist-cjs/packages/lab/src/tokenized-input/useTokenizedInput.js +1 -0
  308. package/dist-cjs/packages/lab/src/tokenized-input/useTokenizedInput.js.map +1 -1
  309. package/dist-cjs/packages/lab/src/toolbar/Toolbar.js +5 -8
  310. package/dist-cjs/packages/lab/src/toolbar/Toolbar.js.map +1 -1
  311. package/dist-cjs/packages/lab/src/toolbar/Tooltray.js +4 -8
  312. package/dist-cjs/packages/lab/src/toolbar/Tooltray.js.map +1 -1
  313. package/dist-cjs/packages/lab/src/toolbar/internal/renderToolbarItems.js +1 -0
  314. package/dist-cjs/packages/lab/src/toolbar/internal/renderToolbarItems.js.map +1 -1
  315. package/dist-cjs/packages/lab/src/toolbar/overflow-panel/OverflowPanel.js +3 -3
  316. package/dist-cjs/packages/lab/src/toolbar/overflow-panel/OverflowPanel.js.map +1 -1
  317. package/dist-cjs/packages/lab/src/toolbar/overflow-panel/OverflowSeparator.js +2 -6
  318. package/dist-cjs/packages/lab/src/toolbar/overflow-panel/OverflowSeparator.js.map +1 -1
  319. package/dist-cjs/packages/lab/src/toolbar/toolbar-field/useToolbarField.js +3 -7
  320. package/dist-cjs/packages/lab/src/toolbar/toolbar-field/useToolbarField.js.map +1 -1
  321. package/dist-cjs/packages/lab/src/tree/Tree.js +5 -8
  322. package/dist-cjs/packages/lab/src/tree/Tree.js.map +1 -1
  323. package/dist-cjs/packages/lab/src/tree/TreeNode.js +2 -6
  324. package/dist-cjs/packages/lab/src/tree/TreeNode.js.map +1 -1
  325. package/dist-cjs/packages/lab/src/tree/useTree.js +2 -1
  326. package/dist-cjs/packages/lab/src/tree/useTree.js.map +1 -1
  327. package/dist-cjs/packages/lab/src/utils/useFloatingUI.js +38 -0
  328. package/dist-cjs/packages/lab/src/utils/useFloatingUI.js.map +1 -0
  329. package/dist-cjs/packages/lab/src/utils/useIsViewportLargerThanBreakpoint.js +1 -2
  330. package/dist-cjs/packages/lab/src/utils/useIsViewportLargerThanBreakpoint.js.map +1 -1
  331. package/dist-es/packages/lab/src/accordion/Accordion.js +2 -2
  332. package/dist-es/packages/lab/src/accordion/Accordion.js.map +1 -1
  333. package/dist-es/packages/lab/src/accordion/AccordionDetails.js +3 -3
  334. package/dist-es/packages/lab/src/accordion/AccordionDetails.js.map +1 -1
  335. package/dist-es/packages/lab/src/accordion/AccordionSection.js +3 -2
  336. package/dist-es/packages/lab/src/accordion/AccordionSection.js.map +1 -1
  337. package/dist-es/packages/lab/src/accordion/AccordionSummary.js +2 -2
  338. package/dist-es/packages/lab/src/accordion/AccordionSummary.js.map +1 -1
  339. package/dist-es/packages/lab/src/app-header/AppHeader.js +3 -2
  340. package/dist-es/packages/lab/src/app-header/AppHeader.js.map +1 -1
  341. package/dist-es/packages/lab/src/avatar/Avatar.js +2 -2
  342. package/dist-es/packages/lab/src/avatar/Avatar.js.map +1 -1
  343. package/dist-es/packages/lab/src/badge/Badge.js +4 -4
  344. package/dist-es/packages/lab/src/badge/Badge.js.map +1 -1
  345. package/dist-es/packages/lab/src/banner/Banner.js +5 -5
  346. package/dist-es/packages/lab/src/banner/Banner.js.map +1 -1
  347. package/dist-es/packages/lab/src/breadcrumbs/Breadcrumb.js +4 -4
  348. package/dist-es/packages/lab/src/breadcrumbs/Breadcrumb.js.map +1 -1
  349. package/dist-es/packages/lab/src/breadcrumbs/Breadcrumbs.js +3 -3
  350. package/dist-es/packages/lab/src/breadcrumbs/Breadcrumbs.js.map +1 -1
  351. package/dist-es/packages/lab/src/button-bar/ButtonBar.js +2 -2
  352. package/dist-es/packages/lab/src/button-bar/ButtonBar.js.map +1 -1
  353. package/dist-es/packages/lab/src/button-bar/OrderedButton.js +3 -2
  354. package/dist-es/packages/lab/src/button-bar/OrderedButton.js.map +1 -1
  355. package/dist-es/packages/lab/src/calendar/Calendar.js +2 -2
  356. package/dist-es/packages/lab/src/calendar/Calendar.js.map +1 -1
  357. package/dist-es/packages/lab/src/calendar/internal/CalendarDay.js +36 -52
  358. package/dist-es/packages/lab/src/calendar/internal/CalendarDay.js.map +1 -1
  359. package/dist-es/packages/lab/src/calendar/internal/CalendarMonth.js +2 -2
  360. package/dist-es/packages/lab/src/calendar/internal/CalendarMonth.js.map +1 -1
  361. package/dist-es/packages/lab/src/calendar/internal/CalendarNavigation.js +39 -69
  362. package/dist-es/packages/lab/src/calendar/internal/CalendarNavigation.js.map +1 -1
  363. package/dist-es/packages/lab/src/calendar/internal/CalendarWeekHeader.js +2 -2
  364. package/dist-es/packages/lab/src/calendar/internal/CalendarWeekHeader.js.map +1 -1
  365. package/dist-es/packages/lab/src/calendar/useSelection.js +3 -2
  366. package/dist-es/packages/lab/src/calendar/useSelection.js.map +1 -1
  367. package/dist-es/packages/lab/src/carousel/Carousel.js +3 -2
  368. package/dist-es/packages/lab/src/carousel/Carousel.js.map +1 -1
  369. package/dist-es/packages/lab/src/carousel/CarouselSlide.js +4 -4
  370. package/dist-es/packages/lab/src/carousel/CarouselSlide.js.map +1 -1
  371. package/dist-es/packages/lab/src/cascading-menu/CascadingMenu.js +2 -1
  372. package/dist-es/packages/lab/src/cascading-menu/CascadingMenu.js.map +1 -1
  373. package/dist-es/packages/lab/src/cascading-menu/CascadingMenuItem.js +50 -67
  374. package/dist-es/packages/lab/src/cascading-menu/CascadingMenuItem.js.map +1 -1
  375. package/dist-es/packages/lab/src/cascading-menu/CascadingMenuList.js +5 -5
  376. package/dist-es/packages/lab/src/cascading-menu/CascadingMenuList.js.map +1 -1
  377. package/dist-es/packages/lab/src/cascading-menu/internal/useClickAway.js +1 -0
  378. package/dist-es/packages/lab/src/cascading-menu/internal/useClickAway.js.map +1 -1
  379. package/dist-es/packages/lab/src/cascading-menu/internal/useMenuTriggerHandlers.js +1 -0
  380. package/dist-es/packages/lab/src/cascading-menu/internal/useMenuTriggerHandlers.js.map +1 -1
  381. package/dist-es/packages/lab/src/checkbox/Checkbox.js +2 -2
  382. package/dist-es/packages/lab/src/checkbox/Checkbox.js.map +1 -1
  383. package/dist-es/packages/lab/src/checkbox/CheckboxBase.js +2 -2
  384. package/dist-es/packages/lab/src/checkbox/CheckboxBase.js.map +1 -1
  385. package/dist-es/packages/lab/src/checkbox/CheckboxGroup.js +2 -2
  386. package/dist-es/packages/lab/src/checkbox/CheckboxGroup.js.map +1 -1
  387. package/dist-es/packages/lab/src/checkbox/CheckboxIcon.js +4 -4
  388. package/dist-es/packages/lab/src/checkbox/CheckboxIcon.js.map +1 -1
  389. package/dist-es/packages/lab/src/color-chooser/AlphaInputField.js +2 -2
  390. package/dist-es/packages/lab/src/color-chooser/AlphaInputField.js.map +1 -1
  391. package/dist-es/packages/lab/src/color-chooser/ColorChooser.js +7 -7
  392. package/dist-es/packages/lab/src/color-chooser/ColorChooser.js.map +1 -1
  393. package/dist-es/packages/lab/src/color-chooser/ColorPicker.js +7 -7
  394. package/dist-es/packages/lab/src/color-chooser/ColorPicker.js.map +1 -1
  395. package/dist-es/packages/lab/src/color-chooser/DictTabs.js +3 -3
  396. package/dist-es/packages/lab/src/color-chooser/DictTabs.js.map +1 -1
  397. package/dist-es/packages/lab/src/color-chooser/HexInput.js +4 -4
  398. package/dist-es/packages/lab/src/color-chooser/HexInput.js.map +1 -1
  399. package/dist-es/packages/lab/src/color-chooser/RGBAInput.js +5 -5
  400. package/dist-es/packages/lab/src/color-chooser/RGBAInput.js.map +1 -1
  401. package/dist-es/packages/lab/src/color-chooser/Swatch.js +2 -2
  402. package/dist-es/packages/lab/src/color-chooser/Swatch.js.map +1 -1
  403. package/dist-es/packages/lab/src/color-chooser/Swatches.js +6 -6
  404. package/dist-es/packages/lab/src/color-chooser/Swatches.js.map +1 -1
  405. package/dist-es/packages/lab/src/combo-box/ComboBox.js +1 -0
  406. package/dist-es/packages/lab/src/combo-box/ComboBox.js.map +1 -1
  407. package/dist-es/packages/lab/src/combo-box/useCombobox.js +1 -0
  408. package/dist-es/packages/lab/src/combo-box/useCombobox.js.map +1 -1
  409. package/dist-es/packages/lab/src/combo-box-deprecated/ComboBoxDeprecated.js +3 -3
  410. package/dist-es/packages/lab/src/combo-box-deprecated/ComboBoxDeprecated.js.map +1 -1
  411. package/dist-es/packages/lab/src/combo-box-deprecated/filterHelpers.js +1 -0
  412. package/dist-es/packages/lab/src/combo-box-deprecated/filterHelpers.js.map +1 -1
  413. package/dist-es/packages/lab/src/combo-box-deprecated/internal/DefaultComboBox.js +19 -37
  414. package/dist-es/packages/lab/src/combo-box-deprecated/internal/DefaultComboBox.js.map +1 -1
  415. package/dist-es/packages/lab/src/combo-box-deprecated/internal/MultiSelectComboBox.js +26 -47
  416. package/dist-es/packages/lab/src/combo-box-deprecated/internal/MultiSelectComboBox.js.map +1 -1
  417. package/dist-es/packages/lab/src/combo-box-deprecated/internal/useComboBox.js +1 -0
  418. package/dist-es/packages/lab/src/combo-box-deprecated/internal/useComboBox.js.map +1 -1
  419. package/dist-es/packages/lab/src/combo-box-deprecated/internal/useMultiSelectComboBox.js +1 -0
  420. package/dist-es/packages/lab/src/combo-box-deprecated/internal/useMultiSelectComboBox.js.map +1 -1
  421. package/dist-es/packages/lab/src/common-hooks/useAutoSizer.js +4 -3
  422. package/dist-es/packages/lab/src/common-hooks/useAutoSizer.js.map +1 -1
  423. package/dist-es/packages/lab/src/common-hooks/useViewportTracking.js +4 -3
  424. package/dist-es/packages/lab/src/common-hooks/useViewportTracking.js.map +1 -1
  425. package/dist-es/packages/lab/src/common-hooks/utils/filter-utils.js +1 -0
  426. package/dist-es/packages/lab/src/common-hooks/utils/filter-utils.js.map +1 -1
  427. package/dist-es/packages/lab/src/contact-details/ContactAction.js +10 -25
  428. package/dist-es/packages/lab/src/contact-details/ContactAction.js.map +1 -1
  429. package/dist-es/packages/lab/src/contact-details/ContactAvatar.js +2 -2
  430. package/dist-es/packages/lab/src/contact-details/ContactAvatar.js.map +1 -1
  431. package/dist-es/packages/lab/src/contact-details/ContactDetails.js +2 -2
  432. package/dist-es/packages/lab/src/contact-details/ContactDetails.js.map +1 -1
  433. package/dist-es/packages/lab/src/contact-details/ContactFavoriteToggle.js.map +1 -1
  434. package/dist-es/packages/lab/src/contact-details/ContactMetadata.js +2 -2
  435. package/dist-es/packages/lab/src/contact-details/ContactMetadata.js.map +1 -1
  436. package/dist-es/packages/lab/src/contact-details/ContactPrimaryInfo.js +2 -2
  437. package/dist-es/packages/lab/src/contact-details/ContactPrimaryInfo.js.map +1 -1
  438. package/dist-es/packages/lab/src/contact-details/ContactSecondaryInfo.js +2 -2
  439. package/dist-es/packages/lab/src/contact-details/ContactSecondaryInfo.js.map +1 -1
  440. package/dist-es/packages/lab/src/contact-details/ContactTertiaryInfo.js +2 -2
  441. package/dist-es/packages/lab/src/contact-details/ContactTertiaryInfo.js.map +1 -1
  442. package/dist-es/packages/lab/src/contact-details/MailLinkComponent.js +1 -0
  443. package/dist-es/packages/lab/src/contact-details/MailLinkComponent.js.map +1 -1
  444. package/dist-es/packages/lab/src/contact-details/internal/FavoriteToggleWithTooltip.js +9 -20
  445. package/dist-es/packages/lab/src/contact-details/internal/FavoriteToggleWithTooltip.js.map +1 -1
  446. package/dist-es/packages/lab/src/contact-details/internal/StarIconContainer.js +3 -3
  447. package/dist-es/packages/lab/src/contact-details/internal/StarIconContainer.js.map +1 -1
  448. package/dist-es/packages/lab/src/content-status/ContentStatus.js +6 -6
  449. package/dist-es/packages/lab/src/content-status/ContentStatus.js.map +1 -1
  450. package/dist-es/packages/lab/src/content-status/internal/StatusIndicator.js +4 -5
  451. package/dist-es/packages/lab/src/content-status/internal/StatusIndicator.js.map +1 -1
  452. package/dist-es/packages/lab/src/control-label/ControlLabel.js +2 -2
  453. package/dist-es/packages/lab/src/control-label/ControlLabel.js.map +1 -1
  454. package/dist-es/packages/lab/src/deck-item/DeckItem.js +2 -2
  455. package/dist-es/packages/lab/src/deck-item/DeckItem.js.map +1 -1
  456. package/dist-es/packages/lab/src/deck-layout/DeckLayout.js +4 -3
  457. package/dist-es/packages/lab/src/deck-layout/DeckLayout.js.map +1 -1
  458. package/dist-es/packages/lab/src/dialog/Dialog.js +2 -2
  459. package/dist-es/packages/lab/src/dialog/Dialog.js.map +1 -1
  460. package/dist-es/packages/lab/src/dialog/DialogActions.js +2 -2
  461. package/dist-es/packages/lab/src/dialog/DialogActions.js.map +1 -1
  462. package/dist-es/packages/lab/src/dialog/DialogContent.js +2 -2
  463. package/dist-es/packages/lab/src/dialog/DialogContent.js.map +1 -1
  464. package/dist-es/packages/lab/src/dialog/DialogTitle.js +2 -2
  465. package/dist-es/packages/lab/src/dialog/DialogTitle.js.map +1 -1
  466. package/dist-es/packages/lab/src/dropdown/Dropdown.js +1 -0
  467. package/dist-es/packages/lab/src/dropdown/Dropdown.js.map +1 -1
  468. package/dist-es/packages/lab/src/dropdown/DropdownBase.js +7 -7
  469. package/dist-es/packages/lab/src/dropdown/DropdownBase.js.map +1 -1
  470. package/dist-es/packages/lab/src/dropdown/DropdownButton.js +2 -2
  471. package/dist-es/packages/lab/src/dropdown/DropdownButton.js.map +1 -1
  472. package/dist-es/packages/lab/src/dropdown/useDropdown.js +1 -0
  473. package/dist-es/packages/lab/src/dropdown/useDropdown.js.map +1 -1
  474. package/dist-es/packages/lab/src/dropdown/useDropdownBase.js +1 -0
  475. package/dist-es/packages/lab/src/dropdown/useDropdownBase.js.map +1 -1
  476. package/dist-es/packages/lab/src/editable-label/EditableLabel.js +2 -2
  477. package/dist-es/packages/lab/src/editable-label/EditableLabel.js.map +1 -1
  478. package/dist-es/packages/lab/src/file-drop-zone/FileDropZone.js +2 -2
  479. package/dist-es/packages/lab/src/file-drop-zone/FileDropZone.js.map +1 -1
  480. package/dist-es/packages/lab/src/form-field/FormField.js +63 -76
  481. package/dist-es/packages/lab/src/form-field/FormField.js.map +1 -1
  482. package/dist-es/packages/lab/src/form-field/FormLabel.js +2 -2
  483. package/dist-es/packages/lab/src/form-field/FormLabel.js.map +1 -1
  484. package/dist-es/packages/lab/src/form-field/StatusIndicator.js +19 -32
  485. package/dist-es/packages/lab/src/form-field/StatusIndicator.js.map +1 -1
  486. package/dist-es/packages/lab/src/form-group/FormGroup.js +2 -2
  487. package/dist-es/packages/lab/src/form-group/FormGroup.js.map +1 -1
  488. package/dist-es/packages/lab/src/formatted-input/FormattedInput.js +2 -2
  489. package/dist-es/packages/lab/src/formatted-input/FormattedInput.js.map +1 -1
  490. package/dist-es/packages/lab/src/formatted-input/internal/InputWithMask.js +2 -2
  491. package/dist-es/packages/lab/src/formatted-input/internal/InputWithMask.js.map +1 -1
  492. package/dist-es/packages/lab/src/index.js +1 -8
  493. package/dist-es/packages/lab/src/index.js.map +1 -1
  494. package/dist-es/packages/lab/src/input/Input.js +4 -4
  495. package/dist-es/packages/lab/src/input/Input.js.map +1 -1
  496. package/dist-es/packages/lab/src/input/StaticInputAdornment.js +2 -2
  497. package/dist-es/packages/lab/src/input/StaticInputAdornment.js.map +1 -1
  498. package/dist-es/packages/lab/src/layer-layout/LayerLayout.js +6 -5
  499. package/dist-es/packages/lab/src/layer-layout/LayerLayout.js.map +1 -1
  500. package/dist-es/packages/lab/src/list/Highlighter.js +1 -0
  501. package/dist-es/packages/lab/src/list/Highlighter.js.map +1 -1
  502. package/dist-es/packages/lab/src/list/List.js +5 -4
  503. package/dist-es/packages/lab/src/list/List.js.map +1 -1
  504. package/dist-es/packages/lab/src/list/ListItem.js +3 -3
  505. package/dist-es/packages/lab/src/list/ListItem.js.map +1 -1
  506. package/dist-es/packages/lab/src/list/VirtualizedList.js +4 -3
  507. package/dist-es/packages/lab/src/list/VirtualizedList.js.map +1 -1
  508. package/dist-es/packages/lab/src/list/useList.js +2 -1
  509. package/dist-es/packages/lab/src/list/useList.js.map +1 -1
  510. package/dist-es/packages/lab/src/list/useListHeight.js +1 -0
  511. package/dist-es/packages/lab/src/list/useListHeight.js.map +1 -1
  512. package/dist-es/packages/lab/src/list/useVirtualization.js +3 -2
  513. package/dist-es/packages/lab/src/list/useVirtualization.js.map +1 -1
  514. package/dist-es/packages/lab/src/list-deprecated/List.js +5 -26
  515. package/dist-es/packages/lab/src/list-deprecated/List.js.map +1 -1
  516. package/dist-es/packages/lab/src/list-deprecated/ListBase.js +3 -3
  517. package/dist-es/packages/lab/src/list-deprecated/ListBase.js.map +1 -1
  518. package/dist-es/packages/lab/src/list-deprecated/ListItemBase.js +32 -62
  519. package/dist-es/packages/lab/src/list-deprecated/ListItemBase.js.map +1 -1
  520. package/dist-es/packages/lab/src/list-deprecated/internal/Highlighter.js +1 -0
  521. package/dist-es/packages/lab/src/list-deprecated/internal/Highlighter.js.map +1 -1
  522. package/dist-es/packages/lab/src/list-deprecated/useTypeSelect.js +1 -0
  523. package/dist-es/packages/lab/src/list-deprecated/useTypeSelect.js.map +1 -1
  524. package/dist-es/packages/lab/src/logo/Logo.js +5 -5
  525. package/dist-es/packages/lab/src/logo/Logo.js.map +1 -1
  526. package/dist-es/packages/lab/src/menu-button/MenuButtonTrigger.js +2 -2
  527. package/dist-es/packages/lab/src/menu-button/MenuButtonTrigger.js.map +1 -1
  528. package/dist-es/packages/lab/src/metric/Metric.js +2 -2
  529. package/dist-es/packages/lab/src/metric/Metric.js.map +1 -1
  530. package/dist-es/packages/lab/src/metric/MetricContent.js +2 -2
  531. package/dist-es/packages/lab/src/metric/MetricContent.js.map +1 -1
  532. package/dist-es/packages/lab/src/metric/MetricHeader.js +2 -2
  533. package/dist-es/packages/lab/src/metric/MetricHeader.js.map +1 -1
  534. package/dist-es/packages/lab/src/overlay/Overlay.js +4 -4
  535. package/dist-es/packages/lab/src/overlay/Overlay.js.map +1 -1
  536. package/dist-es/packages/lab/src/overlay/useOverlay.js +2 -3
  537. package/dist-es/packages/lab/src/overlay/useOverlay.js.map +1 -1
  538. package/dist-es/packages/lab/src/pagination/ArrowButton.js +2 -2
  539. package/dist-es/packages/lab/src/pagination/ArrowButton.js.map +1 -1
  540. package/dist-es/packages/lab/src/pagination/CompactInput.js +3 -3
  541. package/dist-es/packages/lab/src/pagination/CompactInput.js.map +1 -1
  542. package/dist-es/packages/lab/src/pagination/GoToInput.js +3 -3
  543. package/dist-es/packages/lab/src/pagination/GoToInput.js.map +1 -1
  544. package/dist-es/packages/lab/src/pagination/PageButton.js +2 -2
  545. package/dist-es/packages/lab/src/pagination/PageButton.js.map +1 -1
  546. package/dist-es/packages/lab/src/pagination/Pagination.js +2 -2
  547. package/dist-es/packages/lab/src/pagination/Pagination.js.map +1 -1
  548. package/dist-es/packages/lab/src/pagination/Paginator.js +2 -2
  549. package/dist-es/packages/lab/src/pagination/Paginator.js.map +1 -1
  550. package/dist-es/packages/lab/src/parent-child-item/ParentChildItem.js +2 -2
  551. package/dist-es/packages/lab/src/parent-child-item/ParentChildItem.js.map +1 -1
  552. package/dist-es/packages/lab/src/parent-child-layout/ParentChildLayout.js +3 -2
  553. package/dist-es/packages/lab/src/parent-child-layout/ParentChildLayout.js.map +1 -1
  554. package/dist-es/packages/lab/src/pill/ClosablePill.js +2 -2
  555. package/dist-es/packages/lab/src/pill/ClosablePill.js.map +1 -1
  556. package/dist-es/packages/lab/src/pill/PillBase.js +44 -60
  557. package/dist-es/packages/lab/src/pill/PillBase.js.map +1 -1
  558. package/dist-es/packages/lab/src/pill/SelectablePill.js +2 -2
  559. package/dist-es/packages/lab/src/pill/SelectablePill.js.map +1 -1
  560. package/dist-es/packages/lab/src/pill/internal/DeleteButton.js +2 -2
  561. package/dist-es/packages/lab/src/pill/internal/DeleteButton.js.map +1 -1
  562. package/dist-es/packages/lab/src/pill/internal/DivButton.js +2 -2
  563. package/dist-es/packages/lab/src/pill/internal/DivButton.js.map +1 -1
  564. package/dist-es/packages/lab/src/progress/CircularProgress/CircularProgress.js +4 -4
  565. package/dist-es/packages/lab/src/progress/CircularProgress/CircularProgress.js.map +1 -1
  566. package/dist-es/packages/lab/src/progress/LinearProgress/LinearProgress.js +5 -5
  567. package/dist-es/packages/lab/src/progress/LinearProgress/LinearProgress.js.map +1 -1
  568. package/dist-es/packages/lab/src/query-input/QueryInput.js +2 -2
  569. package/dist-es/packages/lab/src/query-input/QueryInput.js.map +1 -1
  570. package/dist-es/packages/lab/src/query-input/internal/CategoryList.js +1 -0
  571. package/dist-es/packages/lab/src/query-input/internal/CategoryList.js.map +1 -1
  572. package/dist-es/packages/lab/src/query-input/internal/CategoryListItem.js +1 -0
  573. package/dist-es/packages/lab/src/query-input/internal/CategoryListItem.js.map +1 -1
  574. package/dist-es/packages/lab/src/query-input/internal/QueryInputBody.js +1 -0
  575. package/dist-es/packages/lab/src/query-input/internal/QueryInputBody.js.map +1 -1
  576. package/dist-es/packages/lab/src/query-input/internal/SearchList.js +1 -0
  577. package/dist-es/packages/lab/src/query-input/internal/SearchList.js.map +1 -1
  578. package/dist-es/packages/lab/src/query-input/internal/ValueList.js +1 -0
  579. package/dist-es/packages/lab/src/query-input/internal/ValueList.js.map +1 -1
  580. package/dist-es/packages/lab/src/query-input/internal/ValueSelector.js +2 -3
  581. package/dist-es/packages/lab/src/query-input/internal/ValueSelector.js.map +1 -1
  582. package/dist-es/packages/lab/src/query-input/useQueryInput.js +1 -0
  583. package/dist-es/packages/lab/src/query-input/useQueryInput.js.map +1 -1
  584. package/dist-es/packages/lab/src/radio-button/RadioButton.js +3 -3
  585. package/dist-es/packages/lab/src/radio-button/RadioButton.js.map +1 -1
  586. package/dist-es/packages/lab/src/radio-button/RadioButtonBase.js +2 -2
  587. package/dist-es/packages/lab/src/radio-button/RadioButtonBase.js.map +1 -1
  588. package/dist-es/packages/lab/src/radio-button/RadioButtonGroup.js +3 -3
  589. package/dist-es/packages/lab/src/radio-button/RadioButtonGroup.js.map +1 -1
  590. package/dist-es/packages/lab/src/radio-button/RadioButtonIcon.js +2 -2
  591. package/dist-es/packages/lab/src/radio-button/RadioButtonIcon.js.map +1 -1
  592. package/dist-es/packages/lab/src/responsive/useOverflow.js +1 -0
  593. package/dist-es/packages/lab/src/responsive/useOverflow.js.map +1 -1
  594. package/dist-es/packages/lab/src/responsive/useResizeObserver.js +6 -3
  595. package/dist-es/packages/lab/src/responsive/useResizeObserver.js.map +1 -1
  596. package/dist-es/packages/lab/src/scrim/Scrim.js +2 -2
  597. package/dist-es/packages/lab/src/scrim/Scrim.js.map +1 -1
  598. package/dist-es/packages/lab/src/search-input/SearchInput.js +3 -3
  599. package/dist-es/packages/lab/src/search-input/SearchInput.js.map +1 -1
  600. package/dist-es/packages/lab/src/skip-link/SkipLink.js +3 -3
  601. package/dist-es/packages/lab/src/skip-link/SkipLink.js.map +1 -1
  602. package/dist-es/packages/lab/src/skip-link/SkipLinks.js +2 -2
  603. package/dist-es/packages/lab/src/skip-link/SkipLinks.js.map +1 -1
  604. package/dist-es/packages/lab/src/slider/Slider.js +2 -2
  605. package/dist-es/packages/lab/src/slider/Slider.js.map +1 -1
  606. package/dist-es/packages/lab/src/slider/internal/SliderHandle.js +20 -29
  607. package/dist-es/packages/lab/src/slider/internal/SliderHandle.js.map +1 -1
  608. package/dist-es/packages/lab/src/slider/internal/SliderRailMarks.js +2 -2
  609. package/dist-es/packages/lab/src/slider/internal/SliderRailMarks.js.map +1 -1
  610. package/dist-es/packages/lab/src/stepper-input/StepperInput.js +5 -5
  611. package/dist-es/packages/lab/src/stepper-input/StepperInput.js.map +1 -1
  612. package/dist-es/packages/lab/src/switch/Switch.js +4 -4
  613. package/dist-es/packages/lab/src/switch/Switch.js.map +1 -1
  614. package/dist-es/packages/lab/src/tabs/Tab.js +2 -2
  615. package/dist-es/packages/lab/src/tabs/Tab.js.map +1 -1
  616. package/dist-es/packages/lab/src/tabs/TabPanel.js +2 -2
  617. package/dist-es/packages/lab/src/tabs/TabPanel.js.map +1 -1
  618. package/dist-es/packages/lab/src/tabs/Tabs.js +2 -2
  619. package/dist-es/packages/lab/src/tabs/Tabs.js.map +1 -1
  620. package/dist-es/packages/lab/src/tabs/Tabstrip.js +38 -48
  621. package/dist-es/packages/lab/src/tabs/Tabstrip.js.map +1 -1
  622. package/dist-es/packages/lab/src/tabs/drag-drop/Draggable.js +2 -2
  623. package/dist-es/packages/lab/src/tabs/drag-drop/Draggable.js.map +1 -1
  624. package/dist-es/packages/lab/src/tabs/useActivationIndicator.js +1 -0
  625. package/dist-es/packages/lab/src/tabs/useActivationIndicator.js.map +1 -1
  626. package/dist-es/packages/lab/src/tabs/useKeyboardNavigation.js +1 -0
  627. package/dist-es/packages/lab/src/tabs/useKeyboardNavigation.js.map +1 -1
  628. package/dist-es/packages/lab/src/toggle-button/ToggleButton.js +10 -30
  629. package/dist-es/packages/lab/src/toggle-button/ToggleButton.js.map +1 -1
  630. package/dist-es/packages/lab/src/toggle-button/ToggleButtonGroup.js +2 -2
  631. package/dist-es/packages/lab/src/toggle-button/ToggleButtonGroup.js.map +1 -1
  632. package/dist-es/packages/lab/src/tokenized-input/TokenizedInput.js.map +1 -1
  633. package/dist-es/packages/lab/src/tokenized-input/TokenizedInputBase.js +7 -11
  634. package/dist-es/packages/lab/src/tokenized-input/TokenizedInputBase.js.map +1 -1
  635. package/dist-es/packages/lab/src/tokenized-input/internal/InputPill.js +2 -2
  636. package/dist-es/packages/lab/src/tokenized-input/internal/InputPill.js.map +1 -1
  637. package/dist-es/packages/lab/src/tokenized-input/useTokenizedInput.js +1 -0
  638. package/dist-es/packages/lab/src/tokenized-input/useTokenizedInput.js.map +1 -1
  639. package/dist-es/packages/lab/src/toolbar/Toolbar.js +5 -4
  640. package/dist-es/packages/lab/src/toolbar/Toolbar.js.map +1 -1
  641. package/dist-es/packages/lab/src/toolbar/Tooltray.js +4 -4
  642. package/dist-es/packages/lab/src/toolbar/Tooltray.js.map +1 -1
  643. package/dist-es/packages/lab/src/toolbar/internal/renderToolbarItems.js +1 -0
  644. package/dist-es/packages/lab/src/toolbar/internal/renderToolbarItems.js.map +1 -1
  645. package/dist-es/packages/lab/src/toolbar/overflow-panel/OverflowPanel.js +3 -2
  646. package/dist-es/packages/lab/src/toolbar/overflow-panel/OverflowPanel.js.map +1 -1
  647. package/dist-es/packages/lab/src/toolbar/overflow-panel/OverflowSeparator.js +2 -2
  648. package/dist-es/packages/lab/src/toolbar/overflow-panel/OverflowSeparator.js.map +1 -1
  649. package/dist-es/packages/lab/src/toolbar/toolbar-field/useToolbarField.js +3 -3
  650. package/dist-es/packages/lab/src/toolbar/toolbar-field/useToolbarField.js.map +1 -1
  651. package/dist-es/packages/lab/src/tree/Tree.js +5 -4
  652. package/dist-es/packages/lab/src/tree/Tree.js.map +1 -1
  653. package/dist-es/packages/lab/src/tree/TreeNode.js +2 -2
  654. package/dist-es/packages/lab/src/tree/TreeNode.js.map +1 -1
  655. package/dist-es/packages/lab/src/tree/useTree.js +2 -1
  656. package/dist-es/packages/lab/src/tree/useTree.js.map +1 -1
  657. package/dist-es/packages/lab/src/{popper → utils}/useFloatingUI.js +10 -9
  658. package/dist-es/packages/lab/src/utils/useFloatingUI.js.map +1 -0
  659. package/dist-es/packages/lab/src/utils/useIsViewportLargerThanBreakpoint.js +1 -2
  660. package/dist-es/packages/lab/src/utils/useIsViewportLargerThanBreakpoint.js.map +1 -1
  661. package/dist-types/breadcrumbs/Breadcrumb.d.ts +1 -1
  662. package/dist-types/calendar/internal/CalendarCarousel.d.ts +1 -1
  663. package/dist-types/calendar/internal/CalendarDay.d.ts +2 -2
  664. package/dist-types/calendar/internal/CalendarMonth.d.ts +1 -1
  665. package/dist-types/calendar/internal/CalendarNavigation.d.ts +1 -1
  666. package/dist-types/calendar/internal/CalendarWeekHeader.d.ts +2 -2
  667. package/dist-types/calendar/useCalendar.d.ts +1 -1
  668. package/dist-types/calendar/useCalendarDay.d.ts +1 -1
  669. package/dist-types/cascading-menu/CascadingMenuList.d.ts +1 -1
  670. package/dist-types/cascading-menu/CascadingMenuProps.d.ts +1 -1
  671. package/dist-types/combo-box-deprecated/internal/DefaultComboBox.d.ts +1 -3
  672. package/dist-types/combo-box-deprecated/internal/useComboBox.d.ts +10 -11
  673. package/dist-types/combo-box-deprecated/internal/useMultiSelectComboBox.d.ts +27 -22
  674. package/dist-types/contact-details/ContactAction.d.ts +1 -2
  675. package/dist-types/contact-details/ContactFavoriteToggle.d.ts +1 -1
  676. package/dist-types/contact-details/internal/FavoriteToggleWithTooltip.d.ts +1 -1
  677. package/dist-types/content-status/internal/StatusIndicator.d.ts +1 -2
  678. package/dist-types/form-field/StatusIndicator.d.ts +1 -1
  679. package/dist-types/index.d.ts +0 -6
  680. package/dist-types/layer-layout/LayerLayout.d.ts +1 -1
  681. package/dist-types/list-deprecated/ListProps.d.ts +0 -5
  682. package/dist-types/overlay/Overlay.d.ts +1 -1
  683. package/dist-types/overlay/useOverlay.d.ts +2 -2
  684. package/dist-types/pill/PillBase.d.ts +1 -1
  685. package/dist-types/skip-link/SkipLink.d.ts +1 -1
  686. package/dist-types/stepper-input/useStepperInput.d.ts +13 -10
  687. package/dist-types/tabs/Tab.d.ts +1 -1
  688. package/dist-types/tabs/drag-drop/drag-utils.d.ts +8 -8
  689. package/dist-types/tokenized-input/TokenizedInput.d.ts +1 -1
  690. package/dist-types/toolbar/ToolbarProps.d.ts +1 -1
  691. package/dist-types/utils/index.d.ts +1 -0
  692. package/dist-types/utils/useFloatingUI.d.ts +34 -0
  693. package/dist-types/window/ElectronWindow.d.ts +1 -1
  694. package/dist-types/window/WindowContext.d.ts +3 -3
  695. package/package.json +6 -6
  696. package/dist-cjs/packages/lab/src/card/Card.css.js +0 -9
  697. package/dist-cjs/packages/lab/src/card/Card.css.js.map +0 -1
  698. package/dist-cjs/packages/lab/src/card/Card.js +0 -37
  699. package/dist-cjs/packages/lab/src/card/Card.js.map +0 -1
  700. package/dist-cjs/packages/lab/src/panel/Panel.css.js +0 -9
  701. package/dist-cjs/packages/lab/src/panel/Panel.css.js.map +0 -1
  702. package/dist-cjs/packages/lab/src/panel/Panel.js +0 -28
  703. package/dist-cjs/packages/lab/src/panel/Panel.js.map +0 -1
  704. package/dist-cjs/packages/lab/src/popper/useFloatingUI.js +0 -37
  705. package/dist-cjs/packages/lab/src/popper/useFloatingUI.js.map +0 -1
  706. package/dist-cjs/packages/lab/src/spinner/Spinner.css.js +0 -9
  707. package/dist-cjs/packages/lab/src/spinner/Spinner.css.js.map +0 -1
  708. package/dist-cjs/packages/lab/src/spinner/Spinner.js +0 -80
  709. package/dist-cjs/packages/lab/src/spinner/Spinner.js.map +0 -1
  710. package/dist-cjs/packages/lab/src/spinner/svgSpinners/SpinnerLarge.js +0 -71
  711. package/dist-cjs/packages/lab/src/spinner/svgSpinners/SpinnerLarge.js.map +0 -1
  712. package/dist-cjs/packages/lab/src/spinner/svgSpinners/SpinnerMedium.js +0 -71
  713. package/dist-cjs/packages/lab/src/spinner/svgSpinners/SpinnerMedium.js.map +0 -1
  714. package/dist-cjs/packages/lab/src/spinner/svgSpinners/SpinnerSmall.js +0 -71
  715. package/dist-cjs/packages/lab/src/spinner/svgSpinners/SpinnerSmall.js.map +0 -1
  716. package/dist-cjs/packages/lab/src/spinner/svgSpinners/index.js +0 -21
  717. package/dist-cjs/packages/lab/src/spinner/svgSpinners/index.js.map +0 -1
  718. package/dist-cjs/packages/lab/src/split-layout/SplitLayout.css.js +0 -9
  719. package/dist-cjs/packages/lab/src/split-layout/SplitLayout.css.js.map +0 -1
  720. package/dist-cjs/packages/lab/src/split-layout/SplitLayout.js +0 -40
  721. package/dist-cjs/packages/lab/src/split-layout/SplitLayout.js.map +0 -1
  722. package/dist-cjs/packages/lab/src/tooltip/Tooltip.css.js +0 -9
  723. package/dist-cjs/packages/lab/src/tooltip/Tooltip.css.js.map +0 -1
  724. package/dist-cjs/packages/lab/src/tooltip/Tooltip.js +0 -88
  725. package/dist-cjs/packages/lab/src/tooltip/Tooltip.js.map +0 -1
  726. package/dist-cjs/packages/lab/src/tooltip/TooltipContext.js +0 -26
  727. package/dist-cjs/packages/lab/src/tooltip/TooltipContext.js.map +0 -1
  728. package/dist-cjs/packages/lab/src/tooltip/useAriaAnnounce.js +0 -87
  729. package/dist-cjs/packages/lab/src/tooltip/useAriaAnnounce.js.map +0 -1
  730. package/dist-cjs/packages/lab/src/tooltip/useTooltip.js +0 -137
  731. package/dist-cjs/packages/lab/src/tooltip/useTooltip.js.map +0 -1
  732. package/dist-es/packages/lab/src/card/Card.css.js +0 -7
  733. package/dist-es/packages/lab/src/card/Card.css.js.map +0 -1
  734. package/dist-es/packages/lab/src/card/Card.js +0 -29
  735. package/dist-es/packages/lab/src/card/Card.js.map +0 -1
  736. package/dist-es/packages/lab/src/panel/Panel.css.js +0 -7
  737. package/dist-es/packages/lab/src/panel/Panel.css.js.map +0 -1
  738. package/dist-es/packages/lab/src/panel/Panel.js +0 -20
  739. package/dist-es/packages/lab/src/panel/Panel.js.map +0 -1
  740. package/dist-es/packages/lab/src/popper/useFloatingUI.js.map +0 -1
  741. package/dist-es/packages/lab/src/spinner/Spinner.css.js +0 -7
  742. package/dist-es/packages/lab/src/spinner/Spinner.css.js.map +0 -1
  743. package/dist-es/packages/lab/src/spinner/Spinner.js +0 -71
  744. package/dist-es/packages/lab/src/spinner/Spinner.js.map +0 -1
  745. package/dist-es/packages/lab/src/spinner/svgSpinners/SpinnerLarge.js +0 -67
  746. package/dist-es/packages/lab/src/spinner/svgSpinners/SpinnerLarge.js.map +0 -1
  747. package/dist-es/packages/lab/src/spinner/svgSpinners/SpinnerMedium.js +0 -67
  748. package/dist-es/packages/lab/src/spinner/svgSpinners/SpinnerMedium.js.map +0 -1
  749. package/dist-es/packages/lab/src/spinner/svgSpinners/SpinnerSmall.js +0 -67
  750. package/dist-es/packages/lab/src/spinner/svgSpinners/SpinnerSmall.js.map +0 -1
  751. package/dist-es/packages/lab/src/spinner/svgSpinners/index.js +0 -17
  752. package/dist-es/packages/lab/src/spinner/svgSpinners/index.js.map +0 -1
  753. package/dist-es/packages/lab/src/split-layout/SplitLayout.css.js +0 -7
  754. package/dist-es/packages/lab/src/split-layout/SplitLayout.css.js.map +0 -1
  755. package/dist-es/packages/lab/src/split-layout/SplitLayout.js +0 -36
  756. package/dist-es/packages/lab/src/split-layout/SplitLayout.js.map +0 -1
  757. package/dist-es/packages/lab/src/tooltip/Tooltip.css.js +0 -7
  758. package/dist-es/packages/lab/src/tooltip/Tooltip.css.js.map +0 -1
  759. package/dist-es/packages/lab/src/tooltip/Tooltip.js +0 -80
  760. package/dist-es/packages/lab/src/tooltip/Tooltip.js.map +0 -1
  761. package/dist-es/packages/lab/src/tooltip/TooltipContext.js +0 -21
  762. package/dist-es/packages/lab/src/tooltip/TooltipContext.js.map +0 -1
  763. package/dist-es/packages/lab/src/tooltip/useAriaAnnounce.js +0 -83
  764. package/dist-es/packages/lab/src/tooltip/useAriaAnnounce.js.map +0 -1
  765. package/dist-es/packages/lab/src/tooltip/useTooltip.js +0 -133
  766. package/dist-es/packages/lab/src/tooltip/useTooltip.js.map +0 -1
  767. package/dist-types/card/Card.d.ts +0 -18
  768. package/dist-types/card/index.d.ts +0 -1
  769. package/dist-types/panel/Panel.d.ts +0 -20
  770. package/dist-types/panel/index.d.ts +0 -1
  771. package/dist-types/popper/index.d.ts +0 -1
  772. package/dist-types/popper/useFloatingUI.d.ts +0 -5
  773. package/dist-types/spinner/Spinner.d.ts +0 -45
  774. package/dist-types/spinner/index.d.ts +0 -1
  775. package/dist-types/spinner/svgSpinners/SpinnerLarge.d.ts +0 -2
  776. package/dist-types/spinner/svgSpinners/SpinnerMedium.d.ts +0 -2
  777. package/dist-types/spinner/svgSpinners/SpinnerSmall.d.ts +0 -2
  778. package/dist-types/spinner/svgSpinners/index.d.ts +0 -2
  779. package/dist-types/split-layout/SplitLayout.d.ts +0 -32
  780. package/dist-types/split-layout/index.d.ts +0 -1
  781. package/dist-types/tooltip/Tooltip.d.ts +0 -37
  782. package/dist-types/tooltip/TooltipContext.d.ts +0 -22
  783. package/dist-types/tooltip/index.d.ts +0 -3
  784. package/dist-types/tooltip/useAriaAnnounce.d.ts +0 -9
  785. package/dist-types/tooltip/useTooltip.d.ts +0 -31
@@ -19,6 +19,7 @@ var isPlainObject = require('./utils/isPlainObject.js');
19
19
  var partition = require('./utils/partition.js');
20
20
  var useClickOutside = require('./utils/useClickOutside.js');
21
21
  var useEventCallback = require('./utils/useEventCallback.js');
22
+ var useFloatingUI = require('./utils/useFloatingUI.js');
22
23
  var useIsViewportLargerThanBreakpoint = require('./utils/useIsViewportLargerThanBreakpoint.js');
23
24
  var useLayoutEffectOnce = require('./utils/useLayoutEffectOnce.js');
24
25
  var useLayoutEffectSkipFirst = require('./utils/useLayoutEffectSkipFirst.js');
@@ -41,7 +42,6 @@ var Calendar = require('./calendar/Calendar.js');
41
42
  var useCalendarDay = require('./calendar/useCalendarDay.js');
42
43
  var useCalendar = require('./calendar/useCalendar.js');
43
44
  var useSelection = require('./calendar/useSelection.js');
44
- var Card = require('./card/Card.js');
45
45
  var Carousel = require('./carousel/Carousel.js');
46
46
  var CarouselSlide = require('./carousel/CarouselSlide.js');
47
47
  var CascadingMenu = require('./cascading-menu/CascadingMenu.js');
@@ -115,13 +115,11 @@ var useOverlay = require('./overlay/useOverlay.js');
115
115
  var Pagination = require('./pagination/Pagination.js');
116
116
  var Paginator = require('./pagination/Paginator.js');
117
117
  var GoToInput = require('./pagination/GoToInput.js');
118
- var Panel = require('./panel/Panel.js');
119
118
  var ParentChildItem = require('./parent-child-item/ParentChildItem.js');
120
119
  var ParentChildLayout = require('./parent-child-layout/ParentChildLayout.js');
121
120
  var Pill = require('./pill/Pill.js');
122
121
  var ClosablePill = require('./pill/ClosablePill.js');
123
122
  var SelectablePill = require('./pill/SelectablePill.js');
124
- var useFloatingUI = require('./popper/useFloatingUI.js');
125
123
  var Portal = require('./portal/Portal.js');
126
124
  var CircularProgress = require('./progress/CircularProgress/CircularProgress.js');
127
125
  var LinearProgress = require('./progress/LinearProgress/LinearProgress.js');
@@ -147,8 +145,6 @@ var SearchInput = require('./search-input/SearchInput.js');
147
145
  var SkipLink = require('./skip-link/SkipLink.js');
148
146
  var SkipLinks = require('./skip-link/SkipLinks.js');
149
147
  var Slider = require('./slider/Slider.js');
150
- var Spinner = require('./spinner/Spinner.js');
151
- var SplitLayout = require('./split-layout/SplitLayout.js');
152
148
  var useStepperInput = require('./stepper-input/useStepperInput.js');
153
149
  var StepperInput = require('./stepper-input/StepperInput.js');
154
150
  var Switch = require('./switch/Switch.js');
@@ -166,9 +162,6 @@ var Toolbar = require('./toolbar/Toolbar.js');
166
162
  var Tooltray = require('./toolbar/Tooltray.js');
167
163
  var ToolbarButton = require('./toolbar/ToolbarButton.js');
168
164
  var ToolbarField = require('./toolbar/toolbar-field/ToolbarField.js');
169
- var Tooltip = require('./tooltip/Tooltip.js');
170
- var TooltipContext = require('./tooltip/TooltipContext.js');
171
- var useTooltip = require('./tooltip/useTooltip.js');
172
165
  var Tree = require('./tree/Tree.js');
173
166
  var WindowContext = require('./window/WindowContext.js');
174
167
  var ElectronWindow = require('./window/ElectronWindow.js');
@@ -185,6 +178,8 @@ exports.isPlainObject = isPlainObject.isPlainObject;
185
178
  exports.partition = partition.partition;
186
179
  exports.useClickOutside = useClickOutside.useClickOutside;
187
180
  exports.useEventCallback = useEventCallback.useEventCallback;
181
+ exports.DEFAULT_FLOATING_UI_MIDDLEWARE = useFloatingUI.DEFAULT_FLOATING_UI_MIDDLEWARE;
182
+ exports.useFloatingUI = useFloatingUI.useFloatingUI;
188
183
  exports.useIsViewportLargerThanBreakpoint = useIsViewportLargerThanBreakpoint.useIsViewportLargerThanBreakpoint;
189
184
  exports.useLayoutEffectOnce = useLayoutEffectOnce.useLayoutEffectOnce;
190
185
  exports.useLayoutEffectSkipFirst = useLayoutEffectSkipFirst.useLayoutEffectSkipFirst;
@@ -210,7 +205,6 @@ exports.useCalendarDay = useCalendarDay.useCalendarDay;
210
205
  exports.useCalendar = useCalendar.useCalendar;
211
206
  exports.useSelectionCalendar = useSelection.useSelectionCalendar;
212
207
  exports.useSelectionDay = useSelection.useSelectionDay;
213
- exports.Card = Card.Card;
214
208
  exports.Carousel = Carousel.Carousel;
215
209
  exports.CarouselSlide = CarouselSlide.CarouselSlide;
216
210
  exports.CascadingMenu = CascadingMenu.CascadingMenu;
@@ -296,14 +290,11 @@ exports.useOverlay = useOverlay.useOverlay;
296
290
  exports.Pagination = Pagination.Pagination;
297
291
  exports.Paginator = Paginator.Paginator;
298
292
  exports.GoToInput = GoToInput.GoToInput;
299
- exports.Panel = Panel.Panel;
300
293
  exports.ParentChildItem = ParentChildItem.ParentChildItem;
301
294
  exports.ParentChildLayout = ParentChildLayout.ParentChildLayout;
302
295
  exports.Pill = Pill.Pill;
303
296
  exports.ClosablePill = ClosablePill.ClosablePill;
304
297
  exports.SelectablePill = SelectablePill.SelectablePill;
305
- exports.DEFAULT_FLOATING_UI_MIDDLEWARE = useFloatingUI.DEFAULT_FLOATING_UI_MIDDLEWARE;
306
- exports.useFloatingUI = useFloatingUI.useFloatingUI;
307
298
  exports.Portal = Portal.Portal;
308
299
  exports.CircularProgress = CircularProgress.CircularProgress;
309
300
  exports.SIZE_OPTIONS = CircularProgress.SIZE_OPTIONS;
@@ -356,9 +347,6 @@ exports.SearchInput = SearchInput.SearchInput;
356
347
  exports.SkipLink = SkipLink.SkipLink;
357
348
  exports.SkipLinks = SkipLinks.SkipLinks;
358
349
  exports.Slider = Slider.Slider;
359
- exports.Spinner = Spinner.Spinner;
360
- exports.SpinnerSizeValues = Spinner.SpinnerSizeValues;
361
- exports.SplitLayout = SplitLayout.SplitLayout;
362
350
  exports.useStepperInput = useStepperInput.useStepperInput;
363
351
  exports.StepperInput = StepperInput.StepperInput;
364
352
  exports.Switch = Switch.Switch;
@@ -376,10 +364,6 @@ exports.Toolbar = Toolbar.Toolbar;
376
364
  exports.Tooltray = Tooltray.Tooltray;
377
365
  exports.ToolbarButton = ToolbarButton.ToolbarButton;
378
366
  exports.ToolbarField = ToolbarField.ToolbarField;
379
- exports.Tooltip = Tooltip.Tooltip;
380
- exports.TooltipContext = TooltipContext.TooltipContext;
381
- exports.useTooltipContext = TooltipContext.useTooltipContext;
382
- exports.useTooltip = useTooltip.useTooltip;
383
367
  exports.Tree = Tree.Tree;
384
368
  exports.Window = WindowContext.Window;
385
369
  exports.WindowContext = WindowContext.WindowContext;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
- var cx = require('classnames');
6
+ var clsx = require('clsx');
7
7
  var React = require('react');
8
8
  var core = require('@salt-ds/core');
9
9
  require('../form-field-context/FormFieldContext.js');
@@ -11,13 +11,9 @@ var useFormFieldProps = require('../form-field-context/useFormFieldProps.js');
11
11
  var useCursorOnFocus = require('./useCursorOnFocus.js');
12
12
  require('./Input.css.js');
13
13
 
14
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
15
-
16
- var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
17
-
18
14
  const withBaseName = core.makePrefixer("saltInput");
19
15
  function mergeA11yProps(a11yProps = {}, inputProps = {}, misplacedAriaProps) {
20
- const ariaLabelledBy = cx__default["default"](
16
+ const ariaLabelledBy = clsx.clsx(
21
17
  a11yProps["aria-labelledby"],
22
18
  inputProps["aria-labelledby"]
23
19
  );
@@ -125,7 +121,7 @@ const Input = React.forwardRef(function Input2({
125
121
  onMouseDown == null ? void 0 : onMouseDown(event);
126
122
  };
127
123
  return /* @__PURE__ */ jsxRuntime.jsxs("div", {
128
- className: cx__default["default"](
124
+ className: clsx.clsx(
129
125
  withBaseName(),
130
126
  {
131
127
  [withBaseName(`${textAlign}TextAlign`)]: textAlign,
@@ -148,7 +144,7 @@ const Input = React.forwardRef(function Input2({
148
144
  type,
149
145
  id,
150
146
  ...inputProps,
151
- className: cx__default["default"](withBaseName("input"), inputProps == null ? void 0 : inputProps.className),
147
+ className: clsx.clsx(withBaseName("input"), inputProps == null ? void 0 : inputProps.className),
152
148
  disabled: isDisabled,
153
149
  ref: handleRef,
154
150
  value,
@@ -1 +1 @@
1
- {"version":3,"file":"Input.js","sources":["../src/input/Input.tsx"],"sourcesContent":["import cx from \"classnames\";\nimport {\n AriaAttributes,\n ChangeEvent,\n ElementType,\n FocusEvent,\n FocusEventHandler,\n forwardRef,\n HTMLAttributes,\n InputHTMLAttributes,\n KeyboardEventHandler,\n MouseEvent,\n MouseEventHandler,\n ReactNode,\n useRef,\n useState,\n} from \"react\";\nimport { makePrefixer, useControlled, useForkRef } from \"@salt-ds/core\";\nimport { useFormFieldProps } from \"../form-field-context\";\nimport { useCursorOnFocus } from \"./useCursorOnFocus\";\n\nimport \"./Input.css\";\n\nconst withBaseName = makePrefixer(\"saltInput\");\n\n// TODO: Double confirm whether this should be extending DivElement given root is `<div>`.\n// And forwarded ref is not assigned to the root like other components.\nexport interface InputProps\n extends Omit<HTMLAttributes<HTMLDivElement>, \"onChange\" | \"defaultValue\"> {\n /**\n * Determines the position of the text cursor on focus of the input.\n *\n * start = place cursor at the beginning<br>\n * end = place cursor at the end<br>\n * \\# = index to place the cursor<br>\n */\n cursorPositionOnFocus?: \"start\" | \"end\" | number;\n /**\n * The value of the `input` element, required for an uncontrolled component.\n */\n defaultValue?: HTMLInputElement[\"defaultValue\"];\n /**\n * If `true`, the component is disabled.\n */\n disabled?: HTMLInputElement[\"disabled\"];\n /**\n * The marker to use in an empty read only Input.\n * Use `''` to disable this feature. Defaults to '—'.\n */\n emptyReadOnlyMarker?: string;\n /**\n * Determines what gets highlighted on focus of the input.\n *\n * If `true` all text will be highlighted.\n * If an array text between those indices will be highlighted\n * e.g. [0,1] will highlight the first character.\n */\n highlightOnFocus?: boolean | number[];\n /**\n * The HTML element to render the Input, e.g. 'input', a custom React component.\n */\n inputComponent?: ElementType;\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps?: InputHTMLAttributes<HTMLInputElement>;\n onBlur?: FocusEventHandler<HTMLInputElement>;\n /**\n * Callback for change event.\n */\n onChange?: (event: ChangeEvent<HTMLInputElement>, value: string) => void;\n onFocus?: FocusEventHandler<HTMLInputElement>;\n onKeyDown?: KeyboardEventHandler<HTMLInputElement>;\n onKeyUp?: KeyboardEventHandler<HTMLInputElement>;\n onMouseUp?: MouseEventHandler<HTMLInputElement>;\n onMouseMove?: MouseEventHandler<HTMLInputElement>;\n onMouseDown?: MouseEventHandler<HTMLInputElement>;\n /**\n * If `true`, the component is read only.\n */\n readOnly?: boolean;\n /**\n *\n * Determines the alignment of the input text.\n */\n textAlign?: \"left\" | \"right\" | \"center\";\n type?: HTMLInputElement[\"type\"];\n /**\n * The value of the `input` element, required for a controlled component.\n */\n value?: HTMLInputElement[\"value\"];\n renderSuffix?: (state: {\n disabled?: boolean;\n error?: boolean;\n focused?: boolean;\n margin?: \"dense\" | \"none\" | \"normal\";\n required?: boolean;\n startAdornment?: ReactNode;\n }) => ReactNode;\n endAdornment?: ReactNode;\n startAdornment?: ReactNode;\n}\n\nfunction mergeA11yProps(\n a11yProps: Partial<ReturnType<typeof useFormFieldProps>[\"a11yProps\"]> = {},\n inputProps: InputProps[\"inputProps\"] = {},\n misplacedAriaProps: AriaAttributes\n) {\n const ariaLabelledBy = cx(\n a11yProps[\"aria-labelledby\"],\n inputProps[\"aria-labelledby\"]\n );\n\n return {\n ...misplacedAriaProps,\n ...a11yProps,\n ...inputProps,\n // The weird filtering is due to TokenizedInputBase\n \"aria-labelledby\": ariaLabelledBy\n ? Array.from(new Set(ariaLabelledBy.split(\" \"))).join(\" \")\n : null,\n };\n}\n\nexport const Input = forwardRef<HTMLInputElement, InputProps>(function Input(\n {\n \"aria-activedescendant\": ariaActiveDescendant,\n \"aria-expanded\": ariaExpanded,\n \"aria-owns\": ariaOwns,\n className: classNameProp,\n cursorPositionOnFocus,\n disabled,\n emptyReadOnlyMarker = \"—\",\n endAdornment,\n highlightOnFocus,\n id,\n inputComponent: InputComponent = \"input\",\n inputProps: inputPropsProp,\n role,\n style,\n value: valueProp,\n // If we leave both value and defaultValue undefined, we will get a React warning on first edit\n // (uncontrolled to controlled warning) from the React input\n defaultValue: defaultValueProp = valueProp === undefined ? \"\" : undefined,\n onBlur,\n onChange,\n onFocus,\n onKeyDown,\n onKeyUp,\n onMouseUp,\n onMouseMove,\n onMouseDown,\n readOnly: readOnlyProp,\n renderSuffix,\n startAdornment,\n textAlign = \"left\",\n type = \"text\",\n ...other\n },\n ref\n) {\n const {\n a11yProps: {\n readOnly: a11yReadOnly,\n disabled: a11yDisabled,\n ...restA11y\n } = {},\n setFocused: setFormFieldFocused,\n inFormField,\n } = useFormFieldProps();\n\n const [focused, setFocused] = useState(false);\n const inputRef = useRef(null);\n const handleRef = useForkRef(inputRef, ref);\n const cursorOnFocusHelpers = useCursorOnFocus(inputRef, {\n cursorPositionOnFocus,\n highlightOnFocus,\n });\n\n const isDisabled = disabled || a11yDisabled;\n const isReadOnly = readOnlyProp || a11yReadOnly;\n const misplacedAriaProps = {\n \"aria-activedescendant\": ariaActiveDescendant,\n \"aria-expanded\": ariaExpanded,\n \"aria-owns\": ariaOwns,\n role,\n };\n const inputProps = mergeA11yProps(\n restA11y,\n inputPropsProp,\n misplacedAriaProps\n );\n const isEmptyReadOnly = isReadOnly && !defaultValueProp && !valueProp;\n const defaultValue = isEmptyReadOnly ? emptyReadOnlyMarker : defaultValueProp;\n\n const [value, setValue] = useControlled({\n controlled: valueProp,\n default: defaultValue,\n name: \"Input\",\n state: \"value\",\n });\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n const value = event.target.value;\n setValue(value);\n onChange?.(event, value);\n };\n\n const handleFocus = (event: FocusEvent<HTMLInputElement>) => {\n onFocus?.(event);\n setFormFieldFocused?.(true);\n setFocused(true);\n };\n\n const handleBlur = (event: FocusEvent<HTMLInputElement>) => {\n onBlur?.(event);\n setFormFieldFocused?.(false);\n setFocused(false);\n };\n\n const handleMouseMove = (event: MouseEvent<HTMLInputElement>) => {\n cursorOnFocusHelpers.handleMouseMove(event);\n\n onMouseMove?.(event);\n };\n\n const handleMouseUp = (event: MouseEvent<HTMLInputElement>) => {\n cursorOnFocusHelpers.handleMouseUp();\n\n onMouseUp?.(event);\n };\n\n const handleMouseDown = (event: MouseEvent<HTMLInputElement>) => {\n cursorOnFocusHelpers.handleMouseDown();\n\n onMouseDown?.(event);\n };\n\n return (\n <div\n className={cx(\n withBaseName(),\n {\n [withBaseName(`${textAlign}TextAlign`)]: textAlign,\n [withBaseName(\"formField\")]: inFormField,\n [withBaseName(\"focused\")]: focused && !inFormField,\n [withBaseName(\"disabled\")]: isDisabled,\n [withBaseName(\"inputAdornedStart\")]: startAdornment,\n [withBaseName(\"inputAdornedEnd\")]: endAdornment,\n },\n classNameProp\n )}\n style={style}\n {...other}\n >\n {startAdornment && (\n <div className={withBaseName(\"prefixContainer\")}>{startAdornment}</div>\n )}\n <InputComponent\n type={type}\n id={id}\n {...inputProps}\n className={cx(withBaseName(\"input\"), inputProps?.className)}\n disabled={isDisabled}\n ref={handleRef}\n value={value}\n onBlur={handleBlur}\n onChange={handleChange}\n onKeyDown={onKeyDown}\n onKeyUp={onKeyUp}\n onFocus={handleFocus}\n onMouseDown={handleMouseDown}\n onMouseUp={handleMouseUp}\n onMouseMove={handleMouseMove}\n readOnly={isReadOnly}\n />\n {endAdornment && (\n <div className={withBaseName(\"suffixContainer\")}>{endAdornment}</div>\n )}\n {/* TODO: Confirm implementation of suffix */}\n {renderSuffix?.({ disabled, focused })}\n </div>\n );\n});\n"],"names":["makePrefixer","cx","forwardRef","Input","useFormFieldProps","useState","useRef","useForkRef","useCursorOnFocus","useControlled","value","jsxs","jsx"],"mappings":"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"}
1
+ {"version":3,"file":"Input.js","sources":["../src/input/Input.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\nimport {\n AriaAttributes,\n ChangeEvent,\n ElementType,\n FocusEvent,\n FocusEventHandler,\n forwardRef,\n HTMLAttributes,\n InputHTMLAttributes,\n KeyboardEventHandler,\n MouseEvent,\n MouseEventHandler,\n ReactNode,\n useRef,\n useState,\n} from \"react\";\nimport { makePrefixer, useControlled, useForkRef } from \"@salt-ds/core\";\nimport { useFormFieldProps } from \"../form-field-context\";\nimport { useCursorOnFocus } from \"./useCursorOnFocus\";\n\nimport \"./Input.css\";\n\nconst withBaseName = makePrefixer(\"saltInput\");\n\n// TODO: Double confirm whether this should be extending DivElement given root is `<div>`.\n// And forwarded ref is not assigned to the root like other components.\nexport interface InputProps\n extends Omit<HTMLAttributes<HTMLDivElement>, \"onChange\" | \"defaultValue\"> {\n /**\n * Determines the position of the text cursor on focus of the input.\n *\n * start = place cursor at the beginning<br>\n * end = place cursor at the end<br>\n * \\# = index to place the cursor<br>\n */\n cursorPositionOnFocus?: \"start\" | \"end\" | number;\n /**\n * The value of the `input` element, required for an uncontrolled component.\n */\n defaultValue?: HTMLInputElement[\"defaultValue\"];\n /**\n * If `true`, the component is disabled.\n */\n disabled?: HTMLInputElement[\"disabled\"];\n /**\n * The marker to use in an empty read only Input.\n * Use `''` to disable this feature. Defaults to '—'.\n */\n emptyReadOnlyMarker?: string;\n /**\n * Determines what gets highlighted on focus of the input.\n *\n * If `true` all text will be highlighted.\n * If an array text between those indices will be highlighted\n * e.g. [0,1] will highlight the first character.\n */\n highlightOnFocus?: boolean | number[];\n /**\n * The HTML element to render the Input, e.g. 'input', a custom React component.\n */\n inputComponent?: ElementType;\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps?: InputHTMLAttributes<HTMLInputElement>;\n onBlur?: FocusEventHandler<HTMLInputElement>;\n /**\n * Callback for change event.\n */\n onChange?: (event: ChangeEvent<HTMLInputElement>, value: string) => void;\n onFocus?: FocusEventHandler<HTMLInputElement>;\n onKeyDown?: KeyboardEventHandler<HTMLInputElement>;\n onKeyUp?: KeyboardEventHandler<HTMLInputElement>;\n onMouseUp?: MouseEventHandler<HTMLInputElement>;\n onMouseMove?: MouseEventHandler<HTMLInputElement>;\n onMouseDown?: MouseEventHandler<HTMLInputElement>;\n /**\n * If `true`, the component is read only.\n */\n readOnly?: boolean;\n /**\n *\n * Determines the alignment of the input text.\n */\n textAlign?: \"left\" | \"right\" | \"center\";\n type?: HTMLInputElement[\"type\"];\n /**\n * The value of the `input` element, required for a controlled component.\n */\n value?: HTMLInputElement[\"value\"];\n renderSuffix?: (state: {\n disabled?: boolean;\n error?: boolean;\n focused?: boolean;\n margin?: \"dense\" | \"none\" | \"normal\";\n required?: boolean;\n startAdornment?: ReactNode;\n }) => ReactNode;\n endAdornment?: ReactNode;\n startAdornment?: ReactNode;\n}\n\nfunction mergeA11yProps(\n a11yProps: Partial<ReturnType<typeof useFormFieldProps>[\"a11yProps\"]> = {},\n inputProps: InputProps[\"inputProps\"] = {},\n misplacedAriaProps: AriaAttributes\n) {\n const ariaLabelledBy = clsx(\n a11yProps[\"aria-labelledby\"],\n inputProps[\"aria-labelledby\"]\n );\n\n return {\n ...misplacedAriaProps,\n ...a11yProps,\n ...inputProps,\n // The weird filtering is due to TokenizedInputBase\n \"aria-labelledby\": ariaLabelledBy\n ? Array.from(new Set(ariaLabelledBy.split(\" \"))).join(\" \")\n : null,\n };\n}\n\nexport const Input = forwardRef<HTMLInputElement, InputProps>(function Input(\n {\n \"aria-activedescendant\": ariaActiveDescendant,\n \"aria-expanded\": ariaExpanded,\n \"aria-owns\": ariaOwns,\n className: classNameProp,\n cursorPositionOnFocus,\n disabled,\n emptyReadOnlyMarker = \"—\",\n endAdornment,\n highlightOnFocus,\n id,\n inputComponent: InputComponent = \"input\",\n inputProps: inputPropsProp,\n role,\n style,\n value: valueProp,\n // If we leave both value and defaultValue undefined, we will get a React warning on first edit\n // (uncontrolled to controlled warning) from the React input\n defaultValue: defaultValueProp = valueProp === undefined ? \"\" : undefined,\n onBlur,\n onChange,\n onFocus,\n onKeyDown,\n onKeyUp,\n onMouseUp,\n onMouseMove,\n onMouseDown,\n readOnly: readOnlyProp,\n renderSuffix,\n startAdornment,\n textAlign = \"left\",\n type = \"text\",\n ...other\n },\n ref\n) {\n const {\n a11yProps: {\n readOnly: a11yReadOnly,\n disabled: a11yDisabled,\n ...restA11y\n } = {},\n setFocused: setFormFieldFocused,\n inFormField,\n } = useFormFieldProps();\n\n const [focused, setFocused] = useState(false);\n const inputRef = useRef(null);\n const handleRef = useForkRef(inputRef, ref);\n const cursorOnFocusHelpers = useCursorOnFocus(inputRef, {\n cursorPositionOnFocus,\n highlightOnFocus,\n });\n\n const isDisabled = disabled || a11yDisabled;\n const isReadOnly = readOnlyProp || a11yReadOnly;\n const misplacedAriaProps = {\n \"aria-activedescendant\": ariaActiveDescendant,\n \"aria-expanded\": ariaExpanded,\n \"aria-owns\": ariaOwns,\n role,\n };\n const inputProps = mergeA11yProps(\n restA11y,\n inputPropsProp,\n misplacedAriaProps\n );\n const isEmptyReadOnly = isReadOnly && !defaultValueProp && !valueProp;\n const defaultValue = isEmptyReadOnly ? emptyReadOnlyMarker : defaultValueProp;\n\n const [value, setValue] = useControlled({\n controlled: valueProp,\n default: defaultValue,\n name: \"Input\",\n state: \"value\",\n });\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n const value = event.target.value;\n setValue(value);\n onChange?.(event, value);\n };\n\n const handleFocus = (event: FocusEvent<HTMLInputElement>) => {\n onFocus?.(event);\n setFormFieldFocused?.(true);\n setFocused(true);\n };\n\n const handleBlur = (event: FocusEvent<HTMLInputElement>) => {\n onBlur?.(event);\n setFormFieldFocused?.(false);\n setFocused(false);\n };\n\n const handleMouseMove = (event: MouseEvent<HTMLInputElement>) => {\n cursorOnFocusHelpers.handleMouseMove(event);\n\n onMouseMove?.(event);\n };\n\n const handleMouseUp = (event: MouseEvent<HTMLInputElement>) => {\n cursorOnFocusHelpers.handleMouseUp();\n\n onMouseUp?.(event);\n };\n\n const handleMouseDown = (event: MouseEvent<HTMLInputElement>) => {\n cursorOnFocusHelpers.handleMouseDown();\n\n onMouseDown?.(event);\n };\n\n return (\n <div\n className={clsx(\n withBaseName(),\n {\n [withBaseName(`${textAlign}TextAlign`)]: textAlign,\n [withBaseName(\"formField\")]: inFormField,\n [withBaseName(\"focused\")]: focused && !inFormField,\n [withBaseName(\"disabled\")]: isDisabled,\n [withBaseName(\"inputAdornedStart\")]: startAdornment,\n [withBaseName(\"inputAdornedEnd\")]: endAdornment,\n },\n classNameProp\n )}\n style={style}\n {...other}\n >\n {startAdornment && (\n <div className={withBaseName(\"prefixContainer\")}>{startAdornment}</div>\n )}\n <InputComponent\n type={type}\n id={id}\n {...inputProps}\n className={clsx(withBaseName(\"input\"), inputProps?.className)}\n disabled={isDisabled}\n ref={handleRef}\n value={value}\n onBlur={handleBlur}\n onChange={handleChange}\n onKeyDown={onKeyDown}\n onKeyUp={onKeyUp}\n onFocus={handleFocus}\n onMouseDown={handleMouseDown}\n onMouseUp={handleMouseUp}\n onMouseMove={handleMouseMove}\n readOnly={isReadOnly}\n />\n {endAdornment && (\n <div className={withBaseName(\"suffixContainer\")}>{endAdornment}</div>\n )}\n {/* TODO: Confirm implementation of suffix */}\n {renderSuffix?.({ disabled, focused })}\n </div>\n );\n});\n"],"names":["makePrefixer","clsx","forwardRef","Input","useFormFieldProps","useState","useRef","useForkRef","useCursorOnFocus","useControlled","value","jsxs","jsx"],"mappings":"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"}
@@ -3,20 +3,16 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
- var cx = require('classnames');
6
+ var clsx = require('clsx');
7
7
  var React = require('react');
8
8
  var core = require('@salt-ds/core');
9
9
  require('./StaticInputAdornment.css.js');
10
10
 
11
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
12
-
13
- var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
14
-
15
11
  const withBaseName = core.makePrefixer("saltStaticInputAdornment");
16
12
  const StaticInputAdornment = React.forwardRef(function StaticInputAdornment2(props, ref) {
17
13
  const { children, className, ...other } = props;
18
14
  return /* @__PURE__ */ jsxRuntime.jsx("div", {
19
- className: cx__default["default"](withBaseName(), className),
15
+ className: clsx.clsx(withBaseName(), className),
20
16
  ref,
21
17
  ...other,
22
18
  children
@@ -1 +1 @@
1
- {"version":3,"file":"StaticInputAdornment.js","sources":["../src/input/StaticInputAdornment.tsx"],"sourcesContent":["import cx from \"classnames\";\nimport { forwardRef, HTMLAttributes } from \"react\";\nimport { makePrefixer } from \"@salt-ds/core\";\n\nimport \"./StaticInputAdornment.css\";\n\nexport type StaticInputAdornmentProps = HTMLAttributes<HTMLDivElement>;\n\nconst withBaseName = makePrefixer(\"saltStaticInputAdornment\");\n\nexport const StaticInputAdornment = forwardRef<\n HTMLDivElement,\n StaticInputAdornmentProps\n>(function StaticInputAdornment(props, ref) {\n const { children, className, ...other } = props;\n\n return (\n <div className={cx(withBaseName(), className)} ref={ref} {...other}>\n {children}\n </div>\n );\n});\n"],"names":["makePrefixer","forwardRef","StaticInputAdornment","jsx","cx"],"mappings":";;;;;;;;;;;;;;AAQA,MAAM,YAAA,GAAeA,kBAAa,0BAA0B,CAAA,CAAA;AAErD,MAAM,oBAAuB,GAAAC,gBAAA,CAGlC,SAASC,qBAAAA,CAAqB,OAAO,GAAK,EAAA;AAC1C,EAAA,MAAM,EAAE,QAAA,EAAU,SAAc,EAAA,GAAA,KAAA,EAAU,GAAA,KAAA,CAAA;AAE1C,EAAA,uBACGC,cAAA,CAAA,KAAA,EAAA;AAAA,IAAI,SAAW,EAAAC,sBAAA,CAAG,YAAa,EAAA,EAAG,SAAS,CAAA;AAAA,IAAG,GAAA;AAAA,IAAW,GAAG,KAAA;AAAA,IAC1D,QAAA;AAAA,GACH,CAAA,CAAA;AAEJ,CAAC;;;;"}
1
+ {"version":3,"file":"StaticInputAdornment.js","sources":["../src/input/StaticInputAdornment.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\nimport { forwardRef, HTMLAttributes } from \"react\";\nimport { makePrefixer } from \"@salt-ds/core\";\n\nimport \"./StaticInputAdornment.css\";\n\nexport type StaticInputAdornmentProps = HTMLAttributes<HTMLDivElement>;\n\nconst withBaseName = makePrefixer(\"saltStaticInputAdornment\");\n\nexport const StaticInputAdornment = forwardRef<\n HTMLDivElement,\n StaticInputAdornmentProps\n>(function StaticInputAdornment(props, ref) {\n const { children, className, ...other } = props;\n\n return (\n <div className={clsx(withBaseName(), className)} ref={ref} {...other}>\n {children}\n </div>\n );\n});\n"],"names":["makePrefixer","forwardRef","StaticInputAdornment","jsx","clsx"],"mappings":";;;;;;;;;;AAQA,MAAM,YAAA,GAAeA,kBAAa,0BAA0B,CAAA,CAAA;AAErD,MAAM,oBAAuB,GAAAC,gBAAA,CAGlC,SAASC,qBAAAA,CAAqB,OAAO,GAAK,EAAA;AAC1C,EAAA,MAAM,EAAE,QAAA,EAAU,SAAc,EAAA,GAAA,KAAA,EAAU,GAAA,KAAA,CAAA;AAE1C,EAAA,uBACGC,cAAA,CAAA,KAAA,EAAA;AAAA,IAAI,SAAW,EAAAC,SAAA,CAAK,YAAa,EAAA,EAAG,SAAS,CAAA;AAAA,IAAG,GAAA;AAAA,IAAW,GAAG,KAAA;AAAA,IAC5D,QAAA;AAAA,GACH,CAAA,CAAA;AAEJ,CAAC;;;;"}
@@ -4,16 +4,13 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
6
  var React = require('react');
7
- var cx = require('classnames');
8
- var core = require('@salt-ds/core');
9
- var useIsViewportLargerThanBreakpoint = require('../utils/useIsViewportLargerThanBreakpoint.js');
7
+ var clsx = require('clsx');
10
8
  var Scrim = require('../scrim/Scrim.js');
11
9
  require('../scrim/ScrimContext.js');
12
10
  require('./LayerLayout.css.js');
13
-
14
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
15
-
16
- var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
11
+ var core = require('@salt-ds/core');
12
+ require('../utils/useFloatingUI.js');
13
+ var useIsViewportLargerThanBreakpoint = require('../utils/useIsViewportLargerThanBreakpoint.js');
17
14
 
18
15
  const LAYER_POSITIONS = [
19
16
  "center",
@@ -60,7 +57,7 @@ const LayerLayout = React.forwardRef(
60
57
  const exitAnimation = !disableAnimations && !isOpen;
61
58
  const layerLayout = showComponent ? /* @__PURE__ */ jsxRuntime.jsx("div", {
62
59
  ref,
63
- className: cx__default["default"](withBaseName(), className, {
60
+ className: clsx.clsx(withBaseName(), className, {
64
61
  [withBaseName("anchor")]: anchored,
65
62
  [withBaseName("fullScreen")]: fullScreen,
66
63
  [withBaseName(position)]: !fullScreen,
@@ -79,7 +76,7 @@ const LayerLayout = React.forwardRef(
79
76
  }) : null;
80
77
  return disableScrim ? layerLayout : /* @__PURE__ */ jsxRuntime.jsx(Scrim.Scrim, {
81
78
  open: showComponent,
82
- className: cx__default["default"]({
79
+ className: clsx.clsx({
83
80
  [withBaseName("enter-animation")]: enterAnimation,
84
81
  [withBaseName("exit-animation")]: exitAnimation
85
82
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"LayerLayout.js","sources":["../src/layer-layout/LayerLayout.tsx"],"sourcesContent":["import { forwardRef, HTMLAttributes, useState, useEffect } from \"react\";\nimport cx from \"classnames\";\nimport { Breakpoints, makePrefixer, usePrevious } from \"@salt-ds/core\";\n\nimport { useIsViewportLargerThanBreakpoint } from \"../utils\";\n\nimport { Scrim, ScrimProps } from \"../scrim\";\nimport \"./LayerLayout.css\";\n\nexport const LAYER_POSITIONS = [\n \"center\",\n \"left\",\n \"top\",\n \"right\",\n \"bottom\",\n] as const;\n\nexport type LayerPositions = typeof LAYER_POSITIONS[number];\n\nexport interface LayerLayoutProps extends HTMLAttributes<HTMLDivElement> {\n /**\n * Disable the scrim.\n */\n disableScrim?: boolean;\n /**\n * Defines the layer position within the screen.\n */\n position?: LayerPositions;\n /**\n * Breakpoint at which the layer will become fullscreen.\n */\n fullScreenAtBreakpoint?: keyof Breakpoints;\n /**\n * Disable all animations.\n */\n disableAnimations?: boolean;\n /**\n * Display or hide the component.\n */\n isOpen?: boolean;\n /**\n * Props to be passed to the Scrim component.\n */\n scrimProps?: Partial<ScrimProps>;\n}\n\nconst withBaseName = makePrefixer(\"saltLayerLayout\");\n\nconst ariaAttributes = { role: \"dialog\", \"aria-modal\": true };\n\nexport const LayerLayout = forwardRef<HTMLDivElement, LayerLayoutProps>(\n function LayerLayout(props, ref) {\n const {\n children,\n className,\n disableScrim = false,\n position = \"center\",\n fullScreenAtBreakpoint = \"sm\",\n disableAnimations = false,\n scrimProps,\n isOpen = true,\n ...rest\n } = props;\n\n const previousDisableAnimationsProp = usePrevious(\n disableAnimations,\n [disableAnimations],\n false\n ); // we check the previous value for this prop to prevent the animations from triggering again when it changes\n\n const [showComponent, setShowComponent] = useState(false);\n\n const [isAnimating, setIsAnimating] = useState(false);\n\n useEffect(() => {\n if ((!isOpen && disableAnimations) || (!isOpen && !isAnimating)) {\n setShowComponent(false);\n }\n\n if (isOpen && !showComponent) {\n setShowComponent(true);\n }\n }, [isOpen, showComponent, disableAnimations, isAnimating]);\n\n const fullScreen = useIsViewportLargerThanBreakpoint(\n fullScreenAtBreakpoint\n );\n\n const anchored = position !== \"center\" && !fullScreen;\n\n const enterAnimation =\n !disableAnimations && isOpen && !previousDisableAnimationsProp;\n\n const exitAnimation = !disableAnimations && !isOpen;\n\n const layerLayout = showComponent ? (\n <div\n ref={ref}\n className={cx(withBaseName(), className, {\n [withBaseName(\"anchor\")]: anchored,\n [withBaseName(\"fullScreen\")]: fullScreen,\n [withBaseName(position)]: !fullScreen,\n [withBaseName(\"enter-animation\")]: enterAnimation,\n [withBaseName(\"exit-animation\")]: exitAnimation,\n })}\n onAnimationStart={() => setIsAnimating(true)}\n onAnimationEnd={() => {\n if (!isOpen && showComponent) {\n setShowComponent(false);\n }\n }}\n {...(disableScrim && ariaAttributes)}\n {...rest}\n >\n {children}\n </div>\n ) : null;\n\n return disableScrim ? (\n layerLayout\n ) : (\n <Scrim\n open={showComponent}\n className={cx({\n [withBaseName(\"enter-animation\")]: enterAnimation,\n [withBaseName(\"exit-animation\")]: exitAnimation,\n })}\n {...scrimProps}\n >\n {layerLayout}\n </Scrim>\n );\n }\n);\n"],"names":["makePrefixer","forwardRef","LayerLayout","usePrevious","useState","useEffect","useIsViewportLargerThanBreakpoint","jsx","cx","Scrim"],"mappings":"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"}
1
+ {"version":3,"file":"LayerLayout.js","sources":["../src/layer-layout/LayerLayout.tsx"],"sourcesContent":["import { forwardRef, HTMLAttributes, useEffect, useState } from \"react\";\nimport { clsx } from \"clsx\";\n\nimport { Scrim, ScrimProps } from \"../scrim\";\nimport \"./LayerLayout.css\";\nimport { Breakpoints, makePrefixer, usePrevious } from \"@salt-ds/core\";\nimport { useIsViewportLargerThanBreakpoint } from \"../utils\";\n\nexport const LAYER_POSITIONS = [\n \"center\",\n \"left\",\n \"top\",\n \"right\",\n \"bottom\",\n] as const;\n\nexport type LayerPositions = typeof LAYER_POSITIONS[number];\n\nexport interface LayerLayoutProps extends HTMLAttributes<HTMLDivElement> {\n /**\n * Disable the scrim.\n */\n disableScrim?: boolean;\n /**\n * Defines the layer position within the screen.\n */\n position?: LayerPositions;\n /**\n * Breakpoint at which the layer will become fullscreen.\n */\n fullScreenAtBreakpoint?: keyof Breakpoints;\n /**\n * Disable all animations.\n */\n disableAnimations?: boolean;\n /**\n * Display or hide the component.\n */\n isOpen?: boolean;\n /**\n * Props to be passed to the Scrim component.\n */\n scrimProps?: Partial<ScrimProps>;\n}\n\nconst withBaseName = makePrefixer(\"saltLayerLayout\");\n\nconst ariaAttributes = { role: \"dialog\", \"aria-modal\": true };\n\nexport const LayerLayout = forwardRef<HTMLDivElement, LayerLayoutProps>(\n function LayerLayout(props, ref) {\n const {\n children,\n className,\n disableScrim = false,\n position = \"center\",\n fullScreenAtBreakpoint = \"sm\",\n disableAnimations = false,\n scrimProps,\n isOpen = true,\n ...rest\n } = props;\n\n const previousDisableAnimationsProp = usePrevious(\n disableAnimations,\n [disableAnimations],\n false\n ); // we check the previous value for this prop to prevent the animations from triggering again when it changes\n\n const [showComponent, setShowComponent] = useState(false);\n\n const [isAnimating, setIsAnimating] = useState(false);\n\n useEffect(() => {\n if ((!isOpen && disableAnimations) || (!isOpen && !isAnimating)) {\n setShowComponent(false);\n }\n\n if (isOpen && !showComponent) {\n setShowComponent(true);\n }\n }, [isOpen, showComponent, disableAnimations, isAnimating]);\n\n const fullScreen = useIsViewportLargerThanBreakpoint(\n fullScreenAtBreakpoint\n );\n\n const anchored = position !== \"center\" && !fullScreen;\n\n const enterAnimation =\n !disableAnimations && isOpen && !previousDisableAnimationsProp;\n\n const exitAnimation = !disableAnimations && !isOpen;\n\n const layerLayout = showComponent ? (\n <div\n ref={ref}\n className={clsx(withBaseName(), className, {\n [withBaseName(\"anchor\")]: anchored,\n [withBaseName(\"fullScreen\")]: fullScreen,\n [withBaseName(position)]: !fullScreen,\n [withBaseName(\"enter-animation\")]: enterAnimation,\n [withBaseName(\"exit-animation\")]: exitAnimation,\n })}\n onAnimationStart={() => setIsAnimating(true)}\n onAnimationEnd={() => {\n if (!isOpen && showComponent) {\n setShowComponent(false);\n }\n }}\n {...(disableScrim && ariaAttributes)}\n {...rest}\n >\n {children}\n </div>\n ) : null;\n\n return disableScrim ? (\n layerLayout\n ) : (\n <Scrim\n open={showComponent}\n className={clsx({\n [withBaseName(\"enter-animation\")]: enterAnimation,\n [withBaseName(\"exit-animation\")]: exitAnimation,\n })}\n {...scrimProps}\n >\n {layerLayout}\n </Scrim>\n );\n }\n);\n"],"names":["makePrefixer","forwardRef","LayerLayout","usePrevious","useState","useEffect","useIsViewportLargerThanBreakpoint","jsx","clsx","Scrim"],"mappings":"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"}
@@ -6,6 +6,7 @@ var jsxRuntime = require('react/jsx-runtime');
6
6
  var core = require('@salt-ds/core');
7
7
  var escapeRegExp = require('../utils/escapeRegExp.js');
8
8
  require('react');
9
+ require('../utils/useFloatingUI.js');
9
10
  require('./Highlighter.css.js');
10
11
 
11
12
  const withBaseName = core.makePrefixer("saltHighlighter");
@@ -1 +1 @@
1
- {"version":3,"file":"Highlighter.js","sources":["../src/list/Highlighter.tsx"],"sourcesContent":["import { makePrefixer } from \"@salt-ds/core\";\nimport { ReactElement } from \"react\";\nimport { escapeRegExp } from \"../utils\";\n\nimport \"./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 { matchPattern, text = \"\" } = props;\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","escapeRegExp","jsx","Fragment"],"mappings":";;;;;;;;;;AAMA,MAAM,YAAA,GAAeA,kBAAa,iBAAiB,CAAA,CAAA;AAOtC,MAAA,WAAA,GAAc,CACzB,KACmC,KAAA;AACnC,EAAA,MAAM,EAAE,YAAA,EAAc,IAAO,GAAA,EAAA,EAAO,GAAA,KAAA,CAAA;AACpC,EAAM,MAAA,UAAA,GACJ,OAAO,YAAA,KAAiB,QACpB,GAAA,IAAI,MAAO,CAAA,CAAA,CAAA,EAAIC,yBAAa,CAAA,YAAY,CAAM,CAAA,CAAA,CAAA,EAAA,IAAI,CAClD,GAAA,YAAA,CAAA;AAEN,EAAA,IAAI,eAAe,KAAW,CAAA,EAAA;AAC5B,IAAO,uBAAAC,cAAA,CAAAC,mBAAA,EAAA;AAAA,MAAG,QAAA,EAAA,IAAA;AAAA,KAAK,CAAA,CAAA;AAAA,GACjB;AACA,EAAA,uBACGD,cAAA,CAAA,MAAA,EAAA;AAAA,IACE,QAAA,EAAA,IAAA,CAAK,KAAM,CAAA,UAAU,CAAE,CAAA,GAAA;AAAA,MAAI,CAAC,IAAM,EAAA,KAAA,KACjC,KAAK,KAAM,CAAA,UAAU,oBAClBA,cAAA,CAAA,QAAA,EAAA;AAAA,QACC,SAAA,EAAW,aAAa,WAAW,CAAA;AAAA,QAGlC,QAAA,EAAA,IAAA;AAAA,OAFI,EAAA,CAAA,EAAG,KAAS,CAAA,CAAA,EAAA,IAAA,CAAA,CAGnB,CAEA,GAAA,IAAA;AAAA,KAEJ;AAAA,GACF,CAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"Highlighter.js","sources":["../src/list/Highlighter.tsx"],"sourcesContent":["import { makePrefixer } from \"@salt-ds/core\";\nimport { ReactElement } from \"react\";\nimport { escapeRegExp } from \"../utils\";\n\nimport \"./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 { matchPattern, text = \"\" } = props;\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","escapeRegExp","jsx","Fragment"],"mappings":";;;;;;;;;;;AAMA,MAAM,YAAA,GAAeA,kBAAa,iBAAiB,CAAA,CAAA;AAOtC,MAAA,WAAA,GAAc,CACzB,KACmC,KAAA;AACnC,EAAA,MAAM,EAAE,YAAA,EAAc,IAAO,GAAA,EAAA,EAAO,GAAA,KAAA,CAAA;AACpC,EAAM,MAAA,UAAA,GACJ,OAAO,YAAA,KAAiB,QACpB,GAAA,IAAI,MAAO,CAAA,CAAA,CAAA,EAAIC,yBAAa,CAAA,YAAY,CAAM,CAAA,CAAA,CAAA,EAAA,IAAI,CAClD,GAAA,YAAA,CAAA;AAEN,EAAA,IAAI,eAAe,KAAW,CAAA,EAAA;AAC5B,IAAO,uBAAAC,cAAA,CAAAC,mBAAA,EAAA;AAAA,MAAG,QAAA,EAAA,IAAA;AAAA,KAAK,CAAA,CAAA;AAAA,GACjB;AACA,EAAA,uBACGD,cAAA,CAAA,MAAA,EAAA;AAAA,IACE,QAAA,EAAA,IAAA,CAAK,KAAM,CAAA,UAAU,CAAE,CAAA,GAAA;AAAA,MAAI,CAAC,IAAM,EAAA,KAAA,KACjC,KAAK,KAAM,CAAA,UAAU,oBAClBA,cAAA,CAAA,QAAA,EAAA;AAAA,QACC,SAAA,EAAW,aAAa,WAAW,CAAA;AAAA,QAGlC,QAAA,EAAA,IAAA;AAAA,OAFI,EAAA,CAAA,EAAG,KAAS,CAAA,CAAA,EAAA,IAAA,CAAA,CAGnB,CAEA,GAAA,IAAA;AAAA,KAEJ;AAAA,GACF,CAAA,CAAA;AAEJ;;;;"}
@@ -5,7 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
6
  var React = require('react');
7
7
  var core = require('@salt-ds/core');
8
- var cx = require('classnames');
8
+ var clsx = require('clsx');
9
9
  require('../common-hooks/collectionProvider.js');
10
10
  var itemToString = require('../common-hooks/itemToString.js');
11
11
  require('../common-hooks/keyUtils.js');
@@ -13,16 +13,13 @@ var useCollectionItems = require('../common-hooks/useCollectionItems.js');
13
13
  var useImperativeScrollingAPI = require('../common-hooks/useImperativeScrollingAPI.js');
14
14
  var useKeyboardNavigation = require('../common-hooks/useKeyboardNavigation.js');
15
15
  require('../responsive/useResizeObserver.js');
16
+ require('../utils/useFloatingUI.js');
16
17
  var isSelected = require('../common-hooks/utils/isSelected.js');
17
18
  var ListItem = require('./ListItem.js');
18
19
  var useList = require('./useList.js');
19
20
  var useListHeight = require('./useListHeight.js');
20
21
  require('./List.css.js');
21
22
 
22
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
23
-
24
- var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
25
-
26
23
  const defaultEmptyMessage = "No data to display";
27
24
  const withBaseName = core.makePrefixer("saltList");
28
25
  const List = React.forwardRef(function List2({
@@ -136,7 +133,7 @@ const List = React.forwardRef(function List2({
136
133
  const createHeader = function createHeader2(idx, headerId, title, expanded) {
137
134
  const header = /* @__PURE__ */ React.createElement(ListItem$1, {
138
135
  ...listItemHeaderHandlers,
139
- className: cx__default["default"]("saltListItemHeader", {
136
+ className: clsx.clsx("saltListItemHeader", {
140
137
  focusVisible: collapsibleHeaders && appliedFocusVisible === idx.value
141
138
  }),
142
139
  "aria-expanded": expanded,
@@ -157,7 +154,7 @@ const List = React.forwardRef(function List2({
157
154
  const { disabled, value, id: itemId, label } = item;
158
155
  const isChildItem = React.isValidElement(value);
159
156
  const listItemProps = {
160
- className: cx__default["default"]({
157
+ className: clsx.clsx({
161
158
  saltHighlighted: idx.value === highlightedIndex,
162
159
  saltFocusVisible: appliedFocusVisible === idx.value
163
160
  }),
@@ -241,7 +238,7 @@ const List = React.forwardRef(function List2({
241
238
  ...htmlAttributes,
242
239
  ...listHandlers,
243
240
  ...listControlProps,
244
- className: cx__default["default"](withBaseName(), className, {
241
+ className: clsx.clsx(withBaseName(), className, {
245
242
  [withBaseName("borderless")]: borderless,
246
243
  saltDisabled: listDisabled,
247
244
  [withBaseName("collapsible")]: collapsibleHeaders,
@@ -1 +1 @@
1
- {"version":3,"file":"List.js","sources":["../src/list/List.tsx"],"sourcesContent":["import { makePrefixer, useForkRef, useIdMemo } from \"@salt-ds/core\";\nimport cx from \"classnames\";\nimport {\n cloneElement,\n ForwardedRef,\n forwardRef,\n isValidElement,\n ReactElement,\n useRef,\n} from \"react\";\nimport {\n CollectionIndexer,\n CollectionItem,\n isSelected,\n itemToString as defaultItemToString,\n LIST_FOCUS_VISIBLE,\n ScrollingAPI,\n SelectionStrategy,\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\";\n\nimport \"./List.css\";\n\nconst defaultEmptyMessage = \"No data to display\";\n\nconst withBaseName = makePrefixer(\"saltList\");\n\nexport const List = forwardRef(function List<\n Item,\n Selection extends SelectionStrategy = \"default\"\n>(\n {\n ListItem = DefaultListItem,\n ListPlaceholder,\n borderless,\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 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 tabToSelect,\n width,\n ...htmlAttributes\n }: ListProps<Item, Selection>,\n forwardedRef?: ForwardedRef<HTMLDivElement>\n) {\n const id = useIdMemo(idProp);\n const rootRef = useRef<HTMLDivElement>(null);\n const contentRef = useRef<HTMLDivElement>(null);\n const rowHeightProxyRef = useRef<HTMLDivElement>(null);\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 { preferredHeight } = useListHeight({\n borderless,\n displayedItemCount,\n getItemHeight: getItemHeightProp,\n height,\n itemCount: collectionHook.data.length,\n itemGapSize,\n itemHeight: itemHeightProp,\n rowHeightRef: rowHeightProxyRef,\n });\n\n const {\n focusVisible,\n highlightedIndex,\n listControlProps,\n listHandlers,\n listItemHeaderHandlers,\n scrollIntoView,\n selected,\n } = useList<Item, Selection>({\n collapsibleHeaders,\n collectionHook,\n containerRef: rootRef,\n contentRef,\n defaultHighlightedIndex,\n defaultSelected: collectionHook.itemToCollectionItem<\n Selection,\n typeof defaultSelected\n >(defaultSelected),\n disabled: listDisabled,\n disableTypeToSelect,\n highlightedIndex: highlightedIndexProp,\n label: id,\n listHandlers: listHandlersProp, // should this be in context ?\n onSelect,\n onSelectionChange,\n onHighlight,\n restoreLastFocus,\n selected: collectionHook.itemToCollectionItem<\n Selection,\n typeof defaultSelected\n >(selectedProp),\n selectionStrategy,\n selectionKeys,\n stickyHeaders,\n tabToSelect,\n });\n\n useImperativeScrollingAPI({\n collectionHook,\n forwardedRef: scrollingApiRef,\n scrollableRef: rootRef,\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(\"saltListItemHeader\", {\n focusVisible: collapsibleHeaders && appliedFocusVisible === idx.value,\n })}\n aria-expanded={expanded}\n data-idx={collapsibleHeaders ? idx.value : undefined}\n data-highlighted={idx.value === highlightedIndex || undefined}\n data-sticky={stickyHeaders}\n data-selectable={false}\n id={headerId}\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-idx\": number;\n } = {\n className: cx({\n saltHighlighted: idx.value === highlightedIndex,\n saltFocusVisible: appliedFocusVisible === 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-idx\": 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={withBaseName(\"empty-message\")}>\n {emptyMessage ?? defaultEmptyMessage}\n </span>\n );\n } else {\n return null;\n }\n }\n\n const renderContent = () => {\n if (collectionHook.data.length) {\n return renderCollectionItems(collectionHook.data);\n } else {\n renderEmpty();\n }\n };\n\n const contentHeight = \"auto\";\n const sizeStyles = {\n \"--list-item-gap\": itemGapSize ? `${itemGapSize}px` : undefined,\n minWidth,\n minHeight,\n width: width ?? \"100%\",\n height: height ?? \"100%\",\n maxWidth: maxWidth ?? width,\n maxHeight: maxHeight ?? preferredHeight,\n };\n return (\n <div\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(withBaseName(), className, {\n // TODO low-emphasis\n [withBaseName(\"borderless\")]: borderless,\n saltDisabled: listDisabled,\n [withBaseName(\"collapsible\")]: collapsibleHeaders,\n saltFocusVisible: highlightedIndex === LIST_FOCUS_VISIBLE,\n })}\n id={`${id}`}\n ref={useForkRef<HTMLDivElement>(rootRef, forwardedRef)}\n role=\"listbox\"\n style={{ ...styleProp, ...sizeStyles }}\n tabIndex={listDisabled || disableFocus ? undefined : 0}\n >\n <ListItemProxy ref={rowHeightProxyRef} />\n {collectionHook.data.length === 0 && ListPlaceholder !== undefined ? (\n <>\n <ListPlaceholder />\n </>\n ) : (\n <div\n className={withBaseName(\"scrollingContentContainer\")}\n ref={contentRef}\n style={{ height: contentHeight }}\n >\n {renderContent()}\n </div>\n )}\n </div>\n );\n}) as <Item = string, Selection extends SelectionStrategy = \"default\">(\n props: ListProps<Item, Selection> & {\n ref?: ForwardedRef<ScrollingAPI<Item>>;\n }\n) => ReactElement<ListProps<Item, Selection>>;\n"],"names":["makePrefixer","forwardRef","List","ListItem","DefaultListItem","itemToString","defaultItemToString","useIdMemo","useRef","useCollectionItems","useListHeight","useList","useImperativeScrollingAPI","createHeader","createElement","cx","isValidElement","isSelected","cloneElement","jsx","addGroup","id","jsxs","LIST_FOCUS_VISIBLE","useForkRef","ListItemProxy","Fragment"],"mappings":"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"}
1
+ {"version":3,"file":"List.js","sources":["../src/list/List.tsx"],"sourcesContent":["import { makePrefixer, useForkRef, useIdMemo } from \"@salt-ds/core\";\nimport { clsx } from \"clsx\";\nimport {\n cloneElement,\n ForwardedRef,\n forwardRef,\n isValidElement,\n ReactElement,\n useRef,\n} from \"react\";\nimport {\n CollectionIndexer,\n CollectionItem,\n isSelected,\n itemToString as defaultItemToString,\n LIST_FOCUS_VISIBLE,\n ScrollingAPI,\n SelectionStrategy,\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\";\n\nimport \"./List.css\";\n\nconst defaultEmptyMessage = \"No data to display\";\n\nconst withBaseName = makePrefixer(\"saltList\");\n\nexport const List = forwardRef(function List<\n Item,\n Selection extends SelectionStrategy = \"default\"\n>(\n {\n ListItem = DefaultListItem,\n ListPlaceholder,\n borderless,\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 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 tabToSelect,\n width,\n ...htmlAttributes\n }: ListProps<Item, Selection>,\n forwardedRef?: ForwardedRef<HTMLDivElement>\n) {\n const id = useIdMemo(idProp);\n const rootRef = useRef<HTMLDivElement>(null);\n const contentRef = useRef<HTMLDivElement>(null);\n const rowHeightProxyRef = useRef<HTMLDivElement>(null);\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 { preferredHeight } = useListHeight({\n borderless,\n displayedItemCount,\n getItemHeight: getItemHeightProp,\n height,\n itemCount: collectionHook.data.length,\n itemGapSize,\n itemHeight: itemHeightProp,\n rowHeightRef: rowHeightProxyRef,\n });\n\n const {\n focusVisible,\n highlightedIndex,\n listControlProps,\n listHandlers,\n listItemHeaderHandlers,\n scrollIntoView,\n selected,\n } = useList<Item, Selection>({\n collapsibleHeaders,\n collectionHook,\n containerRef: rootRef,\n contentRef,\n defaultHighlightedIndex,\n defaultSelected: collectionHook.itemToCollectionItem<\n Selection,\n typeof defaultSelected\n >(defaultSelected),\n disabled: listDisabled,\n disableTypeToSelect,\n highlightedIndex: highlightedIndexProp,\n label: id,\n listHandlers: listHandlersProp, // should this be in context ?\n onSelect,\n onSelectionChange,\n onHighlight,\n restoreLastFocus,\n selected: collectionHook.itemToCollectionItem<\n Selection,\n typeof defaultSelected\n >(selectedProp),\n selectionStrategy,\n selectionKeys,\n stickyHeaders,\n tabToSelect,\n });\n\n useImperativeScrollingAPI({\n collectionHook,\n forwardedRef: scrollingApiRef,\n scrollableRef: rootRef,\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={clsx(\"saltListItemHeader\", {\n focusVisible: collapsibleHeaders && appliedFocusVisible === idx.value,\n })}\n aria-expanded={expanded}\n data-idx={collapsibleHeaders ? idx.value : undefined}\n data-highlighted={idx.value === highlightedIndex || undefined}\n data-sticky={stickyHeaders}\n data-selectable={false}\n id={headerId}\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-idx\": number;\n } = {\n className: clsx({\n saltHighlighted: idx.value === highlightedIndex,\n saltFocusVisible: appliedFocusVisible === 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-idx\": 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={withBaseName(\"empty-message\")}>\n {emptyMessage ?? defaultEmptyMessage}\n </span>\n );\n } else {\n return null;\n }\n }\n\n const renderContent = () => {\n if (collectionHook.data.length) {\n return renderCollectionItems(collectionHook.data);\n } else {\n renderEmpty();\n }\n };\n\n const contentHeight = \"auto\";\n const sizeStyles = {\n \"--list-item-gap\": itemGapSize ? `${itemGapSize}px` : undefined,\n minWidth,\n minHeight,\n width: width ?? \"100%\",\n height: height ?? \"100%\",\n maxWidth: maxWidth ?? width,\n maxHeight: maxHeight ?? preferredHeight,\n };\n return (\n <div\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={clsx(withBaseName(), className, {\n // TODO low-emphasis\n [withBaseName(\"borderless\")]: borderless,\n saltDisabled: listDisabled,\n [withBaseName(\"collapsible\")]: collapsibleHeaders,\n saltFocusVisible: highlightedIndex === LIST_FOCUS_VISIBLE,\n })}\n id={`${id}`}\n ref={useForkRef<HTMLDivElement>(rootRef, forwardedRef)}\n role=\"listbox\"\n style={{ ...styleProp, ...sizeStyles }}\n tabIndex={listDisabled || disableFocus ? undefined : 0}\n >\n <ListItemProxy ref={rowHeightProxyRef} />\n {collectionHook.data.length === 0 && ListPlaceholder !== undefined ? (\n <>\n <ListPlaceholder />\n </>\n ) : (\n <div\n className={withBaseName(\"scrollingContentContainer\")}\n ref={contentRef}\n style={{ height: contentHeight }}\n >\n {renderContent()}\n </div>\n )}\n </div>\n );\n}) as <Item = string, Selection extends SelectionStrategy = \"default\">(\n props: ListProps<Item, Selection> & {\n ref?: ForwardedRef<ScrollingAPI<Item>>;\n }\n) => ReactElement<ListProps<Item, Selection>>;\n"],"names":["makePrefixer","forwardRef","List","ListItem","DefaultListItem","itemToString","defaultItemToString","useIdMemo","useRef","useCollectionItems","useListHeight","useList","useImperativeScrollingAPI","createHeader","createElement","clsx","isValidElement","isSelected","cloneElement","jsx","addGroup","id","jsxs","LIST_FOCUS_VISIBLE","useForkRef","ListItemProxy","Fragment"],"mappings":"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"}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
6
  var React = require('react');
7
- var cx = require('classnames');
7
+ var clsx = require('clsx');
8
8
  var core = require('@salt-ds/core');
9
9
  require('../checkbox/Checkbox.js');
10
10
  require('../checkbox/CheckboxBase.js');
@@ -13,15 +13,11 @@ var CheckboxIcon = require('../checkbox/CheckboxIcon.js');
13
13
  var Highlighter = require('./Highlighter.js');
14
14
  require('./ListItem.css.js');
15
15
 
16
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
17
-
18
- var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
19
-
20
16
  const withBaseName = core.makePrefixer("saltListItem");
21
17
  const ListItemProxy = React.forwardRef(function ListItemNextProxy(props, forwardedRef) {
22
18
  return /* @__PURE__ */ jsxRuntime.jsx("div", {
23
19
  "aria-hidden": true,
24
- className: cx__default["default"](withBaseName(), withBaseName("proxy")),
20
+ className: clsx.clsx(withBaseName(), withBaseName("proxy")),
25
21
  ref: forwardedRef
26
22
  });
27
23
  });
@@ -41,7 +37,7 @@ const ListItem = React.forwardRef(
41
37
  style: styleProp,
42
38
  ...props
43
39
  }, forwardedRef) {
44
- const className = cx__default["default"](withBaseName(), classNameProp, {
40
+ const className = clsx.clsx(withBaseName(), classNameProp, {
45
41
  saltDisabled: disabled,
46
42
  [withBaseName("checkbox")]: showCheckbox
47
43
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ListItem.js","sources":["../src/list/ListItem.tsx"],"sourcesContent":["import { forwardRef, ForwardedRef, HTMLAttributes, memo } from \"react\";\nimport cx from \"classnames\";\nimport { makePrefixer } from \"@salt-ds/core\";\nimport { CheckboxIcon } from \"../checkbox\";\nimport { ListItemType, ListItemProps } from \"./listTypes\";\nimport { Highlighter } from \"./Highlighter\";\n\nimport \"./ListItem.css\";\n\nconst withBaseName = makePrefixer(\"saltListItem\");\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 ListItemNextProxy(\n props: HTMLAttributes<HTMLDivElement>,\n forwardedRef: ForwardedRef<HTMLDivElement>\n) {\n return (\n <div\n aria-hidden\n className={cx(withBaseName(), withBaseName(\"proxy\"))}\n ref={forwardedRef}\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(withBaseName(), classNameProp, {\n saltDisabled: disabled,\n [withBaseName(\"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 && <CheckboxIcon aria-hidden checked={selected} />}\n {children && typeof children !== \"string\" ? (\n children\n ) : itemTextHighlightPattern == null ? (\n <span className={withBaseName(\"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":["makePrefixer","forwardRef","jsx","cx","ListItem","jsxs","CheckboxIcon","Highlighter"],"mappings":";;;;;;;;;;;;;;;;;;;AASA,MAAM,YAAA,GAAeA,kBAAa,cAAc,CAAA,CAAA;AAMzC,MAAM,aAAgB,GAAAC,gBAAA,CAAW,SAAS,iBAAA,CAC/C,OACA,YACA,EAAA;AACA,EAAA,uBACGC,cAAA,CAAA,KAAA,EAAA;AAAA,IACC,aAAW,EAAA,IAAA;AAAA,IACX,WAAWC,sBAAG,CAAA,YAAA,EAAgB,EAAA,YAAA,CAAa,OAAO,CAAC,CAAA;AAAA,IACnD,GAAK,EAAA,YAAA;AAAA,GACP,CAAA,CAAA;AAEJ,CAAC,EAAA;AAKM,MAAM,QAAW,GAAAF,gBAAA;AAAA,EACtB,SAASG,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,IACJ,GAAA,KAAA;AAAA,KAEL,YACA,EAAA;AACA,IAAA,MAAM,SAAY,GAAAD,sBAAA,CAAG,YAAa,EAAA,EAAG,aAAe,EAAA;AAAA,MAClD,YAAc,EAAA,QAAA;AAAA,MACd,CAAC,YAAa,CAAA,UAAU,CAAI,GAAA,YAAA;AAAA,KAC7B,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,IAAA,uBACGE,eAAA,CAAA,KAAA,EAAA;AAAA,MACC,SAAA;AAAA,MACC,GAAG,KAAA;AAAA,MACJ,iBAAe,QAAY,IAAA,KAAA,CAAA;AAAA,MAC3B,iBAAe,QAAY,IAAA,KAAA,CAAA;AAAA,MAC3B,GAAK,EAAA,YAAA;AAAA,MACL,KAAA;AAAA,MAEC,QAAA,EAAA;AAAA,QAAA,YAAA,oBAAiBH,cAAA,CAAAI,yBAAA,EAAA;AAAA,UAAa,aAAW,EAAA,IAAA;AAAA,UAAC,OAAS,EAAA,QAAA;AAAA,SAAU,CAAA;AAAA,QAC7D,YAAY,OAAO,QAAA,KAAa,WAC/B,QACE,GAAA,wBAAA,IAA4B,uBAC7BJ,cAAA,CAAA,MAAA,EAAA;AAAA,UAAK,SAAA,EAAW,aAAa,aAAa,CAAA;AAAA,UACxC,QAAS,EAAA,KAAA,IAAA,QAAA;AAAA,SACZ,oBAECA,cAAA,CAAAK,uBAAA,EAAA;AAAA,UACC,YAAc,EAAA,wBAAA;AAAA,UACd,MAAM,KAAU,IAAA,QAAA;AAAA,SAClB,CAAA;AAAA,OAAA;AAAA,KAEJ,CAAA,CAAA;AAAA,GAEJ;AACF;;;;;"}
1
+ {"version":3,"file":"ListItem.js","sources":["../src/list/ListItem.tsx"],"sourcesContent":["import { forwardRef, ForwardedRef, HTMLAttributes, memo } from \"react\";\nimport { clsx } from \"clsx\";\nimport { makePrefixer } from \"@salt-ds/core\";\nimport { CheckboxIcon } from \"../checkbox\";\nimport { ListItemType, ListItemProps } from \"./listTypes\";\nimport { Highlighter } from \"./Highlighter\";\n\nimport \"./ListItem.css\";\n\nconst withBaseName = makePrefixer(\"saltListItem\");\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 ListItemNextProxy(\n props: HTMLAttributes<HTMLDivElement>,\n forwardedRef: ForwardedRef<HTMLDivElement>\n) {\n return (\n <div\n aria-hidden\n className={clsx(withBaseName(), withBaseName(\"proxy\"))}\n ref={forwardedRef}\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 = clsx(withBaseName(), classNameProp, {\n saltDisabled: disabled,\n [withBaseName(\"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 && <CheckboxIcon aria-hidden checked={selected} />}\n {children && typeof children !== \"string\" ? (\n children\n ) : itemTextHighlightPattern == null ? (\n <span className={withBaseName(\"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":["makePrefixer","forwardRef","jsx","clsx","ListItem","jsxs","CheckboxIcon","Highlighter"],"mappings":";;;;;;;;;;;;;;;AASA,MAAM,YAAA,GAAeA,kBAAa,cAAc,CAAA,CAAA;AAMzC,MAAM,aAAgB,GAAAC,gBAAA,CAAW,SAAS,iBAAA,CAC/C,OACA,YACA,EAAA;AACA,EAAA,uBACGC,cAAA,CAAA,KAAA,EAAA;AAAA,IACC,aAAW,EAAA,IAAA;AAAA,IACX,WAAWC,SAAK,CAAA,YAAA,EAAgB,EAAA,YAAA,CAAa,OAAO,CAAC,CAAA;AAAA,IACrD,GAAK,EAAA,YAAA;AAAA,GACP,CAAA,CAAA;AAEJ,CAAC,EAAA;AAKM,MAAM,QAAW,GAAAF,gBAAA;AAAA,EACtB,SAASG,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,IACJ,GAAA,KAAA;AAAA,KAEL,YACA,EAAA;AACA,IAAA,MAAM,SAAY,GAAAD,SAAA,CAAK,YAAa,EAAA,EAAG,aAAe,EAAA;AAAA,MACpD,YAAc,EAAA,QAAA;AAAA,MACd,CAAC,YAAa,CAAA,UAAU,CAAI,GAAA,YAAA;AAAA,KAC7B,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,IAAA,uBACGE,eAAA,CAAA,KAAA,EAAA;AAAA,MACC,SAAA;AAAA,MACC,GAAG,KAAA;AAAA,MACJ,iBAAe,QAAY,IAAA,KAAA,CAAA;AAAA,MAC3B,iBAAe,QAAY,IAAA,KAAA,CAAA;AAAA,MAC3B,GAAK,EAAA,YAAA;AAAA,MACL,KAAA;AAAA,MAEC,QAAA,EAAA;AAAA,QAAA,YAAA,oBAAiBH,cAAA,CAAAI,yBAAA,EAAA;AAAA,UAAa,aAAW,EAAA,IAAA;AAAA,UAAC,OAAS,EAAA,QAAA;AAAA,SAAU,CAAA;AAAA,QAC7D,YAAY,OAAO,QAAA,KAAa,WAC/B,QACE,GAAA,wBAAA,IAA4B,uBAC7BJ,cAAA,CAAA,MAAA,EAAA;AAAA,UAAK,SAAA,EAAW,aAAa,aAAa,CAAA;AAAA,UACxC,QAAS,EAAA,KAAA,IAAA,QAAA;AAAA,SACZ,oBAECA,cAAA,CAAAK,uBAAA,EAAA;AAAA,UACC,YAAc,EAAA,wBAAA;AAAA,UACd,MAAM,KAAU,IAAA,QAAA;AAAA,SAClB,CAAA;AAAA,OAAA;AAAA,KAEJ,CAAA,CAAA;AAAA,GAEJ;AACF;;;;;"}
@@ -4,13 +4,14 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
6
  var core = require('@salt-ds/core');
7
- var cx = require('classnames');
7
+ var clsx = require('clsx');
8
8
  var React = require('react');
9
9
  require('../common-hooks/collectionProvider.js');
10
10
  require('../common-hooks/keyUtils.js');
11
11
  var useCollectionItems = require('../common-hooks/useCollectionItems.js');
12
12
  var useImperativeScrollingAPI = require('../common-hooks/useImperativeScrollingAPI.js');
13
13
  require('../responsive/useResizeObserver.js');
14
+ require('../utils/useFloatingUI.js');
14
15
  var isSelected = require('../common-hooks/utils/isSelected.js');
15
16
  var useListHeight = require('./useListHeight.js');
16
17
  var ListItem = require('./ListItem.js');
@@ -18,10 +19,6 @@ var useList = require('./useList.js');
18
19
  var useVirtualization = require('./useVirtualization.js');
19
20
  require('./List.css.js');
20
21
 
21
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
22
-
23
- var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
24
-
25
22
  const defaultEmptyMessage = "No data to display";
26
23
  const withBaseName = core.makePrefixer("saltList");
27
24
  const VirtualizedList = React.forwardRef(function List({
@@ -137,7 +134,7 @@ const VirtualizedList = React.forwardRef(function List({
137
134
  /* @__PURE__ */ jsxRuntime.jsx(ListItem.ListItem, {
138
135
  "aria-setsize": collectionHook.data.length,
139
136
  "aria-posinset": pos,
140
- className: cx__default["default"](className, {
137
+ className: clsx.clsx(className, {
141
138
  saltHighlighted: index === highlightedIndex,
142
139
  saltFocusVisible: focusVisible === index
143
140
  }),
@@ -192,7 +189,7 @@ const VirtualizedList = React.forwardRef(function List({
192
189
  ...htmlAttributes,
193
190
  ...listHandlers,
194
191
  ...listControlProps,
195
- className: cx__default["default"](withBaseName(), className, withBaseName("virtualized")),
192
+ className: clsx.clsx(withBaseName(), className, withBaseName("virtualized")),
196
193
  id: `${id}`,
197
194
  ref: core.useForkRef(rootRef, forwardedRef),
198
195
  role: "listbox",