@ukic/web-components 3.19.0 → 3.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (627) hide show
  1. package/dist/cjs/{constants-3a9ba64a.js → constants-4d389abc.js} +14 -1
  2. package/dist/cjs/constants-4d389abc.js.map +1 -0
  3. package/dist/cjs/core.cjs.js +1 -1
  4. package/dist/cjs/{helpers-15fae358.js → helpers-3a796e7a.js} +161 -2
  5. package/dist/cjs/helpers-3a796e7a.js.map +1 -0
  6. package/dist/cjs/ic-accordion-group.cjs.entry.js +8 -5
  7. package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ic-accordion.cjs.entry.js +18 -11
  9. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ic-action-chip.cjs.entry.js +5 -5
  11. package/dist/cjs/ic-alert.cjs.entry.js +2 -2
  12. package/dist/cjs/ic-back-to-top.cjs.entry.js +6 -6
  13. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ic-badge.cjs.entry.js +5 -5
  15. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  16. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +5 -5
  17. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ic-breadcrumb.cjs.entry.js +4 -4
  19. package/dist/cjs/ic-button_3.cjs.entry.js +24 -23
  20. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-card-horizontal.cjs.entry.js +174 -0
  22. package/dist/cjs/ic-card-horizontal.cjs.entry.js.map +1 -0
  23. package/dist/cjs/ic-card-vertical.cjs.entry.js +7 -7
  24. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-checkbox-group.cjs.entry.js +4 -4
  26. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ic-checkbox.cjs.entry.js +7 -7
  28. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ic-chip.cjs.entry.js +5 -5
  30. package/dist/cjs/ic-classification-banner.cjs.entry.js +2 -2
  31. package/dist/cjs/ic-data-list.cjs.entry.js +2 -2
  32. package/dist/cjs/ic-data-row.cjs.entry.js +4 -4
  33. package/dist/cjs/ic-dialog.cjs.entry.js +34 -125
  34. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  35. package/dist/cjs/ic-divider.cjs.entry.js +18 -9
  36. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  37. package/dist/cjs/ic-empty-state.cjs.entry.js +4 -4
  38. package/dist/cjs/ic-footer-link-group.cjs.entry.js +2 -2
  39. package/dist/cjs/ic-footer-link.cjs.entry.js +5 -5
  40. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  41. package/dist/cjs/ic-footer.cjs.entry.js +5 -5
  42. package/dist/cjs/ic-hero.cjs.entry.js +6 -6
  43. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +8 -8
  44. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  45. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +12 -12
  46. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  47. package/dist/cjs/ic-input-label_2.cjs.entry.js +18 -13
  48. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  49. package/dist/cjs/ic-layout-grid-item.cjs.entry.js +2 -2
  50. package/dist/cjs/ic-layout-grid.cjs.entry.js +2 -2
  51. package/dist/cjs/ic-link.cjs.entry.js +4 -4
  52. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ic-menu-group.cjs.entry.js +3 -3
  54. package/dist/cjs/ic-menu-item.cjs.entry.js +2 -2
  55. package/dist/cjs/ic-navigation-button.cjs.entry.js +4 -4
  56. package/dist/cjs/ic-navigation-group.cjs.entry.js +4 -4
  57. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  58. package/dist/cjs/ic-navigation-item.cjs.entry.js +8 -6
  59. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ic-navigation-menu.cjs.entry.js +6 -6
  61. package/dist/cjs/ic-page-header.cjs.entry.js +9 -9
  62. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  63. package/dist/cjs/ic-pagination-item.cjs.entry.js +4 -4
  64. package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -1
  65. package/dist/cjs/ic-pagination.cjs.entry.js +6 -6
  66. package/dist/cjs/ic-popover-menu.cjs.entry.js +6 -6
  67. package/dist/cjs/ic-radio-group.cjs.entry.js +6 -6
  68. package/dist/cjs/ic-radio-option.cjs.entry.js +7 -7
  69. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ic-search-bar.cjs.entry.js +12 -12
  71. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  72. package/dist/cjs/ic-section-container.cjs.entry.js +2 -2
  73. package/dist/cjs/ic-select.cjs.entry.js +9 -9
  74. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  75. package/dist/cjs/ic-side-navigation.cjs.entry.js +18 -12
  76. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  77. package/dist/cjs/ic-skeleton.cjs.entry.js +2 -2
  78. package/dist/cjs/ic-skip-link.cjs.entry.js +2 -2
  79. package/dist/cjs/ic-status-tag.cjs.entry.js +4 -4
  80. package/dist/cjs/ic-step.cjs.entry.js +15 -15
  81. package/dist/cjs/ic-stepper.cjs.entry.js +4 -4
  82. package/dist/cjs/ic-switch.cjs.entry.js +7 -7
  83. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  84. package/dist/cjs/ic-tab-context.cjs.entry.js +1 -1
  85. package/dist/cjs/ic-tab-group.cjs.entry.js +4 -4
  86. package/dist/cjs/ic-tab-panel.cjs.entry.js +2 -2
  87. package/dist/cjs/ic-tab.cjs.entry.js +5 -5
  88. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  89. package/dist/cjs/ic-text-field.cjs.entry.js +7 -7
  90. package/dist/cjs/ic-theme.cjs.entry.js +3 -3
  91. package/dist/cjs/ic-toast-region.cjs.entry.js +1 -1
  92. package/dist/cjs/ic-toast.cjs.entry.js +7 -7
  93. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +5 -5
  94. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  95. package/dist/cjs/ic-toggle-button.cjs.entry.js +4 -4
  96. package/dist/cjs/ic-top-navigation.cjs.entry.js +8 -8
  97. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  98. package/dist/cjs/ic-typography.cjs.entry.js +5 -5
  99. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  100. package/dist/cjs/index-d337cd8a.js +4 -0
  101. package/dist/cjs/index.cjs.js +7 -1
  102. package/dist/cjs/index.cjs.js.map +1 -1
  103. package/dist/cjs/loader.cjs.js +1 -1
  104. package/dist/collection/collection-manifest.json +1 -0
  105. package/dist/collection/components/ic-accordion/ic-accordion.css +6 -0
  106. package/dist/collection/components/ic-accordion/ic-accordion.js +15 -8
  107. package/dist/collection/components/ic-accordion/ic-accordion.js.map +1 -1
  108. package/dist/collection/components/ic-accordion/ic-accordion.stories.js +21 -0
  109. package/dist/collection/components/ic-accordion-group/ic-accordion-group.css +11 -0
  110. package/dist/collection/components/ic-accordion-group/ic-accordion-group.js +6 -2
  111. package/dist/collection/components/ic-accordion-group/ic-accordion-group.js.map +1 -1
  112. package/dist/collection/components/ic-action-chip/ic-action-chip.js +3 -3
  113. package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +7 -0
  114. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +3 -3
  115. package/dist/collection/components/ic-badge/ic-badge.css +6 -0
  116. package/dist/collection/components/ic-badge/ic-badge.js +2 -2
  117. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +2 -2
  118. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.css +8 -0
  119. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js +2 -2
  120. package/dist/collection/components/ic-button/ic-button.css +7 -0
  121. package/dist/collection/components/ic-button/ic-button.js +2 -2
  122. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.css +728 -0
  123. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js +512 -0
  124. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js.map +1 -0
  125. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.stories.js +876 -0
  126. package/dist/collection/components/ic-card-vertical/ic-card-vertical.css +7 -0
  127. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js +4 -4
  128. package/dist/collection/components/ic-card-vertical/ic-card-vertical.stories.js +1 -1
  129. package/dist/collection/components/ic-checkbox/ic-checkbox.css +7 -5
  130. package/dist/collection/components/ic-checkbox/ic-checkbox.js +4 -4
  131. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +3 -3
  132. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  133. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.stories.js +35 -0
  134. package/dist/collection/components/ic-chip/ic-chip.js +3 -3
  135. package/dist/collection/components/ic-classification-banner/ic-classification-banner.js +2 -2
  136. package/dist/collection/components/ic-data-list/ic-data-list.js +2 -2
  137. package/dist/collection/components/ic-data-row/ic-data-row.js +2 -2
  138. package/dist/collection/components/ic-dialog/ic-dialog.js +33 -124
  139. package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -1
  140. package/dist/collection/components/ic-dialog/ic-dialog.stories.js +3 -2
  141. package/dist/collection/components/ic-divider/ic-divider.js +16 -7
  142. package/dist/collection/components/ic-divider/ic-divider.js.map +1 -1
  143. package/dist/collection/components/ic-empty-state/ic-empty-state.js +2 -2
  144. package/dist/collection/components/ic-footer/ic-footer.js +3 -3
  145. package/dist/collection/components/ic-footer-link/ic-footer-link.css +6 -0
  146. package/dist/collection/components/ic-footer-link/ic-footer-link.js +2 -2
  147. package/dist/collection/components/ic-hero/ic-hero.js +4 -4
  148. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.css +6 -0
  149. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +5 -5
  150. package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +7 -0
  151. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +3 -3
  152. package/dist/collection/components/ic-input-container/ic-input-container.js +2 -2
  153. package/dist/collection/components/ic-input-label/ic-input-label.js +16 -8
  154. package/dist/collection/components/ic-input-label/ic-input-label.js.map +1 -1
  155. package/dist/collection/components/ic-input-validation/ic-input-validation.js +3 -3
  156. package/dist/collection/components/ic-layout-grid/ic-layout-grid.js +2 -2
  157. package/dist/collection/components/ic-layout-grid-item/ic-layout-grid-item.js +2 -2
  158. package/dist/collection/components/ic-link/ic-link.css +7 -0
  159. package/dist/collection/components/ic-link/ic-link.js +1 -1
  160. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +5 -5
  161. package/dist/collection/components/ic-menu/ic-menu.css +6 -0
  162. package/dist/collection/components/ic-menu/ic-menu.js +3 -3
  163. package/dist/collection/components/ic-menu-group/ic-menu-group.js +1 -1
  164. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +2 -2
  165. package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +9 -0
  166. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +1 -1
  167. package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +41 -0
  168. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +5 -3
  169. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
  170. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +4 -4
  171. package/dist/collection/components/ic-page-header/ic-page-header.css +1 -2
  172. package/dist/collection/components/ic-page-header/ic-page-header.js +6 -6
  173. package/dist/collection/components/ic-pagination/ic-pagination.js +4 -4
  174. package/dist/collection/components/ic-pagination-item/ic-pagination-item.css +6 -0
  175. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +1 -1
  176. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +4 -4
  177. package/dist/collection/components/ic-radio-group/ic-radio-group.js +4 -4
  178. package/dist/collection/components/ic-radio-option/ic-radio-option.css +6 -0
  179. package/dist/collection/components/ic-radio-option/ic-radio-option.js +4 -4
  180. package/dist/collection/components/ic-search-bar/ic-search-bar.css +6 -0
  181. package/dist/collection/components/ic-search-bar/ic-search-bar.js +9 -9
  182. package/dist/collection/components/ic-section-container/ic-section-container.js +2 -2
  183. package/dist/collection/components/ic-select/ic-select.css +8 -0
  184. package/dist/collection/components/ic-select/ic-select.js +6 -6
  185. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +46 -21
  186. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +15 -9
  187. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  188. package/dist/collection/components/ic-skeleton/ic-skeleton.js +2 -2
  189. package/dist/collection/components/ic-skip-link/ic-skip-link.js +2 -2
  190. package/dist/collection/components/ic-status-tag/ic-status-tag.js +2 -2
  191. package/dist/collection/components/ic-step/ic-step.js +13 -13
  192. package/dist/collection/components/ic-stepper/ic-stepper.js +2 -2
  193. package/dist/collection/components/ic-switch/ic-switch.css +7 -0
  194. package/dist/collection/components/ic-switch/ic-switch.js +4 -4
  195. package/dist/collection/components/ic-tab/ic-tab.css +6 -0
  196. package/dist/collection/components/ic-tab/ic-tab.js +2 -2
  197. package/dist/collection/components/ic-tab-context/ic-tab-context.js +1 -1
  198. package/dist/collection/components/ic-tab-group/ic-tab-group.js +2 -2
  199. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +2 -2
  200. package/dist/collection/components/ic-text-field/ic-text-field.js +5 -5
  201. package/dist/collection/components/ic-theme/ic-theme.js +1 -1
  202. package/dist/collection/components/ic-toast/ic-toast.js +5 -5
  203. package/dist/collection/components/ic-toast-region/ic-toast-region.js +1 -1
  204. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +2 -2
  205. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.css +6 -0
  206. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +2 -2
  207. package/dist/collection/components/ic-tooltip/ic-tooltip.css +1 -1
  208. package/dist/collection/components/ic-tooltip/ic-tooltip.js +13 -12
  209. package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
  210. package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +8 -4
  211. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +5 -5
  212. package/dist/collection/components/ic-top-navigation/ic-top-navigation.stories.js +100 -0
  213. package/dist/collection/components/ic-typography/ic-typography.css +6 -0
  214. package/dist/collection/components/ic-typography/ic-typography.js +2 -2
  215. package/dist/collection/utils/constants.js +7 -0
  216. package/dist/collection/utils/constants.js.map +1 -1
  217. package/dist/collection/utils/helpers.js +169 -2
  218. package/dist/collection/utils/helpers.js.map +1 -1
  219. package/dist/collection/utils/types.js.map +1 -1
  220. package/dist/components/constants.js +8 -1
  221. package/dist/components/constants.js.map +1 -1
  222. package/dist/components/helpers.js +157 -2
  223. package/dist/components/helpers.js.map +1 -1
  224. package/dist/components/ic-accordion-group.js +6 -3
  225. package/dist/components/ic-accordion-group.js.map +1 -1
  226. package/dist/components/ic-accordion.js +16 -9
  227. package/dist/components/ic-accordion.js.map +1 -1
  228. package/dist/components/ic-action-chip.js +3 -3
  229. package/dist/components/ic-back-to-top.js +4 -4
  230. package/dist/components/ic-back-to-top.js.map +1 -1
  231. package/dist/components/ic-badge.js +3 -3
  232. package/dist/components/ic-badge.js.map +1 -1
  233. package/dist/components/ic-breadcrumb-group.js +3 -3
  234. package/dist/components/ic-breadcrumb-group.js.map +1 -1
  235. package/dist/components/ic-breadcrumb2.js +2 -2
  236. package/dist/components/ic-button2.js +3 -3
  237. package/dist/components/ic-button2.js.map +1 -1
  238. package/dist/components/ic-card-horizontal.d.ts +11 -0
  239. package/dist/components/ic-card-horizontal.js +214 -0
  240. package/dist/components/ic-card-horizontal.js.map +1 -0
  241. package/dist/components/ic-card-vertical.js +5 -5
  242. package/dist/components/ic-card-vertical.js.map +1 -1
  243. package/dist/components/ic-checkbox-group.js +2 -2
  244. package/dist/components/ic-checkbox-group.js.map +1 -1
  245. package/dist/components/ic-checkbox.js +5 -5
  246. package/dist/components/ic-checkbox.js.map +1 -1
  247. package/dist/components/ic-chip.js +3 -3
  248. package/dist/components/ic-classification-banner.js +2 -2
  249. package/dist/components/ic-classification-banner.js.map +1 -1
  250. package/dist/components/ic-data-list.js +2 -2
  251. package/dist/components/ic-data-row.js +2 -2
  252. package/dist/components/ic-dialog.js +33 -124
  253. package/dist/components/ic-dialog.js.map +1 -1
  254. package/dist/components/ic-divider2.js +17 -8
  255. package/dist/components/ic-divider2.js.map +1 -1
  256. package/dist/components/ic-empty-state.js +2 -2
  257. package/dist/components/ic-footer-link.js +3 -3
  258. package/dist/components/ic-footer-link.js.map +1 -1
  259. package/dist/components/ic-footer.js +4 -4
  260. package/dist/components/ic-hero.js +4 -4
  261. package/dist/components/ic-horizontal-scroll2.js +7 -7
  262. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  263. package/dist/components/ic-input-component-container2.js +4 -4
  264. package/dist/components/ic-input-component-container2.js.map +1 -1
  265. package/dist/components/ic-input-container2.js +2 -2
  266. package/dist/components/ic-input-label2.js +13 -8
  267. package/dist/components/ic-input-label2.js.map +1 -1
  268. package/dist/components/ic-input-validation2.js +4 -4
  269. package/dist/components/ic-layout-grid-item.js +2 -2
  270. package/dist/components/ic-layout-grid.js +2 -2
  271. package/dist/components/ic-link2.js +2 -2
  272. package/dist/components/ic-link2.js.map +1 -1
  273. package/dist/components/ic-loading-indicator2.js +5 -5
  274. package/dist/components/ic-menu-group.js +1 -1
  275. package/dist/components/ic-menu2.js +5 -5
  276. package/dist/components/ic-menu2.js.map +1 -1
  277. package/dist/components/ic-navigation-button.js +3 -3
  278. package/dist/components/ic-navigation-group.js +3 -3
  279. package/dist/components/ic-navigation-group.js.map +1 -1
  280. package/dist/components/ic-navigation-item.js +7 -5
  281. package/dist/components/ic-navigation-item.js.map +1 -1
  282. package/dist/components/ic-navigation-menu2.js +5 -5
  283. package/dist/components/ic-page-header.js +7 -7
  284. package/dist/components/ic-page-header.js.map +1 -1
  285. package/dist/components/ic-pagination-item2.js +3 -3
  286. package/dist/components/ic-pagination-item2.js.map +1 -1
  287. package/dist/components/ic-pagination.js +4 -4
  288. package/dist/components/ic-popover-menu.js +4 -4
  289. package/dist/components/ic-popover-menu.js.map +1 -1
  290. package/dist/components/ic-radio-group.js +4 -4
  291. package/dist/components/ic-radio-option.js +5 -5
  292. package/dist/components/ic-radio-option.js.map +1 -1
  293. package/dist/components/ic-search-bar.js +11 -11
  294. package/dist/components/ic-search-bar.js.map +1 -1
  295. package/dist/components/ic-section-container2.js +2 -2
  296. package/dist/components/ic-select.js +8 -8
  297. package/dist/components/ic-select.js.map +1 -1
  298. package/dist/components/ic-side-navigation.js +17 -11
  299. package/dist/components/ic-side-navigation.js.map +1 -1
  300. package/dist/components/ic-skeleton.js +2 -2
  301. package/dist/components/ic-skip-link.js +2 -2
  302. package/dist/components/ic-status-tag.js +2 -2
  303. package/dist/components/ic-step.js +13 -13
  304. package/dist/components/ic-stepper.js +2 -2
  305. package/dist/components/ic-switch.js +5 -5
  306. package/dist/components/ic-switch.js.map +1 -1
  307. package/dist/components/ic-tab-context.js +1 -1
  308. package/dist/components/ic-tab-group.js +2 -2
  309. package/dist/components/ic-tab-panel.js +2 -2
  310. package/dist/components/ic-tab.js +3 -3
  311. package/dist/components/ic-tab.js.map +1 -1
  312. package/dist/components/ic-text-field.js +6 -6
  313. package/dist/components/ic-theme.js +2 -2
  314. package/dist/components/ic-toast-region.js +1 -1
  315. package/dist/components/ic-toast.js +6 -6
  316. package/dist/components/ic-toggle-button-group.js +3 -3
  317. package/dist/components/ic-toggle-button-group.js.map +1 -1
  318. package/dist/components/ic-toggle-button.js +3 -3
  319. package/dist/components/ic-tooltip2.js +14 -13
  320. package/dist/components/ic-tooltip2.js.map +1 -1
  321. package/dist/components/ic-top-navigation.js +7 -7
  322. package/dist/components/ic-top-navigation.js.map +1 -1
  323. package/dist/components/ic-typography2.js +3 -3
  324. package/dist/components/ic-typography2.js.map +1 -1
  325. package/dist/components/index.js +1 -1
  326. package/dist/core/core.css +4 -4
  327. package/dist/core/core.esm.js +1 -1
  328. package/dist/core/core.esm.js.map +1 -1
  329. package/dist/core/index.esm.js +1 -1
  330. package/dist/core/{p-3b13d191.entry.js → p-04c77b2d.entry.js} +2 -2
  331. package/dist/core/p-04c77b2d.entry.js.map +1 -0
  332. package/dist/core/{p-7552c8a1.entry.js → p-07075461.entry.js} +2 -2
  333. package/dist/core/p-0a24c536.entry.js +2 -0
  334. package/dist/core/p-0a24c536.entry.js.map +1 -0
  335. package/dist/core/{p-6b6c1491.entry.js → p-0aba9e31.entry.js} +2 -2
  336. package/dist/core/p-0d7fd892.entry.js +2 -0
  337. package/dist/core/{p-06b3ae40.entry.js → p-0da2caa2.entry.js} +2 -2
  338. package/dist/core/{p-c4ffcc64.entry.js → p-1590fd69.entry.js} +2 -2
  339. package/dist/core/p-1590fd69.entry.js.map +1 -0
  340. package/dist/core/{p-62b9e7bf.entry.js → p-1edf2689.entry.js} +2 -2
  341. package/dist/core/{p-70e1dd4d.entry.js → p-208f470f.entry.js} +2 -2
  342. package/dist/core/p-29b61bb5.entry.js +3 -0
  343. package/dist/core/p-29b61bb5.entry.js.map +1 -0
  344. package/dist/core/{p-21efc36e.entry.js → p-2af89564.entry.js} +2 -2
  345. package/dist/core/{p-a86785dd.entry.js → p-2ca7f050.entry.js} +2 -2
  346. package/dist/core/{p-3785c740.entry.js → p-3021290f.entry.js} +2 -2
  347. package/dist/core/p-3021290f.entry.js.map +1 -0
  348. package/dist/core/{p-5cf704e3.entry.js → p-387b7bca.entry.js} +2 -2
  349. package/dist/core/p-41a5da12.entry.js +2 -0
  350. package/dist/core/p-41a5da12.entry.js.map +1 -0
  351. package/dist/core/p-43cc0f1d.entry.js +2 -0
  352. package/dist/core/{p-a8dc3162.entry.js.map → p-43cc0f1d.entry.js.map} +1 -1
  353. package/dist/core/{p-e0423c7e.entry.js → p-4aa56990.entry.js} +2 -2
  354. package/dist/core/p-4aa56990.entry.js.map +1 -0
  355. package/dist/core/p-4aadabc8.entry.js +2 -0
  356. package/dist/core/p-4aadabc8.entry.js.map +1 -0
  357. package/dist/core/{p-bddf799a.js → p-6215e2ae.js} +2 -2
  358. package/dist/core/p-6215e2ae.js.map +1 -0
  359. package/dist/core/{p-bfd03fb4.entry.js → p-707ae6e9.entry.js} +2 -2
  360. package/dist/core/{p-bb3a5130.entry.js → p-716e7eaf.entry.js} +2 -2
  361. package/dist/core/p-716e7eaf.entry.js.map +1 -0
  362. package/dist/core/p-780babc0.entry.js +2 -0
  363. package/dist/core/p-780babc0.entry.js.map +1 -0
  364. package/dist/core/{p-fb43abd6.entry.js → p-78a54069.entry.js} +2 -2
  365. package/dist/core/{p-5e1a77aa.entry.js → p-79949920.entry.js} +2 -2
  366. package/dist/core/p-7b8e5926.entry.js +2 -0
  367. package/dist/core/p-7b8e5926.entry.js.map +1 -0
  368. package/dist/core/{p-43356493.entry.js → p-7f279c8a.entry.js} +2 -2
  369. package/dist/core/{p-9452b9ac.entry.js → p-808e1ef5.entry.js} +2 -2
  370. package/dist/core/{p-082e0068.entry.js → p-812c5e61.entry.js} +2 -2
  371. package/dist/core/p-812c5e61.entry.js.map +1 -0
  372. package/dist/core/{p-f4e2e41f.entry.js → p-85e15d01.entry.js} +2 -2
  373. package/dist/core/{p-1cc402b8.entry.js → p-880afd4b.entry.js} +2 -2
  374. package/dist/core/{p-af02add9.entry.js → p-8da90b72.entry.js} +2 -2
  375. package/dist/core/p-8fe4e0ad.entry.js +2 -0
  376. package/dist/core/p-8fe4e0ad.entry.js.map +1 -0
  377. package/dist/core/{p-4fa7fbc4.entry.js → p-9057a186.entry.js} +2 -2
  378. package/dist/core/p-9057a186.entry.js.map +1 -0
  379. package/dist/core/{p-091a7fbf.entry.js → p-94916588.entry.js} +2 -2
  380. package/dist/core/{p-a7f21494.entry.js → p-949d08d3.entry.js} +2 -2
  381. package/dist/core/{p-8abcc114.entry.js → p-96bc7d24.entry.js} +2 -2
  382. package/dist/core/p-96bc7d24.entry.js.map +1 -0
  383. package/dist/core/{p-dfc2a0b1.entry.js → p-99687bce.entry.js} +2 -2
  384. package/dist/core/{p-a5295f66.entry.js → p-99951365.entry.js} +2 -2
  385. package/dist/core/p-99951365.entry.js.map +1 -0
  386. package/dist/core/p-9a4e067f.entry.js +2 -0
  387. package/dist/core/p-9a4e067f.entry.js.map +1 -0
  388. package/dist/core/p-a03bb31c.entry.js +2 -0
  389. package/dist/core/p-a03bb31c.entry.js.map +1 -0
  390. package/dist/core/{p-49444c33.entry.js → p-a0af1b0a.entry.js} +2 -2
  391. package/dist/core/p-a1b2f483.entry.js +2 -0
  392. package/dist/core/p-a1b2f483.entry.js.map +1 -0
  393. package/dist/core/{p-44fbe8c2.entry.js → p-a3dea729.entry.js} +2 -2
  394. package/dist/core/p-a674b13b.entry.js +2 -0
  395. package/dist/core/p-a674b13b.entry.js.map +1 -0
  396. package/dist/core/{p-6e8ef73c.entry.js → p-a851eb65.entry.js} +2 -2
  397. package/dist/core/{p-bdda404b.entry.js → p-aed1c7e7.entry.js} +2 -2
  398. package/dist/core/p-b4e322fe.entry.js +2 -0
  399. package/dist/core/p-b4e322fe.entry.js.map +1 -0
  400. package/dist/core/{p-3a94849e.entry.js → p-b8c0c142.entry.js} +2 -2
  401. package/dist/core/{p-b00efb15.entry.js → p-c156e6e9.entry.js} +2 -2
  402. package/dist/core/p-c5b9519d.entry.js +2 -0
  403. package/dist/core/p-c5b9519d.entry.js.map +1 -0
  404. package/dist/core/{p-d8200098.entry.js → p-cad23b7d.entry.js} +2 -2
  405. package/dist/core/{p-411527a1.entry.js → p-cfd43558.entry.js} +2 -2
  406. package/dist/core/p-cfd43558.entry.js.map +1 -0
  407. package/dist/core/{p-8798cc6b.entry.js → p-d1730d4d.entry.js} +2 -2
  408. package/dist/core/{p-4637c326.entry.js → p-d25d0aad.entry.js} +2 -2
  409. package/dist/core/p-d25d0aad.entry.js.map +1 -0
  410. package/dist/core/{p-296a41ce.entry.js → p-db17a793.entry.js} +2 -2
  411. package/dist/core/p-db17a793.entry.js.map +1 -0
  412. package/dist/core/p-dbc8bf0c.js +2 -0
  413. package/dist/core/p-dbc8bf0c.js.map +1 -0
  414. package/dist/core/{p-355d0914.entry.js → p-dce11b9d.entry.js} +2 -2
  415. package/dist/core/p-dce11b9d.entry.js.map +1 -0
  416. package/dist/core/{p-28c9a6e4.entry.js → p-ded4cd76.entry.js} +2 -2
  417. package/dist/core/p-ded4cd76.entry.js.map +1 -0
  418. package/dist/core/{p-0eafbaa1.entry.js → p-ea890d3d.entry.js} +2 -2
  419. package/dist/core/{p-ae7dcbd5.entry.js → p-ec14c783.entry.js} +2 -2
  420. package/dist/core/{p-539b975f.entry.js → p-f0ecb80b.entry.js} +2 -2
  421. package/dist/core/p-f0ecb80b.entry.js.map +1 -0
  422. package/dist/core/{p-77a6c3f7.entry.js → p-f3406b42.entry.js} +2 -2
  423. package/dist/core/p-f3406b42.entry.js.map +1 -0
  424. package/dist/core/{p-6fb29846.entry.js → p-f6de08fb.entry.js} +2 -2
  425. package/dist/core/{p-911b4aa4.entry.js → p-f700b759.entry.js} +2 -2
  426. package/dist/core/{p-a7645717.entry.js → p-fdb587ab.entry.js} +2 -2
  427. package/dist/core/{p-287e5c17.entry.js → p-feef7c2c.entry.js} +2 -2
  428. package/dist/esm/{constants-7960cba4.js → constants-ab12fdcf.js} +9 -2
  429. package/dist/esm/constants-ab12fdcf.js.map +1 -0
  430. package/dist/esm/core.js +1 -1
  431. package/dist/esm/{helpers-dcedb279.js → helpers-0f85537f.js} +158 -3
  432. package/dist/esm/helpers-0f85537f.js.map +1 -0
  433. package/dist/esm/ic-accordion-group.entry.js +8 -5
  434. package/dist/esm/ic-accordion-group.entry.js.map +1 -1
  435. package/dist/esm/ic-accordion.entry.js +18 -11
  436. package/dist/esm/ic-accordion.entry.js.map +1 -1
  437. package/dist/esm/ic-action-chip.entry.js +5 -5
  438. package/dist/esm/ic-alert.entry.js +2 -2
  439. package/dist/esm/ic-back-to-top.entry.js +6 -6
  440. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  441. package/dist/esm/ic-badge.entry.js +5 -5
  442. package/dist/esm/ic-badge.entry.js.map +1 -1
  443. package/dist/esm/ic-breadcrumb-group.entry.js +5 -5
  444. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  445. package/dist/esm/ic-breadcrumb.entry.js +4 -4
  446. package/dist/esm/ic-button_3.entry.js +24 -23
  447. package/dist/esm/ic-button_3.entry.js.map +1 -1
  448. package/dist/esm/ic-card-horizontal.entry.js +170 -0
  449. package/dist/esm/ic-card-horizontal.entry.js.map +1 -0
  450. package/dist/esm/ic-card-vertical.entry.js +7 -7
  451. package/dist/esm/ic-card-vertical.entry.js.map +1 -1
  452. package/dist/esm/ic-checkbox-group.entry.js +4 -4
  453. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  454. package/dist/esm/ic-checkbox.entry.js +7 -7
  455. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  456. package/dist/esm/ic-chip.entry.js +5 -5
  457. package/dist/esm/ic-classification-banner.entry.js +2 -2
  458. package/dist/esm/ic-data-list.entry.js +2 -2
  459. package/dist/esm/ic-data-row.entry.js +4 -4
  460. package/dist/esm/ic-dialog.entry.js +34 -125
  461. package/dist/esm/ic-dialog.entry.js.map +1 -1
  462. package/dist/esm/ic-divider.entry.js +18 -9
  463. package/dist/esm/ic-divider.entry.js.map +1 -1
  464. package/dist/esm/ic-empty-state.entry.js +4 -4
  465. package/dist/esm/ic-footer-link-group.entry.js +2 -2
  466. package/dist/esm/ic-footer-link.entry.js +5 -5
  467. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  468. package/dist/esm/ic-footer.entry.js +5 -5
  469. package/dist/esm/ic-hero.entry.js +6 -6
  470. package/dist/esm/ic-horizontal-scroll.entry.js +8 -8
  471. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  472. package/dist/esm/ic-input-component-container_3.entry.js +12 -12
  473. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  474. package/dist/esm/ic-input-label_2.entry.js +18 -13
  475. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  476. package/dist/esm/ic-layout-grid-item.entry.js +2 -2
  477. package/dist/esm/ic-layout-grid.entry.js +2 -2
  478. package/dist/esm/ic-link.entry.js +4 -4
  479. package/dist/esm/ic-link.entry.js.map +1 -1
  480. package/dist/esm/ic-menu-group.entry.js +3 -3
  481. package/dist/esm/ic-menu-item.entry.js +2 -2
  482. package/dist/esm/ic-navigation-button.entry.js +4 -4
  483. package/dist/esm/ic-navigation-group.entry.js +4 -4
  484. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  485. package/dist/esm/ic-navigation-item.entry.js +8 -6
  486. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  487. package/dist/esm/ic-navigation-menu.entry.js +6 -6
  488. package/dist/esm/ic-page-header.entry.js +9 -9
  489. package/dist/esm/ic-page-header.entry.js.map +1 -1
  490. package/dist/esm/ic-pagination-item.entry.js +4 -4
  491. package/dist/esm/ic-pagination-item.entry.js.map +1 -1
  492. package/dist/esm/ic-pagination.entry.js +6 -6
  493. package/dist/esm/ic-popover-menu.entry.js +6 -6
  494. package/dist/esm/ic-radio-group.entry.js +6 -6
  495. package/dist/esm/ic-radio-option.entry.js +7 -7
  496. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  497. package/dist/esm/ic-search-bar.entry.js +12 -12
  498. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  499. package/dist/esm/ic-section-container.entry.js +2 -2
  500. package/dist/esm/ic-select.entry.js +9 -9
  501. package/dist/esm/ic-select.entry.js.map +1 -1
  502. package/dist/esm/ic-side-navigation.entry.js +18 -12
  503. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  504. package/dist/esm/ic-skeleton.entry.js +2 -2
  505. package/dist/esm/ic-skip-link.entry.js +2 -2
  506. package/dist/esm/ic-status-tag.entry.js +4 -4
  507. package/dist/esm/ic-step.entry.js +15 -15
  508. package/dist/esm/ic-stepper.entry.js +4 -4
  509. package/dist/esm/ic-switch.entry.js +7 -7
  510. package/dist/esm/ic-switch.entry.js.map +1 -1
  511. package/dist/esm/ic-tab-context.entry.js +1 -1
  512. package/dist/esm/ic-tab-group.entry.js +4 -4
  513. package/dist/esm/ic-tab-panel.entry.js +2 -2
  514. package/dist/esm/ic-tab.entry.js +5 -5
  515. package/dist/esm/ic-tab.entry.js.map +1 -1
  516. package/dist/esm/ic-text-field.entry.js +7 -7
  517. package/dist/esm/ic-theme.entry.js +3 -3
  518. package/dist/esm/ic-toast-region.entry.js +1 -1
  519. package/dist/esm/ic-toast.entry.js +7 -7
  520. package/dist/esm/ic-toggle-button-group.entry.js +5 -5
  521. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  522. package/dist/esm/ic-toggle-button.entry.js +4 -4
  523. package/dist/esm/ic-top-navigation.entry.js +8 -8
  524. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  525. package/dist/esm/ic-typography.entry.js +5 -5
  526. package/dist/esm/ic-typography.entry.js.map +1 -1
  527. package/dist/esm/index-a7a720e7.js +4 -0
  528. package/dist/esm/index.js +1 -1
  529. package/dist/esm/loader.js +1 -1
  530. package/dist/types/components/ic-accordion-group/ic-accordion-group.d.ts +1 -0
  531. package/dist/types/components/ic-card-horizontal/ic-card-horizontal.d.ts +89 -0
  532. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +1 -0
  533. package/dist/types/components/ic-dialog/ic-dialog.d.ts +2 -15
  534. package/dist/types/components/ic-divider/ic-divider.d.ts +2 -0
  535. package/dist/types/components/ic-input-label/ic-input-label.d.ts +4 -1
  536. package/dist/types/components/ic-tooltip/ic-tooltip.d.ts +1 -1
  537. package/dist/types/components.d.ts +123 -2
  538. package/dist/types/utils/constants.d.ts +6 -0
  539. package/dist/types/utils/helpers.d.ts +69 -2
  540. package/dist/types/utils/types.d.ts +2 -0
  541. package/hydrate/index.js +683 -373
  542. package/hydrate/index.mjs +683 -373
  543. package/package.json +2 -2
  544. package/vscode-data.json +117 -0
  545. package/dist/cjs/constants-3a9ba64a.js.map +0 -1
  546. package/dist/cjs/helpers-15fae358.js.map +0 -1
  547. package/dist/core/p-012e058a.entry.js +0 -3
  548. package/dist/core/p-012e058a.entry.js.map +0 -1
  549. package/dist/core/p-0257d59e.entry.js +0 -2
  550. package/dist/core/p-0257d59e.entry.js.map +0 -1
  551. package/dist/core/p-082e0068.entry.js.map +0 -1
  552. package/dist/core/p-128e2cbb.entry.js +0 -2
  553. package/dist/core/p-128e2cbb.entry.js.map +0 -1
  554. package/dist/core/p-28c9a6e4.entry.js.map +0 -1
  555. package/dist/core/p-296a41ce.entry.js.map +0 -1
  556. package/dist/core/p-34cc376c.entry.js +0 -2
  557. package/dist/core/p-34cc376c.entry.js.map +0 -1
  558. package/dist/core/p-355d0914.entry.js.map +0 -1
  559. package/dist/core/p-3785c740.entry.js.map +0 -1
  560. package/dist/core/p-3b13d191.entry.js.map +0 -1
  561. package/dist/core/p-411527a1.entry.js.map +0 -1
  562. package/dist/core/p-44aaf454.entry.js +0 -2
  563. package/dist/core/p-44aaf454.entry.js.map +0 -1
  564. package/dist/core/p-4637c326.entry.js.map +0 -1
  565. package/dist/core/p-4fa7fbc4.entry.js.map +0 -1
  566. package/dist/core/p-52fa3eec.entry.js +0 -2
  567. package/dist/core/p-52fa3eec.entry.js.map +0 -1
  568. package/dist/core/p-539b975f.entry.js.map +0 -1
  569. package/dist/core/p-614953c5.entry.js +0 -2
  570. package/dist/core/p-614953c5.entry.js.map +0 -1
  571. package/dist/core/p-72ac8bb9.entry.js +0 -2
  572. package/dist/core/p-72ac8bb9.entry.js.map +0 -1
  573. package/dist/core/p-77a6c3f7.entry.js.map +0 -1
  574. package/dist/core/p-8abcc114.entry.js.map +0 -1
  575. package/dist/core/p-a45de09d.entry.js +0 -2
  576. package/dist/core/p-a45de09d.entry.js.map +0 -1
  577. package/dist/core/p-a5295f66.entry.js.map +0 -1
  578. package/dist/core/p-a5658054.js +0 -2
  579. package/dist/core/p-a5658054.js.map +0 -1
  580. package/dist/core/p-a8dc3162.entry.js +0 -2
  581. package/dist/core/p-ad6632a9.entry.js +0 -2
  582. package/dist/core/p-ad6632a9.entry.js.map +0 -1
  583. package/dist/core/p-ae861bb8.entry.js +0 -2
  584. package/dist/core/p-bb3a5130.entry.js.map +0 -1
  585. package/dist/core/p-bddf799a.js.map +0 -1
  586. package/dist/core/p-c397b33f.entry.js +0 -2
  587. package/dist/core/p-c397b33f.entry.js.map +0 -1
  588. package/dist/core/p-c4ffcc64.entry.js.map +0 -1
  589. package/dist/core/p-e0423c7e.entry.js.map +0 -1
  590. package/dist/core/p-f247db14.entry.js +0 -2
  591. package/dist/core/p-f247db14.entry.js.map +0 -1
  592. package/dist/esm/constants-7960cba4.js.map +0 -1
  593. package/dist/esm/helpers-dcedb279.js.map +0 -1
  594. /package/dist/core/{p-7552c8a1.entry.js.map → p-07075461.entry.js.map} +0 -0
  595. /package/dist/core/{p-6b6c1491.entry.js.map → p-0aba9e31.entry.js.map} +0 -0
  596. /package/dist/core/{p-ae861bb8.entry.js.map → p-0d7fd892.entry.js.map} +0 -0
  597. /package/dist/core/{p-06b3ae40.entry.js.map → p-0da2caa2.entry.js.map} +0 -0
  598. /package/dist/core/{p-62b9e7bf.entry.js.map → p-1edf2689.entry.js.map} +0 -0
  599. /package/dist/core/{p-70e1dd4d.entry.js.map → p-208f470f.entry.js.map} +0 -0
  600. /package/dist/core/{p-21efc36e.entry.js.map → p-2af89564.entry.js.map} +0 -0
  601. /package/dist/core/{p-a86785dd.entry.js.map → p-2ca7f050.entry.js.map} +0 -0
  602. /package/dist/core/{p-5cf704e3.entry.js.map → p-387b7bca.entry.js.map} +0 -0
  603. /package/dist/core/{p-bfd03fb4.entry.js.map → p-707ae6e9.entry.js.map} +0 -0
  604. /package/dist/core/{p-fb43abd6.entry.js.map → p-78a54069.entry.js.map} +0 -0
  605. /package/dist/core/{p-5e1a77aa.entry.js.map → p-79949920.entry.js.map} +0 -0
  606. /package/dist/core/{p-43356493.entry.js.map → p-7f279c8a.entry.js.map} +0 -0
  607. /package/dist/core/{p-9452b9ac.entry.js.map → p-808e1ef5.entry.js.map} +0 -0
  608. /package/dist/core/{p-f4e2e41f.entry.js.map → p-85e15d01.entry.js.map} +0 -0
  609. /package/dist/core/{p-1cc402b8.entry.js.map → p-880afd4b.entry.js.map} +0 -0
  610. /package/dist/core/{p-af02add9.entry.js.map → p-8da90b72.entry.js.map} +0 -0
  611. /package/dist/core/{p-091a7fbf.entry.js.map → p-94916588.entry.js.map} +0 -0
  612. /package/dist/core/{p-a7f21494.entry.js.map → p-949d08d3.entry.js.map} +0 -0
  613. /package/dist/core/{p-dfc2a0b1.entry.js.map → p-99687bce.entry.js.map} +0 -0
  614. /package/dist/core/{p-49444c33.entry.js.map → p-a0af1b0a.entry.js.map} +0 -0
  615. /package/dist/core/{p-44fbe8c2.entry.js.map → p-a3dea729.entry.js.map} +0 -0
  616. /package/dist/core/{p-6e8ef73c.entry.js.map → p-a851eb65.entry.js.map} +0 -0
  617. /package/dist/core/{p-bdda404b.entry.js.map → p-aed1c7e7.entry.js.map} +0 -0
  618. /package/dist/core/{p-3a94849e.entry.js.map → p-b8c0c142.entry.js.map} +0 -0
  619. /package/dist/core/{p-b00efb15.entry.js.map → p-c156e6e9.entry.js.map} +0 -0
  620. /package/dist/core/{p-d8200098.entry.js.map → p-cad23b7d.entry.js.map} +0 -0
  621. /package/dist/core/{p-8798cc6b.entry.js.map → p-d1730d4d.entry.js.map} +0 -0
  622. /package/dist/core/{p-0eafbaa1.entry.js.map → p-ea890d3d.entry.js.map} +0 -0
  623. /package/dist/core/{p-ae7dcbd5.entry.js.map → p-ec14c783.entry.js.map} +0 -0
  624. /package/dist/core/{p-6fb29846.entry.js.map → p-f6de08fb.entry.js.map} +0 -0
  625. /package/dist/core/{p-911b4aa4.entry.js.map → p-f700b759.entry.js.map} +0 -0
  626. /package/dist/core/{p-a7645717.entry.js.map → p-fdb587ab.entry.js.map} +0 -0
  627. /package/dist/core/{p-287e5c17.entry.js.map → p-feef7c2c.entry.js.map} +0 -0
