@ukic/web-components 3.12.0 → 3.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (561) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/{helpers-478d1107.js → helpers-15fae358.js} +5 -1
  3. package/dist/cjs/helpers-15fae358.js.map +1 -0
  4. package/dist/cjs/ic-accordion-group.cjs.entry.js +1 -1
  5. package/dist/cjs/ic-accordion.cjs.entry.js +1 -1
  6. package/dist/cjs/ic-action-chip.cjs.entry.js +1 -1
  7. package/dist/cjs/ic-alert.cjs.entry.js +6 -4
  8. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ic-back-to-top.cjs.entry.js +6 -5
  10. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ic-badge.cjs.entry.js +3 -3
  12. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +3 -3
  13. package/dist/cjs/ic-breadcrumb.cjs.entry.js +5 -4
  14. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ic-button_3.cjs.entry.js +43 -19
  16. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ic-card-vertical.cjs.entry.js +5 -5
  18. package/dist/cjs/ic-checkbox-group.cjs.entry.js +9 -5
  19. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  20. package/dist/cjs/ic-checkbox.cjs.entry.js +5 -5
  21. package/dist/cjs/ic-chip.cjs.entry.js +4 -4
  22. package/dist/cjs/ic-data-list.cjs.entry.js +2 -2
  23. package/dist/cjs/ic-data-row.cjs.entry.js +3 -3
  24. package/dist/cjs/ic-dialog.cjs.entry.js +39 -13
  25. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  26. package/dist/cjs/ic-divider.cjs.entry.js +3 -2
  27. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  28. package/dist/cjs/ic-empty-state.cjs.entry.js +3 -3
  29. package/dist/cjs/ic-footer-link-group.cjs.entry.js +1 -1
  30. package/dist/cjs/ic-footer-link.cjs.entry.js +3 -3
  31. package/dist/cjs/ic-footer.cjs.entry.js +1 -1
  32. package/dist/cjs/ic-hero.cjs.entry.js +8 -7
  33. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  34. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +6 -6
  35. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +18 -15
  36. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  37. package/dist/cjs/ic-input-label_2.cjs.entry.js +6 -6
  38. package/dist/cjs/ic-layout-grid-item.cjs.entry.js +2 -2
  39. package/dist/cjs/ic-layout-grid.cjs.entry.js +2 -2
  40. package/dist/cjs/ic-link.cjs.entry.js +2 -2
  41. package/dist/cjs/ic-menu-group.cjs.entry.js +2 -2
  42. package/dist/cjs/ic-menu-item.cjs.entry.js +3 -2
  43. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  44. package/dist/cjs/ic-navigation-button.cjs.entry.js +3 -3
  45. package/dist/cjs/ic-navigation-group.cjs.entry.js +2 -2
  46. package/dist/cjs/ic-navigation-item.cjs.entry.js +4 -4
  47. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  48. package/dist/cjs/ic-navigation-menu.cjs.entry.js +5 -5
  49. package/dist/cjs/ic-page-header.cjs.entry.js +8 -8
  50. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  51. package/dist/cjs/ic-pagination-item.cjs.entry.js +2 -2
  52. package/dist/cjs/ic-pagination.cjs.entry.js +5 -5
  53. package/dist/cjs/ic-popover-menu.cjs.entry.js +5 -5
  54. package/dist/cjs/ic-radio-group.cjs.entry.js +5 -5
  55. package/dist/cjs/ic-radio-option.cjs.entry.js +5 -5
  56. package/dist/cjs/ic-search-bar.cjs.entry.js +10 -10
  57. package/dist/cjs/ic-section-container.cjs.entry.js +2 -2
  58. package/dist/cjs/ic-select.cjs.entry.js +20 -12
  59. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ic-side-navigation.cjs.entry.js +6 -6
  61. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  62. package/dist/cjs/ic-skeleton.cjs.entry.js +2 -2
  63. package/dist/cjs/ic-skip-link.cjs.entry.js +2 -2
  64. package/dist/cjs/ic-status-tag.cjs.entry.js +4 -4
  65. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  66. package/dist/cjs/ic-step.cjs.entry.js +15 -14
  67. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  68. package/dist/cjs/ic-stepper.cjs.entry.js +4 -3
  69. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ic-switch.cjs.entry.js +5 -5
  71. package/dist/cjs/ic-tab-context.cjs.entry.js +1 -1
  72. package/dist/cjs/ic-tab-group.cjs.entry.js +3 -3
  73. package/dist/cjs/ic-tab-panel.cjs.entry.js +2 -2
  74. package/dist/cjs/ic-tab.cjs.entry.js +3 -3
  75. package/dist/cjs/ic-text-field.cjs.entry.js +12 -7
  76. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  77. package/dist/cjs/ic-theme.cjs.entry.js +2 -2
  78. package/dist/cjs/ic-toast-region.cjs.entry.js +1 -1
  79. package/dist/cjs/ic-toast.cjs.entry.js +8 -5
  80. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  81. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +8 -4
  82. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  83. package/dist/cjs/ic-toggle-button.cjs.entry.js +58 -45
  84. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  85. package/dist/cjs/ic-top-navigation.cjs.entry.js +6 -6
  86. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  87. package/dist/cjs/ic-typography.cjs.entry.js +3 -3
  88. package/dist/cjs/loader.cjs.js +1 -1
  89. package/dist/collection/collection-manifest.json +1 -1
  90. package/dist/collection/components/ic-alert/ic-alert.css +19 -29
  91. package/dist/collection/components/ic-alert/ic-alert.js +4 -2
  92. package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
  93. package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +1 -1
  94. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +4 -3
  95. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js.map +1 -1
  96. package/dist/collection/components/ic-badge/ic-badge.js +2 -2
  97. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.css +5 -4
  98. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +3 -2
  99. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js.map +1 -1
  100. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js +2 -2
  101. package/dist/collection/components/ic-button/ic-button.js +36 -11
  102. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  103. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js +4 -4
  104. package/dist/collection/components/ic-checkbox/ic-checkbox.js +4 -4
  105. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +34 -4
  106. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  107. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.stories.js +163 -0
  108. package/dist/collection/components/ic-chip/ic-chip.js +3 -3
  109. package/dist/collection/components/ic-data-list/ic-data-list.js +2 -2
  110. package/dist/collection/components/ic-data-row/ic-data-row.js +2 -2
  111. package/dist/collection/components/ic-dialog/ic-dialog.css +1 -1
  112. package/dist/collection/components/ic-dialog/ic-dialog.js +38 -12
  113. package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -1
  114. package/dist/collection/components/ic-divider/ic-divider.css +89 -89
  115. package/dist/collection/components/ic-divider/ic-divider.js +2 -1
  116. package/dist/collection/components/ic-divider/ic-divider.js.map +1 -1
  117. package/dist/collection/components/ic-empty-state/ic-empty-state.js +2 -2
  118. package/dist/collection/components/ic-footer-link/ic-footer-link.js +2 -2
  119. package/dist/collection/components/ic-hero/ic-hero.css +4 -4
  120. package/dist/collection/components/ic-hero/ic-hero.js +6 -5
  121. package/dist/collection/components/ic-hero/ic-hero.js.map +1 -1
  122. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +5 -5
  123. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +3 -3
  124. package/dist/collection/components/ic-input-container/ic-input-container.js +2 -2
  125. package/dist/collection/components/ic-input-label/ic-input-label.js +2 -2
  126. package/dist/collection/components/ic-input-validation/ic-input-validation.js +3 -3
  127. package/dist/collection/components/ic-layout-grid/ic-layout-grid.js +2 -2
  128. package/dist/collection/components/ic-layout-grid-item/ic-layout-grid-item.js +2 -2
  129. package/dist/collection/components/ic-link/ic-link.js +1 -1
  130. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.css +4 -4
  131. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +6 -5
  132. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js.map +1 -1
  133. package/dist/collection/components/ic-menu/ic-menu.js +12 -9
  134. package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
  135. package/dist/collection/components/ic-menu-group/ic-menu-group.js +1 -1
  136. package/dist/collection/components/ic-menu-item/ic-menu-item.css +6 -6
  137. package/dist/collection/components/ic-menu-item/ic-menu-item.js +1 -0
  138. package/dist/collection/components/ic-menu-item/ic-menu-item.js.map +1 -1
  139. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +2 -2
  140. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +1 -1
  141. package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +9 -0
  142. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +2 -2
  143. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +4 -4
  144. package/dist/collection/components/ic-page-header/ic-page-header.css +4 -0
  145. package/dist/collection/components/ic-page-header/ic-page-header.js +6 -6
  146. package/dist/collection/components/ic-pagination/ic-pagination.js +4 -4
  147. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +1 -1
  148. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +4 -4
  149. package/dist/collection/components/ic-radio-group/ic-radio-group.js +4 -4
  150. package/dist/collection/components/ic-radio-option/ic-radio-option.js +4 -4
  151. package/dist/collection/components/ic-search-bar/ic-search-bar.js +9 -9
  152. package/dist/collection/components/ic-section-container/ic-section-container.js +2 -2
  153. package/dist/collection/components/ic-select/ic-select.js +20 -12
  154. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  155. package/dist/collection/components/ic-select/ic-select_(single).stories.js +74 -1
  156. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +2 -0
  157. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +4 -4
  158. package/dist/collection/components/ic-skeleton/ic-skeleton.js +2 -2
  159. package/dist/collection/components/ic-skip-link/ic-skip-link.js +2 -2
  160. package/dist/collection/components/ic-status-tag/ic-status-tag.css +1 -4
  161. package/dist/collection/components/ic-status-tag/ic-status-tag.js +2 -2
  162. package/dist/collection/components/ic-step/ic-step.js +16 -15
  163. package/dist/collection/components/ic-step/ic-step.js.map +1 -1
  164. package/dist/collection/components/ic-step/ic-step.types.js.map +1 -1
  165. package/dist/collection/components/ic-stepper/ic-stepper.js +5 -4
  166. package/dist/collection/components/ic-stepper/ic-stepper.js.map +1 -1
  167. package/dist/collection/components/ic-stepper/ic-stepper.stories.js +2 -1
  168. package/dist/collection/components/ic-switch/ic-switch.js +4 -4
  169. package/dist/collection/components/ic-tab/ic-tab.js +2 -2
  170. package/dist/collection/components/ic-tab-context/ic-tab-context.js +1 -1
  171. package/dist/collection/components/ic-tab-group/ic-tab-group.js +2 -2
  172. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +2 -2
  173. package/dist/collection/components/ic-text-field/ic-text-field.js +17 -11
  174. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  175. package/dist/collection/components/ic-text-field/ic-text-field.stories.js +22 -0
  176. package/dist/collection/components/ic-text-field/ic-text-field.types.js.map +1 -1
  177. package/dist/collection/components/ic-theme/ic-theme.js +1 -1
  178. package/dist/collection/components/ic-toast/ic-toast.css +6 -6
  179. package/dist/collection/components/ic-toast/ic-toast.js +6 -3
  180. package/dist/collection/components/ic-toast/ic-toast.js.map +1 -1
  181. package/dist/collection/components/ic-toast-region/ic-toast-region.js +1 -1
  182. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +57 -44
  183. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js.map +1 -1
  184. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +7 -3
  185. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js.map +1 -1
  186. package/dist/collection/components/ic-tooltip/ic-tooltip.js +3 -3
  187. package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
  188. package/dist/collection/components/ic-tooltip/ic-tooltip.stories.js +37 -109
  189. package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +13 -10
  190. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +4 -4
  191. package/dist/collection/components/ic-typography/ic-typography.js +2 -2
  192. package/dist/collection/icds-table-style.css +66 -0
  193. package/dist/collection/utils/helpers.js +3 -0
  194. package/dist/collection/utils/helpers.js.map +1 -1
  195. package/dist/collection/utils/types.js.map +1 -1
  196. package/dist/components/helpers.js +4 -1
  197. package/dist/components/helpers.js.map +1 -1
  198. package/dist/components/ic-action-chip.js +1 -1
  199. package/dist/components/ic-alert.js +6 -4
  200. package/dist/components/ic-alert.js.map +1 -1
  201. package/dist/components/ic-back-to-top.js +6 -5
  202. package/dist/components/ic-back-to-top.js.map +1 -1
  203. package/dist/components/ic-badge.js +3 -3
  204. package/dist/components/ic-breadcrumb-group.js +3 -3
  205. package/dist/components/ic-breadcrumb2.js +5 -4
  206. package/dist/components/ic-breadcrumb2.js.map +1 -1
  207. package/dist/components/ic-button2.js +35 -11
  208. package/dist/components/ic-button2.js.map +1 -1
  209. package/dist/components/ic-card-vertical.js +5 -5
  210. package/dist/components/ic-checkbox-group.js +10 -5
  211. package/dist/components/ic-checkbox-group.js.map +1 -1
  212. package/dist/components/ic-checkbox.js +5 -5
  213. package/dist/components/ic-chip.js +4 -4
  214. package/dist/components/ic-data-list.js +2 -2
  215. package/dist/components/ic-data-row.js +3 -3
  216. package/dist/components/ic-dialog.js +39 -13
  217. package/dist/components/ic-dialog.js.map +1 -1
  218. package/dist/components/ic-divider2.js +3 -2
  219. package/dist/components/ic-divider2.js.map +1 -1
  220. package/dist/components/ic-empty-state.js +3 -3
  221. package/dist/components/ic-footer-link-group.js +1 -1
  222. package/dist/components/ic-footer-link.js +3 -3
  223. package/dist/components/ic-footer.js +1 -1
  224. package/dist/components/ic-hero.js +8 -7
  225. package/dist/components/ic-hero.js.map +1 -1
  226. package/dist/components/ic-horizontal-scroll2.js +6 -6
  227. package/dist/components/ic-input-component-container2.js +4 -4
  228. package/dist/components/ic-input-container2.js +2 -2
  229. package/dist/components/ic-input-label2.js +3 -3
  230. package/dist/components/ic-input-validation2.js +4 -4
  231. package/dist/components/ic-layout-grid-item.js +2 -2
  232. package/dist/components/ic-layout-grid.js +2 -2
  233. package/dist/components/ic-link2.js +1 -1
  234. package/dist/components/ic-loading-indicator2.js +7 -6
  235. package/dist/components/ic-loading-indicator2.js.map +1 -1
  236. package/dist/components/ic-menu-group.js +2 -2
  237. package/dist/components/ic-menu-item2.js +3 -2
  238. package/dist/components/ic-menu-item2.js.map +1 -1
  239. package/dist/components/ic-menu2.js +13 -10
  240. package/dist/components/ic-menu2.js.map +1 -1
  241. package/dist/components/ic-navigation-button.js +3 -3
  242. package/dist/components/ic-navigation-group.js +2 -2
  243. package/dist/components/ic-navigation-item.js +4 -4
  244. package/dist/components/ic-navigation-item.js.map +1 -1
  245. package/dist/components/ic-navigation-menu2.js +5 -5
  246. package/dist/components/ic-page-header.js +8 -8
  247. package/dist/components/ic-page-header.js.map +1 -1
  248. package/dist/components/ic-pagination-item2.js +2 -2
  249. package/dist/components/ic-pagination.js +4 -4
  250. package/dist/components/ic-popover-menu.js +5 -5
  251. package/dist/components/ic-radio-group.js +5 -5
  252. package/dist/components/ic-radio-group.js.map +1 -1
  253. package/dist/components/ic-radio-option.js +5 -5
  254. package/dist/components/ic-search-bar.js +10 -10
  255. package/dist/components/ic-section-container2.js +2 -2
  256. package/dist/components/ic-select.js +20 -12
  257. package/dist/components/ic-select.js.map +1 -1
  258. package/dist/components/ic-side-navigation.js +6 -6
  259. package/dist/components/ic-side-navigation.js.map +1 -1
  260. package/dist/components/ic-skeleton.js +2 -2
  261. package/dist/components/ic-skip-link.js +2 -2
  262. package/dist/components/ic-status-tag.js +3 -3
  263. package/dist/components/ic-status-tag.js.map +1 -1
  264. package/dist/components/ic-step.js +15 -14
  265. package/dist/components/ic-step.js.map +1 -1
  266. package/dist/components/ic-stepper.js +3 -2
  267. package/dist/components/ic-stepper.js.map +1 -1
  268. package/dist/components/ic-switch.js +5 -5
  269. package/dist/components/ic-tab-context.js +1 -1
  270. package/dist/components/ic-tab-group.js +2 -2
  271. package/dist/components/ic-tab-panel.js +2 -2
  272. package/dist/components/ic-tab.js +2 -2
  273. package/dist/components/ic-text-field.js +12 -7
  274. package/dist/components/ic-text-field.js.map +1 -1
  275. package/dist/components/ic-theme.js +2 -2
  276. package/dist/components/ic-toast-region.js +1 -1
  277. package/dist/components/ic-toast.js +8 -5
  278. package/dist/components/ic-toast.js.map +1 -1
  279. package/dist/components/ic-toggle-button-group.js +7 -3
  280. package/dist/components/ic-toggle-button-group.js.map +1 -1
  281. package/dist/components/ic-toggle-button.js +58 -45
  282. package/dist/components/ic-toggle-button.js.map +1 -1
  283. package/dist/components/ic-tooltip2.js +3 -3
  284. package/dist/components/ic-tooltip2.js.map +1 -1
  285. package/dist/components/ic-top-navigation.js +6 -6
  286. package/dist/components/ic-top-navigation.js.map +1 -1
  287. package/dist/components/ic-typography2.js +2 -2
  288. package/dist/core/core.css +11 -8
  289. package/dist/core/core.esm.js +1 -1
  290. package/dist/core/core.esm.js.map +1 -1
  291. package/dist/core/icds-table-style.css +66 -0
  292. package/dist/core/p-0257d59e.entry.js +2 -0
  293. package/dist/core/p-0257d59e.entry.js.map +1 -0
  294. package/dist/core/p-042cfc35.entry.js +2 -0
  295. package/dist/core/p-042cfc35.entry.js.map +1 -0
  296. package/dist/core/{p-514daffe.entry.js → p-053ed367.entry.js} +2 -2
  297. package/dist/core/{p-54803e3b.entry.js → p-06b3ae40.entry.js} +2 -2
  298. package/dist/core/{p-95d3d1a7.entry.js → p-091a7fbf.entry.js} +2 -2
  299. package/dist/core/{p-4747c39f.entry.js → p-09c31ac6.entry.js} +2 -2
  300. package/dist/core/{p-01e018cb.entry.js → p-0b1ea961.entry.js} +2 -2
  301. package/dist/core/{p-cf868a24.entry.js → p-0cbd0967.entry.js} +2 -2
  302. package/dist/core/p-0cbd0967.entry.js.map +1 -0
  303. package/dist/core/{p-33582352.entry.js → p-109e7fce.entry.js} +2 -2
  304. package/dist/core/{p-99793b64.entry.js → p-199c5ff6.entry.js} +2 -2
  305. package/dist/core/p-2026f4fa.entry.js +2 -0
  306. package/dist/core/p-2026f4fa.entry.js.map +1 -0
  307. package/dist/core/p-24d46cab.entry.js +2 -0
  308. package/dist/core/p-24d46cab.entry.js.map +1 -0
  309. package/dist/core/{p-228bc12d.entry.js → p-2969b5c9.entry.js} +2 -2
  310. package/dist/core/{p-c975cced.entry.js → p-296a41ce.entry.js} +2 -2
  311. package/dist/core/p-30312243.entry.js +2 -0
  312. package/dist/core/p-30312243.entry.js.map +1 -0
  313. package/dist/core/p-355d0914.entry.js +2 -0
  314. package/dist/core/p-355d0914.entry.js.map +1 -0
  315. package/dist/core/{p-1423bd4a.entry.js → p-3785c740.entry.js} +2 -2
  316. package/dist/core/{p-8684efeb.entry.js → p-3a94849e.entry.js} +2 -2
  317. package/dist/core/{p-a06c1e4e.entry.js → p-3b13d191.entry.js} +2 -2
  318. package/dist/core/{p-13e093d0.entry.js → p-411527a1.entry.js} +2 -2
  319. package/dist/core/{p-de32a223.entry.js → p-44fbe8c2.entry.js} +2 -2
  320. package/dist/core/{p-93479c36.entry.js → p-4637c326.entry.js} +2 -2
  321. package/dist/core/{p-fb734a59.entry.js → p-48eb7299.entry.js} +2 -2
  322. package/dist/core/{p-b0376079.entry.js → p-4a358f09.entry.js} +2 -2
  323. package/dist/core/{p-e6dacbe2.entry.js → p-4bdeb62d.entry.js} +2 -2
  324. package/dist/core/{p-9cf6ccfd.entry.js → p-5cf704e3.entry.js} +2 -2
  325. package/dist/core/p-614953c5.entry.js +2 -0
  326. package/dist/core/p-614953c5.entry.js.map +1 -0
  327. package/dist/core/p-62b9e7bf.entry.js +2 -0
  328. package/dist/core/p-62b9e7bf.entry.js.map +1 -0
  329. package/dist/core/{p-05036675.entry.js → p-6996e94f.entry.js} +2 -2
  330. package/dist/core/p-6996e94f.entry.js.map +1 -0
  331. package/dist/core/{p-cc00cbce.entry.js → p-6e61c48a.entry.js} +2 -2
  332. package/dist/core/{p-33789b23.entry.js → p-6f60262e.entry.js} +3 -3
  333. package/dist/core/p-6f60262e.entry.js.map +1 -0
  334. package/dist/core/{p-d58ad080.entry.js → p-6fb29846.entry.js} +2 -2
  335. package/dist/core/p-6fb29846.entry.js.map +1 -0
  336. package/dist/core/p-77a6c3f7.entry.js +2 -0
  337. package/dist/core/p-77a6c3f7.entry.js.map +1 -0
  338. package/dist/core/p-7970cbed.entry.js +2 -0
  339. package/dist/core/p-7970cbed.entry.js.map +1 -0
  340. package/dist/core/{p-37d217b5.entry.js → p-889bb8db.entry.js} +2 -2
  341. package/dist/core/{p-c04e1fab.entry.js → p-8c7d6a85.entry.js} +2 -2
  342. package/dist/core/{p-6dbe70f1.entry.js → p-911b4aa4.entry.js} +2 -2
  343. package/dist/core/{p-57721431.entry.js → p-93e1ba0a.entry.js} +2 -2
  344. package/dist/core/{p-37daa8fe.entry.js → p-9c2e9189.entry.js} +2 -2
  345. package/dist/core/{p-8558b9b7.entry.js → p-a45de09d.entry.js} +2 -2
  346. package/dist/core/{p-b57e59b7.js → p-a5658054.js} +2 -2
  347. package/dist/core/p-a5658054.js.map +1 -0
  348. package/dist/core/{p-ea06792a.entry.js → p-a7f21494.entry.js} +2 -2
  349. package/dist/core/p-a8dc3162.entry.js +2 -0
  350. package/dist/core/p-a8dc3162.entry.js.map +1 -0
  351. package/dist/core/p-ab26beed.entry.js +2 -0
  352. package/dist/core/p-ab26beed.entry.js.map +1 -0
  353. package/dist/core/{p-2126d37b.entry.js → p-ad6632a9.entry.js} +2 -2
  354. package/dist/core/p-ae7dcbd5.entry.js +2 -0
  355. package/dist/core/p-ae7dcbd5.entry.js.map +1 -0
  356. package/dist/core/{p-9a8bcb78.entry.js → p-b00efb15.entry.js} +2 -2
  357. package/dist/core/p-b29e325f.entry.js +2 -0
  358. package/dist/core/{p-b9bdd9a9.entry.js → p-bba25812.entry.js} +2 -2
  359. package/dist/core/{p-27e67d45.entry.js → p-c397b33f.entry.js} +2 -2
  360. package/dist/core/{p-45097448.entry.js → p-c4ffcc64.entry.js} +2 -2
  361. package/dist/core/{p-675bb3e4.entry.js → p-d1cce122.entry.js} +2 -2
  362. package/dist/core/p-d20a61a7.entry.js +2 -0
  363. package/dist/core/p-d20a61a7.entry.js.map +1 -0
  364. package/dist/core/{p-492fcb51.entry.js → p-d8200098.entry.js} +2 -2
  365. package/dist/core/{p-80317cd1.entry.js → p-e0423c7e.entry.js} +2 -2
  366. package/dist/core/p-eb1823b3.entry.js +2 -0
  367. package/dist/core/p-eb1823b3.entry.js.map +1 -0
  368. package/dist/core/{p-b1838ad8.entry.js → p-ef397b6f.entry.js} +2 -2
  369. package/dist/core/p-ef397b6f.entry.js.map +1 -0
  370. package/dist/core/p-efc97f21.entry.js +2 -0
  371. package/dist/core/p-efc97f21.entry.js.map +1 -0
  372. package/dist/core/{p-b4a2f6fa.entry.js → p-f098e531.entry.js} +2 -2
  373. package/dist/core/{p-0ec76cff.entry.js → p-f247db14.entry.js} +2 -2
  374. package/dist/core/{p-813ad03c.entry.js → p-f4e2e41f.entry.js} +2 -2
  375. package/dist/core/{p-abd88929.entry.js → p-f7706ff7.entry.js} +2 -2
  376. package/dist/core/p-f7706ff7.entry.js.map +1 -0
  377. package/dist/core/{p-5fcfcfb6.entry.js → p-fb43abd6.entry.js} +2 -2
  378. package/dist/esm/core.js +1 -1
  379. package/dist/esm/{helpers-4ddac6ed.js → helpers-dcedb279.js} +5 -2
  380. package/dist/esm/helpers-dcedb279.js.map +1 -0
  381. package/dist/esm/ic-accordion-group.entry.js +1 -1
  382. package/dist/esm/ic-accordion.entry.js +1 -1
  383. package/dist/esm/ic-action-chip.entry.js +1 -1
  384. package/dist/esm/ic-alert.entry.js +6 -4
  385. package/dist/esm/ic-alert.entry.js.map +1 -1
  386. package/dist/esm/ic-back-to-top.entry.js +6 -5
  387. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  388. package/dist/esm/ic-badge.entry.js +3 -3
  389. package/dist/esm/ic-breadcrumb-group.entry.js +3 -3
  390. package/dist/esm/ic-breadcrumb.entry.js +5 -4
  391. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  392. package/dist/esm/ic-button_3.entry.js +43 -19
  393. package/dist/esm/ic-button_3.entry.js.map +1 -1
  394. package/dist/esm/ic-card-vertical.entry.js +5 -5
  395. package/dist/esm/ic-checkbox-group.entry.js +9 -5
  396. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  397. package/dist/esm/ic-checkbox.entry.js +5 -5
  398. package/dist/esm/ic-chip.entry.js +4 -4
  399. package/dist/esm/ic-data-list.entry.js +2 -2
  400. package/dist/esm/ic-data-row.entry.js +3 -3
  401. package/dist/esm/ic-dialog.entry.js +39 -13
  402. package/dist/esm/ic-dialog.entry.js.map +1 -1
  403. package/dist/esm/ic-divider.entry.js +3 -2
  404. package/dist/esm/ic-divider.entry.js.map +1 -1
  405. package/dist/esm/ic-empty-state.entry.js +3 -3
  406. package/dist/esm/ic-footer-link-group.entry.js +1 -1
  407. package/dist/esm/ic-footer-link.entry.js +3 -3
  408. package/dist/esm/ic-footer.entry.js +1 -1
  409. package/dist/esm/ic-hero.entry.js +8 -7
  410. package/dist/esm/ic-hero.entry.js.map +1 -1
  411. package/dist/esm/ic-horizontal-scroll.entry.js +6 -6
  412. package/dist/esm/ic-input-component-container_3.entry.js +18 -15
  413. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  414. package/dist/esm/ic-input-label_2.entry.js +6 -6
  415. package/dist/esm/ic-layout-grid-item.entry.js +2 -2
  416. package/dist/esm/ic-layout-grid.entry.js +2 -2
  417. package/dist/esm/ic-link.entry.js +2 -2
  418. package/dist/esm/ic-menu-group.entry.js +2 -2
  419. package/dist/esm/ic-menu-item.entry.js +3 -2
  420. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  421. package/dist/esm/ic-navigation-button.entry.js +3 -3
  422. package/dist/esm/ic-navigation-group.entry.js +2 -2
  423. package/dist/esm/ic-navigation-item.entry.js +4 -4
  424. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  425. package/dist/esm/ic-navigation-menu.entry.js +5 -5
  426. package/dist/esm/ic-page-header.entry.js +8 -8
  427. package/dist/esm/ic-page-header.entry.js.map +1 -1
  428. package/dist/esm/ic-pagination-item.entry.js +2 -2
  429. package/dist/esm/ic-pagination.entry.js +5 -5
  430. package/dist/esm/ic-popover-menu.entry.js +5 -5
  431. package/dist/esm/ic-radio-group.entry.js +5 -5
  432. package/dist/esm/ic-radio-option.entry.js +5 -5
  433. package/dist/esm/ic-search-bar.entry.js +10 -10
  434. package/dist/esm/ic-section-container.entry.js +2 -2
  435. package/dist/esm/ic-select.entry.js +20 -12
  436. package/dist/esm/ic-select.entry.js.map +1 -1
  437. package/dist/esm/ic-side-navigation.entry.js +6 -6
  438. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  439. package/dist/esm/ic-skeleton.entry.js +2 -2
  440. package/dist/esm/ic-skip-link.entry.js +2 -2
  441. package/dist/esm/ic-status-tag.entry.js +4 -4
  442. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  443. package/dist/esm/ic-step.entry.js +15 -14
  444. package/dist/esm/ic-step.entry.js.map +1 -1
  445. package/dist/esm/ic-stepper.entry.js +4 -3
  446. package/dist/esm/ic-stepper.entry.js.map +1 -1
  447. package/dist/esm/ic-switch.entry.js +5 -5
  448. package/dist/esm/ic-tab-context.entry.js +1 -1
  449. package/dist/esm/ic-tab-group.entry.js +3 -3
  450. package/dist/esm/ic-tab-panel.entry.js +2 -2
  451. package/dist/esm/ic-tab.entry.js +3 -3
  452. package/dist/esm/ic-text-field.entry.js +12 -7
  453. package/dist/esm/ic-text-field.entry.js.map +1 -1
  454. package/dist/esm/ic-theme.entry.js +2 -2
  455. package/dist/esm/ic-toast-region.entry.js +1 -1
  456. package/dist/esm/ic-toast.entry.js +8 -5
  457. package/dist/esm/ic-toast.entry.js.map +1 -1
  458. package/dist/esm/ic-toggle-button-group.entry.js +8 -4
  459. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  460. package/dist/esm/ic-toggle-button.entry.js +58 -45
  461. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  462. package/dist/esm/ic-top-navigation.entry.js +6 -6
  463. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  464. package/dist/esm/ic-typography.entry.js +3 -3
  465. package/dist/esm/loader.js +1 -1
  466. package/dist/types/components/ic-button/ic-button.d.ts +8 -2
  467. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +5 -1
  468. package/dist/types/components/ic-dialog/ic-dialog.d.ts +2 -1
  469. package/dist/types/components/ic-step/ic-step.types.d.ts +1 -0
  470. package/dist/types/components/ic-text-field/ic-text-field.d.ts +2 -4
  471. package/dist/types/components/ic-text-field/ic-text-field.types.d.ts +5 -0
  472. package/dist/types/components/ic-toggle-button/ic-toggle-button.d.ts +1 -0
  473. package/dist/types/components.d.ts +13 -5
  474. package/dist/types/utils/helpers.d.ts +1 -0
  475. package/dist/types/utils/types.d.ts +6 -2
  476. package/hydrate/index.js +369 -266
  477. package/hydrate/index.mjs +369 -266
  478. package/package.json +2 -2
  479. package/vscode-data.json +15 -0
  480. package/dist/cjs/helpers-478d1107.js.map +0 -1
  481. package/dist/core/p-0123dde7.entry.js +0 -2
  482. package/dist/core/p-0123dde7.entry.js.map +0 -1
  483. package/dist/core/p-02af2b59.entry.js +0 -2
  484. package/dist/core/p-02af2b59.entry.js.map +0 -1
  485. package/dist/core/p-05036675.entry.js.map +0 -1
  486. package/dist/core/p-0c36ce84.entry.js +0 -2
  487. package/dist/core/p-0c36ce84.entry.js.map +0 -1
  488. package/dist/core/p-25bef09d.entry.js +0 -2
  489. package/dist/core/p-2800fc30.entry.js +0 -2
  490. package/dist/core/p-2800fc30.entry.js.map +0 -1
  491. package/dist/core/p-33789b23.entry.js.map +0 -1
  492. package/dist/core/p-3e36f281.entry.js +0 -2
  493. package/dist/core/p-3e36f281.entry.js.map +0 -1
  494. package/dist/core/p-6058d4c9.entry.js +0 -2
  495. package/dist/core/p-6058d4c9.entry.js.map +0 -1
  496. package/dist/core/p-6e139e6e.entry.js +0 -2
  497. package/dist/core/p-6e139e6e.entry.js.map +0 -1
  498. package/dist/core/p-80e0f66e.entry.js +0 -2
  499. package/dist/core/p-80e0f66e.entry.js.map +0 -1
  500. package/dist/core/p-8b99a806.entry.js +0 -2
  501. package/dist/core/p-8b99a806.entry.js.map +0 -1
  502. package/dist/core/p-a1857d24.entry.js +0 -2
  503. package/dist/core/p-a1857d24.entry.js.map +0 -1
  504. package/dist/core/p-a1e2e029.entry.js +0 -2
  505. package/dist/core/p-a1e2e029.entry.js.map +0 -1
  506. package/dist/core/p-abd88929.entry.js.map +0 -1
  507. package/dist/core/p-b1838ad8.entry.js.map +0 -1
  508. package/dist/core/p-b57e59b7.js.map +0 -1
  509. package/dist/core/p-c2d5e301.entry.js +0 -2
  510. package/dist/core/p-c2d5e301.entry.js.map +0 -1
  511. package/dist/core/p-cf868a24.entry.js.map +0 -1
  512. package/dist/core/p-d58ad080.entry.js.map +0 -1
  513. package/dist/core/p-e9d28e02.entry.js +0 -2
  514. package/dist/core/p-e9d28e02.entry.js.map +0 -1
  515. package/dist/core/p-eb0e7153.entry.js +0 -2
  516. package/dist/core/p-eb0e7153.entry.js.map +0 -1
  517. package/dist/core/p-f609ca37.entry.js +0 -2
  518. package/dist/core/p-f609ca37.entry.js.map +0 -1
  519. package/dist/core/p-fb69fbc0.entry.js +0 -2
  520. package/dist/core/p-fb69fbc0.entry.js.map +0 -1
  521. package/dist/esm/helpers-4ddac6ed.js.map +0 -1
  522. /package/dist/core/{p-514daffe.entry.js.map → p-053ed367.entry.js.map} +0 -0
  523. /package/dist/core/{p-54803e3b.entry.js.map → p-06b3ae40.entry.js.map} +0 -0
  524. /package/dist/core/{p-95d3d1a7.entry.js.map → p-091a7fbf.entry.js.map} +0 -0
  525. /package/dist/core/{p-4747c39f.entry.js.map → p-09c31ac6.entry.js.map} +0 -0
  526. /package/dist/core/{p-01e018cb.entry.js.map → p-0b1ea961.entry.js.map} +0 -0
  527. /package/dist/core/{p-33582352.entry.js.map → p-109e7fce.entry.js.map} +0 -0
  528. /package/dist/core/{p-99793b64.entry.js.map → p-199c5ff6.entry.js.map} +0 -0
  529. /package/dist/core/{p-228bc12d.entry.js.map → p-2969b5c9.entry.js.map} +0 -0
  530. /package/dist/core/{p-c975cced.entry.js.map → p-296a41ce.entry.js.map} +0 -0
  531. /package/dist/core/{p-1423bd4a.entry.js.map → p-3785c740.entry.js.map} +0 -0
  532. /package/dist/core/{p-8684efeb.entry.js.map → p-3a94849e.entry.js.map} +0 -0
  533. /package/dist/core/{p-a06c1e4e.entry.js.map → p-3b13d191.entry.js.map} +0 -0
  534. /package/dist/core/{p-13e093d0.entry.js.map → p-411527a1.entry.js.map} +0 -0
  535. /package/dist/core/{p-de32a223.entry.js.map → p-44fbe8c2.entry.js.map} +0 -0
  536. /package/dist/core/{p-93479c36.entry.js.map → p-4637c326.entry.js.map} +0 -0
  537. /package/dist/core/{p-fb734a59.entry.js.map → p-48eb7299.entry.js.map} +0 -0
  538. /package/dist/core/{p-b0376079.entry.js.map → p-4a358f09.entry.js.map} +0 -0
  539. /package/dist/core/{p-e6dacbe2.entry.js.map → p-4bdeb62d.entry.js.map} +0 -0
  540. /package/dist/core/{p-9cf6ccfd.entry.js.map → p-5cf704e3.entry.js.map} +0 -0
  541. /package/dist/core/{p-cc00cbce.entry.js.map → p-6e61c48a.entry.js.map} +0 -0
  542. /package/dist/core/{p-37d217b5.entry.js.map → p-889bb8db.entry.js.map} +0 -0
  543. /package/dist/core/{p-c04e1fab.entry.js.map → p-8c7d6a85.entry.js.map} +0 -0
  544. /package/dist/core/{p-6dbe70f1.entry.js.map → p-911b4aa4.entry.js.map} +0 -0
  545. /package/dist/core/{p-57721431.entry.js.map → p-93e1ba0a.entry.js.map} +0 -0
  546. /package/dist/core/{p-37daa8fe.entry.js.map → p-9c2e9189.entry.js.map} +0 -0
  547. /package/dist/core/{p-8558b9b7.entry.js.map → p-a45de09d.entry.js.map} +0 -0
  548. /package/dist/core/{p-ea06792a.entry.js.map → p-a7f21494.entry.js.map} +0 -0
  549. /package/dist/core/{p-2126d37b.entry.js.map → p-ad6632a9.entry.js.map} +0 -0
  550. /package/dist/core/{p-9a8bcb78.entry.js.map → p-b00efb15.entry.js.map} +0 -0
  551. /package/dist/core/{p-25bef09d.entry.js.map → p-b29e325f.entry.js.map} +0 -0
  552. /package/dist/core/{p-b9bdd9a9.entry.js.map → p-bba25812.entry.js.map} +0 -0
  553. /package/dist/core/{p-27e67d45.entry.js.map → p-c397b33f.entry.js.map} +0 -0
  554. /package/dist/core/{p-45097448.entry.js.map → p-c4ffcc64.entry.js.map} +0 -0
  555. /package/dist/core/{p-675bb3e4.entry.js.map → p-d1cce122.entry.js.map} +0 -0
  556. /package/dist/core/{p-492fcb51.entry.js.map → p-d8200098.entry.js.map} +0 -0
  557. /package/dist/core/{p-80317cd1.entry.js.map → p-e0423c7e.entry.js.map} +0 -0
  558. /package/dist/core/{p-b4a2f6fa.entry.js.map → p-f098e531.entry.js.map} +0 -0
  559. /package/dist/core/{p-0ec76cff.entry.js.map → p-f247db14.entry.js.map} +0 -0
  560. /package/dist/core/{p-813ad03c.entry.js.map → p-f4e2e41f.entry.js.map} +0 -0
  561. /package/dist/core/{p-5fcfcfb6.entry.js.map → p-fb43abd6.entry.js.map} +0 -0
