@hitachivantara/uikit-react-core 5.32.0 → 5.34.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 (728) hide show
  1. package/dist/cjs/components/Accordion/Accordion.cjs +4 -5
  2. package/dist/cjs/components/Accordion/Accordion.cjs.map +1 -1
  3. package/dist/cjs/components/ActionsGeneric/ActionsGeneric.cjs +5 -5
  4. package/dist/cjs/components/ActionsGeneric/ActionsGeneric.cjs.map +1 -1
  5. package/dist/cjs/components/AppSwitcher/Action/Action.cjs +2 -2
  6. package/dist/cjs/components/AppSwitcher/Action/Action.cjs.map +1 -1
  7. package/dist/cjs/components/AppSwitcher/AppSwitcher.cjs +2 -2
  8. package/dist/cjs/components/AppSwitcher/AppSwitcher.cjs.map +1 -1
  9. package/dist/cjs/components/Avatar/Avatar.cjs +1 -1
  10. package/dist/cjs/components/Avatar/Avatar.cjs.map +1 -1
  11. package/dist/cjs/components/Banner/BannerContent/BannerContent.cjs +1 -1
  12. package/dist/cjs/components/Banner/BannerContent/BannerContent.cjs.map +1 -1
  13. package/dist/cjs/components/BaseCheckBox/BaseCheckBox.cjs +3 -3
  14. package/dist/cjs/components/BaseCheckBox/BaseCheckBox.cjs.map +1 -1
  15. package/dist/cjs/components/BaseDropdown/BaseDropdown.cjs +15 -18
  16. package/dist/cjs/components/BaseDropdown/BaseDropdown.cjs.map +1 -1
  17. package/dist/cjs/components/BaseDropdown/BaseDropdown.styles.cjs +6 -6
  18. package/dist/cjs/components/BaseDropdown/BaseDropdown.styles.cjs.map +1 -1
  19. package/dist/cjs/components/BaseInput/BaseInput.cjs +1 -1
  20. package/dist/cjs/components/BaseInput/BaseInput.cjs.map +1 -1
  21. package/dist/cjs/components/BaseInput/validations.cjs +12 -13
  22. package/dist/cjs/components/BaseInput/validations.cjs.map +1 -1
  23. package/dist/cjs/components/BaseRadio/BaseRadio.cjs +3 -3
  24. package/dist/cjs/components/BaseRadio/BaseRadio.cjs.map +1 -1
  25. package/dist/cjs/components/BaseSwitch/BaseSwitch.cjs +3 -3
  26. package/dist/cjs/components/BaseSwitch/BaseSwitch.cjs.map +1 -1
  27. package/dist/cjs/components/Box/Box.cjs +1 -1
  28. package/dist/cjs/components/Box/Box.cjs.map +1 -1
  29. package/dist/cjs/components/BreadCrumb/BreadCrumb.cjs +1 -4
  30. package/dist/cjs/components/BreadCrumb/BreadCrumb.cjs.map +1 -1
  31. package/dist/cjs/components/BreadCrumb/Page/Page.cjs +1 -1
  32. package/dist/cjs/components/BreadCrumb/Page/Page.cjs.map +1 -1
  33. package/dist/cjs/components/BreadCrumb/utils.cjs +1 -1
  34. package/dist/cjs/components/BreadCrumb/utils.cjs.map +1 -1
  35. package/dist/cjs/components/BulkActions/BulkActions.cjs +4 -4
  36. package/dist/cjs/components/BulkActions/BulkActions.cjs.map +1 -1
  37. package/dist/cjs/components/BulkActions/BulkActions.styles.cjs.map +1 -1
  38. package/dist/cjs/components/Button/Button.cjs +1 -1
  39. package/dist/cjs/components/Button/Button.cjs.map +1 -1
  40. package/dist/cjs/components/Calendar/Calendar.cjs +3 -3
  41. package/dist/cjs/components/Calendar/Calendar.cjs.map +1 -1
  42. package/dist/cjs/components/Calendar/Calendar.styles.cjs +1 -1
  43. package/dist/cjs/components/Calendar/Calendar.styles.cjs.map +1 -1
  44. package/dist/cjs/components/Calendar/CalendarHeader/CalendarHeader.cjs +6 -9
  45. package/dist/cjs/components/Calendar/CalendarHeader/CalendarHeader.cjs.map +1 -1
  46. package/dist/cjs/components/Calendar/CalendarHeader/CalendarHeader.styles.cjs +1 -1
  47. package/dist/cjs/components/Calendar/CalendarHeader/CalendarHeader.styles.cjs.map +1 -1
  48. package/dist/cjs/components/Calendar/CalendarNavigation/ComposedNavigation/ComposedNavigation.cjs +4 -4
  49. package/dist/cjs/components/Calendar/CalendarNavigation/ComposedNavigation/ComposedNavigation.cjs.map +1 -1
  50. package/dist/cjs/components/Calendar/CalendarNavigation/ComposedNavigation/ComposedNavigation.styles.cjs +1 -1
  51. package/dist/cjs/components/Calendar/CalendarNavigation/ComposedNavigation/ComposedNavigation.styles.cjs.map +1 -1
  52. package/dist/cjs/components/Calendar/CalendarNavigation/MonthSelector/MonthSelector.cjs +2 -2
  53. package/dist/cjs/components/Calendar/CalendarNavigation/MonthSelector/MonthSelector.cjs.map +1 -1
  54. package/dist/cjs/components/Calendar/CalendarNavigation/Navigation/Navigation.cjs +8 -28
  55. package/dist/cjs/components/Calendar/CalendarNavigation/Navigation/Navigation.cjs.map +1 -1
  56. package/dist/cjs/components/Calendar/CalendarNavigation/Navigation/Navigation.styles.cjs +9 -39
  57. package/dist/cjs/components/Calendar/CalendarNavigation/Navigation/Navigation.styles.cjs.map +1 -1
  58. package/dist/cjs/components/Calendar/SingleCalendar/CalendarCell.cjs +3 -6
  59. package/dist/cjs/components/Calendar/SingleCalendar/CalendarCell.cjs.map +1 -1
  60. package/dist/cjs/components/Calendar/SingleCalendar/SingleCalendar.cjs +15 -19
  61. package/dist/cjs/components/Calendar/SingleCalendar/SingleCalendar.cjs.map +1 -1
  62. package/dist/cjs/components/Calendar/SingleCalendar/SingleCalendar.styles.cjs +9 -1
  63. package/dist/cjs/components/Calendar/SingleCalendar/SingleCalendar.styles.cjs.map +1 -1
  64. package/dist/cjs/components/Calendar/utils.cjs +8 -13
  65. package/dist/cjs/components/Calendar/utils.cjs.map +1 -1
  66. package/dist/cjs/components/Card/Card.cjs.map +1 -1
  67. package/dist/cjs/components/Card/Header/Header.cjs.map +1 -1
  68. package/dist/cjs/components/Card/Media/Media.cjs.map +1 -1
  69. package/dist/cjs/components/Carousel/Carousel.cjs +10 -11
  70. package/dist/cjs/components/Carousel/Carousel.cjs.map +1 -1
  71. package/dist/cjs/components/Carousel/CarouselControls.cjs +1 -1
  72. package/dist/cjs/components/Carousel/CarouselControls.cjs.map +1 -1
  73. package/dist/cjs/components/Carousel/CarouselThumbnails.cjs +1 -1
  74. package/dist/cjs/components/Carousel/CarouselThumbnails.cjs.map +1 -1
  75. package/dist/cjs/components/CheckBox/CheckBox.cjs +3 -3
  76. package/dist/cjs/components/CheckBox/CheckBox.cjs.map +1 -1
  77. package/dist/cjs/components/CheckBoxGroup/CheckBoxGroup.cjs +11 -17
  78. package/dist/cjs/components/CheckBoxGroup/CheckBoxGroup.cjs.map +1 -1
  79. package/dist/cjs/components/ColorPicker/ColorPicker.cjs +10 -10
  80. package/dist/cjs/components/ColorPicker/ColorPicker.cjs.map +1 -1
  81. package/dist/cjs/components/ColorPicker/Fields/Fields.cjs +16 -16
  82. package/dist/cjs/components/ColorPicker/Fields/Fields.cjs.map +1 -1
  83. package/dist/cjs/components/ColorPicker/Picker/Picker.cjs +3 -3
  84. package/dist/cjs/components/ColorPicker/Picker/Picker.cjs.map +1 -1
  85. package/dist/cjs/components/ColorPicker/PresetColors/PresetColors.cjs.map +1 -1
  86. package/dist/cjs/components/ColorPicker/SavedColors/SavedColors.cjs.map +1 -1
  87. package/dist/cjs/components/Controls/Controls.cjs +7 -13
  88. package/dist/cjs/components/Controls/Controls.cjs.map +1 -1
  89. package/dist/cjs/components/Controls/LeftControl/LeftControl.cjs +2 -2
  90. package/dist/cjs/components/Controls/LeftControl/LeftControl.cjs.map +1 -1
  91. package/dist/cjs/components/Controls/RightControl/RightControl.cjs +3 -3
  92. package/dist/cjs/components/Controls/RightControl/RightControl.cjs.map +1 -1
  93. package/dist/cjs/components/DatePicker/DatePicker.cjs +10 -11
  94. package/dist/cjs/components/DatePicker/DatePicker.cjs.map +1 -1
  95. package/dist/cjs/components/DatePicker/utils.cjs +1 -1
  96. package/dist/cjs/components/DatePicker/utils.cjs.map +1 -1
  97. package/dist/cjs/components/Dialog/Actions/Actions.cjs.map +1 -1
  98. package/dist/cjs/components/Dialog/Content/Content.cjs.map +1 -1
  99. package/dist/cjs/components/Dialog/Dialog.cjs +5 -5
  100. package/dist/cjs/components/Dialog/Dialog.cjs.map +1 -1
  101. package/dist/cjs/components/Dialog/Title/Title.cjs.map +1 -1
  102. package/dist/cjs/components/DotPagination/DotPagination.cjs +4 -4
  103. package/dist/cjs/components/DotPagination/DotPagination.cjs.map +1 -1
  104. package/dist/cjs/components/Drawer/Drawer.cjs +1 -1
  105. package/dist/cjs/components/Drawer/Drawer.cjs.map +1 -1
  106. package/dist/cjs/components/DropDownMenu/DropDownMenu.cjs +5 -6
  107. package/dist/cjs/components/DropDownMenu/DropDownMenu.cjs.map +1 -1
  108. package/dist/cjs/components/DropDownMenu/DropDownMenu.styles.cjs +1 -1
  109. package/dist/cjs/components/DropDownMenu/DropDownMenu.styles.cjs.map +1 -1
  110. package/dist/cjs/components/Dropdown/Dropdown.cjs +10 -12
  111. package/dist/cjs/components/Dropdown/Dropdown.cjs.map +1 -1
  112. package/dist/cjs/components/Dropdown/List/List.cjs +10 -13
  113. package/dist/cjs/components/Dropdown/List/List.cjs.map +1 -1
  114. package/dist/cjs/components/FileUploader/DropZone/DropZone.cjs +13 -14
  115. package/dist/cjs/components/FileUploader/DropZone/DropZone.cjs.map +1 -1
  116. package/dist/cjs/components/FileUploader/DropZone/DropZone.styles.cjs +1 -1
  117. package/dist/cjs/components/FileUploader/DropZone/DropZone.styles.cjs.map +1 -1
  118. package/dist/cjs/components/FileUploader/File/File.cjs +6 -6
  119. package/dist/cjs/components/FileUploader/File/File.cjs.map +1 -1
  120. package/dist/cjs/components/FileUploader/File/File.styles.cjs +1 -1
  121. package/dist/cjs/components/FileUploader/File/File.styles.cjs.map +1 -1
  122. package/dist/cjs/components/FileUploader/FileList/FileList.cjs +1 -1
  123. package/dist/cjs/components/FileUploader/FileList/FileList.cjs.map +1 -1
  124. package/dist/cjs/components/FileUploader/FileList/FileList.styles.cjs +1 -1
  125. package/dist/cjs/components/FileUploader/FileList/FileList.styles.cjs.map +1 -1
  126. package/dist/cjs/components/FileUploader/FileUploader.cjs +1 -1
  127. package/dist/cjs/components/FileUploader/FileUploader.cjs.map +1 -1
  128. package/dist/cjs/components/FileUploader/Preview/Preview.cjs +1 -1
  129. package/dist/cjs/components/FileUploader/Preview/Preview.cjs.map +1 -1
  130. package/dist/cjs/components/FileUploader/Preview/Preview.styles.cjs +1 -1
  131. package/dist/cjs/components/FileUploader/Preview/Preview.styles.cjs.map +1 -1
  132. package/dist/cjs/components/FilterGroup/Counter/Counter.cjs +2 -4
  133. package/dist/cjs/components/FilterGroup/Counter/Counter.cjs.map +1 -1
  134. package/dist/cjs/components/FilterGroup/FilterContent/FilterContent.cjs +10 -11
  135. package/dist/cjs/components/FilterGroup/FilterContent/FilterContent.cjs.map +1 -1
  136. package/dist/cjs/components/FilterGroup/FilterGroupContext.cjs +1 -1
  137. package/dist/cjs/components/FilterGroup/FilterGroupContext.cjs.map +1 -1
  138. package/dist/cjs/components/FilterGroup/RightPanel/RightPanel.cjs +14 -26
  139. package/dist/cjs/components/FilterGroup/RightPanel/RightPanel.cjs.map +1 -1
  140. package/dist/cjs/components/Focus/Focus.cjs +8 -13
  141. package/dist/cjs/components/Focus/Focus.cjs.map +1 -1
  142. package/dist/cjs/components/Focus/utils.cjs +1 -1
  143. package/dist/cjs/components/Focus/utils.cjs.map +1 -1
  144. package/dist/cjs/components/Footer/Footer.cjs.map +1 -1
  145. package/dist/cjs/components/Footer/Footer.styles.cjs.map +1 -1
  146. package/dist/cjs/components/Forms/Adornment/Adornment.cjs +1 -2
  147. package/dist/cjs/components/Forms/Adornment/Adornment.cjs.map +1 -1
  148. package/dist/cjs/components/Forms/FormElement/utils/FormUtils.cjs +17 -20
  149. package/dist/cjs/components/Forms/FormElement/utils/FormUtils.cjs.map +1 -1
  150. package/dist/cjs/components/Forms/Label/Label.cjs +1 -2
  151. package/dist/cjs/components/Forms/Label/Label.cjs.map +1 -1
  152. package/dist/cjs/components/Forms/Suggestions/Suggestions.cjs +2 -2
  153. package/dist/cjs/components/Forms/Suggestions/Suggestions.cjs.map +1 -1
  154. package/dist/cjs/components/Forms/WarningText/WarningText.cjs +3 -6
  155. package/dist/cjs/components/Forms/WarningText/WarningText.cjs.map +1 -1
  156. package/dist/cjs/components/Forms/WarningText/WarningText.styles.cjs +6 -7
  157. package/dist/cjs/components/Forms/WarningText/WarningText.styles.cjs.map +1 -1
  158. package/dist/cjs/components/GlobalActions/GlobalActions.cjs +1 -1
  159. package/dist/cjs/components/GlobalActions/GlobalActions.cjs.map +1 -1
  160. package/dist/cjs/components/GlobalActions/GlobalActions.styles.cjs.map +1 -1
  161. package/dist/cjs/components/Grid/Grid.cjs +1 -1
  162. package/dist/cjs/components/Grid/Grid.cjs.map +1 -1
  163. package/dist/cjs/components/Header/Actions/Actions.styles.cjs +1 -2
  164. package/dist/cjs/components/Header/Actions/Actions.styles.cjs.map +1 -1
  165. package/dist/cjs/components/Header/Navigation/MenuBar/Bar.cjs +1 -1
  166. package/dist/cjs/components/Header/Navigation/MenuBar/Bar.cjs.map +1 -1
  167. package/dist/cjs/components/Header/Navigation/MenuBar/MenuBar.cjs.map +1 -1
  168. package/dist/cjs/components/Header/Navigation/MenuItem/MenuItem.cjs +14 -15
  169. package/dist/cjs/components/Header/Navigation/MenuItem/MenuItem.cjs.map +1 -1
  170. package/dist/cjs/components/Header/Navigation/Navigation.cjs +1 -1
  171. package/dist/cjs/components/Header/Navigation/Navigation.cjs.map +1 -1
  172. package/dist/cjs/components/Header/Navigation/useSelectionPath.cjs +1 -1
  173. package/dist/cjs/components/Header/Navigation/useSelectionPath.cjs.map +1 -1
  174. package/dist/cjs/components/InlineEditor/InlineEditor.cjs +5 -5
  175. package/dist/cjs/components/InlineEditor/InlineEditor.cjs.map +1 -1
  176. package/dist/cjs/components/Input/Input.cjs +24 -29
  177. package/dist/cjs/components/Input/Input.cjs.map +1 -1
  178. package/dist/cjs/components/Kpi/Kpi.cjs +4 -4
  179. package/dist/cjs/components/Kpi/Kpi.cjs.map +1 -1
  180. package/dist/cjs/components/Link/Link.cjs +1 -1
  181. package/dist/cjs/components/Link/Link.cjs.map +1 -1
  182. package/dist/cjs/components/List/List.cjs +5 -6
  183. package/dist/cjs/components/List/List.cjs.map +1 -1
  184. package/dist/cjs/components/List/utils.cjs +6 -6
  185. package/dist/cjs/components/List/utils.cjs.map +1 -1
  186. package/dist/cjs/components/ListContainer/ListItem/ListItem.cjs +4 -4
  187. package/dist/cjs/components/ListContainer/ListItem/ListItem.cjs.map +1 -1
  188. package/dist/cjs/components/Login/Login.styles.cjs +1 -1
  189. package/dist/cjs/components/Login/Login.styles.cjs.map +1 -1
  190. package/dist/cjs/components/MultiButton/MultiButton.cjs +1 -1
  191. package/dist/cjs/components/MultiButton/MultiButton.cjs.map +1 -1
  192. package/dist/cjs/components/MultiButton/MultiButton.styles.cjs.map +1 -1
  193. package/dist/cjs/components/OverflowTooltip/OverflowTooltip.cjs +3 -4
  194. package/dist/cjs/components/OverflowTooltip/OverflowTooltip.cjs.map +1 -1
  195. package/dist/cjs/components/Pagination/Pagination.cjs +18 -16
  196. package/dist/cjs/components/Pagination/Pagination.cjs.map +1 -1
  197. package/dist/cjs/components/Pagination/Pagination.styles.cjs +27 -8
  198. package/dist/cjs/components/Pagination/Pagination.styles.cjs.map +1 -1
  199. package/dist/cjs/components/Pagination/Select.cjs +1 -1
  200. package/dist/cjs/components/Pagination/Select.cjs.map +1 -1
  201. package/dist/cjs/components/Panel/Panel.cjs.map +1 -1
  202. package/dist/cjs/components/ProgressBar/ProgressBar.cjs +1 -1
  203. package/dist/cjs/components/ProgressBar/ProgressBar.cjs.map +1 -1
  204. package/dist/cjs/components/QueryBuilder/ConfirmationDialog/ConfirmationDialog.cjs +2 -2
  205. package/dist/cjs/components/QueryBuilder/ConfirmationDialog/ConfirmationDialog.cjs.map +1 -1
  206. package/dist/cjs/components/QueryBuilder/Context.cjs.map +1 -1
  207. package/dist/cjs/components/QueryBuilder/QueryBuilder.cjs +3 -3
  208. package/dist/cjs/components/QueryBuilder/QueryBuilder.cjs.map +1 -1
  209. package/dist/cjs/components/QueryBuilder/Rule/Attribute/Attribute.cjs +4 -6
  210. package/dist/cjs/components/QueryBuilder/Rule/Attribute/Attribute.cjs.map +1 -1
  211. package/dist/cjs/components/QueryBuilder/Rule/Rule.cjs +1 -1
  212. package/dist/cjs/components/QueryBuilder/Rule/Rule.cjs.map +1 -1
  213. package/dist/cjs/components/QueryBuilder/Rule/Value/DateTimeValue/DateTimeValue.cjs +18 -23
  214. package/dist/cjs/components/QueryBuilder/Rule/Value/DateTimeValue/DateTimeValue.cjs.map +1 -1
  215. package/dist/cjs/components/QueryBuilder/Rule/Value/NumericValue/NumericValue.cjs +31 -35
  216. package/dist/cjs/components/QueryBuilder/Rule/Value/NumericValue/NumericValue.cjs.map +1 -1
  217. package/dist/cjs/components/QueryBuilder/RuleGroup/RuleGroup.cjs +10 -12
  218. package/dist/cjs/components/QueryBuilder/RuleGroup/RuleGroup.cjs.map +1 -1
  219. package/dist/cjs/components/QueryBuilder/utils/index.cjs +1 -1
  220. package/dist/cjs/components/QueryBuilder/utils/index.cjs.map +1 -1
  221. package/dist/cjs/components/Radio/Radio.cjs +3 -3
  222. package/dist/cjs/components/Radio/Radio.cjs.map +1 -1
  223. package/dist/cjs/components/RadioGroup/RadioGroup.cjs +11 -16
  224. package/dist/cjs/components/RadioGroup/RadioGroup.cjs.map +1 -1
  225. package/dist/cjs/components/ScrollTo/Horizontal/HorizontalScrollListItem/HorizontalScrollListItem.cjs.map +1 -1
  226. package/dist/cjs/components/ScrollTo/Horizontal/ScrollToHorizontal.cjs +7 -7
  227. package/dist/cjs/components/ScrollTo/Horizontal/ScrollToHorizontal.cjs.map +1 -1
  228. package/dist/cjs/components/ScrollTo/Vertical/ScrollToVertical.cjs +4 -4
  229. package/dist/cjs/components/ScrollTo/Vertical/ScrollToVertical.cjs.map +1 -1
  230. package/dist/cjs/components/ScrollTo/Vertical/VerticalScrollListItem/VerticalScrollListItem.cjs +1 -1
  231. package/dist/cjs/components/ScrollTo/Vertical/VerticalScrollListItem/VerticalScrollListItem.cjs.map +1 -1
  232. package/dist/cjs/components/ScrollTo/Vertical/VerticalScrollListItem/VerticalScrollListItem.styles.cjs +1 -1
  233. package/dist/cjs/components/ScrollTo/Vertical/VerticalScrollListItem/VerticalScrollListItem.styles.cjs.map +1 -1
  234. package/dist/cjs/components/ScrollTo/useScrollTo.cjs +3 -3
  235. package/dist/cjs/components/ScrollTo/useScrollTo.cjs.map +1 -1
  236. package/dist/cjs/components/ScrollTo/utils.cjs +4 -7
  237. package/dist/cjs/components/ScrollTo/utils.cjs.map +1 -1
  238. package/dist/cjs/components/Section/Section.cjs +2 -2
  239. package/dist/cjs/components/Section/Section.cjs.map +1 -1
  240. package/dist/cjs/components/SelectionList/SelectionList.cjs +9 -15
  241. package/dist/cjs/components/SelectionList/SelectionList.cjs.map +1 -1
  242. package/dist/cjs/components/Slider/Slider.cjs +9 -10
  243. package/dist/cjs/components/Slider/Slider.cjs.map +1 -1
  244. package/dist/cjs/components/Slider/Slider.styles.cjs.map +1 -1
  245. package/dist/cjs/components/Slider/SliderInput/SliderInput.cjs +2 -2
  246. package/dist/cjs/components/Slider/SliderInput/SliderInput.cjs.map +1 -1
  247. package/dist/cjs/components/Slider/utils.cjs +2 -2
  248. package/dist/cjs/components/Slider/utils.cjs.map +1 -1
  249. package/dist/cjs/components/Snackbar/Snackbar.cjs.map +1 -1
  250. package/dist/cjs/components/Snackbar/SnackbarContent/SnackbarContent.cjs +2 -2
  251. package/dist/cjs/components/Snackbar/SnackbarContent/SnackbarContent.cjs.map +1 -1
  252. package/dist/cjs/components/Stack/Stack.cjs.map +1 -1
  253. package/dist/cjs/components/Switch/Switch.cjs +1 -1
  254. package/dist/cjs/components/Switch/Switch.cjs.map +1 -1
  255. package/dist/cjs/components/Tab/Tab.cjs.map +1 -1
  256. package/dist/cjs/components/Tab/Tab.styles.cjs +1 -1
  257. package/dist/cjs/components/Tab/Tab.styles.cjs.map +1 -1
  258. package/dist/cjs/components/Table/TableBody/TableBody.cjs +1 -2
  259. package/dist/cjs/components/Table/TableBody/TableBody.cjs.map +1 -1
  260. package/dist/cjs/components/Table/TableCell/TableCell.cjs +3 -4
  261. package/dist/cjs/components/Table/TableCell/TableCell.cjs.map +1 -1
  262. package/dist/cjs/components/Table/TableHead/TableHead.cjs +1 -2
  263. package/dist/cjs/components/Table/TableHead/TableHead.cjs.map +1 -1
  264. package/dist/cjs/components/Table/TableHeader/TableHeader.cjs +3 -4
  265. package/dist/cjs/components/Table/TableHeader/TableHeader.cjs.map +1 -1
  266. package/dist/cjs/components/Table/TableRow/TableRow.cjs +2 -3
  267. package/dist/cjs/components/Table/TableRow/TableRow.cjs.map +1 -1
  268. package/dist/cjs/components/Table/hooks/useHeaderGroups.cjs +1 -2
  269. package/dist/cjs/components/Table/hooks/useHeaderGroups.cjs.map +1 -1
  270. package/dist/cjs/components/Table/hooks/useResizeColumns.cjs +1 -2
  271. package/dist/cjs/components/Table/hooks/useResizeColumns.cjs.map +1 -1
  272. package/dist/cjs/components/Table/hooks/useRowExpand.cjs +2 -5
  273. package/dist/cjs/components/Table/hooks/useRowExpand.cjs.map +1 -1
  274. package/dist/cjs/components/Table/hooks/useRowSelection.cjs +2 -4
  275. package/dist/cjs/components/Table/hooks/useRowSelection.cjs.map +1 -1
  276. package/dist/cjs/components/Table/hooks/useSticky.cjs +5 -7
  277. package/dist/cjs/components/Table/hooks/useSticky.cjs.map +1 -1
  278. package/dist/cjs/components/Table/hooks/useTable.cjs.map +1 -1
  279. package/dist/cjs/components/Table/hooks/useTableStyles.cjs.map +1 -1
  280. package/dist/cjs/components/Table/renderers/DropdownColumnCell/DropdownColumnCell.cjs +1 -1
  281. package/dist/cjs/components/Table/renderers/DropdownColumnCell/DropdownColumnCell.cjs.map +1 -1
  282. package/dist/cjs/components/Table/renderers/SwitchColumnCell/SwitchColumnCell.cjs +1 -1
  283. package/dist/cjs/components/Table/renderers/SwitchColumnCell/SwitchColumnCell.cjs.map +1 -1
  284. package/dist/cjs/components/Table/renderers/renderers.cjs +6 -7
  285. package/dist/cjs/components/Table/renderers/renderers.cjs.map +1 -1
  286. package/dist/cjs/components/Table/utils/fallbacks.cjs +1 -1
  287. package/dist/cjs/components/Table/utils/fallbacks.cjs.map +1 -1
  288. package/dist/cjs/components/Tabs/Tabs.cjs.map +1 -1
  289. package/dist/cjs/components/Tabs/Tabs.styles.cjs.map +1 -1
  290. package/dist/cjs/components/Tag/Tag.cjs +2 -2
  291. package/dist/cjs/components/Tag/Tag.cjs.map +1 -1
  292. package/dist/cjs/components/Tag/Tag.styles.cjs.map +1 -1
  293. package/dist/cjs/components/TagsInput/TagsInput.cjs +16 -26
  294. package/dist/cjs/components/TagsInput/TagsInput.cjs.map +1 -1
  295. package/dist/cjs/components/TextArea/TextArea.cjs +5 -9
  296. package/dist/cjs/components/TextArea/TextArea.cjs.map +1 -1
  297. package/dist/cjs/components/TimePicker/Placeholder.cjs +1 -1
  298. package/dist/cjs/components/TimePicker/Placeholder.cjs.map +1 -1
  299. package/dist/cjs/components/TimePicker/TimePicker.cjs +3 -4
  300. package/dist/cjs/components/TimePicker/TimePicker.cjs.map +1 -1
  301. package/dist/cjs/components/ToggleButton/ToggleButton.cjs +1 -1
  302. package/dist/cjs/components/ToggleButton/ToggleButton.cjs.map +1 -1
  303. package/dist/cjs/components/Tooltip/Tooltip.cjs +1 -1
  304. package/dist/cjs/components/Tooltip/Tooltip.cjs.map +1 -1
  305. package/dist/cjs/components/Tooltip/Tooltip.styles.cjs.map +1 -1
  306. package/dist/cjs/components/Typography/Typography.cjs +1 -1
  307. package/dist/cjs/components/Typography/Typography.cjs.map +1 -1
  308. package/dist/cjs/components/VerticalNavigation/Actions/Action.cjs.map +1 -1
  309. package/dist/cjs/components/VerticalNavigation/Actions/Action.styles.cjs.map +1 -1
  310. package/dist/cjs/components/VerticalNavigation/Actions/Actions.cjs.map +1 -1
  311. package/dist/cjs/components/VerticalNavigation/Actions/Actions.styles.cjs +1 -1
  312. package/dist/cjs/components/VerticalNavigation/Actions/Actions.styles.cjs.map +1 -1
  313. package/dist/cjs/components/VerticalNavigation/Header/Header.cjs +1 -1
  314. package/dist/cjs/components/VerticalNavigation/Header/Header.cjs.map +1 -1
  315. package/dist/cjs/components/VerticalNavigation/Navigation/Navigation.cjs +10 -10
  316. package/dist/cjs/components/VerticalNavigation/Navigation/Navigation.cjs.map +1 -1
  317. package/dist/cjs/components/VerticalNavigation/Navigation/Navigation.styles.cjs +1 -1
  318. package/dist/cjs/components/VerticalNavigation/Navigation/Navigation.styles.cjs.map +1 -1
  319. package/dist/cjs/components/VerticalNavigation/NavigationPopup/NavigationPopup.styles.cjs +2 -2
  320. package/dist/cjs/components/VerticalNavigation/NavigationPopup/NavigationPopup.styles.cjs.map +1 -1
  321. package/dist/cjs/components/VerticalNavigation/NavigationPopup/NavigationPopupContainer.cjs +1 -1
  322. package/dist/cjs/components/VerticalNavigation/NavigationPopup/NavigationPopupContainer.cjs.map +1 -1
  323. package/dist/cjs/components/VerticalNavigation/NavigationSlider/NavigationSlider.cjs +2 -2
  324. package/dist/cjs/components/VerticalNavigation/NavigationSlider/NavigationSlider.cjs.map +1 -1
  325. package/dist/cjs/components/VerticalNavigation/NavigationSlider/NavigationSlider.styles.cjs.map +1 -1
  326. package/dist/cjs/components/VerticalNavigation/NavigationSlider/utils/NavigationSlider.utils.cjs +2 -4
  327. package/dist/cjs/components/VerticalNavigation/NavigationSlider/utils/NavigationSlider.utils.cjs.map +1 -1
  328. package/dist/cjs/components/VerticalNavigation/TreeView/IconWrapper/IconWrapper.cjs +1 -1
  329. package/dist/cjs/components/VerticalNavigation/TreeView/IconWrapper/IconWrapper.cjs.map +1 -1
  330. package/dist/cjs/components/VerticalNavigation/TreeView/TreeView.cjs +5 -16
  331. package/dist/cjs/components/VerticalNavigation/TreeView/TreeView.cjs.map +1 -1
  332. package/dist/cjs/components/VerticalNavigation/TreeView/TreeView.styles.cjs +1 -1
  333. package/dist/cjs/components/VerticalNavigation/TreeView/TreeView.styles.cjs.map +1 -1
  334. package/dist/cjs/components/VerticalNavigation/TreeView/TreeViewItem.cjs +7 -8
  335. package/dist/cjs/components/VerticalNavigation/TreeView/TreeViewItem.cjs.map +1 -1
  336. package/dist/cjs/components/VerticalNavigation/TreeView/descendants.cjs.map +1 -1
  337. package/dist/cjs/components/VerticalNavigation/VerticalNavigation.cjs +2 -2
  338. package/dist/cjs/components/VerticalNavigation/VerticalNavigation.cjs.map +1 -1
  339. package/dist/cjs/components/VerticalNavigation/VerticalNavigation.styles.cjs +1 -1
  340. package/dist/cjs/components/VerticalNavigation/VerticalNavigation.styles.cjs.map +1 -1
  341. package/dist/cjs/hocs/withTooltip.cjs +1 -1
  342. package/dist/cjs/hocs/withTooltip.cjs.map +1 -1
  343. package/dist/cjs/hooks/useClickOutside.cjs +2 -2
  344. package/dist/cjs/hooks/useClickOutside.cjs.map +1 -1
  345. package/dist/cjs/hooks/useComputation.cjs +1 -1
  346. package/dist/cjs/hooks/useComputation.cjs.map +1 -1
  347. package/dist/cjs/hooks/useCss.cjs.map +1 -1
  348. package/dist/cjs/hooks/useDefaultProps.cjs +4 -5
  349. package/dist/cjs/hooks/useDefaultProps.cjs.map +1 -1
  350. package/dist/cjs/hooks/useTheme.cjs +1 -2
  351. package/dist/cjs/hooks/useTheme.cjs.map +1 -1
  352. package/dist/cjs/utils/classes.cjs +2 -2
  353. package/dist/cjs/utils/classes.cjs.map +1 -1
  354. package/dist/cjs/utils/keyboardUtils.cjs +1 -1
  355. package/dist/cjs/utils/keyboardUtils.cjs.map +1 -1
  356. package/dist/cjs/utils/setId.cjs +1 -3
  357. package/dist/cjs/utils/setId.cjs.map +1 -1
  358. package/dist/cjs/utils/theme.cjs +2 -4
  359. package/dist/cjs/utils/theme.cjs.map +1 -1
  360. package/dist/esm/components/Accordion/Accordion.js +4 -5
  361. package/dist/esm/components/Accordion/Accordion.js.map +1 -1
  362. package/dist/esm/components/ActionsGeneric/ActionsGeneric.js +5 -5
  363. package/dist/esm/components/ActionsGeneric/ActionsGeneric.js.map +1 -1
  364. package/dist/esm/components/AppSwitcher/Action/Action.js +2 -2
  365. package/dist/esm/components/AppSwitcher/Action/Action.js.map +1 -1
  366. package/dist/esm/components/AppSwitcher/AppSwitcher.js +2 -2
  367. package/dist/esm/components/AppSwitcher/AppSwitcher.js.map +1 -1
  368. package/dist/esm/components/Avatar/Avatar.js +1 -1
  369. package/dist/esm/components/Avatar/Avatar.js.map +1 -1
  370. package/dist/esm/components/Banner/BannerContent/BannerContent.js +1 -1
  371. package/dist/esm/components/Banner/BannerContent/BannerContent.js.map +1 -1
  372. package/dist/esm/components/BaseCheckBox/BaseCheckBox.js +3 -3
  373. package/dist/esm/components/BaseCheckBox/BaseCheckBox.js.map +1 -1
  374. package/dist/esm/components/BaseDropdown/BaseDropdown.js +15 -18
  375. package/dist/esm/components/BaseDropdown/BaseDropdown.js.map +1 -1
  376. package/dist/esm/components/BaseDropdown/BaseDropdown.styles.js +6 -6
  377. package/dist/esm/components/BaseDropdown/BaseDropdown.styles.js.map +1 -1
  378. package/dist/esm/components/BaseInput/BaseInput.js +1 -1
  379. package/dist/esm/components/BaseInput/BaseInput.js.map +1 -1
  380. package/dist/esm/components/BaseInput/validations.js +12 -13
  381. package/dist/esm/components/BaseInput/validations.js.map +1 -1
  382. package/dist/esm/components/BaseRadio/BaseRadio.js +3 -3
  383. package/dist/esm/components/BaseRadio/BaseRadio.js.map +1 -1
  384. package/dist/esm/components/BaseSwitch/BaseSwitch.js +3 -3
  385. package/dist/esm/components/BaseSwitch/BaseSwitch.js.map +1 -1
  386. package/dist/esm/components/Box/Box.js +1 -1
  387. package/dist/esm/components/Box/Box.js.map +1 -1
  388. package/dist/esm/components/BreadCrumb/BreadCrumb.js +1 -2
  389. package/dist/esm/components/BreadCrumb/BreadCrumb.js.map +1 -1
  390. package/dist/esm/components/BreadCrumb/Page/Page.js +1 -1
  391. package/dist/esm/components/BreadCrumb/Page/Page.js.map +1 -1
  392. package/dist/esm/components/BreadCrumb/utils.js +1 -1
  393. package/dist/esm/components/BreadCrumb/utils.js.map +1 -1
  394. package/dist/esm/components/BulkActions/BulkActions.js +4 -4
  395. package/dist/esm/components/BulkActions/BulkActions.js.map +1 -1
  396. package/dist/esm/components/BulkActions/BulkActions.styles.js.map +1 -1
  397. package/dist/esm/components/Button/Button.js +1 -1
  398. package/dist/esm/components/Button/Button.js.map +1 -1
  399. package/dist/esm/components/Calendar/Calendar.js +3 -3
  400. package/dist/esm/components/Calendar/Calendar.js.map +1 -1
  401. package/dist/esm/components/Calendar/Calendar.styles.js +1 -1
  402. package/dist/esm/components/Calendar/Calendar.styles.js.map +1 -1
  403. package/dist/esm/components/Calendar/CalendarHeader/CalendarHeader.js +6 -8
  404. package/dist/esm/components/Calendar/CalendarHeader/CalendarHeader.js.map +1 -1
  405. package/dist/esm/components/Calendar/CalendarHeader/CalendarHeader.styles.js +1 -1
  406. package/dist/esm/components/Calendar/CalendarHeader/CalendarHeader.styles.js.map +1 -1
  407. package/dist/esm/components/Calendar/CalendarNavigation/ComposedNavigation/ComposedNavigation.js +4 -4
  408. package/dist/esm/components/Calendar/CalendarNavigation/ComposedNavigation/ComposedNavigation.js.map +1 -1
  409. package/dist/esm/components/Calendar/CalendarNavigation/ComposedNavigation/ComposedNavigation.styles.js +1 -1
  410. package/dist/esm/components/Calendar/CalendarNavigation/ComposedNavigation/ComposedNavigation.styles.js.map +1 -1
  411. package/dist/esm/components/Calendar/CalendarNavigation/MonthSelector/MonthSelector.js +2 -2
  412. package/dist/esm/components/Calendar/CalendarNavigation/MonthSelector/MonthSelector.js.map +1 -1
  413. package/dist/esm/components/Calendar/CalendarNavigation/Navigation/Navigation.js +8 -28
  414. package/dist/esm/components/Calendar/CalendarNavigation/Navigation/Navigation.js.map +1 -1
  415. package/dist/esm/components/Calendar/CalendarNavigation/Navigation/Navigation.styles.js +9 -39
  416. package/dist/esm/components/Calendar/CalendarNavigation/Navigation/Navigation.styles.js.map +1 -1
  417. package/dist/esm/components/Calendar/SingleCalendar/CalendarCell.js +3 -6
  418. package/dist/esm/components/Calendar/SingleCalendar/CalendarCell.js.map +1 -1
  419. package/dist/esm/components/Calendar/SingleCalendar/SingleCalendar.js +15 -17
  420. package/dist/esm/components/Calendar/SingleCalendar/SingleCalendar.js.map +1 -1
  421. package/dist/esm/components/Calendar/SingleCalendar/SingleCalendar.styles.js +9 -1
  422. package/dist/esm/components/Calendar/SingleCalendar/SingleCalendar.styles.js.map +1 -1
  423. package/dist/esm/components/Calendar/utils.js +8 -12
  424. package/dist/esm/components/Calendar/utils.js.map +1 -1
  425. package/dist/esm/components/Card/Card.js.map +1 -1
  426. package/dist/esm/components/Card/Header/Header.js.map +1 -1
  427. package/dist/esm/components/Card/Media/Media.js.map +1 -1
  428. package/dist/esm/components/Carousel/Carousel.js +10 -11
  429. package/dist/esm/components/Carousel/Carousel.js.map +1 -1
  430. package/dist/esm/components/Carousel/CarouselControls.js +1 -1
  431. package/dist/esm/components/Carousel/CarouselControls.js.map +1 -1
  432. package/dist/esm/components/Carousel/CarouselThumbnails.js +1 -1
  433. package/dist/esm/components/Carousel/CarouselThumbnails.js.map +1 -1
  434. package/dist/esm/components/CheckBox/CheckBox.js +3 -3
  435. package/dist/esm/components/CheckBox/CheckBox.js.map +1 -1
  436. package/dist/esm/components/CheckBoxGroup/CheckBoxGroup.js +11 -17
  437. package/dist/esm/components/CheckBoxGroup/CheckBoxGroup.js.map +1 -1
  438. package/dist/esm/components/ColorPicker/ColorPicker.js +10 -10
  439. package/dist/esm/components/ColorPicker/ColorPicker.js.map +1 -1
  440. package/dist/esm/components/ColorPicker/Fields/Fields.js +16 -16
  441. package/dist/esm/components/ColorPicker/Fields/Fields.js.map +1 -1
  442. package/dist/esm/components/ColorPicker/Picker/Picker.js +3 -3
  443. package/dist/esm/components/ColorPicker/Picker/Picker.js.map +1 -1
  444. package/dist/esm/components/ColorPicker/PresetColors/PresetColors.js.map +1 -1
  445. package/dist/esm/components/ColorPicker/SavedColors/SavedColors.js.map +1 -1
  446. package/dist/esm/components/Controls/Controls.js +7 -13
  447. package/dist/esm/components/Controls/Controls.js.map +1 -1
  448. package/dist/esm/components/Controls/LeftControl/LeftControl.js +2 -2
  449. package/dist/esm/components/Controls/LeftControl/LeftControl.js.map +1 -1
  450. package/dist/esm/components/Controls/RightControl/RightControl.js +3 -3
  451. package/dist/esm/components/Controls/RightControl/RightControl.js.map +1 -1
  452. package/dist/esm/components/DatePicker/DatePicker.js +10 -11
  453. package/dist/esm/components/DatePicker/DatePicker.js.map +1 -1
  454. package/dist/esm/components/DatePicker/utils.js +1 -1
  455. package/dist/esm/components/DatePicker/utils.js.map +1 -1
  456. package/dist/esm/components/Dialog/Actions/Actions.js.map +1 -1
  457. package/dist/esm/components/Dialog/Content/Content.js.map +1 -1
  458. package/dist/esm/components/Dialog/Dialog.js +5 -5
  459. package/dist/esm/components/Dialog/Dialog.js.map +1 -1
  460. package/dist/esm/components/Dialog/Title/Title.js.map +1 -1
  461. package/dist/esm/components/DotPagination/DotPagination.js +4 -4
  462. package/dist/esm/components/DotPagination/DotPagination.js.map +1 -1
  463. package/dist/esm/components/Drawer/Drawer.js +1 -1
  464. package/dist/esm/components/Drawer/Drawer.js.map +1 -1
  465. package/dist/esm/components/DropDownMenu/DropDownMenu.js +5 -6
  466. package/dist/esm/components/DropDownMenu/DropDownMenu.js.map +1 -1
  467. package/dist/esm/components/DropDownMenu/DropDownMenu.styles.js +1 -1
  468. package/dist/esm/components/DropDownMenu/DropDownMenu.styles.js.map +1 -1
  469. package/dist/esm/components/Dropdown/Dropdown.js +10 -12
  470. package/dist/esm/components/Dropdown/Dropdown.js.map +1 -1
  471. package/dist/esm/components/Dropdown/List/List.js +10 -11
  472. package/dist/esm/components/Dropdown/List/List.js.map +1 -1
  473. package/dist/esm/components/FileUploader/DropZone/DropZone.js +13 -14
  474. package/dist/esm/components/FileUploader/DropZone/DropZone.js.map +1 -1
  475. package/dist/esm/components/FileUploader/DropZone/DropZone.styles.js +1 -1
  476. package/dist/esm/components/FileUploader/DropZone/DropZone.styles.js.map +1 -1
  477. package/dist/esm/components/FileUploader/File/File.js +6 -6
  478. package/dist/esm/components/FileUploader/File/File.js.map +1 -1
  479. package/dist/esm/components/FileUploader/File/File.styles.js +1 -1
  480. package/dist/esm/components/FileUploader/File/File.styles.js.map +1 -1
  481. package/dist/esm/components/FileUploader/FileList/FileList.js +1 -1
  482. package/dist/esm/components/FileUploader/FileList/FileList.js.map +1 -1
  483. package/dist/esm/components/FileUploader/FileList/FileList.styles.js +1 -1
  484. package/dist/esm/components/FileUploader/FileList/FileList.styles.js.map +1 -1
  485. package/dist/esm/components/FileUploader/FileUploader.js +1 -1
  486. package/dist/esm/components/FileUploader/FileUploader.js.map +1 -1
  487. package/dist/esm/components/FileUploader/Preview/Preview.js +1 -1
  488. package/dist/esm/components/FileUploader/Preview/Preview.js.map +1 -1
  489. package/dist/esm/components/FileUploader/Preview/Preview.styles.js +1 -1
  490. package/dist/esm/components/FileUploader/Preview/Preview.styles.js.map +1 -1
  491. package/dist/esm/components/FilterGroup/Counter/Counter.js +2 -4
  492. package/dist/esm/components/FilterGroup/Counter/Counter.js.map +1 -1
  493. package/dist/esm/components/FilterGroup/FilterContent/FilterContent.js +10 -11
  494. package/dist/esm/components/FilterGroup/FilterContent/FilterContent.js.map +1 -1
  495. package/dist/esm/components/FilterGroup/FilterGroupContext.js +1 -1
  496. package/dist/esm/components/FilterGroup/FilterGroupContext.js.map +1 -1
  497. package/dist/esm/components/FilterGroup/RightPanel/RightPanel.js +14 -26
  498. package/dist/esm/components/FilterGroup/RightPanel/RightPanel.js.map +1 -1
  499. package/dist/esm/components/Focus/Focus.js +8 -12
  500. package/dist/esm/components/Focus/Focus.js.map +1 -1
  501. package/dist/esm/components/Focus/utils.js +1 -1
  502. package/dist/esm/components/Focus/utils.js.map +1 -1
  503. package/dist/esm/components/Footer/Footer.js.map +1 -1
  504. package/dist/esm/components/Footer/Footer.styles.js.map +1 -1
  505. package/dist/esm/components/Forms/Adornment/Adornment.js +1 -2
  506. package/dist/esm/components/Forms/Adornment/Adornment.js.map +1 -1
  507. package/dist/esm/components/Forms/FormElement/utils/FormUtils.js +17 -20
  508. package/dist/esm/components/Forms/FormElement/utils/FormUtils.js.map +1 -1
  509. package/dist/esm/components/Forms/Label/Label.js +1 -2
  510. package/dist/esm/components/Forms/Label/Label.js.map +1 -1
  511. package/dist/esm/components/Forms/Suggestions/Suggestions.js +2 -2
  512. package/dist/esm/components/Forms/Suggestions/Suggestions.js.map +1 -1
  513. package/dist/esm/components/Forms/WarningText/WarningText.js +3 -4
  514. package/dist/esm/components/Forms/WarningText/WarningText.js.map +1 -1
  515. package/dist/esm/components/Forms/WarningText/WarningText.styles.js +6 -7
  516. package/dist/esm/components/Forms/WarningText/WarningText.styles.js.map +1 -1
  517. package/dist/esm/components/GlobalActions/GlobalActions.js +1 -1
  518. package/dist/esm/components/GlobalActions/GlobalActions.js.map +1 -1
  519. package/dist/esm/components/GlobalActions/GlobalActions.styles.js.map +1 -1
  520. package/dist/esm/components/Grid/Grid.js +1 -1
  521. package/dist/esm/components/Grid/Grid.js.map +1 -1
  522. package/dist/esm/components/Header/Actions/Actions.styles.js +1 -2
  523. package/dist/esm/components/Header/Actions/Actions.styles.js.map +1 -1
  524. package/dist/esm/components/Header/Navigation/MenuBar/Bar.js +1 -1
  525. package/dist/esm/components/Header/Navigation/MenuBar/Bar.js.map +1 -1
  526. package/dist/esm/components/Header/Navigation/MenuBar/MenuBar.js.map +1 -1
  527. package/dist/esm/components/Header/Navigation/MenuItem/MenuItem.js +14 -15
  528. package/dist/esm/components/Header/Navigation/MenuItem/MenuItem.js.map +1 -1
  529. package/dist/esm/components/Header/Navigation/Navigation.js +1 -1
  530. package/dist/esm/components/Header/Navigation/Navigation.js.map +1 -1
  531. package/dist/esm/components/Header/Navigation/useSelectionPath.js +1 -1
  532. package/dist/esm/components/Header/Navigation/useSelectionPath.js.map +1 -1
  533. package/dist/esm/components/InlineEditor/InlineEditor.js +5 -5
  534. package/dist/esm/components/InlineEditor/InlineEditor.js.map +1 -1
  535. package/dist/esm/components/Input/Input.js +24 -29
  536. package/dist/esm/components/Input/Input.js.map +1 -1
  537. package/dist/esm/components/Kpi/Kpi.js +4 -4
  538. package/dist/esm/components/Kpi/Kpi.js.map +1 -1
  539. package/dist/esm/components/Link/Link.js +1 -1
  540. package/dist/esm/components/Link/Link.js.map +1 -1
  541. package/dist/esm/components/List/List.js +5 -6
  542. package/dist/esm/components/List/List.js.map +1 -1
  543. package/dist/esm/components/List/utils.js +6 -6
  544. package/dist/esm/components/List/utils.js.map +1 -1
  545. package/dist/esm/components/ListContainer/ListItem/ListItem.js +4 -4
  546. package/dist/esm/components/ListContainer/ListItem/ListItem.js.map +1 -1
  547. package/dist/esm/components/Login/Login.styles.js +1 -1
  548. package/dist/esm/components/Login/Login.styles.js.map +1 -1
  549. package/dist/esm/components/MultiButton/MultiButton.js +1 -1
  550. package/dist/esm/components/MultiButton/MultiButton.js.map +1 -1
  551. package/dist/esm/components/MultiButton/MultiButton.styles.js.map +1 -1
  552. package/dist/esm/components/OverflowTooltip/OverflowTooltip.js +3 -4
  553. package/dist/esm/components/OverflowTooltip/OverflowTooltip.js.map +1 -1
  554. package/dist/esm/components/Pagination/Pagination.js +18 -16
  555. package/dist/esm/components/Pagination/Pagination.js.map +1 -1
  556. package/dist/esm/components/Pagination/Pagination.styles.js +29 -10
  557. package/dist/esm/components/Pagination/Pagination.styles.js.map +1 -1
  558. package/dist/esm/components/Pagination/Select.js +1 -1
  559. package/dist/esm/components/Pagination/Select.js.map +1 -1
  560. package/dist/esm/components/Panel/Panel.js.map +1 -1
  561. package/dist/esm/components/ProgressBar/ProgressBar.js +1 -1
  562. package/dist/esm/components/ProgressBar/ProgressBar.js.map +1 -1
  563. package/dist/esm/components/QueryBuilder/ConfirmationDialog/ConfirmationDialog.js +2 -2
  564. package/dist/esm/components/QueryBuilder/ConfirmationDialog/ConfirmationDialog.js.map +1 -1
  565. package/dist/esm/components/QueryBuilder/Context.js.map +1 -1
  566. package/dist/esm/components/QueryBuilder/QueryBuilder.js +3 -3
  567. package/dist/esm/components/QueryBuilder/QueryBuilder.js.map +1 -1
  568. package/dist/esm/components/QueryBuilder/Rule/Attribute/Attribute.js +4 -6
  569. package/dist/esm/components/QueryBuilder/Rule/Attribute/Attribute.js.map +1 -1
  570. package/dist/esm/components/QueryBuilder/Rule/Rule.js +1 -1
  571. package/dist/esm/components/QueryBuilder/Rule/Rule.js.map +1 -1
  572. package/dist/esm/components/QueryBuilder/Rule/Value/DateTimeValue/DateTimeValue.js +18 -23
  573. package/dist/esm/components/QueryBuilder/Rule/Value/DateTimeValue/DateTimeValue.js.map +1 -1
  574. package/dist/esm/components/QueryBuilder/Rule/Value/NumericValue/NumericValue.js +31 -35
  575. package/dist/esm/components/QueryBuilder/Rule/Value/NumericValue/NumericValue.js.map +1 -1
  576. package/dist/esm/components/QueryBuilder/RuleGroup/RuleGroup.js +10 -12
  577. package/dist/esm/components/QueryBuilder/RuleGroup/RuleGroup.js.map +1 -1
  578. package/dist/esm/components/QueryBuilder/utils/index.js +1 -1
  579. package/dist/esm/components/QueryBuilder/utils/index.js.map +1 -1
  580. package/dist/esm/components/Radio/Radio.js +3 -3
  581. package/dist/esm/components/Radio/Radio.js.map +1 -1
  582. package/dist/esm/components/RadioGroup/RadioGroup.js +11 -16
  583. package/dist/esm/components/RadioGroup/RadioGroup.js.map +1 -1
  584. package/dist/esm/components/ScrollTo/Horizontal/HorizontalScrollListItem/HorizontalScrollListItem.js.map +1 -1
  585. package/dist/esm/components/ScrollTo/Horizontal/ScrollToHorizontal.js +7 -7
  586. package/dist/esm/components/ScrollTo/Horizontal/ScrollToHorizontal.js.map +1 -1
  587. package/dist/esm/components/ScrollTo/Vertical/ScrollToVertical.js +4 -4
  588. package/dist/esm/components/ScrollTo/Vertical/ScrollToVertical.js.map +1 -1
  589. package/dist/esm/components/ScrollTo/Vertical/VerticalScrollListItem/VerticalScrollListItem.js +1 -1
  590. package/dist/esm/components/ScrollTo/Vertical/VerticalScrollListItem/VerticalScrollListItem.js.map +1 -1
  591. package/dist/esm/components/ScrollTo/Vertical/VerticalScrollListItem/VerticalScrollListItem.styles.js +1 -1
  592. package/dist/esm/components/ScrollTo/Vertical/VerticalScrollListItem/VerticalScrollListItem.styles.js.map +1 -1
  593. package/dist/esm/components/ScrollTo/useScrollTo.js +3 -3
  594. package/dist/esm/components/ScrollTo/useScrollTo.js.map +1 -1
  595. package/dist/esm/components/ScrollTo/utils.js +4 -7
  596. package/dist/esm/components/ScrollTo/utils.js.map +1 -1
  597. package/dist/esm/components/Section/Section.js +2 -2
  598. package/dist/esm/components/Section/Section.js.map +1 -1
  599. package/dist/esm/components/SelectionList/SelectionList.js +9 -15
  600. package/dist/esm/components/SelectionList/SelectionList.js.map +1 -1
  601. package/dist/esm/components/Slider/Slider.js +9 -10
  602. package/dist/esm/components/Slider/Slider.js.map +1 -1
  603. package/dist/esm/components/Slider/Slider.styles.js.map +1 -1
  604. package/dist/esm/components/Slider/SliderInput/SliderInput.js +2 -2
  605. package/dist/esm/components/Slider/SliderInput/SliderInput.js.map +1 -1
  606. package/dist/esm/components/Slider/utils.js +2 -2
  607. package/dist/esm/components/Slider/utils.js.map +1 -1
  608. package/dist/esm/components/Snackbar/Snackbar.js.map +1 -1
  609. package/dist/esm/components/Snackbar/SnackbarContent/SnackbarContent.js +2 -2
  610. package/dist/esm/components/Snackbar/SnackbarContent/SnackbarContent.js.map +1 -1
  611. package/dist/esm/components/Stack/Stack.js.map +1 -1
  612. package/dist/esm/components/Switch/Switch.js +1 -1
  613. package/dist/esm/components/Switch/Switch.js.map +1 -1
  614. package/dist/esm/components/Tab/Tab.js.map +1 -1
  615. package/dist/esm/components/Tab/Tab.styles.js +1 -1
  616. package/dist/esm/components/Tab/Tab.styles.js.map +1 -1
  617. package/dist/esm/components/Table/TableBody/TableBody.js +1 -2
  618. package/dist/esm/components/Table/TableBody/TableBody.js.map +1 -1
  619. package/dist/esm/components/Table/TableCell/TableCell.js +3 -4
  620. package/dist/esm/components/Table/TableCell/TableCell.js.map +1 -1
  621. package/dist/esm/components/Table/TableHead/TableHead.js +1 -2
  622. package/dist/esm/components/Table/TableHead/TableHead.js.map +1 -1
  623. package/dist/esm/components/Table/TableHeader/TableHeader.js +3 -4
  624. package/dist/esm/components/Table/TableHeader/TableHeader.js.map +1 -1
  625. package/dist/esm/components/Table/TableRow/TableRow.js +2 -3
  626. package/dist/esm/components/Table/TableRow/TableRow.js.map +1 -1
  627. package/dist/esm/components/Table/hooks/useHeaderGroups.js +1 -2
  628. package/dist/esm/components/Table/hooks/useHeaderGroups.js.map +1 -1
  629. package/dist/esm/components/Table/hooks/useResizeColumns.js +1 -2
  630. package/dist/esm/components/Table/hooks/useResizeColumns.js.map +1 -1
  631. package/dist/esm/components/Table/hooks/useRowExpand.js +2 -5
  632. package/dist/esm/components/Table/hooks/useRowExpand.js.map +1 -1
  633. package/dist/esm/components/Table/hooks/useRowSelection.js +2 -4
  634. package/dist/esm/components/Table/hooks/useRowSelection.js.map +1 -1
  635. package/dist/esm/components/Table/hooks/useSticky.js +5 -7
  636. package/dist/esm/components/Table/hooks/useSticky.js.map +1 -1
  637. package/dist/esm/components/Table/hooks/useTable.js.map +1 -1
  638. package/dist/esm/components/Table/hooks/useTableStyles.js.map +1 -1
  639. package/dist/esm/components/Table/renderers/DropdownColumnCell/DropdownColumnCell.js +1 -1
  640. package/dist/esm/components/Table/renderers/DropdownColumnCell/DropdownColumnCell.js.map +1 -1
  641. package/dist/esm/components/Table/renderers/SwitchColumnCell/SwitchColumnCell.js +1 -1
  642. package/dist/esm/components/Table/renderers/SwitchColumnCell/SwitchColumnCell.js.map +1 -1
  643. package/dist/esm/components/Table/renderers/renderers.js +6 -7
  644. package/dist/esm/components/Table/renderers/renderers.js.map +1 -1
  645. package/dist/esm/components/Table/utils/fallbacks.js +1 -1
  646. package/dist/esm/components/Table/utils/fallbacks.js.map +1 -1
  647. package/dist/esm/components/Tabs/Tabs.js.map +1 -1
  648. package/dist/esm/components/Tabs/Tabs.styles.js.map +1 -1
  649. package/dist/esm/components/Tag/Tag.js +2 -2
  650. package/dist/esm/components/Tag/Tag.js.map +1 -1
  651. package/dist/esm/components/Tag/Tag.styles.js.map +1 -1
  652. package/dist/esm/components/TagsInput/TagsInput.js +16 -24
  653. package/dist/esm/components/TagsInput/TagsInput.js.map +1 -1
  654. package/dist/esm/components/TextArea/TextArea.js +5 -7
  655. package/dist/esm/components/TextArea/TextArea.js.map +1 -1
  656. package/dist/esm/components/TimePicker/Placeholder.js +1 -1
  657. package/dist/esm/components/TimePicker/Placeholder.js.map +1 -1
  658. package/dist/esm/components/TimePicker/TimePicker.js +3 -4
  659. package/dist/esm/components/TimePicker/TimePicker.js.map +1 -1
  660. package/dist/esm/components/ToggleButton/ToggleButton.js +1 -1
  661. package/dist/esm/components/ToggleButton/ToggleButton.js.map +1 -1
  662. package/dist/esm/components/Tooltip/Tooltip.js +1 -1
  663. package/dist/esm/components/Tooltip/Tooltip.js.map +1 -1
  664. package/dist/esm/components/Tooltip/Tooltip.styles.js.map +1 -1
  665. package/dist/esm/components/Typography/Typography.js +1 -1
  666. package/dist/esm/components/Typography/Typography.js.map +1 -1
  667. package/dist/esm/components/VerticalNavigation/Actions/Action.js.map +1 -1
  668. package/dist/esm/components/VerticalNavigation/Actions/Action.styles.js.map +1 -1
  669. package/dist/esm/components/VerticalNavigation/Actions/Actions.js.map +1 -1
  670. package/dist/esm/components/VerticalNavigation/Actions/Actions.styles.js +1 -1
  671. package/dist/esm/components/VerticalNavigation/Actions/Actions.styles.js.map +1 -1
  672. package/dist/esm/components/VerticalNavigation/Header/Header.js +1 -1
  673. package/dist/esm/components/VerticalNavigation/Header/Header.js.map +1 -1
  674. package/dist/esm/components/VerticalNavigation/Navigation/Navigation.js +10 -10
  675. package/dist/esm/components/VerticalNavigation/Navigation/Navigation.js.map +1 -1
  676. package/dist/esm/components/VerticalNavigation/Navigation/Navigation.styles.js +1 -1
  677. package/dist/esm/components/VerticalNavigation/Navigation/Navigation.styles.js.map +1 -1
  678. package/dist/esm/components/VerticalNavigation/NavigationPopup/NavigationPopup.styles.js +2 -2
  679. package/dist/esm/components/VerticalNavigation/NavigationPopup/NavigationPopup.styles.js.map +1 -1
  680. package/dist/esm/components/VerticalNavigation/NavigationPopup/NavigationPopupContainer.js +1 -1
  681. package/dist/esm/components/VerticalNavigation/NavigationPopup/NavigationPopupContainer.js.map +1 -1
  682. package/dist/esm/components/VerticalNavigation/NavigationSlider/NavigationSlider.js +2 -2
  683. package/dist/esm/components/VerticalNavigation/NavigationSlider/NavigationSlider.js.map +1 -1
  684. package/dist/esm/components/VerticalNavigation/NavigationSlider/NavigationSlider.styles.js.map +1 -1
  685. package/dist/esm/components/VerticalNavigation/NavigationSlider/utils/NavigationSlider.utils.js +2 -4
  686. package/dist/esm/components/VerticalNavigation/NavigationSlider/utils/NavigationSlider.utils.js.map +1 -1
  687. package/dist/esm/components/VerticalNavigation/TreeView/IconWrapper/IconWrapper.js +1 -1
  688. package/dist/esm/components/VerticalNavigation/TreeView/IconWrapper/IconWrapper.js.map +1 -1
  689. package/dist/esm/components/VerticalNavigation/TreeView/TreeView.js +5 -16
  690. package/dist/esm/components/VerticalNavigation/TreeView/TreeView.js.map +1 -1
  691. package/dist/esm/components/VerticalNavigation/TreeView/TreeView.styles.js +1 -1
  692. package/dist/esm/components/VerticalNavigation/TreeView/TreeView.styles.js.map +1 -1
  693. package/dist/esm/components/VerticalNavigation/TreeView/TreeViewItem.js +7 -8
  694. package/dist/esm/components/VerticalNavigation/TreeView/TreeViewItem.js.map +1 -1
  695. package/dist/esm/components/VerticalNavigation/TreeView/descendants.js.map +1 -1
  696. package/dist/esm/components/VerticalNavigation/VerticalNavigation.js +2 -2
  697. package/dist/esm/components/VerticalNavigation/VerticalNavigation.js.map +1 -1
  698. package/dist/esm/components/VerticalNavigation/VerticalNavigation.styles.js +1 -1
  699. package/dist/esm/components/VerticalNavigation/VerticalNavigation.styles.js.map +1 -1
  700. package/dist/esm/hocs/withTooltip.js +1 -1
  701. package/dist/esm/hocs/withTooltip.js.map +1 -1
  702. package/dist/esm/hooks/useClickOutside.js +2 -2
  703. package/dist/esm/hooks/useClickOutside.js.map +1 -1
  704. package/dist/esm/hooks/useComputation.js +1 -1
  705. package/dist/esm/hooks/useComputation.js.map +1 -1
  706. package/dist/esm/hooks/useCss.js.map +1 -1
  707. package/dist/esm/hooks/useDefaultProps.js +4 -5
  708. package/dist/esm/hooks/useDefaultProps.js.map +1 -1
  709. package/dist/esm/hooks/useTheme.js +1 -2
  710. package/dist/esm/hooks/useTheme.js.map +1 -1
  711. package/dist/esm/utils/classes.js +2 -2
  712. package/dist/esm/utils/classes.js.map +1 -1
  713. package/dist/esm/utils/keyboardUtils.js +1 -1
  714. package/dist/esm/utils/keyboardUtils.js.map +1 -1
  715. package/dist/esm/utils/setId.js +1 -2
  716. package/dist/esm/utils/setId.js.map +1 -1
  717. package/dist/esm/utils/theme.js +2 -4
  718. package/dist/esm/utils/theme.js.map +1 -1
  719. package/dist/types/index.d.ts +5 -1
  720. package/package.json +5 -5
  721. package/dist/cjs/components/Calendar/CalendarWeekLabels/CalendarWeekLabels.cjs +0 -24
  722. package/dist/cjs/components/Calendar/CalendarWeekLabels/CalendarWeekLabels.cjs.map +0 -1
  723. package/dist/cjs/components/Calendar/CalendarWeekLabels/CalendarWeekLabels.styles.cjs +0 -19
  724. package/dist/cjs/components/Calendar/CalendarWeekLabels/CalendarWeekLabels.styles.cjs.map +0 -1
  725. package/dist/esm/components/Calendar/CalendarWeekLabels/CalendarWeekLabels.js +0 -25
  726. package/dist/esm/components/Calendar/CalendarWeekLabels/CalendarWeekLabels.js.map +0 -1
  727. package/dist/esm/components/Calendar/CalendarWeekLabels/CalendarWeekLabels.styles.js +0 -19
  728. package/dist/esm/components/Calendar/CalendarWeekLabels/CalendarWeekLabels.styles.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationPopupContainer.cjs","sources":["../../../../../src/components/VerticalNavigation/NavigationPopup/NavigationPopupContainer.tsx"],"sourcesContent":["import { ClickAwayListener } from \"@mui/material\";\n\nimport { HvBaseProps } from \"@core/types/generic\";\n\nimport { ExtractNames } from \"@core/utils/classes\";\nimport { HvVerticalNavigation } from \"../VerticalNavigation\";\n\nimport {\n StyledPopper,\n staticClasses,\n useClasses,\n} from \"./NavigationPopup.styles\";\n\nexport { staticClasses as verticalNavigationPopupClasses };\n\nexport type HvVerticalNavigationPopupClasses = ExtractNames<typeof useClasses>;\n\nexport interface NavigationPopupContainerProps extends HvBaseProps {\n anchorEl?: HTMLElement | null;\n onClose?: () => void;\n classes?: HvVerticalNavigationPopupClasses;\n}\n\nexport const NavigationPopupContainer = ({\n anchorEl,\n onClose,\n children,\n classes: classesProp,\n ...others\n}: NavigationPopupContainerProps) => {\n const { classes } = useClasses(classesProp);\n\n const handleClickAway = () => {\n onClose?.();\n };\n\n return (\n <StyledPopper open anchorEl={anchorEl} placement=\"right-start\" {...others}>\n <ClickAwayListener onClickAway={handleClickAway}>\n <div className={classes.container}>\n <HvVerticalNavigation open useIcons>\n {children}\n </HvVerticalNavigation>\n </div>\n </ClickAwayListener>\n </StyledPopper>\n );\n};\n"],"names":["NavigationPopupContainer","anchorEl","onClose","children","classes","classesProp","others","useClasses","handleClickAway","jsx","StyledPopper","ClickAwayListener","container","HvVerticalNavigation"],"mappings":";;;;;;AAuBO,MAAMA,2BAA2BA,CAAC;AAAA,EACvCC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC,SAASC;AAAAA,EACT,GAAGC;AAC0B,MAAM;AAC7B,QAAA;AAAA,IAAEF;AAAAA,EAAAA,IAAYG,uBAAAA,WAAWF,WAAW;AAE1C,QAAMG,kBAAkBA,MAAM;AAClB;AAAA,EAAA;AAIV,SAAAC,2BAAAA,IAACC,uBAAAA,cAAa,EAAA,MAAI,MAAC,UAAoB,WAAU,eAAc,GAAIJ,QACjE,UAACG,+BAAAE,SAAAA,mBAAA,EAAkB,aAAaH,iBAC9B,UAACC,2BAAAA,IAAA,OAAA,EAAI,WAAWL,QAAQQ,WACtB,UAAAH,2BAAAA,IAACI,mBAAAA,sBAAqB,EAAA,MAAI,MAAC,UAAQ,MAChCV,SAAAA,CACH,EACF,CAAA,EAAA,CACF,EACF,CAAA;AAEJ;;;"}
