@ukic/web-components 3.13.0 → 3.14.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 (509) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/{helpers-478d1107.js → helpers-15fae358.js} +5 -1
  3. package/dist/cjs/helpers-15fae358.js.map +1 -0
  4. package/dist/cjs/ic-accordion-group.cjs.entry.js +1 -1
  5. package/dist/cjs/ic-accordion.cjs.entry.js +1 -1
  6. package/dist/cjs/ic-action-chip.cjs.entry.js +1 -1
  7. package/dist/cjs/ic-alert.cjs.entry.js +4 -2
  8. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ic-back-to-top.cjs.entry.js +6 -5
  10. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ic-badge.cjs.entry.js +3 -3
  12. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +3 -3
  13. package/dist/cjs/ic-breadcrumb.cjs.entry.js +5 -4
  14. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ic-button_3.cjs.entry.js +43 -19
  16. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ic-card-vertical.cjs.entry.js +5 -5
  18. package/dist/cjs/ic-checkbox-group.cjs.entry.js +3 -3
  19. package/dist/cjs/ic-checkbox.cjs.entry.js +5 -5
  20. package/dist/cjs/ic-chip.cjs.entry.js +4 -4
  21. package/dist/cjs/ic-data-list.cjs.entry.js +2 -2
  22. package/dist/cjs/ic-data-row.cjs.entry.js +3 -3
  23. package/dist/cjs/ic-dialog.cjs.entry.js +5 -4
  24. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-divider.cjs.entry.js +3 -2
  26. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ic-empty-state.cjs.entry.js +3 -3
  28. package/dist/cjs/ic-footer-link-group.cjs.entry.js +1 -1
  29. package/dist/cjs/ic-footer-link.cjs.entry.js +3 -3
  30. package/dist/cjs/ic-footer.cjs.entry.js +1 -1
  31. package/dist/cjs/ic-hero.cjs.entry.js +8 -7
  32. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  33. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +6 -6
  34. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +9 -9
  35. package/dist/cjs/ic-input-label_2.cjs.entry.js +6 -6
  36. package/dist/cjs/ic-layout-grid-item.cjs.entry.js +2 -2
  37. package/dist/cjs/ic-layout-grid.cjs.entry.js +2 -2
  38. package/dist/cjs/ic-link.cjs.entry.js +2 -2
  39. package/dist/cjs/ic-menu-group.cjs.entry.js +2 -2
  40. package/dist/cjs/ic-menu-item.cjs.entry.js +3 -2
  41. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  42. package/dist/cjs/ic-navigation-button.cjs.entry.js +3 -3
  43. package/dist/cjs/ic-navigation-group.cjs.entry.js +2 -2
  44. package/dist/cjs/ic-navigation-item.cjs.entry.js +3 -3
  45. package/dist/cjs/ic-navigation-menu.cjs.entry.js +5 -5
  46. package/dist/cjs/ic-page-header.cjs.entry.js +7 -7
  47. package/dist/cjs/ic-pagination-item.cjs.entry.js +2 -2
  48. package/dist/cjs/ic-pagination.cjs.entry.js +5 -5
  49. package/dist/cjs/ic-popover-menu.cjs.entry.js +5 -5
  50. package/dist/cjs/ic-radio-group.cjs.entry.js +5 -5
  51. package/dist/cjs/ic-radio-option.cjs.entry.js +5 -5
  52. package/dist/cjs/ic-search-bar.cjs.entry.js +10 -10
  53. package/dist/cjs/ic-section-container.cjs.entry.js +2 -2
  54. package/dist/cjs/ic-select.cjs.entry.js +20 -12
  55. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  56. package/dist/cjs/ic-side-navigation.cjs.entry.js +6 -6
  57. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  58. package/dist/cjs/ic-skeleton.cjs.entry.js +2 -2
  59. package/dist/cjs/ic-skip-link.cjs.entry.js +2 -2
  60. package/dist/cjs/ic-status-tag.cjs.entry.js +3 -3
  61. package/dist/cjs/ic-step.cjs.entry.js +14 -14
  62. package/dist/cjs/ic-stepper.cjs.entry.js +3 -3
  63. package/dist/cjs/ic-switch.cjs.entry.js +5 -5
  64. package/dist/cjs/ic-tab-context.cjs.entry.js +1 -1
  65. package/dist/cjs/ic-tab-group.cjs.entry.js +3 -3
  66. package/dist/cjs/ic-tab-panel.cjs.entry.js +2 -2
  67. package/dist/cjs/ic-tab.cjs.entry.js +3 -3
  68. package/dist/cjs/ic-text-field.cjs.entry.js +12 -7
  69. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ic-theme.cjs.entry.js +2 -2
  71. package/dist/cjs/ic-toast-region.cjs.entry.js +1 -1
  72. package/dist/cjs/ic-toast.cjs.entry.js +8 -5
  73. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  74. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +8 -4
  75. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  76. package/dist/cjs/ic-toggle-button.cjs.entry.js +58 -45
  77. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  78. package/dist/cjs/ic-top-navigation.cjs.entry.js +5 -5
  79. package/dist/cjs/ic-typography.cjs.entry.js +3 -3
  80. package/dist/cjs/loader.cjs.js +1 -1
  81. package/dist/collection/collection-manifest.json +1 -1
  82. package/dist/collection/components/ic-alert/ic-alert.css +6 -6
  83. package/dist/collection/components/ic-alert/ic-alert.js +2 -0
  84. package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
  85. package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +1 -1
  86. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +4 -3
  87. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js.map +1 -1
  88. package/dist/collection/components/ic-badge/ic-badge.js +2 -2
  89. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.css +5 -4
  90. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +3 -2
  91. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js.map +1 -1
  92. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js +2 -2
  93. package/dist/collection/components/ic-button/ic-button.js +36 -11
  94. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  95. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js +4 -4
  96. package/dist/collection/components/ic-checkbox/ic-checkbox.js +4 -4
  97. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +2 -2
  98. package/dist/collection/components/ic-chip/ic-chip.js +3 -3
  99. package/dist/collection/components/ic-data-list/ic-data-list.js +2 -2
  100. package/dist/collection/components/ic-data-row/ic-data-row.js +2 -2
  101. package/dist/collection/components/ic-dialog/ic-dialog.css +1 -1
  102. package/dist/collection/components/ic-dialog/ic-dialog.js +3 -2
  103. package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -1
  104. package/dist/collection/components/ic-divider/ic-divider.css +89 -89
  105. package/dist/collection/components/ic-divider/ic-divider.js +2 -1
  106. package/dist/collection/components/ic-divider/ic-divider.js.map +1 -1
  107. package/dist/collection/components/ic-empty-state/ic-empty-state.js +2 -2
  108. package/dist/collection/components/ic-footer-link/ic-footer-link.js +2 -2
  109. package/dist/collection/components/ic-hero/ic-hero.css +4 -4
  110. package/dist/collection/components/ic-hero/ic-hero.js +6 -5
  111. package/dist/collection/components/ic-hero/ic-hero.js.map +1 -1
  112. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +5 -5
  113. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +3 -3
  114. package/dist/collection/components/ic-input-container/ic-input-container.js +2 -2
  115. package/dist/collection/components/ic-input-label/ic-input-label.js +2 -2
  116. package/dist/collection/components/ic-input-validation/ic-input-validation.js +3 -3
  117. package/dist/collection/components/ic-layout-grid/ic-layout-grid.js +2 -2
  118. package/dist/collection/components/ic-layout-grid-item/ic-layout-grid-item.js +2 -2
  119. package/dist/collection/components/ic-link/ic-link.js +1 -1
  120. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.css +4 -4
  121. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +6 -5
  122. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js.map +1 -1
  123. package/dist/collection/components/ic-menu/ic-menu.js +3 -3
  124. package/dist/collection/components/ic-menu-group/ic-menu-group.js +1 -1
  125. package/dist/collection/components/ic-menu-item/ic-menu-item.css +6 -6
  126. package/dist/collection/components/ic-menu-item/ic-menu-item.js +1 -0
  127. package/dist/collection/components/ic-menu-item/ic-menu-item.js.map +1 -1
  128. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +2 -2
  129. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +1 -1
  130. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +2 -2
  131. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +4 -4
  132. package/dist/collection/components/ic-page-header/ic-page-header.js +6 -6
  133. package/dist/collection/components/ic-pagination/ic-pagination.js +4 -4
  134. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +1 -1
  135. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +4 -4
  136. package/dist/collection/components/ic-radio-group/ic-radio-group.js +4 -4
  137. package/dist/collection/components/ic-radio-option/ic-radio-option.js +4 -4
  138. package/dist/collection/components/ic-search-bar/ic-search-bar.js +9 -9
  139. package/dist/collection/components/ic-section-container/ic-section-container.js +2 -2
  140. package/dist/collection/components/ic-select/ic-select.js +20 -12
  141. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  142. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +2 -0
  143. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +4 -4
  144. package/dist/collection/components/ic-skeleton/ic-skeleton.js +2 -2
  145. package/dist/collection/components/ic-skip-link/ic-skip-link.js +2 -2
  146. package/dist/collection/components/ic-status-tag/ic-status-tag.js +2 -2
  147. package/dist/collection/components/ic-step/ic-step.js +13 -13
  148. package/dist/collection/components/ic-stepper/ic-stepper.js +2 -2
  149. package/dist/collection/components/ic-switch/ic-switch.js +4 -4
  150. package/dist/collection/components/ic-tab/ic-tab.js +2 -2
  151. package/dist/collection/components/ic-tab-context/ic-tab-context.js +1 -1
  152. package/dist/collection/components/ic-tab-group/ic-tab-group.js +2 -2
  153. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +2 -2
  154. package/dist/collection/components/ic-text-field/ic-text-field.js +17 -11
  155. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  156. package/dist/collection/components/ic-text-field/ic-text-field.stories.js +22 -0
  157. package/dist/collection/components/ic-text-field/ic-text-field.types.js.map +1 -1
  158. package/dist/collection/components/ic-theme/ic-theme.js +1 -1
  159. package/dist/collection/components/ic-toast/ic-toast.css +6 -6
  160. package/dist/collection/components/ic-toast/ic-toast.js +6 -3
  161. package/dist/collection/components/ic-toast/ic-toast.js.map +1 -1
  162. package/dist/collection/components/ic-toast-region/ic-toast-region.js +1 -1
  163. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +57 -44
  164. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js.map +1 -1
  165. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +7 -3
  166. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js.map +1 -1
  167. package/dist/collection/components/ic-tooltip/ic-tooltip.js +3 -3
  168. package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
  169. package/dist/collection/components/ic-tooltip/ic-tooltip.stories.js +37 -109
  170. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +4 -4
  171. package/dist/collection/components/ic-typography/ic-typography.js +2 -2
  172. package/dist/collection/icds-table-style.css +66 -0
  173. package/dist/collection/utils/helpers.js +3 -0
  174. package/dist/collection/utils/helpers.js.map +1 -1
  175. package/dist/components/helpers.js +4 -1
  176. package/dist/components/helpers.js.map +1 -1
  177. package/dist/components/ic-action-chip.js +1 -1
  178. package/dist/components/ic-alert.js +4 -2
  179. package/dist/components/ic-alert.js.map +1 -1
  180. package/dist/components/ic-back-to-top.js +6 -5
  181. package/dist/components/ic-back-to-top.js.map +1 -1
  182. package/dist/components/ic-badge.js +3 -3
  183. package/dist/components/ic-breadcrumb-group.js +3 -3
  184. package/dist/components/ic-breadcrumb2.js +5 -4
  185. package/dist/components/ic-breadcrumb2.js.map +1 -1
  186. package/dist/components/ic-button2.js +35 -11
  187. package/dist/components/ic-button2.js.map +1 -1
  188. package/dist/components/ic-card-vertical.js +5 -5
  189. package/dist/components/ic-checkbox-group.js +3 -3
  190. package/dist/components/ic-checkbox.js +5 -5
  191. package/dist/components/ic-chip.js +4 -4
  192. package/dist/components/ic-data-list.js +2 -2
  193. package/dist/components/ic-data-row.js +3 -3
  194. package/dist/components/ic-dialog.js +5 -4
  195. package/dist/components/ic-dialog.js.map +1 -1
  196. package/dist/components/ic-divider2.js +3 -2
  197. package/dist/components/ic-divider2.js.map +1 -1
  198. package/dist/components/ic-empty-state.js +3 -3
  199. package/dist/components/ic-footer-link-group.js +1 -1
  200. package/dist/components/ic-footer-link.js +3 -3
  201. package/dist/components/ic-footer.js +1 -1
  202. package/dist/components/ic-hero.js +8 -7
  203. package/dist/components/ic-hero.js.map +1 -1
  204. package/dist/components/ic-horizontal-scroll2.js +6 -6
  205. package/dist/components/ic-input-component-container2.js +4 -4
  206. package/dist/components/ic-input-container2.js +2 -2
  207. package/dist/components/ic-input-label2.js +3 -3
  208. package/dist/components/ic-input-validation2.js +4 -4
  209. package/dist/components/ic-layout-grid-item.js +2 -2
  210. package/dist/components/ic-layout-grid.js +2 -2
  211. package/dist/components/ic-link2.js +1 -1
  212. package/dist/components/ic-loading-indicator2.js +7 -6
  213. package/dist/components/ic-loading-indicator2.js.map +1 -1
  214. package/dist/components/ic-menu-group.js +2 -2
  215. package/dist/components/ic-menu-item2.js +3 -2
  216. package/dist/components/ic-menu-item2.js.map +1 -1
  217. package/dist/components/ic-menu2.js +4 -4
  218. package/dist/components/ic-navigation-button.js +3 -3
  219. package/dist/components/ic-navigation-group.js +2 -2
  220. package/dist/components/ic-navigation-item.js +3 -3
  221. package/dist/components/ic-navigation-item.js.map +1 -1
  222. package/dist/components/ic-navigation-menu2.js +5 -5
  223. package/dist/components/ic-page-header.js +7 -7
  224. package/dist/components/ic-pagination-item2.js +2 -2
  225. package/dist/components/ic-pagination.js +4 -4
  226. package/dist/components/ic-popover-menu.js +5 -5
  227. package/dist/components/ic-popover-menu.js.map +1 -1
  228. package/dist/components/ic-radio-group.js +5 -5
  229. package/dist/components/ic-radio-group.js.map +1 -1
  230. package/dist/components/ic-radio-option.js +5 -5
  231. package/dist/components/ic-radio-option.js.map +1 -1
  232. package/dist/components/ic-search-bar.js +10 -10
  233. package/dist/components/ic-section-container2.js +2 -2
  234. package/dist/components/ic-select.js +20 -12
  235. package/dist/components/ic-select.js.map +1 -1
  236. package/dist/components/ic-side-navigation.js +6 -6
  237. package/dist/components/ic-side-navigation.js.map +1 -1
  238. package/dist/components/ic-skeleton.js +2 -2
  239. package/dist/components/ic-skip-link.js +2 -2
  240. package/dist/components/ic-status-tag.js +2 -2
  241. package/dist/components/ic-step.js +14 -14
  242. package/dist/components/ic-stepper.js +2 -2
  243. package/dist/components/ic-switch.js +5 -5
  244. package/dist/components/ic-tab-context.js +1 -1
  245. package/dist/components/ic-tab-group.js +2 -2
  246. package/dist/components/ic-tab-panel.js +2 -2
  247. package/dist/components/ic-tab.js +2 -2
  248. package/dist/components/ic-text-field.js +12 -7
  249. package/dist/components/ic-text-field.js.map +1 -1
  250. package/dist/components/ic-theme.js +2 -2
  251. package/dist/components/ic-toast-region.js +1 -1
  252. package/dist/components/ic-toast.js +8 -5
  253. package/dist/components/ic-toast.js.map +1 -1
  254. package/dist/components/ic-toggle-button-group.js +7 -3
  255. package/dist/components/ic-toggle-button-group.js.map +1 -1
  256. package/dist/components/ic-toggle-button.js +58 -45
  257. package/dist/components/ic-toggle-button.js.map +1 -1
  258. package/dist/components/ic-tooltip2.js +3 -3
  259. package/dist/components/ic-tooltip2.js.map +1 -1
  260. package/dist/components/ic-top-navigation.js +5 -5
  261. package/dist/components/ic-typography2.js +2 -2
  262. package/dist/core/core.css +5 -2
  263. package/dist/core/core.esm.js +1 -1
  264. package/dist/core/core.esm.js.map +1 -1
  265. package/dist/core/icds-table-style.css +66 -0
  266. package/dist/core/p-0257d59e.entry.js +2 -0
  267. package/dist/core/p-0257d59e.entry.js.map +1 -0
  268. package/dist/core/{p-621b0770.entry.js → p-042cfc35.entry.js} +2 -2
  269. package/dist/core/{p-514daffe.entry.js → p-053ed367.entry.js} +2 -2
  270. package/dist/core/{p-54803e3b.entry.js → p-06b3ae40.entry.js} +2 -2
  271. package/dist/core/{p-95d3d1a7.entry.js → p-091a7fbf.entry.js} +2 -2
  272. package/dist/core/{p-4747c39f.entry.js → p-09c31ac6.entry.js} +2 -2
  273. package/dist/core/{p-01e018cb.entry.js → p-0b1ea961.entry.js} +2 -2
  274. package/dist/core/{p-511aa329.entry.js → p-0cbd0967.entry.js} +2 -2
  275. package/dist/core/{p-33582352.entry.js → p-109e7fce.entry.js} +2 -2
  276. package/dist/core/{p-99793b64.entry.js → p-199c5ff6.entry.js} +2 -2
  277. package/dist/core/{p-6f50d2e0.entry.js → p-2026f4fa.entry.js} +2 -2
  278. package/dist/core/p-24d46cab.entry.js +2 -0
  279. package/dist/core/p-24d46cab.entry.js.map +1 -0
  280. package/dist/core/{p-228bc12d.entry.js → p-2969b5c9.entry.js} +2 -2
  281. package/dist/core/{p-c975cced.entry.js → p-296a41ce.entry.js} +2 -2
  282. package/dist/core/p-30312243.entry.js +2 -0
  283. package/dist/core/p-30312243.entry.js.map +1 -0
  284. package/dist/core/p-355d0914.entry.js +2 -0
  285. package/dist/core/p-355d0914.entry.js.map +1 -0
  286. package/dist/core/{p-1423bd4a.entry.js → p-3785c740.entry.js} +2 -2
  287. package/dist/core/{p-8684efeb.entry.js → p-3a94849e.entry.js} +2 -2
  288. package/dist/core/{p-a06c1e4e.entry.js → p-3b13d191.entry.js} +2 -2
  289. package/dist/core/{p-13e093d0.entry.js → p-411527a1.entry.js} +2 -2
  290. package/dist/core/{p-de32a223.entry.js → p-44fbe8c2.entry.js} +2 -2
  291. package/dist/core/{p-93479c36.entry.js → p-4637c326.entry.js} +2 -2
  292. package/dist/core/{p-fb734a59.entry.js → p-48eb7299.entry.js} +2 -2
  293. package/dist/core/{p-b0376079.entry.js → p-4a358f09.entry.js} +2 -2
  294. package/dist/core/{p-e6dacbe2.entry.js → p-4bdeb62d.entry.js} +2 -2
  295. package/dist/core/{p-9cf6ccfd.entry.js → p-5cf704e3.entry.js} +2 -2
  296. package/dist/core/p-614953c5.entry.js +2 -0
  297. package/dist/core/p-614953c5.entry.js.map +1 -0
  298. package/dist/core/p-62b9e7bf.entry.js +2 -0
  299. package/dist/core/p-62b9e7bf.entry.js.map +1 -0
  300. package/dist/core/{p-05036675.entry.js → p-6996e94f.entry.js} +2 -2
  301. package/dist/core/p-6996e94f.entry.js.map +1 -0
  302. package/dist/core/{p-cc00cbce.entry.js → p-6e61c48a.entry.js} +2 -2
  303. package/dist/core/{p-a97b8082.entry.js → p-6f60262e.entry.js} +3 -3
  304. package/dist/core/{p-96a6cff2.entry.js → p-6fb29846.entry.js} +2 -2
  305. package/dist/core/p-77a6c3f7.entry.js +2 -0
  306. package/dist/core/p-77a6c3f7.entry.js.map +1 -0
  307. package/dist/core/p-7970cbed.entry.js +2 -0
  308. package/dist/core/p-7970cbed.entry.js.map +1 -0
  309. package/dist/core/{p-37d217b5.entry.js → p-889bb8db.entry.js} +2 -2
  310. package/dist/core/{p-c04e1fab.entry.js → p-8c7d6a85.entry.js} +2 -2
  311. package/dist/core/{p-6dbe70f1.entry.js → p-911b4aa4.entry.js} +2 -2
  312. package/dist/core/{p-57721431.entry.js → p-93e1ba0a.entry.js} +2 -2
  313. package/dist/core/{p-37daa8fe.entry.js → p-9c2e9189.entry.js} +2 -2
  314. package/dist/core/{p-8558b9b7.entry.js → p-a45de09d.entry.js} +2 -2
  315. package/dist/core/{p-b57e59b7.js → p-a5658054.js} +2 -2
  316. package/dist/{cjs/helpers-478d1107.js.map → core/p-a5658054.js.map} +1 -1
  317. package/dist/core/{p-ea06792a.entry.js → p-a7f21494.entry.js} +2 -2
  318. package/dist/core/{p-19f9d292.entry.js → p-a8dc3162.entry.js} +2 -2
  319. package/dist/core/p-ab26beed.entry.js +2 -0
  320. package/dist/core/p-ab26beed.entry.js.map +1 -0
  321. package/dist/core/{p-2126d37b.entry.js → p-ad6632a9.entry.js} +2 -2
  322. package/dist/core/p-ae7dcbd5.entry.js +2 -0
  323. package/dist/core/p-ae7dcbd5.entry.js.map +1 -0
  324. package/dist/core/{p-9a8bcb78.entry.js → p-b00efb15.entry.js} +2 -2
  325. package/dist/core/p-b29e325f.entry.js +2 -0
  326. package/dist/core/{p-b9bdd9a9.entry.js → p-bba25812.entry.js} +2 -2
  327. package/dist/core/{p-27e67d45.entry.js → p-c397b33f.entry.js} +2 -2
  328. package/dist/core/{p-45097448.entry.js → p-c4ffcc64.entry.js} +2 -2
  329. package/dist/core/{p-675bb3e4.entry.js → p-d1cce122.entry.js} +2 -2
  330. package/dist/core/p-d20a61a7.entry.js +2 -0
  331. package/dist/core/p-d20a61a7.entry.js.map +1 -0
  332. package/dist/core/{p-492fcb51.entry.js → p-d8200098.entry.js} +2 -2
  333. package/dist/core/{p-80317cd1.entry.js → p-e0423c7e.entry.js} +2 -2
  334. package/dist/core/p-eb1823b3.entry.js +2 -0
  335. package/dist/core/p-eb1823b3.entry.js.map +1 -0
  336. package/dist/core/{p-9f12b20c.entry.js → p-ef397b6f.entry.js} +2 -2
  337. package/dist/core/{p-71c86e71.entry.js → p-efc97f21.entry.js} +2 -2
  338. package/dist/core/{p-b4a2f6fa.entry.js → p-f098e531.entry.js} +2 -2
  339. package/dist/core/{p-0ec76cff.entry.js → p-f247db14.entry.js} +2 -2
  340. package/dist/core/{p-813ad03c.entry.js → p-f4e2e41f.entry.js} +2 -2
  341. package/dist/core/{p-abd88929.entry.js → p-f7706ff7.entry.js} +2 -2
  342. package/dist/core/p-f7706ff7.entry.js.map +1 -0
  343. package/dist/core/{p-5fcfcfb6.entry.js → p-fb43abd6.entry.js} +2 -2
  344. package/dist/esm/core.js +1 -1
  345. package/dist/esm/{helpers-4ddac6ed.js → helpers-dcedb279.js} +5 -2
  346. package/dist/esm/helpers-dcedb279.js.map +1 -0
  347. package/dist/esm/ic-accordion-group.entry.js +1 -1
  348. package/dist/esm/ic-accordion.entry.js +1 -1
  349. package/dist/esm/ic-action-chip.entry.js +1 -1
  350. package/dist/esm/ic-alert.entry.js +4 -2
  351. package/dist/esm/ic-alert.entry.js.map +1 -1
  352. package/dist/esm/ic-back-to-top.entry.js +6 -5
  353. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  354. package/dist/esm/ic-badge.entry.js +3 -3
  355. package/dist/esm/ic-breadcrumb-group.entry.js +3 -3
  356. package/dist/esm/ic-breadcrumb.entry.js +5 -4
  357. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  358. package/dist/esm/ic-button_3.entry.js +43 -19
  359. package/dist/esm/ic-button_3.entry.js.map +1 -1
  360. package/dist/esm/ic-card-vertical.entry.js +5 -5
  361. package/dist/esm/ic-checkbox-group.entry.js +3 -3
  362. package/dist/esm/ic-checkbox.entry.js +5 -5
  363. package/dist/esm/ic-chip.entry.js +4 -4
  364. package/dist/esm/ic-data-list.entry.js +2 -2
  365. package/dist/esm/ic-data-row.entry.js +3 -3
  366. package/dist/esm/ic-dialog.entry.js +5 -4
  367. package/dist/esm/ic-dialog.entry.js.map +1 -1
  368. package/dist/esm/ic-divider.entry.js +3 -2
  369. package/dist/esm/ic-divider.entry.js.map +1 -1
  370. package/dist/esm/ic-empty-state.entry.js +3 -3
  371. package/dist/esm/ic-footer-link-group.entry.js +1 -1
  372. package/dist/esm/ic-footer-link.entry.js +3 -3
  373. package/dist/esm/ic-footer.entry.js +1 -1
  374. package/dist/esm/ic-hero.entry.js +8 -7
  375. package/dist/esm/ic-hero.entry.js.map +1 -1
  376. package/dist/esm/ic-horizontal-scroll.entry.js +6 -6
  377. package/dist/esm/ic-input-component-container_3.entry.js +9 -9
  378. package/dist/esm/ic-input-label_2.entry.js +6 -6
  379. package/dist/esm/ic-layout-grid-item.entry.js +2 -2
  380. package/dist/esm/ic-layout-grid.entry.js +2 -2
  381. package/dist/esm/ic-link.entry.js +2 -2
  382. package/dist/esm/ic-menu-group.entry.js +2 -2
  383. package/dist/esm/ic-menu-item.entry.js +3 -2
  384. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  385. package/dist/esm/ic-navigation-button.entry.js +3 -3
  386. package/dist/esm/ic-navigation-group.entry.js +2 -2
  387. package/dist/esm/ic-navigation-item.entry.js +3 -3
  388. package/dist/esm/ic-navigation-menu.entry.js +5 -5
  389. package/dist/esm/ic-page-header.entry.js +7 -7
  390. package/dist/esm/ic-pagination-item.entry.js +2 -2
  391. package/dist/esm/ic-pagination.entry.js +5 -5
  392. package/dist/esm/ic-popover-menu.entry.js +5 -5
  393. package/dist/esm/ic-radio-group.entry.js +5 -5
  394. package/dist/esm/ic-radio-option.entry.js +5 -5
  395. package/dist/esm/ic-search-bar.entry.js +10 -10
  396. package/dist/esm/ic-section-container.entry.js +2 -2
  397. package/dist/esm/ic-select.entry.js +20 -12
  398. package/dist/esm/ic-select.entry.js.map +1 -1
  399. package/dist/esm/ic-side-navigation.entry.js +6 -6
  400. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  401. package/dist/esm/ic-skeleton.entry.js +2 -2
  402. package/dist/esm/ic-skip-link.entry.js +2 -2
  403. package/dist/esm/ic-status-tag.entry.js +3 -3
  404. package/dist/esm/ic-step.entry.js +14 -14
  405. package/dist/esm/ic-stepper.entry.js +3 -3
  406. package/dist/esm/ic-switch.entry.js +5 -5
  407. package/dist/esm/ic-tab-context.entry.js +1 -1
  408. package/dist/esm/ic-tab-group.entry.js +3 -3
  409. package/dist/esm/ic-tab-panel.entry.js +2 -2
  410. package/dist/esm/ic-tab.entry.js +3 -3
  411. package/dist/esm/ic-text-field.entry.js +12 -7
  412. package/dist/esm/ic-text-field.entry.js.map +1 -1
  413. package/dist/esm/ic-theme.entry.js +2 -2
  414. package/dist/esm/ic-toast-region.entry.js +1 -1
  415. package/dist/esm/ic-toast.entry.js +8 -5
  416. package/dist/esm/ic-toast.entry.js.map +1 -1
  417. package/dist/esm/ic-toggle-button-group.entry.js +8 -4
  418. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  419. package/dist/esm/ic-toggle-button.entry.js +58 -45
  420. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  421. package/dist/esm/ic-top-navigation.entry.js +5 -5
  422. package/dist/esm/ic-typography.entry.js +3 -3
  423. package/dist/esm/loader.js +1 -1
  424. package/dist/types/components/ic-button/ic-button.d.ts +8 -2
  425. package/dist/types/components/ic-text-field/ic-text-field.d.ts +2 -4
  426. package/dist/types/components/ic-text-field/ic-text-field.types.d.ts +5 -0
  427. package/dist/types/components/ic-toggle-button/ic-toggle-button.d.ts +1 -0
  428. package/dist/types/components.d.ts +4 -4
  429. package/dist/types/utils/helpers.d.ts +1 -0
  430. package/hydrate/index.js +311 -243
  431. package/hydrate/index.mjs +311 -243
  432. package/package.json +2 -2
  433. package/dist/core/p-0123dde7.entry.js +0 -2
  434. package/dist/core/p-0123dde7.entry.js.map +0 -1
  435. package/dist/core/p-02af2b59.entry.js +0 -2
  436. package/dist/core/p-02af2b59.entry.js.map +0 -1
  437. package/dist/core/p-05036675.entry.js.map +0 -1
  438. package/dist/core/p-0c36ce84.entry.js +0 -2
  439. package/dist/core/p-0c36ce84.entry.js.map +0 -1
  440. package/dist/core/p-25bef09d.entry.js +0 -2
  441. package/dist/core/p-2800fc30.entry.js +0 -2
  442. package/dist/core/p-2800fc30.entry.js.map +0 -1
  443. package/dist/core/p-45f743e4.entry.js +0 -2
  444. package/dist/core/p-45f743e4.entry.js.map +0 -1
  445. package/dist/core/p-6058d4c9.entry.js +0 -2
  446. package/dist/core/p-6058d4c9.entry.js.map +0 -1
  447. package/dist/core/p-6e139e6e.entry.js +0 -2
  448. package/dist/core/p-6e139e6e.entry.js.map +0 -1
  449. package/dist/core/p-8b99a806.entry.js +0 -2
  450. package/dist/core/p-8b99a806.entry.js.map +0 -1
  451. package/dist/core/p-a08c360b.entry.js +0 -2
  452. package/dist/core/p-a08c360b.entry.js.map +0 -1
  453. package/dist/core/p-a1857d24.entry.js +0 -2
  454. package/dist/core/p-a1857d24.entry.js.map +0 -1
  455. package/dist/core/p-abd88929.entry.js.map +0 -1
  456. package/dist/core/p-b57e59b7.js.map +0 -1
  457. package/dist/core/p-eb0e7153.entry.js +0 -2
  458. package/dist/core/p-eb0e7153.entry.js.map +0 -1
  459. package/dist/core/p-f609ca37.entry.js +0 -2
  460. package/dist/core/p-f609ca37.entry.js.map +0 -1
  461. package/dist/esm/helpers-4ddac6ed.js.map +0 -1
  462. /package/dist/core/{p-621b0770.entry.js.map → p-042cfc35.entry.js.map} +0 -0
  463. /package/dist/core/{p-514daffe.entry.js.map → p-053ed367.entry.js.map} +0 -0
  464. /package/dist/core/{p-54803e3b.entry.js.map → p-06b3ae40.entry.js.map} +0 -0
  465. /package/dist/core/{p-95d3d1a7.entry.js.map → p-091a7fbf.entry.js.map} +0 -0
  466. /package/dist/core/{p-4747c39f.entry.js.map → p-09c31ac6.entry.js.map} +0 -0
  467. /package/dist/core/{p-01e018cb.entry.js.map → p-0b1ea961.entry.js.map} +0 -0
  468. /package/dist/core/{p-511aa329.entry.js.map → p-0cbd0967.entry.js.map} +0 -0
  469. /package/dist/core/{p-33582352.entry.js.map → p-109e7fce.entry.js.map} +0 -0
  470. /package/dist/core/{p-99793b64.entry.js.map → p-199c5ff6.entry.js.map} +0 -0
  471. /package/dist/core/{p-6f50d2e0.entry.js.map → p-2026f4fa.entry.js.map} +0 -0
  472. /package/dist/core/{p-228bc12d.entry.js.map → p-2969b5c9.entry.js.map} +0 -0
  473. /package/dist/core/{p-c975cced.entry.js.map → p-296a41ce.entry.js.map} +0 -0
  474. /package/dist/core/{p-1423bd4a.entry.js.map → p-3785c740.entry.js.map} +0 -0
  475. /package/dist/core/{p-8684efeb.entry.js.map → p-3a94849e.entry.js.map} +0 -0
  476. /package/dist/core/{p-a06c1e4e.entry.js.map → p-3b13d191.entry.js.map} +0 -0
  477. /package/dist/core/{p-13e093d0.entry.js.map → p-411527a1.entry.js.map} +0 -0
  478. /package/dist/core/{p-de32a223.entry.js.map → p-44fbe8c2.entry.js.map} +0 -0
  479. /package/dist/core/{p-93479c36.entry.js.map → p-4637c326.entry.js.map} +0 -0
  480. /package/dist/core/{p-fb734a59.entry.js.map → p-48eb7299.entry.js.map} +0 -0
  481. /package/dist/core/{p-b0376079.entry.js.map → p-4a358f09.entry.js.map} +0 -0
  482. /package/dist/core/{p-e6dacbe2.entry.js.map → p-4bdeb62d.entry.js.map} +0 -0
  483. /package/dist/core/{p-9cf6ccfd.entry.js.map → p-5cf704e3.entry.js.map} +0 -0
  484. /package/dist/core/{p-cc00cbce.entry.js.map → p-6e61c48a.entry.js.map} +0 -0
  485. /package/dist/core/{p-a97b8082.entry.js.map → p-6f60262e.entry.js.map} +0 -0
  486. /package/dist/core/{p-96a6cff2.entry.js.map → p-6fb29846.entry.js.map} +0 -0
  487. /package/dist/core/{p-37d217b5.entry.js.map → p-889bb8db.entry.js.map} +0 -0
  488. /package/dist/core/{p-c04e1fab.entry.js.map → p-8c7d6a85.entry.js.map} +0 -0
  489. /package/dist/core/{p-6dbe70f1.entry.js.map → p-911b4aa4.entry.js.map} +0 -0
  490. /package/dist/core/{p-57721431.entry.js.map → p-93e1ba0a.entry.js.map} +0 -0
  491. /package/dist/core/{p-37daa8fe.entry.js.map → p-9c2e9189.entry.js.map} +0 -0
  492. /package/dist/core/{p-8558b9b7.entry.js.map → p-a45de09d.entry.js.map} +0 -0
  493. /package/dist/core/{p-ea06792a.entry.js.map → p-a7f21494.entry.js.map} +0 -0
  494. /package/dist/core/{p-19f9d292.entry.js.map → p-a8dc3162.entry.js.map} +0 -0
  495. /package/dist/core/{p-2126d37b.entry.js.map → p-ad6632a9.entry.js.map} +0 -0
  496. /package/dist/core/{p-9a8bcb78.entry.js.map → p-b00efb15.entry.js.map} +0 -0
  497. /package/dist/core/{p-25bef09d.entry.js.map → p-b29e325f.entry.js.map} +0 -0
  498. /package/dist/core/{p-b9bdd9a9.entry.js.map → p-bba25812.entry.js.map} +0 -0
  499. /package/dist/core/{p-27e67d45.entry.js.map → p-c397b33f.entry.js.map} +0 -0
  500. /package/dist/core/{p-45097448.entry.js.map → p-c4ffcc64.entry.js.map} +0 -0
  501. /package/dist/core/{p-675bb3e4.entry.js.map → p-d1cce122.entry.js.map} +0 -0
  502. /package/dist/core/{p-492fcb51.entry.js.map → p-d8200098.entry.js.map} +0 -0
  503. /package/dist/core/{p-80317cd1.entry.js.map → p-e0423c7e.entry.js.map} +0 -0
  504. /package/dist/core/{p-9f12b20c.entry.js.map → p-ef397b6f.entry.js.map} +0 -0
  505. /package/dist/core/{p-71c86e71.entry.js.map → p-efc97f21.entry.js.map} +0 -0
  506. /package/dist/core/{p-b4a2f6fa.entry.js.map → p-f098e531.entry.js.map} +0 -0
  507. /package/dist/core/{p-0ec76cff.entry.js.map → p-f247db14.entry.js.map} +0 -0
  508. /package/dist/core/{p-813ad03c.entry.js.map → p-f4e2e41f.entry.js.map} +0 -0
  509. /package/dist/core/{p-5fcfcfb6.entry.js.map → p-fb43abd6.entry.js.map} +0 -0