@@ -1,7 +1,7 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
2
  import { c as closeIcon } from './close-icon.js';
3
3
  import { c as chevronIcon } from './chevron-icon.js';
4
- import { L as getCssProperty, q as getCurrentDeviceSize, D as DEVICE_SIZES, l as getBrandForegroundAppearance, i as isSlotUsed, C as isEmptyString, c as checkResizeObserver, o as onComponentRequiredPropUndefined, I as IcBrandForegroundEnum, E as hasClassificationBanner, m as isPropDefined } from './helpers.js';
4
+ import { P as getCssProperty, q as getCurrentDeviceSize, D as DEVICE_SIZES, l as getBrandForegroundAppearance, i as isSlotUsed, H as isEmptyString, c as checkResizeObserver, o as onComponentRequiredPropUndefined, I as IcBrandForegroundEnum, J as hasClassificationBanner, m as isPropDefined } from './helpers.js';
5
5
  import { d as defineCustomElement$6 } from './ic-button2.js';
6
6
  import { d as defineCustomElement$5 } from './ic-divider2.js';
7
7
  import { d as defineCustomElement$4 } from './ic-loading-indicator2.js';
@@ -15,7 +15,7 @@ const menuIcon = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fi
15
15
  </svg>
16
16
  `;
17
17
 
18
- const icSideNavigationCss = ":host{display:block;--ic-typography-color:currentcolor;--side-navigation-position:fixed;--side-navigation-position-left:0;--side-navigation-position-top:var(--ic-space-xxl);--side-navigation-height:var(--ic-space-xxl);--sm-side-navigation-top-bar-height:3.5rem;--sm-side-navigation-collapsed-labels-width:6rem;--sm-side-navigation-expand-transition-duration:var(\n --ic-transition-duration-slow\n );--side-navigation-width:20rem;--sm-side-navigation-bottom-bar-height:3.5rem;--keyline-lighten:var(--ic-space-1px) solid var(--ic-side-navigation-keyline);--keyline-darken:var(--ic-space-1px) solid var(--ic-state-layer-darken-20);--ic-button-secondary-text-monochrome:var(--ic-brand-text-color);--ic-button-secondary-border-monochrome:var(--ic-brand-text-color);z-index:var(--ic-z-index-side-navigation)}:host>*{box-sizing:border-box}.side-navigation{display:flex;flex-direction:column;width:var(--side-navigation-width);color:var(--ic-side-navigation-text);position:var(--side-navigation-position);top:var(--side-navigation-position-top);left:calc(var(--side-navigation-width) * -1);bottom:0;background-color:var(--ic-side-navigation-background);z-index:var(--ic-z-index-side-navigation)}:host(.ic-side-navigation-inline) .side-navigation{position:absolute;height:100%}:host(.anchor-right) .side-navigation{right:calc(var(--side-navigation-width) * -1)}.classification-spacing{margin-bottom:var(--ic-space-lg)}.navigation-list{padding:0;margin:0;list-style:none}.side-navigation-inner{background-color:var(--ic-side-navigation-background);display:flex;flex-direction:column;flex:1 1 4rem;overflow:auto}:host(.ic-side-navigation-inline) .side-navigation-inner{flex:1}:host(.xs-menu-open) .side-navigation{transition:left var(--ic-easing-transition-slow);left:0}:host(:has(.xs-menu-open,.xs-menu-close)) ::slotted(ic-navigation-item){--navigation-item-side-nav-right:var(--ic-space-xl)}:host(.xs-menu-close) .side-navigation{left:calc(var(--side-navigation-width) * -1);transition:left var(--ic-easing-transition-slow)}:host(.xs-menu-close) .side-navigation>*{visibility:hidden}:host(.anchor-right.xs-menu-open) .side-navigation{right:0;left:auto}:host(.anchor-right.xs-menu-close) .side-navigation{right:calc(var(--side-navigation-width) * -1);left:auto;transition:right var(--ic-easing-transition-slow)}.bottom-wrapper{border-top:var(--keyline-lighten);bottom:0;left:0;z-index:2;background-color:var(--ic-side-navigation-background);display:flex;flex-direction:column}:host(.ic-side-navigation-inline) .bottom-wrapper{position:sticky}:host(.ic-side-navigation-dark) .bottom-wrapper{border-top:var(--keyline-darken)}.top-bar{display:flex;flex-direction:row;align-items:center;min-height:var(--side-navigation-height);padding:var(--ic-space-xs);box-sizing:border-box;background-color:var(--ic-side-navigation-background);position:fixed;top:0;left:0;right:0;border-bottom:var(--keyline-lighten);box-shadow:var(--ic-elevation-overlay);z-index:2;overflow:hidden;visibility:visible}:host(.ic-side-navigation-inline) .top-bar{position:absolute}:host(.ic-side-navigation-dark) .top-bar{border-bottom:var(--keyline-darken)}.top-bar.dark a:focus{box-shadow:var(--ic-border-focus)}.app-title-wrapper{display:flex;margin-left:var(--ic-space-xs);border-left:var(--keyline-lighten);padding-left:var(--ic-space-xxs);color:var(--ic-side-navigation-text);align-items:center}:host(.ic-side-navigation-dark) .app-title-wrapper{border-left:var(--keyline-darken)}.app-title-wrapper ic-typography h1{margin:0}@media screen and (min-width: 340px){.app-title-wrapper ic-typography{margin-left:var(--ic-space-xs)}}:host .title-link{display:flex;align-items:center;transition:box-shadow var(--ic-easing-transition-fast),\n background-color var(--ic-easing-transition-fast);text-decoration:none;padding:var(--ic-space-xxs);color:var(--ic-side-navigation-text)}:host .title-link:visited,:host .title-link:active{color:var(--ic-side-navigation-text)}slot[name=\"app-title\"]::slotted(a),slot[name=\"app-icon\"]::slotted(a){color:var(--ic-side-navigation-text);outline:none;text-decoration:none;display:flex}slot[name=\"app-title\"]::slotted(ic-typography),slot[name=\"app-title\"]::slotted(a){margin-left:var(--ic-space-xs) !important}slot[name=\"app-title\"]::slotted(a){font:var(--ic-font-subtitle-small)}@media screen and (min-width: 577px){:host(.sm-collapsed) slot[name=\"app-title\"]::slotted(ic-typography),:host(.sm-collapsed) slot[name=\"app-title\"]::slotted(a){position:absolute;left:-9999px;opacity:0;transition:opacity var(--ic-easing-transition-slow)}:host(.sm-collapsed) slot[name=\"app-title\"]:dir(rtl)::slotted(ic-typography),:host(.sm-collapsed) slot[name=\"app-title\"]:dir(rtl)::slotted(a){right:-9999px}:host(.sm-expanded) slot[name=\"app-title\"]::slotted(a){font:var(--ic-font-h3) !important;font-weight:var(--ic-font-weight-semibold) !important;margin-left:var(--ic-space-xs) !important}}:host .title-link:hover{border-radius:var(--ic-border-radius);background-color:var(--ic-side-navigation-hover)}:host .title-link:active{background-color:var(--ic-side-navigation-pressed)}:host .title-link:focus,:host .title-link:focus-within{border-radius:var(--ic-border-radius);box-shadow:var(--ic-border-focus);outline:var(--ic-hc-focus-outline);background-color:transparent}:host .title-link ic-typography{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.app-title-wrapper ::slotted(svg){fill:var(--ic-side-navigation-text)}.app-icon-container{display:none}.button-label{display:flex;align-items:center}.mobile-top-bar-menu-icon{display:flex}.menu-button{width:6.5rem}.app-status-wrapper{inset:0 var(--ic-space-sm) 0 3.5rem;width:auto;display:flex;gap:var(--ic-space-xs);padding:var(--ic-space-sm) 0;justify-content:flex-end;align-items:flex-end;pointer-events:none;height:-moz-fit-content;height:fit-content;margin:0 var(--ic-space-xs)}.app-status-wrapper .app-version{display:flex;overflow-wrap:break-word;padding-bottom:var(--ic-space-xxs)}.app-status-wrapper .app-status{display:flex;border-radius:1rem;background-color:var(--ic-side-navigation-text);color:var(--ic-side-navigation-status-tag-text);padding:var(--ic-space-xxs) var(--ic-space-lg);min-width:1rem}.app-status-wrapper .app-status-text{overflow-wrap:break-word}:host(.ic-side-navigation-dark) .app-status-wrapper .app-status{--ic-typography-color:var(--ic-architectural-white)}.navigation-landmark-title{position:absolute;width:var(--ic-space-1px);height:var(--ic-space-1px);padding:0;margin:calc(-1 * var(--ic-space-1px));overflow:hidden}::slotted(ic-navigation-group){--navigation-group-height:2.75rem;--navigation-group-justify-content:space-between;--navigation-group-hover:var(--ic-side-navigation-hover);--navigation-group-text-hover:var(--ic-side-navigation-text);--navigation-item-child-height:3.5rem;--navigation-item-child-active:var(--ic-action-dark-bg-pressed);--navigation-item-child-color:var(--ic-side-navigation-text);--navigation-group-expand-toggle-padding:0.25rem}::slotted(ic-navigation-item),::slotted(ic-navigation-group){--navigation-item-justify-content:flex-start;--navigation-item-min-height:56px;--navigation-item-height:auto}.bottom-side-nav{position:relative;align-content:flex-end;min-height:var(--sm-side-navigation-top-bar-height)}.bottom-side-nav ic-divider{position:absolute;top:0}.primary-navigation{flex:1;display:flex;flex-direction:column;overflow-y:auto;scrollbar-width:none}.primary-navigation::-webkit-scrollbar{display:none}.primary-navigation,.secondary-navigation{overflow-x:hidden}.bottom-side-nav .menu-expand-button{position:absolute;display:none}.menu-visibility-visible{visibility:visible;width:100%}.app-title-show{min-width:15.5rem}:host(.side-display){display:flex;flex-direction:column;height:100vh;position:var(--side-navigation-position);left:0;top:0;bottom:0}:host(.side-display) .app-icon-container{height:40px;display:flex;align-items:center}:host(.side-display) .top-bar{--side-navigation-height:var(--sm-side-navigation-top-bar-height);position:relative;padding:0;box-shadow:none}:host(.ic-side-navigation-inline.side-display) .top-bar{position:sticky}:host(.anchor-right.side-display) .top-bar{box-shadow:0.188rem 0.188rem 0.5rem rgb(0 0 0 / 20%)}:host(.anchor-right.side-display) .bottom-wrapper{box-shadow:0.188rem -0.188rem 0.5rem rgb(0 0 0 / 20%)}:host(.side-display) .side-navigation,:host(.side-display) .top-bar{width:var(--sm-side-navigation-top-bar-height)}:host(.sm-collapsed.side-display){width:var(--sm-side-navigation-top-bar-height);transition:width var(--ic-easing-transition-slow)}:host(.sm-collapsed.collapsed-labels.side-display){width:var(--sm-side-navigation-collapsed-labels-width)}:host(.sm-expanded.side-display){width:var(--side-navigation-width);transition:width var(--ic-easing-transition-slow);box-shadow:var(--ic-elevation-overlay)}:host(.side-display) .side-navigation{--side-navigation-position-top:0;flex:1;position:relative;top:auto;left:auto;bottom:auto}:host(.ic-side-navigation-inline.side-display) .side-navigation{position:relative}:host(.anchor-right.side-display) .side-navigation{left:auto;right:0}:host(.side-display) .app-title-wrapper{margin-left:0;border-left:none;padding:var(--ic-space-xs) var(--ic-space-sm)}:host(.side-display) .app-title-wrapper ::slotted(svg){height:var(--ic-space-lg);width:var(--ic-space-lg)}:host(.side-display) .app-title-wrapper ic-typography{font-weight:var(--ic-font-weight-semibold)}:host(.sm-collapsed.side-display) .app-title-wrapper ic-typography{position:absolute;left:-9999px;opacity:0;transition:opacity var(--ic-easing-transition-slow)}:host(.sm-collapsed.side-display) .app-title-wrapper ic-typography:dir(rtl){right:-9999px}:host(.sm-expanded.side-display) ic-typography{position:relative;left:0}:host(.sm-expanded.side-display) :is(.side-navigation,.top-bar){width:var(--side-navigation-width);transition:width var(--ic-easing-transition-slow)}:host(.sm-collapsed.side-display) :is(.side-navigation,.top-bar){width:var(--sm-side-navigation-top-bar-height);transition:width var(--ic-easing-transition-slow)}:host(.anchor-right.sm-expanded.side-display) :is(.side-navigation,.top-bar){left:auto;right:0}:host(.side-display) .app-status-wrapper,:host(.sm-collapsed.side-display) .app-status-wrapper{display:none;margin-left:0}:host(.sm-expanded.side-display) .app-status-wrapper{display:flex;max-width:16rem;margin-right:calc(var(--ic-space-xxxs) + var(--ic-space-xs))}:host(.side-display) .bottom-side-nav{justify-items:flex-end;align-items:flex-end;justify-content:flex-end;display:flex;outline:none}:host(.side-display) .bottom-side-nav .menu-expand-button{padding-left:var(--ic-space-md);height:var(--sm-side-navigation-top-bar-height);width:100%;color:var(--ic-side-navigation-text);background-color:transparent;outline:var(--ic-hc-focus-outline);border:none;cursor:pointer;display:flex;transition:var(--ic-easing-transition-fast)}:host(.sm-expanded.side-display) .bottom-side-nav .menu-expand-button{height:100%}:host(.side-display) .bottom-side-nav .menu-expand-button svg{justify-items:flex-start;align-self:center;display:inline-block;width:var(--ic-space-lg);height:var(--ic-space-lg)}:host(.side-display) .bottom-side-nav .menu-expand-button:hover{background-color:var(--ic-side-navigation-hover)}:host(.side-display) .bottom-side-nav .menu-expand-button:focus{box-shadow:var(--ic-border-focus-inset);border-radius:var(--ic-border-radius-inset);background-color:transparent}:host(.sm-collapsed.side-display) .bottom-side-nav .menu-expand-button svg{transform:scaleX(1);transition:transform var(--ic-easing-transition-slow)}:host(.sm-expanded.side-display) .bottom-side-nav .menu-expand-button svg{transform:scaleX(-1);transition:transform var(--ic-easing-transition-slow);align-self:flex-end;margin-bottom:0.875rem}:host(.anchor-right.sm-collapsed.side-display) .bottom-side-nav .menu-expand-button svg{transform:scaleX(-1)}:host(.anchor-right.sm-expanded.side-display) .bottom-side-nav .menu-expand-button svg{transform:scaleX(1)}:host(.sm-collapsed.side-display) ::slotted(ic-navigation-item){--navigation-item-label-opacity:1}:host(.sm-collapsed.side-display) ::slotted(ic-navigation-item),:host(.sm-collapsed.side-display) ::slotted(ic-navigation-group){--navigation-item-label-opacity:0;--navigation-item-min-height:3.5rem;--navigation-item-height:3.5rem}:host(.sm-expanded.side-display) ::slotted(ic-navigation-item),:host(.sm-expanded.side-display) ::slotted(ic-navigation-group){--navigation-item-label-opacity:1;--navigation-item-height:auto;--navigation-item-min-height:3.5rem;--navigation-item-width:20rem;--navigation-item-side-nav-right:var(--ic-space-xl);--navigation-group-width:20rem}:host(.sm-collapsed.side-display) ::slotted(ic-navigation-group){--navigation-group-title-position:absolute;--navigation-group-title-position-left:-9999px;--navigation-group-title-opacity:none}:host(.sm-expanded.side-display) ::slotted(ic-navigation-group){--navigation-group-title-position:relative;--navigation-group-title-position-left:0;--navigation-group-expand-toggle-padding:0.25rem;--navigation-group-title-opacity:flex}:host(.sm-collapsed.collapsed-labels.side-display) .side-navigation,:host(.sm-collapsed.collapsed-labels.side-display) .top-bar{width:var(--sm-side-navigation-collapsed-labels-width)}:host(.sm-collapsed.collapsed-labels.side-display) .menu-expand-button{padding:0}:host(.sm-collapsed.collapsed-labels.side-display) .app-title-wrapper{width:100%;justify-content:center}:host(.sm-collapsed.collapsed-labels.side-display) ::slotted(ic-navigation-group){--navigation-group-justify-content:center;--navigation-item-label-opacity:1;--navigation-group-item-min-width:100%;--navigation-group-expand-toggle-padding:1rem}:host(.collapsed-labels.side-display) .bottom-side-nav .menu-expand-button{justify-content:center}:host(.side-display) .collapsed-icon-labels-start{visibility:hidden;opacity:0}:host(.side-display) .collapsed-icon-labels-end{visibility:visible;opacity:1;transition:visibility 0s, opacity var(--ic-easing-transition-slow)}@media screen and (max-width: 419px){.top-bar{height:var(--side-navigation-height)}}@media screen and (max-width: 319px){.side-navigation{width:100%}}@media screen and (min-width: 340px){.app-icon-container{display:flex}}@media screen and (min-width: 993px){:host(.side-display){position:sticky;left:auto;top:0;bottom:0}:host(.sm-expanded.side-display){box-shadow:none}}@media (forced-colors: active){.side-navigation,.top-bar{border-right:var(--ic-border-hc)}.menu-expand-button{color:Highlight !important}slot[name=\"app-icon\"]::slotted(svg){fill:currentcolor}}";
18
+ const icSideNavigationCss = ":host{display:block;--ic-typography-color:currentcolor;--side-navigation-position:fixed;--side-navigation-position-left:0;--side-navigation-position-top:var(--ic-space-xxl);--side-navigation-height:var(--ic-space-xxl);--sm-side-navigation-top-bar-height:3.5rem;--sm-side-navigation-collapsed-labels-width:6rem;--sm-side-navigation-expand-transition-duration:var(\n --ic-transition-duration-slow\n );--side-navigation-width:20rem;--sm-side-navigation-bottom-bar-height:3.5rem;--keyline-lighten:var(--ic-space-1px) solid var(--ic-side-navigation-keyline);--keyline-darken:var(--ic-space-1px) solid var(--ic-state-layer-darken-20);--ic-button-secondary-text-monochrome:var(--ic-brand-text-color);--ic-button-secondary-border-monochrome:var(--ic-brand-text-color);z-index:var(--ic-z-index-side-navigation)}:host>*{box-sizing:border-box}.side-navigation{display:flex;flex-direction:column;width:var(--side-navigation-width);color:var(--ic-side-navigation-text);position:var(--side-navigation-position);top:var(--side-navigation-position-top);left:calc(var(--side-navigation-width) * -1);bottom:0;background-color:var(--ic-side-navigation-background);z-index:var(--ic-z-index-side-navigation)}:host(.ic-side-navigation-inline) .side-navigation{position:absolute;height:100%}:host(.anchor-right) .side-navigation{right:calc(var(--side-navigation-width) * -1)}.classification-spacing{margin-bottom:var(--ic-space-lg)}.navigation-list{padding:0;margin:0;list-style:none}.side-navigation-inner{background-color:var(--ic-side-navigation-background);display:flex;flex-direction:column;flex:1 1 4rem;overflow:auto}:host(.ic-side-navigation-inline) .side-navigation-inner{flex:1}:host(.xs-menu-open) .side-navigation{transition:left var(--ic-easing-transition-slow);left:0}:host(:has(.xs-menu-open,.xs-menu-close)) ::slotted(ic-navigation-item){--navigation-item-side-nav-right:var(--ic-space-xl)}:host(.xs-menu-close) .side-navigation{left:calc(var(--side-navigation-width) * -1);transition:left var(--ic-easing-transition-slow)}:host(.xs-menu-close) .side-navigation>*{visibility:hidden}:host(.anchor-right.xs-menu-open) .side-navigation{right:0;left:auto}:host(.anchor-right.xs-menu-close) .side-navigation{right:calc(var(--side-navigation-width) * -1);left:auto;transition:right var(--ic-easing-transition-slow)}.bottom-wrapper{border-top:var(--keyline-lighten);bottom:0;left:0;z-index:2;background-color:var(--ic-side-navigation-background);display:flex;flex-direction:column}:host(.ic-side-navigation-inline) .bottom-wrapper{position:sticky}:host(.ic-side-navigation-dark) .bottom-wrapper{border-top:var(--keyline-darken)}.top-bar{display:flex;flex-direction:row;align-items:center;min-height:var(--side-navigation-height);padding:var(--ic-space-xs);box-sizing:border-box;background-color:var(--ic-side-navigation-background);position:fixed;top:0;left:0;right:0;border-bottom:var(--keyline-lighten);box-shadow:var(--ic-elevation-overlay);z-index:2;overflow:hidden;visibility:visible}:host(.ic-side-navigation-inline) .top-bar{position:absolute}:host(.ic-side-navigation-dark) .top-bar{border-bottom:var(--keyline-darken)}.top-bar.dark a:focus{box-shadow:var(--ic-border-focus)}.app-title-wrapper{display:flex;margin-left:var(--ic-space-xs);border-left:var(--keyline-lighten);padding-left:var(--ic-space-xxs);color:var(--ic-side-navigation-text);align-items:center}:host(.ic-side-navigation-dark) .app-title-wrapper{border-left:var(--keyline-darken)}.app-title-wrapper ic-typography h1{margin:0}@media screen and (min-width: 340px){.app-title-wrapper ic-typography{margin-left:var(--ic-space-xs)}}:host .title-link{display:flex;align-items:center;transition:box-shadow var(--ic-easing-transition-fast),\n background-color var(--ic-easing-transition-fast);text-decoration:none;padding:var(--ic-space-xxs);color:var(--ic-side-navigation-text)}:host .title-link:visited,:host .title-link:active{color:var(--ic-side-navigation-text)}slot[name=\"app-title\"]::slotted(a),slot[name=\"app-icon\"]::slotted(a){color:var(--ic-side-navigation-text);outline:none;text-decoration:none;display:flex}slot[name=\"app-title\"]::slotted(ic-typography),slot[name=\"app-title\"]::slotted(a){margin-left:var(--ic-space-xs) !important}slot[name=\"app-title\"]::slotted(a){font:var(--ic-font-subtitle-small)}:host .title-link:hover{border-radius:var(--ic-border-radius);background-color:var(--ic-side-navigation-hover)}:host .title-link:active{background-color:var(--ic-side-navigation-pressed)}:host .title-link:focus,:host .title-link:focus-within{border-radius:var(--ic-border-radius);box-shadow:var(--ic-border-focus);outline:var(--ic-hc-focus-outline);background-color:transparent}:host .title-link ic-typography{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.app-title-wrapper ::slotted(svg){fill:var(--ic-side-navigation-text)}.app-icon-container{display:none}.button-label{display:flex;align-items:center}.mobile-top-bar-menu-icon{display:flex}.menu-button{width:6.5rem}.app-status-wrapper{inset:0 var(--ic-space-sm) 0 3.5rem;width:auto;display:flex;gap:var(--ic-space-xs);padding:var(--ic-space-sm) 0;justify-content:flex-end;align-items:flex-end;pointer-events:none;height:-moz-fit-content;height:fit-content;margin:0 var(--ic-space-xs)}.app-status-wrapper .app-version{display:flex;overflow-wrap:break-word;padding-bottom:var(--ic-space-xxs)}.app-status-wrapper .app-status{display:flex;border-radius:1rem;background-color:var(--ic-side-navigation-text);color:var(--ic-side-navigation-status-tag-text);padding:var(--ic-space-xxs) var(--ic-space-lg);min-width:1rem}.app-status-wrapper .app-status-text{overflow-wrap:break-word}:host(.ic-side-navigation-dark) .app-status-wrapper .app-status{--ic-typography-color:var(--ic-architectural-white)}.navigation-landmark-title{position:absolute;width:var(--ic-space-1px);height:var(--ic-space-1px);padding:0;margin:calc(-1 * var(--ic-space-1px));overflow:hidden}::slotted(ic-navigation-group){--navigation-group-height:2.75rem;--navigation-group-justify-content:space-between;--navigation-group-hover:var(--ic-side-navigation-hover);--navigation-group-text-hover:var(--ic-side-navigation-text);--navigation-item-child-height:3.5rem;--navigation-item-child-active:var(--ic-action-dark-bg-pressed);--navigation-item-child-color:var(--ic-side-navigation-text);--navigation-group-expand-toggle-padding:0.25rem}::slotted(ic-navigation-item),::slotted(ic-navigation-group){--navigation-item-justify-content:flex-start;--navigation-item-min-height:56px;--navigation-item-height:auto}.bottom-side-nav{position:relative;align-content:flex-end;min-height:var(--sm-side-navigation-top-bar-height)}.bottom-side-nav ic-divider{position:absolute;top:0}.primary-navigation{flex:1;display:flex;flex-direction:column;overflow-y:auto;scrollbar-width:none}.primary-navigation::-webkit-scrollbar{display:none}.primary-navigation,.secondary-navigation{overflow-x:hidden}.bottom-side-nav .menu-expand-button{position:absolute;display:none}.menu-visibility-visible{visibility:visible;width:100%}.app-title-show{min-width:15.5rem}:host(.side-display){display:flex;flex-direction:column;height:100vh;position:var(--side-navigation-position);left:0;top:0;bottom:0}:host(.side-display) .app-icon-container{height:40px;display:flex;align-items:center}:host(.side-display) .top-bar{--side-navigation-height:var(--sm-side-navigation-top-bar-height);position:relative;padding:0;box-shadow:none}:host(.ic-side-navigation-inline.side-display) .top-bar{position:sticky}:host(.anchor-right.side-display) .top-bar{box-shadow:0.188rem 0.188rem 0.5rem rgb(0 0 0 / 20%)}:host(.anchor-right.side-display) .bottom-wrapper{box-shadow:0.188rem -0.188rem 0.5rem rgb(0 0 0 / 20%)}:host(.side-display) .side-navigation,:host(.side-display) .top-bar{width:var(--sm-side-navigation-top-bar-height)}:host(.sm-collapsed.side-display){width:var(--sm-side-navigation-top-bar-height);transition:width var(--ic-easing-transition-slow)}:host(.sm-collapsed.collapsed-labels.side-display){width:var(--sm-side-navigation-collapsed-labels-width)}:host(.sm-expanded.side-display){width:var(--side-navigation-width);transition:width var(--ic-easing-transition-slow);box-shadow:var(--ic-elevation-overlay)}:host(.side-display) .side-navigation{--side-navigation-position-top:0;flex:1;position:relative;top:auto;left:auto;bottom:auto}:host(.ic-side-navigation-inline.side-display) .side-navigation{position:relative}:host(.anchor-right.side-display) .side-navigation{left:auto;right:0}:host(.side-display) .app-title-wrapper{margin-left:0;border-left:none;padding:var(--ic-space-xs) var(--ic-space-sm)}:host(.side-display) .app-title-wrapper ::slotted(svg){height:var(--ic-space-lg);width:var(--ic-space-lg)}:host(.side-display) .app-title-wrapper ic-typography{font-weight:var(--ic-font-weight-semibold)}:host(.sm-collapsed.side-display) .app-title-wrapper ic-typography{position:absolute;left:-9999px;opacity:0;transition:opacity var(--ic-easing-transition-slow)}:host(.sm-collapsed.side-display) .app-title-wrapper ic-typography:dir(rtl){right:-9999px}:host(.sm-expanded.side-display) ic-typography{position:relative;left:0}:host(.sm-expanded.side-display) :is(.side-navigation,.top-bar){width:var(--side-navigation-width);transition:width var(--ic-easing-transition-slow)}:host(.sm-collapsed.side-display) :is(.side-navigation,.top-bar){width:var(--sm-side-navigation-top-bar-height);transition:width var(--ic-easing-transition-slow)}:host(.anchor-right.sm-expanded.side-display) :is(.side-navigation,.top-bar){left:auto;right:0}:host(.side-display) .app-status-wrapper,:host(.sm-collapsed.side-display) .app-status-wrapper{display:none;margin-left:0}:host(.sm-expanded.side-display) .app-status-wrapper{display:flex;max-width:16rem;margin-right:calc(var(--ic-space-xxxs) + var(--ic-space-xs))}:host(.side-display) .bottom-side-nav{justify-items:flex-end;align-items:flex-end;justify-content:flex-end;display:flex;outline:none}:host(.side-display) .bottom-side-nav .menu-expand-button{padding-left:var(--ic-space-md);height:var(--sm-side-navigation-top-bar-height);width:100%;color:var(--ic-side-navigation-text);background-color:transparent;outline:var(--ic-hc-focus-outline);border:none;cursor:pointer;display:flex;transition:var(--ic-easing-transition-fast)}:host(.sm-expanded.side-display) .bottom-side-nav .menu-expand-button{height:100%}:host(.side-display) .bottom-side-nav .menu-expand-button svg{justify-items:flex-start;align-self:center;display:inline-block;width:var(--ic-space-lg);height:var(--ic-space-lg)}:host(.side-display) .bottom-side-nav .menu-expand-button:hover{background-color:var(--ic-side-navigation-hover)}:host(.side-display) .bottom-side-nav .menu-expand-button:focus{box-shadow:var(--ic-border-focus-inset);border-radius:var(--ic-border-radius-inset);background-color:transparent}:host(.sm-collapsed.side-display) .bottom-side-nav .menu-expand-button svg{transform:scaleX(1);transition:transform var(--ic-easing-transition-slow)}:host(.sm-expanded.side-display) .bottom-side-nav .menu-expand-button svg{transform:scaleX(-1);transition:transform var(--ic-easing-transition-slow);align-self:flex-end;margin-bottom:0.875rem}:host(.anchor-right.sm-collapsed.side-display) .bottom-side-nav .menu-expand-button svg{transform:scaleX(-1)}:host(.anchor-right.sm-expanded.side-display) .bottom-side-nav .menu-expand-button svg{transform:scaleX(1)}:host(.sm-collapsed.side-display) ::slotted(ic-navigation-item){--navigation-item-label-opacity:1}:host(.sm-collapsed.side-display) ::slotted(ic-navigation-item),:host(.sm-collapsed.side-display) ::slotted(ic-navigation-group){--navigation-item-label-opacity:0;--navigation-item-min-height:3.5rem;--navigation-item-height:3.5rem}:host(.sm-expanded.side-display) ::slotted(ic-navigation-item),:host(.sm-expanded.side-display) ::slotted(ic-navigation-group){--navigation-item-label-opacity:1;--navigation-item-height:auto;--navigation-item-min-height:3.5rem;--navigation-item-width:20rem;--navigation-item-side-nav-right:var(--ic-space-xl);--navigation-group-width:20rem}:host(.sm-collapsed.side-display) ::slotted(ic-navigation-group){--navigation-group-title-position:absolute;--navigation-group-title-position-left:-9999px;--navigation-group-title-opacity:none}:host(.sm-expanded.side-display) ::slotted(ic-navigation-group){--navigation-group-title-position:relative;--navigation-group-title-position-left:0;--navigation-group-expand-toggle-padding:0.25rem;--navigation-group-title-opacity:flex}:host(.sm-collapsed.collapsed-labels.side-display) .side-navigation,:host(.sm-collapsed.collapsed-labels.side-display) .top-bar{width:var(--sm-side-navigation-collapsed-labels-width)}:host(.sm-collapsed.collapsed-labels.side-display) .menu-expand-button{padding:0}:host(.sm-collapsed.collapsed-labels.side-display) .app-title-wrapper{width:100%;justify-content:center}:host(.sm-collapsed.collapsed-labels.side-display) ::slotted(ic-navigation-group){--navigation-group-justify-content:center;--navigation-item-label-opacity:1;--navigation-group-item-min-width:100%;--navigation-group-expand-toggle-padding:1rem}:host(.collapsed-labels.side-display) .bottom-side-nav .menu-expand-button{justify-content:center}:host(.side-display) .collapsed-icon-labels-start{visibility:hidden;opacity:0}:host(.side-display) .collapsed-icon-labels-end{visibility:visible;opacity:1;transition:visibility 0s, opacity var(--ic-easing-transition-slow)}@media screen and (max-width: 419px){.top-bar{height:var(--side-navigation-height)}}@media screen and (max-width: 319px){.side-navigation{width:100%}}@media screen and (min-width: 340px){.app-icon-container{display:flex}}@media screen and (min-width: 577px){:host(.sm-collapsed) slot[name=\"app-title\"]::slotted(ic-typography),:host(.sm-collapsed) slot[name=\"app-title\"]::slotted(a){position:absolute;left:-9999px;opacity:0;transition:opacity var(--ic-easing-transition-slow)}@media (prefers-reduced-motion: reduce){:host(.sm-collapsed) slot[name=\"app-title\"]::slotted(ic-typography),:host(.sm-collapsed) slot[name=\"app-title\"]::slotted(a){transition:none}}:host(.sm-collapsed) slot[name=\"app-title\"]:dir(rtl)::slotted(ic-typography),:host(.sm-collapsed) slot[name=\"app-title\"]:dir(rtl)::slotted(a){right:-9999px}:host(.sm-expanded) slot[name=\"app-title\"]::slotted(a){font:var(--ic-font-h3) !important;font-weight:var(--ic-font-weight-semibold) !important;margin-left:var(--ic-space-xs) !important}}@media screen and (min-width: 993px){:host(.side-display){position:sticky;left:auto;top:0;bottom:0}:host(.sm-expanded.side-display){box-shadow:none}}@media (forced-colors: active){.side-navigation,.top-bar{border-right:var(--ic-border-hc)}.menu-expand-button{color:Highlight !important}slot[name=\"app-icon\"]::slotted(svg){fill:currentcolor}}@media (prefers-reduced-motion: reduce){:host(.xs-menu-open) .side-navigation,:host(.xs-menu-close) .side-navigation,:host(.anchor-right.xs-menu-close) .side-navigation,:host .title-link,:host(.sm-collapsed.side-display),:host(.sm-expanded.side-display),:host(.sm-collapsed.side-display) .app-title-wrapper ic-typography,:host(.sm-collapsed.side-display) :is(.side-navigation,.top-bar),:host(.sm-expanded.side-display) :is(.side-navigation,.top-bar),:host(.side-display) .bottom-side-nav .menu-expand-button,:host(.sm-collapsed.side-display) .bottom-side-nav .menu-expand-button svg,:host(.sm-expanded.side-display) .bottom-side-nav .menu-expand-button svg,:host(.side-display) .collapsed-icon-labels-end{transition:none}}";
19
19
  const IcSideNavigationStyle0 = icSideNavigationCss;
20
20
 
21
21
  const SideNavigation = /*@__PURE__*/ proxyCustomElement(class SideNavigation extends HTMLElement {
@@ -24,7 +24,9 @@ const SideNavigation = /*@__PURE__*/ proxyCustomElement(class SideNavigation ext
24
24
  this.__registerHost();
25
25
  this.__attachShadow();
26
26
  this.icSideNavExpanded = createEvent(this, "icSideNavExpanded", 7);
27
- this.ANIMATION_DURATION = parseInt(getCssProperty("--ic-transition-duration-slow")) || 0;
27
+ this.ANIMATION_DURATION = window.matchMedia("(prefers-reduced-motion: reduce)").matches
28
+ ? 0
29
+ : parseInt(getCssProperty("--ic-transition-duration-slow")) || 0;
28
30
  this.IC_NAVIGATION_ITEM = "ic-navigation-item";
29
31
  this.resizeObserver = null;
30
32
  this.COLLAPSED_ICON_LABELS_END = "collapsed-icon-labels-end";
@@ -215,14 +217,18 @@ const SideNavigation = /*@__PURE__*/ proxyCustomElement(class SideNavigation ext
215
217
  if (menuExpanded) {
216
218
  icTypography.style.opacity = "1";
217
219
  icTypography.style.visibility = "visible";
218
- icTypography.style.transition =
219
- "visibility 0s, opacity var(--ic-easing-transition-slow)";
220
+ if (!window.matchMedia("(prefers-reduced-motion: reduce)").matches) {
221
+ icTypography.style.transition =
222
+ "visibility 0s, opacity var(--ic-easing-transition-slow)";
223
+ }
220
224
  }
221
225
  else {
222
226
  icTypography.style.opacity = "0";
223
227
  icTypography.style.visibility = "hidden";
224
- icTypography.style.transition =
225
- "visibility 0s, opacity var(--ic-easing-transition-slow)";
228
+ if (!window.matchMedia("(prefers-reduced-motion: reduce)").matches) {
229
+ icTypography.style.transition =
230
+ "visibility 0s, opacity var(--ic-easing-transition-slow)";
231
+ }
226
232
  }
227
233
  };
228
234
  this.transitionHandler = (type) => {
@@ -463,7 +469,7 @@ const SideNavigation = /*@__PURE__*/ proxyCustomElement(class SideNavigation ext
463
469
  isAppNameSubtitleVariant,
464
470
  appTitle: appTitle || "",
465
471
  };
466
- return (h(Host, { key: 'dee98e8859e6935f7ce2775e95d32be82041ca0c', class: {
472
+ return (h(Host, { key: '048b8b8cc51848714f6f0367995c271b39b1a9a2', class: {
467
473
  "xs-menu-open": menuOpen && isSDevice,
468
474
  "xs-menu-close": !menuOpen && isSDevice,
469
475
  "sm-collapsed": !isSDevice && !menuExpanded,
@@ -472,12 +478,12 @@ const SideNavigation = /*@__PURE__*/ proxyCustomElement(class SideNavigation ext
472
478
  [`ic-side-navigation-${IcBrandForegroundEnum.Dark}`]: foregroundColor === IcBrandForegroundEnum.Dark,
473
479
  ["collapsed-labels"]: !isSDevice && !menuExpanded && !!collapsedIconLabels,
474
480
  ["ic-side-navigation-inline"]: !!inline,
475
- } }, isSDevice && this.renderTopBar(Object.assign({}, topBarProps)), h("div", { key: '7de065dd79a3633a0e2a0f2a5935c579e7d8cbd7', class: "side-navigation", id: "side-navigation" }, !isSDevice && this.renderTopBar(Object.assign({}, topBarProps)), h("div", { key: 'a950c396e16fc7ccd6a47ce355f3c518beb4772d', class: "side-navigation-inner" }, isSlotUsed(this.el, "primary-navigation") && (h("nav", { key: '2fe8cffb5411676a3a2aae321fc6f50c6f0db1a0', class: "primary-navigation", "aria-labelledby": "primary-navigation-landmark" }, h("span", { key: '497dc28ccd564c1e98ca06ab0799ee5672356473', "aria-hidden": "true", class: "navigation-landmark-title", id: "primary-navigation-landmark" }, "Primary"), h("ul", { key: '3f264d80dbbf56c1e7be38b7b3759b6b71daa246', class: "navigation-list" }, h("slot", { key: 'a9d3c59225617b1505b8f176fe2013cb612ea8d1', name: "primary-navigation" }))))), h("div", { key: 'd86b2683593cb26ba2f5486c467dca05d92f32ec', class: {
481
+ } }, isSDevice && this.renderTopBar(Object.assign({}, topBarProps)), h("div", { key: '2a83fe000c46bc9ce54ca9de5cead38dddb5f88f', class: "side-navigation", id: "side-navigation" }, !isSDevice && this.renderTopBar(Object.assign({}, topBarProps)), h("div", { key: '464c9687f196364f27ab261377b523a6a7d19b5a', class: "side-navigation-inner" }, isSlotUsed(this.el, "primary-navigation") && (h("nav", { key: '6eeedc489baacc84591354bf7be4537ff1d9fc56', class: "primary-navigation", "aria-labelledby": "primary-navigation-landmark" }, h("span", { key: '8b49aaab6a419cae1198c1cc4295ea15aa10523f', "aria-hidden": "true", class: "navigation-landmark-title", id: "primary-navigation-landmark" }, "Primary"), h("ul", { key: '90e051cd18572f31bb02e8dc1832aa2105328f6c', class: "navigation-list" }, h("slot", { key: 'b06759220c19e6a243bf84d17a6bcb0c321fee73', name: "primary-navigation" }))))), h("div", { key: 'db63c182321cbe7d77bebd732a3a5f2ddedbff7d', class: {
476
482
  ["bottom-wrapper"]: true,
477
483
  ["classification-spacing"]: hasClassificationBanner(),
478
- } }, isSlotUsed(this.el, "secondary-navigation") && (h("nav", { key: '58e5fb4f988382c818d213d096bbdaca62d8401b', class: "secondary-navigation", "aria-labelledby": "secondary-navigation-landmark" }, h("span", { key: '6458a76842e7c228cf73f0ca6bfaf6e50970417a', "aria-hidden": "true", class: "navigation-landmark-title", id: "secondary-navigation-landmark" }, "Secondary"), h("ul", { key: '76e6c8ac16f803de44efb7dfe6f628dd665bce85', class: "navigation-list" }, h("slot", { key: '1f54dbc9d285e8b1fd40933551bf37af146ecf97', name: "secondary-navigation" })))), h("div", { key: 'd4eef9cdbe35d022243461147a9d5b3b80802a0a', class: "bottom-side-nav" }, this.hasSecondaryNavigation && h("ic-divider", { key: '423f2e4f54c49d6daa45fd85c0d55f9467d08c74' }), displayExpandBtn && (h("button", { key: '1460adecbbcf46743f3e3ef1ac984a5968f6f0f9', class: "menu-expand-button", innerHTML: chevronIcon, onClick: () => this.toggleMenuExpanded(!this.menuExpanded), "aria-label": `${menuExpanded ? "Collapse" : "Expand"} side navigation` })), h("div", { key: 'b221957ba1badf6560239643624cbbc64a48c6c9', class: "app-status-wrapper" }, status && (h("div", { key: '5be443d54b038e32832b8cbb95ad23046e4c3d04', class: {
484
+ } }, isSlotUsed(this.el, "secondary-navigation") && (h("nav", { key: '953cd6095e452078d068efc58cf689d558bdd4a1', class: "secondary-navigation", "aria-labelledby": "secondary-navigation-landmark" }, h("span", { key: '8d5b3dcfce47bc1594e5541ed41731a0fd795589', "aria-hidden": "true", class: "navigation-landmark-title", id: "secondary-navigation-landmark" }, "Secondary"), h("ul", { key: '57b6d08a7a6f0f15341a4b0289bf4a876fc5b30e', class: "navigation-list" }, h("slot", { key: '36c42a128bbc9f0144496d6af042656bfe26d713', name: "secondary-navigation" })))), h("div", { key: 'e34d40920163c830039d772d997549ebf0ff2162', class: "bottom-side-nav" }, this.hasSecondaryNavigation && h("ic-divider", { key: '2984e8ca896aef5c7e6374e5c996c8a3fe4dc4a7' }), displayExpandBtn && (h("button", { key: 'cbf4ae4787ae4b5c2beaf9629db0c22df6e3910e', class: "menu-expand-button", innerHTML: chevronIcon, onClick: () => this.toggleMenuExpanded(!this.menuExpanded), "aria-label": `${menuExpanded ? "Collapse" : "Expand"} side navigation` })), h("div", { key: 'a330285250b908cb7ac14e9ae9f39612d4bcfce2', class: "app-status-wrapper" }, status && (h("div", { key: 'd90a9dd03f2ba41f1305afb96d78d46c85611aef', class: {
479
485
  ["app-status"]: true,
480
- } }, h("ic-typography", { key: '281b500e7b660a3cd8108748cbeaa9bcf0b856c7', "aria-label": "app tag", variant: "label-uppercase", class: "app-status-text" }, status))), version && (h("ic-typography", { key: '506f7e34b3027bd1ea340b725a1857b42f797d03', variant: "label", class: "app-version", "aria-label": "app version" }, version))))))));
486
+ } }, h("ic-typography", { key: '070e2696a97002c88022049ceb4af7e204ce509e', "aria-label": "app tag", variant: "label-uppercase", class: "app-status-text" }, status))), version && (h("ic-typography", { key: 'acb4321ec1814ab47772570c0098b1998f9ea68e', variant: "label", class: "app-version", "aria-label": "app version" }, version))))))));
481
487
  }
482
488
  get el() { return this; }
483
489
  static get watchers() { return {
@@ -1 +1 @@
1
- {"file":"ic-side-navigation.js","mappings":"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","names":[],"sources":["src/components/ic-side-navigation/ic-side-navigation.css?tag=ic-side-navigation&encapsulation=shadow","src/components/ic-side-navigation/ic-side-navigation.tsx"],"sourcesContent":["/**\n * @prop --ic-z-index-side-navigation: z-index of side navigation panel\n */\n\n:host {\n display: block;\n\n --ic-typography-color: currentcolor;\n --side-navigation-position: fixed;\n --side-navigation-position-left: 0;\n --side-navigation-position-top: var(--ic-space-xxl);\n --side-navigation-height: var(--ic-space-xxl);\n --sm-side-navigation-top-bar-height: 3.5rem;\n --sm-side-navigation-collapsed-labels-width: 6rem;\n --sm-side-navigation-expand-transition-duration: var(\n --ic-transition-duration-slow\n );\n --side-navigation-width: 20rem;\n --sm-side-navigation-bottom-bar-height: 3.5rem;\n --keyline-lighten: var(--ic-space-1px) solid var(--ic-side-navigation-keyline);\n --keyline-darken: var(--ic-space-1px) solid var(--ic-state-layer-darken-20);\n --ic-button-secondary-text-monochrome: var(--ic-brand-text-color);\n --ic-button-secondary-border-monochrome: var(--ic-brand-text-color);\n\n z-index: var(--ic-z-index-side-navigation);\n}\n\n:host > * {\n box-sizing: border-box;\n}\n\n.side-navigation {\n display: flex;\n flex-direction: column;\n width: var(--side-navigation-width);\n color: var(--ic-side-navigation-text);\n position: var(--side-navigation-position);\n top: var(--side-navigation-position-top);\n left: calc(var(--side-navigation-width) * -1);\n bottom: 0;\n background-color: var(--ic-side-navigation-background);\n z-index: var(--ic-z-index-side-navigation);\n}\n\n:host(.ic-side-navigation-inline) .side-navigation {\n position: absolute;\n height: 100%;\n}\n\n:host(.anchor-right) .side-navigation {\n right: calc(var(--side-navigation-width) * -1);\n}\n\n.classification-spacing {\n margin-bottom: var(--ic-space-lg);\n}\n\n.navigation-list {\n padding: 0;\n margin: 0;\n list-style: none;\n}\n\n.side-navigation-inner {\n background-color: var(--ic-side-navigation-background);\n display: flex;\n flex-direction: column;\n flex: 1 1 4rem;\n overflow: auto;\n}\n\n:host(.ic-side-navigation-inline) .side-navigation-inner {\n flex: 1;\n}\n\n:host(.xs-menu-open) .side-navigation {\n transition: left var(--ic-easing-transition-slow);\n left: 0;\n}\n\n:host(:has(.xs-menu-open, .xs-menu-close)) ::slotted(ic-navigation-item) {\n --navigation-item-side-nav-right: var(--ic-space-xl);\n}\n\n:host(.xs-menu-close) .side-navigation {\n left: calc(var(--side-navigation-width) * -1);\n transition: left var(--ic-easing-transition-slow);\n}\n\n:host(.xs-menu-close) .side-navigation > * {\n visibility: hidden;\n}\n\n:host(.anchor-right.xs-menu-open) .side-navigation {\n right: 0;\n left: auto;\n}\n\n:host(.anchor-right.xs-menu-close) .side-navigation {\n right: calc(var(--side-navigation-width) * -1);\n left: auto;\n transition: right var(--ic-easing-transition-slow);\n}\n\n.bottom-wrapper {\n border-top: var(--keyline-lighten);\n bottom: 0;\n left: 0;\n z-index: 2;\n background-color: var(--ic-side-navigation-background);\n display: flex;\n flex-direction: column;\n}\n\n:host(.ic-side-navigation-inline) .bottom-wrapper {\n position: sticky;\n}\n\n:host(.ic-side-navigation-dark) .bottom-wrapper {\n border-top: var(--keyline-darken);\n}\n\n/* Mobile Top Bar */\n\n.top-bar {\n display: flex;\n flex-direction: row;\n align-items: center;\n min-height: var(--side-navigation-height);\n padding: var(--ic-space-xs);\n box-sizing: border-box;\n background-color: var(--ic-side-navigation-background);\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n border-bottom: var(--keyline-lighten);\n box-shadow: var(--ic-elevation-overlay);\n z-index: 2;\n overflow: hidden;\n visibility: visible;\n}\n\n:host(.ic-side-navigation-inline) .top-bar {\n position: absolute;\n}\n\n:host(.ic-side-navigation-dark) .top-bar {\n border-bottom: var(--keyline-darken);\n}\n\n.top-bar.dark a:focus {\n box-shadow: var(--ic-border-focus);\n}\n\n.app-title-wrapper {\n display: flex;\n margin-left: var(--ic-space-xs);\n border-left: var(--keyline-lighten);\n padding-left: var(--ic-space-xxs);\n color: var(--ic-side-navigation-text);\n align-items: center;\n}\n\n:host(.ic-side-navigation-dark) .app-title-wrapper {\n border-left: var(--keyline-darken);\n}\n\n.app-title-wrapper ic-typography h1 {\n margin: 0;\n}\n\n@media screen and (min-width: 340px) {\n .app-title-wrapper ic-typography {\n margin-left: var(--ic-space-xs);\n }\n}\n\n:host .title-link {\n display: flex;\n align-items: center;\n transition: box-shadow var(--ic-easing-transition-fast),\n background-color var(--ic-easing-transition-fast);\n text-decoration: none;\n padding: var(--ic-space-xxs);\n color: var(--ic-side-navigation-text);\n}\n\n:host .title-link:visited,\n:host .title-link:active {\n color: var(--ic-side-navigation-text);\n}\n\nslot[name=\"app-title\"]::slotted(a),\nslot[name=\"app-icon\"]::slotted(a) {\n color: var(--ic-side-navigation-text);\n outline: none;\n text-decoration: none;\n display: flex;\n}\n\nslot[name=\"app-title\"]::slotted(ic-typography),\nslot[name=\"app-title\"]::slotted(a) {\n margin-left: var(--ic-space-xs) !important;\n}\n\nslot[name=\"app-title\"]::slotted(a) {\n font: var(--ic-font-subtitle-small);\n}\n\n@media screen and (min-width: 577px) {\n :host(.sm-collapsed) slot[name=\"app-title\"]::slotted(ic-typography),\n :host(.sm-collapsed) slot[name=\"app-title\"]::slotted(a) {\n position: absolute;\n left: -9999px;\n opacity: 0;\n transition: opacity var(--ic-easing-transition-slow);\n }\n\n :host(.sm-collapsed) slot[name=\"app-title\"]:dir(rtl)::slotted(ic-typography),\n :host(.sm-collapsed) slot[name=\"app-title\"]:dir(rtl)::slotted(a) {\n right: -9999px;\n }\n\n :host(.sm-expanded) slot[name=\"app-title\"]::slotted(a) {\n font: var(--ic-font-h3) !important;\n font-weight: var(--ic-font-weight-semibold) !important;\n margin-left: var(--ic-space-xs) !important;\n }\n}\n\n:host .title-link:hover {\n border-radius: var(--ic-border-radius);\n background-color: var(--ic-side-navigation-hover);\n}\n\n:host .title-link:active {\n background-color: var(--ic-side-navigation-pressed);\n}\n\n:host .title-link:focus,\n:host .title-link:focus-within {\n border-radius: var(--ic-border-radius);\n box-shadow: var(--ic-border-focus);\n outline: var(--ic-hc-focus-outline);\n background-color: transparent;\n}\n\n:host .title-link ic-typography {\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n}\n\n.app-title-wrapper ::slotted(svg) {\n fill: var(--ic-side-navigation-text);\n}\n\n.app-icon-container {\n display: none;\n}\n\n.button-label {\n display: flex;\n align-items: center;\n}\n\n.mobile-top-bar-menu-icon {\n display: flex;\n}\n\n.menu-button {\n width: 6.5rem;\n}\n\n.app-status-wrapper {\n inset: 0 var(--ic-space-sm) 0 3.5rem;\n width: auto;\n display: flex;\n gap: var(--ic-space-xs);\n padding: var(--ic-space-sm) 0;\n justify-content: flex-end;\n align-items: flex-end;\n pointer-events: none;\n height: -moz-fit-content;\n height: fit-content;\n margin: 0 var(--ic-space-xs);\n}\n\n.app-status-wrapper .app-version {\n display: flex;\n overflow-wrap: break-word;\n padding-bottom: var(--ic-space-xxs);\n}\n\n.app-status-wrapper .app-status {\n display: flex;\n border-radius: 1rem;\n background-color: var(--ic-side-navigation-text);\n color: var(--ic-side-navigation-status-tag-text);\n padding: var(--ic-space-xxs) var(--ic-space-lg);\n min-width: 1rem;\n}\n\n.app-status-wrapper .app-status-text {\n overflow-wrap: break-word;\n}\n\n:host(.ic-side-navigation-dark) .app-status-wrapper .app-status {\n --ic-typography-color: var(--ic-architectural-white);\n}\n\n.navigation-landmark-title {\n position: absolute;\n width: var(--ic-space-1px);\n height: var(--ic-space-1px);\n padding: 0;\n margin: calc(-1 * var(--ic-space-1px));\n overflow: hidden;\n}\n\n/* Navigation Group */\n\n::slotted(ic-navigation-group) {\n --navigation-group-height: 2.75rem;\n --navigation-group-justify-content: space-between;\n --navigation-group-hover: var(--ic-side-navigation-hover);\n --navigation-group-text-hover: var(--ic-side-navigation-text);\n --navigation-item-child-height: 3.5rem;\n --navigation-item-child-active: var(--ic-action-dark-bg-pressed);\n --navigation-item-child-color: var(--ic-side-navigation-text);\n --navigation-group-expand-toggle-padding: 0.25rem;\n}\n\n/* Navigation Items */\n\n::slotted(ic-navigation-item),\n::slotted(ic-navigation-group) {\n --navigation-item-justify-content: flex-start;\n --navigation-item-min-height: 56px;\n --navigation-item-height: auto;\n}\n\n/* Toggle Chevron */\n\n.bottom-side-nav {\n position: relative;\n align-content: flex-end;\n min-height: var(--sm-side-navigation-top-bar-height);\n}\n\n.bottom-side-nav ic-divider {\n position: absolute;\n top: 0;\n}\n\n.primary-navigation {\n flex: 1;\n display: flex;\n flex-direction: column;\n overflow-y: auto;\n\n /* Hide scrollbar when required but keep functionality */\n scrollbar-width: none;\n}\n\n.primary-navigation::-webkit-scrollbar {\n display: none;\n}\n\n.primary-navigation,\n.secondary-navigation {\n overflow-x: hidden;\n}\n\n.bottom-side-nav .menu-expand-button {\n position: absolute;\n display: none;\n}\n\n.menu-visibility-visible {\n visibility: visible;\n width: 100%;\n}\n\n.app-title-show {\n min-width: 15.5rem;\n}\n\n:host(.side-display) {\n display: flex;\n flex-direction: column;\n height: 100vh;\n position: var(--side-navigation-position);\n left: 0;\n top: 0;\n bottom: 0;\n}\n\n:host(.side-display) .app-icon-container {\n height: 40px;\n display: flex;\n align-items: center;\n}\n\n:host(.side-display) .top-bar {\n --side-navigation-height: var(--sm-side-navigation-top-bar-height);\n\n position: relative;\n padding: 0;\n box-shadow: none;\n}\n\n:host(.ic-side-navigation-inline.side-display) .top-bar {\n position: sticky;\n}\n\n:host(.anchor-right.side-display) .top-bar {\n box-shadow: 0.188rem 0.188rem 0.5rem rgb(0 0 0 / 20%);\n}\n\n:host(.anchor-right.side-display) .bottom-wrapper {\n box-shadow: 0.188rem -0.188rem 0.5rem rgb(0 0 0 / 20%);\n}\n\n:host(.side-display) .side-navigation,\n:host(.side-display) .top-bar {\n width: var(--sm-side-navigation-top-bar-height);\n}\n\n:host(.sm-collapsed.side-display) {\n width: var(--sm-side-navigation-top-bar-height);\n transition: width var(--ic-easing-transition-slow);\n}\n\n:host(.sm-collapsed.collapsed-labels.side-display) {\n width: var(--sm-side-navigation-collapsed-labels-width);\n}\n\n:host(.sm-expanded.side-display) {\n width: var(--side-navigation-width);\n transition: width var(--ic-easing-transition-slow);\n box-shadow: var(--ic-elevation-overlay);\n}\n\n:host(.side-display) .side-navigation {\n --side-navigation-position-top: 0;\n\n flex: 1;\n position: relative;\n top: auto;\n left: auto;\n bottom: auto;\n}\n\n:host(.ic-side-navigation-inline.side-display) .side-navigation {\n position: relative;\n}\n\n:host(.anchor-right.side-display) .side-navigation {\n left: auto;\n right: 0;\n}\n\n:host(.side-display) .app-title-wrapper {\n margin-left: 0;\n border-left: none;\n padding: var(--ic-space-xs) var(--ic-space-sm);\n}\n\n:host(.side-display) .app-title-wrapper ::slotted(svg) {\n height: var(--ic-space-lg);\n width: var(--ic-space-lg);\n}\n\n:host(.side-display) .app-title-wrapper ic-typography {\n font-weight: var(--ic-font-weight-semibold);\n}\n\n:host(.sm-collapsed.side-display) .app-title-wrapper ic-typography {\n position: absolute;\n left: -9999px;\n opacity: 0;\n transition: opacity var(--ic-easing-transition-slow);\n}\n\n:host(.sm-collapsed.side-display) .app-title-wrapper ic-typography:dir(rtl) {\n right: -9999px;\n}\n\n:host(.sm-expanded.side-display) ic-typography {\n position: relative;\n left: 0;\n}\n\n:host(.sm-expanded.side-display) :is(.side-navigation, .top-bar) {\n width: var(--side-navigation-width);\n transition: width var(--ic-easing-transition-slow);\n}\n\n:host(.sm-collapsed.side-display) :is(.side-navigation, .top-bar) {\n width: var(--sm-side-navigation-top-bar-height);\n transition: width var(--ic-easing-transition-slow);\n}\n\n:host(.anchor-right.sm-expanded.side-display) :is(.side-navigation, .top-bar) {\n left: auto;\n right: 0;\n}\n\n:host(.side-display) .app-status-wrapper,\n:host(.sm-collapsed.side-display) .app-status-wrapper {\n display: none;\n margin-left: 0;\n}\n\n:host(.sm-expanded.side-display) .app-status-wrapper {\n display: flex;\n max-width: 16rem;\n margin-right: calc(var(--ic-space-xxxs) + var(--ic-space-xs));\n}\n\n:host(.side-display) .bottom-side-nav {\n justify-items: flex-end;\n align-items: flex-end;\n justify-content: flex-end;\n display: flex;\n outline: none;\n}\n\n:host(.side-display) .bottom-side-nav .menu-expand-button {\n padding-left: var(--ic-space-md);\n height: var(--sm-side-navigation-top-bar-height);\n width: 100%;\n color: var(--ic-side-navigation-text);\n background-color: transparent;\n outline: var(--ic-hc-focus-outline);\n border: none;\n cursor: pointer;\n display: flex;\n transition: var(--ic-easing-transition-fast);\n}\n\n:host(.sm-expanded.side-display) .bottom-side-nav .menu-expand-button {\n height: 100%;\n}\n\n:host(.side-display) .bottom-side-nav .menu-expand-button svg {\n justify-items: flex-start;\n align-self: center;\n display: inline-block;\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n}\n\n:host(.side-display) .bottom-side-nav .menu-expand-button:hover {\n background-color: var(--ic-side-navigation-hover);\n}\n\n:host(.side-display) .bottom-side-nav .menu-expand-button:focus {\n box-shadow: var(--ic-border-focus-inset);\n border-radius: var(--ic-border-radius-inset);\n background-color: transparent;\n}\n\n:host(.sm-collapsed.side-display) .bottom-side-nav .menu-expand-button svg {\n transform: scaleX(1);\n transition: transform var(--ic-easing-transition-slow);\n}\n\n:host(.sm-expanded.side-display) .bottom-side-nav .menu-expand-button svg {\n transform: scaleX(-1);\n transition: transform var(--ic-easing-transition-slow);\n align-self: flex-end;\n margin-bottom: 0.875rem;\n}\n\n:host(.anchor-right.sm-collapsed.side-display)\n .bottom-side-nav\n .menu-expand-button\n svg {\n transform: scaleX(-1);\n}\n\n:host(.anchor-right.sm-expanded.side-display)\n .bottom-side-nav\n .menu-expand-button\n svg {\n transform: scaleX(1);\n}\n\n:host(.sm-collapsed.side-display) ::slotted(ic-navigation-item) {\n --navigation-item-label-opacity: 1;\n}\n\n:host(.sm-collapsed.side-display) ::slotted(ic-navigation-item),\n:host(.sm-collapsed.side-display) ::slotted(ic-navigation-group) {\n --navigation-item-label-opacity: 0;\n --navigation-item-min-height: 3.5rem;\n --navigation-item-height: 3.5rem;\n}\n\n:host(.sm-expanded.side-display) ::slotted(ic-navigation-item),\n:host(.sm-expanded.side-display) ::slotted(ic-navigation-group) {\n --navigation-item-label-opacity: 1;\n --navigation-item-height: auto;\n --navigation-item-min-height: 3.5rem;\n --navigation-item-width: 20rem;\n --navigation-item-side-nav-right: var(--ic-space-xl);\n --navigation-group-width: 20rem;\n}\n\n:host(.sm-collapsed.side-display) ::slotted(ic-navigation-group) {\n --navigation-group-title-position: absolute;\n --navigation-group-title-position-left: -9999px;\n --navigation-group-title-opacity: none;\n}\n\n:host(.sm-expanded.side-display) ::slotted(ic-navigation-group) {\n --navigation-group-title-position: relative;\n --navigation-group-title-position-left: 0;\n --navigation-group-expand-toggle-padding: 0.25rem;\n --navigation-group-title-opacity: flex;\n}\n\n:host(.sm-collapsed.collapsed-labels.side-display) .side-navigation,\n:host(.sm-collapsed.collapsed-labels.side-display) .top-bar {\n width: var(--sm-side-navigation-collapsed-labels-width);\n}\n\n:host(.sm-collapsed.collapsed-labels.side-display) .menu-expand-button {\n padding: 0;\n}\n\n:host(.sm-collapsed.collapsed-labels.side-display) .app-title-wrapper {\n width: 100%;\n justify-content: center;\n}\n\n:host(.sm-collapsed.collapsed-labels.side-display)\n ::slotted(ic-navigation-group) {\n --navigation-group-justify-content: center;\n --navigation-item-label-opacity: 1;\n --navigation-group-item-min-width: 100%;\n --navigation-group-expand-toggle-padding: 1rem;\n}\n\n:host(.collapsed-labels.side-display) .bottom-side-nav .menu-expand-button {\n justify-content: center;\n}\n\n:host(.side-display) .collapsed-icon-labels-start {\n visibility: hidden;\n opacity: 0;\n}\n\n:host(.side-display) .collapsed-icon-labels-end {\n visibility: visible;\n opacity: 1;\n transition: visibility 0s, opacity var(--ic-easing-transition-slow);\n}\n\n/* Media Queries */\n\n@media screen and (max-width: 419px) {\n .top-bar {\n height: var(--side-navigation-height);\n }\n}\n\n@media screen and (max-width: 319px) {\n .side-navigation {\n width: 100%;\n }\n}\n\n@media screen and (min-width: 340px) {\n .app-icon-container {\n display: flex;\n }\n}\n\n@media screen and (min-width: 993px) {\n :host(.side-display) {\n position: sticky;\n left: auto;\n top: 0;\n bottom: 0;\n }\n\n :host(.sm-expanded.side-display) {\n box-shadow: none;\n }\n}\n\n@media (forced-colors: active) {\n .side-navigation,\n .top-bar {\n border-right: var(--ic-border-hc);\n }\n\n .menu-expand-button {\n color: Highlight !important;\n }\n\n slot[name=\"app-icon\"]::slotted(svg) {\n fill: currentcolor;\n }\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n State,\n Element,\n Listen,\n Event,\n EventEmitter,\n Watch,\n} from \"@stencil/core\";\n\nimport menuIcon from \"../../assets/hamburger-menu-icon.svg\";\nimport closeIcon from \"../../assets/close-icon.svg\";\nimport chevronIcon from \"../../assets/chevron-icon.svg\";\nimport {\n getCurrentDeviceSize,\n DEVICE_SIZES,\n checkResizeObserver,\n isSlotUsed,\n getBrandForegroundAppearance,\n getCssProperty,\n hasClassificationBanner,\n onComponentRequiredPropUndefined,\n isEmptyString,\n isPropDefined,\n} from \"../../utils/helpers\";\nimport {\n IcBrand,\n IcBrandForeground,\n IcBrandForegroundEnum,\n} from \"../../utils/types\";\nimport { IcTopBar, IcExpandedDetail } from \"./ic-side-navigation.types\";\n\n/**\n * @slot app-icon - Content will be rendered adjacent to the app title at the very top of the side navigation.\n * @slot app-title - Handle routing by nesting a route in the app title.\n * @slot primary-navigation - Content will be rendered at the top of the side navigation.\n * @slot secondary-navigation - Content will be rendered at the bottom of the side navigation.\n */\n\n@Component({\n tag: \"ic-side-navigation\",\n styleUrl: \"ic-side-navigation.css\",\n shadow: true,\n})\nexport class SideNavigation {\n private ANIMATION_DURATION =\n parseInt(getCssProperty(\"--ic-transition-duration-slow\")) || 0;\n private IC_NAVIGATION_ITEM: string = \"ic-navigation-item\";\n private resizeObserver: ResizeObserver | null = null;\n private COLLAPSED_ICON_LABELS_END = \"collapsed-icon-labels-end\";\n private COLLAPSED_ICON_LABELS_START = \"collapsed-icon-labels-start\";\n private menuButton?: HTMLIcButtonElement;\n\n @Element() el: HTMLIcSideNavigationElement;\n\n @State() deviceSize: number = getCurrentDeviceSize();\n @State() deviceSizeAppTitle: number = DEVICE_SIZES.S;\n @State() foregroundColor: IcBrandForeground = getBrandForegroundAppearance();\n @State() hasSecondaryNavigation: boolean = false;\n @State() menuExpanded: boolean = false;\n @State() menuOpen: boolean = false;\n\n /**\n * The app title to be displayed. This is required, unless a slotted app title link is used.\n */\n @Prop() appTitle?: string;\n\n /**\n * If `true`, the side navigation will close when a navigation item is clicked. This behaviour is only applicable on larger device sizes.\n */\n @Prop() closeOnNavItemClick?: boolean = false;\n\n /**\n * If `true`, the icon and label will appear when side navigation is collapsed.\n */\n @Prop() collapsedIconLabels?: boolean = false;\n\n /**\n * If `true`, automatic parent wrapper styling will be disabled.\n */\n @Prop() disableAutoParentStyling?: boolean = false;\n\n /**\n * If `true`, the side navigation will not display as a top bar on small devices.\n */\n @Prop() disableTopBarBehaviour?: boolean = false;\n\n /**\n * If `true`, the side navigation will display in an expanded state.\n */\n @Prop() expanded?: boolean = false;\n\n @Watch(\"expanded\")\n watchExpandedHandler(): void {\n this.toggleMenuExpanded(this.expanded!);\n }\n\n /**\n * The URL that the app title link points to.\n */\n @Prop() href?: string = \"/\";\n\n /**\n * @internal If `true`, side navigation will be contained by its parent element.\n */\n @Prop() inline?: boolean = false;\n\n /**\n * The short title of the app to be displayed at small screen sizes in place of the app title.\n */\n @Prop() shortAppTitle?: string = \"\";\n\n /**\n * If `true`, the menu expand button will be removed (PLEASE NOTE: This takes effect on screen sizes 992px and above).\n */\n @Prop() static?: boolean = false;\n\n /**\n * The status of the app to be displayed.\n */\n @Prop() status?: string;\n\n /**\n * The version of the app to be displayed.\n */\n @Prop() version?: string;\n\n /**\n * Emitted when the side navigation is collapsed and expanded.\n */\n @Event() icSideNavExpanded: EventEmitter<IcExpandedDetail>;\n\n componentWillLoad(): void {\n this.setMenuExpanded(this.expanded!);\n\n if (this.collapsedIconLabels) {\n this.setCollapsedIconLabels();\n }\n\n this.hasSecondaryNavigation = isSlotUsed(this.el, \"secondary-navigation\");\n }\n\n componentDidLoad(): void {\n this.emitSideNavigationExpanded({\n sideNavExpanded: this.menuExpanded,\n sideNavMobile:\n this.deviceSize === DEVICE_SIZES.S && !this.disableTopBarBehaviour,\n });\n\n checkResizeObserver(this.runResizeObserver);\n this.styleSlottedCollapsedIconLabel();\n this.arrangeSlottedNavigationItem(this.menuExpanded);\n this.displayTooltipWithExpandedLongLabel(this.menuExpanded);\n\n this.setExpandedButtonHeight();\n\n if (this.closeOnNavItemClick) {\n this.el.addEventListener(\n \"navItemClicked\",\n this.handleNavItemClicked as EventListener\n );\n }\n\n !isSlotUsed(this.el, \"app-title\") &&\n onComponentRequiredPropUndefined(\n [{ prop: this.appTitle, propName: \"app-title\" }],\n \"Side Navigation\"\n );\n }\n\n disconnectedCallback(): void {\n if (this.resizeObserver !== null) {\n this.resizeObserver.disconnect();\n }\n\n this.el?.removeEventListener(\"transitionend\", this.transitionEndHandler);\n\n if (this.closeOnNavItemClick) {\n this.el.removeEventListener(\n \"navItemClicked\",\n this.handleNavItemClicked as EventListener\n );\n }\n }\n\n @Listen(\"brandChange\", { target: \"document\" })\n brandChangeHandler({ detail }: CustomEvent<IcBrand>): void {\n this.foregroundColor = detail.mode;\n }\n\n private emitSideNavigationExpanded = (objDetails: {\n sideNavExpanded: boolean;\n sideNavMobile?: boolean;\n }): void => {\n this.icSideNavExpanded.emit({\n sideNavExpanded: objDetails.sideNavExpanded,\n sideNavMobile: !!objDetails.sideNavMobile,\n });\n };\n\n private toggleMenu = (): void => {\n this.menuOpen = !this.menuOpen;\n this.setMobileMenuAriaAttributes(this.menuOpen);\n\n this.arrangeSlottedNavigationItem(this.menuOpen);\n\n this.setToggleMenuFlyoutMenuVisibility(this.menuOpen);\n\n this.emitSideNavigationExpanded({\n sideNavExpanded: this.menuOpen,\n sideNavMobile: true,\n });\n };\n\n private setToggleMenuFlyoutMenuVisibility = (menuOpen: boolean) => {\n const sideNav = this.el.shadowRoot?.querySelector(\n \"#side-navigation\"\n ) as HTMLDivElement;\n const sideNavInner = sideNav.querySelector(\n \".side-navigation-inner\"\n ) as HTMLElement;\n const bottomWrapper = sideNav.querySelector(\n \".bottom-wrapper\"\n ) as HTMLElement;\n\n const menuVisibilityVisible = \"menu-visibility-visible\";\n\n if (menuOpen) {\n bottomWrapper.classList.add(menuVisibilityVisible);\n sideNavInner.classList.add(menuVisibilityVisible);\n } else {\n setTimeout(() => {\n sideNavInner.classList.remove(menuVisibilityVisible);\n bottomWrapper.classList.remove(menuVisibilityVisible);\n }, this.ANIMATION_DURATION);\n }\n };\n\n private setMobileMenuAriaAttributes = (menuOpen: boolean) => {\n if (this.menuButton) {\n this.menuButton.setAttribute(\"aria-expanded\", `${menuOpen}`);\n this.menuButton.setAttribute(\n \"aria-label\",\n `${menuOpen ? \"Close\" : \"Open\"} navigation menu`\n );\n }\n };\n\n private setAndRemoveNoWrapAfterMenuExpanded = () => {\n const appTitle =\n this.el.shadowRoot?.querySelector(\".title-link ic-typography\") ||\n this.el.querySelector(\"[slot='app-title']\");\n\n appTitle?.classList.add(\"ic-typography-no-wrap\");\n\n setTimeout(() => {\n appTitle?.classList.remove(\"ic-typography-no-wrap\");\n }, this.ANIMATION_DURATION);\n };\n\n private toggleMenuExpanded = (expanded: boolean): void => {\n this.menuExpanded = expanded;\n\n if (this.menuExpanded) {\n this.setAndRemoveNoWrapAfterMenuExpanded();\n this.el.shadowRoot\n ?.querySelector(\".app-title-inner-wrapper\")\n ?.classList.add(\"app-title-show\");\n } else {\n this.el.style.setProperty(\"--navigation-item-width\", \"320px\");\n this.el.shadowRoot\n ?.querySelector(\".app-title-inner-wrapper\")\n ?.classList.remove(\"app-title-show\");\n\n this.el.addEventListener(\"transitionend\", (e) => {\n if (e.propertyName === \"width\") {\n this.el.style.setProperty(\"--navigation-item-width\", null);\n }\n });\n }\n\n this.arrangeSlottedNavigationItem(this.menuExpanded);\n\n this.displayTooltipWithExpandedLongLabel(this.menuExpanded);\n\n if (this.collapsedIconLabels) {\n this.animateCollapsedIconLabels();\n }\n\n this.setExpandedButtonHeight();\n this.emitSideNavigationExpanded({ sideNavExpanded: this.menuExpanded });\n };\n\n /**\n * In order to style nested slotted elements (e.g. using React Router components), this method\n * rearranges the a tag and labels and adds inline styling expand/collapsed animations as external CSS classes are not\n * do not take affect.\n * @param menuExpanded boolean - true or false depending on side navigation state\n */\n private arrangeSlottedNavigationItem = (menuExpanded?: boolean) => {\n const navItems = this.el.querySelectorAll(\"ic-navigation-item\");\n navItems.forEach((navItem) => {\n const isNamedSlot = isSlotUsed(navItem, \"navigation-item\");\n const isUnnamedSlot =\n navItem.children[0] && !navItem.children[0].getAttribute(\"slot\");\n if (isNamedSlot || isUnnamedSlot) {\n let navItemSlot;\n if (isNamedSlot) {\n navItemSlot = navItem.querySelector(\"[slot='navigation-item']\");\n } else {\n navItemSlot = navItem.children[0];\n }\n const iconWrapper = document.createElement(\"div\");\n const icon = navItemSlot?.querySelector(\"svg\");\n const badge = navItemSlot?.querySelector(\"ic-badge\");\n const label = navItem.textContent?.trim();\n const icTypography = document.createElement(\"ic-typography\");\n icTypography.classList.add(\n \"ic-typography-label\",\n \"hydrated\",\n \"navigation-item-side-nav-slotted-text\"\n );\n\n iconWrapper.style.position = \"relative\";\n iconWrapper.style.height = \"var(--ic-space-lg)\";\n\n icon && iconWrapper.append(icon);\n badge && iconWrapper.append(badge);\n\n if (label) {\n icTypography.textContent = label;\n }\n\n if (navItemSlot) {\n navItemSlot.textContent = \"\";\n navItemSlot.append(iconWrapper);\n navItemSlot.append(icTypography);\n }\n\n if (this.collapsedIconLabels) {\n this.styleSlottedCollapsedIconLabels(!!menuExpanded, icTypography);\n } else {\n this.styleSlottedIconLabels(!!menuExpanded, icTypography);\n }\n }\n });\n };\n\n private styleSlottedCollapsedIconLabels = (\n menuExpanded: boolean,\n icTypography: HTMLIcTypographyElement\n ) => {\n if (menuExpanded) {\n icTypography.style.marginTop = \"0\";\n icTypography.style.whiteSpace = \"nowrap\";\n icTypography.style.overflow = \"hidden\";\n icTypography.style.textOverflow = \"ellipsis\";\n } else {\n icTypography.style.marginTop = \"10px\";\n icTypography.style.whiteSpace = \"nowrap\";\n icTypography.style.overflow = \"hidden\";\n icTypography.style.textOverflow = \"ellipsis\";\n }\n };\n\n private setExpandedButtonHeight = () => {\n const appStatusWrapper = this.el.shadowRoot?.querySelector(\n \"#side-navigation > .bottom-wrapper > .bottom-side-nav > .app-status-wrapper\"\n ) as HTMLDivElement;\n\n if (appStatusWrapper.offsetHeight !== 0) {\n this.el.style.setProperty(\n \"--sm-side-navigation-bottom-bar-height\",\n `${appStatusWrapper.offsetHeight}px`\n );\n }\n };\n\n private styleSlottedIconLabels = (\n menuExpanded: boolean,\n icTypography: HTMLSpanElement\n ) => {\n if (menuExpanded) {\n icTypography.style.opacity = \"1\";\n icTypography.style.visibility = \"visible\";\n icTypography.style.transition =\n \"visibility 0s, opacity var(--ic-easing-transition-slow)\";\n } else {\n icTypography.style.opacity = \"0\";\n icTypography.style.visibility = \"hidden\";\n icTypography.style.transition =\n \"visibility 0s, opacity var(--ic-easing-transition-slow)\";\n }\n };\n\n private transitionHandler = (type: string) => {\n const primaryNavigationWrapper = this.el.shadowRoot?.querySelector(\n \".primary-navigation\"\n );\n\n const secondaryNavigationWrapper = this.el.shadowRoot?.querySelector(\n \".bottom-wrapper > .secondary-navigation\"\n );\n\n const classToRemove =\n type === \"start\"\n ? this.COLLAPSED_ICON_LABELS_END\n : this.COLLAPSED_ICON_LABELS_START;\n\n const classToAdd =\n type === \"start\"\n ? this.COLLAPSED_ICON_LABELS_START\n : this.COLLAPSED_ICON_LABELS_END;\n\n if (primaryNavigationWrapper) {\n primaryNavigationWrapper.classList.remove(classToRemove);\n primaryNavigationWrapper.classList.add(classToAdd);\n }\n\n if (secondaryNavigationWrapper) {\n secondaryNavigationWrapper.classList.remove(classToRemove);\n secondaryNavigationWrapper.classList.add(classToAdd);\n }\n };\n\n private transitionEndHandler = () => {\n this.transitionHandler(\"end\");\n };\n\n private animateCollapsedIconLabels = () => {\n this.transitionHandler(\"start\");\n this.transitionEndHandler();\n\n this.el.addEventListener(\"transitionend\", this.transitionEndHandler);\n };\n\n private paddingIconWidth = (\n navItems: HTMLIcNavigationItemElement[]\n ): number => {\n const navItemLink =\n (navItems[0].shadowRoot &&\n (navItems[0].shadowRoot.querySelector(\"ic-tooltip a\") ||\n navItems[0].shadowRoot.querySelector(\"ic-tooltip div\"))) ||\n navItems[0].querySelector(\"a\") ||\n navItems[0].querySelector(\"div\");\n const navItemSVG = navItems[0].querySelector(\"svg\");\n\n if (navItemLink && navItemSVG) {\n const navStyles = {\n gap: window.getComputedStyle(navItemLink).gap,\n iconWidth: window.getComputedStyle(navItemSVG).width,\n paddingLeft: window.getComputedStyle(navItemLink).paddingLeft,\n };\n\n return Object.values(navStyles).reduce((prev, curr) => {\n return (prev += parseInt(curr));\n }, 0);\n }\n\n return 0;\n };\n\n private displayTooltipWithExpandedLongLabel = (menuExpanded: boolean) => {\n let timer;\n\n if (menuExpanded) {\n timer = setTimeout(() => {\n const sideNavWidth = this.el.clientWidth;\n\n const navigationItems: HTMLIcNavigationItemElement[] = Array.from(\n this.el.querySelectorAll(this.IC_NAVIGATION_ITEM)\n );\n\n const paddingIconDelta = navigationItems.length\n ? this.paddingIconWidth(navigationItems)\n : 0;\n\n navigationItems.forEach(\n (navigationItem: HTMLIcNavigationItemElement) => {\n const icTypographyScrollWidth =\n (\n navigationItem.shadowRoot &&\n navigationItem.shadowRoot.querySelector(\n \"ic-tooltip .link ic-typography.ic-typography-label\"\n )\n )?.scrollWidth ||\n navigationItem.querySelector(\"ic-typography.ic-typography-label\")\n ?.scrollWidth;\n\n if (\n icTypographyScrollWidth &&\n icTypographyScrollWidth > sideNavWidth - paddingIconDelta\n ) {\n navigationItem.setAttribute(\"display-navigation-tooltip\", \"true\");\n }\n }\n );\n }, this.ANIMATION_DURATION);\n } else {\n clearTimeout(timer);\n\n const navigationItems: HTMLIcNavigationItemElement[] = Array.from(\n this.el.querySelectorAll(this.IC_NAVIGATION_ITEM)\n );\n navigationItems.forEach((navigationItem: HTMLIcNavigationItemElement) => {\n navigationItem.setAttribute(\"display-navigation-tooltip\", \"false\");\n });\n }\n };\n\n private setMenuExpanded = (expanded: boolean): void => {\n this.menuExpanded = expanded;\n };\n\n private handleNavItemClicked = () => {\n if (\n !this.menuOpen &&\n this.deviceSize > DEVICE_SIZES.S &&\n this.menuExpanded\n ) {\n setTimeout(() => {\n this.toggleMenuExpanded(false);\n }, 0);\n }\n };\n\n /**\n * As the mobile top bar is fixed, a padding top is required\n * to push main content down the height of the mobile top bar\n * @param value - padding-top css value\n */\n private setParentPaddingTop = (value: string) => {\n this.el.parentElement?.style.setProperty(\"padding-top\", value);\n };\n\n private setParentPaddingLeft = (value: string) => {\n this.el.parentElement?.style.setProperty(\"padding-left\", value);\n };\n\n private renderAppTitle = (isAppNameSubtitleVariant: boolean) => {\n const displayShortAppTitle =\n this.deviceSize <= DEVICE_SIZES.S && !isEmptyString(this.shortAppTitle);\n return (\n <ic-typography\n variant={\n displayShortAppTitle || isAppNameSubtitleVariant\n ? \"subtitle-small\"\n : \"h3\"\n }\n aria-label={\n displayShortAppTitle\n ? `${this.appTitle} (${this.shortAppTitle})`\n : undefined\n }\n >\n <h1>{displayShortAppTitle ? this.shortAppTitle : this.appTitle}</h1>\n </ic-typography>\n );\n };\n\n private resizeObserverCallback = (currSize: number) => {\n this.deviceSize = currSize;\n\n const isSDeviceEnableTop =\n currSize === DEVICE_SIZES.S && !this.disableTopBarBehaviour;\n\n if (!this.disableAutoParentStyling) {\n const topBarHeight =\n this.el.shadowRoot?.querySelector(\".top-bar\")?.scrollHeight;\n this.setParentPaddingTop(isSDeviceEnableTop ? `${topBarHeight}px` : \"0\");\n if (isSDeviceEnableTop) this.setParentPaddingLeft(\"0\");\n if (isSDeviceEnableTop && this.inline) {\n this.el.parentElement?.style.setProperty(\n \"height\",\n `calc(100% - ${topBarHeight}px)`\n );\n } else if (!isSDeviceEnableTop) {\n this.el.parentElement?.style.setProperty(\"height\", \"100%\");\n }\n }\n\n const notSmallDisableTop =\n currSize > DEVICE_SIZES.S || this.disableTopBarBehaviour;\n\n if (!this.disableAutoParentStyling) {\n const paddingLeft = `calc(var(--ic-space-xxl) ${\n this.collapsedIconLabels ? \"* 2\" : \"+ var(--ic-space-xs)\"\n })`;\n\n if (currSize > DEVICE_SIZES.L) {\n this.setParentPaddingTop(\"0\");\n this.setParentPaddingLeft(\"0\");\n } else if (\n notSmallDisableTop &&\n currSize <= DEVICE_SIZES.M &&\n this.static\n ) {\n this.setParentPaddingLeft(paddingLeft);\n } else if (notSmallDisableTop && currSize <= DEVICE_SIZES.L) {\n this.setParentPaddingLeft(\n this.static && this.menuExpanded\n ? \"calc(var(--ic-space-xl) * 10)\"\n : paddingLeft\n );\n }\n }\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n const currSize = getCurrentDeviceSize();\n this.deviceSizeAppTitle = currSize;\n this.resizeObserverCallback(currSize);\n });\n\n this.resizeObserver.observe(document.body, { box: \"content-box\" });\n };\n\n private setCollapsedIconLabels = () => {\n const navigationItems: HTMLIcNavigationItemElement[] = Array.from(\n this.el.querySelectorAll(this.IC_NAVIGATION_ITEM)\n );\n navigationItems.forEach((navigationItem: HTMLIcNavigationItemElement) => {\n navigationItem.setAttribute(\"collapsed-icon-label\", \"true\");\n });\n };\n\n private styleSlottedCollapsedIconLabel = () => {\n const dynamicSlottedIcTypographyComps: HTMLIcTypographyElement[] =\n Array.from(\n this.el.querySelectorAll(\".navigation-item-side-nav-slotted-text\")\n );\n\n dynamicSlottedIcTypographyComps.forEach((icTypography) => {\n if (\n icTypography.parentElement?.parentElement?.classList.contains(\n \"navigation-item-side-nav-collapsed-with-label\"\n )\n ) {\n icTypography.style.whiteSpace = \"nowrap\";\n icTypography.style.overflow = \"hidden\";\n icTypography.style.textOverflow = \"ellipsis\";\n icTypography.style.marginTop = \"10px\";\n }\n });\n };\n\n private renderTopBar = ({\n isSDevice,\n foregroundColor,\n menuOpen,\n href,\n isAppNameSubtitleVariant,\n }: IcTopBar) => {\n const hasTitle = this.appTitle !== \"\" && isPropDefined(this.appTitle);\n\n const Component = isSlotUsed(this.el, \"app-title\") ? \"div\" : \"a\";\n\n const attrs = Component == \"a\" && {\n href: href,\n };\n\n return (\n <div\n class={{\n \"top-bar\": true,\n [this.foregroundColor]: true,\n }}\n >\n {isSDevice && (\n <nav\n aria-labelledby=\"menu-navigation-toggle-button-landmark\"\n aria-hidden=\"false\"\n >\n <ic-button\n aria-label=\"Open navigation menu\"\n class=\"menu-button\"\n id=\"menu-button\"\n variant=\"secondary\"\n size=\"small\"\n full-width=\"true\"\n theme={\n foregroundColor == \"default\" || foregroundColor == \"light\"\n ? \"light\"\n : \"dark\"\n }\n monochrome\n onClick={this.toggleMenu}\n ariaOwnsId=\"side-navigation\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\"\n ref={(el) => (this.menuButton = el)}\n >\n <span\n class=\"mobile-top-bar-menu-icon\"\n slot=\"left-icon\"\n innerHTML={menuOpen ? closeIcon : menuIcon}\n ></span>\n {menuOpen ? \"Close\" : \"Menu\"}\n </ic-button>\n <span\n id=\"menu-navigation-toggle-button-landmark\"\n class=\"navigation-landmark-title\"\n aria-hidden=\"true\"\n >\n Navigation menu toggle button\n </span>\n </nav>\n )}\n <div class=\"app-title-wrapper\">\n {(hasTitle || isSlotUsed(this.el, \"app-title\")) && (\n <Component {...attrs} class=\"title-link\">\n <div class=\"app-icon-container\" aria-hidden=\"true\">\n <slot name=\"app-icon\"></slot>\n </div>\n <div class=\"app-title-inner-wrapper\">\n {isSlotUsed(this.el, \"app-title\") ? (\n <slot name=\"app-title\"></slot>\n ) : (\n this.renderAppTitle(isAppNameSubtitleVariant)\n )}\n </div>\n </Component>\n )}\n </div>\n </div>\n );\n };\n\n render() {\n const {\n appTitle,\n menuOpen,\n foregroundColor,\n menuExpanded,\n href,\n status,\n version,\n collapsedIconLabels,\n inline,\n } = this;\n\n const isSDevice =\n !this.disableTopBarBehaviour && this.deviceSize === DEVICE_SIZES.S;\n const isSDeviceDisableTop =\n this.disableTopBarBehaviour && this.deviceSize === DEVICE_SIZES.S;\n const isMdDevice = this.deviceSize === DEVICE_SIZES.M;\n const isLgDevice = this.deviceSize >= DEVICE_SIZES.L;\n const isAppNameSubtitleVariant = this.deviceSizeAppTitle === DEVICE_SIZES.S;\n const displayExpandBtn =\n isMdDevice || isSDeviceDisableTop || (isLgDevice && !this.static);\n\n const topBarProps: IcTopBar = {\n isSDevice,\n foregroundColor,\n menuOpen,\n href: href!,\n isAppNameSubtitleVariant,\n appTitle: appTitle || \"\",\n };\n\n return (\n <Host\n class={{\n \"xs-menu-open\": menuOpen && isSDevice,\n \"xs-menu-close\": !menuOpen && isSDevice,\n \"sm-collapsed\": !isSDevice && !menuExpanded,\n \"sm-expanded\": !isSDevice && menuExpanded,\n \"side-display\":\n this.deviceSize > DEVICE_SIZES.S || !!this.disableTopBarBehaviour,\n [`ic-side-navigation-${IcBrandForegroundEnum.Dark}`]:\n foregroundColor === IcBrandForegroundEnum.Dark,\n [\"collapsed-labels\"]:\n !isSDevice && !menuExpanded && !!collapsedIconLabels,\n [\"ic-side-navigation-inline\"]: !!inline,\n }}\n >\n {isSDevice && this.renderTopBar({ ...topBarProps })}\n <div class=\"side-navigation\" id=\"side-navigation\">\n {!isSDevice && this.renderTopBar({ ...topBarProps })}\n <div class=\"side-navigation-inner\">\n {isSlotUsed(this.el, \"primary-navigation\") && (\n <nav\n class=\"primary-navigation\"\n aria-labelledby=\"primary-navigation-landmark\"\n >\n <span\n aria-hidden=\"true\"\n class=\"navigation-landmark-title\"\n id=\"primary-navigation-landmark\"\n >\n Primary\n </span>\n <ul class=\"navigation-list\">\n <slot name=\"primary-navigation\"></slot>\n </ul>\n </nav>\n )}\n </div>\n <div\n class={{\n [\"bottom-wrapper\"]: true,\n [\"classification-spacing\"]: hasClassificationBanner(),\n }}\n >\n {isSlotUsed(this.el, \"secondary-navigation\") && (\n <nav\n class=\"secondary-navigation\"\n aria-labelledby=\"secondary-navigation-landmark\"\n >\n <span\n aria-hidden=\"true\"\n class=\"navigation-landmark-title\"\n id=\"secondary-navigation-landmark\"\n >\n Secondary\n </span>\n <ul class=\"navigation-list\">\n <slot name=\"secondary-navigation\"></slot>\n </ul>\n </nav>\n )}\n <div class=\"bottom-side-nav\">\n {this.hasSecondaryNavigation && <ic-divider></ic-divider>}\n {displayExpandBtn && (\n <button\n class=\"menu-expand-button\"\n innerHTML={chevronIcon}\n onClick={() => this.toggleMenuExpanded(!this.menuExpanded)}\n aria-label={`${\n menuExpanded ? \"Collapse\" : \"Expand\"\n } side navigation`}\n ></button>\n )}\n <div class=\"app-status-wrapper\">\n {status && (\n <div\n class={{\n [\"app-status\"]: true,\n }}\n >\n <ic-typography\n aria-label=\"app tag\"\n variant=\"label-uppercase\"\n class=\"app-status-text\"\n >\n {status}\n </ic-typography>\n </div>\n )}\n {version && (\n <ic-typography\n variant=\"label\"\n class=\"app-version\"\n aria-label=\"app version\"\n >\n {version}\n </ic-typography>\n )}\n </div>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-side-navigation.js","mappings":"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","names":[],"sources":["src/components/ic-side-navigation/ic-side-navigation.css?tag=ic-side-navigation&encapsulation=shadow","src/components/ic-side-navigation/ic-side-navigation.tsx"],"sourcesContent":["/**\n * @prop --ic-z-index-side-navigation: z-index of side navigation panel\n */\n\n:host {\n display: block;\n\n --ic-typography-color: currentcolor;\n --side-navigation-position: fixed;\n --side-navigation-position-left: 0;\n --side-navigation-position-top: var(--ic-space-xxl);\n --side-navigation-height: var(--ic-space-xxl);\n --sm-side-navigation-top-bar-height: 3.5rem;\n --sm-side-navigation-collapsed-labels-width: 6rem;\n --sm-side-navigation-expand-transition-duration: var(\n --ic-transition-duration-slow\n );\n --side-navigation-width: 20rem;\n --sm-side-navigation-bottom-bar-height: 3.5rem;\n --keyline-lighten: var(--ic-space-1px) solid var(--ic-side-navigation-keyline);\n --keyline-darken: var(--ic-space-1px) solid var(--ic-state-layer-darken-20);\n --ic-button-secondary-text-monochrome: var(--ic-brand-text-color);\n --ic-button-secondary-border-monochrome: var(--ic-brand-text-color);\n\n z-index: var(--ic-z-index-side-navigation);\n}\n\n:host > * {\n box-sizing: border-box;\n}\n\n.side-navigation {\n display: flex;\n flex-direction: column;\n width: var(--side-navigation-width);\n color: var(--ic-side-navigation-text);\n position: var(--side-navigation-position);\n top: var(--side-navigation-position-top);\n left: calc(var(--side-navigation-width) * -1);\n bottom: 0;\n background-color: var(--ic-side-navigation-background);\n z-index: var(--ic-z-index-side-navigation);\n}\n\n:host(.ic-side-navigation-inline) .side-navigation {\n position: absolute;\n height: 100%;\n}\n\n:host(.anchor-right) .side-navigation {\n right: calc(var(--side-navigation-width) * -1);\n}\n\n.classification-spacing {\n margin-bottom: var(--ic-space-lg);\n}\n\n.navigation-list {\n padding: 0;\n margin: 0;\n list-style: none;\n}\n\n.side-navigation-inner {\n background-color: var(--ic-side-navigation-background);\n display: flex;\n flex-direction: column;\n flex: 1 1 4rem;\n overflow: auto;\n}\n\n:host(.ic-side-navigation-inline) .side-navigation-inner {\n flex: 1;\n}\n\n:host(.xs-menu-open) .side-navigation {\n transition: left var(--ic-easing-transition-slow);\n left: 0;\n}\n\n:host(:has(.xs-menu-open, .xs-menu-close)) ::slotted(ic-navigation-item) {\n --navigation-item-side-nav-right: var(--ic-space-xl);\n}\n\n:host(.xs-menu-close) .side-navigation {\n left: calc(var(--side-navigation-width) * -1);\n transition: left var(--ic-easing-transition-slow);\n}\n\n:host(.xs-menu-close) .side-navigation > * {\n visibility: hidden;\n}\n\n:host(.anchor-right.xs-menu-open) .side-navigation {\n right: 0;\n left: auto;\n}\n\n:host(.anchor-right.xs-menu-close) .side-navigation {\n right: calc(var(--side-navigation-width) * -1);\n left: auto;\n transition: right var(--ic-easing-transition-slow);\n}\n\n.bottom-wrapper {\n border-top: var(--keyline-lighten);\n bottom: 0;\n left: 0;\n z-index: 2;\n background-color: var(--ic-side-navigation-background);\n display: flex;\n flex-direction: column;\n}\n\n:host(.ic-side-navigation-inline) .bottom-wrapper {\n position: sticky;\n}\n\n:host(.ic-side-navigation-dark) .bottom-wrapper {\n border-top: var(--keyline-darken);\n}\n\n/* Mobile Top Bar */\n\n.top-bar {\n display: flex;\n flex-direction: row;\n align-items: center;\n min-height: var(--side-navigation-height);\n padding: var(--ic-space-xs);\n box-sizing: border-box;\n background-color: var(--ic-side-navigation-background);\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n border-bottom: var(--keyline-lighten);\n box-shadow: var(--ic-elevation-overlay);\n z-index: 2;\n overflow: hidden;\n visibility: visible;\n}\n\n:host(.ic-side-navigation-inline) .top-bar {\n position: absolute;\n}\n\n:host(.ic-side-navigation-dark) .top-bar {\n border-bottom: var(--keyline-darken);\n}\n\n.top-bar.dark a:focus {\n box-shadow: var(--ic-border-focus);\n}\n\n.app-title-wrapper {\n display: flex;\n margin-left: var(--ic-space-xs);\n border-left: var(--keyline-lighten);\n padding-left: var(--ic-space-xxs);\n color: var(--ic-side-navigation-text);\n align-items: center;\n}\n\n:host(.ic-side-navigation-dark) .app-title-wrapper {\n border-left: var(--keyline-darken);\n}\n\n.app-title-wrapper ic-typography h1 {\n margin: 0;\n}\n\n@media screen and (min-width: 340px) {\n .app-title-wrapper ic-typography {\n margin-left: var(--ic-space-xs);\n }\n}\n\n:host .title-link {\n display: flex;\n align-items: center;\n transition: box-shadow var(--ic-easing-transition-fast),\n background-color var(--ic-easing-transition-fast);\n text-decoration: none;\n padding: var(--ic-space-xxs);\n color: var(--ic-side-navigation-text);\n}\n\n:host .title-link:visited,\n:host .title-link:active {\n color: var(--ic-side-navigation-text);\n}\n\nslot[name=\"app-title\"]::slotted(a),\nslot[name=\"app-icon\"]::slotted(a) {\n color: var(--ic-side-navigation-text);\n outline: none;\n text-decoration: none;\n display: flex;\n}\n\nslot[name=\"app-title\"]::slotted(ic-typography),\nslot[name=\"app-title\"]::slotted(a) {\n margin-left: var(--ic-space-xs) !important;\n}\n\nslot[name=\"app-title\"]::slotted(a) {\n font: var(--ic-font-subtitle-small);\n}\n\n:host .title-link:hover {\n border-radius: var(--ic-border-radius);\n background-color: var(--ic-side-navigation-hover);\n}\n\n:host .title-link:active {\n background-color: var(--ic-side-navigation-pressed);\n}\n\n:host .title-link:focus,\n:host .title-link:focus-within {\n border-radius: var(--ic-border-radius);\n box-shadow: var(--ic-border-focus);\n outline: var(--ic-hc-focus-outline);\n background-color: transparent;\n}\n\n:host .title-link ic-typography {\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n}\n\n.app-title-wrapper ::slotted(svg) {\n fill: var(--ic-side-navigation-text);\n}\n\n.app-icon-container {\n display: none;\n}\n\n.button-label {\n display: flex;\n align-items: center;\n}\n\n.mobile-top-bar-menu-icon {\n display: flex;\n}\n\n.menu-button {\n width: 6.5rem;\n}\n\n.app-status-wrapper {\n inset: 0 var(--ic-space-sm) 0 3.5rem;\n width: auto;\n display: flex;\n gap: var(--ic-space-xs);\n padding: var(--ic-space-sm) 0;\n justify-content: flex-end;\n align-items: flex-end;\n pointer-events: none;\n height: -moz-fit-content;\n height: fit-content;\n margin: 0 var(--ic-space-xs);\n}\n\n.app-status-wrapper .app-version {\n display: flex;\n overflow-wrap: break-word;\n padding-bottom: var(--ic-space-xxs);\n}\n\n.app-status-wrapper .app-status {\n display: flex;\n border-radius: 1rem;\n background-color: var(--ic-side-navigation-text);\n color: var(--ic-side-navigation-status-tag-text);\n padding: var(--ic-space-xxs) var(--ic-space-lg);\n min-width: 1rem;\n}\n\n.app-status-wrapper .app-status-text {\n overflow-wrap: break-word;\n}\n\n:host(.ic-side-navigation-dark) .app-status-wrapper .app-status {\n --ic-typography-color: var(--ic-architectural-white);\n}\n\n.navigation-landmark-title {\n position: absolute;\n width: var(--ic-space-1px);\n height: var(--ic-space-1px);\n padding: 0;\n margin: calc(-1 * var(--ic-space-1px));\n overflow: hidden;\n}\n\n/* Navigation Group */\n\n::slotted(ic-navigation-group) {\n --navigation-group-height: 2.75rem;\n --navigation-group-justify-content: space-between;\n --navigation-group-hover: var(--ic-side-navigation-hover);\n --navigation-group-text-hover: var(--ic-side-navigation-text);\n --navigation-item-child-height: 3.5rem;\n --navigation-item-child-active: var(--ic-action-dark-bg-pressed);\n --navigation-item-child-color: var(--ic-side-navigation-text);\n --navigation-group-expand-toggle-padding: 0.25rem;\n}\n\n/* Navigation Items */\n\n::slotted(ic-navigation-item),\n::slotted(ic-navigation-group) {\n --navigation-item-justify-content: flex-start;\n --navigation-item-min-height: 56px;\n --navigation-item-height: auto;\n}\n\n/* Toggle Chevron */\n\n.bottom-side-nav {\n position: relative;\n align-content: flex-end;\n min-height: var(--sm-side-navigation-top-bar-height);\n}\n\n.bottom-side-nav ic-divider {\n position: absolute;\n top: 0;\n}\n\n.primary-navigation {\n flex: 1;\n display: flex;\n flex-direction: column;\n overflow-y: auto;\n\n /* Hide scrollbar when required but keep functionality */\n scrollbar-width: none;\n}\n\n.primary-navigation::-webkit-scrollbar {\n display: none;\n}\n\n.primary-navigation,\n.secondary-navigation {\n overflow-x: hidden;\n}\n\n.bottom-side-nav .menu-expand-button {\n position: absolute;\n display: none;\n}\n\n.menu-visibility-visible {\n visibility: visible;\n width: 100%;\n}\n\n.app-title-show {\n min-width: 15.5rem;\n}\n\n:host(.side-display) {\n display: flex;\n flex-direction: column;\n height: 100vh;\n position: var(--side-navigation-position);\n left: 0;\n top: 0;\n bottom: 0;\n}\n\n:host(.side-display) .app-icon-container {\n height: 40px;\n display: flex;\n align-items: center;\n}\n\n:host(.side-display) .top-bar {\n --side-navigation-height: var(--sm-side-navigation-top-bar-height);\n\n position: relative;\n padding: 0;\n box-shadow: none;\n}\n\n:host(.ic-side-navigation-inline.side-display) .top-bar {\n position: sticky;\n}\n\n:host(.anchor-right.side-display) .top-bar {\n box-shadow: 0.188rem 0.188rem 0.5rem rgb(0 0 0 / 20%);\n}\n\n:host(.anchor-right.side-display) .bottom-wrapper {\n box-shadow: 0.188rem -0.188rem 0.5rem rgb(0 0 0 / 20%);\n}\n\n:host(.side-display) .side-navigation,\n:host(.side-display) .top-bar {\n width: var(--sm-side-navigation-top-bar-height);\n}\n\n:host(.sm-collapsed.side-display) {\n width: var(--sm-side-navigation-top-bar-height);\n transition: width var(--ic-easing-transition-slow);\n}\n\n:host(.sm-collapsed.collapsed-labels.side-display) {\n width: var(--sm-side-navigation-collapsed-labels-width);\n}\n\n:host(.sm-expanded.side-display) {\n width: var(--side-navigation-width);\n transition: width var(--ic-easing-transition-slow);\n box-shadow: var(--ic-elevation-overlay);\n}\n\n:host(.side-display) .side-navigation {\n --side-navigation-position-top: 0;\n\n flex: 1;\n position: relative;\n top: auto;\n left: auto;\n bottom: auto;\n}\n\n:host(.ic-side-navigation-inline.side-display) .side-navigation {\n position: relative;\n}\n\n:host(.anchor-right.side-display) .side-navigation {\n left: auto;\n right: 0;\n}\n\n:host(.side-display) .app-title-wrapper {\n margin-left: 0;\n border-left: none;\n padding: var(--ic-space-xs) var(--ic-space-sm);\n}\n\n:host(.side-display) .app-title-wrapper ::slotted(svg) {\n height: var(--ic-space-lg);\n width: var(--ic-space-lg);\n}\n\n:host(.side-display) .app-title-wrapper ic-typography {\n font-weight: var(--ic-font-weight-semibold);\n}\n\n:host(.sm-collapsed.side-display) .app-title-wrapper ic-typography {\n position: absolute;\n left: -9999px;\n opacity: 0;\n transition: opacity var(--ic-easing-transition-slow);\n}\n\n:host(.sm-collapsed.side-display) .app-title-wrapper ic-typography:dir(rtl) {\n right: -9999px;\n}\n\n:host(.sm-expanded.side-display) ic-typography {\n position: relative;\n left: 0;\n}\n\n:host(.sm-expanded.side-display) :is(.side-navigation, .top-bar) {\n width: var(--side-navigation-width);\n transition: width var(--ic-easing-transition-slow);\n}\n\n:host(.sm-collapsed.side-display) :is(.side-navigation, .top-bar) {\n width: var(--sm-side-navigation-top-bar-height);\n transition: width var(--ic-easing-transition-slow);\n}\n\n:host(.anchor-right.sm-expanded.side-display) :is(.side-navigation, .top-bar) {\n left: auto;\n right: 0;\n}\n\n:host(.side-display) .app-status-wrapper,\n:host(.sm-collapsed.side-display) .app-status-wrapper {\n display: none;\n margin-left: 0;\n}\n\n:host(.sm-expanded.side-display) .app-status-wrapper {\n display: flex;\n max-width: 16rem;\n margin-right: calc(var(--ic-space-xxxs) + var(--ic-space-xs));\n}\n\n:host(.side-display) .bottom-side-nav {\n justify-items: flex-end;\n align-items: flex-end;\n justify-content: flex-end;\n display: flex;\n outline: none;\n}\n\n:host(.side-display) .bottom-side-nav .menu-expand-button {\n padding-left: var(--ic-space-md);\n height: var(--sm-side-navigation-top-bar-height);\n width: 100%;\n color: var(--ic-side-navigation-text);\n background-color: transparent;\n outline: var(--ic-hc-focus-outline);\n border: none;\n cursor: pointer;\n display: flex;\n transition: var(--ic-easing-transition-fast);\n}\n\n:host(.sm-expanded.side-display) .bottom-side-nav .menu-expand-button {\n height: 100%;\n}\n\n:host(.side-display) .bottom-side-nav .menu-expand-button svg {\n justify-items: flex-start;\n align-self: center;\n display: inline-block;\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n}\n\n:host(.side-display) .bottom-side-nav .menu-expand-button:hover {\n background-color: var(--ic-side-navigation-hover);\n}\n\n:host(.side-display) .bottom-side-nav .menu-expand-button:focus {\n box-shadow: var(--ic-border-focus-inset);\n border-radius: var(--ic-border-radius-inset);\n background-color: transparent;\n}\n\n:host(.sm-collapsed.side-display) .bottom-side-nav .menu-expand-button svg {\n transform: scaleX(1);\n transition: transform var(--ic-easing-transition-slow);\n}\n\n:host(.sm-expanded.side-display) .bottom-side-nav .menu-expand-button svg {\n transform: scaleX(-1);\n transition: transform var(--ic-easing-transition-slow);\n align-self: flex-end;\n margin-bottom: 0.875rem;\n}\n\n:host(.anchor-right.sm-collapsed.side-display)\n .bottom-side-nav\n .menu-expand-button\n svg {\n transform: scaleX(-1);\n}\n\n:host(.anchor-right.sm-expanded.side-display)\n .bottom-side-nav\n .menu-expand-button\n svg {\n transform: scaleX(1);\n}\n\n:host(.sm-collapsed.side-display) ::slotted(ic-navigation-item) {\n --navigation-item-label-opacity: 1;\n}\n\n:host(.sm-collapsed.side-display) ::slotted(ic-navigation-item),\n:host(.sm-collapsed.side-display) ::slotted(ic-navigation-group) {\n --navigation-item-label-opacity: 0;\n --navigation-item-min-height: 3.5rem;\n --navigation-item-height: 3.5rem;\n}\n\n:host(.sm-expanded.side-display) ::slotted(ic-navigation-item),\n:host(.sm-expanded.side-display) ::slotted(ic-navigation-group) {\n --navigation-item-label-opacity: 1;\n --navigation-item-height: auto;\n --navigation-item-min-height: 3.5rem;\n --navigation-item-width: 20rem;\n --navigation-item-side-nav-right: var(--ic-space-xl);\n --navigation-group-width: 20rem;\n}\n\n:host(.sm-collapsed.side-display) ::slotted(ic-navigation-group) {\n --navigation-group-title-position: absolute;\n --navigation-group-title-position-left: -9999px;\n --navigation-group-title-opacity: none;\n}\n\n:host(.sm-expanded.side-display) ::slotted(ic-navigation-group) {\n --navigation-group-title-position: relative;\n --navigation-group-title-position-left: 0;\n --navigation-group-expand-toggle-padding: 0.25rem;\n --navigation-group-title-opacity: flex;\n}\n\n:host(.sm-collapsed.collapsed-labels.side-display) .side-navigation,\n:host(.sm-collapsed.collapsed-labels.side-display) .top-bar {\n width: var(--sm-side-navigation-collapsed-labels-width);\n}\n\n:host(.sm-collapsed.collapsed-labels.side-display) .menu-expand-button {\n padding: 0;\n}\n\n:host(.sm-collapsed.collapsed-labels.side-display) .app-title-wrapper {\n width: 100%;\n justify-content: center;\n}\n\n:host(.sm-collapsed.collapsed-labels.side-display)\n ::slotted(ic-navigation-group) {\n --navigation-group-justify-content: center;\n --navigation-item-label-opacity: 1;\n --navigation-group-item-min-width: 100%;\n --navigation-group-expand-toggle-padding: 1rem;\n}\n\n:host(.collapsed-labels.side-display) .bottom-side-nav .menu-expand-button {\n justify-content: center;\n}\n\n:host(.side-display) .collapsed-icon-labels-start {\n visibility: hidden;\n opacity: 0;\n}\n\n:host(.side-display) .collapsed-icon-labels-end {\n visibility: visible;\n opacity: 1;\n transition: visibility 0s, opacity var(--ic-easing-transition-slow);\n}\n\n/* Media Queries */\n\n@media screen and (max-width: 419px) {\n .top-bar {\n height: var(--side-navigation-height);\n }\n}\n\n@media screen and (max-width: 319px) {\n .side-navigation {\n width: 100%;\n }\n}\n\n@media screen and (min-width: 340px) {\n .app-icon-container {\n display: flex;\n }\n}\n\n@media screen and (min-width: 577px) {\n :host(.sm-collapsed) slot[name=\"app-title\"]::slotted(ic-typography),\n :host(.sm-collapsed) slot[name=\"app-title\"]::slotted(a) {\n position: absolute;\n left: -9999px;\n opacity: 0;\n transition: opacity var(--ic-easing-transition-slow);\n }\n\n @media (prefers-reduced-motion: reduce) {\n :host(.sm-collapsed) slot[name=\"app-title\"]::slotted(ic-typography),\n :host(.sm-collapsed) slot[name=\"app-title\"]::slotted(a) {\n transition: none;\n }\n }\n\n :host(.sm-collapsed) slot[name=\"app-title\"]:dir(rtl)::slotted(ic-typography),\n :host(.sm-collapsed) slot[name=\"app-title\"]:dir(rtl)::slotted(a) {\n right: -9999px;\n }\n\n :host(.sm-expanded) slot[name=\"app-title\"]::slotted(a) {\n font: var(--ic-font-h3) !important;\n font-weight: var(--ic-font-weight-semibold) !important;\n margin-left: var(--ic-space-xs) !important;\n }\n}\n\n@media screen and (min-width: 993px) {\n :host(.side-display) {\n position: sticky;\n left: auto;\n top: 0;\n bottom: 0;\n }\n\n :host(.sm-expanded.side-display) {\n box-shadow: none;\n }\n}\n\n@media (forced-colors: active) {\n .side-navigation,\n .top-bar {\n border-right: var(--ic-border-hc);\n }\n\n .menu-expand-button {\n color: Highlight !important;\n }\n\n slot[name=\"app-icon\"]::slotted(svg) {\n fill: currentcolor;\n }\n}\n\n@media (prefers-reduced-motion: reduce) {\n :host(.xs-menu-open) .side-navigation,\n :host(.xs-menu-close) .side-navigation,\n :host(.anchor-right.xs-menu-close) .side-navigation,\n :host .title-link,\n :host(.sm-collapsed.side-display),\n :host(.sm-expanded.side-display),\n :host(.sm-collapsed.side-display) .app-title-wrapper ic-typography,\n :host(.sm-collapsed.side-display) :is(.side-navigation, .top-bar),\n :host(.sm-expanded.side-display) :is(.side-navigation, .top-bar),\n :host(.side-display) .bottom-side-nav .menu-expand-button,\n :host(.sm-collapsed.side-display) .bottom-side-nav .menu-expand-button svg,\n :host(.sm-expanded.side-display) .bottom-side-nav .menu-expand-button svg,\n :host(.side-display) .collapsed-icon-labels-end {\n transition: none;\n }\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n State,\n Element,\n Listen,\n Event,\n EventEmitter,\n Watch,\n} from \"@stencil/core\";\n\nimport menuIcon from \"../../assets/hamburger-menu-icon.svg\";\nimport closeIcon from \"../../assets/close-icon.svg\";\nimport chevronIcon from \"../../assets/chevron-icon.svg\";\nimport {\n getCurrentDeviceSize,\n DEVICE_SIZES,\n checkResizeObserver,\n isSlotUsed,\n getBrandForegroundAppearance,\n getCssProperty,\n hasClassificationBanner,\n onComponentRequiredPropUndefined,\n isEmptyString,\n isPropDefined,\n} from \"../../utils/helpers\";\nimport {\n IcBrand,\n IcBrandForeground,\n IcBrandForegroundEnum,\n} from \"../../utils/types\";\nimport { IcTopBar, IcExpandedDetail } from \"./ic-side-navigation.types\";\n\n/**\n * @slot app-icon - Content will be rendered adjacent to the app title at the very top of the side navigation.\n * @slot app-title - Handle routing by nesting a route in the app title.\n * @slot primary-navigation - Content will be rendered at the top of the side navigation.\n * @slot secondary-navigation - Content will be rendered at the bottom of the side navigation.\n */\n\n@Component({\n tag: \"ic-side-navigation\",\n styleUrl: \"ic-side-navigation.css\",\n shadow: true,\n})\nexport class SideNavigation {\n private ANIMATION_DURATION = window.matchMedia(\n \"(prefers-reduced-motion: reduce)\"\n ).matches\n ? 0\n : parseInt(getCssProperty(\"--ic-transition-duration-slow\")) || 0;\n private IC_NAVIGATION_ITEM: string = \"ic-navigation-item\";\n private resizeObserver: ResizeObserver | null = null;\n private COLLAPSED_ICON_LABELS_END = \"collapsed-icon-labels-end\";\n private COLLAPSED_ICON_LABELS_START = \"collapsed-icon-labels-start\";\n private menuButton?: HTMLIcButtonElement;\n\n @Element() el: HTMLIcSideNavigationElement;\n\n @State() deviceSize: number = getCurrentDeviceSize();\n @State() deviceSizeAppTitle: number = DEVICE_SIZES.S;\n @State() foregroundColor: IcBrandForeground = getBrandForegroundAppearance();\n @State() hasSecondaryNavigation: boolean = false;\n @State() menuExpanded: boolean = false;\n @State() menuOpen: boolean = false;\n\n /**\n * The app title to be displayed. This is required, unless a slotted app title link is used.\n */\n @Prop() appTitle?: string;\n\n /**\n * If `true`, the side navigation will close when a navigation item is clicked. This behaviour is only applicable on larger device sizes.\n */\n @Prop() closeOnNavItemClick?: boolean = false;\n\n /**\n * If `true`, the icon and label will appear when side navigation is collapsed.\n */\n @Prop() collapsedIconLabels?: boolean = false;\n\n /**\n * If `true`, automatic parent wrapper styling will be disabled.\n */\n @Prop() disableAutoParentStyling?: boolean = false;\n\n /**\n * If `true`, the side navigation will not display as a top bar on small devices.\n */\n @Prop() disableTopBarBehaviour?: boolean = false;\n\n /**\n * If `true`, the side navigation will display in an expanded state.\n */\n @Prop() expanded?: boolean = false;\n\n @Watch(\"expanded\")\n watchExpandedHandler(): void {\n this.toggleMenuExpanded(this.expanded!);\n }\n\n /**\n * The URL that the app title link points to.\n */\n @Prop() href?: string = \"/\";\n\n /**\n * @internal If `true`, side navigation will be contained by its parent element.\n */\n @Prop() inline?: boolean = false;\n\n /**\n * The short title of the app to be displayed at small screen sizes in place of the app title.\n */\n @Prop() shortAppTitle?: string = \"\";\n\n /**\n * If `true`, the menu expand button will be removed (PLEASE NOTE: This takes effect on screen sizes 992px and above).\n */\n @Prop() static?: boolean = false;\n\n /**\n * The status of the app to be displayed.\n */\n @Prop() status?: string;\n\n /**\n * The version of the app to be displayed.\n */\n @Prop() version?: string;\n\n /**\n * Emitted when the side navigation is collapsed and expanded.\n */\n @Event() icSideNavExpanded: EventEmitter<IcExpandedDetail>;\n\n componentWillLoad(): void {\n this.setMenuExpanded(this.expanded!);\n\n if (this.collapsedIconLabels) {\n this.setCollapsedIconLabels();\n }\n\n this.hasSecondaryNavigation = isSlotUsed(this.el, \"secondary-navigation\");\n }\n\n componentDidLoad(): void {\n this.emitSideNavigationExpanded({\n sideNavExpanded: this.menuExpanded,\n sideNavMobile:\n this.deviceSize === DEVICE_SIZES.S && !this.disableTopBarBehaviour,\n });\n\n checkResizeObserver(this.runResizeObserver);\n this.styleSlottedCollapsedIconLabel();\n this.arrangeSlottedNavigationItem(this.menuExpanded);\n this.displayTooltipWithExpandedLongLabel(this.menuExpanded);\n\n this.setExpandedButtonHeight();\n\n if (this.closeOnNavItemClick) {\n this.el.addEventListener(\n \"navItemClicked\",\n this.handleNavItemClicked as EventListener\n );\n }\n\n !isSlotUsed(this.el, \"app-title\") &&\n onComponentRequiredPropUndefined(\n [{ prop: this.appTitle, propName: \"app-title\" }],\n \"Side Navigation\"\n );\n }\n\n disconnectedCallback(): void {\n if (this.resizeObserver !== null) {\n this.resizeObserver.disconnect();\n }\n\n this.el?.removeEventListener(\"transitionend\", this.transitionEndHandler);\n\n if (this.closeOnNavItemClick) {\n this.el.removeEventListener(\n \"navItemClicked\",\n this.handleNavItemClicked as EventListener\n );\n }\n }\n\n @Listen(\"brandChange\", { target: \"document\" })\n brandChangeHandler({ detail }: CustomEvent<IcBrand>): void {\n this.foregroundColor = detail.mode;\n }\n\n private emitSideNavigationExpanded = (objDetails: {\n sideNavExpanded: boolean;\n sideNavMobile?: boolean;\n }): void => {\n this.icSideNavExpanded.emit({\n sideNavExpanded: objDetails.sideNavExpanded,\n sideNavMobile: !!objDetails.sideNavMobile,\n });\n };\n\n private toggleMenu = (): void => {\n this.menuOpen = !this.menuOpen;\n this.setMobileMenuAriaAttributes(this.menuOpen);\n\n this.arrangeSlottedNavigationItem(this.menuOpen);\n\n this.setToggleMenuFlyoutMenuVisibility(this.menuOpen);\n\n this.emitSideNavigationExpanded({\n sideNavExpanded: this.menuOpen,\n sideNavMobile: true,\n });\n };\n\n private setToggleMenuFlyoutMenuVisibility = (menuOpen: boolean) => {\n const sideNav = this.el.shadowRoot?.querySelector(\n \"#side-navigation\"\n ) as HTMLDivElement;\n const sideNavInner = sideNav.querySelector(\n \".side-navigation-inner\"\n ) as HTMLElement;\n const bottomWrapper = sideNav.querySelector(\n \".bottom-wrapper\"\n ) as HTMLElement;\n\n const menuVisibilityVisible = \"menu-visibility-visible\";\n\n if (menuOpen) {\n bottomWrapper.classList.add(menuVisibilityVisible);\n sideNavInner.classList.add(menuVisibilityVisible);\n } else {\n setTimeout(() => {\n sideNavInner.classList.remove(menuVisibilityVisible);\n bottomWrapper.classList.remove(menuVisibilityVisible);\n }, this.ANIMATION_DURATION);\n }\n };\n\n private setMobileMenuAriaAttributes = (menuOpen: boolean) => {\n if (this.menuButton) {\n this.menuButton.setAttribute(\"aria-expanded\", `${menuOpen}`);\n this.menuButton.setAttribute(\n \"aria-label\",\n `${menuOpen ? \"Close\" : \"Open\"} navigation menu`\n );\n }\n };\n\n private setAndRemoveNoWrapAfterMenuExpanded = () => {\n const appTitle =\n this.el.shadowRoot?.querySelector(\".title-link ic-typography\") ||\n this.el.querySelector(\"[slot='app-title']\");\n\n appTitle?.classList.add(\"ic-typography-no-wrap\");\n\n setTimeout(() => {\n appTitle?.classList.remove(\"ic-typography-no-wrap\");\n }, this.ANIMATION_DURATION);\n };\n\n private toggleMenuExpanded = (expanded: boolean): void => {\n this.menuExpanded = expanded;\n\n if (this.menuExpanded) {\n this.setAndRemoveNoWrapAfterMenuExpanded();\n this.el.shadowRoot\n ?.querySelector(\".app-title-inner-wrapper\")\n ?.classList.add(\"app-title-show\");\n } else {\n this.el.style.setProperty(\"--navigation-item-width\", \"320px\");\n this.el.shadowRoot\n ?.querySelector(\".app-title-inner-wrapper\")\n ?.classList.remove(\"app-title-show\");\n\n this.el.addEventListener(\"transitionend\", (e) => {\n if (e.propertyName === \"width\") {\n this.el.style.setProperty(\"--navigation-item-width\", null);\n }\n });\n }\n\n this.arrangeSlottedNavigationItem(this.menuExpanded);\n\n this.displayTooltipWithExpandedLongLabel(this.menuExpanded);\n\n if (this.collapsedIconLabels) {\n this.animateCollapsedIconLabels();\n }\n\n this.setExpandedButtonHeight();\n this.emitSideNavigationExpanded({ sideNavExpanded: this.menuExpanded });\n };\n\n /**\n * In order to style nested slotted elements (e.g. using React Router components), this method\n * rearranges the a tag and labels and adds inline styling expand/collapsed animations as external CSS classes are not\n * do not take affect.\n * @param menuExpanded boolean - true or false depending on side navigation state\n */\n private arrangeSlottedNavigationItem = (menuExpanded?: boolean) => {\n const navItems = this.el.querySelectorAll(\"ic-navigation-item\");\n navItems.forEach((navItem) => {\n const isNamedSlot = isSlotUsed(navItem, \"navigation-item\");\n const isUnnamedSlot =\n navItem.children[0] && !navItem.children[0].getAttribute(\"slot\");\n if (isNamedSlot || isUnnamedSlot) {\n let navItemSlot;\n if (isNamedSlot) {\n navItemSlot = navItem.querySelector(\"[slot='navigation-item']\");\n } else {\n navItemSlot = navItem.children[0];\n }\n const iconWrapper = document.createElement(\"div\");\n const icon = navItemSlot?.querySelector(\"svg\");\n const badge = navItemSlot?.querySelector(\"ic-badge\");\n const label = navItem.textContent?.trim();\n const icTypography = document.createElement(\"ic-typography\");\n icTypography.classList.add(\n \"ic-typography-label\",\n \"hydrated\",\n \"navigation-item-side-nav-slotted-text\"\n );\n\n iconWrapper.style.position = \"relative\";\n iconWrapper.style.height = \"var(--ic-space-lg)\";\n\n icon && iconWrapper.append(icon);\n badge && iconWrapper.append(badge);\n\n if (label) {\n icTypography.textContent = label;\n }\n\n if (navItemSlot) {\n navItemSlot.textContent = \"\";\n navItemSlot.append(iconWrapper);\n navItemSlot.append(icTypography);\n }\n\n if (this.collapsedIconLabels) {\n this.styleSlottedCollapsedIconLabels(!!menuExpanded, icTypography);\n } else {\n this.styleSlottedIconLabels(!!menuExpanded, icTypography);\n }\n }\n });\n };\n\n private styleSlottedCollapsedIconLabels = (\n menuExpanded: boolean,\n icTypography: HTMLIcTypographyElement\n ) => {\n if (menuExpanded) {\n icTypography.style.marginTop = \"0\";\n icTypography.style.whiteSpace = \"nowrap\";\n icTypography.style.overflow = \"hidden\";\n icTypography.style.textOverflow = \"ellipsis\";\n } else {\n icTypography.style.marginTop = \"10px\";\n icTypography.style.whiteSpace = \"nowrap\";\n icTypography.style.overflow = \"hidden\";\n icTypography.style.textOverflow = \"ellipsis\";\n }\n };\n\n private setExpandedButtonHeight = () => {\n const appStatusWrapper = this.el.shadowRoot?.querySelector(\n \"#side-navigation > .bottom-wrapper > .bottom-side-nav > .app-status-wrapper\"\n ) as HTMLDivElement;\n\n if (appStatusWrapper.offsetHeight !== 0) {\n this.el.style.setProperty(\n \"--sm-side-navigation-bottom-bar-height\",\n `${appStatusWrapper.offsetHeight}px`\n );\n }\n };\n\n private styleSlottedIconLabels = (\n menuExpanded: boolean,\n icTypography: HTMLSpanElement\n ) => {\n if (menuExpanded) {\n icTypography.style.opacity = \"1\";\n icTypography.style.visibility = \"visible\";\n if (!window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches) {\n icTypography.style.transition =\n \"visibility 0s, opacity var(--ic-easing-transition-slow)\";\n }\n } else {\n icTypography.style.opacity = \"0\";\n icTypography.style.visibility = \"hidden\";\n if (!window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches) {\n icTypography.style.transition =\n \"visibility 0s, opacity var(--ic-easing-transition-slow)\";\n }\n }\n };\n\n private transitionHandler = (type: string) => {\n const primaryNavigationWrapper = this.el.shadowRoot?.querySelector(\n \".primary-navigation\"\n );\n\n const secondaryNavigationWrapper = this.el.shadowRoot?.querySelector(\n \".bottom-wrapper > .secondary-navigation\"\n );\n\n const classToRemove =\n type === \"start\"\n ? this.COLLAPSED_ICON_LABELS_END\n : this.COLLAPSED_ICON_LABELS_START;\n\n const classToAdd =\n type === \"start\"\n ? this.COLLAPSED_ICON_LABELS_START\n : this.COLLAPSED_ICON_LABELS_END;\n\n if (primaryNavigationWrapper) {\n primaryNavigationWrapper.classList.remove(classToRemove);\n primaryNavigationWrapper.classList.add(classToAdd);\n }\n\n if (secondaryNavigationWrapper) {\n secondaryNavigationWrapper.classList.remove(classToRemove);\n secondaryNavigationWrapper.classList.add(classToAdd);\n }\n };\n\n private transitionEndHandler = () => {\n this.transitionHandler(\"end\");\n };\n\n private animateCollapsedIconLabels = () => {\n this.transitionHandler(\"start\");\n this.transitionEndHandler();\n\n this.el.addEventListener(\"transitionend\", this.transitionEndHandler);\n };\n\n private paddingIconWidth = (\n navItems: HTMLIcNavigationItemElement[]\n ): number => {\n const navItemLink =\n (navItems[0].shadowRoot &&\n (navItems[0].shadowRoot.querySelector(\"ic-tooltip a\") ||\n navItems[0].shadowRoot.querySelector(\"ic-tooltip div\"))) ||\n navItems[0].querySelector(\"a\") ||\n navItems[0].querySelector(\"div\");\n const navItemSVG = navItems[0].querySelector(\"svg\");\n\n if (navItemLink && navItemSVG) {\n const navStyles = {\n gap: window.getComputedStyle(navItemLink).gap,\n iconWidth: window.getComputedStyle(navItemSVG).width,\n paddingLeft: window.getComputedStyle(navItemLink).paddingLeft,\n };\n\n return Object.values(navStyles).reduce((prev, curr) => {\n return (prev += parseInt(curr));\n }, 0);\n }\n\n return 0;\n };\n\n private displayTooltipWithExpandedLongLabel = (menuExpanded: boolean) => {\n let timer;\n\n if (menuExpanded) {\n timer = setTimeout(() => {\n const sideNavWidth = this.el.clientWidth;\n\n const navigationItems: HTMLIcNavigationItemElement[] = Array.from(\n this.el.querySelectorAll(this.IC_NAVIGATION_ITEM)\n );\n\n const paddingIconDelta = navigationItems.length\n ? this.paddingIconWidth(navigationItems)\n : 0;\n\n navigationItems.forEach(\n (navigationItem: HTMLIcNavigationItemElement) => {\n const icTypographyScrollWidth =\n (\n navigationItem.shadowRoot &&\n navigationItem.shadowRoot.querySelector(\n \"ic-tooltip .link ic-typography.ic-typography-label\"\n )\n )?.scrollWidth ||\n navigationItem.querySelector(\"ic-typography.ic-typography-label\")\n ?.scrollWidth;\n\n if (\n icTypographyScrollWidth &&\n icTypographyScrollWidth > sideNavWidth - paddingIconDelta\n ) {\n navigationItem.setAttribute(\"display-navigation-tooltip\", \"true\");\n }\n }\n );\n }, this.ANIMATION_DURATION);\n } else {\n clearTimeout(timer);\n\n const navigationItems: HTMLIcNavigationItemElement[] = Array.from(\n this.el.querySelectorAll(this.IC_NAVIGATION_ITEM)\n );\n navigationItems.forEach((navigationItem: HTMLIcNavigationItemElement) => {\n navigationItem.setAttribute(\"display-navigation-tooltip\", \"false\");\n });\n }\n };\n\n private setMenuExpanded = (expanded: boolean): void => {\n this.menuExpanded = expanded;\n };\n\n private handleNavItemClicked = () => {\n if (\n !this.menuOpen &&\n this.deviceSize > DEVICE_SIZES.S &&\n this.menuExpanded\n ) {\n setTimeout(() => {\n this.toggleMenuExpanded(false);\n }, 0);\n }\n };\n\n /**\n * As the mobile top bar is fixed, a padding top is required\n * to push main content down the height of the mobile top bar\n * @param value - padding-top css value\n */\n private setParentPaddingTop = (value: string) => {\n this.el.parentElement?.style.setProperty(\"padding-top\", value);\n };\n\n private setParentPaddingLeft = (value: string) => {\n this.el.parentElement?.style.setProperty(\"padding-left\", value);\n };\n\n private renderAppTitle = (isAppNameSubtitleVariant: boolean) => {\n const displayShortAppTitle =\n this.deviceSize <= DEVICE_SIZES.S && !isEmptyString(this.shortAppTitle);\n return (\n <ic-typography\n variant={\n displayShortAppTitle || isAppNameSubtitleVariant\n ? \"subtitle-small\"\n : \"h3\"\n }\n aria-label={\n displayShortAppTitle\n ? `${this.appTitle} (${this.shortAppTitle})`\n : undefined\n }\n >\n <h1>{displayShortAppTitle ? this.shortAppTitle : this.appTitle}</h1>\n </ic-typography>\n );\n };\n\n private resizeObserverCallback = (currSize: number) => {\n this.deviceSize = currSize;\n\n const isSDeviceEnableTop =\n currSize === DEVICE_SIZES.S && !this.disableTopBarBehaviour;\n\n if (!this.disableAutoParentStyling) {\n const topBarHeight =\n this.el.shadowRoot?.querySelector(\".top-bar\")?.scrollHeight;\n this.setParentPaddingTop(isSDeviceEnableTop ? `${topBarHeight}px` : \"0\");\n if (isSDeviceEnableTop) this.setParentPaddingLeft(\"0\");\n if (isSDeviceEnableTop && this.inline) {\n this.el.parentElement?.style.setProperty(\n \"height\",\n `calc(100% - ${topBarHeight}px)`\n );\n } else if (!isSDeviceEnableTop) {\n this.el.parentElement?.style.setProperty(\"height\", \"100%\");\n }\n }\n\n const notSmallDisableTop =\n currSize > DEVICE_SIZES.S || this.disableTopBarBehaviour;\n\n if (!this.disableAutoParentStyling) {\n const paddingLeft = `calc(var(--ic-space-xxl) ${\n this.collapsedIconLabels ? \"* 2\" : \"+ var(--ic-space-xs)\"\n })`;\n\n if (currSize > DEVICE_SIZES.L) {\n this.setParentPaddingTop(\"0\");\n this.setParentPaddingLeft(\"0\");\n } else if (\n notSmallDisableTop &&\n currSize <= DEVICE_SIZES.M &&\n this.static\n ) {\n this.setParentPaddingLeft(paddingLeft);\n } else if (notSmallDisableTop && currSize <= DEVICE_SIZES.L) {\n this.setParentPaddingLeft(\n this.static && this.menuExpanded\n ? \"calc(var(--ic-space-xl) * 10)\"\n : paddingLeft\n );\n }\n }\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n const currSize = getCurrentDeviceSize();\n this.deviceSizeAppTitle = currSize;\n this.resizeObserverCallback(currSize);\n });\n\n this.resizeObserver.observe(document.body, { box: \"content-box\" });\n };\n\n private setCollapsedIconLabels = () => {\n const navigationItems: HTMLIcNavigationItemElement[] = Array.from(\n this.el.querySelectorAll(this.IC_NAVIGATION_ITEM)\n );\n navigationItems.forEach((navigationItem: HTMLIcNavigationItemElement) => {\n navigationItem.setAttribute(\"collapsed-icon-label\", \"true\");\n });\n };\n\n private styleSlottedCollapsedIconLabel = () => {\n const dynamicSlottedIcTypographyComps: HTMLIcTypographyElement[] =\n Array.from(\n this.el.querySelectorAll(\".navigation-item-side-nav-slotted-text\")\n );\n\n dynamicSlottedIcTypographyComps.forEach((icTypography) => {\n if (\n icTypography.parentElement?.parentElement?.classList.contains(\n \"navigation-item-side-nav-collapsed-with-label\"\n )\n ) {\n icTypography.style.whiteSpace = \"nowrap\";\n icTypography.style.overflow = \"hidden\";\n icTypography.style.textOverflow = \"ellipsis\";\n icTypography.style.marginTop = \"10px\";\n }\n });\n };\n\n private renderTopBar = ({\n isSDevice,\n foregroundColor,\n menuOpen,\n href,\n isAppNameSubtitleVariant,\n }: IcTopBar) => {\n const hasTitle = this.appTitle !== \"\" && isPropDefined(this.appTitle);\n\n const Component = isSlotUsed(this.el, \"app-title\") ? \"div\" : \"a\";\n\n const attrs = Component == \"a\" && {\n href: href,\n };\n\n return (\n <div\n class={{\n \"top-bar\": true,\n [this.foregroundColor]: true,\n }}\n >\n {isSDevice && (\n <nav\n aria-labelledby=\"menu-navigation-toggle-button-landmark\"\n aria-hidden=\"false\"\n >\n <ic-button\n aria-label=\"Open navigation menu\"\n class=\"menu-button\"\n id=\"menu-button\"\n variant=\"secondary\"\n size=\"small\"\n full-width=\"true\"\n theme={\n foregroundColor == \"default\" || foregroundColor == \"light\"\n ? \"light\"\n : \"dark\"\n }\n monochrome\n onClick={this.toggleMenu}\n ariaOwnsId=\"side-navigation\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\"\n ref={(el) => (this.menuButton = el)}\n >\n <span\n class=\"mobile-top-bar-menu-icon\"\n slot=\"left-icon\"\n innerHTML={menuOpen ? closeIcon : menuIcon}\n ></span>\n {menuOpen ? \"Close\" : \"Menu\"}\n </ic-button>\n <span\n id=\"menu-navigation-toggle-button-landmark\"\n class=\"navigation-landmark-title\"\n aria-hidden=\"true\"\n >\n Navigation menu toggle button\n </span>\n </nav>\n )}\n <div class=\"app-title-wrapper\">\n {(hasTitle || isSlotUsed(this.el, \"app-title\")) && (\n <Component {...attrs} class=\"title-link\">\n <div class=\"app-icon-container\" aria-hidden=\"true\">\n <slot name=\"app-icon\"></slot>\n </div>\n <div class=\"app-title-inner-wrapper\">\n {isSlotUsed(this.el, \"app-title\") ? (\n <slot name=\"app-title\"></slot>\n ) : (\n this.renderAppTitle(isAppNameSubtitleVariant)\n )}\n </div>\n </Component>\n )}\n </div>\n </div>\n );\n };\n\n render() {\n const {\n appTitle,\n menuOpen,\n foregroundColor,\n menuExpanded,\n href,\n status,\n version,\n collapsedIconLabels,\n inline,\n } = this;\n\n const isSDevice =\n !this.disableTopBarBehaviour && this.deviceSize === DEVICE_SIZES.S;\n const isSDeviceDisableTop =\n this.disableTopBarBehaviour && this.deviceSize === DEVICE_SIZES.S;\n const isMdDevice = this.deviceSize === DEVICE_SIZES.M;\n const isLgDevice = this.deviceSize >= DEVICE_SIZES.L;\n const isAppNameSubtitleVariant = this.deviceSizeAppTitle === DEVICE_SIZES.S;\n const displayExpandBtn =\n isMdDevice || isSDeviceDisableTop || (isLgDevice && !this.static);\n\n const topBarProps: IcTopBar = {\n isSDevice,\n foregroundColor,\n menuOpen,\n href: href!,\n isAppNameSubtitleVariant,\n appTitle: appTitle || \"\",\n };\n\n return (\n <Host\n class={{\n \"xs-menu-open\": menuOpen && isSDevice,\n \"xs-menu-close\": !menuOpen && isSDevice,\n \"sm-collapsed\": !isSDevice && !menuExpanded,\n \"sm-expanded\": !isSDevice && menuExpanded,\n \"side-display\":\n this.deviceSize > DEVICE_SIZES.S || !!this.disableTopBarBehaviour,\n [`ic-side-navigation-${IcBrandForegroundEnum.Dark}`]:\n foregroundColor === IcBrandForegroundEnum.Dark,\n [\"collapsed-labels\"]:\n !isSDevice && !menuExpanded && !!collapsedIconLabels,\n [\"ic-side-navigation-inline\"]: !!inline,\n }}\n >\n {isSDevice && this.renderTopBar({ ...topBarProps })}\n <div class=\"side-navigation\" id=\"side-navigation\">\n {!isSDevice && this.renderTopBar({ ...topBarProps })}\n <div class=\"side-navigation-inner\">\n {isSlotUsed(this.el, \"primary-navigation\") && (\n <nav\n class=\"primary-navigation\"\n aria-labelledby=\"primary-navigation-landmark\"\n >\n <span\n aria-hidden=\"true\"\n class=\"navigation-landmark-title\"\n id=\"primary-navigation-landmark\"\n >\n Primary\n </span>\n <ul class=\"navigation-list\">\n <slot name=\"primary-navigation\"></slot>\n </ul>\n </nav>\n )}\n </div>\n <div\n class={{\n [\"bottom-wrapper\"]: true,\n [\"classification-spacing\"]: hasClassificationBanner(),\n }}\n >\n {isSlotUsed(this.el, \"secondary-navigation\") && (\n <nav\n class=\"secondary-navigation\"\n aria-labelledby=\"secondary-navigation-landmark\"\n >\n <span\n aria-hidden=\"true\"\n class=\"navigation-landmark-title\"\n id=\"secondary-navigation-landmark\"\n >\n Secondary\n </span>\n <ul class=\"navigation-list\">\n <slot name=\"secondary-navigation\"></slot>\n </ul>\n </nav>\n )}\n <div class=\"bottom-side-nav\">\n {this.hasSecondaryNavigation && <ic-divider></ic-divider>}\n {displayExpandBtn && (\n <button\n class=\"menu-expand-button\"\n innerHTML={chevronIcon}\n onClick={() => this.toggleMenuExpanded(!this.menuExpanded)}\n aria-label={`${\n menuExpanded ? \"Collapse\" : \"Expand\"\n } side navigation`}\n ></button>\n )}\n <div class=\"app-status-wrapper\">\n {status && (\n <div\n class={{\n [\"app-status\"]: true,\n }}\n >\n <ic-typography\n aria-label=\"app tag\"\n variant=\"label-uppercase\"\n class=\"app-status-text\"\n >\n {status}\n </ic-typography>\n </div>\n )}\n {version && (\n <ic-typography\n variant=\"label\"\n class=\"app-version\"\n aria-label=\"app version\"\n >\n {version}\n </ic-typography>\n )}\n </div>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -45,11 +45,11 @@ const Skeleton = /*@__PURE__*/ proxyCustomElement(class Skeleton extends HTMLEle
45
45
  width: el.style.width || width || DEFAULT_WIDTHS[variant],
46
46
  }
47
47
  : undefined;
48
- return (h(Host, { key: '5224a4ba18bd361796ad59ece92368e59cbc9921', class: {
48
+ return (h(Host, { key: '73e213037cb181ecae2e3f9428a35e247d70a450', class: {
49
49
  skeleton: true,
50
50
  "ic-skeleton-circle": variant === "circle",
51
51
  [`ic-theme-${theme}`]: theme !== "inherit",
52
- }, style: style, "aria-disabled": "true" }, h("slot", { key: 'c8dea3ead035bc25aa9e888a05ab14e8ed746e7b' })));
52
+ }, style: style, "aria-disabled": "true" }, h("slot", { key: '25f2bc03cfcb793f1723c75ccbdb6994228255fa' })));
53
53
  }
