@ukic/web-components 3.19.0 → 3.21.0

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 (627) hide show
  1. package/dist/cjs/{constants-3a9ba64a.js → constants-4d389abc.js} +14 -1
  2. package/dist/cjs/constants-4d389abc.js.map +1 -0
  3. package/dist/cjs/core.cjs.js +1 -1
  4. package/dist/cjs/{helpers-15fae358.js → helpers-3a796e7a.js} +161 -2
  5. package/dist/cjs/helpers-3a796e7a.js.map +1 -0
  6. package/dist/cjs/ic-accordion-group.cjs.entry.js +8 -5
  7. package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ic-accordion.cjs.entry.js +18 -11
  9. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ic-action-chip.cjs.entry.js +5 -5
  11. package/dist/cjs/ic-alert.cjs.entry.js +2 -2
  12. package/dist/cjs/ic-back-to-top.cjs.entry.js +6 -6
  13. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ic-badge.cjs.entry.js +5 -5
  15. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  16. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +5 -5
  17. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ic-breadcrumb.cjs.entry.js +4 -4
  19. package/dist/cjs/ic-button_3.cjs.entry.js +24 -23
  20. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-card-horizontal.cjs.entry.js +174 -0
  22. package/dist/cjs/ic-card-horizontal.cjs.entry.js.map +1 -0
  23. package/dist/cjs/ic-card-vertical.cjs.entry.js +7 -7
  24. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-checkbox-group.cjs.entry.js +4 -4
  26. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ic-checkbox.cjs.entry.js +7 -7
  28. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ic-chip.cjs.entry.js +5 -5
  30. package/dist/cjs/ic-classification-banner.cjs.entry.js +2 -2
  31. package/dist/cjs/ic-data-list.cjs.entry.js +2 -2
  32. package/dist/cjs/ic-data-row.cjs.entry.js +4 -4
  33. package/dist/cjs/ic-dialog.cjs.entry.js +34 -125
  34. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  35. package/dist/cjs/ic-divider.cjs.entry.js +18 -9
  36. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  37. package/dist/cjs/ic-empty-state.cjs.entry.js +4 -4
  38. package/dist/cjs/ic-footer-link-group.cjs.entry.js +2 -2
  39. package/dist/cjs/ic-footer-link.cjs.entry.js +5 -5
  40. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  41. package/dist/cjs/ic-footer.cjs.entry.js +5 -5
  42. package/dist/cjs/ic-hero.cjs.entry.js +6 -6
  43. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +8 -8
  44. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  45. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +12 -12
  46. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  47. package/dist/cjs/ic-input-label_2.cjs.entry.js +18 -13
  48. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  49. package/dist/cjs/ic-layout-grid-item.cjs.entry.js +2 -2
  50. package/dist/cjs/ic-layout-grid.cjs.entry.js +2 -2
  51. package/dist/cjs/ic-link.cjs.entry.js +4 -4
  52. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ic-menu-group.cjs.entry.js +3 -3
  54. package/dist/cjs/ic-menu-item.cjs.entry.js +2 -2
  55. package/dist/cjs/ic-navigation-button.cjs.entry.js +4 -4
  56. package/dist/cjs/ic-navigation-group.cjs.entry.js +4 -4
  57. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  58. package/dist/cjs/ic-navigation-item.cjs.entry.js +8 -6
  59. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ic-navigation-menu.cjs.entry.js +6 -6
  61. package/dist/cjs/ic-page-header.cjs.entry.js +9 -9
  62. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  63. package/dist/cjs/ic-pagination-item.cjs.entry.js +4 -4
  64. package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -1
  65. package/dist/cjs/ic-pagination.cjs.entry.js +6 -6
  66. package/dist/cjs/ic-popover-menu.cjs.entry.js +6 -6
  67. package/dist/cjs/ic-radio-group.cjs.entry.js +6 -6
  68. package/dist/cjs/ic-radio-option.cjs.entry.js +7 -7
  69. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ic-search-bar.cjs.entry.js +12 -12
  71. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  72. package/dist/cjs/ic-section-container.cjs.entry.js +2 -2
  73. package/dist/cjs/ic-select.cjs.entry.js +9 -9
  74. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  75. package/dist/cjs/ic-side-navigation.cjs.entry.js +18 -12
  76. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  77. package/dist/cjs/ic-skeleton.cjs.entry.js +2 -2
  78. package/dist/cjs/ic-skip-link.cjs.entry.js +2 -2
  79. package/dist/cjs/ic-status-tag.cjs.entry.js +4 -4
  80. package/dist/cjs/ic-step.cjs.entry.js +15 -15
  81. package/dist/cjs/ic-stepper.cjs.entry.js +4 -4
  82. package/dist/cjs/ic-switch.cjs.entry.js +7 -7
  83. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  84. package/dist/cjs/ic-tab-context.cjs.entry.js +1 -1
  85. package/dist/cjs/ic-tab-group.cjs.entry.js +4 -4
  86. package/dist/cjs/ic-tab-panel.cjs.entry.js +2 -2
  87. package/dist/cjs/ic-tab.cjs.entry.js +5 -5
  88. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  89. package/dist/cjs/ic-text-field.cjs.entry.js +7 -7
  90. package/dist/cjs/ic-theme.cjs.entry.js +3 -3
  91. package/dist/cjs/ic-toast-region.cjs.entry.js +1 -1
  92. package/dist/cjs/ic-toast.cjs.entry.js +7 -7
  93. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +5 -5
  94. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  95. package/dist/cjs/ic-toggle-button.cjs.entry.js +4 -4
  96. package/dist/cjs/ic-top-navigation.cjs.entry.js +8 -8
  97. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  98. package/dist/cjs/ic-typography.cjs.entry.js +5 -5
  99. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  100. package/dist/cjs/index-d337cd8a.js +4 -0
  101. package/dist/cjs/index.cjs.js +7 -1
  102. package/dist/cjs/index.cjs.js.map +1 -1
  103. package/dist/cjs/loader.cjs.js +1 -1
  104. package/dist/collection/collection-manifest.json +1 -0
  105. package/dist/collection/components/ic-accordion/ic-accordion.css +6 -0
  106. package/dist/collection/components/ic-accordion/ic-accordion.js +15 -8
  107. package/dist/collection/components/ic-accordion/ic-accordion.js.map +1 -1
  108. package/dist/collection/components/ic-accordion/ic-accordion.stories.js +21 -0
  109. package/dist/collection/components/ic-accordion-group/ic-accordion-group.css +11 -0
  110. package/dist/collection/components/ic-accordion-group/ic-accordion-group.js +6 -2
  111. package/dist/collection/components/ic-accordion-group/ic-accordion-group.js.map +1 -1
  112. package/dist/collection/components/ic-action-chip/ic-action-chip.js +3 -3
  113. package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +7 -0
  114. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +3 -3
  115. package/dist/collection/components/ic-badge/ic-badge.css +6 -0
  116. package/dist/collection/components/ic-badge/ic-badge.js +2 -2
  117. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +2 -2
  118. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.css +8 -0
  119. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js +2 -2
  120. package/dist/collection/components/ic-button/ic-button.css +7 -0
  121. package/dist/collection/components/ic-button/ic-button.js +2 -2
  122. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.css +728 -0
  123. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js +512 -0
  124. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js.map +1 -0
  125. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.stories.js +876 -0
  126. package/dist/collection/components/ic-card-vertical/ic-card-vertical.css +7 -0
  127. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js +4 -4
  128. package/dist/collection/components/ic-card-vertical/ic-card-vertical.stories.js +1 -1
  129. package/dist/collection/components/ic-checkbox/ic-checkbox.css +7 -5
  130. package/dist/collection/components/ic-checkbox/ic-checkbox.js +4 -4
  131. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +3 -3
  132. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  133. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.stories.js +35 -0
  134. package/dist/collection/components/ic-chip/ic-chip.js +3 -3
  135. package/dist/collection/components/ic-classification-banner/ic-classification-banner.js +2 -2
  136. package/dist/collection/components/ic-data-list/ic-data-list.js +2 -2
  137. package/dist/collection/components/ic-data-row/ic-data-row.js +2 -2
  138. package/dist/collection/components/ic-dialog/ic-dialog.js +33 -124
  139. package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -1
  140. package/dist/collection/components/ic-dialog/ic-dialog.stories.js +3 -2
  141. package/dist/collection/components/ic-divider/ic-divider.js +16 -7
  142. package/dist/collection/components/ic-divider/ic-divider.js.map +1 -1
  143. package/dist/collection/components/ic-empty-state/ic-empty-state.js +2 -2
  144. package/dist/collection/components/ic-footer/ic-footer.js +3 -3
  145. package/dist/collection/components/ic-footer-link/ic-footer-link.css +6 -0
  146. package/dist/collection/components/ic-footer-link/ic-footer-link.js +2 -2
  147. package/dist/collection/components/ic-hero/ic-hero.js +4 -4
  148. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.css +6 -0
  149. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +5 -5
  150. package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +7 -0
  151. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +3 -3
  152. package/dist/collection/components/ic-input-container/ic-input-container.js +2 -2
  153. package/dist/collection/components/ic-input-label/ic-input-label.js +16 -8
  154. package/dist/collection/components/ic-input-label/ic-input-label.js.map +1 -1
  155. package/dist/collection/components/ic-input-validation/ic-input-validation.js +3 -3
  156. package/dist/collection/components/ic-layout-grid/ic-layout-grid.js +2 -2
  157. package/dist/collection/components/ic-layout-grid-item/ic-layout-grid-item.js +2 -2
  158. package/dist/collection/components/ic-link/ic-link.css +7 -0
  159. package/dist/collection/components/ic-link/ic-link.js +1 -1
  160. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +5 -5
  161. package/dist/collection/components/ic-menu/ic-menu.css +6 -0
  162. package/dist/collection/components/ic-menu/ic-menu.js +3 -3
  163. package/dist/collection/components/ic-menu-group/ic-menu-group.js +1 -1
  164. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +2 -2
  165. package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +9 -0
  166. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +1 -1
  167. package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +41 -0
  168. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +5 -3
  169. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
  170. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +4 -4
  171. package/dist/collection/components/ic-page-header/ic-page-header.css +1 -2
  172. package/dist/collection/components/ic-page-header/ic-page-header.js +6 -6
  173. package/dist/collection/components/ic-pagination/ic-pagination.js +4 -4
  174. package/dist/collection/components/ic-pagination-item/ic-pagination-item.css +6 -0
  175. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +1 -1
  176. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +4 -4
  177. package/dist/collection/components/ic-radio-group/ic-radio-group.js +4 -4
  178. package/dist/collection/components/ic-radio-option/ic-radio-option.css +6 -0
  179. package/dist/collection/components/ic-radio-option/ic-radio-option.js +4 -4
  180. package/dist/collection/components/ic-search-bar/ic-search-bar.css +6 -0
  181. package/dist/collection/components/ic-search-bar/ic-search-bar.js +9 -9
  182. package/dist/collection/components/ic-section-container/ic-section-container.js +2 -2
  183. package/dist/collection/components/ic-select/ic-select.css +8 -0
  184. package/dist/collection/components/ic-select/ic-select.js +6 -6
  185. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +46 -21
  186. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +15 -9
  187. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  188. package/dist/collection/components/ic-skeleton/ic-skeleton.js +2 -2
  189. package/dist/collection/components/ic-skip-link/ic-skip-link.js +2 -2
  190. package/dist/collection/components/ic-status-tag/ic-status-tag.js +2 -2
  191. package/dist/collection/components/ic-step/ic-step.js +13 -13
  192. package/dist/collection/components/ic-stepper/ic-stepper.js +2 -2
  193. package/dist/collection/components/ic-switch/ic-switch.css +7 -0
  194. package/dist/collection/components/ic-switch/ic-switch.js +4 -4
  195. package/dist/collection/components/ic-tab/ic-tab.css +6 -0
  196. package/dist/collection/components/ic-tab/ic-tab.js +2 -2
  197. package/dist/collection/components/ic-tab-context/ic-tab-context.js +1 -1
  198. package/dist/collection/components/ic-tab-group/ic-tab-group.js +2 -2
  199. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +2 -2
  200. package/dist/collection/components/ic-text-field/ic-text-field.js +5 -5
  201. package/dist/collection/components/ic-theme/ic-theme.js +1 -1
  202. package/dist/collection/components/ic-toast/ic-toast.js +5 -5
  203. package/dist/collection/components/ic-toast-region/ic-toast-region.js +1 -1
  204. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +2 -2
  205. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.css +6 -0
  206. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +2 -2
  207. package/dist/collection/components/ic-tooltip/ic-tooltip.css +1 -1
  208. package/dist/collection/components/ic-tooltip/ic-tooltip.js +13 -12
  209. package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
  210. package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +8 -4
  211. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +5 -5
  212. package/dist/collection/components/ic-top-navigation/ic-top-navigation.stories.js +100 -0
  213. package/dist/collection/components/ic-typography/ic-typography.css +6 -0
  214. package/dist/collection/components/ic-typography/ic-typography.js +2 -2
  215. package/dist/collection/utils/constants.js +7 -0
  216. package/dist/collection/utils/constants.js.map +1 -1
  217. package/dist/collection/utils/helpers.js +169 -2
  218. package/dist/collection/utils/helpers.js.map +1 -1
  219. package/dist/collection/utils/types.js.map +1 -1
  220. package/dist/components/constants.js +8 -1
  221. package/dist/components/constants.js.map +1 -1
  222. package/dist/components/helpers.js +157 -2
  223. package/dist/components/helpers.js.map +1 -1
  224. package/dist/components/ic-accordion-group.js +6 -3
  225. package/dist/components/ic-accordion-group.js.map +1 -1
  226. package/dist/components/ic-accordion.js +16 -9
  227. package/dist/components/ic-accordion.js.map +1 -1
  228. package/dist/components/ic-action-chip.js +3 -3
  229. package/dist/components/ic-back-to-top.js +4 -4
  230. package/dist/components/ic-back-to-top.js.map +1 -1
  231. package/dist/components/ic-badge.js +3 -3
  232. package/dist/components/ic-badge.js.map +1 -1
  233. package/dist/components/ic-breadcrumb-group.js +3 -3
  234. package/dist/components/ic-breadcrumb-group.js.map +1 -1
  235. package/dist/components/ic-breadcrumb2.js +2 -2
  236. package/dist/components/ic-button2.js +3 -3
  237. package/dist/components/ic-button2.js.map +1 -1
  238. package/dist/components/ic-card-horizontal.d.ts +11 -0
  239. package/dist/components/ic-card-horizontal.js +214 -0
  240. package/dist/components/ic-card-horizontal.js.map +1 -0
  241. package/dist/components/ic-card-vertical.js +5 -5
  242. package/dist/components/ic-card-vertical.js.map +1 -1
  243. package/dist/components/ic-checkbox-group.js +2 -2
  244. package/dist/components/ic-checkbox-group.js.map +1 -1
  245. package/dist/components/ic-checkbox.js +5 -5
  246. package/dist/components/ic-checkbox.js.map +1 -1
  247. package/dist/components/ic-chip.js +3 -3
  248. package/dist/components/ic-classification-banner.js +2 -2
  249. package/dist/components/ic-classification-banner.js.map +1 -1
  250. package/dist/components/ic-data-list.js +2 -2
  251. package/dist/components/ic-data-row.js +2 -2
  252. package/dist/components/ic-dialog.js +33 -124
  253. package/dist/components/ic-dialog.js.map +1 -1
  254. package/dist/components/ic-divider2.js +17 -8
  255. package/dist/components/ic-divider2.js.map +1 -1
  256. package/dist/components/ic-empty-state.js +2 -2
  257. package/dist/components/ic-footer-link.js +3 -3
  258. package/dist/components/ic-footer-link.js.map +1 -1
  259. package/dist/components/ic-footer.js +4 -4
  260. package/dist/components/ic-hero.js +4 -4
  261. package/dist/components/ic-horizontal-scroll2.js +7 -7
  262. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  263. package/dist/components/ic-input-component-container2.js +4 -4
  264. package/dist/components/ic-input-component-container2.js.map +1 -1
  265. package/dist/components/ic-input-container2.js +2 -2
  266. package/dist/components/ic-input-label2.js +13 -8
  267. package/dist/components/ic-input-label2.js.map +1 -1
  268. package/dist/components/ic-input-validation2.js +4 -4
  269. package/dist/components/ic-layout-grid-item.js +2 -2
  270. package/dist/components/ic-layout-grid.js +2 -2
  271. package/dist/components/ic-link2.js +2 -2
  272. package/dist/components/ic-link2.js.map +1 -1
  273. package/dist/components/ic-loading-indicator2.js +5 -5
  274. package/dist/components/ic-menu-group.js +1 -1
  275. package/dist/components/ic-menu2.js +5 -5
  276. package/dist/components/ic-menu2.js.map +1 -1
  277. package/dist/components/ic-navigation-button.js +3 -3
  278. package/dist/components/ic-navigation-group.js +3 -3
  279. package/dist/components/ic-navigation-group.js.map +1 -1
  280. package/dist/components/ic-navigation-item.js +7 -5
  281. package/dist/components/ic-navigation-item.js.map +1 -1
  282. package/dist/components/ic-navigation-menu2.js +5 -5
  283. package/dist/components/ic-page-header.js +7 -7
  284. package/dist/components/ic-page-header.js.map +1 -1
  285. package/dist/components/ic-pagination-item2.js +3 -3
  286. package/dist/components/ic-pagination-item2.js.map +1 -1
  287. package/dist/components/ic-pagination.js +4 -4
  288. package/dist/components/ic-popover-menu.js +4 -4
  289. package/dist/components/ic-popover-menu.js.map +1 -1
  290. package/dist/components/ic-radio-group.js +4 -4
  291. package/dist/components/ic-radio-option.js +5 -5
  292. package/dist/components/ic-radio-option.js.map +1 -1
  293. package/dist/components/ic-search-bar.js +11 -11
  294. package/dist/components/ic-search-bar.js.map +1 -1
  295. package/dist/components/ic-section-container2.js +2 -2
  296. package/dist/components/ic-select.js +8 -8
  297. package/dist/components/ic-select.js.map +1 -1
  298. package/dist/components/ic-side-navigation.js +17 -11
  299. package/dist/components/ic-side-navigation.js.map +1 -1
  300. package/dist/components/ic-skeleton.js +2 -2
  301. package/dist/components/ic-skip-link.js +2 -2
  302. package/dist/components/ic-status-tag.js +2 -2
  303. package/dist/components/ic-step.js +13 -13
  304. package/dist/components/ic-stepper.js +2 -2
  305. package/dist/components/ic-switch.js +5 -5
  306. package/dist/components/ic-switch.js.map +1 -1
  307. package/dist/components/ic-tab-context.js +1 -1
  308. package/dist/components/ic-tab-group.js +2 -2
  309. package/dist/components/ic-tab-panel.js +2 -2
  310. package/dist/components/ic-tab.js +3 -3
  311. package/dist/components/ic-tab.js.map +1 -1
  312. package/dist/components/ic-text-field.js +6 -6
  313. package/dist/components/ic-theme.js +2 -2
  314. package/dist/components/ic-toast-region.js +1 -1
  315. package/dist/components/ic-toast.js +6 -6
  316. package/dist/components/ic-toggle-button-group.js +3 -3
  317. package/dist/components/ic-toggle-button-group.js.map +1 -1
  318. package/dist/components/ic-toggle-button.js +3 -3
  319. package/dist/components/ic-tooltip2.js +14 -13
  320. package/dist/components/ic-tooltip2.js.map +1 -1
  321. package/dist/components/ic-top-navigation.js +7 -7
  322. package/dist/components/ic-top-navigation.js.map +1 -1
  323. package/dist/components/ic-typography2.js +3 -3
  324. package/dist/components/ic-typography2.js.map +1 -1
  325. package/dist/components/index.js +1 -1
  326. package/dist/core/core.css +4 -4
  327. package/dist/core/core.esm.js +1 -1
  328. package/dist/core/core.esm.js.map +1 -1
  329. package/dist/core/index.esm.js +1 -1
  330. package/dist/core/{p-3b13d191.entry.js → p-04c77b2d.entry.js} +2 -2
  331. package/dist/core/p-04c77b2d.entry.js.map +1 -0
  332. package/dist/core/{p-7552c8a1.entry.js → p-07075461.entry.js} +2 -2
  333. package/dist/core/p-0a24c536.entry.js +2 -0
  334. package/dist/core/p-0a24c536.entry.js.map +1 -0
  335. package/dist/core/{p-6b6c1491.entry.js → p-0aba9e31.entry.js} +2 -2
  336. package/dist/core/p-0d7fd892.entry.js +2 -0
  337. package/dist/core/{p-06b3ae40.entry.js → p-0da2caa2.entry.js} +2 -2
  338. package/dist/core/{p-c4ffcc64.entry.js → p-1590fd69.entry.js} +2 -2
  339. package/dist/core/p-1590fd69.entry.js.map +1 -0
  340. package/dist/core/{p-62b9e7bf.entry.js → p-1edf2689.entry.js} +2 -2
  341. package/dist/core/{p-70e1dd4d.entry.js → p-208f470f.entry.js} +2 -2
  342. package/dist/core/p-29b61bb5.entry.js +3 -0
  343. package/dist/core/p-29b61bb5.entry.js.map +1 -0
  344. package/dist/core/{p-21efc36e.entry.js → p-2af89564.entry.js} +2 -2
  345. package/dist/core/{p-a86785dd.entry.js → p-2ca7f050.entry.js} +2 -2
  346. package/dist/core/{p-3785c740.entry.js → p-3021290f.entry.js} +2 -2
  347. package/dist/core/p-3021290f.entry.js.map +1 -0
  348. package/dist/core/{p-5cf704e3.entry.js → p-387b7bca.entry.js} +2 -2
  349. package/dist/core/p-41a5da12.entry.js +2 -0
  350. package/dist/core/p-41a5da12.entry.js.map +1 -0
  351. package/dist/core/p-43cc0f1d.entry.js +2 -0
  352. package/dist/core/{p-a8dc3162.entry.js.map → p-43cc0f1d.entry.js.map} +1 -1
  353. package/dist/core/{p-e0423c7e.entry.js → p-4aa56990.entry.js} +2 -2
  354. package/dist/core/p-4aa56990.entry.js.map +1 -0
  355. package/dist/core/p-4aadabc8.entry.js +2 -0
  356. package/dist/core/p-4aadabc8.entry.js.map +1 -0
  357. package/dist/core/{p-bddf799a.js → p-6215e2ae.js} +2 -2
  358. package/dist/core/p-6215e2ae.js.map +1 -0
  359. package/dist/core/{p-bfd03fb4.entry.js → p-707ae6e9.entry.js} +2 -2
  360. package/dist/core/{p-bb3a5130.entry.js → p-716e7eaf.entry.js} +2 -2
  361. package/dist/core/p-716e7eaf.entry.js.map +1 -0
  362. package/dist/core/p-780babc0.entry.js +2 -0
  363. package/dist/core/p-780babc0.entry.js.map +1 -0
  364. package/dist/core/{p-fb43abd6.entry.js → p-78a54069.entry.js} +2 -2
  365. package/dist/core/{p-5e1a77aa.entry.js → p-79949920.entry.js} +2 -2
  366. package/dist/core/p-7b8e5926.entry.js +2 -0
  367. package/dist/core/p-7b8e5926.entry.js.map +1 -0
  368. package/dist/core/{p-43356493.entry.js → p-7f279c8a.entry.js} +2 -2
  369. package/dist/core/{p-9452b9ac.entry.js → p-808e1ef5.entry.js} +2 -2
  370. package/dist/core/{p-082e0068.entry.js → p-812c5e61.entry.js} +2 -2
  371. package/dist/core/p-812c5e61.entry.js.map +1 -0
  372. package/dist/core/{p-f4e2e41f.entry.js → p-85e15d01.entry.js} +2 -2
  373. package/dist/core/{p-1cc402b8.entry.js → p-880afd4b.entry.js} +2 -2
  374. package/dist/core/{p-af02add9.entry.js → p-8da90b72.entry.js} +2 -2
  375. package/dist/core/p-8fe4e0ad.entry.js +2 -0
  376. package/dist/core/p-8fe4e0ad.entry.js.map +1 -0
  377. package/dist/core/{p-4fa7fbc4.entry.js → p-9057a186.entry.js} +2 -2
  378. package/dist/core/p-9057a186.entry.js.map +1 -0
  379. package/dist/core/{p-091a7fbf.entry.js → p-94916588.entry.js} +2 -2
  380. package/dist/core/{p-a7f21494.entry.js → p-949d08d3.entry.js} +2 -2
  381. package/dist/core/{p-8abcc114.entry.js → p-96bc7d24.entry.js} +2 -2
  382. package/dist/core/p-96bc7d24.entry.js.map +1 -0
  383. package/dist/core/{p-dfc2a0b1.entry.js → p-99687bce.entry.js} +2 -2
  384. package/dist/core/{p-a5295f66.entry.js → p-99951365.entry.js} +2 -2
  385. package/dist/core/p-99951365.entry.js.map +1 -0
  386. package/dist/core/p-9a4e067f.entry.js +2 -0
  387. package/dist/core/p-9a4e067f.entry.js.map +1 -0
  388. package/dist/core/p-a03bb31c.entry.js +2 -0
  389. package/dist/core/p-a03bb31c.entry.js.map +1 -0
  390. package/dist/core/{p-49444c33.entry.js → p-a0af1b0a.entry.js} +2 -2
  391. package/dist/core/p-a1b2f483.entry.js +2 -0
  392. package/dist/core/p-a1b2f483.entry.js.map +1 -0
  393. package/dist/core/{p-44fbe8c2.entry.js → p-a3dea729.entry.js} +2 -2
  394. package/dist/core/p-a674b13b.entry.js +2 -0
  395. package/dist/core/p-a674b13b.entry.js.map +1 -0
  396. package/dist/core/{p-6e8ef73c.entry.js → p-a851eb65.entry.js} +2 -2
  397. package/dist/core/{p-bdda404b.entry.js → p-aed1c7e7.entry.js} +2 -2
  398. package/dist/core/p-b4e322fe.entry.js +2 -0
  399. package/dist/core/p-b4e322fe.entry.js.map +1 -0
  400. package/dist/core/{p-3a94849e.entry.js → p-b8c0c142.entry.js} +2 -2
  401. package/dist/core/{p-b00efb15.entry.js → p-c156e6e9.entry.js} +2 -2
  402. package/dist/core/p-c5b9519d.entry.js +2 -0
  403. package/dist/core/p-c5b9519d.entry.js.map +1 -0
  404. package/dist/core/{p-d8200098.entry.js → p-cad23b7d.entry.js} +2 -2
  405. package/dist/core/{p-411527a1.entry.js → p-cfd43558.entry.js} +2 -2
  406. package/dist/core/p-cfd43558.entry.js.map +1 -0
  407. package/dist/core/{p-8798cc6b.entry.js → p-d1730d4d.entry.js} +2 -2
  408. package/dist/core/{p-4637c326.entry.js → p-d25d0aad.entry.js} +2 -2
  409. package/dist/core/p-d25d0aad.entry.js.map +1 -0
  410. package/dist/core/{p-296a41ce.entry.js → p-db17a793.entry.js} +2 -2
  411. package/dist/core/p-db17a793.entry.js.map +1 -0
  412. package/dist/core/p-dbc8bf0c.js +2 -0
  413. package/dist/core/p-dbc8bf0c.js.map +1 -0
  414. package/dist/core/{p-355d0914.entry.js → p-dce11b9d.entry.js} +2 -2
  415. package/dist/core/p-dce11b9d.entry.js.map +1 -0
  416. package/dist/core/{p-28c9a6e4.entry.js → p-ded4cd76.entry.js} +2 -2
  417. package/dist/core/p-ded4cd76.entry.js.map +1 -0
  418. package/dist/core/{p-0eafbaa1.entry.js → p-ea890d3d.entry.js} +2 -2
  419. package/dist/core/{p-ae7dcbd5.entry.js → p-ec14c783.entry.js} +2 -2
  420. package/dist/core/{p-539b975f.entry.js → p-f0ecb80b.entry.js} +2 -2
  421. package/dist/core/p-f0ecb80b.entry.js.map +1 -0
  422. package/dist/core/{p-77a6c3f7.entry.js → p-f3406b42.entry.js} +2 -2
  423. package/dist/core/p-f3406b42.entry.js.map +1 -0
  424. package/dist/core/{p-6fb29846.entry.js → p-f6de08fb.entry.js} +2 -2
  425. package/dist/core/{p-911b4aa4.entry.js → p-f700b759.entry.js} +2 -2
  426. package/dist/core/{p-a7645717.entry.js → p-fdb587ab.entry.js} +2 -2
  427. package/dist/core/{p-287e5c17.entry.js → p-feef7c2c.entry.js} +2 -2
  428. package/dist/esm/{constants-7960cba4.js → constants-ab12fdcf.js} +9 -2
  429. package/dist/esm/constants-ab12fdcf.js.map +1 -0
  430. package/dist/esm/core.js +1 -1
  431. package/dist/esm/{helpers-dcedb279.js → helpers-0f85537f.js} +158 -3
  432. package/dist/esm/helpers-0f85537f.js.map +1 -0
  433. package/dist/esm/ic-accordion-group.entry.js +8 -5
  434. package/dist/esm/ic-accordion-group.entry.js.map +1 -1
  435. package/dist/esm/ic-accordion.entry.js +18 -11
  436. package/dist/esm/ic-accordion.entry.js.map +1 -1
  437. package/dist/esm/ic-action-chip.entry.js +5 -5
  438. package/dist/esm/ic-alert.entry.js +2 -2
  439. package/dist/esm/ic-back-to-top.entry.js +6 -6
  440. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  441. package/dist/esm/ic-badge.entry.js +5 -5
  442. package/dist/esm/ic-badge.entry.js.map +1 -1
  443. package/dist/esm/ic-breadcrumb-group.entry.js +5 -5
  444. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  445. package/dist/esm/ic-breadcrumb.entry.js +4 -4
  446. package/dist/esm/ic-button_3.entry.js +24 -23
  447. package/dist/esm/ic-button_3.entry.js.map +1 -1
  448. package/dist/esm/ic-card-horizontal.entry.js +170 -0
  449. package/dist/esm/ic-card-horizontal.entry.js.map +1 -0
  450. package/dist/esm/ic-card-vertical.entry.js +7 -7
  451. package/dist/esm/ic-card-vertical.entry.js.map +1 -1
  452. package/dist/esm/ic-checkbox-group.entry.js +4 -4
  453. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  454. package/dist/esm/ic-checkbox.entry.js +7 -7
  455. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  456. package/dist/esm/ic-chip.entry.js +5 -5
  457. package/dist/esm/ic-classification-banner.entry.js +2 -2
  458. package/dist/esm/ic-data-list.entry.js +2 -2
  459. package/dist/esm/ic-data-row.entry.js +4 -4
  460. package/dist/esm/ic-dialog.entry.js +34 -125
  461. package/dist/esm/ic-dialog.entry.js.map +1 -1
  462. package/dist/esm/ic-divider.entry.js +18 -9
  463. package/dist/esm/ic-divider.entry.js.map +1 -1
  464. package/dist/esm/ic-empty-state.entry.js +4 -4
  465. package/dist/esm/ic-footer-link-group.entry.js +2 -2
  466. package/dist/esm/ic-footer-link.entry.js +5 -5
  467. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  468. package/dist/esm/ic-footer.entry.js +5 -5
  469. package/dist/esm/ic-hero.entry.js +6 -6
  470. package/dist/esm/ic-horizontal-scroll.entry.js +8 -8
  471. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  472. package/dist/esm/ic-input-component-container_3.entry.js +12 -12
  473. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  474. package/dist/esm/ic-input-label_2.entry.js +18 -13
  475. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  476. package/dist/esm/ic-layout-grid-item.entry.js +2 -2
  477. package/dist/esm/ic-layout-grid.entry.js +2 -2
  478. package/dist/esm/ic-link.entry.js +4 -4
  479. package/dist/esm/ic-link.entry.js.map +1 -1
  480. package/dist/esm/ic-menu-group.entry.js +3 -3
  481. package/dist/esm/ic-menu-item.entry.js +2 -2
  482. package/dist/esm/ic-navigation-button.entry.js +4 -4
  483. package/dist/esm/ic-navigation-group.entry.js +4 -4
  484. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  485. package/dist/esm/ic-navigation-item.entry.js +8 -6
  486. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  487. package/dist/esm/ic-navigation-menu.entry.js +6 -6
  488. package/dist/esm/ic-page-header.entry.js +9 -9
  489. package/dist/esm/ic-page-header.entry.js.map +1 -1
  490. package/dist/esm/ic-pagination-item.entry.js +4 -4
  491. package/dist/esm/ic-pagination-item.entry.js.map +1 -1
  492. package/dist/esm/ic-pagination.entry.js +6 -6
  493. package/dist/esm/ic-popover-menu.entry.js +6 -6
  494. package/dist/esm/ic-radio-group.entry.js +6 -6
  495. package/dist/esm/ic-radio-option.entry.js +7 -7
  496. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  497. package/dist/esm/ic-search-bar.entry.js +12 -12
  498. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  499. package/dist/esm/ic-section-container.entry.js +2 -2
  500. package/dist/esm/ic-select.entry.js +9 -9
  501. package/dist/esm/ic-select.entry.js.map +1 -1
  502. package/dist/esm/ic-side-navigation.entry.js +18 -12
  503. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  504. package/dist/esm/ic-skeleton.entry.js +2 -2
  505. package/dist/esm/ic-skip-link.entry.js +2 -2
  506. package/dist/esm/ic-status-tag.entry.js +4 -4
  507. package/dist/esm/ic-step.entry.js +15 -15
  508. package/dist/esm/ic-stepper.entry.js +4 -4
  509. package/dist/esm/ic-switch.entry.js +7 -7
  510. package/dist/esm/ic-switch.entry.js.map +1 -1
  511. package/dist/esm/ic-tab-context.entry.js +1 -1
  512. package/dist/esm/ic-tab-group.entry.js +4 -4
  513. package/dist/esm/ic-tab-panel.entry.js +2 -2
  514. package/dist/esm/ic-tab.entry.js +5 -5
  515. package/dist/esm/ic-tab.entry.js.map +1 -1
  516. package/dist/esm/ic-text-field.entry.js +7 -7
  517. package/dist/esm/ic-theme.entry.js +3 -3
  518. package/dist/esm/ic-toast-region.entry.js +1 -1
  519. package/dist/esm/ic-toast.entry.js +7 -7
  520. package/dist/esm/ic-toggle-button-group.entry.js +5 -5
  521. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  522. package/dist/esm/ic-toggle-button.entry.js +4 -4
  523. package/dist/esm/ic-top-navigation.entry.js +8 -8
  524. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  525. package/dist/esm/ic-typography.entry.js +5 -5
  526. package/dist/esm/ic-typography.entry.js.map +1 -1
  527. package/dist/esm/index-a7a720e7.js +4 -0
  528. package/dist/esm/index.js +1 -1
  529. package/dist/esm/loader.js +1 -1
  530. package/dist/types/components/ic-accordion-group/ic-accordion-group.d.ts +1 -0
  531. package/dist/types/components/ic-card-horizontal/ic-card-horizontal.d.ts +89 -0
  532. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +1 -0
  533. package/dist/types/components/ic-dialog/ic-dialog.d.ts +2 -15
  534. package/dist/types/components/ic-divider/ic-divider.d.ts +2 -0
  535. package/dist/types/components/ic-input-label/ic-input-label.d.ts +4 -1
  536. package/dist/types/components/ic-tooltip/ic-tooltip.d.ts +1 -1
  537. package/dist/types/components.d.ts +123 -2
  538. package/dist/types/utils/constants.d.ts +6 -0
  539. package/dist/types/utils/helpers.d.ts +69 -2
  540. package/dist/types/utils/types.d.ts +2 -0
  541. package/hydrate/index.js +683 -373
  542. package/hydrate/index.mjs +683 -373
  543. package/package.json +2 -2
  544. package/vscode-data.json +117 -0
  545. package/dist/cjs/constants-3a9ba64a.js.map +0 -1
  546. package/dist/cjs/helpers-15fae358.js.map +0 -1
  547. package/dist/core/p-012e058a.entry.js +0 -3
  548. package/dist/core/p-012e058a.entry.js.map +0 -1
  549. package/dist/core/p-0257d59e.entry.js +0 -2
  550. package/dist/core/p-0257d59e.entry.js.map +0 -1
  551. package/dist/core/p-082e0068.entry.js.map +0 -1
  552. package/dist/core/p-128e2cbb.entry.js +0 -2
  553. package/dist/core/p-128e2cbb.entry.js.map +0 -1
  554. package/dist/core/p-28c9a6e4.entry.js.map +0 -1
  555. package/dist/core/p-296a41ce.entry.js.map +0 -1
  556. package/dist/core/p-34cc376c.entry.js +0 -2
  557. package/dist/core/p-34cc376c.entry.js.map +0 -1
  558. package/dist/core/p-355d0914.entry.js.map +0 -1
  559. package/dist/core/p-3785c740.entry.js.map +0 -1
  560. package/dist/core/p-3b13d191.entry.js.map +0 -1
  561. package/dist/core/p-411527a1.entry.js.map +0 -1
  562. package/dist/core/p-44aaf454.entry.js +0 -2
  563. package/dist/core/p-44aaf454.entry.js.map +0 -1
  564. package/dist/core/p-4637c326.entry.js.map +0 -1
  565. package/dist/core/p-4fa7fbc4.entry.js.map +0 -1
  566. package/dist/core/p-52fa3eec.entry.js +0 -2
  567. package/dist/core/p-52fa3eec.entry.js.map +0 -1
  568. package/dist/core/p-539b975f.entry.js.map +0 -1
  569. package/dist/core/p-614953c5.entry.js +0 -2
  570. package/dist/core/p-614953c5.entry.js.map +0 -1
  571. package/dist/core/p-72ac8bb9.entry.js +0 -2
  572. package/dist/core/p-72ac8bb9.entry.js.map +0 -1
  573. package/dist/core/p-77a6c3f7.entry.js.map +0 -1
  574. package/dist/core/p-8abcc114.entry.js.map +0 -1
  575. package/dist/core/p-a45de09d.entry.js +0 -2
  576. package/dist/core/p-a45de09d.entry.js.map +0 -1
  577. package/dist/core/p-a5295f66.entry.js.map +0 -1
  578. package/dist/core/p-a5658054.js +0 -2
  579. package/dist/core/p-a5658054.js.map +0 -1
  580. package/dist/core/p-a8dc3162.entry.js +0 -2
  581. package/dist/core/p-ad6632a9.entry.js +0 -2
  582. package/dist/core/p-ad6632a9.entry.js.map +0 -1
  583. package/dist/core/p-ae861bb8.entry.js +0 -2
  584. package/dist/core/p-bb3a5130.entry.js.map +0 -1
  585. package/dist/core/p-bddf799a.js.map +0 -1
  586. package/dist/core/p-c397b33f.entry.js +0 -2
  587. package/dist/core/p-c397b33f.entry.js.map +0 -1
  588. package/dist/core/p-c4ffcc64.entry.js.map +0 -1
  589. package/dist/core/p-e0423c7e.entry.js.map +0 -1
  590. package/dist/core/p-f247db14.entry.js +0 -2
  591. package/dist/core/p-f247db14.entry.js.map +0 -1
  592. package/dist/esm/constants-7960cba4.js.map +0 -1
  593. package/dist/esm/helpers-dcedb279.js.map +0 -1
  594. /package/dist/core/{p-7552c8a1.entry.js.map → p-07075461.entry.js.map} +0 -0
  595. /package/dist/core/{p-6b6c1491.entry.js.map → p-0aba9e31.entry.js.map} +0 -0
  596. /package/dist/core/{p-ae861bb8.entry.js.map → p-0d7fd892.entry.js.map} +0 -0
  597. /package/dist/core/{p-06b3ae40.entry.js.map → p-0da2caa2.entry.js.map} +0 -0
  598. /package/dist/core/{p-62b9e7bf.entry.js.map → p-1edf2689.entry.js.map} +0 -0
  599. /package/dist/core/{p-70e1dd4d.entry.js.map → p-208f470f.entry.js.map} +0 -0
  600. /package/dist/core/{p-21efc36e.entry.js.map → p-2af89564.entry.js.map} +0 -0
  601. /package/dist/core/{p-a86785dd.entry.js.map → p-2ca7f050.entry.js.map} +0 -0
  602. /package/dist/core/{p-5cf704e3.entry.js.map → p-387b7bca.entry.js.map} +0 -0
  603. /package/dist/core/{p-bfd03fb4.entry.js.map → p-707ae6e9.entry.js.map} +0 -0
  604. /package/dist/core/{p-fb43abd6.entry.js.map → p-78a54069.entry.js.map} +0 -0
  605. /package/dist/core/{p-5e1a77aa.entry.js.map → p-79949920.entry.js.map} +0 -0
  606. /package/dist/core/{p-43356493.entry.js.map → p-7f279c8a.entry.js.map} +0 -0
  607. /package/dist/core/{p-9452b9ac.entry.js.map → p-808e1ef5.entry.js.map} +0 -0
  608. /package/dist/core/{p-f4e2e41f.entry.js.map → p-85e15d01.entry.js.map} +0 -0
  609. /package/dist/core/{p-1cc402b8.entry.js.map → p-880afd4b.entry.js.map} +0 -0
  610. /package/dist/core/{p-af02add9.entry.js.map → p-8da90b72.entry.js.map} +0 -0
  611. /package/dist/core/{p-091a7fbf.entry.js.map → p-94916588.entry.js.map} +0 -0
  612. /package/dist/core/{p-a7f21494.entry.js.map → p-949d08d3.entry.js.map} +0 -0
  613. /package/dist/core/{p-dfc2a0b1.entry.js.map → p-99687bce.entry.js.map} +0 -0
  614. /package/dist/core/{p-49444c33.entry.js.map → p-a0af1b0a.entry.js.map} +0 -0
  615. /package/dist/core/{p-44fbe8c2.entry.js.map → p-a3dea729.entry.js.map} +0 -0
  616. /package/dist/core/{p-6e8ef73c.entry.js.map → p-a851eb65.entry.js.map} +0 -0
  617. /package/dist/core/{p-bdda404b.entry.js.map → p-aed1c7e7.entry.js.map} +0 -0
  618. /package/dist/core/{p-3a94849e.entry.js.map → p-b8c0c142.entry.js.map} +0 -0
  619. /package/dist/core/{p-b00efb15.entry.js.map → p-c156e6e9.entry.js.map} +0 -0
  620. /package/dist/core/{p-d8200098.entry.js.map → p-cad23b7d.entry.js.map} +0 -0
  621. /package/dist/core/{p-8798cc6b.entry.js.map → p-d1730d4d.entry.js.map} +0 -0
  622. /package/dist/core/{p-0eafbaa1.entry.js.map → p-ea890d3d.entry.js.map} +0 -0
  623. /package/dist/core/{p-ae7dcbd5.entry.js.map → p-ec14c783.entry.js.map} +0 -0
  624. /package/dist/core/{p-6fb29846.entry.js.map → p-f6de08fb.entry.js.map} +0 -0
  625. /package/dist/core/{p-911b4aa4.entry.js.map → p-f700b759.entry.js.map} +0 -0
  626. /package/dist/core/{p-a7645717.entry.js.map → p-fdb587ab.entry.js.map} +0 -0
  627. /package/dist/core/{p-287e5c17.entry.js.map → p-feef7c2c.entry.js.map} +0 -0