@@ -48,22 +48,23 @@ ic-link {
48
48
  --breadcrumb-link-gap: var(--ic-space-xs);
49
49
  }
50
50
 
51
- :host([aria-current="page"]) {
51
+ :host(.ic-breadcrumb-aria-current-page) {
52
52
  cursor: text;
53
53
  }
54
54
 
55
- :host([aria-current="page"]) .current-page-container {
55
+ :host(.ic-breadcrumb-aria-current-page) .current-page-container {
56
56
  display: flex;
57
57
  align-items: center;
58
58
  gap: var(--ic-space-xs);
59
59
  color: var(--ic-breadcrumb-text);
60
60
  }
61
61
 
62
- :host([aria-current="page"].ic-breadcrumb-monochrome) .current-page-container {
62
+ :host(.ic-breadcrumb-aria-current-page).ic-breadcrumb-monochrome
63
+ .current-page-container {
63
64
  color: var(--ic-breadcrumb-text-monochrome);
64
65
  }
65
66
 
66
- :host([aria-current="page"]) slot {
67
+ :host(.ic-breadcrumb-aria-current-page) slot {
67
68
  pointer-events: none;
68
69
  }
69
70
 
@@ -88,11 +88,12 @@ export class Breadcrumb {
88
88
  render() {
89
89
  const { current, href, monochrome, pageTitle, showBackIcon, theme } = this;
90
90
  const describedById = `${pageTitle === null || pageTitle === void 0 ? void 0 : pageTitle.toLowerCase().replace(" ", "-")}-describedby`;
91
- return (h(Host, { key: '2c1131138a8be3af8ee344e0fbff5594fbcc2d77', class: {
91
+ return (h(Host, { key: '35d95efd65cb713a1b9b614aa7162a328f1fd5bd', class: {
92
92
  "ic-breadcrumb-back": showBackIcon,
93
93
  "ic-breadcrumb-monochrome": monochrome,
94
94
  [`ic-theme-${theme}`]: theme !== "inherit",
95
- }, "aria-current": current && "page", role: "listitem" }, h("div", { key: 'ee77a3aeced7063c4dbab6e1641daf11242d63ca', class: "breadcrumb" }, h("span", { key: '1c2dc66e95e0676a381ab25769aa1b735ee5b9c5', innerHTML: chevronIcon, class: "chevron", "aria-hidden": "true" }), showBackIcon && (h("span", { key: '3857c2967dd82b45a2400107e50d6f03bc65cdde', id: describedById, class: "hide" }, `Back to ${pageTitle}`)), !href ? (h("div", { class: "slotted-link-container" }, showBackIcon && this.renderBackIcon(), h("span", { class: "link-wrapper" }, h("slot", null)))) : current ? (h("span", { class: "current-page-container" }, isSlotUsed(this.el, "icon") && h("slot", { name: "icon" }), pageTitle)) : (h("ic-link", { theme: theme, monochrome: monochrome, href: href, class: "breadcrumb-link", "aria-describedby": showBackIcon && describedById }, showBackIcon && this.renderBackIcon(), isSlotUsed(this.el, "icon") && h("slot", { name: "icon" }), pageTitle)))));
95
+ [`ic-breadcrumb-aria-current-page`]: current,
96
+ }, "aria-current": current && "page", role: "listitem" }, h("div", { key: '126bfcb069004244fc0beb4b3f5e3dab652a4057', class: "breadcrumb" }, h("span", { key: '24c4bd1741b5a65b8d348280bd3c680db15edcfc', innerHTML: chevronIcon, class: "chevron", "aria-hidden": "true" }), showBackIcon && (h("span", { key: '501ae0ebd6ce1b77026ab8c447f59abf00db7c73', id: describedById, class: "hide" }, `Back to ${pageTitle}`)), !href ? (h("div", { class: "slotted-link-container" }, showBackIcon && this.renderBackIcon(), h("span", { class: "link-wrapper" }, h("slot", null)))) : current ? (h("span", { class: "current-page-container" }, isSlotUsed(this.el, "icon") && h("slot", { name: "icon" }), pageTitle)) : (h("ic-link", { theme: theme, monochrome: monochrome, href: href, class: "breadcrumb-link", "aria-describedby": showBackIcon && describedById }, showBackIcon && this.renderBackIcon(), isSlotUsed(this.el, "icon") && h("slot", { name: "icon" }), pageTitle)))));
96
97
  }
97
98
  static get is() { return "ic-breadcrumb"; }
98
99
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"ic-breadcrumb.js","sourceRoot":"","sources":["../../../src/components/ic-breadcrumb/ic-breadcrumb.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Host,\n Prop,\n h,\n Element,\n Method,\n Watch,\n} from \"@stencil/core\";\n\nimport chevronIcon from \"../../assets/chevron-icon.svg\";\nimport backIcon from \"../../assets/back-icon.svg\";\nimport { getSlotElements, isSlotUsed } from \"../../utils/helpers\";\nimport { IcThemeMode } from \"../../utils/types\";\n\n/**\n * @slot icon - Content will be rendered to the left of the breadcrumb page title.\n */\n@Component({\n tag: \"ic-breadcrumb\",\n styleUrl: \"ic-breadcrumb.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class Breadcrumb {\n private HREF_ATTR = \"href\";\n private linkSlotContent: HTMLElement | null = null;\n private slottedLinkEl: HTMLElement | null = null;\n private slottedLinkHref: string | null = null;\n\n @Element() el: HTMLIcBreadcrumbElement;\n\n /**\n * If `true`, aria-current will be set on the breadcrumb.\n */\n @Prop() current = false;\n @Watch(\"current\")\n watchCurrentHandler(): void {\n this.updatedSlottedLinkFocus();\n this.el.ariaCurrent = this.current ? \"page\" : null;\n }\n\n /**\n * The URL that the breadcrumb link points to.\n */\n @Prop() href?: string;\n\n /**\n * @internal If `true`, the breadcrumb will display as black in the light theme, and white in the dark theme.\n */\n @Prop() monochrome = false;\n\n /**\n * The title of the breadcrumb.\n */\n @Prop() pageTitle!: string;\n\n /**\n * @internal If `true`, back icon will be displayed.\n */\n @Prop({ reflect: true }) showBackIcon = false;\n\n /**\n * @internal Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme: IcThemeMode = \"inherit\";\n\n // Prevent focus on breadcrumb if current page and contains slotted link\n private updatedSlottedLinkFocus = () => {\n // Sets tabindex on wrong element in unit test snapshots\n // - related to known Jest issue: https://github.com/ionic-team/stencil/issues/2830\n if (this.linkSlotContent) {\n this.linkSlotContent.tabIndex = this.current ? -1 : 0; // Prevent focus\n }\n\n if (this.current) {\n this.slottedLinkEl?.removeAttribute(this.HREF_ATTR); // Prevent screen reader announcing breadcrumb as a link\n } else if (this.slottedLinkHref) {\n this.slottedLinkEl?.setAttribute(this.HREF_ATTR, this.slottedLinkHref);\n }\n };\n\n private getSlottedLinkEl = () => {\n if (!this.linkSlotContent) return null;\n\n return this.linkSlotContent.hasAttribute(this.HREF_ATTR)\n ? this.linkSlotContent\n : this.linkSlotContent.querySelector<HTMLElement>(\"[href]\");\n };\n\n componentDidLoad(): void {\n const slottedLinkWrapper =\n this.el.shadowRoot?.querySelector(\".link-wrapper\");\n\n if (slottedLinkWrapper) {\n const slotEls = getSlotElements(slottedLinkWrapper);\n if (slotEls) {\n this.linkSlotContent = slotEls[0] as HTMLElement;\n this.slottedLinkEl = this.getSlottedLinkEl();\n this.slottedLinkHref = this.slottedLinkEl?.getAttribute(\"href\") || null;\n }\n this.updatedSlottedLinkFocus();\n }\n }\n\n componentWillRender(): void {\n const icLink = this.el.querySelector(\"ic-link\");\n if (icLink) {\n const CURRENT_PAGE = \"current-page\";\n icLink.classList.remove(CURRENT_PAGE);\n\n if (this.current && !icLink.classList.contains(CURRENT_PAGE)) {\n icLink.classList.add(\"breadcrumb-link\", CURRENT_PAGE);\n }\n }\n }\n\n /**\n * Sets focus on the breadcrumb.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.el.shadowRoot?.querySelector(\"ic-link\")?.focus();\n }\n\n private renderBackIcon = () => (\n <div class=\"back-icon\" innerHTML={backIcon}></div>\n );\n\n render() {\n const { current, href, monochrome, pageTitle, showBackIcon, theme } = this;\n const describedById = `${pageTitle\n ?.toLowerCase()\n .replace(\" \", \"-\")}-describedby`;\n\n return (\n <Host\n class={{\n \"ic-breadcrumb-back\": showBackIcon,\n \"ic-breadcrumb-monochrome\": monochrome,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n aria-current={current && \"page\"}\n role=\"listitem\"\n >\n <div class=\"breadcrumb\">\n <span innerHTML={chevronIcon} class=\"chevron\" aria-hidden=\"true\" />\n {showBackIcon && (\n <span\n id={describedById}\n class=\"hide\"\n >{`Back to ${pageTitle}`}</span>\n )}\n {!href ? (\n <div class=\"slotted-link-container\">\n {showBackIcon && this.renderBackIcon()}\n <span class=\"link-wrapper\">\n <slot />\n </span>\n </div>\n ) : current ? (\n <span class=\"current-page-container\">\n {isSlotUsed(this.el, \"icon\") && <slot name=\"icon\"></slot>}\n {pageTitle}\n </span>\n ) : (\n <ic-link\n theme={theme}\n monochrome={monochrome}\n href={href}\n class=\"breadcrumb-link\"\n aria-describedby={showBackIcon && describedById}\n >\n {showBackIcon && this.renderBackIcon()}\n {isSlotUsed(this.el, \"icon\") && <slot name=\"icon\"></slot>}\n {pageTitle}\n </ic-link>\n )}\n </div>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ic-breadcrumb.js","sourceRoot":"","sources":["../../../src/components/ic-breadcrumb/ic-breadcrumb.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Host,\n Prop,\n h,\n Element,\n Method,\n Watch,\n} from \"@stencil/core\";\n\nimport chevronIcon from \"../../assets/chevron-icon.svg\";\nimport backIcon from \"../../assets/back-icon.svg\";\nimport { getSlotElements, isSlotUsed } from \"../../utils/helpers\";\nimport { IcThemeMode } from \"../../utils/types\";\n\n/**\n * @slot icon - Content will be rendered to the left of the breadcrumb page title.\n */\n@Component({\n tag: \"ic-breadcrumb\",\n styleUrl: \"ic-breadcrumb.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class Breadcrumb {\n private HREF_ATTR = \"href\";\n private linkSlotContent: HTMLElement | null = null;\n private slottedLinkEl: HTMLElement | null = null;\n private slottedLinkHref: string | null = null;\n\n @Element() el: HTMLIcBreadcrumbElement;\n\n /**\n * If `true`, aria-current will be set on the breadcrumb.\n */\n @Prop() current = false;\n @Watch(\"current\")\n watchCurrentHandler(): void {\n this.updatedSlottedLinkFocus();\n this.el.ariaCurrent = this.current ? \"page\" : null;\n }\n\n /**\n * The URL that the breadcrumb link points to.\n */\n @Prop() href?: string;\n\n /**\n * @internal If `true`, the breadcrumb will display as black in the light theme, and white in the dark theme.\n */\n @Prop() monochrome = false;\n\n /**\n * The title of the breadcrumb.\n */\n @Prop() pageTitle!: string;\n\n /**\n * @internal If `true`, back icon will be displayed.\n */\n @Prop({ reflect: true }) showBackIcon = false;\n\n /**\n * @internal Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme: IcThemeMode = \"inherit\";\n\n // Prevent focus on breadcrumb if current page and contains slotted link\n private updatedSlottedLinkFocus = () => {\n // Sets tabindex on wrong element in unit test snapshots\n // - related to known Jest issue: https://github.com/ionic-team/stencil/issues/2830\n if (this.linkSlotContent) {\n this.linkSlotContent.tabIndex = this.current ? -1 : 0; // Prevent focus\n }\n\n if (this.current) {\n this.slottedLinkEl?.removeAttribute(this.HREF_ATTR); // Prevent screen reader announcing breadcrumb as a link\n } else if (this.slottedLinkHref) {\n this.slottedLinkEl?.setAttribute(this.HREF_ATTR, this.slottedLinkHref);\n }\n };\n\n private getSlottedLinkEl = () => {\n if (!this.linkSlotContent) return null;\n\n return this.linkSlotContent.hasAttribute(this.HREF_ATTR)\n ? this.linkSlotContent\n : this.linkSlotContent.querySelector<HTMLElement>(\"[href]\");\n };\n\n componentDidLoad(): void {\n const slottedLinkWrapper =\n this.el.shadowRoot?.querySelector(\".link-wrapper\");\n\n if (slottedLinkWrapper) {\n const slotEls = getSlotElements(slottedLinkWrapper);\n if (slotEls) {\n this.linkSlotContent = slotEls[0] as HTMLElement;\n this.slottedLinkEl = this.getSlottedLinkEl();\n this.slottedLinkHref = this.slottedLinkEl?.getAttribute(\"href\") || null;\n }\n this.updatedSlottedLinkFocus();\n }\n }\n\n componentWillRender(): void {\n const icLink = this.el.querySelector(\"ic-link\");\n if (icLink) {\n const CURRENT_PAGE = \"current-page\";\n icLink.classList.remove(CURRENT_PAGE);\n\n if (this.current && !icLink.classList.contains(CURRENT_PAGE)) {\n icLink.classList.add(\"breadcrumb-link\", CURRENT_PAGE);\n }\n }\n }\n\n /**\n * Sets focus on the breadcrumb.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.el.shadowRoot?.querySelector(\"ic-link\")?.focus();\n }\n\n private renderBackIcon = () => (\n <div class=\"back-icon\" innerHTML={backIcon}></div>\n );\n\n render() {\n const { current, href, monochrome, pageTitle, showBackIcon, theme } = this;\n const describedById = `${pageTitle\n ?.toLowerCase()\n .replace(\" \", \"-\")}-describedby`;\n\n return (\n <Host\n class={{\n \"ic-breadcrumb-back\": showBackIcon,\n \"ic-breadcrumb-monochrome\": monochrome,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n [`ic-breadcrumb-aria-current-page`]: current,\n }}\n aria-current={current && \"page\"}\n role=\"listitem\"\n >\n <div class=\"breadcrumb\">\n <span innerHTML={chevronIcon} class=\"chevron\" aria-hidden=\"true\" />\n {showBackIcon && (\n <span\n id={describedById}\n class=\"hide\"\n >{`Back to ${pageTitle}`}</span>\n )}\n {!href ? (\n <div class=\"slotted-link-container\">\n {showBackIcon && this.renderBackIcon()}\n <span class=\"link-wrapper\">\n <slot />\n </span>\n </div>\n ) : current ? (\n <span class=\"current-page-container\">\n {isSlotUsed(this.el, \"icon\") && <slot name=\"icon\"></slot>}\n {pageTitle}\n </span>\n ) : (\n <ic-link\n theme={theme}\n monochrome={monochrome}\n href={href}\n class=\"breadcrumb-link\"\n aria-describedby={showBackIcon && describedById}\n >\n {showBackIcon && this.renderBackIcon()}\n {isSlotUsed(this.el, \"icon\") && <slot name=\"icon\"></slot>}\n {pageTitle}\n </ic-link>\n )}\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -212,11 +212,11 @@ export class BreadcrumbGroup {
212
212
  }
213
213
  render() {
214
214
  const { backBreadcrumbOnly, collapsed, theme } = this;
215
- return (h(Host, { key: 'e9547e6fce74b57f2a3d7904bdca580c59abf881', class: {
215
+ return (h(Host, { key: 'c2828a2c275ac4341d26054b2de81bd93591a783', class: {
216
216
  "ic-breadcrumb-group-back": backBreadcrumbOnly,
217
217
  "ic-breadcrumb-group-collapsed": collapsed,
218
218
  [`ic-theme-${theme}`]: theme !== "inherit",
219
- } }, h("nav", { key: '56fd90771323680169a7e2ff757c534f499bda48', "aria-label": "breadcrumbs" }, h("ol", { key: '2817e0c715c94937436a41222f86a0e5e6b9cc92' }, h("slot", { key: '137e284689752e6256c39ecc19988aafd3e49942' })))));
219
+ } }, h("nav", { key: '44c0b96801da788bbfa96b138348d05214270b60', "aria-label": "breadcrumbs" }, h("ol", { key: '1f0549af4262e1f3181168dce91b7af6c6820dc3' }, h("slot", { key: '8603a718735d00643bedf8b3b3fed554234d710e' })))));
220
220
  }
221
221
  static get is() { return "ic-breadcrumb-group"; }
222
222
  static get encapsulation() { return "shadow"; }
@@ -32,7 +32,6 @@ export class Button {
32
32
  this.mutationObserver = null;
33
33
  this.hostMutationObserver = null;
34
34
  this.ariaLabel = "";
35
- this.describedByContent = "";
36
35
  this.title = "";
37
36
  /**
38
37
  * If `fileUpload` is set to `true`, this is the accepted list of file types.
@@ -133,11 +132,31 @@ export class Button {
133
132
  this.icBlur.emit();
134
133
  };
135
134
  /**
136
- * Triggered when text content of sibling element in light DOM changes
135
+ * Creates/updates clone of aria-describedby element node tree in shadow dom
136
+ * Required due to ids being scoped to the shadow dom
137
+ */
138
+ this.updateAriaDescribedbyClone = () => {
139
+ var _a, _b;
140
+ if (this.describedbyNode) {
141
+ const wrapper = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("#describedby-wrapper");
142
+ if (!wrapper) {
143
+ (_b = this.el.shadowRoot) === null || _b === void 0 ? void 0 : _b.appendChild(Object.assign(document.createElement("div"), {
144
+ id: "describedby-wrapper",
145
+ className: "ic-button-describedby",
146
+ }));
147
+ }
148
+ while (wrapper === null || wrapper === void 0 ? void 0 : wrapper.firstChild)
149
+ wrapper.firstChild.remove();
150
+ wrapper === null || wrapper === void 0 ? void 0 : wrapper.appendChild(this.describedbyNode);
151
+ }
152
+ };
153
+ /**
154
+ * Triggered when light dom aria-describedby element updates
137
155
  */
138
156
  this.mutationCallback = () => {
139
157
  var _a;
140
- this.describedByContent = (_a = this.describedbyEl) === null || _a === void 0 ? void 0 : _a.innerText;
158
+ if (this.describedbyEl)
159
+ this.describedbyNode = (_a = this.describedbyEl) === null || _a === void 0 ? void 0 : _a.cloneNode(true);
141
160
  };
142
161
  /**
143
162
  * Triggered when attributes of host element change
@@ -226,6 +245,9 @@ export class Button {
226
245
  }
227
246
  };
228
247
  }
248
+ watchDescribedbyNodeHandler() {
249
+ this.updateAriaDescribedbyClone();
250
+ }
229
251
  watchDisabledHandler() {
230
252
  removeDisabledFalse(this.disabled, this.el);
231
253
  }
@@ -245,8 +267,7 @@ export class Button {
245
267
  this.setHasTooltip();
246
268
  }
247
269
  componentWillLoad() {
248
- var _a;
249
- const _b = inheritAttributes(this.el, [...IC_INHERITED_ARIA, "title"]), { title, "aria-label": ariaLabel } = _b, restInheritedAttributes = __rest(_b, ["title", "aria-label"]);
270
+ const _a = inheritAttributes(this.el, [...IC_INHERITED_ARIA, "title"]), { title, "aria-label": ariaLabel } = _a, restInheritedAttributes = __rest(_a, ["title", "aria-label"]);
250
271
  this.title = title;
251
272
  this.ariaLabel = ariaLabel;
252
273
  this.inheritedAttributes = restInheritedAttributes;
@@ -258,10 +279,10 @@ export class Button {
258
279
  const describedById = this.inheritedAttributes["aria-describedby"];
259
280
  if (describedById) {
260
281
  this.describedById = describedById;
261
- const el = (_a = this.el.parentElement) === null || _a === void 0 ? void 0 : _a.querySelector(`#${describedById}`);
282
+ const el = document.querySelector(`#${describedById}`);
262
283
  if (el) {
263
- this.describedByContent = el.innerText;
264
284
  this.describedbyEl = el;
285
+ this.describedbyNode = el.cloneNode(true);
265
286
  }
266
287
  }
267
288
  }
@@ -287,6 +308,7 @@ export class Button {
287
308
  if (this.hasRouterSlot())
288
309
  this.arrangeRouterItem();
289
310
  }
311
+ this.updateAriaDescribedbyClone();
290
312
  }
291
313
  componentWillRender() {
292
314
  const iconEl = this.getSlottedIcon("left") || this.getSlottedIcon("right");
@@ -342,7 +364,7 @@ export class Button {
342
364
  }
343
365
  }
344
366
  render() {
345
- const { ariaControlsId, ariaLabel, ariaOwnsId, buttonIdNum, describedByContent, describedById, disabled, download, dropdown, dropdownExpanded, form, formaction, formenctype, formmethod, formnovalidate, formtarget, fullWidth, handleClick, handleKeyDown, hasTooltip, href, hreflang, id, inheritedAttributes, isIconVariant, loading, monochrome, onBlur, onFocus, referrerpolicy, rel, size, target, theme, title, tooltipFixedPositioning, tooltipPlacement, transparentBackground, type, variant, } = this;
367
+ const { ariaControlsId, ariaLabel, ariaOwnsId, buttonIdNum, describedById, disabled, download, dropdown, dropdownExpanded, form, formaction, formenctype, formmethod, formnovalidate, formtarget, fullWidth, handleClick, handleKeyDown, hasTooltip, href, hreflang, id, inheritedAttributes, isIconVariant, loading, monochrome, onBlur, onFocus, referrerpolicy, rel, size, target, theme, title, tooltipFixedPositioning, tooltipPlacement, transparentBackground, type, variant, } = this;
346
368
  const TagType = href ? "a" : "button";
347
369
  const buttonAttrs = TagType === "button"
348
370
  ? {
@@ -376,7 +398,7 @@ export class Button {
376
398
  variant !== "destructive" && (h("span", { class: dropdownExpanded
377
399
  ? "dropdown-expanded"
378
400
  : "arrow-dropdown", innerHTML: arrowDropdown }))))));
379
- return (h(Host, { key: '1f58739b62e290b1b86fa82c9153e04711196367', class: {
401
+ return (h(Host, { key: '4e15c7ddb5f7d220f52848c36fc9b26932daeb8e', class: {
380
402
  "ic-button-disabled": disabled && !loading,
381
403
  "ic-button-full-width": fullWidth,
382
404
  "ic-button-loading": loading,
@@ -392,7 +414,7 @@ export class Button {
392
414
  monochrome,
393
415
  "top-icon": isSlotUsed(this.el, "top-icon"),
394
416
  "with-badge": isSlotUsed(this.el, "badge"),
395
- }, onClick: handleClick, onKeyDown: handleKeyDown, "aria-owns": ariaOwnsId, "aria-controls": ariaControlsId, "aria-expanded": dropdown && `${dropdownExpanded}` }, hasTooltip && (h("ic-tooltip", { key: 'fa067eeedb2f960436c693a0d8978a46eea9cc68', id: describedby, label: title || ariaLabel, target: buttonId, placement: tooltipPlacement, fixedPositioning: tooltipFixedPositioning, silent: isIconVariant() && !!ariaLabel }, h(ButtonContent, { key: 'a3565789687668d376a8c6e6044a0c3b1e864532' }))), isSlotUsed(this.el, "badge") && h("slot", { key: '1bacc47dfc65cce6880600906512a9262b6773cc', name: "badge" }), !hasTooltip && h(ButtonContent, { key: 'd00dc87862ffc939fc5c8341c686dddbc642eb02' }), describedByContent && (h("span", { key: '1d25a9c513d23e6a23e2e1d81ad036d1df47363c', id: describedby, class: "ic-button-describedby" }, describedByContent))));
417
+ }, onClick: handleClick, onKeyDown: handleKeyDown, "aria-owns": ariaOwnsId, "aria-controls": ariaControlsId, "aria-expanded": dropdown && `${dropdownExpanded}` }, hasTooltip && (h("ic-tooltip", { key: 'a6b3305c993a950f41b2cc44812a35239b4ef717', id: describedby, label: title || ariaLabel, target: buttonId, placement: tooltipPlacement, fixedPositioning: tooltipFixedPositioning, silent: isIconVariant() && !!ariaLabel }, h(ButtonContent, { key: '146f8c894991641b88313d8947c5ac4e1d204049' }))), isSlotUsed(this.el, "badge") && h("slot", { key: '4aede0d2f30748690130dfba00612b3adc859c10', name: "badge" }), !hasTooltip && h(ButtonContent, { key: 'bf1fd18f9c47ea1199babace3584855499a2776c' })));
396
418
  }
397
419
  static get is() { return "ic-button"; }
398
420
  static get encapsulation() { return "shadow"; }
@@ -1104,7 +1126,7 @@ export class Button {
1104
1126
  static get states() {
1105
1127
  return {
1106
1128
  "ariaLabel": {},
1107
- "describedByContent": {},
1129
+ "describedbyNode": {},
1108
1130
  "title": {}
1109
1131
  };
1110
1132
  }
@@ -1185,6 +1207,9 @@ export class Button {
1185
1207
  static get elementRef() { return "el"; }
1186
1208
  static get watchers() {
1187
1209
  return [{
1210
+ "propName": "describedbyNode",
1211
+ "methodName": "watchDescribedbyNodeHandler"
1212
+ }, {
1188
1213
  "propName": "disabled",
1189
1214
  "methodName": "watchDisabledHandler"
1190
1215
  }, {
@@ -1 +1 @@
1
- {"version":3,"file":"ic-button.js","sourceRoot":"","sources":["../../../src/components/ic-button/ic-button.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Listen,\n Method,\n Prop,\n State,\n forceUpdate,\n h,\n Watch,\n Fragment,\n} from \"@stencil/core\";\n\nimport {\n getBrandFromContext,\n handleHiddenFormButtonClick,\n inheritAttributes,\n isSlotUsed,\n removeDisabledFalse,\n renderFileHiddenInput,\n} from \"../../utils/helpers\";\nimport { IC_INHERITED_ARIA } from \"../../utils/constants\";\nimport { IcButtonTypes, IcButtonVariants } from \"./ic-button.types\";\nimport {\n IcSizes,\n IcBrand,\n IcBrandForeground,\n IcBrandForegroundEnum,\n IcThemeMode,\n IcButtonTooltipPlacement,\n IcIconPlacementOptions,\n} from \"../../utils/types\";\nimport arrowDropdown from \"../../assets/arrow-dropdown.svg\";\n\nlet buttonIds = 0;\n\n/**\n * @slot left-icon - Content will be placed to the left of the button label.\n * @slot right-icon - Content will be placed to the right of the button label.\n * @slot top-icon - Content will be placed above the button label.\n * @slot badge - Badge component overlaying the top right of the button.\n * @slot router-item - Handle routing by nesting your routes in this slot. Setting loading to true will have no impact on this slot.\n */\n@Component({\n tag: \"ic-button\",\n styleUrl: \"ic-button.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class Button {\n private buttonEl?: HTMLElement;\n private buttonIdNum = buttonIds++;\n private hasTooltip = false;\n private id: string | null;\n private inheritedAttributes: { [k: string]: string } = {};\n private describedbyEl: HTMLElement | null = null;\n private describedById?: string;\n private mutationObserver: MutationObserver | null = null;\n private hostMutationObserver: MutationObserver | null = null;\n private routerSlot: HTMLElement | null;\n\n @Element() el: HTMLIcButtonElement;\n\n @State() ariaLabel = \"\";\n @State() describedByContent? = \"\";\n @State() title = \"\";\n\n /**\n * If `fileUpload` is set to `true`, this is the accepted list of file types.\n */\n @Prop() accept = \"*\";\n\n /**\n * @internal Used to identify any related child component\n */\n @Prop() ariaControlsId?: string | boolean;\n\n /**\n * @internal Used to identify any related child component\n */\n @Prop() ariaOwnsId?: string | boolean;\n\n /**\n * If `true`, the button will be in disabled state.\n */\n @Prop() disabled = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * If `true`, the ic-tooltip which is shown for icon variant will be disabled. Title or aria-label must be set if this prop is not applied.\n */\n @Prop() disableTooltip = false;\n\n /**\n * If `true`, the user can save the linked URL instead of navigating to it.\n */\n @Prop() download: string | boolean = false;\n\n /**\n * If `true`, the button will show a dropdown icon.\n */\n @Prop() dropdown = false;\n\n /**\n * If `true`, the aria-expanded value will be set to true. This is only applied if the dropdown prop is also true.\n */\n @Prop({ mutable: true, reflect: true }) dropdownExpanded = false;\n\n /**\n * If `true`, when the button is clicked the native file explorer will be launched.\n */\n @Prop() fileUpload = false;\n\n /**\n * The name of the control for the file input, which is submitted with the form data.\n */\n @Prop() fileInputName = `ic-button-file-upload-input-${buttonIds++}`;\n\n /**\n * The <form> element to associate the button with.\n */\n @Prop() form?: string;\n\n /**\n * The URL that processes the information submitted by the button. It overrides the action attribute of the button's form owner. Does nothing if there is no form owner.\n */\n @Prop() formaction?: string;\n\n /**\n * The way the submitted form data is encoded.\n */\n @Prop() formenctype?: string;\n\n /**\n * The HTTP method used to submit the form.\n */\n @Prop() formmethod?: string;\n\n /**\n * If `true`, the form will not be validated when submitted.\n */\n @Prop() formnovalidate?: boolean;\n\n /**\n * The place to display the response from submitting the form. It overrides the target attribute of the button's form owner.\n */\n @Prop() formtarget?: string;\n\n /**\n * If `true`, the button will fill the width of the container.\n */\n @Prop() fullWidth = false;\n\n /**\n * The URL that the link points to. This will render the button as an \"a\" tag.\n */\n @Prop() href?: string;\n\n /**\n * The human language of the linked URL.\n */\n @Prop() hreflang?: string;\n\n /**\n * If `true`, the button will be in loading state.\n */\n @Prop() loading = false;\n\n /**\n * If `true`, the button will display as monochromatic in either `light` or `dark` theme.\n */\n @Prop({ mutable: true }) monochrome = false;\n\n /**\n * If `fileUpload` is set to `true`, this boolean determines whether multiple files are accepted.\n */\n @Prop() multiple = false;\n\n /**\n * How much of the referrer to send when following the link.\n */\n @Prop() referrerpolicy?: ReferrerPolicy;\n\n /**\n * The relationship of the linked URL as space-separated link types.\n */\n @Prop() rel?: string;\n\n /**\n * The list of the files that have been selected by a user.\n */\n @Prop() selectedFiles?: FileList;\n\n /**\n * The size of the button to be displayed.\n */\n @Prop() size: IcSizes = \"medium\";\n\n /**\n * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe).\n */\n @Prop() target?: string;\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop({ mutable: true }) theme: IcThemeMode = \"inherit\";\n\n /**\n * Setting to `true` can help in situations where tooltip content is clipped by a parent element.\n */\n @Prop() tooltipFixedPositioning: boolean = false;\n\n /**\n * The position of the tooltip in relation to the button.\n */\n @Prop() tooltipPlacement: IcButtonTooltipPlacement = \"bottom\";\n\n /**\n * If `true`, the secondary & tertiary variants of button will have a transparent background when not hovered, pressed or loading.\n */\n @Prop() transparentBackground = true;\n\n /**\n * The type of the button.\n */\n @Prop() type: IcButtonTypes = \"button\";\n\n /**\n * The variant of the button to be displayed.\n */\n @Prop({ mutable: true }) variant: IcButtonVariants = \"primary\";\n @Watch(\"variant\")\n watchVariantHandler(newVariant: IcButtonVariants): void {\n if (newVariant === \"icon\") this.variant = \"icon-tertiary\";\n }\n\n /**\n * Emitted when button has blur\n */\n @Event() icBlur!: EventEmitter<void>;\n\n /**\n * If `fileUpload` is set to `true`, this will be emitted when a file is selected in the native explorer.\n */\n @Event() icFileSelection!: EventEmitter<FileList>;\n\n /**\n * Emitted when button has focus\n */\n @Event() icFocus!: EventEmitter<void>;\n\n disconnectedCallback(): void {\n this.mutationObserver?.disconnect();\n this.hostMutationObserver?.disconnect();\n }\n\n componentWillUpdate(): void {\n if (this.loading) {\n this.el.style.setProperty(\n \"--min-width\",\n `${this.el.getBoundingClientRect().width}px`\n );\n }\n this.setHasTooltip();\n }\n\n componentWillLoad(): void {\n const {\n title,\n \"aria-label\": ariaLabel,\n ...restInheritedAttributes\n } = inheritAttributes(this.el, [...IC_INHERITED_ARIA, \"title\"]);\n\n this.title = title;\n this.ariaLabel = ariaLabel;\n this.inheritedAttributes = restInheritedAttributes;\n\n removeDisabledFalse(this.disabled, this.el);\n\n this.el.setAttribute(\"exportparts\", \"button\");\n\n this.id = this.el.id || null;\n this.setHasTooltip();\n\n if (!this.hasTooltip) {\n const describedById = this.inheritedAttributes[\"aria-describedby\"];\n if (describedById) {\n this.describedById = describedById;\n const el = this.el.parentElement?.querySelector<HTMLElement>(\n `#${describedById}`\n );\n if (el) {\n this.describedByContent = el.innerText;\n this.describedbyEl = el;\n }\n }\n }\n\n if (this.variant === \"icon\") {\n this.variant = \"icon-tertiary\";\n }\n }\n\n componentDidLoad(): void {\n this.updateTheme();\n\n if (typeof MutationObserver !== \"undefined\") {\n if (this.describedbyEl && this.describedById) {\n this.mutationObserver = new MutationObserver(this.mutationCallback);\n this.mutationObserver.observe(this.describedbyEl, {\n characterData: true,\n childList: true,\n subtree: true,\n });\n }\n\n this.hostMutationObserver = new MutationObserver(\n this.hostMutationCallback\n );\n this.hostMutationObserver.observe(this.el, {\n attributes: true,\n });\n\n if (this.hasRouterSlot()) this.arrangeRouterItem();\n }\n }\n\n componentWillRender(): void {\n const iconEl = this.getSlottedIcon(\"left\") || this.getSlottedIcon(\"right\");\n iconEl?.setAttribute(\"viewBox\", \"0 0 24 24\");\n }\n\n @Listen(\"click\", { capture: true })\n handleHostClick(event: Event): void {\n if (!this.hasRouterSlot()) {\n if (this.fileUpload) {\n renderFileHiddenInput(\n this.icFileSelection,\n this.el,\n !!this.multiple,\n !!this.disabled,\n this.accept,\n this.fileInputName,\n this.selectedFiles\n );\n }\n if (this.disabled || this.loading) {\n event.stopImmediatePropagation();\n }\n if (this.dropdown) {\n this.dropdownExpanded = !this.dropdownExpanded;\n }\n }\n }\n\n @Listen(\"brandChange\", { target: \"document\" })\n brandChangeHandler({ detail }: CustomEvent<IcBrand>): void {\n this.updateTheme(detail.mode);\n }\n\n /**\n * Sets focus on the native `button`.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.buttonEl?.focus();\n }\n\n private async closeButtonTooltip(ev: KeyboardEvent) {\n const tooltip = this.el.shadowRoot?.querySelector(\"ic-tooltip\");\n if (tooltip && (await tooltip.isTooltipVisible())) {\n tooltip.displayTooltip(false);\n ev.preventDefault();\n ev.stopImmediatePropagation();\n }\n }\n\n private getSlottedIcon = (position: IcIconPlacementOptions) =>\n this.el.querySelector(`[slot=\"${position}-icon\"]`);\n\n private hasRouterSlot() {\n this.routerSlot = this.el.querySelector('[slot=\"router-item\"]');\n if (this.routerSlot) {\n this.routerSlot.ariaLabel = this.routerSlot.textContent;\n }\n return !!this.routerSlot;\n }\n\n private handleClick = () => {\n if (\n (this.el.type === \"submit\" || this.el.type === \"reset\") &&\n !this.hasRouterSlot() &&\n (this.form || !!this.el.closest(\"FORM\"))\n ) {\n const form = this.form\n ? document.querySelector<HTMLFormElement>(`form[id=${this.form}]`)\n : this.el.closest<HTMLFormElement>(\"FORM\");\n\n handleHiddenFormButtonClick(form, this.el);\n }\n };\n\n private handleKeyDown = (ev: KeyboardEvent) => {\n if (ev.key === \"Escape\" && this.hasTooltip) {\n this.closeButtonTooltip(ev);\n }\n };\n\n private onFocus = () => {\n this.icFocus.emit();\n };\n\n private onBlur = () => {\n this.icBlur.emit();\n };\n\n private updateTheme(mode: IcBrandForeground | null = null) {\n const foregroundColor = getBrandFromContext(this.el, mode);\n if (foregroundColor !== IcBrandForegroundEnum.Default) {\n this.theme =\n foregroundColor === IcBrandForegroundEnum.Light\n ? IcBrandForegroundEnum.Dark\n : IcBrandForegroundEnum.Light;\n this.monochrome = true;\n }\n }\n\n /**\n * Triggered when text content of sibling element in light DOM changes\n */\n private mutationCallback = () => {\n this.describedByContent = this.describedbyEl?.innerText;\n };\n\n /**\n * Triggered when attributes of host element change\n * @param mutationList the list of changes made to the host element\n */\n private hostMutationCallback = (mutationList: MutationRecord[]) => {\n let forceComponentUpdate = false;\n mutationList.forEach(({ attributeName }) => {\n if (attributeName) {\n const attribute = this.el.getAttribute(attributeName);\n if (attribute) {\n if (attributeName === \"title\") this.title = attribute;\n else if (attributeName === \"aria-label\") this.ariaLabel = attribute;\n\n if (IC_INHERITED_ARIA.includes(attributeName)) {\n this.inheritedAttributes[attributeName] = attribute;\n forceComponentUpdate = true;\n }\n }\n }\n });\n if (forceComponentUpdate) {\n forceUpdate(this);\n }\n };\n\n private setHasTooltip = () => {\n this.hasTooltip =\n !this.disableTooltip && (!!this.title || !!this.isIconVariant());\n };\n\n private isIconVariant = () => this.variant.startsWith(\"icon\");\n\n private arrangeRouterItem = () => {\n const setStyles = (\n element: HTMLElement | SVGElement,\n styles: { [key: string]: string }\n ) => {\n Object.entries(styles).forEach(([key, value]) => {\n element.style.setProperty(key, value);\n });\n };\n\n if (this.routerSlot) {\n const icTypography = document.createElement(\"ic-typography\");\n\n setStyles(icTypography, {\n \"font-family\": \"var(--ic-font-body-family)\",\n \"font-size\": \"0.875rem\",\n \"font-weight\": \"600\",\n });\n setStyles(this.routerSlot, {\n gap: \"0\",\n });\n\n const icon = this.routerSlot.querySelector(\"svg\");\n const iconSlot = icon?.getAttribute(\"slot\");\n const iconWrapper = document.createElement(\"div\");\n\n if (icon) {\n setStyles(icon, {\n fill: \"currentcolor\",\n });\n\n if (iconSlot === \"top-icon\") {\n setStyles(this.routerSlot, {\n display: \"flex\",\n \"flex-direction\": \"column\",\n \"--height\": \"fit-content\",\n });\n } else if (iconSlot) {\n const marginPlacement = iconSlot === \"left-icon\" ? \"right\" : \"left\";\n setStyles(iconWrapper, {\n [`margin-${marginPlacement}`]: \"var(--ic-space-xs)\",\n });\n }\n\n iconWrapper.append(icon);\n }\n\n const badge = this.routerSlot.querySelector(\"ic-badge\");\n const label = this.routerSlot.textContent?.trim();\n\n if (badge) iconWrapper.append(badge);\n if (label) icTypography.textContent = label;\n\n this.routerSlot.textContent = \"\";\n\n if (iconSlot === \"right-icon\") {\n this.routerSlot.append(icTypography);\n this.routerSlot.append(iconWrapper);\n } else {\n this.routerSlot.append(iconWrapper);\n this.routerSlot.append(icTypography);\n }\n }\n };\n\n render() {\n const {\n ariaControlsId,\n ariaLabel,\n ariaOwnsId,\n buttonIdNum,\n describedByContent,\n describedById,\n disabled,\n download,\n dropdown,\n dropdownExpanded,\n form,\n formaction,\n formenctype,\n formmethod,\n formnovalidate,\n formtarget,\n fullWidth,\n handleClick,\n handleKeyDown,\n hasTooltip,\n href,\n hreflang,\n id,\n inheritedAttributes,\n isIconVariant,\n loading,\n monochrome,\n onBlur,\n onFocus,\n referrerpolicy,\n rel,\n size,\n target,\n theme,\n title,\n tooltipFixedPositioning,\n tooltipPlacement,\n transparentBackground,\n type,\n variant,\n } = this;\n\n const TagType = href ? \"a\" : \"button\";\n const buttonAttrs =\n TagType === \"button\"\n ? {\n type,\n disabled,\n form,\n formaction,\n formenctype,\n formmethod,\n formnovalidate,\n formtarget,\n }\n : {\n download: download !== false ? download : null,\n href,\n rel,\n target,\n referrerpolicy,\n hreflang,\n };\n\n const buttonId = hasTooltip\n ? `ic-button-with-tooltip-${id || buttonIdNum}`\n : undefined;\n\n const describedby = !hasTooltip ? describedById : `ic-tooltip-${buttonId}`;\n\n const hasLeftIcon = !!this.getSlottedIcon(\"left\");\n const hasRightIcon = !!this.getSlottedIcon(\"right\");\n\n const ButtonContent = () =>\n this.hasRouterSlot() ? (\n <slot name=\"router-item\"></slot>\n ) : (\n <TagType\n class=\"button\"\n tabindex={0}\n aria-disabled={loading || disabled ? \"true\" : null}\n aria-label={loading ? \"Loading\" : ariaLabel}\n aria-expanded={dropdown && `${dropdownExpanded}`}\n {...buttonAttrs}\n {...inheritedAttributes}\n onFocus={onFocus}\n onBlur={onBlur}\n ref={(el) => (this.buttonEl = el)}\n aria-describedby={describedby}\n part=\"button\"\n >\n {loading ? (\n <div class=\"loading-container\">\n <ic-loading-indicator\n type=\"linear\"\n monochrome={monochrome}\n theme={theme}\n ></ic-loading-indicator>\n </div>\n ) : (\n <Fragment>\n {(hasLeftIcon ||\n (!!this.getSlottedIcon(\"top\") && !hasRightIcon)) && (\n <div class=\"icon-container\">\n <slot name={`${hasLeftIcon ? \"left\" : \"top\"}-icon`} />\n </div>\n )}\n <slot />\n {!dropdown\n ? hasRightIcon && (\n <div class={{ \"icon-container\": true, \"right-icon\": true }}>\n <slot name=\"right-icon\" />\n </div>\n )\n : variant !== \"icon\" &&\n variant !== \"destructive\" && (\n <span\n class={\n dropdownExpanded\n ? \"dropdown-expanded\"\n : \"arrow-dropdown\"\n }\n innerHTML={arrowDropdown}\n />\n )}\n </Fragment>\n )}\n </TagType>\n );\n\n return (\n <Host\n class={{\n \"ic-button-disabled\": disabled && !loading,\n \"ic-button-full-width\": fullWidth,\n \"ic-button-loading\": loading,\n [`ic-button-size-${size}`]: true,\n [`ic-button-variant-${variant}`]: true,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n background:\n (variant === \"secondary\" || variant === \"tertiary\") &&\n !transparentBackground &&\n !disabled,\n \"dropdown-no-icon\":\n dropdown &&\n !isSlotUsed(this.el, \"icon\") &&\n !isSlotUsed(this.el, \"left-icon\"),\n monochrome,\n \"top-icon\": isSlotUsed(this.el, \"top-icon\"),\n \"with-badge\": isSlotUsed(this.el, \"badge\"),\n }}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n aria-owns={ariaOwnsId}\n aria-controls={ariaControlsId}\n aria-expanded={dropdown && `${dropdownExpanded}`}\n >\n {hasTooltip && (\n <ic-tooltip\n id={describedby}\n label={title || ariaLabel}\n target={buttonId}\n placement={tooltipPlacement}\n fixedPositioning={tooltipFixedPositioning}\n silent={isIconVariant() && !!ariaLabel}\n >\n <ButtonContent />\n </ic-tooltip>\n )}\n {isSlotUsed(this.el, \"badge\") && <slot name=\"badge\"></slot>}\n {!hasTooltip && <ButtonContent />}\n {describedByContent && (\n <span id={describedby} class=\"ic-button-describedby\">\n {describedByContent}\n </span>\n )}\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ic-button.js","sourceRoot":"","sources":["../../../src/components/ic-button/ic-button.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Listen,\n Method,\n Prop,\n State,\n forceUpdate,\n h,\n Watch,\n Fragment,\n} from \"@stencil/core\";\n\nimport {\n getBrandFromContext,\n handleHiddenFormButtonClick,\n inheritAttributes,\n isSlotUsed,\n removeDisabledFalse,\n renderFileHiddenInput,\n} from \"../../utils/helpers\";\nimport { IC_INHERITED_ARIA } from \"../../utils/constants\";\nimport { IcButtonTypes, IcButtonVariants } from \"./ic-button.types\";\nimport {\n IcSizes,\n IcBrand,\n IcBrandForeground,\n IcBrandForegroundEnum,\n IcThemeMode,\n IcButtonTooltipPlacement,\n IcIconPlacementOptions,\n} from \"../../utils/types\";\nimport arrowDropdown from \"../../assets/arrow-dropdown.svg\";\n\nlet buttonIds = 0;\n\n/**\n * @slot left-icon - Content will be placed to the left of the button label.\n * @slot right-icon - Content will be placed to the right of the button label.\n * @slot top-icon - Content will be placed above the button label.\n * @slot badge - Badge component overlaying the top right of the button.\n * @slot router-item - Handle routing by nesting your routes in this slot. Setting loading to true will have no impact on this slot.\n */\n@Component({\n tag: \"ic-button\",\n styleUrl: \"ic-button.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class Button {\n private buttonEl?: HTMLElement;\n private buttonIdNum = buttonIds++;\n private hasTooltip = false;\n private id: string | null;\n private inheritedAttributes: { [k: string]: string } = {};\n private describedbyEl: HTMLElement | null = null;\n private describedById?: string;\n private mutationObserver: MutationObserver | null = null;\n private hostMutationObserver: MutationObserver | null = null;\n private routerSlot: HTMLElement | null;\n\n @Element() el: HTMLIcButtonElement;\n\n @State() ariaLabel = \"\";\n @State() describedbyNode: Node | null;\n @Watch(\"describedbyNode\")\n watchDescribedbyNodeHandler(): void {\n this.updateAriaDescribedbyClone();\n }\n @State() title = \"\";\n\n /**\n * If `fileUpload` is set to `true`, this is the accepted list of file types.\n */\n @Prop() accept = \"*\";\n\n /**\n * @internal Used to identify any related child component\n */\n @Prop() ariaControlsId?: string | boolean;\n\n /**\n * @internal Used to identify any related child component\n */\n @Prop() ariaOwnsId?: string | boolean;\n\n /**\n * If `true`, the button will be in disabled state.\n */\n @Prop() disabled = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * If `true`, the ic-tooltip which is shown for icon variant will be disabled. Title or aria-label must be set if this prop is not applied.\n */\n @Prop() disableTooltip = false;\n\n /**\n * If `true`, the user can save the linked URL instead of navigating to it.\n */\n @Prop() download: string | boolean = false;\n\n /**\n * If `true`, the button will show a dropdown icon.\n */\n @Prop() dropdown = false;\n\n /**\n * If `true`, the aria-expanded value will be set to true. This is only applied if the dropdown prop is also true.\n */\n @Prop({ mutable: true, reflect: true }) dropdownExpanded = false;\n\n /**\n * If `true`, when the button is clicked the native file explorer will be launched.\n */\n @Prop() fileUpload = false;\n\n /**\n * The name of the control for the file input, which is submitted with the form data.\n */\n @Prop() fileInputName = `ic-button-file-upload-input-${buttonIds++}`;\n\n /**\n * The <form> element to associate the button with.\n */\n @Prop() form?: string;\n\n /**\n * The URL that processes the information submitted by the button. It overrides the action attribute of the button's form owner. Does nothing if there is no form owner.\n */\n @Prop() formaction?: string;\n\n /**\n * The way the submitted form data is encoded.\n */\n @Prop() formenctype?: string;\n\n /**\n * The HTTP method used to submit the form.\n */\n @Prop() formmethod?: string;\n\n /**\n * If `true`, the form will not be validated when submitted.\n */\n @Prop() formnovalidate?: boolean;\n\n /**\n * The place to display the response from submitting the form. It overrides the target attribute of the button's form owner.\n */\n @Prop() formtarget?: string;\n\n /**\n * If `true`, the button will fill the width of the container.\n */\n @Prop() fullWidth = false;\n\n /**\n * The URL that the link points to. This will render the button as an \"a\" tag.\n */\n @Prop() href?: string;\n\n /**\n * The human language of the linked URL.\n */\n @Prop() hreflang?: string;\n\n /**\n * If `true`, the button will be in loading state.\n */\n @Prop() loading = false;\n\n /**\n * If `true`, the button will display as monochromatic in either `light` or `dark` theme.\n */\n @Prop({ mutable: true }) monochrome = false;\n\n /**\n * If `fileUpload` is set to `true`, this boolean determines whether multiple files are accepted.\n */\n @Prop() multiple = false;\n\n /**\n * How much of the referrer to send when following the link.\n */\n @Prop() referrerpolicy?: ReferrerPolicy;\n\n /**\n * The relationship of the linked URL as space-separated link types.\n */\n @Prop() rel?: string;\n\n /**\n * The list of the files that have been selected by a user.\n */\n @Prop() selectedFiles?: FileList;\n\n /**\n * The size of the button to be displayed.\n */\n @Prop() size: IcSizes = \"medium\";\n\n /**\n * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe).\n */\n @Prop() target?: string;\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop({ mutable: true }) theme: IcThemeMode = \"inherit\";\n\n /**\n * Setting to `true` can help in situations where tooltip content is clipped by a parent element.\n */\n @Prop() tooltipFixedPositioning: boolean = false;\n\n /**\n * The position of the tooltip in relation to the button.\n */\n @Prop() tooltipPlacement: IcButtonTooltipPlacement = \"bottom\";\n\n /**\n * If `true`, the secondary & tertiary variants of button will have a transparent background when not hovered, pressed or loading.\n */\n @Prop() transparentBackground = true;\n\n /**\n * The type of the button.\n */\n @Prop() type: IcButtonTypes = \"button\";\n\n /**\n * The variant of the button to be displayed.\n */\n @Prop({ mutable: true }) variant: IcButtonVariants = \"primary\";\n @Watch(\"variant\")\n watchVariantHandler(newVariant: IcButtonVariants): void {\n if (newVariant === \"icon\") this.variant = \"icon-tertiary\";\n }\n\n /**\n * Emitted when button has blur\n */\n @Event() icBlur!: EventEmitter<void>;\n\n /**\n * If `fileUpload` is set to `true`, this will be emitted when a file is selected in the native explorer.\n */\n @Event() icFileSelection!: EventEmitter<FileList>;\n\n /**\n * Emitted when button has focus\n */\n @Event() icFocus!: EventEmitter<void>;\n\n disconnectedCallback(): void {\n this.mutationObserver?.disconnect();\n this.hostMutationObserver?.disconnect();\n }\n\n componentWillUpdate(): void {\n if (this.loading) {\n this.el.style.setProperty(\n \"--min-width\",\n `${this.el.getBoundingClientRect().width}px`\n );\n }\n this.setHasTooltip();\n }\n\n componentWillLoad(): void {\n const {\n title,\n \"aria-label\": ariaLabel,\n ...restInheritedAttributes\n } = inheritAttributes(this.el, [...IC_INHERITED_ARIA, \"title\"]);\n\n this.title = title;\n this.ariaLabel = ariaLabel;\n this.inheritedAttributes = restInheritedAttributes;\n\n removeDisabledFalse(this.disabled, this.el);\n\n this.el.setAttribute(\"exportparts\", \"button\");\n\n this.id = this.el.id || null;\n this.setHasTooltip();\n\n if (!this.hasTooltip) {\n const describedById = this.inheritedAttributes[\"aria-describedby\"];\n if (describedById) {\n this.describedById = describedById;\n const el = document.querySelector<HTMLElement>(`#${describedById}`);\n if (el) {\n this.describedbyEl = el;\n this.describedbyNode = el.cloneNode(true);\n }\n }\n }\n\n if (this.variant === \"icon\") {\n this.variant = \"icon-tertiary\";\n }\n }\n\n componentDidLoad(): void {\n this.updateTheme();\n\n if (typeof MutationObserver !== \"undefined\") {\n if (this.describedbyEl && this.describedById) {\n this.mutationObserver = new MutationObserver(this.mutationCallback);\n this.mutationObserver.observe(this.describedbyEl, {\n characterData: true,\n childList: true,\n subtree: true,\n });\n }\n\n this.hostMutationObserver = new MutationObserver(\n this.hostMutationCallback\n );\n this.hostMutationObserver.observe(this.el, {\n attributes: true,\n });\n\n if (this.hasRouterSlot()) this.arrangeRouterItem();\n }\n\n this.updateAriaDescribedbyClone();\n }\n\n componentWillRender(): void {\n const iconEl = this.getSlottedIcon(\"left\") || this.getSlottedIcon(\"right\");\n iconEl?.setAttribute(\"viewBox\", \"0 0 24 24\");\n }\n\n @Listen(\"click\", { capture: true })\n handleHostClick(event: Event): void {\n if (!this.hasRouterSlot()) {\n if (this.fileUpload) {\n renderFileHiddenInput(\n this.icFileSelection,\n this.el,\n !!this.multiple,\n !!this.disabled,\n this.accept,\n this.fileInputName,\n this.selectedFiles\n );\n }\n if (this.disabled || this.loading) {\n event.stopImmediatePropagation();\n }\n if (this.dropdown) {\n this.dropdownExpanded = !this.dropdownExpanded;\n }\n }\n }\n\n @Listen(\"brandChange\", { target: \"document\" })\n brandChangeHandler({ detail }: CustomEvent<IcBrand>): void {\n this.updateTheme(detail.mode);\n }\n\n /**\n * Sets focus on the native `button`.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.buttonEl?.focus();\n }\n\n private async closeButtonTooltip(ev: KeyboardEvent) {\n const tooltip = this.el.shadowRoot?.querySelector(\"ic-tooltip\");\n if (tooltip && (await tooltip.isTooltipVisible())) {\n tooltip.displayTooltip(false);\n ev.preventDefault();\n ev.stopImmediatePropagation();\n }\n }\n\n private getSlottedIcon = (position: IcIconPlacementOptions) =>\n this.el.querySelector(`[slot=\"${position}-icon\"]`);\n\n private hasRouterSlot() {\n this.routerSlot = this.el.querySelector('[slot=\"router-item\"]');\n if (this.routerSlot) {\n this.routerSlot.ariaLabel = this.routerSlot.textContent;\n }\n return !!this.routerSlot;\n }\n\n private handleClick = () => {\n if (\n (this.el.type === \"submit\" || this.el.type === \"reset\") &&\n !this.hasRouterSlot() &&\n (this.form || !!this.el.closest(\"FORM\"))\n ) {\n const form = this.form\n ? document.querySelector<HTMLFormElement>(`form[id=${this.form}]`)\n : this.el.closest<HTMLFormElement>(\"FORM\");\n\n handleHiddenFormButtonClick(form, this.el);\n }\n };\n\n private handleKeyDown = (ev: KeyboardEvent) => {\n if (ev.key === \"Escape\" && this.hasTooltip) {\n this.closeButtonTooltip(ev);\n }\n };\n\n private onFocus = () => {\n this.icFocus.emit();\n };\n\n private onBlur = () => {\n this.icBlur.emit();\n };\n\n private updateTheme(mode: IcBrandForeground | null = null) {\n const foregroundColor = getBrandFromContext(this.el, mode);\n if (foregroundColor !== IcBrandForegroundEnum.Default) {\n this.theme =\n foregroundColor === IcBrandForegroundEnum.Light\n ? IcBrandForegroundEnum.Dark\n : IcBrandForegroundEnum.Light;\n this.monochrome = true;\n }\n }\n\n /**\n * Creates/updates clone of aria-describedby element node tree in shadow dom\n * Required due to ids being scoped to the shadow dom\n */\n private updateAriaDescribedbyClone = () => {\n if (this.describedbyNode) {\n const wrapper = this.el.shadowRoot?.querySelector(\"#describedby-wrapper\");\n if (!wrapper) {\n this.el.shadowRoot?.appendChild(\n Object.assign(document.createElement(\"div\"), {\n id: \"describedby-wrapper\",\n className: \"ic-button-describedby\",\n })\n );\n }\n\n while (wrapper?.firstChild) wrapper.firstChild.remove();\n wrapper?.appendChild(this.describedbyNode);\n }\n };\n\n /**\n * Triggered when light dom aria-describedby element updates\n */\n private mutationCallback = () => {\n if (this.describedbyEl)\n this.describedbyNode = this.describedbyEl?.cloneNode(true);\n };\n\n /**\n * Triggered when attributes of host element change\n * @param mutationList the list of changes made to the host element\n */\n private hostMutationCallback = (mutationList: MutationRecord[]) => {\n let forceComponentUpdate = false;\n mutationList.forEach(({ attributeName }) => {\n if (attributeName) {\n const attribute = this.el.getAttribute(attributeName);\n if (attribute) {\n if (attributeName === \"title\") this.title = attribute;\n else if (attributeName === \"aria-label\") this.ariaLabel = attribute;\n\n if (IC_INHERITED_ARIA.includes(attributeName)) {\n this.inheritedAttributes[attributeName] = attribute;\n forceComponentUpdate = true;\n }\n }\n }\n });\n if (forceComponentUpdate) {\n forceUpdate(this);\n }\n };\n\n private setHasTooltip = () => {\n this.hasTooltip =\n !this.disableTooltip && (!!this.title || !!this.isIconVariant());\n };\n\n private isIconVariant = () => this.variant.startsWith(\"icon\");\n\n private arrangeRouterItem = () => {\n const setStyles = (\n element: HTMLElement | SVGElement,\n styles: { [key: string]: string }\n ) => {\n Object.entries(styles).forEach(([key, value]) => {\n element.style.setProperty(key, value);\n });\n };\n\n if (this.routerSlot) {\n const icTypography = document.createElement(\"ic-typography\");\n\n setStyles(icTypography, {\n \"font-family\": \"var(--ic-font-body-family)\",\n \"font-size\": \"0.875rem\",\n \"font-weight\": \"600\",\n });\n setStyles(this.routerSlot, {\n gap: \"0\",\n });\n\n const icon = this.routerSlot.querySelector(\"svg\");\n const iconSlot = icon?.getAttribute(\"slot\");\n const iconWrapper = document.createElement(\"div\");\n\n if (icon) {\n setStyles(icon, {\n fill: \"currentcolor\",\n });\n\n if (iconSlot === \"top-icon\") {\n setStyles(this.routerSlot, {\n display: \"flex\",\n \"flex-direction\": \"column\",\n \"--height\": \"fit-content\",\n });\n } else if (iconSlot) {\n const marginPlacement = iconSlot === \"left-icon\" ? \"right\" : \"left\";\n setStyles(iconWrapper, {\n [`margin-${marginPlacement}`]: \"var(--ic-space-xs)\",\n });\n }\n\n iconWrapper.append(icon);\n }\n\n const badge = this.routerSlot.querySelector(\"ic-badge\");\n const label = this.routerSlot.textContent?.trim();\n\n if (badge) iconWrapper.append(badge);\n if (label) icTypography.textContent = label;\n\n this.routerSlot.textContent = \"\";\n\n if (iconSlot === \"right-icon\") {\n this.routerSlot.append(icTypography);\n this.routerSlot.append(iconWrapper);\n } else {\n this.routerSlot.append(iconWrapper);\n this.routerSlot.append(icTypography);\n }\n }\n };\n\n render() {\n const {\n ariaControlsId,\n ariaLabel,\n ariaOwnsId,\n buttonIdNum,\n describedById,\n disabled,\n download,\n dropdown,\n dropdownExpanded,\n form,\n formaction,\n formenctype,\n formmethod,\n formnovalidate,\n formtarget,\n fullWidth,\n handleClick,\n handleKeyDown,\n hasTooltip,\n href,\n hreflang,\n id,\n inheritedAttributes,\n isIconVariant,\n loading,\n monochrome,\n onBlur,\n onFocus,\n referrerpolicy,\n rel,\n size,\n target,\n theme,\n title,\n tooltipFixedPositioning,\n tooltipPlacement,\n transparentBackground,\n type,\n variant,\n } = this;\n\n const TagType = href ? \"a\" : \"button\";\n const buttonAttrs =\n TagType === \"button\"\n ? {\n type,\n disabled,\n form,\n formaction,\n formenctype,\n formmethod,\n formnovalidate,\n formtarget,\n }\n : {\n download: download !== false ? download : null,\n href,\n rel,\n target,\n referrerpolicy,\n hreflang,\n };\n\n const buttonId = hasTooltip\n ? `ic-button-with-tooltip-${id || buttonIdNum}`\n : undefined;\n\n const describedby = !hasTooltip ? describedById : `ic-tooltip-${buttonId}`;\n\n const hasLeftIcon = !!this.getSlottedIcon(\"left\");\n const hasRightIcon = !!this.getSlottedIcon(\"right\");\n\n const ButtonContent = () =>\n this.hasRouterSlot() ? (\n <slot name=\"router-item\"></slot>\n ) : (\n <TagType\n class=\"button\"\n tabindex={0}\n aria-disabled={loading || disabled ? \"true\" : null}\n aria-label={loading ? \"Loading\" : ariaLabel}\n aria-expanded={dropdown && `${dropdownExpanded}`}\n {...buttonAttrs}\n {...inheritedAttributes}\n onFocus={onFocus}\n onBlur={onBlur}\n ref={(el) => (this.buttonEl = el)}\n aria-describedby={describedby}\n part=\"button\"\n >\n {loading ? (\n <div class=\"loading-container\">\n <ic-loading-indicator\n type=\"linear\"\n monochrome={monochrome}\n theme={theme}\n ></ic-loading-indicator>\n </div>\n ) : (\n <Fragment>\n {(hasLeftIcon ||\n (!!this.getSlottedIcon(\"top\") && !hasRightIcon)) && (\n <div class=\"icon-container\">\n <slot name={`${hasLeftIcon ? \"left\" : \"top\"}-icon`} />\n </div>\n )}\n <slot />\n {!dropdown\n ? hasRightIcon && (\n <div class={{ \"icon-container\": true, \"right-icon\": true }}>\n <slot name=\"right-icon\" />\n </div>\n )\n : variant !== \"icon\" &&\n variant !== \"destructive\" && (\n <span\n class={\n dropdownExpanded\n ? \"dropdown-expanded\"\n : \"arrow-dropdown\"\n }\n innerHTML={arrowDropdown}\n />\n )}\n </Fragment>\n )}\n </TagType>\n );\n\n return (\n <Host\n class={{\n \"ic-button-disabled\": disabled && !loading,\n \"ic-button-full-width\": fullWidth,\n \"ic-button-loading\": loading,\n [`ic-button-size-${size}`]: true,\n [`ic-button-variant-${variant}`]: true,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n background:\n (variant === \"secondary\" || variant === \"tertiary\") &&\n !transparentBackground &&\n !disabled,\n \"dropdown-no-icon\":\n dropdown &&\n !isSlotUsed(this.el, \"icon\") &&\n !isSlotUsed(this.el, \"left-icon\"),\n monochrome,\n \"top-icon\": isSlotUsed(this.el, \"top-icon\"),\n \"with-badge\": isSlotUsed(this.el, \"badge\"),\n }}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n aria-owns={ariaOwnsId}\n aria-controls={ariaControlsId}\n aria-expanded={dropdown && `${dropdownExpanded}`}\n >\n {hasTooltip && (\n <ic-tooltip\n id={describedby}\n label={title || ariaLabel}\n target={buttonId}\n placement={tooltipPlacement}\n fixedPositioning={tooltipFixedPositioning}\n silent={isIconVariant() && !!ariaLabel}\n >\n <ButtonContent />\n </ic-tooltip>\n )}\n {isSlotUsed(this.el, \"badge\") && <slot name=\"badge\"></slot>}\n {!hasTooltip && <ButtonContent />}\n </Host>\n );\n }\n}\n"]}
@@ -150,19 +150,19 @@ export class CardVertical {
150
150
  rel: rel,
151
151
  target: target,
152
152
  };
153
- return (h(Host, { key: '2dc8070692fc796401c84c6156d1f66c8053310a', class: {
153
+ return (h(Host, { key: 'aeff3ef22b085acbf30dacb5d3ae0167451044b9', class: {
154
154
  [`ic-theme-${theme}`]: theme !== "inherit",
155
- } }, h(Component, Object.assign({ key: 'a1a8763990ed7e5ac5eecfc69e4b29ab184b9e6e', class: {
155
+ } }, h(Component, Object.assign({ key: 'a451e5f53149283ee77878ccc3e699beae669f24', 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: '2c12f461a8b8972d8a4de1a6560a2c52ecadc36f', class: "image-top" }, h("slot", { key: '9afec40e5ef6b57a10ca922d7f3da378f962200f', name: "image-top" }))), h("div", { key: 'bb92939da24dbfa2fb2e4bc2606d4f7ef9d2ba37', class: "card-header" }, isSlotUsed(this.el, "icon") && (h("div", { key: '165af9342325b430548209cf2bcd5b9781b752fd', class: "icon" }, h("slot", { key: '4b2cdd47b1f2abfc16097dee848b630c93c1b835', name: "icon" }))), h("div", { key: '02f1b6357a696bc43b9d5cc7c8030647b52e311c', class: "card-title" }, h("slot", { key: 'b71ca0fa6a4aeb1cf75579920a66f58abe11d5ae', name: "heading" }, h("ic-typography", { key: '63f9c6478987888f41a53d5beadec2b3deaa52ae', variant: "h4" }, h("p", { key: '6d642c20d4656a408cf439c969a1895cb834c15e' }, heading)))), isSlotUsed(this.el, "interaction-button") && (h("div", { key: '7a44d7d2c17cd980fa14da2a65aa68ddd8832f77', class: "interaction-button" }, h("slot", { key: '6a9e0f0ca96125d94d39b31474c82ffe088ea475', name: "interaction-button" })))), (subheading || isSlotUsed(this.el, "subheading")) && (h("div", { key: 'dc19ca8ae488c30aa1fc58e56db23fc0dc2a2c0f', class: "subheading" }, h("slot", { key: 'bae9a057f813ef5c5df04befed60d09ccb106857', name: "subheading" }, h("ic-typography", { key: '13a32e2d9bc3258b65edf8a5c385f181f39a2c8d', variant: "subtitle-small" }, subheading)))), isSlotUsed(this.el, "adornment") && (h("div", { key: 'c359631c9d1ed0643290e1db2a5e521d6702b29d', class: "adornment" }, h("slot", { key: '398a65927df066f96bffc5b59b95fd27ec558c12', name: "adornment" }))), isSlotUsed(this.el, "image-mid") && (h("div", { key: '463a2495779d1faca6efd98a3e1425e3486fc0d1', class: "image-mid" }, h("slot", { key: '049daa3cbf2542b0a47951a8758bb50a1ad699e2', name: "image-mid" }))), (message || isSlotUsed(this.el, "message")) && (h("div", { key: '9f6b4ea8e3a8cfa0e8ad58366f4e2a198cb0f8f6', class: "card-message" }, message && (h("ic-typography", { key: '1a32ff3958de50ea5732a0fb52616d04c6ebedcc', variant: "body" }, message)), isSlotUsed(this.el, "message") && h("slot", { key: '0dabb8f6ed9bd42a0982284fa4976734c0d5e16f', name: "message" }))), (isSlotUsed(this.el, "interaction-controls") || expandable) && (h("div", { key: '2d6292c895df325c53cffc72a330720855644c59', class: "interaction-area" }, h("div", { key: 'a8c4c10d85a5608f49dbccb8cb65443d56d64a3f', class: "interaction-controls" }, h("slot", { key: '5caebe86117ec6ef31d096a284aa035153e02a56', name: "interaction-controls" })), expandable && (h("ic-tooltip", { key: '1d66d84f3181cc1694cdf779befca1610c538f71', id: "ic-tooltip-expand-button", label: "Toggle expandable area", silent: true }, h("button", { key: 'eaa2b9484428dab89fb67677b80a09a6174b011b', class: {
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: {
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: 'd896c331bad9e027c4b56dd1fce75bc530218516', class: "expanded-content", id: "expanded-content-area" }, h("slot", { key: '7fc81de39ef8a949674f22089d413bf946befdd7', name: "expanded-content" }))), isSlotUsed(this.el, "badge") && h("slot", { key: '283bff90fab9be3b640ab7d04384d7ce2873bad8', 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: '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" }))));
166
166
  }
167
167
  static get is() { return "ic-card-vertical"; }
168
168
  static get encapsulation() { return "shadow"; }
@@ -106,17 +106,17 @@ export class Checkbox {
106
106
  checked
107
107
  ? renderHiddenInput(el, value, name, disabled)
108
108
  : removeHiddenInput(el);
109
- return (h(Host, { key: '153b0b333ca1d0755d4e52dd9119d48cd1c246cc', class: {
109
+ return (h(Host, { key: '085faed0fb3d46c8903cc09959a1a04f36ac2eeb', class: {
110
110
  "ic-checkbox-disabled": disabled,
111
111
  [`ic-checkbox-${size}`]: !!size,
112
112
  [`ic-theme-${theme}`]: theme !== "inherit",
113
- } }, h("div", { key: 'c0f56ee4fbbdd38fea208d133cdd1fa91a41d6c7', 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: 'f8335e54b2f765591b3781d76a01632c34065855', role: "checkbox", class: {
113
+ } }, h("div", { key: '20c07a9059a4fd3b1b59587771190dfd7ebf70fe', 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: '94f8a343a8d80a8ceb68f2cddc300c7c500deae7', role: "checkbox", class: {
114
114
  checkbox: true,
115
115
  checked,
116
116
  indeterminate: displayIndeterminate,
117
- }, ref: (el) => (this.checkboxEl = el), type: "checkbox", name: name, id: id, value: value, disabled: disabled, checked: checked, indeterminate: displayIndeterminate, onClick: handleClick, form: form, "aria-label": hideLabel ? label : undefined }), !hideLabel && (h("ic-typography", { key: '2ba4862a349e6b3f34c050c434ce247687f0dfd8', class: "checkbox-label", variant: "body" }, h("label", { key: 'a3f3c733b5dc0a0acdf89d3b7db603e965102618', htmlFor: id }, label)))), h("span", { key: 'e671e1532bdfea4a1c5d85cbb8cde2cc41044757', id: `${id}-additional-field-description`, role: "alert", class: "sr-only" }, isDynamicAdditionalField && checked ? dynamicText : ""), isSlotUsed(el, "additional-field") && (h("div", { key: 'b562e4d2bf3cb6651c6a95aedb8a8e4991d1d1e7', class: "dynamic-container", ref: (el) => (this.additionalFieldContainer = el) }, isDynamicAdditionalField && h("div", { key: '9c6d8a88882fe32f1f272c3df42eeca896459284', class: "branch-corner" }), h("div", { key: '7a88d8ae6fc193a3b2e08e82eb47a6b0228ce40b', class: "dynamic-field-container" }, isDynamicAdditionalField && (h("ic-typography", { key: '64fdfe413653b6583789de3ee56c91c18522764e', variant: "caption" }, h("p", { key: '0075205b0805a37b362658d70152bb180c290f0c', class: "dynamic-text" }, isDynamicAdditionalField && checked ? dynamicText : ""))), h("div", { key: 'd6494d984bd1de5b08265fe1f8b2deb0a45e7d3a', class: {
117
+ }, ref: (el) => (this.checkboxEl = el), type: "checkbox", name: name, id: id, value: value, disabled: disabled, checked: checked, indeterminate: displayIndeterminate, onClick: handleClick, form: form, "aria-label": hideLabel ? label : undefined }), !hideLabel && (h("ic-typography", { key: 'b8b137c6cd0b1ee18ca44f8aa55c976b735b7af8', class: "checkbox-label", variant: "body" }, h("label", { key: '44976b751599275d613ff52a816133a896791912', htmlFor: id }, label)))), h("span", { key: 'e1e39b78d26a6d057c722794784b69b422197ff3', id: `${id}-additional-field-description`, role: "alert", class: "sr-only" }, isDynamicAdditionalField && checked ? dynamicText : ""), isSlotUsed(el, "additional-field") && (h("div", { key: '62457da0c99d40b8bbfb97d3b41f400ef1a22dd0', class: "dynamic-container", ref: (el) => (this.additionalFieldContainer = el) }, isDynamicAdditionalField && h("div", { key: '65a6a9deddeb2c2b11fe56273c2d3bc5391f696e', class: "branch-corner" }), h("div", { key: '3e920fd15f6cf506e793bc6386db140332ed390a', class: "dynamic-field-container" }, isDynamicAdditionalField && (h("ic-typography", { key: '0257c5f48fe33b49742d0a5bd50dac4c000a1f04', variant: "caption" }, h("p", { key: '24d8ebe43598283a5e5af287379f3b0f54e17d85', class: "dynamic-text" }, isDynamicAdditionalField && checked ? dynamicText : ""))), h("div", { key: '38bcc265ce747daad6577a244d2db6c7fbd6d22b', class: {
118
118
  "additional-field-wrapper": !isDynamicAdditionalField,
119
- } }, h("slot", { key: '905f210aaf41f4ba5d7c24e92bd19dbb17b81355', name: "additional-field" })))))));
119
+ } }, h("slot", { key: '117707c0f26bb70c0c7d13e3d1a01c2120f0f948', name: "additional-field" })))))));
120
120
  }
121
121
  static get is() { return "ic-checkbox"; }
122
122
  static get encapsulation() { return "shadow"; }
@@ -98,11 +98,11 @@ export class CheckboxGroup {
98
98
  const describedBy = getInputDescribedByText(this.el, name, helperText !== "", validationStatus !== "");
99
99
  const renderSRText = validationStatus === "error" || required || hideLabel;
100
100
  const showValidation = hasValidationStatus(validationStatus, disabled);
101
- return (h(Host, { key: 'ee4fc914d346b2f35dd8d44ff73a44b479caee95', class: {
101
+ return (h(Host, { key: '70cd72bffb83cca193e88bc0998023b71af960ca', class: {
102
102
  "ic-checkbox-group-disabled": !!disabled,
103
103
  [`ic-checkbox-group-${size}`]: true,
104
104
  [`ic-theme-${theme}`]: theme !== "inherit",
105
- } }, renderSRText && (h("span", { key: '3718d5e6fce1597c836d01050ed17bcd01c97e6e', id: "screenReaderOnlyText", class: "screen-reader-only-text", "aria-hidden": "true" }, label, " ", validationStatus === "error" ? "invalid data " : null, " ", required ? "required" : null)), h("fieldset", { key: '318e6c61787f136916d39acdd2823fa644c8d865', id: name, "aria-labelledby": `${renderSRText ? "screenReaderOnlyText" : ""} ${describedBy}`.trim(), disabled: disabled }, !hideLabel && (h("legend", { key: '6348eb25d5a2de666033441d694b407f72ae834b' }, h("ic-input-label", { key: '96ef66ab6b4e3a02a2385eb9b8f5936c1fc57ad0', class: { [`${validationStatus}`]: true }, label: label, helperText: helperText, required: required, disabled: disabled, useLabelTag: false }, h("slot", { key: 'f9f0532834d50a57dbc2f075a9f94788071cceb6', name: "helper-text", slot: "helper-text" })))), h("div", { key: '9b72caba2adb5951814689ef5c8b1fa5d7ea11ed', class: "checkboxes-container" }, h("slot", { key: '5cf045069c87416b7889e7b29b44e6f137ca0b4f' }))), h("ic-input-validation", { key: '4b9680fcb5468fbf6e9c2e1eb6d45f929b2b09dc', class: {
105
+ } }, renderSRText && (h("span", { key: 'ac8a04312dcaa0dbcbd9b648710cc135625adb02', id: "screenReaderOnlyText", class: "screen-reader-only-text", "aria-hidden": "true" }, label, " ", validationStatus === "error" ? "invalid data " : null, " ", required ? "required" : null)), h("fieldset", { key: '93117da2e287c333ffce1aefb6ab32bf073166fd', id: name, "aria-labelledby": `${renderSRText ? "screenReaderOnlyText" : ""} ${describedBy}`.trim(), disabled: disabled }, !hideLabel && (h("legend", { key: '813906a6e7d3f1c2552a70a6c5c5748a07a6a2e2' }, h("ic-input-label", { key: 'f8cdf69d1eb1976395411cf0ed77727b4bd0718f', class: { [`${validationStatus}`]: true }, label: label, helperText: helperText, required: required, disabled: disabled, useLabelTag: false }, h("slot", { key: 'b525218ca3d7833b0aa877a97d70f82b36fa4aa7', name: "helper-text", slot: "helper-text" })))), h("div", { key: '6737cf436e1d061265864ff8c53e4b9f82913985', class: "checkboxes-container" }, h("slot", { key: 'fd176ba39c8dc894695467906e1971c01b770ad9' }))), h("ic-input-validation", { key: '5f7128afd7e50821dfa77973e08ab29d1edbb2fc', class: {
106
106
  "show-validation": showValidation,
107
107
  }, for: name, ariaLiveMode: validationAriaLive, status: showValidation ? validationStatus : "", message: showValidation ? validationText : "" })));
108
108
  }
@@ -90,11 +90,11 @@ export class Chip {
90
90
  render() {
91
91
  const { label, variant, size, dismissible, visible, disabled, hovered, theme, foregroundColor, dismissLabel, transparentBackground, } = this;
92
92
  const ariaLabel = `${label} chip`;
93
- return (h(Host, { key: 'c7b88d4999b6de5004edc4bd27e185b9232fdaf9', class: {
93
+ return (h(Host, { key: '91df6058439a8c6dbd74de3d46153e4d0c54d623', class: {
94
94
  "ic-chip-dismissed": !visible,
95
95
  [`ic-theme-${theme}`]: theme !== "inherit",
96
96
  [`ic-chip-${foregroundColor}-text`]: variant === "filled" && !!foregroundColor,
97
- } }, visible && (h("div", { key: 'dbbb2bd77adea5e65d61e11b6c4b2b06fadbb9b1', class: {
97
+ } }, visible && (h("div", { key: 'e7fe4dfe8ebedf808512a29aceef28a6700cd233', class: {
98
98
  chip: true,
99
99
  [`${variant}`]: true,
100
100
  [`${size}`]: true,
@@ -102,7 +102,7 @@ export class Chip {
102
102
  dismissible,
103
103
  hovered,
104
104
  "non-transparent": variant === "outlined" && !transparentBackground,
105
- } }, isSlotUsed(this.el, "icon") && (h("div", { key: '443ef9dc619483da883171e367ac9541aaf61a38', class: "icon" }, h("slot", { key: '3d5f5e0db37a1d2c0b8d2f25e0af2801cc52598e', name: "icon" }))), h("ic-typography", { key: '23603177321e0a67c86da4720574592e3db8db80', variant: "label", "apply-vertical-margins": false, class: { label: true, "in-ag-grid": isElInAGGrid(this.el) } }, h("span", { key: '2d55524b494e17a0ee3c8a7441ffbc1a5d47f6a4' }, label)), dismissible && (h("ic-tooltip", { key: '2def11f340b2b51518caebdf0e87b61e87d9baeb', label: dismissLabel, target: "dismiss-icon", class: { "tooltip-disabled": disabled } }, h("button", { key: 'c437a1dc096b14ba3bb2fa5723fa0044e83a9b3a', 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: '9b3fec37d1d44def4248cf53ae2916d9f62e1a08', name: "badge" }))), dismissible && (h("div", { key: 'bc8d8601488092dde7dae7db5f0f36b802f6df9f', class: "sr-only", "aria-live": "polite" }, !visible ? `Dismissed ${ariaLabel}` : ""))));
105
+ } }, isSlotUsed(this.el, "icon") && (h("div", { key: '81b38c990e638413596f6e5e8041f68eef20e064', class: "icon" }, h("slot", { key: '3a1fda2665ac0aea65df3bfaa94552f5e6fa2e1e', name: "icon" }))), h("ic-typography", { key: 'a496fa5e7be6ec073cb1b2225b7a1e1f79f94f3f', variant: "label", "apply-vertical-margins": false, class: { label: true, "in-ag-grid": isElInAGGrid(this.el) } }, h("span", { key: '942471f0fd86b350166c14433c40d6d912a52b17' }, label)), dismissible && (h("ic-tooltip", { key: 'c9ea0b5045a625a7b42ae71b22bc9737b05501ee', label: dismissLabel, target: "dismiss-icon", class: { "tooltip-disabled": disabled } }, h("button", { key: '7fb04f03ac698a002fea17de94980623b33502dd', 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: '99b017ad25c78367d25411312b47aa1f73d8f682', name: "badge" }))), dismissible && (h("div", { key: 'b847f0255a3aaca7f1f24e2de1e939e0a6518c2f', class: "sr-only", "aria-live": "polite" }, !visible ? `Dismissed ${ariaLabel}` : ""))));
106
106
  }
107
107
  static get is() { return "ic-chip"; }
108
108
  static get encapsulation() { return "shadow"; }
@@ -18,10 +18,10 @@ export class DataList {
18
18
  if (size === "small") {
19
19
  Array.from(el.children).forEach((child) => child.setAttribute("size", "small"));
20
20
  }
21
- return (h(Host, { key: 'a050ac5764ea9496f33d53abdd27f1a193185cbb', class: {
21
+ return (h(Host, { key: 'c66609f65612dca067e70b5762d7eeb797dd2121', class: {
22
22
  "ic-data-list-small": size === "small",
23
23
  [`ic-theme-${theme}`]: theme !== "inherit",
24
- } }, h("div", { key: '41836f9dce80428fe7f266601c779255195f2a1a', class: "heading", id: "data-list-heading" }, h("slot", { key: '0bd2c17f6dc9767364dc021695ac5839acb3040f', name: "heading" }, h("ic-typography", { key: '65c4dd118e264af61e6494a81b60e573361ea9d3', variant: "h3" }, heading))), h("div", { key: '5be1cea50a4d8beef81c14da5e13a74a75347244', class: "divider" }), h("ul", { key: '9b71c57f882aec9aecb018e4a1fb98ff66c6aaf1', "aria-labelledby": "data-list-heading", class: "rows" }, h("slot", { key: '729e8422e911d6dc7a64e568af78f9e7e1ba32c7' }))));
24
+ } }, h("div", { key: '685663251c565cb665c03e9bd39e1d5b2f7ef73b', class: "heading", id: "data-list-heading" }, h("slot", { key: 'e81970054a2053f05f6c0ef378e2509bb602da65', name: "heading" }, h("ic-typography", { key: '860b07bd25a11f7f6a938aab5cbae0c5802bea3e', variant: "h3" }, heading))), h("div", { key: 'c004429938c7c71ac70ee106486f75193cffc2ca', class: "divider" }), h("ul", { key: 'b9e010a5703ecaf75ce3b1cf396901b26618a34a', "aria-labelledby": "data-list-heading", class: "rows" }, h("slot", { key: '684b99425193c3a5e306b67e235b7d85e1802fce' }))));
25
25
  }
26
26
  static get is() { return "ic-data-list"; }
27
27
  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: '8a70c9ceda7aebc616eb335f08e626952c87ddf3', class: {
71
+ return (h(Host, { key: '3cfe27bfa3e8e0a563450e3842c31e50a78fcb28', 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: 'b2f75779fb6392023c42d9c1f8bf58a98b431797', class: "data" }, h("div", { key: '059aa84f8a91c9a7cdaea4e118287ea460f1bcdd', class: "text-cells" }, (isSlotUsed(el, "label") || label) && renderCellContent("label"), (isSlotUsed(el, "value") || value) && renderCellContent("value")), hasEndComponent && (h("div", { key: '3bcb9b239d836434ceae03ecd35c1bdc42d73699', class: "end-component" }, h("slot", { key: '453e0c7e4d6b875ddfc319a12dc173913057b8bd', name: "end-component" })))), h("div", { key: 'f16fd733c8ffd0e8ed8e7461099a3b9b81809cb3', class: "divider" })));
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" })));
77
77
  }
78
78
  static get is() { return "ic-data-row"; }
79
79
  static get encapsulation() { return "shadow"; }
@@ -603,7 +603,7 @@ video {
603
603
  }
604
604
 
605
605
  @media (min-width: 800px) {
606
- :host([size="large"]) .dialog:not(.disable-width-constraint) > .content-area {
606
+ .large:not(.disable-width-constraint) > .content-area {
607
607
  width: 75%;
608
608
  }
609
609
  }