@@ -1,9 +1,9 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-a7a720e7.js';
2
2
  import { c as closeIcon } from './close-icon-539ec8d1.js';
3
- import { a as renderDynamicChildSlots, i as isSlotUsed, p as pxToRem } from './helpers-4ddac6ed.js';
3
+ import { a as renderDynamicChildSlots, i as isSlotUsed, p as pxToRem } from './helpers-dcedb279.js';
4
4
  import { V as VARIANT_ICONS } from './constants-7960cba4.js';
5
5
 
6
- const icAlertCss = "/*! 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-min-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)}.container-ai{background-color:var(--ic-alert-background-ai);border:var(--ic-space-xxxs) solid var(--ic-alert-border-ai)}.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)}.divider-ai{background-color:var(--ic-alert-status-type-ai)}.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)}:host([variant=\"ai\"]) .alert-icon svg{fill:var(--ic-alert-icon-ai)}.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)}.dismiss-icon>svg{color:var(--ic-architectural-white)}}";
6
+ const icAlertCss = "/*! 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-min-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)}.container-ai{background-color:var(--ic-alert-background-ai);border:var(--ic-space-xxxs) solid var(--ic-alert-border-ai)}.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)}.divider-ai{background-color:var(--ic-alert-status-type-ai)}.alert-icon{align-self:flex-start;margin-top:var(--ic-space-xs);margin-right:var(--ic-space-xs)}.alert-icon>svg{height:var(--ic-space-lg);width:var(--ic-space-lg);display:inline-block}:host(.ic-alert-no-default-icon) .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(.ic-alert-variant-info) .alert-icon svg{fill:var(--ic-alert-icon-info)}:host(.ic-alert-variant-warning) .alert-icon svg{fill:var(--ic-alert-icon-warning)}:host(.ic-alert-variant-error) .alert-icon svg{fill:var(--ic-alert-icon-error)}:host(.ic-alert-variant-success) .alert-icon svg{fill:var(--ic-alert-icon-success)}:host(.ic-alert-variant-ai) .alert-icon svg{fill:var(--ic-alert-icon-ai)}.alert-content{display:flex;align-items:center;margin-left:1.125rem;width:100%;flex-wrap:wrap}.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);margin-top:0;margin-bottom:auto;--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-message{display:inline}.alert-title{white-space:normal}.alert-action-container{margin-bottom:var(--ic-space-xs);flex-basis:100%}.alert-icon~.alert-action-container{margin-left:2rem}}@media (forced-colors: active){.container{border:var(--ic-border-hc)}.dismiss-icon>svg{color:var(--ic-architectural-white)}}";
7
7
  const IcAlertStyle0 = icAlertCss;