1
+ {"version":3,"file":"NavigationPopupContainer.cjs","sources":["../../../../../src/components/VerticalNavigation/NavigationPopup/NavigationPopupContainer.tsx"],"sourcesContent":["import { ClickAwayListener } from \"@mui/material\";\n\nimport { HvBaseProps } from \"@core/types/generic\";\n\nimport { ExtractNames } from \"@core/utils/classes\";\n\nimport { HvVerticalNavigation } from \"../VerticalNavigation\";\n\nimport {\n StyledPopper,\n staticClasses,\n useClasses,\n} from \"./NavigationPopup.styles\";\n\nexport { staticClasses as verticalNavigationPopupClasses };\n\nexport type HvVerticalNavigationPopupClasses = ExtractNames<typeof useClasses>;\n\nexport interface NavigationPopupContainerProps extends HvBaseProps {\n anchorEl?: HTMLElement | null;\n onClose?: () => void;\n classes?: HvVerticalNavigationPopupClasses;\n}\n\nexport const NavigationPopupContainer = ({\n anchorEl,\n onClose,\n children,\n classes: classesProp,\n ...others\n}: NavigationPopupContainerProps) => {\n const { classes } = useClasses(classesProp);\n\n const handleClickAway = () => {\n onClose?.();\n };\n\n return (\n <StyledPopper open anchorEl={anchorEl} placement=\"right-start\" {...others}>\n <ClickAwayListener onClickAway={handleClickAway}>\n <div className={classes.container}>\n <HvVerticalNavigation open useIcons>\n {children}\n </HvVerticalNavigation>\n </div>\n </ClickAwayListener>\n </StyledPopper>\n );\n};\n"],"names":["NavigationPopupContainer","anchorEl","onClose","children","classes","classesProp","others","useClasses","handleClickAway","jsx","StyledPopper","ClickAwayListener","container","HvVerticalNavigation"],"mappings":";;;;;;AAwBO,MAAMA,2BAA2BA,CAAC;AAAA,EACvCC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC,SAASC;AAAAA,EACT,GAAGC;AAC0B,MAAM;AAC7B,QAAA;AAAA,IAAEF;AAAAA,EAAAA,IAAYG,uBAAAA,WAAWF,WAAW;AAE1C,QAAMG,kBAAkBA,MAAM;AAClB;EAAA;AAIV,SAAAC,2BAAAA,IAACC,uBAAAA,cAAa,EAAA,MAAI,MAAC,UAAoB,WAAU,eAAc,GAAIJ,QACjE,UAACG,+BAAAE,SAAAA,mBAAA,EAAkB,aAAaH,iBAC9B,UAACC,2BAAAA,IAAA,OAAA,EAAI,WAAWL,QAAQQ,WACtB,UAAAH,2BAAAA,IAACI,mBAAAA,sBAAqB,EAAA,MAAI,MAAC,UAAQ,MAChCV,SAAAA,CACH,EACF,CAAA,EAAA,CACF,EACF,CAAA;AAEJ;;;"}
@@ -26,9 +26,9 @@ const HvVerticalNavigationSlider = (props) => {
26
26
  selected: classes.listItemSelected,
27
27
  focus: classes.listItemFocus
28
28
  }, onClick: (event) => {
29
- onNavigateToTarget == null ? void 0 : onNavigateToTarget(event, item);
29
+ onNavigateToTarget?.(event, item);
30
30
  }, "aria-label": item.label, "aria-current": selected === item.id ? item.href ? "page" : true : void 0, selected: selected === item.id, startAdornment: item.icon ? /* @__PURE__ */ jsxRuntime.jsx("div", { children: item.icon }) : void 0, endAdornment: item.data && item.data.length > 0 ? /* @__PURE__ */ jsxRuntime.jsx(Button.HvButton, { icon: true, onClick: (event) => {
31
- onNavigateToChild == null ? void 0 : onNavigateToChild(event, item);
31
+ onNavigateToChild?.(event, item);
32
32
  }, "aria-label": forwardButtonAriaLabel, children: /* @__PURE__ */ jsxRuntime.jsx(uikitReactIcons.DropRightXS, {}) }) : void 0, children: /* @__PURE__ */ jsxRuntime.jsx(OverflowTooltip.HvOverflowTooltip, { data: item.label }) }, item.id)) });
