@ukic/web-components 3.0.0-alpha.1 → 3.0.0-alpha.10

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 (966) hide show
  1. package/README.md +5 -4
  2. package/dist/cjs/core.cjs.js +1 -1
  3. package/dist/cjs/{helpers-f1cf5156.js → helpers-eca4c27e.js} +80 -29
  4. package/dist/cjs/helpers-eca4c27e.js.map +1 -0
  5. package/dist/cjs/ic-accordion-group.cjs.entry.js +10 -10
  6. package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
  7. package/dist/cjs/ic-accordion.cjs.entry.js +12 -5
  8. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ic-alert.cjs.entry.js +9 -14
  10. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ic-back-to-top.cjs.entry.js +8 -5
  12. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  13. package/dist/cjs/ic-badge.cjs.entry.js +26 -3
  14. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +43 -20
  16. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ic-breadcrumb.cjs.entry.js +47 -3
  18. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ic-button_3.cjs.entry.js +28 -26
  20. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-card-vertical.cjs.entry.js +48 -47
  22. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
  23. package/dist/cjs/ic-checkbox-group.cjs.entry.js +21 -6
  24. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-checkbox.cjs.entry.js +10 -4
  26. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ic-chip.cjs.entry.js +27 -15
  28. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ic-classification-banner.cjs.entry.js +1 -1
  30. package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
  31. package/dist/cjs/ic-data-row.cjs.entry.js +1 -1
  32. package/dist/cjs/ic-dialog.cjs.entry.js +13 -5
  33. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  34. package/dist/cjs/ic-divider.cjs.entry.js +73 -9
  35. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  36. package/dist/cjs/ic-empty-state.cjs.entry.js +7 -15
  37. package/dist/cjs/ic-empty-state.cjs.entry.js.map +1 -1
  38. package/dist/cjs/ic-footer-link-group.cjs.entry.js +6 -7
  39. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  40. package/dist/cjs/ic-footer-link.cjs.entry.js +7 -6
  41. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  42. package/dist/cjs/ic-footer.cjs.entry.js +24 -14
  43. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  44. package/dist/cjs/ic-hero.cjs.entry.js +7 -15
  45. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +17 -9
  47. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  48. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +486 -200
  49. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  50. package/dist/cjs/ic-input-label_2.cjs.entry.js +24 -26
  51. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  52. package/dist/cjs/ic-link.cjs.entry.js +10 -12
  53. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  54. package/dist/cjs/ic-menu-group.cjs.entry.js +3 -3
  55. package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
  56. package/dist/cjs/ic-menu-item.cjs.entry.js +25 -18
  57. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  58. package/dist/cjs/ic-navigation-button.cjs.entry.js +11 -8
  59. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ic-navigation-group.cjs.entry.js +10 -8
  61. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  62. package/dist/cjs/ic-navigation-item.cjs.entry.js +60 -8
  63. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  64. package/dist/cjs/ic-navigation-menu.cjs.entry.js +5 -4
  65. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  66. package/dist/cjs/ic-page-header.cjs.entry.js +8 -6
  67. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  68. package/dist/cjs/ic-pagination-item.cjs.entry.js +12 -11
  69. package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ic-pagination.cjs.entry.js +23 -15
  71. package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -1
  72. package/dist/cjs/ic-popover-menu.cjs.entry.js +47 -25
  73. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  74. package/dist/cjs/ic-radio-group.cjs.entry.js +58 -28
  75. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  76. package/dist/cjs/ic-radio-option.cjs.entry.js +42 -22
  77. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  78. package/dist/cjs/ic-search-bar.cjs.entry.js +54 -56
  79. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  80. package/dist/cjs/ic-select.cjs.entry.js +192 -66
  81. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  82. package/dist/cjs/ic-side-navigation.cjs.entry.js +16 -11
  83. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  84. package/dist/cjs/ic-skeleton.cjs.entry.js +4 -4
  85. package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
  86. package/dist/cjs/ic-status-tag.cjs.entry.js +5 -4
  87. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  88. package/dist/cjs/ic-step.cjs.entry.js +4 -5
  89. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  90. package/dist/cjs/ic-stepper.cjs.entry.js +12 -2
  91. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  92. package/dist/cjs/ic-switch.cjs.entry.js +21 -16
  93. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  94. package/dist/cjs/ic-tab-context.cjs.entry.js +60 -123
  95. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  96. package/dist/cjs/ic-tab-group.cjs.entry.js +3 -19
  97. package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
  98. package/dist/cjs/ic-tab-panel.cjs.entry.js +2 -2
  99. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  100. package/dist/cjs/ic-tab.cjs.entry.js +10 -8
  101. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  102. package/dist/cjs/ic-text-field.cjs.entry.js +43 -23
  103. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  104. package/dist/cjs/ic-theme.cjs.entry.js +20 -20
  105. package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
  106. package/dist/cjs/ic-toast.cjs.entry.js +4 -4
  107. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  108. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +62 -12
  109. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  110. package/dist/cjs/ic-toggle-button.cjs.entry.js +64 -9
  111. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  112. package/dist/cjs/ic-top-navigation.cjs.entry.js +13 -7
  113. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  114. package/dist/cjs/ic-typography.cjs.entry.js +5 -3
  115. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  116. package/dist/cjs/index-f982899d.js +4 -4
  117. package/dist/cjs/loader.cjs.js +1 -1
  118. package/dist/collection/ag-theme-icds.css +218 -0
  119. package/dist/collection/collection-manifest.json +3 -3
  120. package/dist/collection/components/ic-accordion/ic-accordion.css +22 -20
  121. package/dist/collection/components/ic-accordion/ic-accordion.js +37 -31
  122. package/dist/collection/components/ic-accordion/ic-accordion.js.map +1 -1
  123. package/dist/collection/components/ic-accordion/ic-accordion.stories.js +611 -0
  124. package/dist/collection/components/ic-accordion/test/basic/ic-accordion.spec.js +6 -3
  125. package/dist/collection/components/ic-accordion/test/basic/ic-accordion.spec.js.map +1 -1
  126. package/dist/collection/components/ic-accordion-group/ic-accordion-group.css +2 -12
  127. package/dist/collection/components/ic-accordion-group/ic-accordion-group.js +18 -18
  128. package/dist/collection/components/ic-accordion-group/ic-accordion-group.js.map +1 -1
  129. package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js +3 -3
  130. package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js.map +1 -1
  131. package/dist/collection/components/ic-alert/ic-alert.css +38 -20
  132. package/dist/collection/components/ic-alert/ic-alert.js +52 -33
  133. package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
  134. package/dist/collection/components/ic-alert/ic-alert.stories.js +271 -0
  135. package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js +22 -4
  136. package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js.map +1 -1
  137. package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +5 -2
  138. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +31 -4
  139. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js.map +1 -1
  140. package/dist/collection/components/ic-back-to-top/ic-back-to-top.stories.js +162 -0
  141. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js +14 -0
  142. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js.map +1 -1
  143. package/dist/collection/components/ic-badge/ic-badge.css +5 -5
  144. package/dist/collection/components/ic-badge/ic-badge.js +42 -4
  145. package/dist/collection/components/ic-badge/ic-badge.js.map +1 -1
  146. package/dist/collection/components/ic-badge/ic-badge.stories.js +1092 -0
  147. package/dist/collection/components/ic-badge/test/basic/ic-badge.spec.js +194 -0
  148. package/dist/collection/components/ic-badge/test/basic/ic-badge.spec.js.map +1 -1
  149. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.css +13 -8
  150. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +50 -3
  151. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js.map +1 -1
  152. package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js +45 -1
  153. package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js.map +1 -1
  154. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js +44 -19
  155. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js.map +1 -1
  156. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.stories.js +362 -0
  157. package/dist/collection/components/ic-button/ic-button.css +690 -420
  158. package/dist/collection/components/ic-button/ic-button.js +64 -46
  159. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  160. package/dist/collection/components/ic-button/ic-button.stories.js +2208 -0
  161. package/dist/collection/components/ic-button/ic-button.types.js.map +1 -1
  162. package/dist/collection/components/ic-button/test/basic/ic-button.spec.js +9 -9
  163. package/dist/collection/components/ic-button/test/basic/ic-button.spec.js.map +1 -1
  164. package/dist/collection/components/ic-card-vertical/ic-card-vertical.css +99 -115
  165. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js +80 -52
  166. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js.map +1 -1
  167. package/dist/collection/components/ic-card-vertical/ic-card-vertical.stories.js +1050 -0
  168. package/dist/collection/components/ic-card-vertical/test/basic/ic-card-vertical.spec.js +44 -3
  169. package/dist/collection/components/ic-card-vertical/test/basic/ic-card-vertical.spec.js.map +1 -1
  170. package/dist/collection/components/ic-checkbox/ic-checkbox.css +47 -39
  171. package/dist/collection/components/ic-checkbox/ic-checkbox.js +35 -3
  172. package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
  173. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.css +15 -2
  174. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +46 -3
  175. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  176. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.stories.js +699 -0
  177. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js +3 -0
  178. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js.map +1 -1
  179. package/dist/collection/components/ic-chip/ic-chip.css +64 -49
  180. package/dist/collection/components/ic-chip/ic-chip.js +66 -15
  181. package/dist/collection/components/ic-chip/ic-chip.js.map +1 -1
  182. package/dist/collection/components/ic-chip/ic-chip.stories.js +980 -0
  183. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js +19 -0
  184. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js.map +1 -1
  185. package/dist/collection/components/ic-classification-banner/ic-classification-banner.css +14 -10
  186. package/dist/collection/components/ic-classification-banner/ic-classification-banner.stories.js +131 -0
  187. package/dist/collection/components/ic-data-list/ic-data-list.stories.js +493 -0
  188. package/dist/collection/components/ic-dialog/ic-dialog.css +16 -3
  189. package/dist/collection/components/ic-dialog/ic-dialog.js +37 -5
  190. package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -1
  191. package/dist/collection/components/ic-dialog/ic-dialog.stories.js +1050 -0
  192. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js +27 -7
  193. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js.map +1 -1
  194. package/dist/collection/components/ic-divider/ic-divider.css +295 -4
  195. package/dist/collection/components/ic-divider/ic-divider.js +239 -12
  196. package/dist/collection/components/ic-divider/ic-divider.js.map +1 -1
  197. package/dist/collection/components/ic-divider/ic-divider.stories.js +394 -0
  198. package/dist/collection/components/ic-divider/ic-divider.types.js +2 -0
  199. package/dist/collection/components/ic-divider/ic-divider.types.js.map +1 -0
  200. package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js +90 -5
  201. package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js.map +1 -1
  202. package/dist/collection/components/ic-empty-state/ic-empty-state.css +15 -0
  203. package/dist/collection/components/ic-empty-state/ic-empty-state.js +31 -15
  204. package/dist/collection/components/ic-empty-state/ic-empty-state.js.map +1 -1
  205. package/dist/collection/components/ic-empty-state/ic-empty-state.stories.js +404 -0
  206. package/dist/collection/components/ic-empty-state/test/basic/ic-empty-state.spec.js +101 -0
  207. package/dist/collection/components/ic-empty-state/test/basic/ic-empty-state.spec.js.map +1 -0
  208. package/dist/collection/components/ic-footer/ic-footer.css +21 -20
  209. package/dist/collection/components/ic-footer/ic-footer.js +26 -16
  210. package/dist/collection/components/ic-footer/ic-footer.js.map +1 -1
  211. package/dist/collection/components/ic-footer/ic-footer.stories.js +384 -0
  212. package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js +43 -2
  213. package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js.map +1 -1
  214. package/dist/collection/components/ic-footer-link/ic-footer-link.css +24 -6
  215. package/dist/collection/components/ic-footer-link/ic-footer-link.js +8 -7
  216. package/dist/collection/components/ic-footer-link/ic-footer-link.js.map +1 -1
  217. package/dist/collection/components/ic-footer-link/test/basic/ic-footer-link.spec.js +1 -1
  218. package/dist/collection/components/ic-footer-link/test/basic/ic-footer-link.spec.js.map +1 -1
  219. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.css +11 -19
  220. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js +7 -8
  221. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js.map +1 -1
  222. package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js +1 -1
  223. package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js.map +1 -1
  224. package/dist/collection/components/ic-hero/ic-hero.css +25 -10
  225. package/dist/collection/components/ic-hero/ic-hero.js +10 -18
  226. package/dist/collection/components/ic-hero/ic-hero.js.map +1 -1
  227. package/dist/collection/components/ic-hero/ic-hero.stories.js +448 -0
  228. package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js +23 -5
  229. package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js.map +1 -1
  230. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.css +2 -6
  231. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +67 -11
  232. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js.map +1 -1
  233. package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js +43 -0
  234. package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js.map +1 -1
  235. package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +40 -17
  236. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +23 -48
  237. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js.map +1 -1
  238. package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js +30 -3
  239. package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js.map +1 -1
  240. package/dist/collection/components/ic-input-label/ic-input-label.css +19 -20
  241. package/dist/collection/components/ic-input-label/ic-input-label.js +53 -34
  242. package/dist/collection/components/ic-input-label/ic-input-label.js.map +1 -1
  243. package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js +35 -49
  244. package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js.map +1 -1
  245. package/dist/collection/components/ic-input-validation/ic-input-validation.css +12 -3
  246. package/dist/collection/components/ic-input-validation/ic-input-validation.js +7 -7
  247. package/dist/collection/components/ic-input-validation/ic-input-validation.js.map +1 -1
  248. package/dist/collection/components/ic-link/ic-link.css +1 -25
  249. package/dist/collection/components/ic-link/ic-link.js +14 -16
  250. package/dist/collection/components/ic-link/ic-link.js.map +1 -1
  251. package/dist/collection/components/ic-link/ic-link.stories.js +85 -0
  252. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js +3 -3
  253. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js.map +1 -1
  254. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.css +15 -10
  255. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +50 -31
  256. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js.map +1 -1
  257. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.stories.js +464 -0
  258. package/dist/collection/components/ic-menu/ic-menu.css +111 -29
  259. package/dist/collection/components/ic-menu/ic-menu.js +522 -201
  260. package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
  261. package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js +381 -33
  262. package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js.map +1 -1
  263. package/dist/collection/components/ic-menu-group/ic-menu-group.css +2 -2
  264. package/dist/collection/components/ic-menu-group/ic-menu-group.js +1 -1
  265. package/dist/collection/components/ic-menu-group/ic-menu-group.js.map +1 -1
  266. package/dist/collection/components/ic-menu-item/ic-menu-item.css +32 -28
  267. package/dist/collection/components/ic-menu-item/ic-menu-item.js +67 -25
  268. package/dist/collection/components/ic-menu-item/ic-menu-item.js.map +1 -1
  269. package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js +15 -2
  270. package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js.map +1 -1
  271. package/dist/collection/components/ic-navigation-button/ic-navigation-button.css +18 -0
  272. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +37 -10
  273. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -1
  274. package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js +3 -3
  275. package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js.map +1 -1
  276. package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +17 -12
  277. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +35 -9
  278. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
  279. package/dist/collection/components/ic-navigation-group/test/basic/ic-navigation-group.spec.js +3 -3
  280. package/dist/collection/components/ic-navigation-group/test/basic/ic-navigation-group.spec.js.map +1 -1
  281. package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +38 -65
  282. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +88 -11
  283. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
  284. package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js +15 -3
  285. package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js.map +1 -1
  286. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.css +9 -6
  287. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +27 -2
  288. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js.map +1 -1
  289. package/dist/collection/components/ic-page-header/ic-page-header.css +7 -3
  290. package/dist/collection/components/ic-page-header/ic-page-header.js +30 -4
  291. package/dist/collection/components/ic-page-header/ic-page-header.js.map +1 -1
  292. package/dist/collection/components/ic-page-header/ic-page-header.stories.js +823 -0
  293. package/dist/collection/components/ic-pagination/ic-pagination.css +15 -0
  294. package/dist/collection/components/ic-pagination/ic-pagination.js +65 -37
  295. package/dist/collection/components/ic-pagination/ic-pagination.js.map +1 -1
  296. package/dist/collection/components/ic-pagination/ic-pagination.stories.js +164 -0
  297. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js +11 -1
  298. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js.map +1 -1
  299. package/dist/collection/components/ic-pagination-item/ic-pagination-item.css +29 -9
  300. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +54 -33
  301. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js.map +1 -1
  302. package/dist/collection/components/ic-pagination-item/test/basic/ic-pagination-item.spec.js +3 -0
  303. package/dist/collection/components/ic-pagination-item/test/basic/ic-pagination-item.spec.js.map +1 -1
  304. package/dist/collection/components/ic-popover-menu/ic-popover-menu.css +5 -5
  305. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +112 -26
  306. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js.map +1 -1
  307. package/dist/collection/components/ic-popover-menu/ic-popover-menu.stories.js +504 -0
  308. package/dist/collection/components/ic-radio-group/ic-radio-group.css +17 -1
  309. package/dist/collection/components/ic-radio-group/ic-radio-group.js +81 -25
  310. package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
  311. package/dist/collection/components/ic-radio-group/ic-radio-group.stories.js +443 -0
  312. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js +12 -3
  313. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js.map +1 -1
  314. package/dist/collection/components/ic-radio-option/ic-radio-option.css +36 -28
  315. package/dist/collection/components/ic-radio-option/ic-radio-option.js +73 -21
  316. package/dist/collection/components/ic-radio-option/ic-radio-option.js.map +1 -1
  317. package/dist/collection/components/ic-search-bar/ic-search-bar.css +110 -10
  318. package/dist/collection/components/ic-search-bar/ic-search-bar.js +101 -57
  319. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  320. package/dist/collection/components/ic-search-bar/ic-search-bar.stories.js +593 -0
  321. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js +63 -94
  322. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js.map +1 -1
  323. package/dist/collection/components/ic-section-container/ic-section-container.stories.js +62 -0
  324. package/dist/collection/components/ic-select/ic-select.css +93 -53
  325. package/dist/collection/components/ic-select/ic-select.js +267 -77
  326. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  327. package/dist/collection/components/ic-select/ic-select_(multi).stories.js +892 -0
  328. package/dist/collection/components/ic-select/ic-select_(searchable).stories.js +965 -0
  329. package/dist/collection/components/ic-select/ic-select_(single).stories.js +790 -0
  330. package/dist/collection/components/ic-select/test/basic/ic-select.spec.js +234 -1
  331. package/dist/collection/components/ic-select/test/basic/ic-select.spec.js.map +1 -1
  332. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +50 -34
  333. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +18 -13
  334. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  335. package/dist/collection/components/ic-side-navigation/ic-side-navigation.stories.js +2526 -0
  336. package/dist/collection/components/ic-side-navigation/ic-side-navigation.types.js.map +1 -1
  337. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js +6 -6
  338. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js.map +1 -1
  339. package/dist/collection/components/ic-skeleton/ic-skeleton.css +4 -27
  340. package/dist/collection/components/ic-skeleton/ic-skeleton.js +16 -10
  341. package/dist/collection/components/ic-skeleton/ic-skeleton.js.map +1 -1
  342. package/dist/collection/components/ic-skeleton/ic-skeleton.stories.js +143 -0
  343. package/dist/collection/components/ic-status-tag/ic-status-tag.css +6 -6
  344. package/dist/collection/components/ic-status-tag/ic-status-tag.js +21 -2
  345. package/dist/collection/components/ic-status-tag/ic-status-tag.js.map +1 -1
  346. package/dist/collection/components/ic-status-tag/ic-status-tag.stories.js +196 -0
  347. package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js +15 -32
  348. package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js.map +1 -1
  349. package/dist/collection/components/ic-step/ic-step.css +65 -98
  350. package/dist/collection/components/ic-step/ic-step.js +29 -3
  351. package/dist/collection/components/ic-step/ic-step.js.map +1 -1
  352. package/dist/collection/components/ic-stepper/ic-stepper.js +37 -19
  353. package/dist/collection/components/ic-stepper/ic-stepper.js.map +1 -1
  354. package/dist/collection/components/ic-stepper/ic-stepper.stories.js +277 -0
  355. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js +4 -4
  356. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js.map +1 -1
  357. package/dist/collection/components/ic-switch/ic-switch.css +30 -48
  358. package/dist/collection/components/ic-switch/ic-switch.js +43 -30
  359. package/dist/collection/components/ic-switch/ic-switch.js.map +1 -1
  360. package/dist/collection/components/ic-switch/ic-switch.stories.js +149 -0
  361. package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js +3 -14
  362. package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js.map +1 -1
  363. package/dist/collection/components/ic-tab/ic-tab.js +11 -6
  364. package/dist/collection/components/ic-tab/ic-tab.js.map +1 -1
  365. package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js +16 -0
  366. package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js.map +1 -1
  367. package/dist/collection/components/ic-tab-context/ic-tab-context.js +60 -123
  368. package/dist/collection/components/ic-tab-context/ic-tab-context.js.map +1 -1
  369. package/dist/collection/components/ic-tab-context/ic-tabs.stories.js +316 -0
  370. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js +2 -2
  371. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js.map +1 -1
  372. package/dist/collection/components/ic-tab-group/ic-tab-group.css +8 -0
  373. package/dist/collection/components/ic-tab-group/ic-tab-group.js +1 -17
  374. package/dist/collection/components/ic-tab-group/ic-tab-group.js.map +1 -1
  375. package/dist/collection/components/ic-tab-panel/ic-tab-panel.css +1 -1
  376. package/dist/collection/components/ic-text-field/ic-text-field.css +62 -8
  377. package/dist/collection/components/ic-text-field/ic-text-field.js +70 -24
  378. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  379. package/dist/collection/components/ic-text-field/ic-text-field.stories.js +862 -0
  380. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js +26 -12
  381. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js.map +1 -1
  382. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js +2 -2
  383. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js.map +1 -1
  384. package/dist/collection/components/ic-theme/ic-theme.js +31 -31
  385. package/dist/collection/components/ic-theme/ic-theme.js.map +1 -1
  386. package/dist/collection/components/ic-theme/ic-theme.stories.js +434 -0
  387. package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js +7 -7
  388. package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js.map +1 -1
  389. package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js +11 -11
  390. package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js.map +1 -1
  391. package/dist/collection/components/ic-toast/ic-toast.css +31 -17
  392. package/dist/collection/components/ic-toast/ic-toast.js +2 -3
  393. package/dist/collection/components/ic-toast/ic-toast.js.map +1 -1
  394. package/dist/collection/components/ic-toast/ic-toast.stories.js +396 -0
  395. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js +16 -16
  396. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js.map +1 -1
  397. package/dist/collection/components/ic-toggle-button/ic-toggle-button.css +187 -56
  398. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +149 -42
  399. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js.map +1 -1
  400. package/dist/collection/components/ic-toggle-button/ic-toggle-button.stories.js +427 -0
  401. package/dist/collection/components/ic-toggle-button/test/basic/ic-toggle-button.spec.js +10 -0
  402. package/dist/collection/components/ic-toggle-button/test/basic/ic-toggle-button.spec.js.map +1 -1
  403. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.css +23 -16
  404. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +144 -35
  405. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js.map +1 -1
  406. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.stories.js +585 -0
  407. package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js +187 -0
  408. package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js.map +1 -1
  409. package/dist/collection/components/ic-tooltip/ic-tooltip.css +7 -1
  410. package/dist/collection/components/ic-tooltip/ic-tooltip.js +2 -5
  411. package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
  412. package/dist/collection/components/ic-tooltip/ic-tooltip.stories.js +366 -0
  413. package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +49 -21
  414. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +39 -9
  415. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
  416. package/dist/collection/components/ic-top-navigation/ic-top-navigation.stories.js +1098 -0
  417. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js +3 -3
  418. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js.map +1 -1
  419. package/dist/collection/components/ic-typography/ic-typography.css +7 -9
  420. package/dist/collection/components/ic-typography/ic-typography.js +3 -1
  421. package/dist/collection/components/ic-typography/ic-typography.js.map +1 -1
  422. package/dist/collection/components/ic-typography/ic-typography.stories.js +447 -0
  423. package/dist/collection/patterns/top-nav-content-footer.stories.js +109 -0
  424. package/dist/collection/patterns/z-index.stories.js +474 -0
  425. package/dist/collection/testspec.setup.js +14 -0
  426. package/dist/collection/testspec.setup.js.map +1 -1
  427. package/dist/collection/utils/constants.js +1 -1
  428. package/dist/collection/utils/constants.js.map +1 -1
  429. package/dist/collection/utils/helpers.js +64 -19
  430. package/dist/collection/utils/helpers.js.map +1 -1
  431. package/dist/collection/utils/types.js +6 -6
  432. package/dist/collection/utils/types.js.map +1 -1
  433. package/dist/components/helpers.js +73 -26
  434. package/dist/components/helpers.js.map +1 -1
  435. package/dist/components/ic-accordion-group.js +11 -11
  436. package/dist/components/ic-accordion-group.js.map +1 -1
  437. package/dist/components/ic-accordion.js +14 -6
  438. package/dist/components/ic-accordion.js.map +1 -1
  439. package/dist/components/ic-alert.js +12 -16
  440. package/dist/components/ic-alert.js.map +1 -1
  441. package/dist/components/ic-back-to-top.js +9 -5
  442. package/dist/components/ic-back-to-top.js.map +1 -1
  443. package/dist/components/ic-badge.js +28 -5
  444. package/dist/components/ic-badge.js.map +1 -1
  445. package/dist/components/ic-breadcrumb-group.js +44 -20
  446. package/dist/components/ic-breadcrumb-group.js.map +1 -1
  447. package/dist/components/ic-breadcrumb2.js +49 -3
  448. package/dist/components/ic-breadcrumb2.js.map +1 -1
  449. package/dist/components/ic-button2.js +21 -20
  450. package/dist/components/ic-button2.js.map +1 -1
  451. package/dist/components/ic-card-vertical.js +54 -50
  452. package/dist/components/ic-card-vertical.js.map +1 -1
  453. package/dist/components/ic-checkbox-group.js +25 -7
  454. package/dist/components/ic-checkbox-group.js.map +1 -1
  455. package/dist/components/ic-checkbox.js +12 -4
  456. package/dist/components/ic-checkbox.js.map +1 -1
  457. package/dist/components/ic-chip.js +32 -16
  458. package/dist/components/ic-chip.js.map +1 -1
  459. package/dist/components/ic-classification-banner.js +1 -1
  460. package/dist/components/ic-classification-banner.js.map +1 -1
  461. package/dist/components/ic-data-row.js +1 -1
  462. package/dist/components/ic-dialog.js +13 -4
  463. package/dist/components/ic-dialog.js.map +1 -1
  464. package/dist/components/ic-divider2.js +89 -12
  465. package/dist/components/ic-divider2.js.map +1 -1
  466. package/dist/components/ic-empty-state.js +10 -17
  467. package/dist/components/ic-empty-state.js.map +1 -1
  468. package/dist/components/ic-footer-link-group.js +7 -8
  469. package/dist/components/ic-footer-link-group.js.map +1 -1
  470. package/dist/components/ic-footer-link.js +8 -7
  471. package/dist/components/ic-footer-link.js.map +1 -1
  472. package/dist/components/ic-footer.js +25 -15
  473. package/dist/components/ic-footer.js.map +1 -1
  474. package/dist/components/ic-hero.js +9 -17
  475. package/dist/components/ic-hero.js.map +1 -1
  476. package/dist/components/ic-horizontal-scroll2.js +19 -9
  477. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  478. package/dist/components/ic-input-component-container2.js +23 -32
  479. package/dist/components/ic-input-component-container2.js.map +1 -1
  480. package/dist/components/ic-input-label2.js +19 -20
  481. package/dist/components/ic-input-label2.js.map +1 -1
  482. package/dist/components/ic-input-validation2.js +9 -9
  483. package/dist/components/ic-input-validation2.js.map +1 -1
  484. package/dist/components/ic-link2.js +13 -15
  485. package/dist/components/ic-link2.js.map +1 -1
  486. package/dist/components/ic-loading-indicator2.js +11 -9
  487. package/dist/components/ic-loading-indicator2.js.map +1 -1
  488. package/dist/components/ic-menu-group.js +2 -2
  489. package/dist/components/ic-menu-group.js.map +1 -1
  490. package/dist/components/ic-menu-item2.js +30 -21
  491. package/dist/components/ic-menu-item2.js.map +1 -1
  492. package/dist/components/ic-menu2.js +472 -175
  493. package/dist/components/ic-menu2.js.map +1 -1
  494. package/dist/components/ic-navigation-button.js +13 -9
  495. package/dist/components/ic-navigation-button.js.map +1 -1
  496. package/dist/components/ic-navigation-group.js +12 -9
  497. package/dist/components/ic-navigation-group.js.map +1 -1
  498. package/dist/components/ic-navigation-item.js +64 -10
  499. package/dist/components/ic-navigation-item.js.map +1 -1
  500. package/dist/components/ic-navigation-menu2.js +6 -4
  501. package/dist/components/ic-navigation-menu2.js.map +1 -1
  502. package/dist/components/ic-page-header.js +9 -6
  503. package/dist/components/ic-page-header.js.map +1 -1
  504. package/dist/components/ic-pagination-item2.js +15 -12
  505. package/dist/components/ic-pagination-item2.js.map +1 -1
  506. package/dist/components/ic-pagination.js +25 -15
  507. package/dist/components/ic-pagination.js.map +1 -1
  508. package/dist/components/ic-popover-menu.js +50 -26
  509. package/dist/components/ic-popover-menu.js.map +1 -1
  510. package/dist/components/ic-radio-group.js +61 -29
  511. package/dist/components/ic-radio-group.js.map +1 -1
  512. package/dist/components/ic-radio-option.js +45 -23
  513. package/dist/components/ic-radio-option.js.map +1 -1
  514. package/dist/components/ic-search-bar.js +70 -81
  515. package/dist/components/ic-search-bar.js.map +1 -1
  516. package/dist/components/ic-select.js +196 -67
  517. package/dist/components/ic-select.js.map +1 -1
  518. package/dist/components/ic-side-navigation.js +17 -12
  519. package/dist/components/ic-side-navigation.js.map +1 -1
  520. package/dist/components/ic-skeleton.js +5 -5
  521. package/dist/components/ic-skeleton.js.map +1 -1
  522. package/dist/components/ic-status-tag.js +5 -3
  523. package/dist/components/ic-status-tag.js.map +1 -1
  524. package/dist/components/ic-step.js +4 -4
  525. package/dist/components/ic-step.js.map +1 -1
  526. package/dist/components/ic-stepper.js +14 -3
  527. package/dist/components/ic-stepper.js.map +1 -1
  528. package/dist/components/ic-switch.js +24 -18
  529. package/dist/components/ic-switch.js.map +1 -1
  530. package/dist/components/ic-tab-context.js +60 -123
  531. package/dist/components/ic-tab-context.js.map +1 -1
  532. package/dist/components/ic-tab-group.js +2 -18
  533. package/dist/components/ic-tab-group.js.map +1 -1
  534. package/dist/components/ic-tab-panel.js +1 -1
  535. package/dist/components/ic-tab-panel.js.map +1 -1
  536. package/dist/components/ic-tab.js +10 -8
  537. package/dist/components/ic-tab.js.map +1 -1
  538. package/dist/components/ic-text-field.js +371 -1
  539. package/dist/components/ic-text-field.js.map +1 -1
  540. package/dist/components/ic-theme.js +22 -22
  541. package/dist/components/ic-theme.js.map +1 -1
  542. package/dist/components/ic-toast.js +4 -4
  543. package/dist/components/ic-toast.js.map +1 -1
  544. package/dist/components/ic-toggle-button-group.js +75 -14
  545. package/dist/components/ic-toggle-button-group.js.map +1 -1
  546. package/dist/components/ic-toggle-button.js +76 -17
  547. package/dist/components/ic-toggle-button.js.map +1 -1
  548. package/dist/components/ic-tooltip2.js +1 -1
  549. package/dist/components/ic-tooltip2.js.map +1 -1
  550. package/dist/components/ic-top-navigation.js +15 -8
  551. package/dist/components/ic-top-navigation.js.map +1 -1
  552. package/dist/components/ic-typography2.js +4 -2
  553. package/dist/components/ic-typography2.js.map +1 -1
  554. package/dist/core/ag-theme-icds.css +218 -0
  555. package/dist/core/core.css +1601 -77
  556. package/dist/core/core.esm.js +1 -1
  557. package/dist/core/core.esm.js.map +1 -1
  558. package/dist/core/p-0cb72d37.entry.js +2 -0
  559. package/dist/core/p-0cb72d37.entry.js.map +1 -0
  560. package/dist/core/{p-a3b6a02d.entry.js → p-1223d0e9.entry.js} +2 -2
  561. package/dist/core/p-1223d0e9.entry.js.map +1 -0
  562. package/dist/core/p-190c3474.entry.js +2 -0
  563. package/dist/core/p-190c3474.entry.js.map +1 -0
  564. package/dist/core/p-199b9196.entry.js +2 -0
  565. package/dist/core/p-199b9196.entry.js.map +1 -0
  566. package/dist/core/p-1bf956cb.entry.js +2 -0
  567. package/dist/core/p-1bf956cb.entry.js.map +1 -0
  568. package/dist/core/{p-d8870804.entry.js → p-20ac0d2a.entry.js} +2 -2
  569. package/dist/core/p-2197e83e.entry.js +2 -0
  570. package/dist/core/p-2197e83e.entry.js.map +1 -0
  571. package/dist/core/{p-e861a2b3.entry.js → p-243ad74c.entry.js} +2 -2
  572. package/dist/core/p-243ad74c.entry.js.map +1 -0
  573. package/dist/core/p-24a34d72.entry.js +2 -0
  574. package/dist/core/p-24a34d72.entry.js.map +1 -0
  575. package/dist/core/{p-54238d16.entry.js → p-27274ca8.entry.js} +2 -2
  576. package/dist/core/p-27274ca8.entry.js.map +1 -0
  577. package/dist/core/p-29afeb33.entry.js +2 -0
  578. package/dist/core/p-29afeb33.entry.js.map +1 -0
  579. package/dist/core/p-2cc0d6b9.entry.js +2 -0
  580. package/dist/core/p-2cc0d6b9.entry.js.map +1 -0
  581. package/dist/core/p-31c84a47.entry.js +2 -0
  582. package/dist/core/p-31c84a47.entry.js.map +1 -0
  583. package/dist/core/p-33b44dc1.entry.js +2 -0
  584. package/dist/core/p-33b44dc1.entry.js.map +1 -0
  585. package/dist/core/p-36ac5305.entry.js +2 -0
  586. package/dist/core/p-36ac5305.entry.js.map +1 -0
  587. package/dist/core/p-404b482e.entry.js +2 -0
  588. package/dist/core/p-404b482e.entry.js.map +1 -0
  589. package/dist/core/{p-1e802eeb.entry.js → p-419d3378.entry.js} +2 -2
  590. package/dist/core/p-419d3378.entry.js.map +1 -0
  591. package/dist/core/p-47038ea3.entry.js +2 -0
  592. package/dist/core/p-47038ea3.entry.js.map +1 -0
  593. package/dist/core/p-490bf0ee.entry.js +2 -0
  594. package/dist/core/p-490bf0ee.entry.js.map +1 -0
  595. package/dist/core/p-4e6e34fe.entry.js +2 -0
  596. package/dist/core/p-4e6e34fe.entry.js.map +1 -0
  597. package/dist/core/p-4fce49bd.entry.js +2 -0
  598. package/dist/core/p-4fce49bd.entry.js.map +1 -0
  599. package/dist/core/p-50b04d0f.entry.js +2 -0
  600. package/dist/core/p-50b04d0f.entry.js.map +1 -0
  601. package/dist/core/p-5b42dbef.entry.js +2 -0
  602. package/dist/core/p-5b42dbef.entry.js.map +1 -0
  603. package/dist/core/p-5be2c26a.entry.js +2 -0
  604. package/dist/core/p-5be2c26a.entry.js.map +1 -0
  605. package/dist/core/p-5d5345a4.entry.js +2 -0
  606. package/dist/core/p-5d5345a4.entry.js.map +1 -0
  607. package/dist/core/p-5dcc0489.entry.js +2 -0
  608. package/dist/core/p-5dcc0489.entry.js.map +1 -0
  609. package/dist/core/p-5f6d6b3f.entry.js +2 -0
  610. package/dist/core/p-5f6d6b3f.entry.js.map +1 -0
  611. package/dist/core/p-5f74782e.entry.js +2 -0
  612. package/dist/core/p-5f74782e.entry.js.map +1 -0
  613. package/dist/core/p-641e244d.entry.js +2 -0
  614. package/dist/core/p-641e244d.entry.js.map +1 -0
  615. package/dist/core/{p-46ee459b.entry.js → p-6c1cf351.entry.js} +2 -2
  616. package/dist/core/p-6c1cf351.entry.js.map +1 -0
  617. package/dist/core/p-6e630778.entry.js +2 -0
  618. package/dist/core/p-6e630778.entry.js.map +1 -0
  619. package/dist/core/p-7c8cd719.entry.js +2 -0
  620. package/dist/core/p-7c8cd719.entry.js.map +1 -0
  621. package/dist/core/p-7c94e055.entry.js +2 -0
  622. package/dist/core/p-7c94e055.entry.js.map +1 -0
  623. package/dist/core/p-7fa74998.entry.js +2 -0
  624. package/dist/core/p-7fa74998.entry.js.map +1 -0
  625. package/dist/core/p-7ff4632d.entry.js +2 -0
  626. package/dist/core/p-7ff4632d.entry.js.map +1 -0
  627. package/dist/core/p-84c3a870.entry.js +2 -0
  628. package/dist/core/p-84c3a870.entry.js.map +1 -0
  629. package/dist/core/p-8624bb98.entry.js +2 -0
  630. package/dist/core/p-8624bb98.entry.js.map +1 -0
  631. package/dist/core/p-87aa30b4.entry.js +2 -0
  632. package/dist/core/p-87aa30b4.entry.js.map +1 -0
  633. package/dist/core/p-932f3e3c.js +2 -0
  634. package/dist/core/p-932f3e3c.js.map +1 -0
  635. package/dist/core/{p-e597da0e.entry.js → p-96b4ca6e.entry.js} +2 -2
  636. package/dist/core/p-96b4ca6e.entry.js.map +1 -0
  637. package/dist/core/p-9ad4bbf4.entry.js +2 -0
  638. package/dist/core/p-9ad4bbf4.entry.js.map +1 -0
  639. package/dist/core/p-9cfd6855.entry.js +2 -0
  640. package/dist/core/p-9cfd6855.entry.js.map +1 -0
  641. package/dist/core/p-a38f5453.entry.js +2 -0
  642. package/dist/core/p-a38f5453.entry.js.map +1 -0
  643. package/dist/core/p-af934e73.entry.js +2 -0
  644. package/dist/core/p-af934e73.entry.js.map +1 -0
  645. package/dist/core/p-b9941d97.entry.js +2 -0
  646. package/dist/core/p-b9941d97.entry.js.map +1 -0
  647. package/dist/core/p-cf0176be.entry.js +2 -0
  648. package/dist/core/p-cf0176be.entry.js.map +1 -0
  649. package/dist/core/p-cf5d88a9.entry.js +2 -0
  650. package/dist/core/p-cf5d88a9.entry.js.map +1 -0
  651. package/dist/core/p-d21d8014.entry.js +2 -0
  652. package/dist/core/p-d21d8014.entry.js.map +1 -0
  653. package/dist/core/p-df957570.entry.js +2 -0
  654. package/dist/core/p-df957570.entry.js.map +1 -0
  655. package/dist/core/p-e0730a5d.entry.js +2 -0
  656. package/dist/core/p-e0730a5d.entry.js.map +1 -0
  657. package/dist/core/p-e1f8d915.entry.js +2 -0
  658. package/dist/core/p-e1f8d915.entry.js.map +1 -0
  659. package/dist/core/{p-5a2630fb.entry.js → p-e4cb5585.entry.js} +2 -2
  660. package/dist/core/p-e4cb5585.entry.js.map +1 -0
  661. package/dist/core/p-f073fc69.entry.js +2 -0
  662. package/dist/core/p-f073fc69.entry.js.map +1 -0
  663. package/dist/core/p-f2d9eefe.entry.js +2 -0
  664. package/dist/core/p-f2d9eefe.entry.js.map +1 -0
  665. package/dist/core/p-f7872eef.entry.js +2 -0
  666. package/dist/core/p-f7872eef.entry.js.map +1 -0
  667. package/dist/core/{p-bf4c61cb.entry.js → p-f9dceda0.entry.js} +2 -2
  668. package/dist/core/{p-bf4c61cb.entry.js.map → p-f9dceda0.entry.js.map} +1 -1
  669. package/dist/core/{p-c81109da.entry.js → p-fac53f92.entry.js} +2 -2
  670. package/dist/core/p-fac53f92.entry.js.map +1 -0
  671. package/dist/esm/core.js +1 -1
  672. package/dist/esm/{helpers-1c9151ef.js → helpers-2624c32c.js} +74 -27
  673. package/dist/esm/helpers-2624c32c.js.map +1 -0
  674. package/dist/esm/ic-accordion-group.entry.js +10 -10
  675. package/dist/esm/ic-accordion-group.entry.js.map +1 -1
  676. package/dist/esm/ic-accordion.entry.js +12 -5
  677. package/dist/esm/ic-accordion.entry.js.map +1 -1
  678. package/dist/esm/ic-alert.entry.js +10 -15
  679. package/dist/esm/ic-alert.entry.js.map +1 -1
  680. package/dist/esm/ic-back-to-top.entry.js +9 -6
  681. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  682. package/dist/esm/ic-badge.entry.js +26 -3
  683. package/dist/esm/ic-badge.entry.js.map +1 -1
  684. package/dist/esm/ic-breadcrumb-group.entry.js +43 -20
  685. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  686. package/dist/esm/ic-breadcrumb.entry.js +47 -3
  687. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  688. package/dist/esm/ic-button_3.entry.js +28 -26
  689. package/dist/esm/ic-button_3.entry.js.map +1 -1
  690. package/dist/esm/ic-card-vertical.entry.js +49 -48
  691. package/dist/esm/ic-card-vertical.entry.js.map +1 -1
  692. package/dist/esm/ic-checkbox-group.entry.js +21 -6
  693. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  694. package/dist/esm/ic-checkbox.entry.js +10 -4
  695. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  696. package/dist/esm/ic-chip.entry.js +28 -16
  697. package/dist/esm/ic-chip.entry.js.map +1 -1
  698. package/dist/esm/ic-classification-banner.entry.js +1 -1
  699. package/dist/esm/ic-classification-banner.entry.js.map +1 -1
  700. package/dist/esm/ic-data-row.entry.js +1 -1
  701. package/dist/esm/ic-dialog.entry.js +13 -5
  702. package/dist/esm/ic-dialog.entry.js.map +1 -1
  703. package/dist/esm/ic-divider.entry.js +74 -10
  704. package/dist/esm/ic-divider.entry.js.map +1 -1
  705. package/dist/esm/ic-empty-state.entry.js +8 -16
  706. package/dist/esm/ic-empty-state.entry.js.map +1 -1
  707. package/dist/esm/ic-footer-link-group.entry.js +6 -7
  708. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  709. package/dist/esm/ic-footer-link.entry.js +7 -6
  710. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  711. package/dist/esm/ic-footer.entry.js +24 -14
  712. package/dist/esm/ic-footer.entry.js.map +1 -1
  713. package/dist/esm/ic-hero.entry.js +8 -16
  714. package/dist/esm/ic-hero.entry.js.map +1 -1
  715. package/dist/esm/ic-horizontal-scroll.entry.js +17 -9
  716. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  717. package/dist/esm/ic-input-component-container_3.entry.js +487 -201
  718. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  719. package/dist/esm/ic-input-label_2.entry.js +24 -26
  720. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  721. package/dist/esm/ic-link.entry.js +10 -12
  722. package/dist/esm/ic-link.entry.js.map +1 -1
  723. package/dist/esm/ic-menu-group.entry.js +3 -3
  724. package/dist/esm/ic-menu-group.entry.js.map +1 -1
  725. package/dist/esm/ic-menu-item.entry.js +25 -18
  726. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  727. package/dist/esm/ic-navigation-button.entry.js +11 -8
  728. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  729. package/dist/esm/ic-navigation-group.entry.js +10 -8
  730. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  731. package/dist/esm/ic-navigation-item.entry.js +61 -9
  732. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  733. package/dist/esm/ic-navigation-menu.entry.js +5 -4
  734. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  735. package/dist/esm/ic-page-header.entry.js +8 -6
  736. package/dist/esm/ic-page-header.entry.js.map +1 -1
  737. package/dist/esm/ic-pagination-item.entry.js +12 -11
  738. package/dist/esm/ic-pagination-item.entry.js.map +1 -1
  739. package/dist/esm/ic-pagination.entry.js +23 -15
  740. package/dist/esm/ic-pagination.entry.js.map +1 -1
  741. package/dist/esm/ic-popover-menu.entry.js +47 -25
  742. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  743. package/dist/esm/ic-radio-group.entry.js +58 -28
  744. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  745. package/dist/esm/ic-radio-option.entry.js +42 -22
  746. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  747. package/dist/esm/ic-search-bar.entry.js +54 -56
  748. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  749. package/dist/esm/ic-select.entry.js +192 -66
  750. package/dist/esm/ic-select.entry.js.map +1 -1
  751. package/dist/esm/ic-side-navigation.entry.js +16 -11
  752. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  753. package/dist/esm/ic-skeleton.entry.js +4 -4
  754. package/dist/esm/ic-skeleton.entry.js.map +1 -1
  755. package/dist/esm/ic-status-tag.entry.js +5 -4
  756. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  757. package/dist/esm/ic-step.entry.js +4 -5
  758. package/dist/esm/ic-step.entry.js.map +1 -1
  759. package/dist/esm/ic-stepper.entry.js +12 -2
  760. package/dist/esm/ic-stepper.entry.js.map +1 -1
  761. package/dist/esm/ic-switch.entry.js +21 -16
  762. package/dist/esm/ic-switch.entry.js.map +1 -1
  763. package/dist/esm/ic-tab-context.entry.js +60 -123
  764. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  765. package/dist/esm/ic-tab-group.entry.js +3 -19
  766. package/dist/esm/ic-tab-group.entry.js.map +1 -1
  767. package/dist/esm/ic-tab-panel.entry.js +2 -2
  768. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  769. package/dist/esm/ic-tab.entry.js +10 -8
  770. package/dist/esm/ic-tab.entry.js.map +1 -1
  771. package/dist/esm/ic-text-field.entry.js +43 -23
  772. package/dist/esm/ic-text-field.entry.js.map +1 -1
  773. package/dist/esm/ic-theme.entry.js +20 -20
  774. package/dist/esm/ic-theme.entry.js.map +1 -1
  775. package/dist/esm/ic-toast.entry.js +4 -4
  776. package/dist/esm/ic-toast.entry.js.map +1 -1
  777. package/dist/esm/ic-toggle-button-group.entry.js +62 -12
  778. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  779. package/dist/esm/ic-toggle-button.entry.js +64 -9
  780. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  781. package/dist/esm/ic-top-navigation.entry.js +13 -7
  782. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  783. package/dist/esm/ic-typography.entry.js +5 -3
  784. package/dist/esm/ic-typography.entry.js.map +1 -1
  785. package/dist/esm/index-d1d2c456.js +4 -4
  786. package/dist/esm/loader.js +1 -1
  787. package/dist/types/components/ic-accordion/ic-accordion.d.ts +7 -5
  788. package/dist/types/components/ic-accordion-group/ic-accordion-group.d.ts +4 -4
  789. package/dist/types/components/ic-alert/ic-alert.d.ts +9 -6
  790. package/dist/types/components/ic-back-to-top/ic-back-to-top.d.ts +5 -0
  791. package/dist/types/components/ic-badge/ic-badge.d.ts +5 -0
  792. package/dist/types/components/ic-breadcrumb/ic-breadcrumb.d.ts +8 -0
  793. package/dist/types/components/ic-breadcrumb-group/ic-breadcrumb-group.d.ts +1 -0
  794. package/dist/types/components/ic-button/ic-button.d.ts +11 -7
  795. package/dist/types/components/ic-button/ic-button.types.d.ts +0 -1
  796. package/dist/types/components/ic-card-vertical/ic-card-vertical.d.ts +9 -5
  797. package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +7 -2
  798. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +8 -1
  799. package/dist/types/components/ic-chip/ic-chip.d.ts +13 -2
  800. package/dist/types/components/ic-dialog/ic-dialog.d.ts +7 -2
  801. package/dist/types/components/ic-divider/ic-divider.d.ts +33 -3
  802. package/dist/types/components/ic-divider/ic-divider.types.d.ts +3 -0
  803. package/dist/types/components/ic-empty-state/ic-empty-state.d.ts +5 -2
  804. package/dist/types/components/ic-footer/ic-footer.d.ts +4 -3
  805. package/dist/types/components/ic-footer-link/ic-footer-link.d.ts +3 -3
  806. package/dist/types/components/ic-footer-link-group/ic-footer-link-group.d.ts +3 -2
  807. package/dist/types/components/ic-hero/ic-hero.d.ts +3 -4
  808. package/dist/types/components/ic-horizontal-scroll/ic-horizontal-scroll.d.ts +8 -2
  809. package/dist/types/components/ic-input-component-container/ic-input-component-container.d.ts +2 -5
  810. package/dist/types/components/ic-input-label/ic-input-label.d.ts +8 -4
  811. package/dist/types/components/ic-link/ic-link.d.ts +2 -2
  812. package/dist/types/components/ic-loading-indicator/ic-loading-indicator.d.ts +9 -5
  813. package/dist/types/components/ic-menu/ic-menu.d.ts +49 -16
  814. package/dist/types/components/ic-menu-item/ic-menu-item.d.ts +12 -5
  815. package/dist/types/components/ic-navigation-button/ic-navigation-button.d.ts +7 -3
  816. package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +7 -3
  817. package/dist/types/components/ic-navigation-item/ic-navigation-item.d.ts +14 -3
  818. package/dist/types/components/ic-navigation-menu/ic-navigation-menu.d.ts +5 -0
  819. package/dist/types/components/ic-page-header/ic-page-header.d.ts +5 -1
  820. package/dist/types/components/ic-pagination/ic-pagination.d.ts +10 -5
  821. package/dist/types/components/ic-pagination-item/ic-pagination-item.d.ts +10 -5
  822. package/dist/types/components/ic-popover-menu/ic-popover-menu.d.ts +9 -7
  823. package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +6 -1
  824. package/dist/types/components/ic-radio-option/ic-radio-option.d.ts +10 -3
  825. package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +15 -3
  826. package/dist/types/components/ic-select/ic-select.d.ts +36 -16
  827. package/dist/types/components/ic-side-navigation/ic-side-navigation.d.ts +3 -3
  828. package/dist/types/components/ic-side-navigation/ic-side-navigation.types.d.ts +2 -2
  829. package/dist/types/components/ic-skeleton/ic-skeleton.d.ts +3 -2
  830. package/dist/types/components/ic-status-tag/ic-status-tag.d.ts +4 -0
  831. package/dist/types/components/ic-step/ic-step.d.ts +5 -0
  832. package/dist/types/components/ic-stepper/ic-stepper.d.ts +6 -4
  833. package/dist/types/components/ic-switch/ic-switch.d.ts +7 -6
  834. package/dist/types/components/ic-tab/ic-tab.d.ts +1 -0
  835. package/dist/types/components/ic-tab-context/ic-tab-context.d.ts +8 -6
  836. package/dist/types/components/ic-tab-group/ic-tab-group.d.ts +0 -4
  837. package/dist/types/components/ic-text-field/ic-text-field.d.ts +10 -2
  838. package/dist/types/components/ic-theme/ic-theme.d.ts +8 -8
  839. package/dist/types/components/ic-toggle-button/ic-toggle-button.d.ts +16 -7
  840. package/dist/types/components/ic-toggle-button-group/ic-toggle-button-group.d.ts +21 -5
  841. package/dist/types/components/ic-tooltip/ic-tooltip.d.ts +1 -1
  842. package/dist/types/components/ic-top-navigation/ic-top-navigation.d.ts +7 -3
  843. package/dist/types/components.d.ts +516 -159
  844. package/dist/types/testspec.setup.d.ts +9 -0
  845. package/dist/types/utils/helpers.d.ts +22 -8
  846. package/dist/types/utils/types.d.ts +8 -6
  847. package/hydrate/index.js +1974 -1046
  848. package/package.json +20 -19
  849. package/vscode-data.json +655 -166
  850. package/dist/cjs/helpers-f1cf5156.js.map +0 -1
  851. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.e2e.js +0 -339
  852. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.e2e.js.map +0 -1
  853. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.e2e.js +0 -1106
  854. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.e2e.js.map +0 -1
  855. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.e2e.js +0 -49
  856. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.e2e.js.map +0 -1
  857. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.e2e.js +0 -109
  858. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.e2e.js.map +0 -1
  859. package/dist/collection/components/ic-typography/test/basic/ic-typography.e2e.js +0 -39
  860. package/dist/collection/components/ic-typography/test/basic/ic-typography.e2e.js.map +0 -1
  861. package/dist/components/ic-text-field2.js +0 -353
  862. package/dist/components/ic-text-field2.js.map +0 -1
  863. package/dist/core/p-09104e40.entry.js +0 -2
  864. package/dist/core/p-09104e40.entry.js.map +0 -1
  865. package/dist/core/p-0c0b1c74.entry.js +0 -2
  866. package/dist/core/p-0c0b1c74.entry.js.map +0 -1
  867. package/dist/core/p-0c3a0d85.entry.js +0 -2
  868. package/dist/core/p-0c3a0d85.entry.js.map +0 -1
  869. package/dist/core/p-1083a708.entry.js +0 -2
  870. package/dist/core/p-1083a708.entry.js.map +0 -1
  871. package/dist/core/p-130dd440.entry.js +0 -2
  872. package/dist/core/p-130dd440.entry.js.map +0 -1
  873. package/dist/core/p-1e802eeb.entry.js.map +0 -1
  874. package/dist/core/p-21312898.entry.js +0 -2
  875. package/dist/core/p-21312898.entry.js.map +0 -1
  876. package/dist/core/p-21e5dd29.entry.js +0 -2
  877. package/dist/core/p-21e5dd29.entry.js.map +0 -1
  878. package/dist/core/p-2ab86057.entry.js +0 -2
  879. package/dist/core/p-2ab86057.entry.js.map +0 -1
  880. package/dist/core/p-312cacae.js +0 -2
  881. package/dist/core/p-312cacae.js.map +0 -1
  882. package/dist/core/p-31fc8756.entry.js +0 -2
  883. package/dist/core/p-31fc8756.entry.js.map +0 -1
  884. package/dist/core/p-355acffa.entry.js +0 -2
  885. package/dist/core/p-355acffa.entry.js.map +0 -1
  886. package/dist/core/p-35b8b480.entry.js +0 -2
  887. package/dist/core/p-35b8b480.entry.js.map +0 -1
  888. package/dist/core/p-363d6e88.entry.js +0 -2
  889. package/dist/core/p-363d6e88.entry.js.map +0 -1
  890. package/dist/core/p-40e9e76a.entry.js +0 -2
  891. package/dist/core/p-40e9e76a.entry.js.map +0 -1
  892. package/dist/core/p-43f9a711.entry.js +0 -2
  893. package/dist/core/p-43f9a711.entry.js.map +0 -1
  894. package/dist/core/p-46ee459b.entry.js.map +0 -1
  895. package/dist/core/p-54238d16.entry.js.map +0 -1
  896. package/dist/core/p-550d7356.entry.js +0 -2
  897. package/dist/core/p-550d7356.entry.js.map +0 -1
  898. package/dist/core/p-56d1828c.entry.js +0 -2
  899. package/dist/core/p-56d1828c.entry.js.map +0 -1
  900. package/dist/core/p-5a2630fb.entry.js.map +0 -1
  901. package/dist/core/p-5a52614c.entry.js +0 -2
  902. package/dist/core/p-5a52614c.entry.js.map +0 -1
  903. package/dist/core/p-60efd7fa.entry.js +0 -2
  904. package/dist/core/p-60efd7fa.entry.js.map +0 -1
  905. package/dist/core/p-69f3ce5a.entry.js +0 -2
  906. package/dist/core/p-69f3ce5a.entry.js.map +0 -1
  907. package/dist/core/p-78ce4920.entry.js +0 -2
  908. package/dist/core/p-78ce4920.entry.js.map +0 -1
  909. package/dist/core/p-79d2a33b.entry.js +0 -2
  910. package/dist/core/p-79d2a33b.entry.js.map +0 -1
  911. package/dist/core/p-80237a20.entry.js +0 -2
  912. package/dist/core/p-80237a20.entry.js.map +0 -1
  913. package/dist/core/p-804513ad.entry.js +0 -2
  914. package/dist/core/p-804513ad.entry.js.map +0 -1
  915. package/dist/core/p-82375dca.entry.js +0 -2
  916. package/dist/core/p-82375dca.entry.js.map +0 -1
  917. package/dist/core/p-8e1e25a7.entry.js +0 -2
  918. package/dist/core/p-8e1e25a7.entry.js.map +0 -1
  919. package/dist/core/p-a1a1000d.entry.js +0 -2
  920. package/dist/core/p-a1a1000d.entry.js.map +0 -1
  921. package/dist/core/p-a1b1a0ab.entry.js +0 -2
  922. package/dist/core/p-a1b1a0ab.entry.js.map +0 -1
  923. package/dist/core/p-a37bcdbe.entry.js +0 -2
  924. package/dist/core/p-a37bcdbe.entry.js.map +0 -1
  925. package/dist/core/p-a3b6a02d.entry.js.map +0 -1
  926. package/dist/core/p-a765ad17.entry.js +0 -2
  927. package/dist/core/p-a765ad17.entry.js.map +0 -1
  928. package/dist/core/p-aa2be24c.entry.js +0 -2
  929. package/dist/core/p-aa2be24c.entry.js.map +0 -1
  930. package/dist/core/p-b12a5283.entry.js +0 -2
  931. package/dist/core/p-b12a5283.entry.js.map +0 -1
  932. package/dist/core/p-b1b05979.entry.js +0 -2
  933. package/dist/core/p-b1b05979.entry.js.map +0 -1
  934. package/dist/core/p-c6795377.entry.js +0 -2
  935. package/dist/core/p-c6795377.entry.js.map +0 -1
  936. package/dist/core/p-c81109da.entry.js.map +0 -1
  937. package/dist/core/p-cb4d104e.entry.js +0 -2
  938. package/dist/core/p-cb4d104e.entry.js.map +0 -1
  939. package/dist/core/p-d2f89cb5.entry.js +0 -2
  940. package/dist/core/p-d2f89cb5.entry.js.map +0 -1
  941. package/dist/core/p-d43d1ec0.entry.js +0 -2
  942. package/dist/core/p-d43d1ec0.entry.js.map +0 -1
  943. package/dist/core/p-d5829a35.entry.js +0 -2
  944. package/dist/core/p-d5829a35.entry.js.map +0 -1
  945. package/dist/core/p-ddb8d280.entry.js +0 -2
  946. package/dist/core/p-ddb8d280.entry.js.map +0 -1
  947. package/dist/core/p-e0e34fa7.entry.js +0 -2
  948. package/dist/core/p-e0e34fa7.entry.js.map +0 -1
  949. package/dist/core/p-e4b276b5.entry.js +0 -2
  950. package/dist/core/p-e4b276b5.entry.js.map +0 -1
  951. package/dist/core/p-e597da0e.entry.js.map +0 -1
  952. package/dist/core/p-e861a2b3.entry.js.map +0 -1
  953. package/dist/core/p-ea277b05.entry.js +0 -2
  954. package/dist/core/p-ea277b05.entry.js.map +0 -1
  955. package/dist/core/p-ef871b8f.entry.js +0 -2
  956. package/dist/core/p-ef871b8f.entry.js.map +0 -1
  957. package/dist/core/p-f229d19e.entry.js +0 -2
  958. package/dist/core/p-f229d19e.entry.js.map +0 -1
  959. package/dist/core/p-f30f3a3e.entry.js +0 -2
  960. package/dist/core/p-f30f3a3e.entry.js.map +0 -1
  961. package/dist/core/p-fa587e6d.entry.js +0 -2
  962. package/dist/core/p-fa587e6d.entry.js.map +0 -1
  963. package/dist/core/p-fb6ac08d.entry.js +0 -2
  964. package/dist/core/p-fb6ac08d.entry.js.map +0 -1
  965. package/dist/esm/helpers-1c9151ef.js.map +0 -1
  966. /package/dist/core/{p-d8870804.entry.js.map → p-20ac0d2a.entry.js.map} +0 -0