@@ -712,3 +712,10 @@ button {
712
712
  outline-color: Highlight;
713
713
  }
714
714
  }
715
+
716
+ @media (prefers-reduced-motion: reduce) {
717
+ .card,
718
+ .toggle-button {
719
+ transition: none;
720
+ }
721
+ }
@@ -150,19 +150,19 @@ export class CardVertical {
150
150
  rel: rel,
151
151
  target: target,
152
152
  };
153
- return (h(Host, { key: 'aeff3ef22b085acbf30dacb5d3ae0167451044b9', class: {
153
+ return (h(Host, { key: 'a5c7d234492dc72ab0ce06bc64646982b9b0c765', class: {
154
154
  [`ic-theme-${theme}`]: theme !== "inherit",
155
- } }, h(Component, Object.assign({ key: 'a451e5f53149283ee77878ccc3e699beae669f24', class: {
155
+ } }, h(Component, Object.assign({ key: '7878c6c421216eaffda8034f38711156dd920e41', class: {
156
156
  card: true,
157
157
  clickable: !!clickable && !disabled,
158
158
  disabled: !!disabled,
159
159
  fullwidth: !!fullWidth,
160
160
  focussed: isFocussed,
161
161
  monochrome: monochrome,
162
- }, tabindex: clickable && !parentIsAnchorTag ? 0 : undefined, "aria-disabled": disabled ? "true" : null, disabled: disabled }, attrs), isSlotUsed(this.el, "image-top") && (h("div", { key: '2ec35ab8d6e1224c0a393c92a72e403e4c5fc8fc', class: "image-top" }, h("slot", { key: 'c859ae1e242284b586df2ce7627c316021b8ef54', name: "image-top" }))), h("div", { key: '55f21501b3d95e1f5bf3a69542dab57d00379e63', class: "card-header" }, isSlotUsed(this.el, "icon") && (h("div", { key: 'f95e7224d6e8548f33a8861025a1651a3bc953a4', class: "icon" }, h("slot", { key: '1102f6f88e830613365cb0bfe3e5c4481b3a207e', name: "icon" }))), h("div", { key: '3122872ef284640debbf7182d36f9cd4c6032ae4', class: "card-title" }, h("slot", { key: 'f51213257b0ff6e195852ca006e9cba35103f210', name: "heading" }, h("ic-typography", { key: '7d82fce416b7579ac23e2154ef512bd8f3181bc3', variant: "h4" }, h("p", { key: 'ad083279b8f012f16d67c182c37bcc6383710ba5' }, heading)))), isSlotUsed(this.el, "interaction-button") && (h("div", { key: 'bb47af0b373f295cb1bcd1b72df6c325e257c2ed', class: "interaction-button" }, h("slot", { key: 'fd0fc056e51febf6d9abe76d7ffb0773836e52d3', name: "interaction-button" })))), (subheading || isSlotUsed(this.el, "subheading")) && (h("div", { key: '32851c6c59b9ee76aa490210f5888fe410067ca3', class: "subheading" }, h("slot", { key: '5757fd2fd2618f03fee208b855384c29861cadc6', name: "subheading" }, h("ic-typography", { key: '1f206ca1eaf0bcd5693abf3fc3f97303582a5deb', variant: "subtitle-small" }, subheading)))), isSlotUsed(this.el, "adornment") && (h("div", { key: 'ceef939617ce12be984f15673e9ef4e71110234c', class: "adornment" }, h("slot", { key: '127e2dfa77b74a19070e90361d26fe1358539ca2', name: "adornment" }))), isSlotUsed(this.el, "image-mid") && (h("div", { key: '0cbc0b6a9638969db6fabcde40ad46044afc4b88', class: "image-mid" }, h("slot", { key: '3e8ae6e25570ed03e7fea0ae4fdd7a779d3022b1', name: "image-mid" }))), (message || isSlotUsed(this.el, "message")) && (h("div", { key: '9da59f1aeaa1fcf4bc2a0aa1bd50d3f86faa2af7', class: "card-message" }, message && (h("ic-typography", { key: '4620229c479b782ad5ee0c8e3a7acdf6a8a70d7b', variant: "body" }, message)), isSlotUsed(this.el, "message") && h("slot", { key: '959e101cc933319cf297d0f0ebbd46299a24cbd5', name: "message" }))), (isSlotUsed(this.el, "interaction-controls") || expandable) && (h("div", { key: 'c4263a3d5f8e22f31cf0e55a868dbf0f52b00692', class: "interaction-area" }, h("div", { key: 'bd5e1d3ff137004ff5c696f611dae1bfefd26e1a', class: "interaction-controls" }, h("slot", { key: '5985495f8f12c825aafcab517d3add5f9741d460', name: "interaction-controls" })), expandable && (h("ic-tooltip", { key: 'e3b12f780303019b7f95ce5a98d7b7194c242c9a', id: "ic-tooltip-expand-button", label: "Toggle expandable area", silent: true }, h("button", { key: '9857a37a37571bd21f500527149ed8bc3806c4f4', class: {
162
+ }, tabindex: clickable && !parentIsAnchorTag ? 0 : undefined, "aria-disabled": disabled ? "true" : null, disabled: disabled }, attrs), isSlotUsed(this.el, "image-top") && (h("div", { key: '32fc034396f14d12845c12ad9cfc4c00b75c0970', class: "image-top" }, h("slot", { key: 'd2f682bfd7e961d43aa37fc14b1f1ce875cfd9e4', name: "image-top" }))), h("div", { key: '315d6f3c97119e41228be4c1057f2c8e28c2e627', class: "card-header" }, isSlotUsed(this.el, "icon") && (h("div", { key: '304744f27ecdd26136c52bdf6a0623ccf16c8ccb', class: "icon" }, h("slot", { key: 'a186a14d094c999cc72b9ca8d0580c9c81ef5e5a', name: "icon" }))), h("div", { key: '4d52fd26c94603c39bdc7d03dd185d9147ec35d6', class: "card-title" }, h("slot", { key: 'e99c3b5b04bc8e4e0ad712ac221183e42472d1e4', name: "heading" }, h("ic-typography", { key: '7de9265a3bccf8ddeda0a5da115739dab6e7f4e3', variant: "h4" }, h("p", { key: '52ad60554c859fcba6960f892210b11afe2c8412' }, heading)))), isSlotUsed(this.el, "interaction-button") && (h("div", { key: 'bd177fd6ead82c2d826a90c9bc36baf4d9650822', class: "interaction-button" }, h("slot", { key: '50200586d93b445f084acdc44fe783362c61ad1c', name: "interaction-button" })))), (subheading || isSlotUsed(this.el, "subheading")) && (h("div", { key: '4084d3cdbcbfba517874846f00c6a75973911b46', class: "subheading" }, h("slot", { key: '83ecdcca1ae25ded22c2b48631ca719b219c670f', name: "subheading" }, h("ic-typography", { key: '6cc1e94ba4ecaeb37c0b01a177bf51ce56431406', variant: "subtitle-small" }, subheading)))), isSlotUsed(this.el, "adornment") && (h("div", { key: '5b2e821691a30048fa7598ea5e7f4da245539644', class: "adornment" }, h("slot", { key: '9955b70349039dd954ee03c66f27684225ad2161', name: "adornment" }))), isSlotUsed(this.el, "image-mid") && (h("div", { key: '1a44edd306c3a8a9f8b9d07d3f92bad346b8d9c2', class: "image-mid" }, h("slot", { key: '79c16a0c673bc92c420159b4908e7c2881c58fc0', name: "image-mid" }))), (message || isSlotUsed(this.el, "message")) && (h("div", { key: '11468fd0d9784ad303bae66a6c7b9a7e6fcd2fdb', class: "card-message" }, message && (h("ic-typography", { key: '4795147360d9862d329b7aa23b2d5d9d3501ff21', variant: "body" }, message)), isSlotUsed(this.el, "message") && h("slot", { key: '2e5c82f6cc32ab92e46d4531f5f646bb15b8bb8a', name: "message" }))), (isSlotUsed(this.el, "interaction-controls") || expandable) && (h("div", { key: '0d1f66f5387c89bdb9b6be46636f6b092fd3b977', class: "interaction-area" }, h("div", { key: '9afed7575316981e6e696d58469f56746fdd78e3', class: "interaction-controls" }, h("slot", { key: 'f218de86f75106aab7b2a7c3b81b303a813cfcc3', name: "interaction-controls" })), expandable && (h("ic-tooltip", { key: '29ccf36efd77a936dd35fef1cc304f5ffdde47ea', id: "ic-tooltip-expand-button", label: "Toggle expandable area", silent: true }, h("button", { key: 'e25088479cfa1519d8ac728505138fb2730b0400', class: {
163
163
  "toggle-button": true,
164
164
  [`toggle-button-${this.areaExpanded ? "expanded" : "closed"}`]: true,
165
- }, "aria-label": "Toggle expandable area", "aria-expanded": `${this.areaExpanded}`, "aria-controls": this.areaExpanded ? "expanded-content-area" : null, onClick: this.toggleExpanded, innerHTML: chevronIcon }))))), isSlotUsed(this.el, "expanded-content") && this.areaExpanded && (h("div", { key: '080d0198d37d939cfc506abc5933caac7eaa383d', class: "expanded-content", id: "expanded-content-area" }, h("slot", { key: '6c9b5dd6bfa46d466034255231047b2682e19f96', name: "expanded-content" }))), isSlotUsed(this.el, "badge") && h("slot", { key: '1f68304dd15e605320258bf8d14d2df3b0caf344', name: "badge" }))));
165
+ }, "aria-label": "Toggle expandable area", "aria-expanded": `${this.areaExpanded}`, "aria-controls": this.areaExpanded ? "expanded-content-area" : null, onClick: this.toggleExpanded, innerHTML: chevronIcon }))))), isSlotUsed(this.el, "expanded-content") && this.areaExpanded && (h("div", { key: '710a390ddcfd6464509e31a8bdc12213180a8e69', class: "expanded-content", id: "expanded-content-area" }, h("slot", { key: 'd315e1d72d612b75a04460d6a33a66a7f84f39c8', name: "expanded-content" }))), isSlotUsed(this.el, "badge") && h("slot", { key: '93bad888a177ab13ae50ea4d86fa6fd2c4ae01f7', name: "badge" }))));
166
166
  }
