@hitachivantara/uikit-react-core 5.80.1 → 5.81.0

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 (587) hide show
  1. package/dist/cjs/Accordion/Accordion.cjs +5 -5
  2. package/dist/cjs/ActionBar/ActionBar.cjs +4 -3
  3. package/dist/cjs/ActionsGeneric/ActionsGeneric.cjs +3 -2
  4. package/dist/cjs/AppSwitcher/AppSwitcher.cjs +3 -2
  5. package/dist/cjs/Avatar/Avatar.cjs +1 -1
  6. package/dist/cjs/AvatarGroup/AvatarGroup.cjs +1 -1
  7. package/dist/cjs/Badge/Badge.cjs +1 -1
  8. package/dist/cjs/Banner/Banner.cjs +3 -2
  9. package/dist/cjs/Banner/BannerContent/BannerContent.cjs +1 -1
  10. package/dist/cjs/BaseCheckBox/BaseCheckBox.cjs +1 -1
  11. package/dist/cjs/BaseDropdown/BaseDropdown.cjs +83 -166
  12. package/dist/cjs/BaseDropdown/BaseDropdown.styles.cjs +2 -2
  13. package/dist/cjs/BaseDropdown/BaseDropdownPanel.cjs +80 -0
  14. package/dist/cjs/BaseDropdown/{BaseDropdownContext/BaseDropdownContext.cjs → context.cjs} +2 -2
  15. package/dist/cjs/BaseInput/BaseInput.cjs +5 -3
  16. package/dist/cjs/BaseRadio/BaseRadio.cjs +1 -1
  17. package/dist/cjs/BaseSwitch/BaseSwitch.cjs +1 -1
  18. package/dist/cjs/BreadCrumb/BreadCrumb.cjs +3 -3
  19. package/dist/cjs/BulkActions/BulkActions.cjs +4 -2
  20. package/dist/cjs/BulkActions/BulkActions.styles.cjs +1 -3
  21. package/dist/cjs/Button/Button.styles.cjs +6 -2
  22. package/dist/cjs/Card/Card.cjs +3 -2
  23. package/dist/cjs/Carousel/Carousel.cjs +3 -2
  24. package/dist/cjs/Carousel/CarouselThumbnails.cjs +1 -1
  25. package/dist/cjs/CheckBox/CheckBox.cjs +1 -1
  26. package/dist/cjs/CheckBoxGroup/CheckBoxGroup.cjs +1 -1
  27. package/dist/cjs/ColorPicker/ColorPicker.cjs +1 -1
  28. package/dist/cjs/Container/Container.cjs +1 -1
  29. package/dist/cjs/DatePicker/DatePicker.cjs +1 -1
  30. package/dist/cjs/Drawer/Drawer.cjs +4 -2
  31. package/dist/cjs/DropDownMenu/DropDownMenu.cjs +24 -30
  32. package/dist/cjs/DropDownMenu/DropDownMenu.styles.cjs +15 -2
  33. package/dist/cjs/Dropdown/List/List.cjs +6 -5
  34. package/dist/cjs/DropdownButton/DropdownButton.cjs +1 -1
  35. package/dist/cjs/EmptyState/EmptyState.cjs +4 -3
  36. package/dist/cjs/FilterGroup/FilterContent/FilterContent.cjs +1 -1
  37. package/dist/cjs/FilterGroup/FilterGroup.cjs +1 -1
  38. package/dist/cjs/Footer/Footer.cjs +4 -2
  39. package/dist/cjs/GlobalActions/GlobalActions.cjs +4 -2
  40. package/dist/cjs/Grid/Grid.cjs +1 -1
  41. package/dist/cjs/Header/Actions/Actions.cjs +1 -1
  42. package/dist/cjs/Header/Brand/Brand.cjs +1 -1
  43. package/dist/cjs/Header/Header.cjs +4 -2
  44. package/dist/cjs/Header/Navigation/Navigation.cjs +1 -1
  45. package/dist/cjs/Input/Input.cjs +1 -1
  46. package/dist/cjs/ListContainer/ListContainer.cjs +1 -1
  47. package/dist/cjs/ListContainer/ListItem/ListItem.cjs +1 -1
  48. package/dist/cjs/Loading/Loading.cjs +4 -2
  49. package/dist/cjs/LoadingContainer/LoadingContainer.cjs +4 -3
  50. package/dist/cjs/Login/Login.cjs +4 -4
  51. package/dist/cjs/MultiButton/MultiButton.cjs +3 -4
  52. package/dist/cjs/MultiButton/MultiButton.styles.cjs +48 -109
  53. package/dist/cjs/Pagination/Pagination.cjs +3 -3
  54. package/dist/cjs/Pagination/Pagination.styles.cjs +1 -1
  55. package/dist/cjs/Panel/Panel.cjs +1 -1
  56. package/dist/cjs/Panel/Panel.styles.cjs +2 -1
  57. package/dist/cjs/Radio/Radio.cjs +1 -1
  58. package/dist/cjs/RadioGroup/RadioGroup.cjs +1 -1
  59. package/dist/cjs/Section/Section.cjs +26 -31
  60. package/dist/cjs/Section/Section.styles.cjs +12 -8
  61. package/dist/cjs/Select/OptionGroup.cjs +1 -1
  62. package/dist/cjs/SelectionList/SelectionList.cjs +1 -1
  63. package/dist/cjs/Snackbar/Snackbar.cjs +27 -24
  64. package/dist/cjs/Switch/Switch.cjs +1 -1
  65. package/dist/cjs/Tab/Tab.cjs +4 -2
  66. package/dist/cjs/Table/Table.cjs +1 -1
  67. package/dist/cjs/Table/TableCell/TableCell.cjs +2 -2
  68. package/dist/cjs/Table/TableCell/TableCell.styles.cjs +2 -5
  69. package/dist/cjs/Table/TableHeader/TableHeader.cjs +43 -51
  70. package/dist/cjs/Table/TableHeader/TableHeader.styles.cjs +18 -20
  71. package/dist/cjs/Table/TableRow/TableRow.styles.cjs +7 -15
  72. package/dist/cjs/TableSection/TableSection.cjs +1 -1
  73. package/dist/cjs/TableSection/TableSection.styles.cjs +16 -14
  74. package/dist/cjs/Tabs/Tabs.cjs +5 -3
  75. package/dist/cjs/Tag/Tag.cjs +1 -1
  76. package/dist/cjs/TagsInput/TagsInput.cjs +1 -1
  77. package/dist/cjs/TextArea/TextArea.cjs +1 -1
  78. package/dist/cjs/TimePicker/Placeholder.cjs +1 -1
  79. package/dist/cjs/TimePicker/TimePicker.cjs +1 -1
  80. package/dist/cjs/ToggleButton/ToggleButton.cjs +1 -1
  81. package/dist/cjs/Tooltip/Tooltip.cjs +1 -1
  82. package/dist/cjs/TreeView/TreeItem/DefaultContent.cjs +1 -1
  83. package/dist/cjs/TreeView/TreeItem/TreeItem.cjs +1 -1
  84. package/dist/cjs/VerticalNavigation/TreeView/TreeView.cjs +1 -1
  85. package/dist/cjs/VerticalNavigation/VerticalNavigation.cjs +1 -1
  86. package/dist/cjs/utils/helpers.cjs +2 -2
  87. package/dist/esm/Accordion/Accordion.js +6 -6
  88. package/dist/esm/Accordion/Accordion.js.map +1 -1
  89. package/dist/esm/Accordion/Accordion.styles.js.map +1 -1
  90. package/dist/esm/ActionBar/ActionBar.js +4 -3
  91. package/dist/esm/ActionBar/ActionBar.js.map +1 -1
  92. package/dist/esm/ActionBar/ActionBar.styles.js.map +1 -1
  93. package/dist/esm/ActionsGeneric/ActionsGeneric.js +4 -3
  94. package/dist/esm/ActionsGeneric/ActionsGeneric.js.map +1 -1
  95. package/dist/esm/ActionsGeneric/ActionsGeneric.styles.js.map +1 -1
  96. package/dist/esm/AppSwitcher/Action/Action.js.map +1 -1
  97. package/dist/esm/AppSwitcher/Action/Action.styles.js.map +1 -1
  98. package/dist/esm/AppSwitcher/AppSwitcher.js +4 -3
  99. package/dist/esm/AppSwitcher/AppSwitcher.js.map +1 -1
  100. package/dist/esm/AppSwitcher/AppSwitcher.styles.js.map +1 -1
  101. package/dist/esm/Avatar/Avatar.js +1 -1
  102. package/dist/esm/Avatar/Avatar.js.map +1 -1
  103. package/dist/esm/Avatar/Avatar.styles.js.map +1 -1
  104. package/dist/esm/AvatarGroup/AvatarGroup.js +1 -1
  105. package/dist/esm/AvatarGroup/AvatarGroup.js.map +1 -1
  106. package/dist/esm/AvatarGroup/AvatarGroup.styles.js.map +1 -1
  107. package/dist/esm/Badge/Badge.js +1 -1
  108. package/dist/esm/Badge/Badge.js.map +1 -1
  109. package/dist/esm/Badge/Badge.styles.js.map +1 -1
  110. package/dist/esm/Banner/Banner.js +4 -3
  111. package/dist/esm/Banner/Banner.js.map +1 -1
  112. package/dist/esm/Banner/Banner.styles.js.map +1 -1
  113. package/dist/esm/Banner/BannerContent/ActionContainer/ActionContainer.js.map +1 -1
  114. package/dist/esm/Banner/BannerContent/ActionContainer/ActionContainer.styles.js.map +1 -1
  115. package/dist/esm/Banner/BannerContent/BannerContent.js +1 -1
  116. package/dist/esm/Banner/BannerContent/BannerContent.js.map +1 -1
  117. package/dist/esm/Banner/BannerContent/BannerContent.styles.js.map +1 -1
  118. package/dist/esm/Banner/BannerContent/MessageContainer/MessageContainer.js.map +1 -1
  119. package/dist/esm/Banner/BannerContent/MessageContainer/MessageContainer.styles.js.map +1 -1
  120. package/dist/esm/BaseCheckBox/BaseCheckBox.js +1 -1
  121. package/dist/esm/BaseCheckBox/BaseCheckBox.js.map +1 -1
  122. package/dist/esm/BaseCheckBox/BaseCheckBox.styles.js.map +1 -1
  123. package/dist/esm/BaseCheckBox/icons.js.map +1 -1
  124. package/dist/esm/BaseDropdown/BaseDropdown.js +83 -164
  125. package/dist/esm/BaseDropdown/BaseDropdown.js.map +1 -1
  126. package/dist/esm/BaseDropdown/BaseDropdown.styles.js +2 -2
  127. package/dist/esm/BaseDropdown/BaseDropdown.styles.js.map +1 -1
  128. package/dist/esm/BaseDropdown/BaseDropdownPanel.js +80 -0
  129. package/dist/esm/BaseDropdown/BaseDropdownPanel.js.map +1 -0
  130. package/dist/esm/BaseDropdown/{BaseDropdownContext/BaseDropdownContext.js → context.js} +1 -1
  131. package/dist/esm/BaseDropdown/context.js.map +1 -0
  132. package/dist/esm/BaseInput/BaseInput.js +6 -4
  133. package/dist/esm/BaseInput/BaseInput.js.map +1 -1
  134. package/dist/esm/BaseInput/BaseInput.styles.js.map +1 -1
  135. package/dist/esm/BaseInput/validations.js.map +1 -1
  136. package/dist/esm/BaseRadio/BaseRadio.js +1 -1
  137. package/dist/esm/BaseRadio/BaseRadio.js.map +1 -1
  138. package/dist/esm/BaseRadio/BaseRadio.styles.js.map +1 -1
  139. package/dist/esm/BaseRadio/icons.js.map +1 -1
  140. package/dist/esm/BaseSwitch/BaseSwitch.js +1 -1
  141. package/dist/esm/BaseSwitch/BaseSwitch.js.map +1 -1
  142. package/dist/esm/BaseSwitch/BaseSwitch.styles.js.map +1 -1
  143. package/dist/esm/BreadCrumb/BreadCrumb.js +4 -4
  144. package/dist/esm/BreadCrumb/BreadCrumb.js.map +1 -1
  145. package/dist/esm/BreadCrumb/BreadCrumb.styles.js.map +1 -1
  146. package/dist/esm/BreadCrumb/Page/Page.js.map +1 -1
  147. package/dist/esm/BreadCrumb/Page/Page.styles.js.map +1 -1
  148. package/dist/esm/BreadCrumb/PathElement/PathElement.js.map +1 -1
  149. package/dist/esm/BreadCrumb/PathElement/PathElement.styles.js.map +1 -1
  150. package/dist/esm/BreadCrumb/utils.js.map +1 -1
  151. package/dist/esm/BulkActions/BulkActions.js +4 -2
  152. package/dist/esm/BulkActions/BulkActions.js.map +1 -1
  153. package/dist/esm/BulkActions/BulkActions.styles.js +1 -3
  154. package/dist/esm/BulkActions/BulkActions.styles.js.map +1 -1
  155. package/dist/esm/Button/Button.js.map +1 -1
  156. package/dist/esm/Button/Button.styles.js +6 -2
  157. package/dist/esm/Button/Button.styles.js.map +1 -1
  158. package/dist/esm/ButtonBase/ButtonBase.js.map +1 -1
  159. package/dist/esm/ButtonBase/ButtonBase.styles.js.map +1 -1
  160. package/dist/esm/Calendar/Calendar.js.map +1 -1
  161. package/dist/esm/Calendar/Calendar.styles.js.map +1 -1
  162. package/dist/esm/Calendar/CalendarHeader/CalendarHeader.js.map +1 -1
  163. package/dist/esm/Calendar/CalendarHeader/CalendarHeader.styles.js.map +1 -1
  164. package/dist/esm/Calendar/CalendarNavigation/ComposedNavigation/ComposedNavigation.js.map +1 -1
  165. package/dist/esm/Calendar/CalendarNavigation/ComposedNavigation/ComposedNavigation.styles.js.map +1 -1
  166. package/dist/esm/Calendar/CalendarNavigation/MonthSelector/MonthSelector.js.map +1 -1
  167. package/dist/esm/Calendar/CalendarNavigation/MonthSelector/MonthSelector.styles.js.map +1 -1
  168. package/dist/esm/Calendar/CalendarNavigation/Navigation/Navigation.js.map +1 -1
  169. package/dist/esm/Calendar/CalendarNavigation/Navigation/Navigation.styles.js.map +1 -1
  170. package/dist/esm/Calendar/SingleCalendar/CalendarCell.js.map +1 -1
  171. package/dist/esm/Calendar/SingleCalendar/CalendarCell.styles.js.map +1 -1
  172. package/dist/esm/Calendar/SingleCalendar/SingleCalendar.js.map +1 -1
  173. package/dist/esm/Calendar/SingleCalendar/SingleCalendar.styles.js.map +1 -1
  174. package/dist/esm/Calendar/model.js.map +1 -1
  175. package/dist/esm/Calendar/utils.js.map +1 -1
  176. package/dist/esm/Card/Card.js +3 -2
  177. package/dist/esm/Card/Card.js.map +1 -1
  178. package/dist/esm/Card/Card.styles.js.map +1 -1
  179. package/dist/esm/Card/Content/Content.js.map +1 -1
  180. package/dist/esm/Card/Content/Content.styles.js.map +1 -1
  181. package/dist/esm/Card/Header/Header.js.map +1 -1
  182. package/dist/esm/Card/Header/Header.styles.js.map +1 -1
  183. package/dist/esm/Card/Media/Media.js.map +1 -1
  184. package/dist/esm/Card/Media/Media.styles.js.map +1 -1
  185. package/dist/esm/Carousel/Carousel.js +4 -3
  186. package/dist/esm/Carousel/Carousel.js.map +1 -1
  187. package/dist/esm/Carousel/Carousel.styles.js.map +1 -1
  188. package/dist/esm/Carousel/CarouselControls.js.map +1 -1
  189. package/dist/esm/Carousel/CarouselSlide/CarouselSlide.js.map +1 -1
  190. package/dist/esm/Carousel/CarouselSlide/CarouselSlide.styles.js.map +1 -1
  191. package/dist/esm/Carousel/CarouselThumbnails.js +1 -1
  192. package/dist/esm/Carousel/CarouselThumbnails.js.map +1 -1
  193. package/dist/esm/CheckBox/CheckBox.js +1 -1
  194. package/dist/esm/CheckBox/CheckBox.js.map +1 -1
  195. package/dist/esm/CheckBox/CheckBox.styles.js.map +1 -1
  196. package/dist/esm/CheckBoxGroup/CheckBoxGroup.js +1 -1
  197. package/dist/esm/CheckBoxGroup/CheckBoxGroup.js.map +1 -1
  198. package/dist/esm/CheckBoxGroup/CheckBoxGroup.styles.js.map +1 -1
  199. package/dist/esm/ColorPicker/ColorPicker.js +1 -1
  200. package/dist/esm/ColorPicker/ColorPicker.js.map +1 -1
  201. package/dist/esm/ColorPicker/ColorPicker.styles.js.map +1 -1
  202. package/dist/esm/ColorPicker/Fields/Fields.js.map +1 -1
  203. package/dist/esm/ColorPicker/Fields/Fields.styles.js.map +1 -1
  204. package/dist/esm/ColorPicker/Picker/Picker.js.map +1 -1
  205. package/dist/esm/ColorPicker/Picker/Picker.styles.js.map +1 -1
  206. package/dist/esm/ColorPicker/PresetColors/PresetColors.js.map +1 -1
  207. package/dist/esm/ColorPicker/PresetColors/PresetColors.styles.js.map +1 -1
  208. package/dist/esm/ColorPicker/SavedColors/SavedColors.js.map +1 -1
  209. package/dist/esm/ColorPicker/SavedColors/SavedColors.styles.js.map +1 -1
  210. package/dist/esm/Container/Container.js +1 -1
  211. package/dist/esm/Container/Container.js.map +1 -1
  212. package/dist/esm/Container/Container.styles.js.map +1 -1
  213. package/dist/esm/Controls/Controls.js.map +1 -1
  214. package/dist/esm/Controls/Controls.styles.js.map +1 -1
  215. package/dist/esm/Controls/LeftControl/LeftControl.js.map +1 -1
  216. package/dist/esm/Controls/RightControl/RightControl.js.map +1 -1
  217. package/dist/esm/Controls/context/ControlsContext.js.map +1 -1
  218. package/dist/esm/DatePicker/DatePicker.js +1 -1
  219. package/dist/esm/DatePicker/DatePicker.js.map +1 -1
  220. package/dist/esm/DatePicker/DatePicker.styles.js.map +1 -1
  221. package/dist/esm/DatePicker/useVisibleDate.js.map +1 -1
  222. package/dist/esm/DatePicker/utils.js.map +1 -1
  223. package/dist/esm/Dialog/Actions/Actions.js.map +1 -1
  224. package/dist/esm/Dialog/Actions/Actions.styles.js.map +1 -1
  225. package/dist/esm/Dialog/Content/Content.js.map +1 -1
  226. package/dist/esm/Dialog/Content/Content.styles.js.map +1 -1
  227. package/dist/esm/Dialog/Dialog.js.map +1 -1
  228. package/dist/esm/Dialog/Dialog.styles.js.map +1 -1
  229. package/dist/esm/Dialog/Title/Title.js.map +1 -1
  230. package/dist/esm/Dialog/Title/Title.styles.js.map +1 -1
  231. package/dist/esm/Dialog/context.js.map +1 -1
  232. package/dist/esm/DotPagination/DotPagination.js.map +1 -1
  233. package/dist/esm/DotPagination/DotPagination.styles.js.map +1 -1
  234. package/dist/esm/Drawer/Drawer.js +4 -2
  235. package/dist/esm/Drawer/Drawer.js.map +1 -1
  236. package/dist/esm/Drawer/Drawer.styles.js.map +1 -1
  237. package/dist/esm/DropDownMenu/DropDownMenu.js +23 -29
  238. package/dist/esm/DropDownMenu/DropDownMenu.js.map +1 -1
  239. package/dist/esm/DropDownMenu/DropDownMenu.styles.js +15 -2
  240. package/dist/esm/DropDownMenu/DropDownMenu.styles.js.map +1 -1
  241. package/dist/esm/Dropdown/Dropdown.js.map +1 -1
  242. package/dist/esm/Dropdown/Dropdown.styles.js.map +1 -1
  243. package/dist/esm/Dropdown/List/List.js +6 -5
  244. package/dist/esm/Dropdown/List/List.js.map +1 -1
  245. package/dist/esm/Dropdown/List/List.styles.js.map +1 -1
  246. package/dist/esm/Dropdown/utils.js.map +1 -1
  247. package/dist/esm/DropdownButton/DropdownButton.js +1 -1
  248. package/dist/esm/DropdownButton/DropdownButton.js.map +1 -1
  249. package/dist/esm/DropdownButton/DropdownButton.styles.js.map +1 -1
  250. package/dist/esm/EmptyState/EmptyState.js +4 -3
  251. package/dist/esm/EmptyState/EmptyState.js.map +1 -1
  252. package/dist/esm/EmptyState/EmptyState.styles.js.map +1 -1
  253. package/dist/esm/FileUploader/DropZone/DropZone.js.map +1 -1
  254. package/dist/esm/FileUploader/DropZone/DropZone.styles.js.map +1 -1
  255. package/dist/esm/FileUploader/File/File.js.map +1 -1
  256. package/dist/esm/FileUploader/File/File.styles.js.map +1 -1
  257. package/dist/esm/FileUploader/FileList/FileList.js.map +1 -1
  258. package/dist/esm/FileUploader/FileList/FileList.styles.js.map +1 -1
  259. package/dist/esm/FileUploader/FileUploader.js.map +1 -1
  260. package/dist/esm/FileUploader/Preview/Preview.js.map +1 -1
  261. package/dist/esm/FileUploader/Preview/Preview.styles.js.map +1 -1
  262. package/dist/esm/FileUploader/utils.js.map +1 -1
  263. package/dist/esm/FilterGroup/Counter/Counter.js.map +1 -1
  264. package/dist/esm/FilterGroup/Counter/Counter.styles.js.map +1 -1
  265. package/dist/esm/FilterGroup/FilterContent/FilterContent.js +1 -1
  266. package/dist/esm/FilterGroup/FilterContent/FilterContent.js.map +1 -1
  267. package/dist/esm/FilterGroup/FilterContent/FilterContent.styles.js.map +1 -1
  268. package/dist/esm/FilterGroup/FilterGroup.js +1 -1
  269. package/dist/esm/FilterGroup/FilterGroup.js.map +1 -1
  270. package/dist/esm/FilterGroup/FilterGroup.styles.js.map +1 -1
  271. package/dist/esm/FilterGroup/FilterGroupContext.js.map +1 -1
  272. package/dist/esm/FilterGroup/LeftPanel/LeftPanel.js.map +1 -1
  273. package/dist/esm/FilterGroup/LeftPanel/LeftPanel.styles.js.map +1 -1
  274. package/dist/esm/FilterGroup/RightPanel/RightPanel.js.map +1 -1
  275. package/dist/esm/FilterGroup/RightPanel/RightPanel.styles.js.map +1 -1
  276. package/dist/esm/Focus/Focus.js.map +1 -1
  277. package/dist/esm/Focus/Focus.styles.js.map +1 -1
  278. package/dist/esm/Focus/utils.js.map +1 -1
  279. package/dist/esm/Footer/Footer.js +4 -2
  280. package/dist/esm/Footer/Footer.js.map +1 -1
  281. package/dist/esm/Footer/Footer.styles.js.map +1 -1
  282. package/dist/esm/Forms/Adornment/Adornment.js.map +1 -1
  283. package/dist/esm/Forms/Adornment/Adornment.styles.js.map +1 -1
  284. package/dist/esm/Forms/CharCounter/CharCounter.js.map +1 -1
  285. package/dist/esm/Forms/FormElement/FormElement.js.map +1 -1
  286. package/dist/esm/Forms/FormElement/FormElement.styles.js.map +1 -1
  287. package/dist/esm/Forms/FormElement/context/FormElementContext.js.map +1 -1
  288. package/dist/esm/Forms/FormElement/context/FormElementDescriptorsContext.js.map +1 -1
  289. package/dist/esm/Forms/FormElement/utils/FormUtils.js.map +1 -1
  290. package/dist/esm/Forms/InfoMessage/InfoMessage.js.map +1 -1
  291. package/dist/esm/Forms/Label/Label.js.map +1 -1
  292. package/dist/esm/Forms/Suggestions/Suggestions.js.map +1 -1
  293. package/dist/esm/Forms/Suggestions/Suggestions.styles.js.map +1 -1
  294. package/dist/esm/Forms/WarningText/WarningText.js.map +1 -1
  295. package/dist/esm/GlobalActions/GlobalActions.js +4 -2
  296. package/dist/esm/GlobalActions/GlobalActions.js.map +1 -1
  297. package/dist/esm/GlobalActions/GlobalActions.styles.js.map +1 -1
  298. package/dist/esm/Grid/Grid.js +1 -1
  299. package/dist/esm/Grid/Grid.js.map +1 -1
  300. package/dist/esm/Grid/Grid.styles.js.map +1 -1
  301. package/dist/esm/Header/Actions/Actions.js +1 -1
  302. package/dist/esm/Header/Actions/Actions.js.map +1 -1
  303. package/dist/esm/Header/Actions/Actions.styles.js.map +1 -1
  304. package/dist/esm/Header/Brand/Brand.js +1 -1
  305. package/dist/esm/Header/Brand/Brand.js.map +1 -1
  306. package/dist/esm/Header/Brand/Brand.styles.js.map +1 -1
  307. package/dist/esm/Header/Header.js +4 -2
  308. package/dist/esm/Header/Header.js.map +1 -1
  309. package/dist/esm/Header/Header.styles.js.map +1 -1
  310. package/dist/esm/Header/Navigation/MenuBar/Bar.js.map +1 -1
  311. package/dist/esm/Header/Navigation/MenuBar/Bar.styles.js.map +1 -1
  312. package/dist/esm/Header/Navigation/MenuBar/MenuBar.js.map +1 -1
  313. package/dist/esm/Header/Navigation/MenuItem/MenuItem.js.map +1 -1
  314. package/dist/esm/Header/Navigation/MenuItem/MenuItem.styles.js.map +1 -1
  315. package/dist/esm/Header/Navigation/Navigation.js +1 -1
  316. package/dist/esm/Header/Navigation/Navigation.js.map +1 -1
  317. package/dist/esm/Header/Navigation/Navigation.styles.js.map +1 -1
  318. package/dist/esm/Header/Navigation/useSelectionPath.js.map +1 -1
  319. package/dist/esm/Header/Navigation/utils/FocusContext.js.map +1 -1
  320. package/dist/esm/IconButton/IconButton.js.map +1 -1
  321. package/dist/esm/InlineEditor/InlineEditor.js.map +1 -1
  322. package/dist/esm/InlineEditor/InlineEditor.styles.js.map +1 -1
  323. package/dist/esm/Input/Input.js +1 -1
  324. package/dist/esm/Input/Input.js.map +1 -1
  325. package/dist/esm/Input/Input.styles.js.map +1 -1
  326. package/dist/esm/Kpi/Kpi.js.map +1 -1
  327. package/dist/esm/Link/Link.js.map +1 -1
  328. package/dist/esm/Link/Link.styles.js.map +1 -1
  329. package/dist/esm/List/List.js.map +1 -1
  330. package/dist/esm/List/List.styles.js.map +1 -1
  331. package/dist/esm/List/utils.js.map +1 -1
  332. package/dist/esm/ListContainer/ListContainer.js +1 -1
  333. package/dist/esm/ListContainer/ListContainer.js.map +1 -1
  334. package/dist/esm/ListContainer/ListContainer.styles.js.map +1 -1
  335. package/dist/esm/ListContainer/ListContext/ListContext.js.map +1 -1
  336. package/dist/esm/ListContainer/ListItem/ListItem.js +1 -1
  337. package/dist/esm/ListContainer/ListItem/ListItem.js.map +1 -1
  338. package/dist/esm/ListContainer/ListItem/ListItem.styles.js.map +1 -1
  339. package/dist/esm/Loading/Loading.js +4 -2
  340. package/dist/esm/Loading/Loading.js.map +1 -1
  341. package/dist/esm/Loading/Loading.styles.js.map +1 -1
  342. package/dist/esm/LoadingContainer/LoadingContainer.js +4 -3
  343. package/dist/esm/LoadingContainer/LoadingContainer.js.map +1 -1
  344. package/dist/esm/LoadingContainer/LoadingContainer.styles.js.map +1 -1
  345. package/dist/esm/Login/Login.js +4 -4
  346. package/dist/esm/Login/Login.js.map +1 -1
  347. package/dist/esm/Login/Login.styles.js.map +1 -1
  348. package/dist/esm/MultiButton/MultiButton.js +3 -4
  349. package/dist/esm/MultiButton/MultiButton.js.map +1 -1
  350. package/dist/esm/MultiButton/MultiButton.styles.js +48 -109
  351. package/dist/esm/MultiButton/MultiButton.styles.js.map +1 -1
  352. package/dist/esm/OverflowTooltip/OverflowTooltip.js.map +1 -1
  353. package/dist/esm/OverflowTooltip/OverflowTooltip.styles.js.map +1 -1
  354. package/dist/esm/Pagination/Pagination.js +4 -4
  355. package/dist/esm/Pagination/Pagination.js.map +1 -1
  356. package/dist/esm/Pagination/Pagination.styles.js +1 -1
  357. package/dist/esm/Pagination/Pagination.styles.js.map +1 -1
  358. package/dist/esm/Pagination/Select.js.map +1 -1
  359. package/dist/esm/Pagination/Select.styles.js.map +1 -1
  360. package/dist/esm/Panel/Panel.js +1 -1
  361. package/dist/esm/Panel/Panel.js.map +1 -1
  362. package/dist/esm/Panel/Panel.styles.js +2 -1
  363. package/dist/esm/Panel/Panel.styles.js.map +1 -1
  364. package/dist/esm/ProgressBar/ProgressBar.js.map +1 -1
  365. package/dist/esm/ProgressBar/ProgressBar.styles.js.map +1 -1
  366. package/dist/esm/QueryBuilder/ConfirmationDialog/ConfirmationDialog.js.map +1 -1
  367. package/dist/esm/QueryBuilder/ConfirmationDialog/ConfirmationDialog.styles.js.map +1 -1
  368. package/dist/esm/QueryBuilder/Context.js.map +1 -1
  369. package/dist/esm/QueryBuilder/QueryBuilder.js.map +1 -1
  370. package/dist/esm/QueryBuilder/QueryBuilder.styles.js.map +1 -1
  371. package/dist/esm/QueryBuilder/Rule/Attribute/Attribute.js.map +1 -1
  372. package/dist/esm/QueryBuilder/Rule/Operator/Operator.js.map +1 -1
  373. package/dist/esm/QueryBuilder/Rule/Rule.js.map +1 -1
  374. package/dist/esm/QueryBuilder/Rule/Rule.styles.js.map +1 -1
  375. package/dist/esm/QueryBuilder/Rule/Value/BooleanValue/BooleanValue.js.map +1 -1
  376. package/dist/esm/QueryBuilder/Rule/Value/DateTimeValue/DateTimeValue.js.map +1 -1
  377. package/dist/esm/QueryBuilder/Rule/Value/DateTimeValue/DateTimeValue.styles.js.map +1 -1
  378. package/dist/esm/QueryBuilder/Rule/Value/DateTimeValue/utils.js.map +1 -1
  379. package/dist/esm/QueryBuilder/Rule/Value/EmptyValue/EmptyValue.js.map +1 -1
  380. package/dist/esm/QueryBuilder/Rule/Value/NumericValue/Numeric.styles.js.map +1 -1
  381. package/dist/esm/QueryBuilder/Rule/Value/NumericValue/NumericValue.js.map +1 -1
  382. package/dist/esm/QueryBuilder/Rule/Value/TextValue/TextValue.js.map +1 -1
  383. package/dist/esm/QueryBuilder/Rule/Value/TextValue/TextValue.styles.js.map +1 -1
  384. package/dist/esm/QueryBuilder/Rule/Value/Value.js.map +1 -1
  385. package/dist/esm/QueryBuilder/RuleGroup/RuleGroup.js.map +1 -1
  386. package/dist/esm/QueryBuilder/utils/index.js.map +1 -1
  387. package/dist/esm/QueryBuilder/utils/reducer.js.map +1 -1
  388. package/dist/esm/Radio/Radio.js +1 -1
  389. package/dist/esm/Radio/Radio.js.map +1 -1
  390. package/dist/esm/Radio/Radio.styles.js.map +1 -1
  391. package/dist/esm/RadioGroup/RadioGroup.js +1 -1
  392. package/dist/esm/RadioGroup/RadioGroup.js.map +1 -1
  393. package/dist/esm/RadioGroup/RadioGroup.styles.js.map +1 -1
  394. package/dist/esm/ScrollTo/Horizontal/HorizontalScrollListItem/HorizontalScrollListItem.js.map +1 -1
  395. package/dist/esm/ScrollTo/Horizontal/HorizontalScrollListItem/HorizontalScrollListItem.styles.js.map +1 -1
  396. package/dist/esm/ScrollTo/Horizontal/ScrollToHorizontal.js.map +1 -1
  397. package/dist/esm/ScrollTo/Horizontal/ScrollToHorizontal.styles.js.map +1 -1
  398. package/dist/esm/ScrollTo/Vertical/ScrollToVertical.js.map +1 -1
  399. package/dist/esm/ScrollTo/Vertical/ScrollToVertical.styles.js.map +1 -1
  400. package/dist/esm/ScrollTo/Vertical/VerticalScrollListItem/VerticalScrollListItem.js.map +1 -1
  401. package/dist/esm/ScrollTo/Vertical/VerticalScrollListItem/VerticalScrollListItem.styles.js.map +1 -1
  402. package/dist/esm/ScrollTo/useScrollTo.js.map +1 -1
  403. package/dist/esm/ScrollTo/utils.js.map +1 -1
  404. package/dist/esm/Section/Section.js +26 -31
  405. package/dist/esm/Section/Section.js.map +1 -1
  406. package/dist/esm/Section/Section.styles.js +12 -8
  407. package/dist/esm/Section/Section.styles.js.map +1 -1
  408. package/dist/esm/Select/Option.js.map +1 -1
  409. package/dist/esm/Select/OptionGroup.js +1 -1
  410. package/dist/esm/Select/OptionGroup.js.map +1 -1
  411. package/dist/esm/Select/Select.js.map +1 -1
  412. package/dist/esm/Select/Select.styles.js.map +1 -1
  413. package/dist/esm/SelectionList/SelectionList.js +1 -1
  414. package/dist/esm/SelectionList/SelectionList.js.map +1 -1
  415. package/dist/esm/SelectionList/SelectionList.styles.js.map +1 -1
  416. package/dist/esm/SimpleGrid/SimpleGrid.js.map +1 -1
  417. package/dist/esm/SimpleGrid/SimpleGrid.styles.js.map +1 -1
  418. package/dist/esm/Skeleton/Skeleton.js.map +1 -1
  419. package/dist/esm/Skeleton/Skeleton.styles.js.map +1 -1
  420. package/dist/esm/Slider/Slider.js.map +1 -1
  421. package/dist/esm/Slider/Slider.styles.js.map +1 -1
  422. package/dist/esm/Slider/SliderInput/SliderInput.js.map +1 -1
  423. package/dist/esm/Slider/base.js.map +1 -1
  424. package/dist/esm/Slider/utils.js.map +1 -1
  425. package/dist/esm/Snackbar/Snackbar.js +28 -25
  426. package/dist/esm/Snackbar/Snackbar.js.map +1 -1
  427. package/dist/esm/Snackbar/Snackbar.styles.js.map +1 -1
  428. package/dist/esm/Snackbar/SnackbarContent/SnackbarContent.js.map +1 -1
  429. package/dist/esm/Snackbar/SnackbarContent/SnackbarContent.styles.js.map +1 -1
  430. package/dist/esm/SnackbarProvider/SnackbarProvider.js.map +1 -1
  431. package/dist/esm/SnackbarProvider/SnackbarProvider.styles.js.map +1 -1
  432. package/dist/esm/Stack/Stack.js.map +1 -1
  433. package/dist/esm/Stack/Stack.styles.js.map +1 -1
  434. package/dist/esm/Switch/Switch.js +1 -1
  435. package/dist/esm/Switch/Switch.js.map +1 -1
  436. package/dist/esm/Switch/Switch.styles.js.map +1 -1
  437. package/dist/esm/Tab/Tab.js +4 -2
  438. package/dist/esm/Tab/Tab.js.map +1 -1
  439. package/dist/esm/Tab/Tab.styles.js.map +1 -1
  440. package/dist/esm/Table/Table.js +1 -1
  441. package/dist/esm/Table/Table.js.map +1 -1
  442. package/dist/esm/Table/Table.styles.js.map +1 -1
  443. package/dist/esm/Table/TableBody/TableBody.js.map +1 -1
  444. package/dist/esm/Table/TableCell/TableCell.js +2 -2
  445. package/dist/esm/Table/TableCell/TableCell.js.map +1 -1
  446. package/dist/esm/Table/TableCell/TableCell.styles.js +2 -5
  447. package/dist/esm/Table/TableCell/TableCell.styles.js.map +1 -1
  448. package/dist/esm/Table/TableContainer/TableContainer.js.map +1 -1
  449. package/dist/esm/Table/TableContainer/TableContainer.styles.js.map +1 -1
  450. package/dist/esm/Table/TableHead/TableHead.js.map +1 -1
  451. package/dist/esm/Table/TableHeader/TableHeader.js +47 -54
  452. package/dist/esm/Table/TableHeader/TableHeader.js.map +1 -1
  453. package/dist/esm/Table/TableHeader/TableHeader.styles.js +18 -20
  454. package/dist/esm/Table/TableHeader/TableHeader.styles.js.map +1 -1
  455. package/dist/esm/Table/TableHeader/utils.js.map +1 -1
  456. package/dist/esm/Table/TableRow/TableRow.js.map +1 -1
  457. package/dist/esm/Table/TableRow/TableRow.styles.js +7 -15
  458. package/dist/esm/Table/TableRow/TableRow.styles.js.map +1 -1
  459. package/dist/esm/Table/hooks/useBulkActions.js.map +1 -1
  460. package/dist/esm/Table/hooks/useFilters.js.map +1 -1
  461. package/dist/esm/Table/hooks/useGlobalFilter.js.map +1 -1
  462. package/dist/esm/Table/hooks/useHeaderGroups.js.map +1 -1
  463. package/dist/esm/Table/hooks/usePagination.js.map +1 -1
  464. package/dist/esm/Table/hooks/useResizeColumns.js.map +1 -1
  465. package/dist/esm/Table/hooks/useRowExpand.js.map +1 -1
  466. package/dist/esm/Table/hooks/useRowSelection.js.map +1 -1
  467. package/dist/esm/Table/hooks/useRowState.js.map +1 -1
  468. package/dist/esm/Table/hooks/useSortBy.js.map +1 -1
  469. package/dist/esm/Table/hooks/useSticky.js.map +1 -1
  470. package/dist/esm/Table/hooks/useTable.js.map +1 -1
  471. package/dist/esm/Table/hooks/useTableStyles.js.map +1 -1
  472. package/dist/esm/Table/renderers/DateColumnCell/DateColumnCell.js.map +1 -1
  473. package/dist/esm/Table/renderers/ProgressColumnCell/ProgressColumnCell.js.map +1 -1
  474. package/dist/esm/Table/renderers/ProgressColumnCell/ProgressColumnCell.styles.js.map +1 -1
  475. package/dist/esm/Table/renderers/SwitchColumnCell/SwitchColumnCell.js.map +1 -1
  476. package/dist/esm/Table/renderers/SwitchColumnCell/SwitchColumnCell.styles.js.map +1 -1
  477. package/dist/esm/Table/renderers/renderers.js.map +1 -1
  478. package/dist/esm/Table/utils/fallbacks.js.map +1 -1
  479. package/dist/esm/Table/utils/utils.js.map +1 -1
  480. package/dist/esm/TableSection/TableSection.js +1 -1
  481. package/dist/esm/TableSection/TableSection.js.map +1 -1
  482. package/dist/esm/TableSection/TableSection.styles.js +16 -14
  483. package/dist/esm/TableSection/TableSection.styles.js.map +1 -1
  484. package/dist/esm/Tabs/Tabs.js +5 -3
  485. package/dist/esm/Tabs/Tabs.js.map +1 -1
  486. package/dist/esm/Tabs/Tabs.styles.js.map +1 -1
  487. package/dist/esm/Tag/Tag.js +1 -1
  488. package/dist/esm/Tag/Tag.js.map +1 -1
  489. package/dist/esm/Tag/Tag.styles.js.map +1 -1
  490. package/dist/esm/TagsInput/TagsInput.js +1 -1
  491. package/dist/esm/TagsInput/TagsInput.js.map +1 -1
  492. package/dist/esm/TagsInput/TagsInput.styles.js.map +1 -1
  493. package/dist/esm/TextArea/TextArea.js +1 -1
  494. package/dist/esm/TextArea/TextArea.js.map +1 -1
  495. package/dist/esm/TimeAgo/TimeAgo.js.map +1 -1
  496. package/dist/esm/TimeAgo/TimeAgo.styles.js.map +1 -1
  497. package/dist/esm/TimeAgo/formatUtils.js.map +1 -1
  498. package/dist/esm/TimeAgo/useTimeAgo.js.map +1 -1
  499. package/dist/esm/TimePicker/Placeholder.js +1 -1
  500. package/dist/esm/TimePicker/Placeholder.js.map +1 -1
  501. package/dist/esm/TimePicker/TimePicker.js +1 -1
  502. package/dist/esm/TimePicker/TimePicker.js.map +1 -1
  503. package/dist/esm/TimePicker/TimePicker.styles.js.map +1 -1
  504. package/dist/esm/TimePicker/Unit/Unit.js.map +1 -1
  505. package/dist/esm/TimePicker/Unit/Unit.styles.js.map +1 -1
  506. package/dist/esm/ToggleButton/ToggleButton.js +1 -1
  507. package/dist/esm/ToggleButton/ToggleButton.js.map +1 -1
  508. package/dist/esm/Tooltip/Tooltip.js +1 -1
  509. package/dist/esm/Tooltip/Tooltip.js.map +1 -1
  510. package/dist/esm/Tooltip/Tooltip.styles.js.map +1 -1
  511. package/dist/esm/TreeView/TreeItem/DefaultContent.js +1 -1
  512. package/dist/esm/TreeView/TreeItem/DefaultContent.js.map +1 -1
  513. package/dist/esm/TreeView/TreeItem/TreeItem.js +1 -1
  514. package/dist/esm/TreeView/TreeItem/TreeItem.js.map +1 -1
  515. package/dist/esm/TreeView/TreeItem/TreeItem.styles.js.map +1 -1
  516. package/dist/esm/TreeView/TreeItem/useHvTreeItem.js.map +1 -1
  517. package/dist/esm/TreeView/TreeView.js.map +1 -1
  518. package/dist/esm/TreeView/TreeView.styles.js.map +1 -1
  519. package/dist/esm/TreeView/internals/DescendantProvider.js.map +1 -1
  520. package/dist/esm/TreeView/internals/TreeViewProvider.js.map +1 -1
  521. package/dist/esm/TreeView/internals/hooks/plugins/useTreeViewContextValueBuilder.js.map +1 -1
  522. package/dist/esm/TreeView/internals/hooks/plugins/useTreeViewExpansion.js.map +1 -1
  523. package/dist/esm/TreeView/internals/hooks/plugins/useTreeViewFocus.js.map +1 -1
  524. package/dist/esm/TreeView/internals/hooks/plugins/useTreeViewKeyboardNavigation.js.map +1 -1
  525. package/dist/esm/TreeView/internals/hooks/plugins/useTreeViewNodes.js.map +1 -1
  526. package/dist/esm/TreeView/internals/hooks/plugins/useTreeViewSelection.js.map +1 -1
  527. package/dist/esm/TreeView/internals/hooks/useInstanceEventHandler.js.map +1 -1
  528. package/dist/esm/TreeView/internals/hooks/useTreeView.js.map +1 -1
  529. package/dist/esm/TreeView/internals/hooks/useTreeViewInstanceEvents.js.map +1 -1
  530. package/dist/esm/TreeView/internals/hooks/useTreeViewModels.js.map +1 -1
  531. package/dist/esm/TreeView/internals/hooks/utils.js.map +1 -1
  532. package/dist/esm/TreeView/internals/utils/EventManager.js.map +1 -1
  533. package/dist/esm/TreeView/internals/utils/FinalizationRegistryBasedCleanupTracking.js.map +1 -1
  534. package/dist/esm/TreeView/internals/utils/TimerBasedCleanupTracking.js.map +1 -1
  535. package/dist/esm/Typography/Typography.js.map +1 -1
  536. package/dist/esm/Typography/Typography.styles.js.map +1 -1
  537. package/dist/esm/VerticalNavigation/Actions/Action.js.map +1 -1
  538. package/dist/esm/VerticalNavigation/Actions/Action.styles.js.map +1 -1
  539. package/dist/esm/VerticalNavigation/Actions/Actions.js.map +1 -1
  540. package/dist/esm/VerticalNavigation/Actions/Actions.styles.js.map +1 -1
  541. package/dist/esm/VerticalNavigation/Header/Header.js.map +1 -1
  542. package/dist/esm/VerticalNavigation/Header/Header.styles.js.map +1 -1
  543. package/dist/esm/VerticalNavigation/Navigation/Navigation.js.map +1 -1
  544. package/dist/esm/VerticalNavigation/Navigation/Navigation.styles.js.map +1 -1
  545. package/dist/esm/VerticalNavigation/NavigationPopup/NavigationPopup.styles.js.map +1 -1
  546. package/dist/esm/VerticalNavigation/NavigationPopup/NavigationPopupContainer.js.map +1 -1
  547. package/dist/esm/VerticalNavigation/NavigationSlider/NavigationSlider.js.map +1 -1
  548. package/dist/esm/VerticalNavigation/NavigationSlider/NavigationSlider.styles.js.map +1 -1
  549. package/dist/esm/VerticalNavigation/NavigationSlider/utils.js.map +1 -1
  550. package/dist/esm/VerticalNavigation/TreeView/TreeView.js +1 -1
  551. package/dist/esm/VerticalNavigation/TreeView/TreeView.js.map +1 -1
  552. package/dist/esm/VerticalNavigation/TreeView/TreeView.styles.js.map +1 -1
  553. package/dist/esm/VerticalNavigation/TreeView/TreeViewContext.js.map +1 -1
  554. package/dist/esm/VerticalNavigation/TreeView/TreeViewItem.js.map +1 -1
  555. package/dist/esm/VerticalNavigation/TreeView/TreeViewItem.styles.js.map +1 -1
  556. package/dist/esm/VerticalNavigation/VerticalNavigation.js +1 -1
  557. package/dist/esm/VerticalNavigation/VerticalNavigation.js.map +1 -1
  558. package/dist/esm/VerticalNavigation/VerticalNavigation.styles.js.map +1 -1
  559. package/dist/esm/VerticalNavigation/VerticalNavigationContext.js.map +1 -1
  560. package/dist/esm/hocs/withTooltip.js.map +1 -1
  561. package/dist/esm/hooks/useClickOutside.js.map +1 -1
  562. package/dist/esm/hooks/useComputation.js.map +1 -1
  563. package/dist/esm/hooks/useControlled.js.map +1 -1
  564. package/dist/esm/hooks/useExpandable.js.map +1 -1
  565. package/dist/esm/hooks/useForkRef.js.map +1 -1
  566. package/dist/esm/hooks/useImageLoaded.js.map +1 -1
  567. package/dist/esm/hooks/useIsMounted.js.map +1 -1
  568. package/dist/esm/hooks/useUniqueId.js.map +1 -1
  569. package/dist/esm/hooks/useWidth.js.map +1 -1
  570. package/dist/esm/providers/Provider.js.map +1 -1
  571. package/dist/esm/providers/ThemeProvider.js.map +1 -1
  572. package/dist/esm/utils/Random.js.map +1 -1
  573. package/dist/esm/utils/browser.js.map +1 -1
  574. package/dist/esm/utils/deepMerge.js.map +1 -1
  575. package/dist/esm/utils/document.js.map +1 -1
  576. package/dist/esm/utils/focusableElementFinder.js.map +1 -1
  577. package/dist/esm/utils/helpers.js +2 -2
  578. package/dist/esm/utils/helpers.js.map +1 -1
  579. package/dist/esm/utils/iconVariant.js.map +1 -1
  580. package/dist/esm/utils/multiSelectionEventHandler.js.map +1 -1
  581. package/dist/esm/utils/sizes.js.map +1 -1
  582. package/dist/esm/utils/theme.js.map +1 -1
  583. package/dist/esm/utils/useSavedState.js.map +1 -1
  584. package/dist/esm/utils/wrapperTooltip.js.map +1 -1
  585. package/dist/types/index.d.ts +44 -42
  586. package/package.json +6 -6
  587. package/dist/esm/BaseDropdown/BaseDropdownContext/BaseDropdownContext.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ListItem.js","sources":["../../../../src/ListContainer/ListItem/ListItem.tsx"],"sourcesContent":["import {\n cloneElement,\n forwardRef,\n isValidElement,\n ReactElement,\n useCallback,\n useContext,\n useMemo,\n} from \"react\";\nimport {\n useDefaultProps,\n type ExtractNames,\n} from \"@hitachivantara/uikit-react-utils\";\n\nimport { HvFocus } from \"../../Focus\";\nimport { HvBaseProps } from \"../../types/generic\";\nimport HvListContext from \"../ListContext\";\nimport { staticClasses, useClasses } from \"./ListItem.styles\";\n\nexport { staticClasses as listItemClasses };\n\nexport type HvListItemClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvListItemProps extends HvBaseProps<HTMLLIElement> {\n /** Indicates if the list item is selected. */\n selected?: boolean;\n /** Indicated if the list item is _visually_ selectable */\n selectable?: boolean;\n /** If true, the list item will be disabled. */\n disabled?: boolean;\n /**\n * If the list item is focusable and reacts to mouse over events.\n * Defaults to true if the container list is interactive, false otherwise.\n */\n interactive?: boolean;\n /**\n * If `true` compacts the vertical spacing intended to separate the list items.\n * Defaults to the value set in container list.\n */\n condensed?: boolean;\n /**\n * If `true`, the left and right padding is removed.\n * Defaults to the value set in container list.\n */\n disableGutters?: boolean;\n /**\n * Element placed before the children.\n * Also removes the left padding (gutter).\n *\n * Some modifications are applied, assuming that it is either an icon (changing the color when the item is disabled)\n * or a selector (preventing the double focus ring, propagating the checked and disabled states and wiring the onChange event).\n * If unwanted, the element should be placed directly as a child.\n */\n startAdornment?: React.ReactNode;\n /**\n * Element placed after the children and aligned next to the margin.\n * Also removes the right padding (gutter).\n *\n * Some modifications are applied, assuming that it is an icon (changing the color when the item is disabled).\n * If unwanted, the element should be placed directly as a child.\n */\n endAdornment?: React.ReactNode;\n /** The value to be set on the 'li' element */\n value?: any;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvListItemClasses;\n}\n\nconst applyClassNameAndStateToElement = (\n element: React.ReactNode,\n selected: boolean | undefined,\n disabled: boolean | undefined,\n onClick: React.MouseEventHandler<HTMLLIElement>,\n className?: string,\n) => {\n if (element == null) return null;\n\n return cloneElement(element as ReactElement, {\n className,\n checked: !!selected,\n disabled,\n onChange: onClick,\n });\n};\n\nconst applyClassNameToElement = (\n element: React.ReactNode,\n className?: string,\n) => {\n if (element == null) return null;\n\n return cloneElement(element as ReactElement, {\n className,\n });\n};\n\n/**\n * ListItem description/documentation paragraph\n */\nexport const HvListItem = forwardRef<any, HvListItemProps>((props, ref) => {\n const {\n classes: classesProp,\n className,\n role,\n value,\n selected,\n disabled,\n selectable: selectableProp,\n interactive: interactiveProp,\n condensed: condensedProp,\n disableGutters: disableGuttersProp,\n startAdornment,\n endAdornment,\n onClick,\n children,\n tabIndex,\n ...others\n } = useDefaultProps(\"HvListItem\", props);\n\n const { classes, cx } = useClasses(classesProp);\n\n const {\n topContainerRef,\n condensed: condensedContext,\n disableGutters: disableGuttersContext,\n interactive: interactiveContext,\n selectable: selectableContext,\n } = useContext(HvListContext);\n\n const condensed = condensedProp ?? condensedContext;\n const disableGutters = disableGuttersProp ?? disableGuttersContext;\n const interactive = interactiveProp ?? interactiveContext;\n const selectable = selectableProp ?? selectableContext;\n\n const handleClick = useCallback<React.MouseEventHandler<HTMLLIElement>>(\n (evt) => {\n if (disabled) return;\n onClick?.(evt);\n },\n [disabled, onClick],\n );\n\n const clonedStartAdornment = useMemo(\n () =>\n applyClassNameAndStateToElement(\n startAdornment,\n selected,\n disabled,\n handleClick,\n cx(\n classes.startAdornment,\n { [classes.disabled]: disabled },\n isValidElement(startAdornment)\n ? startAdornment.props.className\n : undefined,\n ),\n ),\n [\n cx,\n classes?.startAdornment,\n classes?.disabled,\n disabled,\n handleClick,\n selected,\n startAdornment,\n ],\n );\n const clonedEndAdornment = useMemo(\n () =>\n applyClassNameToElement(\n endAdornment,\n cx(\n classes.endAdornment,\n { [classes.disabled]: disabled },\n isValidElement(endAdornment)\n ? endAdornment.props.className\n : undefined,\n ),\n ),\n [cx, classes?.endAdornment, classes?.disabled, disabled, endAdornment],\n );\n\n const roleOptionAriaProps =\n role === \"option\" || role === \"menuitem\"\n ? {\n \"aria-disabled\": disabled || undefined,\n \"aria-selected\": selected,\n }\n : {};\n\n const listItem = (\n // For later: this should only have an onClick event if interactive and has the appropriate role.\n // eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events\n <li\n ref={ref}\n role={role}\n value={value}\n className={cx(\n classes.root,\n {\n [classes.gutters]: !disableGutters,\n [classes.condensed]: condensed,\n [classes.interactive]: interactive || selectable,\n [classes.selected]: selected || props[\"aria-selected\"],\n [classes.disabled]: disabled || props[\"aria-disabled\"],\n [classes.withStartAdornment]: startAdornment != null,\n [classes.withEndAdornment]: endAdornment != null,\n },\n className,\n )}\n tabIndex={interactive ? undefined : tabIndex}\n onClick={handleClick}\n {...roleOptionAriaProps}\n {...others}\n >\n {clonedStartAdornment}\n {children}\n {clonedEndAdornment}\n </li>\n );\n\n return interactive ? (\n <HvFocus\n rootRef={topContainerRef}\n selected={selected}\n disabledClass={disabled || undefined}\n strategy={role === \"option\" ? \"listbox\" : \"menu\"}\n classes={{ focus: classes.focus }}\n configuration={{\n tabIndex,\n }}\n >\n {listItem}\n </HvFocus>\n ) : (\n listItem\n );\n});\n"],"names":["HvListContext"],"mappings":";;;;;;;AAoEA,MAAM,kCAAkC,CACtC,SACA,UACA,UACA,SACA,cACG;AACC,MAAA,WAAW,KAAa,QAAA;AAE5B,SAAO,aAAa,SAAyB;AAAA,IAC3C;AAAA,IACA,SAAS,CAAC,CAAC;AAAA,IACX;AAAA,IACA,UAAU;AAAA,EAAA,CACX;AACH;AAEA,MAAM,0BAA0B,CAC9B,SACA,cACG;AACC,MAAA,WAAW,KAAa,QAAA;AAE5B,SAAO,aAAa,SAAyB;AAAA,IAC3C;AAAA,EAAA,CACD;AACH;AAKO,MAAM,aAAa,WAAiC,CAAC,OAAO,QAAQ;AACnE,QAAA;AAAA,IACJ,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,YAAY;AAAA,IACZ,aAAa;AAAA,IACb,WAAW;AAAA,IACX,gBAAgB;AAAA,IAChB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EAAA,IACD,gBAAgB,cAAc,KAAK;AAEvC,QAAM,EAAE,SAAS,GAAG,IAAI,WAAW,WAAW;AAExC,QAAA;AAAA,IACJ;AAAA,IACA,WAAW;AAAA,IACX,gBAAgB;AAAA,IAChB,aAAa;AAAA,IACb,YAAY;AAAA,EAAA,IACV,WAAWA,WAAa;AAE5B,QAAM,YAAY,iBAAiB;AACnC,QAAM,iBAAiB,sBAAsB;AAC7C,QAAM,cAAc,mBAAmB;AACvC,QAAM,aAAa,kBAAkB;AAErC,QAAM,cAAc;AAAA,IAClB,CAAC,QAAQ;AACP,UAAI,SAAU;AACd,gBAAU,GAAG;AAAA,IACf;AAAA,IACA,CAAC,UAAU,OAAO;AAAA,EAAA;AAGpB,QAAM,uBAAuB;AAAA,IAC3B,MACE;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,QACE,QAAQ;AAAA,QACR,EAAE,CAAC,QAAQ,QAAQ,GAAG,SAAS;AAAA,QAC/B,eAAe,cAAc,IACzB,eAAe,MAAM,YACrB;AAAA,MACN;AAAA,IACF;AAAA,IACF;AAAA,MACE;AAAA,MACA,SAAS;AAAA,MACT,SAAS;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EAAA;AAEF,QAAM,qBAAqB;AAAA,IACzB,MACE;AAAA,MACE;AAAA,MACA;AAAA,QACE,QAAQ;AAAA,QACR,EAAE,CAAC,QAAQ,QAAQ,GAAG,SAAS;AAAA,QAC/B,eAAe,YAAY,IACvB,aAAa,MAAM,YACnB;AAAA,MACN;AAAA,IACF;AAAA,IACF,CAAC,IAAI,SAAS,cAAc,SAAS,UAAU,UAAU,YAAY;AAAA,EAAA;AAGvE,QAAM,sBACJ,SAAS,YAAY,SAAS,aAC1B;AAAA,IACE,iBAAiB,YAAY;AAAA,IAC7B,iBAAiB;AAAA,MAEnB;AAEA,QAAA;AAAA;AAAA;AAAA,IAGJ;AAAA,MAAC;AAAA,MAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA;AAAA,QACA,WAAW;AAAA,UACT,QAAQ;AAAA,UACR;AAAA,YACE,CAAC,QAAQ,OAAO,GAAG,CAAC;AAAA,YACpB,CAAC,QAAQ,SAAS,GAAG;AAAA,YACrB,CAAC,QAAQ,WAAW,GAAG,eAAe;AAAA,YACtC,CAAC,QAAQ,QAAQ,GAAG,YAAY,MAAM,eAAe;AAAA,YACrD,CAAC,QAAQ,QAAQ,GAAG,YAAY,MAAM,eAAe;AAAA,YACrD,CAAC,QAAQ,kBAAkB,GAAG,kBAAkB;AAAA,YAChD,CAAC,QAAQ,gBAAgB,GAAG,gBAAgB;AAAA,UAC9C;AAAA,UACA;AAAA,QACF;AAAA,QACA,UAAU,cAAc,SAAY;AAAA,QACpC,SAAS;AAAA,QACR,GAAG;AAAA,QACH,GAAG;AAAA,QAEH,UAAA;AAAA,UAAA;AAAA,UACA;AAAA,UACA;AAAA,QAAA;AAAA,MAAA;AAAA,IACH;AAAA;AAGF,SAAO,cACL;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,SAAS;AAAA,MACT;AAAA,MACA,eAAe,YAAY;AAAA,MAC3B,UAAU,SAAS,WAAW,YAAY;AAAA,MAC1C,SAAS,EAAE,OAAO,QAAQ,MAAM;AAAA,MAChC,eAAe;AAAA,QACb;AAAA,MACF;AAAA,MAEC,UAAA;AAAA,IAAA;AAAA,EAGH,IAAA;AAEJ,CAAC;"}
