@hitachivantara/uikit-react-core 5.24.2 → 5.24.4

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 (257) hide show
  1. package/dist/cjs/components/Calendar/Calendar.cjs +12 -10
  2. package/dist/cjs/components/Calendar/Calendar.cjs.map +1 -1
  3. package/dist/cjs/components/Calendar/Calendar.styles.cjs +29 -57
  4. package/dist/cjs/components/Calendar/Calendar.styles.cjs.map +1 -1
  5. package/dist/cjs/components/Calendar/CalendarHeader/CalendarHeader.cjs +20 -14
  6. package/dist/cjs/components/Calendar/CalendarHeader/CalendarHeader.cjs.map +1 -1
  7. package/dist/cjs/components/Calendar/CalendarHeader/CalendarHeader.styles.cjs +55 -82
  8. package/dist/cjs/components/Calendar/CalendarHeader/CalendarHeader.styles.cjs.map +1 -1
  9. package/dist/cjs/components/Calendar/CalendarNavigation/ComposedNavigation/ComposedNavigation.cjs +10 -8
  10. package/dist/cjs/components/Calendar/CalendarNavigation/ComposedNavigation/ComposedNavigation.cjs.map +1 -1
  11. package/dist/cjs/components/Calendar/CalendarNavigation/ComposedNavigation/ComposedNavigation.styles.cjs +15 -31
  12. package/dist/cjs/components/Calendar/CalendarNavigation/ComposedNavigation/ComposedNavigation.styles.cjs.map +1 -1
  13. package/dist/cjs/components/Calendar/CalendarNavigation/MonthSelector/MonthSelector.cjs +18 -9
  14. package/dist/cjs/components/Calendar/CalendarNavigation/MonthSelector/MonthSelector.cjs.map +1 -1
  15. package/dist/cjs/components/Calendar/CalendarNavigation/MonthSelector/MonthSelector.styles.cjs +43 -56
  16. package/dist/cjs/components/Calendar/CalendarNavigation/MonthSelector/MonthSelector.styles.cjs.map +1 -1
  17. package/dist/cjs/components/Calendar/CalendarNavigation/Navigation/Navigation.cjs +22 -11
  18. package/dist/cjs/components/Calendar/CalendarNavigation/Navigation/Navigation.cjs.map +1 -1
  19. package/dist/cjs/components/Calendar/CalendarNavigation/Navigation/Navigation.styles.cjs +31 -77
  20. package/dist/cjs/components/Calendar/CalendarNavigation/Navigation/Navigation.styles.cjs.map +1 -1
  21. package/dist/cjs/components/Calendar/CalendarWeekLabels/CalendarWeekLabels.cjs +8 -5
  22. package/dist/cjs/components/Calendar/CalendarWeekLabels/CalendarWeekLabels.cjs.map +1 -1
  23. package/dist/cjs/components/Calendar/CalendarWeekLabels/CalendarWeekLabels.styles.cjs +15 -21
  24. package/dist/cjs/components/Calendar/CalendarWeekLabels/CalendarWeekLabels.styles.cjs.map +1 -1
  25. package/dist/cjs/components/Calendar/SingleCalendar/CalendarCell.cjs +25 -9
  26. package/dist/cjs/components/Calendar/SingleCalendar/CalendarCell.cjs.map +1 -1
  27. package/dist/cjs/components/Calendar/SingleCalendar/CalendarCell.styles.cjs +38 -53
  28. package/dist/cjs/components/Calendar/SingleCalendar/CalendarCell.styles.cjs.map +1 -1
  29. package/dist/cjs/components/Calendar/SingleCalendar/SingleCalendar.cjs +14 -11
  30. package/dist/cjs/components/Calendar/SingleCalendar/SingleCalendar.cjs.map +1 -1
  31. package/dist/cjs/components/Calendar/SingleCalendar/SingleCalendar.styles.cjs +64 -63
  32. package/dist/cjs/components/Calendar/SingleCalendar/SingleCalendar.styles.cjs.map +1 -1
  33. package/dist/cjs/components/Card/Card.cjs +2 -2
  34. package/dist/cjs/components/Card/Card.cjs.map +1 -1
  35. package/dist/cjs/components/Footer/Footer.cjs +2 -2
  36. package/dist/cjs/components/Footer/Footer.cjs.map +1 -1
  37. package/dist/cjs/components/Grid/Grid.cjs +7 -0
  38. package/dist/cjs/components/Grid/Grid.cjs.map +1 -1
  39. package/dist/cjs/components/Grid/Grid.styles.cjs +44 -0
  40. package/dist/cjs/components/Grid/Grid.styles.cjs.map +1 -0
  41. package/dist/cjs/components/Header/Navigation/MenuItem/MenuItem.cjs +2 -2
  42. package/dist/cjs/components/Header/Navigation/MenuItem/MenuItem.cjs.map +1 -1
  43. package/dist/cjs/components/Header/Navigation/Navigation.cjs.map +1 -1
  44. package/dist/cjs/components/Header/Navigation/useSelectionPath.cjs.map +1 -1
  45. package/dist/cjs/components/Kpi/Kpi.cjs +27 -24
  46. package/dist/cjs/components/Kpi/Kpi.cjs.map +1 -1
  47. package/dist/cjs/components/Kpi/Kpi.styles.cjs +47 -132
  48. package/dist/cjs/components/Kpi/Kpi.styles.cjs.map +1 -1
  49. package/dist/cjs/components/Link/Link.cjs +8 -5
  50. package/dist/cjs/components/Link/Link.cjs.map +1 -1
  51. package/dist/cjs/components/Link/Link.styles.cjs +15 -16
  52. package/dist/cjs/components/Link/Link.styles.cjs.map +1 -1
  53. package/dist/cjs/components/List/List.styles.cjs +2 -2
  54. package/dist/cjs/components/List/List.styles.cjs.map +1 -1
  55. package/dist/cjs/components/ListContainer/ListContainer.cjs +8 -4
  56. package/dist/cjs/components/ListContainer/ListContainer.cjs.map +1 -1
  57. package/dist/cjs/components/ListContainer/ListContainer.styles.cjs +12 -0
  58. package/dist/cjs/components/ListContainer/ListContainer.styles.cjs.map +1 -0
  59. package/dist/cjs/components/ListContainer/ListContext/ListContext.cjs.map +1 -1
  60. package/dist/cjs/components/ListContainer/ListItem/ListItem.cjs +43 -31
  61. package/dist/cjs/components/ListContainer/ListItem/ListItem.cjs.map +1 -1
  62. package/dist/cjs/components/ListContainer/ListItem/ListItem.styles.cjs +47 -75
  63. package/dist/cjs/components/ListContainer/ListItem/ListItem.styles.cjs.map +1 -1
  64. package/dist/cjs/components/OverflowTooltip/OverflowTooltip.cjs +13 -8
  65. package/dist/cjs/components/OverflowTooltip/OverflowTooltip.cjs.map +1 -1
  66. package/dist/cjs/components/OverflowTooltip/OverflowTooltip.styles.cjs +16 -35
  67. package/dist/cjs/components/OverflowTooltip/OverflowTooltip.styles.cjs.map +1 -1
  68. package/dist/cjs/components/ScrollTo/Horizontal/ScrollToHorizontal.cjs +2 -2
  69. package/dist/cjs/components/ScrollTo/Horizontal/ScrollToHorizontal.cjs.map +1 -1
  70. package/dist/cjs/components/ScrollTo/Vertical/ScrollToVertical.cjs +2 -2
  71. package/dist/cjs/components/ScrollTo/Vertical/ScrollToVertical.cjs.map +1 -1
  72. package/dist/cjs/components/Tab/Tab.cjs +12 -8
  73. package/dist/cjs/components/Tab/Tab.cjs.map +1 -1
  74. package/dist/cjs/components/Tab/Tab.styles.cjs +53 -57
  75. package/dist/cjs/components/Tab/Tab.styles.cjs.map +1 -1
  76. package/dist/cjs/components/Tag/Tag.cjs +42 -27
  77. package/dist/cjs/components/Tag/Tag.cjs.map +1 -1
  78. package/dist/cjs/components/Tag/Tag.styles.cjs +90 -139
  79. package/dist/cjs/components/Tag/Tag.styles.cjs.map +1 -1
  80. package/dist/cjs/components/TagsInput/TagsInput.cjs +75 -49
  81. package/dist/cjs/components/TagsInput/TagsInput.cjs.map +1 -1
  82. package/dist/cjs/components/TagsInput/TagsInput.styles.cjs +171 -328
  83. package/dist/cjs/components/TagsInput/TagsInput.styles.cjs.map +1 -1
  84. package/dist/cjs/components/Tooltip/Tooltip.cjs +7 -5
  85. package/dist/cjs/components/Tooltip/Tooltip.cjs.map +1 -1
  86. package/dist/cjs/components/Tooltip/Tooltip.styles.cjs +27 -9
  87. package/dist/cjs/components/Tooltip/Tooltip.styles.cjs.map +1 -1
  88. package/dist/cjs/components/Typography/Typography.cjs +2 -2
  89. package/dist/cjs/components/Typography/Typography.cjs.map +1 -1
  90. package/dist/cjs/components/VerticalNavigation/NavigationSlider/NavigationSlider.styles.cjs +3 -3
  91. package/dist/cjs/components/VerticalNavigation/NavigationSlider/NavigationSlider.styles.cjs.map +1 -1
  92. package/dist/cjs/index.cjs +24 -24
  93. package/dist/esm/components/Calendar/Calendar.js +15 -12
  94. package/dist/esm/components/Calendar/Calendar.js.map +1 -1
  95. package/dist/esm/components/Calendar/Calendar.styles.js +29 -55
  96. package/dist/esm/components/Calendar/Calendar.styles.js.map +1 -1
  97. package/dist/esm/components/Calendar/CalendarHeader/CalendarHeader.js +23 -16
  98. package/dist/esm/components/Calendar/CalendarHeader/CalendarHeader.js.map +1 -1
  99. package/dist/esm/components/Calendar/CalendarHeader/CalendarHeader.styles.js +55 -80
  100. package/dist/esm/components/Calendar/CalendarHeader/CalendarHeader.styles.js.map +1 -1
  101. package/dist/esm/components/Calendar/CalendarNavigation/ComposedNavigation/ComposedNavigation.js +13 -10
  102. package/dist/esm/components/Calendar/CalendarNavigation/ComposedNavigation/ComposedNavigation.js.map +1 -1
  103. package/dist/esm/components/Calendar/CalendarNavigation/ComposedNavigation/ComposedNavigation.styles.js +15 -29
  104. package/dist/esm/components/Calendar/CalendarNavigation/ComposedNavigation/ComposedNavigation.styles.js.map +1 -1
  105. package/dist/esm/components/Calendar/CalendarNavigation/MonthSelector/MonthSelector.js +21 -11
  106. package/dist/esm/components/Calendar/CalendarNavigation/MonthSelector/MonthSelector.js.map +1 -1
  107. package/dist/esm/components/Calendar/CalendarNavigation/MonthSelector/MonthSelector.styles.js +43 -54
  108. package/dist/esm/components/Calendar/CalendarNavigation/MonthSelector/MonthSelector.styles.js.map +1 -1
  109. package/dist/esm/components/Calendar/CalendarNavigation/Navigation/Navigation.js +25 -13
  110. package/dist/esm/components/Calendar/CalendarNavigation/Navigation/Navigation.js.map +1 -1
  111. package/dist/esm/components/Calendar/CalendarNavigation/Navigation/Navigation.styles.js +31 -75
  112. package/dist/esm/components/Calendar/CalendarNavigation/Navigation/Navigation.styles.js.map +1 -1
  113. package/dist/esm/components/Calendar/CalendarWeekLabels/CalendarWeekLabels.js +11 -7
  114. package/dist/esm/components/Calendar/CalendarWeekLabels/CalendarWeekLabels.js.map +1 -1
  115. package/dist/esm/components/Calendar/CalendarWeekLabels/CalendarWeekLabels.styles.js +15 -19
  116. package/dist/esm/components/Calendar/CalendarWeekLabels/CalendarWeekLabels.styles.js.map +1 -1
  117. package/dist/esm/components/Calendar/SingleCalendar/CalendarCell.js +27 -10
  118. package/dist/esm/components/Calendar/SingleCalendar/CalendarCell.js.map +1 -1
  119. package/dist/esm/components/Calendar/SingleCalendar/CalendarCell.styles.js +38 -51
  120. package/dist/esm/components/Calendar/SingleCalendar/CalendarCell.styles.js.map +1 -1
  121. package/dist/esm/components/Calendar/SingleCalendar/SingleCalendar.js +16 -12
  122. package/dist/esm/components/Calendar/SingleCalendar/SingleCalendar.js.map +1 -1
  123. package/dist/esm/components/Calendar/SingleCalendar/SingleCalendar.styles.js +64 -61
  124. package/dist/esm/components/Calendar/SingleCalendar/SingleCalendar.styles.js.map +1 -1
  125. package/dist/esm/components/Card/Card.js +2 -2
  126. package/dist/esm/components/Card/Card.js.map +1 -1
  127. package/dist/esm/components/Footer/Footer.js +2 -2
  128. package/dist/esm/components/Footer/Footer.js.map +1 -1
  129. package/dist/esm/components/Grid/Grid.js +9 -1
  130. package/dist/esm/components/Grid/Grid.js.map +1 -1
  131. package/dist/esm/components/Grid/Grid.styles.js +44 -0
  132. package/dist/esm/components/Grid/Grid.styles.js.map +1 -0
  133. package/dist/esm/components/Header/Navigation/MenuItem/MenuItem.js +2 -2
  134. package/dist/esm/components/Header/Navigation/MenuItem/MenuItem.js.map +1 -1
  135. package/dist/esm/components/Header/Navigation/Navigation.js.map +1 -1
  136. package/dist/esm/components/Header/Navigation/useSelectionPath.js.map +1 -1
  137. package/dist/esm/components/Kpi/Kpi.js +30 -26
  138. package/dist/esm/components/Kpi/Kpi.js.map +1 -1
  139. package/dist/esm/components/Kpi/Kpi.styles.js +47 -130
  140. package/dist/esm/components/Kpi/Kpi.styles.js.map +1 -1
  141. package/dist/esm/components/Link/Link.js +11 -7
  142. package/dist/esm/components/Link/Link.js.map +1 -1
  143. package/dist/esm/components/Link/Link.styles.js +15 -14
  144. package/dist/esm/components/Link/Link.styles.js.map +1 -1
  145. package/dist/esm/components/List/List.styles.js +2 -2
  146. package/dist/esm/components/ListContainer/ListContainer.js +10 -5
  147. package/dist/esm/components/ListContainer/ListContainer.js.map +1 -1
  148. package/dist/esm/components/ListContainer/ListContainer.styles.js +12 -0
  149. package/dist/esm/components/ListContainer/ListContainer.styles.js.map +1 -0
  150. package/dist/esm/components/ListContainer/ListContext/ListContext.js.map +1 -1
  151. package/dist/esm/components/ListContainer/ListItem/ListItem.js +46 -33
  152. package/dist/esm/components/ListContainer/ListItem/ListItem.js.map +1 -1
  153. package/dist/esm/components/ListContainer/ListItem/ListItem.styles.js +47 -73
  154. package/dist/esm/components/ListContainer/ListItem/ListItem.styles.js.map +1 -1
  155. package/dist/esm/components/OverflowTooltip/OverflowTooltip.js +16 -10
  156. package/dist/esm/components/OverflowTooltip/OverflowTooltip.js.map +1 -1
  157. package/dist/esm/components/OverflowTooltip/OverflowTooltip.styles.js +16 -33
  158. package/dist/esm/components/OverflowTooltip/OverflowTooltip.styles.js.map +1 -1
  159. package/dist/esm/components/ScrollTo/Horizontal/ScrollToHorizontal.js +2 -2
  160. package/dist/esm/components/ScrollTo/Horizontal/ScrollToHorizontal.js.map +1 -1
  161. package/dist/esm/components/ScrollTo/Vertical/ScrollToVertical.js +2 -2
  162. package/dist/esm/components/ScrollTo/Vertical/ScrollToVertical.js.map +1 -1
  163. package/dist/esm/components/Tab/Tab.js +15 -10
  164. package/dist/esm/components/Tab/Tab.js.map +1 -1
  165. package/dist/esm/components/Tab/Tab.styles.js +53 -55
  166. package/dist/esm/components/Tab/Tab.styles.js.map +1 -1
  167. package/dist/esm/components/Tag/Tag.js +43 -29
  168. package/dist/esm/components/Tag/Tag.js.map +1 -1
  169. package/dist/esm/components/Tag/Tag.styles.js +90 -136
  170. package/dist/esm/components/Tag/Tag.styles.js.map +1 -1
  171. package/dist/esm/components/TagsInput/TagsInput.js +78 -51
  172. package/dist/esm/components/TagsInput/TagsInput.js.map +1 -1
  173. package/dist/esm/components/TagsInput/TagsInput.styles.js +173 -328
  174. package/dist/esm/components/TagsInput/TagsInput.styles.js.map +1 -1
  175. package/dist/esm/components/Tooltip/Tooltip.js +10 -7
  176. package/dist/esm/components/Tooltip/Tooltip.js.map +1 -1
  177. package/dist/esm/components/Tooltip/Tooltip.styles.js +28 -10
  178. package/dist/esm/components/Tooltip/Tooltip.styles.js.map +1 -1
  179. package/dist/esm/components/Typography/Typography.js +2 -2
  180. package/dist/esm/components/Typography/Typography.js.map +1 -1
  181. package/dist/esm/components/VerticalNavigation/NavigationSlider/NavigationSlider.styles.js +3 -3
  182. package/dist/esm/components/VerticalNavigation/NavigationSlider/NavigationSlider.styles.js.map +1 -1
  183. package/dist/esm/index.js +236 -236
  184. package/dist/types/index.d.ts +762 -685
  185. package/package.json +3 -3
  186. package/dist/cjs/components/Calendar/CalendarHeader/calendarHeaderClasses.cjs +0 -8
  187. package/dist/cjs/components/Calendar/CalendarHeader/calendarHeaderClasses.cjs.map +0 -1
  188. package/dist/cjs/components/Calendar/CalendarNavigation/ComposedNavigation/composedNavigationClasses.cjs +0 -8
  189. package/dist/cjs/components/Calendar/CalendarNavigation/ComposedNavigation/composedNavigationClasses.cjs.map +0 -1
  190. package/dist/cjs/components/Calendar/CalendarNavigation/MonthSelector/monthSelectorClasses.cjs +0 -8
  191. package/dist/cjs/components/Calendar/CalendarNavigation/MonthSelector/monthSelectorClasses.cjs.map +0 -1
  192. package/dist/cjs/components/Calendar/CalendarNavigation/Navigation/navigationClasses.cjs +0 -8
  193. package/dist/cjs/components/Calendar/CalendarNavigation/Navigation/navigationClasses.cjs.map +0 -1
  194. package/dist/cjs/components/Calendar/CalendarWeekLabels/calendarWeekLabelsClasses.cjs +0 -8
  195. package/dist/cjs/components/Calendar/CalendarWeekLabels/calendarWeekLabelsClasses.cjs.map +0 -1
  196. package/dist/cjs/components/Calendar/SingleCalendar/calendarCellClasses.cjs +0 -8
  197. package/dist/cjs/components/Calendar/SingleCalendar/calendarCellClasses.cjs.map +0 -1
  198. package/dist/cjs/components/Calendar/SingleCalendar/singleCalendarClasses.cjs +0 -8
  199. package/dist/cjs/components/Calendar/SingleCalendar/singleCalendarClasses.cjs.map +0 -1
  200. package/dist/cjs/components/Calendar/calendarClasses.cjs +0 -8
  201. package/dist/cjs/components/Calendar/calendarClasses.cjs.map +0 -1
  202. package/dist/cjs/components/Grid/gridClasses.cjs +0 -8
  203. package/dist/cjs/components/Grid/gridClasses.cjs.map +0 -1
  204. package/dist/cjs/components/Kpi/kpiClasses.cjs +0 -8
  205. package/dist/cjs/components/Kpi/kpiClasses.cjs.map +0 -1
  206. package/dist/cjs/components/Link/linkClasses.cjs +0 -8
  207. package/dist/cjs/components/Link/linkClasses.cjs.map +0 -1
  208. package/dist/cjs/components/ListContainer/ListItem/listItemClasses.cjs +0 -8
  209. package/dist/cjs/components/ListContainer/ListItem/listItemClasses.cjs.map +0 -1
  210. package/dist/cjs/components/ListContainer/listContainerClasses.cjs +0 -8
  211. package/dist/cjs/components/ListContainer/listContainerClasses.cjs.map +0 -1
  212. package/dist/cjs/components/OverflowTooltip/overflowTooltipClasses.cjs +0 -8
  213. package/dist/cjs/components/OverflowTooltip/overflowTooltipClasses.cjs.map +0 -1
  214. package/dist/cjs/components/Tab/tabClasses.cjs +0 -8
  215. package/dist/cjs/components/Tab/tabClasses.cjs.map +0 -1
  216. package/dist/cjs/components/Tag/tagClasses.cjs +0 -8
  217. package/dist/cjs/components/Tag/tagClasses.cjs.map +0 -1
  218. package/dist/cjs/components/TagsInput/tagsInputClasses.cjs +0 -8
  219. package/dist/cjs/components/TagsInput/tagsInputClasses.cjs.map +0 -1
  220. package/dist/cjs/components/Tooltip/tooltipClasses.cjs +0 -8
  221. package/dist/cjs/components/Tooltip/tooltipClasses.cjs.map +0 -1
  222. package/dist/esm/components/Calendar/CalendarHeader/calendarHeaderClasses.js +0 -8
  223. package/dist/esm/components/Calendar/CalendarHeader/calendarHeaderClasses.js.map +0 -1
  224. package/dist/esm/components/Calendar/CalendarNavigation/ComposedNavigation/composedNavigationClasses.js +0 -8
  225. package/dist/esm/components/Calendar/CalendarNavigation/ComposedNavigation/composedNavigationClasses.js.map +0 -1
  226. package/dist/esm/components/Calendar/CalendarNavigation/MonthSelector/monthSelectorClasses.js +0 -8
  227. package/dist/esm/components/Calendar/CalendarNavigation/MonthSelector/monthSelectorClasses.js.map +0 -1
  228. package/dist/esm/components/Calendar/CalendarNavigation/Navigation/navigationClasses.js +0 -8
  229. package/dist/esm/components/Calendar/CalendarNavigation/Navigation/navigationClasses.js.map +0 -1
  230. package/dist/esm/components/Calendar/CalendarWeekLabels/calendarWeekLabelsClasses.js +0 -8
  231. package/dist/esm/components/Calendar/CalendarWeekLabels/calendarWeekLabelsClasses.js.map +0 -1
  232. package/dist/esm/components/Calendar/SingleCalendar/calendarCellClasses.js +0 -8
  233. package/dist/esm/components/Calendar/SingleCalendar/calendarCellClasses.js.map +0 -1
  234. package/dist/esm/components/Calendar/SingleCalendar/singleCalendarClasses.js +0 -8
  235. package/dist/esm/components/Calendar/SingleCalendar/singleCalendarClasses.js.map +0 -1
  236. package/dist/esm/components/Calendar/calendarClasses.js +0 -8
  237. package/dist/esm/components/Calendar/calendarClasses.js.map +0 -1
  238. package/dist/esm/components/Grid/gridClasses.js +0 -8
  239. package/dist/esm/components/Grid/gridClasses.js.map +0 -1
  240. package/dist/esm/components/Kpi/kpiClasses.js +0 -8
  241. package/dist/esm/components/Kpi/kpiClasses.js.map +0 -1
  242. package/dist/esm/components/Link/linkClasses.js +0 -8
  243. package/dist/esm/components/Link/linkClasses.js.map +0 -1
  244. package/dist/esm/components/ListContainer/ListItem/listItemClasses.js +0 -8
  245. package/dist/esm/components/ListContainer/ListItem/listItemClasses.js.map +0 -1
  246. package/dist/esm/components/ListContainer/listContainerClasses.js +0 -8
  247. package/dist/esm/components/ListContainer/listContainerClasses.js.map +0 -1
  248. package/dist/esm/components/OverflowTooltip/overflowTooltipClasses.js +0 -8
  249. package/dist/esm/components/OverflowTooltip/overflowTooltipClasses.js.map +0 -1
  250. package/dist/esm/components/Tab/tabClasses.js +0 -8
  251. package/dist/esm/components/Tab/tabClasses.js.map +0 -1
  252. package/dist/esm/components/Tag/tagClasses.js +0 -8
  253. package/dist/esm/components/Tag/tagClasses.js.map +0 -1
  254. package/dist/esm/components/TagsInput/tagsInputClasses.js +0 -8
  255. package/dist/esm/components/TagsInput/tagsInputClasses.js.map +0 -1
  256. package/dist/esm/components/Tooltip/tooltipClasses.js +0 -8
  257. package/dist/esm/components/Tooltip/tooltipClasses.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ScrollToHorizontal.js","sources":["../../../../../src/components/ScrollTo/Horizontal/ScrollToHorizontal.tsx"],"sourcesContent":["import { useCallback, useMemo } from \"react\";\nimport { useDefaultProps } from \"@core/hooks/useDefaultProps\";\n\nimport { useTheme as useMuiTheme } from \"@mui/material/styles\";\nimport { useMediaQuery } from \"@mui/material\";\n\nimport { theme } from \"@hitachivantara/uikit-styles\";\nimport { CurrentStep } from \"@hitachivantara/uikit-react-icons\";\n\nimport { HvBaseProps } from \"@core/types/generic\";\nimport { useUniqueId } from \"@core/hooks/useUniqueId\";\nimport { useTheme } from \"@core/hooks/useTheme\";\nimport { ExtractNames } from \"@core/utils/classes\";\nimport { isKey } from \"@core/utils/keyboardUtils\";\nimport { setId } from \"@core/utils/setId\";\nimport { hexToRgbA } from \"@core/utils/hexToRgbA\";\n\nimport { HvScrollToTooltipPositions } from \"../types\";\nimport { withTooltip } from \"../withTooltip\";\nimport { HvHorizontalScrollListItem } from \"./HorizontalScrollListItem\";\nimport { useScrollTo } from \"../useScrollTo\";\nimport { staticClasses, useClasses } from \"./ScrollToHorizontal.styles\";\n\nexport { staticClasses as scrollToHorizontalClasses };\n\nexport type HvScrollToHorizontalClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvScrollToHorizontalOption {\n key?: string;\n label: string;\n value: string;\n offset?: number;\n}\n\nexport type HvScrollToHorizontalPositions = \"sticky\" | \"fixed\" | \"relative\";\n\nexport interface HvScrollToHorizontalProps\n extends HvBaseProps<HTMLOListElement, \"onChange\" | \"onClick\"> {\n /** An Array of Objects with Label and Value. Label is the displayed Element and Value is the local navigation location applied */\n options: HvScrollToHorizontalOption[];\n /** True if the href location link should be applied. It will create an a element around every list item */\n href?: boolean;\n /** Default selected index passed from the parent. */\n defaultSelectedIndex?: number;\n /**\n * The Id of the scrollable container containing displayed elements.\n *\n * Defaults to `window` if unspecified.\n */\n scrollElementId?: string;\n /**\n * Defines the offset from the top of each element for getting an optimal viewing region in the container.\n * This allows to exclude regions of the container that are obscured by other content (such as fixed-positioned toolbars or titles)\n * or to put more breathing room between the targeted element and the edges of the container.\n *\n * Each element can also have a specific offset via the options property.\n */\n offset?: number;\n /** Position of the Horizontal scroll to. */\n position?: HvScrollToHorizontalPositions;\n /** Position of tooltip identifying the current item. */\n tooltipPosition?: HvScrollToTooltipPositions;\n /** A function called each time the selected index changes. */\n onChange?: (\n event:\n | Event\n | React.MouseEvent<HTMLDivElement>\n | React.KeyboardEvent<HTMLDivElement>,\n index: number\n ) => void;\n /** A function called each time an user clicks on a tab element. */\n onClick?: (event: React.MouseEvent<HTMLDivElement>, index: number) => void;\n /** A function called each time an user press enter on a tab element. */\n onEnter?: (event: React.KeyboardEvent<HTMLDivElement>, index: number) => void;\n /** A Jss Object used to override or extend the styles applied. */\n classes?: HvScrollToHorizontalClasses;\n}\n\n/**\n * The horizontal scroll to element can be used to quickly navigate in a page.\n */\nexport const HvScrollToHorizontal = (props: HvScrollToHorizontalProps) => {\n const {\n id,\n defaultSelectedIndex = 0,\n scrollElementId,\n href = true,\n onChange,\n onClick,\n onEnter,\n className,\n classes: classesProp,\n options,\n offset = 0,\n position = \"relative\",\n tooltipPosition = \"top\",\n ...others\n } = useDefaultProps(\"HvScrollToHorizontal\", props);\n\n const { classes, css, cx } = useClasses(classesProp);\n const muiTheme = useMuiTheme();\n\n const downSm = useMediaQuery(muiTheme.breakpoints.down(\"sm\"));\n const upMd = useMediaQuery(muiTheme.breakpoints.up(\"md\"));\n\n const { activeTheme, selectedMode } = useTheme();\n\n const elementId = useUniqueId(id, \"hvHorizontalScrollto\");\n\n const [selectedIndex, setScrollTo] = useScrollTo(\n defaultSelectedIndex,\n scrollElementId,\n href,\n offset,\n options,\n onChange\n );\n\n const handleSelection = (\n event:\n | React.MouseEvent<HTMLDivElement>\n | React.KeyboardEvent<HTMLDivElement>,\n value: string,\n index: number\n ) => {\n event.preventDefault();\n\n const wrappedOnChange = () => {\n onChange?.(event, index);\n };\n\n setScrollTo(event, value, index, wrappedOnChange);\n };\n\n const tooltipWrappers = useMemo(() => {\n return options.map((option) => {\n return withTooltip(option.label, \"div\", tooltipPosition);\n });\n }, [options, tooltipPosition]);\n\n const NotSelected = useCallback(() => {\n return (\n <div className={classes.notSelectedRoot}>\n <div className={classes.notSelected} />\n </div>\n );\n }, [classes.notSelectedRoot, classes.notSelected]);\n\n const Selected = useCallback(() => {\n return (\n <CurrentStep\n height={activeTheme?.scrollTo.dotSelectedSize}\n width={activeTheme?.scrollTo.dotSelectedSize}\n className={classes.selected}\n />\n );\n }, [classes.selected, activeTheme?.scrollTo.dotSelectedSize]);\n\n const tabs = options.map((option, index) => {\n const selected = selectedIndex === index;\n const tooltipWrapper = tooltipWrappers[index];\n\n return (\n <HvHorizontalScrollListItem\n id={setId(elementId, `item-${index}`)}\n onClick={(event) => {\n handleSelection(event, option.value, index);\n onClick?.(event, index);\n }}\n onKeyDown={(event) => {\n if (isKey(event, \"Enter\") === true) {\n handleSelection(event, option.value, index);\n onEnter?.(event, index);\n }\n }}\n tooltipWrapper={tooltipWrapper}\n selected={selected}\n key={option.key || option.label}\n >\n <p>{option.label}</p>\n {selected ? <Selected /> : <NotSelected />}\n </HvHorizontalScrollListItem>\n );\n });\n\n return (\n <ol\n className={cx(\n css({\n width:\n position === \"fixed\" && (upMd || downSm)\n ? `calc(100% - 2*${theme.spacing(upMd ? 4 : 2)})`\n : \"100%\",\n marginTop: 0,\n marginBottom: 0,\n marginRight:\n position === \"fixed\" && (upMd || downSm)\n ? theme.spacing(upMd ? 4 : 2)\n : 0,\n marginLeft:\n position === \"fixed\" && (upMd || downSm)\n ? theme.spacing(upMd ? 4 : 2)\n : 0,\n backgroundColor: hexToRgbA(\n activeTheme?.colors.modes[selectedMode].atmo2,\n activeTheme?.scrollTo.backgroundColorOpacity\n ),\n }),\n className,\n classes.root,\n {\n [classes.positionSticky]: position === \"sticky\",\n [classes.positionFixed]: position === \"fixed\",\n }\n )}\n id={elementId}\n {...others}\n >\n {tabs}\n </ol>\n );\n};\n"],"names":["HvScrollToHorizontal","props","id","defaultSelectedIndex","scrollElementId","href","onChange","onClick","onEnter","className","classes","classesProp","options","offset","position","tooltipPosition","others","useDefaultProps","css","cx","useClasses","muiTheme","useMuiTheme","downSm","useMediaQuery","breakpoints","down","upMd","up","activeTheme","selectedMode","useTheme","elementId","useUniqueId","selectedIndex","setScrollTo","useScrollTo","handleSelection","event","value","index","preventDefault","wrappedOnChange","tooltipWrappers","useMemo","map","option","withTooltip","label","NotSelected","useCallback","notSelectedRoot","children","notSelected","Selected","CurrentStep","height","scrollTo","dotSelectedSize","width","selected","tabs","tooltipWrapper","HvHorizontalScrollListItem","setId","onKeyDown","isKey","_jsx","key","theme","spacing","marginTop","marginBottom","marginRight","marginLeft","backgroundColor","hexToRgbA","colors","modes","atmo2","backgroundColorOpacity","root","positionSticky","positionFixed"],"mappings":"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"}
