@ukic/canary-web-components 2.0.0-canary.18 → 2.0.0-canary.19

Sign up to get free protection for your applications and to get access to all the features.
Files changed (273) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/{helpers-4f5f087e.js → helpers-73d277d1.js} +6 -3
  3. package/dist/cjs/helpers-73d277d1.js.map +1 -0
  4. package/dist/cjs/ic-accordion-group.cjs.entry.js +13 -1
  5. package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
  6. package/dist/cjs/ic-accordion.cjs.entry.js +2 -2
  7. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ic-alert.cjs.entry.js +1 -1
  9. package/dist/cjs/ic-back-to-top.cjs.entry.js +1 -1
  10. package/dist/cjs/ic-badge.cjs.entry.js +1 -1
  11. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +18 -6
  12. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  13. package/dist/cjs/ic-breadcrumb.cjs.entry.js +1 -1
  14. package/dist/cjs/ic-button_3.cjs.entry.js +1 -1
  15. package/dist/cjs/ic-card.cjs.entry.js +1 -1
  16. package/dist/cjs/ic-checkbox-group.cjs.entry.js +1 -1
  17. package/dist/cjs/ic-checkbox.cjs.entry.js +1 -1
  18. package/dist/cjs/ic-chip.cjs.entry.js +1 -1
  19. package/dist/cjs/ic-data-row.cjs.entry.js +1 -1
  20. package/dist/cjs/ic-date-picker.cjs.entry.js +6 -3
  21. package/dist/cjs/ic-date-picker.cjs.entry.js.map +1 -1
  22. package/dist/cjs/ic-dialog.cjs.entry.js +1 -1
  23. package/dist/cjs/ic-divider.cjs.entry.js +1 -1
  24. package/dist/cjs/ic-empty-state_2.cjs.entry.js +1 -1
  25. package/dist/cjs/ic-footer-link-group.cjs.entry.js +1 -1
  26. package/dist/cjs/ic-footer-link.cjs.entry.js +1 -1
  27. package/dist/cjs/ic-footer.cjs.entry.js +1 -1
  28. package/dist/cjs/ic-hero.cjs.entry.js +1 -1
  29. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +1 -1
  30. package/dist/cjs/ic-input-component-container_4.cjs.entry.js +12 -1
  31. package/dist/cjs/ic-input-component-container_4.cjs.entry.js.map +1 -1
  32. package/dist/cjs/ic-link.cjs.entry.js +1 -1
  33. package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
  34. package/dist/cjs/ic-menu-item.cjs.entry.js +1 -1
  35. package/dist/cjs/ic-menu.cjs.entry.js +1 -1
  36. package/dist/cjs/ic-navigation-button.cjs.entry.js +1 -1
  37. package/dist/cjs/ic-navigation-group.cjs.entry.js +1 -1
  38. package/dist/cjs/ic-navigation-item.cjs.entry.js +1 -1
  39. package/dist/cjs/ic-navigation-menu.cjs.entry.js +1 -1
  40. package/dist/cjs/ic-page-header.cjs.entry.js +1 -1
  41. package/dist/cjs/ic-pagination_4.cjs.entry.js +43 -56
  42. package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
  43. package/dist/cjs/ic-popover-menu.cjs.entry.js +1 -1
  44. package/dist/cjs/ic-radio-group.cjs.entry.js +1 -1
  45. package/dist/cjs/ic-radio-option.cjs.entry.js +1 -1
  46. package/dist/cjs/ic-search-bar.cjs.entry.js +1 -1
  47. package/dist/cjs/ic-side-navigation.cjs.entry.js +1 -1
  48. package/dist/cjs/ic-status-tag.cjs.entry.js +1 -1
  49. package/dist/cjs/ic-step.cjs.entry.js +1 -1
  50. package/dist/cjs/ic-stepper.cjs.entry.js +1 -1
  51. package/dist/cjs/ic-switch.cjs.entry.js +1 -1
  52. package/dist/cjs/ic-tab-group.cjs.entry.js +1 -1
  53. package/dist/cjs/ic-tab-panel.cjs.entry.js +1 -1
  54. package/dist/cjs/ic-tab.cjs.entry.js +1 -1
  55. package/dist/cjs/ic-theme.cjs.entry.js +1 -1
  56. package/dist/cjs/ic-toast.cjs.entry.js +1 -1
  57. package/dist/cjs/ic-toggle-button.cjs.entry.js +1 -1
  58. package/dist/cjs/ic-top-navigation.cjs.entry.js +1 -1
  59. package/dist/cjs/ic-typography.cjs.entry.js +2 -2
  60. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  61. package/dist/cjs/loader.cjs.js +1 -1
  62. package/dist/collection/components/ic-date-picker/ic-date-picker.js +6 -3
  63. package/dist/collection/components/ic-date-picker/ic-date-picker.js.map +1 -1
  64. package/dist/components/helpers.js +5 -3
  65. package/dist/components/helpers.js.map +1 -1
  66. package/dist/components/ic-accordion-group.js +16 -1
  67. package/dist/components/ic-accordion-group.js.map +1 -1
  68. package/dist/components/ic-accordion.js +1 -1
  69. package/dist/components/ic-accordion.js.map +1 -1
  70. package/dist/components/ic-breadcrumb-group.js +20 -5
  71. package/dist/components/ic-breadcrumb-group.js.map +1 -1
  72. package/dist/components/ic-date-picker.js +6 -3
  73. package/dist/components/ic-date-picker.js.map +1 -1
  74. package/dist/components/ic-footer.js +1 -1
  75. package/dist/components/ic-horizontal-scroll2.js +1 -1
  76. package/dist/components/ic-input-component-container2.js +13 -2
  77. package/dist/components/ic-input-component-container2.js.map +1 -1
  78. package/dist/components/ic-navigation-group.js +1 -1
  79. package/dist/components/ic-navigation-item.js +1 -1
  80. package/dist/components/ic-navigation-menu2.js +1 -1
  81. package/dist/components/ic-pagination-item2.js +1 -1
  82. package/dist/components/ic-popover-menu.js +1 -1
  83. package/dist/components/ic-search-bar.js +1 -1
  84. package/dist/components/ic-select2.js +15 -4
  85. package/dist/components/ic-select2.js.map +1 -1
  86. package/dist/components/ic-side-navigation.js +1 -1
  87. package/dist/components/ic-stepper.js +1 -1
  88. package/dist/components/ic-text-field2.js +29 -53
  89. package/dist/components/ic-text-field2.js.map +1 -1
  90. package/dist/components/ic-theme.js +1 -1
  91. package/dist/components/ic-toast.js +1 -1
  92. package/dist/components/ic-top-navigation.js +1 -1
  93. package/dist/components/ic-typography2.js +1 -1
  94. package/dist/components/ic-typography2.js.map +1 -1
  95. package/dist/core/core.esm.js +1 -1
  96. package/dist/core/core.esm.js.map +1 -1
  97. package/dist/core/{p-87075008.entry.js → p-0629691b.entry.js} +2 -2
  98. package/dist/core/{p-4c92a3dd.entry.js → p-0970c8a1.entry.js} +2 -2
  99. package/dist/core/{p-c292fd86.entry.js → p-0a99994a.entry.js} +2 -2
  100. package/dist/core/{p-c5147498.entry.js → p-0ecde7a8.entry.js} +2 -2
  101. package/dist/core/{p-86e679ab.entry.js → p-12120521.entry.js} +2 -2
  102. package/dist/core/{p-1b4f852c.js → p-1440cdd1.js} +2 -2
  103. package/dist/core/p-1440cdd1.js.map +1 -0
  104. package/dist/core/{p-8a67e960.entry.js → p-1ba9cd3d.entry.js} +2 -2
  105. package/dist/core/{p-7c569c2d.entry.js → p-24f9f6d4.entry.js} +2 -2
  106. package/dist/core/{p-b7c644d1.entry.js → p-3245554e.entry.js} +2 -2
  107. package/dist/core/{p-4aac2373.entry.js → p-34cc7b3d.entry.js} +2 -2
  108. package/dist/core/{p-d4fed5f6.entry.js → p-34e72f79.entry.js} +2 -2
  109. package/dist/core/{p-e4e89a4d.entry.js → p-352b9c17.entry.js} +2 -2
  110. package/dist/core/{p-5fa17f98.entry.js → p-3eb33ef4.entry.js} +2 -2
  111. package/dist/core/{p-9c22b14f.entry.js → p-4670ebd3.entry.js} +2 -2
  112. package/dist/core/{p-1fb48c84.entry.js → p-47c91e08.entry.js} +2 -2
  113. package/dist/core/p-4ec1ce96.entry.js +2 -0
  114. package/dist/core/p-4ec1ce96.entry.js.map +1 -0
  115. package/dist/core/p-57c5ff2c.entry.js +2 -0
  116. package/dist/core/p-57c5ff2c.entry.js.map +1 -0
  117. package/dist/core/{p-d3a13342.entry.js → p-5c819adb.entry.js} +2 -2
  118. package/dist/core/{p-201ec29e.entry.js → p-5ed65e8f.entry.js} +2 -2
  119. package/dist/core/{p-8ccb23bd.entry.js → p-64ae50d3.entry.js} +2 -2
  120. package/dist/core/{p-a821c21f.entry.js → p-66bfe89d.entry.js} +2 -2
  121. package/dist/core/{p-90992051.entry.js → p-66c26240.entry.js} +2 -2
  122. package/dist/core/p-6c5c6aaf.entry.js +2 -0
  123. package/dist/core/p-6c5c6aaf.entry.js.map +1 -0
  124. package/dist/core/{p-8237cd57.entry.js → p-6eafa62e.entry.js} +2 -2
  125. package/dist/core/{p-52d5a3a5.entry.js → p-768fe0a9.entry.js} +2 -2
  126. package/dist/core/{p-d2d40668.entry.js → p-7e850bad.entry.js} +2 -2
  127. package/dist/core/{p-0e51d58e.entry.js → p-8100f45c.entry.js} +2 -2
  128. package/dist/core/{p-5447f2fd.entry.js → p-87868dd2.entry.js} +2 -2
  129. package/dist/core/{p-b3b834b3.entry.js → p-88e076fd.entry.js} +2 -2
  130. package/dist/core/{p-b3b834b3.entry.js.map → p-88e076fd.entry.js.map} +1 -1
  131. package/dist/core/{p-303dc008.entry.js → p-92a858f7.entry.js} +2 -2
  132. package/dist/core/{p-71ddb6d9.entry.js → p-94ce6f29.entry.js} +2 -2
  133. package/dist/core/{p-d08f4fa7.entry.js → p-9769c195.entry.js} +2 -2
  134. package/dist/core/{p-79fa2f57.entry.js → p-992b6161.entry.js} +2 -2
  135. package/dist/core/{p-11b243c9.entry.js → p-a5bb7bb0.entry.js} +2 -2
  136. package/dist/core/{p-f704629e.entry.js → p-af21360a.entry.js} +2 -2
  137. package/dist/core/{p-5201cd2b.entry.js → p-b7161816.entry.js} +2 -2
  138. package/dist/core/p-b8d3f121.entry.js +2 -0
  139. package/dist/core/p-b8d3f121.entry.js.map +1 -0
  140. package/dist/core/{p-5dfd9074.entry.js → p-cb7793b0.entry.js} +2 -2
  141. package/dist/core/{p-ba1c1804.entry.js → p-cd3c10f1.entry.js} +2 -2
  142. package/dist/core/p-cd3c10f1.entry.js.map +1 -0
  143. package/dist/core/{p-70d734d4.entry.js → p-d3e186a3.entry.js} +2 -2
  144. package/dist/core/{p-48c39d2a.entry.js → p-d67a5c90.entry.js} +2 -2
  145. package/dist/core/{p-1fff20ce.entry.js → p-d6b27926.entry.js} +2 -2
  146. package/dist/core/{p-7f6de032.entry.js → p-e1e04f34.entry.js} +2 -2
  147. package/dist/core/{p-fae5b518.entry.js → p-e2387530.entry.js} +2 -2
  148. package/dist/core/{p-3484b15b.entry.js → p-e32cce28.entry.js} +2 -2
  149. package/dist/core/{p-dd787b5b.entry.js → p-ebe9172b.entry.js} +2 -2
  150. package/dist/core/{p-dd787b5b.entry.js.map → p-ebe9172b.entry.js.map} +1 -1
  151. package/dist/core/{p-6996b750.entry.js → p-edf3411a.entry.js} +2 -2
  152. package/dist/core/{p-7fe37432.entry.js → p-eeae7272.entry.js} +2 -2
  153. package/dist/core/{p-185e91f0.entry.js → p-ef996e40.entry.js} +2 -2
  154. package/dist/core/{p-1a45f961.entry.js → p-f04af6fd.entry.js} +2 -2
  155. package/dist/core/{p-dbbce628.entry.js → p-f847a970.entry.js} +2 -2
  156. package/dist/esm/core.js +1 -1
  157. package/dist/esm/{helpers-84d21612.js → helpers-4e2e4787.js} +6 -4
  158. package/dist/esm/helpers-4e2e4787.js.map +1 -0
  159. package/dist/esm/ic-accordion-group.entry.js +13 -1
  160. package/dist/esm/ic-accordion-group.entry.js.map +1 -1
  161. package/dist/esm/ic-accordion.entry.js +2 -2
  162. package/dist/esm/ic-accordion.entry.js.map +1 -1
  163. package/dist/esm/ic-alert.entry.js +1 -1
  164. package/dist/esm/ic-back-to-top.entry.js +1 -1
  165. package/dist/esm/ic-badge.entry.js +1 -1
  166. package/dist/esm/ic-breadcrumb-group.entry.js +18 -6
  167. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  168. package/dist/esm/ic-breadcrumb.entry.js +1 -1
  169. package/dist/esm/ic-button_3.entry.js +1 -1
  170. package/dist/esm/ic-card.entry.js +1 -1
  171. package/dist/esm/ic-checkbox-group.entry.js +1 -1
  172. package/dist/esm/ic-checkbox.entry.js +1 -1
  173. package/dist/esm/ic-chip.entry.js +1 -1
  174. package/dist/esm/ic-data-row.entry.js +1 -1
  175. package/dist/esm/ic-date-picker.entry.js +6 -3
  176. package/dist/esm/ic-date-picker.entry.js.map +1 -1
  177. package/dist/esm/ic-dialog.entry.js +1 -1
  178. package/dist/esm/ic-divider.entry.js +1 -1
  179. package/dist/esm/ic-empty-state_2.entry.js +1 -1
  180. package/dist/esm/ic-footer-link-group.entry.js +1 -1
  181. package/dist/esm/ic-footer-link.entry.js +1 -1
  182. package/dist/esm/ic-footer.entry.js +1 -1
  183. package/dist/esm/ic-hero.entry.js +1 -1
  184. package/dist/esm/ic-horizontal-scroll.entry.js +1 -1
  185. package/dist/esm/ic-input-component-container_4.entry.js +13 -2
  186. package/dist/esm/ic-input-component-container_4.entry.js.map +1 -1
  187. package/dist/esm/ic-link.entry.js +1 -1
  188. package/dist/esm/ic-menu-group.entry.js +1 -1
  189. package/dist/esm/ic-menu-item.entry.js +1 -1
  190. package/dist/esm/ic-menu.entry.js +1 -1
  191. package/dist/esm/ic-navigation-button.entry.js +1 -1
  192. package/dist/esm/ic-navigation-group.entry.js +1 -1
  193. package/dist/esm/ic-navigation-item.entry.js +1 -1
  194. package/dist/esm/ic-navigation-menu.entry.js +1 -1
  195. package/dist/esm/ic-page-header.entry.js +1 -1
  196. package/dist/esm/ic-pagination_4.entry.js +43 -56
  197. package/dist/esm/ic-pagination_4.entry.js.map +1 -1
  198. package/dist/esm/ic-popover-menu.entry.js +1 -1
  199. package/dist/esm/ic-radio-group.entry.js +1 -1
  200. package/dist/esm/ic-radio-option.entry.js +1 -1
  201. package/dist/esm/ic-search-bar.entry.js +1 -1
  202. package/dist/esm/ic-side-navigation.entry.js +1 -1
  203. package/dist/esm/ic-status-tag.entry.js +1 -1
  204. package/dist/esm/ic-step.entry.js +1 -1
  205. package/dist/esm/ic-stepper.entry.js +1 -1
  206. package/dist/esm/ic-switch.entry.js +1 -1
  207. package/dist/esm/ic-tab-group.entry.js +1 -1
  208. package/dist/esm/ic-tab-panel.entry.js +1 -1
  209. package/dist/esm/ic-tab.entry.js +1 -1
  210. package/dist/esm/ic-theme.entry.js +1 -1
  211. package/dist/esm/ic-toast.entry.js +1 -1
  212. package/dist/esm/ic-toggle-button.entry.js +1 -1
  213. package/dist/esm/ic-top-navigation.entry.js +1 -1
  214. package/dist/esm/ic-typography.entry.js +2 -2
  215. package/dist/esm/ic-typography.entry.js.map +1 -1
  216. package/dist/esm/loader.js +1 -1
  217. package/hydrate/index.js +95 -67
  218. package/package.json +3 -3
  219. package/dist/cjs/helpers-4f5f087e.js.map +0 -1
  220. package/dist/core/p-1b4f852c.js.map +0 -1
  221. package/dist/core/p-60494f69.entry.js +0 -2
  222. package/dist/core/p-60494f69.entry.js.map +0 -1
  223. package/dist/core/p-7114ae3b.entry.js +0 -2
  224. package/dist/core/p-7114ae3b.entry.js.map +0 -1
  225. package/dist/core/p-a1df23b4.entry.js +0 -2
  226. package/dist/core/p-a1df23b4.entry.js.map +0 -1
  227. package/dist/core/p-ba1c1804.entry.js.map +0 -1
  228. package/dist/core/p-e42b66d5.entry.js +0 -2
  229. package/dist/core/p-e42b66d5.entry.js.map +0 -1
  230. package/dist/esm/helpers-84d21612.js.map +0 -1
  231. /package/dist/core/{p-87075008.entry.js.map → p-0629691b.entry.js.map} +0 -0
  232. /package/dist/core/{p-4c92a3dd.entry.js.map → p-0970c8a1.entry.js.map} +0 -0
  233. /package/dist/core/{p-c292fd86.entry.js.map → p-0a99994a.entry.js.map} +0 -0
  234. /package/dist/core/{p-c5147498.entry.js.map → p-0ecde7a8.entry.js.map} +0 -0
  235. /package/dist/core/{p-86e679ab.entry.js.map → p-12120521.entry.js.map} +0 -0
  236. /package/dist/core/{p-8a67e960.entry.js.map → p-1ba9cd3d.entry.js.map} +0 -0
  237. /package/dist/core/{p-7c569c2d.entry.js.map → p-24f9f6d4.entry.js.map} +0 -0
  238. /package/dist/core/{p-b7c644d1.entry.js.map → p-3245554e.entry.js.map} +0 -0
  239. /package/dist/core/{p-4aac2373.entry.js.map → p-34cc7b3d.entry.js.map} +0 -0
  240. /package/dist/core/{p-d4fed5f6.entry.js.map → p-34e72f79.entry.js.map} +0 -0
  241. /package/dist/core/{p-e4e89a4d.entry.js.map → p-352b9c17.entry.js.map} +0 -0
  242. /package/dist/core/{p-5fa17f98.entry.js.map → p-3eb33ef4.entry.js.map} +0 -0
  243. /package/dist/core/{p-9c22b14f.entry.js.map → p-4670ebd3.entry.js.map} +0 -0
  244. /package/dist/core/{p-1fb48c84.entry.js.map → p-47c91e08.entry.js.map} +0 -0
  245. /package/dist/core/{p-d3a13342.entry.js.map → p-5c819adb.entry.js.map} +0 -0
  246. /package/dist/core/{p-201ec29e.entry.js.map → p-5ed65e8f.entry.js.map} +0 -0
  247. /package/dist/core/{p-8ccb23bd.entry.js.map → p-64ae50d3.entry.js.map} +0 -0
  248. /package/dist/core/{p-a821c21f.entry.js.map → p-66bfe89d.entry.js.map} +0 -0
  249. /package/dist/core/{p-90992051.entry.js.map → p-66c26240.entry.js.map} +0 -0
  250. /package/dist/core/{p-8237cd57.entry.js.map → p-6eafa62e.entry.js.map} +0 -0
  251. /package/dist/core/{p-52d5a3a5.entry.js.map → p-768fe0a9.entry.js.map} +0 -0
  252. /package/dist/core/{p-d2d40668.entry.js.map → p-7e850bad.entry.js.map} +0 -0
  253. /package/dist/core/{p-0e51d58e.entry.js.map → p-8100f45c.entry.js.map} +0 -0
  254. /package/dist/core/{p-5447f2fd.entry.js.map → p-87868dd2.entry.js.map} +0 -0
  255. /package/dist/core/{p-303dc008.entry.js.map → p-92a858f7.entry.js.map} +0 -0
  256. /package/dist/core/{p-71ddb6d9.entry.js.map → p-94ce6f29.entry.js.map} +0 -0
  257. /package/dist/core/{p-d08f4fa7.entry.js.map → p-9769c195.entry.js.map} +0 -0
  258. /package/dist/core/{p-79fa2f57.entry.js.map → p-992b6161.entry.js.map} +0 -0
  259. /package/dist/core/{p-11b243c9.entry.js.map → p-a5bb7bb0.entry.js.map} +0 -0
  260. /package/dist/core/{p-f704629e.entry.js.map → p-af21360a.entry.js.map} +0 -0
  261. /package/dist/core/{p-5201cd2b.entry.js.map → p-b7161816.entry.js.map} +0 -0
  262. /package/dist/core/{p-5dfd9074.entry.js.map → p-cb7793b0.entry.js.map} +0 -0
  263. /package/dist/core/{p-70d734d4.entry.js.map → p-d3e186a3.entry.js.map} +0 -0
  264. /package/dist/core/{p-48c39d2a.entry.js.map → p-d67a5c90.entry.js.map} +0 -0
  265. /package/dist/core/{p-1fff20ce.entry.js.map → p-d6b27926.entry.js.map} +0 -0
  266. /package/dist/core/{p-7f6de032.entry.js.map → p-e1e04f34.entry.js.map} +0 -0
  267. /package/dist/core/{p-fae5b518.entry.js.map → p-e2387530.entry.js.map} +0 -0
  268. /package/dist/core/{p-3484b15b.entry.js.map → p-e32cce28.entry.js.map} +0 -0
  269. /package/dist/core/{p-6996b750.entry.js.map → p-edf3411a.entry.js.map} +0 -0
  270. /package/dist/core/{p-7fe37432.entry.js.map → p-eeae7272.entry.js.map} +0 -0
  271. /package/dist/core/{p-185e91f0.entry.js.map → p-ef996e40.entry.js.map} +0 -0
  272. /package/dist/core/{p-1a45f961.entry.js.map → p-f04af6fd.entry.js.map} +0 -0
  273. /package/dist/core/{p-dbbce628.entry.js.map → p-f847a970.entry.js.map} +0 -0
