@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
@@ -140,17 +140,17 @@ export class RadioOption {
140
140
  var _a, _b;
141
141
  const { additionalFieldDisplay, disabled, dynamicText, form, groupLabel, handleClick, handleKeyDown, hasAdditionalField, label, name, selected, value, theme, } = this;
142
142
  const id = `ic-radio-option-${isPropDefined(label) || value}-${groupLabel}`;
143
- return (h(Host, { key: '842d6ee4010fd07100af0f2a7a5b22b4f3d836fb', onClick: handleClick, onKeyDown: handleKeyDown, class: {
143
+ return (h(Host, { key: 'f331d1a40695e8a416793d16068423212af00e66', onClick: handleClick, onKeyDown: handleKeyDown, class: {
144
144
  ["ic-radio-option-disabled"]: !!disabled,
145
145
  [`ic-theme-${theme}`]: theme !== "inherit",
146
146
  ["ic-radio-option-small"]: ((_a = this.el.parentElement) === null || _a === void 0 ? void 0 : _a.tagName) === "IC-RADIO-GROUP" &&
147
147
  ((_b = this.el.parentElement) === null || _b === void 0 ? void 0 : _b.className.includes("ic-radio-group-small")),
148
- } }, h("div", { key: '24311226c7c0cbd0edc9c863a4a4dadcb58510dd', class: { "radio-option-container": true, disabled: !!disabled } }, h("div", { key: '368c7613d16ba7c0d41af81ec0921acabd11e0ac' }, h("input", { key: '9abba6cd1bc6837c28e4e3daff9d78030a855dc8', tabindex: selected ? "0" : "-1", type: "radio", name: name, id: id, value: value, disabled: disabled, checked: selected, ref: (el) => (this.radioElement = el), form: form }), h("span", { key: '99b68e349ed11e7c01768b2bc2b38ee20cc8c736', class: "checkmark" })), h("ic-typography", { key: '751eb546666f87c6bf64cb93ca1d77e8caf67d85', class: "radio-label", variant: "body" }, h("label", { key: 'd02d6a7935bf2b6c145662bc553e6ef44f3c4c6a', htmlFor: id }, label))), hasAdditionalField && (h("div", { key: '3e499a794defaac875630287978618da86056347', class: {
148
+ } }, h("div", { key: '86592506d3b6c19db7de4d91c690b61d7302844b', class: { "radio-option-container": true, disabled: !!disabled } }, h("div", { key: 'c624f2eff5ba26c324d1c2a279acf15d7bebccec' }, h("input", { key: 'cb1e2b8c500e88e53bc50b8cdedeef118d982520', tabindex: selected ? "0" : "-1", type: "radio", name: name, id: id, value: value, disabled: disabled, checked: selected, ref: (el) => (this.radioElement = el), form: form }), h("span", { key: 'e14cd39536e4ed6ef67ac81b01cd71550dc385ff', class: "checkmark" })), h("ic-typography", { key: '7960eb86755a9a1b6b8994ff8f44c21d1a91b749', class: "radio-label", variant: "body" }, h("label", { key: 'f0e2000797a2b126934946142e4aaf6af56043dd', htmlFor: id }, label))), hasAdditionalField && (h("div", { key: '7ddd66ccc66f3c71810f117a29c5ef58440448a6', class: {
149
149
  "dynamic-container": true,
150
150
  hidden: additionalFieldDisplay === "dynamic" && !selected,
151
- } }, additionalFieldDisplay === "dynamic" && (h("div", { key: '763ee0f91c7d4c045db9b8dc21851fa9d58db461', class: "branch-corner" })), h("div", { key: 'b44eb2a57738c64725b8abf508576e78ee81d58c' }, additionalFieldDisplay === "dynamic" && (h("ic-typography", { key: '7055f52337754005334d29d7faba936eee41db56', variant: "caption", role: "alert" }, h("p", { key: 'fb35ff368ed7b18196efe93be58105e0ab993c85', class: "dynamic-text" }, dynamicText))), h("div", { key: 'f52cb49783fcf0d721534e2ff948b4f3098b81fb', class: {
151
+ } }, additionalFieldDisplay === "dynamic" && (h("div", { key: 'fa5dfc1518bc4329026b05b1444a5d1582918427', class: "branch-corner" })), h("div", { key: 'e973cbf83b2cbf53291f7bed19e5f3894400ef09' }, additionalFieldDisplay === "dynamic" && (h("ic-typography", { key: 'cd7d4a7f00846e2d455b4c7be41e412a3598ba5a', variant: "caption", role: "alert" }, h("p", { key: 'ffa848e0f258a97a2bf642b21fbfc1d4b963ea38', class: "dynamic-text" }, dynamicText))), h("div", { key: 'c277092836c255bf5b7b47c2f06b2be4a2420ff3', class: {
152
152
  [`additional-field-wrapper-${additionalFieldDisplay}`]: true,
153
- } }, h("slot", { key: '36ddd67708c686617463703a0fb765a517809062', name: ADDITIONAL_FIELD })))))));
153
+ } }, h("slot", { key: '00ccd0a8653c1000766c112372d88861eea26686', name: ADDITIONAL_FIELD })))))));
154
154
  }
