@ukic/web-components 3.10.0 → 3.12.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 (676) hide show
  1. package/dist/cjs/constants-3a9ba64a.js +191 -0
  2. package/dist/cjs/constants-3a9ba64a.js.map +1 -0
  3. package/dist/cjs/core.cjs.js +1 -1
  4. package/dist/cjs/{helpers-a0e78e2e.js → helpers-478d1107.js} +6 -187
  5. package/dist/cjs/helpers-478d1107.js.map +1 -0
  6. package/dist/cjs/ic-accordion-group.cjs.entry.js +2 -1
  7. package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ic-accordion.cjs.entry.js +2 -1
  9. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ic-action-chip.cjs.entry.js +2 -1
  11. package/dist/cjs/ic-action-chip.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ic-alert.cjs.entry.js +4 -3
  13. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ic-back-to-top.cjs.entry.js +2 -1
  15. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  16. package/dist/cjs/ic-badge.cjs.entry.js +2 -1
  17. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +2 -1
  19. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  20. package/dist/cjs/ic-breadcrumb.cjs.entry.js +2 -1
  21. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  22. package/dist/cjs/ic-button_3.cjs.entry.js +27 -20
  23. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  24. package/dist/cjs/ic-card-vertical.cjs.entry.js +2 -1
  25. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
  26. package/dist/cjs/ic-checkbox-group.cjs.entry.js +8 -4
  27. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  28. package/dist/cjs/ic-checkbox.cjs.entry.js +5 -4
  29. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  30. package/dist/cjs/ic-chip.cjs.entry.js +7 -5
  31. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  32. package/dist/cjs/ic-data-list.cjs.entry.js +2 -2
  33. package/dist/cjs/ic-data-row.cjs.entry.js +4 -3
  34. package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
  35. package/dist/cjs/ic-dialog.cjs.entry.js +7 -4
  36. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  37. package/dist/cjs/ic-divider.cjs.entry.js +2 -1
  38. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  39. package/dist/cjs/ic-empty-state.cjs.entry.js +4 -3
  40. package/dist/cjs/ic-empty-state.cjs.entry.js.map +1 -1
  41. package/dist/cjs/ic-footer-link-group.cjs.entry.js +2 -1
  42. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  43. package/dist/cjs/ic-footer-link.cjs.entry.js +4 -3
  44. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  45. package/dist/cjs/ic-footer.cjs.entry.js +10 -9
  46. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  47. package/dist/cjs/ic-hero.cjs.entry.js +6 -5
  48. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  49. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +7 -6
  50. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  51. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +1388 -12
  52. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ic-input-label_2.cjs.entry.js +27 -12
  54. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  55. package/dist/cjs/ic-layout-grid-item.cjs.entry.js +2 -2
  56. package/dist/cjs/ic-layout-grid.cjs.entry.js +2 -2
  57. package/dist/cjs/ic-link.cjs.entry.js +5 -4
  58. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  59. package/dist/cjs/ic-menu-group.cjs.entry.js +3 -2
  60. package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
  61. package/dist/cjs/ic-menu-item.cjs.entry.js +2 -1
  62. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  63. package/dist/cjs/ic-navigation-button.cjs.entry.js +3 -2
  64. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  65. package/dist/cjs/ic-navigation-group.cjs.entry.js +3 -2
  66. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  67. package/dist/cjs/ic-navigation-item.cjs.entry.js +2 -1
  68. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  69. package/dist/cjs/ic-navigation-menu.cjs.entry.js +6 -5
  70. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  71. package/dist/cjs/ic-page-header.cjs.entry.js +8 -7
  72. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  73. package/dist/cjs/ic-pagination-item.cjs.entry.js +3 -2
  74. package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -1
  75. package/dist/cjs/ic-pagination.cjs.entry.js +6 -5
  76. package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -1
  77. package/dist/cjs/ic-popover-menu.cjs.entry.js +6 -5
  78. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  79. package/dist/cjs/ic-radio-group.cjs.entry.js +15 -7
  80. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  81. package/dist/cjs/ic-radio-option.cjs.entry.js +7 -6
  82. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  83. package/dist/cjs/ic-search-bar.cjs.entry.js +11 -10
  84. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  85. package/dist/cjs/ic-section-container.cjs.entry.js +2 -2
  86. package/dist/cjs/ic-select.cjs.entry.js +21 -13
  87. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  88. package/dist/cjs/ic-side-navigation.cjs.entry.js +6 -5
  89. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  90. package/dist/cjs/ic-skeleton.cjs.entry.js +2 -2
  91. package/dist/cjs/ic-skip-link.cjs.entry.js +2 -2
  92. package/dist/cjs/ic-status-tag.cjs.entry.js +4 -3
  93. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  94. package/dist/cjs/ic-step.cjs.entry.js +67 -54
  95. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  96. package/dist/cjs/ic-stepper.cjs.entry.js +21 -3
  97. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  98. package/dist/cjs/ic-switch.cjs.entry.js +6 -5
  99. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  100. package/dist/cjs/ic-tab-context.cjs.entry.js +10 -2
  101. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  102. package/dist/cjs/ic-tab-group.cjs.entry.js +4 -3
  103. package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
  104. package/dist/cjs/ic-tab-panel.cjs.entry.js +2 -2
  105. package/dist/cjs/ic-tab.cjs.entry.js +2 -1
  106. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  107. package/dist/cjs/ic-text-field.cjs.entry.js +32 -23
  108. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  109. package/dist/cjs/ic-theme.cjs.entry.js +5 -4
  110. package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
  111. package/dist/cjs/ic-toast-region.cjs.entry.js +1 -1
  112. package/dist/cjs/ic-toast.cjs.entry.js +7 -6
  113. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  114. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +4 -3
  115. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  116. package/dist/cjs/ic-toggle-button.cjs.entry.js +4 -3
  117. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  118. package/dist/cjs/ic-top-navigation.cjs.entry.js +2 -1
  119. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  120. package/dist/cjs/ic-typography.cjs.entry.js +4 -3
  121. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  122. package/dist/cjs/index.cjs.js +16 -0
  123. package/dist/cjs/index.cjs.js.map +1 -1
  124. package/dist/cjs/loader.cjs.js +1 -1
  125. package/dist/collection/assets/ai-icon.svg +1 -1
  126. package/dist/collection/assets/error-icon.svg +4 -4
  127. package/dist/collection/assets/info-icon.svg +4 -4
  128. package/dist/collection/assets/neutral-icon.svg +4 -4
  129. package/dist/collection/assets/success-icon.svg +4 -4
  130. package/dist/collection/assets/warning-icon.svg +4 -4
  131. package/dist/collection/components/ic-alert/ic-alert.js +1 -1
  132. package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
  133. package/dist/collection/components/ic-button/ic-button.js +14 -8
  134. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  135. package/dist/collection/components/ic-button/ic-button.stories.js +191 -0
  136. package/dist/collection/components/ic-card-vertical/ic-card-vertical.stories.js +10 -10
  137. package/dist/collection/components/ic-checkbox/ic-checkbox.css +5 -0
  138. package/dist/collection/components/ic-checkbox/ic-checkbox.js +2 -2
  139. package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
  140. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.css +3 -3
  141. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +5 -2
  142. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  143. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.stories.js +11 -28
  144. package/dist/collection/components/ic-chip/ic-chip.css +4 -0
  145. package/dist/collection/components/ic-chip/ic-chip.js +4 -3
  146. package/dist/collection/components/ic-chip/ic-chip.js.map +1 -1
  147. package/dist/collection/components/ic-data-list/ic-data-list.js +2 -2
  148. package/dist/collection/components/ic-data-list/ic-data-list.stories.js +30 -6
  149. package/dist/collection/components/ic-data-row/ic-data-row.js +2 -2
  150. package/dist/collection/components/ic-dialog/ic-dialog.js +5 -3
  151. package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -1
  152. package/dist/collection/components/ic-dialog/ic-dialog.stories.js +40 -1
  153. package/dist/collection/components/ic-empty-state/ic-empty-state.js +2 -2
  154. package/dist/collection/components/ic-footer-link/ic-footer-link.js +2 -2
  155. package/dist/collection/components/ic-hero/ic-hero.js +4 -4
  156. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +5 -5
  157. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +3 -3
  158. package/dist/collection/components/ic-input-container/ic-input-container.js +2 -2
  159. package/dist/collection/components/ic-input-label/ic-input-label.js +2 -2
  160. package/dist/collection/components/ic-input-validation/ic-input-validation.css +9 -1
  161. package/dist/collection/components/ic-input-validation/ic-input-validation.js +27 -10
  162. package/dist/collection/components/ic-input-validation/ic-input-validation.js.map +1 -1
  163. package/dist/collection/components/ic-layout-grid/ic-layout-grid.js +2 -2
  164. package/dist/collection/components/ic-layout-grid-item/ic-layout-grid-item.js +2 -2
  165. package/dist/collection/components/ic-link/ic-link.js +1 -1
  166. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +5 -5
  167. package/dist/collection/components/ic-menu/ic-menu.css +2 -2
  168. package/dist/collection/components/ic-menu/ic-menu.js +6 -5
  169. package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
  170. package/dist/collection/components/ic-menu-group/ic-menu-group.js +1 -1
  171. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +1 -1
  172. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +4 -4
  173. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js.map +1 -1
  174. package/dist/collection/components/ic-page-header/ic-page-header.js +6 -6
  175. package/dist/collection/components/ic-pagination/ic-pagination.js +4 -4
  176. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +1 -1
  177. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +4 -4
  178. package/dist/collection/components/ic-radio-group/ic-radio-group.css +2 -2
  179. package/dist/collection/components/ic-radio-group/ic-radio-group.js +40 -7
  180. package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
  181. package/dist/collection/components/ic-radio-group/ic-radio-group.stories.js +178 -15
  182. package/dist/collection/components/ic-radio-option/ic-radio-option.css +37 -1
  183. package/dist/collection/components/ic-radio-option/ic-radio-option.js +4 -4
  184. package/dist/collection/components/ic-radio-option/ic-radio-option.js.map +1 -1
  185. package/dist/collection/components/ic-search-bar/ic-search-bar.js +9 -9
  186. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  187. package/dist/collection/components/ic-section-container/ic-section-container.js +2 -2
  188. package/dist/collection/components/ic-select/ic-select.js +44 -11
  189. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  190. package/dist/collection/components/ic-select/ic-select_(multi).stories.js +22 -8
  191. package/dist/collection/components/ic-select/ic-select_(searchable).stories.js +16 -3
  192. package/dist/collection/components/ic-select/ic-select_(single).stories.js +119 -10
  193. package/dist/collection/components/ic-select/test/a11y/ic-select.test.a11y.js +60 -0
  194. package/dist/collection/components/ic-select/test/a11y/ic-select.test.a11y.js.map +1 -0
  195. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +4 -4
  196. package/dist/collection/components/ic-skeleton/ic-skeleton.js +2 -2
  197. package/dist/collection/components/ic-skip-link/ic-skip-link.js +2 -2
  198. package/dist/collection/components/ic-status-tag/ic-status-tag.js +2 -2
  199. package/dist/collection/components/ic-step/ic-step.js +89 -53
  200. package/dist/collection/components/ic-step/ic-step.js.map +1 -1
  201. package/dist/collection/components/ic-step/ic-step.types.js.map +1 -1
  202. package/dist/collection/components/ic-stepper/ic-stepper.js +43 -2
  203. package/dist/collection/components/ic-stepper/ic-stepper.js.map +1 -1
  204. package/dist/collection/components/ic-stepper/ic-stepper.stories.js +75 -0
  205. package/dist/collection/components/ic-switch/ic-switch.js +4 -4
  206. package/dist/collection/components/ic-tab-context/ic-tab-context.js +27 -2
  207. package/dist/collection/components/ic-tab-context/ic-tab-context.js.map +1 -1
  208. package/dist/collection/components/ic-tab-group/ic-tab-group.js +2 -2
  209. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +2 -2
  210. package/dist/collection/components/ic-text-field/ic-text-field.css +4 -0
  211. package/dist/collection/components/ic-text-field/ic-text-field.js +53 -19
  212. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  213. package/dist/collection/components/ic-text-field/ic-text-field.stories.js +102 -4
  214. package/dist/collection/components/ic-theme/ic-theme.js +1 -1
  215. package/dist/collection/components/ic-toast/ic-toast.js +3 -3
  216. package/dist/collection/components/ic-toast/ic-toast.js.map +1 -1
  217. package/dist/collection/components/ic-toast-region/ic-toast-region.js +1 -1
  218. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +2 -2
  219. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js.map +1 -1
  220. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +2 -2
  221. package/dist/collection/components/ic-tooltip/ic-tooltip.js +6 -4
  222. package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
  223. package/dist/collection/components/ic-typography/ic-typography.js +2 -2
  224. package/dist/collection/index.js +1 -1
  225. package/dist/collection/index.js.map +1 -1
  226. package/dist/collection/utils/common-helpers.js +17 -0
  227. package/dist/collection/utils/common-helpers.js.map +1 -0
  228. package/dist/collection/utils/constants.js +1 -0
  229. package/dist/collection/utils/constants.js.map +1 -1
  230. package/dist/collection/utils/types.js.map +1 -1
  231. package/dist/components/constants.js +177 -0
  232. package/dist/components/constants.js.map +1 -0
  233. package/dist/components/helpers.js +2 -174
  234. package/dist/components/helpers.js.map +1 -1
  235. package/dist/components/ic-action-chip.js +1 -1
  236. package/dist/components/ic-alert.js +3 -2
  237. package/dist/components/ic-alert.js.map +1 -1
  238. package/dist/components/ic-back-to-top.js +1 -1
  239. package/dist/components/ic-badge.js +1 -1
  240. package/dist/components/ic-breadcrumb-group.js +1 -1
  241. package/dist/components/ic-breadcrumb2.js +1 -1
  242. package/dist/components/ic-button2.js +17 -11
  243. package/dist/components/ic-button2.js.map +1 -1
  244. package/dist/components/ic-card-vertical.js +1 -1
  245. package/dist/components/ic-checkbox-group.js +7 -4
  246. package/dist/components/ic-checkbox-group.js.map +1 -1
  247. package/dist/components/ic-checkbox.js +4 -4
  248. package/dist/components/ic-checkbox.js.map +1 -1
  249. package/dist/components/ic-chip.js +6 -5
  250. package/dist/components/ic-chip.js.map +1 -1
  251. package/dist/components/ic-data-list.js +2 -2
  252. package/dist/components/ic-data-row.js +3 -3
  253. package/dist/components/ic-dialog.js +6 -4
  254. package/dist/components/ic-dialog.js.map +1 -1
  255. package/dist/components/ic-divider2.js +1 -1
  256. package/dist/components/ic-empty-state.js +3 -3
  257. package/dist/components/ic-footer-link-group.js +1 -1
  258. package/dist/components/ic-footer-link.js +3 -3
  259. package/dist/components/ic-footer.js +2 -1
  260. package/dist/components/ic-footer.js.map +1 -1
  261. package/dist/components/ic-hero.js +5 -5
  262. package/dist/components/ic-horizontal-scroll2.js +6 -6
  263. package/dist/components/ic-input-component-container2.js +5 -4
  264. package/dist/components/ic-input-component-container2.js.map +1 -1
  265. package/dist/components/ic-input-container2.js +2 -2
  266. package/dist/components/ic-input-label2.js +3 -3
  267. package/dist/components/ic-input-validation2.js +24 -7
  268. package/dist/components/ic-input-validation2.js.map +1 -1
  269. package/dist/components/ic-layout-grid-item.js +2 -2
  270. package/dist/components/ic-layout-grid.js +2 -2
  271. package/dist/components/ic-link2.js +3 -2
  272. package/dist/components/ic-link2.js.map +1 -1
  273. package/dist/components/ic-loading-indicator2.js +5 -5
  274. package/dist/components/ic-menu-group.js +2 -2
  275. package/dist/components/ic-menu-item2.js +1 -1
  276. package/dist/components/ic-menu2.js +1383 -7
  277. package/dist/components/ic-menu2.js.map +1 -1
  278. package/dist/components/ic-navigation-button.js +2 -1
  279. package/dist/components/ic-navigation-button.js.map +1 -1
  280. package/dist/components/ic-navigation-group.js +2 -2
  281. package/dist/components/ic-navigation-item.js +1 -1
  282. package/dist/components/ic-navigation-menu2.js +5 -5
  283. package/dist/components/ic-navigation-menu2.js.map +1 -1
  284. package/dist/components/ic-page-header.js +7 -7
  285. package/dist/components/ic-pagination-item2.js +2 -2
  286. package/dist/components/ic-pagination.js +4 -4
  287. package/dist/components/ic-popover-menu.js +5 -5
  288. package/dist/components/ic-popover-menu.js.map +1 -1
  289. package/dist/components/ic-radio-group.js +15 -7
  290. package/dist/components/ic-radio-group.js.map +1 -1
  291. package/dist/components/ic-radio-option.js +6 -6
  292. package/dist/components/ic-radio-option.js.map +1 -1
  293. package/dist/components/ic-search-bar.js +10 -10
  294. package/dist/components/ic-search-bar.js.map +1 -1
  295. package/dist/components/ic-section-container2.js +2 -2
  296. package/dist/components/ic-select.js +21 -12
  297. package/dist/components/ic-select.js.map +1 -1
  298. package/dist/components/ic-side-navigation.js +5 -5
  299. package/dist/components/ic-skeleton.js +2 -2
  300. package/dist/components/ic-skip-link.js +2 -2
  301. package/dist/components/ic-status-tag.js +2 -2
  302. package/dist/components/ic-step.js +67 -54
  303. package/dist/components/ic-step.js.map +1 -1
  304. package/dist/components/ic-stepper.js +20 -2
  305. package/dist/components/ic-stepper.js.map +1 -1
  306. package/dist/components/ic-switch.js +5 -5
  307. package/dist/components/ic-tab-context.js +11 -2
  308. package/dist/components/ic-tab-context.js.map +1 -1
  309. package/dist/components/ic-tab-group.js +2 -2
  310. package/dist/components/ic-tab-panel.js +2 -2
  311. package/dist/components/ic-text-field.js +31 -21
  312. package/dist/components/ic-text-field.js.map +1 -1
  313. package/dist/components/ic-theme.js +3 -2
  314. package/dist/components/ic-theme.js.map +1 -1
  315. package/dist/components/ic-toast-region.js +1 -1
  316. package/dist/components/ic-toast.js +5 -4
  317. package/dist/components/ic-toast.js.map +1 -1
  318. package/dist/components/ic-toggle-button-group.js +2 -2
  319. package/dist/components/ic-toggle-button.js +3 -3
  320. package/dist/components/ic-toggle-button.js.map +1 -1
  321. package/dist/components/ic-tooltip2.js +6 -4
  322. package/dist/components/ic-tooltip2.js.map +1 -1
  323. package/dist/components/ic-top-navigation.js +1 -1
  324. package/dist/components/ic-typography2.js +2 -2
  325. package/dist/components/index.js +1 -0
  326. package/dist/components/index.js.map +1 -1
  327. package/dist/core/core.css +32 -4
  328. package/dist/core/core.esm.js +1 -1
  329. package/dist/core/core.esm.js.map +1 -1
  330. package/dist/core/index.esm.js +1 -1
  331. package/dist/core/p-0123dde7.entry.js +2 -0
  332. package/dist/core/p-0123dde7.entry.js.map +1 -0
  333. package/dist/core/p-01e018cb.entry.js +2 -0
  334. package/dist/core/{p-f309d3af.entry.js.map → p-01e018cb.entry.js.map} +1 -1
  335. package/dist/core/p-02af2b59.entry.js +2 -0
  336. package/dist/core/{p-ef4b5469.entry.js.map → p-02af2b59.entry.js.map} +1 -1
  337. package/dist/core/p-05036675.entry.js +2 -0
  338. package/dist/core/p-05036675.entry.js.map +1 -0
  339. package/dist/core/p-0c36ce84.entry.js +2 -0
  340. package/dist/core/{p-661ae402.entry.js.map → p-0c36ce84.entry.js.map} +1 -1
  341. package/dist/core/p-0ec76cff.entry.js +2 -0
  342. package/dist/core/{p-1d37ac1c.entry.js.map → p-0ec76cff.entry.js.map} +1 -1
  343. package/dist/core/p-13e093d0.entry.js +2 -0
  344. package/dist/core/{p-9eeb5e85.entry.js.map → p-13e093d0.entry.js.map} +1 -1
  345. package/dist/core/p-1423bd4a.entry.js +2 -0
  346. package/dist/core/{p-9f36791b.entry.js.map → p-1423bd4a.entry.js.map} +1 -1
  347. package/dist/core/p-2126d37b.entry.js +2 -0
  348. package/dist/core/{p-0c0c6a9e.entry.js.map → p-2126d37b.entry.js.map} +1 -1
  349. package/dist/core/p-228bc12d.entry.js +2 -0
  350. package/dist/core/{p-41f92698.entry.js.map → p-228bc12d.entry.js.map} +1 -1
  351. package/dist/core/p-25bef09d.entry.js +2 -0
  352. package/dist/core/{p-cf631191.entry.js.map → p-25bef09d.entry.js.map} +1 -1
  353. package/dist/core/p-27e67d45.entry.js +2 -0
  354. package/dist/core/{p-313a8a2f.entry.js.map → p-27e67d45.entry.js.map} +1 -1
  355. package/dist/core/p-2800fc30.entry.js +2 -0
  356. package/dist/core/{p-6ed0ac48.entry.js.map → p-2800fc30.entry.js.map} +1 -1
  357. package/dist/core/p-33582352.entry.js +2 -0
  358. package/dist/core/{p-317e005f.entry.js.map → p-33582352.entry.js.map} +1 -1
  359. package/dist/core/p-33789b23.entry.js +3 -0
  360. package/dist/core/p-33789b23.entry.js.map +1 -0
  361. package/dist/core/{p-287e5c17.entry.js → p-37d217b5.entry.js} +2 -2
  362. package/dist/core/{p-df88ff5b.entry.js → p-37daa8fe.entry.js} +2 -2
  363. package/dist/core/p-3e36f281.entry.js +2 -0
  364. package/dist/core/{p-711bfeed.entry.js.map → p-3e36f281.entry.js.map} +1 -1
  365. package/dist/core/p-45097448.entry.js +2 -0
  366. package/dist/core/{p-cbe0d1bb.entry.js.map → p-45097448.entry.js.map} +1 -1
  367. package/dist/core/{p-45dd12ee.entry.js → p-4747c39f.entry.js} +2 -2
  368. package/dist/core/p-4747c39f.entry.js.map +1 -0
  369. package/dist/core/{p-ffac41d6.entry.js → p-492fcb51.entry.js} +2 -2
  370. package/dist/core/p-514daffe.entry.js +2 -0
  371. package/dist/core/p-514daffe.entry.js.map +1 -0
  372. package/dist/core/p-54803e3b.entry.js +2 -0
  373. package/dist/core/{p-2f4f392f.entry.js.map → p-54803e3b.entry.js.map} +1 -1
  374. package/dist/core/{p-6e8ef73c.entry.js → p-57721431.entry.js} +2 -2
  375. package/dist/core/{p-5fbc8e62.entry.js → p-5fcfcfb6.entry.js} +2 -2
  376. package/dist/core/p-6058d4c9.entry.js +2 -0
  377. package/dist/core/{p-ea778379.entry.js.map → p-6058d4c9.entry.js.map} +1 -1
  378. package/dist/core/p-675bb3e4.entry.js +2 -0
  379. package/dist/core/{p-52748d5c.entry.js.map → p-675bb3e4.entry.js.map} +1 -1
  380. package/dist/core/p-6dbe70f1.entry.js +2 -0
  381. package/dist/core/{p-4ca782eb.entry.js.map → p-6dbe70f1.entry.js.map} +1 -1
  382. package/dist/core/p-6e139e6e.entry.js +2 -0
  383. package/dist/core/{p-0d680d19.entry.js.map → p-6e139e6e.entry.js.map} +1 -1
  384. package/dist/core/p-80317cd1.entry.js +2 -0
  385. package/dist/core/{p-9c013333.entry.js.map → p-80317cd1.entry.js.map} +1 -1
  386. package/dist/core/p-80e0f66e.entry.js +2 -0
  387. package/dist/core/{p-493eaabb.entry.js.map → p-80e0f66e.entry.js.map} +1 -1
  388. package/dist/core/p-813ad03c.entry.js +2 -0
  389. package/dist/core/{p-6a576a8b.entry.js.map → p-813ad03c.entry.js.map} +1 -1
  390. package/dist/core/p-8558b9b7.entry.js +2 -0
  391. package/dist/core/{p-21cf2beb.entry.js.map → p-8558b9b7.entry.js.map} +1 -1
  392. package/dist/core/p-8684efeb.entry.js +2 -0
  393. package/dist/core/{p-fc3b1155.entry.js.map → p-8684efeb.entry.js.map} +1 -1
  394. package/dist/core/p-8b99a806.entry.js +2 -0
  395. package/dist/core/{p-8a4b12e4.entry.js.map → p-8b99a806.entry.js.map} +1 -1
  396. package/dist/core/p-93479c36.entry.js +2 -0
  397. package/dist/core/{p-19cf2327.entry.js.map → p-93479c36.entry.js.map} +1 -1
  398. package/dist/core/p-95d3d1a7.entry.js +2 -0
  399. package/dist/core/{p-6014ab64.entry.js.map → p-95d3d1a7.entry.js.map} +1 -1
  400. package/dist/core/p-99793b64.entry.js +2 -0
  401. package/dist/core/p-99793b64.entry.js.map +1 -0
  402. package/dist/core/{p-ea061ccf.entry.js → p-9a8bcb78.entry.js} +2 -2
  403. package/dist/core/{p-8b5022bc.entry.js → p-9cf6ccfd.entry.js} +2 -2
  404. package/dist/core/p-a06c1e4e.entry.js +2 -0
  405. package/dist/core/{p-f6a02202.entry.js.map → p-a06c1e4e.entry.js.map} +1 -1
  406. package/dist/core/p-a1857d24.entry.js +2 -0
  407. package/dist/core/p-a1857d24.entry.js.map +1 -0
  408. package/dist/core/p-a1e2e029.entry.js +2 -0
  409. package/dist/core/{p-a77364f5.entry.js.map → p-a1e2e029.entry.js.map} +1 -1
  410. package/dist/core/p-abd88929.entry.js +2 -0
  411. package/dist/core/{p-af9c391d.entry.js.map → p-abd88929.entry.js.map} +1 -1
  412. package/dist/core/p-b0376079.entry.js +2 -0
  413. package/dist/core/{p-41ef74a7.entry.js.map → p-b0376079.entry.js.map} +1 -1
  414. package/dist/core/p-b1838ad8.entry.js +2 -0
  415. package/dist/core/p-b1838ad8.entry.js.map +1 -0
  416. package/dist/core/{p-999f0a5d.entry.js → p-b4a2f6fa.entry.js} +2 -2
  417. package/dist/core/p-b57e59b7.js +2 -0
  418. package/dist/core/p-b57e59b7.js.map +1 -0
  419. package/dist/core/p-b9bdd9a9.entry.js +2 -0
  420. package/dist/core/p-b9bdd9a9.entry.js.map +1 -0
  421. package/dist/core/p-bddf799a.js +2 -0
  422. package/dist/core/p-bddf799a.js.map +1 -0
  423. package/dist/core/p-c04e1fab.entry.js +2 -0
  424. package/dist/core/{p-1e2f40b0.entry.js.map → p-c04e1fab.entry.js.map} +1 -1
  425. package/dist/core/p-c2d5e301.entry.js +2 -0
  426. package/dist/core/p-c2d5e301.entry.js.map +1 -0
  427. package/dist/core/p-c975cced.entry.js +2 -0
  428. package/dist/core/{p-15dbccc2.entry.js.map → p-c975cced.entry.js.map} +1 -1
  429. package/dist/core/p-cc00cbce.entry.js +2 -0
  430. package/dist/core/p-cc00cbce.entry.js.map +1 -0
  431. package/dist/core/p-cf868a24.entry.js +2 -0
  432. package/dist/core/p-cf868a24.entry.js.map +1 -0
  433. package/dist/core/p-d58ad080.entry.js +2 -0
  434. package/dist/core/{p-b52000d9.entry.js.map → p-d58ad080.entry.js.map} +1 -1
  435. package/dist/core/p-de32a223.entry.js +2 -0
  436. package/dist/core/{p-43324339.entry.js.map → p-de32a223.entry.js.map} +1 -1
  437. package/dist/core/p-e6dacbe2.entry.js +2 -0
  438. package/dist/core/{p-b0d488d0.entry.js.map → p-e6dacbe2.entry.js.map} +1 -1
  439. package/dist/core/p-e9d28e02.entry.js +2 -0
  440. package/dist/core/p-e9d28e02.entry.js.map +1 -0
  441. package/dist/core/p-ea06792a.entry.js +2 -0
  442. package/dist/core/{p-72a9909c.entry.js.map → p-ea06792a.entry.js.map} +1 -1
  443. package/dist/core/p-eb0e7153.entry.js +2 -0
  444. package/dist/core/{p-3dc54847.entry.js.map → p-eb0e7153.entry.js.map} +1 -1
  445. package/dist/core/p-f609ca37.entry.js +2 -0
  446. package/dist/core/{p-9323c234.entry.js.map → p-f609ca37.entry.js.map} +1 -1
  447. package/dist/core/p-fb69fbc0.entry.js +2 -0
  448. package/dist/core/{p-7cd4f6a6.entry.js.map → p-fb69fbc0.entry.js.map} +1 -1
  449. package/dist/core/p-fb734a59.entry.js +2 -0
  450. package/dist/core/p-fb734a59.entry.js.map +1 -0
  451. package/dist/esm/constants-7960cba4.js +177 -0
  452. package/dist/esm/constants-7960cba4.js.map +1 -0
  453. package/dist/esm/core.js +1 -1
  454. package/dist/esm/{helpers-56631aa0.js → helpers-4ddac6ed.js} +3 -175
  455. package/dist/esm/helpers-4ddac6ed.js.map +1 -0
  456. package/dist/esm/ic-accordion-group.entry.js +2 -1
  457. package/dist/esm/ic-accordion-group.entry.js.map +1 -1
  458. package/dist/esm/ic-accordion.entry.js +2 -1
  459. package/dist/esm/ic-accordion.entry.js.map +1 -1
  460. package/dist/esm/ic-action-chip.entry.js +2 -1
  461. package/dist/esm/ic-action-chip.entry.js.map +1 -1
  462. package/dist/esm/ic-alert.entry.js +3 -2
  463. package/dist/esm/ic-alert.entry.js.map +1 -1
  464. package/dist/esm/ic-back-to-top.entry.js +2 -1
  465. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  466. package/dist/esm/ic-badge.entry.js +2 -1
  467. package/dist/esm/ic-badge.entry.js.map +1 -1
  468. package/dist/esm/ic-breadcrumb-group.entry.js +2 -1
  469. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  470. package/dist/esm/ic-breadcrumb.entry.js +2 -1
  471. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  472. package/dist/esm/ic-button_3.entry.js +25 -18
  473. package/dist/esm/ic-button_3.entry.js.map +1 -1
  474. package/dist/esm/ic-card-vertical.entry.js +2 -1
  475. package/dist/esm/ic-card-vertical.entry.js.map +1 -1
  476. package/dist/esm/ic-checkbox-group.entry.js +8 -4
  477. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  478. package/dist/esm/ic-checkbox.entry.js +5 -4
  479. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  480. package/dist/esm/ic-chip.entry.js +7 -5
  481. package/dist/esm/ic-chip.entry.js.map +1 -1
  482. package/dist/esm/ic-data-list.entry.js +2 -2
  483. package/dist/esm/ic-data-row.entry.js +4 -3
  484. package/dist/esm/ic-data-row.entry.js.map +1 -1
  485. package/dist/esm/ic-dialog.entry.js +7 -4
  486. package/dist/esm/ic-dialog.entry.js.map +1 -1
  487. package/dist/esm/ic-divider.entry.js +2 -1
  488. package/dist/esm/ic-divider.entry.js.map +1 -1
  489. package/dist/esm/ic-empty-state.entry.js +4 -3
  490. package/dist/esm/ic-empty-state.entry.js.map +1 -1
  491. package/dist/esm/ic-footer-link-group.entry.js +2 -1
  492. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  493. package/dist/esm/ic-footer-link.entry.js +4 -3
  494. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  495. package/dist/esm/ic-footer.entry.js +2 -1
  496. package/dist/esm/ic-footer.entry.js.map +1 -1
  497. package/dist/esm/ic-hero.entry.js +6 -5
  498. package/dist/esm/ic-hero.entry.js.map +1 -1
  499. package/dist/esm/ic-horizontal-scroll.entry.js +7 -6
  500. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  501. package/dist/esm/ic-input-component-container_3.entry.js +1388 -12
  502. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  503. package/dist/esm/ic-input-label_2.entry.js +24 -9
  504. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  505. package/dist/esm/ic-layout-grid-item.entry.js +2 -2
  506. package/dist/esm/ic-layout-grid.entry.js +2 -2
  507. package/dist/esm/ic-link.entry.js +3 -2
  508. package/dist/esm/ic-link.entry.js.map +1 -1
  509. package/dist/esm/ic-menu-group.entry.js +3 -2
  510. package/dist/esm/ic-menu-group.entry.js.map +1 -1
  511. package/dist/esm/ic-menu-item.entry.js +2 -1
  512. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  513. package/dist/esm/ic-navigation-button.entry.js +2 -1
  514. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  515. package/dist/esm/ic-navigation-group.entry.js +3 -2
  516. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  517. package/dist/esm/ic-navigation-item.entry.js +2 -1
  518. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  519. package/dist/esm/ic-navigation-menu.entry.js +6 -5
  520. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  521. package/dist/esm/ic-page-header.entry.js +8 -7
  522. package/dist/esm/ic-page-header.entry.js.map +1 -1
  523. package/dist/esm/ic-pagination-item.entry.js +3 -2
  524. package/dist/esm/ic-pagination-item.entry.js.map +1 -1
  525. package/dist/esm/ic-pagination.entry.js +6 -5
  526. package/dist/esm/ic-pagination.entry.js.map +1 -1
  527. package/dist/esm/ic-popover-menu.entry.js +6 -5
  528. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  529. package/dist/esm/ic-radio-group.entry.js +15 -7
  530. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  531. package/dist/esm/ic-radio-option.entry.js +7 -6
  532. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  533. package/dist/esm/ic-search-bar.entry.js +11 -10
  534. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  535. package/dist/esm/ic-section-container.entry.js +2 -2
  536. package/dist/esm/ic-select.entry.js +20 -12
  537. package/dist/esm/ic-select.entry.js.map +1 -1
  538. package/dist/esm/ic-side-navigation.entry.js +6 -5
  539. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  540. package/dist/esm/ic-skeleton.entry.js +2 -2
  541. package/dist/esm/ic-skip-link.entry.js +2 -2
  542. package/dist/esm/ic-status-tag.entry.js +4 -3
  543. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  544. package/dist/esm/ic-step.entry.js +67 -54
  545. package/dist/esm/ic-step.entry.js.map +1 -1
  546. package/dist/esm/ic-stepper.entry.js +21 -3
  547. package/dist/esm/ic-stepper.entry.js.map +1 -1
  548. package/dist/esm/ic-switch.entry.js +6 -5
  549. package/dist/esm/ic-switch.entry.js.map +1 -1
  550. package/dist/esm/ic-tab-context.entry.js +10 -2
  551. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  552. package/dist/esm/ic-tab-group.entry.js +4 -3
  553. package/dist/esm/ic-tab-group.entry.js.map +1 -1
  554. package/dist/esm/ic-tab-panel.entry.js +2 -2
  555. package/dist/esm/ic-tab.entry.js +2 -1
  556. package/dist/esm/ic-tab.entry.js.map +1 -1
  557. package/dist/esm/ic-text-field.entry.js +30 -21
  558. package/dist/esm/ic-text-field.entry.js.map +1 -1
  559. package/dist/esm/ic-theme.entry.js +3 -2
  560. package/dist/esm/ic-theme.entry.js.map +1 -1
  561. package/dist/esm/ic-toast-region.entry.js +1 -1
  562. package/dist/esm/ic-toast.entry.js +5 -4
  563. package/dist/esm/ic-toast.entry.js.map +1 -1
  564. package/dist/esm/ic-toggle-button-group.entry.js +4 -3
  565. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  566. package/dist/esm/ic-toggle-button.entry.js +4 -3
  567. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  568. package/dist/esm/ic-top-navigation.entry.js +2 -1
  569. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  570. package/dist/esm/ic-typography.entry.js +4 -3
  571. package/dist/esm/ic-typography.entry.js.map +1 -1
  572. package/dist/esm/index.js +1 -1
  573. package/dist/esm/loader.js +1 -1
  574. package/dist/types/components/ic-button/ic-button.d.ts +1 -0
  575. package/dist/types/components/ic-dialog/ic-dialog.d.ts +1 -0
  576. package/dist/types/components/ic-input-validation/ic-input-validation.d.ts +4 -3
  577. package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +6 -2
  578. package/dist/types/components/ic-select/ic-select.d.ts +5 -1
  579. package/dist/types/components/ic-select/test/a11y/ic-select.test.a11y.d.ts +1 -0
  580. package/dist/types/components/ic-step/ic-step.d.ts +5 -1
  581. package/dist/types/components/ic-step/ic-step.types.d.ts +10 -0
  582. package/dist/types/components/ic-stepper/ic-stepper.d.ts +5 -1
  583. package/dist/types/components/ic-tab-context/ic-tab-context.d.ts +4 -0
  584. package/dist/types/components/ic-text-field/ic-text-field.d.ts +6 -1
  585. package/dist/types/components.d.ts +51 -9
  586. package/dist/types/index.d.ts +1 -0
  587. package/dist/types/interface.d.ts +0 -1
  588. package/dist/types/utils/common-helpers.d.ts +2 -0
  589. package/dist/types/utils/constants.d.ts +1 -0
  590. package/dist/types/utils/types.d.ts +2 -0
  591. package/hydrate/index.js +1721 -254
  592. package/hydrate/index.mjs +1721 -254
  593. package/package.json +5 -4
  594. package/vscode-data.json +51 -0
  595. package/dist/cjs/helpers-a0e78e2e.js.map +0 -1
  596. package/dist/collection/components/ic-input-validation/ic-input-validation.types.js +0 -2
  597. package/dist/collection/components/ic-input-validation/ic-input-validation.types.js.map +0 -1
  598. package/dist/core/p-0c0c6a9e.entry.js +0 -2
  599. package/dist/core/p-0d680d19.entry.js +0 -2
  600. package/dist/core/p-15dbccc2.entry.js +0 -2
  601. package/dist/core/p-19cf2327.entry.js +0 -2
  602. package/dist/core/p-1d37ac1c.entry.js +0 -2
  603. package/dist/core/p-1e2f40b0.entry.js +0 -2
  604. package/dist/core/p-21cf2beb.entry.js +0 -2
  605. package/dist/core/p-25007ec9.js +0 -2
  606. package/dist/core/p-25007ec9.js.map +0 -1
  607. package/dist/core/p-28efe829.entry.js +0 -2
  608. package/dist/core/p-28efe829.entry.js.map +0 -1
  609. package/dist/core/p-2f4f392f.entry.js +0 -2
  610. package/dist/core/p-313a8a2f.entry.js +0 -2
  611. package/dist/core/p-317e005f.entry.js +0 -2
  612. package/dist/core/p-3dc54847.entry.js +0 -2
  613. package/dist/core/p-3e5d7a3d.entry.js +0 -2
  614. package/dist/core/p-3e5d7a3d.entry.js.map +0 -1
  615. package/dist/core/p-41ef74a7.entry.js +0 -2
  616. package/dist/core/p-41f92698.entry.js +0 -2
  617. package/dist/core/p-43324339.entry.js +0 -2
  618. package/dist/core/p-45dd12ee.entry.js.map +0 -1
  619. package/dist/core/p-47f6dac2.entry.js +0 -2
  620. package/dist/core/p-47f6dac2.entry.js.map +0 -1
  621. package/dist/core/p-493eaabb.entry.js +0 -2
  622. package/dist/core/p-4ca782eb.entry.js +0 -2
  623. package/dist/core/p-4d1a3036.entry.js +0 -2
  624. package/dist/core/p-4d1a3036.entry.js.map +0 -1
  625. package/dist/core/p-52748d5c.entry.js +0 -2
  626. package/dist/core/p-595a4d06.entry.js +0 -2
  627. package/dist/core/p-595a4d06.entry.js.map +0 -1
  628. package/dist/core/p-5f68f62b.entry.js +0 -2
  629. package/dist/core/p-5f68f62b.entry.js.map +0 -1
  630. package/dist/core/p-6014ab64.entry.js +0 -2
  631. package/dist/core/p-661ae402.entry.js +0 -2
  632. package/dist/core/p-6a576a8b.entry.js +0 -2
  633. package/dist/core/p-6ed0ac48.entry.js +0 -2
  634. package/dist/core/p-711bfeed.entry.js +0 -2
  635. package/dist/core/p-72a9909c.entry.js +0 -2
  636. package/dist/core/p-742a9181.entry.js +0 -2
  637. package/dist/core/p-742a9181.entry.js.map +0 -1
  638. package/dist/core/p-7cd4f6a6.entry.js +0 -2
  639. package/dist/core/p-8a4b12e4.entry.js +0 -2
  640. package/dist/core/p-9323c234.entry.js +0 -2
  641. package/dist/core/p-97b93ddf.entry.js +0 -2
  642. package/dist/core/p-97b93ddf.entry.js.map +0 -1
  643. package/dist/core/p-9c013333.entry.js +0 -2
  644. package/dist/core/p-9eeb5e85.entry.js +0 -2
  645. package/dist/core/p-9f36791b.entry.js +0 -2
  646. package/dist/core/p-a602a8e1.entry.js +0 -2
  647. package/dist/core/p-a602a8e1.entry.js.map +0 -1
  648. package/dist/core/p-a77364f5.entry.js +0 -2
  649. package/dist/core/p-af9c391d.entry.js +0 -2
  650. package/dist/core/p-b0d488d0.entry.js +0 -2
  651. package/dist/core/p-b52000d9.entry.js +0 -2
  652. package/dist/core/p-bb4ce810.entry.js +0 -2
  653. package/dist/core/p-bb4ce810.entry.js.map +0 -1
  654. package/dist/core/p-cbe0d1bb.entry.js +0 -2
  655. package/dist/core/p-ceea1712.entry.js +0 -2
  656. package/dist/core/p-ceea1712.entry.js.map +0 -1
  657. package/dist/core/p-cf631191.entry.js +0 -2
  658. package/dist/core/p-e652ab09.entry.js +0 -2
  659. package/dist/core/p-e652ab09.entry.js.map +0 -1
  660. package/dist/core/p-e876e47c.entry.js +0 -2
  661. package/dist/core/p-e876e47c.entry.js.map +0 -1
  662. package/dist/core/p-ea778379.entry.js +0 -2
  663. package/dist/core/p-ef4b5469.entry.js +0 -2
  664. package/dist/core/p-f309d3af.entry.js +0 -2
  665. package/dist/core/p-f6a02202.entry.js +0 -2
  666. package/dist/core/p-fc3b1155.entry.js +0 -2
  667. package/dist/esm/helpers-56631aa0.js.map +0 -1
  668. package/dist/types/components/ic-input-validation/ic-input-validation.types.d.ts +0 -1
  669. /package/dist/core/{p-287e5c17.entry.js.map → p-37d217b5.entry.js.map} +0 -0
  670. /package/dist/core/{p-df88ff5b.entry.js.map → p-37daa8fe.entry.js.map} +0 -0
  671. /package/dist/core/{p-ffac41d6.entry.js.map → p-492fcb51.entry.js.map} +0 -0
  672. /package/dist/core/{p-6e8ef73c.entry.js.map → p-57721431.entry.js.map} +0 -0
  673. /package/dist/core/{p-5fbc8e62.entry.js.map → p-5fcfcfb6.entry.js.map} +0 -0
  674. /package/dist/core/{p-ea061ccf.entry.js.map → p-9a8bcb78.entry.js.map} +0 -0
  675. /package/dist/core/{p-8b5022bc.entry.js.map → p-9cf6ccfd.entry.js.map} +0 -0
  676. /package/dist/core/{p-999f0a5d.entry.js.map → p-b4a2f6fa.entry.js.map} +0 -0