54
54
  get el() { return this; }
55
55
  static get style() { return IcSkeletonStyle0; }
@@ -43,9 +43,9 @@ const SkipLink = /*@__PURE__*/ proxyCustomElement(class SkipLink extends HTMLEle
43
43
  }
44
44
  render() {
45
45
  const { fullWidth, inline, label, monochrome, target, theme, transparentBackground, } = this;
46
- return (h(Host, { key: '4924f9affadd29e8a5f58791d59fdee0a4b1a110', class: {
46
+ return (h(Host, { key: '477955b53d5ca2ee5774db9a08d4721a7540c100', class: {
47
47
  [`ic-theme-${theme}`]: theme !== "inherit",
48
- } }, h("ic-link", { key: '9619dc1c10b2fbdeac0088f85eba6de095abceb4', class: {
48
+ } }, h("ic-link", { key: '0583ea1158ce831a6eae9408a1a13f4b411f2d58', class: {
49
49
  "display-top": !inline,
50
50
  "full-width": !!fullWidth,
51
51
  "show-background": !transparentBackground,
@@ -41,12 +41,12 @@ const StatusTag = /*@__PURE__*/ proxyCustomElement(class StatusTag extends HTMLE
41
41
  }
42
42
  render() {
43
43
  const { label, status, variant, size, announced, theme, uppercase } = this;
44
- return (h(Host, { key: '323e76e08750e7459a431c762e74c5490276d5fe', class: { [`ic-theme-${theme}`]: theme !== "inherit" }, role: announced ? "status" : null, "aria-label": "Status" }, h("strong", { key: 'e71a302621590a1e5f5eb94a4e823f614e72d604', class: {
44
+ return (h(Host, { key: 'f725fbd83518b847fd27ef96dbf8255fe6ff2cf2', class: { [`ic-theme-${theme}`]: theme !== "inherit" }, role: announced ? "status" : null, "aria-label": "Status" }, h("strong", { key: '93abc20a9d3e062257a097a125fab957c47dcd13', class: {
45
45
  ["tag"]: true,
46
46
  [`${variant}-${status}`]: true,
47
47
  ["outlined"]: variant === "outlined",
48
48
  [`${size}`]: true,
49
- } }, h("ic-typography", { key: '842f8be2e88546b594f8af03d4cbab5bbeaaae03', variant: uppercase ? "label-uppercase" : "label", "apply-vertical-margins": false }, h("span", { key: 'ae96c68b504376e9366cd7f712b3136b68677d07' }, label)))));
49
+ } }, h("ic-typography", { key: '1e6ed9d25763ece6f07513edf293d22a760e4d03', variant: uppercase ? "label-uppercase" : "label", "apply-vertical-margins": false }, h("span", { key: '3c3d3fefe821e5017de6eba6492c0dcb1ec2cd5e' }, label)))));
50
50
  }
51
51
  static get style() { return IcStatusTagStyle0; }
52
52
  }, [1, "ic-status-tag", {
@@ -86,27 +86,27 @@ const Step = /*@__PURE__*/ proxyCustomElement(class Step extends HTMLElement {
86
86
  // STATUS ICON FOR COMPACT STEP
87
87
  let statusIcon;
88
88
  if (type === "completed" || compactStepStyling === "completed") {
89
- statusIcon = (h("span", { key: 'f00988dead6559d428d05f7cad2dc3874c083b81', class: "check-icon step-icon", "aria-hidden": "true", innerHTML: checkIcon }));
89
+ statusIcon = (h("span", { key: 'e40ecc76bd5a18ea9a8d7289b5a4ff379dbb2ab3', class: "check-icon step-icon", "aria-hidden": "true", innerHTML: checkIcon }));
90
90
  }
91
91
  else if (type === "disabled" || compactStepStyling === "disabled") {
92
- statusIcon = (h("span", { key: '3bdca1321df04ccd4cdc164b75d73d317df4bbd9', class: "warning-icon step-icon", "aria-hidden": "true", innerHTML: warningIcon }));
92
+ statusIcon = (h("span", { key: '1f6c966fa834689f62ae996ac818e86e9600ddb9', class: "warning-icon step-icon", "aria-hidden": "true", innerHTML: warningIcon }));
93
93
  }
94
94
  // COMPACT STEP COMPONENT
95
- const compactStep = (h("div", { key: '3f25b7b66363726dd2b5135f3429a344709866e9', class: {
95
+ const compactStep = (h("div", { key: 'fc3010558a6755ff90cbe0ac62309efa8f432ca6', class: {
96
96
  ["step"]: true,
97
97
  ["current"]: !!current,
98
98
  [`compact-step-${compactStepStyling}`]: !!compactStepStyling,
99
99
  ["disabled"]: type === "disabled" || compactStepStyling === "disabled",
100
- } }, h("ic-loading-indicator", { key: '75766eec3f516860b6b8be028bb6a0e4854300d8', class: {
100
+ } }, h("ic-loading-indicator", { key: 'dcd439c5149ad136fb6efba531bf9e334f6e348b', class: {
101
101
  "compact-step-progress-indicator": true,
102
102
  "not-required": type === "disabled" || compactStepStyling === "disabled",
103
- }, "aria-hidden": "true", size: "small", "inner-label": stepNum, progress: progress }), h("div", { key: '4140264d827f0120fcd7525dc4f1942370c70e30', class: "heading-area" }, isSlotUsed(this.el, "heading") ? (h("slot", { name: "heading" })) : (h("ic-typography", { variant: "h4", class: "heading" }, heading)), h("div", { key: '6c5b55bb5800586076bc7111905f2caf0e6236d3', class: "info-line" }, h("ic-typography", { key: 'aeb427b1db840cab7acb4558e3037e886b6ed148', variant: "caption", class: "step-num" }, `${stepNum} ${icI18n.of} ${lastStepNum}`, h("span", { key: '7ea25ca9263310b55e827f1f481c907a80143333', class: "visually-hidden" }, ` ${icI18n.steps}`)), (this.subheading ||
103
+ }, "aria-hidden": "true", size: "small", "inner-label": stepNum, progress: progress }), h("div", { key: 'c5f15c52ca3f3bda8df684e526affa64a18350ae', class: "heading-area" }, isSlotUsed(this.el, "heading") ? (h("slot", { name: "heading" })) : (h("ic-typography", { variant: "h4", class: "heading" }, heading)), h("div", { key: '5ca74136bc31b81ffae7d2273deb6b9e6960e878', class: "info-line" }, h("ic-typography", { key: 'db1c09c01ba31c419ccfcc5a13ddd44be37b837f', variant: "caption", class: "step-num" }, `${stepNum} ${icI18n.of} ${lastStepNum}`, h("span", { key: '525884b307ce52eefe02ecdac3a97a0cecfc7516', class: "visually-hidden" }, ` ${icI18n.steps}`)), (this.subheading ||
104
104
  type === "completed" ||
105
105
  type === "disabled" ||
106
106
  (this.variant === "compact" &&
107
107
  !!compactStepStyling &&
108
108
  compactStepStyling !== "active") ||
109
- !!status) && (h("div", { key: 'fa72ca837d1540891cffe3d8f8b36e7a1dac9fd7', class: "step-status" }, statusIcon !== undefined && statusIcon, (subheading || stepType) && (h("ic-typography", { key: '9b3ca7eb5950f1133f28dcd0b7ef003765c90493', variant: "caption" }, subheading !== null && isPropDefined(subheading)
109
+ !!status) && (h("div", { key: '1c7eb4db0ee9d1e855b750ec8aa579b0fb5d1e92', class: "step-status" }, statusIcon !== undefined && statusIcon, (subheading || stepType) && (h("ic-typography", { key: '4fa38808e69cdc8d536ab890faff63e46a47207e', variant: "caption" }, subheading !== null && isPropDefined(subheading)
110
110
  ? subheading
111
111
  : type === "disabled" ||
112
112
  (variant === "compact" &&
@@ -119,26 +119,26 @@ const Step = /*@__PURE__*/ proxyCustomElement(class Step extends HTMLElement {
119
119
  // ICON FOR DEFAULT STEP
120
120
  let icon;
121
121
  if (type !== "completed") {
122
- icon = (h("ic-typography", { key: '6fb92b96a4ba63a95148e64e1f2800d10b19c08a', variant: "subtitle-small" }, h("span", { key: '3a249db8c6dc0fb5d2f8f02c820845894888da46', class: "step-icon-inner", "aria-hidden": "true" }, this.stepNum)));
122
+ icon = (h("ic-typography", { key: '8da555d94b21f0e3fd6fa7c6f4d4cf2abbe32ac8', variant: "subtitle-small" }, h("span", { key: '4e7d49eafbdee617ae656db3338758fb34616b2e', class: "step-icon-inner", "aria-hidden": "true" }, this.stepNum)));
123
123
  }
124
124
  else {
125
- icon = (h("div", { key: 'f50a3bcd503d21345a156c7cede8385b38744325', class: "step-icon-inner", "aria-hidden": "true" }, h("span", { key: '505fc3d70507b3d7156c7d646308af137de76eac', class: "check-icon", innerHTML: checkIcon })));
125
+ icon = (h("div", { key: 'b952dfad90463f9ea6ad42b75adf22753e7fb3d3', class: "step-icon-inner", "aria-hidden": "true" }, h("span", { key: '1a1af244897e7a7cdb145b3d6b5e4c56844fcc3e', class: "check-icon", innerHTML: checkIcon })));
126
126
  }
127
127
  // STEP CONNECT FOR DEFAULT STEP
128
- const partialBar = type === "current" && (h("div", { key: 'fc7efb490b654258f332bfa8baefff01e23a16b1', class: "step-connect-inner" }));
129
- const finalStep = !lastStep && (h("div", { key: '948d526e77439d94ead70c9aeef4bd65f54ffe0e', class: {
128
+ const partialBar = type === "current" && (h("div", { key: '46f103bf5fb1b96cc0ecd320c3a7d2cd44cda524', class: "step-connect-inner" }));
129
+ const finalStep = !lastStep && (h("div", { key: '4bb2a4a4de790c3cdc56ce7ba099e8388a500bcb', class: {
130
130
  ["step-connect"]: true,
131
131
  ["aligned-full-width"]: !!(((_a = this.el.parentElement) === null || _a === void 0 ? void 0 : _a.classList.contains("ic-stepper-default")) &&
132
132
  !this.el.parentElement.classList.contains("ic-stepper-aligned-left")),
133
133
  } }, partialBar));
134
134
  // DEFAULT STEP COMPONENT
135
- const defaultStep = (h("div", { key: '13d1b412c26e150291a7695556856edffff72c0b', class: {
135
+ const defaultStep = (h("div", { key: '645b517e8c4c7b56b127389abb02059d40d59624', class: {
136
136
  ["step"]: true,
137
137
  [`${type}`]: true,
138
- } }, h("div", { key: '6b3605667f7ddfd1ebc7e3f36851c1fa81a543c4', class: "step-top" }, h("div", { key: '206915065c8674a4fb8b9a33854ea75a05270421', class: "step-icon" }, icon), finalStep), (hasHeading || subheading || status) && (h("div", { key: 'd05f3e280508507b3a5fbe05c53d63e867cc3500', class: "heading-area" }, isSlotUsed(this.el, "heading") ? (h("slot", { name: "heading" })) : (h("ic-typography", { variant: "subtitle-large", class: "heading" }, heading)), hasHeading && (subheading || status) && (h("ic-typography", { key: 'c8b0adb02467cf89be3577b44a0e70ca12136da9', variant: "caption", class: "subheading" }, subheading !== null && isPropDefined(subheading)
138
+ } }, h("div", { key: 'ff48045641a0fa2334b2c9749c7a8498b040ab01', class: "step-top" }, h("div", { key: '0d1dd0b9e73cce4c13f8558dd9dd64126d100790', class: "step-icon" }, icon), finalStep), (hasHeading || subheading || status) && (h("div", { key: 'c1b1d2870f1d99c326f52123a3a14d3b5a0c3e4e', class: "heading-area" }, isSlotUsed(this.el, "heading") ? (h("slot", { name: "heading" })) : (h("ic-typography", { variant: "subtitle-large", class: "heading" }, heading)), hasHeading && (subheading || status) && (h("ic-typography", { key: '1a59f2da6d32d0c51af7c96f9e68dd79673c5972', variant: "caption", class: "subheading" }, subheading !== null && isPropDefined(subheading)
139
139
  ? subheading
140
140
  : stepStatus))))));
141
- return (h(Host, { key: '41bf288a82e0167529d35661adda1ec1ad1dcb71', role: "listitem", "aria-label": `${icI18n.step} ${stepNum}${ariaLabel}`, "aria-current": (current || type === "current") && "step", class: {
141
+ return (h(Host, { key: '0092be886c35688e5ec3b12c68fbaee1a3762784', role: "listitem", "aria-label": `${icI18n.step} ${stepNum}${ariaLabel}`, "aria-current": (current || type === "current") && "step", class: {
142
142
  ["aligned-full-width"]: !!(((_b = this.el.parentElement) === null || _b === void 0 ? void 0 : _b.classList.contains("ic-stepper-default")) &&
143
143
  !this.el.parentElement.classList.contains("ic-stepper-aligned-left")),
144
144
  [`ic-step-${variant}`]: true,