@ukic/web-components 3.0.0-alpha.5 → 3.0.0-alpha.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (629) hide show
  1. package/README.md +4 -4
  2. package/dist/cjs/core.cjs.js +1 -1
  3. package/dist/cjs/{helpers-529aaa3a.js → helpers-50fa27f6.js} +46 -29
  4. package/dist/cjs/helpers-50fa27f6.js.map +1 -0
  5. package/dist/cjs/ic-accordion-group.cjs.entry.js +1 -1
  6. package/dist/cjs/ic-accordion.cjs.entry.js +8 -1
  7. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ic-alert.cjs.entry.js +3 -10
  9. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ic-back-to-top.cjs.entry.js +1 -1
  11. package/dist/cjs/ic-badge.cjs.entry.js +2 -2
  12. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  13. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +1 -1
  14. package/dist/cjs/ic-breadcrumb.cjs.entry.js +1 -1
  15. package/dist/cjs/ic-button_3.cjs.entry.js +10 -7
  16. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ic-card-vertical.cjs.entry.js +26 -24
  18. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ic-checkbox-group.cjs.entry.js +5 -1
  20. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-checkbox.cjs.entry.js +5 -1
  22. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  23. package/dist/cjs/ic-chip.cjs.entry.js +9 -4
  24. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-data-row.cjs.entry.js +1 -1
  26. package/dist/cjs/ic-dialog.cjs.entry.js +1 -1
  27. package/dist/cjs/ic-divider.cjs.entry.js +3 -3
  28. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ic-empty-state.cjs.entry.js +2 -12
  30. package/dist/cjs/ic-empty-state.cjs.entry.js.map +1 -1
  31. package/dist/cjs/ic-footer-link-group.cjs.entry.js +4 -5
  32. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  33. package/dist/cjs/ic-footer-link.cjs.entry.js +4 -5
  34. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  35. package/dist/cjs/ic-footer.cjs.entry.js +24 -14
  36. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  37. package/dist/cjs/ic-hero.cjs.entry.js +7 -15
  38. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  39. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +3 -3
  40. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  41. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +39 -24
  42. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  43. package/dist/cjs/ic-input-label_2.cjs.entry.js +1 -1
  44. package/dist/cjs/ic-link.cjs.entry.js +9 -6
  45. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
  47. package/dist/cjs/ic-menu-item.cjs.entry.js +7 -1
  48. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  49. package/dist/cjs/ic-navigation-button.cjs.entry.js +6 -7
  50. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  51. package/dist/cjs/ic-navigation-group.cjs.entry.js +5 -6
  52. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ic-navigation-item.cjs.entry.js +4 -4
  54. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  55. package/dist/cjs/ic-navigation-menu.cjs.entry.js +1 -1
  56. package/dist/cjs/ic-page-header.cjs.entry.js +1 -1
  57. package/dist/cjs/ic-pagination-item.cjs.entry.js +5 -1
  58. package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -1
  59. package/dist/cjs/ic-pagination.cjs.entry.js +5 -1
  60. package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -1
  61. package/dist/cjs/ic-popover-menu.cjs.entry.js +1 -1
  62. package/dist/cjs/ic-radio-group.cjs.entry.js +9 -1
  63. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  64. package/dist/cjs/ic-radio-option.cjs.entry.js +5 -1
  65. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  66. package/dist/cjs/ic-search-bar.cjs.entry.js +37 -29
  67. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  68. package/dist/cjs/ic-select.cjs.entry.js +52 -34
  69. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ic-side-navigation.cjs.entry.js +5 -5
  71. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  72. package/dist/cjs/ic-status-tag.cjs.entry.js +1 -1
  73. package/dist/cjs/ic-step.cjs.entry.js +1 -1
  74. package/dist/cjs/ic-stepper.cjs.entry.js +1 -1
  75. package/dist/cjs/ic-switch.cjs.entry.js +6 -2
  76. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  77. package/dist/cjs/ic-tab-group.cjs.entry.js +1 -1
  78. package/dist/cjs/ic-tab-panel.cjs.entry.js +1 -1
  79. package/dist/cjs/ic-tab.cjs.entry.js +5 -2
  80. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  81. package/dist/cjs/ic-text-field.cjs.entry.js +26 -9
  82. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  83. package/dist/cjs/ic-theme.cjs.entry.js +20 -20
  84. package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
  85. package/dist/cjs/ic-toast.cjs.entry.js +1 -1
  86. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +3 -0
  87. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  88. package/dist/cjs/ic-toggle-button.cjs.entry.js +7 -1
  89. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  90. package/dist/cjs/ic-top-navigation.cjs.entry.js +10 -6
  91. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  92. package/dist/cjs/ic-typography.cjs.entry.js +1 -1
  93. package/dist/cjs/index-f982899d.js +4 -4
  94. package/dist/cjs/loader.cjs.js +1 -1
  95. package/dist/collection/ag-theme-icds.css +32 -31
  96. package/dist/collection/components/ic-accordion/ic-accordion.js +10 -1
  97. package/dist/collection/components/ic-accordion/ic-accordion.js.map +1 -1
  98. package/dist/collection/components/ic-accordion/test/basic/ic-accordion.spec.js +3 -0
  99. package/dist/collection/components/ic-accordion/test/basic/ic-accordion.spec.js.map +1 -1
  100. package/dist/collection/components/ic-alert/ic-alert.js +5 -12
  101. package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
  102. package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js +21 -3
  103. package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js.map +1 -1
  104. package/dist/collection/components/ic-badge/ic-badge.js +2 -2
  105. package/dist/collection/components/ic-badge/ic-badge.js.map +1 -1
  106. package/dist/collection/components/ic-button/ic-button.css +40 -0
  107. package/dist/collection/components/ic-button/ic-button.js +12 -9
  108. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  109. package/dist/collection/components/ic-button/test/basic/ic-button.spec.js +7 -7
  110. package/dist/collection/components/ic-button/test/basic/ic-button.spec.js.map +1 -1
  111. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js +33 -28
  112. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js.map +1 -1
  113. package/dist/collection/components/ic-card-vertical/test/basic/ic-card-vertical.spec.js +44 -3
  114. package/dist/collection/components/ic-card-vertical/test/basic/ic-card-vertical.spec.js.map +1 -1
  115. package/dist/collection/components/ic-checkbox/ic-checkbox.js +6 -0
  116. package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
  117. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +6 -0
  118. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  119. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js +3 -0
  120. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js.map +1 -1
  121. package/dist/collection/components/ic-chip/ic-chip.js +27 -2
  122. package/dist/collection/components/ic-chip/ic-chip.js.map +1 -1
  123. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js +3 -0
  124. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js.map +1 -1
  125. package/dist/collection/components/ic-divider/ic-divider.js +8 -8
  126. package/dist/collection/components/ic-divider/ic-divider.js.map +1 -1
  127. package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js +4 -4
  128. package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js.map +1 -1
  129. package/dist/collection/components/ic-empty-state/ic-empty-state.js +3 -13
  130. package/dist/collection/components/ic-empty-state/ic-empty-state.js.map +1 -1
  131. package/dist/collection/components/ic-footer/ic-footer.css +2 -2
  132. package/dist/collection/components/ic-footer/ic-footer.js +26 -16
  133. package/dist/collection/components/ic-footer/ic-footer.js.map +1 -1
  134. package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js +43 -2
  135. package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js.map +1 -1
  136. package/dist/collection/components/ic-footer-link/ic-footer-link.js +6 -7
  137. package/dist/collection/components/ic-footer-link/ic-footer-link.js.map +1 -1
  138. package/dist/collection/components/ic-footer-link/test/basic/ic-footer-link.spec.js +1 -1
  139. package/dist/collection/components/ic-footer-link/test/basic/ic-footer-link.spec.js.map +1 -1
  140. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js +6 -7
  141. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js.map +1 -1
  142. package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js +1 -1
  143. package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js.map +1 -1
  144. package/dist/collection/components/ic-hero/ic-hero.css +3 -3
  145. package/dist/collection/components/ic-hero/ic-hero.js +10 -18
  146. package/dist/collection/components/ic-hero/ic-hero.js.map +1 -1
  147. package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js +23 -5
  148. package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js.map +1 -1
  149. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +6 -6
  150. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js.map +1 -1
  151. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +16 -11
  152. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js.map +1 -1
  153. package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js +30 -3
  154. package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js.map +1 -1
  155. package/dist/collection/components/ic-link/ic-link.js +12 -9
  156. package/dist/collection/components/ic-link/ic-link.js.map +1 -1
  157. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js +5 -5
  158. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js.map +1 -1
  159. package/dist/collection/components/ic-menu/ic-menu.css +6 -0
  160. package/dist/collection/components/ic-menu/ic-menu.js +42 -15
  161. package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
  162. package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js +9 -9
  163. package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js.map +1 -1
  164. package/dist/collection/components/ic-menu-item/ic-menu-item.js +9 -0
  165. package/dist/collection/components/ic-menu-item/ic-menu-item.js.map +1 -1
  166. package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js +13 -0
  167. package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js.map +1 -1
  168. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +9 -10
  169. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -1
  170. package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js +2 -2
  171. package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js.map +1 -1
  172. package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +1 -1
  173. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +6 -7
  174. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
  175. package/dist/collection/components/ic-navigation-group/test/basic/ic-navigation-group.spec.js +3 -3
  176. package/dist/collection/components/ic-navigation-group/test/basic/ic-navigation-group.spec.js.map +1 -1
  177. package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +9 -9
  178. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +5 -5
  179. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
  180. package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js +3 -3
  181. package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js.map +1 -1
  182. package/dist/collection/components/ic-pagination/ic-pagination.js +6 -0
  183. package/dist/collection/components/ic-pagination/ic-pagination.js.map +1 -1
  184. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js +10 -0
  185. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js.map +1 -1
  186. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +6 -0
  187. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js.map +1 -1
  188. package/dist/collection/components/ic-pagination-item/test/basic/ic-pagination-item.spec.js +3 -0
  189. package/dist/collection/components/ic-pagination-item/test/basic/ic-pagination-item.spec.js.map +1 -1
  190. package/dist/collection/components/ic-radio-group/ic-radio-group.js +8 -0
  191. package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
  192. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js +6 -0
  193. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js.map +1 -1
  194. package/dist/collection/components/ic-radio-option/ic-radio-option.js +6 -0
  195. package/dist/collection/components/ic-radio-option/ic-radio-option.js.map +1 -1
  196. package/dist/collection/components/ic-search-bar/ic-search-bar.css +66 -4
  197. package/dist/collection/components/ic-search-bar/ic-search-bar.js +60 -29
  198. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  199. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js +63 -94
  200. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js.map +1 -1
  201. package/dist/collection/components/ic-select/ic-select.js +56 -36
  202. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  203. package/dist/collection/components/ic-select/test/basic/ic-select.spec.js +74 -0
  204. package/dist/collection/components/ic-select/test/basic/ic-select.spec.js.map +1 -1
  205. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +2 -2
  206. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +7 -7
  207. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  208. package/dist/collection/components/ic-side-navigation/ic-side-navigation.types.js.map +1 -1
  209. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js +3 -3
  210. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js.map +1 -1
  211. package/dist/collection/components/ic-switch/ic-switch.js +6 -0
  212. package/dist/collection/components/ic-switch/ic-switch.js.map +1 -1
  213. package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js +3 -0
  214. package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js.map +1 -1
  215. package/dist/collection/components/ic-tab/ic-tab.js +6 -0
  216. package/dist/collection/components/ic-tab/ic-tab.js.map +1 -1
  217. package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js +16 -0
  218. package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js.map +1 -1
  219. package/dist/collection/components/ic-text-field/ic-text-field.js +30 -11
  220. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  221. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js +26 -12
  222. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js.map +1 -1
  223. package/dist/collection/components/ic-theme/ic-theme.js +31 -31
  224. package/dist/collection/components/ic-theme/ic-theme.js.map +1 -1
  225. package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js +7 -7
  226. package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js.map +1 -1
  227. package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js +11 -11
  228. package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js.map +1 -1
  229. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +9 -0
  230. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js.map +1 -1
  231. package/dist/collection/components/ic-toggle-button/test/basic/ic-toggle-button.spec.js +10 -0
  232. package/dist/collection/components/ic-toggle-button/test/basic/ic-toggle-button.spec.js.map +1 -1
  233. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +3 -0
  234. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js.map +1 -1
  235. package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js +104 -0
  236. package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js.map +1 -1
  237. package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +6 -2
  238. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +12 -8
  239. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
  240. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js +3 -3
  241. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js.map +1 -1
  242. package/dist/collection/testspec.setup.js +14 -0
  243. package/dist/collection/testspec.setup.js.map +1 -1
  244. package/dist/collection/utils/helpers.js +35 -20
  245. package/dist/collection/utils/helpers.js.map +1 -1
  246. package/dist/collection/utils/types.js +6 -6
  247. package/dist/collection/utils/types.js.map +1 -1
  248. package/dist/components/helpers.js +42 -26
  249. package/dist/components/helpers.js.map +1 -1
  250. package/dist/components/ic-accordion.js +9 -1
  251. package/dist/components/ic-accordion.js.map +1 -1
  252. package/dist/components/ic-alert.js +4 -11
  253. package/dist/components/ic-alert.js.map +1 -1
  254. package/dist/components/ic-badge.js +2 -2
  255. package/dist/components/ic-badge.js.map +1 -1
  256. package/dist/components/ic-button2.js +11 -8
  257. package/dist/components/ic-button2.js.map +1 -1
  258. package/dist/components/ic-card-vertical.js +30 -26
  259. package/dist/components/ic-card-vertical.js.map +1 -1
  260. package/dist/components/ic-checkbox-group.js +5 -0
  261. package/dist/components/ic-checkbox-group.js.map +1 -1
  262. package/dist/components/ic-checkbox.js +5 -0
  263. package/dist/components/ic-checkbox.js.map +1 -1
  264. package/dist/components/ic-chip.js +11 -4
  265. package/dist/components/ic-chip.js.map +1 -1
  266. package/dist/components/ic-divider2.js +4 -4
  267. package/dist/components/ic-divider2.js.map +1 -1
  268. package/dist/components/ic-empty-state.js +3 -13
  269. package/dist/components/ic-empty-state.js.map +1 -1
  270. package/dist/components/ic-footer-link-group.js +5 -6
  271. package/dist/components/ic-footer-link-group.js.map +1 -1
  272. package/dist/components/ic-footer-link.js +5 -6
  273. package/dist/components/ic-footer-link.js.map +1 -1
  274. package/dist/components/ic-footer.js +25 -15
  275. package/dist/components/ic-footer.js.map +1 -1
  276. package/dist/components/ic-hero.js +9 -17
  277. package/dist/components/ic-hero.js.map +1 -1
  278. package/dist/components/ic-horizontal-scroll2.js +3 -3
  279. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  280. package/dist/components/ic-input-component-container2.js +15 -11
  281. package/dist/components/ic-input-component-container2.js.map +1 -1
  282. package/dist/components/ic-link2.js +10 -7
  283. package/dist/components/ic-link2.js.map +1 -1
  284. package/dist/components/ic-menu-item2.js +9 -1
  285. package/dist/components/ic-menu-item2.js.map +1 -1
  286. package/dist/components/ic-menu2.js +28 -15
  287. package/dist/components/ic-menu2.js.map +1 -1
  288. package/dist/components/ic-navigation-button.js +7 -8
  289. package/dist/components/ic-navigation-button.js.map +1 -1
  290. package/dist/components/ic-navigation-group.js +6 -7
  291. package/dist/components/ic-navigation-group.js.map +1 -1
  292. package/dist/components/ic-navigation-item.js +5 -5
  293. package/dist/components/ic-navigation-item.js.map +1 -1
  294. package/dist/components/ic-pagination-item2.js +6 -1
  295. package/dist/components/ic-pagination-item2.js.map +1 -1
  296. package/dist/components/ic-pagination.js +5 -0
  297. package/dist/components/ic-pagination.js.map +1 -1
  298. package/dist/components/ic-radio-group.js +8 -0
  299. package/dist/components/ic-radio-group.js.map +1 -1
  300. package/dist/components/ic-radio-option.js +6 -1
  301. package/dist/components/ic-radio-option.js.map +1 -1
  302. package/dist/components/ic-search-bar.js +52 -54
  303. package/dist/components/ic-search-bar.js.map +1 -1
  304. package/dist/components/ic-select.js +54 -35
  305. package/dist/components/ic-select.js.map +1 -1
  306. package/dist/components/ic-side-navigation.js +6 -6
  307. package/dist/components/ic-side-navigation.js.map +1 -1
  308. package/dist/components/ic-stepper.js +1 -1
  309. package/dist/components/ic-switch.js +8 -3
  310. package/dist/components/ic-switch.js.map +1 -1
  311. package/dist/components/ic-tab.js +5 -2
  312. package/dist/components/ic-tab.js.map +1 -1
  313. package/dist/components/ic-text-field.js +371 -1
  314. package/dist/components/ic-text-field.js.map +1 -1
  315. package/dist/components/ic-theme.js +22 -22
  316. package/dist/components/ic-theme.js.map +1 -1
  317. package/dist/components/ic-toggle-button-group.js +3 -0
  318. package/dist/components/ic-toggle-button-group.js.map +1 -1
  319. package/dist/components/ic-toggle-button.js +9 -1
  320. package/dist/components/ic-toggle-button.js.map +1 -1
  321. package/dist/components/ic-top-navigation.js +11 -7
  322. package/dist/components/ic-top-navigation.js.map +1 -1
  323. package/dist/core/ag-theme-icds.css +32 -31
  324. package/dist/core/core.css +78 -46
  325. package/dist/core/core.esm.js +1 -1
  326. package/dist/core/core.esm.js.map +1 -1
  327. package/dist/core/p-050e3e36.entry.js +2 -0
  328. package/dist/core/p-050e3e36.entry.js.map +1 -0
  329. package/dist/core/{p-f580f0ce.entry.js → p-08a82b71.entry.js} +2 -2
  330. package/dist/core/p-08a82b71.entry.js.map +1 -0
  331. package/dist/core/p-12bd8ade.entry.js +2 -0
  332. package/dist/core/p-12bd8ade.entry.js.map +1 -0
  333. package/dist/core/{p-d3263ed9.entry.js → p-13637d3f.entry.js} +2 -2
  334. package/dist/core/p-13637d3f.entry.js.map +1 -0
  335. package/dist/core/{p-ba37e169.entry.js → p-1425c78b.entry.js} +2 -2
  336. package/dist/core/p-1425c78b.entry.js.map +1 -0
  337. package/dist/core/{p-48463a79.entry.js → p-16df8bcf.entry.js} +2 -2
  338. package/dist/core/p-16df8bcf.entry.js.map +1 -0
  339. package/dist/core/{p-e107f362.entry.js → p-1b1f7523.entry.js} +2 -2
  340. package/dist/core/{p-12f72d83.entry.js → p-2179e015.entry.js} +2 -2
  341. package/dist/core/p-273f9b03.entry.js +2 -0
  342. package/dist/core/p-273f9b03.entry.js.map +1 -0
  343. package/dist/core/{p-b06939fa.entry.js → p-27933dfe.entry.js} +2 -2
  344. package/dist/core/{p-98816f52.entry.js → p-2aca1bac.entry.js} +2 -2
  345. package/dist/core/p-30f91e2e.entry.js +2 -0
  346. package/dist/core/p-30f91e2e.entry.js.map +1 -0
  347. package/dist/core/p-3361ac8f.entry.js +2 -0
  348. package/dist/core/p-3361ac8f.entry.js.map +1 -0
  349. package/dist/core/{p-a91b0212.entry.js → p-34e89ebf.entry.js} +2 -2
  350. package/dist/core/p-353893b7.entry.js +2 -0
  351. package/dist/core/p-353893b7.entry.js.map +1 -0
  352. package/dist/core/p-3645c4e6.entry.js +2 -0
  353. package/dist/core/p-3645c4e6.entry.js.map +1 -0
  354. package/dist/core/p-369ff74c.entry.js +2 -0
  355. package/dist/core/p-369ff74c.entry.js.map +1 -0
  356. package/dist/core/p-46dd7413.entry.js +2 -0
  357. package/dist/core/p-46dd7413.entry.js.map +1 -0
  358. package/dist/core/{p-7cba80ac.entry.js → p-4e57c7ba.entry.js} +2 -2
  359. package/dist/core/p-4e57c7ba.entry.js.map +1 -0
  360. package/dist/core/p-51990f23.entry.js +2 -0
  361. package/dist/core/p-51990f23.entry.js.map +1 -0
  362. package/dist/core/{p-15fd6539.entry.js → p-5347f687.entry.js} +2 -2
  363. package/dist/core/{p-6bb3ef22.entry.js → p-538f1bb9.entry.js} +2 -2
  364. package/dist/core/p-538f1bb9.entry.js.map +1 -0
  365. package/dist/core/{p-60d458e5.entry.js → p-5479be2b.entry.js} +2 -2
  366. package/dist/core/p-5479be2b.entry.js.map +1 -0
  367. package/dist/core/{p-d987bdc0.entry.js → p-5801598f.entry.js} +2 -2
  368. package/dist/core/p-5801598f.entry.js.map +1 -0
  369. package/dist/core/{p-c7e01fcd.entry.js → p-5b118dec.entry.js} +2 -2
  370. package/dist/core/p-5b118dec.entry.js.map +1 -0
  371. package/dist/core/p-5d89525e.entry.js +2 -0
  372. package/dist/core/p-5d89525e.entry.js.map +1 -0
  373. package/dist/core/{p-81f80487.entry.js → p-5dcafe90.entry.js} +2 -2
  374. package/dist/core/p-5dcafe90.entry.js.map +1 -0
  375. package/dist/core/{p-c4f32f77.entry.js → p-5e694b17.entry.js} +2 -2
  376. package/dist/core/{p-c4f32f77.entry.js.map → p-5e694b17.entry.js.map} +1 -1
  377. package/dist/core/{p-2223c7ee.entry.js → p-6331782f.entry.js} +2 -2
  378. package/dist/core/{p-c5d3c71e.entry.js → p-6a5d58bc.entry.js} +2 -2
  379. package/dist/core/p-6d0c5a77.entry.js +2 -0
  380. package/dist/core/p-6d0c5a77.entry.js.map +1 -0
  381. package/dist/core/p-6f16a69e.entry.js +2 -0
  382. package/dist/core/p-6f16a69e.entry.js.map +1 -0
  383. package/dist/core/{p-85d33e38.entry.js → p-7a16046a.entry.js} +2 -2
  384. package/dist/core/p-7a16046a.entry.js.map +1 -0
  385. package/dist/core/p-7c0ff8cf.entry.js +2 -0
  386. package/dist/core/p-7c0ff8cf.entry.js.map +1 -0
  387. package/dist/core/p-7c39afb5.entry.js +2 -0
  388. package/dist/core/p-7c39afb5.entry.js.map +1 -0
  389. package/dist/core/{p-f069f50e.entry.js → p-7e546e88.entry.js} +2 -2
  390. package/dist/core/{p-3a4000d8.entry.js → p-8dda6121.entry.js} +2 -2
  391. package/dist/core/{p-c43d676b.entry.js → p-9505b0f1.entry.js} +2 -2
  392. package/dist/core/{p-685d6aa9.entry.js → p-a25d535a.entry.js} +2 -2
  393. package/dist/core/p-a519e9a6.entry.js +2 -0
  394. package/dist/core/p-a519e9a6.entry.js.map +1 -0
  395. package/dist/core/p-b052e67a.entry.js +2 -0
  396. package/dist/core/p-b052e67a.entry.js.map +1 -0
  397. package/dist/core/p-bafcbecc.entry.js +2 -0
  398. package/dist/core/p-bafcbecc.entry.js.map +1 -0
  399. package/dist/core/{p-c82240b7.entry.js → p-bdbce1a0.entry.js} +2 -2
  400. package/dist/core/p-c68d98f8.entry.js +2 -0
  401. package/dist/core/p-c68d98f8.entry.js.map +1 -0
  402. package/dist/core/{p-c563d479.entry.js → p-cae08ac2.entry.js} +2 -2
  403. package/dist/core/p-cae08ac2.entry.js.map +1 -0
  404. package/dist/core/{p-cdbc3414.entry.js → p-d6ce4473.entry.js} +2 -2
  405. package/dist/core/{p-78f46cf8.entry.js → p-dcdfe5f9.entry.js} +2 -2
  406. package/dist/core/{p-4fea4610.entry.js → p-e9c078fa.entry.js} +2 -2
  407. package/dist/core/p-e9c078fa.entry.js.map +1 -0
  408. package/dist/core/p-eafa4df2.js +2 -0
  409. package/dist/core/p-eafa4df2.js.map +1 -0
  410. package/dist/core/p-eb132c44.entry.js +2 -0
  411. package/dist/core/p-eb132c44.entry.js.map +1 -0
  412. package/dist/core/p-ebf2b874.entry.js +2 -0
  413. package/dist/core/p-ebf2b874.entry.js.map +1 -0
  414. package/dist/core/{p-97e8246c.entry.js → p-eec110a7.entry.js} +2 -2
  415. package/dist/core/{p-03dc6b93.entry.js → p-f1b7e4f4.entry.js} +2 -2
  416. package/dist/core/{p-175baf98.entry.js → p-f8890135.entry.js} +2 -2
  417. package/dist/esm/core.js +1 -1
  418. package/dist/esm/{helpers-7bf8c67f.js → helpers-8565b5c5.js} +43 -27
  419. package/dist/esm/helpers-8565b5c5.js.map +1 -0
  420. package/dist/esm/ic-accordion-group.entry.js +1 -1
  421. package/dist/esm/ic-accordion.entry.js +8 -1
  422. package/dist/esm/ic-accordion.entry.js.map +1 -1
  423. package/dist/esm/ic-alert.entry.js +4 -11
  424. package/dist/esm/ic-alert.entry.js.map +1 -1
  425. package/dist/esm/ic-back-to-top.entry.js +1 -1
  426. package/dist/esm/ic-badge.entry.js +2 -2
  427. package/dist/esm/ic-badge.entry.js.map +1 -1
  428. package/dist/esm/ic-breadcrumb-group.entry.js +1 -1
  429. package/dist/esm/ic-breadcrumb.entry.js +1 -1
  430. package/dist/esm/ic-button_3.entry.js +10 -7
  431. package/dist/esm/ic-button_3.entry.js.map +1 -1
  432. package/dist/esm/ic-card-vertical.entry.js +27 -25
  433. package/dist/esm/ic-card-vertical.entry.js.map +1 -1
  434. package/dist/esm/ic-checkbox-group.entry.js +5 -1
  435. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  436. package/dist/esm/ic-checkbox.entry.js +5 -1
  437. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  438. package/dist/esm/ic-chip.entry.js +9 -4
  439. package/dist/esm/ic-chip.entry.js.map +1 -1
  440. package/dist/esm/ic-data-row.entry.js +1 -1
  441. package/dist/esm/ic-dialog.entry.js +1 -1
  442. package/dist/esm/ic-divider.entry.js +3 -3
  443. package/dist/esm/ic-divider.entry.js.map +1 -1
  444. package/dist/esm/ic-empty-state.entry.js +3 -13
  445. package/dist/esm/ic-empty-state.entry.js.map +1 -1
  446. package/dist/esm/ic-footer-link-group.entry.js +4 -5
  447. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  448. package/dist/esm/ic-footer-link.entry.js +4 -5
  449. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  450. package/dist/esm/ic-footer.entry.js +24 -14
  451. package/dist/esm/ic-footer.entry.js.map +1 -1
  452. package/dist/esm/ic-hero.entry.js +8 -16
  453. package/dist/esm/ic-hero.entry.js.map +1 -1
  454. package/dist/esm/ic-horizontal-scroll.entry.js +3 -3
  455. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  456. package/dist/esm/ic-input-component-container_3.entry.js +40 -25
  457. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  458. package/dist/esm/ic-input-label_2.entry.js +1 -1
  459. package/dist/esm/ic-link.entry.js +9 -6
  460. package/dist/esm/ic-link.entry.js.map +1 -1
  461. package/dist/esm/ic-menu-group.entry.js +1 -1
  462. package/dist/esm/ic-menu-item.entry.js +7 -1
  463. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  464. package/dist/esm/ic-navigation-button.entry.js +6 -7
  465. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  466. package/dist/esm/ic-navigation-group.entry.js +5 -6
  467. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  468. package/dist/esm/ic-navigation-item.entry.js +4 -4
  469. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  470. package/dist/esm/ic-navigation-menu.entry.js +1 -1
  471. package/dist/esm/ic-page-header.entry.js +1 -1
  472. package/dist/esm/ic-pagination-item.entry.js +5 -1
  473. package/dist/esm/ic-pagination-item.entry.js.map +1 -1
  474. package/dist/esm/ic-pagination.entry.js +5 -1
  475. package/dist/esm/ic-pagination.entry.js.map +1 -1
  476. package/dist/esm/ic-popover-menu.entry.js +1 -1
  477. package/dist/esm/ic-radio-group.entry.js +9 -1
  478. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  479. package/dist/esm/ic-radio-option.entry.js +5 -1
  480. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  481. package/dist/esm/ic-search-bar.entry.js +37 -29
  482. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  483. package/dist/esm/ic-select.entry.js +52 -34
  484. package/dist/esm/ic-select.entry.js.map +1 -1
  485. package/dist/esm/ic-side-navigation.entry.js +5 -5
  486. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  487. package/dist/esm/ic-status-tag.entry.js +1 -1
  488. package/dist/esm/ic-step.entry.js +1 -1
  489. package/dist/esm/ic-stepper.entry.js +1 -1
  490. package/dist/esm/ic-switch.entry.js +6 -2
  491. package/dist/esm/ic-switch.entry.js.map +1 -1
  492. package/dist/esm/ic-tab-group.entry.js +1 -1
  493. package/dist/esm/ic-tab-panel.entry.js +1 -1
  494. package/dist/esm/ic-tab.entry.js +5 -2
  495. package/dist/esm/ic-tab.entry.js.map +1 -1
  496. package/dist/esm/ic-text-field.entry.js +26 -9
  497. package/dist/esm/ic-text-field.entry.js.map +1 -1
  498. package/dist/esm/ic-theme.entry.js +20 -20
  499. package/dist/esm/ic-theme.entry.js.map +1 -1
  500. package/dist/esm/ic-toast.entry.js +1 -1
  501. package/dist/esm/ic-toggle-button-group.entry.js +3 -0
  502. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  503. package/dist/esm/ic-toggle-button.entry.js +7 -1
  504. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  505. package/dist/esm/ic-top-navigation.entry.js +10 -6
  506. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  507. package/dist/esm/ic-typography.entry.js +1 -1
  508. package/dist/esm/index-d1d2c456.js +4 -4
  509. package/dist/esm/loader.js +1 -1
  510. package/dist/types/components/ic-accordion/ic-accordion.d.ts +2 -0
  511. package/dist/types/components/ic-alert/ic-alert.d.ts +0 -1
  512. package/dist/types/components/ic-button/ic-button.d.ts +2 -2
  513. package/dist/types/components/ic-card-vertical/ic-card-vertical.d.ts +3 -3
  514. package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +1 -0
  515. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +1 -0
  516. package/dist/types/components/ic-chip/ic-chip.d.ts +5 -0
  517. package/dist/types/components/ic-divider/ic-divider.d.ts +4 -4
  518. package/dist/types/components/ic-empty-state/ic-empty-state.d.ts +0 -1
  519. package/dist/types/components/ic-footer/ic-footer.d.ts +4 -3
  520. package/dist/types/components/ic-footer-link/ic-footer-link.d.ts +3 -3
  521. package/dist/types/components/ic-footer-link-group/ic-footer-link-group.d.ts +3 -3
  522. package/dist/types/components/ic-hero/ic-hero.d.ts +3 -4
  523. package/dist/types/components/ic-horizontal-scroll/ic-horizontal-scroll.d.ts +2 -2
  524. package/dist/types/components/ic-input-component-container/ic-input-component-container.d.ts +2 -1
  525. package/dist/types/components/ic-link/ic-link.d.ts +2 -2
  526. package/dist/types/components/ic-menu/ic-menu.d.ts +7 -2
  527. package/dist/types/components/ic-menu-item/ic-menu-item.d.ts +1 -0
  528. package/dist/types/components/ic-navigation-button/ic-navigation-button.d.ts +3 -3
  529. package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +3 -3
  530. package/dist/types/components/ic-navigation-item/ic-navigation-item.d.ts +3 -3
  531. package/dist/types/components/ic-pagination/ic-pagination.d.ts +1 -0
  532. package/dist/types/components/ic-pagination-item/ic-pagination-item.d.ts +1 -0
  533. package/dist/types/components/ic-radio-option/ic-radio-option.d.ts +1 -0
  534. package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +10 -2
  535. package/dist/types/components/ic-select/ic-select.d.ts +6 -4
  536. package/dist/types/components/ic-side-navigation/ic-side-navigation.d.ts +3 -3
  537. package/dist/types/components/ic-side-navigation/ic-side-navigation.types.d.ts +2 -2
  538. package/dist/types/components/ic-switch/ic-switch.d.ts +1 -0
  539. package/dist/types/components/ic-tab/ic-tab.d.ts +1 -0
  540. package/dist/types/components/ic-text-field/ic-text-field.d.ts +5 -1
  541. package/dist/types/components/ic-theme/ic-theme.d.ts +8 -8
  542. package/dist/types/components/ic-toggle-button/ic-toggle-button.d.ts +1 -0
  543. package/dist/types/components/ic-top-navigation/ic-top-navigation.d.ts +3 -3
  544. package/dist/types/components.d.ts +41 -23
  545. package/dist/types/testspec.setup.d.ts +9 -0
  546. package/dist/types/utils/helpers.d.ts +14 -8
  547. package/dist/types/utils/types.d.ts +5 -5
  548. package/hydrate/index.js +401 -266
  549. package/package.json +4 -9
  550. package/vscode-data.json +11 -7
  551. package/dist/cjs/helpers-529aaa3a.js.map +0 -1
  552. package/dist/components/ic-text-field2.js +0 -357
  553. package/dist/components/ic-text-field2.js.map +0 -1
  554. package/dist/core/p-04339c98.entry.js +0 -2
  555. package/dist/core/p-04339c98.entry.js.map +0 -1
  556. package/dist/core/p-0aec7fab.entry.js +0 -2
  557. package/dist/core/p-0aec7fab.entry.js.map +0 -1
  558. package/dist/core/p-0cef50b7.entry.js +0 -2
  559. package/dist/core/p-0cef50b7.entry.js.map +0 -1
  560. package/dist/core/p-274b1ed7.entry.js +0 -2
  561. package/dist/core/p-274b1ed7.entry.js.map +0 -1
  562. package/dist/core/p-2a300ec7.entry.js +0 -2
  563. package/dist/core/p-2a300ec7.entry.js.map +0 -1
  564. package/dist/core/p-303307bb.entry.js +0 -2
  565. package/dist/core/p-303307bb.entry.js.map +0 -1
  566. package/dist/core/p-3317f083.entry.js +0 -2
  567. package/dist/core/p-3317f083.entry.js.map +0 -1
  568. package/dist/core/p-35bd9d76.entry.js +0 -2
  569. package/dist/core/p-35bd9d76.entry.js.map +0 -1
  570. package/dist/core/p-36f4e0bd.entry.js +0 -2
  571. package/dist/core/p-36f4e0bd.entry.js.map +0 -1
  572. package/dist/core/p-48463a79.entry.js.map +0 -1
  573. package/dist/core/p-4fea4610.entry.js.map +0 -1
  574. package/dist/core/p-60d458e5.entry.js.map +0 -1
  575. package/dist/core/p-6bb3ef22.entry.js.map +0 -1
  576. package/dist/core/p-6cb1f1da.entry.js +0 -2
  577. package/dist/core/p-6cb1f1da.entry.js.map +0 -1
  578. package/dist/core/p-79c132e3.entry.js +0 -2
  579. package/dist/core/p-79c132e3.entry.js.map +0 -1
  580. package/dist/core/p-7cba80ac.entry.js.map +0 -1
  581. package/dist/core/p-81f80487.entry.js.map +0 -1
  582. package/dist/core/p-85be0268.entry.js +0 -2
  583. package/dist/core/p-85be0268.entry.js.map +0 -1
  584. package/dist/core/p-85d33e38.entry.js.map +0 -1
  585. package/dist/core/p-88810080.entry.js +0 -2
  586. package/dist/core/p-88810080.entry.js.map +0 -1
  587. package/dist/core/p-a01841e2.entry.js +0 -2
  588. package/dist/core/p-a01841e2.entry.js.map +0 -1
  589. package/dist/core/p-a6be333f.entry.js +0 -2
  590. package/dist/core/p-a6be333f.entry.js.map +0 -1
  591. package/dist/core/p-ae42affc.entry.js +0 -2
  592. package/dist/core/p-ae42affc.entry.js.map +0 -1
  593. package/dist/core/p-ba37e169.entry.js.map +0 -1
  594. package/dist/core/p-ba55afea.entry.js +0 -2
  595. package/dist/core/p-ba55afea.entry.js.map +0 -1
  596. package/dist/core/p-bbd2febe.entry.js +0 -2
  597. package/dist/core/p-bbd2febe.entry.js.map +0 -1
  598. package/dist/core/p-c0d5043e.entry.js +0 -2
  599. package/dist/core/p-c0d5043e.entry.js.map +0 -1
  600. package/dist/core/p-c563d479.entry.js.map +0 -1
  601. package/dist/core/p-c7e01fcd.entry.js.map +0 -1
  602. package/dist/core/p-d3263ed9.entry.js.map +0 -1
  603. package/dist/core/p-d43e0f4b.entry.js +0 -2
  604. package/dist/core/p-d43e0f4b.entry.js.map +0 -1
  605. package/dist/core/p-d987bdc0.entry.js.map +0 -1
  606. package/dist/core/p-ec097c1f.entry.js +0 -2
  607. package/dist/core/p-ec097c1f.entry.js.map +0 -1
  608. package/dist/core/p-f580f0ce.entry.js.map +0 -1
  609. package/dist/core/p-f99576e0.js +0 -2
  610. package/dist/core/p-f99576e0.js.map +0 -1
  611. package/dist/esm/helpers-7bf8c67f.js.map +0 -1
  612. /package/dist/core/{p-e107f362.entry.js.map → p-1b1f7523.entry.js.map} +0 -0
  613. /package/dist/core/{p-12f72d83.entry.js.map → p-2179e015.entry.js.map} +0 -0
  614. /package/dist/core/{p-b06939fa.entry.js.map → p-27933dfe.entry.js.map} +0 -0
  615. /package/dist/core/{p-98816f52.entry.js.map → p-2aca1bac.entry.js.map} +0 -0
  616. /package/dist/core/{p-a91b0212.entry.js.map → p-34e89ebf.entry.js.map} +0 -0
  617. /package/dist/core/{p-15fd6539.entry.js.map → p-5347f687.entry.js.map} +0 -0
  618. /package/dist/core/{p-2223c7ee.entry.js.map → p-6331782f.entry.js.map} +0 -0
  619. /package/dist/core/{p-c5d3c71e.entry.js.map → p-6a5d58bc.entry.js.map} +0 -0
  620. /package/dist/core/{p-f069f50e.entry.js.map → p-7e546e88.entry.js.map} +0 -0
  621. /package/dist/core/{p-3a4000d8.entry.js.map → p-8dda6121.entry.js.map} +0 -0
  622. /package/dist/core/{p-c43d676b.entry.js.map → p-9505b0f1.entry.js.map} +0 -0
  623. /package/dist/core/{p-685d6aa9.entry.js.map → p-a25d535a.entry.js.map} +0 -0
  624. /package/dist/core/{p-c82240b7.entry.js.map → p-bdbce1a0.entry.js.map} +0 -0
  625. /package/dist/core/{p-cdbc3414.entry.js.map → p-d6ce4473.entry.js.map} +0 -0
  626. /package/dist/core/{p-78f46cf8.entry.js.map → p-dcdfe5f9.entry.js.map} +0 -0
  627. /package/dist/core/{p-97e8246c.entry.js.map → p-eec110a7.entry.js.map} +0 -0
  628. /package/dist/core/{p-03dc6b93.entry.js.map → p-f1b7e4f4.entry.js.map} +0 -0
  629. /package/dist/core/{p-175baf98.entry.js.map → p-f8890135.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"ic-checkbox-group.js","sourceRoot":"","sources":["../../../src/components/ic-checkbox-group/ic-checkbox-group.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,IAAI,EACJ,CAAC,EACD,IAAI,EACJ,MAAM,EACN,OAAO,EACP,KAAK,EAEL,KAAK,GACN,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,gCAAgC,EAChC,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAa7B,6DAA6D;AAC7D,MAAM,OAAO,aAAa;;QAChB,qBAAgB,GAAW,aAAa,CAAC;wBAMrB,KAAK;0BAKJ,EAAE;yBAKF,KAAK;;;wBAiCN,KAAK;oBAKR,QAAQ;qBAKH,SAAS;gCAagB,EAAE;8BAKxB,EAAE;;IA/CnC,gBAAgB,CACd,QAAgB,EAChB,QAAgB,EAChB,QAA0B;QAE1B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CACjE,CAAC,QAA+B,EAAE,EAAE;YAClC,IAAI,QAAQ,KAAK,OAAO;gBAAE,QAAQ,CAAC,UAAU,GAAG,QAAQ,CAAC;iBACpD,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACpC,oEAAoE;gBACpE,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC;YAC3B,CAAC;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IAiBD,iBAAiB,CAAC,QAAqB;QACrC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CACjE,CAAC,QAA+B,EAAE,EAAE;YAClC,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC;QAC5B,CAAC,CACF,CAAC;IACJ,CAAC;IAkBD,YAAY,CAAC,EAAe;QAC1B,gEAAgE;QAChE,0EAA0E;QAC1E,IAAK,EAAE,CAAC,MAAsB,CAAC,OAAO,KAAK,eAAe,EAAE,CAAC;YAC3D,EAAE,CAAC,wBAAwB,EAAE,CAAC;QAChC,CAAC;IACH,CAAC;IAED,iBAAiB;QACf,mBAAmB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5C,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,gBAAgB;QACd,gCAAgC,CAC9B;YACE,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE;YACvC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE;SACtC,EACD,gBAAgB,CACjB,CAAC;IACJ,CAAC;IAGD,aAAa,CAAC,EAAE,MAAM,EAAe;QACnC,MAAM,cAAc,GAAG,KAAK,CAAC,IAAI,CAC/B,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,aAAa,CAAC,CACxC,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YACjB,KAAK,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC;YAC/C,cAAc,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;;gBAAC,OAAA,CAAC;oBAC3C,QAAQ,EAAE,GAAG;oBACb,cAAc,EAAE,MAAA,GAAG,CAAC,aAAa,CAAC,eAAe,CAAC,0CAAE,KAAK;iBAC1D,CAAC,CAAA;aAAA,CAAC;YACH,cAAc,EAAE,MAA+B;SAChD,CAAC,CAAC;IACL,CAAC;IAED,MAAM;QACJ,MAAM,EACJ,QAAQ,EACR,UAAU,EACV,SAAS,EACT,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,gBAAgB,EAChB,cAAc,GACf,GAAG,IAAI,CAAC;QAET,MAAM,WAAW,GAAG,uBAAuB,CACzC,IAAI,EACJ,UAAU,KAAK,EAAE,EACjB,gBAAgB,KAAK,EAAE,CACxB,CAAC;QAEF,OAAO,CACL,EAAC,IAAI,IACH,KAAK,EAAE;gBACL,CAAC,qBAAqB,IAAI,EAAE,CAAC,EAAE,IAAI;gBACnC,CAAC,4BAA4B,CAAC,EAAE,QAAQ;gBACxC,CAAC,YAAY,KAAK,EAAE,CAAC,EAAE,KAAK,KAAK,SAAS;aAC3C;YAEA,CAAC,gBAAgB,KAAK,OAAO,IAAI,QAAQ,IAAI,SAAS,CAAC,IAAI,CAC1D,YACE,EAAE,EAAC,sBAAsB,EACzB,KAAK,EAAC,yBAAyB,iBACnB,MAAM;gBAEjB,KAAK;;gBAAG,gBAAgB,KAAK,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI;gBAAE,GAAG;gBAClE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CACxB,CACR;YACD,gBACE,EAAE,EAAE,IAAI,qBACS,GACf,gBAAgB,KAAK,OAAO,IAAI,QAAQ,IAAI,SAAS;oBACnD,CAAC,CAAC,sBAAsB;oBACxB,CAAC,CAAC,EACN,IAAI,WAAW,EAAE,CAAC,IAAI,EAAE,EACxB,QAAQ,EAAE,QAAQ;gBAEjB,CAAC,SAAS,IAAI,CACb;oBACE,sBACE,KAAK,EAAE,EAAE,CAAC,GAAG,gBAAgB,EAAE,CAAC,EAAE,IAAI,EAAE,EACxC,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,KAAK,GACF,CACX,CACV;gBACD,WAAK,KAAK,EAAC,sBAAsB;oBAC/B,eAAa,CACT,CACG;YACV,mBAAmB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,IAAI,CAClD,2BACE,GAAG,EAAE,IAAI,EACT,YAAY,EAAC,QAAQ,EACrB,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,cAAc,GACF,CACxB,CACI,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import {\n Component,\n Host,\n h,\n Prop,\n Listen,\n Element,\n Event,\n EventEmitter,\n Watch,\n} from \"@stencil/core\";\nimport {\n getInputDescribedByText,\n hasValidationStatus,\n onComponentRequiredPropUndefined,\n removeDisabledFalse,\n} from \"../../utils/helpers\";\nimport {\n IcInformationStatusOrEmpty,\n IcSizes,\n IcThemeMode,\n} from \"../../utils/types\";\nimport { IcChangeEventDetail } from \"./ic-checkbox-group.types\";\n\n@Component({\n tag: \"ic-checkbox-group\",\n styleUrl: \"ic-checkbox-group.css\",\n shadow: true,\n})\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport class CheckboxGroup {\n private checkboxSelector: string = \"ic-checkbox\";\n @Element() el: HTMLIcCheckboxGroupElement;\n\n /**\n * If `true`, the checkbox group will be set to the disabled state.\n */\n @Prop() disabled: boolean = false;\n\n /**\n * The helper text that will be displayed for additional field guidance.\n */\n @Prop() helperText: string = \"\";\n\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n @Prop() hideLabel: boolean = false;\n\n /**\n * The label for the checkbox group to be displayed.\n */\n @Prop() label!: string;\n\n /**\n * The name for the checkbox group to differentiate from other groups.\n */\n @Prop() name!: string;\n\n @Watch(\"label\")\n @Watch(\"name\")\n labelNameHandler(\n newValue: string,\n oldValue: string,\n propName: \"label\" | \"name\"\n ): void {\n Array.from(this.el.querySelectorAll(this.checkboxSelector)).forEach(\n (checkbox: HTMLIcCheckboxElement) => {\n if (propName === \"label\") checkbox.groupLabel = newValue;\n else if (checkbox.name === oldValue) {\n // If the checkbox name has been set by the parent, then override it\n checkbox.name = newValue;\n }\n }\n );\n }\n\n /**\n * If `true`, the checkbox group will require a value.\n */\n @Prop() required: boolean = false;\n\n /**\n * The size of the checkboxes to be displayed. This does not affect the font size of the label.\n */\n @Prop() size?: IcSizes = \"medium\";\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(newValue: IcThemeMode): void {\n Array.from(this.el.querySelectorAll(this.checkboxSelector)).forEach(\n (checkbox: HTMLIcCheckboxElement) => {\n checkbox.theme = newValue;\n }\n );\n }\n\n /**\n * The validation status - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationStatus: IcInformationStatusOrEmpty = \"\";\n\n /**\n * The validation text - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationText: string = \"\";\n\n /**\n * Emitted when a checkbox is checked.\n */\n @Event() icChange: EventEmitter<IcChangeEventDetail>;\n\n @Listen(\"icChange\")\n handleChange(ev: CustomEvent): void {\n //don't pass on the event if it has come from slotted text field\n //otherwise any icChange handler bound to the checkbox group will also run\n if ((ev.target as HTMLElement).tagName === \"IC-TEXT-FIELD\") {\n ev.stopImmediatePropagation();\n }\n }\n\n componentWillLoad(): void {\n removeDisabledFalse(this.disabled, this.el);\n this.watchThemeHandler(this.theme);\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [\n { prop: this.label, propName: \"label\" },\n { prop: this.name, propName: \"name\" },\n ],\n \"Checkbox Group\"\n );\n }\n\n @Listen(\"icCheck\")\n selectHandler({ target }: CustomEvent): void {\n const checkedOptions = Array.from(\n this.el.querySelectorAll(\"ic-checkbox\")\n ).filter(({ checked, disabled }) => checked && !disabled);\n this.icChange.emit({\n value: checkedOptions.map(({ value }) => value),\n checkedOptions: checkedOptions.map((opt) => ({\n checkbox: opt,\n textFieldValue: opt.querySelector(\"ic-text-field\")?.value,\n })),\n selectedOption: target as HTMLIcCheckboxElement,\n });\n }\n\n render() {\n const {\n disabled,\n helperText,\n hideLabel,\n label,\n name,\n required,\n size,\n theme,\n validationStatus,\n validationText,\n } = this;\n\n const describedBy = getInputDescribedByText(\n name,\n helperText !== \"\",\n validationStatus !== \"\"\n );\n\n return (\n <Host\n class={{\n [`ic-checkbox-group-${size}`]: true,\n [`ic-checkbox-group-disabled`]: disabled,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n {(validationStatus === \"error\" || required || hideLabel) && (\n <span\n id=\"screenReaderOnlyText\"\n class=\"screen-reader-only-text\"\n aria-hidden=\"true\"\n >\n {label} {validationStatus === \"error\" ? \"invalid data \" : null}{\" \"}\n {required ? \"required\" : null}\n </span>\n )}\n <fieldset\n id={name}\n aria-labelledby={`${\n validationStatus === \"error\" || required || hideLabel\n ? \"screenReaderOnlyText\"\n : \"\"\n } ${describedBy}`.trim()}\n disabled={disabled}\n >\n {!hideLabel && (\n <legend>\n <ic-input-label\n class={{ [`${validationStatus}`]: true }}\n label={label}\n helperText={helperText}\n required={required}\n disabled={disabled}\n useLabelTag={false}\n ></ic-input-label>\n </legend>\n )}\n <div class=\"checkboxes-container\">\n <slot></slot>\n </div>\n </fieldset>\n {hasValidationStatus(validationStatus, disabled) && (\n <ic-input-validation\n for={name}\n ariaLiveMode=\"polite\"\n status={validationStatus}\n message={validationText}\n ></ic-input-validation>\n )}\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ic-checkbox-group.js","sourceRoot":"","sources":["../../../src/components/ic-checkbox-group/ic-checkbox-group.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Host,\n h,\n Prop,\n Listen,\n Element,\n Event,\n EventEmitter,\n Watch,\n} from \"@stencil/core\";\nimport {\n getInputDescribedByText,\n hasValidationStatus,\n onComponentRequiredPropUndefined,\n removeDisabledFalse,\n} from \"../../utils/helpers\";\nimport {\n IcInformationStatusOrEmpty,\n IcSizes,\n IcThemeMode,\n} from \"../../utils/types\";\nimport { IcChangeEventDetail } from \"./ic-checkbox-group.types\";\n\n@Component({\n tag: \"ic-checkbox-group\",\n styleUrl: \"ic-checkbox-group.css\",\n shadow: true,\n})\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport class CheckboxGroup {\n private checkboxSelector: string = \"ic-checkbox\";\n @Element() el: HTMLIcCheckboxGroupElement;\n\n /**\n * If `true`, the checkbox group 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 helper text that will be displayed for additional field guidance.\n */\n @Prop() helperText: 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: boolean = false;\n\n /**\n * The label for the checkbox group to be displayed.\n */\n @Prop() label!: string;\n\n /**\n * The name for the checkbox group to differentiate from other groups.\n */\n @Prop() name!: string;\n\n @Watch(\"label\")\n @Watch(\"name\")\n labelNameHandler(\n newValue: string,\n oldValue: string,\n propName: \"label\" | \"name\"\n ): void {\n Array.from(this.el.querySelectorAll(this.checkboxSelector)).forEach(\n (checkbox: HTMLIcCheckboxElement) => {\n if (propName === \"label\") checkbox.groupLabel = newValue;\n else if (checkbox.name === oldValue) {\n // If the checkbox name has been set by the parent, then override it\n checkbox.name = newValue;\n }\n }\n );\n }\n\n /**\n * If `true`, the checkbox group will require a value.\n */\n @Prop() required: boolean = false;\n\n /**\n * The size of the checkboxes to be displayed. This does not affect the font size of the label.\n */\n @Prop() size?: IcSizes = \"medium\";\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(newValue: IcThemeMode): void {\n Array.from(this.el.querySelectorAll(this.checkboxSelector)).forEach(\n (checkbox: HTMLIcCheckboxElement) => {\n checkbox.theme = newValue;\n }\n );\n }\n\n /**\n * The validation status - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationStatus: IcInformationStatusOrEmpty = \"\";\n\n /**\n * The validation text - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationText: string = \"\";\n\n /**\n * Emitted when a checkbox is checked.\n */\n @Event() icChange: EventEmitter<IcChangeEventDetail>;\n\n @Listen(\"icChange\")\n handleChange(ev: CustomEvent): void {\n //don't pass on the event if it has come from slotted text field\n //otherwise any icChange handler bound to the checkbox group will also run\n if ((ev.target as HTMLElement).tagName === \"IC-TEXT-FIELD\") {\n ev.stopImmediatePropagation();\n }\n }\n\n componentWillLoad(): void {\n removeDisabledFalse(this.disabled, this.el);\n this.watchThemeHandler(this.theme);\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [\n { prop: this.label, propName: \"label\" },\n { prop: this.name, propName: \"name\" },\n ],\n \"Checkbox Group\"\n );\n }\n\n @Listen(\"icCheck\")\n selectHandler({ target }: CustomEvent): void {\n const checkedOptions = Array.from(\n this.el.querySelectorAll(\"ic-checkbox\")\n ).filter(({ checked, disabled }) => checked && !disabled);\n this.icChange.emit({\n value: checkedOptions.map(({ value }) => value),\n checkedOptions: checkedOptions.map((opt) => ({\n checkbox: opt,\n textFieldValue: opt.querySelector(\"ic-text-field\")?.value,\n })),\n selectedOption: target as HTMLIcCheckboxElement,\n });\n }\n\n render() {\n const {\n disabled,\n helperText,\n hideLabel,\n label,\n name,\n required,\n size,\n theme,\n validationStatus,\n validationText,\n } = this;\n\n const describedBy = getInputDescribedByText(\n name,\n helperText !== \"\",\n validationStatus !== \"\"\n );\n\n return (\n <Host\n class={{\n [`ic-checkbox-group-${size}`]: true,\n [`ic-checkbox-group-disabled`]: disabled,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n {(validationStatus === \"error\" || required || hideLabel) && (\n <span\n id=\"screenReaderOnlyText\"\n class=\"screen-reader-only-text\"\n aria-hidden=\"true\"\n >\n {label} {validationStatus === \"error\" ? \"invalid data \" : null}{\" \"}\n {required ? \"required\" : null}\n </span>\n )}\n <fieldset\n id={name}\n aria-labelledby={`${\n validationStatus === \"error\" || required || hideLabel\n ? \"screenReaderOnlyText\"\n : \"\"\n } ${describedBy}`.trim()}\n disabled={disabled}\n >\n {!hideLabel && (\n <legend>\n <ic-input-label\n class={{ [`${validationStatus}`]: true }}\n label={label}\n helperText={helperText}\n required={required}\n disabled={disabled}\n useLabelTag={false}\n ></ic-input-label>\n </legend>\n )}\n <div class=\"checkboxes-container\">\n <slot></slot>\n </div>\n </fieldset>\n {hasValidationStatus(validationStatus, disabled) && (\n <ic-input-validation\n for={name}\n ariaLiveMode=\"polite\"\n status={validationStatus}\n message={validationText}\n ></ic-input-validation>\n )}\n </Host>\n );\n }\n}\n"]}
@@ -81,6 +81,9 @@ describe("ic-checkbox-group", () => {
81
81
  </ic-checkbox-group>`,
82
82
  });
83
83
  expect(page.root).toMatchSnapshot("renders-disabled");
84
+ document.querySelector("ic-checkbox").disabled = false;
85
+ await page.waitForChanges();
86
+ expect(page.root).toMatchSnapshot("disabled-removed");
84
87
  });
85
88
  it("should render with validation status", async () => {
86
89
  const page = await newSpecPage({
@@ -1 +1 @@
1
- {"version":3,"file":"ic-checkbox-group.spec.js","sourceRoot":"","sources":["../../../../../src/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.ts"],"names":[],"mappings":"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","sourcesContent":["import { newSpecPage } from \"@stencil/core/testing\";\nimport { CheckboxGroup } from \"../../ic-checkbox-group\";\nimport { Checkbox } from \"../../../ic-checkbox/ic-checkbox\";\nimport { TextField } from \"../../../ic-text-field/ic-text-field\";\n\ndescribe(\"ic-checkbox-group\", () => {\n it(\"should render\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" name=\"test\">\n <ic-checkbox value=\"test\" label=\"test label\"></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\"renders\");\n });\n\n it(\"should render as required\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" name=\"test\" required>\n <ic-checkbox value=\"test\" label=\"test label\"></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\"renders-required\");\n });\n\n it(\"should render as helper text\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" name=\"test\" helper-text=\"helper test\">\n <ic-checkbox value=\"test\" label=\"test label\"></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\"renders-with-helpertext\");\n });\n\n it(\"should test checkbox option as submit on form\", async () => {\n const page = await newSpecPage({\n components: [Checkbox],\n html: `<form id=\"new-form\"></form><ic-checkbox id=\"ic-checkbox\" label=\"IC Checkbox Test\" value=\"test-value\" form=\"new-form\" selected></ic-checkbox>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render checked\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" name=\"test\">\n <ic-checkbox value=\"test\" checked label=\"test label\"></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\"renders-checked\");\n });\n\n it(\"should render indeterminate\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" name=\"test\">\n <ic-checkbox value=\"test\" checked indeterminate label=\"test label\"></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\"renders-indeterminate\");\n });\n\n it(\"should render an aria label when group label hidden\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" hide-label name=\"test\">\n <ic-checkbox value=\"test\" label=\"test label\"></ic-checkbox>\n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\"renders-hidden-label\");\n });\n\n it(\"should render an aria label when checkbox label hidden\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" name=\"test\">\n <ic-checkbox value=\"test\" label=\"test label\" hide-label></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\"renders-hidden-checkbox-label\");\n });\n\n it(\"should render in a disabled state\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" name=\"test\">\n <ic-checkbox value=\"test\" disabled label=\"test label\"></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\"renders-disabled\");\n });\n\n it(\"should render with validation status\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" hide-label name=\"test\" validation-status=\"error\">\n <ic-checkbox value=\"test\" label=\"test label\"></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\"renders-with-validation\");\n });\n\n it(\"should render with hidden dynamic additional field\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox, TextField],\n html: `<ic-checkbox-group label=\"test label\" hide-label name=\"test\" validation-status=\"error\">\n <ic-checkbox value=\"test\" additional-field-display=\"dynamic\" label=\"test label\">\n <ic-text-field slot=\"additional-field\" placeholder=\"Placeholder\" label=\"Test label\"></ic-text-field>\n </ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\"renders-with-dynamic-field\");\n });\n\n it(\"should render with dynamic additional field when checked\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox, TextField],\n html: `<ic-checkbox-group label=\"test label\" hide-label name=\"test\" validation-status=\"error\">\n <ic-checkbox value=\"test\" label=\"test label\" additional-field-display=\"dynamic\" checked>\n <ic-text-field slot=\"additional-field\" placeholder=\"Placeholder\" label=\"Test label\"></ic-text-field>\n </ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\n \"renders-with-dynamic-field-when-checked\"\n );\n });\n\n it(\"should render with disabled static additional field\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox, TextField],\n html: `<ic-checkbox-group label=\"test label\" hide-label name=\"test\" validation-status=\"error\">\n <ic-checkbox value=\"test\" label=\"test label\" additional-field-display=\"static\">\n <ic-text-field slot=\"additional-field\" placeholder=\"Placeholder\" label=\"Test label\"></ic-text-field>\n </ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\"renders-with-disabled-additional-field\");\n });\n\n it(\"should remove disabled attribute from static additional field when checked\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox, TextField],\n html: `<ic-checkbox-group label=\"test label\" hide-label name=\"test\" validation-status=\"error\">\n <ic-checkbox value=\"test\" label=\"test label\" additional-field-display=\"static\" checked>\n <ic-text-field slot=\"additional-field\" placeholder=\"Placeholder\" label=\"Test label\"></ic-text-field>\n </ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\n \"renders-with-disabled-attribute-removed-from-field\"\n );\n });\n\n it(\"should pass the size on the checkbox group to the child checkboxes when there's no size set on them individually\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" name=\"test\" size=\"small\">\n <ic-checkbox value=\"test\" label=\"test label\"></ic-checkbox>\n <ic-checkbox value=\"test\" label=\"test label\"></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot();\n\n const checkboxes = page.root.querySelectorAll(\"ic-checkbox\");\n\n checkboxes.forEach((checkbox) => {\n expect(checkbox.classList.contains(\"ic-checkbox-small\")).toBe(true);\n });\n });\n\n it(\"should prioritise the size on an individual checkbox over the size on the checkbox group\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" name=\"test\" size=\"large\">\n <ic-checkbox value=\"test\" label=\"test label\" id=\"large-checkbox\"></ic-checkbox>\n <ic-checkbox value=\"test\" label=\"test label\" size=\"small\" id=\"small-checkbox\"></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n const smallCheckbox = page.root.querySelector(\n \"ic-checkbox#small-checkbox\"\n ) as HTMLIcCheckboxElement;\n expect(smallCheckbox[\"size\"]).toMatch(\"small\");\n\n const largeCheckbox = page.root.querySelector(\n \"ic-checkbox:not(#small-checkbox)\"\n ) as HTMLIcCheckboxElement;\n expect(largeCheckbox.classList.contains(\"ic-checkbox-large\")).toBe(true);\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should change checked state\", async () => {\n const page = await newSpecPage({\n components: [Checkbox],\n html: `<ic-checkbox value=\"test\" label=\"test label\" checked></ic-checkbox>`,\n });\n\n expect(page.root.checked).toBe(true);\n\n page.rootInstance.handleClick();\n await page.waitForChanges();\n\n expect(page.root.checked).toBe(false);\n });\n\n it(\"should call 'setFocus' when checkbox is focused\", async () => {\n const page = await newSpecPage({\n components: [Checkbox],\n html: `<ic-checkbox value=\"test\" label=\"test label\" checked></ic-checkbox>`,\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 emit icCheck on click\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" name=\"test\">\n <ic-checkbox value=\"test\" label=\"test label\"></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n const eventSpy = jest.fn();\n\n page.win.addEventListener(\"icCheck\", eventSpy);\n\n page.root\n .querySelector(\"ic-checkbox\")\n .shadowRoot.querySelector(\"input\")\n .click();\n\n await page.waitForChanges();\n\n expect(eventSpy).toHaveBeenCalled();\n });\n\n it(\"should test indeterminate with 'nativeIndeterminateBehaviour' set to 'false'\", async () => {\n const page = await newSpecPage({\n components: [Checkbox],\n html: `<ic-checkbox value=\"test\" label=\"test label\" checked indeterminate></ic-checkbox>`,\n });\n await page.waitForChanges();\n\n expect(page.rootInstance.displayIndeterminate).toBe(true);\n\n page.root.shadowRoot.querySelector(\"input\").click();\n\n await page.waitForChanges();\n\n expect(page.root.checked).toBe(false);\n expect(page.rootInstance.displayIndeterminate).toBe(false);\n\n page.root.shadowRoot.querySelector(\"input\").click();\n\n await page.waitForChanges();\n\n expect(page.root.checked).toBe(true);\n expect(page.rootInstance.displayIndeterminate).toBe(true);\n\n page.root.indeterminate = false;\n await page.waitForChanges();\n\n expect(page.root.checked).toBe(true);\n expect(page.rootInstance.displayIndeterminate).toBe(false);\n\n page.root.indeterminate = true;\n await page.waitForChanges();\n\n expect(page.root.checked).toBe(true);\n expect(page.rootInstance.displayIndeterminate).toBe(true);\n });\n\n it(\"should test indeterminate with 'nativeIndeterminateBehaviour' set to 'true'\", async () => {\n const page = await newSpecPage({\n components: [Checkbox],\n html: `<ic-checkbox value=\"test\" label=\"test label\" indeterminate native-indeterminate-behaviour></ic-checkbox>`,\n });\n await page.waitForChanges();\n\n expect(page.rootInstance.displayIndeterminate).toBe(true);\n\n page.root.shadowRoot.querySelector(\"input\").click();\n\n await page.waitForChanges();\n\n expect(page.root.checked).toBe(true);\n expect(page.rootInstance.displayIndeterminate).toBe(false);\n\n page.root.shadowRoot.querySelector(\"input\").click();\n\n await page.waitForChanges();\n\n expect(page.root.checked).toBe(false);\n expect(page.rootInstance.displayIndeterminate).toBe(false);\n\n page.root.indeterminate = false;\n await page.waitForChanges();\n\n page.root.indeterminate = true;\n await page.waitForChanges();\n\n expect(page.root.checked).toBe(false);\n expect(page.rootInstance.displayIndeterminate).toBe(true);\n\n page.root.shadowRoot.querySelector(\"input\").click();\n\n await page.waitForChanges();\n\n expect(page.root.checked).toBe(true);\n expect(page.rootInstance.displayIndeterminate).toBe(false);\n });\n\n it(\"should test form reset event\", async () => {\n const page = await newSpecPage({\n components: [Checkbox],\n html: `<form>\n <ic-checkbox value=\"test\" label=\"test label\" checked></ic-checkbox> \n <button id=\"resetButton\" type=\"reset\">Reset</button> \n </form>`,\n });\n\n expect(page.root.checked).toBe(true);\n\n page.root.checked = false;\n await page.waitForChanges();\n\n expect(page.root.checked).toBe(false);\n\n await page.rootInstance.handleFormReset();\n await page.waitForChanges();\n\n expect(page.root.checked).toBe(true);\n\n //test disconnected callback\n page.setContent(\"\");\n });\n\n it(\"should test labelNameHandler\", async () => {\n const page = await newSpecPage({\n components: [Checkbox, CheckboxGroup],\n html: `<ic-checkbox-group label=\"test label\" name=\"test\">\n <ic-checkbox value=\"test\" label=\"test label\"></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot();\n\n page.root.label = \"new label\";\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n});\n"]}
1
+ {"version":3,"file":"ic-checkbox-group.spec.js","sourceRoot":"","sources":["../../../../../src/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.ts"],"names":[],"mappings":"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","sourcesContent":["import { newSpecPage } from \"@stencil/core/testing\";\nimport { CheckboxGroup } from \"../../ic-checkbox-group\";\nimport { Checkbox } from \"../../../ic-checkbox/ic-checkbox\";\nimport { TextField } from \"../../../ic-text-field/ic-text-field\";\n\ndescribe(\"ic-checkbox-group\", () => {\n it(\"should render\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" name=\"test\">\n <ic-checkbox value=\"test\" label=\"test label\"></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\"renders\");\n });\n\n it(\"should render as required\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" name=\"test\" required>\n <ic-checkbox value=\"test\" label=\"test label\"></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\"renders-required\");\n });\n\n it(\"should render as helper text\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" name=\"test\" helper-text=\"helper test\">\n <ic-checkbox value=\"test\" label=\"test label\"></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\"renders-with-helpertext\");\n });\n\n it(\"should test checkbox option as submit on form\", async () => {\n const page = await newSpecPage({\n components: [Checkbox],\n html: `<form id=\"new-form\"></form><ic-checkbox id=\"ic-checkbox\" label=\"IC Checkbox Test\" value=\"test-value\" form=\"new-form\" selected></ic-checkbox>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render checked\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" name=\"test\">\n <ic-checkbox value=\"test\" checked label=\"test label\"></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\"renders-checked\");\n });\n\n it(\"should render indeterminate\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" name=\"test\">\n <ic-checkbox value=\"test\" checked indeterminate label=\"test label\"></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\"renders-indeterminate\");\n });\n\n it(\"should render an aria label when group label hidden\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" hide-label name=\"test\">\n <ic-checkbox value=\"test\" label=\"test label\"></ic-checkbox>\n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\"renders-hidden-label\");\n });\n\n it(\"should render an aria label when checkbox label hidden\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" name=\"test\">\n <ic-checkbox value=\"test\" label=\"test label\" hide-label></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\"renders-hidden-checkbox-label\");\n });\n\n it(\"should render in a disabled state\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" name=\"test\">\n <ic-checkbox value=\"test\" disabled label=\"test label\"></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\"renders-disabled\");\n\n document.querySelector(\"ic-checkbox\").disabled = false;\n\n await page.waitForChanges();\n expect(page.root).toMatchSnapshot(\"disabled-removed\");\n });\n\n it(\"should render with validation status\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" hide-label name=\"test\" validation-status=\"error\">\n <ic-checkbox value=\"test\" label=\"test label\"></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\"renders-with-validation\");\n });\n\n it(\"should render with hidden dynamic additional field\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox, TextField],\n html: `<ic-checkbox-group label=\"test label\" hide-label name=\"test\" validation-status=\"error\">\n <ic-checkbox value=\"test\" additional-field-display=\"dynamic\" label=\"test label\">\n <ic-text-field slot=\"additional-field\" placeholder=\"Placeholder\" label=\"Test label\"></ic-text-field>\n </ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\"renders-with-dynamic-field\");\n });\n\n it(\"should render with dynamic additional field when checked\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox, TextField],\n html: `<ic-checkbox-group label=\"test label\" hide-label name=\"test\" validation-status=\"error\">\n <ic-checkbox value=\"test\" label=\"test label\" additional-field-display=\"dynamic\" checked>\n <ic-text-field slot=\"additional-field\" placeholder=\"Placeholder\" label=\"Test label\"></ic-text-field>\n </ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\n \"renders-with-dynamic-field-when-checked\"\n );\n });\n\n it(\"should render with disabled static additional field\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox, TextField],\n html: `<ic-checkbox-group label=\"test label\" hide-label name=\"test\" validation-status=\"error\">\n <ic-checkbox value=\"test\" label=\"test label\" additional-field-display=\"static\">\n <ic-text-field slot=\"additional-field\" placeholder=\"Placeholder\" label=\"Test label\"></ic-text-field>\n </ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\"renders-with-disabled-additional-field\");\n });\n\n it(\"should remove disabled attribute from static additional field when checked\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox, TextField],\n html: `<ic-checkbox-group label=\"test label\" hide-label name=\"test\" validation-status=\"error\">\n <ic-checkbox value=\"test\" label=\"test label\" additional-field-display=\"static\" checked>\n <ic-text-field slot=\"additional-field\" placeholder=\"Placeholder\" label=\"Test label\"></ic-text-field>\n </ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot(\n \"renders-with-disabled-attribute-removed-from-field\"\n );\n });\n\n it(\"should pass the size on the checkbox group to the child checkboxes when there's no size set on them individually\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" name=\"test\" size=\"small\">\n <ic-checkbox value=\"test\" label=\"test label\"></ic-checkbox>\n <ic-checkbox value=\"test\" label=\"test label\"></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot();\n\n const checkboxes = page.root.querySelectorAll(\"ic-checkbox\");\n\n checkboxes.forEach((checkbox) => {\n expect(checkbox.classList.contains(\"ic-checkbox-small\")).toBe(true);\n });\n });\n\n it(\"should prioritise the size on an individual checkbox over the size on the checkbox group\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" name=\"test\" size=\"large\">\n <ic-checkbox value=\"test\" label=\"test label\" id=\"large-checkbox\"></ic-checkbox>\n <ic-checkbox value=\"test\" label=\"test label\" size=\"small\" id=\"small-checkbox\"></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n const smallCheckbox = page.root.querySelector(\n \"ic-checkbox#small-checkbox\"\n ) as HTMLIcCheckboxElement;\n expect(smallCheckbox[\"size\"]).toMatch(\"small\");\n\n const largeCheckbox = page.root.querySelector(\n \"ic-checkbox:not(#small-checkbox)\"\n ) as HTMLIcCheckboxElement;\n expect(largeCheckbox.classList.contains(\"ic-checkbox-large\")).toBe(true);\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should change checked state\", async () => {\n const page = await newSpecPage({\n components: [Checkbox],\n html: `<ic-checkbox value=\"test\" label=\"test label\" checked></ic-checkbox>`,\n });\n\n expect(page.root.checked).toBe(true);\n\n page.rootInstance.handleClick();\n await page.waitForChanges();\n\n expect(page.root.checked).toBe(false);\n });\n\n it(\"should call 'setFocus' when checkbox is focused\", async () => {\n const page = await newSpecPage({\n components: [Checkbox],\n html: `<ic-checkbox value=\"test\" label=\"test label\" checked></ic-checkbox>`,\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 emit icCheck on click\", async () => {\n const page = await newSpecPage({\n components: [CheckboxGroup, Checkbox],\n html: `<ic-checkbox-group label=\"test label\" name=\"test\">\n <ic-checkbox value=\"test\" label=\"test label\"></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n const eventSpy = jest.fn();\n\n page.win.addEventListener(\"icCheck\", eventSpy);\n\n page.root\n .querySelector(\"ic-checkbox\")\n .shadowRoot.querySelector(\"input\")\n .click();\n\n await page.waitForChanges();\n\n expect(eventSpy).toHaveBeenCalled();\n });\n\n it(\"should test indeterminate with 'nativeIndeterminateBehaviour' set to 'false'\", async () => {\n const page = await newSpecPage({\n components: [Checkbox],\n html: `<ic-checkbox value=\"test\" label=\"test label\" checked indeterminate></ic-checkbox>`,\n });\n await page.waitForChanges();\n\n expect(page.rootInstance.displayIndeterminate).toBe(true);\n\n page.root.shadowRoot.querySelector(\"input\").click();\n\n await page.waitForChanges();\n\n expect(page.root.checked).toBe(false);\n expect(page.rootInstance.displayIndeterminate).toBe(false);\n\n page.root.shadowRoot.querySelector(\"input\").click();\n\n await page.waitForChanges();\n\n expect(page.root.checked).toBe(true);\n expect(page.rootInstance.displayIndeterminate).toBe(true);\n\n page.root.indeterminate = false;\n await page.waitForChanges();\n\n expect(page.root.checked).toBe(true);\n expect(page.rootInstance.displayIndeterminate).toBe(false);\n\n page.root.indeterminate = true;\n await page.waitForChanges();\n\n expect(page.root.checked).toBe(true);\n expect(page.rootInstance.displayIndeterminate).toBe(true);\n });\n\n it(\"should test indeterminate with 'nativeIndeterminateBehaviour' set to 'true'\", async () => {\n const page = await newSpecPage({\n components: [Checkbox],\n html: `<ic-checkbox value=\"test\" label=\"test label\" indeterminate native-indeterminate-behaviour></ic-checkbox>`,\n });\n await page.waitForChanges();\n\n expect(page.rootInstance.displayIndeterminate).toBe(true);\n\n page.root.shadowRoot.querySelector(\"input\").click();\n\n await page.waitForChanges();\n\n expect(page.root.checked).toBe(true);\n expect(page.rootInstance.displayIndeterminate).toBe(false);\n\n page.root.shadowRoot.querySelector(\"input\").click();\n\n await page.waitForChanges();\n\n expect(page.root.checked).toBe(false);\n expect(page.rootInstance.displayIndeterminate).toBe(false);\n\n page.root.indeterminate = false;\n await page.waitForChanges();\n\n page.root.indeterminate = true;\n await page.waitForChanges();\n\n expect(page.root.checked).toBe(false);\n expect(page.rootInstance.displayIndeterminate).toBe(true);\n\n page.root.shadowRoot.querySelector(\"input\").click();\n\n await page.waitForChanges();\n\n expect(page.root.checked).toBe(true);\n expect(page.rootInstance.displayIndeterminate).toBe(false);\n });\n\n it(\"should test form reset event\", async () => {\n const page = await newSpecPage({\n components: [Checkbox],\n html: `<form>\n <ic-checkbox value=\"test\" label=\"test label\" checked></ic-checkbox> \n <button id=\"resetButton\" type=\"reset\">Reset</button> \n </form>`,\n });\n\n expect(page.root.checked).toBe(true);\n\n page.root.checked = false;\n await page.waitForChanges();\n\n expect(page.root.checked).toBe(false);\n\n await page.rootInstance.handleFormReset();\n await page.waitForChanges();\n\n expect(page.root.checked).toBe(true);\n\n //test disconnected callback\n page.setContent(\"\");\n });\n\n it(\"should test labelNameHandler\", async () => {\n const page = await newSpecPage({\n components: [Checkbox, CheckboxGroup],\n html: `<ic-checkbox-group label=\"test label\" name=\"test\">\n <ic-checkbox value=\"test\" label=\"test label\"></ic-checkbox> \n </ic-checkbox-group>`,\n });\n\n expect(page.root).toMatchSnapshot();\n\n page.root.label = \"new label\";\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n});\n"]}
@@ -42,10 +42,14 @@ export class Chip {
42
42
  this.theme = "inherit";
43
43
  this.transparentBackground = true;
44
44
  this.variant = "filled";
45
+ this.dismissLabel = "Dismiss";
45
46
  }
46
47
  customColorHandler() {
47
48
  this.setChipColour();
48
49
  }
50
+ watchDisabledHandler() {
51
+ removeDisabledFalse(this.disabled, this.el);
52
+ }
49
53
  componentWillLoad() {
50
54
  removeDisabledFalse(this.disabled, this.el);
51
55
  this.customColorHandler();
@@ -69,7 +73,7 @@ export class Chip {
69
73
  (_a = this.el.shadowRoot.querySelector("button")) === null || _a === void 0 ? void 0 : _a.focus();
70
74
  }
71
75
  render() {
72
- const { label, variant, size, dismissible, visible, disabled, hovered, theme, customColorClass, } = this;
76
+ const { label, variant, size, dismissible, visible, disabled, hovered, theme, customColorClass, dismissLabel, } = this;
73
77
  return (h(Host, { class: {
74
78
  [`ic-theme-${theme}`]: theme !== "inherit",
75
79
  [`${customColorClass}`]: variant === "filled" && customColorClass !== "",
@@ -81,7 +85,7 @@ export class Chip {
81
85
  dismissible,
82
86
  hovered,
83
87
  "non-transparent": this.variant === "outlined" && !this.transparentBackground,
84
- } }, isSlotUsed(this.el, "icon") && (h("div", { class: "icon" }, h("slot", { name: "icon" }))), h("ic-typography", { variant: "label", "apply-vertical-margins": false, class: { label: true, "in-ag-grid": this.inAGGrid } }, h("span", null, label)), dismissible && (h("ic-tooltip", { label: "Dismiss", target: "dismiss-icon", class: { "tooltip-disabled": disabled } }, h("button", { id: "dismiss-icon", class: "dismiss-icon", "aria-label": `Dismiss ${label} chip`, disabled: disabled, tabindex: disabled ? -1 : 0, onClick: this.dismissAction, onMouseEnter: this.mouseEnterHandler, onMouseLeave: this.mouseLeaveHandler, innerHTML: dismissIcon }))), isSlotUsed(this.el, "badge") && h("slot", { name: "badge" })))));
88
+ } }, isSlotUsed(this.el, "icon") && (h("div", { class: "icon" }, h("slot", { name: "icon" }))), h("ic-typography", { variant: "label", "apply-vertical-margins": false, class: { label: true, "in-ag-grid": this.inAGGrid } }, h("span", null, label)), dismissible && (h("ic-tooltip", { label: dismissLabel, target: "dismiss-icon", class: { "tooltip-disabled": disabled } }, h("button", { id: "dismiss-icon", class: "dismiss-icon", "aria-label": `${dismissLabel} ${label} chip`, disabled: disabled, tabindex: disabled ? -1 : 0, onClick: this.dismissAction, onMouseEnter: this.mouseEnterHandler, onMouseLeave: this.mouseLeaveHandler, innerHTML: dismissIcon }))), isSlotUsed(this.el, "badge") && h("slot", { name: "badge" })))));
85
89
  }