155
155
  static get is() { return "ic-radio-option"; }
156
156
  static get encapsulation() { return "scoped"; }
@@ -659,3 +659,9 @@ input[type="search"].truncate-value {
659
659
  width: 100%;
660
660
  }
661
661
  }
662
+
663
+ @media (prefers-reduced-motion: reduce) {
664
+ .clear-button {
665
+ transition: none;
666
+ }
667
+ }
@@ -528,39 +528,39 @@ export class SearchBar {
528
528
  const menuRendered = menuOpen && value.length >= charactersUntilSuggestion;
529
529
  const labelValue = getLabelFromValue(value, options, valueField, labelField);
530
530
  renderHiddenInput(this.el, value, name, disabledMode);
531
- return (h(Host, { key: '29effef90a1b301f50dd5e16cb00ed70eccab512', class: {
531
+ return (h(Host, { key: 'a157a6642fdbf3b08a6e3715ed4b3caf2a4a2cc3', class: {
532
532
  "ic-search-bar-search": true,
533
533
  "ic-search-bar-full-width": fullWidth,
534
534
  "ic-search-bar-disabled": disabled,
535
535
  "ic-search-bar-small": size === "small",
536
536
  [`ic-theme-${theme}`]: theme !== "inherit",
537
- }, onFocus: this.handleHostFocus, onBlur: this.handleHostBlur }, h("ic-input-container", { key: 'e896aa115879948ea3f8c2431e93791ff1d833db', readonly: readonly, disabled: disabledMode }, !hideLabel && (h("ic-input-label", { key: 'fd412bd32638354ff10f6653800921f2c15e8561', for: inputId, label: label, helperText: helperText, required: required, disabled: disabledMode && !readonly, readonly: readonly }, h("slot", { key: 'cb13c54cb67e19ca0a275d3af1b0a5199e4ce89c', name: "helper-text", slot: "helper-text" }))), h("ic-input-component-container", { key: '75b330a02def1ea7e43d353ffb1041bfe2d61b53', ref: (el) => (this.anchorEl = el), size: size, disabled: disabledMode, readonly: readonly, fullWidth: fullWidth }, h("input", { key: '1b4dc1a0b79fdaad28b52238557e930c9ec02c30', id: inputId, name: name, ref: (el) => (this.inputEl = el), value: options && !!labelValue ? labelValue : value, class: {
537
+ }, onFocus: this.handleHostFocus, onBlur: this.handleHostBlur }, h("ic-input-container", { key: '2505f6cacc6484e069a4550443c316c1c0969835', readonly: readonly, disabled: disabledMode }, !hideLabel && (h("ic-input-label", { key: 'aa4f12f89adfba413e723ef51d39d1c9d455d462', for: inputId, label: label, helperText: helperText, required: required, disabled: disabledMode && !readonly, readonly: readonly }, h("slot", { key: '166a66746961e4dd48d17f7896f63322c0398391', name: "helper-text", slot: "helper-text" }))), h("ic-input-component-container", { key: '9c64fed1a8540b98441ede3bcb50e7004e576206', ref: (el) => (this.anchorEl = el), size: size, disabled: disabledMode, readonly: readonly, fullWidth: fullWidth }, h("input", { key: '9d2de773bf2bf546dbc521766886f72910054d15', id: inputId, name: name, ref: (el) => (this.inputEl = el), value: options && !!labelValue ? labelValue : value, class: {
538
538
  "no-left-pad": readonly,
539
539
  readonly,
540
540
  "truncate-value": truncateValue,
541
- }, placeholder: placeholder, required: required, disabled: disabledMode, readonly: readonly, onInput: this.onInput, onBlur: this.onInputBlur, onFocus: this.onInputFocus, "aria-label": hideLabel ? label : undefined, "aria-activedescendant": ariaActiveDescendant, "aria-expanded": options.length > 0 && menuRendered ? `${menuOpen}` : undefined, "aria-owns": menuRendered ? menuId : undefined, "aria-describedby": describedById, "aria-controls": menuRendered ? menuId : undefined, "aria-haspopup": options.length > 0 ? "listbox" : undefined, "aria-autocomplete": hasSuggestedSearch ? "list" : undefined, role: options.length > 0 && menuRendered ? "combobox" : undefined, autocomplete: autocomplete, autocapitalize: autocapitalize, autoFocus: autofocus, spellcheck: spellcheck, inputmode: "search" }), h("div", { key: 'ac9075acbae4855280df3a7927a325ee20ac5d82', class: {
541
+ }, placeholder: placeholder, required: required, disabled: disabledMode, readonly: readonly, onInput: this.onInput, onBlur: this.onInputBlur, onFocus: this.onInputFocus, "aria-label": hideLabel ? label : undefined, "aria-activedescendant": ariaActiveDescendant, "aria-expanded": options.length > 0 && menuRendered ? `${menuOpen}` : undefined, "aria-owns": menuRendered ? menuId : undefined, "aria-describedby": describedById, "aria-controls": menuRendered ? menuId : undefined, "aria-haspopup": options.length > 0 ? "listbox" : undefined, "aria-autocomplete": hasSuggestedSearch ? "list" : undefined, role: options.length > 0 && menuRendered ? "combobox" : undefined, autocomplete: autocomplete, autocapitalize: autocapitalize, autoFocus: autofocus, spellcheck: spellcheck, inputmode: "search" }), h("div", { key: 'fce57d94b8c5d5f5cd10dbca9d77f83775ef2e14', class: {
542
542
  "clear-button-container": true,
543
543
  "clear-button-visible": !!value && !disabledMode && showClearButton,
544
- } }, h("ic-button", { key: 'd3b1a71ede9651edce18ef3c2e31d044518ea79a', id: "clear-button", class: {
544
+ } }, h("ic-button", { key: '9f4c9508a7809f8803683b98cba337949ed7b075', id: "clear-button", class: {
545
545
  "clear-button": true,
546
546
  "clear-button-unfocused": !clearButtonFocused,
547
- }, "aria-label": "Clear", innerHTML: clearIcon, onClick: this.handleClear, onMouseDown: this.handleMouseDown, size: size, onFocus: this.handleFocusClearButton, onBlur: this.handleClearBlur, onKeyDown: this.handleClear, type: "button", variant: "icon-tertiary", theme: clearButtonFocused ? "light" : "dark" }), h("div", { key: '4514b92f5f6ff11d6c4d296109eb768591490fce', class: "divider" })), h("div", { key: 'c1507f41ba857730f14a74f4fb0c24480fed6ba2', class: {
547
+ }, "aria-label": "Clear", innerHTML: clearIcon, onClick: this.handleClear, onMouseDown: this.handleMouseDown, size: size, onFocus: this.handleFocusClearButton, onBlur: this.handleClearBlur, onKeyDown: this.handleClear, type: "button", variant: "icon-tertiary", theme: clearButtonFocused ? "light" : "dark" }), h("div", { key: 'c8d3f7329e2c85efb0b15c69d25ef33066a078d7', class: "divider" })), h("div", { key: '9c2e7064fc15b9f95b79f42ebbbcfe0a86efa33a', class: {
548
548
  "search-submit-button-container": true,
549
549
  "search-submit-button-disabled": this.isSubmitDisabled(),
550
- } }, h("ic-button", { key: 'f48d2f2c3cec19bb4fb66be6024ec1d8b8f21e8d', id: "search-submit-button", "aria-label": "Search", ref: (el) => (this.searchSubmitButton = el), class: {
550
+ } }, h("ic-button", { key: '6581d4240e0c61a2d351469ce42f4e5b073d5359', id: "search-submit-button", "aria-label": "Search", ref: (el) => (this.searchSubmitButton = el), class: {
551
551
  "search-submit-button": true,
552
552
  "search-submit-button-small": size === "small",
553
553
  "search-submit-button-unfocused": !searchSubmitFocused,
554
554
  "search-submit-button-disabled": this.isSubmitDisabled(),
555
- }, disabled: this.isSubmitDisabled(), innerHTML: searchIcon, size: size, onClick: this.handleSubmitSearch, onMouseDown: this.handleMouseDown, onBlur: this.handleSubmitSearchBlur, onFocus: this.handleSubmitSearchFocus, onKeyDown: this.handleSubmitSearchKeyDown, type: searchButtonType, variant: "icon-tertiary", theme: searchSubmitFocused ? "light" : "dark" }))), h("div", { key: '408c068afb680a643752be6c04df27bf4ec010f0', class: {
555
+ }, disabled: this.isSubmitDisabled(), innerHTML: searchIcon, size: size, onClick: this.handleSubmitSearch, onMouseDown: this.handleMouseDown, onBlur: this.handleSubmitSearchBlur, onFocus: this.handleSubmitSearchFocus, onKeyDown: this.handleSubmitSearchKeyDown, type: searchButtonType, variant: "icon-tertiary", theme: searchSubmitFocused ? "light" : "dark" }))), h("div", { key: '6c5e68dfdd233ffba7640a960e59b68a6e59f3ad', class: {
556
556
  "menu-container": true,
557
557
  fullwidth: fullWidth,
558
- } }, menuRendered && this.anchorEl && this.inputEl && (h("ic-menu", { key: 'e9a150bc0ead1db84cc63723acc7bf21bb5ba5fc', class: {
558
+ } }, menuRendered && this.anchorEl && this.inputEl && (h("ic-menu", { key: '15acc1549f899dc228da307d4dd2a1550a8482d4', class: {
559
559
  "no-results": this.hadNoOptions() ||
560
560
  (filteredOptions.length === 1 &&
561
561
  (filteredOptions[0][labelField] === loadingLabel ||
562
562
  filteredOptions[0][labelField] === loadingErrorLabel)),
563
- }, activationType: "manual", anchorEl: this.anchorEl, autofocusOnSelected: false, searchMode: searchMode, inputEl: this.inputEl, inputLabel: label, ref: (el) => (this.menu = el), fullWidth: fullWidth, menuId: menuId, open: true, options: filteredOptions, onMenuOptionSelect: this.handleOptionSelect, onMenuStateChange: this.handleMenuChange, onMenuOptionId: this.handleMenuOptionHighlight, onRetryButtonClicked: this.handleRetry, parentEl: this.el, value: value, labelField: labelField, valueField: valueField, searchBar: true })))), h("div", { key: '41368646242aceb6f0e7bd8ba9ba6ff029cf8d7a', "aria-live": "polite", role: "status", class: "search-results-status" })));
563
+ }, activationType: "manual", anchorEl: this.anchorEl, autofocusOnSelected: false, searchMode: searchMode, inputEl: this.inputEl, inputLabel: label, ref: (el) => (this.menu = el), fullWidth: fullWidth, menuId: menuId, open: true, options: filteredOptions, onMenuOptionSelect: this.handleOptionSelect, onMenuStateChange: this.handleMenuChange, onMenuOptionId: this.handleMenuOptionHighlight, onRetryButtonClicked: this.handleRetry, parentEl: this.el, value: value, labelField: labelField, valueField: valueField, searchBar: true })))), h("div", { key: '15460d9ef215264449cecc99c1d4f01d1dbc8598', "aria-live": "polite", role: "status", class: "search-results-status" })));
564
564
  }
