@ukic/web-components 3.17.0 → 3.19.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 (398) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/ic-alert.cjs.entry.js +6 -2
  3. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  4. package/dist/cjs/ic-button_3.cjs.entry.js +28 -16
  5. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  6. package/dist/cjs/ic-checkbox-group.cjs.entry.js +23 -2
  7. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ic-chip.cjs.entry.js +12 -5
  9. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ic-data-list.cjs.entry.js +4 -3
  11. package/dist/cjs/ic-data-list.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ic-data-row.cjs.entry.js +3 -3
  13. package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ic-dialog.cjs.entry.js +1 -1
  15. package/dist/cjs/ic-empty-state.cjs.entry.js +2 -2
  16. package/dist/cjs/ic-footer-link.cjs.entry.js +2 -2
  17. package/dist/cjs/ic-hero.cjs.entry.js +4 -4
  18. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +5 -5
  19. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +9 -9
  20. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-input-label_2.cjs.entry.js +5 -6
  22. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  23. package/dist/cjs/ic-layout-grid-item.cjs.entry.js +2 -2
  24. package/dist/cjs/ic-layout-grid.cjs.entry.js +2 -2
  25. package/dist/cjs/ic-link.cjs.entry.js +1 -1
  26. package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
  27. package/dist/cjs/ic-navigation-group.cjs.entry.js +1 -1
  28. package/dist/cjs/ic-navigation-menu.cjs.entry.js +4 -4
  29. package/dist/cjs/ic-page-header.cjs.entry.js +6 -6
  30. package/dist/cjs/ic-pagination-item.cjs.entry.js +1 -1
  31. package/dist/cjs/ic-pagination.cjs.entry.js +29 -4
  32. package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -1
  33. package/dist/cjs/ic-popover-menu.cjs.entry.js +4 -4
  34. package/dist/cjs/ic-radio-group.cjs.entry.js +4 -4
  35. package/dist/cjs/ic-radio-option.cjs.entry.js +4 -4
  36. package/dist/cjs/ic-search-bar.cjs.entry.js +9 -9
  37. package/dist/cjs/ic-section-container.cjs.entry.js +2 -2
  38. package/dist/cjs/ic-select.cjs.entry.js +6 -6
  39. package/dist/cjs/ic-side-navigation.cjs.entry.js +4 -4
  40. package/dist/cjs/ic-skeleton.cjs.entry.js +20 -5
  41. package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
  42. package/dist/cjs/ic-skip-link.cjs.entry.js +2 -2
  43. package/dist/cjs/ic-status-tag.cjs.entry.js +2 -2
  44. package/dist/cjs/ic-step.cjs.entry.js +16 -14
  45. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ic-stepper.cjs.entry.js +24 -4
  47. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  48. package/dist/cjs/ic-switch.cjs.entry.js +4 -4
  49. package/dist/cjs/ic-tab-context.cjs.entry.js +1 -1
  50. package/dist/cjs/ic-tab-group.cjs.entry.js +2 -2
  51. package/dist/cjs/ic-tab-panel.cjs.entry.js +2 -2
  52. package/dist/cjs/ic-text-field.cjs.entry.js +5 -5
  53. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  54. package/dist/cjs/ic-theme.cjs.entry.js +1 -1
  55. package/dist/cjs/ic-toast-region.cjs.entry.js +1 -1
  56. package/dist/cjs/ic-toast.cjs.entry.js +5 -5
  57. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +2 -2
  58. package/dist/cjs/ic-toggle-button.cjs.entry.js +2 -2
  59. package/dist/cjs/ic-top-navigation.cjs.entry.js +5 -2
  60. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  61. package/dist/cjs/loader.cjs.js +1 -1
  62. package/dist/collection/components/ic-alert/ic-alert.js +26 -2
  63. package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
  64. package/dist/collection/components/ic-alert/ic-alert.stories.js +15 -0
  65. package/dist/collection/components/ic-button/ic-button.css +12 -0
  66. package/dist/collection/components/ic-button/ic-button.js +3 -3
  67. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  68. package/dist/collection/components/ic-button/ic-button.stories.js +251 -0
  69. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +25 -2
  70. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  71. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.stories.js +17 -9
  72. package/dist/collection/components/ic-chip/ic-chip.css +12 -0
  73. package/dist/collection/components/ic-chip/ic-chip.js +31 -4
  74. package/dist/collection/components/ic-chip/ic-chip.js.map +1 -1
  75. package/dist/collection/components/ic-chip/ic-chip.stories.js +15 -0
  76. package/dist/collection/components/ic-data-list/ic-data-list.css +4 -0
  77. package/dist/collection/components/ic-data-list/ic-data-list.js +3 -2
  78. package/dist/collection/components/ic-data-list/ic-data-list.js.map +1 -1
  79. package/dist/collection/components/ic-data-list/ic-data-list.stories.js +6 -0
  80. package/dist/collection/components/ic-data-row/ic-data-row.css +1 -1
  81. package/dist/collection/components/ic-data-row/ic-data-row.js +2 -2
  82. package/dist/collection/components/ic-dialog/ic-dialog.js +1 -1
  83. package/dist/collection/components/ic-empty-state/ic-empty-state.js +2 -2
  84. package/dist/collection/components/ic-footer-link/ic-footer-link.js +2 -2
  85. package/dist/collection/components/ic-hero/ic-hero.js +4 -4
  86. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +5 -5
  87. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +3 -3
  88. package/dist/collection/components/ic-input-container/ic-input-container.js +2 -2
  89. package/dist/collection/components/ic-input-label/ic-input-label.js +2 -2
  90. package/dist/collection/components/ic-input-validation/ic-input-validation.js +8 -8
  91. package/dist/collection/components/ic-input-validation/ic-input-validation.js.map +1 -1
  92. package/dist/collection/components/ic-layout-grid/ic-layout-grid.js +2 -2
  93. package/dist/collection/components/ic-layout-grid-item/ic-layout-grid-item.js +2 -2
  94. package/dist/collection/components/ic-link/ic-link.js +1 -1
  95. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +29 -14
  96. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js.map +1 -1
  97. package/dist/collection/components/ic-menu/ic-menu.css +1 -1
  98. package/dist/collection/components/ic-menu/ic-menu.js +3 -3
  99. package/dist/collection/components/ic-menu-group/ic-menu-group.js +1 -1
  100. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +1 -1
  101. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +4 -4
  102. package/dist/collection/components/ic-page-header/ic-page-header.js +6 -6
  103. package/dist/collection/components/ic-pagination/ic-pagination.js +35 -4
  104. package/dist/collection/components/ic-pagination/ic-pagination.js.map +1 -1
  105. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +1 -1
  106. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +4 -4
  107. package/dist/collection/components/ic-radio-group/ic-radio-group.js +4 -4
  108. package/dist/collection/components/ic-radio-option/ic-radio-option.js +4 -4
  109. package/dist/collection/components/ic-search-bar/ic-search-bar.js +9 -9
  110. package/dist/collection/components/ic-section-container/ic-section-container.js +2 -2
  111. package/dist/collection/components/ic-select/ic-select.js +6 -6
  112. package/dist/collection/components/ic-select/ic-select_(multi).stories.js +2 -2
  113. package/dist/collection/components/ic-select/ic-select_(searchable).stories.js +1 -1
  114. package/dist/collection/components/ic-select/ic-select_(single).stories.js +3 -3
  115. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +4 -4
  116. package/dist/collection/components/ic-skeleton/ic-skeleton.js +58 -5
  117. package/dist/collection/components/ic-skeleton/ic-skeleton.js.map +1 -1
  118. package/dist/collection/components/ic-skeleton/ic-skeleton.stories.js +4 -3
  119. package/dist/collection/components/ic-skip-link/ic-skip-link.js +2 -2
  120. package/dist/collection/components/ic-status-tag/ic-status-tag.js +2 -2
  121. package/dist/collection/components/ic-step/ic-step.css +16 -7
  122. package/dist/collection/components/ic-step/ic-step.js +19 -14
  123. package/dist/collection/components/ic-step/ic-step.js.map +1 -1
  124. package/dist/collection/components/ic-stepper/ic-stepper.js +24 -4
  125. package/dist/collection/components/ic-stepper/ic-stepper.js.map +1 -1
  126. package/dist/collection/components/ic-stepper/ic-stepper.stories.js +12 -0
  127. package/dist/collection/components/ic-switch/ic-switch.js +4 -4
  128. package/dist/collection/components/ic-tab-context/ic-tab-context.js +1 -1
  129. package/dist/collection/components/ic-tab-group/ic-tab-group.js +2 -2
  130. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +2 -2
  131. package/dist/collection/components/ic-text-field/ic-text-field.js +6 -5
  132. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  133. package/dist/collection/components/ic-text-field/ic-text-field.stories.js +12 -1
  134. package/dist/collection/components/ic-theme/ic-theme.js +1 -1
  135. package/dist/collection/components/ic-toast/ic-toast.js +5 -5
  136. package/dist/collection/components/ic-toast-region/ic-toast-region.js +1 -1
  137. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +2 -2
  138. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +2 -2
  139. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +5 -2
  140. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
  141. package/dist/components/ic-alert.js +7 -2
  142. package/dist/components/ic-alert.js.map +1 -1
  143. package/dist/components/ic-button2.js +4 -4
  144. package/dist/components/ic-button2.js.map +1 -1
  145. package/dist/components/ic-checkbox-group.js +24 -2
  146. package/dist/components/ic-checkbox-group.js.map +1 -1
  147. package/dist/components/ic-chip.js +13 -5
  148. package/dist/components/ic-chip.js.map +1 -1
  149. package/dist/components/ic-data-list.js +4 -3
  150. package/dist/components/ic-data-list.js.map +1 -1
  151. package/dist/components/ic-data-row.js +3 -3
  152. package/dist/components/ic-data-row.js.map +1 -1
  153. package/dist/components/ic-dialog.js +1 -1
  154. package/dist/components/ic-empty-state.js +2 -2
  155. package/dist/components/ic-footer-link.js +2 -2
  156. package/dist/components/ic-hero.js +4 -4
  157. package/dist/components/ic-horizontal-scroll2.js +5 -5
  158. package/dist/components/ic-input-component-container2.js +3 -3
  159. package/dist/components/ic-input-container2.js +2 -2
  160. package/dist/components/ic-input-label2.js +2 -2
  161. package/dist/components/ic-input-validation2.js +4 -5
  162. package/dist/components/ic-input-validation2.js.map +1 -1
  163. package/dist/components/ic-layout-grid-item.js +2 -2
  164. package/dist/components/ic-layout-grid.js +2 -2
  165. package/dist/components/ic-link2.js +1 -1
  166. package/dist/components/ic-loading-indicator2.js +27 -13
  167. package/dist/components/ic-loading-indicator2.js.map +1 -1
  168. package/dist/components/ic-menu-group.js +1 -1
  169. package/dist/components/ic-menu2.js +4 -4
  170. package/dist/components/ic-menu2.js.map +1 -1
  171. package/dist/components/ic-navigation-group.js +1 -1
  172. package/dist/components/ic-navigation-menu2.js +4 -4
  173. package/dist/components/ic-page-header.js +6 -6
  174. package/dist/components/ic-page-header.js.map +1 -1
  175. package/dist/components/ic-pagination-item2.js +1 -1
  176. package/dist/components/ic-pagination.js +30 -5
  177. package/dist/components/ic-pagination.js.map +1 -1
  178. package/dist/components/ic-popover-menu.js +4 -4
  179. package/dist/components/ic-popover-menu.js.map +1 -1
  180. package/dist/components/ic-radio-group.js +4 -4
  181. package/dist/components/ic-radio-group.js.map +1 -1
  182. package/dist/components/ic-radio-option.js +4 -4
  183. package/dist/components/ic-search-bar.js +9 -9
  184. package/dist/components/ic-section-container2.js +2 -2
  185. package/dist/components/ic-select.js +6 -6
  186. package/dist/components/ic-side-navigation.js +4 -4
  187. package/dist/components/ic-side-navigation.js.map +1 -1
  188. package/dist/components/ic-skeleton.js +23 -6
  189. package/dist/components/ic-skeleton.js.map +1 -1
  190. package/dist/components/ic-skip-link.js +2 -2
  191. package/dist/components/ic-status-tag.js +2 -2
  192. package/dist/components/ic-step.js +17 -15
  193. package/dist/components/ic-step.js.map +1 -1
  194. package/dist/components/ic-stepper.js +24 -4
  195. package/dist/components/ic-stepper.js.map +1 -1
  196. package/dist/components/ic-switch.js +4 -4
  197. package/dist/components/ic-tab-context.js +1 -1
  198. package/dist/components/ic-tab-group.js +2 -2
  199. package/dist/components/ic-tab-panel.js +2 -2
  200. package/dist/components/ic-text-field.js +5 -5
  201. package/dist/components/ic-text-field.js.map +1 -1
  202. package/dist/components/ic-theme.js +1 -1
  203. package/dist/components/ic-toast-region.js +1 -1
  204. package/dist/components/ic-toast.js +5 -5
  205. package/dist/components/ic-toggle-button-group.js +2 -2
  206. package/dist/components/ic-toggle-button.js +2 -2
  207. package/dist/components/ic-top-navigation.js +5 -2
  208. package/dist/components/ic-top-navigation.js.map +1 -1
  209. package/dist/core/core.css +1 -1
  210. package/dist/core/core.esm.js +1 -1
  211. package/dist/core/core.esm.js.map +1 -1
  212. package/dist/core/{p-b83a736d.entry.js → p-012e058a.entry.js} +3 -3
  213. package/dist/core/p-012e058a.entry.js.map +1 -0
  214. package/dist/core/{p-6329ddcb.entry.js → p-0257d59e.entry.js} +2 -2
  215. package/dist/core/{p-d3223b89.entry.js → p-06b3ae40.entry.js} +2 -2
  216. package/dist/core/{p-f6bb691a.entry.js → p-091a7fbf.entry.js} +2 -2
  217. package/dist/core/{p-b4a2f6fa.entry.js → p-0eafbaa1.entry.js} +2 -2
  218. package/dist/core/p-0eafbaa1.entry.js.map +1 -0
  219. package/dist/core/{p-1ca4a5ed.entry.js → p-128e2cbb.entry.js} +2 -2
  220. package/dist/core/{p-afbba548.entry.js → p-21efc36e.entry.js} +2 -2
  221. package/dist/core/{p-04cb17d7.entry.js → p-287e5c17.entry.js} +2 -2
  222. package/dist/core/{p-4d3b219c.entry.js → p-28c9a6e4.entry.js} +2 -2
  223. package/dist/core/{p-f57729b8.entry.js → p-296a41ce.entry.js} +2 -2
  224. package/dist/core/p-34cc376c.entry.js +2 -0
  225. package/dist/core/p-34cc376c.entry.js.map +1 -0
  226. package/dist/core/{p-eca43f7d.entry.js → p-3b13d191.entry.js} +2 -2
  227. package/dist/core/{p-adde6c66.entry.js → p-43356493.entry.js} +2 -2
  228. package/dist/core/{p-3636be4f.entry.js → p-44aaf454.entry.js} +2 -2
  229. package/dist/core/{p-f4e3bb5b.entry.js → p-44fbe8c2.entry.js} +2 -2
  230. package/dist/core/{p-a7583faf.entry.js → p-4637c326.entry.js} +2 -2
  231. package/dist/core/{p-30312243.entry.js → p-49444c33.entry.js} +2 -2
  232. package/dist/core/p-49444c33.entry.js.map +1 -0
  233. package/dist/core/p-4fa7fbc4.entry.js +2 -0
  234. package/dist/core/p-4fa7fbc4.entry.js.map +1 -0
  235. package/dist/core/{p-2026f4fa.entry.js → p-52fa3eec.entry.js} +2 -2
  236. package/dist/core/{p-2026f4fa.entry.js.map → p-52fa3eec.entry.js.map} +1 -1
  237. package/dist/core/{p-9c52ee48.entry.js → p-539b975f.entry.js} +2 -2
  238. package/dist/core/{p-319e3d5b.entry.js → p-5cf704e3.entry.js} +2 -2
  239. package/dist/core/p-5e1a77aa.entry.js +2 -0
  240. package/dist/core/p-5e1a77aa.entry.js.map +1 -0
  241. package/dist/core/{p-601d4e3f.entry.js → p-614953c5.entry.js} +2 -2
  242. package/dist/core/{p-3d23ce54.entry.js → p-6b6c1491.entry.js} +2 -2
  243. package/dist/core/{p-5254a078.entry.js → p-6e8ef73c.entry.js} +2 -2
  244. package/dist/core/{p-ae11583f.entry.js → p-6fb29846.entry.js} +2 -2
  245. package/dist/core/p-70e1dd4d.entry.js +2 -0
  246. package/dist/core/p-70e1dd4d.entry.js.map +1 -0
  247. package/dist/core/{p-52c66bfe.entry.js → p-72ac8bb9.entry.js} +2 -2
  248. package/dist/core/{p-ffd0d9d1.entry.js → p-7552c8a1.entry.js} +2 -2
  249. package/dist/core/{p-a8e4258f.entry.js → p-8798cc6b.entry.js} +2 -2
  250. package/dist/core/p-8798cc6b.entry.js.map +1 -0
  251. package/dist/core/{p-ca82850f.entry.js → p-9452b9ac.entry.js} +2 -2
  252. package/dist/core/p-9452b9ac.entry.js.map +1 -0
  253. package/dist/core/p-a5295f66.entry.js +2 -0
  254. package/dist/core/p-a5295f66.entry.js.map +1 -0
  255. package/dist/core/p-a7645717.entry.js +2 -0
  256. package/dist/core/p-a7645717.entry.js.map +1 -0
  257. package/dist/core/p-a86785dd.entry.js +2 -0
  258. package/dist/core/p-a86785dd.entry.js.map +1 -0
  259. package/dist/core/{p-703f3de1.entry.js → p-a8dc3162.entry.js} +2 -2
  260. package/dist/core/{p-f7105cf9.entry.js → p-ad6632a9.entry.js} +2 -2
  261. package/dist/core/p-ae861bb8.entry.js +2 -0
  262. package/dist/core/{p-7d0d85c4.entry.js → p-af02add9.entry.js} +2 -2
  263. package/dist/core/{p-9674b63f.entry.js → p-b00efb15.entry.js} +2 -2
  264. package/dist/core/{p-3238389a.entry.js → p-bb3a5130.entry.js} +2 -2
  265. package/dist/core/{p-53740194.entry.js → p-bfd03fb4.entry.js} +2 -2
  266. package/dist/core/p-bfd03fb4.entry.js.map +1 -0
  267. package/dist/core/{p-67c3985d.entry.js → p-d8200098.entry.js} +2 -2
  268. package/dist/core/{p-6ed48c46.entry.js → p-dfc2a0b1.entry.js} +2 -2
  269. package/dist/core/{p-12c30491.entry.js → p-f4e2e41f.entry.js} +2 -2
  270. package/dist/core/{p-9ca147f3.entry.js → p-fb43abd6.entry.js} +2 -2
  271. package/dist/esm/core.js +1 -1
  272. package/dist/esm/ic-alert.entry.js +6 -2
  273. package/dist/esm/ic-alert.entry.js.map +1 -1
  274. package/dist/esm/ic-button_3.entry.js +28 -16
  275. package/dist/esm/ic-button_3.entry.js.map +1 -1
  276. package/dist/esm/ic-checkbox-group.entry.js +23 -2
  277. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  278. package/dist/esm/ic-chip.entry.js +12 -5
  279. package/dist/esm/ic-chip.entry.js.map +1 -1
  280. package/dist/esm/ic-data-list.entry.js +4 -3
  281. package/dist/esm/ic-data-list.entry.js.map +1 -1
  282. package/dist/esm/ic-data-row.entry.js +3 -3
  283. package/dist/esm/ic-data-row.entry.js.map +1 -1
  284. package/dist/esm/ic-dialog.entry.js +1 -1
  285. package/dist/esm/ic-empty-state.entry.js +2 -2
  286. package/dist/esm/ic-footer-link.entry.js +2 -2
  287. package/dist/esm/ic-hero.entry.js +4 -4
  288. package/dist/esm/ic-horizontal-scroll.entry.js +5 -5
  289. package/dist/esm/ic-input-component-container_3.entry.js +9 -9
  290. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  291. package/dist/esm/ic-input-label_2.entry.js +6 -7
  292. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  293. package/dist/esm/ic-layout-grid-item.entry.js +2 -2
  294. package/dist/esm/ic-layout-grid.entry.js +2 -2
  295. package/dist/esm/ic-link.entry.js +1 -1
  296. package/dist/esm/ic-menu-group.entry.js +1 -1
  297. package/dist/esm/ic-navigation-group.entry.js +1 -1
  298. package/dist/esm/ic-navigation-menu.entry.js +4 -4
  299. package/dist/esm/ic-page-header.entry.js +6 -6
  300. package/dist/esm/ic-pagination-item.entry.js +1 -1
  301. package/dist/esm/ic-pagination.entry.js +29 -4
  302. package/dist/esm/ic-pagination.entry.js.map +1 -1
  303. package/dist/esm/ic-popover-menu.entry.js +4 -4
  304. package/dist/esm/ic-radio-group.entry.js +4 -4
  305. package/dist/esm/ic-radio-option.entry.js +4 -4
  306. package/dist/esm/ic-search-bar.entry.js +9 -9
  307. package/dist/esm/ic-section-container.entry.js +2 -2
  308. package/dist/esm/ic-select.entry.js +6 -6
  309. package/dist/esm/ic-side-navigation.entry.js +4 -4
  310. package/dist/esm/ic-skeleton.entry.js +20 -5
  311. package/dist/esm/ic-skeleton.entry.js.map +1 -1
  312. package/dist/esm/ic-skip-link.entry.js +2 -2
  313. package/dist/esm/ic-status-tag.entry.js +2 -2
  314. package/dist/esm/ic-step.entry.js +17 -15
  315. package/dist/esm/ic-step.entry.js.map +1 -1
  316. package/dist/esm/ic-stepper.entry.js +24 -4
  317. package/dist/esm/ic-stepper.entry.js.map +1 -1
  318. package/dist/esm/ic-switch.entry.js +4 -4
  319. package/dist/esm/ic-tab-context.entry.js +1 -1
  320. package/dist/esm/ic-tab-group.entry.js +2 -2
  321. package/dist/esm/ic-tab-panel.entry.js +2 -2
  322. package/dist/esm/ic-text-field.entry.js +5 -5
  323. package/dist/esm/ic-text-field.entry.js.map +1 -1
  324. package/dist/esm/ic-theme.entry.js +1 -1
  325. package/dist/esm/ic-toast-region.entry.js +1 -1
  326. package/dist/esm/ic-toast.entry.js +5 -5
  327. package/dist/esm/ic-toggle-button-group.entry.js +2 -2
  328. package/dist/esm/ic-toggle-button.entry.js +2 -2
  329. package/dist/esm/ic-top-navigation.entry.js +5 -2
  330. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  331. package/dist/esm/loader.js +1 -1
  332. package/dist/types/components/ic-alert/ic-alert.d.ts +4 -0
  333. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +3 -0
  334. package/dist/types/components/ic-chip/ic-chip.d.ts +5 -0
  335. package/dist/types/components/ic-input-validation/ic-input-validation.d.ts +2 -1
  336. package/dist/types/components/ic-loading-indicator/ic-loading-indicator.d.ts +4 -1
  337. package/dist/types/components/ic-pagination/ic-pagination.d.ts +7 -0
  338. package/dist/types/components/ic-skeleton/ic-skeleton.d.ts +8 -0
  339. package/dist/types/components/ic-step/ic-step.d.ts +3 -0
  340. package/dist/types/components/ic-stepper/ic-stepper.d.ts +1 -0
  341. package/dist/types/components/ic-text-field/ic-text-field.d.ts +1 -0
  342. package/dist/types/components.d.ts +36 -4
  343. package/hydrate/index.js +291 -172
  344. package/hydrate/index.mjs +291 -172
  345. package/package.json +17 -23
  346. package/vscode-data.json +17 -1
  347. package/dist/core/p-199c5ff6.entry.js +0 -2
  348. package/dist/core/p-199c5ff6.entry.js.map +0 -1
  349. package/dist/core/p-1f41818b.entry.js +0 -2
  350. package/dist/core/p-1f41818b.entry.js.map +0 -1
  351. package/dist/core/p-30312243.entry.js.map +0 -1
  352. package/dist/core/p-33e35173.entry.js +0 -2
  353. package/dist/core/p-33e35173.entry.js.map +0 -1
  354. package/dist/core/p-34407b13.entry.js +0 -2
  355. package/dist/core/p-34407b13.entry.js.map +0 -1
  356. package/dist/core/p-42d35fc4.entry.js +0 -2
  357. package/dist/core/p-42d35fc4.entry.js.map +0 -1
  358. package/dist/core/p-53740194.entry.js.map +0 -1
  359. package/dist/core/p-a8e4258f.entry.js.map +0 -1
  360. package/dist/core/p-b4a2f6fa.entry.js.map +0 -1
  361. package/dist/core/p-b59504f1.entry.js +0 -2
  362. package/dist/core/p-b59504f1.entry.js.map +0 -1
  363. package/dist/core/p-b83a736d.entry.js.map +0 -1
  364. package/dist/core/p-ca82850f.entry.js.map +0 -1
  365. package/dist/core/p-cce398e1.entry.js +0 -2
  366. package/dist/core/p-cce398e1.entry.js.map +0 -1
  367. package/dist/core/p-f51c609d.entry.js +0 -2
  368. /package/dist/core/{p-6329ddcb.entry.js.map → p-0257d59e.entry.js.map} +0 -0
  369. /package/dist/core/{p-d3223b89.entry.js.map → p-06b3ae40.entry.js.map} +0 -0
  370. /package/dist/core/{p-f6bb691a.entry.js.map → p-091a7fbf.entry.js.map} +0 -0
  371. /package/dist/core/{p-1ca4a5ed.entry.js.map → p-128e2cbb.entry.js.map} +0 -0
  372. /package/dist/core/{p-afbba548.entry.js.map → p-21efc36e.entry.js.map} +0 -0
  373. /package/dist/core/{p-04cb17d7.entry.js.map → p-287e5c17.entry.js.map} +0 -0
  374. /package/dist/core/{p-4d3b219c.entry.js.map → p-28c9a6e4.entry.js.map} +0 -0
  375. /package/dist/core/{p-f57729b8.entry.js.map → p-296a41ce.entry.js.map} +0 -0
  376. /package/dist/core/{p-eca43f7d.entry.js.map → p-3b13d191.entry.js.map} +0 -0
  377. /package/dist/core/{p-adde6c66.entry.js.map → p-43356493.entry.js.map} +0 -0
  378. /package/dist/core/{p-3636be4f.entry.js.map → p-44aaf454.entry.js.map} +0 -0
  379. /package/dist/core/{p-f4e3bb5b.entry.js.map → p-44fbe8c2.entry.js.map} +0 -0
  380. /package/dist/core/{p-a7583faf.entry.js.map → p-4637c326.entry.js.map} +0 -0
  381. /package/dist/core/{p-9c52ee48.entry.js.map → p-539b975f.entry.js.map} +0 -0
  382. /package/dist/core/{p-319e3d5b.entry.js.map → p-5cf704e3.entry.js.map} +0 -0
  383. /package/dist/core/{p-601d4e3f.entry.js.map → p-614953c5.entry.js.map} +0 -0
  384. /package/dist/core/{p-3d23ce54.entry.js.map → p-6b6c1491.entry.js.map} +0 -0
  385. /package/dist/core/{p-5254a078.entry.js.map → p-6e8ef73c.entry.js.map} +0 -0
  386. /package/dist/core/{p-ae11583f.entry.js.map → p-6fb29846.entry.js.map} +0 -0
  387. /package/dist/core/{p-52c66bfe.entry.js.map → p-72ac8bb9.entry.js.map} +0 -0
  388. /package/dist/core/{p-ffd0d9d1.entry.js.map → p-7552c8a1.entry.js.map} +0 -0
  389. /package/dist/core/{p-703f3de1.entry.js.map → p-a8dc3162.entry.js.map} +0 -0
  390. /package/dist/core/{p-f7105cf9.entry.js.map → p-ad6632a9.entry.js.map} +0 -0
  391. /package/dist/core/{p-f51c609d.entry.js.map → p-ae861bb8.entry.js.map} +0 -0
  392. /package/dist/core/{p-7d0d85c4.entry.js.map → p-af02add9.entry.js.map} +0 -0
  393. /package/dist/core/{p-9674b63f.entry.js.map → p-b00efb15.entry.js.map} +0 -0
  394. /package/dist/core/{p-3238389a.entry.js.map → p-bb3a5130.entry.js.map} +0 -0
  395. /package/dist/core/{p-67c3985d.entry.js.map → p-d8200098.entry.js.map} +0 -0
  396. /package/dist/core/{p-6ed48c46.entry.js.map → p-dfc2a0b1.entry.js.map} +0 -0
  397. /package/dist/core/{p-12c30491.entry.js.map → p-f4e2e41f.entry.js.map} +0 -0
  398. /package/dist/core/{p-9ca147f3.entry.js.map → p-fb43abd6.entry.js.map} +0 -0
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, h, H as Host, g as getElement } from './index-a7a720e7.js';
2
- import { o as onComponentRequiredPropUndefined, S as getInputHelperTextID, T as getInputValidationTextID, K as IcInformationStatus } from './helpers-dcedb279.js';
2
+ import { o as onComponentRequiredPropUndefined, S as getInputHelperTextID, T as getInputValidationTextID, i as isSlotUsed, K as IcInformationStatus } from './helpers-dcedb279.js';
3
3
  import { w as warningIcon, g as errorIcon, s as successIcon } from './constants-7960cba4.js';
