@ukic/web-components 2.1.0-beta.16 → 2.1.0-beta.17

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1029) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/helpers-eb53c416.js.map +1 -1
  3. package/dist/cjs/ic-alert.cjs.entry.js +8 -8
  4. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  5. package/dist/cjs/ic-back-to-top.cjs.entry.js +2 -2
  6. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  7. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +25 -19
  8. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ic-breadcrumb.cjs.entry.js +5 -5
  10. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ic-button_3.cjs.entry.js +71 -70
  12. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  13. package/dist/cjs/ic-card.cjs.entry.js +40 -40
  14. package/dist/cjs/ic-card.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ic-checkbox-group.cjs.entry.js +17 -17
  16. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ic-checkbox.cjs.entry.js +32 -29
  18. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ic-chip.cjs.entry.js +15 -15
  20. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-data-row.cjs.entry.js +20 -20
  22. package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
  23. package/dist/cjs/ic-dialog.cjs.entry.js +54 -55
  24. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-footer-link-group.cjs.entry.js +16 -16
  26. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ic-footer-link.cjs.entry.js +14 -14
  28. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ic-footer.cjs.entry.js +17 -17
  30. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  31. package/dist/cjs/ic-hero.cjs.entry.js +18 -18
  32. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  33. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +33 -20
  34. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  35. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +86 -86
  36. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  37. package/dist/cjs/ic-input-label_2.cjs.entry.js +7 -7
  38. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  39. package/dist/cjs/ic-link.cjs.entry.js +17 -17
  40. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  41. package/dist/cjs/ic-menu-item.cjs.entry.js +12 -12
  42. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  43. package/dist/cjs/ic-navigation-button.cjs.entry.js +15 -15
  44. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  45. package/dist/cjs/ic-navigation-group.cjs.entry.js +36 -36
  46. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  47. package/dist/cjs/ic-navigation-item.cjs.entry.js +42 -42
  48. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  49. package/dist/cjs/ic-navigation-menu.cjs.entry.js +26 -26
  50. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  51. package/dist/cjs/ic-page-header.cjs.entry.js +12 -12
  52. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ic-pagination-item.cjs.entry.js +5 -5
  54. package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -1
  55. package/dist/cjs/ic-pagination.cjs.entry.js +30 -30
  56. package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -1
  57. package/dist/cjs/ic-popover-menu.cjs.entry.js +61 -61
  58. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  59. package/dist/cjs/ic-radio-group.cjs.entry.js +35 -28
  60. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  61. package/dist/cjs/ic-radio-option.cjs.entry.js +36 -29
  62. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  63. package/dist/cjs/ic-search-bar.cjs.entry.js +121 -121
  64. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  65. package/dist/cjs/ic-select.cjs.entry.js +66 -65
  66. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  67. package/dist/cjs/ic-side-navigation.cjs.entry.js +31 -35
  68. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  69. package/dist/cjs/ic-skeleton.cjs.entry.js +3 -3
  70. package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
  71. package/dist/cjs/ic-status-tag.cjs.entry.js +3 -3
  72. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  73. package/dist/cjs/ic-step.cjs.entry.js +7 -7
  74. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  75. package/dist/cjs/ic-stepper.cjs.entry.js +13 -13
  76. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  77. package/dist/cjs/ic-switch.cjs.entry.js +16 -16
  78. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  79. package/dist/cjs/ic-tab-context.cjs.entry.js +26 -32
  80. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  81. package/dist/cjs/ic-tab-group.cjs.entry.js +1 -1
  82. package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
  83. package/dist/cjs/ic-tab-panel.cjs.entry.js +2 -2
  84. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  85. package/dist/cjs/ic-tab.cjs.entry.js +16 -16
  86. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  87. package/dist/cjs/ic-text-field.cjs.entry.js +53 -53
  88. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  89. package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
  90. package/dist/cjs/ic-toast-region.cjs.entry.js +12 -12
  91. package/dist/cjs/ic-toast-region.cjs.entry.js.map +1 -1
  92. package/dist/cjs/ic-toast.cjs.entry.js +57 -57
  93. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  94. package/dist/cjs/ic-top-navigation.cjs.entry.js +38 -38
  95. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  96. package/dist/cjs/ic-typography.cjs.entry.js +11 -11
  97. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  98. package/dist/cjs/loader.cjs.js +1 -1
  99. package/dist/collection/collection-manifest.json +4 -4
  100. package/dist/collection/components/ic-alert/ic-alert.js +49 -49
  101. package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
  102. package/dist/collection/components/ic-alert/{ic-alert.test.a11y.js → test/a11y/ic-alert.test.a11y.js} +1 -1
  103. package/dist/collection/components/ic-alert/test/a11y/ic-alert.test.a11y.js.map +1 -0
  104. package/dist/collection/components/ic-alert/test/basic/ic-alert.e2e.js.map +1 -0
  105. package/dist/collection/components/ic-alert/{ic-alert.spec.js → test/basic/ic-alert.spec.js} +1 -1
  106. package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js.map +1 -0
  107. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +4 -4
  108. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js.map +1 -1
  109. package/dist/collection/components/ic-back-to-top/test/a11y/ic-back-to-top.test.a11y.js.map +1 -0
  110. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.e2e.js.map +1 -0
  111. package/dist/collection/components/ic-back-to-top/{ic-back-to-top.spec.js → test/basic/ic-back-to-top.spec.js} +3 -3
  112. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js.map +1 -0
  113. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +24 -24
  114. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js.map +1 -1
  115. package/dist/collection/components/ic-breadcrumb/{ic-breadcrumb.spec.js → test/basic/ic-breadcrumb.spec.js} +1 -1
  116. package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js.map +1 -0
  117. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js +25 -19
  118. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js.map +1 -1
  119. package/dist/collection/components/ic-breadcrumb-group/{ic-breadcrumb-group.test.a11y.js → test/a11y/ic-breadcrumb-group.test.a11y.js} +1 -1
  120. package/dist/collection/components/ic-breadcrumb-group/test/a11y/ic-breadcrumb-group.test.a11y.js.map +1 -0
  121. package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group-test-examples.js.map +1 -0
  122. package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.e2e.js.map +1 -0
  123. package/dist/collection/components/ic-breadcrumb-group/{ic-breadcrumb-group.spec.js → test/basic/ic-breadcrumb-group.spec.js} +5 -5
  124. package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.spec.js.map +1 -0
  125. package/dist/collection/components/ic-button/ic-button.css +4 -0
  126. package/dist/collection/components/ic-button/ic-button.js +191 -190
  127. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  128. package/dist/collection/components/ic-button/{ic-button.test.a11y.js → test/a11y/ic-button.test.a11y.js} +1 -1
  129. package/dist/collection/components/ic-button/test/a11y/ic-button.test.a11y.js.map +1 -0
  130. package/dist/collection/components/ic-button/test/basic/ic-button.e2e.js.map +1 -0
  131. package/dist/collection/components/ic-button/{ic-button.spec.js → test/basic/ic-button.spec.js} +2 -2
  132. package/dist/collection/components/ic-button/test/basic/ic-button.spec.js.map +1 -0
  133. package/dist/collection/components/ic-card/ic-card.js +120 -120
  134. package/dist/collection/components/ic-card/ic-card.js.map +1 -1
  135. package/dist/collection/components/ic-card/{ic-card.test.a11y.js → test/a11y/ic-card.test.a11y.js} +1 -1
  136. package/dist/collection/components/ic-card/test/a11y/ic-card.test.a11y.js.map +1 -0
  137. package/dist/collection/components/ic-card/test/basic/ic-card.e2e.js.map +1 -0
  138. package/dist/collection/components/ic-card/{ic-card.spec.js → test/basic/ic-card.spec.js} +1 -1
  139. package/dist/collection/components/ic-card/test/basic/ic-card.spec.js.map +1 -0
  140. package/dist/collection/components/ic-checkbox/ic-checkbox.js +94 -91
  141. package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
  142. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +58 -58
  143. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  144. package/dist/collection/components/ic-checkbox-group/{ic-checkbox-group.test.a11y.js → test/a11y/ic-checkbox-group.test.a11y.js} +1 -1
  145. package/dist/collection/components/ic-checkbox-group/test/a11y/ic-checkbox-group.test.a11y.js.map +1 -0
  146. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.e2e.js.map +1 -0
  147. package/dist/collection/components/ic-checkbox-group/{ic-checkbox-group.spec.js → test/basic/ic-checkbox-group.spec.js} +3 -3
  148. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js.map +1 -0
  149. package/dist/collection/components/ic-chip/ic-chip.js +54 -54
  150. package/dist/collection/components/ic-chip/ic-chip.js.map +1 -1
  151. package/dist/collection/components/ic-chip/{ic-chip.test.a11y.js → test/a11y/ic-chip.test.a11y.js} +1 -1
  152. package/dist/collection/components/ic-chip/test/a11y/ic-chip.test.a11y.js.map +1 -0
  153. package/dist/collection/components/ic-chip/{ic-chip.spec.js → test/basic/ic-chip.spec.js} +1 -1
  154. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js.map +1 -0
  155. package/dist/collection/components/ic-classification-banner/{ic-classification-banner.test.a11y.js → test/a11y/ic-classification-banner.test.a11y.js} +1 -1
  156. package/dist/collection/components/ic-classification-banner/test/a11y/ic-classification-banner.test.a11y.js.map +1 -0
  157. package/dist/collection/components/ic-classification-banner/{ic-classification-banner.spec.js → test/basic/ic-classification-banner.spec.js} +1 -1
  158. package/dist/collection/components/ic-classification-banner/test/basic/ic-classification-banner.spec.js.map +1 -0
  159. package/dist/collection/components/ic-data-entity/{ic-data-entity.test.a11y.js → test/a11y/ic-data-entity.test.a11y.js} +1 -1
  160. package/dist/collection/components/ic-data-entity/test/a11y/ic-data-entity.test.a11y.js.map +1 -0
  161. package/dist/collection/components/ic-data-entity/{ic-data-entity.spec.js → test/basic/ic-data-entity.spec.js} +1 -1
  162. package/dist/collection/components/ic-data-entity/test/basic/ic-data-entity.spec.js.map +1 -0
  163. package/dist/collection/components/ic-data-row/ic-data-row.js +35 -35
  164. package/dist/collection/components/ic-data-row/ic-data-row.js.map +1 -1
  165. package/dist/collection/components/ic-data-row/{ic-data-row.test.a11y.js → test/a11y/ic-data-row.test.a11y.js} +1 -1
  166. package/dist/collection/components/ic-data-row/test/a11y/ic-data-row.test.a11y.js.map +1 -0
  167. package/dist/collection/components/ic-data-row/{ic-data-row.spec.js → test/basic/ic-data-row.spec.js} +1 -1
  168. package/dist/collection/components/ic-data-row/test/basic/ic-data-row.spec.js.map +1 -0
  169. package/dist/collection/components/ic-dialog/ic-dialog.css +1 -4
  170. package/dist/collection/components/ic-dialog/ic-dialog.js +122 -123
  171. package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -1
  172. package/dist/collection/components/ic-dialog/{ic-dialog.test.a11y.js → test/a11y/ic-dialog.test.a11y.js} +1 -1
  173. package/dist/collection/components/ic-dialog/test/a11y/ic-dialog.test.a11y.js.map +1 -0
  174. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.e2e.js.map +1 -0
  175. package/dist/collection/components/ic-dialog/{ic-dialog.spec.js → test/basic/ic-dialog.spec.js} +4 -4
  176. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js.map +1 -0
  177. package/dist/collection/components/ic-divider/{ic-divider.spec.js → test/basic/ic-divider.spec.js} +1 -1
  178. package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js.map +1 -0
  179. package/dist/collection/components/ic-footer/ic-footer.js +47 -47
  180. package/dist/collection/components/ic-footer/ic-footer.js.map +1 -1
  181. package/dist/collection/components/ic-footer/{ic-footer.test.a11y.js → test/a11y/ic-footer.test.a11y.js} +1 -1
  182. package/dist/collection/components/ic-footer/test/a11y/ic-footer.test.a11y.js.map +1 -0
  183. package/dist/collection/components/ic-footer/test/basic/ic-footer.e2e.js.map +1 -0
  184. package/dist/collection/components/ic-footer/{ic-footer.spec.js → test/basic/ic-footer.spec.js} +3 -3
  185. package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js.map +1 -0
  186. package/dist/collection/components/ic-footer-link/ic-footer-link.js +33 -33
  187. package/dist/collection/components/ic-footer-link/ic-footer-link.js.map +1 -1
  188. package/dist/collection/components/ic-footer-link/{ic-footer-link.test.a11y.js → test/a11y/ic-footer-link.test.a11y.js} +1 -1
  189. package/dist/collection/components/ic-footer-link/test/a11y/ic-footer-link.test.a11y.js.map +1 -0
  190. package/dist/collection/components/ic-footer-link/{ic-footer-link.spec.js → test/basic/ic-footer-link.spec.js} +1 -1
  191. package/dist/collection/components/ic-footer-link/test/basic/ic-footer-link.spec.js.map +1 -0
  192. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js +18 -18
  193. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js.map +1 -1
  194. 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
  195. package/dist/collection/components/ic-footer-link-group/test/a11y/ic-footer-link-group.test.a11y.js.map +1 -0
  196. package/dist/collection/components/ic-footer-link-group/{ic-footer-link-group.spec.js → test/basic/ic-footer-link-group.spec.js} +3 -3
  197. package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js.map +1 -0
  198. package/dist/collection/components/ic-hero/ic-hero.js +95 -95
  199. package/dist/collection/components/ic-hero/ic-hero.js.map +1 -1
  200. package/dist/collection/components/ic-hero/{ic-hero.test.a11y.js → test/a11y/ic-hero.test.a11y.js} +1 -1
  201. package/dist/collection/components/ic-hero/test/a11y/ic-hero.test.a11y.js.map +1 -0
  202. package/dist/collection/components/ic-hero/{ic-hero.spec.js → test/basic/ic-hero.spec.js} +1 -1
  203. package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js.map +1 -0
  204. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +35 -22
  205. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js.map +1 -1
  206. package/dist/collection/components/ic-horizontal-scroll/{ic-horizontal-scroll.test.a11y.js → test/a11y/ic-horizontal-scroll.test.a11y.js} +1 -1
  207. package/dist/collection/components/ic-horizontal-scroll/test/a11y/ic-horizontal-scroll.test.a11y.js.map +1 -0
  208. package/dist/collection/components/ic-horizontal-scroll/{ic-horizontal-scroll.spec.js → test/basic/ic-horizontal-scroll.spec.js} +2 -2
  209. package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js.map +1 -0
  210. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +45 -45
  211. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js.map +1 -1
  212. package/dist/collection/components/ic-input-component-container/{ic-input-component-container.spec.js → test/basic/ic-input-component-container.spec.js} +1 -1
  213. package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js.map +1 -0
  214. package/dist/collection/components/ic-input-container/{ic-input-container.spec.js → test/basic/ic-input-container.spec.js} +1 -1
  215. package/dist/collection/components/ic-input-container/test/basic/ic-input-container.spec.js.map +1 -0
  216. package/dist/collection/components/ic-input-label/ic-input-label.js +51 -51
  217. package/dist/collection/components/ic-input-label/ic-input-label.js.map +1 -1
  218. package/dist/collection/components/ic-input-label/{ic-input-label.spec.js → test/basic/ic-input-label.spec.js} +1 -1
  219. package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js.map +1 -0
  220. package/dist/collection/components/ic-input-validation/ic-input-validation.js +41 -41
  221. package/dist/collection/components/ic-input-validation/ic-input-validation.js.map +1 -1
  222. package/dist/collection/components/ic-input-validation/{ic-input-validation.spec.js → test/basic/ic-input-validation.spec.js} +1 -1
  223. package/dist/collection/components/ic-input-validation/test/basic/ic-input-validation.spec.js.map +1 -0
  224. package/dist/collection/components/ic-link/ic-link.js +48 -48
  225. package/dist/collection/components/ic-link/ic-link.js.map +1 -1
  226. package/dist/collection/components/ic-link/{ic-link.test.a11y.js → test/a11y/ic-link.test.a11y.js} +1 -1
  227. package/dist/collection/components/ic-link/test/a11y/ic-link.test.a11y.js.map +1 -0
  228. package/dist/collection/components/ic-link/{ic-link.spec.js → test/basic/ic-link.spec.js} +2 -2
  229. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js.map +1 -0
  230. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +89 -89
  231. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js.map +1 -1
  232. package/dist/collection/components/ic-loading-indicator/{ic-loading-indicator.test.a11y.js → test/a11y/ic-loading-indicator.test.a11y.js} +1 -1
  233. package/dist/collection/components/ic-loading-indicator/test/a11y/ic-loading-indicator.test.a11y.js.map +1 -0
  234. package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.e2e.js.map +1 -0
  235. package/dist/collection/components/ic-loading-indicator/{ic-loading-indicator.spec.js → test/basic/ic-loading-indicator.spec.js} +3 -3
  236. package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.spec.js.map +1 -0
  237. package/dist/collection/components/ic-menu/ic-menu.js +238 -238
  238. package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
  239. package/dist/collection/components/ic-menu/{ic-menu.spec.js → test/basic/ic-menu.spec.js} +3 -3
  240. package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js.map +1 -0
  241. package/dist/collection/components/ic-menu-group/{ic-menu-group.spec.js → test/basic/ic-menu-group.spec.js} +2 -2
  242. package/dist/collection/components/ic-menu-group/test/basic/ic-menu-group.spec.js.map +1 -0
  243. package/dist/collection/components/ic-menu-item/ic-menu-item.js +75 -75
  244. package/dist/collection/components/ic-menu-item/ic-menu-item.js.map +1 -1
  245. package/dist/collection/components/ic-menu-item/{ic-menu-item.spec.js → test/basic/ic-menu-item.spec.js} +2 -2
  246. package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js.map +1 -0
  247. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +56 -56
  248. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -1
  249. package/dist/collection/components/ic-navigation-button/{ic-navigation-button.spec.js → test/basic/ic-navigation-button.spec.js} +2 -2
  250. package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js.map +1 -0
  251. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +55 -55
  252. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
  253. package/dist/collection/components/ic-navigation-group/{ic-navigation-group.test.a11y.js → test/a11y/ic-navigation-group.test.a11y.js} +1 -1
  254. package/dist/collection/components/ic-navigation-group/test/a11y/ic-navigation-group.test.a11y.js.map +1 -0
  255. package/dist/collection/components/ic-navigation-group/{ic-navigation-group.spec.js → test/basic/ic-navigation-group.spec.js} +8 -8
  256. package/dist/collection/components/ic-navigation-group/test/basic/ic-navigation-group.spec.js.map +1 -0
  257. package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +5 -4
  258. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +135 -135
  259. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
  260. package/dist/collection/components/ic-navigation-item/{ic-navigation-item.test.a11y.js → test/a11y/ic-navigation-item.test.a11y.js} +1 -1
  261. package/dist/collection/components/ic-navigation-item/test/a11y/ic-navigation-item.test.a11y.js.map +1 -0
  262. package/dist/collection/components/ic-navigation-item/{ic-navigation-item.spec.js → test/basic/ic-navigation-item.spec.js} +5 -5
  263. package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js.map +1 -0
  264. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.css +1 -4
  265. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +31 -31
  266. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js.map +1 -1
  267. package/dist/collection/components/ic-navigation-menu/test/basic/ic-navigation-menu.e2e.js.map +1 -0
  268. package/dist/collection/components/ic-navigation-menu/{ic-navigation-menu.spec.js → test/basic/ic-navigation-menu.spec.js} +6 -6
  269. package/dist/collection/components/ic-navigation-menu/test/basic/ic-navigation-menu.spec.js.map +1 -0
  270. package/dist/collection/components/ic-page-header/ic-page-header.js +56 -56
  271. package/dist/collection/components/ic-page-header/ic-page-header.js.map +1 -1
  272. package/dist/collection/components/ic-page-header/{ic-page-header.test.a11y.js → test/a11y/ic-page-header.test.a11y.js} +1 -1
  273. package/dist/collection/components/ic-page-header/test/a11y/ic-page-header.test.a11y.js.map +1 -0
  274. package/dist/collection/components/ic-page-header/test/basic/ic-page-header.e2e.js.map +1 -0
  275. package/dist/collection/components/ic-page-header/{ic-page-header.spec.js → test/basic/ic-page-header.spec.js} +7 -7
  276. package/dist/collection/components/ic-page-header/test/basic/ic-page-header.spec.js.map +1 -0
  277. package/dist/collection/components/ic-pagination/ic-pagination.js +97 -97
  278. package/dist/collection/components/ic-pagination/ic-pagination.js.map +1 -1
  279. package/dist/collection/components/ic-pagination/{ic-pagination.test.a11y.js → test/a11y/ic-pagination.test.a11y.js} +1 -1
  280. package/dist/collection/components/ic-pagination/test/a11y/ic-pagination.test.a11y.js.map +1 -0
  281. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.e2e.js.map +1 -0
  282. package/dist/collection/components/ic-pagination/{ic-pagination.spec.js → test/basic/ic-pagination.spec.js} +3 -3
  283. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js.map +1 -0
  284. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +65 -65
  285. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js.map +1 -1
  286. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +96 -96
  287. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js.map +1 -1
  288. package/dist/collection/components/ic-popover-menu/{ic-popover-menu.test.a11y.js → test/a11y/ic-popover-menu.test.a11y.js} +1 -1
  289. package/dist/collection/components/ic-popover-menu/test/a11y/ic-popover-menu.test.a11y.js.map +1 -0
  290. package/dist/collection/components/ic-popover-menu/test/basic/ic-popover-menu.e2e.js.map +1 -0
  291. package/dist/collection/components/ic-popover-menu/{ic-popover-menu.spec.js → test/basic/ic-popover-menu.spec.js} +4 -4
  292. package/dist/collection/components/ic-popover-menu/test/basic/ic-popover-menu.spec.js.map +1 -0
  293. package/dist/collection/components/ic-radio-group/ic-radio-group.js +94 -81
  294. package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
  295. package/dist/collection/components/ic-radio-group/{ic-radio-group.test.a11y.js → test/a11y/ic-radio-group.test.a11y.js} +1 -1
  296. package/dist/collection/components/ic-radio-group/test/a11y/ic-radio-group.test.a11y.js.map +1 -0
  297. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.e2e.js.map +1 -0
  298. package/dist/collection/components/ic-radio-group/{ic-radio-group.spec.js → test/basic/ic-radio-group.spec.js} +3 -3
  299. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js.map +1 -0
  300. package/dist/collection/components/ic-radio-option/ic-radio-option.js +112 -88
  301. package/dist/collection/components/ic-radio-option/ic-radio-option.js.map +1 -1
  302. package/dist/collection/components/ic-search-bar/ic-search-bar.js +384 -384
  303. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  304. package/dist/collection/components/ic-search-bar/{ic-search-bar.test.a11y.js → test/a11y/ic-search-bar.test.a11y.js} +1 -1
  305. package/dist/collection/components/ic-search-bar/test/a11y/ic-search-bar.test.a11y.js.map +1 -0
  306. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.e2e.js.map +1 -0
  307. package/dist/collection/components/ic-search-bar/{ic-search-bar.spec.js → test/basic/ic-search-bar.spec.js} +7 -7
  308. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js.map +1 -0
  309. package/dist/collection/components/ic-section-container/{ic-section-container.spec.js → test/basic/ic-section-container.spec.js} +1 -1
  310. package/dist/collection/components/ic-section-container/test/basic/ic-section-container.spec.js.map +1 -0
  311. package/dist/collection/components/ic-select/ic-select.js +266 -265
  312. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  313. package/dist/collection/components/ic-select/{ic-select.test.a11y.js → test/a11y/ic-select.test.a11y.js} +1 -1
  314. package/dist/collection/components/ic-select/test/a11y/ic-select.test.a11y.js.map +1 -0
  315. package/dist/collection/components/ic-select/test/basic/ic-select.e2e.js.map +1 -0
  316. package/dist/collection/components/ic-select/{ic-select.spec.js → test/basic/ic-select.spec.js} +6 -6
  317. package/dist/collection/components/ic-select/test/basic/ic-select.spec.js.map +1 -0
  318. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +1 -4
  319. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +75 -79
  320. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  321. package/dist/collection/components/ic-side-navigation/{ic-side-navigation.test.a11y.js → test/a11y/ic-side-navigation.test.a11y.js} +1 -1
  322. package/dist/collection/components/ic-side-navigation/test/a11y/ic-side-navigation.test.a11y.js.map +1 -0
  323. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation-test-examples.js.map +1 -0
  324. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.e2e.js.map +1 -0
  325. package/dist/collection/components/ic-side-navigation/{ic-side-navigation.spec.js → test/basic/ic-side-navigation.spec.js} +5 -5
  326. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js.map +1 -0
  327. package/dist/collection/components/ic-skeleton/ic-skeleton.js +22 -22
  328. package/dist/collection/components/ic-skeleton/ic-skeleton.js.map +1 -1
  329. package/dist/collection/components/ic-skeleton/{ic-skeleton.test.a11y.js → test/a11y/ic-skeleton.test.a11y.js} +1 -1
  330. package/dist/collection/components/ic-skeleton/test/a11y/ic-skeleton.test.a11y.js.map +1 -0
  331. package/dist/collection/components/ic-skeleton/{ic-skeleton.spec.js → test/basic/ic-skeleton.spec.js} +1 -1
  332. package/dist/collection/components/ic-skeleton/test/basic/ic-skeleton.spec.js.map +1 -0
  333. package/dist/collection/components/ic-status-tag/ic-status-tag.js +40 -40
  334. package/dist/collection/components/ic-status-tag/ic-status-tag.js.map +1 -1
  335. package/dist/collection/components/ic-status-tag/{ic-status-tag.test.a11y.js → test/a11y/ic-status-tag.test.a11y.js} +1 -1
  336. package/dist/collection/components/ic-status-tag/test/a11y/ic-status-tag.test.a11y.js.map +1 -0
  337. package/dist/collection/components/ic-status-tag/{ic-status-tag.spec.js → test/basic/ic-status-tag.spec.js} +1 -1
  338. package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js.map +1 -0
  339. package/dist/collection/components/ic-step/ic-step.js +126 -126
  340. package/dist/collection/components/ic-step/ic-step.js.map +1 -1
  341. package/dist/collection/components/ic-step/{ic-step.spec.js → test/basic/ic-step.spec.js} +3 -3
  342. package/dist/collection/components/ic-step/test/basic/ic-step.spec.js.map +1 -0
  343. package/dist/collection/components/ic-stepper/ic-stepper.js +41 -41
  344. package/dist/collection/components/ic-stepper/ic-stepper.js.map +1 -1
  345. package/dist/collection/components/ic-stepper/{ic-stepper.test.a11y.js → test/a11y/ic-stepper.test.a11y.js} +1 -1
  346. package/dist/collection/components/ic-stepper/test/a11y/ic-stepper.test.a11y.js.map +1 -0
  347. package/dist/collection/components/ic-stepper/test/basic/ic-stepper-test-examples.js.map +1 -0
  348. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.e2e.js.map +1 -0
  349. package/dist/collection/components/ic-stepper/{ic-stepper.spec.js → test/basic/ic-stepper.spec.js} +3 -3
  350. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js.map +1 -0
  351. package/dist/collection/components/ic-switch/ic-switch.js +72 -72
  352. package/dist/collection/components/ic-switch/ic-switch.js.map +1 -1
  353. package/dist/collection/components/ic-switch/{ic-switch.test.a11y.js → test/a11y/ic-switch.test.a11y.js} +1 -1
  354. package/dist/collection/components/ic-switch/test/a11y/ic-switch.test.a11y.js.map +1 -0
  355. package/dist/collection/components/ic-switch/{ic-switch.spec.js → test/basic/ic-switch.spec.js} +1 -1
  356. package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js.map +1 -0
  357. package/dist/collection/components/ic-tab/ic-tab.js +56 -56
  358. package/dist/collection/components/ic-tab/ic-tab.js.map +1 -1
  359. package/dist/collection/components/ic-tab/test/basic/ic-tab.e2e.js.map +1 -0
  360. package/dist/collection/components/ic-tab/{ic-tab.spec.js → test/basic/ic-tab.spec.js} +3 -3
  361. package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js.map +1 -0
  362. package/dist/collection/components/ic-tab-context/ic-tab-context.js +71 -77
  363. package/dist/collection/components/ic-tab-context/ic-tab-context.js.map +1 -1
  364. package/dist/collection/components/ic-tab-context/test/a11y/ic-tab-context.test.a11y.js.map +1 -0
  365. package/dist/collection/components/ic-tab-context/{ic-tab-context.e2e.js → test/basic/ic-tab-context.e2e.js} +1 -1
  366. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.e2e.js.map +1 -0
  367. package/dist/collection/components/ic-tab-context/{ic-tab-context.spec.js → test/basic/ic-tab-context.spec.js} +4 -4
  368. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js.map +1 -0
  369. package/dist/collection/components/ic-tab-group/ic-tab-group.js +27 -27
  370. package/dist/collection/components/ic-tab-group/ic-tab-group.js.map +1 -1
  371. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +33 -33
  372. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js.map +1 -1
  373. package/dist/collection/components/ic-tab-panel/{ic-tab-panel.spec.js → test/basic/ic-tab-panel.spec.js} +1 -1
  374. package/dist/collection/components/ic-tab-panel/test/basic/ic-tab-panel.spec.js.map +1 -0
  375. package/dist/collection/components/ic-text-field/ic-text-field.js +371 -371
  376. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  377. package/dist/collection/components/ic-text-field/test/a11y/ic-text-field.test.a11y.js.map +1 -0
  378. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.e2e.js.map +1 -0
  379. package/dist/collection/components/ic-text-field/{ic-text-field.input.spec.js → test/basic/ic-text-field.input.spec.js} +2 -2
  380. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js.map +1 -0
  381. package/dist/collection/components/ic-text-field/{ic-text-field.textarea.spec.js → test/basic/ic-text-field.textarea.spec.js} +1 -1
  382. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js.map +1 -0
  383. package/dist/collection/components/ic-theme/ic-theme.js.map +1 -1
  384. package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js.map +1 -0
  385. package/dist/collection/components/ic-theme/{ic-theme.spec.js → test/basic/ic-theme.spec.js} +3 -3
  386. package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js.map +1 -0
  387. package/dist/collection/components/ic-toast/ic-toast.js +111 -111
  388. package/dist/collection/components/ic-toast/ic-toast.js.map +1 -1
  389. package/dist/collection/components/ic-toast/{ic-toast.test.a11y.js → test/a11y/ic-toast.test.a11y.js} +1 -1
  390. package/dist/collection/components/ic-toast/test/a11y/ic-toast.test.a11y.js.map +1 -0
  391. package/dist/collection/components/ic-toast/test/basic/ic-toast.e2e.js.map +1 -0
  392. package/dist/collection/components/ic-toast/{ic-toast.spec.js → test/basic/ic-toast.spec.js} +4 -4
  393. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js.map +1 -0
  394. package/dist/collection/components/ic-toast-region/ic-toast-region.js +12 -12
  395. package/dist/collection/components/ic-toast-region/ic-toast-region.js.map +1 -1
  396. package/dist/collection/components/ic-toast-region/{ic-toast-region.spec.js → test/basic/ic-toast-region.spec.js} +3 -3
  397. package/dist/collection/components/ic-toast-region/test/basic/ic-toast-region.spec.js.map +1 -0
  398. package/dist/collection/components/ic-tooltip/ic-tooltip.js +47 -47
  399. package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
  400. package/dist/collection/components/ic-tooltip/{ic-tooltip.test.a11y.js → test/a11y/ic-tooltip.test.a11y.js} +1 -1
  401. package/dist/collection/components/ic-tooltip/test/a11y/ic-tooltip.test.a11y.js.map +1 -0
  402. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.e2e.js.map +1 -0
  403. package/dist/collection/components/ic-tooltip/{ic-tooltip.spec.js → test/basic/ic-tooltip.spec.js} +2 -2
  404. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.spec.js.map +1 -0
  405. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +82 -82
  406. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
  407. package/dist/collection/components/ic-top-navigation/{ic-top-navigation.test.a11y.js → test/a11y/ic-top-navigation.test.a11y.js} +1 -1
  408. package/dist/collection/components/ic-top-navigation/test/a11y/ic-top-navigation.test.a11y.js.map +1 -0
  409. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.e2e.js.map +1 -0
  410. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.mobile.e2e.js.map +1 -0
  411. package/dist/collection/components/ic-top-navigation/{ic-top-navigation.spec.js → test/basic/ic-top-navigation.spec.js} +8 -8
  412. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js.map +1 -0
  413. package/dist/collection/components/ic-typography/ic-typography.js +36 -36
  414. package/dist/collection/components/ic-typography/ic-typography.js.map +1 -1
  415. package/dist/collection/components/ic-typography/{ic-typography.test.a11y.js → test/a11y/ic-typography.test.a11y.js} +1 -1
  416. package/dist/collection/components/ic-typography/test/a11y/ic-typography.test.a11y.js.map +1 -0
  417. package/dist/collection/components/ic-typography/test/basic/ic-typography.e2e.js.map +1 -0
  418. package/dist/collection/components/ic-typography/{ic-typography.spec.js → test/basic/ic-typography.spec.js} +1 -1
  419. package/dist/collection/components/ic-typography/test/basic/ic-typography.spec.js.map +1 -0
  420. package/dist/collection/testspec.setup.js.map +1 -1
  421. package/dist/collection/utils/helpers.js.map +1 -1
  422. package/dist/components/helpers.js +1 -1
  423. package/dist/components/helpers.js.map +1 -1
  424. package/dist/components/ic-alert2.js +13 -13
  425. package/dist/components/ic-alert2.js.map +1 -1
  426. package/dist/components/ic-back-to-top.js +4 -4
  427. package/dist/components/ic-back-to-top.js.map +1 -1
  428. package/dist/components/ic-breadcrumb-group.js +25 -19
  429. package/dist/components/ic-breadcrumb-group.js.map +1 -1
  430. package/dist/components/ic-breadcrumb2.js +7 -7
  431. package/dist/components/ic-breadcrumb2.js.map +1 -1
  432. package/dist/components/ic-button2.js +47 -46
  433. package/dist/components/ic-button2.js.map +1 -1
  434. package/dist/components/ic-card.js +50 -50
  435. package/dist/components/ic-card.js.map +1 -1
  436. package/dist/components/ic-checkbox-group.js +20 -20
  437. package/dist/components/ic-checkbox-group.js.map +1 -1
  438. package/dist/components/ic-checkbox.js +37 -34
  439. package/dist/components/ic-checkbox.js.map +1 -1
  440. package/dist/components/ic-chip.js +19 -19
  441. package/dist/components/ic-chip.js.map +1 -1
  442. package/dist/components/ic-data-row.js +21 -21
  443. package/dist/components/ic-data-row.js.map +1 -1
  444. package/dist/components/ic-dialog.js +60 -61
  445. package/dist/components/ic-dialog.js.map +1 -1
  446. package/dist/components/ic-footer-link-group.js +19 -19
  447. package/dist/components/ic-footer-link-group.js.map +1 -1
  448. package/dist/components/ic-footer-link.js +16 -16
  449. package/dist/components/ic-footer-link.js.map +1 -1
  450. package/dist/components/ic-footer.js +19 -19
  451. package/dist/components/ic-footer.js.map +1 -1
  452. package/dist/components/ic-hero.js +25 -25
  453. package/dist/components/ic-hero.js.map +1 -1
  454. package/dist/components/ic-horizontal-scroll2.js +34 -21
  455. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  456. package/dist/components/ic-input-component-container2.js +8 -8
  457. package/dist/components/ic-input-component-container2.js.map +1 -1
  458. package/dist/components/ic-input-label2.js +8 -8
  459. package/dist/components/ic-input-label2.js.map +1 -1
  460. package/dist/components/ic-input-validation2.js +6 -6
  461. package/dist/components/ic-input-validation2.js.map +1 -1
  462. package/dist/components/ic-link2.js +20 -20
  463. package/dist/components/ic-link2.js.map +1 -1
  464. package/dist/components/ic-loading-indicator2.js +24 -24
  465. package/dist/components/ic-loading-indicator2.js.map +1 -1
  466. package/dist/components/ic-menu-item2.js +17 -17
  467. package/dist/components/ic-menu-item2.js.map +1 -1
  468. package/dist/components/ic-menu2.js +93 -93
  469. package/dist/components/ic-menu2.js.map +1 -1
  470. package/dist/components/ic-navigation-button.js +20 -20
  471. package/dist/components/ic-navigation-button.js.map +1 -1
  472. package/dist/components/ic-navigation-group.js +40 -40
  473. package/dist/components/ic-navigation-group.js.map +1 -1
  474. package/dist/components/ic-navigation-item.js +52 -52
  475. package/dist/components/ic-navigation-item.js.map +1 -1
  476. package/dist/components/ic-navigation-menu2.js +28 -28
  477. package/dist/components/ic-navigation-menu2.js.map +1 -1
  478. package/dist/components/ic-page-header.js +18 -18
  479. package/dist/components/ic-page-header.js.map +1 -1
  480. package/dist/components/ic-pagination-item2.js +11 -11
  481. package/dist/components/ic-pagination-item2.js.map +1 -1
  482. package/dist/components/ic-pagination.js +39 -39
  483. package/dist/components/ic-pagination.js.map +1 -1
  484. package/dist/components/ic-popover-menu.js +64 -64
  485. package/dist/components/ic-popover-menu.js.map +1 -1
  486. package/dist/components/ic-radio-group.js +40 -33
  487. package/dist/components/ic-radio-group.js.map +1 -1
  488. package/dist/components/ic-radio-option.js +42 -35
  489. package/dist/components/ic-radio-option.js.map +1 -1
  490. package/dist/components/ic-search-bar.js +145 -145
  491. package/dist/components/ic-search-bar.js.map +1 -1
  492. package/dist/components/ic-select.js +95 -94
  493. package/dist/components/ic-select.js.map +1 -1
  494. package/dist/components/ic-side-navigation.js +40 -44
  495. package/dist/components/ic-side-navigation.js.map +1 -1
  496. package/dist/components/ic-skeleton.js +5 -5
  497. package/dist/components/ic-skeleton.js.map +1 -1
  498. package/dist/components/ic-status-tag.js +6 -6
  499. package/dist/components/ic-status-tag.js.map +1 -1
  500. package/dist/components/ic-step.js +15 -15
  501. package/dist/components/ic-step.js.map +1 -1
  502. package/dist/components/ic-stepper.js +19 -19
  503. package/dist/components/ic-stepper.js.map +1 -1
  504. package/dist/components/ic-switch.js +21 -21
  505. package/dist/components/ic-switch.js.map +1 -1
  506. package/dist/components/ic-tab-context.js +28 -34
  507. package/dist/components/ic-tab-context.js.map +1 -1
  508. package/dist/components/ic-tab-group.js +3 -3
  509. package/dist/components/ic-tab-group.js.map +1 -1
  510. package/dist/components/ic-tab-panel.js +4 -4
  511. package/dist/components/ic-tab-panel.js.map +1 -1
  512. package/dist/components/ic-tab.js +17 -17
  513. package/dist/components/ic-tab.js.map +1 -1
  514. package/dist/components/ic-text-field2.js +83 -83
  515. package/dist/components/ic-text-field2.js.map +1 -1
  516. package/dist/components/ic-theme.js.map +1 -1
  517. package/dist/components/ic-toast-region.js +12 -12
  518. package/dist/components/ic-toast-region.js.map +1 -1
  519. package/dist/components/ic-toast.js +62 -62
  520. package/dist/components/ic-toast.js.map +1 -1
  521. package/dist/components/ic-tooltip2.js +26 -26
  522. package/dist/components/ic-tooltip2.js.map +1 -1
  523. package/dist/components/ic-top-navigation.js +47 -47
  524. package/dist/components/ic-top-navigation.js.map +1 -1
  525. package/dist/components/ic-typography2.js +14 -14
  526. package/dist/components/ic-typography2.js.map +1 -1
  527. package/dist/core/core.esm.js +1 -1
  528. package/dist/core/core.esm.js.map +1 -1
  529. package/dist/core/{p-3ce0aa02.entry.js → p-00b0c1b5.entry.js} +2 -2
  530. package/dist/core/p-00b0c1b5.entry.js.map +1 -0
  531. package/dist/core/{p-ca6820dc.entry.js → p-0471f0a2.entry.js} +2 -2
  532. package/dist/core/p-0471f0a2.entry.js.map +1 -0
  533. package/dist/core/{p-bad10f6c.entry.js → p-053b387f.entry.js} +2 -2
  534. package/dist/core/p-053b387f.entry.js.map +1 -0
  535. package/dist/core/{p-31e80ccb.entry.js → p-071bd3f5.entry.js} +2 -2
  536. package/dist/core/p-071bd3f5.entry.js.map +1 -0
  537. package/dist/core/p-0738d6e3.entry.js +2 -0
  538. package/dist/core/p-0738d6e3.entry.js.map +1 -0
  539. package/dist/core/{p-b03bd9c6.entry.js → p-0ccdb432.entry.js} +2 -2
  540. package/dist/core/p-0ccdb432.entry.js.map +1 -0
  541. package/dist/core/{p-aeef3c9d.entry.js → p-0d4507ef.entry.js} +2 -2
  542. package/dist/core/p-0d4507ef.entry.js.map +1 -0
  543. package/dist/core/{p-97286148.entry.js → p-11e0f917.entry.js} +2 -2
  544. package/dist/core/p-11e0f917.entry.js.map +1 -0
  545. package/dist/core/{p-97fd0cc1.entry.js → p-12287f17.entry.js} +2 -2
  546. package/dist/core/p-12287f17.entry.js.map +1 -0
  547. package/dist/core/{p-a9de9aba.entry.js → p-18f86ab2.entry.js} +2 -2
  548. package/dist/core/{p-a9de9aba.entry.js.map → p-18f86ab2.entry.js.map} +1 -1
  549. package/dist/core/{p-ef91c17e.entry.js → p-1a7d6eca.entry.js} +2 -2
  550. package/dist/core/p-1a7d6eca.entry.js.map +1 -0
  551. package/dist/core/p-1c30ece9.entry.js +2 -0
  552. package/dist/core/p-1c30ece9.entry.js.map +1 -0
  553. package/dist/core/{p-b0685167.entry.js → p-206a402a.entry.js} +2 -2
  554. package/dist/core/p-206a402a.entry.js.map +1 -0
  555. package/dist/core/{p-a74b8476.entry.js → p-221c905b.entry.js} +2 -2
  556. package/dist/core/p-221c905b.entry.js.map +1 -0
  557. package/dist/core/p-2b80ce4c.entry.js +2 -0
  558. package/dist/core/p-2b80ce4c.entry.js.map +1 -0
  559. package/dist/core/{p-323bce82.entry.js → p-3294961a.entry.js} +2 -2
  560. package/dist/core/p-3294961a.entry.js.map +1 -0
  561. package/dist/core/p-36115f6a.entry.js +2 -0
  562. package/dist/core/p-36115f6a.entry.js.map +1 -0
  563. package/dist/core/{p-311c38b3.entry.js → p-38450979.entry.js} +2 -2
  564. package/dist/core/p-38450979.entry.js.map +1 -0
  565. package/dist/core/{p-b35a9909.entry.js → p-39ec4fc2.entry.js} +2 -2
  566. package/dist/core/p-39ec4fc2.entry.js.map +1 -0
  567. package/dist/core/p-4a47cc51.entry.js +2 -0
  568. package/dist/core/p-4a47cc51.entry.js.map +1 -0
  569. package/dist/core/{p-ecdcae46.entry.js → p-4a814585.entry.js} +2 -2
  570. package/dist/core/p-4a814585.entry.js.map +1 -0
  571. package/dist/core/{p-820e4c17.entry.js → p-51d4c05c.entry.js} +2 -2
  572. package/dist/core/{p-820e4c17.entry.js.map → p-51d4c05c.entry.js.map} +1 -1
  573. package/dist/core/{p-2e051e1e.entry.js → p-54a5e971.entry.js} +2 -2
  574. package/dist/core/p-54a5e971.entry.js.map +1 -0
  575. package/dist/core/{p-0d325b4c.entry.js → p-57ba3442.entry.js} +2 -2
  576. package/dist/core/p-57ba3442.entry.js.map +1 -0
  577. package/dist/core/{p-68308ecd.entry.js → p-594e88fe.entry.js} +2 -2
  578. package/dist/core/p-594e88fe.entry.js.map +1 -0
  579. package/dist/core/{p-79914e0c.entry.js → p-5d245683.entry.js} +2 -2
  580. package/dist/core/{p-79914e0c.entry.js.map → p-5d245683.entry.js.map} +1 -1
  581. package/dist/core/{p-29d9fea1.entry.js → p-64584eb6.entry.js} +2 -2
  582. package/dist/core/p-64584eb6.entry.js.map +1 -0
  583. package/dist/core/{p-ad6c4c02.entry.js → p-67e99ad8.entry.js} +2 -2
  584. package/dist/core/p-67e99ad8.entry.js.map +1 -0
  585. package/dist/core/{p-f0714432.entry.js → p-6921177c.entry.js} +2 -2
  586. package/dist/core/p-6921177c.entry.js.map +1 -0
  587. package/dist/core/{p-84c8c4c7.entry.js → p-6ac8df90.entry.js} +2 -2
  588. package/dist/core/{p-84c8c4c7.entry.js.map → p-6ac8df90.entry.js.map} +1 -1
  589. package/dist/core/{p-dbe06c3b.entry.js → p-6aee5f18.entry.js} +2 -2
  590. package/dist/core/p-6aee5f18.entry.js.map +1 -0
  591. package/dist/core/{p-da4c1409.entry.js → p-7350d63d.entry.js} +2 -2
  592. package/dist/core/p-7350d63d.entry.js.map +1 -0
  593. package/dist/core/p-75e23d08.entry.js +2 -0
  594. package/dist/core/p-75e23d08.entry.js.map +1 -0
  595. package/dist/core/p-7ae1d7bc.entry.js +2 -0
  596. package/dist/core/p-7ae1d7bc.entry.js.map +1 -0
  597. package/dist/core/{p-6c76c6ba.entry.js → p-7fafc87a.entry.js} +2 -2
  598. package/dist/core/p-7fafc87a.entry.js.map +1 -0
  599. package/dist/core/{p-2ec49a7e.entry.js → p-9779c179.entry.js} +2 -2
  600. package/dist/core/{p-2ec49a7e.entry.js.map → p-9779c179.entry.js.map} +1 -1
  601. package/dist/core/{p-617950f8.entry.js → p-9e7b1167.entry.js} +2 -2
  602. package/dist/core/p-9e7b1167.entry.js.map +1 -0
  603. package/dist/core/{p-bda4414e.entry.js → p-ac10763e.entry.js} +2 -2
  604. package/dist/core/p-ac10763e.entry.js.map +1 -0
  605. package/dist/core/{p-31ccdd50.entry.js → p-acdc2931.entry.js} +2 -2
  606. package/dist/core/p-acdc2931.entry.js.map +1 -0
  607. package/dist/core/{p-f381e93f.entry.js → p-bc02816a.entry.js} +2 -2
  608. package/dist/core/p-bc02816a.entry.js.map +1 -0
  609. package/dist/core/{p-551986d1.entry.js → p-bde0fcab.entry.js} +2 -2
  610. package/dist/core/p-bde0fcab.entry.js.map +1 -0
  611. package/dist/core/{p-8911656b.entry.js → p-be6ee8a9.entry.js} +2 -2
  612. package/dist/core/{p-8911656b.entry.js.map → p-be6ee8a9.entry.js.map} +1 -1
  613. package/dist/core/{p-4a385752.js → p-bf5669a2.js} +2 -2
  614. package/dist/core/{p-4a385752.js.map → p-bf5669a2.js.map} +1 -1
  615. package/dist/core/{p-c0333310.entry.js → p-c4dcc6b9.entry.js} +2 -2
  616. package/dist/core/p-c4dcc6b9.entry.js.map +1 -0
  617. package/dist/core/{p-dfd31e28.entry.js → p-ca0e8569.entry.js} +2 -2
  618. package/dist/core/p-ca0e8569.entry.js.map +1 -0
  619. package/dist/core/p-ddb60a4b.entry.js +2 -0
  620. package/dist/core/p-ddb60a4b.entry.js.map +1 -0
  621. package/dist/core/{p-e3e6308b.entry.js → p-e0bbf81e.entry.js} +2 -2
  622. package/dist/core/{p-5fcd965f.entry.js → p-e6d3b5f8.entry.js} +2 -2
  623. package/dist/core/p-e6d3b5f8.entry.js.map +1 -0
  624. package/dist/core/p-e8be020c.entry.js +2 -0
  625. package/dist/core/p-e8be020c.entry.js.map +1 -0
  626. package/dist/core/{p-249af8ab.entry.js → p-fa40a71b.entry.js} +2 -2
  627. package/dist/core/{p-249af8ab.entry.js.map → p-fa40a71b.entry.js.map} +1 -1
  628. package/dist/esm/core.js +1 -1
  629. package/dist/esm/{helpers-8e57082b.js → helpers-c4e378c4.js} +2 -2
  630. package/dist/esm/{helpers-8e57082b.js.map → helpers-c4e378c4.js.map} +1 -1
  631. package/dist/esm/ic-alert.entry.js +9 -9
  632. package/dist/esm/ic-alert.entry.js.map +1 -1
  633. package/dist/esm/ic-back-to-top.entry.js +3 -3
  634. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  635. package/dist/esm/ic-breadcrumb-group.entry.js +26 -20
  636. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  637. package/dist/esm/ic-breadcrumb.entry.js +6 -6
  638. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  639. package/dist/esm/ic-button_3.entry.js +72 -71
  640. package/dist/esm/ic-button_3.entry.js.map +1 -1
  641. package/dist/esm/ic-card.entry.js +41 -41
  642. package/dist/esm/ic-card.entry.js.map +1 -1
  643. package/dist/esm/ic-checkbox-group.entry.js +18 -18
  644. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  645. package/dist/esm/ic-checkbox.entry.js +33 -30
  646. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  647. package/dist/esm/ic-chip.entry.js +16 -16
  648. package/dist/esm/ic-chip.entry.js.map +1 -1
  649. package/dist/esm/ic-data-row.entry.js +21 -21
  650. package/dist/esm/ic-data-row.entry.js.map +1 -1
  651. package/dist/esm/ic-dialog.entry.js +55 -56
  652. package/dist/esm/ic-dialog.entry.js.map +1 -1
  653. package/dist/esm/ic-divider.entry.js +1 -1
  654. package/dist/esm/ic-footer-link-group.entry.js +17 -17
  655. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  656. package/dist/esm/ic-footer-link.entry.js +15 -15
  657. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  658. package/dist/esm/ic-footer.entry.js +18 -18
  659. package/dist/esm/ic-footer.entry.js.map +1 -1
  660. package/dist/esm/ic-hero.entry.js +19 -19
  661. package/dist/esm/ic-hero.entry.js.map +1 -1
  662. package/dist/esm/ic-horizontal-scroll.entry.js +34 -21
  663. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  664. package/dist/esm/ic-input-component-container_3.entry.js +87 -87
  665. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  666. package/dist/esm/ic-input-label_2.entry.js +8 -8
  667. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  668. package/dist/esm/ic-link.entry.js +18 -18
  669. package/dist/esm/ic-link.entry.js.map +1 -1
  670. package/dist/esm/ic-menu-item.entry.js +13 -13
  671. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  672. package/dist/esm/ic-navigation-button.entry.js +16 -16
  673. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  674. package/dist/esm/ic-navigation-group.entry.js +37 -37
  675. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  676. package/dist/esm/ic-navigation-item.entry.js +43 -43
  677. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  678. package/dist/esm/ic-navigation-menu.entry.js +27 -27
  679. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  680. package/dist/esm/ic-page-header.entry.js +13 -13
  681. package/dist/esm/ic-page-header.entry.js.map +1 -1
  682. package/dist/esm/ic-pagination-item.entry.js +6 -6
  683. package/dist/esm/ic-pagination-item.entry.js.map +1 -1
  684. package/dist/esm/ic-pagination.entry.js +31 -31
  685. package/dist/esm/ic-pagination.entry.js.map +1 -1
  686. package/dist/esm/ic-popover-menu.entry.js +62 -62
  687. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  688. package/dist/esm/ic-radio-group.entry.js +36 -29
  689. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  690. package/dist/esm/ic-radio-option.entry.js +37 -30
  691. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  692. package/dist/esm/ic-search-bar.entry.js +122 -122
  693. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  694. package/dist/esm/ic-select.entry.js +67 -66
  695. package/dist/esm/ic-select.entry.js.map +1 -1
  696. package/dist/esm/ic-side-navigation.entry.js +32 -36
  697. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  698. package/dist/esm/ic-skeleton.entry.js +3 -3
  699. package/dist/esm/ic-skeleton.entry.js.map +1 -1
  700. package/dist/esm/ic-status-tag.entry.js +4 -4
  701. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  702. package/dist/esm/ic-step.entry.js +7 -7
  703. package/dist/esm/ic-step.entry.js.map +1 -1
  704. package/dist/esm/ic-stepper.entry.js +14 -14
  705. package/dist/esm/ic-stepper.entry.js.map +1 -1
  706. package/dist/esm/ic-switch.entry.js +17 -17
  707. package/dist/esm/ic-switch.entry.js.map +1 -1
  708. package/dist/esm/ic-tab-context.entry.js +26 -32
  709. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  710. package/dist/esm/ic-tab-group.entry.js +2 -2
  711. package/dist/esm/ic-tab-group.entry.js.map +1 -1
  712. package/dist/esm/ic-tab-panel.entry.js +2 -2
  713. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  714. package/dist/esm/ic-tab.entry.js +17 -17
  715. package/dist/esm/ic-tab.entry.js.map +1 -1
  716. package/dist/esm/ic-text-field.entry.js +54 -54
  717. package/dist/esm/ic-text-field.entry.js.map +1 -1
  718. package/dist/esm/ic-theme.entry.js +1 -1
  719. package/dist/esm/ic-theme.entry.js.map +1 -1
  720. package/dist/esm/ic-toast-region.entry.js +12 -12
  721. package/dist/esm/ic-toast-region.entry.js.map +1 -1
  722. package/dist/esm/ic-toast.entry.js +58 -58
  723. package/dist/esm/ic-toast.entry.js.map +1 -1
  724. package/dist/esm/ic-top-navigation.entry.js +39 -39
  725. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  726. package/dist/esm/ic-typography.entry.js +12 -12
  727. package/dist/esm/ic-typography.entry.js.map +1 -1
  728. package/dist/esm/loader.js +1 -1
  729. package/dist/types/components/ic-alert/ic-alert.d.ts +12 -12
  730. package/dist/types/components/ic-back-to-top/ic-back-to-top.d.ts +8 -8
  731. package/dist/types/components/ic-breadcrumb/ic-breadcrumb.d.ts +6 -6
  732. package/dist/types/components/ic-breadcrumb-group/ic-breadcrumb-group.d.ts +15 -11
  733. package/dist/types/components/ic-button/ic-button.d.ts +52 -52
  734. package/dist/types/components/ic-card/ic-card.d.ts +32 -32
  735. package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +27 -26
  736. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +13 -13
  737. package/dist/types/components/ic-chip/ic-chip.d.ts +16 -16
  738. package/dist/types/components/ic-data-row/ic-data-row.d.ts +11 -11
  739. package/dist/types/components/ic-dialog/ic-dialog.d.ts +47 -47
  740. package/dist/types/components/ic-footer/ic-footer.d.ts +20 -20
  741. package/dist/types/components/ic-footer-link/ic-footer-link.d.ts +9 -9
  742. package/dist/types/components/ic-footer-link-group/ic-footer-link-group.d.ts +8 -8
  743. package/dist/types/components/ic-hero/ic-hero.d.ts +24 -24
  744. package/dist/types/components/ic-horizontal-scroll/ic-horizontal-scroll.d.ts +15 -14
  745. package/dist/types/components/ic-input-component-container/ic-input-component-container.d.ts +15 -15
  746. package/dist/types/components/ic-input-label/ic-input-label.d.ts +14 -14
  747. package/dist/types/components/ic-input-validation/ic-input-validation.d.ts +8 -8
  748. package/dist/types/components/ic-link/ic-link.d.ts +8 -8
  749. package/dist/types/components/ic-loading-indicator/ic-loading-indicator.d.ts +38 -38
  750. package/dist/types/components/ic-menu/ic-menu.d.ts +63 -63
  751. package/dist/types/components/ic-menu-item/ic-menu-item.d.ts +23 -23
  752. package/dist/types/components/ic-navigation-button/ic-navigation-button.d.ts +21 -21
  753. package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +20 -20
  754. package/dist/types/components/ic-navigation-item/ic-navigation-item.d.ts +39 -39
  755. package/dist/types/components/ic-navigation-menu/ic-navigation-menu.d.ts +14 -14
  756. package/dist/types/components/ic-page-header/ic-page-header.d.ts +19 -19
  757. package/dist/types/components/ic-pagination/ic-pagination.d.ts +26 -26
  758. package/dist/types/components/ic-pagination-item/ic-pagination-item.d.ts +15 -15
  759. package/dist/types/components/ic-popover-menu/ic-popover-menu.d.ts +22 -22
  760. package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +19 -21
  761. package/dist/types/components/ic-radio-option/ic-radio-option.d.ts +31 -26
  762. package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +105 -105
  763. package/dist/types/components/ic-select/ic-select.d.ts +86 -86
  764. package/dist/types/components/ic-side-navigation/ic-side-navigation.d.ts +27 -24
  765. package/dist/types/components/ic-skeleton/ic-skeleton.d.ts +8 -8
  766. package/dist/types/components/ic-status-tag/ic-status-tag.d.ts +8 -8
  767. package/dist/types/components/ic-step/ic-step.d.ts +24 -24
  768. package/dist/types/components/ic-stepper/ic-stepper.d.ts +17 -17
  769. package/dist/types/components/ic-switch/ic-switch.d.ts +23 -23
  770. package/dist/types/components/ic-tab/ic-tab.d.ts +16 -16
  771. package/dist/types/components/ic-tab-context/ic-tab-context.d.ts +20 -19
  772. package/dist/types/components/ic-tab-group/ic-tab-group.d.ts +4 -4
  773. package/dist/types/components/ic-tab-panel/ic-tab-panel.d.ts +6 -6
  774. package/dist/types/components/ic-text-field/ic-text-field.d.ts +102 -102
  775. package/dist/types/components/ic-theme/ic-theme.d.ts +1 -1
  776. package/dist/types/components/ic-toast/ic-toast.d.ts +26 -27
  777. package/dist/types/components/ic-toast-region/ic-toast-region.d.ts +3 -3
  778. package/dist/types/components/ic-tooltip/ic-tooltip.d.ts +17 -17
  779. package/dist/types/components/ic-top-navigation/ic-top-navigation.d.ts +32 -32
  780. package/dist/types/components/ic-typography/ic-typography.d.ts +16 -16
  781. package/dist/types/components.d.ts +5 -1
  782. package/dist/types/testspec.setup.d.ts +7 -5
  783. package/hydrate/index.js +1637 -1610
  784. package/package.json +3 -3
  785. package/dist/collection/components/ic-alert/ic-alert.e2e.js.map +0 -1
  786. package/dist/collection/components/ic-alert/ic-alert.spec.js.map +0 -1
  787. package/dist/collection/components/ic-alert/ic-alert.test.a11y.js.map +0 -1
  788. package/dist/collection/components/ic-back-to-top/ic-back-to-top.e2e.js.map +0 -1
  789. package/dist/collection/components/ic-back-to-top/ic-back-to-top.spec.js.map +0 -1
  790. package/dist/collection/components/ic-back-to-top/ic-back-to-top.test.a11y.js.map +0 -1
  791. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.spec.js.map +0 -1
  792. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group-test-examples.js.map +0 -1
  793. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.e2e.js.map +0 -1
  794. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.spec.js.map +0 -1
  795. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.test.a11y.js.map +0 -1
  796. package/dist/collection/components/ic-button/ic-button.e2e.js.map +0 -1
  797. package/dist/collection/components/ic-button/ic-button.spec.js.map +0 -1
  798. package/dist/collection/components/ic-button/ic-button.test.a11y.js.map +0 -1
  799. package/dist/collection/components/ic-card/ic-card.e2e.js.map +0 -1
  800. package/dist/collection/components/ic-card/ic-card.spec.js.map +0 -1
  801. package/dist/collection/components/ic-card/ic-card.test.a11y.js.map +0 -1
  802. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.e2e.js.map +0 -1
  803. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.spec.js.map +0 -1
  804. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.test.a11y.js.map +0 -1
  805. package/dist/collection/components/ic-chip/ic-chip.spec.js.map +0 -1
  806. package/dist/collection/components/ic-chip/ic-chip.test.a11y.js.map +0 -1
  807. package/dist/collection/components/ic-classification-banner/ic-classification-banner.spec.js.map +0 -1
  808. package/dist/collection/components/ic-classification-banner/ic-classification-banner.test.a11y.js.map +0 -1
  809. package/dist/collection/components/ic-data-entity/ic-data-entity.spec.js.map +0 -1
  810. package/dist/collection/components/ic-data-entity/ic-data-entity.test.a11y.js.map +0 -1
  811. package/dist/collection/components/ic-data-row/ic-data-row.spec.js.map +0 -1
  812. package/dist/collection/components/ic-data-row/ic-data-row.test.a11y.js.map +0 -1
  813. package/dist/collection/components/ic-dialog/ic-dialog.e2e.js.map +0 -1
  814. package/dist/collection/components/ic-dialog/ic-dialog.spec.js.map +0 -1
  815. package/dist/collection/components/ic-dialog/ic-dialog.test.a11y.js.map +0 -1
  816. package/dist/collection/components/ic-divider/ic-divider.spec.js.map +0 -1
  817. package/dist/collection/components/ic-footer/ic-footer.e2e.js.map +0 -1
  818. package/dist/collection/components/ic-footer/ic-footer.spec.js.map +0 -1
  819. package/dist/collection/components/ic-footer/ic-footer.test.a11y.js.map +0 -1
  820. package/dist/collection/components/ic-footer-link/ic-footer-link.spec.js.map +0 -1
  821. package/dist/collection/components/ic-footer-link/ic-footer-link.test.a11y.js.map +0 -1
  822. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.spec.js.map +0 -1
  823. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.test.a11y.js.map +0 -1
  824. package/dist/collection/components/ic-hero/ic-hero.spec.js.map +0 -1
  825. package/dist/collection/components/ic-hero/ic-hero.test.a11y.js.map +0 -1
  826. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.spec.js.map +0 -1
  827. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.test.a11y.js.map +0 -1
  828. package/dist/collection/components/ic-input-component-container/ic-input-component-container.spec.js.map +0 -1
  829. package/dist/collection/components/ic-input-container/ic-input-container.spec.js.map +0 -1
  830. package/dist/collection/components/ic-input-label/ic-input-label.spec.js.map +0 -1
  831. package/dist/collection/components/ic-input-validation/ic-input-validation.spec.js.map +0 -1
  832. package/dist/collection/components/ic-link/ic-link.spec.js.map +0 -1
  833. package/dist/collection/components/ic-link/ic-link.test.a11y.js.map +0 -1
  834. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.e2e.js.map +0 -1
  835. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.spec.js.map +0 -1
  836. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.test.a11y.js.map +0 -1
  837. package/dist/collection/components/ic-menu/ic-menu.spec.js.map +0 -1
  838. package/dist/collection/components/ic-menu-group/ic-menu-group.spec.js.map +0 -1
  839. package/dist/collection/components/ic-menu-item/ic-menu-item.spec.js.map +0 -1
  840. package/dist/collection/components/ic-navigation-button/ic-navigation-button.spec.js.map +0 -1
  841. package/dist/collection/components/ic-navigation-group/ic-navigation-group.spec.js.map +0 -1
  842. package/dist/collection/components/ic-navigation-group/ic-navigation-group.test.a11y.js.map +0 -1
  843. package/dist/collection/components/ic-navigation-item/ic-navigation-item.spec.js.map +0 -1
  844. package/dist/collection/components/ic-navigation-item/ic-navigation-item.test.a11y.js.map +0 -1
  845. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.e2e.js.map +0 -1
  846. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.spec.js.map +0 -1
  847. package/dist/collection/components/ic-page-header/ic-page-header.e2e.js.map +0 -1
  848. package/dist/collection/components/ic-page-header/ic-page-header.spec.js.map +0 -1
  849. package/dist/collection/components/ic-page-header/ic-page-header.test.a11y.js.map +0 -1
  850. package/dist/collection/components/ic-pagination/ic-pagination.e2e.js.map +0 -1
  851. package/dist/collection/components/ic-pagination/ic-pagination.spec.js.map +0 -1
  852. package/dist/collection/components/ic-pagination/ic-pagination.test.a11y.js.map +0 -1
  853. package/dist/collection/components/ic-popover-menu/ic-popover-menu.e2e.js.map +0 -1
  854. package/dist/collection/components/ic-popover-menu/ic-popover-menu.spec.js.map +0 -1
  855. package/dist/collection/components/ic-popover-menu/ic-popover-menu.test.a11y.js.map +0 -1
  856. package/dist/collection/components/ic-radio-group/ic-radio-group.e2e.js.map +0 -1
  857. package/dist/collection/components/ic-radio-group/ic-radio-group.spec.js.map +0 -1
  858. package/dist/collection/components/ic-radio-group/ic-radio-group.test.a11y.js.map +0 -1
  859. package/dist/collection/components/ic-search-bar/ic-search-bar.e2e.js.map +0 -1
  860. package/dist/collection/components/ic-search-bar/ic-search-bar.spec.js.map +0 -1
  861. package/dist/collection/components/ic-search-bar/ic-search-bar.test.a11y.js.map +0 -1
  862. package/dist/collection/components/ic-section-container/ic-section-container.spec.js.map +0 -1
  863. package/dist/collection/components/ic-select/ic-select.e2e.js.map +0 -1
  864. package/dist/collection/components/ic-select/ic-select.spec.js.map +0 -1
  865. package/dist/collection/components/ic-select/ic-select.test.a11y.js.map +0 -1
  866. package/dist/collection/components/ic-side-navigation/ic-side-navigation-test-examples.js.map +0 -1
  867. package/dist/collection/components/ic-side-navigation/ic-side-navigation.e2e.js.map +0 -1
  868. package/dist/collection/components/ic-side-navigation/ic-side-navigation.spec.js.map +0 -1
  869. package/dist/collection/components/ic-side-navigation/ic-side-navigation.test.a11y.js.map +0 -1
  870. package/dist/collection/components/ic-skeleton/ic-skeleton.spec.js.map +0 -1
  871. package/dist/collection/components/ic-skeleton/ic-skeleton.test.a11y.js.map +0 -1
  872. package/dist/collection/components/ic-status-tag/ic-status-tag.spec.js.map +0 -1
  873. package/dist/collection/components/ic-status-tag/ic-status-tag.test.a11y.js.map +0 -1
  874. package/dist/collection/components/ic-step/ic-step.spec.js.map +0 -1
  875. package/dist/collection/components/ic-stepper/ic-stepper-test-examples.js.map +0 -1
  876. package/dist/collection/components/ic-stepper/ic-stepper.e2e.js.map +0 -1
  877. package/dist/collection/components/ic-stepper/ic-stepper.spec.js.map +0 -1
  878. package/dist/collection/components/ic-stepper/ic-stepper.test.a11y.js.map +0 -1
  879. package/dist/collection/components/ic-switch/ic-switch.spec.js.map +0 -1
  880. package/dist/collection/components/ic-switch/ic-switch.test.a11y.js.map +0 -1
  881. package/dist/collection/components/ic-tab/ic-tab.e2e.js.map +0 -1
  882. package/dist/collection/components/ic-tab/ic-tab.spec.js.map +0 -1
  883. package/dist/collection/components/ic-tab-context/ic-tab-context.e2e.js.map +0 -1
  884. package/dist/collection/components/ic-tab-context/ic-tab-context.spec.js.map +0 -1
  885. package/dist/collection/components/ic-tab-context/ic-tab-context.test.a11y.js.map +0 -1
  886. package/dist/collection/components/ic-tab-panel/ic-tab-panel.spec.js.map +0 -1
  887. package/dist/collection/components/ic-text-field/ic-text-field.e2e.js.map +0 -1
  888. package/dist/collection/components/ic-text-field/ic-text-field.input.spec.js.map +0 -1
  889. package/dist/collection/components/ic-text-field/ic-text-field.test.a11y.js.map +0 -1
  890. package/dist/collection/components/ic-text-field/ic-text-field.textarea.spec.js.map +0 -1
  891. package/dist/collection/components/ic-theme/ic-theme.e2e.js.map +0 -1
  892. package/dist/collection/components/ic-theme/ic-theme.spec.js.map +0 -1
  893. package/dist/collection/components/ic-toast/ic-toast.e2e.js.map +0 -1
  894. package/dist/collection/components/ic-toast/ic-toast.spec.js.map +0 -1
  895. package/dist/collection/components/ic-toast/ic-toast.test.a11y.js.map +0 -1
  896. package/dist/collection/components/ic-toast-region/ic-toast-region.spec.js.map +0 -1
  897. package/dist/collection/components/ic-tooltip/ic-tooltip.e2e.js.map +0 -1
  898. package/dist/collection/components/ic-tooltip/ic-tooltip.spec.js.map +0 -1
  899. package/dist/collection/components/ic-tooltip/ic-tooltip.test.a11y.js.map +0 -1
  900. package/dist/collection/components/ic-top-navigation/ic-top-navigation.e2e.js.map +0 -1
  901. package/dist/collection/components/ic-top-navigation/ic-top-navigation.mobile.e2e.js.map +0 -1
  902. package/dist/collection/components/ic-top-navigation/ic-top-navigation.spec.js.map +0 -1
  903. package/dist/collection/components/ic-top-navigation/ic-top-navigation.test.a11y.js.map +0 -1
  904. package/dist/collection/components/ic-typography/ic-typography.e2e.js.map +0 -1
  905. package/dist/collection/components/ic-typography/ic-typography.spec.js.map +0 -1
  906. package/dist/collection/components/ic-typography/ic-typography.test.a11y.js.map +0 -1
  907. package/dist/core/p-0d325b4c.entry.js.map +0 -1
  908. package/dist/core/p-29d9fea1.entry.js.map +0 -1
  909. package/dist/core/p-2e051e1e.entry.js.map +0 -1
  910. package/dist/core/p-3114a4b3.entry.js +0 -2
  911. package/dist/core/p-3114a4b3.entry.js.map +0 -1
  912. package/dist/core/p-311c38b3.entry.js.map +0 -1
  913. package/dist/core/p-31ccdd50.entry.js.map +0 -1
  914. package/dist/core/p-31e80ccb.entry.js.map +0 -1
  915. package/dist/core/p-323bce82.entry.js.map +0 -1
  916. package/dist/core/p-3918c27a.entry.js +0 -2
  917. package/dist/core/p-3918c27a.entry.js.map +0 -1
  918. package/dist/core/p-3ce0aa02.entry.js.map +0 -1
  919. package/dist/core/p-524557bc.entry.js +0 -2
  920. package/dist/core/p-524557bc.entry.js.map +0 -1
  921. package/dist/core/p-551986d1.entry.js.map +0 -1
  922. package/dist/core/p-57460fa3.entry.js +0 -2
  923. package/dist/core/p-57460fa3.entry.js.map +0 -1
  924. package/dist/core/p-5fcd965f.entry.js.map +0 -1
  925. package/dist/core/p-617950f8.entry.js.map +0 -1
  926. package/dist/core/p-68308ecd.entry.js.map +0 -1
  927. package/dist/core/p-6c76c6ba.entry.js.map +0 -1
  928. package/dist/core/p-97286148.entry.js.map +0 -1
  929. package/dist/core/p-97fd0cc1.entry.js.map +0 -1
  930. package/dist/core/p-a74b8476.entry.js.map +0 -1
  931. package/dist/core/p-ad6c4c02.entry.js.map +0 -1
  932. package/dist/core/p-aeef3c9d.entry.js.map +0 -1
  933. package/dist/core/p-b03bd9c6.entry.js.map +0 -1
  934. package/dist/core/p-b0685167.entry.js.map +0 -1
  935. package/dist/core/p-b35a9909.entry.js.map +0 -1
  936. package/dist/core/p-bad10f6c.entry.js.map +0 -1
  937. package/dist/core/p-bda4414e.entry.js.map +0 -1
  938. package/dist/core/p-c0333310.entry.js.map +0 -1
  939. package/dist/core/p-c3f9fb1d.entry.js +0 -2
  940. package/dist/core/p-c3f9fb1d.entry.js.map +0 -1
  941. package/dist/core/p-ca6820dc.entry.js.map +0 -1
  942. package/dist/core/p-d6694b41.entry.js +0 -2
  943. package/dist/core/p-d6694b41.entry.js.map +0 -1
  944. package/dist/core/p-da4c1409.entry.js.map +0 -1
  945. package/dist/core/p-dbe06c3b.entry.js.map +0 -1
  946. package/dist/core/p-dfd31e28.entry.js.map +0 -1
  947. package/dist/core/p-ea233813.entry.js +0 -2
  948. package/dist/core/p-ea233813.entry.js.map +0 -1
  949. package/dist/core/p-ecdcae46.entry.js.map +0 -1
  950. package/dist/core/p-ef91c17e.entry.js.map +0 -1
  951. package/dist/core/p-f0714432.entry.js.map +0 -1
  952. package/dist/core/p-f381e93f.entry.js.map +0 -1
  953. package/dist/core/p-fd482bd7.entry.js +0 -2
  954. package/dist/core/p-fd482bd7.entry.js.map +0 -1
  955. package/dist/core/p-fe2c4009.entry.js +0 -2
  956. package/dist/core/p-fe2c4009.entry.js.map +0 -1
  957. /package/dist/collection/components/ic-alert/{ic-alert.e2e.js → test/basic/ic-alert.e2e.js} +0 -0
  958. /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
  959. /package/dist/collection/components/ic-back-to-top/{ic-back-to-top.e2e.js → test/basic/ic-back-to-top.e2e.js} +0 -0
  960. /package/dist/collection/components/ic-breadcrumb-group/{ic-breadcrumb-group-test-examples.js → test/basic/ic-breadcrumb-group-test-examples.js} +0 -0
  961. /package/dist/collection/components/ic-breadcrumb-group/{ic-breadcrumb-group.e2e.js → test/basic/ic-breadcrumb-group.e2e.js} +0 -0
  962. /package/dist/collection/components/ic-button/{ic-button.e2e.js → test/basic/ic-button.e2e.js} +0 -0
  963. /package/dist/collection/components/ic-card/{ic-card.e2e.js → test/basic/ic-card.e2e.js} +0 -0
  964. /package/dist/collection/components/ic-checkbox-group/{ic-checkbox-group.e2e.js → test/basic/ic-checkbox-group.e2e.js} +0 -0
  965. /package/dist/collection/components/ic-dialog/{ic-dialog.e2e.js → test/basic/ic-dialog.e2e.js} +0 -0
  966. /package/dist/collection/components/ic-footer/{ic-footer.e2e.js → test/basic/ic-footer.e2e.js} +0 -0
  967. /package/dist/collection/components/ic-loading-indicator/{ic-loading-indicator.e2e.js → test/basic/ic-loading-indicator.e2e.js} +0 -0
  968. /package/dist/collection/components/ic-navigation-menu/{ic-navigation-menu.e2e.js → test/basic/ic-navigation-menu.e2e.js} +0 -0
  969. /package/dist/collection/components/ic-page-header/{ic-page-header.e2e.js → test/basic/ic-page-header.e2e.js} +0 -0
  970. /package/dist/collection/components/ic-pagination/{ic-pagination.e2e.js → test/basic/ic-pagination.e2e.js} +0 -0
  971. /package/dist/collection/components/ic-popover-menu/{ic-popover-menu.e2e.js → test/basic/ic-popover-menu.e2e.js} +0 -0
  972. /package/dist/collection/components/ic-radio-group/{ic-radio-group.e2e.js → test/basic/ic-radio-group.e2e.js} +0 -0
  973. /package/dist/collection/components/ic-search-bar/{ic-search-bar.e2e.js → test/basic/ic-search-bar.e2e.js} +0 -0
  974. /package/dist/collection/components/ic-select/{ic-select.e2e.js → test/basic/ic-select.e2e.js} +0 -0
  975. /package/dist/collection/components/ic-side-navigation/{ic-side-navigation-test-examples.js → test/basic/ic-side-navigation-test-examples.js} +0 -0
  976. /package/dist/collection/components/ic-side-navigation/{ic-side-navigation.e2e.js → test/basic/ic-side-navigation.e2e.js} +0 -0
  977. /package/dist/collection/components/ic-stepper/{ic-stepper-test-examples.js → test/basic/ic-stepper-test-examples.js} +0 -0
  978. /package/dist/collection/components/ic-stepper/{ic-stepper.e2e.js → test/basic/ic-stepper.e2e.js} +0 -0
  979. /package/dist/collection/components/ic-tab/{ic-tab.e2e.js → test/basic/ic-tab.e2e.js} +0 -0
  980. /package/dist/collection/components/ic-tab-context/{ic-tab-context.test.a11y.js → test/a11y/ic-tab-context.test.a11y.js} +0 -0
  981. /package/dist/collection/components/ic-text-field/{ic-text-field.test.a11y.js → test/a11y/ic-text-field.test.a11y.js} +0 -0
  982. /package/dist/collection/components/ic-text-field/{ic-text-field.e2e.js → test/basic/ic-text-field.e2e.js} +0 -0
  983. /package/dist/collection/components/ic-theme/{ic-theme.e2e.js → test/basic/ic-theme.e2e.js} +0 -0
  984. /package/dist/collection/components/ic-toast/{ic-toast.e2e.js → test/basic/ic-toast.e2e.js} +0 -0
  985. /package/dist/collection/components/ic-tooltip/{ic-tooltip.e2e.js → test/basic/ic-tooltip.e2e.js} +0 -0
  986. /package/dist/collection/components/ic-top-navigation/{ic-top-navigation.e2e.js → test/basic/ic-top-navigation.e2e.js} +0 -0
  987. /package/dist/collection/components/ic-top-navigation/{ic-top-navigation.mobile.e2e.js → test/basic/ic-top-navigation.mobile.e2e.js} +0 -0
  988. /package/dist/collection/components/ic-typography/{ic-typography.e2e.js → test/basic/ic-typography.e2e.js} +0 -0
  989. /package/dist/core/{p-e3e6308b.entry.js.map → p-e0bbf81e.entry.js.map} +0 -0
  990. /package/dist/types/components/ic-alert/{ic-alert.test.a11y.d.ts → test/a11y/ic-alert.test.a11y.d.ts} +0 -0
  991. /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
  992. /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
  993. /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
  994. /package/dist/types/components/ic-button/{ic-button.test.a11y.d.ts → test/a11y/ic-button.test.a11y.d.ts} +0 -0
  995. /package/dist/types/components/ic-card/{ic-card.test.a11y.d.ts → test/a11y/ic-card.test.a11y.d.ts} +0 -0
  996. /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
  997. /package/dist/types/components/ic-chip/{ic-chip.test.a11y.d.ts → test/a11y/ic-chip.test.a11y.d.ts} +0 -0
  998. /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
  999. /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
  1000. /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
  1001. /package/dist/types/components/ic-dialog/{ic-dialog.test.a11y.d.ts → test/a11y/ic-dialog.test.a11y.d.ts} +0 -0
  1002. /package/dist/types/components/ic-footer/{ic-footer.test.a11y.d.ts → test/a11y/ic-footer.test.a11y.d.ts} +0 -0
  1003. /package/dist/types/components/ic-footer-link/{ic-footer-link.test.a11y.d.ts → test/a11y/ic-footer-link.test.a11y.d.ts} +0 -0
  1004. /package/dist/types/components/ic-footer-link-group/{ic-footer-link-group.test.a11y.d.ts → test/a11y/ic-footer-link-group.test.a11y.d.ts} +0 -0
  1005. /package/dist/types/components/ic-hero/{ic-hero.test.a11y.d.ts → test/a11y/ic-hero.test.a11y.d.ts} +0 -0
  1006. /package/dist/types/components/ic-horizontal-scroll/{ic-horizontal-scroll.test.a11y.d.ts → test/a11y/ic-horizontal-scroll.test.a11y.d.ts} +0 -0
  1007. /package/dist/types/components/ic-link/{ic-link.test.a11y.d.ts → test/a11y/ic-link.test.a11y.d.ts} +0 -0
  1008. /package/dist/types/components/ic-loading-indicator/{ic-loading-indicator.test.a11y.d.ts → test/a11y/ic-loading-indicator.test.a11y.d.ts} +0 -0
  1009. /package/dist/types/components/ic-navigation-group/{ic-navigation-group.test.a11y.d.ts → test/a11y/ic-navigation-group.test.a11y.d.ts} +0 -0
  1010. /package/dist/types/components/ic-navigation-item/{ic-navigation-item.test.a11y.d.ts → test/a11y/ic-navigation-item.test.a11y.d.ts} +0 -0
  1011. /package/dist/types/components/ic-page-header/{ic-page-header.test.a11y.d.ts → test/a11y/ic-page-header.test.a11y.d.ts} +0 -0
  1012. /package/dist/types/components/ic-pagination/{ic-pagination.test.a11y.d.ts → test/a11y/ic-pagination.test.a11y.d.ts} +0 -0
  1013. /package/dist/types/components/ic-popover-menu/{ic-popover-menu.test.a11y.d.ts → test/a11y/ic-popover-menu.test.a11y.d.ts} +0 -0
  1014. /package/dist/types/components/ic-radio-group/{ic-radio-group.test.a11y.d.ts → test/a11y/ic-radio-group.test.a11y.d.ts} +0 -0
  1015. /package/dist/types/components/ic-search-bar/{ic-search-bar.test.a11y.d.ts → test/a11y/ic-search-bar.test.a11y.d.ts} +0 -0
  1016. /package/dist/types/components/ic-select/{ic-select.test.a11y.d.ts → test/a11y/ic-select.test.a11y.d.ts} +0 -0
  1017. /package/dist/types/components/ic-side-navigation/{ic-side-navigation.test.a11y.d.ts → test/a11y/ic-side-navigation.test.a11y.d.ts} +0 -0
  1018. /package/dist/types/components/ic-side-navigation/{ic-side-navigation-test-examples.d.ts → test/basic/ic-side-navigation-test-examples.d.ts} +0 -0
  1019. /package/dist/types/components/ic-skeleton/{ic-skeleton.test.a11y.d.ts → test/a11y/ic-skeleton.test.a11y.d.ts} +0 -0
  1020. /package/dist/types/components/ic-status-tag/{ic-status-tag.test.a11y.d.ts → test/a11y/ic-status-tag.test.a11y.d.ts} +0 -0
  1021. /package/dist/types/components/ic-stepper/{ic-stepper.test.a11y.d.ts → test/a11y/ic-stepper.test.a11y.d.ts} +0 -0
  1022. /package/dist/types/components/ic-stepper/{ic-stepper-test-examples.d.ts → test/basic/ic-stepper-test-examples.d.ts} +0 -0
  1023. /package/dist/types/components/ic-switch/{ic-switch.test.a11y.d.ts → test/a11y/ic-switch.test.a11y.d.ts} +0 -0
  1024. /package/dist/types/components/ic-tab-context/{ic-tab-context.test.a11y.d.ts → test/a11y/ic-tab-context.test.a11y.d.ts} +0 -0
  1025. /package/dist/types/components/ic-text-field/{ic-text-field.test.a11y.d.ts → test/a11y/ic-text-field.test.a11y.d.ts} +0 -0
  1026. /package/dist/types/components/ic-toast/{ic-toast.test.a11y.d.ts → test/a11y/ic-toast.test.a11y.d.ts} +0 -0
  1027. /package/dist/types/components/ic-tooltip/{ic-tooltip.test.a11y.d.ts → test/a11y/ic-tooltip.test.a11y.d.ts} +0 -0
  1028. /package/dist/types/components/ic-top-navigation/{ic-top-navigation.test.a11y.d.ts → test/a11y/ic-top-navigation.test.a11y.d.ts} +0 -0
  1029. /package/dist/types/components/ic-typography/{ic-typography.test.a11y.d.ts → test/a11y/ic-typography.test.a11y.d.ts} +0 -0