167
167
  static get is() { return "ic-card-vertical"; }
168
168
  static get encapsulation() { return "shadow"; }
@@ -21,7 +21,7 @@ const defaultArgs = {
21
21
  };
22
22
 
23
23
  export default {
24
- title: "Web Components/Card",
24
+ title: "Web Components/Card Vertical",
25
25
  component: "ic-card-vertical",
26
26
  };
27
27
 
@@ -694,11 +694,6 @@ video {
694
694
  -webkit-appearance: revert;
695
695
  -moz-appearance: revert;
696
696
  appearance: revert;
697
- transition: none;
698
- }
699
-
700
- .checkbox:checked {
701
- transition: none;
702
697
  }
703
698
 
704
699
  .checkbox:focus-visible {
@@ -744,3 +739,10 @@ video {
744
739
  .dynamic-container:dir(rtl) {
745
740
  margin: var(--ic-space-xxxs) var(--ic-space-sm) var(--ic-space-xxs) 0;
746
741
  }
742
+
743
+ @media (prefers-reduced-motion: reduce) {
744
+ .checkbox,
745
+ .checkbox:checked {
746
+ transition: none;
747
+ }
748
+ }
@@ -130,17 +130,17 @@ export class Checkbox {
130
130
  ? renderHiddenInput(el, value, name, disabled)
131
131
  : removeHiddenInput(el);
132
132
  const LabelContent = () => this.hasLabelSlot() ? (h("slot", { name: "label" })) : (h("ic-typography", { class: "checkbox-label", variant: "body" }, h("label", { htmlFor: inputId }, label)));
133
- return (h(Host, { key: 'b9aee197d23b8380b224aaa9f332d24c20406518', class: {
133
+ return (h(Host, { key: 'c26a95e302dfd93aca89ba24f2eac3dd23b3b12a', class: {
134
134
  "ic-checkbox-disabled": disabled,
135
135
  [`ic-checkbox-${size}`]: !!size,
136
136
  [`ic-theme-${theme}`]: theme !== "inherit",
137
- } }, h("div", { key: 'a027b311fa8a9cc5ef753a426fc3f73e8d6f97a4', class: "container" }, displayIndeterminate ? (h("div", { class: "indeterminate-symbol" })) : (checked && (h("svg", { class: "checkmark", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", "fill-rule": "evenodd", "clip-rule": "evenodd" }, h("title", null, "checkmark icon"), h("path", { d: "M21 6.285l-11.16 12.733-6.84-6.018 1.319-1.49 5.341 4.686 9.865-11.196 1.475 1.285z" })))), h("input", { key: '5f3ce7e559134302640a03d2312782552e9ab018', role: "checkbox", class: {
137
+ } }, h("div", { key: '7a51e875e418c6e42a7b8d8cf5143a2bd562cd99', class: "container" }, displayIndeterminate ? (h("div", { class: "indeterminate-symbol" })) : (checked && (h("svg", { class: "checkmark", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", "fill-rule": "evenodd", "clip-rule": "evenodd" }, h("title", null, "checkmark icon"), h("path", { d: "M21 6.285l-11.16 12.733-6.84-6.018 1.319-1.49 5.341 4.686 9.865-11.196 1.475 1.285z" })))), h("input", { key: '72c7c69b70462dd7a8b5c211518a67b0fdc4e51f', role: "checkbox", class: {
138
138
  checkbox: true,
139
139
  checked,
140
140
  indeterminate: displayIndeterminate,
141
- }, ref: (el) => (this.checkboxEl = el), type: "checkbox", name: name, id: inputId, value: value, disabled: disabled, checked: checked, indeterminate: displayIndeterminate, onClick: handleClick, form: form, "aria-label": hideLabel || this.hasLabelSlot() ? label : undefined }), !hideLabel && h(LabelContent, { key: 'e75420d60d9fdc9170a7f54c96575936c8da122d' })), h("span", { key: 'c3fccdab4f27feaeab35df33734723d9f14487cc', id: `${inputId}-additional-field-description`, role: "alert", class: "sr-only" }, isDynamicAdditionalField && checked ? dynamicText : ""), isSlotUsed(el, "additional-field") && (h("div", { key: 'ceb57398c6a3dea8cec4eb4a8e0ba940f6f15c0a', class: "dynamic-container", ref: (el) => (this.additionalFieldContainer = el) }, isDynamicAdditionalField && h("div", { key: '41f097eb38e5dfd739b7de22cffb03ff3043d3e6', class: "branch-corner" }), h("div", { key: '15b7e382cf7c9bf23a68016f5f2a449ae92dc03b', class: "dynamic-field-container" }, isDynamicAdditionalField && (h("ic-typography", { key: 'd0551674a9d5d6d6d01cf842aff133072ce4d1be', variant: "caption" }, h("p", { key: '81f3345ea6625aa9d8644d5c410c7b24c1365975', class: "dynamic-text" }, isDynamicAdditionalField && checked ? dynamicText : ""))), h("div", { key: '970766071c9e70042e87e243e3415b73c189b51f', class: {
141
+ }, ref: (el) => (this.checkboxEl = el), type: "checkbox", name: name, id: inputId, value: value, disabled: disabled, checked: checked, indeterminate: displayIndeterminate, onClick: handleClick, form: form, "aria-label": hideLabel || this.hasLabelSlot() ? label : undefined }), !hideLabel && h(LabelContent, { key: '636c0781dc308d216c97bf18278833c59f7d4544' })), h("span", { key: '4b0037a6cdf14c5b7eedfb5cfddf76210e83eb1b', id: `${inputId}-additional-field-description`, role: "alert", class: "sr-only" }, isDynamicAdditionalField && checked ? dynamicText : ""), isSlotUsed(el, "additional-field") && (h("div", { key: '64edf574da3dd95e89dfe698bb6a28efb0434d40', class: "dynamic-container", ref: (el) => (this.additionalFieldContainer = el) }, isDynamicAdditionalField && h("div", { key: 'd971ccf130d625f3e1b9ffa66a096f72a9c914ab', class: "branch-corner" }), h("div", { key: '789962b380bfe873ca444bd1e35642449a47d32f', class: "dynamic-field-container" }, isDynamicAdditionalField && (h("ic-typography", { key: '6f4ca17e8ec24e75e0b0d03ca4434a7083771f4d', variant: "caption" }, h("p", { key: '3acc288442ef2176f78a49293ec9082f42014764', class: "dynamic-text" }, isDynamicAdditionalField && checked ? dynamicText : ""))), h("div", { key: '5f94edcfbe4fe9c2d5ad27c32e20c6068579f893', class: {
142
142
  "additional-field-wrapper": !isDynamicAdditionalField,
143
- } }, h("slot", { key: '3ff910a1d7a01312baeb70a965aaaa157ae66e6e', name: "additional-field" })))))));
143
+ } }, h("slot", { key: 'd323907418190cf2a536b49050e75e4e4d47ccab', name: "additional-field" })))))));
144
144
  }
145
145
  static get is() { return "ic-checkbox"; }
146
146
  static get encapsulation() { return "shadow"; }
@@ -3,8 +3,8 @@ import { getInputDescribedByText, hasValidationStatus, onComponentRequiredPropUn
3
3
  const CHECKBOX_SELECTOR = "ic-checkbox";
4
4
  /**
5
5
  * @slot helper-text - Content is set as the helper text for the checkbox group.
6
+ * @slot label - Content is placed as the label text.
6
7
  */
7
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
8
8
  export class CheckboxGroup {
9
9
  constructor() {
10
10
  /**
@@ -118,11 +118,11 @@ export class CheckboxGroup {
118
118
  const describedBy = getInputDescribedByText(this.el, name, helperText !== "", validationStatus !== "");
119
119
  const renderSRText = validationStatus === "error" || required || hideLabel;
120
120
  const showValidation = hasValidationStatus(validationStatus, disabled);
121
- return (h(Host, { key: '4bf0ebdc41ee60a21034e57ffa313abf87290794', class: {
121
+ return (h(Host, { key: '710f409b81bb1cc6efa8c881216646cb653170bc', class: {
122
122
  "ic-checkbox-group-disabled": !!disabled,
123
123
  [`ic-checkbox-group-${size}`]: true,
124
124
  [`ic-theme-${theme}`]: theme !== "inherit",
125
- } }, renderSRText && (h("span", { key: '69b9b6d5d0698d168e6df0c01b47d333b5afddba', id: "screenReaderOnlyText", class: "screen-reader-only-text", "aria-hidden": "true" }, label, " ", validationStatus === "error" ? "invalid data " : null, " ", required ? "required" : null)), h("fieldset", { key: 'ad8d27f986ca3337c4507829c70b1bfb0aa37ed5', id: name, "aria-labelledby": `${renderSRText ? "screenReaderOnlyText" : ""} ${describedBy}`.trim(), disabled: disabled }, !hideLabel && (h("legend", { key: '84c10349be7a6d6acb70a5c9e70d888b86dbe258' }, h("ic-input-label", { key: '00d928c2b7b8ce34262c4fe82d2d87a869bfaf9c', class: { [`${validationStatus}`]: true }, label: label, helperText: helperText, required: required, disabled: disabled, useLabelTag: false }, h("slot", { key: '42e5a3983f00c06616384cd7ba1a0793188aad7d', name: "helper-text", slot: "helper-text" })))), h("div", { key: '726918f0786e8418fcdd616841128a1cb7365bec', class: "checkboxes-container" }, h("slot", { key: 'c4323eeff5908bf1a6a9e8a9fcfe2b5678489d8e' }))), h("ic-input-validation", { key: '0178a6710479690c9ee615f9d7e25d04d1108fdd', class: {
125
+ } }, renderSRText && (h("span", { key: 'f51c5a809b512cd8ed608ca46cb3b7e8da917dd9', id: "screenReaderOnlyText", class: "screen-reader-only-text", "aria-hidden": "true" }, label, " ", validationStatus === "error" ? "invalid data " : null, " ", required ? "required" : null)), h("fieldset", { key: '8107a3e6abf16406b201ae7fe5984cf65dc24e6a', id: name, "aria-labelledby": `${renderSRText ? "screenReaderOnlyText" : ""} ${describedBy}`.trim(), disabled: disabled }, !hideLabel && (h("legend", { key: '1f2d96c8b95e5d23d3d1503e16795141c00d10f2' }, h("ic-input-label", { key: '1d0b955aca0e814dda4536bd88c42602bea1ddd2', class: { [`${validationStatus}`]: true }, label: label, helperText: helperText, required: required, disabled: disabled, useLabelTag: false }, h("slot", { key: 'ebe59cbdf8de2d90ef6989354fbbf3ab7c63a275', name: "label", slot: "label" }), h("slot", { key: '425574841027cbf70673fc48ca1558257e8824ec', name: "helper-text", slot: "helper-text" })))), h("div", { key: 'a3df30cadd95a802d580e309f0f35397547023a8', class: "checkboxes-container" }, h("slot", { key: '46f74eb5f9241075b8f504de918af9a5644642fb' }))), h("ic-input-validation", { key: 'b800e52c3348e67ddbfbc8fc5ada934c1e1ace5b', class: {
126
126
  "show-validation": showValidation,
127
127
  }, for: name, ariaLiveMode: validationAriaLive, status: showValidation ? validationStatus : "", message: showValidation ? validationText : "" })));
128
128
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ic-checkbox-group.js","sourceRoot":"","sources":["../../../src/components/ic-checkbox-group/ic-checkbox-group.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Host,\n h,\n Prop,\n Listen,\n Element,\n Event,\n EventEmitter,\n Watch,\n} from \"@stencil/core\";\nimport {\n getInputDescribedByText,\n hasValidationStatus,\n onComponentRequiredPropUndefined,\n removeDisabledFalse,\n} from \"../../utils/helpers\";\nimport {\n IcAriaLive,\n IcInformationStatusOrEmpty,\n IcSizes,\n IcThemeMode,\n} from \"../../utils/types\";\nimport { IcChangeEventDetail } from \"./ic-checkbox-group.types\";\n\nconst CHECKBOX_SELECTOR = \"ic-checkbox\";\n\n/**\n * @slot helper-text - Content is set as the helper text for the checkbox group.\n */\n@Component({\n tag: \"ic-checkbox-group\",\n styleUrl: \"ic-checkbox-group.css\",\n shadow: true,\n})\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport class CheckboxGroup {\n private checkboxes: HTMLIcCheckboxElement[];\n\n @Element() el: HTMLIcCheckboxGroupElement;\n\n /**\n * If `true`, the checkbox group will be set to the disabled state.\n */\n @Prop() disabled: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n this.checkboxes.forEach((checkbox) => {\n checkbox.disabled = this.disabled;\n });\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * The helper text that will be displayed for additional field guidance.\n */\n @Prop() helperText: string = \"\";\n\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n @Prop() hideLabel: boolean = false;\n\n /**\n * The label for the checkbox group to be displayed.\n */\n @Prop() label!: string;\n\n /**\n * The name for the checkbox group to differentiate from other groups.\n */\n @Prop() name!: string;\n\n @Watch(\"label\")\n @Watch(\"name\")\n labelNameHandler(\n newValue: string,\n oldValue: string,\n propName: \"label\" | \"name\"\n ): void {\n Array.from(this.el.querySelectorAll(CHECKBOX_SELECTOR)).forEach(\n (checkbox) => {\n if (propName === \"label\") checkbox.groupLabel = newValue;\n else if (checkbox.name === oldValue) {\n // If the checkbox name has been set by the parent, then override it\n checkbox.name = newValue;\n }\n }\n );\n }\n\n /**\n * If `true`, the checkbox group will require a value.\n */\n @Prop() required: boolean = false;\n\n /**\n * The size of the checkboxes to be displayed. This does not affect the font size of the label.\n */\n @Prop() size: IcSizes = \"medium\";\n @Watch(\"size\")\n watchSizeHandler(): void {\n this.checkboxes.forEach((checkbox) => {\n checkbox.size = this.size;\n });\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(newValue: IcThemeMode): void {\n Array.from(this.el.querySelectorAll(CHECKBOX_SELECTOR)).forEach(\n (checkbox) => {\n checkbox.theme = newValue;\n }\n );\n }\n\n /**\n * The value of the `aria-live` attribute on the validation message.\n */\n @Prop() validationAriaLive: IcAriaLive = \"polite\";\n\n /**\n * The validation status - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationStatus: IcInformationStatusOrEmpty = \"\";\n\n /**\n * The text to display as the validation message.\n */\n @Prop() validationText: string = \"\";\n\n /**\n * Emitted when a checkbox is checked.\n */\n @Event() icChange: EventEmitter<IcChangeEventDetail>;\n\n @Listen(\"icChange\")\n handleChange(ev: CustomEvent): void {\n //don't pass on the event if it has come from slotted text field\n //otherwise any icChange handler bound to the checkbox group will also run\n if ((ev.target as HTMLElement).tagName === \"IC-TEXT-FIELD\") {\n ev.stopImmediatePropagation();\n }\n }\n\n componentWillLoad(): void {\n this.setCheckboxProps();\n removeDisabledFalse(this.disabled, this.el);\n this.watchThemeHandler(this.theme);\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [\n { prop: this.label, propName: \"label\" },\n { prop: this.name, propName: \"name\" },\n ],\n \"Checkbox Group\"\n );\n }\n\n @Listen(\"icCheck\")\n selectHandler({ target }: CustomEvent): void {\n const checkedOptions = Array.from(\n this.el.querySelectorAll(CHECKBOX_SELECTOR)\n ).filter(({ checked, disabled }) => checked && !disabled);\n this.icChange.emit({\n value: checkedOptions.map(({ value }) => value),\n checkedOptions: checkedOptions.map((opt) => ({\n checkbox: opt,\n textFieldValue: opt.querySelector(\"ic-text-field\")?.value,\n })),\n selectedOption: target as HTMLIcCheckboxElement,\n });\n }\n\n private setCheckboxProps = () => {\n this.checkboxes = Array.from(this.el.querySelectorAll(CHECKBOX_SELECTOR));\n\n this.checkboxes.forEach((checkbox) => {\n if (!checkbox.disabled) {\n checkbox.disabled = this.disabled;\n }\n if (!checkbox.size) {\n checkbox.size = this.size;\n }\n });\n };\n\n render() {\n const {\n disabled,\n helperText,\n hideLabel,\n label,\n name,\n required,\n size,\n theme,\n validationAriaLive,\n validationStatus,\n validationText,\n } = this;\n\n const describedBy = getInputDescribedByText(\n this.el,\n name,\n helperText !== \"\",\n validationStatus !== \"\"\n );\n\n const renderSRText = validationStatus === \"error\" || required || hideLabel;\n\n const showValidation = hasValidationStatus(validationStatus, disabled);\n\n return (\n <Host\n class={{\n \"ic-checkbox-group-disabled\": !!disabled,\n [`ic-checkbox-group-${size}`]: true,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n {renderSRText && (\n <span\n id=\"screenReaderOnlyText\"\n class=\"screen-reader-only-text\"\n aria-hidden=\"true\"\n >\n {label} {validationStatus === \"error\" ? \"invalid data \" : null}{\" \"}\n {required ? \"required\" : null}\n </span>\n )}\n <fieldset\n id={name}\n aria-labelledby={`${\n renderSRText ? \"screenReaderOnlyText\" : \"\"\n } ${describedBy}`.trim()}\n disabled={disabled}\n >\n {!hideLabel && (\n <legend>\n <ic-input-label\n class={{ [`${validationStatus}`]: true }}\n label={label}\n helperText={helperText}\n required={required}\n disabled={disabled}\n useLabelTag={false}\n >\n <slot name=\"helper-text\" slot=\"helper-text\"></slot>\n </ic-input-label>\n </legend>\n )}\n <div class=\"checkboxes-container\">\n <slot></slot>\n </div>\n </fieldset>\n <ic-input-validation\n class={{\n \"show-validation\": showValidation,\n }}\n for={name}\n ariaLiveMode={validationAriaLive}\n status={showValidation ? validationStatus : \"\"}\n message={showValidation ? validationText : \"\"}\n ></ic-input-validation>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ic-checkbox-group.js","sourceRoot":"","sources":["../../../src/components/ic-checkbox-group/ic-checkbox-group.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Host,\n h,\n Prop,\n Listen,\n Element,\n Event,\n EventEmitter,\n Watch,\n} from \"@stencil/core\";\nimport {\n getInputDescribedByText,\n hasValidationStatus,\n onComponentRequiredPropUndefined,\n removeDisabledFalse,\n} from \"../../utils/helpers\";\nimport {\n IcAriaLive,\n IcInformationStatusOrEmpty,\n IcSizes,\n IcThemeMode,\n} from \"../../utils/types\";\nimport { IcChangeEventDetail } from \"./ic-checkbox-group.types\";\n\nconst CHECKBOX_SELECTOR = \"ic-checkbox\";\n\n/**\n * @slot helper-text - Content is set as the helper text for the checkbox group.\n * @slot label - Content is placed as the label text.\n */\n@Component({\n tag: \"ic-checkbox-group\",\n styleUrl: \"ic-checkbox-group.css\",\n shadow: true,\n})\nexport class CheckboxGroup {\n private checkboxes: HTMLIcCheckboxElement[];\n\n @Element() el: HTMLIcCheckboxGroupElement;\n\n /**\n * If `true`, the checkbox group will be set to the disabled state.\n */\n @Prop() disabled: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n this.checkboxes.forEach((checkbox) => {\n checkbox.disabled = this.disabled;\n });\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * The helper text that will be displayed for additional field guidance.\n */\n @Prop() helperText: string = \"\";\n\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n @Prop() hideLabel: boolean = false;\n\n /**\n * The label for the checkbox group to be displayed.\n */\n @Prop() label!: string;\n\n /**\n * The name for the checkbox group to differentiate from other groups.\n */\n @Prop() name!: string;\n\n @Watch(\"label\")\n @Watch(\"name\")\n labelNameHandler(\n newValue: string,\n oldValue: string,\n propName: \"label\" | \"name\"\n ): void {\n Array.from(this.el.querySelectorAll(CHECKBOX_SELECTOR)).forEach(\n (checkbox) => {\n if (propName === \"label\") checkbox.groupLabel = newValue;\n else if (checkbox.name === oldValue) {\n // If the checkbox name has been set by the parent, then override it\n checkbox.name = newValue;\n }\n }\n );\n }\n\n /**\n * If `true`, the checkbox group will require a value.\n */\n @Prop() required: boolean = false;\n\n /**\n * The size of the checkboxes to be displayed. This does not affect the font size of the label.\n */\n @Prop() size: IcSizes = \"medium\";\n @Watch(\"size\")\n watchSizeHandler(): void {\n this.checkboxes.forEach((checkbox) => {\n checkbox.size = this.size;\n });\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(newValue: IcThemeMode): void {\n Array.from(this.el.querySelectorAll(CHECKBOX_SELECTOR)).forEach(\n (checkbox) => {\n checkbox.theme = newValue;\n }\n );\n }\n\n /**\n * The value of the `aria-live` attribute on the validation message.\n */\n @Prop() validationAriaLive: IcAriaLive = \"polite\";\n\n /**\n * The validation status - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationStatus: IcInformationStatusOrEmpty = \"\";\n\n /**\n * The text to display as the validation message.\n */\n @Prop() validationText: string = \"\";\n\n /**\n * Emitted when a checkbox is checked.\n */\n @Event() icChange: EventEmitter<IcChangeEventDetail>;\n\n @Listen(\"icChange\")\n handleChange(ev: CustomEvent): void {\n //don't pass on the event if it has come from slotted text field\n //otherwise any icChange handler bound to the checkbox group will also run\n if ((ev.target as HTMLElement).tagName === \"IC-TEXT-FIELD\") {\n ev.stopImmediatePropagation();\n }\n }\n\n componentWillLoad(): void {\n this.setCheckboxProps();\n removeDisabledFalse(this.disabled, this.el);\n this.watchThemeHandler(this.theme);\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [\n { prop: this.label, propName: \"label\" },\n { prop: this.name, propName: \"name\" },\n ],\n \"Checkbox Group\"\n );\n }\n\n @Listen(\"icCheck\")\n selectHandler({ target }: CustomEvent): void {\n const checkedOptions = Array.from(\n this.el.querySelectorAll(CHECKBOX_SELECTOR)\n ).filter(({ checked, disabled }) => checked && !disabled);\n this.icChange.emit({\n value: checkedOptions.map(({ value }) => value),\n checkedOptions: checkedOptions.map((opt) => ({\n checkbox: opt,\n textFieldValue: opt.querySelector(\"ic-text-field\")?.value,\n })),\n selectedOption: target as HTMLIcCheckboxElement,\n });\n }\n\n private setCheckboxProps = () => {\n this.checkboxes = Array.from(this.el.querySelectorAll(CHECKBOX_SELECTOR));\n\n this.checkboxes.forEach((checkbox) => {\n if (!checkbox.disabled) {\n checkbox.disabled = this.disabled;\n }\n if (!checkbox.size) {\n checkbox.size = this.size;\n }\n });\n };\n\n render() {\n const {\n disabled,\n helperText,\n hideLabel,\n label,\n name,\n required,\n size,\n theme,\n validationAriaLive,\n validationStatus,\n validationText,\n } = this;\n\n const describedBy = getInputDescribedByText(\n this.el,\n name,\n helperText !== \"\",\n validationStatus !== \"\"\n );\n\n const renderSRText = validationStatus === \"error\" || required || hideLabel;\n\n const showValidation = hasValidationStatus(validationStatus, disabled);\n\n return (\n <Host\n class={{\n \"ic-checkbox-group-disabled\": !!disabled,\n [`ic-checkbox-group-${size}`]: true,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n {renderSRText && (\n <span\n id=\"screenReaderOnlyText\"\n class=\"screen-reader-only-text\"\n aria-hidden=\"true\"\n >\n {label} {validationStatus === \"error\" ? \"invalid data \" : null}{\" \"}\n {required ? \"required\" : null}\n </span>\n )}\n <fieldset\n id={name}\n aria-labelledby={`${\n renderSRText ? \"screenReaderOnlyText\" : \"\"\n } ${describedBy}`.trim()}\n disabled={disabled}\n >\n {!hideLabel && (\n <legend>\n <ic-input-label\n class={{ [`${validationStatus}`]: true }}\n label={label}\n helperText={helperText}\n required={required}\n disabled={disabled}\n useLabelTag={false}\n >\n <slot name=\"label\" slot=\"label\"></slot>\n <slot name=\"helper-text\" slot=\"helper-text\"></slot>\n </ic-input-label>\n </legend>\n )}\n <div class=\"checkboxes-container\">\n <slot></slot>\n </div>\n </fieldset>\n <ic-input-validation\n class={{\n \"show-validation\": showValidation,\n }}\n for={name}\n ariaLiveMode={validationAriaLive}\n status={showValidation ? validationStatus : \"\"}\n message={showValidation ? validationText : \"\"}\n ></ic-input-validation>\n </Host>\n );\n }\n}\n"]}
@@ -15,6 +15,7 @@ const defaultArgs = {
15
15
  hideGroupLabel: false,
16
16
  indeterminate: false,
17
17
  label: "Checkbox label",
18
+ name: "checkbox-group",
18
19
  nativeIndeterminateBehaviour: false,
19
20
  required: false,
20
21
  size: "medium",
@@ -368,6 +369,39 @@ export const HelperText = {
368
369
  name: "Helper text",
369
370
  };
370
371
 
372
+ export const SlottedGroupLabel = {
373
+ render: () => html`
374
+ <ic-checkbox-group
375
+ label="Coffee extras"
376
+ name="group1"
377
+ helper-text="Helper text provided by prop"
378
+ >
379
+ <ic-checkbox value="valueName1" label="Sugar"></ic-checkbox>
380
+ <ic-checkbox value="valueName2" label="Milk" checked></ic-checkbox>
381
+ <ic-checkbox value="valueName3" label="salt" Disabled></ic-checkbox>
382
+ </ic-checkbox-group>
383
+ <br />
384
+ <ic-checkbox-group label="More coffee extras" name="group2">
385
+ <ic-typography variant="caption" slot="label">
386
+ <span>
387
+ Slotted label with a
388
+ <ic-link href="#">helpful link to guidance</ic-link> and language tag
389
+ example <span lang="fr">exemple de texte en français</span>
390
+ </span>
391
+ </ic-typography>
392
+ <ic-checkbox value="valueName1" label="Shortbread"></ic-checkbox>
393
+ <ic-checkbox value="valueName2" label="Scone" checked></ic-checkbox>
394
+ <ic-checkbox
395
+ value="valueName3"
396
+ label="Ham Sandwich"
397
+ Disabled
398
+ ></ic-checkbox>
399
+ </ic-checkbox-group>
400
+ `,
401
+
402
+ name: "Slotted group label",
403
+ };
404
+
371
405
  export const Validation = {
372
406
  render: () => html`
373
407
  <ic-checkbox-group
@@ -861,6 +895,7 @@ export const Playground = {
861
895
  size=${args.size}
862
896
  helper-text=${args.helperText}
863
897
  hide-label=${args.hideGroupLabel}
898
+ name=${args.name}
864
899
  required=${args.required}
865
900
  validation-aria-live=${args.validationAriaLive}
866
901
  validation-status=${args.validationStatus === "no status"
@@ -95,12 +95,12 @@ export class Chip {
95
95
  render() {
96
96
  const { label, variant, size, dismissible, visible, disabled, hovered, theme, foregroundColor, dismissLabel, transparentBackground, fullWidth, } = this;
97
97
  const ariaLabel = `${label} chip`;
98
- return (h(Host, { key: '5eddf76a82ea1c0589a664c6553dadbf4dbda7c1', class: {
98
+ return (h(Host, { key: 'a340090512aafa664e16a6537cb7d8dc2fe84b29', class: {
99
99
  "ic-chip-dismissed": !visible,
100
100
  [`ic-theme-${theme}`]: theme !== "inherit",
101
101
  [`ic-chip-${foregroundColor}-text`]: variant === "filled" && !!foregroundColor,
102
102
  "ic-chip-full-width": fullWidth,
103
- } }, visible && (h("div", { key: 'c58c911f4373c48d04fe4f4f4295210bf32f6260', class: {
103
+ } }, visible && (h("div", { key: '174e895e50479492d85f8a2d9871450f37d47997', class: {
104
104
  chip: true,
105
105
  [`${variant}`]: true,
106
106
  [`${size}`]: true,
@@ -109,7 +109,7 @@ export class Chip {
109
109
  hovered,
110
110
  "non-transparent": variant === "outlined" && !transparentBackground,
111
111
  "full-width": fullWidth,
112
- } }, isSlotUsed(this.el, "icon") && (h("div", { key: '7eeadeb6eee49ac890dc1c52e39cd0cea4df7c01', class: "icon" }, h("slot", { key: 'ea4df10a163a8c878a7f700696b4ddcc423a213a', name: "icon" }))), h("ic-typography", { key: '2bbdbd7e1c5360a15616c52649dd7388fcaa417f', variant: "label", "apply-vertical-margins": false, class: { label: true, "in-ag-grid": isElInAGGrid(this.el) } }, h("span", { key: '3085a661aaa96d6b955cc95240a3f5322e5fdf8a' }, label)), dismissible && (h("ic-tooltip", { key: 'e876238e430c974fa1c3513f7dea201d44a36c8e', label: dismissLabel, target: "dismiss-icon", class: { "tooltip-disabled": disabled } }, h("button", { key: '125f60aca78da345de3b1e03751af2b8b3e196d2', id: "dismiss-icon", class: "dismiss-icon", ref: (el) => (this.buttonEl = el), "aria-label": `${dismissLabel} ${ariaLabel}`, disabled: disabled, tabindex: disabled ? -1 : 0, onClick: this.dismissAction, onMouseEnter: this.mouseEnterHandler, onMouseLeave: this.mouseLeaveHandler, innerHTML: dismissIcon }))), isSlotUsed(this.el, "badge") && h("slot", { key: '688e1ad7f6b8bfab9cfa4649d7f515c2d5ae37c1', name: "badge" }))), dismissible && (h("div", { key: '45cb6d6e91a9e0d0c0715044ad40fa6da5cf100b', class: "sr-only", "aria-live": "polite" }, !visible ? `Dismissed ${ariaLabel}` : ""))));
112
+ } }, isSlotUsed(this.el, "icon") && (h("div", { key: '3d12f1e7c932cd91f0835f3fe7c76ec6784bc44f', class: "icon" }, h("slot", { key: '5307ba63af7c7342cf32072ccebf02788265e0f5', name: "icon" }))), h("ic-typography", { key: '71a528ad758c4a09dbe1bfa879f4ca0b4a9177b7', variant: "label", "apply-vertical-margins": false, class: { label: true, "in-ag-grid": isElInAGGrid(this.el) } }, h("span", { key: '85e3af35df8a3f2243bc0b36130a6238b6c6200d' }, label)), dismissible && (h("ic-tooltip", { key: '6d68a771210b186192f7f4486d578a1cb706dda9', label: dismissLabel, target: "dismiss-icon", class: { "tooltip-disabled": disabled } }, h("button", { key: '24917885cac2c78593cb721ce14254c20de85905', id: "dismiss-icon", class: "dismiss-icon", ref: (el) => (this.buttonEl = el), "aria-label": `${dismissLabel} ${ariaLabel}`, disabled: disabled, tabindex: disabled ? -1 : 0, onClick: this.dismissAction, onMouseEnter: this.mouseEnterHandler, onMouseLeave: this.mouseLeaveHandler, innerHTML: dismissIcon }))), isSlotUsed(this.el, "badge") && h("slot", { key: '4a2bf278717384d8d7a1c830788520a385feb638', name: "badge" }))), dismissible && (h("div", { key: '55bd826c4bd73c42d24a7a1aa1cdc52fd3a00d59', class: "sr-only", "aria-live": "polite" }, !visible ? `Dismissed ${ariaLabel}` : ""))));
113
113
  }
114
114
  static get is() { return "ic-chip"; }
115
115
  static get encapsulation() { return "shadow"; }
@@ -40,10 +40,10 @@ export class ClassificationBanner {
40
40
  if (!classification ||
41
41
  (classification && !classificationText[classification]))
42
42
  classification = "default";
43
- return (h(Host, { key: '8ccd98249fea7e78da349f2c97243366305c5dcc', class: { ["ic-classification-banner-inline"]: !!inline } }, h("banner", { key: 'a108ace2bf5f64c5867f993d9d130595b61ccac9', "aria-label": "Protective marking", class: {
43
+ return (h(Host, { key: '4d06c781318ef854931702315e73054f65b85259', class: { ["ic-classification-banner-inline"]: !!inline } }, h("banner", { key: '251f6ced1270c823b1be9e39375139756adcd3e2', "aria-label": "Protective marking", class: {
44
44
  ["classification-banner"]: true,
45
45
  [`${classification}`]: classification,
46
- } }, classification !== "default" ? (h("span", { class: "offscreen" }, "The protective marking of this page is:", " ")) : null, h("ic-typography", { key: '09edc559ec7b205d092210ef73ef95faa43c1a8a', variant: "caption-uppercase" }, classification === "default"
46
+ } }, classification !== "default" ? (h("span", { class: "offscreen" }, "The protective marking of this page is:", " ")) : null, h("ic-typography", { key: '3fd3a609c017ed0b5b24296464bae43dcf8cba67', variant: "caption-uppercase" }, classification === "default"
47
47
  ? classificationText[classification]
48
48
  : `${upTo ? "up to" : ""}
49
49
  ${country}
@@ -19,10 +19,10 @@ export class DataList {
19
19
  Array.from(el.children).forEach((child) => child.setAttribute("size", "small"));
20
20
  }
21
21
  const hasHeading = heading || el.querySelector('[slot="heading"]');
22
- return (h(Host, { key: '17c612682af529e83aa9e68f352e0def68e3ed1f', class: {
22
+ return (h(Host, { key: '57df6c957322ddb4cdda3901c64e919656abf92e', class: {
23
23
  "ic-data-list-small": size === "small",
24
24
  [`ic-theme-${theme}`]: theme !== "inherit",
25
- } }, h("div", { key: '35e939693c3be1a65b3773dc4cc777f934b0fbda', class: "heading", id: "data-list-heading" }, h("slot", { key: '6adee6dde0c29913a75228719df88583586dfb6e', name: "heading" }, h("ic-typography", { key: 'fc50ff9029cf0b6d4a327353dc930e6bd9d938da', variant: "h3" }, heading))), h("div", { key: 'f04cf846e38231a4008687d55cdadd825222bbf9', class: { divider: true, "divider-no-heading": !hasHeading } }), h("ul", { key: 'e23f726e29c9436d889e97494d1999208589f857', "aria-labelledby": "data-list-heading", class: "rows" }, h("slot", { key: 'a5c323131aba38658d7b7406d5ee2bf9e3c415d7' }))));
25
+ } }, h("div", { key: '273e0ce2fcde309669514b332964e129d1ef42a6', class: "heading", id: "data-list-heading" }, h("slot", { key: '1be24c7150c268064207cf58f083ab9bd8cb27c7', name: "heading" }, h("ic-typography", { key: '30858cd0d5c66204a030449c5b8212c1c41d1838', variant: "h3" }, heading))), h("div", { key: '2f13fa15abc8053f312ff21454b6a89d15b4eabd', class: { divider: true, "divider-no-heading": !hasHeading } }), h("ul", { key: '582dd8f21ce4e3a9dd845aa46294ebe2c5163d01', "aria-labelledby": "data-list-heading", class: "rows" }, h("slot", { key: '42b137d71f0c9e3f836f1efdde58f62d90b080a4' }))));
26
26
  }
27
27
  static get is() { return "ic-data-list"; }
28
28
  static get encapsulation() { return "shadow"; }
@@ -68,12 +68,12 @@ export class DataRow {
68
68
  }
69
69
  render() {
70
70
  const { el, listSize, hasEndComponent, label, renderCellContent, size, theme, value, } = this;
71
- return (h(Host, { key: '3cfe27bfa3e8e0a563450e3842c31e50a78fcb28', class: {
71
+ return (h(Host, { key: 'd5c6ff5a373e32e4e310dd0ddb6bbcfea0f2704a', class: {
72
72
  ["ic-data-row-small"]: size === "small",
73
73
  ["breakpoint-medium"]: listSize === "m",
74
74
  ["breakpoint-xs"]: listSize === "xs",
75
75
  [`ic-theme-${theme}`]: theme !== "inherit",
76
- }, role: "listitem" }, h("div", { key: '348b7ebe1cec0baab24213e9cc468a7e2274ae31', class: "data" }, h("div", { key: 'a2d9d409a312f20b259a40a85ce37b8928e8da06', class: "text-cells" }, (isSlotUsed(el, "label") || label) && renderCellContent("label"), (isSlotUsed(el, "value") || value) && renderCellContent("value")), hasEndComponent && (h("div", { key: 'c7f9583403acf4041eebe4b26ff417b453fe07db', class: "end-component" }, h("slot", { key: '837641d249f27635ece7e1eb6505d3e4dbf5492b', name: "end-component" })))), h("div", { key: '9f39724a36e05428a979a589bbed4a09fa2043e0', class: "divider" })));
76
+ }, role: "listitem" }, h("div", { key: 'b2867cd3b8a493ec7e4f4cff48849d94560c1fdc', class: "data" }, h("div", { key: 'd3fd667e4612907b81081ddae99c3228e2dbb954', class: "text-cells" }, (isSlotUsed(el, "label") || label) && renderCellContent("label"), (isSlotUsed(el, "value") || value) && renderCellContent("value")), hasEndComponent && (h("div", { key: 'dbbb33f8a2726f801dc72ca1f11544073ba8bc69', class: "end-component" }, h("slot", { key: 'fd4b247214447bac2a7a5bc9385a8f91cb44436f', name: "end-component" })))), h("div", { key: '8e19fde06b9fa34a3295e37fe726f163593f6674', class: "divider" })));
77
77
  }
78
78
  static get is() { return "ic-data-row"; }
79
79
  static get encapsulation() { return "shadow"; }
@@ -1,6 +1,6 @@
1
1
  import { Host, h, Fragment, } from "@stencil/core";
2
2
  import closeIcon from "../../assets/close-icon.svg";
3
- import { isSlotUsed, checkResizeObserver, onComponentRequiredPropUndefined, getSlotElements, } from "../../utils/helpers";
3
+ import { isSlotUsed, checkResizeObserver, focusElement, handleFocusTrapTabKeyPress, onComponentRequiredPropUndefined, refreshInteractiveElementsOnSlotChange, slottedInteractiveElements, } from "../../utils/helpers";
4
4
  /**
5
5
  * @slot dialog-controls - Content will be place at the bottom of the dialog.
6
6
  * @slot heading - Content will be placed at the top of the dialog.
@@ -13,16 +13,10 @@ export class Dialog {
13
13
  this.DATA_GETS_FOCUS = "data-gets-focus";
14
14
  this.DIALOG_CONTROLS = "dialog-controls";
15
15
  this.dialogHeight = 0;
16
+ this.focusAttemptCount = 0;
16
17
  this.focusedElementIndex = 0;
17
- this.IC_TEXT_FIELD = "IC-TEXT-FIELD";
18
- this.IC_ACCORDION = "IC-ACCORDION";
19
- this.IC_ACCORDION_GROUP = "IC-ACCORDION-GROUP";
20
- this.IC_CHECKBOX = "IC-CHECKBOX";
21
- this.IC_SEARCH_BAR = "IC-SEARCH-BAR";
22
- this.IC_TAB_CONTEXT = "IC-TAB-CONTEXT";
23
18
  this.interactiveElementList = [];
24
19
  this.resizeObserver = null;
25
- this.focusAttemptCount = 0;
26
20
  this.dialogRendered = false;
27
21
  this.fadeIn = false;
28
22
  /**
@@ -113,26 +107,6 @@ export class Dialog {
113
107
  this.dialogHeight = this.dialogEl.clientHeight;
114
108
  }
115
109
  };
116
- this.refreshInteractiveElementsOnSlotChange = () => {
117
- var _a, _b, _c;
118
- const contentWrapper = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("#dialog-content");
119
- if (contentWrapper) {
120
- this.contentArea = contentWrapper.querySelector("slot");
121
- // Detect changes to slotted elements
122
- (_b = this.contentArea) === null || _b === void 0 ? void 0 : _b.addEventListener("slotchange", this.getInteractiveElements);
123
- this.contentAreaMutationObserver = new MutationObserver(() => {
124
- this.getInteractiveElements();
125
- });
126
- // Detect changes to children of slotted elements
127
- (_c = getSlotElements(contentWrapper)) === null || _c === void 0 ? void 0 : _c.forEach((el) => {
128
- var _a;
129
- (_a = this.contentAreaMutationObserver) === null || _a === void 0 ? void 0 : _a.observe(el, {
130
- childList: true,
131
- subtree: true,
132
- });
133
- });
134
- }
135
- };
136
110
  this.removeSlotChangeListener = () => {
137
111
  var _a;
138
112
  if (this.contentArea) {
@@ -140,6 +114,15 @@ export class Dialog {
140
114
  (_a = this.contentAreaMutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
141
115
  }
142
116
  };
117
+ this.setContentAreaMutationObserver = () => {
118
+ var _a;
119
+ const contentWrapper = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("#dialog-content");
120
+ if (contentWrapper) {
121
+ const { contentAreaSlot, contentAreaMutationObserver } = refreshInteractiveElementsOnSlotChange(contentWrapper || null, this.getInteractiveElements);
122
+ this.contentArea = contentAreaSlot;
123
+ this.contentAreaMutationObserver = contentAreaMutationObserver;
124
+ }
125
+ };
143
126
  this.setInitialFocus = () => {
144
127
  this.sourceElement = document.activeElement;
145
128
  if (!this.interactiveElementList.length) {
@@ -156,17 +139,11 @@ export class Dialog {
156
139
  if (this.focusedElementIndex === -1) {
157
140
  this.focusedElementIndex = 0;
158
141
  }
159
- const elToFocus = this.interactiveElementList[this.focusedElementIndex];
160
- if (elToFocus) {
161
- this.focusElement(elToFocus);
162
- }
163
- };
164
- this.getFocusedElementIndex = () => {
165
- var _a;
166
- for (let i = 0; i < this.interactiveElementList.length; i++) {
167
- if (this.interactiveElementList[i] ===
168
- (((_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.activeElement) || document.activeElement)) {
169
- this.focusedElementIndex = i;
142
+ if (this.interactiveElementList[this.focusedElementIndex]) {
143
+ const focusElementResult = focusElement(this.focusAttemptCount, this.focusedElementIndex, this.interactiveElementList);
144
+ if (focusElementResult) {
145
+ this.focusAttemptCount = focusElementResult.newFocusAttemptCount;
146
+ this.focusedElementIndex = focusElementResult.newFocusedElementIndex;
170
147
  }
171
148
  }
172
149
  };
@@ -176,76 +153,17 @@ export class Dialog {
176
153
  this.getInteractiveElements = () => {
177
154
  var _a;
178
155
  this.interactiveElementList = Array.from(((_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll("ic-button")) || []);
179
- const slottedInteractiveElements = Array.from(this.el.querySelectorAll(`a[href], button, input:not(.ic-input), textarea, select, details, [tabindex]:not([tabindex="-1"]),
180
- ic-button, ic-checkbox, ic-select, ic-search-bar, ic-tab-context,
181
- ic-back-to-top, ic-breadcrumb, ic-chip[dismissible="true"], ic-footer-link, ic-link, ic-navigation-button,
182
- ic-navigation-item, ic-switch, ic-text-field, ic-accordion-group, ic-accordion, ic-date-input, ic-date-picker`));
183
- if (slottedInteractiveElements.length > 0) {
184
- if (slottedInteractiveElements[0].slot !== this.DIALOG_CONTROLS) {
185
- slottedInteractiveElements[0].setAttribute(this.DATA_GETS_FOCUS, "");
156
+ const interactiveElements = slottedInteractiveElements(this.el);
157
+ if (interactiveElements.length > 0) {
158
+ if (interactiveElements[0].slot !== this.DIALOG_CONTROLS) {
159
+ interactiveElements[0].setAttribute(this.DATA_GETS_FOCUS, "");
186
160
  }
187
161
  else if (!this.destructive) {
188
- slottedInteractiveElements[slottedInteractiveElements.length - 1].setAttribute(this.DATA_GETS_FOCUS, "");
162
+ interactiveElements[interactiveElements.length - 1].setAttribute(this.DATA_GETS_FOCUS, "");
189
163
  }
190
164
  }
191
- for (let i = 0; i < slottedInteractiveElements.length; i++) {
192
- this.interactiveElementList.splice(1 + i, 0, slottedInteractiveElements[i]);
193
- }
194
- };
195
- this.getNextFocusEl = (focusedElementIndex) => this.interactiveElementList[focusedElementIndex];
196
- this.onTabKeyPress = (shiftKey) => {
197
- var _a;
198
- this.getFocusedElementIndex();
199
- if (((_a = this.interactiveElementList[this.focusedElementIndex]) === null || _a === void 0 ? void 0 : _a.tagName) ===
200
- this.IC_SEARCH_BAR) {
201
- return false;
202
- }
203
- this.setFocusIndexBasedOnShiftKey(shiftKey);
204
- this.loopNextFocusIndexIfLastElement();
205
- this.focusAttemptCount = 0;
206
- this.focusElement(this.getNextFocusEl(this.focusedElementIndex), shiftKey);
207
- return true;
208
- };
209
- this.shouldSkipElement = (element) => {
210
- if (!element) {
211
- return true;
212
- }
213
- const isHidden = getComputedStyle(element).visibility === "hidden" ||
214
- element.offsetHeight === 0 ||
215
- element.hasAttribute("disabled") ||
216
- (element.tagName === this.IC_ACCORDION_GROUP &&
217
- element.hasAttribute("single-expansion"));
218
- const radioEl = element.closest("ic-radio-option");
219
- return (isHidden ||
220
- (element.getAttribute("type") === "radio" &&
221
- !!radioEl &&
222
- !(radioEl.hasAttribute("selected") || element.tabIndex === 0)));
223
- };
224
- this.focusElement = (element, shiftKey = false) => {
225
- if (!element) {
226
- return;
227
- }
228
- if (this.focusAttemptCount++ > this.interactiveElementList.length) {
229
- return;
230
- }
231
- if (this.shouldSkipElement(element)) {
232
- this.setFocusIndexBasedOnShiftKey(shiftKey);
233
- this.loopNextFocusIndexIfLastElement();
234
- this.focusElement(this.getNextFocusEl(this.focusedElementIndex), shiftKey);
235
- }
236
- else {
237
- switch (element.tagName) {
238
- case this.IC_ACCORDION_GROUP:
239
- case this.IC_ACCORDION:
240
- case this.IC_SEARCH_BAR:
241
- case this.IC_TEXT_FIELD:
242
- case this.IC_CHECKBOX:
243
- case this.IC_TAB_CONTEXT:
244
- element.setFocus();
245
- break;
246
- default:
247
- element.focus();
248
- }
165
+ for (let i = 0; i < interactiveElements.length; i++) {
166
+ this.interactiveElementList.splice(1 + i, 0, interactiveElements[i]);
249
167
  }
250
168
  };
251
169
  this.renderDialog = () => {
@@ -286,7 +204,7 @@ export class Dialog {
286
204
  this.removeSlotChangeListener();
287
205
  }
288
206
  componentDidLoad() {
289
- this.refreshInteractiveElementsOnSlotChange();
207
+ this.setContentAreaMutationObserver();
290
208
  if (this.open) {
291
209
  this.dialogOpened();
292
210
  }
@@ -303,11 +221,17 @@ export class Dialog {
303
221
  handleKeyboard(ev) {
304
222
  if (this.dialogRendered) {
305
223
  switch (ev.key) {
306
- case "Tab":
307
- if (this.onTabKeyPress(ev.shiftKey)) {
224
+ case "Tab": {
225
+ const tabKeyPressHandlerResult = handleFocusTrapTabKeyPress(this.el, this.focusAttemptCount, this.focusedElementIndex, this.interactiveElementList, ev.shiftKey);
226
+ this.focusAttemptCount =
227
+ tabKeyPressHandlerResult.newFocusAttemptCount;
228
+ this.focusedElementIndex =
229
+ tabKeyPressHandlerResult.newFocusedElementIndex;
230
+ if (tabKeyPressHandlerResult.preventDefault) {
308
231
  ev.preventDefault();
309
232
  }
310
233
  break;
234
+ }
311
235
  case "Escape":
312
236
  if (!ev.repeat) {
313
237
  this.open = false;
@@ -344,24 +268,9 @@ export class Dialog {
344
268
  async confirmDialog() {
345
269
  this.icDialogConfirmed.emit();
346
270
  }
347
- loopNextFocusIndexIfLastElement() {
348
- if (this.focusedElementIndex > this.interactiveElementList.length - 1)
349
- this.focusedElementIndex = 0;
350
- else if (this.focusedElementIndex < 0) {
351
- this.focusedElementIndex = this.interactiveElementList.length - 1;
352
- }
353
- }
354
- setFocusIndexBasedOnShiftKey(shiftKey) {
355
- if (shiftKey) {
356
- this.focusedElementIndex -= 1;
357
- }
358
- else {
359
- this.focusedElementIndex += 1;
360
- }
361
- }
362
271
  render() {
363
272
  const { dialogRendered, disableHeightConstraint, fadeIn, theme, size } = this;
364
- return (h(Host, { key: 'fca8d5ed62295efef6630d45e8174331c4d99e48', class: {
273
+ return (h(Host, { key: '015eecd542dfaaaa9a8060961fd4dc2740675b9d', class: {
365
274
  "ic-dialog-hidden": !dialogRendered,
366
275
  "ic-dialog-fade-in": fadeIn,
367
276
  "disable-height-constraint": !!disableHeightConstraint,