33
33
  };
34
34
  exports.verticalNavigationSliderClasses = NavigationSlider_styles.staticClasses;
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationSlider.cjs","sources":["../../../../../src/components/VerticalNavigation/NavigationSlider/NavigationSlider.tsx"],"sourcesContent":["import { DropRightXS } from \"@hitachivantara/uikit-react-icons\";\n\nimport { HvButton } from \"@core/components/Button\";\nimport { HvListContainer, HvListItem } from \"@core/components/ListContainer\";\nimport { HvOverflowTooltip } from \"@core/components/OverflowTooltip\";\n\nimport { ExtractNames } from \"@core/utils/classes\";\nimport { useDefaultProps } from \"@core/hooks\";\nimport { NavigationData } from \"../VerticalNavigationContext\";\n\nimport { staticClasses, useClasses } from \"./NavigationSlider.styles\";\n\nexport { staticClasses as verticalNavigationSliderClasses };\n\nexport type HvVerticalNavigationSliderClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvVerticalNavigationSliderProps {\n /**\n * Id to be applied to the root node of the panel.\n */\n id?: string;\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes?: HvVerticalNavigationSliderClasses;\n /**\n * An array containing the data for each menu item.\n *\n * id - the id to be applied to the root element.\n * label - the label to be rendered on the menu item.\n * icon - the icon react element\n * data - sub-menu items\n * href - the url used for navigation.\n * target - the behavior when opening an url.\n */\n data?: NavigationData[];\n /**\n * The selected item id.\n */\n selected?: string;\n /**\n * Triggered when the item is clicked.\n */\n onNavigateToTarget?: (\n event: React.MouseEvent<HTMLLIElement>,\n item: NavigationData\n ) => void;\n /**\n * Triggered when the navigate to child button is clicked.\n */\n onNavigateToChild?: (\n event: React.MouseEvent<HTMLButtonElement>,\n item: NavigationData\n ) => void;\n /** Aria label to apply to the navigate to submenu button on the list items. */\n forwardButtonAriaLabel?: string;\n}\n\nexport const HvVerticalNavigationSlider = (\n props: HvVerticalNavigationSliderProps\n) => {\n const {\n id,\n classes: classesProp,\n data,\n selected,\n onNavigateToTarget,\n onNavigateToChild,\n forwardButtonAriaLabel = \"Navigate to submenu\",\n } = useDefaultProps(\"HvVerticalNavigationSlider\", props);\n const { classes } = useClasses(classesProp);\n\n return (\n <HvListContainer interactive id={id}>\n {data &&\n data.map((item) => (\n <HvListItem\n key={item.id}\n classes={{\n root: classes.root,\n selected: classes.listItemSelected,\n focus: classes.listItemFocus,\n }}\n onClick={(event) => {\n onNavigateToTarget?.(event, item);\n }}\n aria-label={item.label}\n aria-current={\n selected === item.id ? (item.href ? \"page\" : true) : undefined\n }\n selected={selected === item.id}\n startAdornment={item.icon ? <div>{item.icon}</div> : undefined}\n endAdornment={\n item.data && item.data.length > 0 ? (\n <HvButton\n icon\n onClick={(event) => {\n onNavigateToChild?.(event, item);\n }}\n aria-label={forwardButtonAriaLabel}\n >\n <DropRightXS />\n </HvButton>\n ) : undefined\n }\n >\n <HvOverflowTooltip data={item.label} />\n </HvListItem>\n ))}\n </HvListContainer>\n );\n};\n"],"names":["HvVerticalNavigationSlider","props","id","classes","classesProp","data","selected","onNavigateToTarget","onNavigateToChild","forwardButtonAriaLabel","useDefaultProps","useClasses","jsx","HvListContainer","map","item","HvListItem","root","listItemSelected","focus","listItemFocus","event","label","href","undefined","icon","length","HvButton","DropRightXS","HvOverflowTooltip"],"mappings":";;;;;;;;;;AA0DaA,MAAAA,6BAA6BA,CACxCC,UACG;AACG,QAAA;AAAA,IACJC;AAAAA,IACAC,SAASC;AAAAA,IACTC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC,yBAAyB;AAAA,EAAA,IACvBC,gBAAgB,gBAAA,8BAA8BT,KAAK;AACjD,QAAA;AAAA,IAAEE;AAAAA,EAAAA,IAAYQ,wBAAAA,WAAWP,WAAW;AAGxC,SAAAQ,2BAAAA,IAACC,cAAAA,iBAAgB,EAAA,aAAW,MAAC,IAC1BR,UACCA,QAAAA,KAAKS,IAAKC,CAAAA,SACPH,2BAAAA,IAAAI,SAAAA,YAAA,EAEC,SAAS;AAAA,IACPC,MAAMd,QAAQc;AAAAA,IACdX,UAAUH,QAAQe;AAAAA,IAClBC,OAAOhB,QAAQiB;AAAAA,EAAAA,GAEjB,SAAUC,CAAU,UAAA;AAClBd,6DAAqBc,OAAON;AAAAA,EAAI,GAElC,cAAYA,KAAKO,OACjB,gBACEhB,aAAaS,KAAKb,KAAMa,KAAKQ,OAAO,SAAS,OAAQC,QAEvD,UAAUlB,aAAaS,KAAKb,IAC5B,gBAAgBa,KAAKU,OAAOb,2BAAAA,IAAC,SAAKG,UAAKU,KAAAA,KAAK,CAAA,IAASD,QACrD,cACET,KAAKV,QAAQU,KAAKV,KAAKqB,SAAS,IAC9Bd,2BAAAA,IAACe,mBACC,MAAI,MACJ,SAAUN,CAAU,UAAA;AAClBb,2DAAoBa,OAAON;AAAAA,EAAI,GAEjC,cAAYN,wBAEZ,UAACG,2BAAA,IAAAgB,6BAAA,CAAA,CAAW,EACd,CAAA,IACEJ,QAGN,UAACZ,2BAAA,IAAAiB,mCAAA,EAAkB,MAAMd,KAAKO,MAAAA,CAAM,KA7B/BP,KAAKb,EA8BZ,CACD,EACL,CAAA;AAEJ;;;"}
1
+ {"version":3,"file":"NavigationSlider.cjs","sources":["../../../../../src/components/VerticalNavigation/NavigationSlider/NavigationSlider.tsx"],"sourcesContent":["import { DropRightXS } from \"@hitachivantara/uikit-react-icons\";\n\nimport { HvButton } from \"@core/components/Button\";\nimport { HvListContainer, HvListItem } from \"@core/components/ListContainer\";\nimport { HvOverflowTooltip } from \"@core/components/OverflowTooltip\";\n\nimport { ExtractNames } from \"@core/utils/classes\";\nimport { useDefaultProps } from \"@core/hooks\";\n\nimport { NavigationData } from \"../VerticalNavigationContext\";\n\nimport { staticClasses, useClasses } from \"./NavigationSlider.styles\";\n\nexport { staticClasses as verticalNavigationSliderClasses };\n\nexport type HvVerticalNavigationSliderClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvVerticalNavigationSliderProps {\n /**\n * Id to be applied to the root node of the panel.\n */\n id?: string;\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes?: HvVerticalNavigationSliderClasses;\n /**\n * An array containing the data for each menu item.\n *\n * id - the id to be applied to the root element.\n * label - the label to be rendered on the menu item.\n * icon - the icon react element\n * data - sub-menu items\n * href - the url used for navigation.\n * target - the behavior when opening an url.\n */\n data?: NavigationData[];\n /**\n * The selected item id.\n */\n selected?: string;\n /**\n * Triggered when the item is clicked.\n */\n onNavigateToTarget?: (\n event: React.MouseEvent<HTMLLIElement>,\n item: NavigationData\n ) => void;\n /**\n * Triggered when the navigate to child button is clicked.\n */\n onNavigateToChild?: (\n event: React.MouseEvent<HTMLButtonElement>,\n item: NavigationData\n ) => void;\n /** Aria label to apply to the navigate to submenu button on the list items. */\n forwardButtonAriaLabel?: string;\n}\n\nexport const HvVerticalNavigationSlider = (\n props: HvVerticalNavigationSliderProps\n) => {\n const {\n id,\n classes: classesProp,\n data,\n selected,\n onNavigateToTarget,\n onNavigateToChild,\n forwardButtonAriaLabel = \"Navigate to submenu\",\n } = useDefaultProps(\"HvVerticalNavigationSlider\", props);\n const { classes } = useClasses(classesProp);\n\n return (\n <HvListContainer interactive id={id}>\n {data &&\n data.map((item) => (\n <HvListItem\n key={item.id}\n classes={{\n root: classes.root,\n selected: classes.listItemSelected,\n focus: classes.listItemFocus,\n }}\n onClick={(event) => {\n onNavigateToTarget?.(event, item);\n }}\n aria-label={item.label}\n aria-current={\n selected === item.id ? (item.href ? \"page\" : true) : undefined\n }\n selected={selected === item.id}\n startAdornment={item.icon ? <div>{item.icon}</div> : undefined}\n endAdornment={\n item.data && item.data.length > 0 ? (\n <HvButton\n icon\n onClick={(event) => {\n onNavigateToChild?.(event, item);\n }}\n aria-label={forwardButtonAriaLabel}\n >\n <DropRightXS />\n </HvButton>\n ) : undefined\n }\n >\n <HvOverflowTooltip data={item.label} />\n </HvListItem>\n ))}\n </HvListContainer>\n );\n};\n"],"names":["HvVerticalNavigationSlider","props","id","classes","classesProp","data","selected","onNavigateToTarget","onNavigateToChild","forwardButtonAriaLabel","useDefaultProps","useClasses","jsx","HvListContainer","map","item","HvListItem","root","listItemSelected","focus","listItemFocus","event","label","href","undefined","icon","length","HvButton","DropRightXS","HvOverflowTooltip"],"mappings":";;;;;;;;;;AA2DaA,MAAAA,6BAA6BA,CACxCC,UACG;AACG,QAAA;AAAA,IACJC;AAAAA,IACAC,SAASC;AAAAA,IACTC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC,yBAAyB;AAAA,EAAA,IACvBC,gBAAgB,gBAAA,8BAA8BT,KAAK;AACjD,QAAA;AAAA,IAAEE;AAAAA,EAAAA,IAAYQ,wBAAAA,WAAWP,WAAW;AAGxC,SAAAQ,2BAAAA,IAACC,cAAAA,iBAAgB,EAAA,aAAW,MAAC,IAC1BR,UACCA,QAAAA,KAAKS,IAAKC,CAAAA,SACPH,2BAAAA,IAAAI,SAAAA,YAAA,EAEC,SAAS;AAAA,IACPC,MAAMd,QAAQc;AAAAA,IACdX,UAAUH,QAAQe;AAAAA,IAClBC,OAAOhB,QAAQiB;AAAAA,EAAAA,GAEjB,SAAUC,CAAU,UAAA;AAClBd,yBAAqBc,OAAON,IAAI;AAAA,EAAA,GAElC,cAAYA,KAAKO,OACjB,gBACEhB,aAAaS,KAAKb,KAAMa,KAAKQ,OAAO,SAAS,OAAQC,QAEvD,UAAUlB,aAAaS,KAAKb,IAC5B,gBAAgBa,KAAKU,OAAOb,2BAAAA,IAAC,SAAKG,UAAKU,KAAAA,KAAK,CAAA,IAASD,QACrD,cACET,KAAKV,QAAQU,KAAKV,KAAKqB,SAAS,IAC9Bd,2BAAAA,IAACe,mBACC,MAAI,MACJ,SAAUN,CAAU,UAAA;AAClBb,wBAAoBa,OAAON,IAAI;AAAA,EAAA,GAEjC,cAAYN,wBAEZ,UAACG,2BAAA,IAAAgB,6BAAA,CAAA,CAAW,EACd,CAAA,IACEJ,QAGN,UAACZ,2BAAA,IAAAiB,mCAAA,EAAkB,MAAMd,KAAKO,MAAAA,CAAM,KA7B/BP,KAAKb,EA8BZ,CACD,EACL,CAAA;AAEJ;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationSlider.styles.cjs","sources":["../../../../../src/components/VerticalNavigation/NavigationSlider/NavigationSlider.styles.tsx"],"sourcesContent":["import { theme } from \"@hitachivantara/uikit-styles\";\nimport { createClasses } from \"@core/utils/classes\";\n\nexport const { staticClasses, useClasses } = createClasses(\n \"HvVerticalNavigationSlider\",\n {\n root: {\n display: \"flex\",\n alignItems: \"center\",\n borderLeft: `4px solid transparent`,\n minHeight: \"48px\",\n marginBottom: \"8px\",\n \"& > button\": {\n marginLeft: \"auto\",\n },\n },\n listItemSelected: {\n background: theme.colors.atmo3,\n borderLeft: `4px solid ${theme.colors.secondary}`,\n \"& *\": {\n background: theme.colors.atmo3,\n },\n },\n listItemFocus: {\n background: theme.colors.atmo3,\n \"& *\": {\n background: theme.colors.atmo3,\n },\n },\n }\n);\n"],"names":["staticClasses","useClasses","createClasses","root","display","alignItems","borderLeft","minHeight","marginBottom","marginLeft","listItemSelected","background","theme","colors","atmo3","secondary","listItemFocus"],"mappings":";;;;AAGa,MAAA;AAAA,EAAEA;AAAAA,EAAeC;AAAW,IAAIC,QAAAA,cAC3C,8BACA;AAAA,EACEC,MAAM;AAAA,IACJC,SAAS;AAAA,IACTC,YAAY;AAAA,IACZC,YAAa;AAAA,IACbC,WAAW;AAAA,IACXC,cAAc;AAAA,IACd,cAAc;AAAA,MACZC,YAAY;AAAA,IACd;AAAA,EACF;AAAA,EACAC,kBAAkB;AAAA,IAChBC,YAAYC,YAAAA,MAAMC,OAAOC;AAAAA,IACzBR,YAAa,aAAYM,YAAMC,MAAAA,OAAOE,SAAU;AAAA,IAChD,OAAO;AAAA,MACLJ,YAAYC,YAAAA,MAAMC,OAAOC;AAAAA,IAC3B;AAAA,EACF;AAAA,EACAE,eAAe;AAAA,IACbL,YAAYC,YAAAA,MAAMC,OAAOC;AAAAA,IACzB,OAAO;AAAA,MACLH,YAAYC,YAAAA,MAAMC,OAAOC;AAAAA,IAC3B;AAAA,EACF;AACF,CACF;;;"}
1
+ {"version":3,"file":"NavigationSlider.styles.cjs","sources":["../../../../../src/components/VerticalNavigation/NavigationSlider/NavigationSlider.styles.tsx"],"sourcesContent":["import { theme } from \"@hitachivantara/uikit-styles\";\n\nimport { createClasses } from \"@core/utils/classes\";\n\nexport const { staticClasses, useClasses } = createClasses(\n \"HvVerticalNavigationSlider\",\n {\n root: {\n display: \"flex\",\n alignItems: \"center\",\n borderLeft: `4px solid transparent`,\n minHeight: \"48px\",\n marginBottom: \"8px\",\n \"& > button\": {\n marginLeft: \"auto\",\n },\n },\n listItemSelected: {\n background: theme.colors.atmo3,\n borderLeft: `4px solid ${theme.colors.secondary}`,\n \"& *\": {\n background: theme.colors.atmo3,\n },\n },\n listItemFocus: {\n background: theme.colors.atmo3,\n \"& *\": {\n background: theme.colors.atmo3,\n },\n },\n }\n);\n"],"names":["staticClasses","useClasses","createClasses","root","display","alignItems","borderLeft","minHeight","marginBottom","marginLeft","listItemSelected","background","theme","colors","atmo3","secondary","listItemFocus"],"mappings":";;;;AAIa,MAAA;AAAA,EAAEA;AAAAA,EAAeC;AAAW,IAAIC,QAAAA,cAC3C,8BACA;AAAA,EACEC,MAAM;AAAA,IACJC,SAAS;AAAA,IACTC,YAAY;AAAA,IACZC,YAAa;AAAA,IACbC,WAAW;AAAA,IACXC,cAAc;AAAA,IACd,cAAc;AAAA,MACZC,YAAY;AAAA,IACd;AAAA,EACF;AAAA,EACAC,kBAAkB;AAAA,IAChBC,YAAYC,YAAAA,MAAMC,OAAOC;AAAAA,IACzBR,YAAa,aAAYM,YAAMC,MAAAA,OAAOE,SAAU;AAAA,IAChD,OAAO;AAAA,MACLJ,YAAYC,YAAAA,MAAMC,OAAOC;AAAAA,IAC3B;AAAA,EACF;AAAA,EACAE,eAAe;AAAA,IACbL,YAAYC,YAAAA,MAAMC,OAAOC;AAAAA,IACzB,OAAO;AAAA,MACLH,YAAYC,YAAAA,MAAMC,OAAOC;AAAAA,IAC3B;AAAA,EACF;AACF,CACF;;;"}
@@ -15,14 +15,12 @@ const getNavigationItemById = (navigationItems, navigationItemId) => {
15
15
  return searchInCollection(navigationItems, "data", "id", navigationItemId);
16
16
  };