package/hydrate/index.js CHANGED
@@ -8066,8 +8066,10 @@ const convertToRGBA = (color) => {
8066
8066
  ? rgbaStrToObj(color)
8067
8067
  : null;
8068
8068
  };
8069
- const capitalize$1 = (text) => {
8070
- return text.charAt(0).toUpperCase() + text.slice(1);
8069
+ const capitalize$1 = (text) => text.charAt(0).toUpperCase() + text.slice(1);
8070
+ const checkSlotInChildMutations = (addedNodes, removedNodes, slotName) => {
8071
+ const hasSlot = (nodeList) => Array.from(nodeList).some((node) => node.slot === slotName);
8072
+ return hasSlot(addedNodes) || hasSlot(removedNodes);
8071
8073
  };
8072
8074
 
8073
8075
  var chevronIcon = `<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
@@ -8177,7 +8179,7 @@ class Accordion {
8177
8179
  ["content-expanded-chevron"]: expanded && !disabled,
8178
8180
  }, "aria-hidden": "true", innerHTML: chevronIcon })), hAsync("div", { class: {
8179
8181
  ["expanded-content"]: true,
8180
- }, "aria-labelledby": `${this.accordionId}-button`, role: "region", "aria-hidden": `${!expanded}`, id: "expanded-content-area", ref: (el) => (this.expandedContentEl = el) }, hAsync("div", { class: "expanded-content-inner" }, hAsync("slot", null)))));
8182
+ }, "aria-labelledby": `${this.accordionId}-button`, role: "region", "aria-hidden": `${!expanded}`, id: "expanded-content-area", ref: (el) => (this.expandedContentEl = el) }, hAsync("div", { class: "expanded-content-inner" }, this.message ? (hAsync("ic-typography", { variant: "body" }, this.message)) : (hAsync("slot", null))))));
8181
8183
  }
8182
8184
  get el() { return getElement(this); }
8183
8185
  static get watchers() { return {
@@ -8247,6 +8249,14 @@ class AccordionGroup {
8247
8249
  this.singleExpansion = false;
8248
8250
  this.size = "default";
8249
8251
  }
8252
+ watchAppearanceHandler() {
8253
+ this.accordions.forEach((acc) => {
8254
+ acc.appearance = this.appearance;
8255
+ });
8256
+ }
8257
+ watchExpandedHandler() {
8258
+ this.handleExpanded();
8259
+ }
8250
8260
  componentDidLoad() {
8251
8261
  const accordionDirectChildren = this.el.children;
8252
8262
  this.accordions = Array.from(accordionDirectChildren).filter((child) => child.tagName === "IC-ACCORDION");
@@ -8300,6 +8310,10 @@ class AccordionGroup {
8300
8310
  } }, hAsync("div", { class: "group-title-container" }, hAsync("ic-typography", { variant: "h4" }, hAsync("h3", null, isSlotUsed$1(this.el, "group-title") ? (hAsync("slot", { name: "group-title" })) : (groupTitle))), !singleExpansion && (hAsync("ic-button", { ref: (el) => (this.allButtonEl = el), appearance: appearance === "light" ? "light" : "default", onClick: this.handleExpanded, variant: "tertiary", "aria-label": `${this.accordionOpenBtnText()} ${accessibleButtonLabel}` }, this.accordionOpenBtnText()))), hAsync("slot", null)));
8301
8311
  }
8302
8312
  get el() { return getElement(this); }
8313
+ static get watchers() { return {
8314
+ "appearance": ["watchAppearanceHandler"],
8315
+ "expanded": ["watchExpandedHandler"]
8316
+ }; }
8303
8317
  static get style() { return icAccordionGroupCss; }
8304
8318
  static get cmpMeta() { return {
8305
8319
  "$flags$": 9,
@@ -8805,6 +8819,12 @@ class BreadcrumbGroup {
8805
8819
  this.IC_BREADCRUMB = "ic-breadcrumb";
8806
8820
  this.resizeObserver = null;
8807
8821
  this.SHOW_BACK_ICON = "show-back-icon";
8822
+ this.setAppearance = () => {
8823
+ const allBreadcrumbs = Array.from(this.el.querySelectorAll(this.IC_BREADCRUMB));
8824
+ allBreadcrumbs.forEach((breadcrumb) => {
8825
+ breadcrumb.setAttribute("appearance", this.appearance);
8826
+ });
8827
+ };
8808
8828
  this.setBackBreadcrumb = () => {
8809
8829
  if (this.backBreadcrumbOnly) {
8810
8830
  this.setBackBreadcrumbAttr();
@@ -8942,13 +8962,15 @@ class BreadcrumbGroup {
8942
8962
  this.backBreadcrumbOnly = false;
8943
8963
  this.collapsed = false;
8944
8964
  }
8965
+ watchAppearanceHandler() {
8966
+ this.setAppearance();
8967
+ }
8968
+ watchBackBreadcrumbHandler() {
8969
+ this.setBackBreadcrumb();
8970
+ }
8945
8971
  componentWillLoad() {
8946
8972
  const allBreadcrumbs = Array.from(this.el.querySelectorAll(this.IC_BREADCRUMB));
8947
- if (this.appearance !== "default") {
8948
- allBreadcrumbs.forEach((breadcrumb) => {
8949
- breadcrumb.setAttribute("appearance", this.appearance);
8950
- });
8951
- }
8973
+ this.setAppearance();
8952
8974
  if (this.backBreadcrumbOnly) {
8953
8975
  this.setBackBreadcrumb();
8954
8976
  }
@@ -8980,6 +9002,10 @@ class BreadcrumbGroup {
8980
9002
  } }, hAsync("nav", { "aria-label": "breadcrumbs" }, hAsync("ol", null, hAsync("slot", null)))));
8981
9003
  }
8982
9004
  get el() { return getElement(this); }
9005
+ static get watchers() { return {
9006
+ "appearance": ["watchAppearanceHandler"],
9007
+ "backBreadcrumbOnly": ["watchBackBreadcrumbHandler"]
9008
+ }; }
8983
9009
  static get style() { return icBreadcrumbGroupCss; }
8984
9010
  static get cmpMeta() { return {
8985
9011
  "$flags$": 9,
@@ -12286,13 +12312,16 @@ class DatePicker {
12286
12312
  };
12287
12313
  this.keyDownHandler = (event) => {
12288
12314
  if (event.key === "Escape") {
12289
- this.closeButtonClickHandler();
12290
- this.inputEl.setCalendarFocus();
12315
+ if (this.calendarOpen) {
12316
+ this.closeButtonClickHandler();
12317
+ this.inputEl.setCalendarFocus();
12318
+ event.stopImmediatePropagation();
12319
+ }
12291
12320
  }
12292
12321
  else {
12293
12322
  this.clearDialogDescription();
12323
+ event.stopImmediatePropagation();
12294
12324
  }
12295
- event.stopImmediatePropagation();
12296
12325
  };
12297
12326
  this.closeButtonClickHandler = () => {
12298
12327
  this.calendarOpen = false;
@@ -14235,6 +14264,11 @@ const icInputComponentContainerCss = "ic-input-component-container{display:flex;
14235
14264
  class InputComponentContainer {
14236
14265
  constructor(hostRef) {
14237
14266
  registerInstance(this, hostRef);
14267
+ this.hostMutationCallback = (mutationList) => {
14268
+ if (mutationList.some(({ type, addedNodes, removedNodes }) => type === "childList"
14269
+ ? checkSlotInChildMutations(addedNodes, removedNodes, "left-icon")
14270
+ : false)) ;
14271
+ };
14238
14272
  this.appearance = "default";
14239
14273
  this.dark = false;
14240
14274
  this.disabled = false;
@@ -14246,6 +14280,10 @@ class InputComponentContainer {
14246
14280
  this.validationInline = false;
14247
14281
  this.validationStatus = "";
14248
14282
  }
14283
+ componentDidLoad() {
14284
+ this.hostMutationObserver = new MutationObserver(this.hostMutationCallback);
14285
+ this.hostMutationObserver.observe(this.el, { childList: true });
14286
+ }
14249
14287
  render() {
14250
14288
  const { size, small, validationStatus, disabled, readonly, multiLine, fullWidth, dark, appearance, validationInline, } = this;
14251
14289
  const hasValidationStatus = this.validationStatus !== "" && !this.disabled && !this.readonly
@@ -22877,10 +22915,13 @@ var Clear$1 = `<svg width="16" height="16" viewBox="0 0 16 16" xmlns="http://www
22877
22915
  </svg>
22878
22916
  `;
22879
22917
 
22880
- const icSelectCss$1 = "/*!@html*/html.sc-ic-select{line-height:1.15;-webkit-text-size-adjust:100%}/*!@body*/body.sc-ic-select{margin:0}/*!@main*/main.sc-ic-select{display:block}/*!@h1*/h1.sc-ic-select{font-size:2em;margin:0.67em 0}/*!@hr*/hr.sc-ic-select{box-sizing:content-box;height:0;overflow:visible}/*!@pre*/pre.sc-ic-select{font-family:monospace, monospace;font-size:1em}/*!@a*/a.sc-ic-select{background-color:transparent}/*!@abbr[title]*/abbr[title].sc-ic-select{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}/*!@b,\nstrong*/b.sc-ic-select,strong.sc-ic-select{font-weight:bolder}/*!@code,\nkbd,\nsamp*/code.sc-ic-select,kbd.sc-ic-select,samp.sc-ic-select{font-family:monospace, monospace;font-size:1em}/*!@small*/small.sc-ic-select{font-size:80%}/*!@sub,\nsup*/sub.sc-ic-select,sup.sc-ic-select{font-size:75%;line-height:0;position:relative;vertical-align:baseline}/*!@sub*/sub.sc-ic-select{bottom:-0.25em}/*!@sup*/sup.sc-ic-select{top:-0.5em}/*!@img*/img.sc-ic-select{border-style:none}/*!@button,\ninput,\noptgroup,\nselect,\ntextarea*/button.sc-ic-select,input.sc-ic-select,optgroup.sc-ic-select,select.sc-ic-select,textarea.sc-ic-select{font-family:inherit;font-size:100%;line-height:1.15;margin:0}/*!@button,\ninput*/button.sc-ic-select,input.sc-ic-select{overflow:visible}/*!@button,\nselect*/button.sc-ic-select,select.sc-ic-select{text-transform:none}/*!@button,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"]*/button.sc-ic-select,[type=\"button\"].sc-ic-select,[type=\"reset\"].sc-ic-select,[type=\"submit\"].sc-ic-select{-webkit-appearance:button}/*!@button::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner*/button.sc-ic-select::-moz-focus-inner,[type=\"button\"].sc-ic-select::-moz-focus-inner,[type=\"reset\"].sc-ic-select::-moz-focus-inner,[type=\"submit\"].sc-ic-select::-moz-focus-inner{border-style:none;padding:0}/*!@button:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring*/button.sc-ic-select:-moz-focusring,[type=\"button\"].sc-ic-select:-moz-focusring,[type=\"reset\"].sc-ic-select:-moz-focusring,[type=\"submit\"].sc-ic-select:-moz-focusring{outline:1px dotted ButtonText}/*!@fieldset*/fieldset.sc-ic-select{padding:0.35em 0.75em 0.625em}/*!@legend*/legend.sc-ic-select{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}/*!@progress*/progress.sc-ic-select{vertical-align:baseline}/*!@textarea*/textarea.sc-ic-select{overflow:auto}/*!@[type=\"checkbox\"],\n[type=\"radio\"]*/[type=\"checkbox\"].sc-ic-select,[type=\"radio\"].sc-ic-select{box-sizing:border-box;padding:0}/*!@[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button*/[type=\"number\"].sc-ic-select::-webkit-inner-spin-button,[type=\"number\"].sc-ic-select::-webkit-outer-spin-button{height:auto}/*!@[type=\"search\"]*/[type=\"search\"].sc-ic-select{-webkit-appearance:textfield;outline-offset:-2px}/*!@[type=\"search\"]::-webkit-search-decoration*/[type=\"search\"].sc-ic-select::-webkit-search-decoration{-webkit-appearance:none}/*!@::-webkit-file-upload-button*/.sc-ic-select::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}/*!@details*/details.sc-ic-select{display:block}/*!@summary*/summary.sc-ic-select{display:list-item}/*!@template*/template.sc-ic-select{display:none}/*!@[hidden]*/[hidden].sc-ic-select{display:none}/*!@html,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nb,\nu,\ni,\ncenter,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo*/html.sc-ic-select,body.sc-ic-select,div.sc-ic-select,span.sc-ic-select,applet.sc-ic-select,object.sc-ic-select,iframe.sc-ic-select,h1.sc-ic-select,h2.sc-ic-select,h3.sc-ic-select,h4.sc-ic-select,h5.sc-ic-select,h6.sc-ic-select,p.sc-ic-select,blockquote.sc-ic-select,pre.sc-ic-select,a.sc-ic-select,abbr.sc-ic-select,acronym.sc-ic-select,address.sc-ic-select,big.sc-ic-select,cite.sc-ic-select,code.sc-ic-select,del.sc-ic-select,dfn.sc-ic-select,em.sc-ic-select,img.sc-ic-select,ins.sc-ic-select,kbd.sc-ic-select,q.sc-ic-select,s.sc-ic-select,samp.sc-ic-select,small.sc-ic-select,strike.sc-ic-select,strong.sc-ic-select,sub.sc-ic-select,sup.sc-ic-select,tt.sc-ic-select,var.sc-ic-select,b.sc-ic-select,u.sc-ic-select,i.sc-ic-select,center.sc-ic-select,dl.sc-ic-select,dt.sc-ic-select,dd.sc-ic-select,ol.sc-ic-select,ul.sc-ic-select,li.sc-ic-select,fieldset.sc-ic-select,form.sc-ic-select,label.sc-ic-select,legend.sc-ic-select,table.sc-ic-select,caption.sc-ic-select,tbody.sc-ic-select,tfoot.sc-ic-select,thead.sc-ic-select,tr.sc-ic-select,th.sc-ic-select,td.sc-ic-select,article.sc-ic-select,aside.sc-ic-select,canvas.sc-ic-select,details.sc-ic-select,embed.sc-ic-select,figure.sc-ic-select,figcaption.sc-ic-select,footer.sc-ic-select,header.sc-ic-select,hgroup.sc-ic-select,menu.sc-ic-select,nav.sc-ic-select,output.sc-ic-select,ruby.sc-ic-select,section.sc-ic-select,summary.sc-ic-select,time.sc-ic-select,mark.sc-ic-select,audio.sc-ic-select,video.sc-ic-select{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}/*!@:host*/.sc-ic-select-h{display:block;position:relative}/*!@:host(.full-width)*/.full-width.sc-ic-select-h{width:100%}/*!@ic-input-component-container:hover*/ic-input-component-container.sc-ic-select:hover{--border-color:var(--ic-action-dark-hover)}/*!@ic-input-component-container:active*/ic-input-component-container.sc-ic-select:active{--border-color:var(--ic-action-dark-active);color:var(--ic-action-dark-active)}/*!@ic-input-component-container.menu-open*/ic-input-component-container.menu-open.sc-ic-select{--border-color:var(--ic-architectural-400);color:var(--ic-action-dark)}/*!@ic-input-validation .status-icon,\nic-input-validation .statustext*/ic-input-validation.sc-ic-select .status-icon.sc-ic-select,ic-input-validation.sc-ic-select .statustext.sc-ic-select{visibility:visible}/*!@ic-input-validation.menu-open .status-icon,\nic-input-validation.menu-open .statustext*/ic-input-validation.menu-open.sc-ic-select .status-icon.sc-ic-select,ic-input-validation.menu-open.sc-ic-select .statustext.sc-ic-select{visibility:hidden;transition:visibility 0s}/*!@ic-input-label*/ic-input-label.sc-ic-select{margin-bottom:var(--ic-space-xs) !important}/*!@select*/select.sc-ic-select{border:0;border-radius:var(--ic-border-radius);background-color:var(--ic-architectural-white);color:var(--ic-color-primary-text);line-height:1.5rem;letter-spacing:0.005rem;width:100%;height:100%;padding-left:0.375rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-repeat:no-repeat;background-position:right 0.375rem center;background-image:url(\"data:image/svg+xml;utf8,<svg fill='black' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>\")}/*!@select option,\n.select-option-selected*/select.sc-ic-select option.sc-ic-select,.select-option-selected.sc-ic-select{color:var(--ic-color-primary-text)}/*!@select:disabled*/select.sc-ic-select:disabled{color:var(--ic-architectural-200);background-image:url(\"data:image/svg+xml;utf8,<svg fill='grey' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>\")}/*!@select:focus*/select.sc-ic-select:focus{border:0;outline:0}/*!@select:not([disabled])*/select.sc-ic-select:not([disabled]){cursor:pointer}/*!@.select-container*/.select-container.sc-ic-select{width:100%;display:flex;align-items:center;position:relative}/*!@.select-input*/.select-input.sc-ic-select{width:100%;height:100%;padding:0 0.375rem;display:flex;cursor:pointer;align-items:center;justify-content:space-between;background:none;border:none}/*!@.select-input:focus*/.select-input.sc-ic-select:focus{outline:var(--ic-hc-focus-outline)}/*!@:host(:not(.disabled)) ic-input-component-container:hover .select-input*/.sc-ic-select-h:not(.disabled) ic-input-component-container.sc-ic-select:hover .select-input.sc-ic-select{background-color:var(--ic-architectural-white)}/*!@.select-input[disabled]*/.select-input[disabled].sc-ic-select{pointer-events:none}/*!@:host(.searchable) .select-input*/.searchable.sc-ic-select-h .select-input.sc-ic-select{cursor:auto}/*!@.searchable-select-container*/.searchable-select-container.sc-ic-select{align-items:center;display:flex;width:100%;position:relative}/*!@.expand-icon*/.expand-icon.sc-ic-select{height:var(--ic-space-lg);padding-left:var(--ic-space-xs);color:var(--ic-action-dark)}/*!@.expand-icon > svg*/.expand-icon.sc-ic-select>svg.sc-ic-select{display:inline-block;width:var(--ic-space-lg);height:var(--ic-space-lg)}/*!@:host(.disabled) .expand-icon,\n:host(.disabled) .expand-icon > svg > path*/.disabled.sc-ic-select-h .expand-icon.sc-ic-select,.disabled.sc-ic-select-h .expand-icon.sc-ic-select>svg.sc-ic-select>path.sc-ic-select{color:var(--ic-architectural-200)}/*!@:host(.searchable) .expand-icon*/.searchable.sc-ic-select-h .expand-icon.sc-ic-select{padding-left:var(--ic-space-xxs);height:2.25rem}/*!@:host(.searchable) .expand-icon > svg*/.searchable.sc-ic-select-h .expand-icon.sc-ic-select>svg.sc-ic-select{height:2.25rem;padding:0 0.375rem}/*!@:host(.searchable:not(.disabled)) .expand-icon > svg*/.searchable.sc-ic-select-h:not(.disabled) .expand-icon.sc-ic-select>svg.sc-ic-select{cursor:pointer}/*!@.expand-icon-open*/.expand-icon-open.sc-ic-select{color:var(--ic-action-dark)}/*!@.expand-icon-filled*/.expand-icon-filled.sc-ic-select{color:var(--ic-action-dark)}/*!@.expand-icon-open,\n:host(.searchable) .expand-icon-open*/.expand-icon-open.sc-ic-select,.searchable.sc-ic-select-h .expand-icon-open.sc-ic-select{transform:rotateX(180deg)}/*!@:host(.disabled) .value-text,\n.placeholder*/.disabled.sc-ic-select-h .value-text.sc-ic-select,.placeholder.sc-ic-select{color:var(--ic-color-tertiary-text)}/*!@.select-input-end*/.select-input-end.sc-ic-select{display:flex;align-items:center}/*!@.clear-button-container*/.clear-button-container.sc-ic-select{display:flex;gap:var(--ic-space-xxs);padding-left:2.375rem;align-items:center}/*!@:host(.small) .clear-button-container*/.small.sc-ic-select-h .clear-button-container.sc-ic-select{padding-left:1.875rem}/*!@.divider*/.divider.sc-ic-select{width:var(--ic-border-width);background-color:var(--ic-architectural-400);margin:var(--ic-space-xxs) 0;border-radius:var(--ic-space-1px);height:var(--ic-space-lg)}/*!@:host(.small) .divider*/.small.sc-ic-select-h .divider.sc-ic-select{height:var(--ic-space-md)}/*!@.clear-button*/.clear-button.sc-ic-select{position:absolute;right:2.75rem;border-radius:var(--ic-border-radius);transition:box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition)}/*!@.clear-button:focus*/.clear-button.sc-ic-select:focus{background-color:var(--ic-focus-blue);box-shadow:inset 0 0 0 0.125rem var(--ic-focus-glow);border-radius:0.25rem}/*!@.clear-button:focus **/.clear-button.sc-ic-select:focus *.sc-ic-select{fill:white}/*!@.searchable-select-results-status*/.searchable-select-results-status.sc-ic-select{border:0;clip:rect(0, 0, 0, 0, 0);height:var(--ic-space-1px);overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:var(--ic-space-1px)}";
22918
+ const icSelectCss$1 = "/*!@html*/html.sc-ic-select{line-height:1.15;-webkit-text-size-adjust:100%}/*!@body*/body.sc-ic-select{margin:0}/*!@main*/main.sc-ic-select{display:block}/*!@h1*/h1.sc-ic-select{font-size:2em;margin:0.67em 0}/*!@hr*/hr.sc-ic-select{box-sizing:content-box;height:0;overflow:visible}/*!@pre*/pre.sc-ic-select{font-family:monospace, monospace;font-size:1em}/*!@a*/a.sc-ic-select{background-color:transparent}/*!@abbr[title]*/abbr[title].sc-ic-select{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}/*!@b,\nstrong*/b.sc-ic-select,strong.sc-ic-select{font-weight:bolder}/*!@code,\nkbd,\nsamp*/code.sc-ic-select,kbd.sc-ic-select,samp.sc-ic-select{font-family:monospace, monospace;font-size:1em}/*!@small*/small.sc-ic-select{font-size:80%}/*!@sub,\nsup*/sub.sc-ic-select,sup.sc-ic-select{font-size:75%;line-height:0;position:relative;vertical-align:baseline}/*!@sub*/sub.sc-ic-select{bottom:-0.25em}/*!@sup*/sup.sc-ic-select{top:-0.5em}/*!@img*/img.sc-ic-select{border-style:none}/*!@button,\ninput,\noptgroup,\nselect,\ntextarea*/button.sc-ic-select,input.sc-ic-select,optgroup.sc-ic-select,select.sc-ic-select,textarea.sc-ic-select{font-family:inherit;font-size:100%;line-height:1.15;margin:0}/*!@button,\ninput*/button.sc-ic-select,input.sc-ic-select{overflow:visible}/*!@button,\nselect*/button.sc-ic-select,select.sc-ic-select{text-transform:none}/*!@button,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"]*/button.sc-ic-select,[type=\"button\"].sc-ic-select,[type=\"reset\"].sc-ic-select,[type=\"submit\"].sc-ic-select{-webkit-appearance:button}/*!@button::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner*/button.sc-ic-select::-moz-focus-inner,[type=\"button\"].sc-ic-select::-moz-focus-inner,[type=\"reset\"].sc-ic-select::-moz-focus-inner,[type=\"submit\"].sc-ic-select::-moz-focus-inner{border-style:none;padding:0}/*!@button:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring*/button.sc-ic-select:-moz-focusring,[type=\"button\"].sc-ic-select:-moz-focusring,[type=\"reset\"].sc-ic-select:-moz-focusring,[type=\"submit\"].sc-ic-select:-moz-focusring{outline:1px dotted ButtonText}/*!@fieldset*/fieldset.sc-ic-select{padding:0.35em 0.75em 0.625em}/*!@legend*/legend.sc-ic-select{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}/*!@progress*/progress.sc-ic-select{vertical-align:baseline}/*!@textarea*/textarea.sc-ic-select{overflow:auto}/*!@[type=\"checkbox\"],\n[type=\"radio\"]*/[type=\"checkbox\"].sc-ic-select,[type=\"radio\"].sc-ic-select{box-sizing:border-box;padding:0}/*!@[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button*/[type=\"number\"].sc-ic-select::-webkit-inner-spin-button,[type=\"number\"].sc-ic-select::-webkit-outer-spin-button{height:auto}/*!@[type=\"search\"]*/[type=\"search\"].sc-ic-select{-webkit-appearance:textfield;outline-offset:-2px}/*!@[type=\"search\"]::-webkit-search-decoration*/[type=\"search\"].sc-ic-select::-webkit-search-decoration{-webkit-appearance:none}/*!@::-webkit-file-upload-button*/.sc-ic-select::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}/*!@details*/details.sc-ic-select{display:block}/*!@summary*/summary.sc-ic-select{display:list-item}/*!@template*/template.sc-ic-select{display:none}/*!@[hidden]*/[hidden].sc-ic-select{display:none}/*!@html,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nb,\nu,\ni,\ncenter,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo*/html.sc-ic-select,body.sc-ic-select,div.sc-ic-select,span.sc-ic-select,applet.sc-ic-select,object.sc-ic-select,iframe.sc-ic-select,h1.sc-ic-select,h2.sc-ic-select,h3.sc-ic-select,h4.sc-ic-select,h5.sc-ic-select,h6.sc-ic-select,p.sc-ic-select,blockquote.sc-ic-select,pre.sc-ic-select,a.sc-ic-select,abbr.sc-ic-select,acronym.sc-ic-select,address.sc-ic-select,big.sc-ic-select,cite.sc-ic-select,code.sc-ic-select,del.sc-ic-select,dfn.sc-ic-select,em.sc-ic-select,img.sc-ic-select,ins.sc-ic-select,kbd.sc-ic-select,q.sc-ic-select,s.sc-ic-select,samp.sc-ic-select,small.sc-ic-select,strike.sc-ic-select,strong.sc-ic-select,sub.sc-ic-select,sup.sc-ic-select,tt.sc-ic-select,var.sc-ic-select,b.sc-ic-select,u.sc-ic-select,i.sc-ic-select,center.sc-ic-select,dl.sc-ic-select,dt.sc-ic-select,dd.sc-ic-select,ol.sc-ic-select,ul.sc-ic-select,li.sc-ic-select,fieldset.sc-ic-select,form.sc-ic-select,label.sc-ic-select,legend.sc-ic-select,table.sc-ic-select,caption.sc-ic-select,tbody.sc-ic-select,tfoot.sc-ic-select,thead.sc-ic-select,tr.sc-ic-select,th.sc-ic-select,td.sc-ic-select,article.sc-ic-select,aside.sc-ic-select,canvas.sc-ic-select,details.sc-ic-select,embed.sc-ic-select,figure.sc-ic-select,figcaption.sc-ic-select,footer.sc-ic-select,header.sc-ic-select,hgroup.sc-ic-select,menu.sc-ic-select,nav.sc-ic-select,output.sc-ic-select,ruby.sc-ic-select,section.sc-ic-select,summary.sc-ic-select,time.sc-ic-select,mark.sc-ic-select,audio.sc-ic-select,video.sc-ic-select{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}/*!@:host*/.sc-ic-select-h{display:block;position:relative}/*!@:host(.full-width)*/.full-width.sc-ic-select-h{width:100%}/*!@ic-input-component-container:hover*/ic-input-component-container.sc-ic-select:hover{--border-color:var(--ic-action-dark-hover)}/*!@ic-input-component-container:active*/ic-input-component-container.sc-ic-select:active{--border-color:var(--ic-action-dark-active);color:var(--ic-action-dark-active)}/*!@ic-input-component-container.menu-open*/ic-input-component-container.menu-open.sc-ic-select{--border-color:var(--ic-architectural-400);color:var(--ic-action-dark)}/*!@ic-input-validation .status-icon,\nic-input-validation .statustext*/ic-input-validation.sc-ic-select .status-icon.sc-ic-select,ic-input-validation.sc-ic-select .statustext.sc-ic-select{visibility:visible}/*!@ic-input-validation.menu-open .status-icon,\nic-input-validation.menu-open .statustext*/ic-input-validation.menu-open.sc-ic-select .status-icon.sc-ic-select,ic-input-validation.menu-open.sc-ic-select .statustext.sc-ic-select{visibility:hidden;transition:visibility 0s}/*!@ic-input-label*/ic-input-label.sc-ic-select{margin-bottom:var(--ic-space-xs) !important}/*!@select*/select.sc-ic-select{border:0;border-radius:var(--ic-border-radius);background-color:var(--ic-architectural-white);color:var(--ic-color-primary-text);line-height:1.5rem;letter-spacing:0.005rem;width:100%;height:100%;padding-left:0.375rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-repeat:no-repeat;background-position:right 0.375rem center;background-image:url(\"data:image/svg+xml;utf8,<svg fill='black' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>\")}/*!@select option,\n.select-option-selected*/select.sc-ic-select option.sc-ic-select,.select-option-selected.sc-ic-select{color:var(--ic-color-primary-text)}/*!@select:disabled*/select.sc-ic-select:disabled{color:var(--ic-architectural-200);background-image:url(\"data:image/svg+xml;utf8,<svg fill='grey' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>\")}/*!@select:focus*/select.sc-ic-select:focus{border:0;outline:0}/*!@select:not([disabled])*/select.sc-ic-select:not([disabled]){cursor:pointer}/*!@.select-container*/.select-container.sc-ic-select{width:100%;display:flex;align-items:center;position:relative}/*!@.select-input*/.select-input.sc-ic-select{width:100%;height:100%;padding:0 0.375rem;display:flex;cursor:pointer;align-items:center;justify-content:space-between;background:none;border:none}/*!@.select-input:focus*/.select-input.sc-ic-select:focus{outline:var(--ic-hc-focus-outline)}/*!@:host(:not(.disabled)) ic-input-component-container:hover .select-input*/.sc-ic-select-h:not(.disabled) ic-input-component-container.sc-ic-select:hover .select-input.sc-ic-select{background-color:var(--ic-architectural-white)}/*!@.select-input[disabled]*/.select-input[disabled].sc-ic-select{pointer-events:none}/*!@:host(.searchable) .select-input*/.searchable.sc-ic-select-h .select-input.sc-ic-select{cursor:auto}/*!@.searchable-select-container*/.searchable-select-container.sc-ic-select{align-items:center;display:flex;width:100%;position:relative}/*!@.expand-icon*/.expand-icon.sc-ic-select{height:var(--ic-space-lg);padding-left:var(--ic-space-xs);color:var(--ic-action-dark)}/*!@.expand-icon > svg*/.expand-icon.sc-ic-select>svg.sc-ic-select{display:inline-block;width:var(--ic-space-lg);height:var(--ic-space-lg)}/*!@:host(.disabled) .expand-icon,\n:host(.disabled) .expand-icon > svg > path*/.disabled.sc-ic-select-h .expand-icon.sc-ic-select,.disabled.sc-ic-select-h .expand-icon.sc-ic-select>svg.sc-ic-select>path.sc-ic-select{color:var(--ic-architectural-200)}/*!@:host(.searchable) .expand-icon*/.searchable.sc-ic-select-h .expand-icon.sc-ic-select{padding-left:var(--ic-space-xxs);height:2.25rem}/*!@:host(.searchable) .expand-icon > svg*/.searchable.sc-ic-select-h .expand-icon.sc-ic-select>svg.sc-ic-select{height:2.25rem;padding:0 0.375rem}/*!@:host(.searchable:not(.disabled)) .expand-icon > svg*/.searchable.sc-ic-select-h:not(.disabled) .expand-icon.sc-ic-select>svg.sc-ic-select{cursor:pointer}/*!@.expand-icon-open*/.expand-icon-open.sc-ic-select{color:var(--ic-action-dark)}/*!@.expand-icon-filled*/.expand-icon-filled.sc-ic-select{color:var(--ic-action-dark)}/*!@.expand-icon-open,\n:host(.searchable) .expand-icon-open*/.expand-icon-open.sc-ic-select,.searchable.sc-ic-select-h .expand-icon-open.sc-ic-select{transform:rotateX(180deg)}/*!@:host(.disabled) .value-text,\n.placeholder*/.disabled.sc-ic-select-h .value-text.sc-ic-select,.placeholder.sc-ic-select{color:var(--ic-color-tertiary-text)}/*!@.select-input-end*/.select-input-end.sc-ic-select{display:flex;align-items:center}/*!@.clear-button-container*/.clear-button-container.sc-ic-select{display:flex;gap:var(--ic-space-xxs);padding-left:2.375rem;align-items:center}/*!@:host(.small) .clear-button-container*/.small.sc-ic-select-h .clear-button-container.sc-ic-select{padding-left:1.875rem}/*!@.divider*/.divider.sc-ic-select{width:var(--ic-border-width);background-color:var(--ic-architectural-400);margin:var(--ic-space-xxs) 0;border-radius:var(--ic-space-1px);height:var(--ic-space-lg)}/*!@:host(.small) .divider*/.small.sc-ic-select-h .divider.sc-ic-select{height:var(--ic-space-md)}/*!@.clear-button*/.clear-button.sc-ic-select{position:absolute;right:2.75rem;border-radius:var(--ic-border-radius);transition:box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition)}/*!@.clear-button:focus*/.clear-button.sc-ic-select:focus{background-color:var(--ic-focus-blue);box-shadow:inset 0 0 0 0.125rem var(--ic-focus-glow);border-radius:0.25rem}/*!@.clear-button:focus **/.clear-button.sc-ic-select:focus *.sc-ic-select{fill:white}/*!@.searchable-select-results-status*/.searchable-select-results-status.sc-ic-select{border:0;clip:rect(0, 0, 0, 0, 0);height:var(--ic-space-1px);overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:var(--ic-space-1px)}/*!@::slotted([slot=\"icon\"])*/.sc-ic-select-s>[slot=\"icon\"]{fill:var(--ic-color-tertiary-text)}/*!@.has-value ::slotted([slot=\"icon\"])*/.has-value .sc-ic-select-s>[slot=\"icon\"]{fill:var(--ic-color-primary-text)}/*!@.readonly ::slotted([slot=\"icon\"])*/.readonly .sc-ic-select-s>[slot=\"icon\"]{padding:0.375rem;margin-bottom:0.75rem}@media (forced-colors: active){/*!@.has-value ::slotted([slot=\"icon\"])*/.has-value .sc-ic-select-s>[slot=\"icon\"]{fill:currentcolor}}";
22881
22919
 
22882
22920
  let inputIds$3 = 0;
22883
22921
  const MUTABLE_ATTRIBUTES$1 = [...IC_INHERITED_ARIA$1, "tabindex", "title"];
22922
+ /**
22923
+ * @slot icon - Content will be placed to the left of the select text input.
22924
+ */
22884
22925
  class Select$1 {
22885
22926
  constructor(hostRef) {
22886
22927
  registerInstance(this, hostRef);
@@ -22903,11 +22944,14 @@ class Select$1 {
22903
22944
  this.hostMutationObserver = null;
22904
22945
  // triggered when attributes of host element change
22905
22946
  this.hostMutationCallback = (mutationList) => {
22906
- mutationList.forEach(({ attributeName }) => {
22947
+ mutationList.forEach(({ attributeName, type, addedNodes, removedNodes }) => {
22907
22948
  if (MUTABLE_ATTRIBUTES$1.includes(attributeName)) {
22908
22949
  this.inheritedAttributes[attributeName] =
22909
22950
  this.el.getAttribute(attributeName);
22910
22951
  }
22952
+ else if (type === "childList") {
22953
+ checkSlotInChildMutations(addedNodes, removedNodes, "icon");
22954
+ }
22911
22955
  });
22912
22956
  };
22913
22957
  this.handleRetry = (ev) => {
@@ -23470,6 +23514,7 @@ class Select$1 {
23470
23514
  this.hostMutationObserver = new MutationObserver(this.hostMutationCallback);
23471
23515
  this.hostMutationObserver.observe(this.el, {
23472
23516
  attributes: true,
23517
+ childList: true,
23473
23518
  });
23474
23519
  }
23475
23520
  componentDidRender() {
@@ -23514,13 +23559,20 @@ class Select$1 {
23514
23559
  renderHiddenInput$1(true, this.el, name, this.searchable ? this.hiddenInputValue : currValue, disabled);
23515
23560
  const invalid = validationStatus === IcInformationStatus$1.Error ? "true" : "false";
23516
23561
  const describedBy = getInputDescribedByText$1(this.inputId, helperText !== "", hasValidationStatus$1(this.validationStatus, this.disabled)).trim();
23562
+ let showLeftIcon = !!this.el.querySelector(`[slot="icon"]`);
23563
+ if (showLeftIcon && (disabled || (readonly && !this.value))) {
23564
+ showLeftIcon = false;
23565
+ }
23517
23566
  return (hAsync(Host, { class: {
23518
23567
  disabled: disabled,
23519
23568
  searchable: searchable,
23520
23569
  small: small,
23521
23570
  [size]: size !== "default",
23522
23571
  "full-width": fullWidth,
23523
- }, onBlur: this.onBlur }, hAsync("ic-input-container", { readonly: readonly }, !hideLabel && (hAsync("ic-input-label", { for: this.inputId, label: label, helperText: helperText, required: required, disabled: disabled, readonly: readonly })), hAsync("ic-input-component-container", { ref: (el) => (this.anchorEl = el), class: { "menu-open": this.open }, small: small, size: size, fullWidth: fullWidth, disabled: disabled, readonly: readonly, validationStatus: validationStatus }, readonly ? (hAsync("ic-typography", null, hAsync("p", null, this.getLabelFromValue(currValue)))) : isMobileOrTablet$1() ? (hAsync("select", Object.assign({ ref: (el) => (this.nativeSelectElement = el), disabled: disabled, onChange: this.handleNativeSelectChange, required: required, id: this.inputId, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.handleNativeSelectKeyDown, form: this.form }, this.inheritedAttributes), hAsync("option", { value: "", selected: true, disabled: !showClearButton }, placeholder), options.map((option) => {
23572
+ }, onBlur: this.onBlur }, hAsync("ic-input-container", { readonly: readonly }, !hideLabel && (hAsync("ic-input-label", { for: this.inputId, label: label, helperText: helperText, required: required, disabled: disabled, readonly: readonly })), hAsync("ic-input-component-container", { ref: (el) => (this.anchorEl = el), class: { "menu-open": this.open }, small: small, size: size, fullWidth: fullWidth, disabled: disabled, readonly: readonly, validationStatus: validationStatus }, showLeftIcon && (hAsync("span", { slot: "left-icon", class: {
23573
+ ["readonly"]: readonly,
23574
+ ["has-value"]: !!this.value,
23575
+ } }, hAsync("slot", { name: "icon" }))), readonly ? (hAsync("ic-typography", null, hAsync("p", null, this.getLabelFromValue(currValue)))) : isMobileOrTablet$1() ? (hAsync("select", Object.assign({ ref: (el) => (this.nativeSelectElement = el), disabled: disabled, onChange: this.handleNativeSelectChange, required: required, id: this.inputId, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.handleNativeSelectKeyDown, form: this.form }, this.inheritedAttributes), hAsync("option", { value: "", selected: true, disabled: !showClearButton }, placeholder), options.map((option) => {
23524
23576
  if (option.children) {
23525
23577
  return (hAsync("optgroup", { label: option.label }, option.children.map((option) => (hAsync("option", { value: option.value, disabled: option.disabled, selected: option.value === currValue }, option.label)))));
23526
23578
  }
@@ -26051,27 +26103,19 @@ class TextField {
26051
26103
  this.getMaxLengthExceeded = (value) => {
26052
26104
  this.numChars = value.length;
26053
26105
  if (this.type === "number") {
26054
- this.minValueUnattained =
26055
- value && Number(value) < Number(this.min) ? true : false;
26056
- this.maxValueExceeded = Number(value) > Number(this.max) ? true : false;
26106
+ this.minValueUnattained = value && Number(value) < Number(this.min);
26107
+ this.maxValueExceeded = Number(value) > Number(this.max);
26057
26108
  }
26058
26109
  if (this.maxLength > 0) {
26059
- this.maxLengthExceeded = value.length > this.maxLength ? true : false;
26110
+ this.maxLengthExceeded = this.numChars > this.maxLength;
26060
26111
  }
26061
26112
  };
26062
26113
  this.getMaxCharactersReached = (value) => {
26063
26114
  this.numChars = value.length;
26064
- if (this.maxCharacters > 0) {
26065
- this.maxCharactersReached = this.numChars >= this.maxCharacters;
26066
- if (this.maxCharactersError && !this.maxCharactersReached) {
26067
- this.maxCharactersError = false;
26068
- }
26069
- }
26070
- };
26071
- this.getMinCharactersUnattained = (value) => {
26072
- this.numChars = value.length;
26073
- if (this.minCharacters > 0) {
26074
- this.minCharactersUnattained = this.numChars < this.minCharacters;
26115
+ this.maxCharactersReached =
26116
+ this.maxCharacters > 0 ? this.numChars >= this.maxCharacters : false;
26117
+ if (this.maxCharactersError && !this.maxCharactersReached) {
26118
+ this.maxCharactersError = false;
26075
26119
  }
26076
26120
  };
26077
26121
  this.onInput = (ev) => {
@@ -26080,37 +26124,28 @@ class TextField {
26080
26124
  };
26081
26125
  this.onBlur = (ev) => {
26082
26126
  const value = ev.target.value;
26083
- this.getMinCharactersUnattained(value);
26127
+ this.numChars = value.length;
26128
+ this.minCharactersUnattained =
26129
+ this.minCharacters > 0 ? this.numChars < this.minCharacters : false;
26084
26130
  this.icBlur.emit({ value: value });
26085
26131
  };
26086
26132
  this.onFocus = (ev) => {
26087
- const value = ev.target.value;
26088
- this.icFocus.emit({ value: value });
26089
- };
26090
- this.isTextArea = () => {
26091
- return this.rows > 1;
26092
- };
26093
- this.getInlineValidationText = () => {
26094
- this.getValidationText.emit({ value: this.validationText });
26095
- };
26096
- this.hasStatus = (status) => {
26097
- return status !== "" && !this.disabled;
26098
- };
26099
- this.showStatusText = (status) => {
26100
- return (this.hasStatus(status) &&
26101
- !(status == IcInformationStatus$1.Success && this.validationInline) &&
26102
- !this.validationInlineInternal);
26133
+ this.icFocus.emit({ value: ev.target.value });
26103
26134
  };
26135
+ this.hasStatus = (status) => status !== "" && !this.disabled;
26104
26136
  this.handleFormReset = () => {
26105
26137
  this.value = this.initialValue;
26106
26138
  };
26107
26139
  // triggered when attributes of host element change
26108
26140
  this.hostMutationCallback = (mutationList) => {
26109
- mutationList.forEach(({ attributeName }) => {
26141
+ mutationList.forEach(({ attributeName, type, addedNodes, removedNodes }) => {
26110
26142
  if (MUTABLE_ATTRIBUTES.includes(attributeName)) {
26111
26143
  this.inheritedAttributes[attributeName] =
26112
26144
  this.el.getAttribute(attributeName);
26113
26145
  }
26146
+ else if (type === "childList") {
26147
+ checkSlotInChildMutations(addedNodes, removedNodes, "icon");
26148
+ }
26114
26149
  });
26115
26150
  };
26116
26151
  this.numChars = 0;
@@ -26198,11 +26233,12 @@ class TextField {
26198
26233
  componentDidLoad() {
26199
26234
  onComponentRequiredPropUndefined$1([{ prop: this.label, propName: "label" }], "Text Field");
26200
26235
  if (this.validationInlineInternal) {
26201
- this.getInlineValidationText();
26236
+ this.getValidationText.emit({ value: this.validationText });
26202
26237
  }
26203
26238
  this.hostMutationObserver = new MutationObserver(this.hostMutationCallback);
26204
26239
  this.hostMutationObserver.observe(this.el, {
26205
26240
  attributes: true,
26241
+ childList: true,
26206
26242
  });
26207
26243
  }
26208
26244
  handleKeyDown(ev) {
@@ -26213,13 +26249,8 @@ class TextField {
26213
26249
  * Sets focus on the native `input`.
26214
26250
  */
26215
26251
  async setFocus() {
26216
- if (this.inputEl) {
26217
- this.inputEl.focus();
26218
- }
26219
- }
26220
- hasLeftIconSlot() {
26221
- const iconEl = this.el.querySelector(`[slot="icon"]`);
26222
- return iconEl !== null;
26252
+ var _a;
26253
+ (_a = this.inputEl) === null || _a === void 0 ? void 0 : _a.focus();
26223
26254
  }
26224
26255
  render() {
26225
26256
  const { inputId, name, label, required, size, small, placeholder, helperText, rows, resize, disabled, value, min, max, maxLength, numChars, readonly, maxLengthExceeded, maxCharacters, maxCharactersError, maxCharactersReached, minCharacters, minCharactersUnattained, minValueUnattained, maxValueExceeded, validationStatus, validationText, validationInline, validationInlineInternal, spellcheck, inputmode, fullWidth, truncateValue, hiddenInput, } = this;
@@ -26253,18 +26284,15 @@ class TextField {
26253
26284
  (maxLength === 0 && currentStatus === IcInformationStatus$1.Error)
26254
26285
  ? "assertive"
26255
26286
  : "polite";
26256
- const showStatusText = this.showStatusText(currentStatus);
26257
- const multiline = this.isTextArea();
26258
- const hiddenCharCountDescId = maxLength > 0 ? inputId + "-charcount-desc" : "";
26259
- const describedBy = (hiddenCharCountDescId +
26260
- " " +
26261
- getInputDescribedByText$1(inputId, helperText !== "", showStatusText)).trim();
26262
- let showLeftIcon = this.hasLeftIconSlot();
26263
- if (showLeftIcon && !readonly && disabledMode) {
26264
- showLeftIcon = false;
26265
- }
26266
- const invalid = currentStatus === IcInformationStatus$1.Error ? "true" : "false";
26287
+ const showStatusText = this.hasStatus(currentStatus) &&
26288
+ !(currentStatus == IcInformationStatus$1.Success && validationInline) &&
26289
+ !validationInlineInternal;
26290
+ const multiline = rows > 1;
26291
+ const hiddenCharCountDescId = maxLength > 0 ? `${inputId}-charcount-desc` : "";
26292
+ const describedBy = `${hiddenCharCountDescId} ${getInputDescribedByText$1(inputId, helperText !== "", showStatusText)}`.trim();
26267
26293
  const disabledText = disabledMode && !readonly;
26294
+ const showLeftIcon = !!this.el.querySelector(`[slot="icon"]`) && !disabledText;
26295
+ const invalid = `${currentStatus === IcInformationStatus$1.Error}`;
26268
26296
  if (hiddenInput) {
26269
26297
  renderHiddenInput$1(true, this.el, name, value, disabledMode);
26270
26298
  }
@@ -27498,7 +27526,7 @@ class Typography {
27498
27526
  } }, (variant === "body" ||
27499
27527
  ((_b = (_a = this.el.getRootNode()) === null || _a === void 0 ? void 0 : _a.host) === null || _b === void 0 ? void 0 : _b.tagName) ===
27500
27528
  "IC-TOOLTIP") &&
27501
- maxLines > 0 ? (hAsync("div", { class: "trunc-wrapper", ref: (el) => (this.truncWrapperEl = el) }, hAsync("slot", null))) : (hAsync("slot", null)), variant === "body" && maxLines > 0 && truncated && (hAsync("button", { class: { "trunc-btn": true, focus: this.truncButtonFocussed }, onFocus: this.truncButtonFocus, onBlur: this.truncButtonBlur, onMouseDown: this.truncButtonFocusFromMouse, onClick: this.toggleExpanded, "aria-hidden": "true" }, expanded ? "See less" : "See more"))));
27529
+ maxLines > 0 ? (hAsync("div", { class: "trunc-wrapper", ref: (el) => (this.truncWrapperEl = el) }, hAsync("slot", null))) : (hAsync("slot", null)), variant === "body" && maxLines > 0 && truncated && (hAsync("button", { class: { "trunc-btn": true, focus: this.truncButtonFocussed }, onFocus: this.truncButtonFocus, onBlur: this.truncButtonBlur, onMouseDown: this.truncButtonFocusFromMouse, onClick: this.toggleExpanded }, expanded ? "See less" : "See more"))));
27502
27530
  }
27503
27531
  get el() { return getElement(this); }
27504
27532
  static get watchers() { return {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ukic/canary-web-components",
3
- "version": "2.0.0-canary.18",
3
+ "version": "2.0.0-canary.19",
4
4
  "description": "A web component UI library compiled with StencilJS",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "./dist/index.js",
@@ -43,7 +43,7 @@
43
43
  "dependencies": {
44
44
  "@popperjs/core": "^2.11.2",
45
45
  "@stencil/core": "^4.9.0",
46
- "@ukic/web-components": "^2.23.0"
46
+ "@ukic/web-components": "^2.24.0"
47
47
  },
48
48
  "peerDependencies": {
49
49
  "@ukic/fonts": "^2.3.0"
@@ -89,5 +89,5 @@
89
89
  "webpack": "^5.76.0"
90
90
  },
91
91
  "license": "MIT",
92
- "gitHead": "fc202d5fde5e93c4e744747d115d83d09901cf79"
92
+ "gitHead": "89745753bb4b0ef64b123e2acca2a5873d333a40"
93
93
  }
@@ -1 +0,0 @@
1
- {"file":"helpers-4f5f087e.js","mappings":"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","names":["IcThemeForegroundEnum"],"sources":["../web-components/dist/collection/utils/constants.js","../web-components/dist/collection/utils/helpers.js"],"sourcesContent":["import errorIcon from \"../assets/error-icon.svg\";\nimport infoIcon from \"../assets/info-icon.svg\";\nimport neutralIcon from \"../assets/neutral-icon.svg\";\nimport successIcon from \"../assets/success-icon.svg\";\nimport warningIcon from \"../assets/warning-icon.svg\";\n// Global status icons\nexport const VARIANT_ICONS = {\n neutral: {\n icon: neutralIcon,\n ariaLabel: \"Neutral\",\n },\n info: {\n icon: infoIcon,\n ariaLabel: \"For your information\",\n },\n warning: {\n icon: warningIcon,\n ariaLabel: \"Warning\",\n },\n error: {\n icon: errorIcon,\n ariaLabel: \"Error\",\n },\n success: {\n icon: successIcon,\n ariaLabel: \"Success\",\n },\n};\n// Global ARIA attributes\nexport const IC_INHERITED_ARIA = [\n \"aria-atomic\",\n \"aria-autocomplete\",\n \"aria-busy\",\n \"aria-controls\",\n \"aria-current\",\n \"aria-describedby\",\n \"aria-description\",\n \"aria-details\",\n \"aria-disabled\",\n \"aria-dropeffect\",\n \"aria-errormessage\",\n \"aria-expanded\",\n \"aria-flowto\",\n \"aria-grabbed\",\n \"aria-haspopup\",\n \"aria-hidden\",\n \"aria-invalid\",\n \"aria-keyshortcuts\",\n \"aria-label\",\n \"aria-labelledby\",\n \"aria-live\",\n \"aria-owns\",\n \"aria-relevant\",\n \"aria-roledescription\",\n];\nexport const IC_DEVICE_SIZES = {\n XS: 576,\n S: 768,\n M: 992,\n L: 1200,\n XL: 99999,\n};\nexport const IC_BLOCK_COLOR_COMPONENTS = [\n \"ic-hero\",\n \"ic-top-navigation\",\n \"ic-footer\",\n \"ic-side-navigation\",\n \"ic-alert\",\n];\nexport const IC_FIXED_COLOR_COMPONENTS = [\"ic-alert\"];\nexport const IC_BLOCK_COLOR_EXCEPTIONS = {\n \"ic-alert\": [\"ic-link\"],\n};\n/* Range within which the chosen theme colour would not have a sufficient brightness difference with either of the black or white foreground colours\n * The brightness difference must be greater than 125 to provide good colour visibility\n * Calculated by:\n * - Using the brightness formula for both colours: https://www.w3.org/TR/AERT/#color-contrast\n * - Adding 125 to the brightness of the black foreground colour - RGB(11, 12, 12)\n * - Subtracting 125 from the brightness of the white foreground colour - RGB(255, 255, 255)\n */\nexport const BLACK_MIN_COLOR_BRIGHTNESS = 136.701;\nexport const WHITE_MAX_COLOR_BRIGHTNESS = 130;\n//# sourceMappingURL=constants.js.map\n","import { IcThemeForegroundEnum, } from \"../utils/types\";\nimport { IC_BLOCK_COLOR_COMPONENTS, IC_BLOCK_COLOR_EXCEPTIONS, IC_FIXED_COLOR_COMPONENTS, } from \"./constants\";\nconst DARK_MODE_THRESHOLD = 133.3505;\nconst icInput = \"ic-input\";\nconst linkIcInput = \"input.ic-input\";\n/**\n * converts an enum of strings into an array of strings\n */\nexport const stringEnumToArray = (theEnum) => {\n const arr = [];\n Object.values(theEnum).forEach((val) => {\n if (isNaN(Number(val))) {\n const str = val;\n arr.push(str);\n }\n });\n return arr;\n};\n/**\n * Used to inherit global attributes set on the host. Called in componentWillLoad and assigned\n * to a variable that is later used in the render function.\n *\n * This does not need to be reactive as changing attributes on the host element\n * does not trigger a re-render.\n */\nexport const inheritAttributes = (element, attributes = []) => {\n const attributeObject = {};\n attributes.forEach((attr) => {\n if (element.hasAttribute(attr)) {\n const value = element.getAttribute(attr);\n if (value !== null) {\n attributeObject[attr] = value;\n }\n element.removeAttribute(attr);\n }\n });\n return attributeObject;\n};\nexport const debounceEvent = (event, wait) => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const original = event._original || event;\n return {\n _original: event,\n emit: debounce(original.emit.bind(original), wait),\n };\n};\nexport const debounce = (func, wait = 0) => {\n let timer;\n return (...args) => {\n clearTimeout(timer);\n timer = setTimeout(func, wait, ...args);\n };\n};\n/**\n * This method is used to add a hidden input to a host element that contains\n * a Shadow DOM. It does not add the input inside of the Shadow root which\n * allows it to be picked up inside of forms. It should contain the same\n * values as the host element.\n *\n * @param always Add a hidden input even if the container does not use Shadow\n * @param container The element where the input will be added\n * @param name The name of the input\n * @param value The value of the input\n * @param disabled If true, the input is disabled\n */\nexport const renderHiddenInput = (always, container, name, value, disabled) => {\n if (name !== undefined && (always || hasShadowDom(container))) {\n const inputs = container.querySelectorAll(linkIcInput);\n const inputEls = Array.from(inputs);\n const filtered = inputEls.filter((el) => container === el.parentElement);\n let input = filtered[0];\n if (input === null || input === undefined) {\n input = container.ownerDocument.createElement(\"input\");\n input.type = \"hidden\";\n input.classList.add(icInput);\n container.appendChild(input);\n }\n input.disabled = disabled;\n input.name = name;\n if (value instanceof Date) {\n input.value = value ? value.toISOString() : null;\n }\n else {\n input.value = value || \"\";\n }\n }\n};\n/**\n * This method is used to add a hidden file input to a host element that contains\n * a Shadow DOM. It does not add the input inside of the Shadow root which\n * allows it to be picked up inside of forms. It should contain the same\n * values as the host element.\n *\n * @param event: The event that is emitted once a file is selected.\n * @param container The element where the input will be added\n * @param multiple If true, multiple files can be selected\n * @param name The name of the input\n * @param value The value of the input\n * @param disabled If true, the input is disabled\n * @param accept A string of the accepted files\n */\nexport const renderFileHiddenInput = (event, container, multiple, name, value, disabled, accept) => {\n if (name !== undefined && hasShadowDom(container)) {\n const inputs = container.querySelectorAll(linkIcInput);\n const inputEls = Array.from(inputs);\n const filtered = inputEls.filter((el) => container === el.parentElement);\n let input = filtered[0];\n if (input === null || input === undefined) {\n input = container.ownerDocument.createElement(\"input\");\n input.classList.add(icInput);\n container.appendChild(input);\n }\n input.type = \"file\";\n input.hidden = true;\n input.multiple = multiple;\n input.name = name;\n input.files = value;\n input.disabled = disabled;\n input.accept = accept;\n input.onchange = () => {\n event.emit(input.files);\n };\n input.click();\n }\n};\nexport const removeHiddenInput = (container) => {\n const inputs = container.querySelectorAll(\"input.ic-input\");\n const inputEls = Array.from(inputs);\n const filtered = inputEls.filter((el) => container === el.parentElement);\n const input = filtered[0];\n input === null || input === void 0 ? void 0 : input.remove();\n};\nexport const hasShadowDom = (el) => !!el.shadowRoot && !!el.attachShadow;\nexport const getInputHelperTextID = (id) => id + \"-helper-text\";\nexport const getInputValidationTextID = (id) => id + \"-validation-text\";\nexport const getInputDescribedByText = (inputId, helperText, validationText) => `${helperText ? getInputHelperTextID(inputId) : \"\"} ${validationText ? getInputValidationTextID(inputId) : \"\"}`.trim();\n/**\n * This method helps to understand the context in which a component exists,\n * to assist with choosing appropriate foreground colours to use. For example,\n * this method will help you use the 'white' version of a button if it's within\n * a block colour element using white foreground text.\n *\n * This only works for components/elements passed via <slot> and not if they\n * are part of an IC component.\n *\n * \"\"\n * @returns IcThemeForeground depending on the context\n */\nexport const getThemeFromContext = (el, themeFromEvent = null) => {\n var _a;\n const parentElement = el.parentElement || el.getRootNode().host.parentElement;\n const blockColorParent = parentElement.closest(IC_BLOCK_COLOR_COMPONENTS.join(\",\"));\n // If within a block color component\n if (blockColorParent !== null) {\n const parentTag = blockColorParent.tagName.toLowerCase();\n const currentTag = el.tagName.toLowerCase();\n if ((_a = IC_BLOCK_COLOR_EXCEPTIONS[parentTag]) === null || _a === void 0 ? void 0 : _a.includes(currentTag)) {\n return IcThemeForegroundEnum.Default;\n }\n else if (themeFromEvent !== null &&\n !IC_FIXED_COLOR_COMPONENTS.includes(parentTag)) {\n return themeFromEvent;\n }\n else if (blockColorParent.classList.contains(IcThemeForegroundEnum.Dark)) {\n return IcThemeForegroundEnum.Dark;\n }\n return IcThemeForegroundEnum.Light;\n }\n return IcThemeForegroundEnum.Default;\n};\n/**\n * Checks if the current device is a mobile or tablet device.\n * @returns {boolean} Returns true if the device is a mobile or tablet device, otherwise returns false.\n */\nexport const isMobileOrTablet = () => \"maxTouchPoints\" in navigator && \"userAgent\" in navigator\n ? navigator.maxTouchPoints > 0 &&\n /iPad|iPhone|iPod|Android|webOS|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)\n : false;\n/**\n * Will create a button within the lightDOM which interacts with the parent form.\n * This is required as buttons within the shadowDOM will not invoke a submit or reset\n *\n * @param form - parent form element which contains shadowDom button\n * @param button - shadowDOM button\n */\nexport const handleHiddenFormButtonClick = (form, button) => {\n const hiddenFormButton = document.createElement(\"button\");\n hiddenFormButton.setAttribute(\"type\", button.type);\n hiddenFormButton.style.display = \"none\";\n form.appendChild(hiddenFormButton);\n hiddenFormButton.click();\n hiddenFormButton.remove();\n};\nexport const isEmptyString = (value) => value ? value.trim().length === 0 : true;\n// A helper function that checks if a prop has been defined\nexport const isPropDefined = (prop) => prop !== undefined ? prop : null;\n/**\n * Extracts the label using the value from an object. Requires the object to have a label and value property.\n * @param value - value from object\n * @param options - list of menu items\n * @returns - label corresponding to value\n */\nexport const getLabelFromValue = (value, options, valueField = \"value\", labelField = \"label\") => {\n const ungroupedOptions = [];\n if (options.length > 0 && options.map) {\n options.map((option) => {\n if (option.children) {\n option.children.map((option) => ungroupedOptions.push(option));\n }\n else {\n ungroupedOptions.push(option);\n }\n });\n const matchingValue = ungroupedOptions.find((option) => option[valueField] === value);\n if (matchingValue !== undefined)\n return matchingValue[labelField];\n }\n return undefined;\n};\n/**\n * Filters the options based on the search string.\n * @param options - array of options\n * @param includeDescriptions - determines whether option descriptions are included when filtering options\n * @param searchString - string used to filter the options\n * @param position - whether the search string matches the start of or anywhere in the options\n * @returns filtered array of options\n */\nexport const getFilteredMenuOptions = (options, includeDescriptions, searchString, position, labelField = \"label\") => options.filter((option) => {\n var _a;\n const label = option[labelField].toLowerCase();\n const description = (_a = option.description) === null || _a === void 0 ? void 0 : _a.toLowerCase();\n const lowerSearchString = searchString.toLowerCase();\n return position === \"anywhere\"\n ? includeDescriptions\n ? label.includes(lowerSearchString) ||\n (description === null || description === void 0 ? void 0 : description.includes(lowerSearchString))\n : label.includes(lowerSearchString)\n : includeDescriptions\n ? label.startsWith(lowerSearchString) ||\n (description === null || description === void 0 ? void 0 : description.startsWith(lowerSearchString))\n : label.startsWith(lowerSearchString);\n});\nexport const deviceSizeMatches = (size) => window.matchMedia(`(max-width: ${size}px)`).matches;\nexport const getCurrentDeviceSize = () => {\n if (deviceSizeMatches(DEVICE_SIZES.S)) {\n return DEVICE_SIZES.S;\n }\n if (deviceSizeMatches(DEVICE_SIZES.M)) {\n return DEVICE_SIZES.M;\n }\n if (deviceSizeMatches(DEVICE_SIZES.L)) {\n return DEVICE_SIZES.L;\n }\n if (deviceSizeMatches(DEVICE_SIZES.XL)) {\n return DEVICE_SIZES.XL;\n }\n //fallback needed as all of above get initialised to 0 in jest tests\n return DEVICE_SIZES.UNDEFINED;\n};\nexport const getCssProperty = (cssVar) => getComputedStyle(document.documentElement).getPropertyValue(cssVar);\n/**\n * Returns the brightness of the theme colour, calculated by using the theme RGB CSS values by:\n * - Multiplying each RGB value by a set number: https://www.w3.org/TR/AERT/#color-contrast\n * - Adding them together and dividing by 1000\n * This is a similar calculation to its CSS counterpart: \"--ic-theme-text\"\n * @returns number representing the brightness of the theme colour\n */\nexport const getThemeColorBrightness = () => {\n const themeRed = getCssProperty(\"--ic-theme-primary-r\");\n const themeGreen = getCssProperty(\"--ic-theme-primary-g\");\n const themeBlue = getCssProperty(\"--ic-theme-primary-b\");\n return ((parseInt(themeRed) * 299 +\n parseInt(themeGreen) * 587 +\n parseInt(themeBlue) * 114) /\n 1000);\n};\n/**\n * Returns if dark or light foreground colors should be used for color contrast reasons\n * @returns \"dark\" or \"light\"\n * @param brightness - Optional custom brightness value. Defaults to `getThemeColorBrightness`\n */\nexport const getThemeForegroundColor = (brightness = getThemeColorBrightness()) => brightness > DARK_MODE_THRESHOLD\n ? IcThemeForegroundEnum.Dark\n : IcThemeForegroundEnum.Light;\nexport const getSlot = (element, name) => {\n if (element && element.querySelector) {\n return element.querySelector(`[slot=\"${name}\"]`);\n }\n return null;\n};\nexport const slotHasContent = (element, name) => getSlot(element, name) !== null;\nexport const getSlotContent = (element, name) => {\n const slot = getSlot(element, name);\n if (slot) {\n return getSlotElements(slot);\n }\n return null;\n};\nexport const getSlotElements = (slot) => {\n const slotContent = slot.firstElementChild;\n if (slotContent !== null) {\n const elements = slotContent.assignedElements\n ? slotContent.assignedElements()\n : slotContent.childNodes;\n return elements.length ? elements : slot.tagName ? [slot] : null;\n }\n else {\n //check for single element\n return slot === null ? null : [slot];\n }\n};\nexport const getNavItemParentDetails = ({ parentElement, }) => {\n let navType = { navType: \"\", parent: null };\n switch (parentElement.tagName) {\n case \"IC-NAVIGATION-GROUP\":\n navType = getNavItemParentDetails(parentElement);\n break;\n case \"IC-TOP-NAVIGATION\":\n navType = { navType: \"top\", parent: parentElement };\n break;\n case \"IC-SIDE-NAVIGATION\":\n navType = { navType: \"side\", parent: parentElement };\n break;\n case \"IC-PAGE-HEADER\":\n navType = { navType: \"page-header\", parent: null };\n break;\n }\n return navType;\n};\nexport const DEVICE_SIZES = {\n XS: Number(getCssProperty(\"--ic-breakpoint-xs\").replace(\"px\", \"\")), // 0\n S: Number(getCssProperty(\"--ic-breakpoint-sm\").replace(\"px\", \"\")), // 576\n M: Number(getCssProperty(\"--ic-breakpoint-md\").replace(\"px\", \"\")), // 768\n L: Number(getCssProperty(\"--ic-breakpoint-lg\").replace(\"px\", \"\")), // 992\n XL: Number(getCssProperty(\"--ic-breakpoint-xl\").replace(\"px\", \"\")), // 1200\n UNDEFINED: 1200,\n};\nexport const hasValidationStatus = (status, disabled) => !!status && !disabled;\nexport const isSlotUsed = ({ children }, slotName) => Array.from(children).some((child) => child.getAttribute(\"slot\") === slotName);\n// added as a common method to allow detection of gatsby hydration issue, where (camelCase) props are initially undefined & then update\n// with a value. Allows a callback function to be executed when this is the case\nexport const onComponentPropUndefinedChange = (oldValue, newValue, callback) => {\n if (oldValue === undefined && newValue !== oldValue) {\n callback();\n }\n};\nexport const onComponentRequiredPropUndefined = (props, component) => {\n props.forEach(({ prop, propName }) => {\n if (prop === null || prop === undefined) {\n console.error(`No ${propName} specified for ${component} component - prop '${propName}' (web components) / '${kebabToCamelCase(propName)}' (react) required`);\n }\n });\n};\nexport const kebabToCamelCase = (kebabCase) => kebabCase\n .toLowerCase()\n .split(\"-\")\n .map((word, index) => index === 0\n ? word\n : `${word.substring(0, 1).toUpperCase()}${word.substring(1)}`)\n .join(\"\");\nexport const checkResizeObserver = (callbackFn) => {\n if (typeof window !== \"undefined\" &&\n typeof window.ResizeObserver !== \"undefined\") {\n callbackFn();\n }\n};\nconst hex2dec = (v) => parseInt(v, 16);\nexport const hexToRgba = (hex) => {\n const hexChars = hex\n .replace(\"#\", \"\")\n .split(\"\")\n .map((char) => char.repeat(2));\n return {\n r: hex2dec(hex.length === 4 ? hexChars[0] : hex.slice(1, 3)),\n g: hex2dec(hex.length === 4 ? hexChars[1] : hex.slice(3, 5)),\n b: hex2dec(hex.length === 4 ? hexChars[2] : hex.slice(5)),\n a: 1,\n };\n};\nexport const rgbaStrToObj = (rgbaStr) => {\n const isRGBA = rgbaStr.slice(3, 4).toLowerCase() === \"a\";\n const rgbValues = rgbaStr\n .substring(isRGBA ? 5 : 4, rgbaStr.length - 1)\n .replace(/ /g, \"\")\n .split(\",\")\n .map(Number);\n return {\n r: rgbValues[0],\n g: rgbValues[1],\n b: rgbValues[2],\n a: isRGBA ? rgbValues[3] : 1,\n };\n};\nexport const elementOverflowsX = ({ scrollWidth, clientWidth, }) => scrollWidth > clientWidth;\nexport const hasClassificationBanner = () => !!document.querySelector(\"ic-classification-banner:not([inline='true'])\");\nexport const addFormResetListener = (el, callbackFn) => {\n var _a;\n (_a = el.closest(\"FORM\")) === null || _a === void 0 ? void 0 : _a.addEventListener(\"reset\", callbackFn);\n};\nexport const removeFormResetListener = (el, callbackFn) => {\n var _a;\n (_a = el.closest(\"FORM\")) === null || _a === void 0 ? void 0 : _a.removeEventListener(\"reset\", callbackFn);\n};\nexport const pxToRem = (px, base = 16) => `${(1 / base) * parseInt(px)}rem`;\nexport const removeDisabledFalse = (disabled, element) => {\n if (!disabled) {\n element.removeAttribute(\"disabled\");\n }\n};\nexport const isMacDevice = () => window.navigator.userAgent.toUpperCase().indexOf(\"MAC\") >= 0;\nexport const isNumeric = (value) => /^-?\\d+$/.test(value);\nexport async function waitForHydration() {\n const elements = document.getElementsByTagName(\"*\");\n for (let i = 0; i < elements.length; i++) {\n if (elements[i].tagName.startsWith(\"IC-\")) {\n if (elements[i].classList.contains(\"hydrated\")) {\n return true;\n }\n }\n else {\n return false;\n }\n }\n return false;\n}\nexport const convertToRGBA = (color) => {\n const firstChar = color === null || color === void 0 ? void 0 : color.slice(0, 1).toLowerCase();\n return firstChar === \"#\"\n ? hexToRgba(color)\n : firstChar === \"r\"\n ? rgbaStrToObj(color)\n : null;\n};\nexport const capitalize = (text) => {\n return text.charAt(0).toUpperCase() + text.slice(1);\n};\n//# sourceMappingURL=helpers.js.map\n"],"version":3}
@@ -1 +0,0 @@
1
- {"version":3,"names":["VARIANT_ICONS","neutral","icon","neutralIcon","ariaLabel","info","infoIcon","warning","warningIcon","error","errorIcon","success","successIcon","IC_INHERITED_ARIA","IC_DEVICE_SIZES","XS","S","M","L","XL","IC_BLOCK_COLOR_COMPONENTS","IC_FIXED_COLOR_COMPONENTS","IC_BLOCK_COLOR_EXCEPTIONS","BLACK_MIN_COLOR_BRIGHTNESS","WHITE_MAX_COLOR_BRIGHTNESS","DARK_MODE_THRESHOLD","icInput","linkIcInput","inheritAttributes","element","attributes","attributeObject","forEach","attr","hasAttribute","value","getAttribute","removeAttribute","debounceEvent","event","wait","original","_original","emit","debounce","bind","func","timer","args","clearTimeout","setTimeout","renderHiddenInput","always","container","name","disabled","undefined","hasShadowDom","inputs","querySelectorAll","inputEls","Array","from","filtered","filter","el","parentElement","input","ownerDocument","createElement","type","classList","add","appendChild","Date","toISOString","renderFileHiddenInput","multiple","accept","hidden","files","onchange","click","removeHiddenInput","remove","shadowRoot","attachShadow","getInputHelperTextID","id","getInputValidationTextID","getInputDescribedByText","inputId","helperText","validationText","trim","getThemeFromContext","themeFromEvent","_a","getRootNode","host","blockColorParent","closest","join","parentTag","tagName","toLowerCase","currentTag","includes","IcThemeForegroundEnum","Default","contains","Dark","Light","isMobileOrTablet","navigator","maxTouchPoints","test","userAgent","handleHiddenFormButtonClick","form","button","hiddenFormButton","document","setAttribute","style","display","isEmptyString","length","isPropDefined","prop","getLabelFromValue","options","valueField","labelField","ungroupedOptions","map","option","children","push","matchingValue","find","getFilteredMenuOptions","includeDescriptions","searchString","position","label","description","lowerSearchString","startsWith","deviceSizeMatches","size","window","matchMedia","matches","getCurrentDeviceSize","DEVICE_SIZES","UNDEFINED","getCssProperty","cssVar","getComputedStyle","documentElement","getPropertyValue","getThemeColorBrightness","themeRed","themeGreen","themeBlue","parseInt","getThemeForegroundColor","brightness","getSlot","querySelector","slotHasContent","getSlotContent","slot","getSlotElements","slotContent","firstElementChild","elements","assignedElements","childNodes","getNavItemParentDetails","navType","parent","Number","replace","hasValidationStatus","status","isSlotUsed","slotName","some","child","onComponentPropUndefinedChange","oldValue","newValue","callback","onComponentRequiredPropUndefined","props","component","propName","console","kebabToCamelCase","kebabCase","split","word","index","substring","toUpperCase","checkResizeObserver","callbackFn","ResizeObserver","hex2dec","v","hexToRgba","hex","hexChars","char","repeat","r","slice","g","b","a","rgbaStrToObj","rgbaStr","isRGBA","rgbValues","elementOverflowsX","scrollWidth","clientWidth","hasClassificationBanner","addFormResetListener","addEventListener","removeFormResetListener","removeEventListener","pxToRem","px","base","removeDisabledFalse","convertToRGBA","color","firstChar","capitalize","text","charAt"],"sources":["../web-components/dist/collection/utils/constants.js","../web-components/dist/collection/utils/helpers.js"],"sourcesContent":["import errorIcon from \"../assets/error-icon.svg\";\nimport infoIcon from \"../assets/info-icon.svg\";\nimport neutralIcon from \"../assets/neutral-icon.svg\";\nimport successIcon from \"../assets/success-icon.svg\";\nimport warningIcon from \"../assets/warning-icon.svg\";\n// Global status icons\nexport const VARIANT_ICONS = {\n neutral: {\n icon: neutralIcon,\n ariaLabel: \"Neutral\",\n },\n info: {\n icon: infoIcon,\n ariaLabel: \"For your information\",\n },\n warning: {\n icon: warningIcon,\n ariaLabel: \"Warning\",\n },\n error: {\n icon: errorIcon,\n ariaLabel: \"Error\",\n },\n success: {\n icon: successIcon,\n ariaLabel: \"Success\",\n },\n};\n// Global ARIA attributes\nexport const IC_INHERITED_ARIA = [\n \"aria-atomic\",\n \"aria-autocomplete\",\n \"aria-busy\",\n \"aria-controls\",\n \"aria-current\",\n \"aria-describedby\",\n \"aria-description\",\n \"aria-details\",\n \"aria-disabled\",\n \"aria-dropeffect\",\n \"aria-errormessage\",\n \"aria-expanded\",\n \"aria-flowto\",\n \"aria-grabbed\",\n \"aria-haspopup\",\n \"aria-hidden\",\n \"aria-invalid\",\n \"aria-keyshortcuts\",\n \"aria-label\",\n \"aria-labelledby\",\n \"aria-live\",\n \"aria-owns\",\n \"aria-relevant\",\n \"aria-roledescription\",\n];\nexport const IC_DEVICE_SIZES = {\n XS: 576,\n S: 768,\n M: 992,\n L: 1200,\n XL: 99999,\n};\nexport const IC_BLOCK_COLOR_COMPONENTS = [\n \"ic-hero\",\n \"ic-top-navigation\",\n \"ic-footer\",\n \"ic-side-navigation\",\n \"ic-alert\",\n];\nexport const IC_FIXED_COLOR_COMPONENTS = [\"ic-alert\"];\nexport const IC_BLOCK_COLOR_EXCEPTIONS = {\n \"ic-alert\": [\"ic-link\"],\n};\n/* Range within which the chosen theme colour would not have a sufficient brightness difference with either of the black or white foreground colours\n * The brightness difference must be greater than 125 to provide good colour visibility\n * Calculated by:\n * - Using the brightness formula for both colours: https://www.w3.org/TR/AERT/#color-contrast\n * - Adding 125 to the brightness of the black foreground colour - RGB(11, 12, 12)\n * - Subtracting 125 from the brightness of the white foreground colour - RGB(255, 255, 255)\n */\nexport const BLACK_MIN_COLOR_BRIGHTNESS = 136.701;\nexport const WHITE_MAX_COLOR_BRIGHTNESS = 130;\n//# sourceMappingURL=constants.js.map\n","import { IcThemeForegroundEnum, } from \"../utils/types\";\nimport { IC_BLOCK_COLOR_COMPONENTS, IC_BLOCK_COLOR_EXCEPTIONS, IC_FIXED_COLOR_COMPONENTS, } from \"./constants\";\nconst DARK_MODE_THRESHOLD = 133.3505;\nconst icInput = \"ic-input\";\nconst linkIcInput = \"input.ic-input\";\n/**\n * converts an enum of strings into an array of strings\n */\nexport const stringEnumToArray = (theEnum) => {\n const arr = [];\n Object.values(theEnum).forEach((val) => {\n if (isNaN(Number(val))) {\n const str = val;\n arr.push(str);\n }\n });\n return arr;\n};\n/**\n * Used to inherit global attributes set on the host. Called in componentWillLoad and assigned\n * to a variable that is later used in the render function.\n *\n * This does not need to be reactive as changing attributes on the host element\n * does not trigger a re-render.\n */\nexport const inheritAttributes = (element, attributes = []) => {\n const attributeObject = {};\n attributes.forEach((attr) => {\n if (element.hasAttribute(attr)) {\n const value = element.getAttribute(attr);\n if (value !== null) {\n attributeObject[attr] = value;\n }\n element.removeAttribute(attr);\n }\n });\n return attributeObject;\n};\nexport const debounceEvent = (event, wait) => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const original = event._original || event;\n return {\n _original: event,\n emit: debounce(original.emit.bind(original), wait),\n };\n};\nexport const debounce = (func, wait = 0) => {\n let timer;\n return (...args) => {\n clearTimeout(timer);\n timer = setTimeout(func, wait, ...args);\n };\n};\n/**\n * This method is used to add a hidden input to a host element that contains\n * a Shadow DOM. It does not add the input inside of the Shadow root which\n * allows it to be picked up inside of forms. It should contain the same\n * values as the host element.\n *\n * @param always Add a hidden input even if the container does not use Shadow\n * @param container The element where the input will be added\n * @param name The name of the input\n * @param value The value of the input\n * @param disabled If true, the input is disabled\n */\nexport const renderHiddenInput = (always, container, name, value, disabled) => {\n if (name !== undefined && (always || hasShadowDom(container))) {\n const inputs = container.querySelectorAll(linkIcInput);\n const inputEls = Array.from(inputs);\n const filtered = inputEls.filter((el) => container === el.parentElement);\n let input = filtered[0];\n if (input === null || input === undefined) {\n input = container.ownerDocument.createElement(\"input\");\n input.type = \"hidden\";\n input.classList.add(icInput);\n container.appendChild(input);\n }\n input.disabled = disabled;\n input.name = name;\n if (value instanceof Date) {\n input.value = value ? value.toISOString() : null;\n }\n else {\n input.value = value || \"\";\n }\n }\n};\n/**\n * This method is used to add a hidden file input to a host element that contains\n * a Shadow DOM. It does not add the input inside of the Shadow root which\n * allows it to be picked up inside of forms. It should contain the same\n * values as the host element.\n *\n * @param event: The event that is emitted once a file is selected.\n * @param container The element where the input will be added\n * @param multiple If true, multiple files can be selected\n * @param name The name of the input\n * @param value The value of the input\n * @param disabled If true, the input is disabled\n * @param accept A string of the accepted files\n */\nexport const renderFileHiddenInput = (event, container, multiple, name, value, disabled, accept) => {\n if (name !== undefined && hasShadowDom(container)) {\n const inputs = container.querySelectorAll(linkIcInput);\n const inputEls = Array.from(inputs);\n const filtered = inputEls.filter((el) => container === el.parentElement);\n let input = filtered[0];\n if (input === null || input === undefined) {\n input = container.ownerDocument.createElement(\"input\");\n input.classList.add(icInput);\n container.appendChild(input);\n }\n input.type = \"file\";\n input.hidden = true;\n input.multiple = multiple;\n input.name = name;\n input.files = value;\n input.disabled = disabled;\n input.accept = accept;\n input.onchange = () => {\n event.emit(input.files);\n };\n input.click();\n }\n};\nexport const removeHiddenInput = (container) => {\n const inputs = container.querySelectorAll(\"input.ic-input\");\n const inputEls = Array.from(inputs);\n const filtered = inputEls.filter((el) => container === el.parentElement);\n const input = filtered[0];\n input === null || input === void 0 ? void 0 : input.remove();\n};\nexport const hasShadowDom = (el) => !!el.shadowRoot && !!el.attachShadow;\nexport const getInputHelperTextID = (id) => id + \"-helper-text\";\nexport const getInputValidationTextID = (id) => id + \"-validation-text\";\nexport const getInputDescribedByText = (inputId, helperText, validationText) => `${helperText ? getInputHelperTextID(inputId) : \"\"} ${validationText ? getInputValidationTextID(inputId) : \"\"}`.trim();\n/**\n * This method helps to understand the context in which a component exists,\n * to assist with choosing appropriate foreground colours to use. For example,\n * this method will help you use the 'white' version of a button if it's within\n * a block colour element using white foreground text.\n *\n * This only works for components/elements passed via <slot> and not if they\n * are part of an IC component.\n *\n * \"\"\n * @returns IcThemeForeground depending on the context\n */\nexport const getThemeFromContext = (el, themeFromEvent = null) => {\n var _a;\n const parentElement = el.parentElement || el.getRootNode().host.parentElement;\n const blockColorParent = parentElement.closest(IC_BLOCK_COLOR_COMPONENTS.join(\",\"));\n // If within a block color component\n if (blockColorParent !== null) {\n const parentTag = blockColorParent.tagName.toLowerCase();\n const currentTag = el.tagName.toLowerCase();\n if ((_a = IC_BLOCK_COLOR_EXCEPTIONS[parentTag]) === null || _a === void 0 ? void 0 : _a.includes(currentTag)) {\n return IcThemeForegroundEnum.Default;\n }\n else if (themeFromEvent !== null &&\n !IC_FIXED_COLOR_COMPONENTS.includes(parentTag)) {\n return themeFromEvent;\n }\n else if (blockColorParent.classList.contains(IcThemeForegroundEnum.Dark)) {\n return IcThemeForegroundEnum.Dark;\n }\n return IcThemeForegroundEnum.Light;\n }\n return IcThemeForegroundEnum.Default;\n};\n/**\n * Checks if the current device is a mobile or tablet device.\n * @returns {boolean} Returns true if the device is a mobile or tablet device, otherwise returns false.\n */\nexport const isMobileOrTablet = () => \"maxTouchPoints\" in navigator && \"userAgent\" in navigator\n ? navigator.maxTouchPoints > 0 &&\n /iPad|iPhone|iPod|Android|webOS|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)\n : false;\n/**\n * Will create a button within the lightDOM which interacts with the parent form.\n * This is required as buttons within the shadowDOM will not invoke a submit or reset\n *\n * @param form - parent form element which contains shadowDom button\n * @param button - shadowDOM button\n */\nexport const handleHiddenFormButtonClick = (form, button) => {\n const hiddenFormButton = document.createElement(\"button\");\n hiddenFormButton.setAttribute(\"type\", button.type);\n hiddenFormButton.style.display = \"none\";\n form.appendChild(hiddenFormButton);\n hiddenFormButton.click();\n hiddenFormButton.remove();\n};\nexport const isEmptyString = (value) => value ? value.trim().length === 0 : true;\n// A helper function that checks if a prop has been defined\nexport const isPropDefined = (prop) => prop !== undefined ? prop : null;\n/**\n * Extracts the label using the value from an object. Requires the object to have a label and value property.\n * @param value - value from object\n * @param options - list of menu items\n * @returns - label corresponding to value\n */\nexport const getLabelFromValue = (value, options, valueField = \"value\", labelField = \"label\") => {\n const ungroupedOptions = [];\n if (options.length > 0 && options.map) {\n options.map((option) => {\n if (option.children) {\n option.children.map((option) => ungroupedOptions.push(option));\n }\n else {\n ungroupedOptions.push(option);\n }\n });\n const matchingValue = ungroupedOptions.find((option) => option[valueField] === value);\n if (matchingValue !== undefined)\n return matchingValue[labelField];\n }\n return undefined;\n};\n/**\n * Filters the options based on the search string.\n * @param options - array of options\n * @param includeDescriptions - determines whether option descriptions are included when filtering options\n * @param searchString - string used to filter the options\n * @param position - whether the search string matches the start of or anywhere in the options\n * @returns filtered array of options\n */\nexport const getFilteredMenuOptions = (options, includeDescriptions, searchString, position, labelField = \"label\") => options.filter((option) => {\n var _a;\n const label = option[labelField].toLowerCase();\n const description = (_a = option.description) === null || _a === void 0 ? void 0 : _a.toLowerCase();\n const lowerSearchString = searchString.toLowerCase();\n return position === \"anywhere\"\n ? includeDescriptions\n ? label.includes(lowerSearchString) ||\n (description === null || description === void 0 ? void 0 : description.includes(lowerSearchString))\n : label.includes(lowerSearchString)\n : includeDescriptions\n ? label.startsWith(lowerSearchString) ||\n (description === null || description === void 0 ? void 0 : description.startsWith(lowerSearchString))\n : label.startsWith(lowerSearchString);\n});\nexport const deviceSizeMatches = (size) => window.matchMedia(`(max-width: ${size}px)`).matches;\nexport const getCurrentDeviceSize = () => {\n if (deviceSizeMatches(DEVICE_SIZES.S)) {\n return DEVICE_SIZES.S;\n }\n if (deviceSizeMatches(DEVICE_SIZES.M)) {\n return DEVICE_SIZES.M;\n }\n if (deviceSizeMatches(DEVICE_SIZES.L)) {\n return DEVICE_SIZES.L;\n }\n if (deviceSizeMatches(DEVICE_SIZES.XL)) {\n return DEVICE_SIZES.XL;\n }\n //fallback needed as all of above get initialised to 0 in jest tests\n return DEVICE_SIZES.UNDEFINED;\n};\nexport const getCssProperty = (cssVar) => getComputedStyle(document.documentElement).getPropertyValue(cssVar);\n/**\n * Returns the brightness of the theme colour, calculated by using the theme RGB CSS values by:\n * - Multiplying each RGB value by a set number: https://www.w3.org/TR/AERT/#color-contrast\n * - Adding them together and dividing by 1000\n * This is a similar calculation to its CSS counterpart: \"--ic-theme-text\"\n * @returns number representing the brightness of the theme colour\n */\nexport const getThemeColorBrightness = () => {\n const themeRed = getCssProperty(\"--ic-theme-primary-r\");\n const themeGreen = getCssProperty(\"--ic-theme-primary-g\");\n const themeBlue = getCssProperty(\"--ic-theme-primary-b\");\n return ((parseInt(themeRed) * 299 +\n parseInt(themeGreen) * 587 +\n parseInt(themeBlue) * 114) /\n 1000);\n};\n/**\n * Returns if dark or light foreground colors should be used for color contrast reasons\n * @returns \"dark\" or \"light\"\n * @param brightness - Optional custom brightness value. Defaults to `getThemeColorBrightness`\n */\nexport const getThemeForegroundColor = (brightness = getThemeColorBrightness()) => brightness > DARK_MODE_THRESHOLD\n ? IcThemeForegroundEnum.Dark\n : IcThemeForegroundEnum.Light;\nexport const getSlot = (element, name) => {\n if (element && element.querySelector) {\n return element.querySelector(`[slot=\"${name}\"]`);\n }\n return null;\n};\nexport const slotHasContent = (element, name) => getSlot(element, name) !== null;\nexport const getSlotContent = (element, name) => {\n const slot = getSlot(element, name);\n if (slot) {\n return getSlotElements(slot);\n }\n return null;\n};\nexport const getSlotElements = (slot) => {\n const slotContent = slot.firstElementChild;\n if (slotContent !== null) {\n const elements = slotContent.assignedElements\n ? slotContent.assignedElements()\n : slotContent.childNodes;\n return elements.length ? elements : slot.tagName ? [slot] : null;\n }\n else {\n //check for single element\n return slot === null ? null : [slot];\n }\n};\nexport const getNavItemParentDetails = ({ parentElement, }) => {\n let navType = { navType: \"\", parent: null };\n switch (parentElement.tagName) {\n case \"IC-NAVIGATION-GROUP\":\n navType = getNavItemParentDetails(parentElement);\n break;\n case \"IC-TOP-NAVIGATION\":\n navType = { navType: \"top\", parent: parentElement };\n break;\n case \"IC-SIDE-NAVIGATION\":\n navType = { navType: \"side\", parent: parentElement };\n break;\n case \"IC-PAGE-HEADER\":\n navType = { navType: \"page-header\", parent: null };\n break;\n }\n return navType;\n};\nexport const DEVICE_SIZES = {\n XS: Number(getCssProperty(\"--ic-breakpoint-xs\").replace(\"px\", \"\")), // 0\n S: Number(getCssProperty(\"--ic-breakpoint-sm\").replace(\"px\", \"\")), // 576\n M: Number(getCssProperty(\"--ic-breakpoint-md\").replace(\"px\", \"\")), // 768\n L: Number(getCssProperty(\"--ic-breakpoint-lg\").replace(\"px\", \"\")), // 992\n XL: Number(getCssProperty(\"--ic-breakpoint-xl\").replace(\"px\", \"\")), // 1200\n UNDEFINED: 1200,\n};\nexport const hasValidationStatus = (status, disabled) => !!status && !disabled;\nexport const isSlotUsed = ({ children }, slotName) => Array.from(children).some((child) => child.getAttribute(\"slot\") === slotName);\n// added as a common method to allow detection of gatsby hydration issue, where (camelCase) props are initially undefined & then update\n// with a value. Allows a callback function to be executed when this is the case\nexport const onComponentPropUndefinedChange = (oldValue, newValue, callback) => {\n if (oldValue === undefined && newValue !== oldValue) {\n callback();\n }\n};\nexport const onComponentRequiredPropUndefined = (props, component) => {\n props.forEach(({ prop, propName }) => {\n if (prop === null || prop === undefined) {\n console.error(`No ${propName} specified for ${component} component - prop '${propName}' (web components) / '${kebabToCamelCase(propName)}' (react) required`);\n }\n });\n};\nexport const kebabToCamelCase = (kebabCase) => kebabCase\n .toLowerCase()\n .split(\"-\")\n .map((word, index) => index === 0\n ? word\n : `${word.substring(0, 1).toUpperCase()}${word.substring(1)}`)\n .join(\"\");\nexport const checkResizeObserver = (callbackFn) => {\n if (typeof window !== \"undefined\" &&\n typeof window.ResizeObserver !== \"undefined\") {\n callbackFn();\n }\n};\nconst hex2dec = (v) => parseInt(v, 16);\nexport const hexToRgba = (hex) => {\n const hexChars = hex\n .replace(\"#\", \"\")\n .split(\"\")\n .map((char) => char.repeat(2));\n return {\n r: hex2dec(hex.length === 4 ? hexChars[0] : hex.slice(1, 3)),\n g: hex2dec(hex.length === 4 ? hexChars[1] : hex.slice(3, 5)),\n b: hex2dec(hex.length === 4 ? hexChars[2] : hex.slice(5)),\n a: 1,\n };\n};\nexport const rgbaStrToObj = (rgbaStr) => {\n const isRGBA = rgbaStr.slice(3, 4).toLowerCase() === \"a\";\n const rgbValues = rgbaStr\n .substring(isRGBA ? 5 : 4, rgbaStr.length - 1)\n .replace(/ /g, \"\")\n .split(\",\")\n .map(Number);\n return {\n r: rgbValues[0],\n g: rgbValues[1],\n b: rgbValues[2],\n a: isRGBA ? rgbValues[3] : 1,\n };\n};\nexport const elementOverflowsX = ({ scrollWidth, clientWidth, }) => scrollWidth > clientWidth;\nexport const hasClassificationBanner = () => !!document.querySelector(\"ic-classification-banner:not([inline='true'])\");\nexport const addFormResetListener = (el, callbackFn) => {\n var _a;\n (_a = el.closest(\"FORM\")) === null || _a === void 0 ? void 0 : _a.addEventListener(\"reset\", callbackFn);\n};\nexport const removeFormResetListener = (el, callbackFn) => {\n var _a;\n (_a = el.closest(\"FORM\")) === null || _a === void 0 ? void 0 : _a.removeEventListener(\"reset\", callbackFn);\n};\nexport const pxToRem = (px, base = 16) => `${(1 / base) * parseInt(px)}rem`;\nexport const removeDisabledFalse = (disabled, element) => {\n if (!disabled) {\n element.removeAttribute(\"disabled\");\n }\n};\nexport const isMacDevice = () => window.navigator.userAgent.toUpperCase().indexOf(\"MAC\") >= 0;\nexport const isNumeric = (value) => /^-?\\d+$/.test(value);\nexport async function waitForHydration() {\n const elements = document.getElementsByTagName(\"*\");\n for (let i = 0; i < elements.length; i++) {\n if (elements[i].tagName.startsWith(\"IC-\")) {\n if (elements[i].classList.contains(\"hydrated\")) {\n return true;\n }\n }\n else {\n return false;\n }\n }\n return false;\n}\nexport const convertToRGBA = (color) => {\n const firstChar = color === null || color === void 0 ? void 0 : color.slice(0, 1).toLowerCase();\n return firstChar === \"#\"\n ? hexToRgba(color)\n : firstChar === \"r\"\n ? rgbaStrToObj(color)\n : null;\n};\nexport const capitalize = (text) => {\n return text.charAt(0).toUpperCase() + text.slice(1);\n};\n//# sourceMappingURL=helpers.js.map\n"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{r as s,h as i,H as t,g as h}from"./p-8455d1bb.js";import{D as e,e as l,f as a}from"./p-1b4f852c.js";import"./p-fd186591.js";const r=":host{display:block}:host ol{display:flex;list-style-type:none;align-items:center;flex-wrap:wrap;padding:0;margin:0}:host(.back) ol ::slotted(ic-breadcrumb){display:none}:host(.back) ol ::slotted(ic-breadcrumb.show){display:flex}:host(.collapsed) ol ::slotted(ic-breadcrumb.hide){display:none;opacity:0;visibility:hidden}:host(.collapsed) ol ::slotted(ic-breadcrumb.visuallyhidden){display:block;opacity:0;transition:all var(--ic-easing-transition-slow)}:host(.collapsed) ol ::slotted(ic-breadcrumb.fade){opacity:1}";const o=class{constructor(i){s(this,i);this.ADD_CLASS_DELAY=50;this.IC_BREADCRUMB="ic-breadcrumb";this.resizeObserver=null;this.SHOW_BACK_ICON="show-back-icon";this.setBackBreadcrumb=()=>{if(this.backBreadcrumbOnly){this.setBackBreadcrumbAttr()}};this.setBackBreadcrumbAttr=()=>{if(this.lastParentBreadcrumb){this.lastParentBreadcrumb.classList.add("show");this.lastParentBreadcrumb.setAttribute(this.SHOW_BACK_ICON,"true")}};this.getLastParentBreadcrumb=()=>{const s=Array.from(this.el.querySelectorAll(this.IC_BREADCRUMB));if(s.length===1){return null}this.breadcrumbs=s.filter((s=>!s.getAttribute("current")));this.breadcrumb=this.breadcrumbs[this.breadcrumbs.length-1];return this.breadcrumb};this.lastParentBreadcrumb=this.getLastParentBreadcrumb();this.setDefaultBreadcrumbs=()=>{const s=Array.from(this.el.querySelectorAll(this.IC_BREADCRUMB));s.forEach((s=>{s.setAttribute(this.SHOW_BACK_ICON,"false")}))};this.setCollapsed=()=>{if(this.collapsed){const s=Array.from(this.el.querySelectorAll(this.IC_BREADCRUMB));this.collapsedBreadcrumbs=s.splice(1,s.length-2).filter((s=>!s.classList.contains("collapsed-breadcrumb-wrapper")));this.collapsedBreadcrumbs.forEach((s=>s.classList.add("hide")));const i=s[0];if(i){i.insertAdjacentElement("afterend",this.collapsedBreadcrumbWrapper)}}};this.clickHandler=()=>{this.handleHiddenCollapsedBreadcrumbs(this.collapsedBreadcrumbWrapper)};this.renderCollapsedBreadcrumb=()=>{this.collapsedBreadcrumbWrapper=document.createElement("ic-breadcrumb");this.collapsedBreadcrumbWrapper.classList.add("collapsed-breadcrumb-wrapper");this.collapsedBreadcrumbEl=document.createElement("button");const s=document.createElement("span");s.id="collapsed-button-label";s.innerText="Collapsed breadcrumbs";s.className="hide";this.collapsedBreadcrumbEl.setAttribute("aria-labelledby","collapsed-button-label");const i=document.createElement("span");i.id="collapsed-button-described";i.innerText="Select to view collapsed breadcrumbs";i.className="hide";this.collapsedBreadcrumbEl.setAttribute("aria-describedby","collapsed-button-described");this.collapsedBreadcrumbEl.id="collapsed-ellipsis";this.collapsedBreadcrumbEl.innerText="...";this.collapsedBreadcrumbEl.classList.add("collapsed-breadcrumb");this.collapsedBreadcrumbEl.addEventListener("click",this.clickHandler);this.collapsedBreadcrumbWrapper.append(i);this.collapsedBreadcrumbWrapper.append(s);this.collapsedBreadcrumbWrapper.append(this.collapsedBreadcrumbEl);return this.collapsedBreadcrumbWrapper};this.handleHiddenCollapsedBreadcrumbs=s=>{s.remove();this.collapsedBreadcrumbs.forEach((s=>{s.classList.add("visuallyhidden");s.classList.remove("hide");setTimeout((()=>{s.classList.add("fade")}),this.ADD_CLASS_DELAY);this.removeVisuallyHiddenClass(s)}));this.expandedBreadcrumbs=true;this.collapsedBreadcrumbs[0].setFocus()};this.transitionendHandler=s=>{if(s.propertyName==="opacity"){s.target.classList.remove("visuallyhidden")}};this.removeVisuallyHiddenClass=s=>{s.addEventListener("transitionend",this.transitionendHandler)};this.setLastParentCollapsedBackBreadcrumb=()=>{this.setBackBreadcrumbAttr();this.lastParentBreadcrumb.classList.remove("hide")};this.revertLastParentCollapsedBreadcrumb=()=>{this.lastParentBreadcrumb.setAttribute(this.SHOW_BACK_ICON,"false")};this.resizeObserverCallback=s=>{if(s!==this.deviceSize){this.deviceSize=s;if(this.deviceSize<=e.S){this.el.setAttribute("back-breadcrumb-only","true");if(this.collapsed){this.setLastParentCollapsedBackBreadcrumb()}else{this.setBackBreadcrumb()}}else{this.el.setAttribute("back-breadcrumb-only","false");if(this.collapsed&&this.breadcrumbs&&this.breadcrumbs.length>2){this.revertLastParentCollapsedBreadcrumb();if(this.expandedBreadcrumbs){this.setDefaultBreadcrumbs()}else{this.setCollapsed()}}else{this.setDefaultBreadcrumbs()}}}};this.runResizeObserver=()=>{this.resizeObserver=new ResizeObserver((()=>{const s=l();this.resizeObserverCallback(s)}));this.resizeObserver.observe(this.el)};this.deviceSize=e.XL;this.expandedBreadcrumbs=false;this.appearance="default";this.backBreadcrumbOnly=false;this.collapsed=false}componentWillLoad(){const s=Array.from(this.el.querySelectorAll(this.IC_BREADCRUMB));if(this.appearance!=="default"){s.forEach((s=>{s.setAttribute("appearance",this.appearance)}))}if(this.backBreadcrumbOnly){this.setBackBreadcrumb()}else{a(this.runResizeObserver)}if(this.collapsed){this.collapsedBreadcrumbWrapper=this.renderCollapsedBreadcrumb();if(s.length>2){if(l()===e.S){this.setLastParentCollapsedBackBreadcrumb()}else{this.setCollapsed()}}}}disconnectedCallback(){this.breadcrumb&&this.breadcrumb.removeEventListener("transitionend",this.transitionendHandler);this.collapsedBreadcrumbEl&&this.collapsedBreadcrumbEl.removeEventListener("click",this.clickHandler)}render(){return i(t,{class:{back:this.backBreadcrumbOnly,collapsed:this.collapsed}},i("nav",{"aria-label":"breadcrumbs"},i("ol",null,i("slot",null))))}get el(){return h(this)}};o.style=r;export{o as ic_breadcrumb_group};
2
- //# sourceMappingURL=p-60494f69.entry.js.map