565
565
  static get is() { return "ic-search-bar"; }
566
566
  static get encapsulation() { return "shadow"; }
@@ -12,12 +12,12 @@ export class SectionContainer {
12
12
  }
13
13
  render() {
14
14
  const { aligned, fullHeight } = this;
15
- return (h(Host, { key: '343b4d46f49af4458ad961d31de6118927b5e3ec', class: {
15
+ return (h(Host, { key: '24dccdddcc53a53ea167ac1d563dcf58cf4c011f', class: {
16
16
  ["aligned-left"]: aligned === "left" || aligned === null,
17
17
  ["aligned-center"]: aligned === "center",
18
18
  ["aligned-full-width"]: aligned === "full-width",
19
19
  ["no-vertical-padding"]: !!fullHeight,
20
- } }, h("slot", { key: '96932a21be0e230d9d15e05f09b8da67f772dd2b' })));
20
+ } }, h("slot", { key: 'f1fff1aa3ea5c3e5917e73db0c7ee01bb1352d24' })));
21
21
  }
22
22
  static get is() { return "ic-section-container"; }
23
23
  static get encapsulation() { return "shadow"; }
@@ -741,3 +741,11 @@ select:not([disabled]) {
741
741
  fill: currentcolor;
742
742
  }
743
743
  }