1
+ {"version":3,"file":"ListItem.js","sources":["../../../../src/ListContainer/ListItem/ListItem.tsx"],"sourcesContent":["import {\n cloneElement,\n forwardRef,\n isValidElement,\n ReactElement,\n useCallback,\n useContext,\n useMemo,\n} from \"react\";\nimport {\n useDefaultProps,\n type ExtractNames,\n} from \"@hitachivantara/uikit-react-utils\";\n\nimport { HvFocus } from \"../../Focus\";\nimport { HvBaseProps } from \"../../types/generic\";\nimport HvListContext from \"../ListContext\";\nimport { staticClasses, useClasses } from \"./ListItem.styles\";\n\nexport { staticClasses as listItemClasses };\n\nexport type HvListItemClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvListItemProps extends HvBaseProps<HTMLLIElement> {\n /** Indicates if the list item is selected. */\n selected?: boolean;\n /** Indicated if the list item is _visually_ selectable */\n selectable?: boolean;\n /** If true, the list item will be disabled. */\n disabled?: boolean;\n /**\n * If the list item is focusable and reacts to mouse over events.\n * Defaults to true if the container list is interactive, false otherwise.\n */\n interactive?: boolean;\n /**\n * If `true` compacts the vertical spacing intended to separate the list items.\n * Defaults to the value set in container list.\n */\n condensed?: boolean;\n /**\n * If `true`, the left and right padding is removed.\n * Defaults to the value set in container list.\n */\n disableGutters?: boolean;\n /**\n * Element placed before the children.\n * Also removes the left padding (gutter).\n *\n * Some modifications are applied, assuming that it is either an icon (changing the color when the item is disabled)\n * or a selector (preventing the double focus ring, propagating the checked and disabled states and wiring the onChange event).\n * If unwanted, the element should be placed directly as a child.\n */\n startAdornment?: React.ReactNode;\n /**\n * Element placed after the children and aligned next to the margin.\n * Also removes the right padding (gutter).\n *\n * Some modifications are applied, assuming that it is an icon (changing the color when the item is disabled).\n * If unwanted, the element should be placed directly as a child.\n */\n endAdornment?: React.ReactNode;\n /** The value to be set on the 'li' element */\n value?: any;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvListItemClasses;\n}\n\nconst applyClassNameAndStateToElement = (\n element: React.ReactNode,\n selected: boolean | undefined,\n disabled: boolean | undefined,\n onClick: React.MouseEventHandler<HTMLLIElement>,\n className?: string,\n) => {\n if (element == null) return null;\n\n return cloneElement(element as ReactElement, {\n className,\n checked: !!selected,\n disabled,\n onChange: onClick,\n });\n};\n\nconst applyClassNameToElement = (\n element: React.ReactNode,\n className?: string,\n) => {\n if (element == null) return null;\n\n return cloneElement(element as ReactElement, {\n className,\n });\n};\n\n/**\n * ListItem description/documentation paragraph\n */\nexport const HvListItem = forwardRef<\n // no-indent\n React.ComponentRef<\"li\">,\n HvListItemProps\n>(function HvListItem(props, ref) {\n const {\n classes: classesProp,\n className,\n role,\n value,\n selected,\n disabled,\n selectable: selectableProp,\n interactive: interactiveProp,\n condensed: condensedProp,\n disableGutters: disableGuttersProp,\n startAdornment,\n endAdornment,\n onClick,\n children,\n tabIndex,\n ...others\n } = useDefaultProps(\"HvListItem\", props);\n\n const { classes, cx } = useClasses(classesProp);\n\n const {\n topContainerRef,\n condensed: condensedContext,\n disableGutters: disableGuttersContext,\n interactive: interactiveContext,\n selectable: selectableContext,\n } = useContext(HvListContext);\n\n const condensed = condensedProp ?? condensedContext;\n const disableGutters = disableGuttersProp ?? disableGuttersContext;\n const interactive = interactiveProp ?? interactiveContext;\n const selectable = selectableProp ?? selectableContext;\n\n const handleClick = useCallback<React.MouseEventHandler<HTMLLIElement>>(\n (evt) => {\n if (disabled) return;\n onClick?.(evt);\n },\n [disabled, onClick],\n );\n\n const clonedStartAdornment = useMemo(\n () =>\n applyClassNameAndStateToElement(\n startAdornment,\n selected,\n disabled,\n handleClick,\n cx(\n classes.startAdornment,\n { [classes.disabled]: disabled },\n isValidElement(startAdornment)\n ? startAdornment.props.className\n : undefined,\n ),\n ),\n [\n cx,\n classes?.startAdornment,\n classes?.disabled,\n disabled,\n handleClick,\n selected,\n startAdornment,\n ],\n );\n const clonedEndAdornment = useMemo(\n () =>\n applyClassNameToElement(\n endAdornment,\n cx(\n classes.endAdornment,\n { [classes.disabled]: disabled },\n isValidElement(endAdornment)\n ? endAdornment.props.className\n : undefined,\n ),\n ),\n [cx, classes?.endAdornment, classes?.disabled, disabled, endAdornment],\n );\n\n const roleOptionAriaProps =\n role === \"option\" || role === \"menuitem\"\n ? {\n \"aria-disabled\": disabled || undefined,\n \"aria-selected\": selected,\n }\n : {};\n\n const listItem = (\n // For later: this should only have an onClick event if interactive and has the appropriate role.\n // eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events\n <li\n ref={ref}\n role={role}\n value={value}\n className={cx(\n classes.root,\n {\n [classes.gutters]: !disableGutters,\n [classes.condensed]: condensed,\n [classes.interactive]: interactive || selectable,\n [classes.selected]: selected || props[\"aria-selected\"],\n [classes.disabled]: disabled || props[\"aria-disabled\"],\n [classes.withStartAdornment]: startAdornment != null,\n [classes.withEndAdornment]: endAdornment != null,\n },\n className,\n )}\n tabIndex={interactive ? undefined : tabIndex}\n onClick={handleClick}\n {...roleOptionAriaProps}\n {...others}\n >\n {clonedStartAdornment}\n {children}\n {clonedEndAdornment}\n </li>\n );\n\n return interactive ? (\n <HvFocus\n rootRef={topContainerRef}\n selected={selected}\n disabledClass={disabled || undefined}\n strategy={role === \"option\" ? \"listbox\" : \"menu\"}\n classes={{ focus: classes.focus }}\n configuration={{\n tabIndex,\n }}\n >\n {listItem}\n </HvFocus>\n ) : (\n listItem\n );\n});\n"],"names":["HvListItem","HvListContext"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ListItem.styles.js","sources":["../../../../src/ListContainer/ListItem/ListItem.styles.tsx"],"sourcesContent":["import { createClasses } from \"@hitachivantara/uikit-react-utils\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\n\nimport { outlineStyles } from \"../../utils/focusUtils\";\n\nexport const { staticClasses, useClasses } = createClasses(\"HvListItem\", {\n root: {\n ...theme.typography.body,\n padding: 0,\n display: \"block\",\n height: \"32px\",\n lineHeight: \"32px\",\n listStyleType: \"none\",\n overflow: \"hidden\",\n textOverflow: \"ellipsis\",\n whiteSpace: \"nowrap\",\n position: \"relative\",\n alignContent: \"center\",\n\n \"&:not(:last-child)\": {\n marginBottom: \"8px\",\n },\n\n \"&$condensed\": {\n marginBottom: 0,\n },\n\n \"&.HvIsFocused\": {\n ...outlineStyles,\n backgroundColor: theme.colors.atmo3,\n zIndex: 2,\n },\n },\n focus: { backgroundColor: theme.colors.atmo3, zIndex: 2 },\n startAdornment: {},\n endAdornment: {},\n gutters: {\n padding: `0 ${theme.space.xs}`,\n\n \"&$withStartAdornment\": {\n paddingLeft: 0,\n },\n \"&$withEndAdornment\": {\n paddingRight: 0,\n },\n },\n condensed: {},\n interactive: {\n cursor: \"pointer\",\n \"&:not($disabled):not($selected):hover\": {\n backgroundColor: theme.colors.containerBackgroundHover,\n },\n \"&$disabled\": {\n cursor: \"not-allowed\",\n },\n },\n selected: { backgroundColor: theme.colors.containerBackgroundHover },\n disabled: {\n color: theme.colors.secondary_60,\n backgroundColor: theme.colors.atmo3,\n },\n withStartAdornment: {\n \"& > div\": {\n float: \"left\",\n },\n\n \"& svg\": {\n boxShadow: \"none !important\",\n outline: \"none !important\",\n },\n \"$disabled > svg *.color0\": {\n fill: theme.colors.secondary_60,\n },\n },\n withEndAdornment: {\n \"& > div\": { float: \"right\" },\n\n \"& svg\": {\n boxShadow: \"none !important\",\n outline: \"none !important\",\n },\n \"$disabled > svg *.color0\": {\n fill: theme.colors.secondary_60,\n },\n },\n});\n"],"names":[],"mappings":";;;AAKO,MAAM,EAAE,eAAe,eAAe,cAAc,cAAc;AAAA,EACvE,MAAM;AAAA,IACJ,GAAG,MAAM,WAAW;AAAA,IACpB,SAAS;AAAA,IACT,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,YAAY;AAAA,IACZ,eAAe;AAAA,IACf,UAAU;AAAA,IACV,cAAc;AAAA,IACd,YAAY;AAAA,IACZ,UAAU;AAAA,IACV,cAAc;AAAA,IAEd,sBAAsB;AAAA,MACpB,cAAc;AAAA,IAChB;AAAA,IAEA,eAAe;AAAA,MACb,cAAc;AAAA,IAChB;AAAA,IAEA,iBAAiB;AAAA,MACf,GAAG;AAAA,MACH,iBAAiB,MAAM,OAAO;AAAA,MAC9B,QAAQ;AAAA,IACV;AAAA,EACF;AAAA,EACA,OAAO,EAAE,iBAAiB,MAAM,OAAO,OAAO,QAAQ,EAAE;AAAA,EACxD,gBAAgB,CAAC;AAAA,EACjB,cAAc,CAAC;AAAA,EACf,SAAS;AAAA,IACP,SAAS,KAAK,MAAM,MAAM,EAAE;AAAA,IAE5B,wBAAwB;AAAA,MACtB,aAAa;AAAA,IACf;AAAA,IACA,sBAAsB;AAAA,MACpB,cAAc;AAAA,IAChB;AAAA,EACF;AAAA,EACA,WAAW,CAAC;AAAA,EACZ,aAAa;AAAA,IACX,QAAQ;AAAA,IACR,yCAAyC;AAAA,MACvC,iBAAiB,MAAM,OAAO;AAAA,IAChC;AAAA,IACA,cAAc;AAAA,MACZ,QAAQ;AAAA,IACV;AAAA,EACF;AAAA,EACA,UAAU,EAAE,iBAAiB,MAAM,OAAO,yBAAyB;AAAA,EACnE,UAAU;AAAA,IACR,OAAO,MAAM,OAAO;AAAA,IACpB,iBAAiB,MAAM,OAAO;AAAA,EAChC;AAAA,EACA,oBAAoB;AAAA,IAClB,WAAW;AAAA,MACT,OAAO;AAAA,IACT;AAAA,IAEA,SAAS;AAAA,MACP,WAAW;AAAA,MACX,SAAS;AAAA,IACX;AAAA,IACA,4BAA4B;AAAA,MAC1B,MAAM,MAAM,OAAO;AAAA,IACrB;AAAA,EACF;AAAA,EACA,kBAAkB;AAAA,IAChB,WAAW,EAAE,OAAO,QAAQ;AAAA,IAE5B,SAAS;AAAA,MACP,WAAW;AAAA,MACX,SAAS;AAAA,IACX;AAAA,IACA,4BAA4B;AAAA,MAC1B,MAAM,MAAM,OAAO;AAAA,IACrB;AAAA,EACF;AACF,CAAC;"}
1
+ {"version":3,"file":"ListItem.styles.js","sources":["../../../../src/ListContainer/ListItem/ListItem.styles.tsx"],"sourcesContent":["import { createClasses } from \"@hitachivantara/uikit-react-utils\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\n\nimport { outlineStyles } from \"../../utils/focusUtils\";\n\nexport const { staticClasses, useClasses } = createClasses(\"HvListItem\", {\n root: {\n ...theme.typography.body,\n padding: 0,\n display: \"block\",\n height: \"32px\",\n lineHeight: \"32px\",\n listStyleType: \"none\",\n overflow: \"hidden\",\n textOverflow: \"ellipsis\",\n whiteSpace: \"nowrap\",\n position: \"relative\",\n alignContent: \"center\",\n\n \"&:not(:last-child)\": {\n marginBottom: \"8px\",\n },\n\n \"&$condensed\": {\n marginBottom: 0,\n },\n\n \"&.HvIsFocused\": {\n ...outlineStyles,\n backgroundColor: theme.colors.atmo3,\n zIndex: 2,\n },\n },\n focus: { backgroundColor: theme.colors.atmo3, zIndex: 2 },\n startAdornment: {},\n endAdornment: {},\n gutters: {\n padding: `0 ${theme.space.xs}`,\n\n \"&$withStartAdornment\": {\n paddingLeft: 0,\n },\n \"&$withEndAdornment\": {\n paddingRight: 0,\n },\n },\n condensed: {},\n interactive: {\n cursor: \"pointer\",\n \"&:not($disabled):not($selected):hover\": {\n backgroundColor: theme.colors.containerBackgroundHover,\n },\n \"&$disabled\": {\n cursor: \"not-allowed\",\n },\n },\n selected: { backgroundColor: theme.colors.containerBackgroundHover },\n disabled: {\n color: theme.colors.secondary_60,\n backgroundColor: theme.colors.atmo3,\n },\n withStartAdornment: {\n \"& > div\": {\n float: \"left\",\n },\n\n \"& svg\": {\n boxShadow: \"none !important\",\n outline: \"none !important\",\n },\n \"$disabled > svg *.color0\": {\n fill: theme.colors.secondary_60,\n },\n },\n withEndAdornment: {\n \"& > div\": { float: \"right\" },\n\n \"& svg\": {\n boxShadow: \"none !important\",\n outline: \"none !important\",\n },\n \"$disabled > svg *.color0\": {\n fill: theme.colors.secondary_60,\n },\n },\n});\n"],"names":[],"mappings":";;;AAKO,MAAM,EAAE,eAAe,eAAe,cAAc,cAAc;AAAA,EACvE,MAAM;AAAA,IACJ,GAAG,MAAM,WAAW;AAAA,IACpB,SAAS;AAAA,IACT,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,YAAY;AAAA,IACZ,eAAe;AAAA,IACf,UAAU;AAAA,IACV,cAAc;AAAA,IACd,YAAY;AAAA,IACZ,UAAU;AAAA,IACV,cAAc;AAAA,IAEd,sBAAsB;AAAA,MACpB,cAAc;AAAA,IAChB;AAAA,IAEA,eAAe;AAAA,MACb,cAAc;AAAA,IAChB;AAAA,IAEA,iBAAiB;AAAA,MACf,GAAG;AAAA,MACH,iBAAiB,MAAM,OAAO;AAAA,MAC9B,QAAQ;AAAA,IAAA;AAAA,EAEZ;AAAA,EACA,OAAO,EAAE,iBAAiB,MAAM,OAAO,OAAO,QAAQ,EAAE;AAAA,EACxD,gBAAgB,CAAC;AAAA,EACjB,cAAc,CAAC;AAAA,EACf,SAAS;AAAA,IACP,SAAS,KAAK,MAAM,MAAM,EAAE;AAAA,IAE5B,wBAAwB;AAAA,MACtB,aAAa;AAAA,IACf;AAAA,IACA,sBAAsB;AAAA,MACpB,cAAc;AAAA,IAAA;AAAA,EAElB;AAAA,EACA,WAAW,CAAC;AAAA,EACZ,aAAa;AAAA,IACX,QAAQ;AAAA,IACR,yCAAyC;AAAA,MACvC,iBAAiB,MAAM,OAAO;AAAA,IAChC;AAAA,IACA,cAAc;AAAA,MACZ,QAAQ;AAAA,IAAA;AAAA,EAEZ;AAAA,EACA,UAAU,EAAE,iBAAiB,MAAM,OAAO,yBAAyB;AAAA,EACnE,UAAU;AAAA,IACR,OAAO,MAAM,OAAO;AAAA,IACpB,iBAAiB,MAAM,OAAO;AAAA,EAChC;AAAA,EACA,oBAAoB;AAAA,IAClB,WAAW;AAAA,MACT,OAAO;AAAA,IACT;AAAA,IAEA,SAAS;AAAA,MACP,WAAW;AAAA,MACX,SAAS;AAAA,IACX;AAAA,IACA,4BAA4B;AAAA,MAC1B,MAAM,MAAM,OAAO;AAAA,IAAA;AAAA,EAEvB;AAAA,EACA,kBAAkB;AAAA,IAChB,WAAW,EAAE,OAAO,QAAQ;AAAA,IAE5B,SAAS;AAAA,MACP,WAAW;AAAA,MACX,SAAS;AAAA,IACX;AAAA,IACA,4BAA4B;AAAA,MAC1B,MAAM,MAAM,OAAO;AAAA,IAAA;AAAA,EACrB;AAEJ,CAAC;"}
@@ -1,11 +1,12 @@
1
1
  import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { forwardRef } from "react";
