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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1059) hide show
  1. package/README.md +0 -4
  2. package/dist/cjs/core.cjs.js +1 -1
  3. package/dist/cjs/{helpers-6f6991cb.js → helpers-eca4c27e.js} +70 -26
  4. package/dist/cjs/helpers-eca4c27e.js.map +1 -0
  5. package/dist/cjs/ic-accordion-group.cjs.entry.js +14 -15
  6. package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
  7. package/dist/cjs/ic-accordion.cjs.entry.js +7 -8
  8. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ic-alert.cjs.entry.js +8 -9
  10. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ic-back-to-top.cjs.entry.js +15 -16
  12. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  13. package/dist/cjs/ic-badge.cjs.entry.js +22 -51
  14. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +26 -14
  16. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ic-breadcrumb.cjs.entry.js +53 -8
  18. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ic-button_3.cjs.entry.js +59 -53
  20. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-card-vertical.cjs.entry.js +150 -0
  22. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -0
  23. package/dist/cjs/ic-checkbox-group.cjs.entry.js +21 -10
  24. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-checkbox.cjs.entry.js +8 -16
  26. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ic-chip.cjs.entry.js +22 -23
  28. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ic-classification-banner.cjs.entry.js +2 -2
  30. package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
  31. package/dist/cjs/ic-data-list.cjs.entry.js +32 -0
  32. package/dist/cjs/ic-data-list.cjs.entry.js.map +1 -0
  33. package/dist/cjs/ic-data-row.cjs.entry.js +12 -12
  34. package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
  35. package/dist/cjs/ic-dialog.cjs.entry.js +14 -105
  36. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  37. package/dist/cjs/ic-divider.cjs.entry.js +73 -10
  38. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  39. package/dist/cjs/ic-empty-state.cjs.entry.js +9 -8
  40. package/dist/cjs/ic-empty-state.cjs.entry.js.map +1 -1
  41. package/dist/cjs/ic-footer-link-group.cjs.entry.js +12 -14
  42. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  43. package/dist/cjs/ic-footer-link.cjs.entry.js +11 -12
  44. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  45. package/dist/cjs/ic-footer.cjs.entry.js +11 -13
  46. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  47. package/dist/cjs/ic-hero.cjs.entry.js +12 -15
  48. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  49. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +15 -9
  50. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  51. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +478 -201
  52. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ic-input-label_2.cjs.entry.js +26 -31
  54. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  55. package/dist/cjs/ic-link.cjs.entry.js +22 -15
  56. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  57. package/dist/cjs/ic-menu-group.cjs.entry.js +2 -3
  58. package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
  59. package/dist/cjs/ic-menu-item.cjs.entry.js +12 -13
  60. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  61. package/dist/cjs/ic-navigation-button.cjs.entry.js +12 -10
  62. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  63. package/dist/cjs/ic-navigation-group.cjs.entry.js +14 -14
  64. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  65. package/dist/cjs/ic-navigation-item.cjs.entry.js +11 -10
  66. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  67. package/dist/cjs/ic-navigation-menu.cjs.entry.js +5 -5
  68. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  69. package/dist/cjs/ic-page-header.cjs.entry.js +10 -10
  70. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  71. package/dist/cjs/ic-pagination-item.cjs.entry.js +8 -12
  72. package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -1
  73. package/dist/cjs/ic-pagination.cjs.entry.js +51 -46
  74. package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -1
  75. package/dist/cjs/ic-popover-menu.cjs.entry.js +23 -4
  76. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  77. package/dist/cjs/ic-radio-group.cjs.entry.js +32 -18
  78. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  79. package/dist/cjs/ic-radio-option.cjs.entry.js +34 -40
  80. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  81. package/dist/cjs/ic-search-bar.cjs.entry.js +56 -57
  82. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  83. package/dist/cjs/ic-select.cjs.entry.js +194 -81
  84. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  85. package/dist/cjs/ic-side-navigation.cjs.entry.js +19 -22
  86. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  87. package/dist/cjs/ic-skeleton.cjs.entry.js +5 -6
  88. package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
  89. package/dist/cjs/ic-status-tag.cjs.entry.js +8 -16
  90. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  91. package/dist/cjs/ic-step.cjs.entry.js +41 -46
  92. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  93. package/dist/cjs/ic-stepper.cjs.entry.js +27 -18
  94. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  95. package/dist/cjs/ic-switch.cjs.entry.js +17 -18
  96. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  97. package/dist/cjs/ic-tab-context.cjs.entry.js +34 -28
  98. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  99. package/dist/cjs/ic-tab-group.cjs.entry.js +9 -11
  100. package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
  101. package/dist/cjs/ic-tab-panel.cjs.entry.js +12 -11
  102. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  103. package/dist/cjs/ic-tab.cjs.entry.js +10 -9
  104. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  105. package/dist/cjs/ic-text-field.cjs.entry.js +86 -77
  106. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  107. package/dist/cjs/ic-theme.cjs.entry.js +45 -22
  108. package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
  109. package/dist/cjs/ic-toast-region.cjs.entry.js +0 -7
  110. package/dist/cjs/ic-toast-region.cjs.entry.js.map +1 -1
  111. package/dist/cjs/ic-toast.cjs.entry.js +83 -36
  112. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  113. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +63 -30
  114. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  115. package/dist/cjs/ic-toggle-button.cjs.entry.js +64 -33
  116. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  117. package/dist/cjs/ic-top-navigation.cjs.entry.js +17 -12
  118. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  119. package/dist/cjs/ic-typography.cjs.entry.js +9 -8
  120. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  121. package/dist/cjs/index-f982899d.js +16 -16
  122. package/dist/cjs/loader.cjs.js +1 -1
  123. package/dist/collection/ag-theme-icds.css +32 -31
  124. package/dist/collection/collection-manifest.json +4 -4
  125. package/dist/collection/components/ic-accordion/ic-accordion.css +23 -19
  126. package/dist/collection/components/ic-accordion/ic-accordion.js +31 -34
  127. package/dist/collection/components/ic-accordion/ic-accordion.js.map +1 -1
  128. package/dist/collection/components/ic-accordion/ic-accordion.stories.js +52 -76
  129. package/dist/collection/components/ic-accordion/test/basic/ic-accordion.spec.js +3 -3
  130. package/dist/collection/components/ic-accordion/test/basic/ic-accordion.spec.js.map +1 -1
  131. package/dist/collection/components/ic-accordion-group/ic-accordion-group.css +5 -11
  132. package/dist/collection/components/ic-accordion-group/ic-accordion-group.js +27 -27
  133. package/dist/collection/components/ic-accordion-group/ic-accordion-group.js.map +1 -1
  134. package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js +9 -9
  135. package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js.map +1 -1
  136. package/dist/collection/components/ic-alert/ic-alert.css +34 -18
  137. package/dist/collection/components/ic-alert/ic-alert.js +49 -42
  138. package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
  139. package/dist/collection/components/ic-alert/ic-alert.stories.js +30 -16
  140. package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js +1 -1
  141. package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js.map +1 -1
  142. package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +22 -59
  143. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +38 -14
  144. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js.map +1 -1
  145. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js +23 -10
  146. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js.map +1 -1
  147. package/dist/collection/components/ic-badge/ic-badge.css +65 -41
  148. package/dist/collection/components/ic-badge/ic-badge.js +51 -99
  149. package/dist/collection/components/ic-badge/ic-badge.js.map +1 -1
  150. package/dist/collection/components/ic-badge/ic-badge.stories.js +50 -40
  151. package/dist/collection/components/ic-badge/test/basic/ic-badge.spec.js +40 -50
  152. package/dist/collection/components/ic-badge/test/basic/ic-badge.spec.js.map +1 -1
  153. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.css +20 -10
  154. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +104 -34
  155. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js.map +1 -1
  156. package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js +48 -4
  157. package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js.map +1 -1
  158. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.css +7 -5
  159. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js +66 -33
  160. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js.map +1 -1
  161. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.stories.js +60 -200
  162. package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.spec.js +3 -3
  163. package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.spec.js.map +1 -1
  164. package/dist/collection/components/ic-button/ic-button.css +730 -432
  165. package/dist/collection/components/ic-button/ic-button.js +72 -59
  166. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  167. package/dist/collection/components/ic-button/ic-button.stories.js +1246 -1256
  168. package/dist/collection/components/ic-button/test/basic/ic-button.spec.js +9 -9
  169. package/dist/collection/components/ic-button/test/basic/ic-button.spec.js.map +1 -1
  170. package/dist/collection/components/{ic-card/ic-card.css → ic-card-vertical/ic-card-vertical.css} +99 -109
  171. package/dist/collection/components/{ic-card/ic-card.js → ic-card-vertical/ic-card-vertical.js} +65 -39
  172. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js.map +1 -0
  173. package/dist/collection/components/{ic-card/ic-card.stories.js → ic-card-vertical/ic-card-vertical.stories.js} +61 -45
  174. package/dist/collection/components/{ic-card/test/basic/ic-card.spec.js → ic-card-vertical/test/basic/ic-card-vertical.spec.js} +43 -43
  175. package/dist/collection/components/ic-card-vertical/test/basic/ic-card-vertical.spec.js.map +1 -0
  176. package/dist/collection/components/ic-checkbox/ic-checkbox.css +54 -45
  177. package/dist/collection/components/ic-checkbox/ic-checkbox.js +22 -128
  178. package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
  179. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.css +19 -4
  180. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +38 -21
  181. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  182. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.stories.js +18 -6
  183. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js +2 -2
  184. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js.map +1 -1
  185. package/dist/collection/components/ic-chip/ic-chip.css +66 -53
  186. package/dist/collection/components/ic-chip/ic-chip.js +44 -68
  187. package/dist/collection/components/ic-chip/ic-chip.js.map +1 -1
  188. package/dist/collection/components/ic-chip/ic-chip.stories.js +713 -403
  189. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js +16 -0
  190. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js.map +1 -1
  191. package/dist/collection/components/ic-classification-banner/ic-classification-banner.css +17 -11
  192. package/dist/collection/components/ic-classification-banner/ic-classification-banner.js +1 -1
  193. package/dist/collection/components/ic-classification-banner/ic-classification-banner.js.map +1 -1
  194. package/dist/collection/components/{ic-data-entity/ic-data-entity.css → ic-data-list/ic-data-list.css} +7 -3
  195. package/dist/collection/components/{ic-data-entity/ic-data-entity.js → ic-data-list/ic-data-list.js} +33 -27
  196. package/dist/collection/components/ic-data-list/ic-data-list.js.map +1 -0
  197. package/dist/collection/components/{ic-data-entity/ic-data-entity.stories.js → ic-data-list/ic-data-list.stories.js} +59 -53
  198. package/dist/collection/components/{ic-data-entity/test/basic/ic-data-entity.spec.js → ic-data-list/test/basic/ic-data-list.spec.js} +32 -32
  199. package/dist/collection/components/ic-data-list/test/basic/ic-data-list.spec.js.map +1 -0
  200. package/dist/collection/components/ic-data-row/ic-data-row.css +6 -3
  201. package/dist/collection/components/ic-data-row/ic-data-row.js +28 -24
  202. package/dist/collection/components/ic-data-row/ic-data-row.js.map +1 -1
  203. package/dist/collection/components/ic-data-row/test/basic/ic-data-row.spec.js +4 -4
  204. package/dist/collection/components/ic-data-row/test/basic/ic-data-row.spec.js.map +1 -1
  205. package/dist/collection/components/ic-dialog/ic-dialog.css +19 -15
  206. package/dist/collection/components/ic-dialog/ic-dialog.js +28 -212
  207. package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -1
  208. package/dist/collection/components/ic-dialog/ic-dialog.stories.js +19 -225
  209. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js +5 -228
  210. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js.map +1 -1
  211. package/dist/collection/components/ic-divider/ic-divider.css +295 -4
  212. package/dist/collection/components/ic-divider/ic-divider.js +239 -12
  213. package/dist/collection/components/ic-divider/ic-divider.js.map +1 -1
  214. package/dist/collection/components/ic-divider/ic-divider.stories.js +394 -0
  215. package/dist/collection/components/ic-divider/ic-divider.types.js +2 -0
  216. package/dist/collection/components/ic-divider/ic-divider.types.js.map +1 -0
  217. package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js +90 -5
  218. package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js.map +1 -1
  219. package/dist/collection/components/ic-empty-state/ic-empty-state.css +21 -6
  220. package/dist/collection/components/ic-empty-state/ic-empty-state.js +35 -9
  221. package/dist/collection/components/ic-empty-state/ic-empty-state.js.map +1 -1
  222. package/dist/collection/components/ic-empty-state/ic-empty-state.stories.js +13 -6
  223. package/dist/collection/components/ic-empty-state/test/basic/ic-empty-state.spec.js +101 -0
  224. package/dist/collection/components/ic-empty-state/test/basic/ic-empty-state.spec.js.map +1 -0
  225. package/dist/collection/components/ic-footer/ic-footer.css +30 -22
  226. package/dist/collection/components/ic-footer/ic-footer.js +13 -14
  227. package/dist/collection/components/ic-footer/ic-footer.js.map +1 -1
  228. package/dist/collection/components/ic-footer/ic-footer.stories.js +23 -22
  229. package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js +3 -3
  230. package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js.map +1 -1
  231. package/dist/collection/components/ic-footer-link/ic-footer-link.css +49 -100
  232. package/dist/collection/components/ic-footer-link/ic-footer-link.js +12 -12
  233. package/dist/collection/components/ic-footer-link/ic-footer-link.js.map +1 -1
  234. package/dist/collection/components/ic-footer-link/test/basic/ic-footer-link.spec.js +1 -1
  235. package/dist/collection/components/ic-footer-link/test/basic/ic-footer-link.spec.js.map +1 -1
  236. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.css +19 -27
  237. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js +15 -16
  238. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js.map +1 -1
  239. package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js +8 -8
  240. package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js.map +1 -1
  241. package/dist/collection/components/ic-hero/ic-hero.css +38 -23
  242. package/dist/collection/components/ic-hero/ic-hero.js +18 -41
  243. package/dist/collection/components/ic-hero/ic-hero.js.map +1 -1
  244. package/dist/collection/components/ic-hero/ic-hero.stories.js +65 -106
  245. package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js +8 -8
  246. package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js.map +1 -1
  247. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.css +7 -11
  248. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +65 -10
  249. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js.map +1 -1
  250. package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js +43 -0
  251. package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js.map +1 -1
  252. package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +70 -42
  253. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +12 -87
  254. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js.map +1 -1
  255. package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js +10 -10
  256. package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js.map +1 -1
  257. package/dist/collection/components/ic-input-label/ic-input-label.css +19 -21
  258. package/dist/collection/components/ic-input-label/ic-input-label.js +52 -74
  259. package/dist/collection/components/ic-input-label/ic-input-label.js.map +1 -1
  260. package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js +14 -58
  261. package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js.map +1 -1
  262. package/dist/collection/components/ic-input-validation/ic-input-validation.css +13 -4
  263. package/dist/collection/components/ic-input-validation/ic-input-validation.js +7 -7
  264. package/dist/collection/components/ic-input-validation/ic-input-validation.js.map +1 -1
  265. package/dist/collection/components/ic-input-validation/test/basic/ic-input-validation.spec.js +4 -4
  266. package/dist/collection/components/ic-input-validation/test/basic/ic-input-validation.spec.js.map +1 -1
  267. package/dist/collection/components/ic-link/ic-link.css +77 -45
  268. package/dist/collection/components/ic-link/ic-link.js +64 -58
  269. package/dist/collection/components/ic-link/ic-link.js.map +1 -1
  270. package/dist/collection/components/ic-link/ic-link.stories.js +16 -45
  271. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js +19 -114
  272. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js.map +1 -1
  273. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.css +24 -16
  274. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +73 -50
  275. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js.map +1 -1
  276. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.stories.js +84 -36
  277. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.types.js.map +1 -1
  278. package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.spec.js +3 -2
  279. package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.spec.js.map +1 -1
  280. package/dist/collection/components/ic-menu/ic-menu.css +119 -30
  281. package/dist/collection/components/ic-menu/ic-menu.js +525 -228
  282. package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
  283. package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js +382 -34
  284. package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js.map +1 -1
  285. package/dist/collection/components/ic-menu-group/ic-menu-group.css +3 -2
  286. package/dist/collection/components/ic-menu-item/ic-menu-item.css +63 -44
  287. package/dist/collection/components/ic-menu-item/ic-menu-item.js +30 -30
  288. package/dist/collection/components/ic-menu-item/ic-menu-item.js.map +1 -1
  289. package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js +2 -2
  290. package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js.map +1 -1
  291. package/dist/collection/components/ic-navigation-button/ic-navigation-button.css +14 -0
  292. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +38 -11
  293. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -1
  294. package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js +3 -3
  295. package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js.map +1 -1
  296. package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +28 -21
  297. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +39 -14
  298. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
  299. package/dist/collection/components/ic-navigation-group/test/basic/ic-navigation-group.spec.js +3 -3
  300. package/dist/collection/components/ic-navigation-group/test/basic/ic-navigation-group.spec.js.map +1 -1
  301. package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +33 -29
  302. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +36 -10
  303. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
  304. package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js +3 -3
  305. package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js.map +1 -1
  306. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.css +13 -5
  307. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +27 -2
  308. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js.map +1 -1
  309. package/dist/collection/components/ic-page-header/ic-page-header.css +4 -3
  310. package/dist/collection/components/ic-page-header/ic-page-header.js +34 -30
  311. package/dist/collection/components/ic-page-header/ic-page-header.js.map +1 -1
  312. package/dist/collection/components/ic-page-header/ic-page-header.stories.js +306 -40
  313. package/dist/collection/components/ic-page-header/test/basic/ic-page-header.spec.js +15 -15
  314. package/dist/collection/components/ic-page-header/test/basic/ic-page-header.spec.js.map +1 -1
  315. package/dist/collection/components/ic-pagination/ic-pagination.css +15 -0
  316. package/dist/collection/components/ic-pagination/ic-pagination.js +97 -73
  317. package/dist/collection/components/ic-pagination/ic-pagination.js.map +1 -1
  318. package/dist/collection/components/ic-pagination/ic-pagination.stories.js +69 -30
  319. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js +27 -27
  320. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js.map +1 -1
  321. package/dist/collection/components/ic-pagination-item/ic-pagination-item.css +36 -13
  322. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +48 -33
  323. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js.map +1 -1
  324. package/dist/collection/components/ic-popover-menu/ic-popover-menu.css +10 -6
  325. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +45 -1
  326. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js.map +1 -1
  327. package/dist/collection/components/ic-popover-menu/ic-popover-menu.stories.js +34 -16
  328. package/dist/collection/components/ic-radio-group/ic-radio-group.css +21 -5
  329. package/dist/collection/components/ic-radio-group/ic-radio-group.js +58 -38
  330. package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
  331. package/dist/collection/components/ic-radio-group/ic-radio-group.stories.js +21 -28
  332. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js +3 -3
  333. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js.map +1 -1
  334. package/dist/collection/components/ic-radio-option/ic-radio-option.css +40 -30
  335. package/dist/collection/components/ic-radio-option/ic-radio-option.js +58 -148
  336. package/dist/collection/components/ic-radio-option/ic-radio-option.js.map +1 -1
  337. package/dist/collection/components/ic-search-bar/ic-search-bar.css +115 -16
  338. package/dist/collection/components/ic-search-bar/ic-search-bar.js +112 -129
  339. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  340. package/dist/collection/components/ic-search-bar/ic-search-bar.stories.js +21 -19
  341. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js +78 -112
  342. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js.map +1 -1
  343. package/dist/collection/components/ic-select/ic-select.css +103 -63
  344. package/dist/collection/components/ic-select/ic-select.js +269 -220
  345. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  346. package/dist/collection/components/ic-select/ic-select_(multi).stories.js +892 -0
  347. package/dist/collection/components/ic-select/{ic-select-searchable.stories.js → ic-select_(searchable).stories.js} +21 -9
  348. package/dist/collection/components/ic-select/{ic-select-single.stories.js → ic-select_(single).stories.js} +14 -4
  349. package/dist/collection/components/ic-select/test/basic/ic-select.spec.js +230 -7
  350. package/dist/collection/components/ic-select/test/basic/ic-select.spec.js.map +1 -1
  351. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +60 -43
  352. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +22 -24
  353. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  354. package/dist/collection/components/ic-side-navigation/ic-side-navigation.stories.js +11 -11
  355. package/dist/collection/components/ic-side-navigation/ic-side-navigation.types.js.map +1 -1
  356. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js +3 -110
  357. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js.map +1 -1
  358. package/dist/collection/components/ic-skeleton/ic-skeleton.css +5 -28
  359. package/dist/collection/components/ic-skeleton/ic-skeleton.js +17 -33
  360. package/dist/collection/components/ic-skeleton/ic-skeleton.js.map +1 -1
  361. package/dist/collection/components/ic-skeleton/ic-skeleton.stories.js +11 -9
  362. package/dist/collection/components/ic-skeleton/test/basic/ic-skeleton.spec.js +1 -1
  363. package/dist/collection/components/ic-skeleton/test/basic/ic-skeleton.spec.js.map +1 -1
  364. package/dist/collection/components/ic-status-tag/ic-status-tag.css +20 -17
  365. package/dist/collection/components/ic-status-tag/ic-status-tag.js +44 -62
  366. package/dist/collection/components/ic-status-tag/ic-status-tag.js.map +1 -1
  367. package/dist/collection/components/ic-status-tag/ic-status-tag.stories.js +41 -6
  368. package/dist/collection/components/ic-status-tag/ic-status-tag.types.js.map +1 -1
  369. package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js +15 -32
  370. package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js.map +1 -1
  371. package/dist/collection/components/ic-step/ic-step.css +97 -128
  372. package/dist/collection/components/ic-step/ic-step.js +77 -54
  373. package/dist/collection/components/ic-step/ic-step.js.map +1 -1
  374. package/dist/collection/components/ic-step/test/basic/ic-step.spec.js +30 -30
  375. package/dist/collection/components/ic-step/test/basic/ic-step.spec.js.map +1 -1
  376. package/dist/collection/components/ic-stepper/ic-stepper.css +4 -4
  377. package/dist/collection/components/ic-stepper/ic-stepper.js +51 -33
  378. package/dist/collection/components/ic-stepper/ic-stepper.js.map +1 -1
  379. package/dist/collection/components/ic-stepper/ic-stepper.stories.js +103 -153
  380. package/dist/collection/components/ic-stepper/test/basic/ic-stepper-test-examples.js +37 -37
  381. package/dist/collection/components/ic-stepper/test/basic/ic-stepper-test-examples.js.map +1 -1
  382. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js +237 -237
  383. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js.map +1 -1
  384. package/dist/collection/components/ic-switch/ic-switch.css +26 -49
  385. package/dist/collection/components/ic-switch/ic-switch.js +33 -48
  386. package/dist/collection/components/ic-switch/ic-switch.js.map +1 -1
  387. package/dist/collection/components/ic-switch/ic-switch.stories.js +20 -42
  388. package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js +1 -15
  389. package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js.map +1 -1
  390. package/dist/collection/components/ic-tab/ic-tab.css +47 -21
  391. package/dist/collection/components/ic-tab/ic-tab.js +56 -34
  392. package/dist/collection/components/ic-tab/ic-tab.js.map +1 -1
  393. package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js +2 -2
  394. package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js.map +1 -1
  395. package/dist/collection/components/ic-tab-context/ic-tab-context.js +79 -76
  396. package/dist/collection/components/ic-tab-context/ic-tab-context.js.map +1 -1
  397. package/dist/collection/components/ic-tab-context/ic-tabs.stories.js +11 -83
  398. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js +3 -3
  399. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js.map +1 -1
  400. package/dist/collection/components/ic-tab-group/ic-tab-group.css +15 -8
  401. package/dist/collection/components/ic-tab-group/ic-tab-group.js +52 -54
  402. package/dist/collection/components/ic-tab-group/ic-tab-group.js.map +1 -1
  403. package/dist/collection/components/ic-tab-panel/ic-tab-panel.css +2 -2
  404. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +91 -30
  405. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js.map +1 -1
  406. package/dist/collection/components/ic-tab-panel/test/basic/ic-tab-panel.spec.js +50 -0
  407. package/dist/collection/components/ic-tab-panel/test/basic/ic-tab-panel.spec.js.map +1 -0
  408. package/dist/collection/components/ic-text-field/ic-text-field.css +71 -13
  409. package/dist/collection/components/ic-text-field/ic-text-field.js +122 -128
  410. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  411. package/dist/collection/components/ic-text-field/ic-text-field.stories.js +36 -257
  412. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js +59 -26
  413. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js.map +1 -1
  414. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js +59 -58
  415. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js.map +1 -1
  416. package/dist/collection/components/ic-theme/ic-theme.js +81 -33
  417. package/dist/collection/components/ic-theme/ic-theme.js.map +1 -1
  418. package/dist/collection/components/ic-theme/ic-theme.stories.js +271 -8
  419. package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js +7 -7
  420. package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js.map +1 -1
  421. package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js +24 -22
  422. package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js.map +1 -1
  423. package/dist/collection/components/ic-toast/ic-toast.css +40 -17
  424. package/dist/collection/components/ic-toast/ic-toast.js +83 -33
  425. package/dist/collection/components/ic-toast/ic-toast.js.map +1 -1
  426. package/dist/collection/components/ic-toast/ic-toast.stories.js +1 -18
  427. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js +55 -19
  428. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js.map +1 -1
  429. package/dist/collection/components/ic-toast-region/ic-toast-region.js +1 -43
  430. package/dist/collection/components/ic-toast-region/ic-toast-region.js.map +1 -1
  431. package/dist/collection/components/ic-toast-region/test/basic/ic-toast-region.spec.js +0 -20
  432. package/dist/collection/components/ic-toast-region/test/basic/ic-toast-region.spec.js.map +1 -1
  433. package/dist/collection/components/ic-toggle-button/ic-toggle-button.css +217 -79
  434. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +126 -69
  435. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js.map +1 -1
  436. package/dist/collection/components/ic-toggle-button/ic-toggle-button.stories.js +16 -126
  437. package/dist/collection/components/ic-toggle-button/test/basic/ic-toggle-button.spec.js +4 -4
  438. package/dist/collection/components/ic-toggle-button/test/basic/ic-toggle-button.spec.js.map +1 -1
  439. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.css +29 -19
  440. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +116 -52
  441. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js.map +1 -1
  442. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.stories.js +140 -165
  443. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.types.js.map +1 -1
  444. package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js +121 -39
  445. package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js.map +1 -1
  446. package/dist/collection/components/ic-tooltip/ic-tooltip.css +14 -5
  447. package/dist/collection/components/ic-tooltip/ic-tooltip.js +30 -2
  448. package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
  449. package/dist/collection/components/ic-tooltip/ic-tooltip.stories.js +10 -0
  450. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.spec.js +14 -0
  451. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.spec.js.map +1 -1
  452. package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +46 -20
  453. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +44 -14
  454. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
  455. package/dist/collection/components/ic-top-navigation/ic-top-navigation.stories.js +28 -13
  456. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js +3 -3
  457. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js.map +1 -1
  458. package/dist/collection/components/ic-typography/ic-typography.css +16 -12
  459. package/dist/collection/components/ic-typography/ic-typography.js +31 -5
  460. package/dist/collection/components/ic-typography/ic-typography.js.map +1 -1
  461. package/dist/collection/components/ic-typography/ic-typography.stories.js +10 -0
  462. package/dist/collection/components/ic-typography/test/basic/ic-typography.spec.js +14 -0
  463. package/dist/collection/components/ic-typography/test/basic/ic-typography.spec.js.map +1 -1
  464. package/dist/collection/patterns/z-index.stories.js +2 -2
  465. package/dist/collection/utils/constants.js +1 -1
  466. package/dist/collection/utils/constants.js.map +1 -1
  467. package/dist/collection/utils/helpers.js +49 -19
  468. package/dist/collection/utils/helpers.js.map +1 -1
  469. package/dist/collection/utils/types.js +6 -6
  470. package/dist/collection/utils/types.js.map +1 -1
  471. package/dist/components/helpers.js +64 -21
  472. package/dist/components/helpers.js.map +1 -1
  473. package/dist/components/ic-accordion-group.js +16 -16
  474. package/dist/components/ic-accordion-group.js.map +1 -1
  475. package/dist/components/ic-accordion.js +7 -7
  476. package/dist/components/ic-accordion.js.map +1 -1
  477. package/dist/components/ic-alert.js +128 -1
  478. package/dist/components/ic-alert.js.map +1 -1
  479. package/dist/components/ic-back-to-top.js +29 -16
  480. package/dist/components/ic-back-to-top.js.map +1 -1
  481. package/dist/components/ic-badge.js +25 -54
  482. package/dist/components/ic-badge.js.map +1 -1
  483. package/dist/components/ic-breadcrumb-group.js +31 -16
  484. package/dist/components/ic-breadcrumb-group.js.map +1 -1
  485. package/dist/components/ic-breadcrumb2.js +57 -8
  486. package/dist/components/ic-breadcrumb2.js.map +1 -1
  487. package/dist/components/ic-button2.js +29 -33
  488. package/dist/components/ic-button2.js.map +1 -1
  489. package/dist/components/{ic-data-entity.d.ts → ic-card-vertical.d.ts} +4 -4
  490. package/dist/components/ic-card-vertical.js +198 -0
  491. package/dist/components/ic-card-vertical.js.map +1 -0
  492. package/dist/components/ic-checkbox-group.js +24 -11
  493. package/dist/components/ic-checkbox-group.js.map +1 -1
  494. package/dist/components/ic-checkbox.js +9 -21
  495. package/dist/components/ic-checkbox.js.map +1 -1
  496. package/dist/components/ic-chip.js +24 -23
  497. package/dist/components/ic-chip.js.map +1 -1
  498. package/dist/components/ic-classification-banner.js +2 -2
  499. package/dist/components/ic-classification-banner.js.map +1 -1
  500. package/dist/components/{ic-card.d.ts → ic-data-list.d.ts} +4 -4
  501. package/dist/components/ic-data-list.js +56 -0
  502. package/dist/components/ic-data-list.js.map +1 -0
  503. package/dist/components/ic-data-row.js +14 -13
  504. package/dist/components/ic-data-row.js.map +1 -1
  505. package/dist/components/ic-dialog.js +17 -119
  506. package/dist/components/ic-dialog.js.map +1 -1
  507. package/dist/components/ic-divider2.js +89 -13
  508. package/dist/components/ic-divider2.js.map +1 -1
  509. package/dist/components/ic-empty-state.js +11 -8
  510. package/dist/components/ic-empty-state.js.map +1 -1
  511. package/dist/components/ic-footer-link-group.js +14 -15
  512. package/dist/components/ic-footer-link-group.js.map +1 -1
  513. package/dist/components/ic-footer-link.js +19 -13
  514. package/dist/components/ic-footer-link.js.map +1 -1
  515. package/dist/components/ic-footer.js +12 -14
  516. package/dist/components/ic-footer.js.map +1 -1
  517. package/dist/components/ic-hero.js +13 -17
  518. package/dist/components/ic-hero.js.map +1 -1
  519. package/dist/components/ic-horizontal-scroll2.js +17 -9
  520. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  521. package/dist/components/ic-input-component-container2.js +12 -31
  522. package/dist/components/ic-input-component-container2.js.map +1 -1
  523. package/dist/components/ic-input-label2.js +18 -23
  524. package/dist/components/ic-input-label2.js.map +1 -1
  525. package/dist/components/ic-input-validation2.js +9 -10
  526. package/dist/components/ic-input-validation2.js.map +1 -1
  527. package/dist/components/ic-link2.js +25 -18
  528. package/dist/components/ic-link2.js.map +1 -1
  529. package/dist/components/ic-loading-indicator2.js +29 -23
  530. package/dist/components/ic-loading-indicator2.js.map +1 -1
  531. package/dist/components/ic-menu-group.js +2 -2
  532. package/dist/components/ic-menu-group.js.map +1 -1
  533. package/dist/components/ic-menu-item2.js +14 -14
  534. package/dist/components/ic-menu-item2.js.map +1 -1
  535. package/dist/components/ic-menu2.js +473 -180
  536. package/dist/components/ic-menu2.js.map +1 -1
  537. package/dist/components/ic-navigation-button.js +14 -11
  538. package/dist/components/ic-navigation-button.js.map +1 -1
  539. package/dist/components/ic-navigation-group.js +16 -14
  540. package/dist/components/ic-navigation-group.js.map +1 -1
  541. package/dist/components/ic-navigation-item.js +13 -10
  542. package/dist/components/ic-navigation-item.js.map +1 -1
  543. package/dist/components/ic-navigation-menu2.js +6 -4
  544. package/dist/components/ic-navigation-menu2.js.map +1 -1
  545. package/dist/components/ic-page-header.js +11 -10
  546. package/dist/components/ic-page-header.js.map +1 -1
  547. package/dist/components/ic-pagination-item2.js +10 -12
  548. package/dist/components/ic-pagination-item2.js.map +1 -1
  549. package/dist/components/ic-pagination.js +56 -49
  550. package/dist/components/ic-pagination.js.map +1 -1
  551. package/dist/components/ic-popover-menu.js +24 -3
  552. package/dist/components/ic-popover-menu.js.map +1 -1
  553. package/dist/components/ic-radio-group.js +35 -19
  554. package/dist/components/ic-radio-group.js.map +1 -1
  555. package/dist/components/ic-radio-option.js +37 -47
  556. package/dist/components/ic-radio-option.js.map +1 -1
  557. package/dist/components/ic-search-bar.js +73 -85
  558. package/dist/components/ic-search-bar.js.map +1 -1
  559. package/dist/components/ic-select.js +197 -89
  560. package/dist/components/ic-select.js.map +1 -1
  561. package/dist/components/ic-side-navigation.js +20 -23
  562. package/dist/components/ic-side-navigation.js.map +1 -1
  563. package/dist/components/ic-skeleton.js +6 -8
  564. package/dist/components/ic-skeleton.js.map +1 -1
  565. package/dist/components/ic-status-tag.js +9 -16
  566. package/dist/components/ic-status-tag.js.map +1 -1
  567. package/dist/components/ic-step.js +48 -51
  568. package/dist/components/ic-step.js.map +1 -1
  569. package/dist/components/ic-stepper.js +29 -18
  570. package/dist/components/ic-stepper.js.map +1 -1
  571. package/dist/components/ic-switch.js +18 -19
  572. package/dist/components/ic-switch.js.map +1 -1
  573. package/dist/components/ic-tab-context.js +39 -31
  574. package/dist/components/ic-tab-context.js.map +1 -1
  575. package/dist/components/ic-tab-group.js +11 -13
  576. package/dist/components/ic-tab-group.js.map +1 -1
  577. package/dist/components/ic-tab-panel.js +17 -13
  578. package/dist/components/ic-tab-panel.js.map +1 -1
  579. package/dist/components/ic-tab.js +11 -9
  580. package/dist/components/ic-tab.js.map +1 -1
  581. package/dist/components/ic-text-field.js +371 -1
  582. package/dist/components/ic-text-field.js.map +1 -1
  583. package/dist/components/ic-theme.js +51 -25
  584. package/dist/components/ic-theme.js.map +1 -1
  585. package/dist/components/ic-toast-region.js +1 -9
  586. package/dist/components/ic-toast-region.js.map +1 -1
  587. package/dist/components/ic-toast.js +86 -37
  588. package/dist/components/ic-toast.js.map +1 -1
  589. package/dist/components/ic-toggle-button-group.js +71 -30
  590. package/dist/components/ic-toggle-button-group.js.map +1 -1
  591. package/dist/components/ic-toggle-button.js +73 -40
  592. package/dist/components/ic-toggle-button.js.map +1 -1
  593. package/dist/components/ic-tooltip2.js +8 -3
  594. package/dist/components/ic-tooltip2.js.map +1 -1
  595. package/dist/components/ic-top-navigation.js +19 -13
  596. package/dist/components/ic-top-navigation.js.map +1 -1
  597. package/dist/components/ic-typography2.js +9 -6
  598. package/dist/components/ic-typography2.js.map +1 -1
  599. package/dist/core/ag-theme-icds.css +32 -31
  600. package/dist/core/core.css +1606 -64
  601. package/dist/core/core.esm.js +1 -1
  602. package/dist/core/core.esm.js.map +1 -1
  603. package/dist/core/p-0cb72d37.entry.js +2 -0
  604. package/dist/core/p-0cb72d37.entry.js.map +1 -0
  605. package/dist/core/p-1223d0e9.entry.js +2 -0
  606. package/dist/core/p-1223d0e9.entry.js.map +1 -0
  607. package/dist/core/p-190c3474.entry.js +2 -0
  608. package/dist/core/p-190c3474.entry.js.map +1 -0
  609. package/dist/core/p-199b9196.entry.js +2 -0
  610. package/dist/core/p-199b9196.entry.js.map +1 -0
  611. package/dist/core/p-1bf956cb.entry.js +2 -0
  612. package/dist/core/p-1bf956cb.entry.js.map +1 -0
  613. package/dist/core/p-20ac0d2a.entry.js +2 -0
  614. package/dist/core/p-20ac0d2a.entry.js.map +1 -0
  615. package/dist/core/p-2197e83e.entry.js +2 -0
  616. package/dist/core/p-2197e83e.entry.js.map +1 -0
  617. package/dist/core/p-243ad74c.entry.js +2 -0
  618. package/dist/core/p-243ad74c.entry.js.map +1 -0
  619. package/dist/core/p-24a34d72.entry.js +2 -0
  620. package/dist/core/p-24a34d72.entry.js.map +1 -0
  621. package/dist/core/{p-7438ab1f.entry.js → p-26bc7c62.entry.js} +2 -2
  622. package/dist/core/p-26bc7c62.entry.js.map +1 -0
  623. package/dist/core/{p-3eda4e14.entry.js → p-27274ca8.entry.js} +2 -2
  624. package/dist/core/p-27274ca8.entry.js.map +1 -0
  625. package/dist/core/p-29afeb33.entry.js +2 -0
  626. package/dist/core/p-29afeb33.entry.js.map +1 -0
  627. package/dist/core/p-2cc0d6b9.entry.js +2 -0
  628. package/dist/core/p-2cc0d6b9.entry.js.map +1 -0
  629. package/dist/core/p-31c84a47.entry.js +2 -0
  630. package/dist/core/p-31c84a47.entry.js.map +1 -0
  631. package/dist/core/p-33b44dc1.entry.js +2 -0
  632. package/dist/core/p-33b44dc1.entry.js.map +1 -0
  633. package/dist/core/p-36ac5305.entry.js +2 -0
  634. package/dist/core/p-36ac5305.entry.js.map +1 -0
  635. package/dist/core/{p-3969d3c0.entry.js → p-3ea4a005.entry.js} +2 -2
  636. package/dist/core/p-3ea4a005.entry.js.map +1 -0
  637. package/dist/core/p-404b482e.entry.js +2 -0
  638. package/dist/core/p-404b482e.entry.js.map +1 -0
  639. package/dist/core/p-419d3378.entry.js +2 -0
  640. package/dist/core/p-419d3378.entry.js.map +1 -0
  641. package/dist/core/p-47038ea3.entry.js +2 -0
  642. package/dist/core/p-47038ea3.entry.js.map +1 -0
  643. package/dist/core/p-490bf0ee.entry.js +2 -0
  644. package/dist/core/p-490bf0ee.entry.js.map +1 -0
  645. package/dist/core/p-4e6e34fe.entry.js +2 -0
  646. package/dist/core/p-4e6e34fe.entry.js.map +1 -0
  647. package/dist/core/p-4fce49bd.entry.js +2 -0
  648. package/dist/core/p-4fce49bd.entry.js.map +1 -0
  649. package/dist/core/p-50b04d0f.entry.js +2 -0
  650. package/dist/core/p-50b04d0f.entry.js.map +1 -0
  651. package/dist/core/p-5b42dbef.entry.js +2 -0
  652. package/dist/core/p-5b42dbef.entry.js.map +1 -0
  653. package/dist/core/p-5be2c26a.entry.js +2 -0
  654. package/dist/core/p-5be2c26a.entry.js.map +1 -0
  655. package/dist/core/p-5d5345a4.entry.js +2 -0
  656. package/dist/core/p-5d5345a4.entry.js.map +1 -0
  657. package/dist/core/p-5dcc0489.entry.js +2 -0
  658. package/dist/core/p-5dcc0489.entry.js.map +1 -0
  659. package/dist/core/p-5f6d6b3f.entry.js +2 -0
  660. package/dist/core/p-5f6d6b3f.entry.js.map +1 -0
  661. package/dist/core/p-5f74782e.entry.js +2 -0
  662. package/dist/core/p-5f74782e.entry.js.map +1 -0
  663. package/dist/core/p-641e244d.entry.js +2 -0
  664. package/dist/core/p-641e244d.entry.js.map +1 -0
  665. package/dist/core/p-6c1cf351.entry.js +2 -0
  666. package/dist/core/p-6c1cf351.entry.js.map +1 -0
  667. package/dist/core/p-6e630778.entry.js +2 -0
  668. package/dist/core/p-6e630778.entry.js.map +1 -0
  669. package/dist/core/p-7c8cd719.entry.js +2 -0
  670. package/dist/core/p-7c8cd719.entry.js.map +1 -0
  671. package/dist/core/p-7c94e055.entry.js +2 -0
  672. package/dist/core/p-7c94e055.entry.js.map +1 -0
  673. package/dist/core/p-7fa74998.entry.js +2 -0
  674. package/dist/core/p-7fa74998.entry.js.map +1 -0
  675. package/dist/core/p-7ff4632d.entry.js +2 -0
  676. package/dist/core/p-7ff4632d.entry.js.map +1 -0
  677. package/dist/core/p-84c3a870.entry.js +2 -0
  678. package/dist/core/p-84c3a870.entry.js.map +1 -0
  679. package/dist/core/p-8624bb98.entry.js +2 -0
  680. package/dist/core/p-8624bb98.entry.js.map +1 -0
  681. package/dist/core/p-87aa30b4.entry.js +2 -0
  682. package/dist/core/p-87aa30b4.entry.js.map +1 -0
  683. package/dist/core/p-932f3e3c.js +2 -0
  684. package/dist/core/p-932f3e3c.js.map +1 -0
  685. package/dist/core/{p-6fae7e1f.entry.js → p-96b4ca6e.entry.js} +2 -2
  686. package/dist/core/p-96b4ca6e.entry.js.map +1 -0
  687. package/dist/core/p-9ad4bbf4.entry.js +2 -0
  688. package/dist/core/p-9ad4bbf4.entry.js.map +1 -0
  689. package/dist/core/p-9cfd6855.entry.js +2 -0
  690. package/dist/core/p-9cfd6855.entry.js.map +1 -0
  691. package/dist/core/p-a38f5453.entry.js +2 -0
  692. package/dist/core/p-a38f5453.entry.js.map +1 -0
  693. package/dist/core/p-af934e73.entry.js +2 -0
  694. package/dist/core/p-af934e73.entry.js.map +1 -0
  695. package/dist/core/p-b9941d97.entry.js +2 -0
  696. package/dist/core/p-b9941d97.entry.js.map +1 -0
  697. package/dist/core/p-cf0176be.entry.js +2 -0
  698. package/dist/core/p-cf0176be.entry.js.map +1 -0
  699. package/dist/core/p-cf5d88a9.entry.js +2 -0
  700. package/dist/core/p-cf5d88a9.entry.js.map +1 -0
  701. package/dist/core/p-d21d8014.entry.js +2 -0
  702. package/dist/core/p-d21d8014.entry.js.map +1 -0
  703. package/dist/core/p-df957570.entry.js +2 -0
  704. package/dist/core/p-df957570.entry.js.map +1 -0
  705. package/dist/core/p-e0730a5d.entry.js +2 -0
  706. package/dist/core/p-e0730a5d.entry.js.map +1 -0
  707. package/dist/core/p-e1f8d915.entry.js +2 -0
  708. package/dist/core/p-e1f8d915.entry.js.map +1 -0
  709. package/dist/core/p-e4cb5585.entry.js +2 -0
  710. package/dist/core/p-e4cb5585.entry.js.map +1 -0
  711. package/dist/core/p-f073fc69.entry.js +2 -0
  712. package/dist/core/p-f073fc69.entry.js.map +1 -0
  713. package/dist/core/p-f2d9eefe.entry.js +2 -0
  714. package/dist/core/p-f2d9eefe.entry.js.map +1 -0
  715. package/dist/core/p-f7872eef.entry.js +2 -0
  716. package/dist/core/p-f7872eef.entry.js.map +1 -0
  717. package/dist/core/{p-9df32798.entry.js → p-f9dceda0.entry.js} +2 -2
  718. package/dist/core/p-f9dceda0.entry.js.map +1 -0
  719. package/dist/core/p-fac53f92.entry.js +2 -0
  720. package/dist/core/p-fac53f92.entry.js.map +1 -0
  721. package/dist/esm/core.js +1 -1
  722. package/dist/esm/{helpers-003f27c9.js → helpers-2624c32c.js} +65 -22
  723. package/dist/esm/helpers-2624c32c.js.map +1 -0
  724. package/dist/esm/ic-accordion-group.entry.js +14 -15
  725. package/dist/esm/ic-accordion-group.entry.js.map +1 -1
  726. package/dist/esm/ic-accordion.entry.js +7 -8
  727. package/dist/esm/ic-accordion.entry.js.map +1 -1
  728. package/dist/esm/ic-alert.entry.js +8 -9
  729. package/dist/esm/ic-alert.entry.js.map +1 -1
  730. package/dist/esm/ic-back-to-top.entry.js +16 -17
  731. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  732. package/dist/esm/ic-badge.entry.js +22 -51
  733. package/dist/esm/ic-badge.entry.js.map +1 -1
  734. package/dist/esm/ic-breadcrumb-group.entry.js +26 -14
  735. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  736. package/dist/esm/ic-breadcrumb.entry.js +53 -8
  737. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  738. package/dist/esm/ic-button_3.entry.js +59 -53
  739. package/dist/esm/ic-button_3.entry.js.map +1 -1
  740. package/dist/esm/ic-card-vertical.entry.js +146 -0
  741. package/dist/esm/ic-card-vertical.entry.js.map +1 -0
  742. package/dist/esm/ic-checkbox-group.entry.js +21 -10
  743. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  744. package/dist/esm/ic-checkbox.entry.js +8 -16
  745. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  746. package/dist/esm/ic-chip.entry.js +23 -24
  747. package/dist/esm/ic-chip.entry.js.map +1 -1
  748. package/dist/esm/ic-classification-banner.entry.js +2 -2
  749. package/dist/esm/ic-classification-banner.entry.js.map +1 -1
  750. package/dist/esm/ic-data-list.entry.js +28 -0
  751. package/dist/esm/ic-data-list.entry.js.map +1 -0
  752. package/dist/esm/ic-data-row.entry.js +12 -12
  753. package/dist/esm/ic-data-row.entry.js.map +1 -1
  754. package/dist/esm/ic-dialog.entry.js +14 -105
  755. package/dist/esm/ic-dialog.entry.js.map +1 -1
  756. package/dist/esm/ic-divider.entry.js +74 -11
  757. package/dist/esm/ic-divider.entry.js.map +1 -1
  758. package/dist/esm/ic-empty-state.entry.js +9 -8
  759. package/dist/esm/ic-empty-state.entry.js.map +1 -1
  760. package/dist/esm/ic-footer-link-group.entry.js +12 -14
  761. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  762. package/dist/esm/ic-footer-link.entry.js +11 -12
  763. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  764. package/dist/esm/ic-footer.entry.js +11 -13
  765. package/dist/esm/ic-footer.entry.js.map +1 -1
  766. package/dist/esm/ic-hero.entry.js +12 -15
  767. package/dist/esm/ic-hero.entry.js.map +1 -1
  768. package/dist/esm/ic-horizontal-scroll.entry.js +15 -9
  769. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  770. package/dist/esm/ic-input-component-container_3.entry.js +478 -201
  771. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  772. package/dist/esm/ic-input-label_2.entry.js +23 -28
  773. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  774. package/dist/esm/ic-link.entry.js +22 -15
  775. package/dist/esm/ic-link.entry.js.map +1 -1
  776. package/dist/esm/ic-menu-group.entry.js +2 -3
  777. package/dist/esm/ic-menu-group.entry.js.map +1 -1
  778. package/dist/esm/ic-menu-item.entry.js +12 -13
  779. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  780. package/dist/esm/ic-navigation-button.entry.js +12 -10
  781. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  782. package/dist/esm/ic-navigation-group.entry.js +14 -14
  783. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  784. package/dist/esm/ic-navigation-item.entry.js +11 -10
  785. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  786. package/dist/esm/ic-navigation-menu.entry.js +5 -5
  787. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  788. package/dist/esm/ic-page-header.entry.js +10 -10
  789. package/dist/esm/ic-page-header.entry.js.map +1 -1
  790. package/dist/esm/ic-pagination-item.entry.js +8 -12
  791. package/dist/esm/ic-pagination-item.entry.js.map +1 -1
  792. package/dist/esm/ic-pagination.entry.js +51 -46
  793. package/dist/esm/ic-pagination.entry.js.map +1 -1
  794. package/dist/esm/ic-popover-menu.entry.js +23 -4
  795. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  796. package/dist/esm/ic-radio-group.entry.js +32 -18
  797. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  798. package/dist/esm/ic-radio-option.entry.js +34 -40
  799. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  800. package/dist/esm/ic-search-bar.entry.js +56 -57
  801. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  802. package/dist/esm/ic-select.entry.js +193 -80
  803. package/dist/esm/ic-select.entry.js.map +1 -1
  804. package/dist/esm/ic-side-navigation.entry.js +19 -22
  805. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  806. package/dist/esm/ic-skeleton.entry.js +5 -6
  807. package/dist/esm/ic-skeleton.entry.js.map +1 -1
  808. package/dist/esm/ic-status-tag.entry.js +8 -16
  809. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  810. package/dist/esm/ic-step.entry.js +41 -46
  811. package/dist/esm/ic-step.entry.js.map +1 -1
  812. package/dist/esm/ic-stepper.entry.js +27 -18
  813. package/dist/esm/ic-stepper.entry.js.map +1 -1
  814. package/dist/esm/ic-switch.entry.js +17 -18
  815. package/dist/esm/ic-switch.entry.js.map +1 -1
  816. package/dist/esm/ic-tab-context.entry.js +34 -28
  817. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  818. package/dist/esm/ic-tab-group.entry.js +9 -11
  819. package/dist/esm/ic-tab-group.entry.js.map +1 -1
  820. package/dist/esm/ic-tab-panel.entry.js +12 -11
  821. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  822. package/dist/esm/ic-tab.entry.js +10 -9
  823. package/dist/esm/ic-tab.entry.js.map +1 -1
  824. package/dist/esm/ic-text-field.entry.js +81 -72
  825. package/dist/esm/ic-text-field.entry.js.map +1 -1
  826. package/dist/esm/ic-theme.entry.js +45 -22
  827. package/dist/esm/ic-theme.entry.js.map +1 -1
  828. package/dist/esm/ic-toast-region.entry.js +0 -7
  829. package/dist/esm/ic-toast-region.entry.js.map +1 -1
  830. package/dist/esm/ic-toast.entry.js +83 -36
  831. package/dist/esm/ic-toast.entry.js.map +1 -1
  832. package/dist/esm/ic-toggle-button-group.entry.js +63 -30
  833. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  834. package/dist/esm/ic-toggle-button.entry.js +65 -34
  835. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  836. package/dist/esm/ic-top-navigation.entry.js +17 -12
  837. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  838. package/dist/esm/ic-typography.entry.js +9 -8
  839. package/dist/esm/ic-typography.entry.js.map +1 -1
  840. package/dist/esm/index-d1d2c456.js +16 -16
  841. package/dist/esm/loader.js +1 -1
  842. package/dist/types/components/ic-accordion/ic-accordion.d.ts +5 -5
  843. package/dist/types/components/ic-accordion-group/ic-accordion-group.d.ts +6 -6
  844. package/dist/types/components/ic-alert/ic-alert.d.ts +9 -9
  845. package/dist/types/components/ic-back-to-top/ic-back-to-top.d.ts +5 -1
  846. package/dist/types/components/ic-badge/ic-badge.d.ts +8 -15
  847. package/dist/types/components/ic-breadcrumb/ic-breadcrumb.d.ts +17 -5
  848. package/dist/types/components/ic-breadcrumb-group/ic-breadcrumb-group.d.ts +13 -7
  849. package/dist/types/components/ic-button/ic-button.d.ts +10 -7
  850. package/dist/types/components/{ic-card/ic-card.d.ts → ic-card-vertical/ic-card-vertical.d.ts} +10 -6
  851. package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +3 -27
  852. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +5 -3
  853. package/dist/types/components/ic-chip/ic-chip.d.ts +8 -11
  854. package/dist/types/components/ic-data-list/ic-data-list.d.ts +20 -0
  855. package/dist/types/components/ic-data-row/ic-data-row.d.ts +4 -4
  856. package/dist/types/components/ic-dialog/ic-dialog.d.ts +5 -37
  857. package/dist/types/components/ic-divider/ic-divider.d.ts +33 -3
  858. package/dist/types/components/ic-divider/ic-divider.types.d.ts +3 -0
  859. package/dist/types/components/ic-empty-state/ic-empty-state.d.ts +6 -2
  860. package/dist/types/components/ic-footer/ic-footer.d.ts +3 -3
  861. package/dist/types/components/ic-footer-link/ic-footer-link.d.ts +3 -3
  862. package/dist/types/components/ic-footer-link-group/ic-footer-link-group.d.ts +4 -3
  863. package/dist/types/components/ic-hero/ic-hero.d.ts +5 -9
  864. package/dist/types/components/ic-horizontal-scroll/ic-horizontal-scroll.d.ts +8 -2
  865. package/dist/types/components/ic-input-component-container/ic-input-component-container.d.ts +0 -12
  866. package/dist/types/components/ic-input-label/ic-input-label.d.ts +8 -12
  867. package/dist/types/components/ic-link/ic-link.d.ts +10 -10
  868. package/dist/types/components/ic-loading-indicator/ic-loading-indicator.d.ts +12 -8
  869. package/dist/types/components/ic-loading-indicator/ic-loading-indicator.types.d.ts +1 -1
  870. package/dist/types/components/ic-menu/ic-menu.d.ts +49 -20
  871. package/dist/types/components/ic-menu-item/ic-menu-item.d.ts +5 -5
  872. package/dist/types/components/ic-navigation-button/ic-navigation-button.d.ts +7 -3
  873. package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +7 -3
  874. package/dist/types/components/ic-navigation-item/ic-navigation-item.d.ts +7 -3
  875. package/dist/types/components/ic-navigation-menu/ic-navigation-menu.d.ts +5 -0
  876. package/dist/types/components/ic-page-header/ic-page-header.d.ts +5 -5
  877. package/dist/types/components/ic-pagination/ic-pagination.d.ts +13 -9
  878. package/dist/types/components/ic-pagination-item/ic-pagination-item.d.ts +9 -5
  879. package/dist/types/components/ic-popover-menu/ic-popover-menu.d.ts +5 -0
  880. package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +7 -6
  881. package/dist/types/components/ic-radio-option/ic-radio-option.d.ts +8 -27
  882. package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +17 -18
  883. package/dist/types/components/ic-select/ic-select.d.ts +36 -47
  884. package/dist/types/components/ic-side-navigation/ic-side-navigation.d.ts +4 -4
  885. package/dist/types/components/ic-side-navigation/ic-side-navigation.types.d.ts +2 -2
  886. package/dist/types/components/ic-skeleton/ic-skeleton.d.ts +3 -6
  887. package/dist/types/components/ic-status-tag/ic-status-tag.d.ts +9 -10
  888. package/dist/types/components/ic-status-tag/ic-status-tag.types.d.ts +0 -1
  889. package/dist/types/components/ic-step/ic-step.d.ts +11 -6
  890. package/dist/types/components/ic-stepper/ic-stepper.d.ts +6 -4
  891. package/dist/types/components/ic-stepper/test/basic/ic-stepper-test-examples.d.ts +4 -4
  892. package/dist/types/components/ic-switch/ic-switch.d.ts +4 -8
  893. package/dist/types/components/ic-tab/ic-tab.d.ts +5 -3
  894. package/dist/types/components/ic-tab-context/ic-tab-context.d.ts +11 -11
  895. package/dist/types/components/ic-tab-group/ic-tab-group.d.ts +5 -10
  896. package/dist/types/components/ic-tab-panel/ic-tab-panel.d.ts +13 -7
  897. package/dist/types/components/ic-text-field/ic-text-field.d.ts +15 -19
  898. package/dist/types/components/ic-theme/ic-theme.d.ts +15 -8
  899. package/dist/types/components/ic-toast/ic-toast.d.ts +8 -1
  900. package/dist/types/components/ic-toast-region/ic-toast-region.d.ts +0 -5
  901. package/dist/types/components/ic-toggle-button/ic-toggle-button.d.ts +11 -10
  902. package/dist/types/components/ic-toggle-button-group/ic-toggle-button-group.d.ts +15 -5
  903. package/dist/types/components/ic-toggle-button-group/ic-toggle-button-group.types.d.ts +1 -1
  904. package/dist/types/components/ic-tooltip/ic-tooltip.d.ts +5 -0
  905. package/dist/types/components/ic-top-navigation/ic-top-navigation.d.ts +8 -4
  906. package/dist/types/components/ic-typography/ic-typography.d.ts +5 -1
  907. package/dist/types/components.d.ts +647 -662
  908. package/dist/types/utils/helpers.d.ts +16 -8
  909. package/dist/types/utils/types.d.ts +11 -9
  910. package/hydrate/index.js +2155 -1491
  911. package/package.json +13 -12
  912. package/vscode-data.json +827 -467
  913. package/dist/cjs/helpers-6f6991cb.js.map +0 -1
  914. package/dist/cjs/ic-card.cjs.entry.js +0 -149
  915. package/dist/cjs/ic-card.cjs.entry.js.map +0 -1
  916. package/dist/cjs/ic-data-entity.cjs.entry.js +0 -29
  917. package/dist/cjs/ic-data-entity.cjs.entry.js.map +0 -1
  918. package/dist/cjs/types-dc22e301.js +0 -16
  919. package/dist/cjs/types-dc22e301.js.map +0 -1
  920. package/dist/collection/components/ic-card/ic-card.js.map +0 -1
  921. package/dist/collection/components/ic-card/test/basic/ic-card.spec.js.map +0 -1
  922. package/dist/collection/components/ic-chip/ic-chip.types.js +0 -2
  923. package/dist/collection/components/ic-chip/ic-chip.types.js.map +0 -1
  924. package/dist/collection/components/ic-data-entity/ic-data-entity.js.map +0 -1
  925. package/dist/collection/components/ic-data-entity/test/basic/ic-data-entity.spec.js.map +0 -1
  926. package/dist/components/ic-alert2.js +0 -132
  927. package/dist/components/ic-alert2.js.map +0 -1
  928. package/dist/components/ic-card.js +0 -196
  929. package/dist/components/ic-card.js.map +0 -1
  930. package/dist/components/ic-data-entity.js +0 -53
  931. package/dist/components/ic-data-entity.js.map +0 -1
  932. package/dist/components/ic-text-field2.js +0 -368
  933. package/dist/components/ic-text-field2.js.map +0 -1
  934. package/dist/components/types.js +0 -16
  935. package/dist/components/types.js.map +0 -1
  936. package/dist/core/p-08478a4c.entry.js +0 -2
  937. package/dist/core/p-08478a4c.entry.js.map +0 -1
  938. package/dist/core/p-12bac804.entry.js +0 -2
  939. package/dist/core/p-12bac804.entry.js.map +0 -1
  940. package/dist/core/p-13b2c3a2.entry.js +0 -2
  941. package/dist/core/p-13b2c3a2.entry.js.map +0 -1
  942. package/dist/core/p-168a7440.entry.js +0 -2
  943. package/dist/core/p-168a7440.entry.js.map +0 -1
  944. package/dist/core/p-193fc7d0.entry.js +0 -2
  945. package/dist/core/p-193fc7d0.entry.js.map +0 -1
  946. package/dist/core/p-1e4690f8.entry.js +0 -2
  947. package/dist/core/p-1e4690f8.entry.js.map +0 -1
  948. package/dist/core/p-1f6d36d5.entry.js +0 -2
  949. package/dist/core/p-1f6d36d5.entry.js.map +0 -1
  950. package/dist/core/p-26b7b18f.js +0 -2
  951. package/dist/core/p-26b7b18f.js.map +0 -1
  952. package/dist/core/p-2a11be1e.entry.js +0 -2
  953. package/dist/core/p-2a11be1e.entry.js.map +0 -1
  954. package/dist/core/p-3969d3c0.entry.js.map +0 -1
  955. package/dist/core/p-3ba915a5.entry.js +0 -2
  956. package/dist/core/p-3ba915a5.entry.js.map +0 -1
  957. package/dist/core/p-3e8023ff.entry.js +0 -2
  958. package/dist/core/p-3e8023ff.entry.js.map +0 -1
  959. package/dist/core/p-3eda4e14.entry.js.map +0 -1
  960. package/dist/core/p-4c6dc1b2.entry.js +0 -2
  961. package/dist/core/p-4c6dc1b2.entry.js.map +0 -1
  962. package/dist/core/p-51407872.entry.js +0 -2
  963. package/dist/core/p-51407872.entry.js.map +0 -1
  964. package/dist/core/p-597c221c.entry.js +0 -2
  965. package/dist/core/p-597c221c.entry.js.map +0 -1
  966. package/dist/core/p-65dc77ba.entry.js +0 -2
  967. package/dist/core/p-65dc77ba.entry.js.map +0 -1
  968. package/dist/core/p-6beed7db.entry.js +0 -2
  969. package/dist/core/p-6beed7db.entry.js.map +0 -1
  970. package/dist/core/p-6d8dc552.entry.js +0 -2
  971. package/dist/core/p-6d8dc552.entry.js.map +0 -1
  972. package/dist/core/p-6fae7e1f.entry.js.map +0 -1
  973. package/dist/core/p-72f292f2.entry.js +0 -2
  974. package/dist/core/p-72f292f2.entry.js.map +0 -1
  975. package/dist/core/p-7438ab1f.entry.js.map +0 -1
  976. package/dist/core/p-78f16b1a.entry.js +0 -2
  977. package/dist/core/p-78f16b1a.entry.js.map +0 -1
  978. package/dist/core/p-7b3a4b3f.entry.js +0 -2
  979. package/dist/core/p-7b3a4b3f.entry.js.map +0 -1
  980. package/dist/core/p-7f1594d9.entry.js +0 -2
  981. package/dist/core/p-7f1594d9.entry.js.map +0 -1
  982. package/dist/core/p-8dd2d3df.entry.js +0 -2
  983. package/dist/core/p-8dd2d3df.entry.js.map +0 -1
  984. package/dist/core/p-90433147.entry.js +0 -2
  985. package/dist/core/p-90433147.entry.js.map +0 -1
  986. package/dist/core/p-915e5888.entry.js +0 -2
  987. package/dist/core/p-915e5888.entry.js.map +0 -1
  988. package/dist/core/p-91fab13d.entry.js +0 -2
  989. package/dist/core/p-91fab13d.entry.js.map +0 -1
  990. package/dist/core/p-96e79d69.entry.js +0 -2
  991. package/dist/core/p-96e79d69.entry.js.map +0 -1
  992. package/dist/core/p-9a6790d8.entry.js +0 -2
  993. package/dist/core/p-9a6790d8.entry.js.map +0 -1
  994. package/dist/core/p-9df32798.entry.js.map +0 -1
  995. package/dist/core/p-9ef08234.entry.js +0 -2
  996. package/dist/core/p-9ef08234.entry.js.map +0 -1
  997. package/dist/core/p-a020afbd.entry.js +0 -2
  998. package/dist/core/p-a020afbd.entry.js.map +0 -1
  999. package/dist/core/p-a141ea39.entry.js +0 -2
  1000. package/dist/core/p-a141ea39.entry.js.map +0 -1
  1001. package/dist/core/p-a32016ff.entry.js +0 -2
  1002. package/dist/core/p-a32016ff.entry.js.map +0 -1
  1003. package/dist/core/p-a438656d.entry.js +0 -2
  1004. package/dist/core/p-a438656d.entry.js.map +0 -1
  1005. package/dist/core/p-a9cea205.entry.js +0 -2
  1006. package/dist/core/p-a9cea205.entry.js.map +0 -1
  1007. package/dist/core/p-b21d5f94.entry.js +0 -2
  1008. package/dist/core/p-b21d5f94.entry.js.map +0 -1
  1009. package/dist/core/p-b262eaff.entry.js +0 -2
  1010. package/dist/core/p-b262eaff.entry.js.map +0 -1
  1011. package/dist/core/p-b60912a7.entry.js +0 -2
  1012. package/dist/core/p-b60912a7.entry.js.map +0 -1
  1013. package/dist/core/p-b62735aa.entry.js +0 -2
  1014. package/dist/core/p-b62735aa.entry.js.map +0 -1
  1015. package/dist/core/p-ba06cc95.entry.js +0 -2
  1016. package/dist/core/p-ba06cc95.entry.js.map +0 -1
  1017. package/dist/core/p-ba884064.entry.js +0 -2
  1018. package/dist/core/p-ba884064.entry.js.map +0 -1
  1019. package/dist/core/p-bdaff5c9.entry.js +0 -2
  1020. package/dist/core/p-bdaff5c9.entry.js.map +0 -1
  1021. package/dist/core/p-bfaa257c.entry.js +0 -2
  1022. package/dist/core/p-bfaa257c.entry.js.map +0 -1
  1023. package/dist/core/p-c05474f3.entry.js +0 -2
  1024. package/dist/core/p-c05474f3.entry.js.map +0 -1
  1025. package/dist/core/p-c939d07d.entry.js +0 -2
  1026. package/dist/core/p-c939d07d.entry.js.map +0 -1
  1027. package/dist/core/p-d0299926.entry.js +0 -2
  1028. package/dist/core/p-d0299926.entry.js.map +0 -1
  1029. package/dist/core/p-d3344518.entry.js +0 -2
  1030. package/dist/core/p-d3344518.entry.js.map +0 -1
  1031. package/dist/core/p-d375858e.entry.js +0 -2
  1032. package/dist/core/p-d375858e.entry.js.map +0 -1
  1033. package/dist/core/p-d41c847e.js +0 -2
  1034. package/dist/core/p-d41c847e.js.map +0 -1
  1035. package/dist/core/p-e1ab5945.entry.js +0 -2
  1036. package/dist/core/p-e1ab5945.entry.js.map +0 -1
  1037. package/dist/core/p-e668390c.entry.js +0 -2
  1038. package/dist/core/p-e668390c.entry.js.map +0 -1
  1039. package/dist/core/p-eae017ce.entry.js +0 -2
  1040. package/dist/core/p-eae017ce.entry.js.map +0 -1
  1041. package/dist/core/p-ee6aa6a1.entry.js +0 -2
  1042. package/dist/core/p-ee6aa6a1.entry.js.map +0 -1
  1043. package/dist/core/p-f3599009.entry.js +0 -2
  1044. package/dist/core/p-f3599009.entry.js.map +0 -1
  1045. package/dist/core/p-f39741be.entry.js +0 -2
  1046. package/dist/core/p-f39741be.entry.js.map +0 -1
  1047. package/dist/core/p-f404b35e.entry.js +0 -2
  1048. package/dist/core/p-f404b35e.entry.js.map +0 -1
  1049. package/dist/core/p-f4382f1f.entry.js +0 -2
  1050. package/dist/core/p-f4382f1f.entry.js.map +0 -1
  1051. package/dist/esm/helpers-003f27c9.js.map +0 -1
  1052. package/dist/esm/ic-card.entry.js +0 -145
  1053. package/dist/esm/ic-card.entry.js.map +0 -1
  1054. package/dist/esm/ic-data-entity.entry.js +0 -25
  1055. package/dist/esm/ic-data-entity.entry.js.map +0 -1
  1056. package/dist/esm/types-6f6b41a5.js +0 -16
  1057. package/dist/esm/types-6f6b41a5.js.map +0 -1
  1058. package/dist/types/components/ic-chip/ic-chip.types.d.ts +0 -1
  1059. package/dist/types/components/ic-data-entity/ic-data-entity.d.ts +0 -20