744
+
745
+ @media (prefers-reduced-motion: reduce) {
746
+ .clear-button,
747
+ ic-input-validation.menu-open .status-icon,
748
+ ic-input-validation.menu-open .statustext {
749
+ transition: none;
750
+ }
751
+ }
@@ -794,18 +794,18 @@ export class Select {
794
794
  (searchable
795
795
  ? !!searchableSelectInputValue
796
796
  : !!currValue && !loading && showClearButton);
797
- return (h(Host, { key: 'f4a2c999048b3813c72f19cb9d12b179a1aa2829', class: {
797
+ return (h(Host, { key: '9c3955b4ba942dd962018252d50aad7bbb1f1744', class: {
798
798
  "ic-select-disabled": disabled,
799
799
  "ic-select-searchable": searchable,
800
800
  [`ic-select-${size}`]: size !== "medium",
801
801
  "ic-select-full-width": fullWidth,
802
802
  [`ic-theme-${theme}`]: theme !== "inherit",
803
- }, onBlur: this.onBlur }, h("ic-input-container", { key: '26ca71ed868b6154ae6d85b12176cbd2c245a2a1', readonly: readonly }, !hideLabel && (h("ic-input-label", { key: 'fbc267c35b7408673080578c7223713bbbc63487', for: inputId, label: label, helperText: helperText, required: required, disabled: disabled, readonly: readonly }, h("slot", { key: '6614423a784d3c8afb82685721ac76044a541b2c', name: "helper-text", slot: "helper-text" }))), h("ic-input-component-container", { key: '22f3497287a6dffa909d12ab7cf56dcc350580ff', ref: (el) => (this.anchorEl = el), class: { "menu-open": open }, size: size, fullWidth: fullWidth, disabled: disabled, readonly: readonly, validationStatus: validationStatus }, isSlotUsed(this.el, "icon") &&
803
+ }, onBlur: this.onBlur }, h("ic-input-container", { key: 'c67e465c4a39b81ef2f9f861a02a9d9d89e5c3de', readonly: readonly }, !hideLabel && (h("ic-input-label", { key: '9554f5a63ea338139b1cf1be426ef97d829694a5', for: inputId, label: label, helperText: helperText, required: required, disabled: disabled, readonly: readonly }, h("slot", { key: '3749b881b972bf1143f67587e2d70bce773eb597', name: "helper-text", slot: "helper-text" }))), h("ic-input-component-container", { key: '61c1d6fc5c5bd6535e502e9e15ca013612ab009b', ref: (el) => (this.anchorEl = el), class: { "menu-open": open }, size: size, fullWidth: fullWidth, disabled: disabled, readonly: readonly, validationStatus: validationStatus }, isSlotUsed(this.el, "icon") &&
804
804
  !disabled &&
805
- (!readonly || !!value) && (h("span", { key: '2103e465e79ce43a400ab208cd3fa41f8d9a4897', slot: "left-icon", class: {
805
+ (!readonly || !!value) && (h("span", { key: 'f81e4bd0e7548bfe8206928808475083b2b641ee', slot: "left-icon", class: {
806
806
  readonly,
807
807
  "has-value": !!value,
808
- } }, h("slot", { key: '626f074a90189f115c112e179ffd5c1e28ac17c6', name: "icon" }))), readonly ? (h("ic-typography", null, h("p", null, valueLabelString))) : isMobileOrTablet() && !multiple ? (h("select", Object.assign({ ref: (el) => (this.nativeSelectElement = el), disabled: disabled, onChange: this.handleNativeSelectChange, required: required, id: inputId, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.handleNativeSelectKeyDown, form: form }, inheritedAttributes), h("option", { value: "", selected: true, disabled: !showClearButton }, placeholder), options.map((option) => option.children ? (h("optgroup", { label: option.label }, option.children.map((child) => this.renderNativeOption(child)))) : (this.renderNativeOption(option))))) : searchable ? (h("div", { class: "searchable-select-container" }, h("input", { class: {
808
+ } }, h("slot", { key: '792566ca482c7ebca0804ac0a18a5beeb3e6f15a', name: "icon" }))), readonly ? (h("ic-typography", null, h("p", null, valueLabelString))) : isMobileOrTablet() && !multiple ? (h("select", Object.assign({ ref: (el) => (this.nativeSelectElement = el), disabled: disabled, onChange: this.handleNativeSelectChange, required: required, id: inputId, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.handleNativeSelectKeyDown, form: form }, inheritedAttributes), h("option", { value: "", selected: true, disabled: !showClearButton }, placeholder), options.map((option) => option.children ? (h("optgroup", { label: option.label }, option.children.map((child) => this.renderNativeOption(child)))) : (this.renderNativeOption(option))))) : searchable ? (h("div", { class: "searchable-select-container" }, h("input", { class: {
809
809
  "value-text": true,
810
810
  "select-input": true,
811
811
  "with-clear-button": !!searchableSelectInputValue,
@@ -826,7 +826,7 @@ export class Select {
826
826
  } }, valueLabelString || placeholder), h("div", { class: "select-input-end" }, isClearable && h("div", { class: "divider" }), h("span", { class: {
827
827
  "expand-icon": true,
828
828
  "expand-icon-open": open,
829
- }, innerHTML: Expand, "aria-hidden": "true" }))), isClearable && (h("ic-button", { id: "clear-button", "aria-label": "Clear selection", class: "clear-button", innerHTML: Clear, onClick: this.handleClear, onFocus: this.handleClearButtonFocus, onBlur: this.handleClearButtonBlur, size: size, variant: "icon-tertiary", theme: clearButtonFocused ? "light" : "dark" }))))), (!isMobileOrTablet() || multiple) && (h("ic-menu", { key: 'e309813f2a75cf0eb862f6c1b06cf34a81ded8f1', class: {
829
+ }, innerHTML: Expand, "aria-hidden": "true" }))), isClearable && (h("ic-button", { id: "clear-button", "aria-label": "Clear selection", class: "clear-button", innerHTML: Clear, onClick: this.handleClear, onFocus: this.handleClearButtonFocus, onBlur: this.handleClearButtonBlur, size: size, variant: "icon-tertiary", theme: clearButtonFocused ? "light" : "dark" }))))), (!isMobileOrTablet() || multiple) && (h("ic-menu", { key: 'bb2e95961d8685349e46edf1c93a2dce9792657b', class: {
830
830
  "no-results": loading ||
831
831
  hasTimedOut ||
832
832
  (searchable &&
@@ -835,7 +835,7 @@ export class Select {
835
835
  ((_d = (_c = this.uniqueOptions) === null || _c === void 0 ? void 0 : _c[0]) === null || _d === void 0 ? void 0 : _d.label) === emptyOptionListText),
836
836
  }, ref: (el) => (this.menu = el), inputEl: searchable
837
837
  ? this.searchableSelectElement
838
- : this.customSelectElement, inputLabel: label, anchorEl: this.anchorEl, size: size, menuId: menuId, open: open, options: searchable ? filteredOptions : uniqueOptions, value: multiple ? currValue : currValue, fullWidth: fullWidth, selectOnEnter: selectOnEnter, onMenuStateChange: this.handleMenuChange, onMenuOptionSelect: this.handleCustomSelectChange, onMenuOptionSelectAll: this.handleSelectAllChange, onMenuKeyPress: this.handleMenuKeyPress, onUngroupedOptionsSet: this.setUngroupedOptions, onRetryButtonClicked: this.handleRetry, parentEl: this.el, onTimeoutBlur: this.onTimeoutBlur, activationType: searchable || multiple || selectOnEnter ? "manual" : "automatic", closeOnSelect: !multiple, multiSelect: multiple ? true : false, searchableSelect: searchable ? true : false })), multiple && (h("div", { key: '4d029c5c9543fe25438a856df7a6dcde941ed648', "aria-live": "polite", role: "status", class: "multi-select-selected-count" })), h("ic-input-validation", { key: 'f709f7940485a6fa673a1fe7cb14a636e53fa151', class: {
838
+ : this.customSelectElement, inputLabel: label, anchorEl: this.anchorEl, size: size, menuId: menuId, open: open, options: searchable ? filteredOptions : uniqueOptions, value: multiple ? currValue : currValue, fullWidth: fullWidth, selectOnEnter: selectOnEnter, onMenuStateChange: this.handleMenuChange, onMenuOptionSelect: this.handleCustomSelectChange, onMenuOptionSelectAll: this.handleSelectAllChange, onMenuKeyPress: this.handleMenuKeyPress, onUngroupedOptionsSet: this.setUngroupedOptions, onRetryButtonClicked: this.handleRetry, parentEl: this.el, onTimeoutBlur: this.onTimeoutBlur, activationType: searchable || multiple || selectOnEnter ? "manual" : "automatic", closeOnSelect: !multiple, multiSelect: multiple ? true : false, searchableSelect: searchable ? true : false })), multiple && (h("div", { key: '5d6db7b55942499db04a942c7980ad09e5db65f8', "aria-live": "polite", role: "status", class: "multi-select-selected-count" })), h("ic-input-validation", { key: '5133bf75be8a86fe3134491d659b934dac271e57', class: {
839
839
  "menu-open": open,
840
840
  }, ariaLiveMode: validationAriaLive, status: showValidation ? validationStatus : "", message: showValidation ? validationText : "", for: inputId }))));
841
841
  }
@@ -208,27 +208,6 @@ slot[name="app-title"]::slotted(a) {
208
208
  font: var(--ic-font-subtitle-small);
209
209
  }
210
210
 
211
- @media screen and (min-width: 577px) {
212
- :host(.sm-collapsed) slot[name="app-title"]::slotted(ic-typography),
213
- :host(.sm-collapsed) slot[name="app-title"]::slotted(a) {
214
- position: absolute;
215
- left: -9999px;
216
- opacity: 0;
217
- transition: opacity var(--ic-easing-transition-slow);
218
- }
219
-
220
- :host(.sm-collapsed) slot[name="app-title"]:dir(rtl)::slotted(ic-typography),
221
- :host(.sm-collapsed) slot[name="app-title"]:dir(rtl)::slotted(a) {
222
- right: -9999px;
223
- }
224
-
225
- :host(.sm-expanded) slot[name="app-title"]::slotted(a) {
226
- font: var(--ic-font-h3) !important;
227
- font-weight: var(--ic-font-weight-semibold) !important;
228
- margin-left: var(--ic-space-xs) !important;
229
- }
230
- }
231
-
232
211
  :host .title-link:hover {
233
212
  border-radius: var(--ic-border-radius);
234
213
  background-color: var(--ic-side-navigation-hover);
@@ -681,6 +660,34 @@ slot[name="app-title"]::slotted(a) {
681
660
  }
682
661
  }
683
662
 
663
+ @media screen and (min-width: 577px) {
664
+ :host(.sm-collapsed) slot[name="app-title"]::slotted(ic-typography),
665
+ :host(.sm-collapsed) slot[name="app-title"]::slotted(a) {
666
+ position: absolute;
667
+ left: -9999px;
668
+ opacity: 0;
669
+ transition: opacity var(--ic-easing-transition-slow);
670
+ }
671
+
672
+ @media (prefers-reduced-motion: reduce) {
673
+ :host(.sm-collapsed) slot[name="app-title"]::slotted(ic-typography),
674
+ :host(.sm-collapsed) slot[name="app-title"]::slotted(a) {
675
+ transition: none;
676
+ }
677
+ }
678
+
679
+ :host(.sm-collapsed) slot[name="app-title"]:dir(rtl)::slotted(ic-typography),
680
+ :host(.sm-collapsed) slot[name="app-title"]:dir(rtl)::slotted(a) {
681
+ right: -9999px;
682
+ }
683
+
684
+ :host(.sm-expanded) slot[name="app-title"]::slotted(a) {
685
+ font: var(--ic-font-h3) !important;
686
+ font-weight: var(--ic-font-weight-semibold) !important;
687
+ margin-left: var(--ic-space-xs) !important;
688
+ }
689
+ }
690
+
684
691
  @media screen and (min-width: 993px) {
685
692
  :host(.side-display) {
686
693
  position: sticky;
@@ -708,3 +715,21 @@ slot[name="app-title"]::slotted(a) {
708
715
  fill: currentcolor;
709
716
  }
710
717
  }
718
+
719
+ @media (prefers-reduced-motion: reduce) {
720
+ :host(.xs-menu-open) .side-navigation,
721
+ :host(.xs-menu-close) .side-navigation,
722
+ :host(.anchor-right.xs-menu-close) .side-navigation,
723
+ :host .title-link,
724
+ :host(.sm-collapsed.side-display),
725
+ :host(.sm-expanded.side-display),
726
+ :host(.sm-collapsed.side-display) .app-title-wrapper ic-typography,
727
+ :host(.sm-collapsed.side-display) :is(.side-navigation, .top-bar),
728
+ :host(.sm-expanded.side-display) :is(.side-navigation, .top-bar),
729
+ :host(.side-display) .bottom-side-nav .menu-expand-button,
730
+ :host(.sm-collapsed.side-display) .bottom-side-nav .menu-expand-button svg,
731
+ :host(.sm-expanded.side-display) .bottom-side-nav .menu-expand-button svg,
732
+ :host(.side-display) .collapsed-icon-labels-end {
733
+ transition: none;
734
+ }
735
+ }
@@ -12,7 +12,9 @@ import { IcBrandForegroundEnum, } from "../../utils/types";
12
12
  */
13
13
  export class SideNavigation {
14
14
  constructor() {
15
- this.ANIMATION_DURATION = parseInt(getCssProperty("--ic-transition-duration-slow")) || 0;
15
+ this.ANIMATION_DURATION = window.matchMedia("(prefers-reduced-motion: reduce)").matches
16
+ ? 0
17
+ : parseInt(getCssProperty("--ic-transition-duration-slow")) || 0;
16
18
  this.IC_NAVIGATION_ITEM = "ic-navigation-item";
17
19
  this.resizeObserver = null;
18
20
  this.COLLAPSED_ICON_LABELS_END = "collapsed-icon-labels-end";
@@ -203,14 +205,18 @@ export class SideNavigation {
203
205
  if (menuExpanded) {
204
206
  icTypography.style.opacity = "1";
205
207
  icTypography.style.visibility = "visible";
206
- icTypography.style.transition =
207
- "visibility 0s, opacity var(--ic-easing-transition-slow)";
208
+ if (!window.matchMedia("(prefers-reduced-motion: reduce)").matches) {
209
+ icTypography.style.transition =
210
+ "visibility 0s, opacity var(--ic-easing-transition-slow)";
211
+ }
208
212
  }
209
213
  else {
210
214
  icTypography.style.opacity = "0";
211
215
  icTypography.style.visibility = "hidden";
212
- icTypography.style.transition =
213
- "visibility 0s, opacity var(--ic-easing-transition-slow)";
216
+ if (!window.matchMedia("(prefers-reduced-motion: reduce)").matches) {
217
+ icTypography.style.transition =
218
+ "visibility 0s, opacity var(--ic-easing-transition-slow)";
219
+ }
214
220
  }
215
221
  };
216
222
  this.transitionHandler = (type) => {
@@ -451,7 +457,7 @@ export class SideNavigation {
451
457
  isAppNameSubtitleVariant,
452
458
  appTitle: appTitle || "",
453
459
  };
454
- return (h(Host, { key: 'dee98e8859e6935f7ce2775e95d32be82041ca0c', class: {
460
+ return (h(Host, { key: '048b8b8cc51848714f6f0367995c271b39b1a9a2', class: {
455
461
  "xs-menu-open": menuOpen && isSDevice,
456
462
  "xs-menu-close": !menuOpen && isSDevice,
457
463
  "sm-collapsed": !isSDevice && !menuExpanded,
@@ -460,12 +466,12 @@ export class SideNavigation {
460
466
  [`ic-side-navigation-${IcBrandForegroundEnum.Dark}`]: foregroundColor === IcBrandForegroundEnum.Dark,
461
467
  ["collapsed-labels"]: !isSDevice && !menuExpanded && !!collapsedIconLabels,
462
468
  ["ic-side-navigation-inline"]: !!inline,
463
- } }, 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: {
469
+ } }, 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: {
464
470
  ["bottom-wrapper"]: true,
465
471
  ["classification-spacing"]: hasClassificationBanner(),
466
- } }, 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: {
472
+ } }, 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: {
467
473
  ["app-status"]: true,
468
- } }, 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))))))));
474
+ } }, 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))))))));
469
475
  }