@@ -1 +1 @@
1
- {"file":"ic-footer-link-group.js","mappings":"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","names":[],"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"],"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"],"version":3}
1
+ {"file":"ic-footer-link-group.js","mappings":"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","names":[],"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"],"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 @State() expanded: boolean = false;\n @State() deviceSize: number = DEVICE_SIZES.XL;\n @State() dropdownIconStyle = getThemeForegroundColor();\n @State() small: boolean = false;\n\n /**\n * The title of the link group to be displayed.\n */\n @Prop() groupTitle!: string;\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 @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 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 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"],"version":3}
@@ -9,15 +9,25 @@ const FooterLink = /*@__PURE__*/ proxyCustomElement(class FooterLink extends HTM
9
9
  super();
10
10
  this.__registerHost();
11
11
  this.__attachShadow();
12
+ this.deviceSize = DEVICE_SIZES.XL;
13
+ this.footerConfig = { small: false, grouped: false };
14
+ this.foregroundColor = getThemeForegroundColor();
15
+ this.download = false;
12
16
  this.href = null;
13
17
  this.hreflang = undefined;
14
18
  this.referrerpolicy = undefined;
15
19
  this.rel = undefined;
16
20
  this.target = undefined;
17
- this.download = false;
18
- this.footerConfig = { small: false, grouped: false };
19
- this.deviceSize = DEVICE_SIZES.XL;
20
- this.foregroundColor = getThemeForegroundColor();
21
+ }
22
+ componentWillLoad() {
23
+ this.footerConfig = this.inferConfig(this.el);
24
+ }
25
+ footerResizeHandler() {
26
+ this.footerConfig = this.inferConfig(this.el);
27
+ }
28
+ footerThemeChangeHandler(ev) {
29
+ const theme = ev.detail;
30
+ this.foregroundColor = theme.mode;
21
31
  }