@@ -1,6 +1,13 @@
1
1
  import { newSpecPage } from "@stencil/core/testing";
2
2
  import { CardVertical } from "../../ic-card-vertical";
3
+ import { mockHasDynamicChildSlots, mockMutationObserverImplementation, mockRenderDynamicChildSlots, } from "../../../../testspec.setup";
3
4
  describe("ic-card-vertical", () => {
5
+ afterAll(() => {
6
+ jest.restoreAllMocks();
7
+ });
8
+ afterEach(() => {
9
+ jest.clearAllMocks();
10
+ });
4
11
  it("should render", async () => {
5
12
  const page = await newSpecPage({
6
13
  components: [CardVertical],
@@ -36,6 +43,16 @@ describe("ic-card-vertical", () => {
36
43
  });
37
44
  expect(page.root).toMatchSnapshot();
38
45
  });
46
+ it("should correctly remove disabled attribute when setting disabled to false", async () => {
47
+ const page = await newSpecPage({
48
+ components: [CardVertical],
49
+ html: `<ic-card-vertical heading="Card" disabled message="This is a full width card" clickable=true></ic-card-vertical>`,
50
+ });
51
+ expect(page.root).toMatchSnapshot("disabled");
52
+ page.rootInstance.disabled = false;
53
+ await page.waitForChanges();
54
+ expect(page.root).toMatchSnapshot("disabled-removed");
55
+ });
39
56
  it("should apply 'focussed' style when parent is focussed", async () => {
40
57
  const page = await newSpecPage({
41
58
  components: [CardVertical],
@@ -153,21 +170,45 @@ describe("ic-card-vertical", () => {
153
170
  components: [CardVertical],
154
171
  html: `<ic-card-vertical heading="Card" message="This is a static card"></ic-card-vertical>`,
155
172
  });
173
+ const component = page.rootInstance;
174
+ const host = page.root;
175
+ const observerInstance = mockMutationObserverImplementation.mock.results[0].value;
176
+ observerInstance.observe(host, { childList: true });
156
177
  const icon = document.createElement("svg");
157
178
  icon.setAttribute("slot", "icon");
179
+ host.appendChild(icon);
158
180
  const imageMid = document.createElement("svg");
159
181
  imageMid.setAttribute("slot", "image-mid");
182
+ host.appendChild(imageMid);
160
183
  const imageTop = document.createElement("svg");
161
184
  imageTop.setAttribute("slot", "image-top");
185
+ host.appendChild(imageTop);
162
186
  const button = document.createElement("button");
163
187
  button.setAttribute("slot", "interaction-button");
164
- page.rootInstance.hostMutationCallback([
188
+ host.appendChild(button);
189
+ const mockMutationRecord = [
165
190
  {
166
- type: "childList",
167
191
  addedNodes: [icon, imageMid, imageTop, button],
168
192
  removedNodes: [],
193
+ target: host,
169
194
  },
170
- ]);
195
+ ];
196
+ observerInstance.trigger(mockMutationRecord);
197
+ await page.waitForChanges();
198
+ expect(mockRenderDynamicChildSlots).toHaveBeenCalledTimes(1);
199
+ expect(mockRenderDynamicChildSlots).toHaveBeenCalledWith(mockMutationRecord, [
200
+ "message",
201
+ "adornment",
202
+ "expanded-content",
203
+ "image-top",
204
+ "image-mid",
205
+ "icon",
206
+ "interaction-button",
207
+ "badge",
208
+ "interaction-controls",
209
+ ], component);
210
+ expect(mockHasDynamicChildSlots).toHaveBeenCalledTimes(1);
211
+ expect(page.root).toMatchSnapshot();
171
212
  });
172
213
  });
173
214
  //# sourceMappingURL=ic-card-vertical.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ic-card-vertical.spec.js","sourceRoot":"","sources":["../../../../../src/components/ic-card-vertical/test/basic/ic-card-vertical.spec.ts"],"names":[],"mappings":"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","sourcesContent":["import { newSpecPage } from \"@stencil/core/testing\";\nimport { CardVertical } from \"../../ic-card-vertical\";\n\ndescribe(\"ic-card-vertical\", () => {\n it(\"should render\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical heading=\"Card\" message=\"This is a static card\"></ic-card-vertical>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render as a button\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical heading=\"Card\" message=\"This is a clickable card rendered as a button\" clickable=true></ic-card-vertical>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render as a link\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical heading=\"Card\" message=\"This is a clickable card rendered as a button\" clickable=true href=\"/\"></ic-card-vertical>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render full width variant\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical heading=\"Card\" full-width=true message=\"This is a full width card\" clickable=true></ic-card-vertical>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a link parent\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<a href=\"/\"><ic-card-vertical heading=\"Card\" message=\"This is a clickable card\" clickable=true></ic-card-vertical></a>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should apply 'focussed' style when parent is focussed\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<a href=\"/\"><ic-card-vertical id=\"test-id\" heading=\"Card\" message=\"This is a clickable card\" clickable=true></ic-card-vertical></a>`,\n });\n\n expect(page.root).not.toBeNull;\n\n const element = await document.getElementById(\"test-id\");\n\n await expect(element.classList.contains(\"focussed\")).toBeFalsy;\n\n await element.focus();\n\n await expect(element.classList.contains(\"focussed\")).toBeTruthy;\n });\n\n it(\"should lose 'focussed' style when parent loses focus\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<a href=\"/\"><ic-card-vertical id=\"test-card\" heading=\"Card\" message=\"This is a clickable card\" clickable=true></ic-card-vertical></a>`,\n });\n\n expect(page.root).not.toBeNull;\n\n const element = await document.getElementById(\"test-card\");\n\n await element.focus();\n\n await expect(element.classList.contains(\"focussed\")).toBeTruthy;\n\n await element.blur();\n\n await expect(element.classList.contains(\"focussed\")).toBeFalsy;\n\n await page.rootInstance.disconnectedCallback();\n });\n\n it(\"should stop immediate propagation of a click event when disabled\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical id=\"test-card\" heading=\"Card\" message=\"This is a clickable card\" clickable=true disabled=true onclick=\"alert('test')\"></ic-card-vertical>`,\n });\n\n jest.spyOn(window, \"alert\").mockImplementation();\n\n const element = await document.getElementById(\"test-card\");\n\n element.click();\n\n await page.waitForChanges();\n\n await expect(window.alert).not.toHaveBeenCalled;\n });\n\n it(\"should render with a subheading\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical id=\"test-card\" heading=\"Card\" subheading=\"Card subheading\" message=\"This is a card\"></ic-card-vertical>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with an interaction button\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical id=\"test-card\" heading=\"Card\" subheading=\"Card subheading\" message=\"This is a card\"><ic-button variant=\"primary\" slot=\"interaction-button\">Click here</ic-button></ic-card-vertical>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a top image\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical id=\"test-card\" heading=\"Card\" subheading=\"Card subheading\" message=\"This is a card\"><div slot=\"image-top\">Image placeholder</div></ic-card-vertical>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a middle image\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical id=\"test-card\" heading=\"Card\" subheading=\"Card subheading\" message=\"This is a card\"><div slot=\"image-mid\">Image placeholder</div></ic-card-vertical>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with interaction controls\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical id=\"test-card\" heading=\"Card\" subheading=\"Card subheading\" message=\"This is a card\"><ic-button slot=\"interaction-controls\">Click here</ic-button></ic-card-vertical>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render as expandable\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical id=\"test-card\" heading=\"Card\" subheading=\"Card subheading\" message=\"This is a card\" expandable></ic-card-vertical>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render content in expanded area\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical id=\"test-card\" heading=\"Card\" subheading=\"Card subheading\" message=\"This is a card\" expandable><ic-typography slot=\"expanded-content\">Extra content</ic-typography></ic-card-vertical>`,\n });\n\n page.rootInstance.areaExpanded = true;\n\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should toggle expanded content when expansion toggle is clicked\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical id=\"test-card\" heading=\"Card\" message=\"This is a clickable card\" expandable><ic-typography slot=\"expanded-content\">Expanded</ic-typography></ic-card-vertical>`,\n });\n\n expect(page.root).toMatchSnapshot();\n\n page.rootInstance.toggleExpanded();\n\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should call 'setFocus' when card as a button is focused\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical heading=\"Card\" message=\"This is a clickable card rendered as a button\" clickable=true></ic-card-vertical>`,\n });\n\n //Can't expect anything in this test - this is to increase code coverage only\n await page.rootInstance.setFocus().toHaveBeenCalled;\n });\n\n it(\"should call 'setFocus' when card as a link is focused\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical heading=\"Card\" message=\"This is a clickable card rendered as a button\" clickable=true href=\"/\"></ic-card-vertical>`,\n });\n\n //Can't expect anything in this test - this is to increase code coverage only\n await page.rootInstance.setFocus().toHaveBeenCalled;\n });\n\n it(\"should test rendering slotted after initial render\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical heading=\"Card\" message=\"This is a static card\"></ic-card-vertical>`,\n });\n\n const icon = document.createElement(\"svg\");\n icon.setAttribute(\"slot\", \"icon\");\n\n const imageMid = document.createElement(\"svg\");\n imageMid.setAttribute(\"slot\", \"image-mid\");\n\n const imageTop = document.createElement(\"svg\");\n imageTop.setAttribute(\"slot\", \"image-top\");\n\n const button = document.createElement(\"button\");\n button.setAttribute(\"slot\", \"interaction-button\");\n\n page.rootInstance.hostMutationCallback([\n {\n type: \"childList\",\n addedNodes: [icon, imageMid, imageTop, button],\n removedNodes: [],\n },\n ]);\n });\n});\n"]}
1
+ {"version":3,"file":"ic-card-vertical.spec.js","sourceRoot":"","sources":["../../../../../src/components/ic-card-vertical/test/basic/ic-card-vertical.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EACL,wBAAwB,EACxB,kCAAkC,EAElC,2BAA2B,GAC5B,MAAM,4BAA4B,CAAC;AAEpC,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,QAAQ,CAAC,GAAG,EAAE;QACZ,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE;QAC7B,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,YAAY,CAAC;YAC1B,IAAI,EAAE,sFAAsF;SAC7F,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;QACzC,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,YAAY,CAAC;YAC1B,IAAI,EAAE,6HAA6H;SACpI,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;QACvC,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,YAAY,CAAC;YAC1B,IAAI,EAAE,sIAAsI;SAC7I,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;QAChD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,YAAY,CAAC;YAC1B,IAAI,EAAE,yHAAyH;SAChI,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;QAChD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,YAAY,CAAC;YAC1B,IAAI,EAAE,wHAAwH;SAC/H,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;QACzF,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,YAAY,CAAC;YAC1B,IAAI,EAAE,kHAAkH;SACzH,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QAE9C,IAAI,CAAC,YAAY,CAAC,QAAQ,GAAG,KAAK,CAAC;QAEnC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,kBAAkB,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;QACrE,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,YAAY,CAAC;YAC1B,IAAI,EAAE,qIAAqI;SAC5I,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC;QAE/B,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAEzD,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;QAE/D,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;QAEtB,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC;IAClE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;QACpE,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,YAAY,CAAC;YAC1B,IAAI,EAAE,uIAAuI;SAC9I,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC;QAE/B,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAE3D,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;QAEtB,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC;QAEhE,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;QAErB,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;QAE/D,MAAM,IAAI,CAAC,YAAY,CAAC,oBAAoB,EAAE,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;QAChF,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,YAAY,CAAC;YAC1B,IAAI,EAAE,6JAA6J;SACpK,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,kBAAkB,EAAE,CAAC;QAEjD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAE3D,OAAO,CAAC,KAAK,EAAE,CAAC;QAEhB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,MAAM,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;QAC/C,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,YAAY,CAAC;YAC1B,IAAI,EAAE,2HAA2H;SAClI,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,YAAY,CAAC;YAC1B,IAAI,EAAE,wMAAwM;SAC/M,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;QAC9C,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,YAAY,CAAC;YAC1B,IAAI,EAAE,wKAAwK;SAC/K,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,YAAY,CAAC;YAC1B,IAAI,EAAE,wKAAwK;SAC/K,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QACvD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,YAAY,CAAC;YAC1B,IAAI,EAAE,wLAAwL;SAC/L,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE;QAC3C,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,YAAY,CAAC;YAC1B,IAAI,EAAE,sIAAsI;SAC7I,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;QACtD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,YAAY,CAAC;YAC1B,IAAI,EAAE,0MAA0M;SACjN,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,IAAI,CAAC;QAEtC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;QAC/E,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,YAAY,CAAC;YAC1B,IAAI,EAAE,kLAAkL;SACzL,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;QAEpC,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,CAAC;QAEnC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;QACvE,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,YAAY,CAAC;YAC1B,IAAI,EAAE,6HAA6H;SACpI,CAAC,CAAC;QAEH,6EAA6E;QAC7E,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,gBAAgB,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;QACrE,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,YAAY,CAAC;YAC1B,IAAI,EAAE,sIAAsI;SAC7I,CAAC,CAAC;QAEH,6EAA6E;QAC7E,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,gBAAgB,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oDAAoD,EAAE,KAAK,IAAI,EAAE;QAClE,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,YAAY,CAAC;YAC1B,IAAI,EAAE,sFAAsF;SAC7F,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC;QACpC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QAEvB,MAAM,gBAAgB,GACpB,kCAAkC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAE3D,gBAAgB,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAEpD,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAClC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAEvB,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC/C,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAC3C,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE3B,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC/C,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAC3C,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE3B,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAChD,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;QAClD,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAEzB,MAAM,kBAAkB,GAAyB;YAC/C;gBACE,UAAU,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC;gBAC9C,YAAY,EAAE,EAAE;gBAChB,MAAM,EAAE,IAAI;aACb;SACF,CAAC;QAEF,gBAAgB,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAE7C,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,MAAM,CAAC,2BAA2B,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC7D,MAAM,CAAC,2BAA2B,CAAC,CAAC,oBAAoB,CACtD,kBAAkB,EAClB;YACE,SAAS;YACT,WAAW;YACX,kBAAkB;YAClB,WAAW;YACX,WAAW;YACX,MAAM;YACN,oBAAoB;YACpB,OAAO;YACP,sBAAsB;SACvB,EACD,SAAS,CACV,CAAC;QAEF,MAAM,CAAC,wBAAwB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAE1D,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { newSpecPage } from \"@stencil/core/testing\";\nimport { CardVertical } from \"../../ic-card-vertical\";\nimport {\n mockHasDynamicChildSlots,\n mockMutationObserverImplementation,\n MockMutationRecord,\n mockRenderDynamicChildSlots,\n} from \"../../../../testspec.setup\";\n\ndescribe(\"ic-card-vertical\", () => {\n afterAll(() => {\n jest.restoreAllMocks();\n });\n\n afterEach(() => {\n jest.clearAllMocks();\n });\n\n it(\"should render\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical heading=\"Card\" message=\"This is a static card\"></ic-card-vertical>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render as a button\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical heading=\"Card\" message=\"This is a clickable card rendered as a button\" clickable=true></ic-card-vertical>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render as a link\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical heading=\"Card\" message=\"This is a clickable card rendered as a button\" clickable=true href=\"/\"></ic-card-vertical>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render full width variant\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical heading=\"Card\" full-width=true message=\"This is a full width card\" clickable=true></ic-card-vertical>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a link parent\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<a href=\"/\"><ic-card-vertical heading=\"Card\" message=\"This is a clickable card\" clickable=true></ic-card-vertical></a>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should correctly remove disabled attribute when setting disabled to false\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical heading=\"Card\" disabled message=\"This is a full width card\" clickable=true></ic-card-vertical>`,\n });\n\n expect(page.root).toMatchSnapshot(\"disabled\");\n\n page.rootInstance.disabled = false;\n\n await page.waitForChanges();\n expect(page.root).toMatchSnapshot(\"disabled-removed\");\n });\n\n it(\"should apply 'focussed' style when parent is focussed\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<a href=\"/\"><ic-card-vertical id=\"test-id\" heading=\"Card\" message=\"This is a clickable card\" clickable=true></ic-card-vertical></a>`,\n });\n\n expect(page.root).not.toBeNull;\n\n const element = await document.getElementById(\"test-id\");\n\n await expect(element.classList.contains(\"focussed\")).toBeFalsy;\n\n await element.focus();\n\n await expect(element.classList.contains(\"focussed\")).toBeTruthy;\n });\n\n it(\"should lose 'focussed' style when parent loses focus\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<a href=\"/\"><ic-card-vertical id=\"test-card\" heading=\"Card\" message=\"This is a clickable card\" clickable=true></ic-card-vertical></a>`,\n });\n\n expect(page.root).not.toBeNull;\n\n const element = await document.getElementById(\"test-card\");\n\n await element.focus();\n\n await expect(element.classList.contains(\"focussed\")).toBeTruthy;\n\n await element.blur();\n\n await expect(element.classList.contains(\"focussed\")).toBeFalsy;\n\n await page.rootInstance.disconnectedCallback();\n });\n\n it(\"should stop immediate propagation of a click event when disabled\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical id=\"test-card\" heading=\"Card\" message=\"This is a clickable card\" clickable=true disabled=true onclick=\"alert('test')\"></ic-card-vertical>`,\n });\n\n jest.spyOn(window, \"alert\").mockImplementation();\n\n const element = await document.getElementById(\"test-card\");\n\n element.click();\n\n await page.waitForChanges();\n\n await expect(window.alert).not.toHaveBeenCalled;\n });\n\n it(\"should render with a subheading\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical id=\"test-card\" heading=\"Card\" subheading=\"Card subheading\" message=\"This is a card\"></ic-card-vertical>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with an interaction button\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical id=\"test-card\" heading=\"Card\" subheading=\"Card subheading\" message=\"This is a card\"><ic-button variant=\"primary\" slot=\"interaction-button\">Click here</ic-button></ic-card-vertical>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a top image\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical id=\"test-card\" heading=\"Card\" subheading=\"Card subheading\" message=\"This is a card\"><div slot=\"image-top\">Image placeholder</div></ic-card-vertical>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a middle image\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical id=\"test-card\" heading=\"Card\" subheading=\"Card subheading\" message=\"This is a card\"><div slot=\"image-mid\">Image placeholder</div></ic-card-vertical>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with interaction controls\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical id=\"test-card\" heading=\"Card\" subheading=\"Card subheading\" message=\"This is a card\"><ic-button slot=\"interaction-controls\">Click here</ic-button></ic-card-vertical>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render as expandable\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical id=\"test-card\" heading=\"Card\" subheading=\"Card subheading\" message=\"This is a card\" expandable></ic-card-vertical>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render content in expanded area\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical id=\"test-card\" heading=\"Card\" subheading=\"Card subheading\" message=\"This is a card\" expandable><ic-typography slot=\"expanded-content\">Extra content</ic-typography></ic-card-vertical>`,\n });\n\n page.rootInstance.areaExpanded = true;\n\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should toggle expanded content when expansion toggle is clicked\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical id=\"test-card\" heading=\"Card\" message=\"This is a clickable card\" expandable><ic-typography slot=\"expanded-content\">Expanded</ic-typography></ic-card-vertical>`,\n });\n\n expect(page.root).toMatchSnapshot();\n\n page.rootInstance.toggleExpanded();\n\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should call 'setFocus' when card as a button is focused\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical heading=\"Card\" message=\"This is a clickable card rendered as a button\" clickable=true></ic-card-vertical>`,\n });\n\n //Can't expect anything in this test - this is to increase code coverage only\n await page.rootInstance.setFocus().toHaveBeenCalled;\n });\n\n it(\"should call 'setFocus' when card as a link is focused\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical heading=\"Card\" message=\"This is a clickable card rendered as a button\" clickable=true href=\"/\"></ic-card-vertical>`,\n });\n\n //Can't expect anything in this test - this is to increase code coverage only\n await page.rootInstance.setFocus().toHaveBeenCalled;\n });\n\n it(\"should test rendering slotted after initial render\", async () => {\n const page = await newSpecPage({\n components: [CardVertical],\n html: `<ic-card-vertical heading=\"Card\" message=\"This is a static card\"></ic-card-vertical>`,\n });\n\n const component = page.rootInstance;\n const host = page.root;\n\n const observerInstance =\n mockMutationObserverImplementation.mock.results[0].value;\n\n observerInstance.observe(host, { childList: true });\n\n const icon = document.createElement(\"svg\");\n icon.setAttribute(\"slot\", \"icon\");\n host.appendChild(icon);\n\n const imageMid = document.createElement(\"svg\");\n imageMid.setAttribute(\"slot\", \"image-mid\");\n host.appendChild(imageMid);\n\n const imageTop = document.createElement(\"svg\");\n imageTop.setAttribute(\"slot\", \"image-top\");\n host.appendChild(imageTop);\n\n const button = document.createElement(\"button\");\n button.setAttribute(\"slot\", \"interaction-button\");\n host.appendChild(button);\n\n const mockMutationRecord: MockMutationRecord[] = [\n {\n addedNodes: [icon, imageMid, imageTop, button],\n removedNodes: [],\n target: host,\n },\n ];\n\n observerInstance.trigger(mockMutationRecord);\n\n await page.waitForChanges();\n\n expect(mockRenderDynamicChildSlots).toHaveBeenCalledTimes(1);\n expect(mockRenderDynamicChildSlots).toHaveBeenCalledWith(\n mockMutationRecord,\n [\n \"message\",\n \"adornment\",\n \"expanded-content\",\n \"image-top\",\n \"image-mid\",\n \"icon\",\n \"interaction-button\",\n \"badge\",\n \"interaction-controls\",\n ],\n component\n );\n\n expect(mockHasDynamicChildSlots).toHaveBeenCalledTimes(1);\n\n expect(page.root).toMatchSnapshot();\n });\n});\n"]}
@@ -442,10 +442,6 @@ video {
442
442
 
443
443
 
444
444
  :host(.ic-checkbox-disabled) {
445
- color: var(--ic-architectural-200);
446
-
447
- --ic-typography-color: var(--ic-architectural-200);
448
-
449
445
  pointer-events: none;
450
446
  }
451
447
 
@@ -472,8 +468,8 @@ video {
472
468
  left: 0;
473
469
  height: var(--ic-space-lg);
474
470
  width: var(--ic-space-lg);
475
- background-color: var(--ic-architectural-white);
476
- border: var(--ic-border-width) solid var(--ic-architectural-400);
471
+ background-color: var(--ic-checkbox-background-unselected);
472
+ border: var(--ic-border-width) solid var(--ic-checkbox-border-unselected);
477
473
  border-radius: var(--ic-border-radius);
478
474
  outline: none;
479
475
  cursor: pointer;
@@ -481,6 +477,11 @@ video {
481
477
  flex-shrink: 0;
482
478
  }
483
479
 
480
+ :host .container svg {
481
+ width: var(--ic-space-lg);
482
+ height: var(--ic-space-lg);
483
+ }
484
+
484
485
  :host(.ic-checkbox-small) .checkbox,
485
486
  :host(.ic-checkbox-small) .container svg {
486
487
  width: var(--ic-space-md);
@@ -494,51 +495,59 @@ video {
494
495
  }
495
496
 
496
497
  .checkbox:checked {
497
- background-color: var(--ic-action-default);
498
- border: var(--ic-border-width) solid var(--ic-action-default);
498
+ background-color: var(--ic-checkbox-background-selected);
499
+ border: var(--ic-border-width) solid var(--ic-checkbox-background-selected);
499
500
  transition: var(--ic-easing-transition-slow);
500
501
  }
501
502
 
502
503
  .checkbox:checked:disabled {
503
- background-color: var(--ic-architectural-200);
504
+ background-color: var(--ic-checkbox-background-selected-disabled);
505
+ border: var(--ic-border-width) solid
506
+ var(--ic-checkbox-background-selected-disabled);
504
507
  }
505
508
 
506
509
  .checkbox:indeterminate,
507
510
  .checkbox.indeterminate:checked {
508
- background-color: var(--ic-architectural-white);
509
- border: 0.125rem solid var(--ic-action-default);
511
+ background-color: var(--ic-checkbox-background-indeterminate);
512
+ border: 0.125rem solid var(--ic-checkbox-background-indeterminate);
513
+ }
514
+
515
+ .checkbox:indeterminate:disabled,
516
+ .checkbox.indeterminate:checked:disabled {
517
+ background-color: var(--ic-checkbox-background-indeterminate-disabled);
518
+ border: 0.125rem solid var(--ic-checkbox-background-indeterminate-disabled);
510
519
  }
511
520
 
512
521
  .checkbox:checked:hover {
513
- background-color: var(--ic-action-default-hover);
522
+ background-color: var(--ic-checkbox-background-selected-hover);
514
523
  }
515
524
 
516
525
  .checkbox:indeterminate:hover,
517
526
  .checkbox.indeterminate:checked:hover {
518
- background-color: var(--ic-action-default-bg-hover-no-alpha);
519
- border: 0.125rem solid var(--ic-action-default-hover);
527
+ background-color: var(--ic-checkbox-background-indeterminate-hover);
528
+ border: 0.125rem solid var(--ic-checkbox-background-indeterminate-hover);
520
529
  }
521
530
 
522
531
  .checkbox:checked:active {
523
- background-color: var(--ic-action-default-active);
532
+ background-color: var(--ic-checkbox-background-selected-pressed);
524
533
  }
525
534
 
526
535
  .checkbox:indeterminate:active,
527
536
  .checkbox.indeterminate:checked:active {
528
- background-color: var(--ic-action-default-bg-active-no-alpha);
529
- border: 0.125rem solid var(--ic-action-default-active);
537
+ background-color: var(--ic-checkbox-background-indeterminate-pressed);
538
+ border: 0.125rem solid var(--ic-checkbox-background-indeterminate-pressed);
530
539
  }
531
540
 
532
541
  .checkbox:hover {
533
- background-color: var(--ic-action-default-bg-hover-no-alpha);
534
- box-shadow: 0 0 0 0.25rem var(--ic-action-default-bg-hover);
535
- border: var(--ic-border-width) solid var(--ic-action-default-hover);
542
+ box-shadow: 0 0 0 0.25rem var(--ic-checkbox-action-background-hover);
543
+ border: var(--ic-border-width) solid
544
+ var(--ic-checkbox-border-unselected-hover);
536
545
  }
537
546
 
538
547
  .checkbox:active {
539
- background-color: var(--ic-action-default-bg-active-no-alpha);
540
- box-shadow: 0 0 0 0.25rem var(--ic-action-default-bg-active);
541
- border: var(--ic-border-width) solid var(--ic-action-default-active);
548
+ box-shadow: 0 0 0 0.25rem var(--ic-checkbox-action-background-pressed);
549
+ border: var(--ic-border-width) solid
550
+ var(--ic-checkbox-border-unselected-pressed);
542
551
  }
543
552
 
544
553
  .checkbox:focus {
@@ -546,11 +555,19 @@ video {
546
555
  }
547
556
 
548
557
  .checkbox:disabled {
549
- border: var(--ic-border-width) dashed var(--ic-architectural-200);
558
+ border: var(--ic-border-width) dashed
559
+ var(--ic-checkbox-border-unselected-disabled);
550
560
  }
551
561
 
552
562
  .checkbox-label {
553
563
  padding-left: var(--ic-space-sm);
564
+ color: var(--ic-checkbox-text);
565
+ --ic-typography-color: var(--ic-checkbox-text);
566
+ }
567
+
568
+ :host(.ic-checkbox-disabled) .checkbox-label {
569
+ color: var(--ic-checkbox-text-disabled);
570
+ --ic-typography-color: var(--ic-checkbox-text-disabled);
554
571
  }
555
572
 
556
573
  .checkbox-label:hover {
@@ -561,7 +578,7 @@ video {
561
578
  position: relative;
562
579
  right: calc(-1 * var(--ic-space-lg));
563
580
  margin-left: calc(-1 * var(--ic-space-lg));
564
- fill: white;
581
+ fill: var(--ic-checkbox-icon-pressed);
565
582
  z-index: 1;
566
583
  background-color: transparent;
567
584
  pointer-events: none;
@@ -585,7 +602,7 @@ video {
585
602
  right: -1.188rem;
586
603
  margin-left: -0.875rem;
587
604
  z-index: 1;
588
- background-color: var(--ic-action-default);
605
+ background-color: var(--ic-checkbox-icon-indeterminate);
589
606
  pointer-events: none;
590
607
  flex-shrink: 0;
591
608
  }
@@ -602,26 +619,17 @@ video {
602
619
  margin-left: -1.25rem;
603
620
  }
604
621
 
605
- .container:hover .indeterminate-symbol {
606
- background-color: var(--ic-action-default-hover);
607
- }
608
-
609
- .container:active .indeterminate-symbol {
610
- background-color: var(--ic-action-default-active);
611
- }
612
-
613
622
  .additional-field-wrapper {
614
623
  margin-left: calc(var(--ic-space-md) + var(--ic-space-lg));
615
624
  margin-top: calc(var(--ic-space-sm) / 2);
616
625
  }
617
626
 
618
627
  .branch-corner {
619
- color: var(--ic-action-default);
620
628
  height: var(--ic-space-md);
621
629
  width: var(--ic-space-xl);
622
630
  border-radius: 0 0 0 0.188rem;
623
- border-bottom: 0.125rem solid var(--ic-action-default);
624
- border-left: 0.125rem solid var(--ic-action-default);
631
+ border-bottom: 0.125rem solid var(--ic-checkbox-required-bar);
632
+ border-left: 0.125rem solid var(--ic-checkbox-required-bar);
625
633
  }
626
634
 
627
635
  .dynamic-container {
@@ -632,9 +640,9 @@ video {
632
640
  }
633
641
 
634
642
  .dynamic-text {
635
- color: var(--ic-action-default);
643
+ color: var(--ic-checkbox-required-text);
636
644
 
637
- --ic-typography-color: var(--ic-action-default);
645
+ --ic-typography-color: var(--ic-checkbox-required-text);
638
646
 
639
647
  margin-top: calc(var(--ic-space-sm) / 2);
640
648
  margin-bottom: var(--ic-space-xs);
@@ -29,9 +29,13 @@ export class Checkbox {
29
29
  this.name = undefined;
30
30
  this.nativeIndeterminateBehaviour = false;
31
31
  this.size = undefined;
32
+ this.theme = "inherit";
32
33
  this.value = undefined;
33
34
  this.hideLabel = false;
34
35
  }
36
+ watchDisabledHandler() {
37
+ removeDisabledFalse(this.disabled, this.el);
38
+ }
35
39
  watchIndeterminateHandler() {
36
40
  this.displayIndeterminate = this.nativeIndeterminateBehaviour
37
41
  ? this.indeterminate
@@ -80,7 +84,7 @@ export class Checkbox {
80
84
  (_a = this.el.shadowRoot.querySelector(".checkbox")) === null || _a === void 0 ? void 0 : _a.focus();
81
85
  }
82
86
  render() {
83
- const { additionalFieldDisplay, checked, disabled, dynamicText, el, form, displayIndeterminate, groupLabel, label, name, size, value, } = this;
87
+ const { additionalFieldDisplay, checked, disabled, dynamicText, el, form, displayIndeterminate, groupLabel, label, name, size, value, theme, } = this;
84
88
  const id = `ic-checkbox-${isPropDefined(label) || value}-${groupLabel}`.replace(/ /g, "-");
85
89
  const parentElementSize = el.parentElement
86
90
  .size;
@@ -90,7 +94,8 @@ export class Checkbox {
90
94
  return (h(Host, { class: {
91
95
  "ic-checkbox-disabled": disabled,
92
96
  [`ic-checkbox-${size || parentElementSize}`]: true,
93
- } }, h("div", { class: "container" }, displayIndeterminate && h("div", { class: "indeterminate-symbol" }), !displayIndeterminate && checked && (h("svg", { class: "checkmark", width: "1.5rem", height: "1.5rem", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", "fill-rule": "evenodd", "clip-rule": "evenodd" }, h("title", null, "checkmark icon"), h("path", { d: "M21 6.285l-11.16 12.733-6.84-6.018 1.319-1.49 5.341 4.686 9.865-11.196 1.475 1.285z" }))), h("input", { role: "checkbox", class: {
97
+ [`ic-theme-${theme}`]: theme !== "inherit",
98
+ } }, h("div", { class: "container" }, displayIndeterminate && h("div", { class: "indeterminate-symbol" }), !displayIndeterminate && checked && (h("svg", { class: "checkmark", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", "fill-rule": "evenodd", "clip-rule": "evenodd" }, h("title", null, "checkmark icon"), h("path", { d: "M21 6.285l-11.16 12.733-6.84-6.018 1.319-1.49 5.341 4.686 9.865-11.196 1.475 1.285z" }))), h("input", { role: "checkbox", class: {
94
99
  checkbox: true,
95
100
  checked,
96
101
  indeterminate: displayIndeterminate,
@@ -149,7 +154,7 @@ export class Checkbox {
149
154
  "optional": true,
150
155
  "docs": {
151
156
  "tags": [],
152
- "text": "If `true`, the checkbox will be set to the checked state."
157
+ "text": "If `true`, the checkbox will be set to the checked state. This is only the initial state and will be updated to unchecked if the checkbox is clicked."
153
158
  },
154
159
  "attribute": "checked",
155
160
  "reflect": true,
@@ -318,6 +323,30 @@ export class Checkbox {
318
323
  "attribute": "size",
319
324
  "reflect": false
320
325
  },
326
+ "theme": {
327
+ "type": "string",
328
+ "mutable": false,
329
+ "complexType": {
330
+ "original": "IcThemeMode",
331
+ "resolved": "\"dark\" | \"inherit\" | \"light\"",
332
+ "references": {
333
+ "IcThemeMode": {
334
+ "location": "import",
335
+ "path": "../../utils/types",
336
+ "id": "src/utils/types.ts::IcThemeMode"
337
+ }
338
+ }
339
+ },
340
+ "required": false,
341
+ "optional": true,
342
+ "docs": {
343
+ "tags": [],
344
+ "text": "Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component."
345
+ },
346
+ "attribute": "theme",
347
+ "reflect": false,
348
+ "defaultValue": "\"inherit\""
349
+ },
321
350
  "value": {
322
351
  "type": "string",
323
352
  "mutable": false,
@@ -407,6 +436,9 @@ export class Checkbox {
407
436
  static get elementRef() { return "el"; }
408
437
  static get watchers() {
409
438
  return [{
439
+ "propName": "disabled",
440
+ "methodName": "watchDisabledHandler"
441
+ }, {
410
442
  "propName": "indeterminate",
411
443
  "methodName": "watchIndeterminateHandler"
412
444
  }];
@@ -1 +1 @@
1
- {"version":3,"file":"ic-checkbox.js","sourceRoot":"","sources":["../../../src/components/ic-checkbox/ic-checkbox.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Host,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n State,\n Method,\n Watch,\n} from \"@stencil/core\";\nimport { IcAdditionalFieldTypes, IcSizes } from \"../../utils/types\";\nimport {\n isSlotUsed,\n onComponentRequiredPropUndefined,\n renderHiddenInput,\n removeHiddenInput,\n addFormResetListener,\n removeFormResetListener,\n removeDisabledFalse,\n isPropDefined,\n} from \"../../utils/helpers\";\n\n/**\n * @slot additional-field - Content to be displayed alongside a checkbox.\n */\n@Component({\n tag: \"ic-checkbox\",\n styleUrl: \"ic-checkbox.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport class Checkbox {\n private additionalFieldContainer: HTMLDivElement;\n\n @Element() el: HTMLIcCheckboxElement;\n\n /**\n * The style of additionalField that will be displayed if used.\n */\n @Prop({ reflect: true }) additionalFieldDisplay: IcAdditionalFieldTypes =\n \"static\";\n\n /**\n * If `true`, the checkbox will be set to the checked state.\n */\n @Prop({ reflect: true, mutable: true }) checked?: boolean = false;\n @State() initiallyChecked = this.checked;\n\n /**\n * If `true`, the checkbox will be set to the disabled state.\n */\n @Prop() disabled?: boolean = false;\n\n /**\n * The text to be displayed when dynamic.\n */\n\n @Prop() dynamicText: string = \"This selection requires additional answers\";\n\n /**\n * The <form> element to associate the checkbox with.\n */\n @Prop() form?: string;\n\n /**\n * The group label for the checkbox.\n */\n @Prop({ mutable: true }) groupLabel: string;\n\n /**\n * If `true`, the indeterminate state will be displayed when checked.\n */\n @Prop() indeterminate: boolean = false;\n @State() displayIndeterminate = this.indeterminate;\n\n @Watch(\"indeterminate\")\n watchIndeterminateHandler(): void {\n this.displayIndeterminate = this.nativeIndeterminateBehaviour\n ? this.indeterminate\n : this.indeterminate && this.checked;\n }\n\n /**\n * The label for the checkbox.\n */\n @Prop() label!: string;\n\n /**\n * The name for the checkbox. If not set when used in a checkbox group, the name will be based on the group name.\n */\n @Prop({ mutable: true }) name: string;\n\n /**\n * If `true`, the checkbox will behave like a native checkbox where the `indeterminate` prop sets the indeterminate visual styling, independent of the `checked` state.\n */\n @Prop() nativeIndeterminateBehaviour: boolean = false;\n\n /**\n * The size of the checkbox to be displayed. This does not affect the font size of the label. If a checkbox is contained in a checkbox group, this will override the size set on checkbox group.\n */\n @Prop() size?: IcSizes;\n\n /**\n * The value for the checkbox.\n */\n @Prop() value!: string;\n\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n @Prop() hideLabel = false;\n\n /**\n * Emitted when a checkbox has been checked.\n */\n @Event() icCheck: EventEmitter<void>;\n\n componentWillLoad(): void {\n removeDisabledFalse(this.disabled, this.el);\n\n addFormResetListener(this.el, this.handleFormReset);\n\n const checkboxGroup = this.el.parentElement as HTMLIcCheckboxGroupElement;\n if (checkboxGroup) {\n if (!this.name) this.name = checkboxGroup.name;\n this.groupLabel = checkboxGroup.label;\n }\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [\n { prop: this.label, propName: \"label\" },\n { prop: this.value, propName: \"value\" },\n ],\n \"Checkbox\"\n );\n }\n\n componentDidRender(): void {\n if (this.additionalFieldDisplay === \"static\") {\n const textfield = this.el.querySelector(\"ic-text-field\");\n if (!this.checked) {\n textfield?.setAttribute(\"disabled\", \"\");\n } else {\n textfield?.removeAttribute(\"disabled\");\n }\n } else if (this.additionalFieldContainer) {\n this.additionalFieldContainer.style.display = !this.checked\n ? \"none\"\n : \"flex\";\n }\n }\n\n disconnectedCallback(): void {\n removeFormResetListener(this.el, this.handleFormReset);\n }\n\n /**\n * Sets focus on the checkbox.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.el.shadowRoot.querySelector<HTMLElement>(\".checkbox\")?.focus();\n }\n\n private handleClick = () => {\n this.checked = !this.checked;\n this.displayIndeterminate = this.nativeIndeterminateBehaviour\n ? false\n : this.indeterminate && this.checked;\n this.icCheck.emit();\n };\n\n private handleFormReset = (): void => {\n this.checked = this.initiallyChecked;\n };\n\n render() {\n const {\n additionalFieldDisplay,\n checked,\n disabled,\n dynamicText,\n el,\n form,\n displayIndeterminate,\n groupLabel,\n label,\n name,\n size,\n value,\n } = this;\n\n const id = `ic-checkbox-${\n isPropDefined(label) || value\n }-${groupLabel}`.replace(/ /g, \"-\");\n\n const parentElementSize = (el.parentElement as HTMLIcCheckboxGroupElement)\n .size;\n\n checked\n ? renderHiddenInput(true, el, name, checked && value, disabled)\n : removeHiddenInput(el);\n\n return (\n <Host\n class={{\n \"ic-checkbox-disabled\": disabled,\n [`ic-checkbox-${size || parentElementSize}`]: true,\n }}\n >\n <div class=\"container\">\n {displayIndeterminate && <div class=\"indeterminate-symbol\" />}\n {!displayIndeterminate && checked && (\n <svg\n class=\"checkmark\"\n width=\"1.5rem\"\n height=\"1.5rem\"\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n >\n <title>checkmark icon</title>\n <path d=\"M21 6.285l-11.16 12.733-6.84-6.018 1.319-1.49 5.341 4.686 9.865-11.196 1.475 1.285z\" />\n </svg>\n )}\n <input\n role=\"checkbox\"\n class={{\n checkbox: true,\n checked,\n indeterminate: displayIndeterminate,\n }}\n type=\"checkbox\"\n name={name}\n id={id}\n value={value}\n disabled={disabled ? true : null}\n checked={checked}\n indeterminate={displayIndeterminate}\n onClick={this.handleClick}\n form={form}\n aria-label={this.hideLabel ? this.label : undefined}\n ></input>\n {!this.hideLabel && (\n <ic-typography class=\"checkbox-label\" variant=\"body\">\n <label htmlFor={id}>{label}</label>\n </ic-typography>\n )}\n </div>\n {isSlotUsed(el, \"additional-field\") && (\n <div\n class=\"dynamic-container\"\n ref={(el) => (this.additionalFieldContainer = el)}\n >\n {additionalFieldDisplay === \"dynamic\" && (\n <div class=\"branch-corner\"></div>\n )}\n <div>\n {additionalFieldDisplay === \"dynamic\" && (\n <ic-typography variant=\"caption\">\n <p class=\"dynamic-text\" aria-live=\"polite\">\n {dynamicText}\n </p>\n </ic-typography>\n )}\n <div\n class={{\n \"additional-field-wrapper\":\n additionalFieldDisplay === \"static\",\n }}\n >\n <slot name=\"additional-field\"></slot>\n </div>\n </div>\n </div>\n )}\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ic-checkbox.js","sourceRoot":"","sources":["../../../src/components/ic-checkbox/ic-checkbox.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Host,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n State,\n Method,\n Watch,\n} from \"@stencil/core\";\nimport {\n IcAdditionalFieldTypes,\n IcSizes,\n IcThemeMode,\n} from \"../../utils/types\";\nimport {\n isSlotUsed,\n onComponentRequiredPropUndefined,\n renderHiddenInput,\n removeHiddenInput,\n addFormResetListener,\n removeFormResetListener,\n removeDisabledFalse,\n isPropDefined,\n} from \"../../utils/helpers\";\n\n/**\n * @slot additional-field - Content to be displayed alongside a checkbox.\n */\n@Component({\n tag: \"ic-checkbox\",\n styleUrl: \"ic-checkbox.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport class Checkbox {\n private additionalFieldContainer: HTMLDivElement;\n\n @Element() el: HTMLIcCheckboxElement;\n\n /**\n * The style of additionalField that will be displayed if used.\n */\n @Prop({ reflect: true }) additionalFieldDisplay: IcAdditionalFieldTypes =\n \"static\";\n\n /**\n * If `true`, the checkbox will be set to the checked state. This is only the initial state and will be updated to unchecked if the checkbox is clicked.\n */\n @Prop({ reflect: true, mutable: true }) checked?: boolean = false;\n @State() initiallyChecked = this.checked;\n\n /**\n * If `true`, the checkbox will be set to the disabled state.\n */\n @Prop() disabled?: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * The text to be displayed when dynamic.\n */\n\n @Prop() dynamicText: string = \"This selection requires additional answers\";\n\n /**\n * The <form> element to associate the checkbox with.\n */\n @Prop() form?: string;\n\n /**\n * The group label for the checkbox.\n */\n @Prop({ mutable: true }) groupLabel: string;\n\n /**\n * If `true`, the indeterminate state will be displayed when checked.\n */\n @Prop() indeterminate: boolean = false;\n @State() displayIndeterminate = this.indeterminate;\n\n @Watch(\"indeterminate\")\n watchIndeterminateHandler(): void {\n this.displayIndeterminate = this.nativeIndeterminateBehaviour\n ? this.indeterminate\n : this.indeterminate && this.checked;\n }\n\n /**\n * The label for the checkbox.\n */\n @Prop() label!: string;\n\n /**\n * The name for the checkbox. If not set when used in a checkbox group, the name will be based on the group name.\n */\n @Prop({ mutable: true }) name: string;\n\n /**\n * If `true`, the checkbox will behave like a native checkbox where the `indeterminate` prop sets the indeterminate visual styling, independent of the `checked` state.\n */\n @Prop() nativeIndeterminateBehaviour: boolean = false;\n\n /**\n * The size of the checkbox to be displayed. This does not affect the font size of the label. If a checkbox is contained in a checkbox group, this will override the size set on checkbox group.\n */\n @Prop() size?: IcSizes;\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * The value for the checkbox.\n */\n @Prop() value!: string;\n\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n @Prop() hideLabel = false;\n\n /**\n * Emitted when a checkbox has been checked.\n */\n @Event() icCheck: EventEmitter<void>;\n\n componentWillLoad(): void {\n removeDisabledFalse(this.disabled, this.el);\n\n addFormResetListener(this.el, this.handleFormReset);\n\n const checkboxGroup = this.el.parentElement as HTMLIcCheckboxGroupElement;\n if (checkboxGroup) {\n if (!this.name) this.name = checkboxGroup.name;\n this.groupLabel = checkboxGroup.label;\n }\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [\n { prop: this.label, propName: \"label\" },\n { prop: this.value, propName: \"value\" },\n ],\n \"Checkbox\"\n );\n }\n\n componentDidRender(): void {\n if (this.additionalFieldDisplay === \"static\") {\n const textfield = this.el.querySelector(\"ic-text-field\");\n if (!this.checked) {\n textfield?.setAttribute(\"disabled\", \"\");\n } else {\n textfield?.removeAttribute(\"disabled\");\n }\n } else if (this.additionalFieldContainer) {\n this.additionalFieldContainer.style.display = !this.checked\n ? \"none\"\n : \"flex\";\n }\n }\n\n disconnectedCallback(): void {\n removeFormResetListener(this.el, this.handleFormReset);\n }\n\n /**\n * Sets focus on the checkbox.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.el.shadowRoot.querySelector<HTMLElement>(\".checkbox\")?.focus();\n }\n\n private handleClick = () => {\n this.checked = !this.checked;\n this.displayIndeterminate = this.nativeIndeterminateBehaviour\n ? false\n : this.indeterminate && this.checked;\n this.icCheck.emit();\n };\n\n private handleFormReset = (): void => {\n this.checked = this.initiallyChecked;\n };\n\n render() {\n const {\n additionalFieldDisplay,\n checked,\n disabled,\n dynamicText,\n el,\n form,\n displayIndeterminate,\n groupLabel,\n label,\n name,\n size,\n value,\n theme,\n } = this;\n\n const id = `ic-checkbox-${\n isPropDefined(label) || value\n }-${groupLabel}`.replace(/ /g, \"-\");\n\n const parentElementSize = (el.parentElement as HTMLIcCheckboxGroupElement)\n .size;\n\n checked\n ? renderHiddenInput(true, el, name, checked && value, disabled)\n : removeHiddenInput(el);\n\n return (\n <Host\n class={{\n \"ic-checkbox-disabled\": disabled,\n [`ic-checkbox-${size || parentElementSize}`]: true,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n <div class=\"container\">\n {displayIndeterminate && <div class=\"indeterminate-symbol\" />}\n {!displayIndeterminate && checked && (\n <svg\n class=\"checkmark\"\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n >\n <title>checkmark icon</title>\n <path d=\"M21 6.285l-11.16 12.733-6.84-6.018 1.319-1.49 5.341 4.686 9.865-11.196 1.475 1.285z\" />\n </svg>\n )}\n <input\n role=\"checkbox\"\n class={{\n checkbox: true,\n checked,\n indeterminate: displayIndeterminate,\n }}\n type=\"checkbox\"\n name={name}\n id={id}\n value={value}\n disabled={disabled ? true : null}\n checked={checked}\n indeterminate={displayIndeterminate}\n onClick={this.handleClick}\n form={form}\n aria-label={this.hideLabel ? this.label : undefined}\n ></input>\n {!this.hideLabel && (\n <ic-typography class=\"checkbox-label\" variant=\"body\">\n <label htmlFor={id}>{label}</label>\n </ic-typography>\n )}\n </div>\n {isSlotUsed(el, \"additional-field\") && (\n <div\n class=\"dynamic-container\"\n ref={(el) => (this.additionalFieldContainer = el)}\n >\n {additionalFieldDisplay === \"dynamic\" && (\n <div class=\"branch-corner\"></div>\n )}\n <div>\n {additionalFieldDisplay === \"dynamic\" && (\n <ic-typography variant=\"caption\">\n <p class=\"dynamic-text\" aria-live=\"polite\">\n {dynamicText}\n </p>\n </ic-typography>\n )}\n <div\n class={{\n \"additional-field-wrapper\":\n additionalFieldDisplay === \"static\",\n }}\n >\n <slot name=\"additional-field\"></slot>\n </div>\n </div>\n </div>\n )}\n </Host>\n );\n }\n}\n"]}
@@ -443,12 +443,25 @@ video {
443
443
 
444
444
  :host {
445
445
  display: block;
446
+
447
+ --ic-input-label-text-color: var(--ic-checkbox-group-label);
448
+ --ic-input-label-helper-text-color: var(--ic-checkbox-group-subtitle);
449
+ --ic-input-validation-error: var(--ic-checkbox-state-icon-error);
450
+ --ic-input-validation-status-text-color: var(--ic-checkbox-state-text);
451
+ }
452
+
453
+ :host(.ic-checkbox-group-disabled) {
454
+ --ic-input-label-text-color: var(--ic-checkbox-group-label-disabled);
455
+ --ic-input-label-helper-text-color: var(
456
+ --ic-checkbox-group-subtitle-disabled
457
+ );
446
458
  }
447
459
 
448
460
  ic-input-label.error {
449
- color: var(--ic-status-error);
461
+ color: var(--ic-checkbox-group-label-error);
450
462
 
451
- --ic-typography-color: var(--ic-status-error);
463
+ --ic-typography-color: var(--ic-checkbox-group-label-error);
464
+ --ic-input-label-helper-text-color: var(--ic-checkbox-group-subtitle-error);
452
465
  }
453
466
 
454
467
  ic-input-label ic-typography {
@@ -3,6 +3,7 @@ import { getInputDescribedByText, hasValidationStatus, onComponentRequiredPropUn
3
3
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
4
4
  export class CheckboxGroup {
5
5
  constructor() {
6
+ this.checkboxSelector = "ic-checkbox";
6
7
  this.disabled = false;
7
8
  this.helperText = "";
8
9
  this.hideLabel = false;
@@ -10,11 +11,15 @@ export class CheckboxGroup {
10
11
  this.name = undefined;
11
12
  this.required = false;
12
13
  this.size = "medium";
14
+ this.theme = "inherit";
13
15
  this.validationStatus = "";
14
16
  this.validationText = "";
15
17
  }
18
+ watchDisabledHandler() {
19
+ removeDisabledFalse(this.disabled, this.el);
20
+ }
16
21
  labelNameHandler(newValue, oldValue, propName) {
17
- Array.from(this.el.querySelectorAll("ic-checkbox")).forEach((checkbox) => {
22
+ Array.from(this.el.querySelectorAll(this.checkboxSelector)).forEach((checkbox) => {
18
23
  if (propName === "label")
19
24
  checkbox.groupLabel = newValue;
20
25
  else if (checkbox.name === oldValue) {
@@ -23,6 +28,11 @@ export class CheckboxGroup {
23
28
  }
24
29
  });
25
30
  }
31
+ watchThemeHandler(newValue) {
32
+ Array.from(this.el.querySelectorAll(this.checkboxSelector)).forEach((checkbox) => {
33
+ checkbox.theme = newValue;
34
+ });
35
+ }
26
36
  handleChange(ev) {
27
37
  //don't pass on the event if it has come from slotted text field
28
38
  //otherwise any icChange handler bound to the checkbox group will also run
@@ -32,6 +42,7 @@ export class CheckboxGroup {
32
42
  }
33
43
  componentWillLoad() {
34
44
  removeDisabledFalse(this.disabled, this.el);
45
+ this.watchThemeHandler(this.theme);
35
46
  }
36
47
  componentDidLoad() {
37
48
  onComponentRequiredPropUndefined([
@@ -54,13 +65,15 @@ export class CheckboxGroup {
54
65
  });
55
66
  }
56
67
  render() {
57
- const { disabled, helperText, hideLabel, label, name, required, size, validationStatus, validationText, } = this;
68
+ const { disabled, helperText, hideLabel, label, name, required, size, theme, validationStatus, validationText, } = this;
58
69
  const describedBy = getInputDescribedByText(name, helperText !== "", validationStatus !== "");
59
70
  return (h(Host, { class: {
60
71
  [`ic-checkbox-group-${size}`]: true,
72
+ [`ic-checkbox-group-disabled`]: disabled,
73
+ [`ic-theme-${theme}`]: theme !== "inherit",
61
74
  } }, (validationStatus === "error" || required || hideLabel) && (h("span", { id: "screenReaderOnlyText", class: "screen-reader-only-text", "aria-hidden": "true" }, label, " ", validationStatus === "error" ? "invalid data " : null, " ", required ? "required" : null)), h("fieldset", { id: name, "aria-labelledby": `${validationStatus === "error" || required || hideLabel
62
75
  ? "screenReaderOnlyText"
63
- : ""} ${describedBy}`.trim(), disabled: disabled }, !hideLabel && (h("legend", null, h("ic-input-label", { class: { [`${validationStatus}`]: true }, label: label, helperText: helperText, required: required, disabled: disabled, for: name }))), h("div", { class: "checkboxes-container" }, h("slot", null))), hasValidationStatus(validationStatus, disabled) && (h("ic-input-validation", { for: name, ariaLiveMode: "polite", status: validationStatus, message: validationText }))));
76
+ : ""} ${describedBy}`.trim(), disabled: disabled }, !hideLabel && (h("legend", null, h("ic-input-label", { class: { [`${validationStatus}`]: true }, label: label, helperText: helperText, required: required, disabled: disabled, useLabelTag: false }))), h("div", { class: "checkboxes-container" }, h("slot", null))), hasValidationStatus(validationStatus, disabled) && (h("ic-input-validation", { for: name, ariaLiveMode: "polite", status: validationStatus, message: validationText }))));
64
77
  }
65
78
  static get is() { return "ic-checkbox-group"; }
66
79
  static get encapsulation() { return "shadow"; }
@@ -206,6 +219,30 @@ export class CheckboxGroup {
206
219
  "reflect": false,
207
220
  "defaultValue": "\"medium\""
208
221
  },
222
+ "theme": {
223
+ "type": "string",
224
+ "mutable": false,
225
+ "complexType": {
226
+ "original": "IcThemeMode",
227
+ "resolved": "\"dark\" | \"inherit\" | \"light\"",
228
+ "references": {
229
+ "IcThemeMode": {
230
+ "location": "import",
231
+ "path": "../../utils/types",
232
+ "id": "src/utils/types.ts::IcThemeMode"
233
+ }
234
+ }
235
+ },
236
+ "required": false,
237
+ "optional": true,
238
+ "docs": {
239
+ "tags": [],
240
+ "text": "Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component."
241
+ },
242
+ "attribute": "theme",
243
+ "reflect": false,
244
+ "defaultValue": "\"inherit\""
245
+ },
209
246
  "validationStatus": {
210
247
  "type": "string",
211
248
  "mutable": false,
@@ -277,11 +314,17 @@ export class CheckboxGroup {
277
314
  static get elementRef() { return "el"; }
278
315
  static get watchers() {
279
316
  return [{
317
+ "propName": "disabled",
318
+ "methodName": "watchDisabledHandler"
319
+ }, {
280
320
  "propName": "label",
281
321
  "methodName": "labelNameHandler"
282
322
  }, {
283
323
  "propName": "name",
284
324
  "methodName": "labelNameHandler"
325
+ }, {
326
+ "propName": "theme",
327
+ "methodName": "watchThemeHandler"
285
328
  }];
286
329
  }
287
330
  static get listeners() {