1
+ {"version":3,"file":"ScrollToHorizontal.js","sources":["../../../../../src/components/ScrollTo/Horizontal/ScrollToHorizontal.tsx"],"sourcesContent":["import { useCallback, useMemo } from \"react\";\nimport { useDefaultProps } from \"@core/hooks/useDefaultProps\";\n\nimport { useTheme as useMuiTheme } from \"@mui/material/styles\";\nimport { useMediaQuery } from \"@mui/material\";\n\nimport { theme } from \"@hitachivantara/uikit-styles\";\nimport { CurrentStep } from \"@hitachivantara/uikit-react-icons\";\n\nimport { HvBaseProps } from \"@core/types/generic\";\nimport { useUniqueId } from \"@core/hooks/useUniqueId\";\nimport { useTheme } from \"@core/hooks/useTheme\";\nimport { ExtractNames } from \"@core/utils/classes\";\nimport { isKey } from \"@core/utils/keyboardUtils\";\nimport { setId } from \"@core/utils/setId\";\nimport { hexToRgbA } from \"@core/utils/hexToRgbA\";\n\nimport { HvScrollToTooltipPositions } from \"../types\";\nimport { withTooltip } from \"../withTooltip\";\nimport { HvHorizontalScrollListItem } from \"./HorizontalScrollListItem\";\nimport { useScrollTo } from \"../useScrollTo\";\nimport { staticClasses, useClasses } from \"./ScrollToHorizontal.styles\";\n\nexport { staticClasses as scrollToHorizontalClasses };\n\nexport type HvScrollToHorizontalClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvScrollToHorizontalOption {\n key?: string;\n label: string;\n value: string;\n offset?: number;\n}\n\nexport type HvScrollToHorizontalPositions = \"sticky\" | \"fixed\" | \"relative\";\n\nexport interface HvScrollToHorizontalProps\n extends HvBaseProps<HTMLOListElement, \"onChange\" | \"onClick\"> {\n /** An Array of Objects with Label and Value. Label is the displayed Element and Value is the local navigation location applied */\n options: HvScrollToHorizontalOption[];\n /** True if the href location link should be applied. It will create an a element around every list item */\n href?: boolean;\n /** Default selected index passed from the parent. */\n defaultSelectedIndex?: number;\n /**\n * The Id of the scrollable container containing displayed elements.\n *\n * Defaults to `window` if unspecified.\n */\n scrollElementId?: string;\n /**\n * Defines the offset from the top of each element for getting an optimal viewing region in the container.\n * This allows to exclude regions of the container that are obscured by other content (such as fixed-positioned toolbars or titles)\n * or to put more breathing room between the targeted element and the edges of the container.\n *\n * Each element can also have a specific offset via the options property.\n */\n offset?: number;\n /** Position of the Horizontal scroll to. */\n position?: HvScrollToHorizontalPositions;\n /** Position of tooltip identifying the current item. */\n tooltipPosition?: HvScrollToTooltipPositions;\n /** A function called each time the selected index changes. */\n onChange?: (\n event:\n | Event\n | React.MouseEvent<HTMLDivElement>\n | React.KeyboardEvent<HTMLDivElement>,\n index: number\n ) => void;\n /** A function called each time an user clicks on a tab element. */\n onClick?: (event: React.MouseEvent<HTMLDivElement>, index: number) => void;\n /** A function called each time an user press enter on a tab element. */\n onEnter?: (event: React.KeyboardEvent<HTMLDivElement>, index: number) => void;\n /** A Jss Object used to override or extend the styles applied. */\n classes?: HvScrollToHorizontalClasses;\n}\n\n/**\n * The horizontal scroll to element can be used to quickly navigate in a page.\n */\nexport const HvScrollToHorizontal = (props: HvScrollToHorizontalProps) => {\n const {\n id,\n defaultSelectedIndex = 0,\n scrollElementId,\n href = true,\n onChange,\n onClick,\n onEnter,\n className,\n classes: classesProp,\n options,\n offset = 0,\n position = \"relative\",\n tooltipPosition = \"top\",\n ...others\n } = useDefaultProps(\"HvScrollToHorizontal\", props);\n\n const { classes, css, cx } = useClasses(classesProp);\n const muiTheme = useMuiTheme();\n\n const downSm = useMediaQuery(muiTheme.breakpoints.down(\"sm\"));\n const upMd = useMediaQuery(muiTheme.breakpoints.up(\"md\"));\n\n const { activeTheme, selectedMode } = useTheme();\n\n const elementId = useUniqueId(id, \"hvHorizontalScrollto\");\n\n const [selectedIndex, setScrollTo] = useScrollTo(\n defaultSelectedIndex,\n scrollElementId,\n href,\n offset,\n options,\n onChange\n );\n\n const handleSelection = (\n event:\n | React.MouseEvent<HTMLDivElement>\n | React.KeyboardEvent<HTMLDivElement>,\n value: string,\n index: number\n ) => {\n event.preventDefault();\n\n const wrappedOnChange = () => {\n onChange?.(event, index);\n };\n\n setScrollTo(event, value, index, wrappedOnChange);\n };\n\n const tooltipWrappers = useMemo(() => {\n return options.map((option) => {\n return withTooltip(option.label, \"div\", tooltipPosition);\n });\n }, [options, tooltipPosition]);\n\n const NotSelected = useCallback(() => {\n return (\n <div className={classes.notSelectedRoot}>\n <div className={classes.notSelected} />\n </div>\n );\n }, [classes.notSelectedRoot, classes.notSelected]);\n\n const Selected = useCallback(() => {\n return (\n <CurrentStep\n height={activeTheme?.scrollTo.dotSelectedSize}\n width={activeTheme?.scrollTo.dotSelectedSize}\n className={classes.selected}\n />\n );\n }, [classes.selected, activeTheme?.scrollTo.dotSelectedSize]);\n\n const tabs = options.map((option, index) => {\n const selected = selectedIndex === index;\n const tooltipWrapper = tooltipWrappers[index];\n\n return (\n <HvHorizontalScrollListItem\n id={setId(elementId, `item-${index}`)}\n onClick={(event) => {\n handleSelection(event, option.value, index);\n onClick?.(event, index);\n }}\n onKeyDown={(event) => {\n if (isKey(event, \"Enter\") === true) {\n handleSelection(event, option.value, index);\n onEnter?.(event, index);\n }\n }}\n tooltipWrapper={tooltipWrapper}\n selected={selected}\n key={option.key || option.label}\n >\n <p>{option.label}</p>\n {selected ? <Selected /> : <NotSelected />}\n </HvHorizontalScrollListItem>\n );\n });\n\n return (\n <ol\n className={cx(\n css({\n width:\n position === \"fixed\" && (upMd || downSm)\n ? `calc(100% - 2*${theme.spacing(upMd ? 4 : 2)})`\n : \"100%\",\n marginTop: 0,\n marginBottom: 0,\n marginRight:\n position === \"fixed\" && (upMd || downSm)\n ? theme.spacing(upMd ? 4 : 2)\n : 0,\n marginLeft:\n position === \"fixed\" && (upMd || downSm)\n ? theme.spacing(upMd ? 4 : 2)\n : 0,\n backgroundColor: hexToRgbA(\n activeTheme?.colors.modes[selectedMode].atmo2,\n activeTheme?.scrollTo.backgroundColorOpacity\n ),\n }),\n classes.root,\n {\n [classes.positionSticky]: position === \"sticky\",\n [classes.positionFixed]: position === \"fixed\",\n },\n className\n )}\n id={elementId}\n {...others}\n >\n {tabs}\n </ol>\n );\n};\n"],"names":["HvScrollToHorizontal","props","id","defaultSelectedIndex","scrollElementId","href","onChange","onClick","onEnter","className","classes","classesProp","options","offset","position","tooltipPosition","others","useDefaultProps","css","cx","useClasses","muiTheme","useMuiTheme","downSm","useMediaQuery","breakpoints","down","upMd","up","activeTheme","selectedMode","useTheme","elementId","useUniqueId","selectedIndex","setScrollTo","useScrollTo","handleSelection","event","value","index","preventDefault","wrappedOnChange","tooltipWrappers","useMemo","map","option","withTooltip","label","NotSelected","useCallback","notSelectedRoot","children","notSelected","Selected","CurrentStep","height","scrollTo","dotSelectedSize","width","selected","tabs","tooltipWrapper","HvHorizontalScrollListItem","setId","onKeyDown","isKey","_jsx","key","theme","spacing","marginTop","marginBottom","marginRight","marginLeft","backgroundColor","hexToRgbA","colors","modes","atmo2","backgroundColorOpacity","root","positionSticky","positionFixed"],"mappings":";;;;;;;;;;;;;;;;;AAiFaA,MAAAA,uBAAuBA,CAACC,UAAqC;AAClE,QAAA;AAAA,IACJC;AAAAA,IACAC,uBAAuB;AAAA,IACvBC;AAAAA,IACAC,OAAO;AAAA,IACPC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC,SAASC;AAAAA,IACTC;AAAAA,IACAC,SAAS;AAAA,IACTC,WAAW;AAAA,IACXC,kBAAkB;AAAA,IAClB,GAAGC;AAAAA,EAAAA,IACDC,gBAAgB,wBAAwBhB,KAAK;AAE3C,QAAA;AAAA,IAAES;AAAAA,IAASQ;AAAAA,IAAKC;AAAAA,EAAAA,IAAOC,WAAWT,WAAW;AACnD,QAAMU,WAAWC;AAEjB,QAAMC,SAASC,cAAcH,SAASI,YAAYC,KAAK,IAAI,CAAC;AAC5D,QAAMC,OAAOH,cAAcH,SAASI,YAAYG,GAAG,IAAI,CAAC;AAElD,QAAA;AAAA,IAAEC;AAAAA,IAAaC;AAAAA,MAAiBC,WAAS;AAEzCC,QAAAA,YAAYC,YAAY/B,IAAI,sBAAsB;AAElD,QAAA,CAACgC,eAAeC,WAAW,IAAIC,YACnCjC,sBACAC,iBACAC,MACAQ,QACAD,SACAN,QACF;AAEA,QAAM+B,kBAAkBA,CACtBC,OAGAC,OACAC,UACG;AACHF,UAAMG,eAAe;AAErB,UAAMC,kBAAkBA,MAAM;AAC5BpC,2CAAWgC,OAAOE;AAAAA,IAAK;AAGbF,gBAAAA,OAAOC,OAAOC,OAAOE,eAAe;AAAA,EAAA;AAG5CC,QAAAA,kBAAkBC,QAAQ,MAAM;AAC7BhC,WAAAA,QAAQiC,IAAKC,CAAW,WAAA;AAC7B,aAAOC,YAAYD,OAAOE,OAAO,OAAOjC,eAAe;AAAA,IAAA,CACxD;AAAA,EAAA,GACA,CAACH,SAASG,eAAe,CAAC;AAEvBkC,QAAAA,cAAcC,YAAY,MAAM;AACpC,+BACE,OAAA;AAAA,MAAKzC,WAAWC,QAAQyC;AAAAA,MAAgBC,8BACtC,OAAA;AAAA,QAAK3C,WAAWC,QAAQ2C;AAAAA,MAAAA,CAAc;AAAA,IAAA,CACnC;AAAA,KAEN,CAAC3C,QAAQyC,iBAAiBzC,QAAQ2C,WAAW,CAAC;AAE3CC,QAAAA,WAAWJ,YAAY,MAAM;AACjC,+BACGK,aAAW;AAAA,MACVC,QAAQ3B,2CAAa4B,SAASC;AAAAA,MAC9BC,OAAO9B,2CAAa4B,SAASC;AAAAA,MAC7BjD,WAAWC,QAAQkD;AAAAA,IAAAA,CACpB;AAAA,EAAA,GAEF,CAAClD,QAAQkD,UAAU/B,2CAAa4B,SAASC,eAAe,CAAC;AAE5D,QAAMG,OAAOjD,QAAQiC,IAAI,CAACC,QAAQN,UAAU;AAC1C,UAAMoB,WAAW1B,kBAAkBM;AAC7BsB,UAAAA,iBAAiBnB,gBAAgBH,KAAK;AAE5C,gCACGuB,4BAA0B;AAAA,MACzB7D,IAAI8D,MAAMhC,WAAY,QAAOQ,OAAO;AAAA,MACpCjC,SAAU+B,CAAU,UAAA;AACFA,wBAAAA,OAAOQ,OAAOP,OAAOC,KAAK;AAC1CjC,2CAAU+B,OAAOE;AAAAA,MACnB;AAAA,MACAyB,WAAY3B,CAAU,UAAA;AACpB,YAAI4B,MAAM5B,OAAO,OAAO,MAAM,MAAM;AAClBA,0BAAAA,OAAOQ,OAAOP,OAAOC,KAAK;AAC1ChC,6CAAU8B,OAAOE;AAAAA,QACnB;AAAA,MACF;AAAA,MACAsB;AAAAA,MACAF;AAAAA,MAAmBR,WAGnBe,oBAAA,KAAA;AAAA,QAAAf,UAAIN,OAAOE;AAAAA,MAAAA,CAAS,GACnBY,WAAWO,oBAACb,UAAU,CAAA,CAAA,IAAKL,oBAAAA,eAAa,CAAC;AAAA,IAHrCH,GAAAA,OAAOsB,OAAOtB,OAAOE,KAIA;AAAA,EAAA,CAE/B;AAED,6BACE,MAAA;AAAA,IACEvC,WAAWU,GACTD,IAAI;AAAA,MACFyC,OACE7C,aAAa,YAAYa,QAAQJ,UAC5B,iBAAgB8C,MAAMC,QAAQ3C,OAAO,IAAI,CAAC,OAC3C;AAAA,MACN4C,WAAW;AAAA,MACXC,cAAc;AAAA,MACdC,aACE3D,aAAa,YAAYa,QAAQJ,UAC7B8C,MAAMC,QAAQ3C,OAAO,IAAI,CAAC,IAC1B;AAAA,MACN+C,YACE5D,aAAa,YAAYa,QAAQJ,UAC7B8C,MAAMC,QAAQ3C,OAAO,IAAI,CAAC,IAC1B;AAAA,MACNgD,iBAAiBC,UACf/C,2CAAagD,OAAOC,MAAMhD,cAAciD,OACxClD,2CAAa4B,SAASuB,sBACxB;AAAA,IAAA,CACD,GACDtE,QAAQuE,MACR;AAAA,MACE,CAACvE,QAAQwE,cAAc,GAAGpE,aAAa;AAAA,MACvC,CAACJ,QAAQyE,aAAa,GAAGrE,aAAa;AAAA,OAExCL,SACF;AAAA,IACAP,IAAI8B;AAAAA,IAAU,GACVhB;AAAAA,IAAMoC,UAETS;AAAAA,EAAAA,CACC;AAER;"}
@@ -77,10 +77,10 @@ const HvScrollToVertical = (props) => {
77
77
  return /* @__PURE__ */ jsx("ol", {
78
78
  className: cx(css({
79
79
  backgroundColor
80
- }), className, classes.root, {
80
+ }), classes.root, {
81
81
  [classes.positionFixed]: position === "fixed",
82
82
  [classes.positionAbsolute]: position === "absolute"
83
- }),
83
+ }, className),
84
84
  style: {
85
85
  top: `calc(50% - ${positionOffset}px)`,
86
86
  ...style
@@ -1 +1 @@
1
- {"version":3,"file":"ScrollToVertical.js","sources":["../../../../../src/components/ScrollTo/Vertical/ScrollToVertical.tsx"],"sourcesContent":["import { useMemo } from \"react\";\nimport { useDefaultProps } from \"@core/hooks/useDefaultProps\";\n\nimport { HvBaseProps } from \"@core/types/generic\";\nimport { useTheme } from \"@core/hooks/useTheme\";\nimport { useUniqueId } from \"@core/hooks/useUniqueId\";\nimport { ExtractNames } from \"@core/utils/classes\";\nimport { isKey } from \"@core/utils/keyboardUtils\";\nimport { setId } from \"@core/utils/setId\";\nimport { hexToRgbA } from \"@core/utils/hexToRgbA\";\n\nimport {\n staticClasses,\n useClasses,\n calculateOffset,\n} from \"./ScrollToVertical.styles\";\nimport { HvVerticalScrollListItem } from \"./VerticalScrollListItem\";\nimport { useScrollTo } from \"../useScrollTo\";\nimport { withTooltip } from \"../withTooltip\";\nimport {\n HvScrollToTooltipPositions,\n HvScrollToVerticalOption,\n HvScrollToVerticalPositions,\n} from \"../types\";\n\nexport { staticClasses as scrollToVerticalClasses };\n\nexport type HvScrollToVerticalClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvScrollToVerticalProps\n extends HvBaseProps<HTMLOListElement, \"onChange\" | \"onClick\"> {\n /** An Array of Objects with Label and Value. Label is the displayed Element and Value is the local navigation location applied */\n options: HvScrollToVerticalOption[];\n /** True if the href location link should be applied. It will create an a element around every list item */\n href?: boolean;\n /** Default selected index passed from the parent. */\n defaultSelectedIndex?: number;\n /**\n * The Id of the scrollable container containing displayed elements.\n *\n * Defaults to `window` if unspecified.\n */\n scrollElementId?: string;\n /**\n * Defines the offset from the top of each element for getting an optimal viewing region in the container.\n * This allows to exclude regions of the container that are obscured by other content (such as fixed-positioned toolbars or titles)\n * or to put more breathing room between the targeted element and the edges of the container.\n *\n * Each element can also have a specific offset via the options property.\n */\n offset?: number;\n /** Position of the Vertical scroll to. */\n position?: HvScrollToVerticalPositions;\n /** Position of tooltip identifying the current item. */\n tooltipPosition?: HvScrollToTooltipPositions;\n /** A function called each time the selected index changes. */\n onChange?: (\n event:\n | Event\n | React.MouseEvent<HTMLDivElement>\n | React.KeyboardEvent<HTMLDivElement>,\n index: number\n ) => void;\n /** A function called each time an user clicks on a tab element. */\n onClick?: (event: React.MouseEvent<HTMLDivElement>, index: number) => void;\n /** A function called each time an user press enter on a tab element. */\n onEnter?: (event: React.KeyboardEvent<HTMLDivElement>, index: number) => void;\n /** A Jss Object used to override or extend the styles applied. */\n classes?: HvScrollToVerticalClasses;\n}\n\n/**\n * The vertical scroll to element can be used to quickly navigate in a page.\n */\nexport const HvScrollToVertical = (props: HvScrollToVerticalProps) => {\n const {\n id,\n defaultSelectedIndex = 0,\n scrollElementId,\n href = true,\n onChange,\n onClick,\n onEnter,\n className,\n classes: classesProp,\n options,\n offset = 0,\n position = \"relative\",\n tooltipPosition = \"left\",\n style,\n ...others\n } = useDefaultProps(\"HvScrollToVertical\", props);\n\n const { classes, css, cx } = useClasses(classesProp);\n const { activeTheme, selectedMode } = useTheme();\n\n const elementId = useUniqueId(id, \"hvVerticalScrollto\");\n\n const [selectedIndex, setScrollTo] = useScrollTo(\n defaultSelectedIndex,\n scrollElementId,\n href,\n offset,\n options,\n onChange\n );\n\n const handleSelection = (\n event:\n | React.MouseEvent<HTMLDivElement>\n | React.KeyboardEvent<HTMLDivElement>,\n value: string,\n index: number\n ) => {\n event.preventDefault();\n\n const wrappedOnChange = () => {\n onChange?.(event, index);\n };\n\n setScrollTo(event, value, index, wrappedOnChange);\n };\n\n const tooltipWrappers = useMemo(() => {\n return options.map((option) => {\n return withTooltip(option.label, \"div\", tooltipPosition, false);\n });\n }, [options, tooltipPosition]);\n\n const tabs = options.map((option, index) => {\n const selected = selectedIndex === index;\n const tooltipWrapper = tooltipWrappers[index];\n\n return (\n <HvVerticalScrollListItem\n id={setId(elementId, `item-${index}`)}\n onClick={(event) => {\n handleSelection(event, option.value, index);\n onClick?.(event, index);\n }}\n onKeyDown={(event) => {\n if (isKey(event, \"Enter\") === true) {\n handleSelection(event, option.value, index);\n onEnter?.(event, index);\n }\n }}\n tooltipWrapper={tooltipWrapper}\n selected={selected}\n key={option.key || option.label}\n aria-label={option.label}\n />\n );\n });\n\n const positionOffset = calculateOffset(options.length);\n const backgroundColor = hexToRgbA(\n activeTheme?.colors.modes[selectedMode].atmo2,\n activeTheme?.scrollTo.backgroundColorOpacity\n );\n\n return (\n <ol\n className={cx(css({ backgroundColor }), className, classes.root, {\n [classes.positionFixed]: position === \"fixed\",\n [classes.positionAbsolute]: position === \"absolute\",\n })}\n style={{ top: `calc(50% - ${positionOffset}px)`, ...style }}\n id={elementId}\n {...others}\n >\n {tabs}\n </ol>\n );\n};\n"],"names":["HvScrollToVertical","props","id","defaultSelectedIndex","scrollElementId","href","onChange","onClick","onEnter","className","classes","classesProp","options","offset","position","tooltipPosition","style","others","useDefaultProps","css","cx","useClasses","activeTheme","selectedMode","useTheme","elementId","useUniqueId","selectedIndex","setScrollTo","useScrollTo","handleSelection","event","value","index","preventDefault","wrappedOnChange","tooltipWrappers","useMemo","map","option","withTooltip","label","tabs","selected","tooltipWrapper","HvVerticalScrollListItem","setId","onKeyDown","isKey","key","positionOffset","calculateOffset","length","backgroundColor","hexToRgbA","colors","modes","atmo2","scrollTo","backgroundColorOpacity","root","positionFixed","positionAbsolute","top","children"],"mappings":";;;;;;;;;;;;;AA0EaA,MAAAA,qBAAqBA,CAACC,UAAmC;AAC9D,QAAA;AAAA,IACJC;AAAAA,IACAC,uBAAuB;AAAA,IACvBC;AAAAA,IACAC,OAAO;AAAA,IACPC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC,SAASC;AAAAA,IACTC;AAAAA,IACAC,SAAS;AAAA,IACTC,WAAW;AAAA,IACXC,kBAAkB;AAAA,IAClBC;AAAAA,IACA,GAAGC;AAAAA,EAAAA,IACDC,gBAAgB,sBAAsBjB,KAAK;AAEzC,QAAA;AAAA,IAAES;AAAAA,IAASS;AAAAA,IAAKC;AAAAA,EAAAA,IAAOC,WAAWV,WAAW;AAC7C,QAAA;AAAA,IAAEW;AAAAA,IAAaC;AAAAA,MAAiBC,SAAS;AAEzCC,QAAAA,YAAYC,YAAYxB,IAAI,oBAAoB;AAEhD,QAAA,CAACyB,eAAeC,WAAW,IAAIC,YACnC1B,sBACAC,iBACAC,MACAQ,QACAD,SACAN,QACF;AAEA,QAAMwB,kBAAkBA,CACtBC,OAGAC,OACAC,UACG;AACHF,UAAMG,eAAe;AAErB,UAAMC,kBAAkBA,MAAM;AAC5B7B,2CAAWyB,OAAOE;AAAAA,IAAK;AAGbF,gBAAAA,OAAOC,OAAOC,OAAOE,eAAe;AAAA,EAAA;AAG5CC,QAAAA,kBAAkBC,QAAQ,MAAM;AAC7BzB,WAAAA,QAAQ0B,IAAKC,CAAW,WAAA;AAC7B,aAAOC,YAAYD,OAAOE,OAAO,OAAO1B,iBAAiB,KAAK;AAAA,IAAA,CAC/D;AAAA,EAAA,GACA,CAACH,SAASG,eAAe,CAAC;AAE7B,QAAM2B,OAAO9B,QAAQ0B,IAAI,CAACC,QAAQN,UAAU;AAC1C,UAAMU,WAAWhB,kBAAkBM;AAC7BW,UAAAA,iBAAiBR,gBAAgBH,KAAK;AAE5C,+BACGY,0BAAwB;AAAA,MACvB3C,IAAI4C,MAAMrB,WAAY,QAAOQ,OAAO;AAAA,MACpC1B,SAAUwB,CAAU,UAAA;AACFA,wBAAAA,OAAOQ,OAAOP,OAAOC,KAAK;AAC1C1B,2CAAUwB,OAAOE;AAAAA,MACnB;AAAA,MACAc,WAAYhB,CAAU,UAAA;AACpB,YAAIiB,MAAMjB,OAAO,OAAO,MAAM,MAAM;AAClBA,0BAAAA,OAAOQ,OAAOP,OAAOC,KAAK;AAC1CzB,6CAAUuB,OAAOE;AAAAA,QACnB;AAAA,MACF;AAAA,MACAW;AAAAA,MACAD;AAAAA,MAEA,cAAYJ,OAAOE;AAAAA,IADdF,GAAAA,OAAOU,OAAOV,OAAOE,KAE3B;AAAA,EAAA,CAEJ;AAEKS,QAAAA,iBAAiBC,gBAAgBvC,QAAQwC,MAAM;AAC/CC,QAAAA,kBAAkBC,UACtBhC,2CAAaiC,OAAOC,MAAMjC,cAAckC,OACxCnC,2CAAaoC,SAASC,sBACxB;AAEA,6BACE,MAAA;AAAA,IACElD,WAAWW,GAAGD,IAAI;AAAA,MAAEkC;AAAAA,IAAAA,CAAiB,GAAG5C,WAAWC,QAAQkD,MAAM;AAAA,MAC/D,CAAClD,QAAQmD,aAAa,GAAG/C,aAAa;AAAA,MACtC,CAACJ,QAAQoD,gBAAgB,GAAGhD,aAAa;AAAA,IAAA,CAC1C;AAAA,IACDE,OAAO;AAAA,MAAE+C,KAAM,cAAab;AAAAA,MAAqB,GAAGlC;AAAAA,IAAM;AAAA,IAC1Dd,IAAIuB;AAAAA,IAAU,GACVR;AAAAA,IAAM+C,UAETtB;AAAAA,EAAAA,CACC;AAER;"}
1
+ {"version":3,"file":"ScrollToVertical.js","sources":["../../../../../src/components/ScrollTo/Vertical/ScrollToVertical.tsx"],"sourcesContent":["import { useMemo } from \"react\";\nimport { useDefaultProps } from \"@core/hooks/useDefaultProps\";\n\nimport { HvBaseProps } from \"@core/types/generic\";\nimport { useTheme } from \"@core/hooks/useTheme\";\nimport { useUniqueId } from \"@core/hooks/useUniqueId\";\nimport { ExtractNames } from \"@core/utils/classes\";\nimport { isKey } from \"@core/utils/keyboardUtils\";\nimport { setId } from \"@core/utils/setId\";\nimport { hexToRgbA } from \"@core/utils/hexToRgbA\";\n\nimport {\n staticClasses,\n useClasses,\n calculateOffset,\n} from \"./ScrollToVertical.styles\";\nimport { HvVerticalScrollListItem } from \"./VerticalScrollListItem\";\nimport { useScrollTo } from \"../useScrollTo\";\nimport { withTooltip } from \"../withTooltip\";\nimport {\n HvScrollToTooltipPositions,\n HvScrollToVerticalOption,\n HvScrollToVerticalPositions,\n} from \"../types\";\n\nexport { staticClasses as scrollToVerticalClasses };\n\nexport type HvScrollToVerticalClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvScrollToVerticalProps\n extends HvBaseProps<HTMLOListElement, \"onChange\" | \"onClick\"> {\n /** An Array of Objects with Label and Value. Label is the displayed Element and Value is the local navigation location applied */\n options: HvScrollToVerticalOption[];\n /** True if the href location link should be applied. It will create an a element around every list item */\n href?: boolean;\n /** Default selected index passed from the parent. */\n defaultSelectedIndex?: number;\n /**\n * The Id of the scrollable container containing displayed elements.\n *\n * Defaults to `window` if unspecified.\n */\n scrollElementId?: string;\n /**\n * Defines the offset from the top of each element for getting an optimal viewing region in the container.\n * This allows to exclude regions of the container that are obscured by other content (such as fixed-positioned toolbars or titles)\n * or to put more breathing room between the targeted element and the edges of the container.\n *\n * Each element can also have a specific offset via the options property.\n */\n offset?: number;\n /** Position of the Vertical scroll to. */\n position?: HvScrollToVerticalPositions;\n /** Position of tooltip identifying the current item. */\n tooltipPosition?: HvScrollToTooltipPositions;\n /** A function called each time the selected index changes. */\n onChange?: (\n event:\n | Event\n | React.MouseEvent<HTMLDivElement>\n | React.KeyboardEvent<HTMLDivElement>,\n index: number\n ) => void;\n /** A function called each time an user clicks on a tab element. */\n onClick?: (event: React.MouseEvent<HTMLDivElement>, index: number) => void;\n /** A function called each time an user press enter on a tab element. */\n onEnter?: (event: React.KeyboardEvent<HTMLDivElement>, index: number) => void;\n /** A Jss Object used to override or extend the styles applied. */\n classes?: HvScrollToVerticalClasses;\n}\n\n/**\n * The vertical scroll to element can be used to quickly navigate in a page.\n */\nexport const HvScrollToVertical = (props: HvScrollToVerticalProps) => {\n const {\n id,\n defaultSelectedIndex = 0,\n scrollElementId,\n href = true,\n onChange,\n onClick,\n onEnter,\n className,\n classes: classesProp,\n options,\n offset = 0,\n position = \"relative\",\n tooltipPosition = \"left\",\n style,\n ...others\n } = useDefaultProps(\"HvScrollToVertical\", props);\n\n const { classes, css, cx } = useClasses(classesProp);\n const { activeTheme, selectedMode } = useTheme();\n\n const elementId = useUniqueId(id, \"hvVerticalScrollto\");\n\n const [selectedIndex, setScrollTo] = useScrollTo(\n defaultSelectedIndex,\n scrollElementId,\n href,\n offset,\n options,\n onChange\n );\n\n const handleSelection = (\n event:\n | React.MouseEvent<HTMLDivElement>\n | React.KeyboardEvent<HTMLDivElement>,\n value: string,\n index: number\n ) => {\n event.preventDefault();\n\n const wrappedOnChange = () => {\n onChange?.(event, index);\n };\n\n setScrollTo(event, value, index, wrappedOnChange);\n };\n\n const tooltipWrappers = useMemo(() => {\n return options.map((option) => {\n return withTooltip(option.label, \"div\", tooltipPosition, false);\n });\n }, [options, tooltipPosition]);\n\n const tabs = options.map((option, index) => {\n const selected = selectedIndex === index;\n const tooltipWrapper = tooltipWrappers[index];\n\n return (\n <HvVerticalScrollListItem\n id={setId(elementId, `item-${index}`)}\n onClick={(event) => {\n handleSelection(event, option.value, index);\n onClick?.(event, index);\n }}\n onKeyDown={(event) => {\n if (isKey(event, \"Enter\") === true) {\n handleSelection(event, option.value, index);\n onEnter?.(event, index);\n }\n }}\n tooltipWrapper={tooltipWrapper}\n selected={selected}\n key={option.key || option.label}\n aria-label={option.label}\n />\n );\n });\n\n const positionOffset = calculateOffset(options.length);\n const backgroundColor = hexToRgbA(\n activeTheme?.colors.modes[selectedMode].atmo2,\n activeTheme?.scrollTo.backgroundColorOpacity\n );\n\n return (\n <ol\n className={cx(\n css({ backgroundColor }),\n classes.root,\n {\n [classes.positionFixed]: position === \"fixed\",\n [classes.positionAbsolute]: position === \"absolute\",\n },\n className\n )}\n style={{ top: `calc(50% - ${positionOffset}px)`, ...style }}\n id={elementId}\n {...others}\n >\n {tabs}\n </ol>\n );\n};\n"],"names":["HvScrollToVertical","props","id","defaultSelectedIndex","scrollElementId","href","onChange","onClick","onEnter","className","classes","classesProp","options","offset","position","tooltipPosition","style","others","useDefaultProps","css","cx","useClasses","activeTheme","selectedMode","useTheme","elementId","useUniqueId","selectedIndex","setScrollTo","useScrollTo","handleSelection","event","value","index","preventDefault","wrappedOnChange","tooltipWrappers","useMemo","map","option","withTooltip","label","tabs","selected","tooltipWrapper","HvVerticalScrollListItem","setId","onKeyDown","isKey","key","positionOffset","calculateOffset","length","backgroundColor","hexToRgbA","colors","modes","atmo2","scrollTo","backgroundColorOpacity","root","positionFixed","positionAbsolute","top","children"],"mappings":";;;;;;;;;;;;;AA0EaA,MAAAA,qBAAqBA,CAACC,UAAmC;AAC9D,QAAA;AAAA,IACJC;AAAAA,IACAC,uBAAuB;AAAA,IACvBC;AAAAA,IACAC,OAAO;AAAA,IACPC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC,SAASC;AAAAA,IACTC;AAAAA,IACAC,SAAS;AAAA,IACTC,WAAW;AAAA,IACXC,kBAAkB;AAAA,IAClBC;AAAAA,IACA,GAAGC;AAAAA,EAAAA,IACDC,gBAAgB,sBAAsBjB,KAAK;AAEzC,QAAA;AAAA,IAAES;AAAAA,IAASS;AAAAA,IAAKC;AAAAA,EAAAA,IAAOC,WAAWV,WAAW;AAC7C,QAAA;AAAA,IAAEW;AAAAA,IAAaC;AAAAA,MAAiBC,SAAS;AAEzCC,QAAAA,YAAYC,YAAYxB,IAAI,oBAAoB;AAEhD,QAAA,CAACyB,eAAeC,WAAW,IAAIC,YACnC1B,sBACAC,iBACAC,MACAQ,QACAD,SACAN,QACF;AAEA,QAAMwB,kBAAkBA,CACtBC,OAGAC,OACAC,UACG;AACHF,UAAMG,eAAe;AAErB,UAAMC,kBAAkBA,MAAM;AAC5B7B,2CAAWyB,OAAOE;AAAAA,IAAK;AAGbF,gBAAAA,OAAOC,OAAOC,OAAOE,eAAe;AAAA,EAAA;AAG5CC,QAAAA,kBAAkBC,QAAQ,MAAM;AAC7BzB,WAAAA,QAAQ0B,IAAKC,CAAW,WAAA;AAC7B,aAAOC,YAAYD,OAAOE,OAAO,OAAO1B,iBAAiB,KAAK;AAAA,IAAA,CAC/D;AAAA,EAAA,GACA,CAACH,SAASG,eAAe,CAAC;AAE7B,QAAM2B,OAAO9B,QAAQ0B,IAAI,CAACC,QAAQN,UAAU;AAC1C,UAAMU,WAAWhB,kBAAkBM;AAC7BW,UAAAA,iBAAiBR,gBAAgBH,KAAK;AAE5C,+BACGY,0BAAwB;AAAA,MACvB3C,IAAI4C,MAAMrB,WAAY,QAAOQ,OAAO;AAAA,MACpC1B,SAAUwB,CAAU,UAAA;AACFA,wBAAAA,OAAOQ,OAAOP,OAAOC,KAAK;AAC1C1B,2CAAUwB,OAAOE;AAAAA,MACnB;AAAA,MACAc,WAAYhB,CAAU,UAAA;AACpB,YAAIiB,MAAMjB,OAAO,OAAO,MAAM,MAAM;AAClBA,0BAAAA,OAAOQ,OAAOP,OAAOC,KAAK;AAC1CzB,6CAAUuB,OAAOE;AAAAA,QACnB;AAAA,MACF;AAAA,MACAW;AAAAA,MACAD;AAAAA,MAEA,cAAYJ,OAAOE;AAAAA,IADdF,GAAAA,OAAOU,OAAOV,OAAOE,KAE3B;AAAA,EAAA,CAEJ;AAEKS,QAAAA,iBAAiBC,gBAAgBvC,QAAQwC,MAAM;AAC/CC,QAAAA,kBAAkBC,UACtBhC,2CAAaiC,OAAOC,MAAMjC,cAAckC,OACxCnC,2CAAaoC,SAASC,sBACxB;AAEA,6BACE,MAAA;AAAA,IACElD,WAAWW,GACTD,IAAI;AAAA,MAAEkC;AAAAA,IAAAA,CAAiB,GACvB3C,QAAQkD,MACR;AAAA,MACE,CAAClD,QAAQmD,aAAa,GAAG/C,aAAa;AAAA,MACtC,CAACJ,QAAQoD,gBAAgB,GAAGhD,aAAa;AAAA,OAE3CL,SACF;AAAA,IACAO,OAAO;AAAA,MAAE+C,KAAM,cAAab;AAAAA,MAAqB,GAAGlC;AAAAA,IAAM;AAAA,IAC1Dd,IAAIuB;AAAAA,IAAU,GACVR;AAAAA,IAAM+C,UAETtB;AAAAA,EAAAA,CACC;AAER;"}
@@ -1,30 +1,35 @@
1
+ import { Tab } from "@mui/material";
1
2
  import { useDefaultProps } from "../../hooks/useDefaultProps.js";
2
- import { clsx } from "clsx";
3
- import { StyledTab } from "./Tab.styles.js";
4
- import tabClasses from "./tabClasses.js";
3
+ import { useClasses } from "./Tab.styles.js";
4
+ import { staticClasses } from "./Tab.styles.js";
5
5
  import { jsx } from "@emotion/react/jsx-runtime";
6
6
  const HvTab = (props) => {
7
7
  const {
8
- classes,
8
+ classes: classesProp,
9
9
  iconPosition = "top",
10
10
  disabled = false,
11
11
  ...others
12
12
  } = useDefaultProps("HvTab", props);
13
- return /* @__PURE__ */ jsx(StyledTab, {
13
+ const {
14
+ classes,
15
+ cx
16
+ } = useClasses(classesProp);
17
+ return /* @__PURE__ */ jsx(Tab, {
14
18
  classes: {
15
- root: clsx(tabClasses.root, classes == null ? void 0 : classes.root),
16
- selected: clsx(tabClasses.selected, classes == null ? void 0 : classes.selected),
17
- disabled: clsx(tabClasses.disabled, classes == null ? void 0 : classes.disabled)
19
+ root: classes.root,
20
+ selected: classes.selected,
21
+ disabled: classes.disabled
18
22
  },
19
23
  disableRipple: true,
20
24
  disableTouchRipple: true,
21
- focusVisibleClassName: clsx("HvIsFocusVisible", clsx(tabClasses.focusVisible, classes == null ? void 0 : classes.focusVisible)),
25
+ focusVisibleClassName: cx("HvIsFocusVisible", classes.focusVisible),
22
26
  disabled,
23
27
  iconPosition,
24
28
  ...others
25
29
  });
26
30
  };
27
31
  export {
28
- HvTab
32
+ HvTab,
33
+ staticClasses as tabClasses
29
34
  };
30
35
  //# sourceMappingURL=Tab.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Tab.js","sources":["../../../../src/components/Tab/Tab.tsx"],"sourcesContent":["import { TabProps as MuiTabProps } from \"@mui/material\";\nimport { useDefaultProps } from \"@core/hooks/useDefaultProps\";\n\nimport { clsx } from \"clsx\";\n\nimport { HvBaseProps } from \"@core/types/generic\";\n\nimport { StyledTab } from \"./Tab.styles\";\nimport tabClasses, { HvTabClasses } from \"./tabClasses\";\n\n// Mui Tab props: https://mui.com/material-ui/api/tab/#props\nexport interface HvTabProps\n extends Omit<MuiTabProps, \"children\">,\n HvBaseProps<HTMLDivElement, \"children\"> {\n /** If `true`, the tab will be disabled. */\n disabled?: boolean;\n /** The icon element. */\n icon?: React.ReactElement | string;\n /** The label element. */\n label?: React.ReactNode;\n /** The position of the icon relative to the label. */\n iconPosition?: \"bottom\" | \"end\" | \"start\" | \"top\";\n /** A Jss Object used to override or extend the component styles. */\n classes?: HvTabClasses;\n}\n\nexport const HvTab = (props: HvTabProps) => {\n const {\n classes,\n iconPosition = \"top\",\n disabled = false,\n ...others\n } = useDefaultProps(\"HvTab\", props);\n\n return (\n <StyledTab\n classes={{\n root: clsx(tabClasses.root, classes?.root),\n selected: clsx(tabClasses.selected, classes?.selected),\n disabled: clsx(tabClasses.disabled, classes?.disabled),\n }}\n disableRipple\n disableTouchRipple\n // Exposes the global class HvIsFocusVisible as a marker not to\n // be styled directly, but only as helper in specific css queries\n focusVisibleClassName={clsx(\n \"HvIsFocusVisible\",\n clsx(tabClasses.focusVisible, classes?.focusVisible)\n )}\n disabled={disabled}\n iconPosition={iconPosition}\n {...others}\n />\n );\n};\n"],"names":["HvTab","props","classes","iconPosition","disabled","others","useDefaultProps","StyledTab","root","clsx","tabClasses","selected","disableRipple","disableTouchRipple","focusVisibleClassName","focusVisible"],"mappings":";;;;;AA0BaA,MAAAA,QAAQA,CAACC,UAAsB;AACpC,QAAA;AAAA,IACJC;AAAAA,IACAC,eAAe;AAAA,IACfC,WAAW;AAAA,IACX,GAAGC;AAAAA,EAAAA,IACDC,gBAAgB,SAASL,KAAK;AAElC,6BACGM,WAAS;AAAA,IACRL,SAAS;AAAA,MACPM,MAAMC,KAAKC,WAAWF,MAAMN,mCAASM,IAAI;AAAA,MACzCG,UAAUF,KAAKC,WAAWC,UAAUT,mCAASS,QAAQ;AAAA,MACrDP,UAAUK,KAAKC,WAAWN,UAAUF,mCAASE,QAAQ;AAAA,IACvD;AAAA,IACAQ,eAAa;AAAA,IACbC,oBAAkB;AAAA,IAGlBC,uBAAuBL,KACrB,oBACAA,KAAKC,WAAWK,cAAcb,mCAASa,YAAY,CACrD;AAAA,IACAX;AAAAA,IACAD;AAAAA,IAA2B,GACvBE;AAAAA,EAAAA,CACL;AAEL;"}
1
+ {"version":3,"file":"Tab.js","sources":["../../../../src/components/Tab/Tab.tsx"],"sourcesContent":["import { Tab, TabProps as MuiTabProps } from \"@mui/material\";\nimport { useDefaultProps } from \"@core/hooks/useDefaultProps\";\nimport { HvBaseProps } from \"@core/types/generic\";\nimport { ExtractNames } from \"@core/utils/classes\";\nimport { staticClasses, useClasses } from \"./Tab.styles\";\n\nexport { staticClasses as tabClasses };\n\nexport type HvTabClasses = ExtractNames<typeof useClasses>;\n\n// Mui Tab props: https://mui.com/material-ui/api/tab/#props\nexport interface HvTabProps\n extends Omit<MuiTabProps, \"children\">,\n HvBaseProps<HTMLDivElement, \"children\"> {\n /** If `true`, the tab will be disabled. */\n disabled?: boolean;\n /** The icon element. */\n icon?: React.ReactElement | string;\n /** The label element. */\n label?: React.ReactNode;\n /** The position of the icon relative to the label. */\n iconPosition?: \"bottom\" | \"end\" | \"start\" | \"top\";\n /** A Jss Object used to override or extend the component styles. */\n classes?: HvTabClasses;\n}\n\nexport const HvTab = (props: HvTabProps) => {\n const {\n classes: classesProp,\n iconPosition = \"top\",\n disabled = false,\n ...others\n } = useDefaultProps(\"HvTab\", props);\n const { classes, cx } = useClasses(classesProp);\n\n return (\n <Tab\n classes={{\n root: classes.root,\n selected: classes.selected,\n disabled: classes.disabled,\n }}\n disableRipple\n disableTouchRipple\n // expose the global class HvIsFocusVisible as a marker\n // not to be styled directly, only as helper in specific css queries\n focusVisibleClassName={cx(\"HvIsFocusVisible\", classes.focusVisible)}\n disabled={disabled}\n iconPosition={iconPosition}\n {...others}\n />\n );\n};\n"],"names":["HvTab","props","classes","classesProp","iconPosition","disabled","others","useDefaultProps","cx","useClasses","Tab","root","selected","disableRipple","disableTouchRipple","focusVisibleClassName","focusVisible"],"mappings":";;;;;AA0BaA,MAAAA,QAAQA,CAACC,UAAsB;AACpC,QAAA;AAAA,IACJC,SAASC;AAAAA,IACTC,eAAe;AAAA,IACfC,WAAW;AAAA,IACX,GAAGC;AAAAA,EAAAA,IACDC,gBAAgB,SAASN,KAAK;AAC5B,QAAA;AAAA,IAAEC;AAAAA,IAASM;AAAAA,EAAAA,IAAOC,WAAWN,WAAW;AAE9C,6BACGO,KAAG;AAAA,IACFR,SAAS;AAAA,MACPS,MAAMT,QAAQS;AAAAA,MACdC,UAAUV,QAAQU;AAAAA,MAClBP,UAAUH,QAAQG;AAAAA,IACpB;AAAA,IACAQ,eAAa;AAAA,IACbC,oBAAkB;AAAA,IAGlBC,uBAAuBP,GAAG,oBAAoBN,QAAQc,YAAY;AAAA,IAClEX;AAAAA,IACAD;AAAAA,IAA2B,GACvBE;AAAAA,EAAAA,CACL;AAEL;"}
@@ -1,66 +1,64 @@
1
- import _styled from "@emotion/styled/base";
1
+ import { createClasses } from "../../utils/classes.js";
2
2
  import { theme } from "@hitachivantara/uikit-styles";
3
- import { Tab } from "@mui/material";
4
3
  import { outlineStyles } from "../../utils/focusUtils.js";
5
- const StyledTab = /* @__PURE__ */ _styled(Tab, process.env.NODE_ENV === "production" ? {
6
- target: "evi6req0"
7
- } : {
8
- target: "evi6req0",
9
- label: "StyledTab"
10
- })({
11
- // Root
12
- marginTop: "3px",
13
- padding: theme.tab.padding,
14
- minWidth: 70,
15
- minHeight: 32,
16
- textTransform: "none",
17
- fontFamily: theme.fontFamily.body,
18
- ...theme.typography.body,
19
- opacity: 1,
20
- "&::after": {
21
- position: "absolute",
22
- left: 0,
23
- top: "calc(100% - 1px)",
24
- height: "1px",
25
- width: "100%",
26
- backgroundColor: theme.colors.atmo4,
27
- content: "''"
28
- },
29
- "&:hover": {
30
- backgroundColor: theme.tab.hoverBackgroundColor,
31
- borderRadius: theme.tab.hoverBackgroundBorderRadius,
4
+ const {
5
+ staticClasses,
6
+ useClasses
7
+ } = createClasses("HvTab", {
8
+ root: {
9
+ marginTop: "3px",
10
+ padding: theme.tab.padding,
11
+ minWidth: 70,
12
+ minHeight: 32,
13
+ textTransform: "none",
14
+ fontFamily: theme.fontFamily.body,
15
+ ...theme.typography.body,
16
+ "&:hover": {
17
+ backgroundColor: theme.tab.hoverBackgroundColor,
18
+ borderRadius: theme.tab.hoverBackgroundBorderRadius,
19
+ "&::after": {
20
+ height: "1px",
21
+ backgroundColor: theme.tab.hoverUnderlineBackgroundColor
22
+ }
23
+ },
24
+ "&$selected": {
25
+ color: theme.typography.label.color,
26
+ fontWeight: theme.typography.label.fontWeight,
27
+ lineHeight: theme.typography.label.lineHeight,
28
+ letterSpacing: theme.typography.label.letterSpacing
29
+ },
30
+ "&$disabled": {
31
+ color: theme.colors.secondary_60,
32
+ cursor: "not-allowed",
33
+ pointerEvents: "all",
34
+ opacity: 1,
35
+ "&:hover": {
36
+ background: "none"
37
+ }
38
+ },
39
+ opacity: 1,
32
40
  "&::after": {
41
+ position: "absolute",
42
+ left: 0,
43
+ top: "calc(100% - 1px)",
33
44
  height: "1px",
34
- backgroundColor: theme.tab.hoverUnderlineBackgroundColor
45
+ width: "100%",
46
+ backgroundColor: theme.colors.atmo4,
47
+ content: "''"
48
+ },
49
+ // Override Mui styling: https://mui.com/material-ui/api/tab/#css
50
+ "& .MuiTab-iconWrapper": {
51
+ margin: 0
35
52
  }
36
53
  },
37
- "&:focus-visible": {
54
+ focusVisible: {
38
55
  ...outlineStyles
39
56
  },
40
- "&:focus": {
41
- outline: "none"
42
- },
43
- // Override Mui styling: https://mui.com/material-ui/api/tab/#css
44
- "&.Mui-selected": {
45
- color: theme.colors.secondary,
46
- letterSpacing: theme.typography.label.letterSpacing,
47
- lineHeight: theme.typography.label.lineHeight,
48
- fontWeight: theme.typography.label.fontWeight
49
- },
50
- "&.Mui-disabled": {
51
- color: theme.colors.secondary_60,
52
- cursor: "not-allowed",
53
- pointerEvents: "all",
54
- opacity: 1,
55
- "&:hover": {
56
- background: "none"
57
- }
58
- },
59
- "& .MuiTab-iconWrapper": {
60
- margin: 0
61
- }
62
- }, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2h2LXVpa2l0LXJlYWN0L2h2LXVpa2l0LXJlYWN0L3BhY2thZ2VzL2NvcmUvc3JjL2NvbXBvbmVudHMvVGFiL1RhYi5zdHlsZXMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVV5QiIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay9odi11aWtpdC1yZWFjdC9odi11aWtpdC1yZWFjdC9wYWNrYWdlcy9jb3JlL3NyYy9jb21wb25lbnRzL1RhYi9UYWIuc3R5bGVzLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENTU1Byb3BlcnRpZXMgfSBmcm9tIFwicmVhY3RcIjtcblxuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5cbmltcG9ydCB7IHRoZW1lIH0gZnJvbSBcIkBoaXRhY2hpdmFudGFyYS91aWtpdC1zdHlsZXNcIjtcblxuaW1wb3J0IHsgVGFiIGFzIE11aVRhYiB9IGZyb20gXCJAbXVpL21hdGVyaWFsXCI7XG5cbmltcG9ydCB7IG91dGxpbmVTdHlsZXMgfSBmcm9tIFwiQGNvcmUvdXRpbHMvZm9jdXNVdGlsc1wiO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkVGFiID0gc3R5bGVkKE11aVRhYikoe1xuICAvLyBSb290XG4gIG1hcmdpblRvcDogXCIzcHhcIixcbiAgcGFkZGluZzogdGhlbWUudGFiLnBhZGRpbmcsXG4gIG1pbldpZHRoOiA3MCxcbiAgbWluSGVpZ2h0OiAzMixcbiAgdGV4dFRyYW5zZm9ybTogXCJub25lXCIsXG4gIGZvbnRGYW1pbHk6IHRoZW1lLmZvbnRGYW1pbHkuYm9keSxcbiAgLi4uKHRoZW1lLnR5cG9ncmFwaHkuYm9keSBhcyBDU1NQcm9wZXJ0aWVzKSxcbiAgb3BhY2l0eTogMSxcbiAgXCImOjphZnRlclwiOiB7XG4gICAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgICBsZWZ0OiAwLFxuICAgIHRvcDogXCJjYWxjKDEwMCUgLSAxcHgpXCIsXG4gICAgaGVpZ2h0OiBcIjFweFwiLFxuICAgIHdpZHRoOiBcIjEwMCVcIixcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmNvbG9ycy5hdG1vNCxcbiAgICBjb250ZW50OiBcIicnXCIsXG4gIH0sXG4gIFwiJjpob3ZlclwiOiB7XG4gICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS50YWIuaG92ZXJCYWNrZ3JvdW5kQ29sb3IsXG4gICAgYm9yZGVyUmFkaXVzOiB0aGVtZS50YWIuaG92ZXJCYWNrZ3JvdW5kQm9yZGVyUmFkaXVzLFxuICAgIFwiJjo6YWZ0ZXJcIjoge1xuICAgICAgaGVpZ2h0OiBcIjFweFwiLFxuICAgICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS50YWIuaG92ZXJVbmRlcmxpbmVCYWNrZ3JvdW5kQ29sb3IsXG4gICAgfSxcbiAgfSxcbiAgXCImOmZvY3VzLXZpc2libGVcIjoge1xuICAgIC4uLm91dGxpbmVTdHlsZXMsXG4gIH0sXG4gIFwiJjpmb2N1c1wiOiB7XG4gICAgb3V0bGluZTogXCJub25lXCIsXG4gIH0sXG5cbiAgLy8gT3ZlcnJpZGUgTXVpIHN0eWxpbmc6IGh0dHBzOi8vbXVpLmNvbS9tYXRlcmlhbC11aS9hcGkvdGFiLyNjc3NcbiAgXCImLk11aS1zZWxlY3RlZFwiOiB7XG4gICAgY29sb3I6IHRoZW1lLmNvbG9ycy5zZWNvbmRhcnksXG4gICAgbGV0dGVyU3BhY2luZzogdGhlbWUudHlwb2dyYXBoeS5sYWJlbC5sZXR0ZXJTcGFjaW5nLFxuICAgIGxpbmVIZWlnaHQ6IHRoZW1lLnR5cG9ncmFwaHkubGFiZWwubGluZUhlaWdodCxcbiAgICBmb250V2VpZ2h0OiB0aGVtZS50eXBvZ3JhcGh5LmxhYmVsLmZvbnRXZWlnaHQsXG4gIH0sXG4gIFwiJi5NdWktZGlzYWJsZWRcIjoge1xuICAgIGNvbG9yOiB0aGVtZS5jb2xvcnMuc2Vjb25kYXJ5XzYwLFxuICAgIGN1cnNvcjogXCJub3QtYWxsb3dlZFwiLFxuICAgIHBvaW50ZXJFdmVudHM6IFwiYWxsXCIsXG4gICAgb3BhY2l0eTogMSxcbiAgICBcIiY6aG92ZXJcIjoge1xuICAgICAgYmFja2dyb3VuZDogXCJub25lXCIsXG4gICAgfSxcbiAgfSxcbiAgXCImIC5NdWlUYWItaWNvbldyYXBwZXJcIjoge1xuICAgIG1hcmdpbjogMCxcbiAgfSxcbn0pO1xuIl19 */");
57
+ selected: {},
58
+ disabled: {}
59
+ });
63
60
  export {
64
- StyledTab
61
+ staticClasses,
62
+ useClasses
65
63
  };
66
64
  //# sourceMappingURL=Tab.styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Tab.styles.js","sources":["../../../../src/components/Tab/Tab.styles.tsx"],"sourcesContent":["import { CSSProperties } from \"react\";\n\nimport styled from \"@emotion/styled\";\n\nimport { theme } from \"@hitachivantara/uikit-styles\";\n\nimport { Tab as MuiTab } from \"@mui/material\";\n\nimport { outlineStyles } from \"@core/utils/focusUtils\";\n\nexport const StyledTab = styled(MuiTab)({\n // Root\n marginTop: \"3px\",\n padding: theme.tab.padding,\n minWidth: 70,\n minHeight: 32,\n textTransform: \"none\",\n fontFamily: theme.fontFamily.body,\n ...(theme.typography.body as CSSProperties),\n opacity: 1,\n \"&::after\": {\n position: \"absolute\",\n left: 0,\n top: \"calc(100% - 1px)\",\n height: \"1px\",\n width: \"100%\",\n backgroundColor: theme.colors.atmo4,\n content: \"''\",\n },\n \"&:hover\": {\n backgroundColor: theme.tab.hoverBackgroundColor,\n borderRadius: theme.tab.hoverBackgroundBorderRadius,\n \"&::after\": {\n height: \"1px\",\n backgroundColor: theme.tab.hoverUnderlineBackgroundColor,\n },\n },\n \"&:focus-visible\": {\n ...outlineStyles,\n },\n \"&:focus\": {\n outline: \"none\",\n },\n\n // Override Mui styling: https://mui.com/material-ui/api/tab/#css\n \"&.Mui-selected\": {\n color: theme.colors.secondary,\n letterSpacing: theme.typography.label.letterSpacing,\n lineHeight: theme.typography.label.lineHeight,\n fontWeight: theme.typography.label.fontWeight,\n },\n \"&.Mui-disabled\": {\n color: theme.colors.secondary_60,\n cursor: \"not-allowed\",\n pointerEvents: \"all\",\n opacity: 1,\n \"&:hover\": {\n background: \"none\",\n },\n },\n \"& .MuiTab-iconWrapper\": {\n margin: 0,\n },\n});\n"],"names":["StyledTab","MuiTab","process","env","NODE_ENV","target","label","marginTop","padding","theme","tab","minWidth","minHeight","textTransform","fontFamily","body","typography","opacity","position","left","top","height","width","backgroundColor","colors","atmo4","content","hoverBackgroundColor","borderRadius","hoverBackgroundBorderRadius","hoverUnderlineBackgroundColor","outlineStyles","outline","color","secondary","letterSpacing","lineHeight","fontWeight","secondary_60","cursor","pointerEvents","background","margin"],"mappings":";;;;AAUO,MAAMA,YAAmBC,wBAAAA,KAAMC,QAAAC,IAAAC,aAAA,eAAA;AAAA,EAAAC,QAAA;AAAA,IAAA;AAAA,EAAAA,QAAA;AAAA,EAAAC,OAAA;AAAA,CAAA,EAAE;AAAA;AAAA,EAEtCC,WAAW;AAAA,EACXC,SAASC,MAAMC,IAAIF;AAAAA,EACnBG,UAAU;AAAA,EACVC,WAAW;AAAA,EACXC,eAAe;AAAA,EACfC,YAAYL,MAAMK,WAAWC;AAAAA,EAC7B,GAAIN,MAAMO,WAAWD;AAAAA,EACrBE,SAAS;AAAA,EACT,YAAY;AAAA,IACVC,UAAU;AAAA,IACVC,MAAM;AAAA,IACNC,KAAK;AAAA,IACLC,QAAQ;AAAA,IACRC,OAAO;AAAA,IACPC,iBAAiBd,MAAMe,OAAOC;AAAAA,IAC9BC,SAAS;AAAA,EACX;AAAA,EACA,WAAW;AAAA,IACTH,iBAAiBd,MAAMC,IAAIiB;AAAAA,IAC3BC,cAAcnB,MAAMC,IAAImB;AAAAA,IACxB,YAAY;AAAA,MACVR,QAAQ;AAAA,MACRE,iBAAiBd,MAAMC,IAAIoB;AAAAA,IAC7B;AAAA,EACF;AAAA,EACA,mBAAmB;AAAA,IACjB,GAAGC;AAAAA,EACL;AAAA,EACA,WAAW;AAAA,IACTC,SAAS;AAAA,EACX;AAAA;AAAA,EAGA,kBAAkB;AAAA,IAChBC,OAAOxB,MAAMe,OAAOU;AAAAA,IACpBC,eAAe1B,MAAMO,WAAWV,MAAM6B;AAAAA,IACtCC,YAAY3B,MAAMO,WAAWV,MAAM8B;AAAAA,IACnCC,YAAY5B,MAAMO,WAAWV,MAAM+B;AAAAA,EACrC;AAAA,EACA,kBAAkB;AAAA,IAChBJ,OAAOxB,MAAMe,OAAOc;AAAAA,IACpBC,QAAQ;AAAA,IACRC,eAAe;AAAA,IACfvB,SAAS;AAAA,IACT,WAAW;AAAA,MACTwB,YAAY;AAAA,IACd;AAAA,EACF;AAAA,EACA,yBAAyB;AAAA,IACvBC,QAAQ;AAAA,EACV;AACF,GAACxC,QAAAC,IAAAC,aAAC,eAAA,KAAA,6lFAAA;"}
1
+ {"version":3,"file":"Tab.styles.js","sources":["../../../../src/components/Tab/Tab.styles.tsx"],"sourcesContent":["import { CSSProperties } from \"react\";\nimport { createClasses } from \"@core/utils/classes\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\nimport { outlineStyles } from \"@core/utils/focusUtils\";\n\nexport const { staticClasses, useClasses } = createClasses(\"HvTab\", {\n root: {\n marginTop: \"3px\",\n padding: theme.tab.padding,\n minWidth: 70,\n minHeight: 32,\n textTransform: \"none\",\n fontFamily: theme.fontFamily.body,\n ...(theme.typography.body as CSSProperties),\n \"&:hover\": {\n backgroundColor: theme.tab.hoverBackgroundColor,\n borderRadius: theme.tab.hoverBackgroundBorderRadius,\n \"&::after\": {\n height: \"1px\",\n backgroundColor: theme.tab.hoverUnderlineBackgroundColor,\n },\n },\n \"&$selected\": {\n color: theme.typography.label.color,\n fontWeight: theme.typography.label.fontWeight,\n lineHeight: theme.typography.label.lineHeight,\n letterSpacing: theme.typography.label.letterSpacing,\n },\n \"&$disabled\": {\n color: theme.colors.secondary_60,\n cursor: \"not-allowed\",\n pointerEvents: \"all\",\n opacity: 1,\n \"&:hover\": {\n background: \"none\",\n },\n },\n opacity: 1,\n \"&::after\": {\n position: \"absolute\",\n left: 0,\n top: \"calc(100% - 1px)\",\n height: \"1px\",\n width: \"100%\",\n backgroundColor: theme.colors.atmo4,\n content: \"''\",\n },\n // Override Mui styling: https://mui.com/material-ui/api/tab/#css\n \"& .MuiTab-iconWrapper\": {\n margin: 0,\n },\n },\n focusVisible: {\n ...outlineStyles,\n },\n selected: {},\n disabled: {},\n});\n"],"names":["staticClasses","useClasses","createClasses","root","marginTop","padding","theme","tab","minWidth","minHeight","textTransform","fontFamily","body","typography","backgroundColor","hoverBackgroundColor","borderRadius","hoverBackgroundBorderRadius","height","hoverUnderlineBackgroundColor","color","label","fontWeight","lineHeight","letterSpacing","colors","secondary_60","cursor","pointerEvents","opacity","background","position","left","top","width","atmo4","content","margin","focusVisible","outlineStyles","selected","disabled"],"mappings":";;;AAKa,MAAA;AAAA,EAAEA;AAAAA,EAAeC;AAAW,IAAIC,cAAc,SAAS;AAAA,EAClEC,MAAM;AAAA,IACJC,WAAW;AAAA,IACXC,SAASC,MAAMC,IAAIF;AAAAA,IACnBG,UAAU;AAAA,IACVC,WAAW;AAAA,IACXC,eAAe;AAAA,IACfC,YAAYL,MAAMK,WAAWC;AAAAA,IAC7B,GAAIN,MAAMO,WAAWD;AAAAA,IACrB,WAAW;AAAA,MACTE,iBAAiBR,MAAMC,IAAIQ;AAAAA,MAC3BC,cAAcV,MAAMC,IAAIU;AAAAA,MACxB,YAAY;AAAA,QACVC,QAAQ;AAAA,QACRJ,iBAAiBR,MAAMC,IAAIY;AAAAA,MAC7B;AAAA,IACF;AAAA,IACA,cAAc;AAAA,MACZC,OAAOd,MAAMO,WAAWQ,MAAMD;AAAAA,MAC9BE,YAAYhB,MAAMO,WAAWQ,MAAMC;AAAAA,MACnCC,YAAYjB,MAAMO,WAAWQ,MAAME;AAAAA,MACnCC,eAAelB,MAAMO,WAAWQ,MAAMG;AAAAA,IACxC;AAAA,IACA,cAAc;AAAA,MACZJ,OAAOd,MAAMmB,OAAOC;AAAAA,MACpBC,QAAQ;AAAA,MACRC,eAAe;AAAA,MACfC,SAAS;AAAA,MACT,WAAW;AAAA,QACTC,YAAY;AAAA,MACd;AAAA,IACF;AAAA,IACAD,SAAS;AAAA,IACT,YAAY;AAAA,MACVE,UAAU;AAAA,MACVC,MAAM;AAAA,MACNC,KAAK;AAAA,MACLf,QAAQ;AAAA,MACRgB,OAAO;AAAA,MACPpB,iBAAiBR,MAAMmB,OAAOU;AAAAA,MAC9BC,SAAS;AAAA,IACX;AAAA;AAAA,IAEA,yBAAyB;AAAA,MACvBC,QAAQ;AAAA,IACV;AAAA,EACF;AAAA,EACAC,cAAc;AAAA,IACZ,GAAGC;AAAAA,EACL;AAAA,EACAC,UAAU,CAAC;AAAA,EACXC,UAAU,CAAC;AACb,CAAC;"}
@@ -1,12 +1,14 @@
1
- import { clsx } from "clsx";
2
1
  import { useState } from "react";
3
2
  import { theme } from "@hitachivantara/uikit-styles";
3
+ import Chip from "@mui/material/Chip";
4
4
  import { useTheme } from "../../hooks/useTheme.js";
5
5
  import { useDefaultProps } from "../../hooks/useDefaultProps.js";
6
- import { StyledChip, StyledButton, StyledCloseXS } from "./Tag.styles.js";
6
+ import { CloseXS } from "@hitachivantara/uikit-react-icons";
7
+ import { useClasses } from "./Tag.styles.js";
8
+ import { staticClasses } from "./Tag.styles.js";
7
9
  import { hasDeleteAction, getOnDeleteCallback, hasClickAction } from "./utils.js";
8
- import tagClasses from "./tagClasses.js";
9
10
  import { jsx } from "@emotion/react/jsx-runtime";
11
+ import { HvButton } from "../Button/Button.js";
10
12
  const getColor = (customColor, type, colors) => {
11
13
  const defaultSemanticColor = theme.colors.neutral_20;
12
14
  const defaultCategoricalColor = colors.cat1;
@@ -20,9 +22,9 @@ const getColor = (customColor, type, colors) => {
20
22
  return backgroundColor;
21
23
  };
22
24
  const HvTag = (props) => {
23
- var _a, _b;
25
+ var _a;
24
26
  const {
25
- classes,
27
+ classes: classesProp,
26
28
  className,
27
29
  style,
28
30
  label,
@@ -41,31 +43,39 @@ const HvTag = (props) => {
41
43
  activeTheme,
42
44
  selectedMode
43
45
  } = useTheme();
46
+ const {
47
+ classes,
48
+ cx,
49
+ css
50
+ } = useClasses(classesProp);
44
51
  const getDeleteIcon = () => {
45
52
  const disabledSemanticColor = type === "semantic" ? "secondary_60" : "base_dark";
46
53
  const {
47
54
  tabIndex = 0
48
55
  } = deleteButtonProps;
49
- return /* @__PURE__ */ jsx(StyledButton, {
56
+ const closeIconStyles = css({
57
+ ...disabled ? {
58
+ cursor: "not-allowed"
59
+ } : void 0,
60
+ height: 16,
61
+ "& svg .color0": {
62
+ fill: theme.colors[disabled ? disabledSemanticColor : "base_dark"]
63
+ }
64
+ });
65
+ return /* @__PURE__ */ jsx(HvButton, {
50
66
  classes: {
51
- startIcon: clsx(tagClasses.tagButton, classes == null ? void 0 : classes.tagButton),
52
- focusVisible: clsx(tagClasses.focusVisible, classes == null ? void 0 : classes.focusVisible),
53
- root: clsx(tagClasses.button, classes == null ? void 0 : classes.button)
67
+ startIcon: classes.tagButton,
68
+ focusVisible: classes.focusVisible,
69
+ root: classes.button
54
70
  },
55
71
  "aria-label": deleteButtonArialLabel,
56
72
  tabIndex,
57
73
  variant: "secondaryGhost",
58
74
  ...deleteButtonProps,
59
- children: /* @__PURE__ */ jsx(StyledCloseXS, {
75
+ children: /* @__PURE__ */ jsx(CloseXS, {
60
76
  iconSize: "XS",
61
- style: {
62
- ...disabled ? {
63
- cursor: "not-allowed"
64
- } : void 0,
65
- height: 16
66
- },
67
- color: disabled ? disabledSemanticColor : "base_dark",
68
- $color: disabled ? disabledSemanticColor : "base_dark"
77
+ className: closeIconStyles,
78
+ color: disabled ? disabledSemanticColor : "base_dark"
69
79
  })
70
80
  });
71
81
  };
@@ -80,9 +90,9 @@ const HvTag = (props) => {
80
90
  inlineStyle.backgroundColor = `${categoricalBackgroundColor}30`;
81
91
  }
82
92
  const [hover, setHover] = useState(false);
83
- return /* @__PURE__ */ jsx(StyledChip, {
93
+ return /* @__PURE__ */ jsx(Chip, {
84
94
  label,
85
- className: clsx(classes == null ? void 0 : classes.root, className, tagClasses.root),
95
+ className: cx(classes.root, className),
86
96
  onMouseEnter: () => {
87
97
  setHover(!!onClick);
88
98
  },
@@ -96,24 +106,28 @@ const HvTag = (props) => {
96
106
  } : null
97
107
  },
98
108
  classes: {
99
- root: clsx(tagClasses.chipRoot, classes == null ? void 0 : classes.chipRoot, type === "categorical" && clsx(tagClasses.categorical, classes == null ? void 0 : classes.categorical), disabled && clsx(tagClasses.disabled, classes == null ? void 0 : classes.disabled), !!onClick && clsx(tagClasses.clickable, classes == null ? void 0 : classes.clickable), type === "categorical" && !disabled && clsx(tagClasses.categoricalFocus, classes == null ? void 0 : classes.categoricalFocus), type === "categorical" && disabled && clsx(tagClasses.categoricalDisabled, classes == null ? void 0 : classes.categoricalDisabled)),
100
- label: clsx(tagClasses.label, classes == null ? void 0 : classes.label),
101
- deleteIcon: clsx(classes == null ? void 0 : classes.deleteIcon, tagClasses.deleteIcon, disabled && clsx(tagClasses.disabledDeleteIcon, classes == null ? void 0 : classes.disabledDeleteIcon))
109
+ root: cx(classes.chipRoot, {
110
+ [classes.disabled]: disabled,
111
+ [classes.clickable]: !!onClick,
112
+ [classes.categorical]: type === "categorical",
113
+ [classes.categoricalFocus]: type === "categorical" && !disabled,
114
+ [classes.categoricalDisabled]: type === "categorical" && disabled
115
+ }),
116
+ label: classes.label,
117
+ deleteIcon: cx(classes.deleteIcon, {
118
+ [classes.disabledDeleteIcon]: disabled
119
+ })
102
120
  },
103
121
  deleteIcon: hasDeleteAction(onDelete) && deleteIcon || getDeleteIcon(),
104
122
  onDelete: getOnDeleteCallback(disabled, onDelete),
105
123
  onClick: disabled ? void 0 : onClick,
106
124
  role: role || (hasClickAction(onClick) ? "button" : void 0),
107
125
  tabIndex: hasDeleteAction(onDelete) ? void 0 : 0,
108
- $type: type,
109
- $disabled: disabled || false,
110
- $categoricalFocus: type === "categorical" && !disabled,
111
- $categoricalDisabled: type === "categorical" && disabled || false,
112
- $baseLightColor: ((_b = activeTheme == null ? void 0 : activeTheme.colors) == null ? void 0 : _b.modes[selectedMode].base_light) || theme.colors.base_light,
113
126
  ...others
114
127
  });
115
128
  };
116
129
  export {
117
- HvTag
130
+ HvTag,
131
+ staticClasses as tagClasses
118
132
  };
119
133
  //# sourceMappingURL=Tag.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Tag.js","sources":["../../../../src/components/Tag/Tag.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\n\nimport { CSSProperties, useState } from \"react\";\n\nimport { theme } from \"@hitachivantara/uikit-styles\";\n\nimport { ChipProps as MuiChipProps } from \"@mui/material/Chip\";\n\nimport { HvBaseProps } from \"@core/types/generic\";\nimport {\n HvSemanticColorKeys,\n HvCategoricalColorKeys,\n} from \"@core/types/tokens\";\nimport { useTheme } from \"@core/hooks/useTheme\";\nimport { useDefaultProps } from \"@core/hooks/useDefaultProps\";\nimport { HvButtonProps } from \"@core/components/Button\";\n\nimport { StyledChip, StyledButton, StyledCloseXS } from \"./Tag.styles\";\nimport { getOnDeleteCallback, hasDeleteAction, hasClickAction } from \"./utils\";\nimport tagClasses, { HvTagClasses } from \"./tagClasses\";\n\nexport interface HvTagProps\n extends Omit<MuiChipProps, \"color\" | \"classes\">,\n HvBaseProps<HTMLDivElement, \"children\"> {\n /** Inline styles to be applied to the root element. */\n style?: CSSProperties;\n /** The label of the tag element. */\n label?: React.ReactNode;\n /** Indicates that the form element is disabled. */\n disabled?: boolean;\n /** The type of the tag element. A tag can be of semantic or categoric type. */\n type?: \"semantic\" | \"categorical\";\n /** Background color to be applied to the tag */\n color?: HvSemanticColorKeys | HvCategoricalColorKeys | string;\n /** Icon used to customize the delete icon in the Chip element */\n deleteIcon?: React.ReactElement;\n /**\n * The callback fired when the delete icon is pressed.\n * This function has to be provided to the component, in order to render the delete icon\n * */\n onDelete?: (event: React.MouseEvent<HTMLElement>) => void;\n /** Callback triggered when any item is clicked. */\n onClick?: (event: React.MouseEvent<HTMLElement>) => void;\n /** The role of the element with an attributed event. */\n role?: string;\n /** Aria properties to apply to delete button in tag */\n deleteButtonArialLabel?: string;\n /** Props to apply to delete button */\n deleteButtonProps?: HvButtonProps;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvTagClasses;\n}\n\nconst getColor = (customColor, type, colors) => {\n const defaultSemanticColor = theme.colors.neutral_20;\n const defaultCategoricalColor = colors.cat1;\n\n let backgroundColor;\n\n if (type === \"semantic\") {\n backgroundColor =\n theme.colors[customColor] || customColor || defaultSemanticColor;\n }\n if (type === \"categorical\") {\n backgroundColor =\n colors[customColor] || customColor || defaultCategoricalColor;\n }\n return backgroundColor;\n};\n\n/**\n * A Tag is one word that describes a specific aspect of an asset. A single asset can have\n * multiple tags.\n * Use tags to highlight an item's status for quick recognition and navigation\n * Use color to indicate meanings that users can learn and recognize across products\n *\n * It leverages the Chip component from Material UI\n */\nexport const HvTag = (props: HvTagProps) => {\n const {\n classes,\n className,\n style,\n label,\n disabled,\n type = \"semantic\",\n color,\n deleteIcon,\n onDelete,\n onClick,\n role,\n deleteButtonArialLabel = \"Delete tag\",\n deleteButtonProps = {},\n ...others\n } = useDefaultProps(\"HvTag\", props);\n const { activeTheme, selectedMode } = useTheme();\n\n const getDeleteIcon = () => {\n const disabledSemanticColor =\n type === \"semantic\" ? \"secondary_60\" : \"base_dark\";\n const { tabIndex = 0 } = deleteButtonProps;\n\n return (\n <StyledButton\n classes={{\n startIcon: clsx(tagClasses.tagButton, classes?.tagButton),\n focusVisible: clsx(tagClasses.focusVisible, classes?.focusVisible),\n root: clsx(tagClasses.button, classes?.button),\n }}\n aria-label={deleteButtonArialLabel}\n tabIndex={tabIndex}\n variant=\"secondaryGhost\"\n {...deleteButtonProps}\n >\n <StyledCloseXS\n iconSize=\"XS\"\n style={{\n ...(disabled ? { cursor: \"not-allowed\" } : undefined),\n height: 16,\n }}\n color={disabled ? disabledSemanticColor : \"base_dark\"}\n $color={disabled ? disabledSemanticColor : \"base_dark\"}\n />\n </StyledButton>\n );\n };\n\n const inlineStyle = {\n ...style,\n };\n\n let categoricalBackgroundColor;\n\n if (type === \"semantic\") {\n inlineStyle.backgroundColor = getColor(color, type, {});\n } else if (type === \"categorical\") {\n categoricalBackgroundColor = getColor(\n color,\n type,\n activeTheme?.colors?.modes[selectedMode]\n );\n\n inlineStyle.backgroundColor = `${categoricalBackgroundColor}30`;\n }\n\n const [hover, setHover] = useState(false);\n\n return (\n <StyledChip\n label={label}\n className={clsx(classes?.root, className, tagClasses.root)}\n onMouseEnter={() => {\n setHover(!!onClick);\n }}\n onMouseLeave={() => {\n setHover(false);\n }}\n style={{\n ...(disabled ? null : inlineStyle),\n ...(hover && !disabled\n ? { boxShadow: `0 0 0 1pt ${categoricalBackgroundColor}` }\n : null),\n }}\n classes={{\n root: clsx(\n tagClasses.chipRoot,\n classes?.chipRoot,\n type === \"categorical\" &&\n clsx(tagClasses.categorical, classes?.categorical),\n disabled && clsx(tagClasses.disabled, classes?.disabled),\n !!onClick && clsx(tagClasses.clickable, classes?.clickable),\n type === \"categorical\" &&\n !disabled &&\n clsx(tagClasses.categoricalFocus, classes?.categoricalFocus),\n type === \"categorical\" &&\n disabled &&\n clsx(tagClasses.categoricalDisabled, classes?.categoricalDisabled)\n ),\n label: clsx(tagClasses.label, classes?.label),\n deleteIcon: clsx(\n classes?.deleteIcon,\n tagClasses.deleteIcon,\n disabled &&\n clsx(tagClasses.disabledDeleteIcon, classes?.disabledDeleteIcon)\n ),\n }}\n deleteIcon={(hasDeleteAction(onDelete) && deleteIcon) || getDeleteIcon()}\n onDelete={getOnDeleteCallback(disabled, onDelete)}\n onClick={disabled ? undefined : onClick}\n role={role || (hasClickAction(onClick) ? \"button\" : undefined)}\n tabIndex={hasDeleteAction(onDelete) ? undefined : 0}\n $type={type}\n $disabled={disabled || false}\n $categoricalFocus={type === \"categorical\" && !disabled}\n $categoricalDisabled={(type === \"categorical\" && disabled) || false}\n $baseLightColor={\n activeTheme?.colors?.modes[selectedMode].base_light ||\n theme.colors.base_light\n }\n {...others}\n />\n );\n};\n"],"names":["getColor","customColor","type","colors","defaultSemanticColor","theme","neutral_20","defaultCategoricalColor","cat1","backgroundColor","HvTag","props","classes","className","style","label","disabled","color","deleteIcon","onDelete","onClick","role","deleteButtonArialLabel","deleteButtonProps","others","useDefaultProps","activeTheme","selectedMode","useTheme","getDeleteIcon","disabledSemanticColor","tabIndex","StyledButton","startIcon","clsx","tagClasses","tagButton","focusVisible","root","button","variant","children","StyledCloseXS","iconSize","cursor","undefined","height","$color","inlineStyle","categoricalBackgroundColor","modes","hover","setHover","useState","StyledChip","onMouseEnter","onMouseLeave","boxShadow","chipRoot","categorical","clickable","categoricalFocus","categoricalDisabled","disabledDeleteIcon","hasDeleteAction","getOnDeleteCallback","hasClickAction","$type","$disabled","$categoricalFocus","$categoricalDisabled","$baseLightColor","base_light"],"mappings":"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"}
1
+ {"version":3,"file":"Tag.js","sources":["../../../../src/components/Tag/Tag.tsx"],"sourcesContent":["import { CSSProperties, useState } from \"react\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\nimport Chip, { ChipProps as MuiChipProps } from \"@mui/material/Chip\";\nimport { HvBaseProps } from \"@core/types/generic\";\nimport {\n HvSemanticColorKeys,\n HvCategoricalColorKeys,\n} from \"@core/types/tokens\";\nimport { useTheme } from \"@core/hooks/useTheme\";\nimport { useDefaultProps } from \"@core/hooks/useDefaultProps\";\nimport { HvButton, HvButtonProps } from \"@core/components/Button\";\n\nimport { ExtractNames } from \"@core/utils/classes\";\nimport { CloseXS } from \"@hitachivantara/uikit-react-icons\";\nimport { staticClasses, useClasses } from \"./Tag.styles\";\nimport { getOnDeleteCallback, hasDeleteAction, hasClickAction } from \"./utils\";\n\nexport { staticClasses as tagClasses };\n\nexport type HvTagClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvTagProps\n extends Omit<MuiChipProps, \"color\" | \"classes\">,\n HvBaseProps<HTMLDivElement, \"children\"> {\n /** Inline styles to be applied to the root element. */\n style?: CSSProperties;\n /** The label of the tag element. */\n label?: React.ReactNode;\n /** Indicates that the form element is disabled. */\n disabled?: boolean;\n /** The type of the tag element. A tag can be of semantic or categoric type. */\n type?: \"semantic\" | \"categorical\";\n /** Background color to be applied to the tag */\n color?: HvSemanticColorKeys | HvCategoricalColorKeys | string;\n /** Icon used to customize the delete icon in the Chip element */\n deleteIcon?: React.ReactElement;\n /**\n * The callback fired when the delete icon is pressed.\n * This function has to be provided to the component, in order to render the delete icon\n * */\n onDelete?: (event: React.MouseEvent<HTMLElement>) => void;\n /** Callback triggered when any item is clicked. */\n onClick?: (event: React.MouseEvent<HTMLElement>) => void;\n /** The role of the element with an attributed event. */\n role?: string;\n /** Aria properties to apply to delete button in tag */\n deleteButtonArialLabel?: string;\n /** Props to apply to delete button */\n deleteButtonProps?: HvButtonProps;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvTagClasses;\n}\n\nconst getColor = (customColor, type, colors) => {\n const defaultSemanticColor = theme.colors.neutral_20;\n const defaultCategoricalColor = colors.cat1;\n\n let backgroundColor;\n\n if (type === \"semantic\") {\n backgroundColor =\n theme.colors[customColor] || customColor || defaultSemanticColor;\n }\n if (type === \"categorical\") {\n backgroundColor =\n colors[customColor] || customColor || defaultCategoricalColor;\n }\n return backgroundColor;\n};\n\n/**\n * A Tag is one word that describes a specific aspect of an asset. A single asset can have\n * multiple tags.\n * Use tags to highlight an item's status for quick recognition and navigation\n * Use color to indicate meanings that users can learn and recognize across products\n *\n * It leverages the Chip component from Material UI\n */\nexport const HvTag = (props: HvTagProps) => {\n const {\n classes: classesProp,\n className,\n style,\n label,\n disabled,\n type = \"semantic\",\n color,\n deleteIcon,\n onDelete,\n onClick,\n role,\n deleteButtonArialLabel = \"Delete tag\",\n deleteButtonProps = {},\n ...others\n } = useDefaultProps(\"HvTag\", props);\n const { activeTheme, selectedMode } = useTheme();\n const { classes, cx, css } = useClasses(classesProp);\n\n const getDeleteIcon = () => {\n const disabledSemanticColor =\n type === \"semantic\" ? \"secondary_60\" : \"base_dark\";\n const { tabIndex = 0 } = deleteButtonProps;\n\n const closeIconStyles = css({\n ...(disabled ? { cursor: \"not-allowed\" } : undefined),\n height: 16,\n \"& svg .color0\": {\n fill: theme.colors[disabled ? disabledSemanticColor : \"base_dark\"],\n },\n });\n return (\n <HvButton\n classes={{\n startIcon: classes.tagButton,\n focusVisible: classes.focusVisible,\n root: classes.button,\n }}\n aria-label={deleteButtonArialLabel}\n tabIndex={tabIndex}\n variant=\"secondaryGhost\"\n {...deleteButtonProps}\n >\n <CloseXS\n iconSize=\"XS\"\n className={closeIconStyles}\n color={disabled ? disabledSemanticColor : \"base_dark\"}\n />\n </HvButton>\n );\n };\n\n const inlineStyle = {\n ...style,\n };\n\n let categoricalBackgroundColor;\n\n if (type === \"semantic\") {\n inlineStyle.backgroundColor = getColor(color, type, {});\n } else if (type === \"categorical\") {\n categoricalBackgroundColor = getColor(\n color,\n type,\n activeTheme?.colors?.modes[selectedMode]\n );\n\n inlineStyle.backgroundColor = `${categoricalBackgroundColor}30`;\n }\n\n const [hover, setHover] = useState(false);\n\n return (\n <Chip\n label={label}\n className={cx(classes.root, className)}\n onMouseEnter={() => {\n setHover(!!onClick);\n }}\n onMouseLeave={() => {\n setHover(false);\n }}\n style={{\n ...(disabled ? null : inlineStyle),\n ...(hover && !disabled\n ? { boxShadow: `0 0 0 1pt ${categoricalBackgroundColor}` }\n : null),\n }}\n classes={{\n root: cx(classes.chipRoot, {\n [classes.disabled]: disabled,\n [classes.clickable]: !!onClick,\n [classes.categorical]: type === \"categorical\",\n [classes.categoricalFocus]: type === \"categorical\" && !disabled,\n [classes.categoricalDisabled]: type === \"categorical\" && disabled,\n }),\n label: classes.label,\n deleteIcon: cx(classes.deleteIcon, {\n [classes.disabledDeleteIcon]: disabled,\n }),\n }}\n deleteIcon={(hasDeleteAction(onDelete) && deleteIcon) || getDeleteIcon()}\n onDelete={getOnDeleteCallback(disabled, onDelete)}\n onClick={disabled ? undefined : onClick}\n role={role || (hasClickAction(onClick) ? \"button\" : undefined)}\n tabIndex={hasDeleteAction(onDelete) ? undefined : 0}\n {...others}\n />\n );\n};\n"],"names":["getColor","customColor","type","colors","defaultSemanticColor","theme","neutral_20","defaultCategoricalColor","cat1","backgroundColor","HvTag","props","classes","classesProp","className","style","label","disabled","color","deleteIcon","onDelete","onClick","role","deleteButtonArialLabel","deleteButtonProps","others","useDefaultProps","activeTheme","selectedMode","useTheme","cx","css","useClasses","getDeleteIcon","disabledSemanticColor","tabIndex","closeIconStyles","cursor","undefined","height","fill","HvButton","startIcon","tagButton","focusVisible","root","button","variant","children","CloseXS","iconSize","inlineStyle","categoricalBackgroundColor","modes","hover","setHover","useState","Chip","onMouseEnter","onMouseLeave","boxShadow","chipRoot","clickable","categorical","categoricalFocus","categoricalDisabled","disabledDeleteIcon","hasDeleteAction","getOnDeleteCallback","hasClickAction"],"mappings":";;;;;;;;;;;AAqDA,MAAMA,WAAWA,CAACC,aAAaC,MAAMC,WAAW;AACxCC,QAAAA,uBAAuBC,MAAMF,OAAOG;AAC1C,QAAMC,0BAA0BJ,OAAOK;AAEnCC,MAAAA;AAEJ,MAAIP,SAAS,YAAY;AACvBO,sBACEJ,MAAMF,OAAOF,WAAW,KAAKA,eAAeG;AAAAA,EAChD;AACA,MAAIF,SAAS,eAAe;AAExBC,sBAAAA,OAAOF,WAAW,KAAKA,eAAeM;AAAAA,EAC1C;AACOE,SAAAA;AACT;AAUaC,MAAAA,QAAQA,CAACC,UAAsB;;AACpC,QAAA;AAAA,IACJC,SAASC;AAAAA,IACTC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAf,OAAO;AAAA,IACPgB;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC,yBAAyB;AAAA,IACzBC,oBAAoB,CAAC;AAAA,IACrB,GAAGC;AAAAA,EAAAA,IACDC,gBAAgB,SAASf,KAAK;AAC5B,QAAA;AAAA,IAAEgB;AAAAA,IAAaC;AAAAA,MAAiBC,SAAS;AACzC,QAAA;AAAA,IAAEjB;AAAAA,IAASkB;AAAAA,IAAIC;AAAAA,EAAAA,IAAQC,WAAWnB,WAAW;AAEnD,QAAMoB,gBAAgBA,MAAM;AACpBC,UAAAA,wBACJhC,SAAS,aAAa,iBAAiB;AACnC,UAAA;AAAA,MAAEiC,WAAW;AAAA,IAAMX,IAAAA;AAEzB,UAAMY,kBAAkBL,IAAI;AAAA,MAC1B,GAAId,WAAW;AAAA,QAAEoB,QAAQ;AAAA,MAAkBC,IAAAA;AAAAA,MAC3CC,QAAQ;AAAA,MACR,iBAAiB;AAAA,QACfC,MAAMnC,MAAMF,OAAOc,WAAWiB,wBAAwB,WAAW;AAAA,MACnE;AAAA,IAAA,CACD;AACD,+BACGO,UAAQ;AAAA,MACP7B,SAAS;AAAA,QACP8B,WAAW9B,QAAQ+B;AAAAA,QACnBC,cAAchC,QAAQgC;AAAAA,QACtBC,MAAMjC,QAAQkC;AAAAA,MAChB;AAAA,MACA,cAAYvB;AAAAA,MACZY;AAAAA,MACAY,SAAQ;AAAA,MAAgB,GACpBvB;AAAAA,MAAiBwB,8BAEpBC,SAAO;AAAA,QACNC,UAAS;AAAA,QACTpC,WAAWsB;AAAAA,QACXlB,OAAOD,WAAWiB,wBAAwB;AAAA,MAAA,CAC3C;AAAA,IAAA,CACO;AAAA,EAAA;AAId,QAAMiB,cAAc;AAAA,IAClB,GAAGpC;AAAAA,EAAAA;AAGDqC,MAAAA;AAEJ,MAAIlD,SAAS,YAAY;AACvBiD,gBAAY1C,kBAAkBT,SAASkB,OAAOhB,MAAM,CAAE,CAAA;AAAA,EAAA,WAC7CA,SAAS,eAAe;AACjCkD,iCAA6BpD,SAC3BkB,OACAhB,OACAyB,gDAAaxB,WAAbwB,mBAAqB0B,MAAMzB,aAC7B;AAEAuB,gBAAY1C,kBAAmB,GAAE2C;AAAAA,EACnC;AAEA,QAAM,CAACE,OAAOC,QAAQ,IAAIC,SAAS,KAAK;AAExC,6BACGC,MAAI;AAAA,IACHzC;AAAAA,IACAF,WAAWgB,GAAGlB,QAAQiC,MAAM/B,SAAS;AAAA,IACrC4C,cAAcA,MAAM;AACT,eAAA,CAAC,CAACrC,OAAO;AAAA,IACpB;AAAA,IACAsC,cAAcA,MAAM;AAClBJ,eAAS,KAAK;AAAA,IAChB;AAAA,IACAxC,OAAO;AAAA,MACL,GAAIE,WAAW,OAAOkC;AAAAA,MACtB,GAAIG,SAAS,CAACrC,WACV;AAAA,QAAE2C,WAAY,aAAYR;AAAAA,MAAAA,IAC1B;AAAA,IACN;AAAA,IACAxC,SAAS;AAAA,MACPiC,MAAMf,GAAGlB,QAAQiD,UAAU;AAAA,QACzB,CAACjD,QAAQK,QAAQ,GAAGA;AAAAA,QACpB,CAACL,QAAQkD,SAAS,GAAG,CAAC,CAACzC;AAAAA,QACvB,CAACT,QAAQmD,WAAW,GAAG7D,SAAS;AAAA,QAChC,CAACU,QAAQoD,gBAAgB,GAAG9D,SAAS,iBAAiB,CAACe;AAAAA,QACvD,CAACL,QAAQqD,mBAAmB,GAAG/D,SAAS,iBAAiBe;AAAAA,MAAAA,CAC1D;AAAA,MACDD,OAAOJ,QAAQI;AAAAA,MACfG,YAAYW,GAAGlB,QAAQO,YAAY;AAAA,QACjC,CAACP,QAAQsD,kBAAkB,GAAGjD;AAAAA,MAAAA,CAC/B;AAAA,IACH;AAAA,IACAE,YAAagD,gBAAgB/C,QAAQ,KAAKD,cAAec,cAAc;AAAA,IACvEb,UAAUgD,oBAAoBnD,UAAUG,QAAQ;AAAA,IAChDC,SAASJ,WAAWqB,SAAYjB;AAAAA,IAChCC,MAAMA,SAAS+C,eAAehD,OAAO,IAAI,WAAWiB;AAAAA,IACpDH,UAAUgC,gBAAgB/C,QAAQ,IAAIkB,SAAY;AAAA,IAAE,GAChDb;AAAAA,EAAAA,CACL;AAEL;"}