@@ -1,8 +1,7 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-d1d2c456.js';
2
- import { r as removeDisabledFalse, n as removeFormResetListener, m as addFormResetListener, a as onComponentRequiredPropUndefined, p as renderHiddenInput, s as getInputDescribedByText } from './helpers-003f27c9.js';
3
- import './types-6f6b41a5.js';
2
+ import { r as removeDisabledFalse, k as removeFormResetListener, j as addFormResetListener, b as onComponentRequiredPropUndefined, l as renderHiddenInput, n as getInputDescribedByText } from './helpers-2624c32c.js';
4
3
 
5
- const icSwitchCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type=\"button\"],[type=\"reset\"],[type=\"submit\"]{-webkit-appearance:button}button::-moz-focus-inner,[type=\"button\"]::-moz-focus-inner,[type=\"reset\"]::-moz-focus-inner,[type=\"submit\"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=\"button\"]:-moz-focusring,[type=\"reset\"]:-moz-focusring,[type=\"submit\"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type=\"checkbox\"],[type=\"radio\"]{box-sizing:border-box;padding:0;}[type=\"number\"]::-webkit-inner-spin-button,[type=\"number\"]::-webkit-outer-spin-button{height:auto}[type=\"search\"]{-webkit-appearance:textfield;outline-offset:-2px;}[type=\"search\"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:inline-block}input{overflow:hidden;-webkit-appearance:none;-moz-appearance:none;appearance:none}.ic-switch-container{display:flex;flex-wrap:wrap;align-items:center;gap:var(--ic-space-xxs);cursor:pointer}.ic-switch-label{margin-left:var(--ic-space-xxs);margin-bottom:var(--ic-space-sm)}.ic-switch-label-small{margin-bottom:0.625rem}.ic-switch-toggle{display:flex;align-items:center;justify-content:space-around;width:4rem;height:var(--ic-space-xl);position:relative;border-radius:100vw;background-color:var(--ic-architectural-200);border:var(--ic-border-width) solid var(--ic-architectural-700);box-sizing:border-box;transition:var(--ic-transition-duration-fast)}.ic-switch-line-break{flex:1 0 100%}.ic-switch-checked-status{padding-left:var(--ic-space-xxs);width:var(--ic-space-lg)}.ic-switch-toggle::before{content:\"\";width:1.333rem;height:1.333rem;border-radius:50%;position:absolute;z-index:2;top:50%;left:0.333rem;transform:translate(0, -50%);background-color:var(--ic-architectural-700);transition:var(--ic-transition-duration-slow)}.ic-switch-icon{display:inline-block;vertical-align:middle;width:0.625rem;height:0.625rem}.ic-switch-icon-circle,.ic-switch-icon-line{stroke-width:1}.ic-switch-icon-circle{stroke:var(--ic-architectural-700)}.ic-switch-icon-line{stroke:var(--ic-architectural-white)}@media (prefers-reduced-motion: reduce){.ic-switch-toggle::before{transition-duration:0ms}}.ic-switch-input:checked+.ic-switch-toggle{background-color:var(--ic-action-default);border:none}.ic-switch-input:checked+.ic-switch-toggle::before{transform:translate(var(--ic-space-xl), -50%);background-color:var(--ic-architectural-white)}.ic-switch-input:not([disabled])+.ic-switch-toggle:hover::before{box-shadow:0 0 0 0.75rem var(--ic-action-dark-bg-hover)}.ic-switch-input:not([disabled])+.ic-switch-toggle:active::before{box-shadow:0 0 0 0.75rem var(--ic-action-dark-bg-active)}.ic-switch-input:not([disabled]):checked+.ic-switch-toggle:hover::before{box-shadow:0 0 0 0.75rem var(--ic-action-default-bg-hover)}.ic-switch-input:not([disabled]):checked+.ic-switch-toggle:active::before{box-shadow:0 0 0 0.75rem var(--ic-action-default-bg-active)}.ic-switch-input:focus:not([disabled])+.ic-switch-toggle,.ic-switch-input:focus-visible:not([disabled])+.ic-switch-toggle{box-shadow:var(--ic-border-focus)}.ic-switch-disabled{cursor:default}.ic-switch-disabled .ic-switch-icon-circle{stroke:var(--ic-architectural-300)}.ic-switch-disabled .ic-switch-icon-line{stroke:var(--ic-action-default-bg-active)}.ic-switch-input:disabled+.ic-switch-toggle{background-color:var(--ic-architectural-80);border:var(--ic-border-disabled)}.ic-switch-input:disabled~.ic-switch-checked-status{color:var(--ic-architectural-300)}.ic-switch-input:disabled+.ic-switch-toggle::before{background-color:var(--ic-architectural-300)}.ic-switch-input:disabled:checked+.ic-switch-toggle{background-color:var(--ic-status-info-light);border:var(--ic-border-width) dashed #98c9f5}.ic-switch-input:disabled:checked+.ic-switch-toggle::before{background-color:var(--ic-architectural-white)}.ic-switch-small{gap:var(--ic-space-xxxs)}.ic-switch-small .ic-switch-checked-status{padding-left:0.375rem}.ic-switch-small .ic-switch-toggle{width:var(--ic-space-xxl);height:var(--ic-space-lg)}.ic-switch-small .ic-switch-toggle::before{width:var(--ic-space-md);height:var(--ic-space-md);left:var(--ic-space-xxs)}.ic-switch-small .ic-switch-input:checked+.ic-switch-toggle::before{transform:translate(var(--ic-space-lg), -50%)}::slotted(*){margin-left:var(--ic-space-sm)}::slotted(svg){fill:currentcolor}@media (forced-colors: active){.ic-switch-toggle::before,.ic-switch-input:checked+.ic-switch-toggle{border:var(--ic-hc-border)}.ic-switch-input:focus+.ic-switch-toggle{border-color:highlight;outline:0.125rem solid highlight}.ic-switch-input:checked+.ic-switch-toggle::before{transform:translate(calc(var(--ic-space-xl) - 0.125rem), -50%)}.ic-switch-input:disabled+.ic-switch-toggle,.ic-switch-input:disabled:checked+.ic-switch-toggle,.ic-switch-input:disabled+.ic-switch-toggle::before{border-color:GrayText}.ic-switch-input:disabled~.ic-switch-checked-status{color:GrayText}.ic-switch-disabled .ic-switch-icon-circle,.ic-switch-disabled .ic-switch-icon-line{stroke:GrayText}}";
4
+ const icSwitchCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type=\"button\"],[type=\"reset\"],[type=\"submit\"]{-webkit-appearance:button}button::-moz-focus-inner,[type=\"button\"]::-moz-focus-inner,[type=\"reset\"]::-moz-focus-inner,[type=\"submit\"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=\"button\"]:-moz-focusring,[type=\"reset\"]:-moz-focusring,[type=\"submit\"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type=\"checkbox\"],[type=\"radio\"]{box-sizing:border-box;padding:0;}[type=\"number\"]::-webkit-inner-spin-button,[type=\"number\"]::-webkit-outer-spin-button{height:auto}[type=\"search\"]{-webkit-appearance:textfield;outline-offset:-2px;}[type=\"search\"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:inline-block;--ic-input-label-text-color:var(--ic-switch-label);--ic-input-label-helper-text-color:var(--ic-switch-help-text)}input{overflow:hidden;-webkit-appearance:none;-moz-appearance:none;appearance:none}.ic-switch-container{display:flex;flex-wrap:wrap;align-items:center;gap:var(--ic-space-xxs);cursor:pointer}.ic-switch-label{margin-left:var(--ic-space-xxs);margin-bottom:var(--ic-space-sm)}.ic-switch-label-small{margin-bottom:0.625rem}.ic-switch-toggle{display:flex;align-items:center;justify-content:space-around;width:4rem;height:var(--ic-space-xl);position:relative;border-radius:100vw;background-color:var(--ic-switch-unchecked-bg);border:var(--ic-border-width) solid var(--ic-switch-unchecked);box-sizing:border-box;transition:var(--ic-transition-duration-fast)}.ic-switch-line-break{flex:1 0 100%}.ic-switch-toggle::before{content:\"\";width:1.333rem;height:1.333rem;border-radius:50%;position:absolute;z-index:2;top:50%;left:0.333rem;transform:translate(0, -50%);background-color:var(--ic-switch-unchecked);transition:var(--ic-transition-duration-slow)}.ic-switch-icon{display:inline-block;vertical-align:middle;width:0.625rem;height:0.625rem}.ic-switch-icon-circle,.ic-switch-icon-line{stroke-width:1}.ic-switch-icon-circle{stroke:var(--ic-switch-indicator-off)}.ic-switch-icon-line{stroke:var(--ic-switch-indicator-on)}@media (prefers-reduced-motion: reduce){.ic-switch-toggle::before{transition-duration:0ms}}.ic-switch-input:checked+.ic-switch-toggle{background-color:var(--ic-switch-checked-bg);border:none}.ic-switch-input:checked+.ic-switch-toggle::before{transform:translate(var(--ic-space-xl), -50%);background-color:var(--ic-switch-checked)}.ic-switch-input:not([disabled])+.ic-switch-toggle:hover::before{box-shadow:0 0 0 0.75rem var(--ic-switch-unchecked-bg-hover)}.ic-switch-input:not([disabled])+.ic-switch-toggle:active::before{box-shadow:0 0 0 0.75rem var(--ic-switch-unchecked-bg-pressed)}.ic-switch-input:not([disabled]):checked+.ic-switch-toggle:hover::before{box-shadow:0 0 0 0.75rem var(--ic-switch-checked-bg-hover)}.ic-switch-input:not([disabled]):checked+.ic-switch-toggle:active::before{box-shadow:0 0 0 0.75rem var(--ic-switch-checked-bg-pressed)}.ic-switch-input:focus:not([disabled])+.ic-switch-toggle,.ic-switch-input:focus-visible:not([disabled])+.ic-switch-toggle{box-shadow:var(--ic-border-focus)}.ic-switch-disabled{cursor:default}.ic-switch-disabled .ic-switch-icon-circle{stroke:var(--ic-switch-indicator-off-disabled)}.ic-switch-disabled .ic-switch-icon-line{stroke:var(--ic-switch-indicator-on-disabled)}.ic-switch-input:disabled+.ic-switch-toggle{background-color:var(--ic-switch-unchecked-bg-disabled);border:var(--ic-space-1px) dashed var(--ic-switch-unchecked-outline-disabled)}.ic-switch-input:disabled+.ic-switch-toggle::before{background-color:var(--ic-switch-unchecked-disabled)}.ic-switch-input:disabled:checked+.ic-switch-toggle{background-color:var(--ic-switch-checked-bg-disabled);border:var(--ic-border-width) dashed\n var(--ic-switch-checked-outline-disabled)}.ic-switch-input:disabled:checked+.ic-switch-toggle::before{background-color:var(--ic-switch-checked)}.ic-switch-small{gap:var(--ic-space-xxxs)}.ic-switch-small .ic-switch-toggle{width:var(--ic-space-xxl);height:var(--ic-space-lg)}.ic-switch-small .ic-switch-toggle::before{width:var(--ic-space-md);height:var(--ic-space-md);left:var(--ic-space-xxs)}.ic-switch-small .ic-switch-input:checked+.ic-switch-toggle::before{transform:translate(var(--ic-space-lg), -50%)}::slotted(*){margin-left:var(--ic-space-sm)}::slotted(svg){fill:var(--ic-switch-icon)}@media (forced-colors: active){.ic-switch-toggle::before,.ic-switch-input:checked+.ic-switch-toggle{border:var(--ic-border-hc)}.ic-switch-input:focus+.ic-switch-toggle{border-color:highlight;outline:var(--ic-space-xxxs) solid highlight}.ic-switch-input:checked+.ic-switch-toggle::before{transform:translate(calc(var(--ic-space-xl) - 0.125rem), -50%)}.ic-switch-input:disabled+.ic-switch-toggle,.ic-switch-input:disabled:checked+.ic-switch-toggle,.ic-switch-input:disabled+.ic-switch-toggle::before{border-color:GrayText}.ic-switch-disabled .ic-switch-icon-circle,.ic-switch-disabled .ic-switch-icon-line{stroke:GrayText}}";
6
5
 
