@ukic/web-components 3.1.0 → 3.3.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 (610) hide show
  1. package/README.md +28 -0
  2. package/dist/cjs/core.cjs.js +1 -1
  3. package/dist/cjs/{helpers-a0a128bd.js → helpers-fc4016d2.js} +36 -73
  4. package/dist/cjs/helpers-fc4016d2.js.map +1 -0
  5. package/dist/cjs/ic-accordion-group.cjs.entry.js +1 -1
  6. package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
  7. package/dist/cjs/ic-accordion.cjs.entry.js +1 -1
  8. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ic-alert.cjs.entry.js +63 -36
  10. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ic-back-to-top.cjs.entry.js +4 -4
  12. package/dist/cjs/ic-badge.cjs.entry.js +41 -17
  13. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +56 -76
  15. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  16. package/dist/cjs/ic-breadcrumb.cjs.entry.js +32 -51
  17. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ic-button_3.cjs.entry.js +135 -131
  19. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  20. package/dist/cjs/ic-card-vertical.cjs.entry.js +6 -6
  21. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
  22. package/dist/cjs/ic-checkbox-group.cjs.entry.js +9 -10
  23. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  24. package/dist/cjs/ic-checkbox.cjs.entry.js +35 -34
  25. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  26. package/dist/cjs/ic-chip.cjs.entry.js +26 -38
  27. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  28. package/dist/cjs/ic-classification-banner.cjs.entry.js +2 -2
  29. package/dist/cjs/ic-data-list.cjs.entry.js +2 -2
  30. package/dist/cjs/ic-data-row.cjs.entry.js +3 -3
  31. package/dist/cjs/ic-dialog.cjs.entry.js +3 -3
  32. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  33. package/dist/cjs/ic-divider.cjs.entry.js +2 -2
  34. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  35. package/dist/cjs/ic-empty-state.cjs.entry.js +3 -3
  36. package/dist/cjs/ic-footer-link-group.cjs.entry.js +2 -2
  37. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  38. package/dist/cjs/ic-footer-link.cjs.entry.js +3 -3
  39. package/dist/cjs/ic-footer.cjs.entry.js +4 -4
  40. package/dist/cjs/ic-hero.cjs.entry.js +5 -5
  41. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +6 -6
  42. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +9 -9
  43. package/dist/cjs/ic-input-label_2.cjs.entry.js +8 -8
  44. package/dist/cjs/ic-link.cjs.entry.js +21 -3
  45. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ic-menu-group.cjs.entry.js +2 -2
  47. package/dist/cjs/ic-menu-item.cjs.entry.js +5 -5
  48. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  49. package/dist/cjs/ic-navigation-button.cjs.entry.js +3 -3
  50. package/dist/cjs/ic-navigation-group.cjs.entry.js +3 -3
  51. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  52. package/dist/cjs/ic-navigation-item.cjs.entry.js +12 -7
  53. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  54. package/dist/cjs/ic-navigation-menu.cjs.entry.js +5 -5
  55. package/dist/cjs/ic-page-header.cjs.entry.js +7 -7
  56. package/dist/cjs/ic-pagination-item.cjs.entry.js +2 -2
  57. package/dist/cjs/ic-pagination.cjs.entry.js +5 -5
  58. package/dist/cjs/ic-popover-menu.cjs.entry.js +8 -7
  59. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ic-radio-group.cjs.entry.js +5 -5
  61. package/dist/cjs/ic-radio-option.cjs.entry.js +6 -6
  62. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  63. package/dist/cjs/ic-search-bar.cjs.entry.js +112 -135
  64. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  65. package/dist/cjs/ic-section-container.cjs.entry.js +2 -2
  66. package/dist/cjs/ic-select.cjs.entry.js +47 -50
  67. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  68. package/dist/cjs/ic-side-navigation.cjs.entry.js +6 -6
  69. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ic-skeleton.cjs.entry.js +2 -2
  71. package/dist/cjs/ic-skip-link.cjs.entry.js +10 -3
  72. package/dist/cjs/ic-skip-link.cjs.entry.js.map +1 -1
  73. package/dist/cjs/ic-status-tag.cjs.entry.js +3 -3
  74. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  75. package/dist/cjs/ic-step.cjs.entry.js +15 -15
  76. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  77. package/dist/cjs/ic-stepper.cjs.entry.js +3 -3
  78. package/dist/cjs/ic-switch.cjs.entry.js +6 -6
  79. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  80. package/dist/cjs/ic-tab-context.cjs.entry.js +1 -1
  81. package/dist/cjs/ic-tab-group.cjs.entry.js +3 -3
  82. package/dist/cjs/ic-tab-panel.cjs.entry.js +2 -2
  83. package/dist/cjs/ic-tab.cjs.entry.js +3 -3
  84. package/dist/cjs/ic-text-field.cjs.entry.js +32 -29
  85. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  86. package/dist/cjs/ic-theme.cjs.entry.js +4 -2
  87. package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
  88. package/dist/cjs/ic-toast-region.cjs.entry.js +1 -1
  89. package/dist/cjs/ic-toast.cjs.entry.js +4 -4
  90. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +3 -3
  91. package/dist/cjs/ic-toggle-button.cjs.entry.js +4 -4
  92. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  93. package/dist/cjs/ic-top-navigation.cjs.entry.js +5 -5
  94. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  95. package/dist/cjs/ic-typography.cjs.entry.js +4 -4
  96. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  97. package/dist/cjs/loader.cjs.js +1 -1
  98. package/dist/collection/components/ic-accordion/ic-accordion.css +3 -0
  99. package/dist/collection/components/ic-accordion-group/ic-accordion-group.css +1 -0
  100. package/dist/collection/components/ic-alert/ic-alert.css +3 -1
  101. package/dist/collection/components/ic-alert/ic-alert.js +85 -50
  102. package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
  103. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +3 -3
  104. package/dist/collection/components/ic-badge/ic-badge.css +1 -1
  105. package/dist/collection/components/ic-badge/ic-badge.js +39 -15
  106. package/dist/collection/components/ic-badge/ic-badge.js.map +1 -1
  107. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +40 -59
  108. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js.map +1 -1
  109. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js +65 -86
  110. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js.map +1 -1
  111. package/dist/collection/components/ic-button/ic-button.css +123 -59
  112. package/dist/collection/components/ic-button/ic-button.js +141 -162
  113. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  114. package/dist/collection/components/ic-button/ic-button.stories.js +39 -54
  115. package/dist/collection/components/ic-card-vertical/ic-card-vertical.css +20 -4
  116. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js +4 -4
  117. package/dist/collection/components/ic-checkbox/ic-checkbox.css +3 -1
  118. package/dist/collection/components/ic-checkbox/ic-checkbox.js +71 -73
  119. package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
  120. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +24 -25
  121. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  122. package/dist/collection/components/ic-chip/ic-chip.css +9 -0
  123. package/dist/collection/components/ic-chip/ic-chip.js +66 -72
  124. package/dist/collection/components/ic-chip/ic-chip.js.map +1 -1
  125. package/dist/collection/components/ic-chip/ic-chip.stories.js +2 -1
  126. package/dist/collection/components/ic-classification-banner/ic-classification-banner.js +2 -2
  127. package/dist/collection/components/ic-data-list/ic-data-list.js +2 -2
  128. package/dist/collection/components/ic-data-row/ic-data-row.js +2 -2
  129. package/dist/collection/components/ic-dialog/ic-dialog.css +2 -1
  130. package/dist/collection/components/ic-dialog/ic-dialog.js +1 -1
  131. package/dist/collection/components/ic-divider/ic-divider.css +7 -4
  132. package/dist/collection/components/ic-empty-state/ic-empty-state.js +2 -2
  133. package/dist/collection/components/ic-footer/ic-footer.js +3 -3
  134. package/dist/collection/components/ic-footer-link/ic-footer-link.js +2 -2
  135. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.css +0 -3
  136. package/dist/collection/components/ic-hero/ic-hero.js +4 -4
  137. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +5 -5
  138. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +3 -3
  139. package/dist/collection/components/ic-input-container/ic-input-container.js +2 -2
  140. package/dist/collection/components/ic-input-label/ic-input-label.js +4 -4
  141. package/dist/collection/components/ic-input-validation/ic-input-validation.js +3 -3
  142. package/dist/collection/components/ic-link/ic-link.js +23 -2
  143. package/dist/collection/components/ic-link/ic-link.js.map +1 -1
  144. package/dist/collection/components/ic-link/ic-link.stories.js +28 -5
  145. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +3 -3
  146. package/dist/collection/components/ic-menu/ic-menu.js +3 -3
  147. package/dist/collection/components/ic-menu-group/ic-menu-group.js +1 -1
  148. package/dist/collection/components/ic-menu-item/ic-menu-item.css +2 -5
  149. package/dist/collection/components/ic-menu-item/ic-menu-item.js +3 -3
  150. package/dist/collection/components/ic-menu-item/ic-menu-item.js.map +1 -1
  151. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +2 -2
  152. package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +0 -4
  153. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +1 -1
  154. package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +20 -1
  155. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +11 -6
  156. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
  157. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +4 -4
  158. package/dist/collection/components/ic-page-header/ic-page-header.js +6 -6
  159. package/dist/collection/components/ic-pagination/ic-pagination.js +4 -4
  160. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +1 -1
  161. package/dist/collection/components/ic-popover-menu/ic-popover-menu.css +0 -5
  162. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +6 -5
  163. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js.map +1 -1
  164. package/dist/collection/components/ic-radio-group/ic-radio-group.js +4 -4
  165. package/dist/collection/components/ic-radio-option/ic-radio-option.css +2 -1
  166. package/dist/collection/components/ic-radio-option/ic-radio-option.js +4 -4
  167. package/dist/collection/components/ic-search-bar/ic-search-bar.js +169 -192
  168. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  169. package/dist/collection/components/ic-section-container/ic-section-container.js +2 -2
  170. package/dist/collection/components/ic-select/ic-select.js +46 -49
  171. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  172. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +3 -2
  173. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +4 -4
  174. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  175. package/dist/collection/components/ic-skeleton/ic-skeleton.js +2 -2
  176. package/dist/collection/components/ic-skip-link/ic-skip-link.js +31 -3
  177. package/dist/collection/components/ic-skip-link/ic-skip-link.js.map +1 -1
  178. package/dist/collection/components/ic-status-tag/ic-status-tag.css +6 -0
  179. package/dist/collection/components/ic-status-tag/ic-status-tag.js +2 -2
  180. package/dist/collection/components/ic-step/ic-step.css +0 -3
  181. package/dist/collection/components/ic-step/ic-step.js +13 -13
  182. package/dist/collection/components/ic-stepper/ic-stepper.js +2 -2
  183. package/dist/collection/components/ic-switch/ic-switch.js +5 -5
  184. package/dist/collection/components/ic-switch/ic-switch.js.map +1 -1
  185. package/dist/collection/components/ic-tab/ic-tab.js +2 -2
  186. package/dist/collection/components/ic-tab-context/ic-tab-context.js +1 -1
  187. package/dist/collection/components/ic-tab-group/ic-tab-group.js +2 -2
  188. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +2 -2
  189. package/dist/collection/components/ic-text-field/ic-text-field.js +112 -95
  190. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  191. package/dist/collection/components/ic-theme/ic-theme.js +31 -3
  192. package/dist/collection/components/ic-theme/ic-theme.js.map +1 -1
  193. package/dist/collection/components/ic-toast/ic-toast.js +3 -3
  194. package/dist/collection/components/ic-toast-region/ic-toast-region.js +1 -1
  195. package/dist/collection/components/ic-toggle-button/ic-toggle-button.css +6 -8
  196. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +2 -2
  197. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +2 -2
  198. package/dist/collection/components/ic-tooltip/ic-tooltip.js +32 -2
  199. package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
  200. package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +3 -1
  201. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +4 -4
  202. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
  203. package/dist/collection/components/ic-typography/ic-typography.css +2 -2
  204. package/dist/collection/components/ic-typography/ic-typography.js +2 -2
  205. package/dist/collection/utils/helpers.js +35 -72
  206. package/dist/collection/utils/helpers.js.map +1 -1
  207. package/dist/collection/utils/types.js.map +1 -1
  208. package/dist/components/helpers.js +36 -73
  209. package/dist/components/helpers.js.map +1 -1
  210. package/dist/components/ic-accordion-group.js.map +1 -1
  211. package/dist/components/ic-accordion.js.map +1 -1
  212. package/dist/components/ic-alert.js +66 -37
  213. package/dist/components/ic-alert.js.map +1 -1
  214. package/dist/components/ic-back-to-top.js +3 -3
  215. package/dist/components/ic-badge.js +40 -16
  216. package/dist/components/ic-badge.js.map +1 -1
  217. package/dist/components/ic-breadcrumb-group.js +57 -78
  218. package/dist/components/ic-breadcrumb-group.js.map +1 -1
  219. package/dist/components/ic-breadcrumb2.js +32 -51
  220. package/dist/components/ic-breadcrumb2.js.map +1 -1
  221. package/dist/components/ic-button2.js +105 -126
  222. package/dist/components/ic-button2.js.map +1 -1
  223. package/dist/components/ic-card-vertical.js +5 -5
  224. package/dist/components/ic-card-vertical.js.map +1 -1
  225. package/dist/components/ic-checkbox-group.js +9 -10
  226. package/dist/components/ic-checkbox-group.js.map +1 -1
  227. package/dist/components/ic-checkbox.js +37 -36
  228. package/dist/components/ic-checkbox.js.map +1 -1
  229. package/dist/components/ic-chip.js +28 -40
  230. package/dist/components/ic-chip.js.map +1 -1
  231. package/dist/components/ic-classification-banner.js +2 -2
  232. package/dist/components/ic-data-list.js +2 -2
  233. package/dist/components/ic-data-row.js +3 -3
  234. package/dist/components/ic-dialog.js +2 -2
  235. package/dist/components/ic-dialog.js.map +1 -1
  236. package/dist/components/ic-divider2.js +2 -2
  237. package/dist/components/ic-divider2.js.map +1 -1
  238. package/dist/components/ic-empty-state.js +2 -2
  239. package/dist/components/ic-footer-link-group.js +1 -1
  240. package/dist/components/ic-footer-link-group.js.map +1 -1
  241. package/dist/components/ic-footer-link.js +2 -2
  242. package/dist/components/ic-footer.js +4 -4
  243. package/dist/components/ic-hero.js +5 -5
  244. package/dist/components/ic-horizontal-scroll2.js +6 -6
  245. package/dist/components/ic-input-component-container2.js +4 -4
  246. package/dist/components/ic-input-container2.js +2 -2
  247. package/dist/components/ic-input-label2.js +5 -5
  248. package/dist/components/ic-input-validation2.js +4 -4
  249. package/dist/components/ic-link2.js +23 -3
  250. package/dist/components/ic-link2.js.map +1 -1
  251. package/dist/components/ic-loading-indicator2.js +3 -3
  252. package/dist/components/ic-menu-group.js +1 -1
  253. package/dist/components/ic-menu-item2.js +4 -4
  254. package/dist/components/ic-menu-item2.js.map +1 -1
  255. package/dist/components/ic-menu2.js +4 -4
  256. package/dist/components/ic-navigation-button.js +2 -2
  257. package/dist/components/ic-navigation-group.js +3 -3
  258. package/dist/components/ic-navigation-group.js.map +1 -1
  259. package/dist/components/ic-navigation-item.js +12 -7
  260. package/dist/components/ic-navigation-item.js.map +1 -1
  261. package/dist/components/ic-navigation-menu2.js +5 -5
  262. package/dist/components/ic-page-header.js +6 -6
  263. package/dist/components/ic-pagination-item2.js +2 -2
  264. package/dist/components/ic-pagination.js +4 -4
  265. package/dist/components/ic-popover-menu.js +7 -6
  266. package/dist/components/ic-popover-menu.js.map +1 -1
  267. package/dist/components/ic-radio-group.js +5 -5
  268. package/dist/components/ic-radio-option.js +6 -6
  269. package/dist/components/ic-radio-option.js.map +1 -1
  270. package/dist/components/ic-search-bar.js +112 -135
  271. package/dist/components/ic-search-bar.js.map +1 -1
  272. package/dist/components/ic-section-container2.js +2 -2
  273. package/dist/components/ic-select.js +47 -50
  274. package/dist/components/ic-select.js.map +1 -1
  275. package/dist/components/ic-side-navigation.js +6 -6
  276. package/dist/components/ic-side-navigation.js.map +1 -1
  277. package/dist/components/ic-skeleton.js +2 -2
  278. package/dist/components/ic-skip-link.js +12 -4
  279. package/dist/components/ic-skip-link.js.map +1 -1
  280. package/dist/components/ic-status-tag.js +2 -2
  281. package/dist/components/ic-status-tag.js.map +1 -1
  282. package/dist/components/ic-step.js +14 -14
  283. package/dist/components/ic-step.js.map +1 -1
  284. package/dist/components/ic-stepper.js +3 -3
  285. package/dist/components/ic-switch.js +6 -6
  286. package/dist/components/ic-switch.js.map +1 -1
  287. package/dist/components/ic-tab-context.js +1 -1
  288. package/dist/components/ic-tab-group.js +2 -2
  289. package/dist/components/ic-tab-panel.js +2 -2
  290. package/dist/components/ic-tab.js +2 -2
  291. package/dist/components/ic-text-field.js +32 -29
  292. package/dist/components/ic-text-field.js.map +1 -1
  293. package/dist/components/ic-theme.js +3 -1
  294. package/dist/components/ic-theme.js.map +1 -1
  295. package/dist/components/ic-toast-region.js +1 -1
  296. package/dist/components/ic-toast.js +4 -4
  297. package/dist/components/ic-toggle-button-group.js +2 -2
  298. package/dist/components/ic-toggle-button.js +3 -3
  299. package/dist/components/ic-toggle-button.js.map +1 -1
  300. package/dist/components/ic-tooltip2.js +30 -2
  301. package/dist/components/ic-tooltip2.js.map +1 -1
  302. package/dist/components/ic-top-navigation.js +5 -5
  303. package/dist/components/ic-top-navigation.js.map +1 -1
  304. package/dist/components/ic-typography2.js +3 -3
  305. package/dist/components/ic-typography2.js.map +1 -1
  306. package/dist/core/core.css +160 -110
  307. package/dist/core/core.esm.js +1 -1
  308. package/dist/core/core.esm.js.map +1 -1
  309. package/dist/core/p-00bc353b.entry.js +2 -0
  310. package/dist/core/p-00bc353b.entry.js.map +1 -0
  311. package/dist/core/{p-45595f98.entry.js → p-0a436c47.entry.js} +2 -2
  312. package/dist/core/p-0a436c47.entry.js.map +1 -0
  313. package/dist/core/{p-a55e7988.entry.js → p-10e1e227.entry.js} +2 -2
  314. package/dist/core/p-1440847f.entry.js +2 -0
  315. package/dist/core/p-1440847f.entry.js.map +1 -0
  316. package/dist/core/{p-729745d3.entry.js → p-15b7adaf.entry.js} +2 -2
  317. package/dist/core/p-16f55230.entry.js +2 -0
  318. package/dist/core/p-16f55230.entry.js.map +1 -0
  319. package/dist/core/{p-5c349c9d.entry.js → p-1838d1e9.entry.js} +2 -2
  320. package/dist/core/p-1838d1e9.entry.js.map +1 -0
  321. package/dist/core/{p-972671ea.entry.js → p-18714198.entry.js} +2 -2
  322. package/dist/core/{p-a20a7cd3.entry.js → p-1b2690b4.entry.js} +2 -2
  323. package/dist/core/p-1b2690b4.entry.js.map +1 -0
  324. package/dist/core/{p-37df68fe.entry.js → p-1be17f22.entry.js} +2 -2
  325. package/dist/core/p-206c2a26.entry.js +2 -0
  326. package/dist/core/p-206c2a26.entry.js.map +1 -0
  327. package/dist/core/{p-17cf7b50.entry.js → p-267a19d4.entry.js} +2 -2
  328. package/dist/core/p-26dfc4db.entry.js +2 -0
  329. package/dist/core/p-26dfc4db.entry.js.map +1 -0
  330. package/dist/core/p-2c17cc67.entry.js +2 -0
  331. package/dist/core/p-2c17cc67.entry.js.map +1 -0
  332. package/dist/core/{p-8b268274.entry.js → p-2c371198.entry.js} +2 -2
  333. package/dist/core/p-2e44cf53.entry.js +2 -0
  334. package/dist/core/p-2e44cf53.entry.js.map +1 -0
  335. package/dist/core/p-42a7d0b6.entry.js +2 -0
  336. package/dist/core/{p-fa02a267.entry.js → p-4b6818d9.entry.js} +2 -2
  337. package/dist/core/p-513628ef.entry.js +2 -0
  338. package/dist/core/p-513628ef.entry.js.map +1 -0
  339. package/dist/core/{p-1ac08e6d.entry.js → p-628c32b8.entry.js} +2 -2
  340. package/dist/core/p-70a6cff1.entry.js +2 -0
  341. package/dist/core/p-70a6cff1.entry.js.map +1 -0
  342. package/dist/core/{p-8856dff4.entry.js → p-72c117b6.entry.js} +2 -2
  343. package/dist/core/p-730d2f6e.entry.js +2 -0
  344. package/dist/core/p-730d2f6e.entry.js.map +1 -0
  345. package/dist/core/{p-0d016565.entry.js → p-788c96ac.entry.js} +2 -2
  346. package/dist/core/{p-78e7a859.entry.js → p-7fb79e87.entry.js} +2 -2
  347. package/dist/core/p-8242c24f.js +2 -0
  348. package/dist/core/p-8242c24f.js.map +1 -0
  349. package/dist/core/{p-7e79bd0e.entry.js → p-83764268.entry.js} +2 -2
  350. package/dist/core/p-8b5022bc.entry.js +2 -0
  351. package/dist/core/p-8b5022bc.entry.js.map +1 -0
  352. package/dist/core/{p-f34efc17.entry.js → p-8c4f7c63.entry.js} +2 -2
  353. package/dist/core/{p-1f455336.entry.js → p-910f5f14.entry.js} +2 -2
  354. package/dist/core/{p-10cd26dc.entry.js → p-9479f272.entry.js} +2 -2
  355. package/dist/core/{p-10cd26dc.entry.js.map → p-9479f272.entry.js.map} +1 -1
  356. package/dist/core/p-9c47521d.entry.js +2 -0
  357. package/dist/core/p-9c47521d.entry.js.map +1 -0
  358. package/dist/core/{p-110486f0.entry.js → p-9ca147f3.entry.js} +2 -2
  359. package/dist/core/{p-d9aec0dd.entry.js → p-9cfc2bac.entry.js} +2 -2
  360. package/dist/core/{p-74600ed8.entry.js → p-a0161990.entry.js} +2 -2
  361. package/dist/core/p-a17499ff.entry.js +2 -0
  362. package/dist/core/p-a17499ff.entry.js.map +1 -0
  363. package/dist/core/{p-4f2a1950.entry.js → p-a4f9b5bf.entry.js} +2 -2
  364. package/dist/core/{p-c9726fbd.entry.js → p-aad10013.entry.js} +2 -2
  365. package/dist/core/p-aad10013.entry.js.map +1 -0
  366. package/dist/core/{p-44e32417.entry.js → p-b371a498.entry.js} +2 -2
  367. package/dist/core/{p-44e32417.entry.js.map → p-b371a498.entry.js.map} +1 -1
  368. package/dist/core/p-b7568944.entry.js +2 -0
  369. package/dist/core/p-b7568944.entry.js.map +1 -0
  370. package/dist/core/p-b8da5c07.entry.js +2 -0
  371. package/dist/core/p-b8da5c07.entry.js.map +1 -0
  372. package/dist/core/{p-701696aa.entry.js → p-b9459ba2.entry.js} +2 -2
  373. package/dist/core/{p-2537f33e.entry.js → p-ba600947.entry.js} +2 -2
  374. package/dist/core/p-ba600947.entry.js.map +1 -0
  375. package/dist/core/{p-50f4d151.entry.js → p-bc2ca778.entry.js} +2 -2
  376. package/dist/core/{p-69e4daec.entry.js → p-bdc72446.entry.js} +2 -2
  377. package/dist/core/p-c45023b7.entry.js +2 -0
  378. package/dist/core/p-c45023b7.entry.js.map +1 -0
  379. package/dist/core/p-c4663e1a.entry.js +2 -0
  380. package/dist/core/p-c4663e1a.entry.js.map +1 -0
  381. package/dist/core/{p-a103068b.entry.js → p-c8cf1ad5.entry.js} +2 -2
  382. package/dist/core/p-c9a4fe37.entry.js +2 -0
  383. package/dist/core/p-c9a4fe37.entry.js.map +1 -0
  384. package/dist/core/p-cdf56a5d.entry.js +2 -0
  385. package/dist/core/p-cdf56a5d.entry.js.map +1 -0
  386. package/dist/core/{p-a71055c9.entry.js → p-d45d66c0.entry.js} +2 -2
  387. package/dist/core/p-d6c50565.entry.js +2 -0
  388. package/dist/core/p-d6c50565.entry.js.map +1 -0
  389. package/dist/core/{p-85734ebf.entry.js → p-d975bf2f.entry.js} +2 -2
  390. package/dist/core/p-d975bf2f.entry.js.map +1 -0
  391. package/dist/core/p-dede4974.entry.js +2 -0
  392. package/dist/core/p-dede4974.entry.js.map +1 -0
  393. package/dist/core/{p-071f4748.entry.js → p-df88ff5b.entry.js} +2 -2
  394. package/dist/core/p-e86a6d2d.entry.js +2 -0
  395. package/dist/core/{p-20c4d90b.entry.js → p-ebab7a9e.entry.js} +2 -2
  396. package/dist/core/p-eeab3a2e.entry.js +2 -0
  397. package/dist/core/p-eeab3a2e.entry.js.map +1 -0
  398. package/dist/core/{p-264ce7a0.entry.js → p-ef36181d.entry.js} +2 -2
  399. package/dist/core/p-ef36181d.entry.js.map +1 -0
  400. package/dist/core/p-f0388d68.entry.js +2 -0
  401. package/dist/core/p-f0388d68.entry.js.map +1 -0
  402. package/dist/core/{p-2b1a331b.entry.js → p-fbf57f0a.entry.js} +2 -2
  403. package/dist/esm/core.js +1 -1
  404. package/dist/esm/{helpers-dd035d0d.js → helpers-f2ffaa7c.js} +37 -74
  405. package/dist/esm/helpers-f2ffaa7c.js.map +1 -0
  406. package/dist/esm/ic-accordion-group.entry.js +1 -1
  407. package/dist/esm/ic-accordion-group.entry.js.map +1 -1
  408. package/dist/esm/ic-accordion.entry.js +1 -1
  409. package/dist/esm/ic-accordion.entry.js.map +1 -1
  410. package/dist/esm/ic-alert.entry.js +63 -36
  411. package/dist/esm/ic-alert.entry.js.map +1 -1
  412. package/dist/esm/ic-back-to-top.entry.js +4 -4
  413. package/dist/esm/ic-badge.entry.js +41 -17
  414. package/dist/esm/ic-badge.entry.js.map +1 -1
  415. package/dist/esm/ic-breadcrumb-group.entry.js +56 -76
  416. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  417. package/dist/esm/ic-breadcrumb.entry.js +32 -51
  418. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  419. package/dist/esm/ic-button_3.entry.js +136 -132
  420. package/dist/esm/ic-button_3.entry.js.map +1 -1
  421. package/dist/esm/ic-card-vertical.entry.js +6 -6
  422. package/dist/esm/ic-card-vertical.entry.js.map +1 -1
  423. package/dist/esm/ic-checkbox-group.entry.js +9 -10
  424. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  425. package/dist/esm/ic-checkbox.entry.js +35 -34
  426. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  427. package/dist/esm/ic-chip.entry.js +26 -38
  428. package/dist/esm/ic-chip.entry.js.map +1 -1
  429. package/dist/esm/ic-classification-banner.entry.js +2 -2
  430. package/dist/esm/ic-data-list.entry.js +2 -2
  431. package/dist/esm/ic-data-row.entry.js +3 -3
  432. package/dist/esm/ic-dialog.entry.js +3 -3
  433. package/dist/esm/ic-dialog.entry.js.map +1 -1
  434. package/dist/esm/ic-divider.entry.js +2 -2
  435. package/dist/esm/ic-divider.entry.js.map +1 -1
  436. package/dist/esm/ic-empty-state.entry.js +3 -3
  437. package/dist/esm/ic-footer-link-group.entry.js +2 -2
  438. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  439. package/dist/esm/ic-footer-link.entry.js +3 -3
  440. package/dist/esm/ic-footer.entry.js +4 -4
  441. package/dist/esm/ic-hero.entry.js +5 -5
  442. package/dist/esm/ic-horizontal-scroll.entry.js +6 -6
  443. package/dist/esm/ic-input-component-container_3.entry.js +9 -9
  444. package/dist/esm/ic-input-label_2.entry.js +8 -8
  445. package/dist/esm/ic-link.entry.js +21 -3
  446. package/dist/esm/ic-link.entry.js.map +1 -1
  447. package/dist/esm/ic-menu-group.entry.js +2 -2
  448. package/dist/esm/ic-menu-item.entry.js +5 -5
  449. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  450. package/dist/esm/ic-navigation-button.entry.js +3 -3
  451. package/dist/esm/ic-navigation-group.entry.js +3 -3
  452. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  453. package/dist/esm/ic-navigation-item.entry.js +12 -7
  454. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  455. package/dist/esm/ic-navigation-menu.entry.js +5 -5
  456. package/dist/esm/ic-page-header.entry.js +7 -7
  457. package/dist/esm/ic-pagination-item.entry.js +2 -2
  458. package/dist/esm/ic-pagination.entry.js +5 -5
  459. package/dist/esm/ic-popover-menu.entry.js +8 -7
  460. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  461. package/dist/esm/ic-radio-group.entry.js +5 -5
  462. package/dist/esm/ic-radio-option.entry.js +6 -6
  463. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  464. package/dist/esm/ic-search-bar.entry.js +112 -135
  465. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  466. package/dist/esm/ic-section-container.entry.js +2 -2
  467. package/dist/esm/ic-select.entry.js +47 -50
  468. package/dist/esm/ic-select.entry.js.map +1 -1
  469. package/dist/esm/ic-side-navigation.entry.js +6 -6
  470. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  471. package/dist/esm/ic-skeleton.entry.js +2 -2
  472. package/dist/esm/ic-skip-link.entry.js +10 -3
  473. package/dist/esm/ic-skip-link.entry.js.map +1 -1
  474. package/dist/esm/ic-status-tag.entry.js +3 -3
  475. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  476. package/dist/esm/ic-step.entry.js +15 -15
  477. package/dist/esm/ic-step.entry.js.map +1 -1
  478. package/dist/esm/ic-stepper.entry.js +3 -3
  479. package/dist/esm/ic-switch.entry.js +6 -6
  480. package/dist/esm/ic-switch.entry.js.map +1 -1
  481. package/dist/esm/ic-tab-context.entry.js +1 -1
  482. package/dist/esm/ic-tab-group.entry.js +3 -3
  483. package/dist/esm/ic-tab-panel.entry.js +2 -2
  484. package/dist/esm/ic-tab.entry.js +3 -3
  485. package/dist/esm/ic-text-field.entry.js +32 -29
  486. package/dist/esm/ic-text-field.entry.js.map +1 -1
  487. package/dist/esm/ic-theme.entry.js +4 -2
  488. package/dist/esm/ic-theme.entry.js.map +1 -1
  489. package/dist/esm/ic-toast-region.entry.js +1 -1
  490. package/dist/esm/ic-toast.entry.js +4 -4
  491. package/dist/esm/ic-toggle-button-group.entry.js +3 -3
  492. package/dist/esm/ic-toggle-button.entry.js +4 -4
  493. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  494. package/dist/esm/ic-top-navigation.entry.js +5 -5
  495. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  496. package/dist/esm/ic-typography.entry.js +4 -4
  497. package/dist/esm/ic-typography.entry.js.map +1 -1
  498. package/dist/esm/loader.js +1 -1
  499. package/dist/types/components/ic-alert/ic-alert.d.ts +17 -9
  500. package/dist/types/components/ic-badge/ic-badge.d.ts +4 -0
  501. package/dist/types/components/ic-breadcrumb/ic-breadcrumb.d.ts +4 -6
  502. package/dist/types/components/ic-breadcrumb-group/ic-breadcrumb-group.d.ts +9 -15
  503. package/dist/types/components/ic-button/ic-button.d.ts +29 -22
  504. package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +14 -13
  505. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +8 -9
  506. package/dist/types/components/ic-chip/ic-chip.d.ts +13 -15
  507. package/dist/types/components/ic-link/ic-link.d.ts +2 -0
  508. package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +38 -40
  509. package/dist/types/components/ic-select/ic-select.d.ts +1 -0
  510. package/dist/types/components/ic-skip-link/ic-skip-link.d.ts +5 -0
  511. package/dist/types/components/ic-text-field/ic-text-field.d.ts +37 -32
  512. package/dist/types/components/ic-theme/ic-theme.d.ts +6 -2
  513. package/dist/types/components/ic-tooltip/ic-tooltip.d.ts +3 -0
  514. package/dist/types/components.d.ts +147 -133
  515. package/dist/types/utils/helpers.d.ts +13 -9
  516. package/dist/types/utils/types.d.ts +1 -0
  517. package/hydrate/index.js +809 -832
  518. package/hydrate/index.mjs +809 -832
  519. package/package.json +3 -3
  520. package/vscode-data.json +167 -3
  521. package/dist/cjs/helpers-a0a128bd.js.map +0 -1
  522. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.types.js +0 -2
  523. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.types.js.map +0 -1
  524. package/dist/core/p-06d97789.entry.js +0 -2
  525. package/dist/core/p-06d97789.entry.js.map +0 -1
  526. package/dist/core/p-09070f61.entry.js +0 -2
  527. package/dist/core/p-0c0ac69d.entry.js +0 -2
  528. package/dist/core/p-0c0ac69d.entry.js.map +0 -1
  529. package/dist/core/p-0e96d4d8.entry.js +0 -2
  530. package/dist/core/p-0e96d4d8.entry.js.map +0 -1
  531. package/dist/core/p-116ad73d.entry.js +0 -2
  532. package/dist/core/p-116ad73d.entry.js.map +0 -1
  533. package/dist/core/p-1171a945.entry.js +0 -2
  534. package/dist/core/p-1171a945.entry.js.map +0 -1
  535. package/dist/core/p-2537f33e.entry.js.map +0 -1
  536. package/dist/core/p-264ce7a0.entry.js.map +0 -1
  537. package/dist/core/p-28656111.entry.js +0 -2
  538. package/dist/core/p-28656111.entry.js.map +0 -1
  539. package/dist/core/p-33243fff.entry.js +0 -2
  540. package/dist/core/p-33243fff.entry.js.map +0 -1
  541. package/dist/core/p-45595f98.entry.js.map +0 -1
  542. package/dist/core/p-49768069.entry.js +0 -2
  543. package/dist/core/p-49768069.entry.js.map +0 -1
  544. package/dist/core/p-4c68494c.entry.js +0 -2
  545. package/dist/core/p-4c68494c.entry.js.map +0 -1
  546. package/dist/core/p-55a37101.entry.js +0 -2
  547. package/dist/core/p-55a37101.entry.js.map +0 -1
  548. package/dist/core/p-5c349c9d.entry.js.map +0 -1
  549. package/dist/core/p-5e1fd097.entry.js +0 -2
  550. package/dist/core/p-5e1fd097.entry.js.map +0 -1
  551. package/dist/core/p-73fc198f.entry.js +0 -2
  552. package/dist/core/p-73fc198f.entry.js.map +0 -1
  553. package/dist/core/p-7eaf8da8.entry.js +0 -2
  554. package/dist/core/p-811d447b.entry.js +0 -2
  555. package/dist/core/p-811d447b.entry.js.map +0 -1
  556. package/dist/core/p-85734ebf.entry.js.map +0 -1
  557. package/dist/core/p-85b7d931.entry.js +0 -2
  558. package/dist/core/p-85b7d931.entry.js.map +0 -1
  559. package/dist/core/p-98328cb9.entry.js +0 -2
  560. package/dist/core/p-98328cb9.entry.js.map +0 -1
  561. package/dist/core/p-a20a7cd3.entry.js.map +0 -1
  562. package/dist/core/p-a22658fb.entry.js +0 -2
  563. package/dist/core/p-a22658fb.entry.js.map +0 -1
  564. package/dist/core/p-a794b724.entry.js +0 -2
  565. package/dist/core/p-a794b724.entry.js.map +0 -1
  566. package/dist/core/p-b21b4fea.entry.js +0 -2
  567. package/dist/core/p-b21b4fea.entry.js.map +0 -1
  568. package/dist/core/p-b953b22f.entry.js +0 -2
  569. package/dist/core/p-b953b22f.entry.js.map +0 -1
  570. package/dist/core/p-c9726fbd.entry.js.map +0 -1
  571. package/dist/core/p-d981598e.entry.js +0 -2
  572. package/dist/core/p-d981598e.entry.js.map +0 -1
  573. package/dist/core/p-ed8957da.js +0 -2
  574. package/dist/core/p-ed8957da.js.map +0 -1
  575. package/dist/core/p-f3315216.entry.js +0 -2
  576. package/dist/core/p-f3315216.entry.js.map +0 -1
  577. package/dist/core/p-f43f411a.entry.js +0 -2
  578. package/dist/core/p-f43f411a.entry.js.map +0 -1
  579. package/dist/core/p-ff995eb8.entry.js +0 -2
  580. package/dist/core/p-ff995eb8.entry.js.map +0 -1
  581. package/dist/esm/helpers-dd035d0d.js.map +0 -1
  582. package/dist/types/components/ic-breadcrumb/ic-breadcrumb.types.d.ts +0 -1
  583. /package/dist/core/{p-a55e7988.entry.js.map → p-10e1e227.entry.js.map} +0 -0
  584. /package/dist/core/{p-729745d3.entry.js.map → p-15b7adaf.entry.js.map} +0 -0
  585. /package/dist/core/{p-972671ea.entry.js.map → p-18714198.entry.js.map} +0 -0
  586. /package/dist/core/{p-37df68fe.entry.js.map → p-1be17f22.entry.js.map} +0 -0
  587. /package/dist/core/{p-17cf7b50.entry.js.map → p-267a19d4.entry.js.map} +0 -0
  588. /package/dist/core/{p-8b268274.entry.js.map → p-2c371198.entry.js.map} +0 -0
  589. /package/dist/core/{p-09070f61.entry.js.map → p-42a7d0b6.entry.js.map} +0 -0
  590. /package/dist/core/{p-fa02a267.entry.js.map → p-4b6818d9.entry.js.map} +0 -0
  591. /package/dist/core/{p-1ac08e6d.entry.js.map → p-628c32b8.entry.js.map} +0 -0
  592. /package/dist/core/{p-8856dff4.entry.js.map → p-72c117b6.entry.js.map} +0 -0
  593. /package/dist/core/{p-0d016565.entry.js.map → p-788c96ac.entry.js.map} +0 -0
  594. /package/dist/core/{p-78e7a859.entry.js.map → p-7fb79e87.entry.js.map} +0 -0
  595. /package/dist/core/{p-7e79bd0e.entry.js.map → p-83764268.entry.js.map} +0 -0
  596. /package/dist/core/{p-f34efc17.entry.js.map → p-8c4f7c63.entry.js.map} +0 -0
  597. /package/dist/core/{p-1f455336.entry.js.map → p-910f5f14.entry.js.map} +0 -0
  598. /package/dist/core/{p-110486f0.entry.js.map → p-9ca147f3.entry.js.map} +0 -0
  599. /package/dist/core/{p-d9aec0dd.entry.js.map → p-9cfc2bac.entry.js.map} +0 -0
  600. /package/dist/core/{p-74600ed8.entry.js.map → p-a0161990.entry.js.map} +0 -0
  601. /package/dist/core/{p-4f2a1950.entry.js.map → p-a4f9b5bf.entry.js.map} +0 -0
  602. /package/dist/core/{p-701696aa.entry.js.map → p-b9459ba2.entry.js.map} +0 -0
  603. /package/dist/core/{p-50f4d151.entry.js.map → p-bc2ca778.entry.js.map} +0 -0
  604. /package/dist/core/{p-69e4daec.entry.js.map → p-bdc72446.entry.js.map} +0 -0
  605. /package/dist/core/{p-a103068b.entry.js.map → p-c8cf1ad5.entry.js.map} +0 -0
  606. /package/dist/core/{p-a71055c9.entry.js.map → p-d45d66c0.entry.js.map} +0 -0
  607. /package/dist/core/{p-071f4748.entry.js.map → p-df88ff5b.entry.js.map} +0 -0
  608. /package/dist/core/{p-7eaf8da8.entry.js.map → p-e86a6d2d.entry.js.map} +0 -0
  609. /package/dist/core/{p-20c4d90b.entry.js.map → p-ebab7a9e.entry.js.map} +0 -0
  610. /package/dist/core/{p-2b1a331b.entry.js.map → p-fbf57f0a.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"ic-step.js","mappings":"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","names":[],"sources":["src/components/ic-step/ic-step.css?tag=ic-step&encapsulation=shadow","src/components/ic-step/ic-step.tsx"],"sourcesContent":["/* SHARED STYLING */\n:host {\n display: flex;\n flex: auto;\n\n --ic-typography-color: currentcolor;\n}\n\n.step {\n display: flex;\n flex: 1 1 0;\n}\n\n.step-icon {\n display: flex;\n justify-content: center;\n}\n\n.heading,\n.subheading,\n.step-status,\n.next-step {\n white-space: pre-line;\n}\n\n.next-step {\n color: var(--ic-stepper-compact-step-next-text);\n}\n\n.visually-hidden {\n position: absolute;\n left: -9999px;\n top: auto;\n width: 1px;\n height: 1px;\n overflow: hidden;\n}\n\n.visually-hidden:dir(rtl) {\n right: -9999px;\n}\n\n/* COMPACT STEP STYLING */\n:host(.ic-step-compact) {\n -moz-column-gap: var(--ic-space-sm);\n column-gap: var(--ic-space-sm);\n\n --compact-step-inner-color: var(--ic-step-indicator-status-current);\n --compact-step-outer-color: var(--ic-step-indicator-status-remaining);\n --compact-step-circular-line-width: var(--ic-space-xxs);\n}\n\n:host(.ic-step-compact) .step {\n -moz-column-gap: var(--ic-space-sm);\n column-gap: var(--ic-space-sm);\n}\n\n:host(.ic-step-compact) .step:not(.current) {\n display: none;\n opacity: 0;\n visibility: hidden;\n}\n\n.compact-step-progress-indicator {\n margin: var(--ic-space-xs) 0 0;\n}\n\n:host ic-loading-indicator::part(ic-loading-container) {\n border-radius: 50%;\n}\n\n:host() ic-loading-indicator::part(ic-loading-container) {\n background-color: var(--ic-step-indicator-background);\n}\n\n:host(.ic-step-compact) .heading-area {\n display: flex;\n flex-direction: column;\n width: 14.25rem;\n}\n\n:host(.ic-step-compact) .heading {\n color: var(--ic-stepper-compact-step-title);\n}\n\n:host(.ic-step-compact) .disabled .heading {\n color: var(--ic-stepper-compact-step-title-disabled);\n}\n\n.info-line {\n display: flex;\n -moz-column-gap: var(--ic-space-xs);\n column-gap: var(--ic-space-xs);\n}\n\n.step-status {\n display: flex;\n color: var(--ic-stepper-compact-step-requirement-text);\n -moz-column-gap: var(--ic-space-xxxs);\n column-gap: var(--ic-space-xxxs);\n}\n\n.compact-step-completed .step-status {\n color: var(--ic-stepper-compact-step-completed-text);\n}\n\n.compact-step-disabled :is(.heading, .step-status) {\n color: var(--ic-stepper-compact-step-requirement-text-disabled);\n}\n\n.step-num {\n color: var(--ic-stepper-compact-step-stage-text);\n white-space: nowrap;\n}\n\n:host(.ic-step-compact) .step-icon {\n margin: var(--ic-space-xxxs);\n}\n\n:host(.ic-step-compact) .step-icon svg {\n width: var(--ic-space-md);\n height: var(--ic-space-md);\n}\n\n/* DEFAULT STEP STYLING */\n:host(.ic-step-default) .step {\n flex-direction: column;\n}\n\n:host(.ic-step-default.last-step) {\n flex-grow: initial;\n}\n\n.step-top {\n display: flex;\n width: 100%;\n align-items: center;\n align-self: flex-start;\n height: 2.5rem;\n}\n\n:host(.ic-step-default) .step-icon {\n border-radius: 50%;\n}\n\n:host(.ic-step-default) .step-icon {\n background-color: var(--ic-step-number-inactive);\n}\n\n.step-icon-inner {\n width: var(--ic-space-xl);\n height: var(--ic-space-xl);\n display: flex;\n justify-content: center;\n align-items: center;\n border-radius: 50%;\n color: var(--ic-step-number-text-inactive);\n}\n\n:host(.ic-step-default) .current {\n color: var(--ic-status-info-default);\n}\n\n:host(.ic-step-default) .heading-area {\n margin: var(--ic-space-xs) 0;\n padding-right: var(--ic-space-xs);\n width: 100%;\n}\n\n:host(.ic-step-default) .heading,\n.subheading {\n width: -moz-fit-content;\n width: fit-content;\n}\n\n.heading {\n color: var(--ic-step-title);\n}\n\n.current .heading {\n color: var(--ic-step-title-current);\n}\n\n.completed .heading {\n color: var(--ic-step-title-success);\n}\n\n.disabled .heading {\n color: var(--ic-step-title-disabled);\n}\n\n.subheading {\n color: var(--ic-step-title-status-text-inactive);\n}\n\n.current .subheading {\n color: var(--ic-step-title-status-text-current);\n}\n\n.disabled .subheading {\n color: var(--ic-step-title-status-text-disabled);\n}\n\n:host(.ic-step-default) .completed {\n color: var(--ic-status-success-default);\n}\n\n.active .step-icon-inner {\n box-shadow: inset var(--ic-step-number-inactive-outline) 0 0 0 0.125rem;\n}\n\n.current .step-icon-inner {\n background-color: var(--ic-step-number-background-active);\n color: var(--ic-step-number-text-current);\n}\n\n.disabled {\n color: var(--ic-color-text-disabled-mid);\n}\n\n.disabled .step-icon-inner {\n border: var(--ic-border-width) dashed var(--ic-step-number-disabled);\n width: calc(var(--ic-space-xl) - var(--ic-space-xxxs));\n height: calc(var(--ic-space-xl) - var(--ic-space-xxxs));\n color: var(--ic-step-number-text-disabled);\n}\n\n.disabled .step-icon {\n background-color: transparent !important;\n}\n\n.completed .step-icon-inner {\n background: var(--ic-step-number-background-success);\n box-shadow: inset var(--ic-step-number-background-success) 0 0 0\n var(--ic-space-xxxs);\n border-radius: 100%;\n}\n\n:host(.ic-step-default) .current .step-icon {\n border: var(--ic-space-xxxs) solid var(--ic-step-number-current-outline);\n padding: var(--ic-space-xxxs);\n margin: 0 calc(-1 * var(--ic-space-xxxs));\n background-color: var(--ic-step-number-current-outer-fill);\n\n /* compensating for the circle being bigger than other steps */\n}\n\n.step-connect {\n height: var(--ic-space-xxxs);\n background-color: var(--ic-stepper-connector-remaining-status);\n margin: 0 var(--ic-space-xs);\n border-radius: var(--ic-space-xxs);\n width: 100%;\n}\n\n.aligned-full-width.step-connect {\n min-width: 6.25rem;\n width: 100%;\n}\n\n.disabled .step-connect {\n height: 0;\n background-color: rgb(0 0 0 / 0%);\n border-top: 0.125rem dashed var(--ic-stepper-connector-disabled);\n border-radius: 0;\n}\n\n.completed .step-connect {\n background-color: var(--ic-stepper-connector-success);\n}\n\n.step-connect-inner {\n width: 70%;\n display: flex;\n flex: auto;\n height: var(--ic-space-xxxs);\n border-radius: var(--ic-space-xxs);\n background-color: var(--ic-stepper-connector-current-status);\n}\n\n.step-icon-inner .check-icon {\n padding-top: var(--ic-space-xxs);\n}\n\n.step-icon-inner .check-icon svg {\n width: var(--ic-space-md);\n height: auto;\n}\n\n.step-icon-inner .check-icon > svg > path {\n fill: var(--ic-step-number-icon-success);\n}\n\n/** High Contrast **/\n@media (forced-colors: active) {\n /* COMPACT STEP */\n .compact-step-disabled :is(.heading, .step-status) {\n color: GrayText;\n }\n\n /* DEFAULT STEP */\n .step-connect:not(.disabled .step-connect) {\n border: var(--ic-border-hc);\n }\n\n .active .step-icon-inner,\n .completed .step-icon-inner,\n .current .step-icon-inner {\n forced-color-adjust: none;\n box-shadow: inset canvastext 0 0 0 0.125rem;\n background-color: transparent;\n color: canvastext;\n }\n\n :host(.ic-step-default) .current .step-icon {\n padding: 0;\n border: none;\n }\n\n .disabled,\n .disabled .heading-area,\n .disabled .step-icon-inner,\n .disabled .heading {\n color: GrayText;\n }\n\n .step-connect-inner,\n .completed .step-connect {\n background-color: canvastext;\n }\n\n .step-icon-inner .check-icon > svg > path {\n fill: canvastext;\n }\n}\n","import { Component, Host, h, Prop, Element, Watch } from \"@stencil/core\";\nimport checkIcon from \"../../assets/check-icon.svg\";\nimport warningIcon from \"../../assets/warning-icon-outline.svg\";\nimport { IcStepVariants, IcStepStatuses, IcStepTypes } from \"./ic-step.types\";\nimport { isPropDefined } from \"../../utils/helpers\";\nimport { IcThemeMode } from \"../../utils/types\";\n\n@Component({\n tag: \"ic-step\",\n styleUrl: \"ic-step.css\",\n shadow: true,\n})\nexport class Step {\n @Element() el: HTMLIcStepElement;\n\n /**\n * @internal If a compact stepper is being used, this sets the styling of the step.\n */\n @Prop() compactStepStyling?: IcStepTypes;\n\n /**\n * @internal If `true`, and a compact stepper is being used, the current step will be the only step in view.\n */\n @Prop({ mutable: true }) current?: boolean = false;\n\n /**\n * @internal If `true`, the step will be marked as being the last one in the series. This is managed by ic-stepper.\n */\n @Prop() lastStep!: boolean;\n\n /**\n * @internal The step number of the final step. This is managed by ic-stepper.\n */\n @Prop() lastStepNum?: number;\n\n /**\n * @internal The name of the next step. This is managed by ic-stepper.\n */\n @Prop() nextStepHeading?: string;\n\n /**\n * @internal The progress of the next step, calculated by dividing the current step number by the total number of steps. This is managed by ic-stepper.\n */\n @Prop() progress?: number;\n\n /**\n * @internal The step number, managed by ic-stepper.\n */\n @Prop() stepNum?: number;\n\n /**\n * The status of the step. Use this prop to display a status message on the step if it is required or optional.\n */\n @Prop() status?: IcStepStatuses;\n\n /**\n * Additional information about the step. Use this prop to override the default step status messaging displayed when selecting a step type or step status.\n */\n @Prop() subheading?: string;\n\n /**\n * The title of the step within the stepper.\n */\n @Prop() heading?: string;\n\n /**\n * @internal Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * @internal The variant of the step. This is managed by ic-stepper.\n */\n @Prop() variant!: IcStepVariants;\n\n /**\n * The state of the step within the stepper.\n */\n @Prop() type?: IcStepTypes = \"active\";\n\n @Watch(\"type\")\n typeChangeHandler(): void {\n if (this.variant === \"compact\" && this.type === \"current\") {\n this.current = true;\n } else {\n this.current = false;\n }\n }\n\n render() {\n // ARIA LABEL\n let ariaLabel = \"\";\n\n if (this.type === \"completed\") {\n ariaLabel = \". Completed step\";\n } else if (this.type === \"disabled\") {\n ariaLabel = \". Non-required step\";\n } else if (this.status === \"required\") {\n ariaLabel = \". Required step\";\n } else if (this.status === \"optional\") {\n ariaLabel = \". Optional step\";\n }\n\n // STEP STATUS\n let stepStatus;\n if (this.status && isPropDefined(this.status)) {\n stepStatus = this.status[0].toUpperCase() + this.status.slice(1);\n }\n\n // STEP TYPE\n let stepType;\n if (this.type === \"disabled\" || this.compactStepStyling === \"disabled\") {\n stepType = \"Not required\";\n } else if (this.compactStepStyling === \"completed\") {\n stepType = \"Completed\";\n }\n\n // STATUS ICON FOR COMPACT STEP\n let statusIcon;\n if (this.type === \"completed\" || this.compactStepStyling === \"completed\") {\n statusIcon = (\n <span\n class=\"check-icon step-icon\"\n aria-hidden=\"true\"\n innerHTML={checkIcon}\n ></span>\n );\n } else if (\n this.type === \"disabled\" ||\n this.compactStepStyling === \"disabled\"\n ) {\n statusIcon = (\n <span\n class=\"warning-icon step-icon\"\n aria-hidden=\"true\"\n innerHTML={warningIcon}\n ></span>\n );\n }\n\n // COMPACT STEP COMPONENT\n const compactStep = (\n <div\n class={{\n [\"step\"]: true,\n [\"current\"]: !!this.current,\n [`compact-step-${this.compactStepStyling}`]:\n !!this.compactStepStyling,\n [\"disabled\"]:\n this.type === \"disabled\" || this.compactStepStyling === \"disabled\",\n }}\n >\n <ic-loading-indicator\n class={{\n \"compact-step-progress-indicator\": true,\n \"not-required\":\n this.type === \"disabled\" ||\n this.compactStepStyling === \"disabled\",\n }}\n aria-hidden=\"true\"\n size=\"small\"\n inner-label={this.stepNum}\n progress={this.progress}\n ></ic-loading-indicator>\n <div class=\"heading-area\">\n <ic-typography variant=\"h4\" class=\"heading\">\n {this.heading}\n </ic-typography>\n <div class=\"info-line\">\n <ic-typography variant=\"caption\" class=\"step-num\">\n {`${this.stepNum} of ${this.lastStepNum}`}\n <span class=\"visually-hidden\"> steps</span>\n </ic-typography>\n {(this.subheading ||\n this.type === \"completed\" ||\n this.type === \"disabled\" ||\n (this.variant === \"compact\" &&\n !!this.compactStepStyling &&\n this.compactStepStyling !== \"active\") ||\n !!this.status) && (\n <div class=\"step-status\">\n {statusIcon !== undefined && statusIcon}\n {(this.subheading || stepType) && (\n <ic-typography variant=\"caption\">\n {this.subheading !== null && isPropDefined(this.subheading)\n ? this.subheading\n : this.type === \"disabled\" ||\n (this.variant === \"compact\" &&\n this.compactStepStyling === \"disabled\") ||\n this.type === \"completed\" ||\n (this.variant === \"compact\" &&\n this.compactStepStyling === \"completed\")\n ? stepType\n : this.status && stepStatus}\n </ic-typography>\n )}\n </div>\n )}\n </div>\n {this.lastStep ? (\n <ic-typography variant=\"subtitle-small\" class=\"next-step\">\n Last step\n </ic-typography>\n ) : (\n isPropDefined(this.nextStepHeading) && (\n <ic-typography variant=\"subtitle-small\" class=\"next-step\">\n Next<span class=\"visually-hidden\"> step is</span>:{\" \"}\n {this.nextStepHeading}\n </ic-typography>\n )\n )}\n </div>\n </div>\n );\n\n // ICON FOR DEFAULT STEP\n let icon;\n if (this.type !== \"completed\") {\n icon = (\n <ic-typography variant=\"subtitle-small\">\n <span class=\"step-icon-inner\" aria-hidden=\"true\">\n {this.stepNum}\n </span>\n </ic-typography>\n );\n } else {\n icon = (\n <div class=\"step-icon-inner\" aria-hidden=\"true\">\n <span class=\"check-icon\" innerHTML={checkIcon}></span>\n </div>\n );\n }\n\n // STEP CONNECT FOR DEFAULT STEP\n const partialBar = this.type === \"current\" && (\n <div class=\"step-connect-inner\"></div>\n );\n\n const finalStep = !this.lastStep && (\n <div\n class={{\n [\"step-connect\"]: true,\n [\"aligned-full-width\"]: !!(\n this.el.parentElement?.classList.contains(\"ic-stepper-default\") &&\n !this.el.parentElement.classList.contains(\"ic-stepper-aligned-left\")\n ),\n }}\n >\n {partialBar}\n </div>\n );\n\n // DEFAULT STEP COMPONENT\n const defaultStep = (\n <div\n class={{\n [\"step\"]: true,\n [`${this.type}`]: true,\n }}\n >\n <div class=\"step-top\">\n <div class=\"step-icon\">{icon}</div>\n {finalStep}\n </div>\n {(this.heading || this.subheading || this.status) && (\n <div class=\"heading-area\">\n {this.heading && (\n <ic-typography variant=\"subtitle-large\" class=\"heading\">\n {this.heading}\n </ic-typography>\n )}\n {this.heading && (this.subheading || this.status) && (\n <ic-typography variant=\"caption\" class=\"subheading\">\n {this.subheading !== null && isPropDefined(this.subheading)\n ? this.subheading\n : stepStatus}\n </ic-typography>\n )}\n </div>\n )}\n </div>\n );\n\n return (\n <Host\n role=\"listitem\"\n aria-label={`Step ${this.stepNum}${ariaLabel}`}\n aria-current={(this.current || this.type === \"current\") && \"step\"}\n class={{\n [\"aligned-full-width\"]: !!(\n this.el.parentElement?.classList.contains(\"ic-stepper-default\") &&\n !this.el.parentElement.classList.contains(\"ic-stepper-aligned-left\")\n ),\n [`ic-step-${this.variant}`]: true,\n [`ic-theme-${this.theme}`]: this.theme !== \"inherit\",\n }}\n >\n {this.variant === \"compact\" ? compactStep : defaultStep}\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-step.js","mappings":"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","names":[],"sources":["src/components/ic-step/ic-step.css?tag=ic-step&encapsulation=shadow","src/components/ic-step/ic-step.tsx"],"sourcesContent":["/* SHARED STYLING */\n:host {\n display: flex;\n flex: auto;\n\n --ic-typography-color: currentcolor;\n}\n\n.step {\n display: flex;\n flex: 1 1 0;\n}\n\n.step-icon {\n display: flex;\n justify-content: center;\n}\n\n.heading,\n.subheading,\n.step-status,\n.next-step {\n white-space: pre-line;\n}\n\n.next-step {\n color: var(--ic-stepper-compact-step-next-text);\n}\n\n.visually-hidden {\n position: absolute;\n left: -9999px;\n top: auto;\n width: 1px;\n height: 1px;\n overflow: hidden;\n}\n\n.visually-hidden:dir(rtl) {\n right: -9999px;\n}\n\n/* COMPACT STEP STYLING */\n:host(.ic-step-compact) {\n -moz-column-gap: var(--ic-space-sm);\n column-gap: var(--ic-space-sm);\n\n --compact-step-inner-color: var(--ic-step-indicator-status-current);\n --compact-step-outer-color: var(--ic-step-indicator-status-remaining);\n --compact-step-circular-line-width: var(--ic-space-xxs);\n}\n\n:host(.ic-step-compact) .step {\n -moz-column-gap: var(--ic-space-sm);\n column-gap: var(--ic-space-sm);\n}\n\n:host(.ic-step-compact) .step:not(.current) {\n display: none;\n opacity: 0;\n visibility: hidden;\n}\n\n.compact-step-progress-indicator {\n margin: var(--ic-space-xs) 0 0;\n}\n\n:host ic-loading-indicator::part(ic-loading-container) {\n border-radius: 50%;\n}\n\n:host() ic-loading-indicator::part(ic-loading-container) {\n background-color: var(--ic-step-indicator-background);\n}\n\n:host(.ic-step-compact) .heading-area {\n display: flex;\n flex-direction: column;\n width: 14.25rem;\n}\n\n:host(.ic-step-compact) .heading {\n color: var(--ic-stepper-compact-step-title);\n}\n\n:host(.ic-step-compact) .disabled .heading {\n color: var(--ic-stepper-compact-step-title-disabled);\n}\n\n.info-line {\n display: flex;\n -moz-column-gap: var(--ic-space-xs);\n column-gap: var(--ic-space-xs);\n}\n\n.step-status {\n display: flex;\n color: var(--ic-stepper-compact-step-requirement-text);\n -moz-column-gap: var(--ic-space-xxxs);\n column-gap: var(--ic-space-xxxs);\n}\n\n.compact-step-completed .step-status {\n color: var(--ic-stepper-compact-step-completed-text);\n}\n\n.compact-step-disabled :is(.heading, .step-status) {\n color: var(--ic-stepper-compact-step-requirement-text-disabled);\n}\n\n.step-num {\n color: var(--ic-stepper-compact-step-stage-text);\n white-space: nowrap;\n}\n\n:host(.ic-step-compact) .step-icon {\n margin: var(--ic-space-xxxs);\n}\n\n:host(.ic-step-compact) .step-icon svg {\n width: var(--ic-space-md);\n height: var(--ic-space-md);\n}\n\n/* DEFAULT STEP STYLING */\n:host(.ic-step-default) .step {\n flex-direction: column;\n}\n\n:host(.ic-step-default.last-step) {\n flex-grow: initial;\n}\n\n.step-top {\n display: flex;\n width: 100%;\n align-items: center;\n align-self: flex-start;\n height: 2.5rem;\n}\n\n:host(.ic-step-default) .step-icon {\n border-radius: 50%;\n background-color: var(--ic-step-number-inactive);\n}\n\n.step-icon-inner {\n width: var(--ic-space-xl);\n height: var(--ic-space-xl);\n display: flex;\n justify-content: center;\n align-items: center;\n border-radius: 50%;\n color: var(--ic-step-number-text-inactive);\n}\n\n:host(.ic-step-default) .current {\n color: var(--ic-status-info-default);\n}\n\n:host(.ic-step-default) .heading-area {\n margin: var(--ic-space-xs) 0;\n padding-right: var(--ic-space-xs);\n width: 100%;\n}\n\n:host(.ic-step-default) .heading,\n.subheading {\n width: -moz-fit-content;\n width: fit-content;\n}\n\n.heading {\n color: var(--ic-step-title);\n}\n\n.current .heading {\n color: var(--ic-step-title-current);\n}\n\n.completed .heading {\n color: var(--ic-step-title-success);\n}\n\n.disabled .heading {\n color: var(--ic-step-title-disabled);\n}\n\n.subheading {\n color: var(--ic-step-title-status-text-inactive);\n}\n\n.current .subheading {\n color: var(--ic-step-title-status-text-current);\n}\n\n.disabled .subheading {\n color: var(--ic-step-title-status-text-disabled);\n}\n\n:host(.ic-step-default) .completed {\n color: var(--ic-status-success-default);\n}\n\n.active .step-icon-inner {\n box-shadow: inset var(--ic-step-number-inactive-outline) 0 0 0 0.125rem;\n}\n\n.current .step-icon-inner {\n background-color: var(--ic-step-number-background-active);\n color: var(--ic-step-number-text-current);\n}\n\n.disabled {\n color: var(--ic-color-text-disabled-mid);\n}\n\n.disabled .step-icon-inner {\n border: var(--ic-border-width) dashed var(--ic-step-number-disabled);\n width: calc(var(--ic-space-xl) - var(--ic-space-xxxs));\n height: calc(var(--ic-space-xl) - var(--ic-space-xxxs));\n color: var(--ic-step-number-text-disabled);\n}\n\n.disabled .step-icon {\n background-color: transparent !important;\n}\n\n.completed .step-icon-inner {\n background: var(--ic-step-number-background-success);\n box-shadow: inset var(--ic-step-number-background-success) 0 0 0\n var(--ic-space-xxxs);\n border-radius: 100%;\n}\n\n:host(.ic-step-default) .current .step-icon {\n border: var(--ic-space-xxxs) solid var(--ic-step-number-current-outline);\n padding: var(--ic-space-xxxs);\n margin: 0 calc(-1 * var(--ic-space-xxxs));\n background-color: var(--ic-step-number-current-outer-fill);\n\n /* compensating for the circle being bigger than other steps */\n}\n\n.step-connect {\n height: var(--ic-space-xxxs);\n background-color: var(--ic-stepper-connector-remaining-status);\n margin: 0 var(--ic-space-xs);\n border-radius: var(--ic-space-xxs);\n width: 100%;\n}\n\n.aligned-full-width.step-connect {\n min-width: 6.25rem;\n width: 100%;\n}\n\n.disabled .step-connect {\n height: 0;\n background-color: rgb(0 0 0 / 0%);\n border-top: 0.125rem dashed var(--ic-stepper-connector-disabled);\n border-radius: 0;\n}\n\n.completed .step-connect {\n background-color: var(--ic-stepper-connector-success);\n}\n\n.step-connect-inner {\n width: 70%;\n display: flex;\n flex: auto;\n height: var(--ic-space-xxxs);\n border-radius: var(--ic-space-xxs);\n background-color: var(--ic-stepper-connector-current-status);\n}\n\n.step-icon-inner .check-icon {\n padding-top: var(--ic-space-xxs);\n}\n\n.step-icon-inner .check-icon svg {\n width: var(--ic-space-md);\n height: auto;\n}\n\n.step-icon-inner .check-icon > svg > path {\n fill: var(--ic-step-number-icon-success);\n}\n\n/** High Contrast **/\n@media (forced-colors: active) {\n /* COMPACT STEP */\n .compact-step-disabled :is(.heading, .step-status) {\n color: GrayText;\n }\n\n /* DEFAULT STEP */\n .step-connect:not(.disabled .step-connect) {\n border: var(--ic-border-hc);\n }\n\n .active .step-icon-inner,\n .completed .step-icon-inner,\n .current .step-icon-inner {\n forced-color-adjust: none;\n box-shadow: inset canvastext 0 0 0 0.125rem;\n background-color: transparent;\n color: canvastext;\n }\n\n :host(.ic-step-default) .current .step-icon {\n padding: 0;\n border: none;\n }\n\n .disabled,\n .disabled .heading-area,\n .disabled .step-icon-inner,\n .disabled .heading {\n color: GrayText;\n }\n\n .step-connect-inner,\n .completed .step-connect {\n background-color: canvastext;\n }\n\n .step-icon-inner .check-icon > svg > path {\n fill: canvastext;\n }\n}\n","import { Component, Host, h, Prop, Element, Watch } from \"@stencil/core\";\nimport checkIcon from \"../../assets/check-icon.svg\";\nimport warningIcon from \"../../assets/warning-icon-outline.svg\";\nimport { IcStepVariants, IcStepStatuses, IcStepTypes } from \"./ic-step.types\";\nimport { isPropDefined } from \"../../utils/helpers\";\nimport { IcThemeMode } from \"../../utils/types\";\n\n@Component({\n tag: \"ic-step\",\n styleUrl: \"ic-step.css\",\n shadow: true,\n})\nexport class Step {\n @Element() el: HTMLIcStepElement;\n\n /**\n * @internal If a compact stepper is being used, this sets the styling of the step.\n */\n @Prop() compactStepStyling?: IcStepTypes;\n\n /**\n * @internal If `true`, and a compact stepper is being used, the current step will be the only step in view.\n */\n @Prop({ mutable: true }) current?: boolean = false;\n\n /**\n * @internal If `true`, the step will be marked as being the last one in the series. This is managed by ic-stepper.\n */\n @Prop() lastStep!: boolean;\n\n /**\n * @internal The step number of the final step. This is managed by ic-stepper.\n */\n @Prop() lastStepNum?: number;\n\n /**\n * @internal The name of the next step. This is managed by ic-stepper.\n */\n @Prop() nextStepHeading?: string;\n\n /**\n * @internal The progress of the next step, calculated by dividing the current step number by the total number of steps. This is managed by ic-stepper.\n */\n @Prop() progress?: number;\n\n /**\n * @internal The step number, managed by ic-stepper.\n */\n @Prop() stepNum?: number;\n\n /**\n * The status of the step. Use this prop to display a status message on the step if it is required or optional.\n */\n @Prop() status?: IcStepStatuses;\n\n /**\n * Additional information about the step. Use this prop to override the default step status messaging displayed when selecting a step type or step status.\n */\n @Prop() subheading?: string;\n\n /**\n * The title of the step within the stepper.\n */\n @Prop() heading?: string;\n\n /**\n * @internal Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * @internal The variant of the step. This is managed by ic-stepper.\n */\n @Prop() variant!: IcStepVariants;\n\n /**\n * The state of the step within the stepper.\n */\n @Prop() type?: IcStepTypes = \"active\";\n\n @Watch(\"type\")\n typeChangeHandler(): void {\n if (this.variant === \"compact\" && this.type === \"current\") {\n this.current = true;\n } else {\n this.current = false;\n }\n }\n\n render() {\n // ARIA LABEL\n let ariaLabel = \"\";\n\n if (this.type === \"completed\") {\n ariaLabel = \". Completed step\";\n } else if (this.type === \"disabled\") {\n ariaLabel = \". Non-required step\";\n } else if (this.status === \"required\") {\n ariaLabel = \". Required step\";\n } else if (this.status === \"optional\") {\n ariaLabel = \". Optional step\";\n }\n\n // STEP STATUS\n let stepStatus;\n if (this.status && isPropDefined(this.status)) {\n stepStatus = this.status[0].toUpperCase() + this.status.slice(1);\n }\n\n // STEP TYPE\n let stepType;\n if (this.type === \"disabled\" || this.compactStepStyling === \"disabled\") {\n stepType = \"Not required\";\n } else if (this.compactStepStyling === \"completed\") {\n stepType = \"Completed\";\n }\n\n // STATUS ICON FOR COMPACT STEP\n let statusIcon;\n if (this.type === \"completed\" || this.compactStepStyling === \"completed\") {\n statusIcon = (\n <span\n class=\"check-icon step-icon\"\n aria-hidden=\"true\"\n innerHTML={checkIcon}\n ></span>\n );\n } else if (\n this.type === \"disabled\" ||\n this.compactStepStyling === \"disabled\"\n ) {\n statusIcon = (\n <span\n class=\"warning-icon step-icon\"\n aria-hidden=\"true\"\n innerHTML={warningIcon}\n ></span>\n );\n }\n\n // COMPACT STEP COMPONENT\n const compactStep = (\n <div\n class={{\n [\"step\"]: true,\n [\"current\"]: !!this.current,\n [`compact-step-${this.compactStepStyling}`]:\n !!this.compactStepStyling,\n [\"disabled\"]:\n this.type === \"disabled\" || this.compactStepStyling === \"disabled\",\n }}\n >\n <ic-loading-indicator\n class={{\n \"compact-step-progress-indicator\": true,\n \"not-required\":\n this.type === \"disabled\" ||\n this.compactStepStyling === \"disabled\",\n }}\n aria-hidden=\"true\"\n size=\"small\"\n inner-label={this.stepNum}\n progress={this.progress}\n ></ic-loading-indicator>\n <div class=\"heading-area\">\n <ic-typography variant=\"h4\" class=\"heading\">\n {this.heading}\n </ic-typography>\n <div class=\"info-line\">\n <ic-typography variant=\"caption\" class=\"step-num\">\n {`${this.stepNum} of ${this.lastStepNum}`}\n <span class=\"visually-hidden\"> steps</span>\n </ic-typography>\n {(this.subheading ||\n this.type === \"completed\" ||\n this.type === \"disabled\" ||\n (this.variant === \"compact\" &&\n !!this.compactStepStyling &&\n this.compactStepStyling !== \"active\") ||\n !!this.status) && (\n <div class=\"step-status\">\n {statusIcon !== undefined && statusIcon}\n {(this.subheading || stepType) && (\n <ic-typography variant=\"caption\">\n {this.subheading !== null && isPropDefined(this.subheading)\n ? this.subheading\n : this.type === \"disabled\" ||\n (this.variant === \"compact\" &&\n this.compactStepStyling === \"disabled\") ||\n this.type === \"completed\" ||\n (this.variant === \"compact\" &&\n this.compactStepStyling === \"completed\")\n ? stepType\n : this.status && stepStatus}\n </ic-typography>\n )}\n </div>\n )}\n </div>\n {this.lastStep ? (\n <ic-typography variant=\"subtitle-small\" class=\"next-step\">\n Last step\n </ic-typography>\n ) : (\n isPropDefined(this.nextStepHeading) && (\n <ic-typography variant=\"subtitle-small\" class=\"next-step\">\n Next<span class=\"visually-hidden\"> step is</span>:{\" \"}\n {this.nextStepHeading}\n </ic-typography>\n )\n )}\n </div>\n </div>\n );\n\n // ICON FOR DEFAULT STEP\n let icon;\n if (this.type !== \"completed\") {\n icon = (\n <ic-typography variant=\"subtitle-small\">\n <span class=\"step-icon-inner\" aria-hidden=\"true\">\n {this.stepNum}\n </span>\n </ic-typography>\n );\n } else {\n icon = (\n <div class=\"step-icon-inner\" aria-hidden=\"true\">\n <span class=\"check-icon\" innerHTML={checkIcon}></span>\n </div>\n );\n }\n\n // STEP CONNECT FOR DEFAULT STEP\n const partialBar = this.type === \"current\" && (\n <div class=\"step-connect-inner\"></div>\n );\n\n const finalStep = !this.lastStep && (\n <div\n class={{\n [\"step-connect\"]: true,\n [\"aligned-full-width\"]: !!(\n this.el.parentElement?.classList.contains(\"ic-stepper-default\") &&\n !this.el.parentElement.classList.contains(\"ic-stepper-aligned-left\")\n ),\n }}\n >\n {partialBar}\n </div>\n );\n\n // DEFAULT STEP COMPONENT\n const defaultStep = (\n <div\n class={{\n [\"step\"]: true,\n [`${this.type}`]: true,\n }}\n >\n <div class=\"step-top\">\n <div class=\"step-icon\">{icon}</div>\n {finalStep}\n </div>\n {(this.heading || this.subheading || this.status) && (\n <div class=\"heading-area\">\n {this.heading && (\n <ic-typography variant=\"subtitle-large\" class=\"heading\">\n {this.heading}\n </ic-typography>\n )}\n {this.heading && (this.subheading || this.status) && (\n <ic-typography variant=\"caption\" class=\"subheading\">\n {this.subheading !== null && isPropDefined(this.subheading)\n ? this.subheading\n : stepStatus}\n </ic-typography>\n )}\n </div>\n )}\n </div>\n );\n\n return (\n <Host\n role=\"listitem\"\n aria-label={`Step ${this.stepNum}${ariaLabel}`}\n aria-current={(this.current || this.type === \"current\") && \"step\"}\n class={{\n [\"aligned-full-width\"]: !!(\n this.el.parentElement?.classList.contains(\"ic-stepper-default\") &&\n !this.el.parentElement.classList.contains(\"ic-stepper-aligned-left\")\n ),\n [`ic-step-${this.variant}`]: true,\n [`ic-theme-${this.theme}`]: this.theme !== \"inherit\",\n }}\n >\n {this.variant === \"compact\" ? compactStep : defaultStep}\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,5 +1,5 @@
1
1
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
- import { X as pxToRem, c as checkResizeObserver } from './helpers.js';
2
+ import { p as pxToRem, c as checkResizeObserver } from './helpers.js';
3
3
 
4
4
  const icStepperCss = ":host{display:flex;width:100%}.step-item-list{display:flex;margin:0;padding:0}:host(.ic-stepper-default:not(.ic-stepper-aligned-left)) .step-item-list{flex:auto}:host(.ic-stepper-compact) ul ::slotted(ic-step){display:none}:host(.ic-stepper-compact) ul ::slotted(ic-step.show){display:flex}:host(.ic-stepper-compact) ul ::slotted(ic-step.hide){display:none;opacity:0;visibility:hidden}";
5
5
  const IcStepperStyle0 = icStepperCss;
@@ -248,11 +248,11 @@ const Stepper = /*@__PURE__*/ proxyCustomElement(class Stepper extends HTMLEleme
248
248
  checkResizeObserver(this.runResizeObserver);
249
249
  }
250
250
  render() {
251
- return (h(Host, { key: '6184a1c30e7030f1e364eda2e56f3ead3c8c5e8f', class: {
251
+ return (h(Host, { key: 'a4b87028ee91e542fd7d2b66689e8fabe33a9358', class: {
252
252
  [`ic-stepper-${this.variant}`]: true,
253
253
  ["ic-stepper-aligned-left"]: this.variant === "default" && this.aligned === "left",
254
254
  [`ic-theme-${this.theme}`]: this.theme !== "inherit",
255
- } }, h("ul", { key: 'b0cb92330e78579947ec33066858ee53ae2c1adb', class: "step-item-list" }, h("slot", { key: 'd797bf78df3340efc566de5e1f62f3ecf8245d49' }))));
255
+ } }, h("ul", { key: '65236609f6b2109bba5bbb88d084f9fd4e88d48a', class: "step-item-list" }, h("slot", { key: '2b542740488d922dca26cabda564db76de1ffd82' }))));
256
256
  }
257
257
  get el() { return this; }
258
258
  static get watchers() { return {
@@ -1,5 +1,5 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
- import { r as removeDisabledFalse, q as removeFormResetListener, p as addFormResetListener, o as onComponentRequiredPropUndefined, s as renderHiddenInput, u as getInputDescribedByText } from './helpers.js';
2
+ import { r as removeDisabledFalse, s as removeFormResetListener, q as addFormResetListener, o as onComponentRequiredPropUndefined, t as renderHiddenInput, v as getInputDescribedByText } from './helpers.js';
3
3
  import { d as defineCustomElement$3 } from './ic-input-label2.js';
4
4
  import { d as defineCustomElement$2 } from './ic-typography2.js';
5
5
 
@@ -98,17 +98,17 @@ const Switch = /*@__PURE__*/ proxyCustomElement(class Switch extends HTMLElement
98
98
  render() {
99
99
  const { label, checkedState, size, disabled, name, value, hideLabel, helperText, inputId, theme, } = this;
100
100
  const isSmall = size === "small";
101
- renderHiddenInput(true, this.el, name, checkedState ? value : "", disabled);
102
- return (h(Host, { key: '4654ef1f6473fdea79fd053879fa7bbf1699418d', class: {
101
+ renderHiddenInput(this.el, checkedState ? value : "", name, disabled);
102
+ return (h(Host, { key: '78082265a9f3ee1e14ca59acd5765a8b282cfc5e', class: {
103
103
  [`ic-theme-${theme}`]: theme !== "inherit",
104
- } }, h("label", { key: 'c6dca6f468eeb7c9e8151af1168fd8429c82d72b', class: {
104
+ } }, h("label", { key: 'e3e9c1f766c70c39aa23b56b711d908d9f9f1ac9', class: {
105
105
  "ic-switch-container": true,
106
106
  "ic-switch-disabled": !!disabled,
107
107
  "ic-switch-small": isSmall,
108
- }, htmlFor: inputId }, !hideLabel && (h("ic-input-label", { key: '5622227e775f787aac275619841e65c34209102a', for: inputId, label: label, helperText: helperText, readonly: true, disabled: disabled, class: {
108
+ }, htmlFor: inputId }, !hideLabel && (h("ic-input-label", { key: '2f22e10e5bc446aa74144819e4545bb8b83d68f4', for: inputId, label: label, helperText: helperText, readonly: true, disabled: disabled, class: {
109
109
  "ic-switch-label": true,
110
110
  "ic-switch-label-small": isSmall,
111
- } })), !hideLabel && h("span", { key: '74ec90ef32d23a02c7c6ceb7571e19d4c81091c8', class: "ic-switch-line-break" }), h("input", { key: 'f518a9a4db7eeb7ceafe5bb44c632ba6d3a9f64f', checked: checkedState, disabled: disabled, "aria-label": label, "aria-checked": checkedState ? "true" : "false", "aria-describedby": getInputDescribedByText(inputId, helperText !== "", false), role: "switch", class: "ic-switch-input", type: "checkbox", name: "toggle", id: inputId, onFocus: this.onFocus, onBlur: this.onBlur, onChange: this.handleChange }), h("span", { key: '72c49eeeb4bf26416dba25a612757a172a896bf0', class: "ic-switch-toggle" }, h("svg", { key: '2b31b154fd70258f3386013e287d0e10e4e4e56c', class: "ic-switch-icon", "aria-hidden": "true", focusable: "false", viewBox: "0 0 10 10", xmlns: "http://www.w3.org/2000/svg" }, h("line", { key: '61f089501da929a5bec439c9b6c7bf3cd1233b6f', class: "ic-switch-icon-line", x1: "9", y1: isSmall ? "2" : "1", x2: "9", y2: isSmall ? "8" : "9" })), h("svg", { key: '1ed62e82659c4c1a0a6935eb3805aa65a3117353', class: "ic-switch-icon", "aria-hidden": "true", focusable: "false", viewBox: "0 0 10 10", xmlns: "http://www.w3.org/2000/svg" }, h("circle", { key: '54012f70a4ed7c1fba7a0679cab8bdc8c0179b80', class: "ic-switch-icon-circle", fill: "none", cx: "5", cy: "5", r: isSmall ? "3.335" : "4.445" }))), h("slot", { key: '89de0ba1f401d01ae0cf6cb9be70f802686577fd', name: "right-adornment" }))));
111
+ } })), !hideLabel && h("span", { key: 'a191a1668fea25e3a4200730fc14ba544ca92688', class: "ic-switch-line-break" }), h("input", { key: 'a6f9af971c7552b2a445bbb74ade01c86081d862', checked: checkedState, disabled: disabled, "aria-label": label, "aria-checked": checkedState ? "true" : "false", "aria-describedby": getInputDescribedByText(inputId, helperText !== "", false), role: "switch", class: "ic-switch-input", type: "checkbox", name: "toggle", id: inputId, onFocus: this.onFocus, onBlur: this.onBlur, onChange: this.handleChange }), h("span", { key: 'd2f404681f8744c8faf160b529eae4190f0b4325', class: "ic-switch-toggle" }, h("svg", { key: '28654e2c158d3271aa200e5a4c74bc61e9982ac7', class: "ic-switch-icon", "aria-hidden": "true", focusable: "false", viewBox: "0 0 10 10", xmlns: "http://www.w3.org/2000/svg" }, h("line", { key: '1314ee2e478b690b6a0b00e7c6220bae1e2237df', class: "ic-switch-icon-line", x1: "9", y1: isSmall ? "2" : "1", x2: "9", y2: isSmall ? "8" : "9" })), h("svg", { key: 'aaf0e443f71380a1bbbb3a5ece540171e28de0a5', class: "ic-switch-icon", "aria-hidden": "true", focusable: "false", viewBox: "0 0 10 10", xmlns: "http://www.w3.org/2000/svg" }, h("circle", { key: '6d7a6785953666bb0a9336794e5b1fb33fded30f', class: "ic-switch-icon-circle", fill: "none", cx: "5", cy: "5", r: isSmall ? "3.335" : "4.445" }))), h("slot", { key: 'd96bdf90a4598454c255d59fe202d60867533032', name: "right-adornment" }))));
112
112
  }
113
113
  static get delegatesFocus() { return true; }
114
114
  get el() { return this; }
@@ -1 +1 @@
1
- {"file":"ic-switch.js","mappings":"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","names":[],"sources":["src/components/ic-switch/ic-switch.css?tag=ic-switch&encapsulation=shadow","src/components/ic-switch/ic-switch.tsx"],"sourcesContent":["/*! 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:host {\n display: inline-block;\n\n --ic-input-label-text-color: var(--ic-switch-label);\n --ic-input-label-helper-text-color: var(--ic-switch-help-text);\n}\n\ninput {\n overflow: hidden;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n\n.ic-switch-container {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--ic-space-xxs);\n cursor: pointer;\n}\n\n.ic-switch-label {\n margin-left: var(--ic-space-xxs);\n margin-bottom: var(--ic-space-sm);\n}\n\n.ic-switch-label-small {\n margin-bottom: 0.625rem;\n}\n\n.ic-switch-toggle {\n display: flex;\n align-items: center;\n justify-content: space-around;\n width: 4rem;\n height: var(--ic-space-xl);\n position: relative;\n border-radius: 100vw;\n background-color: var(--ic-switch-unchecked-bg);\n border: var(--ic-border-width) solid var(--ic-switch-unchecked);\n box-sizing: border-box;\n transition: var(--ic-transition-duration-fast);\n}\n\n.ic-switch-line-break {\n flex: 1 0 100%;\n}\n\n.ic-switch-toggle::before {\n content: \"\";\n width: 1.333rem;\n height: 1.333rem;\n border-radius: 50%;\n position: absolute;\n z-index: 2;\n top: 50%;\n left: 0.333rem;\n transform: translate(0, -50%);\n background-color: var(--ic-switch-unchecked);\n transition: var(--ic-transition-duration-slow);\n}\n\n.ic-switch-icon {\n display: inline-block;\n vertical-align: middle;\n width: 0.625rem;\n height: 0.625rem;\n}\n\n.ic-switch-icon-circle,\n.ic-switch-icon-line {\n stroke-width: 1;\n}\n\n.ic-switch-icon-circle {\n stroke: var(--ic-switch-indicator-off);\n}\n\n.ic-switch-icon-line {\n stroke: var(--ic-switch-indicator-on);\n}\n\n@media (prefers-reduced-motion: reduce) {\n .ic-switch-toggle::before {\n transition-duration: 0ms;\n }\n}\n\n.ic-switch-input:checked + .ic-switch-toggle {\n background-color: var(--ic-switch-checked-bg);\n border: none;\n}\n\n.ic-switch-input:checked + .ic-switch-toggle::before {\n transform: translate(var(--ic-space-xl), -50%);\n background-color: var(--ic-switch-checked);\n}\n\n.ic-switch-input:not([disabled]) + .ic-switch-toggle:hover::before {\n box-shadow: 0 0 0 0.75rem var(--ic-switch-unchecked-bg-hover);\n}\n\n.ic-switch-input:not([disabled]) + .ic-switch-toggle:active::before {\n box-shadow: 0 0 0 0.75rem var(--ic-switch-unchecked-bg-pressed);\n}\n\n.ic-switch-input:not([disabled]):checked + .ic-switch-toggle:hover::before {\n box-shadow: 0 0 0 0.75rem var(--ic-switch-checked-bg-hover);\n}\n\n.ic-switch-input:not([disabled]):checked + .ic-switch-toggle:active::before {\n box-shadow: 0 0 0 0.75rem var(--ic-switch-checked-bg-pressed);\n}\n\n.ic-switch-input:focus:not([disabled]) + .ic-switch-toggle,\n.ic-switch-input:focus-visible:not([disabled]) + .ic-switch-toggle {\n box-shadow: var(--ic-border-focus);\n}\n\n.ic-switch-disabled {\n cursor: default;\n}\n\n.ic-switch-disabled .ic-switch-icon-circle {\n stroke: var(--ic-switch-indicator-off-disabled);\n}\n\n.ic-switch-disabled .ic-switch-icon-line {\n stroke: var(--ic-switch-indicator-on-disabled);\n}\n\n.ic-switch-input:disabled + .ic-switch-toggle {\n background-color: var(--ic-switch-unchecked-bg-disabled);\n border: var(--ic-space-1px) dashed var(--ic-switch-unchecked-outline-disabled);\n}\n\n.ic-switch-input:disabled + .ic-switch-toggle::before {\n background-color: var(--ic-switch-unchecked-disabled);\n}\n\n.ic-switch-input:disabled:checked + .ic-switch-toggle {\n background-color: var(--ic-switch-checked-bg-disabled);\n border: var(--ic-border-width) dashed\n var(--ic-switch-checked-outline-disabled);\n}\n\n.ic-switch-input:disabled:checked + .ic-switch-toggle::before {\n background-color: var(--ic-switch-checked);\n}\n\n.ic-switch-small {\n gap: var(--ic-space-xxxs);\n}\n\n.ic-switch-small .ic-switch-toggle {\n width: var(--ic-space-xxl);\n height: var(--ic-space-lg);\n}\n\n.ic-switch-small .ic-switch-toggle::before {\n width: var(--ic-space-md);\n height: var(--ic-space-md);\n left: var(--ic-space-xxs);\n}\n\n.ic-switch-small .ic-switch-input:checked + .ic-switch-toggle::before {\n transform: translate(var(--ic-space-lg), -50%);\n}\n\n::slotted(*) {\n margin-left: var(--ic-space-sm);\n}\n\n::slotted(svg) {\n fill: var(--ic-switch-icon);\n}\n\n@media (forced-colors: active) {\n .ic-switch-toggle::before,\n .ic-switch-input:checked + .ic-switch-toggle {\n border: var(--ic-border-hc);\n }\n\n .ic-switch-input:focus + .ic-switch-toggle {\n border-color: highlight;\n outline: var(--ic-space-xxxs) solid highlight;\n }\n\n .ic-switch-input:checked + .ic-switch-toggle::before {\n transform: translate(calc(var(--ic-space-xl) - 0.125rem), -50%);\n }\n\n .ic-switch-input:disabled + .ic-switch-toggle,\n .ic-switch-input:disabled:checked + .ic-switch-toggle,\n .ic-switch-input:disabled + .ic-switch-toggle::before {\n border-color: GrayText;\n }\n\n .ic-switch-disabled .ic-switch-icon-circle,\n .ic-switch-disabled .ic-switch-icon-line {\n stroke: GrayText;\n }\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n State,\n Element,\n Event,\n EventEmitter,\n Method,\n Watch,\n} from \"@stencil/core\";\nimport {\n getInputDescribedByText,\n onComponentRequiredPropUndefined,\n renderHiddenInput,\n addFormResetListener,\n removeFormResetListener,\n removeDisabledFalse,\n} from \"../../utils/helpers\";\nimport { IcSwitchChangeEventDetail } from \"./ic-switch.types\";\nimport { IcSizesNoLarge, IcThemeMode } from \"../../utils/types\";\n\nlet inputIds = 0;\n\n/**\n * @slot right-adornment - Content is placed to the right of switch.\n */\n@Component({\n tag: \"ic-switch\",\n styleUrl: \"ic-switch.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class Switch {\n private inputId = `ic-switch-input-${inputIds++}`;\n\n @Element() el: HTMLIcSwitchElement;\n\n @State() checkedState: boolean = false;\n @State() initiallyChecked = this.checked;\n\n /**\n * If `true`, the switch will display as checked.\n */\n @Prop() checked?: boolean = false;\n\n @Watch(\"checked\")\n checkedChangeHandler(): void {\n this.checkedState = !!this.checked;\n }\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled?: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * The helper text that will be displayed for additional field guidance.\n */\n @Prop() helperText?: string = \"\";\n\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n @Prop() hideLabel?: boolean = false;\n\n /**\n * The aria-label applied to the switch when no visual 'name' is provided.\n */\n @Prop() label!: string;\n\n /**\n * The name of the control, which is submitted with the form data.\n */\n @Prop() name?: string = this.inputId;\n\n /**\n * The size of the switch component.\n */\n @Prop() size?: IcSizesNoLarge = \"medium\";\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * The value of the toggle does not mean if it's checked or not, use the `checked`\n * property for that.\n *\n * The value of a toggle is analogous to the value of a `<input type=\"checkbox\">`,\n * it's only used when the toggle participates in a native `<form>`.\n */\n @Prop() value?: string | null = \"on\";\n\n /**\n * Emitted when the toggle loses focus.\n */\n @Event() icBlur!: EventEmitter<void>;\n\n /**\n * Emitted when the value property has changed.\n */\n @Event() icChange!: EventEmitter<IcSwitchChangeEventDetail>;\n\n /**\n * Emitted when the toggle has focus.\n */\n @Event() icFocus!: EventEmitter<void>;\n\n disconnectedCallback(): void {\n removeFormResetListener(this.el, this.handleFormReset);\n }\n\n componentWillLoad(): void {\n this.checkedState = this.checked!;\n addFormResetListener(this.el, this.handleFormReset);\n removeDisabledFalse(this.disabled, this.el);\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Switch\"\n );\n }\n\n /**\n * Sets focus on the switch.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.el.shadowRoot?.querySelector(\"input\")?.focus();\n }\n\n private handleChange = () => {\n this.checkedState = !this.checkedState;\n this.icChange.emit({\n checked: this.checkedState,\n value: this.value!,\n });\n };\n\n private onFocus = () => {\n this.icFocus.emit();\n };\n\n private onBlur = () => {\n this.icBlur.emit();\n };\n\n private handleFormReset = (): void => {\n this.checkedState = this.initiallyChecked!;\n };\n\n render() {\n const {\n label,\n checkedState,\n size,\n disabled,\n name,\n value,\n hideLabel,\n helperText,\n inputId,\n theme,\n } = this;\n\n const isSmall = size === \"small\";\n\n renderHiddenInput(\n true,\n this.el,\n name!,\n checkedState ? value : \"\",\n disabled\n );\n\n return (\n <Host\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n <label\n class={{\n \"ic-switch-container\": true,\n \"ic-switch-disabled\": !!disabled,\n \"ic-switch-small\": isSmall,\n }}\n htmlFor={inputId}\n >\n {!hideLabel && (\n <ic-input-label\n for={inputId}\n label={label}\n helperText={helperText}\n readonly={true}\n disabled={disabled}\n class={{\n \"ic-switch-label\": true,\n \"ic-switch-label-small\": isSmall,\n }}\n ></ic-input-label>\n )}\n {!hideLabel && <span class=\"ic-switch-line-break\"></span>}\n <input\n checked={checkedState}\n disabled={disabled}\n aria-label={label}\n aria-checked={checkedState ? \"true\" : \"false\"}\n aria-describedby={getInputDescribedByText(\n inputId,\n helperText !== \"\",\n false\n )}\n role=\"switch\"\n class=\"ic-switch-input\"\n type=\"checkbox\"\n name=\"toggle\"\n id={inputId}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n onChange={this.handleChange}\n />\n <span class=\"ic-switch-toggle\">\n <svg\n class=\"ic-switch-icon\"\n aria-hidden=\"true\"\n focusable=\"false\"\n viewBox=\"0 0 10 10\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <line\n class=\"ic-switch-icon-line\"\n x1=\"9\"\n y1={isSmall ? \"2\" : \"1\"}\n x2=\"9\"\n y2={isSmall ? \"8\" : \"9\"}\n />\n </svg>\n <svg\n class=\"ic-switch-icon\"\n aria-hidden=\"true\"\n focusable=\"false\"\n viewBox=\"0 0 10 10\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle\n class=\"ic-switch-icon-circle\"\n fill=\"none\"\n cx=\"5\"\n cy=\"5\"\n r={isSmall ? \"3.335\" : \"4.445\"}\n />\n </svg>\n </span>\n <slot name=\"right-adornment\"></slot>\n </label>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-switch.js","mappings":"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","names":[],"sources":["src/components/ic-switch/ic-switch.css?tag=ic-switch&encapsulation=shadow","src/components/ic-switch/ic-switch.tsx"],"sourcesContent":["/*! 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:host {\n display: inline-block;\n\n --ic-input-label-text-color: var(--ic-switch-label);\n --ic-input-label-helper-text-color: var(--ic-switch-help-text);\n}\n\ninput {\n overflow: hidden;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n\n.ic-switch-container {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--ic-space-xxs);\n cursor: pointer;\n}\n\n.ic-switch-label {\n margin-left: var(--ic-space-xxs);\n margin-bottom: var(--ic-space-sm);\n}\n\n.ic-switch-label-small {\n margin-bottom: 0.625rem;\n}\n\n.ic-switch-toggle {\n display: flex;\n align-items: center;\n justify-content: space-around;\n width: 4rem;\n height: var(--ic-space-xl);\n position: relative;\n border-radius: 100vw;\n background-color: var(--ic-switch-unchecked-bg);\n border: var(--ic-border-width) solid var(--ic-switch-unchecked);\n box-sizing: border-box;\n transition: var(--ic-transition-duration-fast);\n}\n\n.ic-switch-line-break {\n flex: 1 0 100%;\n}\n\n.ic-switch-toggle::before {\n content: \"\";\n width: 1.333rem;\n height: 1.333rem;\n border-radius: 50%;\n position: absolute;\n z-index: 2;\n top: 50%;\n left: 0.333rem;\n transform: translate(0, -50%);\n background-color: var(--ic-switch-unchecked);\n transition: var(--ic-transition-duration-slow);\n}\n\n.ic-switch-icon {\n display: inline-block;\n vertical-align: middle;\n width: 0.625rem;\n height: 0.625rem;\n}\n\n.ic-switch-icon-circle,\n.ic-switch-icon-line {\n stroke-width: 1;\n}\n\n.ic-switch-icon-circle {\n stroke: var(--ic-switch-indicator-off);\n}\n\n.ic-switch-icon-line {\n stroke: var(--ic-switch-indicator-on);\n}\n\n@media (prefers-reduced-motion: reduce) {\n .ic-switch-toggle::before {\n transition-duration: 0ms;\n }\n}\n\n.ic-switch-input:checked + .ic-switch-toggle {\n background-color: var(--ic-switch-checked-bg);\n border: none;\n}\n\n.ic-switch-input:checked + .ic-switch-toggle::before {\n transform: translate(var(--ic-space-xl), -50%);\n background-color: var(--ic-switch-checked);\n}\n\n.ic-switch-input:not([disabled]) + .ic-switch-toggle:hover::before {\n box-shadow: 0 0 0 0.75rem var(--ic-switch-unchecked-bg-hover);\n}\n\n.ic-switch-input:not([disabled]) + .ic-switch-toggle:active::before {\n box-shadow: 0 0 0 0.75rem var(--ic-switch-unchecked-bg-pressed);\n}\n\n.ic-switch-input:not([disabled]):checked + .ic-switch-toggle:hover::before {\n box-shadow: 0 0 0 0.75rem var(--ic-switch-checked-bg-hover);\n}\n\n.ic-switch-input:not([disabled]):checked + .ic-switch-toggle:active::before {\n box-shadow: 0 0 0 0.75rem var(--ic-switch-checked-bg-pressed);\n}\n\n.ic-switch-input:focus:not([disabled]) + .ic-switch-toggle,\n.ic-switch-input:focus-visible:not([disabled]) + .ic-switch-toggle {\n box-shadow: var(--ic-border-focus);\n}\n\n.ic-switch-disabled {\n cursor: default;\n}\n\n.ic-switch-disabled .ic-switch-icon-circle {\n stroke: var(--ic-switch-indicator-off-disabled);\n}\n\n.ic-switch-disabled .ic-switch-icon-line {\n stroke: var(--ic-switch-indicator-on-disabled);\n}\n\n.ic-switch-input:disabled + .ic-switch-toggle {\n background-color: var(--ic-switch-unchecked-bg-disabled);\n border: var(--ic-space-1px) dashed var(--ic-switch-unchecked-outline-disabled);\n}\n\n.ic-switch-input:disabled + .ic-switch-toggle::before {\n background-color: var(--ic-switch-unchecked-disabled);\n}\n\n.ic-switch-input:disabled:checked + .ic-switch-toggle {\n background-color: var(--ic-switch-checked-bg-disabled);\n border: var(--ic-border-width) dashed\n var(--ic-switch-checked-outline-disabled);\n}\n\n.ic-switch-input:disabled:checked + .ic-switch-toggle::before {\n background-color: var(--ic-switch-checked);\n}\n\n.ic-switch-small {\n gap: var(--ic-space-xxxs);\n}\n\n.ic-switch-small .ic-switch-toggle {\n width: var(--ic-space-xxl);\n height: var(--ic-space-lg);\n}\n\n.ic-switch-small .ic-switch-toggle::before {\n width: var(--ic-space-md);\n height: var(--ic-space-md);\n left: var(--ic-space-xxs);\n}\n\n.ic-switch-small .ic-switch-input:checked + .ic-switch-toggle::before {\n transform: translate(var(--ic-space-lg), -50%);\n}\n\n::slotted(*) {\n margin-left: var(--ic-space-sm);\n}\n\n::slotted(svg) {\n fill: var(--ic-switch-icon);\n}\n\n@media (forced-colors: active) {\n .ic-switch-toggle::before,\n .ic-switch-input:checked + .ic-switch-toggle {\n border: var(--ic-border-hc);\n }\n\n .ic-switch-input:focus + .ic-switch-toggle {\n border-color: highlight;\n outline: var(--ic-space-xxxs) solid highlight;\n }\n\n .ic-switch-input:checked + .ic-switch-toggle::before {\n transform: translate(calc(var(--ic-space-xl) - 0.125rem), -50%);\n }\n\n .ic-switch-input:disabled + .ic-switch-toggle,\n .ic-switch-input:disabled:checked + .ic-switch-toggle,\n .ic-switch-input:disabled + .ic-switch-toggle::before {\n border-color: GrayText;\n }\n\n .ic-switch-disabled .ic-switch-icon-circle,\n .ic-switch-disabled .ic-switch-icon-line {\n stroke: GrayText;\n }\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n State,\n Element,\n Event,\n EventEmitter,\n Method,\n Watch,\n} from \"@stencil/core\";\nimport {\n getInputDescribedByText,\n onComponentRequiredPropUndefined,\n renderHiddenInput,\n addFormResetListener,\n removeFormResetListener,\n removeDisabledFalse,\n} from \"../../utils/helpers\";\nimport { IcSwitchChangeEventDetail } from \"./ic-switch.types\";\nimport { IcSizesNoLarge, IcThemeMode } from \"../../utils/types\";\n\nlet inputIds = 0;\n\n/**\n * @slot right-adornment - Content is placed to the right of switch.\n */\n@Component({\n tag: \"ic-switch\",\n styleUrl: \"ic-switch.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class Switch {\n private inputId = `ic-switch-input-${inputIds++}`;\n\n @Element() el: HTMLIcSwitchElement;\n\n @State() checkedState: boolean = false;\n @State() initiallyChecked = this.checked;\n\n /**\n * If `true`, the switch will display as checked.\n */\n @Prop() checked?: boolean = false;\n\n @Watch(\"checked\")\n checkedChangeHandler(): void {\n this.checkedState = !!this.checked;\n }\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled?: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * The helper text that will be displayed for additional field guidance.\n */\n @Prop() helperText?: string = \"\";\n\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n @Prop() hideLabel?: boolean = false;\n\n /**\n * The aria-label applied to the switch when no visual 'name' is provided.\n */\n @Prop() label!: string;\n\n /**\n * The name of the control, which is submitted with the form data.\n */\n @Prop() name?: string = this.inputId;\n\n /**\n * The size of the switch component.\n */\n @Prop() size?: IcSizesNoLarge = \"medium\";\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * The value of the toggle does not mean if it's checked or not, use the `checked`\n * property for that.\n *\n * The value of a toggle is analogous to the value of a `<input type=\"checkbox\">`,\n * it's only used when the toggle participates in a native `<form>`.\n */\n @Prop() value?: string | null = \"on\";\n\n /**\n * Emitted when the toggle loses focus.\n */\n @Event() icBlur!: EventEmitter<void>;\n\n /**\n * Emitted when the value property has changed.\n */\n @Event() icChange!: EventEmitter<IcSwitchChangeEventDetail>;\n\n /**\n * Emitted when the toggle has focus.\n */\n @Event() icFocus!: EventEmitter<void>;\n\n disconnectedCallback(): void {\n removeFormResetListener(this.el, this.handleFormReset);\n }\n\n componentWillLoad(): void {\n this.checkedState = this.checked!;\n addFormResetListener(this.el, this.handleFormReset);\n removeDisabledFalse(this.disabled, this.el);\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Switch\"\n );\n }\n\n /**\n * Sets focus on the switch.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.el.shadowRoot?.querySelector(\"input\")?.focus();\n }\n\n private handleChange = () => {\n this.checkedState = !this.checkedState;\n this.icChange.emit({\n checked: this.checkedState,\n value: this.value!,\n });\n };\n\n private onFocus = () => {\n this.icFocus.emit();\n };\n\n private onBlur = () => {\n this.icBlur.emit();\n };\n\n private handleFormReset = (): void => {\n this.checkedState = this.initiallyChecked!;\n };\n\n render() {\n const {\n label,\n checkedState,\n size,\n disabled,\n name,\n value,\n hideLabel,\n helperText,\n inputId,\n theme,\n } = this;\n\n const isSmall = size === \"small\";\n\n renderHiddenInput(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={true}\n disabled={disabled}\n class={{\n \"ic-switch-label\": true,\n \"ic-switch-label-small\": isSmall,\n }}\n ></ic-input-label>\n )}\n {!hideLabel && <span class=\"ic-switch-line-break\"></span>}\n <input\n checked={checkedState}\n disabled={disabled}\n aria-label={label}\n aria-checked={checkedState ? \"true\" : \"false\"}\n aria-describedby={getInputDescribedByText(\n inputId,\n helperText !== \"\",\n false\n )}\n role=\"switch\"\n class=\"ic-switch-input\"\n type=\"checkbox\"\n name=\"toggle\"\n id={inputId}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n onChange={this.handleChange}\n />\n <span class=\"ic-switch-toggle\">\n <svg\n class=\"ic-switch-icon\"\n aria-hidden=\"true\"\n focusable=\"false\"\n viewBox=\"0 0 10 10\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <line\n class=\"ic-switch-icon-line\"\n x1=\"9\"\n y1={isSmall ? \"2\" : \"1\"}\n x2=\"9\"\n y2={isSmall ? \"8\" : \"9\"}\n />\n </svg>\n <svg\n class=\"ic-switch-icon\"\n aria-hidden=\"true\"\n focusable=\"false\"\n viewBox=\"0 0 10 10\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle\n class=\"ic-switch-icon-circle\"\n fill=\"none\"\n cx=\"5\"\n cy=\"5\"\n r={isSmall ? \"3.335\" : \"4.445\"}\n />\n </svg>\n </span>\n <slot name=\"right-adornment\"></slot>\n </label>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -224,7 +224,7 @@ const TabContext = /*@__PURE__*/ proxyCustomElement(class TabContext extends HTM
224
224
  }
225
225
  }
226
226
  render() {
227
- return h("slot", { key: '83e9c882369eebc5fd170b2ceabf423047cd14d6' });
227
+ return h("slot", { key: '62b7b3babe269d227c3225faedd4505935ccecb8' });
228
228
  }
229
229
  get el() { return this; }
230
230
  static get watchers() { return {
@@ -28,11 +28,11 @@ const TabGroup = /*@__PURE__*/ proxyCustomElement(class TabGroup extends HTMLEle
28
28
  }
29
29
  render() {
30
30
  const { inline, theme, label, monochrome } = this;
31
- return (h(Host, { key: 'f42b97ec6fa8e200fbb5b5d2114f3f98d4f6ad35', role: "tablist", "aria-label": label, class: {
31
+ return (h(Host, { key: 'd4354a73edcfe5ed044e2acf6d04256eddcb7f40', role: "tablist", "aria-label": label, class: {
32
32
  ["ic-tab-group-inline"]: !!inline,
33
33
  [`ic-theme-${theme}`]: theme !== "inherit",
34
34
  ["ic-tab-group-monochrome"]: !!monochrome,
35
- } }, h("ic-horizontal-scroll", { key: 'fdfe2de9cecf661c164dda34f523c73520f6bce6', theme: theme, "focus-trigger": "tabFocus", monochrome: monochrome }, h("div", { key: '6523acdad07d4b4a48dab269da3cca2bf3003899', class: "tabs-container" }, h("slot", { key: '032517ca94833114e39faf4ad5da3126197e780a' })))));
35
+ } }, h("ic-horizontal-scroll", { key: '42cf7391e17b38a3489e77bc3d882aa31902c14a', theme: theme, "focus-trigger": "tabFocus", monochrome: monochrome }, h("div", { key: '81270d7ad5567b23ab8098679705c3818b3bfd35', class: "tabs-container" }, h("slot", { key: 'ee7b2ece3edc06146170b759f2c08e22bca9fc7f' })))));
36
36
  }
37
37
  static get delegatesFocus() { return true; }
38
38
  static get style() { return IcTabGroupStyle0; }
@@ -26,10 +26,10 @@ const TabPanel = /*@__PURE__*/ proxyCustomElement(class TabPanel extends HTMLEle
26
26
  }
27
27
  render() {
28
28
  const { active, theme } = this;
29
- return (h(Host, { key: '629c66ac51b529d443ad613d61f6875958e9d1a2', class: {
29
+ return (h(Host, { key: '5da4dba2bf404436c8b49173f9056d56912e9049', class: {
30
30
  [`ic-theme-${theme}`]: theme !== "inherit",
31
31
  "ic-tab-panel-hidden": !active,
32
- }, role: "tabpanel", "aria-hidden": `${!active}` }, h("div", { key: '1f018abefa14feeaa6a1de08aa3c84c78788e8ea' }, h("slot", { key: '86343dd2934fa698c26dfe09b88a4b9004b62184' }))));
32
+ }, role: "tabpanel", "aria-hidden": `${!active}` }, h("div", { key: '9f7b4cbaa9a2c5a72307ca07097cdb50fd93adb2' }, h("slot", { key: 'f97121f2a2d3092c18bd15c82743ba2a988a1134' }))));
33
33
  }
34
34
  get el() { return this; }
35
35
  static get style() { return IcTabPanelStyle0; }
@@ -91,13 +91,13 @@ const Tab = /*@__PURE__*/ proxyCustomElement(class Tab extends HTMLElement {
91
91
  }
92
92
  render() {
93
93
  const { disabled, selected, theme, monochrome, handleClick, handleFocus, handleMouseDown, } = this;
94
- return (h(Host, { key: '954c5dd86688230d4ebb36c8a98b9c30c1524fc9', class: {
94
+ return (h(Host, { key: '52491eaab3f7b7c56d59a13b4c57970642e04465', class: {
95
95
  ["with-transition"]: !this.isInitialRender,
96
96
  ["ic-tab-selected"]: !!selected,
97
97
  ["ic-tab-disabled"]: !!disabled,
98
98
  [`ic-theme-${theme}`]: theme !== "inherit",
99
99
  ["ic-tab-monochrome"]: !!monochrome,
100
- }, role: "tab", "aria-selected": `${selected}`, onClick: handleClick, onFocus: handleFocus, onMouseDown: handleMouseDown, "aria-disabled": `${disabled}`, tabindex: selected ? 0 : -1 }, isSlotUsed(this.el, "icon") && h("slot", { key: '11506c4354b5dc44310df86479b02ed0638bbe32', name: "icon" }), h("ic-typography", { key: 'd466ad914e607cabb9ff47dc31b6428a081b08a7', class: "ic-tab-label", variant: "label" }, h("span", { key: '8cc33760084b7735ed7db8b222a2b0374c936f3f' }, h("slot", { key: '04bdfe11cd1eef76fad7f6e0afa7e059251ba3cc' }))), isSlotUsed(this.el, "badge") && h("slot", { key: 'a29692b7826b09874aba3ec5579dbca979cd791a', name: "badge" })));
100
+ }, role: "tab", "aria-selected": `${selected}`, onClick: handleClick, onFocus: handleFocus, onMouseDown: handleMouseDown, "aria-disabled": `${disabled}`, tabindex: selected ? 0 : -1 }, isSlotUsed(this.el, "icon") && h("slot", { key: '89b73a37ff1080ae55554ebed5afc5f3146bbfb0', name: "icon" }), h("ic-typography", { key: '61d61ac5b3739403ebc02a61509289e5f49edb31', class: "ic-tab-label", variant: "label" }, h("span", { key: 'a57666e5fa982b54d8d3f2fa4774edcf11d7300e' }, h("slot", { key: '30700a48cbb5226d548ce0944d83bfaf85b9de39' }))), isSlotUsed(this.el, "badge") && h("slot", { key: 'ee78c3cc07ddf5609ca26e1b6261c023b068571e', name: "badge" })));
101
101
  }
102
102
  get el() { return this; }
103
103
  static get watchers() { return {
@@ -1,5 +1,5 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, forceUpdate, h, Host } from '@stencil/core/internal/client';
2
- import { T as checkSlotInChildMutations, r as removeDisabledFalse, R as debounceEvent, q as removeFormResetListener, b as inheritAttributes, p as addFormResetListener, o as onComponentRequiredPropUndefined, Y as IGNORED_KEYBOARD_CHARACTERS, y as IcInformationStatus, u as getInputDescribedByText, s as renderHiddenInput, t as removeHiddenInput, i as isSlotUsed, W as isEmptyString, I as IC_INHERITED_ARIA } from './helpers.js';
2
+ import { U as checkSlotInChildMutations, r as removeDisabledFalse, T as debounceEvent, s as removeFormResetListener, b as inheritAttributes, q as addFormResetListener, o as onComponentRequiredPropUndefined, Y as IGNORED_KEYBOARD_CHARACTERS, z as IcInformationStatus, v as getInputDescribedByText, t as renderHiddenInput, u as removeHiddenInput, i as isSlotUsed, X as isEmptyString, I as IC_INHERITED_ARIA } from './helpers.js';
3
3
  import { d as defineCustomElement$6 } from './ic-input-component-container2.js';
4
4
  import { d as defineCustomElement$5 } from './ic-input-container2.js';
5
5
  import { d as defineCustomElement$4 } from './ic-input-label2.js';
@@ -22,6 +22,7 @@ const TextField = /*@__PURE__*/ proxyCustomElement(class TextField extends HTMLE
22
22
  this.icFocus = createEvent(this, "icFocus", 7);
23
23
  this.icInput = createEvent(this, "icInput", 7);
24
24
  this.icKeydown = createEvent(this, "icKeydown", 7);
25
+ this.icScroll = createEvent(this, "icScroll", 7);
25
26
  this.inheritedAttributes = {};
26
27
  this.hostMutationObserver = null;
27
28
  this.numChars = 0;
@@ -30,10 +31,6 @@ const TextField = /*@__PURE__*/ proxyCustomElement(class TextField extends HTMLE
30
31
  this.minCharactersUnattained = false;
31
32
  this.maxValueExceeded = false;
32
33
  this.minValueUnattained = false;
33
- /**
34
- * @internal Used to identify whether inputting any text triggers more predictions
35
- */
36
- this.ariaAutocomplete = undefined;
37
34
  /**
38
35
  * The automatic capitalisation of the text value as it is entered/edited by the user.
39
36
  * Available options: "off", "none", "on", "sentences", "words", "characters".
@@ -148,6 +145,10 @@ const TextField = /*@__PURE__*/ proxyCustomElement(class TextField extends HTMLE
148
145
  * 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.
149
146
  */
150
147
  this.theme = "inherit";
148
+ /**
149
+ * @internal If `true`, an ellipsis will be displayed at the end of the value if the value is longer than the container.
150
+ */
151
+ this.truncateValue = false;
151
152
  /**
152
153
  * The type of control to display. The default type is text.
153
154
  */
@@ -178,9 +179,9 @@ const TextField = /*@__PURE__*/ proxyCustomElement(class TextField extends HTMLE
178
179
  this.value = "";
179
180
  this.initialValue = this.value;
180
181
  this.checkChildHydration = () => {
181
- var _a;
182
- const el = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("ic-typography");
183
- if (this.hideLabel || (el && el.classList.contains("hydrated"))) {
182
+ var _a, _b;
183
+ if (this.hideLabel ||
184
+ ((_b = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("ic-typography")) === null || _b === void 0 ? void 0 : _b.classList.contains("hydrated"))) {
184
185
  this.setFocus();
185
186
  clearInterval(this.interval);
186
187
  }
@@ -196,7 +197,7 @@ const TextField = /*@__PURE__*/ proxyCustomElement(class TextField extends HTMLE
196
197
  this.getMaxCharactersReached = (value) => {
197
198
  this.numChars = this.getNumberOfCharacters(value);
198
199
  this.maxCharactersReached =
199
- this.maxCharacters > 0 ? this.numChars >= this.maxCharacters : false;
200
+ this.maxCharacters > 0 && this.numChars >= this.maxCharacters;
200
201
  if (this.maxCharactersWarning && !this.maxCharactersReached) {
201
202
  this.maxCharactersWarning = false;
202
203
  }
@@ -208,16 +209,19 @@ const TextField = /*@__PURE__*/ proxyCustomElement(class TextField extends HTMLE
208
209
  this.onBlur = (ev) => {
209
210
  const target = ev.target;
210
211
  target.removeEventListener("wheel", this.onWheel);
211
- const value = ev.target.value;
212
+ const { value } = target;
212
213
  this.numChars = value.length;
213
214
  this.minCharactersUnattained =
214
- this.minCharacters > 0 ? this.numChars < this.minCharacters : false;
215
- this.icBlur.emit({ value: value });
215
+ this.minCharacters > 0 && this.numChars < this.minCharacters;
216
+ this.icBlur.emit({ value });
216
217
  };
217
218
  this.onFocus = (ev) => {
218
219
  const target = ev.target;
219
220
  target.addEventListener("wheel", this.onWheel);
220
- this.icFocus.emit({ value: ev.target.value });
221
+ this.icFocus.emit({ value: target.value });
222
+ };
223
+ this.onTextAreaScroll = () => {
224
+ this.icScroll.emit();
221
225
  };
222
226
  this.onWheel = (ev) => {
223
227
  const target = ev.target;
@@ -330,7 +334,7 @@ const TextField = /*@__PURE__*/ proxyCustomElement(class TextField extends HTMLE
330
334
  (_a = this.inputEl) === null || _a === void 0 ? void 0 : _a.focus();
331
335
  }
332
336
  render() {
333
- const { inputId, name, label, required, size, placeholder, helperText, hideCharCount, rows, resize, disabled, value, min, max, numChars, readonly, maxCharacters, maxCharactersMessage, maxCharactersWarning, maxCharactersReached, maxMessage, minCharacters, minCharactersMessage, minCharactersUnattained, minMessage, minValueUnattained, maxValueExceeded, validationStatus, validationText, validationInline, validationInlineInternal, spellcheck, inputmode, fullWidth, truncateValue, hiddenInput, theme, } = this;
337
+ const { inputId, name, label, required, size, placeholder, helperText, hideCharCount, rows, resize, disabled, value, min, max, numChars, readonly, maxCharacters, maxCharactersMessage, maxCharactersWarning, maxCharactersReached, maxMessage, minCharacters, minCharactersMessage, minCharactersUnattained, minMessage, minValueUnattained, maxValueExceeded, validationStatus, validationText, validationInline, validationInlineInternal, spellcheck, inputmode, fullWidth, truncateValue, hiddenInput, theme, hideLabel, type, autocapitalize, ariaActiveDescendant, inheritedAttributes, ariaExpanded, ariaOwns, autocomplete, role, } = this;
334
338
  const el = this.el;
335
339
  const disabledMode = readonly || disabled;
336
340
  const currentStatus = maxValueExceeded ||
@@ -362,43 +366,42 @@ const TextField = /*@__PURE__*/ proxyCustomElement(class TextField extends HTMLE
362
366
  !validationInlineInternal;
363
367
  const multiline = rows > 1;
364
368
  const charsRemaining = maxNumChars - numChars;
365
- const hiddenRemainingCharCountDesc = `${charsRemaining} character${charsRemaining === 1 ? "" : "s"} remaining.`;
366
369
  const hiddenCharCountDescId = maxCharacters > 0 ? `${inputId}-char-count-desc` : "";
367
370
  const describedBy = `${hiddenCharCountDescId} ${getInputDescribedByText(inputId, helperText !== "", showStatusText)}`.trim();
368
371
  const disabledText = disabledMode && !readonly;
369
372
  const showLeftIcon = !!this.el.querySelector(`[slot="icon"]`) && !disabledText;
370
373
  const invalid = `${currentStatus === IcInformationStatus.Error}`;
371
374
  hiddenInput
372
- ? renderHiddenInput(true, this.el, name, value, disabledMode)
375
+ ? renderHiddenInput(this.el, value, name, disabledMode)
373
376
  : removeHiddenInput(this.el);
374
- return (h(Host, { key: 'a16e8b0c4d27b90cba5a803030c4932f3d249009', class: {
375
- "ic-text-field-full-width": !!fullWidth,
377
+ return (h(Host, { key: '392b43ac248502539bc00717694c10a24818551e', class: {
378
+ "ic-text-field-full-width": fullWidth,
379
+ "ic-text-field-disabled": disabledMode,
376
380
  [`ic-theme-${theme}`]: theme !== "inherit",
377
- "ic-text-field-disabled": !!disabledMode,
378
- } }, h("ic-input-container", { key: '2ee3748b5fa24de95435f7064c589e18472727f4', readonly: readonly, disabled: disabledMode }, !this.hideLabel && (h("ic-input-label", { key: '090bf27c1c5a0d357f6e2c03951ae51439fe5061', for: inputId, label: label, helperText: helperText, required: required, disabled: disabledText, readonly: readonly })), h("ic-input-component-container", { key: '4322dbcb83430ff93a958f1cdfd68fb8f919b541', size: size, validationStatus: currentStatus, multiLine: multiline, disabled: disabledMode, readonly: readonly, validationInline: validationInline, fullWidth: fullWidth }, showLeftIcon && (h("span", { key: 'e1cb91443a86bd3499ba3637f462b763217156e1', class: {
379
- readonly: !!readonly,
381
+ } }, h("ic-input-container", { key: '59ec38e8e8e934cf48123303f68a7ca863badd83', readonly: readonly, disabled: disabledMode }, !hideLabel && (h("ic-input-label", { key: 'fa61768dd93e6d7a1ead043792b15b78b8d3fd26', for: inputId, label: label, helperText: helperText, required: required, disabled: disabledText, readonly: readonly })), h("ic-input-component-container", { key: 'c6ac9c16b6c565671575ec2217e62176d7bc1359', size: size, validationStatus: currentStatus, multiLine: multiline, disabled: disabledMode, readonly: readonly, validationInline: validationInline, fullWidth: fullWidth }, showLeftIcon && (h("span", { key: '353b7a992bbce4060dc5fe29b05f96aedd0cf32a', class: {
382
+ readonly,
380
383
  "has-value": this.getNumberOfCharacters(value) > 0,
381
- }, slot: "left-icon" }, h("slot", { key: 'd7a7432973ab5ac4d1f9f99307810239bc1e5bb8', name: "icon" }))), !multiline ? (h("input", Object.assign({ id: inputId, name: name, ref: (el) => (this.inputEl = el), type: this.type, min: min, max: max, value: value, class: {
382
- "no-left-pad": !showLeftIcon && !!readonly,
383
- readonly: !!readonly,
384
- "truncate-value": !!truncateValue,
385
- }, placeholder: placeholder ? placeholder : "", required: required, disabled: disabledMode, readonly: readonly, onInput: this.onInput, onBlur: this.onBlur, onFocus: this.onFocus, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, "aria-activedescendant": this.ariaActiveDescendant, "aria-expanded": this.ariaExpanded, "aria-owns": this.ariaOwns, autocomplete: this.autocomplete, autocapitalize: this.autocapitalize, spellcheck: spellcheck, inputmode: inputmode, role: this.role, maxlength: maxCharactersReached ? maxCharacters : undefined, minlength: minCharactersUnattained ? minCharacters : undefined }, this.inheritedAttributes))) : (h("textarea", Object.assign({ id: inputId, class: {
384
+ }, slot: "left-icon" }, h("slot", { key: '8a5cbec45bedc43908caaae9ff74bc4101f995f8', name: "icon" }))), !multiline ? (h("input", Object.assign({ id: inputId, name: name, ref: (el) => (this.inputEl = el), type: type, min: min, max: max, value: value, class: {
385
+ "no-left-pad": !showLeftIcon && readonly,
386
+ readonly,
387
+ "truncate-value": truncateValue,
388
+ }, placeholder: placeholder ? placeholder : "", required: required, disabled: disabledMode, readonly: readonly, onInput: this.onInput, onBlur: this.onBlur, onFocus: this.onFocus, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, "aria-activedescendant": ariaActiveDescendant, "aria-expanded": ariaExpanded, "aria-owns": ariaOwns, autocomplete: autocomplete, autocapitalize: autocapitalize, spellcheck: spellcheck, inputmode: inputmode, role: role, maxlength: maxCharactersReached ? maxCharacters : undefined, minlength: minCharactersUnattained ? minCharacters : undefined }, inheritedAttributes))) : (h("textarea", Object.assign({ id: inputId, class: {
386
389
  "no-resize": resize === false || !!readonly,
387
390
  "no-left-pad": !showLeftIcon && !!readonly,
388
391
  readonly: !!readonly,
389
- }, name: name, ref: (el) => (this.inputEl = el), value: value, rows: rows, required: required, disabled: disabledMode, placeholder: placeholder ? placeholder : "", readonly: readonly, onInput: this.onInput, onBlur: this.onBlur, onFocus: this.onFocus, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, autocapitalize: this.autocapitalize, spellcheck: spellcheck, inputmode: inputmode, maxlength: maxCharactersReached ? maxCharacters : undefined, minlength: minCharactersUnattained ? minCharacters : undefined }, this.inheritedAttributes))), isSlotUsed(el, "clear-button") && (h("slot", { key: '606b2c481ed91fa410073510d8b08ecefa141fd1', name: "clear-button" })), isSlotUsed(el, "search-submit-button") && (h("slot", { key: '63e74e7017fe754d8b223d4583e66edf44c5b174', name: "search-submit-button" }))), isSlotUsed(el, "menu") && h("slot", { key: 'fdc9f4ece2151b4907c5d64b45a8d3ee1c8da3de', name: "menu" }), (!isEmptyString(validationStatus) ||
392
+ }, name: name, ref: (el) => (this.inputEl = el), value: value, rows: rows, required: required, disabled: disabledMode, placeholder: placeholder, readonly: readonly, onInput: this.onInput, onBlur: this.onBlur, onFocus: this.onFocus, onScroll: this.onTextAreaScroll, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, autocapitalize: autocapitalize, spellcheck: spellcheck, inputmode: inputmode, maxlength: maxCharactersReached ? maxCharacters : undefined, minlength: minCharactersUnattained ? minCharacters : undefined }, inheritedAttributes))), isSlotUsed(el, "clear-button") && (h("slot", { key: '05d080fafd37f3c5e2894968705fe2802cd24f8a', name: "clear-button" })), isSlotUsed(el, "search-submit-button") && (h("slot", { key: 'b4ef1fb8db068a9c547d20147e31ac798cb838b5', name: "search-submit-button" }))), isSlotUsed(el, "menu") && h("slot", { key: '2f708851077d7cc70c6a90d2dae3f817ffdf469b', name: "menu" }), (!isEmptyString(validationStatus) ||
390
393
  !isEmptyString(validationText) ||
391
394
  maxNumChars > 0 ||
392
395
  maxValueExceeded ||
393
396
  maxCharactersWarning ||
394
397
  minCharactersUnattained ||
395
398
  minValueUnattained) &&
396
- !validationInlineInternal && (h("ic-input-validation", { key: '7c8469ca2b9b3d8aa0c629ff50ef25f6dc069215', status: this.hasStatus(currentStatus) === false ||
399
+ !validationInlineInternal && (h("ic-input-validation", { key: 'd7c7b40ed97ab62e31fe09e78bf55c796948e33a', status: this.hasStatus(currentStatus) === false ||
397
400
  (currentStatus === IcInformationStatus.Success &&
398
401
  validationInline) ||
399
402
  validationInlineInternal
400
403
  ? ""
401
- : currentStatus, message: showStatusText ? currentValidationText : "", ariaLiveMode: messageAriaLive, for: inputId, fullWidth: fullWidth }, !readonly && maxNumChars > 0 && (h("div", { key: '68f3bdd2d91bb1d782671f67ff8fa54480b18933', slot: "validation-message-adornment" }, !hideCharCount && (h("ic-typography", { key: '7e6e2cc156a86ff7e5dd26cc11c7107d9058a87f', variant: "caption", class: "char-count-text" }, h("span", { key: '163ab75acf24098bc8543b4dae1feb202ef0eb4e', class: "char-count" }, numChars, "/", maxNumChars))), h("span", { key: '547ba76763a57afc09cadab6074885e94d44c32d', class: "remaining-char-count-desc", "aria-live": "polite" }, hiddenRemainingCharCountDesc), h("span", { key: '49b425896e53566c693604cbdc54782d2fbed6b2', hidden: true, id: hiddenCharCountDescId }, "Field can contain a maximum of ", maxNumChars, " characters."))))))));
404
+ : currentStatus, message: showStatusText ? currentValidationText : "", ariaLiveMode: messageAriaLive, for: inputId, fullWidth: fullWidth }, !readonly && maxNumChars > 0 && (h("div", { key: '6b6d4c6b40f66756ceafc51c6ba7a336863ce030', slot: "validation-message-adornment" }, !hideCharCount && (h("ic-typography", { key: '5cb893f7e84654a848bd7ec14a0820583ed5d043', variant: "caption", class: "char-count-text" }, h("span", { key: 'b93ac422dbea08cf3d1f139feea1fd5ee37c6755', class: "char-count" }, numChars, "/", maxNumChars))), h("span", { key: 'e3b8a947bf1e4b1dc3bd93e04bb50ffaa55ac6a0', class: "remaining-char-count-desc", "aria-live": "polite" }, `${charsRemaining} character${charsRemaining === 1 ? "" : "s"} remaining.`), h("span", { key: '41353bf51d4e7264cc054f524b404519a953bec9', hidden: true, id: hiddenCharCountDescId }, "Field can contain a maximum of ", maxNumChars, " characters."))))))));
402
405
  }
403
406
  get el() { return this; }
404
407
  static get watchers() { return {