@ukic/web-components 2.1.0-beta.1 → 2.1.0-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (502) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/ic-alert.cjs.entry.js +2 -0
  3. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  4. package/dist/cjs/ic-back-to-top.cjs.entry.js +18 -8
  5. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  6. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  7. package/dist/cjs/ic-breadcrumb.cjs.entry.js +1 -1
  8. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ic-button_3.cjs.entry.js +29 -11
  10. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ic-card.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  13. package/dist/cjs/ic-checkbox.cjs.entry.js +2 -0
  14. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ic-chip.cjs.entry.js +66 -0
  16. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -0
  17. package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ic-data-entity.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ic-data-row.cjs.entry.js +1 -1
  20. package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  22. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  23. package/dist/cjs/ic-footer-link.cjs.entry.js +1 -1
  24. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-footer.cjs.entry.js +2 -2
  26. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  28. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +19 -18
  29. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  30. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  31. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  32. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  33. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  34. package/dist/cjs/ic-navigation-item.cjs.entry.js +2 -2
  35. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  36. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  37. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  38. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  39. package/dist/cjs/ic-radio-option.cjs.entry.js +10 -1
  40. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  41. package/dist/cjs/ic-search-bar.cjs.entry.js +16 -2
  42. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  43. package/dist/cjs/ic-section-container.cjs.entry.js.map +1 -1
  44. package/dist/cjs/ic-select.cjs.entry.js +2 -7
  45. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ic-side-navigation.cjs.entry.js +8 -4
  47. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  48. package/dist/cjs/ic-skeleton.cjs.entry.js +1 -1
  49. package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
  50. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  51. package/dist/cjs/ic-step.cjs.entry.js +101 -13
  52. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ic-stepper.cjs.entry.js +161 -40
  54. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  55. package/dist/cjs/ic-switch.cjs.entry.js +1 -1
  56. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  57. package/dist/cjs/ic-tab-context.cjs.entry.js +6 -1
  58. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  59. package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  61. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  62. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  63. package/dist/cjs/ic-theme.cjs.entry.js +2 -2
  64. package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
  65. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  66. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  67. package/dist/cjs/index-3ef30d9d.js +4 -0
  68. package/dist/cjs/loader.cjs.js +1 -1
  69. package/dist/collection/assets/dismiss-icon.svg +3 -0
  70. package/dist/collection/assets/warning-icon-outline.svg +3 -0
  71. package/dist/collection/collection-manifest.json +1 -0
  72. package/dist/collection/components/ic-alert/ic-alert.js +27 -8
  73. package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
  74. package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +1 -1
  75. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +17 -7
  76. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js.map +1 -1
  77. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.css +1 -1
  78. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +4 -4
  79. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js.map +1 -1
  80. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js +2 -2
  81. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js.map +1 -1
  82. package/dist/collection/components/ic-button/ic-button.js +13 -13
  83. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  84. package/dist/collection/components/ic-card/ic-card.js +10 -10
  85. package/dist/collection/components/ic-card/ic-card.js.map +1 -1
  86. package/dist/collection/components/ic-checkbox/ic-checkbox.js +29 -10
  87. package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
  88. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +10 -10
  89. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  90. package/dist/collection/components/ic-chip/ic-chip.css +595 -0
  91. package/dist/collection/components/ic-chip/ic-chip.js +199 -0
  92. package/dist/collection/components/ic-chip/ic-chip.js.map +1 -0
  93. package/dist/collection/components/ic-chip/ic-chip.test.a11y.js +11 -0
  94. package/dist/collection/components/ic-chip/ic-chip.test.a11y.js.map +1 -0
  95. package/dist/collection/components/ic-chip/ic-chip.types.js +2 -0
  96. package/dist/collection/components/ic-chip/ic-chip.types.js.map +1 -0
  97. package/dist/collection/components/ic-classification-banner/ic-classification-banner.js +5 -5
  98. package/dist/collection/components/ic-classification-banner/ic-classification-banner.js.map +1 -1
  99. package/dist/collection/components/ic-data-entity/ic-data-entity.js +2 -2
  100. package/dist/collection/components/ic-data-entity/ic-data-entity.js.map +1 -1
  101. package/dist/collection/components/ic-data-row/ic-data-row.css +12 -0
  102. package/dist/collection/components/ic-data-row/ic-data-row.js +3 -3
  103. package/dist/collection/components/ic-data-row/ic-data-row.js.map +1 -1
  104. package/dist/collection/components/ic-divider/ic-divider.js +1 -1
  105. package/dist/collection/components/ic-divider/ic-divider.js.map +1 -1
  106. package/dist/collection/components/ic-footer/ic-footer.js +19 -16
  107. package/dist/collection/components/ic-footer/ic-footer.js.map +1 -1
  108. package/dist/collection/components/ic-footer-link/ic-footer-link.css +7 -1
  109. package/dist/collection/components/ic-footer-link/ic-footer-link.js +2 -2
  110. package/dist/collection/components/ic-footer-link/ic-footer-link.js.map +1 -1
  111. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js +3 -3
  112. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js.map +1 -1
  113. package/dist/collection/components/ic-hero/ic-hero.js +10 -10
  114. package/dist/collection/components/ic-hero/ic-hero.js.map +1 -1
  115. package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +0 -2
  116. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +8 -8
  117. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js.map +1 -1
  118. package/dist/collection/components/ic-input-container/ic-input-container.js +2 -2
  119. package/dist/collection/components/ic-input-container/ic-input-container.js.map +1 -1
  120. package/dist/collection/components/ic-input-label/ic-input-label.js +8 -8
  121. package/dist/collection/components/ic-input-label/ic-input-label.js.map +1 -1
  122. package/dist/collection/components/ic-input-validation/ic-input-validation.js +5 -5
  123. package/dist/collection/components/ic-input-validation/ic-input-validation.js.map +1 -1
  124. package/dist/collection/components/ic-link/ic-link.js +7 -7
  125. package/dist/collection/components/ic-link/ic-link.js.map +1 -1
  126. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.css +38 -2
  127. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +45 -9
  128. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js.map +1 -1
  129. package/dist/collection/components/ic-menu/ic-menu.css +1 -1
  130. package/dist/collection/components/ic-menu/ic-menu.js +35 -31
  131. package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
  132. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +5 -5
  133. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -1
  134. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +4 -4
  135. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
  136. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +10 -10
  137. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
  138. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +3 -3
  139. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js.map +1 -1
  140. package/dist/collection/components/ic-page-header/ic-page-header.css +1 -0
  141. package/dist/collection/components/ic-page-header/ic-page-header.js +8 -8
  142. package/dist/collection/components/ic-page-header/ic-page-header.js.map +1 -1
  143. package/dist/collection/components/ic-radio-group/ic-radio-group.js +10 -10
  144. package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
  145. package/dist/collection/components/ic-radio-option/ic-radio-option.js +34 -17
  146. package/dist/collection/components/ic-radio-option/ic-radio-option.js.map +1 -1
  147. package/dist/collection/components/ic-search-bar/ic-search-bar.js +51 -30
  148. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  149. package/dist/collection/components/ic-section-container/ic-section-container.js +2 -2
  150. package/dist/collection/components/ic-section-container/ic-section-container.js.map +1 -1
  151. package/dist/collection/components/ic-select/ic-select.css +1 -1
  152. package/dist/collection/components/ic-select/ic-select.js +19 -24
  153. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  154. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +5 -13
  155. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +24 -17
  156. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  157. package/dist/collection/components/ic-skeleton/ic-skeleton.css +1 -1
  158. package/dist/collection/components/ic-skeleton/ic-skeleton.js +2 -2
  159. package/dist/collection/components/ic-skeleton/ic-skeleton.js.map +1 -1
  160. package/dist/collection/components/ic-status-tag/ic-status-tag.js +1 -1
  161. package/dist/collection/components/ic-status-tag/ic-status-tag.js.map +1 -1
  162. package/dist/collection/components/ic-step/ic-step.css +120 -24
  163. package/dist/collection/components/ic-step/ic-step.js +269 -28
  164. package/dist/collection/components/ic-step/ic-step.js.map +1 -1
  165. package/dist/collection/components/ic-step/ic-step.types.js.map +1 -1
  166. package/dist/collection/components/ic-stepper/ic-stepper-test-examples.js +74 -0
  167. package/dist/collection/components/ic-stepper/ic-stepper-test-examples.js.map +1 -0
  168. package/dist/collection/components/ic-stepper/ic-stepper.css +15 -1
  169. package/dist/collection/components/ic-stepper/ic-stepper.js +206 -39
  170. package/dist/collection/components/ic-stepper/ic-stepper.js.map +1 -1
  171. package/dist/collection/components/ic-stepper/ic-stepper.test.a11y.js +13 -1
  172. package/dist/collection/components/ic-stepper/ic-stepper.test.a11y.js.map +1 -1
  173. package/dist/collection/components/ic-switch/ic-switch.css +1 -1
  174. package/dist/collection/components/ic-switch/ic-switch.js +7 -7
  175. package/dist/collection/components/ic-switch/ic-switch.js.map +1 -1
  176. package/dist/collection/components/ic-tab/ic-tab.js +9 -6
  177. package/dist/collection/components/ic-tab/ic-tab.js.map +1 -1
  178. package/dist/collection/components/ic-tab-context/ic-tab-context.js +31 -4
  179. package/dist/collection/components/ic-tab-context/ic-tab-context.js.map +1 -1
  180. package/dist/collection/components/ic-tab-group/ic-tab-group.js +4 -4
  181. package/dist/collection/components/ic-tab-group/ic-tab-group.js.map +1 -1
  182. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +2 -2
  183. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js.map +1 -1
  184. package/dist/collection/components/ic-text-field/ic-text-field.js +28 -28
  185. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  186. package/dist/collection/components/ic-theme/ic-theme.js +9 -6
  187. package/dist/collection/components/ic-theme/ic-theme.js.map +1 -1
  188. package/dist/collection/components/ic-tooltip/ic-tooltip.css +1 -1
  189. package/dist/collection/components/ic-tooltip/ic-tooltip.js +22 -1
  190. package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
  191. package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +1 -1
  192. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +7 -7
  193. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
  194. package/dist/collection/components/ic-typography/ic-typography.js +1 -1
  195. package/dist/collection/components/ic-typography/ic-typography.js.map +1 -1
  196. package/dist/collection/testspec.setup.js +8 -0
  197. package/dist/collection/testspec.setup.js.map +1 -1
  198. package/dist/components/ic-alert.js +3 -1
  199. package/dist/components/ic-alert.js.map +1 -1
  200. package/dist/components/ic-back-to-top.js +18 -8
  201. package/dist/components/ic-back-to-top.js.map +1 -1
  202. package/dist/components/ic-breadcrumb-group.js.map +1 -1
  203. package/dist/components/ic-breadcrumb2.js +1 -1
  204. package/dist/components/ic-breadcrumb2.js.map +1 -1
  205. package/dist/components/ic-button2.js +3 -3
  206. package/dist/components/ic-button2.js.map +1 -1
  207. package/dist/components/ic-card.js +1 -1
  208. package/dist/components/ic-card.js.map +1 -1
  209. package/dist/components/ic-checkbox-group.js +1 -1
  210. package/dist/components/ic-checkbox-group.js.map +1 -1
  211. package/dist/components/ic-checkbox.js +2 -0
  212. package/dist/components/ic-checkbox.js.map +1 -1
  213. package/dist/components/ic-chip.d.ts +11 -0
  214. package/dist/components/ic-chip.js +99 -0
  215. package/dist/components/ic-chip.js.map +1 -0
  216. package/dist/components/ic-classification-banner.js.map +1 -1
  217. package/dist/components/ic-data-entity.js.map +1 -1
  218. package/dist/components/ic-data-row.js +1 -1
  219. package/dist/components/ic-data-row.js.map +1 -1
  220. package/dist/components/ic-divider2.js +1 -1
  221. package/dist/components/ic-divider2.js.map +1 -1
  222. package/dist/components/ic-footer-link-group.js +1 -1
  223. package/dist/components/ic-footer-link-group.js.map +1 -1
  224. package/dist/components/ic-footer-link.js +2 -2
  225. package/dist/components/ic-footer-link.js.map +1 -1
  226. package/dist/components/ic-footer.js +3 -3
  227. package/dist/components/ic-footer.js.map +1 -1
  228. package/dist/components/ic-hero.js +1 -1
  229. package/dist/components/ic-hero.js.map +1 -1
  230. package/dist/components/ic-input-component-container2.js +1 -1
  231. package/dist/components/ic-input-component-container2.js.map +1 -1
  232. package/dist/components/ic-input-container2.js.map +1 -1
  233. package/dist/components/ic-input-label2.js.map +1 -1
  234. package/dist/components/ic-input-validation2.js.map +1 -1
  235. package/dist/components/ic-link2.js +1 -1
  236. package/dist/components/ic-link2.js.map +1 -1
  237. package/dist/components/ic-loading-indicator2.js +24 -7
  238. package/dist/components/ic-loading-indicator2.js.map +1 -1
  239. package/dist/components/ic-menu2.js +18 -17
  240. package/dist/components/ic-menu2.js.map +1 -1
  241. package/dist/components/ic-navigation-button.js +1 -1
  242. package/dist/components/ic-navigation-button.js.map +1 -1
  243. package/dist/components/ic-navigation-group.js +1 -1
  244. package/dist/components/ic-navigation-group.js.map +1 -1
  245. package/dist/components/ic-navigation-item.js +3 -3
  246. package/dist/components/ic-navigation-item.js.map +1 -1
  247. package/dist/components/ic-navigation-menu2.js +1 -1
  248. package/dist/components/ic-navigation-menu2.js.map +1 -1
  249. package/dist/components/ic-page-header.js.map +1 -1
  250. package/dist/components/ic-radio-group.js +1 -1
  251. package/dist/components/ic-radio-group.js.map +1 -1
  252. package/dist/components/ic-radio-option.js +10 -1
  253. package/dist/components/ic-radio-option.js.map +1 -1
  254. package/dist/components/ic-search-bar.js +18 -3
  255. package/dist/components/ic-search-bar.js.map +1 -1
  256. package/dist/components/ic-section-container2.js.map +1 -1
  257. package/dist/components/ic-select.js +2 -7
  258. package/dist/components/ic-select.js.map +1 -1
  259. package/dist/components/ic-side-navigation.js +9 -5
  260. package/dist/components/ic-side-navigation.js.map +1 -1
  261. package/dist/components/ic-skeleton.js +1 -1
  262. package/dist/components/ic-skeleton.js.map +1 -1
  263. package/dist/components/ic-status-tag.js.map +1 -1
  264. package/dist/components/ic-step.js +117 -16
  265. package/dist/components/ic-step.js.map +1 -1
  266. package/dist/components/ic-stepper.js +169 -41
  267. package/dist/components/ic-stepper.js.map +1 -1
  268. package/dist/components/ic-switch.js +1 -1
  269. package/dist/components/ic-switch.js.map +1 -1
  270. package/dist/components/ic-tab-context.js +6 -1
  271. package/dist/components/ic-tab-context.js.map +1 -1
  272. package/dist/components/ic-tab-group.js.map +1 -1
  273. package/dist/components/ic-tab-panel.js.map +1 -1
  274. package/dist/components/ic-tab.js.map +1 -1
  275. package/dist/components/ic-text-field2.js +2 -2
  276. package/dist/components/ic-text-field2.js.map +1 -1
  277. package/dist/components/ic-theme.js +2 -2
  278. package/dist/components/ic-theme.js.map +1 -1
  279. package/dist/components/ic-tooltip2.js +7 -3
  280. package/dist/components/ic-tooltip2.js.map +1 -1
  281. package/dist/components/ic-top-navigation.js +1 -1
  282. package/dist/components/ic-top-navigation.js.map +1 -1
  283. package/dist/components/ic-typography2.js.map +1 -1
  284. package/dist/components/index.d.ts +2 -1
  285. package/dist/components/index.js +1 -0
  286. package/dist/components/index.js.map +1 -1
  287. package/dist/core/core.esm.js +1 -1
  288. package/dist/core/core.esm.js.map +1 -1
  289. package/dist/core/p-0118400b.entry.js.map +1 -1
  290. package/dist/core/p-07cd789d.entry.js.map +1 -1
  291. package/dist/core/p-0b125f26.entry.js.map +1 -1
  292. package/dist/core/p-0d77bd0c.entry.js +2 -0
  293. package/dist/core/p-0d77bd0c.entry.js.map +1 -0
  294. package/dist/core/p-10da19d2.entry.js.map +1 -1
  295. package/dist/core/p-272c7abd.entry.js.map +1 -1
  296. package/dist/core/p-2b5c9143.entry.js +2 -0
  297. package/dist/core/p-2b5c9143.entry.js.map +1 -0
  298. package/dist/core/p-2f114521.entry.js.map +1 -1
  299. package/dist/core/p-31a8595f.entry.js.map +1 -1
  300. package/dist/core/{p-7b39977f.entry.js → p-3a068a45.entry.js} +2 -2
  301. package/dist/core/p-3a068a45.entry.js.map +1 -0
  302. package/dist/core/{p-e590f1d2.entry.js → p-4c72f3a9.entry.js} +2 -2
  303. package/dist/core/{p-e590f1d2.entry.js.map → p-4c72f3a9.entry.js.map} +1 -1
  304. package/dist/core/{p-ae81dffa.entry.js → p-5831bb8e.entry.js} +2 -2
  305. package/dist/core/p-5831bb8e.entry.js.map +1 -0
  306. package/dist/core/p-5d76bbad.entry.js +2 -0
  307. package/dist/core/p-5d76bbad.entry.js.map +1 -0
  308. package/dist/core/p-5e261268.entry.js.map +1 -1
  309. package/dist/core/p-60ffb73e.entry.js.map +1 -1
  310. package/dist/core/p-6308f1f2.entry.js +2 -0
  311. package/dist/core/p-6308f1f2.entry.js.map +1 -0
  312. package/dist/core/{p-c6dd4f47.entry.js → p-66f3f02b.entry.js} +2 -2
  313. package/dist/core/p-66f3f02b.entry.js.map +1 -0
  314. package/dist/core/p-69650186.entry.js.map +1 -1
  315. package/dist/core/p-6b34d98f.entry.js.map +1 -1
  316. package/dist/core/p-6be5e06b.entry.js.map +1 -1
  317. package/dist/core/p-6d0eaaeb.entry.js.map +1 -1
  318. package/dist/core/p-6f6bd657.entry.js.map +1 -1
  319. package/dist/core/{p-1337db5e.entry.js → p-6fba90ee.entry.js} +2 -2
  320. package/dist/core/p-6fba90ee.entry.js.map +1 -0
  321. package/dist/core/{p-558552f8.entry.js → p-7881b94e.entry.js} +2 -2
  322. package/dist/core/p-7881b94e.entry.js.map +1 -0
  323. package/dist/core/{p-8ddeb574.entry.js → p-7f04e382.entry.js} +2 -2
  324. package/dist/core/{p-8ddeb574.entry.js.map → p-7f04e382.entry.js.map} +1 -1
  325. package/dist/core/p-7f632414.entry.js.map +1 -1
  326. package/dist/core/p-80cd0a2d.entry.js +2 -0
  327. package/dist/core/p-80cd0a2d.entry.js.map +1 -0
  328. package/dist/core/{p-df5caf13.entry.js → p-8144e941.entry.js} +2 -2
  329. package/dist/core/p-8144e941.entry.js.map +1 -0
  330. package/dist/core/p-9cd04875.entry.js.map +1 -1
  331. package/dist/core/p-9e684c58.entry.js +2 -0
  332. package/dist/core/p-9e684c58.entry.js.map +1 -0
  333. package/dist/core/{p-02799e26.entry.js → p-a2d3e955.entry.js} +2 -2
  334. package/dist/core/{p-02799e26.entry.js.map → p-a2d3e955.entry.js.map} +1 -1
  335. package/dist/core/{p-1721bcf3.entry.js → p-b24145f7.entry.js} +2 -2
  336. package/dist/core/p-b24145f7.entry.js.map +1 -0
  337. package/dist/core/p-b3dec76d.entry.js.map +1 -1
  338. package/dist/core/{p-347ec49e.entry.js → p-bf89bcd3.entry.js} +2 -2
  339. package/dist/core/p-bf89bcd3.entry.js.map +1 -0
  340. package/dist/core/p-c4d3c18c.entry.js.map +1 -1
  341. package/dist/core/p-c85689e3.entry.js +2 -0
  342. package/dist/core/p-c85689e3.entry.js.map +1 -0
  343. package/dist/core/p-c8ce6147.entry.js +2 -0
  344. package/dist/core/p-c8ce6147.entry.js.map +1 -0
  345. package/dist/core/p-cadb531f.entry.js.map +1 -1
  346. package/dist/core/p-cc83692e.entry.js.map +1 -1
  347. package/dist/core/p-dd3c3e3c.entry.js.map +1 -1
  348. package/dist/core/p-e93e9aa3.entry.js.map +1 -1
  349. package/dist/core/p-ecfb2e6b.entry.js.map +1 -1
  350. package/dist/core/p-fa7bc907.entry.js +2 -0
  351. package/dist/core/p-fa7bc907.entry.js.map +1 -0
  352. package/dist/core/p-fbde8a26.entry.js +2 -0
  353. package/dist/core/p-fbde8a26.entry.js.map +1 -0
  354. package/dist/esm/core.js +1 -1
  355. package/dist/esm/ic-alert.entry.js +2 -0
  356. package/dist/esm/ic-alert.entry.js.map +1 -1
  357. package/dist/esm/ic-back-to-top.entry.js +18 -8
  358. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  359. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  360. package/dist/esm/ic-breadcrumb.entry.js +1 -1
  361. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  362. package/dist/esm/ic-button_3.entry.js +29 -11
  363. package/dist/esm/ic-button_3.entry.js.map +1 -1
  364. package/dist/esm/ic-card.entry.js.map +1 -1
  365. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  366. package/dist/esm/ic-checkbox.entry.js +2 -0
  367. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  368. package/dist/esm/ic-chip.entry.js +62 -0
  369. package/dist/esm/ic-chip.entry.js.map +1 -0
  370. package/dist/esm/ic-classification-banner.entry.js.map +1 -1
  371. package/dist/esm/ic-data-entity.entry.js.map +1 -1
  372. package/dist/esm/ic-data-row.entry.js +1 -1
  373. package/dist/esm/ic-data-row.entry.js.map +1 -1
  374. package/dist/esm/ic-divider.entry.js.map +1 -1
  375. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  376. package/dist/esm/ic-footer-link.entry.js +1 -1
  377. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  378. package/dist/esm/ic-footer.entry.js +2 -2
  379. package/dist/esm/ic-footer.entry.js.map +1 -1
  380. package/dist/esm/ic-hero.entry.js.map +1 -1
  381. package/dist/esm/ic-input-component-container_3.entry.js +19 -18
  382. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  383. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  384. package/dist/esm/ic-link.entry.js.map +1 -1
  385. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  386. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  387. package/dist/esm/ic-navigation-item.entry.js +2 -2
  388. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  389. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  390. package/dist/esm/ic-page-header.entry.js.map +1 -1
  391. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  392. package/dist/esm/ic-radio-option.entry.js +10 -1
  393. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  394. package/dist/esm/ic-search-bar.entry.js +16 -2
  395. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  396. package/dist/esm/ic-section-container.entry.js.map +1 -1
  397. package/dist/esm/ic-select.entry.js +2 -7
  398. package/dist/esm/ic-select.entry.js.map +1 -1
  399. package/dist/esm/ic-side-navigation.entry.js +8 -4
  400. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  401. package/dist/esm/ic-skeleton.entry.js +1 -1
  402. package/dist/esm/ic-skeleton.entry.js.map +1 -1
  403. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  404. package/dist/esm/ic-step.entry.js +101 -13
  405. package/dist/esm/ic-step.entry.js.map +1 -1
  406. package/dist/esm/ic-stepper.entry.js +161 -40
  407. package/dist/esm/ic-stepper.entry.js.map +1 -1
  408. package/dist/esm/ic-switch.entry.js +1 -1
  409. package/dist/esm/ic-switch.entry.js.map +1 -1
  410. package/dist/esm/ic-tab-context.entry.js +6 -1
  411. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  412. package/dist/esm/ic-tab-group.entry.js.map +1 -1
  413. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  414. package/dist/esm/ic-tab.entry.js.map +1 -1
  415. package/dist/esm/ic-text-field.entry.js.map +1 -1
  416. package/dist/esm/ic-theme.entry.js +2 -2
  417. package/dist/esm/ic-theme.entry.js.map +1 -1
  418. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  419. package/dist/esm/ic-typography.entry.js.map +1 -1
  420. package/dist/esm/index-1500de1f.js +4 -0
  421. package/dist/esm/loader.js +1 -1
  422. package/dist/types/components/ic-alert/ic-alert.d.ts +12 -8
  423. package/dist/types/components/ic-back-to-top/ic-back-to-top.d.ts +1 -0
  424. package/dist/types/components/ic-breadcrumb/ic-breadcrumb.d.ts +5 -5
  425. package/dist/types/components/ic-breadcrumb-group/ic-breadcrumb-group.d.ts +2 -2
  426. package/dist/types/components/ic-button/ic-button.d.ts +10 -10
  427. package/dist/types/components/ic-card/ic-card.d.ts +8 -8
  428. package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +14 -10
  429. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +9 -9
  430. package/dist/types/components/ic-chip/ic-chip.d.ts +40 -0
  431. package/dist/types/components/ic-chip/ic-chip.test.a11y.d.ts +1 -0
  432. package/dist/types/components/ic-chip/ic-chip.types.d.ts +2 -0
  433. package/dist/types/components/ic-classification-banner/ic-classification-banner.d.ts +5 -5
  434. package/dist/types/components/ic-data-entity/ic-data-entity.d.ts +2 -2
  435. package/dist/types/components/ic-data-row/ic-data-row.d.ts +3 -3
  436. package/dist/types/components/ic-footer/ic-footer.d.ts +12 -12
  437. package/dist/types/components/ic-footer-link-group/ic-footer-link-group.d.ts +1 -1
  438. package/dist/types/components/ic-hero/ic-hero.d.ts +9 -9
  439. package/dist/types/components/ic-input-component-container/ic-input-component-container.d.ts +8 -8
  440. package/dist/types/components/ic-input-container/ic-input-container.d.ts +2 -2
  441. package/dist/types/components/ic-input-label/ic-input-label.d.ts +8 -8
  442. package/dist/types/components/ic-input-validation/ic-input-validation.d.ts +5 -5
  443. package/dist/types/components/ic-link/ic-link.d.ts +6 -6
  444. package/dist/types/components/ic-loading-indicator/ic-loading-indicator.d.ts +8 -3
  445. package/dist/types/components/ic-menu/ic-menu.d.ts +14 -14
  446. package/dist/types/components/ic-navigation-button/ic-navigation-button.d.ts +5 -5
  447. package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +2 -2
  448. package/dist/types/components/ic-navigation-item/ic-navigation-item.d.ts +7 -7
  449. package/dist/types/components/ic-navigation-menu/ic-navigation-menu.d.ts +2 -2
  450. package/dist/types/components/ic-page-header/ic-page-header.d.ts +10 -8
  451. package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +10 -10
  452. package/dist/types/components/ic-radio-option/ic-radio-option.d.ts +13 -11
  453. package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +28 -25
  454. package/dist/types/components/ic-section-container/ic-section-container.d.ts +2 -2
  455. package/dist/types/components/ic-select/ic-select.d.ts +18 -18
  456. package/dist/types/components/ic-side-navigation/ic-side-navigation.d.ts +12 -12
  457. package/dist/types/components/ic-skeleton/ic-skeleton.d.ts +2 -2
  458. package/dist/types/components/ic-status-tag/ic-status-tag.d.ts +1 -1
  459. package/dist/types/components/ic-step/ic-step.d.ts +37 -8
  460. package/dist/types/components/ic-step/ic-step.types.d.ts +2 -0
  461. package/dist/types/components/ic-stepper/ic-stepper-test-examples.d.ts +4 -0
  462. package/dist/types/components/ic-stepper/ic-stepper.d.ts +23 -6
  463. package/dist/types/components/ic-switch/ic-switch.d.ts +7 -7
  464. package/dist/types/components/ic-tab/ic-tab.d.ts +5 -5
  465. package/dist/types/components/ic-tab-context/ic-tab-context.d.ts +8 -4
  466. package/dist/types/components/ic-tab-group/ic-tab-group.d.ts +4 -4
  467. package/dist/types/components/ic-tab-panel/ic-tab-panel.d.ts +2 -2
  468. package/dist/types/components/ic-text-field/ic-text-field.d.ts +30 -30
  469. package/dist/types/components/ic-theme/ic-theme.d.ts +3 -3
  470. package/dist/types/components/ic-tooltip/ic-tooltip.d.ts +4 -0
  471. package/dist/types/components/ic-top-navigation/ic-top-navigation.d.ts +6 -6
  472. package/dist/types/components/ic-typography/ic-typography.d.ts +1 -1
  473. package/dist/types/components.d.ts +625 -535
  474. package/dist/types/testspec.setup.d.ts +1 -0
  475. package/hydrate/index.js +574 -212
  476. package/package.json +3 -3
  477. package/dist/core/p-1337db5e.entry.js.map +0 -1
  478. package/dist/core/p-1721bcf3.entry.js.map +0 -1
  479. package/dist/core/p-33a45ace.entry.js +0 -2
  480. package/dist/core/p-33a45ace.entry.js.map +0 -1
  481. package/dist/core/p-347ec49e.entry.js.map +0 -1
  482. package/dist/core/p-39ae284e.entry.js +0 -2
  483. package/dist/core/p-39ae284e.entry.js.map +0 -1
  484. package/dist/core/p-558552f8.entry.js.map +0 -1
  485. package/dist/core/p-7093d214.entry.js +0 -2
  486. package/dist/core/p-7093d214.entry.js.map +0 -1
  487. package/dist/core/p-7577c6a3.entry.js +0 -2
  488. package/dist/core/p-7577c6a3.entry.js.map +0 -1
  489. package/dist/core/p-7b11e1dc.entry.js +0 -2
  490. package/dist/core/p-7b11e1dc.entry.js.map +0 -1
  491. package/dist/core/p-7b39977f.entry.js.map +0 -1
  492. package/dist/core/p-898607d0.entry.js +0 -2
  493. package/dist/core/p-898607d0.entry.js.map +0 -1
  494. package/dist/core/p-ac43322e.entry.js +0 -2
  495. package/dist/core/p-ac43322e.entry.js.map +0 -1
  496. package/dist/core/p-ae81dffa.entry.js.map +0 -1
  497. package/dist/core/p-b5a988c0.entry.js +0 -2
  498. package/dist/core/p-b5a988c0.entry.js.map +0 -1
  499. package/dist/core/p-c6dd4f47.entry.js.map +0 -1
  500. package/dist/core/p-df5caf13.entry.js.map +0 -1
  501. package/dist/core/p-e106305b.entry.js +0 -2
  502. package/dist/core/p-e106305b.entry.js.map +0 -1
