@ukic/web-components 3.0.0-alpha.1 → 3.0.0-alpha.11

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 (967) hide show
  1. package/README.md +5 -4
  2. package/dist/cjs/core.cjs.js +1 -1
  3. package/dist/cjs/{helpers-f1cf5156.js → helpers-eca4c27e.js} +80 -29
  4. package/dist/cjs/helpers-eca4c27e.js.map +1 -0
  5. package/dist/cjs/ic-accordion-group.cjs.entry.js +10 -10
  6. package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
  7. package/dist/cjs/ic-accordion.cjs.entry.js +12 -5
  8. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ic-alert.cjs.entry.js +9 -14
  10. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ic-back-to-top.cjs.entry.js +8 -5
  12. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  13. package/dist/cjs/ic-badge.cjs.entry.js +26 -3
  14. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +43 -20
  16. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ic-breadcrumb.cjs.entry.js +49 -4
  18. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ic-button_3.cjs.entry.js +28 -26
  20. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-card-vertical.cjs.entry.js +48 -47
  22. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
  23. package/dist/cjs/ic-checkbox-group.cjs.entry.js +21 -6
  24. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-checkbox.cjs.entry.js +10 -4
  26. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ic-chip.cjs.entry.js +27 -15
  28. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ic-classification-banner.cjs.entry.js +1 -1
  30. package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
  31. package/dist/cjs/ic-data-row.cjs.entry.js +1 -1
  32. package/dist/cjs/ic-dialog.cjs.entry.js +32 -9
  33. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  34. package/dist/cjs/ic-divider.cjs.entry.js +73 -9
  35. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  36. package/dist/cjs/ic-empty-state.cjs.entry.js +7 -15
  37. package/dist/cjs/ic-empty-state.cjs.entry.js.map +1 -1
  38. package/dist/cjs/ic-footer-link-group.cjs.entry.js +6 -7
  39. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  40. package/dist/cjs/ic-footer-link.cjs.entry.js +8 -7
  41. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  42. package/dist/cjs/ic-footer.cjs.entry.js +24 -14
  43. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  44. package/dist/cjs/ic-hero.cjs.entry.js +7 -15
  45. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +17 -9
  47. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  48. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +486 -200
  49. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  50. package/dist/cjs/ic-input-label_2.cjs.entry.js +24 -26
  51. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  52. package/dist/cjs/ic-link.cjs.entry.js +10 -12
  53. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  54. package/dist/cjs/ic-menu-group.cjs.entry.js +3 -3
  55. package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
  56. package/dist/cjs/ic-menu-item.cjs.entry.js +25 -18
  57. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  58. package/dist/cjs/ic-navigation-button.cjs.entry.js +11 -8
  59. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ic-navigation-group.cjs.entry.js +10 -8
  61. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  62. package/dist/cjs/ic-navigation-item.cjs.entry.js +60 -8
  63. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  64. package/dist/cjs/ic-navigation-menu.cjs.entry.js +5 -4
  65. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  66. package/dist/cjs/ic-page-header.cjs.entry.js +8 -6
  67. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  68. package/dist/cjs/ic-pagination-item.cjs.entry.js +12 -11
  69. package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ic-pagination.cjs.entry.js +23 -15
  71. package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -1
  72. package/dist/cjs/ic-popover-menu.cjs.entry.js +47 -25
  73. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  74. package/dist/cjs/ic-radio-group.cjs.entry.js +60 -29
  75. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  76. package/dist/cjs/ic-radio-option.cjs.entry.js +42 -22
  77. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  78. package/dist/cjs/ic-search-bar.cjs.entry.js +54 -56
  79. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  80. package/dist/cjs/ic-select.cjs.entry.js +192 -66
  81. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  82. package/dist/cjs/ic-side-navigation.cjs.entry.js +16 -11
  83. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  84. package/dist/cjs/ic-skeleton.cjs.entry.js +4 -4
  85. package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
  86. package/dist/cjs/ic-status-tag.cjs.entry.js +5 -4
  87. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  88. package/dist/cjs/ic-step.cjs.entry.js +4 -5
  89. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  90. package/dist/cjs/ic-stepper.cjs.entry.js +12 -2
  91. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  92. package/dist/cjs/ic-switch.cjs.entry.js +21 -16
  93. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  94. package/dist/cjs/ic-tab-context.cjs.entry.js +60 -123
  95. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  96. package/dist/cjs/ic-tab-group.cjs.entry.js +3 -19
  97. package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
  98. package/dist/cjs/ic-tab-panel.cjs.entry.js +2 -2
  99. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  100. package/dist/cjs/ic-tab.cjs.entry.js +10 -8
  101. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  102. package/dist/cjs/ic-text-field.cjs.entry.js +43 -23
  103. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  104. package/dist/cjs/ic-theme.cjs.entry.js +20 -20
  105. package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
  106. package/dist/cjs/ic-toast.cjs.entry.js +4 -4
  107. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  108. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +62 -12
  109. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  110. package/dist/cjs/ic-toggle-button.cjs.entry.js +64 -9
  111. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  112. package/dist/cjs/ic-top-navigation.cjs.entry.js +13 -7
  113. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  114. package/dist/cjs/ic-typography.cjs.entry.js +5 -3
  115. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  116. package/dist/cjs/index-f982899d.js +4 -4
  117. package/dist/cjs/loader.cjs.js +1 -1
  118. package/dist/collection/ag-theme-icds.css +218 -0
  119. package/dist/collection/collection-manifest.json +3 -3
  120. package/dist/collection/components/ic-accordion/ic-accordion.css +22 -20
  121. package/dist/collection/components/ic-accordion/ic-accordion.js +37 -31
  122. package/dist/collection/components/ic-accordion/ic-accordion.js.map +1 -1
  123. package/dist/collection/components/ic-accordion/ic-accordion.stories.js +611 -0
  124. package/dist/collection/components/ic-accordion/test/basic/ic-accordion.spec.js +6 -3
  125. package/dist/collection/components/ic-accordion/test/basic/ic-accordion.spec.js.map +1 -1
  126. package/dist/collection/components/ic-accordion-group/ic-accordion-group.css +2 -12
  127. package/dist/collection/components/ic-accordion-group/ic-accordion-group.js +18 -18
  128. package/dist/collection/components/ic-accordion-group/ic-accordion-group.js.map +1 -1
  129. package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js +3 -3
  130. package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js.map +1 -1
  131. package/dist/collection/components/ic-alert/ic-alert.css +38 -20
  132. package/dist/collection/components/ic-alert/ic-alert.js +52 -33
  133. package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
  134. package/dist/collection/components/ic-alert/ic-alert.stories.js +271 -0
  135. package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js +22 -4
  136. package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js.map +1 -1
  137. package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +5 -2
  138. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +31 -4
  139. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js.map +1 -1
  140. package/dist/collection/components/ic-back-to-top/ic-back-to-top.stories.js +162 -0
  141. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js +14 -0
  142. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js.map +1 -1
  143. package/dist/collection/components/ic-badge/ic-badge.css +5 -5
  144. package/dist/collection/components/ic-badge/ic-badge.js +42 -4
  145. package/dist/collection/components/ic-badge/ic-badge.js.map +1 -1
  146. package/dist/collection/components/ic-badge/ic-badge.stories.js +1092 -0
  147. package/dist/collection/components/ic-badge/test/basic/ic-badge.spec.js +194 -0
  148. package/dist/collection/components/ic-badge/test/basic/ic-badge.spec.js.map +1 -1
  149. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.css +27 -8
  150. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +52 -4
  151. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js.map +1 -1
  152. package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js +49 -5
  153. package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js.map +1 -1
  154. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js +44 -19
  155. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js.map +1 -1
  156. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.stories.js +362 -0
  157. package/dist/collection/components/ic-button/ic-button.css +690 -420
  158. package/dist/collection/components/ic-button/ic-button.js +64 -46
  159. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  160. package/dist/collection/components/ic-button/ic-button.stories.js +2208 -0
  161. package/dist/collection/components/ic-button/ic-button.types.js.map +1 -1
  162. package/dist/collection/components/ic-button/test/basic/ic-button.spec.js +9 -9
  163. package/dist/collection/components/ic-button/test/basic/ic-button.spec.js.map +1 -1
  164. package/dist/collection/components/ic-card-vertical/ic-card-vertical.css +102 -113
  165. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js +80 -52
  166. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js.map +1 -1
  167. package/dist/collection/components/ic-card-vertical/ic-card-vertical.stories.js +1050 -0
  168. package/dist/collection/components/ic-card-vertical/test/basic/ic-card-vertical.spec.js +44 -3
  169. package/dist/collection/components/ic-card-vertical/test/basic/ic-card-vertical.spec.js.map +1 -1
  170. package/dist/collection/components/ic-checkbox/ic-checkbox.css +71 -39
  171. package/dist/collection/components/ic-checkbox/ic-checkbox.js +35 -3
  172. package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
  173. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.css +15 -2
  174. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +46 -3
  175. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  176. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.stories.js +726 -0
  177. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js +3 -0
  178. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js.map +1 -1
  179. package/dist/collection/components/ic-chip/ic-chip.css +64 -49
  180. package/dist/collection/components/ic-chip/ic-chip.js +66 -15
  181. package/dist/collection/components/ic-chip/ic-chip.js.map +1 -1
  182. package/dist/collection/components/ic-chip/ic-chip.stories.js +980 -0
  183. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js +19 -0
  184. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js.map +1 -1
  185. package/dist/collection/components/ic-classification-banner/ic-classification-banner.css +14 -10
  186. package/dist/collection/components/ic-classification-banner/ic-classification-banner.stories.js +131 -0
  187. package/dist/collection/components/ic-data-list/ic-data-list.stories.js +493 -0
  188. package/dist/collection/components/ic-dialog/ic-dialog.css +16 -9
  189. package/dist/collection/components/ic-dialog/ic-dialog.js +57 -10
  190. package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -1
  191. package/dist/collection/components/ic-dialog/ic-dialog.stories.js +1066 -0
  192. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js +27 -7
  193. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js.map +1 -1
  194. package/dist/collection/components/ic-divider/ic-divider.css +295 -4
  195. package/dist/collection/components/ic-divider/ic-divider.js +239 -12
  196. package/dist/collection/components/ic-divider/ic-divider.js.map +1 -1
  197. package/dist/collection/components/ic-divider/ic-divider.stories.js +394 -0
  198. package/dist/collection/components/ic-divider/ic-divider.types.js +2 -0
  199. package/dist/collection/components/ic-divider/ic-divider.types.js.map +1 -0
  200. package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js +90 -5
  201. package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js.map +1 -1
  202. package/dist/collection/components/ic-empty-state/ic-empty-state.css +15 -0
  203. package/dist/collection/components/ic-empty-state/ic-empty-state.js +31 -15
  204. package/dist/collection/components/ic-empty-state/ic-empty-state.js.map +1 -1
  205. package/dist/collection/components/ic-empty-state/ic-empty-state.stories.js +404 -0
  206. package/dist/collection/components/ic-empty-state/test/basic/ic-empty-state.spec.js +101 -0
  207. package/dist/collection/components/ic-empty-state/test/basic/ic-empty-state.spec.js.map +1 -0
  208. package/dist/collection/components/ic-footer/ic-footer.css +21 -20
  209. package/dist/collection/components/ic-footer/ic-footer.js +26 -16
  210. package/dist/collection/components/ic-footer/ic-footer.js.map +1 -1
  211. package/dist/collection/components/ic-footer/ic-footer.stories.js +384 -0
  212. package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js +43 -2
  213. package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js.map +1 -1
  214. package/dist/collection/components/ic-footer-link/ic-footer-link.css +24 -6
  215. package/dist/collection/components/ic-footer-link/ic-footer-link.js +9 -8
  216. package/dist/collection/components/ic-footer-link/ic-footer-link.js.map +1 -1
  217. package/dist/collection/components/ic-footer-link/test/basic/ic-footer-link.spec.js +1 -1
  218. package/dist/collection/components/ic-footer-link/test/basic/ic-footer-link.spec.js.map +1 -1
  219. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.css +11 -19
  220. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js +7 -8
  221. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js.map +1 -1
  222. package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js +1 -1
  223. package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js.map +1 -1
  224. package/dist/collection/components/ic-hero/ic-hero.css +25 -10
  225. package/dist/collection/components/ic-hero/ic-hero.js +10 -18
  226. package/dist/collection/components/ic-hero/ic-hero.js.map +1 -1
  227. package/dist/collection/components/ic-hero/ic-hero.stories.js +448 -0
  228. package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js +23 -5
  229. package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js.map +1 -1
  230. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.css +2 -6
  231. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +67 -11
  232. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js.map +1 -1
  233. package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js +43 -0
  234. package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js.map +1 -1
  235. package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +40 -17
  236. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +23 -48
  237. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js.map +1 -1
  238. package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js +30 -3
  239. package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js.map +1 -1
  240. package/dist/collection/components/ic-input-label/ic-input-label.css +19 -20
  241. package/dist/collection/components/ic-input-label/ic-input-label.js +53 -34
  242. package/dist/collection/components/ic-input-label/ic-input-label.js.map +1 -1
  243. package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js +35 -49
  244. package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js.map +1 -1
  245. package/dist/collection/components/ic-input-validation/ic-input-validation.css +12 -3
  246. package/dist/collection/components/ic-input-validation/ic-input-validation.js +7 -7
  247. package/dist/collection/components/ic-input-validation/ic-input-validation.js.map +1 -1
  248. package/dist/collection/components/ic-link/ic-link.css +18 -33
  249. package/dist/collection/components/ic-link/ic-link.js +14 -16
  250. package/dist/collection/components/ic-link/ic-link.js.map +1 -1
  251. package/dist/collection/components/ic-link/ic-link.stories.js +85 -0
  252. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js +3 -3
  253. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js.map +1 -1
  254. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.css +15 -10
  255. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +50 -31
  256. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js.map +1 -1
  257. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.stories.js +464 -0
  258. package/dist/collection/components/ic-menu/ic-menu.css +111 -29
  259. package/dist/collection/components/ic-menu/ic-menu.js +522 -201
  260. package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
  261. package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js +381 -33
  262. package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js.map +1 -1
  263. package/dist/collection/components/ic-menu-group/ic-menu-group.css +2 -2
  264. package/dist/collection/components/ic-menu-group/ic-menu-group.js +1 -1
  265. package/dist/collection/components/ic-menu-group/ic-menu-group.js.map +1 -1
  266. package/dist/collection/components/ic-menu-item/ic-menu-item.css +32 -28
  267. package/dist/collection/components/ic-menu-item/ic-menu-item.js +67 -25
  268. package/dist/collection/components/ic-menu-item/ic-menu-item.js.map +1 -1
  269. package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js +15 -2
  270. package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js.map +1 -1
  271. package/dist/collection/components/ic-navigation-button/ic-navigation-button.css +18 -0
  272. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +37 -10
  273. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -1
  274. package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js +3 -3
  275. package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js.map +1 -1
  276. package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +17 -12
  277. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +35 -9
  278. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
  279. package/dist/collection/components/ic-navigation-group/test/basic/ic-navigation-group.spec.js +3 -3
  280. package/dist/collection/components/ic-navigation-group/test/basic/ic-navigation-group.spec.js.map +1 -1
  281. package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +38 -65
  282. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +88 -11
  283. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
  284. package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js +15 -3
  285. package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js.map +1 -1
  286. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.css +9 -6
  287. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +27 -2
  288. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js.map +1 -1
  289. package/dist/collection/components/ic-page-header/ic-page-header.css +7 -3
  290. package/dist/collection/components/ic-page-header/ic-page-header.js +30 -4
  291. package/dist/collection/components/ic-page-header/ic-page-header.js.map +1 -1
  292. package/dist/collection/components/ic-page-header/ic-page-header.stories.js +823 -0
  293. package/dist/collection/components/ic-pagination/ic-pagination.css +15 -0
  294. package/dist/collection/components/ic-pagination/ic-pagination.js +65 -37
  295. package/dist/collection/components/ic-pagination/ic-pagination.js.map +1 -1
  296. package/dist/collection/components/ic-pagination/ic-pagination.stories.js +164 -0
  297. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js +11 -1
  298. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js.map +1 -1
  299. package/dist/collection/components/ic-pagination-item/ic-pagination-item.css +29 -9
  300. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +54 -33
  301. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js.map +1 -1
  302. package/dist/collection/components/ic-pagination-item/test/basic/ic-pagination-item.spec.js +3 -0
  303. package/dist/collection/components/ic-pagination-item/test/basic/ic-pagination-item.spec.js.map +1 -1
  304. package/dist/collection/components/ic-popover-menu/ic-popover-menu.css +5 -5
  305. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +112 -26
  306. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js.map +1 -1
  307. package/dist/collection/components/ic-popover-menu/ic-popover-menu.stories.js +504 -0
  308. package/dist/collection/components/ic-radio-group/ic-radio-group.css +17 -1
  309. package/dist/collection/components/ic-radio-group/ic-radio-group.js +83 -26
  310. package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
  311. package/dist/collection/components/ic-radio-group/ic-radio-group.stories.js +443 -0
  312. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js +12 -3
  313. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js.map +1 -1
  314. package/dist/collection/components/ic-radio-option/ic-radio-option.css +36 -28
  315. package/dist/collection/components/ic-radio-option/ic-radio-option.js +73 -21
  316. package/dist/collection/components/ic-radio-option/ic-radio-option.js.map +1 -1
  317. package/dist/collection/components/ic-search-bar/ic-search-bar.css +110 -10
  318. package/dist/collection/components/ic-search-bar/ic-search-bar.js +101 -57
  319. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  320. package/dist/collection/components/ic-search-bar/ic-search-bar.stories.js +593 -0
  321. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js +63 -94
  322. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js.map +1 -1
  323. package/dist/collection/components/ic-section-container/ic-section-container.stories.js +62 -0
  324. package/dist/collection/components/ic-select/ic-select.css +93 -53
  325. package/dist/collection/components/ic-select/ic-select.js +267 -77
  326. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  327. package/dist/collection/components/ic-select/ic-select_(multi).stories.js +892 -0
  328. package/dist/collection/components/ic-select/ic-select_(searchable).stories.js +965 -0
  329. package/dist/collection/components/ic-select/ic-select_(single).stories.js +790 -0
  330. package/dist/collection/components/ic-select/test/basic/ic-select.spec.js +234 -1
  331. package/dist/collection/components/ic-select/test/basic/ic-select.spec.js.map +1 -1
  332. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +50 -34
  333. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +18 -13
  334. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  335. package/dist/collection/components/ic-side-navigation/ic-side-navigation.stories.js +2526 -0
  336. package/dist/collection/components/ic-side-navigation/ic-side-navigation.types.js.map +1 -1
  337. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js +6 -6
  338. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js.map +1 -1
  339. package/dist/collection/components/ic-skeleton/ic-skeleton.css +4 -27
  340. package/dist/collection/components/ic-skeleton/ic-skeleton.js +16 -10
  341. package/dist/collection/components/ic-skeleton/ic-skeleton.js.map +1 -1
  342. package/dist/collection/components/ic-skeleton/ic-skeleton.stories.js +143 -0
  343. package/dist/collection/components/ic-status-tag/ic-status-tag.css +6 -6
  344. package/dist/collection/components/ic-status-tag/ic-status-tag.js +21 -2
  345. package/dist/collection/components/ic-status-tag/ic-status-tag.js.map +1 -1
  346. package/dist/collection/components/ic-status-tag/ic-status-tag.stories.js +196 -0
  347. package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js +15 -32
  348. package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js.map +1 -1
  349. package/dist/collection/components/ic-step/ic-step.css +65 -98
  350. package/dist/collection/components/ic-step/ic-step.js +29 -3
  351. package/dist/collection/components/ic-step/ic-step.js.map +1 -1
  352. package/dist/collection/components/ic-stepper/ic-stepper.js +37 -19
  353. package/dist/collection/components/ic-stepper/ic-stepper.js.map +1 -1
  354. package/dist/collection/components/ic-stepper/ic-stepper.stories.js +277 -0
  355. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js +4 -4
  356. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js.map +1 -1
  357. package/dist/collection/components/ic-switch/ic-switch.css +30 -48
  358. package/dist/collection/components/ic-switch/ic-switch.js +43 -30
  359. package/dist/collection/components/ic-switch/ic-switch.js.map +1 -1
  360. package/dist/collection/components/ic-switch/ic-switch.stories.js +149 -0
  361. package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js +3 -14
  362. package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js.map +1 -1
  363. package/dist/collection/components/ic-tab/ic-tab.js +11 -6
  364. package/dist/collection/components/ic-tab/ic-tab.js.map +1 -1
  365. package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js +16 -0
  366. package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js.map +1 -1
  367. package/dist/collection/components/ic-tab-context/ic-tab-context.js +60 -123
  368. package/dist/collection/components/ic-tab-context/ic-tab-context.js.map +1 -1
  369. package/dist/collection/components/ic-tab-context/ic-tabs.stories.js +316 -0
  370. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js +2 -2
  371. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js.map +1 -1
  372. package/dist/collection/components/ic-tab-group/ic-tab-group.css +8 -0
  373. package/dist/collection/components/ic-tab-group/ic-tab-group.js +1 -17
  374. package/dist/collection/components/ic-tab-group/ic-tab-group.js.map +1 -1
  375. package/dist/collection/components/ic-tab-panel/ic-tab-panel.css +1 -1
  376. package/dist/collection/components/ic-text-field/ic-text-field.css +62 -8
  377. package/dist/collection/components/ic-text-field/ic-text-field.js +70 -24
  378. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  379. package/dist/collection/components/ic-text-field/ic-text-field.stories.js +862 -0
  380. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js +26 -12
  381. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js.map +1 -1
  382. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js +2 -2
  383. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js.map +1 -1
  384. package/dist/collection/components/ic-theme/ic-theme.js +31 -31
  385. package/dist/collection/components/ic-theme/ic-theme.js.map +1 -1
  386. package/dist/collection/components/ic-theme/ic-theme.stories.js +434 -0
  387. package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js +7 -7
  388. package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js.map +1 -1
  389. package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js +11 -11
  390. package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js.map +1 -1
  391. package/dist/collection/components/ic-toast/ic-toast.css +31 -17
  392. package/dist/collection/components/ic-toast/ic-toast.js +2 -3
  393. package/dist/collection/components/ic-toast/ic-toast.js.map +1 -1
  394. package/dist/collection/components/ic-toast/ic-toast.stories.js +396 -0
  395. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js +16 -16
  396. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js.map +1 -1
  397. package/dist/collection/components/ic-toggle-button/ic-toggle-button.css +189 -57
  398. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +149 -42
  399. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js.map +1 -1
  400. package/dist/collection/components/ic-toggle-button/ic-toggle-button.stories.js +427 -0
  401. package/dist/collection/components/ic-toggle-button/test/basic/ic-toggle-button.spec.js +10 -0
  402. package/dist/collection/components/ic-toggle-button/test/basic/ic-toggle-button.spec.js.map +1 -1
  403. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.css +23 -16
  404. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +144 -35
  405. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js.map +1 -1
  406. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.stories.js +585 -0
  407. package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js +187 -0
  408. package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js.map +1 -1
  409. package/dist/collection/components/ic-tooltip/ic-tooltip.css +7 -1
  410. package/dist/collection/components/ic-tooltip/ic-tooltip.js +2 -5
  411. package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
  412. package/dist/collection/components/ic-tooltip/ic-tooltip.stories.js +366 -0
  413. package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +49 -21
  414. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +39 -9
  415. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
  416. package/dist/collection/components/ic-top-navigation/ic-top-navigation.stories.js +1098 -0
  417. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js +3 -3
  418. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js.map +1 -1
  419. package/dist/collection/components/ic-typography/ic-typography.css +7 -9
  420. package/dist/collection/components/ic-typography/ic-typography.js +3 -1
  421. package/dist/collection/components/ic-typography/ic-typography.js.map +1 -1
  422. package/dist/collection/components/ic-typography/ic-typography.stories.js +447 -0
  423. package/dist/collection/patterns/top-nav-content-footer.stories.js +109 -0
  424. package/dist/collection/patterns/z-index.stories.js +474 -0
  425. package/dist/collection/testspec.setup.js +14 -0
  426. package/dist/collection/testspec.setup.js.map +1 -1
  427. package/dist/collection/utils/constants.js +1 -1
  428. package/dist/collection/utils/constants.js.map +1 -1
  429. package/dist/collection/utils/helpers.js +64 -19
  430. package/dist/collection/utils/helpers.js.map +1 -1
  431. package/dist/collection/utils/types.js +6 -6
  432. package/dist/collection/utils/types.js.map +1 -1
  433. package/dist/components/helpers.js +73 -26
  434. package/dist/components/helpers.js.map +1 -1
  435. package/dist/components/ic-accordion-group.js +11 -11
  436. package/dist/components/ic-accordion-group.js.map +1 -1
  437. package/dist/components/ic-accordion.js +14 -6
  438. package/dist/components/ic-accordion.js.map +1 -1
  439. package/dist/components/ic-alert.js +12 -16
  440. package/dist/components/ic-alert.js.map +1 -1
  441. package/dist/components/ic-back-to-top.js +9 -5
  442. package/dist/components/ic-back-to-top.js.map +1 -1
  443. package/dist/components/ic-badge.js +28 -5
  444. package/dist/components/ic-badge.js.map +1 -1
  445. package/dist/components/ic-breadcrumb-group.js +44 -20
  446. package/dist/components/ic-breadcrumb-group.js.map +1 -1
  447. package/dist/components/ic-breadcrumb2.js +51 -4
  448. package/dist/components/ic-breadcrumb2.js.map +1 -1
  449. package/dist/components/ic-button2.js +21 -20
  450. package/dist/components/ic-button2.js.map +1 -1
  451. package/dist/components/ic-card-vertical.js +54 -50
  452. package/dist/components/ic-card-vertical.js.map +1 -1
  453. package/dist/components/ic-checkbox-group.js +25 -7
  454. package/dist/components/ic-checkbox-group.js.map +1 -1
  455. package/dist/components/ic-checkbox.js +12 -4
  456. package/dist/components/ic-checkbox.js.map +1 -1
  457. package/dist/components/ic-chip.js +32 -16
  458. package/dist/components/ic-chip.js.map +1 -1
  459. package/dist/components/ic-classification-banner.js +1 -1
  460. package/dist/components/ic-classification-banner.js.map +1 -1
  461. package/dist/components/ic-data-row.js +1 -1
  462. package/dist/components/ic-dialog.js +33 -9
  463. package/dist/components/ic-dialog.js.map +1 -1
  464. package/dist/components/ic-divider2.js +89 -12
  465. package/dist/components/ic-divider2.js.map +1 -1
  466. package/dist/components/ic-empty-state.js +10 -17
  467. package/dist/components/ic-empty-state.js.map +1 -1
  468. package/dist/components/ic-footer-link-group.js +7 -8
  469. package/dist/components/ic-footer-link-group.js.map +1 -1
  470. package/dist/components/ic-footer-link.js +9 -8
  471. package/dist/components/ic-footer-link.js.map +1 -1
  472. package/dist/components/ic-footer.js +25 -15
  473. package/dist/components/ic-footer.js.map +1 -1
  474. package/dist/components/ic-hero.js +9 -17
  475. package/dist/components/ic-hero.js.map +1 -1
  476. package/dist/components/ic-horizontal-scroll2.js +19 -9
  477. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  478. package/dist/components/ic-input-component-container2.js +23 -32
  479. package/dist/components/ic-input-component-container2.js.map +1 -1
  480. package/dist/components/ic-input-label2.js +19 -20
  481. package/dist/components/ic-input-label2.js.map +1 -1
  482. package/dist/components/ic-input-validation2.js +9 -9
  483. package/dist/components/ic-input-validation2.js.map +1 -1
  484. package/dist/components/ic-link2.js +13 -15
  485. package/dist/components/ic-link2.js.map +1 -1
  486. package/dist/components/ic-loading-indicator2.js +11 -9
  487. package/dist/components/ic-loading-indicator2.js.map +1 -1
  488. package/dist/components/ic-menu-group.js +2 -2
  489. package/dist/components/ic-menu-group.js.map +1 -1
  490. package/dist/components/ic-menu-item2.js +30 -21
  491. package/dist/components/ic-menu-item2.js.map +1 -1
  492. package/dist/components/ic-menu2.js +472 -175
  493. package/dist/components/ic-menu2.js.map +1 -1
  494. package/dist/components/ic-navigation-button.js +13 -9
  495. package/dist/components/ic-navigation-button.js.map +1 -1
  496. package/dist/components/ic-navigation-group.js +12 -9
  497. package/dist/components/ic-navigation-group.js.map +1 -1
  498. package/dist/components/ic-navigation-item.js +64 -10
  499. package/dist/components/ic-navigation-item.js.map +1 -1
  500. package/dist/components/ic-navigation-menu2.js +6 -4
  501. package/dist/components/ic-navigation-menu2.js.map +1 -1
  502. package/dist/components/ic-page-header.js +9 -6
  503. package/dist/components/ic-page-header.js.map +1 -1
  504. package/dist/components/ic-pagination-item2.js +15 -12
  505. package/dist/components/ic-pagination-item2.js.map +1 -1
  506. package/dist/components/ic-pagination.js +25 -15
  507. package/dist/components/ic-pagination.js.map +1 -1
  508. package/dist/components/ic-popover-menu.js +50 -26
  509. package/dist/components/ic-popover-menu.js.map +1 -1
  510. package/dist/components/ic-radio-group.js +63 -30
  511. package/dist/components/ic-radio-group.js.map +1 -1
  512. package/dist/components/ic-radio-option.js +45 -23
  513. package/dist/components/ic-radio-option.js.map +1 -1
  514. package/dist/components/ic-search-bar.js +70 -81
  515. package/dist/components/ic-search-bar.js.map +1 -1
  516. package/dist/components/ic-select.js +196 -67
  517. package/dist/components/ic-select.js.map +1 -1
  518. package/dist/components/ic-side-navigation.js +17 -12
  519. package/dist/components/ic-side-navigation.js.map +1 -1
  520. package/dist/components/ic-skeleton.js +5 -5
  521. package/dist/components/ic-skeleton.js.map +1 -1
  522. package/dist/components/ic-status-tag.js +5 -3
  523. package/dist/components/ic-status-tag.js.map +1 -1
  524. package/dist/components/ic-step.js +4 -4
  525. package/dist/components/ic-step.js.map +1 -1
  526. package/dist/components/ic-stepper.js +14 -3
  527. package/dist/components/ic-stepper.js.map +1 -1
  528. package/dist/components/ic-switch.js +24 -18
  529. package/dist/components/ic-switch.js.map +1 -1
  530. package/dist/components/ic-tab-context.js +60 -123
  531. package/dist/components/ic-tab-context.js.map +1 -1
  532. package/dist/components/ic-tab-group.js +2 -18
  533. package/dist/components/ic-tab-group.js.map +1 -1
  534. package/dist/components/ic-tab-panel.js +1 -1
  535. package/dist/components/ic-tab-panel.js.map +1 -1
  536. package/dist/components/ic-tab.js +10 -8
  537. package/dist/components/ic-tab.js.map +1 -1
  538. package/dist/components/ic-text-field.js +371 -1
  539. package/dist/components/ic-text-field.js.map +1 -1
  540. package/dist/components/ic-theme.js +22 -22
  541. package/dist/components/ic-theme.js.map +1 -1
  542. package/dist/components/ic-toast.js +4 -4
  543. package/dist/components/ic-toast.js.map +1 -1
  544. package/dist/components/ic-toggle-button-group.js +75 -14
  545. package/dist/components/ic-toggle-button-group.js.map +1 -1
  546. package/dist/components/ic-toggle-button.js +76 -17
  547. package/dist/components/ic-toggle-button.js.map +1 -1
  548. package/dist/components/ic-tooltip2.js +1 -1
  549. package/dist/components/ic-tooltip2.js.map +1 -1
  550. package/dist/components/ic-top-navigation.js +15 -8
  551. package/dist/components/ic-top-navigation.js.map +1 -1
  552. package/dist/components/ic-typography2.js +4 -2
  553. package/dist/components/ic-typography2.js.map +1 -1
  554. package/dist/core/ag-theme-icds.css +218 -0
  555. package/dist/core/core.css +1607 -77
  556. package/dist/core/core.esm.js +1 -1
  557. package/dist/core/core.esm.js.map +1 -1
  558. package/dist/core/p-00587c99.entry.js +2 -0
  559. package/dist/core/p-00587c99.entry.js.map +1 -0
  560. package/dist/core/p-07aaf9c4.entry.js +2 -0
  561. package/dist/core/p-07aaf9c4.entry.js.map +1 -0
  562. package/dist/core/p-094f51b6.entry.js +2 -0
  563. package/dist/core/p-094f51b6.entry.js.map +1 -0
  564. package/dist/core/p-146b2788.entry.js +2 -0
  565. package/dist/core/p-146b2788.entry.js.map +1 -0
  566. package/dist/core/p-15082ea5.entry.js +2 -0
  567. package/dist/core/p-15082ea5.entry.js.map +1 -0
  568. package/dist/core/p-174de9d7.entry.js +2 -0
  569. package/dist/core/p-174de9d7.entry.js.map +1 -0
  570. package/dist/core/p-17f9921d.entry.js +2 -0
  571. package/dist/core/p-17f9921d.entry.js.map +1 -0
  572. package/dist/core/p-246ea059.entry.js +2 -0
  573. package/dist/core/p-246ea059.entry.js.map +1 -0
  574. package/dist/core/p-25d3c3a6.entry.js +2 -0
  575. package/dist/core/p-25d3c3a6.entry.js.map +1 -0
  576. package/dist/core/{p-54238d16.entry.js → p-27274ca8.entry.js} +2 -2
  577. package/dist/core/p-27274ca8.entry.js.map +1 -0
  578. package/dist/core/p-39ab6387.entry.js +2 -0
  579. package/dist/core/p-39ab6387.entry.js.map +1 -0
  580. package/dist/core/p-3d565739.entry.js +2 -0
  581. package/dist/core/p-3d565739.entry.js.map +1 -0
  582. package/dist/core/p-41b7c67c.entry.js +2 -0
  583. package/dist/core/p-41b7c67c.entry.js.map +1 -0
  584. package/dist/core/p-4572b2ba.entry.js +2 -0
  585. package/dist/core/p-4572b2ba.entry.js.map +1 -0
  586. package/dist/core/p-4cfe1dd8.entry.js +2 -0
  587. package/dist/core/p-4cfe1dd8.entry.js.map +1 -0
  588. package/dist/core/p-5b836707.entry.js +2 -0
  589. package/dist/core/p-5b836707.entry.js.map +1 -0
  590. package/dist/core/{p-46ee459b.entry.js → p-67b3cd55.entry.js} +2 -2
  591. package/dist/core/p-67b3cd55.entry.js.map +1 -0
  592. package/dist/core/p-67b8a829.entry.js +2 -0
  593. package/dist/core/p-67b8a829.entry.js.map +1 -0
  594. package/dist/core/p-6dfa5a4b.entry.js +2 -0
  595. package/dist/core/p-6dfa5a4b.entry.js.map +1 -0
  596. package/dist/core/p-6e94c79c.entry.js +2 -0
  597. package/dist/core/p-6e94c79c.entry.js.map +1 -0
  598. package/dist/core/p-73d6092d.entry.js +2 -0
  599. package/dist/core/p-73d6092d.entry.js.map +1 -0
  600. package/dist/core/{p-c81109da.entry.js → p-770c52a7.entry.js} +2 -2
  601. package/dist/core/p-770c52a7.entry.js.map +1 -0
  602. package/dist/core/{p-e861a2b3.entry.js → p-7b26ef60.entry.js} +2 -2
  603. package/dist/core/p-7b26ef60.entry.js.map +1 -0
  604. package/dist/core/{p-1e802eeb.entry.js → p-7f984e25.entry.js} +2 -2
  605. package/dist/core/p-7f984e25.entry.js.map +1 -0
  606. package/dist/core/p-86caada0.entry.js +2 -0
  607. package/dist/core/p-86caada0.entry.js.map +1 -0
  608. package/dist/core/p-8c03b8b5.entry.js +2 -0
  609. package/dist/core/p-8c03b8b5.entry.js.map +1 -0
  610. package/dist/core/p-8fdb9b16.entry.js +2 -0
  611. package/dist/core/p-8fdb9b16.entry.js.map +1 -0
  612. package/dist/core/p-91a221b5.entry.js +2 -0
  613. package/dist/core/p-91a221b5.entry.js.map +1 -0
  614. package/dist/core/{p-e597da0e.entry.js → p-96b4ca6e.entry.js} +2 -2
  615. package/dist/core/p-96b4ca6e.entry.js.map +1 -0
  616. package/dist/core/p-9e0c2c19.entry.js +2 -0
  617. package/dist/core/p-9e0c2c19.entry.js.map +1 -0
  618. package/dist/core/p-9f569f90.entry.js +2 -0
  619. package/dist/core/p-9f569f90.entry.js.map +1 -0
  620. package/dist/core/p-a178d53c.entry.js +2 -0
  621. package/dist/core/p-a178d53c.entry.js.map +1 -0
  622. package/dist/core/p-a3b7a147.entry.js +2 -0
  623. package/dist/core/p-a3b7a147.entry.js.map +1 -0
  624. package/dist/core/p-a72685f6.entry.js +2 -0
  625. package/dist/core/p-a72685f6.entry.js.map +1 -0
  626. package/dist/core/p-abdc2912.entry.js +2 -0
  627. package/dist/core/p-abdc2912.entry.js.map +1 -0
  628. package/dist/core/p-b260b967.entry.js +2 -0
  629. package/dist/core/p-b260b967.entry.js.map +1 -0
  630. package/dist/core/p-b404b307.entry.js +2 -0
  631. package/dist/core/p-b404b307.entry.js.map +1 -0
  632. package/dist/core/p-b6ce9ca3.entry.js +2 -0
  633. package/dist/core/p-b6ce9ca3.entry.js.map +1 -0
  634. package/dist/core/p-b6e010f3.entry.js +2 -0
  635. package/dist/core/p-b6e010f3.entry.js.map +1 -0
  636. package/dist/core/p-bbd4f487.entry.js +2 -0
  637. package/dist/core/p-bbd4f487.entry.js.map +1 -0
  638. package/dist/core/p-bd9f3961.entry.js +2 -0
  639. package/dist/core/p-bd9f3961.entry.js.map +1 -0
  640. package/dist/core/{p-a3b6a02d.entry.js → p-c1db155d.entry.js} +2 -2
  641. package/dist/core/p-c1db155d.entry.js.map +1 -0
  642. package/dist/core/p-c7bcdb8e.entry.js +2 -0
  643. package/dist/core/p-c7bcdb8e.entry.js.map +1 -0
  644. package/dist/core/p-ca11666f.entry.js +2 -0
  645. package/dist/core/p-ca11666f.entry.js.map +1 -0
  646. package/dist/core/p-cda4aca9.js +2 -0
  647. package/dist/core/p-cda4aca9.js.map +1 -0
  648. package/dist/core/{p-bf4c61cb.entry.js → p-d0afa458.entry.js} +2 -2
  649. package/dist/core/{p-bf4c61cb.entry.js.map → p-d0afa458.entry.js.map} +1 -1
  650. package/dist/core/p-d8690838.entry.js +2 -0
  651. package/dist/core/p-d8690838.entry.js.map +1 -0
  652. package/dist/core/p-dededae6.entry.js +2 -0
  653. package/dist/core/p-dededae6.entry.js.map +1 -0
  654. package/dist/core/p-df957570.entry.js +2 -0
  655. package/dist/core/p-df957570.entry.js.map +1 -0
  656. package/dist/core/{p-d8870804.entry.js → p-e2cf6e7e.entry.js} +2 -2
  657. package/dist/core/p-e6189634.entry.js +2 -0
  658. package/dist/core/p-e6189634.entry.js.map +1 -0
  659. package/dist/core/p-e6dc3cd1.entry.js +2 -0
  660. package/dist/core/p-e6dc3cd1.entry.js.map +1 -0
  661. package/dist/core/p-e831277e.entry.js +2 -0
  662. package/dist/core/p-e831277e.entry.js.map +1 -0
  663. package/dist/core/p-eb7c589b.entry.js +2 -0
  664. package/dist/core/p-eb7c589b.entry.js.map +1 -0
  665. package/dist/core/p-f65179fe.entry.js +2 -0
  666. package/dist/core/p-f65179fe.entry.js.map +1 -0
  667. package/dist/core/p-fd60eef7.entry.js +2 -0
  668. package/dist/core/p-fd60eef7.entry.js.map +1 -0
  669. package/dist/core/p-fd9f3fd0.entry.js +2 -0
  670. package/dist/core/p-fd9f3fd0.entry.js.map +1 -0
  671. package/dist/esm/core.js +1 -1
  672. package/dist/esm/{helpers-1c9151ef.js → helpers-a72a277b.js} +74 -27
  673. package/dist/esm/helpers-a72a277b.js.map +1 -0
  674. package/dist/esm/ic-accordion-group.entry.js +10 -10
  675. package/dist/esm/ic-accordion-group.entry.js.map +1 -1
  676. package/dist/esm/ic-accordion.entry.js +12 -5
  677. package/dist/esm/ic-accordion.entry.js.map +1 -1
  678. package/dist/esm/ic-alert.entry.js +10 -15
  679. package/dist/esm/ic-alert.entry.js.map +1 -1
  680. package/dist/esm/ic-back-to-top.entry.js +9 -6
  681. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  682. package/dist/esm/ic-badge.entry.js +26 -3
  683. package/dist/esm/ic-badge.entry.js.map +1 -1
  684. package/dist/esm/ic-breadcrumb-group.entry.js +43 -20
  685. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  686. package/dist/esm/ic-breadcrumb.entry.js +49 -4
  687. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  688. package/dist/esm/ic-button_3.entry.js +28 -26
  689. package/dist/esm/ic-button_3.entry.js.map +1 -1
  690. package/dist/esm/ic-card-vertical.entry.js +49 -48
  691. package/dist/esm/ic-card-vertical.entry.js.map +1 -1
  692. package/dist/esm/ic-checkbox-group.entry.js +21 -6
  693. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  694. package/dist/esm/ic-checkbox.entry.js +10 -4
  695. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  696. package/dist/esm/ic-chip.entry.js +28 -16
  697. package/dist/esm/ic-chip.entry.js.map +1 -1
  698. package/dist/esm/ic-classification-banner.entry.js +1 -1
  699. package/dist/esm/ic-classification-banner.entry.js.map +1 -1
  700. package/dist/esm/ic-data-row.entry.js +1 -1
  701. package/dist/esm/ic-dialog.entry.js +32 -9
  702. package/dist/esm/ic-dialog.entry.js.map +1 -1
  703. package/dist/esm/ic-divider.entry.js +74 -10
  704. package/dist/esm/ic-divider.entry.js.map +1 -1
  705. package/dist/esm/ic-empty-state.entry.js +8 -16
  706. package/dist/esm/ic-empty-state.entry.js.map +1 -1
  707. package/dist/esm/ic-footer-link-group.entry.js +6 -7
  708. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  709. package/dist/esm/ic-footer-link.entry.js +8 -7
  710. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  711. package/dist/esm/ic-footer.entry.js +24 -14
  712. package/dist/esm/ic-footer.entry.js.map +1 -1
  713. package/dist/esm/ic-hero.entry.js +8 -16
  714. package/dist/esm/ic-hero.entry.js.map +1 -1
  715. package/dist/esm/ic-horizontal-scroll.entry.js +17 -9
  716. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  717. package/dist/esm/ic-input-component-container_3.entry.js +487 -201
  718. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  719. package/dist/esm/ic-input-label_2.entry.js +24 -26
  720. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  721. package/dist/esm/ic-link.entry.js +10 -12
  722. package/dist/esm/ic-link.entry.js.map +1 -1
  723. package/dist/esm/ic-menu-group.entry.js +3 -3
  724. package/dist/esm/ic-menu-group.entry.js.map +1 -1
  725. package/dist/esm/ic-menu-item.entry.js +25 -18
  726. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  727. package/dist/esm/ic-navigation-button.entry.js +11 -8
  728. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  729. package/dist/esm/ic-navigation-group.entry.js +10 -8
  730. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  731. package/dist/esm/ic-navigation-item.entry.js +61 -9
  732. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  733. package/dist/esm/ic-navigation-menu.entry.js +5 -4
  734. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  735. package/dist/esm/ic-page-header.entry.js +8 -6
  736. package/dist/esm/ic-page-header.entry.js.map +1 -1
  737. package/dist/esm/ic-pagination-item.entry.js +12 -11
  738. package/dist/esm/ic-pagination-item.entry.js.map +1 -1
  739. package/dist/esm/ic-pagination.entry.js +23 -15
  740. package/dist/esm/ic-pagination.entry.js.map +1 -1
  741. package/dist/esm/ic-popover-menu.entry.js +47 -25
  742. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  743. package/dist/esm/ic-radio-group.entry.js +60 -29
  744. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  745. package/dist/esm/ic-radio-option.entry.js +42 -22
  746. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  747. package/dist/esm/ic-search-bar.entry.js +54 -56
  748. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  749. package/dist/esm/ic-select.entry.js +192 -66
  750. package/dist/esm/ic-select.entry.js.map +1 -1
  751. package/dist/esm/ic-side-navigation.entry.js +16 -11
  752. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  753. package/dist/esm/ic-skeleton.entry.js +4 -4
  754. package/dist/esm/ic-skeleton.entry.js.map +1 -1
  755. package/dist/esm/ic-status-tag.entry.js +5 -4
  756. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  757. package/dist/esm/ic-step.entry.js +4 -5
  758. package/dist/esm/ic-step.entry.js.map +1 -1
  759. package/dist/esm/ic-stepper.entry.js +12 -2
  760. package/dist/esm/ic-stepper.entry.js.map +1 -1
  761. package/dist/esm/ic-switch.entry.js +21 -16
  762. package/dist/esm/ic-switch.entry.js.map +1 -1
  763. package/dist/esm/ic-tab-context.entry.js +60 -123
  764. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  765. package/dist/esm/ic-tab-group.entry.js +3 -19
  766. package/dist/esm/ic-tab-group.entry.js.map +1 -1
  767. package/dist/esm/ic-tab-panel.entry.js +2 -2
  768. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  769. package/dist/esm/ic-tab.entry.js +10 -8
  770. package/dist/esm/ic-tab.entry.js.map +1 -1
  771. package/dist/esm/ic-text-field.entry.js +43 -23
  772. package/dist/esm/ic-text-field.entry.js.map +1 -1
  773. package/dist/esm/ic-theme.entry.js +20 -20
  774. package/dist/esm/ic-theme.entry.js.map +1 -1
  775. package/dist/esm/ic-toast.entry.js +4 -4
  776. package/dist/esm/ic-toast.entry.js.map +1 -1
  777. package/dist/esm/ic-toggle-button-group.entry.js +62 -12
  778. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  779. package/dist/esm/ic-toggle-button.entry.js +64 -9
  780. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  781. package/dist/esm/ic-top-navigation.entry.js +13 -7
  782. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  783. package/dist/esm/ic-typography.entry.js +5 -3
  784. package/dist/esm/ic-typography.entry.js.map +1 -1
  785. package/dist/esm/index-d1d2c456.js +4 -4
  786. package/dist/esm/loader.js +1 -1
  787. package/dist/types/components/ic-accordion/ic-accordion.d.ts +7 -5
  788. package/dist/types/components/ic-accordion-group/ic-accordion-group.d.ts +4 -4
  789. package/dist/types/components/ic-alert/ic-alert.d.ts +9 -6
  790. package/dist/types/components/ic-back-to-top/ic-back-to-top.d.ts +5 -0
  791. package/dist/types/components/ic-badge/ic-badge.d.ts +5 -0
  792. package/dist/types/components/ic-breadcrumb/ic-breadcrumb.d.ts +9 -0
  793. package/dist/types/components/ic-breadcrumb-group/ic-breadcrumb-group.d.ts +1 -0
  794. package/dist/types/components/ic-button/ic-button.d.ts +11 -7
  795. package/dist/types/components/ic-button/ic-button.types.d.ts +0 -1
  796. package/dist/types/components/ic-card-vertical/ic-card-vertical.d.ts +9 -5
  797. package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +7 -2
  798. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +8 -1
  799. package/dist/types/components/ic-chip/ic-chip.d.ts +13 -2
  800. package/dist/types/components/ic-dialog/ic-dialog.d.ts +8 -2
  801. package/dist/types/components/ic-divider/ic-divider.d.ts +33 -3
  802. package/dist/types/components/ic-divider/ic-divider.types.d.ts +3 -0
  803. package/dist/types/components/ic-empty-state/ic-empty-state.d.ts +5 -2
  804. package/dist/types/components/ic-footer/ic-footer.d.ts +4 -3
  805. package/dist/types/components/ic-footer-link/ic-footer-link.d.ts +3 -3
  806. package/dist/types/components/ic-footer-link-group/ic-footer-link-group.d.ts +3 -2
  807. package/dist/types/components/ic-hero/ic-hero.d.ts +3 -4
  808. package/dist/types/components/ic-horizontal-scroll/ic-horizontal-scroll.d.ts +8 -2
  809. package/dist/types/components/ic-input-component-container/ic-input-component-container.d.ts +2 -5
  810. package/dist/types/components/ic-input-label/ic-input-label.d.ts +8 -4
  811. package/dist/types/components/ic-link/ic-link.d.ts +2 -2
  812. package/dist/types/components/ic-loading-indicator/ic-loading-indicator.d.ts +9 -5
  813. package/dist/types/components/ic-menu/ic-menu.d.ts +49 -16
  814. package/dist/types/components/ic-menu-item/ic-menu-item.d.ts +12 -5
  815. package/dist/types/components/ic-navigation-button/ic-navigation-button.d.ts +7 -3
  816. package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +7 -3
  817. package/dist/types/components/ic-navigation-item/ic-navigation-item.d.ts +14 -3
  818. package/dist/types/components/ic-navigation-menu/ic-navigation-menu.d.ts +5 -0
  819. package/dist/types/components/ic-page-header/ic-page-header.d.ts +5 -1
  820. package/dist/types/components/ic-pagination/ic-pagination.d.ts +10 -5
  821. package/dist/types/components/ic-pagination-item/ic-pagination-item.d.ts +10 -5
  822. package/dist/types/components/ic-popover-menu/ic-popover-menu.d.ts +9 -7
  823. package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +6 -1
  824. package/dist/types/components/ic-radio-option/ic-radio-option.d.ts +10 -3
  825. package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +15 -3
  826. package/dist/types/components/ic-select/ic-select.d.ts +36 -16
  827. package/dist/types/components/ic-side-navigation/ic-side-navigation.d.ts +3 -3
  828. package/dist/types/components/ic-side-navigation/ic-side-navigation.types.d.ts +2 -2
  829. package/dist/types/components/ic-skeleton/ic-skeleton.d.ts +3 -2
  830. package/dist/types/components/ic-status-tag/ic-status-tag.d.ts +4 -0
  831. package/dist/types/components/ic-step/ic-step.d.ts +5 -0
  832. package/dist/types/components/ic-stepper/ic-stepper.d.ts +6 -4
  833. package/dist/types/components/ic-switch/ic-switch.d.ts +7 -6
  834. package/dist/types/components/ic-tab/ic-tab.d.ts +1 -0
  835. package/dist/types/components/ic-tab-context/ic-tab-context.d.ts +8 -6
  836. package/dist/types/components/ic-tab-group/ic-tab-group.d.ts +0 -4
  837. package/dist/types/components/ic-text-field/ic-text-field.d.ts +10 -2
  838. package/dist/types/components/ic-theme/ic-theme.d.ts +8 -8
  839. package/dist/types/components/ic-toggle-button/ic-toggle-button.d.ts +16 -7
  840. package/dist/types/components/ic-toggle-button-group/ic-toggle-button-group.d.ts +21 -5
  841. package/dist/types/components/ic-tooltip/ic-tooltip.d.ts +1 -1
  842. package/dist/types/components/ic-top-navigation/ic-top-navigation.d.ts +7 -3
  843. package/dist/types/components.d.ts +516 -159
  844. package/dist/types/testspec.setup.d.ts +9 -0
  845. package/dist/types/utils/helpers.d.ts +22 -8
  846. package/dist/types/utils/types.d.ts +8 -6
  847. package/hydrate/index.js +1998 -1053
  848. package/package.json +20 -19
  849. package/vscode-data.json +655 -166
  850. package/dist/cjs/helpers-f1cf5156.js.map +0 -1
  851. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.e2e.js +0 -339
  852. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.e2e.js.map +0 -1
  853. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.e2e.js +0 -1106
  854. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.e2e.js.map +0 -1
  855. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.e2e.js +0 -49
  856. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.e2e.js.map +0 -1
  857. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.e2e.js +0 -109
  858. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.e2e.js.map +0 -1
  859. package/dist/collection/components/ic-typography/test/basic/ic-typography.e2e.js +0 -39
  860. package/dist/collection/components/ic-typography/test/basic/ic-typography.e2e.js.map +0 -1
  861. package/dist/components/ic-text-field2.js +0 -353
  862. package/dist/components/ic-text-field2.js.map +0 -1
  863. package/dist/core/p-09104e40.entry.js +0 -2
  864. package/dist/core/p-09104e40.entry.js.map +0 -1
  865. package/dist/core/p-0c0b1c74.entry.js +0 -2
  866. package/dist/core/p-0c0b1c74.entry.js.map +0 -1
  867. package/dist/core/p-0c3a0d85.entry.js +0 -2
  868. package/dist/core/p-0c3a0d85.entry.js.map +0 -1
  869. package/dist/core/p-1083a708.entry.js +0 -2
  870. package/dist/core/p-1083a708.entry.js.map +0 -1
  871. package/dist/core/p-130dd440.entry.js +0 -2
  872. package/dist/core/p-130dd440.entry.js.map +0 -1
  873. package/dist/core/p-1e802eeb.entry.js.map +0 -1
  874. package/dist/core/p-21312898.entry.js +0 -2
  875. package/dist/core/p-21312898.entry.js.map +0 -1
  876. package/dist/core/p-21e5dd29.entry.js +0 -2
  877. package/dist/core/p-21e5dd29.entry.js.map +0 -1
  878. package/dist/core/p-2ab86057.entry.js +0 -2
  879. package/dist/core/p-2ab86057.entry.js.map +0 -1
  880. package/dist/core/p-312cacae.js +0 -2
  881. package/dist/core/p-312cacae.js.map +0 -1
  882. package/dist/core/p-31fc8756.entry.js +0 -2
  883. package/dist/core/p-31fc8756.entry.js.map +0 -1
  884. package/dist/core/p-355acffa.entry.js +0 -2
  885. package/dist/core/p-355acffa.entry.js.map +0 -1
  886. package/dist/core/p-35b8b480.entry.js +0 -2
  887. package/dist/core/p-35b8b480.entry.js.map +0 -1
  888. package/dist/core/p-363d6e88.entry.js +0 -2
  889. package/dist/core/p-363d6e88.entry.js.map +0 -1
  890. package/dist/core/p-40e9e76a.entry.js +0 -2
  891. package/dist/core/p-40e9e76a.entry.js.map +0 -1
  892. package/dist/core/p-43f9a711.entry.js +0 -2
  893. package/dist/core/p-43f9a711.entry.js.map +0 -1
  894. package/dist/core/p-46ee459b.entry.js.map +0 -1
  895. package/dist/core/p-54238d16.entry.js.map +0 -1
  896. package/dist/core/p-550d7356.entry.js +0 -2
  897. package/dist/core/p-550d7356.entry.js.map +0 -1
  898. package/dist/core/p-56d1828c.entry.js +0 -2
  899. package/dist/core/p-56d1828c.entry.js.map +0 -1
  900. package/dist/core/p-5a2630fb.entry.js +0 -2
  901. package/dist/core/p-5a2630fb.entry.js.map +0 -1
  902. package/dist/core/p-5a52614c.entry.js +0 -2
  903. package/dist/core/p-5a52614c.entry.js.map +0 -1
  904. package/dist/core/p-60efd7fa.entry.js +0 -2
  905. package/dist/core/p-60efd7fa.entry.js.map +0 -1
  906. package/dist/core/p-69f3ce5a.entry.js +0 -2
  907. package/dist/core/p-69f3ce5a.entry.js.map +0 -1
  908. package/dist/core/p-78ce4920.entry.js +0 -2
  909. package/dist/core/p-78ce4920.entry.js.map +0 -1
  910. package/dist/core/p-79d2a33b.entry.js +0 -2
  911. package/dist/core/p-79d2a33b.entry.js.map +0 -1
  912. package/dist/core/p-80237a20.entry.js +0 -2
  913. package/dist/core/p-80237a20.entry.js.map +0 -1
  914. package/dist/core/p-804513ad.entry.js +0 -2
  915. package/dist/core/p-804513ad.entry.js.map +0 -1
  916. package/dist/core/p-82375dca.entry.js +0 -2
  917. package/dist/core/p-82375dca.entry.js.map +0 -1
  918. package/dist/core/p-8e1e25a7.entry.js +0 -2
  919. package/dist/core/p-8e1e25a7.entry.js.map +0 -1
  920. package/dist/core/p-a1a1000d.entry.js +0 -2
  921. package/dist/core/p-a1a1000d.entry.js.map +0 -1
  922. package/dist/core/p-a1b1a0ab.entry.js +0 -2
  923. package/dist/core/p-a1b1a0ab.entry.js.map +0 -1
  924. package/dist/core/p-a37bcdbe.entry.js +0 -2
  925. package/dist/core/p-a37bcdbe.entry.js.map +0 -1
  926. package/dist/core/p-a3b6a02d.entry.js.map +0 -1
  927. package/dist/core/p-a765ad17.entry.js +0 -2
  928. package/dist/core/p-a765ad17.entry.js.map +0 -1
  929. package/dist/core/p-aa2be24c.entry.js +0 -2
  930. package/dist/core/p-aa2be24c.entry.js.map +0 -1
  931. package/dist/core/p-b12a5283.entry.js +0 -2
  932. package/dist/core/p-b12a5283.entry.js.map +0 -1
  933. package/dist/core/p-b1b05979.entry.js +0 -2
  934. package/dist/core/p-b1b05979.entry.js.map +0 -1
  935. package/dist/core/p-c6795377.entry.js +0 -2
  936. package/dist/core/p-c6795377.entry.js.map +0 -1
  937. package/dist/core/p-c81109da.entry.js.map +0 -1
  938. package/dist/core/p-cb4d104e.entry.js +0 -2
  939. package/dist/core/p-cb4d104e.entry.js.map +0 -1
  940. package/dist/core/p-d2f89cb5.entry.js +0 -2
  941. package/dist/core/p-d2f89cb5.entry.js.map +0 -1
  942. package/dist/core/p-d43d1ec0.entry.js +0 -2
  943. package/dist/core/p-d43d1ec0.entry.js.map +0 -1
  944. package/dist/core/p-d5829a35.entry.js +0 -2
  945. package/dist/core/p-d5829a35.entry.js.map +0 -1
  946. package/dist/core/p-ddb8d280.entry.js +0 -2
  947. package/dist/core/p-ddb8d280.entry.js.map +0 -1
  948. package/dist/core/p-e0e34fa7.entry.js +0 -2
  949. package/dist/core/p-e0e34fa7.entry.js.map +0 -1
  950. package/dist/core/p-e4b276b5.entry.js +0 -2
  951. package/dist/core/p-e4b276b5.entry.js.map +0 -1
  952. package/dist/core/p-e597da0e.entry.js.map +0 -1
  953. package/dist/core/p-e861a2b3.entry.js.map +0 -1
  954. package/dist/core/p-ea277b05.entry.js +0 -2
  955. package/dist/core/p-ea277b05.entry.js.map +0 -1
  956. package/dist/core/p-ef871b8f.entry.js +0 -2
  957. package/dist/core/p-ef871b8f.entry.js.map +0 -1
  958. package/dist/core/p-f229d19e.entry.js +0 -2
  959. package/dist/core/p-f229d19e.entry.js.map +0 -1
  960. package/dist/core/p-f30f3a3e.entry.js +0 -2
  961. package/dist/core/p-f30f3a3e.entry.js.map +0 -1
  962. package/dist/core/p-fa587e6d.entry.js +0 -2
  963. package/dist/core/p-fa587e6d.entry.js.map +0 -1
  964. package/dist/core/p-fb6ac08d.entry.js +0 -2
  965. package/dist/core/p-fb6ac08d.entry.js.map +0 -1
  966. package/dist/esm/helpers-1c9151ef.js.map +0 -1
  967. /package/dist/core/{p-d8870804.entry.js.map → p-e2cf6e7e.entry.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icButtonCss","buttonIds","Button","this","buttonIdNum","hasTooltip","inheritedAttributes","describedbyEl","describedById","mutationObserver","hostMutationObserver","handleClick","el","type","hasRouterSlot","closest","hiddenFormButton","document","createElement","setAttribute","style","display","appendChild","click","remove","handleKeyDown","ev","key","closeButtonTooltip","onFocus","icFocus","emit","onBlur","icBlur","mutationCallback","describedByContent","innerText","hostMutationCallback","mutationList","forceComponentUpdate","forEach","attributeName","attribute","getAttribute","title","ariaLabel","IC_INHERITED_ARIA","includes","forceUpdate","setHasTooltip","disableTooltip","isIconVariant","variant","startsWith","watchDisabledHandler","removeDisabledFalse","disabled","disconnectedCallback","undefined","disconnect","componentWillUpdate","loading","setProperty","getBoundingClientRect","width","componentWillLoad","_a","inheritAttributes","restInheritedAttributes","__rest","id","parentElement","querySelector","componentDidLoad","updateTheme","MutationObserver","observe","characterData","childList","subtree","attributes","componentWillRender","iconEl","hasIconSlot","handleHostClick","event","fileUpload","renderFileHiddenInput","icFileSelection","multiple","fileInputName","selectedFiles","accept","stopImmediatePropagation","dropdown","dropdownExpanded","brandChangeHandler","detail","mode","setFocus","buttonEl","focus","tooltip","shadowRoot","isTooltipVisible","displayTooltip","preventDefault","position","selectorPrefix","routerSlot","textContent","foregroundColor","getBrandFromContext","IcBrandForegroundEnum","Default","theme","Light","Dark","monochrome","render","TagType","href","buttonAttrs","form","formaction","formenctype","formmethod","formnovalidate","formtarget","download","rel","target","referrerpolicy","hreflang","describedby","buttonId","ButtonContent","h","Object","assign","class","ref","part","name","innerHTML","arrowDropdown","Host","size","fullWidth","isSlotUsed","transparentBackground","onClick","onKeyDown","ariaOwnsId","ariaControlsId","label","placement","tooltipPlacement","silent","icLoadingIndicatorCss","LoadingIndicator","updateCircularProgressMeter","indeterminate","circularMeter","String","progress","getLabel","labelIndex","setLabel","Promise","interval","setInterval","labelList","length","labelDuration","getLabelVariant","outerElement","offsetWidth","setCircleLineWidth","compactStepCircularLineWidth","classList","contains","toastDismissTimerCircularLineWidth","circularLineWidth","circularDiameter","setLinearDeterminateWidth","innerElement","Math","min","max","proportion","clipInnerElement","add","calcOuterClass","cls","updateLabel","indicatorLabel","setCircleXY","r","x","y","nextRadius","setDashSteps","radius","dashArray","PI","watchPropHandler","watchProgressHandler","clearInterval","Number","componentDidUpdate","description","innerLabel","role","viewBox","cx","cy","icTooltipCss","Tooltip","delayedHideEvents","dialogOverflow","instantHideEvents","mouseOverTool","persistTooltip","onDialog","showEvents","disableHover","disableClick","getTooltipTranslate","dialogEl","child","children","tooltipX","tooltipY","left","bottom","top","right","height","toolTip","show","icDialogEl","popperInstance","createPopper","modifiers","options","offset","element","arrow","scroll","resize","popperProps","console","warn","hide","removeAttribute","destroy","checkCloseTooltip","setTimeout","mouseEnterTooltip","mouseLeaveTooltip","manageEventListeners","action","method","setExternalPopperProps","props","onComponentRequiredPropUndefined","prop","propName","componentDidRender","typographyEl","maxLines","resolve","hasAttribute"],"sources":["src/components/ic-button/ic-button.css?tag=ic-button&encapsulation=shadow","src/components/ic-button/ic-button.tsx","src/components/ic-loading-indicator/ic-loading-indicator.css?tag=ic-loading-indicator&encapsulation=shadow","src/components/ic-loading-indicator/ic-loading-indicator.tsx","src/components/ic-tooltip/ic-tooltip.css?tag=ic-tooltip&encapsulation=shadow","src/components/ic-tooltip/ic-tooltip.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n/**\n* @prop --min-width: Minimum width of the button.\n* @prop --height: The height of the button.\n*/\n\n:host {\n display: inline-block;\n position: relative;\n\n --icon-width: 100%;\n --icon-height: 100%;\n}\n\n.button,\n::slotted(a) {\n font-family: var(--ic-font-body-family);\n text-decoration: none;\n font-weight: 600;\n font-size: 0.875rem;\n transition: var(--ic-easing-transition-fast);\n border-radius: var(--ic-border-radius);\n min-width: var(--min-width, 6.25rem);\n display: inline-flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n background: none;\n border: none;\n box-sizing: border-box;\n white-space: nowrap;\n vertical-align: middle;\n}\n\n:host(.with-badge) .button {\n border-radius: 0.2188rem;\n}\n\n.button:hover,\n::slotted(a:hover) {\n cursor: pointer;\n}\n\n.button:focus,\n::slotted(a:focus) {\n box-shadow: var(--ic-border-focus);\n}\n\n.button:focus-visible,\n::slotted(a:focus-visible) {\n outline: var(--ic-hc-focus-outline);\n}\n\n:host(.ic-button-disabled),\n:host(.ic-button-disabled) .button,\n:host(.ic-button-disabled) ::slotted(a),\n:host(.ic-button-loading),\n:host(.ic-button-loading) .button {\n pointer-events: none;\n}\n\n:host(.top-icon) .button {\n flex-direction: column;\n\n --height: fit-content;\n}\n\n:host(.top-icon) .button .icon-container {\n margin-right: 0;\n}\n\n/* Variants */\n\n/* Primary */\n\n:host(.ic-button-variant-primary) .button,\n:host(.ic-button-variant-icon-primary) .button {\n color: var(--ic-button-primary-text);\n background-color: var(--ic-button-primary-background);\n}\n\n:host(.ic-button-variant-primary) ::slotted(a),\n:host(.ic-button-variant-icon-primary) ::slotted(a) {\n color: var(--ic-button-primary-text);\n background-color: var(--ic-button-primary-background) !important;\n}\n\n:host(.ic-button-variant-primary) .button:hover,\n:host(.ic-button-variant-icon-primary) .button:hover {\n background-color: var(--ic-button-primary-background-hover);\n}\n\n:host(.ic-button-variant-primary) ::slotted(a:hover),\n:host(.ic-button-variant-icon-primary) ::slotted(a:hover) {\n background-color: var(--ic-button-primary-background-hover) !important;\n}\n\n:host(.ic-button-variant-primary.ic-button-loading) .button,\n:host(.ic-button-variant-primary) .button:active,\n:host(.ic-button-variant-icon-primary.ic-button-loading) .button,\n:host(.ic-button-variant-icon-primary) .button:active {\n color: var(--ic-button-primary-text);\n background-color: var(--ic-button-primary-background-pressed);\n --button-loading-inner-color: var(--ic-button-primary-text);\n --button-loading-outer-color: var(--ic-button-primary-background-pressed);\n}\n\n:host(.ic-button-variant-primary) ::slotted(a:active),\n:host(.ic-button-variant-icon-primary) ::slotted(a:active) {\n background-color: var(--ic-button-primary-background-pressed) !important;\n}\n\n:host(.ic-button-variant-primary.ic-button-disabled) .button,\n:host(.ic-button-variant-icon-primary.ic-button-disabled) .button {\n background: var(--ic-button-primary-background-disabled);\n color: var(--ic-button-primary-text-disabled);\n}\n\n:host(.ic-button-variant-primary.ic-button-disabled) ::slotted(a),\n:host(.ic-button-variant-icon-primary.ic-button-disabled) ::slotted(a) {\n background: var(--ic-button-primary-background-disabled) !important;\n color: var(--ic-button-primary-text-disabled) !important;\n}\n\n/* Primary - monochrome */\n\n:host(.ic-button-variant-primary.monochrome) .button,\n:host(.ic-button-variant-icon-primary.monochrome) .button {\n color: var(--ic-button-primary-text-monochrome);\n background-color: var(--ic-button-primary-background-monochrome);\n}\n\n:host(.ic-button-variant-primary.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon-primary.monochrome) ::slotted(a) {\n background-color: var(--ic-button-primary-background-monochrome) !important;\n}\n\n:host(.ic-button-variant-primary.monochrome) .button:hover,\n:host(.ic-button-variant-icon-primary.monochrome) .button:hover {\n background-color: var(--ic-button-primary-background-hover-monochrome);\n}\n\n:host(.ic-button-variant-primary.monochrome) ::slotted(a:hover),\n:host(.ic-button-variant-icon-primary.monochrome) ::slotted(a:hover) {\n background-color: var(\n --ic-button-primary-background-hover-monochrome\n ) !important;\n}\n\n:host(.ic-button-variant-primary.ic-button-loading.monochrome) .button,\n:host(.ic-button-variant-primary.monochrome) .button:active,\n:host(.ic-button-variant-icon-primary.ic-button-loading.monochrome) .button,\n:host(.ic-button-variant-icon-primary.monochrome) .button:active {\n background-color: var(--ic-button-primary-background-pressed-monochrome);\n --button-loading-inner-color: var(--ic-button-primary-text-monochrome);\n --button-loading-outer-color: var(--ic-button-primary-background-monochrome);\n}\n\n:host(.ic-button-variant-primary.monochrome) ::slotted(a:active),\n:host(.ic-button-variant-icon-primary.monochrome) ::slotted(a:active) {\n background-color: var(\n --ic-button-primary-background-pressed-monochrome\n ) !important;\n}\n\n:host(.ic-button-variant-primary.ic-button-disabled.monochrome) .button,\n:host(.ic-button-variant-icon-primary.ic-button-disabled.monochrome) .button {\n background-color: var(--ic-button-primary-background-disabled-monochrome);\n color: var(--ic-button-primary-text-disabled-monochrome);\n}\n\n:host(.ic-button-variant-primary.ic-button-disabled.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon-primary.ic-button-disabled.monochrome)\n ::slotted(a) {\n background-color: var(\n --ic-button-primary-background-disabled-monochrome\n ) !important;\n}\n\n/* Secondary */\n\n:host(.ic-button-variant-secondary) .button,\n:host(.ic-button-variant-icon-secondary) .button {\n border: var(--ic-border-width) solid var(--ic-button-secondary-border);\n color: var(--ic-button-secondary-text);\n}\n\n:host(.ic-button-variant-secondary) ::slotted(a),\n:host(.ic-button-variant-icon-secondary) ::slotted(a) {\n border: var(--ic-border-width) solid var(--ic-button-secondary-border) !important;\n color: var(--ic-button-secondary-text) !important;\n}\n\n:host(.ic-button-variant-secondary) .button:hover,\n:host(.ic-button-variant-icon-secondary) .button:hover {\n background-color: var(--ic-button-secondary-background-hover-active);\n border-color: var(--ic-button-secondary-border-hover);\n color: var(--ic-button-secondary-text-hover-active);\n}\n\n:host(.ic-button-variant-secondary) ::slotted(a:hover),\n:host(.ic-button-variant-icon-secondary) ::slotted(a:hover) {\n background-color: var(\n --ic-button-secondary-background-hover-active\n ) !important;\n}\n\n:host(.ic-button-variant-secondary) .button:active,\n:host(.ic-button-variant-icon-secondary) .button:active {\n border-color: var(--ic-button-secondary-border-pressed);\n background-color: var(--ic-button-secondary-background-pressed-active);\n color: var(--ic-button-secondary-text-pressed-active);\n}\n\n:host(.ic-button-variant-secondary) ::slotted(a:active),\n:host(.ic-button-variant-icon-secondary) ::slotted(a:active) {\n background-color: var(\n --ic-button-secondary-background-pressed-active\n ) !important;\n}\n\n:host(.ic-button-variant-secondary.ic-button-loading) .button,\n:host(.ic-button-variant-icon-secondary.ic-button-loading) .button {\n border-color: var(--ic-button-secondary-border-pressed);\n background-color: var(\n --loading-button-background,\n var(--ic-button-secondary-background-pressed-active)\n ) !important;\n color: var(--ic-button-secondary-text-pressed-active);\n --button-loading-inner-color: var(--ic-button-secondary-text-pressed-active);\n --button-loading-outer-color: var(--ic-button-secondary-background-pressed);\n}\n\n:host(.ic-button-variant-secondary.ic-button-disabled) .button,\n:host(.ic-button-variant-icon-secondary.ic-button-disabled) .button {\n border-color: var(--ic-button-secondary-border-disabled);\n color: var(--ic-button-secondary-text-disabled);\n background: none;\n}\n\n:host(.ic-button-variant-secondary.ic-button-disabled) ::slotted(a),\n:host(.ic-button-variant-icon-secondary.ic-button-disabled) ::slotted(a) {\n background: none !important;\n}\n\n/* Secondary - non-transparent background */\n\n:host(.ic-button-variant-secondary.background) .button,\n:host(.ic-button-variant-icon-secondary.background) .button {\n background-color: var(--ic-button-secondary-background-non-transparent);\n}\n\n:host(.ic-button-variant-secondary.background) ::slotted(a),\n:host(.ic-button-variant-icon-secondary.background) ::slotted(a) {\n background-color: var(\n --ic-button-secondary-background-non-transparent\n ) !important;\n}\n\n:host(.ic-button-variant-secondary.background.ic-button-disabled) .button,\n:host(.ic-button-variant-icon-secondary.background.ic-button-disabled) .button {\n background-color: var(\n --ic-button-secondary-background-non-transparent-disabled\n );\n}\n\n:host(.ic-button-variant-secondary.background.ic-button-disabled) ::slotted(a),\n:host(.ic-button-variant-icon-secondary.background.ic-button-disabled)\n ::slotted(a) {\n background-color: var(\n --ic-button-secondary-background-non-transparent-disabled\n ) !important;\n}\n\n:host(.ic-button-variant-secondary.background) .button:hover,\n:host(.ic-button-variant-icon-secondary.background) .button:hover {\n background-color: var(--ic-button-secondary-background-non-transparent-hover);\n}\n\n:host(.ic-button-variant-secondary.background) ::slotted(a:hover),\n:host(.ic-button-variant-icon-secondary.background) ::slotted(a:hover) {\n background-color: var(\n --ic-button-secondary-background-non-transparent-hover\n ) !important;\n}\n\n:host(.ic-button-variant-secondary.background) .button:active,\n:host(.ic-button-variant-icon-secondary.background) .button:active {\n background-color: var(\n --ic-button-secondary-background-non-transparent-active\n );\n}\n\n:host(.ic-button-variant-secondary.background) ::slotted(a:active),\n:host(.ic-button-variant-icon-secondary.background) ::slotted(a:active) {\n background-color: var(\n --ic-button-secondary-background-non-transparent-active\n ) !important;\n}\n\n/* Secondary - monochrome */\n\n:host(.ic-button-variant-secondary.monochrome) .button,\n:host(.ic-button-variant-icon-secondary.monochrome) .button {\n background-color: none;\n border: var(--ic-border-width) solid\n var(--ic-button-secondary-border-monochrome);\n color: var(--ic-button-secondary-text-monochrome);\n}\n\n:host(.ic-button-variant-secondary.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon-secondary.monochrome) ::slotted(a) {\n background-color: none !important;\n}\n\n:host(.ic-button-variant-secondary.monochrome) .button:hover,\n:host(.ic-button-variant-icon-secondary.monochrome) .button:hover {\n background-color: var(--ic-button-secondary-background-hover-monochrome);\n border-color: var(--ic-button-secondary-border-hover-monochrome);\n color: var(--ic-button-secondary-text-hover-monochrome);\n}\n\n:host(.ic-button-variant-secondary.monochrome) ::slotted(a:hover),\n:host(.ic-button-variant-icon-secondary.monochrome) ::slotted(a:hover) {\n background-color: var(\n --ic-button-secondary-background-hover-monochrome\n ) !important;\n}\n\n:host(.ic-button-variant-secondary.monochrome) .button:active,\n:host(.ic-button-variant-icon-secondary.monochrome) .button:active {\n background-color: var(--ic-button-secondary-background-pressed-monochrome);\n border-color: var(--ic-button-secondary-border-pressed-monochrome);\n color: var(--ic-button-secondary-text-pressed-monochrome);\n}\n\n:host(.ic-button-variant-secondary.monochrome) ::slotted(a:active),\n:host(.ic-button-variant-icon-secondary.monochrome) ::slotted(a:active) {\n background-color: var(\n --ic-button-secondary-background-pressed-monochrome\n ) !important;\n}\n\n:host(.ic-button-variant-secondary.ic-button-loading.monochrome) .button,\n:host(.ic-button-variant-icon-secondary.ic-button-loading.monochrome) .button {\n background-color: var(\n --ic-button-secondary-background-pressed-monochrome\n ) !important;\n border-color: var(--ic-button-secondary-border-pressed-monochrome);\n color: var(--ic-button-secondary-text-pressed-monochrome);\n --button-loading-inner-color: var(\n --ic-button-secondary-text-pressed-monochrome\n );\n --button-loading-outer-color: var(\n --ic-button-secondary-background-pressed-monochrome\n );\n}\n\n:host(.ic-button-variant-secondary.ic-button-disabled.monochrome) .button,\n:host(.ic-button-variant-icon-secondary.ic-button-disabled.monochrome) .button {\n background: none;\n border-color: var(--ic-button-secondary-border-disabled-monochrome);\n color: var(--ic-button-secondary-text-disabled-monochrome);\n}\n\n:host(.ic-button-variant-secondary.ic-button-disabled.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon-secondary.ic-button-disabled.monochrome)\n ::slotted(a) {\n background: none !important;\n}\n\n/* Secondary - non-transparent background - monochrome */\n\n:host(.ic-button-variant-secondary.background.monochrome) .button,\n:host(.ic-button-variant-icon-secondary.background.monochrome) .button {\n background-color: var(\n --ic-button-secondary-background-non-transparent-monochrome\n );\n color: var(--ic-button-primary-text);\n}\n\n:host(.ic-button-variant-secondary.background.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon-secondary.background.monochrome) ::slotted(a) {\n background-color: var(\n --ic-button-secondary-background-non-transparent-monochrome\n ) !important;\n}\n\n:host(.ic-button-variant-secondary.background.monochrome.ic-button-disabled)\n .button,\n:host(.ic-button-variant-icon-secondary.background.monochrome.ic-button-disabled)\n .button {\n background-color: var(\n --ic-button-secondary-background-non-transparent-monochrome-disabled\n );\n color: var(--ic-button-secondary-text-disabled-monochrome);\n}\n\n:host(.ic-button-variant-secondary.background.monochrome.ic-button-disabled)\n ::slotted(a),\n:host(.ic-button-variant-icon-secondary.background.monochrome.ic-button-disabled)\n ::slotted(a) {\n background-color: var(\n --ic-button-secondary-background-non-transparent-monochrome-disabled\n ) !important;\n}\n\n:host(.ic-button-variant-secondary.background.monochrome) .button:hover,\n:host(.ic-button-variant-icon-secondary.background.monochrome) .button:hover {\n background-color: var(\n --ic-button-secondary-background-non-transparent-monochrome-hover\n );\n}\n\n:host(.ic-button-variant-secondary.background.monochrome) ::slotted(a:hover),\n:host(.ic-button-variant-icon-secondary.background.monochrome)\n ::slotted(a:hover) {\n background-color: var(\n --ic-button-secondary-background-non-transparent-monochrome-hover\n ) !important;\n}\n\n:host(.ic-button-variant-secondary.background.monochrome) .button:active,\n:host(.ic-button-variant-icon-secondary.background.monochrome) .button:active {\n background-color: var(\n --ic-button-secondary-background-non-transparent-monochrome-active\n );\n}\n\n:host(.ic-button-variant-secondary.background.monochrome) ::slotted(a:active),\n:host(.ic-button-variant-icon-secondary.background.monochrome)\n ::slotted(a:active) {\n background-color: var(\n --ic-button-secondary-background-non-transparent-monochrome-active\n ) !important;\n}\n\n/* Tertiary */\n\n:host(.ic-button-variant-tertiary) .button,\n:host(.ic-button-variant-icon-tertiary) .button,\n:host(.ic-button-variant-tertiary) ::slotted(a),\n:host(.ic-button-variant-icon-tertiary) ::slotted(a) {\n color: var(--ic-button-tertiary-text-active);\n}\n\n:host(.ic-button-variant-tertiary) .button:hover,\n:host(.ic-button-variant-icon-tertiary) .button:hover {\n background-color: var(--ic-button-tertiary-background-hover-active);\n color: var(--ic-button-tertiary-text-hover-active);\n}\n\n:host(.ic-button-variant-tertiary) ::slotted(a:hover),\n:host(.ic-button-variant-icon-tertiary) ::slotted(a:hover) {\n background-color: var(\n --ic-button-tertiary-background-hover-active\n ) !important;\n}\n\n:host(.ic-button-variant-tertiary) .button:active,\n:host(.ic-button-variant-tertiary.ic-button-loading) .button,\n:host(.ic-button-variant-icon-tertiary) .button:active,\n:host(.ic-button-variant-icon-tertiary.ic-button-loading) .button {\n background-color: var(--ic-button-tertiary-background-pressed-active);\n color: var(--ic-button-tertiary-text-pressed-active);\n --button-loading-inner-color: var(--ic-button-tertiary-text-pressed-active);\n --button-loading-outer-color: var(--ic-button-tertiary-background-pressed);\n}\n\n:host(.ic-button-variant-tertiary) ::slotted(a:active),\n:host(.ic-button-variant-icon-tertiary) ::slotted(a:active) {\n background-color: var(\n --ic-button-tertiary-background-pressed-active\n ) !important;\n}\n\n:host(.ic-button-variant-tertiary.ic-button-disabled) .button,\n:host(.ic-button-variant-icon-tertiary.ic-button-disabled) .button {\n color: var(--ic-button-tertiary-text-disabled);\n background: none;\n}\n\n:host(.ic-button-variant-tertiary.ic-button-disabled) ::slotted(a),\n:host(.ic-button-variant-icon-tertiary.ic-button-disabled) ::slotted(a) {\n background: none !important;\n}\n\n/* Tertiary - monochrome */\n\n:host(.ic-button-variant-tertiary.monochrome) .button,\n:host(.ic-button-variant-tertiary.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon-tertiary.monochrome) .button,\n:host(.ic-button-variant-icon-tertiary.monochrome) ::slotted(a) {\n color: var(--ic-button-tertiary-text-monochrome);\n}\n\n:host(.ic-button-variant-tertiary.monochrome) .button:hover,\n:host(.ic-button-variant-icon-tertiary.monochrome) .button:hover {\n background-color: var(--ic-button-tertiary-background-hover-monochrome);\n color: var(--ic-button-tertiary-text-hover-monochrome);\n}\n\n:host(.ic-button-variant-tertiary.monochrome) ::slotted(a:hover),\n:host(.ic-button-variant-icon-tertiary.monochrome) ::slotted(a:hover) {\n background-color: var(\n --ic-button-tertiary-background-hover-monochrome\n ) !important;\n}\n\n:host(.ic-button-variant-tertiary.monochrome) .button:active,\n:host(.ic-button-variant-tertiary.ic-button-loading.monochrome) .button,\n:host(.ic-button-variant-icon-tertiary.monochrome) .button:active,\n:host(.ic-button-variant-icon-tertiary.ic-button-loading.monochrome) .button {\n background-color: var(--ic-button-tertiary-background-pressed-monochrome);\n color: var(--ic-button-tertiary-text-pressed-monochrome);\n --button-loading-inner-color: var(\n --ic-button-tertiary-text-pressed-monochrome\n );\n --button-loading-outer-color: var(\n --ic-button-tertiary-background-pressed-monochrome\n );\n}\n\n:host(.ic-button-variant-tertiary.monochrome) ::slotted(a:active),\n:host(.ic-button-variant-icon-tertiary.monochrome) ::slotted(a:active) {\n background-color: var(\n --ic-button-tertiary-background-pressed-monochrome\n ) !important;\n}\n\n:host(.ic-button-variant-tertiary.ic-button-disabled.monochrome) .button,\n:host(.ic-button-variant-icon-tertiary.ic-button-disabled.monochrome) .button {\n color: var(--ic-button-tertiary-text-disabled-monochrome);\n background: none;\n}\n\n:host(.ic-button-variant-tertiary.ic-button-disabled.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon-tertiary.ic-button-disabled.monochrome)\n ::slotted(a) {\n background: none !important;\n}\n\n/* Destructive */\n\n:host(.ic-button-variant-destructive) .button,\n:host(.ic-button-variant-icon-destructive) .button {\n color: var(--ic-button-destructive-text);\n background-color: var(--ic-button-destructive-background);\n text-transform: uppercase;\n}\n\n:host(.ic-button-variant-destructive) ::slotted(a),\n:host(.ic-button-variant-icon-destructive) ::slotted(a) {\n color: var(--ic-button-destructive-text) !important;\n background-color: var(--ic-button-destructive-background) !important;\n text-transform: uppercase !important;\n}\n\n:host(.ic-button-variant-destructive) .button:hover,\n:host(.ic-button-variant-icon-destructive) .button:hover {\n background-color: var(--ic-button-destructive-background-hover);\n}\n\n:host(.ic-button-variant-destructive) ::slotted(a:hover),\n:host(.ic-button-variant-icon-destructive) ::slotted(a:hover) {\n background-color: var(--ic-button-destructive-background-hover) !important;\n}\n\n:host(.ic-button-variant-destructive) .button:active,\n:host(.ic-button-variant-destructive.ic-button-loading) .button,\n:host(.ic-button-variant-icon-destructive.ic-button-loading) .button {\n color: var(--ic-button-primary-text);\n background-color: var(--ic-button-destructive-background-pressed);\n --button-loading-inner-color: var(--ic-button-primary-text);\n --button-loading-outer-color: var(--ic-button-destructive-background-pressed);\n}\n\n:host(.ic-button-variant-destructive) ::slotted(a:active),\n:host(.ic-button-variant-icon-destructive) ::slotted(a:active) {\n background-color: var(--ic-button-destructive-background-pressed) !important;\n}\n\n:host(.ic-button-variant-destructive.ic-button-disabled) .button,\n:host(.ic-button-variant-icon-destructive.ic-button-disabled) .button {\n background-color: var(--ic-button-destructive-background-disabled);\n color: var(--ic-button-destructive-text-disabled);\n}\n\n:host(.ic-button-variant-destructive.ic-button-disabled) ::slotted(a),\n:host(.ic-button-variant-icon-destructive.ic-button-disabled) ::slotted(a) {\n background-color: var(--ic-button-destructive-background-disabled) !important;\n}\n\n/***********************\n Icon Variants\n ***********************/\n\n/* Icon */\n\n:host(.ic-button-variant-icon) .button {\n color: var(--ic-button-icon-color);\n background-color: var(--ic-button-icon-color-background);\n min-width: 0;\n gap: var(--ic-space-xs);\n margin: var(--ic-space-1px) 0;\n}\n\n:host(.ic-button-variant-icon) ::slotted(a) {\n color: var(--ic-button-icon-color);\n background-color: var(--ic-button-icon-color-background) !important;\n min-width: 0;\n gap: var(--ic-space-xs);\n margin: var(--ic-space-1px) 0;\n}\n\n:host(.ic-button-variant-icon) .icon-container {\n width: var(--ic-space-lg) !important;\n height: var(--ic-space-lg) !important;\n}\n\n:host(.ic-button-variant-icon) .button:hover {\n color: var(--ic-button-icon-color-hover);\n background-color: var(--ic-button-icon-color-background-hover);\n}\n\n:host(.ic-button-variant-icon) ::slotted(a:hover) {\n color: var(--ic-button-icon-color-hover);\n background-color: var(--ic-button-icon-color-background-hover) !important;\n}\n\n:host(.ic-button-variant-icon) .button:active:not(:focus),\n:host(.ic-button-variant-icon.ic-button-loading) .button {\n color: var(--ic-button-icon-color-active);\n background-color: var(--ic-button-icon-color-background-acti);\n}\n\n:host(.ic-button-variant-icon) ::slotted(a:active:not(:focus)) {\n color: var(--ic-button-icon-color-active);\n background-color: var(--ic-button-icon-color-background-acti) !important;\n}\n\n:host(.ic-button-variant-icon.ic-button-disabled) .button {\n color: var(--ic-architectural-300);\n background: none;\n}\n\n:host(.ic-button-variant-icon.ic-button-disabled) ::slotted(a) {\n color: var(--ic-architectural-300);\n background: none !important;\n}\n\n/* Icon-primary */\n\n:host(.ic-button-variant-icon-primary) .button,\n:host(.ic-button-variant-icon-primary) ::slotted(a) {\n min-width: 0;\n gap: var(--ic-space-xs);\n margin: var(--ic-space-1px) 0;\n}\n\n:host(.ic-button-variant-icon-primary) .icon-container {\n width: var(--ic-space-lg) !important;\n height: var(--ic-space-lg) !important;\n}\n\n:host(.ic-button-variant-icon.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon.monochrome) ::slotted(svg) {\n color: var(--ic-button-icon-monochrome);\n}\n\n/* Icon-secondary */\n\n:host(.ic-button-variant-icon-secondary) .button,\n:host(.ic-button-variant-icon-secondary) ::slotted(a) {\n min-width: 0;\n gap: var(--ic-space-xs);\n margin: var(--ic-space-1px) 0;\n}\n\n:host(.ic-button-variant-icon-secondary) .icon-container {\n width: var(--ic-space-lg) !important;\n height: var(--ic-space-lg) !important;\n}\n\n/* Icon-tertiary */\n\n:host(.ic-button-variant-icon-tertiary) .button,\n:host(.ic-button-variant-icon-tertiary) ::slotted(a) {\n min-width: 0;\n gap: var(--ic-space-xs);\n margin: var(--ic-space-1px) 0;\n}\n\n:host(.ic-button-variant-icon-tertiary) .icon-container {\n width: var(--ic-space-lg) !important;\n height: var(--ic-space-lg) !important;\n}\n\n/* Icon-destructive */\n\n:host(.ic-button-variant-icon-destructive) .button,\n:host(.ic-button-variant-icon-destructive) ::slotted(a) {\n min-width: 0;\n gap: var(--ic-space-xs);\n margin: var(--ic-space-1px) 0;\n}\n\n:host(.ic-button-variant-icon-destructive) .icon-container {\n width: var(--ic-space-lg) !important;\n height: var(--ic-space-lg) !important;\n}\n\n/* Sizing */\n\n:host(.ic-button-size-medium) .button {\n height: var(--height, 2.5rem);\n padding: var(--ic-space-xs) var(--ic-space-md);\n}\n\n:host(.ic-button-size-medium) ::slotted(a) {\n height: var(--height, 2.5rem) !important;\n padding: var(--ic-space-xs) var(--ic-space-md) !important;\n}\n\n:host(.ic-button-size-small) .button {\n height: var(--height, var(--ic-space-xl));\n padding: var(--ic-space-xxs) var(--ic-space-md);\n}\n\n:host(.ic-button-size-small) ::slotted(a) {\n height: var(--height, var(--ic-space-xl)) !important;\n padding: var(--ic-space-xxs) var(--ic-space-md) !important;\n}\n\n:host(.ic-button-size-large) .button {\n height: var(--height, var(--ic-space-xxl));\n padding: var(--ic-space-sm) var(--ic-space-md);\n}\n\n:host(.ic-button-size-large) ::slotted(a) {\n height: var(--height, var(--ic-space-xxl)) !important;\n padding: var(--ic-space-sm) var(--ic-space-md) !important;\n}\n\n:host(.ic-button-size-medium.ic-button-variant-icon) .button,\n:host(.ic-button-size-medium.ic-button-variant-icon-primary) .button,\n:host(.ic-button-size-medium.ic-button-variant-icon-secondary) .button,\n:host(.ic-button-size-medium.ic-button-variant-icon-tertiary) .button,\n:host(.ic-button-size-medium.ic-button-variant-icon-destructive) .button {\n height: var(--height, var(--ic-space-xl));\n width: var(--ic-space-xl);\n padding: 0.375rem;\n}\n\n:host(.ic-button-size-medium.ic-button-variant-icon-primary) ::slotted(a),\n:host(.ic-button-size-medium.ic-button-variant-icon-secondary) ::slotted(a),\n:host(.ic-button-size-medium.ic-button-variant-icon-tertiary) ::slotted(a),\n:host(.ic-button-size-medium.ic-button-variant-icon-destructive) ::slotted(a) {\n height: var(--height, var(--ic-space-xl)) !important;\n width: var(--ic-space-xl) !important;\n padding: 0.375rem !important;\n}\n\n:host(.ic-button-size-small.ic-button-variant-icon) .button,\n:host(.ic-button-size-small.ic-button-variant-icon-primary) .button,\n:host(.ic-button-size-small.ic-button-variant-icon-secondary) .button,\n:host(.ic-button-size-small.ic-button-variant-icon-tertiary) .button,\n:host(.ic-button-size-small.ic-button-variant-icon-destructive) .button {\n height: var(--height, var(--ic-space-lg));\n width: var(--ic-space-lg);\n padding: var(--ic-space-xxs);\n}\n\n:host(.ic-button-size-small.ic-button-variant-icon-primary) ::slotted(a),\n:host(.ic-button-size-small.ic-button-variant-icon-secondary) ::slotted(a),\n:host(.ic-button-size-small.ic-button-variant-icon-tertiary) ::slotted(a),\n:host(.ic-button-size-small.ic-button-variant-icon-destructive) ::slotted(a),\n:host(.ic-button-size-small.ic-button-variant-icon) ::slotted(a) {\n height: var(--height, var(--ic-space-lg)) !important;\n width: var(--ic-space-lg) !important;\n padding: var(--ic-space-xxs) !important;\n}\n\n:host(.ic-button-size-large.ic-button-variant-icon) .button,\n:host(.ic-button-size-large.ic-button-variant-icon-primary) .button,\n:host(.ic-button-size-large.ic-button-variant-icon-secondary) .button,\n:host(.ic-button-size-large.ic-button-variant-icon-tertiary) .button,\n:host(.ic-button-size-large.ic-button-variant-icon-destructive) .button {\n height: var(--height, 2.5rem);\n width: 2.5rem;\n padding: var(--ic-space-xs);\n}\n\n:host(.ic-button-size-large.ic-button-variant-icon-destructive) .button,\n:host(.ic-button-size-large.ic-button-variant-icon-primary) ::slotted(a),\n:host(.ic-button-size-large.ic-button-variant-icon-secondary) ::slotted(a),\n:host(.ic-button-size-large.ic-button-variant-icon-tertiary) ::slotted(a),\n:host(.ic-button-size-large.ic-button-variant-icon-destructive) ::slotted(a),\n:host(.ic-button-size-large.ic-button-variant-icon) ::slotted(a) {\n height: var(--height, 2.5rem) !important;\n width: 2.5rem !important;\n padding: var(--ic-space-xs) !important;\n}\n\n/* Width */\n:host(.ic-button-full-width),\n:host(.ic-button-full-width) .button {\n width: 100%;\n}\n\n:host(.ic-button-full-width) ::slotted(a) {\n width: 100% !important;\n}\n\n/* Loading */\n\ndiv.loading-container {\n position: relative;\n align-items: center;\n width: 100%;\n}\n\nic-loading-indicator {\n --inner-color: var(--button-loading-inner-color);\n --outer-color: var(--button-loading-outer-color), transparent;\n}\n\n@keyframes loading-animation {\n 0% {\n width: 0%;\n left: 0%;\n }\n\n 25% {\n width: 0%;\n left: 0%;\n opacity: 0;\n }\n\n 50% {\n width: 100%;\n left: 0%;\n opacity: 1;\n }\n\n 75% {\n width: 0%;\n left: 100%;\n }\n\n 100% {\n width: 0%;\n left: 100%;\n opacity: 0;\n }\n}\n\n/* Icons */\n\ndiv.icon-container {\n box-sizing: border-box;\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n display: flex;\n justify-content: center;\n align-items: center;\n margin-right: var(--ic-space-xs);\n}\n\ndiv.right-icon {\n margin-right: auto;\n margin-left: var(--ic-space-xs);\n}\n\n:host(.ic-button-full-width) .right-icon {\n margin-right: var(--ic-space-xs);\n}\n\n::slotted(:not(ic-badge)) {\n width: var(--icon-width) !important;\n height: var(--icon-height) !important;\n fill: currentcolor !important;\n pointer-events: none;\n}\n\n:host(.ic-button-variant-icon) .button .icon-container {\n margin: 0;\n pointer-events: none;\n}\n\n/** SEARCH **/\n\n:host(.search-submit-button) ::slotted(svg) {\n --icon-height: 1.25rem;\n --icon-width: 1.25rem;\n\n color: var(--ic-atoms-input-search-button);\n}\n\n:host(.search-submit-button-small) ::slotted(svg) {\n --icon-height: 1rem;\n --icon-width: 1rem;\n\n color: var(--ic-atoms-input-search-button);\n}\n\n:host(.search-submit-button) .button:focus {\n box-shadow: none;\n}\n\n:host(.search-submit-button) .button:not(:active):focus {\n box-shadow: none;\n background-color: var(--ic-action-default-bg-hover);\n}\n\n:host(.search-submit-button) .button:not(:active):focus ::slotted(svg) {\n color: var(--ic-button-primary-text);\n}\n\n:host(.search-submit-button) {\n display: flex;\n align-items: center;\n margin: 0 var(--ic-space-xxs);\n}\n\n/** CLEAR & DISMISS **/\n\n:host(.ic-button-variant-icon) .button,\n:host(.ic-button-variant-icon) ::slotted(a) {\n background-color: inherit;\n min-width: 0;\n gap: var(--ic-space-xs);\n margin: var(--ic-space-1px) 0;\n}\n\n:host(.ic-button-variant-icon) .icon-container {\n width: var(--ic-space-lg) !important;\n height: var(--ic-space-lg) !important;\n}\n\n:host(.button-variant-icon) .button,\n:host(.button-variant-icon) ::slotted(a) {\n color: var(--button-default);\n min-width: 0;\n gap: var(--ic-space-xs);\n margin: var(--ic-space-1px) 0;\n}\n\n:host(.button-variant-icon) .icon-container {\n width: var(--ic-space-lg) !important;\n height: var(--ic-space-lg) !important;\n}\n\n:host(.button-variant-icon) .button:hover,\n:host(.button-variant-icon) ::slotted(a:hover) {\n background-color: var(--button-default-background-hover);\n color: var(--button-default-hover);\n}\n\n:host(.button-variant-icon) .button:active:not(:focus),\n:host(.button-variant-icon) ::slotted(a:active:not(:focus)),\n:host(.button-variant-icon.loading) .button {\n background-color: var(--button-default-background-active);\n color: var(--button-default-active);\n}\n\n:host(.button-variant-icon.disabled) .button,\n:host(.button-variant-icon.disabled) ::slotted(a) {\n color: var(--ic-architectural-300);\n background: none;\n}\n\n:host(.clear-button) {\n margin: 0 var(--ic-space-xxs);\n}\n\n:host(.clear-button) .button:focus,\n:host(.calendar-button) .button:focus {\n box-shadow: none;\n}\n\n:host(.dismiss-icon) .button,\n:host(.clear-button) .button,\n:host(.dismiss-icon) ::slotted(a),\n:host(.clear-button) ::slotted(a) {\n background-color: inherit;\n color: var(--ic-atoms-input-clear-button);\n}\n\n:host(.dismiss-icon) .button:hover,\n:host(.clear-button) .button:hover,\n:host(.dismiss-icon) ::slotted(a:hover),\n:host(.clear-button) ::slotted(a:hover) {\n color: var(--ic-atoms-input-clear-button);\n}\n\n:host(.dismiss-icon),\n:host(.clear-button) {\n color: var(--ic-atoms-input-clear-button);\n margin: 0 var(--ic-space-xxs);\n}\n\n:host(.dismiss-icon) .button:focus,\n:host(.clear-button) .button:focus,\n:host(.calendar-button) .button:focus {\n box-shadow: none;\n}\n\n:host(.dismiss-icon) .button:not(:active):focus ::slotted(svg),\n:host(.clear-button) .button:not(:active):focus ::slotted(svg) {\n background-color: var(--ic-atoms-input-clear-button-focus-inner);\n color: var(--ic-button-primary-text);\n /* border: var(--ic-atoms-input-clear-button-focus-outer); */\n}\n\n:host(.menu-close-button) ::slotted(svg) {\n --icon-height: 0.875rem;\n --icon-width: 0.875rem;\n color: var(--ic-top-navigation-icon-active);\n}\n\n:host(.popout-menu-button) .button {\n height: var(--height);\n justify-content: left;\n border-radius: 0;\n white-space: pre-line;\n text-align: start;\n}\n\n:host(.popout-menu-button) div.icon-container {\n flex: none;\n}\n\n:host(.popout-menu-button) .button:focus {\n box-shadow: var(--ic-border-focus-inset);\n border-radius: var(--ic-border-radius-inset);\n}\n\n.ic-button-describedby {\n display: none;\n}\n\n:host .ic-tooltip {\n display: block;\n}\n\n/** Dropdown **/\n\n:host .arrow-dropdown {\n margin-top: auto;\n}\n\n:host .dropdown-expanded {\n transform: rotate(180deg);\n margin-bottom: var(--ic-space-xxxs);\n}\n\n:host(.dropdown-no-icon) .button {\n padding-right: var(--ic-space-xs);\n}\n\n/** Slotted router item **/\n\nslot[name=\"router-item\"]::slotted(a) {\n pointer-events: all;\n}\n\n::slotted(a) {\n font-size: 0.875rem !important;\n border: none !important;\n vertical-align: middle !important;\n}\n\n/** menu button on top navigation\\side navigation \n * uses secondary monochrome tokens which are duplicated here to avoid multiple copies in each component\n */\n\n:host(#menu-button.ic-theme-light) {\n --ic-button-secondary-background-hover-monochrome: var(\n --ic-action-dark-bg-hover\n );\n --ic-button-secondary-background-pressed-monochrome: var(\n --ic-action-dark-bg-pressed\n );\n --ic-button-secondary-text-hover-monochrome: var(--ic-action-dark-hover);\n --ic-button-secondary-text-pressed-monochrome: var(--ic-action-dark-pressed);\n --ic-button-secondary-border-hover-monochrome: var(\n --ic-color-border-neutral-hover-dark\n );\n --ic-button-secondary-border-pressed-monochrome: var(\n --ic-color-border-neutral-pressed-dark\n );\n}\n\n:host(#menu-button.ic-theme-dark) {\n --ic-button-secondary-background-hover-monochrome: var(\n --ic-action-light-bg-hover\n );\n --ic-button-secondary-background-pressed-monochrome: var(\n --ic-action-light-bg-pressed\n );\n --ic-button-secondary-text-hover-monochrome: var(--ic-action-light-hover);\n --ic-button-secondary-text-pressed-monochrome: var(--ic-action-light-pressed);\n --ic-button-secondary-border-hover-monochrome: var(\n --ic-color-border-neutral-hover-light\n );\n --ic-button-secondary-border-pressed-monochrome: var(\n --ic-color-border-neutral-default\n );\n}\n\n/** High Contrast **/\n@media (forced-colors: active) {\n .button,\n ::slotted(a) {\n border: 0.125rem solid transparent !important;\n }\n .search-submit-button ::slotted(a),\n .ic-button-variant-icon ::slotted(a),\n .clear-button ::slotted(a),\n .search-submit-button ::slotted(svg),\n .ic-button-variant-icon ::slotted(svg),\n .clear-button ::slotted(svg) {\n color: HighlightText;\n }\n\n :host(.ic-button-variant-icon.monochrome) ::slotted(a),\n :host(.ic-button-variant-icon.monochrome) ::slotted(svg) {\n color: white;\n }\n\n :host(.dismiss-icon) .button:not(:active):focus ::slotted(svg),\n :host(.clear-button) .button:not(:active):focus ::slotted(svg) {\n color: white !important;\n background-color: inherit;\n }\n}\n\n/** Pagination **/\n\n:host(.flip) ::slotted(svg) {\n transform: scaleX(-1);\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Listen,\n Method,\n Prop,\n State,\n forceUpdate,\n h,\n Watch,\n} from \"@stencil/core\";\n\nimport {\n getBrandFromContext,\n inheritAttributes,\n isSlotUsed,\n removeDisabledFalse,\n renderFileHiddenInput,\n} from \"../../utils/helpers\";\nimport { IC_INHERITED_ARIA } from \"../../utils/constants\";\nimport { IcButtonTypes, IcButtonVariants } from \"./ic-button.types\";\nimport {\n IcSizes,\n IcBrand,\n IcBrandForeground,\n IcBrandForegroundEnum,\n IcThemeMode,\n IcButtonTooltipPlacement,\n} from \"../../utils/types\";\nimport arrowDropdown from \"../../assets/arrow-dropdown.svg\";\n\nlet buttonIds = 0;\n\n/**\n * @slot left-icon - Content will be placed to the left of the button label.\n * @slot right-icon - Content will be placed to the right of the button label.\n * @slot top-icon - Content will be placed above the button label.\n * @slot badge - Badge component overlaying the top right of the button.\n * @slot router-item - Handle routing by nesting your routes in this slot. Setting loading to true will have no impact on this slot.\n */\n@Component({\n tag: \"ic-button\",\n styleUrl: \"ic-button.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class Button {\n private buttonEl: HTMLElement;\n private buttonIdNum = buttonIds++;\n private hasTooltip: boolean = false;\n private id: string;\n private inheritedAttributes: { [k: string]: string } = {};\n private describedbyEl: HTMLElement = null;\n private describedById: string = null;\n private mutationObserver: MutationObserver = null;\n private hostMutationObserver: MutationObserver = null;\n private routerSlot: HTMLElement;\n\n @Element() el: HTMLIcButtonElement;\n\n @State() ariaLabel: string = null;\n @State() describedByContent: string = null;\n @State() title: string = null;\n\n /**\n * If `fileUpload` is set to `true`, this is the accepted list of file types.\n */\n @Prop() accept?: string = \"*\";\n\n /**\n * @internal Used to identify any related child component\n */\n @Prop() ariaControlsId: string | boolean;\n\n /**\n * @internal Used to identify any related child component\n */\n @Prop() ariaOwnsId: string | boolean;\n\n /**\n * If `true`, the button will be in disabled state.\n */\n @Prop() disabled?: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * If `true`, the ic-tooltip which is shown for icon variant will be disabled. Title or aria-label must be set if this prop is not applied.\n */\n @Prop() disableTooltip?: 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 * If `true`, the button will show a dropdown icon.\n */\n @Prop() dropdown?: boolean = false;\n\n /**\n * If `true`, the aria-expanded value will be set to true. This is only applied if the dropdown prop is also true.\n */\n @Prop({ mutable: true, reflect: true }) dropdownExpanded?: boolean = false;\n\n /**\n * If `true`, when the button is clicked the native file explorer will be launched.\n */\n @Prop() fileUpload?: boolean = false;\n\n /**\n * The name of the control for the file input, which is submitted with the form data.\n */\n @Prop() fileInputName: string = `ic-button-file-upload-input-${buttonIds++}`;\n\n /**\n * The <form> element to associate the button with.\n */\n @Prop() form?: string;\n\n /**\n * The URL that processes the information submitted by the button. It overrides the action attribute of the button's form owner. Does nothing if there is no form owner.\n */\n @Prop() formaction?: string;\n\n /**\n * The way the submitted form data is encoded.\n */\n @Prop() formenctype?: string;\n\n /**\n * The HTTP method used to submit the form.\n */\n @Prop() formmethod?: string;\n\n /**\n * If `true`, the form will not be validated when submitted.\n */\n @Prop() formnovalidate?: boolean;\n\n /**\n * The place to display the response from submitting the form. It overrides the target attribute of the button's form owner.\n */\n @Prop() formtarget?: string;\n\n /**\n * If `true`, the button will fill the width of the container.\n */\n @Prop() fullWidth?: boolean = false;\n\n /**\n * The URL that the link points to. This will render the button as an \"a\" tag.\n */\n @Prop() href?: string;\n\n /**\n * The human language of the linked URL.\n */\n @Prop() hreflang?: string;\n\n /**\n * If `true`, the button will be in loading state.\n */\n @Prop() loading?: boolean = false;\n\n /**\n * If `true`, the button will display as monochromatic in either `light` or `dark` theme.\n */\n @Prop({ mutable: true }) monochrome?: boolean = false;\n\n /**\n * If `fileUpload` is set to `true`, this boolean determines whether multiple files are accepted.\n */\n @Prop() multiple?: boolean = false;\n\n /**\n * How much of the referrer to send when following the link.\n */\n @Prop() referrerpolicy?: ReferrerPolicy;\n\n /**\n * The relationship of the linked URL as space-separated link types.\n */\n @Prop() rel?: string;\n\n /**\n * The list of the files that have been selected by a user.\n */\n @Prop() selectedFiles: FileList;\n\n /**\n * The size of the button to be displayed.\n */\n @Prop() size?: IcSizes = \"medium\";\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({ mutable: true }) theme?: IcThemeMode = \"inherit\";\n\n /**\n * The position of the tooltip in relation to the button.\n */\n @Prop() tooltipPlacement?: IcButtonTooltipPlacement = \"bottom\";\n\n /**\n * If `true`, the secondary variant of button will have a transparent background rather than white.\n */\n @Prop() transparentBackground?: boolean = true;\n\n /**\n * The type of the button.\n */\n @Prop() type?: IcButtonTypes = \"button\";\n\n /**\n * The variant of the button to be displayed.\n */\n @Prop() variant?: IcButtonVariants = \"primary\";\n\n /**\n * Emitted when button has blur\n */\n @Event() icBlur!: EventEmitter<void>;\n\n /**\n * If `fileUpload` is set to `true`, this will be emitted when a file is selected in the native explorer.\n */\n @Event() icFileSelection!: EventEmitter<FileList>;\n\n /**\n * Emitted when button has focus\n */\n @Event() icFocus!: EventEmitter<void>;\n\n disconnectedCallback(): void {\n if (this.mutationObserver !== null && this.mutationObserver !== undefined) {\n this.mutationObserver.disconnect();\n }\n if (\n this.hostMutationObserver !== null &&\n this.hostMutationObserver !== undefined\n ) {\n this.hostMutationObserver.disconnect();\n }\n }\n\n componentWillUpdate(): void {\n if (this.loading) {\n this.el.style.setProperty(\n \"--min-width\",\n `${this.el.getBoundingClientRect().width}px`\n );\n }\n this.setHasTooltip();\n }\n\n componentWillLoad(): void {\n const {\n title,\n \"aria-label\": ariaLabel,\n ...restInheritedAttributes\n } = inheritAttributes(this.el, [...IC_INHERITED_ARIA, \"title\"]);\n\n this.title = title;\n this.ariaLabel = ariaLabel;\n this.inheritedAttributes = restInheritedAttributes;\n\n removeDisabledFalse(this.disabled, this.el);\n\n this.el.setAttribute(\"exportparts\", \"button\");\n\n this.id = this.el.id || null;\n this.setHasTooltip();\n\n if (!this.hasTooltip) {\n const describedById = this.inheritedAttributes[\"aria-describedby\"];\n if (describedById !== undefined) {\n this.describedById = describedById;\n const el = this.el.parentElement.querySelector<HTMLElement>(\n `#${describedById}`\n );\n if (el) {\n this.describedByContent = el.innerText;\n this.describedbyEl = el;\n }\n }\n }\n }\n\n componentDidLoad(): void {\n this.updateTheme();\n\n if (typeof MutationObserver !== \"undefined\") {\n if (this.describedById) {\n this.mutationObserver = new MutationObserver(this.mutationCallback);\n this.mutationObserver.observe(this.describedbyEl, {\n characterData: true,\n childList: true,\n subtree: true,\n });\n }\n\n this.hostMutationObserver = new MutationObserver(\n this.hostMutationCallback\n );\n this.hostMutationObserver.observe(this.el, {\n attributes: true,\n });\n }\n }\n\n componentWillRender(): void {\n const iconEl = this.hasIconSlot(\"left\")\n ? this.el.querySelector(`[slot=\"left-icon\"]`)\n : this.hasIconSlot(\"right\")\n ? this.el.querySelector(`[slot=\"right-icon\"]`)\n : null;\n iconEl?.setAttribute(\"viewBox\", \"0 0 24 24\");\n }\n\n @Listen(\"click\", { capture: true })\n handleHostClick(event: Event): void {\n if (!this.hasRouterSlot()) {\n if (this.fileUpload) {\n renderFileHiddenInput(\n this.icFileSelection,\n this.el,\n this.multiple,\n this.fileInputName,\n this.selectedFiles,\n this.disabled,\n this.accept\n );\n }\n if (this.disabled || this.loading) {\n event.stopImmediatePropagation();\n }\n if (this.dropdown) {\n this.dropdownExpanded = !this.dropdownExpanded;\n }\n }\n }\n\n @Listen(\"brandChange\", { target: \"document\" })\n brandChangeHandler({ detail }: CustomEvent<IcBrand>): void {\n this.updateTheme(detail.mode);\n }\n\n /**\n * Sets focus on the native `button`.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.buttonEl?.focus();\n }\n\n private async closeButtonTooltip(ev: KeyboardEvent): Promise<void> {\n const tooltip = this.el.shadowRoot.querySelector(\"ic-tooltip\");\n if (await tooltip.isTooltipVisible()) {\n tooltip.displayTooltip(false);\n ev.preventDefault();\n ev.stopImmediatePropagation();\n }\n }\n\n private hasIconSlot(position?: \"left\" | \"right\" | \"top\"): boolean {\n const selectorPrefix = position ? `${position}-` : \"\";\n return this.el.querySelector(`[slot=\"${selectorPrefix}icon\"]`) !== null;\n }\n\n private hasRouterSlot(): boolean {\n this.routerSlot = this.el.querySelector('[slot=\"router-item\"]');\n if (this.routerSlot) {\n this.routerSlot.ariaLabel = this.routerSlot.textContent;\n }\n return !!this.routerSlot;\n }\n\n private handleClick = (): void => {\n if (\n (this.el.type === \"submit\" || this.el.type === \"reset\") &&\n !this.hasRouterSlot() &&\n !!this.el.closest(\"FORM\")\n ) {\n const hiddenFormButton = document.createElement(\"button\");\n\n hiddenFormButton.setAttribute(\"type\", this.el.type);\n hiddenFormButton.style.display = \"none\";\n\n this.el.closest(\"FORM\").appendChild(hiddenFormButton);\n\n hiddenFormButton.click();\n hiddenFormButton.remove();\n }\n };\n\n private handleKeyDown = (ev: KeyboardEvent): void => {\n if (ev.key === \"Escape\" && this.hasTooltip) {\n this.closeButtonTooltip(ev);\n }\n };\n\n private onFocus = () => {\n this.icFocus.emit();\n };\n\n private onBlur = () => {\n this.icBlur.emit();\n };\n\n private updateTheme(mode: IcBrandForeground = null): void {\n const foregroundColor = getBrandFromContext(this.el, mode);\n if (foregroundColor !== IcBrandForegroundEnum.Default) {\n this.theme =\n foregroundColor === IcBrandForegroundEnum.Light\n ? IcBrandForegroundEnum.Dark\n : IcBrandForegroundEnum.Light;\n this.monochrome = true;\n }\n }\n\n // triggered when text content of sibling element in light DOM changes\n private mutationCallback = (): void => {\n this.describedByContent = this.describedbyEl.innerText;\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 const attribute = this.el.getAttribute(attributeName);\n if (attributeName === \"title\") this.title = attribute;\n else if (attributeName === \"aria-label\") this.ariaLabel = attribute;\n\n if (IC_INHERITED_ARIA.includes(attributeName)) {\n this.inheritedAttributes[attributeName] = attribute;\n forceComponentUpdate = true;\n }\n });\n if (forceComponentUpdate) {\n forceUpdate(this);\n }\n };\n\n private setHasTooltip = (): void => {\n this.hasTooltip =\n !this.disableTooltip && (!!this.title || this.isIconVariant());\n };\n\n private isIconVariant = (): boolean => {\n return this.variant.startsWith(\"icon\");\n };\n\n render() {\n const TagType = (this.href && \"a\") || \"button\";\n const { title, ariaLabel, inheritedAttributes } = this;\n const buttonAttrs =\n TagType === \"button\"\n ? {\n type: this.type,\n disabled: this.disabled,\n form: this.form,\n formaction: this.formaction,\n formenctype: this.formenctype,\n formmethod: this.formmethod,\n formnovalidate: this.formnovalidate,\n formtarget: this.formtarget,\n }\n : {\n download: this.download !== false ? this.download : null,\n href: this.href,\n rel: this.rel,\n target: this.target,\n referrerpolicy: this.referrerpolicy,\n hreflang: this.hreflang,\n };\n\n let describedby: string = null;\n let buttonId: string = null;\n if (this.hasTooltip) {\n buttonId =\n this.id !== null\n ? `ic-button-with-tooltip-${this.id}`\n : `ic-button-with-tooltip-${this.buttonIdNum}`;\n describedby =\n this.variant === \"icon\" && !!ariaLabel\n ? null\n : `ic-tooltip-${buttonId}`;\n } else {\n describedby = this.describedById;\n }\n\n const ButtonContent = () => {\n return (\n <TagType\n class=\"button\"\n aria-disabled={this.loading || this.disabled ? \"true\" : null}\n aria-label={this.loading ? \"Loading\" : ariaLabel}\n aria-expanded={this.dropdown && `${this.dropdownExpanded}`}\n {...buttonAttrs}\n {...inheritedAttributes}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n ref={(el) => (this.buttonEl = el)}\n aria-describedby={describedby}\n part=\"button\"\n >\n {this.hasIconSlot(\"left\") && !this.loading && (\n <div class=\"icon-container\">\n <slot name=\"left-icon\" />\n </div>\n )}\n {this.hasIconSlot(\"top\") &&\n !this.hasIconSlot(\"left\") &&\n !this.hasIconSlot(\"right\") &&\n !this.loading && (\n <div class=\"icon-container\">\n <slot name=\"top-icon\" />\n </div>\n )}\n {this.loading ? (\n <div class=\"loading-container\">\n <ic-loading-indicator\n type=\"linear\"\n monochrome={this.monochrome}\n theme={this.theme}\n ></ic-loading-indicator>\n </div>\n ) : (\n <slot />\n )}\n {this.hasIconSlot(\"right\") && !this.loading && !this.dropdown && (\n <div class={{ \"icon-container\": true, \"right-icon\": true }}>\n <slot name=\"right-icon\" />\n </div>\n )}\n {this.dropdown &&\n !this.loading &&\n this.variant !== \"icon\" &&\n this.variant !== \"destructive\" && (\n <span\n class={{\n [\"arrow-dropdown\"]: !this.dropdownExpanded,\n [\"dropdown-expanded\"]: this.dropdownExpanded,\n }}\n innerHTML={arrowDropdown}\n />\n )}\n </TagType>\n );\n };\n\n return (\n <Host\n class={{\n [`ic-theme-${this.theme}`]: this.theme !== \"inherit\",\n [`monochrome`]: this.monochrome,\n [\"ic-button-disabled\"]: this.disabled && !this.loading,\n [`ic-button-variant-${this.variant}`]: true,\n [`ic-button-size-${this.size}`]: true,\n [\"ic-button-loading\"]: this.loading,\n [\"ic-button-full-width\"]: this.fullWidth,\n [\"with-badge\"]: isSlotUsed(this.el, \"badge\"),\n [\"dropdown-no-icon\"]:\n this.dropdown &&\n !isSlotUsed(this.el, \"icon\") &&\n !isSlotUsed(this.el, \"left-icon\"),\n [\"top-icon\"]: isSlotUsed(this.el, \"top-icon\"),\n [\"background\"]:\n this.variant === \"secondary\" &&\n !this.transparentBackground &&\n this.theme === \"light\",\n }}\n onClick={this.handleClick}\n onKeyDown={this.handleKeyDown}\n aria-owns={this.ariaOwnsId}\n aria-controls={this.ariaControlsId}\n aria-expanded={this.dropdown && `${this.dropdownExpanded}`}\n >\n {this.hasTooltip && (\n <ic-tooltip\n id={describedby}\n label={title || ariaLabel}\n target={buttonId}\n placement={this.tooltipPlacement}\n silent={this.isIconVariant() && !!ariaLabel}\n >\n {this.hasRouterSlot() ? (\n <slot name=\"router-item\"></slot>\n ) : (\n <ButtonContent />\n )}\n </ic-tooltip>\n )}\n {isSlotUsed(this.el, \"badge\") && <slot name=\"badge\"></slot>}\n {!this.hasTooltip &&\n (this.hasRouterSlot() ? (\n <slot name=\"router-item\"></slot>\n ) : (\n <ButtonContent />\n ))}\n {this.describedByContent && (\n <span id={describedby} class=\"ic-button-describedby\">\n {this.describedByContent}\n </span>\n )}\n </Host>\n );\n }\n}\n","@import \"../../global/normalize.css\";\n\n:host {\n /**\n * @prop --circular-diameter: Diameter of the circular-indicator\n */\n\n display: block;\n\n --linear-border-radius: 0.25rem;\n --inner-color: var(--ic-loading-indicator-inner-color);\n --outer-color: var(--ic-loading-indicator-outer-color);\n --label-color: var(--ic-loading-indicator-label-color);\n --margin: none;\n --linear-line-height: var(--ic-space-xs);\n}\n\n:host(.ic-loading-indicator-monochrome) {\n --inner-color: var(--ic-loading-indicator-inner-color-monochrome);\n --outer-color: var(--ic-loading-indicator-outer-color-monochrome);\n --label-color: var(--ic-loading-indicator-label-color-monochrome);\n}\n\n.ic-loading-container {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n}\n\n:host([size=\"small\"]) {\n --circular-diameter: 2.5rem;\n --linear-line-height: var(--ic-space-xxs);\n}\n\n:host([size=\"medium\"]) {\n --circular-diameter: 5rem;\n}\n\n:host([size=\"large\"]) {\n --circular-diameter: 7.5rem;\n}\n\n:host([size=\"icon\"]) {\n display: inline-block;\n\n --margin: var(--ic-space-xxxs);\n --circular-diameter: 1.25rem;\n}\n\n:host(.ic-loading-indicator-label) {\n --margin: 0 0 var(--ic-space-xs) 0;\n}\n\n.ic-loading-label {\n --ic-typography-color: var(--label-color);\n\n margin-left: var(--label-margin-left);\n}\n\n.ic-loading-circular-outer {\n height: var(--circular-diameter);\n width: var(--circular-diameter);\n}\n\n.ic-loading-circular-outer.indeterminate {\n animation: circular-animation 1s linear;\n animation-iteration-count: infinite;\n}\n\n@keyframes circular-animation {\n 100% {\n transform: rotate(360deg);\n }\n}\n\n.ic-loading-circular-outer,\n.ic-loading-linear-outer {\n margin: var(--margin);\n}\n\n.ic-loading-linear-outer {\n background-color: var(--outer-color);\n height: var(--linear-line-height);\n width: 100%;\n border-radius: var(--linear-border-radius);\n overflow: hidden;\n}\n\n.ic-loading-linear-inner {\n position: relative;\n height: 100%;\n background-color: var(--inner-color);\n border-radius: var(--linear-border-radius);\n}\n\n.indeterminate > .ic-loading-linear-inner {\n animation: linear-animation 2s infinite;\n}\n\n.determinate > .ic-loading-linear-inner {\n transition: width 0.5s;\n width: var(--linear-width);\n}\n\n:host(.ic-loading-indicator-full-width) {\n --linear-border-radius: none;\n}\n\n@keyframes linear-animation {\n 0% {\n width: 0%;\n left: -1%;\n }\n\n 25% {\n width: 0%;\n left: -1%;\n }\n\n 50% {\n width: 101%;\n left: -1%;\n }\n\n 75% {\n width: 0%;\n left: 101%;\n }\n\n 100% {\n width: 0%;\n left: 101%;\n }\n}\n\n.ic-loading-circular-svg {\n position: relative;\n width: 100%;\n height: 100%;\n transform: rotate(-90deg);\n}\n\n.ic-loading-circular-svg circle {\n width: 100%;\n height: 100%;\n fill: none;\n stroke: var(--compact-step-outer-color, var(--outer-color));\n stroke-width: var(--circular-line-width);\n stroke-linecap: round;\n}\n\n/* --stroke-dash-array calculated via dashArray method */\n.ic-loading-circular-svg circle:nth-child(2) {\n --circular-indeterminate: calc(\n (0.25 * var(--stroke-dasharray)) - var(--stroke-dasharray)\n );\n\n stroke-dasharray: var(--stroke-dasharray), var(--stroke-dasharray);\n stroke-dashoffset: var(--stroke-dashoffset, var(--circular-indeterminate));\n stroke: var(--compact-step-inner-color, var(--inner-color));\n}\n\n:host(.inner-label) .ic-loading-circular-inner {\n height: 100%;\n display: grid;\n}\n\n:host(.inner-label) .ic-loading-circular-svg,\n.inner-text {\n grid-column: 1;\n grid-row: 1;\n}\n\n/** ic-stepper **/\n:host(.not-required.compact-step-progress-indicator)\n .ic-loading-circular-svg\n circle:nth-child(2) {\n stroke: var(--ic-architectural-300);\n}\n\n.inner-text {\n display: flex;\n align-items: center;\n justify-content: center;\n width: var(--ic-space-lg);\n height: inherit;\n overflow: hidden;\n margin: auto;\n\n --ic-typography-color: var(\n --ic-step-indicator-text-current,\n var(--ic-status-info-default)\n );\n}\n\n:host(.not-required.compact-step-progress-indicator) .inner-text {\n --ic-typography-color: var(--ic-step-indicator-text-disabled);\n}\n\n:host(.ic-loading-indicator-light.not-required.compact-step-progress-indicator)\n .inner-text {\n --ic-typography-color: var(--ic-architectural-400);\n}\n\n/** High Contrast **/\n@media (forced-colors: active) {\n .indeterminate > .ic-loading-circular-inner {\n forced-color-adjust: none;\n }\n\n .ic-loading-linear-outer {\n border: var(--ic-border-hc);\n }\n\n .ic-loading-linear-inner {\n background-color: canvastext;\n }\n\n .ic-loading-circular-svg circle {\n stroke: Background;\n }\n\n .ic-loading-circular-svg circle:nth-child(2) {\n stroke: canvastext;\n }\n\n :host(.not-required.compact-step-progress-indicator)\n .ic-loading-circular-svg\n circle:nth-child(2) {\n stroke: GrayText;\n }\n}\n","import { Component, Element, h, Host, Prop, State, Watch } from \"@stencil/core\";\nimport {\n IcLoadingCircleXYR,\n IcLoadingSizes,\n IcLoadingTypes,\n} from \"./ic-loading-indicator.types\";\nimport { IcThemeMode } from \"../../utils/types\";\n\n@Component({\n tag: \"ic-loading-indicator\",\n styleUrl: \"ic-loading-indicator.css\",\n shadow: true,\n})\nexport class LoadingIndicator {\n private circularMeter: SVGCircleElement;\n private innerElement?: HTMLDivElement;\n private interval: ReturnType<typeof setInterval>;\n private labelList: string[];\n private outerElement?: HTMLDivElement;\n\n @Element() el: HTMLIcLoadingIndicatorElement;\n\n @State() circularDiameter: number;\n @State() circularLineWidth: number;\n @State() indeterminate: boolean;\n @State() indicatorLabel: string;\n @State() clipInnerElement: boolean = false;\n\n /**\n * The description that will be set as the aria-label of the loading indicator when not using a visible label.\n */\n @Prop() description?: string = \"Loading\";\n\n /**\n * If `true`, when linear, the full-width variant (i.e. without a border radius) will be displayed.\n */\n @Prop({ reflect: true }) fullWidth?: boolean = false;\n\n /**\n * @internal The step number of a compact step, managed by ic-step.\n */\n @Prop() innerLabel?: number;\n\n /**\n * The time in milliseconds before the label changes.\n */\n @Prop() labelDuration?: number = 8000;\n\n /**\n * The maximum value that the progress value can take.\n * Used to calculate the proportional width of the progress bar.\n */\n @Prop() max?: number = 100;\n\n /**\n * The minimum value that the progress value can take.\n * Used to calculate the proportional width of the progress bar.\n */\n @Prop() min?: number = 0;\n\n /**\n * If `true`, the element will display as black and white.\n */\n @Prop() monochrome?: boolean = false;\n\n /**\n * The size of the loading indicator.\n */\n @Prop({ reflect: true }) size?: IcLoadingSizes = \"medium\";\n\n /**\n * The type of indicator, either linear or circular.\n */\n @Prop({ reflect: true }) type?: IcLoadingTypes = \"circular\";\n\n /**\n * The label to be displayed beneath the loading indicator.\n * Display a changing label by supplying an array of messages.\n */\n @Prop() label?: string | string[];\n\n @Watch(\"label\")\n watchPropHandler(): void {\n this.updateLabel();\n }\n\n /**\n * The current amount of progress made.\n * If not provided, component acts as an indeterminate loading indicator.\n */\n @Prop() progress?: number;\n\n @Watch(\"progress\")\n watchProgressHandler(): void {\n if (this.type === \"circular\") {\n this.updateCircularProgressMeter();\n }\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\n disconnectedCallback(): void {\n clearInterval(this.interval);\n }\n\n componentWillLoad(): void {\n this.indeterminate = this.progress === undefined;\n this.updateLabel();\n this.el.setAttribute(\"exportparts\", \"ic-loading-container\");\n }\n\n componentDidLoad(): void {\n if (this.type === \"circular\") {\n this.setCircleLineWidth();\n this.circularMeter = this.el.shadowRoot.querySelector(\n \".ic-loading-circular-svg circle:nth-child(2)\"\n );\n this.updateCircularProgressMeter();\n }\n\n if (Number(this.progress) >= 0 && this.type === \"linear\") {\n this.setLinearDeterminateWidth();\n }\n }\n\n componentWillUpdate(): void {\n this.indeterminate = this.progress === undefined;\n }\n\n componentDidUpdate(): void {\n if (Number(this.progress) >= 0 && this.type === \"linear\") {\n this.setLinearDeterminateWidth();\n }\n }\n\n private updateCircularProgressMeter = () => {\n if (!this.indeterminate) {\n this.circularMeter.style.setProperty(\n \"--progress-value\",\n String(this.progress)\n );\n }\n };\n\n private getLabel = (\n labelIndex: number,\n setLabel: (label: string) => void\n ) => {\n return new Promise(() => {\n this.interval = setInterval(() => {\n if (labelIndex < this.labelList.length - 1) {\n labelIndex++;\n } else {\n labelIndex = 0;\n }\n setLabel(this.labelList[labelIndex]);\n }, this.labelDuration);\n });\n };\n\n private getLabelVariant = () => {\n let variant: \"label\" | \"h4\" | \"h2\" = \"h4\";\n const width = this.outerElement?.offsetWidth;\n if (this.size === \"small\" || (this.type === \"circular\" && width < 60)) {\n variant = \"label\";\n } else if (\n this.size === \"large\" ||\n (this.type === \"circular\" && width >= 120)\n ) {\n variant = \"h2\";\n }\n return variant;\n };\n\n // Sets the circular indicator line width - accounting for the circle size being altered using the CSS custom property\n private setCircleLineWidth = () => {\n const { offsetWidth: width } = this.outerElement;\n\n const compactStepCircularLineWidth = this.el.classList.contains(\n \"compact-step-progress-indicator\"\n )\n ? 40\n : 0;\n const toastDismissTimerCircularLineWidth = this.el.classList.contains(\n \"toast-dismiss-timer\"\n )\n ? 20\n : 0;\n\n if (\n width ||\n compactStepCircularLineWidth ||\n toastDismissTimerCircularLineWidth\n ) {\n this.circularLineWidth =\n (compactStepCircularLineWidth ||\n toastDismissTimerCircularLineWidth ||\n width) * 0.1;\n this.circularDiameter =\n compactStepCircularLineWidth ||\n toastDismissTimerCircularLineWidth ||\n width;\n this.outerElement.style.setProperty(\n \"--circular-line-width\",\n `${this.circularLineWidth}px`\n );\n }\n };\n\n private setLinearDeterminateWidth = () => {\n if (!this.innerElement) return;\n // Ensure progress cannot be out of bounds\n\n const progress = Math.min(this.max, Math.max(this.min, this.progress));\n const proportion = (progress - this.min) / (this.max - this.min);\n this.clipInnerElement = proportion > 0.5;\n if (this.clipInnerElement) {\n this.innerElement.classList.remove(\"clip\");\n } else {\n this.innerElement.classList.add(\"clip\");\n }\n this.innerElement.style.setProperty(\n \"--linear-width\",\n `${proportion * 100}%`\n );\n };\n\n private calcOuterClass = (): string => {\n let cls = `ic-loading-${this.type}-outer`;\n cls += this.indeterminate ? \" indeterminate\" : \" determinate\";\n return cls;\n };\n\n private updateLabel = (): void => {\n if (this.label !== undefined) {\n if (typeof this.label === \"string\") {\n this.indicatorLabel = this.label;\n } else {\n this.labelList = this.label;\n const labelIndex = 0;\n this.indicatorLabel = this.labelList[labelIndex];\n if (this.labelList.length > 1) {\n this.getLabel(labelIndex, (label) => {\n this.indicatorLabel = label;\n });\n }\n }\n }\n };\n\n private setCircleXY = (): IcLoadingCircleXYR => {\n if (this.circularDiameter > 0) {\n const r = this.circularDiameter / 2;\n const x = r;\n const y = r;\n const nextRadius = r - this.circularLineWidth / 2;\n this.setDashSteps(nextRadius);\n\n return { x, y, r: nextRadius };\n }\n return { x: 0, y: 0, r: 0 };\n };\n\n private setDashSteps = (radius: number) => {\n const dashArray = 2 * Math.PI * radius;\n const progress = Math.min(Math.max(this.progress, this.min), this.max);\n const proportion = -1 - (progress - this.min) / (this.max - this.min);\n\n this.circularMeter.style.setProperty(\n \"--stroke-dasharray\",\n `${dashArray}px`\n );\n\n if (!this.indeterminate) {\n this.circularMeter.style.setProperty(\n \"--circular-steps-max\",\n String(this.max)\n );\n this.circularMeter.style.setProperty(\n \"--stroke-dashoffset\",\n `${proportion * dashArray}px`\n );\n }\n };\n\n render() {\n const {\n theme,\n label,\n description,\n size,\n fullWidth,\n innerLabel,\n monochrome,\n } = this;\n const { x, y, r } = this.setCircleXY();\n\n return (\n <Host\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n \"ic-loading-indicator-label\": !!label,\n \"ic-loading-indicator-full-width\": fullWidth,\n \"inner-label\": !!innerLabel,\n \"ic-loading-indicator-monochrome\": monochrome,\n }}\n >\n <div class=\"ic-loading-container\" part=\"ic-loading-container\">\n <div\n ref={(el) => (this.outerElement = el as HTMLDivElement)}\n class={this.calcOuterClass()}\n role=\"progressbar\"\n aria-labelledby={\n this.label && this.size !== \"icon\" && \"ic-loading-label\"\n }\n aria-label={description}\n aria-valuenow={this.progress}\n aria-valuemin={this.min}\n aria-valuemax={this.max}\n >\n <div\n ref={(el) => (this.innerElement = el as HTMLDivElement)}\n class={`ic-loading-${this.type}-inner`}\n >\n {this.innerLabel &&\n this.innerLabel !== undefined &&\n this.size === \"small\" && (\n <ic-typography variant=\"subtitle-small\" class=\"inner-text\">\n {this.innerLabel}\n </ic-typography>\n )}\n {this.type === \"circular\" && (\n <svg\n class=\"ic-loading-circular-svg\"\n viewBox={`0 0 ${this.circularDiameter || 0} ${\n this.circularDiameter || 0\n }`}\n >\n <circle cx={`${x}`} cy={`${y}`} r={`${r}`}></circle>\n <circle cx={`${x}`} cy={`${y}`} r={`${r}`}></circle>\n </svg>\n )}\n </div>\n </div>\n {label && size !== \"icon\" && (\n <ic-typography\n id=\"ic-loading-label\"\n class=\"ic-loading-label\"\n role=\"status\"\n variant={this.getLabelVariant()}\n >\n <p>{this.indicatorLabel}</p>\n </ic-typography>\n )}\n </div>\n </Host>\n );\n }\n}\n","@import \"../../global/normalize.css\";\n\n/**\n * @prop --ic-z-index-tooltip: z-index of tooltip\n */\n\n:host(.ic-tooltip) {\n width: max-content;\n height: max-content;\n\n --ic-tooltip-background: var(--ic-color-background-primary-dark);\n --ic-tooltip-text: var(--ic-color-text-primary-dark);\n --ic-tooltip-border: var(--ic-color-border-neutral-grey-light);\n}\n\n:host(.ic-tooltip) .ic-tooltip-container {\n background-color: var(--ic-tooltip-background);\n text-align: center;\n padding: var(--ic-space-xxxs) var(--ic-space-xs);\n border-radius: var(--ic-border-radius);\n border: var(--ic-border-width) solid var(--ic-tooltip-border);\n position: absolute;\n max-width: 20rem;\n display: none;\n z-index: var(--ic-z-index-tooltip);\n box-shadow: var(--ic-elevation-overlay);\n width: max-content;\n}\n\n:host(.ic-tooltip) ic-typography {\n --ic-typography-color: var(--ic-tooltip-text);\n}\n\n:host(.tooltip-navigation-item:not(.tooltip-navigation-item-side-nav-collapsed))\n .ic-tooltip-container,\n:host(.tooltip-disabled) .ic-tooltip-container {\n display: none !important;\n}\n\n:host(.tooltip-long-label-navigation-item-side-nav-expanded)\n .ic-tooltip-container[data-show] {\n display: block !important;\n}\n\n:host(.ic-tooltip) .ic-tooltip-arrow,\n:host(.ic-tooltip) .ic-tooltip-arrow::before {\n position: absolute;\n background: inherit;\n}\n\n:host(.ic-tooltip) .ic-tooltip-arrow {\n visibility: hidden;\n width: var(--ic-space-md);\n height: var(--ic-space-md);\n}\n\n:host(.ic-tooltip) .ic-tooltip-arrow::before {\n visibility: visible;\n content: \"\";\n border: var(--ic-border-width) solid var(--ic-tooltip-border);\n width: 100%;\n height: 100%;\n}\n\n:host(.ic-tooltip) .ic-tooltip-container[data-show] {\n display: block;\n}\n\n:host(.ic-tooltip)\n .ic-tooltip-container[data-popper-placement^=\"top\"]\n > .ic-tooltip-arrow {\n height: var(--ic-space-xxxs);\n}\n\n:host(.ic-tooltip)\n .ic-tooltip-container[data-popper-placement^=\"top\"]\n > .ic-tooltip-arrow::before {\n border-radius: 0 0 var(--ic-border-radius) var(--ic-border-radius);\n left: 0;\n top: var(--ic-space-xxxs);\n border-top: 0;\n transform: translateX(var(--tooltip-arrow-translate));\n}\n\n:host(.ic-tooltip)\n .ic-tooltip-container[data-popper-placement^=\"bottom\"]\n > .ic-tooltip-arrow {\n top: calc(-1 * var(--ic-space-xxs));\n height: var(--ic-space-xxxs);\n}\n\n:host(.ic-tooltip)\n .ic-tooltip-container[data-popper-placement^=\"bottom\"]\n > .ic-tooltip-arrow::before {\n border-radius: var(--ic-border-radius) var(--ic-border-radius) 0 0;\n left: 0;\n top: var(--ic-space-1px);\n border-bottom: 0;\n transform: translateX(var(--tooltip-arrow-translate));\n}\n\n:host(.ic-tooltip)\n .ic-tooltip-container[data-popper-placement^=\"left\"]\n > .ic-tooltip-arrow {\n width: var(--ic-space-xxxs);\n right: calc(-1 * var(--ic-space-1px));\n}\n\n:host(.ic-tooltip)\n .ic-tooltip-container[data-popper-placement^=\"left\"]\n > .ic-tooltip-arrow::before {\n border-radius: 0 var(--ic-border-radius) var(--ic-border-radius) 0;\n border-left: 0;\n top: calc(-1 * var(--ic-space-1px));\n}\n\n:host(.ic-tooltip)\n .ic-tooltip-container[data-popper-placement^=\"right\"]\n > .ic-tooltip-arrow {\n width: var(--ic-space-xxxs);\n left: calc(-1 * var(--ic-space-xxs));\n}\n\n:host(.ic-tooltip)\n .ic-tooltip-container[data-popper-placement^=\"right\"]\n > .ic-tooltip-arrow::before {\n border-radius: var(--ic-border-radius) 0 0 var(--ic-border-radius);\n border-right: 0;\n top: calc(-1 * var(--ic-space-1px));\n}\n\n:host(.on-dialog) .ic-tooltip-container {\n transform: translate(\n var(--tooltip-translate-x),\n var(--tooltip-translate-y)\n ) !important;\n}\n\n@media screen and (max-width: 576px) {\n :host(.ic-tooltip) .ic-tooltip-container {\n max-width: 18.875rem;\n }\n}\n\n@media (forced-colors: active) {\n :host(.ic-tooltip) .ic-tooltip-container,\n :host(.ic-tooltip) .ic-tooltip-arrow::before {\n border: var(--ic-border-hc);\n }\n}\n","import {\n Component,\n Element,\n Host,\n Prop,\n h,\n Method,\n State,\n} from \"@stencil/core\";\nimport { Instance, Options, createPopper } from \"@popperjs/core\";\nimport { IcTooltipPlacements } from \"./ic-tooltip.types\";\nimport { onComponentRequiredPropUndefined } from \"../../utils/helpers\";\nimport { IcThemeMode } from \"../../utils/types\";\n\n@Component({\n tag: \"ic-tooltip\",\n styleUrl: \"ic-tooltip.css\",\n shadow: true,\n})\nexport class Tooltip {\n private arrow: HTMLDivElement;\n private delayedHideEvents = [\"mouseleave\"];\n private dialogOverflow = false;\n private icDialogEl: HTMLIcDialogElement;\n private instantHideEvents = [\"focusout\"];\n private mouseOverTool: boolean = false;\n private persistTooltip = false;\n private popperInstance: Instance;\n private onDialog: boolean = false;\n private showEvents = [\n !this.disableHover && \"mouseenter\",\n !this.disableHover && \"focusin\",\n !this.disableClick && \"click\",\n ];\n private toolTip: HTMLDivElement;\n\n @Element() el: HTMLIcTooltipElement;\n\n /**\n * If `true`, the tooltip will not be displayed on click, it will require hover or using the display method.\n */\n @Prop() disableClick?: boolean = false;\n\n /**\n * If `true`, the tooltip will not be displayed on hover, it will require a click.\n */\n @Prop() disableHover?: boolean = false;\n\n /**\n * The number of lines to display before truncating the text.\n */\n @Prop() maxLines?: number;\n\n /**\n * The position of the tooltip in relation to the parent element.\n */\n @Prop({ mutable: true }) placement?: IcTooltipPlacements = \"bottom\";\n\n /**\n * @internal Sets the tooltip to aria-hidden, when used as part of components that are already announced.\n */\n @Prop() silent?: boolean = false;\n\n /**\n * The ID of the element the tooltip is describing - for when aria-labelledby or aria-describedby is used.\n */\n @Prop({ reflect: true }) target?: string;\n\n /**\n * Sets the tooltip to the dark or light theme colors. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * The text to display on the tooltip.\n */\n @Prop() label!: string;\n\n @State() popperProps: Partial<Options> = {};\n\n /**\n * @internal This method allows props to be added to the PopperJS createPopper instance outside of tooltip\n * @param props object - createPopper props set externally\n */\n @Method()\n async setExternalPopperProps<T extends Partial<Options>>(props: T) {\n this.popperProps = props;\n }\n\n disconnectedCallback(): void {\n this.manageEventListeners(\"remove\");\n if (this.popperInstance !== undefined) {\n this.popperInstance.destroy();\n }\n }\n\n componentDidLoad(): void {\n this.manageEventListeners(\"add\");\n\n this.icDialogEl = this.el.closest(\"ic-dialog\");\n this.dialogOverflow =\n this.icDialogEl?.getAttribute(\"data-overflow\") === \"true\";\n\n this.onDialog = this.icDialogEl !== null;\n\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Tooltip\"\n );\n }\n\n componentDidRender(): void {\n const typographyEl = this.el.shadowRoot.querySelector(\n \".ic-tooltip-container > ic-typography\"\n );\n this.maxLines > 0 &&\n typographyEl.setAttribute(\n \"style\",\n `--truncation-max-lines: ${this.maxLines}`\n );\n }\n /**\n * Method to programmatically show/hide the tooltip without needing to interact with an anchor element\n * @param show Whether to show or hide the tooltip\n * @param persistTooltip Whether the tooltip should stay on the screen when actions are performed that would previously dismiss the tooltip, such as on hover\n */\n @Method()\n async displayTooltip(show: boolean, persistTooltip?: boolean): Promise<void> {\n this.persistTooltip = persistTooltip;\n show ? this.show() : this.hide();\n }\n\n /**\n * @internal Method to return if tooltip is currently visible.\n */\n @Method()\n async isTooltipVisible(): Promise<boolean> {\n return Promise.resolve(this.toolTip.hasAttribute(\"data-show\"));\n }\n\n private getTooltipTranslate = (dialogEl: DOMRect) => {\n const child = this.el.children[0].getBoundingClientRect();\n let tooltipX;\n let tooltipY;\n switch (this.placement) {\n case \"bottom\":\n tooltipX = child.left - dialogEl.left - 0.5 * child.width;\n tooltipY = child.bottom - dialogEl.top;\n break;\n case \"bottom-start\":\n tooltipX = child.left - dialogEl.left;\n tooltipY = child.bottom - dialogEl.top;\n break;\n case \"bottom-end\":\n tooltipX = child.right - dialogEl.right;\n tooltipY = child.bottom - dialogEl.top;\n break;\n case \"top\":\n tooltipX = child.left - dialogEl.left - 0.5 * child.width;\n tooltipY = child.top - dialogEl.bottom;\n break;\n case \"top-start\":\n tooltipX = child.left - dialogEl.left;\n tooltipY = child.top - dialogEl.bottom;\n break;\n case \"top-end\":\n tooltipX = child.right - dialogEl.right;\n tooltipY = child.top - dialogEl.bottom;\n break;\n case \"left\":\n case \"left-start\":\n tooltipX = child.right - dialogEl.right - child.width;\n tooltipY = child.bottom - dialogEl.top - child.height;\n break;\n case \"left-end\":\n tooltipX = child.right - dialogEl.right - child.width;\n tooltipY = child.top - dialogEl.bottom + child.height;\n break;\n case \"right\":\n case \"right-start\":\n tooltipX = child.left - dialogEl.left + child.width;\n tooltipY = child.bottom - dialogEl.top - child.height;\n break;\n case \"right-end\":\n tooltipX = child.left - dialogEl.left + child.width;\n tooltipY = child.top - dialogEl.bottom + child.height;\n break;\n }\n if (this.dialogOverflow && tooltipX < 0) {\n if (this.placement.includes(\"top\") || this.placement.includes(\"bottom\")) {\n this.toolTip.style.setProperty(\n \"--tooltip-arrow-translate\",\n `${tooltipX}px`\n );\n tooltipX = child.left - dialogEl.left;\n }\n if (this.placement.includes(\"left\")) {\n this.placement = \"right\";\n tooltipX = child.left - dialogEl.left + child.width;\n }\n }\n\n this.toolTip.style.setProperty(\"--tooltip-translate-x\", `${tooltipX}px`);\n this.toolTip.style.setProperty(\"--tooltip-translate-y\", `${tooltipY}px`);\n };\n\n private show = () => {\n if (this.label) {\n this.toolTip.setAttribute(\"data-show\", \"\");\n\n if (this.onDialog) {\n this.el.classList.add(\"on-dialog\");\n const dialogEl = this.icDialogEl.shadowRoot\n .querySelector(\"dialog\")\n .getBoundingClientRect();\n\n this.getTooltipTranslate(dialogEl);\n }\n\n this.popperInstance = createPopper(this.el, this.toolTip, {\n placement: this.placement,\n modifiers: [\n {\n name: \"offset\",\n options: {\n offset: [0, 10],\n },\n },\n {\n name: \"arrow\",\n options: {\n element: this.arrow,\n },\n },\n {\n name: \"eventListeners\",\n options: { scroll: false, resize: false },\n },\n ],\n ...this.popperProps,\n });\n } else {\n console.warn(`Tooltip can't display without prop 'label' set`);\n }\n };\n\n private hide = () => {\n this.toolTip.removeAttribute(\"data-show\");\n this.persistTooltip = false;\n if (this.popperInstance !== undefined) {\n this.popperInstance.destroy();\n }\n };\n\n private checkCloseTooltip = () => {\n setTimeout(() => {\n if (!this.mouseOverTool && !this.persistTooltip) {\n this.hide();\n }\n }, 100);\n };\n\n private mouseEnterTooltip = () => {\n this.mouseOverTool = true;\n };\n\n private mouseLeaveTooltip = () => {\n this.mouseOverTool = false;\n this.checkCloseTooltip();\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n if (event.key === \"Escape\" && !this.persistTooltip) {\n this.hide();\n }\n };\n\n private manageEventListeners = (action: \"add\" | \"remove\") => {\n const method =\n action === \"add\" ? \"addEventListener\" : \"removeEventListener\";\n\n this.showEvents.forEach((event) => {\n this.el[method](event, this.show);\n if (this.toolTip !== undefined) {\n this.toolTip[method](event, this.mouseEnterTooltip);\n }\n });\n\n if (!this.persistTooltip) {\n this.instantHideEvents.forEach((event) => {\n this.el[method](event, this.hide);\n });\n }\n\n this.delayedHideEvents.forEach((event) => {\n this.el[method](event, this.checkCloseTooltip);\n if (this.toolTip !== undefined) {\n this.toolTip[method](event, this.mouseLeaveTooltip);\n }\n });\n\n document[method](\"keydown\", this.handleKeyDown);\n };\n\n render() {\n const { label, maxLines, silent, theme } = this;\n return (\n <Host\n class={{\n \"ic-tooltip\": true,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n <div\n ref={(el) => (this.toolTip = el as HTMLDivElement)}\n role=\"tooltip\"\n class=\"ic-tooltip-container\"\n aria-hidden={`${silent}`}\n >\n <ic-typography maxLines={maxLines} variant=\"caption\">\n {label}\n </ic-typography>\n <div\n ref={(el) => (this.arrow = el as HTMLDivElement)}\n class=\"ic-tooltip-arrow\"\n ></div>\n </div>\n <slot></slot>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import{r as i,h as e,H as c,g as d}from"./p-6b5e91e2.js";import{g as r,d as t,s as a}from"./p-cda4aca9.js";const l='.ic-divider-horizontal.sc-ic-divider-h{display:flex;width:var(--ic-divider-horizontal-width, 100%);align-items:center;-moz-column-gap:var(--ic-space-xxs);column-gap:var(--ic-space-xxs)}hr.sc-ic-divider{padding:0;margin:0;border:none;border-bottom:solid var(--ic-space-1px) var(--ic-divider-background);width:inherit}.ic-divider-horizontal.sc-ic-divider-h::before,.ic-divider-horizontal.sc-ic-divider-h::after{border-left:none !important}.ic-divider-horizontal[label-placement="right"].sc-ic-divider-h::before,.ic-divider-horizontal[label-placement="center"].sc-ic-divider-h::before,.ic-divider-horizontal[label-placement="left"].sc-ic-divider-h::after,.ic-divider-horizontal[label-placement="center"].sc-ic-divider-h::after{content:"";border:none;width:100%}.ic-divider-vertical.sc-ic-divider-h{display:flex;flex-direction:column;height:var(--ic-divider-vertical-height, inherit);width:-moz-max-content;width:max-content;align-items:center;-moz-column-gap:var(--ic-space-xxs);column-gap:var(--ic-space-xxs);border:none}.ic-divider-vertical.sc-ic-divider-h div.vertical-divider.sc-ic-divider{display:flex;height:inherit}.ic-divider-vertical[label-placement="bottom"].sc-ic-divider-h::before,.ic-divider-vertical[label-placement="center"].sc-ic-divider-h::before,.ic-divider-vertical[label-placement="top"].sc-ic-divider-h::after,.ic-divider-vertical[label-placement="center"].sc-ic-divider-h::after{content:"";height:100%}hr.sc-ic-divider,.ic-divider-horizontal[label-placement="right"].sc-ic-divider-h::before,.ic-divider-horizontal[label-placement="center"].sc-ic-divider-h::before,.ic-divider-horizontal[label-placement="left"].sc-ic-divider-h::after,.ic-divider-horizontal[label-placement="center"].sc-ic-divider-h::after{border-bottom:solid var(--ic-space-1px) var(--ic-divider-background)}.ic-divider-monochrome.sc-ic-divider-h hr.sc-ic-divider,.ic-divider-monochrome.ic-divider-horizontal[label-placement="right"].sc-ic-divider-h::before,.ic-divider-monochrome.ic-divider-horizontal[label-placement="center"].sc-ic-divider-h::before,.ic-divider-monochrome.ic-divider-horizontal[label-placement="left"].sc-ic-divider-h::after,.ic-divider-monochrome.ic-divider-horizontal[label-placement="center"].sc-ic-divider-h::after{border-bottom-color:var(--ic-divider-background-monochrome)}.sc-ic-divider-h div.vertical-divider.sc-ic-divider,.ic-divider-vertical[label-placement="bottom"].sc-ic-divider-h::before,.ic-divider-vertical[label-placement="center"].sc-ic-divider-h::before,.ic-divider-vertical[label-placement="top"].sc-ic-divider-h::after,.ic-divider-vertical[label-placement="center"].sc-ic-divider-h::after{border-left:solid var(--ic-space-1px) var(--ic-divider-background)}.ic-divider-monochrome.sc-ic-divider-h div.vertical-divider.sc-ic-divider,.ic-divider-monochrome.ic-divider-vertical[label-placement="bottom"].sc-ic-divider-h::before,.ic-divider-monochrome.ic-divider-vertical[label-placement="center"].sc-ic-divider-h::before,.ic-divider-monochrome.ic-divider-vertical[label-placement="top"].sc-ic-divider-h::after,.ic-divider-monochrome.ic-divider-vertical[label-placement="center"].sc-ic-divider-h::after{border-left-color:var(--ic-divider-background-monochrome)}.ic-side-navigation-keyline.ic-theme-dark.sc-ic-divider-h{--ic-side-navigation-keyline:var(--ic-state-layer-lighten-20)}.ic-side-navigation-keyline.ic-theme-light.sc-ic-divider-h{--ic-side-navigation-keyline:var(--ic-state-layer-darken-20)}.ic-side-navigation-keyline.ic-theme-dark.sc-ic-divider-h hr.sc-ic-divider,.ic-side-navigation-keyline.ic-theme-dark.ic-divider-horizontal[label-placement="right"].sc-ic-divider-h::before,.ic-side-navigation-keyline.ic-theme-dark.ic-divider-horizontal[label-placement="center"].sc-ic-divider-h::before,.ic-side-navigation-keyline.ic-theme-dark.ic-divider-horizontal[label-placement="left"].sc-ic-divider-h::after,.ic-side-navigation-keyline.ic-theme-dark.ic-divider-horizontal[label-placement="center"].sc-ic-divider-h::after{border-bottom-color:var(--ic-side-navigation-keyline)}.ic-side-navigation-keyline.ic-theme-dark.sc-ic-divider-h div.vertical-divider.sc-ic-divider,.ic-side-navigation-keyline.ic-theme-dark.ic-divider-vertical[label-placement="bottom"].sc-ic-divider-h::before,.ic-side-navigation-keyline.ic-theme-dark.ic-divider-vertical[label-placement="center"].sc-ic-divider-h::before,.ic-side-navigation-keyline.ic-theme-dark.ic-divider-vertical[label-placement="top"].sc-ic-divider-h::after,.ic-side-navigation-keyline.ic-theme-dark.ic-divider-vertical[label-placement="center"].sc-ic-divider-h::after{border-left-color:var(--ic-side-navigation-keyline)}.ic-side-navigation-keyline.ic-theme-light.sc-ic-divider-h hr.sc-ic-divider,.ic-side-navigation-keyline.ic-theme-light.ic-divider-horizontal[label-placement="right"].sc-ic-divider-h::before,.ic-side-navigation-keyline.ic-theme-light.ic-divider-horizontal[label-placement="center"].sc-ic-divider-h::before,.ic-side-navigation-keyline.ic-theme-light.ic-divider-horizontal[label-placement="left"].sc-ic-divider-h::after,.ic-side-navigation-keyline.ic-theme-light.ic-divider-horizontal[label-placement="center"].sc-ic-divider-h::after{border-bottom-color:var(--ic-side-navigation-keyline)}.ic-side-navigation-keyline.ic-theme-light.sc-ic-divider-h div.vertical-divider.sc-ic-divider,.ic-side-navigation-keyline.ic-theme-light.ic-divider-vertical[label-placement="bottom"].sc-ic-divider-h::before,.ic-side-navigation-keyline.ic-theme-light.ic-divider-vertical[label-placement="center"].sc-ic-divider-h::before,.ic-side-navigation-keyline.ic-theme-light.ic-divider-vertical[label-placement="top"].sc-ic-divider-h::after,.ic-side-navigation-keyline.ic-theme-light.ic-divider-vertical[label-placement="center"].sc-ic-divider-h::after{border-left-color:var(--ic-divider-background-monochrome)}.ic-divider-very-thick.sc-ic-divider-h hr.sc-ic-divider,.ic-divider-very-thick[label-placement="right"].sc-ic-divider-h::before,.ic-divider-very-thick[label-placement="center"].sc-ic-divider-h::before,.ic-divider-very-thick[label-placement="left"].sc-ic-divider-h::after,.ic-divider-very-thick[label-placement="center"].sc-ic-divider-h::after{border-bottom-width:var(--ic-space-xs)}.ic-divider-very-thick.sc-ic-divider-h .vertical-divider.sc-ic-divider,.ic-divider-very-thick[label-placement="bottom"].sc-ic-divider-h::before,.ic-divider-very-thick[label-placement="center"].sc-ic-divider-h::before,.ic-divider-very-thick[label-placement="top"].sc-ic-divider-h::after,.ic-divider-very-thick[label-placement="center"].sc-ic-divider-h::after{border-left-width:var(--ic-space-xs)}.ic-divider-thick.sc-ic-divider-h hr.sc-ic-divider,.ic-divider-thick[label-placement="right"].sc-ic-divider-h::before,.ic-divider-thick[label-placement="center"].sc-ic-divider-h::before,.ic-divider-thick[label-placement="left"].sc-ic-divider-h::after,.ic-divider-thick[label-placement="center"].sc-ic-divider-h::after{border-bottom-width:var(--ic-space-xxs)}.ic-divider-thick.sc-ic-divider-h .vertical-divider.sc-ic-divider,.ic-divider-thick[label-placement="bottom"].sc-ic-divider-h::before,.ic-divider-thick[label-placement="center"].sc-ic-divider-h::before,.ic-divider-thick[label-placement="top"].sc-ic-divider-h::after,.ic-divider-thick[label-placement="center"].sc-ic-divider-h::after{border-left-width:var(--ic-space-xxs)}.ic-divider-medium.sc-ic-divider-h hr.sc-ic-divider,.ic-divider-medium[label-placement="right"].sc-ic-divider-h::before,.ic-divider-medium[label-placement="center"].sc-ic-divider-h::before,.ic-divider-medium[label-placement="left"].sc-ic-divider-h::after,.ic-divider-medium[label-placement="center"].sc-ic-divider-h::after{border-bottom-width:var(--ic-space-xxxs)}.ic-divider-medium.sc-ic-divider-h .vertical-divider.sc-ic-divider,.ic-divider-medium[label-placement="bottom"].sc-ic-divider-h::before,.ic-divider-medium[label-placement="center"].sc-ic-divider-h::before,.ic-divider-medium[label-placement="top"].sc-ic-divider-h::after,.ic-divider-medium[label-placement="center"].sc-ic-divider-h::after{border-left-width:var(--ic-space-xxxs)}.ic-divider-thin.sc-ic-divider-h hr.sc-ic-divider,.ic-divider-thin[label-placement="right"].sc-ic-divider-h::before,.ic-divider-thin[label-placement="center"].sc-ic-divider-h::before,.ic-divider-thin[label-placement="left"].sc-ic-divider-h::after,.ic-divider-thin[label-placement="center"].sc-ic-divider-h::after{border-bottom-width:var(--ic-space-1px)}.ic-divider-thin.sc-ic-divider-h .vertical-divider.sc-ic-divider,.ic-divider-thin[label-placement="bottom"].sc-ic-divider-h::before,.ic-divider-thin.ic-divider-vertical[label-placement="center"].sc-ic-divider-h::before,.ic-divider-thin[label-placement="top"].sc-ic-divider-h::after,.ic-divider-thin.ic-divider-vertical[label-placement="center"].sc-ic-divider-h::after{border-left-width:var(--ic-space-1px)}.ic-divider-dashed.sc-ic-divider-h hr.sc-ic-divider,.ic-divider-dashed[label-placement="right"].sc-ic-divider-h::before,.ic-divider-dashed[label-placement="center"].sc-ic-divider-h::before,.ic-divider-dashed[label-placement="left"].sc-ic-divider-h::after,.ic-divider-dashed[label-placement="center"].sc-ic-divider-h::after{border-bottom-style:dashed}.ic-divider-dashed.sc-ic-divider-h .vertical-divider.sc-ic-divider,.ic-divider-dashed[label-placement="bottom"].sc-ic-divider-h::before,.ic-divider-dashed[label-placement="center"].sc-ic-divider-h::before,.ic-divider-dashed[label-placement="top"].sc-ic-divider-h::after,.ic-divider-dashed[label-placement="center"].sc-ic-divider-h::after{border-left-style:dashed}.sc-ic-divider-h .ic-divider-label.sc-ic-divider{text-wrap:wrap;text-align:left;width:-moz-max-content;width:max-content;max-width:var(--ic-divider-label-width, max(20rem, 60%))}.ic-divider-horizontal[label-placement="center"].sc-ic-divider-h .ic-divider-label.sc-ic-divider{text-align:center}.ic-divider-vertical.sc-ic-divider-h .ic-divider-label.sc-ic-divider{text-align:center}.sc-ic-divider-h .ic-divider-label-container.sc-ic-divider{width:-moz-max-content;width:max-content;max-width:var(--ic-divider-label-width, max(20rem, 60%))}.ic-divider-vertical.sc-ic-divider-h .ic-divider-label.sc-ic-divider{max-width:var(--ic-divider-label-width, 20rem)}.ic-divider-vertical.sc-ic-divider-h .ic-divider-label-container.sc-ic-divider{max-width:var(--ic-divider-label-width, 20rem)}.sc-ic-divider-h .ic-divider-label.sc-ic-divider p.sc-ic-divider{width:-moz-max-content;width:max-content;max-width:100%}.sc-ic-divider-h .ic-divider-label.sc-ic-divider,.sc-ic-divider-h.sc-ic-divider-s>*,.sc-ic-divider-h .sc-ic-divider-s>*{color:var(--ic-divider-label)}.ic-divider-monochrome.sc-ic-divider-h .ic-divider-label.sc-ic-divider,.sc-ic-divider-h.ic-divider-monochrome.sc-ic-divider-s>*,.sc-ic-divider-h.ic-divider-monochrome .sc-ic-divider-s>*{color:var(--ic-divider-label-monochrome)}@media (forced-colors: active){hr.sc-ic-divider,.ic-divider-horizontal[label-placement="right"].sc-ic-divider-h::before,.ic-divider-horizontal[label-placement="center"].sc-ic-divider-h::before,.ic-divider-horizontal[label-placement="left"].sc-ic-divider-h::after,.ic-divider-horizontal[label-placement="center"].sc-ic-divider-h::after{border-bottom-color:transparent}.sc-ic-divider-h div.vertical-divider.sc-ic-divider,.ic-divider-vertical[label-placement="bottom"].sc-ic-divider-h::before,.ic-divider-vertical[label-placement="center"].sc-ic-divider-h::before,.ic-divider-vertical[label-placement="top"].sc-ic-divider-h::after,.ic-divider-vertical[label-placement="center"].sc-ic-divider-h::after{border-left-color:transparent}}';const v=class{constructor(e){i(this,e);this.foregroundColor=r();this.borderStyle="solid";this.label=undefined;this.labelPlacement="center";this.monochrome=false;this.orientation="horizontal";this.theme="inherit";this.weight="thin"}brandChangeHandler(i){this.foregroundColor=i.detail.mode}updateMonochromeState(){const i=this.el.parentElement.classList.contains("bottom-side-nav");const e=this.el.parentElement.parentElement.classList.contains("bottom-wrapper");if(this.el.parentElement.tagName==="IC-SIDE-NAVIGATION"||i&&e){this.el.classList.add("ic-side-navigation-keyline");if(this.foregroundColor==="light"){this.theme="dark"}else{this.theme="light"}}}componentWillRender(){this.updateMonochromeState()}render(){const{borderStyle:i,label:d,labelPlacement:r,monochrome:l,orientation:v,weight:n}=this;const{theme:o}=this;const h=i=>{console.error(`${i.charAt(0).toUpperCase()+i.slice(1)} label placement is not applicable for a ${v} ic-divider (web-components) / IcDivider (react)`)};if((r==="left"||r==="right")&&v==="vertical"||(r==="top"||r==="bottom")&&v==="horizontal"){h(r)}const s=i=>{switch(i){case"very-thick":return"h4";case"thick":return"subtitle-large";default:return"label"}};const m=()=>{if(a(this.el,"label")){return e("div",{class:"ic-divider-label-container"},e("slot",{name:"label"}))}else if(t(d)){return e("ic-typography",{class:"ic-divider-label",variant:s(n)},e("p",null,d))}return null};return e(c,Object.assign({class:{[`ic-theme-${o}`]:o!=="inherit",[`ic-divider-monochrome`]:l,[`ic-divider-${v}`]:true,[`ic-divider-${n}`]:true,[`ic-divider-${i}`]:true}},(v==="vertical"||!!m()&&!!t(r))&&{"aria-orientation":v,role:"separator"}),v==="horizontal"&&(!m()||!t(r))&&e("hr",null),!!t(r)&&!!m()&&m(),v==="vertical"&&(!m()||!t(r))&&e("div",{class:"vertical-divider"}))}get el(){return d(this)}};v.style=l;export{v as ic_divider};
2
+ //# sourceMappingURL=p-abdc2912.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icDividerCss","Divider","getBrandForegroundAppearance","brandChangeHandler","ev","this","foregroundColor","detail","mode","updateMonochromeState","isBottomSideNav","el","parentElement","classList","contains","isBottomWrapper","tagName","add","theme","componentWillRender","render","borderStyle","label","labelPlacement","monochrome","orientation","weight","invalidPropCombination","placement","console","error","charAt","toUpperCase","slice","getTypographyVariant","renderLabel","slotHasContent","h","class","name","isPropDefined","variant","Host","Object","assign","role"],"sources":["src/components/ic-divider/ic-divider.css?tag=ic-divider&encapsulation=scoped","src/components/ic-divider/ic-divider.tsx"],"sourcesContent":["/**\n * @prop --ic-divider-vertical-height: The height of a vertical divider. The default value is `inherit`. \n */\n/**\n * @prop --ic-divider-horizontal-width: The width of a horizontal divider. The default value is `inherit`.\n */\n/**\n * @prop --ic-divider-label-width: The max-width of the divider label. When orientation is set to `horizontal`, the default value is `max(20rem, 60%)`. When orientation is set to `vertical`, the default value is `20 rem`.\n */\n\n/* IC-DIVIDER COLORS */\n/**\n * @internal @prop --ic-divider-background\n */\n/**\n * @internal @prop --ic-divider-background-monochrome\n */\n/**\n * @internal @prop --ic-divider-label\n */\n/**\n * @internal @prop --ic-divider-label-monochrome\n */\n\n/* Horizontal Divider */\n:host(.ic-divider-horizontal) {\n display: flex;\n width: var(--ic-divider-horizontal-width, 100%);\n align-items: center;\n column-gap: var(--ic-space-xxs);\n}\n\nhr {\n padding: 0;\n margin: 0;\n border: none;\n border-bottom: solid var(--ic-space-1px) var(--ic-divider-background);\n width: inherit;\n}\n\n:host(.ic-divider-horizontal)::before,\n:host(.ic-divider-horizontal)::after {\n border-left: none !important;\n}\n\n:host(.ic-divider-horizontal[label-placement=\"right\"])::before,\n:host(.ic-divider-horizontal[label-placement=\"center\"])::before,\n:host(.ic-divider-horizontal[label-placement=\"left\"])::after,\n:host(.ic-divider-horizontal[label-placement=\"center\"])::after {\n content: \"\";\n border: none;\n width: 100%;\n}\n\n/* Vertical Divider */\n:host(.ic-divider-vertical) {\n display: flex;\n flex-direction: column;\n height: var(--ic-divider-vertical-height, inherit);\n width: max-content;\n align-items: center;\n column-gap: var(--ic-space-xxs);\n border: none;\n}\n\n:host(.ic-divider-vertical) div.vertical-divider {\n display: flex;\n height: inherit;\n}\n\n:host(.ic-divider-vertical[label-placement=\"bottom\"])::before,\n:host(.ic-divider-vertical[label-placement=\"center\"])::before,\n:host(.ic-divider-vertical[label-placement=\"top\"])::after,\n:host(.ic-divider-vertical[label-placement=\"center\"])::after {\n content: \"\";\n height: 100%;\n}\n\n/* Theme */\nhr,\n:host(.ic-divider-horizontal)[label-placement=\"right\"]::before,\n:host(.ic-divider-horizontal[label-placement=\"center\"])::before,\n:host(.ic-divider-horizontal[label-placement=\"left\"])::after,\n:host(.ic-divider-horizontal[label-placement=\"center\"])::after {\n border-bottom: solid var(--ic-space-1px) var(--ic-divider-background);\n}\n\n:host(.ic-divider-monochrome) hr,\n:host(.ic-divider-monochrome.ic-divider-horizontal)[label-placement=\"right\"]::before,\n:host(.ic-divider-monochrome.ic-divider-horizontal[label-placement=\"center\"])::before,\n:host(.ic-divider-monochrome.ic-divider-horizontal[label-placement=\"left\"])::after,\n:host(.ic-divider-monochrome.ic-divider-horizontal[label-placement=\"center\"])::after {\n border-bottom-color: var(--ic-divider-background-monochrome);\n}\n\n:host() div.vertical-divider,\n:host(.ic-divider-vertical[label-placement=\"bottom\"])::before,\n:host(.ic-divider-vertical[label-placement=\"center\"])::before,\n:host(.ic-divider-vertical[label-placement=\"top\"])::after,\n:host(.ic-divider-vertical[label-placement=\"center\"])::after {\n border-left: solid var(--ic-space-1px) var(--ic-divider-background);\n}\n\n:host(.ic-divider-monochrome) div.vertical-divider,\n:host(.ic-divider-monochrome.ic-divider-vertical[label-placement=\"bottom\"])::before,\n:host(.ic-divider-monochrome.ic-divider-vertical[label-placement=\"center\"])::before,\n:host(.ic-divider-monochrome.ic-divider-vertical[label-placement=\"top\"])::after,\n:host(.ic-divider-monochrome.ic-divider-vertical[label-placement=\"center\"])::after {\n border-left-color: var(--ic-divider-background-monochrome);\n}\n\n/* Divider in ic-side-navigation */\n:host(.ic-side-navigation-keyline.ic-theme-dark) {\n --ic-side-navigation-keyline: var(--ic-state-layer-lighten-20);\n}\n\n:host(.ic-side-navigation-keyline.ic-theme-light) {\n --ic-side-navigation-keyline: var(--ic-state-layer-darken-20);\n}\n\n:host(.ic-side-navigation-keyline.ic-theme-dark) hr,\n:host(.ic-side-navigation-keyline.ic-theme-dark.ic-divider-horizontal)[label-placement=\"right\"]::before,\n:host(.ic-side-navigation-keyline.ic-theme-dark.ic-divider-horizontal[label-placement=\"center\"])::before,\n:host(.ic-side-navigation-keyline.ic-theme-dark.ic-divider-horizontal[label-placement=\"left\"])::after,\n:host(.ic-side-navigation-keyline.ic-theme-dark.ic-divider-horizontal[label-placement=\"center\"])::after {\n border-bottom-color: var(--ic-side-navigation-keyline);\n}\n\n:host(.ic-side-navigation-keyline.ic-theme-dark) div.vertical-divider,\n:host(.ic-side-navigation-keyline.ic-theme-dark.ic-divider-vertical[label-placement=\"bottom\"])::before,\n:host(.ic-side-navigation-keyline.ic-theme-dark.ic-divider-vertical[label-placement=\"center\"])::before,\n:host(.ic-side-navigation-keyline.ic-theme-dark.ic-divider-vertical[label-placement=\"top\"])::after,\n:host(.ic-side-navigation-keyline.ic-theme-dark.ic-divider-vertical[label-placement=\"center\"])::after {\n border-left-color: var(--ic-side-navigation-keyline);\n}\n\n:host(.ic-side-navigation-keyline.ic-theme-light) hr,\n:host(.ic-side-navigation-keyline.ic-theme-light.ic-divider-horizontal)[label-placement=\"right\"]::before,\n:host(.ic-side-navigation-keyline.ic-theme-light.ic-divider-horizontal[label-placement=\"center\"])::before,\n:host(.ic-side-navigation-keyline.ic-theme-light.ic-divider-horizontal[label-placement=\"left\"])::after,\n:host(.ic-side-navigation-keyline.ic-theme-light.ic-divider-horizontal[label-placement=\"center\"])::after {\n border-bottom-color: var(--ic-side-navigation-keyline);\n}\n\n:host(.ic-side-navigation-keyline.ic-theme-light) div.vertical-divider,\n:host(.ic-side-navigation-keyline.ic-theme-light.ic-divider-vertical[label-placement=\"bottom\"])::before,\n:host(.ic-side-navigation-keyline.ic-theme-light.ic-divider-vertical[label-placement=\"center\"])::before,\n:host(.ic-side-navigation-keyline.ic-theme-light.ic-divider-vertical[label-placement=\"top\"])::after,\n:host(.ic-side-navigation-keyline.ic-theme-light.ic-divider-vertical[label-placement=\"center\"])::after {\n border-left-color: var(--ic-divider-background-monochrome);\n}\n\n/* Weight */\n:host(.ic-divider-very-thick) hr,\n:host(.ic-divider-very-thick[label-placement=\"right\"])::before,\n:host(.ic-divider-very-thick[label-placement=\"center\"])::before,\n:host(.ic-divider-very-thick[label-placement=\"left\"])::after,\n:host(.ic-divider-very-thick[label-placement=\"center\"])::after {\n border-bottom-width: var(--ic-space-xs);\n}\n\n:host(.ic-divider-very-thick) .vertical-divider,\n:host(.ic-divider-very-thick[label-placement=\"bottom\"])::before,\n:host(.ic-divider-very-thick[label-placement=\"center\"])::before,\n:host(.ic-divider-very-thick[label-placement=\"top\"])::after,\n:host(.ic-divider-very-thick[label-placement=\"center\"])::after {\n border-left-width: var(--ic-space-xs);\n}\n\n:host(.ic-divider-thick) hr,\n:host(.ic-divider-thick[label-placement=\"right\"])::before,\n:host(.ic-divider-thick[label-placement=\"center\"])::before,\n:host(.ic-divider-thick[label-placement=\"left\"])::after,\n:host(.ic-divider-thick[label-placement=\"center\"])::after {\n border-bottom-width: var(--ic-space-xxs);\n}\n\n:host(.ic-divider-thick) .vertical-divider,\n:host(.ic-divider-thick[label-placement=\"bottom\"])::before,\n:host(.ic-divider-thick[label-placement=\"center\"])::before,\n:host(.ic-divider-thick[label-placement=\"top\"])::after,\n:host(.ic-divider-thick[label-placement=\"center\"])::after {\n border-left-width: var(--ic-space-xxs);\n}\n\n:host(.ic-divider-medium) hr,\n:host(.ic-divider-medium[label-placement=\"right\"])::before,\n:host(.ic-divider-medium[label-placement=\"center\"])::before,\n:host(.ic-divider-medium[label-placement=\"left\"])::after,\n:host(.ic-divider-medium[label-placement=\"center\"])::after {\n border-bottom-width: var(--ic-space-xxxs);\n}\n\n:host(.ic-divider-medium) .vertical-divider,\n:host(.ic-divider-medium[label-placement=\"bottom\"])::before,\n:host(.ic-divider-medium[label-placement=\"center\"])::before,\n:host(.ic-divider-medium[label-placement=\"top\"])::after,\n:host(.ic-divider-medium[label-placement=\"center\"])::after {\n border-left-width: var(--ic-space-xxxs);\n}\n\n:host(.ic-divider-thin) hr,\n:host(.ic-divider-thin[label-placement=\"right\"])::before,\n:host(.ic-divider-thin[label-placement=\"center\"])::before,\n:host(.ic-divider-thin[label-placement=\"left\"])::after,\n:host(.ic-divider-thin[label-placement=\"center\"])::after {\n border-bottom-width: var(--ic-space-1px);\n}\n\n:host(.ic-divider-thin) .vertical-divider,\n:host(.ic-divider-thin[label-placement=\"bottom\"])::before,\n:host(.ic-divider-thin.ic-divider-vertical[label-placement=\"center\"])::before,\n:host(.ic-divider-thin[label-placement=\"top\"])::after,\n:host(.ic-divider-thin.ic-divider-vertical[label-placement=\"center\"])::after {\n border-left-width: var(--ic-space-1px);\n}\n\n/* Border styling */\n:host(.ic-divider-dashed) hr,\n:host(.ic-divider-dashed[label-placement=\"right\"])::before,\n:host(.ic-divider-dashed[label-placement=\"center\"])::before,\n:host(.ic-divider-dashed[label-placement=\"left\"])::after,\n:host(.ic-divider-dashed[label-placement=\"center\"])::after {\n border-bottom-style: dashed;\n}\n\n:host(.ic-divider-dashed) .vertical-divider,\n:host(.ic-divider-dashed[label-placement=\"bottom\"])::before,\n:host(.ic-divider-dashed[label-placement=\"center\"])::before,\n:host(.ic-divider-dashed[label-placement=\"top\"])::after,\n:host(.ic-divider-dashed[label-placement=\"center\"])::after {\n border-left-style: dashed;\n}\n\n/* Label styling */\n:host() .ic-divider-label {\n text-wrap: wrap;\n text-align: left;\n width: max-content;\n max-width: var(--ic-divider-label-width, max(20rem, 60%));\n}\n\n:host(.ic-divider-horizontal[label-placement=\"center\"]) .ic-divider-label {\n text-align: center;\n}\n\n:host(.ic-divider-vertical) .ic-divider-label {\n text-align: center;\n}\n\n:host() .ic-divider-label-container {\n width: max-content;\n max-width: var(--ic-divider-label-width, max(20rem, 60%));\n}\n\n:host(.ic-divider-vertical) .ic-divider-label {\n max-width: var(--ic-divider-label-width, 20rem);\n}\n\n:host(.ic-divider-vertical) .ic-divider-label-container {\n max-width: var(--ic-divider-label-width, 20rem);\n}\n\n:host() .ic-divider-label p {\n width: max-content;\n max-width: 100%;\n}\n\n:host() .ic-divider-label,\n:host() ::slotted(*) {\n color: var(--ic-divider-label);\n}\n\n:host(.ic-divider-monochrome) .ic-divider-label,\n:host(.ic-divider-monochrome) ::slotted(*) {\n color: var(--ic-divider-label-monochrome);\n}\n\n/* High contrast */\n@media (forced-colors: active) {\n hr,\n :host(.ic-divider-horizontal[label-placement=\"right\"])::before,\n :host(.ic-divider-horizontal[label-placement=\"center\"])::before,\n :host(.ic-divider-horizontal[label-placement=\"left\"])::after,\n :host(.ic-divider-horizontal[label-placement=\"center\"])::after {\n border-bottom-color: transparent;\n }\n\n :host() div.vertical-divider,\n :host(.ic-divider-vertical[label-placement=\"bottom\"])::before,\n :host(.ic-divider-vertical[label-placement=\"center\"])::before,\n :host(.ic-divider-vertical[label-placement=\"top\"])::after,\n :host(.ic-divider-vertical[label-placement=\"center\"])::after {\n border-left-color: transparent;\n }\n}\n","import {\n h,\n Component,\n Host,\n Listen,\n State,\n Prop,\n Element,\n} from \"@stencil/core\";\n\nimport {\n getBrandForegroundAppearance,\n isPropDefined,\n slotHasContent,\n} from \"../../utils/helpers\";\n\nimport {\n IcBrand,\n IcOrientation,\n IcBrandForeground,\n IcThemeMode,\n} from \"../../utils/types\";\n\nimport {\n IcDividerLabelPlacement,\n IcDividerStyles,\n IcDividerWeights,\n} from \"./ic-divider.types\";\n\n@Component({\n tag: \"ic-divider\",\n styleUrl: \"ic-divider.css\",\n scoped: true,\n})\nexport class Divider {\n @Element() el: HTMLIcDividerElement;\n\n @State() foregroundColor: IcBrandForeground = getBrandForegroundAppearance();\n\n /**\n * The line style of the divider.\n */\n @Prop() borderStyle: IcDividerStyles = \"solid\";\n\n /**\n * The label for the divider. The label placement will need to be set for the label to be displayed correctly.\n */\n @Prop() label?: string;\n\n /**\n * The position the label is placed on the divider. `Left` and `right` placement is only applicable when orientation is set to `horizontal`. `Top` and `bottom` placement is only applicable when orientation is set to `vertical`. `Center` placement is applicable for both orientations.\n */\n @Prop() labelPlacement?: IcDividerLabelPlacement = \"center\";\n\n /** If `true`, the divider will be displayed in a grey colour. */\n @Prop() monochrome?: boolean = false;\n\n /**\n * The orientation of the divider.\n */\n @Prop() orientation: IcOrientation = \"horizontal\";\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({ mutable: true }) theme?: IcThemeMode | IcBrandForeground = \"inherit\";\n\n /**\n * The thickness of the divider.\n */\n @Prop() weight: IcDividerWeights = \"thin\";\n\n @Listen(\"brandChange\", { target: \"document\" })\n brandChangeHandler(ev: CustomEvent<IcBrand>): void {\n this.foregroundColor = ev.detail.mode;\n }\n\n private updateMonochromeState(): void {\n const isBottomSideNav =\n this.el.parentElement.classList.contains(\"bottom-side-nav\");\n const isBottomWrapper =\n this.el.parentElement.parentElement.classList.contains(\"bottom-wrapper\");\n\n if (\n this.el.parentElement.tagName === \"IC-SIDE-NAVIGATION\" ||\n (isBottomSideNav && isBottomWrapper)\n ) {\n this.el.classList.add(\"ic-side-navigation-keyline\");\n if (this.foregroundColor === \"light\") {\n this.theme = \"dark\";\n } else {\n this.theme = \"light\";\n }\n }\n }\n\n componentWillRender(): void {\n this.updateMonochromeState();\n }\n\n render() {\n const {\n borderStyle,\n label,\n labelPlacement,\n monochrome,\n orientation,\n weight,\n } = this;\n\n const { theme } = this;\n\n const invalidPropCombination = (\n placement: IcDividerLabelPlacement\n ): void => {\n console.error(\n `${\n placement.charAt(0).toUpperCase() + placement.slice(1)\n } label placement is not applicable for a ${orientation} ic-divider (web-components) / IcDivider (react)`\n );\n };\n\n if (\n ((labelPlacement === \"left\" || labelPlacement === \"right\") &&\n orientation === \"vertical\") ||\n ((labelPlacement === \"top\" || labelPlacement === \"bottom\") &&\n orientation === \"horizontal\")\n ) {\n invalidPropCombination(labelPlacement);\n }\n\n const getTypographyVariant = (weight: string) => {\n switch (weight) {\n case \"very-thick\":\n return \"h4\";\n case \"thick\":\n return \"subtitle-large\";\n default:\n return \"label\";\n }\n };\n\n const renderLabel = () => {\n if (slotHasContent(this.el, \"label\")) {\n return (\n <div class=\"ic-divider-label-container\">\n <slot name=\"label\"></slot>\n </div>\n );\n } else if (isPropDefined(label)) {\n return (\n <ic-typography\n class=\"ic-divider-label\"\n variant={getTypographyVariant(weight)}\n >\n <p>{label}</p>\n </ic-typography>\n );\n }\n return null;\n };\n\n return (\n <Host\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n [`ic-divider-monochrome`]: monochrome,\n [`ic-divider-${orientation}`]: true,\n [`ic-divider-${weight}`]: true,\n [`ic-divider-${borderStyle}`]: true,\n }}\n {...((orientation === \"vertical\" ||\n (!!renderLabel() && !!isPropDefined(labelPlacement))) && {\n \"aria-orientation\": orientation,\n role: \"separator\",\n })}\n >\n {orientation === \"horizontal\" &&\n (!renderLabel() || !isPropDefined(labelPlacement)) && <hr />}\n {!!isPropDefined(labelPlacement) && !!renderLabel() && renderLabel()}\n {orientation === \"vertical\" &&\n (!renderLabel() || !isPropDefined(labelPlacement)) && (\n <div class=\"vertical-divider\"></div>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"2GAAA,MAAMA,EAAe,8uW,MCkCRC,EAAO,M,8CAG4BC,I,iBAKP,Q,yCAUY,S,gBAGpB,M,iBAKM,a,WAK8B,U,YAKhC,M,CAGnC,kBAAAC,CAAmBC,GACjBC,KAAKC,gBAAkBF,EAAGG,OAAOC,I,CAG3B,qBAAAC,GACN,MAAMC,EACJL,KAAKM,GAAGC,cAAcC,UAAUC,SAAS,mBAC3C,MAAMC,EACJV,KAAKM,GAAGC,cAAcA,cAAcC,UAAUC,SAAS,kBAEzD,GACET,KAAKM,GAAGC,cAAcI,UAAY,sBACjCN,GAAmBK,EACpB,CACAV,KAAKM,GAAGE,UAAUI,IAAI,8BACtB,GAAIZ,KAAKC,kBAAoB,QAAS,CACpCD,KAAKa,MAAQ,M,KACR,CACLb,KAAKa,MAAQ,O,GAKnB,mBAAAC,GACEd,KAAKI,uB,CAGP,MAAAW,GACE,MAAMC,YACJA,EAAWC,MACXA,EAAKC,eACLA,EAAcC,WACdA,EAAUC,YACVA,EAAWC,OACXA,GACErB,KAEJ,MAAMa,MAAEA,GAAUb,KAElB,MAAMsB,EACJC,IAEAC,QAAQC,MACN,GACEF,EAAUG,OAAO,GAAGC,cAAgBJ,EAAUK,MAAM,8CACVR,oDAC7C,EAGH,IACIF,IAAmB,QAAUA,IAAmB,UAChDE,IAAgB,aAChBF,IAAmB,OAASA,IAAmB,WAC/CE,IAAgB,aAClB,CACAE,EAAuBJ,E,CAGzB,MAAMW,EAAwBR,IAC5B,OAAQA,GACN,IAAK,aACH,MAAO,KACT,IAAK,QACH,MAAO,iBACT,QACE,MAAO,Q,EAIb,MAAMS,EAAc,KAClB,GAAIC,EAAe/B,KAAKM,GAAI,SAAU,CACpC,OACE0B,EAAA,OAAKC,MAAM,8BACTD,EAAA,QAAME,KAAK,U,MAGV,GAAIC,EAAclB,GAAQ,CAC/B,OACEe,EAAA,iBACEC,MAAM,mBACNG,QAASP,EAAqBR,IAE9BW,EAAA,SAAIf,G,CAIV,OAAO,IAAI,EAGb,OACEe,EAACK,EAAIC,OAAAC,OAAA,CACHN,MAAO,CACL,CAAC,YAAYpB,KAAUA,IAAU,UACjC,CAAC,yBAA0BM,EAC3B,CAAC,cAAcC,KAAgB,KAC/B,CAAC,cAAcC,KAAW,KAC1B,CAAC,cAAcL,KAAgB,QAE3BI,IAAgB,cACjBU,OAAmBK,EAAcjB,KAAqB,CACzD,mBAAoBE,EACpBoB,KAAM,cAGPpB,IAAgB,gBACbU,MAAkBK,EAAcjB,KAAoBc,EAAA,aACrDG,EAAcjB,MAAqBY,KAAiBA,IACtDV,IAAgB,cACbU,MAAkBK,EAAcjB,KAChCc,EAAA,OAAKC,MAAM,qB"}
@@ -0,0 +1,2 @@
1
+ import{r as s,h as i,H as t,g as h}from"./p-6b5e91e2.js";import{D as e,e as a,f as r}from"./p-cda4aca9.js";const l=":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 c=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.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=()=>{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);return this.collapsedBreadcrumbWrapper};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=()=>{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<=e.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)};this.deviceSize=e.XL;this.expandedBreadcrumbs=false;this.backBreadcrumbOnly=false;this.collapsed=false;this.monochrome=false;this.theme="inherit"}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{r(this.runResizeObserver)}if(this.collapsed&&s.length>2){if(a()===e.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,{class:{"ic-breadcrumb-group-back":this.backBreadcrumbOnly,"ic-breadcrumb-group-collapsed":this.collapsed,[`ic-theme-${this.theme}`]:this.theme!=="inherit"}},i("nav",{"aria-label":"breadcrumbs"},i("ol",null,i("slot",null))))}get el(){return h(this)}static get watchers(){return{backBreadcrumbOnly:["watchBackBreadcrumbHandler"],collapsed:["watchCollapsedHandler"],monochrome:["watchMonochromeHandler"],theme:["watchThemeHandler"]}}};c.style=l;export{c as ic_breadcrumb_group};
2
+ //# sourceMappingURL=p-b260b967.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icBreadcrumbGroupCss","BreadcrumbGroup","this","ADD_CLASS_DELAY","IC_BREADCRUMB","resizeObserver","SHOW_BACK_ICON","setBreadcrumbTheme","allBreadcrumbs","Array","from","el","querySelectorAll","forEach","breadcrumb","theme","setBreadcrumbMonochrome","monochrome","setBackBreadcrumb","backBreadcrumbOnly","setLastParentCollapsedBackBreadcrumb","revertLastParentCollapsedBreadcrumb","setBackBreadcrumbAttr","lastParentBreadcrumb","classList","add","setAttribute","getLastParentBreadcrumb","length","breadcrumbs","setDefaultBreadcrumbs","setCollapsed","firstBreadcrumb","collapsedBreadcrumbs","remove","collapsed","renderCollapsedBreadcrumb","splice","filter","contains","insertAdjacentElement","collapsedBreadcrumbWrapper","clickHandler","handleHiddenCollapsedBreadcrumbs","document","createElement","collapsedBreadcrumbEl","ariaLabel","id","innerText","className","ariaDescribed","addEventListener","append","setTimeout","removeVisuallyHiddenClass","expandedBreadcrumbs","setFocus","transitionendHandler","event","propertyName","target","resizeObserverCallback","currSize","deviceSize","DEVICE_SIZES","S","runResizeObserver","ResizeObserver","getCurrentDeviceSize","observe","XL","watchBackBreadcrumbHandler","watchCollapsedHandler","watchMonochromeHandler","watchThemeHandler","componentWillLoad","checkResizeObserver","disconnectedCallback","removeEventListener","render","h","Host","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;\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 );\n\n allBreadcrumbs.forEach((breadcrumb: HTMLIcBreadcrumbElement) => {\n breadcrumb.theme = this.theme;\n });\n };\n\n private setBreadcrumbMonochrome = () => {\n const allBreadcrumbs = Array.from(\n this.el.querySelectorAll(this.IC_BREADCRUMB)\n );\n\n allBreadcrumbs.forEach((breadcrumb: HTMLIcBreadcrumbElement) => {\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 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 return this.collapsedBreadcrumbWrapper;\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 this.lastParentBreadcrumb.setAttribute(this.SHOW_BACK_ICON, \"false\");\n if (this.collapsed) {\n this.lastParentBreadcrumb.classList.add(\"hide\");\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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"}
@@ -0,0 +1,2 @@
1
+ import{r as e,c as i,h as t,H as r,g as a}from"./p-6b5e91e2.js";import{c as n}from"./p-f074ef5b.js";import{a as o,i as s,V as c,I as l}from"./p-cda4aca9.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}:host ::slotted(ic-typography){--ic-typography-color:var(--ic-alert-description)}.container{min-height:var(--ic-alert-height);border-radius:var(--ic-space-xxs) var(--ic-space-xxxs) var(--ic-space-xxxs)\n var(--ic-space-xxs);position:relative;display:flex;align-items:center}.container-neutral{background-color:var(--ic-alert-background-neutral);border:var(--ic-space-xxxs) solid var(--ic-alert-border-neutral)}.container-info{background-color:var(--ic-alert-background-info);border:var(--ic-space-xxxs) solid var(--ic-alert-border-info)}.container-warning{background-color:var(--ic-alert-background-warning);border:var(--ic-space-xxxs) solid var(--ic-alert-border-warning)}.container-error{background-color:var(--ic-alert-background-error);border:var(--ic-space-xxxs) solid var(--ic-alert-border-error)}.container-success{background-color:var(--ic-alert-background-success);border:var(--ic-space-xxxs) solid var(--ic-alert-border-success)}.alert-icon-container{height:100%;display:flex;align-items:center}.divider{height:100%;width:var(--ic-space-xs);border-radius:var(--ic-space-xxxs) 0 0 var(--ic-space-xxxs);position:absolute}.divider-neutral{background-color:var(--ic-alert-status-type-neutral)}.divider-info{background-color:var(--ic-alert-status-type-info)}.divider-warning{background-color:var(--ic-alert-status-type-warning)}.divider-error{background-color:var(--ic-alert-status-type-error)}.divider-success{background-color:var(--ic-alert-status-type-success)}.alert-icon{height:var(--ic-space-lg);width:1.375rem;margin-left:1.125rem}.icon-placeholder{margin-left:var(--ic-space-xs)}.alert-icon>svg{height:var(--ic-space-lg);width:var(--ic-space-lg);display:inline-block}:host([showdefaulticon="false"]) .icon-neutral{visibility:hidden;width:0;margin-left:0.625rem}.icon-neutral>svg,::slotted(svg){height:var(--ic-space-lg);width:var(--ic-space-lg);display:inline-block;fill:var(--ic-alert-icon-neutral)}:host([variant="info"]) .alert-icon svg{fill:var(--ic-alert-icon-info)}:host([variant="warning"]) .alert-icon svg{fill:var(--ic-alert-icon-warning)}:host([variant="error"]) .alert-icon svg{fill:var(--ic-alert-icon-error)}:host([variant="success"]) .alert-icon svg{fill:var(--ic-alert-icon-success)}.alert-content{display:flex;align-items:center;margin-left:0.625rem;width:100%}.alert-message{display:flex;align-items:center;padding:var(--ic-space-xs) var(--ic-space-xs) var(--ic-space-xs) 0;flex:1;--ic-typography-color:var(--ic-alert-description)}.alert-message-title-above{display:inline}.alert-title{margin-right:var(--ic-space-xs);--ic-typography-color:var(--ic-alert-title)}.alert-title-above{white-space:normal}.alert-action-container{margin-right:var(--ic-space-xs);display:flex;align-items:center}.dismiss-icon{margin-right:var(--ic-space-xxxs);margin-left:-0.375rem;padding:0.375rem;border:none;border-radius:50%;background-color:inherit;display:flex;align-items:center;justify-content:center}.dismiss-icon>svg{color:var(--ic-alert-icon-dismissible)}.dismiss-icon:hover{cursor:pointer}@media (max-width: 628px){.alert-content{display:flex;flex-direction:column;align-items:flex-start}.alert-message{display:flex;flex-direction:column;align-items:flex-start}.alert-title{white-space:normal}.alert-action-container{margin-bottom:var(--ic-space-xs)}}@media (forced-colors: active){.container{border:var(--ic-border-hc)}}';const p=class{constructor(t){e(this,t);this.icDismiss=i(this,"icDismiss",7);this.hostMutationObserver=null;this.dismissAction=()=>{this.icDismiss.emit()};this.alertTitleWrap=false;this.visible=true;this.announced=true;this.dismissible=false;this.heading="";this.message=undefined;this.showDefaultIcon=true;this.theme="inherit";this.titleAbove=false;this.variant="neutral"}disconnectedCallback(){var e;(e=this.hostMutationObserver)===null||e===void 0?void 0:e.disconnect()}componentDidLoad(){this.alertTitleShouldWrap();this.hostMutationObserver=new MutationObserver((e=>o(e,"action",this)));this.hostMutationObserver.observe(this.el,{childList:true})}handleClick(){this.visible=!this.visible}alertTitleShouldWrap(){var e;const i=(e=this.el.shadowRoot.querySelector(".alert-title"))===null||e===void 0?void 0:e.clientHeight;if(i>24)this.alertTitleWrap=true}render(){const{variant:e,heading:i,message:a,titleAbove:o,dismissible:d,announced:p,visible:u,showDefaultIcon:b,theme:h}=this;return u&&t(r,{role:p?"alert":null,class:{[l.Dark]:true,[`ic-theme-${h}`]:h!=="inherit"}},t("div",{class:{["container"]:true,[`container-${e}`]:true}},t("div",{class:"alert-icon-container"},t("div",{class:{["divider"]:true,[`divider-${e}`]:true}}),e==="neutral"?s(this.el,"neutral-icon")?t("div",{class:"alert-icon svg-container icon-neutral"},t("slot",{name:"neutral-icon"})):b?t("span",{class:{["alert-icon"]:true,["svg-container"]:true,[`icon-${e}`]:true},innerHTML:c[e].icon}):t("div",{class:"icon-placeholder"}):t("span",{class:{["alert-icon"]:true,["svg-container"]:true,[`icon-${e}`]:true},innerHTML:c[e].icon})),t("div",{class:"alert-content"},t("div",{class:{["alert-message"]:true,["alert-message-title-above"]:o||this.alertTitleWrap}},i&&t("ic-typography",{class:{["alert-title"]:true,["alert-title-above"]:o||this.alertTitleWrap},variant:"subtitle-large"},t("p",null,i)),t("slot",{name:"message"},t("ic-typography",{variant:"body"},a))),s(this.el,"action")&&t("div",{class:"alert-action-container"},t("slot",{name:"action"}))),t("div",{class:"dismiss-icon-container"},d&&t("ic-button",{class:{["svg-container"]:true,["dismiss-icon"]:true},innerHTML:n,onClick:this.dismissAction,variant:"icon",theme:"dark",title:"Dismiss"}))))}get el(){return a(this)}};p.style=d;export{p as ic_alert};
2
+ //# sourceMappingURL=p-b404b307.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icAlertCss","Alert","this","hostMutationObserver","dismissAction","icDismiss","emit","disconnectedCallback","_a","disconnect","componentDidLoad","alertTitleShouldWrap","MutationObserver","mutationList","renderDynamicChildSlots","observe","el","childList","handleClick","visible","titleHeight","shadowRoot","querySelector","clientHeight","alertTitleWrap","render","variant","heading","message","titleAbove","dismissible","announced","showDefaultIcon","theme","h","Host","role","class","IcBrandForegroundEnum","Dark","isSlotUsed","name","innerHTML","VARIANT_ICONS","icon","closeIcon","onClick","title"],"sources":["src/components/ic-alert/ic-alert.css?tag=ic-alert&encapsulation=shadow","src/components/ic-alert/ic-alert.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: block;\n}\n\n:host ::slotted(ic-typography) {\n --ic-typography-color: var(--ic-alert-description);\n}\n\n.container {\n min-height: var(--ic-alert-height);\n border-radius: var(--ic-space-xxs) var(--ic-space-xxxs) var(--ic-space-xxxs)\n var(--ic-space-xxs);\n position: relative;\n display: flex;\n align-items: center;\n}\n\n.container-neutral {\n background-color: var(--ic-alert-background-neutral);\n border: var(--ic-space-xxxs) solid var(--ic-alert-border-neutral);\n}\n\n.container-info {\n background-color: var(--ic-alert-background-info);\n border: var(--ic-space-xxxs) solid var(--ic-alert-border-info);\n}\n\n.container-warning {\n background-color: var(--ic-alert-background-warning);\n border: var(--ic-space-xxxs) solid var(--ic-alert-border-warning);\n}\n\n.container-error {\n background-color: var(--ic-alert-background-error);\n border: var(--ic-space-xxxs) solid var(--ic-alert-border-error);\n}\n\n.container-success {\n background-color: var(--ic-alert-background-success);\n border: var(--ic-space-xxxs) solid var(--ic-alert-border-success);\n}\n\n.alert-icon-container {\n height: 100%;\n display: flex;\n align-items: center;\n}\n\n.divider {\n height: 100%;\n width: var(--ic-space-xs);\n border-radius: var(--ic-space-xxxs) 0 0 var(--ic-space-xxxs);\n position: absolute;\n}\n\n.divider-neutral {\n background-color: var(--ic-alert-status-type-neutral);\n}\n\n.divider-info {\n background-color: var(--ic-alert-status-type-info);\n}\n\n.divider-warning {\n background-color: var(--ic-alert-status-type-warning);\n}\n\n.divider-error {\n background-color: var(--ic-alert-status-type-error);\n}\n\n.divider-success {\n background-color: var(--ic-alert-status-type-success);\n}\n\n.alert-icon {\n height: var(--ic-space-lg);\n width: 1.375rem;\n margin-left: 1.125rem;\n}\n\n.icon-placeholder {\n margin-left: var(--ic-space-xs);\n}\n\n.alert-icon > svg {\n height: var(--ic-space-lg);\n width: var(--ic-space-lg);\n display: inline-block;\n}\n\n/* required for Gatsby as prop does not seem to work when set to false */\n:host([showdefaulticon=\"false\"]) .icon-neutral {\n visibility: hidden;\n width: 0;\n margin-left: 0.625rem;\n}\n\n.icon-neutral > svg,\n::slotted(svg) {\n height: var(--ic-space-lg);\n width: var(--ic-space-lg);\n display: inline-block;\n fill: var(--ic-alert-icon-neutral);\n}\n\n:host([variant=\"info\"]) .alert-icon svg {\n fill: var(--ic-alert-icon-info);\n}\n\n:host([variant=\"warning\"]) .alert-icon svg {\n fill: var(--ic-alert-icon-warning);\n}\n\n:host([variant=\"error\"]) .alert-icon svg {\n fill: var(--ic-alert-icon-error);\n}\n\n:host([variant=\"success\"]) .alert-icon svg {\n fill: var(--ic-alert-icon-success);\n}\n\n.alert-content {\n display: flex;\n align-items: center;\n margin-left: 0.625rem;\n width: 100%;\n}\n\n.alert-message {\n display: flex;\n align-items: center;\n padding: var(--ic-space-xs) var(--ic-space-xs) var(--ic-space-xs) 0;\n flex: 1;\n --ic-typography-color: var(--ic-alert-description);\n}\n\n.alert-message-title-above {\n display: inline;\n}\n\n.alert-title {\n margin-right: var(--ic-space-xs);\n --ic-typography-color: var(--ic-alert-title);\n}\n\n.alert-title-above {\n white-space: normal;\n}\n\n.alert-action-container {\n margin-right: var(--ic-space-xs);\n display: flex;\n align-items: center;\n}\n\n.dismiss-icon {\n margin-right: var(--ic-space-xxxs);\n margin-left: -0.375rem;\n padding: 0.375rem;\n border: none;\n border-radius: 50%;\n background-color: inherit;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.dismiss-icon > svg {\n color: var(--ic-alert-icon-dismissible);\n}\n\n.dismiss-icon:hover {\n cursor: pointer;\n}\n\n@media (max-width: 628px) {\n .alert-content {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n }\n\n .alert-message {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n }\n\n .alert-title {\n white-space: normal;\n }\n\n .alert-action-container {\n margin-bottom: var(--ic-space-xs);\n }\n}\n\n@media (forced-colors: active) {\n .container {\n border: var(--ic-border-hc);\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n State,\n Listen,\n Prop,\n h,\n} from \"@stencil/core\";\nimport closeIcon from \"../../assets/close-icon.svg\";\nimport { isSlotUsed, renderDynamicChildSlots } from \"../../utils/helpers\";\nimport {\n IcBrandForegroundEnum,\n IcStatusVariants,\n IcThemeMode,\n} from \"../../utils/types\";\nimport { VARIANT_ICONS } from \"../../utils/constants\";\n\n/**\n * @slot message - Content is placed to the right of the title.\n * @slot action - Content is placed to the right of the message.\n * @slot neutral-icon - A custom neutral icon is placed to the left of the title. This will override the default icon if used.\n */\n@Component({\n tag: \"ic-alert\",\n styleUrl: \"ic-alert.css\",\n shadow: true,\n})\nexport class Alert {\n private hostMutationObserver: MutationObserver = null;\n\n @Element() el: HTMLIcAlertElement;\n\n @State() alertTitleWrap: boolean = false;\n @State() visible: boolean = true;\n\n /**\n * If `true`, the alert will have the 'alert' ARIA role and will be announced to screen readers.\n */\n @Prop() announced?: boolean = true;\n\n /**\n * If `true`, the alert will have a close icon at the end to dismiss it.\n */\n @Prop() dismissible?: boolean = false;\n\n /**\n * The optional title to display at the start of the alert.\n */\n @Prop() heading?: string = \"\";\n\n /**\n * The main body message of the alert.\n */\n @Prop() message?: string;\n\n /**\n * If `true`, the default icon for the neutral variant will appear on the left of the alert.\n */\n @Prop() showDefaultIcon: boolean = true;\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 * If `true`, the title and message will appear above and below instead of inline.\n */\n @Prop() titleAbove?: boolean = false;\n\n /**\n * The variant of the alert which will be rendered.\n */\n @Prop() variant?: IcStatusVariants = \"neutral\";\n\n /**\n * Is emitted when the user dismisses the alert.\n */\n @Event() icDismiss: EventEmitter<void>;\n\n disconnectedCallback(): void {\n this.hostMutationObserver?.disconnect();\n }\n\n componentDidLoad(): void {\n this.alertTitleShouldWrap();\n\n this.hostMutationObserver = new MutationObserver((mutationList) =>\n renderDynamicChildSlots(mutationList, \"action\", this)\n );\n this.hostMutationObserver.observe(this.el, {\n childList: true,\n });\n }\n\n @Listen(\"icDismiss\", { capture: true })\n handleClick(): void {\n this.visible = !this.visible;\n }\n\n private dismissAction = (): void => {\n this.icDismiss.emit();\n };\n\n private alertTitleShouldWrap() {\n const titleHeight =\n this.el.shadowRoot.querySelector(\".alert-title\")?.clientHeight;\n if (titleHeight > 24) this.alertTitleWrap = true;\n }\n\n render() {\n const {\n variant,\n heading,\n message,\n titleAbove,\n dismissible,\n announced,\n visible,\n showDefaultIcon,\n theme,\n } = this;\n\n return (\n visible && (\n <Host\n role={announced ? \"alert\" : null}\n class={{\n [IcBrandForegroundEnum.Dark]: true,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n <div\n class={{\n [\"container\"]: true,\n [`container-${variant}`]: true,\n }}\n >\n <div class=\"alert-icon-container\">\n <div\n class={{\n [\"divider\"]: true,\n [`divider-${variant}`]: true,\n }}\n ></div>\n {variant === \"neutral\" ? (\n isSlotUsed(this.el, \"neutral-icon\") ? (\n <div class=\"alert-icon svg-container icon-neutral\">\n <slot name=\"neutral-icon\"></slot>\n </div>\n ) : showDefaultIcon ? (\n <span\n class={{\n [\"alert-icon\"]: true,\n [\"svg-container\"]: true,\n [`icon-${variant}`]: true,\n }}\n innerHTML={VARIANT_ICONS[variant].icon}\n ></span>\n ) : (\n <div class=\"icon-placeholder\"></div>\n )\n ) : (\n <span\n class={{\n [\"alert-icon\"]: true,\n [\"svg-container\"]: true,\n [`icon-${variant}`]: true,\n }}\n innerHTML={VARIANT_ICONS[variant].icon}\n ></span>\n )}\n </div>\n <div class=\"alert-content\">\n <div\n class={{\n [\"alert-message\"]: true,\n [\"alert-message-title-above\"]:\n titleAbove || this.alertTitleWrap,\n }}\n >\n {heading && (\n <ic-typography\n class={{\n [\"alert-title\"]: true,\n [\"alert-title-above\"]: titleAbove || this.alertTitleWrap,\n }}\n variant=\"subtitle-large\"\n >\n <p>{heading}</p>\n </ic-typography>\n )}\n <slot name=\"message\">\n <ic-typography variant=\"body\">{message}</ic-typography>\n </slot>\n </div>\n {isSlotUsed(this.el, \"action\") && (\n <div class=\"alert-action-container\">\n <slot name=\"action\" />\n </div>\n )}\n </div>\n <div class=\"dismiss-icon-container\">\n {dismissible && (\n <ic-button\n class={{\n [\"svg-container\"]: true,\n [\"dismiss-icon\"]: true,\n }}\n innerHTML={closeIcon}\n onClick={this.dismissAction}\n variant=\"icon\"\n theme=\"dark\"\n title=\"Dismiss\"\n ></ic-button>\n )}\n </div>\n </div>\n </Host>\n )\n );\n }\n}\n"],"mappings":"6JAAA,MAAMA,EAAa,soL,MC8BNC,EAAK,M,8DACRC,KAAAC,qBAAyC,KAwEzCD,KAAAE,cAAgB,KACtBF,KAAKG,UAAUC,MAAM,E,oBArEY,M,aACP,K,eAKE,K,iBAKE,M,aAKL,G,4CAUQ,K,WAKL,U,gBAKC,M,aAKM,S,CAOrC,oBAAAC,G,OACEC,EAAAN,KAAKC,wBAAoB,MAAAK,SAAA,SAAAA,EAAEC,Y,CAG7B,gBAAAC,GACER,KAAKS,uBAELT,KAAKC,qBAAuB,IAAIS,kBAAkBC,GAChDC,EAAwBD,EAAc,SAAUX,QAElDA,KAAKC,qBAAqBY,QAAQb,KAAKc,GAAI,CACzCC,UAAW,M,CAKf,WAAAC,GACEhB,KAAKiB,SAAWjB,KAAKiB,O,CAOf,oBAAAR,G,MACN,MAAMS,GACJZ,EAAAN,KAAKc,GAAGK,WAAWC,cAAc,mBAAe,MAAAd,SAAA,SAAAA,EAAEe,aACpD,GAAIH,EAAc,GAAIlB,KAAKsB,eAAiB,I,CAG9C,MAAAC,GACE,MAAMC,QACJA,EAAOC,QACPA,EAAOC,QACPA,EAAOC,WACPA,EAAUC,YACVA,EAAWC,UACXA,EAASZ,QACTA,EAAOa,gBACPA,EAAeC,MACfA,GACE/B,KAEJ,OACEiB,GACEe,EAACC,EAAI,CACHC,KAAML,EAAY,QAAU,KAC5BM,MAAO,CACL,CAACC,EAAsBC,MAAO,KAC9B,CAAC,YAAYN,KAAUA,IAAU,YAGnCC,EAAA,OACEG,MAAO,CACL,CAAC,aAAc,KACf,CAAC,aAAaX,KAAY,OAG5BQ,EAAA,OAAKG,MAAM,wBACTH,EAAA,OACEG,MAAO,CACL,CAAC,WAAY,KACb,CAAC,WAAWX,KAAY,QAG3BA,IAAY,UACXc,EAAWtC,KAAKc,GAAI,gBAClBkB,EAAA,OAAKG,MAAM,yCACTH,EAAA,QAAMO,KAAK,kBAEXT,EACFE,EAAA,QACEG,MAAO,CACL,CAAC,cAAe,KAChB,CAAC,iBAAkB,KACnB,CAAC,QAAQX,KAAY,MAEvBgB,UAAWC,EAAcjB,GAASkB,OAGpCV,EAAA,OAAKG,MAAM,qBAGbH,EAAA,QACEG,MAAO,CACL,CAAC,cAAe,KAChB,CAAC,iBAAkB,KACnB,CAAC,QAAQX,KAAY,MAEvBgB,UAAWC,EAAcjB,GAASkB,QAIxCV,EAAA,OAAKG,MAAM,iBACTH,EAAA,OACEG,MAAO,CACL,CAAC,iBAAkB,KACnB,CAAC,6BACCR,GAAc3B,KAAKsB,iBAGtBG,GACCO,EAAA,iBACEG,MAAO,CACL,CAAC,eAAgB,KACjB,CAAC,qBAAsBR,GAAc3B,KAAKsB,gBAE5CE,QAAQ,kBAERQ,EAAA,SAAIP,IAGRO,EAAA,QAAMO,KAAK,WACTP,EAAA,iBAAeR,QAAQ,QAAQE,KAGlCY,EAAWtC,KAAKc,GAAI,WACnBkB,EAAA,OAAKG,MAAM,0BACTH,EAAA,QAAMO,KAAK,aAIjBP,EAAA,OAAKG,MAAM,0BACRP,GACCI,EAAA,aACEG,MAAO,CACL,CAAC,iBAAkB,KACnB,CAAC,gBAAiB,MAEpBK,UAAWG,EACXC,QAAS5C,KAAKE,cACdsB,QAAQ,OACRO,MAAM,OACNc,MAAM,c"}
@@ -0,0 +1,2 @@
1
+ import{r as t,c as i,h as a,H as s,g as e}from"./p-6b5e91e2.js";import{Q as n,O as o,i as r}from"./p-cda4aca9.js";const c=":host{display:block;position:fixed;top:0;left:0;width:100%;min-height:100% !important;background:rgb(0 0 0 / 60%);z-index:var(--ic-z-index-navigation-menu)}.popout-modal{position:absolute;inset:0}.popout-menu{position:fixed;top:0;right:0;width:16rem;bottom:0;background-color:var(--ic-top-navigation-menu-background);color:var(--ic-top-navigation-nav-item);--ic-typography-color:var(--ic-top-navigation-nav-item);box-shadow:var(--ic-elevation-overlay);overflow-y:auto;overflow-x:hidden}:host(.inline) .popout-menu{position:absolute}.menu-close-button-container{position:relative;left:11.875rem;padding:var(--ic-space-md) 0}.nav-group-first{padding-bottom:0}.menu-buttons-container{padding:var(--ic-space-sm) 0;border-bottom:var(--ic-border-width) solid var(--ic-architectural-200)}.menu-buttons-container-nav-item-above{margin-top:var(--ic-space-md);border-top:var(--ic-border-width) solid var(--ic-architectural-200)}.menu-status-version-container{display:flex;flex-wrap:wrap;gap:var(--ic-space-xs);padding:var(--ic-space-md) var(--ic-space-md) var(--ic-space-xl)}.status-version-no-buttons{border-top:var(--ic-space-1px) solid var(--ic-architectural-200)}.menu-status{background-color:var(--ic-status-tag-neutral);--ic-typography-color:var(--ic-status-tag-text);border-radius:var(--ic-space-md);width:-moz-fit-content;width:fit-content;padding:var(--ic-space-xxs) var(--ic-space-sm)}.menu-version{border-radius:var(--ic-space-md);background-color:var(--ic-status-tag-outlined-background-neutral);--ic-typography-color:var(--ic-color-text-primary-light);padding:var(--ic-space-xxs) var(--ic-space-sm)}.menu-status-text,.menu-version-text{overflow-wrap:break-word}.navigation-landmark-text{position:absolute;width:var(--ic-space-1px);height:var(--ic-space-1px);padding:0;margin:calc(-1 * var(--ic-space-1px));overflow:hidden}";const l=class{constructor(a){t(this,a);this.icNavigationMenuClose=i(this,"icNavigationMenuClose",7);this.closeButton=null;this.hasButtons=false;this.hasNavigation=false;this.lastTabStop=null;this.navGroupFirst=false;this.navItemAboveButtons=false;this.closeMenu=()=>{this.icNavigationMenuClose.emit()};this.focusCloseButton=()=>{if(this.closeButton.focus){this.closeButton.focus()}};this.focusLastTabStop=()=>{let t;if(this.lastTabStop!==null){switch(this.lastTabStop.tagName){case"IC-NAVIGATION-BUTTON":case"IC-NAVIGATION-ITEM":case"IC-NAVIGATION-GROUP":t=this.lastTabStop;t.focus();break;case"A":this.lastTabStop.focus();break}}};this.status="";this.theme="inherit";this.version=""}componentWillLoad(){this.navBarEl=document.querySelector("ic-top-navigation");const t=n(this.el,"navigation");if(t){this.hasNavigation=true;const i=t[t.length-1];if(i.tagName==="IC-NAVIGATION-ITEM"){this.navItemAboveButtons=true}const a=t[0];if(a.tagName==="IC-NAVIGATION-GROUP"){this.navGroupFirst=true}}const i=n(this.el,"buttons");if(i!==null){this.hasButtons=true;this.lastTabStop=i[i.length-1]}else{if(this.hasNavigation){const i=t[t.length-1];const a=o(i,"navigation-item");if(a!==null){this.lastTabStop=a}else{this.lastTabStop=i}}}}componentDidLoad(){this.focusCloseButton()}componentWillRender(){this.hasNavigation=r(this.el,"navigation");this.hasButtons=r(this.el,"buttons")}navItemClickHandler(){this.closeMenu()}handleKeyDown(t){if(t.key==="Tab"){if(t.shiftKey){if(document.activeElement===this.navBarEl){t.preventDefault();this.focusLastTabStop()}}else if(document.activeElement===this.lastTabStop||this.lastTabStop===null){t.preventDefault();this.focusCloseButton()}}else if(t.key==="Escape"){this.closeMenu()}}render(){return a(s,{class:{[`ic-theme-${this.theme}`]:this.theme!=="inherit"}},a("div",{class:"popout-modal",onClick:this.closeMenu}),a("div",{class:"popout-menu",role:"dialog","aria-modal":"true","aria-label":`${this.hasNavigation?"Navigation":"App"} menu`},a("span",{"aria-hidden":"true",id:"navigation-landmark-text",class:"navigation-landmark-text"},"Main navigation"),a("nav",{"aria-labelledby":"navigation-landmark-text","aria-hidden":this.hasNavigation?"false":"true"},a("div",{class:{["menu-close-button-container"]:true,["nav-group-first"]:this.navGroupFirst}},a("ic-button",{ref:t=>this.closeButton=t,id:"menu-close-button",class:"menu-close-button",variant:"icon",size:"large","aria-label":`Close ${this.hasNavigation?"navigation":"app"} menu`,onClick:this.closeMenu},a("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},a("path",{d:"M14 1.41L12.59 0L7 5.59L1.41 0L0 1.41L5.59 7L0 12.59L1.41 14L7 8.41L12.59 14L14 12.59L8.41 7L14 1.41Z"})))),this.hasNavigation&&a("slot",{name:"navigation"})),this.hasButtons&&a("div",{class:{["menu-buttons-container"]:true,["menu-buttons-container-nav-item-above"]:this.navItemAboveButtons}},a("slot",{name:"buttons"})),(this.status!==""||this.version!=="")&&a("div",{class:{["menu-status-version-container"]:true,["status-version-no-buttons"]:!this.hasButtons}},this.status!==""&&a("div",{class:"menu-status"},a("ic-typography",{variant:"label-uppercase","aria-label":"app tag",class:"menu-status-text"},this.status)),this.version!==""&&a("div",{class:"menu-version"},a("ic-typography",{variant:"label",class:"menu-version-text","aria-label":"app version"},this.version)))))}get el(){return e(this)}};l.style=c;export{l as ic_navigation_menu};
2
+ //# sourceMappingURL=p-b6ce9ca3.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icNavigationMenuCss","NavigationMenu","this","closeButton","hasButtons","hasNavigation","lastTabStop","navGroupFirst","navItemAboveButtons","closeMenu","icNavigationMenuClose","emit","focusCloseButton","focus","focusLastTabStop","focusEl","tagName","componentWillLoad","navBarEl","document","querySelector","navigationEls","getSlotContent","el","lastEl","length","firstEl","buttonContent","slotContent","getSlot","componentDidLoad","componentWillRender","isSlotUsed","navItemClickHandler","handleKeyDown","ev","key","shiftKey","activeElement","preventDefault","render","h","Host","class","theme","onClick","role","id","ref","variant","size","width","height","viewBox","fill","xmlns","d","name","status","version"],"sources":["src/components/ic-navigation-menu/ic-navigation-menu.css?tag=ic-navigation-menu&encapsulation=shadow","src/components/ic-navigation-menu/ic-navigation-menu.tsx"],"sourcesContent":["/**\n * @prop --ic-z-index-navigation-menu: z-index of navigation menu\n */\n\n:host {\n display: block;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n min-height: 100% !important;\n background: rgb(0 0 0 / 60%);\n z-index: var(--ic-z-index-navigation-menu);\n}\n\n.popout-modal {\n position: absolute;\n inset: 0;\n}\n\n.popout-menu {\n position: fixed;\n top: 0;\n right: 0;\n width: 16rem;\n bottom: 0;\n background-color: var(--ic-top-navigation-menu-background);\n color: var(--ic-top-navigation-nav-item);\n\n --ic-typography-color: var(--ic-top-navigation-nav-item);\n\n box-shadow: var(--ic-elevation-overlay);\n overflow-y: auto;\n overflow-x: hidden;\n}\n\n:host(.inline) .popout-menu {\n position: absolute;\n}\n\n.menu-close-button-container {\n position: relative;\n left: 11.875rem;\n padding: var(--ic-space-md) 0;\n}\n\n.nav-group-first {\n padding-bottom: 0;\n}\n\n.menu-buttons-container {\n padding: var(--ic-space-sm) 0;\n border-bottom: var(--ic-border-width) solid var(--ic-architectural-200);\n}\n\n.menu-buttons-container-nav-item-above {\n margin-top: var(--ic-space-md);\n border-top: var(--ic-border-width) solid var(--ic-architectural-200);\n}\n\n.menu-status-version-container {\n display: flex;\n flex-wrap: wrap;\n gap: var(--ic-space-xs);\n padding: var(--ic-space-md) var(--ic-space-md) var(--ic-space-xl);\n}\n\n.status-version-no-buttons {\n border-top: var(--ic-space-1px) solid var(--ic-architectural-200);\n}\n\n.menu-status {\n background-color: var(--ic-status-tag-neutral);\n\n --ic-typography-color: var(--ic-status-tag-text);\n\n border-radius: var(--ic-space-md);\n width: fit-content;\n padding: var(--ic-space-xxs) var(--ic-space-sm);\n}\n\n.menu-version {\n border-radius: var(--ic-space-md);\n background-color: var(--ic-status-tag-outlined-background-neutral);\n\n --ic-typography-color: var(--ic-color-text-primary-light);\n\n padding: var(--ic-space-xxs) var(--ic-space-sm);\n}\n\n.menu-status-text,\n.menu-version-text {\n overflow-wrap: break-word;\n}\n\n.navigation-landmark-text {\n position: absolute;\n width: var(--ic-space-1px);\n height: var(--ic-space-1px);\n padding: 0;\n margin: calc(-1 * var(--ic-space-1px));\n overflow: hidden;\n}\n","import {\n Component,\n Element,\n Host,\n Prop,\n h,\n Event,\n EventEmitter,\n Listen,\n} from \"@stencil/core\";\nimport { IcThemeMode } from \"../../utils/types\";\nimport { getSlot, getSlotContent, isSlotUsed } from \"../../utils/helpers\";\n\n/**\n * @slot navigation - Content will be rendered at top of panel.\n * @slot buttons - Content will be rendered above version info and below navigation.\n */\n@Component({\n tag: \"ic-navigation-menu\",\n styleUrl: \"ic-navigation-menu.css\",\n shadow: true,\n})\nexport class NavigationMenu {\n private closeButton: HTMLIcButtonElement = null;\n private hasButtons: boolean = false;\n private hasNavigation: boolean = false;\n private lastTabStop: HTMLElement = null;\n private navBarEl: HTMLIcTopNavigationElement;\n private navGroupFirst: boolean = false;\n private navItemAboveButtons: boolean = false;\n\n @Element() el: HTMLIcNavigationMenuElement;\n\n /**\n * The status info to display.\n */\n @Prop() status: 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 * The version info to display.\n */\n @Prop() version: string = \"\";\n\n /**\n * @internal - Emitted when the menu is closed.\n */\n @Event() icNavigationMenuClose: EventEmitter<void>;\n\n componentWillLoad(): void {\n this.navBarEl = document.querySelector(\"ic-top-navigation\");\n const navigationEls = getSlotContent(this.el, \"navigation\");\n if (navigationEls) {\n this.hasNavigation = true;\n const lastEl = navigationEls[navigationEls.length - 1] as HTMLElement;\n if (lastEl.tagName === \"IC-NAVIGATION-ITEM\") {\n this.navItemAboveButtons = true;\n }\n const firstEl = navigationEls[0] as HTMLElement;\n if (firstEl.tagName === \"IC-NAVIGATION-GROUP\") {\n this.navGroupFirst = true;\n }\n }\n const buttonContent = getSlotContent(this.el, \"buttons\");\n\n if (buttonContent !== null) {\n this.hasButtons = true;\n this.lastTabStop = buttonContent[buttonContent.length - 1] as HTMLElement;\n } else {\n if (this.hasNavigation) {\n const lastEl = navigationEls[navigationEls.length - 1] as HTMLElement;\n //check for slotted content i.e. react router link\n const slotContent = getSlot(lastEl, \"navigation-item\");\n if (slotContent !== null) {\n this.lastTabStop = slotContent as HTMLElement;\n } else {\n this.lastTabStop = lastEl;\n }\n }\n }\n }\n\n componentDidLoad(): void {\n this.focusCloseButton();\n }\n\n componentWillRender(): void {\n this.hasNavigation = isSlotUsed(this.el, \"navigation\");\n this.hasButtons = isSlotUsed(this.el, \"buttons\");\n }\n\n @Listen(\"navItemClicked\")\n navItemClickHandler(): void {\n this.closeMenu();\n }\n\n @Listen(\"keydown\", { target: \"document\" })\n handleKeyDown(ev: KeyboardEvent): void {\n if (ev.key === \"Tab\") {\n if (ev.shiftKey) {\n if (document.activeElement === this.navBarEl) {\n ev.preventDefault();\n this.focusLastTabStop();\n }\n } else if (\n document.activeElement === this.lastTabStop ||\n this.lastTabStop === null\n ) {\n ev.preventDefault();\n this.focusCloseButton();\n }\n } else if (ev.key === \"Escape\") {\n this.closeMenu();\n }\n }\n\n private closeMenu = () => {\n this.icNavigationMenuClose.emit();\n };\n\n private focusCloseButton = () => {\n if (this.closeButton.focus) {\n this.closeButton.focus();\n }\n };\n\n private focusLastTabStop = () => {\n let focusEl;\n if (this.lastTabStop !== null) {\n switch (this.lastTabStop.tagName) {\n case \"IC-NAVIGATION-BUTTON\":\n case \"IC-NAVIGATION-ITEM\":\n case \"IC-NAVIGATION-GROUP\":\n focusEl = this.lastTabStop as HTMLElement;\n focusEl.focus();\n break;\n case \"A\":\n this.lastTabStop.focus();\n break;\n }\n }\n };\n\n render() {\n return (\n <Host class={{ [`ic-theme-${this.theme}`]: this.theme !== \"inherit\" }}>\n <div class=\"popout-modal\" onClick={this.closeMenu}></div>\n <div\n class=\"popout-menu\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-label={`${this.hasNavigation ? \"Navigation\" : \"App\"} menu`}\n >\n <span\n aria-hidden=\"true\"\n id=\"navigation-landmark-text\"\n class=\"navigation-landmark-text\"\n >\n Main navigation\n </span>\n <nav\n aria-labelledby=\"navigation-landmark-text\"\n aria-hidden={this.hasNavigation ? \"false\" : \"true\"}\n >\n <div\n class={{\n [\"menu-close-button-container\"]: true,\n [\"nav-group-first\"]: this.navGroupFirst,\n }}\n >\n <ic-button\n ref={(el) => (this.closeButton = el)}\n id=\"menu-close-button\"\n class=\"menu-close-button\"\n variant=\"icon\"\n size=\"large\"\n aria-label={`Close ${\n this.hasNavigation ? \"navigation\" : \"app\"\n } menu`}\n onClick={this.closeMenu}\n >\n <svg\n width=\"14\"\n height=\"14\"\n viewBox=\"0 0 14 14\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path d=\"M14 1.41L12.59 0L7 5.59L1.41 0L0 1.41L5.59 7L0 12.59L1.41 14L7 8.41L12.59 14L14 12.59L8.41 7L14 1.41Z\" />\n </svg>\n </ic-button>\n </div>\n {this.hasNavigation && <slot name=\"navigation\"></slot>}\n </nav>\n {this.hasButtons && (\n <div\n class={{\n [\"menu-buttons-container\"]: true,\n [\"menu-buttons-container-nav-item-above\"]:\n this.navItemAboveButtons,\n }}\n >\n <slot name=\"buttons\"></slot>\n </div>\n )}\n {(this.status !== \"\" || this.version !== \"\") && (\n <div\n class={{\n [\"menu-status-version-container\"]: true,\n [\"status-version-no-buttons\"]: !this.hasButtons,\n }}\n >\n {this.status !== \"\" && (\n <div class=\"menu-status\">\n <ic-typography\n variant=\"label-uppercase\"\n aria-label=\"app tag\"\n class=\"menu-status-text\"\n >\n {this.status}\n </ic-typography>\n </div>\n )}\n {this.version !== \"\" && (\n <div class=\"menu-version\">\n <ic-typography\n variant=\"label\"\n class=\"menu-version-text\"\n aria-label=\"app version\"\n >\n {this.version}\n </ic-typography>\n </div>\n )}\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import{r as t,h as e,H as i,g as o}from"./p-6b5e91e2.js";import{i as s}from"./p-cda4aca9.js";const n='/*! 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}.label-container{--ic-typography-color:var(--ic-accordion-group-title-text);color:var(--ic-accordion-group-title-text);padding:var(--ic-space-xs);display:flex;justify-content:space-between;align-items:center}:host(.ic-accordion-group-small) .label-container{padding:var(--ic-space-xxs) var(--ic-space-xs)}:host(.ic-accordion-group-large) .label-container{padding:var(--ic-space-sm) var(--ic-space-xs)}';let a=0;const r=class{constructor(e){t(this,e);this.accordionGroupId=`ic-accordion-group-${a++}`;this.handleExpanded=()=>{if(this.areAllAccordionsOpen){this.expanded=false;this.accordions.forEach((t=>{t.expanded=this.expanded}))}else{this.expanded=true;this.accordions.forEach((t=>{t.expanded=this.expanded}))}this.setExpandedToAreAllAccordionsOpen()};this.linkAccordions=()=>{this.accordions.forEach((t=>{t.setAttribute("context-id",this.accordionGroupId)}))};this.setExpandedToAreAllAccordionsOpen=()=>{this.areAllAccordionsOpen=this.accordions.every((t=>!!t.expanded))};this.accordionOpenBtnText=()=>!this.areAllAccordionsOpen?"See all":"Hide all";this.accordions=undefined;this.areAllAccordionsOpen=undefined;this.accessibleButtonLabel="accordions";this.theme="inherit";this.expanded=false;this.label="";this.singleExpansion=false;this.size="medium"}watchThemeHandler(){this.accordions.forEach((t=>{t.theme=this.theme}))}watchExpandedHandler(){this.handleExpanded()}componentDidLoad(){const t=this.el.children;this.accordions=Array.from(t).filter((t=>t.tagName==="IC-ACCORDION"));this.linkAccordions();this.accordions.forEach((t=>{t.theme=this.theme}));this.accordions.forEach((t=>{t.size=this.size}));if(this.expanded){this.accordions.forEach((t=>{t.expanded=true}));this.setExpandedToAreAllAccordionsOpen()}else{this.setExpandedToAreAllAccordionsOpen();this.expanded=this.areAllAccordionsOpen}}handleAccordionClicked(t){if(!this.singleExpansion){this.setExpandedToAreAllAccordionsOpen()}else{this.accordions.forEach((e=>{if(e.expanded&&t.detail.id!==e.id){e.expanded=false}}))}}async setFocus(){const t=this.singleExpansion?this.accordions[0]:this.allButtonEl;t.setFocus()}render(){const{size:t,label:o,singleExpansion:n,accessibleButtonLabel:a,theme:r}=this;return e(i,{"context-id":this.accordionGroupId,class:{[`ic-accordion-group-${t}`]:true,["ic-accordion-group"]:true,[`ic-theme-${r}`]:r!=="inherit"}},e("div",{class:"label-container"},e("ic-typography",{variant:"h4"},e("h3",null,s(this.el,"label")?e("slot",{name:"label"}):o)),!n&&e("ic-button",{ref:t=>this.allButtonEl=t,onClick:this.handleExpanded,variant:"tertiary","aria-label":`${this.accordionOpenBtnText()} ${a}`},this.accordionOpenBtnText())),e("slot",null))}get el(){return o(this)}static get watchers(){return{theme:["watchThemeHandler"],expanded:["watchExpandedHandler"]}}};r.style=n;export{r as ic_accordion_group};
2
+ //# sourceMappingURL=p-b6e010f3.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icAccordionGroupCss","accordionGroupIds","AccordionGroup","this","accordionGroupId","handleExpanded","areAllAccordionsOpen","expanded","accordions","forEach","acc","setExpandedToAreAllAccordionsOpen","linkAccordions","accordion","setAttribute","every","accordionOpenBtnText","watchThemeHandler","theme","watchExpandedHandler","componentDidLoad","accordionDirectChildren","el","children","Array","from","filter","child","tagName","size","handleAccordionClicked","event","singleExpansion","detail","id","setFocus","focusEl","allButtonEl","render","label","accessibleButtonLabel","h","Host","class","variant","isSlotUsed","name","ref","onClick"],"sources":["src/components/ic-accordion-group/ic-accordion-group.css?tag=ic-accordion-group&encapsulation=shadow","src/components/ic-accordion-group/ic-accordion-group.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n.label-container {\n --ic-typography-color: var(--ic-accordion-group-title-text);\n color: var(--ic-accordion-group-title-text);\n padding: var(--ic-space-xs);\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n\n:host(.ic-accordion-group-small) .label-container {\n padding: var(--ic-space-xxs) var(--ic-space-xs);\n}\n\n:host(.ic-accordion-group-large) .label-container {\n padding: var(--ic-space-sm) var(--ic-space-xs);\n}\n","import {\n Component,\n Element,\n h,\n Host,\n Listen,\n Prop,\n State,\n Method,\n Watch,\n} from \"@stencil/core\";\nimport { IcSizes, IcThemeMode } from \"../../utils/types\";\nimport { isSlotUsed } from \"../../utils/helpers\";\n\nlet accordionGroupIds = 0;\n\n/**\n * @slot label - Content is placed as the accordion group title.\n */\n@Component({\n tag: \"ic-accordion-group\",\n styleUrl: \"ic-accordion-group.css\",\n shadow: true,\n})\nexport class AccordionGroup {\n private accordionGroupId = `ic-accordion-group-${accordionGroupIds++}`;\n private allButtonEl: HTMLIcButtonElement;\n\n @Element() el: HTMLIcAccordionGroupElement;\n\n @State() accordions: HTMLIcAccordionElement[];\n\n @State() areAllAccordionsOpen: boolean;\n\n /**\n * The accessible button label to provide more context to the 'See all/Hide all' button for screen reader users.\n */\n @Prop() accessibleButtonLabel: string = \"accordions\";\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.accordions.forEach((acc) => {\n acc.theme = this.theme;\n });\n }\n\n /**\n * If `true`, the accordion will load in an expanded state.\n */\n @Prop({ mutable: true }) expanded: boolean = false;\n @Watch(\"expanded\")\n watchExpandedHandler() {\n this.handleExpanded();\n }\n\n /**\n * The header for the accordion group.\n */\n @Prop() label: string = \"\";\n\n /**\n * If `true`, only one accordion will open at a time.\n */\n @Prop() singleExpansion: boolean = false;\n\n /**\n * The size of the accordion.\n */\n @Prop() size?: IcSizes = \"medium\";\n\n componentDidLoad(): void {\n const accordionDirectChildren = (this.el as HTMLElement).children;\n this.accordions = Array.from(accordionDirectChildren).filter(\n (child) => child.tagName === \"IC-ACCORDION\"\n ) as HTMLIcAccordionElement[];\n this.linkAccordions();\n this.accordions.forEach((acc) => {\n acc.theme = this.theme;\n });\n this.accordions.forEach((acc) => {\n acc.size = this.size;\n });\n if (this.expanded) {\n this.accordions.forEach((acc) => {\n acc.expanded = true;\n });\n this.setExpandedToAreAllAccordionsOpen();\n } else {\n this.setExpandedToAreAllAccordionsOpen();\n this.expanded = this.areAllAccordionsOpen;\n }\n }\n\n @Listen(\"accordionClicked\")\n handleAccordionClicked(event: CustomEvent): void {\n if (!this.singleExpansion) {\n // 'See all' should be visible until all accordions are open, then 'Hide all' should be visible\n this.setExpandedToAreAllAccordionsOpen();\n } else {\n this.accordions.forEach((acc) => {\n if (acc.expanded && event.detail.id !== acc.id) {\n acc.expanded = false;\n }\n });\n }\n }\n\n /**\n * Sets the focus on first focusable element in the accordion group. If the \"See/Hide all\" button is present, it will be focused.\n * Otherwise, the first accordion will be focused.\n */\n @Method()\n async setFocus(): Promise<void> {\n const focusEl = this.singleExpansion\n ? this.accordions[0]\n : this.allButtonEl;\n focusEl.setFocus();\n }\n\n private handleExpanded = () => {\n if (this.areAllAccordionsOpen) {\n this.expanded = false;\n this.accordions.forEach((acc) => {\n acc.expanded = this.expanded;\n });\n } else {\n this.expanded = true;\n this.accordions.forEach((acc) => {\n acc.expanded = this.expanded;\n });\n }\n this.setExpandedToAreAllAccordionsOpen();\n };\n\n private linkAccordions = () => {\n this.accordions.forEach((accordion) => {\n accordion.setAttribute(\"context-id\", this.accordionGroupId);\n });\n };\n\n private setExpandedToAreAllAccordionsOpen = () => {\n this.areAllAccordionsOpen = this.accordions.every(\n (accordion) => !!accordion.expanded\n );\n };\n\n private accordionOpenBtnText = () => {\n return !this.areAllAccordionsOpen ? \"See all\" : \"Hide all\";\n };\n\n render() {\n const { size, label, singleExpansion, accessibleButtonLabel, theme } = this;\n return (\n <Host\n context-id={this.accordionGroupId}\n class={{\n [`ic-accordion-group-${size}`]: true,\n [\"ic-accordion-group\"]: true,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n <div class=\"label-container\">\n <ic-typography variant=\"h4\">\n <h3>\n {isSlotUsed(this.el, \"label\") ? <slot name=\"label\" /> : label}\n </h3>\n </ic-typography>\n {!singleExpansion && (\n <ic-button\n ref={(el) => (this.allButtonEl = el)}\n onClick={this.handleExpanded}\n variant=\"tertiary\"\n aria-label={`${this.accordionOpenBtnText()} ${accessibleButtonLabel}`}\n >\n {this.accordionOpenBtnText()}\n </ic-button>\n )}\n </div>\n <slot></slot>\n </Host>\n );\n }\n}\n"],"mappings":"6FAAA,MAAMA,EAAsB,qvFCc5B,IAAIC,EAAoB,E,MAUXC,EAAc,M,yBACjBC,KAAAC,iBAAmB,sBAAsBH,MAkGzCE,KAAAE,eAAiB,KACvB,GAAIF,KAAKG,qBAAsB,CAC7BH,KAAKI,SAAW,MAChBJ,KAAKK,WAAWC,SAASC,IACvBA,EAAIH,SAAWJ,KAAKI,QAAQ,G,KAEzB,CACLJ,KAAKI,SAAW,KAChBJ,KAAKK,WAAWC,SAASC,IACvBA,EAAIH,SAAWJ,KAAKI,QAAQ,G,CAGhCJ,KAAKQ,mCAAmC,EAGlCR,KAAAS,eAAiB,KACvBT,KAAKK,WAAWC,SAASI,IACvBA,EAAUC,aAAa,aAAcX,KAAKC,iBAAiB,GAC3D,EAGID,KAAAQ,kCAAoC,KAC1CR,KAAKG,qBAAuBH,KAAKK,WAAWO,OACzCF,KAAgBA,EAAUN,UAC5B,EAGKJ,KAAAa,qBAAuB,KACrBb,KAAKG,qBAAuB,UAAY,W,yFAlHV,a,WAKV,U,cAWe,M,WASrB,G,qBAKW,M,UAKV,Q,CA5BzB,iBAAAW,GACEd,KAAKK,WAAWC,SAASC,IACvBA,EAAIQ,MAAQf,KAAKe,KAAK,G,CAS1B,oBAAAC,GACEhB,KAAKE,gB,CAkBP,gBAAAe,GACE,MAAMC,EAA2BlB,KAAKmB,GAAmBC,SACzDpB,KAAKK,WAAagB,MAAMC,KAAKJ,GAAyBK,QACnDC,GAAUA,EAAMC,UAAY,iBAE/BzB,KAAKS,iBACLT,KAAKK,WAAWC,SAASC,IACvBA,EAAIQ,MAAQf,KAAKe,KAAK,IAExBf,KAAKK,WAAWC,SAASC,IACvBA,EAAImB,KAAO1B,KAAK0B,IAAI,IAEtB,GAAI1B,KAAKI,SAAU,CACjBJ,KAAKK,WAAWC,SAASC,IACvBA,EAAIH,SAAW,IAAI,IAErBJ,KAAKQ,mC,KACA,CACLR,KAAKQ,oCACLR,KAAKI,SAAWJ,KAAKG,oB,EAKzB,sBAAAwB,CAAuBC,GACrB,IAAK5B,KAAK6B,gBAAiB,CAEzB7B,KAAKQ,mC,KACA,CACLR,KAAKK,WAAWC,SAASC,IACvB,GAAIA,EAAIH,UAAYwB,EAAME,OAAOC,KAAOxB,EAAIwB,GAAI,CAC9CxB,EAAIH,SAAW,K,MAWvB,cAAM4B,GACJ,MAAMC,EAAUjC,KAAK6B,gBACjB7B,KAAKK,WAAW,GAChBL,KAAKkC,YACTD,EAAQD,U,CAkCV,MAAAG,GACE,MAAMT,KAAEA,EAAIU,MAAEA,EAAKP,gBAAEA,EAAeQ,sBAAEA,EAAqBtB,MAAEA,GAAUf,KACvE,OACEsC,EAACC,EAAI,cACSvC,KAAKC,iBACjBuC,MAAO,CACL,CAAC,sBAAsBd,KAAS,KAChC,CAAC,sBAAuB,KACxB,CAAC,YAAYX,KAAUA,IAAU,YAGnCuB,EAAA,OAAKE,MAAM,mBACTF,EAAA,iBAAeG,QAAQ,MACrBH,EAAA,UACGI,EAAW1C,KAAKmB,GAAI,SAAWmB,EAAA,QAAMK,KAAK,UAAaP,KAG1DP,GACAS,EAAA,aACEM,IAAMzB,GAAQnB,KAAKkC,YAAcf,EACjC0B,QAAS7C,KAAKE,eACduC,QAAQ,WAAU,aACN,GAAGzC,KAAKa,0BAA0BwB,KAE7CrC,KAAKa,yBAIZyB,EAAA,a"}