4
4
 
5
5
  const icInputLabelCss = "ic-input-label{margin-bottom:var(--ic-space-xs);--ic-typography-color:var(\n --ic-input-label-text-color,\n var(--ic-color-text-primary)\n )}ic-input-label.with-helper{margin-bottom:0}ic-input-label.ic-input-label-readonly{--ic-typography-color:var(--ic-input-label-readonly-typography-color)}ic-input-label .helpertext,ic-input-label .helpertext ::slotted(*){margin-top:var(--ic-space-xxxs);padding-bottom:var(--ic-input-label-helpertext-padding, 0);--ic-typography-color:var(\n --ic-input-label-helper-text-color,\n var(--ic-color-text-secondary)\n )}ic-input-label .helpertext-normal{--ic-typography-color:var(\n --ic-input-label-helper-text-color,\n var(--ic-color-text-secondary)\n )}ic-input-label .helpertext-readonly{--ic-typography-color:var(--ic-input-label-readonly-helpertext-color)}ic-input-label .readonly-label{--ic-typography-color:var(--ic-input-label-readonly-label-color)}ic-input-label .error-label{--ic-typography-color:var(--ic-input-label-error-label-color)}";
@@ -69,11 +69,11 @@ const InputLabel = class {
69
69
  "helpertext-readonly": readonly,
70
70
  };
