@ukic/web-components 3.0.0-alpha.12 → 3.0.0-alpha.14

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 (983) hide show
  1. package/dist/cjs/app-globals-3a1e7e63.js +7 -0
  2. package/dist/cjs/app-globals-3a1e7e63.js.map +1 -0
  3. package/dist/cjs/core.cjs.js +13 -11
  4. package/dist/cjs/core.cjs.js.map +1 -1
  5. package/dist/cjs/{helpers-eca4c27e.js → helpers-08a9ec1c.js} +31 -26
  6. package/dist/cjs/helpers-08a9ec1c.js.map +1 -0
  7. package/dist/cjs/ic-accordion-group.cjs.entry.js +31 -14
  8. package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ic-accordion.cjs.entry.js +65 -42
  10. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ic-alert.cjs.entry.js +37 -16
  12. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  13. package/dist/cjs/ic-back-to-top.cjs.entry.js +27 -15
  14. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ic-badge.cjs.entry.js +41 -22
  16. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +31 -16
  18. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ic-breadcrumb.cjs.entry.js +35 -21
  20. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-button_3.cjs.entry.js +304 -144
  22. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  23. package/dist/cjs/ic-card-vertical.cjs.entry.js +53 -32
  24. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-checkbox-group.cjs.entry.js +32 -9
  26. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ic-checkbox.cjs.entry.js +48 -29
  28. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ic-chip.cjs.entry.js +44 -23
  30. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  31. package/dist/cjs/ic-classification-banner.cjs.entry.js +20 -4
  32. package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
  33. package/dist/cjs/ic-data-list.cjs.entry.js +11 -5
  34. package/dist/cjs/ic-data-list.cjs.entry.js.map +1 -1
  35. package/dist/cjs/ic-data-row.cjs.entry.js +28 -18
  36. package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
  37. package/dist/cjs/ic-dialog.cjs.entry.js +141 -98
  38. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  39. package/dist/cjs/ic-divider.cjs.entry.js +35 -15
  40. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  41. package/dist/cjs/ic-empty-state.cjs.entry.js +15 -9
  42. package/dist/cjs/ic-empty-state.cjs.entry.js.map +1 -1
  43. package/dist/cjs/ic-footer-link-group.cjs.entry.js +8 -8
  44. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  45. package/dist/cjs/ic-footer-link.cjs.entry.js +9 -10
  46. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  47. package/dist/cjs/ic-footer.cjs.entry.js +32 -19
  48. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  49. package/dist/cjs/ic-hero.cjs.entry.js +29 -17
  50. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  51. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +32 -20
  52. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +126 -68
  54. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  55. package/dist/cjs/ic-input-label_2.cjs.entry.js +45 -17
  56. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  57. package/dist/cjs/ic-link.cjs.entry.js +28 -21
  58. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  59. package/dist/cjs/ic-menu-group.cjs.entry.js +5 -5
  60. package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
  61. package/dist/cjs/ic-menu-item.cjs.entry.js +21 -19
  62. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  63. package/dist/cjs/ic-navigation-button.cjs.entry.js +25 -19
  64. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  65. package/dist/cjs/ic-navigation-group.cjs.entry.js +48 -27
  66. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  67. package/dist/cjs/ic-navigation-item.cjs.entry.js +69 -48
  68. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  69. package/dist/cjs/ic-navigation-menu.cjs.entry.js +54 -32
  70. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  71. package/dist/cjs/ic-page-header.cjs.entry.js +45 -25
  72. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  73. package/dist/cjs/ic-pagination-item.cjs.entry.js +27 -14
  74. package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -1
  75. package/dist/cjs/ic-pagination.cjs.entry.js +60 -27
  76. package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -1
  77. package/dist/cjs/ic-popover-menu.cjs.entry.js +58 -42
  78. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  79. package/dist/cjs/ic-radio-group.cjs.entry.js +53 -28
  80. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  81. package/dist/cjs/ic-radio-option.cjs.entry.js +35 -23
  82. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  83. package/dist/cjs/ic-search-bar.cjs.entry.js +153 -63
  84. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  85. package/dist/cjs/ic-section-container.cjs.entry.js +12 -5
  86. package/dist/cjs/ic-section-container.cjs.entry.js.map +1 -1
  87. package/dist/cjs/ic-select.cjs.entry.js +234 -137
  88. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  89. package/dist/cjs/ic-side-navigation.cjs.entry.js +107 -71
  90. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  91. package/dist/cjs/ic-skeleton.cjs.entry.js +11 -4
  92. package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
  93. package/dist/cjs/ic-skip-link.cjs.entry.js +55 -0
  94. package/dist/cjs/ic-skip-link.cjs.entry.js.map +1 -0
  95. package/dist/cjs/ic-status-tag.cjs.entry.js +26 -7
  96. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  97. package/dist/cjs/ic-step.cjs.entry.js +35 -33
  98. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  99. package/dist/cjs/ic-stepper.cjs.entry.js +50 -35
  100. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  101. package/dist/cjs/ic-switch.cjs.entry.js +50 -22
  102. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  103. package/dist/cjs/ic-tab-context.cjs.entry.js +44 -24
  104. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  105. package/dist/cjs/ic-tab-group.cjs.entry.js +14 -9
  106. package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
  107. package/dist/cjs/ic-tab-panel.cjs.entry.js +12 -7
  108. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  109. package/dist/cjs/ic-tab.cjs.entry.js +21 -15
  110. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  111. package/dist/cjs/ic-text-field.cjs.entry.js +175 -69
  112. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  113. package/dist/cjs/ic-theme.cjs.entry.js +13 -7
  114. package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
  115. package/dist/cjs/ic-toast-region.cjs.entry.js +2 -3
  116. package/dist/cjs/ic-toast-region.cjs.entry.js.map +1 -1
  117. package/dist/cjs/ic-toast.cjs.entry.js +29 -21
  118. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  119. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +61 -29
  120. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  121. package/dist/cjs/ic-toggle-button.cjs.entry.js +81 -48
  122. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  123. package/dist/cjs/ic-top-navigation.cjs.entry.js +60 -31
  124. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  125. package/dist/cjs/ic-typography.cjs.entry.js +53 -27
  126. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  127. package/dist/cjs/index-d337cd8a.js +2611 -0
  128. package/dist/cjs/index-d337cd8a.js.map +1 -0
  129. package/dist/cjs/loader.cjs.js +5 -3
  130. package/dist/cjs/loader.cjs.js.map +1 -1
  131. package/dist/collection/collection-manifest.json +5 -4
  132. package/dist/collection/components/ic-accordion/ic-accordion.js +80 -46
  133. package/dist/collection/components/ic-accordion/ic-accordion.js.map +1 -1
  134. package/dist/collection/components/ic-accordion-group/ic-accordion-group.js +49 -21
  135. package/dist/collection/components/ic-accordion-group/ic-accordion-group.js.map +1 -1
  136. package/dist/collection/components/ic-alert/ic-alert.js +58 -22
  137. package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
  138. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +35 -16
  139. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js.map +1 -1
  140. package/dist/collection/components/ic-badge/ic-badge.js +69 -32
  141. package/dist/collection/components/ic-badge/ic-badge.js.map +1 -1
  142. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +49 -24
  143. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js.map +1 -1
  144. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js +41 -19
  145. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js.map +1 -1
  146. package/dist/collection/components/ic-button/ic-button.css +6 -8
  147. package/dist/collection/components/ic-button/ic-button.js +269 -98
  148. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  149. package/dist/collection/components/ic-button/ic-button.stories.js +179 -0
  150. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js +88 -42
  151. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js.map +1 -1
  152. package/dist/collection/components/ic-checkbox/ic-checkbox.js +91 -45
  153. package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
  154. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +62 -20
  155. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  156. package/dist/collection/components/ic-chip/ic-chip.js +67 -30
  157. package/dist/collection/components/ic-chip/ic-chip.js.map +1 -1
  158. package/dist/collection/components/ic-classification-banner/ic-classification-banner.js +32 -7
  159. package/dist/collection/components/ic-classification-banner/ic-classification-banner.js.map +1 -1
  160. package/dist/collection/components/ic-data-list/ic-data-list.js +18 -7
  161. package/dist/collection/components/ic-data-list/ic-data-list.js.map +1 -1
  162. package/dist/collection/components/ic-data-row/ic-data-row.js +38 -21
  163. package/dist/collection/components/ic-data-row/ic-data-row.js.map +1 -1
  164. package/dist/collection/components/ic-dialog/ic-dialog.js +176 -110
  165. package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -1
  166. package/dist/collection/components/ic-dialog/ic-dialog.stories.js +100 -49
  167. package/dist/collection/components/ic-divider/ic-divider.js +55 -22
  168. package/dist/collection/components/ic-divider/ic-divider.js.map +1 -1
  169. package/dist/collection/components/ic-divider/ic-divider.stories.js +2 -2
  170. package/dist/collection/components/ic-empty-state/ic-empty-state.js +32 -13
  171. package/dist/collection/components/ic-empty-state/ic-empty-state.js.map +1 -1
  172. package/dist/collection/components/ic-footer/ic-footer.js +49 -25
  173. package/dist/collection/components/ic-footer/ic-footer.js.map +1 -1
  174. package/dist/collection/components/ic-footer-link/ic-footer-link.js +24 -15
  175. package/dist/collection/components/ic-footer-link/ic-footer-link.js.map +1 -1
  176. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js +6 -5
  177. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js.map +1 -1
  178. package/dist/collection/components/ic-hero/ic-hero.css +1 -1
  179. package/dist/collection/components/ic-hero/ic-hero.js +54 -25
  180. package/dist/collection/components/ic-hero/ic-hero.js.map +1 -1
  181. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +40 -21
  182. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js.map +1 -1
  183. package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +9 -0
  184. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +55 -20
  185. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js.map +1 -1
  186. package/dist/collection/components/ic-input-container/ic-input-container.js +16 -6
  187. package/dist/collection/components/ic-input-container/ic-input-container.js.map +1 -1
  188. package/dist/collection/components/ic-input-label/ic-input-label.js +48 -11
  189. package/dist/collection/components/ic-input-label/ic-input-label.js.map +1 -1
  190. package/dist/collection/components/ic-input-validation/ic-input-validation.js +31 -14
  191. package/dist/collection/components/ic-input-validation/ic-input-validation.js.map +1 -1
  192. package/dist/collection/components/ic-link/ic-link.js +49 -28
  193. package/dist/collection/components/ic-link/ic-link.js.map +1 -1
  194. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +124 -66
  195. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js.map +1 -1
  196. package/dist/collection/components/ic-menu/ic-menu.js +136 -74
  197. package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
  198. package/dist/collection/components/ic-menu/ic-menu.types.js.map +1 -1
  199. package/dist/collection/components/ic-menu-group/ic-menu-group.js +4 -5
  200. package/dist/collection/components/ic-menu-group/ic-menu-group.js.map +1 -1
  201. package/dist/collection/components/ic-menu-item/ic-menu-item.css +1 -0
  202. package/dist/collection/components/ic-menu-item/ic-menu-item.js +53 -28
  203. package/dist/collection/components/ic-menu-item/ic-menu-item.js.map +1 -1
  204. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +44 -23
  205. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -1
  206. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +109 -28
  207. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
  208. package/dist/collection/components/ic-navigation-group/ic-navigation-group.types.js +2 -0
  209. package/dist/collection/components/ic-navigation-group/ic-navigation-group.types.js.map +1 -0
  210. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +107 -63
  211. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
  212. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +61 -34
  213. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js.map +1 -1
  214. package/dist/collection/components/ic-page-header/ic-page-header.js +68 -31
  215. package/dist/collection/components/ic-page-header/ic-page-header.js.map +1 -1
  216. package/dist/collection/components/ic-pagination/ic-pagination.js +100 -44
  217. package/dist/collection/components/ic-pagination/ic-pagination.js.map +1 -1
  218. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +48 -22
  219. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js.map +1 -1
  220. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +81 -52
  221. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js.map +1 -1
  222. package/dist/collection/components/ic-popover-menu/ic-popover-menu.stories.js +70 -1
  223. package/dist/collection/components/ic-radio-group/ic-radio-group.js +87 -41
  224. package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
  225. package/dist/collection/components/ic-radio-option/ic-radio-option.js +64 -33
  226. package/dist/collection/components/ic-radio-option/ic-radio-option.js.map +1 -1
  227. package/dist/collection/components/ic-search-bar/ic-search-bar.js +252 -101
  228. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  229. package/dist/collection/components/ic-search-bar/ic-search-bar.types.js.map +1 -1
  230. package/dist/collection/components/ic-section-container/ic-section-container.js +15 -5
  231. package/dist/collection/components/ic-section-container/ic-section-container.js.map +1 -1
  232. package/dist/collection/components/ic-select/ic-select.css +1 -0
  233. package/dist/collection/components/ic-select/ic-select.js +333 -177
  234. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  235. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +1 -2
  236. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +146 -89
  237. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  238. package/dist/collection/components/ic-side-navigation/ic-side-navigation.stories.js +12 -0
  239. package/dist/collection/components/ic-skeleton/ic-skeleton.js +14 -4
  240. package/dist/collection/components/ic-skeleton/ic-skeleton.js.map +1 -1
  241. package/dist/collection/components/ic-skip-link/ic-skip-link.css +46 -0
  242. package/dist/collection/components/ic-skip-link/ic-skip-link.js +203 -0
  243. package/dist/collection/components/ic-skip-link/ic-skip-link.js.map +1 -0
  244. package/dist/collection/components/ic-skip-link/ic-skip-link.stories.js +504 -0
  245. package/dist/collection/components/ic-status-tag/ic-status-tag.css +1 -1
  246. package/dist/collection/components/ic-status-tag/ic-status-tag.js +41 -9
  247. package/dist/collection/components/ic-status-tag/ic-status-tag.js.map +1 -1
  248. package/dist/collection/components/ic-step/ic-step.css +2 -2
  249. package/dist/collection/components/ic-step/ic-step.js +67 -40
  250. package/dist/collection/components/ic-step/ic-step.js.map +1 -1
  251. package/dist/collection/components/ic-stepper/ic-stepper.js +61 -37
  252. package/dist/collection/components/ic-stepper/ic-stepper.js.map +1 -1
  253. package/dist/collection/components/ic-stepper/ic-stepper.stories.js +5 -1
  254. package/dist/collection/components/ic-switch/ic-switch.js +72 -27
  255. package/dist/collection/components/ic-switch/ic-switch.js.map +1 -1
  256. package/dist/collection/components/ic-tab/ic-tab.js +40 -21
  257. package/dist/collection/components/ic-tab/ic-tab.js.map +1 -1
  258. package/dist/collection/components/ic-tab-context/ic-tab-context.js +59 -29
  259. package/dist/collection/components/ic-tab-context/ic-tab-context.js.map +1 -1
  260. package/dist/collection/components/ic-tab-group/ic-tab-group.js +21 -9
  261. package/dist/collection/components/ic-tab-group/ic-tab-group.js.map +1 -1
  262. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +26 -10
  263. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js.map +1 -1
  264. package/dist/collection/components/ic-text-field/ic-text-field.js +321 -140
  265. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  266. package/dist/collection/components/ic-theme/ic-theme.js +19 -9
  267. package/dist/collection/components/ic-theme/ic-theme.js.map +1 -1
  268. package/dist/collection/components/ic-toast/ic-toast.js +49 -28
  269. package/dist/collection/components/ic-toast/ic-toast.js.map +1 -1
  270. package/dist/collection/components/ic-toast-region/ic-toast-region.js +6 -5
  271. package/dist/collection/components/ic-toast-region/ic-toast-region.js.map +1 -1
  272. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +116 -60
  273. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js.map +1 -1
  274. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +90 -35
  275. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js.map +1 -1
  276. package/dist/collection/components/ic-tooltip/ic-tooltip.js +65 -33
  277. package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
  278. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +91 -45
  279. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
  280. package/dist/collection/components/ic-top-navigation/ic-top-navigation.stories.js +8 -19
  281. package/dist/collection/components/ic-typography/ic-typography.js +73 -32
  282. package/dist/collection/components/ic-typography/ic-typography.js.map +1 -1
  283. package/dist/collection/utils/helpers.js +29 -24
  284. package/dist/collection/utils/helpers.js.map +1 -1
  285. package/dist/collection/utils/testa11y.helpers.js +2 -1
  286. package/dist/collection/utils/testa11y.helpers.js.map +1 -1
  287. package/dist/collection/utils/types.js.map +1 -1
  288. package/dist/components/helpers.js +30 -25
  289. package/dist/components/helpers.js.map +1 -1
  290. package/dist/components/ic-accordion-group.js +29 -12
  291. package/dist/components/ic-accordion-group.js.map +1 -1
  292. package/dist/components/ic-accordion.js +63 -40
  293. package/dist/components/ic-accordion.js.map +1 -1
  294. package/dist/components/ic-alert.js +35 -14
  295. package/dist/components/ic-alert.js.map +1 -1
  296. package/dist/components/ic-back-to-top.js +25 -13
  297. package/dist/components/ic-back-to-top.js.map +1 -1
  298. package/dist/components/ic-badge.js +39 -20
  299. package/dist/components/ic-badge.js.map +1 -1
  300. package/dist/components/ic-breadcrumb-group.js +29 -14
  301. package/dist/components/ic-breadcrumb-group.js.map +1 -1
  302. package/dist/components/ic-breadcrumb2.js +33 -19
  303. package/dist/components/ic-breadcrumb2.js.map +1 -1
  304. package/dist/components/ic-button2.js +171 -63
  305. package/dist/components/ic-button2.js.map +1 -1
  306. package/dist/components/ic-card-vertical.js +51 -30
  307. package/dist/components/ic-card-vertical.js.map +1 -1
  308. package/dist/components/ic-checkbox-group.js +30 -7
  309. package/dist/components/ic-checkbox-group.js.map +1 -1
  310. package/dist/components/ic-checkbox.js +46 -27
  311. package/dist/components/ic-checkbox.js.map +1 -1
  312. package/dist/components/ic-chip.js +42 -21
  313. package/dist/components/ic-chip.js.map +1 -1
  314. package/dist/components/ic-classification-banner.js +19 -3
  315. package/dist/components/ic-classification-banner.js.map +1 -1
  316. package/dist/components/ic-data-list.js +10 -4
  317. package/dist/components/ic-data-list.js.map +1 -1
  318. package/dist/components/ic-data-row.js +27 -17
  319. package/dist/components/ic-data-row.js.map +1 -1
  320. package/dist/components/ic-dialog.js +139 -96
  321. package/dist/components/ic-dialog.js.map +1 -1
  322. package/dist/components/ic-divider2.js +33 -13
  323. package/dist/components/ic-divider2.js.map +1 -1
  324. package/dist/components/ic-empty-state.js +13 -7
  325. package/dist/components/ic-empty-state.js.map +1 -1
  326. package/dist/components/ic-footer-link-group.js +6 -6
  327. package/dist/components/ic-footer-link-group.js.map +1 -1
  328. package/dist/components/ic-footer-link.js +7 -8
  329. package/dist/components/ic-footer-link.js.map +1 -1
  330. package/dist/components/ic-footer.js +31 -18
  331. package/dist/components/ic-footer.js.map +1 -1
  332. package/dist/components/ic-hero.js +27 -15
  333. package/dist/components/ic-hero.js.map +1 -1
  334. package/dist/components/ic-horizontal-scroll2.js +30 -18
  335. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  336. package/dist/components/ic-input-component-container2.js +31 -9
  337. package/dist/components/ic-input-component-container2.js.map +1 -1
  338. package/dist/components/ic-input-container2.js +12 -5
  339. package/dist/components/ic-input-container2.js.map +1 -1
  340. package/dist/components/ic-input-label2.js +28 -8
  341. package/dist/components/ic-input-label2.js.map +1 -1
  342. package/dist/components/ic-input-validation2.js +15 -7
  343. package/dist/components/ic-input-validation2.js.map +1 -1
  344. package/dist/components/ic-link2.js +26 -19
  345. package/dist/components/ic-link2.js.map +1 -1
  346. package/dist/components/ic-loading-indicator2.js +89 -54
  347. package/dist/components/ic-loading-indicator2.js.map +1 -1
  348. package/dist/components/ic-menu-group.js +3 -3
  349. package/dist/components/ic-menu-group.js.map +1 -1
  350. package/dist/components/ic-menu-item2.js +19 -17
  351. package/dist/components/ic-menu-item2.js.map +1 -1
  352. package/dist/components/ic-menu2.js +81 -52
  353. package/dist/components/ic-menu2.js.map +1 -1
  354. package/dist/components/ic-navigation-button.js +23 -17
  355. package/dist/components/ic-navigation-button.js.map +1 -1
  356. package/dist/components/ic-navigation-group.js +48 -27
  357. package/dist/components/ic-navigation-group.js.map +1 -1
  358. package/dist/components/ic-navigation-item.js +68 -47
  359. package/dist/components/ic-navigation-item.js.map +1 -1
  360. package/dist/components/ic-navigation-menu2.js +53 -31
  361. package/dist/components/ic-navigation-menu2.js.map +1 -1
  362. package/dist/components/ic-page-header.js +44 -24
  363. package/dist/components/ic-page-header.js.map +1 -1
  364. package/dist/components/ic-pagination-item2.js +25 -12
  365. package/dist/components/ic-pagination-item2.js.map +1 -1
  366. package/dist/components/ic-pagination.js +58 -25
  367. package/dist/components/ic-pagination.js.map +1 -1
  368. package/dist/components/ic-popover-menu.js +56 -40
  369. package/dist/components/ic-popover-menu.js.map +1 -1
  370. package/dist/components/ic-radio-group.js +51 -26
  371. package/dist/components/ic-radio-group.js.map +1 -1
  372. package/dist/components/ic-radio-option.js +33 -21
  373. package/dist/components/ic-radio-option.js.map +1 -1
  374. package/dist/components/ic-search-bar.js +151 -61
  375. package/dist/components/ic-search-bar.js.map +1 -1
  376. package/dist/components/ic-section-container2.js +11 -4
  377. package/dist/components/ic-section-container2.js.map +1 -1
  378. package/dist/components/ic-select.js +232 -135
  379. package/dist/components/ic-select.js.map +1 -1
  380. package/dist/components/ic-side-navigation.js +106 -70
  381. package/dist/components/ic-side-navigation.js.map +1 -1
  382. package/dist/components/ic-skeleton.js +10 -3
  383. package/dist/components/ic-skeleton.js.map +1 -1
  384. package/dist/components/ic-skip-link.d.ts +11 -0
  385. package/dist/components/ic-skip-link.js +83 -0
  386. package/dist/components/ic-skip-link.js.map +1 -0
  387. package/dist/components/ic-status-tag.js +24 -5
  388. package/dist/components/ic-status-tag.js.map +1 -1
  389. package/dist/components/ic-step.js +33 -31
  390. package/dist/components/ic-step.js.map +1 -1
  391. package/dist/components/ic-stepper.js +48 -33
  392. package/dist/components/ic-stepper.js.map +1 -1
  393. package/dist/components/ic-switch.js +48 -20
  394. package/dist/components/ic-switch.js.map +1 -1
  395. package/dist/components/ic-tab-context.js +43 -23
  396. package/dist/components/ic-tab-context.js.map +1 -1
  397. package/dist/components/ic-tab-group.js +12 -7
  398. package/dist/components/ic-tab-group.js.map +1 -1
  399. package/dist/components/ic-tab-panel.js +11 -6
  400. package/dist/components/ic-tab-panel.js.map +1 -1
  401. package/dist/components/ic-tab.js +19 -13
  402. package/dist/components/ic-tab.js.map +1 -1
  403. package/dist/components/ic-text-field.js +173 -67
  404. package/dist/components/ic-text-field.js.map +1 -1
  405. package/dist/components/ic-theme.js +11 -5
  406. package/dist/components/ic-theme.js.map +1 -1
  407. package/dist/components/ic-toast-region.js +1 -2
  408. package/dist/components/ic-toast-region.js.map +1 -1
  409. package/dist/components/ic-toast.js +28 -20
  410. package/dist/components/ic-toast.js.map +1 -1
  411. package/dist/components/ic-toggle-button-group.js +59 -27
  412. package/dist/components/ic-toggle-button-group.js.map +1 -1
  413. package/dist/components/ic-toggle-button.js +79 -46
  414. package/dist/components/ic-toggle-button.js.map +1 -1
  415. package/dist/components/ic-tooltip2.js +42 -25
  416. package/dist/components/ic-tooltip2.js.map +1 -1
  417. package/dist/components/ic-top-navigation.js +59 -30
  418. package/dist/components/ic-top-navigation.js.map +1 -1
  419. package/dist/components/ic-typography2.js +51 -25
  420. package/dist/components/ic-typography2.js.map +1 -1
  421. package/dist/core/core.css +66 -49
  422. package/dist/core/core.esm.js +1 -1
  423. package/dist/core/core.esm.js.map +1 -1
  424. package/dist/core/index.esm.js.map +1 -1
  425. package/dist/core/p-08fbea60.entry.js +2 -0
  426. package/dist/core/p-08fbea60.entry.js.map +1 -0
  427. package/dist/core/{p-73a208c7.entry.js → p-0f34465d.entry.js} +2 -2
  428. package/dist/core/p-0f34465d.entry.js.map +1 -0
  429. package/dist/core/p-111b3186.entry.js +2 -0
  430. package/dist/core/p-111b3186.entry.js.map +1 -0
  431. package/dist/core/p-144a31ec.entry.js +2 -0
  432. package/dist/core/p-144a31ec.entry.js.map +1 -0
  433. package/dist/core/{p-ca11666f.entry.js → p-180ea8ac.entry.js} +2 -2
  434. package/dist/core/p-180ea8ac.entry.js.map +1 -0
  435. package/dist/core/{p-39ab6387.entry.js → p-196e3d33.entry.js} +2 -2
  436. package/dist/core/p-196e3d33.entry.js.map +1 -0
  437. package/dist/core/{p-96b4ca6e.entry.js → p-1d6638c8.entry.js} +2 -2
  438. package/dist/core/p-1d6638c8.entry.js.map +1 -0
  439. package/dist/core/p-1d9a929b.entry.js +2 -0
  440. package/dist/core/p-1d9a929b.entry.js.map +1 -0
  441. package/dist/core/p-1dc0c174.entry.js +2 -0
  442. package/dist/core/p-1dc0c174.entry.js.map +1 -0
  443. package/dist/core/{p-27274ca8.entry.js → p-1fccec19.entry.js} +2 -2
  444. package/dist/core/p-1fccec19.entry.js.map +1 -0
  445. package/dist/core/{p-c1db155d.entry.js → p-22d88d2f.entry.js} +2 -2
  446. package/dist/core/p-22d88d2f.entry.js.map +1 -0
  447. package/dist/core/p-269f841d.js +2 -0
  448. package/dist/core/p-269f841d.js.map +1 -0
  449. package/dist/core/{p-094f51b6.entry.js → p-27de359f.entry.js} +2 -2
  450. package/dist/core/p-27de359f.entry.js.map +1 -0
  451. package/dist/core/p-2cb55e86.entry.js +2 -0
  452. package/dist/core/p-2cb55e86.entry.js.map +1 -0
  453. package/dist/core/p-30a262d2.entry.js +2 -0
  454. package/dist/core/p-30a262d2.entry.js.map +1 -0
  455. package/dist/core/p-39bf060d.entry.js +2 -0
  456. package/dist/core/p-39bf060d.entry.js.map +1 -0
  457. package/dist/core/p-3b185c32.js.map +1 -1
  458. package/dist/core/{p-a178d53c.entry.js → p-40bc1f3e.entry.js} +2 -2
  459. package/dist/core/p-40bc1f3e.entry.js.map +1 -0
  460. package/dist/core/p-426ec638.js.map +1 -1
  461. package/dist/core/p-47b46637.entry.js +2 -0
  462. package/dist/core/p-47b46637.entry.js.map +1 -0
  463. package/dist/core/p-4a5ab31e.entry.js +2 -0
  464. package/dist/core/p-4a5ab31e.entry.js.map +1 -0
  465. package/dist/core/p-4e4014cd.entry.js +2 -0
  466. package/dist/core/p-4e4014cd.entry.js.map +1 -0
  467. package/dist/core/{p-25d3c3a6.entry.js → p-55eb89cc.entry.js} +2 -2
  468. package/dist/core/p-55eb89cc.entry.js.map +1 -0
  469. package/dist/core/p-59fc58e1.entry.js +2 -0
  470. package/dist/core/p-59fc58e1.entry.js.map +1 -0
  471. package/dist/core/p-5b7d8ee9.entry.js +2 -0
  472. package/dist/core/p-5b7d8ee9.entry.js.map +1 -0
  473. package/dist/core/{p-b404b307.entry.js → p-5fa5ba50.entry.js} +2 -2
  474. package/dist/core/p-5fa5ba50.entry.js.map +1 -0
  475. package/dist/core/p-625f914e.entry.js +2 -0
  476. package/dist/core/p-625f914e.entry.js.map +1 -0
  477. package/dist/core/p-67d47db4.entry.js +2 -0
  478. package/dist/core/p-67d47db4.entry.js.map +1 -0
  479. package/dist/core/p-68a5aaff.js.map +1 -1
  480. package/dist/core/{p-146b2788.entry.js → p-72140621.entry.js} +2 -2
  481. package/dist/core/p-72140621.entry.js.map +1 -0
  482. package/dist/core/{p-4cfe1dd8.entry.js → p-78c3ca49.entry.js} +2 -2
  483. package/dist/core/p-78c3ca49.entry.js.map +1 -0
  484. package/dist/core/p-78c51cba.entry.js +2 -0
  485. package/dist/core/p-78c51cba.entry.js.map +1 -0
  486. package/dist/core/{p-3d565739.entry.js → p-7ea79205.entry.js} +2 -2
  487. package/dist/core/p-7ea79205.entry.js.map +1 -0
  488. package/dist/core/{p-26bc7c62.entry.js → p-8856dff4.entry.js} +2 -2
  489. package/dist/core/p-8856dff4.entry.js.map +1 -0
  490. package/dist/core/p-8870d5d8.entry.js +2 -0
  491. package/dist/core/p-8870d5d8.entry.js.map +1 -0
  492. package/dist/core/{p-00587c99.entry.js → p-8b928cc9.entry.js} +2 -2
  493. package/dist/core/p-8b928cc9.entry.js.map +1 -0
  494. package/dist/core/p-8d1bee7a.entry.js +2 -0
  495. package/dist/core/p-8d1bee7a.entry.js.map +1 -0
  496. package/dist/core/p-8e4e97b4.js +3 -0
  497. package/dist/core/p-8e4e97b4.js.map +1 -0
  498. package/dist/core/p-8f319e1e.entry.js +2 -0
  499. package/dist/core/p-8f319e1e.entry.js.map +1 -0
  500. package/dist/core/p-90de3f5d.entry.js +2 -0
  501. package/dist/core/p-90de3f5d.entry.js.map +1 -0
  502. package/dist/core/p-912c8594.entry.js +2 -0
  503. package/dist/core/p-912c8594.entry.js.map +1 -0
  504. package/dist/core/{p-67b3cd55.entry.js → p-9206379d.entry.js} +2 -2
  505. package/dist/core/p-9206379d.entry.js.map +1 -0
  506. package/dist/core/p-94748b96.entry.js +2 -0
  507. package/dist/core/p-94748b96.entry.js.map +1 -0
  508. package/dist/core/{p-d7ccd00f.entry.js → p-98f906ba.entry.js} +2 -2
  509. package/dist/core/p-98f906ba.entry.js.map +1 -0
  510. package/dist/core/{p-5b836707.entry.js → p-999102ee.entry.js} +2 -2
  511. package/dist/core/p-999102ee.entry.js.map +1 -0
  512. package/dist/core/p-9b741f96.entry.js +2 -0
  513. package/dist/core/p-9b741f96.entry.js.map +1 -0
  514. package/dist/core/p-9dbe3f3e.entry.js +2 -0
  515. package/dist/core/p-9dbe3f3e.entry.js.map +1 -0
  516. package/dist/core/p-9ee2fe04.entry.js +2 -0
  517. package/dist/core/p-9ee2fe04.entry.js.map +1 -0
  518. package/dist/core/{p-e2cf6e7e.entry.js → p-a56ec6d8.entry.js} +2 -2
  519. package/dist/core/p-a56ec6d8.entry.js.map +1 -0
  520. package/dist/core/p-a9fd6dcf.entry.js +2 -0
  521. package/dist/core/p-a9fd6dcf.entry.js.map +1 -0
  522. package/dist/core/p-b594bf26.entry.js +2 -0
  523. package/dist/core/p-b594bf26.entry.js.map +1 -0
  524. package/dist/core/{p-6e94c79c.entry.js → p-bd802c2f.entry.js} +2 -2
  525. package/dist/core/p-bd802c2f.entry.js.map +1 -0
  526. package/dist/core/p-bfee1e84.entry.js +2 -0
  527. package/dist/core/p-bfee1e84.entry.js.map +1 -0
  528. package/dist/core/{p-7f984e25.entry.js → p-c19cdc86.entry.js} +2 -2
  529. package/dist/core/p-c19cdc86.entry.js.map +1 -0
  530. package/dist/core/p-c2e091d7.js.map +1 -1
  531. package/dist/core/{p-73d6092d.entry.js → p-c3785d57.entry.js} +2 -2
  532. package/dist/core/p-c3785d57.entry.js.map +1 -0
  533. package/dist/core/p-c7be6679.entry.js +2 -0
  534. package/dist/core/p-c7be6679.entry.js.map +1 -0
  535. package/dist/core/{p-7b26ef60.entry.js → p-caa46d81.entry.js} +2 -2
  536. package/dist/core/p-caa46d81.entry.js.map +1 -0
  537. package/dist/core/{p-720428a3.entry.js → p-ce0fb53a.entry.js} +2 -2
  538. package/dist/core/p-ce0fb53a.entry.js.map +1 -0
  539. package/dist/core/p-d80f3ec1.entry.js +2 -0
  540. package/dist/core/p-d80f3ec1.entry.js.map +1 -0
  541. package/dist/core/p-dce2c5e8.entry.js +2 -0
  542. package/dist/core/p-dce2c5e8.entry.js.map +1 -0
  543. package/dist/core/{p-07aaf9c4.entry.js → p-df56bc50.entry.js} +2 -2
  544. package/dist/core/p-df56bc50.entry.js.map +1 -0
  545. package/dist/core/p-e1255160.js +2 -0
  546. package/dist/core/p-e1255160.js.map +1 -0
  547. package/dist/core/p-e25feba1.entry.js +2 -0
  548. package/dist/core/p-e25feba1.entry.js.map +1 -0
  549. package/dist/core/p-e3be3502.entry.js +2 -0
  550. package/dist/core/p-e3be3502.entry.js.map +1 -0
  551. package/dist/core/p-f074ef5b.js.map +1 -1
  552. package/dist/core/{p-abdc2912.entry.js → p-f486d4f4.entry.js} +2 -2
  553. package/dist/core/p-f486d4f4.entry.js.map +1 -0
  554. package/dist/core/{p-a87d13b3.entry.js → p-fbce5f9a.entry.js} +2 -2
  555. package/dist/core/p-fbce5f9a.entry.js.map +1 -0
  556. package/dist/esm/app-globals-0f993ce5.js +5 -0
  557. package/dist/esm/app-globals-0f993ce5.js.map +1 -0
  558. package/dist/esm/core.js +14 -12
  559. package/dist/esm/core.js.map +1 -1
  560. package/dist/esm/{helpers-a72a277b.js → helpers-de6293bf.js} +31 -26
  561. package/dist/esm/helpers-de6293bf.js.map +1 -0
  562. package/dist/esm/ic-accordion-group.entry.js +31 -14
  563. package/dist/esm/ic-accordion-group.entry.js.map +1 -1
  564. package/dist/esm/ic-accordion.entry.js +65 -42
  565. package/dist/esm/ic-accordion.entry.js.map +1 -1
  566. package/dist/esm/ic-alert.entry.js +37 -16
  567. package/dist/esm/ic-alert.entry.js.map +1 -1
  568. package/dist/esm/ic-back-to-top.entry.js +27 -15
  569. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  570. package/dist/esm/ic-badge.entry.js +41 -22
  571. package/dist/esm/ic-badge.entry.js.map +1 -1
  572. package/dist/esm/ic-breadcrumb-group.entry.js +31 -16
  573. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  574. package/dist/esm/ic-breadcrumb.entry.js +35 -21
  575. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  576. package/dist/esm/ic-button_3.entry.js +304 -144
  577. package/dist/esm/ic-button_3.entry.js.map +1 -1
  578. package/dist/esm/ic-card-vertical.entry.js +53 -32
  579. package/dist/esm/ic-card-vertical.entry.js.map +1 -1
  580. package/dist/esm/ic-checkbox-group.entry.js +32 -9
  581. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  582. package/dist/esm/ic-checkbox.entry.js +48 -29
  583. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  584. package/dist/esm/ic-chip.entry.js +44 -23
  585. package/dist/esm/ic-chip.entry.js.map +1 -1
  586. package/dist/esm/ic-classification-banner.entry.js +20 -4
  587. package/dist/esm/ic-classification-banner.entry.js.map +1 -1
  588. package/dist/esm/ic-data-list.entry.js +11 -5
  589. package/dist/esm/ic-data-list.entry.js.map +1 -1
  590. package/dist/esm/ic-data-row.entry.js +28 -18
  591. package/dist/esm/ic-data-row.entry.js.map +1 -1
  592. package/dist/esm/ic-dialog.entry.js +141 -98
  593. package/dist/esm/ic-dialog.entry.js.map +1 -1
  594. package/dist/esm/ic-divider.entry.js +35 -15
  595. package/dist/esm/ic-divider.entry.js.map +1 -1
  596. package/dist/esm/ic-empty-state.entry.js +15 -9
  597. package/dist/esm/ic-empty-state.entry.js.map +1 -1
  598. package/dist/esm/ic-footer-link-group.entry.js +8 -8
  599. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  600. package/dist/esm/ic-footer-link.entry.js +9 -10
  601. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  602. package/dist/esm/ic-footer.entry.js +32 -19
  603. package/dist/esm/ic-footer.entry.js.map +1 -1
  604. package/dist/esm/ic-hero.entry.js +29 -17
  605. package/dist/esm/ic-hero.entry.js.map +1 -1
  606. package/dist/esm/ic-horizontal-scroll.entry.js +32 -20
  607. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  608. package/dist/esm/ic-input-component-container_3.entry.js +126 -68
  609. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  610. package/dist/esm/ic-input-label_2.entry.js +45 -17
  611. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  612. package/dist/esm/ic-link.entry.js +28 -21
  613. package/dist/esm/ic-link.entry.js.map +1 -1
  614. package/dist/esm/ic-menu-group.entry.js +5 -5
  615. package/dist/esm/ic-menu-group.entry.js.map +1 -1
  616. package/dist/esm/ic-menu-item.entry.js +21 -19
  617. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  618. package/dist/esm/ic-navigation-button.entry.js +25 -19
  619. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  620. package/dist/esm/ic-navigation-group.entry.js +48 -27
  621. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  622. package/dist/esm/ic-navigation-item.entry.js +69 -48
  623. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  624. package/dist/esm/ic-navigation-menu.entry.js +54 -32
  625. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  626. package/dist/esm/ic-page-header.entry.js +45 -25
  627. package/dist/esm/ic-page-header.entry.js.map +1 -1
  628. package/dist/esm/ic-pagination-item.entry.js +27 -14
  629. package/dist/esm/ic-pagination-item.entry.js.map +1 -1
  630. package/dist/esm/ic-pagination.entry.js +60 -27
  631. package/dist/esm/ic-pagination.entry.js.map +1 -1
  632. package/dist/esm/ic-popover-menu.entry.js +58 -42
  633. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  634. package/dist/esm/ic-radio-group.entry.js +53 -28
  635. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  636. package/dist/esm/ic-radio-option.entry.js +35 -23
  637. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  638. package/dist/esm/ic-search-bar.entry.js +153 -63
  639. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  640. package/dist/esm/ic-section-container.entry.js +12 -5
  641. package/dist/esm/ic-section-container.entry.js.map +1 -1
  642. package/dist/esm/ic-select.entry.js +234 -137
  643. package/dist/esm/ic-select.entry.js.map +1 -1
  644. package/dist/esm/ic-side-navigation.entry.js +107 -71
  645. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  646. package/dist/esm/ic-skeleton.entry.js +11 -4
  647. package/dist/esm/ic-skeleton.entry.js.map +1 -1
  648. package/dist/esm/ic-skip-link.entry.js +51 -0
  649. package/dist/esm/ic-skip-link.entry.js.map +1 -0
  650. package/dist/esm/ic-status-tag.entry.js +26 -7
  651. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  652. package/dist/esm/ic-step.entry.js +35 -33
  653. package/dist/esm/ic-step.entry.js.map +1 -1
  654. package/dist/esm/ic-stepper.entry.js +50 -35
  655. package/dist/esm/ic-stepper.entry.js.map +1 -1
  656. package/dist/esm/ic-switch.entry.js +50 -22
  657. package/dist/esm/ic-switch.entry.js.map +1 -1
  658. package/dist/esm/ic-tab-context.entry.js +44 -24
  659. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  660. package/dist/esm/ic-tab-group.entry.js +14 -9
  661. package/dist/esm/ic-tab-group.entry.js.map +1 -1
  662. package/dist/esm/ic-tab-panel.entry.js +12 -7
  663. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  664. package/dist/esm/ic-tab.entry.js +21 -15
  665. package/dist/esm/ic-tab.entry.js.map +1 -1
  666. package/dist/esm/ic-text-field.entry.js +175 -69
  667. package/dist/esm/ic-text-field.entry.js.map +1 -1
  668. package/dist/esm/ic-theme.entry.js +13 -7
  669. package/dist/esm/ic-theme.entry.js.map +1 -1
  670. package/dist/esm/ic-toast-region.entry.js +2 -3
  671. package/dist/esm/ic-toast-region.entry.js.map +1 -1
  672. package/dist/esm/ic-toast.entry.js +29 -21
  673. package/dist/esm/ic-toast.entry.js.map +1 -1
  674. package/dist/esm/ic-toggle-button-group.entry.js +61 -29
  675. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  676. package/dist/esm/ic-toggle-button.entry.js +81 -48
  677. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  678. package/dist/esm/ic-top-navigation.entry.js +60 -31
  679. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  680. package/dist/esm/ic-typography.entry.js +53 -27
  681. package/dist/esm/ic-typography.entry.js.map +1 -1
  682. package/dist/esm/index-a7a720e7.js +2580 -0
  683. package/dist/esm/index-a7a720e7.js.map +1 -0
  684. package/dist/esm/loader.js +6 -4
  685. package/dist/esm/loader.js.map +1 -1
  686. package/dist/types/components/ic-accordion/ic-accordion.d.ts +3 -3
  687. package/dist/types/components/ic-accordion-group/ic-accordion-group.d.ts +5 -5
  688. package/dist/types/components/ic-alert/ic-alert.d.ts +1 -1
  689. package/dist/types/components/ic-back-to-top/ic-back-to-top.d.ts +1 -1
  690. package/dist/types/components/ic-badge/ic-badge.d.ts +1 -1
  691. package/dist/types/components/ic-breadcrumb/ic-breadcrumb.d.ts +1 -1
  692. package/dist/types/components/ic-breadcrumb-group/ic-breadcrumb-group.d.ts +2 -2
  693. package/dist/types/components/ic-button/ic-button.d.ts +7 -6
  694. package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +10 -10
  695. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +6 -6
  696. package/dist/types/components/ic-data-list/ic-data-list.d.ts +1 -1
  697. package/dist/types/components/ic-data-row/ic-data-row.d.ts +2 -2
  698. package/dist/types/components/ic-dialog/ic-dialog.d.ts +9 -6
  699. package/dist/types/components/ic-divider/ic-divider.d.ts +3 -3
  700. package/dist/types/components/ic-footer/ic-footer.d.ts +4 -4
  701. package/dist/types/components/ic-hero/ic-hero.d.ts +3 -3
  702. package/dist/types/components/ic-input-component-container/ic-input-component-container.d.ts +6 -6
  703. package/dist/types/components/ic-input-label/ic-input-label.d.ts +2 -2
  704. package/dist/types/components/ic-input-validation/ic-input-validation.d.ts +4 -4
  705. package/dist/types/components/ic-loading-indicator/ic-loading-indicator.d.ts +2 -2
  706. package/dist/types/components/ic-menu/ic-menu.d.ts +10 -10
  707. package/dist/types/components/ic-menu/ic-menu.types.d.ts +1 -1
  708. package/dist/types/components/ic-menu-item/ic-menu-item.d.ts +2 -2
  709. package/dist/types/components/ic-navigation-button/ic-navigation-button.d.ts +1 -1
  710. package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +15 -4
  711. package/dist/types/components/ic-navigation-group/ic-navigation-group.types.d.ts +6 -0
  712. package/dist/types/components/ic-navigation-item/ic-navigation-item.d.ts +8 -8
  713. package/dist/types/components/ic-navigation-menu/ic-navigation-menu.d.ts +5 -3
  714. package/dist/types/components/ic-pagination/ic-pagination.d.ts +9 -9
  715. package/dist/types/components/ic-pagination-item/ic-pagination-item.d.ts +4 -4
  716. package/dist/types/components/ic-popover-menu/ic-popover-menu.d.ts +4 -4
  717. package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +8 -8
  718. package/dist/types/components/ic-radio-option/ic-radio-option.d.ts +6 -6
  719. package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +12 -12
  720. package/dist/types/components/ic-search-bar/ic-search-bar.types.d.ts +1 -1
  721. package/dist/types/components/ic-select/ic-select.d.ts +20 -20
  722. package/dist/types/components/ic-side-navigation/ic-side-navigation.d.ts +12 -12
  723. package/dist/types/components/ic-skip-link/ic-skip-link.d.ts +33 -0
  724. package/dist/types/components/ic-stepper/ic-stepper.d.ts +1 -1
  725. package/dist/types/components/ic-switch/ic-switch.d.ts +1 -1
  726. package/dist/types/components/ic-tab/ic-tab.d.ts +2 -2
  727. package/dist/types/components/ic-text-field/ic-text-field.d.ts +34 -33
  728. package/dist/types/components/ic-theme/ic-theme.d.ts +2 -2
  729. package/dist/types/components/ic-toast/ic-toast.d.ts +3 -3
  730. package/dist/types/components/ic-toast-region/ic-toast-region.d.ts +1 -1
  731. package/dist/types/components/ic-toggle-button/ic-toggle-button.d.ts +3 -3
  732. package/dist/types/components/ic-top-navigation/ic-top-navigation.d.ts +9 -9
  733. package/dist/types/components/ic-typography/ic-typography.d.ts +1 -1
  734. package/dist/types/components.d.ts +282 -195
  735. package/dist/types/stencil-public-runtime.d.ts +9 -10
  736. package/dist/types/utils/helpers.d.ts +10 -10
  737. package/dist/types/utils/types.d.ts +8 -4
  738. package/hydrate/index.d.ts +53 -12
  739. package/hydrate/index.js +32646 -20647
  740. package/hydrate/index.mjs +34349 -0
  741. package/hydrate/package.json +7 -1
  742. package/loader/cdn.js +1 -3
  743. package/loader/index.cjs.js +1 -3
  744. package/loader/index.d.ts +3 -0
  745. package/loader/index.es2017.js +1 -3
  746. package/loader/index.js +1 -3
  747. package/package.json +3 -3
  748. package/vscode-data.json +50 -330
  749. package/dist/cjs/helpers-eca4c27e.js.map +0 -1
  750. package/dist/cjs/index-f982899d.js +0 -3047
  751. package/dist/cjs/index-f982899d.js.map +0 -1
  752. package/dist/collection/components/ic-accordion/test/basic/ic-accordion.spec.js +0 -349
  753. package/dist/collection/components/ic-accordion/test/basic/ic-accordion.spec.js.map +0 -1
  754. package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js +0 -129
  755. package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js.map +0 -1
  756. package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js +0 -329
  757. package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js.map +0 -1
  758. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js +0 -159
  759. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js.map +0 -1
  760. package/dist/collection/components/ic-badge/test/basic/ic-badge.spec.js +0 -450
  761. package/dist/collection/components/ic-badge/test/basic/ic-badge.spec.js.map +0 -1
  762. package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js +0 -162
  763. package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js.map +0 -1
  764. package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.spec.js +0 -234
  765. package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.spec.js.map +0 -1
  766. package/dist/collection/components/ic-button/test/basic/ic-button.spec.js +0 -332
  767. package/dist/collection/components/ic-button/test/basic/ic-button.spec.js.map +0 -1
  768. package/dist/collection/components/ic-card-vertical/test/basic/ic-card-vertical.spec.js +0 -214
  769. package/dist/collection/components/ic-card-vertical/test/basic/ic-card-vertical.spec.js.map +0 -1
  770. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js +0 -284
  771. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js.map +0 -1
  772. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js +0 -188
  773. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js.map +0 -1
  774. package/dist/collection/components/ic-classification-banner/test/basic/ic-classification-banner.spec.js +0 -188
  775. package/dist/collection/components/ic-classification-banner/test/basic/ic-classification-banner.spec.js.map +0 -1
  776. package/dist/collection/components/ic-data-list/test/basic/ic-data-list.spec.js +0 -161
  777. package/dist/collection/components/ic-data-list/test/basic/ic-data-list.spec.js.map +0 -1
  778. package/dist/collection/components/ic-data-row/test/basic/ic-data-row.spec.js +0 -74
  779. package/dist/collection/components/ic-data-row/test/basic/ic-data-row.spec.js.map +0 -1
  780. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js +0 -448
  781. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js.map +0 -1
  782. package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js +0 -109
  783. package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js.map +0 -1
  784. package/dist/collection/components/ic-empty-state/test/basic/ic-empty-state.spec.js +0 -101
  785. package/dist/collection/components/ic-empty-state/test/basic/ic-empty-state.spec.js.map +0 -1
  786. package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js +0 -181
  787. package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js.map +0 -1
  788. package/dist/collection/components/ic-footer-link/test/basic/ic-footer-link.spec.js +0 -46
  789. package/dist/collection/components/ic-footer-link/test/basic/ic-footer-link.spec.js.map +0 -1
  790. package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js +0 -66
  791. package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js.map +0 -1
  792. package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js +0 -109
  793. package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js.map +0 -1
  794. package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js +0 -223
  795. package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js.map +0 -1
  796. package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js +0 -172
  797. package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js.map +0 -1
  798. package/dist/collection/components/ic-input-container/test/basic/ic-input-container.spec.js +0 -38
  799. package/dist/collection/components/ic-input-container/test/basic/ic-input-container.spec.js.map +0 -1
  800. package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js +0 -84
  801. package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js.map +0 -1
  802. package/dist/collection/components/ic-input-validation/test/basic/ic-input-validation.spec.js +0 -89
  803. package/dist/collection/components/ic-input-validation/test/basic/ic-input-validation.spec.js.map +0 -1
  804. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js +0 -120
  805. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js.map +0 -1
  806. package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.spec.js +0 -149
  807. package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.spec.js.map +0 -1
  808. package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js +0 -1108
  809. package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js.map +0 -1
  810. package/dist/collection/components/ic-menu-group/test/basic/ic-menu-group.spec.js +0 -94
  811. package/dist/collection/components/ic-menu-group/test/basic/ic-menu-group.spec.js.map +0 -1
  812. package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js +0 -121
  813. package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js.map +0 -1
  814. package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js +0 -95
  815. package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js.map +0 -1
  816. package/dist/collection/components/ic-navigation-group/test/basic/ic-navigation-group.spec.js +0 -309
  817. package/dist/collection/components/ic-navigation-group/test/basic/ic-navigation-group.spec.js.map +0 -1
  818. package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js +0 -130
  819. package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js.map +0 -1
  820. package/dist/collection/components/ic-navigation-menu/test/basic/ic-navigation-menu.spec.js +0 -176
  821. package/dist/collection/components/ic-navigation-menu/test/basic/ic-navigation-menu.spec.js.map +0 -1
  822. package/dist/collection/components/ic-page-header/test/basic/ic-page-header.spec.js +0 -291
  823. package/dist/collection/components/ic-page-header/test/basic/ic-page-header.spec.js.map +0 -1
  824. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js +0 -390
  825. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js.map +0 -1
  826. package/dist/collection/components/ic-pagination-item/test/basic/ic-pagination-item.spec.js +0 -79
  827. package/dist/collection/components/ic-pagination-item/test/basic/ic-pagination-item.spec.js.map +0 -1
  828. package/dist/collection/components/ic-popover-menu/test/basic/ic-popover-menu.spec.js +0 -398
  829. package/dist/collection/components/ic-popover-menu/test/basic/ic-popover-menu.spec.js.map +0 -1
  830. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js +0 -389
  831. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js.map +0 -1
  832. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js +0 -553
  833. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js.map +0 -1
  834. package/dist/collection/components/ic-section-container/test/basic/ic-section-container.spec.js +0 -69
  835. package/dist/collection/components/ic-section-container/test/basic/ic-section-container.spec.js.map +0 -1
  836. package/dist/collection/components/ic-select/test/basic/ic-select.spec.js +0 -1672
  837. package/dist/collection/components/ic-select/test/basic/ic-select.spec.js.map +0 -1
  838. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js +0 -503
  839. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js.map +0 -1
  840. package/dist/collection/components/ic-skeleton/test/basic/ic-skeleton.spec.js +0 -89
  841. package/dist/collection/components/ic-skeleton/test/basic/ic-skeleton.spec.js.map +0 -1
  842. package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js +0 -26
  843. package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js.map +0 -1
  844. package/dist/collection/components/ic-step/test/basic/ic-step.spec.js +0 -176
  845. package/dist/collection/components/ic-step/test/basic/ic-step.spec.js.map +0 -1
  846. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js +0 -752
  847. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js.map +0 -1
  848. package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js +0 -93
  849. package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js.map +0 -1
  850. package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js +0 -175
  851. package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js.map +0 -1
  852. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js +0 -390
  853. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js.map +0 -1
  854. package/dist/collection/components/ic-tab-panel/test/basic/ic-tab-panel.spec.js +0 -19
  855. package/dist/collection/components/ic-tab-panel/test/basic/ic-tab-panel.spec.js.map +0 -1
  856. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js +0 -312
  857. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js.map +0 -1
  858. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js +0 -341
  859. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js.map +0 -1
  860. package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js +0 -72
  861. package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js.map +0 -1
  862. package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js +0 -79
  863. package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js.map +0 -1
  864. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js +0 -314
  865. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js.map +0 -1
  866. package/dist/collection/components/ic-toast-region/test/basic/ic-toast-region.spec.js +0 -64
  867. package/dist/collection/components/ic-toast-region/test/basic/ic-toast-region.spec.js.map +0 -1
  868. package/dist/collection/components/ic-toggle-button/test/basic/ic-toggle-button.spec.js +0 -126
  869. package/dist/collection/components/ic-toggle-button/test/basic/ic-toggle-button.spec.js.map +0 -1
  870. package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js +0 -337
  871. package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js.map +0 -1
  872. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.spec.js +0 -321
  873. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.spec.js.map +0 -1
  874. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js +0 -314
  875. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js.map +0 -1
  876. package/dist/collection/components/ic-typography/test/basic/ic-typography.spec.js +0 -407
  877. package/dist/collection/components/ic-typography/test/basic/ic-typography.spec.js.map +0 -1
  878. package/dist/collection/testspec.setup.js +0 -77
  879. package/dist/collection/testspec.setup.js.map +0 -1
  880. package/dist/core/p-00587c99.entry.js.map +0 -1
  881. package/dist/core/p-07aaf9c4.entry.js.map +0 -1
  882. package/dist/core/p-094f51b6.entry.js.map +0 -1
  883. package/dist/core/p-116875ae.entry.js +0 -2
  884. package/dist/core/p-116875ae.entry.js.map +0 -1
  885. package/dist/core/p-146b2788.entry.js.map +0 -1
  886. package/dist/core/p-15082ea5.entry.js +0 -2
  887. package/dist/core/p-15082ea5.entry.js.map +0 -1
  888. package/dist/core/p-174de9d7.entry.js +0 -2
  889. package/dist/core/p-174de9d7.entry.js.map +0 -1
  890. package/dist/core/p-17f9921d.entry.js +0 -2
  891. package/dist/core/p-17f9921d.entry.js.map +0 -1
  892. package/dist/core/p-246ea059.entry.js +0 -2
  893. package/dist/core/p-246ea059.entry.js.map +0 -1
  894. package/dist/core/p-25d3c3a6.entry.js.map +0 -1
  895. package/dist/core/p-26bc7c62.entry.js.map +0 -1
  896. package/dist/core/p-27274ca8.entry.js.map +0 -1
  897. package/dist/core/p-31d4bfc3.entry.js +0 -2
  898. package/dist/core/p-31d4bfc3.entry.js.map +0 -1
  899. package/dist/core/p-39ab6387.entry.js.map +0 -1
  900. package/dist/core/p-3d565739.entry.js.map +0 -1
  901. package/dist/core/p-3ea4a005.entry.js +0 -2
  902. package/dist/core/p-3ea4a005.entry.js.map +0 -1
  903. package/dist/core/p-41b7c67c.entry.js +0 -2
  904. package/dist/core/p-41b7c67c.entry.js.map +0 -1
  905. package/dist/core/p-4cfe1dd8.entry.js.map +0 -1
  906. package/dist/core/p-5b836707.entry.js.map +0 -1
  907. package/dist/core/p-67b3cd55.entry.js.map +0 -1
  908. package/dist/core/p-67b8a829.entry.js +0 -2
  909. package/dist/core/p-67b8a829.entry.js.map +0 -1
  910. package/dist/core/p-6b5e91e2.js +0 -3
  911. package/dist/core/p-6b5e91e2.js.map +0 -1
  912. package/dist/core/p-6b9db71a.entry.js +0 -2
  913. package/dist/core/p-6b9db71a.entry.js.map +0 -1
  914. package/dist/core/p-6dfa5a4b.entry.js +0 -2
  915. package/dist/core/p-6dfa5a4b.entry.js.map +0 -1
  916. package/dist/core/p-6e94c79c.entry.js.map +0 -1
  917. package/dist/core/p-720428a3.entry.js.map +0 -1
  918. package/dist/core/p-73a208c7.entry.js.map +0 -1
  919. package/dist/core/p-73d6092d.entry.js.map +0 -1
  920. package/dist/core/p-770c52a7.entry.js +0 -2
  921. package/dist/core/p-770c52a7.entry.js.map +0 -1
  922. package/dist/core/p-7b26ef60.entry.js.map +0 -1
  923. package/dist/core/p-7f984e25.entry.js.map +0 -1
  924. package/dist/core/p-86caada0.entry.js +0 -2
  925. package/dist/core/p-86caada0.entry.js.map +0 -1
  926. package/dist/core/p-8c03b8b5.entry.js +0 -2
  927. package/dist/core/p-8c03b8b5.entry.js.map +0 -1
  928. package/dist/core/p-8fdb9b16.entry.js +0 -2
  929. package/dist/core/p-8fdb9b16.entry.js.map +0 -1
  930. package/dist/core/p-91a221b5.entry.js +0 -2
  931. package/dist/core/p-91a221b5.entry.js.map +0 -1
  932. package/dist/core/p-96b4ca6e.entry.js.map +0 -1
  933. package/dist/core/p-9e0c2c19.entry.js +0 -2
  934. package/dist/core/p-9e0c2c19.entry.js.map +0 -1
  935. package/dist/core/p-9f569f90.entry.js +0 -2
  936. package/dist/core/p-9f569f90.entry.js.map +0 -1
  937. package/dist/core/p-a178d53c.entry.js.map +0 -1
  938. package/dist/core/p-a3b7a147.entry.js +0 -2
  939. package/dist/core/p-a3b7a147.entry.js.map +0 -1
  940. package/dist/core/p-a72685f6.entry.js +0 -2
  941. package/dist/core/p-a72685f6.entry.js.map +0 -1
  942. package/dist/core/p-a87d13b3.entry.js.map +0 -1
  943. package/dist/core/p-abdc2912.entry.js.map +0 -1
  944. package/dist/core/p-b404b307.entry.js.map +0 -1
  945. package/dist/core/p-b6ce9ca3.entry.js +0 -2
  946. package/dist/core/p-b6ce9ca3.entry.js.map +0 -1
  947. package/dist/core/p-b6e010f3.entry.js +0 -2
  948. package/dist/core/p-b6e010f3.entry.js.map +0 -1
  949. package/dist/core/p-bbd4f487.entry.js +0 -2
  950. package/dist/core/p-bbd4f487.entry.js.map +0 -1
  951. package/dist/core/p-bd9f3961.entry.js +0 -2
  952. package/dist/core/p-bd9f3961.entry.js.map +0 -1
  953. package/dist/core/p-c1db155d.entry.js.map +0 -1
  954. package/dist/core/p-c7bcdb8e.entry.js +0 -2
  955. package/dist/core/p-c7bcdb8e.entry.js.map +0 -1
  956. package/dist/core/p-ca11666f.entry.js.map +0 -1
  957. package/dist/core/p-cda4aca9.js +0 -2
  958. package/dist/core/p-cda4aca9.js.map +0 -1
  959. package/dist/core/p-d7ccd00f.entry.js.map +0 -1
  960. package/dist/core/p-dededae6.entry.js +0 -2
  961. package/dist/core/p-dededae6.entry.js.map +0 -1
  962. package/dist/core/p-e2cf6e7e.entry.js.map +0 -1
  963. package/dist/core/p-e6dc3cd1.entry.js +0 -2
  964. package/dist/core/p-e6dc3cd1.entry.js.map +0 -1
  965. package/dist/core/p-e831277e.entry.js +0 -2
  966. package/dist/core/p-e831277e.entry.js.map +0 -1
  967. package/dist/core/p-eb7c589b.entry.js +0 -2
  968. package/dist/core/p-eb7c589b.entry.js.map +0 -1
  969. package/dist/core/p-f65179fe.entry.js +0 -2
  970. package/dist/core/p-f65179fe.entry.js.map +0 -1
  971. package/dist/core/p-fd60eef7.entry.js +0 -2
  972. package/dist/core/p-fd60eef7.entry.js.map +0 -1
  973. package/dist/core/p-fd9f3fd0.entry.js +0 -2
  974. package/dist/core/p-fd9f3fd0.entry.js.map +0 -1
  975. package/dist/esm/helpers-a72a277b.js.map +0 -1
  976. package/dist/esm/index-d1d2c456.js +0 -3016
  977. package/dist/esm/index-d1d2c456.js.map +0 -1
  978. package/dist/esm/polyfills/core-js.js +0 -11
  979. package/dist/esm/polyfills/dom.js +0 -79
  980. package/dist/esm/polyfills/es5-html-element.js +0 -1
  981. package/dist/esm/polyfills/index.js +0 -34
  982. package/dist/esm/polyfills/system.js +0 -6
  983. package/dist/types/testspec.setup.d.ts +0 -24
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icStatusTagCss","IcStatusTagStyle0","StatusTag","constructor","hostRef","this","announced","size","status","theme","uppercase","variant","componentDidLoad","onComponentRequiredPropUndefined","prop","label","propName","render","h","Host","key","class","role"],"sources":["src/components/ic-status-tag/ic-status-tag.css?tag=ic-status-tag&encapsulation=shadow","src/components/ic-status-tag/ic-status-tag.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n.tag {\n padding: var(--ic-space-xxs) var(--ic-space-sm);\n font-size: 0.875rem;\n border-radius: var(--ic-space-md);\n display: inline-block;\n min-width: 2.5rem;\n text-align: center;\n\n --ic-typography-color: var(--ic-status-tag-text);\n}\n\n.small {\n padding: var(--ic-space-xxxs) var(--ic-space-sm);\n border-radius: calc(var(--ic-space-md) - var(--ic-space-xxxs));\n}\n\n.large {\n padding: var(--ic-space-xs) var(--ic-space-sm);\n border-radius: calc(var(--ic-space-md) + var(--ic-space-xxs));\n}\n\n.filled-neutral {\n background-color: var(--ic-status-tag-neutral);\n}\n\n.filled-success {\n background-color: var(--ic-status-tag-success);\n}\n\n.filled-warning {\n background-color: var(--ic-status-tag-warning);\n --ic-typography-color: var(--ic-status-tag-filled-warning-text);\n}\n\n.filled-danger {\n background-color: var(--ic-status-tag-error);\n}\n\n.outlined {\n padding: calc(var(--ic-space-xxxs) + var(--ic-space-1px))\n calc(var(--ic-space-sm) - var(--ic-space-1px));\n}\n\n.outlined.small {\n padding: var(--ic-space-1px) calc(var(--ic-space-sm) - var(--ic-space-1px));\n}\n\n.outlined.large {\n padding: calc(var(--ic-space-xs) - var(--ic-space-1px))\n calc(var(--ic-space-sm) - var(--ic-space-1px));\n}\n\n.outlined-neutral {\n background-color: var(--ic-status-tag-outlined-background-neutral);\n border: var(--ic-border-width) solid var(--ic-status-tag-outlined-neutral);\n --ic-typography-color: var(--ic-status-tag-text-inverted);\n}\n\n.outlined-success {\n background-color: var(--ic-status-tag-outlined-background-success);\n border: var(--ic-border-width) solid var(--ic-status-tag-outlined-success);\n --ic-typography-color: var(--ic-status-tag-text-inverted);\n}\n\n.outlined-warning {\n background-color: var(--ic-status-tag-outlined-background-warning);\n border: var(--ic-border-width) solid var(--ic-status-tag-outlined-warning);\n --ic-typography-color: var(--ic-status-tag-text-inverted);\n}\n\n.outlined-danger {\n background-color: var(--ic-status-tag-outlined-background-error);\n border: var(--ic-border-width) solid var(--ic-status-tag-outlined-error);\n --ic-typography-color: var(--ic-status-tag-text-inverted);\n}\n\n@media (forced-colors: active) {\n .tag {\n border: var(--ic-border-hc);\n -ms-high-contrast-adjust: none;\n forced-color-adjust: none;\n }\n}\n","import { Component, Host, h, Prop } from \"@stencil/core\";\nimport { onComponentRequiredPropUndefined } from \"../../utils/helpers\";\nimport { IcStatusTagStatuses } from \"./ic-status-tag.types\";\nimport { IcEmphasisType, IcSizes } from \"../../utils/types\";\n\n@Component({\n tag: \"ic-status-tag\",\n styleUrl: \"ic-status-tag.css\",\n shadow: true,\n})\nexport class StatusTag {\n /**\n * If `true`, role='status' is added to the component and it will act as an 'aria-live' region.\n * Screen readers will announce changes to the `label`, but not the initial value.\n */\n @Prop() announced?: boolean = false;\n\n /**\n * The content rendered within the status tag.\n */\n @Prop() label!: string;\n\n /**\n * The size of the status tag component.\n */\n @Prop() size?: IcSizes = \"medium\";\n\n /**\n * The colour of the status tag.\n */\n @Prop() status?: IcStatusTagStatuses = \"neutral\";\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: \"dark\" | \"light\" | \"inherit\" = \"inherit\";\n\n /**\n * The letter case of the status tag's label.\n */\n @Prop() uppercase?: boolean = true;\n\n /**\n * The emphasis of the status tag.\n */\n @Prop() variant?: IcEmphasisType = \"filled\";\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Status Tag\"\n );\n }\n\n render() {\n const { label, status, variant, size, announced, theme, uppercase } = this;\n return (\n <Host\n class={{ [`ic-theme-${theme}`]: theme !== \"inherit\" }}\n role={announced ? \"status\" : null}\n aria-label=\"Status\"\n >\n <strong\n class={{\n [\"tag\"]: true,\n [`${variant}-${status}`]: true,\n [\"outlined\"]: variant === \"outlined\",\n [`${size}`]: true,\n }}\n >\n <ic-typography\n variant={uppercase ? \"label-uppercase\" : \"label\"}\n apply-vertical-margins={false}\n >\n <span>{label}</span>\n </ic-typography>\n </strong>\n </Host>\n );\n }\n}\n"],"mappings":"sFAAA,MAAMA,EAAiB,02IACvB,MAAAC,EAAeD,E,MCSFE,EAAS,MALtB,WAAAC,CAAAC,G,UAUUC,KAAAC,UAAsB,MAUtBD,KAAAE,KAAiB,SAKjBF,KAAAG,OAA+B,UAK/BH,KAAAI,MAAuC,UAKvCJ,KAAAK,UAAsB,KAKtBL,KAAAM,QAA2B,Q,CAEnC,gBAAAC,GACEC,EACE,CAAC,CAAEC,KAAMT,KAAKU,MAAOC,SAAU,UAC/B,a,CAIJ,MAAAC,GACE,MAAMF,MAAEA,EAAKP,OAAEA,EAAMG,QAAEA,EAAOJ,KAAEA,EAAID,UAAEA,EAASG,MAAEA,EAAKC,UAAEA,GAAcL,KACtE,OACEa,EAACC,EAAI,CAAAC,IAAA,2CACHC,MAAO,CAAE,CAAC,YAAYZ,KAAUA,IAAU,WAC1Ca,KAAMhB,EAAY,SAAW,KAAI,aACtB,UAEXY,EAAA,UAAAE,IAAA,2CACEC,MAAO,CACL,CAAC,OAAQ,KACT,CAAC,GAAGV,KAAWH,KAAW,KAC1B,CAAC,YAAaG,IAAY,WAC1B,CAAC,GAAGJ,KAAS,OAGfW,EAAA,iBAAAE,IAAA,2CACET,QAASD,EAAY,kBAAoB,QAAO,yBACxB,OAExBQ,EAAA,QAAAE,IAAA,4CAAOL,K","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{f as n}from"./p-8e4e97b4.js";var t;(function(n){n["Warning"]="warning";n["Error"]="error";n["Success"]="success"})(t||(t={}));var e;(function(n){n["Default"]="default";n["Dark"]="dark";n["Light"]="light"})(e||(e={}));const i=`<svg aria-labelledby="error-title" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="#000000">\n <title id="error-title">Error</title>\n <g id="close-octagon">\n <path id="Vector" d="M8.77 3L3.5 8.27V15.73L8.77 21H16.23L21.5 15.73V8.27L16.23 3M8.91 7L12.5 10.59L16.09 7L17.5 8.41L13.91 12L17.5 15.59L16.09 17L12.5 13.41L8.91 17L7.5 15.59L11.09 12L7.5 8.41" />\n </g>\n</svg>\n`;const a=`<svg aria-labelledby="info-title" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="#000000">\n <title id="info-title">For your information</title>\n <g id="info">\n <path id="Vector" d="M12 2C6.48 2 2 6.48 2 12C2 17.52 6.48 22 12 22C17.52 22 22 17.52 22 12C22 6.48 17.52 2 12 2ZM12 17C11.45 17 11 16.55 11 16V12C11 11.45 11.45 11 12 11C12.55 11 13 11.45 13 12V16C13 16.55 12.55 17 12 17ZM13 9H11V7H13V9Z" />\n </g>\n</svg>\n`;const o=`<svg aria-labelledby="neutral-title" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="#000000">\n<title id="neutral-title">Neutral</title>\n <g id="Icon">\n <path id="Vector" d="M19.5 3H5.5C4.4 3 3.5 3.9 3.5 5V19C3.5 20.1 4.4 21 5.5 21H19.5C20.6 21 21.5 20.1 21.5 19V5C21.5 3.9 20.6 3 19.5 3ZM12.51 18C11.81 18 11.25 17.44 11.25 16.74C11.25 16.03 11.81 15.49 12.51 15.49C13.22 15.49 13.76 16.03 13.76 16.74C13.75 17.43 13.22 18 12.51 18ZM15.52 10.6C14.76 11.71 14.04 12.06 13.65 12.77C13.55 12.95 13.49 13.09 13.46 13.4C13.41 13.85 13.01 14.18 12.56 14.18H12.5C11.98 14.18 11.57 13.74 11.62 13.22C11.65 12.88 11.73 12.53 11.92 12.19C12.41 11.32 13.34 10.8 13.88 10.03C14.45 9.22 14.13 7.7 12.51 7.7C11.8 7.7 11.33 8.06 11.04 8.49C10.79 8.85 10.35 9.02 9.94 8.85C9.41 8.64 9.22 8 9.54 7.54C10.15 6.65 11.17 6 12.49 6C13.97 6 14.98 6.67 15.5 7.52C15.94 8.24 16.2 9.59 15.52 10.6Z" />\n </g>\n</svg>\n`;const r=`<svg aria-labelledby="success-title" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="#000000">\n <title id="success-title">Success</title>\n <g id="check_circle">\n <path id="Vector" d="M12.5 2C6.98 2 2.5 6.48 2.5 12C2.5 17.52 6.98 22 12.5 22C18.02 22 22.5 17.52 22.5 12C22.5 6.48 18.02 2 12.5 2ZM9.79 16.29L6.2 12.7C5.81 12.31 5.81 11.68 6.2 11.29C6.59 10.9 7.22 10.9 7.61 11.29L10.5 14.17L17.38 7.29C17.77 6.9 18.4 6.9 18.79 7.29C19.18 7.68 19.18 8.31 18.79 8.7L11.2 16.29C10.82 16.68 10.18 16.68 9.79 16.29Z" />\n </g>\n</svg>\n`;const s=`<svg aria-labelledby="warning-title" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="#000000">\n <title id="warning-title">Warning</title>\n <g id="warning">\n <path id="Vector" d="M4.47 20.5037H19.53C21.07 20.5037 22.03 18.8337 21.26 17.5037L13.73 4.49375C12.96 3.16375 11.04 3.16375 10.27 4.49375L2.74 17.5037C1.97 18.8337 2.93 20.5037 4.47 20.5037ZM12 13.5037C11.45 13.5037 11 13.0537 11 12.5037V10.5037C11 9.95375 11.45 9.50375 12 9.50375C12.55 9.50375 13 9.95375 13 10.5037V12.5037C13 13.0537 12.55 13.5037 12 13.5037ZM13 17.5037H11V15.5037H13V17.5037Z" />\n </g>\n</svg>\n`;const c={neutral:{icon:o,ariaLabel:"Neutral"},info:{icon:a,ariaLabel:"For your information"},warning:{icon:s,ariaLabel:"Warning"},error:{icon:i,ariaLabel:"Error"},success:{icon:r,ariaLabel:"Success"}};const l=["aria-atomic","aria-autocomplete","aria-busy","aria-controls","aria-current","aria-describedby","aria-description","aria-details","aria-disabled","aria-dropeffect","aria-errormessage","aria-expanded","aria-flowto","aria-grabbed","aria-haspopup","aria-hidden","aria-invalid","aria-keyshortcuts","aria-label","aria-labelledby","aria-live","aria-owns","aria-relevant","aria-roledescription"];const d={XS:576,S:768,M:992,L:1200,XL:99999};const u=["ic-hero","ic-top-navigation","ic-footer","ic-side-navigation","ic-alert"];const p=["ic-alert"];const f={"ic-alert":["ic-link","ic-button"]};const v=136.701;const g=130;const b=133.3505;const C="anywhere";const w="ic-input";const m="input.ic-input";const y=(n,t=[])=>{const e={};t.forEach((t=>{if(n.hasAttribute(t)){const i=n.getAttribute(t);if(i!==null){e[t]=i}n.removeAttribute(t)}}));return e};const L=(n,t)=>{const e=n._original||n;return{_original:n,emit:h(e.emit.bind(e),t)}};const h=(n,t=0)=>{let e;return(...i)=>{clearTimeout(e);e=setTimeout(n,t,...i)}};const x=(n,t,e,i,a)=>{if(e!==undefined&&(n||V(t))){const n=t.querySelectorAll(m);const o=Array.from(n);const r=o.filter((n=>t===n.parentElement));let s=r[0];if(s===null||s===undefined){s=t.ownerDocument.createElement("input");s.type="hidden";s.classList.add(w);t.appendChild(s)}s.disabled=!!a;s.name=e;if(i instanceof Date){s.value=i?i.toISOString():""}else{s.value=i||""}}};const M=(n,t,e,i,a,o,r)=>{if(i!==undefined&&V(t)){const s=t.querySelectorAll(m);const c=Array.from(s);const l=c.filter((n=>t===n.parentElement));let d=l[0];if(d===null||d===undefined){d=t.ownerDocument.createElement("input");d.classList.add(w);t.appendChild(d)}d.type="file";d.hidden=true;d.multiple=e;d.name=i;d.disabled=o;if(a)d.files=a;if(r)d.accept=r;d.onchange=()=>{n.emit(d.files)};d.click()}};const N=n=>{const t=n.querySelectorAll("input.ic-input");const e=Array.from(t);const i=e.filter((t=>n===t.parentElement));const a=i[0];a===null||a===void 0?void 0:a.remove()};const V=n=>n?!!n.shadowRoot&&!!n.attachShadow:false;const I=n=>n+"-helper-text";const A=n=>n+"-validation-text";const k=(n,t,e)=>`${t?I(n):""} ${e?A(n):""}`.trim();const $=(n,t=null)=>{var i;const a=n.parentElement||n.getRootNode().host.parentElement;const o=a===null||a===void 0?void 0:a.closest(u.join(","));if(o){const a=o.tagName.toLowerCase();const r=n.tagName.toLowerCase();if((i=f[a])===null||i===void 0?void 0:i.includes(r)){return e.Default}else if(t!==null&&!p.includes(a)){return t}else if(o.classList.contains(`${a}-${e.Dark}`)||o.classList.contains(e.Dark)){return e.Dark}return e.Light}return e.Default};const T=()=>"maxTouchPoints"in navigator&&"userAgent"in navigator?navigator.maxTouchPoints>0&&/iPad|iPhone|iPod|Android|webOS|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent):false;const Z=(n,t)=>{const e=document.createElement("button");t.type&&e.setAttribute("type",t.type);e.style.display="none";n.appendChild(e);e.click();e.remove()};const E=n=>n?n.trim().length===0:true;const H=n=>n!==undefined?n:undefined;const O=(n,t,e="value",i="label")=>{const a=[];if(t.length>0&&t.map){t.map((n=>{if(n.children){n.children.map((n=>a.push(n)))}else{a.push(n)}}));const o=a.find((t=>t[e]===n));if(o!==undefined)return o[i]}return undefined};const S=(n,t,e,i=C,a="label")=>n.filter((n=>{var o;const r=n[a].toLowerCase();const s=(o=n.description)===null||o===void 0?void 0:o.toLowerCase();const c=e.toLowerCase();return i===C?t?r.includes(c)||(s===null||s===void 0?void 0:s.includes(c)):r.includes(c):t?r.startsWith(c)||(s===null||s===void 0?void 0:s.startsWith(c)):r.startsWith(c)}));const P=n=>{const t=[];if(n.length>0&&n.map){n.map((n=>{if(n.children){n.children.map((n=>t.push(n)))}else{t.push(n)}}))}return t.length};const B=n=>window.matchMedia(`(max-width: ${n}px)`).matches;const G=()=>{if(B(q.S)){return q.S}if(B(q.M)){return q.M}if(B(q.L)){return q.L}if(B(q.XL)){return q.XL}return q.UNDEFINED};const D=n=>getComputedStyle(document.documentElement).getPropertyValue(n);const F=()=>{const n=D("--ic-brand-color-primary-r");const t=D("--ic-brand-color-primary-g");const e=D("--ic-brand-color-primary-b");return(parseInt(n)*299+parseInt(t)*587+parseInt(e)*114)/1e3};const R=(n=F())=>n>b?e.Dark:e.Light;const W=(n,t)=>{if(n&&n.querySelector){return n.querySelector(`[slot="${t}"]`)}return null};const X=(n,t)=>W(n,t)!==null;const U=(n,t)=>{const e=W(n,t);if(e){return _(e)}return null};const _=n=>{const t=n.firstElementChild;if(t!==null){const e=t.assignedElements?t.assignedElements():t.childNodes;return e.length?e:n.tagName?[n]:null}else{return n===null?null:[n]}};const j=({parentElement:n})=>{let t={navType:"",parent:null};if(n){switch(n.tagName){case"IC-NAVIGATION-GROUP":t=j(n);break;case"IC-TOP-NAVIGATION":t={navType:"top",parent:n};break;case"IC-SIDE-NAVIGATION":t={navType:"side",parent:n};break;case"IC-PAGE-HEADER":t={navType:"page-header",parent:null};break}}return t};const q={XS:Number(D("--ic-breakpoint-xs").replace("px","")),S:Number(D("--ic-breakpoint-sm").replace("px","")),M:Number(D("--ic-breakpoint-md").replace("px","")),L:Number(D("--ic-breakpoint-lg").replace("px","")),XL:Number(D("--ic-breakpoint-xl").replace("px","")),UNDEFINED:1200};const z=(n,t)=>!!n&&!t;const J=({children:n},t)=>Array.from(n).some((n=>n.getAttribute("slot")===t));const K=(n,t,e)=>{if(n===undefined&&t!==n){e()}};const Q=(n,t)=>{n.forEach((({prop:n,propName:e})=>{if(n===null||n===undefined){console.error(`No ${e} specified for ${t} component - prop '${e}' (web components) / '${Y(e)}' (react) required`)}}))};const Y=n=>n.toLowerCase().split("-").map(((n,t)=>t===0?n:`${n.substring(0,1).toUpperCase()}${n.substring(1)}`)).join("");const nn=n=>{if(typeof window!=="undefined"&&typeof window.ResizeObserver!=="undefined"){n()}};const tn=n=>parseInt(n,16);const en=n=>{const t=n.replace("#","").split("").map((n=>n.repeat(2)));return{r:tn(n.length===4?t[0]:n.slice(1,3)),g:tn(n.length===4?t[1]:n.slice(3,5)),b:tn(n.length===4?t[2]:n.slice(5)),a:1}};const an=n=>{const t=n.slice(3,4).toLowerCase()==="a";const e=n.substring(t?5:4,n.length-1).replace(/ /g,"").split(",").map(Number);return{r:e[0],g:e[1],b:e[2],a:t?e[3]:1}};const on=({scrollWidth:n,clientWidth:t})=>n>t;const rn=()=>!!document.querySelector("ic-classification-banner:not([inline='true'])");const sn=(n,t)=>{var e;(e=n.closest("FORM"))===null||e===void 0?void 0:e.addEventListener("reset",t)};const cn=(n,t)=>{var e;(e=n.closest("FORM"))===null||e===void 0?void 0:e.removeEventListener("reset",t)};const ln=(n,t=16)=>`${1/t*parseInt(n)}rem`;const dn=(n,t)=>{if(!n){t.removeAttribute("disabled")}};const un=()=>window.navigator.userAgent.toUpperCase().indexOf("MAC")>=0;const pn=n=>{const t=n===null||n===void 0?void 0:n.slice(0,1).toLowerCase();return t==="#"?en(n):t==="r"?an(n):null};const fn=n=>n.charAt(0).toUpperCase()+n.slice(1);const vn=(n,t,e)=>{const i=n=>Array.from(n).some((n=>Array.isArray(e)?e.some((t=>n.slot===t)):n.slot===e));return i(n)||i(t)};const gn=n=>!!n.closest(".ag-cell")&&!!n.closest(".ag-root");const bn=n=>{var t;const e=(n===null||n===void 0?void 0:n.tagName)+"-GROUP";return((t=n===null||n===void 0?void 0:n.parentElement)===null||t===void 0?void 0:t.tagName)===e};const Cn=(n,t)=>n.some((({type:n,addedNodes:e,removedNodes:i})=>n==="childList"?vn(e,i,t):false));const wn=(t,e,i)=>{if(Cn(t,e)){n(i)}};export{M as $,S as A,Z as B,L as C,q as D,O as E,vn as F,P as G,T as H,e as I,t as J,E as K,ln as L,F as M,v as N,W as O,bn as P,U as Q,fn as R,r as S,un as T,on as U,c as V,g as W,I as X,A as Y,s as Z,i as _,wn as a,Q as b,pn as c,H as d,G as e,nn as f,R as g,$ as h,J as i,sn as j,cn as k,x as l,N as m,k as n,K as o,z as p,gn as q,dn as r,X as s,_ as t,d as u,rn as v,y as w,l as x,j as y,D as z};
2
+ //# sourceMappingURL=p-269f841d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["IcInformationStatus","IcBrandForegroundEnum","VARIANT_ICONS","neutral","icon","neutralIcon","ariaLabel","info","infoIcon","warning","warningIcon","error","errorIcon","success","successIcon","IC_INHERITED_ARIA","IC_DEVICE_SIZES","XS","S","M","L","XL","IC_BLOCK_COLOR_COMPONENTS","IC_FIXED_COLOR_COMPONENTS","IC_BLOCK_COLOR_EXCEPTIONS","BLACK_MIN_COLOR_BRIGHTNESS","WHITE_MAX_COLOR_BRIGHTNESS","DARK_MODE_THRESHOLD","ANYWHERE_SEARCH_POSITION","icInput","linkIcInput","inheritAttributes","element","attributes","attributeObject","forEach","attr","hasAttribute","value","getAttribute","removeAttribute","debounceEvent","event","wait","original","_original","emit","debounce","bind","func","timer","args","clearTimeout","setTimeout","renderHiddenInput","always","container","name","disabled","undefined","hasShadowDom","inputs","querySelectorAll","inputEls","Array","from","filtered","filter","el","parentElement","input","ownerDocument","createElement","type","classList","add","appendChild","Date","toISOString","renderFileHiddenInput","multiple","accept","hidden","files","onchange","click","removeHiddenInput","remove","shadowRoot","attachShadow","getInputHelperTextID","id","getInputValidationTextID","getInputDescribedByText","inputId","helperText","validationText","trim","getBrandFromContext","brandFromEvent","getRootNode","host","blockColorParent","closest","join","parentTag","tagName","toLowerCase","currentTag","_a","includes","Default","contains","Dark","Light","isMobileOrTablet","navigator","maxTouchPoints","test","userAgent","handleHiddenFormButtonClick","form","button","hiddenFormButton","document","setAttribute","style","display","isEmptyString","length","isPropDefined","prop","getLabelFromValue","options","valueField","labelField","ungroupedOptions","map","option","children","push","matchingValue","find","getFilteredMenuOptions","includeDescriptions","searchString","position","label","description","lowerSearchString","startsWith","getOptionsWithoutGroupTitlesCount","optionsWithoutGroupTitles","deviceSizeMatches","size","window","matchMedia","matches","getCurrentDeviceSize","DEVICE_SIZES","UNDEFINED","getCssProperty","cssVar","getComputedStyle","documentElement","getPropertyValue","getBrandColorBrightness","themeRed","themeGreen","themeBlue","parseInt","getBrandForegroundAppearance","brightness","getSlot","querySelector","slotHasContent","getSlotContent","slot","getSlotElements","slotContent","firstElementChild","elements","assignedElements","childNodes","getNavItemParentDetails","navType","parent","Number","replace","hasValidationStatus","status","isSlotUsed","slotName","some","child","onComponentPropUndefinedChange","oldValue","newValue","callback","onComponentRequiredPropUndefined","props","component","propName","console","kebabToCamelCase","kebabCase","split","word","index","substring","toUpperCase","checkResizeObserver","callbackFn","ResizeObserver","hex2dec","v","hexToRgba","hex","hexChars","char","repeat","r","slice","g","b","a","rgbaStrToObj","rgbaStr","isRGBA","rgbValues","elementOverflowsX","scrollWidth","clientWidth","hasClassificationBanner","addFormResetListener","addEventListener","removeFormResetListener","removeEventListener","pxToRem","px","base","removeDisabledFalse","isMacDevice","indexOf","convertToRGBA","color","firstChar","capitalize","text","charAt","checkSlotInChildMutations","addedNodes","removedNodes","hasSlot","nodeList","node","isArray","isElInAGGrid","isSlottedInGroup","hasDynamicChildSlots","mutationList","slotNames","renderDynamicChildSlots","ref","forceUpdate"],"sources":["src/utils/types.ts","src/utils/constants.ts","src/utils/helpers.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nexport type IcFocusableComponents =\n | HTMLIcBreadcrumbElement\n | HTMLIcButtonElement\n | HTMLIcCardVerticalElement\n | HTMLIcCheckboxElement\n | HTMLIcChipElement\n | HTMLIcLinkElement\n | HTMLIcNavigationButtonElement\n | HTMLIcNavigationGroupElement\n | HTMLIcNavigationItemElement\n | HTMLIcRadioOptionElement\n | HTMLIcSearchBarElement\n | HTMLIcSelectElement\n | HTMLIcSwitchElement\n | HTMLIcTabElement\n | HTMLIcTextFieldElement;\n\nexport type IcStatusVariants =\n | \"neutral\"\n | \"info\"\n | \"warning\"\n | \"error\"\n | \"success\";\n\nexport enum IcInformationStatus {\n Warning = \"warning\",\n Error = \"error\",\n Success = \"success\",\n}\n\nexport type IcSizes = \"medium\" | \"large\" | \"small\";\n\nexport type IcSizesNoLarge = \"medium\" | \"small\";\n\nexport type IcInformationStatusOrEmpty = \"warning\" | \"error\" | \"success\" | \"\";\n\nexport type IcNavType = \"side\" | \"top\" | \"page-header\";\n\n// From: https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete\nexport type IcAutocompleteTypes =\n | \"on\"\n | \"off\"\n | \"name\"\n | \"honorific-prefix\"\n | \"given-name\"\n | \"additional-name\"\n | \"family-name\"\n | \"honorific-suffix\"\n | \"nickname\"\n | \"email\"\n | \"username\"\n | \"new-password\"\n | \"current-password\"\n | \"one-time-code\"\n | \"organization-title\"\n | \"organization\"\n | \"street-address\"\n | \"address-line1\"\n | \"address-line2\"\n | \"address-line3\"\n | \"address-level4\"\n | \"address-level3\"\n | \"address-level2\"\n | \"address-level1\"\n | \"country\"\n | \"country-name\"\n | \"postal-code\"\n | \"cc-name\"\n | \"cc-given-name\"\n | \"cc-additional-name\"\n | \"cc-family-name\"\n | \"cc-family-name\"\n | \"cc-number\"\n | \"cc-exp\"\n | \"cc-exp-month\"\n | \"cc-exp-year\"\n | \"cc-csc\"\n | \"cc-type\"\n | \"transaction-currency\"\n | \"transaction-amount\"\n | \"language\"\n | \"bday\"\n | \"bday-day\"\n | \"bday-month\"\n | \"bday-year\"\n | \"sex\"\n | \"tel\"\n | \"tel-country-code\"\n | \"tel-national\"\n | \"tel-area-code\"\n | \"tel-local\"\n | \"tel-extension\"\n | \"impp\"\n | \"url\"\n | \"photo\";\n\nexport type IcAlignment = \"left\" | \"center\" | \"full-width\";\n\nexport enum IcBrandForegroundEnum {\n Default = \"default\",\n Dark = \"dark\",\n Light = \"light\",\n}\n\nexport type IcThemeMode = \"dark\" | \"light\" | \"inherit\";\n\nexport type IcBrandForeground = \"default\" | \"dark\" | \"light\";\n\nexport type IcBrandForegroundNoDefault = \"dark\" | \"light\";\n\nexport type IcBrand = {\n mode: IcBrandForeground;\n color: IcColorRGB;\n};\n\nexport type IcAdditionalFieldTypes = \"static\" | \"dynamic\";\n\nexport type IcColorRGB = {\n r: number;\n g: number;\n b: number;\n};\n\nexport type IcColorRGBA = IcColorRGB & {\n a: number;\n};\n\nexport type IcActivationTypes = \"automatic\" | \"manual\";\n\nexport type IcAutocorrectStates = \"on\" | \"off\";\n\nexport type IcNavParentDetails = {\n navType: IcNavType | \"\";\n parent: HTMLElement | null;\n};\n\nexport type IcTypographyVariants =\n | \"h1\"\n | \"h2\"\n | \"h3\"\n | \"h4\"\n | \"subtitle-large\"\n | \"subtitle-small\"\n | \"body\"\n | \"label\"\n | \"label-uppercase\"\n | \"caption\"\n | \"caption-uppercase\"\n | \"code-large\"\n | \"code-small\"\n | \"code-extra-small\"\n | \"badge\"\n | \"badge-small\";\n\n/**\n * @interface IcMenuOption\n * @field {string} A label field to options. Defaults to \"label\", but can have any custom name.\n * @field {string} A value field to options. Defaults to \"value\", but can have any custom name.\n */\nexport interface IcMenuOption {\n description?: string;\n disabled?: boolean;\n recommended?: boolean;\n children?: IcMenuOption[];\n loading?: boolean;\n timedOut?: boolean;\n [key: string]: any;\n element?: {\n component: any;\n ariaLabel: string;\n };\n icon?: any;\n}\n\nexport type IcSearchMatchPositions = \"start\" | \"anywhere\";\n\nexport type IcCallbackFunctionNoReturn = (...args: unknown[]) => void;\n\nexport type IcRequiredPropsTypes =\n | string\n | boolean\n | number\n | HTMLElement\n | IcMenuOption[]\n | undefined;\n\nexport type IcPropObject = { prop: IcRequiredPropsTypes; propName: string };\n\nexport type IcRelatedTarget = EventTarget | undefined;\n\nexport type IcOrientation = \"horizontal\" | \"vertical\";\n\nexport type IcEmphasisType = \"filled\" | \"outlined\";\n\nexport interface IcValueEventDetail {\n value: string;\n keyPressed?: string;\n}\n\nexport interface IcMultiValueEventDetail {\n value: string | string[] | null;\n keyPressed?: string;\n}\n\nexport interface IcBlurEventDetail {\n relatedTarget: IcRelatedTarget | null;\n}\n\nexport type IcSelectTypes = \"single\" | \"multi\";\n\nexport type IcSelectMethodTypes = \"auto\" | \"manual\";\n\nexport type IcDeviceSizes = 0 | 576 | 768 | 992 | 1200;\n\ntype RGB = `rgb(${string})`;\ntype RGBA = `rgba(${string})`;\ntype HEX = `#${string}`;\n\nexport type IcColor = RGB | RGBA | HEX;\n\nexport type IcIconPlacementOptions = \"left\" | \"right\" | \"top\";\n\nexport type IcButtonTooltipPlacement = \"top\" | \"right\" | \"bottom\" | \"left\";\n","import errorIcon from \"../assets/error-icon.svg\";\nimport infoIcon from \"../assets/info-icon.svg\";\nimport neutralIcon from \"../assets/neutral-icon.svg\";\nimport successIcon from \"../assets/success-icon.svg\";\nimport warningIcon from \"../assets/warning-icon.svg\";\n\n// Global status icons\nexport const VARIANT_ICONS = {\n neutral: {\n icon: neutralIcon,\n ariaLabel: \"Neutral\",\n },\n info: {\n icon: infoIcon,\n ariaLabel: \"For your information\",\n },\n warning: {\n icon: warningIcon,\n ariaLabel: \"Warning\",\n },\n error: {\n icon: errorIcon,\n ariaLabel: \"Error\",\n },\n success: {\n icon: successIcon,\n ariaLabel: \"Success\",\n },\n};\n\n// Global ARIA attributes\nexport const IC_INHERITED_ARIA = [\n \"aria-atomic\",\n \"aria-autocomplete\",\n \"aria-busy\",\n \"aria-controls\",\n \"aria-current\",\n \"aria-describedby\",\n \"aria-description\",\n \"aria-details\",\n \"aria-disabled\",\n \"aria-dropeffect\",\n \"aria-errormessage\",\n \"aria-expanded\",\n \"aria-flowto\",\n \"aria-grabbed\",\n \"aria-haspopup\",\n \"aria-hidden\",\n \"aria-invalid\",\n \"aria-keyshortcuts\",\n \"aria-label\",\n \"aria-labelledby\",\n \"aria-live\",\n \"aria-owns\",\n \"aria-relevant\",\n \"aria-roledescription\",\n];\n\nexport const IC_DEVICE_SIZES = {\n XS: 576,\n S: 768,\n M: 992,\n L: 1200,\n XL: 99999,\n};\n\nexport const IC_BLOCK_COLOR_COMPONENTS = [\n \"ic-hero\",\n \"ic-top-navigation\",\n \"ic-footer\",\n \"ic-side-navigation\",\n \"ic-alert\",\n];\n\nexport const IC_FIXED_COLOR_COMPONENTS = [\"ic-alert\"];\n\nexport interface IcColorExceptions {\n [details: string]: string[];\n}\n\nexport const IC_BLOCK_COLOR_EXCEPTIONS: IcColorExceptions = {\n \"ic-alert\": [\"ic-link\", \"ic-button\"],\n};\n\n/* Range within which the chosen theme colour would not have a sufficient brightness difference with either of the black or white foreground colours\n * The brightness difference must be greater than 125 to provide good colour visibility\n * Calculated by:\n * - Using the brightness formula for both colours: https://www.w3.org/TR/AERT/#color-contrast\n * - Adding 125 to the brightness of the black foreground colour - RGB(11, 12, 12)\n * - Subtracting 125 from the brightness of the white foreground colour - RGB(255, 255, 255)\n */\nexport const BLACK_MIN_COLOR_BRIGHTNESS = 136.701;\nexport const WHITE_MAX_COLOR_BRIGHTNESS = 130;\n","import { EventEmitter, forceUpdate } from \"@stencil/core\";\nimport {\n IcCallbackFunctionNoReturn,\n IcInformationStatusOrEmpty,\n IcNavParentDetails,\n IcPropObject,\n IcSearchMatchPositions,\n IcColorRGBA,\n IcDeviceSizes,\n IcColor,\n IcBrandForegroundNoDefault,\n} from \"./types\";\n\nimport {\n IcMenuOption,\n IcBrandForeground,\n IcBrandForegroundEnum,\n} from \"../utils/types\";\nimport {\n IC_BLOCK_COLOR_COMPONENTS,\n IC_BLOCK_COLOR_EXCEPTIONS,\n IC_FIXED_COLOR_COMPONENTS,\n} from \"./constants\";\n\nconst DARK_MODE_THRESHOLD = 133.3505;\nconst ANYWHERE_SEARCH_POSITION = \"anywhere\";\nconst icInput = \"ic-input\";\nconst linkIcInput = \"input.ic-input\";\n\n/**\n * converts an enum of strings into an array of strings\n */\nexport const stringEnumToArray = (\n theEnum: Record<string, string | number>\n): string[] => {\n const arr: string[] = [];\n Object.values(theEnum).forEach((val) => {\n if (isNaN(Number(val))) {\n const str = val as string;\n arr.push(str);\n }\n });\n return arr;\n};\n\n/**\n * Used to inherit global attributes set on the host. Called in componentWillLoad and assigned\n * to a variable that is later used in the render function.\n *\n * This does not need to be reactive as changing attributes on the host element\n * does not trigger a re-render.\n */\nexport const inheritAttributes = (\n element: HTMLElement,\n attributes: string[] = []\n): { [key: string]: string } => {\n const attributeObject: { [key: string]: string } = {};\n\n attributes.forEach((attr) => {\n if (element.hasAttribute(attr)) {\n const value = element.getAttribute(attr);\n if (value !== null) {\n attributeObject[attr] = value;\n }\n element.removeAttribute(attr);\n }\n });\n\n return attributeObject;\n};\n\nexport const debounceEvent = (\n event: EventEmitter,\n wait: number\n): EventEmitter => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const original = (event as any)._original || event;\n return {\n _original: event,\n emit: debounce(original.emit.bind(original), wait),\n } as EventEmitter;\n};\n\nexport const debounce = (\n func: (...args: unknown[]) => void,\n wait = 0\n): unknown => {\n let timer: ReturnType<typeof setTimeout>;\n return (...args: unknown[]) => {\n clearTimeout(timer);\n timer = setTimeout(func, wait, ...args);\n };\n};\n\n/**\n * This method is used to add a hidden input to a host element that contains\n * a Shadow DOM. It does not add the input inside of the Shadow root which\n * allows it to be picked up inside of forms. It should contain the same\n * values as the host element.\n *\n * @param always Add a hidden input even if the container does not use Shadow\n * @param container The element where the input will be added\n * @param name The name of the input\n * @param value The value of the input\n * @param disabled If true, the input is disabled\n */\nexport const renderHiddenInput = (\n always: boolean,\n container: HTMLElement,\n name: string,\n value: string | Date | undefined | null,\n disabled: boolean | undefined\n): void => {\n if (name !== undefined && (always || hasShadowDom(container))) {\n const inputs = container.querySelectorAll(linkIcInput);\n const inputEls = Array.from(inputs);\n const filtered = inputEls.filter((el) => container === el.parentElement);\n\n let input = filtered[0] as HTMLInputElement;\n if (input === null || input === undefined) {\n input = container.ownerDocument.createElement(\"input\");\n input.type = \"hidden\";\n input.classList.add(icInput);\n container.appendChild(input);\n }\n input.disabled = !!disabled;\n input.name = name;\n\n if (value instanceof Date) {\n input.value = value ? value.toISOString() : \"\";\n } else {\n input.value = value || \"\";\n }\n }\n};\n\n/**\n * This method is used to add a hidden file input to a host element that contains\n * a Shadow DOM. It does not add the input inside of the Shadow root which\n * allows it to be picked up inside of forms. It should contain the same\n * values as the host element.\n *\n * @param event: The event that is emitted once a file is selected.\n * @param container The element where the input will be added\n * @param multiple If true, multiple files can be selected\n * @param name The name of the input\n * @param value The value of the input\n * @param disabled If true, the input is disabled\n * @param accept A string of the accepted files\n */\nexport const renderFileHiddenInput = (\n event: EventEmitter,\n container: HTMLElement,\n multiple: boolean,\n name: string,\n value: FileList | undefined | null,\n disabled: boolean,\n accept: string | undefined | null\n): void => {\n if (name !== undefined && hasShadowDom(container)) {\n const inputs = container.querySelectorAll(linkIcInput);\n const inputEls = Array.from(inputs);\n const filtered = inputEls.filter((el) => container === el.parentElement);\n\n let input = filtered[0] as HTMLInputElement;\n if (input === null || input === undefined) {\n input = container.ownerDocument.createElement(\"input\");\n input.classList.add(icInput);\n container.appendChild(input);\n }\n input.type = \"file\";\n input.hidden = true;\n input.multiple = multiple;\n input.name = name;\n input.disabled = disabled;\n\n if (value) input.files = value;\n if (accept) input.accept = accept;\n\n input.onchange = () => {\n event.emit(input.files);\n };\n input.click();\n }\n};\n\nexport const removeHiddenInput = (container: HTMLElement): void => {\n const inputs = container.querySelectorAll(\"input.ic-input\");\n const inputEls = Array.from(inputs);\n const filtered = inputEls.filter((el) => container === el.parentElement);\n const input = filtered[0] as HTMLInputElement;\n input?.remove();\n};\n\nexport const hasShadowDom = (el: HTMLElement | null | undefined): boolean =>\n el ? !!el.shadowRoot && !!el.attachShadow : false;\n\nexport const getInputHelperTextID = (id: string): string => id + \"-helper-text\";\n\nexport const getInputValidationTextID = (id: string): string =>\n id + \"-validation-text\";\n\nexport const getInputDescribedByText = (\n inputId: string,\n helperText: boolean,\n validationText: boolean\n): string =>\n `${helperText ? getInputHelperTextID(inputId) : \"\"} ${\n validationText ? getInputValidationTextID(inputId) : \"\"\n }`.trim();\n\n/**\n * This method helps to understand the context in which a component exists,\n * to assist with choosing appropriate foreground colours to use. For example,\n * this method will help you use the 'white' version of a button if it's within\n * a block colour element using white foreground text.\n *\n * This only works for components/elements passed via <slot> and not if they\n * are part of an IC component.\n *\n * \"\"\n * @returns IcBrandForeground depending on the context\n */\nexport const getBrandFromContext = (\n el: Element,\n brandFromEvent: IcBrandForeground | null = null\n): IcBrandForeground => {\n const parentElement =\n el.parentElement || (<ShadowRoot>el.getRootNode()).host.parentElement;\n const blockColorParent = parentElement?.closest(\n IC_BLOCK_COLOR_COMPONENTS.join(\",\")\n );\n\n // If within a block color component\n if (blockColorParent) {\n const parentTag = blockColorParent.tagName.toLowerCase();\n const currentTag = el.tagName.toLowerCase();\n\n if (IC_BLOCK_COLOR_EXCEPTIONS[parentTag]?.includes(currentTag)) {\n return IcBrandForegroundEnum.Default;\n } else if (\n brandFromEvent !== null &&\n !IC_FIXED_COLOR_COMPONENTS.includes(parentTag)\n ) {\n return brandFromEvent;\n } else if (\n blockColorParent.classList.contains(\n `${parentTag}-${IcBrandForegroundEnum.Dark}`\n ) ||\n blockColorParent.classList.contains(IcBrandForegroundEnum.Dark)\n ) {\n return IcBrandForegroundEnum.Dark;\n }\n\n return IcBrandForegroundEnum.Light;\n }\n\n return IcBrandForegroundEnum.Default;\n};\n\n/**\n * Checks if the current device is a mobile or tablet device.\n * @returns {boolean} Returns true if the device is a mobile or tablet device, otherwise returns false.\n */\nexport const isMobileOrTablet = (): boolean =>\n \"maxTouchPoints\" in navigator && \"userAgent\" in navigator\n ? navigator.maxTouchPoints > 0 &&\n /iPad|iPhone|iPod|Android|webOS|BlackBerry|IEMobile|Opera Mini/i.test(\n navigator.userAgent\n )\n : false;\n\n/**\n * Will create a button within the lightDOM which interacts with the parent form.\n * This is required as buttons within the shadowDOM will not invoke a submit or reset\n *\n * @param form - parent form element which contains shadowDom button\n * @param button - shadowDOM button\n */\nexport const handleHiddenFormButtonClick = (\n form: HTMLFormElement,\n button: HTMLIcButtonElement | HTMLButtonElement\n): void => {\n const hiddenFormButton = document.createElement(\"button\");\n\n button.type && hiddenFormButton.setAttribute(\"type\", button.type);\n hiddenFormButton.style.display = \"none\";\n\n form.appendChild(hiddenFormButton);\n\n hiddenFormButton.click();\n hiddenFormButton.remove();\n};\n\nexport const isEmptyString = (value: string): boolean =>\n value ? value.trim().length === 0 : true;\n\n// A helper function that checks if a prop has been defined\nexport const isPropDefined = (prop: string | undefined): string | undefined =>\n prop !== undefined ? prop : undefined;\n\n/**\n * Extracts the label using the value from an object. Requires the object to have a label and value property.\n * @param value - value from object\n * @param options - list of menu items\n * @returns - label corresponding to value\n */\nexport const getLabelFromValue = (\n value: string,\n options: IcMenuOption[],\n valueField = \"value\",\n labelField = \"label\"\n): string | undefined => {\n const ungroupedOptions: IcMenuOption[] = [];\n if (options.length > 0 && options.map) {\n options.map((option) => {\n if (option.children) {\n option.children.map((option: IcMenuOption) =>\n ungroupedOptions.push(option)\n );\n } else {\n ungroupedOptions.push(option);\n }\n });\n const matchingValue = ungroupedOptions.find(\n (option) => option[valueField] === value\n );\n if (matchingValue !== undefined) return matchingValue[labelField];\n }\n\n return undefined;\n};\n\n/**\n * Filters the options based on the search string.\n * @param options - array of options\n * @param includeDescriptions - determines whether option descriptions are included when filtering options\n * @param searchString - string used to filter the options\n * @param position - whether the search string matches the start of or anywhere in the options\n * @returns filtered array of options\n */\nexport const getFilteredMenuOptions = (\n options: IcMenuOption[],\n includeDescriptions: boolean,\n searchString: string,\n position: IcSearchMatchPositions = ANYWHERE_SEARCH_POSITION,\n labelField = \"label\"\n): IcMenuOption[] =>\n options.filter((option) => {\n const label: string = option[labelField].toLowerCase();\n const description = option.description?.toLowerCase();\n const lowerSearchString = searchString.toLowerCase();\n\n return position === ANYWHERE_SEARCH_POSITION\n ? includeDescriptions\n ? label.includes(lowerSearchString) ||\n description?.includes(lowerSearchString)\n : label.includes(lowerSearchString)\n : includeDescriptions\n ? label.startsWith(lowerSearchString) ||\n description?.startsWith(lowerSearchString)\n : label.startsWith(lowerSearchString);\n });\n\n/**\n * Gets count of options where only group title \"parent\" options have been removed.\n * Disabled options are included in the count.\n * @param options - array of options\n * @returns number of options not including group titles\n */\nexport const getOptionsWithoutGroupTitlesCount = (\n options: IcMenuOption[]\n): number => {\n const optionsWithoutGroupTitles: IcMenuOption[] = [];\n\n if (options.length > 0 && options.map) {\n options.map((option) => {\n if (option.children) {\n option.children.map((option) => optionsWithoutGroupTitles.push(option));\n } else {\n optionsWithoutGroupTitles.push(option);\n }\n });\n }\n\n return optionsWithoutGroupTitles.length;\n};\n\nexport const deviceSizeMatches = (size: number): boolean =>\n window.matchMedia(`(max-width: ${size}px)`).matches;\n\nexport const getCurrentDeviceSize = (): number => {\n if (deviceSizeMatches(DEVICE_SIZES.S)) {\n return DEVICE_SIZES.S;\n }\n if (deviceSizeMatches(DEVICE_SIZES.M)) {\n return DEVICE_SIZES.M;\n }\n if (deviceSizeMatches(DEVICE_SIZES.L)) {\n return DEVICE_SIZES.L;\n }\n if (deviceSizeMatches(DEVICE_SIZES.XL)) {\n return DEVICE_SIZES.XL;\n }\n //fallback needed as all of above get initialised to 0 in jest tests\n return DEVICE_SIZES.UNDEFINED;\n};\n\nexport const getCssProperty = (cssVar: string): string =>\n getComputedStyle(document.documentElement).getPropertyValue(cssVar);\n\n/**\n * Returns the brightness of the theme colour, calculated by using the theme RGB CSS values by:\n * - Multiplying each RGB value by a set number: https://www.w3.org/TR/AERT/#color-contrast\n * - Adding them together and dividing by 1000\n * This is a similar calculation to its CSS counterpart: \"--ic-brand-text-color\"\n * @returns number representing the brightness of the theme colour\n */\nexport const getBrandColorBrightness = (): number => {\n const themeRed = getCssProperty(\"--ic-brand-color-primary-r\");\n const themeGreen = getCssProperty(\"--ic-brand-color-primary-g\");\n const themeBlue = getCssProperty(\"--ic-brand-color-primary-b\");\n return (\n (parseInt(themeRed) * 299 +\n parseInt(themeGreen) * 587 +\n parseInt(themeBlue) * 114) /\n 1000\n );\n};\n\n/**\n * Returns if dark or light foreground colors should be used for color contrast reasons\n * @returns \"dark\" or \"light\"\n * @param brightness - Optional custom brightness value. Defaults to `getBrandColorBrightness`\n */\nexport const getBrandForegroundAppearance = (\n brightness = getBrandColorBrightness()\n): IcBrandForegroundNoDefault =>\n brightness > DARK_MODE_THRESHOLD\n ? IcBrandForegroundEnum.Dark\n : IcBrandForegroundEnum.Light;\n\nexport const getSlot = (\n element: HTMLElement | undefined,\n name: string\n): Element | null => {\n if (element && element.querySelector) {\n return element.querySelector(`[slot=\"${name}\"]`);\n }\n return null;\n};\n\nexport const slotHasContent = (element: HTMLElement, name: string): boolean =>\n getSlot(element, name) !== null;\n\nexport const getSlotContent = (\n element: HTMLElement,\n name: string\n): Element[] | NodeListOf<ChildNode> | null => {\n const slot = getSlot(element, name);\n if (slot) {\n return getSlotElements(slot);\n }\n\n return null;\n};\n\nexport const getSlotElements = (\n slot: Element\n): NodeListOf<ChildNode> | Element[] | null => {\n const slotContent = slot.firstElementChild as HTMLSlotElement;\n\n if (slotContent !== null) {\n const elements = slotContent.assignedElements\n ? slotContent.assignedElements()\n : slotContent.childNodes;\n return elements.length ? elements : slot.tagName ? [slot] : null;\n } else {\n //check for single element\n return slot === null ? null : [slot];\n }\n};\n\nexport const getNavItemParentDetails = ({\n parentElement,\n}: HTMLElement): IcNavParentDetails => {\n let navType: IcNavParentDetails = { navType: \"\", parent: null };\n if (parentElement) {\n switch (parentElement.tagName) {\n case \"IC-NAVIGATION-GROUP\":\n navType = getNavItemParentDetails(parentElement);\n break;\n case \"IC-TOP-NAVIGATION\":\n navType = { navType: \"top\", parent: parentElement };\n break;\n case \"IC-SIDE-NAVIGATION\":\n navType = { navType: \"side\", parent: parentElement };\n break;\n case \"IC-PAGE-HEADER\":\n navType = { navType: \"page-header\", parent: null };\n break;\n }\n }\n\n return navType;\n};\n\nexport const DEVICE_SIZES = {\n XS: Number(\n getCssProperty(\"--ic-breakpoint-xs\").replace(\"px\", \"\")\n ) as IcDeviceSizes, // 0\n S: Number(\n getCssProperty(\"--ic-breakpoint-sm\").replace(\"px\", \"\")\n ) as IcDeviceSizes, // 576\n M: Number(\n getCssProperty(\"--ic-breakpoint-md\").replace(\"px\", \"\")\n ) as IcDeviceSizes, // 768\n L: Number(\n getCssProperty(\"--ic-breakpoint-lg\").replace(\"px\", \"\")\n ) as IcDeviceSizes, // 992\n XL: Number(\n getCssProperty(\"--ic-breakpoint-xl\").replace(\"px\", \"\")\n ) as IcDeviceSizes, // 1200\n UNDEFINED: 1200,\n};\n\nexport const hasValidationStatus = (\n status?: IcInformationStatusOrEmpty,\n disabled?: boolean\n): boolean => !!status && !disabled;\n\nexport const isSlotUsed = (\n { children }: HTMLElement,\n slotName: string\n): boolean =>\n Array.from(children).some((child) => child.getAttribute(\"slot\") === slotName);\n\n// added as a common method to allow detection of gatsby hydration issue, where (camelCase) props are initially undefined & then update\n// with a value. Allows a callback function to be executed when this is the case\nexport const onComponentPropUndefinedChange = (\n oldValue: string | undefined,\n newValue: string | undefined,\n callback: IcCallbackFunctionNoReturn\n): void => {\n if (oldValue === undefined && newValue !== oldValue) {\n callback();\n }\n};\n\nexport const onComponentRequiredPropUndefined = (\n props: IcPropObject[],\n component: string\n): void => {\n props.forEach(({ prop, propName }) => {\n if (prop === null || prop === undefined) {\n console.error(\n `No ${propName} specified for ${component} component - prop '${propName}' (web components) / '${kebabToCamelCase(\n propName\n )}' (react) required`\n );\n }\n });\n};\n\nexport const kebabToCamelCase = (kebabCase: string): string =>\n kebabCase\n .toLowerCase()\n .split(\"-\")\n .map((word, index) =>\n index === 0\n ? word\n : `${word.substring(0, 1).toUpperCase()}${word.substring(1)}`\n )\n .join(\"\");\n\nexport const checkResizeObserver = (\n callbackFn: IcCallbackFunctionNoReturn\n): void => {\n if (\n typeof window !== \"undefined\" &&\n typeof window.ResizeObserver !== \"undefined\"\n ) {\n callbackFn();\n }\n};\n\nconst hex2dec = (v: string) => parseInt(v, 16);\n\nexport const hexToRgba = (hex: string): IcColorRGBA => {\n const hexChars = hex\n .replace(\"#\", \"\")\n .split(\"\")\n .map((char) => char.repeat(2));\n return {\n r: hex2dec(hex.length === 4 ? hexChars[0] : hex.slice(1, 3)),\n g: hex2dec(hex.length === 4 ? hexChars[1] : hex.slice(3, 5)),\n b: hex2dec(hex.length === 4 ? hexChars[2] : hex.slice(5)),\n a: 1,\n };\n};\n\nexport const rgbaStrToObj = (rgbaStr: string): IcColorRGBA => {\n const isRGBA = rgbaStr.slice(3, 4).toLowerCase() === \"a\";\n const rgbValues = rgbaStr\n .substring(isRGBA ? 5 : 4, rgbaStr.length - 1)\n .replace(/ /g, \"\")\n .split(\",\")\n .map(Number);\n return {\n r: rgbValues[0],\n g: rgbValues[1],\n b: rgbValues[2],\n a: isRGBA ? rgbValues[3] : 1,\n };\n};\n\nexport const elementOverflowsX = ({\n scrollWidth,\n clientWidth,\n}: HTMLElement): boolean => scrollWidth > clientWidth;\n\nexport const hasClassificationBanner = (): boolean =>\n !!document.querySelector(\"ic-classification-banner:not([inline='true'])\");\n\nexport const addFormResetListener = (\n el: HTMLElement,\n callbackFn: IcCallbackFunctionNoReturn\n): void => {\n el.closest(\"FORM\")?.addEventListener(\"reset\", callbackFn);\n};\n\nexport const removeFormResetListener = (\n el: HTMLElement,\n callbackFn: IcCallbackFunctionNoReturn\n): void => {\n el.closest(\"FORM\")?.removeEventListener(\"reset\", callbackFn);\n};\n\nexport const pxToRem = (px: string, base = 16): string =>\n `${(1 / base) * parseInt(px)}rem`;\n\n/**\n * Removes the disabled attribute from the provided element when its value is set to false.\n * This effectively makes it null, to not confuse screen readers that cannot interpret the false value\n */\nexport const removeDisabledFalse = (\n disabled: boolean | undefined,\n element: HTMLElement\n): void => {\n if (!disabled) {\n element.removeAttribute(\"disabled\");\n }\n};\n\nexport const isMacDevice = (): boolean =>\n window.navigator.userAgent.toUpperCase().indexOf(\"MAC\") >= 0;\n\nexport const isNumeric = (value: string): boolean => /^-?\\d+$/.test(value);\n\nexport async function waitForHydration(): Promise<boolean> {\n const elements = document.getElementsByTagName(\"*\");\n\n for (let i = 0; i < elements.length; i++) {\n if (elements[i].tagName.startsWith(\"IC-\")) {\n if (elements[i].classList.contains(\"hydrated\")) {\n return true;\n }\n } else {\n return false;\n }\n }\n\n return false;\n}\n\nexport const convertToRGBA = (color: IcColor): IcColorRGBA | null => {\n const firstChar = color?.slice(0, 1).toLowerCase();\n return firstChar === \"#\"\n ? hexToRgba(color)\n : firstChar === \"r\"\n ? rgbaStrToObj(color)\n : null;\n};\n\nexport const capitalize = (text: string): string =>\n text.charAt(0).toUpperCase() + text.slice(1);\n\nexport const checkSlotInChildMutations = (\n addedNodes: NodeList,\n removedNodes: NodeList,\n slotName: string | string[]\n): boolean => {\n const hasSlot = (nodeList: NodeList) =>\n Array.from(nodeList).some((node) =>\n Array.isArray(slotName)\n ? slotName.some((name) => (node as Element).slot === name)\n : (node as Element).slot === slotName\n );\n return hasSlot(addedNodes) || hasSlot(removedNodes);\n};\n\nexport const isElInAGGrid = (el: HTMLElement): boolean =>\n !!el.closest(\".ag-cell\") && !!el.closest(\".ag-root\");\n\n/*\n * Checks if the component is slotted in its relevant 'group' component\n * @param component - the component to check\n */\nexport const isSlottedInGroup = (component: any): boolean => {\n const parent = component?.tagName + \"-GROUP\";\n return component?.parentElement?.tagName === parent;\n};\n\nexport const hasDynamicChildSlots = (\n mutationList: MutationRecord[],\n slotNames: string | string[]\n) => {\n return mutationList.some(({ type, addedNodes, removedNodes }) =>\n type === \"childList\"\n ? checkSlotInChildMutations(addedNodes, removedNodes, slotNames)\n : false\n );\n};\n\nexport const renderDynamicChildSlots = (\n mutationList: MutationRecord[],\n slotNames: string | string[],\n ref: any\n): void => {\n if (hasDynamicChildSlots(mutationList, slotNames)) {\n forceUpdate(ref);\n }\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- import{r as i,c as t,h as e,f as a,H as n,g as o}from"./p-6b5e91e2.js";import{z as s,i as r,D as d,g as c,e as l,y as v}from"./p-cda4aca9.js";import{C as h}from"./p-3b185c32.js";import{O as g}from"./p-426ec638.js";const m='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;--navigation-link-colour:var(--ic-brand-text-color)}:host(:focus-within){z-index:var(--ic-z-index-navigation-item)}svg{width:var(--ic-space-xl);fill:var(--ic-brand-text-color)}.svg{margin-left:auto}.chevron-container svg,.chevron-container .svg{width:var(--ic-space-lg);height:var(--ic-space-lg)}.chevron-container{flex-grow:1}:host(.expandable.navigation-item) .link,:host(.expandable.navigation-item) ::slotted(a){padding-right:0}:host(.navigation-item) .link,:host(.navigation-item) ::slotted(a){height:calc(100% - var(--ic-space-xxs));width:-moz-fit-content;width:fit-content;color:var(--navigation-link-colour);display:flex;align-items:center;justify-content:center;padding:0 var(--ic-space-md) var(--ic-space-xxs);text-decoration:none;transition:var(--ic-easing-transition-fast);position:relative;white-space:nowrap}:host(.navigation-item) ::slotted(a){height:100%;font:var(--ic-font-label) !important;letter-spacing:var(--ic-font-letter-spacing-0pt025) !important;padding:0 var(--ic-space-md) !important}:host(.navigation-item-selected) .link::after,:host(.navigation-item-selected) ::slotted(a.active)::after,:host(.navigation-item-top-nav) ::slotted(a.active)::after{content:"";height:0.25rem;width:100%;position:absolute;bottom:0;background-color:var(--ic-top-navigation-theme)}:host(.navigation-item-selected.navigation-item-page-header) ::slotted(a.active)::after,:host(.navigation-item-selected.navigation-item-page-header) .link::after,:host(.navigation-item.navigation-item-page-header) ::slotted(a.active)::after,:host(.navigation-item-top-nav-child) ::slotted(a.active)::after{content:none}:host(.navigation-item-side-menu-selected) .link,:host(.navigation-item-side-menu) ::slotted(a.active),:host(.navigation-item-top-nav-child) ::slotted(a.active){box-shadow:none}:host(.navigation-item) .link:hover:not(:focus){background-color:var(--ic-brand-hover);cursor:pointer}:host(.navigation-item:not(.navigation-item-page-header,.navigation-item-side-menu)) ::slotted(a:hover:not(:focus)){background-color:var(--ic-brand-hover) !important}:host(.navigation-item:not(.navigation-item-top-nav-child,.navigation-item-side-menu,.navigation-item-top-nav-child-selected .navigation-item-side-menu-selected)) .focus-indicator:focus-within{box-shadow:var(--ic-border-focus);border-radius:var(--ic-border-radius)}:host(.navigation-item) .link:focus,:host(.navigation-item) ::slotted(a:focus){box-shadow:var(--ic-border-focus);border-radius:var(--ic-border-radius);outline:var(--ic-hc-focus-outline)}:host(.navigation-item-selected) .link:focus,:host(.navigation-item) ::slotted(a.active:focus){box-shadow:var(--ic-border-focus);border-radius:var(--ic-border-radius);outline:var(--ic-hc-focus-outline)}:host(.navigation-item) .link:active:not(:focus),:host(.navigation-item) ::slotted(a:active:not(:focus)){background-color:var(--ic-brand-active)}:host(.navigation-item-side-menu) .link,:host(.navigation-item-side-menu) ::slotted(a){min-height:2.5rem;height:auto;width:100%;box-sizing:border-box;color:var(--ic-top-navigation-nav-item);--ic-typography-color:var(--ic-top-navigation-nav-item);display:flex;align-items:center;justify-content:flex-start;text-decoration:none;text-wrap:wrap;white-space:normal;transition:box-shadow var(--ic-transition-duration-fast),\n border-radius var(--ic-transition-duration-fast)}:host(.navigation-item-side-menu) ::slotted(a){font:var(--ic-font-body) !important;letter-spacing:var(--ic-font-letter-spacing-0pt005) !important;transition:box-shadow var(--ic-easing-transition-fast),\n background-color var(--ic-easing-transition-fast)}:host(.navigation-item-side-menu) .link:hover:not(:focus){background-color:var(--ic-top-navigation-nav-item-hover)}:host(.navigation-item-side-menu) ::slotted(a:hover:not(:focus)){background-color:var(--ic-top-navigation-nav-item-hover) !important}:host(.navigation-item-side-menu) .focus-indicator:focus-within{box-shadow:none}:host(.navigation-item-side-menu) .link:focus,:host(.navigation-item-side-menu) ::slotted(a:focus){box-shadow:var(--ic-border-focus-inset) !important;width:auto;border-radius:var(--ic-border-radius-inset) !important}:host(.navigation-item-side-menu-selected) .link,:host(.navigation-item-side-menu-selected) ::slotted(a){transition:box-shadow var(--ic-easing-transition-slow),\n background-color var(--ic-easing-transition-slow)}:host(.navigation-item-side-menu-selected) .link:focus,:host(.navigation-item-side-menu) ::slotted(a.active:focus),:host(.navigation-item-top-nav-child) ::slotted(a.active:focus){margin-left:var(--ic-space-xs) !important;padding-left:var(--ic-space-xs) !important}:host(.navigation-item-top-nav-child) .link,:host(.navigation-item-top-nav-child) ::slotted(a){height:2.5rem;width:-moz-fit-content;width:fit-content;min-width:9.063rem;color:var(--ic-top-navigation-nav-item);display:flex;align-items:center;justify-content:flex-start;padding:0 var(--ic-space-md) !important;text-decoration:none;position:relative;transition:box-shadow var(--ic-transition-duration-fast),\n border-radius var(--ic-transition-duration-slow)}:host(.navigation-item-top-nav-child) ::slotted(a){font:var(--ic-font-body) !important;letter-spacing:var(--ic-font-letter-spacing-0pt005) !important}:host(.navigation-item-top-nav-child) .link:hover:not(:focus){background-color:var(--ic-top-navigation-nav-item-hover) !important}:host(.navigation-item-top-nav-child) ::slotted(a:hover):not(:focus){background-color:var(--ic-top-navigation-nav-item-hover) !important}:host(.navigation-item-top-nav-child) .link:focus,:host(.navigation-item-top-nav-child) ::slotted(a:focus){z-index:1;outline:var(--ic-hc-focus-outline);border-radius:var(--ic-border-radius-inset);box-shadow:var(--ic-border-focus-inset);transition:border-radius 0s, box-shadow var(--ic-transition-duration-fast)}:host(.navigation-item-top-nav-child) ::slotted(a.active:focus){box-shadow:var(--ic-border-focus-inset);border-radius:var(--ic-border-radius-inset)}:host(.navigation-item-side-menu) .link:active:not(:focus){background-color:var(--ic-top-navigation-nav-item-pressed)}:host(.navigation-item-top-nav-child) .link:active:not(:focus),:host(.navigation-item-top-nav-child) ::slotted(a:active):not(:focus){outline:var(--ic-hc-focus-outline);background-color:var(--ic-top-navigation-nav-item-pressed)}:host(.navigation-item-top-nav-child) ::slotted(a:active):not(:focus),:host(.navigation-item-side-menu) ::slotted(a:active):not(:focus){background-color:var(--ic-top-navigation-nav-item-pressed) !important}:host(.navigation-item-side-menu-selected) *,:host(.navigation-item-top-nav-child-selected) *,:host(.navigation-item-side-menu) ::slotted(a.active),:host(.navigation-item-top-nav-child) ::slotted(a.active){font-weight:700 !important}:host(.navigation-item-top-nav-child) ::slotted(a.active)::before,:host(.navigation-item-top-nav-child-selected) .link::before,:host(.navigation-item-side-menu-selected) .link::before,:host(.navigation-item-side-menu) ::slotted(a.active)::before,:host(.navigation-item-side-menu-selected) .link:focus::before,:host(.navigation-item-side-menu) ::slotted(a.active:focus)::before{content:"";position:absolute;left:0;width:var(--ic-space-xs);height:inherit;min-height:2.5rem;background-color:var(--ic-top-navigation-nav-item-banner);transition:left 0s}:host(.navigation-item-side-menu-selected) .link::before,:host(.navigation-item-side-menu-selected) .link:focus::before{margin-top:var(--ic-space-xxs)}:host(.navigation-item-top-nav-child-selected) .link:focus{margin-left:var(--ic-space-xs);margin-right:calc(-1 * var(--ic-space-xs));padding-left:var(--ic-space-xs) !important}:host(.navigation-item-top-nav-child-selected) .link:focus::before{left:calc(-1 * var(--ic-space-xs));z-index:1}:host(.navigation-item-side-menu-selected) .link::before,:host(.navigation-item-side-menu) ::slotted(a.active)::before,:host(.navigation-item-side-menu-selected) .link:focus::before,:host(.navigation-item-side-menu) ::slotted(a.active:focus)::before{z-index:1}:host(.navigation-item-side-menu-selected) .link:focus::before,:host(.navigation-item-side-menu) ::slotted(a.active:focus)::before,:host(.navigation-item-top-nav-child) ::slotted(a.active:focus)::before{left:calc(-1 * var(--ic-space-xs))}:host(.navigation-item-side-menu-selected) .link::after{display:none}:host(.navigation-item-side-nav-collapsed) .link{height:100%}:host(.navigation-item-side-nav-collapsed) ::slotted(svg),:host(.navigation-item-side-nav-collapsed-with-label) ::slotted(svg){margin:auto;pointer-events:none}:host(.navigation-item-side-nav-collapsed) .icon,:host(.navigation-item-side-nav-collapsed-with-label) .icon,:host(.navigation-item-side-nav-collapsed-with-label) ic-typography{align-items:center;padding:0;margin:auto 0;width:-moz-fit-content;width:fit-content;pointer-events:none}:host(.navigation-item-side-nav-collapsed-with-label) ic-typography{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;text-align:center}:host(.navigation-item-side-nav-collapsed-with-label) .link,:host(.navigation-item-side-nav-collapsed-with-label) ::slotted(a){display:flex;flex-direction:column;height:-moz-fit-content;height:fit-content;padding:var(--ic-space-xs) !important;gap:var(--ic-space-xxs)}:host(.navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label) .link,:host(.navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label) ::slotted(a){height:auto !important;gap:0;width:auto;padding:var(--ic-space-xs) !important}:host(.navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label) ::slotted(a){display:block;text-align:center}:host(.navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label) .link ic-typography{opacity:1;min-width:-moz-min-content;min-width:min-content}:host(.navigation-item-side-nav-collapsed) svg,:host(.navigation-item-side-nav-collapsed-with-label) svg{display:none}::slotted(svg){fill:var(--ic-brand-text-color);height:var(--ic-space-lg);width:var(--ic-space-lg);margin-left:var(--ic-space-md)}.icon{height:1.5rem;width:var(--ic-space-xxl);margin-left:calc(-1 * var(--ic-space-md));flex:0 1 0%;position:relative}.icon>::slotted(*){margin-left:var(--ic-space-md) !important}:host(.navigation-item-side-nav-collapsed) .icon>::slotted(*){margin:auto !important}:host(.navigation-item-side-nav) .link,:host(.navigation-item-side-nav) ::slotted(a){height:var(--navigation-item-height, 4rem);min-height:var(--navigation-item-min-height);width:var(--navigation-item-width, auto);justify-content:var(--navigation-item-justify-content);display:flex;gap:var(--ic-space-xs);box-sizing:border-box;color:var(--navigation-item-child-color) !important;text-decoration:none !important;white-space:nowrap;padding:0 var(--ic-space-md);text-wrap:wrap}:host(.navigation-item-side-nav.navigation-item-top-nav-child) .link,:host(.navigation-item-side-nav.navigation-item-top-nav-child) ::slotted(a){height:var(--navigation-item-child-height);width:var(--navigation-group-width);color:var(--navigation-item-child-color) !important;display:flex;gap:0.625rem;box-sizing:border-box;min-width:0;transition:box-shadow var(--ic-easing-transition-fast);text-decoration:none !important;white-space:nowrap}:host(.navigation-item-side-nav.navigation-item-top-nav-child) .link:focus,:host(.navigation-item-side-nav.navigation-item-top-nav-child) ::slotted(a:focus){box-shadow:var(--ic-border-focus-dark)}:host(.navigation-item-side-nav.navigation-item-side-menu) .link:active{background-color:var(--navigation-item-child-active)}:host(.navigation-item-side-nav.navigation-item-top-nav-child) .link:active,:host(.navigation-item-side-nav.navigation-item-top-nav-child) ::slotted(a:active){background-color:var(--navigation-item-child-active)}:host(.navigation-item-side-nav) a.link ic-typography,:host(.navigation-item-side-nav.navigation-item-top-nav-child) a.link ic-typography,:host(.navigation-item-side-nav) div.link ic-typography,:host(.navigation-item-side-nav.navigation-item-top-nav-child) div.link ic-typography,.navigation-item-side-nav-slotted-text{opacity:var(--navigation-item-label-opacity);transition:opacity var(--ic-easing-transition-slow);white-space:wrap;text-overflow:ellipsis;overflow:hidden}:host(.navigation-item-side-nav.navigation-item-selected) .link,:host(.navigation-item-side-nav.navigation-item) ::slotted(a.active){box-shadow:inset 0.313rem 0 0 var(--ic-brand-text-color)}:host(.navigation-item-side-nav.navigation-item-selected) .link::before,:host(.navigation-item-side-nav) ::slotted(a.active)::before{content:"";display:block;position:absolute;inset:0 0 0 0.313rem;border-radius:0.688rem !important;transition:var(--ic-easing-transition-slow)}:host(.navigation-item-side-nav.navigation-item-selected) .link:focus::before,:host(.navigation-item-side-nav) ::slotted(a.active:focus)::before{box-shadow:var(--ic-border-focus-inset)}:host(:not(.navigation-item-side-nav-collapsed).navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label) .link{opacity:var(--navigation-item-label-opacity);height:auto}:host(.navigation-item-top-nav-child.navigation-item-side-nav-collapsed-with-label) .link,:host(.navigation-item-top-nav-child.navigation-item-side-nav-collapsed-with-label) ::slotted(a){min-width:var(--navigation-group-item-min-width);padding:var(--ic-space-xs) !important;height:auto;gap:0}:host(.navigation-item-top-nav-child.navigation-item-side-nav-collapsed-with-label) ::slotted(a){display:block}:host(.navigation-item-side-nav.navigation-item-selected) .link::after,:host(.navigation-item-side-nav) ::slotted(a.active)::after{display:none}:host(.navigation-item-side-nav.navigation-item) .link:focus,:host(.navigation-item-side-nav.navigation-item) ::slotted(a:focus){box-shadow:var(--ic-border-focus-inset);border-radius:var(--ic-border-radius-inset);background-color:transparent}:host(.navigation-item-side-nav.navigation-item-selected) .link:focus,:host(.navigation-item-side-nav) ::slotted(a.active:focus){margin:0 auto;box-shadow:inset 0.313rem 0 0 var(--ic-brand-text-color);border-radius:0}:host(.navigation-item-side-nav.navigation-item) .link:hover:not(:focus){background-color:var(--ic-brand-hover) !important}:host(.navigation-item-page-header).link,:host(.navigation-item-page-header) a,:host(.navigation-item-page-header) ::slotted(a){height:2.5rem !important;color:var(--ic-color-text-primary) !important;transition:all var(--ic-easing-transition-fast) !important;box-shadow:rgba(23 89 188 / 0%) !important}:host(.navigation-item-page-header.navigation-item-selected) .link::after,:host(.navigation-item-page-header) ::slotted(a.active)::after{content:" " !important;position:absolute;bottom:0;left:0;right:0;height:var(--ic-space-xxs);background-color:var(--ic-action-default) !important}:host(.navigation-item-page-header) .link:hover,:host(.navigation-item-page-header) ::slotted(.link:hover),:host(.navigation-item-page-header) ::slotted(a:hover),:host(.navigation-item-page-header) .link:hover:not(:focus){background-color:var(--ic-action-default-bg-hover) !important;cursor:pointer}:host(.navigation-item-page-header) .link:focus,:host(.navigation-item-page-header) ::slotted(a:focus){box-shadow:var(--ic-border-focus)}:host(.navigation-item-page-header) .link:active,:host(.navigation-item-page-header) ::slotted(a:active){background-color:var(--ic-action-default-bg-pressed) !important}:host(.navigation-item-page-header.navigation-item-selected) .link:focus::after,:host(.navigation-item-page-header) ::slotted(a.active:focus)::after{border-bottom-left-radius:var(--ic-border-radius);border-bottom-right-radius:var(--ic-border-radius)}:host(.navigation-item-page-header.navigation-item-selected.with-transition) .link,:host(.navigation-item-page-header.navigation-item-selected.with-transition) ::slotted(a.active){transition:all var(--ic-easing-transition-fast),\n border-color var(--ic-transition-duration-fast)}:host(.navigation-item-page-header) ::slotted(a.active)::before,:host(.navigation-item-page-header) ::slotted(a.active:focus)::before,:host(.navigation-item-page-header.navigation-item-selected) .link:focus::before{display:none}.open-in-new-icon{flex:1}.open-in-new-icon svg{margin-top:var(--ic-space-xxs);padding-left:var(--ic-space-xxs)}:host(.navigation-item-side-nav) .open-in-new-icon{margin-left:calc(-1 * var(--ic-space-xs))}:host(.navigation-item-top-nav) .open-in-new-icon svg,:host(.navigation-item-page-header) .open-in-new-icon svg,:host(.navigation-item-side-nav) .open-in-new-icon svg{height:0.875rem;width:0.875rem}:host(.navigation-item-side-menu) .open-in-new-icon svg,:host(.navigation-item-top-nav-child) .open-in-new-icon svg{height:var(--ic-space-md);width:var(--ic-space-md)}:host(.navigation-item-page-header) .open-in-new-icon svg,:host(.navigation-item-top-nav-child) .open-in-new-icon svg,:host(.navigation-item-side-menu) .open-in-new-icon svg{fill:var(--ic-color-text-primary)}@media (forced-colors: active){.open-in-new-icon svg{fill:currentcolor}}';const p=class{constructor(n){i(this,n);this.childBlur=t(this,"childBlur",7);this.navItemClicked=t(this,"navItemClicked",7);this.isInitialRender=true;this.hostMutationObserver=null;this.ANIMATION_DURATION=parseInt(s("--ic-transition-duration-slow"))||0;this.ARIA_LABEL_STRING="aria-label";this.displayDefaultNavigationItem=(i,t,a,n,o,s,d)=>{const c=this.isTopNavChild||this.inTopNavSideMenu?"body":"label";const l=this.expandable&&e("div",{class:{svg:true},innerHTML:h});const v=this.el.querySelector('[slot="icon"]')&&e("div",{class:"icon"},e("slot",{name:"icon"}),r(this.el,"badge")&&e("slot",{name:"badge"}));if(i!==""){return e("a",{href:i,target:a,rel:n,hreflang:t,referrerPolicy:o,download:s!==false?s:null,class:"link",ref:i=>this.itemEl=i,part:"link","aria-label":this.ariaLabel?this.ariaLabel:null},v,e("ic-typography",{variant:c},d),e("div",{class:"chevron-container"},l),a==="_blank"&&e("span",{class:"open-in-new-icon",innerHTML:g}))}return e("div",{tabindex:"0",class:"link",ref:i=>this.itemEl=i},v,e("ic-typography",{variant:c},d),l)};this.topNavResizedHandler=({detail:i})=>{var t;const{size:e}=i;if(e!==this.deviceSize){this.deviceSize=e;this.inTopNavSideMenu=e<=(((t=this.parentEl)===null||t===void 0?void 0:t.customMobileBreakpoint)||d.L)}};this.sideNavExpandHandler=({detail:i})=>{const{sideNavExpanded:t,sideNavMobile:e}=i;this.sideNavExpanded=t;this.isSideNavMobile=e;this.sideNavToggleTooltip(!(t||e))};this.handleBlur=({relatedTarget:i})=>{if(i===null||i.tagName!=="IC-NAVIGATION-ITEM"){this.childBlur.emit()}};this.handleClick=()=>{this.navItemClicked.emit()};this.hostMutationCallback=i=>{let t=false;i.forEach((({attributeName:i})=>{if(i===this.ARIA_LABEL_STRING){this.ariaLabel=this.el.getAttribute(i);t=true}}));if(t){a(this)}};this.generateTooltipLabel=()=>{if(this.label){return this.label}if(this.navigationSlot){return this.navigationSlot.textContent}if(this.el.children[0]){return this.el.children[0].textContent}return""};this.renderNavigationItemContent=()=>{if(this.label){return this.displayDefaultNavigationItem(this.href,this.hreflang,this.target,this.rel,this.referrerpolicy,this.download,this.label)}if(this.navigationSlot){return e("slot",{name:"navigation-item"})}return e("slot",null)};this.sideNavToggleTooltip=i=>{const t=this.el.shadowRoot.querySelector("ic-tooltip");const e="tooltip-navigation-item-side-nav-collapsed";let a;if(t){if(i){t.displayTooltip(false);a=setTimeout((()=>{t.classList.add(e)}),this.ANIMATION_DURATION)}else{clearTimeout(a);t.classList.remove(e)}}};this.deviceSize=d.XL;this.focusStyle=c();this.inTopNavSideMenu=false;this.isSideNavMobile=false;this.isTopNavChild=false;this.navigationType=undefined;this.parentEl=undefined;this.sideNavExpanded=false;this.ariaLabel="";this.collapsedIconLabel=false;this.displayNavigationTooltip=false;this.download=false;this.expandable=false;this.href="";this.hreflang=undefined;this.label=undefined;this.rel=undefined;this.referrerpolicy=undefined;this.selected=false;this.target=undefined;this.theme="inherit"}disconnectedCallback(){var i;if(this.navigationType==="side"){this.parentEl.removeEventListener("icSideNavExpanded",this.sideNavExpandHandler)}else if(this.navigationType==="top"){this.parentEl.removeEventListener("icTopNavResized",this.topNavResizedHandler)}(i=this.hostMutationObserver)===null||i===void 0?void 0:i.disconnect()}componentWillLoad(){var i,t;const{navType:e,parent:a}=v(this.el);this.navigationType=e;this.parentEl=a;this.deviceSize=l();this.sideNavExpanded=((i=this.parentEl)===null||i===void 0?void 0:i.classList.contains("sm-expanded"))||((t=this.parentEl)===null||t===void 0?void 0:t.classList.contains("xs-menu-open"));if(this.navigationType==="side"){this.parentEl.addEventListener("icSideNavExpanded",this.sideNavExpandHandler)}else if(this.navigationType==="top"){this.parentEl.addEventListener("icTopNavResized",this.topNavResizedHandler);if(this.el.parentElement.tagName==="IC-NAVIGATION-GROUP")this.isTopNavChild=true;if(this.deviceSize<=this.parentEl.customMobileBreakpoint)this.inTopNavSideMenu=true}this.navigationSlot=this.el.querySelector('[slot="navigation-item"]');if(this.navigationSlot){this.navigationSlot.ariaLabel=this.navigationSlot.textContent.trim()}if(this.el.hasAttribute(this.ARIA_LABEL_STRING)){this.ariaLabel=this.el.getAttribute(this.ARIA_LABEL_STRING)}}componentDidLoad(){this.hostMutationObserver=new MutationObserver(this.hostMutationCallback);this.hostMutationObserver.observe(this.el,{attributes:true})}componentDidUpdate(){this.isInitialRender=false}brandChangeHandler({detail:i}){this.focusStyle=i.mode}async setFocus(){var i;this.itemEl?this.itemEl.focus():(i=this.el.querySelector("a"))===null||i===void 0?void 0:i.focus()}render(){const{inTopNavSideMenu:i,isTopNavChild:t,selected:a}=this;return e(n,{class:{["navigation-item"]:true,["navigation-item-top-nav"]:!i&&this.navigationType==="top",["navigation-item-top-nav-child-selected"]:t&&!i&&a,[this.focusStyle]:!i&&!t||this.navigationType==="side"&&t,["navigation-item-selected"]:!t&&a,["navigation-item-side-menu"]:i,["navigation-item-side-menu-selected"]:i&&a,["navigation-item-top-nav-child"]:t&&!i,["navigation-item-page-header"]:this.navigationType==="page-header",["with-transition"]:!this.isInitialRender,["navigation-item-side-nav"]:this.navigationType==="side",["navigation-item-side-nav-collapsed"]:(!this.sideNavExpanded||this.displayNavigationTooltip)&&this.navigationType==="side",["navigation-item-side-nav-collapsed-with-label"]:!this.sideNavExpanded&&this.navigationType==="side"&&this.collapsedIconLabel&&!this.isSideNavMobile,["expandable"]:this.expandable,[`ic-theme-${this.theme}`]:this.theme!=="inherit"},onBlur:t&&!i?this.handleBlur:null,onClick:this.handleClick,"aria-current":a?"page":null,role:"listitem"},e("ic-tooltip",{label:this.generateTooltipLabel(),target:"navigation-item",placement:"right",class:{["tooltip-navigation-item"]:true,["tooltip-navigation-item-side-nav-collapsed"]:this.displayNavigationTooltip&&this.navigationType==="side",["tooltip-long-label-navigation-item-side-nav-expanded"]:this.el.hasAttribute("[display-navigation-tooltip = 'true']")}},this.renderNavigationItemContent()))}static get delegatesFocus(){return true}get el(){return o(this)}};p.style=m;export{p as ic_navigation_item};
2
- //# sourceMappingURL=p-094f51b6.entry.js.map
1
+ import{r as i,c as t,h as e,f as a,H as o,g as n}from"./p-8e4e97b4.js";import{z as s,D as r,g as d,i as l,e as c,y as v}from"./p-269f841d.js";import{C as h}from"./p-3b185c32.js";import{O as g}from"./p-426ec638.js";const m='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;--navigation-link-colour:var(--ic-brand-text-color)}:host(:focus-within){z-index:var(--ic-z-index-navigation-item)}svg{width:var(--ic-space-xl);fill:var(--ic-brand-text-color)}.svg{margin-left:auto}.chevron-container svg,.chevron-container .svg{width:var(--ic-space-lg);height:var(--ic-space-lg)}.chevron-container{flex-grow:1}:host(.expandable.navigation-item) .link,:host(.expandable.navigation-item) ::slotted(a){padding-right:0}:host(.navigation-item) .link,:host(.navigation-item) ::slotted(a){height:calc(100% - var(--ic-space-xxs));width:-moz-fit-content;width:fit-content;color:var(--navigation-link-colour);display:flex;align-items:center;justify-content:center;padding:0 var(--ic-space-md) var(--ic-space-xxs);text-decoration:none;transition:var(--ic-easing-transition-fast);position:relative;white-space:nowrap}:host(.navigation-item) ::slotted(a){height:100%;font:var(--ic-font-label) !important;letter-spacing:var(--ic-font-letter-spacing-0pt025) !important;padding:0 var(--ic-space-md) !important}:host(.navigation-item-selected) .link::after,:host(.navigation-item-selected) ::slotted(a.active)::after,:host(.navigation-item-top-nav) ::slotted(a.active)::after{content:"";height:0.25rem;width:100%;position:absolute;bottom:0;background-color:var(--ic-top-navigation-theme)}:host(.navigation-item-selected.navigation-item-page-header) ::slotted(a.active)::after,:host(.navigation-item-selected.navigation-item-page-header) .link::after,:host(.navigation-item.navigation-item-page-header) ::slotted(a.active)::after,:host(.navigation-item-top-nav-child) ::slotted(a.active)::after{content:none}:host(.navigation-item-side-menu-selected) .link,:host(.navigation-item-side-menu) ::slotted(a.active),:host(.navigation-item-top-nav-child) ::slotted(a.active){box-shadow:none}:host(.navigation-item) .link:hover:not(:focus){background-color:var(--ic-brand-hover);cursor:pointer}:host(.navigation-item:not(.navigation-item-page-header,.navigation-item-side-menu)) ::slotted(a:hover:not(:focus)){background-color:var(--ic-brand-hover) !important}:host(.navigation-item:not(.navigation-item-top-nav-child,.navigation-item-side-menu,.navigation-item-top-nav-child-selected .navigation-item-side-menu-selected)) .focus-indicator:focus-within{box-shadow:var(--ic-border-focus);border-radius:var(--ic-border-radius)}:host(.navigation-item) .link:focus,:host(.navigation-item) ::slotted(a:focus){box-shadow:var(--ic-border-focus);border-radius:var(--ic-border-radius);outline:var(--ic-hc-focus-outline)}:host(.navigation-item-selected) .link:focus,:host(.navigation-item) ::slotted(a.active:focus){box-shadow:var(--ic-border-focus);border-radius:var(--ic-border-radius);outline:var(--ic-hc-focus-outline)}:host(.navigation-item) .link:active:not(:focus),:host(.navigation-item) ::slotted(a:active:not(:focus)){background-color:var(--ic-brand-active)}:host(.navigation-item-side-menu) .link,:host(.navigation-item-side-menu) ::slotted(a){min-height:2.5rem;height:auto;width:100%;box-sizing:border-box;color:var(--ic-top-navigation-nav-item);--ic-typography-color:var(--ic-top-navigation-nav-item);display:flex;align-items:center;justify-content:flex-start;text-decoration:none;text-wrap:wrap;white-space:normal;transition:box-shadow var(--ic-transition-duration-fast),\n border-radius var(--ic-transition-duration-fast)}:host(.navigation-item-side-menu) ::slotted(a){font:var(--ic-font-body) !important;letter-spacing:var(--ic-font-letter-spacing-0pt005) !important;transition:box-shadow var(--ic-easing-transition-fast),\n background-color var(--ic-easing-transition-fast)}:host(.navigation-item-side-menu) .link:hover:not(:focus){background-color:var(--ic-top-navigation-nav-item-hover)}:host(.navigation-item-side-menu) ::slotted(a:hover:not(:focus)){background-color:var(--ic-top-navigation-nav-item-hover) !important}:host(.navigation-item-side-menu) .focus-indicator:focus-within{box-shadow:none}:host(.navigation-item-side-menu) .link:focus,:host(.navigation-item-side-menu) ::slotted(a:focus){box-shadow:var(--ic-border-focus-inset) !important;width:auto;border-radius:var(--ic-border-radius-inset) !important}:host(.navigation-item-side-menu-selected) .link,:host(.navigation-item-side-menu-selected) ::slotted(a){transition:box-shadow var(--ic-easing-transition-slow),\n background-color var(--ic-easing-transition-slow)}:host(.navigation-item-side-menu-selected) .link:focus,:host(.navigation-item-side-menu) ::slotted(a.active:focus),:host(.navigation-item-top-nav-child) ::slotted(a.active:focus){margin-left:var(--ic-space-xs) !important;padding-left:var(--ic-space-xs) !important}:host(.navigation-item-top-nav-child) .link,:host(.navigation-item-top-nav-child) ::slotted(a){height:2.5rem;width:-moz-fit-content;width:fit-content;min-width:9.063rem;color:var(--ic-top-navigation-nav-item);display:flex;align-items:center;justify-content:flex-start;padding:0 var(--ic-space-md) !important;text-decoration:none;position:relative;transition:box-shadow var(--ic-transition-duration-fast),\n border-radius var(--ic-transition-duration-slow)}:host(.navigation-item-top-nav-child) ::slotted(a){font:var(--ic-font-body) !important;letter-spacing:var(--ic-font-letter-spacing-0pt005) !important}:host(.navigation-item-top-nav-child) .link:hover:not(:focus){background-color:var(--ic-top-navigation-nav-item-hover) !important}:host(.navigation-item-top-nav-child) ::slotted(a:hover):not(:focus){background-color:var(--ic-top-navigation-nav-item-hover) !important}:host(.navigation-item-top-nav-child) .link:focus,:host(.navigation-item-top-nav-child) ::slotted(a:focus){z-index:1;outline:var(--ic-hc-focus-outline);border-radius:var(--ic-border-radius-inset);box-shadow:var(--ic-border-focus-inset);transition:border-radius 0s, box-shadow var(--ic-transition-duration-fast)}:host(.navigation-item-top-nav-child) ::slotted(a.active:focus){box-shadow:var(--ic-border-focus-inset);border-radius:var(--ic-border-radius-inset)}:host(.navigation-item-side-menu) .link:active:not(:focus){background-color:var(--ic-top-navigation-nav-item-pressed)}:host(.navigation-item-top-nav-child) .link:active:not(:focus),:host(.navigation-item-top-nav-child) ::slotted(a:active):not(:focus){outline:var(--ic-hc-focus-outline);background-color:var(--ic-top-navigation-nav-item-pressed)}:host(.navigation-item-top-nav-child) ::slotted(a:active):not(:focus),:host(.navigation-item-side-menu) ::slotted(a:active):not(:focus){background-color:var(--ic-top-navigation-nav-item-pressed) !important}:host(.navigation-item-side-menu-selected) *,:host(.navigation-item-top-nav-child-selected) *,:host(.navigation-item-side-menu) ::slotted(a.active),:host(.navigation-item-top-nav-child) ::slotted(a.active){font-weight:700 !important}:host(.navigation-item-top-nav-child) ::slotted(a.active)::before,:host(.navigation-item-top-nav-child-selected) .link::before,:host(.navigation-item-side-menu-selected) .link::before,:host(.navigation-item-side-menu) ::slotted(a.active)::before,:host(.navigation-item-side-menu-selected) .link:focus::before,:host(.navigation-item-side-menu) ::slotted(a.active:focus)::before{content:"";position:absolute;left:0;width:var(--ic-space-xs);height:inherit;min-height:2.5rem;background-color:var(--ic-top-navigation-nav-item-banner);transition:left 0s}:host(.navigation-item-side-menu-selected) .link::before,:host(.navigation-item-side-menu-selected) .link:focus::before{margin-top:var(--ic-space-xxs)}:host(.navigation-item-top-nav-child-selected) .link:focus{margin-left:var(--ic-space-xs);margin-right:calc(-1 * var(--ic-space-xs));padding-left:var(--ic-space-xs) !important}:host(.navigation-item-top-nav-child-selected) .link:focus::before{left:calc(-1 * var(--ic-space-xs));z-index:1}:host(.navigation-item-side-menu-selected) .link::before,:host(.navigation-item-side-menu) ::slotted(a.active)::before,:host(.navigation-item-side-menu-selected) .link:focus::before,:host(.navigation-item-side-menu) ::slotted(a.active:focus)::before{z-index:1}:host(.navigation-item-side-menu-selected) .link:focus::before,:host(.navigation-item-side-menu) ::slotted(a.active:focus)::before,:host(.navigation-item-top-nav-child) ::slotted(a.active:focus)::before{left:calc(-1 * var(--ic-space-xs))}:host(.navigation-item-side-menu-selected) .link::after{display:none}:host(.navigation-item-side-nav-collapsed) .link{height:100%}:host(.navigation-item-side-nav-collapsed) ::slotted(svg),:host(.navigation-item-side-nav-collapsed-with-label) ::slotted(svg){margin:auto;pointer-events:none}:host(.navigation-item-side-nav-collapsed) .icon,:host(.navigation-item-side-nav-collapsed-with-label) .icon,:host(.navigation-item-side-nav-collapsed-with-label) ic-typography{align-items:center;padding:0;margin:auto 0;width:-moz-fit-content;width:fit-content;pointer-events:none}:host(.navigation-item-side-nav-collapsed-with-label) ic-typography{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;text-align:center}:host(.navigation-item-side-nav-collapsed-with-label) .link,:host(.navigation-item-side-nav-collapsed-with-label) ::slotted(a){display:flex;flex-direction:column;height:-moz-fit-content;height:fit-content;padding:var(--ic-space-xs) !important;gap:var(--ic-space-xxs)}:host(.navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label) .link,:host(.navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label) ::slotted(a){height:auto !important;gap:0;width:auto;padding:var(--ic-space-xs) !important}:host(.navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label) ::slotted(a){display:block;text-align:center}:host(.navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label) .link ic-typography{opacity:1;min-width:-moz-min-content;min-width:min-content}:host(.navigation-item-side-nav-collapsed) svg,:host(.navigation-item-side-nav-collapsed-with-label) svg{display:none}::slotted(svg){fill:var(--ic-brand-text-color);height:var(--ic-space-lg);width:var(--ic-space-lg);margin-left:var(--ic-space-md)}.icon{height:1.5rem;width:var(--ic-space-xxl);margin-left:calc(-1 * var(--ic-space-md));flex:0 1 0%;position:relative}.icon>::slotted(*){margin-left:var(--ic-space-md) !important}:host(.navigation-item-side-nav-collapsed) .icon>::slotted(*){margin:auto !important}:host(.navigation-item-side-nav) .link,:host(.navigation-item-side-nav) ::slotted(a){height:var(--navigation-item-height, 4rem);min-height:var(--navigation-item-min-height);width:var(--navigation-item-width, auto);justify-content:var(--navigation-item-justify-content);display:flex;gap:var(--ic-space-xs);box-sizing:border-box;color:var(--navigation-item-child-color) !important;text-decoration:none !important;white-space:nowrap;padding:0 var(--ic-space-md);text-wrap:wrap}:host(.navigation-item-side-nav.navigation-item-top-nav-child) .link,:host(.navigation-item-side-nav.navigation-item-top-nav-child) ::slotted(a){height:var(--navigation-item-child-height);width:var(--navigation-group-width);color:var(--navigation-item-child-color) !important;display:flex;gap:0.625rem;box-sizing:border-box;min-width:0;transition:box-shadow var(--ic-easing-transition-fast);text-decoration:none !important;white-space:nowrap}:host(.navigation-item-side-nav.navigation-item-top-nav-child) .link:focus,:host(.navigation-item-side-nav.navigation-item-top-nav-child) ::slotted(a:focus){box-shadow:var(--ic-border-focus-dark)}:host(.navigation-item-side-nav.navigation-item-side-menu) .link:active{background-color:var(--navigation-item-child-active)}:host(.navigation-item-side-nav.navigation-item-top-nav-child) .link:active,:host(.navigation-item-side-nav.navigation-item-top-nav-child) ::slotted(a:active){background-color:var(--navigation-item-child-active)}:host(.navigation-item-side-nav) a.link ic-typography,:host(.navigation-item-side-nav.navigation-item-top-nav-child) a.link ic-typography,:host(.navigation-item-side-nav) div.link ic-typography,:host(.navigation-item-side-nav.navigation-item-top-nav-child) div.link ic-typography,.navigation-item-side-nav-slotted-text{opacity:var(--navigation-item-label-opacity);transition:opacity var(--ic-easing-transition-slow);white-space:wrap;text-overflow:ellipsis;overflow:hidden}:host(.navigation-item-side-nav.navigation-item-selected) .link,:host(.navigation-item-side-nav.navigation-item) ::slotted(a.active){box-shadow:inset 0.313rem 0 0 var(--ic-brand-text-color)}:host(.navigation-item-side-nav.navigation-item-selected) .link::before,:host(.navigation-item-side-nav) ::slotted(a.active)::before{content:"";display:block;position:absolute;inset:0 0 0 0.313rem;border-radius:0.688rem !important;transition:var(--ic-easing-transition-slow)}:host(.navigation-item-side-nav.navigation-item-selected) .link:focus::before,:host(.navigation-item-side-nav) ::slotted(a.active:focus)::before{box-shadow:var(--ic-border-focus-inset)}:host(:not(.navigation-item-side-nav-collapsed).navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label) .link{opacity:var(--navigation-item-label-opacity);height:auto}:host(.navigation-item-top-nav-child.navigation-item-side-nav-collapsed-with-label) .link,:host(.navigation-item-top-nav-child.navigation-item-side-nav-collapsed-with-label) ::slotted(a){min-width:var(--navigation-group-item-min-width);padding:var(--ic-space-xs) !important;height:auto;gap:0}:host(.navigation-item-top-nav-child.navigation-item-side-nav-collapsed-with-label) ::slotted(a){display:block}:host(.navigation-item-side-nav.navigation-item-selected) .link::after,:host(.navigation-item-side-nav) ::slotted(a.active)::after{display:none}:host(.navigation-item-side-nav.navigation-item) .link:focus,:host(.navigation-item-side-nav.navigation-item) ::slotted(a:focus){box-shadow:var(--ic-border-focus-inset);border-radius:var(--ic-border-radius-inset);background-color:transparent}:host(.navigation-item-side-nav.navigation-item-selected) .link:focus,:host(.navigation-item-side-nav) ::slotted(a.active:focus){margin:0 auto;box-shadow:inset 0.313rem 0 0 var(--ic-brand-text-color);border-radius:0}:host(.navigation-item-side-nav.navigation-item) .link:hover:not(:focus){background-color:var(--ic-brand-hover) !important}:host(.navigation-item-page-header).link,:host(.navigation-item-page-header) a,:host(.navigation-item-page-header) ::slotted(a){height:2.5rem !important;color:var(--ic-color-text-primary) !important;transition:all var(--ic-easing-transition-fast) !important;box-shadow:rgba(23 89 188 / 0%) !important}:host(.navigation-item-page-header.navigation-item-selected) .link::after,:host(.navigation-item-page-header) ::slotted(a.active)::after{content:" " !important;position:absolute;bottom:0;left:0;right:0;height:var(--ic-space-xxs);background-color:var(--ic-action-default) !important}:host(.navigation-item-page-header) .link:hover,:host(.navigation-item-page-header) ::slotted(.link:hover),:host(.navigation-item-page-header) ::slotted(a:hover),:host(.navigation-item-page-header) .link:hover:not(:focus){background-color:var(--ic-action-default-bg-hover) !important;cursor:pointer}:host(.navigation-item-page-header) .link:focus,:host(.navigation-item-page-header) ::slotted(a:focus){box-shadow:var(--ic-border-focus)}:host(.navigation-item-page-header) .link:active,:host(.navigation-item-page-header) ::slotted(a:active){background-color:var(--ic-action-default-bg-pressed) !important}:host(.navigation-item-page-header.navigation-item-selected) .link:focus::after,:host(.navigation-item-page-header) ::slotted(a.active:focus)::after{border-bottom-left-radius:var(--ic-border-radius);border-bottom-right-radius:var(--ic-border-radius)}:host(.navigation-item-page-header.navigation-item-selected.with-transition) .link,:host(.navigation-item-page-header.navigation-item-selected.with-transition) ::slotted(a.active){transition:all var(--ic-easing-transition-fast),\n border-color var(--ic-transition-duration-fast)}:host(.navigation-item-page-header) ::slotted(a.active)::before,:host(.navigation-item-page-header) ::slotted(a.active:focus)::before,:host(.navigation-item-page-header.navigation-item-selected) .link:focus::before{display:none}.open-in-new-icon{flex:1}.open-in-new-icon svg{margin-top:var(--ic-space-xxs);padding-left:var(--ic-space-xxs)}:host(.navigation-item-side-nav) .open-in-new-icon{margin-left:calc(-1 * var(--ic-space-xs))}:host(.navigation-item-top-nav) .open-in-new-icon svg,:host(.navigation-item-page-header) .open-in-new-icon svg,:host(.navigation-item-side-nav) .open-in-new-icon svg{height:0.875rem;width:0.875rem}:host(.navigation-item-side-menu) .open-in-new-icon svg,:host(.navigation-item-top-nav-child) .open-in-new-icon svg{height:var(--ic-space-md);width:var(--ic-space-md)}:host(.navigation-item-page-header) .open-in-new-icon svg,:host(.navigation-item-top-nav-child) .open-in-new-icon svg,:host(.navigation-item-side-menu) .open-in-new-icon svg{fill:var(--ic-color-text-primary)}@media (forced-colors: active){.open-in-new-icon svg{fill:currentcolor}}';const p=m;const u=class{constructor(o){i(this,o);this.childBlur=t(this,"childBlur",7);this.navItemClicked=t(this,"navItemClicked",7);this.isInitialRender=true;this.hostMutationObserver=null;this.ANIMATION_DURATION=parseInt(s("--ic-transition-duration-slow"))||0;this.ARIA_LABEL_STRING="aria-label";this.deviceSize=r.XL;this.focusStyle=d();this.inTopNavSideMenu=false;this.isSideNavMobile=false;this.isTopNavChild=false;this.sideNavExpanded=false;this.ariaLabel="";this.collapsedIconLabel=false;this.displayNavigationTooltip=false;this.download=false;this.expandable=false;this.href="";this.selected=false;this.theme="inherit";this.displayDefaultNavigationItem=(i,t,a,o,n,s,r)=>{const d=this.isTopNavChild||this.inTopNavSideMenu?"body":"label";const c=this.expandable&&e("div",{class:{svg:true},innerHTML:h});const v=this.el.querySelector('[slot="icon"]')&&e("div",{class:"icon"},e("slot",{name:"icon"}),l(this.el,"badge")&&e("slot",{name:"badge"}));if(i!==""){return e("a",{href:i,target:a,rel:o,hreflang:t,referrerPolicy:n,download:s!==false?s:null,class:"link",ref:i=>this.itemEl=i,part:"link","aria-label":this.ariaLabel?this.ariaLabel:null},v,e("ic-typography",{variant:d},r),e("div",{class:"chevron-container"},c),a==="_blank"&&e("span",{class:"open-in-new-icon",innerHTML:g}))}return e("div",{tabindex:"0",class:"link",ref:i=>this.itemEl=i},v,e("ic-typography",{variant:d},r),c)};this.topNavResizedHandler=({detail:i})=>{var t;const{size:e}=i;if(e!==this.deviceSize){this.deviceSize=e;this.inTopNavSideMenu=e<=(((t=this.parentEl)===null||t===void 0?void 0:t.customMobileBreakpoint)||r.L)}};this.sideNavExpandHandler=({detail:i})=>{const{sideNavExpanded:t,sideNavMobile:e}=i;this.sideNavExpanded=t;this.isSideNavMobile=e;this.sideNavToggleTooltip(!(t||e))};this.handleBlur=({relatedTarget:i})=>{if(i===null||i.tagName!=="IC-NAVIGATION-ITEM"){this.childBlur.emit()}};this.handleClick=()=>{this.navItemClicked.emit()};this.hostMutationCallback=i=>{let t=false;i.forEach((({attributeName:i})=>{if(i){const e=this.el.getAttribute(i);if(e&&i===this.ARIA_LABEL_STRING){this.ariaLabel=e;t=true}}}));if(t){a(this)}};this.generateTooltipLabel=()=>{if(this.label){return this.label}if(this.navigationSlot){return this.navigationSlot.textContent}if(this.el.children[0]){return this.el.children[0].textContent}return""};this.renderNavigationItemContent=()=>{if(this.label){return this.displayDefaultNavigationItem(this.href,this.hreflang,this.target,this.rel,this.referrerpolicy,this.download,this.label)}if(this.navigationSlot){return e("slot",{name:"navigation-item"})}return e("slot",null)};this.sideNavToggleTooltip=i=>{var t;const e=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelector("ic-tooltip");const a="tooltip-navigation-item-side-nav-collapsed";let o;if(e){if(i){e.displayTooltip(false);o=setTimeout((()=>{e.classList.add(a)}),this.ANIMATION_DURATION)}else{clearTimeout(o);e.classList.remove(a)}}}}disconnectedCallback(){var i,t,e;if(this.navigationType==="side"){(i=this.parentEl)===null||i===void 0?void 0:i.removeEventListener("icSideNavExpanded",this.sideNavExpandHandler)}else if(this.navigationType==="top"){(t=this.parentEl)===null||t===void 0?void 0:t.removeEventListener("icTopNavResized",this.topNavResizedHandler)}(e=this.hostMutationObserver)===null||e===void 0?void 0:e.disconnect()}componentWillLoad(){var i,t,e,a,o,n;const{navType:s,parent:r}=v(this.el);this.navigationType=s;this.parentEl=r;this.deviceSize=c();this.sideNavExpanded=((i=this.parentEl)===null||i===void 0?void 0:i.classList.contains("sm-expanded"))||((t=this.parentEl)===null||t===void 0?void 0:t.classList.contains("xs-menu-open"))||false;if(this.navigationType==="side"){(e=this.parentEl)===null||e===void 0?void 0:e.addEventListener("icSideNavExpanded",this.sideNavExpandHandler)}else if(this.navigationType==="top"){(a=this.parentEl)===null||a===void 0?void 0:a.addEventListener("icTopNavResized",this.topNavResizedHandler);if(((o=this.el.parentElement)===null||o===void 0?void 0:o.tagName)==="IC-NAVIGATION-GROUP")this.isTopNavChild=true;if(this.deviceSize<=this.parentEl.customMobileBreakpoint)this.inTopNavSideMenu=true}this.navigationSlot=this.el.querySelector('[slot="navigation-item"]');if(this.navigationSlot){this.navigationSlot.ariaLabel=((n=this.navigationSlot.textContent)===null||n===void 0?void 0:n.trim())||null}if(this.el.hasAttribute(this.ARIA_LABEL_STRING)){this.ariaLabel=this.el.getAttribute(this.ARIA_LABEL_STRING)||""}}componentDidLoad(){this.hostMutationObserver=new MutationObserver(this.hostMutationCallback);this.hostMutationObserver.observe(this.el,{attributes:true})}componentDidUpdate(){this.isInitialRender=false}brandChangeHandler({detail:i}){this.focusStyle=i.mode}async setFocus(){var i;this.itemEl?this.itemEl.focus():(i=this.el.querySelector("a"))===null||i===void 0?void 0:i.focus()}render(){const{inTopNavSideMenu:i,isTopNavChild:t,selected:a}=this;return e(o,{key:"0d07f864357c0f3aaf7e0eb221bd7810445a7576",class:{["navigation-item"]:true,["navigation-item-top-nav"]:!i&&this.navigationType==="top",["navigation-item-top-nav-child-selected"]:t&&!i&&!!a,[this.focusStyle]:!i&&!t||this.navigationType==="side"&&t,["navigation-item-selected"]:!t&&!!a,["navigation-item-side-menu"]:i,["navigation-item-side-menu-selected"]:i&&!!a,["navigation-item-top-nav-child"]:t&&!i,["navigation-item-page-header"]:this.navigationType==="page-header",["with-transition"]:!this.isInitialRender,["navigation-item-side-nav"]:this.navigationType==="side",["navigation-item-side-nav-collapsed"]:(!this.sideNavExpanded||!!this.displayNavigationTooltip)&&this.navigationType==="side",["navigation-item-side-nav-collapsed-with-label"]:!this.sideNavExpanded&&this.navigationType==="side"&&!!this.collapsedIconLabel&&!this.isSideNavMobile,["expandable"]:!!this.expandable,[`ic-theme-${this.theme}`]:this.theme!=="inherit"},onBlur:t&&!i?this.handleBlur:null,onClick:this.handleClick,"aria-current":a?"page":null,role:"listitem"},e("ic-tooltip",{key:"47bd9f5554262903f983694d51d78f3fcbed3525",label:this.generateTooltipLabel()||"",target:"navigation-item",placement:"right",class:{["tooltip-navigation-item"]:true,["tooltip-navigation-item-side-nav-collapsed"]:!!this.displayNavigationTooltip&&this.navigationType==="side",["tooltip-long-label-navigation-item-side-nav-expanded"]:this.el.hasAttribute("[display-navigation-tooltip = 'true']")}},this.renderNavigationItemContent()))}static get delegatesFocus(){return true}get el(){return n(this)}};u.style=p;export{u as ic_navigation_item};
2
+ //# sourceMappingURL=p-27de359f.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icNavigationItemCss","IcNavigationItemStyle0","NavigationItem","constructor","hostRef","this","isInitialRender","hostMutationObserver","ANIMATION_DURATION","parseInt","getCssProperty","ARIA_LABEL_STRING","deviceSize","DEVICE_SIZES","XL","focusStyle","getBrandForegroundAppearance","inTopNavSideMenu","isSideNavMobile","isTopNavChild","sideNavExpanded","ariaLabel","collapsedIconLabel","displayNavigationTooltip","download","expandable","href","selected","theme","displayDefaultNavigationItem","hreflang","target","rel","referrerpolicy","label","variant","ChevronIconComponent","h","class","svg","innerHTML","chevronIcon","IconComponent","el","querySelector","name","isSlotUsed","referrerPolicy","ref","itemEl","part","OpenInNew","tabindex","topNavResizedHandler","detail","size","_a","parentEl","customMobileBreakpoint","L","sideNavExpandHandler","sideNavMobile","sideNavToggleTooltip","handleBlur","relatedTarget","tagName","childBlur","emit","handleClick","navItemClicked","hostMutationCallback","mutationList","forceComponentUpdate","forEach","attributeName","attribute","getAttribute","forceUpdate","generateTooltipLabel","navigationSlot","textContent","children","renderNavigationItemContent","showTooltip","tooltip","shadowRoot","collapsedClass","timer","displayTooltip","setTimeout","classList","add","clearTimeout","remove","disconnectedCallback","navigationType","removeEventListener","_b","_c","disconnect","componentWillLoad","navType","parent","getNavItemParentDetails","getCurrentDeviceSize","contains","addEventListener","_d","_e","parentElement","_f","trim","hasAttribute","componentDidLoad","MutationObserver","observe","attributes","componentDidUpdate","brandChangeHandler","mode","setFocus","focus","render","Host","key","onBlur","onClick","role","placement"],"sources":["src/components/ic-navigation-item/ic-navigation-item.css?tag=ic-navigation-item&encapsulation=shadow","src/components/ic-navigation-item/ic-navigation-item.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n/**\n * @prop --ic-z-index-navigation-item: z-index of navigation item\n */\n\n:host {\n display: block;\n\n --navigation-link-colour: var(--ic-brand-text-color);\n}\n\n:host(:focus-within) {\n z-index: var(--ic-z-index-navigation-item);\n}\n\n/* chevron */\nsvg {\n width: var(--ic-space-xl);\n fill: var(--ic-brand-text-color);\n}\n\n.svg {\n margin-left: auto;\n}\n\n.chevron-container svg,\n.chevron-container .svg {\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n}\n\n.chevron-container {\n flex-grow: 1;\n}\n\n:host(.expandable.navigation-item) .link,\n:host(.expandable.navigation-item) ::slotted(a) {\n padding-right: 0;\n}\n\n:host(.navigation-item) .link,\n:host(.navigation-item) ::slotted(a) {\n height: calc(100% - var(--ic-space-xxs));\n width: fit-content;\n color: var(--navigation-link-colour);\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0 var(--ic-space-md) var(--ic-space-xxs);\n text-decoration: none;\n transition: var(--ic-easing-transition-fast);\n position: relative;\n white-space: nowrap;\n}\n\n:host(.navigation-item) ::slotted(a) {\n height: 100%;\n font: var(--ic-font-label) !important;\n letter-spacing: var(--ic-font-letter-spacing-0pt025) !important;\n padding: 0 var(--ic-space-md) !important;\n}\n\n:host(.navigation-item-selected) .link::after,\n:host(.navigation-item-selected) ::slotted(a.active)::after,\n:host(.navigation-item-top-nav) ::slotted(a.active)::after {\n content: \"\";\n height: 0.25rem;\n width: 100%;\n position: absolute;\n bottom: 0;\n background-color: var(--ic-top-navigation-theme);\n}\n\n:host(.navigation-item-selected.navigation-item-page-header)\n ::slotted(a.active)::after,\n:host(.navigation-item-selected.navigation-item-page-header) .link::after,\n:host(.navigation-item.navigation-item-page-header) ::slotted(a.active)::after,\n:host(.navigation-item-top-nav-child) ::slotted(a.active)::after {\n content: none;\n}\n\n:host(.navigation-item-side-menu-selected) .link,\n:host(.navigation-item-side-menu) ::slotted(a.active),\n:host(.navigation-item-top-nav-child) ::slotted(a.active) {\n box-shadow: none;\n}\n\n:host(.navigation-item) .link:hover:not(:focus) {\n background-color: var(--ic-brand-hover);\n cursor: pointer;\n}\n\n:host(.navigation-item:not(.navigation-item-page-header, .navigation-item-side-menu))\n ::slotted(a:hover:not(:focus)) {\n background-color: var(--ic-brand-hover) !important;\n}\n\n:host(.navigation-item:not(.navigation-item-top-nav-child, .navigation-item-side-menu, .navigation-item-top-nav-child-selected\n .navigation-item-side-menu-selected))\n .focus-indicator:focus-within {\n box-shadow: var(--ic-border-focus);\n border-radius: var(--ic-border-radius);\n}\n\n:host(.navigation-item) .link:focus,\n:host(.navigation-item) ::slotted(a:focus) {\n box-shadow: var(--ic-border-focus);\n border-radius: var(--ic-border-radius);\n outline: var(--ic-hc-focus-outline);\n}\n\n:host(.navigation-item-selected) .link:focus,\n:host(.navigation-item) ::slotted(a.active:focus) {\n box-shadow: var(--ic-border-focus);\n border-radius: var(--ic-border-radius);\n outline: var(--ic-hc-focus-outline);\n}\n\n:host(.navigation-item) .link:active:not(:focus),\n:host(.navigation-item) ::slotted(a:active:not(:focus)) {\n background-color: var(--ic-brand-active);\n}\n\n:host(.navigation-item-side-menu) .link,\n:host(.navigation-item-side-menu) ::slotted(a) {\n min-height: 2.5rem;\n height: auto;\n width: 100%;\n box-sizing: border-box;\n color: var(--ic-top-navigation-nav-item);\n\n --ic-typography-color: var(--ic-top-navigation-nav-item);\n\n display: flex;\n align-items: center;\n justify-content: flex-start;\n text-decoration: none;\n text-wrap: wrap;\n white-space: normal;\n transition: box-shadow var(--ic-transition-duration-fast),\n border-radius var(--ic-transition-duration-fast);\n}\n\n:host(.navigation-item-side-menu) ::slotted(a) {\n font: var(--ic-font-body) !important;\n letter-spacing: var(--ic-font-letter-spacing-0pt005) !important;\n transition: box-shadow var(--ic-easing-transition-fast),\n background-color var(--ic-easing-transition-fast);\n}\n\n:host(.navigation-item-side-menu) .link:hover:not(:focus) {\n background-color: var(--ic-top-navigation-nav-item-hover);\n}\n\n:host(.navigation-item-side-menu) ::slotted(a:hover:not(:focus)) {\n background-color: var(--ic-top-navigation-nav-item-hover) !important;\n}\n\n:host(.navigation-item-side-menu) .focus-indicator:focus-within {\n box-shadow: none;\n}\n\n:host(.navigation-item-side-menu) .link:focus,\n:host(.navigation-item-side-menu) ::slotted(a:focus) {\n box-shadow: var(--ic-border-focus-inset) !important;\n width: auto;\n border-radius: var(--ic-border-radius-inset) !important;\n}\n\n:host(.navigation-item-side-menu-selected) .link,\n:host(.navigation-item-side-menu-selected) ::slotted(a) {\n transition: box-shadow var(--ic-easing-transition-slow),\n background-color var(--ic-easing-transition-slow);\n}\n\n:host(.navigation-item-side-menu-selected) .link:focus,\n:host(.navigation-item-side-menu) ::slotted(a.active:focus),\n:host(.navigation-item-top-nav-child) ::slotted(a.active:focus) {\n margin-left: var(--ic-space-xs) !important;\n padding-left: var(--ic-space-xs) !important;\n}\n\n:host(.navigation-item-top-nav-child) .link,\n:host(.navigation-item-top-nav-child) ::slotted(a) {\n height: 2.5rem;\n width: fit-content;\n min-width: 9.063rem;\n color: var(--ic-top-navigation-nav-item);\n display: flex;\n align-items: center;\n justify-content: flex-start;\n padding: 0 var(--ic-space-md) !important;\n text-decoration: none;\n position: relative;\n transition: box-shadow var(--ic-transition-duration-fast),\n border-radius var(--ic-transition-duration-slow);\n}\n\n:host(.navigation-item-top-nav-child) ::slotted(a) {\n font: var(--ic-font-body) !important;\n letter-spacing: var(--ic-font-letter-spacing-0pt005) !important;\n}\n\n:host(.navigation-item-top-nav-child) .link:hover:not(:focus) {\n background-color: var(--ic-top-navigation-nav-item-hover) !important;\n}\n\n:host(.navigation-item-top-nav-child) ::slotted(a:hover):not(:focus) {\n background-color: var(--ic-top-navigation-nav-item-hover) !important;\n}\n\n:host(.navigation-item-top-nav-child) .link:focus,\n:host(.navigation-item-top-nav-child) ::slotted(a:focus) {\n z-index: 1;\n outline: var(--ic-hc-focus-outline);\n border-radius: var(--ic-border-radius-inset);\n box-shadow: var(--ic-border-focus-inset);\n transition: border-radius 0s, box-shadow var(--ic-transition-duration-fast);\n}\n\n:host(.navigation-item-top-nav-child) ::slotted(a.active:focus) {\n box-shadow: var(--ic-border-focus-inset);\n border-radius: var(--ic-border-radius-inset);\n}\n\n:host(.navigation-item-side-menu) .link:active:not(:focus) {\n background-color: var(--ic-top-navigation-nav-item-pressed);\n}\n\n:host(.navigation-item-top-nav-child) .link:active:not(:focus),\n:host(.navigation-item-top-nav-child) ::slotted(a:active):not(:focus) {\n outline: var(--ic-hc-focus-outline);\n background-color: var(--ic-top-navigation-nav-item-pressed);\n}\n\n:host(.navigation-item-top-nav-child) ::slotted(a:active):not(:focus),\n:host(.navigation-item-side-menu) ::slotted(a:active):not(:focus) {\n background-color: var(--ic-top-navigation-nav-item-pressed) !important;\n}\n\n:host(.navigation-item-side-menu-selected) *,\n:host(.navigation-item-top-nav-child-selected) *,\n:host(.navigation-item-side-menu) ::slotted(a.active),\n:host(.navigation-item-top-nav-child) ::slotted(a.active) {\n font-weight: 700 !important;\n}\n\n:host(.navigation-item-top-nav-child) ::slotted(a.active)::before,\n:host(.navigation-item-top-nav-child-selected) .link::before,\n:host(.navigation-item-side-menu-selected) .link::before,\n:host(.navigation-item-side-menu) ::slotted(a.active)::before,\n:host(.navigation-item-side-menu-selected) .link:focus::before,\n:host(.navigation-item-side-menu) ::slotted(a.active:focus)::before {\n content: \"\";\n position: absolute;\n left: 0;\n width: var(--ic-space-xs);\n height: inherit;\n min-height: 2.5rem;\n background-color: var(--ic-top-navigation-nav-item-banner);\n transition: left 0s;\n}\n\n:host(.navigation-item-side-menu-selected) .link::before,\n:host(.navigation-item-side-menu-selected) .link:focus::before {\n margin-top: var(--ic-space-xxs);\n}\n\n:host(.navigation-item-top-nav-child-selected) .link:focus {\n margin-left: var(--ic-space-xs);\n margin-right: calc(-1 * var(--ic-space-xs));\n padding-left: var(--ic-space-xs) !important;\n}\n\n:host(.navigation-item-top-nav-child-selected) .link:focus::before {\n left: calc(-1 * var(--ic-space-xs));\n z-index: 1;\n}\n\n:host(.navigation-item-side-menu-selected) .link::before,\n:host(.navigation-item-side-menu) ::slotted(a.active)::before,\n:host(.navigation-item-side-menu-selected) .link:focus::before,\n:host(.navigation-item-side-menu) ::slotted(a.active:focus)::before {\n z-index: 1;\n}\n\n:host(.navigation-item-side-menu-selected) .link:focus::before,\n:host(.navigation-item-side-menu) ::slotted(a.active:focus)::before,\n:host(.navigation-item-top-nav-child) ::slotted(a.active:focus)::before {\n left: calc(-1 * var(--ic-space-xs));\n}\n\n:host(.navigation-item-side-menu-selected) .link::after {\n display: none;\n}\n\n:host(.navigation-item-side-nav-collapsed) .link {\n height: 100%;\n}\n\n:host(.navigation-item-side-nav-collapsed) ::slotted(svg),\n:host(.navigation-item-side-nav-collapsed-with-label) ::slotted(svg) {\n margin: auto;\n pointer-events: none;\n}\n\n:host(.navigation-item-side-nav-collapsed) .icon,\n:host(.navigation-item-side-nav-collapsed-with-label) .icon,\n:host(.navigation-item-side-nav-collapsed-with-label) ic-typography {\n align-items: center;\n padding: 0;\n margin: auto 0;\n width: fit-content;\n pointer-events: none;\n}\n\n:host(.navigation-item-side-nav-collapsed-with-label) ic-typography {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 100%;\n text-align: center;\n}\n\n:host(.navigation-item-side-nav-collapsed-with-label) .link,\n:host(.navigation-item-side-nav-collapsed-with-label) ::slotted(a) {\n display: flex;\n flex-direction: column;\n height: fit-content;\n padding: var(--ic-space-xs) !important;\n gap: var(--ic-space-xxs);\n}\n\n:host(.navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label)\n .link,\n:host(.navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label)\n ::slotted(a) {\n height: auto !important;\n gap: 0;\n width: auto;\n padding: var(--ic-space-xs) !important;\n}\n\n:host(.navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label)\n ::slotted(a) {\n display: block;\n text-align: center;\n}\n\n:host(.navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label)\n .link\n ic-typography {\n opacity: 1;\n min-width: min-content;\n}\n\n:host(.navigation-item-side-nav-collapsed) svg,\n:host(.navigation-item-side-nav-collapsed-with-label) svg {\n display: none;\n}\n\n::slotted(svg) {\n fill: var(--ic-brand-text-color);\n height: var(--ic-space-lg);\n width: var(--ic-space-lg);\n margin-left: var(--ic-space-md);\n}\n\n.icon {\n height: 1.5rem;\n width: var(--ic-space-xxl);\n margin-left: calc(-1 * var(--ic-space-md));\n flex: 0 1 0%;\n position: relative;\n}\n\n.icon > ::slotted(*) {\n margin-left: var(--ic-space-md) !important;\n}\n\n:host(.navigation-item-side-nav-collapsed) .icon > ::slotted(*) {\n margin: auto !important;\n}\n\n:host(.navigation-item-side-nav) .link,\n:host(.navigation-item-side-nav) ::slotted(a) {\n height: var(--navigation-item-height, 4rem);\n min-height: var(--navigation-item-min-height);\n width: var(--navigation-item-width, auto);\n justify-content: var(--navigation-item-justify-content);\n display: flex;\n gap: var(--ic-space-xs);\n box-sizing: border-box;\n color: var(--navigation-item-child-color) !important;\n text-decoration: none !important;\n white-space: nowrap;\n padding: 0 var(--ic-space-md);\n text-wrap: wrap;\n}\n\n:host(.navigation-item-side-nav.navigation-item-top-nav-child) .link,\n:host(.navigation-item-side-nav.navigation-item-top-nav-child) ::slotted(a) {\n height: var(--navigation-item-child-height);\n width: var(--navigation-group-width);\n color: var(--navigation-item-child-color) !important;\n display: flex;\n gap: 0.625rem;\n box-sizing: border-box;\n min-width: 0;\n transition: box-shadow var(--ic-easing-transition-fast);\n text-decoration: none !important;\n white-space: nowrap;\n}\n\n:host(.navigation-item-side-nav.navigation-item-top-nav-child) .link:focus,\n:host(.navigation-item-side-nav.navigation-item-top-nav-child)\n ::slotted(a:focus) {\n box-shadow: var(--ic-border-focus-dark);\n}\n\n:host(.navigation-item-side-nav.navigation-item-side-menu) .link:active {\n background-color: var(--navigation-item-child-active);\n}\n\n:host(.navigation-item-side-nav.navigation-item-top-nav-child) .link:active,\n:host(.navigation-item-side-nav.navigation-item-top-nav-child)\n ::slotted(a:active) {\n background-color: var(--navigation-item-child-active);\n}\n\n:host(.navigation-item-side-nav) a.link ic-typography,\n:host(.navigation-item-side-nav.navigation-item-top-nav-child)\n a.link\n ic-typography,\n:host(.navigation-item-side-nav) div.link ic-typography,\n:host(.navigation-item-side-nav.navigation-item-top-nav-child)\n div.link\n ic-typography,\n.navigation-item-side-nav-slotted-text {\n opacity: var(--navigation-item-label-opacity);\n transition: opacity var(--ic-easing-transition-slow);\n white-space: wrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n\n:host(.navigation-item-side-nav.navigation-item-selected) .link,\n:host(.navigation-item-side-nav.navigation-item) ::slotted(a.active) {\n box-shadow: inset 0.313rem 0 0 var(--ic-brand-text-color);\n}\n\n:host(.navigation-item-side-nav.navigation-item-selected) .link::before,\n:host(.navigation-item-side-nav) ::slotted(a.active)::before {\n content: \"\";\n display: block;\n position: absolute;\n inset: 0 0 0 0.313rem;\n border-radius: 0.688rem !important;\n transition: var(--ic-easing-transition-slow);\n}\n\n:host(.navigation-item-side-nav.navigation-item-selected) .link:focus::before,\n:host(.navigation-item-side-nav) ::slotted(a.active:focus)::before {\n box-shadow: var(--ic-border-focus-inset);\n}\n\n:host(:not(.navigation-item-side-nav-collapsed).navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label)\n .link {\n opacity: var(--navigation-item-label-opacity);\n height: auto;\n}\n\n:host(.navigation-item-top-nav-child.navigation-item-side-nav-collapsed-with-label)\n .link,\n:host(.navigation-item-top-nav-child.navigation-item-side-nav-collapsed-with-label)\n ::slotted(a) {\n min-width: var(--navigation-group-item-min-width);\n padding: var(--ic-space-xs) !important;\n height: auto;\n gap: 0;\n}\n\n:host(.navigation-item-top-nav-child.navigation-item-side-nav-collapsed-with-label)\n ::slotted(a) {\n display: block;\n}\n\n:host(.navigation-item-side-nav.navigation-item-selected) .link::after,\n:host(.navigation-item-side-nav) ::slotted(a.active)::after {\n display: none;\n}\n\n:host(.navigation-item-side-nav.navigation-item) .link:focus,\n:host(.navigation-item-side-nav.navigation-item) ::slotted(a:focus) {\n box-shadow: var(--ic-border-focus-inset);\n border-radius: var(--ic-border-radius-inset);\n background-color: transparent;\n}\n\n:host(.navigation-item-side-nav.navigation-item-selected) .link:focus,\n:host(.navigation-item-side-nav) ::slotted(a.active:focus) {\n margin: 0 auto;\n box-shadow: inset 0.313rem 0 0 var(--ic-brand-text-color);\n border-radius: 0;\n}\n\n:host(.navigation-item-side-nav.navigation-item) .link:hover:not(:focus) {\n background-color: var(--ic-brand-hover) !important;\n}\n\n:host(.navigation-item-page-header).link,\n:host(.navigation-item-page-header) a,\n:host(.navigation-item-page-header) ::slotted(a) {\n height: 2.5rem !important;\n color: var(--ic-color-text-primary) !important;\n transition: all var(--ic-easing-transition-fast) !important;\n box-shadow: rgba(23 89 188 / 0%) !important;\n}\n\n:host(.navigation-item-page-header.navigation-item-selected) .link::after,\n:host(.navigation-item-page-header) ::slotted(a.active)::after {\n content: \" \" !important;\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n height: var(--ic-space-xxs);\n background-color: var(--ic-action-default) !important;\n}\n\n:host(.navigation-item-page-header) .link:hover,\n:host(.navigation-item-page-header) ::slotted(.link:hover),\n:host(.navigation-item-page-header) ::slotted(a:hover),\n:host(.navigation-item-page-header) .link:hover:not(:focus) {\n background-color: var(--ic-action-default-bg-hover) !important;\n cursor: pointer;\n}\n\n:host(.navigation-item-page-header) .link:focus,\n:host(.navigation-item-page-header) ::slotted(a:focus) {\n box-shadow: var(--ic-border-focus);\n}\n\n:host(.navigation-item-page-header) .link:active,\n:host(.navigation-item-page-header) ::slotted(a:active) {\n background-color: var(--ic-action-default-bg-pressed) !important;\n}\n\n:host(.navigation-item-page-header.navigation-item-selected) .link:focus::after,\n:host(.navigation-item-page-header) ::slotted(a.active:focus)::after {\n border-bottom-left-radius: var(--ic-border-radius);\n border-bottom-right-radius: var(--ic-border-radius);\n}\n\n:host(.navigation-item-page-header.navigation-item-selected.with-transition)\n .link,\n:host(.navigation-item-page-header.navigation-item-selected.with-transition)\n ::slotted(a.active) {\n transition: all var(--ic-easing-transition-fast),\n border-color var(--ic-transition-duration-fast);\n}\n\n:host(.navigation-item-page-header) ::slotted(a.active)::before,\n:host(.navigation-item-page-header) ::slotted(a.active:focus)::before,\n:host(.navigation-item-page-header.navigation-item-selected)\n .link:focus::before {\n display: none;\n}\n\n.open-in-new-icon {\n flex: 1;\n}\n\n.open-in-new-icon svg {\n margin-top: var(--ic-space-xxs);\n padding-left: var(--ic-space-xxs);\n}\n\n:host(.navigation-item-side-nav) .open-in-new-icon {\n margin-left: calc(-1 * var(--ic-space-xs));\n}\n\n:host(.navigation-item-top-nav) .open-in-new-icon svg,\n:host(.navigation-item-page-header) .open-in-new-icon svg,\n:host(.navigation-item-side-nav) .open-in-new-icon svg {\n height: 0.875rem;\n width: 0.875rem;\n}\n\n:host(.navigation-item-side-menu) .open-in-new-icon svg,\n:host(.navigation-item-top-nav-child) .open-in-new-icon svg {\n height: var(--ic-space-md);\n width: var(--ic-space-md);\n}\n\n:host(.navigation-item-page-header) .open-in-new-icon svg,\n:host(.navigation-item-top-nav-child) .open-in-new-icon svg,\n:host(.navigation-item-side-menu) .open-in-new-icon svg {\n fill: var(--ic-color-text-primary);\n}\n\n@media (forced-colors: active) {\n .open-in-new-icon svg {\n fill: currentcolor;\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n forceUpdate,\n Listen,\n Method,\n h,\n Host,\n Prop,\n State,\n} from \"@stencil/core\";\n\nimport {\n DEVICE_SIZES,\n getCssProperty,\n getCurrentDeviceSize,\n getBrandForegroundAppearance,\n getNavItemParentDetails,\n isSlotUsed,\n} from \"../../utils/helpers\";\nimport {\n IcNavType,\n IcBrand,\n IcBrandForeground,\n IcBrandForegroundNoDefault,\n IcThemeMode,\n} from \"../../utils/types\";\n\nimport chevronIcon from \"../../assets/chevron-icon.svg\";\n\nimport OpenInNew from \"../../assets/OpenInNew.svg\";\nimport { IcExpandedDetail } from \"../ic-side-navigation/ic-side-navigation.types\";\n\n/**\n * @part link - The `<a>` within ic-navigation-item\n * @slot badge - Badge component overlaying the top right of the icon.\n * @slot icon - Content will be displayed to the left of the label for expanded navigation items, and in replacement of the label for collapsed navigation items.\n */\n\n@Component({\n tag: \"ic-navigation-item\",\n styleUrl: \"ic-navigation-item.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class NavigationItem {\n private navigationSlot: HTMLElement | null;\n private isInitialRender: boolean = true;\n private itemEl?: HTMLElement;\n private hostMutationObserver: MutationObserver | null = null;\n private ANIMATION_DURATION =\n parseInt(getCssProperty(\"--ic-transition-duration-slow\")) || 0;\n private ARIA_LABEL_STRING = \"aria-label\";\n\n @Element() el: HTMLIcNavigationItemElement;\n\n @State() deviceSize: number = DEVICE_SIZES.XL;\n @State() focusStyle: IcBrandForegroundNoDefault | IcBrandForeground =\n getBrandForegroundAppearance();\n @State() inTopNavSideMenu: boolean = false;\n @State() isSideNavMobile: boolean = false;\n @State() isTopNavChild: boolean = false;\n @State() navigationType: IcNavType | \"\";\n @State() parentEl: HTMLElement | null;\n @State() sideNavExpanded: boolean = false;\n @State() ariaLabel: string = \"\";\n\n /**\n * @internal If `true`, the icon and label will be displayed when side navigation is collapsed.\n */\n @Prop() collapsedIconLabel?: boolean = false;\n\n /**\n * @internal If `true`, the navigation item will be displayed within a tooltip.\n */\n @Prop() displayNavigationTooltip?: boolean = false;\n\n /**\n * If `true`, the user can save the linked URL instead of navigating to it.\n */\n @Prop() download?: string | boolean = false;\n\n /**\n * @internal If `true`, the navigation item will be expandable.\n */\n @Prop() expandable?: boolean = false;\n\n /**\n * The destination of the navigation item.\n */\n @Prop() href?: string = \"\";\n\n /**\n * The human language of the linked URL.\n */\n @Prop() hreflang?: string;\n\n /**\n * The label of the navigation item.\n */\n @Prop() label?: string;\n\n /**\n * The relationship of the linked URL as space-separated link types.\n */\n @Prop() rel?: string;\n\n /**\n * How much of the referrer to send when following the link.\n */\n @Prop() referrerpolicy?: ReferrerPolicy;\n\n /**\n * If `true`, the navigation item will be set in a selected state.\n */\n @Prop() selected?: boolean = false;\n\n /**\n * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe).\n */\n @Prop() target?: string;\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * @internal - Emitted when item loses focus.\n */\n @Event() childBlur: EventEmitter<void>;\n\n /**\n * @internal - Emitted when navigation item clicked.\n */\n @Event() navItemClicked: EventEmitter<void>;\n\n disconnectedCallback(): void {\n if (this.navigationType === \"side\") {\n this.parentEl?.removeEventListener(\n \"icSideNavExpanded\",\n this.sideNavExpandHandler as EventListener\n );\n } else if (this.navigationType === \"top\") {\n this.parentEl?.removeEventListener(\n \"icTopNavResized\",\n this.topNavResizedHandler as EventListener\n );\n }\n this.hostMutationObserver?.disconnect();\n }\n\n componentWillLoad(): void {\n const { navType, parent } = getNavItemParentDetails(this.el);\n this.navigationType = navType;\n this.parentEl = parent;\n this.deviceSize = getCurrentDeviceSize();\n\n this.sideNavExpanded =\n this.parentEl?.classList.contains(\"sm-expanded\") ||\n this.parentEl?.classList.contains(\"xs-menu-open\") ||\n false;\n\n if (this.navigationType === \"side\") {\n this.parentEl?.addEventListener(\n \"icSideNavExpanded\",\n this.sideNavExpandHandler as EventListener\n );\n } else if (this.navigationType === \"top\") {\n this.parentEl?.addEventListener(\n \"icTopNavResized\",\n this.topNavResizedHandler as EventListener\n );\n if (this.el.parentElement?.tagName === \"IC-NAVIGATION-GROUP\")\n this.isTopNavChild = true;\n if (\n this.deviceSize <=\n (this.parentEl as HTMLIcTopNavigationElement).customMobileBreakpoint!\n )\n this.inTopNavSideMenu = true;\n }\n\n this.navigationSlot = this.el.querySelector('[slot=\"navigation-item\"]');\n if (this.navigationSlot) {\n this.navigationSlot.ariaLabel =\n this.navigationSlot.textContent?.trim() || null;\n }\n\n if (this.el.hasAttribute(this.ARIA_LABEL_STRING)) {\n this.ariaLabel = this.el.getAttribute(this.ARIA_LABEL_STRING) || \"\";\n }\n }\n\n componentDidLoad(): void {\n this.hostMutationObserver = new MutationObserver(this.hostMutationCallback);\n this.hostMutationObserver.observe(this.el, {\n attributes: true,\n });\n }\n\n componentDidUpdate(): void {\n this.isInitialRender = false;\n }\n\n @Listen(\"brandChange\", { target: \"document\" })\n brandChangeHandler({ detail }: CustomEvent<IcBrand>): void {\n this.focusStyle = detail.mode;\n }\n\n /**\n * Sets focus on the nav item.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.itemEl ? this.itemEl.focus() : this.el.querySelector(\"a\")?.focus();\n }\n\n private displayDefaultNavigationItem = (\n href: string,\n hreflang: string | undefined,\n target: string | undefined,\n rel: string | undefined,\n referrerpolicy: ReferrerPolicy | undefined,\n download: string | boolean | undefined,\n label: string\n ): HTMLElement => {\n const variant =\n this.isTopNavChild || this.inTopNavSideMenu ? \"body\" : \"label\";\n const ChevronIconComponent = this.expandable && (\n <div class={{ svg: true }} innerHTML={chevronIcon}></div>\n );\n const IconComponent = this.el.querySelector('[slot=\"icon\"]') && (\n <div class=\"icon\">\n <slot name=\"icon\"></slot>\n {isSlotUsed(this.el, \"badge\") && <slot name=\"badge\"></slot>}\n </div>\n );\n\n if (href !== \"\") {\n return (\n <a\n href={href}\n target={target}\n rel={rel}\n hreflang={hreflang}\n referrerPolicy={referrerpolicy}\n download={download !== false ? download : null}\n class=\"link\"\n ref={(el) => (this.itemEl = el)}\n part=\"link\"\n aria-label={this.ariaLabel ? this.ariaLabel : null}\n >\n {IconComponent}\n\n <ic-typography variant={variant}>{label}</ic-typography>\n <div class=\"chevron-container\">{ChevronIconComponent}</div>\n {target === \"_blank\" && (\n <span class=\"open-in-new-icon\" innerHTML={OpenInNew} />\n )}\n </a>\n );\n }\n\n return (\n <div tabindex=\"0\" class=\"link\" ref={(el) => (this.itemEl = el)}>\n {IconComponent}\n <ic-typography variant={variant}>{label}</ic-typography>\n {ChevronIconComponent}\n </div>\n );\n };\n\n private topNavResizedHandler = ({\n detail,\n }: CustomEvent<{ size: number }>): void => {\n const { size } = detail;\n if (size !== this.deviceSize) {\n this.deviceSize = size;\n this.inTopNavSideMenu =\n size <=\n ((this.parentEl as HTMLIcTopNavigationElement)\n ?.customMobileBreakpoint || DEVICE_SIZES.L);\n }\n };\n\n private sideNavExpandHandler = ({\n detail,\n }: CustomEvent<IcExpandedDetail>): void => {\n const { sideNavExpanded, sideNavMobile } = detail;\n this.sideNavExpanded = sideNavExpanded;\n this.isSideNavMobile = sideNavMobile;\n this.sideNavToggleTooltip(!(sideNavExpanded || sideNavMobile));\n };\n\n private handleBlur = ({ relatedTarget }: FocusEvent) => {\n if (\n relatedTarget === null ||\n (relatedTarget as HTMLElement).tagName !== \"IC-NAVIGATION-ITEM\"\n ) {\n this.childBlur.emit();\n }\n };\n\n private handleClick = () => {\n this.navItemClicked.emit();\n };\n\n // triggered when attributes of host element change\n private hostMutationCallback = (mutationList: MutationRecord[]): void => {\n let forceComponentUpdate = false;\n mutationList.forEach(({ attributeName }) => {\n if (attributeName) {\n const attribute = this.el.getAttribute(attributeName);\n if (attribute && attributeName === this.ARIA_LABEL_STRING) {\n this.ariaLabel = attribute;\n forceComponentUpdate = true;\n }\n }\n });\n if (forceComponentUpdate) {\n forceUpdate(this);\n }\n };\n\n private generateTooltipLabel = () => {\n if (this.label) {\n return this.label;\n }\n\n if (this.navigationSlot) {\n return this.navigationSlot.textContent;\n }\n\n if (this.el.children[0]) {\n return this.el.children[0].textContent;\n }\n\n return \"\";\n };\n\n private renderNavigationItemContent = () => {\n if (this.label) {\n return this.displayDefaultNavigationItem(\n this.href!,\n this.hreflang,\n this.target,\n this.rel,\n this.referrerpolicy,\n this.download,\n this.label\n );\n }\n\n if (this.navigationSlot) {\n return <slot name=\"navigation-item\"></slot>;\n }\n return <slot></slot>;\n };\n\n // Displays tooltip only once the collapsing animation is finished\n private sideNavToggleTooltip = (showTooltip: boolean) => {\n const tooltip = this.el.shadowRoot?.querySelector(\"ic-tooltip\");\n const collapsedClass = \"tooltip-navigation-item-side-nav-collapsed\";\n let timer;\n\n if (tooltip) {\n if (showTooltip) {\n tooltip.displayTooltip(false); // Hides tooltip for when mouse is hovering over icon\n timer = setTimeout(() => {\n tooltip.classList.add(collapsedClass);\n }, this.ANIMATION_DURATION);\n } else {\n clearTimeout(timer);\n tooltip.classList.remove(collapsedClass);\n }\n }\n };\n\n render() {\n const { inTopNavSideMenu, isTopNavChild, selected } = this;\n\n return (\n <Host\n class={{\n [\"navigation-item\"]: true,\n [\"navigation-item-top-nav\"]:\n !inTopNavSideMenu && this.navigationType === \"top\",\n [\"navigation-item-top-nav-child-selected\"]:\n isTopNavChild && !inTopNavSideMenu && !!selected,\n [this.focusStyle]:\n (!inTopNavSideMenu && !isTopNavChild) ||\n (this.navigationType === \"side\" && isTopNavChild),\n [\"navigation-item-selected\"]: !isTopNavChild && !!selected,\n [\"navigation-item-side-menu\"]: inTopNavSideMenu,\n [\"navigation-item-side-menu-selected\"]:\n inTopNavSideMenu && !!selected,\n [\"navigation-item-top-nav-child\"]: isTopNavChild && !inTopNavSideMenu,\n [\"navigation-item-page-header\"]:\n this.navigationType === \"page-header\",\n [\"with-transition\"]: !this.isInitialRender,\n [\"navigation-item-side-nav\"]: this.navigationType === \"side\",\n [\"navigation-item-side-nav-collapsed\"]:\n (!this.sideNavExpanded || !!this.displayNavigationTooltip) &&\n this.navigationType === \"side\",\n [\"navigation-item-side-nav-collapsed-with-label\"]:\n !this.sideNavExpanded &&\n this.navigationType === \"side\" &&\n !!this.collapsedIconLabel &&\n !this.isSideNavMobile,\n [\"expandable\"]: !!this.expandable,\n [`ic-theme-${this.theme}`]: this.theme !== \"inherit\",\n }}\n onBlur={isTopNavChild && !inTopNavSideMenu ? this.handleBlur : null}\n onClick={this.handleClick}\n aria-current={selected ? \"page\" : null}\n role=\"listitem\"\n >\n {/* Tooltip enabled by applying navigation-item-side-nav-collapsed class to host */}\n <ic-tooltip\n label={this.generateTooltipLabel() || \"\"}\n target=\"navigation-item\"\n placement=\"right\"\n class={{\n [\"tooltip-navigation-item\"]: true,\n [\"tooltip-navigation-item-side-nav-collapsed\"]:\n !!this.displayNavigationTooltip && this.navigationType === \"side\",\n [\"tooltip-long-label-navigation-item-side-nav-expanded\"]:\n this.el.hasAttribute(\"[display-navigation-tooltip = 'true']\"),\n }}\n >\n {this.renderNavigationItemContent()}\n </ic-tooltip>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r as s,h as i,H as t,g as e}from"./p-8e4e97b4.js";import{D as h,e as a,f as c}from"./p-269f841d.js";const r=":host{display:block}:host ol{display:flex;list-style-type:none;align-items:center;flex-wrap:wrap;padding:0;margin:0}:host(.ic-breadcrumb-group-back) ol ::slotted(ic-breadcrumb){display:none}:host(.ic-breadcrumb-group-back) ol ::slotted(ic-breadcrumb.show){display:flex}:host(.ic-breadcrumb-group-collapsed) ol ::slotted(ic-breadcrumb.hide){display:none;opacity:0;visibility:hidden}:host(.ic-breadcrumb-group-collapsed) ol ::slotted(ic-breadcrumb.visuallyhidden){display:block;opacity:0;transition:all var(--ic-easing-transition-slow)}:host(.ic-breadcrumb-group-collapsed) ol ::slotted(ic-breadcrumb.fade){opacity:1}";const l=r;const d=class{constructor(i){s(this,i);this.ADD_CLASS_DELAY=50;this.IC_BREADCRUMB="ic-breadcrumb";this.resizeObserver=null;this.SHOW_BACK_ICON="show-back-icon";this.deviceSize=h.XL;this.expandedBreadcrumbs=false;this.backBreadcrumbOnly=false;this.collapsed=false;this.monochrome=false;this.theme="inherit";this.setBreadcrumbTheme=()=>{const s=Array.from(this.el.querySelectorAll(this.IC_BREADCRUMB));s.forEach((s=>{s.theme=this.theme}))};this.setBreadcrumbMonochrome=()=>{const s=Array.from(this.el.querySelectorAll(this.IC_BREADCRUMB));s.forEach((s=>{s.monochrome=this.monochrome}))};this.setBackBreadcrumb=()=>{if(this.backBreadcrumbOnly){this.setLastParentCollapsedBackBreadcrumb()}else{this.revertLastParentCollapsedBreadcrumb()}};this.setBackBreadcrumbAttr=()=>{if(this.lastParentBreadcrumb){this.lastParentBreadcrumb.classList.add("show");this.lastParentBreadcrumb.setAttribute(this.SHOW_BACK_ICON,"true")}};this.getLastParentBreadcrumb=()=>{const s=Array.from(this.el.querySelectorAll(this.IC_BREADCRUMB));if(s.length===1){return null}this.breadcrumbs=s;this.breadcrumb=this.breadcrumbs[this.breadcrumbs.length-2];return this.breadcrumb};this.lastParentBreadcrumb=this.getLastParentBreadcrumb();this.setDefaultBreadcrumbs=()=>{const s=Array.from(this.el.querySelectorAll(this.IC_BREADCRUMB));s.forEach((s=>{s.setAttribute(this.SHOW_BACK_ICON,"false")}))};this.setCollapsed=()=>{const s=Array.from(this.el.querySelectorAll(this.IC_BREADCRUMB));const i=s[0];if(this.collapsedBreadcrumbs){this.collapsedBreadcrumbs.forEach((s=>{s.classList.remove("visuallyhidden");s.classList.remove("fade")}))}if(this.collapsed){this.renderCollapsedBreadcrumb();this.collapsedBreadcrumbs=s.splice(1,s.length-2).filter((s=>!s.classList.contains("collapsed-breadcrumb-wrapper")));if(!this.backBreadcrumbOnly){this.collapsedBreadcrumbs.forEach((s=>s.classList.add("hide")))}if(i){i.insertAdjacentElement("afterend",this.collapsedBreadcrumbWrapper)}}else{this.collapsedBreadcrumbWrapper.remove()}};this.clickHandler=()=>{this.handleHiddenCollapsedBreadcrumbs()};this.renderCollapsedBreadcrumb=()=>{if(this.collapsedBreadcrumbEl===undefined){this.collapsedBreadcrumbWrapper=document.createElement("ic-breadcrumb");this.collapsedBreadcrumbWrapper.classList.add("collapsed-breadcrumb-wrapper");this.collapsedBreadcrumbEl=document.createElement("button");const s=document.createElement("span");s.id="collapsed-button-label";s.innerText="Collapsed breadcrumbs";s.className="hide";this.collapsedBreadcrumbEl.setAttribute("aria-labelledby","collapsed-button-label");const i=document.createElement("span");i.id="collapsed-button-described";i.innerText="Select to view collapsed breadcrumbs";i.className="hide";this.collapsedBreadcrumbEl.setAttribute("aria-describedby","collapsed-button-described");this.collapsedBreadcrumbEl.id="collapsed-ellipsis";this.collapsedBreadcrumbEl.innerText="...";this.collapsedBreadcrumbEl.classList.add("collapsed-breadcrumb");this.collapsedBreadcrumbEl.addEventListener("click",this.clickHandler);this.collapsedBreadcrumbWrapper.append(i);this.collapsedBreadcrumbWrapper.append(s);this.collapsedBreadcrumbWrapper.append(this.collapsedBreadcrumbEl)}};this.handleHiddenCollapsedBreadcrumbs=()=>{this.collapsedBreadcrumbWrapper.remove();this.collapsedBreadcrumbs.forEach((s=>{s.classList.add("visuallyhidden");s.classList.remove("hide");setTimeout((()=>{s.classList.add("fade")}),this.ADD_CLASS_DELAY);this.removeVisuallyHiddenClass(s)}));this.expandedBreadcrumbs=true;this.collapsedBreadcrumbs[0].setFocus()};this.transitionendHandler=s=>{if(s.propertyName==="opacity"){s.target.classList.remove("visuallyhidden")}};this.removeVisuallyHiddenClass=s=>{s.addEventListener("transitionend",this.transitionendHandler)};this.setLastParentCollapsedBackBreadcrumb=()=>{this.lastParentBreadcrumb=this.getLastParentBreadcrumb();this.setBackBreadcrumbAttr();if(this.lastParentBreadcrumb){this.lastParentBreadcrumb.classList.remove("hide");this.lastParentBreadcrumb.classList.add("show")}};this.revertLastParentCollapsedBreadcrumb=()=>{if(this.lastParentBreadcrumb){this.lastParentBreadcrumb.setAttribute(this.SHOW_BACK_ICON,"false");if(this.collapsed){this.lastParentBreadcrumb.classList.add("hide")}}};this.resizeObserverCallback=s=>{if(s!==this.deviceSize){this.deviceSize=s;if(this.deviceSize<=h.S){this.el.setAttribute("back-breadcrumb-only","true");if(this.collapsed){this.setLastParentCollapsedBackBreadcrumb()}else{this.setBackBreadcrumb()}}else{this.el.setAttribute("back-breadcrumb-only","false");if(this.collapsed&&this.breadcrumbs&&this.breadcrumbs.length>2){this.revertLastParentCollapsedBreadcrumb();if(this.expandedBreadcrumbs){this.setDefaultBreadcrumbs()}else{this.setCollapsed()}}else{this.setDefaultBreadcrumbs()}}}};this.runResizeObserver=()=>{this.resizeObserver=new ResizeObserver((()=>{const s=a();this.resizeObserverCallback(s)}));this.resizeObserver.observe(this.el)}}watchBackBreadcrumbHandler(){this.setBackBreadcrumb()}watchCollapsedHandler(){this.setCollapsed()}watchMonochromeHandler(){this.setBreadcrumbMonochrome()}watchThemeHandler(){this.setBreadcrumbTheme()}componentWillLoad(){const s=Array.from(this.el.querySelectorAll(this.IC_BREADCRUMB));this.setBreadcrumbTheme();this.setBreadcrumbMonochrome();if(this.backBreadcrumbOnly){this.setBackBreadcrumb()}else{c(this.runResizeObserver)}if(this.collapsed&&s.length>2){if(a()===h.S){this.setLastParentCollapsedBackBreadcrumb()}else{this.setCollapsed()}}}disconnectedCallback(){this.breadcrumb&&this.breadcrumb.removeEventListener("transitionend",this.transitionendHandler);this.collapsedBreadcrumbEl&&this.collapsedBreadcrumbEl.removeEventListener("click",this.clickHandler)}render(){return i(t,{key:"aeb0ffb06d519727c806ff53ca569fb3f5e89f45",class:{"ic-breadcrumb-group-back":!!this.backBreadcrumbOnly,"ic-breadcrumb-group-collapsed":!!this.collapsed,[`ic-theme-${this.theme}`]:this.theme!=="inherit"}},i("nav",{key:"c5b6ceb2ecbcd99f331981ed7d41d8f65929484b","aria-label":"breadcrumbs"},i("ol",{key:"6204a3fc1a832524efd7f18e7b3ddcc7e26c0fa4"},i("slot",{key:"d43502ff8a825c31983b661d4221b610aaad5d94"}))))}get el(){return e(this)}static get watchers(){return{backBreadcrumbOnly:["watchBackBreadcrumbHandler"],collapsed:["watchCollapsedHandler"],monochrome:["watchMonochromeHandler"],theme:["watchThemeHandler"]}}};d.style=l;export{d as ic_breadcrumb_group};
2
+ //# sourceMappingURL=p-2cb55e86.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icBreadcrumbGroupCss","IcBreadcrumbGroupStyle0","BreadcrumbGroup","constructor","hostRef","this","ADD_CLASS_DELAY","IC_BREADCRUMB","resizeObserver","SHOW_BACK_ICON","deviceSize","DEVICE_SIZES","XL","expandedBreadcrumbs","backBreadcrumbOnly","collapsed","monochrome","theme","setBreadcrumbTheme","allBreadcrumbs","Array","from","el","querySelectorAll","forEach","breadcrumb","setBreadcrumbMonochrome","setBackBreadcrumb","setLastParentCollapsedBackBreadcrumb","revertLastParentCollapsedBreadcrumb","setBackBreadcrumbAttr","lastParentBreadcrumb","classList","add","setAttribute","getLastParentBreadcrumb","length","breadcrumbs","setDefaultBreadcrumbs","setCollapsed","firstBreadcrumb","collapsedBreadcrumbs","remove","renderCollapsedBreadcrumb","splice","filter","contains","insertAdjacentElement","collapsedBreadcrumbWrapper","clickHandler","handleHiddenCollapsedBreadcrumbs","collapsedBreadcrumbEl","undefined","document","createElement","ariaLabel","id","innerText","className","ariaDescribed","addEventListener","append","setTimeout","removeVisuallyHiddenClass","setFocus","transitionendHandler","event","propertyName","target","resizeObserverCallback","currSize","S","runResizeObserver","ResizeObserver","getCurrentDeviceSize","observe","watchBackBreadcrumbHandler","watchCollapsedHandler","watchMonochromeHandler","watchThemeHandler","componentWillLoad","checkResizeObserver","disconnectedCallback","removeEventListener","render","h","Host","key","class"],"sources":["src/components/ic-breadcrumb-group/ic-breadcrumb-group.css?tag=ic-breadcrumb-group&encapsulation=shadow","src/components/ic-breadcrumb-group/ic-breadcrumb-group.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n:host ol {\n display: flex;\n list-style-type: none;\n align-items: center;\n flex-wrap: wrap;\n padding: 0;\n margin: 0;\n}\n\n:host(.ic-breadcrumb-group-back) ol ::slotted(ic-breadcrumb) {\n display: none;\n}\n\n:host(.ic-breadcrumb-group-back) ol ::slotted(ic-breadcrumb.show) {\n display: flex;\n}\n\n:host(.ic-breadcrumb-group-collapsed) ol ::slotted(ic-breadcrumb.hide) {\n display: none;\n opacity: 0;\n visibility: hidden;\n}\n\n:host(.ic-breadcrumb-group-collapsed)\n ol\n ::slotted(ic-breadcrumb.visuallyhidden) {\n display: block;\n opacity: 0;\n transition: all var(--ic-easing-transition-slow);\n}\n\n:host(.ic-breadcrumb-group-collapsed) ol ::slotted(ic-breadcrumb.fade) {\n opacity: 1;\n}\n","import { Component, Host, h, Element, Prop, State, Watch } from \"@stencil/core\";\nimport {\n checkResizeObserver,\n DEVICE_SIZES,\n getCurrentDeviceSize,\n} from \"../../utils/helpers\";\nimport { IcThemeMode } from \"../../utils/types\";\n\n@Component({\n tag: \"ic-breadcrumb-group\",\n styleUrl: \"ic-breadcrumb-group.css\",\n shadow: true,\n})\n\n// Added ResizeObserver to find out width of breadcrumbs and parents. Use side navigation long title for ref.\nexport class BreadcrumbGroup {\n private ADD_CLASS_DELAY = 50;\n private breadcrumb: HTMLIcBreadcrumbElement;\n private breadcrumbs: HTMLIcBreadcrumbElement[];\n private collapsedBreadcrumbEl: HTMLButtonElement;\n private collapsedBreadcrumbs: HTMLIcBreadcrumbElement[];\n private collapsedBreadcrumbWrapper: HTMLIcBreadcrumbElement;\n private IC_BREADCRUMB: string = \"ic-breadcrumb\";\n private resizeObserver: ResizeObserver | null = null;\n private SHOW_BACK_ICON: string = \"show-back-icon\";\n\n @Element() el: HTMLIcBreadcrumbGroupElement;\n\n @State() deviceSize: number = DEVICE_SIZES.XL;\n @State() expandedBreadcrumbs: boolean = false;\n\n /**\n * If `true`, display only a single breadcrumb for the parent page with a back icon.\n */\n @Prop() backBreadcrumbOnly?: boolean = false;\n @Watch(\"backBreadcrumbOnly\")\n watchBackBreadcrumbHandler(): void {\n this.setBackBreadcrumb();\n }\n\n /**\n * If `true`, all breadcrumbs between the first and last breadcrumb will be collapsed.\n */\n @Prop() collapsed?: boolean = false;\n @Watch(\"collapsed\")\n watchCollapsedHandler(): void {\n this.setCollapsed();\n }\n\n /**\n * If `true`, the breadcrumb group will display as black in the light theme, and white in the dark theme.\n */\n @Prop() monochrome?: boolean = false;\n @Watch(\"monochrome\")\n watchMonochromeHandler(): void {\n this.setBreadcrumbMonochrome();\n }\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n @Watch(\"theme\")\n watchThemeHandler(): void {\n this.setBreadcrumbTheme();\n }\n\n componentWillLoad(): void {\n const allBreadcrumbs = Array.from(\n this.el.querySelectorAll(this.IC_BREADCRUMB)\n );\n\n this.setBreadcrumbTheme();\n this.setBreadcrumbMonochrome();\n\n if (this.backBreadcrumbOnly) {\n this.setBackBreadcrumb();\n } else {\n checkResizeObserver(this.runResizeObserver);\n }\n\n if (this.collapsed && allBreadcrumbs.length > 2) {\n if (getCurrentDeviceSize() === DEVICE_SIZES.S) {\n this.setLastParentCollapsedBackBreadcrumb();\n } else {\n this.setCollapsed();\n }\n }\n }\n\n disconnectedCallback(): void {\n this.breadcrumb &&\n this.breadcrumb.removeEventListener(\n \"transitionend\",\n this.transitionendHandler\n );\n\n this.collapsedBreadcrumbEl &&\n this.collapsedBreadcrumbEl.removeEventListener(\n \"click\",\n this.clickHandler\n );\n }\n\n private setBreadcrumbTheme = () => {\n const allBreadcrumbs = Array.from(\n this.el.querySelectorAll(this.IC_BREADCRUMB)\n ) as HTMLIcBreadcrumbElement[];\n\n allBreadcrumbs.forEach((breadcrumb) => {\n breadcrumb.theme = this.theme;\n });\n };\n\n private setBreadcrumbMonochrome = () => {\n const allBreadcrumbs = Array.from(\n this.el.querySelectorAll(this.IC_BREADCRUMB)\n ) as HTMLIcBreadcrumbElement[];\n\n allBreadcrumbs.forEach((breadcrumb) => {\n breadcrumb.monochrome = this.monochrome;\n });\n };\n\n private setBackBreadcrumb = () => {\n if (this.backBreadcrumbOnly) {\n this.setLastParentCollapsedBackBreadcrumb();\n } else {\n this.revertLastParentCollapsedBreadcrumb();\n }\n };\n\n private setBackBreadcrumbAttr = () => {\n if (this.lastParentBreadcrumb) {\n this.lastParentBreadcrumb.classList.add(\"show\");\n this.lastParentBreadcrumb.setAttribute(this.SHOW_BACK_ICON, \"true\");\n }\n };\n\n private getLastParentBreadcrumb = (): HTMLIcBreadcrumbElement | null => {\n const allBreadcrumbs: HTMLIcBreadcrumbElement[] = Array.from(\n this.el.querySelectorAll(this.IC_BREADCRUMB)\n );\n\n if (allBreadcrumbs.length === 1) {\n return null;\n }\n\n this.breadcrumbs = allBreadcrumbs;\n this.breadcrumb = this.breadcrumbs[this.breadcrumbs.length - 2];\n\n return this.breadcrumb;\n };\n\n private lastParentBreadcrumb = this.getLastParentBreadcrumb();\n\n private setDefaultBreadcrumbs = () => {\n const allBreadcrumbs = Array.from(\n this.el.querySelectorAll(this.IC_BREADCRUMB)\n );\n allBreadcrumbs.forEach((breadcrumb) => {\n breadcrumb.setAttribute(this.SHOW_BACK_ICON, \"false\");\n });\n };\n\n private setCollapsed = () => {\n const allBreadcrumbs: HTMLIcBreadcrumbElement[] = Array.from(\n this.el.querySelectorAll(this.IC_BREADCRUMB)\n );\n const firstBreadcrumb = allBreadcrumbs[0];\n if (this.collapsedBreadcrumbs) {\n this.collapsedBreadcrumbs.forEach((breadcrumb) => {\n breadcrumb.classList.remove(\"visuallyhidden\");\n breadcrumb.classList.remove(\"fade\");\n });\n }\n\n if (this.collapsed) {\n this.renderCollapsedBreadcrumb();\n\n this.collapsedBreadcrumbs = allBreadcrumbs\n .splice(1, allBreadcrumbs.length - 2)\n .filter(\n (breadcrumb) =>\n !breadcrumb.classList.contains(\"collapsed-breadcrumb-wrapper\")\n );\n if (!this.backBreadcrumbOnly) {\n this.collapsedBreadcrumbs.forEach((breadcrumb) =>\n breadcrumb.classList.add(\"hide\")\n );\n }\n\n if (firstBreadcrumb) {\n firstBreadcrumb.insertAdjacentElement(\n \"afterend\",\n this.collapsedBreadcrumbWrapper\n );\n }\n } else {\n this.collapsedBreadcrumbWrapper.remove();\n }\n };\n\n private clickHandler = () => {\n this.handleHiddenCollapsedBreadcrumbs();\n };\n\n private renderCollapsedBreadcrumb = () => {\n if (this.collapsedBreadcrumbEl === undefined) {\n this.collapsedBreadcrumbWrapper = document.createElement(\"ic-breadcrumb\");\n this.collapsedBreadcrumbWrapper.classList.add(\n \"collapsed-breadcrumb-wrapper\"\n );\n this.collapsedBreadcrumbEl = document.createElement(\"button\");\n\n const ariaLabel = document.createElement(\"span\");\n ariaLabel.id = \"collapsed-button-label\";\n ariaLabel.innerText = \"Collapsed breadcrumbs\";\n ariaLabel.className = \"hide\";\n this.collapsedBreadcrumbEl.setAttribute(\n \"aria-labelledby\",\n \"collapsed-button-label\"\n );\n\n const ariaDescribed = document.createElement(\"span\");\n ariaDescribed.id = \"collapsed-button-described\";\n ariaDescribed.innerText = \"Select to view collapsed breadcrumbs\";\n ariaDescribed.className = \"hide\";\n this.collapsedBreadcrumbEl.setAttribute(\n \"aria-describedby\",\n \"collapsed-button-described\"\n );\n\n this.collapsedBreadcrumbEl.id = \"collapsed-ellipsis\";\n this.collapsedBreadcrumbEl.innerText = \"...\";\n this.collapsedBreadcrumbEl.classList.add(\"collapsed-breadcrumb\");\n this.collapsedBreadcrumbEl.addEventListener(\"click\", this.clickHandler);\n\n this.collapsedBreadcrumbWrapper.append(ariaDescribed);\n this.collapsedBreadcrumbWrapper.append(ariaLabel);\n this.collapsedBreadcrumbWrapper.append(this.collapsedBreadcrumbEl);\n }\n };\n\n private handleHiddenCollapsedBreadcrumbs = () => {\n this.collapsedBreadcrumbWrapper.remove();\n this.collapsedBreadcrumbs.forEach((breadcrumb) => {\n breadcrumb.classList.add(\"visuallyhidden\");\n breadcrumb.classList.remove(\"hide\");\n setTimeout(() => {\n breadcrumb.classList.add(\"fade\");\n }, this.ADD_CLASS_DELAY);\n\n this.removeVisuallyHiddenClass(breadcrumb);\n });\n this.expandedBreadcrumbs = true;\n // Set focus to first unhidden breadcrumb\n this.collapsedBreadcrumbs[0].setFocus();\n };\n\n private transitionendHandler = (event: TransitionEvent) => {\n if (event.propertyName === \"opacity\") {\n (event.target as HTMLElement).classList.remove(\"visuallyhidden\");\n }\n };\n\n private removeVisuallyHiddenClass = (breadcrumb: HTMLIcBreadcrumbElement) => {\n breadcrumb.addEventListener(\"transitionend\", this.transitionendHandler);\n };\n\n private setLastParentCollapsedBackBreadcrumb = () => {\n this.lastParentBreadcrumb = this.getLastParentBreadcrumb();\n this.setBackBreadcrumbAttr();\n if (this.lastParentBreadcrumb) {\n this.lastParentBreadcrumb.classList.remove(\"hide\");\n this.lastParentBreadcrumb.classList.add(\"show\");\n }\n };\n\n private revertLastParentCollapsedBreadcrumb = () => {\n if (this.lastParentBreadcrumb) {\n this.lastParentBreadcrumb.setAttribute(this.SHOW_BACK_ICON, \"false\");\n if (this.collapsed) {\n this.lastParentBreadcrumb.classList.add(\"hide\");\n }\n }\n };\n\n private resizeObserverCallback = (currSize: number) => {\n if (currSize !== this.deviceSize) {\n this.deviceSize = currSize;\n\n if (this.deviceSize <= DEVICE_SIZES.S) {\n this.el.setAttribute(\"back-breadcrumb-only\", \"true\");\n if (this.collapsed) {\n this.setLastParentCollapsedBackBreadcrumb();\n } else {\n this.setBackBreadcrumb();\n }\n } else {\n this.el.setAttribute(\"back-breadcrumb-only\", \"false\");\n if (this.collapsed && this.breadcrumbs && this.breadcrumbs.length > 2) {\n this.revertLastParentCollapsedBreadcrumb();\n if (this.expandedBreadcrumbs) {\n this.setDefaultBreadcrumbs();\n } else {\n this.setCollapsed();\n }\n } else {\n this.setDefaultBreadcrumbs();\n }\n }\n }\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n const currSize = getCurrentDeviceSize();\n this.resizeObserverCallback(currSize);\n });\n\n this.resizeObserver.observe(this.el);\n };\n\n render() {\n return (\n <Host\n class={{\n \"ic-breadcrumb-group-back\": !!this.backBreadcrumbOnly,\n \"ic-breadcrumb-group-collapsed\": !!this.collapsed,\n [`ic-theme-${this.theme}`]: this.theme !== \"inherit\",\n }}\n >\n <nav aria-label=\"breadcrumbs\">\n <ol>\n <slot />\n </ol>\n </nav>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r as t,c as i,h as e,H as s,g as a}from"./p-8e4e97b4.js";import{s as o,r as n,f as r,b as l,p as h}from"./p-269f841d.js";const d='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;--ic-input-label-text-color:var(--ic-radio-button-input-field-label);--ic-input-label-helper-text-color:var(\n --ic-radio-button-input-field-subtitle\n );--ic-input-validation-status-text-color:var(--ic-radio-button-state-text);--ic-input-validation-error:var(--ic-radio-button-state-icon-error)}ic-input-label.error{--ic-input-label-text-color:var(--ic-radio-button-input-field-label-error)}ic-input-label.disabled{--ic-input-label-text-color:var(\n --ic-radio-button-input-field-label-disabled\n );--ic-input-label-helper-text-color:var(\n --ic-radio-button-input-field-subtitle-disabled\n )}ic-input-validation{margin-top:var(--ic-space-sm)}:host(.ic-radio-group-small) ic-input-validation{margin-top:calc(var(--ic-space-sm) / 2)}ic-input-label ic-typography{margin-bottom:var(--ic-space-sm)}:host(.ic-radio-group-small) ic-input-label ic-typography{margin-bottom:calc(var(--ic-space-sm) / 2)}:host .radio-buttons-container{display:flex;flex-direction:column;gap:var(--ic-space-xxs)}:host(.ic-radio-group-small) .radio-buttons-container{gap:var(--ic-space-xxxs)}:host .radio-buttons-container.horizontal{display:flex;flex-direction:row;gap:calc(var(--ic-space-xl) + var(--ic-space-xs))}:host(.ic-radio-group-small) .radio-buttons-container.horizontal{gap:var(--ic-space-xl)}';const c=d;const b=class{constructor(e){t(this,e);this.icChange=i(this,"icChange",7);this.resizeObserver=null;this.ADDITIONAL_FIELD="additional-field";this.RADIO_HORIZONTAL="horizontal";this.RADIO_VERTICAL="vertical";this.checkedValue="";this.selectedChild=-1;this.disabled=false;this.hideLabel=false;this.orientation="vertical";this.required=false;this.size="medium";this.validationStatus="";this.validationText="";this.theme="inherit";this.runResizeObserver=()=>{this.resizeObserver=new ResizeObserver((()=>{this.checkOrientation()}));this.resizeObserver.observe(this.el)};this.handleKeyDown=t=>{const i=Array.from(this.el.querySelectorAll('ic-text-field[slot="additional-field"]'));const e=document.activeElement;if(i.length>0&&this.radioOptions.map((t=>o(t,this.ADDITIONAL_FIELD)))&&i.map((t=>t==e))){return}t.stopPropagation();switch(t.key){case"ArrowDown":case"ArrowRight":this.radioOptions[this.getNextItemToSelect(this.selectedChild,true)].click();t.preventDefault();break;case"ArrowUp":case"ArrowLeft":this.radioOptions[this.getNextItemToSelect(this.selectedChild,false)].click();t.preventDefault()}};this.getNextItemToSelect=(t,i)=>{const e=this.radioOptions.length-1;if(t<1){t=0}let s=i?t+1:t-1;if(s<0){s=e}else if(s>e){s=0}if(this.radioOptions[s].disabled){s=this.getNextItemToSelect(s,i)}return s};this.addSlotChangeListener=()=>{var t;(t=this.radioContainer)===null||t===void 0?void 0:t.addEventListener("slotchange",this.setRadioOptions)};this.setFirstRadioOptionTabIndex=t=>{this.radioOptions[0].setTabIndex(t)};this.setRadioOptions=()=>{this.selectedChild=-1;this.checkedValue="";this.radioOptions=Array.from(this.el.children).filter((t=>t.tagName==="IC-RADIO-OPTION"));if(this.radioOptions.length>0){this.radioOptions.forEach(((t,i)=>{if(!t.selected){t.selected=this.checkedValue===t.value}t.name=this.name;t.groupLabel=this.label;if(t.selected){this.selectedChild=i;this.checkedValue=t.value}if(this.disabled){t.disabled=true}}));this.setFirstRadioOptionTabIndex(this.selectedChild>0?-1:0);if(this.initialOrientation===this.RADIO_HORIZONTAL&&this.radioOptions!==undefined&&(this.radioOptions.length>2||this.radioOptions.length===2&&(o(this.radioOptions[0],this.ADDITIONAL_FIELD)||o(this.radioOptions[1],this.ADDITIONAL_FIELD)))){this.currentOrientation=this.RADIO_VERTICAL}}}}watchDisabledHandler(t){this.radioOptions.forEach((i=>i.disabled=t));n(this.disabled,this.el)}orientationChangeHandler(){this.initialOrientation=this.orientation;this.checkOrientation()}watchThemeHandler(t){this.radioOptions.forEach((i=>i.theme=t))}disconnectedCallback(){var t,i;(t=this.resizeObserver)===null||t===void 0?void 0:t.disconnect();(i=this.radioContainer)===null||i===void 0?void 0:i.removeEventListener("slotchange",this.setRadioOptions)}componentWillLoad(){n(this.disabled,this.el);this.orientationChangeHandler();this.currentOrientation=this.initialOrientation}componentDidLoad(){this.setRadioOptions();r(this.runResizeObserver);this.addSlotChangeListener();l([{prop:this.label,propName:"label"},{prop:this.name,propName:"name"}],"Radio Group");this.watchThemeHandler(this.theme)}selectHandler({detail:t,target:i}){var e;const s=i;if(s.parentElement===this.el){this.checkedValue=t.value;this.icChange.emit({value:this.checkedValue,selectedOption:{radio:s,textFieldValue:(e=s===null||s===void 0?void 0:s.querySelector("ic-text-field"))===null||e===void 0?void 0:e.value}});if(this.radioOptions!==undefined){this.radioOptions.forEach(((t,i)=>{t.selected=s===t;if(t.selected){this.selectedChild=i}}));this.setFirstRadioOptionTabIndex(this.selectedChild>0?-1:0)}}}changeHandler(){var t;const i=(t=this.radioOptions)===null||t===void 0?void 0:t.findIndex((t=>t.selected));if(i<0){this.setFirstRadioOptionTabIndex(0);this.selectedChild=i}}checkOrientation(){if(this.initialOrientation===this.RADIO_HORIZONTAL){let t=0;if(Array.isArray(this.radioOptions)&&this.radioOptions.length>0){this.radioOptions.forEach((({clientWidth:i},e,s)=>{t+=i;if(e<s.length-1)t+=40}))}else{t=0}if(this.initialOrientation==this.RADIO_HORIZONTAL){if(this.radioOptions!==undefined&&(this.radioOptions.length>2||this.radioOptions.length===2&&(o(this.radioOptions[0],this.ADDITIONAL_FIELD)||o(this.radioOptions[1],this.ADDITIONAL_FIELD)))){this.currentOrientation=this.RADIO_VERTICAL}else{if(this.radioContainer){if(t>=this.radioContainer.clientWidth){this.currentOrientation=this.RADIO_VERTICAL}else if(t<this.radioContainer.clientWidth){this.currentOrientation=this.RADIO_HORIZONTAL}}}}}}render(){const{currentOrientation:t,disabled:i,handleKeyDown:a,helperText:o,hideLabel:n,label:r,required:l,size:d,validationStatus:c,validationText:b,theme:p}=this;return e(s,{key:"9f07c5018d0c6ef36c2e1a220045335f1ea81642",onKeyDown:a,class:{"ic-radio-group-small":d==="small",[`ic-theme-${p}`]:p!=="inherit"}},e("div",{key:"f6bcb770d627ed019dc7ee65b0ebfad6c1040041",role:"radiogroup","aria-label":`${r}${l?", required":""}`},!n&&e("ic-input-label",{key:"b8751c85ae97574bb7d0374158d3d9a019e91c0b",class:{[`${c}`]:true,["disabled"]:!!i},label:r,helperText:o,required:l,disabled:i}),e("div",{key:"c3f83bbda4750a0f40a2c11e01e0dd856eae04f4",class:{"radio-buttons-container":true,horizontal:t===this.RADIO_HORIZONTAL},ref:t=>this.radioContainer=t},e("slot",{key:"37931a40139b6198338551079a239238af645d14"}))),h(c,i)&&e("ic-input-validation",{key:"acb5eef3938c9c12225c1ba38b6cb2f6203ecffb",ariaLiveMode:"polite",status:c,message:b}))}get el(){return a(this)}static get watchers(){return{disabled:["watchDisabledHandler"],orientation:["orientationChangeHandler"],theme:["watchThemeHandler"]}}};b.style=c;export{b as ic_radio_group};
2
+ //# sourceMappingURL=p-30a262d2.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icRadioGroupCss","IcRadioGroupStyle0","RadioGroup","constructor","hostRef","this","resizeObserver","ADDITIONAL_FIELD","RADIO_HORIZONTAL","RADIO_VERTICAL","checkedValue","selectedChild","disabled","hideLabel","orientation","required","size","validationStatus","validationText","theme","runResizeObserver","ResizeObserver","checkOrientation","observe","el","handleKeyDown","event","additionalFields","Array","from","querySelectorAll","activeEl","document","activeElement","length","radioOptions","map","slotHasContent","stopPropagation","key","getNextItemToSelect","click","preventDefault","currentItem","movingDown","numRadios","nextItem","addSlotChangeListener","_a","radioContainer","addEventListener","setRadioOptions","setFirstRadioOptionTabIndex","value","setTabIndex","children","filter","tagName","forEach","radioOption","index","selected","name","groupLabel","label","initialOrientation","undefined","currentOrientation","watchDisabledHandler","newValue","removeDisabledFalse","orientationChangeHandler","watchThemeHandler","disconnectedCallback","disconnect","_b","removeEventListener","componentWillLoad","componentDidLoad","checkResizeObserver","onComponentRequiredPropUndefined","prop","propName","selectHandler","detail","target","selectedOption","parentElement","icChange","emit","radio","textFieldValue","querySelector","changeHandler","findIndex","totalWidth","isArray","clientWidth","i","arr","render","helperText","h","Host","onKeyDown","class","role","horizontal","ref","hasValidationStatus","ariaLiveMode","status","message"],"sources":["src/components/ic-radio-group/ic-radio-group.css?tag=ic-radio-group&encapsulation=shadow","src/components/ic-radio-group/ic-radio-group.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: block;\n\n --ic-input-label-text-color: var(--ic-radio-button-input-field-label);\n --ic-input-label-helper-text-color: var(\n --ic-radio-button-input-field-subtitle\n );\n --ic-input-validation-status-text-color: var(--ic-radio-button-state-text);\n --ic-input-validation-error: var(--ic-radio-button-state-icon-error);\n}\n\nic-input-label.error {\n --ic-input-label-text-color: var(--ic-radio-button-input-field-label-error);\n}\n\nic-input-label.disabled {\n --ic-input-label-text-color: var(\n --ic-radio-button-input-field-label-disabled\n );\n --ic-input-label-helper-text-color: var(\n --ic-radio-button-input-field-subtitle-disabled\n );\n}\n\nic-input-validation {\n margin-top: var(--ic-space-sm);\n}\n\n:host(.ic-radio-group-small) ic-input-validation {\n margin-top: calc(var(--ic-space-sm) / 2);\n}\n\nic-input-label ic-typography {\n margin-bottom: var(--ic-space-sm);\n}\n\n:host(.ic-radio-group-small) ic-input-label ic-typography {\n margin-bottom: calc(var(--ic-space-sm) / 2);\n}\n\n:host .radio-buttons-container {\n display: flex;\n flex-direction: column;\n gap: var(--ic-space-xxs);\n}\n\n:host(.ic-radio-group-small) .radio-buttons-container {\n gap: var(--ic-space-xxxs);\n}\n\n:host .radio-buttons-container.horizontal {\n display: flex;\n flex-direction: row;\n gap: calc(var(--ic-space-xl) + var(--ic-space-xs));\n}\n\n:host(.ic-radio-group-small) .radio-buttons-container.horizontal {\n gap: var(--ic-space-xl);\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n State,\n Listen,\n Element,\n Event,\n EventEmitter,\n Watch,\n} from \"@stencil/core\";\nimport {\n hasValidationStatus,\n slotHasContent,\n onComponentRequiredPropUndefined,\n removeDisabledFalse,\n checkResizeObserver,\n} from \"../../utils/helpers\";\nimport {\n IcInformationStatusOrEmpty,\n IcOrientation,\n IcSizesNoLarge,\n IcThemeMode,\n IcValueEventDetail,\n} from \"../../utils/types\";\nimport { IcChangeEventDetail } from \"./ic-radio-group.types\";\n\n@Component({\n tag: \"ic-radio-group\",\n styleUrl: \"ic-radio-group.css\",\n shadow: true,\n})\nexport class RadioGroup {\n private radioContainer?: HTMLDivElement;\n private radioOptions: HTMLIcRadioOptionElement[];\n private resizeObserver: ResizeObserver | null = null;\n private ADDITIONAL_FIELD = \"additional-field\";\n private RADIO_HORIZONTAL: IcOrientation = \"horizontal\";\n private RADIO_VERTICAL: IcOrientation = \"vertical\";\n\n @Element() el: HTMLIcRadioGroupElement;\n\n @State() checkedValue: string = \"\";\n @State() currentOrientation: IcOrientation;\n @State() initialOrientation: IcOrientation;\n @State() selectedChild: number = -1;\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled?: boolean = false;\n\n @Watch(\"disabled\")\n watchDisabledHandler(newValue: boolean): void {\n this.radioOptions.forEach(\n (radioOption) => (radioOption.disabled = newValue)\n );\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * The helper text that will be displayed for additional field guidance.\n */\n @Prop() helperText?: string;\n\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n @Prop() hideLabel?: boolean = false;\n\n /**\n * The label for the radio group to be displayed.\n */\n @Prop() label!: string;\n\n /**\n * The name for the radio group to differentiate from other groups.\n */\n @Prop() name!: string;\n\n /**\n * The orientation of the radio buttons in the radio group. If there are more than two radio buttons in a radio group or either of the radio buttons use the `additional-field` slot, then the orientation will always be vertical.\n */\n @Prop() orientation?: IcOrientation = \"vertical\";\n\n /**\n * If `true`, the radio group will require a value.\n */\n @Prop() required?: boolean = false;\n\n /**\n * The size of the radio group component.\n */\n @Prop() size?: IcSizesNoLarge = \"medium\";\n\n /**\n * The validation status - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationStatus?: IcInformationStatusOrEmpty = \"\";\n /**\n * The validation text - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationText?: string = \"\";\n\n @Watch(\"orientation\")\n orientationChangeHandler(): void {\n this.initialOrientation = this.orientation!;\n this.checkOrientation();\n }\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n @Watch(\"theme\")\n watchThemeHandler(newValue: IcThemeMode): void {\n this.radioOptions.forEach((radioOption) => (radioOption.theme = newValue));\n }\n\n /**\n * Emitted when a user selects a radio.\n */\n @Event() icChange: EventEmitter<IcChangeEventDetail>;\n\n disconnectedCallback(): void {\n this.resizeObserver?.disconnect();\n this.radioContainer?.removeEventListener(\n \"slotchange\",\n this.setRadioOptions\n );\n }\n\n componentWillLoad(): void {\n removeDisabledFalse(this.disabled, this.el);\n\n this.orientationChangeHandler();\n this.currentOrientation = this.initialOrientation;\n }\n\n componentDidLoad(): void {\n this.setRadioOptions();\n checkResizeObserver(this.runResizeObserver);\n this.addSlotChangeListener();\n\n onComponentRequiredPropUndefined(\n [\n { prop: this.label, propName: \"label\" },\n { prop: this.name, propName: \"name\" },\n ],\n \"Radio Group\"\n );\n\n this.watchThemeHandler(this.theme!);\n }\n\n @Listen(\"icCheck\")\n selectHandler({ detail, target }: CustomEvent<IcValueEventDetail>): void {\n const selectedOption = target as HTMLIcRadioOptionElement;\n if (selectedOption.parentElement === this.el) {\n this.checkedValue = detail.value as string;\n this.icChange.emit({\n value: this.checkedValue,\n selectedOption: {\n radio: selectedOption,\n textFieldValue: selectedOption?.querySelector(\"ic-text-field\")?.value,\n },\n });\n\n if (this.radioOptions !== undefined) {\n this.radioOptions.forEach((radioOption, index) => {\n radioOption.selected = selectedOption === radioOption;\n if (radioOption.selected) {\n this.selectedChild = index;\n }\n });\n this.setFirstRadioOptionTabIndex(this.selectedChild > 0 ? -1 : 0);\n }\n }\n }\n\n @Listen(\"icSelectedChange\")\n changeHandler(): void {\n const selectedOption = this.radioOptions?.findIndex(\n (radioOption) => radioOption.selected\n );\n if (selectedOption < 0) {\n this.setFirstRadioOptionTabIndex(0);\n this.selectedChild = selectedOption;\n }\n }\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n this.checkOrientation();\n });\n\n this.resizeObserver.observe(this.el);\n };\n\n private checkOrientation() {\n if (this.initialOrientation === this.RADIO_HORIZONTAL) {\n let totalWidth = 0;\n if (Array.isArray(this.radioOptions) && this.radioOptions.length > 0) {\n this.radioOptions.forEach(({ clientWidth }, i, arr) => {\n totalWidth += clientWidth;\n if (i < arr.length - 1) totalWidth += 40;\n });\n } else {\n totalWidth = 0;\n }\n\n if (this.initialOrientation == this.RADIO_HORIZONTAL) {\n if (\n this.radioOptions !== undefined &&\n (this.radioOptions.length > 2 ||\n (this.radioOptions.length === 2 &&\n (slotHasContent(this.radioOptions[0], this.ADDITIONAL_FIELD) ||\n slotHasContent(this.radioOptions[1], this.ADDITIONAL_FIELD))))\n ) {\n this.currentOrientation = this.RADIO_VERTICAL;\n } else {\n if (this.radioContainer) {\n if (totalWidth >= this.radioContainer.clientWidth) {\n this.currentOrientation = this.RADIO_VERTICAL;\n } else if (totalWidth < this.radioContainer.clientWidth) {\n this.currentOrientation = this.RADIO_HORIZONTAL;\n }\n }\n }\n }\n }\n }\n\n private handleKeyDown = (event: KeyboardEvent): void => {\n const additionalFields = Array.from(\n this.el.querySelectorAll<HTMLElement>(\n 'ic-text-field[slot=\"additional-field\"]'\n )\n );\n const activeEl = document.activeElement;\n if (\n additionalFields.length > 0 &&\n this.radioOptions.map((el) =>\n slotHasContent(el, this.ADDITIONAL_FIELD)\n ) &&\n additionalFields.map((el) => el == activeEl)\n ) {\n return;\n }\n\n event.stopPropagation();\n switch (event.key) {\n case \"ArrowDown\":\n case \"ArrowRight\":\n this.radioOptions[\n this.getNextItemToSelect(this.selectedChild, true)\n ].click();\n event.preventDefault();\n break;\n case \"ArrowUp\":\n case \"ArrowLeft\":\n this.radioOptions[\n this.getNextItemToSelect(this.selectedChild, false)\n ].click();\n event.preventDefault();\n }\n };\n\n private getNextItemToSelect = (\n currentItem: number,\n movingDown: boolean\n ): number => {\n const numRadios = this.radioOptions.length - 1;\n\n if (currentItem < 1) {\n currentItem = 0;\n }\n\n let nextItem = movingDown ? currentItem + 1 : currentItem - 1;\n\n //check if wrap around necessary\n if (nextItem < 0) {\n nextItem = numRadios;\n } else if (nextItem > numRadios) {\n nextItem = 0;\n }\n\n //if next item is disabled then find next\n if (this.radioOptions[nextItem].disabled) {\n nextItem = this.getNextItemToSelect(nextItem, movingDown);\n }\n\n return nextItem;\n };\n\n private addSlotChangeListener = () => {\n this.radioContainer?.addEventListener(\"slotchange\", this.setRadioOptions);\n };\n\n private setFirstRadioOptionTabIndex = (value: number) => {\n this.radioOptions[0].setTabIndex(value);\n };\n\n private setRadioOptions = () => {\n this.selectedChild = -1;\n this.checkedValue = \"\";\n this.radioOptions = Array.from(this.el.children).filter(\n (el) => el.tagName === \"IC-RADIO-OPTION\"\n ) as HTMLIcRadioOptionElement[];\n if (this.radioOptions.length > 0) {\n this.radioOptions.forEach((radioOption, index) => {\n if (!radioOption.selected) {\n radioOption.selected = this.checkedValue === radioOption.value;\n }\n radioOption.name = this.name;\n radioOption.groupLabel = this.label;\n if (radioOption.selected) {\n this.selectedChild = index;\n this.checkedValue = radioOption.value;\n }\n if (this.disabled) {\n radioOption.disabled = true;\n }\n });\n this.setFirstRadioOptionTabIndex(this.selectedChild > 0 ? -1 : 0);\n\n if (\n this.initialOrientation === this.RADIO_HORIZONTAL &&\n this.radioOptions !== undefined &&\n (this.radioOptions.length > 2 ||\n (this.radioOptions.length === 2 &&\n (slotHasContent(this.radioOptions[0], this.ADDITIONAL_FIELD) ||\n slotHasContent(this.radioOptions[1], this.ADDITIONAL_FIELD))))\n ) {\n this.currentOrientation = this.RADIO_VERTICAL;\n }\n }\n };\n\n render() {\n const {\n currentOrientation,\n disabled,\n handleKeyDown,\n helperText,\n hideLabel,\n label,\n required,\n size,\n validationStatus,\n validationText,\n theme,\n } = this;\n\n return (\n <Host\n onKeyDown={handleKeyDown}\n class={{\n \"ic-radio-group-small\": size === \"small\",\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n <div\n role=\"radiogroup\"\n aria-label={`${label}${required ? \", required\" : \"\"}`}\n >\n {!hideLabel && (\n <ic-input-label\n class={{\n [`${validationStatus}`]: true,\n [\"disabled\"]: !!disabled,\n }}\n label={label}\n helperText={helperText}\n required={required}\n disabled={disabled}\n ></ic-input-label>\n )}\n <div\n class={{\n \"radio-buttons-container\": true,\n horizontal: currentOrientation === this.RADIO_HORIZONTAL,\n }}\n ref={(el) => (this.radioContainer = el)}\n >\n <slot></slot>\n </div>\n </div>\n {hasValidationStatus(validationStatus, disabled) && (\n <ic-input-validation\n ariaLiveMode=\"polite\"\n status={validationStatus}\n message={validationText!}\n ></ic-input-validation>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}