2
3
  import { useDefaultProps, mergeStyles } from "@hitachivantara/uikit-react-utils";
3
4
  import { getColor } from "@hitachivantara/uikit-styles";
4
5
  import { range } from "../utils/helpers.js";
5
6
  import { useClasses } from "./Loading.styles.js";
6
7
  import { staticClasses } from "./Loading.styles.js";
7
8
  import { HvTypography } from "../Typography/Typography.js";
8
- const HvLoading = (props) => {
9
+ const HvLoading = forwardRef(function HvLoading2(props, ref) {
9
10
  const {
10
11
  color,
11
12
  hidden,
@@ -22,6 +23,7 @@ const HvLoading = (props) => {
22
23
  return /* @__PURE__ */ jsxs(
23
24
  "div",
24
25
  {
26
+ ref,
25
27
  hidden: !!hidden,
26
28
  style: mergeStyles(style, {
27
29
  color: getColor(color, small ? "secondary" : "brand"),
@@ -52,7 +54,7 @@ const HvLoading = (props) => {
52
54
  ]
53
55
  }
54
56
  );
55
- };
57
+ });
56
58
  export {
57
59
  HvLoading,
58
60
  staticClasses as loadingClasses
@@ -1 +1 @@
1
- {"version":3,"file":"Loading.js","sources":["../../../src/Loading/Loading.tsx"],"sourcesContent":["import {\n mergeStyles,\n useDefaultProps,\n type ExtractNames,\n} from \"@hitachivantara/uikit-react-utils\";\nimport { getColor, HvColorAny } from \"@hitachivantara/uikit-styles\";\n\nimport { HvBaseProps } from \"../types/generic\";\nimport { HvTypography } from \"../Typography\";\nimport { range } from \"../utils/helpers\";\nimport { staticClasses, useClasses } from \"./Loading.styles\";\n\nexport { staticClasses as loadingClasses };\n\nexport type HvLoadingClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvLoadingProps extends HvBaseProps {\n /** Indicates if the component should be render in a small size. */\n small?: boolean;\n /** The label to be displayed. */\n label?: React.ReactNode;\n /** Whether the loading animation is hidden. */\n hidden?: boolean;\n /** Color applied to the bars. */\n color?: HvColorAny;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvLoadingClasses;\n}\n\n/**\n * Loading provides feedback about a process that is taking place in the application.\n */\nexport const HvLoading = (props: HvLoadingProps) => {\n const {\n color,\n hidden,\n small,\n label,\n classes: classesProp,\n style,\n className,\n ...others\n } = useDefaultProps(\"HvLoading\", props);\n\n const { classes, cx } = useClasses(classesProp);\n\n const size = small ? \"small\" : \"regular\";\n const colorVariant = color && (`${size}Color` as const);\n\n return (\n <div\n hidden={!!hidden}\n style={mergeStyles(style, {\n color: getColor(color, small ? \"secondary\" : \"brand\"),\n \"--customColor\": getColor(color),\n })}\n className={cx(\n classes.root,\n {\n [classes.hidden]: hidden,\n },\n className,\n )}\n {...others}\n >\n <div className={classes.barContainer}>\n {range(3).map((e) => (\n <div\n key={e}\n className={cx(\n classes.loadingBar,\n // TODO: hoist to parent & remove unused `colorVariant` in v6\n classes[size],\n classes[colorVariant!],\n )}\n />\n ))}\n </div>\n {label && (\n <HvTypography variant=\"caption1\" className={classes.label}>\n {label}\n </HvTypography>\n )}\n </div>\n );\n};\n"],"names":[],"mappings":";;;;;;;AAgCa,MAAA,YAAY,CAAC,UAA0B;AAC5C,QAAA;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EAAA,IACD,gBAAgB,aAAa,KAAK;AAEtC,QAAM,EAAE,SAAS,GAAG,IAAI,WAAW,WAAW;AAExC,QAAA,OAAO,QAAQ,UAAU;AACzB,QAAA,eAAe,SAAU,GAAG,IAAI;AAGpC,SAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,QAAQ,CAAC,CAAC;AAAA,MACV,OAAO,YAAY,OAAO;AAAA,QACxB,OAAO,SAAS,OAAO,QAAQ,cAAc,OAAO;AAAA,QACpD,iBAAiB,SAAS,KAAK;AAAA,MAAA,CAChC;AAAA,MACD,WAAW;AAAA,QACT,QAAQ;AAAA,QACR;AAAA,UACE,CAAC,QAAQ,MAAM,GAAG;AAAA,QACpB;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEJ,UAAA;AAAA,QAAC,oBAAA,OAAA,EAAI,WAAW,QAAQ,cACrB,gBAAM,CAAC,EAAE,IAAI,CAAC,MACb;AAAA,UAAC;AAAA,UAAA;AAAA,YAEC,WAAW;AAAA,cACT,QAAQ;AAAA;AAAA,cAER,QAAQ,IAAI;AAAA,cACZ,QAAQ,YAAa;AAAA,YACvB;AAAA,UAAA;AAAA,UANK;AAAA,QAQR,CAAA,GACH;AAAA,QACC,6BACE,cAAa,EAAA,SAAQ,YAAW,WAAW,QAAQ,OACjD,UACH,MAAA,CAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAIR;"}
1
+ {"version":3,"file":"Loading.js","sources":["../../../src/Loading/Loading.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\nimport {\n mergeStyles,\n useDefaultProps,\n type ExtractNames,\n} from \"@hitachivantara/uikit-react-utils\";\nimport { getColor, HvColorAny } from \"@hitachivantara/uikit-styles\";\n\nimport { HvBaseProps } from \"../types/generic\";\nimport { HvTypography } from \"../Typography\";\nimport { range } from \"../utils/helpers\";\nimport { staticClasses, useClasses } from \"./Loading.styles\";\n\nexport { staticClasses as loadingClasses };\n\nexport type HvLoadingClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvLoadingProps extends HvBaseProps {\n /** Indicates if the component should be render in a small size. */\n small?: boolean;\n /** The label to be displayed. */\n label?: React.ReactNode;\n /** Whether the loading animation is hidden. */\n hidden?: boolean;\n /** Color applied to the bars. */\n color?: HvColorAny;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvLoadingClasses;\n}\n\n/**\n * Loading provides feedback about a process that is taking place in the application.\n */\nexport const HvLoading = forwardRef<\n // no-indent\n React.ComponentRef<\"div\">,\n HvLoadingProps\n>(function HvLoading(props, ref) {\n const {\n color,\n hidden,\n small,\n label,\n classes: classesProp,\n style,\n className,\n ...others\n } = useDefaultProps(\"HvLoading\", props);\n\n const { classes, cx } = useClasses(classesProp);\n\n const size = small ? \"small\" : \"regular\";\n const colorVariant = color && (`${size}Color` as const);\n\n return (\n <div\n ref={ref}\n hidden={!!hidden}\n style={mergeStyles(style, {\n color: getColor(color, small ? \"secondary\" : \"brand\"),\n \"--customColor\": getColor(color),\n })}\n className={cx(\n classes.root,\n {\n [classes.hidden]: hidden,\n },\n className,\n )}\n {...others}\n >\n <div className={classes.barContainer}>\n {range(3).map((e) => (\n <div\n key={e}\n className={cx(\n classes.loadingBar,\n // TODO: hoist to parent & remove unused `colorVariant` in v6\n classes[size],\n classes[colorVariant!],\n )}\n />\n ))}\n </div>\n {label && (\n <HvTypography variant=\"caption1\" className={classes.label}>\n {label}\n </HvTypography>\n )}\n </div>\n );\n});\n"],"names":["HvLoading"],"mappings":";;;;;;;;AAiCO,MAAM,YAAY,WAIvB,SAASA,WAAU,OAAO,KAAK;AACzB,QAAA;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EAAA,IACD,gBAAgB,aAAa,KAAK;AAEtC,QAAM,EAAE,SAAS,OAAO,WAAW,WAAW;AAExC,QAAA,OAAO,QAAQ,UAAU;AACzB,QAAA,eAAe,SAAU,GAAG,IAAI;AAGpC,SAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC;AAAA,MACA,QAAQ,CAAC,CAAC;AAAA,MACV,OAAO,YAAY,OAAO;AAAA,QACxB,OAAO,SAAS,OAAO,QAAQ,cAAc,OAAO;AAAA,QACpD,iBAAiB,SAAS,KAAK;AAAA,MAAA,CAChC;AAAA,MACD,WAAW;AAAA,QACT,QAAQ;AAAA,QACR;AAAA,UACE,CAAC,QAAQ,MAAM,GAAG;AAAA,QACpB;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEJ,UAAA;AAAA,QAAC,oBAAA,OAAA,EAAI,WAAW,QAAQ,cACrB,gBAAM,CAAC,EAAE,IAAI,CAAC,MACb;AAAA,UAAC;AAAA,UAAA;AAAA,YAEC,WAAW;AAAA,cACT,QAAQ;AAAA;AAAA,cAER,QAAQ,IAAI;AAAA,cACZ,QAAQ,YAAa;AAAA,YAAA;AAAA,UACvB;AAAA,UANK;AAAA,QAQR,CAAA,GACH;AAAA,QACC,6BACE,cAAa,EAAA,SAAQ,YAAW,WAAW,QAAQ,OACjD,UACH,MAAA,CAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAEJ;AAEJ,CAAC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Loading.styles.js","sources":["../../../src/Loading/Loading.styles.tsx"],"sourcesContent":["import { createClasses } from \"@hitachivantara/uikit-react-utils\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\n\nexport const { staticClasses, useClasses } = createClasses(\"HvLoading\", {\n root: {\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n justifyContent: \"center\",\n gap: theme.space.xs,\n },\n barContainer: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-around\",\n\n \":has($regular)\": {\n width: 30,\n height: 30,\n },\n\n \":has($small)\": {\n \"--height\": \"40%\",\n width: 18,\n height: 18,\n },\n },\n loadingBar: {\n backgroundColor: \"currentcolor\",\n display: \"inline-block\",\n animation: \"loading 1s ease-in-out infinite\",\n // TODO: make this the default when it has better support\n width: \"round(up, 0.11em, 2px)\",\n height: \"100%\",\n\n \"@keyframes loading\": {\n \"50%\": {\n height: \"var(--height, 60%)\",\n backgroundColor: `var(--customColor, ${theme.colors.secondary})`,\n },\n },\n\n \":nth-of-type(2)\": { animationDelay: \"0.22s\" },\n \":nth-of-type(3)\": { animationDelay: \"0.44s\" },\n },\n label: {},\n overlay: {},\n blur: {},\n hidden: { display: \"none\" },\n small: {\n width: 2,\n },\n regular: {\n width: 4,\n },\n smallColor: {},\n regularColor: {},\n});\n"],"names":[],"mappings":";;AAGO,MAAM,EAAE,eAAe,eAAe,cAAc,aAAa;AAAA,EACtE,MAAM;AAAA,IACJ,SAAS;AAAA,IACT,eAAe;AAAA,IACf,YAAY;AAAA,IACZ,gBAAgB;AAAA,IAChB,KAAK,MAAM,MAAM;AAAA,EACnB;AAAA,EACA,cAAc;AAAA,IACZ,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,gBAAgB;AAAA,IAEhB,kBAAkB;AAAA,MAChB,OAAO;AAAA,MACP,QAAQ;AAAA,IACV;AAAA,IAEA,gBAAgB;AAAA,MACd,YAAY;AAAA,MACZ,OAAO;AAAA,MACP,QAAQ;AAAA,IACV;AAAA,EACF;AAAA,EACA,YAAY;AAAA,IACV,iBAAiB;AAAA,IACjB,SAAS;AAAA,IACT,WAAW;AAAA;AAAA,IAEX,OAAO;AAAA,IACP,QAAQ;AAAA,IAER,sBAAsB;AAAA,MACpB,OAAO;AAAA,QACL,QAAQ;AAAA,QACR,iBAAiB,sBAAsB,MAAM,OAAO,SAAS;AAAA,MAC/D;AAAA,IACF;AAAA,IAEA,mBAAmB,EAAE,gBAAgB,QAAQ;AAAA,IAC7C,mBAAmB,EAAE,gBAAgB,QAAQ;AAAA,EAC/C;AAAA,EACA,OAAO,CAAC;AAAA,EACR,SAAS,CAAC;AAAA,EACV,MAAM,CAAC;AAAA,EACP,QAAQ,EAAE,SAAS,OAAO;AAAA,EAC1B,OAAO;AAAA,IACL,OAAO;AAAA,EACT;AAAA,EACA,SAAS;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA,YAAY,CAAC;AAAA,EACb,cAAc,CAAC;AACjB,CAAC;"}
1
+ {"version":3,"file":"Loading.styles.js","sources":["../../../src/Loading/Loading.styles.tsx"],"sourcesContent":["import { createClasses } from \"@hitachivantara/uikit-react-utils\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\n\nexport const { staticClasses, useClasses } = createClasses(\"HvLoading\", {\n root: {\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n justifyContent: \"center\",\n gap: theme.space.xs,\n },\n barContainer: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-around\",\n\n \":has($regular)\": {\n width: 30,\n height: 30,\n },\n\n \":has($small)\": {\n \"--height\": \"40%\",\n width: 18,\n height: 18,\n },\n },\n loadingBar: {\n backgroundColor: \"currentcolor\",\n display: \"inline-block\",\n animation: \"loading 1s ease-in-out infinite\",\n // TODO: make this the default when it has better support\n width: \"round(up, 0.11em, 2px)\",\n height: \"100%\",\n\n \"@keyframes loading\": {\n \"50%\": {\n height: \"var(--height, 60%)\",\n backgroundColor: `var(--customColor, ${theme.colors.secondary})`,\n },\n },\n\n \":nth-of-type(2)\": { animationDelay: \"0.22s\" },\n \":nth-of-type(3)\": { animationDelay: \"0.44s\" },\n },\n label: {},\n overlay: {},\n blur: {},\n hidden: { display: \"none\" },\n small: {\n width: 2,\n },\n regular: {\n width: 4,\n },\n smallColor: {},\n regularColor: {},\n});\n"],"names":[],"mappings":";;AAGO,MAAM,EAAE,eAAe,eAAe,cAAc,aAAa;AAAA,EACtE,MAAM;AAAA,IACJ,SAAS;AAAA,IACT,eAAe;AAAA,IACf,YAAY;AAAA,IACZ,gBAAgB;AAAA,IAChB,KAAK,MAAM,MAAM;AAAA,EACnB;AAAA,EACA,cAAc;AAAA,IACZ,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,gBAAgB;AAAA,IAEhB,kBAAkB;AAAA,MAChB,OAAO;AAAA,MACP,QAAQ;AAAA,IACV;AAAA,IAEA,gBAAgB;AAAA,MACd,YAAY;AAAA,MACZ,OAAO;AAAA,MACP,QAAQ;AAAA,IAAA;AAAA,EAEZ;AAAA,EACA,YAAY;AAAA,IACV,iBAAiB;AAAA,IACjB,SAAS;AAAA,IACT,WAAW;AAAA;AAAA,IAEX,OAAO;AAAA,IACP,QAAQ;AAAA,IAER,sBAAsB;AAAA,MACpB,OAAO;AAAA,QACL,QAAQ;AAAA,QACR,iBAAiB,sBAAsB,MAAM,OAAO,SAAS;AAAA,MAAA;AAAA,IAEjE;AAAA,IAEA,mBAAmB,EAAE,gBAAgB,QAAQ;AAAA,IAC7C,mBAAmB,EAAE,gBAAgB,QAAQ;AAAA,EAC/C;AAAA,EACA,OAAO,CAAC;AAAA,EACR,SAAS,CAAC;AAAA,EACV,MAAM,CAAC;AAAA,EACP,QAAQ,EAAE,SAAS,OAAO;AAAA,EAC1B,OAAO;AAAA,IACL,OAAO;AAAA,EACT;AAAA,EACA,SAAS;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA,YAAY,CAAC;AAAA,EACb,cAAc,CAAA;AAChB,CAAC;"}
@@ -1,9 +1,10 @@
1
1
  import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { forwardRef } from "react";
2
3
  import { useDefaultProps, mergeStyles } from "@hitachivantara/uikit-react-utils";
3
4
  import { useClasses } from "./LoadingContainer.styles.js";
4
5
  import { staticClasses } from "./LoadingContainer.styles.js";
5
6
  import { HvLoading } from "../Loading/Loading.js";
6
- const HvLoadingContainer = (props) => {
7
+ const HvLoadingContainer = forwardRef(function HvLoadingContainer2(props, ref) {
7
8
  const {
8
9
  children,
9
10
  className,
@@ -17,7 +18,7 @@ const HvLoadingContainer = (props) => {
17
18
  } = useDefaultProps("HvLoadingContainer", props);
18
19
  const { classes, cx } = useClasses(classesProp);
19
20
  const ariaLabel = ariaLabelProp || typeof label === "string" && label || "Loading";
20
- return /* @__PURE__ */ jsxs("div", { className: cx(classes.root, className), ...others, children: [
21
+ return /* @__PURE__ */ jsxs("div", { ref, className: cx(classes.root, className), ...others, children: [
21
22
  /* @__PURE__ */ jsx(
22
23
  HvLoading,
23
24
  {
@@ -34,7 +35,7 @@ const HvLoadingContainer = (props) => {
34
35
  ),
35
36
  children
36
37
  ] });
37
- };
38
+ });
38
39
  export {
39
40
  HvLoadingContainer,
40
41
  staticClasses as loadingContainerClasses
@@ -1 +1 @@
1
- {"version":3,"file":"LoadingContainer.js","sources":["../../../src/LoadingContainer/LoadingContainer.tsx"],"sourcesContent":["import {\n mergeStyles,\n useDefaultProps,\n type ExtractNames,\n} from \"@hitachivantara/uikit-react-utils\";\n\nimport { HvLoading, HvLoadingProps } from \"../Loading\";\nimport { HvBaseProps } from \"../types/generic\";\nimport { staticClasses, useClasses } from \"./LoadingContainer.styles\";\n\nexport { staticClasses as loadingContainerClasses };\n\nexport type HvLoadingContainerClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvLoadingContainerProps\n extends HvBaseProps<HTMLDivElement>,\n Pick<HvLoadingProps, \"label\" | \"small\" | \"hidden\"> {\n opacity?: number;\n classes?: HvLoadingContainerClasses;\n}\n\n/**\n * A component that wraps `children` with an `HvLoading` component and\n * and an overlay background with opacity.\n *\n * @example\n * <HvLoadingContainer label=\"Loading...\" hidden={!isLoading}>\n * <MyComponent>\n * </HvLoadingContainer>\n * */\nexport const HvLoadingContainer = (props: HvLoadingContainerProps) => {\n const {\n children,\n className,\n classes: classesProp,\n hidden,\n small,\n label,\n \"aria-label\": ariaLabelProp,\n opacity,\n ...others\n } = useDefaultProps(\"HvLoadingContainer\", props);\n const { classes, cx } = useClasses(classesProp);\n\n const ariaLabel =\n ariaLabelProp || (typeof label === \"string\" && label) || \"Loading\";\n\n return (\n <div className={cx(classes.root, className)} {...others}>\n <HvLoading\n className={classes.loading}\n role=\"progressbar\"\n small={small}\n label={label}\n hidden={hidden}\n aria-label={ariaLabel}\n style={mergeStyles(undefined, {\n \"--opacity\": opacity && `${opacity * 100}%`,\n })}\n />\n {children}\n </div>\n );\n};\n"],"names":[],"mappings":";;;;;AA8Ba,MAAA,qBAAqB,CAAC,UAAmC;AAC9D,QAAA;AAAA,IACJ;AAAA,IACA;AAAA,IACA,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA,cAAc;AAAA,IACd;AAAA,IACA,GAAG;AAAA,EAAA,IACD,gBAAgB,sBAAsB,KAAK;AAC/C,QAAM,EAAE,SAAS,GAAG,IAAI,WAAW,WAAW;AAE9C,QAAM,YACJ,iBAAkB,OAAO,UAAU,YAAY,SAAU;AAGzD,SAAA,qBAAC,SAAI,WAAW,GAAG,QAAQ,MAAM,SAAS,GAAI,GAAG,QAC/C,UAAA;AAAA,IAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAW,QAAQ;AAAA,QACnB,MAAK;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,QACA,cAAY;AAAA,QACZ,OAAO,YAAY,QAAW;AAAA,UAC5B,aAAa,WAAW,GAAG,UAAU,GAAG;AAAA,QAAA,CACzC;AAAA,MAAA;AAAA,IACH;AAAA,IACC;AAAA,EACH,EAAA,CAAA;AAEJ;"}
1
+ {"version":3,"file":"LoadingContainer.js","sources":["../../../src/LoadingContainer/LoadingContainer.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\nimport {\n mergeStyles,\n useDefaultProps,\n type ExtractNames,\n} from \"@hitachivantara/uikit-react-utils\";\n\nimport { HvLoading, HvLoadingProps } from \"../Loading\";\nimport { HvBaseProps } from \"../types/generic\";\nimport { staticClasses, useClasses } from \"./LoadingContainer.styles\";\n\nexport { staticClasses as loadingContainerClasses };\n\nexport type HvLoadingContainerClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvLoadingContainerProps\n extends HvBaseProps<HTMLDivElement>,\n Pick<HvLoadingProps, \"label\" | \"small\" | \"hidden\"> {\n opacity?: number;\n classes?: HvLoadingContainerClasses;\n}\n\n/**\n * A component that wraps `children` with an `HvLoading` component and\n * and an overlay background with opacity.\n *\n * @example\n * <HvLoadingContainer label=\"Loading...\" hidden={!isLoading}>\n * <MyComponent>\n * </HvLoadingContainer>\n * */\nexport const HvLoadingContainer = forwardRef<\n React.ComponentRef<\"div\">,\n HvLoadingContainerProps\n>(function HvLoadingContainer(props, ref) {\n const {\n children,\n className,\n classes: classesProp,\n hidden,\n small,\n label,\n \"aria-label\": ariaLabelProp,\n opacity,\n ...others\n } = useDefaultProps(\"HvLoadingContainer\", props);\n const { classes, cx } = useClasses(classesProp);\n\n const ariaLabel =\n ariaLabelProp || (typeof label === \"string\" && label) || \"Loading\";\n\n return (\n <div ref={ref} className={cx(classes.root, className)} {...others}>\n <HvLoading\n className={classes.loading}\n role=\"progressbar\"\n small={small}\n label={label}\n hidden={hidden}\n aria-label={ariaLabel}\n style={mergeStyles(undefined, {\n \"--opacity\": opacity && `${opacity * 100}%`,\n })}\n />\n {children}\n </div>\n );\n});\n"],"names":["HvLoadingContainer"],"mappings":";;;;;;AA+BO,MAAM,qBAAqB,WAGhC,SAASA,oBAAmB,OAAO,KAAK;AAClC,QAAA;AAAA,IACJ;AAAA,IACA;AAAA,IACA,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA,cAAc;AAAA,IACd;AAAA,IACA,GAAG;AAAA,EAAA,IACD,gBAAgB,sBAAsB,KAAK;AAC/C,QAAM,EAAE,SAAS,OAAO,WAAW,WAAW;AAE9C,QAAM,YACJ,iBAAkB,OAAO,UAAU,YAAY,SAAU;AAGzD,SAAA,qBAAC,OAAI,EAAA,KAAU,WAAW,GAAG,QAAQ,MAAM,SAAS,GAAI,GAAG,QACzD,UAAA;AAAA,IAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAW,QAAQ;AAAA,QACnB,MAAK;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,QACA,cAAY;AAAA,QACZ,OAAO,YAAY,QAAW;AAAA,UAC5B,aAAa,WAAW,GAAG,UAAU,GAAG;AAAA,QACzC,CAAA;AAAA,MAAA;AAAA,IACH;AAAA,IACC;AAAA,EAAA,GACH;AAEJ,CAAC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"LoadingContainer.styles.js","sources":["../../../src/LoadingContainer/LoadingContainer.styles.ts"],"sourcesContent":["import { createClasses } from \"@hitachivantara/uikit-react-utils\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\n\nconst { staticClasses, useClasses } = createClasses(\"HvLoadingContainer\", {\n root: {\n position: \"relative\",\n height: \"inherit\",\n },\n loading: {\n position: \"absolute\",\n userSelect: \"none\",\n inset: 0,\n zIndex: theme.zIndices.overlay,\n transition: \"background-color .2s ease\",\n backgroundColor: theme.alpha(\"atmo1\", \"var(--opacity, 80%)\"),\n },\n});\n\nexport { staticClasses, useClasses };\n"],"names":[],"mappings":";;AAGA,MAAM,EAAE,eAAe,eAAe,cAAc,sBAAsB;AAAA,EACxE,MAAM;AAAA,IACJ,UAAU;AAAA,IACV,QAAQ;AAAA,EACV;AAAA,EACA,SAAS;AAAA,IACP,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,OAAO;AAAA,IACP,QAAQ,MAAM,SAAS;AAAA,IACvB,YAAY;AAAA,IACZ,iBAAiB,MAAM,MAAM,SAAS,qBAAqB;AAAA,EAC7D;AACF,CAAC;"}
1
+ {"version":3,"file":"LoadingContainer.styles.js","sources":["../../../src/LoadingContainer/LoadingContainer.styles.ts"],"sourcesContent":["import { createClasses } from \"@hitachivantara/uikit-react-utils\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\n\nconst { staticClasses, useClasses } = createClasses(\"HvLoadingContainer\", {\n root: {\n position: \"relative\",\n height: \"inherit\",\n },\n loading: {\n position: \"absolute\",\n userSelect: \"none\",\n inset: 0,\n zIndex: theme.zIndices.overlay,\n transition: \"background-color .2s ease\",\n backgroundColor: theme.alpha(\"atmo1\", \"var(--opacity, 80%)\"),\n },\n});\n\nexport { staticClasses, useClasses };\n"],"names":[],"mappings":";;AAGA,MAAM,EAAE,eAAe,eAAe,cAAc,sBAAsB;AAAA,EACxE,MAAM;AAAA,IACJ,UAAU;AAAA,IACV,QAAQ;AAAA,EACV;AAAA,EACA,SAAS;AAAA,IACP,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,OAAO;AAAA,IACP,QAAQ,MAAM,SAAS;AAAA,IACvB,YAAY;AAAA,IACZ,iBAAiB,MAAM,MAAM,SAAS,qBAAqB;AAAA,EAAA;AAE/D,CAAC;"}
@@ -1,10 +1,10 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
+ import { forwardRef } from "react";
2
3
  import { useDefaultProps } from "@hitachivantara/uikit-react-utils";
3
4
  import { useClasses } from "./Login.styles.js";
4
5
  import { staticClasses } from "./Login.styles.js";
5
- const HvLogin = (props) => {
6
+ const HvLogin = forwardRef(function HvLogin2(props, ref) {
6
7
  const {
7
- id,
8
8
  className,
9
9
  classes: classesProp,
10
10
  children,
@@ -15,7 +15,7 @@ const HvLogin = (props) => {
15
15
  return /* @__PURE__ */ jsx(
16
16
  "div",
17
17
  {
18
- id,
18
+ ref,
19
19
  className: cx(classes.root, className),
20
20
  style: {
21
21
  backgroundImage: background && `url(${background})`
@@ -24,7 +24,7 @@ const HvLogin = (props) => {
24
24
  children: /* @__PURE__ */ jsx("div", { className: classes.formContainer, children })
25
25
  }
26
26
  );
27
- };
27
+ });
28
28
  export {
29
29
  HvLogin,
30
30
  staticClasses as loginClasses
@@ -1 +1 @@
1
- {"version":3,"file":"Login.js","sources":["../../../src/Login/Login.tsx"],"sourcesContent":["import {\n useDefaultProps,\n type ExtractNames,\n} from \"@hitachivantara/uikit-react-utils\";\n\nimport { HvBaseProps } from \"../types/generic\";\nimport { staticClasses, useClasses } from \"./Login.styles\";\n\nexport { staticClasses as loginClasses };\n\nexport type HvLoginClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvLoginProps extends HvBaseProps {\n /**\n * The path for the background image.\n */\n background?: string;\n /**\n * Class names to be applied.\n */\n classes?: HvLoginClasses;\n}\n\n/**\n * Container layout for the login form.\n */\nexport const HvLogin = (props: HvLoginProps) => {\n const {\n id,\n className,\n classes: classesProp,\n children,\n background,\n ...others\n } = useDefaultProps(\"HvLogin\", props);\n\n const { classes, cx } = useClasses(classesProp);\n\n return (\n <div\n id={id}\n className={cx(classes.root, className)}\n style={{\n backgroundImage: background && `url(${background})`,\n }}\n {...others}\n >\n <div className={classes.formContainer}>{children}</div>\n </div>\n );\n};\n"],"names":[],"mappings":";;;;AA0Ba,MAAA,UAAU,CAAC,UAAwB;AACxC,QAAA;AAAA,IACJ;AAAA,IACA;AAAA,IACA,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EAAA,IACD,gBAAgB,WAAW,KAAK;AAEpC,QAAM,EAAE,SAAS,GAAG,IAAI,WAAW,WAAW;AAG5C,SAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC;AAAA,MACA,WAAW,GAAG,QAAQ,MAAM,SAAS;AAAA,MACrC,OAAO;AAAA,QACL,iBAAiB,cAAc,OAAO,UAAU;AAAA,MAClD;AAAA,MACC,GAAG;AAAA,MAEJ,UAAC,oBAAA,OAAA,EAAI,WAAW,QAAQ,eAAgB,UAAS;AAAA,IAAA;AAAA,EAAA;AAGvD;"}
1
+ {"version":3,"file":"Login.js","sources":["../../../src/Login/Login.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\nimport {\n useDefaultProps,\n type ExtractNames,\n} from \"@hitachivantara/uikit-react-utils\";\n\nimport { HvBaseProps } from \"../types/generic\";\nimport { staticClasses, useClasses } from \"./Login.styles\";\n\nexport { staticClasses as loginClasses };\n\nexport type HvLoginClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvLoginProps extends HvBaseProps {\n /**\n * The path for the background image.\n */\n background?: string;\n /**\n * Class names to be applied.\n */\n classes?: HvLoginClasses;\n}\n\n/**\n * Container layout for the login form.\n */\nexport const HvLogin = forwardRef<\n // no-indent\n React.ComponentRef<\"div\">,\n HvLoginProps\n>(function HvLogin(props, ref) {\n const {\n className,\n classes: classesProp,\n children,\n background,\n ...others\n } = useDefaultProps(\"HvLogin\", props);\n\n const { classes, cx } = useClasses(classesProp);\n\n return (\n <div\n ref={ref}\n className={cx(classes.root, className)}\n style={{\n backgroundImage: background && `url(${background})`,\n }}\n {...others}\n >\n <div className={classes.formContainer}>{children}</div>\n </div>\n );\n});\n"],"names":["HvLogin"],"mappings":";;;;;AA2BO,MAAM,UAAU,WAIrB,SAASA,SAAQ,OAAO,KAAK;AACvB,QAAA;AAAA,IACJ;AAAA,IACA,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EAAA,IACD,gBAAgB,WAAW,KAAK;AAEpC,QAAM,EAAE,SAAS,OAAO,WAAW,WAAW;AAG5C,SAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC;AAAA,MACA,WAAW,GAAG,QAAQ,MAAM,SAAS;AAAA,MACrC,OAAO;AAAA,QACL,iBAAiB,cAAc,OAAO,UAAU;AAAA,MAClD;AAAA,MACC,GAAG;AAAA,MAEJ,UAAC,oBAAA,OAAA,EAAI,WAAW,QAAQ,eAAgB,SAAS,CAAA;AAAA,IAAA;AAAA,EACnD;AAEJ,CAAC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Login.styles.js","sources":["../../../src/Login/Login.styles.tsx"],"sourcesContent":["import { createClasses } from \"@hitachivantara/uikit-react-utils\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\n\nexport const { staticClasses, useClasses } = createClasses(\"HvLogin\", {\n root: {\n backgroundRepeat: \"no-repeat\",\n backgroundPosition: \"bottom\",\n backgroundSize: \"cover\",\n width: \"100%\",\n height: \"100%\",\n padding: 0,\n margin: \"-1px 0 0 0\",\n },\n formContainer: {\n background: theme.colors.atmo2,\n marginLeft: \"auto\",\n maxWidth: 500,\n height: \"100%\",\n },\n});\n"],"names":[],"mappings":";;AAGO,MAAM,EAAE,eAAe,eAAe,cAAc,WAAW;AAAA,EACpE,MAAM;AAAA,IACJ,kBAAkB;AAAA,IAClB,oBAAoB;AAAA,IACpB,gBAAgB;AAAA,IAChB,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,SAAS;AAAA,IACT,QAAQ;AAAA,EACV;AAAA,EACA,eAAe;AAAA,IACb,YAAY,MAAM,OAAO;AAAA,IACzB,YAAY;AAAA,IACZ,UAAU;AAAA,IACV,QAAQ;AAAA,EACV;AACF,CAAC;"}
1
+ {"version":3,"file":"Login.styles.js","sources":["../../../src/Login/Login.styles.tsx"],"sourcesContent":["import { createClasses } from \"@hitachivantara/uikit-react-utils\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\n\nexport const { staticClasses, useClasses } = createClasses(\"HvLogin\", {\n root: {\n backgroundRepeat: \"no-repeat\",\n backgroundPosition: \"bottom\",\n backgroundSize: \"cover\",\n width: \"100%\",\n height: \"100%\",\n padding: 0,\n margin: \"-1px 0 0 0\",\n },\n formContainer: {\n background: theme.colors.atmo2,\n marginLeft: \"auto\",\n maxWidth: 500,\n height: \"100%\",\n },\n});\n"],"names":[],"mappings":";;AAGO,MAAM,EAAE,eAAe,eAAe,cAAc,WAAW;AAAA,EACpE,MAAM;AAAA,IACJ,kBAAkB;AAAA,IAClB,oBAAoB;AAAA,IACpB,gBAAgB;AAAA,IAChB,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,SAAS;AAAA,IACT,QAAQ;AAAA,EACV;AAAA,EACA,eAAe;AAAA,IACb,YAAY,MAAM,OAAO;AAAA,IACzB,YAAY;AAAA,IACZ,UAAU;AAAA,IACV,QAAQ;AAAA,EAAA;AAEZ,CAAC;"}
@@ -32,7 +32,7 @@ const HvMultiButton = (props) => {
32
32
  classes.root,
33
33
  {
34
34
  [classes.multiple]: !split,
35
- [classes.vertical]: vertical,
35
+ [classes.vertical]: !split && vertical,
36
36
  [classes[variant]]: variant,
37
37
  // TODO - remove in v6
38
38
  [classes.splitGroup]: split,
@@ -42,16 +42,15 @@ const HvMultiButton = (props) => {
42
42
  ),
43
43
  ...others,
44
44
  children: buttons.map((child, index) => {
45
- const childIsSelected = !!child.props.selected;
46
45
  return cloneElement(child, {
47
46
  key: index,
48
47
  variant,
49
48
  disabled: disabled || child.props.disabled,
50
49
  size,
51
- className: cx(child.props.className, classes.button, {
50
+ className: cx(classes.button, child.props.className, {
52
51
  [classes.firstButton]: index === 0,
53
52
  [classes.lastButton]: index === buttons.length - 1,
54
- [classes.selected]: childIsSelected
53
+ [classes.selected]: child.props.selected
55
54
  })
56
55
  });
57
56
  })
@@ -1 +1 @@
1
- {"version":3,"file":"MultiButton.js","sources":["../../../src/MultiButton/MultiButton.tsx"],"sourcesContent":["import {\n Children,\n cloneElement,\n isValidElement,\n ReactElement,\n useMemo,\n} from \"react\";\nimport {\n useDefaultProps,\n type ExtractNames,\n} from \"@hitachivantara/uikit-react-utils\";\nimport { HvSize } from \"@hitachivantara/uikit-styles\";\n\nimport { HvButtonVariant } from \"../Button\";\nimport { HvBaseProps } from \"../types/generic\";\nimport { staticClasses, useClasses } from \"./MultiButton.styles\";\n\nexport { staticClasses as multiButtonClasses };\nexport type HvMultiButtonClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvMultiButtonProps extends HvBaseProps {\n /** If all the buttons are disabled. */\n disabled?: boolean;\n /** If the MultiButton is to be displayed vertically. */\n vertical?: boolean;\n /** Category of button to use */\n variant?: HvButtonVariant;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvMultiButtonClasses;\n /** Button size. */\n size?: HvSize;\n /** Add a split between buttons */\n split?: boolean;\n}\n\nexport const HvMultiButton = (props: HvMultiButtonProps) => {\n const {\n className,\n children,\n classes: classesProp,\n disabled = false,\n vertical = false,\n variant = \"secondarySubtle\",\n size,\n split,\n ...others\n } = useDefaultProps(\"HvMultiButton\", props);\n const { classes, cx } = useClasses(classesProp);\n\n // Filter children: remove invalid and undefined/null\n const buttons = useMemo(() => {\n const btns: ReactElement[] = [];\n Children.forEach(children, (child) => {\n if (child && isValidElement(child)) {\n btns.push(child);\n }\n });\n return btns;\n }, [children]);\n\n return (\n <div\n className={cx(\n classes.root,\n {\n [classes.multiple]: !split,\n [classes.vertical]: vertical,\n [classes[variant as keyof HvMultiButtonClasses]]: variant, // TODO - remove in v6\n [classes.splitGroup]: split,\n [classes.splitGroupDisabled]: split && disabled,\n },\n className,\n )}\n {...others}\n >\n {buttons.map((child, index) => {\n const childIsSelected = !!child.props.selected;\n return cloneElement(child, {\n key: index,\n variant,\n disabled: disabled || child.props.disabled,\n size,\n className: cx(child.props.className, classes.button, {\n [classes.firstButton]: index === 0,\n [classes.lastButton]: index === buttons.length - 1,\n [classes.selected]: childIsSelected,\n }),\n });\n })}\n </div>\n );\n};\n"],"names":[],"mappings":";;;;;AAmCa,MAAA,gBAAgB,CAAC,UAA8B;AACpD,QAAA;AAAA,IACJ;AAAA,IACA;AAAA,IACA,SAAS;AAAA,IACT,WAAW;AAAA,IACX,WAAW;AAAA,IACX,UAAU;AAAA,IACV;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EAAA,IACD,gBAAgB,iBAAiB,KAAK;AAC1C,QAAM,EAAE,SAAS,GAAG,IAAI,WAAW,WAAW;AAGxC,QAAA,UAAU,QAAQ,MAAM;AAC5B,UAAM,OAAuB,CAAA;AACpB,aAAA,QAAQ,UAAU,CAAC,UAAU;AAChC,UAAA,SAAS,eAAe,KAAK,GAAG;AAClC,aAAK,KAAK,KAAK;AAAA,MACjB;AAAA,IAAA,CACD;AACM,WAAA;AAAA,EAAA,GACN,CAAC,QAAQ,CAAC;AAGX,SAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAW;AAAA,QACT,QAAQ;AAAA,QACR;AAAA,UACE,CAAC,QAAQ,QAAQ,GAAG,CAAC;AAAA,UACrB,CAAC,QAAQ,QAAQ,GAAG;AAAA,UACpB,CAAC,QAAQ,OAAqC,CAAC,GAAG;AAAA;AAAA,UAClD,CAAC,QAAQ,UAAU,GAAG;AAAA,UACtB,CAAC,QAAQ,kBAAkB,GAAG,SAAS;AAAA,QACzC;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEH,UAAQ,QAAA,IAAI,CAAC,OAAO,UAAU;AAC7B,cAAM,kBAAkB,CAAC,CAAC,MAAM,MAAM;AACtC,eAAO,aAAa,OAAO;AAAA,UACzB,KAAK;AAAA,UACL;AAAA,UACA,UAAU,YAAY,MAAM,MAAM;AAAA,UAClC;AAAA,UACA,WAAW,GAAG,MAAM,MAAM,WAAW,QAAQ,QAAQ;AAAA,YACnD,CAAC,QAAQ,WAAW,GAAG,UAAU;AAAA,YACjC,CAAC,QAAQ,UAAU,GAAG,UAAU,QAAQ,SAAS;AAAA,YACjD,CAAC,QAAQ,QAAQ,GAAG;AAAA,UAAA,CACrB;AAAA,QAAA,CACF;AAAA,MAAA,CACF;AAAA,IAAA;AAAA,EAAA;AAGP;"}
1
+ {"version":3,"file":"MultiButton.js","sources":["../../../src/MultiButton/MultiButton.tsx"],"sourcesContent":["import {\n Children,\n cloneElement,\n isValidElement,\n ReactElement,\n useMemo,\n} from \"react\";\nimport {\n useDefaultProps,\n type ExtractNames,\n} from \"@hitachivantara/uikit-react-utils\";\nimport { HvSize } from \"@hitachivantara/uikit-styles\";\n\nimport { HvButtonVariant } from \"../Button\";\nimport { HvBaseProps } from \"../types/generic\";\nimport { staticClasses, useClasses } from \"./MultiButton.styles\";\n\nexport { staticClasses as multiButtonClasses };\nexport type HvMultiButtonClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvMultiButtonProps extends HvBaseProps {\n /** If all the buttons are disabled. */\n disabled?: boolean;\n /** If the MultiButton is to be displayed vertically. */\n vertical?: boolean;\n /** Button variant to use when in `split` mode */\n variant?: HvButtonVariant;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvMultiButtonClasses;\n /** Button size when in `split` mode. */\n size?: HvSize;\n /** Add a split between buttons */\n split?: boolean;\n}\n\nexport const HvMultiButton = (props: HvMultiButtonProps) => {\n const {\n className,\n children,\n classes: classesProp,\n disabled = false,\n vertical = false,\n variant = \"secondarySubtle\",\n size,\n split,\n ...others\n } = useDefaultProps(\"HvMultiButton\", props);\n const { classes, cx } = useClasses(classesProp);\n\n // Filter children: remove invalid and undefined/null\n const buttons = useMemo(() => {\n const btns: ReactElement[] = [];\n Children.forEach(children, (child) => {\n if (child && isValidElement(child)) {\n btns.push(child);\n }\n });\n return btns;\n }, [children]);\n\n return (\n <div\n className={cx(\n classes.root,\n {\n [classes.multiple]: !split,\n [classes.vertical]: !split && vertical,\n [classes[variant as keyof HvMultiButtonClasses]]: variant, // TODO - remove in v6\n [classes.splitGroup]: split,\n [classes.splitGroupDisabled]: split && disabled,\n },\n className,\n )}\n {...others}\n >\n {buttons.map((child, index) => {\n return cloneElement(child, {\n key: index,\n variant,\n disabled: disabled || child.props.disabled,\n size,\n className: cx(classes.button, child.props.className, {\n [classes.firstButton]: index === 0,\n [classes.lastButton]: index === buttons.length - 1,\n [classes.selected]: child.props.selected,\n }),\n });\n })}\n </div>\n );\n};\n"],"names":[],"mappings":";;;;;AAmCa,MAAA,gBAAgB,CAAC,UAA8B;AACpD,QAAA;AAAA,IACJ;AAAA,IACA;AAAA,IACA,SAAS;AAAA,IACT,WAAW;AAAA,IACX,WAAW;AAAA,IACX,UAAU;AAAA,IACV;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EAAA,IACD,gBAAgB,iBAAiB,KAAK;AAC1C,QAAM,EAAE,SAAS,OAAO,WAAW,WAAW;AAGxC,QAAA,UAAU,QAAQ,MAAM;AAC5B,UAAM,OAAuB,CAAC;AACrB,aAAA,QAAQ,UAAU,CAAC,UAAU;AAChC,UAAA,SAAS,eAAe,KAAK,GAAG;AAClC,aAAK,KAAK,KAAK;AAAA,MAAA;AAAA,IACjB,CACD;AACM,WAAA;AAAA,EAAA,GACN,CAAC,QAAQ,CAAC;AAGX,SAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAW;AAAA,QACT,QAAQ;AAAA,QACR;AAAA,UACE,CAAC,QAAQ,QAAQ,GAAG,CAAC;AAAA,UACrB,CAAC,QAAQ,QAAQ,GAAG,CAAC,SAAS;AAAA,UAC9B,CAAC,QAAQ,OAAqC,CAAC,GAAG;AAAA;AAAA,UAClD,CAAC,QAAQ,UAAU,GAAG;AAAA,UACtB,CAAC,QAAQ,kBAAkB,GAAG,SAAS;AAAA,QACzC;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEH,UAAQ,QAAA,IAAI,CAAC,OAAO,UAAU;AAC7B,eAAO,aAAa,OAAO;AAAA,UACzB,KAAK;AAAA,UACL;AAAA,UACA,UAAU,YAAY,MAAM,MAAM;AAAA,UAClC;AAAA,UACA,WAAW,GAAG,QAAQ,QAAQ,MAAM,MAAM,WAAW;AAAA,YACnD,CAAC,QAAQ,WAAW,GAAG,UAAU;AAAA,YACjC,CAAC,QAAQ,UAAU,GAAG,UAAU,QAAQ,SAAS;AAAA,YACjD,CAAC,QAAQ,QAAQ,GAAG,MAAM,MAAM;AAAA,UACjC,CAAA;AAAA,QAAA,CACF;AAAA,MACF,CAAA;AAAA,IAAA;AAAA,EACH;AAEJ;"}
@@ -6,105 +6,75 @@ const { staticClasses, useClasses } = createClasses("HvMultiButton", {
6
6
  root: {
7
7
  display: "flex",
8
8
  alignItems: "center",
9
- transition: "none",
10
- position: "relative",
11
- zIndex: 0
9
+ position: "relative"
12
10
  },
13
11
  multiple: {
14
- background: theme.colors.atmo2,
15
- // prevent the focus ring to be hidden by sibling hover background
16
- "&>.HvIsFocusVisible": {
17
- zIndex: 5
18
- },
19
- "& button$button": {
20
- minWidth: "unset",
12
+ backgroundColor: theme.colors.atmo2,
13
+ borderWidth: 0,
14
+ borderColor: `${theme.colors.atmo4} transparent`,
15
+ borderRadius: theme.radii.base,
16
+ "& $button": {
17
+ minWidth: 32,
18
+ minHeight: 32,
21
19
  width: "100%",
22
20
  maxWidth: 200,
23
21
  padding: 0,
24
- transition: "none",
25
- flex: "1 0 0px",
26
- borderTop: `solid 1px ${theme.colors.atmo4}`,
27
- borderBottom: `solid 1px ${theme.colors.atmo4}`,
28
- borderLeft: "solid 1px transparent",
29
- borderRight: "solid 1px transparent",
22
+ flex: 1,
23
+ borderColor: "inherit",
30
24
  borderRadius: 0,
31
25
  fontWeight: theme.typography.body.fontWeight,
32
- fontSize: theme.typography.body.fontSize,
33
26
  "&:disabled": {
34
27
  color: theme.colors.secondary_60,
35
- borderTop: `solid 1px ${theme.colors.atmo4}`,
36
- borderBottom: `solid 1px ${theme.colors.atmo4}`,
37
- "&:hover": {
38
- borderTop: `solid 1px ${theme.colors.atmo4}`,
39
- borderBottom: `solid 1px ${theme.colors.atmo4}`,
40
- borderLeft: "solid 1px transparent",
41
- borderRight: "solid 1px transparent"
42
- }
28
+ borderColor: "inherit"
29
+ },
30
+ "&:hover": {
31
+ borderColor: "inherit"
43
32
  },
44
33
  "&$firstButton": {
45
- borderLeft: `solid 1px ${theme.colors.atmo4}`,
46
- borderTopLeftRadius: theme.radii.base,
47
- borderBottomLeftRadius: theme.radii.base,
34
+ borderLeftColor: theme.colors.atmo4,
35
+ borderTopLeftRadius: "inherit",
36
+ borderBottomLeftRadius: "inherit",
48
37
  "&:disabled": {
49
- borderLeft: `solid 1px ${theme.colors.atmo4}`
38
+ borderLeftColor: theme.colors.atmo4
50
39
  }
51
40
  },
52
41
  "&$lastButton": {
53
- borderRight: `solid 1px ${theme.colors.atmo4}`,
54
- borderTopRightRadius: theme.radii.base,
55
- borderBottomRightRadius: theme.radii.base,
42
+ borderRightColor: theme.colors.atmo4,
43
+ borderTopRightRadius: "inherit",
44
+ borderBottomRightRadius: "inherit",
56
45
  "&:disabled": {
57
- borderRight: `solid 1px ${theme.colors.atmo4}`
58
- },
59
- "&:disabled:hover": {
60
- borderRight: `solid 1px ${theme.colors.atmo4}`
46
+ borderRightColor: theme.colors.atmo4
61
47
  }
62
48
  },
63
49
  "&:not($firstButton)": {
64
50
  marginLeft: "-1px"
65
51
  },
66
52
  "&$selected": {
67
- background: theme.colors.atmo1,
68
- ...theme.typography.label,
69
- borderRadius: theme.radii.base,
70
- border: `solid 1px ${theme.colors.secondary}`,
53
+ backgroundColor: theme.colors.atmo1,
54
+ fontWeight: theme.typography.label.fontWeight,
55
+ borderRadius: "inherit",
56
+ borderColor: theme.colors.secondary,
71
57
  zIndex: 2,
72
- "&:hover": {
73
- background: theme.colors.atmo3,
74
- "&:not(:disabled)": {
75
- border: `solid 1px ${theme.colors.secondary}`
76
- },
77
- "&:disabled": {
78
- border: `solid 1px ${theme.colors.atmo4}`
79
- }
80
- },
81
- // prevent the focus ring to be hidden by sibling hover background
82
- // even when selected
83
- "&.HvIsFocusVisible": {
84
- zIndex: 5
58
+ "&:hover:not(:disabled),&:focus-visible": {
59
+ backgroundColor: theme.colors.containerBackgroundHover
85
60
  },
86
61
  "&:disabled": {
87
62
  zIndex: 1,
88
- color: theme.colors.secondary_60,
89
- background: theme.colors.atmo1,
90
- border: `solid 1px ${theme.colors.atmo4}`
63
+ borderColor: theme.colors.atmo4
91
64
  }
92
65
  }
93
66
  }
94
67
  },
95
68
  splitGroup: {
96
69
  width: "fit-content",
97
- background: theme.colors.atmo1,
98
- // HvButton, HvDropDownMenu
99
- "& button$button:not($firstButton), & $button:not($firstButton) button": {
70
+ "& $button:not($firstButton)": {
100
71
  borderTopLeftRadius: 0,
101
72
  borderBottomLeftRadius: 0,
102
73
  "&:not([aria-controls])": {
103
74
  borderLeftWidth: 0
104
75
  }
105
76
  },
106
- // HvButton, HvDropDownMenu
107
- "& button$button:not($lastButton), & $button:not($lastButton) button": {
77
+ "& $button:not($lastButton)": {
108
78
  borderTopRightRadius: 0,
109
79
  borderBottomRightRadius: 0,
110
80
  "&:not([aria-controls])": {
@@ -119,52 +89,33 @@ const { staticClasses, useClasses } = createClasses("HvMultiButton", {
119
89
  height: "auto",
120
90
  backgroundColor: "currentcolor"
121
91
  }
122
- },
123
- // HvDropDownMenu
124
- [`& .${staticClasses$1.iconSelected}`]: {
125
- zIndex: 2
126
92
  }
127
93
  },
128
- splitGroupDisabled: { background: theme.colors.atmo3 },
94
+ splitGroupDisabled: {},
129
95
  button: {
130
- position: "relative"
96
+ position: "relative",
97
+ // prevent the focus ring to be hidden by sibling hover background
98
+ [`&:focus-visible, &.${staticClasses$1.iconSelected}`]: {
99
+ zIndex: 5
100
+ }
131
101
  },
132
102
  selected: {},
133
103
  vertical: {
134
104
  flexDirection: "column",
135
105
  height: "auto",
136
- "& button$button": {
106
+ borderColor: `transparent ${theme.colors.atmo4}`,
107
+ "& $button": {
137
108
  minWidth: 32,
138
109
  width: "100%",
139
- borderLeft: `solid 1px ${theme.colors.atmo4}`,
140
- borderRight: `solid 1px ${theme.colors.atmo4}`,
141
- borderTop: "solid 1px transparent",
142
- borderBottom: "solid 1px transparent",
143
- "&:disabled": {
144
- color: theme.colors.secondary_60,
145
- borderLeft: `solid 1px ${theme.colors.atmo4}`,
146
- borderRight: `solid 1px ${theme.colors.atmo4}`,
147
- borderTop: "solid 1px transparent",
148
- borderBottom: "solid 1px transparent",
149
- "&:hover": {
150
- borderLeft: `solid 1px ${theme.colors.atmo4}`,
151
- borderRight: `solid 1px ${theme.colors.atmo4}`,
152
- borderTop: "solid 1px transparent",
153
- borderBottom: "solid 1px transparent"
154
- }
155
- },
156
110
  "&$firstButton": {
157
- borderTop: `solid 1px ${theme.colors.atmo4}`,
158
- borderTopLeftRadius: theme.radii.base,
159
- borderTopRightRadius: theme.radii.base
111
+ borderTopColor: theme.colors.atmo4,
112
+ borderTopLeftRadius: "inherit",
113
+ borderTopRightRadius: "inherit"
160
114
  },
161
115
  "&$lastButton": {
162
- borderBottom: `solid 1px ${theme.colors.atmo4}`,
163
- borderBottomLeftRadius: theme.radii.base,
164
- borderBottomRightRadius: theme.radii.base,
165
- "&:disabled:hover": {
166
- borderBottom: `solid 1px ${theme.colors.atmo4}`
167
- }
116
+ borderBottomColor: theme.colors.atmo4,
117
+ borderBottomLeftRadius: "inherit",
118
+ borderBottomRightRadius: "inherit"
168
119
  },
169
120
  "&:not($firstButton)": {
170
121
  marginLeft: 0,
@@ -172,24 +123,12 @@ const { staticClasses, useClasses } = createClasses("HvMultiButton", {
172
123
  },
173
124
  "&$selected": {
174
125
  height: 32,
175
- width: `calc(100% + 2px) !important`,
176
- background: theme.colors.atmo1,
177
- ...theme.typography.label,
178
- borderRadius: theme.radii.base,
179
- border: `solid 1px ${theme.colors.secondary}`,
180
- zIndex: 2,
181
- "&:hover, &:focus": {
182
- background: theme.colors.atmo3
183
- },
184
- "&:disabled": {
185
- zIndex: 1,
186
- color: theme.colors.secondary_60,
187
- background: theme.colors.atmo1,
188
- border: `solid 1px ${theme.colors.atmo4}`
189
- }
126
+ width: "calc(100% + 2px)",
127
+ borderColor: theme.colors.secondary
190
128
  }
191
129
  }
192
130
  },
131
+ // TODO - review the need for these classes in v6 (use :first-child and :last-child instead)
193
132
  firstButton: {},
194
133
  lastButton: {},
195
134
  // TODO - review the need for these classes in v6
@@ -1 +1 @@
1
- {"version":3,"file":"MultiButton.styles.js","sources":["../../../src/MultiButton/MultiButton.styles.tsx"],"sourcesContent":["import { createClasses } from \"@hitachivantara/uikit-react-utils\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\n\nimport { dropDownMenuClasses } from \"../DropDownMenu\";\n\nexport const { staticClasses, useClasses } = createClasses(\"HvMultiButton\", {\n root: {\n display: \"flex\",\n alignItems: \"center\",\n transition: \"none\",\n position: \"relative\",\n zIndex: 0,\n },\n multiple: {\n background: theme.colors.atmo2,\n\n // prevent the focus ring to be hidden by sibling hover background\n \"&>.HvIsFocusVisible\": {\n zIndex: 5,\n },\n\n \"& button$button\": {\n minWidth: \"unset\",\n width: \"100%\",\n maxWidth: 200,\n padding: 0,\n transition: \"none\",\n flex: \"1 0 0px\",\n borderTop: `solid 1px ${theme.colors.atmo4}`,\n borderBottom: `solid 1px ${theme.colors.atmo4}`,\n borderLeft: \"solid 1px transparent\",\n borderRight: \"solid 1px transparent\",\n borderRadius: 0,\n fontWeight: theme.typography.body.fontWeight,\n fontSize: theme.typography.body.fontSize,\n \"&:disabled\": {\n color: theme.colors.secondary_60,\n borderTop: `solid 1px ${theme.colors.atmo4}`,\n borderBottom: `solid 1px ${theme.colors.atmo4}`,\n \"&:hover\": {\n borderTop: `solid 1px ${theme.colors.atmo4}`,\n borderBottom: `solid 1px ${theme.colors.atmo4}`,\n borderLeft: \"solid 1px transparent\",\n borderRight: \"solid 1px transparent\",\n },\n },\n \"&$firstButton\": {\n borderLeft: `solid 1px ${theme.colors.atmo4}`,\n borderTopLeftRadius: theme.radii.base,\n borderBottomLeftRadius: theme.radii.base,\n \"&:disabled\": {\n borderLeft: `solid 1px ${theme.colors.atmo4}`,\n },\n },\n \"&$lastButton\": {\n borderRight: `solid 1px ${theme.colors.atmo4}`,\n borderTopRightRadius: theme.radii.base,\n borderBottomRightRadius: theme.radii.base,\n \"&:disabled\": {\n borderRight: `solid 1px ${theme.colors.atmo4}`,\n },\n \"&:disabled:hover\": {\n borderRight: `solid 1px ${theme.colors.atmo4}`,\n },\n },\n \"&:not($firstButton)\": {\n marginLeft: \"-1px\",\n },\n \"&$selected\": {\n background: theme.colors.atmo1,\n ...theme.typography.label,\n borderRadius: theme.radii.base,\n border: `solid 1px ${theme.colors.secondary}`,\n zIndex: 2,\n \"&:hover\": {\n background: theme.colors.atmo3,\n \"&:not(:disabled)\": {\n border: `solid 1px ${theme.colors.secondary}`,\n },\n \"&:disabled\": {\n border: `solid 1px ${theme.colors.atmo4}`,\n },\n },\n // prevent the focus ring to be hidden by sibling hover background\n // even when selected\n \"&.HvIsFocusVisible\": {\n zIndex: 5,\n },\n \"&:disabled\": {\n zIndex: 1,\n color: theme.colors.secondary_60,\n background: theme.colors.atmo1,\n border: `solid 1px ${theme.colors.atmo4}`,\n },\n },\n },\n },\n splitGroup: {\n width: \"fit-content\",\n background: theme.colors.atmo1,\n\n // HvButton, HvDropDownMenu\n \"& button$button:not($firstButton), & $button:not($firstButton) button\": {\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n \"&:not([aria-controls])\": {\n borderLeftWidth: 0,\n },\n },\n // HvButton, HvDropDownMenu\n \"& button$button:not($lastButton), & $button:not($lastButton) button\": {\n borderTopRightRadius: 0,\n borderBottomRightRadius: 0,\n \"&:not([aria-controls])\": {\n borderRightWidth: 0,\n },\n\n \"&::after\": {\n content: \"''\",\n position: \"absolute\",\n inset: \"4px -1px 4px auto\",\n width: 1,\n zIndex: 1,\n height: \"auto\",\n backgroundColor: \"currentcolor\",\n },\n },\n // HvDropDownMenu\n [`& .${dropDownMenuClasses.iconSelected}`]: {\n zIndex: 2,\n },\n },\n splitGroupDisabled: { background: theme.colors.atmo3 },\n button: {\n position: \"relative\",\n },\n selected: {},\n vertical: {\n flexDirection: \"column\",\n height: \"auto\",\n \"& button$button\": {\n minWidth: 32,\n width: \"100%\",\n borderLeft: `solid 1px ${theme.colors.atmo4}`,\n borderRight: `solid 1px ${theme.colors.atmo4}`,\n borderTop: \"solid 1px transparent\",\n borderBottom: \"solid 1px transparent\",\n \"&:disabled\": {\n color: theme.colors.secondary_60,\n borderLeft: `solid 1px ${theme.colors.atmo4}`,\n borderRight: `solid 1px ${theme.colors.atmo4}`,\n borderTop: \"solid 1px transparent\",\n borderBottom: \"solid 1px transparent\",\n \"&:hover\": {\n borderLeft: `solid 1px ${theme.colors.atmo4}`,\n borderRight: `solid 1px ${theme.colors.atmo4}`,\n borderTop: \"solid 1px transparent\",\n borderBottom: \"solid 1px transparent\",\n },\n },\n \"&$firstButton\": {\n borderTop: `solid 1px ${theme.colors.atmo4}`,\n borderTopLeftRadius: theme.radii.base,\n borderTopRightRadius: theme.radii.base,\n },\n \"&$lastButton\": {\n borderBottom: `solid 1px ${theme.colors.atmo4}`,\n borderBottomLeftRadius: theme.radii.base,\n borderBottomRightRadius: theme.radii.base,\n \"&:disabled:hover\": {\n borderBottom: `solid 1px ${theme.colors.atmo4}`,\n },\n },\n \"&:not($firstButton)\": {\n marginLeft: 0,\n marginTop: -1,\n },\n \"&$selected\": {\n height: 32,\n width: `calc(100% + 2px) !important`,\n background: theme.colors.atmo1,\n ...theme.typography.label,\n borderRadius: theme.radii.base,\n border: `solid 1px ${theme.colors.secondary}`,\n zIndex: 2,\n \"&:hover, &:focus\": {\n background: theme.colors.atmo3,\n },\n \"&:disabled\": {\n zIndex: 1,\n color: theme.colors.secondary_60,\n background: theme.colors.atmo1,\n border: `solid 1px ${theme.colors.atmo4}`,\n },\n },\n },\n },\n firstButton: {},\n lastButton: {},\n\n // TODO - review the need for these classes in v6\n primary: {},\n primarySubtle: {},\n primaryGhost: {},\n secondary: {},\n secondarySubtle: {},\n secondaryGhost: {},\n});\n"],"names":["dropDownMenuClasses"],"mappings":"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"}
1
+ {"version":3,"file":"MultiButton.styles.js","sources":["../../../src/MultiButton/MultiButton.styles.tsx"],"sourcesContent":["import { createClasses } from \"@hitachivantara/uikit-react-utils\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\n\nimport { dropDownMenuClasses } from \"../DropDownMenu\";\n\nexport const { staticClasses, useClasses } = createClasses(\"HvMultiButton\", {\n root: {\n display: \"flex\",\n alignItems: \"center\",\n position: \"relative\",\n },\n multiple: {\n backgroundColor: theme.colors.atmo2,\n\n borderWidth: 0,\n borderColor: `${theme.colors.atmo4} transparent`,\n borderRadius: theme.radii.base,\n\n \"& $button\": {\n minWidth: 32,\n minHeight: 32,\n width: \"100%\",\n maxWidth: 200,\n padding: 0,\n flex: 1,\n borderColor: \"inherit\",\n borderRadius: 0,\n fontWeight: theme.typography.body.fontWeight,\n \"&:disabled\": {\n color: theme.colors.secondary_60,\n borderColor: \"inherit\",\n },\n \"&:hover\": {\n borderColor: \"inherit\",\n },\n \"&$firstButton\": {\n borderLeftColor: theme.colors.atmo4,\n borderTopLeftRadius: \"inherit\",\n borderBottomLeftRadius: \"inherit\",\n \"&:disabled\": {\n borderLeftColor: theme.colors.atmo4,\n },\n },\n \"&$lastButton\": {\n borderRightColor: theme.colors.atmo4,\n borderTopRightRadius: \"inherit\",\n borderBottomRightRadius: \"inherit\",\n \"&:disabled\": {\n borderRightColor: theme.colors.atmo4,\n },\n },\n \"&:not($firstButton)\": {\n marginLeft: \"-1px\",\n },\n \"&$selected\": {\n backgroundColor: theme.colors.atmo1,\n fontWeight: theme.typography.label.fontWeight,\n borderRadius: \"inherit\",\n borderColor: theme.colors.secondary,\n zIndex: 2,\n \"&:hover:not(:disabled),&:focus-visible\": {\n backgroundColor: theme.colors.containerBackgroundHover,\n },\n \"&:disabled\": {\n zIndex: 1,\n borderColor: theme.colors.atmo4,\n },\n },\n },\n },\n splitGroup: {\n width: \"fit-content\",\n\n \"& $button:not($firstButton)\": {\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n \"&:not([aria-controls])\": {\n borderLeftWidth: 0,\n },\n },\n \"& $button:not($lastButton)\": {\n borderTopRightRadius: 0,\n borderBottomRightRadius: 0,\n \"&:not([aria-controls])\": {\n borderRightWidth: 0,\n },\n\n \"&::after\": {\n content: \"''\",\n position: \"absolute\",\n inset: \"4px -1px 4px auto\",\n width: 1,\n zIndex: 1,\n height: \"auto\",\n backgroundColor: \"currentcolor\",\n },\n },\n },\n splitGroupDisabled: {},\n button: {\n position: \"relative\",\n // prevent the focus ring to be hidden by sibling hover background\n [`&:focus-visible, &.${dropDownMenuClasses.iconSelected}`]: {\n zIndex: 5,\n },\n },\n selected: {},\n vertical: {\n flexDirection: \"column\",\n height: \"auto\",\n borderColor: `transparent ${theme.colors.atmo4}`,\n \"& $button\": {\n minWidth: 32,\n width: \"100%\",\n \"&$firstButton\": {\n borderTopColor: theme.colors.atmo4,\n borderTopLeftRadius: \"inherit\",\n borderTopRightRadius: \"inherit\",\n },\n \"&$lastButton\": {\n borderBottomColor: theme.colors.atmo4,\n borderBottomLeftRadius: \"inherit\",\n borderBottomRightRadius: \"inherit\",\n },\n \"&:not($firstButton)\": {\n marginLeft: 0,\n marginTop: -1,\n },\n \"&$selected\": {\n height: 32,\n width: \"calc(100% + 2px)\",\n borderColor: theme.colors.secondary,\n },\n },\n },\n\n // TODO - review the need for these classes in v6 (use :first-child and :last-child instead)\n firstButton: {},\n lastButton: {},\n\n // TODO - review the need for these classes in v6\n primary: {},\n primarySubtle: {},\n primaryGhost: {},\n secondary: {},\n secondarySubtle: {},\n secondaryGhost: {},\n});\n"],"names":["dropDownMenuClasses"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"OverflowTooltip.js","sources":["../../../src/OverflowTooltip/OverflowTooltip.tsx"],"sourcesContent":["import { useMemo } from \"react\";\nimport { useResizeDetector } from \"react-resize-detector\";\nimport {\n useDefaultProps,\n type ExtractNames,\n} from \"@hitachivantara/uikit-react-utils\";\n\nimport { HvTooltip, HvTooltipProps } from \"../Tooltip\";\nimport { HvBaseProps } from \"../types/generic\";\nimport { HvTypography } from \"../Typography\";\nimport { staticClasses, useClasses } from \"./OverflowTooltip.styles\";\n\nexport { staticClasses as overflowTooltipClasses };\nexport type HvOverflowTooltipClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvOverflowTooltipProps extends HvBaseProps {\n /** The node that will be rendered inside the tooltip. */\n data: React.ReactNode;\n /** If true, the tooltip is shown. */\n open?: boolean;\n /** If `true`, the overflow tooltip will always use the paragraph overflow style. */\n paragraphOverflow?: boolean;\n /** Tooltip placement. */\n placement?:\n | \"bottom-end\"\n | \"bottom-start\"\n | \"bottom\"\n | \"left-end\"\n | \"left-start\"\n | \"left\"\n | \"right-end\"\n | \"right-start\"\n | \"right\"\n | \"top-end\"\n | \"top-start\"\n | \"top\";\n /** Extra properties to add to the tooltip. */\n tooltipsProps?: Partial<HvTooltipProps>;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvOverflowTooltipClasses;\n}\n\nconst isParagraph = (children = \"\") => /\\s/.test(children);\n\n/**\n * This component generates a tooltip whenever the text is overflowed.\n */\nexport const HvOverflowTooltip = (props: HvOverflowTooltipProps) => {\n const {\n id,\n classes: classesProp,\n className,\n data,\n open,\n paragraphOverflow,\n placement = \"top-start\",\n tooltipsProps,\n } = useDefaultProps(\"HvOverflowTooltip\", props);\n\n const { classes, cx } = useClasses(classesProp);\n\n const {\n height = 0,\n width = 0,\n ref,\n } = useResizeDetector({\n refreshMode: \"debounce\",\n refreshOptions: {\n trailing: true,\n },\n handleHeight: false,\n });\n\n const isParag = useMemo(\n () => paragraphOverflow && isParagraph(data?.toString()),\n [data, paragraphOverflow],\n );\n\n // The difference should be higher than a pixel to be considered as overflowing\n const isOverflowing = useMemo(() => {\n if (isParag) {\n const scrollHeight = ref.current?.scrollHeight || 0;\n\n return scrollHeight - height >= 1;\n }\n\n const scrollWidth = ref.current?.scrollWidth || 0;\n\n return scrollWidth - width >= 1;\n }, [height, isParag, ref, width]);\n\n const content = useMemo(\n () => (\n <div\n ref={ref}\n className={cx(\n {\n [classes.tooltipAnchor]: !isParag,\n [classes.tooltipAnchorParagraph]: isParag,\n },\n className,\n )}\n >\n {data}\n </div>\n ),\n [\n className,\n classes.tooltipAnchor,\n classes.tooltipAnchorParagraph,\n cx,\n data,\n isParag,\n ref,\n ],\n );\n\n return (\n <HvTooltip\n id={id}\n disableHoverListener={!isOverflowing}\n open={open}\n placement={placement}\n title={\n <HvTypography className={classes.tooltipData} variant=\"body\">\n {data}\n </HvTypography>\n }\n // unset since `content` *is* the label\n aria-label={null as any}\n aria-labelledby={null as any}\n {...tooltipsProps}\n >\n {content}\n </HvTooltip>\n );\n};\n"],"names":[],"mappings":";;;;;;;;AA0CA,MAAM,cAAc,CAAC,WAAW,OAAO,KAAK,KAAK,QAAQ;AAK5C,MAAA,oBAAoB,CAAC,UAAkC;AAC5D,QAAA;AAAA,IACJ;AAAA,IACA,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,YAAY;AAAA,IACZ;AAAA,EAAA,IACE,gBAAgB,qBAAqB,KAAK;AAE9C,QAAM,EAAE,SAAS,GAAG,IAAI,WAAW,WAAW;AAExC,QAAA;AAAA,IACJ,SAAS;AAAA,IACT,QAAQ;AAAA,IACR;AAAA,MACE,kBAAkB;AAAA,IACpB,aAAa;AAAA,IACb,gBAAgB;AAAA,MACd,UAAU;AAAA,IACZ;AAAA,IACA,cAAc;AAAA,EAAA,CACf;AAED,QAAM,UAAU;AAAA,IACd,MAAM,qBAAqB,YAAY,MAAM,UAAU;AAAA,IACvD,CAAC,MAAM,iBAAiB;AAAA,EAAA;AAIpB,QAAA,gBAAgB,QAAQ,MAAM;AAClC,QAAI,SAAS;AACL,YAAA,eAAe,IAAI,SAAS,gBAAgB;AAElD,aAAO,eAAe,UAAU;AAAA,IAClC;AAEM,UAAA,cAAc,IAAI,SAAS,eAAe;AAEhD,WAAO,cAAc,SAAS;AAAA,KAC7B,CAAC,QAAQ,SAAS,KAAK,KAAK,CAAC;AAEhC,QAAM,UAAU;AAAA,IACd,MACE;AAAA,MAAC;AAAA,MAAA;AAAA,QACC;AAAA,QACA,WAAW;AAAA,UACT;AAAA,YACE,CAAC,QAAQ,aAAa,GAAG,CAAC;AAAA,YAC1B,CAAC,QAAQ,sBAAsB,GAAG;AAAA,UACpC;AAAA,UACA;AAAA,QACF;AAAA,QAEC,UAAA;AAAA,MAAA;AAAA,IACH;AAAA,IAEF;AAAA,MACE;AAAA,MACA,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EAAA;AAIA,SAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC;AAAA,MACA,sBAAsB,CAAC;AAAA,MACvB;AAAA,MACA;AAAA,MACA,2BACG,cAAa,EAAA,WAAW,QAAQ,aAAa,SAAQ,QACnD,UACH,KAAA,CAAA;AAAA,MAGF,cAAY;AAAA,MACZ,mBAAiB;AAAA,MAChB,GAAG;AAAA,MAEH,UAAA;AAAA,IAAA;AAAA,EAAA;AAGP;"}
1
+ {"version":3,"file":"OverflowTooltip.js","sources":["../../../src/OverflowTooltip/OverflowTooltip.tsx"],"sourcesContent":["import { useMemo } from \"react\";\nimport { useResizeDetector } from \"react-resize-detector\";\nimport {\n useDefaultProps,\n type ExtractNames,\n} from \"@hitachivantara/uikit-react-utils\";\n\nimport { HvTooltip, HvTooltipProps } from \"../Tooltip\";\nimport { HvBaseProps } from \"../types/generic\";\nimport { HvTypography } from \"../Typography\";\nimport { staticClasses, useClasses } from \"./OverflowTooltip.styles\";\n\nexport { staticClasses as overflowTooltipClasses };\nexport type HvOverflowTooltipClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvOverflowTooltipProps extends HvBaseProps {\n /** The node that will be rendered inside the tooltip. */\n data: React.ReactNode;\n /** If true, the tooltip is shown. */\n open?: boolean;\n /** If `true`, the overflow tooltip will always use the paragraph overflow style. */\n paragraphOverflow?: boolean;\n /** Tooltip placement. */\n placement?:\n | \"bottom-end\"\n | \"bottom-start\"\n | \"bottom\"\n | \"left-end\"\n | \"left-start\"\n | \"left\"\n | \"right-end\"\n | \"right-start\"\n | \"right\"\n | \"top-end\"\n | \"top-start\"\n | \"top\";\n /** Extra properties to add to the tooltip. */\n tooltipsProps?: Partial<HvTooltipProps>;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvOverflowTooltipClasses;\n}\n\nconst isParagraph = (children = \"\") => /\\s/.test(children);\n\n/**\n * This component generates a tooltip whenever the text is overflowed.\n */\nexport const HvOverflowTooltip = (props: HvOverflowTooltipProps) => {\n const {\n id,\n classes: classesProp,\n className,\n data,\n open,\n paragraphOverflow,\n placement = \"top-start\",\n tooltipsProps,\n } = useDefaultProps(\"HvOverflowTooltip\", props);\n\n const { classes, cx } = useClasses(classesProp);\n\n const {\n height = 0,\n width = 0,\n ref,\n } = useResizeDetector({\n refreshMode: \"debounce\",\n refreshOptions: {\n trailing: true,\n },\n handleHeight: false,\n });\n\n const isParag = useMemo(\n () => paragraphOverflow && isParagraph(data?.toString()),\n [data, paragraphOverflow],\n );\n\n // The difference should be higher than a pixel to be considered as overflowing\n const isOverflowing = useMemo(() => {\n if (isParag) {\n const scrollHeight = ref.current?.scrollHeight || 0;\n\n return scrollHeight - height >= 1;\n }\n\n const scrollWidth = ref.current?.scrollWidth || 0;\n\n return scrollWidth - width >= 1;\n }, [height, isParag, ref, width]);\n\n const content = useMemo(\n () => (\n <div\n ref={ref}\n className={cx(\n {\n [classes.tooltipAnchor]: !isParag,\n [classes.tooltipAnchorParagraph]: isParag,\n },\n className,\n )}\n >\n {data}\n </div>\n ),\n [\n className,\n classes.tooltipAnchor,\n classes.tooltipAnchorParagraph,\n cx,\n data,\n isParag,\n ref,\n ],\n );\n\n return (\n <HvTooltip\n id={id}\n disableHoverListener={!isOverflowing}\n open={open}\n placement={placement}\n title={\n <HvTypography className={classes.tooltipData} variant=\"body\">\n {data}\n </HvTypography>\n }\n // unset since `content` *is* the label\n aria-label={null as any}\n aria-labelledby={null as any}\n {...tooltipsProps}\n >\n {content}\n </HvTooltip>\n );\n};\n"],"names":[],"mappings":";;;;;;;;AA0CA,MAAM,cAAc,CAAC,WAAW,OAAO,KAAK,KAAK,QAAQ;AAK5C,MAAA,oBAAoB,CAAC,UAAkC;AAC5D,QAAA;AAAA,IACJ;AAAA,IACA,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,YAAY;AAAA,IACZ;AAAA,EAAA,IACE,gBAAgB,qBAAqB,KAAK;AAE9C,QAAM,EAAE,SAAS,OAAO,WAAW,WAAW;AAExC,QAAA;AAAA,IACJ,SAAS;AAAA,IACT,QAAQ;AAAA,IACR;AAAA,MACE,kBAAkB;AAAA,IACpB,aAAa;AAAA,IACb,gBAAgB;AAAA,MACd,UAAU;AAAA,IACZ;AAAA,IACA,cAAc;AAAA,EAAA,CACf;AAED,QAAM,UAAU;AAAA,IACd,MAAM,qBAAqB,YAAY,MAAM,UAAU;AAAA,IACvD,CAAC,MAAM,iBAAiB;AAAA,EAC1B;AAGM,QAAA,gBAAgB,QAAQ,MAAM;AAClC,QAAI,SAAS;AACL,YAAA,eAAe,IAAI,SAAS,gBAAgB;AAElD,aAAO,eAAe,UAAU;AAAA,IAAA;AAG5B,UAAA,cAAc,IAAI,SAAS,eAAe;AAEhD,WAAO,cAAc,SAAS;AAAA,KAC7B,CAAC,QAAQ,SAAS,KAAK,KAAK,CAAC;AAEhC,QAAM,UAAU;AAAA,IACd,MACE;AAAA,MAAC;AAAA,MAAA;AAAA,QACC;AAAA,QACA,WAAW;AAAA,UACT;AAAA,YACE,CAAC,QAAQ,aAAa,GAAG,CAAC;AAAA,YAC1B,CAAC,QAAQ,sBAAsB,GAAG;AAAA,UACpC;AAAA,UACA;AAAA,QACF;AAAA,QAEC,UAAA;AAAA,MAAA;AAAA,IACH;AAAA,IAEF;AAAA,MACE;AAAA,MACA,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,EAEJ;AAGE,SAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC;AAAA,MACA,sBAAsB,CAAC;AAAA,MACvB;AAAA,MACA;AAAA,MACA,2BACG,cAAa,EAAA,WAAW,QAAQ,aAAa,SAAQ,QACnD,UACH,KAAA,CAAA;AAAA,MAGF,cAAY;AAAA,MACZ,mBAAiB;AAAA,MAChB,GAAG;AAAA,MAEH,UAAA;AAAA,IAAA;AAAA,EACH;AAEJ;"}
@@ -1 +1 @@
1
- {"version":3,"file":"OverflowTooltip.styles.js","sources":["../../../src/OverflowTooltip/OverflowTooltip.styles.tsx"],"sourcesContent":["import { createClasses } from \"@hitachivantara/uikit-react-utils\";\n\nexport const { staticClasses, useClasses } = createClasses(\n \"HvOverflowTooltip\",\n {\n tooltipData: {},\n tooltipAnchor: {\n whiteSpace: \"nowrap\",\n overflow: \"hidden\",\n textOverflow: \"ellipsis\",\n maxWidth: \"100%\",\n width: \"fit-content\",\n },\n tooltipAnchorParagraph: {\n overflow: \"hidden\",\n display: \"-webkit-box\",\n WebkitLineClamp: 3,\n WebkitBoxOrient: \"vertical\",\n },\n },\n);\n"],"names":[],"mappings":";AAEa,MAAA,EAAE,eAAe,WAAA,IAAe;AAAA,EAC3C;AAAA,EACA;AAAA,IACE,aAAa,CAAC;AAAA,IACd,eAAe;AAAA,MACb,YAAY;AAAA,MACZ,UAAU;AAAA,MACV,cAAc;AAAA,MACd,UAAU;AAAA,MACV,OAAO;AAAA,IACT;AAAA,IACA,wBAAwB;AAAA,MACtB,UAAU;AAAA,MACV,SAAS;AAAA,MACT,iBAAiB;AAAA,MACjB,iBAAiB;AAAA,IACnB;AAAA,EACF;AACF;"}
1
+ {"version":3,"file":"OverflowTooltip.styles.js","sources":["../../../src/OverflowTooltip/OverflowTooltip.styles.tsx"],"sourcesContent":["import { createClasses } from \"@hitachivantara/uikit-react-utils\";\n\nexport const { staticClasses, useClasses } = createClasses(\n \"HvOverflowTooltip\",\n {\n tooltipData: {},\n tooltipAnchor: {\n whiteSpace: \"nowrap\",\n overflow: \"hidden\",\n textOverflow: \"ellipsis\",\n maxWidth: \"100%\",\n width: \"fit-content\",\n },\n tooltipAnchorParagraph: {\n overflow: \"hidden\",\n display: \"-webkit-box\",\n WebkitLineClamp: 3,\n WebkitBoxOrient: \"vertical\",\n },\n },\n);\n"],"names":[],"mappings":";AAEa,MAAA,EAAE,eAAe,WAAA,IAAe;AAAA,EAC3C;AAAA,EACA;AAAA,IACE,aAAa,CAAC;AAAA,IACd,eAAe;AAAA,MACb,YAAY;AAAA,MACZ,UAAU;AAAA,MACV,cAAc;AAAA,MACd,UAAU;AAAA,MACV,OAAO;AAAA,IACT;AAAA,IACA,wBAAwB;AAAA,MACtB,UAAU;AAAA,MACV,SAAS;AAAA,MACT,iBAAiB;AAAA,MACjB,iBAAiB;AAAA,IAAA;AAAA,EACnB;AAEJ;"}