@@ -0,0 +1,2 @@
1
+ import{r as t,c as o,f as i,h as r,H as n,g as a,F as e}from"./p-8e4e97b4.js";import{C as c,r as s,w as d,U as u,j as b,I as l,i as h,o as m}from"./p-b57e59b7.js";import{I as v}from"./p-bddf799a.js";import{c as p}from"./p-68a5aaff.js";const g=`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M7 9.5L12 14.5L17 9.5H7Z" fill="currentColor"/>\n</svg>`;const y='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:inline-block;position:relative;--icon-width:100%;--icon-height:100%}.button,::slotted(a){font-family:var(--ic-font-body-family);text-decoration:none;font-weight:600;font-size:0.875rem;transition:var(--ic-easing-transition-fast);border-radius:var(--ic-border-radius);min-width:var(--min-width, 6.25rem);display:inline-flex;flex-direction:row;justify-content:center;align-items:center;background:none;border:none;box-sizing:border-box;white-space:nowrap;vertical-align:middle}:host(.with-badge) .button{border-radius:0.2188rem}.button:hover,::slotted(a:hover){cursor:pointer}.button:focus,::slotted(a:focus){box-shadow:var(--ic-border-focus)}.button:focus-visible,::slotted(a:focus-visible){outline:var(--ic-hc-focus-outline)}:host(.ic-button-disabled),:host(.ic-button-disabled) .button,:host(.ic-button-disabled) ::slotted(a),:host(.ic-button-loading),:host(.ic-button-loading) .button{pointer-events:none}:host(.top-icon) .button{flex-direction:column;--height:fit-content}:host(.top-icon) .button .icon-container{margin-right:0}:host(.ic-button-variant-primary) .button,:host(.ic-button-variant-icon-primary) .button{color:var(--ic-button-primary-text);background-color:var(--ic-button-primary-background)}:host(.ic-button-variant-primary:not(.ic-button-disabled)) ::slotted(svg){color:var(--ic-button-primary-icon)}:host(.ic-button-variant-primary) ::slotted(a),:host(.ic-button-variant-icon-primary) ::slotted(a){--ic-typography-color:var(--ic-button-primary-text);color:var(--ic-button-primary-text);background-color:var(--ic-button-primary-background) !important}:host(.ic-button-variant-primary) .button:hover,:host(.ic-button-variant-icon-primary) .button:hover{background-color:var(--ic-button-primary-background-hover)}:host(.ic-button-variant-primary) ::slotted(a:hover),:host(.ic-button-variant-icon-primary) ::slotted(a:hover){background-color:var(--ic-button-primary-background-hover) !important}:host(.ic-button-variant-primary.ic-button-loading) .button,:host(.ic-button-variant-primary) .button:active,:host(.ic-button-variant-icon-primary.ic-button-loading) .button,:host(.ic-button-variant-icon-primary) .button:active{background-color:var(--ic-button-primary-background-pressed);--button-loading-inner-color:var(--ic-button-primary-text);--button-loading-outer-color:var(--ic-button-primary-background-pressed)}:host(.ic-button-variant-primary) ::slotted(a:active),:host(.ic-button-variant-icon-primary) ::slotted(a:active){background-color:var(--ic-button-primary-background-pressed) !important}:host(.ic-button-variant-primary.ic-button-disabled) .button,:host(.ic-button-variant-icon-primary.ic-button-disabled) .button{background:var(--ic-button-primary-background-disabled);color:var(--ic-button-primary-text-disabled)}:host(.ic-button-variant-primary.ic-button-disabled) ::slotted(a),:host(.ic-button-variant-icon-primary.ic-button-disabled) ::slotted(a){background:var(--ic-button-primary-background-disabled) !important;--ic-typography-color:var(--ic-button-primary-text-disabled) !important;color:var(--ic-button-primary-text-disabled) !important}:host(.ic-button-variant-primary.monochrome) .button,:host(.ic-button-variant-icon-primary.monochrome) .button{color:var(--ic-button-primary-text-monochrome);background-color:var(--ic-button-primary-background-monochrome)}:host(.ic-button-variant-primary.monochrome) ::slotted(a),:host(.ic-button-variant-icon-primary.monochrome) ::slotted(a){background-color:var(--ic-button-primary-background-monochrome) !important}:host(.ic-button-variant-primary.monochrome) .button:hover,:host(.ic-button-variant-icon-primary.monochrome) .button:hover{background-color:var(--ic-button-primary-background-hover-monochrome)}:host(.ic-button-variant-primary.monochrome) ::slotted(a:hover),:host(.ic-button-variant-icon-primary.monochrome) ::slotted(a:hover){background-color:var(\n --ic-button-primary-background-hover-monochrome\n ) !important}:host(.ic-button-variant-primary.ic-button-loading.monochrome) .button,:host(.ic-button-variant-primary.monochrome) .button:active,:host(.ic-button-variant-icon-primary.ic-button-loading.monochrome) .button,:host(.ic-button-variant-icon-primary.monochrome) .button:active{background-color:var(--ic-button-primary-background-pressed-monochrome);--button-loading-inner-color:var(--ic-button-primary-text-monochrome);--button-loading-outer-color:var(--ic-button-primary-background-monochrome)}:host(.ic-button-variant-primary.monochrome) ::slotted(a:active),:host(.ic-button-variant-icon-primary.monochrome) ::slotted(a:active){background-color:var(\n --ic-button-primary-background-pressed-monochrome\n ) !important}:host(.ic-button-variant-primary.ic-button-disabled.monochrome) .button,:host(.ic-button-variant-icon-primary.ic-button-disabled.monochrome) .button{background-color:var(--ic-button-primary-background-disabled-monochrome);color:var(--ic-button-primary-text-disabled-monochrome)}:host(.ic-button-variant-primary.ic-button-disabled.monochrome) ::slotted(a),:host(.ic-button-variant-icon-primary.ic-button-disabled.monochrome) ::slotted(a){background-color:var(\n --ic-button-primary-background-disabled-monochrome\n ) !important}:host(.ic-button-variant-secondary) .button,:host(.ic-button-variant-icon-secondary) .button{border:var(--ic-border-width) solid var(--ic-button-secondary-border);color:var(--ic-button-secondary-text)}:host(.ic-button-variant-secondary) ::slotted(a),:host(.ic-button-variant-icon-secondary) ::slotted(a){border:var(--ic-border-width) solid var(--ic-button-secondary-border) !important;color:var(--ic-button-secondary-text) !important;--ic-typography-color:var(--ic-button-secondary-text) !important}:host(.ic-button-variant-secondary) .button:hover,:host(.ic-button-variant-icon-secondary) .button:hover{background-color:var(--ic-button-secondary-background-hover-active);border-color:var(--ic-button-secondary-border-hover);color:var(--ic-button-secondary-text-hover-active)}:host(.ic-button-variant-secondary) ::slotted(a:hover),:host(.ic-button-variant-icon-secondary) ::slotted(a:hover){background-color:var(\n --ic-button-secondary-background-hover-active\n ) !important}:host(.ic-button-variant-secondary) .button:active,:host(.ic-button-variant-icon-secondary) .button:active{border-color:var(--ic-button-secondary-border-pressed);background-color:var(--ic-button-secondary-background-pressed-active);color:var(--ic-button-secondary-text-pressed-active)}:host(.ic-button-variant-secondary) ::slotted(a:active),:host(.ic-button-variant-icon-secondary) ::slotted(a:active){background-color:var(\n --ic-button-secondary-background-pressed-active\n ) !important}:host(.ic-button-variant-secondary.ic-button-loading) .button,:host(.ic-button-variant-icon-secondary.ic-button-loading) .button{border-color:var(--ic-button-secondary-border-pressed);background-color:var(\n --loading-button-background,\n var(--ic-button-secondary-background-pressed-active)\n ) !important;color:var(--ic-button-secondary-text-pressed-active);--button-loading-inner-color:var(--ic-button-secondary-border-pressed);--button-loading-outer-color:var(\n --ic-button-secondary-background-pressed-active\n )}:host(.ic-button-variant-secondary.ic-button-disabled) .button,:host(.ic-button-variant-icon-secondary.ic-button-disabled) .button{border-color:var(--ic-button-secondary-border-disabled);color:var(--ic-button-secondary-text-disabled);background:none}:host(.ic-button-variant-secondary.ic-button-disabled) ::slotted(a),:host(.ic-button-variant-icon-secondary.ic-button-disabled) ::slotted(a){background:none !important}:host(.ic-button-variant-secondary.background) .button,:host(.ic-button-variant-icon-secondary.background) .button{background-color:var(--ic-button-secondary-background)}:host(.ic-button-variant-secondary.background) ::slotted(a),:host(.ic-button-variant-icon-secondary.background) ::slotted(a){background-color:var(--ic-button-secondary-background) !important}:host(.ic-button-variant-secondary.background) .button:hover,:host(.ic-button-variant-icon-secondary.background) .button:hover{background-image:var(--ic-button-secondary-background-non-transparent-hover)}:host(.ic-button-variant-secondary.background) ::slotted(a:hover),:host(.ic-button-variant-icon-secondary.background) ::slotted(a:hover){background-image:var(\n --ic-button-secondary-background-non-transparent-hover\n ) !important}:host(.ic-button-variant-secondary.background) .button:active,:host(.ic-button-variant-icon-secondary.background) .button:active{background-image:var(\n --ic-button-secondary-background-non-transparent-active\n )}:host(.ic-button-variant-secondary.background) ::slotted(a:active),:host(.ic-button-variant-icon-secondary.background) ::slotted(a:active){background-image:var(\n --ic-button-secondary-background-non-transparent-active\n ) !important}:host(.ic-button-variant-secondary.monochrome) .button,:host(.ic-button-variant-icon-secondary.monochrome) .button{background-color:none;border:var(--ic-border-width) solid\n var(--ic-button-secondary-border-monochrome);color:var(--ic-button-secondary-text-monochrome)}:host(.ic-button-variant-secondary.monochrome) ::slotted(a),:host(.ic-button-variant-icon-secondary.monochrome) ::slotted(a){background-color:none !important}:host(.ic-button-variant-secondary.monochrome) .button:hover,:host(.ic-button-variant-icon-secondary.monochrome) .button:hover{background-color:var(--ic-button-secondary-background-hover-monochrome);border-color:var(--ic-button-secondary-border-hover-monochrome);color:var(--ic-button-secondary-text-hover-monochrome)}:host(.ic-button-variant-secondary.monochrome) ::slotted(a:hover),:host(.ic-button-variant-icon-secondary.monochrome) ::slotted(a:hover){background-color:var(\n --ic-button-secondary-background-hover-monochrome\n ) !important}:host(.ic-button-variant-secondary.monochrome) .button:active,:host(.ic-button-variant-icon-secondary.monochrome) .button:active{background-color:var(--ic-button-secondary-background-pressed-monochrome);border-color:var(--ic-button-secondary-border-pressed-monochrome);color:var(--ic-button-secondary-text-pressed-monochrome)}:host(.ic-button-variant-secondary.monochrome) ::slotted(a:active),:host(.ic-button-variant-icon-secondary.monochrome) ::slotted(a:active){background-color:var(\n --ic-button-secondary-background-pressed-monochrome\n ) !important}:host(.ic-button-variant-secondary.ic-button-loading.monochrome) .button,:host(.ic-button-variant-icon-secondary.ic-button-loading.monochrome) .button{background-color:var(\n --ic-button-secondary-background-pressed-monochrome\n ) !important;border-color:var(--ic-button-secondary-border-pressed-monochrome);color:var(--ic-button-secondary-text-pressed-monochrome);--button-loading-inner-color:var(\n --ic-button-secondary-text-pressed-monochrome\n );--button-loading-outer-color:var(\n --ic-button-secondary-background-pressed-monochrome\n )}:host(.ic-button-variant-secondary.ic-button-disabled.monochrome) .button,:host(.ic-button-variant-icon-secondary.ic-button-disabled.monochrome) .button{background:none;border-color:var(--ic-button-secondary-border-disabled-monochrome);color:var(--ic-button-secondary-text-disabled-monochrome)}:host(.ic-button-variant-secondary.ic-button-disabled.monochrome) ::slotted(a),:host(.ic-button-variant-icon-secondary.ic-button-disabled.monochrome) ::slotted(a){background:none !important}:host(.ic-button-variant-secondary.background.monochrome) .button,:host(.ic-button-variant-icon-secondary.background.monochrome) .button{background-color:var(--ic-button-secondary-background-monochrome)}:host(.ic-button-variant-secondary.background.monochrome) ::slotted(a),:host(.ic-button-variant-icon-secondary.background.monochrome) ::slotted(a){background-color:var(--ic-button-secondary-background-monochrome) !important}:host(.ic-button-variant-secondary.background.monochrome) .button:hover,:host(.ic-button-variant-icon-secondary.background.monochrome) .button:hover{background-image:var(\n --ic-button-secondary-background-non-transparent-monochrome-hover\n )}:host(.ic-button-variant-secondary.background.monochrome) ::slotted(a:hover),:host(.ic-button-variant-icon-secondary.background.monochrome) ::slotted(a:hover){background-image:var(\n --ic-button-secondary-background-non-transparent-monochrome-hover\n ) !important}:host(.ic-button-variant-secondary.background.monochrome) .button:active,:host(.ic-button-variant-icon-secondary.background.monochrome) .button:active{background-image:var(\n --ic-button-secondary-background-non-transparent-monochrome-active\n )}:host(.ic-button-variant-secondary.background.monochrome) ::slotted(a:active),:host(.ic-button-variant-icon-secondary.background.monochrome) ::slotted(a:active){background-image:var(\n --ic-button-secondary-background-non-transparent-monochrome-active\n ) !important}:host(.ic-button-variant-tertiary) .button,:host(.ic-button-variant-icon-tertiary) .button,:host(.ic-button-variant-tertiary) ::slotted(a),:host(.ic-button-variant-icon-tertiary) ::slotted(a){color:var(--ic-button-tertiary-text-active);--ic-typography-color:var(--ic-button-tertiary-text-active)}:host(.ic-button-variant-tertiary) .button:hover,:host(.ic-button-variant-icon-tertiary) .button:hover{background-color:var(--ic-button-tertiary-background-hover-active);color:var(--ic-button-tertiary-text-hover-active)}:host(.ic-button-variant-tertiary) ::slotted(a:hover),:host(.ic-button-variant-icon-tertiary) ::slotted(a:hover){background-color:var(\n --ic-button-tertiary-background-hover-active\n ) !important}:host(.ic-button-variant-tertiary) .button:active,:host(.ic-button-variant-tertiary.ic-button-loading) .button,:host(.ic-button-variant-icon-tertiary) .button:active,:host(.ic-button-variant-icon-tertiary.ic-button-loading) .button{background-color:var(--ic-button-tertiary-background-pressed-active);color:var(--ic-button-tertiary-text-pressed-active);--button-loading-inner-color:var(--ic-button-tertiary-text-pressed-active);--button-loading-outer-color:var(--ic-button-tertiary-background-pressed)}:host(.ic-button-variant-tertiary) ::slotted(a:active),:host(.ic-button-variant-icon-tertiary) ::slotted(a:active){background-color:var(\n --ic-button-tertiary-background-pressed-active\n ) !important}:host(.ic-button-variant-tertiary.ic-button-disabled) .button,:host(.ic-button-variant-icon-tertiary.ic-button-disabled) .button{color:var(--ic-button-tertiary-text-disabled);background:none}:host(.ic-button-variant-tertiary.ic-button-disabled) ::slotted(a),:host(.ic-button-variant-icon-tertiary.ic-button-disabled) ::slotted(a){background:none !important}:host(.ic-button-variant-tertiary.background) .button,:host(.ic-button-variant-icon-tertiary.background) .button{background-color:var(--ic-button-tertiary-background)}:host(.ic-button-variant-tertiary.background) ::slotted(a),:host(.ic-button-variant-icon-tertiary.background) ::slotted(a){background-color:var(--ic-button-tertiary-background) !important}:host(.ic-button-variant-tertiary.background) .button:hover,:host(.ic-button-variant-icon-tertiary.background) .button:hover{background-image:var(--ic-button-tertiary-background-non-transparent-hover)}:host(.ic-button-variant-tertiary.background) ::slotted(a:hover),:host(.ic-button-variant-icon-tertiary.background) ::slotted(a:hover){background-image:var(\n --ic-button-tertiary-background-non-transparent-hover\n ) !important}:host(.ic-button-variant-tertiary.background) .button:active,:host(.ic-button-variant-icon-tertiary.background) .button:active{background-image:var(--ic-button-tertiary-background-non-transparent-active)}:host(.ic-button-variant-tertiary.background) ::slotted(a:active),:host(.ic-button-variant-icon-tertiary.background) ::slotted(a:active){background-image:var(\n --ic-button-tertiary-background-non-transparent-active\n ) !important}:host(.ic-button-variant-tertiary.monochrome) .button,:host(.ic-button-variant-tertiary.monochrome) ::slotted(a),:host(.ic-button-variant-icon-tertiary.monochrome) .button,:host(.ic-button-variant-icon-tertiary.monochrome) ::slotted(a){color:var(--ic-button-tertiary-text-monochrome);--ic-typography-color:var(--ic-button-tertiary-text-monochrome)}:host(.ic-button-variant-tertiary.monochrome) .button:hover,:host(.ic-button-variant-icon-tertiary.monochrome) .button:hover{background-color:var(--ic-button-tertiary-background-hover-monochrome);color:var(--ic-button-tertiary-text-hover-monochrome)}:host(.ic-button-variant-tertiary.monochrome) ::slotted(a:hover),:host(.ic-button-variant-icon-tertiary.monochrome) ::slotted(a:hover){background-color:var(\n --ic-button-tertiary-background-hover-monochrome\n ) !important}:host(.ic-button-variant-tertiary.monochrome) .button:active,:host(.ic-button-variant-tertiary.ic-button-loading.monochrome) .button,:host(.ic-button-variant-icon-tertiary.monochrome) .button:active,:host(.ic-button-variant-icon-tertiary.ic-button-loading.monochrome) .button{background-color:var(--ic-button-tertiary-background-pressed-monochrome);color:var(--ic-button-tertiary-text-pressed-monochrome);--button-loading-inner-color:var(\n --ic-button-tertiary-text-pressed-monochrome\n );--button-loading-outer-color:var(\n --ic-button-tertiary-background-pressed-monochrome\n )}:host(.ic-button-variant-tertiary.monochrome) ::slotted(a:active),:host(.ic-button-variant-icon-tertiary.monochrome) ::slotted(a:active){background-color:var(\n --ic-button-tertiary-background-pressed-monochrome\n ) !important}:host(.ic-button-variant-tertiary.ic-button-disabled.monochrome) .button,:host(.ic-button-variant-icon-tertiary.ic-button-disabled.monochrome) .button{color:var(--ic-button-tertiary-text-disabled-monochrome);background:none}:host(.ic-button-variant-tertiary.ic-button-disabled.monochrome) ::slotted(a),:host(.ic-button-variant-icon-tertiary.ic-button-disabled.monochrome) ::slotted(a){background:none !important}:host(.ic-button-variant-tertiary.background.monochrome) .button,:host(.ic-button-variant-icon-tertiary.background.monochrome) .button{background-color:var(--ic-button-tertiary-background-monochrome)}:host(.ic-button-variant-tertiary.background.monochrome) ::slotted(a),:host(.ic-button-variant-icon-tertiary.background.monochrome) ::slotted(a){background-color:var(--ic-button-tertiary-background-monochrome) !important}:host(.ic-button-variant-tertiary.background.monochrome) .button:hover,:host(.ic-button-variant-icon-tertiary.background.monochrome) .button:hover{background-image:var(\n --ic-button-tertiary-background-non-transparent-monochrome-hover\n )}:host(.ic-button-variant-tertiary.background.monochrome) ::slotted(a:hover),:host(.ic-button-variant-icon-tertiary.background.monochrome) ::slotted(a:hover){background-image:var(\n --ic-button-tertiary-background-non-transparent-monochrome-hover\n ) !important}:host(.ic-button-variant-tertiary.background.monochrome) .button:active,:host(.ic-button-variant-icon-tertiary.background.monochrome) .button:active{background-image:var(\n --ic-button-tertiary-background-non-transparent-monochrome-active\n )}:host(.ic-button-variant-tertiary.background.monochrome) ::slotted(a:active),:host(.ic-button-variant-icon-tertiary.background.monochrome) ::slotted(a:active){background-image:var(\n --ic-button-tertiary-background-non-transparent-monochrome-active\n ) !important}:host(.ic-button-variant-destructive) .button,:host(.ic-button-variant-icon-destructive) .button{color:var(--ic-button-destructive-text);background-color:var(--ic-button-destructive-background);text-transform:uppercase}:host(.ic-button-variant-destructive) ::slotted(a),:host(.ic-button-variant-icon-destructive) ::slotted(a){color:var(--ic-button-destructive-text) !important;--ic-typography-color:var(--ic-button-destructive-text) !important;background-color:var(--ic-button-destructive-background) !important;text-transform:uppercase !important}:host(.ic-button-variant-destructive) .button:hover,:host(.ic-button-variant-icon-destructive) .button:hover{background-color:var(--ic-button-destructive-background-hover)}:host(.ic-button-variant-destructive) ::slotted(a:hover),:host(.ic-button-variant-icon-destructive) ::slotted(a:hover){background-color:var(--ic-button-destructive-background-hover) !important}:host(.ic-button-variant-destructive) .button:active,:host(.ic-button-variant-destructive.ic-button-loading) .button,:host(.ic-button-variant-icon-destructive.ic-button-loading) .button{color:var(--ic-button-primary-text);background-color:var(--ic-button-destructive-background-pressed);--button-loading-inner-color:var(--ic-button-primary-text);--button-loading-outer-color:var(--ic-button-destructive-background-pressed)}:host(.ic-button-variant-destructive) ::slotted(a:active),:host(.ic-button-variant-icon-destructive) ::slotted(a:active){background-color:var(--ic-button-destructive-background-pressed) !important}:host(.ic-button-variant-destructive.ic-button-disabled) .button,:host(.ic-button-variant-icon-destructive.ic-button-disabled) .button{background-color:var(--ic-button-destructive-background-disabled);color:var(--ic-button-destructive-text-disabled)}:host(.ic-button-variant-destructive.ic-button-disabled) ::slotted(a),:host(.ic-button-variant-icon-destructive.ic-button-disabled) ::slotted(a){background-color:var(--ic-button-destructive-background-disabled) !important}:host(.ic-button-variant-icon) .button{color:var(--ic-button-icon-color);background-color:var(--ic-button-icon-color-background);min-width:0;gap:var(--ic-space-xs)}:host(.ic-button-variant-icon) ::slotted(a){color:var(--ic-button-icon-color);background-color:var(--ic-button-icon-color-background) !important;min-width:0;gap:var(--ic-space-xs)}:host(.ic-button-variant-icon) .icon-container{width:var(--ic-space-lg) !important;height:var(--ic-space-lg) !important}:host(.ic-button-variant-icon) .button:hover{color:var(--ic-button-icon-color-hover);background-color:var(--ic-button-icon-color-background-hover)}:host(.ic-button-variant-icon) ::slotted(a:hover){color:var(--ic-button-icon-color-hover);background-color:var(--ic-button-icon-color-background-hover) !important}:host(.ic-button-variant-icon) .button:active:not(:focus),:host(.ic-button-variant-icon.ic-button-loading) .button{color:var(--ic-button-icon-color-active);background-color:var(--ic-button-icon-color-background-active)}:host(.ic-button-variant-icon) ::slotted(a:active:not(:focus)){color:var(--ic-button-icon-color-active);background-color:var(--ic-button-icon-color-background-active) !important}:host(.ic-button-variant-icon.ic-button-disabled) .button{color:var(--ic-color-icon-disabled-mid);background:none}:host(.ic-button-variant-icon.ic-button-disabled) ::slotted(a){color:var(--ic-color-icon-disabled-mid);background:none !important}:host(.ic-button-variant-icon-primary) .button,:host(.ic-button-variant-icon-primary) ::slotted(a){min-width:0;gap:var(--ic-space-xs);color:var(--ic-button-primary-icon)}:host(.ic-button-variant-icon-primary.monochrome) .button,:host(.ic-button-variant-primary.monochrome:not(.ic-button-disabled)) ::slotted(svg){color:var(--ic-button-primary-icon-monochrome)}:host(.ic-button-variant-icon-primary) .icon-container{width:var(--ic-space-lg) !important;height:var(--ic-space-lg) !important;margin:0;pointer-events:none}:host(.ic-button-variant-icon.monochrome) ::slotted(a),:host(.ic-button-variant-icon.monochrome) ::slotted(svg){color:var(--ic-button-icon-monochrome)}:host(.ic-button-variant-icon-secondary) .button,:host(.ic-button-variant-icon-secondary) ::slotted(a){min-width:0;gap:var(--ic-space-xs)}:host(.ic-button-variant-icon-secondary) .icon-container{width:var(--ic-space-lg) !important;height:var(--ic-space-lg) !important;margin:0;pointer-events:none}:host(.ic-button-variant-icon-tertiary) .button,:host(.ic-button-variant-icon-tertiary) ::slotted(a){min-width:0;gap:var(--ic-space-xs)}:host(.ic-button-variant-icon-tertiary) .icon-container{width:var(--ic-space-lg) !important;height:var(--ic-space-lg) !important;margin:0;pointer-events:none}:host(.ic-button-variant-icon-destructive) .button,:host(.ic-button-variant-icon-destructive) ::slotted(a){min-width:0;gap:var(--ic-space-xs)}:host(.ic-button-variant-icon-destructive) .icon-container{width:var(--ic-space-lg) !important;height:var(--ic-space-lg) !important;margin:0;pointer-events:none}:host(.ic-button-size-medium) .button{height:var(--height, 2.5rem);padding:var(--ic-space-xs) var(--ic-space-md)}:host(.ic-button-size-medium) ::slotted(a){height:var(--height, 2.5rem) !important;padding:var(--ic-space-xs) var(--ic-space-md) !important}:host(.ic-button-size-small) .button{height:var(--height, var(--ic-space-xl));padding:var(--ic-space-xxs) var(--ic-space-md)}:host(.ic-button-size-small) ::slotted(a){height:var(--height, var(--ic-space-xl)) !important;padding:var(--ic-space-xxs) var(--ic-space-md) !important}:host(.ic-button-size-large) .button{height:var(--height, var(--ic-space-xxl));padding:var(--ic-space-sm) var(--ic-space-md)}:host(.ic-button-size-large) ::slotted(a){height:var(--height, var(--ic-space-xxl)) !important;padding:var(--ic-space-sm) var(--ic-space-md) !important}:host(.ic-button-size-medium.ic-button-variant-icon) .button,:host(.ic-button-size-medium.ic-button-variant-icon-primary) .button,:host(.ic-button-size-medium.ic-button-variant-icon-secondary) .button,:host(.ic-button-size-medium.ic-button-variant-icon-tertiary) .button,:host(.ic-button-size-medium.ic-button-variant-icon-destructive) .button{height:var(--height, var(--ic-space-xl));width:var(--ic-space-xl);padding:0.375rem}:host(.ic-button-size-medium.ic-button-variant-icon-primary) ::slotted(a),:host(.ic-button-size-medium.ic-button-variant-icon-secondary) ::slotted(a),:host(.ic-button-size-medium.ic-button-variant-icon-tertiary) ::slotted(a),:host(.ic-button-size-medium.ic-button-variant-icon-destructive) ::slotted(a){height:var(--height, var(--ic-space-xl)) !important;width:var(--ic-space-xl) !important;padding:0.375rem !important}:host(.ic-button-size-small.ic-button-variant-icon) .button,:host(.ic-button-size-small.ic-button-variant-icon-primary) .button,:host(.ic-button-size-small.ic-button-variant-icon-secondary) .button,:host(.ic-button-size-small.ic-button-variant-icon-tertiary) .button,:host(.ic-button-size-small.ic-button-variant-icon-destructive) .button{height:var(--height, var(--ic-space-lg));width:var(--ic-space-lg);padding:var(--ic-space-xxs)}:host(.ic-button-size-small.ic-button-variant-icon-primary) ::slotted(a),:host(.ic-button-size-small.ic-button-variant-icon-secondary) ::slotted(a),:host(.ic-button-size-small.ic-button-variant-icon-tertiary) ::slotted(a),:host(.ic-button-size-small.ic-button-variant-icon-destructive) ::slotted(a),:host(.ic-button-size-small.ic-button-variant-icon) ::slotted(a){height:var(--height, var(--ic-space-lg)) !important;width:var(--ic-space-lg) !important;padding:var(--ic-space-xxs) !important}:host(.ic-button-size-large.ic-button-variant-icon) .button,:host(.ic-button-size-large.ic-button-variant-icon-primary) .button,:host(.ic-button-size-large.ic-button-variant-icon-secondary) .button,:host(.ic-button-size-large.ic-button-variant-icon-tertiary) .button,:host(.ic-button-size-large.ic-button-variant-icon-destructive) .button{height:var(--height, 2.5rem);width:2.5rem;padding:var(--ic-space-xs)}:host(.ic-button-size-large.ic-button-variant-icon-destructive) .button,:host(.ic-button-size-large.ic-button-variant-icon-primary) ::slotted(a),:host(.ic-button-size-large.ic-button-variant-icon-secondary) ::slotted(a),:host(.ic-button-size-large.ic-button-variant-icon-tertiary) ::slotted(a),:host(.ic-button-size-large.ic-button-variant-icon-destructive) ::slotted(a),:host(.ic-button-size-large.ic-button-variant-icon) ::slotted(a){height:var(--height, 2.5rem) !important;width:2.5rem !important;padding:var(--ic-space-xs) !important}:host(.ic-button-full-width),:host(.ic-button-full-width) .button{width:100%}:host(.ic-button-full-width) ::slotted(a){width:100% !important}div.loading-container{position:relative;align-items:center;width:100%}ic-loading-indicator{--inner-color:var(--button-loading-inner-color);--outer-color:var(--button-loading-outer-color), transparent}@keyframes loading-animation{0%{width:0%;left:0%}25%{width:0%;left:0%;opacity:0}50%{width:100%;left:0%;opacity:1}75%{width:0%;left:100%}100%{width:0%;left:100%;opacity:0}}div.icon-container{box-sizing:border-box;width:var(--ic-space-lg);height:var(--ic-space-lg);display:flex;justify-content:center;align-items:center;margin-right:var(--ic-space-xs)}div.right-icon{margin-right:auto;margin-left:var(--ic-space-xs)}:host(.ic-button-full-width) .right-icon{margin-right:var(--ic-space-xs)}::slotted(:not(ic-badge)){width:var(--icon-width) !important;height:var(--icon-height) !important;fill:currentcolor !important;pointer-events:none}:host(.ic-button-variant-icon) .button .icon-container{margin:0;pointer-events:none}:host(.search-submit-button) ::slotted(svg){--icon-height:1.25rem;--icon-width:1.25rem;color:var(--ic-atoms-input-search-button)}:host(.search-submit-button-small) ::slotted(svg){--icon-height:1rem;--icon-width:1rem;color:var(--ic-atoms-input-search-button)}:host(.search-submit-button) .button:focus{box-shadow:none}:host(.search-submit-button) .button:not(:active):focus{box-shadow:none;background-color:var(--ic-action-default-bg-hover)}:host(.search-submit-button) .button:not(:active):focus ::slotted(svg){color:var(--ic-button-primary-text)}:host(.search-submit-button){display:flex;align-items:center;margin:0 var(--ic-space-xxs)}:host(.ic-button-variant-icon) .button,:host(.ic-button-variant-icon) ::slotted(a){background-color:inherit;min-width:0;gap:var(--ic-space-xs)}:host(.button-variant-icon) .button,:host(.button-variant-icon) ::slotted(a){color:var(--button-default);min-width:0;gap:var(--ic-space-xs)}:host(.button-variant-icon) .icon-container{width:var(--ic-space-lg) !important;height:var(--ic-space-lg) !important}:host(.button-variant-icon) .button:hover,:host(.button-variant-icon) ::slotted(a:hover){background-color:var(--button-default-background-hover);color:var(--button-default-hover)}:host(.button-variant-icon) .button:active:not(:focus),:host(.button-variant-icon) ::slotted(a:active:not(:focus)),:host(.button-variant-icon.loading) .button{background-color:var(--button-default-background-active);color:var(--button-default-active)}:host(.button-variant-icon.disabled) .button,:host(.button-variant-icon.disabled) ::slotted(a){color:var(--ic-color-icon-disabled-mid);background:none}:host(.clear-button){color:var(--ic-atoms-input-clear-button);margin:0 var(--ic-space-xxs)}:host(.clear-button) .button:focus,:host(.calendar-button) .button:focus,:host(.clock-button) .button:focus{box-shadow:none}:host(.clear-button) .button,:host(.clear-button) ::slotted(a){background-color:inherit;color:var(--ic-atoms-input-clear-button)}:host(.clear-button) .button:hover,:host(.clear-button) ::slotted(a:hover){color:var(--ic-atoms-input-clear-button)}:host(.clear-button) .button:not(:active):focus ::slotted(svg){background-color:var(--ic-atoms-input-clear-button-focus-inner);color:var(--ic-button-primary-text);}:host(.menu-close-button) ::slotted(svg){--icon-height:0.875rem;--icon-width:0.875rem;color:var(--ic-top-navigation-icon-active)}:host(.popout-menu-button) .button{height:var(--height);justify-content:left;border-radius:0;white-space:pre-line;text-align:start}:host(.popout-menu-button) div.icon-container{flex:none}:host(.popout-menu-button) .button:focus{box-shadow:var(--ic-border-focus-inset);border-radius:var(--ic-border-radius-inset)}.ic-button-describedby{display:none}:host .ic-tooltip{display:block}:host .arrow-dropdown{margin-top:auto}:host .dropdown-expanded{transform:rotate(180deg);margin-bottom:var(--ic-space-xxxs)}:host(.dropdown-no-icon) .button{padding-right:var(--ic-space-xs)}slot[name="router-item"]::slotted(a){pointer-events:all}::slotted(a){font-size:0.875rem !important;border:none !important;vertical-align:middle !important}:host(#menu-button.ic-theme-dark){--ic-button-secondary-background-hover-monochrome:var(\n --ic-action-dark-bg-hover\n );--ic-button-secondary-background-pressed-monochrome:var(\n --ic-action-dark-bg-pressed\n );--ic-button-secondary-text-hover-monochrome:var(\n --ic-action-monochrome-hover-dark\n );--ic-button-secondary-text-pressed-monochrome:var(\n --ic-action-monochrome-pressed-dark\n );--ic-button-secondary-border-hover-monochrome:var(\n --ic-color-border-neutral-hover-dark\n );--ic-button-secondary-border-pressed-monochrome:var(\n --ic-color-border-neutral-pressed-dark\n )}:host(#menu-button.ic-theme-light){--ic-button-secondary-background-hover-monochrome:var(\n --ic-action-light-bg-hover\n );--ic-button-secondary-background-pressed-monochrome:var(\n --ic-action-light-bg-pressed\n );--ic-button-secondary-text-hover-monochrome:var(\n --ic-action-monochrome-hover\n );--ic-button-secondary-text-pressed-monochrome:var(\n --ic-action-monochrome-pressed\n );--ic-button-secondary-border-hover-monochrome:var(\n --ic-color-border-neutral-hover-light\n );--ic-button-secondary-border-pressed-monochrome:var(\n --ic-color-border-neutral-default\n )}@media (forced-colors: active){.button,::slotted(a){border:0.125rem solid transparent !important}.search-submit-button ::slotted(a),.ic-button-variant-icon ::slotted(a),.clear-button ::slotted(a),.search-submit-button ::slotted(svg),.ic-button-variant-icon ::slotted(svg),.clear-button ::slotted(svg){color:HighlightText}:host(.ic-button-variant-icon.monochrome) ::slotted(a),:host(.ic-button-variant-icon.monochrome) ::slotted(svg){color:white}:host(.clear-button) .button:not(:active):focus ::slotted(svg){color:white !important;background-color:inherit}:host(.ic-button-variant-primary:not(.ic-button-disabled)) ::slotted(svg){color:currentcolor !important}}:host(.flip) ::slotted(svg){transform:scaleX(-1)}';const f=y;var k=undefined&&undefined.__rest||function(t,o){var i={};for(var r in t)if(Object.prototype.hasOwnProperty.call(t,r)&&o.indexOf(r)<0)i[r]=t[r];if(t!=null&&typeof Object.getOwnPropertySymbols==="function")for(var n=0,r=Object.getOwnPropertySymbols(t);n<r.length;n++){if(o.indexOf(r[n])<0&&Object.prototype.propertyIsEnumerable.call(t,r[n]))i[r[n]]=t[r[n]]}return i};let x=0;const w=class{constructor(r){t(this,r);this.icBlur=o(this,"icBlur",7);this.icFileSelection=o(this,"icFileSelection",7);this.icFocus=o(this,"icFocus",7);this.buttonIdNum=x++;this.hasTooltip=false;this.inheritedAttributes={};this.describedbyEl=null;this.mutationObserver=null;this.hostMutationObserver=null;this.ariaLabel="";this.describedByContent="";this.title="";this.accept="*";this.disabled=false;this.disableTooltip=false;this.download=false;this.dropdown=false;this.dropdownExpanded=false;this.fileUpload=false;this.fileInputName=`ic-button-file-upload-input-${x++}`;this.fullWidth=false;this.loading=false;this.monochrome=false;this.multiple=false;this.size="medium";this.theme="inherit";this.tooltipFixedPositioning=false;this.tooltipPlacement="bottom";this.transparentBackground=true;this.type="button";this.variant="primary";this.getSlottedIcon=t=>this.el.querySelector(`[slot="${t}-icon"]`);this.handleClick=()=>{if((this.el.type==="submit"||this.el.type==="reset")&&!this.hasRouterSlot()&&(this.form||!!this.el.closest("FORM"))){const t=this.form?document.querySelector(`form[id=${this.form}]`):this.el.closest("FORM");c(t,this.el)}};this.handleKeyDown=t=>{if(t.key==="Escape"&&this.hasTooltip){this.closeButtonTooltip(t)}};this.onFocus=()=>{this.icFocus.emit()};this.onBlur=()=>{this.icBlur.emit()};this.mutationCallback=()=>{var t;this.describedByContent=(t=this.describedbyEl)===null||t===void 0?void 0:t.innerText};this.hostMutationCallback=t=>{let o=false;t.forEach((({attributeName:t})=>{if(t){const i=this.el.getAttribute(t);if(i){if(t==="title")this.title=i;else if(t==="aria-label")this.ariaLabel=i;if(v.includes(t)){this.inheritedAttributes[t]=i;o=true}}}}));if(o){i(this)}};this.setHasTooltip=()=>{this.hasTooltip=!this.disableTooltip&&(!!this.title||!!this.isIconVariant())};this.isIconVariant=()=>this.variant.startsWith("icon");this.arrangeRouterItem=()=>{var t;const o=(t,o)=>{Object.entries(o).forEach((([o,i])=>{t.style.setProperty(o,i)}))};if(this.routerSlot){const i=document.createElement("ic-typography");o(i,{"font-family":"var(--ic-font-body-family)","font-size":"0.875rem","font-weight":"600"});o(this.routerSlot,{gap:"0"});const r=this.routerSlot.querySelector("svg");const n=r===null||r===void 0?void 0:r.getAttribute("slot");const a=document.createElement("div");if(r){o(r,{fill:"currentcolor"});if(n==="top-icon"){o(this.routerSlot,{display:"flex","flex-direction":"column","--height":"fit-content"})}else if(n){const t=n==="left-icon"?"right":"left";o(a,{[`margin-${t}`]:"var(--ic-space-xs)"})}a.append(r)}const e=this.routerSlot.querySelector("ic-badge");const c=(t=this.routerSlot.textContent)===null||t===void 0?void 0:t.trim();if(e)a.append(e);if(c)i.textContent=c;this.routerSlot.textContent="";if(n==="right-icon"){this.routerSlot.append(i);this.routerSlot.append(a)}else{this.routerSlot.append(a);this.routerSlot.append(i)}}}}watchDisabledHandler(){s(this.disabled,this.el)}watchVariantHandler(t){if(t==="icon")this.variant="icon-tertiary"}disconnectedCallback(){var t,o;(t=this.mutationObserver)===null||t===void 0?void 0:t.disconnect();(o=this.hostMutationObserver)===null||o===void 0?void 0:o.disconnect()}componentWillUpdate(){if(this.loading){this.el.style.setProperty("--min-width",`${this.el.getBoundingClientRect().width}px`)}this.setHasTooltip()}componentWillLoad(){var t;const o=d(this.el,[...v,"title"]),{title:i,"aria-label":r}=o,n=k(o,["title","aria-label"]);this.title=i;this.ariaLabel=r;this.inheritedAttributes=n;s(this.disabled,this.el);this.el.setAttribute("exportparts","button");this.id=this.el.id||null;this.setHasTooltip();if(!this.hasTooltip){const o=this.inheritedAttributes["aria-describedby"];if(o){this.describedById=o;const i=(t=this.el.parentElement)===null||t===void 0?void 0:t.querySelector(`#${o}`);if(i){this.describedByContent=i.innerText;this.describedbyEl=i}}}if(this.variant==="icon"){this.variant="icon-tertiary"}}componentDidLoad(){this.updateTheme();if(typeof MutationObserver!=="undefined"){if(this.describedbyEl&&this.describedById){this.mutationObserver=new MutationObserver(this.mutationCallback);this.mutationObserver.observe(this.describedbyEl,{characterData:true,childList:true,subtree:true})}this.hostMutationObserver=new MutationObserver(this.hostMutationCallback);this.hostMutationObserver.observe(this.el,{attributes:true});if(this.hasRouterSlot())this.arrangeRouterItem()}}componentWillRender(){const t=this.getSlottedIcon("left")||this.getSlottedIcon("right");t===null||t===void 0?void 0:t.setAttribute("viewBox","0 0 24 24")}handleHostClick(t){if(!this.hasRouterSlot()){if(this.fileUpload){u(this.icFileSelection,this.el,!!this.multiple,!!this.disabled,this.accept,this.fileInputName,this.selectedFiles)}if(this.disabled||this.loading){t.stopImmediatePropagation()}if(this.dropdown){this.dropdownExpanded=!this.dropdownExpanded}}}brandChangeHandler({detail:t}){this.updateTheme(t.mode)}async setFocus(){var t;(t=this.buttonEl)===null||t===void 0?void 0:t.focus()}async closeButtonTooltip(t){var o;const i=(o=this.el.shadowRoot)===null||o===void 0?void 0:o.querySelector("ic-tooltip");if(i&&await i.isTooltipVisible()){i.displayTooltip(false);t.preventDefault();t.stopImmediatePropagation()}}hasRouterSlot(){this.routerSlot=this.el.querySelector('[slot="router-item"]');if(this.routerSlot){this.routerSlot.ariaLabel=this.routerSlot.textContent}return!!this.routerSlot}updateTheme(t=null){const o=b(this.el,t);if(o!==l.Default){this.theme=o===l.Light?l.Dark:l.Light;this.monochrome=true}}render(){const{ariaControlsId:t,ariaLabel:o,ariaOwnsId:i,buttonIdNum:a,describedByContent:c,describedById:s,disabled:d,download:u,dropdown:b,dropdownExpanded:l,form:m,formaction:v,formenctype:p,formmethod:y,formnovalidate:f,formtarget:k,fullWidth:x,handleClick:w,handleKeyDown:z,hasTooltip:$,href:j,hreflang:L,id:H,inheritedAttributes:C,isIconVariant:D,loading:T,monochrome:O,onBlur:B,onFocus:I,referrerpolicy:M,rel:P,size:F,target:q,theme:E,title:W,tooltipFixedPositioning:R,tooltipPlacement:V,transparentBackground:_,type:A,variant:N}=this;const X=j?"a":"button";const K=X==="button"?{type:A,disabled:d,form:m,formaction:v,formenctype:p,formmethod:y,formnovalidate:f,formtarget:k}:{download:u!==false?u:null,href:j,rel:P,target:q,referrerpolicy:M,hreflang:L};const S=$?`ic-button-with-tooltip-${H||a}`:undefined;const U=!$?s:`ic-tooltip-${S}`;const G=!!this.getSlottedIcon("left");const Z=!!this.getSlottedIcon("right");const J=()=>this.hasRouterSlot()?r("slot",{name:"router-item"}):r(X,Object.assign({class:"button",tabindex:0,"aria-disabled":T||d?"true":null,"aria-label":T?"Loading":o,"aria-expanded":b&&`${l}`},K,C,{onFocus:I,onBlur:B,ref:t=>this.buttonEl=t,"aria-describedby":U,part:"button"}),T?r("div",{class:"loading-container"},r("ic-loading-indicator",{type:"linear",monochrome:O,theme:E})):r(e,null,(G||!!this.getSlottedIcon("top")&&!Z)&&r("div",{class:"icon-container"},r("slot",{name:`${G?"left":"top"}-icon`})),r("slot",null),!b?Z&&r("div",{class:{"icon-container":true,"right-icon":true}},r("slot",{name:"right-icon"})):N!=="icon"&&N!=="destructive"&&r("span",{class:l?"dropdown-expanded":"arrow-dropdown",innerHTML:g})));return r(n,{key:"1f58739b62e290b1b86fa82c9153e04711196367",class:{"ic-button-disabled":d&&!T,"ic-button-full-width":x,"ic-button-loading":T,[`ic-button-size-${F}`]:true,[`ic-button-variant-${N}`]:true,[`ic-theme-${E}`]:E!=="inherit",background:(N==="secondary"||N==="tertiary")&&!_&&!d,"dropdown-no-icon":b&&!h(this.el,"icon")&&!h(this.el,"left-icon"),monochrome:O,"top-icon":h(this.el,"top-icon"),"with-badge":h(this.el,"badge")},onClick:w,onKeyDown:z,"aria-owns":i,"aria-controls":t,"aria-expanded":b&&`${l}`},$&&r("ic-tooltip",{key:"fa067eeedb2f960436c693a0d8978a46eea9cc68",id:U,label:W||o,target:S,placement:V,fixedPositioning:R,silent:D()&&!!o},r(J,{key:"a3565789687668d376a8c6e6044a0c3b1e864532"})),h(this.el,"badge")&&r("slot",{key:"1bacc47dfc65cce6880600906512a9262b6773cc",name:"badge"}),!$&&r(J,{key:"d00dc87862ffc939fc5c8341c686dddbc642eb02"}),c&&r("span",{key:"1d25a9c513d23e6a23e2e1d81ad036d1df47363c",id:U,class:"ic-button-describedby"},c))}static get delegatesFocus(){return true}get el(){return a(this)}static get watchers(){return{disabled:["watchDisabledHandler"],variant:["watchVariantHandler"]}}};w.style=f;const z='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;--linear-border-radius:0.25rem;--inner-color:var(--ic-loading-indicator-inner-color);--outer-color:var(--ic-loading-indicator-outer-color);--label-color:var(--ic-loading-indicator-label-color);--margin:none;--linear-line-height:var(--ic-space-xs)}:host(.ic-loading-indicator-monochrome){--inner-color:var(--ic-loading-indicator-inner-color-monochrome);--outer-color:var(--ic-loading-indicator-outer-color-monochrome);--label-color:var(--ic-loading-indicator-label-color-monochrome)}.ic-loading-container{display:flex;flex-direction:column;justify-content:center;align-items:center}:host([size="small"]){--circular-diameter:2.5rem;--linear-line-height:var(--ic-space-xxs)}:host([size="medium"]){--circular-diameter:5rem}:host([size="large"]){--circular-diameter:7.5rem}:host([size="icon"]){display:inline-block;--margin:var(--ic-space-xxxs);--circular-diameter:1.25rem}:host(.ic-loading-indicator-label){--margin:0 0 var(--ic-space-xs) 0}.ic-loading-label{--ic-typography-color:var(--label-color);margin-left:var(--label-margin-left)}.ic-loading-circular-outer{height:var(--circular-diameter);width:var(--circular-diameter)}.ic-loading-circular-outer.indeterminate{animation:circular-animation 1s linear;animation-iteration-count:infinite}@keyframes circular-animation{100%{transform:rotate(360deg)}}.ic-loading-circular-outer,.ic-loading-linear-outer{margin:var(--margin)}.ic-loading-linear-outer{background-color:var(--outer-color);height:var(--linear-line-height);width:100%;border-radius:var(--linear-border-radius);overflow:hidden}.ic-loading-circular-outer[aria-valuenow="0"] .ic-loading-circular-inner,.ic-loading-linear-outer[aria-valuenow="0"] .ic-loading-linear-inner{--inner-color:var(--outer-color)}.ic-loading-linear-inner{position:relative;height:100%;background-color:var(--inner-color);border-radius:var(--linear-border-radius)}.indeterminate>.ic-loading-linear-inner{animation:linear-animation 2s infinite}.determinate>.ic-loading-linear-inner{transition:width 0.5s;width:var(--linear-width)}:host(.ic-loading-indicator-full-width){--linear-border-radius:none}@keyframes linear-animation{0%{width:0%;left:-1%}25%{width:0%;left:-1%}50%{width:101%;left:-1%}75%{width:0%;left:101%}100%{width:0%;left:101%}}.ic-loading-circular-svg{position:relative;width:100%;height:100%;transform:rotate(-90deg)}.ic-loading-circular-svg circle{width:100%;height:100%;fill:none;stroke:var(--compact-step-outer-color, var(--outer-color));stroke-width:var(--circular-line-width);stroke-linecap:round}.ic-loading-circular-svg circle:nth-child(2){--circular-indeterminate:calc(\n (0.25 * var(--stroke-dasharray)) - var(--stroke-dasharray)\n );stroke-dasharray:var(--stroke-dasharray), var(--stroke-dasharray);stroke-dashoffset:var(--stroke-dashoffset, var(--circular-indeterminate));stroke:var(--compact-step-inner-color, var(--inner-color))}.inner-label{height:100%;display:grid}.inner-label .ic-loading-circular-svg,.inner-text{grid-column:1;grid-row:1}:host(.not-required.compact-step-progress-indicator) .ic-loading-circular-svg circle:nth-child(2){stroke:var(--ic-architectural-300)}.inner-text{display:flex;align-items:center;justify-content:center;width:var(--ic-space-lg);height:inherit;overflow:hidden;margin:auto;--ic-typography-color:var(\n --ic-step-indicator-text-current,\n var(--ic-status-info-default)\n )}:host(.not-required.compact-step-progress-indicator) .inner-text{--ic-typography-color:var(--ic-step-indicator-text-disabled)}:host(.ic-loading-indicator-light.not-required.compact-step-progress-indicator) .inner-text{--ic-typography-color:var(--ic-architectural-400)}@media (forced-colors: active){.indeterminate>.ic-loading-circular-inner{forced-color-adjust:none}.ic-loading-linear-outer{border:var(--ic-border-hc)}.ic-loading-linear-inner{background-color:canvastext}.ic-loading-circular-svg circle{stroke:Background}.ic-loading-circular-svg circle:nth-child(2){stroke:canvastext}:host(.not-required.compact-step-progress-indicator) .ic-loading-circular-svg circle:nth-child(2){stroke:GrayText}}';const $=z;const j={large:120,medium:80,small:40,icon:20};const L=class{constructor(o){t(this,o);this.labelList=[];this.circularDiameter=0;this.circularLineWidth=0;this.circularDimensions={x:0,y:0,r:0};this.clipInnerElement=false;this.description="Loading";this.fullWidth=false;this.labelDuration=8e3;this.max=100;this.min=0;this.monochrome=false;this.size="medium";this.theme="inherit";this.type="circular";this.getLabel=t=>new Promise((()=>{this.interval=setInterval((()=>{if(t<this.labelList.length-1){t++}else{t=0}this.indicatorLabel=this.labelList[t]}),this.labelDuration)}));this.getLabelVariant=()=>{const t=this.type==="circular"?this.calculateWidth():0;if(this.size==="small"||t&&t<60){return"label"}else if(this.size==="large"||t>=120){return"h2"}return"h4"};this.calculateWidth=()=>{var t,o,i;if((t=this.outerElement)===null||t===void 0?void 0:t.offsetWidth)return this.outerElement.offsetWidth;if(this.outerElement){const{width:t}=window.getComputedStyle(this.outerElement);if(t){if(((o=t.match(/\D+$/))===null||o===void 0?void 0:o[0])!=="%")return parseFloat(t);const r=(i=this.outerElement.parentElement)===null||i===void 0?void 0:i.offsetWidth;if(r)return r*(parseFloat(t)/100)}}return j[this.size]};this.calculateProportion=t=>{const o=Math.min(this.max,Math.max(this.min,t));return(o-this.min)/(this.max-this.min)};this.setLinearDeterminateWidth=()=>{if(!this.innerElement||!this.progress)return;const t=this.calculateProportion(this.progress);this.clipInnerElement=t>.5;if(this.clipInnerElement){this.innerElement.classList.remove("clip")}else{this.innerElement.classList.add("clip")}this.innerElement.style.setProperty("--linear-width",`${t*100}%`)};this.updateLabel=()=>{if(!this.label)return;if(typeof this.label==="string"){this.indicatorLabel=this.label}else{this.labelList=this.label;this.indicatorLabel=this.labelList[0];if(this.labelList.length>1){this.getLabel(0)}}};this.setCircleDimensions=()=>{if(this.circularDiameter<=0)return;const t=this.circularDiameter/2;const o=t-this.circularLineWidth/2;const i=2*Math.PI*o;this.circularDimensions={x:t,y:t,r:o,dashArray:`${i}px`,dashOffset:this.progress?`${(-1-this.calculateProportion(this.progress))*i}px`:undefined}}}watchPropHandler(){this.updateLabel()}handleProgressChange(){if(this.type==="linear"){this.setLinearDeterminateWidth()}else{this.setCircleDimensions()}}setIndicatorDimensions(){if(this.type==="circular"){const t=this.calculateWidth();if(this.outerElement&&t!==this.circularDiameter){this.circularLineWidth=t*.1;this.circularDiameter=t;this.outerElement.style.setProperty("--circular-line-width",`${this.circularLineWidth}px`)}this.setCircleDimensions()}else{this.setLinearDeterminateWidth()}}disconnectedCallback(){clearInterval(this.interval)}componentWillLoad(){this.updateLabel();this.el.setAttribute("exportparts","ic-loading-container")}componentDidLoad(){this.setIndicatorDimensions()}render(){const{circularDiameter:t,circularDimensions:{x:o,y:i,r:a,dashArray:e,dashOffset:c},description:s,fullWidth:d,indicatorLabel:u,innerLabel:b,label:l,max:h,min:m,monochrome:v,progress:p,size:g,theme:y,type:f}=this;return r(n,{key:"8e5015de29e0c003ae813d95e215031276669fed",class:{[`ic-theme-${y}`]:y!=="inherit","ic-loading-indicator-full-width":d,"ic-loading-indicator-label":!!l,"ic-loading-indicator-monochrome":v}},r("div",{key:"fdd7384e07827cfc6f32cd7f7fde71807a441e7d",class:"ic-loading-container",part:"ic-loading-container"},r("div",{key:"dd4b7dae54199c8313a6bd9c5a2133b11de29b57",ref:t=>this.outerElement=t,class:{[`ic-loading-${f}-outer`]:true,[p===undefined?"indeterminate":"determinate"]:true},role:"progressbar","aria-labelledby":l&&g!=="icon"&&"ic-loading-label","aria-label":s,"aria-valuenow":p,"aria-valuemin":m,"aria-valuemax":h},r("div",{key:"ba4e9f7ec6e1cdafdd844bb2e357822cf316128c",ref:t=>this.innerElement=t,class:{[`ic-loading-${f}-inner`]:true,"inner-label":!!b}},b&&g==="small"&&r("ic-typography",{key:"096a8f75dcbdaec7c0d2f71dcd447e08e279a41d",variant:"subtitle-small",class:"inner-text"},b),f==="circular"&&r("svg",{key:"c048f6de73691df17ec79f75860d177e9c83bcc5",class:"ic-loading-circular-svg",viewBox:`0 0 ${t} ${t}`},r("circle",{key:"5c52a4f617319167ab495785c736601f9d12bf08",cx:o,cy:i,r:a}),r("circle",{key:"7839b8b36e4306e224639f8a347ccde726aaa09c",style:{"--circular-steps-max":p?`${h}`:undefined,"--progress-value":p!==undefined?`${p}`:undefined,"--stroke-dasharray":e,"--stroke-dashoffset":c},cx:o,cy:i,r:a})))),l&&g!=="icon"&&r("ic-typography",{key:"868967e2a21589616e31a9b761849a69b458a2c1",id:"ic-loading-label",class:"ic-loading-label",role:"alert",variant:this.getLabelVariant()},r("p",{key:"439329efda39e3ae81e56f494c8cbe5000265aa9"},u))))}get el(){return a(this)}static get watchers(){return{label:["watchPropHandler"],max:["handleProgressChange"],min:["handleProgressChange"],progress:["handleProgressChange"],type:["setIndicatorDimensions"]}}};L.style=$;const H='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host(.ic-tooltip){width:-moz-max-content;width:max-content;height:-moz-max-content;height:max-content;--ic-tooltip-background:var(--ic-color-background-primary-dark);--ic-tooltip-text:var(--ic-color-text-primary-dark);--ic-tooltip-border:var(--ic-color-border-neutral-grey-light)}:host(.ic-tooltip) .ic-tooltip-container{background-color:var(--ic-tooltip-background);text-align:center;padding:var(--ic-space-xxxs) var(--ic-space-xs);border-radius:var(--ic-border-radius);border:var(--ic-border-width) solid var(--ic-tooltip-border);position:absolute;max-width:20rem;display:none;z-index:var(--ic-z-index-tooltip);box-shadow:var(--ic-elevation-overlay);width:-moz-max-content;width:max-content}:host(.ic-tooltip) ic-typography{--ic-typography-color:var(--ic-tooltip-text)}:host(.tooltip-navigation-item:not(.tooltip-navigation-item-side-nav-collapsed)) .ic-tooltip-container,:host(.tooltip-disabled) .ic-tooltip-container{display:none !important}:host(.tooltip-long-label-navigation-item-side-nav-expanded) .ic-tooltip-container[data-show]{display:block !important}:host(.ic-tooltip) .ic-tooltip-arrow,:host(.ic-tooltip) .ic-tooltip-arrow::before{position:absolute;background:inherit}:host(.ic-tooltip) .ic-tooltip-arrow{visibility:hidden;width:var(--ic-space-md);height:var(--ic-space-md)}:host(.ic-tooltip) .ic-tooltip-arrow::before{visibility:visible;content:"";border:var(--ic-border-width) solid var(--ic-tooltip-border);width:100%;height:100%}:host(.ic-tooltip) .ic-tooltip-container[data-show]{display:block}:host(.ic-tooltip) .ic-tooltip-container[data-popper-placement^="top"]>.ic-tooltip-arrow{height:var(--ic-space-xxxs)}:host(.ic-tooltip) .ic-tooltip-container[data-popper-placement^="top"]>.ic-tooltip-arrow::before{border-radius:0 0 var(--ic-border-radius) var(--ic-border-radius);left:0;top:var(--ic-space-xxxs);border-top:0;transform:translateX(var(--tooltip-arrow-translate))}:host(.ic-tooltip) .ic-tooltip-container[data-popper-placement^="bottom"]>.ic-tooltip-arrow{top:calc(-1 * var(--ic-space-xxs));height:var(--ic-space-xxxs)}:host(.ic-tooltip) .ic-tooltip-container[data-popper-placement^="bottom"]>.ic-tooltip-arrow::before{border-radius:var(--ic-border-radius) var(--ic-border-radius) 0 0;left:0;top:var(--ic-space-1px);border-bottom:0;transform:translateX(var(--tooltip-arrow-translate))}:host(.ic-tooltip) .ic-tooltip-container[data-popper-placement^="left"]>.ic-tooltip-arrow{width:var(--ic-space-xxxs);right:calc(-1 * var(--ic-space-1px))}:host(.ic-tooltip) .ic-tooltip-container[data-popper-placement^="left"]>.ic-tooltip-arrow::before{border-radius:0 var(--ic-border-radius) var(--ic-border-radius) 0;border-left:0;top:calc(-1 * var(--ic-space-1px))}:host(.ic-tooltip) .ic-tooltip-container[data-popper-placement^="right"]>.ic-tooltip-arrow{width:var(--ic-space-xxxs);left:calc(-1 * var(--ic-space-xxs))}:host(.ic-tooltip) .ic-tooltip-container[data-popper-placement^="right"]>.ic-tooltip-arrow::before{border-radius:var(--ic-border-radius) 0 0 var(--ic-border-radius);border-right:0;top:calc(-1 * var(--ic-space-1px))}:host(.ic-tooltip-on-dialog){display:inline-block}@media screen and (max-width: 576px){:host(.ic-tooltip) .ic-tooltip-container{max-width:18.875rem}}@media (forced-colors: active){:host(.ic-tooltip) .ic-tooltip-container,:host(.ic-tooltip) .ic-tooltip-arrow::before{border:var(--ic-border-hc)}}';const C=H;const D=class{constructor(o){t(this,o);this.delayedHideEvents=["mouseleave"];this.instantHideEvents=["focusout"];this.mouseOverTool=false;this.persistTooltip=false;this.showEvents=[!this.disableHover&&"mouseenter",!this.disableHover&&"focusin",!this.disableClick&&"click"];this.disableClick=false;this.disableHover=false;this.fixedPositioning=false;this.placement="bottom";this.silent=false;this.theme="inherit";this.popperProps={};this.show=()=>{if(this.label){this.toolTip.setAttribute("data-show","");if(this.dialogContentArea){this.el.classList.add("ic-tooltip-on-dialog")}this.popperInstance=p(this.el,this.toolTip,Object.assign({strategy:this.fixedPositioning?"fixed":"absolute",placement:this.placement,modifiers:[{name:"offset",options:{offset:[0,10]}},{name:"arrow",options:{element:this.arrow}},{name:"eventListeners",options:{scroll:false,resize:false}},...this.dialogContentArea?[{name:"preventOverflow",options:{boundary:this.dialogContentArea,padding:8}},{name:"flip",options:{boundary:this.dialogContentArea}}]:[]]},this.popperProps))}else{console.warn(`Tooltip can't display without prop 'label' set`)}};this.hide=()=>{if(this.toolTip!==undefined){this.toolTip.removeAttribute("data-show");this.persistTooltip=false}if(this.popperInstance!==undefined){this.popperInstance.destroy()}};this.checkCloseTooltip=()=>{setTimeout((()=>{if(!this.mouseOverTool&&!this.persistTooltip){this.hide()}}),100)};this.mouseEnterTooltip=()=>{this.mouseOverTool=true};this.mouseLeaveTooltip=()=>{this.mouseOverTool=false;this.checkCloseTooltip()};this.handleKeyDown=t=>{if(t.key==="Escape"&&!this.persistTooltip){this.hide()}};this.manageEventListeners=t=>{const o=t==="add"?"addEventListener":"removeEventListener";this.showEvents.forEach((t=>{if(t){this.el[o](t,this.show);if(this.toolTip!==undefined){this.toolTip[o](t,this.mouseEnterTooltip)}}}));if(!this.persistTooltip){this.instantHideEvents.forEach((t=>{this.el[o](t,this.hide)}))}this.delayedHideEvents.forEach((t=>{this.el[o](t,this.checkCloseTooltip);if(this.toolTip!==undefined){this.toolTip[o](t,this.mouseLeaveTooltip)}}));document[o]("keydown",this.handleKeyDown)};this.updateTooltipEvents=()=>{this.manageEventListeners("remove");this.showEvents=[!this.disableHover&&"mouseenter",!this.disableHover&&"focusin",!this.disableClick&&"click"];this.manageEventListeners("add")}}watchDisableClickHandler(){if(this.disableClick){this.hide()}this.updateTooltipEvents()}watchDisableHoverHandler(){if(this.disableHover){this.hide()}this.updateTooltipEvents()}watchLabelHandler(){var t;if(((t=this.toolTip)===null||t===void 0?void 0:t.hasAttribute("data-show"))&&this.popperInstance){this.popperInstance.update()}}async setExternalPopperProps(t){this.popperProps=t}disconnectedCallback(){this.manageEventListeners("remove");if(this.popperInstance!==undefined){this.popperInstance.destroy()}}componentDidLoad(){var t,o;this.manageEventListeners("add");let i;if(this.el.getRootNode().host){i=this.el.getRootNode().host.closest("ic-dialog")}else{i=this.el.closest("ic-dialog")}this.dialogContentArea=(o=(t=i===null||i===void 0?void 0:i.shadowRoot)===null||t===void 0?void 0:t.querySelector(".content-area"))!==null&&o!==void 0?o:null;m([{prop:this.label,propName:"label"}],"Tooltip")}componentDidRender(){var t;const o=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelector(".ic-tooltip-container > ic-typography");this.maxLines&&this.maxLines>0&&(o===null||o===void 0?void 0:o.setAttribute("style",`--truncation-max-lines: ${this.maxLines}`))}async displayTooltip(t,o){this.persistTooltip=!!o;t?this.show():this.hide()}async isTooltipVisible(){return Promise.resolve(this.toolTip.hasAttribute("data-show"))}render(){const{label:t,maxLines:o,silent:i,theme:a}=this;return r(n,{key:"9e66710981ac51e4fae8ff9e6b8d30eb44870c3b",class:{"ic-tooltip":true,[`ic-theme-${a}`]:a!=="inherit"}},r("div",{key:"f0b962933c6c88872a4cd8661348de663a40ecc4",ref:t=>this.toolTip=t,role:"tooltip",class:"ic-tooltip-container","aria-hidden":`${i}`},r("ic-typography",{key:"8935a9eaa6be2f05cf71a95b53d9b06e1cf2b080",maxLines:o,variant:"caption"},t),r("div",{key:"b433ac73eab9462e32a14710d7f29ee78d515f15",ref:t=>this.arrow=t,class:"ic-tooltip-arrow"})),r("slot",{key:"e9d8e149871c83c45c87d6418b86e7a901e10ae1"}))}get el(){return a(this)}static get watchers(){return{disableClick:["watchDisableClickHandler"],disableHover:["watchDisableHoverHandler"],label:["watchLabelHandler"]}}};D.style=C;export{w as ic_button,L as ic_loading_indicator,D as ic_tooltip};
2
+ //# sourceMappingURL=p-0123dde7.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icButtonCss","IcButtonStyle0","buttonIds","Button","constructor","hostRef","this","buttonIdNum","hasTooltip","inheritedAttributes","describedbyEl","mutationObserver","hostMutationObserver","ariaLabel","describedByContent","title","accept","disabled","disableTooltip","download","dropdown","dropdownExpanded","fileUpload","fileInputName","fullWidth","loading","monochrome","multiple","size","theme","tooltipFixedPositioning","tooltipPlacement","transparentBackground","type","variant","getSlottedIcon","position","el","querySelector","handleClick","hasRouterSlot","form","closest","document","handleHiddenFormButtonClick","handleKeyDown","ev","key","closeButtonTooltip","onFocus","icFocus","emit","onBlur","icBlur","mutationCallback","_a","innerText","hostMutationCallback","mutationList","forceComponentUpdate","forEach","attributeName","attribute","getAttribute","IC_INHERITED_ARIA","includes","forceUpdate","setHasTooltip","isIconVariant","startsWith","arrangeRouterItem","setStyles","element","styles","Object","entries","value","style","setProperty","routerSlot","icTypography","createElement","gap","icon","iconSlot","iconWrapper","fill","display","marginPlacement","append","badge","label","textContent","trim","watchDisabledHandler","removeDisabledFalse","watchVariantHandler","newVariant","disconnectedCallback","disconnect","_b","componentWillUpdate","getBoundingClientRect","width","componentWillLoad","inheritAttributes","restInheritedAttributes","__rest","setAttribute","id","describedById","parentElement","componentDidLoad","updateTheme","MutationObserver","observe","characterData","childList","subtree","attributes","componentWillRender","iconEl","handleHostClick","event","renderFileHiddenInput","icFileSelection","selectedFiles","stopImmediatePropagation","brandChangeHandler","detail","mode","setFocus","buttonEl","focus","tooltip","shadowRoot","isTooltipVisible","displayTooltip","preventDefault","foregroundColor","getBrandFromContext","IcBrandForegroundEnum","Default","Light","Dark","render","ariaControlsId","ariaOwnsId","formaction","formenctype","formmethod","formnovalidate","formtarget","href","hreflang","referrerpolicy","rel","target","TagType","buttonAttrs","buttonId","undefined","describedby","hasLeftIcon","hasRightIcon","ButtonContent","h","name","assign","class","tabindex","ref","part","Fragment","innerHTML","arrowDropdown","Host","background","isSlotUsed","onClick","onKeyDown","placement","fixedPositioning","silent","icLoadingIndicatorCss","IcLoadingIndicatorStyle0","LOADING_INDICATOR_WIDTHS","large","medium","small","LoadingIndicator","labelList","circularDiameter","circularLineWidth","circularDimensions","x","y","r","clipInnerElement","description","labelDuration","max","min","getLabel","labelIndex","Promise","interval","setInterval","length","indicatorLabel","getLabelVariant","calculateWidth","outerElement","offsetWidth","window","getComputedStyle","match","parseFloat","parentWidth","_c","calculateProportion","progress","minProgress","Math","setLinearDeterminateWidth","innerElement","proportion","classList","remove","add","updateLabel","setCircleDimensions","nextRadius","dashArray","PI","dashOffset","watchPropHandler","handleProgressChange","setIndicatorDimensions","diameter","clearInterval","innerLabel","role","viewBox","cx","cy","icTooltipCss","IcTooltipStyle0","Tooltip","delayedHideEvents","instantHideEvents","mouseOverTool","persistTooltip","showEvents","disableHover","disableClick","popperProps","show","toolTip","dialogContentArea","popperInstance","createPopper","strategy","modifiers","options","offset","arrow","scroll","resize","boundary","padding","console","warn","hide","removeAttribute","destroy","checkCloseTooltip","setTimeout","mouseEnterTooltip","mouseLeaveTooltip","manageEventListeners","action","method","updateTooltipEvents","watchDisableClickHandler","watchDisableHoverHandler","watchLabelHandler","hasAttribute","update","setExternalPopperProps","props","dialog","getRootNode","host","onComponentRequiredPropUndefined","prop","propName","componentDidRender","typographyEl","maxLines","resolve"],"sources":["src/components/ic-button/ic-button.css?tag=ic-button&encapsulation=shadow","src/components/ic-button/ic-button.tsx","src/components/ic-loading-indicator/ic-loading-indicator.css?tag=ic-loading-indicator&encapsulation=shadow","src/components/ic-loading-indicator/ic-loading-indicator.tsx","src/components/ic-tooltip/ic-tooltip.css?tag=ic-tooltip&encapsulation=shadow","src/components/ic-tooltip/ic-tooltip.tsx"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nb,\nu,\ni,\ncenter,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font-style: inherit;\n vertical-align: baseline;\n}\n\n\n/**\n* @prop --min-width: Minimum width of the button.\n* @prop --height: The height of the button.\n*/\n\n:host {\n display: inline-block;\n position: relative;\n\n --icon-width: 100%;\n --icon-height: 100%;\n}\n\n.button,\n::slotted(a) {\n font-family: var(--ic-font-body-family);\n text-decoration: none;\n font-weight: 600;\n font-size: 0.875rem;\n transition: var(--ic-easing-transition-fast);\n border-radius: var(--ic-border-radius);\n min-width: var(--min-width, 6.25rem);\n display: inline-flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n background: none;\n border: none;\n box-sizing: border-box;\n white-space: nowrap;\n vertical-align: middle;\n}\n\n:host(.with-badge) .button {\n border-radius: 0.2188rem;\n}\n\n.button:hover,\n::slotted(a:hover) {\n cursor: pointer;\n}\n\n.button:focus,\n::slotted(a:focus) {\n box-shadow: var(--ic-border-focus);\n}\n\n.button:focus-visible,\n::slotted(a:focus-visible) {\n outline: var(--ic-hc-focus-outline);\n}\n\n:host(.ic-button-disabled),\n:host(.ic-button-disabled) .button,\n:host(.ic-button-disabled) ::slotted(a),\n:host(.ic-button-loading),\n:host(.ic-button-loading) .button {\n pointer-events: none;\n}\n\n:host(.top-icon) .button {\n flex-direction: column;\n\n --height: fit-content;\n}\n\n:host(.top-icon) .button .icon-container {\n margin-right: 0;\n}\n\n/* Variants */\n\n/* Primary */\n\n:host(.ic-button-variant-primary) .button,\n:host(.ic-button-variant-icon-primary) .button {\n color: var(--ic-button-primary-text);\n background-color: var(--ic-button-primary-background);\n}\n\n:host(.ic-button-variant-primary:not(.ic-button-disabled)) ::slotted(svg) {\n color: var(--ic-button-primary-icon);\n}\n\n:host(.ic-button-variant-primary) ::slotted(a),\n:host(.ic-button-variant-icon-primary) ::slotted(a) {\n --ic-typography-color: var(--ic-button-primary-text);\n\n color: var(--ic-button-primary-text);\n background-color: var(--ic-button-primary-background) !important;\n}\n\n:host(.ic-button-variant-primary) .button:hover,\n:host(.ic-button-variant-icon-primary) .button:hover {\n background-color: var(--ic-button-primary-background-hover);\n}\n\n:host(.ic-button-variant-primary) ::slotted(a:hover),\n:host(.ic-button-variant-icon-primary) ::slotted(a:hover) {\n background-color: var(--ic-button-primary-background-hover) !important;\n}\n\n:host(.ic-button-variant-primary.ic-button-loading) .button,\n:host(.ic-button-variant-primary) .button:active,\n:host(.ic-button-variant-icon-primary.ic-button-loading) .button,\n:host(.ic-button-variant-icon-primary) .button:active {\n background-color: var(--ic-button-primary-background-pressed);\n\n --button-loading-inner-color: var(--ic-button-primary-text);\n --button-loading-outer-color: var(--ic-button-primary-background-pressed);\n}\n\n:host(.ic-button-variant-primary) ::slotted(a:active),\n:host(.ic-button-variant-icon-primary) ::slotted(a:active) {\n background-color: var(--ic-button-primary-background-pressed) !important;\n}\n\n:host(.ic-button-variant-primary.ic-button-disabled) .button,\n:host(.ic-button-variant-icon-primary.ic-button-disabled) .button {\n background: var(--ic-button-primary-background-disabled);\n color: var(--ic-button-primary-text-disabled);\n}\n\n:host(.ic-button-variant-primary.ic-button-disabled) ::slotted(a),\n:host(.ic-button-variant-icon-primary.ic-button-disabled) ::slotted(a) {\n background: var(--ic-button-primary-background-disabled) !important;\n\n --ic-typography-color: var(--ic-button-primary-text-disabled) !important;\n\n color: var(--ic-button-primary-text-disabled) !important;\n}\n\n/* Primary - monochrome */\n\n:host(.ic-button-variant-primary.monochrome) .button,\n:host(.ic-button-variant-icon-primary.monochrome) .button {\n color: var(--ic-button-primary-text-monochrome);\n background-color: var(--ic-button-primary-background-monochrome);\n}\n\n:host(.ic-button-variant-primary.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon-primary.monochrome) ::slotted(a) {\n background-color: var(--ic-button-primary-background-monochrome) !important;\n}\n\n:host(.ic-button-variant-primary.monochrome) .button:hover,\n:host(.ic-button-variant-icon-primary.monochrome) .button:hover {\n background-color: var(--ic-button-primary-background-hover-monochrome);\n}\n\n:host(.ic-button-variant-primary.monochrome) ::slotted(a:hover),\n:host(.ic-button-variant-icon-primary.monochrome) ::slotted(a:hover) {\n background-color: var(\n --ic-button-primary-background-hover-monochrome\n ) !important;\n}\n\n:host(.ic-button-variant-primary.ic-button-loading.monochrome) .button,\n:host(.ic-button-variant-primary.monochrome) .button:active,\n:host(.ic-button-variant-icon-primary.ic-button-loading.monochrome) .button,\n:host(.ic-button-variant-icon-primary.monochrome) .button:active {\n background-color: var(--ic-button-primary-background-pressed-monochrome);\n\n --button-loading-inner-color: var(--ic-button-primary-text-monochrome);\n --button-loading-outer-color: var(--ic-button-primary-background-monochrome);\n}\n\n:host(.ic-button-variant-primary.monochrome) ::slotted(a:active),\n:host(.ic-button-variant-icon-primary.monochrome) ::slotted(a:active) {\n background-color: var(\n --ic-button-primary-background-pressed-monochrome\n ) !important;\n}\n\n:host(.ic-button-variant-primary.ic-button-disabled.monochrome) .button,\n:host(.ic-button-variant-icon-primary.ic-button-disabled.monochrome) .button {\n background-color: var(--ic-button-primary-background-disabled-monochrome);\n color: var(--ic-button-primary-text-disabled-monochrome);\n}\n\n:host(.ic-button-variant-primary.ic-button-disabled.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon-primary.ic-button-disabled.monochrome)\n ::slotted(a) {\n background-color: var(\n --ic-button-primary-background-disabled-monochrome\n ) !important;\n}\n\n/* Secondary */\n\n:host(.ic-button-variant-secondary) .button,\n:host(.ic-button-variant-icon-secondary) .button {\n border: var(--ic-border-width) solid var(--ic-button-secondary-border);\n color: var(--ic-button-secondary-text);\n}\n\n:host(.ic-button-variant-secondary) ::slotted(a),\n:host(.ic-button-variant-icon-secondary) ::slotted(a) {\n border: var(--ic-border-width) solid var(--ic-button-secondary-border) !important;\n color: var(--ic-button-secondary-text) !important;\n\n --ic-typography-color: var(--ic-button-secondary-text) !important;\n}\n\n:host(.ic-button-variant-secondary) .button:hover,\n:host(.ic-button-variant-icon-secondary) .button:hover {\n background-color: var(--ic-button-secondary-background-hover-active);\n border-color: var(--ic-button-secondary-border-hover);\n color: var(--ic-button-secondary-text-hover-active);\n}\n\n:host(.ic-button-variant-secondary) ::slotted(a:hover),\n:host(.ic-button-variant-icon-secondary) ::slotted(a:hover) {\n background-color: var(\n --ic-button-secondary-background-hover-active\n ) !important;\n}\n\n:host(.ic-button-variant-secondary) .button:active,\n:host(.ic-button-variant-icon-secondary) .button:active {\n border-color: var(--ic-button-secondary-border-pressed);\n background-color: var(--ic-button-secondary-background-pressed-active);\n color: var(--ic-button-secondary-text-pressed-active);\n}\n\n:host(.ic-button-variant-secondary) ::slotted(a:active),\n:host(.ic-button-variant-icon-secondary) ::slotted(a:active) {\n background-color: var(\n --ic-button-secondary-background-pressed-active\n ) !important;\n}\n\n:host(.ic-button-variant-secondary.ic-button-loading) .button,\n:host(.ic-button-variant-icon-secondary.ic-button-loading) .button {\n border-color: var(--ic-button-secondary-border-pressed);\n background-color: var(\n --loading-button-background,\n var(--ic-button-secondary-background-pressed-active)\n ) !important;\n color: var(--ic-button-secondary-text-pressed-active);\n\n --button-loading-inner-color: var(--ic-button-secondary-border-pressed);\n --button-loading-outer-color: var(\n --ic-button-secondary-background-pressed-active\n );\n}\n\n:host(.ic-button-variant-secondary.ic-button-disabled) .button,\n:host(.ic-button-variant-icon-secondary.ic-button-disabled) .button {\n border-color: var(--ic-button-secondary-border-disabled);\n color: var(--ic-button-secondary-text-disabled);\n background: none;\n}\n\n:host(.ic-button-variant-secondary.ic-button-disabled) ::slotted(a),\n:host(.ic-button-variant-icon-secondary.ic-button-disabled) ::slotted(a) {\n background: none !important;\n}\n\n/* Secondary - non-transparent background */\n\n:host(.ic-button-variant-secondary.background) .button,\n:host(.ic-button-variant-icon-secondary.background) .button {\n background-color: var(--ic-button-secondary-background);\n}\n\n:host(.ic-button-variant-secondary.background) ::slotted(a),\n:host(.ic-button-variant-icon-secondary.background) ::slotted(a) {\n background-color: var(--ic-button-secondary-background) !important;\n}\n\n:host(.ic-button-variant-secondary.background) .button:hover,\n:host(.ic-button-variant-icon-secondary.background) .button:hover {\n background-image: var(--ic-button-secondary-background-non-transparent-hover);\n}\n\n:host(.ic-button-variant-secondary.background) ::slotted(a:hover),\n:host(.ic-button-variant-icon-secondary.background) ::slotted(a:hover) {\n background-image: var(\n --ic-button-secondary-background-non-transparent-hover\n ) !important;\n}\n\n:host(.ic-button-variant-secondary.background) .button:active,\n:host(.ic-button-variant-icon-secondary.background) .button:active {\n background-image: var(\n --ic-button-secondary-background-non-transparent-active\n );\n}\n\n:host(.ic-button-variant-secondary.background) ::slotted(a:active),\n:host(.ic-button-variant-icon-secondary.background) ::slotted(a:active) {\n background-image: var(\n --ic-button-secondary-background-non-transparent-active\n ) !important;\n}\n\n/* Secondary - monochrome */\n\n:host(.ic-button-variant-secondary.monochrome) .button,\n:host(.ic-button-variant-icon-secondary.monochrome) .button {\n background-color: none;\n border: var(--ic-border-width) solid\n var(--ic-button-secondary-border-monochrome);\n color: var(--ic-button-secondary-text-monochrome);\n}\n\n:host(.ic-button-variant-secondary.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon-secondary.monochrome) ::slotted(a) {\n background-color: none !important;\n}\n\n:host(.ic-button-variant-secondary.monochrome) .button:hover,\n:host(.ic-button-variant-icon-secondary.monochrome) .button:hover {\n background-color: var(--ic-button-secondary-background-hover-monochrome);\n border-color: var(--ic-button-secondary-border-hover-monochrome);\n color: var(--ic-button-secondary-text-hover-monochrome);\n}\n\n:host(.ic-button-variant-secondary.monochrome) ::slotted(a:hover),\n:host(.ic-button-variant-icon-secondary.monochrome) ::slotted(a:hover) {\n background-color: var(\n --ic-button-secondary-background-hover-monochrome\n ) !important;\n}\n\n:host(.ic-button-variant-secondary.monochrome) .button:active,\n:host(.ic-button-variant-icon-secondary.monochrome) .button:active {\n background-color: var(--ic-button-secondary-background-pressed-monochrome);\n border-color: var(--ic-button-secondary-border-pressed-monochrome);\n color: var(--ic-button-secondary-text-pressed-monochrome);\n}\n\n:host(.ic-button-variant-secondary.monochrome) ::slotted(a:active),\n:host(.ic-button-variant-icon-secondary.monochrome) ::slotted(a:active) {\n background-color: var(\n --ic-button-secondary-background-pressed-monochrome\n ) !important;\n}\n\n:host(.ic-button-variant-secondary.ic-button-loading.monochrome) .button,\n:host(.ic-button-variant-icon-secondary.ic-button-loading.monochrome) .button {\n background-color: var(\n --ic-button-secondary-background-pressed-monochrome\n ) !important;\n border-color: var(--ic-button-secondary-border-pressed-monochrome);\n color: var(--ic-button-secondary-text-pressed-monochrome);\n\n --button-loading-inner-color: var(\n --ic-button-secondary-text-pressed-monochrome\n );\n --button-loading-outer-color: var(\n --ic-button-secondary-background-pressed-monochrome\n );\n}\n\n:host(.ic-button-variant-secondary.ic-button-disabled.monochrome) .button,\n:host(.ic-button-variant-icon-secondary.ic-button-disabled.monochrome) .button {\n background: none;\n border-color: var(--ic-button-secondary-border-disabled-monochrome);\n color: var(--ic-button-secondary-text-disabled-monochrome);\n}\n\n:host(.ic-button-variant-secondary.ic-button-disabled.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon-secondary.ic-button-disabled.monochrome)\n ::slotted(a) {\n background: none !important;\n}\n\n/* Secondary - non-transparent background - monochrome */\n\n:host(.ic-button-variant-secondary.background.monochrome) .button,\n:host(.ic-button-variant-icon-secondary.background.monochrome) .button {\n background-color: var(--ic-button-secondary-background-monochrome);\n}\n\n:host(.ic-button-variant-secondary.background.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon-secondary.background.monochrome) ::slotted(a) {\n background-color: var(--ic-button-secondary-background-monochrome) !important;\n}\n\n:host(.ic-button-variant-secondary.background.monochrome) .button:hover,\n:host(.ic-button-variant-icon-secondary.background.monochrome) .button:hover {\n background-image: var(\n --ic-button-secondary-background-non-transparent-monochrome-hover\n );\n}\n\n:host(.ic-button-variant-secondary.background.monochrome) ::slotted(a:hover),\n:host(.ic-button-variant-icon-secondary.background.monochrome)\n ::slotted(a:hover) {\n background-image: var(\n --ic-button-secondary-background-non-transparent-monochrome-hover\n ) !important;\n}\n\n:host(.ic-button-variant-secondary.background.monochrome) .button:active,\n:host(.ic-button-variant-icon-secondary.background.monochrome) .button:active {\n background-image: var(\n --ic-button-secondary-background-non-transparent-monochrome-active\n );\n}\n\n:host(.ic-button-variant-secondary.background.monochrome) ::slotted(a:active),\n:host(.ic-button-variant-icon-secondary.background.monochrome)\n ::slotted(a:active) {\n background-image: var(\n --ic-button-secondary-background-non-transparent-monochrome-active\n ) !important;\n}\n\n/* Tertiary */\n\n:host(.ic-button-variant-tertiary) .button,\n:host(.ic-button-variant-icon-tertiary) .button,\n:host(.ic-button-variant-tertiary) ::slotted(a),\n:host(.ic-button-variant-icon-tertiary) ::slotted(a) {\n color: var(--ic-button-tertiary-text-active);\n\n --ic-typography-color: var(--ic-button-tertiary-text-active);\n}\n\n:host(.ic-button-variant-tertiary) .button:hover,\n:host(.ic-button-variant-icon-tertiary) .button:hover {\n background-color: var(--ic-button-tertiary-background-hover-active);\n color: var(--ic-button-tertiary-text-hover-active);\n}\n\n:host(.ic-button-variant-tertiary) ::slotted(a:hover),\n:host(.ic-button-variant-icon-tertiary) ::slotted(a:hover) {\n background-color: var(\n --ic-button-tertiary-background-hover-active\n ) !important;\n}\n\n:host(.ic-button-variant-tertiary) .button:active,\n:host(.ic-button-variant-tertiary.ic-button-loading) .button,\n:host(.ic-button-variant-icon-tertiary) .button:active,\n:host(.ic-button-variant-icon-tertiary.ic-button-loading) .button {\n background-color: var(--ic-button-tertiary-background-pressed-active);\n color: var(--ic-button-tertiary-text-pressed-active);\n\n --button-loading-inner-color: var(--ic-button-tertiary-text-pressed-active);\n --button-loading-outer-color: var(--ic-button-tertiary-background-pressed);\n}\n\n:host(.ic-button-variant-tertiary) ::slotted(a:active),\n:host(.ic-button-variant-icon-tertiary) ::slotted(a:active) {\n background-color: var(\n --ic-button-tertiary-background-pressed-active\n ) !important;\n}\n\n:host(.ic-button-variant-tertiary.ic-button-disabled) .button,\n:host(.ic-button-variant-icon-tertiary.ic-button-disabled) .button {\n color: var(--ic-button-tertiary-text-disabled);\n background: none;\n}\n\n:host(.ic-button-variant-tertiary.ic-button-disabled) ::slotted(a),\n:host(.ic-button-variant-icon-tertiary.ic-button-disabled) ::slotted(a) {\n background: none !important;\n}\n\n/* Tertiary - non-transparent background */\n\n:host(.ic-button-variant-tertiary.background) .button,\n:host(.ic-button-variant-icon-tertiary.background) .button {\n background-color: var(--ic-button-tertiary-background);\n}\n\n:host(.ic-button-variant-tertiary.background) ::slotted(a),\n:host(.ic-button-variant-icon-tertiary.background) ::slotted(a) {\n background-color: var(--ic-button-tertiary-background) !important;\n}\n\n:host(.ic-button-variant-tertiary.background) .button:hover,\n:host(.ic-button-variant-icon-tertiary.background) .button:hover {\n background-image: var(--ic-button-tertiary-background-non-transparent-hover);\n}\n\n:host(.ic-button-variant-tertiary.background) ::slotted(a:hover),\n:host(.ic-button-variant-icon-tertiary.background) ::slotted(a:hover) {\n background-image: var(\n --ic-button-tertiary-background-non-transparent-hover\n ) !important;\n}\n\n:host(.ic-button-variant-tertiary.background) .button:active,\n:host(.ic-button-variant-icon-tertiary.background) .button:active {\n background-image: var(--ic-button-tertiary-background-non-transparent-active);\n}\n\n:host(.ic-button-variant-tertiary.background) ::slotted(a:active),\n:host(.ic-button-variant-icon-tertiary.background) ::slotted(a:active) {\n background-image: var(\n --ic-button-tertiary-background-non-transparent-active\n ) !important;\n}\n\n/* Tertiary - monochrome */\n\n:host(.ic-button-variant-tertiary.monochrome) .button,\n:host(.ic-button-variant-tertiary.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon-tertiary.monochrome) .button,\n:host(.ic-button-variant-icon-tertiary.monochrome) ::slotted(a) {\n color: var(--ic-button-tertiary-text-monochrome);\n\n --ic-typography-color: var(--ic-button-tertiary-text-monochrome);\n}\n\n:host(.ic-button-variant-tertiary.monochrome) .button:hover,\n:host(.ic-button-variant-icon-tertiary.monochrome) .button:hover {\n background-color: var(--ic-button-tertiary-background-hover-monochrome);\n color: var(--ic-button-tertiary-text-hover-monochrome);\n}\n\n:host(.ic-button-variant-tertiary.monochrome) ::slotted(a:hover),\n:host(.ic-button-variant-icon-tertiary.monochrome) ::slotted(a:hover) {\n background-color: var(\n --ic-button-tertiary-background-hover-monochrome\n ) !important;\n}\n\n:host(.ic-button-variant-tertiary.monochrome) .button:active,\n:host(.ic-button-variant-tertiary.ic-button-loading.monochrome) .button,\n:host(.ic-button-variant-icon-tertiary.monochrome) .button:active,\n:host(.ic-button-variant-icon-tertiary.ic-button-loading.monochrome) .button {\n background-color: var(--ic-button-tertiary-background-pressed-monochrome);\n color: var(--ic-button-tertiary-text-pressed-monochrome);\n\n --button-loading-inner-color: var(\n --ic-button-tertiary-text-pressed-monochrome\n );\n --button-loading-outer-color: var(\n --ic-button-tertiary-background-pressed-monochrome\n );\n}\n\n:host(.ic-button-variant-tertiary.monochrome) ::slotted(a:active),\n:host(.ic-button-variant-icon-tertiary.monochrome) ::slotted(a:active) {\n background-color: var(\n --ic-button-tertiary-background-pressed-monochrome\n ) !important;\n}\n\n:host(.ic-button-variant-tertiary.ic-button-disabled.monochrome) .button,\n:host(.ic-button-variant-icon-tertiary.ic-button-disabled.monochrome) .button {\n color: var(--ic-button-tertiary-text-disabled-monochrome);\n background: none;\n}\n\n:host(.ic-button-variant-tertiary.ic-button-disabled.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon-tertiary.ic-button-disabled.monochrome)\n ::slotted(a) {\n background: none !important;\n}\n\n/* Tertiary - non-transparent background - monochrome */\n\n:host(.ic-button-variant-tertiary.background.monochrome) .button,\n:host(.ic-button-variant-icon-tertiary.background.monochrome) .button {\n background-color: var(--ic-button-tertiary-background-monochrome);\n}\n\n:host(.ic-button-variant-tertiary.background.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon-tertiary.background.monochrome) ::slotted(a) {\n background-color: var(--ic-button-tertiary-background-monochrome) !important;\n}\n\n:host(.ic-button-variant-tertiary.background.monochrome) .button:hover,\n:host(.ic-button-variant-icon-tertiary.background.monochrome) .button:hover {\n background-image: var(\n --ic-button-tertiary-background-non-transparent-monochrome-hover\n );\n}\n\n:host(.ic-button-variant-tertiary.background.monochrome) ::slotted(a:hover),\n:host(.ic-button-variant-icon-tertiary.background.monochrome)\n ::slotted(a:hover) {\n background-image: var(\n --ic-button-tertiary-background-non-transparent-monochrome-hover\n ) !important;\n}\n\n:host(.ic-button-variant-tertiary.background.monochrome) .button:active,\n:host(.ic-button-variant-icon-tertiary.background.monochrome) .button:active {\n background-image: var(\n --ic-button-tertiary-background-non-transparent-monochrome-active\n );\n}\n\n:host(.ic-button-variant-tertiary.background.monochrome) ::slotted(a:active),\n:host(.ic-button-variant-icon-tertiary.background.monochrome)\n ::slotted(a:active) {\n background-image: var(\n --ic-button-tertiary-background-non-transparent-monochrome-active\n ) !important;\n}\n\n/* Destructive */\n\n:host(.ic-button-variant-destructive) .button,\n:host(.ic-button-variant-icon-destructive) .button {\n color: var(--ic-button-destructive-text);\n background-color: var(--ic-button-destructive-background);\n text-transform: uppercase;\n}\n\n:host(.ic-button-variant-destructive) ::slotted(a),\n:host(.ic-button-variant-icon-destructive) ::slotted(a) {\n color: var(--ic-button-destructive-text) !important;\n\n --ic-typography-color: var(--ic-button-destructive-text) !important;\n\n background-color: var(--ic-button-destructive-background) !important;\n text-transform: uppercase !important;\n}\n\n:host(.ic-button-variant-destructive) .button:hover,\n:host(.ic-button-variant-icon-destructive) .button:hover {\n background-color: var(--ic-button-destructive-background-hover);\n}\n\n:host(.ic-button-variant-destructive) ::slotted(a:hover),\n:host(.ic-button-variant-icon-destructive) ::slotted(a:hover) {\n background-color: var(--ic-button-destructive-background-hover) !important;\n}\n\n:host(.ic-button-variant-destructive) .button:active,\n:host(.ic-button-variant-destructive.ic-button-loading) .button,\n:host(.ic-button-variant-icon-destructive.ic-button-loading) .button {\n color: var(--ic-button-primary-text);\n background-color: var(--ic-button-destructive-background-pressed);\n\n --button-loading-inner-color: var(--ic-button-primary-text);\n --button-loading-outer-color: var(--ic-button-destructive-background-pressed);\n}\n\n:host(.ic-button-variant-destructive) ::slotted(a:active),\n:host(.ic-button-variant-icon-destructive) ::slotted(a:active) {\n background-color: var(--ic-button-destructive-background-pressed) !important;\n}\n\n:host(.ic-button-variant-destructive.ic-button-disabled) .button,\n:host(.ic-button-variant-icon-destructive.ic-button-disabled) .button {\n background-color: var(--ic-button-destructive-background-disabled);\n color: var(--ic-button-destructive-text-disabled);\n}\n\n:host(.ic-button-variant-destructive.ic-button-disabled) ::slotted(a),\n:host(.ic-button-variant-icon-destructive.ic-button-disabled) ::slotted(a) {\n background-color: var(--ic-button-destructive-background-disabled) !important;\n}\n\n/***********************\n Icon Variants\n ***********************/\n\n/* Icon */\n\n:host(.ic-button-variant-icon) .button {\n color: var(--ic-button-icon-color);\n background-color: var(--ic-button-icon-color-background);\n min-width: 0;\n gap: var(--ic-space-xs);\n}\n\n:host(.ic-button-variant-icon) ::slotted(a) {\n color: var(--ic-button-icon-color);\n background-color: var(--ic-button-icon-color-background) !important;\n min-width: 0;\n gap: var(--ic-space-xs);\n}\n\n:host(.ic-button-variant-icon) .icon-container {\n width: var(--ic-space-lg) !important;\n height: var(--ic-space-lg) !important;\n}\n\n:host(.ic-button-variant-icon) .button:hover {\n color: var(--ic-button-icon-color-hover);\n background-color: var(--ic-button-icon-color-background-hover);\n}\n\n:host(.ic-button-variant-icon) ::slotted(a:hover) {\n color: var(--ic-button-icon-color-hover);\n background-color: var(--ic-button-icon-color-background-hover) !important;\n}\n\n:host(.ic-button-variant-icon) .button:active:not(:focus),\n:host(.ic-button-variant-icon.ic-button-loading) .button {\n color: var(--ic-button-icon-color-active);\n background-color: var(--ic-button-icon-color-background-active);\n}\n\n:host(.ic-button-variant-icon) ::slotted(a:active:not(:focus)) {\n color: var(--ic-button-icon-color-active);\n background-color: var(--ic-button-icon-color-background-active) !important;\n}\n\n:host(.ic-button-variant-icon.ic-button-disabled) .button {\n color: var(--ic-color-icon-disabled-mid);\n background: none;\n}\n\n:host(.ic-button-variant-icon.ic-button-disabled) ::slotted(a) {\n color: var(--ic-color-icon-disabled-mid);\n background: none !important;\n}\n\n/* Icon-primary */\n\n:host(.ic-button-variant-icon-primary) .button,\n:host(.ic-button-variant-icon-primary) ::slotted(a) {\n min-width: 0;\n gap: var(--ic-space-xs);\n color: var(--ic-button-primary-icon);\n}\n\n:host(.ic-button-variant-icon-primary.monochrome) .button,\n:host(.ic-button-variant-primary.monochrome:not(.ic-button-disabled))\n ::slotted(svg) {\n color: var(--ic-button-primary-icon-monochrome);\n}\n\n:host(.ic-button-variant-icon-primary) .icon-container {\n width: var(--ic-space-lg) !important;\n height: var(--ic-space-lg) !important;\n margin: 0;\n pointer-events: none;\n}\n\n:host(.ic-button-variant-icon.monochrome) ::slotted(a),\n:host(.ic-button-variant-icon.monochrome) ::slotted(svg) {\n color: var(--ic-button-icon-monochrome);\n}\n\n/* Icon-secondary */\n\n:host(.ic-button-variant-icon-secondary) .button,\n:host(.ic-button-variant-icon-secondary) ::slotted(a) {\n min-width: 0;\n gap: var(--ic-space-xs);\n}\n\n:host(.ic-button-variant-icon-secondary) .icon-container {\n width: var(--ic-space-lg) !important;\n height: var(--ic-space-lg) !important;\n margin: 0;\n pointer-events: none;\n}\n\n/* Icon-tertiary */\n\n:host(.ic-button-variant-icon-tertiary) .button,\n:host(.ic-button-variant-icon-tertiary) ::slotted(a) {\n min-width: 0;\n gap: var(--ic-space-xs);\n}\n\n:host(.ic-button-variant-icon-tertiary) .icon-container {\n width: var(--ic-space-lg) !important;\n height: var(--ic-space-lg) !important;\n margin: 0;\n pointer-events: none;\n}\n\n/* Icon-destructive */\n\n:host(.ic-button-variant-icon-destructive) .button,\n:host(.ic-button-variant-icon-destructive) ::slotted(a) {\n min-width: 0;\n gap: var(--ic-space-xs);\n}\n\n:host(.ic-button-variant-icon-destructive) .icon-container {\n width: var(--ic-space-lg) !important;\n height: var(--ic-space-lg) !important;\n margin: 0;\n pointer-events: none;\n}\n\n/* Sizing */\n\n:host(.ic-button-size-medium) .button {\n height: var(--height, 2.5rem);\n padding: var(--ic-space-xs) var(--ic-space-md);\n}\n\n:host(.ic-button-size-medium) ::slotted(a) {\n height: var(--height, 2.5rem) !important;\n padding: var(--ic-space-xs) var(--ic-space-md) !important;\n}\n\n:host(.ic-button-size-small) .button {\n height: var(--height, var(--ic-space-xl));\n padding: var(--ic-space-xxs) var(--ic-space-md);\n}\n\n:host(.ic-button-size-small) ::slotted(a) {\n height: var(--height, var(--ic-space-xl)) !important;\n padding: var(--ic-space-xxs) var(--ic-space-md) !important;\n}\n\n:host(.ic-button-size-large) .button {\n height: var(--height, var(--ic-space-xxl));\n padding: var(--ic-space-sm) var(--ic-space-md);\n}\n\n:host(.ic-button-size-large) ::slotted(a) {\n height: var(--height, var(--ic-space-xxl)) !important;\n padding: var(--ic-space-sm) var(--ic-space-md) !important;\n}\n\n:host(.ic-button-size-medium.ic-button-variant-icon) .button,\n:host(.ic-button-size-medium.ic-button-variant-icon-primary) .button,\n:host(.ic-button-size-medium.ic-button-variant-icon-secondary) .button,\n:host(.ic-button-size-medium.ic-button-variant-icon-tertiary) .button,\n:host(.ic-button-size-medium.ic-button-variant-icon-destructive) .button {\n height: var(--height, var(--ic-space-xl));\n width: var(--ic-space-xl);\n padding: 0.375rem;\n}\n\n:host(.ic-button-size-medium.ic-button-variant-icon-primary) ::slotted(a),\n:host(.ic-button-size-medium.ic-button-variant-icon-secondary) ::slotted(a),\n:host(.ic-button-size-medium.ic-button-variant-icon-tertiary) ::slotted(a),\n:host(.ic-button-size-medium.ic-button-variant-icon-destructive) ::slotted(a) {\n height: var(--height, var(--ic-space-xl)) !important;\n width: var(--ic-space-xl) !important;\n padding: 0.375rem !important;\n}\n\n:host(.ic-button-size-small.ic-button-variant-icon) .button,\n:host(.ic-button-size-small.ic-button-variant-icon-primary) .button,\n:host(.ic-button-size-small.ic-button-variant-icon-secondary) .button,\n:host(.ic-button-size-small.ic-button-variant-icon-tertiary) .button,\n:host(.ic-button-size-small.ic-button-variant-icon-destructive) .button {\n height: var(--height, var(--ic-space-lg));\n width: var(--ic-space-lg);\n padding: var(--ic-space-xxs);\n}\n\n:host(.ic-button-size-small.ic-button-variant-icon-primary) ::slotted(a),\n:host(.ic-button-size-small.ic-button-variant-icon-secondary) ::slotted(a),\n:host(.ic-button-size-small.ic-button-variant-icon-tertiary) ::slotted(a),\n:host(.ic-button-size-small.ic-button-variant-icon-destructive) ::slotted(a),\n:host(.ic-button-size-small.ic-button-variant-icon) ::slotted(a) {\n height: var(--height, var(--ic-space-lg)) !important;\n width: var(--ic-space-lg) !important;\n padding: var(--ic-space-xxs) !important;\n}\n\n:host(.ic-button-size-large.ic-button-variant-icon) .button,\n:host(.ic-button-size-large.ic-button-variant-icon-primary) .button,\n:host(.ic-button-size-large.ic-button-variant-icon-secondary) .button,\n:host(.ic-button-size-large.ic-button-variant-icon-tertiary) .button,\n:host(.ic-button-size-large.ic-button-variant-icon-destructive) .button {\n height: var(--height, 2.5rem);\n width: 2.5rem;\n padding: var(--ic-space-xs);\n}\n\n:host(.ic-button-size-large.ic-button-variant-icon-destructive) .button,\n:host(.ic-button-size-large.ic-button-variant-icon-primary) ::slotted(a),\n:host(.ic-button-size-large.ic-button-variant-icon-secondary) ::slotted(a),\n:host(.ic-button-size-large.ic-button-variant-icon-tertiary) ::slotted(a),\n:host(.ic-button-size-large.ic-button-variant-icon-destructive) ::slotted(a),\n:host(.ic-button-size-large.ic-button-variant-icon) ::slotted(a) {\n height: var(--height, 2.5rem) !important;\n width: 2.5rem !important;\n padding: var(--ic-space-xs) !important;\n}\n\n/* Width */\n:host(.ic-button-full-width),\n:host(.ic-button-full-width) .button {\n width: 100%;\n}\n\n:host(.ic-button-full-width) ::slotted(a) {\n width: 100% !important;\n}\n\n/* Loading */\n\ndiv.loading-container {\n position: relative;\n align-items: center;\n width: 100%;\n}\n\nic-loading-indicator {\n --inner-color: var(--button-loading-inner-color);\n --outer-color: var(--button-loading-outer-color), transparent;\n}\n\n@keyframes loading-animation {\n 0% {\n width: 0%;\n left: 0%;\n }\n\n 25% {\n width: 0%;\n left: 0%;\n opacity: 0;\n }\n\n 50% {\n width: 100%;\n left: 0%;\n opacity: 1;\n }\n\n 75% {\n width: 0%;\n left: 100%;\n }\n\n 100% {\n width: 0%;\n left: 100%;\n opacity: 0;\n }\n}\n\n/* Icons */\n\ndiv.icon-container {\n box-sizing: border-box;\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n display: flex;\n justify-content: center;\n align-items: center;\n margin-right: var(--ic-space-xs);\n}\n\ndiv.right-icon {\n margin-right: auto;\n margin-left: var(--ic-space-xs);\n}\n\n:host(.ic-button-full-width) .right-icon {\n margin-right: var(--ic-space-xs);\n}\n\n::slotted(:not(ic-badge)) {\n width: var(--icon-width) !important;\n height: var(--icon-height) !important;\n fill: currentcolor !important;\n pointer-events: none;\n}\n\n:host(.ic-button-variant-icon) .button .icon-container {\n margin: 0;\n pointer-events: none;\n}\n\n/** SEARCH **/\n\n:host(.search-submit-button) ::slotted(svg) {\n --icon-height: 1.25rem;\n --icon-width: 1.25rem;\n\n color: var(--ic-atoms-input-search-button);\n}\n\n:host(.search-submit-button-small) ::slotted(svg) {\n --icon-height: 1rem;\n --icon-width: 1rem;\n\n color: var(--ic-atoms-input-search-button);\n}\n\n:host(.search-submit-button) .button:focus {\n box-shadow: none;\n}\n\n:host(.search-submit-button) .button:not(:active):focus {\n box-shadow: none;\n background-color: var(--ic-action-default-bg-hover);\n}\n\n:host(.search-submit-button) .button:not(:active):focus ::slotted(svg) {\n color: var(--ic-button-primary-text);\n}\n\n:host(.search-submit-button) {\n display: flex;\n align-items: center;\n margin: 0 var(--ic-space-xxs);\n}\n\n/** CLEAR & DISMISS **/\n\n:host(.ic-button-variant-icon) .button,\n:host(.ic-button-variant-icon) ::slotted(a) {\n background-color: inherit;\n min-width: 0;\n gap: var(--ic-space-xs);\n}\n\n:host(.button-variant-icon) .button,\n:host(.button-variant-icon) ::slotted(a) {\n color: var(--button-default);\n min-width: 0;\n gap: var(--ic-space-xs);\n}\n\n:host(.button-variant-icon) .icon-container {\n width: var(--ic-space-lg) !important;\n height: var(--ic-space-lg) !important;\n}\n\n:host(.button-variant-icon) .button:hover,\n:host(.button-variant-icon) ::slotted(a:hover) {\n background-color: var(--button-default-background-hover);\n color: var(--button-default-hover);\n}\n\n:host(.button-variant-icon) .button:active:not(:focus),\n:host(.button-variant-icon) ::slotted(a:active:not(:focus)),\n:host(.button-variant-icon.loading) .button {\n background-color: var(--button-default-background-active);\n color: var(--button-default-active);\n}\n\n:host(.button-variant-icon.disabled) .button,\n:host(.button-variant-icon.disabled) ::slotted(a) {\n color: var(--ic-color-icon-disabled-mid);\n background: none;\n}\n\n:host(.clear-button) {\n color: var(--ic-atoms-input-clear-button);\n margin: 0 var(--ic-space-xxs);\n}\n\n:host(.clear-button) .button:focus,\n:host(.calendar-button) .button:focus,\n:host(.clock-button) .button:focus {\n box-shadow: none;\n}\n\n:host(.clear-button) .button,\n:host(.clear-button) ::slotted(a) {\n background-color: inherit;\n color: var(--ic-atoms-input-clear-button);\n}\n\n:host(.clear-button) .button:hover,\n:host(.clear-button) ::slotted(a:hover) {\n color: var(--ic-atoms-input-clear-button);\n}\n\n:host(.clear-button) .button:not(:active):focus ::slotted(svg) {\n background-color: var(--ic-atoms-input-clear-button-focus-inner);\n color: var(--ic-button-primary-text);\n\n /* border: var(--ic-atoms-input-clear-button-focus-outer); */\n}\n\n:host(.menu-close-button) ::slotted(svg) {\n --icon-height: 0.875rem;\n --icon-width: 0.875rem;\n\n color: var(--ic-top-navigation-icon-active);\n}\n\n:host(.popout-menu-button) .button {\n height: var(--height);\n justify-content: left;\n border-radius: 0;\n white-space: pre-line;\n text-align: start;\n}\n\n:host(.popout-menu-button) div.icon-container {\n flex: none;\n}\n\n:host(.popout-menu-button) .button:focus {\n box-shadow: var(--ic-border-focus-inset);\n border-radius: var(--ic-border-radius-inset);\n}\n\n.ic-button-describedby {\n display: none;\n}\n\n:host .ic-tooltip {\n display: block;\n}\n\n/** Dropdown **/\n\n:host .arrow-dropdown {\n margin-top: auto;\n}\n\n:host .dropdown-expanded {\n transform: rotate(180deg);\n margin-bottom: var(--ic-space-xxxs);\n}\n\n:host(.dropdown-no-icon) .button {\n padding-right: var(--ic-space-xs);\n}\n\n/** Slotted router item **/\n\nslot[name=\"router-item\"]::slotted(a) {\n pointer-events: all;\n}\n\n::slotted(a) {\n font-size: 0.875rem !important;\n border: none !important;\n vertical-align: middle !important;\n}\n\n/** menu button on top navigation\\side navigation \n * uses secondary monochrome tokens which are duplicated here to avoid multiple copies in each component\n */\n\n:host(#menu-button.ic-theme-dark) {\n --ic-button-secondary-background-hover-monochrome: var(\n --ic-action-dark-bg-hover\n );\n --ic-button-secondary-background-pressed-monochrome: var(\n --ic-action-dark-bg-pressed\n );\n --ic-button-secondary-text-hover-monochrome: var(\n --ic-action-monochrome-hover-dark\n );\n --ic-button-secondary-text-pressed-monochrome: var(\n --ic-action-monochrome-pressed-dark\n );\n --ic-button-secondary-border-hover-monochrome: var(\n --ic-color-border-neutral-hover-dark\n );\n --ic-button-secondary-border-pressed-monochrome: var(\n --ic-color-border-neutral-pressed-dark\n );\n}\n\n:host(#menu-button.ic-theme-light) {\n --ic-button-secondary-background-hover-monochrome: var(\n --ic-action-light-bg-hover\n );\n --ic-button-secondary-background-pressed-monochrome: var(\n --ic-action-light-bg-pressed\n );\n --ic-button-secondary-text-hover-monochrome: var(\n --ic-action-monochrome-hover\n );\n --ic-button-secondary-text-pressed-monochrome: var(\n --ic-action-monochrome-pressed\n );\n --ic-button-secondary-border-hover-monochrome: var(\n --ic-color-border-neutral-hover-light\n );\n --ic-button-secondary-border-pressed-monochrome: var(\n --ic-color-border-neutral-default\n );\n}\n\n/** High Contrast **/\n@media (forced-colors: active) {\n .button,\n ::slotted(a) {\n border: 0.125rem solid transparent !important;\n }\n\n .search-submit-button ::slotted(a),\n .ic-button-variant-icon ::slotted(a),\n .clear-button ::slotted(a),\n .search-submit-button ::slotted(svg),\n .ic-button-variant-icon ::slotted(svg),\n .clear-button ::slotted(svg) {\n color: HighlightText;\n }\n\n :host(.ic-button-variant-icon.monochrome) ::slotted(a),\n :host(.ic-button-variant-icon.monochrome) ::slotted(svg) {\n color: white;\n }\n\n :host(.clear-button) .button:not(:active):focus ::slotted(svg) {\n color: white !important;\n background-color: inherit;\n }\n\n :host(.ic-button-variant-primary:not(.ic-button-disabled)) ::slotted(svg) {\n color: currentcolor !important;\n }\n}\n\n/** Pagination **/\n\n:host(.flip) ::slotted(svg) {\n transform: scaleX(-1);\n}\n","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","@import \"../../global/normalize.css\";\n\n:host {\n /**\n * @prop --circular-diameter: Diameter of the circular-indicator in px, rem or %\n */\n\n display: block;\n\n --linear-border-radius: 0.25rem;\n --inner-color: var(--ic-loading-indicator-inner-color);\n --outer-color: var(--ic-loading-indicator-outer-color);\n --label-color: var(--ic-loading-indicator-label-color);\n --margin: none;\n --linear-line-height: var(--ic-space-xs);\n}\n\n:host(.ic-loading-indicator-monochrome) {\n --inner-color: var(--ic-loading-indicator-inner-color-monochrome);\n --outer-color: var(--ic-loading-indicator-outer-color-monochrome);\n --label-color: var(--ic-loading-indicator-label-color-monochrome);\n}\n\n.ic-loading-container {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n}\n\n:host([size=\"small\"]) {\n --circular-diameter: 2.5rem;\n --linear-line-height: var(--ic-space-xxs);\n}\n\n:host([size=\"medium\"]) {\n --circular-diameter: 5rem;\n}\n\n:host([size=\"large\"]) {\n --circular-diameter: 7.5rem;\n}\n\n:host([size=\"icon\"]) {\n display: inline-block;\n\n --margin: var(--ic-space-xxxs);\n --circular-diameter: 1.25rem;\n}\n\n:host(.ic-loading-indicator-label) {\n --margin: 0 0 var(--ic-space-xs) 0;\n}\n\n.ic-loading-label {\n --ic-typography-color: var(--label-color);\n\n margin-left: var(--label-margin-left);\n}\n\n.ic-loading-circular-outer {\n height: var(--circular-diameter);\n width: var(--circular-diameter);\n}\n\n.ic-loading-circular-outer.indeterminate {\n animation: circular-animation 1s linear;\n animation-iteration-count: infinite;\n}\n\n@keyframes circular-animation {\n 100% {\n transform: rotate(360deg);\n }\n}\n\n.ic-loading-circular-outer,\n.ic-loading-linear-outer {\n margin: var(--margin);\n}\n\n.ic-loading-linear-outer {\n background-color: var(--outer-color);\n height: var(--linear-line-height);\n width: 100%;\n border-radius: var(--linear-border-radius);\n overflow: hidden;\n}\n\n.ic-loading-circular-outer[aria-valuenow=\"0\"] .ic-loading-circular-inner,\n.ic-loading-linear-outer[aria-valuenow=\"0\"] .ic-loading-linear-inner {\n --inner-color: var(--outer-color);\n}\n\n.ic-loading-linear-inner {\n position: relative;\n height: 100%;\n background-color: var(--inner-color);\n border-radius: var(--linear-border-radius);\n}\n\n.indeterminate > .ic-loading-linear-inner {\n animation: linear-animation 2s infinite;\n}\n\n.determinate > .ic-loading-linear-inner {\n transition: width 0.5s;\n width: var(--linear-width);\n}\n\n:host(.ic-loading-indicator-full-width) {\n --linear-border-radius: none;\n}\n\n@keyframes linear-animation {\n 0% {\n width: 0%;\n left: -1%;\n }\n\n 25% {\n width: 0%;\n left: -1%;\n }\n\n 50% {\n width: 101%;\n left: -1%;\n }\n\n 75% {\n width: 0%;\n left: 101%;\n }\n\n 100% {\n width: 0%;\n left: 101%;\n }\n}\n\n.ic-loading-circular-svg {\n position: relative;\n width: 100%;\n height: 100%;\n transform: rotate(-90deg);\n}\n\n.ic-loading-circular-svg circle {\n width: 100%;\n height: 100%;\n fill: none;\n stroke: var(--compact-step-outer-color, var(--outer-color));\n stroke-width: var(--circular-line-width);\n stroke-linecap: round;\n}\n\n/* --stroke-dash-array calculated via dashArray method */\n.ic-loading-circular-svg circle:nth-child(2) {\n --circular-indeterminate: calc(\n (0.25 * var(--stroke-dasharray)) - var(--stroke-dasharray)\n );\n\n stroke-dasharray: var(--stroke-dasharray), var(--stroke-dasharray);\n stroke-dashoffset: var(--stroke-dashoffset, var(--circular-indeterminate));\n stroke: var(--compact-step-inner-color, var(--inner-color));\n}\n\n.inner-label {\n height: 100%;\n display: grid;\n}\n\n.inner-label .ic-loading-circular-svg,\n.inner-text {\n grid-column: 1;\n grid-row: 1;\n}\n\n/** ic-stepper **/\n:host(.not-required.compact-step-progress-indicator)\n .ic-loading-circular-svg\n circle:nth-child(2) {\n stroke: var(--ic-architectural-300);\n}\n\n.inner-text {\n display: flex;\n align-items: center;\n justify-content: center;\n width: var(--ic-space-lg);\n height: inherit;\n overflow: hidden;\n margin: auto;\n\n --ic-typography-color: var(\n --ic-step-indicator-text-current,\n var(--ic-status-info-default)\n );\n}\n\n:host(.not-required.compact-step-progress-indicator) .inner-text {\n --ic-typography-color: var(--ic-step-indicator-text-disabled);\n}\n\n:host(.ic-loading-indicator-light.not-required.compact-step-progress-indicator)\n .inner-text {\n --ic-typography-color: var(--ic-architectural-400);\n}\n\n/** High Contrast **/\n@media (forced-colors: active) {\n .indeterminate > .ic-loading-circular-inner {\n forced-color-adjust: none;\n }\n\n .ic-loading-linear-outer {\n border: var(--ic-border-hc);\n }\n\n .ic-loading-linear-inner {\n background-color: canvastext;\n }\n\n .ic-loading-circular-svg circle {\n stroke: Background;\n }\n\n .ic-loading-circular-svg circle:nth-child(2) {\n stroke: canvastext;\n }\n\n :host(.not-required.compact-step-progress-indicator)\n .ic-loading-circular-svg\n circle:nth-child(2) {\n stroke: GrayText;\n }\n}\n","import { Component, Element, h, Host, Prop, State, Watch } from \"@stencil/core\";\nimport {\n IcLoadingCircleXYR,\n IcLoadingSizes,\n IcLoadingTypes,\n} from \"./ic-loading-indicator.types\";\nimport { IcThemeMode } from \"../../utils/types\";\n\nconst LOADING_INDICATOR_WIDTHS = {\n large: 120,\n medium: 80,\n small: 40,\n icon: 20,\n};\n\n@Component({\n tag: \"ic-loading-indicator\",\n styleUrl: \"ic-loading-indicator.css\",\n shadow: true,\n})\nexport class LoadingIndicator {\n private innerElement?: HTMLDivElement;\n private interval: ReturnType<typeof setInterval>;\n private labelList: string[] = [];\n private outerElement?: HTMLDivElement;\n\n @Element() el: HTMLIcLoadingIndicatorElement;\n\n @State() circularDiameter = 0;\n @State() circularLineWidth = 0;\n @State() circularDimensions: IcLoadingCircleXYR = {\n x: 0,\n y: 0,\n r: 0,\n };\n @State() indicatorLabel?: string;\n @State() clipInnerElement = false;\n\n /**\n * The description that will be set as the aria-label of the loading indicator when not using a visible label.\n */\n @Prop() description = \"Loading\";\n\n /**\n * If `true`, when linear, the full-width variant (i.e. without a border radius) will be displayed.\n */\n @Prop({ reflect: true }) fullWidth = false;\n\n /**\n * @internal The step number of a compact step, managed by ic-step.\n */\n @Prop() innerLabel?: number;\n\n /**\n * The label to be displayed beneath the loading indicator.\n * Display a changing label by supplying an array of messages.\n */\n @Prop() label?: string | string[];\n @Watch(\"label\")\n watchPropHandler(): void {\n this.updateLabel();\n }\n\n /**\n * The time in milliseconds before the label changes.\n */\n @Prop() labelDuration = 8000;\n\n /**\n * The maximum value that the progress value can take.\n * Used to calculate the proportional width of the progress bar.\n */\n @Prop() max = 100;\n\n /**\n * The minimum value that the progress value can take.\n * Used to calculate the proportional width of the progress bar.\n */\n @Prop() min = 0;\n\n /**\n * If `true`, the element will display as black and white.\n */\n @Prop() monochrome = false;\n\n /**\n * The current amount of progress made.\n * If not provided, component acts as an indeterminate loading indicator.\n */\n @Prop() progress?: number;\n @Watch(\"max\")\n @Watch(\"min\")\n @Watch(\"progress\")\n handleProgressChange(): void {\n if (this.type === \"linear\") {\n this.setLinearDeterminateWidth();\n } else {\n this.setCircleDimensions();\n }\n }\n\n /**\n * The size of the loading indicator.\n */\n @Prop({ reflect: true }) size: IcLoadingSizes = \"medium\";\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme: IcThemeMode = \"inherit\";\n\n /**\n * The type of indicator, either linear or circular.\n */\n @Prop({ reflect: true }) type: IcLoadingTypes = \"circular\";\n @Watch(\"type\")\n setIndicatorDimensions(): void {\n if (this.type === \"circular\") {\n // Sets the circular indicator line width - accounting for the circle size being altered using the CSS custom property\n const diameter = this.calculateWidth();\n if (this.outerElement && diameter !== this.circularDiameter) {\n this.circularLineWidth = diameter * 0.1;\n this.circularDiameter = diameter;\n this.outerElement.style.setProperty(\n \"--circular-line-width\",\n `${this.circularLineWidth}px`\n );\n }\n this.setCircleDimensions();\n } else {\n this.setLinearDeterminateWidth();\n }\n }\n\n disconnectedCallback(): void {\n clearInterval(this.interval);\n }\n\n componentWillLoad(): void {\n this.updateLabel();\n this.el.setAttribute(\"exportparts\", \"ic-loading-container\");\n }\n\n componentDidLoad(): void {\n this.setIndicatorDimensions();\n }\n\n private getLabel = (labelIndex: number) =>\n new Promise(() => {\n this.interval = setInterval(() => {\n if (labelIndex < this.labelList.length - 1) {\n labelIndex++;\n } else {\n labelIndex = 0;\n }\n this.indicatorLabel = this.labelList[labelIndex];\n }, this.labelDuration);\n });\n\n private getLabelVariant = () => {\n const width = this.type === \"circular\" ? this.calculateWidth() : 0;\n\n if (this.size === \"small\" || (width && width < 60)) {\n return \"label\";\n } else if (this.size === \"large\" || width >= 120) {\n return \"h2\";\n }\n return \"h4\";\n };\n\n private calculateWidth = () => {\n if (this.outerElement?.offsetWidth) return this.outerElement.offsetWidth;\n\n if (this.outerElement) {\n const { width } = window.getComputedStyle(this.outerElement);\n\n if (width) {\n // Regex to check the units of the css string\n if (width.match(/\\D+$/)?.[0] !== \"%\") return parseFloat(width);\n\n const parentWidth = this.outerElement.parentElement?.offsetWidth;\n if (parentWidth) return parentWidth * (parseFloat(width) / 100);\n }\n }\n\n return LOADING_INDICATOR_WIDTHS[this.size];\n };\n\n private calculateProportion = (progress: number) => {\n const minProgress = Math.min(this.max, Math.max(this.min, progress));\n return (minProgress - this.min) / (this.max - this.min);\n };\n\n private setLinearDeterminateWidth = () => {\n // Ensure progress cannot be out of bounds\n if (!this.innerElement || !this.progress) return;\n\n const proportion = this.calculateProportion(this.progress);\n this.clipInnerElement = proportion > 0.5;\n if (this.clipInnerElement) {\n this.innerElement.classList.remove(\"clip\");\n } else {\n this.innerElement.classList.add(\"clip\");\n }\n this.innerElement.style.setProperty(\n \"--linear-width\",\n `${proportion * 100}%`\n );\n };\n\n private updateLabel = () => {\n if (!this.label) return;\n\n if (typeof this.label === \"string\") {\n this.indicatorLabel = this.label;\n } else {\n this.labelList = this.label;\n this.indicatorLabel = this.labelList[0];\n if (this.labelList.length > 1) {\n this.getLabel(0);\n }\n }\n };\n\n private setCircleDimensions = () => {\n if (this.circularDiameter <= 0) return;\n\n const r = this.circularDiameter / 2;\n const nextRadius = r - this.circularLineWidth / 2;\n const dashArray = 2 * Math.PI * nextRadius;\n\n this.circularDimensions = {\n x: r,\n y: r,\n r: nextRadius,\n dashArray: `${dashArray}px`,\n dashOffset: this.progress\n ? `${(-1 - this.calculateProportion(this.progress)) * dashArray}px`\n : undefined,\n };\n };\n\n render() {\n const {\n circularDiameter,\n circularDimensions: { x, y, r, dashArray, dashOffset },\n description,\n fullWidth,\n indicatorLabel,\n innerLabel,\n label,\n max,\n min,\n monochrome,\n progress,\n size,\n theme,\n type,\n } = this;\n\n return (\n <Host\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n \"ic-loading-indicator-full-width\": fullWidth,\n \"ic-loading-indicator-label\": !!label,\n \"ic-loading-indicator-monochrome\": monochrome,\n }}\n >\n <div class=\"ic-loading-container\" part=\"ic-loading-container\">\n <div\n ref={(el) => (this.outerElement = el)}\n class={{\n [`ic-loading-${type}-outer`]: true,\n [progress === undefined ? \"indeterminate\" : \"determinate\"]: true,\n }}\n role=\"progressbar\"\n aria-labelledby={label && size !== \"icon\" && \"ic-loading-label\"}\n aria-label={description}\n aria-valuenow={progress}\n aria-valuemin={min}\n aria-valuemax={max}\n >\n <div\n ref={(el) => (this.innerElement = el)}\n class={{\n [`ic-loading-${type}-inner`]: true,\n \"inner-label\": !!innerLabel,\n }}\n >\n {innerLabel && size === \"small\" && (\n <ic-typography variant=\"subtitle-small\" class=\"inner-text\">\n {innerLabel}\n </ic-typography>\n )}\n {type === \"circular\" && (\n <svg\n class=\"ic-loading-circular-svg\"\n viewBox={`0 0 ${circularDiameter} ${circularDiameter}`}\n >\n <circle cx={x} cy={y} r={r}></circle>\n <circle\n style={{\n \"--circular-steps-max\": progress ? `${max}` : undefined,\n \"--progress-value\":\n progress !== undefined ? `${progress}` : undefined,\n \"--stroke-dasharray\": dashArray,\n \"--stroke-dashoffset\": dashOffset,\n }}\n cx={x}\n cy={y}\n r={r}\n ></circle>\n </svg>\n )}\n </div>\n </div>\n {label && size !== \"icon\" && (\n <ic-typography\n id=\"ic-loading-label\"\n class=\"ic-loading-label\"\n role=\"alert\"\n variant={this.getLabelVariant()}\n >\n <p>{indicatorLabel}</p>\n </ic-typography>\n )}\n </div>\n </Host>\n );\n }\n}\n","@import \"../../global/normalize.css\";\n\n/**\n * @prop --ic-z-index-tooltip: z-index of tooltip\n */\n\n:host(.ic-tooltip) {\n width: max-content;\n height: max-content;\n\n --ic-tooltip-background: var(--ic-color-background-primary-dark);\n --ic-tooltip-text: var(--ic-color-text-primary-dark);\n --ic-tooltip-border: var(--ic-color-border-neutral-grey-light);\n}\n\n:host(.ic-tooltip) .ic-tooltip-container {\n background-color: var(--ic-tooltip-background);\n text-align: center;\n padding: var(--ic-space-xxxs) var(--ic-space-xs);\n border-radius: var(--ic-border-radius);\n border: var(--ic-border-width) solid var(--ic-tooltip-border);\n position: absolute;\n max-width: 20rem;\n display: none;\n z-index: var(--ic-z-index-tooltip);\n box-shadow: var(--ic-elevation-overlay);\n width: max-content;\n}\n\n:host(.ic-tooltip) ic-typography {\n --ic-typography-color: var(--ic-tooltip-text);\n}\n\n:host(.tooltip-navigation-item:not(.tooltip-navigation-item-side-nav-collapsed))\n .ic-tooltip-container,\n:host(.tooltip-disabled) .ic-tooltip-container {\n display: none !important;\n}\n\n:host(.tooltip-long-label-navigation-item-side-nav-expanded)\n .ic-tooltip-container[data-show] {\n display: block !important;\n}\n\n:host(.ic-tooltip) .ic-tooltip-arrow,\n:host(.ic-tooltip) .ic-tooltip-arrow::before {\n position: absolute;\n background: inherit;\n}\n\n:host(.ic-tooltip) .ic-tooltip-arrow {\n visibility: hidden;\n width: var(--ic-space-md);\n height: var(--ic-space-md);\n}\n\n:host(.ic-tooltip) .ic-tooltip-arrow::before {\n visibility: visible;\n content: \"\";\n border: var(--ic-border-width) solid var(--ic-tooltip-border);\n width: 100%;\n height: 100%;\n}\n\n:host(.ic-tooltip) .ic-tooltip-container[data-show] {\n display: block;\n}\n\n:host(.ic-tooltip)\n .ic-tooltip-container[data-popper-placement^=\"top\"]\n > .ic-tooltip-arrow {\n height: var(--ic-space-xxxs);\n}\n\n:host(.ic-tooltip)\n .ic-tooltip-container[data-popper-placement^=\"top\"]\n > .ic-tooltip-arrow::before {\n border-radius: 0 0 var(--ic-border-radius) var(--ic-border-radius);\n left: 0;\n top: var(--ic-space-xxxs);\n border-top: 0;\n transform: translateX(var(--tooltip-arrow-translate));\n}\n\n:host(.ic-tooltip)\n .ic-tooltip-container[data-popper-placement^=\"bottom\"]\n > .ic-tooltip-arrow {\n top: calc(-1 * var(--ic-space-xxs));\n height: var(--ic-space-xxxs);\n}\n\n:host(.ic-tooltip)\n .ic-tooltip-container[data-popper-placement^=\"bottom\"]\n > .ic-tooltip-arrow::before {\n border-radius: var(--ic-border-radius) var(--ic-border-radius) 0 0;\n left: 0;\n top: var(--ic-space-1px);\n border-bottom: 0;\n transform: translateX(var(--tooltip-arrow-translate));\n}\n\n:host(.ic-tooltip)\n .ic-tooltip-container[data-popper-placement^=\"left\"]\n > .ic-tooltip-arrow {\n width: var(--ic-space-xxxs);\n right: calc(-1 * var(--ic-space-1px));\n}\n\n:host(.ic-tooltip)\n .ic-tooltip-container[data-popper-placement^=\"left\"]\n > .ic-tooltip-arrow::before {\n border-radius: 0 var(--ic-border-radius) var(--ic-border-radius) 0;\n border-left: 0;\n top: calc(-1 * var(--ic-space-1px));\n}\n\n:host(.ic-tooltip)\n .ic-tooltip-container[data-popper-placement^=\"right\"]\n > .ic-tooltip-arrow {\n width: var(--ic-space-xxxs);\n left: calc(-1 * var(--ic-space-xxs));\n}\n\n:host(.ic-tooltip)\n .ic-tooltip-container[data-popper-placement^=\"right\"]\n > .ic-tooltip-arrow::before {\n border-radius: var(--ic-border-radius) 0 0 var(--ic-border-radius);\n border-right: 0;\n top: calc(-1 * var(--ic-space-1px));\n}\n\n:host(.ic-tooltip-on-dialog) {\n display: inline-block;\n}\n\n@media screen and (max-width: 576px) {\n :host(.ic-tooltip) .ic-tooltip-container {\n max-width: 18.875rem;\n }\n}\n\n@media (forced-colors: active) {\n :host(.ic-tooltip) .ic-tooltip-container,\n :host(.ic-tooltip) .ic-tooltip-arrow::before {\n border: var(--ic-border-hc);\n }\n}\n","import {\n Component,\n Element,\n Host,\n Prop,\n h,\n Method,\n State,\n Watch,\n} from \"@stencil/core\";\nimport { Instance, Options, createPopper } from \"@popperjs/core\";\nimport { IcTooltipPlacements } from \"./ic-tooltip.types\";\nimport { onComponentRequiredPropUndefined } from \"../../utils/helpers\";\nimport { IcThemeMode } from \"../../utils/types\";\n\n@Component({\n tag: \"ic-tooltip\",\n styleUrl: \"ic-tooltip.css\",\n shadow: true,\n})\nexport class Tooltip {\n private arrow: HTMLDivElement;\n private delayedHideEvents = [\"mouseleave\"];\n private dialogContentArea: HTMLDivElement | null;\n private instantHideEvents = [\"focusout\"];\n private mouseOverTool: boolean = false;\n private persistTooltip = false;\n private popperInstance: Instance;\n private showEvents = [\n !this.disableHover && \"mouseenter\",\n !this.disableHover && \"focusin\",\n !this.disableClick && \"click\",\n ];\n private toolTip: HTMLDivElement;\n\n @Element() el: HTMLIcTooltipElement;\n\n /**\n * If `true`, the tooltip will not be displayed on click, it will require hover or using the display method.\n */\n @Prop() disableClick?: boolean = false;\n\n @Watch(\"disableClick\")\n watchDisableClickHandler(): void {\n if (this.disableClick) {\n this.hide();\n }\n this.updateTooltipEvents();\n }\n\n /**\n * If `true`, the tooltip will not be displayed on hover, it will require a click.\n */\n @Prop() disableHover?: boolean = false;\n\n @Watch(\"disableHover\")\n watchDisableHoverHandler(): void {\n if (this.disableHover) {\n this.hide();\n }\n this.updateTooltipEvents();\n }\n\n /**\n * Setting to `true` can help in situations where tooltip content is clipped by a parent element.\n */\n @Prop() fixedPositioning: boolean = false;\n\n /**\n * The number of lines to display before truncating the text.\n */\n @Prop() maxLines?: number;\n\n /**\n * The position of the tooltip in relation to the parent element.\n */\n @Prop() placement?: IcTooltipPlacements = \"bottom\";\n\n /**\n * @internal Sets the tooltip to aria-hidden, when used as part of components that are already announced.\n */\n @Prop() silent?: boolean = false;\n\n /**\n * The ID of the element the tooltip is describing - for when aria-labelledby or aria-describedby is used.\n */\n @Prop({ reflect: true }) target?: string;\n\n /**\n * Sets the tooltip to the dark or light theme colors. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * The text to display on the tooltip.\n */\n @Prop() label!: string;\n @Watch(\"label\")\n watchLabelHandler(): void {\n if (this.toolTip?.hasAttribute(\"data-show\") && this.popperInstance) {\n this.popperInstance.update();\n }\n }\n\n @State() popperProps: Partial<Options> = {};\n\n /**\n * @internal This method allows props to be added to the PopperJS createPopper instance outside of tooltip\n * @param props object - createPopper props set externally\n */\n @Method()\n async setExternalPopperProps<T extends Partial<Options>>(props: T) {\n this.popperProps = props;\n }\n\n disconnectedCallback(): void {\n this.manageEventListeners(\"remove\");\n if (this.popperInstance !== undefined) {\n this.popperInstance.destroy();\n }\n }\n\n componentDidLoad(): void {\n this.manageEventListeners(\"add\");\n\n let dialog: HTMLIcDialogElement | null;\n if ((this.el.getRootNode() as ShadowRoot).host) {\n dialog = (this.el.getRootNode() as ShadowRoot).host.closest(\"ic-dialog\");\n } else {\n dialog = this.el.closest(\"ic-dialog\");\n }\n this.dialogContentArea =\n dialog?.shadowRoot?.querySelector(\".content-area\") ?? null;\n\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Tooltip\"\n );\n }\n\n componentDidRender(): void {\n const typographyEl = this.el.shadowRoot?.querySelector(\n \".ic-tooltip-container > ic-typography\"\n );\n this.maxLines &&\n this.maxLines > 0 &&\n typographyEl?.setAttribute(\n \"style\",\n `--truncation-max-lines: ${this.maxLines}`\n );\n }\n /**\n * Method to programmatically show/hide the tooltip without needing to interact with an anchor element\n * @param show Whether to show or hide the tooltip\n * @param persistTooltip Whether the tooltip should stay on the screen when actions are performed that would previously dismiss the tooltip, such as on hover\n */\n @Method()\n async displayTooltip(show: boolean, persistTooltip?: boolean): Promise<void> {\n this.persistTooltip = !!persistTooltip;\n show ? this.show() : this.hide();\n }\n\n /**\n * @internal Method to return if tooltip is currently visible.\n */\n @Method()\n async isTooltipVisible(): Promise<boolean> {\n return Promise.resolve(this.toolTip.hasAttribute(\"data-show\"));\n }\n\n private show = () => {\n if (this.label) {\n this.toolTip.setAttribute(\"data-show\", \"\");\n\n if (this.dialogContentArea) {\n this.el.classList.add(\"ic-tooltip-on-dialog\");\n }\n\n this.popperInstance = createPopper(this.el, this.toolTip, {\n strategy: this.fixedPositioning ? \"fixed\" : \"absolute\",\n placement: this.placement,\n modifiers: [\n {\n name: \"offset\",\n options: {\n offset: [0, 10],\n },\n },\n {\n name: \"arrow\",\n options: {\n element: this.arrow,\n },\n },\n {\n name: \"eventListeners\",\n options: { scroll: false, resize: false },\n },\n ...(this.dialogContentArea\n ? [\n {\n name: \"preventOverflow\",\n options: {\n boundary: this.dialogContentArea,\n padding: 8,\n },\n },\n {\n name: \"flip\",\n options: {\n boundary: this.dialogContentArea,\n },\n },\n ]\n : []),\n ],\n ...this.popperProps,\n });\n } else {\n console.warn(`Tooltip can't display without prop 'label' set`);\n }\n };\n\n private hide = () => {\n if (this.toolTip !== undefined) {\n this.toolTip.removeAttribute(\"data-show\");\n this.persistTooltip = false;\n }\n if (this.popperInstance !== undefined) {\n this.popperInstance.destroy();\n }\n };\n\n private checkCloseTooltip = () => {\n setTimeout(() => {\n if (!this.mouseOverTool && !this.persistTooltip) {\n this.hide();\n }\n }, 100);\n };\n\n private mouseEnterTooltip = () => {\n this.mouseOverTool = true;\n };\n\n private mouseLeaveTooltip = () => {\n this.mouseOverTool = false;\n this.checkCloseTooltip();\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n if (event.key === \"Escape\" && !this.persistTooltip) {\n this.hide();\n }\n };\n\n private manageEventListeners = (action: \"add\" | \"remove\") => {\n const method =\n action === \"add\" ? \"addEventListener\" : \"removeEventListener\";\n\n this.showEvents.forEach((event) => {\n if (event) {\n this.el[method](event, this.show);\n if (this.toolTip !== undefined) {\n this.toolTip[method](event, this.mouseEnterTooltip);\n }\n }\n });\n\n if (!this.persistTooltip) {\n this.instantHideEvents.forEach((event) => {\n this.el[method](event, this.hide);\n });\n }\n\n this.delayedHideEvents.forEach((event) => {\n this.el[method](event, this.checkCloseTooltip);\n if (this.toolTip !== undefined) {\n this.toolTip[method](event, this.mouseLeaveTooltip);\n }\n });\n\n document[method](\"keydown\", this.handleKeyDown as EventListener);\n };\n\n private updateTooltipEvents = () => {\n this.manageEventListeners(\"remove\");\n this.showEvents = [\n !this.disableHover && \"mouseenter\",\n !this.disableHover && \"focusin\",\n !this.disableClick && \"click\",\n ];\n this.manageEventListeners(\"add\");\n };\n\n render() {\n const { label, maxLines, silent, theme } = this;\n return (\n <Host\n class={{\n \"ic-tooltip\": true,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n <div\n ref={(el) => (this.toolTip = el as HTMLDivElement)}\n role=\"tooltip\"\n class=\"ic-tooltip-container\"\n aria-hidden={`${silent}`}\n >\n <ic-typography maxLines={maxLines} variant=\"caption\">\n {label}\n </ic-typography>\n <div\n ref={(el) => (this.arrow = el as HTMLDivElement)}\n class=\"ic-tooltip-arrow\"\n ></div>\n </div>\n <slot></slot>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r as e,c as i,h as t,H as c,g as s}from"./p-8e4e97b4.js";import{r as a,l as o,k as r,o as n,m as l,q as d}from"./p-b57e59b7.js";import"./p-bddf799a.js";const h='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:inline-block;--ic-input-label-text-color:var(--ic-switch-label);--ic-input-label-helper-text-color:var(--ic-switch-help-text);--ic-input-label-helpertext-padding:var(--ic-space-xs)}input{overflow:hidden;-webkit-appearance:none;-moz-appearance:none;appearance:none}.ic-switch-container{display:flex;flex-wrap:wrap;align-items:center;cursor:pointer}.ic-switch-label{margin-left:var(--ic-space-xxs);margin-bottom:var(--ic-space-xs)}.ic-switch-label-small{margin-bottom:var(--ic-space-xs)}.ic-switch-toggle{display:flex;align-items:center;justify-content:space-around;width:4rem;height:var(--ic-space-xl);position:relative;border-radius:100vw;background-color:var(--ic-switch-unchecked-bg);border:var(--ic-border-width) solid var(--ic-switch-unchecked);box-sizing:border-box;transition:var(--ic-transition-duration-fast);margin-left:var(--ic-space-xxs)}.ic-switch-line-break{flex:1 0 100%}.ic-switch-toggle::before{content:"";width:1.333rem;height:1.333rem;border-radius:50%;position:absolute;z-index:2;top:50%;left:0.333rem;transform:translate(0, -50%);background-color:var(--ic-switch-unchecked);transition:var(--ic-transition-duration-slow)}.ic-switch-icon{display:inline-block;vertical-align:middle;width:0.625rem;height:0.625rem}.ic-switch-icon-circle,.ic-switch-icon-line{stroke-width:1}.ic-switch-icon-circle{stroke:var(--ic-switch-indicator-off)}.ic-switch-icon-line{stroke:var(--ic-switch-indicator-on)}@media (prefers-reduced-motion: reduce){.ic-switch-toggle::before{transition-duration:0ms}}.ic-switch-input:checked+.ic-switch-toggle{background-color:var(--ic-switch-checked-bg);border:none}.ic-switch-input:checked+.ic-switch-toggle::before{transform:translate(var(--ic-space-xl), -50%);background-color:var(--ic-switch-checked)}.ic-switch-input:not([disabled])+.ic-switch-toggle:hover::before{box-shadow:0 0 0 0.75rem var(--ic-switch-unchecked-bg-hover)}.ic-switch-input:not([disabled])+.ic-switch-toggle:active::before{box-shadow:0 0 0 0.75rem var(--ic-switch-unchecked-bg-pressed)}.ic-switch-input:not([disabled]):checked+.ic-switch-toggle:hover::before{box-shadow:0 0 0 0.75rem var(--ic-switch-checked-bg-hover)}.ic-switch-input:not([disabled]):checked+.ic-switch-toggle:active::before{box-shadow:0 0 0 0.75rem var(--ic-switch-checked-bg-pressed)}.ic-switch-input:focus:not([disabled])+.ic-switch-toggle,.ic-switch-input:focus-visible:not([disabled])+.ic-switch-toggle{box-shadow:var(--ic-border-focus)}.ic-switch-disabled{cursor:default}.ic-switch-disabled .ic-switch-icon-circle{stroke:var(--ic-switch-indicator-off-disabled)}.ic-switch-disabled .ic-switch-icon-line{stroke:var(--ic-switch-indicator-on-disabled)}.ic-switch-input:disabled+.ic-switch-toggle{background-color:var(--ic-switch-unchecked-bg-disabled);border:var(--ic-space-1px) dashed var(--ic-switch-unchecked-outline-disabled)}.ic-switch-input:disabled+.ic-switch-toggle::before{background-color:var(--ic-switch-unchecked-disabled)}.ic-switch-input:disabled:checked+.ic-switch-toggle{background-color:var(--ic-switch-checked-bg-disabled);border:var(--ic-border-width) dashed\n var(--ic-switch-checked-outline-disabled)}.ic-switch-input:disabled:checked+.ic-switch-toggle::before{background-color:var(--ic-switch-checked)}.ic-switch-small .ic-switch-toggle{width:var(--ic-space-xxl);height:var(--ic-space-lg)}.ic-switch-small .ic-switch-toggle::before{width:var(--ic-space-md);height:var(--ic-space-md);left:var(--ic-space-xxs)}.ic-switch-small .ic-switch-input:checked+.ic-switch-toggle::before{transform:translate(var(--ic-space-lg), -50%)}::slotted([slot="right-adornment"]){margin-left:var(--ic-space-sm);fill:var(--ic-switch-icon)}@media (forced-colors: active){.ic-switch-toggle::before,.ic-switch-input:checked+.ic-switch-toggle{border:var(--ic-border-hc)}.ic-switch-input:focus+.ic-switch-toggle{border-color:highlight;outline:var(--ic-space-xxxs) solid highlight}.ic-switch-input:checked+.ic-switch-toggle::before{transform:translate(calc(var(--ic-space-xl) - 0.125rem), -50%)}.ic-switch-input:disabled+.ic-switch-toggle,.ic-switch-input:disabled:checked+.ic-switch-toggle,.ic-switch-input:disabled+.ic-switch-toggle::before{border-color:GrayText}.ic-switch-disabled .ic-switch-icon-circle,.ic-switch-disabled .ic-switch-icon-line{stroke:GrayText}}';const b=h;let p=0;const w=class{constructor(t){e(this,t);this.icBlur=i(this,"icBlur",7);this.icChange=i(this,"icChange",7);this.icFocus=i(this,"icFocus",7);this.inputId=`ic-switch-input-${p++}`;this.checkedState=false;this.initiallyChecked=this.checked;this.checked=false;this.disabled=false;this.helperText="";this.hideLabel=false;this.name=this.inputId;this.size="medium";this.theme="inherit";this.value="on";this.handleChange=()=>{this.checkedState=!this.checkedState;this.icChange.emit({checked:this.checkedState,value:this.value})};this.onFocus=()=>{this.icFocus.emit()};this.onBlur=()=>{this.icBlur.emit()};this.handleFormReset=()=>{this.checkedState=this.initiallyChecked}}checkedChangeHandler(){this.checkedState=!!this.checked}watchDisabledHandler(){a(this.disabled,this.el)}disconnectedCallback(){o(this.el,this.handleFormReset)}componentWillLoad(){this.checkedState=this.checked;r(this.el,this.handleFormReset);a(this.disabled,this.el)}componentDidLoad(){n([{prop:this.label,propName:"label"}],"Switch")}async setFocus(){var e,i;(i=(e=this.el.shadowRoot)===null||e===void 0?void 0:e.querySelector("input"))===null||i===void 0?void 0:i.focus()}render(){const{label:e,checkedState:i,size:s,disabled:a,name:o,value:r,hideLabel:n,helperText:h,inputId:b,theme:p}=this;const w=s==="small";l(this.el,i?r:"",o,a);return t(c,{key:"1f3cc9bbab1f273d76380e351f4fc3dfbcb85a55",class:{[`ic-theme-${p}`]:p!=="inherit"}},t("label",{key:"49569c926514f3832f137bc36638fc8318407abe",class:{"ic-switch-container":true,"ic-switch-disabled":!!a,"ic-switch-small":w},htmlFor:b},!n&&t("ic-input-label",{key:"1e7934fa8eb3514931b16e3723374792da3fc77b",for:b,label:e,helperText:h,readonly:false,disabled:a,class:{"ic-switch-label":true,"ic-switch-label-small":w}},t("slot",{key:"909af29daf9c94113ee16fbba1eeba563acb6a91",name:"helper-text",slot:"helper-text"})),!n&&t("span",{key:"e25526f252995da3cfe450eb806a3eb1ef5a2089",class:"ic-switch-line-break"}),t("input",{key:"e6e78d8ddb9af85c055adcad3ef21fbac2fd5d01",checked:i,disabled:a,"aria-label":e,"aria-checked":i?"true":"false","aria-describedby":d(this.el,b,h!=="",false),role:"switch",class:"ic-switch-input",type:"checkbox",name:"toggle",id:b,onFocus:this.onFocus,onBlur:this.onBlur,onChange:this.handleChange}),t("span",{key:"a0be597711d9b13b2e0224b9518f364a55d7f3bd",class:"ic-switch-toggle"},t("svg",{key:"2f7dab194ad8a6d0795c9067b1a6f4e162b79aa3",class:"ic-switch-icon","aria-hidden":"true",focusable:"false",viewBox:"0 0 10 10",xmlns:"http://www.w3.org/2000/svg"},t("line",{key:"f763ce863fe848d012cacc38886a6c39c6857f06",class:"ic-switch-icon-line",x1:"9",y1:w?"2":"1",x2:"9",y2:w?"8":"9"})),t("svg",{key:"49fa1c767bad7c491a6c52c4efa9c5fb1d2d9646",class:"ic-switch-icon","aria-hidden":"true",focusable:"false",viewBox:"0 0 10 10",xmlns:"http://www.w3.org/2000/svg"},t("circle",{key:"5165a18b8d1e9d5e9d0067d00559d76f50522753",class:"ic-switch-icon-circle",fill:"none",cx:"5",cy:"5",r:w?"3.335":"4.445"}))),t("slot",{key:"ddee1e8995f799a83c5e00f44c041130bc7d7978",name:"right-adornment"})))}static get delegatesFocus(){return true}get el(){return s(this)}static get watchers(){return{checked:["checkedChangeHandler"],disabled:["watchDisabledHandler"]}}};w.style=b;export{w as ic_switch};
2
+ //# sourceMappingURL=p-01e018cb.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["icSwitchCss","IcSwitchStyle0","inputIds","Switch","constructor","hostRef","this","inputId","checkedState","initiallyChecked","checked","disabled","helperText","hideLabel","name","size","theme","value","handleChange","icChange","emit","onFocus","icFocus","onBlur","icBlur","handleFormReset","checkedChangeHandler","watchDisabledHandler","removeDisabledFalse","el","disconnectedCallback","removeFormResetListener","componentWillLoad","addFormResetListener","componentDidLoad","onComponentRequiredPropUndefined","prop","label","propName","setFocus","_b","_a","shadowRoot","querySelector","focus","render","isSmall","renderHiddenInput","h","Host","key","class","htmlFor","for","readonly","slot","getInputDescribedByText","role","type","id","onChange","focusable","viewBox","xmlns","x1","y1","x2","y2","fill","cx","cy","r"],"sources":["src/components/ic-switch/ic-switch.css?tag=ic-switch&encapsulation=shadow","src/components/ic-switch/ic-switch.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: inline-block;\n\n --ic-input-label-text-color: var(--ic-switch-label);\n --ic-input-label-helper-text-color: var(--ic-switch-help-text);\n --ic-input-label-helpertext-padding: var(--ic-space-xs);\n}\n\ninput {\n overflow: hidden;\n appearance: none;\n}\n\n.ic-switch-container {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n cursor: pointer;\n}\n\n.ic-switch-label {\n margin-left: var(--ic-space-xxs);\n margin-bottom: var(--ic-space-xs);\n}\n\n.ic-switch-label-small {\n margin-bottom: var(--ic-space-xs);\n}\n\n.ic-switch-toggle {\n display: flex;\n align-items: center;\n justify-content: space-around;\n width: 4rem;\n height: var(--ic-space-xl);\n position: relative;\n border-radius: 100vw;\n background-color: var(--ic-switch-unchecked-bg);\n border: var(--ic-border-width) solid var(--ic-switch-unchecked);\n box-sizing: border-box;\n transition: var(--ic-transition-duration-fast);\n margin-left: var(--ic-space-xxs);\n}\n\n.ic-switch-line-break {\n flex: 1 0 100%;\n}\n\n.ic-switch-toggle::before {\n content: \"\";\n width: 1.333rem;\n height: 1.333rem;\n border-radius: 50%;\n position: absolute;\n z-index: 2;\n top: 50%;\n left: 0.333rem;\n transform: translate(0, -50%);\n background-color: var(--ic-switch-unchecked);\n transition: var(--ic-transition-duration-slow);\n}\n\n.ic-switch-icon {\n display: inline-block;\n vertical-align: middle;\n width: 0.625rem;\n height: 0.625rem;\n}\n\n.ic-switch-icon-circle,\n.ic-switch-icon-line {\n stroke-width: 1;\n}\n\n.ic-switch-icon-circle {\n stroke: var(--ic-switch-indicator-off);\n}\n\n.ic-switch-icon-line {\n stroke: var(--ic-switch-indicator-on);\n}\n\n@media (prefers-reduced-motion: reduce) {\n .ic-switch-toggle::before {\n transition-duration: 0ms;\n }\n}\n\n.ic-switch-input:checked + .ic-switch-toggle {\n background-color: var(--ic-switch-checked-bg);\n border: none;\n}\n\n.ic-switch-input:checked + .ic-switch-toggle::before {\n transform: translate(var(--ic-space-xl), -50%);\n background-color: var(--ic-switch-checked);\n}\n\n.ic-switch-input:not([disabled]) + .ic-switch-toggle:hover::before {\n box-shadow: 0 0 0 0.75rem var(--ic-switch-unchecked-bg-hover);\n}\n\n.ic-switch-input:not([disabled]) + .ic-switch-toggle:active::before {\n box-shadow: 0 0 0 0.75rem var(--ic-switch-unchecked-bg-pressed);\n}\n\n.ic-switch-input:not([disabled]):checked + .ic-switch-toggle:hover::before {\n box-shadow: 0 0 0 0.75rem var(--ic-switch-checked-bg-hover);\n}\n\n.ic-switch-input:not([disabled]):checked + .ic-switch-toggle:active::before {\n box-shadow: 0 0 0 0.75rem var(--ic-switch-checked-bg-pressed);\n}\n\n.ic-switch-input:focus:not([disabled]) + .ic-switch-toggle,\n.ic-switch-input:focus-visible:not([disabled]) + .ic-switch-toggle {\n box-shadow: var(--ic-border-focus);\n}\n\n.ic-switch-disabled {\n cursor: default;\n}\n\n.ic-switch-disabled .ic-switch-icon-circle {\n stroke: var(--ic-switch-indicator-off-disabled);\n}\n\n.ic-switch-disabled .ic-switch-icon-line {\n stroke: var(--ic-switch-indicator-on-disabled);\n}\n\n.ic-switch-input:disabled + .ic-switch-toggle {\n background-color: var(--ic-switch-unchecked-bg-disabled);\n border: var(--ic-space-1px) dashed var(--ic-switch-unchecked-outline-disabled);\n}\n\n.ic-switch-input:disabled + .ic-switch-toggle::before {\n background-color: var(--ic-switch-unchecked-disabled);\n}\n\n.ic-switch-input:disabled:checked + .ic-switch-toggle {\n background-color: var(--ic-switch-checked-bg-disabled);\n border: var(--ic-border-width) dashed\n var(--ic-switch-checked-outline-disabled);\n}\n\n.ic-switch-input:disabled:checked + .ic-switch-toggle::before {\n background-color: var(--ic-switch-checked);\n}\n\n.ic-switch-small .ic-switch-toggle {\n width: var(--ic-space-xxl);\n height: var(--ic-space-lg);\n}\n\n.ic-switch-small .ic-switch-toggle::before {\n width: var(--ic-space-md);\n height: var(--ic-space-md);\n left: var(--ic-space-xxs);\n}\n\n.ic-switch-small .ic-switch-input:checked + .ic-switch-toggle::before {\n transform: translate(var(--ic-space-lg), -50%);\n}\n\n::slotted([slot=\"right-adornment\"]) {\n margin-left: var(--ic-space-sm);\n fill: var(--ic-switch-icon);\n}\n\n@media (forced-colors: active) {\n .ic-switch-toggle::before,\n .ic-switch-input:checked + .ic-switch-toggle {\n border: var(--ic-border-hc);\n }\n\n .ic-switch-input:focus + .ic-switch-toggle {\n border-color: highlight;\n outline: var(--ic-space-xxxs) solid highlight;\n }\n\n .ic-switch-input:checked + .ic-switch-toggle::before {\n transform: translate(calc(var(--ic-space-xl) - 0.125rem), -50%);\n }\n\n .ic-switch-input:disabled + .ic-switch-toggle,\n .ic-switch-input:disabled:checked + .ic-switch-toggle,\n .ic-switch-input:disabled + .ic-switch-toggle::before {\n border-color: GrayText;\n }\n\n .ic-switch-disabled .ic-switch-icon-circle,\n .ic-switch-disabled .ic-switch-icon-line {\n stroke: GrayText;\n }\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n State,\n Element,\n Event,\n EventEmitter,\n Method,\n Watch,\n} from \"@stencil/core\";\nimport {\n getInputDescribedByText,\n onComponentRequiredPropUndefined,\n renderHiddenInput,\n addFormResetListener,\n removeFormResetListener,\n removeDisabledFalse,\n} from \"../../utils/helpers\";\nimport { IcSwitchChangeEventDetail } from \"./ic-switch.types\";\nimport { IcSizesNoLarge, IcThemeMode } from \"../../utils/types\";\n\nlet inputIds = 0;\n\n/**\n * @slot helper-text - Content is set as the helper text for the switch.\n * @slot right-adornment - Content is placed to the right of switch.\n */\n@Component({\n tag: \"ic-switch\",\n styleUrl: \"ic-switch.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class Switch {\n private inputId = `ic-switch-input-${inputIds++}`;\n\n @Element() el: HTMLIcSwitchElement;\n\n @State() checkedState: boolean = false;\n @State() initiallyChecked = this.checked;\n\n /**\n * If `true`, the switch will display as checked.\n */\n @Prop() checked?: boolean = false;\n\n @Watch(\"checked\")\n checkedChangeHandler(): void {\n this.checkedState = !!this.checked;\n }\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled?: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * The helper text that will be displayed for additional field guidance.\n */\n @Prop() helperText?: string = \"\";\n\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n @Prop() hideLabel?: boolean = false;\n\n /**\n * The aria-label applied to the switch when no visual 'name' is provided.\n */\n @Prop() label!: string;\n\n /**\n * The name of the control, which is submitted with the form data.\n */\n @Prop() name?: string = this.inputId;\n\n /**\n * The size of the switch component.\n */\n @Prop() size?: IcSizesNoLarge = \"medium\";\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * The value of the toggle does not mean if it's checked or not, use the `checked`\n * property for that.\n *\n * The value of a toggle is analogous to the value of a `<input type=\"checkbox\">`,\n * it's only used when the toggle participates in a native `<form>`.\n */\n @Prop() value?: string | null = \"on\";\n\n /**\n * Emitted when the toggle loses focus.\n */\n @Event() icBlur!: EventEmitter<void>;\n\n /**\n * Emitted when the value property has changed.\n */\n @Event() icChange!: EventEmitter<IcSwitchChangeEventDetail>;\n\n /**\n * Emitted when the toggle has focus.\n */\n @Event() icFocus!: EventEmitter<void>;\n\n disconnectedCallback(): void {\n removeFormResetListener(this.el, this.handleFormReset);\n }\n\n componentWillLoad(): void {\n this.checkedState = this.checked!;\n addFormResetListener(this.el, this.handleFormReset);\n removeDisabledFalse(this.disabled, this.el);\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Switch\"\n );\n }\n\n /**\n * Sets focus on the switch.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.el.shadowRoot?.querySelector(\"input\")?.focus();\n }\n\n private handleChange = () => {\n this.checkedState = !this.checkedState;\n this.icChange.emit({\n checked: this.checkedState,\n value: this.value!,\n });\n };\n\n private onFocus = () => {\n this.icFocus.emit();\n };\n\n private onBlur = () => {\n this.icBlur.emit();\n };\n\n private handleFormReset = (): void => {\n this.checkedState = this.initiallyChecked!;\n };\n\n render() {\n const {\n label,\n checkedState,\n size,\n disabled,\n name,\n value,\n hideLabel,\n helperText,\n inputId,\n theme,\n } = this;\n\n const isSmall = size === \"small\";\n\n renderHiddenInput(this.el, checkedState ? value : \"\", name, disabled);\n\n return (\n <Host\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n <label\n class={{\n \"ic-switch-container\": true,\n \"ic-switch-disabled\": !!disabled,\n \"ic-switch-small\": isSmall,\n }}\n htmlFor={inputId}\n >\n {!hideLabel && (\n <ic-input-label\n for={inputId}\n label={label}\n helperText={helperText}\n readonly={false}\n disabled={disabled}\n class={{\n \"ic-switch-label\": true,\n \"ic-switch-label-small\": isSmall,\n }}\n >\n <slot name=\"helper-text\" slot=\"helper-text\"></slot>\n </ic-input-label>\n )}\n {!hideLabel && <span class=\"ic-switch-line-break\"></span>}\n <input\n checked={checkedState}\n disabled={disabled}\n aria-label={label}\n aria-checked={checkedState ? \"true\" : \"false\"}\n aria-describedby={getInputDescribedByText(\n this.el,\n inputId,\n helperText !== \"\",\n false\n )}\n role=\"switch\"\n class=\"ic-switch-input\"\n type=\"checkbox\"\n name=\"toggle\"\n id={inputId}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n onChange={this.handleChange}\n />\n <span class=\"ic-switch-toggle\">\n <svg\n class=\"ic-switch-icon\"\n aria-hidden=\"true\"\n focusable=\"false\"\n viewBox=\"0 0 10 10\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <line\n class=\"ic-switch-icon-line\"\n x1=\"9\"\n y1={isSmall ? \"2\" : \"1\"}\n x2=\"9\"\n y2={isSmall ? \"8\" : \"9\"}\n />\n </svg>\n <svg\n class=\"ic-switch-icon\"\n aria-hidden=\"true\"\n focusable=\"false\"\n viewBox=\"0 0 10 10\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle\n class=\"ic-switch-icon-circle\"\n fill=\"none\"\n cx=\"5\"\n cy=\"5\"\n r={isSmall ? \"3.335\" : \"4.445\"}\n />\n </svg>\n </span>\n <slot name=\"right-adornment\"></slot>\n </label>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["icSwitchCss","IcSwitchStyle0","inputIds","Switch","constructor","hostRef","this","inputId","checkedState","initiallyChecked","checked","disabled","helperText","hideLabel","name","size","theme","value","handleChange","icChange","emit","onFocus","icFocus","onBlur","icBlur","handleFormReset","checkedChangeHandler","watchDisabledHandler","removeDisabledFalse","el","disconnectedCallback","removeFormResetListener","componentWillLoad","addFormResetListener","componentDidLoad","onComponentRequiredPropUndefined","prop","label","propName","setFocus","_b","_a","shadowRoot","querySelector","focus","render","isSmall","renderHiddenInput","h","Host","key","class","htmlFor","for","readonly","slot","getInputDescribedByText","role","type","id","onChange","focusable","viewBox","xmlns","x1","y1","x2","y2","fill","cx","cy","r"],"sources":["src/components/ic-switch/ic-switch.css?tag=ic-switch&encapsulation=shadow","src/components/ic-switch/ic-switch.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: inline-block;\n\n --ic-input-label-text-color: var(--ic-switch-label);\n --ic-input-label-helper-text-color: var(--ic-switch-help-text);\n --ic-input-label-helpertext-padding: var(--ic-space-xs);\n}\n\ninput {\n overflow: hidden;\n appearance: none;\n}\n\n.ic-switch-container {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n cursor: pointer;\n}\n\n.ic-switch-label {\n margin-left: var(--ic-space-xxs);\n margin-bottom: var(--ic-space-xs);\n}\n\n.ic-switch-label-small {\n margin-bottom: var(--ic-space-xs);\n}\n\n.ic-switch-toggle {\n display: flex;\n align-items: center;\n justify-content: space-around;\n width: 4rem;\n height: var(--ic-space-xl);\n position: relative;\n border-radius: 100vw;\n background-color: var(--ic-switch-unchecked-bg);\n border: var(--ic-border-width) solid var(--ic-switch-unchecked);\n box-sizing: border-box;\n transition: var(--ic-transition-duration-fast);\n margin-left: var(--ic-space-xxs);\n}\n\n.ic-switch-line-break {\n flex: 1 0 100%;\n}\n\n.ic-switch-toggle::before {\n content: \"\";\n width: 1.333rem;\n height: 1.333rem;\n border-radius: 50%;\n position: absolute;\n z-index: 2;\n top: 50%;\n left: 0.333rem;\n transform: translate(0, -50%);\n background-color: var(--ic-switch-unchecked);\n transition: var(--ic-transition-duration-slow);\n}\n\n.ic-switch-icon {\n display: inline-block;\n vertical-align: middle;\n width: 0.625rem;\n height: 0.625rem;\n}\n\n.ic-switch-icon-circle,\n.ic-switch-icon-line {\n stroke-width: 1;\n}\n\n.ic-switch-icon-circle {\n stroke: var(--ic-switch-indicator-off);\n}\n\n.ic-switch-icon-line {\n stroke: var(--ic-switch-indicator-on);\n}\n\n@media (prefers-reduced-motion: reduce) {\n .ic-switch-toggle::before {\n transition-duration: 0ms;\n }\n}\n\n.ic-switch-input:checked + .ic-switch-toggle {\n background-color: var(--ic-switch-checked-bg);\n border: none;\n}\n\n.ic-switch-input:checked + .ic-switch-toggle::before {\n transform: translate(var(--ic-space-xl), -50%);\n background-color: var(--ic-switch-checked);\n}\n\n.ic-switch-input:not([disabled]) + .ic-switch-toggle:hover::before {\n box-shadow: 0 0 0 0.75rem var(--ic-switch-unchecked-bg-hover);\n}\n\n.ic-switch-input:not([disabled]) + .ic-switch-toggle:active::before {\n box-shadow: 0 0 0 0.75rem var(--ic-switch-unchecked-bg-pressed);\n}\n\n.ic-switch-input:not([disabled]):checked + .ic-switch-toggle:hover::before {\n box-shadow: 0 0 0 0.75rem var(--ic-switch-checked-bg-hover);\n}\n\n.ic-switch-input:not([disabled]):checked + .ic-switch-toggle:active::before {\n box-shadow: 0 0 0 0.75rem var(--ic-switch-checked-bg-pressed);\n}\n\n.ic-switch-input:focus:not([disabled]) + .ic-switch-toggle,\n.ic-switch-input:focus-visible:not([disabled]) + .ic-switch-toggle {\n box-shadow: var(--ic-border-focus);\n}\n\n.ic-switch-disabled {\n cursor: default;\n}\n\n.ic-switch-disabled .ic-switch-icon-circle {\n stroke: var(--ic-switch-indicator-off-disabled);\n}\n\n.ic-switch-disabled .ic-switch-icon-line {\n stroke: var(--ic-switch-indicator-on-disabled);\n}\n\n.ic-switch-input:disabled + .ic-switch-toggle {\n background-color: var(--ic-switch-unchecked-bg-disabled);\n border: var(--ic-space-1px) dashed var(--ic-switch-unchecked-outline-disabled);\n}\n\n.ic-switch-input:disabled + .ic-switch-toggle::before {\n background-color: var(--ic-switch-unchecked-disabled);\n}\n\n.ic-switch-input:disabled:checked + .ic-switch-toggle {\n background-color: var(--ic-switch-checked-bg-disabled);\n border: var(--ic-border-width) dashed\n var(--ic-switch-checked-outline-disabled);\n}\n\n.ic-switch-input:disabled:checked + .ic-switch-toggle::before {\n background-color: var(--ic-switch-checked);\n}\n\n.ic-switch-small .ic-switch-toggle {\n width: var(--ic-space-xxl);\n height: var(--ic-space-lg);\n}\n\n.ic-switch-small .ic-switch-toggle::before {\n width: var(--ic-space-md);\n height: var(--ic-space-md);\n left: var(--ic-space-xxs);\n}\n\n.ic-switch-small .ic-switch-input:checked + .ic-switch-toggle::before {\n transform: translate(var(--ic-space-lg), -50%);\n}\n\n::slotted([slot=\"right-adornment\"]) {\n margin-left: var(--ic-space-sm);\n fill: var(--ic-switch-icon);\n}\n\n@media (forced-colors: active) {\n .ic-switch-toggle::before,\n .ic-switch-input:checked + .ic-switch-toggle {\n border: var(--ic-border-hc);\n }\n\n .ic-switch-input:focus + .ic-switch-toggle {\n border-color: highlight;\n outline: var(--ic-space-xxxs) solid highlight;\n }\n\n .ic-switch-input:checked + .ic-switch-toggle::before {\n transform: translate(calc(var(--ic-space-xl) - 0.125rem), -50%);\n }\n\n .ic-switch-input:disabled + .ic-switch-toggle,\n .ic-switch-input:disabled:checked + .ic-switch-toggle,\n .ic-switch-input:disabled + .ic-switch-toggle::before {\n border-color: GrayText;\n }\n\n .ic-switch-disabled .ic-switch-icon-circle,\n .ic-switch-disabled .ic-switch-icon-line {\n stroke: GrayText;\n }\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n State,\n Element,\n Event,\n EventEmitter,\n Method,\n Watch,\n} from \"@stencil/core\";\nimport {\n getInputDescribedByText,\n onComponentRequiredPropUndefined,\n renderHiddenInput,\n addFormResetListener,\n removeFormResetListener,\n removeDisabledFalse,\n} from \"../../utils/helpers\";\nimport { IcSwitchChangeEventDetail } from \"./ic-switch.types\";\nimport { IcSizesNoLarge, IcThemeMode } from \"../../utils/types\";\n\nlet inputIds = 0;\n\n/**\n * @slot helper-text - Content is set as the helper text for the switch.\n * @slot right-adornment - Content is placed to the right of switch.\n */\n@Component({\n tag: \"ic-switch\",\n styleUrl: \"ic-switch.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class Switch {\n private inputId = `ic-switch-input-${inputIds++}`;\n\n @Element() el: HTMLIcSwitchElement;\n\n @State() checkedState: boolean = false;\n @State() initiallyChecked = this.checked;\n\n /**\n * If `true`, the switch will display as checked.\n */\n @Prop() checked?: boolean = false;\n\n @Watch(\"checked\")\n checkedChangeHandler(): void {\n this.checkedState = !!this.checked;\n }\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled?: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * The helper text that will be displayed for additional field guidance.\n */\n @Prop() helperText?: string = \"\";\n\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n @Prop() hideLabel?: boolean = false;\n\n /**\n * The aria-label applied to the switch when no visual 'name' is provided.\n */\n @Prop() label!: string;\n\n /**\n * The name of the control, which is submitted with the form data.\n */\n @Prop() name?: string = this.inputId;\n\n /**\n * The size of the switch component.\n */\n @Prop() size?: IcSizesNoLarge = \"medium\";\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * The value of the toggle does not mean if it's checked or not, use the `checked`\n * property for that.\n *\n * The value of a toggle is analogous to the value of a `<input type=\"checkbox\">`,\n * it's only used when the toggle participates in a native `<form>`.\n */\n @Prop() value?: string | null = \"on\";\n\n /**\n * Emitted when the toggle loses focus.\n */\n @Event() icBlur!: EventEmitter<void>;\n\n /**\n * Emitted when the value property has changed.\n */\n @Event() icChange!: EventEmitter<IcSwitchChangeEventDetail>;\n\n /**\n * Emitted when the toggle has focus.\n */\n @Event() icFocus!: EventEmitter<void>;\n\n disconnectedCallback(): void {\n removeFormResetListener(this.el, this.handleFormReset);\n }\n\n componentWillLoad(): void {\n this.checkedState = this.checked!;\n addFormResetListener(this.el, this.handleFormReset);\n removeDisabledFalse(this.disabled, this.el);\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Switch\"\n );\n }\n\n /**\n * Sets focus on the switch.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.el.shadowRoot?.querySelector(\"input\")?.focus();\n }\n\n private handleChange = () => {\n this.checkedState = !this.checkedState;\n this.icChange.emit({\n checked: this.checkedState,\n value: this.value!,\n });\n };\n\n private onFocus = () => {\n this.icFocus.emit();\n };\n\n private onBlur = () => {\n this.icBlur.emit();\n };\n\n private handleFormReset = (): void => {\n this.checkedState = this.initiallyChecked!;\n };\n\n render() {\n const {\n label,\n checkedState,\n size,\n disabled,\n name,\n value,\n hideLabel,\n helperText,\n inputId,\n theme,\n } = this;\n\n const isSmall = size === \"small\";\n\n renderHiddenInput(this.el, checkedState ? value : \"\", name, disabled);\n\n return (\n <Host\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n <label\n class={{\n \"ic-switch-container\": true,\n \"ic-switch-disabled\": !!disabled,\n \"ic-switch-small\": isSmall,\n }}\n htmlFor={inputId}\n >\n {!hideLabel && (\n <ic-input-label\n for={inputId}\n label={label}\n helperText={helperText}\n readonly={false}\n disabled={disabled}\n class={{\n \"ic-switch-label\": true,\n \"ic-switch-label-small\": isSmall,\n }}\n >\n <slot name=\"helper-text\" slot=\"helper-text\"></slot>\n </ic-input-label>\n )}\n {!hideLabel && <span class=\"ic-switch-line-break\"></span>}\n <input\n checked={checkedState}\n disabled={disabled}\n aria-label={label}\n aria-checked={checkedState ? \"true\" : \"false\"}\n aria-describedby={getInputDescribedByText(\n this.el,\n inputId,\n helperText !== \"\",\n false\n )}\n role=\"switch\"\n class=\"ic-switch-input\"\n type=\"checkbox\"\n name=\"toggle\"\n id={inputId}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n onChange={this.handleChange}\n />\n <span class=\"ic-switch-toggle\">\n <svg\n class=\"ic-switch-icon\"\n aria-hidden=\"true\"\n focusable=\"false\"\n viewBox=\"0 0 10 10\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <line\n class=\"ic-switch-icon-line\"\n x1=\"9\"\n y1={isSmall ? \"2\" : \"1\"}\n x2=\"9\"\n y2={isSmall ? \"8\" : \"9\"}\n />\n </svg>\n <svg\n class=\"ic-switch-icon\"\n aria-hidden=\"true\"\n focusable=\"false\"\n viewBox=\"0 0 10 10\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle\n class=\"ic-switch-icon-circle\"\n fill=\"none\"\n cx=\"5\"\n cy=\"5\"\n r={isSmall ? \"3.335\" : \"4.445\"}\n />\n </svg>\n </span>\n <slot name=\"right-adornment\"></slot>\n </label>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r as t,h as i,H as e,g as o}from"./p-8e4e97b4.js";import{c as n,o as s}from"./p-b57e59b7.js";import"./p-bddf799a.js";const a=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="true">\n <path d="M0 8L1.41 9.41L7 3.83V16H9V3.83L14.58 9.42L16 8L8 0L0 8Z"/>\n</svg>\n`;const r='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:flex;flex:row;height:0.1px}:host(.ic-back-to-top-right){justify-content:flex-end}:host(.ic-back-to-top-right) ic-button{margin-right:var(--margin-right, 1rem)}:host(.ic-back-to-top-right) .ic-back-to-top-icon{padding-top:var(--ic-space-xxs);padding-right:var(--ic-space-xs)}:host(.ic-back-to-top-left){justify-content:flex-start}:host(.ic-back-to-top-left) ic-button{margin-left:var(--margin-left, 1rem)}:host(.ic-back-to-top-left) .ic-back-to-top-icon{padding-top:var(--ic-space-xxs);padding-right:var(--ic-space-xs)}:host(.ic-back-to-top-center){justify-content:center}:host(.ic-back-to-top-center) .ic-back-to-top-icon{padding-top:var(--ic-space-xxs);padding-right:var(--ic-space-xs)}ic-button{height:2.5rem;align-items:center;background-color:var(--ic-color-background-primary);border-radius:5rem;box-shadow:var(--ic-elevation-overlay);visibility:hidden;position:fixed;bottom:var(--ic-space-md);opacity:0;transition:visibility 0s linear var(--ic-transition-duration-slow),\n opacity var(--ic-transition-duration-slow);z-index:var(--ic-z-index-back-to-top)}:host([variant="icon"]) ic-button::part(button){margin:0}ic-button::part(button){border-radius:5rem}ic-button.show{visibility:visible;opacity:1;transition:visibility 0s linear 0s,\n opacity var(--ic-transition-duration-slow),\n box-shadow var(--ic-easing-transition-fast)}ic-button.offset-banner:not(.by-footer){margin-bottom:var(--footer-offset, var(--ic-space-lg))}.ic-back-to-top-icon>svg{height:var(--ic-space-md);width:var(--ic-space-md)}.icon-only{width:2.5rem}.icon-only .ic-back-to-top-icon>svg{padding-left:calc(var(--ic-space-xs) - var(--ic-space-1px))}ic-button.by-footer{position:relative;bottom:var(--footer-offset, 3.5rem)}@media (forced-colors: active){.icon-only .ic-back-to-top-icon>svg{padding-left:calc(var(--ic-space-xs) - var(--ic-space-xxxs))}}';const c=r;const l="Back to top";const d=class{constructor(i){t(this,i);this.topObserver=null;this.bannerOffset=false;this.footerVisible=false;this.targetElVisible=true;this.position="right";this.theme="inherit";this.variant="default";this.getObservedEl=()=>document.querySelector("#ic-back-to-top-target");this.setTargetElVisible=t=>{this.targetElVisible=t};this.setFooterVisible=t=>{this.checkForClassificationBanner();this.footerVisible=typeof window!=="undefined"&&window.scrollY===0?false:t};this.targetElObserverCallback=t=>{this.setTargetElVisible(t[0].isIntersecting)};this.footerObserverCallback=t=>{this.setFooterVisible(t[0].isIntersecting)};this.findTargetEl=t=>{let i=null;if(t===null||t===undefined){console.log("Error: No target ID specified for back to top component - defaulting to top of page")}else{i=document.querySelector(`${t.startsWith("#")?"":"#"}${t}`);if(i===null){console.log(`Error: Back to top target element '${t}' not found - defaulting to top of page`)}}return i};this.createTopObserver=t=>{this.targetEl=this.findTargetEl(t);let i;if(this.topObserver!==null){const t=this.getObservedEl();if(t!==null){this.topObserver.unobserve(t);t.remove()}}if(this.targetEl===null){i=document.body;this.targetEl=i.firstElementChild;this.isTargetElNull=true}else{i=this.targetEl.parentNode;this.isTargetElNull=false}const e=document.createElement("div");e.setAttribute("id","ic-back-to-top-target");e.setAttribute("tabindex","-1");i.insertBefore(e,this.targetEl);const o=this.targetEl?getComputedStyle(this.targetEl).marginTop:0;this.topObserver=new IntersectionObserver(this.targetElObserverCallback,{threshold:[0],rootMargin:`${o} 0px 0px 0px`});this.topObserver.observe(e)};this.handleClick=()=>{var t;if(this.isTargetElNull){window.scrollTo(0,0)}else{(t=this.targetEl)===null||t===void 0?void 0:t.scrollIntoView()}this.getObservedEl().focus()};this.checkForClassificationBanner=()=>{const t=document.querySelectorAll("ic-classification-banner:not([inline='true'])");this.bannerOffset=t.length>0}}watchPropHandler(t,i){n(i,t,(()=>{this.createTopObserver(t)}))}componentWillLoad(){this.createTopObserver(this.target);this.checkForClassificationBanner();let t=document.querySelectorAll("ic-footer");if(t.length===0){t=document.querySelectorAll("footer")}if(t.length){const i=t[t.length-1];const e=this.bannerOffset?.15:0;const o=new IntersectionObserver(this.footerObserverCallback,{threshold:[e]});o.observe(i)}}componentDidLoad(){s([{prop:this.target,propName:"target"}],"Back to Top")}render(){const{variant:t,bannerOffset:o,targetElVisible:n,footerVisible:s}=this;const r=t==="icon"?"icon-secondary":"secondary";const c=t==="icon"?"large":"medium";const d=t==="icon"?"":l;return i(e,{key:"11f790112cc8047ab6b35459de506f6dc6a85c5f",class:{[`ic-theme-${this.theme}`]:this.theme!=="inherit",[`ic-back-to-top-${this.position}`]:true}},i("ic-button",{key:"670015cd630e897033a440ff4846d475c113a453","aria-label":l,variant:r,size:c,onClick:this.handleClick,class:{["offset-banner"]:o,["show"]:!n,["by-footer"]:s,["icon-only"]:t==="icon"},theme:this.theme},i("span",{key:"e56c7a48a8226d1f471fc9a953851d27f4a6504c",class:"ic-back-to-top-icon",innerHTML:a}),d))}static get delegatesFocus(){return true}get el(){return o(this)}static get watchers(){return{target:["watchPropHandler"]}}};d.style=c;export{d as ic_back_to_top};
2
+ //# sourceMappingURL=p-02af2b59.entry.js.map