22
32
  inferConfig(e) {
23
33
  if (e.parentElement !== null) {
@@ -35,16 +45,6 @@ const FooterLink = /*@__PURE__*/ proxyCustomElement(class FooterLink extends HTM
35
45
  return { small: false, grouped: false };
36
46
  }
37
47
  }
38
- footerResizeHandler() {
39
- this.footerConfig = this.inferConfig(this.el);
40
- }
41
- footerThemeChangeHandler(ev) {
42
- const theme = ev.detail;
43
- this.foregroundColor = theme.mode;
44
- }
45
- componentWillLoad() {
46
- this.footerConfig = this.inferConfig(this.el);
47
- }
48
48
  render() {
49
49
  const { footerConfig, href, hreflang, referrerpolicy, rel, target, download, } = this;
50
50
  const { small, grouped } = footerConfig;
@@ -58,14 +58,14 @@ const FooterLink = /*@__PURE__*/ proxyCustomElement(class FooterLink extends HTM
58
58
  get el() { return this; }
59
59
  static get style() { return icFooterLinkCss; }
60
60
  }, [17, "ic-footer-link", {
61
+ "download": [8],
61
62
  "href": [1],
62
63
  "hreflang": [1],
63
64
  "referrerpolicy": [1],
64
65
  "rel": [1],
65
66
  "target": [1],
66
- "download": [8],
67
- "footerConfig": [32],
68
67
  "deviceSize": [32],
68
+ "footerConfig": [32],
69
69
  "foregroundColor": [32]
70
70
  }, [[4, "footerResized", "footerResizeHandler"], [4, "themeChange", "footerThemeChangeHandler"]]]);
71
71
  function defineCustomElement$1() {
@@ -1 +1 @@
1
- {"file":"ic-footer-link.js","mappings":";;;;AAAA,MAAM,eAAe,GAAG,0iMAA0iM;;MCuBrjM,UAAU;;;;;gBAMG,IAAI;;;;;oBAyBU,KAAK;wBAEL,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE;sBAExC,YAAY,CAAC,EAAE;2BAEC,uBAAuB,EAAE;;EAE/D,WAAW,CAAC,CAAc;IAChC,IAAI,CAAC,CAAC,aAAa,KAAK,IAAI,EAAE;MAC5B,IAAI,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;QAChD,OAAO;UACL,KAAK,EAAE,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC;UACzD,OAAO,EAAE,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC;SAC9D,CAAC;OACH;WAAM;QACL,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;OAC1C;KACF;SAAM;MACL,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;KACzC;GACF;EAGD,mBAAmB;IACjB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;GAC/C;EAGD,wBAAwB,CAAC,EAAe;IACtC,MAAM,KAAK,GAAY,EAAE,CAAC,MAAM,CAAC;IACjC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC;GACnC;EAED,iBAAiB;IACf,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;GAC/C;EAED,MAAM;IACJ,MAAM,EACJ,YAAY,EACZ,IAAI,EACJ,QAAQ,EACR,cAAc,EACd,GAAG,EACH,MAAM,EACN,QAAQ,GACT,GAAG,IAAI,CAAC;IACT,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC;IAExC,QACE,EAAC,IAAI,IACH,KAAK,EAAE;QACL,aAAa,EAAE,IAAI;QACnB,CAAC,eAAe,OAAO,GAAG,SAAS,GAAG,WAAW,IAC/C,KAAK,GAAG,OAAO,GAAG,QACpB,EAAE,GAAG,IAAI;QACT,CAAC,eAAe,IAAI,CAAC,eAAe,EAAE,GAAG,IAAI;OAC9C,IAED,SACE,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,QAAQ,EAClB,cAAc,EAAE,cAAc,EAC9B,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE,QAAQ,KAAK,KAAK,GAAG,QAAQ,GAAG,IAAI,EAC9C,MAAM,EAAE,MAAM,IAEd,eAAQ,EACP,MAAM,KAAK,QAAQ,KAClB,YAAM,KAAK,EAAC,kBAAkB,EAAC,SAAS,EAAE,SAAS,GAAI,CACxD,CACC,CACC,EACP;GACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"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"],"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: flex;\n align-items: flex-end;\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 border-bottom: 0.25rem solid !important;\n margin-bottom: -0.25rem !important;\n text-decoration: none;\n}\n\n@supports (text-decoration-thickness: 25%) {\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 border-bottom: 0 !important;\n margin-bottom: 0 !important;\n }\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.open-in-new-icon {\n padding-left: var(--ic-space-xxs);\n}\n\n.open-in-new-icon,\n.open-in-new-icon svg {\n height: var(--ic-space-md);\n width: var(--ic-space-md);\n}\n\n:host(.footer-link-light) .open-in-new-icon svg {\n fill: var(--ic-architectural-white);\n}\n\n:host(.footer-link-dark) .open-in-new-icon svg {\n fill: var(--ic-architectural-black);\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\nimport OpenInNew from \"../../assets/OpenInNew.svg\";\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 /**\n * The human language of the linked URL.\n */\n @Prop() hreflang?: string;\n\n /**\n * How much of the referrer to send when following the link.\n */\n @Prop() referrerpolicy?: ReferrerPolicy;\n\n /**\n * The relationship of the linked URL as space-separated link types.\n */\n @Prop() rel?: string;\n\n /**\n * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe).\n */\n @Prop() target?: string;\n\n /**\n * If `true`, the user can save the linked URL instead of navigating to it.\n */\n @Prop() download?: string | boolean = false;\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 {\n footerConfig,\n href,\n hreflang,\n referrerpolicy,\n rel,\n target,\n download,\n } = 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\n href={href}\n hreflang={hreflang}\n referrerPolicy={referrerpolicy}\n rel={rel}\n download={download !== false ? download : null}\n target={target}\n >\n <slot />\n {target === \"_blank\" && (\n <span class=\"open-in-new-icon\" innerHTML={OpenInNew} />\n )}\n </a>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-footer-link.js","mappings":";;;;AAAA,MAAM,eAAe,GAAG,0iMAA0iM;;MCuBrjM,UAAU;;;;;sBAGS,YAAY,CAAC,EAAE;wBACP,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE;2BACxB,uBAAuB,EAAE;oBAKjC,KAAK;gBAKnB,IAAI;;;;;;EAsB5B,iBAAiB;IACf,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;GAC/C;EAGD,mBAAmB;IACjB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;GAC/C;EAGD,wBAAwB,CAAC,EAAe;IACtC,MAAM,KAAK,GAAY,EAAE,CAAC,MAAM,CAAC;IACjC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC;GACnC;EAEO,WAAW,CAAC,CAAc;IAChC,IAAI,CAAC,CAAC,aAAa,KAAK,IAAI,EAAE;MAC5B,IAAI,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;QAChD,OAAO;UACL,KAAK,EAAE,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC;UACzD,OAAO,EAAE,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC;SAC9D,CAAC;OACH;WAAM;QACL,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;OAC1C;KACF;SAAM;MACL,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;KACzC;GACF;EAED,MAAM;IACJ,MAAM,EACJ,YAAY,EACZ,IAAI,EACJ,QAAQ,EACR,cAAc,EACd,GAAG,EACH,MAAM,EACN,QAAQ,GACT,GAAG,IAAI,CAAC;IACT,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC;IAExC,QACE,EAAC,IAAI,IACH,KAAK,EAAE;QACL,aAAa,EAAE,IAAI;QACnB,CAAC,eAAe,OAAO,GAAG,SAAS,GAAG,WAAW,IAC/C,KAAK,GAAG,OAAO,GAAG,QACpB,EAAE,GAAG,IAAI;QACT,CAAC,eAAe,IAAI,CAAC,eAAe,EAAE,GAAG,IAAI;OAC9C,IAED,SACE,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,QAAQ,EAClB,cAAc,EAAE,cAAc,EAC9B,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE,QAAQ,KAAK,KAAK,GAAG,QAAQ,GAAG,IAAI,EAC9C,MAAM,EAAE,MAAM,IAEd,eAAQ,EACP,MAAM,KAAK,QAAQ,KAClB,YAAM,KAAK,EAAC,kBAAkB,EAAC,SAAS,EAAE,SAAS,GAAI,CACxD,CACC,CACC,EACP;GACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"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"],"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: flex;\n align-items: flex-end;\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 border-bottom: 0.25rem solid !important;\n margin-bottom: -0.25rem !important;\n text-decoration: none;\n}\n\n@supports (text-decoration-thickness: 25%) {\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 border-bottom: 0 !important;\n margin-bottom: 0 !important;\n }\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.open-in-new-icon {\n padding-left: var(--ic-space-xxs);\n}\n\n.open-in-new-icon,\n.open-in-new-icon svg {\n height: var(--ic-space-md);\n width: var(--ic-space-md);\n}\n\n:host(.footer-link-light) .open-in-new-icon svg {\n fill: var(--ic-architectural-white);\n}\n\n:host(.footer-link-dark) .open-in-new-icon svg {\n fill: var(--ic-architectural-black);\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\nimport OpenInNew from \"../../assets/OpenInNew.svg\";\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 @State() deviceSize: number = DEVICE_SIZES.XL;\n @State() footerConfig: FooterConfig = { small: false, grouped: false };\n @State() foregroundColor: IcThemeForeground = getThemeForegroundColor();\n\n /**\n * If `true`, the user can save the linked URL instead of navigating to it.\n */\n @Prop() download?: string | boolean = false;\n\n /**\n * The URL that the link points to.\n */\n @Prop() href?: string = null;\n\n /**\n * The human language of the linked URL.\n */\n @Prop() hreflang?: string;\n\n /**\n * How much of the referrer to send when following the link.\n */\n @Prop() referrerpolicy?: ReferrerPolicy;\n\n /**\n * The relationship of the linked URL as space-separated link types.\n */\n @Prop() rel?: string;\n\n /**\n * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe).\n */\n @Prop() target?: string;\n\n componentWillLoad(): void {\n this.footerConfig = this.inferConfig(this.el);\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 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 render() {\n const {\n footerConfig,\n href,\n hreflang,\n referrerpolicy,\n rel,\n target,\n download,\n } = 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\n href={href}\n hreflang={hreflang}\n referrerPolicy={referrerpolicy}\n rel={rel}\n download={download !== false ? download : null}\n target={target}\n >\n <slot />\n {target === \"_blank\" && (\n <span class=\"open-in-new-icon\" innerHTML={OpenInNew} />\n )}\n </a>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -25,14 +25,27 @@ const Footer = /*@__PURE__*/ proxyCustomElement(class Footer extends HTMLElement
25
25
  });
26
26
  this.resizeObserver.observe(this.footerEl);
27
27
  };