17
17
  const getParentItemById = (navigationItems, navigationItemId) => {
18
- var _a;
19
- const parentId = (_a = getNavigationItemById(navigationItems, navigationItemId)) == null ? void 0 : _a.parent;
18
+ const parentId = getNavigationItemById(navigationItems, navigationItemId)?.parent;
20
19
  return getNavigationItemById(navigationItems, parentId);
21
20
  };
22
21
  const fillDataWithParentId = (navigationItems, parentItemId) => {
23
22
  return navigationItems.map((item) => {
24
- var _a;
25
- if (((_a = item == null ? void 0 : item.data) == null ? void 0 : _a.length) > 0) {
23
+ if (item?.data?.length > 0) {
26
24
  return {
27
25
  ...item,
28
26
  parent: parentItemId,
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationSlider.utils.cjs","sources":["../../../../../../src/components/VerticalNavigation/NavigationSlider/utils/NavigationSlider.utils.tsx"],"sourcesContent":["/**\n * Recursively searches in a collection the first element where the property matches the specified value.\n *\n * @param collection - Collection where the search will be performed\n * @param childrenPropName - The children property name where the recursive search will be performed\n * @param propName - The name of the property to be used on the search\n * @param propValue - The value of the property to be used on the search\n * @returns The element that matches the requirement or null if none is found\n */\nconst searchInCollection = (\n collection,\n childrenPropName,\n propName,\n propValue\n) => {\n if (collection[propName] === propValue) {\n return collection;\n }\n\n const items = collection[childrenPropName] || collection;\n\n let foundItem = null;\n for (let index = 0; foundItem === null && index < items.length; index += 1) {\n foundItem = searchInCollection(\n items[index],\n childrenPropName,\n propName,\n propValue\n );\n }\n return foundItem;\n};\n\n/**\n * Returns the navigation item with the specified id.\n *\n * @param navigationItems - The collection of navigation items.\n * @param navigationItemId - The id to be used on the search\n * @returns The navigation item with the specified id.\n */\nconst getNavigationItemById = (navigationItems, navigationItemId) => {\n return searchInCollection(navigationItems, \"data\", \"id\", navigationItemId);\n};\n\n/**\n * Returns the parent item for the received item id.\n *\n * @param navigationItems - The collection of navigation items.\n * @param navigationItemId - The id to be used on the search\n * @returns The parent navigation item.\n */\nconst getParentItemById = (navigationItems, navigationItemId) => {\n const parentId = getNavigationItemById(\n navigationItems,\n navigationItemId\n )?.parent;\n return getNavigationItemById(navigationItems, parentId);\n};\n\n/**\n * Fills the data structure with the parent id on each one of the nodes.\n *\n * @param navigationItems - The collection of navigation items.\n * @param parentItemId - The parent id to be added.\n * @returns The structure now filled with the parent id.\n */\nconst fillDataWithParentId = (navigationItems, parentItemId?) => {\n return navigationItems.map((item) => {\n if (item?.data?.length > 0) {\n return {\n ...item,\n parent: parentItemId,\n data: fillDataWithParentId(item.data, item.id),\n };\n }\n return { ...item, parent: parentItemId };\n });\n};\n\nexport { getNavigationItemById, getParentItemById, fillDataWithParentId };\n"],"names":["searchInCollection","collection","childrenPropName","propName","propValue","items","foundItem","index","length","getNavigationItemById","navigationItems","navigationItemId","getParentItemById","parentId","parent","fillDataWithParentId","parentItemId","map","item","data","id"],"mappings":";;AASA,MAAMA,qBAAqBA,CACzBC,YACAC,kBACAC,UACAC,cACG;AACCH,MAAAA,WAAWE,QAAQ,MAAMC,WAAW;AAC/BH,WAAAA;AAAAA,EACT;AAEMI,QAAAA,QAAQJ,WAAWC,gBAAgB,KAAKD;AAE9C,MAAIK,YAAY;AACPC,WAAAA,QAAQ,GAAGD,cAAc,QAAQC,QAAQF,MAAMG,QAAQD,SAAS,GAAG;AAC1ED,gBAAYN,mBACVK,MAAME,KAAK,GACXL,kBACAC,UACAC,SACF;AAAA,EACF;AACOE,SAAAA;AACT;AASMG,MAAAA,wBAAwBA,CAACC,iBAAiBC,qBAAqB;AACnE,SAAOX,mBAAmBU,iBAAiB,QAAQ,MAAMC,gBAAgB;AAC3E;AASMC,MAAAA,oBAAoBA,CAACF,iBAAiBC,qBAAqB;;AAC/D,QAAME,YAAWJ,2BACfC,iBACAC,gBACF,MAHiBF,mBAGdK;AACIL,SAAAA,sBAAsBC,iBAAiBG,QAAQ;AACxD;AASME,MAAAA,uBAAuBA,CAACL,iBAAiBM,iBAAkB;AACxDN,SAAAA,gBAAgBO,IAAKC,CAAS,SAAA;;AAC/BA,UAAAA,kCAAMC,SAAND,mBAAYV,UAAS,GAAG;AACnB,aAAA;AAAA,QACL,GAAGU;AAAAA,QACHJ,QAAQE;AAAAA,QACRG,MAAMJ,qBAAqBG,KAAKC,MAAMD,KAAKE,EAAE;AAAA,MAAA;AAAA,IAEjD;AACO,WAAA;AAAA,MAAE,GAAGF;AAAAA,MAAMJ,QAAQE;AAAAA,IAAAA;AAAAA,EAAa,CACxC;AACH;;;;"}
1
+ {"version":3,"file":"NavigationSlider.utils.cjs","sources":["../../../../../../src/components/VerticalNavigation/NavigationSlider/utils/NavigationSlider.utils.tsx"],"sourcesContent":["/**\n * Recursively searches in a collection the first element where the property matches the specified value.\n *\n * @param collection - Collection where the search will be performed\n * @param childrenPropName - The children property name where the recursive search will be performed\n * @param propName - The name of the property to be used on the search\n * @param propValue - The value of the property to be used on the search\n * @returns The element that matches the requirement or null if none is found\n */\nconst searchInCollection = (\n collection,\n childrenPropName,\n propName,\n propValue\n) => {\n if (collection[propName] === propValue) {\n return collection;\n }\n\n const items = collection[childrenPropName] || collection;\n\n let foundItem = null;\n for (let index = 0; foundItem === null && index < items.length; index += 1) {\n foundItem = searchInCollection(\n items[index],\n childrenPropName,\n propName,\n propValue\n );\n }\n return foundItem;\n};\n\n/**\n * Returns the navigation item with the specified id.\n *\n * @param navigationItems - The collection of navigation items.\n * @param navigationItemId - The id to be used on the search\n * @returns The navigation item with the specified id.\n */\nconst getNavigationItemById = (navigationItems, navigationItemId) => {\n return searchInCollection(navigationItems, \"data\", \"id\", navigationItemId);\n};\n\n/**\n * Returns the parent item for the received item id.\n *\n * @param navigationItems - The collection of navigation items.\n * @param navigationItemId - The id to be used on the search\n * @returns The parent navigation item.\n */\nconst getParentItemById = (navigationItems, navigationItemId) => {\n const parentId = getNavigationItemById(\n navigationItems,\n navigationItemId\n )?.parent;\n return getNavigationItemById(navigationItems, parentId);\n};\n\n/**\n * Fills the data structure with the parent id on each one of the nodes.\n *\n * @param navigationItems - The collection of navigation items.\n * @param parentItemId - The parent id to be added.\n * @returns The structure now filled with the parent id.\n */\nconst fillDataWithParentId = (navigationItems, parentItemId?) => {\n return navigationItems.map((item) => {\n if (item?.data?.length > 0) {\n return {\n ...item,\n parent: parentItemId,\n data: fillDataWithParentId(item.data, item.id),\n };\n }\n return { ...item, parent: parentItemId };\n });\n};\n\nexport { getNavigationItemById, getParentItemById, fillDataWithParentId };\n"],"names":["searchInCollection","collection","childrenPropName","propName","propValue","items","foundItem","index","length","getNavigationItemById","navigationItems","navigationItemId","getParentItemById","parentId","parent","fillDataWithParentId","parentItemId","map","item","data","id"],"mappings":";;AASA,MAAMA,qBAAqBA,CACzBC,YACAC,kBACAC,UACAC,cACG;AACCH,MAAAA,WAAWE,QAAQ,MAAMC,WAAW;AAC/BH,WAAAA;AAAAA,EACT;AAEMI,QAAAA,QAAQJ,WAAWC,gBAAgB,KAAKD;AAE9C,MAAIK,YAAY;AACPC,WAAAA,QAAQ,GAAGD,cAAc,QAAQC,QAAQF,MAAMG,QAAQD,SAAS,GAAG;AAC1ED,gBAAYN,mBACVK,MAAME,KAAK,GACXL,kBACAC,UACAC,SACF;AAAA,EACF;AACOE,SAAAA;AACT;AASMG,MAAAA,wBAAwBA,CAACC,iBAAiBC,qBAAqB;AACnE,SAAOX,mBAAmBU,iBAAiB,QAAQ,MAAMC,gBAAgB;AAC3E;AASMC,MAAAA,oBAAoBA,CAACF,iBAAiBC,qBAAqB;AAC/D,QAAME,WAAWJ,sBACfC,iBACAC,gBACF,GAAGG;AACIL,SAAAA,sBAAsBC,iBAAiBG,QAAQ;AACxD;AASME,MAAAA,uBAAuBA,CAACL,iBAAiBM,iBAAkB;AACxDN,SAAAA,gBAAgBO,IAAKC,CAAS,SAAA;AAC/BA,QAAAA,MAAMC,MAAMX,SAAS,GAAG;AACnB,aAAA;AAAA,QACL,GAAGU;AAAAA,QACHJ,QAAQE;AAAAA,QACRG,MAAMJ,qBAAqBG,KAAKC,MAAMD,KAAKE,EAAE;AAAA,MAAA;AAAA,IAEjD;AACO,WAAA;AAAA,MAAE,GAAGF;AAAAA,MAAMJ,QAAQE;AAAAA,IAAAA;AAAAA,EAAa,CACxC;AACH;;;;"}
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("@emotion/react/jsx-runtime");
4
- const uikitReactIcons = require("@hitachivantara/uikit-react-icons");
5
4
  const React = require("react");
5
+ const uikitReactIcons = require("@hitachivantara/uikit-react-icons");
6
6
  const VerticalNavigationContext = require("../../VerticalNavigationContext.cjs");
7
7
  const IconWrapper_styles = require("./IconWrapper.styles.cjs");
8
8
  const TooltipWrapper = require("../TooltipWrapper/TooltipWrapper.cjs");
@@ -1 +1 @@
1
- {"version":3,"file":"IconWrapper.cjs","sources":["../../../../../../src/components/VerticalNavigation/TreeView/IconWrapper/IconWrapper.tsx"],"sourcesContent":["import { Forwards } from \"@hitachivantara/uikit-react-icons\";\n\nimport { useContext } from \"react\";\n\nimport { HvAvatar } from \"@core/components/Avatar\";\n\nimport { VerticalNavigationContext } from \"../../VerticalNavigationContext\";\nimport { TooltipWrapper } from \"../TooltipWrapper\";\nimport { SpacerDiv, StyledIconsContainer } from \"./IconWrapper.styles\";\n\nexport const IconWrapper = ({\n icon,\n label,\n hasChildren,\n showAvatar,\n isOpen,\n disableTooltip,\n}) => {\n const { hasAnyChildWithData } = useContext(VerticalNavigationContext);\n return (\n <TooltipWrapper\n showTooltip={!hasChildren && !isOpen && !disableTooltip}\n label={label}\n >\n <StyledIconsContainer hasAnyChildWithData={hasAnyChildWithData}>\n {showAvatar ? (\n <HvAvatar\n variant=\"square\"\n size=\"xs\"\n backgroundColor=\"secondary_80\"\n style={{ fontSize: \"15px\" }}\n >\n {label.substring(0, 1)}\n </HvAvatar>\n ) : (\n icon\n )}\n\n {hasChildren && !isOpen ? (\n <Forwards iconSize=\"XS\" />\n ) : (\n hasAnyChildWithData && !isOpen && <SpacerDiv />\n )}\n </StyledIconsContainer>\n </TooltipWrapper>\n );\n};\n"],"names":["IconWrapper","icon","label","hasChildren","showAvatar","isOpen","disableTooltip","hasAnyChildWithData","useContext","VerticalNavigationContext","jsx","TooltipWrapper","jsxs","StyledIconsContainer","HvAvatar","fontSize","substring","Forwards","SpacerDiv"],"mappings":";;;;;;;;;AAUO,MAAMA,cAAcA,CAAC;AAAA,EAC1BC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AACF,MAAM;AACE,QAAA;AAAA,IAAEC;AAAAA,EAAAA,IAAwBC,MAAAA,WAAWC,0BAAAA,yBAAyB;AACpE,SACGC,2BAAAA,IAAAC,eAAAA,gBAAA,EACC,aAAa,CAACR,eAAe,CAACE,UAAU,CAACC,gBACzC,OAEA,UAACM,2BAAAA,KAAAC,mBAAAA,sBAAA,EAAqB,qBACnBT,UAAAA;AAAAA,IACC,aAAAM,2BAAA,IAACI,mBACC,SAAQ,UACR,MAAK,MACL,iBAAgB,gBAChB,OAAO;AAAA,MAAEC,UAAU;AAAA,IAAA,GAElBb,UAAMc,MAAAA,UAAU,GAAG,CAAC,EACvB,CAAA,IAEAf;AAAAA,IAGDE,eAAe,CAACE,SACfK,2BAAA,IAACO,gBAAS,UAAA,EAAA,UAAS,MAAI,IAEvBV,uBAAuB,CAACF,UAAUK,2BAAAA,IAACQ,mBAAAA,WACpC,CAAA,CAAA;AAAA,EAAA,EACH,CAAA,EACF,CAAA;AAEJ;;"}
1
+ {"version":3,"file":"IconWrapper.cjs","sources":["../../../../../../src/components/VerticalNavigation/TreeView/IconWrapper/IconWrapper.tsx"],"sourcesContent":["import { useContext } from \"react\";\nimport { Forwards } from \"@hitachivantara/uikit-react-icons\";\n\nimport { HvAvatar } from \"@core/components/Avatar\";\n\nimport { VerticalNavigationContext } from \"../../VerticalNavigationContext\";\nimport { TooltipWrapper } from \"../TooltipWrapper\";\nimport { SpacerDiv, StyledIconsContainer } from \"./IconWrapper.styles\";\n\nexport const IconWrapper = ({\n icon,\n label,\n hasChildren,\n showAvatar,\n isOpen,\n disableTooltip,\n}) => {\n const { hasAnyChildWithData } = useContext(VerticalNavigationContext);\n return (\n <TooltipWrapper\n showTooltip={!hasChildren && !isOpen && !disableTooltip}\n label={label}\n >\n <StyledIconsContainer hasAnyChildWithData={hasAnyChildWithData}>\n {showAvatar ? (\n <HvAvatar\n variant=\"square\"\n size=\"xs\"\n backgroundColor=\"secondary_80\"\n style={{ fontSize: \"15px\" }}\n >\n {label.substring(0, 1)}\n </HvAvatar>\n ) : (\n icon\n )}\n\n {hasChildren && !isOpen ? (\n <Forwards iconSize=\"XS\" />\n ) : (\n hasAnyChildWithData && !isOpen && <SpacerDiv />\n )}\n </StyledIconsContainer>\n </TooltipWrapper>\n );\n};\n"],"names":["IconWrapper","icon","label","hasChildren","showAvatar","isOpen","disableTooltip","hasAnyChildWithData","useContext","VerticalNavigationContext","jsx","TooltipWrapper","jsxs","StyledIconsContainer","HvAvatar","fontSize","substring","Forwards","SpacerDiv"],"mappings":";;;;;;;;;AASO,MAAMA,cAAcA,CAAC;AAAA,EAC1BC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AACF,MAAM;AACE,QAAA;AAAA,IAAEC;AAAAA,EAAAA,IAAwBC,MAAAA,WAAWC,0BAAAA,yBAAyB;AACpE,SACGC,2BAAAA,IAAAC,eAAAA,gBAAA,EACC,aAAa,CAACR,eAAe,CAACE,UAAU,CAACC,gBACzC,OAEA,UAACM,2BAAAA,KAAAC,mBAAAA,sBAAA,EAAqB,qBACnBT,UAAAA;AAAAA,IACC,aAAAM,2BAAA,IAACI,mBACC,SAAQ,UACR,MAAK,MACL,iBAAgB,gBAChB,OAAO;AAAA,MAAEC,UAAU;AAAA,IAAA,GAElBb,UAAMc,MAAAA,UAAU,GAAG,CAAC,EACvB,CAAA,IAEAf;AAAAA,IAGDE,eAAe,CAACE,SACfK,2BAAA,IAACO,gBAAS,UAAA,EAAA,UAAS,MAAI,IAEvBV,uBAAuB,CAACF,UAAUK,2BAAAA,IAACQ,mBAAAA,WACpC,CAAA,CAAA;AAAA,EAAA,EACH,CAAA,EACF,CAAA;AAEJ;;"}
@@ -187,10 +187,9 @@ const HvVerticalNavigationTreeView = React.forwardRef((props, ref) => {
187
187
  return [];
188
188
  }, [findOrderInTremauxTree, getNextNode]);
189
189
  const focus = (event, id) => {
190
- var _a;
191
190
  if (id) {
192
191
  setFocusedNodeId(id);
193
- if ((_a = nodeMap.current[id]) == null ? void 0 : _a.onFocus) {
192
+ if (nodeMap.current[id]?.onFocus) {
194
193
  nodeMap.current[id].onFocus(event);
195
194
  }
196
195
  }
@@ -283,10 +282,7 @@ const HvVerticalNavigationTreeView = React.forwardRef((props, ref) => {
283
282
  currentRangeSelection.current.push(current, next);
284
283
  }
285
284
  if (onChange) {
286
- onChange(event, base, base.map((id) => {
287
- var _a;
288
- return (_a = nodeMap.current[id]) == null ? void 0 : _a.payload;
289
- }));
285
+ onChange(event, base, base.map((id) => nodeMap.current[id]?.payload));
290
286
  }
291
287
  setSelectedState(base);
292
288
  }, [onChange, selected, setSelectedState]);
@@ -305,10 +301,7 @@ const HvVerticalNavigationTreeView = React.forwardRef((props, ref) => {
305
301
  let newSelected = base.concat(range);
306
302
  newSelected = newSelected.filter((id, i) => newSelected.indexOf(id) === i);
307
303
  if (onChange) {
308
- onChange(event, newSelected, newSelected.map((id) => {
309
- var _a;
310
- return (_a = nodeMap.current[id]) == null ? void 0 : _a.payload;
311
- }));
304
+ onChange(event, newSelected, newSelected.map((id) => nodeMap.current[id]?.payload));
312
305
  }
313
306
  setSelectedState(newSelected);
314
307
  }, [getNodesInRange, isDisabled, onChange, selected, setSelectedState]);
@@ -320,18 +313,14 @@ const HvVerticalNavigationTreeView = React.forwardRef((props, ref) => {
320
313
  newSelected = [value].concat(selected);
321
314
  }
322
315
  if (onChange) {
323
- onChange(event, newSelected, newSelected.map((id) => {
324
- var _a;
325
- return (_a = nodeMap.current[id]) == null ? void 0 : _a.payload;
326
- }));
316
+ onChange(event, newSelected, newSelected.map((id) => nodeMap.current[id]?.payload));
327
317
  }
328
318
  setSelectedState(newSelected);
329
319
  }, [onChange, selected, setSelectedState]);
330
320
  const handleSingleSelect = React.useCallback((event, value) => {
331
- var _a;
332
321
  const newSelected = multiSelect ? [value] : value;
333
322
  if (onChange) {
334
- const nodeValue = (_a = nodeMap.current[newSelected]) == null ? void 0 : _a.payload;
323
+ const nodeValue = nodeMap.current[newSelected]?.payload;
335
324
  onChange(event, newSelected, multiSelect ? [nodeValue] : nodeValue);
336
325
  }
337
326
  setSelectedState(newSelected);
@@ -1 +1 @@
1
- {"version":3,"file":"TreeView.cjs","sources":["../../../../../src/components/VerticalNavigation/TreeView/TreeView.tsx"],"sourcesContent":["import { forwardRef, useCallback, useMemo, useRef, useState } from \"react\";\n\nimport { useControlled } from \"@core/hooks/useControlled\";\nimport { useUniqueId } from \"@core/hooks/useUniqueId\";\nimport { useForkRef } from \"@core/hooks/useForkRef\";\n\nimport { ExtractNames } from \"@core/utils/classes\";\nimport {\n NavigationMode,\n TreeViewControlContext,\n TreeViewStateContext,\n} from \"./TreeViewContext\";\nimport { DescendantProvider } from \"./descendants\";\nimport { staticClasses, useClasses } from \"./TreeView.styles\";\n\nexport { staticClasses as treeViewClasses };\n\nexport type HvVerticalNavigationTreeViewClasses = ExtractNames<\n typeof useClasses\n>;\n\nexport interface HvVerticalNavigationTreeViewProps {\n /**\n * Id to be applied to the root node.\n */\n id?: string;\n /**\n * Class names to be applied.\n */\n className?: string;\n /**\n * A Jss Object used to override or extend the styles applied to the component.\n */\n classes?: HvVerticalNavigationTreeViewClasses;\n /**\n * Modus operandi (role) of the widget instance.\n */\n mode?: NavigationMode;\n /**\n * Enables selection.\n * @default false\n */\n selectable?: boolean;\n /**\n * Enables the simultaneous selection of multiple items.\n * @default false\n */\n multiSelect?: boolean;\n /**\n * The selected nodes' ids.\n *\n * When `multiSelect` is true this takes an array of strings; when false (default) a string.\n */\n selected?: string[] | string;\n /**\n * When uncontrolled, defines the initial selected nodes' ids.\n *\n * When `multiSelect` is true this takes an array of strings; when false (default) a string.\n * @default []\n */\n defaultSelected?: string[] | string;\n /**\n * Can non-leaf nodes be collapsed / expanded.\n */\n collapsible?: boolean;\n /**\n * Callback fired when a tree item is selected.\n *\n * @param {object} event The event source of the callback.\n * @param {string} nodeId The id of the selected node.\n */\n onChange?: any;\n /**\n * Expanded nodes' ids.\n */\n expanded?: string[];\n /**\n * When uncontrolled, defines the initial expanded nodes' ids.\n * @default []\n */\n defaultExpanded?: string[];\n /**\n * Callback fired when tree items are expanded/collapsed.\n *\n * @param {object} event The event source of the callback.\n * @param {array} nodeIds The ids of the expanded nodes (old and new).\n */\n onToggle?: (event, nodeIds) => void;\n /**\n * If `true`, will allow focus on disabled items.\n * @default false\n */\n disabledItemsFocusable?: boolean;\n /**\n * @ignore\n */\n onFocus?: (event: React.FocusEvent<any>) => void;\n /**\n * @ignore\n */\n onBlur?: (event: any) => void;\n /**\n * @ignore\n */\n onKeyDown?: (event: KeyboardEvent) => void;\n /**\n * The content of the component.\n */\n children?: React.ReactNode;\n}\n\nfunction isPrintableCharacter(string) {\n return string && string.length === 1 && string.match(/\\S/);\n}\n\nfunction findNextFirstChar(firstChars, startIndex, char) {\n for (let i = startIndex; i < firstChars.length; i += 1) {\n if (char === firstChars[i]) {\n return i;\n }\n }\n return -1;\n}\n\nfunction noopSelection() {\n return false;\n}\n\nexport const HvVerticalNavigationTreeView = forwardRef(\n (props: HvVerticalNavigationTreeViewProps, ref) => {\n const {\n id: idProp,\n className,\n classes: classesProp,\n\n mode = \"treeview\",\n\n collapsible = false,\n expanded: expandedProp,\n defaultExpanded = [],\n onToggle,\n\n selectable = false,\n multiSelect: multiSelectProp = false,\n selected: selectedProp,\n defaultSelected = [],\n onChange,\n\n disabledItemsFocusable = false,\n\n onFocus,\n onBlur,\n onKeyDown,\n\n children,\n\n ...others\n } = props;\n\n const { classes, cx } = useClasses(classesProp);\n\n const treeviewMode = mode === \"treeview\";\n const multiSelect = selectable && multiSelectProp;\n\n const treeId = useUniqueId(idProp, \"hvtreeview\");\n const treeRef = useRef<HTMLDivElement>(null);\n const handleRef = useForkRef(treeRef, ref);\n\n const [expanded, setExpandedState] = useControlled(\n expandedProp,\n defaultExpanded\n );\n\n const [selected, setSelectedState] = useControlled(\n selectedProp,\n defaultSelected\n );\n\n const [focusedNodeId, setFocusedNodeId] = useState<string | null>(null);\n\n const nodeMap = useRef({});\n\n const firstCharMap = useRef({});\n\n /*\n * Status Helpers\n */\n const isExpanded = useCallback(\n (id) =>\n !collapsible ||\n (Array.isArray(expanded) ? expanded.indexOf(id) !== -1 : false),\n [collapsible, expanded]\n );\n\n const isExpandable = useCallback(\n (id) =>\n collapsible && nodeMap.current[id] && nodeMap.current[id].expandable,\n [collapsible]\n );\n\n const isSelected = useCallback(\n (id) =>\n selectable &&\n (Array.isArray(selected)\n ? selected.indexOf(id) !== -1\n : selected === id),\n [selectable, selected]\n );\n\n const isSelectable = useCallback(\n (id) =>\n selectable && nodeMap.current[id] && nodeMap.current[id].selectable,\n [selectable]\n );\n\n const isDisabled = useCallback((id) => {\n let node = nodeMap.current[id];\n\n // This can be called before the node has been added to the node map.\n if (!node) {\n return false;\n }\n\n if (node.disabled) {\n return true;\n }\n\n while (node.parentId != null) {\n node = nodeMap.current[node.parentId];\n if (node.disabled) {\n return true;\n }\n }\n\n return false;\n }, []);\n\n const isFocused = useCallback(\n (id) => focusedNodeId === id,\n [focusedNodeId]\n );\n\n const isChildSelected = useCallback(\n // the second part of the condition is to ensure that the id we're\n // looking at is actually of a child (ie, there's at least one \"-\")\n (id) => selected.startsWith(id) && selected.includes(\"-\"),\n [selected]\n );\n\n /*\n * Child Helpers\n */\n const getChildrenIds = (id: string | null) =>\n Object.keys(nodeMap.current)\n .map((key) => {\n return nodeMap.current[key];\n })\n .filter((node) => node.parentId === id)\n .sort((a, b) => a.index - b.index)\n .map((child) => child.id);\n\n const getNavigableChildrenIds = useCallback(\n (id: string | null) => {\n let childrenIds = getChildrenIds(id);\n\n if (!disabledItemsFocusable) {\n childrenIds = childrenIds.filter((node) => !isDisabled(node));\n }\n return childrenIds;\n },\n [disabledItemsFocusable, isDisabled]\n );\n\n /*\n * Node Helpers\n */\n const getNextNode = useCallback(\n (id: string) => {\n // If expanded get first child\n if (isExpanded(id) && getNavigableChildrenIds(id).length > 0) {\n return getNavigableChildrenIds(id)[0];\n }\n\n let node = nodeMap.current[id];\n while (node != null) {\n // Try to get next sibling\n const siblings = getNavigableChildrenIds(node.parentId);\n const nextSibling = siblings[siblings.indexOf(node.id) + 1];\n\n if (nextSibling) {\n return nextSibling;\n }\n\n // If the sibling does not exist, go up a level to the parent and try again.\n node = nodeMap.current[node.parentId];\n }\n\n return null;\n },\n [getNavigableChildrenIds, isExpanded]\n );\n\n const getPreviousNode = (id: string) => {\n const node = nodeMap.current[id];\n const siblings = getNavigableChildrenIds(node.parentId);\n const nodeIndex = siblings.indexOf(id);\n\n if (nodeIndex === 0) {\n return node.parentId;\n }\n\n let currentNode = siblings[nodeIndex - 1];\n while (\n isExpanded(currentNode) &&\n getNavigableChildrenIds(currentNode).length > 0\n ) {\n currentNode = getNavigableChildrenIds(currentNode).pop();\n }\n\n return currentNode;\n };\n\n const getLastNode = () => {\n let lastNode = getNavigableChildrenIds(null).pop();\n\n while (isExpanded(lastNode)) {\n lastNode = getNavigableChildrenIds(lastNode).pop();\n }\n return lastNode;\n };\n const getFirstNode = () => getNavigableChildrenIds(null)[0];\n const getParent = (id) => nodeMap.current[id].parentId;\n\n /**\n * This is used to determine the start and end of a selection range so\n * we can get the nodes between the two border nodes.\n *\n * It finds the nodes' common ancestor using\n * a naive implementation of a lowest common ancestor algorithm\n * (https://en.wikipedia.org/wiki/Lowest_common_ancestor).\n * Then compares the ancestor's 2 children that are ancestors of nodeA and NodeB\n * so we can compare their indexes to work out which node comes first in a depth first search.\n * (https://en.wikipedia.org/wiki/Depth-first_search)\n *\n * Another way to put it is which node is shallower in a trémaux tree\n * https://en.wikipedia.org/wiki/Tr%C3%A9maux_tree\n */\n const findOrderInTremauxTree = useCallback(\n (nodeAId: string, nodeBId: string) => {\n if (nodeAId === nodeBId) {\n return [nodeAId, nodeBId];\n }\n\n const nodeA = nodeMap.current[nodeAId];\n const nodeB = nodeMap.current[nodeBId];\n\n if (nodeA.parentId === nodeB.id || nodeB.parentId === nodeA.id) {\n return nodeB.parentId === nodeA.id\n ? [nodeA.id, nodeB.id]\n : [nodeB.id, nodeA.id];\n }\n\n const aFamily = [nodeA.id];\n const bFamily = [nodeB.id];\n\n let aAncestor = nodeA.parentId;\n let bAncestor = nodeB.parentId;\n\n let aAncestorIsCommon = bFamily.indexOf(aAncestor) !== -1;\n let bAncestorIsCommon = aFamily.indexOf(bAncestor) !== -1;\n\n let continueA = true;\n let continueB = true;\n\n while (!bAncestorIsCommon && !aAncestorIsCommon) {\n if (continueA) {\n aFamily.push(aAncestor);\n aAncestorIsCommon = bFamily.indexOf(aAncestor) !== -1;\n continueA = aAncestor !== null;\n if (!aAncestorIsCommon && continueA) {\n aAncestor = nodeMap.current[aAncestor].parentId;\n }\n }\n\n if (continueB && !aAncestorIsCommon) {\n bFamily.push(bAncestor);\n bAncestorIsCommon = aFamily.indexOf(bAncestor) !== -1;\n continueB = bAncestor !== null;\n if (!bAncestorIsCommon && continueB) {\n bAncestor = nodeMap.current[bAncestor].parentId;\n }\n }\n }\n\n const commonAncestor = aAncestorIsCommon ? aAncestor : bAncestor;\n const ancestorFamily = getChildrenIds(commonAncestor);\n\n const aSide = aFamily[aFamily.indexOf(commonAncestor) - 1];\n const bSide = bFamily[bFamily.indexOf(commonAncestor) - 1];\n\n return ancestorFamily.indexOf(aSide) < ancestorFamily.indexOf(bSide)\n ? [nodeAId, nodeBId]\n : [nodeBId, nodeAId];\n },\n []\n );\n\n const getNodesInRange = useCallback(\n (nodeA, nodeB) => {\n if (nodeA && nodeB) {\n const [first, last] = findOrderInTremauxTree(nodeA, nodeB);\n const nodes = [first];\n\n let current = first;\n\n while (current !== last) {\n current = getNextNode(current);\n nodes.push(current);\n }\n\n return nodes;\n }\n return [];\n },\n [findOrderInTremauxTree, getNextNode]\n );\n\n /*\n * Focus Helpers\n */\n const focus = (event, id) => {\n if (id) {\n setFocusedNodeId(id);\n\n if (nodeMap.current[id]?.onFocus) {\n nodeMap.current[id].onFocus(event);\n }\n }\n };\n\n const focusNextNode = (event, id) => focus(event, getNextNode(id));\n const focusPreviousNode = (event, id) => focus(event, getPreviousNode(id));\n const focusFirstNode = (event) => focus(event, getFirstNode());\n const focusLastNode = (event) => focus(event, getLastNode());\n\n const focusByFirstCharacter = (event, id, char) => {\n let start;\n let index;\n const lowercaseChar = char.toLowerCase();\n\n const firstCharIds: string[] = [];\n const firstChars: string[] = [];\n // This really only works since the ids are strings\n Object.keys(firstCharMap.current).forEach((nodeId) => {\n const firstChar = firstCharMap.current[nodeId];\n const map = nodeMap.current[nodeId];\n const visible = map.parentId ? isExpanded(map.parentId) : true;\n const shouldBeSkipped = disabledItemsFocusable\n ? false\n : isDisabled(nodeId);\n\n if (visible && !shouldBeSkipped) {\n firstCharIds.push(nodeId);\n firstChars.push(firstChar);\n }\n });\n\n // Get start index for search based on position of currentItem\n start = firstCharIds.indexOf(id) + 1;\n if (start >= firstCharIds.length) {\n start = 0;\n }\n\n // Check remaining slots in the menu\n index = findNextFirstChar(firstChars, start, lowercaseChar);\n\n // If not found in remaining slots, check from beginning\n if (index === -1) {\n index = findNextFirstChar(firstChars, 0, lowercaseChar);\n }\n\n // If match was found...\n if (index > -1) {\n focus(event, firstCharIds[index]);\n }\n };\n\n /*\n * Expansion Helpers\n */\n const toggleExpansion = useCallback(\n (event, value = focusedNodeId) => {\n let newExpanded;\n\n if (expanded.indexOf(value) !== -1) {\n newExpanded = expanded.filter((id) => id !== value);\n } else {\n newExpanded = [value].concat(expanded);\n }\n\n if (onToggle) {\n onToggle(event, newExpanded);\n }\n\n setExpandedState(newExpanded);\n },\n [expanded, focusedNodeId, onToggle, setExpandedState]\n );\n\n const expandAllSiblings = (event, id) => {\n const map = nodeMap.current[id];\n const siblings = getChildrenIds(map.parentId);\n\n const diff = siblings.filter(\n (child) => isExpandable(child) && !isExpanded(child)\n );\n\n const newExpanded = expanded.concat(diff);\n\n if (diff.length > 0) {\n setExpandedState(newExpanded);\n\n if (onToggle) {\n onToggle(event, newExpanded);\n }\n }\n };\n\n /*\n * Selection Helpers\n */\n const lastSelectedNode = useRef<HTMLDivElement | null>(null);\n const lastSelectionWasRange = useRef(false);\n const currentRangeSelection = useRef<HTMLDivElement[]>([]);\n\n const isDivElement = (element): element is HTMLDivElement => {\n return (element as HTMLDivElement).nodeType === 1;\n };\n\n const handleRangeArrowSelect = useCallback(\n (event, nodes: { start?; next?; current? }) => {\n let base = selected.slice();\n const { start, next, current } = nodes;\n\n if (!next || !current) {\n return;\n }\n\n if (\n isDivElement(current) &&\n currentRangeSelection.current.indexOf(current) === -1\n ) {\n currentRangeSelection.current = [];\n }\n\n if (lastSelectionWasRange.current) {\n if (\n isDivElement(next) &&\n currentRangeSelection.current.indexOf(next) !== -1\n ) {\n base = base.filter((id) => id === start || id !== current);\n currentRangeSelection.current =\n currentRangeSelection.current.filter(\n (id) => id === start || id !== current\n );\n } else {\n base.push(next);\n currentRangeSelection.current.push(next);\n }\n } else {\n base.push(next);\n currentRangeSelection.current.push(current, next);\n }\n\n if (onChange) {\n onChange(\n event,\n base,\n base.map((id) => nodeMap.current[id]?.payload)\n );\n }\n\n setSelectedState(base);\n },\n [onChange, selected, setSelectedState]\n );\n\n const handleRangeSelect = useCallback(\n (event, nodes: { start?; end?; current? }) => {\n let base = selected.slice();\n const { start, end } = nodes;\n // If last selection was a range selection ignore nodes that were selected.\n if (lastSelectionWasRange.current) {\n base = base.filter(\n (id) => currentRangeSelection.current.indexOf(id) === -1\n );\n }\n\n let range = getNodesInRange(start, end);\n range = range.filter((node) => !isDisabled(node));\n currentRangeSelection.current = range;\n let newSelected = base.concat(range);\n newSelected = newSelected.filter(\n (id, i) => newSelected.indexOf(id) === i\n );\n\n if (onChange) {\n onChange(\n event,\n newSelected,\n newSelected.map((id) => nodeMap.current[id]?.payload)\n );\n }\n\n setSelectedState(newSelected);\n },\n [getNodesInRange, isDisabled, onChange, selected, setSelectedState]\n );\n\n const handleMultipleSelect = useCallback(\n (event, value) => {\n let newSelected;\n if (selected.indexOf(value) !== -1) {\n newSelected = selected.filter((id) => id !== value);\n } else {\n newSelected = [value].concat(selected);\n }\n\n if (onChange) {\n onChange(\n event,\n newSelected,\n newSelected.map((id) => nodeMap.current[id]?.payload)\n );\n }\n\n setSelectedState(newSelected);\n },\n [onChange, selected, setSelectedState]\n );\n\n const handleSingleSelect = useCallback(\n (event, value) => {\n const newSelected = multiSelect ? [value] : value;\n if (onChange) {\n const nodeValue = nodeMap.current[newSelected]?.payload;\n onChange(event, newSelected, multiSelect ? [nodeValue] : nodeValue);\n }\n\n setSelectedState(newSelected);\n },\n [multiSelect, onChange, setSelectedState]\n );\n\n const selectNode = useCallback(\n (event, id, multiple = false) => {\n if (id && isSelectable(id)) {\n if (multiple) {\n handleMultipleSelect(event, id);\n } else {\n handleSingleSelect(event, id);\n }\n lastSelectedNode.current = id;\n lastSelectionWasRange.current = false;\n currentRangeSelection.current = [];\n\n return true;\n }\n return false;\n },\n [handleMultipleSelect, handleSingleSelect, isSelectable]\n );\n\n const selectRange = useCallback(\n (\n event,\n nodes: { start?; end?; current?: HTMLDivElement | null },\n stacked = false\n ) => {\n const { start = lastSelectedNode.current, end, current } = nodes;\n if (stacked) {\n handleRangeArrowSelect(event, { start, next: end, current });\n } else if (start != null && end != null) {\n handleRangeSelect(event, { start, end });\n }\n lastSelectionWasRange.current = true;\n },\n [handleRangeArrowSelect, handleRangeSelect]\n );\n\n const rangeSelectToFirst = (event, id) => {\n if (!lastSelectedNode.current) {\n lastSelectedNode.current = id;\n }\n\n const start = lastSelectionWasRange.current\n ? lastSelectedNode.current\n : id;\n\n selectRange(event, {\n start,\n end: getFirstNode(),\n });\n };\n\n const rangeSelectToLast = (event: any, id) => {\n if (!lastSelectedNode.current) {\n lastSelectedNode.current = id;\n }\n\n const start = lastSelectionWasRange.current\n ? lastSelectedNode.current\n : id;\n\n selectRange(event, {\n start,\n end: getLastNode(),\n });\n };\n\n const selectNextNode = (event, id) => {\n if (!isDisabled(getNextNode(id))) {\n selectRange(\n event,\n {\n end: getNextNode(id),\n current: id,\n },\n true\n );\n }\n };\n\n const selectPreviousNode = (event, id) => {\n if (!isDisabled(getPreviousNode(id))) {\n selectRange(\n event,\n {\n end: getPreviousNode(id),\n current: id,\n },\n true\n );\n }\n };\n\n const selectAllNodes = (event) => {\n selectRange(event, { start: getFirstNode(), end: getLastNode() });\n };\n\n /*\n * Mapping Helpers\n */\n const registerNode = useCallback((node) => {\n const {\n id,\n index,\n parentId,\n expandable,\n idAttribute,\n disabled,\n selectable: nodeSelectable,\n onFocus: nodeOnFocus,\n payload,\n } = node;\n\n nodeMap.current[id] = {\n id,\n index,\n parentId,\n expandable,\n idAttribute,\n disabled,\n selectable: nodeSelectable,\n onFocus: nodeOnFocus,\n payload,\n };\n }, []);\n\n const unregisterNode = useCallback((id) => {\n const newMap = { ...nodeMap.current };\n delete newMap[id];\n nodeMap.current = newMap;\n\n setFocusedNodeId((oldFocusedNodeId) => {\n if (\n oldFocusedNodeId === id &&\n treeRef.current &&\n treeRef.current ===\n (treeRef.current.ownerDocument || document).activeElement\n ) {\n return getChildrenIds(null)[0];\n }\n return oldFocusedNodeId;\n });\n }, []);\n\n const mapFirstChar = useCallback((id, firstChar) => {\n firstCharMap.current[id] = firstChar;\n }, []);\n\n const unMapFirstChar = useCallback((id) => {\n const newMap = { ...firstCharMap.current };\n delete newMap[id];\n firstCharMap.current = newMap;\n }, []);\n\n /**\n * Event handlers and Navigation\n */\n const handleNextArrow = (event) => {\n if (isExpandable(focusedNodeId)) {\n if (isExpanded(focusedNodeId)) {\n focusNextNode(event, focusedNodeId);\n } else if (!isDisabled(focusedNodeId)) {\n toggleExpansion(event);\n }\n }\n return true;\n };\n\n const handlePreviousArrow = (event) => {\n if (isExpanded(focusedNodeId) && !isDisabled(focusedNodeId)) {\n toggleExpansion(event, focusedNodeId);\n return true;\n }\n\n const parent = getParent(focusedNodeId);\n if (parent) {\n focus(event, parent);\n return true;\n }\n return false;\n };\n\n const handleKeyDown = (event) => {\n let flag = false;\n const { key } = event;\n\n // If the tree is empty there will be no focused node\n if (\n event.altKey ||\n event.currentTarget !== event.target ||\n !focusedNodeId\n ) {\n return;\n }\n\n const ctrlPressed = event.ctrlKey || event.metaKey;\n switch (key) {\n case \" \":\n if (isSelectable(focusedNodeId) && !isDisabled(focusedNodeId)) {\n if (multiSelect && event.shiftKey) {\n selectRange(event, { end: focusedNodeId });\n flag = true;\n } else if (multiSelect) {\n flag = selectNode(event, focusedNodeId, true);\n } else {\n flag = selectNode(event, focusedNodeId);\n }\n }\n event.stopPropagation();\n break;\n case \"Enter\":\n if (!isDisabled(focusedNodeId)) {\n if (isExpandable(focusedNodeId)) {\n toggleExpansion(event);\n flag = true;\n } else if (isSelectable(focusedNodeId)) {\n if (multiSelect && event.shiftKey) {\n selectRange(event, { end: focusedNodeId });\n flag = true;\n } else if (multiSelect) {\n flag = selectNode(event, focusedNodeId, true);\n } else {\n flag = selectNode(event, focusedNodeId);\n }\n }\n }\n event.stopPropagation();\n break;\n case \"ArrowDown\":\n if (multiSelect && event.shiftKey) {\n selectNextNode(event, focusedNodeId);\n }\n focusNextNode(event, focusedNodeId);\n flag = true;\n break;\n case \"ArrowUp\":\n if (multiSelect && event.shiftKey) {\n selectPreviousNode(event, focusedNodeId);\n }\n focusPreviousNode(event, focusedNodeId);\n flag = true;\n break;\n case \"ArrowRight\":\n flag = handleNextArrow(event);\n break;\n case \"ArrowLeft\":\n flag = handlePreviousArrow(event);\n break;\n case \"Home\":\n if (\n multiSelect &&\n ctrlPressed &&\n event.shiftKey &&\n !isDisabled(focusedNodeId)\n ) {\n rangeSelectToFirst(event, focusedNodeId);\n }\n focusFirstNode(event);\n flag = true;\n break;\n case \"End\":\n if (\n multiSelect &&\n ctrlPressed &&\n event.shiftKey &&\n !isDisabled(focusedNodeId)\n ) {\n rangeSelectToLast(event, focusedNodeId);\n }\n focusLastNode(event);\n flag = true;\n break;\n default:\n if (key === \"*\") {\n expandAllSiblings(event, focusedNodeId);\n flag = true;\n } else if (multiSelect && ctrlPressed && key.toLowerCase() === \"a\") {\n selectAllNodes(event);\n flag = true;\n } else if (\n !ctrlPressed &&\n !event.shiftKey &&\n isPrintableCharacter(key)\n ) {\n focusByFirstCharacter(event, focusedNodeId, key);\n flag = true;\n }\n }\n\n if (flag) {\n event.preventDefault();\n event.stopPropagation();\n }\n\n if (onKeyDown) {\n onKeyDown(event);\n }\n };\n\n const handleFocus = (event) => {\n // if the event bubbled (which is React specific) we don't want to steal focus\n if (event.target === event.currentTarget) {\n const firstSelected = Array.isArray(selected) ? selected[0] : selected;\n focus(event, firstSelected || getNavigableChildrenIds(null)[0]);\n }\n\n if (onFocus) {\n onFocus(event);\n }\n };\n\n const handleBlur = (event) => {\n setFocusedNodeId(null);\n\n if (onBlur) {\n onBlur(event);\n }\n };\n\n const activeDescendant =\n focusedNodeId && nodeMap.current[focusedNodeId]\n ? nodeMap.current[focusedNodeId].idAttribute\n : null;\n\n const treeControlContext = useMemo(\n () => ({\n treeId,\n mode,\n collapsible,\n toggleExpansion,\n multiSelect,\n selectNode: selectable ? selectNode : noopSelection,\n selectRange: selectable ? selectRange : noopSelection,\n disabledItemsFocusable,\n registerNode,\n unregisterNode,\n mapFirstChar,\n unMapFirstChar,\n focus,\n }),\n [\n registerNode,\n unregisterNode,\n mapFirstChar,\n unMapFirstChar,\n toggleExpansion,\n selectable,\n selectNode,\n selectRange,\n mode,\n collapsible,\n multiSelect,\n disabledItemsFocusable,\n treeId,\n ]\n );\n\n const treeStateContext = useMemo(\n () => ({\n isExpanded,\n isSelected,\n isFocused,\n isDisabled,\n isChildSelected,\n }),\n [isDisabled, isExpanded, isFocused, isSelected, isChildSelected]\n );\n\n return (\n <TreeViewControlContext.Provider value={treeControlContext}>\n <TreeViewStateContext.Provider value={treeStateContext}>\n <DescendantProvider>\n <ul\n ref={handleRef}\n id={idProp}\n className={cx(classes.root, className)}\n {...(treeviewMode && {\n id: treeId,\n role: \"tree\",\n \"aria-multiselectable\": multiSelect,\n \"aria-activedescendant\": activeDescendant,\n tabIndex: 0,\n onFocus: handleFocus,\n onBlur: handleBlur,\n onKeyDown: handleKeyDown,\n })}\n {...others}\n >\n {children}\n </ul>\n </DescendantProvider>\n </TreeViewStateContext.Provider>\n </TreeViewControlContext.Provider>\n );\n }\n);\n"],"names":["isPrintableCharacter","string","length","match","findNextFirstChar","firstChars","startIndex","char","i","noopSelection","HvVerticalNavigationTreeView","forwardRef","props","ref","id","idProp","className","classes","classesProp","mode","collapsible","expanded","expandedProp","defaultExpanded","onToggle","selectable","multiSelect","multiSelectProp","selected","selectedProp","defaultSelected","onChange","disabledItemsFocusable","onFocus","onBlur","onKeyDown","children","others","cx","useClasses","treeviewMode","treeId","useUniqueId","treeRef","useRef","handleRef","useForkRef","setExpandedState","useControlled","setSelectedState","focusedNodeId","setFocusedNodeId","useState","nodeMap","firstCharMap","isExpanded","useCallback","Array","isArray","indexOf","isExpandable","current","expandable","isSelected","isSelectable","isDisabled","node","disabled","parentId","isFocused","isChildSelected","startsWith","includes","getChildrenIds","Object","keys","map","key","filter","sort","a","b","index","child","getNavigableChildrenIds","childrenIds","getNextNode","siblings","nextSibling","getPreviousNode","nodeIndex","currentNode","pop","getLastNode","lastNode","getFirstNode","getParent","findOrderInTremauxTree","nodeAId","nodeBId","nodeA","nodeB","aFamily","bFamily","aAncestor","bAncestor","aAncestorIsCommon","bAncestorIsCommon","continueA","continueB","push","commonAncestor","ancestorFamily","aSide","bSide","getNodesInRange","first","last","nodes","focus","event","focusNextNode","focusPreviousNode","focusFirstNode","focusLastNode","focusByFirstCharacter","start","lowercaseChar","toLowerCase","firstCharIds","forEach","nodeId","firstChar","visible","shouldBeSkipped","toggleExpansion","value","newExpanded","concat","expandAllSiblings","diff","lastSelectedNode","lastSelectionWasRange","currentRangeSelection","isDivElement","element","nodeType","handleRangeArrowSelect","base","slice","next","payload","handleRangeSelect","end","range","newSelected","handleMultipleSelect","handleSingleSelect","nodeValue","selectNode","multiple","selectRange","stacked","rangeSelectToFirst","rangeSelectToLast","selectNextNode","selectPreviousNode","selectAllNodes","registerNode","idAttribute","nodeSelectable","nodeOnFocus","unregisterNode","newMap","oldFocusedNodeId","ownerDocument","document","activeElement","mapFirstChar","unMapFirstChar","handleNextArrow","handlePreviousArrow","parent","handleKeyDown","flag","altKey","currentTarget","target","ctrlPressed","ctrlKey","metaKey","shiftKey","stopPropagation","preventDefault","handleFocus","firstSelected","handleBlur","activeDescendant","treeControlContext","useMemo","treeStateContext","jsx","TreeViewControlContext","TreeViewStateContext","DescendantProvider","root","role","tabIndex"],"mappings":"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"}
1
+ {"version":3,"file":"TreeView.cjs","sources":["../../../../../src/components/VerticalNavigation/TreeView/TreeView.tsx"],"sourcesContent":["import { forwardRef, useCallback, useMemo, useRef, useState } from \"react\";\n\nimport { useControlled } from \"@core/hooks/useControlled\";\nimport { useUniqueId } from \"@core/hooks/useUniqueId\";\nimport { useForkRef } from \"@core/hooks/useForkRef\";\n\nimport { ExtractNames } from \"@core/utils/classes\";\n\nimport {\n NavigationMode,\n TreeViewControlContext,\n TreeViewStateContext,\n} from \"./TreeViewContext\";\nimport { DescendantProvider } from \"./descendants\";\nimport { staticClasses, useClasses } from \"./TreeView.styles\";\n\nexport { staticClasses as treeViewClasses };\n\nexport type HvVerticalNavigationTreeViewClasses = ExtractNames<\n typeof useClasses\n>;\n\nexport interface HvVerticalNavigationTreeViewProps {\n /**\n * Id to be applied to the root node.\n */\n id?: string;\n /**\n * Class names to be applied.\n */\n className?: string;\n /**\n * A Jss Object used to override or extend the styles applied to the component.\n */\n classes?: HvVerticalNavigationTreeViewClasses;\n /**\n * Modus operandi (role) of the widget instance.\n */\n mode?: NavigationMode;\n /**\n * Enables selection.\n * @default false\n */\n selectable?: boolean;\n /**\n * Enables the simultaneous selection of multiple items.\n * @default false\n */\n multiSelect?: boolean;\n /**\n * The selected nodes' ids.\n *\n * When `multiSelect` is true this takes an array of strings; when false (default) a string.\n */\n selected?: string[] | string;\n /**\n * When uncontrolled, defines the initial selected nodes' ids.\n *\n * When `multiSelect` is true this takes an array of strings; when false (default) a string.\n * @default []\n */\n defaultSelected?: string[] | string;\n /**\n * Can non-leaf nodes be collapsed / expanded.\n */\n collapsible?: boolean;\n /**\n * Callback fired when a tree item is selected.\n *\n * @param {object} event The event source of the callback.\n * @param {string} nodeId The id of the selected node.\n */\n onChange?: any;\n /**\n * Expanded nodes' ids.\n */\n expanded?: string[];\n /**\n * When uncontrolled, defines the initial expanded nodes' ids.\n * @default []\n */\n defaultExpanded?: string[];\n /**\n * Callback fired when tree items are expanded/collapsed.\n *\n * @param {object} event The event source of the callback.\n * @param {array} nodeIds The ids of the expanded nodes (old and new).\n */\n onToggle?: (event, nodeIds) => void;\n /**\n * If `true`, will allow focus on disabled items.\n * @default false\n */\n disabledItemsFocusable?: boolean;\n /**\n * @ignore\n */\n onFocus?: (event: React.FocusEvent<any>) => void;\n /**\n * @ignore\n */\n onBlur?: (event: any) => void;\n /**\n * @ignore\n */\n onKeyDown?: (event: KeyboardEvent) => void;\n /**\n * The content of the component.\n */\n children?: React.ReactNode;\n}\n\nfunction isPrintableCharacter(string) {\n return string && string.length === 1 && string.match(/\\S/);\n}\n\nfunction findNextFirstChar(firstChars, startIndex, char) {\n for (let i = startIndex; i < firstChars.length; i += 1) {\n if (char === firstChars[i]) {\n return i;\n }\n }\n return -1;\n}\n\nfunction noopSelection() {\n return false;\n}\n\nexport const HvVerticalNavigationTreeView = forwardRef(\n (props: HvVerticalNavigationTreeViewProps, ref) => {\n const {\n id: idProp,\n className,\n classes: classesProp,\n\n mode = \"treeview\",\n\n collapsible = false,\n expanded: expandedProp,\n defaultExpanded = [],\n onToggle,\n\n selectable = false,\n multiSelect: multiSelectProp = false,\n selected: selectedProp,\n defaultSelected = [],\n onChange,\n\n disabledItemsFocusable = false,\n\n onFocus,\n onBlur,\n onKeyDown,\n\n children,\n\n ...others\n } = props;\n\n const { classes, cx } = useClasses(classesProp);\n\n const treeviewMode = mode === \"treeview\";\n const multiSelect = selectable && multiSelectProp;\n\n const treeId = useUniqueId(idProp, \"hvtreeview\");\n const treeRef = useRef<HTMLDivElement>(null);\n const handleRef = useForkRef(treeRef, ref);\n\n const [expanded, setExpandedState] = useControlled(\n expandedProp,\n defaultExpanded\n );\n\n const [selected, setSelectedState] = useControlled(\n selectedProp,\n defaultSelected\n );\n\n const [focusedNodeId, setFocusedNodeId] = useState<string | null>(null);\n\n const nodeMap = useRef({});\n\n const firstCharMap = useRef({});\n\n /*\n * Status Helpers\n */\n const isExpanded = useCallback(\n (id) =>\n !collapsible ||\n (Array.isArray(expanded) ? expanded.indexOf(id) !== -1 : false),\n [collapsible, expanded]\n );\n\n const isExpandable = useCallback(\n (id) =>\n collapsible && nodeMap.current[id] && nodeMap.current[id].expandable,\n [collapsible]\n );\n\n const isSelected = useCallback(\n (id) =>\n selectable &&\n (Array.isArray(selected)\n ? selected.indexOf(id) !== -1\n : selected === id),\n [selectable, selected]\n );\n\n const isSelectable = useCallback(\n (id) =>\n selectable && nodeMap.current[id] && nodeMap.current[id].selectable,\n [selectable]\n );\n\n const isDisabled = useCallback((id) => {\n let node = nodeMap.current[id];\n\n // This can be called before the node has been added to the node map.\n if (!node) {\n return false;\n }\n\n if (node.disabled) {\n return true;\n }\n\n while (node.parentId != null) {\n node = nodeMap.current[node.parentId];\n if (node.disabled) {\n return true;\n }\n }\n\n return false;\n }, []);\n\n const isFocused = useCallback(\n (id) => focusedNodeId === id,\n [focusedNodeId]\n );\n\n const isChildSelected = useCallback(\n // the second part of the condition is to ensure that the id we're\n // looking at is actually of a child (ie, there's at least one \"-\")\n (id) => selected.startsWith(id) && selected.includes(\"-\"),\n [selected]\n );\n\n /*\n * Child Helpers\n */\n const getChildrenIds = (id: string | null) =>\n Object.keys(nodeMap.current)\n .map((key) => {\n return nodeMap.current[key];\n })\n .filter((node) => node.parentId === id)\n .sort((a, b) => a.index - b.index)\n .map((child) => child.id);\n\n const getNavigableChildrenIds = useCallback(\n (id: string | null) => {\n let childrenIds = getChildrenIds(id);\n\n if (!disabledItemsFocusable) {\n childrenIds = childrenIds.filter((node) => !isDisabled(node));\n }\n return childrenIds;\n },\n [disabledItemsFocusable, isDisabled]\n );\n\n /*\n * Node Helpers\n */\n const getNextNode = useCallback(\n (id: string) => {\n // If expanded get first child\n if (isExpanded(id) && getNavigableChildrenIds(id).length > 0) {\n return getNavigableChildrenIds(id)[0];\n }\n\n let node = nodeMap.current[id];\n while (node != null) {\n // Try to get next sibling\n const siblings = getNavigableChildrenIds(node.parentId);\n const nextSibling = siblings[siblings.indexOf(node.id) + 1];\n\n if (nextSibling) {\n return nextSibling;\n }\n\n // If the sibling does not exist, go up a level to the parent and try again.\n node = nodeMap.current[node.parentId];\n }\n\n return null;\n },\n [getNavigableChildrenIds, isExpanded]\n );\n\n const getPreviousNode = (id: string) => {\n const node = nodeMap.current[id];\n const siblings = getNavigableChildrenIds(node.parentId);\n const nodeIndex = siblings.indexOf(id);\n\n if (nodeIndex === 0) {\n return node.parentId;\n }\n\n let currentNode = siblings[nodeIndex - 1];\n while (\n isExpanded(currentNode) &&\n getNavigableChildrenIds(currentNode).length > 0\n ) {\n currentNode = getNavigableChildrenIds(currentNode).pop();\n }\n\n return currentNode;\n };\n\n const getLastNode = () => {\n let lastNode = getNavigableChildrenIds(null).pop();\n\n while (isExpanded(lastNode)) {\n lastNode = getNavigableChildrenIds(lastNode).pop();\n }\n return lastNode;\n };\n const getFirstNode = () => getNavigableChildrenIds(null)[0];\n const getParent = (id) => nodeMap.current[id].parentId;\n\n /**\n * This is used to determine the start and end of a selection range so\n * we can get the nodes between the two border nodes.\n *\n * It finds the nodes' common ancestor using\n * a naive implementation of a lowest common ancestor algorithm\n * (https://en.wikipedia.org/wiki/Lowest_common_ancestor).\n * Then compares the ancestor's 2 children that are ancestors of nodeA and NodeB\n * so we can compare their indexes to work out which node comes first in a depth first search.\n * (https://en.wikipedia.org/wiki/Depth-first_search)\n *\n * Another way to put it is which node is shallower in a trémaux tree\n * https://en.wikipedia.org/wiki/Tr%C3%A9maux_tree\n */\n const findOrderInTremauxTree = useCallback(\n (nodeAId: string, nodeBId: string) => {\n if (nodeAId === nodeBId) {\n return [nodeAId, nodeBId];\n }\n\n const nodeA = nodeMap.current[nodeAId];\n const nodeB = nodeMap.current[nodeBId];\n\n if (nodeA.parentId === nodeB.id || nodeB.parentId === nodeA.id) {\n return nodeB.parentId === nodeA.id\n ? [nodeA.id, nodeB.id]\n : [nodeB.id, nodeA.id];\n }\n\n const aFamily = [nodeA.id];\n const bFamily = [nodeB.id];\n\n let aAncestor = nodeA.parentId;\n let bAncestor = nodeB.parentId;\n\n let aAncestorIsCommon = bFamily.indexOf(aAncestor) !== -1;\n let bAncestorIsCommon = aFamily.indexOf(bAncestor) !== -1;\n\n let continueA = true;\n let continueB = true;\n\n while (!bAncestorIsCommon && !aAncestorIsCommon) {\n if (continueA) {\n aFamily.push(aAncestor);\n aAncestorIsCommon = bFamily.indexOf(aAncestor) !== -1;\n continueA = aAncestor !== null;\n if (!aAncestorIsCommon && continueA) {\n aAncestor = nodeMap.current[aAncestor].parentId;\n }\n }\n\n if (continueB && !aAncestorIsCommon) {\n bFamily.push(bAncestor);\n bAncestorIsCommon = aFamily.indexOf(bAncestor) !== -1;\n continueB = bAncestor !== null;\n if (!bAncestorIsCommon && continueB) {\n bAncestor = nodeMap.current[bAncestor].parentId;\n }\n }\n }\n\n const commonAncestor = aAncestorIsCommon ? aAncestor : bAncestor;\n const ancestorFamily = getChildrenIds(commonAncestor);\n\n const aSide = aFamily[aFamily.indexOf(commonAncestor) - 1];\n const bSide = bFamily[bFamily.indexOf(commonAncestor) - 1];\n\n return ancestorFamily.indexOf(aSide) < ancestorFamily.indexOf(bSide)\n ? [nodeAId, nodeBId]\n : [nodeBId, nodeAId];\n },\n []\n );\n\n const getNodesInRange = useCallback(\n (nodeA, nodeB) => {\n if (nodeA && nodeB) {\n const [first, last] = findOrderInTremauxTree(nodeA, nodeB);\n const nodes = [first];\n\n let current = first;\n\n while (current !== last) {\n current = getNextNode(current);\n nodes.push(current);\n }\n\n return nodes;\n }\n return [];\n },\n [findOrderInTremauxTree, getNextNode]\n );\n\n /*\n * Focus Helpers\n */\n const focus = (event, id) => {\n if (id) {\n setFocusedNodeId(id);\n\n if (nodeMap.current[id]?.onFocus) {\n nodeMap.current[id].onFocus(event);\n }\n }\n };\n\n const focusNextNode = (event, id) => focus(event, getNextNode(id));\n const focusPreviousNode = (event, id) => focus(event, getPreviousNode(id));\n const focusFirstNode = (event) => focus(event, getFirstNode());\n const focusLastNode = (event) => focus(event, getLastNode());\n\n const focusByFirstCharacter = (event, id, char) => {\n let start;\n let index;\n const lowercaseChar = char.toLowerCase();\n\n const firstCharIds: string[] = [];\n const firstChars: string[] = [];\n // This really only works since the ids are strings\n Object.keys(firstCharMap.current).forEach((nodeId) => {\n const firstChar = firstCharMap.current[nodeId];\n const map = nodeMap.current[nodeId];\n const visible = map.parentId ? isExpanded(map.parentId) : true;\n const shouldBeSkipped = disabledItemsFocusable\n ? false\n : isDisabled(nodeId);\n\n if (visible && !shouldBeSkipped) {\n firstCharIds.push(nodeId);\n firstChars.push(firstChar);\n }\n });\n\n // Get start index for search based on position of currentItem\n start = firstCharIds.indexOf(id) + 1;\n if (start >= firstCharIds.length) {\n start = 0;\n }\n\n // Check remaining slots in the menu\n index = findNextFirstChar(firstChars, start, lowercaseChar);\n\n // If not found in remaining slots, check from beginning\n if (index === -1) {\n index = findNextFirstChar(firstChars, 0, lowercaseChar);\n }\n\n // If match was found...\n if (index > -1) {\n focus(event, firstCharIds[index]);\n }\n };\n\n /*\n * Expansion Helpers\n */\n const toggleExpansion = useCallback(\n (event, value = focusedNodeId) => {\n let newExpanded;\n\n if (expanded.indexOf(value) !== -1) {\n newExpanded = expanded.filter((id) => id !== value);\n } else {\n newExpanded = [value].concat(expanded);\n }\n\n if (onToggle) {\n onToggle(event, newExpanded);\n }\n\n setExpandedState(newExpanded);\n },\n [expanded, focusedNodeId, onToggle, setExpandedState]\n );\n\n const expandAllSiblings = (event, id) => {\n const map = nodeMap.current[id];\n const siblings = getChildrenIds(map.parentId);\n\n const diff = siblings.filter(\n (child) => isExpandable(child) && !isExpanded(child)\n );\n\n const newExpanded = expanded.concat(diff);\n\n if (diff.length > 0) {\n setExpandedState(newExpanded);\n\n if (onToggle) {\n onToggle(event, newExpanded);\n }\n }\n };\n\n /*\n * Selection Helpers\n */\n const lastSelectedNode = useRef<HTMLDivElement | null>(null);\n const lastSelectionWasRange = useRef(false);\n const currentRangeSelection = useRef<HTMLDivElement[]>([]);\n\n const isDivElement = (element): element is HTMLDivElement => {\n return (element as HTMLDivElement).nodeType === 1;\n };\n\n const handleRangeArrowSelect = useCallback(\n (event, nodes: { start?; next?; current? }) => {\n let base = selected.slice();\n const { start, next, current } = nodes;\n\n if (!next || !current) {\n return;\n }\n\n if (\n isDivElement(current) &&\n currentRangeSelection.current.indexOf(current) === -1\n ) {\n currentRangeSelection.current = [];\n }\n\n if (lastSelectionWasRange.current) {\n if (\n isDivElement(next) &&\n currentRangeSelection.current.indexOf(next) !== -1\n ) {\n base = base.filter((id) => id === start || id !== current);\n currentRangeSelection.current =\n currentRangeSelection.current.filter(\n (id) => id === start || id !== current\n );\n } else {\n base.push(next);\n currentRangeSelection.current.push(next);\n }\n } else {\n base.push(next);\n currentRangeSelection.current.push(current, next);\n }\n\n if (onChange) {\n onChange(\n event,\n base,\n base.map((id) => nodeMap.current[id]?.payload)\n );\n }\n\n setSelectedState(base);\n },\n [onChange, selected, setSelectedState]\n );\n\n const handleRangeSelect = useCallback(\n (event, nodes: { start?; end?; current? }) => {\n let base = selected.slice();\n const { start, end } = nodes;\n // If last selection was a range selection ignore nodes that were selected.\n if (lastSelectionWasRange.current) {\n base = base.filter(\n (id) => currentRangeSelection.current.indexOf(id) === -1\n );\n }\n\n let range = getNodesInRange(start, end);\n range = range.filter((node) => !isDisabled(node));\n currentRangeSelection.current = range;\n let newSelected = base.concat(range);\n newSelected = newSelected.filter(\n (id, i) => newSelected.indexOf(id) === i\n );\n\n if (onChange) {\n onChange(\n event,\n newSelected,\n newSelected.map((id) => nodeMap.current[id]?.payload)\n );\n }\n\n setSelectedState(newSelected);\n },\n [getNodesInRange, isDisabled, onChange, selected, setSelectedState]\n );\n\n const handleMultipleSelect = useCallback(\n (event, value) => {\n let newSelected;\n if (selected.indexOf(value) !== -1) {\n newSelected = selected.filter((id) => id !== value);\n } else {\n newSelected = [value].concat(selected);\n }\n\n if (onChange) {\n onChange(\n event,\n newSelected,\n newSelected.map((id) => nodeMap.current[id]?.payload)\n );\n }\n\n setSelectedState(newSelected);\n },\n [onChange, selected, setSelectedState]\n );\n\n const handleSingleSelect = useCallback(\n (event, value) => {\n const newSelected = multiSelect ? [value] : value;\n if (onChange) {\n const nodeValue = nodeMap.current[newSelected]?.payload;\n onChange(event, newSelected, multiSelect ? [nodeValue] : nodeValue);\n }\n\n setSelectedState(newSelected);\n },\n [multiSelect, onChange, setSelectedState]\n );\n\n const selectNode = useCallback(\n (event, id, multiple = false) => {\n if (id && isSelectable(id)) {\n if (multiple) {\n handleMultipleSelect(event, id);\n } else {\n handleSingleSelect(event, id);\n }\n lastSelectedNode.current = id;\n lastSelectionWasRange.current = false;\n currentRangeSelection.current = [];\n\n return true;\n }\n return false;\n },\n [handleMultipleSelect, handleSingleSelect, isSelectable]\n );\n\n const selectRange = useCallback(\n (\n event,\n nodes: { start?; end?; current?: HTMLDivElement | null },\n stacked = false\n ) => {\n const { start = lastSelectedNode.current, end, current } = nodes;\n if (stacked) {\n handleRangeArrowSelect(event, { start, next: end, current });\n } else if (start != null && end != null) {\n handleRangeSelect(event, { start, end });\n }\n lastSelectionWasRange.current = true;\n },\n [handleRangeArrowSelect, handleRangeSelect]\n );\n\n const rangeSelectToFirst = (event, id) => {\n if (!lastSelectedNode.current) {\n lastSelectedNode.current = id;\n }\n\n const start = lastSelectionWasRange.current\n ? lastSelectedNode.current\n : id;\n\n selectRange(event, {\n start,\n end: getFirstNode(),\n });\n };\n\n const rangeSelectToLast = (event: any, id) => {\n if (!lastSelectedNode.current) {\n lastSelectedNode.current = id;\n }\n\n const start = lastSelectionWasRange.current\n ? lastSelectedNode.current\n : id;\n\n selectRange(event, {\n start,\n end: getLastNode(),\n });\n };\n\n const selectNextNode = (event, id) => {\n if (!isDisabled(getNextNode(id))) {\n selectRange(\n event,\n {\n end: getNextNode(id),\n current: id,\n },\n true\n );\n }\n };\n\n const selectPreviousNode = (event, id) => {\n if (!isDisabled(getPreviousNode(id))) {\n selectRange(\n event,\n {\n end: getPreviousNode(id),\n current: id,\n },\n true\n );\n }\n };\n\n const selectAllNodes = (event) => {\n selectRange(event, { start: getFirstNode(), end: getLastNode() });\n };\n\n /*\n * Mapping Helpers\n */\n const registerNode = useCallback((node) => {\n const {\n id,\n index,\n parentId,\n expandable,\n idAttribute,\n disabled,\n selectable: nodeSelectable,\n onFocus: nodeOnFocus,\n payload,\n } = node;\n\n nodeMap.current[id] = {\n id,\n index,\n parentId,\n expandable,\n idAttribute,\n disabled,\n selectable: nodeSelectable,\n onFocus: nodeOnFocus,\n payload,\n };\n }, []);\n\n const unregisterNode = useCallback((id) => {\n const newMap = { ...nodeMap.current };\n delete newMap[id];\n nodeMap.current = newMap;\n\n setFocusedNodeId((oldFocusedNodeId) => {\n if (\n oldFocusedNodeId === id &&\n treeRef.current &&\n treeRef.current ===\n (treeRef.current.ownerDocument || document).activeElement\n ) {\n return getChildrenIds(null)[0];\n }\n return oldFocusedNodeId;\n });\n }, []);\n\n const mapFirstChar = useCallback((id, firstChar) => {\n firstCharMap.current[id] = firstChar;\n }, []);\n\n const unMapFirstChar = useCallback((id) => {\n const newMap = { ...firstCharMap.current };\n delete newMap[id];\n firstCharMap.current = newMap;\n }, []);\n\n /**\n * Event handlers and Navigation\n */\n const handleNextArrow = (event) => {\n if (isExpandable(focusedNodeId)) {\n if (isExpanded(focusedNodeId)) {\n focusNextNode(event, focusedNodeId);\n } else if (!isDisabled(focusedNodeId)) {\n toggleExpansion(event);\n }\n }\n return true;\n };\n\n const handlePreviousArrow = (event) => {\n if (isExpanded(focusedNodeId) && !isDisabled(focusedNodeId)) {\n toggleExpansion(event, focusedNodeId);\n return true;\n }\n\n const parent = getParent(focusedNodeId);\n if (parent) {\n focus(event, parent);\n return true;\n }\n return false;\n };\n\n const handleKeyDown = (event) => {\n let flag = false;\n const { key } = event;\n\n // If the tree is empty there will be no focused node\n if (\n event.altKey ||\n event.currentTarget !== event.target ||\n !focusedNodeId\n ) {\n return;\n }\n\n const ctrlPressed = event.ctrlKey || event.metaKey;\n switch (key) {\n case \" \":\n if (isSelectable(focusedNodeId) && !isDisabled(focusedNodeId)) {\n if (multiSelect && event.shiftKey) {\n selectRange(event, { end: focusedNodeId });\n flag = true;\n } else if (multiSelect) {\n flag = selectNode(event, focusedNodeId, true);\n } else {\n flag = selectNode(event, focusedNodeId);\n }\n }\n event.stopPropagation();\n break;\n case \"Enter\":\n if (!isDisabled(focusedNodeId)) {\n if (isExpandable(focusedNodeId)) {\n toggleExpansion(event);\n flag = true;\n } else if (isSelectable(focusedNodeId)) {\n if (multiSelect && event.shiftKey) {\n selectRange(event, { end: focusedNodeId });\n flag = true;\n } else if (multiSelect) {\n flag = selectNode(event, focusedNodeId, true);\n } else {\n flag = selectNode(event, focusedNodeId);\n }\n }\n }\n event.stopPropagation();\n break;\n case \"ArrowDown\":\n if (multiSelect && event.shiftKey) {\n selectNextNode(event, focusedNodeId);\n }\n focusNextNode(event, focusedNodeId);\n flag = true;\n break;\n case \"ArrowUp\":\n if (multiSelect && event.shiftKey) {\n selectPreviousNode(event, focusedNodeId);\n }\n focusPreviousNode(event, focusedNodeId);\n flag = true;\n break;\n case \"ArrowRight\":\n flag = handleNextArrow(event);\n break;\n case \"ArrowLeft\":\n flag = handlePreviousArrow(event);\n break;\n case \"Home\":\n if (\n multiSelect &&\n ctrlPressed &&\n event.shiftKey &&\n !isDisabled(focusedNodeId)\n ) {\n rangeSelectToFirst(event, focusedNodeId);\n }\n focusFirstNode(event);\n flag = true;\n break;\n case \"End\":\n if (\n multiSelect &&\n ctrlPressed &&\n event.shiftKey &&\n !isDisabled(focusedNodeId)\n ) {\n rangeSelectToLast(event, focusedNodeId);\n }\n focusLastNode(event);\n flag = true;\n break;\n default:\n if (key === \"*\") {\n expandAllSiblings(event, focusedNodeId);\n flag = true;\n } else if (multiSelect && ctrlPressed && key.toLowerCase() === \"a\") {\n selectAllNodes(event);\n flag = true;\n } else if (\n !ctrlPressed &&\n !event.shiftKey &&\n isPrintableCharacter(key)\n ) {\n focusByFirstCharacter(event, focusedNodeId, key);\n flag = true;\n }\n }\n\n if (flag) {\n event.preventDefault();\n event.stopPropagation();\n }\n\n if (onKeyDown) {\n onKeyDown(event);\n }\n };\n\n const handleFocus = (event) => {\n // if the event bubbled (which is React specific) we don't want to steal focus\n if (event.target === event.currentTarget) {\n const firstSelected = Array.isArray(selected) ? selected[0] : selected;\n focus(event, firstSelected || getNavigableChildrenIds(null)[0]);\n }\n\n if (onFocus) {\n onFocus(event);\n }\n };\n\n const handleBlur = (event) => {\n setFocusedNodeId(null);\n\n if (onBlur) {\n onBlur(event);\n }\n };\n\n const activeDescendant =\n focusedNodeId && nodeMap.current[focusedNodeId]\n ? nodeMap.current[focusedNodeId].idAttribute\n : null;\n\n const treeControlContext = useMemo(\n () => ({\n treeId,\n mode,\n collapsible,\n toggleExpansion,\n multiSelect,\n selectNode: selectable ? selectNode : noopSelection,\n selectRange: selectable ? selectRange : noopSelection,\n disabledItemsFocusable,\n registerNode,\n unregisterNode,\n mapFirstChar,\n unMapFirstChar,\n focus,\n }),\n [\n registerNode,\n unregisterNode,\n mapFirstChar,\n unMapFirstChar,\n toggleExpansion,\n selectable,\n selectNode,\n selectRange,\n mode,\n collapsible,\n multiSelect,\n disabledItemsFocusable,\n treeId,\n ]\n );\n\n const treeStateContext = useMemo(\n () => ({\n isExpanded,\n isSelected,\n isFocused,\n isDisabled,\n isChildSelected,\n }),\n [isDisabled, isExpanded, isFocused, isSelected, isChildSelected]\n );\n\n return (\n <TreeViewControlContext.Provider value={treeControlContext}>\n <TreeViewStateContext.Provider value={treeStateContext}>\n <DescendantProvider>\n <ul\n ref={handleRef}\n id={idProp}\n className={cx(classes.root, className)}\n {...(treeviewMode && {\n id: treeId,\n role: \"tree\",\n \"aria-multiselectable\": multiSelect,\n \"aria-activedescendant\": activeDescendant,\n tabIndex: 0,\n onFocus: handleFocus,\n onBlur: handleBlur,\n onKeyDown: handleKeyDown,\n })}\n {...others}\n >\n {children}\n </ul>\n </DescendantProvider>\n </TreeViewStateContext.Provider>\n </TreeViewControlContext.Provider>\n );\n }\n);\n"],"names":["isPrintableCharacter","string","length","match","findNextFirstChar","firstChars","startIndex","char","i","noopSelection","HvVerticalNavigationTreeView","forwardRef","props","ref","id","idProp","className","classes","classesProp","mode","collapsible","expanded","expandedProp","defaultExpanded","onToggle","selectable","multiSelect","multiSelectProp","selected","selectedProp","defaultSelected","onChange","disabledItemsFocusable","onFocus","onBlur","onKeyDown","children","others","cx","useClasses","treeviewMode","treeId","useUniqueId","treeRef","useRef","handleRef","useForkRef","setExpandedState","useControlled","setSelectedState","focusedNodeId","setFocusedNodeId","useState","nodeMap","firstCharMap","isExpanded","useCallback","Array","isArray","indexOf","isExpandable","current","expandable","isSelected","isSelectable","isDisabled","node","disabled","parentId","isFocused","isChildSelected","startsWith","includes","getChildrenIds","Object","keys","map","key","filter","sort","a","b","index","child","getNavigableChildrenIds","childrenIds","getNextNode","siblings","nextSibling","getPreviousNode","nodeIndex","currentNode","pop","getLastNode","lastNode","getFirstNode","getParent","findOrderInTremauxTree","nodeAId","nodeBId","nodeA","nodeB","aFamily","bFamily","aAncestor","bAncestor","aAncestorIsCommon","bAncestorIsCommon","continueA","continueB","push","commonAncestor","ancestorFamily","aSide","bSide","getNodesInRange","first","last","nodes","focus","event","focusNextNode","focusPreviousNode","focusFirstNode","focusLastNode","focusByFirstCharacter","start","lowercaseChar","toLowerCase","firstCharIds","forEach","nodeId","firstChar","visible","shouldBeSkipped","toggleExpansion","value","newExpanded","concat","expandAllSiblings","diff","lastSelectedNode","lastSelectionWasRange","currentRangeSelection","isDivElement","element","nodeType","handleRangeArrowSelect","base","slice","next","payload","handleRangeSelect","end","range","newSelected","handleMultipleSelect","handleSingleSelect","nodeValue","selectNode","multiple","selectRange","stacked","rangeSelectToFirst","rangeSelectToLast","selectNextNode","selectPreviousNode","selectAllNodes","registerNode","idAttribute","nodeSelectable","nodeOnFocus","unregisterNode","newMap","oldFocusedNodeId","ownerDocument","document","activeElement","mapFirstChar","unMapFirstChar","handleNextArrow","handlePreviousArrow","parent","handleKeyDown","flag","altKey","currentTarget","target","ctrlPressed","ctrlKey","metaKey","shiftKey","stopPropagation","preventDefault","handleFocus","firstSelected","handleBlur","activeDescendant","treeControlContext","useMemo","treeStateContext","jsx","TreeViewControlContext","TreeViewStateContext","DescendantProvider","root","role","tabIndex"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const classes = require("../../../utils/classes.cjs");
4
3
  const uikitStyles = require("@hitachivantara/uikit-styles");
4
+ const classes = require("../../../utils/classes.cjs");
5
5
  const {
6
6
  staticClasses,
7
7
  useClasses
@@ -1 +1 @@
1
- {"version":3,"file":"TreeView.styles.cjs","sources":["../../../../../src/components/VerticalNavigation/TreeView/TreeView.styles.tsx"],"sourcesContent":["import { createClasses } from \"@core/utils/classes\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\n\nexport const { staticClasses, useClasses } = createClasses(\n \"HvVerticalNavigationTreeView\",\n {\n root: {\n display: \"block\",\n background: theme.colors.atmo1,\n padding: `0px`,\n margin: \"0\",\n listStyle: \"none\",\n\n outline: \"none\",\n },\n }\n);\n"],"names":["staticClasses","useClasses","createClasses","root","display","background","theme","colors","atmo1","padding","margin","listStyle","outline"],"mappings":";;;;AAGa,MAAA;AAAA,EAAEA;AAAAA,EAAeC;AAAW,IAAIC,QAAAA,cAC3C,gCACA;AAAA,EACEC,MAAM;AAAA,IACJC,SAAS;AAAA,IACTC,YAAYC,YAAAA,MAAMC,OAAOC;AAAAA,IACzBC,SAAU;AAAA,IACVC,QAAQ;AAAA,IACRC,WAAW;AAAA,IAEXC,SAAS;AAAA,EACX;AACF,CACF;;;"}
1
+ {"version":3,"file":"TreeView.styles.cjs","sources":["../../../../../src/components/VerticalNavigation/TreeView/TreeView.styles.tsx"],"sourcesContent":["import { theme } from \"@hitachivantara/uikit-styles\";\n\nimport { createClasses } from \"@core/utils/classes\";\n\nexport const { staticClasses, useClasses } = createClasses(\n \"HvVerticalNavigationTreeView\",\n {\n root: {\n display: \"block\",\n background: theme.colors.atmo1,\n padding: `0px`,\n margin: \"0\",\n listStyle: \"none\",\n\n outline: \"none\",\n },\n }\n);\n"],"names":["staticClasses","useClasses","createClasses","root","display","background","theme","colors","atmo1","padding","margin","listStyle","outline"],"mappings":";;;;AAIa,MAAA;AAAA,EAAEA;AAAAA,EAAeC;AAAW,IAAIC,QAAAA,cAC3C,gCACA;AAAA,EACEC,MAAM;AAAA,IACJC,SAAS;AAAA,IACTC,YAAYC,YAAAA,MAAMC,OAAOC;AAAAA,IACzBC,SAAU;AAAA,IACVC,QAAQ;AAAA,IACRC,WAAW;AAAA,IAEXC,SAAS;AAAA,EACX;AACF,CACF;;;"}
@@ -113,9 +113,8 @@ const HvVerticalNavigationTreeViewItem = React.forwardRef((props, ref) => {
113
113
  return void 0;
114
114
  }, [registerNode, unregisterNode, parentId, index, nodeId, expandable, disabledProp, id, selectable, onFocus, payload]);
115
115
  React.useEffect(() => {
116
- var _a, _b;
117
- if (mapFirstChar && unMapFirstChar && label && ((_a = contentRef.current) == null ? void 0 : _a.textContent)) {
118
- mapFirstChar(nodeId, (_b = contentRef.current) == null ? void 0 : _b.textContent.substring(0, 1).toLowerCase());
116
+ if (mapFirstChar && unMapFirstChar && label && contentRef.current?.textContent) {
117
+ mapFirstChar(nodeId, contentRef.current?.textContent.substring(0, 1).toLowerCase());
119
118
  return () => {
120
119
  unMapFirstChar(nodeId);
121
120
  };
@@ -229,20 +228,20 @@ const HvVerticalNavigationTreeViewItem = React.forwardRef((props, ref) => {
229
228
  } : {
230
229
  tabIndex: selectable || expandable ? 0 : -1,
231
230
  onKeyDown: handleKeyDown,
232
- "aria-current": selectable && selected || !isOpen && (isChildSelected == null ? void 0 : isChildSelected(nodeId)) ? href ? "page" : true : void 0,
231
+ "aria-current": selectable && selected || !isOpen && isChildSelected?.(nodeId) ? href ? "page" : true : void 0,
233
232
  "aria-expanded": expandable ? expanded : void 0,
234
233
  "aria-controls": isOpen && expandable ? setId.setId(id, "group") : void 0,
235
- "aria-label": payload == null ? void 0 : payload.label
234
+ "aria-label": payload?.label
236
235
  }, children: [
237
- /* @__PURE__ */ jsxRuntime.jsx(IconWrapper.IconWrapper, { icon: useIcons && icon, label: payload == null ? void 0 : payload.label, hasChildren: Boolean(children), showAvatar: !icon && useIcons, isOpen, disableTooltip }),
236
+ /* @__PURE__ */ jsxRuntime.jsx(IconWrapper.IconWrapper, { icon: useIcons && icon, label: payload?.label, hasChildren: Boolean(children), showAvatar: !icon && useIcons, isOpen, disableTooltip }),
238
237
  isOpen && /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx(classes.label, {
239
238
  [classes.labelIcon]: useIcons,
240
239
  [classes.labelExpandable]: !!expandable
241
240
  }), children: label }),
242
241
  isOpen && expandable && (expanded ? /* @__PURE__ */ jsxRuntime.jsx(uikitReactIcons.DropUpXS, {}) : /* @__PURE__ */ jsxRuntime.jsx(uikitReactIcons.DropDownXS, {}))
243
242
  ] });
244
- }, [id, href, target, cx, classes.content, classes.link, classes.minimized, classes.label, classes.labelIcon, classes.labelExpandable, disabled, handleClick, handleMouseDown, expandable, icon, level, collapsible, treeviewMode, handleFocus, selectable, handleKeyDown, selected, expanded, label, disableTooltip, payload == null ? void 0 : payload.label, children, isOpen, useIcons, isChildSelected, nodeId]);
245
- const renderedChildren = React.useMemo(() => children && /* @__PURE__ */ jsxRuntime.jsx("ul", { id: setId.setId(id, "group"), className: classes.group, role: treeviewMode ? "group" : void 0, children }), [children, classes == null ? void 0 : classes.group, id, treeviewMode]);
243
+ }, [id, href, target, cx, classes.content, classes.link, classes.minimized, classes.label, classes.labelIcon, classes.labelExpandable, disabled, handleClick, handleMouseDown, expandable, icon, level, collapsible, treeviewMode, handleFocus, selectable, handleKeyDown, selected, expanded, label, disableTooltip, payload?.label, children, isOpen, useIcons, isChildSelected, nodeId]);
244
+ const renderedChildren = React.useMemo(() => children && /* @__PURE__ */ jsxRuntime.jsx("ul", { id: setId.setId(id, "group"), className: classes.group, role: treeviewMode ? "group" : void 0, children }), [children, classes?.group, id, treeviewMode]);
246
245
  return /* @__PURE__ */ jsxRuntime.jsxs("li", { ref: handleRef, id: id ?? void 0, className: cx(classes.node, {
247
246
  [classes.disabled]: disabled,
248
247
  [classes.expandable]: expandable,