470
476
  static get is() { return "ic-side-navigation"; }
471
477
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"ic-side-navigation.js","sourceRoot":"","sources":["../../../src/components/ic-side-navigation/ic-side-navigation.tsx"],"names":[],"mappings":"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","sourcesContent":["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"]}
1
+ {"version":3,"file":"ic-side-navigation.js","sourceRoot":"","sources":["../../../src/components/ic-side-navigation/ic-side-navigation.tsx"],"names":[],"mappings":"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","sourcesContent":["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"]}
@@ -38,11 +38,11 @@ export class Skeleton {
38
38
  width: el.style.width || width || DEFAULT_WIDTHS[variant],
39
39
  }
40
40
  : undefined;
41
- return (h(Host, { key: '5224a4ba18bd361796ad59ece92368e59cbc9921', class: {
41
+ return (h(Host, { key: '73e213037cb181ecae2e3f9428a35e247d70a450', class: {
42
42
  skeleton: true,
43
43
  "ic-skeleton-circle": variant === "circle",
44
44
  [`ic-theme-${theme}`]: theme !== "inherit",
45
- }, style: style, "aria-disabled": "true" }, h("slot", { key: 'c8dea3ead035bc25aa9e888a05ab14e8ed746e7b' })));
45
+ }, style: style, "aria-disabled": "true" }, h("slot", { key: '25f2bc03cfcb793f1723c75ccbdb6994228255fa' })));
46
46
  }
47
47
  static get is() { return "ic-skeleton"; }
48
48
  static get encapsulation() { return "shadow"; }