28
- this.description = undefined;
28
+ this.deviceSize = IC_DEVICE_SIZES.XL;
29
+ this.foregroundColor = getThemeForegroundColor();
29
30
  this.aligned = "left";
30
31
  this.breakpoint = "medium";
31
- this.groupLinks = false;
32
32
  this.caption = undefined;
33
33
  this.copyright = true;
34
- this.deviceSize = IC_DEVICE_SIZES.XL;
35
- this.foregroundColor = getThemeForegroundColor();
34
+ this.description = undefined;
35
+ this.groupLinks = false;
36
+ }
37
+ disconnectedCallback() {
38
+ this.resizeObserver.disconnect();
39
+ }
40
+ componentWillLoad() {
41
+ this.deviceSize = getCurrentDeviceSize();
42
+ }
43
+ componentDidLoad() {
44
+ checkResizeObserver(this.runResizeObserver);
45
+ }
46
+ themeChangeHandler(ev) {
47
+ const theme = ev.detail;
48
+ this.foregroundColor = theme.mode;
36
49
  }
37
50
  isSmall() {
38
51
  const bp = this.breakpoint;
@@ -48,19 +61,6 @@ const Footer = /*@__PURE__*/ proxyCustomElement(class Footer extends HTMLElement
48
61
  ? this.deviceSize < IC_DEVICE_SIZES.XL
49
62
  : false;
50
63
  }
51
- themeChangeHandler(ev) {
52
- const theme = ev.detail;
53
- this.foregroundColor = theme.mode;
54
- }
55
- componentWillLoad() {
56
- this.deviceSize = getCurrentDeviceSize();
57
- }
58
- componentDidLoad() {
59
- checkResizeObserver(this.runResizeObserver);
60
- }
61
- disconnectedCallback() {
62
- this.resizeObserver.disconnect();
63
- }
64
64
  render() {
65
65
  const { aligned, caption, copyright, description, groupLinks, foregroundColor, } = this;
66
66
  const small = this.isSmall();
@@ -84,12 +84,12 @@ const Footer = /*@__PURE__*/ proxyCustomElement(class Footer extends HTMLElement
84
84
  get el() { return this; }
85
85
  static get style() { return icFooterCss; }
86
86
  }, [1, "ic-footer", {
87
- "description": [1],
88
87
  "aligned": [1],
89
88
  "breakpoint": [1],
90
- "groupLinks": [4, "group-links"],
91
89
  "caption": [1],
92
90
  "copyright": [4],
91
+ "description": [1],
92
+ "groupLinks": [4, "group-links"],
93
93
  "deviceSize": [32],
94
94
  "foregroundColor": [32]
95
95
  }, [[4, "themeChange", "themeChangeHandler"]]]);
@@ -1 +1 @@
1
- {"file":"ic-footer.js","mappings":"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","names":[],"sources":["./src/components/ic-footer/ic-footer.css?tag=ic-footer&encapsulation=shadow","./src/components/ic-footer/ic-footer.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: block;\n\n --footer-compliance-padding: 1rem 0;\n}\n\n:host(.footer-sparse) {\n --footer-links-padding: 1.5rem 0;\n --footer-logo-margin-bottom: var(--ic-space-lg);\n --footer-link-inner-flex-direction: row;\n}\n\n:host(.footer-small) {\n --footer-links-padding: 0 0;\n --footer-logo-margin-bottom: var(--ic-space-md);\n --footer-link-inner-flex-direction: column;\n}\n\n:host(.footer-light) {\n --footer-theme-secondary: var(--ic-theme-secondary);\n --footer-theme-tertiary: var(--ic-theme-tertiary);\n --footer-keyline: var(--ic-keyline-lighten);\n}\n\n:host(.footer-dark) {\n --footer-theme-secondary: var(--ic-theme-secondary-light);\n --footer-theme-tertiary: var(--ic-theme-tertiary-light);\n --footer-keyline: var(--ic-keyline-darken);\n}\n\n:host(.footer-small.footer-ungrouped) {\n --footer-links-padding: var(--ic-space-md) 0 0 0;\n}\n\n/* Main inner footer element */\nfooter {\n display: flex;\n flex-direction: column;\n width: 100%;\n}\n\n/* Description */\n\n.footer-description {\n background-color: var(--footer-theme-secondary);\n color: var(--ic-theme-text);\n border-bottom: var(--footer-keyline);\n}\n\n.footer-description-inner {\n padding: 1rem 0;\n}\n\n/* Links */\n\n.footer-links {\n padding: var(--footer-links-padding);\n background-color: var(--footer-theme-secondary);\n color: var(--ic-theme-text);\n}\n\n.footer-links-inner {\n display: flex;\n flex-direction: var(--footer-link-inner-flex-direction);\n}\n\n/* Compliance */\n\n.footer-compliance {\n background-color: var(--footer-theme-tertiary);\n color: var(--ic-theme-text);\n}\n\n.footer-compliance-inner {\n padding: var(--footer-compliance-padding);\n}\n\n.footer-logo {\n margin-bottom: var(--footer-logo-margin-bottom);\n display: flex;\n gap: var(--ic-space-xxl);\n}\n\n.footer-logo > ::slotted() {\n margin-right: var(--ic-space-md);\n}\n\n.footer-caption {\n margin-bottom: var(--ic-space-md);\n}\n\n.classification-spacing {\n margin-bottom: var(--ic-space-lg);\n}\n\n@media (forced-colors: active) {\n footer {\n border-top: var(--ic-hc-border);\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Prop,\n State,\n h,\n Host,\n Listen,\n} from \"@stencil/core\";\nimport { IC_DEVICE_SIZES } from \"../../utils/constants\";\nimport {\n getCurrentDeviceSize,\n getThemeForegroundColor,\n checkResizeObserver,\n hasClassificationBanner,\n isSlotUsed,\n} from \"../../utils/helpers\";\nimport {\n IcAlignment,\n IcTheme,\n IcThemeForeground,\n IcThemeForegroundEnum,\n} from \"../../utils/types\";\nimport { IcFooterBreakpoints } from \"./ic-footer.types\";\n\n/**\n * @slot description - Content will be rendered at the top of the footer.\n * @slot link - Content will be rendered between description and logos.\n * @slot logo - Content will be rendered underneath footer links.\n * @slot caption - Content will be rendered above Crown Copyright.\n */\n\n@Component({\n tag: \"ic-footer\",\n styleUrl: \"ic-footer.css\",\n shadow: true,\n})\nexport class Footer {\n @Element() el: HTMLIcFooterElement;\n\n /**\n * @internal Triggers on page resize and triggers style changes in footer links and link groups\n */\n @Event() footerResized: EventEmitter<void>;\n\n /**\n * The description displayed at the top of the footer.\n */\n @Prop() description: string;\n\n /**\n * The alignment of the section containers used within the footer.\n */\n @Prop() aligned?: IcAlignment = \"left\";\n\n /**\n * The screen size breakpoint at which to switch to the small layout.\n */\n @Prop() breakpoint?: IcFooterBreakpoints = \"medium\";\n\n /**\n * If `true`, the footer will be set up to handle link groups instead of standalone links.\n */\n @Prop() groupLinks?: boolean = false;\n\n /**\n * The caption displayed at the bottom of the footer.\n */\n @Prop() caption: string;\n\n /**\n * If `true`, the footer will display the crown copyright at the bottom.\n */\n @Prop() copyright: boolean = true;\n\n @State() deviceSize: number = IC_DEVICE_SIZES.XL;\n\n @State() foregroundColor: IcThemeForeground = getThemeForegroundColor();\n\n private isSmall() {\n const bp = this.breakpoint;\n\n return bp === \"extra small\"\n ? this.deviceSize < IC_DEVICE_SIZES.XS\n : bp === \"small\"\n ? this.deviceSize < IC_DEVICE_SIZES.S\n : bp === \"medium\"\n ? this.deviceSize < IC_DEVICE_SIZES.M\n : bp === \"large\"\n ? this.deviceSize < IC_DEVICE_SIZES.L\n : bp === \"extra large\"\n ? this.deviceSize < IC_DEVICE_SIZES.XL\n : false;\n }\n\n @Listen(\"themeChange\", { target: \"document\" })\n themeChangeHandler(ev: CustomEvent): void {\n const theme: IcTheme = ev.detail;\n this.foregroundColor = theme.mode;\n }\n\n private resizeObserver: ResizeObserver;\n private footerEl: HTMLElement;\n\n private resizeObserverCallback = (currSize: number) => {\n if (currSize !== this.deviceSize) {\n this.deviceSize = currSize;\n }\n this.footerResized.emit();\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n const currSize = getCurrentDeviceSize();\n this.resizeObserverCallback(currSize);\n });\n\n this.resizeObserver.observe(this.footerEl);\n };\n\n componentWillLoad(): void {\n this.deviceSize = getCurrentDeviceSize();\n }\n\n componentDidLoad(): void {\n checkResizeObserver(this.runResizeObserver);\n }\n\n disconnectedCallback(): void {\n this.resizeObserver.disconnect();\n }\n\n render() {\n const {\n aligned,\n caption,\n copyright,\n description,\n groupLinks,\n foregroundColor,\n } = this;\n const small = this.isSmall();\n\n return (\n <Host\n class={{\n footer: true,\n [`footer-${small ? \"small\" : \"sparse\"}`]: true,\n [`footer-${groupLinks ? \"grouped\" : \"ungrouped\"}`]: true,\n [`footer-${foregroundColor}`]: true,\n // Slots will be able to infer their own color\n [IcThemeForegroundEnum.Dark]:\n foregroundColor === IcThemeForegroundEnum.Dark,\n [IcThemeForegroundEnum.Light]:\n foregroundColor === IcThemeForegroundEnum.Light,\n }}\n >\n <footer ref={(footerEl) => (this.footerEl = footerEl)}>\n {/* Description */}\n <div class=\"footer-description\">\n <ic-section-container aligned={aligned} fullHeight={true}>\n <div class=\"footer-description-inner\">\n <ic-typography variant=\"body\">\n <slot name=\"description\">{description}</slot>\n </ic-typography>\n </div>\n </ic-section-container>\n </div>\n\n {/* Links */}\n {isSlotUsed(this.el, \"link\") && (\n <div class=\"footer-links\">\n {groupLinks && small ? (\n <div class=\"footer-links-inner\">\n <slot name=\"link\" />\n </div>\n ) : (\n <ic-section-container fullHeight aligned={aligned}>\n <div class=\"footer-links-inner\">\n <slot name=\"link\" />\n </div>\n </ic-section-container>\n )}\n </div>\n )}\n\n {/* Compliance (logo, caption, copyright) */}\n <div class=\"footer-compliance\">\n <ic-section-container aligned={aligned} fullHeight={true}>\n <div class=\"footer-compliance-inner\">\n {isSlotUsed(this.el, \"logo\") && (\n <div class=\"footer-logo\">\n {/* Logo */}\n <slot name=\"logo\" />\n </div>\n )}\n {(isSlotUsed(this.el, \"caption\") || caption) && (\n <div class=\"footer-caption\">\n <ic-typography\n variant={\n this.deviceSize <= IC_DEVICE_SIZES.M\n ? \"caption\"\n : \"body\"\n }\n >\n <slot name=\"caption\">{caption}</slot>\n </ic-typography>\n </div>\n )}\n {copyright && (\n <div\n class={{\n [\"footer-copyright\"]: true,\n [\"classification-spacing\"]: hasClassificationBanner(),\n }}\n >\n <ic-typography\n variant={\n this.deviceSize <= IC_DEVICE_SIZES.M\n ? \"caption-uppercase\"\n : \"label-uppercase\"\n }\n >\n &copy; Crown Copyright\n </ic-typography>\n </div>\n )}\n </div>\n </ic-section-container>\n </div>\n </footer>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-footer.js","mappings":"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","names":[],"sources":["./src/components/ic-footer/ic-footer.css?tag=ic-footer&encapsulation=shadow","./src/components/ic-footer/ic-footer.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: block;\n\n --footer-compliance-padding: 1rem 0;\n}\n\n:host(.footer-sparse) {\n --footer-links-padding: 1.5rem 0;\n --footer-logo-margin-bottom: var(--ic-space-lg);\n --footer-link-inner-flex-direction: row;\n}\n\n:host(.footer-small) {\n --footer-links-padding: 0 0;\n --footer-logo-margin-bottom: var(--ic-space-md);\n --footer-link-inner-flex-direction: column;\n}\n\n:host(.footer-light) {\n --footer-theme-secondary: var(--ic-theme-secondary);\n --footer-theme-tertiary: var(--ic-theme-tertiary);\n --footer-keyline: var(--ic-keyline-lighten);\n}\n\n:host(.footer-dark) {\n --footer-theme-secondary: var(--ic-theme-secondary-light);\n --footer-theme-tertiary: var(--ic-theme-tertiary-light);\n --footer-keyline: var(--ic-keyline-darken);\n}\n\n:host(.footer-small.footer-ungrouped) {\n --footer-links-padding: var(--ic-space-md) 0 0 0;\n}\n\n/* Main inner footer element */\nfooter {\n display: flex;\n flex-direction: column;\n width: 100%;\n}\n\n/* Description */\n\n.footer-description {\n background-color: var(--footer-theme-secondary);\n color: var(--ic-theme-text);\n border-bottom: var(--footer-keyline);\n}\n\n.footer-description-inner {\n padding: 1rem 0;\n}\n\n/* Links */\n\n.footer-links {\n padding: var(--footer-links-padding);\n background-color: var(--footer-theme-secondary);\n color: var(--ic-theme-text);\n}\n\n.footer-links-inner {\n display: flex;\n flex-direction: var(--footer-link-inner-flex-direction);\n}\n\n/* Compliance */\n\n.footer-compliance {\n background-color: var(--footer-theme-tertiary);\n color: var(--ic-theme-text);\n}\n\n.footer-compliance-inner {\n padding: var(--footer-compliance-padding);\n}\n\n.footer-logo {\n margin-bottom: var(--footer-logo-margin-bottom);\n display: flex;\n gap: var(--ic-space-xxl);\n}\n\n.footer-logo > ::slotted() {\n margin-right: var(--ic-space-md);\n}\n\n.footer-caption {\n margin-bottom: var(--ic-space-md);\n}\n\n.classification-spacing {\n margin-bottom: var(--ic-space-lg);\n}\n\n@media (forced-colors: active) {\n footer {\n border-top: var(--ic-hc-border);\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Prop,\n State,\n h,\n Host,\n Listen,\n} from \"@stencil/core\";\nimport { IC_DEVICE_SIZES } from \"../../utils/constants\";\nimport {\n getCurrentDeviceSize,\n getThemeForegroundColor,\n checkResizeObserver,\n hasClassificationBanner,\n isSlotUsed,\n} from \"../../utils/helpers\";\nimport {\n IcAlignment,\n IcTheme,\n IcThemeForeground,\n IcThemeForegroundEnum,\n} from \"../../utils/types\";\nimport { IcFooterBreakpoints } from \"./ic-footer.types\";\n\n/**\n * @slot description - Content will be rendered at the top of the footer.\n * @slot link - Content will be rendered between description and logos.\n * @slot logo - Content will be rendered underneath footer links.\n * @slot caption - Content will be rendered above Crown Copyright.\n */\n\n@Component({\n tag: \"ic-footer\",\n styleUrl: \"ic-footer.css\",\n shadow: true,\n})\nexport class Footer {\n private footerEl: HTMLElement;\n private resizeObserver: ResizeObserver;\n\n @Element() el: HTMLIcFooterElement;\n\n @State() deviceSize: number = IC_DEVICE_SIZES.XL;\n @State() foregroundColor: IcThemeForeground = getThemeForegroundColor();\n\n /**\n * The alignment of the section containers used within the footer.\n */\n @Prop() aligned?: IcAlignment = \"left\";\n\n /**\n * The screen size breakpoint at which to switch to the small layout.\n */\n @Prop() breakpoint?: IcFooterBreakpoints = \"medium\";\n\n /**\n * The caption displayed at the bottom of the footer.\n */\n @Prop() caption: string;\n\n /**\n * If `true`, the footer will display the crown copyright at the bottom.\n */\n @Prop() copyright: boolean = true;\n\n /**\n * The description displayed at the top of the footer.\n */\n @Prop() description: string;\n\n /**\n * If `true`, the footer will be set up to handle link groups instead of standalone links.\n */\n @Prop() groupLinks?: boolean = false;\n\n /**\n * @internal Triggers on page resize and triggers style changes in footer links and link groups\n */\n @Event() footerResized: EventEmitter<void>;\n\n disconnectedCallback(): void {\n this.resizeObserver.disconnect();\n }\n\n componentWillLoad(): void {\n this.deviceSize = getCurrentDeviceSize();\n }\n\n componentDidLoad(): void {\n checkResizeObserver(this.runResizeObserver);\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 isSmall() {\n const bp = this.breakpoint;\n\n return bp === \"extra small\"\n ? this.deviceSize < IC_DEVICE_SIZES.XS\n : bp === \"small\"\n ? this.deviceSize < IC_DEVICE_SIZES.S\n : bp === \"medium\"\n ? this.deviceSize < IC_DEVICE_SIZES.M\n : bp === \"large\"\n ? this.deviceSize < IC_DEVICE_SIZES.L\n : bp === \"extra large\"\n ? this.deviceSize < IC_DEVICE_SIZES.XL\n : false;\n }\n\n private resizeObserverCallback = (currSize: number) => {\n if (currSize !== this.deviceSize) {\n this.deviceSize = currSize;\n }\n this.footerResized.emit();\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n const currSize = getCurrentDeviceSize();\n this.resizeObserverCallback(currSize);\n });\n\n this.resizeObserver.observe(this.footerEl);\n };\n\n render() {\n const {\n aligned,\n caption,\n copyright,\n description,\n groupLinks,\n foregroundColor,\n } = this;\n const small = this.isSmall();\n\n return (\n <Host\n class={{\n footer: true,\n [`footer-${small ? \"small\" : \"sparse\"}`]: true,\n [`footer-${groupLinks ? \"grouped\" : \"ungrouped\"}`]: true,\n [`footer-${foregroundColor}`]: true,\n // Slots will be able to infer their own color\n [IcThemeForegroundEnum.Dark]:\n foregroundColor === IcThemeForegroundEnum.Dark,\n [IcThemeForegroundEnum.Light]:\n foregroundColor === IcThemeForegroundEnum.Light,\n }}\n >\n <footer ref={(footerEl) => (this.footerEl = footerEl)}>\n {/* Description */}\n <div class=\"footer-description\">\n <ic-section-container aligned={aligned} fullHeight={true}>\n <div class=\"footer-description-inner\">\n <ic-typography variant=\"body\">\n <slot name=\"description\">{description}</slot>\n </ic-typography>\n </div>\n </ic-section-container>\n </div>\n\n {/* Links */}\n {isSlotUsed(this.el, \"link\") && (\n <div class=\"footer-links\">\n {groupLinks && small ? (\n <div class=\"footer-links-inner\">\n <slot name=\"link\" />\n </div>\n ) : (\n <ic-section-container fullHeight aligned={aligned}>\n <div class=\"footer-links-inner\">\n <slot name=\"link\" />\n </div>\n </ic-section-container>\n )}\n </div>\n )}\n\n {/* Compliance (logo, caption, copyright) */}\n <div class=\"footer-compliance\">\n <ic-section-container aligned={aligned} fullHeight={true}>\n <div class=\"footer-compliance-inner\">\n {isSlotUsed(this.el, \"logo\") && (\n <div class=\"footer-logo\">\n {/* Logo */}\n <slot name=\"logo\" />\n </div>\n )}\n {(isSlotUsed(this.el, \"caption\") || caption) && (\n <div class=\"footer-caption\">\n <ic-typography\n variant={\n this.deviceSize <= IC_DEVICE_SIZES.M\n ? \"caption\"\n : \"body\"\n }\n >\n <slot name=\"caption\">{caption}</slot>\n </ic-typography>\n </div>\n )}\n {copyright && (\n <div\n class={{\n [\"footer-copyright\"]: true,\n [\"classification-spacing\"]: hasClassificationBanner(),\n }}\n >\n <ic-typography\n variant={\n this.deviceSize <= IC_DEVICE_SIZES.M\n ? \"caption-uppercase\"\n : \"label-uppercase\"\n }\n >\n &copy; Crown Copyright\n </ic-typography>\n </div>\n )}\n </div>\n </ic-section-container>\n </div>\n </footer>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -11,19 +11,28 @@ const Hero = /*@__PURE__*/ proxyCustomElement(class Hero extends HTMLElement {
11
11
  super();
12
12
  this.__registerHost();
13
13
  this.__attachShadow();
14
+ this.foregroundColor = getThemeForegroundColor();
15
+ this.rightContent = false;
16
+ this.leftContentFullWidth = !this.rightContent && this.secondaryHeading === undefined;
17
+ this.scrollFactor = "right -100px";
18
+ this.aligned = "left";
19
+ this.backgroundImage = undefined;
20
+ this.contentAligned = "left";
21
+ this.disableBackgroundParallax = false;
14
22
  this.heading = undefined;
15
- this.subheading = undefined;
16
23
  this.secondaryHeading = undefined;
17
24
  this.secondarySubheading = undefined;
18
- this.backgroundImage = undefined;
19
- this.disableBackgroundParallax = false;
20
- this.aligned = "left";
21
- this.contentAligned = "left";
22
25
  this.small = false;
23
- this.rightContent = false;
24
- this.scrollFactor = "right -100px";
25
- this.leftContentFullWidth = !this.rightContent && this.secondaryHeading === undefined;
26
- this.foregroundColor = getThemeForegroundColor();
26
+ this.subheading = undefined;
27
+ }
28
+ componentWillLoad() {
29
+ this.rightContent = slotHasContent(this.el, "secondary");
30
+ }
31
+ componentDidLoad() {
32
+ onComponentRequiredPropUndefined([{ prop: this.heading, propName: "heading" }], "Hero");
33
+ }
34
+ componentWillRender() {
35
+ this.rightContent = slotHasContent(this.el, "secondary");
27
36
  }
28
37
  themeChangeHandler(ev) {
29
38
  const theme = ev.detail;
@@ -38,15 +47,6 @@ const Hero = /*@__PURE__*/ proxyCustomElement(class Hero extends HTMLElement {
38
47
  const y = -100 + scrolltotop * factor;
39
48
  this.scrollFactor = "right " + y + "px";
40
49
  }
41
- componentWillLoad() {
42
- this.rightContent = slotHasContent(this.el, "secondary");
43
- }
44
- componentDidLoad() {
45
- onComponentRequiredPropUndefined([{ prop: this.heading, propName: "heading" }], "Hero");
46
- }
47
- componentWillRender() {
48
- this.rightContent = slotHasContent(this.el, "secondary");
49
- }
50
50
  render() {
51
51
  const { aligned, small, heading, subheading, secondaryHeading, secondarySubheading, foregroundColor, backgroundImage, scrollFactor, } = this;
52
52
  let style = {};
@@ -69,19 +69,19 @@ const Hero = /*@__PURE__*/ proxyCustomElement(class Hero extends HTMLElement {
69
69
  get el() { return this; }
70
70
  static get style() { return icHeroCss; }
71
71
  }, [1, "ic-hero", {
72
+ "aligned": [1],
73
+ "backgroundImage": [1, "background-image"],
74
+ "contentAligned": [1, "content-aligned"],
75
+ "disableBackgroundParallax": [4, "disable-background-parallax"],
72
76
  "heading": [1],
73
- "subheading": [1],
74
77
  "secondaryHeading": [1, "secondary-heading"],
75
78
  "secondarySubheading": [1, "secondary-subheading"],
76
- "backgroundImage": [1, "background-image"],
77
- "disableBackgroundParallax": [4, "disable-background-parallax"],
78
- "aligned": [1],
79
- "contentAligned": [1, "content-aligned"],
80
79
  "small": [4],
80
+ "subheading": [1],
81
+ "foregroundColor": [32],
81
82
  "rightContent": [32],
82
- "scrollFactor": [32],
83
83
  "leftContentFullWidth": [32],
84
- "foregroundColor": [32]
84
+ "scrollFactor": [32]
85
85
  }, [[4, "themeChange", "themeChangeHandler"], [5, "scroll", "doScroll"]]]);
86
86
  function defineCustomElement$1() {
87
87
  if (typeof customElements === "undefined") {
@@ -1 +1 @@
1
- {"file":"ic-hero.js","mappings":"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","names":[],"sources":["./src/components/ic-hero/ic-hero.css?tag=ic-hero&encapsulation=shadow","./src/components/ic-hero/ic-hero.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: block;\n background-color: var(--ic-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 flex-wrap: wrap;\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 [\"small\"]: small,\n [\"secondary-heading\"]: !!secondaryHeading,\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"],"version":3}
1
+ {"file":"ic-hero.js","mappings":";;;;;;AAAA,MAAM,SAAS,GAAG,w1MAAw1M;;MCkC71M,IAAI;;;;;2BAG+B,uBAAuB,EAAE;wBACtC,KAAK;gCAGpC,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS;wBAC3B,cAAc;mBAKf,MAAM;;0BAUa,MAAM;qCAKV,KAAK;;;;iBAoB1B,KAAK;;;EAO9B,iBAAiB;IACf,IAAI,CAAC,YAAY,GAAG,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;GAC1D;EAED,gBAAgB;IACd,gCAAgC,CAC9B,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAC7C,MAAM,CACP,CAAC;GACH;EAED,mBAAmB;IACjB,IAAI,CAAC,YAAY,GAAG,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;GAC1D;EAGD,kBAAkB,CAAC,EAAe;IAChC,MAAM,KAAK,GAAY,EAAE,CAAC,MAAM,CAAC;IACjC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC;GACnC;EAGD,QAAQ;IACN,IAAI,IAAI,CAAC,yBAAyB,EAAE;MAClC,OAAO;KACR;IAED,MAAM,WAAW,GAAG,QAAQ,CAAC,gBAAgB,CAAC,SAAS,CAAC;IACxD,MAAM,MAAM,GAAG,GAAG,CAAC;IACnB,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,WAAW,GAAG,MAAM,CAAC;IACtC,IAAI,CAAC,YAAY,GAAG,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC;GACzC;EAED,MAAM;IACJ,MAAM,EACJ,OAAO,EACP,KAAK,EACL,OAAO,EACP,UAAU,EACV,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,eAAe,EACf,YAAY,GACb,GAAG,IAAI,CAAC;IAET,IAAI,KAAK,GAAG,EAAE,CAAC;IAEf,IAAI,eAAe,KAAK,SAAS,EAAE;MACjC,KAAK,GAAG;QACN,kBAAkB,EAAE,MAAM,GAAG,eAAe,GAAG,GAAG;QAClD,qBAAqB,EAAE,YAAY;OACpC,CAAC;KACH;IAED,QACE,EAAC,IAAI,IACH,KAAK,EAAE;QACL,CAAC,qBAAqB,CAAC,IAAI,GACzB,eAAe,KAAK,qBAAqB,CAAC,IAAI;QAChD,CAAC,sBAAsB,GAAG,eAAe,KAAK,SAAS;QACvD,CAAC,OAAO,GAAG,KAAK;QAChB,CAAC,mBAAmB,GAAG,CAAC,CAAC,gBAAgB;OAC1C,EACD,KAAK,EAAE,KAAK,IAEZ,4BACE,OAAO,EAAE,OAAO,EAChB,UAAU,QACV,KAAK,EAAC,mBAAmB,IAEzB,WACE,KAAK,EAAE;QACL,CAAC,gBAAgB,GAAG,IAAI;QACxB,CAAC,2BAA2B,GAAG,IAAI,CAAC,oBAAoB;OACzD,IAED,WAAK,KAAK,EAAC,SAAS,IAClB,YAAM,IAAI,EAAC,SAAS,IAClB,qBACE,OAAO,EAAE,KAAK,GAAG,IAAI,GAAG,IAAI,EAC5B,KAAK,EAAE,EAAE,CAAC,wBAAwB,GAAG,CAAC,KAAK,EAAE,IAE5C,OAAO,CACM,CACX,CACH,EACN,WAAK,KAAK,EAAC,YAAY,IACrB,YAAM,IAAI,EAAC,YAAY,IACrB,qBAAe,OAAO,EAAC,MAAM,IAAE,UAAU,CAAiB,CACrD,CACH,EACN,WAAK,KAAK,EAAC,uBAAuB,IAChC,YAAM,IAAI,EAAC,aAAa,GAAQ,CAC5B,CACF,EACL,CAAC,gBAAgB,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,MACnD,WAAK,KAAK,EAAC,iBAAiB,IAC1B,YAAM,IAAI,EAAC,WAAW,IACnB,gBAAgB,KACf,WAAK,KAAK,EAAC,qBAAqB,IAC9B,WAAK,KAAK,EAAC,mBAAmB,IAC5B,qBAAe,OAAO,EAAC,IAAI,IACxB,gBAAgB,CACH,CACZ,EACN,WAAK,KAAK,EAAC,sBAAsB,IAC/B,qBAAe,OAAO,EAAC,gBAAgB,IACpC,mBAAmB,CACN,CACZ,CACF,CACP,CACI,CACH,CACP,CACoB,CAClB,EACP;GACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["./src/components/ic-hero/ic-hero.css?tag=ic-hero&encapsulation=shadow","./src/components/ic-hero/ic-hero.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: block;\n background-color: var(--ic-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 flex-wrap: wrap;\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 @State() foregroundColor: IcThemeForeground = getThemeForegroundColor();\n @State() rightContent: boolean = false;\n // set by above state\n @State() leftContentFullWidth: boolean =\n !this.rightContent && this.secondaryHeading === undefined;\n @State() scrollFactor: string = \"right -100px\";\n\n /**\n * The alignment of the hero.\n */\n @Prop() aligned: IcAlignment = \"left\";\n\n /**\n * The optional background image.\n */\n @Prop() backgroundImage?: string;\n\n /**\n * The alignment of the hero content.\n */\n @Prop() contentAligned: IcHeroContentAlignments = \"left\";\n\n /**\n * If `true`, the background image (if set) will not scroll using a parallax effect.\n */\n @Prop() disableBackgroundParallax?: boolean = false;\n\n /**\n * The heading of the hero.\n */\n @Prop() heading!: 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 * If `true`, the small styling will be applied to the hero.\n */\n @Prop() small: boolean = false;\n\n /**\n * The description for the hero.\n */\n @Prop() subheading?: string;\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 @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 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 [\"small\"]: small,\n [\"secondary-heading\"]: !!secondaryHeading,\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"],"version":3}
@@ -23,6 +23,9 @@ const HorizontalScroll = /*@__PURE__*/ proxyCustomElement(class HorizontalScroll
23
23
  this.__registerHost();
24
24
  this.__attachShadow();
25
25
  this.buttonStateSet = false;
26
+ this.focusHandler = (event) => {
27
+ this.itemFocusHandler(Array.from(this.items).indexOf(event.target));
28
+ };
26
29
  this.resizeObserverCallback = () => {
27
30
  if (this.el.clientWidth >= this.itemsContainerEl.scrollWidth) {
28
31
  this.itemOverflow = false;
@@ -88,27 +91,10 @@ const HorizontalScroll = /*@__PURE__*/ proxyCustomElement(class HorizontalScroll
88
91
  }
89
92
  this.buttonStateSet = false;
90
93
  };
91
- this.appearance = "default";
92
94
  this.firstItemVisible = true;
93
- this.lastItemVisible = false;
94
95
  this.itemOverflow = false;
95
- }
96
- /**
97
- * @internal if side scrolling enabled, scrolls the specified item into view.
98
- */
99
- async scrollItemIntoView(itemPosition) {
100
- this.firstItemVisible = itemPosition <= 0;
101
- const newScrollPos = itemPosition <= 0 ? 0 : this.itemOffsets[itemPosition - 1];
102
- this.lastItemVisible =
103
- this.itemsContainerEl.offsetWidth + newScrollPos >=
104
- this.itemsContainerEl.scrollWidth;
105
- this.buttonStateSet = true;
106
- this.itemsContainerEl.scrollLeft = newScrollPos;
107
- }
108
- itemFocusHandler(itemPosition) {
109
- if (this.itemOverflow) {
110
- this.scrollItemIntoView(itemPosition);
111
- }
96
+ this.lastItemVisible = false;
97
+ this.appearance = "default";
112
98
  }
113
99
  componentWillLoad() {
114
100
  this.itemsContainerEl = this.el.children[0];
@@ -117,7 +103,7 @@ const HorizontalScroll = /*@__PURE__*/ proxyCustomElement(class HorizontalScroll
117
103
  Array.from(this.itemsContainerEl.children));
118
104
  this.items.forEach((item) => {
119
105
  if (item.addEventListener) {
120
- item.addEventListener("focus", () => this.itemFocusHandler(Array.from(this.items).indexOf(item)));
106
+ item.addEventListener("focus", this.focusHandler);
121
107
  }
122
108
  });
123
109
  }
@@ -140,6 +126,33 @@ const HorizontalScroll = /*@__PURE__*/ proxyCustomElement(class HorizontalScroll
140
126
  if (this.resizeObserver !== undefined) {
141
127
  this.resizeObserver.disconnect();
142
128
  }
129
+ const scrollArrows = Array.from(this.el.shadowRoot.querySelectorAll("div"));
130
+ ["mouseup", "mouseleave"].forEach((event) => {
131
+ scrollArrows.forEach((arrow) => arrow.removeEventListener(event, this.arrowMouseUpHandler));
132
+ });
133
+ this.items.forEach((item) => {
134
+ if (item.removeEventListener) {
135
+ item.removeEventListener("focus", this.focusHandler);
136
+ }
137
+ });
138
+ this.itemsContainerEl.removeEventListener("scroll", this.scrollHandler);
139
+ }
140
+ /**
141
+ * @internal if side scrolling enabled, scrolls the specified item into view.
142
+ */
143
+ async scrollItemIntoView(itemPosition) {
144
+ this.firstItemVisible = itemPosition <= 0;
145
+ const newScrollPos = itemPosition <= 0 ? 0 : this.itemOffsets[itemPosition - 1];
146
+ this.lastItemVisible =
147
+ this.itemsContainerEl.offsetWidth + newScrollPos >=
148
+ this.itemsContainerEl.scrollWidth;
149
+ this.buttonStateSet = true;
150
+ this.itemsContainerEl.scrollLeft = newScrollPos;
151
+ }
152
+ itemFocusHandler(itemPosition) {
153
+ if (this.itemOverflow) {
154
+ this.scrollItemIntoView(itemPosition);
155
+ }
143
156
  }
144
157
  render() {
145
158
  const { appearance, firstItemVisible, lastItemVisible, itemOverflow } = this;
@@ -162,8 +175,8 @@ const HorizontalScroll = /*@__PURE__*/ proxyCustomElement(class HorizontalScroll
162
175
  }, [1, "ic-horizontal-scroll", {
163
176
  "appearance": [1],
164
177
  "firstItemVisible": [32],
165
- "lastItemVisible": [32],
166
178
  "itemOverflow": [32],
179
+ "lastItemVisible": [32],
167
180
  "scrollItemIntoView": [64]
168
181
  }]);
169
182
  function defineCustomElement() {
@@ -1 +1 @@
1
- {"file":"ic-horizontal-scroll2.js","mappings":"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","names":[],"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"],"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/* 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: var(--ic-space-1px);\n margin-top: var(--ic-space-xs);\n border-radius: var(--ic-space-1px);\n background-color: var(--splitter-color);\n}\n\n.scroll-splitter-left {\n margin-left: calc(var(--ic-space-xxs) - var(--ic-space-1px));\n}\n\n.scroll-splitter-right {\n margin-right: calc(var(--ic-space-xxs) - var(--ic-space-1px));\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 if (item.addEventListener) {\n item.addEventListener(\"focus\", () =>\n this.itemFocusHandler(Array.from(this.items).indexOf(item))\n );\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 if (this.resizeObserver !== undefined) {\n this.resizeObserver.disconnect();\n }\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"],"version":3}
1
+ {"file":"ic-horizontal-scroll2.js","mappings":"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","names":[],"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"],"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/* 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: var(--ic-space-1px);\n margin-top: var(--ic-space-xs);\n border-radius: var(--ic-space-1px);\n background-color: var(--splitter-color);\n}\n\n.scroll-splitter-left {\n margin-left: calc(var(--ic-space-xxs) - var(--ic-space-1px));\n}\n\n.scroll-splitter-right {\n margin-right: calc(var(--ic-space-xxs) - var(--ic-space-1px));\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 private buttonStateSet: boolean = false;\n private isScrolling: number;\n private itemOffsets: number[];\n private items: HTMLElement[];\n private itemsContainerEl: HTMLElement;\n private resizeObserver: ResizeObserver;\n private scrollDelay: number;\n\n @Element() el: HTMLIcHorizontalScrollElement;\n\n @State() firstItemVisible: boolean = true;\n @State() itemOverflow: boolean = false;\n @State() lastItemVisible: boolean = false;\n\n /**\n * The appearance of the horizontal scroll, e.g. dark, light or the default.\n */\n @Prop() appearance?: IcThemeForeground = \"default\";\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 if (item.addEventListener) {\n item.addEventListener(\"focus\", this.focusHandler);\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 if (this.resizeObserver !== undefined) {\n this.resizeObserver.disconnect();\n }\n\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.removeEventListener(event, this.arrowMouseUpHandler)\n );\n });\n\n this.items.forEach((item) => {\n if (item.removeEventListener) {\n item.removeEventListener(\"focus\", this.focusHandler);\n }\n });\n\n this.itemsContainerEl.removeEventListener(\"scroll\", this.scrollHandler);\n }\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 private focusHandler = (event: FocusEvent) => {\n this.itemFocusHandler(\n Array.from(this.items).indexOf(event.target as HTMLElement)\n );\n };\n\n private 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 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"],"version":3}