@ukic/web-components 2.1.0-beta.9 → 2.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1216) hide show
  1. package/dist/cjs/OpenInNew-f9958725.js +7 -0
  2. package/dist/cjs/OpenInNew-f9958725.js.map +1 -0
  3. package/dist/cjs/chevron-icon-2bb3a907.js +10 -0
  4. package/dist/cjs/chevron-icon-2bb3a907.js.map +1 -0
  5. package/dist/cjs/{close-icon-8ccb0163.js → close-icon-04be4880.js} +2 -2
  6. package/dist/cjs/close-icon-04be4880.js.map +1 -0
  7. package/dist/cjs/core.cjs.js +10 -3
  8. package/dist/cjs/core.cjs.js.map +1 -1
  9. package/dist/cjs/{helpers-6eb26e7a.js → helpers-3811d14b.js} +43 -37
  10. package/dist/cjs/helpers-3811d14b.js.map +1 -0
  11. package/dist/cjs/ic-alert.cjs.entry.js +12 -12
  12. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  13. package/dist/cjs/ic-back-to-top.cjs.entry.js +5 -5
  14. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +39 -33
  16. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ic-breadcrumb.cjs.entry.js +14 -13
  18. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ic-button_3.cjs.entry.js +280 -120
  20. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-card.cjs.entry.js +46 -45
  22. package/dist/cjs/ic-card.cjs.entry.js.map +1 -1
  23. package/dist/cjs/ic-checkbox-group.cjs.entry.js +25 -23
  24. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-checkbox.cjs.entry.js +47 -29
  26. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ic-chip.cjs.entry.js +18 -15
  28. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ic-classification-banner.cjs.entry.js +1 -1
  30. package/dist/cjs/ic-data-entity.cjs.entry.js +2 -2
  31. package/dist/cjs/ic-data-entity.cjs.entry.js.map +1 -1
  32. package/dist/cjs/ic-data-row.cjs.entry.js +38 -24
  33. package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
  34. package/dist/cjs/ic-dialog.cjs.entry.js +295 -0
  35. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -0
  36. package/dist/cjs/ic-divider.cjs.entry.js +3 -3
  37. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  38. package/dist/cjs/ic-empty-state.cjs.entry.js +37 -0
  39. package/dist/cjs/ic-empty-state.cjs.entry.js.map +1 -0
  40. package/dist/cjs/ic-footer-link-group.cjs.entry.js +18 -18
  41. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  42. package/dist/cjs/ic-footer-link.cjs.entry.js +23 -17
  43. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  44. package/dist/cjs/ic-footer.cjs.entry.js +26 -21
  45. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ic-hero.cjs.entry.js +23 -21
  47. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  48. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +45 -26
  49. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  50. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +299 -159
  51. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  52. package/dist/cjs/ic-input-label_2.cjs.entry.js +11 -11
  53. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  54. package/dist/cjs/ic-link.cjs.entry.js +22 -23
  55. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  56. package/dist/cjs/ic-menu-group.cjs.entry.js +24 -0
  57. package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -0
  58. package/dist/cjs/ic-menu-item.cjs.entry.js +122 -0
  59. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -0
  60. package/dist/cjs/ic-navigation-button.cjs.entry.js +19 -19
  61. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  62. package/dist/cjs/ic-navigation-group.cjs.entry.js +113 -66
  63. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  64. package/dist/cjs/ic-navigation-item.cjs.entry.js +48 -42
  65. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  66. package/dist/cjs/ic-navigation-menu.cjs.entry.js +28 -34
  67. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  68. package/dist/cjs/ic-page-header.cjs.entry.js +24 -27
  69. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ic-pagination-item.cjs.entry.js +56 -0
  71. package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -0
  72. package/dist/cjs/ic-pagination.cjs.entry.js +227 -0
  73. package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -0
  74. package/dist/cjs/ic-popover-menu.cjs.entry.js +289 -0
  75. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -0
  76. package/dist/cjs/ic-radio-group.cjs.entry.js +43 -25
  77. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  78. package/dist/cjs/ic-radio-option.cjs.entry.js +39 -38
  79. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  80. package/dist/cjs/ic-search-bar.cjs.entry.js +181 -104
  81. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  82. package/dist/cjs/ic-section-container.cjs.entry.js +1 -1
  83. package/dist/cjs/ic-select.cjs.entry.js +349 -190
  84. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  85. package/dist/cjs/ic-side-navigation.cjs.entry.js +129 -91
  86. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  87. package/dist/cjs/ic-skeleton.cjs.entry.js +4 -4
  88. package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
  89. package/dist/cjs/ic-status-tag.cjs.entry.js +6 -6
  90. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  91. package/dist/cjs/ic-step.cjs.entry.js +10 -10
  92. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  93. package/dist/cjs/ic-stepper.cjs.entry.js +15 -15
  94. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  95. package/dist/cjs/ic-switch.cjs.entry.js +20 -19
  96. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  97. package/dist/cjs/ic-tab-context.cjs.entry.js +68 -32
  98. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  99. package/dist/cjs/ic-tab-group.cjs.entry.js +5 -4
  100. package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
  101. package/dist/cjs/ic-tab-panel.cjs.entry.js +15 -4
  102. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  103. package/dist/cjs/ic-tab.cjs.entry.js +32 -7
  104. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  105. package/dist/cjs/ic-text-field.cjs.entry.js +102 -72
  106. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  107. package/dist/cjs/ic-theme.cjs.entry.js +2 -2
  108. package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
  109. package/dist/cjs/ic-toast-region.cjs.entry.js +13 -13
  110. package/dist/cjs/ic-toast-region.cjs.entry.js.map +1 -1
  111. package/dist/cjs/ic-toast.cjs.entry.js +61 -57
  112. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  113. package/dist/cjs/ic-top-navigation.cjs.entry.js +49 -45
  114. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  115. package/dist/cjs/ic-typography.cjs.entry.js +105 -5
  116. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  117. package/dist/cjs/{index-f79a4e53.js → index-2a0c6769.js} +260 -43
  118. package/dist/cjs/index-2a0c6769.js.map +1 -0
  119. package/dist/cjs/loader.cjs.js +4 -3
  120. package/dist/cjs/loader.cjs.js.map +1 -1
  121. package/dist/cjs/{popper-11d5f714.js → popper-d7adcfc6.js} +10 -17
  122. package/dist/cjs/popper-d7adcfc6.js.map +1 -0
  123. package/dist/cjs/types-3eb02246.js.map +1 -1
  124. package/dist/collection/assets/close-icon.svg +1 -1
  125. package/dist/collection/assets/error-icon.svg +3 -2
  126. package/dist/collection/assets/hamburger-menu-icon.svg +1 -1
  127. package/dist/collection/assets/info-icon.svg +3 -2
  128. package/dist/collection/assets/neutral-icon.svg +4 -3
  129. package/dist/collection/assets/pagination-first-last.svg +3 -0
  130. package/dist/collection/assets/pagination-next-previous.svg +3 -0
  131. package/dist/collection/assets/success-icon.svg +3 -2
  132. package/dist/collection/assets/warning-icon.svg +3 -2
  133. package/dist/collection/collection-manifest.json +18 -11
  134. package/dist/collection/components/ic-alert/ic-alert.css +10 -10
  135. package/dist/collection/components/ic-alert/ic-alert.js +50 -50
  136. package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
  137. package/dist/collection/components/ic-alert/{ic-alert.test.a11y.js → test/a11y/ic-alert.test.a11y.js} +1 -1
  138. package/dist/collection/components/ic-alert/test/a11y/ic-alert.test.a11y.js.map +1 -0
  139. package/dist/collection/components/ic-alert/test/basic/ic-alert.e2e.js +16 -0
  140. package/dist/collection/components/ic-alert/test/basic/ic-alert.e2e.js.map +1 -0
  141. package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js +182 -0
  142. package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js.map +1 -0
  143. package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +3 -3
  144. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +4 -4
  145. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js.map +1 -1
  146. package/dist/collection/components/ic-back-to-top/test/a11y/ic-back-to-top.test.a11y.js.map +1 -0
  147. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.e2e.js +68 -0
  148. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.e2e.js.map +1 -0
  149. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js +123 -0
  150. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js.map +1 -0
  151. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.css +19 -4
  152. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +28 -27
  153. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js.map +1 -1
  154. package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js +118 -0
  155. package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js.map +1 -0
  156. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js +37 -31
  157. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js.map +1 -1
  158. package/dist/collection/components/ic-breadcrumb-group/{ic-breadcrumb-group.test.a11y.js → test/a11y/ic-breadcrumb-group.test.a11y.js} +1 -1
  159. package/dist/collection/components/ic-breadcrumb-group/test/a11y/ic-breadcrumb-group.test.a11y.js.map +1 -0
  160. package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group-test-examples.js.map +1 -0
  161. package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.e2e.js +41 -0
  162. package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.e2e.js.map +1 -0
  163. package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.spec.js +181 -0
  164. package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.spec.js.map +1 -0
  165. package/dist/collection/components/ic-button/ic-button.css +42 -11
  166. package/dist/collection/components/ic-button/ic-button.js +291 -119
  167. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  168. package/dist/collection/components/ic-button/ic-button.types.js.map +1 -1
  169. package/dist/collection/components/ic-button/{ic-button.test.a11y.js → test/a11y/ic-button.test.a11y.js} +1 -1
  170. package/dist/collection/components/ic-button/test/a11y/ic-button.test.a11y.js.map +1 -0
  171. package/dist/collection/components/ic-button/test/basic/ic-button.e2e.js +198 -0
  172. package/dist/collection/components/ic-button/test/basic/ic-button.e2e.js.map +1 -0
  173. package/dist/collection/components/ic-button/test/basic/ic-button.spec.js +271 -0
  174. package/dist/collection/components/ic-button/test/basic/ic-button.spec.js.map +1 -0
  175. package/dist/collection/components/ic-card/ic-card.css +35 -10
  176. package/dist/collection/components/ic-card/ic-card.js +123 -122
  177. package/dist/collection/components/ic-card/ic-card.js.map +1 -1
  178. package/dist/collection/components/ic-card/{ic-card.test.a11y.js → test/a11y/ic-card.test.a11y.js} +1 -1
  179. package/dist/collection/components/ic-card/test/a11y/ic-card.test.a11y.js.map +1 -0
  180. package/dist/collection/components/ic-card/test/basic/ic-card.e2e.js +23 -0
  181. package/dist/collection/components/ic-card/test/basic/ic-card.e2e.js.map +1 -0
  182. package/dist/collection/components/ic-card/test/basic/ic-card.spec.js +152 -0
  183. package/dist/collection/components/ic-card/test/basic/ic-card.spec.js.map +1 -0
  184. package/dist/collection/components/ic-checkbox/ic-checkbox.css +45 -8
  185. package/dist/collection/components/ic-checkbox/ic-checkbox.js +128 -66
  186. package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
  187. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.css +3 -3
  188. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +88 -64
  189. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  190. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.types.js.map +1 -1
  191. package/dist/collection/components/ic-checkbox-group/{ic-checkbox-group.test.a11y.js → test/a11y/ic-checkbox-group.test.a11y.js} +1 -1
  192. package/dist/collection/components/ic-checkbox-group/test/a11y/ic-checkbox-group.test.a11y.js.map +1 -0
  193. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.e2e.js +201 -0
  194. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.e2e.js.map +1 -0
  195. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js +203 -0
  196. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js.map +1 -0
  197. package/dist/collection/components/ic-chip/ic-chip.css +11 -10
  198. package/dist/collection/components/ic-chip/ic-chip.js +55 -52
  199. package/dist/collection/components/ic-chip/ic-chip.js.map +1 -1
  200. package/dist/collection/components/ic-chip/ic-chip.types.js.map +1 -1
  201. package/dist/collection/components/ic-chip/{ic-chip.test.a11y.js → test/a11y/ic-chip.test.a11y.js} +1 -1
  202. package/dist/collection/components/ic-chip/test/a11y/ic-chip.test.a11y.js.map +1 -0
  203. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js +110 -0
  204. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js.map +1 -0
  205. package/dist/collection/components/ic-classification-banner/{ic-classification-banner.test.a11y.js → test/a11y/ic-classification-banner.test.a11y.js} +1 -1
  206. package/dist/collection/components/ic-classification-banner/test/a11y/ic-classification-banner.test.a11y.js.map +1 -0
  207. package/dist/collection/components/ic-classification-banner/test/basic/ic-classification-banner.spec.js +140 -0
  208. package/dist/collection/components/ic-classification-banner/test/basic/ic-classification-banner.spec.js.map +1 -0
  209. package/dist/collection/components/ic-data-entity/ic-data-entity.css +1 -1
  210. package/dist/collection/components/ic-data-entity/{ic-data-entity.test.a11y.js → test/a11y/ic-data-entity.test.a11y.js} +1 -1
  211. package/dist/collection/components/ic-data-entity/test/a11y/ic-data-entity.test.a11y.js.map +1 -0
  212. package/dist/collection/components/ic-data-entity/test/basic/ic-data-entity.spec.js +161 -0
  213. package/dist/collection/components/ic-data-entity/test/basic/ic-data-entity.spec.js.map +1 -0
  214. package/dist/collection/components/ic-data-row/ic-data-row.css +1 -1
  215. package/dist/collection/components/ic-data-row/ic-data-row.js +51 -37
  216. package/dist/collection/components/ic-data-row/ic-data-row.js.map +1 -1
  217. package/dist/collection/components/ic-data-row/{ic-data-row.test.a11y.js → test/a11y/ic-data-row.test.a11y.js} +1 -1
  218. package/dist/collection/components/ic-data-row/test/a11y/ic-data-row.test.a11y.js.map +1 -0
  219. package/dist/collection/components/ic-data-row/test/basic/ic-data-row.spec.js +74 -0
  220. package/dist/collection/components/ic-data-row/test/basic/ic-data-row.spec.js.map +1 -0
  221. package/dist/collection/components/ic-dialog/ic-dialog.css +592 -0
  222. package/dist/collection/components/ic-dialog/ic-dialog.js +640 -0
  223. package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -0
  224. package/dist/collection/components/ic-dialog/test/a11y/ic-dialog.test.a11y.js +28 -0
  225. package/dist/collection/components/ic-dialog/test/a11y/ic-dialog.test.a11y.js.map +1 -0
  226. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.e2e.js +207 -0
  227. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.e2e.js.map +1 -0
  228. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js +520 -0
  229. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js.map +1 -0
  230. package/dist/collection/components/ic-divider/ic-divider.css +1 -1
  231. package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js +24 -0
  232. package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js.map +1 -0
  233. package/dist/collection/components/ic-empty-state/ic-empty-state.css +49 -0
  234. package/dist/collection/components/ic-empty-state/ic-empty-state.js +158 -0
  235. package/dist/collection/components/ic-empty-state/ic-empty-state.js.map +1 -0
  236. package/dist/collection/components/ic-empty-state/ic-empty-state.types.js +2 -0
  237. package/dist/collection/components/ic-empty-state/ic-empty-state.types.js.map +1 -0
  238. package/dist/collection/components/ic-empty-state/test/a11y/ic-empty-state.test.a11y.js +38 -0
  239. package/dist/collection/components/ic-empty-state/test/a11y/ic-empty-state.test.a11y.js.map +1 -0
  240. package/dist/collection/components/ic-empty-state/test/basic/ic-empty-state.spec.js +86 -0
  241. package/dist/collection/components/ic-empty-state/test/basic/ic-empty-state.spec.js.map +1 -0
  242. package/dist/collection/components/ic-footer/ic-footer.css +2 -2
  243. package/dist/collection/components/ic-footer/ic-footer.js +54 -49
  244. package/dist/collection/components/ic-footer/ic-footer.js.map +1 -1
  245. package/dist/collection/components/ic-footer/{ic-footer.test.a11y.js → test/a11y/ic-footer.test.a11y.js} +1 -1
  246. package/dist/collection/components/ic-footer/test/a11y/ic-footer.test.a11y.js.map +1 -0
  247. package/dist/collection/components/ic-footer/test/basic/ic-footer.e2e.js +50 -0
  248. package/dist/collection/components/ic-footer/test/basic/ic-footer.e2e.js.map +1 -0
  249. package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js +140 -0
  250. package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js.map +1 -0
  251. package/dist/collection/components/ic-footer-link/ic-footer-link.css +36 -4
  252. package/dist/collection/components/ic-footer-link/ic-footer-link.js +111 -15
  253. package/dist/collection/components/ic-footer-link/ic-footer-link.js.map +1 -1
  254. package/dist/collection/components/ic-footer-link/{ic-footer-link.test.a11y.js → test/a11y/ic-footer-link.test.a11y.js} +1 -1
  255. package/dist/collection/components/ic-footer-link/test/a11y/ic-footer-link.test.a11y.js.map +1 -0
  256. package/dist/collection/components/ic-footer-link/test/basic/ic-footer-link.spec.js +62 -0
  257. package/dist/collection/components/ic-footer-link/test/basic/ic-footer-link.spec.js.map +1 -0
  258. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js +18 -18
  259. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js.map +1 -1
  260. package/dist/collection/components/ic-footer-link-group/{ic-footer-link-group.test.a11y.js → test/a11y/ic-footer-link-group.test.a11y.js} +1 -1
  261. package/dist/collection/components/ic-footer-link-group/test/a11y/ic-footer-link-group.test.a11y.js.map +1 -0
  262. package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js +98 -0
  263. package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js.map +1 -0
  264. package/dist/collection/components/ic-hero/ic-hero.css +23 -22
  265. package/dist/collection/components/ic-hero/ic-hero.js +97 -95
  266. package/dist/collection/components/ic-hero/ic-hero.js.map +1 -1
  267. package/dist/collection/components/ic-hero/{ic-hero.test.a11y.js → test/a11y/ic-hero.test.a11y.js} +1 -1
  268. package/dist/collection/components/ic-hero/test/a11y/ic-hero.test.a11y.js.map +1 -0
  269. package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js +76 -0
  270. package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js.map +1 -0
  271. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.css +4 -8
  272. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +44 -25
  273. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js.map +1 -1
  274. package/dist/collection/components/ic-horizontal-scroll/{ic-horizontal-scroll.test.a11y.js → test/a11y/ic-horizontal-scroll.test.a11y.js} +1 -1
  275. package/dist/collection/components/ic-horizontal-scroll/test/a11y/ic-horizontal-scroll.test.a11y.js.map +1 -0
  276. package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js +180 -0
  277. package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js.map +1 -0
  278. package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +38 -9
  279. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +45 -45
  280. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js.map +1 -1
  281. package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js +117 -0
  282. package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js.map +1 -0
  283. package/dist/collection/components/ic-input-container/test/basic/ic-input-container.spec.js +38 -0
  284. package/dist/collection/components/ic-input-container/test/basic/ic-input-container.spec.js.map +1 -0
  285. package/dist/collection/components/ic-input-label/ic-input-label.css +0 -4
  286. package/dist/collection/components/ic-input-label/ic-input-label.js +51 -51
  287. package/dist/collection/components/ic-input-label/ic-input-label.js.map +1 -1
  288. package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js +98 -0
  289. package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js.map +1 -0
  290. package/dist/collection/components/ic-input-validation/ic-input-validation.css +1 -9
  291. package/dist/collection/components/ic-input-validation/ic-input-validation.js +41 -41
  292. package/dist/collection/components/ic-input-validation/ic-input-validation.js.map +1 -1
  293. package/dist/collection/components/ic-input-validation/test/basic/ic-input-validation.spec.js +89 -0
  294. package/dist/collection/components/ic-input-validation/test/basic/ic-input-validation.spec.js.map +1 -0
  295. package/dist/collection/components/ic-link/ic-link.css +16 -3
  296. package/dist/collection/components/ic-link/ic-link.js +55 -52
  297. package/dist/collection/components/ic-link/ic-link.js.map +1 -1
  298. package/dist/collection/components/ic-link/{ic-link.test.a11y.js → test/a11y/ic-link.test.a11y.js} +1 -1
  299. package/dist/collection/components/ic-link/test/a11y/ic-link.test.a11y.js.map +1 -0
  300. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js +203 -0
  301. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js.map +1 -0
  302. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.css +5 -5
  303. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +97 -89
  304. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js.map +1 -1
  305. package/dist/collection/components/ic-loading-indicator/{ic-loading-indicator.test.a11y.js → test/a11y/ic-loading-indicator.test.a11y.js} +1 -1
  306. package/dist/collection/components/ic-loading-indicator/test/a11y/ic-loading-indicator.test.a11y.js.map +1 -0
  307. package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.e2e.js +34 -0
  308. package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.e2e.js.map +1 -0
  309. package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.spec.js +141 -0
  310. package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.spec.js.map +1 -0
  311. package/dist/collection/components/ic-menu/ic-menu.css +47 -10
  312. package/dist/collection/components/ic-menu/ic-menu.js +521 -268
  313. package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
  314. package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js +657 -0
  315. package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js.map +1 -0
  316. package/dist/collection/components/ic-menu-group/ic-menu-group.css +465 -0
  317. package/dist/collection/components/ic-menu-group/ic-menu-group.js +45 -0
  318. package/dist/collection/components/ic-menu-group/ic-menu-group.js.map +1 -0
  319. package/dist/collection/components/ic-menu-group/test/basic/ic-menu-group.spec.js +94 -0
  320. package/dist/collection/components/ic-menu-group/test/basic/ic-menu-group.spec.js.map +1 -0
  321. package/dist/collection/components/ic-menu-item/ic-menu-item.css +628 -0
  322. package/dist/collection/components/ic-menu-item/ic-menu-item.js +394 -0
  323. package/dist/collection/components/ic-menu-item/ic-menu-item.js.map +1 -0
  324. package/dist/collection/components/ic-menu-item/ic-menu-item.types.js +2 -0
  325. package/dist/collection/components/ic-menu-item/ic-menu-item.types.js.map +1 -0
  326. package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js +108 -0
  327. package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js.map +1 -0
  328. package/dist/collection/components/ic-navigation-button/ic-navigation-button.css +5 -0
  329. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +57 -57
  330. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -1
  331. package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js +84 -0
  332. package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js.map +1 -0
  333. package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +8 -12
  334. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +127 -80
  335. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
  336. package/dist/collection/components/ic-navigation-group/{ic-navigation-group.test.a11y.js → test/a11y/ic-navigation-group.test.a11y.js} +1 -1
  337. package/dist/collection/components/ic-navigation-group/test/a11y/ic-navigation-group.test.a11y.js.map +1 -0
  338. package/dist/collection/components/ic-navigation-group/test/basic/ic-navigation-group.spec.js +309 -0
  339. package/dist/collection/components/ic-navigation-group/test/basic/ic-navigation-group.spec.js.map +1 -0
  340. package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +63 -17
  341. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +179 -83
  342. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
  343. package/dist/collection/components/ic-navigation-item/{ic-navigation-item.test.a11y.js → test/a11y/ic-navigation-item.test.a11y.js} +1 -1
  344. package/dist/collection/components/ic-navigation-item/test/a11y/ic-navigation-item.test.a11y.js.map +1 -0
  345. package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js +118 -0
  346. package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js.map +1 -0
  347. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.css +19 -18
  348. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +31 -37
  349. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js.map +1 -1
  350. package/dist/collection/components/ic-navigation-menu/test/basic/ic-navigation-menu.e2e.js +29 -0
  351. package/dist/collection/components/ic-navigation-menu/test/basic/ic-navigation-menu.e2e.js.map +1 -0
  352. package/dist/collection/components/ic-navigation-menu/test/basic/ic-navigation-menu.spec.js +176 -0
  353. package/dist/collection/components/ic-navigation-menu/test/basic/ic-navigation-menu.spec.js.map +1 -0
  354. package/dist/collection/components/ic-page-header/ic-page-header.css +3 -1
  355. package/dist/collection/components/ic-page-header/ic-page-header.js +65 -68
  356. package/dist/collection/components/ic-page-header/ic-page-header.js.map +1 -1
  357. package/dist/collection/components/ic-page-header/{ic-page-header.test.a11y.js → test/a11y/ic-page-header.test.a11y.js} +1 -1
  358. package/dist/collection/components/ic-page-header/test/a11y/ic-page-header.test.a11y.js.map +1 -0
  359. package/dist/collection/components/ic-page-header/test/basic/ic-page-header.e2e.js +177 -0
  360. package/dist/collection/components/ic-page-header/test/basic/ic-page-header.e2e.js.map +1 -0
  361. package/dist/collection/components/ic-page-header/test/basic/ic-page-header.spec.js +284 -0
  362. package/dist/collection/components/ic-page-header/test/basic/ic-page-header.spec.js.map +1 -0
  363. package/dist/collection/components/ic-pagination/ic-pagination.css +486 -0
  364. package/dist/collection/components/ic-pagination/ic-pagination.js +498 -0
  365. package/dist/collection/components/ic-pagination/ic-pagination.js.map +1 -0
  366. package/dist/collection/components/ic-pagination/ic-pagination.types.js +2 -0
  367. package/dist/collection/components/ic-pagination/ic-pagination.types.js.map +1 -0
  368. package/dist/collection/components/ic-pagination/test/a11y/ic-pagination.test.a11y.js +11 -0
  369. package/dist/collection/components/ic-pagination/test/a11y/ic-pagination.test.a11y.js.map +1 -0
  370. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.e2e.js +128 -0
  371. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.e2e.js.map +1 -0
  372. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js +335 -0
  373. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js.map +1 -0
  374. package/dist/collection/components/ic-pagination-item/ic-pagination-item.css +581 -0
  375. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +229 -0
  376. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js.map +1 -0
  377. package/dist/collection/components/ic-pagination-item/ic-pagination-item.types.js +2 -0
  378. package/dist/collection/components/ic-pagination-item/ic-pagination-item.types.js.map +1 -0
  379. package/dist/collection/components/ic-popover-menu/ic-popover-menu.css +548 -0
  380. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +485 -0
  381. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js.map +1 -0
  382. package/dist/collection/components/ic-popover-menu/test/a11y/ic-popover-menu.test.a11y.js +13 -0
  383. package/dist/collection/components/ic-popover-menu/test/a11y/ic-popover-menu.test.a11y.js.map +1 -0
  384. package/dist/collection/components/ic-popover-menu/test/basic/ic-popover-menu.e2e.js +30 -0
  385. package/dist/collection/components/ic-popover-menu/test/basic/ic-popover-menu.e2e.js.map +1 -0
  386. package/dist/collection/components/ic-popover-menu/test/basic/ic-popover-menu.spec.js +395 -0
  387. package/dist/collection/components/ic-popover-menu/test/basic/ic-popover-menu.spec.js.map +1 -0
  388. package/dist/collection/components/ic-radio-group/ic-radio-group.css +4 -4
  389. package/dist/collection/components/ic-radio-group/ic-radio-group.js +104 -80
  390. package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
  391. package/dist/collection/components/ic-radio-group/ic-radio-group.types.js +2 -0
  392. package/dist/collection/components/ic-radio-group/ic-radio-group.types.js.map +1 -0
  393. package/dist/collection/components/ic-radio-group/{ic-radio-group.test.a11y.js → test/a11y/ic-radio-group.test.a11y.js} +1 -1
  394. package/dist/collection/components/ic-radio-group/test/a11y/ic-radio-group.test.a11y.js.map +1 -0
  395. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.e2e.js +343 -0
  396. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.e2e.js.map +1 -0
  397. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js +303 -0
  398. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js.map +1 -0
  399. package/dist/collection/components/ic-radio-option/ic-radio-option.css +6 -6
  400. package/dist/collection/components/ic-radio-option/ic-radio-option.js +111 -96
  401. package/dist/collection/components/ic-radio-option/ic-radio-option.js.map +1 -1
  402. package/dist/collection/components/ic-search-bar/ic-search-bar.css +6 -10
  403. package/dist/collection/components/ic-search-bar/ic-search-bar.js +495 -301
  404. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  405. package/dist/collection/components/ic-search-bar/ic-search-bar.types.js.map +1 -1
  406. package/dist/collection/components/ic-search-bar/{ic-search-bar.test.a11y.js → test/a11y/ic-search-bar.test.a11y.js} +1 -1
  407. package/dist/collection/components/ic-search-bar/test/a11y/ic-search-bar.test.a11y.js.map +1 -0
  408. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.e2e.js +1118 -0
  409. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.e2e.js.map +1 -0
  410. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js +584 -0
  411. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js.map +1 -0
  412. package/dist/collection/components/ic-section-container/test/basic/ic-section-container.spec.js +69 -0
  413. package/dist/collection/components/ic-section-container/test/basic/ic-section-container.spec.js.map +1 -0
  414. package/dist/collection/components/ic-select/ic-select.css +17 -17
  415. package/dist/collection/components/ic-select/ic-select.js +630 -369
  416. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  417. package/dist/collection/components/ic-select/{ic-select.test.a11y.js → test/a11y/ic-select.test.a11y.js} +1 -1
  418. package/dist/collection/components/ic-select/test/a11y/ic-select.test.a11y.js.map +1 -0
  419. package/dist/collection/components/ic-select/test/basic/ic-select.e2e.js +1768 -0
  420. package/dist/collection/components/ic-select/test/basic/ic-select.e2e.js.map +1 -0
  421. package/dist/collection/components/ic-select/test/basic/ic-select.spec.js +1296 -0
  422. package/dist/collection/components/ic-select/test/basic/ic-select.spec.js.map +1 -0
  423. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +51 -44
  424. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +185 -129
  425. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  426. package/dist/collection/components/ic-side-navigation/{ic-side-navigation.test.a11y.js → test/a11y/ic-side-navigation.test.a11y.js} +1 -1
  427. package/dist/collection/components/ic-side-navigation/test/a11y/ic-side-navigation.test.a11y.js.map +1 -0
  428. package/dist/collection/components/ic-side-navigation/{ic-side-navigation-test-examples.js → test/basic/ic-side-navigation-test-examples.js} +90 -0
  429. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation-test-examples.js.map +1 -0
  430. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.e2e.js +432 -0
  431. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.e2e.js.map +1 -0
  432. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js +470 -0
  433. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js.map +1 -0
  434. package/dist/collection/components/ic-skeleton/ic-skeleton.js +22 -22
  435. package/dist/collection/components/ic-skeleton/ic-skeleton.js.map +1 -1
  436. package/dist/collection/components/ic-skeleton/{ic-skeleton.test.a11y.js → test/a11y/ic-skeleton.test.a11y.js} +1 -1
  437. package/dist/collection/components/ic-skeleton/test/a11y/ic-skeleton.test.a11y.js.map +1 -0
  438. package/dist/collection/components/ic-skeleton/test/basic/ic-skeleton.spec.js +89 -0
  439. package/dist/collection/components/ic-skeleton/test/basic/ic-skeleton.spec.js.map +1 -0
  440. package/dist/collection/components/ic-status-tag/ic-status-tag.css +14 -17
  441. package/dist/collection/components/ic-status-tag/ic-status-tag.js +40 -40
  442. package/dist/collection/components/ic-status-tag/ic-status-tag.js.map +1 -1
  443. package/dist/collection/components/ic-status-tag/{ic-status-tag.test.a11y.js → test/a11y/ic-status-tag.test.a11y.js} +1 -1
  444. package/dist/collection/components/ic-status-tag/test/a11y/ic-status-tag.test.a11y.js.map +1 -0
  445. package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js +43 -0
  446. package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js.map +1 -0
  447. package/dist/collection/components/ic-step/ic-step.css +6 -6
  448. package/dist/collection/components/ic-step/ic-step.js +127 -127
  449. package/dist/collection/components/ic-step/ic-step.js.map +1 -1
  450. package/dist/collection/components/ic-step/test/basic/ic-step.spec.js +176 -0
  451. package/dist/collection/components/ic-step/test/basic/ic-step.spec.js.map +1 -0
  452. package/dist/collection/components/ic-stepper/ic-stepper.js +41 -41
  453. package/dist/collection/components/ic-stepper/ic-stepper.js.map +1 -1
  454. package/dist/collection/components/ic-stepper/{ic-stepper.test.a11y.js → test/a11y/ic-stepper.test.a11y.js} +1 -1
  455. package/dist/collection/components/ic-stepper/test/a11y/ic-stepper.test.a11y.js.map +1 -0
  456. package/dist/collection/components/ic-stepper/test/basic/ic-stepper-test-examples.js.map +1 -0
  457. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.e2e.js +49 -0
  458. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.e2e.js.map +1 -0
  459. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js +706 -0
  460. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js.map +1 -0
  461. package/dist/collection/components/ic-switch/ic-switch.css +5 -5
  462. package/dist/collection/components/ic-switch/ic-switch.js +74 -73
  463. package/dist/collection/components/ic-switch/ic-switch.js.map +1 -1
  464. package/dist/collection/components/ic-switch/{ic-switch.test.a11y.js → test/a11y/ic-switch.test.a11y.js} +1 -1
  465. package/dist/collection/components/ic-switch/test/a11y/ic-switch.test.a11y.js.map +1 -0
  466. package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js +104 -0
  467. package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js.map +1 -0
  468. package/dist/collection/components/ic-tab/ic-tab.css +4 -4
  469. package/dist/collection/components/ic-tab/ic-tab.js +114 -31
  470. package/dist/collection/components/ic-tab/ic-tab.js.map +1 -1
  471. package/dist/collection/components/ic-tab/test/basic/ic-tab.e2e.js +32 -0
  472. package/dist/collection/components/ic-tab/test/basic/ic-tab.e2e.js.map +1 -0
  473. package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js +159 -0
  474. package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js.map +1 -0
  475. package/dist/collection/components/ic-tab-context/ic-tab-context.js +157 -77
  476. package/dist/collection/components/ic-tab-context/ic-tab-context.js.map +1 -1
  477. package/dist/collection/components/ic-tab-context/test/a11y/ic-tab-context.test.a11y.js.map +1 -0
  478. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.e2e.js +317 -0
  479. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.e2e.js.map +1 -0
  480. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js +390 -0
  481. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js.map +1 -0
  482. package/dist/collection/components/ic-tab-group/ic-tab-group.css +3 -3
  483. package/dist/collection/components/ic-tab-group/ic-tab-group.js +33 -29
  484. package/dist/collection/components/ic-tab-group/ic-tab-group.js.map +1 -1
  485. package/dist/collection/components/ic-tab-panel/ic-tab-panel.css +0 -4
  486. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +89 -34
  487. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js.map +1 -1
  488. package/dist/collection/components/ic-tab-panel/test/basic/ic-tab-panel.spec.js +65 -0
  489. package/dist/collection/components/ic-tab-panel/test/basic/ic-tab-panel.spec.js.map +1 -0
  490. package/dist/collection/components/ic-text-field/ic-text-field.css +1 -10
  491. package/dist/collection/components/ic-text-field/ic-text-field.js +456 -345
  492. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  493. package/dist/collection/components/ic-text-field/test/a11y/ic-text-field.test.a11y.js.map +1 -0
  494. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.e2e.js +98 -0
  495. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.e2e.js.map +1 -0
  496. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js +236 -0
  497. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js.map +1 -0
  498. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js +310 -0
  499. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js.map +1 -0
  500. package/dist/collection/components/ic-theme/ic-theme.js.map +1 -1
  501. package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js +72 -0
  502. package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js.map +1 -0
  503. package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js +77 -0
  504. package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js.map +1 -0
  505. package/dist/collection/components/ic-toast/ic-toast.css +7 -2
  506. package/dist/collection/components/ic-toast/ic-toast.js +111 -107
  507. package/dist/collection/components/ic-toast/ic-toast.js.map +1 -1
  508. package/dist/collection/components/ic-toast/{ic-toast.test.a11y.js → test/a11y/ic-toast.test.a11y.js} +1 -1
  509. package/dist/collection/components/ic-toast/test/a11y/ic-toast.test.a11y.js.map +1 -0
  510. package/dist/collection/components/ic-toast/test/basic/ic-toast.e2e.js +82 -0
  511. package/dist/collection/components/ic-toast/test/basic/ic-toast.e2e.js.map +1 -0
  512. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js +278 -0
  513. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js.map +1 -0
  514. package/dist/collection/components/ic-toast-region/ic-toast-region.js +12 -12
  515. package/dist/collection/components/ic-toast-region/ic-toast-region.js.map +1 -1
  516. package/dist/collection/components/ic-toast-region/test/basic/ic-toast-region.spec.js +62 -0
  517. package/dist/collection/components/ic-toast-region/test/basic/ic-toast-region.spec.js.map +1 -0
  518. package/dist/collection/components/ic-tooltip/ic-tooltip.css +31 -8
  519. package/dist/collection/components/ic-tooltip/ic-tooltip.js +218 -91
  520. package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
  521. package/dist/collection/components/ic-tooltip/{ic-tooltip.test.a11y.js → test/a11y/ic-tooltip.test.a11y.js} +1 -1
  522. package/dist/collection/components/ic-tooltip/test/a11y/ic-tooltip.test.a11y.js.map +1 -0
  523. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.e2e.js +117 -0
  524. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.e2e.js.map +1 -0
  525. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.spec.js +287 -0
  526. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.spec.js.map +1 -0
  527. package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +21 -15
  528. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +105 -83
  529. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
  530. package/dist/collection/components/ic-top-navigation/{ic-top-navigation.test.a11y.js → test/a11y/ic-top-navigation.test.a11y.js} +8 -1
  531. package/dist/collection/components/ic-top-navigation/test/a11y/ic-top-navigation.test.a11y.js.map +1 -0
  532. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.e2e.js +61 -0
  533. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.e2e.js.map +1 -0
  534. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.mobile.e2e.js +242 -0
  535. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.mobile.e2e.js.map +1 -0
  536. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js +299 -0
  537. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js.map +1 -0
  538. package/dist/collection/components/ic-typography/ic-typography.css +79 -2
  539. package/dist/collection/components/ic-typography/ic-typography.js +217 -19
  540. package/dist/collection/components/ic-typography/ic-typography.js.map +1 -1
  541. package/dist/collection/components/ic-typography/{ic-typography.test.a11y.js → test/a11y/ic-typography.test.a11y.js} +1 -1
  542. package/dist/collection/components/ic-typography/test/a11y/ic-typography.test.a11y.js.map +1 -0
  543. package/dist/collection/components/ic-typography/test/basic/ic-typography.e2e.js +39 -0
  544. package/dist/collection/components/ic-typography/test/basic/ic-typography.e2e.js.map +1 -0
  545. package/dist/collection/components/ic-typography/test/basic/ic-typography.spec.js +324 -0
  546. package/dist/collection/components/ic-typography/test/basic/ic-typography.spec.js.map +1 -0
  547. package/dist/collection/testspec.setup.js +21 -0
  548. package/dist/collection/testspec.setup.js.map +1 -1
  549. package/dist/collection/utils/helpers.js +24 -25
  550. package/dist/collection/utils/helpers.js.map +1 -1
  551. package/dist/collection/utils/types.js.map +1 -1
  552. package/dist/components/OpenInNew.js +5 -0
  553. package/dist/components/OpenInNew.js.map +1 -0
  554. package/dist/components/close-icon.js +1 -1
  555. package/dist/components/helpers.js +41 -37
  556. package/dist/components/helpers.js.map +1 -1
  557. package/dist/components/ic-alert.js +1 -113
  558. package/dist/components/ic-alert.js.map +1 -1
  559. package/dist/components/ic-alert2.js +117 -0
  560. package/dist/components/ic-alert2.js.map +1 -0
  561. package/dist/components/ic-back-to-top.js +7 -7
  562. package/dist/components/ic-back-to-top.js.map +1 -1
  563. package/dist/components/ic-breadcrumb-group.js +39 -33
  564. package/dist/components/ic-breadcrumb-group.js.map +1 -1
  565. package/dist/components/ic-breadcrumb2.js +13 -12
  566. package/dist/components/ic-breadcrumb2.js.map +1 -1
  567. package/dist/components/ic-button2.js +115 -45
  568. package/dist/components/ic-button2.js.map +1 -1
  569. package/dist/components/ic-card.js +54 -53
  570. package/dist/components/ic-card.js.map +1 -1
  571. package/dist/components/ic-checkbox-group.js +30 -28
  572. package/dist/components/ic-checkbox-group.js.map +1 -1
  573. package/dist/components/ic-checkbox.js +54 -34
  574. package/dist/components/ic-checkbox.js.map +1 -1
  575. package/dist/components/ic-chip.js +22 -19
  576. package/dist/components/ic-chip.js.map +1 -1
  577. package/dist/components/ic-classification-banner.js +1 -1
  578. package/dist/components/ic-data-entity.js +2 -2
  579. package/dist/components/ic-data-entity.js.map +1 -1
  580. package/dist/components/ic-data-row.js +39 -25
  581. package/dist/components/ic-data-row.js.map +1 -1
  582. package/dist/components/ic-dialog.d.ts +11 -0
  583. package/dist/components/ic-dialog.js +356 -0
  584. package/dist/components/ic-dialog.js.map +1 -0
  585. package/dist/components/ic-divider2.js +3 -3
  586. package/dist/components/ic-divider2.js.map +1 -1
  587. package/dist/components/ic-empty-state.d.ts +11 -0
  588. package/dist/components/ic-empty-state.js +63 -0
  589. package/dist/components/ic-empty-state.js.map +1 -0
  590. package/dist/components/ic-footer-link-group.js +20 -20
  591. package/dist/components/ic-footer-link-group.js.map +1 -1
  592. package/dist/components/ic-footer-link.js +29 -18
  593. package/dist/components/ic-footer-link.js.map +1 -1
  594. package/dist/components/ic-footer.js +28 -23
  595. package/dist/components/ic-footer.js.map +1 -1
  596. package/dist/components/ic-hero.js +30 -28
  597. package/dist/components/ic-hero.js.map +1 -1
  598. package/dist/components/ic-horizontal-scroll2.js +46 -27
  599. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  600. package/dist/components/ic-input-component-container2.js +11 -11
  601. package/dist/components/ic-input-component-container2.js.map +1 -1
  602. package/dist/components/ic-input-container2.js +1 -1
  603. package/dist/components/ic-input-label2.js +11 -11
  604. package/dist/components/ic-input-label2.js.map +1 -1
  605. package/dist/components/ic-input-validation2.js +9 -9
  606. package/dist/components/ic-input-validation2.js.map +1 -1
  607. package/dist/components/ic-link2.js +24 -25
  608. package/dist/components/ic-link2.js.map +1 -1
  609. package/dist/components/ic-loading-indicator2.js +34 -26
  610. package/dist/components/ic-loading-indicator2.js.map +1 -1
  611. package/dist/components/ic-menu-group.d.ts +11 -0
  612. package/dist/components/ic-menu-group.js +46 -0
  613. package/dist/components/ic-menu-group.js.map +1 -0
  614. package/dist/components/ic-menu-item.d.ts +11 -0
  615. package/dist/components/ic-menu-item.js +8 -0
  616. package/dist/components/ic-menu-item.js.map +1 -0
  617. package/dist/components/ic-menu-item2.js +169 -0
  618. package/dist/components/ic-menu-item2.js.map +1 -0
  619. package/dist/components/ic-menu2.js +326 -169
  620. package/dist/components/ic-menu2.js.map +1 -1
  621. package/dist/components/ic-navigation-button.js +24 -24
  622. package/dist/components/ic-navigation-button.js.map +1 -1
  623. package/dist/components/ic-navigation-group.js +115 -68
  624. package/dist/components/ic-navigation-group.js.map +1 -1
  625. package/dist/components/ic-navigation-item.js +59 -48
  626. package/dist/components/ic-navigation-item.js.map +1 -1
  627. package/dist/components/ic-navigation-menu2.js +30 -36
  628. package/dist/components/ic-navigation-menu2.js.map +1 -1
  629. package/dist/components/ic-page-header.js +30 -33
  630. package/dist/components/ic-page-header.js.map +1 -1
  631. package/dist/components/ic-pagination-item.d.ts +11 -0
  632. package/dist/components/ic-pagination-item.js +8 -0
  633. package/dist/components/ic-pagination-item.js.map +1 -0
  634. package/dist/components/ic-pagination-item2.js +81 -0
  635. package/dist/components/ic-pagination-item2.js.map +1 -0
  636. package/dist/components/ic-pagination.d.ts +11 -0
  637. package/dist/components/ic-pagination.js +288 -0
  638. package/dist/components/ic-pagination.js.map +1 -0
  639. package/dist/components/ic-popover-menu.d.ts +11 -0
  640. package/dist/components/ic-popover-menu.js +342 -0
  641. package/dist/components/ic-popover-menu.js.map +1 -0
  642. package/dist/components/ic-radio-group.js +48 -30
  643. package/dist/components/ic-radio-group.js.map +1 -1
  644. package/dist/components/ic-radio-option.js +44 -43
  645. package/dist/components/ic-radio-option.js.map +1 -1
  646. package/dist/components/ic-search-bar.js +205 -124
  647. package/dist/components/ic-search-bar.js.map +1 -1
  648. package/dist/components/ic-section-container2.js +1 -1
  649. package/dist/components/ic-select.js +379 -212
  650. package/dist/components/ic-select.js.map +1 -1
  651. package/dist/components/ic-side-navigation.js +136 -97
  652. package/dist/components/ic-side-navigation.js.map +1 -1
  653. package/dist/components/ic-skeleton.js +6 -6
  654. package/dist/components/ic-skeleton.js.map +1 -1
  655. package/dist/components/ic-status-tag.js +9 -9
  656. package/dist/components/ic-status-tag.js.map +1 -1
  657. package/dist/components/ic-step.js +18 -18
  658. package/dist/components/ic-step.js.map +1 -1
  659. package/dist/components/ic-stepper.js +21 -21
  660. package/dist/components/ic-stepper.js.map +1 -1
  661. package/dist/components/ic-switch.js +24 -23
  662. package/dist/components/ic-switch.js.map +1 -1
  663. package/dist/components/ic-tab-context.js +73 -36
  664. package/dist/components/ic-tab-context.js.map +1 -1
  665. package/dist/components/ic-tab-group.js +7 -6
  666. package/dist/components/ic-tab-group.js.map +1 -1
  667. package/dist/components/ic-tab-panel.js +18 -7
  668. package/dist/components/ic-tab-panel.js.map +1 -1
  669. package/dist/components/ic-tab.js +33 -8
  670. package/dist/components/ic-tab.js.map +1 -1
  671. package/dist/components/ic-text-field2.js +132 -97
  672. package/dist/components/ic-text-field2.js.map +1 -1
  673. package/dist/components/ic-theme.js +2 -2
  674. package/dist/components/ic-theme.js.map +1 -1
  675. package/dist/components/ic-toast-region.js +13 -13
  676. package/dist/components/ic-toast-region.js.map +1 -1
  677. package/dist/components/ic-toast.js +65 -61
  678. package/dist/components/ic-toast.js.map +1 -1
  679. package/dist/components/ic-tooltip2.js +1955 -75
  680. package/dist/components/ic-tooltip2.js.map +1 -1
  681. package/dist/components/ic-top-navigation.js +59 -54
  682. package/dist/components/ic-top-navigation.js.map +1 -1
  683. package/dist/components/ic-typography2.js +113 -6
  684. package/dist/components/ic-typography2.js.map +1 -1
  685. package/dist/components/index.d.ts +9 -55
  686. package/dist/components/index.js +1 -53
  687. package/dist/components/index.js.map +1 -1
  688. package/dist/components/types.js.map +1 -1
  689. package/dist/core/core.css +47 -3
  690. package/dist/core/core.esm.js +1 -1
  691. package/dist/core/core.esm.js.map +1 -1
  692. package/dist/core/index.esm.js.map +1 -1
  693. package/dist/core/p-041604fc.entry.js +2 -0
  694. package/dist/core/p-041604fc.entry.js.map +1 -0
  695. package/dist/core/{p-24240e11.js → p-06321d19.js} +2 -2
  696. package/dist/core/p-06321d19.js.map +1 -0
  697. package/dist/core/p-07601b81.entry.js +2 -0
  698. package/dist/core/p-07601b81.entry.js.map +1 -0
  699. package/dist/core/p-07877eb8.entry.js +2 -0
  700. package/dist/core/p-07877eb8.entry.js.map +1 -0
  701. package/dist/core/p-103c761f.entry.js +2 -0
  702. package/dist/core/p-103c761f.entry.js.map +1 -0
  703. package/dist/core/p-14bea6c0.entry.js +2 -0
  704. package/dist/core/p-14bea6c0.entry.js.map +1 -0
  705. package/dist/core/p-1ac44a4e.entry.js +2 -0
  706. package/dist/core/p-1ac44a4e.entry.js.map +1 -0
  707. package/dist/core/p-1b1dbb53.entry.js +2 -0
  708. package/dist/core/p-1b1dbb53.entry.js.map +1 -0
  709. package/dist/core/p-20fafec4.entry.js +2 -0
  710. package/dist/core/p-20fafec4.entry.js.map +1 -0
  711. package/dist/core/p-24b88371.entry.js +2 -0
  712. package/dist/core/p-24b88371.entry.js.map +1 -0
  713. package/dist/core/p-2ae7687a.entry.js +2 -0
  714. package/dist/core/p-2ae7687a.entry.js.map +1 -0
  715. package/dist/core/p-2f5a9d91.entry.js +2 -0
  716. package/dist/core/p-2f5a9d91.entry.js.map +1 -0
  717. package/dist/core/p-389c3913.entry.js +2 -0
  718. package/dist/core/p-389c3913.entry.js.map +1 -0
  719. package/dist/core/{p-ad2477d8.entry.js → p-3adb1167.entry.js} +2 -2
  720. package/dist/core/p-3adb1167.entry.js.map +1 -0
  721. package/dist/core/p-43b529a5.entry.js +2 -0
  722. package/dist/core/p-43b529a5.entry.js.map +1 -0
  723. package/dist/core/{p-8ffa00c9.entry.js → p-441e7d98.entry.js} +2 -2
  724. package/dist/core/p-441e7d98.entry.js.map +1 -0
  725. package/dist/core/p-4dc6a83d.entry.js +2 -0
  726. package/dist/core/p-4dc6a83d.entry.js.map +1 -0
  727. package/dist/core/p-4fa9c6eb.entry.js +2 -0
  728. package/dist/core/p-4fa9c6eb.entry.js.map +1 -0
  729. package/dist/core/{p-284970bc.entry.js → p-50019c47.entry.js} +2 -2
  730. package/dist/core/p-50019c47.entry.js.map +1 -0
  731. package/dist/core/p-516fd246.entry.js +2 -0
  732. package/dist/core/p-516fd246.entry.js.map +1 -0
  733. package/dist/core/p-5e3a09d7.entry.js +2 -0
  734. package/dist/core/p-5e3a09d7.entry.js.map +1 -0
  735. package/dist/core/p-5e685037.entry.js +2 -0
  736. package/dist/core/p-5e685037.entry.js.map +1 -0
  737. package/dist/core/p-69920d86.js +3 -0
  738. package/dist/core/p-69920d86.js.map +1 -0
  739. package/dist/core/p-69c1f172.entry.js +2 -0
  740. package/dist/core/p-69c1f172.entry.js.map +1 -0
  741. package/dist/core/p-6bad30aa.entry.js +2 -0
  742. package/dist/core/p-6bad30aa.entry.js.map +1 -0
  743. package/dist/core/p-6f57b13c.js.map +1 -1
  744. package/dist/core/p-736489c6.entry.js +2 -0
  745. package/dist/core/p-736489c6.entry.js.map +1 -0
  746. package/dist/core/p-75ac2fbf.entry.js +2 -0
  747. package/dist/core/p-75ac2fbf.entry.js.map +1 -0
  748. package/dist/core/p-7c0dcd00.js +2 -0
  749. package/dist/core/p-7c0dcd00.js.map +1 -0
  750. package/dist/core/p-8acd7207.entry.js +2 -0
  751. package/dist/core/p-8acd7207.entry.js.map +1 -0
  752. package/dist/core/p-8c7f4343.js.map +1 -1
  753. package/dist/core/p-8ca80000.entry.js +2 -0
  754. package/dist/core/p-8ca80000.entry.js.map +1 -0
  755. package/dist/core/p-8d4f7027.js +2 -0
  756. package/dist/core/p-8d4f7027.js.map +1 -0
  757. package/dist/core/p-919059e8.entry.js +2 -0
  758. package/dist/core/p-919059e8.entry.js.map +1 -0
  759. package/dist/core/p-92868735.entry.js +2 -0
  760. package/dist/core/p-92868735.entry.js.map +1 -0
  761. package/dist/core/p-93ee130d.entry.js +2 -0
  762. package/dist/core/p-93ee130d.entry.js.map +1 -0
  763. package/dist/core/p-95992c98.entry.js +2 -0
  764. package/dist/core/p-95992c98.entry.js.map +1 -0
  765. package/dist/core/{p-d2508752.entry.js → p-96bcd466.entry.js} +2 -2
  766. package/dist/core/p-96bcd466.entry.js.map +1 -0
  767. package/dist/core/{p-c4a7c734.entry.js → p-98d488aa.entry.js} +2 -2
  768. package/dist/core/p-98d488aa.entry.js.map +1 -0
  769. package/dist/core/p-9bde930d.entry.js +2 -0
  770. package/dist/core/p-9bde930d.entry.js.map +1 -0
  771. package/dist/core/p-9e896463.entry.js +2 -0
  772. package/dist/core/p-9e896463.entry.js.map +1 -0
  773. package/dist/core/{p-7fd50355.entry.js → p-a29fe0c6.entry.js} +2 -2
  774. package/dist/core/p-a29fe0c6.entry.js.map +1 -0
  775. package/dist/core/p-ab4919d6.entry.js +2 -0
  776. package/dist/core/p-ab4919d6.entry.js.map +1 -0
  777. package/dist/core/{p-ba8d6c23.entry.js → p-adf65f4a.entry.js} +2 -2
  778. package/dist/core/p-adf65f4a.entry.js.map +1 -0
  779. package/dist/core/p-b5d084c2.entry.js +2 -0
  780. package/dist/core/p-b5d084c2.entry.js.map +1 -0
  781. package/dist/core/p-bbdd9770.entry.js +2 -0
  782. package/dist/core/p-bbdd9770.entry.js.map +1 -0
  783. package/dist/core/p-c2fc2b77.entry.js +2 -0
  784. package/dist/core/p-c2fc2b77.entry.js.map +1 -0
  785. package/dist/core/{p-35a03442.entry.js → p-c3da58eb.entry.js} +2 -2
  786. package/dist/core/p-c3da58eb.entry.js.map +1 -0
  787. package/dist/core/p-c4b81d32.entry.js +2 -0
  788. package/dist/core/p-c4b81d32.entry.js.map +1 -0
  789. package/dist/core/p-cfb87422.entry.js +2 -0
  790. package/dist/core/p-cfb87422.entry.js.map +1 -0
  791. package/dist/core/{p-7a9bc7f2.entry.js → p-d2994a71.entry.js} +2 -2
  792. package/dist/core/p-d2994a71.entry.js.map +1 -0
  793. package/dist/core/p-d592006b.entry.js +2 -0
  794. package/dist/core/p-d592006b.entry.js.map +1 -0
  795. package/dist/core/p-da3bd896.entry.js +2 -0
  796. package/dist/core/p-da3bd896.entry.js.map +1 -0
  797. package/dist/core/p-da5fc036.entry.js +2 -0
  798. package/dist/core/p-da5fc036.entry.js.map +1 -0
  799. package/dist/core/p-dd980be4.js +2 -0
  800. package/dist/core/p-dd980be4.js.map +1 -0
  801. package/dist/core/p-e14bc195.entry.js +2 -0
  802. package/dist/core/p-e14bc195.entry.js.map +1 -0
  803. package/dist/core/p-e2fdb944.entry.js +2 -0
  804. package/dist/core/p-e2fdb944.entry.js.map +1 -0
  805. package/dist/core/p-e328bd2d.entry.js +2 -0
  806. package/dist/core/p-e328bd2d.entry.js.map +1 -0
  807. package/dist/core/p-e9c864ac.entry.js +2 -0
  808. package/dist/core/p-e9c864ac.entry.js.map +1 -0
  809. package/dist/core/p-f2c6a143.js +2 -0
  810. package/dist/core/p-f2c6a143.js.map +1 -0
  811. package/dist/core/p-fb86da80.entry.js +2 -0
  812. package/dist/core/p-fb86da80.entry.js.map +1 -0
  813. package/dist/core/p-fbd3c432.entry.js +2 -0
  814. package/dist/core/p-fbd3c432.entry.js.map +1 -0
  815. package/dist/esm/OpenInNew-67a881e0.js +5 -0
  816. package/dist/esm/OpenInNew-67a881e0.js.map +1 -0
  817. package/dist/esm/chevron-icon-7927f709.js +8 -0
  818. package/dist/esm/chevron-icon-7927f709.js.map +1 -0
  819. package/dist/esm/{close-icon-2f02b42a.js → close-icon-2ce5d375.js} +2 -2
  820. package/dist/esm/close-icon-2ce5d375.js.map +1 -0
  821. package/dist/esm/core.js +7 -3
  822. package/dist/esm/core.js.map +1 -1
  823. package/dist/esm/{helpers-c332acf8.js → helpers-d7d5bd08.js} +42 -38
  824. package/dist/esm/helpers-d7d5bd08.js.map +1 -0
  825. package/dist/esm/ic-alert.entry.js +12 -12
  826. package/dist/esm/ic-alert.entry.js.map +1 -1
  827. package/dist/esm/ic-back-to-top.entry.js +5 -5
  828. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  829. package/dist/esm/ic-breadcrumb-group.entry.js +39 -33
  830. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  831. package/dist/esm/ic-breadcrumb.entry.js +14 -13
  832. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  833. package/dist/esm/ic-button_3.entry.js +280 -120
  834. package/dist/esm/ic-button_3.entry.js.map +1 -1
  835. package/dist/esm/ic-card.entry.js +46 -45
  836. package/dist/esm/ic-card.entry.js.map +1 -1
  837. package/dist/esm/ic-checkbox-group.entry.js +25 -23
  838. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  839. package/dist/esm/ic-checkbox.entry.js +47 -29
  840. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  841. package/dist/esm/ic-chip.entry.js +18 -15
  842. package/dist/esm/ic-chip.entry.js.map +1 -1
  843. package/dist/esm/ic-classification-banner.entry.js +1 -1
  844. package/dist/esm/ic-data-entity.entry.js +2 -2
  845. package/dist/esm/ic-data-entity.entry.js.map +1 -1
  846. package/dist/esm/ic-data-row.entry.js +38 -24
  847. package/dist/esm/ic-data-row.entry.js.map +1 -1
  848. package/dist/esm/ic-dialog.entry.js +291 -0
  849. package/dist/esm/ic-dialog.entry.js.map +1 -0
  850. package/dist/esm/ic-divider.entry.js +3 -3
  851. package/dist/esm/ic-divider.entry.js.map +1 -1
  852. package/dist/esm/ic-empty-state.entry.js +33 -0
  853. package/dist/esm/ic-empty-state.entry.js.map +1 -0
  854. package/dist/esm/ic-footer-link-group.entry.js +18 -18
  855. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  856. package/dist/esm/ic-footer-link.entry.js +23 -17
  857. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  858. package/dist/esm/ic-footer.entry.js +26 -21
  859. package/dist/esm/ic-footer.entry.js.map +1 -1
  860. package/dist/esm/ic-hero.entry.js +23 -21
  861. package/dist/esm/ic-hero.entry.js.map +1 -1
  862. package/dist/esm/ic-horizontal-scroll.entry.js +45 -26
  863. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  864. package/dist/esm/ic-input-component-container_3.entry.js +299 -159
  865. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  866. package/dist/esm/ic-input-label_2.entry.js +11 -11
  867. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  868. package/dist/esm/ic-link.entry.js +22 -23
  869. package/dist/esm/ic-link.entry.js.map +1 -1
  870. package/dist/esm/ic-menu-group.entry.js +20 -0
  871. package/dist/esm/ic-menu-group.entry.js.map +1 -0
  872. package/dist/esm/ic-menu-item.entry.js +118 -0
  873. package/dist/esm/ic-menu-item.entry.js.map +1 -0
  874. package/dist/esm/ic-navigation-button.entry.js +19 -19
  875. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  876. package/dist/esm/ic-navigation-group.entry.js +113 -66
  877. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  878. package/dist/esm/ic-navigation-item.entry.js +48 -42
  879. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  880. package/dist/esm/ic-navigation-menu.entry.js +28 -34
  881. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  882. package/dist/esm/ic-page-header.entry.js +24 -27
  883. package/dist/esm/ic-page-header.entry.js.map +1 -1
  884. package/dist/esm/ic-pagination-item.entry.js +52 -0
  885. package/dist/esm/ic-pagination-item.entry.js.map +1 -0
  886. package/dist/esm/ic-pagination.entry.js +223 -0
  887. package/dist/esm/ic-pagination.entry.js.map +1 -0
  888. package/dist/esm/ic-popover-menu.entry.js +285 -0
  889. package/dist/esm/ic-popover-menu.entry.js.map +1 -0
  890. package/dist/esm/ic-radio-group.entry.js +43 -25
  891. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  892. package/dist/esm/ic-radio-option.entry.js +39 -38
  893. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  894. package/dist/esm/ic-search-bar.entry.js +181 -104
  895. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  896. package/dist/esm/ic-section-container.entry.js +1 -1
  897. package/dist/esm/ic-select.entry.js +349 -190
  898. package/dist/esm/ic-select.entry.js.map +1 -1
  899. package/dist/esm/ic-side-navigation.entry.js +129 -91
  900. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  901. package/dist/esm/ic-skeleton.entry.js +4 -4
  902. package/dist/esm/ic-skeleton.entry.js.map +1 -1
  903. package/dist/esm/ic-status-tag.entry.js +6 -6
  904. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  905. package/dist/esm/ic-step.entry.js +10 -10
  906. package/dist/esm/ic-step.entry.js.map +1 -1
  907. package/dist/esm/ic-stepper.entry.js +15 -15
  908. package/dist/esm/ic-stepper.entry.js.map +1 -1
  909. package/dist/esm/ic-switch.entry.js +20 -19
  910. package/dist/esm/ic-switch.entry.js.map +1 -1
  911. package/dist/esm/ic-tab-context.entry.js +68 -32
  912. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  913. package/dist/esm/ic-tab-group.entry.js +5 -4
  914. package/dist/esm/ic-tab-group.entry.js.map +1 -1
  915. package/dist/esm/ic-tab-panel.entry.js +15 -4
  916. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  917. package/dist/esm/ic-tab.entry.js +32 -7
  918. package/dist/esm/ic-tab.entry.js.map +1 -1
  919. package/dist/esm/ic-text-field.entry.js +102 -72
  920. package/dist/esm/ic-text-field.entry.js.map +1 -1
  921. package/dist/esm/ic-theme.entry.js +2 -2
  922. package/dist/esm/ic-theme.entry.js.map +1 -1
  923. package/dist/esm/ic-toast-region.entry.js +13 -13
  924. package/dist/esm/ic-toast-region.entry.js.map +1 -1
  925. package/dist/esm/ic-toast.entry.js +61 -57
  926. package/dist/esm/ic-toast.entry.js.map +1 -1
  927. package/dist/esm/ic-top-navigation.entry.js +49 -45
  928. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  929. package/dist/esm/ic-typography.entry.js +105 -5
  930. package/dist/esm/ic-typography.entry.js.map +1 -1
  931. package/dist/esm/{index-90721b3c.js → index-fd30b77e.js} +259 -44
  932. package/dist/esm/index-fd30b77e.js.map +1 -0
  933. package/dist/esm/loader.js +4 -3
  934. package/dist/esm/loader.js.map +1 -1
  935. package/dist/esm/polyfills/css-shim.js +1 -1
  936. package/dist/{components/popper.js → esm/popper-15e448b4.js} +10 -17
  937. package/dist/esm/popper-15e448b4.js.map +1 -0
  938. package/dist/esm/types-dd515332.js.map +1 -1
  939. package/dist/types/components/ic-alert/ic-alert.d.ts +13 -13
  940. package/dist/types/components/ic-back-to-top/ic-back-to-top.d.ts +8 -8
  941. package/dist/types/components/ic-breadcrumb/ic-breadcrumb.d.ts +6 -6
  942. package/dist/types/components/ic-breadcrumb/ic-breadcrumb.types.d.ts +1 -1
  943. package/dist/types/components/ic-breadcrumb-group/ic-breadcrumb-group.d.ts +16 -9
  944. package/dist/types/components/ic-button/ic-button.d.ts +70 -36
  945. package/dist/types/components/ic-button/ic-button.types.d.ts +3 -4
  946. package/dist/types/components/ic-card/ic-card.d.ts +32 -32
  947. package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +34 -24
  948. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +18 -15
  949. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.types.d.ts +5 -0
  950. package/dist/types/components/ic-chip/ic-chip.d.ts +18 -16
  951. package/dist/types/components/ic-chip/ic-chip.types.d.ts +1 -2
  952. package/dist/types/components/ic-classification-banner/ic-classification-banner.types.d.ts +1 -1
  953. package/dist/types/components/ic-data-row/ic-data-row.d.ts +17 -11
  954. package/dist/types/components/ic-dialog/ic-dialog.d.ts +123 -0
  955. package/dist/types/components/ic-empty-state/ic-empty-state.d.ts +35 -0
  956. package/dist/types/components/ic-empty-state/ic-empty-state.types.d.ts +1 -0
  957. package/dist/types/components/ic-footer/ic-footer.d.ts +20 -20
  958. package/dist/types/components/ic-footer/ic-footer.types.d.ts +1 -1
  959. package/dist/types/components/ic-footer-link/ic-footer-link.d.ts +26 -6
  960. package/dist/types/components/ic-footer-link-group/ic-footer-link-group.d.ts +8 -8
  961. package/dist/types/components/ic-hero/ic-hero.d.ts +24 -24
  962. package/dist/types/components/ic-hero/ic-hero.types.d.ts +1 -1
  963. package/dist/types/components/ic-horizontal-scroll/ic-horizontal-scroll.d.ts +15 -14
  964. package/dist/types/components/ic-input-component-container/ic-input-component-container.d.ts +15 -15
  965. package/dist/types/components/ic-input-label/ic-input-label.d.ts +14 -14
  966. package/dist/types/components/ic-input-validation/ic-input-validation.d.ts +8 -8
  967. package/dist/types/components/ic-input-validation/ic-input-validation.types.d.ts +1 -1
  968. package/dist/types/components/ic-link/ic-link.d.ts +9 -9
  969. package/dist/types/components/ic-loading-indicator/ic-loading-indicator.d.ts +38 -36
  970. package/dist/types/components/ic-loading-indicator/ic-loading-indicator.types.d.ts +2 -2
  971. package/dist/types/components/ic-menu/ic-menu.d.ts +89 -50
  972. package/dist/types/components/ic-menu-group/ic-menu-group.d.ts +8 -0
  973. package/dist/types/components/ic-menu-item/ic-menu-item.d.ts +74 -0
  974. package/dist/types/components/ic-menu-item/ic-menu-item.types.d.ts +1 -0
  975. package/dist/types/components/ic-navigation-button/ic-navigation-button.d.ts +21 -21
  976. package/dist/types/components/ic-navigation-button/ic-navigation-button.types.d.ts +1 -1
  977. package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +25 -18
  978. package/dist/types/components/ic-navigation-item/ic-navigation-item.d.ts +47 -27
  979. package/dist/types/components/ic-navigation-menu/ic-navigation-menu.d.ts +14 -14
  980. package/dist/types/components/ic-page-header/ic-page-header.d.ts +19 -19
  981. package/dist/types/components/ic-pagination/ic-pagination.d.ts +82 -0
  982. package/dist/types/components/ic-pagination/ic-pagination.types.d.ts +4 -0
  983. package/dist/types/components/ic-pagination-item/ic-pagination-item.d.ts +47 -0
  984. package/dist/types/components/ic-pagination-item/ic-pagination-item.types.d.ts +1 -0
  985. package/dist/types/components/ic-popover-menu/ic-popover-menu.d.ts +62 -0
  986. package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +22 -23
  987. package/dist/types/components/ic-radio-group/ic-radio-group.types.d.ts +7 -0
  988. package/dist/types/components/ic-radio-option/ic-radio-option.d.ts +32 -29
  989. package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +120 -87
  990. package/dist/types/components/ic-search-bar/ic-search-bar.types.d.ts +2 -1
  991. package/dist/types/components/ic-select/ic-select.d.ts +116 -78
  992. package/dist/types/components/ic-side-navigation/ic-side-navigation.d.ts +35 -24
  993. package/dist/types/components/ic-side-navigation/{ic-side-navigation-test-examples.d.ts → test/basic/ic-side-navigation-test-examples.d.ts} +1 -0
  994. package/dist/types/components/ic-skeleton/ic-skeleton.d.ts +8 -8
  995. package/dist/types/components/ic-skeleton/ic-skeleton.types.d.ts +1 -1
  996. package/dist/types/components/ic-status-tag/ic-status-tag.d.ts +8 -8
  997. package/dist/types/components/ic-status-tag/ic-status-tag.types.d.ts +2 -2
  998. package/dist/types/components/ic-step/ic-step.d.ts +24 -24
  999. package/dist/types/components/ic-step/ic-step.types.d.ts +3 -3
  1000. package/dist/types/components/ic-stepper/ic-stepper.d.ts +17 -17
  1001. package/dist/types/components/ic-stepper/ic-stepper.types.d.ts +1 -1
  1002. package/dist/types/components/ic-switch/ic-switch.d.ts +23 -23
  1003. package/dist/types/components/ic-tab/ic-tab.d.ts +25 -8
  1004. package/dist/types/components/ic-tab-context/ic-tab-context.d.ts +29 -20
  1005. package/dist/types/components/ic-tab-group/ic-tab-group.d.ts +6 -5
  1006. package/dist/types/components/ic-tab-panel/ic-tab-panel.d.ts +27 -7
  1007. package/dist/types/components/ic-text-field/ic-text-field.d.ts +110 -91
  1008. package/dist/types/components/ic-text-field/ic-text-field.types.d.ts +3 -3
  1009. package/dist/types/components/ic-theme/ic-theme.d.ts +1 -1
  1010. package/dist/types/components/ic-toast/ic-toast.d.ts +26 -26
  1011. package/dist/types/components/ic-toast/ic-toast.types.d.ts +1 -1
  1012. package/dist/types/components/ic-toast/test/a11y/ic-toast.test.a11y.d.ts +1 -0
  1013. package/dist/types/components/ic-toast-region/ic-toast-region.d.ts +3 -3
  1014. package/dist/types/components/ic-tooltip/ic-tooltip.d.ts +27 -15
  1015. package/dist/types/components/ic-tooltip/ic-tooltip.types.d.ts +1 -1
  1016. package/dist/types/components/ic-tooltip/test/a11y/ic-tooltip.test.a11y.d.ts +1 -0
  1017. package/dist/types/components/ic-top-navigation/ic-top-navigation.d.ts +36 -32
  1018. package/dist/types/components/ic-top-navigation/test/a11y/ic-top-navigation.test.a11y.d.ts +1 -0
  1019. package/dist/types/components/ic-typography/ic-typography.d.ts +48 -4
  1020. package/dist/types/components/ic-typography/test/a11y/ic-typography.test.a11y.d.ts +1 -0
  1021. package/dist/types/components.d.ts +958 -42
  1022. package/dist/types/stencil-public-runtime.d.ts +74 -15
  1023. package/dist/types/testspec.setup.d.ts +11 -0
  1024. package/dist/types/utils/helpers.d.ts +1 -0
  1025. package/dist/types/utils/types.d.ts +26 -22
  1026. package/hydrate/index.d.ts +17 -16
  1027. package/hydrate/index.js +4093 -1979
  1028. package/loader/index.d.ts +9 -0
  1029. package/package.json +7 -6
  1030. package/dist/cjs/chevron-icon-2645d6b0.js +0 -10
  1031. package/dist/cjs/chevron-icon-2645d6b0.js.map +0 -1
  1032. package/dist/cjs/close-icon-8ccb0163.js.map +0 -1
  1033. package/dist/cjs/helpers-6eb26e7a.js.map +0 -1
  1034. package/dist/cjs/index-f79a4e53.js.map +0 -1
  1035. package/dist/cjs/popper-11d5f714.js.map +0 -1
  1036. package/dist/collection/components/ic-alert/ic-alert.test.a11y.js.map +0 -1
  1037. package/dist/collection/components/ic-back-to-top/ic-back-to-top.test.a11y.js.map +0 -1
  1038. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group-test-examples.js.map +0 -1
  1039. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.test.a11y.js.map +0 -1
  1040. package/dist/collection/components/ic-button/ic-button.test.a11y.js.map +0 -1
  1041. package/dist/collection/components/ic-card/ic-card.test.a11y.js.map +0 -1
  1042. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.test.a11y.js.map +0 -1
  1043. package/dist/collection/components/ic-chip/ic-chip.test.a11y.js.map +0 -1
  1044. package/dist/collection/components/ic-classification-banner/ic-classification-banner.test.a11y.js.map +0 -1
  1045. package/dist/collection/components/ic-data-entity/ic-data-entity.test.a11y.js.map +0 -1
  1046. package/dist/collection/components/ic-data-row/ic-data-row.test.a11y.js.map +0 -1
  1047. package/dist/collection/components/ic-footer/ic-footer.test.a11y.js.map +0 -1
  1048. package/dist/collection/components/ic-footer-link/ic-footer-link.test.a11y.js.map +0 -1
  1049. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.test.a11y.js.map +0 -1
  1050. package/dist/collection/components/ic-hero/ic-hero.test.a11y.js.map +0 -1
  1051. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.test.a11y.js.map +0 -1
  1052. package/dist/collection/components/ic-link/ic-link.test.a11y.js.map +0 -1
  1053. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.test.a11y.js.map +0 -1
  1054. package/dist/collection/components/ic-navigation-group/ic-navigation-group.test.a11y.js.map +0 -1
  1055. package/dist/collection/components/ic-navigation-item/ic-navigation-item.test.a11y.js.map +0 -1
  1056. package/dist/collection/components/ic-page-header/ic-page-header.test.a11y.js.map +0 -1
  1057. package/dist/collection/components/ic-radio-group/ic-radio-group.test.a11y.js.map +0 -1
  1058. package/dist/collection/components/ic-search-bar/ic-search-bar.test.a11y.js.map +0 -1
  1059. package/dist/collection/components/ic-select/ic-select.test.a11y.js.map +0 -1
  1060. package/dist/collection/components/ic-side-navigation/ic-side-navigation-test-examples.js.map +0 -1
  1061. package/dist/collection/components/ic-side-navigation/ic-side-navigation.test.a11y.js.map +0 -1
  1062. package/dist/collection/components/ic-skeleton/ic-skeleton.test.a11y.js.map +0 -1
  1063. package/dist/collection/components/ic-status-tag/ic-status-tag.test.a11y.js.map +0 -1
  1064. package/dist/collection/components/ic-stepper/ic-stepper-test-examples.js.map +0 -1
  1065. package/dist/collection/components/ic-stepper/ic-stepper.test.a11y.js.map +0 -1
  1066. package/dist/collection/components/ic-switch/ic-switch.test.a11y.js.map +0 -1
  1067. package/dist/collection/components/ic-tab-context/ic-tab-context.test.a11y.js.map +0 -1
  1068. package/dist/collection/components/ic-text-field/ic-text-field.test.a11y.js.map +0 -1
  1069. package/dist/collection/components/ic-toast/ic-toast.test.a11y.js.map +0 -1
  1070. package/dist/collection/components/ic-tooltip/ic-tooltip.test.a11y.js.map +0 -1
  1071. package/dist/collection/components/ic-top-navigation/ic-top-navigation.test.a11y.js.map +0 -1
  1072. package/dist/collection/components/ic-typography/ic-typography.test.a11y.js.map +0 -1
  1073. package/dist/components/popper.js.map +0 -1
  1074. package/dist/core/p-1724000c.js +0 -2
  1075. package/dist/core/p-1724000c.js.map +0 -1
  1076. package/dist/core/p-17f91c94.entry.js +0 -2
  1077. package/dist/core/p-17f91c94.entry.js.map +0 -1
  1078. package/dist/core/p-18ae4b6d.entry.js +0 -2
  1079. package/dist/core/p-18ae4b6d.entry.js.map +0 -1
  1080. package/dist/core/p-18bf3cb0.entry.js +0 -2
  1081. package/dist/core/p-18bf3cb0.entry.js.map +0 -1
  1082. package/dist/core/p-24240e11.js.map +0 -1
  1083. package/dist/core/p-2642f880.entry.js +0 -2
  1084. package/dist/core/p-2642f880.entry.js.map +0 -1
  1085. package/dist/core/p-284970bc.entry.js.map +0 -1
  1086. package/dist/core/p-31a595c1.entry.js +0 -2
  1087. package/dist/core/p-31a595c1.entry.js.map +0 -1
  1088. package/dist/core/p-35a03442.entry.js.map +0 -1
  1089. package/dist/core/p-360adc51.entry.js +0 -2
  1090. package/dist/core/p-360adc51.entry.js.map +0 -1
  1091. package/dist/core/p-3dda76db.entry.js +0 -2
  1092. package/dist/core/p-3dda76db.entry.js.map +0 -1
  1093. package/dist/core/p-41e239cb.entry.js +0 -2
  1094. package/dist/core/p-41e239cb.entry.js.map +0 -1
  1095. package/dist/core/p-44512ebe.js +0 -2
  1096. package/dist/core/p-44512ebe.js.map +0 -1
  1097. package/dist/core/p-44c9612c.entry.js +0 -2
  1098. package/dist/core/p-44c9612c.entry.js.map +0 -1
  1099. package/dist/core/p-521be4e2.entry.js +0 -2
  1100. package/dist/core/p-521be4e2.entry.js.map +0 -1
  1101. package/dist/core/p-5450cebf.js +0 -3
  1102. package/dist/core/p-5450cebf.js.map +0 -1
  1103. package/dist/core/p-55512a85.entry.js +0 -2
  1104. package/dist/core/p-55512a85.entry.js.map +0 -1
  1105. package/dist/core/p-560c06af.entry.js +0 -2
  1106. package/dist/core/p-560c06af.entry.js.map +0 -1
  1107. package/dist/core/p-57f2c81c.entry.js +0 -2
  1108. package/dist/core/p-57f2c81c.entry.js.map +0 -1
  1109. package/dist/core/p-5b083ce5.entry.js +0 -2
  1110. package/dist/core/p-5b083ce5.entry.js.map +0 -1
  1111. package/dist/core/p-62b3516e.entry.js +0 -2
  1112. package/dist/core/p-62b3516e.entry.js.map +0 -1
  1113. package/dist/core/p-691ea0f2.entry.js +0 -2
  1114. package/dist/core/p-691ea0f2.entry.js.map +0 -1
  1115. package/dist/core/p-7818d958.entry.js +0 -2
  1116. package/dist/core/p-7818d958.entry.js.map +0 -1
  1117. package/dist/core/p-7a0bf893.entry.js +0 -2
  1118. package/dist/core/p-7a0bf893.entry.js.map +0 -1
  1119. package/dist/core/p-7a9bc7f2.entry.js.map +0 -1
  1120. package/dist/core/p-7fd50355.entry.js.map +0 -1
  1121. package/dist/core/p-897e967a.entry.js +0 -2
  1122. package/dist/core/p-897e967a.entry.js.map +0 -1
  1123. package/dist/core/p-8f1176c6.entry.js +0 -2
  1124. package/dist/core/p-8f1176c6.entry.js.map +0 -1
  1125. package/dist/core/p-8ffa00c9.entry.js.map +0 -1
  1126. package/dist/core/p-91a8db51.entry.js +0 -2
  1127. package/dist/core/p-91a8db51.entry.js.map +0 -1
  1128. package/dist/core/p-a09d853e.entry.js +0 -2
  1129. package/dist/core/p-a09d853e.entry.js.map +0 -1
  1130. package/dist/core/p-a667e329.entry.js +0 -2
  1131. package/dist/core/p-a667e329.entry.js.map +0 -1
  1132. package/dist/core/p-ad2477d8.entry.js.map +0 -1
  1133. package/dist/core/p-b35ae170.entry.js +0 -2
  1134. package/dist/core/p-b35ae170.entry.js.map +0 -1
  1135. package/dist/core/p-b40bd77c.entry.js +0 -2
  1136. package/dist/core/p-b40bd77c.entry.js.map +0 -1
  1137. package/dist/core/p-b4234318.entry.js +0 -2
  1138. package/dist/core/p-b4234318.entry.js.map +0 -1
  1139. package/dist/core/p-ba8d6c23.entry.js.map +0 -1
  1140. package/dist/core/p-bd819f68.entry.js +0 -2
  1141. package/dist/core/p-bd819f68.entry.js.map +0 -1
  1142. package/dist/core/p-c4a7c734.entry.js.map +0 -1
  1143. package/dist/core/p-c72e4b75.entry.js +0 -2
  1144. package/dist/core/p-c72e4b75.entry.js.map +0 -1
  1145. package/dist/core/p-c7b86643.entry.js +0 -2
  1146. package/dist/core/p-c7b86643.entry.js.map +0 -1
  1147. package/dist/core/p-c8f07be6.entry.js +0 -2
  1148. package/dist/core/p-c8f07be6.entry.js.map +0 -1
  1149. package/dist/core/p-c9068822.entry.js +0 -2
  1150. package/dist/core/p-c9068822.entry.js.map +0 -1
  1151. package/dist/core/p-cccbf2bf.entry.js +0 -2
  1152. package/dist/core/p-cccbf2bf.entry.js.map +0 -1
  1153. package/dist/core/p-d2508752.entry.js.map +0 -1
  1154. package/dist/core/p-d7bbace4.entry.js +0 -2
  1155. package/dist/core/p-d7bbace4.entry.js.map +0 -1
  1156. package/dist/core/p-d86b0d0e.entry.js +0 -2
  1157. package/dist/core/p-d86b0d0e.entry.js.map +0 -1
  1158. package/dist/core/p-e0d88c31.entry.js +0 -2
  1159. package/dist/core/p-e0d88c31.entry.js.map +0 -1
  1160. package/dist/core/p-e9202767.entry.js +0 -2
  1161. package/dist/core/p-e9202767.entry.js.map +0 -1
  1162. package/dist/core/p-eba373bf.entry.js +0 -2
  1163. package/dist/core/p-eba373bf.entry.js.map +0 -1
  1164. package/dist/core/p-ec26fc38.js +0 -2
  1165. package/dist/core/p-ec26fc38.js.map +0 -1
  1166. package/dist/core/p-ed6cf9b9.entry.js +0 -2
  1167. package/dist/core/p-ed6cf9b9.entry.js.map +0 -1
  1168. package/dist/esm/chevron-icon-98c98242.js +0 -8
  1169. package/dist/esm/chevron-icon-98c98242.js.map +0 -1
  1170. package/dist/esm/close-icon-2f02b42a.js.map +0 -1
  1171. package/dist/esm/helpers-c332acf8.js.map +0 -1
  1172. package/dist/esm/index-90721b3c.js.map +0 -1
  1173. package/dist/esm/popper-f860750c.js +0 -1801
  1174. package/dist/esm/popper-f860750c.js.map +0 -1
  1175. /package/dist/collection/{components/ic-link/assets → assets}/OpenInNew.svg +0 -0
  1176. /package/dist/collection/components/ic-back-to-top/{ic-back-to-top.test.a11y.js → test/a11y/ic-back-to-top.test.a11y.js} +0 -0
  1177. /package/dist/collection/components/ic-breadcrumb-group/{ic-breadcrumb-group-test-examples.js → test/basic/ic-breadcrumb-group-test-examples.js} +0 -0
  1178. /package/dist/collection/components/ic-stepper/{ic-stepper-test-examples.js → test/basic/ic-stepper-test-examples.js} +0 -0
  1179. /package/dist/collection/components/ic-tab-context/{ic-tab-context.test.a11y.js → test/a11y/ic-tab-context.test.a11y.js} +0 -0
  1180. /package/dist/collection/components/ic-text-field/{ic-text-field.test.a11y.js → test/a11y/ic-text-field.test.a11y.js} +0 -0
  1181. /package/dist/types/components/ic-alert/{ic-alert.test.a11y.d.ts → test/a11y/ic-alert.test.a11y.d.ts} +0 -0
  1182. /package/dist/types/components/ic-back-to-top/{ic-back-to-top.test.a11y.d.ts → test/a11y/ic-back-to-top.test.a11y.d.ts} +0 -0
  1183. /package/dist/types/components/ic-breadcrumb-group/{ic-breadcrumb-group.test.a11y.d.ts → test/a11y/ic-breadcrumb-group.test.a11y.d.ts} +0 -0
  1184. /package/dist/types/components/ic-breadcrumb-group/{ic-breadcrumb-group-test-examples.d.ts → test/basic/ic-breadcrumb-group-test-examples.d.ts} +0 -0
  1185. /package/dist/types/components/ic-button/{ic-button.test.a11y.d.ts → test/a11y/ic-button.test.a11y.d.ts} +0 -0
  1186. /package/dist/types/components/ic-card/{ic-card.test.a11y.d.ts → test/a11y/ic-card.test.a11y.d.ts} +0 -0
  1187. /package/dist/types/components/ic-checkbox-group/{ic-checkbox-group.test.a11y.d.ts → test/a11y/ic-checkbox-group.test.a11y.d.ts} +0 -0
  1188. /package/dist/types/components/ic-chip/{ic-chip.test.a11y.d.ts → test/a11y/ic-chip.test.a11y.d.ts} +0 -0
  1189. /package/dist/types/components/ic-classification-banner/{ic-classification-banner.test.a11y.d.ts → test/a11y/ic-classification-banner.test.a11y.d.ts} +0 -0
  1190. /package/dist/types/components/ic-data-entity/{ic-data-entity.test.a11y.d.ts → test/a11y/ic-data-entity.test.a11y.d.ts} +0 -0
  1191. /package/dist/types/components/ic-data-row/{ic-data-row.test.a11y.d.ts → test/a11y/ic-data-row.test.a11y.d.ts} +0 -0
  1192. /package/dist/types/components/{ic-footer-link-group/ic-footer-link-group.test.a11y.d.ts → ic-dialog/test/a11y/ic-dialog.test.a11y.d.ts} +0 -0
  1193. /package/dist/types/components/{ic-footer-link/ic-footer-link.test.a11y.d.ts → ic-empty-state/test/a11y/ic-empty-state.test.a11y.d.ts} +0 -0
  1194. /package/dist/types/components/{ic-horizontal-scroll/ic-horizontal-scroll.test.a11y.d.ts → ic-footer/test/a11y/ic-footer.test.a11y.d.ts} +0 -0
  1195. /package/dist/types/components/{ic-hero/ic-hero.test.a11y.d.ts → ic-footer-link/test/a11y/ic-footer-link.test.a11y.d.ts} +0 -0
  1196. /package/dist/types/components/{ic-footer/ic-footer.test.a11y.d.ts → ic-footer-link-group/test/a11y/ic-footer-link-group.test.a11y.d.ts} +0 -0
  1197. /package/dist/types/components/{ic-link/ic-link.test.a11y.d.ts → ic-hero/test/a11y/ic-hero.test.a11y.d.ts} +0 -0
  1198. /package/dist/types/components/{ic-loading-indicator/ic-loading-indicator.test.a11y.d.ts → ic-horizontal-scroll/test/a11y/ic-horizontal-scroll.test.a11y.d.ts} +0 -0
  1199. /package/dist/types/components/{ic-navigation-group/ic-navigation-group.test.a11y.d.ts → ic-link/test/a11y/ic-link.test.a11y.d.ts} +0 -0
  1200. /package/dist/types/components/{ic-navigation-item/ic-navigation-item.test.a11y.d.ts → ic-loading-indicator/test/a11y/ic-loading-indicator.test.a11y.d.ts} +0 -0
  1201. /package/dist/types/components/{ic-page-header/ic-page-header.test.a11y.d.ts → ic-navigation-group/test/a11y/ic-navigation-group.test.a11y.d.ts} +0 -0
  1202. /package/dist/types/components/{ic-radio-group/ic-radio-group.test.a11y.d.ts → ic-navigation-item/test/a11y/ic-navigation-item.test.a11y.d.ts} +0 -0
  1203. /package/dist/types/components/{ic-search-bar/ic-search-bar.test.a11y.d.ts → ic-page-header/test/a11y/ic-page-header.test.a11y.d.ts} +0 -0
  1204. /package/dist/types/components/{ic-select/ic-select.test.a11y.d.ts → ic-pagination/test/a11y/ic-pagination.test.a11y.d.ts} +0 -0
  1205. /package/dist/types/components/{ic-side-navigation/ic-side-navigation.test.a11y.d.ts → ic-popover-menu/test/a11y/ic-popover-menu.test.a11y.d.ts} +0 -0
  1206. /package/dist/types/components/{ic-skeleton/ic-skeleton.test.a11y.d.ts → ic-radio-group/test/a11y/ic-radio-group.test.a11y.d.ts} +0 -0
  1207. /package/dist/types/components/{ic-status-tag/ic-status-tag.test.a11y.d.ts → ic-search-bar/test/a11y/ic-search-bar.test.a11y.d.ts} +0 -0
  1208. /package/dist/types/components/{ic-stepper/ic-stepper.test.a11y.d.ts → ic-select/test/a11y/ic-select.test.a11y.d.ts} +0 -0
  1209. /package/dist/types/components/{ic-switch/ic-switch.test.a11y.d.ts → ic-side-navigation/test/a11y/ic-side-navigation.test.a11y.d.ts} +0 -0
  1210. /package/dist/types/components/{ic-tab-context/ic-tab-context.test.a11y.d.ts → ic-skeleton/test/a11y/ic-skeleton.test.a11y.d.ts} +0 -0
  1211. /package/dist/types/components/{ic-text-field/ic-text-field.test.a11y.d.ts → ic-status-tag/test/a11y/ic-status-tag.test.a11y.d.ts} +0 -0
  1212. /package/dist/types/components/{ic-toast/ic-toast.test.a11y.d.ts → ic-stepper/test/a11y/ic-stepper.test.a11y.d.ts} +0 -0
  1213. /package/dist/types/components/ic-stepper/{ic-stepper-test-examples.d.ts → test/basic/ic-stepper-test-examples.d.ts} +0 -0
  1214. /package/dist/types/components/{ic-tooltip/ic-tooltip.test.a11y.d.ts → ic-switch/test/a11y/ic-switch.test.a11y.d.ts} +0 -0
  1215. /package/dist/types/components/{ic-top-navigation/ic-top-navigation.test.a11y.d.ts → ic-tab-context/test/a11y/ic-tab-context.test.a11y.d.ts} +0 -0
  1216. /package/dist/types/components/{ic-typography/ic-typography.test.a11y.d.ts → ic-text-field/test/a11y/ic-text-field.test.a11y.d.ts} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"sources":["src/components/ic-select/ic-select.css?tag=ic-select&encapsulation=shadow","src/components/ic-select/ic-select.tsx"],"names":["icSelectCss","inputIds","Select","this","inputId","menuId","inheritedAttributes","hasSetSearchableDefaultValue","initialRender","emitIcChange","value","clearTimeout","debounceIcChange","window","setTimeout","icChange","emit","currDebounce","emitImmediateIcChange","isMenuEnabled","searchableSelectInputValue","charactersUntilSuggestions","length","setOptionsValuesFromLabels","options","map","option","label","setTextColor","nativeSelectElement","selectedIndex","className","setMenuChange","open","getLabelFromValue","getValueFromLabel","_a","find","getFilteredChildMenuOptions","children","getFilteredMenuOptions","includeDescriptionsInSearch","searchMatchPosition","newOption","Object","assign","handleNativeSelectChange","icOptionSelect","handleCustomSelectChange","event","searchable","detail","emptyOptionListText","searchableSelectElement","focus","ariaActiveDescendant","optionId","handleMenuChange","handleFocusIndicatorDisplay","handleMenuKeyPress","ev","debounce","isNavKey","debounceChangedHandler","focusIndicator","host","shadowRoot","querySelector","classList","add","remove","handleMouseDown","preventDefault","isExternalFiltering","disableFilter","handleClick","menu","filteredOptions","noOptions","handleClickOpen","handleExpandIconMouseDown","disabled","handleClear","stopPropagation","icClear","customSelectElement","handleKeyDown","cancelBubble","isArrowKey","key","handleKeyboardOpen","handleClearButtonFocus","clearButtonFocused","handleClearButtonBlur","handleSearchableSelectInput","target","icInput","undefined","isGrouped","newFilteredOptions","menuOptionsFiltered","includeGroupTitlesInSearch","indexOf","push","noChildOptionsWhenFiltered","debounceAriaLiveUpdate","updateSearchableSelectResultAriaLive","searchableSelectResultsStatusEl","innerText","getDefaultValue","onFocus","icFocus","onBlur","relatedTarget","clearButton","icBlur","handleFormReset","initialValue","[object Object]","setSearchableDefaultValue","newValue","updateOnChangeDebounce","debounceAria","inheritAttributes","IC_INHERITED_ARIA","addFormResetListener","onComponentRequiredPropUndefined","prop","propName","removeFormResetListener","small","fullWidth","helperText","hideLabel","name","placeholder","readonly","required","showClearButton","validationStatus","validationText","renderHiddenInput","invalid","IcInformationStatus","Error","describedBy","getInputDescribedByText","hasValidationStatus","trim","h","Host","for","ref","el","anchorEl","class","menu-open","isMobileOrTablet","onChange","id","aria-label","aria-describedby","aria-invalid","selected","role","aria-activedescendant","aria-autocomplete","aria-expanded","aria-required","aria-controls","onInput","onClick","onKeyDown","innerHTML","Clear","size","variant","appearance","IcThemeForegroundEnum","Light","Dark","onMouseDown","expand-icon","expand-icon-open","expand-icon-filled","expand-icon-disabled","Expand","aria-hidden","aria-live","aria-haspopup","aria-owns","value-text","no-results","inputEl","inputLabel","onMenuStateChange","onMenuOptionSelect","onMenuKeyPress","parentEl","ariaLiveMode","status","message"],"mappings":"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","sourcesContent":["@import \"../../global/normalize.css\";\n\n/**\n * @prop --input-width: Width of the input field\n * @prop --ic-z-index-menu: z-index of select menu\n */\n\n:host {\n position: relative;\n}\n\n:host([full-width]) {\n width: 100%;\n}\n\nic-input-component-container:hover {\n --border-color: var(--ic-action-dark-hover);\n}\n\nic-input-component-container:active {\n --border-color: var(--ic-action-dark-active);\n\n color: var(--ic-action-dark-active);\n}\n\nic-input-component-container.menu-open {\n --border-color: var(--ic-architectural-400);\n\n color: var(--ic-action-dark);\n}\n\nic-input-validation .status-icon,\nic-input-validation .statustext {\n visibility: visible;\n}\n\nic-input-validation.menu-open .status-icon,\nic-input-validation.menu-open .statustext {\n visibility: hidden;\n transition: visibility 0s;\n}\n\nic-input-label {\n margin-bottom: var(--ic-space-xs) !important;\n}\n\nselect {\n border: 0;\n border-radius: var(--ic-border-radius);\n background-color: var(--ic-architectural-white);\n color: var(--ic-color-primary-text);\n line-height: 1.5rem;\n letter-spacing: 0.005rem;\n width: 100%;\n height: 100%;\n padding-left: 0.375rem;\n appearance: none;\n background-repeat: no-repeat;\n background-position: right 0.375rem center;\n 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>\");\n}\n\nselect option,\n.select-option-selected {\n color: var(--ic-color-primary-text);\n}\n\nselect:disabled {\n color: var(--ic-architectural-200);\n 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>\");\n}\n\nselect:focus {\n border: 0;\n outline: 0;\n}\n\nselect:not([disabled]) {\n cursor: pointer;\n}\n\n.select-container {\n width: 100%;\n display: flex;\n align-items: center;\n position: relative;\n}\n\n.select-input {\n width: 100%;\n height: 100%;\n padding: 0 0.375rem;\n display: flex;\n cursor: pointer;\n align-items: center;\n justify-content: space-between;\n background: none;\n border: none;\n}\n\n.select-input:focus {\n outline: var(--ic-hc-focus-outline);\n}\n\n:host(:not([disabled])) ic-input-component-container:hover .select-input {\n background-color: var(--ic-architectural-white);\n}\n\n:host([disabled]) .select-input {\n pointer-events: none;\n}\n\n:host([searchable]) .select-input {\n cursor: auto;\n}\n\n.searchable-select-container {\n align-items: center;\n display: flex;\n width: 100%;\n position: relative;\n}\n\n.expand-icon {\n height: var(--ic-space-lg);\n padding-left: var(--ic-space-xs);\n color: var(--ic-action-dark);\n}\n\n.expand-icon > svg {\n display: inline-block;\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n}\n\n:host([disabled]) .expand-icon,\n:host([disabled]) .expand-icon > svg > path {\n color: var(--ic-architectural-200);\n}\n\n:host([searchable]) .expand-icon {\n padding-left: var(--ic-space-xxs);\n height: 2.25rem;\n}\n\n:host([searchable]) .expand-icon > svg {\n height: 2.25rem;\n padding: 0 0.375rem;\n}\n\n:host([searchable]:not([disabled])) .expand-icon > svg {\n cursor: pointer;\n}\n\n.expand-icon-open {\n color: var(--ic-action-dark);\n}\n\n.expand-icon-filled {\n color: var(--ic-action-dark);\n}\n\n.expand-icon-open,\n:host([searchable]) .expand-icon-open {\n transform: rotateX(180deg);\n}\n\n:host([disabled]) .value-text,\n.placeholder {\n color: var(--ic-color-tertiary-text);\n}\n\n.select-input-end {\n display: flex;\n align-items: center;\n}\n\n.clear-button-container {\n display: flex;\n gap: var(--ic-space-xxs);\n padding-left: 2.375rem;\n}\n\n:host([small]) .clear-button-container {\n padding-left: 1.875rem;\n}\n\n.divider {\n width: 0.063rem;\n background-color: var(--ic-architectural-400);\n margin: var(--ic-space-xxs) 0;\n border-radius: 0.063rem;\n height: var(--ic-space-lg);\n}\n\n:host([small]) .divider {\n height: var(--ic-space-md);\n}\n\n.clear-button {\n position: absolute;\n right: 2.75rem;\n border-radius: var(--ic-border-radius);\n transition: box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition);\n}\n\n.clear-button:focus {\n background-color: var(--ic-focus-blue);\n box-shadow: inset 0 0 0 0.125rem var(--ic-focus-glow);\n border-radius: 0.25rem;\n}\n\n.clear-button:focus * {\n fill: white;\n}\n\n.searchable-select-results-status {\n border: 0;\n clip: rect(0, 0, 0, 0, 0);\n height: 0.063rem;\n overflow: hidden;\n padding: 0;\n position: absolute;\n white-space: nowrap;\n width: 0.063rem;\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Method,\n Prop,\n h,\n State,\n Watch,\n} from \"@stencil/core\";\n\nimport {\n getInputDescribedByText,\n getLabelFromValue,\n hasValidationStatus,\n inheritAttributes,\n onComponentRequiredPropUndefined,\n renderHiddenInput,\n isMobileOrTablet,\n getFilteredMenuOptions,\n addFormResetListener,\n removeFormResetListener,\n} from \"../../utils/helpers\";\nimport { IC_INHERITED_ARIA } from \"../../utils/constants\";\nimport {\n IcInformationStatus,\n IcInformationStatusOrEmpty,\n IcThemeForegroundEnum,\n IcMenuOption,\n IcSearchMatchPositions,\n} from \"../../utils/types\";\nimport Expand from \"./assets/Expand.svg\";\nimport Clear from \"./assets/Clear.svg\";\nimport { IcValueEventDetail } from \"../../interface\";\nimport { IcOptionSelectEventDetail } from \"../ic-menu/ic-menu.types\";\n\nlet inputIds = 0;\n\n@Component({\n tag: \"ic-select\",\n styleUrl: \"ic-select.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class Select {\n private nativeSelectElement: HTMLSelectElement;\n private customSelectElement: HTMLButtonElement;\n private searchableSelectElement: HTMLInputElement;\n private menu: HTMLIcMenuElement;\n private anchorEl: HTMLElement;\n private clearButton: HTMLIcButtonElement;\n\n private inputId = `ic-select-input-${inputIds++}`;\n private menuId = `${this.inputId}-menu`;\n\n private inheritedAttributes: { [k: string]: unknown } = {};\n\n private debounceAria: number;\n private hasSetSearchableDefaultValue = false;\n\n /**\n * The label for the select.\n */\n @Prop() label!: string;\n\n /**\n * The possible selection options.\n */\n @Prop() options?: IcMenuOption[] = [];\n\n /**\n * If `true`, the select will require a value.\n */\n @Prop() required?: boolean = false;\n\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n @Prop() hideLabel?: boolean = false;\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop({ reflect: true }) disabled?: boolean = false;\n\n /**\n * If `true`, the readonly state will be set.\n */\n @Prop() readonly?: boolean = false;\n\n /**\n * The placeholder value to be displayed.\n */\n @Prop() placeholder?: string = \"Select an option\";\n\n /**\n * The helper text that will be displayed for additional field guidance.\n */\n @Prop() helperText?: string = \"\";\n\n /**\n * If `true`, the small styling will be applied to the select.\n */\n @Prop() small?: boolean = false;\n\n /**\n * If `true`, the select element will fill the width of the container.\n */\n @Prop() fullWidth: boolean = false;\n\n /**\n * The validation status - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationStatus?: IcInformationStatusOrEmpty = \"\";\n\n /**\n * The text to display as the validation message.\n */\n @Prop() validationText?: string = \"\";\n\n /**\n * The value of the currently selected option.\n */\n @Prop({ mutable: true }) value?: string;\n\n /**\n * The amount of time, in milliseconds, to wait to trigger the `icChange` event after each keystroke.\n */\n @Prop() debounce?: number = 0;\n\n /**\n * The name of the control, which is submitted with the form data.\n */\n @Prop() name?: string = this.inputId;\n\n /**\n * If `true`, a button which clears the select input when clicked will be displayed. The button will always appear on the searchable select.\n */\n @Prop() showClearButton?: boolean = false;\n\n /**\n * If `true`, a searchable variant of the select will be displayed which can be typed in to filter options.\n */\n @Prop() searchable?: boolean = false;\n\n /**\n * If `true`, descriptions of options will be included when filtering options in a searchable select. Only applies to built in filtering.\n */\n @Prop() includeDescriptionsInSearch?: boolean = false;\n\n /**\n * If `true`, group titles of grouped options will be included when filtering options in a searchable select. Only applies to built in filtering.\n */\n @Prop() includeGroupTitlesInSearch?: boolean = false;\n\n /**\n * Whether the search string of the searchable select should match the start of or anywhere in the options. Only applies to built in filtering.\n */\n @Prop() searchMatchPosition?: IcSearchMatchPositions = \"anywhere\";\n\n /**\n * The number of characters until suggestions appear for a searchable select.\n */\n @Prop() charactersUntilSuggestions?: number = 0;\n\n /**\n * The text displayed when there are no options in the option list.\n */\n @Prop() emptyOptionListText = \"No results found\";\n\n /**\n * Specify whether to disable the built in filtering for a searchable variant. For example, if options will already be filtered from external source.\n */\n @Prop() disableFilter?: boolean = false;\n\n @State() open: boolean = false;\n\n @State() clearButtonFocused: boolean = false;\n\n @State() searchableSelectInputValue: string = null;\n\n @State() filteredOptions: IcMenuOption[] = this.options;\n\n @State() ariaActiveDescendant: string;\n\n @State() noOptions: IcMenuOption[] = null;\n\n @State() initialValue = this.value;\n\n @State() currDebounce = this.debounce;\n\n @State() debounceIcChange: number;\n\n private initialRender = false;\n\n @Watch(\"options\")\n watchOptionsHandler(): void {\n if (this.isExternalFiltering()) {\n if (this.options.length > 0) {\n this.setOptionsValuesFromLabels();\n this.noOptions = null;\n this.filteredOptions = this.options;\n } else if (this.isMenuEnabled()) {\n this.noOptions = [{ label: this.emptyOptionListText, value: \"\" }];\n this.filteredOptions = this.noOptions;\n\n // Will prevent 'No results found' displaying on initial load and setting default value\n if (!this.initialRender) {\n this.setMenuChange(true);\n }\n }\n\n this.updateSearchableSelectResultAriaLive();\n this.setSearchableDefaultValue();\n } else {\n this.setOptionsValuesFromLabels();\n this.filteredOptions = this.options;\n }\n }\n\n @Watch(\"debounce\")\n debounceChangedHandler(newValue: number) {\n this.updateOnChangeDebounce(newValue);\n }\n\n /**\n * Emitted when the value changes.\n */\n @Event() icChange!: EventEmitter<IcValueEventDetail>;\n\n /**\n * Emitted when clear button clicked.\n */\n @Event() icClear!: EventEmitter<void>;\n\n /**\n * Emitted when select gains focus.\n */\n @Event() icFocus!: EventEmitter<void>;\n\n /**\n * Emitted when select loses focus.\n */\n @Event() icBlur!: EventEmitter<void>;\n\n /**\n * Emitted when option is highlighted within the menu.\n * Highlighting a menu item will trigger an `icChange/onIcChange` due to the value being updated.\n */\n @Event() icOptionSelect: EventEmitter<IcOptionSelectEventDetail>;\n\n /**\n * Emitted when a keyboard input occurred.\n */\n @Event() icInput: EventEmitter<IcValueEventDetail>;\n\n @Element() host!: HTMLIcSelectElement;\n\n /**\n * Sets focus on the input box.\n */\n @Method()\n async setFocus(): Promise<void> {\n if (this.nativeSelectElement) {\n this.nativeSelectElement.focus();\n } else if (this.customSelectElement) {\n this.customSelectElement.focus();\n } else if (this.searchableSelectElement) {\n this.searchableSelectElement.focus();\n }\n }\n\n private updateOnChangeDebounce(newValue: number) {\n if (this.currDebounce !== newValue) {\n this.currDebounce = newValue;\n }\n }\n\n private emitIcChange = (value: string) => {\n clearTimeout(this.debounceIcChange);\n this.debounceIcChange = window.setTimeout(() => {\n this.icChange.emit({ value: value });\n }, this.currDebounce);\n };\n\n private emitImmediateIcChange = (value: string) => {\n clearTimeout(this.debounceIcChange);\n this.icChange.emit({ value: value });\n };\n\n private isMenuEnabled = () => {\n return (\n ((this.searchableSelectInputValue === null ||\n this.searchableSelectInputValue === \"\") &&\n this.charactersUntilSuggestions === 0) ||\n (this.searchableSelectInputValue &&\n this.searchableSelectInputValue.length >=\n this.charactersUntilSuggestions)\n );\n };\n\n private setOptionsValuesFromLabels = (): void => {\n if (this.options.length > 0) {\n this.options.map((option) => {\n if (!option.value) {\n option.value = option.label;\n }\n });\n }\n };\n\n private setTextColor = (): void => {\n if (this.nativeSelectElement.selectedIndex === 0) {\n this.nativeSelectElement.className = \"placeholder\";\n } else {\n this.nativeSelectElement.className = \"select-option-selected\";\n }\n };\n\n private setMenuChange = (open: boolean) => {\n if (this.open !== open) {\n this.open = open;\n }\n };\n\n private getLabelFromValue = (value: string): string | undefined => {\n return getLabelFromValue(value, this.options);\n };\n\n private getValueFromLabel = (label: string): string | undefined => {\n const value = this.options.find((option) => option.label === label)?.value;\n return value;\n };\n\n private getFilteredChildMenuOptions = (option: IcMenuOption) => {\n let children = option.children;\n\n children = getFilteredMenuOptions(\n option.children,\n this.includeDescriptionsInSearch,\n this.searchableSelectInputValue,\n this.searchMatchPosition\n );\n\n const newOption = { ...option };\n newOption.children = children;\n return newOption;\n };\n\n private handleNativeSelectChange = (): void => {\n this.icOptionSelect.emit({ value: this.nativeSelectElement.value });\n this.emitImmediateIcChange(this.nativeSelectElement.value);\n this.setTextColor();\n };\n\n private handleCustomSelectChange = (event: CustomEvent): void => {\n if (this.searchable && event.detail.label === this.emptyOptionListText) {\n this.searchableSelectElement.focus();\n return;\n }\n\n if (this.searchable) {\n this.searchableSelectInputValue = this.getLabelFromValue(\n event.detail.value\n );\n }\n\n this.ariaActiveDescendant = event.detail.optionId;\n this.icOptionSelect.emit({ value: event.detail.value });\n this.emitImmediateIcChange(event.detail.value);\n };\n\n private handleMenuChange = (event: CustomEvent): void => {\n this.open = event.detail.open;\n\n this.searchable && this.handleFocusIndicatorDisplay();\n };\n\n // clears the debounce delay when navigating the menu with arrow keys etc\n // to prevent delay in change event, which should only occur when typing in input\n private handleMenuKeyPress = (ev: CustomEvent): void => {\n const debounce = ev.detail.isNavKey ? 0 : this.debounce;\n this.debounceChangedHandler(debounce);\n };\n\n private handleFocusIndicatorDisplay = () => {\n const focusIndicator =\n this.host.shadowRoot.querySelector(\".focus-indicator\");\n\n if (this.open) {\n focusIndicator.classList.add(\"focus-indicator-enabled\");\n } else {\n focusIndicator.classList.remove(\"focus-indicator-enabled\");\n }\n };\n\n private handleMouseDown = (event: Event): void => {\n if (!this.open) {\n event.preventDefault();\n }\n };\n\n private isExternalFiltering = (): boolean =>\n this.searchable && this.disableFilter;\n\n private handleClick = (event: MouseEvent): void => {\n if (this.isExternalFiltering()) {\n this.menu.options = this.filteredOptions;\n } else {\n this.noOptions = null;\n this.menu.options = this.options;\n }\n\n if (event.detail !== 0 && this.isMenuEnabled()) {\n this.menu.handleClickOpen();\n }\n };\n\n private handleExpandIconMouseDown = (event: MouseEvent) => {\n if (!this.disabled) {\n event.preventDefault();\n this.searchableSelectElement.focus();\n this.handleClick(event);\n }\n };\n\n private handleClear = (event: Event): void => {\n event.stopPropagation();\n this.noOptions = null;\n this.emitImmediateIcChange(null);\n this.icClear.emit();\n\n if (this.searchable) {\n this.searchableSelectElement.value = null;\n this.searchableSelectInputValue = null;\n this.menu.options = this.options;\n this.searchableSelectElement.focus();\n\n if (!this.isMenuEnabled()) {\n this.setMenuChange(false);\n }\n } else {\n this.customSelectElement.focus();\n }\n };\n\n private handleKeyDown = (event: KeyboardEvent): void => {\n event.cancelBubble = true;\n const isArrowKey = event.key === \"ArrowDown\" || event.key === \"ArrowUp\";\n\n if (!this.open) {\n if (this.isExternalFiltering() && (event.key === \"Enter\" || isArrowKey)) {\n this.menu.options = this.filteredOptions;\n } else {\n this.noOptions = null;\n this.menu.options = this.options;\n }\n }\n\n if (this.open && event.key === \"Enter\") {\n this.setMenuChange(false);\n } else {\n if (!(isArrowKey && this.noOptions !== null) && this.isMenuEnabled()) {\n if (this.isExternalFiltering() && isArrowKey && this.debounce > 0) {\n this.debounceChangedHandler(0);\n }\n this.menu.handleKeyboardOpen(event);\n }\n }\n };\n\n private handleClearButtonFocus = (): void => {\n this.clearButtonFocused = true;\n };\n\n private handleClearButtonBlur = (): void => {\n this.clearButtonFocused = false;\n };\n\n private handleSearchableSelectInput = (event: Event): void => {\n this.searchableSelectInputValue = (event.target as HTMLInputElement).value;\n this.icInput.emit({ value: this.searchableSelectInputValue });\n\n if (this.disableFilter) {\n this.emitIcChange(this.searchableSelectInputValue);\n } else if (\n this.getValueFromLabel(this.searchableSelectInputValue) === undefined\n ) {\n this.emitIcChange(null);\n }\n\n if (this.isMenuEnabled()) {\n this.setMenuChange(true);\n } else {\n this.setMenuChange(false);\n }\n\n if (!this.disableFilter) {\n const options = [...this.options];\n\n let isGrouped = false;\n let newFilteredOptions: IcMenuOption[] = [];\n\n options.map((option) => {\n if (option.children) isGrouped = true;\n });\n\n const menuOptionsFiltered = getFilteredMenuOptions(\n options,\n this.includeDescriptionsInSearch,\n this.searchableSelectInputValue,\n this.searchMatchPosition\n );\n\n if (!isGrouped) {\n newFilteredOptions = menuOptionsFiltered;\n } else {\n options.map((option) => {\n if (this.includeGroupTitlesInSearch) {\n if (menuOptionsFiltered.indexOf(option) !== -1) {\n newFilteredOptions.push(option);\n } else {\n newFilteredOptions.push(this.getFilteredChildMenuOptions(option));\n }\n } else {\n newFilteredOptions.push(this.getFilteredChildMenuOptions(option));\n }\n });\n }\n\n let noChildOptionsWhenFiltered = false;\n\n if (isGrouped) {\n noChildOptionsWhenFiltered = true;\n newFilteredOptions.map((option) => {\n if (option.children.length > 0) {\n noChildOptionsWhenFiltered = false;\n }\n });\n }\n\n const noOptions = [{ label: this.emptyOptionListText, value: \"\" }];\n\n if (newFilteredOptions.length > 0 && !noChildOptionsWhenFiltered) {\n this.noOptions = null;\n this.filteredOptions = newFilteredOptions;\n } else {\n this.noOptions = noOptions;\n this.filteredOptions = this.noOptions;\n }\n\n this.debounceAriaLiveUpdate();\n }\n };\n\n private updateSearchableSelectResultAriaLive = (): void => {\n const searchableSelectResultsStatusEl = this.host.shadowRoot.querySelector(\n \".searchable-select-results-status\"\n ) as HTMLDivElement;\n\n if (searchableSelectResultsStatusEl) {\n if (this.noOptions !== null) {\n searchableSelectResultsStatusEl.innerText = this.emptyOptionListText;\n } else {\n searchableSelectResultsStatusEl.innerText = \"\";\n }\n }\n };\n\n private debounceAriaLiveUpdate() {\n clearTimeout(this.debounceAria);\n\n window.setTimeout(() => {\n this.updateSearchableSelectResultAriaLive();\n }, 800);\n }\n\n private getDefaultValue = (value: string): string | null =>\n this.getLabelFromValue(value) || value || null;\n\n private setSearchableDefaultValue() {\n if (!this.hasSetSearchableDefaultValue && this.value && this.searchable) {\n this.searchableSelectInputValue = this.getDefaultValue(this.value);\n this.initialValue = this.value;\n this.hasSetSearchableDefaultValue = true;\n }\n }\n\n private onFocus = (): void => {\n if (this.isExternalFiltering() && this.debounce > 0) {\n this.debounceChangedHandler(this.debounce);\n }\n this.icFocus.emit();\n };\n\n private onBlur = (event: FocusEvent): void => {\n if (\n this.searchable &&\n event.relatedTarget !== this.menu &&\n !(this.clearButton && event.relatedTarget === this.clearButton)\n ) {\n this.setMenuChange(false);\n this.handleFocusIndicatorDisplay();\n }\n\n this.icBlur.emit();\n };\n\n private handleFormReset = (): void => {\n this.value = this.initialValue;\n if (this.searchable) {\n this.searchableSelectInputValue = this.getDefaultValue(this.value);\n }\n };\n\n componentWillLoad(): void {\n this.inheritedAttributes = inheritAttributes(this.host, [\n ...IC_INHERITED_ARIA,\n \"tabindex\",\n \"title\",\n ]);\n\n this.setOptionsValuesFromLabels();\n\n addFormResetListener(this.host, this.handleFormReset);\n\n this.initialRender = true;\n\n if (!this.disableFilter) {\n this.setSearchableDefaultValue();\n }\n }\n\n componentDidRender(): void {\n if (this.nativeSelectElement && !this.disabled) {\n this.setTextColor();\n }\n }\n\n componentWillUpdate(): void {\n this.initialRender = false;\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Select\"\n );\n }\n\n disconnectedCallback(): void {\n removeFormResetListener(this.host, this.handleFormReset);\n }\n\n render() {\n const {\n small,\n disabled,\n fullWidth,\n helperText,\n hideLabel,\n label,\n menuId,\n name,\n options,\n placeholder,\n readonly,\n required,\n searchable,\n showClearButton,\n validationStatus,\n validationText,\n value,\n } = this;\n\n renderHiddenInput(true, this.host, name, value, disabled);\n\n const invalid =\n validationStatus === IcInformationStatus.Error ? \"true\" : \"false\";\n\n const describedBy = getInputDescribedByText(\n this.inputId,\n helperText !== \"\",\n hasValidationStatus(this.validationStatus, this.disabled)\n ).trim();\n\n return (\n <Host>\n <ic-input-container readonly={readonly}>\n {!hideLabel && (\n <ic-input-label\n for={this.inputId}\n label={label}\n helperText={helperText}\n required={required}\n disabled={disabled}\n readonly={readonly}\n ></ic-input-label>\n )}\n <ic-input-component-container\n ref={(el) => (this.anchorEl = el)}\n class={{ \"menu-open\": this.open }}\n small={small}\n fullWidth={fullWidth}\n disabled={disabled}\n readonly={readonly}\n validationStatus={validationStatus}\n >\n {readonly ? (\n <ic-typography>\n <p>{this.getLabelFromValue(value)}</p>\n </ic-typography>\n ) : isMobileOrTablet() ? (\n <select\n ref={(el) => (this.nativeSelectElement = el)}\n disabled={disabled}\n onChange={this.handleNativeSelectChange}\n required={required}\n id={this.inputId}\n aria-label={label}\n aria-describedby={describedBy}\n aria-invalid={invalid}\n onBlur={this.onBlur}\n onFocus={this.onFocus}\n {...this.inheritedAttributes}\n >\n <option value=\"\" selected disabled={!showClearButton}>\n {placeholder}\n </option>\n {options.map((option) => {\n if (option.children) {\n return (\n <optgroup label={option.label}>\n {option.children.map((option) => (\n <option\n value={option.value}\n disabled={option.disabled}\n selected={option.value === value}\n >\n {option.label}\n </option>\n ))}\n </optgroup>\n );\n } else {\n return (\n <option\n value={option.value}\n disabled={option.disabled}\n selected={option.value === value}\n >\n {option.label}\n </option>\n );\n }\n })}\n </select>\n ) : searchable ? (\n <div class=\"searchable-select-container\">\n <input\n class=\"select-input\"\n role=\"combobox\"\n aria-label={label}\n aria-describedby={describedBy}\n aria-activedescendant={this.ariaActiveDescendant}\n aria-autocomplete=\"list\"\n aria-expanded={this.open ? \"true\" : \"false\"}\n aria-invalid={invalid}\n aria-required={required ? \"true\" : \"false\"}\n aria-controls={menuId}\n ref={(el) => (this.searchableSelectElement = el)}\n id={this.inputId}\n value={this.searchableSelectInputValue}\n placeholder={placeholder}\n disabled={disabled}\n onInput={this.handleSearchableSelectInput}\n onClick={this.handleClick}\n onKeyDown={this.handleKeyDown}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n ></input>\n {this.searchableSelectInputValue &&\n (showClearButton || searchable) && (\n <div class=\"clear-button-container\">\n <ic-button\n id=\"clear-button\"\n ref={(el) => (this.clearButton = el)}\n aria-label={\n this.searchableSelectInputValue && value === null\n ? \"Clear input\"\n : \"Clear selection\"\n }\n class=\"clear-button\"\n innerHTML={Clear}\n onClick={this.handleClear}\n onFocus={this.handleClearButtonFocus}\n onBlur={this.handleClearButtonBlur}\n size={small ? \"small\" : \"default\"}\n variant=\"icon\"\n appearance={\n this.clearButtonFocused\n ? IcThemeForegroundEnum.Light\n : IcThemeForegroundEnum.Dark\n }\n ></ic-button>\n <div class=\"divider\"></div>\n </div>\n )}\n <span\n onMouseDown={this.handleExpandIconMouseDown}\n class={{\n \"expand-icon\": true,\n \"expand-icon-open\": this.open,\n \"expand-icon-filled\": !(value == null || value === \"\"),\n \"expand-icon-disabled\": !this.isMenuEnabled(),\n }}\n innerHTML={Expand}\n aria-hidden=\"true\"\n />\n <div\n aria-live=\"polite\"\n role=\"status\"\n class=\"searchable-select-results-status\"\n ></div>\n </div>\n ) : (\n <div class=\"select-container\">\n <button\n class=\"select-input\"\n ref={(el) => (this.customSelectElement = el)}\n id={this.inputId}\n aria-label={`${label}, ${\n this.getLabelFromValue(value) || placeholder\n }${required ? \", required\" : \"\"}`}\n aria-describedby={describedBy}\n aria-invalid={invalid}\n aria-haspopup=\"listbox\"\n aria-expanded={this.open ? \"true\" : \"false\"}\n aria-owns={menuId}\n aria-controls={menuId}\n disabled={disabled}\n onBlur={this.onBlur}\n onFocus={this.onFocus}\n onClick={this.handleClick}\n onMouseDown={this.handleMouseDown}\n onKeyDown={this.handleKeyDown}\n >\n <ic-typography\n variant=\"body\"\n class={{\n \"value-text\": true,\n placeholder: this.getLabelFromValue(value) === undefined,\n }}\n >\n <p>{this.getLabelFromValue(value) || placeholder}</p>\n </ic-typography>\n <div class=\"select-input-end\">\n {value && showClearButton && <div class=\"divider\"></div>}\n <span\n class={{\n \"expand-icon\": true,\n \"expand-icon-open\": this.open,\n \"expand-icon-filled\": !(value == null || value === \"\"),\n }}\n innerHTML={Expand}\n aria-hidden=\"true\"\n />\n </div>\n </button>\n {value && showClearButton && (\n <ic-button\n id=\"clear-button\"\n aria-label=\"Clear selection\"\n class=\"clear-button\"\n innerHTML={Clear}\n onClick={this.handleClear}\n onFocus={this.handleClearButtonFocus}\n onBlur={this.handleClearButtonBlur}\n size={small ? \"small\" : \"default\"}\n variant=\"icon\"\n appearance={\n this.clearButtonFocused\n ? IcThemeForegroundEnum.Light\n : IcThemeForegroundEnum.Dark\n }\n ></ic-button>\n )}\n </div>\n )}\n </ic-input-component-container>\n {!isMobileOrTablet() && (\n <ic-menu\n class={{\n \"no-results\": this.noOptions !== null,\n }}\n ref={(el) => (this.menu = el)}\n inputEl={\n searchable\n ? this.searchableSelectElement\n : this.customSelectElement\n }\n inputLabel={label}\n anchorEl={this.anchorEl}\n small={small}\n menuId={menuId}\n open={this.open}\n options={searchable ? this.filteredOptions : options}\n value={value}\n fullWidth={fullWidth}\n onMenuStateChange={this.handleMenuChange}\n onMenuOptionSelect={this.handleCustomSelectChange}\n onMenuKeyPress={this.handleMenuKeyPress}\n parentEl={this.host}\n ></ic-menu>\n )}\n {hasValidationStatus(this.validationStatus, this.disabled) && (\n <ic-input-validation\n class={{ \"menu-open\": this.open }}\n ariaLiveMode=\"polite\"\n status={validationStatus}\n message={validationText}\n for={this.inputId}\n ></ic-input-validation>\n )}\n </ic-input-container>\n </Host>\n );\n }\n}\n"]}
