@ukic/web-components 3.0.0-alpha.3 → 3.0.0-alpha.4

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 (447) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/helpers-69219f14.js.map +1 -1
  3. package/dist/cjs/ic-accordion-group.cjs.entry.js +9 -9
  4. package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
  5. package/dist/cjs/ic-accordion.cjs.entry.js +4 -4
  6. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  7. package/dist/cjs/ic-alert.cjs.entry.js +6 -4
  8. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ic-card-vertical.cjs.entry.js +21 -23
  10. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ic-checkbox-group.cjs.entry.js +15 -4
  12. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  13. package/dist/cjs/ic-checkbox.cjs.entry.js +4 -2
  14. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ic-classification-banner.cjs.entry.js +1 -1
  16. package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ic-dialog.cjs.entry.js +3 -1
  18. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ic-divider.cjs.entry.js +70 -6
  20. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-footer-link-group.cjs.entry.js +1 -1
  22. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  23. package/dist/cjs/ic-footer-link.cjs.entry.js +1 -1
  24. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-footer.cjs.entry.js +1 -1
  26. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ic-hero.cjs.entry.js +1 -1
  28. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +3 -2
  30. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  31. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +5 -4
  32. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  33. package/dist/cjs/ic-input-label_2.cjs.entry.js +2 -2
  34. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  35. package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
  36. package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
  37. package/dist/cjs/ic-menu-item.cjs.entry.js +9 -9
  38. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  39. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  40. package/dist/cjs/ic-navigation-group.cjs.entry.js +3 -2
  41. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  42. package/dist/cjs/ic-navigation-item.cjs.entry.js +28 -1
  43. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  44. package/dist/cjs/ic-pagination-item.cjs.entry.js +7 -10
  45. package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ic-pagination.cjs.entry.js +36 -14
  47. package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -1
  48. package/dist/cjs/ic-popover-menu.cjs.entry.js +3 -3
  49. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  50. package/dist/cjs/ic-radio-group.cjs.entry.js +13 -4
  51. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  52. package/dist/cjs/ic-radio-option.cjs.entry.js +7 -3
  53. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  54. package/dist/cjs/ic-search-bar.cjs.entry.js +11 -8
  55. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  56. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  57. package/dist/cjs/ic-side-navigation.cjs.entry.js +3 -2
  58. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  59. package/dist/cjs/ic-tab-context.cjs.entry.js +2 -1
  60. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  61. package/dist/cjs/ic-text-field.cjs.entry.js +1 -1
  62. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  63. package/dist/cjs/ic-toast.cjs.entry.js +2 -2
  64. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  65. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +1 -1
  66. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  67. package/dist/cjs/loader.cjs.js +1 -1
  68. package/dist/collection/ag-theme-icds.css +217 -0
  69. package/dist/collection/collection-manifest.json +1 -1
  70. package/dist/collection/components/ic-accordion/ic-accordion.css +21 -19
  71. package/dist/collection/components/ic-accordion/ic-accordion.js +27 -30
  72. package/dist/collection/components/ic-accordion/ic-accordion.js.map +1 -1
  73. package/dist/collection/components/ic-accordion/test/basic/ic-accordion.spec.js +3 -3
  74. package/dist/collection/components/ic-accordion/test/basic/ic-accordion.spec.js.map +1 -1
  75. package/dist/collection/components/ic-accordion-group/ic-accordion-group.css +2 -12
  76. package/dist/collection/components/ic-accordion-group/ic-accordion-group.js +18 -18
  77. package/dist/collection/components/ic-accordion-group/ic-accordion-group.js.map +1 -1
  78. package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js +3 -3
  79. package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js.map +1 -1
  80. package/dist/collection/components/ic-alert/ic-alert.css +22 -17
  81. package/dist/collection/components/ic-alert/ic-alert.js +48 -22
  82. package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
  83. package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js +1 -1
  84. package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js.map +1 -1
  85. package/dist/collection/components/ic-card-vertical/ic-card-vertical.css +98 -114
  86. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js +46 -24
  87. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js.map +1 -1
  88. package/dist/collection/components/ic-checkbox/ic-checkbox.css +42 -39
  89. package/dist/collection/components/ic-checkbox/ic-checkbox.js +28 -2
  90. package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
  91. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.css +15 -2
  92. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +39 -2
  93. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  94. package/dist/collection/components/ic-classification-banner/ic-classification-banner.css +13 -25
  95. package/dist/collection/components/ic-dialog/ic-dialog.css +16 -3
  96. package/dist/collection/components/ic-dialog/ic-dialog.js +26 -0
  97. package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -1
  98. package/dist/collection/components/ic-divider/ic-divider.css +341 -4
  99. package/dist/collection/components/ic-divider/ic-divider.js +235 -8
  100. package/dist/collection/components/ic-divider/ic-divider.js.map +1 -1
  101. package/dist/collection/components/ic-divider/ic-divider.types.js +2 -0
  102. package/dist/collection/components/ic-divider/ic-divider.types.js.map +1 -0
  103. package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js +89 -4
  104. package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js.map +1 -1
  105. package/dist/collection/components/ic-footer/ic-footer.css +20 -19
  106. package/dist/collection/components/ic-footer-link/ic-footer-link.css +2 -2
  107. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.css +9 -21
  108. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js.map +1 -1
  109. package/dist/collection/components/ic-hero/ic-hero.css +17 -2
  110. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +3 -2
  111. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js.map +1 -1
  112. package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +4 -2
  113. package/dist/collection/components/ic-input-label/ic-input-label.css +12 -1
  114. package/dist/collection/components/ic-input-validation/ic-input-validation.css +5 -1
  115. package/dist/collection/components/ic-menu/ic-menu.css +9 -5
  116. package/dist/collection/components/ic-menu/ic-menu.js +3 -2
  117. package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
  118. package/dist/collection/components/ic-menu-group/ic-menu-group.js +1 -1
  119. package/dist/collection/components/ic-menu-group/ic-menu-group.js.map +1 -1
  120. package/dist/collection/components/ic-menu-item/ic-menu-item.js +11 -11
  121. package/dist/collection/components/ic-menu-item/ic-menu-item.js.map +1 -1
  122. package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js +1 -1
  123. package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js.map +1 -1
  124. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -1
  125. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +3 -2
  126. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
  127. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +31 -3
  128. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
  129. package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js +12 -0
  130. package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js.map +1 -1
  131. package/dist/collection/components/ic-pagination/ic-pagination.css +15 -0
  132. package/dist/collection/components/ic-pagination/ic-pagination.js +77 -37
  133. package/dist/collection/components/ic-pagination/ic-pagination.js.map +1 -1
  134. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js +1 -1
  135. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js.map +1 -1
  136. package/dist/collection/components/ic-pagination-item/ic-pagination-item.css +26 -6
  137. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +48 -33
  138. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js.map +1 -1
  139. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +3 -3
  140. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js.map +1 -1
  141. package/dist/collection/components/ic-radio-group/ic-radio-group.css +17 -1
  142. package/dist/collection/components/ic-radio-group/ic-radio-group.js +37 -2
  143. package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
  144. package/dist/collection/components/ic-radio-option/ic-radio-option.css +34 -25
  145. package/dist/collection/components/ic-radio-option/ic-radio-option.js +30 -2
  146. package/dist/collection/components/ic-radio-option/ic-radio-option.js.map +1 -1
  147. package/dist/collection/components/ic-search-bar/ic-search-bar.css +40 -5
  148. package/dist/collection/components/ic-search-bar/ic-search-bar.js +34 -7
  149. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  150. package/dist/collection/components/ic-select/ic-select.css +1 -0
  151. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +0 -1
  152. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +2 -1
  153. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  154. package/dist/collection/components/ic-tab-context/ic-tab-context.js +2 -1
  155. package/dist/collection/components/ic-tab-context/ic-tab-context.js.map +1 -1
  156. package/dist/collection/components/ic-text-field/ic-text-field.css +6 -4
  157. package/dist/collection/components/ic-toast/ic-toast.css +25 -16
  158. package/dist/collection/components/ic-toast/ic-toast.js +1 -2
  159. package/dist/collection/components/ic-toast/ic-toast.js.map +1 -1
  160. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js +12 -12
  161. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js.map +1 -1
  162. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +1 -1
  163. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js.map +1 -1
  164. package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js +1 -0
  165. package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js.map +1 -1
  166. package/dist/collection/utils/helpers.js.map +1 -1
  167. package/dist/components/helpers.js.map +1 -1
  168. package/dist/components/ic-accordion-group.js +11 -11
  169. package/dist/components/ic-accordion-group.js.map +1 -1
  170. package/dist/components/ic-accordion.js +5 -5
  171. package/dist/components/ic-accordion.js.map +1 -1
  172. package/dist/components/ic-alert.js +8 -5
  173. package/dist/components/ic-alert.js.map +1 -1
  174. package/dist/components/ic-card-vertical.js +23 -24
  175. package/dist/components/ic-card-vertical.js.map +1 -1
  176. package/dist/components/ic-checkbox-group.js +18 -5
  177. package/dist/components/ic-checkbox-group.js.map +1 -1
  178. package/dist/components/ic-checkbox.js +5 -2
  179. package/dist/components/ic-checkbox.js.map +1 -1
  180. package/dist/components/ic-classification-banner.js +1 -1
  181. package/dist/components/ic-classification-banner.js.map +1 -1
  182. package/dist/components/ic-dialog.js +4 -1
  183. package/dist/components/ic-dialog.js.map +1 -1
  184. package/dist/components/ic-divider2.js +86 -9
  185. package/dist/components/ic-divider2.js.map +1 -1
  186. package/dist/components/ic-footer-link-group.js +1 -1
  187. package/dist/components/ic-footer-link-group.js.map +1 -1
  188. package/dist/components/ic-footer-link.js +1 -1
  189. package/dist/components/ic-footer-link.js.map +1 -1
  190. package/dist/components/ic-footer.js +1 -1
  191. package/dist/components/ic-footer.js.map +1 -1
  192. package/dist/components/ic-hero.js +1 -1
  193. package/dist/components/ic-hero.js.map +1 -1
  194. package/dist/components/ic-horizontal-scroll2.js +3 -2
  195. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  196. package/dist/components/ic-input-component-container2.js +1 -1
  197. package/dist/components/ic-input-component-container2.js.map +1 -1
  198. package/dist/components/ic-input-label2.js +1 -1
  199. package/dist/components/ic-input-label2.js.map +1 -1
  200. package/dist/components/ic-input-validation2.js +1 -1
  201. package/dist/components/ic-input-validation2.js.map +1 -1
  202. package/dist/components/ic-menu-group.js +1 -1
  203. package/dist/components/ic-menu-group.js.map +1 -1
  204. package/dist/components/ic-menu-item2.js +10 -10
  205. package/dist/components/ic-menu-item2.js.map +1 -1
  206. package/dist/components/ic-menu2.js +4 -3
  207. package/dist/components/ic-menu2.js.map +1 -1
  208. package/dist/components/ic-navigation-button.js.map +1 -1
  209. package/dist/components/ic-navigation-group.js +3 -2
  210. package/dist/components/ic-navigation-group.js.map +1 -1
  211. package/dist/components/ic-navigation-item.js +30 -2
  212. package/dist/components/ic-navigation-item.js.map +1 -1
  213. package/dist/components/ic-pagination-item2.js +9 -11
  214. package/dist/components/ic-pagination-item2.js.map +1 -1
  215. package/dist/components/ic-pagination.js +38 -15
  216. package/dist/components/ic-pagination.js.map +1 -1
  217. package/dist/components/ic-popover-menu.js +3 -3
  218. package/dist/components/ic-popover-menu.js.map +1 -1
  219. package/dist/components/ic-radio-group.js +16 -5
  220. package/dist/components/ic-radio-group.js.map +1 -1
  221. package/dist/components/ic-radio-option.js +8 -3
  222. package/dist/components/ic-radio-option.js.map +1 -1
  223. package/dist/components/ic-search-bar.js +12 -8
  224. package/dist/components/ic-search-bar.js.map +1 -1
  225. package/dist/components/ic-select.js.map +1 -1
  226. package/dist/components/ic-side-navigation.js +3 -2
  227. package/dist/components/ic-side-navigation.js.map +1 -1
  228. package/dist/components/ic-tab-context.js +2 -1
  229. package/dist/components/ic-tab-context.js.map +1 -1
  230. package/dist/components/ic-text-field2.js +1 -1
  231. package/dist/components/ic-text-field2.js.map +1 -1
  232. package/dist/components/ic-toast.js +3 -3
  233. package/dist/components/ic-toast.js.map +1 -1
  234. package/dist/components/ic-toggle-button-group.js +1 -1
  235. package/dist/components/ic-toggle-button-group.js.map +1 -1
  236. package/dist/core/ag-theme-icds.css +217 -0
  237. package/dist/core/core.css +125 -13
  238. package/dist/core/core.esm.js +1 -1
  239. package/dist/core/core.esm.js.map +1 -1
  240. package/dist/core/{p-43256b7c.entry.js → p-13d5875c.entry.js} +2 -2
  241. package/dist/core/p-13d5875c.entry.js.map +1 -0
  242. package/dist/core/p-19872973.entry.js +2 -0
  243. package/dist/core/p-19872973.entry.js.map +1 -0
  244. package/dist/core/p-2140431c.entry.js +2 -0
  245. package/dist/core/p-2140431c.entry.js.map +1 -0
  246. package/dist/core/p-29767574.entry.js +2 -0
  247. package/dist/core/p-29767574.entry.js.map +1 -0
  248. package/dist/core/p-2e909738.entry.js +2 -0
  249. package/dist/core/p-2e909738.entry.js.map +1 -0
  250. package/dist/core/p-2eae9b27.entry.js.map +1 -1
  251. package/dist/core/p-2ef46ead.entry.js +2 -0
  252. package/dist/core/p-2ef46ead.entry.js.map +1 -0
  253. package/dist/core/{p-14dfd8db.entry.js → p-428f95f8.entry.js} +2 -2
  254. package/dist/core/{p-14dfd8db.entry.js.map → p-428f95f8.entry.js.map} +1 -1
  255. package/dist/core/p-4973c563.entry.js +2 -0
  256. package/dist/core/p-4973c563.entry.js.map +1 -0
  257. package/dist/core/p-5f4a6555.entry.js +2 -0
  258. package/dist/core/p-5f4a6555.entry.js.map +1 -0
  259. package/dist/core/p-605c0c92.entry.js +2 -0
  260. package/dist/core/p-605c0c92.entry.js.map +1 -0
  261. package/dist/core/p-655a9e0f.entry.js +2 -0
  262. package/dist/core/p-655a9e0f.entry.js.map +1 -0
  263. package/dist/core/p-65a16de9.entry.js +2 -0
  264. package/dist/core/p-65a16de9.entry.js.map +1 -0
  265. package/dist/core/p-705eb610.entry.js +2 -0
  266. package/dist/core/p-705eb610.entry.js.map +1 -0
  267. package/dist/core/p-78c1f1cc.entry.js +2 -0
  268. package/dist/core/p-78c1f1cc.entry.js.map +1 -0
  269. package/dist/core/p-7bff1e96.entry.js +2 -0
  270. package/dist/core/p-7bff1e96.entry.js.map +1 -0
  271. package/dist/core/{p-726673ee.entry.js → p-806a0fab.entry.js} +2 -2
  272. package/dist/core/p-806a0fab.entry.js.map +1 -0
  273. package/dist/core/p-85173458.entry.js +2 -0
  274. package/dist/core/p-85173458.entry.js.map +1 -0
  275. package/dist/core/{p-b01ffa55.entry.js → p-96b4ca6e.entry.js} +2 -2
  276. package/dist/core/p-96b4ca6e.entry.js.map +1 -0
  277. package/dist/core/p-979c2792.entry.js +2 -0
  278. package/dist/core/p-979c2792.entry.js.map +1 -0
  279. package/dist/core/p-9ec7f96c.entry.js +2 -0
  280. package/dist/core/p-9ec7f96c.entry.js.map +1 -0
  281. package/dist/core/{p-f60dbd0e.entry.js → p-9fa93dfe.entry.js} +2 -2
  282. package/dist/core/p-9fa93dfe.entry.js.map +1 -0
  283. package/dist/core/p-a9341313.entry.js +2 -0
  284. package/dist/core/p-a9341313.entry.js.map +1 -0
  285. package/dist/core/{p-31fc8756.entry.js → p-ae0775aa.entry.js} +2 -2
  286. package/dist/core/p-ae0775aa.entry.js.map +1 -0
  287. package/dist/core/p-b7eb8ef9.js.map +1 -1
  288. package/dist/core/p-bbeb03ef.entry.js +2 -0
  289. package/dist/core/p-bbeb03ef.entry.js.map +1 -0
  290. package/dist/core/p-cedc375e.entry.js +2 -0
  291. package/dist/core/p-cedc375e.entry.js.map +1 -0
  292. package/dist/core/{p-dd36bf1b.entry.js → p-d4a83e25.entry.js} +2 -2
  293. package/dist/core/p-d4a83e25.entry.js.map +1 -0
  294. package/dist/core/{p-b78f8b8c.entry.js → p-d93bac01.entry.js} +2 -2
  295. package/dist/core/p-d93bac01.entry.js.map +1 -0
  296. package/dist/core/{p-50ead56c.entry.js → p-df957570.entry.js} +2 -2
  297. package/dist/core/p-df957570.entry.js.map +1 -0
  298. package/dist/core/p-ebafab37.entry.js.map +1 -1
  299. package/dist/core/p-ef78bebc.entry.js +2 -0
  300. package/dist/core/p-ef78bebc.entry.js.map +1 -0
  301. package/dist/core/p-f0ae2b99.entry.js +2 -0
  302. package/dist/core/p-f0ae2b99.entry.js.map +1 -0
  303. package/dist/core/p-fdd0b732.entry.js +2 -0
  304. package/dist/core/p-fdd0b732.entry.js.map +1 -0
  305. package/dist/esm/core.js +1 -1
  306. package/dist/esm/helpers-e8797e8d.js.map +1 -1
  307. package/dist/esm/ic-accordion-group.entry.js +9 -9
  308. package/dist/esm/ic-accordion-group.entry.js.map +1 -1
  309. package/dist/esm/ic-accordion.entry.js +4 -4
  310. package/dist/esm/ic-accordion.entry.js.map +1 -1
  311. package/dist/esm/ic-alert.entry.js +6 -4
  312. package/dist/esm/ic-alert.entry.js.map +1 -1
  313. package/dist/esm/ic-card-vertical.entry.js +22 -24
  314. package/dist/esm/ic-card-vertical.entry.js.map +1 -1
  315. package/dist/esm/ic-checkbox-group.entry.js +15 -4
  316. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  317. package/dist/esm/ic-checkbox.entry.js +4 -2
  318. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  319. package/dist/esm/ic-classification-banner.entry.js +1 -1
  320. package/dist/esm/ic-classification-banner.entry.js.map +1 -1
  321. package/dist/esm/ic-dialog.entry.js +3 -1
  322. package/dist/esm/ic-dialog.entry.js.map +1 -1
  323. package/dist/esm/ic-divider.entry.js +72 -8
  324. package/dist/esm/ic-divider.entry.js.map +1 -1
  325. package/dist/esm/ic-footer-link-group.entry.js +1 -1
  326. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  327. package/dist/esm/ic-footer-link.entry.js +1 -1
  328. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  329. package/dist/esm/ic-footer.entry.js +1 -1
  330. package/dist/esm/ic-footer.entry.js.map +1 -1
  331. package/dist/esm/ic-hero.entry.js +1 -1
  332. package/dist/esm/ic-hero.entry.js.map +1 -1
  333. package/dist/esm/ic-horizontal-scroll.entry.js +3 -2
  334. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  335. package/dist/esm/ic-input-component-container_3.entry.js +5 -4
  336. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  337. package/dist/esm/ic-input-label_2.entry.js +2 -2
  338. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  339. package/dist/esm/ic-menu-group.entry.js +1 -1
  340. package/dist/esm/ic-menu-group.entry.js.map +1 -1
  341. package/dist/esm/ic-menu-item.entry.js +9 -9
  342. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  343. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  344. package/dist/esm/ic-navigation-group.entry.js +3 -2
  345. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  346. package/dist/esm/ic-navigation-item.entry.js +29 -2
  347. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  348. package/dist/esm/ic-pagination-item.entry.js +7 -10
  349. package/dist/esm/ic-pagination-item.entry.js.map +1 -1
  350. package/dist/esm/ic-pagination.entry.js +36 -14
  351. package/dist/esm/ic-pagination.entry.js.map +1 -1
  352. package/dist/esm/ic-popover-menu.entry.js +3 -3
  353. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  354. package/dist/esm/ic-radio-group.entry.js +13 -4
  355. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  356. package/dist/esm/ic-radio-option.entry.js +7 -3
  357. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  358. package/dist/esm/ic-search-bar.entry.js +11 -8
  359. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  360. package/dist/esm/ic-select.entry.js.map +1 -1
  361. package/dist/esm/ic-side-navigation.entry.js +3 -2
  362. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  363. package/dist/esm/ic-tab-context.entry.js +2 -1
  364. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  365. package/dist/esm/ic-text-field.entry.js +1 -1
  366. package/dist/esm/ic-text-field.entry.js.map +1 -1
  367. package/dist/esm/ic-toast.entry.js +3 -3
  368. package/dist/esm/ic-toast.entry.js.map +1 -1
  369. package/dist/esm/ic-toggle-button-group.entry.js +1 -1
  370. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  371. package/dist/esm/loader.js +1 -1
  372. package/dist/types/components/ic-accordion/ic-accordion.d.ts +5 -5
  373. package/dist/types/components/ic-accordion-group/ic-accordion-group.d.ts +4 -4
  374. package/dist/types/components/ic-alert/ic-alert.d.ts +9 -5
  375. package/dist/types/components/ic-card-vertical/ic-card-vertical.d.ts +7 -3
  376. package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +6 -2
  377. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +7 -1
  378. package/dist/types/components/ic-dialog/ic-dialog.d.ts +5 -0
  379. package/dist/types/components/ic-divider/ic-divider.d.ts +31 -1
  380. package/dist/types/components/ic-divider/ic-divider.types.d.ts +3 -0
  381. package/dist/types/components/ic-footer-link-group/ic-footer-link-group.d.ts +2 -1
  382. package/dist/types/components/ic-menu-item/ic-menu-item.d.ts +1 -1
  383. package/dist/types/components/ic-navigation-button/ic-navigation-button.d.ts +2 -2
  384. package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +2 -2
  385. package/dist/types/components/ic-navigation-item/ic-navigation-item.d.ts +7 -2
  386. package/dist/types/components/ic-pagination/ic-pagination.d.ts +13 -5
  387. package/dist/types/components/ic-pagination-item/ic-pagination-item.d.ts +9 -5
  388. package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +6 -1
  389. package/dist/types/components/ic-radio-option/ic-radio-option.d.ts +5 -1
  390. package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +5 -1
  391. package/dist/types/components.d.ts +176 -31
  392. package/dist/types/utils/helpers.d.ts +2 -2
  393. package/hydrate/index.js +294 -135
  394. package/package.json +2 -2
  395. package/vscode-data.json +281 -48
  396. package/dist/core/p-0395442c.entry.js +0 -2
  397. package/dist/core/p-0395442c.entry.js.map +0 -1
  398. package/dist/core/p-0d233b0c.entry.js +0 -2
  399. package/dist/core/p-0d233b0c.entry.js.map +0 -1
  400. package/dist/core/p-134def81.entry.js +0 -2
  401. package/dist/core/p-134def81.entry.js.map +0 -1
  402. package/dist/core/p-1b116dd1.entry.js +0 -2
  403. package/dist/core/p-1b116dd1.entry.js.map +0 -1
  404. package/dist/core/p-21cc87c0.entry.js +0 -2
  405. package/dist/core/p-21cc87c0.entry.js.map +0 -1
  406. package/dist/core/p-31fc8756.entry.js.map +0 -1
  407. package/dist/core/p-3618ac34.entry.js +0 -2
  408. package/dist/core/p-3618ac34.entry.js.map +0 -1
  409. package/dist/core/p-384d454d.entry.js +0 -2
  410. package/dist/core/p-384d454d.entry.js.map +0 -1
  411. package/dist/core/p-3d417eff.entry.js +0 -2
  412. package/dist/core/p-3d417eff.entry.js.map +0 -1
  413. package/dist/core/p-43256b7c.entry.js.map +0 -1
  414. package/dist/core/p-50ead56c.entry.js.map +0 -1
  415. package/dist/core/p-6d3e4bb1.entry.js +0 -2
  416. package/dist/core/p-6d3e4bb1.entry.js.map +0 -1
  417. package/dist/core/p-726673ee.entry.js.map +0 -1
  418. package/dist/core/p-72d30c8a.entry.js +0 -2
  419. package/dist/core/p-72d30c8a.entry.js.map +0 -1
  420. package/dist/core/p-7827b5cb.entry.js +0 -2
  421. package/dist/core/p-7827b5cb.entry.js.map +0 -1
  422. package/dist/core/p-7fbf2d3e.entry.js +0 -2
  423. package/dist/core/p-7fbf2d3e.entry.js.map +0 -1
  424. package/dist/core/p-91cf9b2b.entry.js +0 -2
  425. package/dist/core/p-91cf9b2b.entry.js.map +0 -1
  426. package/dist/core/p-ac4b7329.entry.js +0 -2
  427. package/dist/core/p-ac4b7329.entry.js.map +0 -1
  428. package/dist/core/p-b01ffa55.entry.js.map +0 -1
  429. package/dist/core/p-b17c94b7.entry.js +0 -2
  430. package/dist/core/p-b17c94b7.entry.js.map +0 -1
  431. package/dist/core/p-b78f8b8c.entry.js.map +0 -1
  432. package/dist/core/p-b95a72a3.entry.js +0 -2
  433. package/dist/core/p-b95a72a3.entry.js.map +0 -1
  434. package/dist/core/p-b997064c.entry.js +0 -2
  435. package/dist/core/p-b997064c.entry.js.map +0 -1
  436. package/dist/core/p-cf7db84a.entry.js +0 -2
  437. package/dist/core/p-cf7db84a.entry.js.map +0 -1
  438. package/dist/core/p-dd36bf1b.entry.js.map +0 -1
  439. package/dist/core/p-e488de54.entry.js +0 -2
  440. package/dist/core/p-e488de54.entry.js.map +0 -1
  441. package/dist/core/p-e4d1839e.entry.js +0 -2
  442. package/dist/core/p-e4d1839e.entry.js.map +0 -1
  443. package/dist/core/p-f0fc1bf0.entry.js +0 -2
  444. package/dist/core/p-f0fc1bf0.entry.js.map +0 -1
  445. package/dist/core/p-f60dbd0e.entry.js.map +0 -1
  446. package/dist/core/p-ff4298b1.entry.js +0 -2
  447. package/dist/core/p-ff4298b1.entry.js.map +0 -1
