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

Sign up to get free protection for your applications and to get access to all the features.
Files changed (523) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/ic-accordion.cjs.entry.js +1 -1
  3. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  4. package/dist/cjs/ic-alert.cjs.entry.js +1 -1
  5. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  6. package/dist/cjs/ic-badge.cjs.entry.js +1 -1
  7. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ic-breadcrumb.cjs.entry.js +1 -1
  9. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ic-button_3.cjs.entry.js +16 -15
  11. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ic-card-vertical.cjs.entry.js +1 -1
  13. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ic-checkbox-group.cjs.entry.js +1 -1
  15. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  16. package/dist/cjs/ic-checkbox.cjs.entry.js +1 -1
  17. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ic-chip.cjs.entry.js +20 -13
  19. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  20. package/dist/cjs/ic-classification-banner.cjs.entry.js +1 -1
  21. package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
  22. package/dist/cjs/ic-divider.cjs.entry.js +1 -1
  23. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  24. package/dist/cjs/ic-footer-link-group.cjs.entry.js +1 -1
  25. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  26. package/dist/cjs/ic-footer-link.cjs.entry.js +1 -1
  27. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  28. package/dist/cjs/ic-footer.cjs.entry.js +1 -1
  29. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  30. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +1 -1
  31. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  32. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +2 -2
  33. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  34. package/dist/cjs/ic-input-label_2.cjs.entry.js +2 -2
  35. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  36. package/dist/cjs/ic-link.cjs.entry.js +1 -1
  37. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  38. package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
  39. package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
  40. package/dist/cjs/ic-menu-item.cjs.entry.js +1 -1
  41. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  42. package/dist/cjs/ic-navigation-group.cjs.entry.js +1 -1
  43. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  44. package/dist/cjs/ic-navigation-item.cjs.entry.js +1 -1
  45. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ic-navigation-menu.cjs.entry.js +1 -1
  47. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  48. package/dist/cjs/ic-pagination-item.cjs.entry.js +1 -1
  49. package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -1
  50. package/dist/cjs/ic-popover-menu.cjs.entry.js +19 -13
  51. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  52. package/dist/cjs/ic-radio-group.cjs.entry.js +18 -8
  53. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  54. package/dist/cjs/ic-radio-option.cjs.entry.js +1 -1
  55. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  56. package/dist/cjs/ic-search-bar.cjs.entry.js +11 -24
  57. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  58. package/dist/cjs/ic-select.cjs.entry.js +3 -3
  59. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ic-side-navigation.cjs.entry.js +1 -1
  61. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  62. package/dist/cjs/ic-skeleton.cjs.entry.js +4 -4
  63. package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
  64. package/dist/cjs/ic-status-tag.cjs.entry.js +1 -1
  65. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  66. package/dist/cjs/ic-step.cjs.entry.js +3 -4
  67. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  68. package/dist/cjs/ic-stepper.cjs.entry.js +11 -1
  69. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ic-switch.cjs.entry.js +1 -1
  71. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  72. package/dist/cjs/ic-tab-context.cjs.entry.js +58 -122
  73. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  74. package/dist/cjs/ic-tab-panel.cjs.entry.js +1 -1
  75. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  76. package/dist/cjs/ic-tab.cjs.entry.js +5 -6
  77. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  78. package/dist/cjs/ic-text-field.cjs.entry.js +2 -2
  79. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  80. package/dist/cjs/ic-toast.cjs.entry.js +2 -2
  81. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  82. package/dist/cjs/ic-toggle-button.cjs.entry.js +1 -1
  83. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  84. package/dist/cjs/ic-top-navigation.cjs.entry.js +1 -1
  85. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  86. package/dist/cjs/ic-typography.cjs.entry.js +4 -2
  87. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  88. package/dist/cjs/loader.cjs.js +1 -1
  89. package/dist/collection/components/ic-accordion/ic-accordion.css +3 -3
  90. package/dist/collection/components/ic-alert/ic-alert.css +17 -12
  91. package/dist/collection/components/ic-badge/ic-badge.css +2 -2
  92. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.css +1 -1
  93. package/dist/collection/components/ic-button/ic-button.css +30 -33
  94. package/dist/collection/components/ic-button/ic-button.js +5 -6
  95. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  96. package/dist/collection/components/ic-card-vertical/ic-card-vertical.css +9 -9
  97. package/dist/collection/components/ic-checkbox/ic-checkbox.css +4 -4
  98. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.css +2 -2
  99. package/dist/collection/components/ic-chip/ic-chip.css +64 -49
  100. package/dist/collection/components/ic-chip/ic-chip.js +41 -15
  101. package/dist/collection/components/ic-chip/ic-chip.js.map +1 -1
  102. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js +16 -0
  103. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js.map +1 -1
  104. package/dist/collection/components/ic-classification-banner/ic-classification-banner.css +25 -9
  105. package/dist/collection/components/ic-divider/ic-divider.css +2 -2
  106. package/dist/collection/components/ic-footer/ic-footer.css +3 -3
  107. package/dist/collection/components/ic-footer-link/ic-footer-link.css +4 -4
  108. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.css +4 -4
  109. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.css +3 -3
  110. package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +9 -9
  111. package/dist/collection/components/ic-input-label/ic-input-label.css +5 -5
  112. package/dist/collection/components/ic-input-validation/ic-input-validation.css +3 -3
  113. package/dist/collection/components/ic-link/ic-link.css +1 -1
  114. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.css +14 -10
  115. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +50 -31
  116. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js.map +1 -1
  117. package/dist/collection/components/ic-menu/ic-menu.css +9 -9
  118. package/dist/collection/components/ic-menu-group/ic-menu-group.css +1 -1
  119. package/dist/collection/components/ic-menu-item/ic-menu-item.css +11 -11
  120. package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +2 -2
  121. package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +8 -8
  122. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.css +2 -2
  123. package/dist/collection/components/ic-pagination-item/ic-pagination-item.css +5 -5
  124. package/dist/collection/components/ic-popover-menu/ic-popover-menu.css +3 -3
  125. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +45 -12
  126. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js.map +1 -1
  127. package/dist/collection/components/ic-radio-group/ic-radio-group.css +1 -1
  128. package/dist/collection/components/ic-radio-group/ic-radio-group.js +17 -7
  129. package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
  130. package/dist/collection/components/ic-radio-option/ic-radio-option.css +3 -3
  131. package/dist/collection/components/ic-search-bar/ic-search-bar.css +5 -5
  132. package/dist/collection/components/ic-search-bar/ic-search-bar.js +10 -23
  133. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  134. package/dist/collection/components/ic-select/ic-select.css +9 -9
  135. package/dist/collection/components/ic-select/ic-select.js +2 -2
  136. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  137. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +8 -8
  138. package/dist/collection/components/ic-skeleton/ic-skeleton.css +4 -27
  139. package/dist/collection/components/ic-skeleton/ic-skeleton.js +16 -10
  140. package/dist/collection/components/ic-skeleton/ic-skeleton.js.map +1 -1
  141. package/dist/collection/components/ic-status-tag/ic-status-tag.css +1 -1
  142. package/dist/collection/components/ic-step/ic-step.css +65 -98
  143. package/dist/collection/components/ic-step/ic-step.js +29 -3
  144. package/dist/collection/components/ic-step/ic-step.js.map +1 -1
  145. package/dist/collection/components/ic-stepper/ic-stepper.js +37 -19
  146. package/dist/collection/components/ic-stepper/ic-stepper.js.map +1 -1
  147. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js +4 -4
  148. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js.map +1 -1
  149. package/dist/collection/components/ic-switch/ic-switch.css +2 -2
  150. package/dist/collection/components/ic-tab/ic-tab.js +5 -6
  151. package/dist/collection/components/ic-tab/ic-tab.js.map +1 -1
  152. package/dist/collection/components/ic-tab-context/ic-tab-context.js +58 -122
  153. package/dist/collection/components/ic-tab-context/ic-tab-context.js.map +1 -1
  154. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js +2 -2
  155. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js.map +1 -1
  156. package/dist/collection/components/ic-tab-panel/ic-tab-panel.css +1 -1
  157. package/dist/collection/components/ic-text-field/ic-text-field.css +6 -6
  158. package/dist/collection/components/ic-text-field/ic-text-field.js +1 -1
  159. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  160. package/dist/collection/components/ic-toast/ic-toast.css +9 -4
  161. package/dist/collection/components/ic-toast/ic-toast.js +1 -1
  162. package/dist/collection/components/ic-toast/ic-toast.js.map +1 -1
  163. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js +1 -1
  164. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js.map +1 -1
  165. package/dist/collection/components/ic-toggle-button/ic-toggle-button.css +8 -8
  166. package/dist/collection/components/ic-tooltip/ic-tooltip.css +7 -1
  167. package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +6 -6
  168. package/dist/collection/components/ic-typography/ic-typography.css +3 -3
  169. package/dist/collection/components/ic-typography/ic-typography.js +3 -1
  170. package/dist/collection/components/ic-typography/ic-typography.js.map +1 -1
  171. package/dist/components/ic-accordion.js +1 -1
  172. package/dist/components/ic-accordion.js.map +1 -1
  173. package/dist/components/ic-alert.js +1 -1
  174. package/dist/components/ic-alert.js.map +1 -1
  175. package/dist/components/ic-badge.js +1 -1
  176. package/dist/components/ic-badge.js.map +1 -1
  177. package/dist/components/ic-breadcrumb2.js +1 -1
  178. package/dist/components/ic-breadcrumb2.js.map +1 -1
  179. package/dist/components/ic-button2.js +6 -7
  180. package/dist/components/ic-button2.js.map +1 -1
  181. package/dist/components/ic-card-vertical.js +1 -1
  182. package/dist/components/ic-card-vertical.js.map +1 -1
  183. package/dist/components/ic-checkbox-group.js +1 -1
  184. package/dist/components/ic-checkbox-group.js.map +1 -1
  185. package/dist/components/ic-checkbox.js +1 -1
  186. package/dist/components/ic-checkbox.js.map +1 -1
  187. package/dist/components/ic-chip.js +23 -14
  188. package/dist/components/ic-chip.js.map +1 -1
  189. package/dist/components/ic-classification-banner.js +1 -1
  190. package/dist/components/ic-classification-banner.js.map +1 -1
  191. package/dist/components/ic-divider2.js +1 -1
  192. package/dist/components/ic-divider2.js.map +1 -1
  193. package/dist/components/ic-footer-link-group.js +1 -1
  194. package/dist/components/ic-footer-link-group.js.map +1 -1
  195. package/dist/components/ic-footer-link.js +1 -1
  196. package/dist/components/ic-footer-link.js.map +1 -1
  197. package/dist/components/ic-footer.js +1 -1
  198. package/dist/components/ic-footer.js.map +1 -1
  199. package/dist/components/ic-horizontal-scroll2.js +1 -1
  200. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  201. package/dist/components/ic-input-component-container2.js +1 -1
  202. package/dist/components/ic-input-component-container2.js.map +1 -1
  203. package/dist/components/ic-input-label2.js +1 -1
  204. package/dist/components/ic-input-label2.js.map +1 -1
  205. package/dist/components/ic-input-validation2.js +1 -1
  206. package/dist/components/ic-input-validation2.js.map +1 -1
  207. package/dist/components/ic-link2.js +1 -1
  208. package/dist/components/ic-link2.js.map +1 -1
  209. package/dist/components/ic-loading-indicator2.js +11 -9
  210. package/dist/components/ic-loading-indicator2.js.map +1 -1
  211. package/dist/components/ic-menu-group.js +1 -1
  212. package/dist/components/ic-menu-group.js.map +1 -1
  213. package/dist/components/ic-menu-item2.js +1 -1
  214. package/dist/components/ic-menu-item2.js.map +1 -1
  215. package/dist/components/ic-menu2.js +1 -1
  216. package/dist/components/ic-menu2.js.map +1 -1
  217. package/dist/components/ic-navigation-group.js +1 -1
  218. package/dist/components/ic-navigation-group.js.map +1 -1
  219. package/dist/components/ic-navigation-item.js +1 -1
  220. package/dist/components/ic-navigation-item.js.map +1 -1
  221. package/dist/components/ic-navigation-menu2.js +1 -1
  222. package/dist/components/ic-navigation-menu2.js.map +1 -1
  223. package/dist/components/ic-pagination-item2.js +1 -1
  224. package/dist/components/ic-pagination-item2.js.map +1 -1
  225. package/dist/components/ic-popover-menu.js +21 -14
  226. package/dist/components/ic-popover-menu.js.map +1 -1
  227. package/dist/components/ic-radio-group.js +18 -8
  228. package/dist/components/ic-radio-group.js.map +1 -1
  229. package/dist/components/ic-radio-option.js +1 -1
  230. package/dist/components/ic-radio-option.js.map +1 -1
  231. package/dist/components/ic-search-bar.js +11 -24
  232. package/dist/components/ic-search-bar.js.map +1 -1
  233. package/dist/components/ic-select.js +3 -3
  234. package/dist/components/ic-select.js.map +1 -1
  235. package/dist/components/ic-side-navigation.js +1 -1
  236. package/dist/components/ic-side-navigation.js.map +1 -1
  237. package/dist/components/ic-skeleton.js +5 -5
  238. package/dist/components/ic-skeleton.js.map +1 -1
  239. package/dist/components/ic-status-tag.js +1 -1
  240. package/dist/components/ic-status-tag.js.map +1 -1
  241. package/dist/components/ic-step.js +4 -4
  242. package/dist/components/ic-step.js.map +1 -1
  243. package/dist/components/ic-stepper.js +13 -2
  244. package/dist/components/ic-stepper.js.map +1 -1
  245. package/dist/components/ic-switch.js +1 -1
  246. package/dist/components/ic-switch.js.map +1 -1
  247. package/dist/components/ic-tab-context.js +58 -122
  248. package/dist/components/ic-tab-context.js.map +1 -1
  249. package/dist/components/ic-tab-panel.js +1 -1
  250. package/dist/components/ic-tab-panel.js.map +1 -1
  251. package/dist/components/ic-tab.js +5 -6
  252. package/dist/components/ic-tab.js.map +1 -1
  253. package/dist/components/ic-text-field2.js +2 -2
  254. package/dist/components/ic-text-field2.js.map +1 -1
  255. package/dist/components/ic-toast.js +2 -2
  256. package/dist/components/ic-toast.js.map +1 -1
  257. package/dist/components/ic-toggle-button.js +1 -1
  258. package/dist/components/ic-toggle-button.js.map +1 -1
  259. package/dist/components/ic-tooltip2.js +1 -1
  260. package/dist/components/ic-tooltip2.js.map +1 -1
  261. package/dist/components/ic-top-navigation.js +1 -1
  262. package/dist/components/ic-top-navigation.js.map +1 -1
  263. package/dist/components/ic-typography2.js +4 -2
  264. package/dist/components/ic-typography2.js.map +1 -1
  265. package/dist/core/core.css +91 -37
  266. package/dist/core/core.esm.js +1 -1
  267. package/dist/core/core.esm.js.map +1 -1
  268. package/dist/core/{p-c81109da.entry.js → p-0a808ec3.entry.js} +2 -2
  269. package/dist/core/p-0a808ec3.entry.js.map +1 -0
  270. package/dist/core/p-0c872824.entry.js +2 -0
  271. package/dist/core/{p-c6795377.entry.js.map → p-0c872824.entry.js.map} +1 -1
  272. package/dist/core/p-0d30ffab.entry.js +2 -0
  273. package/dist/core/p-0d30ffab.entry.js.map +1 -0
  274. package/dist/core/p-0fb047e7.entry.js +2 -0
  275. package/dist/core/p-0fb047e7.entry.js.map +1 -0
  276. package/dist/core/p-1684c8d4.entry.js +2 -0
  277. package/dist/core/p-1684c8d4.entry.js.map +1 -0
  278. package/dist/core/p-1b573920.entry.js +2 -0
  279. package/dist/core/p-1b573920.entry.js.map +1 -0
  280. package/dist/core/p-1f1758a9.entry.js +2 -0
  281. package/dist/core/p-1f1758a9.entry.js.map +1 -0
  282. package/dist/core/p-244d6dba.entry.js +2 -0
  283. package/dist/core/p-244d6dba.entry.js.map +1 -0
  284. package/dist/core/{p-54238d16.entry.js → p-27274ca8.entry.js} +2 -2
  285. package/dist/core/p-27274ca8.entry.js.map +1 -0
  286. package/dist/core/p-322edabc.entry.js +2 -0
  287. package/dist/core/p-322edabc.entry.js.map +1 -0
  288. package/dist/core/{p-5a2630fb.entry.js → p-34db8aaf.entry.js} +2 -2
  289. package/dist/core/{p-5a2630fb.entry.js.map → p-34db8aaf.entry.js.map} +1 -1
  290. package/dist/core/{p-1e802eeb.entry.js → p-4055f22c.entry.js} +2 -2
  291. package/dist/core/{p-1e802eeb.entry.js.map → p-4055f22c.entry.js.map} +1 -1
  292. package/dist/core/p-408344d3.entry.js +2 -0
  293. package/dist/core/p-408344d3.entry.js.map +1 -0
  294. package/dist/core/p-4502d3c1.entry.js +2 -0
  295. package/dist/core/p-4502d3c1.entry.js.map +1 -0
  296. package/dist/core/p-49525194.entry.js +2 -0
  297. package/dist/core/p-49525194.entry.js.map +1 -0
  298. package/dist/core/{p-56d1828c.entry.js → p-4ff6d16f.entry.js} +2 -2
  299. package/dist/core/{p-56d1828c.entry.js.map → p-4ff6d16f.entry.js.map} +1 -1
  300. package/dist/core/p-50ead56c.entry.js +2 -0
  301. package/dist/core/p-50ead56c.entry.js.map +1 -0
  302. package/dist/core/p-5deb9730.entry.js +2 -0
  303. package/dist/core/p-5deb9730.entry.js.map +1 -0
  304. package/dist/core/{p-ddb8d280.entry.js → p-6bd2e938.entry.js} +2 -2
  305. package/dist/core/{p-ddb8d280.entry.js.map → p-6bd2e938.entry.js.map} +1 -1
  306. package/dist/core/p-6d40baa9.entry.js +2 -0
  307. package/dist/core/p-6d40baa9.entry.js.map +1 -0
  308. package/dist/core/p-7c89fc86.entry.js +2 -0
  309. package/dist/core/p-7c89fc86.entry.js.map +1 -0
  310. package/dist/core/p-84526c3e.entry.js +2 -0
  311. package/dist/core/p-84526c3e.entry.js.map +1 -0
  312. package/dist/core/{p-46ee459b.entry.js → p-93c23a35.entry.js} +2 -2
  313. package/dist/core/{p-46ee459b.entry.js.map → p-93c23a35.entry.js.map} +1 -1
  314. package/dist/core/p-9dba6823.entry.js +2 -0
  315. package/dist/core/p-9dba6823.entry.js.map +1 -0
  316. package/dist/core/p-aa0619ce.entry.js +2 -0
  317. package/dist/core/p-aa0619ce.entry.js.map +1 -0
  318. package/dist/core/{p-e861a2b3.entry.js → p-aab2c7aa.entry.js} +2 -2
  319. package/dist/core/p-aab2c7aa.entry.js.map +1 -0
  320. package/dist/core/p-af20322c.entry.js +2 -0
  321. package/dist/core/p-af20322c.entry.js.map +1 -0
  322. package/dist/core/{p-e597da0e.entry.js → p-b01ffa55.entry.js} +2 -2
  323. package/dist/core/p-b01ffa55.entry.js.map +1 -0
  324. package/dist/core/p-bf1f0ac7.entry.js +2 -0
  325. package/dist/core/p-bf1f0ac7.entry.js.map +1 -0
  326. package/dist/core/{p-bf4c61cb.entry.js → p-c06a3b97.entry.js} +2 -2
  327. package/dist/core/{p-bf4c61cb.entry.js.map → p-c06a3b97.entry.js.map} +1 -1
  328. package/dist/core/p-c86d48b6.entry.js +2 -0
  329. package/dist/core/p-c86d48b6.entry.js.map +1 -0
  330. package/dist/core/{p-69f3ce5a.entry.js → p-cbcd4427.entry.js} +2 -2
  331. package/dist/core/p-cbcd4427.entry.js.map +1 -0
  332. package/dist/core/p-d1c9c32b.entry.js +2 -0
  333. package/dist/core/p-d1c9c32b.entry.js.map +1 -0
  334. package/dist/core/{p-78ce4920.entry.js → p-d2f8e03f.entry.js} +2 -2
  335. package/dist/core/{p-78ce4920.entry.js.map → p-d2f8e03f.entry.js.map} +1 -1
  336. package/dist/core/{p-a765ad17.entry.js → p-d58a10ec.entry.js} +2 -2
  337. package/dist/core/p-d58a10ec.entry.js.map +1 -0
  338. package/dist/core/p-da14cd3c.entry.js +2 -0
  339. package/dist/core/p-da14cd3c.entry.js.map +1 -0
  340. package/dist/core/p-dc83a0e9.entry.js +2 -0
  341. package/dist/core/p-dc83a0e9.entry.js.map +1 -0
  342. package/dist/core/{p-f229d19e.entry.js → p-de3a5423.entry.js} +2 -2
  343. package/dist/core/{p-f229d19e.entry.js.map → p-de3a5423.entry.js.map} +1 -1
  344. package/dist/core/p-e3ed9110.entry.js +2 -0
  345. package/dist/core/p-e3ed9110.entry.js.map +1 -0
  346. package/dist/core/p-e53309b0.entry.js +2 -0
  347. package/dist/core/p-e53309b0.entry.js.map +1 -0
  348. package/dist/core/p-f38bce8d.entry.js +2 -0
  349. package/dist/core/p-f38bce8d.entry.js.map +1 -0
  350. package/dist/core/{p-a3b6a02d.entry.js → p-f828a6e1.entry.js} +2 -2
  351. package/dist/core/{p-a3b6a02d.entry.js.map → p-f828a6e1.entry.js.map} +1 -1
  352. package/dist/core/p-fa1b7a80.entry.js +2 -0
  353. package/dist/core/p-fa1b7a80.entry.js.map +1 -0
  354. package/dist/esm/core.js +1 -1
  355. package/dist/esm/ic-accordion.entry.js +1 -1
  356. package/dist/esm/ic-accordion.entry.js.map +1 -1
  357. package/dist/esm/ic-alert.entry.js +1 -1
  358. package/dist/esm/ic-alert.entry.js.map +1 -1
  359. package/dist/esm/ic-badge.entry.js +1 -1
  360. package/dist/esm/ic-badge.entry.js.map +1 -1
  361. package/dist/esm/ic-breadcrumb.entry.js +1 -1
  362. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  363. package/dist/esm/ic-button_3.entry.js +16 -15
  364. package/dist/esm/ic-button_3.entry.js.map +1 -1
  365. package/dist/esm/ic-card-vertical.entry.js +1 -1
  366. package/dist/esm/ic-card-vertical.entry.js.map +1 -1
  367. package/dist/esm/ic-checkbox-group.entry.js +1 -1
  368. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  369. package/dist/esm/ic-checkbox.entry.js +1 -1
  370. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  371. package/dist/esm/ic-chip.entry.js +21 -14
  372. package/dist/esm/ic-chip.entry.js.map +1 -1
  373. package/dist/esm/ic-classification-banner.entry.js +1 -1
  374. package/dist/esm/ic-classification-banner.entry.js.map +1 -1
  375. package/dist/esm/ic-divider.entry.js +1 -1
  376. package/dist/esm/ic-divider.entry.js.map +1 -1
  377. package/dist/esm/ic-footer-link-group.entry.js +1 -1
  378. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  379. package/dist/esm/ic-footer-link.entry.js +1 -1
  380. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  381. package/dist/esm/ic-footer.entry.js +1 -1
  382. package/dist/esm/ic-footer.entry.js.map +1 -1
  383. package/dist/esm/ic-horizontal-scroll.entry.js +1 -1
  384. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  385. package/dist/esm/ic-input-component-container_3.entry.js +2 -2
  386. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  387. package/dist/esm/ic-input-label_2.entry.js +2 -2
  388. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  389. package/dist/esm/ic-link.entry.js +1 -1
  390. package/dist/esm/ic-link.entry.js.map +1 -1
  391. package/dist/esm/ic-menu-group.entry.js +1 -1
  392. package/dist/esm/ic-menu-group.entry.js.map +1 -1
  393. package/dist/esm/ic-menu-item.entry.js +1 -1
  394. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  395. package/dist/esm/ic-navigation-group.entry.js +1 -1
  396. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  397. package/dist/esm/ic-navigation-item.entry.js +1 -1
  398. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  399. package/dist/esm/ic-navigation-menu.entry.js +1 -1
  400. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  401. package/dist/esm/ic-pagination-item.entry.js +1 -1
  402. package/dist/esm/ic-pagination-item.entry.js.map +1 -1
  403. package/dist/esm/ic-popover-menu.entry.js +19 -13
  404. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  405. package/dist/esm/ic-radio-group.entry.js +18 -8
  406. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  407. package/dist/esm/ic-radio-option.entry.js +1 -1
  408. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  409. package/dist/esm/ic-search-bar.entry.js +11 -24
  410. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  411. package/dist/esm/ic-select.entry.js +3 -3
  412. package/dist/esm/ic-select.entry.js.map +1 -1
  413. package/dist/esm/ic-side-navigation.entry.js +1 -1
  414. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  415. package/dist/esm/ic-skeleton.entry.js +4 -4
  416. package/dist/esm/ic-skeleton.entry.js.map +1 -1
  417. package/dist/esm/ic-status-tag.entry.js +1 -1
  418. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  419. package/dist/esm/ic-step.entry.js +3 -4
  420. package/dist/esm/ic-step.entry.js.map +1 -1
  421. package/dist/esm/ic-stepper.entry.js +11 -1
  422. package/dist/esm/ic-stepper.entry.js.map +1 -1
  423. package/dist/esm/ic-switch.entry.js +1 -1
  424. package/dist/esm/ic-switch.entry.js.map +1 -1
  425. package/dist/esm/ic-tab-context.entry.js +58 -122
  426. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  427. package/dist/esm/ic-tab-panel.entry.js +1 -1
  428. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  429. package/dist/esm/ic-tab.entry.js +5 -6
  430. package/dist/esm/ic-tab.entry.js.map +1 -1
  431. package/dist/esm/ic-text-field.entry.js +2 -2
  432. package/dist/esm/ic-text-field.entry.js.map +1 -1
  433. package/dist/esm/ic-toast.entry.js +2 -2
  434. package/dist/esm/ic-toast.entry.js.map +1 -1
  435. package/dist/esm/ic-toggle-button.entry.js +1 -1
  436. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  437. package/dist/esm/ic-top-navigation.entry.js +1 -1
  438. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  439. package/dist/esm/ic-typography.entry.js +4 -2
  440. package/dist/esm/ic-typography.entry.js.map +1 -1
  441. package/dist/esm/loader.js +1 -1
  442. package/dist/types/components/ic-chip/ic-chip.d.ts +8 -2
  443. package/dist/types/components/ic-loading-indicator/ic-loading-indicator.d.ts +9 -5
  444. package/dist/types/components/ic-popover-menu/ic-popover-menu.d.ts +2 -2
  445. package/dist/types/components/ic-skeleton/ic-skeleton.d.ts +3 -2
  446. package/dist/types/components/ic-step/ic-step.d.ts +5 -0
  447. package/dist/types/components/ic-stepper/ic-stepper.d.ts +6 -4
  448. package/dist/types/components/ic-tab-context/ic-tab-context.d.ts +8 -6
  449. package/dist/types/components.d.ts +47 -26
  450. package/hydrate/index.js +216 -254
  451. package/package.json +2 -2
  452. package/vscode-data.json +56 -28
  453. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.e2e.js +0 -339
  454. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.e2e.js.map +0 -1
  455. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.e2e.js +0 -1106
  456. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.e2e.js.map +0 -1
  457. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.e2e.js +0 -49
  458. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.e2e.js.map +0 -1
  459. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.e2e.js +0 -109
  460. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.e2e.js.map +0 -1
  461. package/dist/collection/components/ic-typography/test/basic/ic-typography.e2e.js +0 -39
  462. package/dist/collection/components/ic-typography/test/basic/ic-typography.e2e.js.map +0 -1
  463. package/dist/core/p-09104e40.entry.js +0 -2
  464. package/dist/core/p-09104e40.entry.js.map +0 -1
  465. package/dist/core/p-0c0b1c74.entry.js +0 -2
  466. package/dist/core/p-0c0b1c74.entry.js.map +0 -1
  467. package/dist/core/p-0c3a0d85.entry.js +0 -2
  468. package/dist/core/p-0c3a0d85.entry.js.map +0 -1
  469. package/dist/core/p-1083a708.entry.js +0 -2
  470. package/dist/core/p-1083a708.entry.js.map +0 -1
  471. package/dist/core/p-130dd440.entry.js +0 -2
  472. package/dist/core/p-130dd440.entry.js.map +0 -1
  473. package/dist/core/p-21312898.entry.js +0 -2
  474. package/dist/core/p-21312898.entry.js.map +0 -1
  475. package/dist/core/p-2ab86057.entry.js +0 -2
  476. package/dist/core/p-2ab86057.entry.js.map +0 -1
  477. package/dist/core/p-35b8b480.entry.js +0 -2
  478. package/dist/core/p-35b8b480.entry.js.map +0 -1
  479. package/dist/core/p-54238d16.entry.js.map +0 -1
  480. package/dist/core/p-550d7356.entry.js +0 -2
  481. package/dist/core/p-550d7356.entry.js.map +0 -1
  482. package/dist/core/p-5a52614c.entry.js +0 -2
  483. package/dist/core/p-5a52614c.entry.js.map +0 -1
  484. package/dist/core/p-69f3ce5a.entry.js.map +0 -1
  485. package/dist/core/p-79d2a33b.entry.js +0 -2
  486. package/dist/core/p-79d2a33b.entry.js.map +0 -1
  487. package/dist/core/p-80237a20.entry.js +0 -2
  488. package/dist/core/p-80237a20.entry.js.map +0 -1
  489. package/dist/core/p-804513ad.entry.js +0 -2
  490. package/dist/core/p-804513ad.entry.js.map +0 -1
  491. package/dist/core/p-8e1e25a7.entry.js +0 -2
  492. package/dist/core/p-8e1e25a7.entry.js.map +0 -1
  493. package/dist/core/p-a1a1000d.entry.js +0 -2
  494. package/dist/core/p-a1a1000d.entry.js.map +0 -1
  495. package/dist/core/p-a1b1a0ab.entry.js +0 -2
  496. package/dist/core/p-a1b1a0ab.entry.js.map +0 -1
  497. package/dist/core/p-a37bcdbe.entry.js +0 -2
  498. package/dist/core/p-a37bcdbe.entry.js.map +0 -1
  499. package/dist/core/p-a765ad17.entry.js.map +0 -1
  500. package/dist/core/p-aa2be24c.entry.js +0 -2
  501. package/dist/core/p-aa2be24c.entry.js.map +0 -1
  502. package/dist/core/p-b12a5283.entry.js +0 -2
  503. package/dist/core/p-b12a5283.entry.js.map +0 -1
  504. package/dist/core/p-b1b05979.entry.js +0 -2
  505. package/dist/core/p-b1b05979.entry.js.map +0 -1
  506. package/dist/core/p-c6795377.entry.js +0 -2
  507. package/dist/core/p-c81109da.entry.js.map +0 -1
  508. package/dist/core/p-cb4d104e.entry.js +0 -2
  509. package/dist/core/p-cb4d104e.entry.js.map +0 -1
  510. package/dist/core/p-d43d1ec0.entry.js +0 -2
  511. package/dist/core/p-d43d1ec0.entry.js.map +0 -1
  512. package/dist/core/p-d5829a35.entry.js +0 -2
  513. package/dist/core/p-d5829a35.entry.js.map +0 -1
  514. package/dist/core/p-e0e34fa7.entry.js +0 -2
  515. package/dist/core/p-e0e34fa7.entry.js.map +0 -1
  516. package/dist/core/p-e597da0e.entry.js.map +0 -1
  517. package/dist/core/p-e861a2b3.entry.js.map +0 -1
  518. package/dist/core/p-ea277b05.entry.js +0 -2
  519. package/dist/core/p-ea277b05.entry.js.map +0 -1
  520. package/dist/core/p-ef871b8f.entry.js +0 -2
  521. package/dist/core/p-ef871b8f.entry.js.map +0 -1
  522. package/dist/core/p-fb6ac08d.entry.js +0 -2
  523. package/dist/core/p-fb6ac08d.entry.js.map +0 -1