@@ -1,2 +0,0 @@
1
- import{r as t,h as o,H as e,g as i}from"./p-5450cebf.js";import{D as n,k as r}from"./p-1724000c.js";import"./p-6f57b13c.js";const s='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host(.footer-link-ungrouped-sparse){--footer-link-margin-left:0;--footer-link-margin-right:2.5rem;--footer-link-margin-bottom:0}:host(.footer-link-ungrouped-small){--footer-link-margin-left:0;--footer-link-margin-right:0;--footer-link-margin-bottom:var(--ic-space-md)}:host(.footer-link-grouped-sparse){--footer-link-margin-left:0;--footer-link-margin-right:0;--footer-link-margin-bottom:var(--ic-space-md)}:host(.footer-link-grouped-small){--footer-link-margin-left:var(--ic-space-md);--footer-link-margin-right:0;--footer-link-margin-bottom:var(--ic-space-md)}:host(.footer-link){margin-left:var(--footer-link-margin-left);margin-right:var(--footer-link-margin-right);margin-bottom:var(--footer-link-margin-bottom)}:host(.footer-link) a,:host(.footer-link) a ::slotted(a){display:block;font-weight:var(--ic-font-weight-bold);color:inherit;width:-moz-fit-content;width:fit-content;font-size:var(--ic-font-size-regular)}:host(.footer-link) a:link,:host(.footer-link) a ::slotted(a:link){color:inherit;text-decoration:underline;font-weight:var(--ic-font-weight-bold)}:host(.footer-link) a:link>::slotted(svg),:host(.footer-link) a:link>::slotted(img),:host(.footer-link) a ::slotted(a:link>::slotted(svg)),:host(.footer-link) a ::slotted(a:link>::slotted(img)){padding:var(--ic-space-xxxs);pointer-events:none;transition:var(--ic-easing-transition-fast)}:host(.footer-link-light) ::slotted(svg){fill:var(--ic-architectural-white)}:host(.footer-link-dark) ::slotted(svg){fill:var(--ic-architectural-black)}:host(.footer-link) a:link:hover,:host(.footer-link) a:link:focus,:host(.footer-link) a ::slotted(a:link:hover),:host(.footer-link) a ::slotted(a:link:focus){text-decoration-line:underline;text-decoration-thickness:25%;text-underline-offset:25%}:host(.footer-link) a:link:hover,:host(.footer-link) a ::slotted(a:link:hover){outline:none}:host(.footer-link) a:link:focus,:host(.footer-link) a ::slotted(a:link:focus){outline:var(--ic-hc-focus-outline)}:host(.footer-link) a:link:focus>::slotted(svg),:host(.footer-link) a:link:focus>::slotted(img),:host(.footer-link) a ::slotted(a:link:focus>::slotted(svg)),:host(.footer-link) a ::slotted(a:link:focus>::slotted(img)){box-shadow:var(--ic-border-focus);border-radius:var(--ic-border-radius)}:host(.footer-link) a:focus,:host(.footer-link) a ::slotted(a:focus){border-radius:var(--ic-border-radius);outline:var(--ic-hc-focus-outline);transition:var(--ic-transition-duration-fast)}:host(.footer-link) a:link:active,:host(.footer-link) a:link:focus:active,:host(.footer-link) a:link:visited:active,:host(.footer-link) a ::slotted(a:link:active),:host(.footer-link) a ::slotted(a:link:focus:active),:host(.footer-link) a ::slotted(a:link:visited:active){color:inherit;text-decoration:none}:host(.footer-link) a:hover,:host(.footer-link) a ::slotted(a:hover){text-decoration:none}@media screen and (min-width: 769px){:host(.footer-link.footer-link-ungrouped-sparse:last-of-type){margin-right:0}}@media (forced-colors: active){:host(.footer-link-light) ::slotted(svg),:host(.footer-link-dark) ::slotted(svg){fill:currentcolor}}';const a=class{constructor(o){t(this,o);this.href=null;this.footerConfig={small:false,grouped:false};this.deviceSize=n.XL;this.foregroundColor=r()}inferConfig(t){if(t.parentElement!==null){if(t.parentElement.classList.contains("footer")){return{small:t.parentElement.classList.contains("footer-small"),grouped:t.parentElement.classList.contains("footer-grouped")}}else{return this.inferConfig(t.parentElement)}}else{return{small:false,grouped:false}}}footerResizeHandler(){this.footerConfig=this.inferConfig(this.el)}footerThemeChangeHandler(t){const o=t.detail;this.foregroundColor=o.mode}componentWillLoad(){this.footerConfig=this.inferConfig(this.el)}render(){const{footerConfig:t,href:i}=this;const{small:n,grouped:r}=t;return o(e,{class:{"footer-link":true,[`footer-link-${r?"grouped":"ungrouped"}-${n?"small":"sparse"}`]:true,[`footer-link-${this.foregroundColor}`]:true}},o("a",{href:i},o("slot",null)))}static get delegatesFocus(){return true}get el(){return i(this)}};a.style=s;export{a as ic_footer_link};
2
- //# sourceMappingURL=p-57f2c81c.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["src/components/ic-footer-link/ic-footer-link.css?tag=ic-footer-link&encapsulation=shadow","src/components/ic-footer-link/ic-footer-link.tsx"],"names":["icFooterLinkCss","FooterLink","small","grouped","DEVICE_SIZES","XL","getThemeForegroundColor","[object Object]","e","parentElement","classList","contains","this","inferConfig","footerConfig","el","ev","theme","detail","foregroundColor","mode","href","h","Host","class","footer-link"],"mappings":"4HAAA,MAAMA,EAAkB,82KCqBXC,EAAU,yCAMG,uBAEc,CAAEC,MAAO,MAAOC,QAAS,uBAEjCC,EAAaC,wBAEGC,IAEtCC,YAAYC,GAClB,GAAIA,EAAEC,gBAAkB,KAAM,CAC5B,GAAID,EAAEC,cAAcC,UAAUC,SAAS,UAAW,CAChD,MAAO,CACLT,MAAOM,EAAEC,cAAcC,UAAUC,SAAS,gBAC1CR,QAASK,EAAEC,cAAcC,UAAUC,SAAS,uBAEzC,CACL,OAAOC,KAAKC,YAAYL,EAAEC,oBAEvB,CACL,MAAO,CAAEP,MAAO,MAAOC,QAAS,QAKpCI,sBACEK,KAAKE,aAAeF,KAAKC,YAAYD,KAAKG,IAI5CR,yBAAyBS,GACvB,MAAMC,EAAiBD,EAAGE,OAC1BN,KAAKO,gBAAkBF,EAAMG,KAG/Bb,oBACEK,KAAKE,aAAeF,KAAKC,YAAYD,KAAKG,IAG5CR,SACE,MAAMO,aAAEA,EAAYO,KAAEA,GAAST,KAC/B,MAAMV,MAAEA,EAAKC,QAAEA,GAAYW,EAE3B,OACEQ,EAACC,EAAI,CACHC,MAAO,CACLC,cAAe,KACflB,CAAC,eAAeJ,EAAU,UAAY,eACpCD,EAAQ,QAAU,YACf,KACLK,CAAC,eAAeK,KAAKO,mBAAoB,OAG3CG,EAAA,IAAA,CAAGD,KAAMA,GACPC,EAAA,OAAA","sourcesContent":["@import \"../../global/normalize.css\";\n\n:host(.footer-link-ungrouped-sparse) {\n --footer-link-margin-left: 0;\n --footer-link-margin-right: 2.5rem;\n --footer-link-margin-bottom: 0;\n}\n\n:host(.footer-link-ungrouped-small) {\n --footer-link-margin-left: 0;\n --footer-link-margin-right: 0;\n --footer-link-margin-bottom: var(--ic-space-md);\n}\n\n:host(.footer-link-grouped-sparse) {\n --footer-link-margin-left: 0;\n --footer-link-margin-right: 0;\n --footer-link-margin-bottom: var(--ic-space-md);\n}\n\n:host(.footer-link-grouped-small) {\n --footer-link-margin-left: var(--ic-space-md);\n --footer-link-margin-right: 0;\n --footer-link-margin-bottom: var(--ic-space-md);\n}\n\n:host(.footer-link) {\n margin-left: var(--footer-link-margin-left);\n margin-right: var(--footer-link-margin-right);\n margin-bottom: var(--footer-link-margin-bottom);\n}\n\n/* Link styling */\n\n:host(.footer-link) a,\n:host(.footer-link) a ::slotted(a) {\n display: block;\n font-weight: var(--ic-font-weight-bold);\n color: inherit;\n width: fit-content;\n font-size: var(--ic-font-size-regular);\n}\n\n:host(.footer-link) a:link,\n:host(.footer-link) a ::slotted(a:link) {\n color: inherit;\n text-decoration: underline;\n font-weight: var(--ic-font-weight-bold);\n}\n\n:host(.footer-link) a:link > ::slotted(svg),\n:host(.footer-link) a:link > ::slotted(img),\n:host(.footer-link) a ::slotted(a:link > ::slotted(svg)),\n:host(.footer-link) a ::slotted(a:link > ::slotted(img)) {\n padding: var(--ic-space-xxxs);\n pointer-events: none;\n transition: var(--ic-easing-transition-fast);\n}\n\n/*\nThere's an apparent defect in Chrome that means this isn't always re-rendered if changed.\nNot an issue in Safari. Line 73-79 implement the same function but less clean.\n\na:link > ::slotted(svg) ,\na:link:visited > ::slotted(svg) {\n fill: var(--ic-theme-text);\n}\n*/\n\n:host(.footer-link-light) ::slotted(svg) {\n fill: var(--ic-architectural-white);\n}\n\n:host(.footer-link-dark) ::slotted(svg) {\n fill: var(--ic-architectural-black);\n}\n\n:host(.footer-link) a:link:hover,\n:host(.footer-link) a:link:focus,\n:host(.footer-link) a ::slotted(a:link:hover),\n:host(.footer-link) a ::slotted(a:link:focus) {\n text-decoration-line: underline;\n text-decoration-thickness: 25%;\n text-underline-offset: 25%;\n}\n\n:host(.footer-link) a:link:hover,\n:host(.footer-link) a ::slotted(a:link:hover) {\n outline: none;\n}\n\n:host(.footer-link) a:link:focus,\n:host(.footer-link) a ::slotted(a:link:focus) {\n outline: var(--ic-hc-focus-outline);\n}\n\n:host(.footer-link) a:link:focus > ::slotted(svg),\n:host(.footer-link) a:link:focus > ::slotted(img),\n:host(.footer-link) a ::slotted(a:link:focus > ::slotted(svg)),\n:host(.footer-link) a ::slotted(a:link:focus > ::slotted(img)) {\n box-shadow: var(--ic-border-focus);\n border-radius: var(--ic-border-radius);\n}\n\n:host(.footer-link) a:focus,\n:host(.footer-link) a ::slotted(a:focus) {\n border-radius: var(--ic-border-radius);\n outline: var(--ic-hc-focus-outline);\n transition: var(--ic-transition-duration-fast);\n}\n\n:host(.footer-link) a:link:active,\n:host(.footer-link) a:link:focus:active,\n:host(.footer-link) a:link:visited:active,\n:host(.footer-link) a ::slotted(a:link:active),\n:host(.footer-link) a ::slotted(a:link:focus:active),\n:host(.footer-link) a ::slotted(a:link:visited:active) {\n color: inherit;\n text-decoration: none;\n}\n\n:host(.footer-link) a:hover,\n:host(.footer-link) a ::slotted(a:hover) {\n text-decoration: none;\n}\n\n@media screen and (min-width: 769px) {\n :host(.footer-link.footer-link-ungrouped-sparse:last-of-type) {\n margin-right: 0;\n }\n}\n\n@media (forced-colors: active) {\n :host(.footer-link-light) ::slotted(svg),\n :host(.footer-link-dark) ::slotted(svg) {\n fill: currentcolor;\n }\n}\n","import {\n Component,\n Element,\n Host,\n Listen,\n Prop,\n h,\n State,\n} from \"@stencil/core\";\nimport { DEVICE_SIZES, getThemeForegroundColor } from \"../../utils/helpers\";\nimport { IcTheme, IcThemeForeground } from \"../../utils/types\";\n\ntype FooterConfig = { small: boolean; grouped: boolean };\n\n@Component({\n tag: \"ic-footer-link\",\n styleUrl: \"ic-footer-link.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class FooterLink {\n @Element() el: HTMLIcFooterLinkElement;\n\n /**\n * The URL that the link points to.\n */\n @Prop() href?: string = null;\n\n @State() footerConfig: FooterConfig = { small: false, grouped: false };\n\n @State() deviceSize: number = DEVICE_SIZES.XL;\n\n @State() foregroundColor: IcThemeForeground = getThemeForegroundColor();\n\n private inferConfig(e: HTMLElement): FooterConfig {\n if (e.parentElement !== null) {\n if (e.parentElement.classList.contains(\"footer\")) {\n return {\n small: e.parentElement.classList.contains(\"footer-small\"),\n grouped: e.parentElement.classList.contains(\"footer-grouped\"),\n };\n } else {\n return this.inferConfig(e.parentElement);\n }\n } else {\n return { small: false, grouped: false };\n }\n }\n\n @Listen(\"footerResized\", { target: \"document\" })\n footerResizeHandler(): void {\n this.footerConfig = this.inferConfig(this.el);\n }\n\n @Listen(\"themeChange\", { target: \"document\" })\n footerThemeChangeHandler(ev: CustomEvent): void {\n const theme: IcTheme = ev.detail;\n this.foregroundColor = theme.mode;\n }\n\n componentWillLoad(): void {\n this.footerConfig = this.inferConfig(this.el);\n }\n\n render() {\n const { footerConfig, href } = this;\n const { small, grouped } = footerConfig;\n\n return (\n <Host\n class={{\n \"footer-link\": true,\n [`footer-link-${grouped ? \"grouped\" : \"ungrouped\"}-${\n small ? \"small\" : \"sparse\"\n }`]: true,\n [`footer-link-${this.foregroundColor}`]: true,\n }}\n >\n <a href={href}>\n <slot />\n </a>\n </Host>\n );\n }\n}\n"]}
@@ -1,2 +0,0 @@
1
- import{r as e,h as t,H as n,g as i}from"./p-5450cebf.js";import{I as o}from"./p-6f57b13c.js";import{k as a,s as r,a as s}from"./p-1724000c.js";const c='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;background-color:var(--ic-theme-tertiary);color:var(--ic-theme-text);--hero-heading-bottom-margin:var(--ic-space-md)}:host(.dark){background-color:var(--ic-theme-secondary)}:host(.has-background-image){background-repeat:no-repeat;background-position:right -6.25rem;background-size:auto calc(100% + 6.25rem);box-shadow:var(--ic-elevation-inset)}@media (prefers-reduced-motion){:host(.has-background-image){background-position:right -6.25rem !important}}ic-typography.heading-bottom-spacing{margin-bottom:var(--hero-heading-bottom-margin)}.section-container{display:flex;align-items:center;height:100%}.left-container{padding:var(--ic-space-xl) 0}.left-container:not(.left-container-full-width){flex-basis:50%}.left-container-full-width{width:100%}.right-container{flex-basis:50%}.interaction-container{display:flex;gap:var(--ic-space-md);margin-top:var(--ic-space-lg)}.secondary-container{display:flex;flex-direction:column;justify-content:center;border-left:var(--ic-space-xxxs) solid var(--ic-theme-text)}.secondary-subheading{margin-top:var(--ic-space-xxs)}:host([content-aligned="left"]) .left-container,:host([content-aligned="left"]) .interaction-container{justify-content:flex-start;text-align:left}:host([content-aligned="center"]) .left-container,:host([content-aligned="center"]) .interaction-container{justify-content:center;text-align:center}@media (min-width: 992px){.left-container-full-width{width:66.6%}}@media (min-width: 1044px){:host,.section-container{min-height:13rem}:host([small]),:host([small]) .section-container{min-height:10.813rem}.left-container:not(.left-container-full-width){flex-basis:66.6%}.left-container{min-height:9rem}.right-container{flex-basis:33.3%;margin-left:3.125rem}.secondary-container{min-height:9rem}.secondary-heading,.secondary-subheading{margin-left:3.938rem}}@media (min-width: 801px) and (max-width: 1043px){:host(.has-background-image){background-image:none !important}:host,.section-container{min-height:16rem}:host([small]),:host([small]) .section-container{min-height:15rem}:host([secondary-heading]),:host([secondary-heading]) .section-container{min-height:14rem}.left-container{min-height:10rem}.secondary-container{min-height:10rem}.secondary-heading,.secondary-subheading{margin-left:5.922rem}.right-container{margin-left:3.125rem}}@media (min-width: 641px) and (max-width: 800px){:host(.has-background-image){background-image:none !important}:host,.section-container{min-height:16rem}:host([small]),:host([small]) .section-container{min-height:15rem}:host([secondary-heading]),:host([secondary-heading]) .section-container{min-height:14rem}.left-container{min-height:10rem}.secondary-container{min-height:10rem}.secondary-heading,.secondary-subheading{margin-left:2.125rem}.right-container{margin-left:3.125rem}}@media (min-width: 481px) and (max-width: 640px){:host(.has-background-image){background-image:none !important}:host,.section-container{min-height:13rem}:host([small]),:host([small]) .section-container{min-height:10.813rem}:host([secondary-heading]),:host([secondary-heading]) .section-container{min-height:17.5rem}:host([secondary-heading]) .section-container,:host([small]) .section-container,.section-container{flex-direction:column;align-items:flex-start}.left-container{height:-moz-fit-content;height:fit-content}.secondary-container{height:-moz-fit-content;height:fit-content;border:none}.right-container{margin-bottom:2.5rem}}@media (max-width: 480px){:host(.has-background-image){background-image:none !important}:host,.section-container{min-height:12rem}:host,.right-container{margin-bottom:var(--ic-space-md)}:host([small]),:host([small]) .section-container{min-height:10.813rem}:host([secondary-heading]),:host([secondary-heading]) .section-container{min-height:16.5rem}:host([secondary-heading]) .section-container,:host([small]) .section-container,.section-container{flex-direction:column;align-items:flex-start}.left-container{height:-moz-fit-content;height:fit-content}.secondary-container{height:-moz-fit-content;height:fit-content;border:none}}';const h=class{constructor(t){e(this,t);this.heading=undefined;this.subheading=undefined;this.secondaryHeading=undefined;this.secondarySubheading=undefined;this.backgroundImage=undefined;this.disableBackgroundParallax=false;this.aligned="left";this.contentAligned="left";this.small=false;this.rightContent=false;this.scrollFactor="right -100px";this.leftContentFullWidth=!this.rightContent&&this.secondaryHeading===undefined;this.foregroundColor=a()}themeChangeHandler(e){const t=e.detail;this.foregroundColor=t.mode}doScroll(){if(this.disableBackgroundParallax){return}const e=document.scrollingElement.scrollTop;const t=.4;const n=-100+e*t;this.scrollFactor="right "+n+"px"}componentWillLoad(){this.rightContent=r(this.el,"secondary")}componentDidLoad(){s([{prop:this.heading,propName:"heading"}],"Hero")}componentWillRender(){this.rightContent=r(this.el,"secondary")}render(){const{aligned:e,small:i,heading:a,subheading:r,secondaryHeading:s,secondarySubheading:c,foregroundColor:h,backgroundImage:d,scrollFactor:l}=this;let m={};if(d!==undefined){m={"background-image":"url("+d+")","background-position":l}}return t(n,{class:{[o.Dark]:h===o.Dark,["has-background-image"]:d!==undefined},style:m},t("ic-section-container",{aligned:e,fullHeight:true,class:"section-container"},t("div",{class:{["left-container"]:true,["left-container-full-width"]:this.leftContentFullWidth}},t("div",{class:"heading"},t("slot",{name:"heading"},t("ic-typography",{variant:i?"h2":"h1",class:{["heading-bottom-spacing"]:!i}},a))),t("div",{class:"subheading"},t("slot",{name:"subheading"},t("ic-typography",{variant:"body"},r))),t("div",{class:"interaction-container"},t("slot",{name:"interaction"}))),(s!==undefined||this.rightContent)&&t("div",{class:"right-container"},t("slot",{name:"secondary"},s&&t("div",{class:"secondary-container"},t("div",{class:"secondary-heading"},t("ic-typography",{variant:"h4"},s)),t("div",{class:"secondary-subheading"},t("ic-typography",{variant:"subtitle-small"},c)))))))}get el(){return i(this)}};h.style=c;export{h as ic_hero};
2
- //# sourceMappingURL=p-5b083ce5.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["src/components/ic-hero/ic-hero.css?tag=ic-hero&encapsulation=shadow","src/components/ic-hero/ic-hero.tsx"],"names":["icHeroCss","Hero","this","rightContent","secondaryHeading","undefined","getThemeForegroundColor","[object Object]","ev","theme","detail","foregroundColor","mode","disableBackgroundParallax","scrolltotop","document","scrollingElement","scrollTop","factor","y","scrollFactor","slotHasContent","el","onComponentRequiredPropUndefined","prop","heading","propName","aligned","small","subheading","secondarySubheading","backgroundImage","style","background-image","background-position","h","Host","class","IcThemeForegroundEnum","Dark","fullHeight","leftContentFullWidth","name","variant"],"mappings":"+IAAA,MAAMA,EAAY,g0MCkCLC,EAAI,iNA+B+B,mBAKf,2BAKmB,kBAKzB,wBAEQ,wBAED,0CAG7BC,KAAKC,cAAgBD,KAAKE,mBAAqBC,+BAEJC,IAG9CC,mBAAmBC,GACjB,MAAMC,EAAiBD,EAAGE,OAC1BR,KAAKS,gBAAkBF,EAAMG,KAI/BL,WACE,GAAIL,KAAKW,0BAA2B,CAClC,OAGF,MAAMC,EAAcC,SAASC,iBAAiBC,UAC9C,MAAMC,EAAS,GACf,MAAMC,GAAK,IAAML,EAAcI,EAC/BhB,KAAKkB,aAAe,SAAWD,EAAI,KAGrCZ,oBACEL,KAAKC,aAAekB,EAAenB,KAAKoB,GAAI,aAG9Cf,mBACEgB,EACE,CAAC,CAAEC,KAAMtB,KAAKuB,QAASC,SAAU,YACjC,QAIJnB,sBACEL,KAAKC,aAAekB,EAAenB,KAAKoB,GAAI,aAG9Cf,SACE,MAAMoB,QACJA,EAAOC,MACPA,EAAKH,QACLA,EAAOI,WACPA,EAAUzB,iBACVA,EAAgB0B,oBAChBA,EAAmBnB,gBACnBA,EAAeoB,gBACfA,EAAeX,aACfA,GACElB,KAEJ,IAAI8B,EAAQ,GAEZ,GAAID,IAAoB1B,UAAW,CACjC2B,EAAQ,CACNC,mBAAoB,OAASF,EAAkB,IAC/CG,sBAAuBd,GAI3B,OACEe,EAACC,EAAI,CACHC,MAAO,CACL9B,CAAC+B,EAAsBC,MACrB5B,IAAoB2B,EAAsBC,KAC5ChC,CAAC,wBAAyBwB,IAAoB1B,WAEhD2B,MAAOA,GAEPG,EAAA,uBAAA,CACER,QAASA,EACTa,WAAU,KACVH,MAAM,qBAENF,EAAA,MAAA,CACEE,MAAO,CACL9B,CAAC,kBAAmB,KACpBA,CAAC,6BAA8BL,KAAKuC,uBAGtCN,EAAA,MAAA,CAAKE,MAAM,WACTF,EAAA,OAAA,CAAMO,KAAK,WACTP,EAAA,gBAAA,CACEQ,QAASf,EAAQ,KAAO,KACxBS,MAAO,CAAE9B,CAAC,2BAA4BqB,IAErCH,KAIPU,EAAA,MAAA,CAAKE,MAAM,cACTF,EAAA,OAAA,CAAMO,KAAK,cACTP,EAAA,gBAAA,CAAeQ,QAAQ,QAAQd,KAGnCM,EAAA,MAAA,CAAKE,MAAM,yBACTF,EAAA,OAAA,CAAMO,KAAK,mBAGbtC,IAAqBC,WAAaH,KAAKC,eACvCgC,EAAA,MAAA,CAAKE,MAAM,mBACTF,EAAA,OAAA,CAAMO,KAAK,aACRtC,GACC+B,EAAA,MAAA,CAAKE,MAAM,uBACTF,EAAA,MAAA,CAAKE,MAAM,qBACTF,EAAA,gBAAA,CAAeQ,QAAQ,MACpBvC,IAGL+B,EAAA,MAAA,CAAKE,MAAM,wBACTF,EAAA,gBAAA,CAAeQ,QAAQ,kBACpBb","sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: block;\n background-color: var(--ic-theme-tertiary);\n color: var(--ic-theme-text);\n\n --hero-heading-bottom-margin: var(--ic-space-md);\n}\n\n:host(.dark) {\n background-color: var(--ic-theme-secondary);\n}\n\n:host(.has-background-image) {\n background-repeat: no-repeat;\n background-position: right -6.25rem;\n background-size: auto calc(100% + 6.25rem);\n box-shadow: var(--ic-elevation-inset);\n}\n\n@media (prefers-reduced-motion) {\n :host(.has-background-image) {\n background-position: right -6.25rem !important;\n }\n}\n\nic-typography.heading-bottom-spacing {\n margin-bottom: var(--hero-heading-bottom-margin);\n}\n\n.section-container {\n display: flex;\n align-items: center;\n height: 100%;\n}\n\n.left-container {\n padding: var(--ic-space-xl) 0;\n}\n\n.left-container:not(.left-container-full-width) {\n flex-basis: 50%;\n}\n\n.left-container-full-width {\n width: 100%;\n}\n\n.right-container {\n flex-basis: 50%;\n}\n\n.interaction-container {\n display: flex;\n gap: var(--ic-space-md);\n margin-top: var(--ic-space-lg);\n}\n\n.secondary-container {\n display: flex;\n flex-direction: column;\n justify-content: center;\n border-left: var(--ic-space-xxxs) solid var(--ic-theme-text);\n}\n\n.secondary-subheading {\n margin-top: var(--ic-space-xxs);\n}\n\n:host([content-aligned=\"left\"]) .left-container,\n:host([content-aligned=\"left\"]) .interaction-container {\n justify-content: flex-start;\n text-align: left;\n}\n\n:host([content-aligned=\"center\"]) .left-container,\n:host([content-aligned=\"center\"]) .interaction-container {\n justify-content: center;\n text-align: center;\n}\n\n@media (min-width: 992px) {\n .left-container-full-width {\n width: 66.6%;\n }\n}\n\n@media (min-width: 1044px) {\n :host,\n .section-container {\n min-height: 13rem;\n }\n\n :host([small]),\n :host([small]) .section-container {\n min-height: 10.813rem;\n }\n\n .left-container:not(.left-container-full-width) {\n flex-basis: 66.6%;\n }\n\n .left-container {\n min-height: 9rem;\n }\n\n .right-container {\n flex-basis: 33.3%;\n margin-left: 3.125rem;\n }\n\n .secondary-container {\n min-height: 9rem;\n }\n\n .secondary-heading,\n .secondary-subheading {\n margin-left: 3.938rem;\n }\n}\n\n@media (min-width: 801px) and (max-width: 1043px) {\n :host(.has-background-image) {\n background-image: none !important;\n }\n\n :host,\n .section-container {\n min-height: 16rem;\n }\n\n :host([small]),\n :host([small]) .section-container {\n min-height: 15rem;\n }\n\n :host([secondary-heading]),\n :host([secondary-heading]) .section-container {\n min-height: 14rem;\n }\n\n .left-container {\n min-height: 10rem;\n }\n\n .secondary-container {\n min-height: 10rem;\n }\n\n .secondary-heading,\n .secondary-subheading {\n margin-left: 5.922rem;\n }\n\n .right-container {\n margin-left: 3.125rem;\n }\n}\n\n@media (min-width: 641px) and (max-width: 800px) {\n :host(.has-background-image) {\n background-image: none !important;\n }\n\n :host,\n .section-container {\n min-height: 16rem;\n }\n\n :host([small]),\n :host([small]) .section-container {\n min-height: 15rem;\n }\n\n :host([secondary-heading]),\n :host([secondary-heading]) .section-container {\n min-height: 14rem;\n }\n\n .left-container {\n min-height: 10rem;\n }\n\n .secondary-container {\n min-height: 10rem;\n }\n\n .secondary-heading,\n .secondary-subheading {\n margin-left: 2.125rem;\n }\n\n .right-container {\n margin-left: 3.125rem;\n }\n}\n\n@media (min-width: 481px) and (max-width: 640px) {\n :host(.has-background-image) {\n background-image: none !important;\n }\n\n :host,\n .section-container {\n min-height: 13rem;\n }\n\n :host([small]),\n :host([small]) .section-container {\n min-height: 10.813rem;\n }\n\n :host([secondary-heading]),\n :host([secondary-heading]) .section-container {\n min-height: 17.5rem;\n }\n\n :host([secondary-heading]) .section-container,\n :host([small]) .section-container,\n .section-container {\n flex-direction: column;\n align-items: flex-start;\n }\n\n .left-container {\n height: fit-content;\n }\n\n .secondary-container {\n height: fit-content;\n border: none;\n }\n\n .right-container {\n margin-bottom: 2.5rem;\n }\n}\n\n@media (max-width: 480px) {\n :host(.has-background-image) {\n background-image: none !important;\n }\n\n :host,\n .section-container {\n min-height: 12rem;\n }\n\n :host,\n .right-container {\n margin-bottom: var(--ic-space-md);\n }\n\n :host([small]),\n :host([small]) .section-container {\n min-height: 10.813rem;\n }\n\n :host([secondary-heading]),\n :host([secondary-heading]) .section-container {\n min-height: 16.5rem;\n }\n\n :host([secondary-heading]) .section-container,\n :host([small]) .section-container,\n .section-container {\n flex-direction: column;\n align-items: flex-start;\n }\n\n .left-container {\n height: fit-content;\n }\n\n .secondary-container {\n height: fit-content;\n border: none;\n }\n}\n","import {\n Component,\n Element,\n Host,\n Prop,\n h,\n State,\n Listen,\n} from \"@stencil/core\";\nimport {\n IcAlignment,\n IcTheme,\n IcThemeForeground,\n IcThemeForegroundEnum,\n} from \"../../utils/types\";\nimport {\n slotHasContent,\n getThemeForegroundColor,\n onComponentRequiredPropUndefined,\n} from \"../../utils/helpers\";\nimport { IcHeroContentAlignments } from \"./ic-hero.types\";\n\n/**\n * @slot heading - Content will be rendered in the title area, in place of the heading.\n * @slot subheading - Content will be rendered in the title area, in place of the subheading.\n * @slot interaction - Content will be rendered in the interaction area, adjacent to the title area.\n * @slot secondary - Content will be rendered in the secondary content area.\n */\n\n@Component({\n tag: \"ic-hero\",\n styleUrl: \"ic-hero.css\",\n shadow: true,\n})\nexport class Hero {\n @Element() el: HTMLIcHeroElement;\n\n /**\n * The heading of the hero.\n */\n @Prop() heading!: string;\n\n /**\n * The description for the hero.\n */\n @Prop() subheading?: string;\n\n /**\n * The optional secondary heading, replaced by slotted right content.\n */\n @Prop() secondaryHeading?: string;\n\n /**\n * The optional secondary subheading, replaced by slotted right content.\n */\n @Prop() secondarySubheading?: string;\n\n /**\n * The optional background image.\n */\n @Prop() backgroundImage?: string;\n\n /**\n * If `true`, the background image (if set) will not scroll using a parallax effect.\n */\n @Prop() disableBackgroundParallax?: boolean = false;\n\n /**\n * The alignment of the hero.\n */\n @Prop() aligned: IcAlignment = \"left\";\n\n /**\n * The alignment of the hero content.\n */\n @Prop() contentAligned: IcHeroContentAlignments = \"left\";\n\n /**\n * If `true`, the small styling will be applied to the hero.\n */\n @Prop() small: boolean = false;\n\n @State() rightContent: boolean = false;\n\n @State() scrollFactor: string = \"right -100px\";\n\n @State() leftContentFullWidth: boolean =\n !this.rightContent && this.secondaryHeading === undefined;\n\n @State() foregroundColor: IcThemeForeground = getThemeForegroundColor();\n\n @Listen(\"themeChange\", { target: \"document\" })\n themeChangeHandler(ev: CustomEvent): void {\n const theme: IcTheme = ev.detail;\n this.foregroundColor = theme.mode;\n }\n\n @Listen(\"scroll\", { target: \"document\" })\n doScroll(): void {\n if (this.disableBackgroundParallax) {\n return;\n }\n\n const scrolltotop = document.scrollingElement.scrollTop;\n const factor = 0.4;\n const y = -100 + scrolltotop * factor;\n this.scrollFactor = \"right \" + y + \"px\";\n }\n\n componentWillLoad(): void {\n this.rightContent = slotHasContent(this.el, \"secondary\");\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.heading, propName: \"heading\" }],\n \"Hero\"\n );\n }\n\n componentWillRender(): void {\n this.rightContent = slotHasContent(this.el, \"secondary\");\n }\n\n render() {\n const {\n aligned,\n small,\n heading,\n subheading,\n secondaryHeading,\n secondarySubheading,\n foregroundColor,\n backgroundImage,\n scrollFactor,\n } = this;\n\n let style = {};\n\n if (backgroundImage !== undefined) {\n style = {\n \"background-image\": \"url(\" + backgroundImage + \")\",\n \"background-position\": scrollFactor,\n };\n }\n\n return (\n <Host\n class={{\n [IcThemeForegroundEnum.Dark]:\n foregroundColor === IcThemeForegroundEnum.Dark,\n [\"has-background-image\"]: backgroundImage !== undefined,\n }}\n style={style}\n >\n <ic-section-container\n aligned={aligned}\n fullHeight\n class=\"section-container\"\n >\n <div\n class={{\n [\"left-container\"]: true,\n [\"left-container-full-width\"]: this.leftContentFullWidth,\n }}\n >\n <div class=\"heading\">\n <slot name=\"heading\">\n <ic-typography\n variant={small ? \"h2\" : \"h1\"}\n class={{ [\"heading-bottom-spacing\"]: !small }}\n >\n {heading}\n </ic-typography>\n </slot>\n </div>\n <div class=\"subheading\">\n <slot name=\"subheading\">\n <ic-typography variant=\"body\">{subheading}</ic-typography>\n </slot>\n </div>\n <div class=\"interaction-container\">\n <slot name=\"interaction\"></slot>\n </div>\n </div>\n {(secondaryHeading !== undefined || this.rightContent) && (\n <div class=\"right-container\">\n <slot name=\"secondary\">\n {secondaryHeading && (\n <div class=\"secondary-container\">\n <div class=\"secondary-heading\">\n <ic-typography variant=\"h4\">\n {secondaryHeading}\n </ic-typography>\n </div>\n <div class=\"secondary-subheading\">\n <ic-typography variant=\"subtitle-small\">\n {secondarySubheading}\n </ic-typography>\n </div>\n </div>\n )}\n </slot>\n </div>\n )}\n </ic-section-container>\n </Host>\n );\n }\n}\n"]}
@@ -1,2 +0,0 @@
1
- import{r as s,h as t,g as i}from"./p-5450cebf.js";const e=class{constructor(t){s(this,t);this.pendingVisibility=[]}async setVisible(s){const t=Array.from(document.querySelectorAll("ic-toast")).filter((s=>window.getComputedStyle(s).display!=="none"));if(t.indexOf(s)===-1&&t.length<=0){s.setVisible().then((s=>this.previouslyFocused=s))}if(t.length>0)this.pendingVisibility.push(s)}handleDismissedToast(){var s;if(this.pendingVisibility.length>0){this.pendingVisibility[0].setVisible().then((s=>this.previouslyFocused=s));this.pendingVisibility.shift()}else{if(this.previouslyFocused&&"setFocus"in this.previouslyFocused){this.previouslyFocused.setFocus()}else(s=this.previouslyFocused)===null||s===void 0?void 0:s.focus()}}render(){return t("slot",null)}get el(){return i(this)}};export{e as ic_toast_region};
2
- //# sourceMappingURL=p-62b3516e.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["src/components/ic-toast-region/ic-toast-region.tsx"],"names":["ToastRegion","[object Object]","hostRef","this","pendingVisibility","toast","visibleToasts","Array","from","document","querySelectorAll","filter","el","window","getComputedStyle","display","indexOf","length","setVisible","then","res","previouslyFocused","push","shift","setFocus","_a","focus","h"],"mappings":"wDAIaA,EAAW,MADxBC,YAAAC,aAKEC,KAAAC,kBAA0C,GAO1CH,iBAAiBI,GACf,MAAMC,EAAgBC,MAAMC,KAC1BC,SAASC,iBAAiB,aAC1BC,QAAQC,GAAOC,OAAOC,iBAAiBF,GAAIG,UAAY,SACzD,GAAIT,EAAcU,QAAQX,MAAY,GAAKC,EAAcW,QAAU,EAAG,CACpEZ,EAAMa,aAAaC,MAAMC,GAASjB,KAAKkB,kBAAoBD,IAE7D,GAAId,EAAcW,OAAS,EAAGd,KAAKC,kBAAkBkB,KAAKjB,GAI5DJ,6BACE,GAAIE,KAAKC,kBAAkBa,OAAS,EAAG,CACrCd,KAAKC,kBAAkB,GACpBc,aACAC,MAAMC,GAASjB,KAAKkB,kBAAoBD,IAC3CjB,KAAKC,kBAAkBmB,YAClB,CACL,GAAIpB,KAAKkB,mBAAqB,aAAclB,KAAKkB,kBAAmB,CACjElB,KAAKkB,kBAA4CG,gBAC7CC,EAAAtB,KAAKkB,qBAAiB,MAAAI,SAAA,OAAA,EAAAA,EAAEC,SAInCzB,SACE,OAAO0B,EAAA,OAAA","sourcesContent":["import { Component, Element, h, Listen, Method } from \"@stencil/core\";\nimport { IcFocusableComponents } from \"../../utils/types\";\n\n@Component({ tag: \"ic-toast-region\" })\nexport class ToastRegion {\n @Element() el: HTMLIcToastRegionElement;\n\n previouslyFocused: HTMLElement;\n pendingVisibility: HTMLIcToastElement[] = [];\n\n /**\n * Handles setting the visibility of various toasts based on what is already visible\n * @param toast The toast element being requested to display\n */\n @Method()\n async setVisible(toast: HTMLIcToastElement) {\n const visibleToasts = Array.from(\n document.querySelectorAll(\"ic-toast\")\n ).filter((el) => window.getComputedStyle(el).display !== \"none\");\n if (visibleToasts.indexOf(toast) === -1 && visibleToasts.length <= 0) {\n toast.setVisible().then((res) => (this.previouslyFocused = res));\n }\n if (visibleToasts.length > 0) this.pendingVisibility.push(toast);\n }\n\n @Listen(\"icDismiss\", { capture: true })\n handleDismissedToast() {\n if (this.pendingVisibility.length > 0) {\n this.pendingVisibility[0]\n .setVisible()\n .then((res) => (this.previouslyFocused = res));\n this.pendingVisibility.shift();\n } else {\n if (this.previouslyFocused && \"setFocus\" in this.previouslyFocused) {\n (this.previouslyFocused as IcFocusableComponents).setFocus();\n } else this.previouslyFocused?.focus();\n }\n }\n\n render() {\n return <slot></slot>;\n }\n}\n"]}
@@ -1,2 +0,0 @@
1
- import{r as s,h as i,H as t,g as e}from"./p-5450cebf.js";import{D as l,g as a,c as h}from"./p-1724000c.js";import"./p-6f57b13c.js";const c=":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.setBackBreadcrumb=()=>{if(this.backBreadcrumbOnly){this.setBackBreadcrumbAttr()}};this.setBackBreadcrumbAttr=()=>{const s=this.getLastParentBreadcrumb();if(s){s.classList.add("show");s.setAttribute("show-back-icon","true")}};this.getLastParentBreadcrumb=()=>{const s=Array.from(this.el.querySelectorAll("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.setDefaultBreadcrumbs=()=>{const s=Array.from(this.el.querySelectorAll("ic-breadcrumb"));s.forEach((s=>{s.setAttribute("show-back-icon","false")}))};this.setCollapsed=()=>{if(this.collapsed){const s=Array.from(this.el.querySelectorAll("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.renderCollapsedBreadcrumb=()=>{this.collapsedBreadcrumbWrapper=document.createElement("ic-breadcrumb");this.collapsedBreadcrumbWrapper.classList.add("collapsed-breadcrumb-wrapper");const s=document.createElement("button");const i=document.createElement("span");i.id="collapsed-button-label";i.innerText="Collapsed breadcrumbs";i.className="hide";s.setAttribute("aria-labelledby","collapsed-button-label");const t=document.createElement("span");t.id="collapsed-button-described";t.innerText="Select to view collapsed breadcrumbs";t.className="hide";s.setAttribute("aria-describedby","collapsed-button-described");s.id="collapsed-ellipsis";s.innerText="...";s.classList.add("collapsed-breadcrumb");s.addEventListener("click",(()=>{this.handleHiddenCollapsedBreadcrumbs(this.collapsedBreadcrumbWrapper)}));this.collapsedBreadcrumbWrapper.append(t);this.collapsedBreadcrumbWrapper.append(i);this.collapsedBreadcrumbWrapper.append(s);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.removeVisuallyHiddenClass=s=>{s.addEventListener("transitionend",(i=>{if(i.propertyName==="opacity"){s.classList.remove("visuallyhidden")}}))};this.setLastParentCollapsedBackBreadcrumb=()=>{const s=this.getLastParentBreadcrumb();this.setBackBreadcrumbAttr();s.classList.remove("hide")};this.revertLastParentCollapsedBreadcrumb=()=>{const s=this.getLastParentBreadcrumb();s.setAttribute("show-back-icon","false")};this.resizeObserver=null;this.resizeObserverCallback=s=>{if(s!==this.deviceSize){this.deviceSize=s;if(this.deviceSize<=l.S){this.el.setAttribute("back-breadcrumb-only","true");if(this.collapsed){this.setLastParentCollapsedBackBreadcrumb()}else{this.setBackBreadcrumb()}}else{this.el.setAttribute("back-breadcrumb-only","false");if(this.collapsed&&this.breadcrumbs&&this.breadcrumbs.length>2){this.revertLastParentCollapsedBreadcrumb();if(this.expandedBreadcrumbs){this.setDefaultBreadcrumbs()}else{this.setCollapsed()}}else{this.setDefaultBreadcrumbs()}}}};this.runResizeObserver=()=>{this.resizeObserver=new ResizeObserver((()=>{const s=a();this.resizeObserverCallback(s)}));this.resizeObserver.observe(this.el)};this.backBreadcrumbOnly=false;this.collapsed=false;this.deviceSize=l.XL;this.expandedBreadcrumbs=false}componentWillLoad(){const s=Array.from(this.el.querySelectorAll("ic-breadcrumb"));if(this.backBreadcrumbOnly){this.setBackBreadcrumb()}else{h(this.runResizeObserver)}if(this.collapsed){this.collapsedBreadcrumbWrapper=this.renderCollapsedBreadcrumb();if(s.length>2){if(a()===l.S){this.setLastParentCollapsedBackBreadcrumb()}else{this.setCollapsed()}}}}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 e(this)}};o.style=c;export{o as ic_breadcrumb_group};
2
- //# sourceMappingURL=p-691ea0f2.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["src/components/ic-breadcrumb-group/ic-breadcrumb-group.css?tag=ic-breadcrumb-group&encapsulation=shadow","src/components/ic-breadcrumb-group/ic-breadcrumb-group.tsx"],"names":["icBreadcrumbGroupCss","BreadcrumbGroup","this","ADD_CLASS_DELAY","setBackBreadcrumb","backBreadcrumbOnly","setBackBreadcrumbAttr","lastParentBreadcrumb","getLastParentBreadcrumb","classList","add","setAttribute","allBreadcrumbs","Array","from","el","querySelectorAll","length","breadcrumbs","filter","breadcrumb","getAttribute","setDefaultBreadcrumbs","forEach","setCollapsed","collapsed","collapsedBreadcrumbs","splice","contains","firstBreadcrumb","insertAdjacentElement","collapsedBreadcrumbWrapper","renderCollapsedBreadcrumb","document","createElement","collapsedBreadcrumbEl","ariaLabel","id","innerText","className","ariaDescribed","addEventListener","handleHiddenCollapsedBreadcrumbs","append","remove","setTimeout","removeVisuallyHiddenClass","expandedBreadcrumbs","e","propertyName","setLastParentCollapsedBackBreadcrumb","revertLastParentCollapsedBreadcrumb","resizeObserver","resizeObserverCallback","currSize","deviceSize","DEVICE_SIZES","S","runResizeObserver","ResizeObserver","getCurrentDeviceSize","observe","XL","[object Object]","checkResizeObserver","h","Host","class","back","aria-label"],"mappings":"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","sourcesContent":[":host {\n display: block;\n}\n\n:host ol {\n display: flex;\n list-style-type: none;\n align-items: center;\n flex-wrap: wrap;\n padding: 0;\n margin: 0;\n}\n\n:host(.back) ol ::slotted(ic-breadcrumb) {\n display: none;\n}\n\n:host(.back) ol ::slotted(ic-breadcrumb.show) {\n display: flex;\n}\n\n:host(.collapsed) ol ::slotted(ic-breadcrumb.hide) {\n display: none;\n opacity: 0;\n visibility: hidden;\n}\n\n:host(.collapsed) ol ::slotted(ic-breadcrumb.visuallyhidden) {\n display: block;\n opacity: 0;\n transition: all var(--ic-easing-transition-slow);\n}\n\n:host(.collapsed) ol ::slotted(ic-breadcrumb.fade) {\n opacity: 1;\n}\n","import { Component, Host, h, Element, Prop, State } from \"@stencil/core\";\nimport {\n checkResizeObserver,\n DEVICE_SIZES,\n getCurrentDeviceSize,\n} from \"../../utils/helpers\";\n\n@Component({\n tag: \"ic-breadcrumb-group\",\n styleUrl: \"ic-breadcrumb-group.css\",\n shadow: true,\n})\n\n// Added ResizeObserver to find out width of breadcrumbs and parents. Use side navigation long title for ref.\nexport class BreadcrumbGroup {\n @Element() el: HTMLIcBreadcrumbGroupElement;\n /**\n * If `true`, display only a single breadcrumb for the parent page with a back icon.\n */\n @Prop() backBreadcrumbOnly: boolean = false;\n /**\n * If `true`, all breadcrumbs between the first and last breadcrumb will be collapsed.\n */\n @Prop() collapsed: boolean = false;\n\n @State() deviceSize: number = DEVICE_SIZES.XL;\n @State() expandedBreadcrumbs: boolean = false;\n\n private breadcrumbs: HTMLIcBreadcrumbElement[];\n private breadcrumb: HTMLIcBreadcrumbElement;\n private collapsedBreadcrumbs: HTMLIcBreadcrumbElement[];\n private ADD_CLASS_DELAY = 50;\n private collapsedBreadcrumbWrapper: HTMLIcBreadcrumbElement;\n\n private setBackBreadcrumb = () => {\n if (this.backBreadcrumbOnly) {\n this.setBackBreadcrumbAttr();\n }\n };\n\n private setBackBreadcrumbAttr = () => {\n const lastParentBreadcrumb = this.getLastParentBreadcrumb();\n if (lastParentBreadcrumb) {\n lastParentBreadcrumb.classList.add(\"show\");\n lastParentBreadcrumb.setAttribute(\"show-back-icon\", \"true\");\n }\n };\n\n private getLastParentBreadcrumb = (): HTMLIcBreadcrumbElement | null => {\n const allBreadcrumbs = Array.from(\n this.el.querySelectorAll(\"ic-breadcrumb\")\n );\n\n if (allBreadcrumbs.length === 1) {\n return null;\n }\n\n this.breadcrumbs = allBreadcrumbs.filter(\n (breadcrumb) => !breadcrumb.getAttribute(\"current\")\n );\n this.breadcrumb = this.breadcrumbs[this.breadcrumbs.length - 1];\n\n return this.breadcrumb;\n };\n\n private setDefaultBreadcrumbs = () => {\n const allBreadcrumbs = Array.from(\n this.el.querySelectorAll(\"ic-breadcrumb\")\n );\n allBreadcrumbs.forEach((breadcrumb) => {\n breadcrumb.setAttribute(\"show-back-icon\", \"false\");\n });\n };\n\n private setCollapsed = () => {\n if (this.collapsed) {\n const allBreadcrumbs = Array.from(\n this.el.querySelectorAll(\"ic-breadcrumb\")\n );\n this.collapsedBreadcrumbs = allBreadcrumbs\n .splice(1, allBreadcrumbs.length - 2)\n .filter(\n (breadcrumb) =>\n !breadcrumb.classList.contains(\"collapsed-breadcrumb-wrapper\")\n );\n\n this.collapsedBreadcrumbs.forEach((breadcrumb) =>\n breadcrumb.classList.add(\"hide\")\n );\n\n const firstBreadcrumb = allBreadcrumbs[0];\n\n if (firstBreadcrumb) {\n firstBreadcrumb.insertAdjacentElement(\n \"afterend\",\n this.collapsedBreadcrumbWrapper\n );\n }\n }\n };\n\n private renderCollapsedBreadcrumb = () => {\n this.collapsedBreadcrumbWrapper = document.createElement(\"ic-breadcrumb\");\n this.collapsedBreadcrumbWrapper.classList.add(\n \"collapsed-breadcrumb-wrapper\"\n );\n const collapsedBreadcrumbEl = document.createElement(\"button\");\n\n const ariaLabel = document.createElement(\"span\");\n ariaLabel.id = \"collapsed-button-label\";\n ariaLabel.innerText = \"Collapsed breadcrumbs\";\n ariaLabel.className = \"hide\";\n collapsedBreadcrumbEl.setAttribute(\n \"aria-labelledby\",\n \"collapsed-button-label\"\n );\n\n const ariaDescribed = document.createElement(\"span\");\n ariaDescribed.id = \"collapsed-button-described\";\n ariaDescribed.innerText = \"Select to view collapsed breadcrumbs\";\n ariaDescribed.className = \"hide\";\n collapsedBreadcrumbEl.setAttribute(\n \"aria-describedby\",\n \"collapsed-button-described\"\n );\n\n collapsedBreadcrumbEl.id = \"collapsed-ellipsis\";\n collapsedBreadcrumbEl.innerText = \"...\";\n collapsedBreadcrumbEl.classList.add(\"collapsed-breadcrumb\");\n collapsedBreadcrumbEl.addEventListener(\"click\", () => {\n this.handleHiddenCollapsedBreadcrumbs(this.collapsedBreadcrumbWrapper);\n });\n\n this.collapsedBreadcrumbWrapper.append(ariaDescribed);\n this.collapsedBreadcrumbWrapper.append(ariaLabel);\n this.collapsedBreadcrumbWrapper.append(collapsedBreadcrumbEl);\n\n return this.collapsedBreadcrumbWrapper;\n };\n\n private handleHiddenCollapsedBreadcrumbs = (\n collapsedBreadcrumbWrapper: HTMLIcBreadcrumbElement\n ) => {\n collapsedBreadcrumbWrapper.remove();\n this.collapsedBreadcrumbs.forEach((breadcrumb) => {\n breadcrumb.classList.add(\"visuallyhidden\");\n breadcrumb.classList.remove(\"hide\");\n setTimeout(() => {\n breadcrumb.classList.add(\"fade\");\n }, this.ADD_CLASS_DELAY);\n\n this.removeVisuallyHiddenClass(breadcrumb);\n });\n this.expandedBreadcrumbs = true;\n };\n\n private removeVisuallyHiddenClass = (breadcrumb: HTMLIcBreadcrumbElement) => {\n breadcrumb.addEventListener(\"transitionend\", (e) => {\n if (e.propertyName === \"opacity\") {\n breadcrumb.classList.remove(\"visuallyhidden\");\n }\n });\n };\n\n private setLastParentCollapsedBackBreadcrumb = () => {\n const lastParentBreadcrumb = this.getLastParentBreadcrumb();\n this.setBackBreadcrumbAttr();\n lastParentBreadcrumb.classList.remove(\"hide\");\n };\n\n private revertLastParentCollapsedBreadcrumb = () => {\n const lastParentBreadcrumb = this.getLastParentBreadcrumb();\n lastParentBreadcrumb.setAttribute(\"show-back-icon\", \"false\");\n };\n\n private resizeObserver: ResizeObserver = null;\n\n private resizeObserverCallback = (currSize: number) => {\n if (currSize !== this.deviceSize) {\n this.deviceSize = currSize;\n\n if (this.deviceSize <= DEVICE_SIZES.S) {\n this.el.setAttribute(\"back-breadcrumb-only\", \"true\");\n if (this.collapsed) {\n this.setLastParentCollapsedBackBreadcrumb();\n } else {\n this.setBackBreadcrumb();\n }\n } else {\n this.el.setAttribute(\"back-breadcrumb-only\", \"false\");\n if (this.collapsed && this.breadcrumbs && this.breadcrumbs.length > 2) {\n this.revertLastParentCollapsedBreadcrumb();\n if (this.expandedBreadcrumbs) {\n this.setDefaultBreadcrumbs();\n } else {\n this.setCollapsed();\n }\n } else {\n this.setDefaultBreadcrumbs();\n }\n }\n }\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n const currSize = getCurrentDeviceSize();\n this.resizeObserverCallback(currSize);\n });\n\n this.resizeObserver.observe(this.el);\n };\n\n componentWillLoad(): void {\n const allBreadcrumbs = Array.from(\n this.el.querySelectorAll(\"ic-breadcrumb\")\n );\n\n if (this.backBreadcrumbOnly) {\n this.setBackBreadcrumb();\n } else {\n checkResizeObserver(this.runResizeObserver);\n }\n\n if (this.collapsed) {\n this.collapsedBreadcrumbWrapper = this.renderCollapsedBreadcrumb();\n\n if (allBreadcrumbs.length > 2) {\n if (getCurrentDeviceSize() === DEVICE_SIZES.S) {\n this.setLastParentCollapsedBackBreadcrumb();\n } else {\n this.setCollapsed();\n }\n }\n }\n }\n\n render() {\n return (\n <Host\n class={{\n back: this.backBreadcrumbOnly,\n collapsed: this.collapsed,\n }}\n >\n <nav aria-label=\"breadcrumbs\">\n <ol>\n <slot />\n </ol>\n </nav>\n </Host>\n );\n }\n}\n"]}
@@ -1,2 +0,0 @@
1
- import{r as t,h as i,H as e,g as s}from"./p-5450cebf.js";import{K as o,L as r,c as a}from"./p-1724000c.js";import{I as n}from"./p-6f57b13c.js";const l=`<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none">\n <path d="M13.0875 6.175L11.9125 5L6.91251 10L11.9125 15L13.0875 13.825L9.27084 10L13.0875 6.175Z"/>\n</svg>`;const c=`<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none">\n <path d="M8.08748 5L6.91248 6.175L10.7291 10L6.91248 13.825L8.08748 15L13.0875 10L8.08748 5Z"/>\n</svg>`;const h='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{--border-bottom-color:var(--ic-architectural-300);--splitter-color:var(--ic-architectural-100);display:flex;max-width:100%}:host(.light){--splitter-color:var(--ic-keyline-lighten-rgb)}:host(.dark){--splitter-color:var(--ic-keyline-darken-rgb)}:host([inline]){margin-bottom:0}::slotted(*){overflow-x:scroll;overflow-y:hidden;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;margin:calc(var(--ic-space-xs) * -1) !important;padding:var(--ic-space-xs) !important}:host(.visible) ::slotted(*){margin:calc(var(--ic-space-xs) * -1) 0 !important;padding:var(--ic-space-xs) !important}.tabs-container::-webkit-scrollbar{display:none}.scroll-container-left,.scroll-container-right{display:flex}.scroll-container-left{margin-left:var(--ic-space-xxs)}.scroll-container-right{margin-right:var(--ic-space-xxs)}.hidden{display:none}.scroll-arrow{margin:var(--ic-space-xxs) 0 var(--ic-space-xs) 0}.disabled .ic-tooltip-container{display:none !important}.scroll-splitter-left,.scroll-splitter-right{display:flex;height:var(--ic-space-lg);width:0.063rem;margin-top:var(--ic-space-xs);border-radius:0.063rem;background-color:var(--splitter-color)}.scroll-splitter-left{margin-left:calc(var(--ic-space-xxs) - 0.063rem)}.scroll-splitter-right{margin-right:calc(var(--ic-space-xxs) - 0.063rem)}.disabled .scroll-splitter-left,.disabled .scroll-splitter-right{background-color:transparent}.disabled ic-button>svg{color:var(--ic-keyline-darken-rgb)}:host(.dark) .disabled ic-button>svg,:host(.light) .disabled ic-button>svg{color:var(--splitter-color) !important}';const d=200;const p=class{constructor(i){t(this,i);this.buttonStateSet=false;this.resizeObserverCallback=()=>{if(this.el.clientWidth>=this.itemsContainerEl.scrollWidth){this.itemOverflow=false}else{this.itemOverflow=o(this.itemsContainerEl)}if(this.itemOverflow){this.lastItemVisible=this.itemsContainerEl.offsetWidth+this.itemsContainerEl.scrollLeft>=this.itemsContainerEl.scrollWidth}};this.runResizeObserver=()=>{this.resizeObserver=new ResizeObserver((()=>{this.resizeObserverCallback()}));this.resizeObserver.observe(this.itemsContainerEl)};this.scrollLeft=()=>{this.scrollItemIntoView(this.getCurrentLeftItem()-1)};this.scrollRight=()=>{this.scrollItemIntoView(this.getCurrentLeftItem()+1)};this.longScrollRight=()=>{this.scrollRight();this.scrollDelay=window.setTimeout(this.longScrollRight,d)};this.longScrollLeft=()=>{this.scrollLeft();this.scrollDelay=window.setTimeout(this.longScrollLeft,d)};this.leftArrowMouseDownHandler=t=>{t.preventDefault();this.scrollDelay=window.setTimeout(this.longScrollLeft,d)};this.rightArrowMouseDownHandler=t=>{t.preventDefault();this.scrollDelay=window.setTimeout(this.longScrollRight,d)};this.arrowMouseUpHandler=()=>{window.clearTimeout(this.scrollDelay)};this.getCurrentLeftItem=()=>{const t=this.itemOffsets.findIndex((t=>t>Math.round(this.itemsContainerEl.scrollLeft)));return t<0?0:t};this.scrollHandler=()=>{window.clearTimeout(this.isScrolling);this.isScrolling=window.setTimeout(this.scrollStopped,50)};this.scrollStopped=()=>{const t=Math.round(this.itemsContainerEl.scrollLeft);if(this.buttonStateSet===false){this.firstItemVisible=t===0;this.lastItemVisible=this.itemsContainerEl.offsetWidth+t>=this.itemsContainerEl.scrollWidth}this.buttonStateSet=false};this.appearance="default";this.firstItemVisible=true;this.lastItemVisible=false;this.itemOverflow=false}async scrollItemIntoView(t){this.firstItemVisible=t<=0;const i=t<=0?0:this.itemOffsets[t-1];this.lastItemVisible=this.itemsContainerEl.offsetWidth+i>=this.itemsContainerEl.scrollWidth;this.buttonStateSet=true;this.itemsContainerEl.scrollLeft=i}itemFocusHandler(t){if(this.itemOverflow){this.scrollItemIntoView(t)}}componentWillLoad(){this.itemsContainerEl=this.el.children[0];this.itemsContainerEl.addEventListener("scroll",this.scrollHandler);this.items=r(this.itemsContainerEl)||Array.from(this.itemsContainerEl.children);this.items.forEach((t=>t.addEventListener("focus",(()=>this.itemFocusHandler(Array.from(this.items).indexOf(t))))))}componentDidLoad(){let t=0;this.itemOffsets=this.items.map((i=>{t+=i.offsetWidth;return t}));a(this.runResizeObserver);const i=Array.from(this.el.shadowRoot.querySelectorAll("div"));["mouseup","mouseleave"].forEach((t=>{i.forEach((i=>i.addEventListener(t,this.arrowMouseUpHandler)))}))}disconnectedCallback(){this.resizeObserver.disconnect()}render(){const{appearance:t,firstItemVisible:s,lastItemVisible:o,itemOverflow:r}=this;return i(e,{class:{["visible"]:r,["dark"]:this.appearance===n.Dark,["light"]:this.appearance===n.Light}},i("div",{"aria-hidden":"true",class:{["scroll-container-left"]:true,["hidden"]:!r,["disabled"]:s}},i("ic-button",{class:"scroll-arrow",variant:"icon","aria-label":"Scroll left",appearance:t,innerHTML:l,disabled:s,tabindex:"-1",onClick:this.scrollLeft,onMouseDown:this.leftArrowMouseDownHandler}),i("span",{class:"scroll-splitter-left"})),i("slot",null),i("div",{"aria-hidden":"true",class:{["scroll-container-right"]:true,["hidden"]:!r,["disabled"]:o}},i("span",{class:"scroll-splitter-right"}),i("ic-button",{class:"scroll-arrow",variant:"icon","aria-label":"Scroll right",appearance:t,innerHTML:c,disabled:o,tabindex:"-1",onClick:this.scrollRight,onMouseDown:this.rightArrowMouseDownHandler})))}get el(){return s(this)}};p.style=h;export{p as ic_horizontal_scroll};
2
- //# sourceMappingURL=p-7818d958.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["src/components/ic-horizontal-scroll/ic-horizontal-scroll.css?tag=ic-horizontal-scroll&encapsulation=shadow","src/components/ic-horizontal-scroll/ic-horizontal-scroll.tsx"],"names":["icHorizontalScrollCss","SCROLL_DELAY_MS","HorizontalScroll","this","buttonStateSet","resizeObserverCallback","el","clientWidth","itemsContainerEl","scrollWidth","itemOverflow","elementOverflowsX","lastItemVisible","offsetWidth","scrollLeft","runResizeObserver","resizeObserver","ResizeObserver","observe","scrollItemIntoView","getCurrentLeftItem","scrollRight","longScrollRight","scrollDelay","window","setTimeout","longScrollLeft","leftArrowMouseDownHandler","e","preventDefault","rightArrowMouseDownHandler","arrowMouseUpHandler","clearTimeout","index","itemOffsets","findIndex","Math","round","scrollHandler","isScrolling","scrollStopped","firstItemVisible","[object Object]","itemPosition","newScrollPos","children","addEventListener","items","getSlotElements","Array","from","forEach","item","itemFocusHandler","indexOf","runningTotal","map","checkResizeObserver","scrollArrows","shadowRoot","querySelectorAll","event","arrow","disconnect","appearance","h","Host","class","IcThemeForegroundEnum","Dark","Light","aria-hidden","variant","aria-label","innerHTML","LeftArrow","disabled","tabindex","onClick","onMouseDown","RightArrow"],"mappings":"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","sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n --border-bottom-color: var(--ic-architectural-300);\n --splitter-color: var(--ic-architectural-100);\n\n display: flex;\n max-width: 100%;\n}\n\n:host(.light) {\n --splitter-color: var(--ic-keyline-lighten-rgb);\n}\n\n:host(.dark) {\n --splitter-color: var(--ic-keyline-darken-rgb);\n}\n\n:host([inline]) {\n margin-bottom: 0;\n}\n\n/* Slotted items container element */\n::slotted(*) {\n overflow-x: scroll;\n overflow-y: hidden;\n scroll-behavior: smooth;\n scrollbar-width: none;\n -ms-overflow-style: none;\n margin: calc(var(--ic-space-xs) * -1) !important;\n padding: var(--ic-space-xs) !important;\n}\n\n:host(.visible) ::slotted(*) {\n margin: calc(var(--ic-space-xs) * -1) 0 !important;\n padding: var(--ic-space-xs) !important;\n}\n\n.tabs-container::-webkit-scrollbar {\n display: none;\n}\n\n.scroll-container-left,\n.scroll-container-right {\n display: flex;\n}\n\n.scroll-container-left {\n margin-left: var(--ic-space-xxs);\n}\n\n.scroll-container-right {\n margin-right: var(--ic-space-xxs);\n}\n\n.hidden {\n display: none;\n}\n\n.scroll-arrow {\n margin: var(--ic-space-xxs) 0 var(--ic-space-xs) 0;\n}\n\n.disabled .ic-tooltip-container {\n display: none !important;\n}\n\n.scroll-splitter-left,\n.scroll-splitter-right {\n display: flex;\n height: var(--ic-space-lg);\n width: 0.063rem;\n margin-top: var(--ic-space-xs);\n border-radius: 0.063rem;\n background-color: var(--splitter-color);\n}\n\n.scroll-splitter-left {\n margin-left: calc(var(--ic-space-xxs) - 0.063rem);\n}\n\n.scroll-splitter-right {\n margin-right: calc(var(--ic-space-xxs) - 0.063rem);\n}\n\n.disabled .scroll-splitter-left,\n.disabled .scroll-splitter-right {\n background-color: transparent;\n}\n\n.disabled ic-button > svg {\n color: var(--ic-keyline-darken-rgb);\n}\n\n:host(.dark) .disabled ic-button > svg,\n:host(.light) .disabled ic-button > svg {\n color: var(--splitter-color) !important;\n}\n","import {\n Component,\n Element,\n h,\n Host,\n State,\n Method,\n Prop,\n} from \"@stencil/core\";\n\nimport LeftArrow from \"./assets/left-arrow.svg\";\nimport RightArrow from \"./assets/right-arrow.svg\";\nimport { getSlotElements } from \"../../utils/helpers\";\n\nimport { checkResizeObserver, elementOverflowsX } from \"../../utils/helpers\";\nimport { IcThemeForeground, IcThemeForegroundEnum } from \"../../utils/types\";\n\nconst SCROLL_DELAY_MS = 200;\n\n@Component({\n tag: \"ic-horizontal-scroll\",\n styleUrl: \"./ic-horizontal-scroll.css\",\n shadow: true,\n})\nexport class HorizontalScroll {\n @Element() el: HTMLIcHorizontalScrollElement;\n\n /**\n * The appearance of the horizontal scroll, e.g. dark, light or the default.\n */\n @Prop() appearance?: IcThemeForeground = \"default\";\n\n @State() firstItemVisible: boolean = true;\n @State() lastItemVisible: boolean = false;\n @State() itemOverflow: boolean = false;\n\n private itemOffsets: number[];\n private itemsContainerEl: HTMLElement;\n private items: HTMLElement[];\n private resizeObserver: ResizeObserver;\n private isScrolling: number;\n private scrollDelay: number;\n private buttonStateSet: boolean = false;\n\n /**\n * @internal if side scrolling enabled, scrolls the specified item into view.\n */\n @Method()\n async scrollItemIntoView(itemPosition: number): Promise<void> {\n this.firstItemVisible = itemPosition <= 0;\n const newScrollPos =\n itemPosition <= 0 ? 0 : this.itemOffsets[itemPosition - 1];\n this.lastItemVisible =\n this.itemsContainerEl.offsetWidth + newScrollPos >=\n this.itemsContainerEl.scrollWidth;\n this.buttonStateSet = true;\n this.itemsContainerEl.scrollLeft = newScrollPos;\n }\n\n itemFocusHandler(itemPosition: number): void {\n if (this.itemOverflow) {\n this.scrollItemIntoView(itemPosition);\n }\n }\n\n private resizeObserverCallback = () => {\n if (this.el.clientWidth >= this.itemsContainerEl.scrollWidth) {\n this.itemOverflow = false;\n } else {\n this.itemOverflow = elementOverflowsX(this.itemsContainerEl);\n }\n\n if (this.itemOverflow) {\n this.lastItemVisible =\n this.itemsContainerEl.offsetWidth + this.itemsContainerEl.scrollLeft >=\n this.itemsContainerEl.scrollWidth;\n }\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n this.resizeObserverCallback();\n });\n this.resizeObserver.observe(this.itemsContainerEl);\n };\n\n private scrollLeft = () => {\n this.scrollItemIntoView(this.getCurrentLeftItem() - 1);\n };\n\n private scrollRight = () => {\n this.scrollItemIntoView(this.getCurrentLeftItem() + 1);\n };\n\n private longScrollRight = () => {\n this.scrollRight();\n this.scrollDelay = window.setTimeout(this.longScrollRight, SCROLL_DELAY_MS);\n };\n\n private longScrollLeft = () => {\n this.scrollLeft();\n this.scrollDelay = window.setTimeout(this.longScrollLeft, SCROLL_DELAY_MS);\n };\n\n private leftArrowMouseDownHandler = (e: MouseEvent) => {\n e.preventDefault();\n this.scrollDelay = window.setTimeout(this.longScrollLeft, SCROLL_DELAY_MS);\n };\n\n private rightArrowMouseDownHandler = (e: MouseEvent) => {\n e.preventDefault();\n this.scrollDelay = window.setTimeout(this.longScrollRight, SCROLL_DELAY_MS);\n };\n\n private arrowMouseUpHandler = () => {\n window.clearTimeout(this.scrollDelay);\n };\n\n private getCurrentLeftItem = (): number => {\n const index = this.itemOffsets.findIndex(\n (el) => el > Math.round(this.itemsContainerEl.scrollLeft)\n );\n return index < 0 ? 0 : index;\n };\n\n private scrollHandler = () => {\n window.clearTimeout(this.isScrolling);\n // Set a timeout to run after scrolling ends\n this.isScrolling = window.setTimeout(this.scrollStopped, 50);\n };\n\n private scrollStopped = () => {\n // If scrollItemIntoView has been called, the button states will already be set\n // Can't just handle it here as it causes strange jumping behaviour in positioning\n const scrollLeft = Math.round(this.itemsContainerEl.scrollLeft);\n if (this.buttonStateSet === false) {\n this.firstItemVisible = scrollLeft === 0;\n this.lastItemVisible =\n this.itemsContainerEl.offsetWidth + scrollLeft >=\n this.itemsContainerEl.scrollWidth;\n }\n this.buttonStateSet = false;\n };\n\n componentWillLoad(): void {\n this.itemsContainerEl = this.el.children[0] as HTMLElement;\n this.itemsContainerEl.addEventListener(\"scroll\", this.scrollHandler);\n\n this.items = (getSlotElements(this.itemsContainerEl) ||\n Array.from(this.itemsContainerEl.children)) as HTMLElement[];\n this.items.forEach((item) =>\n item.addEventListener(\"focus\", () =>\n this.itemFocusHandler(Array.from(this.items).indexOf(item))\n )\n );\n }\n\n componentDidLoad(): void {\n let runningTotal = 0;\n this.itemOffsets = this.items.map((item) => {\n runningTotal += item.offsetWidth;\n return runningTotal;\n });\n\n checkResizeObserver(this.runResizeObserver);\n\n // Add event listener to scroll containers as mouse events are not fired on disabled elements (ic-button's <button>)\n // 'mouseleave' needed in case the user moves their mouse while holding the arrow buttons\n // - 'mouseup' otherwise not detected and scrolling not stopped\n const scrollArrows = Array.from(\n this.el.shadowRoot.querySelectorAll(\"div\")\n ) as HTMLElement[];\n [\"mouseup\", \"mouseleave\"].forEach((event) => {\n scrollArrows.forEach((arrow) =>\n arrow.addEventListener(event, this.arrowMouseUpHandler)\n );\n });\n }\n\n disconnectedCallback(): void {\n this.resizeObserver.disconnect();\n }\n\n render() {\n const { appearance, firstItemVisible, lastItemVisible, itemOverflow } =\n this;\n\n return (\n <Host\n class={{\n [\"visible\"]: itemOverflow,\n [\"dark\"]: this.appearance === IcThemeForegroundEnum.Dark,\n [\"light\"]: this.appearance === IcThemeForegroundEnum.Light,\n }}\n >\n <div\n aria-hidden=\"true\"\n class={{\n [\"scroll-container-left\"]: true,\n [\"hidden\"]: !itemOverflow,\n [\"disabled\"]: firstItemVisible,\n }}\n >\n <ic-button\n class=\"scroll-arrow\"\n variant=\"icon\"\n aria-label=\"Scroll left\"\n appearance={appearance}\n innerHTML={LeftArrow}\n disabled={firstItemVisible}\n tabindex=\"-1\"\n onClick={this.scrollLeft}\n onMouseDown={this.leftArrowMouseDownHandler}\n ></ic-button>\n <span class=\"scroll-splitter-left\"></span>\n </div>\n <slot></slot>\n <div\n aria-hidden=\"true\"\n class={{\n [\"scroll-container-right\"]: true,\n [\"hidden\"]: !itemOverflow,\n [\"disabled\"]: lastItemVisible,\n }}\n >\n <span class=\"scroll-splitter-right\"></span>\n <ic-button\n class=\"scroll-arrow\"\n variant=\"icon\"\n aria-label=\"Scroll right\"\n appearance={appearance}\n innerHTML={RightArrow}\n disabled={lastItemVisible}\n tabindex=\"-1\"\n onClick={this.scrollRight}\n onMouseDown={this.rightArrowMouseDownHandler}\n ></ic-button>\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -1,2 +0,0 @@
1
- import{r as t,c as i,h as e,H as a,g as s}from"./p-5450cebf.js";import{I as n}from"./p-6f57b13c.js";import{F as o,D as r,g as l,k as h,o as c,i as d,c as p,a as m}from"./p-1724000c.js";const u='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;color:var(--ic-theme-text);width:100%;position:relative}:host .top-navigation{background-color:var(--ic-theme-primary);height:-moz-max-content;height:max-content}:host(.fullwidth-searchbar) slot[name="search"]::slotted(form){width:100%}:host .title-link{display:inline-flex;align-items:center;text-decoration:none;padding:var(--ic-space-xxs);margin-left:calc(-1 * var(--ic-space-xxs));transition:var(--ic-easing-transition-fast)}:host .title-link,:host .title-link:visited,:host .title-link:active,:host .title-link ::slotted(a),:host .title-link:visited ::slotted(a),:host .title-link:active ::slotted(a){color:var(--ic-theme-text);text-decoration:none;outline:none}:host .title-link:hover:not(:focus){background-color:var(--ic-theme-hover)}:host .title-link:active:not(:focus){background-color:var(--ic-theme-active)}:host .title-link:hover{border-radius:var(--ic-border-radius)}:host .title-link:focus,:host .title-link:focus-within{border-radius:var(--ic-border-radius);box-shadow:var(--ic-border-focus);outline:var(--ic-hc-focus-outline)}:host .title-link ic-typography{font-weight:600}:host .nav-panel-container{border-top:var(--ic-keyline-lighten);padding:0 var(--ic-space-lg);margin-left:calc(-1 * var(--section-container-margin));margin-right:calc(-1 * var(--section-container-margin));display:flex}:host(.dark) .nav-panel-container{border-top:var(--ic-keyline-darken)}.top-panel-container{display:flex;padding-top:0.5rem;padding-bottom:0.5rem}.navigation-tabs{margin-top:-0.063rem}.app-details-container{display:flex;align-items:center;flex:1 1 auto;margin-right:var(--ic-space-md)}.app-icon-container{display:flex;padding-right:var(--ic-space-xs)}.icon-buttons-container{display:flex;margin-left:var(--ic-space-md)}.icon-buttons-container ::slotted(nav){display:flex}.title-wrap{overflow-wrap:break-word;word-wrap:break-word;-ms-word-break:break-all;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}:host .app-status{border-radius:5rem;background-color:var(--ic-architectural-white);color:var(--ic-color-primary-text);padding:var(--ic-space-xxs) var(--ic-space-lg);margin-left:var(--ic-space-md)}:host(.dark) .app-status{background-color:var(--ic-theme-text);color:var(--ic-color-white-text)}:host .app-version{border-radius:1rem;background-color:var(--ic-theme-active);padding:var(--ic-space-xxs) var(--ic-space-sm);margin-left:var(--ic-space-xs)}.app-status-text,.app-version-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:6rem}slot[name="app-icon"]::slotted(svg){fill:var(--ic-theme-text);width:2em;height:2em}slot[name="toggle-icon"] svg{fill:var(--ic-theme-text)}.search-menu-container{justify-content:right;display:flex;align-items:center}.menu-button-container{margin-left:var(--ic-space-md)}.search-actions-container{display:flex}.menu-buttons-slot{display:flex;flex-direction:column}.navigation-landmark-text{position:absolute;width:0.063rem;height:0.063rem;padding:0;margin:-0.063rem;overflow:hidden}.navigation-item-list{display:flex;list-style:none;height:2.75rem}.navigation-item-list::-webkit-scrollbar{display:none}:host ic-section-container{padding-bottom:0 !important;padding-top:0 !important}@media screen and (min-width: 993px){.app-details-container{margin-right:var(--ic-space-lg)}}@media screen and (max-width: 1200px){:host .nav-panel-container{padding:0 var(--ic-space-md)}}@media screen and (max-width: 992px){:host .nav-panel-container,:host .app-status,:host .app-version{display:none}:host .title-link{margin-right:var(--ic-space-xs)}.search-menu-container{max-width:10rem}.search-bar-container{display:flex;justify-content:center;align-items:center;border-top:var(--ic-keyline-darken);height:4rem;padding-left:var(--ic-space-md);padding-right:var(--ic-space-md);margin-left:calc(-1 * var(--section-container-margin));margin-right:calc(-1 * var(--section-container-margin))}}@media screen and (max-width: 576px){:host .title-link{margin-right:var(--ic-space-xxxs);word-break:break-word;-webkit-hyphens:none;hyphens:none}.top-panel-container{min-height:2.5rem}.searchbox-inline{display:none}.search-bar-container{margin-top:0;height:3.5rem;padding-left:var(--ic-space-xs);padding-right:var(--ic-space-xs)}.menu-button-container{margin-left:var(--ic-space-sm)}slot[name="app-icon"]::slotted(svg){width:1.5em;height:1.5em}slot[name="toggle-icon"] svg{width:1.5em;height:1.5em}}@media (forced-colors: active){:host .top-navigation{border-bottom:var(--ic-hc-border)}.app-status,.app-version{border:var(--ic-hc-border)}slot[name="app-icon"]::slotted(svg){fill:currentcolor}}';const g=class{constructor(e){t(this,e);this.icNavigationMenuOpened=i(this,"icNavigationMenuOpened",7);this.icNavigationMenuClosed=i(this,"icNavigationMenuClosed",7);this.hasAppIcon=false;this.hasNavigation=false;this.hasIconButtons=false;this.hasSearchSlotContent=false;this.searchBar=null;this.initialiseSearchBar=()=>{if(this.hasSearchSlotContent){const t=o(this.el,"search");if(t&&t.tagName==="IC-SEARCH-BAR"){this.searchBar=t}else if(t&&t.tagName==="FORM"){this.searchBar=t.querySelector("ic-search-bar")}if(this.searchBar!==null){this.searchBar.hideLabel=true}}};this.emitTopNavResized=t=>{const i=new CustomEvent("topNavResized",{detail:{size:t}});this.el.dispatchEvent(i)};this.menuButtonClick=()=>{this.showNavMenu(true)};this.searchButtonMouseDownHandler=()=>{this.searchButtonClick=true};this.searchButtonClickHandler=()=>{this.toggleSearchBar();this.searchButtonClick=false};this.resizeObserver=null;this.resizeObserverCallback=t=>{if(t!==this.deviceSize){this.deviceSize=t;if(t>r.L){this.showNavMenu(false);if(this.mobileSearchBarVisible){this.toggleSearchBar()}}this.emitTopNavResized(t);if(document.activeElement!==null&&document.activeElement!==undefined&&document.activeElement.tagName==="IC-SEARCH-BAR"){this.searchBar.setAttribute("hidden","true");this.searchBar.removeAttribute("hidden");setTimeout((()=>{this.searchBar.focus()}),100)}}};this.runResizeObserver=()=>{this.resizeObserver=new ResizeObserver((()=>{const t=l();this.resizeObserverCallback(t)}));this.resizeObserver.observe(this.el)};this.appTitle=undefined;this.href="/";this.version="";this.status="";this.contentAligned="full-width";this.inline=false;this.menuOpen=false;this.deviceSize=r.XL;this.mobileSearchBarVisible=false;this.navMenuVisible=false;this.searchValue="";this.mobileSearchHiddenOnBlur=false;this.searchButtonClick=false;this.foregroundColor=h();this.hasFullWidthSearchBar=false}watchPropHandler(t,i){c(i,t,this.initialiseSearchBar)}navBarMenuCloseHandler(){this.showNavMenu(false);const t=this.el.shadowRoot.querySelector("#menu-button");t.focus()}searchInputBlurHandler(t){if(t.detail!==null){if(this.mobileSearchBarVisible&&!this.searchButtonClick){this.toggleSearchBar()}this.searchValue=t.detail.value}}searchValueChangeHandler(t){this.searchValue=t.detail.value}themeChangeHandler(t){const i=t.detail;this.foregroundColor=i.mode}toggleSearchBar(){this.mobileSearchBarVisible=!this.mobileSearchBarVisible;if(this.searchBar!==null){if(this.mobileSearchBarVisible){this.mobileSearchButtonEl.updateAriaLabel("Hide search");this.hasFullWidthSearchBar=true;this.searchBar.fullWidth=true;setTimeout((()=>{this.searchBar.focus()}),100)}else{this.mobileSearchButtonEl.updateAriaLabel("Show search");this.hasFullWidthSearchBar=false;this.searchBar.fullWidth=false}}}showNavMenu(t){this.navMenuVisible=t;if(t){this.icNavigationMenuOpened.emit()}else{this.icNavigationMenuClosed.emit()}}componentWillLoad(){this.hasAppIcon=d(this.el,"app-icon");this.hasNavigation=d(this.el,"navigation");this.hasIconButtons=d(this.el,"buttons");this.hasSearchSlotContent=d(this.el,"search");this.deviceSize=l();this.initialiseSearchBar()}componentWillRender(){this.hasNavigation=d(this.el,"navigation");this.hasSearchSlotContent=d(this.el,"search");this.hasIconButtons=d(this.el,"buttons");this.hasAppIcon=d(this.el,"app-icon")}componentDidLoad(){p(this.runResizeObserver);!d(this.el,"app-title")&&m([{prop:this.appTitle,propName:"app-title"}],"Top Navigation")}disconnectedCallback(){if(this.resizeObserver!==null){this.resizeObserver.disconnect()}}render(){const t=this.hasNavigation||this.hasIconButtons||this.status!==""||this.version!=="";const i=this.deviceSize<=r.S?"default":"large";let s="h3";const o=this.appTitle!==""&&this.appTitle!==undefined;if(this.deviceSize<=r.L){s="h4";if(this.deviceSize<=r.S){s="subtitle-small"}}const l=this.mobileSearchBarVisible?"Hide search":"Show search";const h=this.deviceSize<=r.S?"small":"default";const c=d(this.el,"app-title")?"div":"a";const p=c=="a"&&{href:this.href};return e(a,{class:{["fullwidth-searchbar"]:this.hasFullWidthSearchBar,[n.Dark]:this.foregroundColor===n.Dark}},e("div",{class:"top-navigation"},e("ic-section-container",{aligned:this.contentAligned,"full-height":true},e("header",{role:"banner"},e("div",{class:"top-panel-container"},e("div",{class:"app-details-container"},(o||d(this.el,"app-title"))&&e(c,Object.assign({class:"title-link"},p),this.hasAppIcon&&e("div",{class:"app-icon-container","aria-hidden":"true"},e("slot",{name:"app-icon"})),e("ic-typography",{variant:s},e("h1",{class:"title-wrap"},d(this.el,"app-title")?e("slot",{name:"app-title"}):this.appTitle))),this.status!==""&&e("div",{class:"app-status"},e("ic-typography",{"aria-label":"app tag",variant:"label-uppercase",class:"app-status-text"},this.status)),this.version!==""&&e("div",{class:"app-version"},e("ic-typography",{variant:"label",class:"app-version-text","aria-label":"app version"},this.version))),(this.hasSearchSlotContent||t)&&e("div",{class:"search-menu-container"},e("div",{class:"search-actions-container"},this.deviceSize>r.L&&e("slot",{name:"search"}),this.hasSearchSlotContent&&this.deviceSize<=r.L&&e("ic-button",{id:"search-toggle-button",ref:t=>this.mobileSearchButtonEl=t,onMouseDown:this.searchButtonMouseDownHandler,variant:"icon",size:i,"aria-label":l,appearance:this.foregroundColor,onClick:this.searchButtonClickHandler},e("slot",{name:"toggle-icon",slot:"icon"},e("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"#ffffff"},e("path",{d:"M0 0h24v24H0V0z",fill:"none"}),e("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"})))),this.hasIconButtons&&this.deviceSize>r.L&&e("div",{class:"icon-buttons-container"},e("slot",{name:"buttons"})),t&&this.deviceSize<=r.L&&e("div",{class:"menu-button-container"},e("nav",{"aria-labelledby":"navigation-landmark-text","aria-hidden":!this.hasNavigation||this.navMenuVisible?"true":"false"},e("ic-button",{id:"menu-button",appearance:this.foregroundColor,variant:"secondary","aria-expanded":this.menuOpen?"true":"false","aria-haspopup":"true","aria-label":`Open ${this.hasNavigation?"navigation":"app"} menu`,size:h,onClick:this.menuButtonClick},"Menu",e("svg",{xmlns:"http://www.w3.org/2000/svg",height:"24px",viewBox:"0 0 24 24",width:"24px",fill:"#ffffff",slot:"icon"},e("path",{d:"M0 0h24v24H0V0z",fill:"none"}),e("path",{d:"M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"})))))))),this.mobileSearchBarVisible&&e("div",{class:"search-bar-container"},e("slot",{name:"search"})),this.hasNavigation&&this.deviceSize>r.L&&e("div",{class:"navigation-tabs"},e("span",{id:"navigation-landmark-text",class:"navigation-landmark-text","aria-hidden":"true"},"Main navigation"),e("nav",{"aria-labelledby":"navigation-landmark-text",class:"nav-panel-container"},e("ic-horizontal-scroll",{appearance:this.foregroundColor},e("ul",{class:"navigation-item-list",tabindex:"-1"},e("slot",{name:"navigation"})))))))),this.navMenuVisible&&e("ic-navigation-menu",{version:this.version,status:this.status,class:{["inline"]:this.inline}},e("div",{class:"menu-buttons-slot",slot:"buttons"},e("slot",{name:"buttons"})),e("ul",{slot:"navigation"},e("slot",{name:"navigation"}))))}get el(){return s(this)}static get watchers(){return{appTitle:["watchPropHandler"]}}};g.style=u;export{g as ic_top_navigation};
2
- //# sourceMappingURL=p-7a0bf893.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["src/components/ic-top-navigation/ic-top-navigation.css?tag=ic-top-navigation&encapsulation=shadow","src/components/ic-top-navigation/ic-top-navigation.tsx"],"names":["icTopNavigationCss","TopNavigation","this","hasAppIcon","hasNavigation","hasIconButtons","hasSearchSlotContent","searchBar","initialiseSearchBar","slot","getSlot","el","tagName","querySelector","hideLabel","emitTopNavResized","size","event","CustomEvent","detail","dispatchEvent","menuButtonClick","showNavMenu","searchButtonMouseDownHandler","searchButtonClick","searchButtonClickHandler","toggleSearchBar","resizeObserver","resizeObserverCallback","currSize","deviceSize","DEVICE_SIZES","L","mobileSearchBarVisible","document","activeElement","undefined","setAttribute","removeAttribute","setTimeout","focus","runResizeObserver","ResizeObserver","getCurrentDeviceSize","observe","XL","getThemeForegroundColor","[object Object]","newValue","oldValue","onComponentPropUndefinedChange","menuBtn","shadowRoot","ev","searchValue","value","theme","foregroundColor","mode","mobileSearchButtonEl","updateAriaLabel","hasFullWidthSearchBar","fullWidth","show","navMenuVisible","icNavigationMenuOpened","emit","icNavigationMenuClosed","isSlotUsed","checkResizeObserver","onComponentRequiredPropUndefined","prop","appTitle","propName","disconnect","hasMenuContent","status","version","searchButtonSize","S","appTitleVariant","hasTitle","mobileSearchButtonTitle","menuSize","Component","attrs","href","h","Host","class","IcThemeForegroundEnum","Dark","aligned","contentAligned","full-height","role","Object","assign","aria-hidden","name","variant","aria-label","id","ref","onMouseDown","appearance","onClick","xmlns","viewBox","fill","d","aria-labelledby","aria-expanded","menuOpen","aria-haspopup","height","width","tabindex","inline"],"mappings":"yLAAA,MAAMA,EAAqB,0zNC4CdC,EAAa,6JAgEhBC,KAAAC,WAAsB,MACtBD,KAAAE,cAAyB,MACzBF,KAAAG,eAA0B,MAC1BH,KAAAI,qBAAgC,MAChCJ,KAAAK,UAAoC,KAkCpCL,KAAAM,oBAAsB,KAC5B,GAAIN,KAAKI,qBAAsB,CAC7B,MAAMG,EAAOC,EAAQR,KAAKS,GAAI,UAC9B,GAAIF,GAAQA,EAAKG,UAAY,gBAAiB,CAC5CV,KAAKK,UAAYE,OACZ,GAAIA,GAAQA,EAAKG,UAAY,OAAQ,CAC1CV,KAAKK,UAAYE,EAAKI,cACpB,iBAIJ,GAAIX,KAAKK,YAAc,KAAM,CAC3BL,KAAKK,UAAUO,UAAY,QAwBzBZ,KAAAa,kBAAqBC,IAC3B,MAAMC,EAAQ,IAAIC,YAAY,gBAAiB,CAAEC,OAAQ,CAAEH,KAAMA,KACjEd,KAAKS,GAAGS,cAAcH,IAGhBf,KAAAmB,gBAAkB,KACxBnB,KAAKoB,YAAY,OAYXpB,KAAAqB,6BAA+B,KACrCrB,KAAKsB,kBAAoB,MAGnBtB,KAAAuB,yBAA2B,KACjCvB,KAAKwB,kBACLxB,KAAKsB,kBAAoB,OAGnBtB,KAAAyB,eAAiC,KAEjCzB,KAAA0B,uBAA0BC,IAChC,GAAIA,IAAa3B,KAAK4B,WAAY,CAChC5B,KAAK4B,WAAaD,EAClB,GAAIA,EAAWE,EAAaC,EAAG,CAC7B9B,KAAKoB,YAAY,OACjB,GAAIpB,KAAK+B,uBAAwB,CAC/B/B,KAAKwB,mBAGTxB,KAAKa,kBAAkBc,GACvB,GACEK,SAASC,gBAAkB,MAC3BD,SAASC,gBAAkBC,WAC3BF,SAASC,cAAcvB,UAAY,gBACnC,CACAV,KAAKK,UAAU8B,aAAa,SAAU,QAEtCnC,KAAKK,UAAU+B,gBAAgB,UAC/BC,YAAW,KACTrC,KAAKK,UAAUiC,UACd,QAKDtC,KAAAuC,kBAAoB,KAC1BvC,KAAKyB,eAAiB,IAAIe,gBAAe,KACvC,MAAMb,EAAWc,IACjBzC,KAAK0B,uBAAuBC,MAG9B3B,KAAKyB,eAAeiB,QAAQ1C,KAAKS,uCA3LZ,iBAKG,eAKD,uBAKa,yBAKZ,oBAEG,sBACCoB,EAAac,+BACA,0BACR,uBACJ,iCACc,6BACP,2BACQC,+BACJ,MAG1CC,iBAAiBC,EAAkBC,GAGjCC,EACED,EACAD,EACA9C,KAAKM,qBAsBTuC,yBACE7C,KAAKoB,YAAY,OACjB,MAAM6B,EAAUjD,KAAKS,GAAGyC,WAAWvC,cACjC,gBAEFsC,EAAQX,QAIVO,uBAAuBM,GACrB,GAAIA,EAAGlC,SAAW,KAAM,CACtB,GAAIjB,KAAK+B,yBAA2B/B,KAAKsB,kBAAmB,CAE1DtB,KAAKwB,kBAEPxB,KAAKoD,YAAcD,EAAGlC,OAAOoC,OAKjCR,yBAAyBM,GACvBnD,KAAKoD,YAAcD,EAAGlC,OAAOoC,MAI/BR,mBAAmBM,GACjB,MAAMG,EAAiBH,EAAGlC,OAC1BjB,KAAKuD,gBAAkBD,EAAME,KAoBvBX,kBACN7C,KAAK+B,wBAA0B/B,KAAK+B,uBAEpC,GAAI/B,KAAKK,YAAc,KAAM,CAC3B,GAAIL,KAAK+B,uBAAwB,CAC/B/B,KAAKyD,qBAAqBC,gBAAgB,eAC1C1D,KAAK2D,sBAAwB,KAC7B3D,KAAKK,UAAUuD,UAAY,KAC3BvB,YAAW,KACTrC,KAAKK,UAAUiC,UACd,SACE,CACLtC,KAAKyD,qBAAqBC,gBAAgB,eAC1C1D,KAAK2D,sBAAwB,MAC7B3D,KAAKK,UAAUuD,UAAY,QAczBf,YAAYgB,GAClB7D,KAAK8D,eAAiBD,EACtB,GAAIA,EAAM,CACR7D,KAAK+D,uBAAuBC,WACvB,CACLhE,KAAKiE,uBAAuBD,QAiDhCnB,oBACE7C,KAAKC,WAAaiE,EAAWlE,KAAKS,GAAI,YACtCT,KAAKE,cAAgBgE,EAAWlE,KAAKS,GAAI,cACzCT,KAAKG,eAAiB+D,EAAWlE,KAAKS,GAAI,WAC1CT,KAAKI,qBAAuB8D,EAAWlE,KAAKS,GAAI,UAChDT,KAAK4B,WAAaa,IAClBzC,KAAKM,sBAGPuC,sBACE7C,KAAKE,cAAgBgE,EAAWlE,KAAKS,GAAI,cACzCT,KAAKI,qBAAuB8D,EAAWlE,KAAKS,GAAI,UAChDT,KAAKG,eAAiB+D,EAAWlE,KAAKS,GAAI,WAC1CT,KAAKC,WAAaiE,EAAWlE,KAAKS,GAAI,YAGxCoC,mBACEsB,EAAoBnE,KAAKuC,oBAExB2B,EAAWlE,KAAKS,GAAI,cACnB2D,EACE,CAAC,CAAEC,KAAMrE,KAAKsE,SAAUC,SAAU,cAClC,kBAIN1B,uBACE,GAAI7C,KAAKyB,iBAAmB,KAAM,CAChCzB,KAAKyB,eAAe+C,cAIxB3B,SACE,MAAM4B,EACJzE,KAAKE,eACLF,KAAKG,gBACLH,KAAK0E,SAAW,IAChB1E,KAAK2E,UAAY,GAEnB,MAAMC,EACJ5E,KAAK4B,YAAcC,EAAagD,EAAI,UAAY,QAElD,IAAIC,EAAwC,KAE5C,MAAMC,EAAW/E,KAAKsE,WAAa,IAAMtE,KAAKsE,WAAapC,UAE3D,GAAIlC,KAAK4B,YAAcC,EAAaC,EAAG,CACrCgD,EAAkB,KAClB,GAAI9E,KAAK4B,YAAcC,EAAagD,EAAG,CACrCC,EAAkB,kBAItB,MAAME,EAA0BhF,KAAK+B,uBACjC,cACA,cACJ,MAAMkD,EAAWjF,KAAK4B,YAAcC,EAAagD,EAAI,QAAU,UAE/D,MAAMK,EAAYhB,EAAWlE,KAAKS,GAAI,aAAe,MAAQ,IAE7D,MAAM0E,EAAQD,GAAa,KAAO,CAChCE,KAAMpF,KAAKoF,MAGb,OACEC,EAACC,EAAI,CACHC,MAAO,CACL1C,CAAC,uBAAwB7C,KAAK2D,sBAC9Bd,CAAC2C,EAAsBC,MACrBzF,KAAKuD,kBAAoBiC,EAAsBC,OAGnDJ,EAAA,MAAA,CAAKE,MAAM,kBACTF,EAAA,uBAAA,CAAsBK,QAAS1F,KAAK2F,eAAcC,cAAA,MAChDP,EAAA,SAAA,CAAQQ,KAAK,UACXR,EAAA,MAAA,CAAKE,MAAM,uBACTF,EAAA,MAAA,CAAKE,MAAM,0BACPR,GAAYb,EAAWlE,KAAKS,GAAI,eAChC4E,EAACH,EAASY,OAAAC,OAAA,CAACR,MAAM,cAAiBJ,GAC/BnF,KAAKC,YACJoF,EAAA,MAAA,CAAKE,MAAM,qBAAoBS,cAAa,QAC1CX,EAAA,OAAA,CAAMY,KAAK,cAGfZ,EAAA,gBAAA,CAAea,QAASpB,GACtBO,EAAA,KAAA,CAAIE,MAAM,cACPrB,EAAWlE,KAAKS,GAAI,aACnB4E,EAAA,OAAA,CAAMY,KAAK,cAEXjG,KAAa,YAMtBA,KAAK0E,SAAW,IACfW,EAAA,MAAA,CAAKE,MAAM,cACTF,EAAA,gBAAA,CAAAc,aACa,UACXD,QAAQ,kBACRX,MAAM,mBAELvF,KAAK0E,SAIX1E,KAAK2E,UAAY,IAChBU,EAAA,MAAA,CAAKE,MAAM,eACTF,EAAA,gBAAA,CACEa,QAAQ,QACRX,MAAM,mBAAkBY,aACb,eAEVnG,KAAK2E,YAMZ3E,KAAKI,sBAAwBqE,IAC7BY,EAAA,MAAA,CAAKE,MAAM,yBACTF,EAAA,MAAA,CAAKE,MAAM,4BACRvF,KAAK4B,WAAaC,EAAaC,GAC9BuD,EAAA,OAAA,CAAMY,KAAK,WAGZjG,KAAKI,sBACJJ,KAAK4B,YAAcC,EAAaC,GAC9BuD,EAAA,YAAA,CACEe,GAAG,uBACHC,IAAM5F,GAAQT,KAAKyD,qBAAuBhD,EAC1C6F,YAAatG,KAAKqB,6BAClB6E,QAAQ,OACRpF,KAAM8D,EAAgBuB,aACVnB,EACZuB,WAAYvG,KAAKuD,gBACjBiD,QAASxG,KAAKuB,0BAEd8D,EAAA,OAAA,CAAMY,KAAK,cAAc1F,KAAK,QAC5B8E,EAAA,MAAA,CACEoB,MAAM,6BACNC,QAAQ,YACRC,KAAK,WAELtB,EAAA,OAAA,CAAMuB,EAAE,kBAAkBD,KAAK,SAC/BtB,EAAA,OAAA,CAAMuB,EAAE,kPAMjB5G,KAAKG,gBAAkBH,KAAK4B,WAAaC,EAAaC,GACrDuD,EAAA,MAAA,CAAKE,MAAM,0BACTF,EAAA,OAAA,CAAMY,KAAK,aAGdxB,GAAkBzE,KAAK4B,YAAcC,EAAaC,GACjDuD,EAAA,MAAA,CAAKE,MAAM,yBACTF,EAAA,MAAA,CAAAwB,kBACkB,2BAA0Bb,eAEvChG,KAAKE,eAAiBF,KAAK8D,eACxB,OACA,SAGNuB,EAAA,YAAA,CACEe,GAAG,cACHG,WAAYvG,KAAKuD,gBACjB2C,QAAQ,YAAWY,gBACJ9G,KAAK+G,SAAW,OAAS,QAAOC,gBACjC,OAAMb,aACR,QACVnG,KAAKE,cAAgB,aAAe,aAEtCY,KAAMmE,EACNuB,QAASxG,KAAKmB,iBAAe,OAG7BkE,EAAA,MAAA,CACEoB,MAAM,6BACNQ,OAAO,OACPP,QAAQ,YACRQ,MAAM,OACNP,KAAK,UACLpG,KAAK,QAEL8E,EAAA,OAAA,CAAMuB,EAAE,kBAAkBD,KAAK,SAC/BtB,EAAA,OAAA,CAAMuB,EAAE,yDAWzB5G,KAAK+B,wBACJsD,EAAA,MAAA,CAAKE,MAAM,wBACTF,EAAA,OAAA,CAAMY,KAAK,YAIdjG,KAAKE,eAAiBF,KAAK4B,WAAaC,EAAaC,GACpDuD,EAAA,MAAA,CAAKE,MAAM,mBACTF,EAAA,OAAA,CACEe,GAAG,2BACHb,MAAM,2BAA0BS,cACpB,QAAM,mBAIpBX,EAAA,MAAA,CAAAwB,kBACkB,2BAChBtB,MAAM,uBAENF,EAAA,uBAAA,CAAsBkB,WAAYvG,KAAKuD,iBACrC8B,EAAA,KAAA,CAAIE,MAAM,uBAAuB4B,SAAS,MACxC9B,EAAA,OAAA,CAAMY,KAAK,sBAS1BjG,KAAK8D,gBACJuB,EAAA,qBAAA,CACEV,QAAS3E,KAAK2E,QACdD,OAAQ1E,KAAK0E,OACba,MAAO,CACL1C,CAAC,UAAW7C,KAAKoH,SAGnB/B,EAAA,MAAA,CAAKE,MAAM,oBAAoBhF,KAAK,WAClC8E,EAAA,OAAA,CAAMY,KAAK,aAEbZ,EAAA,KAAA,CAAI9E,KAAK,cACP8E,EAAA,OAAA,CAAMY,KAAK","sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: block;\n color: var(--ic-theme-text);\n width: 100%;\n position: relative;\n}\n\n:host .top-navigation {\n background-color: var(--ic-theme-primary);\n height: max-content;\n}\n\n:host(.fullwidth-searchbar) slot[name=\"search\"]::slotted(form) {\n width: 100%;\n}\n\n:host .title-link {\n display: inline-flex;\n align-items: center;\n text-decoration: none;\n padding: var(--ic-space-xxs);\n margin-left: calc(-1 * var(--ic-space-xxs));\n transition: var(--ic-easing-transition-fast);\n}\n\n:host .title-link,\n:host .title-link:visited,\n:host .title-link:active,\n:host .title-link ::slotted(a),\n:host .title-link:visited ::slotted(a),\n:host .title-link:active ::slotted(a) {\n color: var(--ic-theme-text);\n text-decoration: none;\n outline: none;\n}\n\n:host .title-link:hover:not(:focus) {\n background-color: var(--ic-theme-hover);\n}\n\n:host .title-link:active:not(:focus) {\n background-color: var(--ic-theme-active);\n}\n\n:host .title-link:hover {\n border-radius: var(--ic-border-radius);\n}\n\n:host .title-link:focus,\n:host .title-link:focus-within {\n border-radius: var(--ic-border-radius);\n box-shadow: var(--ic-border-focus);\n outline: var(--ic-hc-focus-outline);\n}\n\n:host .title-link ic-typography {\n font-weight: 600;\n}\n\n:host .nav-panel-container {\n border-top: var(--ic-keyline-lighten);\n padding: 0 var(--ic-space-lg);\n margin-left: calc(-1 * var(--section-container-margin));\n margin-right: calc(-1 * var(--section-container-margin));\n display: flex;\n}\n\n:host(.dark) .nav-panel-container {\n border-top: var(--ic-keyline-darken);\n}\n\n.top-panel-container {\n display: flex;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n\n.navigation-tabs {\n margin-top: -0.063rem;\n}\n\n.app-details-container {\n display: flex;\n align-items: center;\n flex: 1 1 auto;\n margin-right: var(--ic-space-md);\n}\n\n.app-icon-container {\n display: flex;\n padding-right: var(--ic-space-xs);\n}\n\n.icon-buttons-container {\n display: flex;\n margin-left: var(--ic-space-md);\n}\n\n.icon-buttons-container ::slotted(nav) {\n display: flex;\n}\n\n.title-wrap {\n overflow-wrap: break-word;\n word-wrap: break-word;\n -ms-word-break: break-all;\n word-break: break-word;\n hyphens: auto;\n}\n\n:host .app-status {\n border-radius: 5rem;\n background-color: var(--ic-architectural-white);\n color: var(--ic-color-primary-text);\n padding: var(--ic-space-xxs) var(--ic-space-lg);\n margin-left: var(--ic-space-md);\n}\n\n:host(.dark) .app-status {\n background-color: var(--ic-theme-text);\n color: var(--ic-color-white-text);\n}\n\n:host .app-version {\n border-radius: 1rem;\n background-color: var(--ic-theme-active);\n padding: var(--ic-space-xxs) var(--ic-space-sm);\n margin-left: var(--ic-space-xs);\n}\n\n.app-status-text,\n.app-version-text {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n max-width: 6rem;\n}\n\nslot[name=\"app-icon\"]::slotted(svg) {\n fill: var(--ic-theme-text);\n width: 2em;\n height: 2em;\n}\n\nslot[name=\"toggle-icon\"] svg {\n fill: var(--ic-theme-text);\n}\n\n.search-menu-container {\n justify-content: right;\n display: flex;\n align-items: center;\n}\n\n.menu-button-container {\n margin-left: var(--ic-space-md);\n}\n\n.search-actions-container {\n display: flex;\n}\n\n.menu-buttons-slot {\n display: flex;\n flex-direction: column;\n}\n\n.navigation-landmark-text {\n position: absolute;\n width: 0.063rem;\n height: 0.063rem;\n padding: 0;\n margin: -0.063rem;\n overflow: hidden;\n}\n\n.navigation-item-list {\n display: flex;\n list-style: none;\n height: 2.75rem;\n}\n\n.navigation-item-list::-webkit-scrollbar {\n display: none;\n}\n\n:host ic-section-container {\n padding-bottom: 0 !important;\n padding-top: 0 !important;\n}\n\n@media screen and (min-width: 993px) {\n .app-details-container {\n margin-right: var(--ic-space-lg);\n }\n}\n\n/* large */\n@media screen and (max-width: 1200px) {\n :host .nav-panel-container {\n padding: 0 var(--ic-space-md);\n }\n}\n\n/* medium */\n@media screen and (max-width: 992px) {\n :host .nav-panel-container,\n :host .app-status,\n :host .app-version {\n display: none;\n }\n\n :host .title-link {\n margin-right: var(--ic-space-xs);\n }\n\n .search-menu-container {\n max-width: 10rem;\n }\n\n .search-bar-container {\n display: flex;\n justify-content: center;\n align-items: center;\n border-top: var(--ic-keyline-darken);\n height: 4rem;\n padding-left: var(--ic-space-md);\n padding-right: var(--ic-space-md);\n margin-left: calc(-1 * var(--section-container-margin));\n margin-right: calc(-1 * var(--section-container-margin));\n }\n}\n\n/* x small */\n@media screen and (max-width: 576px) {\n :host .title-link {\n margin-right: var(--ic-space-xxxs);\n word-break: break-word;\n hyphens: none;\n }\n\n .top-panel-container {\n min-height: 2.5rem;\n }\n\n .searchbox-inline {\n display: none;\n }\n\n .search-bar-container {\n margin-top: 0;\n height: 3.5rem;\n padding-left: var(--ic-space-xs);\n padding-right: var(--ic-space-xs);\n }\n\n .menu-button-container {\n margin-left: var(--ic-space-sm);\n }\n\n slot[name=\"app-icon\"]::slotted(svg) {\n width: 1.5em;\n height: 1.5em;\n }\n\n slot[name=\"toggle-icon\"] svg {\n width: 1.5em;\n height: 1.5em;\n }\n}\n\n@media (forced-colors: active) {\n :host .top-navigation {\n border-bottom: var(--ic-hc-border);\n }\n\n .app-status,\n .app-version {\n border: var(--ic-hc-border);\n }\n\n slot[name=\"app-icon\"]::slotted(svg) {\n fill: currentcolor;\n }\n}\n","import {\n Component,\n Element,\n Host,\n Prop,\n h,\n State,\n Listen,\n Event,\n EventEmitter,\n Watch,\n} from \"@stencil/core\";\n\nimport {\n IcTypographyVariants,\n IcAlignment,\n IcThemeForeground,\n IcThemeForegroundEnum,\n IcTheme,\n} from \"../../utils/types\";\nimport {\n checkResizeObserver,\n DEVICE_SIZES,\n getCurrentDeviceSize,\n getThemeForegroundColor,\n getSlot,\n onComponentPropUndefinedChange,\n onComponentRequiredPropUndefined,\n isSlotUsed,\n} from \"../../utils/helpers\";\n\n/**\n * @slot app-icon - Content will be rendered to left of app title.\n * @slot app-title - Handle routing by nesting a route in the app title.\n * @slot search - Content will be rendered in search area to left of buttons.\n * @slot toggle-icon - Icon to be displayed on the button to toggle search slot content on smaller devices\n * @slot navigation - Content will be rendered in navigation panel.\n * @slot buttons - Content will be rendered to right of search bar.\n */\n@Component({\n tag: \"ic-top-navigation\",\n styleUrl: \"ic-top-navigation.css\",\n shadow: true,\n})\nexport class TopNavigation {\n @Element() el: HTMLIcTopNavigationElement;\n\n /**\n * The app title to be displayed. This is required, unless a slotted app title link is used.\n */\n @Prop() appTitle: string;\n\n /**\n * The URL to navigate to when the app title is clicked.\n */\n @Prop() href: string = \"/\";\n\n /**\n * The version info to be displayed.\n */\n @Prop() version: string = \"\";\n\n /**\n * The status info to be displayed.\n */\n @Prop() status: string = \"\";\n\n /**\n * The alignment of the top navigation content.\n */\n @Prop() contentAligned: IcAlignment = \"full-width\";\n\n /**\n * If `true`, the flyout navigation menu on small devices will be contained by the parent element.\n */\n @Prop() inline: boolean = false;\n\n @State() menuOpen: boolean = false;\n @State() deviceSize: number = DEVICE_SIZES.XL;\n @State() mobileSearchBarVisible: boolean = false;\n @State() navMenuVisible: boolean = false;\n @State() searchValue: string = \"\";\n @State() mobileSearchHiddenOnBlur: boolean = false;\n @State() searchButtonClick: boolean = false;\n @State() foregroundColor: IcThemeForeground = getThemeForegroundColor();\n @State() hasFullWidthSearchBar: boolean = false;\n\n @Watch(\"appTitle\")\n watchPropHandler(newValue: string, oldValue: string): void {\n //added for gatsby rehydration issue where prop is initially undefined but then changes to actual value\n //this watch can be removed once gatbsy hydration issue is resolved\n onComponentPropUndefinedChange(\n oldValue,\n newValue,\n this.initialiseSearchBar\n );\n }\n\n /**\n * @internal - Emitted when the menu is opened.\n */\n @Event() icNavigationMenuOpened: EventEmitter<void>;\n\n /**\n * @internal - Emitted when the menu is closed.\n */\n @Event() icNavigationMenuClosed: EventEmitter<void>;\n\n private hasAppIcon: boolean = false;\n private hasNavigation: boolean = false;\n private hasIconButtons: boolean = false;\n private hasSearchSlotContent: boolean = false;\n private searchBar: HTMLIcSearchBarElement = null;\n private mobileSearchButtonEl: HTMLIcButtonElement;\n\n @Listen(\"icNavigationMenuClose\", {})\n navBarMenuCloseHandler(): void {\n this.showNavMenu(false);\n const menuBtn = this.el.shadowRoot.querySelector(\n \"#menu-button\"\n ) as HTMLElement;\n menuBtn.focus();\n }\n\n @Listen(\"icSearchBarBlur\", {})\n searchInputBlurHandler(ev: CustomEvent): void {\n if (ev.detail !== null) {\n if (this.mobileSearchBarVisible && !this.searchButtonClick) {\n //don't hide if blur was triggered by click on search button - let the click handler toggle the state\n this.toggleSearchBar();\n }\n this.searchValue = ev.detail.value;\n }\n }\n\n @Listen(\"icChange\", {})\n searchValueChangeHandler(ev: CustomEvent): void {\n this.searchValue = ev.detail.value;\n }\n\n @Listen(\"themeChange\", { target: \"document\" })\n themeChangeHandler(ev: CustomEvent): void {\n const theme: IcTheme = ev.detail;\n this.foregroundColor = theme.mode;\n }\n\n private initialiseSearchBar = () => {\n if (this.hasSearchSlotContent) {\n const slot = getSlot(this.el, \"search\");\n if (slot && slot.tagName === \"IC-SEARCH-BAR\") {\n this.searchBar = slot as HTMLIcSearchBarElement;\n } else if (slot && slot.tagName === \"FORM\") {\n this.searchBar = slot.querySelector(\n \"ic-search-bar\"\n ) as HTMLIcSearchBarElement;\n }\n\n if (this.searchBar !== null) {\n this.searchBar.hideLabel = true;\n }\n }\n };\n\n private toggleSearchBar(): void {\n this.mobileSearchBarVisible = !this.mobileSearchBarVisible;\n\n if (this.searchBar !== null) {\n if (this.mobileSearchBarVisible) {\n this.mobileSearchButtonEl.updateAriaLabel(\"Hide search\");\n this.hasFullWidthSearchBar = true;\n this.searchBar.fullWidth = true;\n setTimeout(() => {\n this.searchBar.focus();\n }, 100);\n } else {\n this.mobileSearchButtonEl.updateAriaLabel(\"Show search\");\n this.hasFullWidthSearchBar = false;\n this.searchBar.fullWidth = false;\n }\n }\n }\n\n private emitTopNavResized = (size: number): void => {\n const event = new CustomEvent(\"topNavResized\", { detail: { size: size } });\n this.el.dispatchEvent(event);\n };\n\n private menuButtonClick = () => {\n this.showNavMenu(true);\n };\n\n private showNavMenu(show: boolean): void {\n this.navMenuVisible = show;\n if (show) {\n this.icNavigationMenuOpened.emit();\n } else {\n this.icNavigationMenuClosed.emit();\n }\n }\n\n private searchButtonMouseDownHandler = () => {\n this.searchButtonClick = true;\n };\n\n private searchButtonClickHandler = () => {\n this.toggleSearchBar();\n this.searchButtonClick = false;\n };\n\n private resizeObserver: ResizeObserver = null;\n\n private resizeObserverCallback = (currSize: number) => {\n if (currSize !== this.deviceSize) {\n this.deviceSize = currSize;\n if (currSize > DEVICE_SIZES.L) {\n this.showNavMenu(false);\n if (this.mobileSearchBarVisible) {\n this.toggleSearchBar();\n }\n }\n this.emitTopNavResized(currSize);\n if (\n document.activeElement !== null &&\n document.activeElement !== undefined &&\n document.activeElement.tagName === \"IC-SEARCH-BAR\"\n ) {\n this.searchBar.setAttribute(\"hidden\", \"true\");\n //remove attribute again as this trigger a redraw & applies css\n this.searchBar.removeAttribute(\"hidden\");\n setTimeout(() => {\n this.searchBar.focus();\n }, 100);\n }\n }\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n const currSize = getCurrentDeviceSize();\n this.resizeObserverCallback(currSize);\n });\n\n this.resizeObserver.observe(this.el);\n };\n\n componentWillLoad(): void {\n this.hasAppIcon = isSlotUsed(this.el, \"app-icon\");\n this.hasNavigation = isSlotUsed(this.el, \"navigation\");\n this.hasIconButtons = isSlotUsed(this.el, \"buttons\");\n this.hasSearchSlotContent = isSlotUsed(this.el, \"search\");\n this.deviceSize = getCurrentDeviceSize();\n this.initialiseSearchBar();\n }\n\n componentWillRender(): void {\n this.hasNavigation = isSlotUsed(this.el, \"navigation\");\n this.hasSearchSlotContent = isSlotUsed(this.el, \"search\");\n this.hasIconButtons = isSlotUsed(this.el, \"buttons\");\n this.hasAppIcon = isSlotUsed(this.el, \"app-icon\");\n }\n\n componentDidLoad(): void {\n checkResizeObserver(this.runResizeObserver);\n\n !isSlotUsed(this.el, \"app-title\") &&\n onComponentRequiredPropUndefined(\n [{ prop: this.appTitle, propName: \"app-title\" }],\n \"Top Navigation\"\n );\n }\n\n disconnectedCallback(): void {\n if (this.resizeObserver !== null) {\n this.resizeObserver.disconnect();\n }\n }\n\n render() {\n const hasMenuContent =\n this.hasNavigation ||\n this.hasIconButtons ||\n this.status !== \"\" ||\n this.version !== \"\";\n\n const searchButtonSize =\n this.deviceSize <= DEVICE_SIZES.S ? \"default\" : \"large\";\n\n let appTitleVariant: IcTypographyVariants = \"h3\";\n\n const hasTitle = this.appTitle !== \"\" && this.appTitle !== undefined;\n\n if (this.deviceSize <= DEVICE_SIZES.L) {\n appTitleVariant = \"h4\";\n if (this.deviceSize <= DEVICE_SIZES.S) {\n appTitleVariant = \"subtitle-small\";\n }\n }\n\n const mobileSearchButtonTitle = this.mobileSearchBarVisible\n ? \"Hide search\"\n : \"Show search\";\n const menuSize = this.deviceSize <= DEVICE_SIZES.S ? \"small\" : \"default\";\n\n const Component = isSlotUsed(this.el, \"app-title\") ? \"div\" : \"a\";\n\n const attrs = Component == \"a\" && {\n href: this.href,\n };\n\n return (\n <Host\n class={{\n [\"fullwidth-searchbar\"]: this.hasFullWidthSearchBar,\n [IcThemeForegroundEnum.Dark]:\n this.foregroundColor === IcThemeForegroundEnum.Dark,\n }}\n >\n <div class=\"top-navigation\">\n <ic-section-container aligned={this.contentAligned} full-height>\n <header role=\"banner\">\n <div class=\"top-panel-container\">\n <div class=\"app-details-container\">\n {(hasTitle || isSlotUsed(this.el, \"app-title\")) && (\n <Component class=\"title-link\" {...attrs}>\n {this.hasAppIcon && (\n <div class=\"app-icon-container\" aria-hidden=\"true\">\n <slot name=\"app-icon\" />\n </div>\n )}\n <ic-typography variant={appTitleVariant}>\n <h1 class=\"title-wrap\">\n {isSlotUsed(this.el, \"app-title\") ? (\n <slot name=\"app-title\"></slot>\n ) : (\n this.appTitle\n )}\n </h1>\n </ic-typography>\n </Component>\n )}\n {this.status !== \"\" && (\n <div class=\"app-status\">\n <ic-typography\n aria-label=\"app tag\"\n variant=\"label-uppercase\"\n class=\"app-status-text\"\n >\n {this.status}\n </ic-typography>\n </div>\n )}\n {this.version !== \"\" && (\n <div class=\"app-version\">\n <ic-typography\n variant=\"label\"\n class=\"app-version-text\"\n aria-label=\"app version\"\n >\n {this.version}\n </ic-typography>\n </div>\n )}\n </div>\n\n {(this.hasSearchSlotContent || hasMenuContent) && (\n <div class=\"search-menu-container\">\n <div class=\"search-actions-container\">\n {this.deviceSize > DEVICE_SIZES.L && (\n <slot name=\"search\"></slot>\n )}\n\n {this.hasSearchSlotContent &&\n this.deviceSize <= DEVICE_SIZES.L && (\n <ic-button\n id=\"search-toggle-button\"\n ref={(el) => (this.mobileSearchButtonEl = el)}\n onMouseDown={this.searchButtonMouseDownHandler}\n variant=\"icon\"\n size={searchButtonSize}\n aria-label={mobileSearchButtonTitle}\n appearance={this.foregroundColor}\n onClick={this.searchButtonClickHandler}\n >\n <slot name=\"toggle-icon\" slot=\"icon\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"#ffffff\"\n >\n <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n <path d=\"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z\" />\n </svg>\n </slot>\n </ic-button>\n )}\n\n {this.hasIconButtons && this.deviceSize > DEVICE_SIZES.L && (\n <div class=\"icon-buttons-container\">\n <slot name=\"buttons\"></slot>\n </div>\n )}\n {hasMenuContent && this.deviceSize <= DEVICE_SIZES.L && (\n <div class=\"menu-button-container\">\n <nav\n aria-labelledby=\"navigation-landmark-text\"\n aria-hidden={\n !this.hasNavigation || this.navMenuVisible\n ? \"true\"\n : \"false\"\n }\n >\n <ic-button\n id=\"menu-button\"\n appearance={this.foregroundColor}\n variant=\"secondary\"\n aria-expanded={this.menuOpen ? \"true\" : \"false\"}\n aria-haspopup=\"true\"\n aria-label={`Open ${\n this.hasNavigation ? \"navigation\" : \"app\"\n } menu`}\n size={menuSize}\n onClick={this.menuButtonClick}\n >\n Menu\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n height=\"24px\"\n viewBox=\"0 0 24 24\"\n width=\"24px\"\n fill=\"#ffffff\"\n slot=\"icon\"\n >\n <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n <path d=\"M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z\" />\n </svg>\n </ic-button>\n </nav>\n </div>\n )}\n </div>\n </div>\n )}\n </div>\n\n {this.mobileSearchBarVisible && (\n <div class=\"search-bar-container\">\n <slot name=\"search\"></slot>\n </div>\n )}\n\n {this.hasNavigation && this.deviceSize > DEVICE_SIZES.L && (\n <div class=\"navigation-tabs\">\n <span\n id=\"navigation-landmark-text\"\n class=\"navigation-landmark-text\"\n aria-hidden=\"true\"\n >\n Main navigation\n </span>\n <nav\n aria-labelledby=\"navigation-landmark-text\"\n class=\"nav-panel-container\"\n >\n <ic-horizontal-scroll appearance={this.foregroundColor}>\n <ul class=\"navigation-item-list\" tabindex=\"-1\">\n <slot name=\"navigation\"></slot>\n </ul>\n </ic-horizontal-scroll>\n </nav>\n </div>\n )}\n </header>\n </ic-section-container>\n </div>\n {this.navMenuVisible && (\n <ic-navigation-menu\n version={this.version}\n status={this.status}\n class={{\n [\"inline\"]: this.inline,\n }}\n >\n <div class=\"menu-buttons-slot\" slot=\"buttons\">\n <slot name=\"buttons\"></slot>\n </div>\n <ul slot=\"navigation\">\n <slot name=\"navigation\"></slot>\n </ul>\n </ic-navigation-menu>\n )}\n </Host>\n );\n }\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["src/components/ic-footer-link-group/ic-footer-link-group.css?tag=ic-footer-link-group&encapsulation=shadow","src/components/ic-footer-link-group/ic-footer-link-group.tsx"],"names":["icFooterLinkGroupCss","FooterLinkGroup","this","handleKeydown","event","key","toggleExpanded","expanded","getThemeForegroundColor","DEVICE_SIZES","XL","[object Object]","e","parentElement","classList","contains","isSmall","small","el","ev","theme","detail","dropdownIconStyle","mode","onComponentRequiredPropUndefined","prop","groupTitle","propName","h","Host","class","variant","tabIndex","onClick","onKeydown","aria-haspopup","aria-expanded","fullHeight","xmlns","aria-hidden","role","width","height","preserveAspectRatio","viewBox","fill","d","transform"],"mappings":"mIAAA,MAAMA,EAAuB,q0ICuBhBC,EAAe,+BA4BlBC,KAAAC,cAAiBC,IACvB,GAAIA,EAAMC,MAAQ,KAAOD,EAAMC,MAAQ,QAAS,CAC9CH,KAAKI,mBAIDJ,KAAAI,eAAiB,KACvBJ,KAAKK,UAAYL,KAAKK,+CA3BE,oBAEG,6BAEAC,oBAECC,EAAaC,GAEnCC,QAAQC,GACd,GAAIA,EAAEC,gBAAkB,KAAM,CAC5B,GAAID,EAAEC,cAAcC,UAAUC,SAAS,UAAW,CAChD,OAAOH,EAAEC,cAAcC,UAAUC,SAAS,oBACrC,CACL,OAAOb,KAAKc,QAAQJ,EAAEC,oBAEnB,CACL,OAAO,OAeXF,sBACET,KAAKe,MAAQf,KAAKc,QAAQd,KAAKgB,IAIjCP,yBAAyBQ,GACvB,MAAMC,EAAiBD,EAAGE,OAC1BnB,KAAKoB,kBAAoBF,EAAMG,KAGjCZ,oBACET,KAAKe,MAAQf,KAAKc,QAAQd,KAAKgB,IAGjCP,mBACEa,EACE,CAAC,CAAEC,KAAMvB,KAAKwB,WAAYC,SAAU,gBACpC,qBAIJhB,SACE,MAAMM,MAAEA,EAAKS,WAAEA,GAAexB,KAE9B,OAAQe,EACNW,EAACC,EAAI,CACHC,MAAO,CACLnB,CAAC,8CAA+C,KAChDA,CAAC,qBAAqBT,KAAKoB,qBAAsB,OAGnDM,EAAA,MAAA,CAAKE,MAAM,2BACTF,EAAA,gBAAA,CAAeG,QAAQ,kBAAkBL,IAE3CE,EAAA,MAAA,CAAKE,MAAM,2BACTF,EAAA,OAAA,QAIJA,EAACC,EAAI,CACHC,MAAO,CACLnB,CAAC,6CAA8C,KAC/CA,CAAC,qBAAqBT,KAAKoB,qBAAsB,MAEnDU,SAAS,IACTC,QAAS/B,KAAKI,eACd4B,UAAWhC,KAAKC,cAAagC,gBACf,OAAMC,gBACLlC,KAAKK,UAEpBqB,EAAA,uBAAA,CAAsBS,WAAY,MAChCT,EAAA,MAAA,CAAKE,MAAM,4BACTF,EAAA,MAAA,CAAKE,MAAM,2BACTF,EAAA,gBAAA,CAAeG,QAAQ,SAASL,IAEjCxB,KAAKK,SACJqB,EAAA,MAAA,CACEE,MAAM,2BACNQ,MAAM,6BAA4BC,cACtB,OACZC,KAAK,MACLC,MAAM,MACNC,OAAO,MACPC,oBAAoB,gBACpBC,QAAQ,iBAERhB,EAAA,OAAA,CACEiB,KAAK,eACLC,EAAE,8IAINlB,EAAA,MAAA,CACEE,MAAM,2BACNQ,MAAM,6BAA4BC,cACtB,OACZC,KAAK,MACLC,MAAM,MACNC,OAAO,MACPC,oBAAoB,gBACpBC,QAAQ,iBAERhB,EAAA,IAAA,CAAGmB,UAAU,iCACXnB,EAAA,OAAA,CACEiB,KAAK,eACLC,EAAE,gJAMX5C,KAAKK,UACJqB,EAAA,MAAA,CAAKE,MAAM,2BACTF,EAAA,OAAA","sourcesContent":["@import \"../../global/normalize.css\";\n\n:host(.footer-link-group-sparse) {\n --footer-link-group-margin-right: 5.938rem;\n --footer-link-group-border-bottom: 0 solid transparent;\n --footer-link-group-title-margin-top: 0;\n --footer-link-group-title-margin-bottom: var(--ic-space-md);\n}\n\n:host(.footer-link-group-small) {\n --footer-link-group-margin-right: 0;\n --footer-link-group-title-margin-top: var(--ic-space-md);\n --footer-link-group-title-margin-bottom: var(--ic-space-md);\n --footer-link-group-links-padding-left: var(--ic-space-md);\n --footer-link-group-links-padding-bottom: var(--ic-space-md);\n}\n\n:host(.footer-link-group-light.footer-link-group-small) {\n --footer-link-group-border-bottom: var(--ic-keyline-lighten);\n}\n\n:host(.footer-link-group-dark.footer-link-group-small) {\n --footer-link-group-border-bottom: var(--ic-keyline-darken);\n}\n\n:host(.footer-link-group) {\n margin-right: var(--footer-link-group-margin-right);\n border-bottom: var(--footer-link-group-border-bottom);\n}\n\n:host(.footer-link-group-small.footer-link-group-light:hover) {\n background-color: var(--ic-action-light-bg-hover);\n cursor: pointer;\n}\n\n:host(.footer-link-group-small.footer-link-group-dark:hover) {\n background-color: var(--ic-action-dark-bg-hover);\n cursor: pointer;\n}\n\n:host(.footer-link-group-sparse:focus) {\n box-shadow: var(--ic-border-focus-inset);\n border-radius: var(--ic-border-radius-inset);\n outline: var(--ic-hc-focus-outline);\n z-index: 1;\n}\n\n:host(.footer-link-group-small:focus) {\n box-shadow: var(--ic-border-focus-inset);\n border-radius: var(--ic-border-radius-inset);\n outline: var(--ic-hc-focus-outline);\n z-index: 1;\n}\n\n:host(.footer-link-group-small.footer-link-group-light:active) {\n background-color: var(--ic-action-light-bg-active);\n}\n\n:host(.footer-link-group-small.footer-link-group-dark:active) {\n background-color: var(--ic-action-dark-bg-active);\n}\n\n.footer-link-group-title {\n margin-top: var(--footer-link-group-title-margin-top);\n margin-bottom: var(--footer-link-group-title-margin-bottom);\n flex-grow: 1;\n}\n\n.footer-link-group-toggle {\n fill: white !important;\n}\n\n.footer-link-group-links {\n display: flex;\n flex-direction: column;\n}\n\n.footer-link-group-header {\n display: flex;\n align-items: center;\n}\n","import {\n Component,\n Host,\n Element,\n Listen,\n Prop,\n h,\n State,\n} from \"@stencil/core\";\nimport {\n DEVICE_SIZES,\n getThemeForegroundColor,\n onComponentRequiredPropUndefined,\n} from \"../../utils/helpers\";\nimport { IcTheme } from \"../../utils/types\";\n\n@Component({\n tag: \"ic-footer-link-group\",\n styleUrl: \"ic-footer-link-group.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class FooterLinkGroup {\n @Element() el: HTMLIcFooterLinkGroupElement;\n\n /**\n * The title of the link group to be displayed.\n */\n @Prop() groupTitle!: string;\n\n @State() small: boolean = false;\n\n @State() expanded: boolean = false;\n\n @State() dropdownIconStyle = getThemeForegroundColor();\n\n @State() deviceSize: number = DEVICE_SIZES.XL;\n\n private isSmall(e: HTMLElement): boolean {\n if (e.parentElement !== null) {\n if (e.parentElement.classList.contains(\"footer\")) {\n return e.parentElement.classList.contains(\"footer-small\");\n } else {\n return this.isSmall(e.parentElement);\n }\n } else {\n return false;\n }\n }\n\n private handleKeydown = (event: KeyboardEvent): void => {\n if (event.key === \" \" || event.key === \"Enter\") {\n this.toggleExpanded();\n }\n };\n\n private toggleExpanded = (): void => {\n this.expanded = !this.expanded;\n };\n\n @Listen(\"footerResized\", { target: \"document\" })\n footerResizeHandler(): void {\n this.small = this.isSmall(this.el);\n }\n\n @Listen(\"themeChange\", { target: \"document\" })\n footerThemeChangeHandler(ev: CustomEvent): void {\n const theme: IcTheme = ev.detail;\n this.dropdownIconStyle = theme.mode;\n }\n\n componentWillLoad(): void {\n this.small = this.isSmall(this.el);\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.groupTitle, propName: \"group-title\" }],\n \"Footer Link Group\"\n );\n }\n\n render() {\n const { small, groupTitle } = this;\n\n return !small ? (\n <Host\n class={{\n [\"footer-link-group footer-link-group-sparse\"]: true,\n [`footer-link-group-${this.dropdownIconStyle}`]: true,\n }}\n >\n <div class=\"footer-link-group-title\">\n <ic-typography variant=\"subtitle-small\">{groupTitle}</ic-typography>\n </div>\n <div class=\"footer-link-group-links\">\n <slot />\n </div>\n </Host>\n ) : (\n <Host\n class={{\n [\"footer-link-group footer-link-group-small\"]: true,\n [`footer-link-group-${this.dropdownIconStyle}`]: true,\n }}\n tabIndex=\"1\"\n onClick={this.toggleExpanded}\n onKeydown={this.handleKeydown}\n aria-haspopup=\"true\"\n aria-expanded={this.expanded}\n >\n <ic-section-container fullHeight={true}>\n <div class=\"footer-link-group-header\">\n <div class=\"footer-link-group-title\">\n <ic-typography variant=\"label\">{groupTitle}</ic-typography>\n </div>\n {this.expanded ? (\n <svg\n class=\"footer-link-group-toggle\"\n xmlns=\"http://www.w3.org/2000/svg\"\n aria-hidden=\"true\"\n role=\"img\"\n width=\"1em\"\n height=\"1em\"\n preserveAspectRatio=\"xMidYMid meet\"\n viewBox=\"0 0 1200 1200\"\n >\n <path\n fill=\"currentColor\"\n d=\"M600.002 210.605L421.285 389.336L0 810.559l178.721 178.836l421.281-421.341l421.281 421.341L1200 810.559L778.733 389.336L600.002 210.605z\"\n />\n </svg>\n ) : (\n <svg\n class=\"footer-link-group-toggle\"\n xmlns=\"http://www.w3.org/2000/svg\"\n aria-hidden=\"true\"\n role=\"img\"\n width=\"1em\"\n height=\"1em\"\n preserveAspectRatio=\"xMidYMid meet\"\n viewBox=\"0 0 1200 1200\"\n >\n <g transform=\"translate(0 1200) scale(1 -1)\">\n <path\n fill=\"currentColor\"\n d=\"M600.002 210.605L421.285 389.336L0 810.559l178.721 178.836l421.281-421.341l421.281 421.341L1200 810.559L778.733 389.336L600.002 210.605z\"\n />\n </g>\n </svg>\n )}\n </div>\n {this.expanded && (\n <div class=\"footer-link-group-links\">\n <slot />\n </div>\n )}\n </ic-section-container>\n </Host>\n );\n }\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["src/components/ic-data-entity/ic-data-entity.css?tag=ic-data-entity&encapsulation=shadow","src/components/ic-data-entity/ic-data-entity.tsx"],"names":["icDataEntityCss","DataEntity","[object Object]","heading","small","this","children","el","i","length","setAttribute","h","Host","class","id","name","variant","aria-labelledby"],"mappings":"yDAAA,MAAMA,EAAkB,ywFCOXC,EAAU,iEAWI,MAEzBC,SACE,MAAMC,QAAEA,EAAOC,MAAEA,GAAUC,KAE3B,MAAMC,EAAWD,KAAKE,GAAGD,SAEzB,GAAIF,EAAO,CACT,IAAK,IAAII,EAAI,EAAGA,EAAIF,EAASG,OAAQD,IAAK,CACxCF,EAASE,GAAGE,aAAa,QAAS,SAItC,OACEC,EAACC,EAAI,CAACC,MAAO,CAAEX,CAAC,SAAUE,IACxBO,EAAA,MAAA,CAAKE,MAAM,UAAUC,GAAG,uBACtBH,EAAA,OAAA,CAAMI,KAAK,WACTJ,EAAA,gBAAA,CAAeK,QAAQ,MAAMb,KAGjCQ,EAAA,MAAA,CAAKE,MAAM,YACXF,EAAA,KAAA,CAAAM,kBAAoB,sBAAsBJ,MAAM,QAC9CF,EAAA,OAAA","sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: block;\n}\n\n.rows {\n display: flex;\n flex-direction: column;\n gap: var(--ic-space-md);\n}\n\n:host(.small) .rows {\n gap: var(--ic-space-xs);\n}\n\n.divider {\n margin-top: var(--ic-space-lg);\n margin-bottom: var(--ic-space-md);\n height: 0.063rem;\n background-color: var(--ic-architectural-300);\n}\n\n:host(.small) .divider {\n margin-top: var(--ic-space-sm);\n margin-bottom: var(--ic-space-xs);\n}\n\n@media (forced-colors: active) {\n .divider {\n background-color: canvastext;\n }\n}\n","import { Component, Element, Host, h, Prop } from \"@stencil/core\";\n\n@Component({\n tag: \"ic-data-entity\",\n styleUrl: \"ic-data-entity.css\",\n shadow: true,\n})\nexport class DataEntity {\n @Element() el: HTMLIcDataEntityElement;\n\n /**\n * The title for the data entity.\n */\n @Prop() heading: string;\n\n /**\n * If `true`, the small styling will be applied to the data heading and all child data rows.\n */\n @Prop() small: boolean = false;\n\n render() {\n const { heading, small } = this;\n\n const children = this.el.children;\n\n if (small) {\n for (let i = 0; i < children.length; i++) {\n children[i].setAttribute(\"small\", \"true\");\n }\n }\n\n return (\n <Host class={{ [\"small\"]: small }}>\n <div class=\"heading\" id=\"data-entity-heading\">\n <slot name=\"heading\">\n <ic-typography variant=\"h3\">{heading}</ic-typography>\n </slot>\n </div>\n <div class=\"divider\" />\n <ul aria-labelledby=\"data-entity-heading\" class=\"rows\">\n <slot></slot>\n </ul>\n </Host>\n );\n }\n}\n"]}
@@ -1,2 +0,0 @@
1
- import{r as t,c as s,h as i,g as h}from"./p-5450cebf.js";import{I as e}from"./p-6f57b13c.js";const a=class{constructor(i){t(this,i);this.tabSelect=s(this,"tabSelect",7);this.icTabSelect=s(this,"icTabSelect",7);this.linkTabs=()=>{this.tabs.forEach(((t,s)=>{const i=`ic-tab-${s}-context-${this.contextId}`;const h=`ic-tab-panel-${s}-context-${this.contextId}`;const a=`ic-tab--${s}-context-${this.contextId}`;t.setAttribute("id",i);t.tabId=a;t.tabPosition=s;t.setAttribute("aria-controls",h);t.setAttribute("context-id",this.contextId);this.tabPanels[s].setAttribute("id",h);this.tabPanels[s].panelId=a;this.tabPanels[s].tabPosition=s;this.tabPanels[s].setAttribute("aria-labelledby",i);if(this.appearance===e.Light){t.appearance=this.appearance;this.tabPanels[s].appearance=this.appearance}}));if(this.appearance===e.Light){this.tabGroup.appearance=this.appearance}};this.getChildren=()=>{this.tabGroup=Array.from(this.host.querySelectorAll("ic-tab-group")).find((t=>t.contextId===this.contextId));this.tabs=Array.from(this.tabGroup.querySelectorAll("ic-tab")).filter((t=>t.contextId===this.contextId));this.enabledTabs=this.getEnabledTabs();this.tabPanels=Array.from(this.host.querySelectorAll("ic-tab-panel"))};this.attatchEventListeners=()=>{if(this.activationType==="automatic"){this.tabGroup.addEventListener("keydown",(t=>{this.handleKeyBoardNavAutomatic(t)}))}else{this.tabGroup.addEventListener("keydown",(t=>{this.handleKeyBoardNavManual(t)}))}};this.setControlledMode=()=>{if(this.selectedTabIndex!==undefined){this.controlledMode=true;this.selectedTab=this.selectedTabIndex}};this.setInitialTab=()=>{if(this.controlledMode){this.selectedTab=this.selectedTabIndex;this.focusedTabIndex=this.selectedTabIndex}else{const t=this.tabs.findIndex((t=>t.tabId===this.enabledTabs[0].tabId));this.selectedTab=t;this.focusedTabIndex=t}};this.configureTabs=()=>{this.enabledTabs.forEach((t=>{t.selected=t.tabPosition===this.selectedTab}));this.tabPanels.forEach((t=>{t.selectedTab=this.tabs[this.selectedTab].tabId}))};this.getEnabledTabs=()=>Array.from(this.tabs).filter((t=>!t.disabled));this.getIndexOfEnabledTab=t=>this.enabledTabs.findIndex((s=>s.tabId===this.tabs[t].tabId));this.keyboardSelectTab=t=>{const s=this.tabs.findIndex((s=>s.tabId===this.enabledTabs[t].tabId));this.enabledTabs[t].focus();if(!this.controlledMode){this.selectedTab=s}else{this.icTabSelect.emit({tabIndex:s});this.tabSelect.emit({tabIndex:s})}};this.keyboardFocusTab=t=>{const s=this.tabs.findIndex((s=>s.tabId===this.enabledTabs[t].tabId));this.enabledTabs[t].focus();this.focusedTabIndex=s};this.handleKeyBoardNavAutomatic=t=>{const s=t.key;const i=this.getIndexOfEnabledTab(this.selectedTab);let h=true;switch(s){case"Home":this.keyboardSelectTab(0);break;case"End":this.keyboardSelectTab(this.enabledTabs.length-1);break;case"ArrowRight":if(i<this.enabledTabs.length-1){this.keyboardSelectTab(i+1)}else{this.keyboardSelectTab(0)}break;case"ArrowLeft":if(i>0){this.keyboardSelectTab(i-1)}else{this.keyboardSelectTab(this.enabledTabs.length-1)}break;default:h=false}if(h)t.preventDefault()};this.handleKeyBoardNavManual=t=>{const s=t.key;const i=this.getIndexOfEnabledTab(this.focusedTabIndex);let h=true;switch(s){case"Home":this.keyboardFocusTab(0);break;case"End":this.keyboardFocusTab(this.enabledTabs.length-1);break;case"ArrowRight":if(i<this.enabledTabs.length-1){this.keyboardFocusTab(i+1)}else{this.keyboardFocusTab(0)}break;case"ArrowLeft":if(i>0){this.keyboardFocusTab(i-1)}else{this.keyboardFocusTab(this.enabledTabs.length-1)}break;case"Enter":this.keyboardSelectTab(this.focusedTabIndex);break;case" ":this.keyboardSelectTab(this.focusedTabIndex);break;default:h=false}if(h)t.preventDefault()};this.contextId="default";this.activationType="automatic";this.selectedTabIndex=undefined;this.appearance="dark";this.selectedTab=undefined}updateSelectedTab(t){this.selectedTab=t}tabClickHandler(t){if(this.selectedTabIndex===undefined&&t.detail.contextId===this.contextId){this.selectedTab=t.detail.position}this.icTabSelect.emit({tabIndex:t.detail.position});this.tabSelect.emit({tabIndex:t.detail.position})}componentDidLoad(){this.setControlledMode();this.getChildren();this.linkTabs();this.attatchEventListeners();this.setInitialTab();this.configureTabs()}componentWillUpdate(){this.configureTabs()}disconnectedCallback(){if(this.activationType==="manual"){this.tabGroup.removeEventListener("keydown",(t=>this.handleKeyBoardNavManual(t)))}else{this.tabGroup.removeEventListener("keydown",(t=>this.handleKeyBoardNavAutomatic(t)))}}render(){return i("slot",null)}get host(){return h(this)}static get watchers(){return{selectedTabIndex:["updateSelectedTab"]}}};export{a as ic_tab_context};
2
- //# sourceMappingURL=p-897e967a.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["src/components/ic-tab-context/ic-tab-context.tsx"],"names":["TabContext","this","linkTabs","tabs","forEach","tab","index","tabId","contextId","tabPanelId","shared","setAttribute","tabPosition","tabPanels","panelId","appearance","IcThemeForegroundEnum","Light","tabGroup","getChildren","Array","from","host","querySelectorAll","find","filter","enabledTabs","getEnabledTabs","attatchEventListeners","activationType","addEventListener","event","handleKeyBoardNavAutomatic","handleKeyBoardNavManual","setControlledMode","selectedTabIndex","undefined","controlledMode","selectedTab","setInitialTab","focusedTabIndex","firstEnabledTabIndex","findIndex","configureTabs","selected","tabPanel","child","disabled","getIndexOfEnabledTab","allTabsIndex","keyboardSelectTab","enabledTabIndex","newIndex","focus","icTabSelect","emit","tabIndex","tabSelect","keyboardFocusTab","key","preventDefault","length","[object Object]","newValue","detail","position","removeEventListener","h"],"mappings":"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","sourcesContent":["import {\n Component,\n Element,\n Event,\n EventEmitter,\n Listen,\n Prop,\n State,\n h,\n Watch,\n} from \"@stencil/core\";\nimport {\n IcActivationTypes,\n IcThemeForegroundNoDefault,\n IcThemeForegroundEnum,\n} from \"../../utils/types\";\n\nimport {\n IcTabClickEventDetail,\n IcTabSelectEventDetail,\n} from \"../ic-tab/ic-tab.types\";\n\n@Component({\n tag: \"ic-tab-context\",\n})\nexport class TabContext {\n @Element() host: HTMLIcTabContextElement;\n\n /**\n * The unique context needed if using multiple tabs inside one another i.e. rendering another set of tabs inside a tab panel.\n */\n @Prop({ reflect: true }) contextId?: string = \"default\";\n\n /**\n * Determines whether tabs have to be manually activated (by pressing 'Enter' or 'Space') when they receive focus using keyboard navigation.\n */\n @Prop() activationType?: IcActivationTypes = \"automatic\";\n\n /**\n * The selected tab to be controlled by the user. Must be used alongside the icTabSelect event to manage tab selection.\n */\n @Prop() selectedTabIndex?: number;\n\n /**\n * The appearance of the tab context, e.g dark, or light.\n */\n @Prop() appearance?: IcThemeForegroundNoDefault = \"dark\";\n\n @State() selectedTab: number | null;\n\n @Watch(\"selectedTabIndex\")\n updateSelectedTab(newValue: number): void {\n this.selectedTab = newValue;\n }\n\n /**\n * @deprecated This event should not be used anymore. Use icTabSelect instead.\n */\n @Event() tabSelect: EventEmitter<IcTabSelectEventDetail>;\n\n /**\n * Emitted when a user selects a tab.\n */\n @Event() icTabSelect: EventEmitter<IcTabSelectEventDetail>;\n\n @Listen(\"tabClick\")\n tabClickHandler(event: CustomEvent<IcTabClickEventDetail>): void {\n if (\n this.selectedTabIndex === undefined &&\n event.detail.contextId === this.contextId\n ) {\n this.selectedTab = event.detail.position;\n }\n this.icTabSelect.emit({\n tabIndex: event.detail.position,\n });\n this.tabSelect.emit({\n tabIndex: event.detail.position,\n });\n }\n\n private controlledMode: boolean;\n private tabs: HTMLIcTabElement[];\n private enabledTabs: HTMLIcTabElement[];\n private tabPanels: HTMLIcTabPanelElement[];\n private tabGroup: HTMLIcTabGroupElement;\n private focusedTabIndex: number;\n\n // Sets attributes to link tabs and tabpanels\n private linkTabs = () => {\n this.tabs.forEach((tab, index) => {\n const tabId = `ic-tab-${index}-context-${this.contextId}`;\n const tabPanelId = `ic-tab-panel-${index}-context-${this.contextId}`;\n const shared = `ic-tab--${index}-context-${this.contextId}`;\n tab.setAttribute(\"id\", tabId);\n tab.tabId = shared;\n tab.tabPosition = index;\n tab.setAttribute(\"aria-controls\", tabPanelId);\n tab.setAttribute(\"context-id\", this.contextId);\n this.tabPanels[index].setAttribute(\"id\", tabPanelId);\n this.tabPanels[index].panelId = shared;\n this.tabPanels[index].tabPosition = index;\n this.tabPanels[index].setAttribute(\"aria-labelledby\", tabId);\n\n if (this.appearance === IcThemeForegroundEnum.Light) {\n tab.appearance = this.appearance;\n this.tabPanels[index].appearance = this.appearance;\n }\n });\n\n if (this.appearance === IcThemeForegroundEnum.Light) {\n this.tabGroup.appearance = this.appearance;\n }\n };\n\n // Gets tabs and tabpanels with the same context ID\n private getChildren = (): void => {\n this.tabGroup = Array.from(this.host.querySelectorAll(\"ic-tab-group\")).find(\n (tabGroup) => tabGroup.contextId === this.contextId\n );\n this.tabs = Array.from(this.tabGroup.querySelectorAll(\"ic-tab\")).filter(\n (tab) => tab.contextId === this.contextId\n );\n this.enabledTabs = this.getEnabledTabs();\n this.tabPanels = Array.from(this.host.querySelectorAll(\"ic-tab-panel\"));\n };\n\n // Determines how keyboard navigation is to be handled based on the activation type\n private attatchEventListeners = (): void => {\n if (this.activationType === \"automatic\") {\n this.tabGroup.addEventListener(\"keydown\", (event) => {\n this.handleKeyBoardNavAutomatic(event);\n });\n } else {\n this.tabGroup.addEventListener(\"keydown\", (event) => {\n this.handleKeyBoardNavManual(event);\n });\n }\n };\n\n // Determines whether the selected tab is being controlled within the component\n // or by the user (via selectedTabIndex and onIcTabSelect)\n private setControlledMode = (): void => {\n if (this.selectedTabIndex !== undefined) {\n this.controlledMode = true;\n this.selectedTab = this.selectedTabIndex;\n }\n };\n\n // Sets the tab that is selected on initial render\n private setInitialTab = (): void => {\n if (this.controlledMode) {\n this.selectedTab = this.selectedTabIndex;\n this.focusedTabIndex = this.selectedTabIndex;\n } else {\n const firstEnabledTabIndex = this.tabs.findIndex(\n (tab) => tab.tabId === this.enabledTabs[0].tabId\n );\n this.selectedTab = firstEnabledTabIndex;\n this.focusedTabIndex = firstEnabledTabIndex;\n }\n };\n\n // Passes the selected tab to the tab and tab panel components\n private configureTabs = () => {\n this.enabledTabs.forEach((tab) => {\n tab.selected = tab.tabPosition === this.selectedTab;\n });\n this.tabPanels.forEach((tabPanel) => {\n tabPanel.selectedTab = this.tabs[this.selectedTab].tabId;\n });\n };\n\n private getEnabledTabs = () => {\n return Array.from(this.tabs).filter((child) => !child.disabled);\n };\n\n private getIndexOfEnabledTab = (allTabsIndex: number) => {\n return this.enabledTabs.findIndex(\n (tab) => tab.tabId === this.tabs[allTabsIndex].tabId\n );\n };\n\n // Sets focus on tab and selects it\n private keyboardSelectTab = (enabledTabIndex: number) => {\n const newIndex = this.tabs.findIndex(\n (tab) => tab.tabId === this.enabledTabs[enabledTabIndex].tabId\n );\n this.enabledTabs[enabledTabIndex].focus();\n if (!this.controlledMode) {\n this.selectedTab = newIndex;\n } else {\n this.icTabSelect.emit({ tabIndex: newIndex });\n this.tabSelect.emit({ tabIndex: newIndex });\n }\n };\n\n // Sets focus on tab without selecting it (for manual activation)\n private keyboardFocusTab = (enabledTabIndex: number) => {\n const newIndex = this.tabs.findIndex(\n (tab) => tab.tabId === this.enabledTabs[enabledTabIndex].tabId\n );\n this.enabledTabs[enabledTabIndex].focus();\n this.focusedTabIndex = newIndex;\n };\n\n private handleKeyBoardNavAutomatic = (event: KeyboardEvent) => {\n const key = event.key;\n const enabledTabIndex = this.getIndexOfEnabledTab(this.selectedTab);\n let preventDefault = true;\n switch (key) {\n case \"Home\":\n this.keyboardSelectTab(0);\n break;\n case \"End\":\n this.keyboardSelectTab(this.enabledTabs.length - 1);\n break;\n case \"ArrowRight\":\n if (enabledTabIndex < this.enabledTabs.length - 1) {\n this.keyboardSelectTab(enabledTabIndex + 1);\n } else {\n this.keyboardSelectTab(0);\n }\n break;\n case \"ArrowLeft\":\n if (enabledTabIndex > 0) {\n this.keyboardSelectTab(enabledTabIndex - 1);\n } else {\n this.keyboardSelectTab(this.enabledTabs.length - 1);\n }\n break;\n default:\n preventDefault = false;\n }\n if (preventDefault) event.preventDefault();\n };\n\n private handleKeyBoardNavManual = (event: KeyboardEvent) => {\n const key = event.key;\n const enabledTabIndex = this.getIndexOfEnabledTab(this.focusedTabIndex);\n let preventDefault = true;\n switch (key) {\n case \"Home\":\n this.keyboardFocusTab(0);\n break;\n case \"End\":\n this.keyboardFocusTab(this.enabledTabs.length - 1);\n break;\n case \"ArrowRight\":\n if (enabledTabIndex < this.enabledTabs.length - 1) {\n this.keyboardFocusTab(enabledTabIndex + 1);\n } else {\n this.keyboardFocusTab(0);\n }\n break;\n case \"ArrowLeft\":\n if (enabledTabIndex > 0) {\n this.keyboardFocusTab(enabledTabIndex - 1);\n } else {\n this.keyboardFocusTab(this.enabledTabs.length - 1);\n }\n break;\n case \"Enter\":\n this.keyboardSelectTab(this.focusedTabIndex);\n break;\n case \" \":\n this.keyboardSelectTab(this.focusedTabIndex);\n break;\n default:\n preventDefault = false;\n }\n if (preventDefault) event.preventDefault();\n };\n\n componentDidLoad(): void {\n this.setControlledMode();\n this.getChildren();\n this.linkTabs();\n this.attatchEventListeners();\n this.setInitialTab();\n this.configureTabs();\n }\n\n componentWillUpdate(): void {\n this.configureTabs();\n }\n\n disconnectedCallback(): void {\n if (this.activationType === \"manual\") {\n this.tabGroup.removeEventListener(\"keydown\", (event) =>\n this.handleKeyBoardNavManual(event)\n );\n } else {\n this.tabGroup.removeEventListener(\"keydown\", (event) =>\n this.handleKeyBoardNavAutomatic(event)\n );\n }\n }\n\n render() {\n return <slot></slot>;\n }\n}\n"]}