86
90
  static get is() { return "ic-chip"; }
87
91
  static get encapsulation() { return "shadow"; }
@@ -258,6 +262,24 @@ export class Chip {
258
262
  "attribute": "variant",
259
263
  "reflect": false,
260
264
  "defaultValue": "\"filled\""
265
+ },
266
+ "dismissLabel": {
267
+ "type": "string",
268
+ "mutable": false,
269
+ "complexType": {
270
+ "original": "string",
271
+ "resolved": "string",
272
+ "references": {}
273
+ },
274
+ "required": false,
275
+ "optional": true,
276
+ "docs": {
277
+ "tags": [],
278
+ "text": "The text in the dismiss button tooltip and aria label."
279
+ },
280
+ "attribute": "dismiss-label",
281
+ "reflect": false,
282
+ "defaultValue": "\"Dismiss\""
261
283
  }
262
284
  };
263
285
  }
@@ -312,6 +334,9 @@ export class Chip {
312
334
  return [{
313
335
  "propName": "customColor",
314
336
  "methodName": "customColorHandler"
337
+ }, {
338
+ "propName": "disabled",
339
+ "methodName": "watchDisabledHandler"
315
340
  }];
316
341
  }
317
342
  static get listeners() {
@@ -1 +1 @@
1
- {"version":3,"file":"ic-chip.js","sourceRoot":"","sources":["../../../src/components/ic-chip/ic-chip.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n h,\n Prop,\n State,\n Listen,\n Event,\n EventEmitter,\n Element,\n Method,\n Watch,\n Host,\n} from \"@stencil/core\";\nimport {\n onComponentRequiredPropUndefined,\n isSlotUsed,\n removeDisabledFalse,\n convertToRGBA,\n isElInAGGrid,\n} from \"../../utils/helpers\";\nimport { IcColor, IcEmphasisType, IcSizes } from \"../../utils/types\";\nimport dismissIcon from \"../../assets/dismiss-icon.svg\";\n\n/**\n * @slot icon - Content will be rendered at the start of the chip.\n * @slot badge - Badge component overlaying the top right of the chip.\n */\n@Component({\n tag: \"ic-chip\",\n styleUrl: \"ic-chip.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class Chip {\n private inAGGrid: boolean = false;\n\n @Element() el: HTMLIcChipElement;\n\n @State() customColorClass: string = \"\";\n @State() hovered: boolean = false;\n @State() visible: boolean = true;\n\n /**\n * The custom chip colour. This will override the theme colour.\n * Can be a hex value e.g. \"#ff0000\", RGB e.g. \"rgb(255, 0, 0)\", or RGBA e.g. \"rgba(255, 0, 0, 1)\".\n */\n @Prop() customColor?: IcColor = null;\n\n @Watch(\"customColor\")\n customColorHandler(): void {\n this.setChipColour();\n }\n\n /**\n * If `true`, the chip will appear disabled.\n */\n @Prop() disabled?: boolean = false;\n\n /**\n * If `true`, the chip will have a close button at the end to dismiss it.\n */\n @Prop() dismissible?: boolean = false;\n\n /**\n * The text rendered within the chip.\n */\n @Prop() label!: string;\n\n /**\n * The size of the chip.\n */\n @Prop() size?: IcSizes = \"medium\";\n /**\n * Sets the chip to the dark or light theme colors. \"inherit\" will set the color based on the system settings or ic-theme component.\n * Setting the \"customColor\" prop will override this.\n */\n @Prop() theme?: \"dark\" | \"light\" | \"inherit\" = \"inherit\";\n\n /**\n * If `true`, the outlined variant of chip will have a transparent background rather than the theme defined color.\n */\n @Prop() transparentBackground?: boolean = true;\n\n /**\n * The emphasis of the chip.\n */\n @Prop() variant?: IcEmphasisType = \"filled\";\n\n /**\n * Is emitted when the user dismisses the chip.\n */\n @Event() icDismiss: EventEmitter<void>;\n\n componentWillLoad(): void {\n removeDisabledFalse(this.disabled, this.el);\n this.customColorHandler();\n }\n\n componentWillRender(): void {\n if (isElInAGGrid(this.el)) {\n this.inAGGrid = true;\n }\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Chip\"\n );\n }\n\n @Listen(\"icDismiss\", { capture: true })\n handleClick(): void {\n this.visible = !this.visible;\n }\n\n /**\n * Sets focus on the chip.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.el.shadowRoot.querySelector(\"button\")?.focus();\n }\n\n private dismissAction = (): void => {\n this.icDismiss.emit();\n };\n\n private mouseEnterHandler = (): void => {\n this.hovered = true;\n };\n\n private mouseLeaveHandler = (): void => {\n this.hovered = false;\n };\n\n private setChipColour = () => {\n const colorRGBA = convertToRGBA(this.customColor);\n if (colorRGBA) {\n const { r, g, b, a } = colorRGBA;\n this.customColorClass =\n (r * 299 + g * 587 + b * 114) / 1000 > 133.3505\n ? \"ic-chip-dark-text\"\n : \"ic-chip-light-text\";\n this.el.setAttribute(\n \"style\",\n `--chip-custom-color: rgba(${r}, ${g}, ${b}, ${a});`\n );\n } else {\n this.customColorClass = \"\";\n }\n };\n\n render() {\n const {\n label,\n variant,\n size,\n dismissible,\n visible,\n disabled,\n hovered,\n theme,\n customColorClass,\n } = this;\n\n return (\n <Host\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n [`${customColorClass}`]:\n variant === \"filled\" && customColorClass !== \"\",\n }}\n >\n {visible && (\n <div\n class={{\n chip: true,\n [`${variant}`]: true,\n [`${size}`]: true,\n disabled,\n dismissible,\n hovered,\n \"non-transparent\":\n this.variant === \"outlined\" && !this.transparentBackground,\n }}\n >\n {isSlotUsed(this.el, \"icon\") && (\n <div class=\"icon\">\n <slot name=\"icon\" />\n </div>\n )}\n <ic-typography\n variant=\"label\"\n apply-vertical-margins={false}\n class={{ label: true, \"in-ag-grid\": this.inAGGrid }}\n >\n <span>{label}</span>\n </ic-typography>\n {dismissible && (\n <ic-tooltip\n label=\"Dismiss\"\n target=\"dismiss-icon\"\n class={{ \"tooltip-disabled\": disabled }}\n >\n <button\n id=\"dismiss-icon\"\n class=\"dismiss-icon\"\n aria-label={`Dismiss ${label} chip`}\n disabled={disabled}\n tabindex={disabled ? -1 : 0}\n onClick={this.dismissAction}\n onMouseEnter={this.mouseEnterHandler}\n onMouseLeave={this.mouseLeaveHandler}\n innerHTML={dismissIcon}\n ></button>\n </ic-tooltip>\n )}\n {isSlotUsed(this.el, \"badge\") && <slot name=\"badge\"></slot>}\n </div>\n )}\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ic-chip.js","sourceRoot":"","sources":["../../../src/components/ic-chip/ic-chip.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n h,\n Prop,\n State,\n Listen,\n Event,\n EventEmitter,\n Element,\n Method,\n Watch,\n Host,\n} from \"@stencil/core\";\nimport {\n onComponentRequiredPropUndefined,\n isSlotUsed,\n removeDisabledFalse,\n convertToRGBA,\n isElInAGGrid,\n} from \"../../utils/helpers\";\nimport { IcColor, IcEmphasisType, IcSizes } from \"../../utils/types\";\nimport dismissIcon from \"../../assets/dismiss-icon.svg\";\n\n/**\n * @slot icon - Content will be rendered at the start of the chip.\n * @slot badge - Badge component overlaying the top right of the chip.\n */\n@Component({\n tag: \"ic-chip\",\n styleUrl: \"ic-chip.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class Chip {\n private inAGGrid: boolean = false;\n\n @Element() el: HTMLIcChipElement;\n\n @State() customColorClass: string = \"\";\n @State() hovered: boolean = false;\n @State() visible: boolean = true;\n\n /**\n * The custom chip colour. This will override the theme colour.\n * Can be a hex value e.g. \"#ff0000\", RGB e.g. \"rgb(255, 0, 0)\", or RGBA e.g. \"rgba(255, 0, 0, 1)\".\n */\n @Prop() customColor?: IcColor = null;\n\n @Watch(\"customColor\")\n customColorHandler(): void {\n this.setChipColour();\n }\n\n /**\n * If `true`, the chip will appear disabled.\n */\n @Prop() disabled?: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * If `true`, the chip will have a close button at the end to dismiss it.\n */\n @Prop() dismissible?: boolean = false;\n\n /**\n * The text rendered within the chip.\n */\n @Prop() label!: string;\n\n /**\n * The size of the chip.\n */\n @Prop() size?: IcSizes = \"medium\";\n /**\n * Sets the chip to the dark or light theme colors. \"inherit\" will set the color based on the system settings or ic-theme component.\n * Setting the \"customColor\" prop will override this.\n */\n @Prop() theme?: \"dark\" | \"light\" | \"inherit\" = \"inherit\";\n\n /**\n * If `true`, the outlined variant of chip will have a transparent background rather than the theme defined color.\n */\n @Prop() transparentBackground?: boolean = true;\n\n /**\n * The emphasis of the chip.\n */\n @Prop() variant?: IcEmphasisType = \"filled\";\n\n /**\n * The text in the dismiss button tooltip and aria label.\n */\n @Prop() dismissLabel?: string = \"Dismiss\";\n\n /**\n * Is emitted when the user dismisses the chip.\n */\n @Event() icDismiss: EventEmitter<void>;\n\n componentWillLoad(): void {\n removeDisabledFalse(this.disabled, this.el);\n this.customColorHandler();\n }\n\n componentWillRender(): void {\n if (isElInAGGrid(this.el)) {\n this.inAGGrid = true;\n }\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Chip\"\n );\n }\n\n @Listen(\"icDismiss\", { capture: true })\n handleClick(): void {\n this.visible = !this.visible;\n }\n\n /**\n * Sets focus on the chip.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.el.shadowRoot.querySelector(\"button\")?.focus();\n }\n\n private dismissAction = (): void => {\n this.icDismiss.emit();\n };\n\n private mouseEnterHandler = (): void => {\n this.hovered = true;\n };\n\n private mouseLeaveHandler = (): void => {\n this.hovered = false;\n };\n\n private setChipColour = () => {\n const colorRGBA = convertToRGBA(this.customColor);\n if (colorRGBA) {\n const { r, g, b, a } = colorRGBA;\n this.customColorClass =\n (r * 299 + g * 587 + b * 114) / 1000 > 133.3505\n ? \"ic-chip-dark-text\"\n : \"ic-chip-light-text\";\n this.el.setAttribute(\n \"style\",\n `--chip-custom-color: rgba(${r}, ${g}, ${b}, ${a});`\n );\n } else {\n this.customColorClass = \"\";\n }\n };\n\n render() {\n const {\n label,\n variant,\n size,\n dismissible,\n visible,\n disabled,\n hovered,\n theme,\n customColorClass,\n dismissLabel,\n } = this;\n\n return (\n <Host\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n [`${customColorClass}`]:\n variant === \"filled\" && customColorClass !== \"\",\n }}\n >\n {visible && (\n <div\n class={{\n chip: true,\n [`${variant}`]: true,\n [`${size}`]: true,\n disabled,\n dismissible,\n hovered,\n \"non-transparent\":\n this.variant === \"outlined\" && !this.transparentBackground,\n }}\n >\n {isSlotUsed(this.el, \"icon\") && (\n <div class=\"icon\">\n <slot name=\"icon\" />\n </div>\n )}\n <ic-typography\n variant=\"label\"\n apply-vertical-margins={false}\n class={{ label: true, \"in-ag-grid\": this.inAGGrid }}\n >\n <span>{label}</span>\n </ic-typography>\n {dismissible && (\n <ic-tooltip\n label={dismissLabel}\n target=\"dismiss-icon\"\n class={{ \"tooltip-disabled\": disabled }}\n >\n <button\n id=\"dismiss-icon\"\n class=\"dismiss-icon\"\n aria-label={`${dismissLabel} ${label} chip`}\n disabled={disabled}\n tabindex={disabled ? -1 : 0}\n onClick={this.dismissAction}\n onMouseEnter={this.mouseEnterHandler}\n onMouseLeave={this.mouseLeaveHandler}\n innerHTML={dismissIcon}\n ></button>\n </ic-tooltip>\n )}\n {isSlotUsed(this.el, \"badge\") && <slot name=\"badge\"></slot>}\n </div>\n )}\n </Host>\n );\n }\n}\n"]}
@@ -34,6 +34,9 @@ describe("ic-chip component renders label", () => {
34
34
  </ic-chip>`,
35
35
  });
36
36
  expect(page.root).toMatchSnapshot();
37
+ page.rootInstance.disabled = false;
38
+ await page.waitForChanges();
39
+ expect(page.root).toMatchSnapshot("disabled-removed");
37
40
  });
38
41
  it("should render small", async () => {
39
42
  const page = await newSpecPage({
@@ -1 +1 @@
1
- {"version":3,"file":"ic-chip.spec.js","sourceRoot":"","sources":["../../../../../src/components/ic-chip/test/basic/ic-chip.spec.ts"],"names":[],"mappings":"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","sourcesContent":["import { newSpecPage } from \"@stencil/core/testing\";\nimport { Chip } from \"../../ic-chip\";\nimport * as helpers from \"../../../../utils/helpers\";\n\ndescribe(\"ic-chip component renders label\", () => {\n it(\"should render static\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"Label\">\n <svg slot=\"icon\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M10 0C4.48 0 0 4.48 0 10C0 15.52 4.48 20 10 20C15.52 20 20 15.52 20 10C20 4.48 15.52 0 10 0ZM10 3C11.66 3 13 4.34 13 6C13 7.66 11.66 9 10 9C8.34 9 7 7.66 7 6C7 4.34 8.34 3 10 3ZM10 17.2C7.5 17.2 5.29 15.92 4 13.98C4.03 11.99 8 10.9 10 10.9C11.99 10.9 15.97 11.99 16 13.98C14.71 15.92 12.5 17.2 10 17.2Z\" fill=\"currentColor\"/>\n</svg>\n </ic-chip>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render dismissible\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"Label\" dismissible=\"true\">\n <svg slot=\"icon\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M10 0C4.48 0 0 4.48 0 10C0 15.52 4.48 20 10 20C15.52 20 20 15.52 20 10C20 4.48 15.52 0 10 0ZM10 3C11.66 3 13 4.34 13 6C13 7.66 11.66 9 10 9C8.34 9 7 7.66 7 6C7 4.34 8.34 3 10 3ZM10 17.2C7.5 17.2 5.29 15.92 4 13.98C4.03 11.99 8 10.9 10 10.9C11.99 10.9 15.97 11.99 16 13.98C14.71 15.92 12.5 17.2 10 17.2Z\" fill=\"currentColor\"/>\n</svg>\n </ic-chip>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render disabled\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"Label\" dismissible=\"true\" disabled=\"true\">\n <svg slot=\"icon\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M10 0C4.48 0 0 4.48 0 10C0 15.52 4.48 20 10 20C15.52 20 20 15.52 20 10C20 4.48 15.52 0 10 0ZM10 3C11.66 3 13 4.34 13 6C13 7.66 11.66 9 10 9C8.34 9 7 7.66 7 6C7 4.34 8.34 3 10 3ZM10 17.2C7.5 17.2 5.29 15.92 4 13.98C4.03 11.99 8 10.9 10 10.9C11.99 10.9 15.97 11.99 16 13.98C14.71 15.92 12.5 17.2 10 17.2Z\" fill=\"currentColor\"/>\n</svg>\n </ic-chip>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render small\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"Label\" dismissible=\"true\" size=\"small\">\n <svg slot=\"icon\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M10 0C4.48 0 0 4.48 0 10C0 15.52 4.48 20 10 20C15.52 20 20 15.52 20 10C20 4.48 15.52 0 10 0ZM10 3C11.66 3 13 4.34 13 6C13 7.66 11.66 9 10 9C8.34 9 7 7.66 7 6C7 4.34 8.34 3 10 3ZM10 17.2C7.5 17.2 5.29 15.92 4 13.98C4.03 11.99 8 10.9 10 10.9C11.99 10.9 15.97 11.99 16 13.98C14.71 15.92 12.5 17.2 10 17.2Z\" fill=\"currentColor\"/>\n </svg>\n </ic-chip>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with custom colour\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"Label\" custom-color=\"#F8C8DC\">\n <svg slot=\"icon\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M10 0C4.48 0 0 4.48 0 10C0 15.52 4.48 20 10 20C15.52 20 20 15.52 20 10C20 4.48 15.52 0 10 0ZM10 3C11.66 3 13 4.34 13 6C13 7.66 11.66 9 10 9C8.34 9 7 7.66 7 6C7 4.34 8.34 3 10 3ZM10 17.2C7.5 17.2 5.29 15.92 4 13.98C4.03 11.99 8 10.9 10 10.9C11.99 10.9 15.97 11.99 16 13.98C14.71 15.92 12.5 17.2 10 17.2Z\" fill=\"currentColor\"/>\n</svg>\n</ic-chip>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with custom rgb colour\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"Label\" custom-color=\"rgb(248,200,220)\">\n <svg slot=\"icon\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M10 0C4.48 0 0 4.48 0 10C0 15.52 4.48 20 10 20C15.52 20 20 15.52 20 10C20 4.48 15.52 0 10 0ZM10 3C11.66 3 13 4.34 13 6C13 7.66 11.66 9 10 9C8.34 9 7 7.66 7 6C7 4.34 8.34 3 10 3ZM10 17.2C7.5 17.2 5.29 15.92 4 13.98C4.03 11.99 8 10.9 10 10.9C11.99 10.9 15.97 11.99 16 13.98C14.71 15.92 12.5 17.2 10 17.2Z\" fill=\"currentColor\"/>\n</svg>\n</ic-chip>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with custom colour that sets white foreground text\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"Label\" custom-color=\"#00008B\">\n <svg slot=\"icon\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M10 0C4.48 0 0 4.48 0 10C0 15.52 4.48 20 10 20C15.52 20 20 15.52 20 10C20 4.48 15.52 0 10 0ZM10 3C11.66 3 13 4.34 13 6C13 7.66 11.66 9 10 9C8.34 9 7 7.66 7 6C7 4.34 8.34 3 10 3ZM10 17.2C7.5 17.2 5.29 15.92 4 13.98C4.03 11.99 8 10.9 10 10.9C11.99 10.9 15.97 11.99 16 13.98C14.71 15.92 12.5 17.2 10 17.2Z\" fill=\"currentColor\"/>\n</svg>\n</ic-chip>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render outlined variant\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"Label\" variant=\"outlined\">\n </ic-chip>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render outlined variant with solid-background\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"Label\" variant=\"outlined\" transparent-background=\"false\">\n </ic-chip>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should apply 'hovered' style when cursor is on dismiss button\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip id=\"test-id\" label=\"Label\" dismissible=\"true\"></ic-chip>`,\n });\n\n expect(page.root).not.toBeNull;\n\n const chip = await document.getElementById(\"test-id\");\n\n const dismissButton = page.root.shadowRoot.querySelector(\"button\");\n\n await expect(chip.classList.contains(\"hovered\")).toBeFalsy;\n\n const event = new Event(\"mouseenter\", {\n bubbles: true,\n cancelable: true,\n });\n\n dismissButton.dispatchEvent(event);\n await page.waitForChanges();\n\n await expect(chip.classList.contains(\"hovered\")).toBeTruthy;\n });\n\n it(\"should lose 'hovered' style when cursor moves off dismiss button\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip id=\"test-id\" label=\"Label\" dismissible=\"true\"></ic-chip>`,\n });\n\n expect(page.root).not.toBeNull;\n\n const chip = await document.getElementById(\"test-id\");\n\n const dismissButton = page.root.shadowRoot.querySelector(\"button\");\n\n const enterEvent = new Event(\"mouseenter\", {\n bubbles: true,\n cancelable: true,\n });\n\n dismissButton.dispatchEvent(enterEvent);\n await page.waitForChanges();\n\n await expect(chip.classList.contains(\"hovered\")).toBeTruthy;\n\n const leaveEvent = new Event(\"mouseleave\", {\n bubbles: true,\n cancelable: true,\n });\n\n dismissButton.dispatchEvent(leaveEvent);\n\n await expect(chip.classList.contains(\"hovered\")).toBeFalsy;\n });\n\n it(\"should close on dismiss icon click\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"This is dismissible\" dismissible=\"true\"></ic-chip>`,\n });\n\n let chip = await page.root.shadowRoot.querySelector(\"div\");\n const dismissButton = await page.root.shadowRoot.querySelector(\"button\");\n\n expect(chip).not.toBeNull();\n expect(dismissButton).not.toBeNull();\n\n await dismissButton.click();\n\n await page.waitForChanges();\n chip = await page.root.shadowRoot.querySelector(\"div\");\n\n expect(chip).toBeNull();\n });\n\n it(\"should call 'setFocus' when chip is focused\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"This is dismissible\" dismissible=\"true\"></ic-chip>`,\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 switch custom colour after initial render\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"Default\" custom-color=\"#F8C8DC\"></ic-chip>`,\n });\n\n const chip = document.querySelector(\"ic-chip\");\n\n expect(page.rootInstance.customColor).toBe(\"#F8C8DC\");\n\n chip.customColor = \"#00008B\";\n await page.waitForChanges();\n\n expect(page.rootInstance.customColor).toBe(\"#00008B\");\n });\n\n it(\"should apply the correct class when in an AG Grid\", async () => {\n Object.defineProperty(helpers, \"isElInAGGrid\", {\n value: jest.fn().mockReturnValue(true),\n });\n\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"Default\"></ic-chip>`,\n });\n\n await page.waitForChanges();\n\n expect(page.rootInstance.inAGGrid).toBe(true);\n expect(\n page.root.shadowRoot\n .querySelector(\"ic-typography\")\n .classList.contains(\"in-ag-grid\")\n ).toBe(true);\n });\n});\n"]}
1
+ {"version":3,"file":"ic-chip.spec.js","sourceRoot":"","sources":["../../../../../src/components/ic-chip/test/basic/ic-chip.spec.ts"],"names":[],"mappings":"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","sourcesContent":["import { newSpecPage } from \"@stencil/core/testing\";\nimport { Chip } from \"../../ic-chip\";\nimport * as helpers from \"../../../../utils/helpers\";\n\ndescribe(\"ic-chip component renders label\", () => {\n it(\"should render static\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"Label\">\n <svg slot=\"icon\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M10 0C4.48 0 0 4.48 0 10C0 15.52 4.48 20 10 20C15.52 20 20 15.52 20 10C20 4.48 15.52 0 10 0ZM10 3C11.66 3 13 4.34 13 6C13 7.66 11.66 9 10 9C8.34 9 7 7.66 7 6C7 4.34 8.34 3 10 3ZM10 17.2C7.5 17.2 5.29 15.92 4 13.98C4.03 11.99 8 10.9 10 10.9C11.99 10.9 15.97 11.99 16 13.98C14.71 15.92 12.5 17.2 10 17.2Z\" fill=\"currentColor\"/>\n</svg>\n </ic-chip>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render dismissible\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"Label\" dismissible=\"true\">\n <svg slot=\"icon\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M10 0C4.48 0 0 4.48 0 10C0 15.52 4.48 20 10 20C15.52 20 20 15.52 20 10C20 4.48 15.52 0 10 0ZM10 3C11.66 3 13 4.34 13 6C13 7.66 11.66 9 10 9C8.34 9 7 7.66 7 6C7 4.34 8.34 3 10 3ZM10 17.2C7.5 17.2 5.29 15.92 4 13.98C4.03 11.99 8 10.9 10 10.9C11.99 10.9 15.97 11.99 16 13.98C14.71 15.92 12.5 17.2 10 17.2Z\" fill=\"currentColor\"/>\n</svg>\n </ic-chip>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render disabled\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"Label\" dismissible=\"true\" disabled=\"true\">\n <svg slot=\"icon\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M10 0C4.48 0 0 4.48 0 10C0 15.52 4.48 20 10 20C15.52 20 20 15.52 20 10C20 4.48 15.52 0 10 0ZM10 3C11.66 3 13 4.34 13 6C13 7.66 11.66 9 10 9C8.34 9 7 7.66 7 6C7 4.34 8.34 3 10 3ZM10 17.2C7.5 17.2 5.29 15.92 4 13.98C4.03 11.99 8 10.9 10 10.9C11.99 10.9 15.97 11.99 16 13.98C14.71 15.92 12.5 17.2 10 17.2Z\" fill=\"currentColor\"/>\n</svg>\n </ic-chip>`,\n });\n\n expect(page.root).toMatchSnapshot();\n\n page.rootInstance.disabled = false;\n\n await page.waitForChanges();\n expect(page.root).toMatchSnapshot(\"disabled-removed\");\n });\n\n it(\"should render small\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"Label\" dismissible=\"true\" size=\"small\">\n <svg slot=\"icon\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M10 0C4.48 0 0 4.48 0 10C0 15.52 4.48 20 10 20C15.52 20 20 15.52 20 10C20 4.48 15.52 0 10 0ZM10 3C11.66 3 13 4.34 13 6C13 7.66 11.66 9 10 9C8.34 9 7 7.66 7 6C7 4.34 8.34 3 10 3ZM10 17.2C7.5 17.2 5.29 15.92 4 13.98C4.03 11.99 8 10.9 10 10.9C11.99 10.9 15.97 11.99 16 13.98C14.71 15.92 12.5 17.2 10 17.2Z\" fill=\"currentColor\"/>\n </svg>\n </ic-chip>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with custom colour\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"Label\" custom-color=\"#F8C8DC\">\n <svg slot=\"icon\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M10 0C4.48 0 0 4.48 0 10C0 15.52 4.48 20 10 20C15.52 20 20 15.52 20 10C20 4.48 15.52 0 10 0ZM10 3C11.66 3 13 4.34 13 6C13 7.66 11.66 9 10 9C8.34 9 7 7.66 7 6C7 4.34 8.34 3 10 3ZM10 17.2C7.5 17.2 5.29 15.92 4 13.98C4.03 11.99 8 10.9 10 10.9C11.99 10.9 15.97 11.99 16 13.98C14.71 15.92 12.5 17.2 10 17.2Z\" fill=\"currentColor\"/>\n</svg>\n</ic-chip>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with custom rgb colour\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"Label\" custom-color=\"rgb(248,200,220)\">\n <svg slot=\"icon\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M10 0C4.48 0 0 4.48 0 10C0 15.52 4.48 20 10 20C15.52 20 20 15.52 20 10C20 4.48 15.52 0 10 0ZM10 3C11.66 3 13 4.34 13 6C13 7.66 11.66 9 10 9C8.34 9 7 7.66 7 6C7 4.34 8.34 3 10 3ZM10 17.2C7.5 17.2 5.29 15.92 4 13.98C4.03 11.99 8 10.9 10 10.9C11.99 10.9 15.97 11.99 16 13.98C14.71 15.92 12.5 17.2 10 17.2Z\" fill=\"currentColor\"/>\n</svg>\n</ic-chip>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with custom colour that sets white foreground text\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"Label\" custom-color=\"#00008B\">\n <svg slot=\"icon\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M10 0C4.48 0 0 4.48 0 10C0 15.52 4.48 20 10 20C15.52 20 20 15.52 20 10C20 4.48 15.52 0 10 0ZM10 3C11.66 3 13 4.34 13 6C13 7.66 11.66 9 10 9C8.34 9 7 7.66 7 6C7 4.34 8.34 3 10 3ZM10 17.2C7.5 17.2 5.29 15.92 4 13.98C4.03 11.99 8 10.9 10 10.9C11.99 10.9 15.97 11.99 16 13.98C14.71 15.92 12.5 17.2 10 17.2Z\" fill=\"currentColor\"/>\n</svg>\n</ic-chip>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render outlined variant\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"Label\" variant=\"outlined\">\n </ic-chip>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render outlined variant with solid-background\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"Label\" variant=\"outlined\" transparent-background=\"false\">\n </ic-chip>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should apply 'hovered' style when cursor is on dismiss button\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip id=\"test-id\" label=\"Label\" dismissible=\"true\"></ic-chip>`,\n });\n\n expect(page.root).not.toBeNull;\n\n const chip = await document.getElementById(\"test-id\");\n\n const dismissButton = page.root.shadowRoot.querySelector(\"button\");\n\n await expect(chip.classList.contains(\"hovered\")).toBeFalsy;\n\n const event = new Event(\"mouseenter\", {\n bubbles: true,\n cancelable: true,\n });\n\n dismissButton.dispatchEvent(event);\n await page.waitForChanges();\n\n await expect(chip.classList.contains(\"hovered\")).toBeTruthy;\n });\n\n it(\"should lose 'hovered' style when cursor moves off dismiss button\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip id=\"test-id\" label=\"Label\" dismissible=\"true\"></ic-chip>`,\n });\n\n expect(page.root).not.toBeNull;\n\n const chip = await document.getElementById(\"test-id\");\n\n const dismissButton = page.root.shadowRoot.querySelector(\"button\");\n\n const enterEvent = new Event(\"mouseenter\", {\n bubbles: true,\n cancelable: true,\n });\n\n dismissButton.dispatchEvent(enterEvent);\n await page.waitForChanges();\n\n await expect(chip.classList.contains(\"hovered\")).toBeTruthy;\n\n const leaveEvent = new Event(\"mouseleave\", {\n bubbles: true,\n cancelable: true,\n });\n\n dismissButton.dispatchEvent(leaveEvent);\n\n await expect(chip.classList.contains(\"hovered\")).toBeFalsy;\n });\n\n it(\"should close on dismiss icon click\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"This is dismissible\" dismissible=\"true\"></ic-chip>`,\n });\n\n let chip = await page.root.shadowRoot.querySelector(\"div\");\n const dismissButton = await page.root.shadowRoot.querySelector(\"button\");\n\n expect(chip).not.toBeNull();\n expect(dismissButton).not.toBeNull();\n\n await dismissButton.click();\n\n await page.waitForChanges();\n chip = await page.root.shadowRoot.querySelector(\"div\");\n\n expect(chip).toBeNull();\n });\n\n it(\"should call 'setFocus' when chip is focused\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"This is dismissible\" dismissible=\"true\"></ic-chip>`,\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 switch custom colour after initial render\", async () => {\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"Default\" custom-color=\"#F8C8DC\"></ic-chip>`,\n });\n\n const chip = document.querySelector(\"ic-chip\");\n\n expect(page.rootInstance.customColor).toBe(\"#F8C8DC\");\n\n chip.customColor = \"#00008B\";\n await page.waitForChanges();\n\n expect(page.rootInstance.customColor).toBe(\"#00008B\");\n });\n\n it(\"should apply the correct class when in an AG Grid\", async () => {\n Object.defineProperty(helpers, \"isElInAGGrid\", {\n value: jest.fn().mockReturnValue(true),\n });\n\n const page = await newSpecPage({\n components: [Chip],\n html: `<ic-chip label=\"Default\"></ic-chip>`,\n });\n\n await page.waitForChanges();\n\n expect(page.rootInstance.inAGGrid).toBe(true);\n expect(\n page.root.shadowRoot\n .querySelector(\"ic-typography\")\n .classList.contains(\"in-ag-grid\")\n ).toBe(true);\n });\n});\n"]}
@@ -1,8 +1,8 @@
1
1
  import { h, Host, } from "@stencil/core";
2
- import { getThemeForegroundColor, isPropDefined, slotHasContent, } from "../../utils/helpers";
2
+ import { getBrandForegroundAppearance, isPropDefined, slotHasContent, } from "../../utils/helpers";
3
3
  export class Divider {
4
4
  constructor() {
5
- this.foregroundColor = getThemeForegroundColor();
5
+ this.foregroundColor = getBrandForegroundAppearance();
6
6
  this.borderStyle = "solid";
7
7
  this.label = undefined;
8
8
  this.labelPlacement = "center";
@@ -11,7 +11,7 @@ export class Divider {
11
11
  this.theme = "inherit";
12
12
  this.weight = "thin";
13
13
  }
14
- themeChangeHandler(ev) {
14
+ brandChangeHandler(ev) {
15
15
  this.foregroundColor = ev.detail.mode;
16
16
  }
17
17
  updateMonochromeState() {
@@ -201,7 +201,7 @@ export class Divider {
201
201
  "type": "string",
202
202
  "mutable": true,
203
203
  "complexType": {
204
- "original": "IcThemeMode | IcThemeForeground",
204
+ "original": "IcThemeMode | IcBrandForeground",
205
205
  "resolved": "\"dark\" | \"default\" | \"inherit\" | \"light\"",
206
206
  "references": {
207
207
  "IcThemeMode": {
@@ -209,10 +209,10 @@ export class Divider {
209
209
  "path": "../../utils/types",
210
210
  "id": "src/utils/types.ts::IcThemeMode"
211
211
  },
212
- "IcThemeForeground": {
212
+ "IcBrandForeground": {
213
213
  "location": "import",
214
214
  "path": "../../utils/types",
215
- "id": "src/utils/types.ts::IcThemeForeground"
215
+ "id": "src/utils/types.ts::IcBrandForeground"
216
216
  }
217
217
  }
218
218
  },
@@ -260,8 +260,8 @@ export class Divider {
260
260
  static get elementRef() { return "el"; }
261
261
  static get listeners() {
262
262
  return [{
263
- "name": "themeChange",
264
- "method": "themeChangeHandler",
263
+ "name": "brandChange",
264
+ "method": "brandChangeHandler",
265
265
  "target": "document",
266
266
  "capture": false,
267
267
  "passive": false
@@ -1 +1 @@
1
- {"version":3,"file":"ic-divider.js","sourceRoot":"","sources":["../../../src/components/ic-divider/ic-divider.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n h,\n Component,\n Host,\n Listen,\n State,\n Prop,\n Element,\n} from \"@stencil/core\";\n\nimport {\n getThemeForegroundColor,\n isPropDefined,\n slotHasContent,\n} from \"../../utils/helpers\";\n\nimport {\n IcOrientation,\n IcThemeForeground,\n IcThemeMode,\n} from \"../../utils/types\";\n\nimport {\n IcDividerLabelPlacement,\n IcDividerStyles,\n IcDividerWeights,\n} from \"./ic-divider.types\";\n\n@Component({\n tag: \"ic-divider\",\n styleUrl: \"ic-divider.css\",\n scoped: true,\n})\nexport class Divider {\n @Element() el: HTMLIcDividerElement;\n\n @State() foregroundColor: IcThemeForeground = getThemeForegroundColor();\n\n /**\n * The line style of the divider.\n */\n @Prop() borderStyle: IcDividerStyles = \"solid\";\n\n /**\n * The label for the divider. The label placement will need to be set for the label to be displayed correctly.\n */\n @Prop() label?: string;\n\n /**\n * The position the label is placed on the divider. `Left` and `right` placement is only applicable when orientation is set to `horizontal`. `Top` and `bottom` placement is only applicable when orientation is set to `vertical`. `Center` placement is applicable for both orientations.\n */\n @Prop() labelPlacement?: IcDividerLabelPlacement = \"center\";\n\n /** If `true`, the divider will be displayed in a grey colour. */\n @Prop() monochrome?: boolean = false;\n\n /**\n * The orientation of the divider.\n */\n @Prop() orientation: IcOrientation = \"horizontal\";\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({ mutable: true }) theme?: IcThemeMode | IcThemeForeground = \"inherit\";\n\n /**\n * The thickness of the divider.\n */\n @Prop() weight: IcDividerWeights = \"thin\";\n\n @Listen(\"themeChange\", { target: \"document\" })\n themeChangeHandler(ev: CustomEvent): void {\n this.foregroundColor = ev.detail.mode;\n }\n\n private updateMonochromeState(): void {\n const isBottomSideNav =\n this.el.parentElement.classList.contains(\"bottom-side-nav\");\n const isBottomWrapper =\n this.el.parentElement.parentElement.classList.contains(\"bottom-wrapper\");\n\n if (\n this.el.parentElement.tagName === \"IC-SIDE-NAVIGATION\" ||\n (isBottomSideNav && isBottomWrapper)\n ) {\n this.el.classList.add(\"ic-side-navigation-keyline\");\n if (this.foregroundColor === \"light\") {\n this.theme = \"dark\";\n } else {\n this.theme = \"light\";\n }\n }\n }\n\n componentWillRender(): void {\n this.updateMonochromeState();\n }\n\n render() {\n const {\n borderStyle,\n label,\n labelPlacement,\n monochrome,\n orientation,\n weight,\n } = this;\n\n const { theme } = this;\n\n const invalidPropCombination = (\n placement: IcDividerLabelPlacement\n ): void => {\n console.error(\n `${\n placement.charAt(0).toUpperCase() + placement.slice(1)\n } label placement is not applicable for a ${orientation} ic-divider (web-components) / IcDivider (react)`\n );\n };\n\n if (\n ((labelPlacement === \"left\" || labelPlacement === \"right\") &&\n orientation === \"vertical\") ||\n ((labelPlacement === \"top\" || labelPlacement === \"bottom\") &&\n orientation === \"horizontal\")\n ) {\n invalidPropCombination(labelPlacement);\n }\n\n const getTypographyVariant = (weight: string) => {\n switch (weight) {\n case \"very-thick\":\n return \"h4\";\n case \"thick\":\n return \"subtitle-large\";\n default:\n return \"label\";\n }\n };\n\n const renderLabel = () => {\n if (slotHasContent(this.el, \"label\")) {\n return (\n <div class=\"ic-divider-label-container\">\n <slot name=\"label\"></slot>\n </div>\n );\n } else if (isPropDefined(label)) {\n return (\n <ic-typography\n class=\"ic-divider-label\"\n variant={getTypographyVariant(weight)}\n >\n <p>{label}</p>\n </ic-typography>\n );\n }\n return null;\n };\n\n return (\n <Host\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n [`ic-divider-monochrome`]: monochrome,\n [`ic-divider-${orientation}`]: true,\n [`ic-divider-${weight}`]: true,\n [`ic-divider-${borderStyle}`]: true,\n }}\n {...((orientation === \"vertical\" ||\n (!!renderLabel() && !!isPropDefined(labelPlacement))) && {\n \"aria-orientation\": orientation,\n role: \"separator\",\n })}\n >\n {orientation === \"horizontal\" &&\n (!renderLabel() || !isPropDefined(labelPlacement)) && <hr />}\n {!!isPropDefined(labelPlacement) && !!renderLabel() && renderLabel()}\n {orientation === \"vertical\" &&\n (!renderLabel() || !isPropDefined(labelPlacement)) && (\n <div class=\"vertical-divider\"></div>\n )}\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ic-divider.js","sourceRoot":"","sources":["../../../src/components/ic-divider/ic-divider.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n h,\n Component,\n Host,\n Listen,\n State,\n Prop,\n Element,\n} from \"@stencil/core\";\n\nimport {\n getBrandForegroundAppearance,\n isPropDefined,\n slotHasContent,\n} from \"../../utils/helpers\";\n\nimport {\n IcBrand,\n IcOrientation,\n IcBrandForeground,\n IcThemeMode,\n} from \"../../utils/types\";\n\nimport {\n IcDividerLabelPlacement,\n IcDividerStyles,\n IcDividerWeights,\n} from \"./ic-divider.types\";\n\n@Component({\n tag: \"ic-divider\",\n styleUrl: \"ic-divider.css\",\n scoped: true,\n})\nexport class Divider {\n @Element() el: HTMLIcDividerElement;\n\n @State() foregroundColor: IcBrandForeground = getBrandForegroundAppearance();\n\n /**\n * The line style of the divider.\n */\n @Prop() borderStyle: IcDividerStyles = \"solid\";\n\n /**\n * The label for the divider. The label placement will need to be set for the label to be displayed correctly.\n */\n @Prop() label?: string;\n\n /**\n * The position the label is placed on the divider. `Left` and `right` placement is only applicable when orientation is set to `horizontal`. `Top` and `bottom` placement is only applicable when orientation is set to `vertical`. `Center` placement is applicable for both orientations.\n */\n @Prop() labelPlacement?: IcDividerLabelPlacement = \"center\";\n\n /** If `true`, the divider will be displayed in a grey colour. */\n @Prop() monochrome?: boolean = false;\n\n /**\n * The orientation of the divider.\n */\n @Prop() orientation: IcOrientation = \"horizontal\";\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({ mutable: true }) theme?: IcThemeMode | IcBrandForeground = \"inherit\";\n\n /**\n * The thickness of the divider.\n */\n @Prop() weight: IcDividerWeights = \"thin\";\n\n @Listen(\"brandChange\", { target: \"document\" })\n brandChangeHandler(ev: CustomEvent<IcBrand>): void {\n this.foregroundColor = ev.detail.mode;\n }\n\n private updateMonochromeState(): void {\n const isBottomSideNav =\n this.el.parentElement.classList.contains(\"bottom-side-nav\");\n const isBottomWrapper =\n this.el.parentElement.parentElement.classList.contains(\"bottom-wrapper\");\n\n if (\n this.el.parentElement.tagName === \"IC-SIDE-NAVIGATION\" ||\n (isBottomSideNav && isBottomWrapper)\n ) {\n this.el.classList.add(\"ic-side-navigation-keyline\");\n if (this.foregroundColor === \"light\") {\n this.theme = \"dark\";\n } else {\n this.theme = \"light\";\n }\n }\n }\n\n componentWillRender(): void {\n this.updateMonochromeState();\n }\n\n render() {\n const {\n borderStyle,\n label,\n labelPlacement,\n monochrome,\n orientation,\n weight,\n } = this;\n\n const { theme } = this;\n\n const invalidPropCombination = (\n placement: IcDividerLabelPlacement\n ): void => {\n console.error(\n `${\n placement.charAt(0).toUpperCase() + placement.slice(1)\n } label placement is not applicable for a ${orientation} ic-divider (web-components) / IcDivider (react)`\n );\n };\n\n if (\n ((labelPlacement === \"left\" || labelPlacement === \"right\") &&\n orientation === \"vertical\") ||\n ((labelPlacement === \"top\" || labelPlacement === \"bottom\") &&\n orientation === \"horizontal\")\n ) {\n invalidPropCombination(labelPlacement);\n }\n\n const getTypographyVariant = (weight: string) => {\n switch (weight) {\n case \"very-thick\":\n return \"h4\";\n case \"thick\":\n return \"subtitle-large\";\n default:\n return \"label\";\n }\n };\n\n const renderLabel = () => {\n if (slotHasContent(this.el, \"label\")) {\n return (\n <div class=\"ic-divider-label-container\">\n <slot name=\"label\"></slot>\n </div>\n );\n } else if (isPropDefined(label)) {\n return (\n <ic-typography\n class=\"ic-divider-label\"\n variant={getTypographyVariant(weight)}\n >\n <p>{label}</p>\n </ic-typography>\n );\n }\n return null;\n };\n\n return (\n <Host\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n [`ic-divider-monochrome`]: monochrome,\n [`ic-divider-${orientation}`]: true,\n [`ic-divider-${weight}`]: true,\n [`ic-divider-${borderStyle}`]: true,\n }}\n {...((orientation === \"vertical\" ||\n (!!renderLabel() && !!isPropDefined(labelPlacement))) && {\n \"aria-orientation\": orientation,\n role: \"separator\",\n })}\n >\n {orientation === \"horizontal\" &&\n (!renderLabel() || !isPropDefined(labelPlacement)) && <hr />}\n {!!isPropDefined(labelPlacement) && !!renderLabel() && renderLabel()}\n {orientation === \"vertical\" &&\n (!renderLabel() || !isPropDefined(labelPlacement)) && (\n <div class=\"vertical-divider\"></div>\n )}\n </Host>\n );\n }\n}\n"]}
@@ -56,7 +56,7 @@ describe("ic-divider", () => {
56
56
  await page.waitForChanges();
57
57
  expect(console.error).toHaveBeenCalledWith("Left label placement is not applicable for a vertical ic-divider (web-components) / IcDivider (react)");
58
58
  });
59
- it("correctly sets foregroundColor on theme change", async () => {
59
+ it("correctly sets foregroundColor on brand change", async () => {
60
60
  const page = await newSpecPage({
61
61
  components: [Divider],
62
62
  html: `<ic-side-navigation version="v0.0.0" status="BETA" app-title="ACME">
@@ -95,15 +95,15 @@ describe("ic-divider", () => {
95
95
  });
96
96
  expect(page.rootInstance.foregroundColor).toEqual("light");
97
97
  expect(page.rootInstance.theme).toEqual("dark");
98
- expect(page.root).toMatchSnapshot("theme-change-light");
99
- await page.rootInstance.themeChangeHandler({
98
+ expect(page.root).toMatchSnapshot("brand-change-light");
99
+ await page.rootInstance.brandChangeHandler({
100
100
  detail: { mode: "dark" },
101
101
  });
102
102
  await page.rootInstance.updateMonochromeState();
103
103
  await page.waitForChanges();
104
104
  expect(page.rootInstance.foregroundColor).toEqual("dark");
105
105
  expect(page.rootInstance.theme).toEqual("light");
106
- expect(page.root).toMatchSnapshot("theme-change-dark");
106
+ expect(page.root).toMatchSnapshot("brand-change-dark");
107
107
  });
108
108
  });
109
109
  //# sourceMappingURL=ic-divider.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ic-divider.spec.js","sourceRoot":"","sources":["../../../../../src/components/ic-divider/test/basic/ic-divider.spec.ts"],"names":[],"mappings":"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","sourcesContent":["import { newSpecPage } from \"@stencil/core/testing\";\nimport { Divider } from \"../../ic-divider\";\nimport { Typography } from \"../../../ic-typography/ic-typography\";\n\ndescribe(\"ic-divider\", () => {\n it(\"should render\", async () => {\n const page = await newSpecPage({\n components: [Divider],\n html: `<ic-divider></ic-divider>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a slotted label\", async () => {\n const page = await newSpecPage({\n components: [Divider],\n html: `<ic-divider label-placement=\"left\">\n <ic-typography variant=\"label\" slot=\"label\">\n <p style=\"width: max-content;\">Slotted label left</p>\n </ic-typography>\n </ic-divider>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render a label with the label typography variant when weight is not set to thick or very-thick and a label is provided\", async () => {\n const page = await newSpecPage({\n components: [Divider, Typography],\n html: `<ic-divider weight=\"medium\" label=\"Test label\"></ic-divider>`,\n });\n\n const label = page.root.querySelector(\"ic-typography\");\n\n expect(label.variant).toBe(\"label\");\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render a label with the subtitle-large typography variant when weight is set to thick and a label is provided\", async () => {\n const page = await newSpecPage({\n components: [Divider, Typography],\n html: `<ic-divider weight=\"thick\" label=\"Test label\"></ic-divider>`,\n });\n\n const label = page.root.querySelector(\"ic-typography\");\n\n expect(label.variant).toBe(\"subtitle-large\");\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render a label with the h4 typography variant when weight is set to very-thick and a label is provided\", async () => {\n const page = await newSpecPage({\n components: [Divider, Typography],\n html: `<ic-divider weight=\"very-thick\" label=\"Test label\"></ic-divider>`,\n });\n\n const label = page.root.querySelector(\"ic-typography\");\n\n expect(label.variant).toBe(\"h4\");\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should console error if there's an invalid prop combination of the placement prop and the orientation\", async () => {\n console.error = jest.fn();\n const page = await newSpecPage({\n components: [Divider],\n html: `<ic-divider orientation=\"vertical\" label-placement=\"left\" label=\"Test label\"></ic-divider>`,\n });\n\n await page.waitForChanges();\n\n expect(console.error).toHaveBeenCalledWith(\n \"Left label placement is not applicable for a vertical ic-divider (web-components) / IcDivider (react)\"\n );\n });\n\n it(\"correctly sets foregroundColor on theme change\", async () => {\n const page = await newSpecPage({\n components: [Divider],\n html: `<ic-side-navigation version=\"v0.0.0\" status=\"BETA\" app-title=\"ACME\">\n <ic-navigation-item slot=\"primary-navigation\" href=\"/\" label=\"Home\">\n <svg\n slot=\"icon\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M12 6.19L17 10.69V18.5H15V12.5H9V18.5H7V10.69L12 6.19ZM12 3.5L2 12.5H5V20.5H11V14.5H13V20.5H19V12.5H22L12 3.5Z\"\n fill=\"currentColor\"\n />\n </svg>\n </ic-navigation-item>\n <ic-divider slot=\"primary-navigation\"></ic-divider>\n <ic-navigation-item slot=\"primary-navigation\" href=\"/\" label=\"a11y\">\n <svg\n slot=\"icon\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M12 2C13.1 2 14 2.9 14 4C14 5.1 13.1 6 12 6C10.9 6 10 5.1 10 4C10 2.9 10.9 2 12 2ZM21 9H15V22H13V16H11V22H9V9H3V7H21V9Z\"\n fill=\"currentColor\"\n />\n </svg>\n </ic-navigation-item>\n </ic-side-navigation>`,\n });\n\n expect(page.rootInstance.foregroundColor).toEqual(\"light\");\n expect(page.rootInstance.theme).toEqual(\"dark\");\n\n expect(page.root).toMatchSnapshot(\"theme-change-light\");\n\n await page.rootInstance.themeChangeHandler({\n detail: { mode: \"dark\" },\n });\n\n await page.rootInstance.updateMonochromeState();\n await page.waitForChanges();\n\n expect(page.rootInstance.foregroundColor).toEqual(\"dark\");\n expect(page.rootInstance.theme).toEqual(\"light\");\n\n expect(page.root).toMatchSnapshot(\"theme-change-dark\");\n });\n});\n"]}
1
+ {"version":3,"file":"ic-divider.spec.js","sourceRoot":"","sources":["../../../../../src/components/ic-divider/test/basic/ic-divider.spec.ts"],"names":[],"mappings":"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","sourcesContent":["import { newSpecPage } from \"@stencil/core/testing\";\nimport { Divider } from \"../../ic-divider\";\nimport { Typography } from \"../../../ic-typography/ic-typography\";\n\ndescribe(\"ic-divider\", () => {\n it(\"should render\", async () => {\n const page = await newSpecPage({\n components: [Divider],\n html: `<ic-divider></ic-divider>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a slotted label\", async () => {\n const page = await newSpecPage({\n components: [Divider],\n html: `<ic-divider label-placement=\"left\">\n <ic-typography variant=\"label\" slot=\"label\">\n <p style=\"width: max-content;\">Slotted label left</p>\n </ic-typography>\n </ic-divider>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render a label with the label typography variant when weight is not set to thick or very-thick and a label is provided\", async () => {\n const page = await newSpecPage({\n components: [Divider, Typography],\n html: `<ic-divider weight=\"medium\" label=\"Test label\"></ic-divider>`,\n });\n\n const label = page.root.querySelector(\"ic-typography\");\n\n expect(label.variant).toBe(\"label\");\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render a label with the subtitle-large typography variant when weight is set to thick and a label is provided\", async () => {\n const page = await newSpecPage({\n components: [Divider, Typography],\n html: `<ic-divider weight=\"thick\" label=\"Test label\"></ic-divider>`,\n });\n\n const label = page.root.querySelector(\"ic-typography\");\n\n expect(label.variant).toBe(\"subtitle-large\");\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render a label with the h4 typography variant when weight is set to very-thick and a label is provided\", async () => {\n const page = await newSpecPage({\n components: [Divider, Typography],\n html: `<ic-divider weight=\"very-thick\" label=\"Test label\"></ic-divider>`,\n });\n\n const label = page.root.querySelector(\"ic-typography\");\n\n expect(label.variant).toBe(\"h4\");\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should console error if there's an invalid prop combination of the placement prop and the orientation\", async () => {\n console.error = jest.fn();\n const page = await newSpecPage({\n components: [Divider],\n html: `<ic-divider orientation=\"vertical\" label-placement=\"left\" label=\"Test label\"></ic-divider>`,\n });\n\n await page.waitForChanges();\n\n expect(console.error).toHaveBeenCalledWith(\n \"Left label placement is not applicable for a vertical ic-divider (web-components) / IcDivider (react)\"\n );\n });\n\n it(\"correctly sets foregroundColor on brand change\", async () => {\n const page = await newSpecPage({\n components: [Divider],\n html: `<ic-side-navigation version=\"v0.0.0\" status=\"BETA\" app-title=\"ACME\">\n <ic-navigation-item slot=\"primary-navigation\" href=\"/\" label=\"Home\">\n <svg\n slot=\"icon\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M12 6.19L17 10.69V18.5H15V12.5H9V18.5H7V10.69L12 6.19ZM12 3.5L2 12.5H5V20.5H11V14.5H13V20.5H19V12.5H22L12 3.5Z\"\n fill=\"currentColor\"\n />\n </svg>\n </ic-navigation-item>\n <ic-divider slot=\"primary-navigation\"></ic-divider>\n <ic-navigation-item slot=\"primary-navigation\" href=\"/\" label=\"a11y\">\n <svg\n slot=\"icon\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M12 2C13.1 2 14 2.9 14 4C14 5.1 13.1 6 12 6C10.9 6 10 5.1 10 4C10 2.9 10.9 2 12 2ZM21 9H15V22H13V16H11V22H9V9H3V7H21V9Z\"\n fill=\"currentColor\"\n />\n </svg>\n </ic-navigation-item>\n </ic-side-navigation>`,\n });\n\n expect(page.rootInstance.foregroundColor).toEqual(\"light\");\n expect(page.rootInstance.theme).toEqual(\"dark\");\n\n expect(page.root).toMatchSnapshot(\"brand-change-light\");\n\n await page.rootInstance.brandChangeHandler({\n detail: { mode: \"dark\" },\n });\n\n await page.rootInstance.updateMonochromeState();\n await page.waitForChanges();\n\n expect(page.rootInstance.foregroundColor).toEqual(\"dark\");\n expect(page.rootInstance.theme).toEqual(\"light\");\n\n expect(page.root).toMatchSnapshot(\"brand-change-dark\");\n });\n});\n"]}