@@ -444,17 +444,30 @@ video {
444
444
  :host {
445
445
  display: inline-block;
446
446
  max-width: 100%;
447
+ vertical-align: middle;
447
448
  }
448
449
 
449
450
  .chip {
451
+ --chip-bg-color: transparent;
452
+ --chip-hover-bg: var(--ic-chip-action-hover);
453
+ --chip-pressed-bg: var(--ic-chip-action-pressed);
454
+
450
455
  display: flex;
451
456
  padding: var(--ic-space-xxs);
452
457
  font-size: 0.875rem;
453
458
  border-radius: var(--ic-space-md);
454
459
  text-align: left;
455
460
  text-decoration: none;
456
- transition: var(--ic-easing-transition-fast);
457
461
  position: relative;
462
+ background-color: var(--chip-bg-color);
463
+ border: var(--ic-border-width) solid transparent;
464
+ justify-content: space-between;
465
+ }
466
+
467
+ @media (prefers-reduced-motion: no-preference) {
468
+ .chip {
469
+ transition: var(--ic-easing-transition-fast);
470
+ }
458
471
  }
459
472
 
460
473
  .chip.small {
@@ -471,69 +484,79 @@ video {
471
484
  padding: 0 var(--ic-space-xs);
472
485
  }
473
486
 
474
- .chip.hovered:not(:focus-within) {
475
- background-color: var(--ic-architectural-300);
476
- }
477
-
478
487
  .chip:focus-within {
479
488
  box-shadow: var(--ic-border-focus);
480
489
  outline: var(--ic-hc-focus-outline);
481
490
  z-index: 1;
482
491
  }
483
492
 
484
- .chip.outlined.hovered:not(:focus-within) {
485
- background-color: var(--ic-action-dark-bg-hover);
486
- }
487
-
488
493
  ic-tooltip:focus-within {
489
494
  z-index: 1;
490
495
  }
491
496
 
492
497
  .filled {
493
- background-color: var(--chip-custom-color, var(--ic-architectural-200));
494
- color: var(--chip-custom-foreground-color, black);
498
+ --chip-bg-color: var(
499
+ --chip-custom-color,
500
+ var(--ic-chip-background-filled-default)
501
+ );
502
+ --ic-typography-color: var(
503
+ --chip-custom-foreground-color,
504
+ var(--ic-chip-label)
505
+ );
495
506
 
496
- --ic-typography-color: var(--chip-custom-foreground-color, black);
497
-
498
- border: none;
507
+ color: var(--chip-custom-foreground-color, var(--ic-chip-label));
499
508
  }
500
509
 
501
510
  .filled.disabled {
502
- background-color: var(--ic-architectural-100);
511
+ --chip-bg-color: var(--ic-chip-background-filled-inactive);
503
512
  }
504
513
 
505
- .outlined {
506
- color: var(--ic-architectural-900);
507
- border: var(--ic-border-width) solid
508
- var(--chip-custom-color, var(--ic-architectural-900));
509
- padding: calc(var(--ic-space-xxs) - var(--ic-space-1px));
514
+ :host(.ic-chip-dark-text) {
515
+ --chip-custom-foreground-color: var(--ic-architectural-black);
516
+ }
517
+
518
+ :host(.ic-chip-light-text) {
519
+ --chip-custom-foreground-color: var(--ic-architectural-white);
520
+ }
521
+
522
+ :host(.ic-chip-dark-text) .chip.filled.hovered:not(:focus-within) {
523
+ --chip-hover-bg: var(--ic-action-dark-bg-hover);
510
524
  }
511
525
 
512
- .outlined.small {
513
- padding: calc(var(--ic-space-xxxs) - var(--ic-space-1px));
526
+ :host(.ic-chip-dark-text) .chip.filled:focus-within {
527
+ --chip-pressed-bg: var(--ic-action-dark-bg-pressed);
514
528
  }
515
529
 
516
- .outlined.large {
517
- padding: calc(var(--ic-space-xs) - var(--ic-space-1px));
530
+ :host(.ic-chip-light-text) .chip.filled.hovered:not(:focus-within) {
531
+ --chip-hover-bg: var(--ic-action-light-bg-hover);
532
+ }
533
+
534
+ :host(.ic-chip-light-text) .chip.filled:focus-within {
535
+ --chip-pressed-bg: var(--ic-action-light-bg-pressed);
536
+ }
537
+
538
+ .outlined {
539
+ color: var(--ic-chip-label);
540
+ border-color: var(--chip-custom-color, var(--ic-chip-outline));
541
+ padding: calc(var(--ic-space-xxs));
542
+
543
+ --ic-typography-color: var(--ic-chip-label);
518
544
  }
519
545
 
520
546
  .outlined.disabled {
521
547
  border: var(--ic-border-disabled);
522
- background: none;
548
+ border-color: var(--ic-chip-outline-inactive);
523
549
  }
524
550
 
525
551
  .chip.disabled ic-typography {
526
- --ic-typography-color: var(--ic-architectural-500);
527
- }
528
-
529
- .filled.disabled ic-typography {
530
- --ic-typography-color: var(--ic-architectural-600);
552
+ --ic-typography-color: var(--ic-chip-label-inactive);
531
553
  }
532
554
 
533
555
  .dismiss-icon {
534
556
  border: none;
535
557
  border-radius: 50%;
536
558
  padding: 0;
559
+ color: currentcolor;
537
560
  background: none;
538
561
  cursor: pointer;
539
562
  margin: var(--ic-space-xxxs);
@@ -547,7 +570,7 @@ ic-tooltip:focus-within {
547
570
 
548
571
  .dismiss-icon[disabled] {
549
572
  pointer-events: none;
550
- color: var(--ic-architectural-200);
573
+ color: var(--ic-chip-icon-inactive);
551
574
  }
552
575
 
553
576
  .icon {
@@ -563,32 +586,24 @@ ic-tooltip {
563
586
 
564
587
  .chip.disabled path,
565
588
  .chip.disabled ::slotted(svg) {
566
- fill: var(--ic-architectural-200);
589
+ fill: var(--ic-chip-icon-inactive);
567
590
  }
568
591
 
569
- .chip.white-background {
570
- background-color: var(--ic-architectural-white);
592
+ .outlined.non-transparent {
593
+ background-color: var(--ic-chip-outline-background);
571
594
  }
572
595
 
573
- .chip.white-background.hovered:not(:focus-within) {
574
- background-color: var(--ic-action-dark-bg-hover-no-alpha) !important;
596
+ :host .chip.hovered:not(:focus-within) {
597
+ background-image: linear-gradient(var(--chip-hover-bg) 0 0);
598
+ }
599
+
600
+ :host .chip:focus-within {
601
+ background-image: linear-gradient(var(--chip-pressed-bg) 0 0);
575
602
  }
576
603
 
577
604
  @media (forced-colors: active) {
578
605
  .chip {
579
- border: var(--ic-hc-border);
580
- }
581
-
582
- .filled.small {
583
- padding: calc(var(--ic-space-xxxs) - var(--ic-space-1px));
584
- }
585
-
586
- .filled {
587
- padding: calc(var(--ic-space-xxxs) + var(--ic-space-1px));
588
- }
589
-
590
- .filled.large {
591
- padding: calc(var(--ic-space-xs) - var(--ic-space-1px));
606
+ border: var(--ic-border-hc);
592
607
  }
593
608
 
594
609
  .chip.disabled {
@@ -1,4 +1,4 @@
1
- import { h, } from "@stencil/core";
1
+ import { h, Host, } from "@stencil/core";
2
2
  import { onComponentRequiredPropUndefined, isSlotUsed, removeDisabledFalse, convertToRGBA, isElInAGGrid, } from "../../utils/helpers";
3
3
  import dismissIcon from "../../assets/dismiss-icon.svg";
4
4
  /**
@@ -21,10 +21,17 @@ export class Chip {
21
21
  const colorRGBA = convertToRGBA(this.customColor);
22
22
  if (colorRGBA) {
23
23
  const { r, g, b, a } = colorRGBA;
24
- const foregroundColour = (r * 299 + g * 587 + b * 114) / 1000 > 133.3505 ? "black" : "white";
25
- this.el.setAttribute("style", `--chip-custom-color: rgba(${r}, ${g}, ${b}, ${a}); --chip-custom-foreground-color: var(--ic-architectural-${foregroundColour})`);
24
+ this.customColorClass =
25
+ (r * 299 + g * 587 + b * 114) / 1000 > 133.3505
26
+ ? "ic-chip-dark-text"
27
+ : "ic-chip-light-text";
28
+ this.el.setAttribute("style", `--chip-custom-color: rgba(${r}, ${g}, ${b}, ${a});`);
29
+ }
30
+ else {
31
+ this.customColorClass = "";
26
32
  }
27
33
  };
34
+ this.customColorClass = "";
28
35
  this.hovered = false;
29
36
  this.visible = true;
30
37
  this.customColor = null;
@@ -32,19 +39,16 @@ export class Chip {
32
39
  this.dismissible = false;
33
40
  this.label = undefined;
34
41
  this.size = "medium";
42
+ this.theme = "inherit";
35
43
  this.transparentBackground = true;
36
44
  this.variant = "filled";
37
45
  }
38
46
  customColorHandler() {
39
- if (!this.dismissible) {
40
- this.setChipColour();
41
- }
47
+ this.setChipColour();
42
48
  }
43
49
  componentWillLoad() {
44
50
  removeDisabledFalse(this.disabled, this.el);
45
- if (!this.dismissible) {
46
- this.setChipColour();
47
- }
51
+ this.customColorHandler();
48
52
  }
49
53
  componentWillRender() {
50
54
  if (isElInAGGrid(this.el)) {
@@ -65,16 +69,19 @@ export class Chip {
65
69
  (_a = this.el.shadowRoot.querySelector("button")) === null || _a === void 0 ? void 0 : _a.focus();
66
70
  }
67
71
  render() {
68
- const { label, variant, size, dismissible, visible, disabled, hovered } = this;
69
- return (visible && (h("div", { class: {
72
+ const { label, variant, size, dismissible, visible, disabled, hovered, theme, customColorClass, } = this;
73
+ return (h(Host, { class: {
74
+ [`ic-theme-${theme}`]: theme !== "inherit",
75
+ [`${customColorClass}`]: variant === "filled" && customColorClass !== "",
76
+ } }, visible && (h("div", { class: {
70
77
  chip: true,
71
78
  [`${variant}`]: true,
72
79
  [`${size}`]: true,
73
80
  disabled,
74
81
  dismissible,
75
82
  hovered,
76
- "white-background": this.variant === "outlined" && !this.transparentBackground,
77
- } }, 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" }))));
83
+ "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" })))));
78
85
  }
79
86
  static get is() { return "ic-chip"; }
80
87
  static get encapsulation() { return "shadow"; }
@@ -109,7 +116,7 @@ export class Chip {
109
116
  "optional": true,
110
117
  "docs": {
111
118
  "tags": [],
112
- "text": "The custom chip colour. This prop will be applied to the chip component if `dismissible` is set to `false`.\nCan be a hex value e.g. \"#ff0000\", RGB e.g. \"rgb(255, 0, 0)\", or RGBA e.g. \"rgba(255, 0, 0, 1)\"."
119
+ "text": "The custom chip colour. This will override the theme colour.\nCan be a hex value e.g. \"#ff0000\", RGB e.g. \"rgb(255, 0, 0)\", or RGBA e.g. \"rgba(255, 0, 0, 1)\"."
113
120
  },
114
121
  "attribute": "custom-color",
115
122
  "reflect": false,
@@ -192,6 +199,24 @@ export class Chip {
192
199
  "reflect": false,
193
200
  "defaultValue": "\"medium\""
194
201
  },
202
+ "theme": {
203
+ "type": "string",
204
+ "mutable": false,
205
+ "complexType": {
206
+ "original": "\"dark\" | \"light\" | \"inherit\"",
207
+ "resolved": "\"dark\" | \"inherit\" | \"light\"",
208
+ "references": {}
209
+ },
210
+ "required": false,
211
+ "optional": true,
212
+ "docs": {
213
+ "tags": [],
214
+ "text": "Sets the chip to the dark or light theme colors. \"inherit\" will set the color based on the system settings or ic-theme component.\nSetting the \"customColor\" prop will override this."
215
+ },
216
+ "attribute": "theme",
217
+ "reflect": false,
218
+ "defaultValue": "\"inherit\""
219
+ },
195
220
  "transparentBackground": {
196
221
  "type": "boolean",
197
222
  "mutable": false,
@@ -204,7 +229,7 @@ export class Chip {
204
229
  "optional": true,
205
230
  "docs": {
206
231
  "tags": [],
207
- "text": "If `true`, the outlined variant of chip will have a transparent background rather than white."
232
+ "text": "If `true`, the outlined variant of chip will have a transparent background rather than the theme defined color."
208
233
  },
209
234
  "attribute": "transparent-background",
210
235
  "reflect": false,
@@ -238,6 +263,7 @@ export class Chip {
238
263
  }
239
264
  static get states() {
240
265
  return {
266
+ "customColorClass": {},
241
267
  "hovered": {},
242
268
  "visible": {}
243
269
  };
@@ -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} 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() hovered: boolean = false;\n @State() visible: boolean = true;\n\n /**\n * The custom chip colour. This prop will be applied to the chip component if `dismissible` is set to `false`.\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 if (!this.dismissible) {\n this.setChipColour();\n }\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 /**\n * If `true`, the outlined variant of chip will have a transparent background rather than white.\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\n if (!this.dismissible) {\n this.setChipColour();\n }\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 const foregroundColour =\n (r * 299 + g * 587 + b * 114) / 1000 > 133.3505 ? \"black\" : \"white\";\n this.el.setAttribute(\n \"style\",\n `--chip-custom-color: rgba(${r}, ${g}, ${b}, ${a}); --chip-custom-foreground-color: var(--ic-architectural-${foregroundColour})`\n );\n }\n };\n\n render() {\n const { label, variant, size, dismissible, visible, disabled, hovered } =\n this;\n\n return (\n visible && (\n <div\n class={{\n chip: true,\n [`${variant}`]: true,\n [`${size}`]: true,\n disabled,\n dismissible,\n hovered,\n \"white-background\":\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 );\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\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"]}
@@ -79,6 +79,22 @@ describe("ic-chip component renders label", () => {
79
79
  });
80
80
  expect(page.root).toMatchSnapshot();
81
81
  });
82
+ it("should render outlined variant", async () => {
83
+ const page = await newSpecPage({
84
+ components: [Chip],
85
+ html: `<ic-chip label="Label" variant="outlined">
86
+ </ic-chip>`,
87
+ });
88
+ expect(page.root).toMatchSnapshot();
89
+ });
90
+ it("should render outlined variant with solid-background", async () => {
91
+ const page = await newSpecPage({
92
+ components: [Chip],
93
+ html: `<ic-chip label="Label" variant="outlined" transparent-background="false">
94
+ </ic-chip>`,
95
+ });
96
+ expect(page.root).toMatchSnapshot();
97
+ });
82
98
  it("should apply 'hovered' style when cursor is on dismiss button", async () => {
83
99
  const page = await newSpecPage({
84
100
  components: [Chip],
@@ -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 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\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"]}
@@ -454,6 +454,22 @@ video {
454
454
  z-index: var(--ic-z-index-classification-banner);
455
455
 
456
456
  --ic-typography-color: currentcolor;
457
+
458
+ /* classification official */
459
+ --ic-color-classification-official: var(--ic-color-classification-blue);
460
+ --ic-color-classification-official-foreground: #fff;
461
+
462
+ /* classification secret */
463
+ --ic-color-classification-secret: var(--ic-color-classification-yellow);
464
+ --ic-color-classification-secret-foreground: #000;
465
+
466
+ /* classification top secret */
467
+ --ic-color-classification-top-secret: var(--ic-color-classification-red);
468
+ --ic-color-classification-top-secret-foreground: #fff;
469
+
470
+ /* classification not set */
471
+ --ic-color-classification-not-set: var(--ic-color-classification-grey);
472
+ --ic-color-classification-not-set-foreground: #fff;
457
473
  }
458
474
 
459
475
  :host(.ic-classification-banner-inline) {
@@ -471,24 +487,24 @@ video {
471
487
  }
472
488
 
473
489
  .default {
474
- background-color: var(--ic-classification-not-set);
475
- color: var(--ic-classification-not-set-foreground);
490
+ background-color: var(--ic-color-classification-not-set);
491
+ color: var(--ic-color-classification-not-set-foreground);
476
492
  }
477
493
 
478
494
  .official,
479
495
  .official-sensitive {
480
- background-color: var(--ic-classification-official);
481
- color: var(--ic-classification-official-foreground);
496
+ background-color: var(--ic-color-classification-official);
497
+ color: var(--ic-color-classification-official-foreground);
482
498
  }
483
499
 
484
500
  .secret {
485
- background-color: var(--ic-classification-secret);
486
- color: var(--ic-classification-secret-foreground);
501
+ background-color: var(--ic-color-classification-secret);
502
+ color: var(--ic-color-classification-secret-foreground);
487
503
  }
488
504
 
489
505
  .top-secret {
490
- background-color: var(--ic-classification-top-secret);
491
- color: var(--ic-classification-top-secret-foreground);
506
+ background-color: var(--ic-color-classification-top-secret);
507
+ color: var(--ic-color-classification-top-secret-foreground);
492
508
  }
493
509
 
494
510
  .offscreen {
@@ -501,6 +517,6 @@ video {
501
517
 
502
518
  @media (forced-colors: active) {
503
519
  .classification-banner {
504
- border: var(--ic-hc-border);
520
+ border: var(--ic-border-hc);
505
521
  }
506
522
  }
@@ -3,9 +3,9 @@ hr {
3
3
  margin: 0;
4
4
  border: none;
5
5
  height: var(--ic-space-1px);
6
- background-color: var(--ic-keyline-darken-rgb);
6
+ background-color: var(--ic-color-keyline-darken);
7
7
  }
8
8
 
9
9
  hr.light {
10
- background-color: var(--ic-keyline-lighten-rgb);
10
+ background-color: var(--ic-color-keyline-lighten);
11
11
  }
@@ -462,13 +462,13 @@ video {
462
462
  :host(.ic-footer-foreground-light) {
463
463
  --footer-theme-secondary: var(--ic-theme-secondary);
464
464
  --footer-theme-tertiary: var(--ic-theme-tertiary);
465
- --footer-keyline: var(--ic-keyline-lighten);
465
+ --footer-keyline: var(--ic-border-keyline-lighten);
466
466
  }
467
467
 
468
468
  :host(.ic-footer-foreground-dark) {
469
469
  --footer-theme-secondary: var(--ic-theme-secondary-light);
470
470
  --footer-theme-tertiary: var(--ic-theme-tertiary-light);
471
- --footer-keyline: var(--ic-keyline-darken);
471
+ --footer-keyline: var(--ic-border-keyline-darken);
472
472
  }
473
473
 
474
474
  :host(.ic-footer-small.ic-footer-ungrouped) {
@@ -545,6 +545,6 @@ footer {
545
545
 
546
546
  @media (forced-colors: active) {
547
547
  footer {
548
- border-top: var(--ic-hc-border);
548
+ border-top: var(--ic-border-hc);
549
549
  }
550
550
  }
@@ -477,7 +477,7 @@ video {
477
477
  }
478
478
 
479
479
  .ic-link > .ic-link-open-in-new-icon {
480
- fill: var(--ic-hyperlink);
480
+ fill: var(--ic-color-hyperlink-default);
481
481
  }
482
482
 
483
483
  .ic-link-open-in-new-icon > svg {
@@ -487,11 +487,11 @@ video {
487
487
  }
488
488
 
489
489
  .ic-link:visited > .ic-link-open-in-new-icon {
490
- fill: var(--ic-hyperlink-visited);
490
+ fill: var(--ic-color-hyperlink-visited);
491
491
  }
492
492
 
493
493
  .ic-link.light:visited > .ic-link-open-in-new-icon {
494
- fill: var(--ic-hyperlink-contrast-visited);
494
+ fill: var(--ic-color-hyperlink-contrast-visited);
495
495
  }
496
496
 
497
497
  :host(.breadcrumb-link) .ic-link {
@@ -521,7 +521,7 @@ video {
521
521
  }
522
522
 
523
523
  :host(.breadcrumb-link.current-page) .ic-link:visited {
524
- color: var(--ic-color-primary-text);
524
+ color: var(--ic-color-text-primary);
525
525
  }
526
526
 
527
527
  :host(.footer-link-light) ::part(link),
@@ -457,11 +457,11 @@ video {
457
457
  }
458
458
 
459
459
  :host(.footer-link-group-light.footer-link-group-small) {
460
- --footer-link-group-border-bottom: var(--ic-keyline-lighten);
460
+ --footer-link-group-border-bottom: var(--ic-border-keyline-lighten);
461
461
  }
462
462
 
463
463
  :host(.footer-link-group-dark.footer-link-group-small) {
464
- --footer-link-group-border-bottom: var(--ic-keyline-darken);
464
+ --footer-link-group-border-bottom: var(--ic-border-keyline-darken);
465
465
  }
466
466
 
467
467
  :host(.footer-link-group) {
@@ -494,11 +494,11 @@ video {
494
494
  }
495
495
 
496
496
  :host(.footer-link-group-small.footer-link-group-light:active) {
497
- background-color: var(--ic-action-light-bg-active);
497
+ background-color: var(--ic-action-light-bg-pressed);
498
498
  }
499
499
 
500
500
  :host(.footer-link-group-small.footer-link-group-dark:active) {
501
- background-color: var(--ic-action-dark-bg-active);
501
+ background-color: var(--ic-action-dark-bg-pressed);
502
502
  }
503
503
 
504
504
  .footer-link-label {