@@ -0,0 +1,199 @@
1
+ import { h, } from "@stencil/core";
2
+ import { onComponentRequiredPropUndefined, isSlotUsed, } from "../../utils/helpers";
3
+ import dismissIcon from "../../assets/dismiss-icon.svg";
4
+ /**
5
+ * @slot icon - Content will be rendered at the start of the chip.
6
+ */
7
+ export class Chip {
8
+ constructor() {
9
+ this.dismissAction = () => {
10
+ this.dismiss.emit();
11
+ };
12
+ this.mouseEnterHandler = () => {
13
+ this.isHovered = true;
14
+ };
15
+ this.mouseLeaveHandler = () => {
16
+ this.isHovered = false;
17
+ };
18
+ this.label = undefined;
19
+ this.appearance = "filled";
20
+ this.size = "default";
21
+ this.dismissible = false;
22
+ this.disabled = false;
23
+ this.visible = true;
24
+ this.isHovered = false;
25
+ }
26
+ handleClick() {
27
+ this.visible = !this.visible;
28
+ }
29
+ componentDidLoad() {
30
+ var _a;
31
+ this.dismissible &&
32
+ ((_a = this.el.shadowRoot
33
+ .querySelector("span.ic-tooltip-label")) === null || _a === void 0 ? void 0 : _a.setAttribute("aria-hidden", "true"));
34
+ onComponentRequiredPropUndefined([{ prop: this.label, propName: "label" }], "Chip");
35
+ }
36
+ render() {
37
+ const { label, appearance, size, dismissible, visible, disabled, isHovered, } = this;
38
+ return (visible && (h("div", { class: {
39
+ ["chip"]: true,
40
+ [`${appearance}`]: true,
41
+ [`${size}`]: true,
42
+ ["disabled"]: disabled,
43
+ ["dismissible"]: dismissible,
44
+ ["hovered"]: isHovered,
45
+ } }, isSlotUsed(this.el, "icon") && (h("div", { class: "icon" }, h("slot", { name: "icon" }))), h("ic-typography", { variant: "label", "apply-vertical-margins": false, class: "label" }, h("span", null, label)), dismissible && (h("ic-tooltip", { label: "Dismiss", target: "dismiss-icon", class: { ["tooltip-disabled"]: disabled } }, h("button", { id: "dismiss-icon", class: {
46
+ ["dismiss-icon"]: true,
47
+ }, "aria-label": `Dismiss ${label} chip`, disabled: disabled, tabindex: disabled ? -1 : 0, onClick: this.dismissAction, onMouseEnter: this.mouseEnterHandler, onMouseLeave: this.mouseLeaveHandler, innerHTML: dismissIcon }))))));
48
+ }
49
+ static get is() { return "ic-chip"; }
50
+ static get encapsulation() { return "shadow"; }
51
+ static get originalStyleUrls() {
52
+ return {
53
+ "$": ["ic-chip.css"]
54
+ };
55
+ }
56
+ static get styleUrls() {
57
+ return {
58
+ "$": ["ic-chip.css"]
59
+ };
60
+ }
61
+ static get properties() {
62
+ return {
63
+ "label": {
64
+ "type": "string",
65
+ "mutable": false,
66
+ "complexType": {
67
+ "original": "string",
68
+ "resolved": "string",
69
+ "references": {}
70
+ },
71
+ "required": true,
72
+ "optional": false,
73
+ "docs": {
74
+ "tags": [],
75
+ "text": "The text rendered within the chip."
76
+ },
77
+ "attribute": "label",
78
+ "reflect": false
79
+ },
80
+ "appearance": {
81
+ "type": "string",
82
+ "mutable": false,
83
+ "complexType": {
84
+ "original": "IcChipAppearance",
85
+ "resolved": "\"filled\" | \"outline\"",
86
+ "references": {
87
+ "IcChipAppearance": {
88
+ "location": "import",
89
+ "path": "./ic-chip.types"
90
+ }
91
+ }
92
+ },
93
+ "required": false,
94
+ "optional": true,
95
+ "docs": {
96
+ "tags": [],
97
+ "text": "The emphasis of the chip."
98
+ },
99
+ "attribute": "appearance",
100
+ "reflect": false,
101
+ "defaultValue": "\"filled\""
102
+ },
103
+ "size": {
104
+ "type": "string",
105
+ "mutable": false,
106
+ "complexType": {
107
+ "original": "IcChipSizes",
108
+ "resolved": "\"default\" | \"large\" | \"small\"",
109
+ "references": {
110
+ "IcChipSizes": {
111
+ "location": "import",
112
+ "path": "./ic-chip.types"
113
+ }
114
+ }
115
+ },
116
+ "required": false,
117
+ "optional": true,
118
+ "docs": {
119
+ "tags": [],
120
+ "text": "The size of the chip."
121
+ },
122
+ "attribute": "size",
123
+ "reflect": false,
124
+ "defaultValue": "\"default\""
125
+ },
126
+ "dismissible": {
127
+ "type": "boolean",
128
+ "mutable": false,
129
+ "complexType": {
130
+ "original": "boolean",
131
+ "resolved": "boolean",
132
+ "references": {}
133
+ },
134
+ "required": false,
135
+ "optional": true,
136
+ "docs": {
137
+ "tags": [],
138
+ "text": "If `true`, the chip will have a close button at the end to dismiss it."
139
+ },
140
+ "attribute": "dismissible",
141
+ "reflect": false,
142
+ "defaultValue": "false"
143
+ },
144
+ "disabled": {
145
+ "type": "boolean",
146
+ "mutable": false,
147
+ "complexType": {
148
+ "original": "boolean",
149
+ "resolved": "boolean",
150
+ "references": {}
151
+ },
152
+ "required": false,
153
+ "optional": true,
154
+ "docs": {
155
+ "tags": [],
156
+ "text": "If `true`, the chip will appear disabled."
157
+ },
158
+ "attribute": "disabled",
159
+ "reflect": false,
160
+ "defaultValue": "false"
161
+ }
162
+ };
163
+ }
164
+ static get states() {
165
+ return {
166
+ "visible": {},
167
+ "isHovered": {}
168
+ };
169
+ }
170
+ static get events() {
171
+ return [{
172
+ "method": "dismiss",
173
+ "name": "dismiss",
174
+ "bubbles": true,
175
+ "cancelable": true,
176
+ "composed": true,
177
+ "docs": {
178
+ "tags": [],
179
+ "text": "Is emitted when the user dismisses the chip."
180
+ },
181
+ "complexType": {
182
+ "original": "void",
183
+ "resolved": "void",
184
+ "references": {}
185
+ }
186
+ }];
187
+ }
188
+ static get elementRef() { return "el"; }
189
+ static get listeners() {
190
+ return [{
191
+ "name": "dismiss",
192
+ "method": "handleClick",
193
+ "target": undefined,
194
+ "capture": true,
195
+ "passive": false
196
+ }];
197
+ }
198
+ }
199
+ //# sourceMappingURL=ic-chip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ic-chip.js","sourceRoot":"","sources":["../../../src/components/ic-chip/ic-chip.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n h,\n Prop,\n State,\n Listen,\n Event,\n EventEmitter,\n Element,\n} from \"@stencil/core\";\nimport {\n onComponentRequiredPropUndefined,\n isSlotUsed,\n} from \"../../utils/helpers\";\nimport { IcChipAppearance, IcChipSizes } from \"./ic-chip.types\";\nimport dismissIcon from \"../../assets/dismiss-icon.svg\";\n\n/**\n * @slot icon - Content will be rendered at the start of the chip.\n */\n@Component({\n tag: \"ic-chip\",\n styleUrl: \"ic-chip.css\",\n shadow: true,\n})\nexport class Chip {\n @Element() el: HTMLIcChipElement;\n\n /**\n * The text rendered within the chip.\n */\n @Prop() label!: string;\n /**\n * The emphasis of the chip.\n */\n @Prop() appearance?: IcChipAppearance = \"filled\";\n /**\n * The size of the chip.\n */\n @Prop() size?: IcChipSizes = \"default\";\n /**\n * If `true`, the chip will have a close button at the end to dismiss it.\n */\n @Prop() dismissible?: boolean = false;\n /**\n * If `true`, the chip will appear disabled.\n */\n @Prop() disabled?: boolean = false;\n\n @State() visible: boolean = true;\n\n @State() isHovered: boolean = false;\n\n @Listen(\"dismiss\", { capture: true })\n handleClick(): void {\n this.visible = !this.visible;\n }\n /**\n * Is emitted when the user dismisses the chip.\n */\n @Event() dismiss: EventEmitter<void>;\n\n private dismissAction = (): void => {\n this.dismiss.emit();\n };\n\n private mouseEnterHandler = (): void => {\n this.isHovered = true;\n };\n\n private mouseLeaveHandler = (): void => {\n this.isHovered = false;\n };\n\n componentDidLoad(): void {\n this.dismissible &&\n this.el.shadowRoot\n .querySelector(\"span.ic-tooltip-label\")\n ?.setAttribute(\"aria-hidden\", \"true\");\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Chip\"\n );\n }\n\n render() {\n const {\n label,\n appearance,\n size,\n dismissible,\n visible,\n disabled,\n isHovered,\n } = this;\n\n return (\n visible && (\n <div\n class={{\n [\"chip\"]: true,\n [`${appearance}`]: true,\n [`${size}`]: true,\n [\"disabled\"]: disabled,\n [\"dismissible\"]: dismissible,\n [\"hovered\"]: isHovered,\n }}\n >\n {isSlotUsed(this.el, \"icon\") && (\n <div class=\"icon\">\n <slot name=\"icon\" />\n </div>\n )}\n <ic-typography\n variant=\"label\"\n apply-vertical-margins={false}\n class=\"label\"\n >\n <span>{label}</span>\n </ic-typography>\n {dismissible && (\n <ic-tooltip\n label=\"Dismiss\"\n target=\"dismiss-icon\"\n class={{ [\"tooltip-disabled\"]: disabled }}\n >\n <button\n id=\"dismiss-icon\"\n class={{\n [\"dismiss-icon\"]: true,\n }}\n aria-label={`Dismiss ${label} chip`}\n disabled={disabled}\n tabindex={disabled ? -1 : 0}\n onClick={this.dismissAction}\n onMouseEnter={this.mouseEnterHandler}\n onMouseLeave={this.mouseLeaveHandler}\n innerHTML={dismissIcon}\n ></button>\n </ic-tooltip>\n )}\n </div>\n )\n );\n }\n}\n"]}
@@ -0,0 +1,11 @@
1
+ import { fixture } from "@open-wc/testing-helpers";
2
+ import { axe } from "jest-axe";
3
+ import { checkShadowElementRendersCorrectly } from "../../utils/testa11y.helpers";
4
+ describe("chip component", () => {
5
+ it("passes accessibility", async () => {
6
+ const el = await fixture("<ic-chip label='label' href='/' dismissible='true'/>");
7
+ checkShadowElementRendersCorrectly(el);
8
+ expect(await axe(el)).toHaveNoViolations();
9
+ });
10
+ });
11
+ //# sourceMappingURL=ic-chip.test.a11y.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ic-chip.test.a11y.js","sourceRoot":"","sources":["../../../src/components/ic-chip/ic-chip.test.a11y.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EAAE,kCAAkC,EAAE,MAAM,8BAA8B,CAAC;AAElF,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;EAC9B,EAAE,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;IACpC,MAAM,EAAE,GAAG,MAAM,OAAO,CACtB,sDAAsD,CACvD,CAAC;IACF,kCAAkC,CAAC,EAAE,CAAC,CAAC;IACvC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC;EAC7C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { fixture } from \"@open-wc/testing-helpers\";\nimport { axe } from \"jest-axe\";\nimport { checkShadowElementRendersCorrectly } from \"../../utils/testa11y.helpers\";\n\ndescribe(\"chip component\", () => {\n it(\"passes accessibility\", async () => {\n const el = await fixture(\n \"<ic-chip label='label' href='/' dismissible='true'/>\"\n );\n checkShadowElementRendersCorrectly(el);\n expect(await axe(el)).toHaveNoViolations();\n });\n});\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ic-chip.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ic-chip.types.js","sourceRoot":"","sources":["../../../src/components/ic-chip/ic-chip.types.ts"],"names":[],"mappings":"","sourcesContent":["export type IcChipSizes = \"default\" | \"large\" | \"small\";\n\nexport type IcChipAppearance = \"filled\" | \"outline\";\n"]}
@@ -52,7 +52,7 @@ export class ClassificationBanner {
52
52
  "optional": true,
53
53
  "docs": {
54
54
  "tags": [],
55
- "text": "Additional information to display after the classification"
55
+ "text": "The additional information that will be displayed after the classification."
56
56
  },
57
57
  "attribute": "additional-selectors",
58
58
  "reflect": false,
@@ -75,7 +75,7 @@ export class ClassificationBanner {
75
75
  "optional": true,
76
76
  "docs": {
77
77
  "tags": [],
78
- "text": "The classification level to be displayed also determines the banner and text colour"
78
+ "text": "The classification level to be displayed - also determines the banner and text colour."
79
79
  },
80
80
  "attribute": "classification",
81
81
  "reflect": false,
@@ -93,7 +93,7 @@ export class ClassificationBanner {
93
93
  "optional": true,
94
94
  "docs": {
95
95
  "tags": [],
96
- "text": "Optional text displayed before classification to specify relevant country/countries"
96
+ "text": "The optional text that will be displayed before classification to specify relevant country/countries."
97
97
  },
98
98
  "attribute": "country",
99
99
  "reflect": false,
@@ -111,7 +111,7 @@ export class ClassificationBanner {
111
111
  "optional": true,
112
112
  "docs": {
113
113
  "tags": [],
114
- "text": "Determines whether the banner appears inline with the page or sticks to the bottom of the page"
114
+ "text": "If `true`, the banner will appear inline with the page, instead of sticking to the bottom of the page."
115
115
  },
116
116
  "attribute": "inline",
117
117
  "reflect": false,
@@ -129,7 +129,7 @@ export class ClassificationBanner {
129
129
  "optional": true,
130
130
  "docs": {
131
131
  "tags": [],
132
- "text": "Optionally display \"Up to\" before classification and country if set"
132
+ "text": "If `true`, \"Up to\" will be displayed before the classification and country."
133
133
  },
134
134
  "attribute": "up-to",
135
135
  "reflect": false,
@@ -1 +1 @@
1
- {"version":3,"file":"ic-classification-banner.js","sourceRoot":"","sources":["../../../src/components/ic-classification-banner/ic-classification-banner.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAGzD,MAAM,kBAAkB,GAAG;EACzB,OAAO,EAAE,4BAA4B;EACrC,QAAQ,EAAE,UAAU;EACpB,oBAAoB,EAAE,oBAAoB;EAC1C,MAAM,EAAE,QAAQ;EAChB,YAAY,EAAE,YAAY;CAC3B,CAAC;AAOF,MAAM,OAAO,oBAAoB;;+BAIQ,EAAE;0BAIO,SAAS;mBAI9B,IAAI;kBAIJ,KAAK;gBAIP,KAAK;;EAE9B,MAAM;IACJ,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAAC;IAE5E,OAAO,CACL,EAAC,IAAI,IAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE;MACjC,4BACa,oBAAoB,EAC/B,KAAK,EAAE;UACL,CAAC,uBAAuB,CAAC,EAAE,IAAI;UAC/B,CAAC,GAAG,cAAc,EAAE,CAAC,EAAE,cAAc;SACtC,EACD,IAAI,EAAC,aAAa;QAEjB,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,CAC9B,YAAM,KAAK,EAAC,WAAW;;UACmB,GAAG,CACtC,CACR,CAAC,CAAC,CAAC,IAAI;QACR,qBAAe,OAAO,EAAC,mBAAmB,IACvC,cAAc,KAAK,SAAS;UAC3B,CAAC,CAAC,kBAAkB,CAAC,cAAc,CAAC;UACpC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;iBACrB,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;iBAC7B,kBAAkB,CAAC,cAAc,CAAC;iBAClC,mBAAmB,KAAK,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9C,CACT,CACJ,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Prop, h, Host } from \"@stencil/core\";\nimport { IcProtectiveMarkings } from \"./ic-classification-banner.types\";\n\nconst classificationText = {\n default: \"protective marking not set\",\n official: \"official\",\n \"official-sensitive\": \"official sensitive\",\n secret: \"secret\",\n \"top-secret\": \"top secret\",\n};\n\n@Component({\n tag: \"ic-classification-banner\",\n styleUrl: \"ic-classification-banner.css\",\n shadow: true,\n})\nexport class ClassificationBanner {\n /**\n * Additional information to display after the classification\n */\n @Prop() additionalSelectors?: string = \"\";\n /**\n * The classification level to be displayed also determines the banner and text colour\n */\n @Prop() classification?: IcProtectiveMarkings = \"default\";\n /**\n * Optional text displayed before classification to specify relevant country/countries\n */\n @Prop() country?: string = \"uk\";\n /**\n * Determines whether the banner appears inline with the page or sticks to the bottom of the page\n */\n @Prop() inline?: boolean = false;\n /**\n * Optionally display \"Up to\" before classification and country if set\n */\n @Prop() upTo?: boolean = false;\n\n render() {\n const { classification, inline, country, upTo, additionalSelectors } = this;\n\n return (\n <Host class={{ [\"inline\"]: inline }}>\n <banner\n aria-label=\"Protective marking\"\n class={{\n [\"classification-banner\"]: true,\n [`${classification}`]: classification,\n }}\n role=\"contentinfo\"\n >\n {classification !== \"default\" ? (\n <span class=\"offscreen\">\n The protective marking of this page is:{\" \"}\n </span>\n ) : null}\n <ic-typography variant=\"caption-uppercase\">\n {classification === \"default\"\n ? classificationText[classification]\n : `${upTo ? \"up to\" : \"\"} \n ${country !== \"\" ? country : \"\"} \n ${classificationText[classification]} \n ${additionalSelectors !== \"\" ? additionalSelectors : \"\"}`}\n </ic-typography>\n </banner>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ic-classification-banner.js","sourceRoot":"","sources":["../../../src/components/ic-classification-banner/ic-classification-banner.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAGzD,MAAM,kBAAkB,GAAG;EACzB,OAAO,EAAE,4BAA4B;EACrC,QAAQ,EAAE,UAAU;EACpB,oBAAoB,EAAE,oBAAoB;EAC1C,MAAM,EAAE,QAAQ;EAChB,YAAY,EAAE,YAAY;CAC3B,CAAC;AAOF,MAAM,OAAO,oBAAoB;;+BAIQ,EAAE;0BAIO,SAAS;mBAI9B,IAAI;kBAIJ,KAAK;gBAIP,KAAK;;EAE9B,MAAM;IACJ,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAAC;IAE5E,OAAO,CACL,EAAC,IAAI,IAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE;MACjC,4BACa,oBAAoB,EAC/B,KAAK,EAAE;UACL,CAAC,uBAAuB,CAAC,EAAE,IAAI;UAC/B,CAAC,GAAG,cAAc,EAAE,CAAC,EAAE,cAAc;SACtC,EACD,IAAI,EAAC,aAAa;QAEjB,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,CAC9B,YAAM,KAAK,EAAC,WAAW;;UACmB,GAAG,CACtC,CACR,CAAC,CAAC,CAAC,IAAI;QACR,qBAAe,OAAO,EAAC,mBAAmB,IACvC,cAAc,KAAK,SAAS;UAC3B,CAAC,CAAC,kBAAkB,CAAC,cAAc,CAAC;UACpC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;iBACrB,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;iBAC7B,kBAAkB,CAAC,cAAc,CAAC;iBAClC,mBAAmB,KAAK,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9C,CACT,CACJ,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Prop, h, Host } from \"@stencil/core\";\nimport { IcProtectiveMarkings } from \"./ic-classification-banner.types\";\n\nconst classificationText = {\n default: \"protective marking not set\",\n official: \"official\",\n \"official-sensitive\": \"official sensitive\",\n secret: \"secret\",\n \"top-secret\": \"top secret\",\n};\n\n@Component({\n tag: \"ic-classification-banner\",\n styleUrl: \"ic-classification-banner.css\",\n shadow: true,\n})\nexport class ClassificationBanner {\n /**\n * The additional information that will be displayed after the classification.\n */\n @Prop() additionalSelectors?: string = \"\";\n /**\n * The classification level to be displayed - also determines the banner and text colour.\n */\n @Prop() classification?: IcProtectiveMarkings = \"default\";\n /**\n * The optional text that will be displayed before classification to specify relevant country/countries.\n */\n @Prop() country?: string = \"uk\";\n /**\n * If `true`, the banner will appear inline with the page, instead of sticking to the bottom of the page.\n */\n @Prop() inline?: boolean = false;\n /**\n * If `true`, \"Up to\" will be displayed before the classification and country.\n */\n @Prop() upTo?: boolean = false;\n\n render() {\n const { classification, inline, country, upTo, additionalSelectors } = this;\n\n return (\n <Host class={{ [\"inline\"]: inline }}>\n <banner\n aria-label=\"Protective marking\"\n class={{\n [\"classification-banner\"]: true,\n [`${classification}`]: classification,\n }}\n role=\"contentinfo\"\n >\n {classification !== \"default\" ? (\n <span class=\"offscreen\">\n The protective marking of this page is:{\" \"}\n </span>\n ) : null}\n <ic-typography variant=\"caption-uppercase\">\n {classification === \"default\"\n ? classificationText[classification]\n : `${upTo ? \"up to\" : \"\"} \n ${country !== \"\" ? country : \"\"} \n ${classificationText[classification]} \n ${additionalSelectors !== \"\" ? additionalSelectors : \"\"}`}\n </ic-typography>\n </banner>\n </Host>\n );\n }\n}\n"]}
@@ -40,7 +40,7 @@ export class DataEntity {
40
40
  "optional": false,
41
41
  "docs": {
42
42
  "tags": [],
43
- "text": "Title for the data entity"
43
+ "text": "The title for the data entity."
44
44
  },
45
45
  "attribute": "heading",
46
46
  "reflect": false
@@ -57,7 +57,7 @@ export class DataEntity {
57
57
  "optional": false,
58
58
  "docs": {
59
59
  "tags": [],
60
- "text": "Set the data heading and all child data rows to small styling"
60
+ "text": "If `true`, the small styling will be applied to the data heading and all child data rows."
61
61
  },
62
62
  "attribute": "small",
63
63
  "reflect": false,
@@ -1 +1 @@
1
- {"version":3,"file":"ic-data-entity.js","sourceRoot":"","sources":["../../../src/components/ic-data-entity/ic-data-entity.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAOlE,MAAM,OAAO,UAAU;;;iBAWI,KAAK;;EAE9B,MAAM;IACJ,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IAEhC,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC;IAElC,IAAI,KAAK,EAAE;MACT,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACxC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;OAC3C;KACF;IAED,OAAO,CACL,EAAC,IAAI,IAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE;MAC/B,WAAK,KAAK,EAAC,SAAS,EAAC,EAAE,EAAC,qBAAqB;QAC3C,YAAM,IAAI,EAAC,SAAS;UAClB,qBAAe,OAAO,EAAC,IAAI,IAAE,OAAO,CAAiB,CAChD,CACH;MACN,WAAK,KAAK,EAAC,SAAS,GAAG;MACvB,6BAAoB,qBAAqB,EAAC,KAAK,EAAC,MAAM;QACpD,eAAa,CACV,CACA,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Element, Host, h, Prop } from \"@stencil/core\";\n\n@Component({\n tag: \"ic-data-entity\",\n styleUrl: \"ic-data-entity.css\",\n shadow: true,\n})\nexport class DataEntity {\n @Element() el: HTMLIcDataEntityElement;\n\n /**\n * Title for the data entity\n */\n @Prop() heading: string;\n\n /**\n * Set the data heading and all child data rows to small styling\n */\n @Prop() small: boolean = false;\n\n render() {\n const { heading, small } = this;\n\n const children = this.el.children;\n\n if (small) {\n for (let i = 0; i < children.length; i++) {\n children[i].setAttribute(\"small\", \"true\");\n }\n }\n\n return (\n <Host class={{ [\"small\"]: small }}>\n <div class=\"heading\" id=\"data-entity-heading\">\n <slot name=\"heading\">\n <ic-typography variant=\"h3\">{heading}</ic-typography>\n </slot>\n </div>\n <div class=\"divider\" />\n <ul aria-labelledby=\"data-entity-heading\" class=\"rows\">\n <slot></slot>\n </ul>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ic-data-entity.js","sourceRoot":"","sources":["../../../src/components/ic-data-entity/ic-data-entity.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAOlE,MAAM,OAAO,UAAU;;;iBAWI,KAAK;;EAE9B,MAAM;IACJ,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IAEhC,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC;IAElC,IAAI,KAAK,EAAE;MACT,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACxC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;OAC3C;KACF;IAED,OAAO,CACL,EAAC,IAAI,IAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE;MAC/B,WAAK,KAAK,EAAC,SAAS,EAAC,EAAE,EAAC,qBAAqB;QAC3C,YAAM,IAAI,EAAC,SAAS;UAClB,qBAAe,OAAO,EAAC,IAAI,IAAE,OAAO,CAAiB,CAChD,CACH;MACN,WAAK,KAAK,EAAC,SAAS,GAAG;MACvB,6BAAoB,qBAAqB,EAAC,KAAK,EAAC,MAAM;QACpD,eAAa,CACV,CACA,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Element, Host, h, Prop } from \"@stencil/core\";\n\n@Component({\n tag: \"ic-data-entity\",\n styleUrl: \"ic-data-entity.css\",\n shadow: true,\n})\nexport class DataEntity {\n @Element() el: HTMLIcDataEntityElement;\n\n /**\n * The title for the data entity.\n */\n @Prop() heading: string;\n\n /**\n * If `true`, the small styling will be applied to the data heading and all child data rows.\n */\n @Prop() small: boolean = false;\n\n render() {\n const { heading, small } = this;\n\n const children = this.el.children;\n\n if (small) {\n for (let i = 0; i < children.length; i++) {\n children[i].setAttribute(\"small\", \"true\");\n }\n }\n\n return (\n <Host class={{ [\"small\"]: small }}>\n <div class=\"heading\" id=\"data-entity-heading\">\n <slot name=\"heading\">\n <ic-typography variant=\"h3\">{heading}</ic-typography>\n </slot>\n </div>\n <div class=\"divider\" />\n <ul aria-labelledby=\"data-entity-heading\" class=\"rows\">\n <slot></slot>\n </ul>\n </Host>\n );\n }\n}\n"]}
@@ -468,6 +468,18 @@ video {
468
468
  flex-grow: 1;
469
469
  }
470
470
 
471
+ slot[name="value"]::slotted(ic-text-field[readonly][hide-label]) {
472
+ margin-top: calc(var(--ic-space-xs) * -1);
473
+ }
474
+
475
+ slot[name="value"]::slotted(ic-text-field[small][readonly][hide-label]) {
476
+ margin-top: calc(var(--ic-space-xxs) * -1);
477
+ }
478
+
479
+ slot[name="value"]::slotted(ic-text-field[readonly][hide-label][rows]) {
480
+ margin-top: calc(var(--ic-space-xxs) * -1 - var(--ic-space-xxxs));
481
+ }
482
+
471
483
  .end-component {
472
484
  width: -moz-fit-content;
473
485
  width: fit-content;
@@ -88,7 +88,7 @@ export class DataRow {
88
88
  "optional": false,
89
89
  "docs": {
90
90
  "tags": [],
91
- "text": "Set the label in the leftmost cell of the row"
91
+ "text": "The label in the leftmost cell of the row."
92
92
  },
93
93
  "attribute": "label",
94
94
  "reflect": false
@@ -105,7 +105,7 @@ export class DataRow {
105
105
  "optional": false,
106
106
  "docs": {
107
107
  "tags": [],
108
- "text": "Set the value of the middle (right if no addition supplied) cell of the row"
108
+ "text": "The value of the middle (right if no end-component supplied) cell of the row."
109
109
  },
110
110
  "attribute": "value",
111
111
  "reflect": false
@@ -122,7 +122,7 @@ export class DataRow {
122
122
  "optional": false,
123
123
  "docs": {
124
124
  "tags": [],
125
- "text": "Set the row to small styling, this is automatically applied if small is set on the parent data heading"
125
+ "text": "If `true`, the small styling will be applied to the row. This is automatically applied if small is set on the parent data heading."
126
126
  },
127
127
  "attribute": "small",
128
128
  "reflect": false,
@@ -1 +1 @@
1
- {"version":3,"file":"ic-data-row.js","sourceRoot":"","sources":["../../../src/components/ic-data-row/ic-data-row.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Host, Prop, h, State } from \"@stencil/core\";\nimport {\n checkResizeObserver,\n DEVICE_SIZES,\n getCurrentDeviceSize,\n slotHasContent,\n} from \"../../utils/helpers\";\n\n/**\n * @slot label - Content will be rendered in the leftmost cell.\n * @slot value - Content will be rendered to the right of the label.\n * @slot end-component - Content will be displayed in the rightmost cell.\n */\n@Component({\n tag: \"ic-data-row\",\n styleUrl: \"ic-data-row.css\",\n shadow: true,\n})\nexport class DataRow {\n @Element() el: HTMLIcDataRowElement;\n\n /**\n * Set the label in the leftmost cell of the row\n */\n @Prop() label: string;\n\n /**\n * Set the value of the middle (right if no addition supplied) cell of the row\n */\n @Prop() value: string;\n\n /**\n * Set the row to small styling, this is automatically applied if small is set on the parent data heading\n */\n @Prop() small: boolean = false;\n\n @State() deviceSize: number = DEVICE_SIZES.XL;\n\n @State() entitySize: \"xl\" | \"m\" | \"xs\";\n\n private resizeObserver: ResizeObserver = null;\n\n private hasEndComponent: boolean = false;\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n this.checkLabelAbove();\n });\n\n this.resizeObserver.observe(this.el);\n };\n\n private checkLabelAbove() {\n const rowSize = this.el.shadowRoot.querySelector(\".data\")?.clientWidth;\n if (rowSize + 46 < DEVICE_SIZES.S) {\n this.entitySize = \"xs\";\n } else if (rowSize + 46 < DEVICE_SIZES.M) {\n this.entitySize = \"m\";\n } else {\n this.entitySize = \"xl\";\n }\n }\n\n private labelEndComponent(): void {\n const component = this.el.shadowRoot.querySelectorAll(\n \"slot[name=end-component]\"\n );\n\n component.forEach((child: HTMLElement) =>\n child.setAttribute(\"aria-label\", \"for \" + this.label + \" row\")\n );\n }\n\n componentWillLoad(): void {\n this.deviceSize = getCurrentDeviceSize();\n this.hasEndComponent = slotHasContent(this.el, \"end-component\");\n }\n\n componentDidLoad(): void {\n checkResizeObserver(this.runResizeObserver);\n this.checkLabelAbove();\n if (this.hasEndComponent) {\n this.labelEndComponent();\n }\n }\n\n disconnectedCallback(): void {\n if (this.resizeObserver !== null) {\n this.resizeObserver.disconnect();\n }\n }\n\n render() {\n const { label, value, small } = this;\n\n return (\n <Host\n class={{\n [\"small\"]: small,\n [\"breakpoint-medium\"]: this.entitySize === \"m\",\n [\"breakpoint-xs\"]: this.entitySize === \"xs\",\n }}\n role=\"listitem\"\n >\n <div class=\"data\">\n <div class=\"text-cells\">\n <div class=\"label\">\n <slot name=\"label\">\n <ic-typography\n variant={\n this.entitySize === \"xs\" ? \"label\" : \"subtitle-large\"\n }\n >\n {label}\n </ic-typography>\n </slot>\n </div>\n <div class=\"value\">\n <slot name=\"value\">\n <ic-typography variant=\"body\">{value}</ic-typography>\n </slot>\n </div>\n </div>\n {this.hasEndComponent && (\n <div class=\"end-component\">\n <div role=\"cell\">\n <slot name=\"end-component\"></slot>\n </div>\n </div>\n )}\n </div>\n <div class=\"divider\" />\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ic-data-row.js","sourceRoot":"","sources":["../../../src/components/ic-data-row/ic-data-row.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Host, Prop, h, State } from \"@stencil/core\";\nimport {\n checkResizeObserver,\n DEVICE_SIZES,\n getCurrentDeviceSize,\n slotHasContent,\n} from \"../../utils/helpers\";\n\n/**\n * @slot label - Content will be rendered in the leftmost cell.\n * @slot value - Content will be rendered to the right of the label.\n * @slot end-component - Content will be displayed in the rightmost cell.\n */\n@Component({\n tag: \"ic-data-row\",\n styleUrl: \"ic-data-row.css\",\n shadow: true,\n})\nexport class DataRow {\n @Element() el: HTMLIcDataRowElement;\n\n /**\n * The label in the leftmost cell of the row.\n */\n @Prop() label: string;\n\n /**\n * The value of the middle (right if no end-component supplied) cell of the row.\n */\n @Prop() value: string;\n\n /**\n * If `true`, the small styling will be applied to the row. This is automatically applied if small is set on the parent data heading.\n */\n @Prop() small: boolean = false;\n\n @State() deviceSize: number = DEVICE_SIZES.XL;\n\n @State() entitySize: \"xl\" | \"m\" | \"xs\";\n\n private resizeObserver: ResizeObserver = null;\n\n private hasEndComponent: boolean = false;\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n this.checkLabelAbove();\n });\n\n this.resizeObserver.observe(this.el);\n };\n\n private checkLabelAbove() {\n const rowSize = this.el.shadowRoot.querySelector(\".data\")?.clientWidth;\n if (rowSize + 46 < DEVICE_SIZES.S) {\n this.entitySize = \"xs\";\n } else if (rowSize + 46 < DEVICE_SIZES.M) {\n this.entitySize = \"m\";\n } else {\n this.entitySize = \"xl\";\n }\n }\n\n private labelEndComponent(): void {\n const component = this.el.shadowRoot.querySelectorAll(\n \"slot[name=end-component]\"\n );\n\n component.forEach((child: HTMLElement) =>\n child.setAttribute(\"aria-label\", \"for \" + this.label + \" row\")\n );\n }\n\n componentWillLoad(): void {\n this.deviceSize = getCurrentDeviceSize();\n this.hasEndComponent = slotHasContent(this.el, \"end-component\");\n }\n\n componentDidLoad(): void {\n checkResizeObserver(this.runResizeObserver);\n this.checkLabelAbove();\n if (this.hasEndComponent) {\n this.labelEndComponent();\n }\n }\n\n disconnectedCallback(): void {\n if (this.resizeObserver !== null) {\n this.resizeObserver.disconnect();\n }\n }\n\n render() {\n const { label, value, small } = this;\n\n return (\n <Host\n class={{\n [\"small\"]: small,\n [\"breakpoint-medium\"]: this.entitySize === \"m\",\n [\"breakpoint-xs\"]: this.entitySize === \"xs\",\n }}\n role=\"listitem\"\n >\n <div class=\"data\">\n <div class=\"text-cells\">\n <div class=\"label\">\n <slot name=\"label\">\n <ic-typography\n variant={\n this.entitySize === \"xs\" ? \"label\" : \"subtitle-large\"\n }\n >\n {label}\n </ic-typography>\n </slot>\n </div>\n <div class=\"value\">\n <slot name=\"value\">\n <ic-typography variant=\"body\">{value}</ic-typography>\n </slot>\n </div>\n </div>\n {this.hasEndComponent && (\n <div class=\"end-component\">\n <div role=\"cell\">\n <slot name=\"end-component\"></slot>\n </div>\n </div>\n )}\n </div>\n <div class=\"divider\" />\n </Host>\n );\n }\n}\n"]}
@@ -33,7 +33,7 @@ export class Divider {
33
33
  }
34
34
  static get listeners() {
35
35
  return [{
36
- "name": "icThemeChange",
36
+ "name": "themeChange",
37
37
  "method": "themeChangeHandler",
38
38
  "target": "document",
39
39
  "capture": false,
@@ -1 +1 @@
1
- {"version":3,"file":"ic-divider.js","sourceRoot":"","sources":["../../../src/components/ic-divider/ic-divider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAElE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAGL,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAO3B,MAAM,OAAO,OAAO;;2BAC4B,uBAAuB,EAAE;;EAGvE,kBAAkB,CAAC,EAAe;IAChC,MAAM,KAAK,GAAY,EAAE,CAAC,MAAM,CAAC;IACjC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC;EACpC,CAAC;EAED,MAAM;IACJ,OAAO,CACL,EAAC,IAAI,mBAAa,MAAM;MACtB,UACE,KAAK,EAAE;UACL,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,eAAe,KAAK,qBAAqB,CAAC,KAAK;SAChE,GACD,CACG,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { h, Component, Host, Listen, State } from \"@stencil/core\";\n\nimport { getThemeForegroundColor } from \"../../utils/helpers\";\nimport {\n IcTheme,\n IcThemeForeground,\n IcThemeForegroundEnum,\n} from \"../../utils/types\";\n\n@Component({\n tag: \"ic-divider\",\n styleUrl: \"ic-divider.css\",\n scoped: true,\n})\nexport class Divider {\n @State() foregroundColor: IcThemeForeground = getThemeForegroundColor();\n\n @Listen(\"icThemeChange\", { target: \"document\" })\n themeChangeHandler(ev: CustomEvent): void {\n const theme: IcTheme = ev.detail;\n this.foregroundColor = theme.mode;\n }\n\n render() {\n return (\n <Host aria-hidden=\"true\">\n <hr\n class={{\n [\"light\"]: this.foregroundColor === IcThemeForegroundEnum.Light,\n }}\n />\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ic-divider.js","sourceRoot":"","sources":["../../../src/components/ic-divider/ic-divider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAElE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAGL,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAO3B,MAAM,OAAO,OAAO;;2BAC4B,uBAAuB,EAAE;;EAGvE,kBAAkB,CAAC,EAAe;IAChC,MAAM,KAAK,GAAY,EAAE,CAAC,MAAM,CAAC;IACjC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC;EACpC,CAAC;EAED,MAAM;IACJ,OAAO,CACL,EAAC,IAAI,mBAAa,MAAM;MACtB,UACE,KAAK,EAAE;UACL,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,eAAe,KAAK,qBAAqB,CAAC,KAAK;SAChE,GACD,CACG,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { h, Component, Host, Listen, State } from \"@stencil/core\";\n\nimport { getThemeForegroundColor } from \"../../utils/helpers\";\nimport {\n IcTheme,\n IcThemeForeground,\n IcThemeForegroundEnum,\n} from \"../../utils/types\";\n\n@Component({\n tag: \"ic-divider\",\n styleUrl: \"ic-divider.css\",\n scoped: true,\n})\nexport class Divider {\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 render() {\n return (\n <Host aria-hidden=\"true\">\n <hr\n class={{\n [\"light\"]: this.foregroundColor === IcThemeForegroundEnum.Light,\n }}\n />\n </Host>\n );\n }\n}\n"]}
@@ -3,10 +3,10 @@ import { IC_DEVICE_SIZES } from "../../utils/constants";
3
3
  import { getCurrentDeviceSize, getThemeForegroundColor, checkResizeObserver, hasClassificationBanner, } from "../../utils/helpers";
4
4
  import { IcThemeForegroundEnum, } from "../../utils/types";
5
5
  /**
6
- * @slot description - Content will be rendered at the top of the footer
7
- * @slot link - Content will be rendered between description and logos
8
- * @slot logo - Content will be rendered underneath footer links
9
- * @slot caption - Content will be rendered above Crown Copyright
6
+ * @slot description - Content will be rendered at the top of the footer.
7
+ * @slot link - Content will be rendered between description and logos.
8
+ * @slot logo - Content will be rendered underneath footer links.
9
+ * @slot caption - Content will be rendered above Crown Copyright.
10
10
  */
11
11
  export class Footer {
12
12
  constructor() {
@@ -14,7 +14,7 @@ export class Footer {
14
14
  if (currSize !== this.deviceSize) {
15
15
  this.deviceSize = currSize;
16
16
  }
17
- this.icFooterResized.emit();
17
+ this.footerResized.emit();
18
18
  };
19
19
  this.runResizeObserver = () => {
20
20
  this.resizeObserver = new ResizeObserver(() => {
@@ -103,7 +103,7 @@ export class Footer {
103
103
  "optional": false,
104
104
  "docs": {
105
105
  "tags": [],
106
- "text": "The description displayed at the top of the footer"
106
+ "text": "The description displayed at the top of the footer."
107
107
  },
108
108
  "attribute": "description",
109
109
  "reflect": false
@@ -125,7 +125,7 @@ export class Footer {
125
125
  "optional": true,
126
126
  "docs": {
127
127
  "tags": [],
128
- "text": "Sets the aligned parameter for the section containers used within the footer"
128
+ "text": "The alignment of the section containers used within the footer."
129
129
  },
130
130
  "attribute": "aligned",
131
131
  "reflect": false,
@@ -148,7 +148,7 @@ export class Footer {
148
148
  "optional": true,
149
149
  "docs": {
150
150
  "tags": [],
151
- "text": "Sets the screen size breakpoint at which to switch to the small layout"
151
+ "text": "The screen size breakpoint at which to switch to the small layout."
152
152
  },
153
153
  "attribute": "breakpoint",
154
154
  "reflect": false,
@@ -166,7 +166,7 @@ export class Footer {
166
166
  "optional": true,
167
167
  "docs": {
168
168
  "tags": [],
169
- "text": "Sets the footer up to handle link groups instead of standalone links"
169
+ "text": "If `true`, the footer will be set up to handle link groups instead of standalone links."
170
170
  },
171
171
  "attribute": "group-links",
172
172
  "reflect": false,
@@ -184,7 +184,7 @@ export class Footer {
184
184
  "optional": false,
185
185
  "docs": {
186
186
  "tags": [],
187
- "text": "The caption displayed at the bottom of the footer"
187
+ "text": "The caption displayed at the bottom of the footer."
188
188
  },
189
189
  "attribute": "caption",
190
190
  "reflect": false
@@ -201,7 +201,7 @@ export class Footer {
201
201
  "optional": false,
202
202
  "docs": {
203
203
  "tags": [],
204
- "text": "Whether the footer displays the crown copyright at the bottom"
204
+ "text": "If `true`, the footer will display the crown copyright at the bottom."
205
205
  },
206
206
  "attribute": "copyright",
207
207
  "reflect": false,
@@ -217,14 +217,17 @@ export class Footer {
217
217
  }
218
218
  static get events() {
219
219
  return [{
220
- "method": "icFooterResized",
221
- "name": "icFooterResized",
220
+ "method": "footerResized",
221
+ "name": "footerResized",
222
222
  "bubbles": true,
223
223
  "cancelable": true,
224
224
  "composed": true,
225
225
  "docs": {
226
- "tags": [],
227
- "text": "Triggers on page resize and triggers style changes in footer links and link groups"
226
+ "tags": [{
227
+ "name": "internal",
228
+ "text": "Triggers on page resize and triggers style changes in footer links and link groups"
229
+ }],
230
+ "text": ""
228
231
  },
229
232
  "complexType": {
230
233
  "original": "void",
@@ -236,7 +239,7 @@ export class Footer {
236
239
  static get elementRef() { return "el"; }
237
240
  static get listeners() {
238
241
  return [{
239
- "name": "icThemeChange",
242
+ "name": "themeChange",
240
243
  "method": "themeChangeHandler",
241
244
  "target": "document",
242
245
  "capture": false,
@@ -1 +1 @@
1
- {"version":3,"file":"ic-footer.js","sourceRoot":"","sources":["../../../src/components/ic-footer/ic-footer.tsx"],"names":[],"mappings":"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","sourcesContent":["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} 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 * Triggers on page resize and triggers style changes in footer links and link groups\n */\n @Event() icFooterResized: EventEmitter<void>;\n\n /**\n * The description displayed at the top of the footer\n */\n @Prop() description: string;\n\n /**\n * Sets the aligned parameter for the section containers used within the footer\n */\n @Prop() aligned?: IcAlignment = \"left\";\n\n /**\n * Sets the screen size breakpoint at which to switch to the small layout\n */\n @Prop() breakpoint?: IcFooterBreakpoints = \"medium\";\n\n /**\n * Sets the footer 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 * Whether the footer displays 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(\"icThemeChange\", { 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.icFooterResized.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 <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 {/* Compliance (logo, caption, copyright) */}\n <div class=\"footer-compliance\">\n <ic-section-container aligned={aligned} fullHeight={true}>\n <div class=\"footer-compliance-inner\">\n <div class=\"footer-logo\">\n {/* Logo */}\n <slot name=\"logo\" />\n </div>\n <div class=\"footer-caption\">\n <ic-typography\n variant={\n this.deviceSize <= IC_DEVICE_SIZES.M ? \"caption\" : \"body\"\n }\n >\n <slot name=\"caption\">{caption}</slot>\n </ic-typography>\n </div>\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"]}
1
+ {"version":3,"file":"ic-footer.js","sourceRoot":"","sources":["../../../src/components/ic-footer/ic-footer.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,OAAO,EACP,KAAK,EAEL,IAAI,EACJ,KAAK,EACL,CAAC,EACD,IAAI,EACJ,MAAM,GACP,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAIL,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAG3B;;;;;GAKG;AAOH,MAAM,OAAO,MAAM;;IAmET,2BAAsB,GAAG,CAAC,QAAgB,EAAE,EAAE;MACpD,IAAI,QAAQ,KAAK,IAAI,CAAC,UAAU,EAAE;QAChC,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC;OAC5B;MACD,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;IAC5B,CAAC,CAAC;IAEM,sBAAiB,GAAG,GAAG,EAAE;MAC/B,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC,GAAG,EAAE;QAC5C,MAAM,QAAQ,GAAG,oBAAoB,EAAE,CAAC;QACxC,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;MACxC,CAAC,CAAC,CAAC;MAEH,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC,CAAC;;mBAjE8B,MAAM;sBAKK,QAAQ;sBAKpB,KAAK;;qBAUP,IAAI;sBAEH,eAAe,CAAC,EAAE;2BAEF,uBAAuB,EAAE;;EAE/D,OAAO;IACb,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC;IAE3B,OAAO,EAAE,KAAK,aAAa;MACzB,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,eAAe,CAAC,EAAE;MACtC,CAAC,CAAC,EAAE,KAAK,OAAO;QAChB,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,eAAe,CAAC,CAAC;QACrC,CAAC,CAAC,EAAE,KAAK,QAAQ;UACjB,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,eAAe,CAAC,CAAC;UACrC,CAAC,CAAC,EAAE,KAAK,OAAO;YAChB,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,eAAe,CAAC,CAAC;YACrC,CAAC,CAAC,EAAE,KAAK,aAAa;cACtB,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,eAAe,CAAC,EAAE;cACtC,CAAC,CAAC,KAAK,CAAC;EACZ,CAAC;EAGD,kBAAkB,CAAC,EAAe;IAChC,MAAM,KAAK,GAAY,EAAE,CAAC,MAAM,CAAC;IACjC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC;EACpC,CAAC;EAqBD,iBAAiB;IACf,IAAI,CAAC,UAAU,GAAG,oBAAoB,EAAE,CAAC;EAC3C,CAAC;EAED,gBAAgB;IACd,mBAAmB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;EAC9C,CAAC;EAED,oBAAoB;IAClB,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC;EACnC,CAAC;EAED,MAAM;IACJ,MAAM,EACJ,OAAO,EACP,OAAO,EACP,SAAS,EACT,WAAW,EACX,UAAU,EACV,eAAe,GAChB,GAAG,IAAI,CAAC;IACT,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IAE7B,OAAO,CACL,EAAC,IAAI,IACH,KAAK,EAAE;QACL,MAAM,EAAE,IAAI;QACZ,CAAC,UAAU,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI;QAC9C,CAAC,UAAU,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,EAAE,IAAI;QACxD,CAAC,UAAU,eAAe,EAAE,CAAC,EAAE,IAAI;QACnC,8CAA8C;QAC9C,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAC1B,eAAe,KAAK,qBAAqB,CAAC,IAAI;QAChD,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAC3B,eAAe,KAAK,qBAAqB,CAAC,KAAK;OAClD;MAED,cAAQ,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAEnD,WAAK,KAAK,EAAC,oBAAoB;UAC7B,4BAAsB,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI;YACtD,WAAK,KAAK,EAAC,0BAA0B;cACnC,qBAAe,OAAO,EAAC,MAAM;gBAC3B,YAAM,IAAI,EAAC,aAAa,IAAE,WAAW,CAAQ,CAC/B,CACZ,CACe,CACnB;QAGN,WAAK,KAAK,EAAC,cAAc,IACtB,UAAU,IAAI,KAAK,CAAC,CAAC,CAAC,CACrB,WAAK,KAAK,EAAC,oBAAoB;UAC7B,YAAM,IAAI,EAAC,MAAM,GAAG,CAChB,CACP,CAAC,CAAC,CAAC,CACF,4BAAsB,UAAU,QAAC,OAAO,EAAE,OAAO;UAC/C,WAAK,KAAK,EAAC,oBAAoB;YAC7B,YAAM,IAAI,EAAC,MAAM,GAAG,CAChB,CACe,CACxB,CACG;QAGN,WAAK,KAAK,EAAC,mBAAmB;UAC5B,4BAAsB,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI;YACtD,WAAK,KAAK,EAAC,yBAAyB;cAClC,WAAK,KAAK,EAAC,aAAa;gBAEtB,YAAM,IAAI,EAAC,MAAM,GAAG,CAChB;cACN,WAAK,KAAK,EAAC,gBAAgB;gBACzB,qBACE,OAAO,EACL,IAAI,CAAC,UAAU,IAAI,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;kBAG3D,YAAM,IAAI,EAAC,SAAS,IAAE,OAAO,CAAQ,CACvB,CACZ;cACL,SAAS,IAAI,CACZ,WACE,KAAK,EAAE;kBACL,CAAC,kBAAkB,CAAC,EAAE,IAAI;kBAC1B,CAAC,wBAAwB,CAAC,EAAE,uBAAuB,EAAE;iBACtD;gBAED,qBACE,OAAO,EACL,IAAI,CAAC,UAAU,IAAI,eAAe,CAAC,CAAC;oBAClC,CAAC,CAAC,mBAAmB;oBACrB,CAAC,CAAC,iBAAiB,6BAIT,CACZ,CACP,CACG,CACe,CACnB,CACC,CACJ,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["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} 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 <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 {/* Compliance (logo, caption, copyright) */}\n <div class=\"footer-compliance\">\n <ic-section-container aligned={aligned} fullHeight={true}>\n <div class=\"footer-compliance-inner\">\n <div class=\"footer-logo\">\n {/* Logo */}\n <slot name=\"logo\" />\n </div>\n <div class=\"footer-caption\">\n <ic-typography\n variant={\n this.deviceSize <= IC_DEVICE_SIZES.M ? \"caption\" : \"body\"\n }\n >\n <slot name=\"caption\">{caption}</slot>\n </ic-typography>\n </div>\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"]}
@@ -500,7 +500,7 @@ video {
500
500
  }
501
501
 
502
502
  /*
503
- There's an apparent defect in Chrome that means this isn't always re-rendered if changed.
503
+ There's an apparent defect in Chrome that means this isn't always re-rendered if changed.
504
504
  Not an issue in Safari. Line 73-79 implement the same function but less clean.
505
505
 
506
506
  a:link > ::slotted(svg) ,
@@ -566,6 +566,12 @@ a:link:visited > ::slotted(svg) {
566
566
  text-decoration: none;
567
567
  }
568
568
 
569
+ @media screen and (min-width: 769px) {
570
+ :host(.footer-link.footer-link-ungrouped-sparse:last-of-type) {
571
+ margin-right: 0;
572
+ }
573
+ }
574
+
569
575
  @media (forced-colors: active) {
570
576
  :host(.footer-link-light) ::slotted(svg),
571
577
  :host(.footer-link-dark) ::slotted(svg) {