71
71
  const helperTextSlot = this.el.querySelector("slot[name='helper-text']");
72
- return (h(Host, { key: 'da58fe3cac026661d1c624c69c56c6e64ff3c07a', class: {
72
+ return (h(Host, { key: '632235f5528b1ee7cbdc981b1fd8f83f81317ac5', class: {
73
73
  "ic-input-label-disabled": !!disabled,
74
74
  "ic-input-label-readonly": readonly,
75
75
  "with-helper": this.isHelperTextSlotUsed(helperTextSlot) || helperText !== "",
76
- } }, !hideLabel && (h("ic-typography", { key: 'bb221e5f51681a0caa721c66f03fd475e4e08749', variant: "label", class: {
76
+ } }, !hideLabel && (h("ic-typography", { key: '4d5ffe88dcfd61697ac5c10bbfe72da69d6cd09e', variant: "label", class: {
77
77
  "readonly-label": readonly,
78
78
  "error-label": status === "error" && !(readonly || disabled),
79
79
  } }, readonly || !useLabelTag ? (`${labelText}`) : (h("label", { htmlFor: this.for }, labelText)))), this.isHelperTextSlotUsed(helperTextSlot) ? (h("span", { id: helperTextId, class: helperTextClass }, h("slot", { name: "helper-text" }))) : (helperText !== "" && (h("ic-typography", { variant: "caption", class: helperTextClass }, h("span", { id: helperTextId }, helperText))))));
@@ -116,20 +116,19 @@ const InputValidation = class {
116
116
  }, 200); // Delay to help ensure screen readers detect change
117
117
  }
118
118
  componentDidLoad() {
119
- onComponentRequiredPropUndefined([{ prop: this.message, propName: "message" }], "Input Validation");
120
119
  this.messageEl.textContent = INVISIBLE_CHAR;
121
120
  }
122
121
  render() {
123
122
  const { ariaLiveMode, fullWidth, status, message } = this;
124
123
  const displayIcon = status !== "" ? ICON[status] : "";
125
- return (h(Host, { key: '0513b4d21426f48a3751fbb4f16786d8cdde6f30', class: {
124
+ return (h(Host, { key: '96d572f2475891bb27613f8bdfc137fc5a5eeceb', class: {
126
125
  [`ic-input-validation-${status}`]: status !== "",
127
126
  "ic-input-validation-full-width": !!fullWidth,
128
127
  "ic-input-validation-with-status": status !== "",
129
- } }, displayIcon !== "" && (h("span", { key: '3e6de247d788f9836f338e109d7be5914fa2f320', class: {
128
+ } }, displayIcon !== "" && (h("span", { key: '8b8a9716ab6350d4959ba09254830e17d275258d', class: {
130
129
  "status-icon": true,
131
130
  [`icon-${status}`]: true,
132
- }, innerHTML: displayIcon })), h("ic-typography", { key: '5ee4e673c1f2934d74eafbc08241cdfae1aa5f9f', variant: "caption", class: "statustext" }, h("span", { key: '850149ffb8c4cdab21ab0c05a8787747e399ca41', id: this.for && getInputValidationTextID(this.for) }, message), h("span", { key: 'a26f5aa58e81cf3e9d982d86b75b3ab7e14897ad', ref: (el) => (this.messageEl = el), class: "sr-only", "aria-live": ariaLiveMode })), h("slot", { key: '4dba13235c6ec27d634b0dd38523963798676b36', name: "validation-message-adornment" })));
131
+ }, innerHTML: displayIcon })), h("ic-typography", { key: '587682a13e0ef65b1fc31e7018827077728e1b5d', variant: "caption", class: "statustext" }, h("span", { key: '6c398ad4c73d27b90a9df1485902dcb4d4ea1b49', id: this.for && getInputValidationTextID(this.for) }, isSlotUsed(this.el, "validation-message") ? (h("slot", { name: "validation-message" })) : (message)), h("span", { key: '542800ff7792e9bd075d2f682ca9e997ceb74fc2', ref: (el) => (this.messageEl = el), class: "sr-only", "aria-live": ariaLiveMode })), h("slot", { key: 'edcd7ddf24ae842f40eada9fa221da19b9fb6c79', name: "validation-message-adornment" })));
133
132
  }
134
133
  get el() { return getElement(this); }
135
134
  static get watchers() { return {
@@ -1 +1 @@
1
- {"file":"ic-input-label.ic-input-validation.entry.js","mappings":"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","names":[],"sources":["src/components/ic-input-label/ic-input-label.css?tag=ic-input-label","src/components/ic-input-label/ic-input-label.tsx","src/components/ic-input-validation/ic-input-validation.css?tag=ic-input-validation","src/components/ic-input-validation/ic-input-validation.tsx"],"sourcesContent":["ic-input-label {\n margin-bottom: var(--ic-space-xs);\n\n --ic-typography-color: var(\n --ic-input-label-text-color,\n var(--ic-color-text-primary)\n );\n}\n\nic-input-label.with-helper {\n margin-bottom: 0;\n}\n\nic-input-label.ic-input-label-readonly {\n --ic-typography-color: var(--ic-input-label-readonly-typography-color);\n}\n\nic-input-label .helpertext,\nic-input-label .helpertext ::slotted(*) {\n margin-top: var(--ic-space-xxxs);\n padding-bottom: var(--ic-input-label-helpertext-padding, 0);\n\n --ic-typography-color: var(\n --ic-input-label-helper-text-color,\n var(--ic-color-text-secondary)\n );\n}\n\nic-input-label .helpertext-normal {\n --ic-typography-color: var(\n --ic-input-label-helper-text-color,\n var(--ic-color-text-secondary)\n );\n}\n\nic-input-label .helpertext-readonly {\n --ic-typography-color: var(--ic-input-label-readonly-helpertext-color);\n}\n\nic-input-label .readonly-label {\n --ic-typography-color: var(--ic-input-label-readonly-label-color);\n}\n\nic-input-label .error-label {\n --ic-typography-color: var(--ic-input-label-error-label-color);\n}\n","import { Component, Element, Host, Prop, h } from \"@stencil/core\";\n\nimport {\n getInputHelperTextID,\n onComponentRequiredPropUndefined,\n} from \"../../utils/helpers\";\n\n@Component({\n tag: \"ic-input-label\",\n styleUrl: \"./ic-input-label.css\",\n})\nexport class InputLabel {\n @Element() el: HTMLIcInputLabelElement;\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled?: boolean = false;\n\n /**\n * The ID of the form element the label is bound to.\n */\n @Prop() for?: string;\n\n /**\n * The helper text that will be displayed.\n */\n @Prop() helperText: string = \"\";\n\n /**\n * The label will be visually hidden.\n */\n @Prop() hideLabel: boolean = false;\n\n /**\n * The text content of the label.\n */\n @Prop() label!: string;\n\n /**\n * If `true`, the readonly state will be set.\n */\n @Prop() readonly: boolean = false;\n\n /**\n * If `true`, the input label will require a value.\n */\n @Prop() required: boolean = false;\n\n /**\n * The status of the label - e.g. 'error'.\n */\n @Prop() status: \"error\" | \"\" = \"\";\n\n /**\n * @internal If `true`, wraps label text in label tag\n */\n @Prop() useLabelTag: boolean = true;\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Input Label\"\n );\n }\n\n private isHelperTextSlotUsed = (slot: Element | null): boolean => {\n const assignedEls = (slot as HTMLSlotElement)?.assignedElements();\n if (assignedEls && assignedEls.length) {\n for (const el of assignedEls) {\n if (el.tagName === \"SLOT\") {\n // Recursion needed for when slot is forwarded multiple times - through child components\n // (e.g. in date picker)\n if (this.isHelperTextSlotUsed(el as HTMLSlotElement)) {\n return true;\n }\n } else {\n // Found an assigned element which is not a nested <slot>\n return true;\n }\n }\n }\n return false;\n };\n\n render() {\n const {\n disabled,\n readonly,\n label,\n required,\n helperText,\n status,\n hideLabel,\n useLabelTag,\n } = this;\n const labelText = required ? label + \" *\" : label;\n const helperTextId = this.for && getInputHelperTextID(this.for);\n const helperTextClass = {\n helpertext: true,\n \"helpertext-normal\": !disabled && !readonly,\n \"helpertext-readonly\": readonly,\n };\n\n const helperTextSlot = this.el.querySelector(\"slot[name='helper-text']\");\n\n return (\n <Host\n class={{\n \"ic-input-label-disabled\": !!disabled,\n \"ic-input-label-readonly\": readonly,\n \"with-helper\":\n this.isHelperTextSlotUsed(helperTextSlot) || helperText !== \"\",\n }}\n >\n {!hideLabel && (\n <ic-typography\n variant=\"label\"\n class={{\n \"readonly-label\": readonly,\n \"error-label\": status === \"error\" && !(readonly || disabled),\n }}\n >\n {readonly || !useLabelTag ? (\n `${labelText}`\n ) : (\n <label htmlFor={this.for}>{labelText}</label>\n )}\n </ic-typography>\n )}\n {this.isHelperTextSlotUsed(helperTextSlot) ? (\n <span id={helperTextId} class={helperTextClass}>\n <slot name=\"helper-text\"></slot>\n </span>\n ) : (\n helperText !== \"\" && (\n <ic-typography variant=\"caption\" class={helperTextClass}>\n <span id={helperTextId}>{helperText}</span>\n </ic-typography>\n )\n )}\n </Host>\n );\n }\n}\n","ic-input-validation {\n max-width: var(--input-width, 20rem);\n display: flex;\n}\n\nic-input-validation.ic-input-validation-with-status {\n margin-top: var(--ic-space-xs);\n}\n\nic-input-validation.ic-input-validation-full-width {\n width: 100%;\n max-width: none;\n}\n\nic-input-validation span.status-icon {\n padding-right: var(--ic-space-xxs);\n}\n\nic-input-validation span.status-icon > svg {\n height: 1.25rem;\n width: 1.25rem;\n}\n\nic-input-validation span.icon-success > svg {\n fill: var(--ic-input-validation-success-icon-color);\n}\n\nic-input-validation span.icon-error > svg {\n fill: var(--ic-input-validation-error, var(--ic-atoms-status-icon-error));\n}\n\nic-input-validation span.icon-warning > svg {\n fill: var(--ic-input-validation-warning-icon-color);\n}\n\nic-input-validation .statustext {\n flex-grow: 1;\n color: var(\n --ic-input-validation-status-text-color,\n var(--ic-color-text-primary)\n );\n\n --ic-typography-color: var(\n --ic-input-validation-status-text-color,\n var(--ic-color-text-primary)\n );\n}\n\nic-input-validation .sr-only {\n position: absolute;\n left: -9999px;\n}\n","import { Element, Component, Host, Prop, h, Watch } from \"@stencil/core\";\n\nimport {\n IcAriaLive,\n IcInformationStatus,\n IcInformationStatusOrEmpty,\n} from \"../../utils/types\";\nimport errorIcon from \"../../assets/error-icon.svg\";\nimport successIcon from \"../../assets/success-icon.svg\";\nimport warningIcon from \"../../assets/warning-icon.svg\";\n\nimport {\n getInputValidationTextID,\n onComponentRequiredPropUndefined,\n} from \"../../utils/helpers\";\n\nconst ICON = {\n [IcInformationStatus.Warning]: warningIcon,\n [IcInformationStatus.Error]: errorIcon,\n [IcInformationStatus.Success]: successIcon,\n};\nconst INVISIBLE_CHAR = \"\\u200B\";\n\n/**\n * @slot validation-message-adornment - Content will be placed to the right of the validation message.\n */\n@Component({\n tag: \"ic-input-validation\",\n styleUrl: \"ic-input-validation.css\",\n})\nexport class InputValidation {\n private messageEl!: HTMLSpanElement;\n\n @Element() el: HTMLIcInputValidationElement;\n\n /**\n * The ARIA live mode to apply to the message.\n */\n @Prop() ariaLiveMode?: IcAriaLive = \"polite\";\n\n /**\n * The ID of the form element the validation is bound to.\n */\n @Prop() for?: string;\n\n /**\n * If `true`, the input validation will fill the width of the container.\n */\n @Prop() fullWidth?: boolean = false;\n\n /**\n * The validation message to display.\n */\n @Prop() message!: string;\n @Watch(\"message\")\n watchMessageHandler(newValue: string) {\n // Force detectable DOM changes\n // Invisible character used as screen readers can ignore whitespace changes e.g. \"\" and \" \"\n this.messageEl.textContent = INVISIBLE_CHAR;\n setTimeout(() => {\n this.messageEl.textContent = newValue;\n }, 200); // Delay to help ensure screen readers detect change\n }\n\n /**\n * The status of the validation - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() status?: IcInformationStatusOrEmpty = \"\";\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.message, propName: \"message\" }],\n \"Input Validation\"\n );\n this.messageEl.textContent = INVISIBLE_CHAR;\n }\n\n render() {\n const { ariaLiveMode, fullWidth, status, message } = this;\n const displayIcon = status !== \"\" ? ICON[status!] : \"\";\n return (\n <Host\n class={{\n [`ic-input-validation-${status}`]: status !== \"\",\n \"ic-input-validation-full-width\": !!fullWidth,\n \"ic-input-validation-with-status\": status !== \"\",\n }}\n >\n {displayIcon !== \"\" && (\n <span\n class={{\n \"status-icon\": true,\n [`icon-${status}`]: true,\n }}\n innerHTML={displayIcon}\n />\n )}\n <ic-typography variant=\"caption\" class=\"statustext\">\n <span id={this.for && getInputValidationTextID(this.for)}>\n {message}\n </span>\n {/* Separate aria-live region to avoid flashing due to textContent delay */}\n <span\n ref={(el) => (this.messageEl = el as HTMLSpanElement)}\n class=\"sr-only\"\n aria-live={ariaLiveMode}\n ></span>\n </ic-typography>\n <slot name=\"validation-message-adornment\"></slot>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-input-label.ic-input-validation.entry.js","mappings":"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","names":[],"sources":["src/components/ic-input-label/ic-input-label.css?tag=ic-input-label","src/components/ic-input-label/ic-input-label.tsx","src/components/ic-input-validation/ic-input-validation.css?tag=ic-input-validation","src/components/ic-input-validation/ic-input-validation.tsx"],"sourcesContent":["ic-input-label {\n margin-bottom: var(--ic-space-xs);\n\n --ic-typography-color: var(\n --ic-input-label-text-color,\n var(--ic-color-text-primary)\n );\n}\n\nic-input-label.with-helper {\n margin-bottom: 0;\n}\n\nic-input-label.ic-input-label-readonly {\n --ic-typography-color: var(--ic-input-label-readonly-typography-color);\n}\n\nic-input-label .helpertext,\nic-input-label .helpertext ::slotted(*) {\n margin-top: var(--ic-space-xxxs);\n padding-bottom: var(--ic-input-label-helpertext-padding, 0);\n\n --ic-typography-color: var(\n --ic-input-label-helper-text-color,\n var(--ic-color-text-secondary)\n );\n}\n\nic-input-label .helpertext-normal {\n --ic-typography-color: var(\n --ic-input-label-helper-text-color,\n var(--ic-color-text-secondary)\n );\n}\n\nic-input-label .helpertext-readonly {\n --ic-typography-color: var(--ic-input-label-readonly-helpertext-color);\n}\n\nic-input-label .readonly-label {\n --ic-typography-color: var(--ic-input-label-readonly-label-color);\n}\n\nic-input-label .error-label {\n --ic-typography-color: var(--ic-input-label-error-label-color);\n}\n","import { Component, Element, Host, Prop, h } from \"@stencil/core\";\n\nimport {\n getInputHelperTextID,\n onComponentRequiredPropUndefined,\n} from \"../../utils/helpers\";\n\n@Component({\n tag: \"ic-input-label\",\n styleUrl: \"./ic-input-label.css\",\n})\nexport class InputLabel {\n @Element() el: HTMLIcInputLabelElement;\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled?: boolean = false;\n\n /**\n * The ID of the form element the label is bound to.\n */\n @Prop() for?: string;\n\n /**\n * The helper text that will be displayed.\n */\n @Prop() helperText: string = \"\";\n\n /**\n * The label will be visually hidden.\n */\n @Prop() hideLabel: boolean = false;\n\n /**\n * The text content of the label.\n */\n @Prop() label!: string;\n\n /**\n * If `true`, the readonly state will be set.\n */\n @Prop() readonly: boolean = false;\n\n /**\n * If `true`, the input label will require a value.\n */\n @Prop() required: boolean = false;\n\n /**\n * The status of the label - e.g. 'error'.\n */\n @Prop() status: \"error\" | \"\" = \"\";\n\n /**\n * @internal If `true`, wraps label text in label tag\n */\n @Prop() useLabelTag: boolean = true;\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Input Label\"\n );\n }\n\n private isHelperTextSlotUsed = (slot: Element | null): boolean => {\n const assignedEls = (slot as HTMLSlotElement)?.assignedElements();\n if (assignedEls && assignedEls.length) {\n for (const el of assignedEls) {\n if (el.tagName === \"SLOT\") {\n // Recursion needed for when slot is forwarded multiple times - through child components\n // (e.g. in date picker)\n if (this.isHelperTextSlotUsed(el as HTMLSlotElement)) {\n return true;\n }\n } else {\n // Found an assigned element which is not a nested <slot>\n return true;\n }\n }\n }\n return false;\n };\n\n render() {\n const {\n disabled,\n readonly,\n label,\n required,\n helperText,\n status,\n hideLabel,\n useLabelTag,\n } = this;\n const labelText = required ? label + \" *\" : label;\n const helperTextId = this.for && getInputHelperTextID(this.for);\n const helperTextClass = {\n helpertext: true,\n \"helpertext-normal\": !disabled && !readonly,\n \"helpertext-readonly\": readonly,\n };\n\n const helperTextSlot = this.el.querySelector(\"slot[name='helper-text']\");\n\n return (\n <Host\n class={{\n \"ic-input-label-disabled\": !!disabled,\n \"ic-input-label-readonly\": readonly,\n \"with-helper\":\n this.isHelperTextSlotUsed(helperTextSlot) || helperText !== \"\",\n }}\n >\n {!hideLabel && (\n <ic-typography\n variant=\"label\"\n class={{\n \"readonly-label\": readonly,\n \"error-label\": status === \"error\" && !(readonly || disabled),\n }}\n >\n {readonly || !useLabelTag ? (\n `${labelText}`\n ) : (\n <label htmlFor={this.for}>{labelText}</label>\n )}\n </ic-typography>\n )}\n {this.isHelperTextSlotUsed(helperTextSlot) ? (\n <span id={helperTextId} class={helperTextClass}>\n <slot name=\"helper-text\"></slot>\n </span>\n ) : (\n helperText !== \"\" && (\n <ic-typography variant=\"caption\" class={helperTextClass}>\n <span id={helperTextId}>{helperText}</span>\n </ic-typography>\n )\n )}\n </Host>\n );\n }\n}\n","ic-input-validation {\n max-width: var(--input-width, 20rem);\n display: flex;\n}\n\nic-input-validation.ic-input-validation-with-status {\n margin-top: var(--ic-space-xs);\n}\n\nic-input-validation.ic-input-validation-full-width {\n width: 100%;\n max-width: none;\n}\n\nic-input-validation span.status-icon {\n padding-right: var(--ic-space-xxs);\n}\n\nic-input-validation span.status-icon > svg {\n height: 1.25rem;\n width: 1.25rem;\n}\n\nic-input-validation span.icon-success > svg {\n fill: var(--ic-input-validation-success-icon-color);\n}\n\nic-input-validation span.icon-error > svg {\n fill: var(--ic-input-validation-error, var(--ic-atoms-status-icon-error));\n}\n\nic-input-validation span.icon-warning > svg {\n fill: var(--ic-input-validation-warning-icon-color);\n}\n\nic-input-validation .statustext {\n flex-grow: 1;\n color: var(\n --ic-input-validation-status-text-color,\n var(--ic-color-text-primary)\n );\n\n --ic-typography-color: var(\n --ic-input-validation-status-text-color,\n var(--ic-color-text-primary)\n );\n}\n\nic-input-validation .sr-only {\n position: absolute;\n left: -9999px;\n}\n","import { Element, Component, Host, Prop, h, Watch } from \"@stencil/core\";\n\nimport {\n IcAriaLive,\n IcInformationStatus,\n IcInformationStatusOrEmpty,\n} from \"../../utils/types\";\nimport errorIcon from \"../../assets/error-icon.svg\";\nimport successIcon from \"../../assets/success-icon.svg\";\nimport warningIcon from \"../../assets/warning-icon.svg\";\n\nimport { getInputValidationTextID, isSlotUsed } from \"../../utils/helpers\";\n\nconst ICON = {\n [IcInformationStatus.Warning]: warningIcon,\n [IcInformationStatus.Error]: errorIcon,\n [IcInformationStatus.Success]: successIcon,\n};\nconst INVISIBLE_CHAR = \"\\u200B\";\n\n/**\n * @slot validation-message-adornment - Content will be placed to the right of the validation message.\n * @slot validation-message - Content will be placed as the validation message.\n */\n@Component({\n tag: \"ic-input-validation\",\n styleUrl: \"ic-input-validation.css\",\n})\nexport class InputValidation {\n private messageEl!: HTMLSpanElement;\n\n @Element() el: HTMLIcInputValidationElement;\n\n /**\n * The ARIA live mode to apply to the message.\n */\n @Prop() ariaLiveMode?: IcAriaLive = \"polite\";\n\n /**\n * The ID of the form element the validation is bound to.\n */\n @Prop() for?: string;\n\n /**\n * If `true`, the input validation will fill the width of the container.\n */\n @Prop() fullWidth?: boolean = false;\n\n /**\n * The validation message to display.\n */\n @Prop() message?: string;\n @Watch(\"message\")\n watchMessageHandler(newValue: string) {\n // Force detectable DOM changes\n // Invisible character used as screen readers can ignore whitespace changes e.g. \"\" and \" \"\n this.messageEl.textContent = INVISIBLE_CHAR;\n setTimeout(() => {\n this.messageEl.textContent = newValue;\n }, 200); // Delay to help ensure screen readers detect change\n }\n\n /**\n * The status of the validation - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() status?: IcInformationStatusOrEmpty = \"\";\n\n componentDidLoad(): void {\n this.messageEl.textContent = INVISIBLE_CHAR;\n }\n\n render() {\n const { ariaLiveMode, fullWidth, status, message } = this;\n const displayIcon = status !== \"\" ? ICON[status!] : \"\";\n return (\n <Host\n class={{\n [`ic-input-validation-${status}`]: status !== \"\",\n \"ic-input-validation-full-width\": !!fullWidth,\n \"ic-input-validation-with-status\": status !== \"\",\n }}\n >\n {displayIcon !== \"\" && (\n <span\n class={{\n \"status-icon\": true,\n [`icon-${status}`]: true,\n }}\n innerHTML={displayIcon}\n />\n )}\n <ic-typography variant=\"caption\" class=\"statustext\">\n <span id={this.for && getInputValidationTextID(this.for)}>\n {isSlotUsed(this.el, \"validation-message\") ? (\n <slot name=\"validation-message\" />\n ) : (\n message\n )}\n </span>\n {/* Separate aria-live region to avoid flashing due to textContent delay */}\n <span\n ref={(el) => (this.messageEl = el as HTMLSpanElement)}\n class=\"sr-only\"\n aria-live={ariaLiveMode}\n ></span>\n </ic-typography>\n <slot name=\"validation-message-adornment\"></slot>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -47,9 +47,9 @@ const LayoutGridItem = class {
47
47
  }
48
48
  render() {
49
49
  const { hideInMobileMode } = this;
50
- return (h(Host, { key: '9e96a528f70c414a5728a7fd0773d0adb4063020', class: {
50
+ return (h(Host, { key: 'bf040e1b3ddbd7f275a026008bf6f011fa440b1d', class: {
51
51
  "ic-layout-grid-hide-in-mobile": !!hideInMobileMode,
52
- } }, h("slot", { key: '43b2b4891f8b1241fad2fb707016cd927632bdfd' })));
52
+ } }, h("slot", { key: '0833ce81285ee10fdfb943fe7d54d0e7db210313' })));
53
53
  }
54
54
  get el() { return getElement(this); }
55
55
  static get watchers() { return {
@@ -129,10 +129,10 @@ const LayoutGrid = class {
129
129
  }
130
130
  render() {
131
131
  const { aligned, fullHeight } = this;
132
- return (h(Host, { key: 'fa862e7110426cb032982c8743b7ad3024f06f9a', class: {
132
+ return (h(Host, { key: '47ece5b026e7e3c97ed38bfe3bab840c1f19ab7c', class: {
133
133
  [`ic-layout-grid-aligned-${aligned}`]: true,
134
134
  ["ic-layout-grid-no-vertical-padding"]: !!fullHeight,
135
- } }, h("slot", { key: '716c4137c338797b4ce17c9dd946f8902064606f' })));
135
+ } }, h("slot", { key: 'f60fbe3bcc6218cf7340513a1699c13b0db377a0' })));
136
136
  }
137
137
  get el() { return getElement(this); }
138
138
  static get watchers() { return {
@@ -92,7 +92,7 @@ const Link = class {
92
92
  }
93
93
  render() {
94
94
  const { download, href, hreflang, referrerpolicy, rel, target, monochrome, theme, } = this;
95
- return (h(Host, { key: '1d3ba1effcfab3255ea567c475e2252bd17de507', class: {
95
+ return (h(Host, { key: 'ca6343037bc5985cf5062b7797e71e0dd0184fb3', class: {
96
96
  ["ic-link"]: true,
97
97
  [`ic-theme-${theme}`]: theme !== "inherit",
98
98
  ["ic-link-monochrome"]: !!monochrome,
@@ -11,7 +11,7 @@ const MenuGroup = class {
11
11
  }
12
12
  render() {
13
13
  const parentMenu = this.el.closest("ic-popover-menu");
14
- return (h(Host, { key: '384be493b4b4148e4a09f0395bb1db6b651bfc2f', role: "group", "aria-label": this.label !== null ? this.label : "" }, isPropDefined(this.label) && (h("ic-typography", { key: '46982951ac8573a5ee8c5733043e109f268859f8', variant: "subtitle-small" }, this.label)), h("span", { key: 'd5a5fe976b9f88e61df589c1ddc105c31b8639e2', class: "menu-items-wrapper" }, h("slot", { key: '3b6cab53fde94c5a9cbc0a6a323c0aff28975a1c' })), this.el !== (parentMenu === null || parentMenu === void 0 ? void 0 : parentMenu.querySelector("ic-menu-group:last-child")) && (h("hr", { key: '60412dd9914569ad72a6160787b48d8b3239cebb' }))));
14
+ return (h(Host, { key: '979b8fb6d5820b0bedb7b5fd0695ae1d45f28ce7', role: "group", "aria-label": this.label !== null ? this.label : "" }, isPropDefined(this.label) && (h("ic-typography", { key: '9ec6ec6fa6bb1eeeea72f74505bab6310e6d2e1f', variant: "subtitle-small" }, this.label)), h("span", { key: '720be07138e658bbaa4ed5131c5ec0ebea15c110', class: "menu-items-wrapper" }, h("slot", { key: 'd9740690e6caf5aaa3c54f96e6be45f38b6f1eea' })), this.el !== (parentMenu === null || parentMenu === void 0 ? void 0 : parentMenu.querySelector("ic-menu-group:last-child")) && (h("hr", { key: '44bb82e43b7de2acf8f955d77666455de0ef67fa' }))));
15
15
  }
16
16
  get el() { return getElement(this); }
17
17
  };
@@ -269,7 +269,7 @@ const NavigationGroup = class {
269
269
  const isTopNav = this.navigationType === "top";
270
270
  const isTopNavDesktop = !inTopNavSideMenu && isTopNav;
271
271
  const ariaExpanded = (isSideNav && expanded) || (isTopNav && dropdownOpen);
272
- return (h(Host, { key: '4d9f64e96f0e60b2e120ef1ff3ead8fc9eeba8ff', class: {
272
+ return (h(Host, { key: '15cdbd2b2ce19129b1ff6a845922036813e7ae99', class: {
273
273
  "in-side-menu": inTopNavSideMenu,
274
274
  "ic-navigation-group-expandable": expandable,
275
275
  "ic-navigation-group-side-nav": isSideNav,
@@ -126,16 +126,16 @@ const NavigationMenu = class {
126
126
  }
127
127
  }
128
128
  render() {
129
- return (h(Host, { key: '3e06550714484b8a9d157e0391697e303fbf8259', class: { [`ic-theme-${this.theme}`]: this.theme !== "inherit" } }, h("div", { key: 'b56300f2817a5a42401570a56f5b29c90e37e336', class: "popout-modal", onClick: this.closeMenu }), h("div", { key: '081658f80afaa6d7f39971cc0f566068166b6688', class: "popout-menu", role: "dialog", "aria-modal": "true", "aria-label": `${this.hasNavigation ? "Navigation" : "App"} menu` }, h("span", { key: '67841c0d0cfb29fba7e3c722436c7e87bca1842d', "aria-hidden": "true", id: "navigation-landmark-text", class: "navigation-landmark-text" }, "Main navigation"), h("nav", { key: 'cb5aa473a04868d6af4dcd2ebc2b61ef5d785904', "aria-labelledby": "navigation-landmark-text", "aria-hidden": this.hasNavigation ? "false" : "true" }, h("div", { key: '2551b868b4c932b5fcff041bdae690e748d40430', class: {
129
+ return (h(Host, { key: '5040ecf445a2131ca777cf9795f4fc25f9ee9d3f', class: { [`ic-theme-${this.theme}`]: this.theme !== "inherit" } }, h("div", { key: '85b31d01281c8ea08c7fa09d37063fa6274ade9d', class: "popout-modal", onClick: this.closeMenu }), h("div", { key: '336cf9892c7698a887a6a8fa6f287c40b441c2ab', class: "popout-menu", role: "dialog", "aria-modal": "true", "aria-label": `${this.hasNavigation ? "Navigation" : "App"} menu` }, h("span", { key: 'd2367e40e87f65ef92225fb0240f049723de8eea', "aria-hidden": "true", id: "navigation-landmark-text", class: "navigation-landmark-text" }, "Main navigation"), h("nav", { key: '665c9f21f3c81961edff4e959fa77a2c7479f475', "aria-labelledby": "navigation-landmark-text", "aria-hidden": this.hasNavigation ? "false" : "true" }, h("div", { key: '3e9debb08e2efe3bc8b4a5266d1df14ee7ee3b8a', class: {
130
130
  ["menu-close-button-container"]: true,
131
131
  ["nav-group-first"]: this.navGroupFirst,
132
- } }, h("ic-button", { key: '6f2a95a7824e18fa2f83a297984a7677110e887f', ref: (el) => (this.closeButton = el), id: "menu-close-button", class: "menu-close-button", variant: "icon-tertiary", size: "large", "aria-label": `Close ${this.hasNavigation ? "navigation" : "app"} menu`, onClick: this.closeMenu }, h("svg", { key: '2d4918dc6b797eb6f245dd531387cbb0370eb687', width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '51a063a29957f6992294ed31dae13570dc0ecd8c', d: "M14 1.41L12.59 0L7 5.59L1.41 0L0 1.41L5.59 7L0 12.59L1.41 14L7 8.41L12.59 14L14 12.59L8.41 7L14 1.41Z" })))), this.hasNavigation && h("slot", { key: '70ef3173a42a47e1bb13042dc41c53313ee42697', name: "navigation" })), this.hasButtons && (h("div", { key: '95384803c8ab3a87492552b613cb53f95adacd52', class: {
132
+ } }, h("ic-button", { key: '8fa44a70222a765adbe21298f81d2a8d9507b5ec', ref: (el) => (this.closeButton = el), id: "menu-close-button", class: "menu-close-button", variant: "icon-tertiary", size: "large", "aria-label": `Close ${this.hasNavigation ? "navigation" : "app"} menu`, onClick: this.closeMenu }, h("svg", { key: '9b5dc10d973f156783708c56f30e618db47a6de1', width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '9fa87211d3c594f36b6a7b0bd1d5298f8d04d4f4', d: "M14 1.41L12.59 0L7 5.59L1.41 0L0 1.41L5.59 7L0 12.59L1.41 14L7 8.41L12.59 14L14 12.59L8.41 7L14 1.41Z" })))), this.hasNavigation && h("slot", { key: 'f4ba3ba39a6c152d32fcfe4d67492effed09eae7', name: "navigation" })), this.hasButtons && (h("div", { key: 'ac05566d1578abbf6377417130e3eb17b177e67d', class: {
133
133
  ["menu-buttons-container"]: true,
134
134
  ["menu-buttons-container-nav-item-above"]: this.navItemAboveButtons,
135
- } }, h("slot", { key: '9bdde63f875fe678742dff04018e562ec37eb500', name: "buttons" }))), (this.status !== "" || this.version !== "") && (h("div", { key: '502dd0df2ce93217d9a642e4a6b36dcd72229e70', class: {
135
+ } }, h("slot", { key: 'b41b238a5b9539d20fee6d1ef5d48e8318282e7b', name: "buttons" }))), (this.status !== "" || this.version !== "") && (h("div", { key: 'f7e7f7ac77288dde96a92160e25cbe04e4762fc2', class: {
136
136
  ["menu-status-version-container"]: true,
137
137
  ["status-version-no-buttons"]: !this.hasButtons,
138
- } }, this.status !== "" && (h("div", { key: 'a0b154b7307de42c92c9e26f9cd552dcc556b21d', class: "menu-status" }, h("ic-typography", { key: 'af91a5c0c556c8ac0faa29998e126de1ab86c0bc', variant: "label-uppercase", "aria-label": "app tag", class: "menu-status-text" }, this.status))), this.version !== "" && (h("div", { key: 'b16dec612bce0fe83c888b0a3e74d8f205710633', class: "menu-version" }, h("ic-typography", { key: '74d7e31b0126f240fa7bbc410a8b71268ca027a1', variant: "label", class: "menu-version-text", "aria-label": "app version" }, this.version))))))));
138
+ } }, this.status !== "" && (h("div", { key: '7cff7f64f8040feb7605890db0131df0d854688a', class: "menu-status" }, h("ic-typography", { key: 'cc5124ab4a9c02e5f412755012c60e42c9e8bc55', variant: "label-uppercase", "aria-label": "app tag", class: "menu-status-text" }, this.status))), this.version !== "" && (h("div", { key: '3a72f8253064a565c543a504aef7bd6efe7cb2cb', class: "menu-version" }, h("ic-typography", { key: 'e2060017d43524668f0da2e7b3385bb19ab3438e', variant: "label", class: "menu-version-text", "aria-label": "app version" }, this.version))))))));
139
139
  }
140
140
  get el() { return getElement(this); }
141
141
  };
@@ -107,19 +107,19 @@ const PageHeader = class {
107
107
  const navAriaLabel = `${isSlotUsed(this.el, "heading")
108
108
  ? (_b = (_a = this.el.querySelector('[slot="heading"]')) === null || _a === void 0 ? void 0 : _a.textContent) !== null && _b !== void 0 ? _b : ""
109
109
  : heading !== null && heading !== void 0 ? heading : ""} page sections`;
110
- return (h(Host, { key: '17bc798fc01d1a70de9fed3da746d8e39a88e96c', class: {
110
+ return (h(Host, { key: '6839f2d164672f2aa33e05134c3426e5374d1f06', class: {
111
111
  ["ic-page-header-sticky"]: !!sticky,
112
112
  ["ic-page-header-sticky-desktop"]: !sticky && !!stickyDesktopOnly,
113
113
  [`ic-theme-${theme}`]: theme !== "inherit",
114
- }, "aria-label": this.el.ariaLabel || "page header" }, h("header", { key: '1dadcdce3f21efe0f196171330cb5774be34075e', class: {
114
+ }, "aria-label": this.el.ariaLabel || "page header" }, h("header", { key: '7d5137cb542941699de9cc5721ae28a17861dbf0', class: {
115
115
  ["border-bottom"]: !!border,
116
116
  ["tabs"]: isSlotUsed(this.el, "tabs"),
117
- }, role: "presentation" }, h("ic-section-container", { key: '9f0855c0310d29f5381c12665aad41ee1656ccdb', aligned: aligned, fullHeight: isSlotUsed(this.el, "tabs") }, isSlotUsed(this.el, "breadcrumbs") && (h("div", { key: '3b1fe9729e1d62e72a432fd039db40c1c5da22da', class: "breadcrumb-area" }, h("slot", { key: 'e5055a9f7def4018e2046dae4687ae1945235bf7', name: "breadcrumbs" }))), h("div", { key: '70acf27823b39d41d9c2f3dbe3e89d71096e7daf', class: "main-content" }, h("div", { key: 'b924bba3df8954b9f314c1eff6ffe4443d0e53f1', class: "title-area" }, h("div", { key: '5a60bb74557d37b33be8312d177e75ce77210998', class: "header-content" }, h("slot", { key: 'e4c7c70b13eac0944bba1a1f2ddd320f3e1c2659', name: "heading" }, h("ic-typography", { key: 'eb98510ca2b55a81c1b91bbabc4bfe7d5e28bdde', variant: size === "small" ? "h4" : "h2", class: "heading" }, h("h2", { key: '9bc94aa414b9514f0e349faa521804682f22f85b' }, heading))), h("slot", { key: '47b147656f0fe7436d233bb669c4462faab353db', name: "heading-adornment" })), h("div", { key: '1456f12fba38ec4cd05706ccb92d72adf12ae623', class: {
117
+ }, role: "presentation" }, h("ic-section-container", { key: '454a9621964544cff3503b6553e7a17c60da3832', aligned: aligned, fullHeight: isSlotUsed(this.el, "tabs") }, isSlotUsed(this.el, "breadcrumbs") && (h("div", { key: '58cd2a99c294c0e74d7236dfadaed9df5a2e468a', class: "breadcrumb-area" }, h("slot", { key: '02a27ba25893819a676272f7b5c99ba111cec39a', name: "breadcrumbs" }))), h("div", { key: '252904de3b7c608bca4e42325880560ee7bdc431', class: "main-content" }, h("div", { key: 'f9256d53398c537fe19e6b27ed777542650de68b', class: "title-area" }, h("div", { key: 'a1d40860aa4a7191974e44f400b3b8d486e09bf4', class: "header-content" }, h("slot", { key: '81f3ac92b61b9943166ae930c7ada3662e494a60', name: "heading" }, h("ic-typography", { key: '78f00c7412b22c74b25db7ce1136edaa173c557b', variant: size === "small" ? "h4" : "h2", class: "heading" }, h("h2", { key: '6e9608ec80c3f05482ac3a8e60ee27d2e6f683ad' }, heading))), h("slot", { key: '59600cab7fe6df1e7fbb9786060c1338c1d24109', name: "heading-adornment" })), h("div", { key: '8008f53d6ee65c3ac3bb849e136e417a85fb185a', class: {
118
118
  ["subheading-content"]: !!subheading || isSlotUsed(this.el, "subheading"),
119
119
  ["small"]: size === "small",
120
- } }, h("slot", { key: 'a82707ce4abf37e4e8a965a39a5cc6e50d634647', name: "subheading" }, h("ic-typography", { key: '9f77da962becb04b244f3df0dceb7dad9dc122d8', variant: "body" }, subheading)))), isSlotUsed(this.el, "actions") && (h("div", { key: '792df65e46b45a50514a1967866dd72f6f72e683', class: "action-area" }, h("slot", { key: '0cd5fd825254df4815fe2d3e788946de88cbaae1', name: "actions" }))), isSlotUsed(this.el, "input") && (h("div", { key: 'e030cb3067c544b3d3496146e25d511a30ca97b2', class: "input-area" }, h("slot", { key: '8c9f722a205eded36526a4bc926e7a92c43626af', name: "input" })))), (isSlotUsed(this.el, "stepper") ||
121
- isSlotUsed(this.el, "tabs")) && (h("div", { key: 'deeb8c5520db91c494215d1adf90bebcc96fbbb5', class: "navigation-area" }, isSlotUsed(this.el, "stepper") &&
122
- !isSlotUsed(this.el, "tabs") && h("slot", { key: 'd9201c158069b054c3903ea4c0647d96de9d0930', name: "stepper" }), isSlotUsed(this.el, "tabs") && (h("nav", { key: 'a0cdbb20f507dd783536b0a60ae7fa2d391be85f', "aria-label": navAriaLabel }, h("ic-horizontal-scroll", { key: 'f3c15e0d61db5990108d86c5540d4f69b9477a9e' }, h("ul", { key: '6e7aded64c14703b5b4f141fa11f0f9eac247bce', class: "tabs-slot" }, h("slot", { key: 'eee6cfc3a09856108574b715163cc645f9eae627', name: "tabs" })))))))))));
120
+ } }, h("slot", { key: '2f7f52d845ac9ae2d4a7122c17dda2cd9439301d', name: "subheading" }, h("ic-typography", { key: 'c0aea12079ad430c8fc80de47dbc36998c7dafde', variant: "body" }, subheading)))), isSlotUsed(this.el, "actions") && (h("div", { key: '522be093d57e17bd669e6a00de00b5d762371464', class: "action-area" }, h("slot", { key: '5044800dd45ad23bded19fb947103fc33fb224f9', name: "actions" }))), isSlotUsed(this.el, "input") && (h("div", { key: 'c2ed3ac5f6683e17dff5e30bb4b0836c6882a62a', class: "input-area" }, h("slot", { key: '7fa5429dde9cafd6cf7a91e6c018c137c4596cb8', name: "input" })))), (isSlotUsed(this.el, "stepper") ||
121
+ isSlotUsed(this.el, "tabs")) && (h("div", { key: '7adb7f57bb469ddb2f88303784c5bb4f47af3e7a', class: "navigation-area" }, isSlotUsed(this.el, "stepper") &&
122
+ !isSlotUsed(this.el, "tabs") && h("slot", { key: '523c906aff9a5dcf0911b99e58a49bae70f6dc1a', name: "stepper" }), isSlotUsed(this.el, "tabs") && (h("nav", { key: '3d387ad3a2ca763d7837ad7604d7efbe46b3b2c9', "aria-label": navAriaLabel }, h("ic-horizontal-scroll", { key: 'dee59ffc315702860977ca50ca8bdf90459a6a63' }, h("ul", { key: 'ce68af19740fd60be9a08fa955643854eb5ac0c7', class: "tabs-slot" }, h("slot", { key: 'd2297a18b03a95711ae20beaef363b39462c3866', name: "tabs" })))))))))));
123
123
  }
124
124
  get el() { return getElement(this); }
125
125
  };
@@ -45,7 +45,7 @@ const PaginationItem = class {
45
45
  }
46
46
  render() {
47
47
  const { page, selected, type, disabled, label, capitalizedLabel, monochrome, } = this;
48
- return (h("a", { key: 'c067a0e35e2a92dff8d7f24d135a06a686d74a7d', class: { ["monochrome"]: !!monochrome } }, type === "ellipsis" ? (h("div", { class: {
48
+ return (h("a", { key: '89475a5ee9cb95171d34ae94ec68107c70e67248', class: { ["monochrome"]: !!monochrome } }, type === "ellipsis" ? (h("div", { class: {
49
49
  ["item-container"]: true,
50
50
  ["ellipsis"]: true,
51
51
  ["disabled"]: !!disabled,
@@ -238,6 +238,31 @@ const Pagination = class {
238
238
  componentDidLoad() {
239
239
  onComponentRequiredPropUndefined([{ prop: this.pages, propName: "pages" }], "Pagination");
240
240
  }
241
+ /**
242
+ * Prevents focus lingering on a disabled element. If the currently
243
+ * focused element is one of the back buttons (and we reach the first page),
244
+ * move focus to "next" button, and vice versa.
245
+ * @param ev
246
+ */
247
+ icPageChangeHandler(ev) {
248
+ var _a, _b, _c;
249
+ const shadow = (_a = document.activeElement) === null || _a === void 0 ? void 0 : _a.shadowRoot;
250
+ const activeEl = shadow ? shadow.activeElement : document.activeElement;
251
+ if (!shadow || !activeEl) {
252
+ return;
253
+ }
254
+ if (ev.detail.value === 1 &&
255
+ ["first-page-button", "previous-page-button"].some((id) => id === (activeEl === null || activeEl === void 0 ? void 0 : activeEl.id))) {
256
+ const btn = (_b = shadow.querySelector("#next-page-button").shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector("button");
257
+ // When navigating from firstPage->lastPage or vice versa, the to-be-selected element will be disabled. wait a tick so that it can receive focus.
258
+ setTimeout(() => btn === null || btn === void 0 ? void 0 : btn.focus(), 10);
259
+ }
260
+ else if (ev.detail.value === this.pages &&
261
+ ["last-page-button", "next-page-button"].some((id) => id === (activeEl === null || activeEl === void 0 ? void 0 : activeEl.id))) {
262
+ const btn = (_c = shadow.querySelector("#previous-page-button").shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector("button");
263
+ setTimeout(() => btn === null || btn === void 0 ? void 0 : btn.focus(), 10);
264
+ }
265
+ }
241
266
  paginationItemClickHandler(ev) {
242
267
  const page = ev.detail.page;
243
268
  this.currentPage = page;
@@ -257,14 +282,14 @@ const Pagination = class {
257
282
  }
258
283
  render() {
259
284
  const { type, currentPage, hideCurrentPage, disabled, hideFirstAndLastPageButton, label, theme, monochrome, } = this;
260
- return (h(Host, { key: '206014fa2aa2c61bb9535e4de4fa5bf756bd318c', class: {
285
+ return (h(Host, { key: '841c501b441241eae4281c4c2aea7f51d4e5b1e8', class: {
261
286
  [`ic-theme-${theme}`]: theme !== "inherit",
262
287
  ["ic-pagination-monochrome"]: !!monochrome,
263
- } }, type === "simple" && (h("nav", { key: '8544b88d593c806867e0bd49cb0624a684dec271', class: {
288
+ } }, type === "simple" && (h("nav", { key: '888a15822151817834e8f92a8a50f4d5fd37c715', class: {
264
289
  ["disabled"]: !!disabled,
265
- }, role: "navigation", "aria-label": this.accessibleLabel }, hideFirstAndLastPageButton ? null : this.firstButton(), this.previousButton(), h("ic-pagination-item", { key: '5331aca30709281171cf19f17c2f05a0d0cdf168', theme: this.theme, monochrome: this.monochrome, type: "simple-current", page: currentPage, label: label, class: { ["hide-current-page"]: !!hideCurrentPage }, disabled: disabled }), this.nextButton(), hideFirstAndLastPageButton ? null : this.lastButton())), type === "complex" && (h("nav", { key: '6b7acef9da08b590b941a7ce142ce448dbf79ff2', class: {
290
+ }, role: "navigation", "aria-label": this.accessibleLabel }, hideFirstAndLastPageButton ? null : this.firstButton(), this.previousButton(), h("ic-pagination-item", { key: 'f89f2dc683fa0c48dda8a9b8b0ae9fb041a93624', theme: this.theme, monochrome: this.monochrome, type: "simple-current", page: currentPage, label: label, class: { ["hide-current-page"]: !!hideCurrentPage }, disabled: disabled }), this.nextButton(), hideFirstAndLastPageButton ? null : this.lastButton())), type === "complex" && (h("nav", { key: 'edddd73145108a1ebd09ed068dee9c301a168365', class: {
266
291
  ["disabled"]: !!disabled,
267
- }, role: "navigation", "aria-label": this.accessibleLabel }, hideFirstAndLastPageButton ? null : this.firstButton(), this.previousButton(), this.renderStartItems(), this.startEllipsis && this.renderStartEllipsis(), this.renderMiddleItems(), this.endEllipsis && this.renderEndEllipsis(), this.renderEndItems(), this.nextButton(), hideFirstAndLastPageButton ? null : this.lastButton())), type === "complex" && (h("span", { key: 'e60f3fb36b78e7970f14836295efbd3a1f481885', class: "sr-only", "aria-live": "polite" }, "Page ", this.currentPage))));
292
+ }, role: "navigation", "aria-label": this.accessibleLabel }, hideFirstAndLastPageButton ? null : this.firstButton(), this.previousButton(), this.renderStartItems(), this.startEllipsis && this.renderStartEllipsis(), this.renderMiddleItems(), this.endEllipsis && this.renderEndEllipsis(), this.renderEndItems(), this.nextButton(), hideFirstAndLastPageButton ? null : this.lastButton())), type === "complex" && (h("span", { key: 'a0dca70d2eb4840d1316ae4a4600fe03aeb0f710', class: "sr-only", "aria-live": "polite" }, "Page ", this.currentPage))));
268
293
  }
269
294
  get el() { return getElement(this); }
270
295
  static get watchers() { return {
@@ -1 +1 @@
1
- {"file":"ic-pagination.entry.js","mappings":"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","names":[],"sources":["src/components/ic-pagination/ic-pagination.css?tag=ic-pagination&encapsulation=shadow","src/components/ic-pagination/ic-pagination.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n box-sizing: border-box;\n width: 100%;\n display: flex;\n justify-content: center;\n}\n\nnav {\n width: 100%;\n display: flex;\n flex-flow: row wrap;\n justify-content: flex-start;\n align-items: center;\n}\n\nic-button {\n cursor: pointer;\n}\n\nic-button.next-previous {\n --icon-width: var(--ic-space-xs);\n --icon-height: calc(var(--ic-space-xs) + var(--ic-space-xxxs));\n\n padding: 0 var(--ic-space-xxs) 0 var(--ic-space-xxxs);\n}\n\nic-button.first-last {\n --icon-width: calc(var(--ic-space-sm) + var(--ic-space-xxxs));\n --icon-height: calc(var(--ic-space-xs) + var(--ic-space-xxxs));\n}\n\nic-button.first-last::part(button),\nic-button.next-previous::part(button) {\n color: var(--ic-pagination-chevron);\n}\n\n:host(.ic-pagination-monochrome) ic-button.first-last::part(button),\n:host(.ic-pagination-monochrome) ic-button.next-previous::part(button) {\n color: var(--ic-pagination-chevron-monochrome);\n}\n\nic-button.ic-button-disabled.first-last::part(button),\nic-button.ic-button-disabled.next-previous::part(button),\n:host(.ic-pagination-monochrome)\n ic-button.ic-button-disabled.first-last::part(button),\n:host(.ic-pagination-monochrome)\n ic-button.ic-button-disabled.next-previous::part(button) {\n color: var(--ic-pagination-chevron-disabled);\n}\n\n.disabled {\n color: var(--ic-color-text-disabled-mid);\n pointer-events: none;\n cursor: none;\n user-select: none;\n}\n\n.hide-current-page {\n display: none;\n}\n\n.sr-only {\n position: absolute;\n left: -9999px;\n}\n\n.sr-only:dir(rtl) {\n right: -9999px;\n}\n","import {\n Component,\n Element,\n Host,\n Prop,\n h,\n Listen,\n State,\n Watch,\n Event,\n EventEmitter,\n Method,\n} from \"@stencil/core\";\nimport paginationNextPrevious from \"../../assets/pagination-next-previous.svg\";\nimport paginationFirstLast from \"../../assets/pagination-first-last.svg\";\nimport { IcThemeMode } from \"../../utils/types\";\nimport { IcPaginationTypes, IcChangeEventDetail } from \"./ic-pagination.types\";\nimport {\n onComponentRequiredPropUndefined,\n removeDisabledFalse,\n} from \"../../utils/helpers\";\n\n@Component({\n tag: \"ic-pagination\",\n styleUrl: \"ic-pagination.css\",\n shadow: true,\n})\nexport class Pagination {\n @Element() el: HTMLIcPaginationElement;\n\n @State() endEllipsis: boolean = false;\n @State() endItems: number[] = [];\n @State() midItems: number[] = [];\n @State() startEllipsis: boolean = false;\n @State() startItems: number[] = [];\n\n /**\n * The accessible label of the pagination component to provide context for screen reader users.\n */\n @Prop() accessibleLabel?: string = \"Pagination Navigation\";\n\n /**\n * The number of pages displayed adjacent to the current page when using 'complex' type pagination. Accepted values are 0, 1 & 2.\n */\n @Prop({ mutable: true }) adjacentPageCount?: number = 1;\n\n @Watch(\"adjacentPageCount\")\n watchAdjacentPageCountHandler(): void {\n if (this.adjacentPageCount! > 2) {\n this.adjacentPageCount = 2;\n }\n }\n\n /**\n * The number of pages displayed as boundary items to the current page when using 'complex' type pagination. Accepted values are 0, 1 & 2.\n */\n @Prop({ mutable: true }) boundaryPageCount?: number = 1;\n\n @Watch(\"boundaryPageCount\")\n watchBoundaryPageCountHandler(): void {\n if (this.boundaryPageCount! > 2) {\n this.boundaryPageCount = 2;\n }\n }\n\n /**\n * The default page to display.\n */\n @Prop() defaultPage?: number = 1;\n\n /**\n * If `true`, the pagination will not allow interaction.\n */\n @Prop() disabled?: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * If `true`, the current page of the simple pagination will not be displayed.\n */\n @Prop() hideCurrentPage?: boolean = false;\n\n /**\n * If `true`, the first and last page buttons will not be displayed.\n */\n @Prop() hideFirstAndLastPageButton?: boolean = false;\n\n /**\n * The label for the pagination item (applicable when simple pagination is being used).\n */\n @Prop() label?: string = \"Page\";\n\n /**\n * If `true`, the pagination will display as black in the light theme, and white in dark theme.\n */\n @Prop() monochrome?: boolean = false;\n\n /**\n * The total number of pages.\n */\n @Prop() pages!: number;\n\n @Watch(\"pages\")\n watchNumberPagesHandler(): void {\n this.watchPageChangeHandler();\n }\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * The type of pagination to be used.\n */\n @Prop() type?: IcPaginationTypes = \"simple\";\n\n @Watch(\"type\")\n watchTypeHandler(): void {\n this.watchPageChangeHandler();\n }\n\n /**\n * The current page displayed by the pagination.\n */\n @Prop({ mutable: true }) currentPage?: number = this.defaultPage;\n\n @Watch(\"currentPage\")\n watchPageChangeHandler(): void {\n if (this.type === \"simple\") {\n return;\n }\n\n this.startEllipsis = false;\n this.endEllipsis = false;\n this.startItems = [];\n this.endItems = [];\n this.midItems = [];\n\n const startItems = [];\n let startItemCount = 0;\n const endItems = [];\n let endStart = this.pages;\n const midItems = [];\n let midStart;\n let midEnd;\n let startEllipsis = false;\n let endEllipsis = false;\n\n if (\n this.pages <=\n this.boundaryPageCount! * 2 + this.adjacentPageCount! * 2 + 3\n ) {\n this.startEllipsis = false;\n this.endEllipsis = false;\n for (let i = 1; i <= this.pages; i++) {\n startItems.push(i);\n }\n this.startItems = startItems;\n return;\n }\n\n startItemCount = this.boundaryPageCount === 0 ? 1 : this.boundaryPageCount!;\n endStart =\n this.boundaryPageCount === 0\n ? this.pages\n : this.pages - this.boundaryPageCount! + 1;\n\n if (\n this.currentPage! <=\n this.adjacentPageCount! + this.boundaryPageCount! + 2\n ) {\n startEllipsis = false;\n endEllipsis = true;\n\n let numItems = 2 * this.adjacentPageCount! + 1;\n if (this.boundaryPageCount === 0) {\n numItems--;\n }\n midStart = startItemCount + 1;\n midEnd = midStart + numItems;\n } else {\n startEllipsis = true;\n if (\n this.currentPage! >\n this.pages - (this.adjacentPageCount! + this.boundaryPageCount! + 2)\n ) {\n let numItems = 2 * this.adjacentPageCount! + 1;\n if (this.boundaryPageCount === 0) {\n numItems--;\n }\n midEnd =\n this.boundaryPageCount === 0\n ? this.pages - 1\n : this.pages - this.boundaryPageCount!;\n midStart = midEnd - numItems;\n } else {\n endEllipsis = true;\n midStart = this.currentPage! - this.adjacentPageCount!;\n midEnd = this.currentPage! + this.adjacentPageCount!;\n }\n }\n\n //create array of start items\n if (\n this.boundaryPageCount! > 0 ||\n (this.boundaryPageCount === 0 && startEllipsis === false)\n ) {\n for (let i = 1; i <= startItemCount; i++) {\n startItems.push(i);\n }\n }\n\n //create array of end items\n if (\n this.boundaryPageCount! > 0 ||\n (this.boundaryPageCount === 0 && endEllipsis === false)\n ) {\n for (let i = endStart; i <= this.pages; i++) {\n endItems.push(i);\n }\n }\n\n //create array of mid items\n for (let i = midStart; i <= midEnd; i++) {\n midItems.push(i);\n }\n\n this.startEllipsis = startEllipsis;\n this.endEllipsis = endEllipsis;\n this.startItems = startItems;\n this.endItems = endItems;\n this.midItems = midItems;\n }\n\n /**\n * Emitted when a page is selected.\n */\n @Event() icPageChange: EventEmitter<IcChangeEventDetail>;\n\n componentWillLoad(): void {\n this.watchPageChangeHandler();\n this.watchBoundaryPageCountHandler();\n this.watchAdjacentPageCountHandler();\n removeDisabledFalse(this.disabled, this.el);\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.pages, propName: \"pages\" }],\n \"Pagination\"\n );\n }\n\n @Listen(\"paginationItemClick\")\n paginationItemClickHandler(ev: CustomEvent): void {\n const page = ev.detail.page;\n this.currentPage = page;\n this.icPageChange.emit({ value: this.currentPage! });\n }\n\n /**\n * Sets the currently displayed page.\n * @param {number} page The page number to set as the current page\n */\n @Method()\n async setCurrentPage(page: number): Promise<void> {\n if (typeof page === \"number\" && page > 0 && page <= this.pages) {\n this.currentPage = page;\n } else {\n console.error(\n \"Current page must be a number greater than zero but less than or equal to the total number of pages\"\n );\n }\n }\n\n private handleClickFirst = () => {\n this.currentPage = 1;\n this.icPageChange.emit({ value: this.currentPage });\n };\n\n private handleClickPrevious = (): void => {\n this.currentPage!--;\n this.icPageChange.emit({ value: this.currentPage! });\n };\n\n private handleClickNext = (): void => {\n this.currentPage!++;\n this.icPageChange.emit({ value: this.currentPage! });\n };\n\n private handleClickLast = (): void => {\n this.currentPage = this.pages;\n this.icPageChange.emit({ value: this.currentPage });\n };\n\n // button rendering abstracted from component render methods for clarity\n private firstButton = () => {\n return (\n <ic-button\n id=\"first-page-button\"\n aria-label=\"Go to first page\"\n theme={this.theme}\n onClick={this.handleClickFirst}\n class=\"page-button first-last\"\n disabled={this.currentPage === 1 || this.disabled}\n variant=\"icon-tertiary\"\n monochrome={this.theme == \"light\" || this.theme == \"dark\"}\n innerHTML={paginationFirstLast}\n />\n );\n };\n\n private previousButton = () => {\n return (\n <ic-button\n id=\"previous-page-button\"\n aria-label=\"Go to previous page\"\n theme={this.theme}\n onClick={this.handleClickPrevious}\n class=\"page-button next-previous flip\"\n disabled={this.currentPage === 1 || this.disabled}\n variant=\"icon-tertiary\"\n monochrome={this.theme == \"light\" || this.theme == \"dark\"}\n innerHTML={paginationNextPrevious}\n />\n );\n };\n\n private nextButton = () => {\n return (\n <ic-button\n id=\"next-page-button\"\n aria-label=\"Go to next page\"\n theme={this.theme}\n onClick={this.handleClickNext}\n class=\"page-button next-previous\"\n disabled={this.currentPage === this.pages || this.disabled}\n variant=\"icon-tertiary\"\n monochrome={this.theme == \"light\" || this.theme == \"dark\"}\n innerHTML={paginationNextPrevious}\n />\n );\n };\n\n private lastButton = () => {\n return (\n <ic-button\n id=\"last-page-button\"\n aria-label=\"Go to last page\"\n theme={this.theme}\n onClick={this.handleClickLast}\n class=\"page-button first-last flip\"\n disabled={this.currentPage === this.pages || this.disabled}\n variant=\"icon-tertiary\"\n monochrome={this.theme == \"light\" || this.theme == \"dark\"}\n innerHTML={paginationFirstLast}\n />\n );\n };\n\n private renderStartEllipsis = () => {\n return (\n <ic-pagination-item\n theme={this.theme}\n monochrome={this.monochrome}\n type=\"ellipsis\"\n id=\"start-ellipsis\"\n disabled={this.disabled}\n />\n );\n };\n\n private renderEndEllipsis = () => {\n return (\n <ic-pagination-item\n theme={this.theme}\n monochrome={this.monochrome}\n type=\"ellipsis\"\n id=\"end-ellipsis\"\n disabled={this.disabled}\n />\n );\n };\n\n private renderStartItems = () => {\n return this.startItems.map((page: number) => {\n return (\n <ic-pagination-item\n theme={this.theme}\n monochrome={this.monochrome}\n selected={page === this.currentPage}\n id={`pagination-item-${page}`}\n type=\"page\"\n page={page}\n disabled={this.disabled}\n />\n );\n });\n };\n\n private renderEndItems = () => {\n return this.endItems.map((page: number) => {\n return (\n <ic-pagination-item\n theme={this.theme}\n monochrome={this.monochrome}\n selected={page === this.currentPage}\n id={`pagination-item-${page}`}\n type=\"page\"\n page={page}\n disabled={this.disabled}\n />\n );\n });\n };\n\n private renderMiddleItems = () => {\n return this.midItems.map((page: number) => {\n return (\n <ic-pagination-item\n theme={this.theme}\n monochrome={this.monochrome}\n selected={page === this.currentPage}\n id={`pagination-item-${page}`}\n type=\"page\"\n page={page}\n disabled={this.disabled}\n />\n );\n });\n };\n\n render() {\n const {\n type,\n currentPage,\n hideCurrentPage,\n disabled,\n hideFirstAndLastPageButton,\n label,\n theme,\n monochrome,\n } = this;\n\n return (\n <Host\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n [\"ic-pagination-monochrome\"]: !!monochrome,\n }}\n >\n {type === \"simple\" && (\n <nav\n class={{\n [\"disabled\"]: !!disabled,\n }}\n role=\"navigation\"\n aria-label={this.accessibleLabel}\n >\n {hideFirstAndLastPageButton ? null : this.firstButton()}\n {this.previousButton()}\n <ic-pagination-item\n theme={this.theme}\n monochrome={this.monochrome}\n type=\"simple-current\"\n page={currentPage}\n label={label}\n class={{ [\"hide-current-page\"]: !!hideCurrentPage }}\n disabled={disabled}\n />\n {this.nextButton()}\n {hideFirstAndLastPageButton ? null : this.lastButton()}\n </nav>\n )}\n {type === \"complex\" && (\n <nav\n class={{\n [\"disabled\"]: !!disabled,\n }}\n role=\"navigation\"\n aria-label={this.accessibleLabel}\n >\n {hideFirstAndLastPageButton ? null : this.firstButton()}\n {this.previousButton()}\n {this.renderStartItems()}\n {this.startEllipsis && this.renderStartEllipsis()}\n {this.renderMiddleItems()}\n {this.endEllipsis && this.renderEndEllipsis()}\n {this.renderEndItems()}\n {this.nextButton()}\n {hideFirstAndLastPageButton ? null : this.lastButton()}\n </nav>\n )}\n {type === \"complex\" && (\n <span class=\"sr-only\" aria-live=\"polite\">\n Page {this.currentPage}\n </span>\n )}\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-pagination.entry.js","mappings":"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","names":[],"sources":["src/components/ic-pagination/ic-pagination.css?tag=ic-pagination&encapsulation=shadow","src/components/ic-pagination/ic-pagination.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n box-sizing: border-box;\n width: 100%;\n display: flex;\n justify-content: center;\n}\n\nnav {\n width: 100%;\n display: flex;\n flex-flow: row wrap;\n justify-content: flex-start;\n align-items: center;\n}\n\nic-button {\n cursor: pointer;\n}\n\nic-button.next-previous {\n --icon-width: var(--ic-space-xs);\n --icon-height: calc(var(--ic-space-xs) + var(--ic-space-xxxs));\n\n padding: 0 var(--ic-space-xxs) 0 var(--ic-space-xxxs);\n}\n\nic-button.first-last {\n --icon-width: calc(var(--ic-space-sm) + var(--ic-space-xxxs));\n --icon-height: calc(var(--ic-space-xs) + var(--ic-space-xxxs));\n}\n\nic-button.first-last::part(button),\nic-button.next-previous::part(button) {\n color: var(--ic-pagination-chevron);\n}\n\n:host(.ic-pagination-monochrome) ic-button.first-last::part(button),\n:host(.ic-pagination-monochrome) ic-button.next-previous::part(button) {\n color: var(--ic-pagination-chevron-monochrome);\n}\n\nic-button.ic-button-disabled.first-last::part(button),\nic-button.ic-button-disabled.next-previous::part(button),\n:host(.ic-pagination-monochrome)\n ic-button.ic-button-disabled.first-last::part(button),\n:host(.ic-pagination-monochrome)\n ic-button.ic-button-disabled.next-previous::part(button) {\n color: var(--ic-pagination-chevron-disabled);\n}\n\n.disabled {\n color: var(--ic-color-text-disabled-mid);\n pointer-events: none;\n cursor: none;\n user-select: none;\n}\n\n.hide-current-page {\n display: none;\n}\n\n.sr-only {\n position: absolute;\n left: -9999px;\n}\n\n.sr-only:dir(rtl) {\n right: -9999px;\n}\n","import {\n Component,\n Element,\n Host,\n Prop,\n h,\n Listen,\n State,\n Watch,\n Event,\n EventEmitter,\n Method,\n} from \"@stencil/core\";\nimport paginationNextPrevious from \"../../assets/pagination-next-previous.svg\";\nimport paginationFirstLast from \"../../assets/pagination-first-last.svg\";\nimport { IcThemeMode } from \"../../utils/types\";\nimport { IcPaginationTypes, IcChangeEventDetail } from \"./ic-pagination.types\";\nimport {\n onComponentRequiredPropUndefined,\n removeDisabledFalse,\n} from \"../../utils/helpers\";\n\n@Component({\n tag: \"ic-pagination\",\n styleUrl: \"ic-pagination.css\",\n shadow: true,\n})\nexport class Pagination {\n @Element() el: HTMLIcPaginationElement;\n\n @State() endEllipsis: boolean = false;\n @State() endItems: number[] = [];\n @State() midItems: number[] = [];\n @State() startEllipsis: boolean = false;\n @State() startItems: number[] = [];\n\n /**\n * The accessible label of the pagination component to provide context for screen reader users.\n */\n @Prop() accessibleLabel?: string = \"Pagination Navigation\";\n\n /**\n * The number of pages displayed adjacent to the current page when using 'complex' type pagination. Accepted values are 0, 1 & 2.\n */\n @Prop({ mutable: true }) adjacentPageCount?: number = 1;\n\n @Watch(\"adjacentPageCount\")\n watchAdjacentPageCountHandler(): void {\n if (this.adjacentPageCount! > 2) {\n this.adjacentPageCount = 2;\n }\n }\n\n /**\n * The number of pages displayed as boundary items to the current page when using 'complex' type pagination. Accepted values are 0, 1 & 2.\n */\n @Prop({ mutable: true }) boundaryPageCount?: number = 1;\n\n @Watch(\"boundaryPageCount\")\n watchBoundaryPageCountHandler(): void {\n if (this.boundaryPageCount! > 2) {\n this.boundaryPageCount = 2;\n }\n }\n\n /**\n * The default page to display.\n */\n @Prop() defaultPage?: number = 1;\n\n /**\n * If `true`, the pagination will not allow interaction.\n */\n @Prop() disabled?: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * If `true`, the current page of the simple pagination will not be displayed.\n */\n @Prop() hideCurrentPage?: boolean = false;\n\n /**\n * If `true`, the first and last page buttons will not be displayed.\n */\n @Prop() hideFirstAndLastPageButton?: boolean = false;\n\n /**\n * The label for the pagination item (applicable when simple pagination is being used).\n */\n @Prop() label?: string = \"Page\";\n\n /**\n * If `true`, the pagination will display as black in the light theme, and white in dark theme.\n */\n @Prop() monochrome?: boolean = false;\n\n /**\n * The total number of pages.\n */\n @Prop() pages!: number;\n\n @Watch(\"pages\")\n watchNumberPagesHandler(): void {\n this.watchPageChangeHandler();\n }\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * The type of pagination to be used.\n */\n @Prop() type?: IcPaginationTypes = \"simple\";\n\n @Watch(\"type\")\n watchTypeHandler(): void {\n this.watchPageChangeHandler();\n }\n\n /**\n * The current page displayed by the pagination.\n */\n @Prop({ mutable: true }) currentPage?: number = this.defaultPage;\n\n @Watch(\"currentPage\")\n watchPageChangeHandler(): void {\n if (this.type === \"simple\") {\n return;\n }\n\n this.startEllipsis = false;\n this.endEllipsis = false;\n this.startItems = [];\n this.endItems = [];\n this.midItems = [];\n\n const startItems = [];\n let startItemCount = 0;\n const endItems = [];\n let endStart = this.pages;\n const midItems = [];\n let midStart;\n let midEnd;\n let startEllipsis = false;\n let endEllipsis = false;\n\n if (\n this.pages <=\n this.boundaryPageCount! * 2 + this.adjacentPageCount! * 2 + 3\n ) {\n this.startEllipsis = false;\n this.endEllipsis = false;\n for (let i = 1; i <= this.pages; i++) {\n startItems.push(i);\n }\n this.startItems = startItems;\n return;\n }\n\n startItemCount = this.boundaryPageCount === 0 ? 1 : this.boundaryPageCount!;\n endStart =\n this.boundaryPageCount === 0\n ? this.pages\n : this.pages - this.boundaryPageCount! + 1;\n\n if (\n this.currentPage! <=\n this.adjacentPageCount! + this.boundaryPageCount! + 2\n ) {\n startEllipsis = false;\n endEllipsis = true;\n\n let numItems = 2 * this.adjacentPageCount! + 1;\n if (this.boundaryPageCount === 0) {\n numItems--;\n }\n midStart = startItemCount + 1;\n midEnd = midStart + numItems;\n } else {\n startEllipsis = true;\n if (\n this.currentPage! >\n this.pages - (this.adjacentPageCount! + this.boundaryPageCount! + 2)\n ) {\n let numItems = 2 * this.adjacentPageCount! + 1;\n if (this.boundaryPageCount === 0) {\n numItems--;\n }\n midEnd =\n this.boundaryPageCount === 0\n ? this.pages - 1\n : this.pages - this.boundaryPageCount!;\n midStart = midEnd - numItems;\n } else {\n endEllipsis = true;\n midStart = this.currentPage! - this.adjacentPageCount!;\n midEnd = this.currentPage! + this.adjacentPageCount!;\n }\n }\n\n //create array of start items\n if (\n this.boundaryPageCount! > 0 ||\n (this.boundaryPageCount === 0 && startEllipsis === false)\n ) {\n for (let i = 1; i <= startItemCount; i++) {\n startItems.push(i);\n }\n }\n\n //create array of end items\n if (\n this.boundaryPageCount! > 0 ||\n (this.boundaryPageCount === 0 && endEllipsis === false)\n ) {\n for (let i = endStart; i <= this.pages; i++) {\n endItems.push(i);\n }\n }\n\n //create array of mid items\n for (let i = midStart; i <= midEnd; i++) {\n midItems.push(i);\n }\n\n this.startEllipsis = startEllipsis;\n this.endEllipsis = endEllipsis;\n this.startItems = startItems;\n this.endItems = endItems;\n this.midItems = midItems;\n }\n\n /**\n * Emitted when a page is selected.\n */\n @Event() icPageChange: EventEmitter<IcChangeEventDetail>;\n\n componentWillLoad(): void {\n this.watchPageChangeHandler();\n this.watchBoundaryPageCountHandler();\n this.watchAdjacentPageCountHandler();\n removeDisabledFalse(this.disabled, this.el);\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.pages, propName: \"pages\" }],\n \"Pagination\"\n );\n }\n\n /**\n * Prevents focus lingering on a disabled element. If the currently\n * focused element is one of the back buttons (and we reach the first page),\n * move focus to \"next\" button, and vice versa.\n * @param ev\n */\n @Listen(\"icPageChange\")\n icPageChangeHandler(ev: CustomEvent<IcChangeEventDetail>) {\n const shadow = document.activeElement?.shadowRoot;\n\n const activeEl = shadow ? shadow.activeElement : document.activeElement;\n if (!shadow || !activeEl) {\n return;\n }\n\n if (\n ev.detail.value === 1 &&\n [\"first-page-button\", \"previous-page-button\"].some(\n (id) => id === activeEl?.id\n )\n ) {\n const btn = (\n shadow.querySelector(\"#next-page-button\") as HTMLElement\n ).shadowRoot?.querySelector(\"button\");\n // When navigating from firstPage->lastPage or vice versa, the to-be-selected element will be disabled. wait a tick so that it can receive focus.\n setTimeout(() => btn?.focus(), 10);\n } else if (\n ev.detail.value === this.pages &&\n [\"last-page-button\", \"next-page-button\"].some((id) => id === activeEl?.id)\n ) {\n const btn = (\n shadow!.querySelector(\"#previous-page-button\") as HTMLElement\n ).shadowRoot?.querySelector(\"button\");\n setTimeout(() => btn?.focus(), 10);\n }\n }\n\n @Listen(\"paginationItemClick\")\n paginationItemClickHandler(ev: CustomEvent): void {\n const page = ev.detail.page;\n this.currentPage = page;\n this.icPageChange.emit({ value: this.currentPage! });\n }\n\n /**\n * Sets the currently displayed page.\n * @param {number} page The page number to set as the current page\n */\n @Method()\n async setCurrentPage(page: number): Promise<void> {\n if (typeof page === \"number\" && page > 0 && page <= this.pages) {\n this.currentPage = page;\n } else {\n console.error(\n \"Current page must be a number greater than zero but less than or equal to the total number of pages\"\n );\n }\n }\n\n private handleClickFirst = () => {\n this.currentPage = 1;\n this.icPageChange.emit({ value: this.currentPage });\n };\n\n private handleClickPrevious = (): void => {\n this.currentPage!--;\n this.icPageChange.emit({ value: this.currentPage! });\n };\n\n private handleClickNext = (): void => {\n this.currentPage!++;\n this.icPageChange.emit({ value: this.currentPage! });\n };\n\n private handleClickLast = (): void => {\n this.currentPage = this.pages;\n this.icPageChange.emit({ value: this.currentPage });\n };\n\n // button rendering abstracted from component render methods for clarity\n private firstButton = () => {\n return (\n <ic-button\n id=\"first-page-button\"\n aria-label=\"Go to first page\"\n theme={this.theme}\n onClick={this.handleClickFirst}\n class=\"page-button first-last\"\n disabled={this.currentPage === 1 || this.disabled}\n variant=\"icon-tertiary\"\n monochrome={this.theme == \"light\" || this.theme == \"dark\"}\n innerHTML={paginationFirstLast}\n />\n );\n };\n\n private previousButton = () => {\n return (\n <ic-button\n id=\"previous-page-button\"\n aria-label=\"Go to previous page\"\n theme={this.theme}\n onClick={this.handleClickPrevious}\n class=\"page-button next-previous flip\"\n disabled={this.currentPage === 1 || this.disabled}\n variant=\"icon-tertiary\"\n monochrome={this.theme == \"light\" || this.theme == \"dark\"}\n innerHTML={paginationNextPrevious}\n />\n );\n };\n\n private nextButton = () => {\n return (\n <ic-button\n id=\"next-page-button\"\n aria-label=\"Go to next page\"\n theme={this.theme}\n onClick={this.handleClickNext}\n class=\"page-button next-previous\"\n disabled={this.currentPage === this.pages || this.disabled}\n variant=\"icon-tertiary\"\n monochrome={this.theme == \"light\" || this.theme == \"dark\"}\n innerHTML={paginationNextPrevious}\n />\n );\n };\n\n private lastButton = () => {\n return (\n <ic-button\n id=\"last-page-button\"\n aria-label=\"Go to last page\"\n theme={this.theme}\n onClick={this.handleClickLast}\n class=\"page-button first-last flip\"\n disabled={this.currentPage === this.pages || this.disabled}\n variant=\"icon-tertiary\"\n monochrome={this.theme == \"light\" || this.theme == \"dark\"}\n innerHTML={paginationFirstLast}\n />\n );\n };\n\n private renderStartEllipsis = () => {\n return (\n <ic-pagination-item\n theme={this.theme}\n monochrome={this.monochrome}\n type=\"ellipsis\"\n id=\"start-ellipsis\"\n disabled={this.disabled}\n />\n );\n };\n\n private renderEndEllipsis = () => {\n return (\n <ic-pagination-item\n theme={this.theme}\n monochrome={this.monochrome}\n type=\"ellipsis\"\n id=\"end-ellipsis\"\n disabled={this.disabled}\n />\n );\n };\n\n private renderStartItems = () => {\n return this.startItems.map((page: number) => {\n return (\n <ic-pagination-item\n theme={this.theme}\n monochrome={this.monochrome}\n selected={page === this.currentPage}\n id={`pagination-item-${page}`}\n type=\"page\"\n page={page}\n disabled={this.disabled}\n />\n );\n });\n };\n\n private renderEndItems = () => {\n return this.endItems.map((page: number) => {\n return (\n <ic-pagination-item\n theme={this.theme}\n monochrome={this.monochrome}\n selected={page === this.currentPage}\n id={`pagination-item-${page}`}\n type=\"page\"\n page={page}\n disabled={this.disabled}\n />\n );\n });\n };\n\n private renderMiddleItems = () => {\n return this.midItems.map((page: number) => {\n return (\n <ic-pagination-item\n theme={this.theme}\n monochrome={this.monochrome}\n selected={page === this.currentPage}\n id={`pagination-item-${page}`}\n type=\"page\"\n page={page}\n disabled={this.disabled}\n />\n );\n });\n };\n\n render() {\n const {\n type,\n currentPage,\n hideCurrentPage,\n disabled,\n hideFirstAndLastPageButton,\n label,\n theme,\n monochrome,\n } = this;\n\n return (\n <Host\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n [\"ic-pagination-monochrome\"]: !!monochrome,\n }}\n >\n {type === \"simple\" && (\n <nav\n class={{\n [\"disabled\"]: !!disabled,\n }}\n role=\"navigation\"\n aria-label={this.accessibleLabel}\n >\n {hideFirstAndLastPageButton ? null : this.firstButton()}\n {this.previousButton()}\n <ic-pagination-item\n theme={this.theme}\n monochrome={this.monochrome}\n type=\"simple-current\"\n page={currentPage}\n label={label}\n class={{ [\"hide-current-page\"]: !!hideCurrentPage }}\n disabled={disabled}\n />\n {this.nextButton()}\n {hideFirstAndLastPageButton ? null : this.lastButton()}\n </nav>\n )}\n {type === \"complex\" && (\n <nav\n class={{\n [\"disabled\"]: !!disabled,\n }}\n role=\"navigation\"\n aria-label={this.accessibleLabel}\n >\n {hideFirstAndLastPageButton ? null : this.firstButton()}\n {this.previousButton()}\n {this.renderStartItems()}\n {this.startEllipsis && this.renderStartEllipsis()}\n {this.renderMiddleItems()}\n {this.endEllipsis && this.renderEndEllipsis()}\n {this.renderEndItems()}\n {this.nextButton()}\n {hideFirstAndLastPageButton ? null : this.lastButton()}\n </nav>\n )}\n {type === \"complex\" && (\n <span class=\"sr-only\" aria-live=\"polite\">\n Page {this.currentPage}\n </span>\n )}\n </Host>\n );\n }\n}\n"],"version":3}
@@ -280,17 +280,17 @@ const PopoverMenu = class {
280
280
  this.popperProps = props;
281
281
  }
282
282
  render() {
283
- return (h(Host, { key: '4d5467e45b173b365eba3fe507480bc87a0001f7', class: {
283
+ return (h(Host, { key: 'bbe8b532b3e08c777c35e0af55486b59b5b8e44c', class: {
284
284
  ["ic-popover-menu-open"]: !!this.open,
285
285
  [`ic-theme-${this.theme}`]: this.theme !== "inherit",
286
- } }, h("div", { key: '96ffeae7beede0b8a48e96dcbb262a5092974fd0', id: this.parentPopover === undefined
286
+ } }, h("div", { key: 'a72a96633961efb668c7c8aae3fcb3b142c7b128', id: this.parentPopover === undefined
287
287
  ? `ic-popover-submenu-${this.submenuId}`
288
288
  : "", class: {
289
289
  menu: true,
290
- } }, h("span", { key: '84b9c30b0377109233bb0135c68acd6419b1aa55', class: {
290
+ } }, h("span", { key: '06b147e629909bbb74f4f1e01e825d39dcbab395', class: {
291
291
  "opening-from-parent": this.openingFromParent,
292
292
  "opening-from-child": this.openingFromChild,
293
- } }, isPropDefined(this.submenuId) && (h("span", { key: 'cd6eaf24a7e6ea400614da471083aaa75f164b98' }, h("span", { key: 'b7be64cdfaf3a94fcd36f3ea0e5c6bf475418268', role: "menu" }, h("ic-menu-item", { key: '9868fd30a311aadfe9663ce8617c620940760549', class: "ic-popover-submenu-back-button", ref: (el) => (this.backButton = el), label: "Back", onClick: this.handleBackButtonClick, id: `ic-popover-submenu-back-button-${this.submenuLevel}` }, h("svg", { key: '5655f052a203d6b0d0c5c2182ec6339741691311', slot: "icon", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", class: "submenu-back-icon" }, h("path", { key: 'b804bfa5d3cbfcf37322e19d5978875088e85d97', d: "M20 11H7.83L13.42 5.41L12 4L4 12L12 20L13.41 18.59L7.83 13H20V11Z", fill: "currentColor" })))), h("ic-typography", { key: '3cd5e496d8af145ebb77fe49f4637826dbf4c2ff', variant: "subtitle-small", class: "parent-label" }, this.parentLabel))), h("div", { key: '6249765618e71a536ed2ea67bc9ef31ba24cf7ff', class: "menu-body", "aria-label": this.getMenuAriaLabel(), role: "menu" }, h("slot", { key: 'c175948ff00694bad8419f4738bc82a469c2b53a' }))))));
293
+ } }, isPropDefined(this.submenuId) && (h("span", { key: '088ce8abcf89df38016507d521381e081ade4759' }, h("span", { key: '1bebbc5854c2edd5207633c01bee4a6e887c03a0', role: "menu" }, h("ic-menu-item", { key: '317fe27583c8bc0d41319ac634a4bff22b1c5e2d', class: "ic-popover-submenu-back-button", ref: (el) => (this.backButton = el), label: "Back", onClick: this.handleBackButtonClick, id: `ic-popover-submenu-back-button-${this.submenuLevel}` }, h("svg", { key: '02d9719c84180f8832a26d75cd652c55070b6289', slot: "icon", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", class: "submenu-back-icon" }, h("path", { key: '906a7a797d99a3e8f0a7a3b30d3e33a52ca2582c', d: "M20 11H7.83L13.42 5.41L12 4L4 12L12 20L13.41 18.59L7.83 13H20V11Z", fill: "currentColor" })))), h("ic-typography", { key: 'ee0152debc2b109787490b4a78e1de3f8186ae5e', variant: "subtitle-small", class: "parent-label" }, this.parentLabel))), h("div", { key: 'f91d5f08c8142136b4bb2c1fbd513ee13fbbd263', class: "menu-body", "aria-label": this.getMenuAriaLabel(), role: "menu" }, h("slot", { key: '55417e47588809089b7ba71e510336d79ba69ac3' }))))));
294
294
  }
295
295
  static get delegatesFocus() { return true; }
296
296
  get el() { return getElement(this); }
@@ -234,16 +234,16 @@ const RadioGroup = class {
234
234
  render() {
235
235
  const { currentOrientation, disabled, handleKeyDown, helperText, hideLabel, label, required, size, validationAriaLive, validationStatus, validationText, theme, } = this;
236
236
  const showValidation = hasValidationStatus(validationStatus, disabled);
237
- return (h(Host, { key: '4ea2e0ca7614fb4ce6563ea146f86d72707a399a', onKeyDown: handleKeyDown, class: {
237
+ return (h(Host, { key: 'aa0ff707b50765535bf74bb77f349b1fdf8ec5c2', onKeyDown: handleKeyDown, class: {
238
238
  "ic-radio-group-small": size === "small",
239
239
  [`ic-theme-${theme}`]: theme !== "inherit",
240
- } }, h("fieldset", { key: 'ebad7a878454455a15892bf53c43bdcb914b77c4', role: "radiogroup", id: this.name, "aria-required": `${required}` }, !hideLabel && (h("legend", { key: 'aac1f37c7b1d4d5bc621bd3030dc9eef60417659' }, h("ic-input-label", { key: 'fd04e3f74c89b633996eb22e60902e988a8ac8ef', class: {
240
+ } }, h("fieldset", { key: '0c4dab92df1c01348afbe3ccdd6e66d32aaefef9', role: "radiogroup", id: this.name, "aria-required": `${required}` }, !hideLabel && (h("legend", { key: '37ebeeb2b43fcb8628327deefb00ce2742c6a026' }, h("ic-input-label", { key: '2a587dc242e293992e41bdbb523ac8414b8c4fac', class: {
241
241
  [`${validationStatus}`]: true,
242
242
  ["disabled"]: !!disabled,
243
- }, label: label, helperText: helperText, required: required, disabled: disabled }, h("slot", { key: '66325d58018dff189c975e3e4fc01249b51b6b9f', name: "helper-text", slot: "helper-text" })))), h("div", { key: '6d2d332396c87b798d5d160bdb5977c0a8ad6751', class: {
243
+ }, label: label, helperText: helperText, required: required, disabled: disabled }, h("slot", { key: '28611e725b177c6b7f8456668c33d3162830eb29', name: "helper-text", slot: "helper-text" })))), h("div", { key: 'd53f2e859088f0c208c2aab94442322d8a1bad0e', class: {
244
244
  "radio-buttons-container": true,
245
245
  horizontal: currentOrientation === this.RADIO_HORIZONTAL,
246
- }, ref: (el) => (this.radioContainer = el) }, h("slot", { key: 'fb0a1b41503ba88ce9bda3c0bc8236ae0a7e3795' }))), h("ic-input-validation", { key: 'f9f7c2bdffd83d705149f74fe2caad93e57dd85b', class: {
246
+ }, ref: (el) => (this.radioContainer = el) }, h("slot", { key: 'bbffd83c1b277c2ca55a7e97254ba0a322008c34' }))), h("ic-input-validation", { key: '67ca41fbf8ce4265a5a979cdca100edb2f4e4c41', class: {
247
247
  "show-validation": showValidation,
248
248
  }, ariaLiveMode: validationAriaLive, status: showValidation ? validationStatus : "", message: showValidation ? validationText : "" })));
249
249
  }
@@ -145,17 +145,17 @@ const RadioOption = class {
145
145
  var _a, _b;
146
146
  const { additionalFieldDisplay, disabled, dynamicText, form, groupLabel, handleClick, handleKeyDown, hasAdditionalField, label, name, selected, value, theme, } = this;
147
147
  const id = `ic-radio-option-${isPropDefined(label) || value}-${groupLabel}`;
148
- return (h(Host, { key: '0a7177993a68c85ed54198b8ee213811aa2e130a', onClick: handleClick, onKeyDown: handleKeyDown, class: {
148
+ return (h(Host, { key: '842d6ee4010fd07100af0f2a7a5b22b4f3d836fb', onClick: handleClick, onKeyDown: handleKeyDown, class: {
149
149
  ["ic-radio-option-disabled"]: !!disabled,
150
150
  [`ic-theme-${theme}`]: theme !== "inherit",
151
151
  ["ic-radio-option-small"]: ((_a = this.el.parentElement) === null || _a === void 0 ? void 0 : _a.tagName) === "IC-RADIO-GROUP" &&
152
152
  ((_b = this.el.parentElement) === null || _b === void 0 ? void 0 : _b.className.includes("ic-radio-group-small")),
153
- } }, h("div", { key: '64bac9a6440919352131dc732648034a90d7e92e', class: { "radio-option-container": true, disabled: !!disabled } }, h("div", { key: '419dc17817ca4c9945025268e0e00de83db01790' }, h("input", { key: '0885bab10d42cd69eda2e0d78702c6c2afcff615', tabindex: selected ? "0" : "-1", type: "radio", name: name, id: id, value: value, disabled: disabled, checked: selected, ref: (el) => (this.radioElement = el), form: form }), h("span", { key: 'df142dc79e23d240abd15f5088d703b6d388456b', class: "checkmark" })), h("ic-typography", { key: '4d5a779bbef4ccb65fbe7ebf6b3aeceafb9227e0', class: "radio-label", variant: "body" }, h("label", { key: '6d2778eb36c462f3c7fa25ed9ae5d8733b0fcb20', htmlFor: id }, label))), hasAdditionalField && (h("div", { key: '9772fd4d064854c3db492f430b90098eccd13701', class: {
153
+ } }, h("div", { key: '24311226c7c0cbd0edc9c863a4a4dadcb58510dd', class: { "radio-option-container": true, disabled: !!disabled } }, h("div", { key: '368c7613d16ba7c0d41af81ec0921acabd11e0ac' }, h("input", { key: '9abba6cd1bc6837c28e4e3daff9d78030a855dc8', tabindex: selected ? "0" : "-1", type: "radio", name: name, id: id, value: value, disabled: disabled, checked: selected, ref: (el) => (this.radioElement = el), form: form }), h("span", { key: '99b68e349ed11e7c01768b2bc2b38ee20cc8c736', class: "checkmark" })), h("ic-typography", { key: '751eb546666f87c6bf64cb93ca1d77e8caf67d85', class: "radio-label", variant: "body" }, h("label", { key: 'd02d6a7935bf2b6c145662bc553e6ef44f3c4c6a', htmlFor: id }, label))), hasAdditionalField && (h("div", { key: '3e499a794defaac875630287978618da86056347', class: {
154
154
  "dynamic-container": true,
155
155
  hidden: additionalFieldDisplay === "dynamic" && !selected,
156
- } }, additionalFieldDisplay === "dynamic" && (h("div", { key: 'a237b8043bf912d5fb1be67014ae0bde41c5a2a4', class: "branch-corner" })), h("div", { key: '70524014fa4d75197460d321f47824ab20503806' }, additionalFieldDisplay === "dynamic" && (h("ic-typography", { key: '2f652884ff6ac334fd6cb688e52d05d0bdabf3de', variant: "caption", role: "alert" }, h("p", { key: '36cc2915b063c8d85e61dd18a3c384460b996d4f', class: "dynamic-text" }, dynamicText))), h("div", { key: 'd8386ddb6c70fd7893544d3c6d1720b349bb378b', class: {
156
+ } }, additionalFieldDisplay === "dynamic" && (h("div", { key: '763ee0f91c7d4c045db9b8dc21851fa9d58db461', class: "branch-corner" })), h("div", { key: 'b44eb2a57738c64725b8abf508576e78ee81d58c' }, additionalFieldDisplay === "dynamic" && (h("ic-typography", { key: '7055f52337754005334d29d7faba936eee41db56', variant: "caption", role: "alert" }, h("p", { key: 'fb35ff368ed7b18196efe93be58105e0ab993c85', class: "dynamic-text" }, dynamicText))), h("div", { key: 'f52cb49783fcf0d721534e2ff948b4f3098b81fb', class: {
157
157
  [`additional-field-wrapper-${additionalFieldDisplay}`]: true,
158
- } }, h("slot", { key: 'f9b72315938873b57c52af87730ee72b24a413af', name: ADDITIONAL_FIELD })))))));
158
+ } }, h("slot", { key: '36ddd67708c686617463703a0fb765a517809062', name: ADDITIONAL_FIELD })))))));
159
159
  }
160
160
  get el() { return getElement(this); }
161
161
  static get watchers() { return {