@ukic/web-components 3.14.0 → 3.16.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 (414) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/ic-button_3.cjs.entry.js +5 -5
  3. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  4. package/dist/cjs/ic-checkbox-group.cjs.entry.js +2 -2
  5. package/dist/cjs/ic-checkbox.cjs.entry.js +31 -8
  6. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  7. package/dist/cjs/ic-data-list.cjs.entry.js +2 -2
  8. package/dist/cjs/ic-data-list.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ic-data-row.cjs.entry.js +2 -2
  10. package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ic-dialog.cjs.entry.js +1 -1
  12. package/dist/cjs/ic-empty-state.cjs.entry.js +2 -2
  13. package/dist/cjs/ic-footer-link.cjs.entry.js +2 -2
  14. package/dist/cjs/ic-footer.cjs.entry.js +9 -5
  15. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  16. package/dist/cjs/ic-hero.cjs.entry.js +11 -6
  17. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +5 -5
  19. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +10 -10
  20. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-input-label_2.cjs.entry.js +6 -6
  22. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  23. package/dist/cjs/ic-layout-grid-item.cjs.entry.js +2 -2
  24. package/dist/cjs/ic-layout-grid.cjs.entry.js +2 -2
  25. package/dist/cjs/ic-link.cjs.entry.js +1 -1
  26. package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
  27. package/dist/cjs/ic-navigation-group.cjs.entry.js +2 -2
  28. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ic-navigation-item.cjs.entry.js +1 -1
  30. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  31. package/dist/cjs/ic-navigation-menu.cjs.entry.js +4 -4
  32. package/dist/cjs/ic-page-header.cjs.entry.js +6 -6
  33. package/dist/cjs/ic-pagination-item.cjs.entry.js +1 -1
  34. package/dist/cjs/ic-pagination.cjs.entry.js +4 -4
  35. package/dist/cjs/ic-popover-menu.cjs.entry.js +4 -4
  36. package/dist/cjs/ic-radio-group.cjs.entry.js +5 -5
  37. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  38. package/dist/cjs/ic-radio-option.cjs.entry.js +9 -6
  39. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  40. package/dist/cjs/ic-search-bar.cjs.entry.js +10 -10
  41. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  42. package/dist/cjs/ic-section-container.cjs.entry.js +2 -2
  43. package/dist/cjs/ic-select.cjs.entry.js +7 -7
  44. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  45. package/dist/cjs/ic-side-navigation.cjs.entry.js +4 -4
  46. package/dist/cjs/ic-skeleton.cjs.entry.js +2 -2
  47. package/dist/cjs/ic-skip-link.cjs.entry.js +2 -2
  48. package/dist/cjs/ic-status-tag.cjs.entry.js +2 -2
  49. package/dist/cjs/ic-step.cjs.entry.js +13 -13
  50. package/dist/cjs/ic-stepper.cjs.entry.js +2 -2
  51. package/dist/cjs/ic-switch.cjs.entry.js +4 -4
  52. package/dist/cjs/ic-tab-context.cjs.entry.js +1 -1
  53. package/dist/cjs/ic-tab-group.cjs.entry.js +2 -2
  54. package/dist/cjs/ic-tab-panel.cjs.entry.js +2 -2
  55. package/dist/cjs/ic-text-field.cjs.entry.js +6 -6
  56. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  57. package/dist/cjs/ic-theme.cjs.entry.js +1 -1
  58. package/dist/cjs/ic-toast-region.cjs.entry.js +1 -1
  59. package/dist/cjs/ic-toast.cjs.entry.js +14 -6
  60. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  61. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +2 -2
  62. package/dist/cjs/ic-toggle-button.cjs.entry.js +2 -2
  63. package/dist/cjs/loader.cjs.js +1 -1
  64. package/dist/collection/components/ic-button/ic-button.stories.js +3 -3
  65. package/dist/collection/components/ic-checkbox/ic-checkbox.css +11 -2
  66. package/dist/collection/components/ic-checkbox/ic-checkbox.js +31 -7
  67. package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
  68. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +2 -2
  69. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.stories.js +68 -16
  70. package/dist/collection/components/ic-data-list/ic-data-list.css +1 -0
  71. package/dist/collection/components/ic-data-list/ic-data-list.js +2 -2
  72. package/dist/collection/components/ic-data-row/ic-data-row.css +2 -0
  73. package/dist/collection/components/ic-data-row/ic-data-row.js +2 -2
  74. package/dist/collection/components/ic-dialog/ic-dialog.js +1 -1
  75. package/dist/collection/components/ic-empty-state/ic-empty-state.js +2 -2
  76. package/dist/collection/components/ic-footer/ic-footer.js +29 -5
  77. package/dist/collection/components/ic-footer/ic-footer.js.map +1 -1
  78. package/dist/collection/components/ic-footer/ic-footer.stories.js +31 -0
  79. package/dist/collection/components/ic-footer-link/ic-footer-link.js +2 -2
  80. package/dist/collection/components/ic-hero/ic-hero.css +19 -0
  81. package/dist/collection/components/ic-hero/ic-hero.js +36 -5
  82. package/dist/collection/components/ic-hero/ic-hero.js.map +1 -1
  83. package/dist/collection/components/ic-hero/ic-hero.stories.js +15 -0
  84. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +5 -5
  85. package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +9 -0
  86. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +3 -3
  87. package/dist/collection/components/ic-input-container/ic-input-container.js +2 -2
  88. package/dist/collection/components/ic-input-label/ic-input-label.js +2 -2
  89. package/dist/collection/components/ic-input-validation/ic-input-validation.css +2 -1
  90. package/dist/collection/components/ic-input-validation/ic-input-validation.js +3 -3
  91. package/dist/collection/components/ic-layout-grid/ic-layout-grid.js +2 -2
  92. package/dist/collection/components/ic-layout-grid-item/ic-layout-grid-item.js +2 -2
  93. package/dist/collection/components/ic-link/ic-link.js +1 -1
  94. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +5 -5
  95. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.stories.js +17 -18
  96. package/dist/collection/components/ic-menu/ic-menu.css +8 -0
  97. package/dist/collection/components/ic-menu/ic-menu.js +3 -3
  98. package/dist/collection/components/ic-menu-group/ic-menu-group.js +1 -1
  99. package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +12 -0
  100. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +1 -1
  101. package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +2 -7
  102. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +4 -4
  103. package/dist/collection/components/ic-page-header/ic-page-header.js +6 -6
  104. package/dist/collection/components/ic-pagination/ic-pagination.js +4 -4
  105. package/dist/collection/components/ic-pagination/ic-pagination.stories.js +3 -3
  106. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +1 -1
  107. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +4 -4
  108. package/dist/collection/components/ic-popover-menu/ic-popover-menu.stories.js +7 -7
  109. package/dist/collection/components/ic-radio-group/ic-radio-group.css +6 -6
  110. package/dist/collection/components/ic-radio-group/ic-radio-group.js +4 -4
  111. package/dist/collection/components/ic-radio-group/ic-radio-group.stories.js +12 -12
  112. package/dist/collection/components/ic-radio-option/ic-radio-option.css +60 -54
  113. package/dist/collection/components/ic-radio-option/ic-radio-option.js +9 -5
  114. package/dist/collection/components/ic-radio-option/ic-radio-option.js.map +1 -1
  115. package/dist/collection/components/ic-search-bar/ic-search-bar.css +8 -0
  116. package/dist/collection/components/ic-search-bar/ic-search-bar.js +9 -9
  117. package/dist/collection/components/ic-search-bar/ic-search-bar.stories.js +19 -19
  118. package/dist/collection/components/ic-section-container/ic-section-container.js +2 -2
  119. package/dist/collection/components/ic-select/ic-select.css +1 -1
  120. package/dist/collection/components/ic-select/ic-select.js +6 -6
  121. package/dist/collection/components/ic-select/ic-select_(multi).stories.js +20 -20
  122. package/dist/collection/components/ic-select/ic-select_(searchable).stories.js +21 -21
  123. package/dist/collection/components/ic-select/ic-select_(single).stories.js +21 -5
  124. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +4 -4
  125. package/dist/collection/components/ic-skeleton/ic-skeleton.js +2 -2
  126. package/dist/collection/components/ic-skip-link/ic-skip-link.js +2 -2
  127. package/dist/collection/components/ic-status-tag/ic-status-tag.js +2 -2
  128. package/dist/collection/components/ic-step/ic-step.js +13 -13
  129. package/dist/collection/components/ic-stepper/ic-stepper.js +2 -2
  130. package/dist/collection/components/ic-stepper/ic-stepper.stories.js +16 -6
  131. package/dist/collection/components/ic-switch/ic-switch.js +4 -4
  132. package/dist/collection/components/ic-tab-context/ic-tab-context.js +1 -1
  133. package/dist/collection/components/ic-tab-context/ic-tabs.stories.js +1 -1
  134. package/dist/collection/components/ic-tab-group/ic-tab-group.js +2 -2
  135. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +2 -2
  136. package/dist/collection/components/ic-text-field/ic-text-field.js +6 -6
  137. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  138. package/dist/collection/components/ic-text-field/ic-text-field.stories.js +32 -18
  139. package/dist/collection/components/ic-theme/ic-theme.js +1 -1
  140. package/dist/collection/components/ic-toast/ic-toast.css +26 -1
  141. package/dist/collection/components/ic-toast/ic-toast.js +39 -5
  142. package/dist/collection/components/ic-toast/ic-toast.js.map +1 -1
  143. package/dist/collection/components/ic-toast/ic-toast.stories.js +21 -9
  144. package/dist/collection/components/ic-toast-region/ic-toast-region.js +1 -1
  145. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +2 -2
  146. package/dist/collection/components/ic-toggle-button/ic-toggle-button.stories.js +14 -14
  147. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +2 -2
  148. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.stories.js +7 -7
  149. package/dist/collection/components/ic-tooltip/ic-tooltip.stories.js +11 -11
  150. package/dist/collection/components/ic-top-navigation/ic-top-navigation.stories.js +15 -15
  151. package/dist/collection/components/ic-typography/ic-typography.stories.js +1 -1
  152. package/dist/collection/patterns/top-nav-content-footer.stories.js +1 -1
  153. package/dist/components/ic-badge.js.map +1 -1
  154. package/dist/components/ic-checkbox-group.js +2 -2
  155. package/dist/components/ic-checkbox.js +31 -8
  156. package/dist/components/ic-checkbox.js.map +1 -1
  157. package/dist/components/ic-chip.js.map +1 -1
  158. package/dist/components/ic-classification-banner.js.map +1 -1
  159. package/dist/components/ic-data-list.js +2 -2
  160. package/dist/components/ic-data-list.js.map +1 -1
  161. package/dist/components/ic-data-row.js +2 -2
  162. package/dist/components/ic-data-row.js.map +1 -1
  163. package/dist/components/ic-dialog.js +1 -1
  164. package/dist/components/ic-empty-state.js +2 -2
  165. package/dist/components/ic-footer-link.js +2 -2
  166. package/dist/components/ic-footer.js +10 -5
  167. package/dist/components/ic-footer.js.map +1 -1
  168. package/dist/components/ic-hero.js +12 -6
  169. package/dist/components/ic-hero.js.map +1 -1
  170. package/dist/components/ic-horizontal-scroll2.js +5 -5
  171. package/dist/components/ic-input-component-container2.js +4 -4
  172. package/dist/components/ic-input-component-container2.js.map +1 -1
  173. package/dist/components/ic-input-container2.js +2 -2
  174. package/dist/components/ic-input-label2.js +2 -2
  175. package/dist/components/ic-input-validation2.js +4 -4
  176. package/dist/components/ic-input-validation2.js.map +1 -1
  177. package/dist/components/ic-layout-grid-item.js +2 -2
  178. package/dist/components/ic-layout-grid.js +2 -2
  179. package/dist/components/ic-link2.js +1 -1
  180. package/dist/components/ic-loading-indicator2.js +5 -5
  181. package/dist/components/ic-menu-group.js +1 -1
  182. package/dist/components/ic-menu2.js +4 -4
  183. package/dist/components/ic-menu2.js.map +1 -1
  184. package/dist/components/ic-navigation-group.js +2 -2
  185. package/dist/components/ic-navigation-group.js.map +1 -1
  186. package/dist/components/ic-navigation-item.js +1 -1
  187. package/dist/components/ic-navigation-item.js.map +1 -1
  188. package/dist/components/ic-navigation-menu2.js +4 -4
  189. package/dist/components/ic-page-header.js +6 -6
  190. package/dist/components/ic-pagination-item2.js +1 -1
  191. package/dist/components/ic-pagination.js +4 -4
  192. package/dist/components/ic-popover-menu.js +4 -4
  193. package/dist/components/ic-popover-menu.js.map +1 -1
  194. package/dist/components/ic-radio-group.js +5 -5
  195. package/dist/components/ic-radio-group.js.map +1 -1
  196. package/dist/components/ic-radio-option.js +10 -7
  197. package/dist/components/ic-radio-option.js.map +1 -1
  198. package/dist/components/ic-search-bar.js +10 -10
  199. package/dist/components/ic-search-bar.js.map +1 -1
  200. package/dist/components/ic-section-container2.js +2 -2
  201. package/dist/components/ic-select.js +7 -7
  202. package/dist/components/ic-select.js.map +1 -1
  203. package/dist/components/ic-side-navigation.js +4 -4
  204. package/dist/components/ic-side-navigation.js.map +1 -1
  205. package/dist/components/ic-skeleton.js +2 -2
  206. package/dist/components/ic-skip-link.js +2 -2
  207. package/dist/components/ic-status-tag.js +2 -2
  208. package/dist/components/ic-step.js +13 -13
  209. package/dist/components/ic-step.js.map +1 -1
  210. package/dist/components/ic-stepper.js +2 -2
  211. package/dist/components/ic-switch.js +4 -4
  212. package/dist/components/ic-tab-context.js +1 -1
  213. package/dist/components/ic-tab-group.js +2 -2
  214. package/dist/components/ic-tab-panel.js +2 -2
  215. package/dist/components/ic-text-field.js +6 -6
  216. package/dist/components/ic-text-field.js.map +1 -1
  217. package/dist/components/ic-theme.js +1 -1
  218. package/dist/components/ic-toast-region.js +1 -1
  219. package/dist/components/ic-toast.js +15 -6
  220. package/dist/components/ic-toast.js.map +1 -1
  221. package/dist/components/ic-toggle-button-group.js +2 -2
  222. package/dist/components/ic-toggle-button.js +2 -2
  223. package/dist/core/core.css +21 -9
  224. package/dist/core/core.esm.js +1 -1
  225. package/dist/core/core.esm.js.map +1 -1
  226. package/dist/core/{p-889bb8db.entry.js → p-04cb17d7.entry.js} +2 -2
  227. package/dist/core/p-082e0068.entry.js +2 -0
  228. package/dist/core/p-082e0068.entry.js.map +1 -0
  229. package/dist/core/{p-f4e2e41f.entry.js → p-12c30491.entry.js} +2 -2
  230. package/dist/core/{p-109e7fce.entry.js → p-14d43f64.entry.js} +2 -2
  231. package/dist/core/p-1ca4a5ed.entry.js +2 -0
  232. package/dist/core/p-1ca4a5ed.entry.js.map +1 -0
  233. package/dist/core/{p-efc97f21.entry.js → p-1f41818b.entry.js} +2 -2
  234. package/dist/core/{p-5cf704e3.entry.js → p-319e3d5b.entry.js} +2 -2
  235. package/dist/core/p-3238389a.entry.js +2 -0
  236. package/dist/core/p-3238389a.entry.js.map +1 -0
  237. package/dist/core/{p-d1cce122.entry.js → p-33e35173.entry.js} +2 -2
  238. package/dist/core/p-33e35173.entry.js.map +1 -0
  239. package/dist/core/{p-eb1823b3.entry.js → p-34407b13.entry.js} +2 -2
  240. package/dist/core/p-34407b13.entry.js.map +1 -0
  241. package/dist/core/{p-ab26beed.entry.js → p-3d23ce54.entry.js} +2 -2
  242. package/dist/core/{p-ef397b6f.entry.js → p-42d35fc4.entry.js} +2 -2
  243. package/dist/core/{p-0b1ea961.entry.js → p-4d3b219c.entry.js} +2 -2
  244. package/dist/core/{p-93e1ba0a.entry.js → p-5254a078.entry.js} +2 -2
  245. package/dist/core/p-52c66bfe.entry.js +2 -0
  246. package/dist/core/p-52c66bfe.entry.js.map +1 -0
  247. package/dist/core/{p-9c2e9189.entry.js → p-53740194.entry.js} +2 -2
  248. package/dist/core/{p-614953c5.entry.js → p-601d4e3f.entry.js} +2 -2
  249. package/dist/core/{p-0257d59e.entry.js → p-6329ddcb.entry.js} +2 -2
  250. package/dist/core/{p-d8200098.entry.js → p-67c3985d.entry.js} +2 -2
  251. package/dist/core/p-6ed48c46.entry.js +2 -0
  252. package/dist/core/p-6ed48c46.entry.js.map +1 -0
  253. package/dist/core/{p-a8dc3162.entry.js → p-703f3de1.entry.js} +2 -2
  254. package/dist/core/{p-f7706ff7.entry.js → p-762ea31a.entry.js} +2 -2
  255. package/dist/core/{p-2969b5c9.entry.js → p-7d0d85c4.entry.js} +2 -2
  256. package/dist/core/p-8abcc114.entry.js +2 -0
  257. package/dist/core/p-8abcc114.entry.js.map +1 -0
  258. package/dist/core/{p-b00efb15.entry.js → p-9674b63f.entry.js} +2 -2
  259. package/dist/core/p-9c52ee48.entry.js +2 -0
  260. package/dist/core/p-9c52ee48.entry.js.map +1 -0
  261. package/dist/core/{p-fb43abd6.entry.js → p-9ca147f3.entry.js} +2 -2
  262. package/dist/core/{p-4637c326.entry.js → p-a7583faf.entry.js} +2 -2
  263. package/dist/core/{p-6996e94f.entry.js → p-a8e4258f.entry.js} +2 -2
  264. package/dist/core/{p-6996e94f.entry.js.map → p-a8e4258f.entry.js.map} +1 -1
  265. package/dist/core/{p-09c31ac6.entry.js → p-adde6c66.entry.js} +2 -2
  266. package/dist/core/{p-6fb29846.entry.js → p-ae11583f.entry.js} +2 -2
  267. package/dist/core/p-afbba548.entry.js +2 -0
  268. package/dist/core/p-afbba548.entry.js.map +1 -0
  269. package/dist/core/{p-f098e531.entry.js → p-b4a2f6fa.entry.js} +2 -2
  270. package/dist/core/p-b4a2f6fa.entry.js.map +1 -0
  271. package/dist/core/p-b59504f1.entry.js +2 -0
  272. package/dist/core/p-b59504f1.entry.js.map +1 -0
  273. package/dist/core/p-b83a736d.entry.js +3 -0
  274. package/dist/core/p-b83a736d.entry.js.map +1 -0
  275. package/dist/core/{p-4bdeb62d.entry.js → p-bdda404b.entry.js} +2 -2
  276. package/dist/core/p-bdda404b.entry.js.map +1 -0
  277. package/dist/core/{p-0cbd0967.entry.js → p-cce398e1.entry.js} +2 -2
  278. package/dist/core/{p-06b3ae40.entry.js → p-d3223b89.entry.js} +2 -2
  279. package/dist/core/{p-3b13d191.entry.js → p-eca43f7d.entry.js} +2 -2
  280. package/dist/core/{p-44fbe8c2.entry.js → p-f4e3bb5b.entry.js} +2 -2
  281. package/dist/core/p-f51c609d.entry.js +2 -0
  282. package/dist/core/{p-296a41ce.entry.js → p-f57729b8.entry.js} +2 -2
  283. package/dist/core/{p-091a7fbf.entry.js → p-f6bb691a.entry.js} +2 -2
  284. package/dist/core/{p-ad6632a9.entry.js → p-f7105cf9.entry.js} +2 -2
  285. package/dist/core/p-ffd0d9d1.entry.js +2 -0
  286. package/dist/core/p-ffd0d9d1.entry.js.map +1 -0
  287. package/dist/esm/core.js +1 -1
  288. package/dist/esm/ic-button_3.entry.js +5 -5
  289. package/dist/esm/ic-button_3.entry.js.map +1 -1
  290. package/dist/esm/ic-checkbox-group.entry.js +2 -2
  291. package/dist/esm/ic-checkbox.entry.js +31 -8
  292. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  293. package/dist/esm/ic-data-list.entry.js +2 -2
  294. package/dist/esm/ic-data-list.entry.js.map +1 -1
  295. package/dist/esm/ic-data-row.entry.js +2 -2
  296. package/dist/esm/ic-data-row.entry.js.map +1 -1
  297. package/dist/esm/ic-dialog.entry.js +1 -1
  298. package/dist/esm/ic-empty-state.entry.js +2 -2
  299. package/dist/esm/ic-footer-link.entry.js +2 -2
  300. package/dist/esm/ic-footer.entry.js +9 -5
  301. package/dist/esm/ic-footer.entry.js.map +1 -1
  302. package/dist/esm/ic-hero.entry.js +11 -6
  303. package/dist/esm/ic-hero.entry.js.map +1 -1
  304. package/dist/esm/ic-horizontal-scroll.entry.js +5 -5
  305. package/dist/esm/ic-input-component-container_3.entry.js +10 -10
  306. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  307. package/dist/esm/ic-input-label_2.entry.js +6 -6
  308. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  309. package/dist/esm/ic-layout-grid-item.entry.js +2 -2
  310. package/dist/esm/ic-layout-grid.entry.js +2 -2
  311. package/dist/esm/ic-link.entry.js +1 -1
  312. package/dist/esm/ic-menu-group.entry.js +1 -1
  313. package/dist/esm/ic-navigation-group.entry.js +2 -2
  314. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  315. package/dist/esm/ic-navigation-item.entry.js +1 -1
  316. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  317. package/dist/esm/ic-navigation-menu.entry.js +4 -4
  318. package/dist/esm/ic-page-header.entry.js +6 -6
  319. package/dist/esm/ic-pagination-item.entry.js +1 -1
  320. package/dist/esm/ic-pagination.entry.js +4 -4
  321. package/dist/esm/ic-popover-menu.entry.js +4 -4
  322. package/dist/esm/ic-radio-group.entry.js +5 -5
  323. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  324. package/dist/esm/ic-radio-option.entry.js +9 -6
  325. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  326. package/dist/esm/ic-search-bar.entry.js +10 -10
  327. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  328. package/dist/esm/ic-section-container.entry.js +2 -2
  329. package/dist/esm/ic-select.entry.js +7 -7
  330. package/dist/esm/ic-select.entry.js.map +1 -1
  331. package/dist/esm/ic-side-navigation.entry.js +4 -4
  332. package/dist/esm/ic-skeleton.entry.js +2 -2
  333. package/dist/esm/ic-skip-link.entry.js +2 -2
  334. package/dist/esm/ic-status-tag.entry.js +2 -2
  335. package/dist/esm/ic-step.entry.js +13 -13
  336. package/dist/esm/ic-stepper.entry.js +2 -2
  337. package/dist/esm/ic-switch.entry.js +4 -4
  338. package/dist/esm/ic-tab-context.entry.js +1 -1
  339. package/dist/esm/ic-tab-group.entry.js +2 -2
  340. package/dist/esm/ic-tab-panel.entry.js +2 -2
  341. package/dist/esm/ic-text-field.entry.js +6 -6
  342. package/dist/esm/ic-text-field.entry.js.map +1 -1
  343. package/dist/esm/ic-theme.entry.js +1 -1
  344. package/dist/esm/ic-toast-region.entry.js +1 -1
  345. package/dist/esm/ic-toast.entry.js +14 -6
  346. package/dist/esm/ic-toast.entry.js.map +1 -1
  347. package/dist/esm/ic-toggle-button-group.entry.js +2 -2
  348. package/dist/esm/ic-toggle-button.entry.js +2 -2
  349. package/dist/esm/loader.js +1 -1
  350. package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +5 -0
  351. package/dist/types/components/ic-footer/ic-footer.d.ts +4 -0
  352. package/dist/types/components/ic-hero/ic-hero.d.ts +5 -1
  353. package/dist/types/components/ic-toast/ic-toast.d.ts +5 -1
  354. package/dist/types/components.d.ts +24 -0
  355. package/hydrate/index.js +214 -167
  356. package/hydrate/index.mjs +214 -167
  357. package/package.json +4 -4
  358. package/vscode-data.json +34 -0
  359. package/dist/core/p-042cfc35.entry.js +0 -2
  360. package/dist/core/p-042cfc35.entry.js.map +0 -1
  361. package/dist/core/p-053ed367.entry.js +0 -2
  362. package/dist/core/p-053ed367.entry.js.map +0 -1
  363. package/dist/core/p-24d46cab.entry.js +0 -2
  364. package/dist/core/p-24d46cab.entry.js.map +0 -1
  365. package/dist/core/p-48eb7299.entry.js +0 -2
  366. package/dist/core/p-48eb7299.entry.js.map +0 -1
  367. package/dist/core/p-4a358f09.entry.js +0 -2
  368. package/dist/core/p-4a358f09.entry.js.map +0 -1
  369. package/dist/core/p-4bdeb62d.entry.js.map +0 -1
  370. package/dist/core/p-6e61c48a.entry.js +0 -2
  371. package/dist/core/p-6e61c48a.entry.js.map +0 -1
  372. package/dist/core/p-6f60262e.entry.js +0 -3
  373. package/dist/core/p-6f60262e.entry.js.map +0 -1
  374. package/dist/core/p-7970cbed.entry.js +0 -2
  375. package/dist/core/p-7970cbed.entry.js.map +0 -1
  376. package/dist/core/p-8c7d6a85.entry.js +0 -2
  377. package/dist/core/p-8c7d6a85.entry.js.map +0 -1
  378. package/dist/core/p-b29e325f.entry.js +0 -2
  379. package/dist/core/p-bba25812.entry.js +0 -2
  380. package/dist/core/p-bba25812.entry.js.map +0 -1
  381. package/dist/core/p-d1cce122.entry.js.map +0 -1
  382. package/dist/core/p-d20a61a7.entry.js +0 -2
  383. package/dist/core/p-d20a61a7.entry.js.map +0 -1
  384. package/dist/core/p-eb1823b3.entry.js.map +0 -1
  385. package/dist/core/p-f098e531.entry.js.map +0 -1
  386. /package/dist/core/{p-889bb8db.entry.js.map → p-04cb17d7.entry.js.map} +0 -0
  387. /package/dist/core/{p-f4e2e41f.entry.js.map → p-12c30491.entry.js.map} +0 -0
  388. /package/dist/core/{p-109e7fce.entry.js.map → p-14d43f64.entry.js.map} +0 -0
  389. /package/dist/core/{p-efc97f21.entry.js.map → p-1f41818b.entry.js.map} +0 -0
  390. /package/dist/core/{p-5cf704e3.entry.js.map → p-319e3d5b.entry.js.map} +0 -0
  391. /package/dist/core/{p-ab26beed.entry.js.map → p-3d23ce54.entry.js.map} +0 -0
  392. /package/dist/core/{p-ef397b6f.entry.js.map → p-42d35fc4.entry.js.map} +0 -0
  393. /package/dist/core/{p-0b1ea961.entry.js.map → p-4d3b219c.entry.js.map} +0 -0
  394. /package/dist/core/{p-93e1ba0a.entry.js.map → p-5254a078.entry.js.map} +0 -0
  395. /package/dist/core/{p-9c2e9189.entry.js.map → p-53740194.entry.js.map} +0 -0
  396. /package/dist/core/{p-614953c5.entry.js.map → p-601d4e3f.entry.js.map} +0 -0
  397. /package/dist/core/{p-0257d59e.entry.js.map → p-6329ddcb.entry.js.map} +0 -0
  398. /package/dist/core/{p-d8200098.entry.js.map → p-67c3985d.entry.js.map} +0 -0
  399. /package/dist/core/{p-a8dc3162.entry.js.map → p-703f3de1.entry.js.map} +0 -0
  400. /package/dist/core/{p-f7706ff7.entry.js.map → p-762ea31a.entry.js.map} +0 -0
  401. /package/dist/core/{p-2969b5c9.entry.js.map → p-7d0d85c4.entry.js.map} +0 -0
  402. /package/dist/core/{p-b00efb15.entry.js.map → p-9674b63f.entry.js.map} +0 -0
  403. /package/dist/core/{p-fb43abd6.entry.js.map → p-9ca147f3.entry.js.map} +0 -0
  404. /package/dist/core/{p-4637c326.entry.js.map → p-a7583faf.entry.js.map} +0 -0
  405. /package/dist/core/{p-09c31ac6.entry.js.map → p-adde6c66.entry.js.map} +0 -0
  406. /package/dist/core/{p-6fb29846.entry.js.map → p-ae11583f.entry.js.map} +0 -0
  407. /package/dist/core/{p-0cbd0967.entry.js.map → p-cce398e1.entry.js.map} +0 -0
  408. /package/dist/core/{p-06b3ae40.entry.js.map → p-d3223b89.entry.js.map} +0 -0
  409. /package/dist/core/{p-3b13d191.entry.js.map → p-eca43f7d.entry.js.map} +0 -0
  410. /package/dist/core/{p-44fbe8c2.entry.js.map → p-f4e3bb5b.entry.js.map} +0 -0
  411. /package/dist/core/{p-b29e325f.entry.js.map → p-f51c609d.entry.js.map} +0 -0
  412. /package/dist/core/{p-296a41ce.entry.js.map → p-f57729b8.entry.js.map} +0 -0
  413. /package/dist/core/{p-091a7fbf.entry.js.map → p-f6bb691a.entry.js.map} +0 -0
  414. /package/dist/core/{p-ad6632a9.entry.js.map → p-f7105cf9.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"ic-footer.js","mappings":"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","names":[],"sources":["src/components/ic-footer/ic-footer.css?tag=ic-footer&encapsulation=shadow","src/components/ic-footer/ic-footer.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: block;\n\n --footer-compliance-padding: 1rem 0;\n}\n\n:host(.ic-footer-sparse) {\n --footer-links-padding: 1.5rem 0;\n --footer-logo-margin-bottom: calc(var(--ic-space-md) + var(--ic-space-xxs));\n --footer-link-inner-flex-direction: row;\n}\n\n:host(.ic-footer-small) {\n --footer-links-padding: 0 0;\n --footer-logo-margin-bottom: var(--ic-space-md);\n --footer-link-inner-flex-direction: column;\n}\n\n:host(.ic-footer-foreground-dark) {\n --ic-footer-background: var(--ic-brand-color-secondary-light);\n --ic-footer-bottom-background: var(--ic-brand-color-tertiary-light);\n --ic-footer-keyline: var(--ic-state-layer-darken-20);\n --ic-footer-text: var(--ic-color-text-primary-light);\n --ic-footer-link: var(--ic-color-text-primary-light);\n --ic-footer-icon: var(--ic-color-icon-neutral);\n --ic-footer-chevron-icon: var(--ic-color-icon-neutral);\n --ic-footer-logo: var(--ic-color-icon-neutral);\n --ic-footer-hover: var(--ic-architectural-700-state-layer-10);\n --ic-footer-pressed: var(--ic-architectural-700-state-layer-20);\n}\n\n:host(.ic-footer-small.ic-footer-ungrouped) {\n --footer-links-padding: var(--ic-space-md) 0 0 0;\n}\n\n/* Main inner footer element */\nfooter {\n display: flex;\n flex-direction: column;\n width: 100%;\n}\n\n/* Description */\n\n.footer-description {\n background-color: var(--ic-footer-background);\n color: var(--ic-footer-text);\n\n --ic-typography-color: var(--ic-footer-text);\n\n border-bottom: var(--ic-space-1px) solid var(--ic-footer-keyline);\n}\n\n.footer-description-inner {\n padding: 1rem 0;\n}\n\n/* Links */\n\n.footer-links {\n padding: var(--footer-links-padding);\n background-color: var(--ic-footer-background);\n color: var(--ic-footer-link);\n\n --ic-typography-color: var(--ic-footer-link);\n}\n\n.footer-links-inner {\n display: flex;\n flex-direction: var(--footer-link-inner-flex-direction);\n}\n\n/* Compliance */\n\n.footer-compliance {\n background-color: var(--ic-footer-bottom-background);\n color: var(--ic-footer-text);\n\n --ic-typography-color: var(--ic-footer-text);\n}\n\n.footer-compliance-inner {\n padding: var(--footer-compliance-padding);\n}\n\n.footer-logo {\n margin-bottom: var(--footer-logo-margin-bottom);\n display: flex;\n gap: var(--ic-space-xxl);\n}\n\n.footer-logo > ::slotted() {\n margin-right: var(--ic-space-md);\n}\n\n.footer-caption {\n margin-bottom: var(--ic-space-md);\n}\n\n.classification-spacing {\n margin-bottom: var(--ic-space-lg);\n}\n\n@media (forced-colors: active) {\n footer {\n border-top: var(--ic-border-hc);\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Prop,\n State,\n} from \"@stencil/core\";\nimport { IC_DEVICE_SIZES } from \"../../utils/constants\";\nimport {\n getCurrentDeviceSize,\n getBrandForegroundAppearance,\n checkResizeObserver,\n hasClassificationBanner,\n isSlotUsed,\n renderDynamicChildSlots,\n} from \"../../utils/helpers\";\nimport {\n IcAlignment,\n IcBrand,\n IcBrandForeground,\n IcBrandForegroundEnum,\n} from \"../../utils/types\";\nimport { IcFooterBreakpoints } from \"./ic-footer.types\";\n\n/**\n * @slot description - Content will be rendered at the top of the footer.\n * @slot link - Content will be rendered between description and logos.\n * @slot logo - Content will be rendered underneath footer links.\n * @slot caption - Content will be rendered above Crown Copyright.\n */\n\n@Component({\n tag: \"ic-footer\",\n styleUrl: \"ic-footer.css\",\n shadow: true,\n})\nexport class Footer {\n private footerEl?: HTMLElement;\n private resizeObserver: ResizeObserver | null = null;\n private hostMutationObserver: MutationObserver | null = null;\n\n @Element() el: HTMLIcFooterElement;\n\n @State() deviceSize: number = IC_DEVICE_SIZES.XL;\n @State() foregroundColor: IcBrandForeground = getBrandForegroundAppearance();\n\n /**\n * The alignment of the section containers used within the footer.\n */\n @Prop() aligned?: IcAlignment = \"left\";\n\n /**\n * The screen size breakpoint at which to switch to the small layout.\n */\n @Prop() breakpoint?: IcFooterBreakpoints = \"medium\";\n\n /**\n * The caption displayed at the bottom of the footer.\n */\n @Prop() caption?: string;\n\n /**\n * If `true`, the footer will display the crown copyright at the bottom.\n */\n @Prop() copyright?: boolean = true;\n\n /**\n * The description displayed at the top of the footer.\n */\n @Prop() description?: string;\n\n /**\n * If `true`, the footer will be set up to handle link groups instead of standalone links.\n */\n @Prop() groupLinks?: boolean = false;\n\n /**\n * @internal Triggers on page resize and triggers style changes in footer links and link groups\n */\n @Event() footerResized: EventEmitter<void>;\n\n disconnectedCallback(): void {\n if (this.resizeObserver !== null) {\n this.resizeObserver.disconnect();\n }\n\n this.hostMutationObserver?.disconnect();\n }\n\n componentWillLoad(): void {\n this.deviceSize = getCurrentDeviceSize();\n }\n\n componentDidLoad(): void {\n checkResizeObserver(this.runResizeObserver);\n\n this.hostMutationObserver = new MutationObserver((mutationList) => {\n return renderDynamicChildSlots(mutationList, \"link\", this);\n });\n\n this.hostMutationObserver.observe(this.el, {\n childList: true,\n });\n }\n\n @Listen(\"brandChange\", { target: \"document\" })\n brandChangeHandler(ev: CustomEvent<IcBrand>): void {\n this.foregroundColor = ev.detail.mode;\n }\n\n private isSmall() {\n const bp = this.breakpoint;\n\n return bp === \"extra small\"\n ? this.deviceSize < IC_DEVICE_SIZES.XS\n : bp === \"small\"\n ? this.deviceSize < IC_DEVICE_SIZES.S\n : bp === \"medium\"\n ? this.deviceSize < IC_DEVICE_SIZES.M\n : bp === \"large\"\n ? this.deviceSize < IC_DEVICE_SIZES.L\n : bp === \"extra large\"\n ? this.deviceSize < IC_DEVICE_SIZES.XL\n : false;\n }\n\n private resizeObserverCallback = (currSize: number) => {\n if (currSize !== this.deviceSize) {\n this.deviceSize = currSize;\n }\n this.footerResized.emit();\n };\n\n private runResizeObserver = () => {\n if (this.footerEl) {\n this.resizeObserver = new ResizeObserver(() => {\n const currSize = getCurrentDeviceSize();\n this.resizeObserverCallback(currSize);\n });\n\n this.resizeObserver.observe(this.footerEl);\n }\n };\n\n render() {\n const {\n aligned,\n caption,\n copyright,\n description,\n deviceSize,\n el,\n foregroundColor,\n groupLinks,\n } = this;\n const small = this.isSmall();\n\n const showComplianceSection =\n isSlotUsed(el, \"logo\") ||\n isSlotUsed(el, \"caption\") ||\n caption ||\n copyright;\n\n return (\n <Host\n class={{\n [\"ic-footer\"]: true,\n [`ic-footer-${small ? \"small\" : \"sparse\"}`]: true,\n [`ic-footer-${groupLinks ? \"grouped\" : \"ungrouped\"}`]: true,\n [`ic-footer-foreground-${foregroundColor}`]: true,\n // Slots will be able to infer their own color\n [`ic-footer-${IcBrandForegroundEnum.Dark}`]:\n foregroundColor === IcBrandForegroundEnum.Dark,\n [`ic-footer-${IcBrandForegroundEnum.Light}`]:\n foregroundColor === IcBrandForegroundEnum.Light,\n }}\n >\n <footer ref={(el) => (this.footerEl = el)}>\n {/* Description */}\n {(isSlotUsed(el, \"description\") || description) && (\n <div class=\"footer-description\">\n <ic-section-container aligned={aligned} fullHeight={true}>\n <div class=\"footer-description-inner\">\n <ic-typography variant=\"body\">\n <slot name=\"description\">{description}</slot>\n </ic-typography>\n </div>\n </ic-section-container>\n </div>\n )}\n\n {/* Links */}\n {isSlotUsed(el, \"link\") && (\n <div class=\"footer-links\">\n {groupLinks && small ? (\n <div class=\"footer-links-inner\" role=\"list\">\n <slot name=\"link\" />\n </div>\n ) : (\n <ic-section-container fullHeight aligned={aligned}>\n <div class=\"footer-links-inner\" role=\"list\">\n <slot name=\"link\" />\n </div>\n </ic-section-container>\n )}\n </div>\n )}\n\n {/* Compliance (logo, caption, copyright) */}\n {showComplianceSection && (\n <div class=\"footer-compliance\">\n <ic-section-container aligned={aligned} fullHeight={true}>\n <div class=\"footer-compliance-inner\">\n {isSlotUsed(el, \"logo\") && (\n <div class=\"footer-logo\">\n <slot name=\"logo\" />\n </div>\n )}\n {(isSlotUsed(el, \"caption\") || caption) && (\n <div class=\"footer-caption\">\n <ic-typography\n variant={\n deviceSize <= IC_DEVICE_SIZES.M ? \"caption\" : \"body\"\n }\n >\n <slot name=\"caption\">{caption}</slot>\n </ic-typography>\n </div>\n )}\n {copyright && (\n <div\n class={{\n [\"footer-copyright\"]: true,\n [\"classification-spacing\"]: hasClassificationBanner(),\n }}\n >\n <ic-typography\n variant={\n deviceSize <= IC_DEVICE_SIZES.M\n ? \"caption-uppercase\"\n : \"label-uppercase\"\n }\n >\n &copy; Crown Copyright\n </ic-typography>\n </div>\n )}\n </div>\n </ic-section-container>\n </div>\n )}\n </footer>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-footer.js","mappings":";;;;;;AAAA,MAAM,WAAW,GAAG,y9IAAy9I,CAAC;AAC9+I,uBAAe,WAAW;;MCuCb,MAAM;IALnB;;;;;QAOU,mBAAc,GAA0B,IAAI,CAAC;QAC7C,yBAAoB,GAA4B,IAAI,CAAC;QAIpD,eAAU,GAAW,eAAe,CAAC,EAAE,CAAC;QACxC,oBAAe,GAAsB,4BAA4B,EAAE,CAAC;;;;QAKrE,YAAO,GAAiB,MAAM,CAAC;;;;QAK/B,eAAU,GAAyB,QAAQ,CAAC;;;;QAU5C,cAAS,GAAa,IAAI,CAAC;;;;QAK3B,kBAAa,GAAY,mBAAmB,CAAC;;;;QAU7C,eAAU,GAAa,KAAK,CAAC;QAoD7B,2BAAsB,GAAG,CAAC,QAAgB;YAChD,IAAI,QAAQ,KAAK,IAAI,CAAC,UAAU,EAAE;gBAChC,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC;aAC5B;YACD,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;SAC3B,CAAC;QAEM,sBAAiB,GAAG;YAC1B,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC;oBACvC,MAAM,QAAQ,GAAG,oBAAoB,EAAE,CAAC;oBACxC,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;iBACvC,CAAC,CAAC;gBAEH,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC5C;SACF,CAAC;KAkHH;IA/KC,oBAAoB;;QAClB,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI,EAAE;YAChC,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC;SAClC;QAED,MAAA,IAAI,CAAC,oBAAoB,0CAAE,UAAU,EAAE,CAAC;KACzC;IAED,iBAAiB;QACf,IAAI,CAAC,UAAU,GAAG,oBAAoB,EAAE,CAAC;KAC1C;IAED,gBAAgB;QACd,mBAAmB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAE5C,IAAI,CAAC,oBAAoB,GAAG,IAAI,gBAAgB,CAAC,CAAC,YAAY;YAC5D,OAAO,uBAAuB,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;SAC5D,CAAC,CAAC;QAEH,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE;YACzC,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;KACJ;IAGD,kBAAkB,CAAC,EAAwB;QACzC,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;KACvC;IAEO,OAAO;QACb,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC;QAE3B,OAAO,EAAE,KAAK,aAAa;cACvB,IAAI,CAAC,UAAU,GAAG,eAAe,CAAC,EAAE;cACpC,EAAE,KAAK,OAAO;kBACd,IAAI,CAAC,UAAU,GAAG,eAAe,CAAC,CAAC;kBACnC,EAAE,KAAK,QAAQ;sBACf,IAAI,CAAC,UAAU,GAAG,eAAe,CAAC,CAAC;sBACnC,EAAE,KAAK,OAAO;0BACd,IAAI,CAAC,UAAU,GAAG,eAAe,CAAC,CAAC;0BACnC,EAAE,KAAK,aAAa;8BACpB,IAAI,CAAC,UAAU,GAAG,eAAe,CAAC,EAAE;8BACpC,KAAK,CAAC;KACX;IAoBD,MAAM;QACJ,MAAM,EACJ,OAAO,EACP,OAAO,EACP,SAAS,EACT,aAAa,EACb,WAAW,EACX,UAAU,EACV,EAAE,EACF,eAAe,EACf,UAAU,GACX,GAAG,IAAI,CAAC;QACT,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAE7B,MAAM,qBAAqB,GACzB,UAAU,CAAC,EAAE,EAAE,MAAM,CAAC;YACtB,UAAU,CAAC,EAAE,EAAE,SAAS,CAAC;YACzB,OAAO;YACP,SAAS,CAAC;QAEZ,QACE,EAAC,IAAI,qDACH,KAAK,EAAE;gBACL,CAAC,WAAW,GAAG,IAAI;gBACnB,CAAC,aAAa,KAAK,GAAG,OAAO,GAAG,QAAQ,EAAE,GAAG,IAAI;gBACjD,CAAC,aAAa,UAAU,GAAG,SAAS,GAAG,WAAW,EAAE,GAAG,IAAI;gBAC3D,CAAC,wBAAwB,eAAe,EAAE,GAAG,IAAI;;gBAEjD,CAAC,aAAa,qBAAqB,CAAC,IAAI,EAAE,GACxC,eAAe,KAAK,qBAAqB,CAAC,IAAI;gBAChD,CAAC,aAAa,qBAAqB,CAAC,KAAK,EAAE,GACzC,eAAe,KAAK,qBAAqB,CAAC,KAAK;aAClD,IAED,+DAAQ,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,IAEtC,CAAC,UAAU,CAAC,EAAE,EAAE,aAAa,CAAC,IAAI,WAAW,MAC5C,4DAAK,KAAK,EAAC,oBAAoB,IAC7B,6EAAsB,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,IACtD,4DAAK,KAAK,EAAC,0BAA0B,IACnC,sEAAe,OAAO,EAAC,MAAM,IAC3B,6DAAM,IAAI,EAAC,aAAa,IAAE,WAAW,CAAQ,CAC/B,CACZ,CACe,CACnB,CACP,EAGA,UAAU,CAAC,EAAE,EAAE,MAAM,CAAC,KACrB,4DAAK,KAAK,EAAC,cAAc,IACtB,UAAU,IAAI,KAAK,IAClB,WAAK,KAAK,EAAC,oBAAoB,EAAC,IAAI,EAAC,MAAM,IACzC,YAAM,IAAI,EAAC,MAAM,GAAG,CAChB,KAEN,4BAAsB,UAAU,QAAC,OAAO,EAAE,OAAO,IAC/C,WAAK,KAAK,EAAC,oBAAoB,EAAC,IAAI,EAAC,MAAM,IACzC,YAAM,IAAI,EAAC,MAAM,GAAG,CAChB,CACe,CACxB,CACG,CACP,EAGA,qBAAqB,KACpB,4DAAK,KAAK,EAAC,mBAAmB,IAC5B,6EAAsB,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,IACtD,4DAAK,KAAK,EAAC,yBAAyB,IACjC,UAAU,CAAC,EAAE,EAAE,MAAM,CAAC,KACrB,4DAAK,KAAK,EAAC,aAAa,IACtB,6DAAM,IAAI,EAAC,MAAM,GAAG,CAChB,CACP,EACA,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,OAAO,MACpC,4DAAK,KAAK,EAAC,gBAAgB,IACzB,sEACE,OAAO,EACL,UAAU,IAAI,eAAe,CAAC,CAAC,GAAG,SAAS,GAAG,MAAM,IAGtD,6DAAM,IAAI,EAAC,SAAS,IAAE,OAAO,CAAQ,CACvB,CACZ,CACP,EACA,SAAS,KACR,4DACE,KAAK,EAAE;gBACL,CAAC,kBAAkB,GAAG,IAAI;gBAC1B,CAAC,wBAAwB,GAAG,uBAAuB,EAAE;aACtD,IAED,sEACE,OAAO,EACL,UAAU,IAAI,eAAe,CAAC,CAAC;kBAC3B,mBAAmB;kBACnB,iBAAiB,IAGtB,aAAa,CACA,CACZ,CACP,CACG,CACe,CACnB,CACP,CACM,CACJ,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/ic-footer/ic-footer.css?tag=ic-footer&encapsulation=shadow","src/components/ic-footer/ic-footer.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: block;\n\n --footer-compliance-padding: 1rem 0;\n}\n\n:host(.ic-footer-sparse) {\n --footer-links-padding: 1.5rem 0;\n --footer-logo-margin-bottom: calc(var(--ic-space-md) + var(--ic-space-xxs));\n --footer-link-inner-flex-direction: row;\n}\n\n:host(.ic-footer-small) {\n --footer-links-padding: 0 0;\n --footer-logo-margin-bottom: var(--ic-space-md);\n --footer-link-inner-flex-direction: column;\n}\n\n:host(.ic-footer-foreground-dark) {\n --ic-footer-background: var(--ic-brand-color-secondary-light);\n --ic-footer-bottom-background: var(--ic-brand-color-tertiary-light);\n --ic-footer-keyline: var(--ic-state-layer-darken-20);\n --ic-footer-text: var(--ic-color-text-primary-light);\n --ic-footer-link: var(--ic-color-text-primary-light);\n --ic-footer-icon: var(--ic-color-icon-neutral);\n --ic-footer-chevron-icon: var(--ic-color-icon-neutral);\n --ic-footer-logo: var(--ic-color-icon-neutral);\n --ic-footer-hover: var(--ic-architectural-700-state-layer-10);\n --ic-footer-pressed: var(--ic-architectural-700-state-layer-20);\n}\n\n:host(.ic-footer-small.ic-footer-ungrouped) {\n --footer-links-padding: var(--ic-space-md) 0 0 0;\n}\n\n/* Main inner footer element */\nfooter {\n display: flex;\n flex-direction: column;\n width: 100%;\n}\n\n/* Description */\n\n.footer-description {\n background-color: var(--ic-footer-background);\n color: var(--ic-footer-text);\n\n --ic-typography-color: var(--ic-footer-text);\n\n border-bottom: var(--ic-space-1px) solid var(--ic-footer-keyline);\n}\n\n.footer-description-inner {\n padding: 1rem 0;\n}\n\n/* Links */\n\n.footer-links {\n padding: var(--footer-links-padding);\n background-color: var(--ic-footer-background);\n color: var(--ic-footer-link);\n\n --ic-typography-color: var(--ic-footer-link);\n}\n\n.footer-links-inner {\n display: flex;\n flex-direction: var(--footer-link-inner-flex-direction);\n}\n\n/* Compliance */\n\n.footer-compliance {\n background-color: var(--ic-footer-bottom-background);\n color: var(--ic-footer-text);\n\n --ic-typography-color: var(--ic-footer-text);\n}\n\n.footer-compliance-inner {\n padding: var(--footer-compliance-padding);\n}\n\n.footer-logo {\n margin-bottom: var(--footer-logo-margin-bottom);\n display: flex;\n gap: var(--ic-space-xxl);\n}\n\n.footer-logo > ::slotted() {\n margin-right: var(--ic-space-md);\n}\n\n.footer-caption {\n margin-bottom: var(--ic-space-md);\n}\n\n.classification-spacing {\n margin-bottom: var(--ic-space-lg);\n}\n\n@media (forced-colors: active) {\n footer {\n border-top: var(--ic-border-hc);\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Prop,\n State,\n} from \"@stencil/core\";\nimport { IC_DEVICE_SIZES } from \"../../utils/constants\";\nimport {\n getCurrentDeviceSize,\n getBrandForegroundAppearance,\n checkResizeObserver,\n hasClassificationBanner,\n isSlotUsed,\n renderDynamicChildSlots,\n} from \"../../utils/helpers\";\nimport {\n IcAlignment,\n IcBrand,\n IcBrandForeground,\n IcBrandForegroundEnum,\n} from \"../../utils/types\";\nimport { IcFooterBreakpoints } from \"./ic-footer.types\";\n\n/**\n * @slot description - Content will be rendered at the top of the footer.\n * @slot link - Content will be rendered between description and logos.\n * @slot logo - Content will be rendered underneath footer links.\n * @slot caption - Content will be rendered above Crown Copyright.\n */\n\n@Component({\n tag: \"ic-footer\",\n styleUrl: \"ic-footer.css\",\n shadow: true,\n})\nexport class Footer {\n private footerEl?: HTMLElement;\n private resizeObserver: ResizeObserver | null = null;\n private hostMutationObserver: MutationObserver | null = null;\n\n @Element() el: HTMLIcFooterElement;\n\n @State() deviceSize: number = IC_DEVICE_SIZES.XL;\n @State() foregroundColor: IcBrandForeground = getBrandForegroundAppearance();\n\n /**\n * The alignment of the section containers used within the footer.\n */\n @Prop() aligned?: IcAlignment = \"left\";\n\n /**\n * The screen size breakpoint at which to switch to the small layout.\n */\n @Prop() breakpoint?: IcFooterBreakpoints = \"medium\";\n\n /**\n * The caption displayed at the bottom of the footer.\n */\n @Prop() caption?: string;\n\n /**\n * If `true`, the footer will display the crown copyright at the bottom.\n */\n @Prop() copyright?: boolean = true;\n\n /**\n * The text displayed for the copyright notice if `copyright` is `true`.\n */\n @Prop() copyrightText?: string = \"© Crown Copyright\";\n\n /**\n * The description displayed at the top of the footer.\n */\n @Prop() description?: string;\n\n /**\n * If `true`, the footer will be set up to handle link groups instead of standalone links.\n */\n @Prop() groupLinks?: boolean = false;\n\n /**\n * @internal Triggers on page resize and triggers style changes in footer links and link groups\n */\n @Event() footerResized: EventEmitter<void>;\n\n disconnectedCallback(): void {\n if (this.resizeObserver !== null) {\n this.resizeObserver.disconnect();\n }\n\n this.hostMutationObserver?.disconnect();\n }\n\n componentWillLoad(): void {\n this.deviceSize = getCurrentDeviceSize();\n }\n\n componentDidLoad(): void {\n checkResizeObserver(this.runResizeObserver);\n\n this.hostMutationObserver = new MutationObserver((mutationList) => {\n return renderDynamicChildSlots(mutationList, \"link\", this);\n });\n\n this.hostMutationObserver.observe(this.el, {\n childList: true,\n });\n }\n\n @Listen(\"brandChange\", { target: \"document\" })\n brandChangeHandler(ev: CustomEvent<IcBrand>): void {\n this.foregroundColor = ev.detail.mode;\n }\n\n private isSmall() {\n const bp = this.breakpoint;\n\n return bp === \"extra small\"\n ? this.deviceSize < IC_DEVICE_SIZES.XS\n : bp === \"small\"\n ? this.deviceSize < IC_DEVICE_SIZES.S\n : bp === \"medium\"\n ? this.deviceSize < IC_DEVICE_SIZES.M\n : bp === \"large\"\n ? this.deviceSize < IC_DEVICE_SIZES.L\n : bp === \"extra large\"\n ? this.deviceSize < IC_DEVICE_SIZES.XL\n : false;\n }\n\n private resizeObserverCallback = (currSize: number) => {\n if (currSize !== this.deviceSize) {\n this.deviceSize = currSize;\n }\n this.footerResized.emit();\n };\n\n private runResizeObserver = () => {\n if (this.footerEl) {\n this.resizeObserver = new ResizeObserver(() => {\n const currSize = getCurrentDeviceSize();\n this.resizeObserverCallback(currSize);\n });\n\n this.resizeObserver.observe(this.footerEl);\n }\n };\n\n render() {\n const {\n aligned,\n caption,\n copyright,\n copyrightText,\n description,\n deviceSize,\n el,\n foregroundColor,\n groupLinks,\n } = this;\n const small = this.isSmall();\n\n const showComplianceSection =\n isSlotUsed(el, \"logo\") ||\n isSlotUsed(el, \"caption\") ||\n caption ||\n copyright;\n\n return (\n <Host\n class={{\n [\"ic-footer\"]: true,\n [`ic-footer-${small ? \"small\" : \"sparse\"}`]: true,\n [`ic-footer-${groupLinks ? \"grouped\" : \"ungrouped\"}`]: true,\n [`ic-footer-foreground-${foregroundColor}`]: true,\n // Slots will be able to infer their own color\n [`ic-footer-${IcBrandForegroundEnum.Dark}`]:\n foregroundColor === IcBrandForegroundEnum.Dark,\n [`ic-footer-${IcBrandForegroundEnum.Light}`]:\n foregroundColor === IcBrandForegroundEnum.Light,\n }}\n >\n <footer ref={(el) => (this.footerEl = el)}>\n {/* Description */}\n {(isSlotUsed(el, \"description\") || description) && (\n <div class=\"footer-description\">\n <ic-section-container aligned={aligned} fullHeight={true}>\n <div class=\"footer-description-inner\">\n <ic-typography variant=\"body\">\n <slot name=\"description\">{description}</slot>\n </ic-typography>\n </div>\n </ic-section-container>\n </div>\n )}\n\n {/* Links */}\n {isSlotUsed(el, \"link\") && (\n <div class=\"footer-links\">\n {groupLinks && small ? (\n <div class=\"footer-links-inner\" role=\"list\">\n <slot name=\"link\" />\n </div>\n ) : (\n <ic-section-container fullHeight aligned={aligned}>\n <div class=\"footer-links-inner\" role=\"list\">\n <slot name=\"link\" />\n </div>\n </ic-section-container>\n )}\n </div>\n )}\n\n {/* Compliance (logo, caption, copyright) */}\n {showComplianceSection && (\n <div class=\"footer-compliance\">\n <ic-section-container aligned={aligned} fullHeight={true}>\n <div class=\"footer-compliance-inner\">\n {isSlotUsed(el, \"logo\") && (\n <div class=\"footer-logo\">\n <slot name=\"logo\" />\n </div>\n )}\n {(isSlotUsed(el, \"caption\") || caption) && (\n <div class=\"footer-caption\">\n <ic-typography\n variant={\n deviceSize <= IC_DEVICE_SIZES.M ? \"caption\" : \"body\"\n }\n >\n <slot name=\"caption\">{caption}</slot>\n </ic-typography>\n </div>\n )}\n {copyright && (\n <div\n class={{\n [\"footer-copyright\"]: true,\n [\"classification-spacing\"]: hasClassificationBanner(),\n }}\n >\n <ic-typography\n variant={\n deviceSize <= IC_DEVICE_SIZES.M\n ? \"caption-uppercase\"\n : \"label-uppercase\"\n }\n >\n {copyrightText}\n </ic-typography>\n </div>\n )}\n </div>\n </ic-section-container>\n </div>\n )}\n </footer>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -3,7 +3,7 @@ import { l as getBrandForegroundAppearance, B as slotHasContent, i as isSlotUsed
3
3
  import { d as defineCustomElement$3 } from './ic-section-container2.js';
4
4
  import { d as defineCustomElement$2 } from './ic-typography2.js';
5
5
 
6
- const icHeroCss = "/*! 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;background-color:var(--ic-hero-background);--hero-heading-bottom-margin:var(--ic-space-md);--hero-keyline:var(--ic-hero-keyline)}:host(.ic-hero-dark){background-color:var(--ic-brand-color-secondary);--ic-hero-heading:var(--ic-color-text-primary-light);--ic-hero-body:var(--ic-color-text-primary-light);--ic-hero-secondary-heading:var(--ic-color-text-primary-light);--hero-keyline:var(--ic-brand-text-color)}.heading{--ic-typography-color:var(--ic-hero-heading)}.subheading{--ic-typography-color:var(--ic-hero-body)}.secondary-container{--ic-typography-color:var(--ic-hero-secondary-heading);display:flex;flex-direction:column;justify-content:center;border-left:var(--ic-space-xxxs) solid var(--hero-keyline)}:host(.has-background-image){background-repeat:no-repeat;background-position:right -6.25rem;background-size:auto calc(100% + 6.25rem);box-shadow:var(--ic-elevation-inset)}@media (prefers-reduced-motion){:host(.has-background-image){background-position:right -6.25rem !important}}ic-typography.heading-bottom-spacing{margin-bottom:var(--hero-heading-bottom-margin)}.section-container{display:flex;align-items:center;height:100%}.left-container{padding:var(--ic-space-xl) 0}.left-container:not(.left-container-full-width){flex-basis:50%}.left-container-full-width{width:100%}.right-container{flex-basis:50%}.interaction-container{display:flex;gap:var(--ic-space-md);margin-top:var(--ic-space-lg);flex-wrap:wrap}.secondary-subheading{margin-top:var(--ic-space-xxs)}:host(.ic-hero-content-aligned-left) .left-container,:host(.ic-hero-content-aligned-left) .interaction-container{justify-content:flex-start;text-align:left}:host(.ic-hero-content-aligned-center) .left-container,:host(.ic-hero-content-aligned-center) .interaction-container{justify-content:center;text-align:center}@media (min-width: 992px){.left-container-full-width{width:66.6%}}@media (min-width: 1044px){:host,.section-container{min-height:13rem}:host(.ic-hero-small),:host(.ic-hero-small) .section-container{min-height:10.813rem}.left-container:not(.left-container-full-width){flex-basis:66.6%}.left-container{min-height:9rem}.right-container{flex-basis:33.3%;margin-left:3.125rem}.secondary-container{min-height:9rem}.secondary-heading,.secondary-subheading{margin-left:3.938rem}}@media (min-width: 801px) and (max-width: 1043px){:host(.has-background-image){background-image:none !important}:host,.section-container{min-height:16rem}:host(.ic-hero-small),:host(.ic-hero-small) .section-container{min-height:15rem}:host(.secondary-heading),:host(.secondary-heading) .section-container{min-height:14rem}.left-container{min-height:10rem}.secondary-container{min-height:10rem}.secondary-heading,.secondary-subheading{margin-left:5.922rem}.right-container{margin-left:3.125rem}}@media (min-width: 641px) and (max-width: 800px){:host(.has-background-image){background-image:none !important}:host(.has-right-content) .section-container{flex-wrap:wrap}:host(.has-right-content) .left-container{flex-basis:100%}:host(.has-right-content) .right-container{flex-basis:100%;margin-bottom:2.5rem}:host,.section-container{min-height:16rem}:host(.ic-hero-small),:host(.ic-hero-small) .section-container{min-height:15rem}:host(.secondary-heading),:host(.secondary-heading) .section-container{min-height:14rem}.left-container{min-height:10rem}.secondary-container{min-height:10rem}.secondary-heading,.secondary-subheading{margin-left:2.125rem}}@media (min-width: 481px) and (max-width: 640px){:host(.has-background-image){background-image:none !important}:host,.section-container{min-height:13rem}:host(.ic-hero-small),:host(.ic-hero-small) .section-container{min-height:10.813rem}:host(.secondary-heading),:host(.secondary-heading) .section-container{min-height:17.5rem}:host(.secondary-heading) .section-container,:host(.ic-hero-small) .section-container,.section-container{flex-direction:column;align-items:flex-start}.left-container{height:-moz-fit-content;height:fit-content}.secondary-container{height:-moz-fit-content;height:fit-content;border:none}.right-container{margin-bottom:2.5rem}}@media (max-width: 480px){:host(.has-background-image){background-image:none !important}:host,.section-container{min-height:12rem}:host,.right-container{margin-bottom:var(--ic-space-md)}:host(.ic-hero-small),:host(.ic-hero-small) .section-container{min-height:10.813rem}:host(.secondary-heading),:host(.secondary-heading) .section-container{min-height:16.5rem}:host(.secondary-heading) .section-container,:host(.ic-hero-small) .section-container,.section-container{flex-direction:column;align-items:flex-start}.left-container{height:-moz-fit-content;height:fit-content}.secondary-container{height:-moz-fit-content;height:fit-content;border:none}}";
6
+ const icHeroCss = "/*! 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;background-color:var(--ic-hero-background);--hero-heading-bottom-margin:var(--ic-space-md);--hero-keyline:var(--ic-hero-keyline)}:host(.ic-hero-dark){background-color:var(--ic-brand-color-secondary);--ic-hero-heading:var(--ic-color-text-primary-light);--ic-hero-body:var(--ic-color-text-primary-light);--ic-hero-secondary-heading:var(--ic-color-text-primary-light);--hero-keyline:var(--ic-brand-text-color)}.heading{--ic-typography-color:var(--ic-hero-heading)}.subheading{--ic-typography-color:var(--ic-hero-body)}.secondary-container{--ic-typography-color:var(--ic-hero-secondary-heading);display:flex;flex-direction:column;justify-content:center;border-left:var(--ic-space-xxxs) solid var(--hero-keyline)}:host(.has-background-image){background-repeat:no-repeat;background-position:right -6.25rem;background-size:auto calc(100% + 6.25rem);box-shadow:var(--ic-elevation-inset)}@media (prefers-reduced-motion){:host(.has-background-image){background-position:right -6.25rem !important}}ic-typography.heading-bottom-spacing{margin-bottom:var(--hero-heading-bottom-margin)}.section-container{display:flex;align-items:center;height:100%}.left-container{padding:var(--ic-space-xl) 0}.left-container:not(.left-container-full-width){flex-basis:50%}.left-container-full-width{width:100%}.right-container{flex-basis:50%}.interaction-container{display:flex;gap:var(--ic-space-md);margin-top:var(--ic-space-lg);flex-wrap:wrap;--ic-date-input-label:var(--ic-brand-text-color);--ic-time-picker-label:var(--ic-brand-text-color);--ic-checkbox-group-label:var(--ic-brand-text-color);--ic-radio-button-input-field-label:var(--ic-brand-text-color);--ic-search-bar-label:var(--ic-brand-text-color);--ic-select-field-label:var(--ic-brand-text-color);--ic-switch-label:var(--ic-brand-text-color);--ic-text-field-label:var(--ic-brand-text-color);--ic-date-input-subtitle:var(--ic-brand-text-color);--ic-time-picker-subtitle:var(--ic-brand-text-color);--ic-checkbox-group-subtitle:var(--ic-brand-text-color);--ic-radio-button-input-field-subtitle:var(--ic-brand-text-color);--ic-search-bar-subtitle:var(--ic-brand-text-color);--ic-select-input-field-label-subtitle:var(--ic-brand-text-color);--ic-switch-subtitle:var(--ic-brand-text-color);--ic-text-field-subtitle:var(--ic-brand-text-color);--ic-checkbox-text:var(--ic-brand-text-color);--ic-radio-button-text-option:var(--ic-brand-text-color)}.secondary-subheading{margin-top:var(--ic-space-xxs)}:host(.ic-hero-content-aligned-left) .left-container,:host(.ic-hero-content-aligned-left) .interaction-container{justify-content:flex-start;text-align:left}:host(.ic-hero-content-aligned-center) .left-container,:host(.ic-hero-content-aligned-center) .interaction-container{justify-content:center;text-align:center}@media (min-width: 992px){.left-container-full-width{width:66.6%}}@media (min-width: 1044px){:host,.section-container{min-height:13rem}:host(.ic-hero-small),:host(.ic-hero-small) .section-container{min-height:10.813rem}.left-container:not(.left-container-full-width){flex-basis:66.6%}.left-container{min-height:9rem}.right-container{flex-basis:33.3%;margin-left:3.125rem}.secondary-container{min-height:9rem}.secondary-heading,.secondary-subheading{margin-left:3.938rem}}@media (min-width: 801px) and (max-width: 1043px){:host(.has-background-image){background-image:none !important}:host,.section-container{min-height:16rem}:host(.ic-hero-small),:host(.ic-hero-small) .section-container{min-height:15rem}:host(.secondary-heading),:host(.secondary-heading) .section-container{min-height:14rem}.left-container{min-height:10rem}.secondary-container{min-height:10rem}.secondary-heading,.secondary-subheading{margin-left:5.922rem}.right-container{margin-left:3.125rem}}@media (min-width: 641px) and (max-width: 800px){:host(.has-background-image){background-image:none !important}:host(.has-right-content) .section-container{flex-wrap:wrap}:host(.has-right-content) .left-container{flex-basis:100%}:host(.has-right-content) .right-container{flex-basis:100%;margin-bottom:2.5rem}:host,.section-container{min-height:16rem}:host(.ic-hero-small),:host(.ic-hero-small) .section-container{min-height:15rem}:host(.secondary-heading),:host(.secondary-heading) .section-container{min-height:14rem}.left-container{min-height:10rem}.secondary-container{min-height:10rem}.secondary-heading,.secondary-subheading{margin-left:2.125rem}}@media (min-width: 481px) and (max-width: 640px){:host(.has-background-image){background-image:none !important}:host,.section-container{min-height:13rem}:host(.ic-hero-small),:host(.ic-hero-small) .section-container{min-height:10.813rem}:host(.secondary-heading),:host(.secondary-heading) .section-container{min-height:17.5rem}:host(.secondary-heading) .section-container,:host(.ic-hero-small) .section-container,.section-container{flex-direction:column;align-items:flex-start}.left-container{height:-moz-fit-content;height:fit-content}.secondary-container{height:-moz-fit-content;height:fit-content;border:none}.right-container{margin-bottom:2.5rem}}@media (max-width: 480px){:host(.has-background-image){background-image:none !important}:host,.section-container{min-height:12rem}:host,.right-container{margin-bottom:var(--ic-space-md)}:host(.ic-hero-small),:host(.ic-hero-small) .section-container{min-height:10.813rem}:host(.secondary-heading),:host(.secondary-heading) .section-container{min-height:16.5rem}:host(.secondary-heading) .section-container,:host(.ic-hero-small) .section-container,.section-container{flex-direction:column;align-items:flex-start}.left-container{height:-moz-fit-content;height:fit-content}.secondary-container{height:-moz-fit-content;height:fit-content;border:none}}";
7
7
  const IcHeroStyle0 = icHeroCss;
8
8
 
9
9
  const Hero = /*@__PURE__*/ proxyCustomElement(class Hero extends HTMLElement {
@@ -33,6 +33,10 @@ const Hero = /*@__PURE__*/ proxyCustomElement(class Hero extends HTMLElement {
33
33
  * The size of the hero component.
34
34
  */
35
35
  this.size = "medium";
36
+ /**
37
+ * 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.
38
+ */
39
+ this.theme = "inherit";
36
40
  }
37
41
  disconnectedCallback() {
38
42
  var _a;
@@ -68,7 +72,7 @@ const Hero = /*@__PURE__*/ proxyCustomElement(class Hero extends HTMLElement {
68
72
  }
69
73
  }
70
74
  render() {
71
- const { aligned, size, heading, subheading, secondaryHeading, secondarySubheading, foregroundColor, backgroundImage, scrollFactor, contentAligned, } = this;
75
+ const { aligned, size, heading, subheading, secondaryHeading, secondarySubheading, foregroundColor, backgroundImage, scrollFactor, contentAligned, theme, } = this;
72
76
  let style = {};
73
77
  if (isPropDefined(backgroundImage)) {
74
78
  style = {
@@ -76,19 +80,20 @@ const Hero = /*@__PURE__*/ proxyCustomElement(class Hero extends HTMLElement {
76
80
  "background-position": scrollFactor,
77
81
  };
78
82
  }
79
- return (h(Host, { key: 'ae89dfc9697492e640cef1740da5b1552a6b31ca', class: {
83
+ return (h(Host, { key: '34d3c839d5827d5dadfdc1a160c4b6b2ae965cdf', class: {
80
84
  [`ic-hero-${IcBrandForegroundEnum.Dark}`]: foregroundColor === IcBrandForegroundEnum.Dark,
81
85
  ["has-background-image"]: backgroundImage !== undefined,
82
86
  ["has-right-content"]: this.rightContent,
83
87
  ["ic-hero-small"]: size === "small",
84
88
  ["secondary-heading"]: !!secondaryHeading,
85
89
  [`ic-hero-content-aligned-${contentAligned}`]: contentAligned !== undefined,
86
- }, style: style }, h("ic-section-container", { key: 'e70e1a6e85eddbdbc68b9a7754d760e898e27981', aligned: aligned, fullHeight: true, class: "section-container" }, h("div", { key: 'f1b85e347aa5f1b6f961aa2c7943a1e651dc22c3', class: {
90
+ [`ic-theme-${theme}`]: theme !== "inherit",
91
+ }, style: style }, h("ic-section-container", { key: '92c885c6bb0532ed6d5adbea3927ff56c88ccf00', aligned: aligned, fullHeight: true, class: "section-container" }, h("div", { key: '808e287fe214793b21c2da1d4db8410a0fecdcb9', class: {
87
92
  ["left-container"]: true,
88
93
  ["left-container-full-width"]: this.leftContentFullWidth,
89
- } }, h("div", { key: '2100740ba4e22f0f229c145327b572ffa78521c6', class: "heading" }, h("slot", { key: '30cd98888662c64e944660a68410cf51d0146460', name: "heading" }, h("ic-typography", { key: 'dc2a602974c66325be5082c517f28eae72f5780b', variant: size === "small" ? "h2" : "h1", class: {
94
+ } }, h("div", { key: '09267f66de926f237092d55372f34ee75b3b1bb5', class: "heading" }, h("slot", { key: 'b30e4be509093aa6f7b2dbe906eb63c8ed1f70da', name: "heading" }, h("ic-typography", { key: 'a59edf905e413ecd324b09807acb4efc7730b1ef', variant: size === "small" ? "h2" : "h1", class: {
90
95
  ["heading-bottom-spacing"]: size !== "small",
91
- } }, h("h2", { key: '5f26d23f4bcf35ee1273741ef767c93ea3a8f90d' }, heading)))), h("div", { key: '4187d2e39e8adb1174e9408ab269f343c876e711', class: "subheading" }, h("slot", { key: '90835b42345fbebb0f98501cf46e9185f746868d', name: "subheading" }, h("ic-typography", { key: '85b6f8619599bd518fa1b4351ec5dcb0d0059684', variant: "body" }, subheading))), h("div", { key: '2f79214e6fb235164825f6c77d31d16cf3e1bda8', class: "interaction-container" }, h("slot", { key: '008f3ad58fdc0d12a1fa3dfe8e400a5cbe05b13f', name: "interaction" }))), (isPropDefined(secondaryHeading) || this.rightContent) && (h("div", { key: '6ae2e569b0a50c021f9b7aa0399c48c79a6a2151', class: "right-container" }, h("slot", { key: '03ebade13d8f03e4d0fe310d2a3038c3c2bdcada', name: "secondary" }, secondaryHeading && (h("div", { key: '87be1f434f9f7d37783a79de3d38a9ffd3ae6633', class: "secondary-container" }, h("div", { key: '87f64a2443ccfa0e6fa790b13302f28269a7aeb2', class: "secondary-heading" }, h("ic-typography", { key: 'c8fefec7ecd3a3757b565933238bddbcb2206389', variant: "h4" }, h("h3", { key: '0afe6e4b3b4594ce85599155f65c89b27a8ffc97' }, secondaryHeading))), h("div", { key: '84412145d7f3785e60d67ceaa879066e9623784f', class: "secondary-subheading" }, h("ic-typography", { key: '0e89a8ef45a387d6f09a25ce88e1947bdf24c47a', variant: "subtitle-small" }, secondarySubheading))))))))));
96
+ } }, h("h2", { key: 'f3d705dcea394926d050c5e9a518aa6d23e61c74' }, heading)))), h("div", { key: 'e67892b909d8d59b9714c9c39b07f5fbaa47cd5f', class: "subheading" }, h("slot", { key: '94601527aad82e6da4a1723f435b26221f562d3c', name: "subheading" }, h("ic-typography", { key: 'd10d05ad2ecbc02f3cc9612c5e5cd8507c95e7ba', variant: "body" }, subheading))), h("div", { key: '12ea9178058e547b57fd1ca454a00a9bdf542f41', class: "interaction-container" }, h("slot", { key: '8b3e37943fb688843dfcc6f28f7aab2d42c66454', name: "interaction" }))), (isPropDefined(secondaryHeading) || this.rightContent) && (h("div", { key: '2783784a47d8a7667959b6bc0a102e0536050cab', class: "right-container" }, h("slot", { key: 'ad168f0963f7950cf70b8a77abd4390a0585ddff', name: "secondary" }, secondaryHeading && (h("div", { key: 'faa3a3a6f23962c99eab8d1e81e2fa5d96b8f6c2', class: "secondary-container" }, h("div", { key: '147945f65e18d6d3ade2342057e1cdaf68faca50', class: "secondary-heading" }, h("ic-typography", { key: '78a22d379cb17ec183b4f320f652696cf46155b4', variant: "h4" }, h("h3", { key: '87619d7363588a0887f4c704011d824d51f3caa2' }, secondaryHeading))), h("div", { key: '0cc920336ef6d241361f095317391c296ce81e81', class: "secondary-subheading" }, h("ic-typography", { key: '19db9e9c8c392b26e698427048de8ad1bf2b7a5a', variant: "subtitle-small" }, secondarySubheading))))))))));
92
97
  }
93
98
  get el() { return this; }
94
99
  static get style() { return IcHeroStyle0; }
@@ -102,6 +107,7 @@ const Hero = /*@__PURE__*/ proxyCustomElement(class Hero extends HTMLElement {
102
107
  "secondarySubheading": [1, "secondary-subheading"],
103
108
  "size": [1],
104
109
  "subheading": [1],
110
+ "theme": [1],
105
111
  "foregroundColor": [32],
106
112
  "rightContent": [32],
107
113
  "leftContentFullWidth": [32],
@@ -1 +1 @@
1
- {"file":"ic-hero.js","mappings":"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","names":[],"sources":["src/components/ic-hero/ic-hero.css?tag=ic-hero&encapsulation=shadow","src/components/ic-hero/ic-hero.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: block;\n background-color: var(--ic-hero-background);\n\n --hero-heading-bottom-margin: var(--ic-space-md);\n --hero-keyline: var(--ic-hero-keyline);\n}\n\n:host(.ic-hero-dark) {\n background-color: var(--ic-brand-color-secondary);\n\n --ic-hero-heading: var(--ic-color-text-primary-light);\n --ic-hero-body: var(--ic-color-text-primary-light);\n --ic-hero-secondary-heading: var(--ic-color-text-primary-light);\n --hero-keyline: var(--ic-brand-text-color);\n}\n\n.heading {\n --ic-typography-color: var(--ic-hero-heading);\n}\n\n.subheading {\n --ic-typography-color: var(--ic-hero-body);\n}\n\n.secondary-container {\n --ic-typography-color: var(--ic-hero-secondary-heading);\n\n display: flex;\n flex-direction: column;\n justify-content: center;\n border-left: var(--ic-space-xxxs) solid var(--hero-keyline);\n}\n\n:host(.has-background-image) {\n background-repeat: no-repeat;\n background-position: right -6.25rem;\n background-size: auto calc(100% + 6.25rem);\n box-shadow: var(--ic-elevation-inset);\n}\n\n@media (prefers-reduced-motion) {\n :host(.has-background-image) {\n background-position: right -6.25rem !important;\n }\n}\n\nic-typography.heading-bottom-spacing {\n margin-bottom: var(--hero-heading-bottom-margin);\n}\n\n.section-container {\n display: flex;\n align-items: center;\n height: 100%;\n}\n\n.left-container {\n padding: var(--ic-space-xl) 0;\n}\n\n.left-container:not(.left-container-full-width) {\n flex-basis: 50%;\n}\n\n.left-container-full-width {\n width: 100%;\n}\n\n.right-container {\n flex-basis: 50%;\n}\n\n.interaction-container {\n display: flex;\n gap: var(--ic-space-md);\n margin-top: var(--ic-space-lg);\n flex-wrap: wrap;\n}\n\n.secondary-subheading {\n margin-top: var(--ic-space-xxs);\n}\n\n:host(.ic-hero-content-aligned-left) .left-container,\n:host(.ic-hero-content-aligned-left) .interaction-container {\n justify-content: flex-start;\n text-align: left;\n}\n\n:host(.ic-hero-content-aligned-center) .left-container,\n:host(.ic-hero-content-aligned-center) .interaction-container {\n justify-content: center;\n text-align: center;\n}\n\n@media (min-width: 992px) {\n .left-container-full-width {\n width: 66.6%;\n }\n}\n\n@media (min-width: 1044px) {\n :host,\n .section-container {\n min-height: 13rem;\n }\n\n :host(.ic-hero-small),\n :host(.ic-hero-small) .section-container {\n min-height: 10.813rem;\n }\n\n .left-container:not(.left-container-full-width) {\n flex-basis: 66.6%;\n }\n\n .left-container {\n min-height: 9rem;\n }\n\n .right-container {\n flex-basis: 33.3%;\n margin-left: 3.125rem;\n }\n\n .secondary-container {\n min-height: 9rem;\n }\n\n .secondary-heading,\n .secondary-subheading {\n margin-left: 3.938rem;\n }\n}\n\n@media (min-width: 801px) and (max-width: 1043px) {\n :host(.has-background-image) {\n background-image: none !important;\n }\n\n :host,\n .section-container {\n min-height: 16rem;\n }\n\n :host(.ic-hero-small),\n :host(.ic-hero-small) .section-container {\n min-height: 15rem;\n }\n\n :host(.secondary-heading),\n :host(.secondary-heading) .section-container {\n min-height: 14rem;\n }\n\n .left-container {\n min-height: 10rem;\n }\n\n .secondary-container {\n min-height: 10rem;\n }\n\n .secondary-heading,\n .secondary-subheading {\n margin-left: 5.922rem;\n }\n\n .right-container {\n margin-left: 3.125rem;\n }\n}\n\n@media (min-width: 641px) and (max-width: 800px) {\n :host(.has-background-image) {\n background-image: none !important;\n }\n\n :host(.has-right-content) .section-container {\n flex-wrap: wrap;\n }\n\n :host(.has-right-content) .left-container {\n flex-basis: 100%;\n }\n\n :host(.has-right-content) .right-container {\n flex-basis: 100%;\n margin-bottom: 2.5rem;\n }\n\n :host,\n .section-container {\n min-height: 16rem;\n }\n\n :host(.ic-hero-small),\n :host(.ic-hero-small) .section-container {\n min-height: 15rem;\n }\n\n :host(.secondary-heading),\n :host(.secondary-heading) .section-container {\n min-height: 14rem;\n }\n\n .left-container {\n min-height: 10rem;\n }\n\n .secondary-container {\n min-height: 10rem;\n }\n\n .secondary-heading,\n .secondary-subheading {\n margin-left: 2.125rem;\n }\n}\n\n@media (min-width: 481px) and (max-width: 640px) {\n :host(.has-background-image) {\n background-image: none !important;\n }\n\n :host,\n .section-container {\n min-height: 13rem;\n }\n\n :host(.ic-hero-small),\n :host(.ic-hero-small) .section-container {\n min-height: 10.813rem;\n }\n\n :host(.secondary-heading),\n :host(.secondary-heading) .section-container {\n min-height: 17.5rem;\n }\n\n :host(.secondary-heading) .section-container,\n :host(.ic-hero-small) .section-container,\n .section-container {\n flex-direction: column;\n align-items: flex-start;\n }\n\n .left-container {\n height: fit-content;\n }\n\n .secondary-container {\n height: fit-content;\n border: none;\n }\n\n .right-container {\n margin-bottom: 2.5rem;\n }\n}\n\n@media (max-width: 480px) {\n :host(.has-background-image) {\n background-image: none !important;\n }\n\n :host,\n .section-container {\n min-height: 12rem;\n }\n\n :host,\n .right-container {\n margin-bottom: var(--ic-space-md);\n }\n\n :host(.ic-hero-small),\n :host(.ic-hero-small) .section-container {\n min-height: 10.813rem;\n }\n\n :host(.secondary-heading),\n :host(.secondary-heading) .section-container {\n min-height: 16.5rem;\n }\n\n :host(.secondary-heading) .section-container,\n :host(.ic-hero-small) .section-container,\n .section-container {\n flex-direction: column;\n align-items: flex-start;\n }\n\n .left-container {\n height: fit-content;\n }\n\n .secondary-container {\n height: fit-content;\n border: none;\n }\n}\n","import {\n Component,\n Element,\n Host,\n Prop,\n h,\n State,\n Listen,\n} from \"@stencil/core\";\nimport {\n IcAlignment,\n IcSizesNoLarge,\n IcBrand,\n IcBrandForeground,\n IcBrandForegroundEnum,\n} from \"../../utils/types\";\nimport {\n slotHasContent,\n getBrandForegroundAppearance,\n onComponentRequiredPropUndefined,\n isPropDefined,\n isSlotUsed,\n renderDynamicChildSlots,\n} from \"../../utils/helpers\";\nimport { IcHeroContentAlignments } from \"./ic-hero.types\";\n\n/**\n * @slot heading - Content will be rendered in the title area, in place of the heading.\n * @slot subheading - Content will be rendered in the title area, in place of the subheading.\n * @slot interaction - Content will be rendered in the interaction area, adjacent to the title area.\n * @slot secondary - Content will be rendered in the secondary content area.\n */\n\n@Component({\n tag: \"ic-hero\",\n styleUrl: \"ic-hero.css\",\n shadow: true,\n})\nexport class Hero {\n private hostMutationObserver: MutationObserver | null = null;\n\n @Element() el: HTMLIcHeroElement;\n\n @State() foregroundColor: IcBrandForeground = getBrandForegroundAppearance();\n @State() rightContent: boolean = false;\n // set by above state\n @State() leftContentFullWidth: boolean =\n !this.rightContent && this.secondaryHeading === undefined;\n @State() scrollFactor: string = \"right -100px\";\n\n /**\n * The alignment of the hero.\n */\n @Prop() aligned?: IcAlignment = \"left\";\n\n /**\n * The optional background image.\n */\n @Prop() backgroundImage?: string;\n\n /**\n * The alignment of the hero content.\n */\n @Prop() contentAligned?: IcHeroContentAlignments = \"left\";\n\n /**\n * If `true`, the background image (if set) will not scroll using a parallax effect.\n */\n @Prop() disableBackgroundParallax?: boolean = false;\n\n /**\n * The heading of the hero. An <h2> level heading.\n */\n @Prop() heading?: string;\n\n /**\n * The optional secondary heading, an <h3> level heading. Replaced by slotted right content.\n */\n @Prop() secondaryHeading?: string;\n\n /**\n * The optional secondary subheading, replaced by slotted right content.\n */\n @Prop() secondarySubheading?: string;\n\n /**\n * The size of the hero component.\n */\n @Prop() size?: IcSizesNoLarge = \"medium\";\n\n /**\n * The description for the hero.\n */\n @Prop() subheading?: string;\n\n disconnectedCallback(): void {\n this.hostMutationObserver?.disconnect();\n }\n\n componentWillLoad(): void {\n this.rightContent = slotHasContent(this.el, \"secondary\");\n }\n\n componentDidLoad(): void {\n !isSlotUsed(this.el, \"heading\") &&\n onComponentRequiredPropUndefined(\n [{ prop: this.heading, propName: \"heading\" }],\n \"Hero\"\n );\n\n this.hostMutationObserver = new MutationObserver((mutationList) =>\n renderDynamicChildSlots(mutationList, \"secondary\", this)\n );\n this.hostMutationObserver.observe(this.el, {\n childList: true,\n });\n }\n\n componentWillRender(): void {\n this.rightContent = slotHasContent(this.el, \"secondary\");\n }\n\n @Listen(\"brandChange\", { target: \"document\" })\n brandChangeHandler(ev: CustomEvent<IcBrand>): void {\n this.foregroundColor = ev.detail.mode;\n }\n\n @Listen(\"scroll\", { target: \"document\" })\n doScroll(): void {\n if (this.disableBackgroundParallax) {\n return;\n }\n\n const scrolltotop = document.scrollingElement?.scrollTop;\n if (scrolltotop) {\n const factor = 0.4;\n const y = -100 + scrolltotop * factor;\n this.scrollFactor = \"right \" + y + \"px\";\n }\n }\n\n render() {\n const {\n aligned,\n size,\n heading,\n subheading,\n secondaryHeading,\n secondarySubheading,\n foregroundColor,\n backgroundImage,\n scrollFactor,\n contentAligned,\n } = this;\n\n let style = {};\n\n if (isPropDefined(backgroundImage)) {\n style = {\n \"background-image\": \"url(\" + backgroundImage + \")\",\n \"background-position\": scrollFactor,\n };\n }\n\n return (\n <Host\n class={{\n [`ic-hero-${IcBrandForegroundEnum.Dark}`]:\n foregroundColor === IcBrandForegroundEnum.Dark,\n [\"has-background-image\"]: backgroundImage !== undefined,\n [\"has-right-content\"]: this.rightContent,\n [\"ic-hero-small\"]: size === \"small\",\n [\"secondary-heading\"]: !!secondaryHeading,\n [`ic-hero-content-aligned-${contentAligned}`]:\n contentAligned !== undefined,\n }}\n style={style}\n >\n <ic-section-container\n aligned={aligned}\n fullHeight\n class=\"section-container\"\n >\n <div\n class={{\n [\"left-container\"]: true,\n [\"left-container-full-width\"]: this.leftContentFullWidth,\n }}\n >\n <div class=\"heading\">\n <slot name=\"heading\">\n <ic-typography\n variant={size === \"small\" ? \"h2\" : \"h1\"}\n class={{\n [\"heading-bottom-spacing\"]: size !== \"small\",\n }}\n >\n <h2>{heading}</h2>\n </ic-typography>\n </slot>\n </div>\n <div class=\"subheading\">\n <slot name=\"subheading\">\n <ic-typography variant=\"body\">{subheading}</ic-typography>\n </slot>\n </div>\n <div class=\"interaction-container\">\n <slot name=\"interaction\"></slot>\n </div>\n </div>\n {(isPropDefined(secondaryHeading) || this.rightContent) && (\n <div class=\"right-container\">\n <slot name=\"secondary\">\n {secondaryHeading && (\n <div class=\"secondary-container\">\n <div class=\"secondary-heading\">\n <ic-typography variant=\"h4\">\n <h3>{secondaryHeading}</h3>\n </ic-typography>\n </div>\n <div class=\"secondary-subheading\">\n <ic-typography variant=\"subtitle-small\">\n {secondarySubheading}\n </ic-typography>\n </div>\n </div>\n )}\n </slot>\n </div>\n )}\n </ic-section-container>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-hero.js","mappings":"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","names":[],"sources":["src/components/ic-hero/ic-hero.css?tag=ic-hero&encapsulation=shadow","src/components/ic-hero/ic-hero.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: block;\n background-color: var(--ic-hero-background);\n\n --hero-heading-bottom-margin: var(--ic-space-md);\n --hero-keyline: var(--ic-hero-keyline);\n}\n\n:host(.ic-hero-dark) {\n background-color: var(--ic-brand-color-secondary);\n\n --ic-hero-heading: var(--ic-color-text-primary-light);\n --ic-hero-body: var(--ic-color-text-primary-light);\n --ic-hero-secondary-heading: var(--ic-color-text-primary-light);\n --hero-keyline: var(--ic-brand-text-color);\n}\n\n.heading {\n --ic-typography-color: var(--ic-hero-heading);\n}\n\n.subheading {\n --ic-typography-color: var(--ic-hero-body);\n}\n\n.secondary-container {\n --ic-typography-color: var(--ic-hero-secondary-heading);\n\n display: flex;\n flex-direction: column;\n justify-content: center;\n border-left: var(--ic-space-xxxs) solid var(--hero-keyline);\n}\n\n:host(.has-background-image) {\n background-repeat: no-repeat;\n background-position: right -6.25rem;\n background-size: auto calc(100% + 6.25rem);\n box-shadow: var(--ic-elevation-inset);\n}\n\n@media (prefers-reduced-motion) {\n :host(.has-background-image) {\n background-position: right -6.25rem !important;\n }\n}\n\nic-typography.heading-bottom-spacing {\n margin-bottom: var(--hero-heading-bottom-margin);\n}\n\n.section-container {\n display: flex;\n align-items: center;\n height: 100%;\n}\n\n.left-container {\n padding: var(--ic-space-xl) 0;\n}\n\n.left-container:not(.left-container-full-width) {\n flex-basis: 50%;\n}\n\n.left-container-full-width {\n width: 100%;\n}\n\n.right-container {\n flex-basis: 50%;\n}\n\n.interaction-container {\n display: flex;\n gap: var(--ic-space-md);\n margin-top: var(--ic-space-lg);\n flex-wrap: wrap;\n\n --ic-date-input-label: var(--ic-brand-text-color);\n --ic-time-picker-label: var(--ic-brand-text-color);\n --ic-checkbox-group-label: var(--ic-brand-text-color);\n --ic-radio-button-input-field-label: var(--ic-brand-text-color);\n --ic-search-bar-label: var(--ic-brand-text-color);\n --ic-select-field-label: var(--ic-brand-text-color);\n --ic-switch-label: var(--ic-brand-text-color);\n --ic-text-field-label: var(--ic-brand-text-color);\n --ic-date-input-subtitle: var(--ic-brand-text-color);\n --ic-time-picker-subtitle: var(--ic-brand-text-color);\n --ic-checkbox-group-subtitle: var(--ic-brand-text-color);\n --ic-radio-button-input-field-subtitle: var(--ic-brand-text-color);\n --ic-search-bar-subtitle: var(--ic-brand-text-color);\n --ic-select-input-field-label-subtitle: var(--ic-brand-text-color);\n --ic-switch-subtitle: var(--ic-brand-text-color);\n --ic-text-field-subtitle: var(--ic-brand-text-color);\n --ic-checkbox-text: var(--ic-brand-text-color);\n --ic-radio-button-text-option: var(--ic-brand-text-color);\n}\n\n.secondary-subheading {\n margin-top: var(--ic-space-xxs);\n}\n\n:host(.ic-hero-content-aligned-left) .left-container,\n:host(.ic-hero-content-aligned-left) .interaction-container {\n justify-content: flex-start;\n text-align: left;\n}\n\n:host(.ic-hero-content-aligned-center) .left-container,\n:host(.ic-hero-content-aligned-center) .interaction-container {\n justify-content: center;\n text-align: center;\n}\n\n@media (min-width: 992px) {\n .left-container-full-width {\n width: 66.6%;\n }\n}\n\n@media (min-width: 1044px) {\n :host,\n .section-container {\n min-height: 13rem;\n }\n\n :host(.ic-hero-small),\n :host(.ic-hero-small) .section-container {\n min-height: 10.813rem;\n }\n\n .left-container:not(.left-container-full-width) {\n flex-basis: 66.6%;\n }\n\n .left-container {\n min-height: 9rem;\n }\n\n .right-container {\n flex-basis: 33.3%;\n margin-left: 3.125rem;\n }\n\n .secondary-container {\n min-height: 9rem;\n }\n\n .secondary-heading,\n .secondary-subheading {\n margin-left: 3.938rem;\n }\n}\n\n@media (min-width: 801px) and (max-width: 1043px) {\n :host(.has-background-image) {\n background-image: none !important;\n }\n\n :host,\n .section-container {\n min-height: 16rem;\n }\n\n :host(.ic-hero-small),\n :host(.ic-hero-small) .section-container {\n min-height: 15rem;\n }\n\n :host(.secondary-heading),\n :host(.secondary-heading) .section-container {\n min-height: 14rem;\n }\n\n .left-container {\n min-height: 10rem;\n }\n\n .secondary-container {\n min-height: 10rem;\n }\n\n .secondary-heading,\n .secondary-subheading {\n margin-left: 5.922rem;\n }\n\n .right-container {\n margin-left: 3.125rem;\n }\n}\n\n@media (min-width: 641px) and (max-width: 800px) {\n :host(.has-background-image) {\n background-image: none !important;\n }\n\n :host(.has-right-content) .section-container {\n flex-wrap: wrap;\n }\n\n :host(.has-right-content) .left-container {\n flex-basis: 100%;\n }\n\n :host(.has-right-content) .right-container {\n flex-basis: 100%;\n margin-bottom: 2.5rem;\n }\n\n :host,\n .section-container {\n min-height: 16rem;\n }\n\n :host(.ic-hero-small),\n :host(.ic-hero-small) .section-container {\n min-height: 15rem;\n }\n\n :host(.secondary-heading),\n :host(.secondary-heading) .section-container {\n min-height: 14rem;\n }\n\n .left-container {\n min-height: 10rem;\n }\n\n .secondary-container {\n min-height: 10rem;\n }\n\n .secondary-heading,\n .secondary-subheading {\n margin-left: 2.125rem;\n }\n}\n\n@media (min-width: 481px) and (max-width: 640px) {\n :host(.has-background-image) {\n background-image: none !important;\n }\n\n :host,\n .section-container {\n min-height: 13rem;\n }\n\n :host(.ic-hero-small),\n :host(.ic-hero-small) .section-container {\n min-height: 10.813rem;\n }\n\n :host(.secondary-heading),\n :host(.secondary-heading) .section-container {\n min-height: 17.5rem;\n }\n\n :host(.secondary-heading) .section-container,\n :host(.ic-hero-small) .section-container,\n .section-container {\n flex-direction: column;\n align-items: flex-start;\n }\n\n .left-container {\n height: fit-content;\n }\n\n .secondary-container {\n height: fit-content;\n border: none;\n }\n\n .right-container {\n margin-bottom: 2.5rem;\n }\n}\n\n@media (max-width: 480px) {\n :host(.has-background-image) {\n background-image: none !important;\n }\n\n :host,\n .section-container {\n min-height: 12rem;\n }\n\n :host,\n .right-container {\n margin-bottom: var(--ic-space-md);\n }\n\n :host(.ic-hero-small),\n :host(.ic-hero-small) .section-container {\n min-height: 10.813rem;\n }\n\n :host(.secondary-heading),\n :host(.secondary-heading) .section-container {\n min-height: 16.5rem;\n }\n\n :host(.secondary-heading) .section-container,\n :host(.ic-hero-small) .section-container,\n .section-container {\n flex-direction: column;\n align-items: flex-start;\n }\n\n .left-container {\n height: fit-content;\n }\n\n .secondary-container {\n height: fit-content;\n border: none;\n }\n}\n","import {\n Component,\n Element,\n Host,\n Prop,\n h,\n State,\n Listen,\n} from \"@stencil/core\";\nimport {\n IcAlignment,\n IcSizesNoLarge,\n IcBrand,\n IcBrandForeground,\n IcBrandForegroundEnum,\n IcThemeMode,\n} from \"../../utils/types\";\nimport {\n slotHasContent,\n getBrandForegroundAppearance,\n onComponentRequiredPropUndefined,\n isPropDefined,\n isSlotUsed,\n renderDynamicChildSlots,\n} from \"../../utils/helpers\";\nimport { IcHeroContentAlignments } from \"./ic-hero.types\";\n\n/**\n * @slot heading - Content will be rendered in the title area, in place of the heading.\n * @slot subheading - Content will be rendered in the title area, in place of the subheading.\n * @slot interaction - Content will be rendered in the interaction area, adjacent to the title area.\n * @slot secondary - Content will be rendered in the secondary content area.\n */\n\n@Component({\n tag: \"ic-hero\",\n styleUrl: \"ic-hero.css\",\n shadow: true,\n})\nexport class Hero {\n private hostMutationObserver: MutationObserver | null = null;\n\n @Element() el: HTMLIcHeroElement;\n\n @State() foregroundColor: IcBrandForeground = getBrandForegroundAppearance();\n @State() rightContent: boolean = false;\n // set by above state\n @State() leftContentFullWidth: boolean =\n !this.rightContent && this.secondaryHeading === undefined;\n @State() scrollFactor: string = \"right -100px\";\n\n /**\n * The alignment of the hero.\n */\n @Prop() aligned?: IcAlignment = \"left\";\n\n /**\n * The optional background image.\n */\n @Prop() backgroundImage?: string;\n\n /**\n * The alignment of the hero content.\n */\n @Prop() contentAligned?: IcHeroContentAlignments = \"left\";\n\n /**\n * If `true`, the background image (if set) will not scroll using a parallax effect.\n */\n @Prop() disableBackgroundParallax?: boolean = false;\n\n /**\n * The heading of the hero. An <h2> level heading.\n */\n @Prop() heading?: string;\n\n /**\n * The optional secondary heading, an <h3> level heading. Replaced by slotted right content.\n */\n @Prop() secondaryHeading?: string;\n\n /**\n * The optional secondary subheading, replaced by slotted right content.\n */\n @Prop() secondarySubheading?: string;\n\n /**\n * The size of the hero component.\n */\n @Prop() size?: IcSizesNoLarge = \"medium\";\n\n /**\n * The description for the hero.\n */\n @Prop() subheading?: 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 disconnectedCallback(): void {\n this.hostMutationObserver?.disconnect();\n }\n\n componentWillLoad(): void {\n this.rightContent = slotHasContent(this.el, \"secondary\");\n }\n\n componentDidLoad(): void {\n !isSlotUsed(this.el, \"heading\") &&\n onComponentRequiredPropUndefined(\n [{ prop: this.heading, propName: \"heading\" }],\n \"Hero\"\n );\n\n this.hostMutationObserver = new MutationObserver((mutationList) =>\n renderDynamicChildSlots(mutationList, \"secondary\", this)\n );\n this.hostMutationObserver.observe(this.el, {\n childList: true,\n });\n }\n\n componentWillRender(): void {\n this.rightContent = slotHasContent(this.el, \"secondary\");\n }\n\n @Listen(\"brandChange\", { target: \"document\" })\n brandChangeHandler(ev: CustomEvent<IcBrand>): void {\n this.foregroundColor = ev.detail.mode;\n }\n\n @Listen(\"scroll\", { target: \"document\" })\n doScroll(): void {\n if (this.disableBackgroundParallax) {\n return;\n }\n\n const scrolltotop = document.scrollingElement?.scrollTop;\n if (scrolltotop) {\n const factor = 0.4;\n const y = -100 + scrolltotop * factor;\n this.scrollFactor = \"right \" + y + \"px\";\n }\n }\n\n render() {\n const {\n aligned,\n size,\n heading,\n subheading,\n secondaryHeading,\n secondarySubheading,\n foregroundColor,\n backgroundImage,\n scrollFactor,\n contentAligned,\n theme,\n } = this;\n\n let style = {};\n\n if (isPropDefined(backgroundImage)) {\n style = {\n \"background-image\": \"url(\" + backgroundImage + \")\",\n \"background-position\": scrollFactor,\n };\n }\n\n return (\n <Host\n class={{\n [`ic-hero-${IcBrandForegroundEnum.Dark}`]:\n foregroundColor === IcBrandForegroundEnum.Dark,\n [\"has-background-image\"]: backgroundImage !== undefined,\n [\"has-right-content\"]: this.rightContent,\n [\"ic-hero-small\"]: size === \"small\",\n [\"secondary-heading\"]: !!secondaryHeading,\n [`ic-hero-content-aligned-${contentAligned}`]:\n contentAligned !== undefined,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n style={style}\n >\n <ic-section-container\n aligned={aligned}\n fullHeight\n class=\"section-container\"\n >\n <div\n class={{\n [\"left-container\"]: true,\n [\"left-container-full-width\"]: this.leftContentFullWidth,\n }}\n >\n <div class=\"heading\">\n <slot name=\"heading\">\n <ic-typography\n variant={size === \"small\" ? \"h2\" : \"h1\"}\n class={{\n [\"heading-bottom-spacing\"]: size !== \"small\",\n }}\n >\n <h2>{heading}</h2>\n </ic-typography>\n </slot>\n </div>\n <div class=\"subheading\">\n <slot name=\"subheading\">\n <ic-typography variant=\"body\">{subheading}</ic-typography>\n </slot>\n </div>\n <div class=\"interaction-container\">\n <slot name=\"interaction\"></slot>\n </div>\n </div>\n {(isPropDefined(secondaryHeading) || this.rightContent) && (\n <div class=\"right-container\">\n <slot name=\"secondary\">\n {secondaryHeading && (\n <div class=\"secondary-container\">\n <div class=\"secondary-heading\">\n <ic-typography variant=\"h4\">\n <h3>{secondaryHeading}</h3>\n </ic-typography>\n </div>\n <div class=\"secondary-subheading\">\n <ic-typography variant=\"subtitle-small\">\n {secondarySubheading}\n </ic-typography>\n </div>\n </div>\n )}\n </slot>\n </div>\n )}\n </ic-section-container>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -170,22 +170,22 @@ const HorizontalScroll = /*@__PURE__*/ proxyCustomElement(class HorizontalScroll
170
170
  }
171
171
  render() {
172
172
  const { firstItemVisible, lastItemVisible, itemOverflow } = this;
173
- return (h(Host, { key: '5f340f9d11d2ca42a17eacea2b9ce38b35614151', class: {
173
+ return (h(Host, { key: '5c313665e71e0abc91a19f204ccf08d7b017f46b', class: {
174
174
  ["ic-horizontal-scroll-visible"]: itemOverflow,
175
175
  ["ic-horizontal-scroll-dark"]: this.appearance === IcBrandForegroundEnum.Dark,
176
176
  ["ic-horizontal-scroll-light"]: this.appearance === IcBrandForegroundEnum.Light,
177
177
  [`ic-theme-${this.theme}`]: this.theme !== "inherit",
178
- } }, h("div", { key: '555d223168b83a595030b18c4d21874c1cf679bd', "aria-hidden": "true", class: {
178
+ } }, h("div", { key: '7a65d56af26a6bfe660c3e923beaf7b512f77de8', "aria-hidden": "true", class: {
179
179
  ["scroll-container-left"]: true,
180
180
  ["hidden"]: !itemOverflow,
181
181
  ["disabled"]: firstItemVisible,
182
- }, role: "tab" }, h("ic-button", { key: '9196738f3d7d2c48b9173af7b152828a00c56edd', class: "scroll-arrow", variant: "icon-tertiary", "aria-label": "Scroll left", theme: this.theme === "light" || this.theme === "inherit"
182
+ }, role: "tab" }, h("ic-button", { key: '0203d6acdde7444d03038b3ec86f3e318615030d', class: "scroll-arrow", variant: "icon-tertiary", "aria-label": "Scroll left", theme: this.theme === "light" || this.theme === "inherit"
183
183
  ? "dark"
184
- : "light", monochrome: this.monochrome, innerHTML: LeftArrow, disabled: firstItemVisible, tabindex: "-1", onClick: this.scrollLeft, onMouseDown: this.leftArrowMouseDownHandler }), h("span", { key: '89c1dc4017ec5a5ccd691c16c47957d35067d0b5', class: "scroll-splitter-left" })), h("slot", { key: 'bc45bafea5bad600701b74f097aae39c2e6b1e4d' }), h("div", { key: 'b961e7d153dccb0187f0aa8c02f73494f4233649', "aria-hidden": "true", class: {
184
+ : "light", monochrome: this.monochrome, innerHTML: LeftArrow, disabled: firstItemVisible, tabindex: "-1", onClick: this.scrollLeft, onMouseDown: this.leftArrowMouseDownHandler }), h("span", { key: 'dffb5fee1c17005205216d0901141317e2dc4aa6', class: "scroll-splitter-left" })), h("slot", { key: 'f637c15f3020e1572a61179c2132dece11d0699a' }), h("div", { key: 'c563d5ca6d07a66f2111bea5aebe7d36ae481770', "aria-hidden": "true", class: {
185
185
  ["scroll-container-right"]: true,
186
186
  ["hidden"]: !itemOverflow,
187
187
  ["disabled"]: lastItemVisible,
188
- }, role: "tab" }, h("span", { key: 'd0960807543d4513129f192ce975c7a0139a91a0', class: "scroll-splitter-right" }), h("ic-button", { key: '4844fbcec6360b939a67c3878e36f4b812685c22', class: "scroll-arrow", variant: "icon-tertiary", "aria-label": "Scroll right", theme: this.theme === "light" || this.theme === "inherit"
188
+ }, role: "tab" }, h("span", { key: 'd8afe9aaf2304d13909815aeb8e60ac4f8952f7f', class: "scroll-splitter-right" }), h("ic-button", { key: '4f3be747e736a50705793742b0a1e9fab44d56db', class: "scroll-arrow", variant: "icon-tertiary", "aria-label": "Scroll right", theme: this.theme === "light" || this.theme === "inherit"
189
189
  ? "dark"
190
190
  : "light", monochrome: this.monochrome, innerHTML: RightArrow, disabled: lastItemVisible, tabindex: "-1", onClick: this.scrollRight, onMouseDown: this.rightArrowMouseDownHandler }))));
191
191
  }
@@ -2,7 +2,7 @@ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal
2
2
  import { r as removeDisabledFalse, f as renderDynamicChildSlots, B as slotHasContent, A as IcInformationStatus } from './helpers.js';
3
3
  import { s as successIcon } from './constants.js';
4
4
 
5
- const icInputComponentContainerCss = "ic-input-component-container{display:flex;border:var(--ic-border-width) solid\n var(--border-color, var(--ic-architectural-400));border-radius:var(--ic-border-radius);transition:var(--ic-easing-transition-slow);height:2.5rem;min-height:2.5rem;width:var(--input-width, 20rem);padding:var(--ic-space-1px);background-color:var(--input-bg-color, var(--ic-color-background-primary));box-sizing:border-box;fill:var(--ic-architectural-400);outline:none}ic-input-component-container.ic-input-component-container-full-width{width:100%}ic-input-component-container.ic-input-component-container-disabled,ic-input-component-container.ic-input-component-container-disabled:hover{border:var(--ic-border-width) dashed\n var(--border-color-disabled, var(--ic-color-border-neutral-disabled))}ic-input-component-container.ic-input-component-container-readonly,ic-input-component-container.ic-input-component-container-small.ic-input-component-container-readonly,ic-input-component-container.ic-input-component-container-large.ic-input-component-container-readonly{height:auto;background:transparent}ic-input-component-container.ic-input-component-container-readonly,ic-input-component-container.ic-input-component-container-readonly:hover{border:none;padding:0}ic-input-component-container.ic-input-component-container-error{border:var(--ic-space-xxxs) solid\n var(--border-color-error, var(--ic-color-border-error));padding:0}ic-input-component-container.ic-input-component-container-error:hover{border:var(--ic-space-xxxs) solid\n var(--border-color-error-hover, var(--ic-color-border-error-hover))}ic-input-component-container.ic-input-component-container-error:focus-within{border:var(--ic-space-xxxs) solid\n var(--border-color-error-pressed, var(--ic-color-border-error-pressed))}ic-input-component-container.ic-input-component-container-warning{border:var(--ic-space-xxxs) solid\n var(--border-color-warning, var(--ic-color-border-warning));padding:0}ic-input-component-container.ic-input-component-container-warning:hover{border:var(--ic-space-xxxs) solid\n var(--border-color-warning-hover, var(--ic-color-border-warning-hover))}ic-input-component-container.ic-input-component-container-warning:focus-within{border:var(--ic-space-xxxs) solid\n var(--border-color-warning-pressed, var(--ic-color-border-warning-pressed))}ic-input-component-container.ic-input-component-container-success{border:var(--ic-space-xxxs) solid\n var(--border-color-success, var(--ic-color-border-success));padding:0}ic-input-component-container.ic-input-component-container-success:hover{border:var(--ic-space-xxxs) solid\n var(--border-color-success-hover, var(--ic-color-border-success-hover))}ic-input-component-container.ic-input-component-container-success:focus-within{border:var(--ic-space-xxxs) solid\n var(--border-color-success-pressed, var(--ic-color-border-success-pressed))}ic-input-component-container.ic-input-component-container-small{height:var(--ic-space-xl);min-height:var(--ic-space-xl)}ic-input-component-container.ic-input-component-container-large{height:var(--ic-space-xxl);min-height:var(--ic-space-xxl)}ic-input-component-container.ic-input-component-container-multiline{height:auto}ic-input-component-container .icon-container{margin-top:var(--ic-space-xxs);margin-left:0.438rem;display:flex;align-items:center}ic-input-component-container.ic-input-component-container-multiline .icon-container,ic-input-component-container.ic-input-component-container-multiline.ic-input-component-container-small .icon-container{margin-top:0.375rem;display:block}ic-input-component-container.ic-input-component-container-readonly .icon-container{margin-left:-0.313rem}ic-input-component-container.ic-input-component-container-disabled ::-moz-placeholder{display:none}ic-input-component-container.ic-input-component-container-disabled ::placeholder{display:none}ic-input-component-container .inline-success{margin:var(--ic-space-xs) 0.375rem;display:flex;align-items:center}ic-input-component-container .inline-success>svg{fill:var(--ic-input-component-container-success-icon-inline-color);height:1.25rem;width:1.25rem}ic-input-component-container:hover{border:var(--ic-input-component-container-hover-border);border-color:var(--border-color-hover, var(--ic-color-border-neutral-hover));color:var(--ic-action-monochrome-hover-dark)}ic-input-component-container:focus{border:var(--ic-border-pressed);border-color:var(\n --border-color-pressed,\n var(--ic-color-border-neutral-pressed)\n )}.focus-indicator{display:flex;width:100%;margin:-0.125rem;padding:0.125rem;border-radius:var(--ic-border-radius);transition:var(--ic-easing-transition-fast)}.focus-indicator:focus-within,.focus-indicator-enabled{box-shadow:var(--ic-border-focus)}.focus-indicator.ic-input-component-container-dark:focus-within{box-shadow:var(--ic-border-focus)}@media (forced-colors: active){ic-input-component-container,.focus-indicator{transition:none}ic-input-component-container:focus-within{border:var(--ic-border-width) solid Highlight;outline:0.125rem solid Highlight}ic-input-component-container.ic-input-component-container-disabled,ic-input-component-container.ic-input-component-container-disabled:hover{border:var(--ic-border-width) dashed GrayText}}";
5
+ const icInputComponentContainerCss = "ic-input-component-container{display:flex;border:var(--ic-border-width) solid\n var(--border-color, var(--ic-architectural-400));border-radius:var(--ic-border-radius);transition:var(--ic-easing-transition-slow);height:2.5rem;min-height:2.5rem;width:var(--input-width, 20rem);padding:var(--ic-space-1px);background-color:var(--input-bg-color, var(--ic-color-background-primary));box-sizing:border-box;fill:var(--ic-architectural-400);outline:none}ic-input-component-container.ic-input-component-container-full-width{width:100%;max-width:none}ic-input-component-container.ic-input-component-container-disabled,ic-input-component-container.ic-input-component-container-disabled:hover{border:var(--ic-border-width) dashed\n var(--border-color-disabled, var(--ic-color-border-neutral-disabled))}ic-input-component-container.ic-input-component-container-readonly,ic-input-component-container.ic-input-component-container-small.ic-input-component-container-readonly,ic-input-component-container.ic-input-component-container-large.ic-input-component-container-readonly{height:auto;background:transparent}ic-input-component-container.ic-input-component-container-readonly,ic-input-component-container.ic-input-component-container-readonly:hover{border:none;padding:0}ic-input-component-container.ic-input-component-container-error{border:var(--ic-space-xxxs) solid\n var(--border-color-error, var(--ic-color-border-error));padding:0}ic-input-component-container.ic-input-component-container-error:hover{border:var(--ic-space-xxxs) solid\n var(--border-color-error-hover, var(--ic-color-border-error-hover))}ic-input-component-container.ic-input-component-container-error:focus-within{border:var(--ic-space-xxxs) solid\n var(--border-color-error-pressed, var(--ic-color-border-error-pressed))}ic-input-component-container.ic-input-component-container-warning{border:var(--ic-space-xxxs) solid\n var(--border-color-warning, var(--ic-color-border-warning));padding:0}ic-input-component-container.ic-input-component-container-warning:hover{border:var(--ic-space-xxxs) solid\n var(--border-color-warning-hover, var(--ic-color-border-warning-hover))}ic-input-component-container.ic-input-component-container-warning:focus-within{border:var(--ic-space-xxxs) solid\n var(--border-color-warning-pressed, var(--ic-color-border-warning-pressed))}ic-input-component-container.ic-input-component-container-success{border:var(--ic-space-xxxs) solid\n var(--border-color-success, var(--ic-color-border-success));padding:0}ic-input-component-container.ic-input-component-container-success:hover{border:var(--ic-space-xxxs) solid\n var(--border-color-success-hover, var(--ic-color-border-success-hover))}ic-input-component-container.ic-input-component-container-success:focus-within{border:var(--ic-space-xxxs) solid\n var(--border-color-success-pressed, var(--ic-color-border-success-pressed))}ic-input-component-container.ic-input-component-container-small{height:var(--ic-space-xl);min-height:var(--ic-space-xl)}ic-input-component-container.ic-input-component-container-large{height:var(--ic-space-xxl);min-height:var(--ic-space-xxl)}ic-input-component-container.ic-input-component-container-multiline{height:auto}ic-input-component-container .icon-container{margin-top:var(--ic-space-xxs);margin-left:0.438rem;display:flex;align-items:center}ic-input-component-container.ic-input-component-container-multiline .icon-container,ic-input-component-container.ic-input-component-container-multiline.ic-input-component-container-small .icon-container{margin-top:0.375rem;display:block}ic-input-component-container.ic-input-component-container-readonly .icon-container{margin-left:-0.313rem}ic-input-component-container.ic-input-component-container-disabled ::-moz-placeholder{display:none}ic-input-component-container.ic-input-component-container-disabled ::placeholder{display:none}ic-input-component-container .inline-success{margin:var(--ic-space-xs) 0.375rem;display:flex;align-items:center}ic-input-component-container .inline-success>svg{fill:var(--ic-input-component-container-success-icon-inline-color);height:1.25rem;width:1.25rem}ic-input-component-container:hover{border:var(--ic-input-component-container-hover-border);border-color:var(--border-color-hover, var(--ic-color-border-neutral-hover));color:var(--ic-action-monochrome-hover-dark)}ic-input-component-container:focus{border:var(--ic-border-pressed);border-color:var(\n --border-color-pressed,\n var(--ic-color-border-neutral-pressed)\n )}.focus-indicator{display:flex;width:100%;margin:-0.125rem;padding:0.125rem;border-radius:var(--ic-border-radius);transition:var(--ic-easing-transition-fast)}.focus-indicator:focus-within,.focus-indicator-enabled{box-shadow:var(--ic-border-focus)}.focus-indicator.ic-input-component-container-dark:focus-within{box-shadow:var(--ic-border-focus)}@media (forced-colors: active){ic-input-component-container,.focus-indicator{transition:none}ic-input-component-container:focus-within{border:var(--ic-border-width) solid Highlight;outline:0.125rem solid Highlight}ic-input-component-container.ic-input-component-container-disabled,ic-input-component-container.ic-input-component-container-disabled:hover{border:var(--ic-border-width) dashed GrayText}}@media screen AND (max-width: 22rem){ic-input-component-container{max-width:var(--input-width, 20rem);width:100%}}";
6
6
  const IcInputComponentContainerStyle0 = icInputComponentContainerCss;
7
7
 
8
8
  const InputComponentContainer = /*@__PURE__*/ proxyCustomElement(class InputComponentContainer extends HTMLElement {
@@ -50,15 +50,15 @@ const InputComponentContainer = /*@__PURE__*/ proxyCustomElement(class InputComp
50
50
  }
51
51
  render() {
52
52
  const { size, validationStatus, disabled, readonly, multiLine, fullWidth, validationInline, } = this;
53
- return (h(Host, { key: '20c111945d3fea6c2ec9ddcb70a0e5c74489fcd0', class: {
53
+ return (h(Host, { key: 'c33ebfd9dd18101fb9161259538e8e0046f77a3d', class: {
54
54
  [`ic-input-component-container-${size}`]: true,
55
55
  [`ic-input-component-container-${validationStatus}`]: validationStatus !== "" && !disabled && !readonly,
56
56
  "ic-input-component-container-disabled": !!disabled,
57
57
  "ic-input-component-container-readonly": !!readonly,
58
58
  "ic-input-component-container-multiline": !!multiLine,
59
59
  "ic-input-component-container-full-width": !!fullWidth,
60
- }, "aria-disabled": disabled ? "true" : null }, h("div", { key: '10974ddaa6b7e895645b50a73501ef8004036e8d', class: "focus-indicator" }, slotHasContent(this.el, "left-icon") && (h("div", { key: '29b14de6450c67f924e6820cc4ef74f20abad132', class: "icon-container" }, h("slot", { key: '9c35122ee4308cd2782cf405a80b4b986a4b3fe8', name: "left-icon" }))), h("slot", { key: '71782b3c047c6bc14d63bb2218fc825ee644ed12' }), validationInline &&
61
- validationStatus === IcInformationStatus.Success && (h("span", { key: 'e3ad09a64f224428e5a38127390751d86b5db914', class: "inline-success", innerHTML: successIcon })))));
60
+ }, "aria-disabled": disabled ? "true" : null }, h("div", { key: 'a70f27a3235ac0edb9d9c5a18983ae3c02de2a48', class: "focus-indicator" }, slotHasContent(this.el, "left-icon") && (h("div", { key: 'aa0b233280382bd0e95a8ff932bf60a63603b7bf', class: "icon-container" }, h("slot", { key: 'ceb8ec9b420073ac2ecd5d6793ad4342ab9ebbdd', name: "left-icon" }))), h("slot", { key: '1850c6ed04510e678600c653a36e2114f982e561' }), validationInline &&
61
+ validationStatus === IcInformationStatus.Success && (h("span", { key: '58d228c595577c1cc9a0fe2b10538cc3efff53ab', class: "inline-success", innerHTML: successIcon })))));
62
62
  }
63
63
  get el() { return this; }
64
64
  static get watchers() { return {
@@ -1 +1 @@
1
- {"file":"ic-input-component-container2.js","mappings":";;;;AAAA,MAAM,4BAA4B,GAAG,qoKAAqoK,CAAC;AAC3qK,wCAAe,4BAA4B;;MCoB9B,uBAAuB;IAJpC;;;;;;QAWU,aAAQ,GAAa,KAAK,CAAC;;;;QAS3B,cAAS,GAAa,KAAK,CAAC;;;;QAK5B,cAAS,GAAa,KAAK,CAAC;;;;QAK5B,aAAQ,GAAa,KAAK,CAAC;;;;QAK3B,SAAI,GAAa,QAAQ,CAAC;;;;QAK1B,qBAAgB,GAAa,KAAK,CAAC;;;;QAKnC,qBAAgB,GAAgC,EAAE,CAAC;KAqD5D;IArFC,oBAAoB;QAClB,mBAAmB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;KAC7C;IAgCD,iBAAiB;QACf,mBAAmB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;KAC7C;IAED,gBAAgB;QACd,IAAI,CAAC,oBAAoB,GAAG,IAAI,gBAAgB,CAAC,CAAC,YAAY,KAC5D,uBAAuB,CAAC,YAAY,EAAE,WAAW,EAAE,IAAI,CAAC,CACzD,CAAC;QACF,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;KACjE;IAED,MAAM;QACJ,MAAM,EACJ,IAAI,EACJ,gBAAgB,EAChB,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,SAAS,EACT,gBAAgB,GACjB,GAAG,IAAI,CAAC;QAET,QACE,EAAC,IAAI,qDACH,KAAK,EAAE;gBACL,CAAC,gCAAgC,IAAI,EAAE,GAAG,IAAI;gBAC9C,CAAC,gCAAgC,gBAAgB,EAAE,GACjD,gBAAgB,KAAK,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ;gBACnD,uCAAuC,EAAE,CAAC,CAAC,QAAQ;gBACnD,uCAAuC,EAAE,CAAC,CAAC,QAAQ;gBACnD,wCAAwC,EAAE,CAAC,CAAC,SAAS;gBACrD,yCAAyC,EAAE,CAAC,CAAC,SAAS;aACvD,mBACc,QAAQ,GAAG,MAAM,GAAG,IAAI,IAEvC,4DAAK,KAAK,EAAC,iBAAiB,IACzB,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,CAAC,KACnC,4DAAK,KAAK,EAAC,gBAAgB,IACzB,6DAAM,IAAI,EAAC,WAAW,GAAG,CACrB,CACP,EACD,8DAAa,EAEZ,gBAAgB;YACf,gBAAgB,KAAK,mBAAmB,CAAC,OAAO,KAC9C,6DAAM,KAAK,EAAC,gBAAgB,EAAC,SAAS,EAAE,WAAW,GAAI,CACxD,CACC,CACD,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/ic-input-component-container/ic-input-component-container.css?tag=ic-input-component-container","src/components/ic-input-component-container/ic-input-component-container.tsx"],"sourcesContent":["ic-input-component-container {\n /**\n * @prop --border-color: Border colour of the input component container\n * @prop --border-color-hover: Border colour of the input component container on hover\n * @prop --border-color-pressed: Border colour of the input component container when pressed\n * @prop --border-color-disabled: Border colour of the input component container when disabled\n * @prop --border-color-error: Border colour of the error variant for input component container\n * @prop --border-color-error-hover: Border colour of the error hover variant for input component container\n * @prop --border-color-error-pressed: Border colour of the error pressed variant for input component container\n * @prop --border-color-warning: Border colour of the warning variant for input component container\n * @prop --border-color-warning-hover: Border colour of the warning hover variant for input component container\n * @prop --border-color-warning-pressed: Border colour of the warning pressed variant for input component container\n * @prop --border-color-success: Border colour of the success variant for input component container\n * @prop --border-color-success-hover: Border colour of the success hover variant for input component container\n * @prop --border-color-success-pressed: Border colour of the success pressed variant for input component container\n */\n\n display: flex;\n border: var(--ic-border-width) solid\n var(--border-color, var(--ic-architectural-400));\n border-radius: var(--ic-border-radius);\n transition: var(--ic-easing-transition-slow);\n height: 2.5rem;\n min-height: 2.5rem;\n width: var(--input-width, 20rem);\n padding: var(--ic-space-1px);\n background-color: var(--input-bg-color, var(--ic-color-background-primary));\n box-sizing: border-box;\n fill: var(--ic-architectural-400);\n outline: none;\n}\n\nic-input-component-container.ic-input-component-container-full-width {\n width: 100%;\n}\n\nic-input-component-container.ic-input-component-container-disabled,\nic-input-component-container.ic-input-component-container-disabled:hover {\n border: var(--ic-border-width) dashed\n var(--border-color-disabled, var(--ic-color-border-neutral-disabled));\n}\n\nic-input-component-container.ic-input-component-container-readonly,\nic-input-component-container.ic-input-component-container-small.ic-input-component-container-readonly,\nic-input-component-container.ic-input-component-container-large.ic-input-component-container-readonly {\n height: auto;\n background: transparent;\n}\n\nic-input-component-container.ic-input-component-container-readonly,\nic-input-component-container.ic-input-component-container-readonly:hover {\n border: none;\n padding: 0;\n}\n\nic-input-component-container.ic-input-component-container-error {\n border: var(--ic-space-xxxs) solid\n var(--border-color-error, var(--ic-color-border-error));\n padding: 0;\n}\n\nic-input-component-container.ic-input-component-container-error:hover {\n border: var(--ic-space-xxxs) solid\n var(--border-color-error-hover, var(--ic-color-border-error-hover));\n}\n\nic-input-component-container.ic-input-component-container-error:focus-within {\n border: var(--ic-space-xxxs) solid\n var(--border-color-error-pressed, var(--ic-color-border-error-pressed));\n}\n\nic-input-component-container.ic-input-component-container-warning {\n border: var(--ic-space-xxxs) solid\n var(--border-color-warning, var(--ic-color-border-warning));\n padding: 0;\n}\n\nic-input-component-container.ic-input-component-container-warning:hover {\n border: var(--ic-space-xxxs) solid\n var(--border-color-warning-hover, var(--ic-color-border-warning-hover));\n}\n\nic-input-component-container.ic-input-component-container-warning:focus-within {\n border: var(--ic-space-xxxs) solid\n var(--border-color-warning-pressed, var(--ic-color-border-warning-pressed));\n}\n\nic-input-component-container.ic-input-component-container-success {\n border: var(--ic-space-xxxs) solid\n var(--border-color-success, var(--ic-color-border-success));\n padding: 0;\n}\n\nic-input-component-container.ic-input-component-container-success:hover {\n border: var(--ic-space-xxxs) solid\n var(--border-color-success-hover, var(--ic-color-border-success-hover));\n}\n\nic-input-component-container.ic-input-component-container-success:focus-within {\n border: var(--ic-space-xxxs) solid\n var(--border-color-success-pressed, var(--ic-color-border-success-pressed));\n}\n\nic-input-component-container.ic-input-component-container-small {\n height: var(--ic-space-xl);\n min-height: var(--ic-space-xl);\n}\n\nic-input-component-container.ic-input-component-container-large {\n height: var(--ic-space-xxl);\n min-height: var(--ic-space-xxl);\n}\n\nic-input-component-container.ic-input-component-container-multiline {\n height: auto;\n}\n\nic-input-component-container .icon-container {\n margin-top: var(--ic-space-xxs);\n margin-left: 0.438rem;\n display: flex;\n align-items: center;\n}\n\nic-input-component-container.ic-input-component-container-multiline\n .icon-container,\nic-input-component-container.ic-input-component-container-multiline.ic-input-component-container-small\n .icon-container {\n margin-top: 0.375rem;\n display: block;\n}\n\nic-input-component-container.ic-input-component-container-readonly\n .icon-container {\n margin-left: -0.313rem;\n}\n\nic-input-component-container.ic-input-component-container-disabled\n ::placeholder {\n display: none;\n}\n\nic-input-component-container .inline-success {\n margin: var(--ic-space-xs) 0.375rem;\n display: flex;\n align-items: center;\n}\n\nic-input-component-container .inline-success > svg {\n fill: var(--ic-input-component-container-success-icon-inline-color);\n height: 1.25rem;\n width: 1.25rem;\n}\n\nic-input-component-container:hover {\n border: var(--ic-input-component-container-hover-border);\n border-color: var(--border-color-hover, var(--ic-color-border-neutral-hover));\n color: var(--ic-action-monochrome-hover-dark);\n}\n\nic-input-component-container:focus {\n border: var(--ic-border-pressed);\n border-color: var(\n --border-color-pressed,\n var(--ic-color-border-neutral-pressed)\n );\n}\n\n.focus-indicator {\n display: flex;\n width: 100%;\n margin: -0.125rem;\n padding: 0.125rem;\n border-radius: var(--ic-border-radius);\n transition: var(--ic-easing-transition-fast);\n}\n\n.focus-indicator:focus-within,\n.focus-indicator-enabled {\n box-shadow: var(--ic-border-focus);\n}\n\n.focus-indicator.ic-input-component-container-dark:focus-within {\n box-shadow: var(--ic-border-focus);\n}\n\n@media (forced-colors: active) {\n /* Styles here only apply to Forced Colors Mode */\n ic-input-component-container,\n .focus-indicator {\n transition: none;\n }\n\n ic-input-component-container:focus-within {\n border: var(--ic-border-width) solid Highlight;\n outline: 0.125rem solid Highlight;\n }\n\n ic-input-component-container.ic-input-component-container-disabled,\n ic-input-component-container.ic-input-component-container-disabled:hover {\n border: var(--ic-border-width) dashed GrayText;\n }\n}\n","import { Component, Element, Host, Prop, Watch, h } from \"@stencil/core\";\n\nimport {\n IcInformationStatus,\n IcInformationStatusOrEmpty,\n IcSizes,\n} from \"../../utils/types\";\nimport successIcon from \"../../assets/success-icon.svg\";\nimport {\n removeDisabledFalse,\n renderDynamicChildSlots,\n slotHasContent,\n} from \"../../utils/helpers\";\n\n/**\n * @slot left-icon - Content will be placed to the left of the input.\n */\n@Component({\n tag: \"ic-input-component-container\",\n styleUrl: \"ic-input-component-container.css\",\n})\nexport class InputComponentContainer {\n private hostMutationObserver: MutationObserver;\n @Element() el: HTMLIcInputComponentContainerElement;\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled?: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * If `true`, the input component container will fill the width of the container it is in.\n */\n @Prop() fullWidth?: boolean = false;\n\n /**\n * If `true`, the input component container will allow for multiple lines.\n */\n @Prop() multiLine?: boolean = false;\n\n /**\n * If `true`, the readonly state will be set.\n */\n @Prop() readonly?: boolean = false;\n\n /**\n * The size of the input component container component.\n */\n @Prop() size?: IcSizes = \"medium\";\n\n /**\n * If `true`, the validation will display inline.\n */\n @Prop() validationInline?: boolean = false;\n\n /**\n * The validation status of the input component container - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationStatus?: IcInformationStatusOrEmpty = \"\";\n\n componentWillLoad(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n componentDidLoad(): void {\n this.hostMutationObserver = new MutationObserver((mutationList) =>\n renderDynamicChildSlots(mutationList, \"left-icon\", this)\n );\n this.hostMutationObserver.observe(this.el, { childList: true });\n }\n\n render() {\n const {\n size,\n validationStatus,\n disabled,\n readonly,\n multiLine,\n fullWidth,\n validationInline,\n } = this;\n\n return (\n <Host\n class={{\n [`ic-input-component-container-${size}`]: true,\n [`ic-input-component-container-${validationStatus}`]:\n validationStatus !== \"\" && !disabled && !readonly,\n \"ic-input-component-container-disabled\": !!disabled,\n \"ic-input-component-container-readonly\": !!readonly,\n \"ic-input-component-container-multiline\": !!multiLine,\n \"ic-input-component-container-full-width\": !!fullWidth,\n }}\n aria-disabled={disabled ? \"true\" : null}\n >\n <div class=\"focus-indicator\">\n {slotHasContent(this.el, \"left-icon\") && (\n <div class=\"icon-container\">\n <slot name=\"left-icon\" />\n </div>\n )}\n <slot></slot>\n\n {validationInline &&\n validationStatus === IcInformationStatus.Success && (\n <span class=\"inline-success\" innerHTML={successIcon} />\n )}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-input-component-container2.js","mappings":";;;;AAAA,MAAM,4BAA4B,GAAG,swKAAswK,CAAC;AAC5yK,wCAAe,4BAA4B;;MCoB9B,uBAAuB;IAJpC;;;;;;QAWU,aAAQ,GAAa,KAAK,CAAC;;;;QAS3B,cAAS,GAAa,KAAK,CAAC;;;;QAK5B,cAAS,GAAa,KAAK,CAAC;;;;QAK5B,aAAQ,GAAa,KAAK,CAAC;;;;QAK3B,SAAI,GAAa,QAAQ,CAAC;;;;QAK1B,qBAAgB,GAAa,KAAK,CAAC;;;;QAKnC,qBAAgB,GAAgC,EAAE,CAAC;KAqD5D;IArFC,oBAAoB;QAClB,mBAAmB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;KAC7C;IAgCD,iBAAiB;QACf,mBAAmB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;KAC7C;IAED,gBAAgB;QACd,IAAI,CAAC,oBAAoB,GAAG,IAAI,gBAAgB,CAAC,CAAC,YAAY,KAC5D,uBAAuB,CAAC,YAAY,EAAE,WAAW,EAAE,IAAI,CAAC,CACzD,CAAC;QACF,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;KACjE;IAED,MAAM;QACJ,MAAM,EACJ,IAAI,EACJ,gBAAgB,EAChB,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,SAAS,EACT,gBAAgB,GACjB,GAAG,IAAI,CAAC;QAET,QACE,EAAC,IAAI,qDACH,KAAK,EAAE;gBACL,CAAC,gCAAgC,IAAI,EAAE,GAAG,IAAI;gBAC9C,CAAC,gCAAgC,gBAAgB,EAAE,GACjD,gBAAgB,KAAK,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ;gBACnD,uCAAuC,EAAE,CAAC,CAAC,QAAQ;gBACnD,uCAAuC,EAAE,CAAC,CAAC,QAAQ;gBACnD,wCAAwC,EAAE,CAAC,CAAC,SAAS;gBACrD,yCAAyC,EAAE,CAAC,CAAC,SAAS;aACvD,mBACc,QAAQ,GAAG,MAAM,GAAG,IAAI,IAEvC,4DAAK,KAAK,EAAC,iBAAiB,IACzB,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,CAAC,KACnC,4DAAK,KAAK,EAAC,gBAAgB,IACzB,6DAAM,IAAI,EAAC,WAAW,GAAG,CACrB,CACP,EACD,8DAAa,EAEZ,gBAAgB;YACf,gBAAgB,KAAK,mBAAmB,CAAC,OAAO,KAC9C,6DAAM,KAAK,EAAC,gBAAgB,EAAC,SAAS,EAAE,WAAW,GAAI,CACxD,CACC,CACD,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/ic-input-component-container/ic-input-component-container.css?tag=ic-input-component-container","src/components/ic-input-component-container/ic-input-component-container.tsx"],"sourcesContent":["ic-input-component-container {\n /**\n * @prop --border-color: Border colour of the input component container\n * @prop --border-color-hover: Border colour of the input component container on hover\n * @prop --border-color-pressed: Border colour of the input component container when pressed\n * @prop --border-color-disabled: Border colour of the input component container when disabled\n * @prop --border-color-error: Border colour of the error variant for input component container\n * @prop --border-color-error-hover: Border colour of the error hover variant for input component container\n * @prop --border-color-error-pressed: Border colour of the error pressed variant for input component container\n * @prop --border-color-warning: Border colour of the warning variant for input component container\n * @prop --border-color-warning-hover: Border colour of the warning hover variant for input component container\n * @prop --border-color-warning-pressed: Border colour of the warning pressed variant for input component container\n * @prop --border-color-success: Border colour of the success variant for input component container\n * @prop --border-color-success-hover: Border colour of the success hover variant for input component container\n * @prop --border-color-success-pressed: Border colour of the success pressed variant for input component container\n */\n\n display: flex;\n border: var(--ic-border-width) solid\n var(--border-color, var(--ic-architectural-400));\n border-radius: var(--ic-border-radius);\n transition: var(--ic-easing-transition-slow);\n height: 2.5rem;\n min-height: 2.5rem;\n width: var(--input-width, 20rem);\n padding: var(--ic-space-1px);\n background-color: var(--input-bg-color, var(--ic-color-background-primary));\n box-sizing: border-box;\n fill: var(--ic-architectural-400);\n outline: none;\n}\n\nic-input-component-container.ic-input-component-container-full-width {\n width: 100%;\n max-width: none;\n}\n\nic-input-component-container.ic-input-component-container-disabled,\nic-input-component-container.ic-input-component-container-disabled:hover {\n border: var(--ic-border-width) dashed\n var(--border-color-disabled, var(--ic-color-border-neutral-disabled));\n}\n\nic-input-component-container.ic-input-component-container-readonly,\nic-input-component-container.ic-input-component-container-small.ic-input-component-container-readonly,\nic-input-component-container.ic-input-component-container-large.ic-input-component-container-readonly {\n height: auto;\n background: transparent;\n}\n\nic-input-component-container.ic-input-component-container-readonly,\nic-input-component-container.ic-input-component-container-readonly:hover {\n border: none;\n padding: 0;\n}\n\nic-input-component-container.ic-input-component-container-error {\n border: var(--ic-space-xxxs) solid\n var(--border-color-error, var(--ic-color-border-error));\n padding: 0;\n}\n\nic-input-component-container.ic-input-component-container-error:hover {\n border: var(--ic-space-xxxs) solid\n var(--border-color-error-hover, var(--ic-color-border-error-hover));\n}\n\nic-input-component-container.ic-input-component-container-error:focus-within {\n border: var(--ic-space-xxxs) solid\n var(--border-color-error-pressed, var(--ic-color-border-error-pressed));\n}\n\nic-input-component-container.ic-input-component-container-warning {\n border: var(--ic-space-xxxs) solid\n var(--border-color-warning, var(--ic-color-border-warning));\n padding: 0;\n}\n\nic-input-component-container.ic-input-component-container-warning:hover {\n border: var(--ic-space-xxxs) solid\n var(--border-color-warning-hover, var(--ic-color-border-warning-hover));\n}\n\nic-input-component-container.ic-input-component-container-warning:focus-within {\n border: var(--ic-space-xxxs) solid\n var(--border-color-warning-pressed, var(--ic-color-border-warning-pressed));\n}\n\nic-input-component-container.ic-input-component-container-success {\n border: var(--ic-space-xxxs) solid\n var(--border-color-success, var(--ic-color-border-success));\n padding: 0;\n}\n\nic-input-component-container.ic-input-component-container-success:hover {\n border: var(--ic-space-xxxs) solid\n var(--border-color-success-hover, var(--ic-color-border-success-hover));\n}\n\nic-input-component-container.ic-input-component-container-success:focus-within {\n border: var(--ic-space-xxxs) solid\n var(--border-color-success-pressed, var(--ic-color-border-success-pressed));\n}\n\nic-input-component-container.ic-input-component-container-small {\n height: var(--ic-space-xl);\n min-height: var(--ic-space-xl);\n}\n\nic-input-component-container.ic-input-component-container-large {\n height: var(--ic-space-xxl);\n min-height: var(--ic-space-xxl);\n}\n\nic-input-component-container.ic-input-component-container-multiline {\n height: auto;\n}\n\nic-input-component-container .icon-container {\n margin-top: var(--ic-space-xxs);\n margin-left: 0.438rem;\n display: flex;\n align-items: center;\n}\n\nic-input-component-container.ic-input-component-container-multiline\n .icon-container,\nic-input-component-container.ic-input-component-container-multiline.ic-input-component-container-small\n .icon-container {\n margin-top: 0.375rem;\n display: block;\n}\n\nic-input-component-container.ic-input-component-container-readonly\n .icon-container {\n margin-left: -0.313rem;\n}\n\nic-input-component-container.ic-input-component-container-disabled\n ::placeholder {\n display: none;\n}\n\nic-input-component-container .inline-success {\n margin: var(--ic-space-xs) 0.375rem;\n display: flex;\n align-items: center;\n}\n\nic-input-component-container .inline-success > svg {\n fill: var(--ic-input-component-container-success-icon-inline-color);\n height: 1.25rem;\n width: 1.25rem;\n}\n\nic-input-component-container:hover {\n border: var(--ic-input-component-container-hover-border);\n border-color: var(--border-color-hover, var(--ic-color-border-neutral-hover));\n color: var(--ic-action-monochrome-hover-dark);\n}\n\nic-input-component-container:focus {\n border: var(--ic-border-pressed);\n border-color: var(\n --border-color-pressed,\n var(--ic-color-border-neutral-pressed)\n );\n}\n\n.focus-indicator {\n display: flex;\n width: 100%;\n margin: -0.125rem;\n padding: 0.125rem;\n border-radius: var(--ic-border-radius);\n transition: var(--ic-easing-transition-fast);\n}\n\n.focus-indicator:focus-within,\n.focus-indicator-enabled {\n box-shadow: var(--ic-border-focus);\n}\n\n.focus-indicator.ic-input-component-container-dark:focus-within {\n box-shadow: var(--ic-border-focus);\n}\n\n@media (forced-colors: active) {\n /* Styles here only apply to Forced Colors Mode */\n ic-input-component-container,\n .focus-indicator {\n transition: none;\n }\n\n ic-input-component-container:focus-within {\n border: var(--ic-border-width) solid Highlight;\n outline: 0.125rem solid Highlight;\n }\n\n ic-input-component-container.ic-input-component-container-disabled,\n ic-input-component-container.ic-input-component-container-disabled:hover {\n border: var(--ic-border-width) dashed GrayText;\n }\n}\n\n/* Breakpoint value chosen as it's a small amount bigger than the input's default width */\n@media screen AND (max-width: 22rem) {\n ic-input-component-container {\n max-width: var(--input-width, 20rem);\n width: 100%;\n }\n}\n","import { Component, Element, Host, Prop, Watch, h } from \"@stencil/core\";\n\nimport {\n IcInformationStatus,\n IcInformationStatusOrEmpty,\n IcSizes,\n} from \"../../utils/types\";\nimport successIcon from \"../../assets/success-icon.svg\";\nimport {\n removeDisabledFalse,\n renderDynamicChildSlots,\n slotHasContent,\n} from \"../../utils/helpers\";\n\n/**\n * @slot left-icon - Content will be placed to the left of the input.\n */\n@Component({\n tag: \"ic-input-component-container\",\n styleUrl: \"ic-input-component-container.css\",\n})\nexport class InputComponentContainer {\n private hostMutationObserver: MutationObserver;\n @Element() el: HTMLIcInputComponentContainerElement;\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled?: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * If `true`, the input component container will fill the width of the container it is in.\n */\n @Prop() fullWidth?: boolean = false;\n\n /**\n * If `true`, the input component container will allow for multiple lines.\n */\n @Prop() multiLine?: boolean = false;\n\n /**\n * If `true`, the readonly state will be set.\n */\n @Prop() readonly?: boolean = false;\n\n /**\n * The size of the input component container component.\n */\n @Prop() size?: IcSizes = \"medium\";\n\n /**\n * If `true`, the validation will display inline.\n */\n @Prop() validationInline?: boolean = false;\n\n /**\n * The validation status of the input component container - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationStatus?: IcInformationStatusOrEmpty = \"\";\n\n componentWillLoad(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n componentDidLoad(): void {\n this.hostMutationObserver = new MutationObserver((mutationList) =>\n renderDynamicChildSlots(mutationList, \"left-icon\", this)\n );\n this.hostMutationObserver.observe(this.el, { childList: true });\n }\n\n render() {\n const {\n size,\n validationStatus,\n disabled,\n readonly,\n multiLine,\n fullWidth,\n validationInline,\n } = this;\n\n return (\n <Host\n class={{\n [`ic-input-component-container-${size}`]: true,\n [`ic-input-component-container-${validationStatus}`]:\n validationStatus !== \"\" && !disabled && !readonly,\n \"ic-input-component-container-disabled\": !!disabled,\n \"ic-input-component-container-readonly\": !!readonly,\n \"ic-input-component-container-multiline\": !!multiLine,\n \"ic-input-component-container-full-width\": !!fullWidth,\n }}\n aria-disabled={disabled ? \"true\" : null}\n >\n <div class=\"focus-indicator\">\n {slotHasContent(this.el, \"left-icon\") && (\n <div class=\"icon-container\">\n <slot name=\"left-icon\" />\n </div>\n )}\n <slot></slot>\n\n {validationInline &&\n validationStatus === IcInformationStatus.Success && (\n <span class=\"inline-success\" innerHTML={successIcon} />\n )}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -17,11 +17,11 @@ const InputContainer = /*@__PURE__*/ proxyCustomElement(class InputContainer ext
17
17
  this.readonly = false;
18
18
  }
19
19
  render() {
20
- return (h(Host, { key: '25d076eaba3bd1c7e469a5a3c44b26990dfcb43c' }, h("div", { key: '77559c5ab0557c9d42eb30d4a6487962dc8d2462', class: {
20
+ return (h(Host, { key: '32ae22db5e182cc2c092c8f48e61d42a318284a0' }, h("div", { key: 'bae9ef74f7f92004ec99c387a213822315c505ba', class: {
21
21
  ["component-container"]: true,
22
22
  ["disabled"]: !!this.disabled,
23
23
  ["readonly"]: !!this.readonly,
24
- } }, h("slot", { key: '0b579f90ba6c9b7b5c515632b9e3f78a3a47c9a2' }))));
24
+ } }, h("slot", { key: 'acca571eaa0d8f19b0e3379d2592409aacf9dd95' }))));
25
25
  }
26
26
  static get style() { return IcInputContainerStyle0; }
27
27
  }, [4, "ic-input-container", {
@@ -70,11 +70,11 @@ const InputLabel = /*@__PURE__*/ proxyCustomElement(class InputLabel extends HTM
70
70
  "helpertext-readonly": readonly,
71
71
  };
72
72
  const helperTextSlot = this.el.querySelector("slot[name='helper-text']");
73
- return (h(Host, { key: '632235f5528b1ee7cbdc981b1fd8f83f81317ac5', class: {
73
+ return (h(Host, { key: 'da58fe3cac026661d1c624c69c56c6e64ff3c07a', class: {
74
74
  "ic-input-label-disabled": !!disabled,
75
75
  "ic-input-label-readonly": readonly,
76
76
  "with-helper": this.isHelperTextSlotUsed(helperTextSlot) || helperText !== "",
77
- } }, !hideLabel && (h("ic-typography", { key: '4d5ffe88dcfd61697ac5c10bbfe72da69d6cd09e', variant: "label", class: {
77
+ } }, !hideLabel && (h("ic-typography", { key: 'bb221e5f51681a0caa721c66f03fd475e4e08749', variant: "label", class: {
78
78
  "readonly-label": readonly,
79
79
  "error-label": status === "error" && !(readonly || disabled),
80
80
  } }, readonly || !useLabelTag ? (`${labelText}`) : (h("label", { htmlFor: this.for }, labelText)))), this.isHelperTextSlotUsed(helperTextSlot) ? (h("span", { id: helperTextId, class: helperTextClass }, h("slot", { name: "helper-text" }))) : (helperText !== "" && (h("ic-typography", { variant: "caption", class: helperTextClass }, h("span", { id: helperTextId }, helperText))))));
@@ -3,7 +3,7 @@ import { o as onComponentRequiredPropUndefined, z as getInputValidationTextID, A
3
3
  import { w as warningIcon, g as errorIcon, s as successIcon } from './constants.js';
4
4
  import { d as defineCustomElement$1 } from './ic-typography2.js';
5
5
 
6
- const icInputValidationCss = "ic-input-validation{width:var(--input-width, 20rem);display:flex}ic-input-validation.ic-input-validation-with-status{margin-top:var(--ic-space-xs)}ic-input-validation.ic-input-validation-full-width{width:100%}ic-input-validation span.status-icon{padding-right:var(--ic-space-xxs)}ic-input-validation span.status-icon>svg{height:1.25rem;width:1.25rem}ic-input-validation span.icon-success>svg{fill:var(--ic-input-validation-success-icon-color)}ic-input-validation span.icon-error>svg{fill:var(--ic-input-validation-error, var(--ic-atoms-status-icon-error))}ic-input-validation span.icon-warning>svg{fill:var(--ic-input-validation-warning-icon-color)}ic-input-validation .statustext{flex-grow:1;color:var(\n --ic-input-validation-status-text-color,\n var(--ic-color-text-primary)\n );--ic-typography-color:var(\n --ic-input-validation-status-text-color,\n var(--ic-color-text-primary)\n )}ic-input-validation .sr-only{position:absolute;left:-9999px}";
6
+ const icInputValidationCss = "ic-input-validation{max-width:var(--input-width, 20rem);display:flex}ic-input-validation.ic-input-validation-with-status{margin-top:var(--ic-space-xs)}ic-input-validation.ic-input-validation-full-width{width:100%;max-width:none}ic-input-validation span.status-icon{padding-right:var(--ic-space-xxs)}ic-input-validation span.status-icon>svg{height:1.25rem;width:1.25rem}ic-input-validation span.icon-success>svg{fill:var(--ic-input-validation-success-icon-color)}ic-input-validation span.icon-error>svg{fill:var(--ic-input-validation-error, var(--ic-atoms-status-icon-error))}ic-input-validation span.icon-warning>svg{fill:var(--ic-input-validation-warning-icon-color)}ic-input-validation .statustext{flex-grow:1;color:var(\n --ic-input-validation-status-text-color,\n var(--ic-color-text-primary)\n );--ic-typography-color:var(\n --ic-input-validation-status-text-color,\n var(--ic-color-text-primary)\n )}ic-input-validation .sr-only{position:absolute;left:-9999px}";
7
7
  const IcInputValidationStyle0 = icInputValidationCss;
8
8
 
9
9
  const ICON = {
@@ -44,14 +44,14 @@ const InputValidation = /*@__PURE__*/ proxyCustomElement(class InputValidation e
44
44
  render() {
45
45
  const { ariaLiveMode, fullWidth, status, message } = this;
46
46
  const displayIcon = status !== "" ? ICON[status] : "";
47
- return (h(Host, { key: '71585fc1ea14fdb61bb1557d2da4df16b26cfc0d', class: {
47
+ return (h(Host, { key: '0513b4d21426f48a3751fbb4f16786d8cdde6f30', class: {
48
48
  [`ic-input-validation-${status}`]: status !== "",
49
49
  "ic-input-validation-full-width": !!fullWidth,
50
50
  "ic-input-validation-with-status": status !== "",
51
- } }, displayIcon !== "" && (h("span", { key: '4cbb1c03f511ea994a7ef9af769bd1040d9a4b26', class: {
51
+ } }, displayIcon !== "" && (h("span", { key: '3e6de247d788f9836f338e109d7be5914fa2f320', class: {
52
52
  "status-icon": true,
53
53
  [`icon-${status}`]: true,
54
- }, innerHTML: displayIcon })), h("ic-typography", { key: '89de4e97c599c21ab5d28fb5d2cad72af25d0142', variant: "caption", class: "statustext" }, h("span", { key: 'ea899c6c80ca2036ab6388f7814ea5022b9681b3', id: this.for && getInputValidationTextID(this.for) }, message), h("span", { key: 'f77fea85dda248f4e1b0d1cb4ee390926fe67116', ref: (el) => (this.messageEl = el), class: "sr-only", "aria-live": ariaLiveMode })), h("slot", { key: '39452a262baec0db33f97951762ddc6b1e33b26b', name: "validation-message-adornment" })));
54
+ }, innerHTML: displayIcon })), h("ic-typography", { key: '5ee4e673c1f2934d74eafbc08241cdfae1aa5f9f', variant: "caption", class: "statustext" }, h("span", { key: '850149ffb8c4cdab21ab0c05a8787747e399ca41', id: this.for && getInputValidationTextID(this.for) }, message), h("span", { key: 'a26f5aa58e81cf3e9d982d86b75b3ab7e14897ad', ref: (el) => (this.messageEl = el), class: "sr-only", "aria-live": ariaLiveMode })), h("slot", { key: '4dba13235c6ec27d634b0dd38523963798676b36', name: "validation-message-adornment" })));
55
55
  }
56
56
  get el() { return this; }
57
57
  static get watchers() { return {
@@ -1 +1 @@
1
- {"file":"ic-input-validation2.js","mappings":";;;;;AAAA,MAAM,oBAAoB,GAAG,m8BAAm8B,CAAC;AACj+B,gCAAe,oBAAoB;;ACenC,MAAM,IAAI,GAAG;IACX,CAAC,mBAAmB,CAAC,OAAO,GAAG,WAAW;IAC1C,CAAC,mBAAmB,CAAC,KAAK,GAAG,SAAS;IACtC,CAAC,mBAAmB,CAAC,OAAO,GAAG,WAAW;CAC3C,CAAC;AACF,MAAM,cAAc,GAAG,QAAQ,CAAC;MASnB,eAAe;IAJ5B;;;;;;QAYU,iBAAY,GAAgB,QAAQ,CAAC;;;;QAUrC,cAAS,GAAa,KAAK,CAAC;;;;QAmB5B,WAAM,GAAgC,EAAE,CAAC;KA6ClD;IAzDC,mBAAmB,CAAC,QAAgB;;;QAGlC,IAAI,CAAC,SAAS,CAAC,WAAW,GAAG,cAAc,CAAC;QAC5C,UAAU,CAAC;YACT,IAAI,CAAC,SAAS,CAAC,WAAW,GAAG,QAAQ,CAAC;SACvC,EAAE,GAAG,CAAC,CAAC;KACT;IAOD,gBAAgB;QACd,gCAAgC,CAC9B,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAC7C,kBAAkB,CACnB,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,WAAW,GAAG,cAAc,CAAC;KAC7C;IAED,MAAM;QACJ,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;QAC1D,MAAM,WAAW,GAAG,MAAM,KAAK,EAAE,GAAG,IAAI,CAAC,MAAO,CAAC,GAAG,EAAE,CAAC;QACvD,QACE,EAAC,IAAI,qDACH,KAAK,EAAE;gBACL,CAAC,uBAAuB,MAAM,EAAE,GAAG,MAAM,KAAK,EAAE;gBAChD,gCAAgC,EAAE,CAAC,CAAC,SAAS;gBAC7C,iCAAiC,EAAE,MAAM,KAAK,EAAE;aACjD,IAEA,WAAW,KAAK,EAAE,KACjB,6DACE,KAAK,EAAE;gBACL,aAAa,EAAE,IAAI;gBACnB,CAAC,QAAQ,MAAM,EAAE,GAAG,IAAI;aACzB,EACD,SAAS,EAAE,WAAW,GACtB,CACH,EACD,sEAAe,OAAO,EAAC,SAAS,EAAC,KAAK,EAAC,YAAY,IACjD,6DAAM,EAAE,EAAE,IAAI,CAAC,GAAG,IAAI,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,IACrD,OAAO,CACH,EAEP,6DACE,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,SAAS,GAAG,EAAqB,CAAC,EACrD,KAAK,EAAC,SAAS,eACJ,YAAY,GACjB,CACM,EAChB,6DAAM,IAAI,EAAC,8BAA8B,GAAQ,CAC5C,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/ic-input-validation/ic-input-validation.css?tag=ic-input-validation","src/components/ic-input-validation/ic-input-validation.tsx"],"sourcesContent":["ic-input-validation {\n width: var(--input-width, 20rem);\n display: flex;\n}\n\nic-input-validation.ic-input-validation-with-status {\n margin-top: var(--ic-space-xs);\n}\n\nic-input-validation.ic-input-validation-full-width {\n width: 100%;\n}\n\nic-input-validation span.status-icon {\n padding-right: var(--ic-space-xxs);\n}\n\nic-input-validation span.status-icon > svg {\n height: 1.25rem;\n width: 1.25rem;\n}\n\nic-input-validation span.icon-success > svg {\n fill: var(--ic-input-validation-success-icon-color);\n}\n\nic-input-validation span.icon-error > svg {\n fill: var(--ic-input-validation-error, var(--ic-atoms-status-icon-error));\n}\n\nic-input-validation span.icon-warning > svg {\n fill: var(--ic-input-validation-warning-icon-color);\n}\n\nic-input-validation .statustext {\n flex-grow: 1;\n color: var(\n --ic-input-validation-status-text-color,\n var(--ic-color-text-primary)\n );\n\n --ic-typography-color: var(\n --ic-input-validation-status-text-color,\n var(--ic-color-text-primary)\n );\n}\n\nic-input-validation .sr-only {\n position: absolute;\n left: -9999px;\n}\n","import { Element, Component, Host, Prop, h, Watch } from \"@stencil/core\";\n\nimport {\n IcAriaLive,\n IcInformationStatus,\n IcInformationStatusOrEmpty,\n} from \"../../utils/types\";\nimport errorIcon from \"../../assets/error-icon.svg\";\nimport successIcon from \"../../assets/success-icon.svg\";\nimport warningIcon from \"../../assets/warning-icon.svg\";\n\nimport {\n getInputValidationTextID,\n onComponentRequiredPropUndefined,\n} from \"../../utils/helpers\";\n\nconst ICON = {\n [IcInformationStatus.Warning]: warningIcon,\n [IcInformationStatus.Error]: errorIcon,\n [IcInformationStatus.Success]: successIcon,\n};\nconst INVISIBLE_CHAR = \"\\u200B\";\n\n/**\n * @slot validation-message-adornment - Content will be placed to the right of the validation message.\n */\n@Component({\n tag: \"ic-input-validation\",\n styleUrl: \"ic-input-validation.css\",\n})\nexport class InputValidation {\n private messageEl!: HTMLSpanElement;\n\n @Element() el: HTMLIcInputValidationElement;\n\n /**\n * The ARIA live mode to apply to the message.\n */\n @Prop() ariaLiveMode?: IcAriaLive = \"polite\";\n\n /**\n * The ID of the form element the validation is bound to.\n */\n @Prop() for?: string;\n\n /**\n * If `true`, the input validation will fill the width of the container.\n */\n @Prop() fullWidth?: boolean = false;\n\n /**\n * The validation message to display.\n */\n @Prop() message!: string;\n @Watch(\"message\")\n watchMessageHandler(newValue: string) {\n // Force detectable DOM changes\n // Invisible character used as screen readers can ignore whitespace changes e.g. \"\" and \" \"\n this.messageEl.textContent = INVISIBLE_CHAR;\n setTimeout(() => {\n this.messageEl.textContent = newValue;\n }, 200); // Delay to help ensure screen readers detect change\n }\n\n /**\n * The status of the validation - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() status?: IcInformationStatusOrEmpty = \"\";\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.message, propName: \"message\" }],\n \"Input Validation\"\n );\n this.messageEl.textContent = INVISIBLE_CHAR;\n }\n\n render() {\n const { ariaLiveMode, fullWidth, status, message } = this;\n const displayIcon = status !== \"\" ? ICON[status!] : \"\";\n return (\n <Host\n class={{\n [`ic-input-validation-${status}`]: status !== \"\",\n \"ic-input-validation-full-width\": !!fullWidth,\n \"ic-input-validation-with-status\": status !== \"\",\n }}\n >\n {displayIcon !== \"\" && (\n <span\n class={{\n \"status-icon\": true,\n [`icon-${status}`]: true,\n }}\n innerHTML={displayIcon}\n />\n )}\n <ic-typography variant=\"caption\" class=\"statustext\">\n <span id={this.for && getInputValidationTextID(this.for)}>\n {message}\n </span>\n {/* Separate aria-live region to avoid flashing due to textContent delay */}\n <span\n ref={(el) => (this.messageEl = el as HTMLSpanElement)}\n class=\"sr-only\"\n aria-live={ariaLiveMode}\n ></span>\n </ic-typography>\n <slot name=\"validation-message-adornment\"></slot>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-input-validation2.js","mappings":";;;;;AAAA,MAAM,oBAAoB,GAAG,s9BAAs9B,CAAC;AACp/B,gCAAe,oBAAoB;;ACenC,MAAM,IAAI,GAAG;IACX,CAAC,mBAAmB,CAAC,OAAO,GAAG,WAAW;IAC1C,CAAC,mBAAmB,CAAC,KAAK,GAAG,SAAS;IACtC,CAAC,mBAAmB,CAAC,OAAO,GAAG,WAAW;CAC3C,CAAC;AACF,MAAM,cAAc,GAAG,QAAQ,CAAC;MASnB,eAAe;IAJ5B;;;;;;QAYU,iBAAY,GAAgB,QAAQ,CAAC;;;;QAUrC,cAAS,GAAa,KAAK,CAAC;;;;QAmB5B,WAAM,GAAgC,EAAE,CAAC;KA6ClD;IAzDC,mBAAmB,CAAC,QAAgB;;;QAGlC,IAAI,CAAC,SAAS,CAAC,WAAW,GAAG,cAAc,CAAC;QAC5C,UAAU,CAAC;YACT,IAAI,CAAC,SAAS,CAAC,WAAW,GAAG,QAAQ,CAAC;SACvC,EAAE,GAAG,CAAC,CAAC;KACT;IAOD,gBAAgB;QACd,gCAAgC,CAC9B,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAC7C,kBAAkB,CACnB,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,WAAW,GAAG,cAAc,CAAC;KAC7C;IAED,MAAM;QACJ,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;QAC1D,MAAM,WAAW,GAAG,MAAM,KAAK,EAAE,GAAG,IAAI,CAAC,MAAO,CAAC,GAAG,EAAE,CAAC;QACvD,QACE,EAAC,IAAI,qDACH,KAAK,EAAE;gBACL,CAAC,uBAAuB,MAAM,EAAE,GAAG,MAAM,KAAK,EAAE;gBAChD,gCAAgC,EAAE,CAAC,CAAC,SAAS;gBAC7C,iCAAiC,EAAE,MAAM,KAAK,EAAE;aACjD,IAEA,WAAW,KAAK,EAAE,KACjB,6DACE,KAAK,EAAE;gBACL,aAAa,EAAE,IAAI;gBACnB,CAAC,QAAQ,MAAM,EAAE,GAAG,IAAI;aACzB,EACD,SAAS,EAAE,WAAW,GACtB,CACH,EACD,sEAAe,OAAO,EAAC,SAAS,EAAC,KAAK,EAAC,YAAY,IACjD,6DAAM,EAAE,EAAE,IAAI,CAAC,GAAG,IAAI,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,IACrD,OAAO,CACH,EAEP,6DACE,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,SAAS,GAAG,EAAqB,CAAC,EACrD,KAAK,EAAC,SAAS,eACJ,YAAY,GACjB,CACM,EAChB,6DAAM,IAAI,EAAC,8BAA8B,GAAQ,CAC5C,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/ic-input-validation/ic-input-validation.css?tag=ic-input-validation","src/components/ic-input-validation/ic-input-validation.tsx"],"sourcesContent":["ic-input-validation {\n max-width: var(--input-width, 20rem);\n display: flex;\n}\n\nic-input-validation.ic-input-validation-with-status {\n margin-top: var(--ic-space-xs);\n}\n\nic-input-validation.ic-input-validation-full-width {\n width: 100%;\n max-width: none;\n}\n\nic-input-validation span.status-icon {\n padding-right: var(--ic-space-xxs);\n}\n\nic-input-validation span.status-icon > svg {\n height: 1.25rem;\n width: 1.25rem;\n}\n\nic-input-validation span.icon-success > svg {\n fill: var(--ic-input-validation-success-icon-color);\n}\n\nic-input-validation span.icon-error > svg {\n fill: var(--ic-input-validation-error, var(--ic-atoms-status-icon-error));\n}\n\nic-input-validation span.icon-warning > svg {\n fill: var(--ic-input-validation-warning-icon-color);\n}\n\nic-input-validation .statustext {\n flex-grow: 1;\n color: var(\n --ic-input-validation-status-text-color,\n var(--ic-color-text-primary)\n );\n\n --ic-typography-color: var(\n --ic-input-validation-status-text-color,\n var(--ic-color-text-primary)\n );\n}\n\nic-input-validation .sr-only {\n position: absolute;\n left: -9999px;\n}\n","import { Element, Component, Host, Prop, h, Watch } from \"@stencil/core\";\n\nimport {\n IcAriaLive,\n IcInformationStatus,\n IcInformationStatusOrEmpty,\n} from \"../../utils/types\";\nimport errorIcon from \"../../assets/error-icon.svg\";\nimport successIcon from \"../../assets/success-icon.svg\";\nimport warningIcon from \"../../assets/warning-icon.svg\";\n\nimport {\n getInputValidationTextID,\n onComponentRequiredPropUndefined,\n} from \"../../utils/helpers\";\n\nconst ICON = {\n [IcInformationStatus.Warning]: warningIcon,\n [IcInformationStatus.Error]: errorIcon,\n [IcInformationStatus.Success]: successIcon,\n};\nconst INVISIBLE_CHAR = \"\\u200B\";\n\n/**\n * @slot validation-message-adornment - Content will be placed to the right of the validation message.\n */\n@Component({\n tag: \"ic-input-validation\",\n styleUrl: \"ic-input-validation.css\",\n})\nexport class InputValidation {\n private messageEl!: HTMLSpanElement;\n\n @Element() el: HTMLIcInputValidationElement;\n\n /**\n * The ARIA live mode to apply to the message.\n */\n @Prop() ariaLiveMode?: IcAriaLive = \"polite\";\n\n /**\n * The ID of the form element the validation is bound to.\n */\n @Prop() for?: string;\n\n /**\n * If `true`, the input validation will fill the width of the container.\n */\n @Prop() fullWidth?: boolean = false;\n\n /**\n * The validation message to display.\n */\n @Prop() message!: string;\n @Watch(\"message\")\n watchMessageHandler(newValue: string) {\n // Force detectable DOM changes\n // Invisible character used as screen readers can ignore whitespace changes e.g. \"\" and \" \"\n this.messageEl.textContent = INVISIBLE_CHAR;\n setTimeout(() => {\n this.messageEl.textContent = newValue;\n }, 200); // Delay to help ensure screen readers detect change\n }\n\n /**\n * The status of the validation - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() status?: IcInformationStatusOrEmpty = \"\";\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.message, propName: \"message\" }],\n \"Input Validation\"\n );\n this.messageEl.textContent = INVISIBLE_CHAR;\n }\n\n render() {\n const { ariaLiveMode, fullWidth, status, message } = this;\n const displayIcon = status !== \"\" ? ICON[status!] : \"\";\n return (\n <Host\n class={{\n [`ic-input-validation-${status}`]: status !== \"\",\n \"ic-input-validation-full-width\": !!fullWidth,\n \"ic-input-validation-with-status\": status !== \"\",\n }}\n >\n {displayIcon !== \"\" && (\n <span\n class={{\n \"status-icon\": true,\n [`icon-${status}`]: true,\n }}\n innerHTML={displayIcon}\n />\n )}\n <ic-typography variant=\"caption\" class=\"statustext\">\n <span id={this.for && getInputValidationTextID(this.for)}>\n {message}\n </span>\n {/* Separate aria-live region to avoid flashing due to textContent delay */}\n <span\n ref={(el) => (this.messageEl = el as HTMLSpanElement)}\n class=\"sr-only\"\n aria-live={ariaLiveMode}\n ></span>\n </ic-typography>\n <slot name=\"validation-message-adornment\"></slot>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -49,9 +49,9 @@ const LayoutGridItem = /*@__PURE__*/ proxyCustomElement(class LayoutGridItem ext
49
49
  }
50
50
  render() {
51
51
  const { hideInMobileMode } = this;
52
- return (h(Host, { key: 'bf040e1b3ddbd7f275a026008bf6f011fa440b1d', class: {
52
+ return (h(Host, { key: '9e96a528f70c414a5728a7fd0773d0adb4063020', class: {
53
53
  "ic-layout-grid-hide-in-mobile": !!hideInMobileMode,
54
- } }, h("slot", { key: '0833ce81285ee10fdfb943fe7d54d0e7db210313' })));
54
+ } }, h("slot", { key: '43b2b4891f8b1241fad2fb707016cd927632bdfd' })));
55
55
  }
56
56
  get el() { return this; }
57
57
  static get watchers() { return {
@@ -131,10 +131,10 @@ const LayoutGrid = /*@__PURE__*/ proxyCustomElement(class LayoutGrid extends HTM
131
131
  }
132
132
  render() {
133
133
  const { aligned, fullHeight } = this;
134
- return (h(Host, { key: '47ece5b026e7e3c97ed38bfe3bab840c1f19ab7c', class: {
134
+ return (h(Host, { key: 'fa862e7110426cb032982c8743b7ad3024f06f9a', class: {
135
135
  [`ic-layout-grid-aligned-${aligned}`]: true,
136
136
  ["ic-layout-grid-no-vertical-padding"]: !!fullHeight,
137
- } }, h("slot", { key: 'f60fbe3bcc6218cf7340513a1699c13b0db377a0' })));
137
+ } }, h("slot", { key: '716c4137c338797b4ce17c9dd946f8902064606f' })));
138
138
  }
139
139
  get el() { return this; }
140
140
  static get watchers() { return {
@@ -94,7 +94,7 @@ const Link = /*@__PURE__*/ proxyCustomElement(class Link extends HTMLElement {
94
94
  }
95
95
  render() {
96
96
  const { download, href, hreflang, referrerpolicy, rel, target, monochrome, theme, } = this;
97
- return (h(Host, { key: 'ca6343037bc5985cf5062b7797e71e0dd0184fb3', class: {
97
+ return (h(Host, { key: '1d3ba1effcfab3255ea567c475e2252bd17de507', class: {
98
98
  ["ic-link"]: true,
99
99
  [`ic-theme-${theme}`]: theme !== "inherit",
100
100
  ["ic-link-monochrome"]: !!monochrome,
@@ -187,24 +187,24 @@ const LoadingIndicator = /*@__PURE__*/ proxyCustomElement(class LoadingIndicator
187
187
  }
188
188
  render() {
189
189
  const { circularDiameter, circularDimensions: { x, y, r, dashArray, dashOffset }, description, fullWidth, indicatorLabel, innerLabel, label, max, min, monochrome, progress, size, theme, type, } = this;
190
- return (h(Host, { key: 'ed657c9728ede234f20352d0476dc84b751e3e32', class: {
190
+ return (h(Host, { key: '8f3a698fc177a9ff0c42efa2cb0d6fde7d09f2cb', class: {
191
191
  [`ic-theme-${theme}`]: theme !== "inherit",
192
192
  "ic-loading-indicator-full-width": fullWidth,
193
193
  "ic-loading-indicator-label": !!label,
194
194
  "ic-loading-indicator-monochrome": monochrome,
195
195
  [`ic-loading-indicator-size-${size}`]: true,
196
- } }, h("div", { key: '76182b425cf884804743cdcce8b57b04567f2bf0', class: "ic-loading-container", part: "ic-loading-container" }, h("div", { key: '50b89f6f39333960992a2e617f3be1081d4af9a0', ref: (el) => (this.outerElement = el), class: {
196
+ } }, h("div", { key: '947ed45a2a33bb3efc98be184d144c7022a99341', class: "ic-loading-container", part: "ic-loading-container" }, h("div", { key: '07cfd1daad6714aa3f0a9aa6639c62f07cd51319', ref: (el) => (this.outerElement = el), class: {
197
197
  [`ic-loading-${type}-outer`]: true,
198
198
  [progress === undefined ? "indeterminate" : "determinate"]: true,
199
- }, role: "progressbar", "aria-labelledby": label && size !== "icon" && "ic-loading-label", "aria-label": description, "aria-valuenow": progress, "aria-valuemin": min, "aria-valuemax": max }, h("div", { key: '8e674f38f70ddd761f0e5bfbb7c0fd5700d84b6b', ref: (el) => (this.innerElement = el), class: {
199
+ }, role: "progressbar", "aria-labelledby": label && size !== "icon" && "ic-loading-label", "aria-label": description, "aria-valuenow": progress, "aria-valuemin": min, "aria-valuemax": max }, h("div", { key: '784dc31419e98ce922fc71941f22a063c26ab249', ref: (el) => (this.innerElement = el), class: {
200
200
  [`ic-loading-${type}-inner`]: true,
201
201
  "inner-label": !!innerLabel,
202
- } }, innerLabel && size === "small" && (h("ic-typography", { key: '0d8108e18bf305dd1c64bf2723d0baf56bf29b6f', variant: "subtitle-small", class: "inner-text" }, innerLabel)), type === "circular" && (h("svg", { key: '3d6b240272997f3566a8e20960ac4e8cf5e738cb', class: "ic-loading-circular-svg", viewBox: `0 0 ${circularDiameter} ${circularDiameter}` }, h("circle", { key: '29d01b710d0b3de7fb492abde1dca5329fd6b4cb', cx: x, cy: y, r: r }), h("circle", { key: '65634f6777109c6105e56e548d930059146661ae', style: {
202
+ } }, innerLabel && size === "small" && (h("ic-typography", { key: '8f55830d3c41595cecfdfdb3630af8ad2b93fc1e', variant: "subtitle-small", class: "inner-text" }, innerLabel)), type === "circular" && (h("svg", { key: '5505faa38e257e69a988217685c9a466f622489b', class: "ic-loading-circular-svg", viewBox: `0 0 ${circularDiameter} ${circularDiameter}` }, h("circle", { key: 'c2f46bcb23d2af900f8b6dbfabb317172b3fdb22', cx: x, cy: y, r: r }), h("circle", { key: 'f0d9f105bda3e40c78cba1a3a2986b31ccc0327a', style: {
203
203
  "--circular-steps-max": progress ? `${max}` : undefined,
204
204
  "--progress-value": progress !== undefined ? `${progress}` : undefined,
205
205
  "--stroke-dasharray": dashArray,
206
206
  "--stroke-dashoffset": dashOffset,
207
- }, cx: x, cy: y, r: r }))))), label && size !== "icon" && (h("ic-typography", { key: 'dd7785fb84269e7f13e224f2e4d5cbcfd83f19ef', id: "ic-loading-label", class: "ic-loading-label", role: "alert", variant: this.getLabelVariant() }, h("p", { key: '2d82c7064ac921e025fe424bce3e7e024ccfbea0' }, indicatorLabel))))));
207
+ }, cx: x, cy: y, r: r }))))), label && size !== "icon" && (h("ic-typography", { key: '15d34b2712a2961d2e1b8a63ab6f65a82fa68d67', id: "ic-loading-label", class: "ic-loading-label", role: "alert", variant: this.getLabelVariant() }, h("p", { key: '25130595c4008fdd8acd8c47a6729d3aef5cf70c' }, indicatorLabel))))));
208
208
  }
209
209
  get el() { return this; }
210
210
  static get watchers() { return {