8
8
 
9
9
  const Alert = class {
@@ -104,14 +104,16 @@ const Alert = class {
104
104
  return (h("div", { class: iconClass }, h("slot", { name: "neutral-icon" })));
105
105
  }
106
106
  else if (!showDefaultIcon) {
107
- return h("div", { class: "icon-placeholder" });
107
+ return h("div", null);
108
108
  }
109
109
  }
110
110
  return (h("span", { class: iconClass, innerHTML: VARIANT_ICONS[variant].icon }));
111
111
  };
112
112
  return (visible && (h(Host, { role: announced ? "alert" : null, class: {
113
113
  [`ic-theme-${theme}`]: theme !== "inherit",
114
- } }, h("div", { class: { container: true, [`container-${variant}`]: true } }, h("div", { class: "alert-icon-container" }, h("div", { class: { divider: true, [`divider-${variant}`]: true } }), h(Icon, null)), h("div", { class: "alert-content" }, h("div", { class: {
114
+ [`ic-alert-variant-${variant}`]: true,
115
+ [`ic-alert-no-default-icon`]: !showDefaultIcon,
116
+ } }, h("div", { class: { container: true, [`container-${variant}`]: true } }, h("div", { class: { divider: true, [`divider-${variant}`]: true } }), h("div", { class: "alert-content" }, h(Icon, null), h("div", { class: {
115
117
  "alert-message": true,
116
118
  "alert-message-title-above": titleAbove || alertTitleWrap,
117
119
  }, ref: (el) => (this.messageEl = el) }, heading && (h("ic-typography", { class: {
@@ -1 +1 @@
1
- {"file":"ic-alert.entry.js","mappings":"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","names":[],"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-min-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.container-ai {\n background-color: var(--ic-alert-background-ai);\n border: var(--ic-space-xxxs) solid var(--ic-alert-border-ai);\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.divider-ai {\n background-color: var(--ic-alert-status-type-ai);\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:host([variant=\"ai\"]) .alert-icon svg {\n fill: var(--ic-alert-icon-ai);\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\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\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 .dismiss-icon > svg {\n color: var(--ic-architectural-white);\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n State,\n Listen,\n Prop,\n h,\n Watch,\n} from \"@stencil/core\";\nimport closeIcon from \"../../assets/close-icon.svg\";\nimport {\n isSlotUsed,\n pxToRem,\n renderDynamicChildSlots,\n} from \"../../utils/helpers\";\nimport {\n IcStatusVariants,\n IcThemeMode,\n IcThemeSettings,\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 = null;\n private systemThemeObserver: MediaQueryList | null = null;\n private darkMode: boolean = false;\n private messageEl?: HTMLDivElement;\n private titleEl?: HTMLIcTypographyElement;\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 @Watch(\"theme\")\n themeChangeHandler(): void {\n if (this.theme !== \"inherit\") this.darkMode = this.theme === \"dark\";\n }\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 this.systemThemeObserver?.removeEventListener(\n \"change\",\n this.darkModeChangeHandler\n );\n }\n\n componentWillLoad(): void {\n if (!this.el.closest(\"ic-theme\")) {\n this.systemThemeObserver = window.matchMedia(\n \"(prefers-color-scheme: dark)\"\n );\n this.systemThemeObserver.addEventListener(\n \"change\",\n this.darkModeChangeHandler\n );\n this.darkMode = this.systemThemeObserver.matches;\n }\n\n this.themeChangeHandler();\n }\n\n componentDidLoad(): void {\n if (Number(this.titleEl?.clientHeight) > 24) this.alertTitleWrap = true;\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 this.calculateMinHeight();\n }\n\n componentDidUpdate(): void {\n this.calculateMinHeight();\n }\n\n @Listen(\"icDismiss\", { capture: true })\n handleClick(): void {\n this.visible = !this.visible;\n }\n\n @Listen(\"icThemeChange\", { target: \"document\", capture: true })\n darkModeChangeHandler(\n ev: CustomEvent<IcThemeSettings> | MediaQueryListEvent\n ): void {\n this.darkMode = \"detail\" in ev ? ev.detail === \"dark\" : ev.matches;\n\n this.calculateMinHeight();\n }\n\n private dismissAction = (): void => {\n this.icDismiss.emit();\n };\n\n private calculateMinHeight(): void {\n const contentHeight = Number(this.messageEl?.clientHeight);\n\n const minHeight = pxToRem(\n `${(contentHeight > 40 ? contentHeight : 52) + (this.darkMode ? 0 : 4)}`\n );\n\n if (this.el.style.getPropertyValue(\"--ic-alert-min-height\") !== minHeight)\n this.el.style.setProperty(\"--ic-alert-min-height\", minHeight);\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 alertTitleWrap,\n dismissAction,\n } = this;\n\n const Icon = () => {\n const iconClass = {\n \"alert-icon\": true,\n \"svg-container\": true,\n [`icon-${variant}`]: true,\n };\n\n if (variant === \"neutral\") {\n if (isSlotUsed(this.el, \"neutral-icon\")) {\n return (\n <div class={iconClass}>\n <slot name=\"neutral-icon\"></slot>\n </div>\n );\n } else if (!showDefaultIcon) {\n return <div class=\"icon-placeholder\"></div>;\n }\n }\n\n return (\n <span class={iconClass} innerHTML={VARIANT_ICONS[variant].icon}></span>\n );\n };\n\n return (\n visible && (\n <Host\n role={announced ? \"alert\" : null}\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n <div class={{ container: true, [`container-${variant}`]: true }}>\n <div class=\"alert-icon-container\">\n <div\n class={{ divider: true, [`divider-${variant}`]: true }}\n ></div>\n <Icon />\n </div>\n <div class=\"alert-content\">\n <div\n class={{\n \"alert-message\": true,\n \"alert-message-title-above\": titleAbove || alertTitleWrap,\n }}\n ref={(el) => (this.messageEl = el)}\n >\n {heading && (\n <ic-typography\n class={{\n \"alert-title\": true,\n \"alert-title-above\": titleAbove || alertTitleWrap,\n }}\n variant=\"subtitle-large\"\n ref={(el) => (this.titleEl = el)}\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={{ \"svg-container\": true, \"dismiss-icon\": true }}\n innerHTML={closeIcon}\n onClick={dismissAction}\n variant=\"icon-tertiary\"\n theme=\"dark\"\n title=\"Dismiss\"\n ></ic-button>\n )}\n </div>\n </div>\n </Host>\n )\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-alert.entry.js","mappings":"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","names":[],"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-min-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.container-ai {\n background-color: var(--ic-alert-background-ai);\n border: var(--ic-space-xxxs) solid var(--ic-alert-border-ai);\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.divider-ai {\n background-color: var(--ic-alert-status-type-ai);\n}\n\n.alert-icon {\n align-self: flex-start;\n margin-top: var(--ic-space-xs);\n margin-right: 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(.ic-alert-no-default-icon) .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(.ic-alert-variant-info) .alert-icon svg {\n fill: var(--ic-alert-icon-info);\n}\n\n:host(.ic-alert-variant-warning) .alert-icon svg {\n fill: var(--ic-alert-icon-warning);\n}\n\n:host(.ic-alert-variant-error) .alert-icon svg {\n fill: var(--ic-alert-icon-error);\n}\n\n:host(.ic-alert-variant-success) .alert-icon svg {\n fill: var(--ic-alert-icon-success);\n}\n\n:host(.ic-alert-variant-ai) .alert-icon svg {\n fill: var(--ic-alert-icon-ai);\n}\n\n.alert-content {\n display: flex;\n align-items: center;\n margin-left: 1.125rem;\n width: 100%;\n flex-wrap: wrap;\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\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 margin-top: 0;\n margin-bottom: auto;\n\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-message {\n display: inline;\n }\n\n .alert-title {\n white-space: normal;\n }\n\n .alert-action-container {\n margin-bottom: var(--ic-space-xs);\n flex-basis: 100%;\n }\n\n .alert-icon ~ .alert-action-container {\n margin-left: 2rem;\n }\n}\n\n@media (forced-colors: active) {\n .container {\n border: var(--ic-border-hc);\n }\n\n .dismiss-icon > svg {\n color: var(--ic-architectural-white);\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n State,\n Listen,\n Prop,\n h,\n Watch,\n} from \"@stencil/core\";\nimport closeIcon from \"../../assets/close-icon.svg\";\nimport {\n isSlotUsed,\n pxToRem,\n renderDynamicChildSlots,\n} from \"../../utils/helpers\";\nimport {\n IcStatusVariants,\n IcThemeMode,\n IcThemeSettings,\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 = null;\n private systemThemeObserver: MediaQueryList | null = null;\n private darkMode: boolean = false;\n private messageEl?: HTMLDivElement;\n private titleEl?: HTMLIcTypographyElement;\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 @Watch(\"theme\")\n themeChangeHandler(): void {\n if (this.theme !== \"inherit\") this.darkMode = this.theme === \"dark\";\n }\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 this.systemThemeObserver?.removeEventListener(\n \"change\",\n this.darkModeChangeHandler\n );\n }\n\n componentWillLoad(): void {\n if (!this.el.closest(\"ic-theme\")) {\n this.systemThemeObserver = window.matchMedia(\n \"(prefers-color-scheme: dark)\"\n );\n this.systemThemeObserver.addEventListener(\n \"change\",\n this.darkModeChangeHandler\n );\n this.darkMode = this.systemThemeObserver.matches;\n }\n\n this.themeChangeHandler();\n }\n\n componentDidLoad(): void {\n if (Number(this.titleEl?.clientHeight) > 24) this.alertTitleWrap = true;\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 this.calculateMinHeight();\n }\n\n componentDidUpdate(): void {\n this.calculateMinHeight();\n }\n\n @Listen(\"icDismiss\", { capture: true })\n handleClick(): void {\n this.visible = !this.visible;\n }\n\n @Listen(\"icThemeChange\", { target: \"document\", capture: true })\n darkModeChangeHandler(\n ev: CustomEvent<IcThemeSettings> | MediaQueryListEvent\n ): void {\n this.darkMode = \"detail\" in ev ? ev.detail === \"dark\" : ev.matches;\n\n this.calculateMinHeight();\n }\n\n private dismissAction = (): void => {\n this.icDismiss.emit();\n };\n\n private calculateMinHeight(): void {\n const contentHeight = Number(this.messageEl?.clientHeight);\n\n const minHeight = pxToRem(\n `${(contentHeight > 40 ? contentHeight : 52) + (this.darkMode ? 0 : 4)}`\n );\n\n if (this.el.style.getPropertyValue(\"--ic-alert-min-height\") !== minHeight)\n this.el.style.setProperty(\"--ic-alert-min-height\", minHeight);\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 alertTitleWrap,\n dismissAction,\n } = this;\n\n const Icon = () => {\n const iconClass = {\n \"alert-icon\": true,\n \"svg-container\": true,\n [`icon-${variant}`]: true,\n };\n\n if (variant === \"neutral\") {\n if (isSlotUsed(this.el, \"neutral-icon\")) {\n return (\n <div class={iconClass}>\n <slot name=\"neutral-icon\"></slot>\n </div>\n );\n } else if (!showDefaultIcon) {\n return <div></div>;\n }\n }\n\n return (\n <span class={iconClass} innerHTML={VARIANT_ICONS[variant].icon}></span>\n );\n };\n\n return (\n visible && (\n <Host\n role={announced ? \"alert\" : null}\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n [`ic-alert-variant-${variant}`]: true,\n [`ic-alert-no-default-icon`]: !showDefaultIcon,\n }}\n >\n <div class={{ container: true, [`container-${variant}`]: true }}>\n <div class={{ divider: true, [`divider-${variant}`]: true }}></div>\n <div class=\"alert-content\">\n <Icon />\n <div\n class={{\n \"alert-message\": true,\n \"alert-message-title-above\": titleAbove || alertTitleWrap,\n }}\n ref={(el) => (this.messageEl = el)}\n >\n {heading && (\n <ic-typography\n class={{\n \"alert-title\": true,\n \"alert-title-above\": titleAbove || alertTitleWrap,\n }}\n variant=\"subtitle-large\"\n ref={(el) => (this.titleEl = el)}\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={{ \"svg-container\": true, \"dismiss-icon\": true }}\n innerHTML={closeIcon}\n onClick={dismissAction}\n variant=\"icon-tertiary\"\n theme=\"dark\"\n title=\"Dismiss\"\n ></ic-button>\n )}\n </div>\n </div>\n </Host>\n )\n );\n }\n}\n"],"version":3}
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, h, H as Host, g as getElement } from './index-a7a720e7.js';
2
- import { c as onComponentPropUndefinedChange, o as onComponentRequiredPropUndefined } from './helpers-4ddac6ed.js';
2
+ import { c as onComponentPropUndefinedChange, o as onComponentRequiredPropUndefined } from './helpers-dcedb279.js';
3
3
  import './constants-7960cba4.js';
4
4
 
5
5
  const ArrowUpward = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="true">
@@ -7,7 +7,7 @@ const ArrowUpward = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"
7
7
  </svg>
8
8
  `;
9
9
 
10
- const icBackToTopCss = "/*! 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:flex;flex:row;height:0.1px}:host(.ic-back-to-top-right){justify-content:flex-end}:host(.ic-back-to-top-right) ic-button{margin-right:var(--margin-right, 1rem)}:host(.ic-back-to-top-right) .ic-back-to-top-icon{padding-top:var(--ic-space-xxs);padding-right:var(--ic-space-xs)}:host(.ic-back-to-top-left){justify-content:flex-start}:host(.ic-back-to-top-left) ic-button{margin-left:var(--margin-left, 1rem)}:host(.ic-back-to-top-left) .ic-back-to-top-icon{padding-top:var(--ic-space-xxs);padding-right:var(--ic-space-xs)}:host(.ic-back-to-top-center){justify-content:center}:host(.ic-back-to-top-center) .ic-back-to-top-icon{padding-top:var(--ic-space-xxs);padding-right:var(--ic-space-xs)}ic-button{height:2.5rem;align-items:center;background-color:var(--ic-color-background-primary);border-radius:5rem;box-shadow:var(--ic-elevation-overlay);visibility:hidden;position:fixed;bottom:var(--ic-space-md);opacity:0;transition:visibility 0s linear var(--ic-transition-duration-slow),\n opacity var(--ic-transition-duration-slow);z-index:var(--ic-z-index-back-to-top)}:host([variant=\"icon\"]) ic-button::part(button){margin:0}ic-button::part(button){border-radius:5rem}ic-button.show{visibility:visible;opacity:1;transition:visibility 0s linear 0s,\n opacity var(--ic-transition-duration-slow),\n box-shadow var(--ic-easing-transition-fast)}ic-button.offset-banner:not(.by-footer){margin-bottom:var(--footer-offset, var(--ic-space-lg))}.ic-back-to-top-icon>svg{height:var(--ic-space-md);width:var(--ic-space-md)}.icon-only{width:2.5rem}.icon-only .ic-back-to-top-icon>svg{padding-left:calc(var(--ic-space-xs) - var(--ic-space-1px))}ic-button.by-footer{position:relative;bottom:var(--footer-offset, 3.5rem)}@media (forced-colors: active){.icon-only .ic-back-to-top-icon>svg{padding-left:calc(var(--ic-space-xs) - var(--ic-space-xxxs))}}";
10
+ const icBackToTopCss = "/*! 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:flex;flex:row;height:0.1px}:host(.ic-back-to-top-right){justify-content:flex-end}:host(.ic-back-to-top-right) ic-button{margin-right:var(--margin-right, 1rem)}:host(.ic-back-to-top-right) .ic-back-to-top-icon{padding-top:var(--ic-space-xxs);padding-right:var(--ic-space-xs)}:host(.ic-back-to-top-left){justify-content:flex-start}:host(.ic-back-to-top-left) ic-button{margin-left:var(--margin-left, 1rem)}:host(.ic-back-to-top-left) .ic-back-to-top-icon{padding-top:var(--ic-space-xxs);padding-right:var(--ic-space-xs)}:host(.ic-back-to-top-center){justify-content:center}:host(.ic-back-to-top-center) .ic-back-to-top-icon{padding-top:var(--ic-space-xxs);padding-right:var(--ic-space-xs)}ic-button{height:2.5rem;align-items:center;background-color:var(--ic-color-background-primary);border-radius:5rem;box-shadow:var(--ic-elevation-overlay);visibility:hidden;position:fixed;bottom:var(--ic-space-md);opacity:0;transition:visibility 0s linear var(--ic-transition-duration-slow),\n opacity var(--ic-transition-duration-slow);z-index:var(--ic-z-index-back-to-top)}:host(.ic-back-to-top-variant-icon) ic-button::part(button){margin:0}ic-button::part(button){border-radius:5rem}ic-button.show{visibility:visible;opacity:1;transition:visibility 0s linear 0s,\n opacity var(--ic-transition-duration-slow),\n box-shadow var(--ic-easing-transition-fast)}ic-button.offset-banner:not(.by-footer){margin-bottom:var(--footer-offset, var(--ic-space-lg))}.ic-back-to-top-icon>svg{height:var(--ic-space-md);width:var(--ic-space-md)}.icon-only{width:2.5rem}.icon-only .ic-back-to-top-icon>svg{padding-left:calc(var(--ic-space-xs) - var(--ic-space-1px))}ic-button.by-footer{position:relative;bottom:var(--footer-offset, 3.5rem)}@media (forced-colors: active){.icon-only .ic-back-to-top-icon>svg{padding-left:calc(var(--ic-space-xs) - var(--ic-space-xxxs))}}";
11
11
  const IcBackToTopStyle0 = icBackToTopCss;
12
12
 
13
13
  const backToTopLabel = "Back to top";
@@ -141,15 +141,16 @@ const BackToTop = class {
141
141
  const btnVariant = variant === "icon" ? "icon-secondary" : "secondary";
142
142
  const size = variant === "icon" ? "large" : "medium";
143
143
  const label = variant === "icon" ? "" : backToTopLabel;
144
- return (h(Host, { key: '11f790112cc8047ab6b35459de506f6dc6a85c5f', class: {
144
+ return (h(Host, { key: '2c281b238cd14437e120084c35ae86089cd49fe9', class: {
145
145
  [`ic-theme-${this.theme}`]: this.theme !== "inherit",
146
146
  [`ic-back-to-top-${this.position}`]: true,
147
- } }, h("ic-button", { key: '670015cd630e897033a440ff4846d475c113a453', "aria-label": backToTopLabel, variant: btnVariant, size: size, onClick: this.handleClick, class: {
147
+ [`ic-back-to-top-variant-icon`]: variant === "icon",
148
+ } }, h("ic-button", { key: '15bcf38bcc837a9723e5af644551b24845d4cbbb', "aria-label": backToTopLabel, variant: btnVariant, size: size, onClick: this.handleClick, class: {
148
149
  ["offset-banner"]: bannerOffset,
149
150
  ["show"]: !targetElVisible,
150
151
  ["by-footer"]: footerVisible,
151
152
  ["icon-only"]: variant === "icon",
152
- }, theme: this.theme }, h("span", { key: 'e56c7a48a8226d1f471fc9a953851d27f4a6504c', class: "ic-back-to-top-icon", innerHTML: ArrowUpward }), label)));
153
+ }, theme: this.theme }, h("span", { key: '4d6d2e0390eda5cd6db7f26bd597db7fef9c81c0', class: "ic-back-to-top-icon", innerHTML: ArrowUpward }), label)));
153
154
  }
154
155
  static get delegatesFocus() { return true; }
155
156
  get el() { return getElement(this); }
@@ -1 +1 @@
1
- {"file":"ic-back-to-top.entry.js","mappings":";;;;;;;;;AAAA,MAAM,cAAc,GAAG,4rIAA4rI,CAAC;AACptI,0BAAe,cAAc;;ACW7B,MAAM,cAAc,GAAG,aAAa,CAAC;MASxB,SAAS;IAPtB;;QAUU,gBAAW,GAAgC,IAAI,CAAC;QAI/C,iBAAY,GAAY,KAAK,CAAC;QAC9B,kBAAa,GAAY,KAAK,CAAC;QAC/B,oBAAe,GAAY,IAAI,CAAC;;;;QAKjC,aAAQ,GAA0B,OAAO,CAAC;;;;QAU1C,UAAK,GAAiB,SAAS,CAAC;;;;QAKhC,YAAO,GAAyB,SAAS,CAAC;QAwC1C,kBAAa,GAAG;YACtB,OAAO,QAAQ,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC;SACzD,CAAC;QAEM,uBAAkB,GAAG,CAAC,OAAgB;YAC5C,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC;SAChC,CAAC;QAEM,qBAAgB,GAAG,CAAC,OAAgB;YAC1C,IAAI,CAAC,4BAA4B,EAAE,CAAC;YACpC,IAAI,CAAC,aAAa;gBAChB,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,GAAG,KAAK,GAAG,OAAO,CAAC;SAC3E,CAAC;QAEM,6BAAwB,GAAG,CAAC,OAAoC;YACtE,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;SACpD,CAAC;QAEM,2BAAsB,GAAG,CAAC,OAAoC;YACpE,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;SAClD,CAAC;QAEM,iBAAY,GAAG,CAAC,MAAc;YACpC,IAAI,aAAa,GAAG,IAAI,CAAC;YACzB,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS,EAAE;gBAC3C,OAAO,CAAC,GAAG,CACT,qFAAqF,CACtF,CAAC;aACH;iBAAM;gBACL,aAAa,GAAG,QAAQ,CAAC,aAAa,CACpC,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,MAAM,EAAE,CAChD,CAAC;gBACF,IAAI,aAAa,KAAK,IAAI,EAAE;oBAC1B,OAAO,CAAC,GAAG,CACT,sCAAsC,MAAM,yCAAyC,CACtF,CAAC;iBACH;aACF;YACD,OAAO,aAAa,CAAC;SACtB,CAAC;QAEM,sBAAiB,GAAG,CAAC,MAAc;YACzC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YAC1C,IAAI,SAAsB,CAAC;;YAG3B,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,EAAE;gBAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;gBACxC,IAAI,UAAU,KAAK,IAAI,EAAE;oBACvB,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;oBACvC,UAAU,CAAC,MAAM,EAAE,CAAC;iBACrB;aACF;YAED,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE;gBAC1B,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC;gBAC1B,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,iBAAiB,CAAC;gBAC5C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;aAC5B;iBAAM;gBACL,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAyB,CAAC;gBACpD,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;aAC7B;;YAGD,MAAM,oBAAoB,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC3D,oBAAoB,CAAC,YAAY,CAAC,IAAI,EAAE,uBAAuB,CAAC,CAAC;YACjE,oBAAoB,CAAC,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;YACpD,SAAS,CAAC,YAAY,CAAC,oBAAoB,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;;YAG5D,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ;kBAC3B,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS;kBACzC,CAAC,CAAC;YACN,IAAI,CAAC,WAAW,GAAG,IAAI,oBAAoB,CAAC,IAAI,CAAC,wBAAwB,EAAE;gBACzE,SAAS,EAAE,CAAC,CAAC,CAAC;gBACd,UAAU,EAAE,GAAG,SAAS,cAAc;aACvC,CAAC,CAAC;YACH,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;SAChD,CAAC;QAEM,gBAAW,GAAG;;YACpB,IAAI,IAAI,CAAC,cAAc,EAAE;gBACvB,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;aACvB;iBAAM;gBACL,MAAA,IAAI,CAAC,QAAQ,0CAAE,cAAc,EAAE,CAAC;aACjC;;YAEA,IAAI,CAAC,aAAa,EAAkB,CAAC,KAAK,EAAE,CAAC;SAC/C,CAAC;QAEM,iCAA4B,GAAG;;YAErC,MAAM,OAAO,GAAG,QAAQ,CAAC,gBAAgB,CACvC,+CAA+C,CAChD,CAAC;YACF,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;SACxC,CAAC;KAkCH;IAvKC,gBAAgB,CAAC,QAAgB,EAAE,QAAgB;;QAEjD,8BAA8B,CAAC,QAAQ,EAAE,QAAQ,EAAE;YACjD,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;SAClC,CAAC,CAAC;KACJ;IAED,iBAAiB;QACf,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpC,IAAI,CAAC,4BAA4B,EAAE,CAAC;;QAGpC,IAAI,OAAO,GAAG,QAAQ,CAAC,gBAAgB,CACrC,WAAW,CACe,CAAC;QAC7B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;YACxB,OAAO,GAAG,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;SAC/C;QAED,IAAI,OAAO,CAAC,MAAM,EAAE;YAClB,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC;YAC/C,MAAM,cAAc,GAAG,IAAI,oBAAoB,CAC7C,IAAI,CAAC,sBAAsB,EAC3B,EAAE,SAAS,EAAE,CAAC,SAAS,CAAC,EAAE,CAC3B,CAAC;YACF,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;SAClC;KACF;IAED,gBAAgB;QACd,gCAAgC,CAC9B,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,EAC3C,aAAa,CACd,CAAC;KACH;IAoGD,MAAM;QACJ,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;QACvE,MAAM,UAAU,GAAG,OAAO,KAAK,MAAM,GAAG,gBAAgB,GAAG,WAAW,CAAC;QACvE,MAAM,IAAI,GAAG,OAAO,KAAK,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;QACrD,MAAM,KAAK,GAAG,OAAO,KAAK,MAAM,GAAG,EAAE,GAAG,cAAc,CAAC;QAEvD,QACE,EAAC,IAAI,qDACH,KAAK,EAAE;gBACL,CAAC,YAAY,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,KAAK,SAAS;gBACpD,CAAC,kBAAkB,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI;aAC1C,IAED,gFACc,cAAc,EAC1B,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,KAAK,EAAE;gBACL,CAAC,eAAe,GAAG,YAAY;gBAC/B,CAAC,MAAM,GAAG,CAAC,eAAe;gBAC1B,CAAC,WAAW,GAAG,aAAa;gBAC5B,CAAC,WAAW,GAAG,OAAO,KAAK,MAAM;aAClC,EACD,KAAK,EAAE,IAAI,CAAC,KAAK,IAEjB,6DAAM,KAAK,EAAC,qBAAqB,EAAC,SAAS,EAAE,WAAW,GAAI,EAC3D,KAAK,CACI,CACP,EACP;KACH;;;;;;;;;;;","names":[],"sources":["src/components/ic-back-to-top/ic-back-to-top.css?tag=ic-back-to-top&encapsulation=shadow","src/components/ic-back-to-top/ic-back-to-top.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n/**\n * @prop --ic-z-index-back-to-top: z-index of back to top\n * @prop --margin-right: right y-position of back to top\n * @prop --margin-left: left y-position of back to top\n * @prop --footer-offset: offset of x-position from footer\n */\n\n:host {\n display: flex;\n flex: row;\n height: 0.1px;\n}\n\n:host(.ic-back-to-top-right) {\n justify-content: flex-end;\n}\n\n:host(.ic-back-to-top-right) ic-button {\n margin-right: var(--margin-right, 1rem);\n}\n\n:host(.ic-back-to-top-right) .ic-back-to-top-icon {\n padding-top: var(--ic-space-xxs);\n padding-right: var(--ic-space-xs);\n}\n\n:host(.ic-back-to-top-left) {\n justify-content: flex-start;\n}\n\n:host(.ic-back-to-top-left) ic-button {\n margin-left: var(--margin-left, 1rem);\n}\n\n:host(.ic-back-to-top-left) .ic-back-to-top-icon {\n padding-top: var(--ic-space-xxs);\n padding-right: var(--ic-space-xs);\n}\n\n:host(.ic-back-to-top-center) {\n justify-content: center;\n}\n\n:host(.ic-back-to-top-center) .ic-back-to-top-icon {\n padding-top: var(--ic-space-xxs);\n padding-right: var(--ic-space-xs);\n}\n\nic-button {\n height: 2.5rem;\n align-items: center;\n background-color: var(--ic-color-background-primary);\n border-radius: 5rem;\n box-shadow: var(--ic-elevation-overlay);\n visibility: hidden;\n position: fixed;\n bottom: var(--ic-space-md);\n opacity: 0;\n transition: visibility 0s linear var(--ic-transition-duration-slow),\n opacity var(--ic-transition-duration-slow);\n z-index: var(--ic-z-index-back-to-top);\n}\n\n:host([variant=\"icon\"]) ic-button::part(button) {\n margin: 0;\n}\n\nic-button::part(button) {\n border-radius: 5rem;\n}\n\nic-button.show {\n visibility: visible;\n opacity: 1;\n transition: visibility 0s linear 0s,\n opacity var(--ic-transition-duration-slow),\n box-shadow var(--ic-easing-transition-fast);\n}\n\nic-button.offset-banner:not(.by-footer) {\n margin-bottom: var(--footer-offset, var(--ic-space-lg));\n}\n\n.ic-back-to-top-icon > svg {\n height: var(--ic-space-md);\n width: var(--ic-space-md);\n}\n\n.icon-only {\n width: 2.5rem;\n}\n\n.icon-only .ic-back-to-top-icon > svg {\n padding-left: calc(var(--ic-space-xs) - var(--ic-space-1px));\n}\n\nic-button.by-footer {\n position: relative;\n bottom: var(--footer-offset, 3.5rem);\n}\n\n@media (forced-colors: active) {\n .icon-only .ic-back-to-top-icon > svg {\n padding-left: calc(var(--ic-space-xs) - var(--ic-space-xxxs));\n }\n}\n","import { Component, h, Host, Element, Prop, State, Watch } from \"@stencil/core\";\nimport ArrowUpward from \"./assets/ArrowUpward.svg\";\nimport {\n onComponentPropUndefinedChange,\n onComponentRequiredPropUndefined,\n} from \"../../utils/helpers\";\nimport { IcThemeMode } from \"../../utils/types\";\nimport {\n IcBackToTopVariants,\n IcBackToTopPositions,\n} from \"./ic-back-to-top.types\";\n\nconst backToTopLabel = \"Back to top\";\n\n@Component({\n tag: \"ic-back-to-top\",\n styleUrl: \"ic-back-to-top.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class BackToTop {\n private isTargetElNull: boolean;\n private targetEl: Element | null;\n private topObserver: IntersectionObserver | null = null;\n\n @Element() el: HTMLIcBackToTopElement;\n\n @State() bannerOffset: boolean = false;\n @State() footerVisible: boolean = false;\n @State() targetElVisible: boolean = true;\n\n /**\n * The horizontal position of the element.\n */\n @Prop() position?: IcBackToTopPositions = \"right\";\n\n /**\n * The ID of the element to jump back to when the link is clicked.\n */\n @Prop() target!: string;\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * The variant of the button to render\n */\n @Prop() variant?: IcBackToTopVariants = \"default\";\n\n @Watch(\"target\")\n watchPropHandler(newValue: string, oldValue: string): void {\n //added for gatsby rehydration issue where prop is initially undefined but then changes to actual value\n onComponentPropUndefinedChange(oldValue, newValue, () => {\n this.createTopObserver(newValue);\n });\n }\n\n componentWillLoad(): void {\n this.createTopObserver(this.target);\n this.checkForClassificationBanner();\n\n //observer for when footer scrolls into view\n let footers = document.querySelectorAll(\n \"ic-footer\"\n ) as NodeListOf<HTMLElement>;\n if (footers.length === 0) {\n footers = document.querySelectorAll(\"footer\");\n }\n\n if (footers.length) {\n const footerEl = footers[footers.length - 1];\n const threshold = this.bannerOffset ? 0.15 : 0;\n const footerObserver = new IntersectionObserver(\n this.footerObserverCallback,\n { threshold: [threshold] }\n );\n footerObserver.observe(footerEl);\n }\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.target, propName: \"target\" }],\n \"Back to Top\"\n );\n }\n\n private getObservedEl = () => {\n return document.querySelector(\"#ic-back-to-top-target\");\n };\n\n private setTargetElVisible = (visible: boolean) => {\n this.targetElVisible = visible;\n };\n\n private setFooterVisible = (visible: boolean) => {\n this.checkForClassificationBanner();\n this.footerVisible =\n typeof window !== \"undefined\" && window.scrollY === 0 ? false : visible;\n };\n\n private targetElObserverCallback = (entries: IntersectionObserverEntry[]) => {\n this.setTargetElVisible(entries[0].isIntersecting);\n };\n\n private footerObserverCallback = (entries: IntersectionObserverEntry[]) => {\n this.setFooterVisible(entries[0].isIntersecting);\n };\n\n private findTargetEl = (target: string): Element | null => {\n let targetElement = null;\n if (target === null || target === undefined) {\n console.log(\n \"Error: No target ID specified for back to top component - defaulting to top of page\"\n );\n } else {\n targetElement = document.querySelector(\n `${target.startsWith(\"#\") ? \"\" : \"#\"}${target}`\n );\n if (targetElement === null) {\n console.log(\n `Error: Back to top target element '${target}' not found - defaulting to top of page`\n );\n }\n }\n return targetElement;\n };\n\n private createTopObserver = (target: string) => {\n this.targetEl = this.findTargetEl(target);\n let objParent: HTMLElement;\n\n //remove old element & observer\n if (this.topObserver !== null) {\n const observedEl = this.getObservedEl();\n if (observedEl !== null) {\n this.topObserver.unobserve(observedEl);\n observedEl.remove();\n }\n }\n\n if (this.targetEl === null) {\n objParent = document.body;\n this.targetEl = objParent.firstElementChild;\n this.isTargetElNull = true;\n } else {\n objParent = this.targetEl.parentNode as HTMLElement;\n this.isTargetElNull = false;\n }\n\n //insert a new 0px height element before specified target that can be used to determine when page is scrolled\n const objBackToTopTargetEl = document.createElement(\"div\");\n objBackToTopTargetEl.setAttribute(\"id\", \"ic-back-to-top-target\");\n objBackToTopTargetEl.setAttribute(\"tabindex\", \"-1\"); // Needed for virtual cursor behaviour to work\n objParent.insertBefore(objBackToTopTargetEl, this.targetEl);\n\n // resize observer needs to factor in any top margin on the target el\n const marginTop = this.targetEl\n ? getComputedStyle(this.targetEl).marginTop\n : 0;\n this.topObserver = new IntersectionObserver(this.targetElObserverCallback, {\n threshold: [0],\n rootMargin: `${marginTop} 0px 0px 0px`,\n });\n this.topObserver.observe(objBackToTopTargetEl);\n };\n\n private handleClick = () => {\n if (this.isTargetElNull) {\n window.scrollTo(0, 0);\n } else {\n this.targetEl?.scrollIntoView();\n }\n // Get virtual cursor to move\n (this.getObservedEl() as HTMLElement).focus();\n };\n\n private checkForClassificationBanner = () => {\n //adjust position for classification banner at bottom\n const banners = document.querySelectorAll(\n \"ic-classification-banner:not([inline='true'])\"\n );\n this.bannerOffset = banners.length > 0;\n };\n\n render() {\n const { variant, bannerOffset, targetElVisible, footerVisible } = this;\n const btnVariant = variant === \"icon\" ? \"icon-secondary\" : \"secondary\";\n const size = variant === \"icon\" ? \"large\" : \"medium\";\n const label = variant === \"icon\" ? \"\" : backToTopLabel;\n\n return (\n <Host\n class={{\n [`ic-theme-${this.theme}`]: this.theme !== \"inherit\",\n [`ic-back-to-top-${this.position}`]: true,\n }}\n >\n <ic-button\n aria-label={backToTopLabel}\n variant={btnVariant}\n size={size}\n onClick={this.handleClick}\n class={{\n [\"offset-banner\"]: bannerOffset,\n [\"show\"]: !targetElVisible,\n [\"by-footer\"]: footerVisible,\n [\"icon-only\"]: variant === \"icon\",\n }}\n theme={this.theme}\n >\n <span class=\"ic-back-to-top-icon\" innerHTML={ArrowUpward} />\n {label}\n </ic-button>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-back-to-top.entry.js","mappings":"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","names":[],"sources":["src/components/ic-back-to-top/ic-back-to-top.css?tag=ic-back-to-top&encapsulation=shadow","src/components/ic-back-to-top/ic-back-to-top.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n/**\n * @prop --ic-z-index-back-to-top: z-index of back to top\n * @prop --margin-right: right y-position of back to top\n * @prop --margin-left: left y-position of back to top\n * @prop --footer-offset: offset of x-position from footer\n */\n\n:host {\n display: flex;\n flex: row;\n height: 0.1px;\n}\n\n:host(.ic-back-to-top-right) {\n justify-content: flex-end;\n}\n\n:host(.ic-back-to-top-right) ic-button {\n margin-right: var(--margin-right, 1rem);\n}\n\n:host(.ic-back-to-top-right) .ic-back-to-top-icon {\n padding-top: var(--ic-space-xxs);\n padding-right: var(--ic-space-xs);\n}\n\n:host(.ic-back-to-top-left) {\n justify-content: flex-start;\n}\n\n:host(.ic-back-to-top-left) ic-button {\n margin-left: var(--margin-left, 1rem);\n}\n\n:host(.ic-back-to-top-left) .ic-back-to-top-icon {\n padding-top: var(--ic-space-xxs);\n padding-right: var(--ic-space-xs);\n}\n\n:host(.ic-back-to-top-center) {\n justify-content: center;\n}\n\n:host(.ic-back-to-top-center) .ic-back-to-top-icon {\n padding-top: var(--ic-space-xxs);\n padding-right: var(--ic-space-xs);\n}\n\nic-button {\n height: 2.5rem;\n align-items: center;\n background-color: var(--ic-color-background-primary);\n border-radius: 5rem;\n box-shadow: var(--ic-elevation-overlay);\n visibility: hidden;\n position: fixed;\n bottom: var(--ic-space-md);\n opacity: 0;\n transition: visibility 0s linear var(--ic-transition-duration-slow),\n opacity var(--ic-transition-duration-slow);\n z-index: var(--ic-z-index-back-to-top);\n}\n\n:host(.ic-back-to-top-variant-icon) ic-button::part(button) {\n margin: 0;\n}\n\nic-button::part(button) {\n border-radius: 5rem;\n}\n\nic-button.show {\n visibility: visible;\n opacity: 1;\n transition: visibility 0s linear 0s,\n opacity var(--ic-transition-duration-slow),\n box-shadow var(--ic-easing-transition-fast);\n}\n\nic-button.offset-banner:not(.by-footer) {\n margin-bottom: var(--footer-offset, var(--ic-space-lg));\n}\n\n.ic-back-to-top-icon > svg {\n height: var(--ic-space-md);\n width: var(--ic-space-md);\n}\n\n.icon-only {\n width: 2.5rem;\n}\n\n.icon-only .ic-back-to-top-icon > svg {\n padding-left: calc(var(--ic-space-xs) - var(--ic-space-1px));\n}\n\nic-button.by-footer {\n position: relative;\n bottom: var(--footer-offset, 3.5rem);\n}\n\n@media (forced-colors: active) {\n .icon-only .ic-back-to-top-icon > svg {\n padding-left: calc(var(--ic-space-xs) - var(--ic-space-xxxs));\n }\n}\n","import { Component, h, Host, Element, Prop, State, Watch } from \"@stencil/core\";\nimport ArrowUpward from \"./assets/ArrowUpward.svg\";\nimport {\n onComponentPropUndefinedChange,\n onComponentRequiredPropUndefined,\n} from \"../../utils/helpers\";\nimport { IcThemeMode } from \"../../utils/types\";\nimport {\n IcBackToTopVariants,\n IcBackToTopPositions,\n} from \"./ic-back-to-top.types\";\n\nconst backToTopLabel = \"Back to top\";\n\n@Component({\n tag: \"ic-back-to-top\",\n styleUrl: \"ic-back-to-top.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class BackToTop {\n private isTargetElNull: boolean;\n private targetEl: Element | null;\n private topObserver: IntersectionObserver | null = null;\n\n @Element() el: HTMLIcBackToTopElement;\n\n @State() bannerOffset: boolean = false;\n @State() footerVisible: boolean = false;\n @State() targetElVisible: boolean = true;\n\n /**\n * The horizontal position of the element.\n */\n @Prop() position?: IcBackToTopPositions = \"right\";\n\n /**\n * The ID of the element to jump back to when the link is clicked.\n */\n @Prop() target!: string;\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * The variant of the button to render\n */\n @Prop() variant?: IcBackToTopVariants = \"default\";\n\n @Watch(\"target\")\n watchPropHandler(newValue: string, oldValue: string): void {\n //added for gatsby rehydration issue where prop is initially undefined but then changes to actual value\n onComponentPropUndefinedChange(oldValue, newValue, () => {\n this.createTopObserver(newValue);\n });\n }\n\n componentWillLoad(): void {\n this.createTopObserver(this.target);\n this.checkForClassificationBanner();\n\n //observer for when footer scrolls into view\n let footers = document.querySelectorAll(\n \"ic-footer\"\n ) as NodeListOf<HTMLElement>;\n if (footers.length === 0) {\n footers = document.querySelectorAll(\"footer\");\n }\n\n if (footers.length) {\n const footerEl = footers[footers.length - 1];\n const threshold = this.bannerOffset ? 0.15 : 0;\n const footerObserver = new IntersectionObserver(\n this.footerObserverCallback,\n { threshold: [threshold] }\n );\n footerObserver.observe(footerEl);\n }\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.target, propName: \"target\" }],\n \"Back to Top\"\n );\n }\n\n private getObservedEl = () => {\n return document.querySelector(\"#ic-back-to-top-target\");\n };\n\n private setTargetElVisible = (visible: boolean) => {\n this.targetElVisible = visible;\n };\n\n private setFooterVisible = (visible: boolean) => {\n this.checkForClassificationBanner();\n this.footerVisible =\n typeof window !== \"undefined\" && window.scrollY === 0 ? false : visible;\n };\n\n private targetElObserverCallback = (entries: IntersectionObserverEntry[]) => {\n this.setTargetElVisible(entries[0].isIntersecting);\n };\n\n private footerObserverCallback = (entries: IntersectionObserverEntry[]) => {\n this.setFooterVisible(entries[0].isIntersecting);\n };\n\n private findTargetEl = (target: string): Element | null => {\n let targetElement = null;\n if (target === null || target === undefined) {\n console.log(\n \"Error: No target ID specified for back to top component - defaulting to top of page\"\n );\n } else {\n targetElement = document.querySelector(\n `${target.startsWith(\"#\") ? \"\" : \"#\"}${target}`\n );\n if (targetElement === null) {\n console.log(\n `Error: Back to top target element '${target}' not found - defaulting to top of page`\n );\n }\n }\n return targetElement;\n };\n\n private createTopObserver = (target: string) => {\n this.targetEl = this.findTargetEl(target);\n let objParent: HTMLElement;\n\n //remove old element & observer\n if (this.topObserver !== null) {\n const observedEl = this.getObservedEl();\n if (observedEl !== null) {\n this.topObserver.unobserve(observedEl);\n observedEl.remove();\n }\n }\n\n if (this.targetEl === null) {\n objParent = document.body;\n this.targetEl = objParent.firstElementChild;\n this.isTargetElNull = true;\n } else {\n objParent = this.targetEl.parentNode as HTMLElement;\n this.isTargetElNull = false;\n }\n\n //insert a new 0px height element before specified target that can be used to determine when page is scrolled\n const objBackToTopTargetEl = document.createElement(\"div\");\n objBackToTopTargetEl.setAttribute(\"id\", \"ic-back-to-top-target\");\n objBackToTopTargetEl.setAttribute(\"tabindex\", \"-1\"); // Needed for virtual cursor behaviour to work\n objParent.insertBefore(objBackToTopTargetEl, this.targetEl);\n\n // resize observer needs to factor in any top margin on the target el\n const marginTop = this.targetEl\n ? getComputedStyle(this.targetEl).marginTop\n : 0;\n this.topObserver = new IntersectionObserver(this.targetElObserverCallback, {\n threshold: [0],\n rootMargin: `${marginTop} 0px 0px 0px`,\n });\n this.topObserver.observe(objBackToTopTargetEl);\n };\n\n private handleClick = () => {\n if (this.isTargetElNull) {\n window.scrollTo(0, 0);\n } else {\n this.targetEl?.scrollIntoView();\n }\n // Get virtual cursor to move\n (this.getObservedEl() as HTMLElement).focus();\n };\n\n private checkForClassificationBanner = () => {\n //adjust position for classification banner at bottom\n const banners = document.querySelectorAll(\n \"ic-classification-banner:not([inline='true'])\"\n );\n this.bannerOffset = banners.length > 0;\n };\n\n render() {\n const { variant, bannerOffset, targetElVisible, footerVisible } = this;\n const btnVariant = variant === \"icon\" ? \"icon-secondary\" : \"secondary\";\n const size = variant === \"icon\" ? \"large\" : \"medium\";\n const label = variant === \"icon\" ? \"\" : backToTopLabel;\n\n return (\n <Host\n class={{\n [`ic-theme-${this.theme}`]: this.theme !== \"inherit\",\n [`ic-back-to-top-${this.position}`]: true,\n [`ic-back-to-top-variant-icon`]: variant === \"icon\",\n }}\n >\n <ic-button\n aria-label={backToTopLabel}\n variant={btnVariant}\n size={size}\n onClick={this.handleClick}\n class={{\n [\"offset-banner\"]: bannerOffset,\n [\"show\"]: !targetElVisible,\n [\"by-footer\"]: footerVisible,\n [\"icon-only\"]: variant === \"icon\",\n }}\n theme={this.theme}\n >\n <span class=\"ic-back-to-top-icon\" innerHTML={ArrowUpward} />\n {label}\n </ic-button>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, h, H as Host, g as getElement } from './index-a7a720e7.js';
2
- import { d as convertToRGBA, g as getBrandForegroundAppearance, e as isPropDefined, o as onComponentRequiredPropUndefined } from './helpers-4ddac6ed.js';
2
+ import { d as convertToRGBA, g as getBrandForegroundAppearance, e as isPropDefined, o as onComponentRequiredPropUndefined } from './helpers-dcedb279.js';
3
3
  import './constants-7960cba4.js';
4
4
 
5
5
  const icBadgeCss = "@media (prefers-reduced-motion: no-preference){:host(.ic-badge-show){animation:expand var(--ic-transition-duration-slow)}:host(.ic-badge-hide){animation:shrink var(--ic-transition-duration-slow)}}:host{display:flex;height:var(--ic-space-md);min-width:var(--ic-space-md);width:-moz-fit-content;width:fit-content;border-radius:calc(2 * var(--ic-space-xxl));position:absolute}:host ic-typography{--ic-typography-color:var(--ic-badge-text)}:host(.ic-badge-neutral){background-color:var(--ic-badge-dark) !important}:host(.ic-badge-light) ic-typography{--ic-typography-color:var(--ic-badge-text-monochrome)}:host(.ic-badge-light) ::slotted(*){fill:var(--ic-badge-icon-monochrome)}:host(.ic-badge-info){background-color:var(--ic-badge-info) !important}:host(.ic-badge-light){background-color:var(--ic-badge-light) !important}:host(.ic-badge-warning){background-color:var(--ic-badge-warning) !important}:host(.ic-badge-warning) ic-typography{--ic-typography-color:var(--ic-badge-warning-text)}:host(.ic-badge-warning) ::slotted(*){fill:var(--ic-badge-warning-icon)}:host(.ic-badge-error){background-color:var(--ic-badge-error) !important}:host(.ic-badge-success){background-color:var(--ic-badge-success) !important}:host(.ic-badge-ai){background-color:var(--ic-badge-ai) !important}:host(.ic-badge-small){height:var(--ic-space-sm);min-width:var(--ic-space-sm)}:host(.ic-badge-large){height:calc(var(--ic-space-md) + var(--ic-space-xxs));min-width:calc(var(--ic-space-md) + var(--ic-space-xxs))}:host(.ic-badge-dot.ic-badge-medium){height:var(--ic-space-xs);width:var(--ic-space-xs);min-width:var(--ic-space-xs)}:host(.ic-badge-dot.ic-badge-small){height:calc(var(--ic-space-xxs) + var(--ic-space-xxxs));width:calc(var(--ic-space-xxs) + var(--ic-space-xxxs));min-width:calc(var(--ic-space-xxs) + var(--ic-space-xxxs))}:host(.ic-badge-dot.ic-badge-large){height:var(--ic-space-sm);width:var(--ic-space-sm);min-width:var(--ic-space-sm)}:host ::slotted(*){fill:var(--ic-badge-icon)}:host(.ic-badge-foreground-dark) ::slotted(*){fill:var(--ic-color-text-primary-light)}:host(.ic-badge-foreground-light) ::slotted(*){fill:white}:host(.ic-badge-foreground-dark) ic-typography{--ic-typography-color:var(--ic-color-text-primary-light)}:host(.ic-badge-foreground-light) ic-typography{--ic-typography-color:var(--ic-color-text-primary-dark)}:host(.ic-badge-text) ic-typography{align-self:center;padding:0 calc((var(--ic-space-xs) + var(--ic-space-1px)) / 2)\n var(--ic-space-1px)}:host(.ic-badge-text.ic-badge-small) ic-typography{padding:0 0.2132rem}:host(.ic-badge-text.ic-badge-large) ic-typography{padding:0 calc((var(--ic-space-sm) + var(--ic-space-1px)) / 2)\n var(--ic-space-1px)}:host(.ic-badge-icon) ::slotted(svg){width:var(--ic-space-sm);height:var(--ic-space-sm);padding:var(--ic-space-xxxs)}:host(.ic-badge-icon.ic-badge-small) ::slotted(svg){width:var(--ic-space-xs);height:var(--ic-space-xs)}:host(.ic-badge-icon.ic-badge-large) ::slotted(svg){width:calc(var(--ic-space-sm) + var(--ic-space-xxxs));height:calc(var(--ic-space-sm) + var(--ic-space-xxxs));padding:calc(var(--ic-space-xxxs) + var(--ic-space-1px))}:host(.ic-badge-far){top:calc(-1 * var(--ic-space-xs));right:calc(-1 * var(--ic-space-xs))}:host(.ic-badge-far.ic-badge-small),:host(.ic-badge-dot.ic-badge-far.ic-badge-large){top:calc(-1 * var(--ic-space-xxs));right:calc(-1 * var(--ic-space-xxs))}:host(.ic-badge-dot.ic-badge-far),:host(.ic-badge-dot.ic-badge-far.ic-badge-small){top:calc(-1 * var(--ic-space-xxxs));right:calc(-1 * var(--ic-space-xxxs))}:host(.ic-badge-near){top:calc(-1 * calc(var(--ic-space-xxs) + var(--ic-space-1px)));right:calc(-1 * calc(var(--ic-space-xxs) + var(--ic-space-1px)))}:host(.ic-badge-dot.ic-badge-near){top:calc(-1 * var(--ic-space-1px));right:calc(-1 * var(--ic-space-1px))}:host(.ic-badge-inline){position:static}:host(.ic-badge-hide){visibility:hidden !important;transition:visibility var(--ic-transition-duration-slow)}.sr-only{position:absolute;left:-9999px}.sr-only:dir(rtl){right:-9999px}@keyframes expand{from{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes shrink{from{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(0)}}";
@@ -157,7 +157,7 @@ const Badge = class {
157
157
  }
158
158
  render() {
159
159
  const { ariaLabel, el, foregroundColour, getLabel, position, size, label, type, variant, visible, theme, } = this;
160
- return (h(Host, { key: '43b8e638c7b0965ad3591f8b306637b7b5aeea58', class: {
160
+ return (h(Host, { key: '0a7aab65643b79886f4134e59c195e33d8340e43', class: {
161
161
  [`ic-badge-${position}`]: true,
162
162
  [`ic-badge-${size}`]: true,
163
163
  [`ic-badge-${variant}`]: true,
@@ -165,7 +165,7 @@ const Badge = class {
165
165
  [`ic-badge-foreground-${foregroundColour}`]: foregroundColour !== null && variant === "custom",
166
166
  [`${visible ? "ic-badge-show" : "ic-badge-hide"}`]: true,
167
167
  [`ic-theme-${theme}`]: theme !== "inherit",
168
- }, id: el.id || null, "aria-label": ariaLabel, role: "status" }, type === "icon" && h("slot", { key: '7f8a72f58bc485b3bfe69ef67d4e43d75a995f1f', name: "badge-icon" }), type === "text" && label && (h("ic-typography", { key: 'fe925213d388d0b3be444b9ab16a2a9a4cbc2649', variant: size === "small" ? "badge-small" : "badge" }, getLabel())), type === "dot" && h("span", { key: 'e6e8d7092112d105fb3914002b53a083c540fe47', class: "sr-only" }, "badge")));
168
+ }, id: el.id || null, "aria-label": ariaLabel, role: "status" }, type === "icon" && h("slot", { key: 'e9684e9e92784e628f984a4980b512268565de0f', name: "badge-icon" }), type === "text" && label && (h("ic-typography", { key: 'f02681caadcec768afe078a9fe94aa1fe8314895', variant: size === "small" ? "badge-small" : "badge" }, getLabel())), type === "dot" && h("span", { key: '5065cf6a359ef976dac4c914bca25e8999f54ae1', class: "sr-only" }, "badge")));
169
169
  }
170
170
  static get delegatesFocus() { return true; }
171
171
  get el() { return getElement(this); }
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, h, H as Host, g as getElement } from './index-a7a720e7.js';
2
- import { D as DEVICE_SIZES, f as getCurrentDeviceSize, h as checkResizeObserver } from './helpers-4ddac6ed.js';
2
+ import { D as DEVICE_SIZES, f as getCurrentDeviceSize, h as checkResizeObserver } from './helpers-dcedb279.js';
3
3
  import './constants-7960cba4.js';
4
4
 
5
5
  const icBreadcrumbGroupCss = ":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}";
@@ -217,11 +217,11 @@ const BreadcrumbGroup = class {
217
217
  }
218
218
  render() {
219
219
  const { backBreadcrumbOnly, collapsed, theme } = this;
220
- return (h(Host, { key: 'e9547e6fce74b57f2a3d7904bdca580c59abf881', class: {
220
+ return (h(Host, { key: 'c2828a2c275ac4341d26054b2de81bd93591a783', class: {
221
221
  "ic-breadcrumb-group-back": backBreadcrumbOnly,
222
222
  "ic-breadcrumb-group-collapsed": collapsed,
223
223
  [`ic-theme-${theme}`]: theme !== "inherit",
224
- } }, h("nav", { key: '56fd90771323680169a7e2ff757c534f499bda48', "aria-label": "breadcrumbs" }, h("ol", { key: '2817e0c715c94937436a41222f86a0e5e6b9cc92' }, h("slot", { key: '137e284689752e6256c39ecc19988aafd3e49942' })))));
224
+ } }, h("nav", { key: '44c0b96801da788bbfa96b138348d05214270b60', "aria-label": "breadcrumbs" }, h("ol", { key: '1f0549af4262e1f3181168dce91b7af6c6820dc3' }, h("slot", { key: '8603a718735d00643bedf8b3b3fed554234d710e' })))));
225
225
  }
226
226
  get el() { return getElement(this); }
227
227
  static get watchers() { return {
@@ -1,6 +1,6 @@
1
1
  import { r as registerInstance, h, H as Host, g as getElement } from './index-a7a720e7.js';
2
2
  import { C as Chevron } from './chevron-icon-589e3b46.js';
3
- import { u as getSlotElements, i as isSlotUsed } from './helpers-4ddac6ed.js';
3
+ import { u as getSlotElements, i as isSlotUsed } from './helpers-dcedb279.js';
4
4
  import './constants-7960cba4.js';
5
5
 
6
6
  const backIcon = `<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
@@ -8,7 +8,7 @@ const backIcon = `<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/
8
8
  </svg>
9
9
  `;
10
10
 
11
- const icBreadcrumbCss = ":host{display:block;margin:var(--ic-space-xs) var(--ic-space-xs) var(--ic-space-xs) 0}:host .breadcrumb{display:flex;align-items:center;white-space:nowrap;gap:var(--ic-space-xs);min-height:var(--ic-space-lg)}:host .chevron{width:var(--ic-space-lg);height:var(--ic-space-lg)}:host .chevron svg,:host(.ic-breadcrumb-monochrome) .chevron svg{color:var(--ic-breadcrumb-icon-chevron)}:host(:first-child) .chevron{display:none}.back-icon svg{color:var(--ic-breadcrumb-icon)}:host(.ic-breadcrumb-monochrome) .back-icon svg{color:var(--ic-breadcrumb-icon-monochrome)}:host(.ic-breadcrumb-back){display:flex;align-items:center}:host(.ic-breadcrumb-back) .chevron{display:none}ic-link{--breadcrumb-link-display:inline-flex;--breadcrumb-link-align-items:center;--breadcrumb-link-gap:var(--ic-space-xs)}:host([aria-current=\"page\"]){cursor:text}:host([aria-current=\"page\"]) .current-page-container{display:flex;align-items:center;gap:var(--ic-space-xs);color:var(--ic-breadcrumb-text)}:host([aria-current=\"page\"].ic-breadcrumb-monochrome) .current-page-container{color:var(--ic-breadcrumb-text-monochrome)}:host([aria-current=\"page\"]) slot{pointer-events:none}:host(.collapsed-breadcrumb-wrapper){margin-right:var(--ic-space-xs) !important;display:flex;align-items:center;gap:var(--ic-space-xs)}:host(.collapsed-breadcrumb-wrapper) ::slotted(.collapsed-breadcrumb){border:none;background-color:transparent;color:var(--ic-color-hyperlink-default);text-decoration:underline;font-weight:var(--ic-font-weight-bold);cursor:pointer}:host(.collapsed-breadcrumb-wrapper) ::slotted(.collapsed-breadcrumb:hover),:host(.collapsed-breadcrumb-wrapper) ::slotted(.collapsed-breadcrumb:focus){outline:var(--ic-hc-focus-outline);border-bottom:0.25rem solid !important;margin-bottom:-0.25rem !important;text-decoration:none}.hide,:host(.collapsed-breadcrumb-wrapper) ::slotted(.hide){display:none}.slotted-link-container{gap:var(--ic-space-xs);display:flex}.slotted-link-container .back-icon{width:1.5rem;height:1.5rem}.slotted-link-container .link-wrapper{line-height:1.5rem}@media (forced-colors: active){.back-icon svg{color:currentcolor}}@supports (text-underline-offset: 25%){ic-link{--breadcrumb-link-display:flex}:host(.collapsed-breadcrumb-wrapper) ::slotted(.collapsed-breadcrumb:hover),:host(.collapsed-breadcrumb-wrapper) ::slotted(.collapsed-breadcrumb:focus){text-decoration-line:underline;text-decoration-thickness:25%;text-underline-offset:25%;border-bottom:0 !important;margin-bottom:0 !important}}";
11
+ const icBreadcrumbCss = ":host{display:block;margin:var(--ic-space-xs) var(--ic-space-xs) var(--ic-space-xs) 0}:host .breadcrumb{display:flex;align-items:center;white-space:nowrap;gap:var(--ic-space-xs);min-height:var(--ic-space-lg)}:host .chevron{width:var(--ic-space-lg);height:var(--ic-space-lg)}:host .chevron svg,:host(.ic-breadcrumb-monochrome) .chevron svg{color:var(--ic-breadcrumb-icon-chevron)}:host(:first-child) .chevron{display:none}.back-icon svg{color:var(--ic-breadcrumb-icon)}:host(.ic-breadcrumb-monochrome) .back-icon svg{color:var(--ic-breadcrumb-icon-monochrome)}:host(.ic-breadcrumb-back){display:flex;align-items:center}:host(.ic-breadcrumb-back) .chevron{display:none}ic-link{--breadcrumb-link-display:inline-flex;--breadcrumb-link-align-items:center;--breadcrumb-link-gap:var(--ic-space-xs)}:host(.ic-breadcrumb-aria-current-page){cursor:text}:host(.ic-breadcrumb-aria-current-page) .current-page-container{display:flex;align-items:center;gap:var(--ic-space-xs);color:var(--ic-breadcrumb-text)}:host(.ic-breadcrumb-aria-current-page).ic-breadcrumb-monochrome .current-page-container{color:var(--ic-breadcrumb-text-monochrome)}:host(.ic-breadcrumb-aria-current-page) slot{pointer-events:none}:host(.collapsed-breadcrumb-wrapper){margin-right:var(--ic-space-xs) !important;display:flex;align-items:center;gap:var(--ic-space-xs)}:host(.collapsed-breadcrumb-wrapper) ::slotted(.collapsed-breadcrumb){border:none;background-color:transparent;color:var(--ic-color-hyperlink-default);text-decoration:underline;font-weight:var(--ic-font-weight-bold);cursor:pointer}:host(.collapsed-breadcrumb-wrapper) ::slotted(.collapsed-breadcrumb:hover),:host(.collapsed-breadcrumb-wrapper) ::slotted(.collapsed-breadcrumb:focus){outline:var(--ic-hc-focus-outline);border-bottom:0.25rem solid !important;margin-bottom:-0.25rem !important;text-decoration:none}.hide,:host(.collapsed-breadcrumb-wrapper) ::slotted(.hide){display:none}.slotted-link-container{gap:var(--ic-space-xs);display:flex}.slotted-link-container .back-icon{width:1.5rem;height:1.5rem}.slotted-link-container .link-wrapper{line-height:1.5rem}@media (forced-colors: active){.back-icon svg{color:currentcolor}}@supports (text-underline-offset: 25%){ic-link{--breadcrumb-link-display:flex}:host(.collapsed-breadcrumb-wrapper) ::slotted(.collapsed-breadcrumb:hover),:host(.collapsed-breadcrumb-wrapper) ::slotted(.collapsed-breadcrumb:focus){text-decoration-line:underline;text-decoration-thickness:25%;text-underline-offset:25%;border-bottom:0 !important;margin-bottom:0 !important}}";
12
12
  const IcBreadcrumbStyle0 = icBreadcrumbCss;
13
13
 
14
14
  const Breadcrumb = class {
@@ -95,11 +95,12 @@ const Breadcrumb = class {
95
95
  render() {
96
96
  const { current, href, monochrome, pageTitle, showBackIcon, theme } = this;
97
97
  const describedById = `${pageTitle === null || pageTitle === void 0 ? void 0 : pageTitle.toLowerCase().replace(" ", "-")}-describedby`;
98
- return (h(Host, { key: '2c1131138a8be3af8ee344e0fbff5594fbcc2d77', class: {
98
+ return (h(Host, { key: '35d95efd65cb713a1b9b614aa7162a328f1fd5bd', class: {
99
99
  "ic-breadcrumb-back": showBackIcon,
100
100
  "ic-breadcrumb-monochrome": monochrome,
101
101
  [`ic-theme-${theme}`]: theme !== "inherit",
102
- }, "aria-current": current && "page", role: "listitem" }, h("div", { key: 'ee77a3aeced7063c4dbab6e1641daf11242d63ca', class: "breadcrumb" }, h("span", { key: '1c2dc66e95e0676a381ab25769aa1b735ee5b9c5', innerHTML: Chevron, class: "chevron", "aria-hidden": "true" }), showBackIcon && (h("span", { key: '3857c2967dd82b45a2400107e50d6f03bc65cdde', id: describedById, class: "hide" }, `Back to ${pageTitle}`)), !href ? (h("div", { class: "slotted-link-container" }, showBackIcon && this.renderBackIcon(), h("span", { class: "link-wrapper" }, h("slot", null)))) : current ? (h("span", { class: "current-page-container" }, isSlotUsed(this.el, "icon") && h("slot", { name: "icon" }), pageTitle)) : (h("ic-link", { theme: theme, monochrome: monochrome, href: href, class: "breadcrumb-link", "aria-describedby": showBackIcon && describedById }, showBackIcon && this.renderBackIcon(), isSlotUsed(this.el, "icon") && h("slot", { name: "icon" }), pageTitle)))));
102
+ [`ic-breadcrumb-aria-current-page`]: current,
103
+ }, "aria-current": current && "page", role: "listitem" }, h("div", { key: '126bfcb069004244fc0beb4b3f5e3dab652a4057', class: "breadcrumb" }, h("span", { key: '24c4bd1741b5a65b8d348280bd3c680db15edcfc', innerHTML: Chevron, class: "chevron", "aria-hidden": "true" }), showBackIcon && (h("span", { key: '501ae0ebd6ce1b77026ab8c447f59abf00db7c73', id: describedById, class: "hide" }, `Back to ${pageTitle}`)), !href ? (h("div", { class: "slotted-link-container" }, showBackIcon && this.renderBackIcon(), h("span", { class: "link-wrapper" }, h("slot", null)))) : current ? (h("span", { class: "current-page-container" }, isSlotUsed(this.el, "icon") && h("slot", { name: "icon" }), pageTitle)) : (h("ic-link", { theme: theme, monochrome: monochrome, href: href, class: "breadcrumb-link", "aria-describedby": showBackIcon && describedById }, showBackIcon && this.renderBackIcon(), isSlotUsed(this.el, "icon") && h("slot", { name: "icon" }), pageTitle)))));
103
104
  }
104
105
  static get delegatesFocus() { return true; }
105
106
  get el() { return getElement(this); }
@@ -1 +1 @@
1
- {"file":"ic-breadcrumb.entry.js","mappings":"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","names":["chevronIcon"],"sources":["src/components/ic-breadcrumb/ic-breadcrumb.css?tag=ic-breadcrumb&encapsulation=shadow","src/components/ic-breadcrumb/ic-breadcrumb.tsx"],"sourcesContent":[":host {\n display: block;\n margin: var(--ic-space-xs) var(--ic-space-xs) var(--ic-space-xs) 0;\n}\n\n:host .breadcrumb {\n display: flex;\n align-items: center;\n white-space: nowrap;\n gap: var(--ic-space-xs);\n min-height: var(--ic-space-lg);\n}\n\n:host .chevron {\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n}\n\n:host .chevron svg,\n:host(.ic-breadcrumb-monochrome) .chevron svg {\n color: var(--ic-breadcrumb-icon-chevron);\n}\n\n:host(:first-child) .chevron {\n display: none;\n}\n\n.back-icon svg {\n color: var(--ic-breadcrumb-icon);\n}\n\n:host(.ic-breadcrumb-monochrome) .back-icon svg {\n color: var(--ic-breadcrumb-icon-monochrome);\n}\n\n:host(.ic-breadcrumb-back) {\n display: flex;\n align-items: center;\n}\n\n:host(.ic-breadcrumb-back) .chevron {\n display: none;\n}\n\nic-link {\n --breadcrumb-link-display: inline-flex;\n --breadcrumb-link-align-items: center;\n --breadcrumb-link-gap: var(--ic-space-xs);\n}\n\n:host([aria-current=\"page\"]) {\n cursor: text;\n}\n\n:host([aria-current=\"page\"]) .current-page-container {\n display: flex;\n align-items: center;\n gap: var(--ic-space-xs);\n color: var(--ic-breadcrumb-text);\n}\n\n:host([aria-current=\"page\"].ic-breadcrumb-monochrome) .current-page-container {\n color: var(--ic-breadcrumb-text-monochrome);\n}\n\n:host([aria-current=\"page\"]) slot {\n pointer-events: none;\n}\n\n:host(.collapsed-breadcrumb-wrapper) {\n margin-right: var(--ic-space-xs) !important;\n display: flex;\n align-items: center;\n gap: var(--ic-space-xs);\n}\n\n:host(.collapsed-breadcrumb-wrapper) ::slotted(.collapsed-breadcrumb) {\n border: none;\n background-color: transparent;\n color: var(--ic-color-hyperlink-default);\n text-decoration: underline;\n font-weight: var(--ic-font-weight-bold);\n cursor: pointer;\n}\n\n:host(.collapsed-breadcrumb-wrapper) ::slotted(.collapsed-breadcrumb:hover),\n:host(.collapsed-breadcrumb-wrapper) ::slotted(.collapsed-breadcrumb:focus) {\n outline: var(--ic-hc-focus-outline);\n border-bottom: 0.25rem solid !important;\n margin-bottom: -0.25rem !important;\n text-decoration: none;\n}\n\n.hide,\n:host(.collapsed-breadcrumb-wrapper) ::slotted(.hide) {\n display: none;\n}\n\n.slotted-link-container {\n gap: var(--ic-space-xs);\n display: flex;\n}\n\n.slotted-link-container .back-icon {\n width: 1.5rem;\n height: 1.5rem;\n}\n\n.slotted-link-container .link-wrapper {\n line-height: 1.5rem;\n}\n\n@media (forced-colors: active) {\n .back-icon svg {\n color: currentcolor;\n }\n}\n\n@supports (text-underline-offset: 25%) {\n ic-link {\n --breadcrumb-link-display: flex;\n }\n\n :host(.collapsed-breadcrumb-wrapper) ::slotted(.collapsed-breadcrumb:hover),\n :host(.collapsed-breadcrumb-wrapper) ::slotted(.collapsed-breadcrumb:focus) {\n text-decoration-line: underline;\n text-decoration-thickness: 25%;\n text-underline-offset: 25%;\n border-bottom: 0 !important;\n margin-bottom: 0 !important;\n }\n}\n","import {\n Component,\n Host,\n Prop,\n h,\n Element,\n Method,\n Watch,\n} from \"@stencil/core\";\n\nimport chevronIcon from \"../../assets/chevron-icon.svg\";\nimport backIcon from \"../../assets/back-icon.svg\";\nimport { getSlotElements, isSlotUsed } from \"../../utils/helpers\";\nimport { IcThemeMode } from \"../../utils/types\";\n\n/**\n * @slot icon - Content will be rendered to the left of the breadcrumb page title.\n */\n@Component({\n tag: \"ic-breadcrumb\",\n styleUrl: \"ic-breadcrumb.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class Breadcrumb {\n private HREF_ATTR = \"href\";\n private linkSlotContent: HTMLElement | null = null;\n private slottedLinkEl: HTMLElement | null = null;\n private slottedLinkHref: string | null = null;\n\n @Element() el: HTMLIcBreadcrumbElement;\n\n /**\n * If `true`, aria-current will be set on the breadcrumb.\n */\n @Prop() current = false;\n @Watch(\"current\")\n watchCurrentHandler(): void {\n this.updatedSlottedLinkFocus();\n this.el.ariaCurrent = this.current ? \"page\" : null;\n }\n\n /**\n * The URL that the breadcrumb link points to.\n */\n @Prop() href?: string;\n\n /**\n * @internal If `true`, the breadcrumb will display as black in the light theme, and white in the dark theme.\n */\n @Prop() monochrome = false;\n\n /**\n * The title of the breadcrumb.\n */\n @Prop() pageTitle!: string;\n\n /**\n * @internal If `true`, back icon will be displayed.\n */\n @Prop({ reflect: true }) showBackIcon = false;\n\n /**\n * @internal 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 // Prevent focus on breadcrumb if current page and contains slotted link\n private updatedSlottedLinkFocus = () => {\n // Sets tabindex on wrong element in unit test snapshots\n // - related to known Jest issue: https://github.com/ionic-team/stencil/issues/2830\n if (this.linkSlotContent) {\n this.linkSlotContent.tabIndex = this.current ? -1 : 0; // Prevent focus\n }\n\n if (this.current) {\n this.slottedLinkEl?.removeAttribute(this.HREF_ATTR); // Prevent screen reader announcing breadcrumb as a link\n } else if (this.slottedLinkHref) {\n this.slottedLinkEl?.setAttribute(this.HREF_ATTR, this.slottedLinkHref);\n }\n };\n\n private getSlottedLinkEl = () => {\n if (!this.linkSlotContent) return null;\n\n return this.linkSlotContent.hasAttribute(this.HREF_ATTR)\n ? this.linkSlotContent\n : this.linkSlotContent.querySelector<HTMLElement>(\"[href]\");\n };\n\n componentDidLoad(): void {\n const slottedLinkWrapper =\n this.el.shadowRoot?.querySelector(\".link-wrapper\");\n\n if (slottedLinkWrapper) {\n const slotEls = getSlotElements(slottedLinkWrapper);\n if (slotEls) {\n this.linkSlotContent = slotEls[0] as HTMLElement;\n this.slottedLinkEl = this.getSlottedLinkEl();\n this.slottedLinkHref = this.slottedLinkEl?.getAttribute(\"href\") || null;\n }\n this.updatedSlottedLinkFocus();\n }\n }\n\n componentWillRender(): void {\n const icLink = this.el.querySelector(\"ic-link\");\n if (icLink) {\n const CURRENT_PAGE = \"current-page\";\n icLink.classList.remove(CURRENT_PAGE);\n\n if (this.current && !icLink.classList.contains(CURRENT_PAGE)) {\n icLink.classList.add(\"breadcrumb-link\", CURRENT_PAGE);\n }\n }\n }\n\n /**\n * Sets focus on the breadcrumb.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.el.shadowRoot?.querySelector(\"ic-link\")?.focus();\n }\n\n private renderBackIcon = () => (\n <div class=\"back-icon\" innerHTML={backIcon}></div>\n );\n\n render() {\n const { current, href, monochrome, pageTitle, showBackIcon, theme } = this;\n const describedById = `${pageTitle\n ?.toLowerCase()\n .replace(\" \", \"-\")}-describedby`;\n\n return (\n <Host\n class={{\n \"ic-breadcrumb-back\": showBackIcon,\n \"ic-breadcrumb-monochrome\": monochrome,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n aria-current={current && \"page\"}\n role=\"listitem\"\n >\n <div class=\"breadcrumb\">\n <span innerHTML={chevronIcon} class=\"chevron\" aria-hidden=\"true\" />\n {showBackIcon && (\n <span\n id={describedById}\n class=\"hide\"\n >{`Back to ${pageTitle}`}</span>\n )}\n {!href ? (\n <div class=\"slotted-link-container\">\n {showBackIcon && this.renderBackIcon()}\n <span class=\"link-wrapper\">\n <slot />\n </span>\n </div>\n ) : current ? (\n <span class=\"current-page-container\">\n {isSlotUsed(this.el, \"icon\") && <slot name=\"icon\"></slot>}\n {pageTitle}\n </span>\n ) : (\n <ic-link\n theme={theme}\n monochrome={monochrome}\n href={href}\n class=\"breadcrumb-link\"\n aria-describedby={showBackIcon && describedById}\n >\n {showBackIcon && this.renderBackIcon()}\n {isSlotUsed(this.el, \"icon\") && <slot name=\"icon\"></slot>}\n {pageTitle}\n </ic-link>\n )}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-breadcrumb.entry.js","mappings":"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","names":["chevronIcon"],"sources":["src/components/ic-breadcrumb/ic-breadcrumb.css?tag=ic-breadcrumb&encapsulation=shadow","src/components/ic-breadcrumb/ic-breadcrumb.tsx"],"sourcesContent":[":host {\n display: block;\n margin: var(--ic-space-xs) var(--ic-space-xs) var(--ic-space-xs) 0;\n}\n\n:host .breadcrumb {\n display: flex;\n align-items: center;\n white-space: nowrap;\n gap: var(--ic-space-xs);\n min-height: var(--ic-space-lg);\n}\n\n:host .chevron {\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n}\n\n:host .chevron svg,\n:host(.ic-breadcrumb-monochrome) .chevron svg {\n color: var(--ic-breadcrumb-icon-chevron);\n}\n\n:host(:first-child) .chevron {\n display: none;\n}\n\n.back-icon svg {\n color: var(--ic-breadcrumb-icon);\n}\n\n:host(.ic-breadcrumb-monochrome) .back-icon svg {\n color: var(--ic-breadcrumb-icon-monochrome);\n}\n\n:host(.ic-breadcrumb-back) {\n display: flex;\n align-items: center;\n}\n\n:host(.ic-breadcrumb-back) .chevron {\n display: none;\n}\n\nic-link {\n --breadcrumb-link-display: inline-flex;\n --breadcrumb-link-align-items: center;\n --breadcrumb-link-gap: var(--ic-space-xs);\n}\n\n:host(.ic-breadcrumb-aria-current-page) {\n cursor: text;\n}\n\n:host(.ic-breadcrumb-aria-current-page) .current-page-container {\n display: flex;\n align-items: center;\n gap: var(--ic-space-xs);\n color: var(--ic-breadcrumb-text);\n}\n\n:host(.ic-breadcrumb-aria-current-page).ic-breadcrumb-monochrome\n .current-page-container {\n color: var(--ic-breadcrumb-text-monochrome);\n}\n\n:host(.ic-breadcrumb-aria-current-page) slot {\n pointer-events: none;\n}\n\n:host(.collapsed-breadcrumb-wrapper) {\n margin-right: var(--ic-space-xs) !important;\n display: flex;\n align-items: center;\n gap: var(--ic-space-xs);\n}\n\n:host(.collapsed-breadcrumb-wrapper) ::slotted(.collapsed-breadcrumb) {\n border: none;\n background-color: transparent;\n color: var(--ic-color-hyperlink-default);\n text-decoration: underline;\n font-weight: var(--ic-font-weight-bold);\n cursor: pointer;\n}\n\n:host(.collapsed-breadcrumb-wrapper) ::slotted(.collapsed-breadcrumb:hover),\n:host(.collapsed-breadcrumb-wrapper) ::slotted(.collapsed-breadcrumb:focus) {\n outline: var(--ic-hc-focus-outline);\n border-bottom: 0.25rem solid !important;\n margin-bottom: -0.25rem !important;\n text-decoration: none;\n}\n\n.hide,\n:host(.collapsed-breadcrumb-wrapper) ::slotted(.hide) {\n display: none;\n}\n\n.slotted-link-container {\n gap: var(--ic-space-xs);\n display: flex;\n}\n\n.slotted-link-container .back-icon {\n width: 1.5rem;\n height: 1.5rem;\n}\n\n.slotted-link-container .link-wrapper {\n line-height: 1.5rem;\n}\n\n@media (forced-colors: active) {\n .back-icon svg {\n color: currentcolor;\n }\n}\n\n@supports (text-underline-offset: 25%) {\n ic-link {\n --breadcrumb-link-display: flex;\n }\n\n :host(.collapsed-breadcrumb-wrapper) ::slotted(.collapsed-breadcrumb:hover),\n :host(.collapsed-breadcrumb-wrapper) ::slotted(.collapsed-breadcrumb:focus) {\n text-decoration-line: underline;\n text-decoration-thickness: 25%;\n text-underline-offset: 25%;\n border-bottom: 0 !important;\n margin-bottom: 0 !important;\n }\n}\n","import {\n Component,\n Host,\n Prop,\n h,\n Element,\n Method,\n Watch,\n} from \"@stencil/core\";\n\nimport chevronIcon from \"../../assets/chevron-icon.svg\";\nimport backIcon from \"../../assets/back-icon.svg\";\nimport { getSlotElements, isSlotUsed } from \"../../utils/helpers\";\nimport { IcThemeMode } from \"../../utils/types\";\n\n/**\n * @slot icon - Content will be rendered to the left of the breadcrumb page title.\n */\n@Component({\n tag: \"ic-breadcrumb\",\n styleUrl: \"ic-breadcrumb.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class Breadcrumb {\n private HREF_ATTR = \"href\";\n private linkSlotContent: HTMLElement | null = null;\n private slottedLinkEl: HTMLElement | null = null;\n private slottedLinkHref: string | null = null;\n\n @Element() el: HTMLIcBreadcrumbElement;\n\n /**\n * If `true`, aria-current will be set on the breadcrumb.\n */\n @Prop() current = false;\n @Watch(\"current\")\n watchCurrentHandler(): void {\n this.updatedSlottedLinkFocus();\n this.el.ariaCurrent = this.current ? \"page\" : null;\n }\n\n /**\n * The URL that the breadcrumb link points to.\n */\n @Prop() href?: string;\n\n /**\n * @internal If `true`, the breadcrumb will display as black in the light theme, and white in the dark theme.\n */\n @Prop() monochrome = false;\n\n /**\n * The title of the breadcrumb.\n */\n @Prop() pageTitle!: string;\n\n /**\n * @internal If `true`, back icon will be displayed.\n */\n @Prop({ reflect: true }) showBackIcon = false;\n\n /**\n * @internal 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 // Prevent focus on breadcrumb if current page and contains slotted link\n private updatedSlottedLinkFocus = () => {\n // Sets tabindex on wrong element in unit test snapshots\n // - related to known Jest issue: https://github.com/ionic-team/stencil/issues/2830\n if (this.linkSlotContent) {\n this.linkSlotContent.tabIndex = this.current ? -1 : 0; // Prevent focus\n }\n\n if (this.current) {\n this.slottedLinkEl?.removeAttribute(this.HREF_ATTR); // Prevent screen reader announcing breadcrumb as a link\n } else if (this.slottedLinkHref) {\n this.slottedLinkEl?.setAttribute(this.HREF_ATTR, this.slottedLinkHref);\n }\n };\n\n private getSlottedLinkEl = () => {\n if (!this.linkSlotContent) return null;\n\n return this.linkSlotContent.hasAttribute(this.HREF_ATTR)\n ? this.linkSlotContent\n : this.linkSlotContent.querySelector<HTMLElement>(\"[href]\");\n };\n\n componentDidLoad(): void {\n const slottedLinkWrapper =\n this.el.shadowRoot?.querySelector(\".link-wrapper\");\n\n if (slottedLinkWrapper) {\n const slotEls = getSlotElements(slottedLinkWrapper);\n if (slotEls) {\n this.linkSlotContent = slotEls[0] as HTMLElement;\n this.slottedLinkEl = this.getSlottedLinkEl();\n this.slottedLinkHref = this.slottedLinkEl?.getAttribute(\"href\") || null;\n }\n this.updatedSlottedLinkFocus();\n }\n }\n\n componentWillRender(): void {\n const icLink = this.el.querySelector(\"ic-link\");\n if (icLink) {\n const CURRENT_PAGE = \"current-page\";\n icLink.classList.remove(CURRENT_PAGE);\n\n if (this.current && !icLink.classList.contains(CURRENT_PAGE)) {\n icLink.classList.add(\"breadcrumb-link\", CURRENT_PAGE);\n }\n }\n }\n\n /**\n * Sets focus on the breadcrumb.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.el.shadowRoot?.querySelector(\"ic-link\")?.focus();\n }\n\n private renderBackIcon = () => (\n <div class=\"back-icon\" innerHTML={backIcon}></div>\n );\n\n render() {\n const { current, href, monochrome, pageTitle, showBackIcon, theme } = this;\n const describedById = `${pageTitle\n ?.toLowerCase()\n .replace(\" \", \"-\")}-describedby`;\n\n return (\n <Host\n class={{\n \"ic-breadcrumb-back\": showBackIcon,\n \"ic-breadcrumb-monochrome\": monochrome,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n [`ic-breadcrumb-aria-current-page`]: current,\n }}\n aria-current={current && \"page\"}\n role=\"listitem\"\n >\n <div class=\"breadcrumb\">\n <span innerHTML={chevronIcon} class=\"chevron\" aria-hidden=\"true\" />\n {showBackIcon && (\n <span\n id={describedById}\n class=\"hide\"\n >{`Back to ${pageTitle}`}</span>\n )}\n {!href ? (\n <div class=\"slotted-link-container\">\n {showBackIcon && this.renderBackIcon()}\n <span class=\"link-wrapper\">\n <slot />\n </span>\n </div>\n ) : current ? (\n <span class=\"current-page-container\">\n {isSlotUsed(this.el, \"icon\") && <slot name=\"icon\"></slot>}\n {pageTitle}\n </span>\n ) : (\n <ic-link\n theme={theme}\n monochrome={monochrome}\n href={href}\n class=\"breadcrumb-link\"\n aria-describedby={showBackIcon && describedById}\n >\n {showBackIcon && this.renderBackIcon()}\n {isSlotUsed(this.el, \"icon\") && <slot name=\"icon\"></slot>}\n {pageTitle}\n </ic-link>\n )}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}