7
6
  let inputIds = 0;
8
7
  const Switch = class {
@@ -36,9 +35,8 @@ const Switch = class {
36
35
  this.hideLabel = false;
37
36
  this.label = undefined;
38
37
  this.name = this.inputId;
39
- this.showState = false;
40
- this.size = "default";
41
- this.small = false;
38
+ this.size = "medium";
39
+ this.theme = "inherit";
42
40
  this.value = "on";
43
41
  }
44
42
  checkedChangeHandler() {
@@ -62,22 +60,23 @@ const Switch = class {
62
60
  * Sets focus on the switch.
63
61
  */
64
62
  async setFocus() {
65
- if (this.el.shadowRoot.querySelector("input")) {
66
- this.el.shadowRoot.querySelector("input").focus();
67
- }
63
+ var _a;
64
+ (_a = this.el.shadowRoot.querySelector("input")) === null || _a === void 0 ? void 0 : _a.focus();
68
65
  }
69
66
  render() {
70
- const { label, checkedState, small, size, disabled, name, showState, value, hideLabel, helperText, inputId, } = this;
67
+ const { label, checkedState, size, disabled, name, value, hideLabel, helperText, inputId, theme, } = this;
68
+ const isSmall = size === "small";
71
69
  renderHiddenInput(true, this.el, name, checkedState ? value : "", disabled);
72
- const describedBy = getInputDescribedByText(inputId, helperText !== "", false);
73
- return (h(Host, null, h("label", { class: {
74
- ["ic-switch-container"]: true,
75
- ["ic-switch-disabled"]: disabled,
76
- ["ic-switch-small"]: small || size === "small",
70
+ return (h(Host, { class: {
71
+ [`ic-theme-${theme}`]: theme !== "inherit",
72
+ } }, h("label", { class: {
73
+ "ic-switch-container": true,
74
+ "ic-switch-disabled": disabled,
75
+ "ic-switch-small": isSmall,
77
76
  }, htmlFor: inputId }, !hideLabel && (h("ic-input-label", { for: inputId, label: label, helperText: helperText, readonly: true, disabled: disabled, class: {
78
- ["ic-switch-label"]: true,
79
- ["ic-switch-label-small"]: small || size === "small",
80
- } })), !hideLabel && h("span", { class: "ic-switch-line-break" }), h("input", { checked: checkedState, disabled: disabled, "aria-label": label, "aria-checked": checkedState ? "true" : "false", "aria-describedby": describedBy, role: "switch", class: "ic-switch-input", type: "checkbox", name: "toggle", id: inputId, onFocus: this.onFocus, onBlur: this.onBlur, onChange: this.handleChange }), h("span", { class: "ic-switch-toggle" }, h("svg", { class: "ic-switch-icon", "aria-hidden": "true", focusable: "false", viewBox: "0 0 10 10", xmlns: "http://www.w3.org/2000/svg" }, h("line", { class: "ic-switch-icon-line", x1: "9", y1: small || size === "small" ? "2" : "1", x2: "9", y2: small || size === "small" ? "8" : "9" })), h("svg", { class: "ic-switch-icon", "aria-hidden": "true", focusable: "false", viewBox: "0 0 10 10", xmlns: "http://www.w3.org/2000/svg" }, h("circle", { class: "ic-switch-icon-circle", fill: "none", cx: "5", cy: "5", r: small || size === "small" ? "3.335" : "4.445" }))), h("slot", { name: "right-adornment" }), showState && (h("ic-typography", { "aria-hidden": "true", variant: "label", class: "ic-switch-checked-status" }, checkedState ? "On" : "Off")))));
77
+ "ic-switch-label": true,
78
+ "ic-switch-label-small": isSmall,
79
+ } })), !hideLabel && h("span", { class: "ic-switch-line-break" }), h("input", { checked: checkedState, disabled: disabled, "aria-label": label, "aria-checked": checkedState ? "true" : "false", "aria-describedby": getInputDescribedByText(inputId, helperText !== "", false), role: "switch", class: "ic-switch-input", type: "checkbox", name: "toggle", id: inputId, onFocus: this.onFocus, onBlur: this.onBlur, onChange: this.handleChange }), h("span", { class: "ic-switch-toggle" }, h("svg", { class: "ic-switch-icon", "aria-hidden": "true", focusable: "false", viewBox: "0 0 10 10", xmlns: "http://www.w3.org/2000/svg" }, h("line", { class: "ic-switch-icon-line", x1: "9", y1: isSmall ? "2" : "1", x2: "9", y2: isSmall ? "8" : "9" })), h("svg", { class: "ic-switch-icon", "aria-hidden": "true", focusable: "false", viewBox: "0 0 10 10", xmlns: "http://www.w3.org/2000/svg" }, h("circle", { class: "ic-switch-icon-circle", fill: "none", cx: "5", cy: "5", r: isSmall ? "3.335" : "4.445" }))), h("slot", { name: "right-adornment" }))));
81
80
  }
82
81
  static get delegatesFocus() { return true; }
83
82
  get el() { return getElement(this); }
@@ -1 +1 @@
1
- {"file":"ic-switch.entry.js","mappings":"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","names":[],"sources":["src/components/ic-switch/ic-switch.css?tag=ic-switch&encapsulation=shadow","src/components/ic-switch/ic-switch.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: inline-block;\n}\n\ninput {\n overflow: hidden;\n appearance: none;\n}\n\n.ic-switch-container {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--ic-space-xxs);\n cursor: pointer;\n}\n\n.ic-switch-label {\n margin-left: var(--ic-space-xxs);\n margin-bottom: var(--ic-space-sm);\n}\n\n.ic-switch-label-small {\n margin-bottom: 0.625rem;\n}\n\n.ic-switch-toggle {\n display: flex;\n align-items: center;\n justify-content: space-around;\n width: 4rem;\n height: var(--ic-space-xl);\n position: relative;\n border-radius: 100vw;\n background-color: var(--ic-architectural-200);\n border: var(--ic-border-width) solid var(--ic-architectural-700);\n box-sizing: border-box;\n transition: var(--ic-transition-duration-fast);\n}\n\n.ic-switch-line-break {\n flex: 1 0 100%;\n}\n\n.ic-switch-checked-status {\n padding-left: var(--ic-space-xxs);\n width: var(--ic-space-lg);\n}\n\n.ic-switch-toggle::before {\n content: \"\";\n width: 1.333rem;\n height: 1.333rem;\n border-radius: 50%;\n position: absolute;\n z-index: 2;\n top: 50%;\n left: 0.333rem;\n transform: translate(0, -50%);\n background-color: var(--ic-architectural-700);\n transition: var(--ic-transition-duration-slow);\n}\n\n.ic-switch-icon {\n display: inline-block;\n vertical-align: middle;\n width: 0.625rem;\n height: 0.625rem;\n}\n\n.ic-switch-icon-circle,\n.ic-switch-icon-line {\n stroke-width: 1;\n}\n\n.ic-switch-icon-circle {\n stroke: var(--ic-architectural-700);\n}\n\n.ic-switch-icon-line {\n stroke: var(--ic-architectural-white);\n}\n\n@media (prefers-reduced-motion: reduce) {\n .ic-switch-toggle::before {\n transition-duration: 0ms;\n }\n}\n\n.ic-switch-input:checked + .ic-switch-toggle {\n background-color: var(--ic-action-default);\n border: none;\n}\n\n.ic-switch-input:checked + .ic-switch-toggle::before {\n transform: translate(var(--ic-space-xl), -50%);\n background-color: var(--ic-architectural-white);\n}\n\n.ic-switch-input:not([disabled]) + .ic-switch-toggle:hover::before {\n box-shadow: 0 0 0 0.75rem var(--ic-action-dark-bg-hover);\n}\n\n.ic-switch-input:not([disabled]) + .ic-switch-toggle:active::before {\n box-shadow: 0 0 0 0.75rem var(--ic-action-dark-bg-active);\n}\n\n.ic-switch-input:not([disabled]):checked + .ic-switch-toggle:hover::before {\n box-shadow: 0 0 0 0.75rem var(--ic-action-default-bg-hover);\n}\n\n.ic-switch-input:not([disabled]):checked + .ic-switch-toggle:active::before {\n box-shadow: 0 0 0 0.75rem var(--ic-action-default-bg-active);\n}\n\n.ic-switch-input:focus:not([disabled]) + .ic-switch-toggle,\n.ic-switch-input:focus-visible:not([disabled]) + .ic-switch-toggle {\n box-shadow: var(--ic-border-focus);\n}\n\n.ic-switch-disabled {\n cursor: default;\n}\n\n.ic-switch-disabled .ic-switch-icon-circle {\n stroke: var(--ic-architectural-300);\n}\n\n.ic-switch-disabled .ic-switch-icon-line {\n stroke: var(--ic-action-default-bg-active);\n}\n\n.ic-switch-input:disabled + .ic-switch-toggle {\n background-color: var(--ic-architectural-80);\n border: var(--ic-border-disabled);\n}\n\n.ic-switch-input:disabled ~ .ic-switch-checked-status {\n color: var(--ic-architectural-300);\n}\n\n.ic-switch-input:disabled + .ic-switch-toggle::before {\n background-color: var(--ic-architectural-300);\n}\n\n.ic-switch-input:disabled:checked + .ic-switch-toggle {\n background-color: var(--ic-status-info-light);\n border: var(--ic-border-width) dashed #98c9f5;\n}\n\n.ic-switch-input:disabled:checked + .ic-switch-toggle::before {\n background-color: var(--ic-architectural-white);\n}\n\n.ic-switch-small {\n gap: var(--ic-space-xxxs);\n}\n\n.ic-switch-small .ic-switch-checked-status {\n padding-left: 0.375rem;\n}\n\n.ic-switch-small .ic-switch-toggle {\n width: var(--ic-space-xxl);\n height: var(--ic-space-lg);\n}\n\n.ic-switch-small .ic-switch-toggle::before {\n width: var(--ic-space-md);\n height: var(--ic-space-md);\n left: var(--ic-space-xxs);\n}\n\n.ic-switch-small .ic-switch-input:checked + .ic-switch-toggle::before {\n transform: translate(var(--ic-space-lg), -50%);\n}\n\n::slotted(*) {\n margin-left: var(--ic-space-sm);\n}\n\n::slotted(svg) {\n fill: currentcolor;\n}\n\n@media (forced-colors: active) {\n .ic-switch-toggle::before,\n .ic-switch-input:checked + .ic-switch-toggle {\n border: var(--ic-hc-border);\n }\n\n .ic-switch-input:focus + .ic-switch-toggle {\n border-color: highlight;\n outline: 0.125rem solid highlight;\n }\n\n .ic-switch-input:checked + .ic-switch-toggle::before {\n transform: translate(calc(var(--ic-space-xl) - 0.125rem), -50%);\n }\n\n .ic-switch-input:disabled + .ic-switch-toggle,\n .ic-switch-input:disabled:checked + .ic-switch-toggle,\n .ic-switch-input:disabled + .ic-switch-toggle::before {\n border-color: GrayText;\n }\n\n .ic-switch-input:disabled ~ .ic-switch-checked-status {\n color: GrayText;\n }\n\n .ic-switch-disabled .ic-switch-icon-circle,\n .ic-switch-disabled .ic-switch-icon-line {\n stroke: GrayText;\n }\n}\n\n/* Add back in after storybook has the `color-scheme: light dark` code */\n\n/* @media (prefers-color-scheme: dark) and (not (forced-colors: active)) {\n .ic-switch-label .ic-typography-label,\n ic-input-label .helpertext,\n .ic-switch-checked-status {\n color: var(--ic-architectural-white);\n }\n} */\n","import {\n Component,\n Host,\n h,\n Prop,\n State,\n Element,\n Event,\n EventEmitter,\n Method,\n Watch,\n} from \"@stencil/core\";\nimport {\n getInputDescribedByText,\n onComponentRequiredPropUndefined,\n renderHiddenInput,\n addFormResetListener,\n removeFormResetListener,\n removeDisabledFalse,\n} from \"../../utils/helpers\";\nimport { IcSwitchChangeEventDetail } from \"./ic-switch.types\";\nimport { IcSizesNoLarge } from \"../../utils/types\";\n\nlet inputIds = 0;\n\n/**\n * @slot right-adornment - Content is placed to the right of switch before state label.\n */\n@Component({\n tag: \"ic-switch\",\n styleUrl: \"ic-switch.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class Switch {\n private inputId = `ic-switch-input-${inputIds++}`;\n\n @Element() el: HTMLIcSwitchElement;\n\n @State() checkedState: boolean = false;\n @State() initiallyChecked = this.checked;\n\n /**\n * If `true`, the switch will display as checked.\n */\n @Prop() checked?: boolean = false;\n\n @Watch(\"checked\")\n checkedChangeHandler(): void {\n this.checkedState = this.checked;\n }\n\n /**\n * If `true`, the disabled state will be set.\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 aria-label applied to the switch when no visual 'name' is provided.\n */\n @Prop() label!: string;\n\n /**\n * The name of the control, which is submitted with the form data.\n */\n @Prop() name?: string = this.inputId;\n\n /**\n * If `true`, the switch will render the On/Off state text.\n */\n @Prop() showState?: boolean = false;\n\n /**\n * The size of the switch component.\n */\n @Prop() size?: IcSizesNoLarge = \"default\";\n\n /**\n * @deprecated This prop should not be used anymore. Set prop `size` to \"small\" instead.\n */\n @Prop() small?: boolean = false;\n\n /**\n * The value of the toggle does not mean if it's checked or not, use the `checked`\n * property for that.\n *\n * The value of a toggle is analogous to the value of a `<input type=\"checkbox\">`,\n * it's only used when the toggle participates in a native `<form>`.\n */\n @Prop() value?: string | null = \"on\";\n\n /**\n * Emitted when the toggle loses focus.\n */\n @Event() icBlur!: EventEmitter<void>;\n\n /**\n * Emitted when the value property has changed.\n */\n @Event() icChange!: EventEmitter<IcSwitchChangeEventDetail>;\n\n /**\n * Emitted when the toggle has focus.\n */\n @Event() icFocus!: EventEmitter<void>;\n\n disconnectedCallback(): void {\n removeFormResetListener(this.el, this.handleFormReset);\n }\n\n componentWillLoad(): void {\n this.checkedState = this.checked;\n addFormResetListener(this.el, this.handleFormReset);\n removeDisabledFalse(this.disabled, this.el);\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Switch\"\n );\n }\n\n /**\n * Sets focus on the switch.\n */\n @Method()\n async setFocus(): Promise<void> {\n if (this.el.shadowRoot.querySelector(\"input\")) {\n this.el.shadowRoot.querySelector(\"input\").focus();\n }\n }\n\n private handleChange = () => {\n this.checkedState = !this.checkedState;\n this.icChange.emit({\n checked: this.checkedState,\n value: this.value,\n });\n };\n\n private onFocus = () => {\n this.icFocus.emit();\n };\n\n private onBlur = () => {\n this.icBlur.emit();\n };\n\n private handleFormReset = (): void => {\n this.checkedState = this.initiallyChecked;\n };\n\n render() {\n const {\n label,\n checkedState,\n small,\n size,\n disabled,\n name,\n showState,\n value,\n hideLabel,\n helperText,\n inputId,\n } = this;\n\n renderHiddenInput(true, this.el, name, checkedState ? value : \"\", disabled);\n\n const describedBy = getInputDescribedByText(\n inputId,\n helperText !== \"\",\n false\n );\n\n return (\n <Host>\n <label\n class={{\n [\"ic-switch-container\"]: true,\n [\"ic-switch-disabled\"]: disabled,\n [\"ic-switch-small\"]: small || size === \"small\",\n }}\n htmlFor={inputId}\n >\n {!hideLabel && (\n <ic-input-label\n for={inputId}\n label={label}\n helperText={helperText}\n readonly={true}\n disabled={disabled}\n class={{\n [\"ic-switch-label\"]: true,\n [\"ic-switch-label-small\"]: small || size === \"small\",\n }}\n ></ic-input-label>\n )}\n {!hideLabel && <span class=\"ic-switch-line-break\"></span>}\n <input\n checked={checkedState}\n disabled={disabled}\n aria-label={label}\n aria-checked={checkedState ? \"true\" : \"false\"}\n aria-describedby={describedBy}\n role=\"switch\"\n class=\"ic-switch-input\"\n type=\"checkbox\"\n name=\"toggle\"\n id={inputId}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n onChange={this.handleChange}\n />\n <span class=\"ic-switch-toggle\">\n <svg\n class=\"ic-switch-icon\"\n aria-hidden=\"true\"\n focusable=\"false\"\n viewBox=\"0 0 10 10\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <line\n class=\"ic-switch-icon-line\"\n x1=\"9\"\n y1={small || size === \"small\" ? \"2\" : \"1\"}\n x2=\"9\"\n y2={small || size === \"small\" ? \"8\" : \"9\"}\n />\n </svg>\n <svg\n class=\"ic-switch-icon\"\n aria-hidden=\"true\"\n focusable=\"false\"\n viewBox=\"0 0 10 10\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle\n class=\"ic-switch-icon-circle\"\n fill=\"none\"\n cx=\"5\"\n cy=\"5\"\n r={small || size === \"small\" ? \"3.335\" : \"4.445\"}\n />\n </svg>\n </span>\n <slot name=\"right-adornment\"></slot>\n {showState && (\n <ic-typography\n aria-hidden=\"true\"\n variant=\"label\"\n class=\"ic-switch-checked-status\"\n >\n {checkedState ? \"On\" : \"Off\"}\n </ic-typography>\n )}\n </label>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-switch.entry.js","mappings":"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","names":[],"sources":["src/components/ic-switch/ic-switch.css?tag=ic-switch&encapsulation=shadow","src/components/ic-switch/ic-switch.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: inline-block;\n\n --ic-input-label-text-color: var(--ic-switch-label);\n --ic-input-label-helper-text-color: var(--ic-switch-help-text);\n}\n\ninput {\n overflow: hidden;\n appearance: none;\n}\n\n.ic-switch-container {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--ic-space-xxs);\n cursor: pointer;\n}\n\n.ic-switch-label {\n margin-left: var(--ic-space-xxs);\n margin-bottom: var(--ic-space-sm);\n}\n\n.ic-switch-label-small {\n margin-bottom: 0.625rem;\n}\n\n.ic-switch-toggle {\n display: flex;\n align-items: center;\n justify-content: space-around;\n width: 4rem;\n height: var(--ic-space-xl);\n position: relative;\n border-radius: 100vw;\n background-color: var(--ic-switch-unchecked-bg);\n border: var(--ic-border-width) solid var(--ic-switch-unchecked);\n box-sizing: border-box;\n transition: var(--ic-transition-duration-fast);\n}\n\n.ic-switch-line-break {\n flex: 1 0 100%;\n}\n\n.ic-switch-toggle::before {\n content: \"\";\n width: 1.333rem;\n height: 1.333rem;\n border-radius: 50%;\n position: absolute;\n z-index: 2;\n top: 50%;\n left: 0.333rem;\n transform: translate(0, -50%);\n background-color: var(--ic-switch-unchecked);\n transition: var(--ic-transition-duration-slow);\n}\n\n.ic-switch-icon {\n display: inline-block;\n vertical-align: middle;\n width: 0.625rem;\n height: 0.625rem;\n}\n\n.ic-switch-icon-circle,\n.ic-switch-icon-line {\n stroke-width: 1;\n}\n\n.ic-switch-icon-circle {\n stroke: var(--ic-switch-indicator-off);\n}\n\n.ic-switch-icon-line {\n stroke: var(--ic-switch-indicator-on);\n}\n\n@media (prefers-reduced-motion: reduce) {\n .ic-switch-toggle::before {\n transition-duration: 0ms;\n }\n}\n\n.ic-switch-input:checked + .ic-switch-toggle {\n background-color: var(--ic-switch-checked-bg);\n border: none;\n}\n\n.ic-switch-input:checked + .ic-switch-toggle::before {\n transform: translate(var(--ic-space-xl), -50%);\n background-color: var(--ic-switch-checked);\n}\n\n.ic-switch-input:not([disabled]) + .ic-switch-toggle:hover::before {\n box-shadow: 0 0 0 0.75rem var(--ic-switch-unchecked-bg-hover);\n}\n\n.ic-switch-input:not([disabled]) + .ic-switch-toggle:active::before {\n box-shadow: 0 0 0 0.75rem var(--ic-switch-unchecked-bg-pressed);\n}\n\n.ic-switch-input:not([disabled]):checked + .ic-switch-toggle:hover::before {\n box-shadow: 0 0 0 0.75rem var(--ic-switch-checked-bg-hover);\n}\n\n.ic-switch-input:not([disabled]):checked + .ic-switch-toggle:active::before {\n box-shadow: 0 0 0 0.75rem var(--ic-switch-checked-bg-pressed);\n}\n\n.ic-switch-input:focus:not([disabled]) + .ic-switch-toggle,\n.ic-switch-input:focus-visible:not([disabled]) + .ic-switch-toggle {\n box-shadow: var(--ic-border-focus);\n}\n\n.ic-switch-disabled {\n cursor: default;\n}\n\n.ic-switch-disabled .ic-switch-icon-circle {\n stroke: var(--ic-switch-indicator-off-disabled);\n}\n\n.ic-switch-disabled .ic-switch-icon-line {\n stroke: var(--ic-switch-indicator-on-disabled);\n}\n\n.ic-switch-input:disabled + .ic-switch-toggle {\n background-color: var(--ic-switch-unchecked-bg-disabled);\n border: var(--ic-space-1px) dashed var(--ic-switch-unchecked-outline-disabled);\n}\n\n.ic-switch-input:disabled + .ic-switch-toggle::before {\n background-color: var(--ic-switch-unchecked-disabled);\n}\n\n.ic-switch-input:disabled:checked + .ic-switch-toggle {\n background-color: var(--ic-switch-checked-bg-disabled);\n border: var(--ic-border-width) dashed\n var(--ic-switch-checked-outline-disabled);\n}\n\n.ic-switch-input:disabled:checked + .ic-switch-toggle::before {\n background-color: var(--ic-switch-checked);\n}\n\n.ic-switch-small {\n gap: var(--ic-space-xxxs);\n}\n\n.ic-switch-small .ic-switch-toggle {\n width: var(--ic-space-xxl);\n height: var(--ic-space-lg);\n}\n\n.ic-switch-small .ic-switch-toggle::before {\n width: var(--ic-space-md);\n height: var(--ic-space-md);\n left: var(--ic-space-xxs);\n}\n\n.ic-switch-small .ic-switch-input:checked + .ic-switch-toggle::before {\n transform: translate(var(--ic-space-lg), -50%);\n}\n\n::slotted(*) {\n margin-left: var(--ic-space-sm);\n}\n\n::slotted(svg) {\n fill: var(--ic-switch-icon);\n}\n\n@media (forced-colors: active) {\n .ic-switch-toggle::before,\n .ic-switch-input:checked + .ic-switch-toggle {\n border: var(--ic-border-hc);\n }\n\n .ic-switch-input:focus + .ic-switch-toggle {\n border-color: highlight;\n outline: var(--ic-space-xxxs) solid highlight;\n }\n\n .ic-switch-input:checked + .ic-switch-toggle::before {\n transform: translate(calc(var(--ic-space-xl) - 0.125rem), -50%);\n }\n\n .ic-switch-input:disabled + .ic-switch-toggle,\n .ic-switch-input:disabled:checked + .ic-switch-toggle,\n .ic-switch-input:disabled + .ic-switch-toggle::before {\n border-color: GrayText;\n }\n\n .ic-switch-disabled .ic-switch-icon-circle,\n .ic-switch-disabled .ic-switch-icon-line {\n stroke: GrayText;\n }\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n State,\n Element,\n Event,\n EventEmitter,\n Method,\n Watch,\n} from \"@stencil/core\";\nimport {\n getInputDescribedByText,\n onComponentRequiredPropUndefined,\n renderHiddenInput,\n addFormResetListener,\n removeFormResetListener,\n removeDisabledFalse,\n} from \"../../utils/helpers\";\nimport { IcSwitchChangeEventDetail } from \"./ic-switch.types\";\nimport { IcSizesNoLarge, IcThemeMode } from \"../../utils/types\";\n\nlet inputIds = 0;\n\n/**\n * @slot right-adornment - Content is placed to the right of switch.\n */\n@Component({\n tag: \"ic-switch\",\n styleUrl: \"ic-switch.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class Switch {\n private inputId = `ic-switch-input-${inputIds++}`;\n\n @Element() el: HTMLIcSwitchElement;\n\n @State() checkedState: boolean = false;\n @State() initiallyChecked = this.checked;\n\n /**\n * If `true`, the switch will display as checked.\n */\n @Prop() checked?: boolean = false;\n\n @Watch(\"checked\")\n checkedChangeHandler(): void {\n this.checkedState = this.checked;\n }\n\n /**\n * If `true`, the disabled state will be set.\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 aria-label applied to the switch when no visual 'name' is provided.\n */\n @Prop() label!: string;\n\n /**\n * The name of the control, which is submitted with the form data.\n */\n @Prop() name?: string = this.inputId;\n\n /**\n * The size of the switch component.\n */\n @Prop() size?: IcSizesNoLarge = \"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\n /**\n * The value of the toggle does not mean if it's checked or not, use the `checked`\n * property for that.\n *\n * The value of a toggle is analogous to the value of a `<input type=\"checkbox\">`,\n * it's only used when the toggle participates in a native `<form>`.\n */\n @Prop() value?: string | null = \"on\";\n\n /**\n * Emitted when the toggle loses focus.\n */\n @Event() icBlur!: EventEmitter<void>;\n\n /**\n * Emitted when the value property has changed.\n */\n @Event() icChange!: EventEmitter<IcSwitchChangeEventDetail>;\n\n /**\n * Emitted when the toggle has focus.\n */\n @Event() icFocus!: EventEmitter<void>;\n\n disconnectedCallback(): void {\n removeFormResetListener(this.el, this.handleFormReset);\n }\n\n componentWillLoad(): void {\n this.checkedState = this.checked;\n addFormResetListener(this.el, this.handleFormReset);\n removeDisabledFalse(this.disabled, this.el);\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Switch\"\n );\n }\n\n /**\n * Sets focus on the switch.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.el.shadowRoot.querySelector(\"input\")?.focus();\n }\n\n private handleChange = () => {\n this.checkedState = !this.checkedState;\n this.icChange.emit({\n checked: this.checkedState,\n value: this.value,\n });\n };\n\n private onFocus = () => {\n this.icFocus.emit();\n };\n\n private onBlur = () => {\n this.icBlur.emit();\n };\n\n private handleFormReset = (): void => {\n this.checkedState = this.initiallyChecked;\n };\n\n render() {\n const {\n label,\n checkedState,\n size,\n disabled,\n name,\n value,\n hideLabel,\n helperText,\n inputId,\n theme,\n } = this;\n\n const isSmall = size === \"small\";\n\n renderHiddenInput(true, this.el, name, checkedState ? value : \"\", disabled);\n\n return (\n <Host\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n <label\n class={{\n \"ic-switch-container\": true,\n \"ic-switch-disabled\": disabled,\n \"ic-switch-small\": isSmall,\n }}\n htmlFor={inputId}\n >\n {!hideLabel && (\n <ic-input-label\n for={inputId}\n label={label}\n helperText={helperText}\n readonly={true}\n disabled={disabled}\n class={{\n \"ic-switch-label\": true,\n \"ic-switch-label-small\": isSmall,\n }}\n ></ic-input-label>\n )}\n {!hideLabel && <span class=\"ic-switch-line-break\"></span>}\n <input\n checked={checkedState}\n disabled={disabled}\n aria-label={label}\n aria-checked={checkedState ? \"true\" : \"false\"}\n aria-describedby={getInputDescribedByText(\n inputId,\n helperText !== \"\",\n false\n )}\n role=\"switch\"\n class=\"ic-switch-input\"\n type=\"checkbox\"\n name=\"toggle\"\n id={inputId}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n onChange={this.handleChange}\n />\n <span class=\"ic-switch-toggle\">\n <svg\n class=\"ic-switch-icon\"\n aria-hidden=\"true\"\n focusable=\"false\"\n viewBox=\"0 0 10 10\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <line\n class=\"ic-switch-icon-line\"\n x1=\"9\"\n y1={isSmall ? \"2\" : \"1\"}\n x2=\"9\"\n y2={isSmall ? \"8\" : \"9\"}\n />\n </svg>\n <svg\n class=\"ic-switch-icon\"\n aria-hidden=\"true\"\n focusable=\"false\"\n viewBox=\"0 0 10 10\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle\n class=\"ic-switch-icon-circle\"\n fill=\"none\"\n cx=\"5\"\n cy=\"5\"\n r={isSmall ? \"3.335\" : \"4.445\"}\n />\n </svg>\n </span>\n <slot name=\"right-adornment\"></slot>\n </label>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,22 +1,12 @@
1
1
  import { r as registerInstance, c as createEvent, h, g as getElement } from './index-d1d2c456.js';
2
- import { I as IcThemeForegroundEnum } from './types-6f6b41a5.js';
3
2
 
4
3
  const CONTEXT_ID_ATTR = "context-id";
5
4
  const TabContext = class {
6
5
  constructor(hostRef) {
7
6
  registerInstance(this, hostRef);
8
7
  this.icTabSelect = createEvent(this, "icTabSelect", 3);
9
- this.tabSelect = createEvent(this, "tabSelect", 3);
10
8
  this.newTabPanels = [];
11
9
  this.newTabs = [];
12
- this.emitEvents = (tabIndex) => {
13
- const tabLabel = this.el
14
- .querySelectorAll("ic-tab")
15
- // eslint-disable-next-line no-unexpected-multiline
16
- [tabIndex].textContent.trim();
17
- this.icTabSelect.emit({ tabIndex, tabLabel });
18
- this.tabSelect.emit({ tabIndex, tabLabel });
19
- };
20
10
  /** Sets attributes to link tab-group, tabs and tab-panels */
21
11
  this.linkTabs = () => {
22
12
  this.tabs.forEach((tab, index) => {
@@ -31,14 +21,10 @@ const TabContext = class {
31
21
  this.tabPanels[index].setAttribute("id", tabPanelId);
32
22
  this.tabPanels[index].setAttribute("aria-labelledby", tabId);
33
23
  this.tabPanels[index].setAttribute(CONTEXT_ID_ATTR, this.contextId);
34
- if (this.appearance === IcThemeForegroundEnum.Light) {
35
- tab.appearance = this.appearance;
36
- this.tabPanels[index].appearance = this.appearance;
37
- }
24
+ tab.theme = this.theme;
25
+ this.tabPanels[index].theme = this.theme;
26
+ this.tabGroup.theme = this.theme;
38
27
  });
39
- if (this.appearance === IcThemeForegroundEnum.Light) {
40
- this.tabGroup.appearance = this.appearance;
41
- }
42
28
  };
43
29
  /**
44
30
  * Gets tabs and tabpanels with the same context ID using querySelector to selector the children in relation to the host
@@ -113,7 +99,12 @@ const TabContext = class {
113
99
  this.selectedTab = newIndex;
114
100
  }
115
101
  else {
116
- this.emitEvents(newIndex);
102
+ /* eslint-disable no-unexpected-multiline */
103
+ this.icTabSelect.emit({
104
+ tabIndex: newIndex,
105
+ tabLabel: this.el
106
+ .querySelectorAll("ic-tab")[newIndex].textContent.trim(),
107
+ });
117
108
  }
118
109
  };
119
110
  /** Sets focus on tab without selecting it (for manual activation) */
@@ -123,19 +114,27 @@ const TabContext = class {
123
114
  };
124
115
  this.selectedTab = undefined;
125
116
  this.activationType = "automatic";
126
- this.appearance = "dark";
127
117
  this.contextId = "default";
128
118
  this.selectedTabIndex = undefined;
119
+ this.monochrome = false;
120
+ this.theme = "inherit";
121
+ }
122
+ updateSelectedTab(newValue) {
123
+ this.selectedTab = newValue;
129
124
  }
130
- watchAppearanceHandler() {
125
+ watchMonochromeHandler() {
131
126
  this.tabs.forEach((tab, index) => {
132
- tab.appearance = this.appearance;
133
- this.tabPanels[index].appearance = this.appearance;
127
+ tab.monochrome = this.monochrome;
128
+ this.tabPanels[index].monochrome = this.monochrome;
134
129
  });
135
- this.tabGroup.appearance = this.appearance;
130
+ this.tabGroup.monochrome = this.monochrome;
136
131
  }
137
- updateSelectedTab(newValue) {
138
- this.selectedTab = newValue;
132
+ watchThemeHandler() {
133
+ this.tabs.forEach((tab, index) => {
134
+ tab.theme = this.theme;
135
+ this.tabPanels[index].theme = this.theme;
136
+ });
137
+ this.tabGroup.theme = this.theme;
139
138
  }
140
139
  componentDidLoad() {
141
140
  if (this.selectedTabIndex !== undefined) {
@@ -159,7 +158,13 @@ const TabContext = class {
159
158
  event.detail.contextId === this.contextId) {
160
159
  this.selectedTab = event.detail.position;
161
160
  }
162
- this.emitEvents(event.detail.position);
161
+ /* eslint-disable no-unexpected-multiline */
162
+ this.icTabSelect.emit({
163
+ tabIndex: event.detail.position,
164
+ tabLabel: this.el
165
+ .querySelectorAll("ic-tab")[event.detail.position].textContent.trim(),
166
+ });
167
+ /* eslint-enable no-unexpected-multiline */
163
168
  event.stopImmediatePropagation();
164
169
  }
165
170
  tabCreatedHandler(ev) {
@@ -203,8 +208,9 @@ const TabContext = class {
203
208
  }
204
209
  get el() { return getElement(this); }
205
210
  static get watchers() { return {
206
- "appearance": ["watchAppearanceHandler"],
207
- "selectedTabIndex": ["updateSelectedTab"]
211
+ "selectedTabIndex": ["updateSelectedTab"],
212
+ "monochrome": ["watchMonochromeHandler"],
213
+ "theme": ["watchThemeHandler"]
208
214
  }; }
209
215
  };
210
216
 
@@ -1 +1 @@
1
- {"file":"ic-tab-context.entry.js","mappings":"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","names":[],"sources":["src/components/ic-tab-context/ic-tab-context.tsx"],"sourcesContent":["import {\n Component,\n Element,\n Event,\n EventEmitter,\n Listen,\n Prop,\n State,\n h,\n Watch,\n Method,\n} from \"@stencil/core\";\nimport {\n IcActivationTypes,\n IcThemeForegroundNoDefault,\n IcThemeForegroundEnum,\n} from \"../../utils/types\";\n\nimport {\n IcTabClickEventDetail,\n IcTabSelectEventDetail,\n} from \"../ic-tab/ic-tab.types\";\n\nconst CONTEXT_ID_ATTR = \"context-id\";\n\n@Component({\n tag: \"ic-tab-context\",\n})\nexport class TabContext {\n private enabledTabs: HTMLIcTabElement[];\n private focusedTabIndex: number;\n private newTabPanels: HTMLIcTabPanelElement[] = [];\n private newTabs: HTMLIcTabElement[] = [];\n private tabs: HTMLIcTabElement[];\n private tabGroup: HTMLIcTabGroupElement;\n private tabPanels: HTMLIcTabPanelElement[];\n\n @Element() el: HTMLIcTabContextElement;\n\n @State() selectedTab: number | null;\n\n /**\n * Determines whether tabs have to be manually activated (by pressing 'Enter' or 'Space') when they receive focus using keyboard navigation.\n */\n @Prop() activationType?: IcActivationTypes = \"automatic\";\n\n /**\n * The appearance of the tab context, e.g dark, or light.\n */\n @Prop() appearance?: IcThemeForegroundNoDefault = \"dark\";\n @Watch(\"appearance\")\n watchAppearanceHandler(): void {\n this.tabs.forEach((tab, index) => {\n tab.appearance = this.appearance;\n this.tabPanels[index].appearance = this.appearance;\n });\n this.tabGroup.appearance = this.appearance;\n }\n\n /**\n * The unique context needed if using multiple tabs inside one another i.e. rendering another set of tabs inside a tab panel.\n */\n @Prop({ reflect: true }) contextId?: string = \"default\";\n\n /**\n * The selected tab to be controlled by the user. Must be used alongside the icTabSelect event to manage tab selection.\n */\n @Prop() selectedTabIndex?: number;\n\n @Watch(\"selectedTabIndex\")\n updateSelectedTab(newValue: number): void {\n this.selectedTab = newValue;\n }\n\n /**\n * Emitted when a user selects a tab.\n */\n @Event({ bubbles: false }) icTabSelect: EventEmitter<IcTabSelectEventDetail>;\n\n /**\n * @deprecated This event should not be used anymore. Use icTabSelect instead.\n */\n @Event({ bubbles: false }) tabSelect: EventEmitter<IcTabSelectEventDetail>;\n\n componentDidLoad(): void {\n if (this.selectedTabIndex !== undefined) {\n this.selectedTab = this.selectedTabIndex;\n }\n this.getChildren();\n this.linkTabs();\n this.tabGroup.addEventListener(\"keydown\", this.keydownHandler);\n this.setInitialTab();\n this.configureTabs();\n }\n\n componentWillUpdate(): void {\n this.configureTabs();\n }\n\n disconnectedCallback(): void {\n this.tabGroup?.removeEventListener(\"keydown\", this.keydownHandler);\n }\n\n @Listen(\"tabClick\")\n tabClickHandler(event: CustomEvent<IcTabClickEventDetail>): void {\n if (\n this.selectedTabIndex === undefined &&\n event.detail.contextId === this.contextId\n ) {\n this.selectedTab = event.detail.position;\n }\n this.emitEvents(event.detail.position);\n event.stopImmediatePropagation();\n }\n\n @Listen(\"tabCreated\")\n @Listen(\"tabPanelCreated\")\n tabCreatedHandler(ev: CustomEvent): void {\n if (this.tabs && this.tabPanels) {\n (ev.detail.setFocus ? this.newTabs : this.newTabPanels).push(ev.detail);\n if (this.newTabs.length === this.newTabPanels.length) {\n this.tabs.push(...this.newTabs);\n this.tabPanels.push(...this.newTabPanels);\n this.enabledTabs = this.getEnabledTabs();\n this.linkTabs();\n if (!this.tabs[this.selectedTab] || !this.tabPanels[this.selectedTab])\n this.setInitialTab();\n this.configureTabs();\n this.newTabs = [];\n this.newTabPanels = [];\n }\n }\n }\n\n @Listen(\"tabEnabled\")\n tabEnabledHandler(): void {\n this.enabledTabs = this.getEnabledTabs();\n }\n\n /**\n * @internal Used to set tab/tab panel IDs when a tab/tab panel has been removed\n */\n @Method()\n async tabRemovedHandler(hadFocus?: boolean): Promise<void> {\n this.getChildren();\n this.linkTabs();\n if (this.tabs[this.selectedTab] && this.tabPanels[this.selectedTab]) {\n this.tabs[this.selectedTab].selected = true;\n this.tabPanels[this.selectedTab].hidden = false;\n } else {\n this.setInitialTab();\n }\n\n if (hadFocus) {\n this.tabs[this.selectedTab].setFocus();\n }\n }\n\n private emitEvents = (tabIndex: number) => {\n const tabLabel = this.el\n .querySelectorAll(\"ic-tab\")\n // eslint-disable-next-line no-unexpected-multiline\n [tabIndex].textContent.trim();\n this.icTabSelect.emit({ tabIndex, tabLabel });\n this.tabSelect.emit({ tabIndex, tabLabel });\n };\n\n /** Sets attributes to link tab-group, tabs and tab-panels */\n private linkTabs = () => {\n this.tabs.forEach((tab, index) => {\n const tabId = `ic-tab-${index}-context-${this.contextId}`;\n const tabPanelId = `ic-tab-panel-${index}-context-${this.contextId}`;\n tab.setAttribute(\"id\", tabId);\n tab.tabId = `ic-tab--${index}-context-${this.contextId}`;\n tab.tabPosition = index;\n tab.setAttribute(\"aria-controls\", tabPanelId);\n tab.setAttribute(CONTEXT_ID_ATTR, this.contextId);\n this.tabGroup.setAttribute(CONTEXT_ID_ATTR, this.contextId);\n this.tabPanels[index].setAttribute(\"id\", tabPanelId);\n this.tabPanels[index].setAttribute(\"aria-labelledby\", tabId);\n this.tabPanels[index].setAttribute(CONTEXT_ID_ATTR, this.contextId);\n\n if (this.appearance === IcThemeForegroundEnum.Light) {\n tab.appearance = this.appearance;\n this.tabPanels[index].appearance = this.appearance;\n }\n });\n\n if (this.appearance === IcThemeForegroundEnum.Light) {\n this.tabGroup.appearance = this.appearance;\n }\n };\n\n /**\n * Gets tabs and tabpanels with the same context ID using querySelector to selector the children in relation to the host\n */\n private getChildren = (): void => {\n this.tabGroup = this.el.querySelector(\"ic-tab-group\");\n this.tabs = Array.from(this.tabGroup.querySelectorAll(\"ic-tab\"));\n this.tabPanels = Array.from(this.el.children).filter(\n (child) => child.tagName === \"IC-TAB-PANEL\"\n ) as HTMLIcTabPanelElement[];\n this.enabledTabs = this.getEnabledTabs();\n };\n\n private keydownHandler = (event: KeyboardEvent) => {\n const isManual = this.activationType === \"manual\";\n const enabledTabIndex = this.enabledTabs.findIndex(\n (tab) =>\n tab.tabId ===\n this.tabs[isManual ? this.focusedTabIndex : this.selectedTab].tabId\n );\n const keyboardFunction = isManual\n ? this.keyboardFocusTab\n : this.keyboardSelectTab;\n let preventDefault = true;\n switch (event.key) {\n case \"Home\":\n keyboardFunction(0);\n break;\n case \"End\":\n keyboardFunction(this.enabledTabs.length - 1);\n break;\n case \"ArrowRight\":\n keyboardFunction(\n enabledTabIndex < this.enabledTabs.length - 1\n ? enabledTabIndex + 1\n : 0\n );\n break;\n case \"ArrowLeft\":\n keyboardFunction(\n (enabledTabIndex > 0 ? enabledTabIndex : this.enabledTabs.length) - 1\n );\n break;\n default:\n if (isManual && (event.key === \"Enter\" || event.key === \" \")) {\n this.keyboardSelectTab(this.focusedTabIndex);\n } else {\n preventDefault = false;\n }\n }\n if (preventDefault) event.preventDefault();\n };\n\n /** Sets the tab that is selected on initial render */\n private setInitialTab = (): void => {\n if (this.selectedTabIndex !== undefined) {\n this.selectedTab = this.selectedTabIndex;\n this.focusedTabIndex = this.selectedTabIndex;\n } else {\n const firstEnabledTabIndex = this.tabs.findIndex(\n (tab) => tab.tabId === this.enabledTabs[0].tabId\n );\n this.selectedTab = firstEnabledTabIndex;\n this.focusedTabIndex = firstEnabledTabIndex;\n }\n };\n\n /** Passes the selected tab to the tab and tab panel components */\n private configureTabs = () => {\n this.enabledTabs.forEach((tab) => {\n tab.selected = tab.tabPosition === this.selectedTab;\n });\n this.tabPanels.forEach((tabPanel, index) => {\n tabPanel.hidden = index !== this.selectedTab;\n });\n };\n\n private getEnabledTabs = () =>\n Array.from(this.tabs).filter((child) => !child.disabled);\n\n /** Sets focus on tab and selects it */\n private keyboardSelectTab = (enabledTabIndex: number) => {\n const newIndex = this.tabs.findIndex(\n (tab) => tab.tabId === this.enabledTabs[enabledTabIndex].tabId\n );\n this.enabledTabs[enabledTabIndex].focus();\n if (this.selectedTabIndex === undefined) {\n this.selectedTab = newIndex;\n } else {\n this.emitEvents(newIndex);\n }\n };\n\n /** Sets focus on tab without selecting it (for manual activation) */\n private keyboardFocusTab = (enabledTabIndex: number) => {\n this.enabledTabs[enabledTabIndex].focus();\n this.focusedTabIndex = this.tabs.findIndex(\n (tab) => tab.tabId === this.enabledTabs[enabledTabIndex].tabId\n );\n };\n\n render() {\n return <slot></slot>;\n }\n}\n"],"version":3}
1
+ {"file":"ic-tab-context.entry.js","mappings":"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","names":[],"sources":["src/components/ic-tab-context/ic-tab-context.tsx"],"sourcesContent":["import {\n Component,\n Element,\n Event,\n EventEmitter,\n Listen,\n Prop,\n State,\n h,\n Watch,\n Method,\n} from \"@stencil/core\";\nimport { IcActivationTypes, IcThemeMode } from \"../../utils/types\";\n\nimport {\n IcTabClickEventDetail,\n IcTabSelectEventDetail,\n} from \"../ic-tab/ic-tab.types\";\n\nconst CONTEXT_ID_ATTR = \"context-id\";\n\n@Component({\n tag: \"ic-tab-context\",\n})\nexport class TabContext {\n private enabledTabs: HTMLIcTabElement[];\n private focusedTabIndex: number;\n private newTabPanels: HTMLIcTabPanelElement[] = [];\n private newTabs: HTMLIcTabElement[] = [];\n private tabs: HTMLIcTabElement[];\n private tabGroup: HTMLIcTabGroupElement;\n private tabPanels: HTMLIcTabPanelElement[];\n\n @Element() el: HTMLIcTabContextElement;\n\n @State() selectedTab: number | null;\n\n /**\n * Determines whether tabs have to be manually activated (by pressing 'Enter' or 'Space') when they receive focus using keyboard navigation.\n */\n @Prop() activationType?: IcActivationTypes = \"automatic\";\n\n /**\n * The unique context needed if using multiple tabs inside one another i.e. rendering another set of tabs inside a tab panel.\n */\n @Prop({ reflect: true }) contextId?: string = \"default\";\n\n /**\n * The selected tab to be controlled by the user. Must be used alongside the icTabSelect event to manage tab selection.\n */\n @Prop() selectedTabIndex?: number;\n\n @Watch(\"selectedTabIndex\")\n updateSelectedTab(newValue: number): void {\n this.selectedTab = newValue;\n }\n\n /**\n * If `true`, the tabs will display as black in the light theme.\n */\n @Prop() monochrome?: boolean = false;\n @Watch(\"monochrome\")\n watchMonochromeHandler(): void {\n this.tabs.forEach((tab, index) => {\n tab.monochrome = this.monochrome;\n this.tabPanels[index].monochrome = this.monochrome;\n });\n this.tabGroup.monochrome = this.monochrome;\n }\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n @Watch(\"theme\")\n watchThemeHandler(): void {\n this.tabs.forEach((tab, index) => {\n tab.theme = this.theme;\n this.tabPanels[index].theme = this.theme;\n });\n this.tabGroup.theme = this.theme;\n }\n\n /**\n * Emitted when a user selects a tab.\n */\n @Event({ bubbles: false }) icTabSelect: EventEmitter<IcTabSelectEventDetail>;\n\n componentDidLoad(): void {\n if (this.selectedTabIndex !== undefined) {\n this.selectedTab = this.selectedTabIndex;\n }\n this.getChildren();\n this.linkTabs();\n this.tabGroup.addEventListener(\"keydown\", this.keydownHandler);\n this.setInitialTab();\n this.configureTabs();\n }\n\n componentWillUpdate(): void {\n this.configureTabs();\n }\n\n disconnectedCallback(): void {\n this.tabGroup?.removeEventListener(\"keydown\", this.keydownHandler);\n }\n\n @Listen(\"tabClick\")\n tabClickHandler(event: CustomEvent<IcTabClickEventDetail>): void {\n if (\n this.selectedTabIndex === undefined &&\n event.detail.contextId === this.contextId\n ) {\n this.selectedTab = event.detail.position;\n }\n /* eslint-disable no-unexpected-multiline */\n this.icTabSelect.emit({\n tabIndex: event.detail.position,\n tabLabel: this.el\n .querySelectorAll(\"ic-tab\")\n [event.detail.position].textContent.trim(),\n });\n /* eslint-enable no-unexpected-multiline */\n event.stopImmediatePropagation();\n }\n\n @Listen(\"tabCreated\")\n @Listen(\"tabPanelCreated\")\n tabCreatedHandler(ev: CustomEvent): void {\n if (this.tabs && this.tabPanels) {\n (ev.detail.setFocus ? this.newTabs : this.newTabPanels).push(ev.detail);\n if (this.newTabs.length === this.newTabPanels.length) {\n this.tabs.push(...this.newTabs);\n this.tabPanels.push(...this.newTabPanels);\n this.enabledTabs = this.getEnabledTabs();\n this.linkTabs();\n if (!this.tabs[this.selectedTab] || !this.tabPanels[this.selectedTab])\n this.setInitialTab();\n this.configureTabs();\n this.newTabs = [];\n this.newTabPanels = [];\n }\n }\n }\n\n @Listen(\"tabEnabled\")\n tabEnabledHandler(): void {\n this.enabledTabs = this.getEnabledTabs();\n }\n\n /**\n * @internal Used to set tab/tab panel IDs when a tab/tab panel has been removed\n */\n @Method()\n async tabRemovedHandler(hadFocus?: boolean): Promise<void> {\n this.getChildren();\n this.linkTabs();\n if (this.tabs[this.selectedTab] && this.tabPanels[this.selectedTab]) {\n this.tabs[this.selectedTab].selected = true;\n this.tabPanels[this.selectedTab].hidden = false;\n } else {\n this.setInitialTab();\n }\n\n if (hadFocus) {\n this.tabs[this.selectedTab].setFocus();\n }\n }\n\n /** Sets attributes to link tab-group, tabs and tab-panels */\n private linkTabs = () => {\n this.tabs.forEach((tab, index) => {\n const tabId = `ic-tab-${index}-context-${this.contextId}`;\n const tabPanelId = `ic-tab-panel-${index}-context-${this.contextId}`;\n tab.setAttribute(\"id\", tabId);\n tab.tabId = `ic-tab--${index}-context-${this.contextId}`;\n tab.tabPosition = index;\n tab.setAttribute(\"aria-controls\", tabPanelId);\n tab.setAttribute(CONTEXT_ID_ATTR, this.contextId);\n this.tabGroup.setAttribute(CONTEXT_ID_ATTR, this.contextId);\n this.tabPanels[index].setAttribute(\"id\", tabPanelId);\n this.tabPanels[index].setAttribute(\"aria-labelledby\", tabId);\n this.tabPanels[index].setAttribute(CONTEXT_ID_ATTR, this.contextId);\n\n tab.theme = this.theme;\n this.tabPanels[index].theme = this.theme;\n this.tabGroup.theme = this.theme;\n });\n };\n\n /**\n * Gets tabs and tabpanels with the same context ID using querySelector to selector the children in relation to the host\n */\n private getChildren = (): void => {\n this.tabGroup = this.el.querySelector(\"ic-tab-group\");\n this.tabs = Array.from(this.tabGroup.querySelectorAll(\"ic-tab\"));\n this.tabPanels = Array.from(this.el.children).filter(\n (child) => child.tagName === \"IC-TAB-PANEL\"\n ) as HTMLIcTabPanelElement[];\n this.enabledTabs = this.getEnabledTabs();\n };\n\n private keydownHandler = (event: KeyboardEvent) => {\n const isManual = this.activationType === \"manual\";\n const enabledTabIndex = this.enabledTabs.findIndex(\n (tab) =>\n tab.tabId ===\n this.tabs[isManual ? this.focusedTabIndex : this.selectedTab].tabId\n );\n const keyboardFunction = isManual\n ? this.keyboardFocusTab\n : this.keyboardSelectTab;\n let preventDefault = true;\n switch (event.key) {\n case \"Home\":\n keyboardFunction(0);\n break;\n case \"End\":\n keyboardFunction(this.enabledTabs.length - 1);\n break;\n case \"ArrowRight\":\n keyboardFunction(\n enabledTabIndex < this.enabledTabs.length - 1\n ? enabledTabIndex + 1\n : 0\n );\n break;\n case \"ArrowLeft\":\n keyboardFunction(\n (enabledTabIndex > 0 ? enabledTabIndex : this.enabledTabs.length) - 1\n );\n break;\n default:\n if (isManual && (event.key === \"Enter\" || event.key === \" \")) {\n this.keyboardSelectTab(this.focusedTabIndex);\n } else {\n preventDefault = false;\n }\n }\n if (preventDefault) event.preventDefault();\n };\n\n /** Sets the tab that is selected on initial render */\n private setInitialTab = (): void => {\n if (this.selectedTabIndex !== undefined) {\n this.selectedTab = this.selectedTabIndex;\n this.focusedTabIndex = this.selectedTabIndex;\n } else {\n const firstEnabledTabIndex = this.tabs.findIndex(\n (tab) => tab.tabId === this.enabledTabs[0].tabId\n );\n this.selectedTab = firstEnabledTabIndex;\n this.focusedTabIndex = firstEnabledTabIndex;\n }\n };\n\n /** Passes the selected tab to the tab and tab panel components */\n private configureTabs = () => {\n this.enabledTabs.forEach((tab) => {\n tab.selected = tab.tabPosition === this.selectedTab;\n });\n this.tabPanels.forEach((tabPanel, index) => {\n tabPanel.hidden = index !== this.selectedTab;\n });\n };\n\n private getEnabledTabs = () =>\n Array.from(this.tabs).filter((child) => !child.disabled);\n\n /** Sets focus on tab and selects it */\n private keyboardSelectTab = (enabledTabIndex: number) => {\n const newIndex = this.tabs.findIndex(\n (tab) => tab.tabId === this.enabledTabs[enabledTabIndex].tabId\n );\n this.enabledTabs[enabledTabIndex].focus();\n if (this.selectedTabIndex === undefined) {\n this.selectedTab = newIndex;\n } else {\n /* eslint-disable no-unexpected-multiline */\n this.icTabSelect.emit({\n tabIndex: newIndex,\n tabLabel: this.el\n .querySelectorAll(\"ic-tab\")\n [newIndex].textContent.trim(),\n });\n }\n };\n\n /** Sets focus on tab without selecting it (for manual activation) */\n private keyboardFocusTab = (enabledTabIndex: number) => {\n this.enabledTabs[enabledTabIndex].focus();\n this.focusedTabIndex = this.tabs.findIndex(\n (tab) => tab.tabId === this.enabledTabs[enabledTabIndex].tabId\n );\n };\n\n render() {\n return <slot></slot>;\n }\n}\n"],"version":3}
@@ -1,28 +1,26 @@
1
1
  import { r as registerInstance, h, H as Host } from './index-d1d2c456.js';
2
- import { a as onComponentRequiredPropUndefined } from './helpers-003f27c9.js';
3
- import { I as IcThemeForegroundEnum } from './types-6f6b41a5.js';
2
+ import { b as onComponentRequiredPropUndefined } from './helpers-2624c32c.js';
4
3
 
5
- const icTabGroupCss = ":host{--border-bottom-color:var(--ic-architectural-300);display:block;margin-bottom:var(--ic-space-md);border-bottom:var(--ic-border-default)}:host(.inline){margin-bottom:0;border-bottom:none}.light{border-bottom:var(--ic-border-width) solid var(--ic-architectural-white)}.tabs-container{display:flex;flex-direction:row}.tabs-container::-webkit-scrollbar{display:none}";
4
+ const icTabGroupCss = ":host{display:block;margin-bottom:var(--ic-space-md);border-bottom:var(--ic-space-1px) solid var(--ic-tab-bottom-border)}:host(.ic-tab-group-monochrome){border-bottom:var(--ic-space-1px) solid\n var(--ic-tab-bottom-border-monochrome)}:host(.ic-tab-group-inline){margin-bottom:0;border-bottom:none}.tabs-container{display:flex;flex-direction:row}.tabs-container::-webkit-scrollbar{display:none}:host ic-horizontal-scroll{--splitter-color:var(--ic-tab-divider)}:host(.ic-tab-group-monochrome) ic-horizontal-scroll{--splitter-color:var(--ic-tab-divider-monochrome)}";
6
5
 
7
6
  const TabGroup = class {
8
7
  constructor(hostRef) {
9
8
  registerInstance(this, hostRef);
10
- this.appearance = "dark";
11
- this.contextId = "default";
12
9
  this.inline = false;
13
10
  this.label = undefined;
11
+ this.monochrome = false;
12
+ this.theme = "inherit";
14
13
  }
15
14
  componentDidLoad() {
16
15
  onComponentRequiredPropUndefined([{ prop: this.label, propName: "label" }], "Tab Group");
17
16
  }
18
17
  render() {
19
- const { appearance, label } = this;
18
+ const { theme, label, monochrome } = this;
20
19
  return (h(Host, { role: "tablist", "aria-label": label, class: {
21
- ["light"]: appearance === IcThemeForegroundEnum.Light,
22
- ["inline"]: this.inline,
23
- } }, h("ic-horizontal-scroll", { appearance: appearance === IcThemeForegroundEnum.Dark
24
- ? IcThemeForegroundEnum.Default
25
- : appearance, "focus-trigger": "tabFocus" }, h("div", { class: "tabs-container" }, h("slot", null)))));
20
+ ["ic-tab-group-inline"]: this.inline,
21
+ [`ic-theme-${theme}`]: theme !== "inherit",
22
+ ["ic-tab-group-monochrome"]: monochrome,
23
+ } }, h("ic-horizontal-scroll", { theme: this.theme, "focus-trigger": "tabFocus", monochrome: this.monochrome }, h("div", { class: "tabs-container" }, h("slot", null)))));
26
24
  }
27
25
  static get delegatesFocus() { return true; }
28
26
  };
@@ -1 +1 @@
1
- {"file":"ic-tab-group.entry.js","mappings":";;;;AAAA,MAAM,aAAa,GAAG,kXAAkX;;MCe3X,QAAQ;;;0BAI+B,MAAM;yBAMV,SAAS;sBAKX,KAAK;;;IAOjD,gBAAgB;QACd,gCAAgC,CAC9B,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EACzC,WAAW,CACZ,CAAC;KACH;IAED,MAAM;QACJ,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAEnC,QACE,EAAC,IAAI,IACH,IAAI,EAAC,SAAS,gBACF,KAAK,EACjB,KAAK,EAAE;gBACL,CAAC,OAAO,GAAG,UAAU,KAAK,qBAAqB,CAAC,KAAK;gBACrD,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM;aACxB,IAED,4BACE,UAAU,EACR,UAAU,KAAK,qBAAqB,CAAC,IAAI;kBACrC,qBAAqB,CAAC,OAAO;kBAC7B,UAAU,mBAEF,UAAU,IAExB,WAAK,KAAK,EAAC,gBAAgB,IACzB,eAAa,CACT,CACe,CAClB,EACP;KACH;;;;;;;","names":[],"sources":["src/components/ic-tab-group/ic-tab-group.css?tag=ic-tab-group&encapsulation=shadow","src/components/ic-tab-group/ic-tab-group.tsx"],"sourcesContent":[":host {\n --border-bottom-color: var(--ic-architectural-300);\n\n display: block;\n margin-bottom: var(--ic-space-md);\n border-bottom: var(--ic-border-default);\n}\n\n:host(.inline) {\n margin-bottom: 0;\n border-bottom: none;\n}\n\n.light {\n border-bottom: var(--ic-border-width) solid var(--ic-architectural-white);\n}\n\n.tabs-container {\n display: flex;\n flex-direction: row;\n}\n\n.tabs-container::-webkit-scrollbar {\n display: none;\n}\n","import { Component, Host, Prop, h } from \"@stencil/core\";\n\nimport { onComponentRequiredPropUndefined } from \"../../utils/helpers\";\nimport {\n IcThemeForegroundNoDefault,\n IcThemeForegroundEnum,\n} from \"../../utils/types\";\n\n@Component({\n tag: \"ic-tab-group\",\n styleUrl: \"ic-tab-group.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class TabGroup {\n /**\n * @internal The appearance of the tab group, e.g dark, or light.\n */\n @Prop() appearance?: IcThemeForegroundNoDefault = \"dark\";\n\n /**\n * @deprecated This is no longer required.\n * The context id is passed down from `ic-tab-context`\n */\n @Prop({ reflect: true }) contextId?: string = \"default\";\n\n /**\n * If `true`, the tabs and tab panels will be positioned separately.\n */\n @Prop({ reflect: true }) inline?: boolean = false;\n\n /**\n * The label to describe the purpose of the set of tabs to screen reader users.\n */\n @Prop() label!: string;\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Tab Group\"\n );\n }\n\n render() {\n const { appearance, label } = this;\n\n return (\n <Host\n role=\"tablist\"\n aria-label={label}\n class={{\n [\"light\"]: appearance === IcThemeForegroundEnum.Light,\n [\"inline\"]: this.inline,\n }}\n >\n <ic-horizontal-scroll\n appearance={\n appearance === IcThemeForegroundEnum.Dark\n ? IcThemeForegroundEnum.Default\n : appearance\n }\n focus-trigger=\"tabFocus\"\n >\n <div class=\"tabs-container\">\n <slot></slot>\n </div>\n </ic-horizontal-scroll>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-tab-group.entry.js","mappings":";;;AAAA,MAAM,aAAa,GAAG,ujBAAujB;;MCYhkB,QAAQ;;;sBAIyB,KAAK;;0BAQlB,KAAK;qBAGN,SAAS;;IAEvC,gBAAgB;QACd,gCAAgC,CAC9B,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EACzC,WAAW,CACZ,CAAC;KACH;IAED,MAAM;QACJ,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;QAE1C,QACE,EAAC,IAAI,IACH,IAAI,EAAC,SAAS,gBACF,KAAK,EACjB,KAAK,EAAE;gBACL,CAAC,qBAAqB,GAAG,IAAI,CAAC,MAAM;gBACpC,CAAC,YAAY,KAAK,EAAE,GAAG,KAAK,KAAK,SAAS;gBAC1C,CAAC,yBAAyB,GAAG,UAAU;aACxC,IAED,4BACE,KAAK,EAAE,IAAI,CAAC,KAAK,mBACH,UAAU,EACxB,UAAU,EAAE,IAAI,CAAC,UAAU,IAE3B,WAAK,KAAK,EAAC,gBAAgB,IACzB,eAAa,CACT,CACe,CAClB,EACP;KACH;;;;;;;","names":[],"sources":["src/components/ic-tab-group/ic-tab-group.css?tag=ic-tab-group&encapsulation=shadow","src/components/ic-tab-group/ic-tab-group.tsx"],"sourcesContent":[":host {\n display: block;\n margin-bottom: var(--ic-space-md);\n border-bottom: var(--ic-space-1px) solid var(--ic-tab-bottom-border);\n}\n\n:host(.ic-tab-group-monochrome) {\n border-bottom: var(--ic-space-1px) solid\n var(--ic-tab-bottom-border-monochrome);\n}\n\n:host(.ic-tab-group-inline) {\n margin-bottom: 0;\n border-bottom: none;\n}\n\n.tabs-container {\n display: flex;\n flex-direction: row;\n}\n\n.tabs-container::-webkit-scrollbar {\n display: none;\n}\n\n:host ic-horizontal-scroll {\n --splitter-color: var(--ic-tab-divider);\n}\n\n:host(.ic-tab-group-monochrome) ic-horizontal-scroll {\n --splitter-color: var(--ic-tab-divider-monochrome);\n}\n","import { Component, Host, Prop, h } from \"@stencil/core\";\n\nimport { onComponentRequiredPropUndefined } from \"../../utils/helpers\";\nimport { IcThemeMode } from \"../../utils/types\";\n\n@Component({\n tag: \"ic-tab-group\",\n styleUrl: \"ic-tab-group.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class TabGroup {\n /**\n * If `true`, the tabs and tab panels will be positioned separately.\n */\n @Prop({ reflect: true }) inline?: boolean = false;\n\n /**\n * The label to describe the purpose of the set of tabs to screen reader users.\n */\n @Prop() label!: string;\n\n /** @internal Determines whether black variant of the tabs should be displayed. */\n @Prop() monochrome?: boolean = false;\n\n /** @internal Determines whether the light or dark variant of the tabs should be displayed. */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Tab Group\"\n );\n }\n\n render() {\n const { theme, label, monochrome } = this;\n\n return (\n <Host\n role=\"tablist\"\n aria-label={label}\n class={{\n [\"ic-tab-group-inline\"]: this.inline,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n [\"ic-tab-group-monochrome\"]: monochrome,\n }}\n >\n <ic-horizontal-scroll\n theme={this.theme}\n focus-trigger=\"tabFocus\"\n monochrome={this.monochrome}\n >\n <div class=\"tabs-container\">\n <slot></slot>\n </div>\n </ic-horizontal-scroll>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,28 +1,29 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-d1d2c456.js';
2
- import { I as IcThemeForegroundEnum } from './types-6f6b41a5.js';
2
+ import { d as isPropDefined } from './helpers-2624c32c.js';
3
3
 
4
- const icTabPanelCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type=\"button\"],[type=\"reset\"],[type=\"submit\"]{-webkit-appearance:button}button::-moz-focus-inner,[type=\"button\"]::-moz-focus-inner,[type=\"reset\"]::-moz-focus-inner,[type=\"submit\"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=\"button\"]:-moz-focusring,[type=\"reset\"]:-moz-focusring,[type=\"submit\"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type=\"checkbox\"],[type=\"radio\"]{box-sizing:border-box;padding:0;}[type=\"number\"]::-webkit-inner-spin-button,[type=\"number\"]::-webkit-outer-spin-button{height:auto}[type=\"search\"]{-webkit-appearance:textfield;outline-offset:-2px;}[type=\"search\"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host:not[hidden]{display:block}:host(.ic-tab-panel-light){color:white}";
4
+ const icTabPanelCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type=\"button\"],[type=\"reset\"],[type=\"submit\"]{-webkit-appearance:button}button::-moz-focus-inner,[type=\"button\"]::-moz-focus-inner,[type=\"reset\"]::-moz-focus-inner,[type=\"submit\"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=\"button\"]:-moz-focusring,[type=\"reset\"]:-moz-focusring,[type=\"submit\"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type=\"checkbox\"],[type=\"radio\"]{box-sizing:border-box;padding:0;}[type=\"number\"]::-webkit-inner-spin-button,[type=\"number\"]::-webkit-outer-spin-button{height:auto}[type=\"search\"]{-webkit-appearance:textfield;outline-offset:-2px;}[type=\"search\"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host:not[hidden]{display:block}:host{color:var(--ic-color-text-primary)}";
5
5
 
6
6
  const TabPanel = class {
7
7
  constructor(hostRef) {
8
8
  registerInstance(this, hostRef);
9
9
  this.tabPanelCreated = createEvent(this, "tabPanelCreated", 7);
10
10
  this.tabPanelRemoved = createEvent(this, "tabPanelRemoved", 7);
11
- this.appearance = "dark";
12
- this.contextId = "default";
11
+ this.monochrome = false;
12
+ this.panelId = undefined;
13
+ this.selectedTab = undefined;
14
+ this.tabPosition = undefined;
15
+ this.theme = "inherit";
13
16
  }
14
17
  connectedCallback() {
15
18
  this.tabPanelCreated.emit(this.el);
16
19
  }
17
- disconnectedCallback() {
18
- var _a;
19
- (_a = document
20
- .querySelector(`ic-tab-context[context-id=${this.contextId}]`)) === null || _a === void 0 ? void 0 : _a.tabRemovedHandler();
21
- }
22
20
  render() {
21
+ const { panelId, selectedTab, theme } = this;
23
22
  return (h(Host, { class: {
24
- "ic-tab-panel-light": this.appearance === IcThemeForegroundEnum.Light,
25
- }, role: "tabpanel" }, h("div", null, h("slot", null))));
23
+ [`ic-theme-${theme}`]: theme !== "inherit",
24
+ }, role: "tabpanel", hidden: isPropDefined(panelId) && isPropDefined(selectedTab)
25
+ ? !(panelId === selectedTab)
26
+ : true }, h("div", null, h("slot", null))));
26
27
  }
27
28
  get el() { return getElement(this); }
28
29
  };
@@ -1 +1 @@
1
- {"file":"ic-tab-panel.entry.js","mappings":";;;AAAA,MAAM,aAAa,GAAG,w8EAAw8E;;MCmBj9E,QAAQ;;;;;0BAM+B,MAAM;yBAMV,SAAS;;IAYvD,iBAAiB;QACf,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;KACpC;IAED,oBAAoB;;QAClB,MAAA,QAAQ;aACL,aAAa,CACZ,6BAA6B,IAAI,CAAC,SAAS,GAAG,CAC/C,0CACC,iBAAiB,EAAE,CAAC;KACzB;IAED,MAAM;QACJ,QACE,EAAC,IAAI,IACH,KAAK,EAAE;gBACL,oBAAoB,EAAE,IAAI,CAAC,UAAU,KAAK,qBAAqB,CAAC,KAAK;aACtE,EACD,IAAI,EAAC,UAAU,IAEf,eACE,eAAa,CACT,CACD,EACP;KACH;;;;;;;","names":[],"sources":["src/components/ic-tab-panel/ic-tab-panel.css?tag=ic-tab-panel&encapsulation=shadow","src/components/ic-tab-panel/ic-tab-panel.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host:not[hidden] {\n display: block;\n}\n\n:host(.ic-tab-panel-light) {\n color: white;\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Prop,\n h,\n} from \"@stencil/core\";\nimport {\n IcThemeForegroundEnum,\n IcThemeForegroundNoDefault,\n} from \"../../utils/types\";\n\n@Component({\n tag: \"ic-tab-panel\",\n styleUrl: \"ic-tab-panel.css\",\n shadow: true,\n})\nexport class TabPanel {\n @Element() el: HTMLIcTabPanelElement;\n\n /**\n * @internal The appearance of the tabs, e.g dark, or light.\n */\n @Prop() appearance?: IcThemeForegroundNoDefault = \"dark\";\n\n /**\n * @deprecated This is no longer required.\n * The context id is passed down from `ic-tab-context`\n */\n @Prop({ reflect: true }) contextId?: string = \"default\";\n\n /**\n * @internal Emitted when a tab panel is dynamically created.\n */\n @Event() tabPanelCreated: EventEmitter<HTMLIcTabPanelElement>;\n\n /**\n * @internal Emitted when a tab panel is unmounted.\n */\n @Event() tabPanelRemoved: EventEmitter<void>;\n\n connectedCallback(): void {\n this.tabPanelCreated.emit(this.el);\n }\n\n disconnectedCallback(): void {\n document\n .querySelector<HTMLIcTabContextElement>(\n `ic-tab-context[context-id=${this.contextId}]`\n )\n ?.tabRemovedHandler();\n }\n\n render() {\n return (\n <Host\n class={{\n \"ic-tab-panel-light\": this.appearance === IcThemeForegroundEnum.Light,\n }}\n role=\"tabpanel\"\n >\n <div>\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-tab-panel.entry.js","mappings":";;;AAAA,MAAM,aAAa,GAAG,08EAA08E;;MCiBn9E,QAAQ;;;;;0BAIY,KAAK;;;;qBAkBN,SAAS;;IAYvC,iBAAiB;QACf,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;KACpC;IAED,MAAM;QACJ,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAC7C,QACE,EAAC,IAAI,IACH,KAAK,EAAE;gBACL,CAAC,YAAY,KAAK,EAAE,GAAG,KAAK,KAAK,SAAS;aAC3C,EACD,IAAI,EAAC,UAAU,EACf,MAAM,EACJ,aAAa,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,WAAW,CAAC;kBAChD,EAAE,OAAO,KAAK,WAAW,CAAC;kBAC1B,IAAI,IAGV,eACE,eAAa,CACT,CACD,EACP;KACH;;;;;;;","names":[],"sources":["src/components/ic-tab-panel/ic-tab-panel.css?tag=ic-tab-panel&encapsulation=shadow","src/components/ic-tab-panel/ic-tab-panel.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host:not[hidden] {\n display: block;\n}\n\n:host {\n color: var(--ic-color-text-primary);\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Prop,\n h,\n} from \"@stencil/core\";\nimport { IcThemeMode } from \"../../utils/types\";\nimport { isPropDefined } from \"../../utils/helpers\";\n\n@Component({\n tag: \"ic-tab-panel\",\n styleUrl: \"ic-tab-panel.css\",\n shadow: true,\n})\nexport class TabPanel {\n @Element() el: HTMLIcTabPanelElement;\n\n /** @internal Determines whether black variant of the tabs should be displayed. */\n @Prop() monochrome?: boolean = false;\n\n /**\n * @internal The shared ID that links the panel and tab.\n */\n @Prop({ reflect: true }) panelId?: string;\n\n /**\n * @internal The shared ID of the currently selected tab.\n */\n @Prop() selectedTab?: string;\n\n /**\n * @internal The position of the tab panel inside the tabs array in context.\n */\n @Prop({ reflect: true }) tabPosition?: number;\n\n /** @internal Determines whether the light or dark variant of the tabs should be displayed. */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * @internal Emitted when a tab panel is dynamically created.\n */\n @Event() tabPanelCreated: EventEmitter<HTMLIcTabPanelElement>;\n\n /**\n * @internal Emitted when a tab panel is unmounted.\n */\n @Event() tabPanelRemoved: EventEmitter<void>;\n\n connectedCallback(): void {\n this.tabPanelCreated.emit(this.el);\n }\n\n render() {\n const { panelId, selectedTab, theme } = this;\n return (\n <Host\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n role=\"tabpanel\"\n hidden={\n isPropDefined(panelId) && isPropDefined(selectedTab)\n ? !(panelId === selectedTab)\n : true\n }\n >\n <div>\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,8 +1,7 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-d1d2c456.js';
2
- import { I as IcThemeForegroundEnum } from './types-6f6b41a5.js';
3
- import { r as removeDisabledFalse, i as isSlotUsed } from './helpers-003f27c9.js';
2
+ import { r as removeDisabledFalse, i as isSlotUsed } from './helpers-2624c32c.js';
4
3
 
5
- const icTabCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type=\"button\"],[type=\"reset\"],[type=\"submit\"]{-webkit-appearance:button}button::-moz-focus-inner,[type=\"button\"]::-moz-focus-inner,[type=\"reset\"]::-moz-focus-inner,[type=\"submit\"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=\"button\"]:-moz-focusring,[type=\"reset\"]:-moz-focusring,[type=\"submit\"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type=\"checkbox\"],[type=\"radio\"]{box-sizing:border-box;padding:0;}[type=\"number\"]::-webkit-inner-spin-button,[type=\"number\"]::-webkit-outer-spin-button{height:auto}[type=\"search\"]{-webkit-appearance:textfield;outline-offset:-2px;}[type=\"search\"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{--indicator-initial-color:rgba(23 89 188 / 0%);--indicator-color:var(--ic-action-default);--focus-indicator:var(--ic-border-focus);--label-color:var(--ic-color-primary-text);--background-color-hover:var(--ic-action-default-bg-hover);--background-color-active:var(--ic-action-default-bg-active);display:flex;align-items:center;border-radius:0;color:var(--label-color);height:2.5rem;padding:0 var(--ic-space-md);cursor:pointer;position:relative;border-bottom:var(--ic-space-xxs) solid var(--indicator-initial-color);gap:var(--ic-space-xs);transition:all var(--ic-easing-transition-fast)}:host(:focus){box-shadow:var(--focus-indicator);border-radius:var(--ic-border-radius)}:host(:focus-visible){outline:var(--ic-hc-focus-outline)}:host(:hover){background-color:var(--background-color-hover)}:host(:active){background-color:var(--background-color-active)}:host(.ic-tab-light){--indicator-initial-color:rgb(255 255 255 / 0%);--indicator-color:rgb(255 255 255 / 100%);--focus-indicator:var(--ic-border-focus);--label-color:white;--background-color-hover:var(--ic-action-dark-bg-hover);--background-color-active:var(--ic-action-dark-bg-active)}:host(.selected){border-bottom:var(--ic-space-xxs) solid var(--indicator-color)}:host(.disabled){pointer-events:none;color:var(--ic-architectural-300)}@media (prefers-reduced-motion: no-preference){:host(.selected.with-transition){transition:all var(--ic-easing-transition-slow),\n border-color var(--ic-transition-duration-slow)}}.ic-tab-label{pointer-events:none;text-wrap:nowrap}::slotted(svg){fill:currentcolor}@media (forced-colors: active){:host{border-bottom:var(--ic-space-xxs) solid canvas}:host(.disabled){color:GrayText}}";
4
+ const icTabCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type=\"button\"],[type=\"reset\"],[type=\"submit\"]{-webkit-appearance:button}button::-moz-focus-inner,[type=\"button\"]::-moz-focus-inner,[type=\"reset\"]::-moz-focus-inner,[type=\"submit\"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=\"button\"]:-moz-focusring,[type=\"reset\"]:-moz-focusring,[type=\"submit\"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type=\"checkbox\"],[type=\"radio\"]{box-sizing:border-box;padding:0;}[type=\"number\"]::-webkit-inner-spin-button,[type=\"number\"]::-webkit-outer-spin-button{height:auto}[type=\"search\"]{-webkit-appearance:textfield;outline-offset:-2px;}[type=\"search\"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{--indicator-initial-color:rgba(23 89 188 / 0%);--focus-indicator:var(--ic-border-focus);display:flex;align-items:center;border-radius:0;color:var(--ic-tab-label);--ic-typography-color:var(--ic-tab-label);height:2.5rem;padding:0 var(--ic-space-md);cursor:pointer;position:relative;border-bottom:var(--ic-space-xxs) solid var(--indicator-initial-color);gap:var(--ic-space-xs);transition:all var(--ic-easing-transition-fast)}::slotted([slot=\"icon\"]){fill:var(--ic-tab-icon)}:host(:focus){box-shadow:var(--focus-indicator);border-radius:var(--ic-border-radius)}:host(:focus-visible){outline:var(--ic-hc-focus-outline)}:host(:hover){background-color:var(--ic-tab-item-hover)}:host(:active){background-color:var(--ic-tab-item-pressed)}:host(.ic-tab-selected){border-bottom:var(--ic-space-xxs) solid var(--ic-tab-item)}:host(.ic-tab-disabled){pointer-events:none;color:var(--ic-architectural-300)}:host(.ic-tab-disabled) ic-typography{color:var(--ic-architectural-300);--ic-typography-color:var(--ic-architectural-300)}:host(.ic-tab-monochrome){color:var(--ic-tab-label-monochrome)}:host(.ic-tab-monochrome) ::slotted([slot=\"icon\"]){fill:var(--ic-tab-icon-monochrome)}:host(.ic-tab-monochrome.ic-tab-selected){border-bottom:var(--ic-space-xxs) solid var(--ic-tab-item-monochrome)}:host(.ic-tab-monochrome:hover){background-color:var(--ic-tab-item-hover-monochrome)}:host(.ic-tab-monochrome:active){background-color:var(--ic-tab-item-pressed-monochrome)}@media (prefers-reduced-motion: no-preference){:host(.ic-tab-selected.with-transition){transition:all var(--ic-easing-transition-slow),\n border-color var(--ic-transition-duration-slow)}}.ic-tab-label{pointer-events:none;text-wrap:nowrap}::slotted(svg){fill:currentcolor}@media (forced-colors: active){:host{border-bottom:var(--ic-space-xxs) solid canvas}:host(.ic-tab-disabled){color:GrayText}:host(.ic-tab-disabled) ic-typography{color:GrayText;--ic-typography-color:GrayText}}";
6
5
 
7
6
  const Tab = class {
8
7
  constructor(hostRef) {
@@ -45,12 +44,13 @@ const Tab = class {
45
44
  //the focus does need to be a separate event though to handle focus from keyboard
46
45
  this.focusFromClick = true;
47
46
  };
48
- this.appearance = "dark";
49
47
  this.contextId = "default";
50
48
  this.disabled = false;
49
+ this.monochrome = false;
51
50
  this.selected = false;
52
51
  this.tabId = undefined;
53
52
  this.tabPosition = undefined;
53
+ this.theme = "inherit";
54
54
  }
55
55
  watchDisabledHandler() {
56
56
  removeDisabledFalse(this.disabled, this.el);
@@ -81,12 +81,13 @@ const Tab = class {
81
81
  }
82
82
  }
83
83
  render() {
84
- const { disabled, selected, appearance, isInitialRender, handleClick, handleFocus, handleMouseDown, } = this;
84
+ const { disabled, selected, theme, monochrome, handleClick, handleFocus, handleMouseDown, } = this;
85
85
  return (h(Host, { class: {
86
- "with-transition": !isInitialRender,
87
- "ic-tab-light": appearance === IcThemeForegroundEnum.Light,
88
- selected,
89
- disabled,
86
+ ["with-transition"]: !this.isInitialRender,
87
+ ["ic-tab-selected"]: selected,
88
+ ["ic-tab-disabled"]: disabled,
89
+ [`ic-theme-${theme}`]: theme !== "inherit",
90
+ ["ic-tab-monochrome"]: monochrome,
90
91
  }, role: "tab", "aria-selected": `${selected}`, onClick: handleClick, onFocus: handleFocus, onMouseDown: handleMouseDown, "aria-disabled": `${disabled}`, tabindex: selected ? 0 : -1 }, isSlotUsed(this.el, "icon") && h("slot", { name: "icon" }), h("ic-typography", { class: "ic-tab-label", variant: "label" }, h("span", null, h("slot", null))), isSlotUsed(this.el, "badge") && h("slot", { name: "badge" })));
91
92
  }
92
93
  get el() { return getElement(this); }