@@ -442,6 +442,8 @@ video {
442
442
 
443
443
 
444
444
  .label-container {
445
+ --ic-typography-color: var(--ic-accordion-group-title-text);
446
+ color: var(--ic-accordion-group-title-text);
445
447
  padding: var(--ic-space-xs);
446
448
  display: flex;
447
449
  justify-content: space-between;
@@ -455,15 +457,3 @@ video {
455
457
  :host(.ic-accordion-group-large) .label-container {
456
458
  padding: var(--ic-space-sm) var(--ic-space-xs);
457
459
  }
458
-
459
- :host(.ic-accordion-group-light) {
460
- color: var(--ic-color-white-text);
461
-
462
- --ic-typography-color: var(--ic-color-white-text);
463
- }
464
-
465
- :host(.ic-accordion-group.ic-accordion-group-dark) ::slotted(ic-accordion) {
466
- color: var(--ic-color-white-text);
467
-
468
- --ic-typography-color: var(--ic-color-white-text);
469
- }
@@ -36,15 +36,15 @@ export class AccordionGroup {
36
36
  this.accordions = undefined;
37
37
  this.areAllAccordionsOpen = undefined;
38
38
  this.accessibleButtonLabel = "accordions";
39
- this.appearance = "default";
39
+ this.theme = "inherit";
40
40
  this.expanded = false;
41
41
  this.label = "";
42
42
  this.singleExpansion = false;
43
43
  this.size = "medium";
44
44
  }
45
- watchAppearanceHandler() {
45
+ watchThemeHandler() {
46
46
  this.accordions.forEach((acc) => {
47
- acc.appearance = this.appearance;
47
+ acc.theme = this.theme;
48
48
  });
49
49
  }
50
50
  watchExpandedHandler() {
@@ -55,7 +55,7 @@ export class AccordionGroup {
55
55
  this.accordions = Array.from(accordionDirectChildren).filter((child) => child.tagName === "IC-ACCORDION");
56
56
  this.linkAccordions();
57
57
  this.accordions.forEach((acc) => {
58
- acc.appearance = this.appearance;
58
+ acc.theme = this.theme;
59
59
  });
60
60
  this.accordions.forEach((acc) => {
61
61
  acc.size = this.size;
@@ -95,12 +95,12 @@ export class AccordionGroup {
95
95
  focusEl.setFocus();
96
96
  }
97
97
  render() {
98
- const { appearance, size, label, singleExpansion, accessibleButtonLabel } = this;
98
+ const { size, label, singleExpansion, accessibleButtonLabel, theme } = this;
99
99
  return (h(Host, { "context-id": this.accordionGroupId, class: {
100
- [`ic-accordion-group-${appearance}`]: true,
101
100
  [`ic-accordion-group-${size}`]: true,
102
101
  ["ic-accordion-group"]: true,
103
- } }, h("div", { class: "label-container" }, h("ic-typography", { variant: "h4" }, h("h3", null, isSlotUsed(this.el, "label") ? h("slot", { name: "label" }) : label)), !singleExpansion && (h("ic-button", { ref: (el) => (this.allButtonEl = el), appearance: appearance === "light" ? "light" : "default", onClick: this.handleExpanded, variant: "tertiary", "aria-label": `${this.accordionOpenBtnText()} ${accessibleButtonLabel}` }, this.accordionOpenBtnText()))), h("slot", null)));
102
+ [`ic-theme-${theme}`]: theme !== "inherit",
103
+ } }, h("div", { class: "label-container" }, h("ic-typography", { variant: "h4" }, h("h3", null, isSlotUsed(this.el, "label") ? h("slot", { name: "label" }) : label)), !singleExpansion && (h("ic-button", { ref: (el) => (this.allButtonEl = el), onClick: this.handleExpanded, variant: "tertiary", "aria-label": `${this.accordionOpenBtnText()} ${accessibleButtonLabel}` }, this.accordionOpenBtnText()))), h("slot", null)));
104
104
  }
105
105
  static get is() { return "ic-accordion-group"; }
106
106
  static get encapsulation() { return "shadow"; }
@@ -134,29 +134,29 @@ export class AccordionGroup {
134
134
  "reflect": false,
135
135
  "defaultValue": "\"accordions\""
136
136
  },
137
- "appearance": {
137
+ "theme": {
138
138
  "type": "string",
139
139
  "mutable": false,
140
140
  "complexType": {
141
- "original": "IcThemeForeground",
142
- "resolved": "\"dark\" | \"default\" | \"light\"",
141
+ "original": "IcThemeMode",
142
+ "resolved": "\"dark\" | \"inherit\" | \"light\"",
143
143
  "references": {
144
- "IcThemeForeground": {
144
+ "IcThemeMode": {
145
145
  "location": "import",
146
146
  "path": "../../utils/types",
147
- "id": "src/utils/types.ts::IcThemeForeground"
147
+ "id": "src/utils/types.ts::IcThemeMode"
148
148
  }
149
149
  }
150
150
  },
151
151
  "required": false,
152
- "optional": false,
152
+ "optional": true,
153
153
  "docs": {
154
154
  "tags": [],
155
- "text": "The appearance of the accordion group, e.g dark, or light."
155
+ "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."
156
156
  },
157
- "attribute": "appearance",
157
+ "attribute": "theme",
158
158
  "reflect": false,
159
- "defaultValue": "\"default\""
159
+ "defaultValue": "\"inherit\""
160
160
  },
161
161
  "expanded": {
162
162
  "type": "boolean",
@@ -268,8 +268,8 @@ export class AccordionGroup {
268
268
  static get elementRef() { return "el"; }
269
269
  static get watchers() {
270
270
  return [{
271
- "propName": "appearance",
272
- "methodName": "watchAppearanceHandler"
271
+ "propName": "theme",
272
+ "methodName": "watchThemeHandler"
273
273
  }, {
274
274
  "propName": "expanded",
275
275
  "methodName": "watchExpandedHandler"
@@ -1 +1 @@
1
- {"version":3,"file":"ic-accordion-group.js","sourceRoot":"","sources":["../../../src/components/ic-accordion-group/ic-accordion-group.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Element,\n h,\n Host,\n Listen,\n Prop,\n State,\n Method,\n Watch,\n} from \"@stencil/core\";\nimport { IcThemeForeground, IcSizes } from \"../../utils/types\";\nimport { isSlotUsed } from \"../../utils/helpers\";\n\nlet accordionGroupIds = 0;\n\n/**\n * @slot label - Content is placed as the accordion group title.\n */\n@Component({\n tag: \"ic-accordion-group\",\n styleUrl: \"ic-accordion-group.css\",\n shadow: true,\n})\nexport class AccordionGroup {\n private accordionGroupId = `ic-accordion-group-${accordionGroupIds++}`;\n private allButtonEl: HTMLIcButtonElement;\n\n @Element() el: HTMLIcAccordionGroupElement;\n\n @State() accordions: HTMLIcAccordionElement[];\n\n @State() areAllAccordionsOpen: boolean;\n\n /**\n * The accessible button label to provide more context to the 'See all/Hide all' button for screen reader users.\n */\n @Prop() accessibleButtonLabel: string = \"accordions\";\n\n /**\n * The appearance of the accordion group, e.g dark, or light.\n */\n @Prop() appearance: IcThemeForeground = \"default\";\n @Watch(\"appearance\")\n watchAppearanceHandler() {\n this.accordions.forEach((acc) => {\n acc.appearance = this.appearance;\n });\n }\n\n /**\n * If `true`, the accordion will load in an expanded state.\n */\n @Prop({ mutable: true }) expanded: boolean = false;\n @Watch(\"expanded\")\n watchExpandedHandler() {\n this.handleExpanded();\n }\n\n /**\n * The header for the accordion group.\n */\n @Prop() label: string = \"\";\n\n /**\n * If `true`, only one accordion will open at a time.\n */\n @Prop() singleExpansion: boolean = false;\n\n /**\n * The size of the accordion.\n */\n @Prop() size?: IcSizes = \"medium\";\n\n componentDidLoad(): void {\n const accordionDirectChildren = (this.el as HTMLElement).children;\n this.accordions = Array.from(accordionDirectChildren).filter(\n (child) => child.tagName === \"IC-ACCORDION\"\n ) as HTMLIcAccordionElement[];\n this.linkAccordions();\n this.accordions.forEach((acc) => {\n acc.appearance = this.appearance;\n });\n this.accordions.forEach((acc) => {\n acc.size = this.size;\n });\n if (this.expanded) {\n this.accordions.forEach((acc) => {\n acc.expanded = true;\n });\n this.setExpandedToAreAllAccordionsOpen();\n } else {\n this.setExpandedToAreAllAccordionsOpen();\n this.expanded = this.areAllAccordionsOpen;\n }\n }\n\n @Listen(\"accordionClicked\")\n handleAccordionClicked(event: CustomEvent): void {\n if (!this.singleExpansion) {\n // 'See all' should be visible until all accordions are open, then 'Hide all' should be visible\n this.setExpandedToAreAllAccordionsOpen();\n } else {\n this.accordions.forEach((acc) => {\n if (acc.expanded && event.detail.id !== acc.id) {\n acc.expanded = false;\n }\n });\n }\n }\n\n /**\n * Sets the focus on first focusable element in the accordion group. If the \"See/Hide all\" button is present, it will be focused.\n * Otherwise, the first accordion will be focused.\n */\n @Method()\n async setFocus(): Promise<void> {\n const focusEl = this.singleExpansion\n ? this.accordions[0]\n : this.allButtonEl;\n focusEl.setFocus();\n }\n\n private handleExpanded = () => {\n if (this.areAllAccordionsOpen) {\n this.expanded = false;\n this.accordions.forEach((acc) => {\n acc.expanded = this.expanded;\n });\n } else {\n this.expanded = true;\n this.accordions.forEach((acc) => {\n acc.expanded = this.expanded;\n });\n }\n this.setExpandedToAreAllAccordionsOpen();\n };\n\n private linkAccordions = () => {\n this.accordions.forEach((accordion) => {\n accordion.setAttribute(\"context-id\", this.accordionGroupId);\n });\n };\n\n private setExpandedToAreAllAccordionsOpen = () => {\n this.areAllAccordionsOpen = this.accordions.every(\n (accordion) => !!accordion.expanded\n );\n };\n\n private accordionOpenBtnText = () => {\n return !this.areAllAccordionsOpen ? \"See all\" : \"Hide all\";\n };\n\n render() {\n const { appearance, size, label, singleExpansion, accessibleButtonLabel } =\n this;\n return (\n <Host\n context-id={this.accordionGroupId}\n class={{\n [`ic-accordion-group-${appearance}`]: true,\n [`ic-accordion-group-${size}`]: true,\n [\"ic-accordion-group\"]: true,\n }}\n >\n <div class=\"label-container\">\n <ic-typography variant=\"h4\">\n <h3>\n {isSlotUsed(this.el, \"label\") ? <slot name=\"label\" /> : label}\n </h3>\n </ic-typography>\n {!singleExpansion && (\n <ic-button\n ref={(el) => (this.allButtonEl = el)}\n appearance={appearance === \"light\" ? \"light\" : \"default\"}\n onClick={this.handleExpanded}\n variant=\"tertiary\"\n aria-label={`${this.accordionOpenBtnText()} ${accessibleButtonLabel}`}\n >\n {this.accordionOpenBtnText()}\n </ic-button>\n )}\n </div>\n <slot></slot>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ic-accordion-group.js","sourceRoot":"","sources":["../../../src/components/ic-accordion-group/ic-accordion-group.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Element,\n h,\n Host,\n Listen,\n Prop,\n State,\n Method,\n Watch,\n} from \"@stencil/core\";\nimport { IcSizes, IcThemeMode } from \"../../utils/types\";\nimport { isSlotUsed } from \"../../utils/helpers\";\n\nlet accordionGroupIds = 0;\n\n/**\n * @slot label - Content is placed as the accordion group title.\n */\n@Component({\n tag: \"ic-accordion-group\",\n styleUrl: \"ic-accordion-group.css\",\n shadow: true,\n})\nexport class AccordionGroup {\n private accordionGroupId = `ic-accordion-group-${accordionGroupIds++}`;\n private allButtonEl: HTMLIcButtonElement;\n\n @Element() el: HTMLIcAccordionGroupElement;\n\n @State() accordions: HTMLIcAccordionElement[];\n\n @State() areAllAccordionsOpen: boolean;\n\n /**\n * The accessible button label to provide more context to the 'See all/Hide all' button for screen reader users.\n */\n @Prop() accessibleButtonLabel: string = \"accordions\";\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 @Watch(\"theme\")\n watchThemeHandler(): void {\n this.accordions.forEach((acc) => {\n acc.theme = this.theme;\n });\n }\n\n /**\n * If `true`, the accordion will load in an expanded state.\n */\n @Prop({ mutable: true }) expanded: boolean = false;\n @Watch(\"expanded\")\n watchExpandedHandler() {\n this.handleExpanded();\n }\n\n /**\n * The header for the accordion group.\n */\n @Prop() label: string = \"\";\n\n /**\n * If `true`, only one accordion will open at a time.\n */\n @Prop() singleExpansion: boolean = false;\n\n /**\n * The size of the accordion.\n */\n @Prop() size?: IcSizes = \"medium\";\n\n componentDidLoad(): void {\n const accordionDirectChildren = (this.el as HTMLElement).children;\n this.accordions = Array.from(accordionDirectChildren).filter(\n (child) => child.tagName === \"IC-ACCORDION\"\n ) as HTMLIcAccordionElement[];\n this.linkAccordions();\n this.accordions.forEach((acc) => {\n acc.theme = this.theme;\n });\n this.accordions.forEach((acc) => {\n acc.size = this.size;\n });\n if (this.expanded) {\n this.accordions.forEach((acc) => {\n acc.expanded = true;\n });\n this.setExpandedToAreAllAccordionsOpen();\n } else {\n this.setExpandedToAreAllAccordionsOpen();\n this.expanded = this.areAllAccordionsOpen;\n }\n }\n\n @Listen(\"accordionClicked\")\n handleAccordionClicked(event: CustomEvent): void {\n if (!this.singleExpansion) {\n // 'See all' should be visible until all accordions are open, then 'Hide all' should be visible\n this.setExpandedToAreAllAccordionsOpen();\n } else {\n this.accordions.forEach((acc) => {\n if (acc.expanded && event.detail.id !== acc.id) {\n acc.expanded = false;\n }\n });\n }\n }\n\n /**\n * Sets the focus on first focusable element in the accordion group. If the \"See/Hide all\" button is present, it will be focused.\n * Otherwise, the first accordion will be focused.\n */\n @Method()\n async setFocus(): Promise<void> {\n const focusEl = this.singleExpansion\n ? this.accordions[0]\n : this.allButtonEl;\n focusEl.setFocus();\n }\n\n private handleExpanded = () => {\n if (this.areAllAccordionsOpen) {\n this.expanded = false;\n this.accordions.forEach((acc) => {\n acc.expanded = this.expanded;\n });\n } else {\n this.expanded = true;\n this.accordions.forEach((acc) => {\n acc.expanded = this.expanded;\n });\n }\n this.setExpandedToAreAllAccordionsOpen();\n };\n\n private linkAccordions = () => {\n this.accordions.forEach((accordion) => {\n accordion.setAttribute(\"context-id\", this.accordionGroupId);\n });\n };\n\n private setExpandedToAreAllAccordionsOpen = () => {\n this.areAllAccordionsOpen = this.accordions.every(\n (accordion) => !!accordion.expanded\n );\n };\n\n private accordionOpenBtnText = () => {\n return !this.areAllAccordionsOpen ? \"See all\" : \"Hide all\";\n };\n\n render() {\n const { size, label, singleExpansion, accessibleButtonLabel, theme } = this;\n return (\n <Host\n context-id={this.accordionGroupId}\n class={{\n [`ic-accordion-group-${size}`]: true,\n [\"ic-accordion-group\"]: true,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n <div class=\"label-container\">\n <ic-typography variant=\"h4\">\n <h3>\n {isSlotUsed(this.el, \"label\") ? <slot name=\"label\" /> : label}\n </h3>\n </ic-typography>\n {!singleExpansion && (\n <ic-button\n ref={(el) => (this.allButtonEl = el)}\n onClick={this.handleExpanded}\n variant=\"tertiary\"\n aria-label={`${this.accordionOpenBtnText()} ${accessibleButtonLabel}`}\n >\n {this.accordionOpenBtnText()}\n </ic-button>\n )}\n </div>\n <slot></slot>\n </Host>\n );\n }\n}\n"]}
@@ -13,12 +13,12 @@ describe("ic-accordion-group snapshots", () => {
13
13
  });
14
14
  expect(page.root).toMatchSnapshot("renders as default");
15
15
  });
16
- it("should match light snapshot", async () => {
16
+ it("should match dark snapshot", async () => {
17
17
  const page = await newSpecPage({
18
18
  components: [AccordionGroup],
19
- html: `<ic-accordion-group appearance="light" label="Test heading"></ic-accordion-group>`,
19
+ html: `<ic-accordion-group theme="dark" label="Test heading"></ic-accordion-group>`,
20
20
  });
21
- expect(page.root).toMatchSnapshot("renders as light");
21
+ expect(page.root).toMatchSnapshot("renders as dark");
22
22
  });
23
23
  });
24
24
  describe("ic-accordion-group functions unit test", () => {
@@ -1 +1 @@
1
- {"version":3,"file":"ic-accordion-group.spec.js","sourceRoot":"","sources":["../../../../../src/components/ic-accordion-group/test/basic/ic-accordion-group.spec.ts"],"names":[],"mappings":"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","sourcesContent":["import { newSpecPage } from \"@stencil/core/testing\";\nimport { AccordionGroup } from \"../../ic-accordion-group\";\nimport { Accordion } from \"../../../ic-accordion/ic-accordion\";\n\nconst event = { detail: { id: \"ic-accordion-0\" } };\n\nbeforeAll(() => {\n jest.spyOn(console, \"warn\").mockImplementation(jest.fn());\n});\n\ndescribe(\"ic-accordion-group snapshots\", () => {\n it(\"should match default snapshot\", async () => {\n const page = await newSpecPage({\n components: [AccordionGroup],\n html: `<ic-accordion-group label=\"Test heading\"></ic-accordion-group>`,\n });\n expect(page.root).toMatchSnapshot(\"renders as default\");\n });\n\n it(\"should match light snapshot\", async () => {\n const page = await newSpecPage({\n components: [AccordionGroup],\n html: `<ic-accordion-group appearance=\"light\" label=\"Test heading\"></ic-accordion-group>`,\n });\n expect(page.root).toMatchSnapshot(\"renders as light\");\n });\n});\n\ndescribe(\"ic-accordion-group functions unit test\", () => {\n it(\"should check setExpandedToAreAllAccordionsOpen when single expansion is false\", async () => {\n const page = await newSpecPage({\n components: [AccordionGroup, Accordion],\n html: `\n <ic-accordion-group label=\"Test heading\">\n <ic-accordion>\n <ic-typography variant=\"body\" >\n This is an example of the main body text.\n </ic-typography>\n </ic-accordion>\n <ic-accordion expanded>\n <ic-typography variant=\"body\" >\n This is an example of the main body text.\n </ic-typography>\n </ic-accordion>\n </ic-accordion-group>`,\n });\n const spySetExpandedToAreAllAccordionsOpen = jest.spyOn(\n page.rootInstance,\n \"setExpandedToAreAllAccordionsOpen\"\n );\n expect(page.root.singleExpansion).toBe(false);\n await page.rootInstance.handleAccordionClicked(event);\n expect(spySetExpandedToAreAllAccordionsOpen).toBeCalled();\n });\n\n it(\"should check handleExpanded\", async () => {\n const page = await newSpecPage({\n components: [AccordionGroup],\n html: `<ic-accordion-group label=\"Test heading\" expanded></ic-accordion-group>`,\n });\n expect(page.root.expanded).toBe(true);\n await page.rootInstance.handleExpanded();\n await page.waitForChanges;\n expect(page.root.expanded).toBe(false);\n });\n});\n\ndescribe(\"ic-accordion-group component\", () => {\n it(\"should test the handleExpanded function\", async () => {\n const page = await newSpecPage({\n components: [AccordionGroup, Accordion],\n html: `\n <ic-accordion-group expanded=\"true\" label=\"Test heading\">\n <ic-accordion heading=\"Accordion 1\">\n <ic-typography variant=\"body\">\n This is an example of the main body text.\n </ic-typography>\n </ic-accordion>\n </ic-accordion-group>`,\n });\n expect(page.root.expanded).toBe(true);\n await page.rootInstance.handleExpanded();\n await page.waitForChanges();\n expect(page.root.expanded).toBe(false);\n });\n\n it(\"should test singleExpansion function\", async () => {\n const page = await newSpecPage({\n components: [AccordionGroup, Accordion],\n html: `\n <ic-accordion-group label=\"Test heading\" single-expansion=\"true\">\n <ic-accordion heading=\"Accordion 1\">\n <ic-typography variant=\"body\">\n This is an example of the main body text.\n </ic-typography>\n </ic-accordion>\n <ic-accordion heading=\"Accordion 2\" expanded>\n <ic-typography variant=\"body\">\n This is an example of the main body text.\n </ic-typography>\n </ic-accordion>\n </ic-accordion-group>`,\n });\n\n const accordions = page.root.querySelectorAll(\"ic-accordion\");\n const accordion1 = accordions[0];\n const accordion2 = accordions[1];\n const accordionButton = accordion1.shadowRoot.querySelector(\n \".section-button\"\n ) as HTMLButtonElement;\n await page.waitForChanges();\n expect(accordion1.expanded).toBe(false);\n expect(accordion2.expanded).toBe(true);\n accordionButton.click();\n await page.waitForChanges();\n expect(accordion1.expanded).toBe(true);\n expect(accordion2.expanded).toBe(false);\n });\n\n it(\"should check the areAllAccordionsOpen function\", async () => {\n const page = await newSpecPage({\n components: [AccordionGroup, Accordion],\n html: `\n <ic-accordion-group label=\"Test heading\">\n <ic-accordion heading=\"Accordion 1\">\n <ic-typography variant=\"body\">\n This is an example of the main body text.\n </ic-typography>\n </ic-accordion>\n </ic-accordion-group>`,\n });\n // uses handleExpanded to open accordion, making areAllAccordionsOpen = true\n await page.rootInstance.handleExpanded();\n await page.waitForChanges;\n expect(page.root.expanded).toBe(true);\n expect(page.rootInstance.areAllAccordionsOpen).toBe(true);\n\n // uses handleExpanded to close accordion, making areAllAccordionsOpen = false\n await page.rootInstance.handleExpanded();\n await page.waitForChanges;\n expect(page.root.expanded).toBe(false);\n expect(page.rootInstance.areAllAccordionsOpen).toBe(false);\n });\n});\n"]}
1
+ {"version":3,"file":"ic-accordion-group.spec.js","sourceRoot":"","sources":["../../../../../src/components/ic-accordion-group/test/basic/ic-accordion-group.spec.ts"],"names":[],"mappings":"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","sourcesContent":["import { newSpecPage } from \"@stencil/core/testing\";\nimport { AccordionGroup } from \"../../ic-accordion-group\";\nimport { Accordion } from \"../../../ic-accordion/ic-accordion\";\n\nconst event = { detail: { id: \"ic-accordion-0\" } };\n\nbeforeAll(() => {\n jest.spyOn(console, \"warn\").mockImplementation(jest.fn());\n});\n\ndescribe(\"ic-accordion-group snapshots\", () => {\n it(\"should match default snapshot\", async () => {\n const page = await newSpecPage({\n components: [AccordionGroup],\n html: `<ic-accordion-group label=\"Test heading\"></ic-accordion-group>`,\n });\n expect(page.root).toMatchSnapshot(\"renders as default\");\n });\n\n it(\"should match dark snapshot\", async () => {\n const page = await newSpecPage({\n components: [AccordionGroup],\n html: `<ic-accordion-group theme=\"dark\" label=\"Test heading\"></ic-accordion-group>`,\n });\n expect(page.root).toMatchSnapshot(\"renders as dark\");\n });\n});\n\ndescribe(\"ic-accordion-group functions unit test\", () => {\n it(\"should check setExpandedToAreAllAccordionsOpen when single expansion is false\", async () => {\n const page = await newSpecPage({\n components: [AccordionGroup, Accordion],\n html: `\n <ic-accordion-group label=\"Test heading\">\n <ic-accordion>\n <ic-typography variant=\"body\" >\n This is an example of the main body text.\n </ic-typography>\n </ic-accordion>\n <ic-accordion expanded>\n <ic-typography variant=\"body\" >\n This is an example of the main body text.\n </ic-typography>\n </ic-accordion>\n </ic-accordion-group>`,\n });\n const spySetExpandedToAreAllAccordionsOpen = jest.spyOn(\n page.rootInstance,\n \"setExpandedToAreAllAccordionsOpen\"\n );\n expect(page.root.singleExpansion).toBe(false);\n await page.rootInstance.handleAccordionClicked(event);\n expect(spySetExpandedToAreAllAccordionsOpen).toBeCalled();\n });\n\n it(\"should check handleExpanded\", async () => {\n const page = await newSpecPage({\n components: [AccordionGroup],\n html: `<ic-accordion-group label=\"Test heading\" expanded></ic-accordion-group>`,\n });\n expect(page.root.expanded).toBe(true);\n await page.rootInstance.handleExpanded();\n await page.waitForChanges;\n expect(page.root.expanded).toBe(false);\n });\n});\n\ndescribe(\"ic-accordion-group component\", () => {\n it(\"should test the handleExpanded function\", async () => {\n const page = await newSpecPage({\n components: [AccordionGroup, Accordion],\n html: `\n <ic-accordion-group expanded=\"true\" label=\"Test heading\">\n <ic-accordion heading=\"Accordion 1\">\n <ic-typography variant=\"body\">\n This is an example of the main body text.\n </ic-typography>\n </ic-accordion>\n </ic-accordion-group>`,\n });\n expect(page.root.expanded).toBe(true);\n await page.rootInstance.handleExpanded();\n await page.waitForChanges();\n expect(page.root.expanded).toBe(false);\n });\n\n it(\"should test singleExpansion function\", async () => {\n const page = await newSpecPage({\n components: [AccordionGroup, Accordion],\n html: `\n <ic-accordion-group label=\"Test heading\" single-expansion=\"true\">\n <ic-accordion heading=\"Accordion 1\">\n <ic-typography variant=\"body\">\n This is an example of the main body text.\n </ic-typography>\n </ic-accordion>\n <ic-accordion heading=\"Accordion 2\" expanded>\n <ic-typography variant=\"body\">\n This is an example of the main body text.\n </ic-typography>\n </ic-accordion>\n </ic-accordion-group>`,\n });\n\n const accordions = page.root.querySelectorAll(\"ic-accordion\");\n const accordion1 = accordions[0];\n const accordion2 = accordions[1];\n const accordionButton = accordion1.shadowRoot.querySelector(\n \".section-button\"\n ) as HTMLButtonElement;\n await page.waitForChanges();\n expect(accordion1.expanded).toBe(false);\n expect(accordion2.expanded).toBe(true);\n accordionButton.click();\n await page.waitForChanges();\n expect(accordion1.expanded).toBe(true);\n expect(accordion2.expanded).toBe(false);\n });\n\n it(\"should check the areAllAccordionsOpen function\", async () => {\n const page = await newSpecPage({\n components: [AccordionGroup, Accordion],\n html: `\n <ic-accordion-group label=\"Test heading\">\n <ic-accordion heading=\"Accordion 1\">\n <ic-typography variant=\"body\">\n This is an example of the main body text.\n </ic-typography>\n </ic-accordion>\n </ic-accordion-group>`,\n });\n // uses handleExpanded to open accordion, making areAllAccordionsOpen = true\n await page.rootInstance.handleExpanded();\n await page.waitForChanges;\n expect(page.root.expanded).toBe(true);\n expect(page.rootInstance.areAllAccordionsOpen).toBe(true);\n\n // uses handleExpanded to close accordion, making areAllAccordionsOpen = false\n await page.rootInstance.handleExpanded();\n await page.waitForChanges;\n expect(page.root.expanded).toBe(false);\n expect(page.rootInstance.areAllAccordionsOpen).toBe(false);\n });\n});\n"]}
@@ -445,9 +445,8 @@ video {
445
445
  display: block;
446
446
  }
447
447
 
448
- :host ic-typography,
449
448
  :host ::slotted(ic-typography) {
450
- --ic-typography-color: var(--ic-color-text-primary-light);
449
+ --ic-typography-color: var(--ic-alert-description);
451
450
  }
452
451
 
453
452
  .container {
@@ -459,23 +458,23 @@ video {
459
458
  }
460
459
 
461
460
  .container-neutral {
462
- background-color: var(--ic-status-unknown-light);
461
+ background-color: var(--ic-alert-background-neutral);
463
462
  }
464
463
 
465
464
  .container-info {
466
- background-color: var(--ic-status-info-light);
465
+ background-color: var(--ic-alert-background-info);
467
466
  }
468
467
 
469
468
  .container-warning {
470
- background-color: var(--ic-status-warning-light);
469
+ background-color: var(--ic-alert-background-warning);
471
470
  }
472
471
 
473
472
  .container-error {
474
- background-color: var(--ic-status-error-light);
473
+ background-color: var(--ic-alert-background-error);
475
474
  }
476
475
 
477
476
  .container-success {
478
- background-color: var(--ic-status-success-light);
477
+ background-color: var(--ic-alert-background-success);
479
478
  }
480
479
 
481
480
  .alert-icon-container {
@@ -492,23 +491,23 @@ video {
492
491
  }
493
492
 
494
493
  .divider-neutral {
495
- background-color: var(--ic-status-unknown-default);
494
+ background-color: var(--ic-alert-status-type-neutral);
496
495
  }
497
496
 
498
497
  .divider-info {
499
- background-color: var(--ic-status-info-default);
498
+ background-color: var(--ic-alert-status-type-info);
500
499
  }
501
500
 
502
501
  .divider-warning {
503
- background-color: var(--ic-color-border-warning);
502
+ background-color: var(--ic-alert-status-type-warning);
504
503
  }
505
504
 
506
505
  .divider-error {
507
- background-color: var(--ic-color-border-error);
506
+ background-color: var(--ic-alert-status-type-error);
508
507
  }
509
508
 
510
509
  .divider-success {
511
- background-color: var(--ic-color-border-success);
510
+ background-color: var(--ic-alert-status-type-success);
512
511
  }
513
512
 
514
513
  .alert-icon {
@@ -539,23 +538,23 @@ video {
539
538
  height: var(--ic-space-lg);
540
539
  width: var(--ic-space-lg);
541
540
  display: inline-block;
542
- fill: var(--ic-status-unknown-default);
541
+ fill: var(--ic-alert-icon-neutral);
543
542
  }
544
543
 
545
544
  :host([variant="info"]) .alert-icon svg {
546
- fill: var(--ic-status-info-default);
545
+ fill: var(--ic-alert-icon-info);
547
546
  }
548
547
 
549
548
  :host([variant="warning"]) .alert-icon svg {
550
- fill: var(--ic-status-warning-default);
549
+ fill: var(--ic-alert-icon-warning);
551
550
  }
552
551
 
553
552
  :host([variant="error"]) .alert-icon svg {
554
- fill: var(--ic-status-error-default);
553
+ fill: var(--ic-alert-icon-error);
555
554
  }
556
555
 
557
556
  :host([variant="success"]) .alert-icon svg {
558
- fill: var(--ic-status-success-default);
557
+ fill: var(--ic-alert-icon-success);
559
558
  }
560
559
 
561
560
  .alert-content {
@@ -570,6 +569,7 @@ video {
570
569
  align-items: center;
571
570
  padding: var(--ic-space-xs) var(--ic-space-xs) var(--ic-space-xs) 0;
572
571
  flex: 1;
572
+ --ic-typography-color: var(--ic-alert-description);
573
573
  }
574
574
 
575
575
  .alert-message-title-above {
@@ -578,6 +578,7 @@ video {
578
578
 
579
579
  .alert-title {
580
580
  margin-right: var(--ic-space-xs);
581
+ --ic-typography-color: var(--ic-alert-title);
581
582
  }
582
583
 
583
584
  .alert-title-above {
@@ -602,6 +603,10 @@ video {
602
603
  justify-content: center;
603
604
  }
604
605
 
606
+ .dismiss-icon > svg {
607
+ color: var(--ic-alert-icon-dismissible);
608
+ }
609
+
605
610
  .dismiss-icon:hover {
606
611
  cursor: pointer;
607
612
  }
@@ -1,7 +1,7 @@
1
1
  import { Host, h, forceUpdate, } from "@stencil/core";
2
2
  import closeIcon from "../../assets/close-icon.svg";
3
3
  import { isSlotUsed, checkSlotInChildMutations } from "../../utils/helpers";
4
- import { IcThemeForegroundEnum } from "../../utils/types";
4
+ import { IcThemeForegroundEnum, } from "../../utils/types";
5
5
  import { VARIANT_ICONS } from "../../utils/constants";
6
6
  /**
7
7
  * @slot message - Content is placed to the right of the title.
@@ -27,9 +27,10 @@ export class Alert {
27
27
  this.dismissible = false;
28
28
  this.heading = "";
29
29
  this.message = undefined;
30
+ this.showDefaultIcon = true;
31
+ this.theme = "inherit";
30
32
  this.titleAbove = false;
31
33
  this.variant = "neutral";
32
- this.showDefaultIcon = true;
33
34
  }
34
35
  disconnectedCallback() {
35
36
  var _a;
@@ -52,9 +53,10 @@ export class Alert {
52
53
  this.alertTitleWrap = true;
53
54
  }
54
55
  render() {
55
- const { variant, heading, message, titleAbove, dismissible, announced, visible, showDefaultIcon, } = this;
56
+ const { variant, heading, message, titleAbove, dismissible, announced, visible, showDefaultIcon, theme, } = this;
56
57
  return (visible && (h(Host, { role: announced ? "alert" : null, class: {
57
58
  [IcThemeForegroundEnum.Dark]: true,
59
+ [`ic-theme-${theme}`]: theme !== "inherit",
58
60
  } }, h("div", { class: {
59
61
  ["container"]: true,
60
62
  [`container-${variant}`]: true,
@@ -78,7 +80,7 @@ export class Alert {
78
80
  }, variant: "subtitle-large" }, h("p", null, heading))), h("slot", { name: "message" }, h("ic-typography", { variant: "body" }, message))), isSlotUsed(this.el, "action") && (h("div", { class: "alert-action-container" }, h("slot", { name: "action" })))), h("div", { class: "dismiss-icon-container" }, dismissible && (h("ic-button", { class: {
79
81
  ["svg-container"]: true,
80
82
  ["dismiss-icon"]: true,
81
- }, innerHTML: closeIcon, onClick: this.dismissAction, variant: "icon", appearance: IcThemeForegroundEnum.Dark, title: "dismiss" })))))));
83
+ }, innerHTML: closeIcon, onClick: this.dismissAction, variant: "icon", title: "dismiss" })))))));
82
84
  }
83
85
  static get is() { return "ic-alert"; }
84
86
  static get encapsulation() { return "shadow"; }
@@ -165,7 +167,7 @@ export class Alert {
165
167
  "attribute": "message",
166
168
  "reflect": false
167
169
  },
168
- "titleAbove": {
170
+ "showDefaultIcon": {
169
171
  "type": "boolean",
170
172
  "mutable": false,
171
173
  "complexType": {
@@ -174,26 +176,26 @@ export class Alert {
174
176
  "references": {}
175
177
  },
176
178
  "required": false,
177
- "optional": true,
179
+ "optional": false,
178
180
  "docs": {
179
181
  "tags": [],
180
- "text": "If `true`, the title and message will appear above and below instead of inline."
182
+ "text": "If `true`, the default icon for the neutral variant will appear on the left of the alert."
181
183
  },
182
- "attribute": "title-above",
184
+ "attribute": "show-default-icon",
183
185
  "reflect": false,
184
- "defaultValue": "false"
186
+ "defaultValue": "true"
185
187
  },
186
- "variant": {
188
+ "theme": {
187
189
  "type": "string",
188
190
  "mutable": false,
189
191
  "complexType": {
190
- "original": "IcStatusVariants",
191
- "resolved": "\"error\" | \"info\" | \"neutral\" | \"success\" | \"warning\"",
192
+ "original": "IcThemeMode",
193
+ "resolved": "\"dark\" | \"inherit\" | \"light\"",
192
194
  "references": {
193
- "IcStatusVariants": {
195
+ "IcThemeMode": {
194
196
  "location": "import",
195
197
  "path": "../../utils/types",
196
- "id": "src/utils/types.ts::IcStatusVariants"
198
+ "id": "src/utils/types.ts::IcThemeMode"
197
199
  }
198
200
  }
199
201
  },
@@ -201,13 +203,13 @@ export class Alert {
201
203
  "optional": true,
202
204
  "docs": {
203
205
  "tags": [],
204
- "text": "The variant of the alert which will be rendered."
206
+ "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."
205
207
  },
206
- "attribute": "variant",
208
+ "attribute": "theme",
207
209
  "reflect": false,
208
- "defaultValue": "\"neutral\""
210
+ "defaultValue": "\"inherit\""
209
211
  },
210
- "showDefaultIcon": {
212
+ "titleAbove": {
211
213
  "type": "boolean",
212
214
  "mutable": false,
213
215
  "complexType": {
@@ -216,14 +218,38 @@ export class Alert {
216
218
  "references": {}
217
219
  },
218
220
  "required": false,
219
- "optional": false,
221
+ "optional": true,
220
222
  "docs": {
221
223
  "tags": [],
222
- "text": "If `true`, the default icon for the neutral variant will appear on the left of the alert."
224
+ "text": "If `true`, the title and message will appear above and below instead of inline."
223
225
  },
224
- "attribute": "show-default-icon",
226
+ "attribute": "title-above",
225
227
  "reflect": false,
226
- "defaultValue": "true"
228
+ "defaultValue": "false"
229
+ },
230
+ "variant": {
231
+ "type": "string",
232
+ "mutable": false,
233
+ "complexType": {
234
+ "original": "IcStatusVariants",
235
+ "resolved": "\"error\" | \"info\" | \"neutral\" | \"success\" | \"warning\"",
236
+ "references": {
237
+ "IcStatusVariants": {
238
+ "location": "import",
239
+ "path": "../../utils/types",
240
+ "id": "src/utils/types.ts::IcStatusVariants"
241
+ }
242
+ }
243
+ },
244
+ "required": false,
245
+ "optional": true,
246
+ "docs": {
247
+ "tags": [],
248
+ "text": "The variant of the alert which will be rendered."
249
+ },
250
+ "attribute": "variant",
251
+ "reflect": false,
252
+ "defaultValue": "\"neutral\""
227
253
  }
228
254
  };
229
255
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ic-alert.js","sourceRoot":"","sources":["../../../src/components/ic-alert/ic-alert.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n State,\n Listen,\n Prop,\n h,\n forceUpdate,\n} from \"@stencil/core\";\nimport closeIcon from \"../../assets/close-icon.svg\";\nimport { isSlotUsed, checkSlotInChildMutations } from \"../../utils/helpers\";\nimport { IcThemeForegroundEnum, IcStatusVariants } from \"../../utils/types\";\nimport { VARIANT_ICONS } from \"../../utils/constants\";\n\n/**\n * @slot message - Content is placed to the right of the title.\n * @slot action - Content is placed to the right of the message.\n * @slot neutral-icon - A custom neutral icon is placed to the left of the title. This will override the default icon if used.\n */\n@Component({\n tag: \"ic-alert\",\n styleUrl: \"ic-alert.css\",\n shadow: true,\n})\nexport class Alert {\n private hostMutationObserver: MutationObserver = null;\n\n @Element() el: HTMLIcAlertElement;\n\n @State() alertTitleWrap: boolean = false;\n @State() visible: boolean = true;\n\n /**\n * If `true`, the alert will have the 'alert' ARIA role and will be announced to screen readers.\n */\n @Prop() announced?: boolean = true;\n\n /**\n * If `true`, the alert will have a close icon at the end to dismiss it.\n */\n @Prop() dismissible?: boolean = false;\n\n /**\n * The optional title to display at the start of the alert.\n */\n @Prop() heading?: string = \"\";\n\n /**\n * The main body message of the alert.\n */\n @Prop() message?: string;\n\n /**\n * If `true`, the title and message will appear above and below instead of inline.\n */\n @Prop() titleAbove?: boolean = false;\n\n /**\n * The variant of the alert which will be rendered.\n */\n @Prop() variant?: IcStatusVariants = \"neutral\";\n\n /**\n * If `true`, the default icon for the neutral variant will appear on the left of the alert.\n */\n @Prop() showDefaultIcon: boolean = true;\n\n /**\n * Is emitted when the user dismisses the alert.\n */\n @Event() icDismiss: EventEmitter<void>;\n\n disconnectedCallback(): void {\n this.hostMutationObserver?.disconnect();\n }\n\n componentDidLoad(): void {\n this.alertTitleShouldWrap();\n\n this.hostMutationObserver = new MutationObserver(this.hostMutationCallback);\n this.hostMutationObserver.observe(this.el, {\n childList: true,\n });\n }\n\n @Listen(\"icDismiss\", { capture: true })\n handleClick(): void {\n this.visible = !this.visible;\n }\n\n private dismissAction = (): void => {\n this.icDismiss.emit();\n };\n\n private alertTitleShouldWrap() {\n const titleHeight =\n this.el.shadowRoot.querySelector(\".alert-title\")?.clientHeight;\n if (titleHeight > 24) this.alertTitleWrap = true;\n }\n\n private hostMutationCallback = (mutationList: MutationRecord[]): void => {\n if (\n mutationList.some(({ type, addedNodes, removedNodes }) =>\n type === \"childList\"\n ? checkSlotInChildMutations(addedNodes, removedNodes, \"action\")\n : false\n )\n ) {\n forceUpdate(this);\n }\n };\n\n render() {\n const {\n variant,\n heading,\n message,\n titleAbove,\n dismissible,\n announced,\n visible,\n showDefaultIcon,\n } = this;\n\n return (\n visible && (\n <Host\n role={announced ? \"alert\" : null}\n class={{\n [IcThemeForegroundEnum.Dark]: true,\n }}\n >\n <div\n class={{\n [\"container\"]: true,\n [`container-${variant}`]: true,\n }}\n >\n <div class=\"alert-icon-container\">\n <div\n class={{\n [\"divider\"]: true,\n [`divider-${variant}`]: true,\n }}\n ></div>\n {variant === \"neutral\" ? (\n isSlotUsed(this.el, \"neutral-icon\") ? (\n <div class=\"alert-icon svg-container icon-neutral\">\n <slot name=\"neutral-icon\"></slot>\n </div>\n ) : showDefaultIcon ? (\n <span\n class={{\n [\"alert-icon\"]: true,\n [\"svg-container\"]: true,\n [`icon-${variant}`]: true,\n }}\n innerHTML={VARIANT_ICONS[variant].icon}\n ></span>\n ) : (\n <div class=\"icon-placeholder\"></div>\n )\n ) : (\n <span\n class={{\n [\"alert-icon\"]: true,\n [\"svg-container\"]: true,\n [`icon-${variant}`]: true,\n }}\n innerHTML={VARIANT_ICONS[variant].icon}\n ></span>\n )}\n </div>\n <div class=\"alert-content\">\n <div\n class={{\n [\"alert-message\"]: true,\n [\"alert-message-title-above\"]:\n titleAbove || this.alertTitleWrap,\n }}\n >\n {heading && (\n <ic-typography\n class={{\n [\"alert-title\"]: true,\n [\"alert-title-above\"]: titleAbove || this.alertTitleWrap,\n }}\n variant=\"subtitle-large\"\n >\n <p>{heading}</p>\n </ic-typography>\n )}\n <slot name=\"message\">\n <ic-typography variant=\"body\">{message}</ic-typography>\n </slot>\n </div>\n {isSlotUsed(this.el, \"action\") && (\n <div class=\"alert-action-container\">\n <slot name=\"action\" />\n </div>\n )}\n </div>\n <div class=\"dismiss-icon-container\">\n {dismissible && (\n <ic-button\n class={{\n [\"svg-container\"]: true,\n [\"dismiss-icon\"]: true,\n }}\n innerHTML={closeIcon}\n onClick={this.dismissAction}\n variant=\"icon\"\n appearance={IcThemeForegroundEnum.Dark}\n title=\"dismiss\"\n ></ic-button>\n )}\n </div>\n </div>\n </Host>\n )\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ic-alert.js","sourceRoot":"","sources":["../../../src/components/ic-alert/ic-alert.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n State,\n Listen,\n Prop,\n h,\n forceUpdate,\n} from \"@stencil/core\";\nimport closeIcon from \"../../assets/close-icon.svg\";\nimport { isSlotUsed, checkSlotInChildMutations } from \"../../utils/helpers\";\nimport {\n IcThemeForegroundEnum,\n IcStatusVariants,\n IcThemeMode,\n} from \"../../utils/types\";\nimport { VARIANT_ICONS } from \"../../utils/constants\";\n\n/**\n * @slot message - Content is placed to the right of the title.\n * @slot action - Content is placed to the right of the message.\n * @slot neutral-icon - A custom neutral icon is placed to the left of the title. This will override the default icon if used.\n */\n@Component({\n tag: \"ic-alert\",\n styleUrl: \"ic-alert.css\",\n shadow: true,\n})\nexport class Alert {\n private hostMutationObserver: MutationObserver = null;\n\n @Element() el: HTMLIcAlertElement;\n\n @State() alertTitleWrap: boolean = false;\n @State() visible: boolean = true;\n\n /**\n * If `true`, the alert will have the 'alert' ARIA role and will be announced to screen readers.\n */\n @Prop() announced?: boolean = true;\n\n /**\n * If `true`, the alert will have a close icon at the end to dismiss it.\n */\n @Prop() dismissible?: boolean = false;\n\n /**\n * The optional title to display at the start of the alert.\n */\n @Prop() heading?: string = \"\";\n\n /**\n * The main body message of the alert.\n */\n @Prop() message?: string;\n\n /**\n * If `true`, the default icon for the neutral variant will appear on the left of the alert.\n */\n @Prop() showDefaultIcon: boolean = true;\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 * If `true`, the title and message will appear above and below instead of inline.\n */\n @Prop() titleAbove?: boolean = false;\n\n /**\n * The variant of the alert which will be rendered.\n */\n @Prop() variant?: IcStatusVariants = \"neutral\";\n\n /**\n * Is emitted when the user dismisses the alert.\n */\n @Event() icDismiss: EventEmitter<void>;\n\n disconnectedCallback(): void {\n this.hostMutationObserver?.disconnect();\n }\n\n componentDidLoad(): void {\n this.alertTitleShouldWrap();\n\n this.hostMutationObserver = new MutationObserver(this.hostMutationCallback);\n this.hostMutationObserver.observe(this.el, {\n childList: true,\n });\n }\n\n @Listen(\"icDismiss\", { capture: true })\n handleClick(): void {\n this.visible = !this.visible;\n }\n\n private dismissAction = (): void => {\n this.icDismiss.emit();\n };\n\n private alertTitleShouldWrap() {\n const titleHeight =\n this.el.shadowRoot.querySelector(\".alert-title\")?.clientHeight;\n if (titleHeight > 24) this.alertTitleWrap = true;\n }\n\n private hostMutationCallback = (mutationList: MutationRecord[]): void => {\n if (\n mutationList.some(({ type, addedNodes, removedNodes }) =>\n type === \"childList\"\n ? checkSlotInChildMutations(addedNodes, removedNodes, \"action\")\n : false\n )\n ) {\n forceUpdate(this);\n }\n };\n\n render() {\n const {\n variant,\n heading,\n message,\n titleAbove,\n dismissible,\n announced,\n visible,\n showDefaultIcon,\n theme,\n } = this;\n\n return (\n visible && (\n <Host\n role={announced ? \"alert\" : null}\n class={{\n [IcThemeForegroundEnum.Dark]: true,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n <div\n class={{\n [\"container\"]: true,\n [`container-${variant}`]: true,\n }}\n >\n <div class=\"alert-icon-container\">\n <div\n class={{\n [\"divider\"]: true,\n [`divider-${variant}`]: true,\n }}\n ></div>\n {variant === \"neutral\" ? (\n isSlotUsed(this.el, \"neutral-icon\") ? (\n <div class=\"alert-icon svg-container icon-neutral\">\n <slot name=\"neutral-icon\"></slot>\n </div>\n ) : showDefaultIcon ? (\n <span\n class={{\n [\"alert-icon\"]: true,\n [\"svg-container\"]: true,\n [`icon-${variant}`]: true,\n }}\n innerHTML={VARIANT_ICONS[variant].icon}\n ></span>\n ) : (\n <div class=\"icon-placeholder\"></div>\n )\n ) : (\n <span\n class={{\n [\"alert-icon\"]: true,\n [\"svg-container\"]: true,\n [`icon-${variant}`]: true,\n }}\n innerHTML={VARIANT_ICONS[variant].icon}\n ></span>\n )}\n </div>\n <div class=\"alert-content\">\n <div\n class={{\n [\"alert-message\"]: true,\n [\"alert-message-title-above\"]:\n titleAbove || this.alertTitleWrap,\n }}\n >\n {heading && (\n <ic-typography\n class={{\n [\"alert-title\"]: true,\n [\"alert-title-above\"]: titleAbove || this.alertTitleWrap,\n }}\n variant=\"subtitle-large\"\n >\n <p>{heading}</p>\n </ic-typography>\n )}\n <slot name=\"message\">\n <ic-typography variant=\"body\">{message}</ic-typography>\n </slot>\n </div>\n {isSlotUsed(this.el, \"action\") && (\n <div class=\"alert-action-container\">\n <slot name=\"action\" />\n </div>\n )}\n </div>\n <div class=\"dismiss-icon-container\">\n {dismissible && (\n <ic-button\n class={{\n [\"svg-container\"]: true,\n [\"dismiss-icon\"]: true,\n }}\n innerHTML={closeIcon}\n onClick={this.dismissAction}\n variant=\"icon\"\n title=\"dismiss\"\n ></ic-button>\n )}\n </div>\n </div>\n </Host>\n )\n );\n }\n}\n"]}
@@ -123,7 +123,7 @@ describe("ic-alert component", () => {
123
123
  </div>
124
124
  </div>
125
125
  <div class="dismiss-icon-container">
126
- <ic-button appearance="dark" class="dismiss-icon svg-container" title="dismiss" variant="icon">
126
+ <ic-button class="dismiss-icon svg-container" title="dismiss" variant="icon">
127
127
  svg
128
128
  </ic-button>
129
129
  </div>