@ukic/canary-web-components 3.0.0-canary.26 → 3.0.0-canary.28

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 (458) hide show
  1. package/dist/cjs/common-helpers-944cb54d.js +21 -0
  2. package/dist/cjs/common-helpers-944cb54d.js.map +1 -0
  3. package/dist/cjs/core.cjs.js +1 -1
  4. package/dist/cjs/{helpers-b55826ba.js → helpers-046745ee.js} +3 -1
  5. package/dist/cjs/helpers-046745ee.js.map +1 -0
  6. package/dist/cjs/helpers-da852478.js.map +1 -1
  7. package/dist/cjs/ic-accordion-group.cjs.entry.js +1 -1
  8. package/dist/cjs/ic-accordion.cjs.entry.js +1 -1
  9. package/dist/cjs/ic-action-chip.cjs.entry.js +1 -1
  10. package/dist/cjs/ic-alert.cjs.entry.js +4 -4
  11. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ic-back-to-top.cjs.entry.js +1 -1
  13. package/dist/cjs/ic-badge.cjs.entry.js +1 -1
  14. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +1 -1
  15. package/dist/cjs/ic-breadcrumb.cjs.entry.js +1 -1
  16. package/dist/cjs/ic-button_3.cjs.entry.js +1 -1
  17. package/dist/cjs/ic-card-vertical.cjs.entry.js +1 -1
  18. package/dist/cjs/ic-checkbox-group.cjs.entry.js +12 -5
  19. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  20. package/dist/cjs/ic-checkbox_3.cjs.entry.js +35 -23
  21. package/dist/cjs/ic-checkbox_3.cjs.entry.js.map +1 -1
  22. package/dist/cjs/ic-chip.cjs.entry.js +6 -5
  23. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  24. package/dist/cjs/ic-data-row.cjs.entry.js +1 -1
  25. package/dist/cjs/ic-data-table.cjs.entry.js +13 -13
  26. package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ic-date-input.cjs.entry.js +9 -5
  28. package/dist/cjs/ic-date-input.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ic-date-picker.cjs.entry.js +15 -10
  30. package/dist/cjs/ic-date-picker.cjs.entry.js.map +1 -1
  31. package/dist/cjs/ic-dialog.cjs.entry.js +36 -11
  32. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  33. package/dist/cjs/ic-divider.cjs.entry.js +1 -1
  34. package/dist/cjs/ic-footer-link-group.cjs.entry.js +1 -1
  35. package/dist/cjs/ic-footer-link.cjs.entry.js +1 -1
  36. package/dist/cjs/ic-footer.cjs.entry.js +1 -1
  37. package/dist/cjs/ic-hero.cjs.entry.js +1 -1
  38. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +1 -1
  39. package/dist/cjs/ic-input-component-container_4.cjs.entry.js +7 -6
  40. package/dist/cjs/ic-input-component-container_4.cjs.entry.js.map +1 -1
  41. package/dist/cjs/ic-link.cjs.entry.js +1 -1
  42. package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
  43. package/dist/cjs/ic-menu-item.cjs.entry.js +1 -1
  44. package/dist/cjs/ic-menu.cjs.entry.js +29 -10
  45. package/dist/cjs/ic-menu.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ic-navigation-button.cjs.entry.js +1 -1
  47. package/dist/cjs/ic-navigation-group.cjs.entry.js +1 -1
  48. package/dist/cjs/ic-navigation-item.cjs.entry.js +2 -2
  49. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  50. package/dist/cjs/ic-navigation-menu.cjs.entry.js +1 -1
  51. package/dist/cjs/ic-page-header.cjs.entry.js +2 -2
  52. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ic-pagination_4.cjs.entry.js +23 -16
  54. package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
  55. package/dist/cjs/ic-popover-menu.cjs.entry.js +1 -1
  56. package/dist/cjs/ic-radio-group.cjs.entry.js +14 -7
  57. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  58. package/dist/cjs/ic-radio-option.cjs.entry.js +2 -2
  59. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ic-search-bar.cjs.entry.js +1 -1
  61. package/dist/cjs/ic-side-navigation.cjs.entry.js +1 -1
  62. package/dist/cjs/ic-status-tag.cjs.entry.js +2 -2
  63. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  64. package/dist/cjs/ic-step.cjs.entry.js +67 -54
  65. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  66. package/dist/cjs/ic-stepper.cjs.entry.js +21 -3
  67. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  68. package/dist/cjs/ic-switch.cjs.entry.js +1 -1
  69. package/dist/cjs/ic-tab-group.cjs.entry.js +1 -1
  70. package/dist/cjs/ic-tab.cjs.entry.js +1 -1
  71. package/dist/cjs/ic-theme.cjs.entry.js +1 -1
  72. package/dist/cjs/ic-time-input.cjs.entry.js +13 -9
  73. package/dist/cjs/ic-time-input.cjs.entry.js.map +1 -1
  74. package/dist/cjs/ic-toast.cjs.entry.js +1 -1
  75. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +1 -1
  76. package/dist/cjs/ic-toggle-button.cjs.entry.js +1 -1
  77. package/dist/cjs/ic-top-navigation.cjs.entry.js +2 -2
  78. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  79. package/dist/cjs/ic-tree-view.cjs.entry.js +6 -4
  80. package/dist/cjs/ic-tree-view.cjs.entry.js.map +1 -1
  81. package/dist/cjs/ic-typography.cjs.entry.js +1 -1
  82. package/dist/cjs/loader.cjs.js +1 -1
  83. package/dist/cjs/purify-039f565a.js +1365 -0
  84. package/dist/cjs/purify-039f565a.js.map +1 -0
  85. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js.map +1 -1
  86. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.stories.js.map +1 -1
  87. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.types.js.map +1 -1
  88. package/dist/collection/components/ic-data-table/ic-data-table.js +12 -13
  89. package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
  90. package/dist/collection/components/ic-data-table/ic-data-table.stories.js.map +1 -1
  91. package/dist/collection/components/ic-data-table/ic-data-table.types.js.map +1 -1
  92. package/dist/collection/components/ic-data-table/story-data.js +52 -21
  93. package/dist/collection/components/ic-data-table/story-data.js.map +1 -1
  94. package/dist/collection/components/ic-data-table/test/a11y/ic-data-table.test.a11y.js.map +1 -1
  95. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.js.map +1 -1
  96. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.stories.js.map +1 -1
  97. package/dist/collection/components/ic-data-table-title-bar/test/a11y/ic-data-table-title-bar.test.a11y.js.map +1 -1
  98. package/dist/collection/components/ic-date-input/ic-date-input.css +6 -0
  99. package/dist/collection/components/ic-date-input/ic-date-input.js +34 -4
  100. package/dist/collection/components/ic-date-input/ic-date-input.js.map +1 -1
  101. package/dist/collection/components/ic-date-input/ic-date-input.stories.js +81 -0
  102. package/dist/collection/components/ic-date-input/ic-date-input.stories.js.map +1 -1
  103. package/dist/collection/components/ic-date-input/story-data.js.map +1 -1
  104. package/dist/collection/components/ic-date-input/test/helpers/ic-date-input.js.map +1 -1
  105. package/dist/collection/components/ic-date-picker/ic-date-picker.js +41 -10
  106. package/dist/collection/components/ic-date-picker/ic-date-picker.js.map +1 -1
  107. package/dist/collection/components/ic-date-picker/ic-date-picker.stories.js.map +1 -1
  108. package/dist/collection/components/ic-date-picker/ic-day-button.js.map +1 -1
  109. package/dist/collection/components/ic-date-picker/ic-month-picker.js.map +1 -1
  110. package/dist/collection/components/ic-date-picker/ic-year-picker.js.map +1 -1
  111. package/dist/collection/components/ic-date-picker/story-data.js.map +1 -1
  112. package/dist/collection/components/ic-date-picker/test/a11y/ic-date-picker.test.a11y.js.map +1 -1
  113. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +43 -25
  114. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
  115. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.stories.js +1 -1
  116. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.stories.js.map +1 -1
  117. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.types.js.map +1 -1
  118. package/dist/collection/components/ic-pagination-bar/test/a11y/ic-pagination-bar.test.a11y.js.map +1 -1
  119. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents-item.js.map +1 -1
  120. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents.js.map +1 -1
  121. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents.stories.js.map +1 -1
  122. package/dist/collection/components/ic-table-of-contents/test/a11y/ic-table-of-contents.test.a11y.js.map +1 -1
  123. package/dist/collection/components/ic-time-input/ic-time-input.css +1 -1
  124. package/dist/collection/components/ic-time-input/ic-time-input.js +38 -8
  125. package/dist/collection/components/ic-time-input/ic-time-input.js.map +1 -1
  126. package/dist/collection/components/ic-time-input/ic-time-input.stories.js +82 -1
  127. package/dist/collection/components/ic-time-input/ic-time-input.stories.js.map +1 -1
  128. package/dist/collection/components/ic-time-input/test/helpers/ic-time-input.js.map +1 -1
  129. package/dist/collection/components/ic-tree-item/ic-tree-item.js.map +1 -1
  130. package/dist/collection/components/ic-tree-view/ic-tree-view.js +5 -4
  131. package/dist/collection/components/ic-tree-view/ic-tree-view.js.map +1 -1
  132. package/dist/collection/components/ic-tree-view/ic-tree-view.stories.js.map +1 -1
  133. package/dist/collection/components/ic-tree-view/ic-tree-view.types.js.map +1 -1
  134. package/dist/collection/index.js.map +1 -1
  135. package/dist/collection/utils/constants.js.map +1 -1
  136. package/dist/collection/utils/date-helpers.js.map +1 -1
  137. package/dist/collection/utils/helpers.js.map +1 -1
  138. package/dist/collection/utils/testa11y.helpers.js.map +1 -1
  139. package/dist/collection/utils/types.js.map +1 -1
  140. package/dist/components/common-helpers.js +19 -0
  141. package/dist/components/common-helpers.js.map +1 -0
  142. package/dist/components/helpers.js +2 -1
  143. package/dist/components/helpers.js.map +1 -1
  144. package/dist/components/helpers2.js.map +1 -1
  145. package/dist/components/ic-alert.js +3 -3
  146. package/dist/components/ic-alert.js.map +1 -1
  147. package/dist/components/ic-checkbox-group.js +12 -4
  148. package/dist/components/ic-checkbox-group.js.map +1 -1
  149. package/dist/components/ic-chip.js +5 -4
  150. package/dist/components/ic-chip.js.map +1 -1
  151. package/dist/components/ic-data-table.js +12 -13
  152. package/dist/components/ic-data-table.js.map +1 -1
  153. package/dist/components/ic-date-input2.js +10 -5
  154. package/dist/components/ic-date-input2.js.map +1 -1
  155. package/dist/components/ic-date-picker.js +16 -10
  156. package/dist/components/ic-date-picker.js.map +1 -1
  157. package/dist/components/ic-dialog.js +35 -10
  158. package/dist/components/ic-dialog.js.map +1 -1
  159. package/dist/components/ic-footer.js +1 -1
  160. package/dist/components/ic-horizontal-scroll2.js +1 -1
  161. package/dist/components/ic-input-validation2.js +6 -5
  162. package/dist/components/ic-input-validation2.js.map +1 -1
  163. package/dist/components/ic-menu2.js +29 -10
  164. package/dist/components/ic-menu2.js.map +1 -1
  165. package/dist/components/ic-navigation-button.js +1 -1
  166. package/dist/components/ic-navigation-group.js +1 -1
  167. package/dist/components/ic-navigation-item.js +2 -2
  168. package/dist/components/ic-navigation-item.js.map +1 -1
  169. package/dist/components/ic-navigation-menu2.js +1 -1
  170. package/dist/components/ic-page-header.js +1 -1
  171. package/dist/components/ic-page-header.js.map +1 -1
  172. package/dist/components/ic-pagination-bar2.js +34 -22
  173. package/dist/components/ic-pagination-bar2.js.map +1 -1
  174. package/dist/components/ic-pagination-item2.js +1 -1
  175. package/dist/components/ic-radio-group.js +14 -6
  176. package/dist/components/ic-radio-group.js.map +1 -1
  177. package/dist/components/ic-radio-option.js +1 -1
  178. package/dist/components/ic-radio-option.js.map +1 -1
  179. package/dist/components/ic-search-bar.js +1 -1
  180. package/dist/components/ic-select2.js +17 -9
  181. package/dist/components/ic-select2.js.map +1 -1
  182. package/dist/components/ic-side-navigation.js +1 -1
  183. package/dist/components/ic-status-tag.js +1 -1
  184. package/dist/components/ic-status-tag.js.map +1 -1
  185. package/dist/components/ic-step.js +67 -53
  186. package/dist/components/ic-step.js.map +1 -1
  187. package/dist/components/ic-stepper.js +21 -2
  188. package/dist/components/ic-stepper.js.map +1 -1
  189. package/dist/components/ic-text-field2.js +9 -9
  190. package/dist/components/ic-text-field2.js.map +1 -1
  191. package/dist/components/ic-theme.js +1 -1
  192. package/dist/components/ic-time-input.js +14 -9
  193. package/dist/components/ic-time-input.js.map +1 -1
  194. package/dist/components/ic-toast.js +1 -1
  195. package/dist/components/ic-toggle-button.js +1 -1
  196. package/dist/components/ic-top-navigation.js +2 -2
  197. package/dist/components/ic-top-navigation.js.map +1 -1
  198. package/dist/components/ic-tree-view.js +5 -4
  199. package/dist/components/ic-tree-view.js.map +1 -1
  200. package/dist/components/purify.js +1363 -0
  201. package/dist/components/purify.js.map +1 -0
  202. package/dist/core/core.css +6 -6
  203. package/dist/core/core.esm.js +1 -1
  204. package/dist/core/core.esm.js.map +1 -1
  205. package/dist/core/{p-20f248be.entry.js → p-05e0cadf.entry.js} +2 -2
  206. package/dist/core/{p-b8cb867c.entry.js → p-07365d6f.entry.js} +2 -2
  207. package/dist/core/{p-a7bc9a19.entry.js → p-0b0cc10d.entry.js} +2 -2
  208. package/dist/core/p-0f22f41e.js.map +1 -1
  209. package/dist/core/p-1131db25.entry.js +2 -0
  210. package/dist/core/p-1131db25.entry.js.map +1 -0
  211. package/dist/core/{p-9f5a1473.entry.js → p-154bb0fb.entry.js} +2 -2
  212. package/dist/core/p-154bb0fb.entry.js.map +1 -0
  213. package/dist/core/{p-3414247d.entry.js → p-18b793e0.entry.js} +2 -2
  214. package/dist/core/p-1d89fcda.entry.js +2 -0
  215. package/dist/core/p-1d89fcda.entry.js.map +1 -0
  216. package/dist/core/{p-fc125ca6.entry.js → p-266d5e13.entry.js} +2 -2
  217. package/dist/core/p-2bba11f8.entry.js +2 -0
  218. package/dist/core/{p-c08ea34d.entry.js.map → p-2bba11f8.entry.js.map} +1 -1
  219. package/dist/core/{p-570ff466.entry.js → p-2f0ab1d0.entry.js} +2 -2
  220. package/dist/core/p-349d91dc.js +3 -0
  221. package/dist/core/p-349d91dc.js.map +1 -0
  222. package/dist/core/p-479e5fa2.entry.js +2 -0
  223. package/dist/core/p-479e5fa2.entry.js.map +1 -0
  224. package/dist/core/p-4c5af5f7.entry.js +2 -0
  225. package/dist/core/p-4c5af5f7.entry.js.map +1 -0
  226. package/dist/core/p-542ac498.js +2 -0
  227. package/dist/core/p-542ac498.js.map +1 -0
  228. package/dist/core/{p-4fa1a80f.entry.js → p-54da2d5f.entry.js} +2 -2
  229. package/dist/core/{p-6a884eef.entry.js → p-553531bf.entry.js} +2 -2
  230. package/dist/core/p-5bc54721.entry.js +2 -0
  231. package/dist/core/p-5bc54721.entry.js.map +1 -0
  232. package/dist/core/p-62ad6ce5.entry.js +2 -0
  233. package/dist/core/p-62ad6ce5.entry.js.map +1 -0
  234. package/dist/core/{p-8bb49790.entry.js → p-656b92d7.entry.js} +2 -2
  235. package/dist/core/{p-b12c4643.entry.js → p-66f45822.entry.js} +2 -2
  236. package/dist/core/p-66f45822.entry.js.map +1 -0
  237. package/dist/core/{p-a0c361ec.entry.js → p-6addd986.entry.js} +2 -2
  238. package/dist/core/{p-c7a97221.entry.js → p-6d4418e4.entry.js} +2 -2
  239. package/dist/core/{p-9c491db1.entry.js → p-6e5fc63c.entry.js} +2 -2
  240. package/dist/core/{p-d6a1b39c.entry.js → p-70447473.entry.js} +2 -2
  241. package/dist/core/p-74439163.entry.js +2 -0
  242. package/dist/core/p-74439163.entry.js.map +1 -0
  243. package/dist/core/p-760a57e7.entry.js +2 -0
  244. package/dist/core/p-760a57e7.entry.js.map +1 -0
  245. package/dist/core/p-76ab72ef.entry.js +2 -0
  246. package/dist/core/p-76ab72ef.entry.js.map +1 -0
  247. package/dist/core/{p-17423822.entry.js → p-77c4d1d2.entry.js} +2 -2
  248. package/dist/core/{p-4479c7e7.entry.js → p-796b9ac5.entry.js} +2 -2
  249. package/dist/core/{p-09c0961a.entry.js → p-7986db4a.entry.js} +2 -2
  250. package/dist/core/p-8b0abe0f.entry.js +2 -0
  251. package/dist/core/p-8b0abe0f.entry.js.map +1 -0
  252. package/dist/core/{p-f4b08cdb.entry.js → p-8b4a7a78.entry.js} +2 -2
  253. package/dist/core/p-8b8df1da.entry.js +2 -0
  254. package/dist/core/p-8b8df1da.entry.js.map +1 -0
  255. package/dist/core/{p-b95d99c7.entry.js → p-8c841dc8.entry.js} +2 -2
  256. package/dist/core/{p-55934942.entry.js → p-94e5ed81.entry.js} +2 -2
  257. package/dist/core/{p-b5dd226f.entry.js → p-9af5008c.entry.js} +2 -2
  258. package/dist/core/{p-7821c7dc.entry.js → p-9b68bee6.entry.js} +2 -2
  259. package/dist/core/p-9fa329f2.entry.js +2 -0
  260. package/dist/core/p-9fa329f2.entry.js.map +1 -0
  261. package/dist/core/{p-98286c35.entry.js → p-a4184f39.entry.js} +2 -2
  262. package/dist/core/p-a4184f39.entry.js.map +1 -0
  263. package/dist/core/p-a422b778.js +2 -0
  264. package/dist/core/p-a422b778.js.map +1 -0
  265. package/dist/core/{p-30a2abe9.entry.js → p-a7a572d9.entry.js} +2 -2
  266. package/dist/core/{p-3bb4ea35.entry.js → p-a86756fa.entry.js} +2 -2
  267. package/dist/core/p-b7a726fb.entry.js +2 -0
  268. package/dist/core/p-b7a726fb.entry.js.map +1 -0
  269. package/dist/core/{p-d3eb3356.entry.js → p-ba26a1f0.entry.js} +2 -2
  270. package/dist/core/{p-d3b9c04b.entry.js → p-bad17ba7.entry.js} +2 -2
  271. package/dist/core/p-bc58e37e.entry.js +2 -0
  272. package/dist/core/p-bc58e37e.entry.js.map +1 -0
  273. package/dist/core/{p-9ad64b6f.entry.js → p-bf08d34c.entry.js} +2 -2
  274. package/dist/core/{p-b2c49dfd.entry.js → p-bf5558ac.entry.js} +2 -2
  275. package/dist/core/{p-d143aa70.entry.js → p-c1ae14ad.entry.js} +2 -2
  276. package/dist/core/{p-a8d934fe.entry.js → p-c5d03c65.entry.js} +2 -2
  277. package/dist/core/{p-a8d934fe.entry.js.map → p-c5d03c65.entry.js.map} +1 -1
  278. package/dist/core/p-d4a1e90d.entry.js +2 -0
  279. package/dist/core/p-d4a1e90d.entry.js.map +1 -0
  280. package/dist/core/{p-92f199b0.entry.js → p-d77981a5.entry.js} +2 -2
  281. package/dist/core/{p-f5cc4e94.entry.js → p-e8cea1d5.entry.js} +2 -2
  282. package/dist/core/{p-5534bb37.entry.js → p-f591abc2.entry.js} +2 -2
  283. package/dist/core/p-f6209622.entry.js +2 -0
  284. package/dist/core/p-f6209622.entry.js.map +1 -0
  285. package/dist/core/{p-e435052b.entry.js → p-fba9f5b6.entry.js} +2 -2
  286. package/dist/core/{p-0fffe635.entry.js → p-ff4a873e.entry.js} +2 -2
  287. package/dist/esm/common-helpers-86c07ff1.js +19 -0
  288. package/dist/esm/common-helpers-86c07ff1.js.map +1 -0
  289. package/dist/esm/core.js +1 -1
  290. package/dist/esm/{helpers-fee7d348.js → helpers-1dbd527e.js} +3 -2
  291. package/dist/esm/helpers-1dbd527e.js.map +1 -0
  292. package/dist/esm/helpers-89cb996d.js.map +1 -1
  293. package/dist/esm/ic-accordion-group.entry.js +1 -1
  294. package/dist/esm/ic-accordion.entry.js +1 -1
  295. package/dist/esm/ic-action-chip.entry.js +1 -1
  296. package/dist/esm/ic-alert.entry.js +4 -4
  297. package/dist/esm/ic-alert.entry.js.map +1 -1
  298. package/dist/esm/ic-back-to-top.entry.js +1 -1
  299. package/dist/esm/ic-badge.entry.js +1 -1
  300. package/dist/esm/ic-breadcrumb-group.entry.js +1 -1
  301. package/dist/esm/ic-breadcrumb.entry.js +1 -1
  302. package/dist/esm/ic-button_3.entry.js +1 -1
  303. package/dist/esm/ic-card-vertical.entry.js +1 -1
  304. package/dist/esm/ic-checkbox-group.entry.js +12 -5
  305. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  306. package/dist/esm/ic-checkbox_3.entry.js +35 -23
  307. package/dist/esm/ic-checkbox_3.entry.js.map +1 -1
  308. package/dist/esm/ic-chip.entry.js +6 -5
  309. package/dist/esm/ic-chip.entry.js.map +1 -1
  310. package/dist/esm/ic-data-row.entry.js +1 -1
  311. package/dist/esm/ic-data-table.entry.js +13 -13
  312. package/dist/esm/ic-data-table.entry.js.map +1 -1
  313. package/dist/esm/ic-date-input.entry.js +9 -5
  314. package/dist/esm/ic-date-input.entry.js.map +1 -1
  315. package/dist/esm/ic-date-picker.entry.js +15 -10
  316. package/dist/esm/ic-date-picker.entry.js.map +1 -1
  317. package/dist/esm/ic-dialog.entry.js +36 -11
  318. package/dist/esm/ic-dialog.entry.js.map +1 -1
  319. package/dist/esm/ic-divider.entry.js +1 -1
  320. package/dist/esm/ic-footer-link-group.entry.js +1 -1
  321. package/dist/esm/ic-footer-link.entry.js +1 -1
  322. package/dist/esm/ic-footer.entry.js +1 -1
  323. package/dist/esm/ic-hero.entry.js +1 -1
  324. package/dist/esm/ic-horizontal-scroll.entry.js +1 -1
  325. package/dist/esm/ic-input-component-container_4.entry.js +7 -6
  326. package/dist/esm/ic-input-component-container_4.entry.js.map +1 -1
  327. package/dist/esm/ic-link.entry.js +1 -1
  328. package/dist/esm/ic-menu-group.entry.js +1 -1
  329. package/dist/esm/ic-menu-item.entry.js +1 -1
  330. package/dist/esm/ic-menu.entry.js +29 -10
  331. package/dist/esm/ic-menu.entry.js.map +1 -1
  332. package/dist/esm/ic-navigation-button.entry.js +1 -1
  333. package/dist/esm/ic-navigation-group.entry.js +1 -1
  334. package/dist/esm/ic-navigation-item.entry.js +2 -2
  335. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  336. package/dist/esm/ic-navigation-menu.entry.js +1 -1
  337. package/dist/esm/ic-page-header.entry.js +2 -2
  338. package/dist/esm/ic-page-header.entry.js.map +1 -1
  339. package/dist/esm/ic-pagination_4.entry.js +23 -16
  340. package/dist/esm/ic-pagination_4.entry.js.map +1 -1
  341. package/dist/esm/ic-popover-menu.entry.js +1 -1
  342. package/dist/esm/ic-radio-group.entry.js +14 -7
  343. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  344. package/dist/esm/ic-radio-option.entry.js +2 -2
  345. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  346. package/dist/esm/ic-search-bar.entry.js +1 -1
  347. package/dist/esm/ic-side-navigation.entry.js +1 -1
  348. package/dist/esm/ic-status-tag.entry.js +2 -2
  349. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  350. package/dist/esm/ic-step.entry.js +67 -54
  351. package/dist/esm/ic-step.entry.js.map +1 -1
  352. package/dist/esm/ic-stepper.entry.js +21 -3
  353. package/dist/esm/ic-stepper.entry.js.map +1 -1
  354. package/dist/esm/ic-switch.entry.js +1 -1
  355. package/dist/esm/ic-tab-group.entry.js +1 -1
  356. package/dist/esm/ic-tab.entry.js +1 -1
  357. package/dist/esm/ic-theme.entry.js +1 -1
  358. package/dist/esm/ic-time-input.entry.js +13 -9
  359. package/dist/esm/ic-time-input.entry.js.map +1 -1
  360. package/dist/esm/ic-toast.entry.js +1 -1
  361. package/dist/esm/ic-toggle-button-group.entry.js +1 -1
  362. package/dist/esm/ic-toggle-button.entry.js +1 -1
  363. package/dist/esm/ic-top-navigation.entry.js +2 -2
  364. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  365. package/dist/esm/ic-tree-view.entry.js +6 -4
  366. package/dist/esm/ic-tree-view.entry.js.map +1 -1
  367. package/dist/esm/ic-typography.entry.js +1 -1
  368. package/dist/esm/loader.js +1 -1
  369. package/dist/esm/purify-6eaa9893.js +1363 -0
  370. package/dist/esm/purify-6eaa9893.js.map +1 -0
  371. package/dist/types/components/ic-data-table/story-data.d.ts +0 -9
  372. package/dist/types/components/ic-date-input/ic-date-input.d.ts +5 -1
  373. package/dist/types/components/ic-date-input/ic-date-input.stories.d.ts +15 -9
  374. package/dist/types/components/ic-date-picker/ic-date-picker.d.ts +5 -1
  375. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.d.ts +3 -4
  376. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.types.d.ts +4 -0
  377. package/dist/types/components/ic-time-input/ic-time-input.d.ts +5 -1
  378. package/dist/types/components/ic-time-input/ic-time-input.stories.d.ts +14 -8
  379. package/dist/types/components.d.ts +30 -6
  380. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/utils/common-helpers.d.ts +2 -0
  381. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/utils/constants.d.ts +44 -0
  382. package/dist/types/utils/types.d.ts +6 -2
  383. package/hydrate/index.js +1683 -180
  384. package/hydrate/index.mjs +1683 -180
  385. package/package.json +3 -3
  386. package/dist/cjs/helpers-b55826ba.js.map +0 -1
  387. package/dist/core/p-25d21dbd.entry.js +0 -2
  388. package/dist/core/p-25d21dbd.entry.js.map +0 -1
  389. package/dist/core/p-318c6a4c.entry.js +0 -2
  390. package/dist/core/p-318c6a4c.entry.js.map +0 -1
  391. package/dist/core/p-3bee8f39.entry.js +0 -2
  392. package/dist/core/p-3bee8f39.entry.js.map +0 -1
  393. package/dist/core/p-4eb74281.entry.js +0 -2
  394. package/dist/core/p-4eb74281.entry.js.map +0 -1
  395. package/dist/core/p-514c4401.entry.js +0 -2
  396. package/dist/core/p-514c4401.entry.js.map +0 -1
  397. package/dist/core/p-587d704d.entry.js +0 -2
  398. package/dist/core/p-587d704d.entry.js.map +0 -1
  399. package/dist/core/p-816aae93.entry.js +0 -2
  400. package/dist/core/p-816aae93.entry.js.map +0 -1
  401. package/dist/core/p-9810080e.entry.js +0 -2
  402. package/dist/core/p-9810080e.entry.js.map +0 -1
  403. package/dist/core/p-98286c35.entry.js.map +0 -1
  404. package/dist/core/p-9c8070a1.entry.js +0 -2
  405. package/dist/core/p-9c8070a1.entry.js.map +0 -1
  406. package/dist/core/p-9f5a1473.entry.js.map +0 -1
  407. package/dist/core/p-aaa6d8e1.entry.js +0 -2
  408. package/dist/core/p-aaa6d8e1.entry.js.map +0 -1
  409. package/dist/core/p-b0462734.entry.js +0 -2
  410. package/dist/core/p-b0462734.entry.js.map +0 -1
  411. package/dist/core/p-b12c4643.entry.js.map +0 -1
  412. package/dist/core/p-c039a175.entry.js +0 -2
  413. package/dist/core/p-c039a175.entry.js.map +0 -1
  414. package/dist/core/p-c08ea34d.entry.js +0 -2
  415. package/dist/core/p-c95be271.entry.js +0 -2
  416. package/dist/core/p-c95be271.entry.js.map +0 -1
  417. package/dist/core/p-cd3f12ad.entry.js +0 -2
  418. package/dist/core/p-cd3f12ad.entry.js.map +0 -1
  419. package/dist/core/p-d7c44cce.entry.js +0 -2
  420. package/dist/core/p-d7c44cce.entry.js.map +0 -1
  421. package/dist/core/p-ee95905f.js +0 -2
  422. package/dist/core/p-ee95905f.js.map +0 -1
  423. package/dist/core/p-f6772530.entry.js +0 -2
  424. package/dist/core/p-f6772530.entry.js.map +0 -1
  425. package/dist/esm/helpers-fee7d348.js.map +0 -1
  426. /package/dist/core/{p-20f248be.entry.js.map → p-05e0cadf.entry.js.map} +0 -0
  427. /package/dist/core/{p-b8cb867c.entry.js.map → p-07365d6f.entry.js.map} +0 -0
  428. /package/dist/core/{p-a7bc9a19.entry.js.map → p-0b0cc10d.entry.js.map} +0 -0
  429. /package/dist/core/{p-3414247d.entry.js.map → p-18b793e0.entry.js.map} +0 -0
  430. /package/dist/core/{p-fc125ca6.entry.js.map → p-266d5e13.entry.js.map} +0 -0
  431. /package/dist/core/{p-570ff466.entry.js.map → p-2f0ab1d0.entry.js.map} +0 -0
  432. /package/dist/core/{p-4fa1a80f.entry.js.map → p-54da2d5f.entry.js.map} +0 -0
  433. /package/dist/core/{p-6a884eef.entry.js.map → p-553531bf.entry.js.map} +0 -0
  434. /package/dist/core/{p-8bb49790.entry.js.map → p-656b92d7.entry.js.map} +0 -0
  435. /package/dist/core/{p-a0c361ec.entry.js.map → p-6addd986.entry.js.map} +0 -0
  436. /package/dist/core/{p-c7a97221.entry.js.map → p-6d4418e4.entry.js.map} +0 -0
  437. /package/dist/core/{p-9c491db1.entry.js.map → p-6e5fc63c.entry.js.map} +0 -0
  438. /package/dist/core/{p-d6a1b39c.entry.js.map → p-70447473.entry.js.map} +0 -0
  439. /package/dist/core/{p-17423822.entry.js.map → p-77c4d1d2.entry.js.map} +0 -0
  440. /package/dist/core/{p-4479c7e7.entry.js.map → p-796b9ac5.entry.js.map} +0 -0
  441. /package/dist/core/{p-09c0961a.entry.js.map → p-7986db4a.entry.js.map} +0 -0
  442. /package/dist/core/{p-f4b08cdb.entry.js.map → p-8b4a7a78.entry.js.map} +0 -0
  443. /package/dist/core/{p-b95d99c7.entry.js.map → p-8c841dc8.entry.js.map} +0 -0
  444. /package/dist/core/{p-55934942.entry.js.map → p-94e5ed81.entry.js.map} +0 -0
  445. /package/dist/core/{p-b5dd226f.entry.js.map → p-9af5008c.entry.js.map} +0 -0
  446. /package/dist/core/{p-7821c7dc.entry.js.map → p-9b68bee6.entry.js.map} +0 -0
  447. /package/dist/core/{p-30a2abe9.entry.js.map → p-a7a572d9.entry.js.map} +0 -0
  448. /package/dist/core/{p-3bb4ea35.entry.js.map → p-a86756fa.entry.js.map} +0 -0
  449. /package/dist/core/{p-d3eb3356.entry.js.map → p-ba26a1f0.entry.js.map} +0 -0
  450. /package/dist/core/{p-d3b9c04b.entry.js.map → p-bad17ba7.entry.js.map} +0 -0
  451. /package/dist/core/{p-9ad64b6f.entry.js.map → p-bf08d34c.entry.js.map} +0 -0
  452. /package/dist/core/{p-b2c49dfd.entry.js.map → p-bf5558ac.entry.js.map} +0 -0
  453. /package/dist/core/{p-d143aa70.entry.js.map → p-c1ae14ad.entry.js.map} +0 -0
  454. /package/dist/core/{p-92f199b0.entry.js.map → p-d77981a5.entry.js.map} +0 -0
  455. /package/dist/core/{p-f5cc4e94.entry.js.map → p-e8cea1d5.entry.js.map} +0 -0
  456. /package/dist/core/{p-5534bb37.entry.js.map → p-f591abc2.entry.js.map} +0 -0
  457. /package/dist/core/{p-e435052b.entry.js.map → p-fba9f5b6.entry.js.map} +0 -0
  458. /package/dist/core/{p-0fffe635.entry.js.map → p-ff4a873e.entry.js.map} +0 -0
@@ -1,2 +0,0 @@
1
- import{r as i,c as t,h as e,H as s,g as r}from"./p-8e4e97b4.js";import{b as h,q as a,t as o,u as n,r as c,v as l,w as d,o as u,x as p}from"./p-0f22f41e.js";import{C as f}from"./p-dd7450fb.js";const b=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><title>clock-outline</title><path d="M12,20A8,8 0 0,0 20,12A8,8 0 0,0 12,4A8,8 0 0,0 4,12A8,8 0 0,0 12,20M12,2A10,10 0 0,1 22,12A10,10 0 0,1 12,22C6.47,22 2,17.5 2,12A10,10 0 0,1 12,2M12.5,7V12.25L17,14.92L16.25,16.15L11,13V7H12.5Z" /></svg>`;const v='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{--ic-input-label-helpertext-padding:var(--ic-space-xs);--input-bg-color:var(--ic-time-picker-field-background);--ic-input-label-text-color:var(--ic-time-picker-label);--ic-input-label-helper-text-color:var(--ic-time-picker-subtitle);--border-color:var(--ic-time-picker-time-field-border-default);--border-color-disabled:var(--ic-time-picker-border-disabled);--border-color-hover:var(--ic-time-picker-time-field-border-hover);--border-color-pressed:var(--ic-time-picker-time-field-border-pressed);--border-error-color:var(--ic-time-picker-border-error);--border-error-color-hover:var(--ic-time-picker-border-error-hover);--border-error-color-pressed:var(--ic-time-picker-border-error-pressed);--border-success-color:var(--ic-time-picker-border-success);--border-success-color-hover:var(--ic-time-picker-border-success-hover);--border-success-color-pressed:var(--ic-time-picker-border-success-pressed);--border-warning-color:var(--ic-time-picker-border-warning);--border-warning-color-hover:var(--ic-time-picker-border-warning-hover);--border-warning-color-pressed:var(--ic-time-picker-border-warning-pressed);--input-width:calc((4 * var(--ic-space-xxl)) + var(--ic-space-xxs))}:host(.ic-time-input-disabled){--ic-input-label-text-color:var(--ic-time-picker-label-disabled);--ic-input-label-helper-text-color:var(--ic-time-picker-subtitle-disabled)}:host(.ic-time-input-disabled) input{color:var(--ic-time-picker-time-text-disabled)}:host(.ic-time-input-large){--input-width:calc(\n (4 * var(--ic-space-xxl)) + var(--ic-space-xxs) + var(--ic-space-lg)\n )}:host(.ic-time-input-small){--input-width:calc(\n (3 * var(--ic-space-xxl)) + var(--ic-space-xxs) + var(--ic-space-xl)\n )}input{border:0;height:100%;padding:0;outline:none;background:none;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield;color:var(--ic-time-picker-time-text-default);caret-color:var(--ic-time-picker-typing-cursor)}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none}input:-webkit-autofill{box-shadow:0 0 0 var(--ic-space-sm) var(--ic-color-background-primary) inset;-webkit-text-fill-color:var(--ic-time-picker-time-text-default) !important}input::-moz-placeholder{color:var(--ic-time-picker-field-placeholder-text)}input::placeholder{color:var(--ic-time-picker-field-placeholder-text)}ic-input-component-container{cursor:text}ic-input-component-container .focus-indicator{padding:var(--ic-space-xxxs) var(--ic-space-xs);align-items:center}.time-inputs{color:var(--ic-time-picker-field-placeholder-text)}.hour-input{width:1.438rem}.minute-input{width:1.813rem}.second-input,.second-input.fit-to-value{width:2.313rem}.fit-to-value{width:1.25rem}.sr-only{position:absolute;left:-9999px}.input-container{width:100%;display:flex;justify-content:space-between;align-items:center;position:relative}.action-buttons{display:flex;align-items:center}.show-clock-button-wrapper{display:flex;justify-content:center;align-items:center}.clear-button,.clock-button{border-radius:var(--ic-border-radius);transition:box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition);margin:0}.clear-button.hidden{display:none}.clear-button:focus,.clock-button:focus,.clear-button:active,.clock-button:active{background-color:var(--ic-color-focus-inner) !important;box-shadow:inset 0 0 0 0.125rem var(--ic-color-focus-outer) !important;border-radius:0.25rem}.clock-button:focus,.clock-button:active{--ic-button-tertiary-text-active:var(--ic-atoms-input-clear-button-focus);--ic-button-tertiary-text-hover-active:var(\n --ic-atoms-input-clear-button-focus\n );--ic-button-tertiary-text-pressed-active:var(\n --ic-atoms-input-clear-button-focus\n )}.clear-button:focus,.clock-button:focus,.clear-button:active *,.clock-button:active *{fill:var(--ic-atoms-input-clear-button-focus)}.clear-button svg{color:var(--ic-time-picker-clear-icon)}.clear-button:focus svg{color:var(--ic-atoms-input-clear-button-focus)}.divider{margin:0 var(--ic-space-xxs);width:var(--ic-space-1px);background-color:var(--ic-atoms-input-divider);border-radius:var(--ic-space-1px)}.divider.small{height:var(--ic-space-md)}.divider.medium{height:calc(var(--ic-space-sm) + var(--ic-space-xs))}.divider.large{height:var(--ic-space-lg)}ic-input-validation{--ic-input-validation-status-text-color:var(--ic-time-picker-status-text);--ic-input-validation-error:var(--ic-time-picker-icon-error);--ic-input-validation-warning-icon-color:var(--ic-time-picker-icon-warning);--ic-input-validation-success-icon-color:var(--ic-time-picker-icon-success)}@media (forced-colors: active){.clear-button svg{color:currentColor}}';const m=v;let k=0;const g=class{constructor(s){i(this,s);this.clockButtonClicked=t(this,"clockButtonClicked",7);this.icBlur=t(this,"icBlur",7);this.icChange=t(this,"icChange",7);this.icFocus=t(this,"icFocus",7);this.DEFAULT_TIME_FORMAT="HH:MM:SS";this.ARIA_INVALID="aria-invalid";this.ARIA_LABEL="aria-label";this.ARIA_LABELLED_BY="aria-labelledby";this.EVENT_OBJECT_STRING="[object Event]";this.FIT_TO_VALUE="fit-to-value";this.initialValue=this.value;this.inputsInOrder=[];this.isValidHour=true;this.isValidMinute=true;this.isValidSecond=true;this.isValidTime=true;this.isTimeSetFromKeyboardEvent=false;this.previousSelectedTime=null;this.selectedTime=null;this.externalSetTime=false;this.clearInput=false;this.maxTime=null;this.minTime=null;this.clockFocused=false;this.clearButtonFocused=false;this.removeLabelledBy=false;this.hour="";this.minute="";this.second="";this.disabled=false;this.disableTimes=[];this.emitTimePartChange=false;this.hideHelperText=false;this.hideLabel=false;this.inputId=`ic-time-input-${k++}`;this.invalidTimeMessage="Please enter a valid time.";this.max="";this.min="";this.name=this.inputId;this.required=false;this.showClearButton=true;this.showClockButton=false;this.size="medium";this.theme="inherit";this.timeFormat=this.DEFAULT_TIME_FORMAT;this.timePeriod="24";this.value="";this.validationStatus="";this.validationText="";this.setInputPasteValue=(i,t)=>{if(i){const e=i;e.value=t;e.classList.add(this.FIT_TO_VALUE)}};this.parseTime=i=>{if(!i)return null;if(i instanceof Date)return i;const t=i.split(":");if(t.length>=2){const i=new Date;i.setHours(+t[0],+t[1],t[2]?+t[2]:0,0);return i}return null};this.isHHMMFormat=()=>this.timeFormat==="HH:MM";this.isKeyboardOrEvent=i=>Object.prototype.toString.call(i)===this.EVENT_OBJECT_STRING||Object.prototype.toString.call(i)==="[object KeyboardEvent]";this.setTimeValidity=()=>{const i=0;const t=this.timePeriod==="12"?11:23;if(!h(this.hour)){this.isValidHour=+this.hour>=i&&+this.hour<=t}else{this.isValidHour=true}if(!h(this.minute)){this.isValidMinute=+this.minute>=0&&+this.minute<=59}else{this.isValidMinute=true}if(!this.isHHMMFormat()){if(!h(this.second)){this.isValidSecond=+this.second>=0&&+this.second<=59}else{this.isValidSecond=true}}else{this.isValidSecond=true}};this.setInputValue=(i,t=false)=>{const e=t?"":i.value;if(i===this.hourInputEl){this.hour=e}else if(i===this.minuteInputEl){this.minute=e}else if(i===this.secondInputEl&&!this.isHHMMFormat()){this.second=e}this.setValidationMessage()};this.setPreventInput=(i,t)=>{if(i===this.hourInputEl){this.preventHourInput=t}else if(i===this.minuteInputEl){this.preventMinuteInput=t}else if(i===this.secondInputEl){this.preventSecondInput=t}};this.setValidationMessage=()=>{this.maxTime=this.parseTime(this.max);this.minTime=this.parseTime(this.min);this.setTimeValidity();let i="";let t=false;if(!h(this.hour)&&!h(this.minute)&&(this.isHHMMFormat()||!h(this.second))){this.selectedTime=this.convertToTime(this.hour,this.minute,this.isHHMMFormat()?"00":this.second);this.isValidTime=!!this.selectedTime&&this.selectedTime.getHours()==+this.hour&&this.selectedTime.getMinutes()==+this.minute&&(this.isHHMMFormat()||this.selectedTime.getSeconds()==+this.second);if(this.selectedTime&&Array.isArray(this.disableTimes)&&this.disableTimes.length>0){t=this.disableTimes.some((i=>{if(typeof i==="object"&&i!==null&&"start"in i&&"end"in i){const t=this.parseTime(i.start);const e=this.parseTime(i.end);if(t&&e){return this.selectedTime>=t&&this.selectedTime<=e}return false}const t=this.parseTime(i);return t&&t.getHours()===this.selectedTime.getHours()&&t.getMinutes()===this.selectedTime.getMinutes()&&t.getSeconds()===this.selectedTime.getSeconds()}));if(t){this.isValidTime=false;i=this.invalidTimeMessage}}if(this.selectedTime&&!t){if(this.minTime&&this.selectedTime<this.minTime){this.isValidTime=false;i=`Please enter a time after ${this.formatTime(this.minTime)}.`}else if(this.maxTime&&this.selectedTime>this.maxTime){this.isValidTime=false;i=`Please enter a time before ${this.formatTime(this.maxTime)}.`}}if(!this.isValidTime){this.inputsInOrder.forEach((i=>i.setAttribute(this.ARIA_INVALID,"true")))}else{this.inputsInOrder.forEach((i=>i.removeAttribute(this.ARIA_INVALID)))}}else{this.selectedTime=null}if(!(this.isValidHour&&this.isValidMinute&&this.isValidSecond&&this.isValidTime)){this.invalidTimeText=i||this.invalidTimeMessage}else{this.invalidTimeText=""}};this.formatTime=i=>{const t=i.getHours().toString().padStart(2,"0");const e=i.getMinutes().toString().padStart(2,"0");const s=i.getSeconds().toString().padStart(2,"0");return this.isHHMMFormat()?`${t}:${e}`:`${t}:${e}:${s}`};this.handleInput=i=>{const t=i;const e=i.target;if(e!==this.hourInputEl){if(t.inputType!=="deleteContentBackward"&&!this.preventAutoFormatting){if(e.value.length===1&&+e.value>=6&&+e.value<=9){this.setInputValue(e);this.notifyScreenReader(e);this.moveToNextInput(e)}if(e.value.length===2){this.setInputValue(e);this.setPreventInput(e,true);this.notifyScreenReader(e);this.moveToNextInput(e)}else{this.setPreventInput(e,false)}}else if(this.preventAutoFormatting){if(e.value.length===2&&!this.isKeyboardOrEvent(i)){this.setInputValue(e);this.setPreventInput(e,true);this.moveToNextInput(e)}else{this.setInputValue(e)}}if(e.value.length!==2){this.setPreventInput(e,false)}}else{if(e.value.length===2){this.setInputValue(e);if(Object.prototype.toString.call(i)!==this.EVENT_OBJECT_STRING){this.moveToNextInput(e)}this.setPreventInput(e,true)}else{this.setInputValue(e,true);this.setPreventInput(e,false)}}this.setFitToValueStyling(e);if(e.value.length===0){this.setInputValue(e,true);this.setValidationMessage()}this.notifyScreenReader(e)};this.handleKeyDown=(i,t)=>{var e;const s=i.target;const r=(e=i.key)===null||e===void 0?void 0:e.toLowerCase();const h=/-?\d*\.?\d+(e[-+]?\d+)?|[:]|arrowup|arrowdown|arrowleft|arrowright|shift|tab|backspace|delete/;if(!h.test(r)&&!((i.ctrlKey||i.metaKey)&&(r==="v"||r==="c"))){i.preventDefault()}switch(r){case":":case"arrowright":i.preventDefault();this.moveToNextInput(s);break;case"arrowleft":i.preventDefault();this.moveToPreviousInput(s);break;case"arrowup":case"arrowdown":this.preventAutoFormatting=true;this.handleUpDownArrowKeyPress(s,i);break;case"backspace":if(s.value.length===0){i.preventDefault();this.moveToPreviousInput(s)}break}this.preventInput(i,t);this.isTimeSetFromKeyboardEvent=true};this.handleFocus=i=>{const t=i.target;t.select()};this.handleBlur=i=>{const t=i.target;if(t){this.autocompleteInput(t)}};this.handleUpDownArrowKeyPress=(i,t)=>{let e=0;let s=59;if(i===this.hourInputEl){e=0;s=this.timePeriod==="12"?11:23}let r=+i.value;if(t.key==="ArrowUp"){r=r+1;if(r>s)r=e;i.value=r.toString().padStart(2,"0");this.notifyScreenReader(i)}if(t.key==="ArrowDown"){r=r-1;if(r<e)r=s;i.value=r.toString().padStart(2,"0");this.notifyScreenReader(i)}this.setInputValue(i);this.setFitToValueStyling(i)};this.handleTimeChange=i=>{if(i||this.selectedTime!==this.previousSelectedTime){if(this.value){this.inputsInOrder.forEach((i=>{i.classList.add(this.FIT_TO_VALUE)}))}if(this.hour&&this.minute&&(this.isHHMMFormat()||this.second)&&this.invalidTimeText===""){this.setValueAndEmitChange(this.selectedTime);this.notifyScreenReaderSelectedTime()}else if(!(this.selectedTime===null&&this.previousSelectedTime===null)&&this.selectedTimeInfoEl){this.setValueAndEmitChange(null);this.selectedTimeInfoEl.textContent=""}this.previousSelectedTime=this.selectedTime;if(!this.isTimeSetFromKeyboardEvent){this.updateInputValues(this.hour,this.minute,this.second)}}};this.setValueAndEmitChange=i=>{if(this.value!==i){this.emitIcChange(i);this.value=i}};this.emitIcChange=i=>{this.selectedTime=i;this.icChange.emit({value:i,timeObject:{hour:this.hour===""?null:this.hour,minute:this.minute===""?null:this.minute,second:this.second===""?null:this.second}})};this.setTime=i=>{if(i===null||i===""||i===undefined){if(this.hour)this.hour="";if(this.minute)this.minute="";if(this.second)this.second="";this.inputsInOrder.forEach((i=>{i.classList.remove(this.FIT_TO_VALUE);this.setPreventInput(i,false)}));this.handleTimeChange(true)}else{if(typeof i==="string"){const t=i.match(/^(\d{2}):(\d{2}):(\d{2})(?:\.(\d{1,3}))?Z?$/);if(t){this.hour=t[1];this.minute=t[2];this.second=t[3]}else{const t=i.split(":");this.hour=t[0]||"";this.minute=t[1]||"";this.second=t[2]||""}}else if(i instanceof Date){this.hour=i.getHours().toString().padStart(2,"0");this.minute=i.getMinutes().toString().padStart(2,"0");this.second=i.getSeconds().toString().padStart(2,"0")}}this.setValidationMessage()};this.setAriaInvalid=(i,t,e)=>{var s,r,h;if(this.inputsInOrder.length){this.inputsInOrder.forEach((i=>{i.removeAttribute(this.ARIA_INVALID)}));if(!i){(s=this.hourInputEl)===null||s===void 0?void 0:s.setAttribute(this.ARIA_INVALID,"true")}if(!t){(r=this.minuteInputEl)===null||r===void 0?void 0:r.setAttribute(this.ARIA_INVALID,"true")}if(!e){(h=this.secondInputEl)===null||h===void 0?void 0:h.setAttribute(this.ARIA_INVALID,"true")}if(!(i&&t&&e)){this.inputsInOrder.forEach((i=>{i.setAttribute(this.ARIA_INVALID,"true")}))}}};this.handleClear=()=>{this.clearInput=true;if(this.hourInputEl){this.hourInputEl.value=""}if(this.minuteInputEl){this.minuteInputEl.value=""}if(!this.isHHMMFormat()&&this.secondInputEl){this.secondInputEl.value=""}this.hour="";this.minute="";this.second="";this.handleTimeChange(true);this.inputsInOrder.forEach((i=>{i.classList.remove(this.FIT_TO_VALUE);this.setPreventInput(i,false)}));this.clearInput=false;this.isTimeSetFromKeyboardEvent=false;this.setValidationMessage();this.invalidTimeText="";if(this.hourInputEl){this.hourInputEl.focus()}};this.notifyScreenReaderSelectedTime=()=>{if(this.selectedTime&&this.selectedTimeInfoEl){if(this.isHHMMFormat()){this.selectedTimeInfoEl.textContent=`Selected time: ${this.selectedTime.getHours().toString().padStart(2,"0")}:${this.selectedTime.getMinutes().toString().padStart(2,"0")}`}else{this.selectedTimeInfoEl.textContent=`Selected time: ${this.selectedTime.getHours().toString().padStart(2,"0")}:${this.selectedTime.getMinutes().toString().padStart(2,"0")}:${this.selectedTime.getSeconds().toString().padStart(2,"0")}`}}};this.setFitToValueStyling=i=>{if(i.value){i.classList.add(this.FIT_TO_VALUE)}else{i.classList.remove(this.FIT_TO_VALUE)}};this.handleHostBlur=()=>{this.removeLabelledBy=false;this.icBlur.emit({value:this.selectedTime})};this.handleHostFocus=()=>{var i,t;if((t=(i=this.el.shadowRoot)===null||i===void 0?void 0:i.activeElement)===null||t===void 0?void 0:t.id.match(/(hour|minute|second)-input$/)){this.removeLabelledBy=false}else{this.removeLabelledBy=true}this.icFocus.emit({value:this.selectedTime})};this.handleFormReset=()=>{this.setTime(this.initialValue);this.setValidationMessage();this.handleTimeChange(false)};this.preventInput=(i,t)=>{const e=i.key;const s=i.target;let r;if(s){r=s.value.substring(s.selectionStart||0,s.selectionEnd||undefined)}if(e==="e"||e==="."||e==="-"||i.key>="0"&&i.key<="9"&&t&&!r){i.preventDefault()}};this.moveToNextInput=i=>{var t;this.preventAutoFormatting=false;(t=this.inputsInOrder[this.inputsInOrder.findIndex((t=>t===i))+1])===null||t===void 0?void 0:t.focus()};this.moveToPreviousInput=i=>{var t;this.preventAutoFormatting=false;(t=this.inputsInOrder[this.inputsInOrder.findIndex((t=>t===i))-1])===null||t===void 0?void 0:t.focus()};this.autocompleteInput=i=>{const t=i.value;if(t.length===1){i.value=`0${t}`}if(i.value){this.setInputValue(i)}};this.convertToTime=(i,t,e)=>{if(!h(i)&&!h(t)&&(this.isHHMMFormat()||!h(e))){const s=new Date;s.setHours(+i,+t,this.isHHMMFormat()?0:+e,0);return s}else{return null}};this.setInputsInOrder=()=>{var i;this.inputsInOrder=[];const t=(i=this.el.shadowRoot)===null||i===void 0?void 0:i.querySelectorAll("input");if(t){t.forEach((i=>this.inputsInOrder.push(i)))}};this.updateInputValues=(i,t,e)=>{if(this.hourInputEl&&this.minuteInputEl&&this.secondInputEl){this.hourInputEl.value=i;this.minuteInputEl.value=t;this.secondInputEl.value=e}};this.removeAriaLabelledBy=()=>{var i;(i=this.inputCompContainerEl)===null||i===void 0?void 0:i.removeAttribute(this.ARIA_LABELLED_BY)};this.setAriaLabelledBy=()=>{var i,t,e,s;if(this.disabled&&((i=this.inputCompContainerEl)===null||i===void 0?void 0:i.getAttribute(this.ARIA_LABELLED_BY))){this.removeAriaLabelledBy();return}if(this.disabled){return}const r=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelector("label");const o=`${this.inputId}-label`;if(r!==null&&r!==undefined){r.id=o}const n=!h(this.validationStatus)||!h(this.invalidTimeText);const c=`${(e=r===null||r===void 0?void 0:r.id)!==null&&e!==void 0?e:""} ${this.screenReaderInfoId} ${a(this.el,this.inputId,this.helperText!==""&&this.helperText!==this.defaultHelperText,n)} ${this.selectedTime?this.selectedTimeInfoId:""} ${this.assistiveHintId}`;(s=this.inputCompContainerEl)===null||s===void 0?void 0:s.setAttribute(this.ARIA_LABELLED_BY,c)};this.getInputsInOrder=()=>{const i=this.timeFormat.split(":");return i.map((i=>{switch(i.substring(0,1)){case"H":return e("input",{class:"hour-input",id:"hour-input",ref:i=>this.hourInputEl=i,"aria-label":"hour",placeholder:"HH",disabled:this.disabled,"aria-required":`${this.required}`,inputmode:"number",pattern:"[0-9]*",onPaste:this.handlePaste,onKeyDown:i=>this.handleKeyDown(i,this.preventHourInput)});case"M":return e("input",{id:"minute-input",class:"minute-input",ref:i=>this.minuteInputEl=i,"aria-label":"minute",placeholder:"MM",disabled:this.disabled,"aria-required":`${this.required}`,inputmode:"number",pattern:"[0-9]*",onPaste:this.handlePaste,onKeyDown:i=>this.handleKeyDown(i,this.preventMinuteInput)});case"S":if(!this.isHHMMFormat()){return e("input",{id:"second-input",class:"second-input",ref:i=>this.secondInputEl=i,"aria-label":"second",placeholder:"SS",disabled:this.disabled,"aria-required":`${this.required}`,inputmode:"number",pattern:"[0-9]*",onPaste:this.handlePaste,onKeyDown:i=>this.handleKeyDown(i,this.preventSecondInput)})}return null;default:return null}}))};this.getDescOfInputsOrder=()=>"hour, minute, and second";this.getScreenReaderInfo=i=>{let t="";if(this.required){t+="required"}if(i===n.Error){t+=" invalid data"}return t===""?"":t+", "};this.notifyScreenReader=i=>{var t;const e=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelector("#live-region");if(e){e.textContent=`${i.value}, ${i.getAttribute(this.ARIA_LABEL)}`}};this.handlePaste=i=>{var t;i.preventDefault();const e=((t=i.clipboardData)===null||t===void 0?void 0:t.getData("Text"))||"";const s=this.isPastedStringTimeValid(e);this.setPastedValueAndValidation(s,e,i)};this.handleClearFocus=()=>{this.removeLabelledBy=true;this.clearButtonFocused=true;this.isTimeSetFromKeyboardEvent=true};this.handleClearBlur=i=>{this.clearButtonFocused=false;this.isTimeSetFromKeyboardEvent=true;const t=i.relatedTarget;if((t===null||t===void 0?void 0:t.id)==="clock-button"){this.removeLabelledBy=false;return}if(t===null||t===void 0?void 0:t.id.match(/(minute|second)-input$/)){this.removeLabelledBy=false;return}this.removeLabelledBy=true};this.handleClockFocus=()=>{this.clockFocused=true};this.handleClockBlur=()=>{this.clockFocused=false};this.isPastedStringTimeValid=i=>{if(this.isHHMMFormat()){if(/^\d{2}:\d{2}$/.test(i)){return i}}else{if(/^\d{2}:\d{2}:\d{2}$/.test(i)){return i}if(/^\d{2}:\d{2}:\d{2}Z$/.test(i)){return i.replace("Z","")}const t=i.match(/T(\d{2}:\d{2}:\d{2})/);if(t){return t[1]}}return false};this.setPastedValueAndValidation=(i,t,e)=>{if(i){const t=i.split(":");this.inputsInOrder.forEach(((i,e)=>{i.classList.add(this.FIT_TO_VALUE);const s=t[e]||"";i.value=s.slice(0,2);this.setInputValue(i);this.autocompleteInput(i)}));if(this.isHHMMFormat()&&this.second!==""){this.second=""}}else{const i=t.trim();if((i.length===1||i.length===2)&&o(i)){this.setInputPasteValue(e.target,i);this.setInputValue(e.target)}else{this.invalidTimeText=`Please paste a valid ${e.target.getAttribute(this.ARIA_LABEL)}`;this.validationStatus=n.Error}}}}watchInputHandler(){if(this.emitTimePartChange&&!this.externalSetTime&&!this.clearInput&&!(this.hour&&this.minute&&this.second)&&this.selectedTime===null){this.emitIcChange(this.selectedTime)}}watchDisabledHandler(){c(this.disabled,this.el)}watchMaxHandler(){this.maxTime=this.parseTime(this.max)}watchMinHandler(){this.minTime=this.parseTime(this.min)}watchRequiredHandler(){var i,t;const e=(i=this.el.shadowRoot)===null||i===void 0?void 0:i.querySelector("label");if(this.required){const i=document.createElement("span");i.setAttribute("id","asterisk-span");i.setAttribute("aria-hidden","true");i.textContent=" *";e===null||e===void 0?void 0:e.appendChild(i)}else{const i=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelector("#asterisk-span");if(i){i.remove()}}}disconnectedCallback(){l(this.el,this.handleFormReset)}componentWillLoad(){this.defaultHelperText=`Use format ${this.timeFormat}`;if(h(this.helperText))this.helperText=this.defaultHelperText;if(this.value){this.externalSetTime=true;this.setTime(this.value)}this.screenReaderInfoId=`${this.inputId}-screen-reader-info`;this.assistiveHintId=`${this.inputId}-assistive-hint`;this.selectedTimeInfoId=`${this.inputId}-selected-time-info`;d(this.el,this.handleFormReset);c(this.disabled,this.el)}componentDidLoad(){this.setInputsInOrder();u([{prop:this.label,propName:"label"}],"Time Input");if(this.value){this.updateInputValues(this.hour,this.minute,this.second);this.inputsInOrder.forEach((i=>{i.classList.add(this.FIT_TO_VALUE)}))}this.setAriaInvalid(this.isValidHour,this.isValidMinute,this.isValidSecond);if(this.value){this.notifyScreenReaderSelectedTime()}this.inputsInOrder.forEach((i=>{i.addEventListener("input",this.handleInput);i.addEventListener("focus",this.handleFocus);i.addEventListener("blur",this.handleBlur)}));this.watchRequiredHandler()}componentWillUpdate(){if(h(this.helperText))this.helperText=this.defaultHelperText;if(!this.isTimeSetFromKeyboardEvent)this.setTime(this.value);this.setAriaInvalid(this.isValidHour,this.isValidMinute,this.isValidSecond);this.handleTimeChange(false);this.isTimeSetFromKeyboardEvent=false}componentDidRender(){if(this.removeLabelledBy){this.removeAriaLabelledBy();return}this.setAriaLabelledBy()}async getTime(){return this.selectedTime}async triggerIcChange(i){this.externalSetTime=true;this.setTime(i);this.emitIcChange(i);this.externalSetTime=false}render(){const{inputId:i,label:t,disabled:r,helperText:a,hideHelperText:o,hideLabel:c,showClearButton:l,showClockButton:d,size:u,theme:v}=this;const m=!h(this.validationStatus);const k=m?this.validationStatus:!h(this.invalidTimeText)?n.Error:"";const g=`Type or use the up and down arrow keys to change the values for the ${this.getDescOfInputsOrder()}.`;p(true,this.el,this.name,this.convertToTime(this.hour,this.minute,this.second),this.disabled);const w=!!(l&&!(h(this.hour)&&h(this.minute)&&h(this.second)));return e(s,{key:"b98385e4ce15e3a5710472b5222b062055ffc5c5",class:{[`ic-theme-${v}`]:v!=="inherit",[`ic-time-input-disabled`]:r,[`ic-time-input-${u}`]:true},onBlur:this.handleHostBlur,onFocus:this.handleHostFocus},e("ic-input-container",{key:"85a0e77c6a4bb16625ae45ae8d24a481d3a69690",disabled:r},!(c&&o)&&e("ic-input-label",{key:"85608f12ae185946d470a85cbb92e572ef5c52a6",for:i,label:t,hideLabel:c,helperText:!o?a:"",disabled:r},e("slot",{key:"a5ec9992107902e14c015a27dc9333db5acc722d",name:"helper-text",slot:"helper-text"})),e("span",{key:"a54568674212ce84618de7d2543daaf8c9f3b290",id:this.screenReaderInfoId,class:"sr-only","aria-hidden":"true"},this.getScreenReaderInfo(k),c&&`${t}\n`,o&&`${a}\n`,`${this.defaultHelperText}.`),e("span",{key:"36ac6bb759ba70d5501605103dbc9a43e5315d20",id:this.assistiveHintId,class:"sr-only","aria-hidden":"true"},g),e("span",{key:"032b22fa3b0be5abc67f6ce5d99be575df66ff97",id:"live-region","aria-live":"assertive",class:"sr-only"}),e("ic-input-component-container",{key:"3faf515b455f03682a502048cb2f36220dbd824c",id:i,ref:i=>this.inputCompContainerEl=i,disabled:r,validationStatus:k,size:u,role:"group",class:{[`ic-theme-${v}`]:v!=="inherit"}},e("div",{key:"1aec859059b9f6bc96a6d17318565704f80735e5",class:"input-container"},e("div",{key:"6d165dd62cfbe88945da06f08402179c65836799",class:"time-inputs"},[this.getInputsInOrder()[0],":",this.getInputsInOrder()[1],!this.isHHMMFormat()?[":",this.getInputsInOrder()[2]]:null]),e("div",{key:"508be4617c9d5bdd08fabad5eded1a94dcb9e659",class:"action-buttons"},l&&e("ic-button",{key:"ad5c9ecd381947bec5aec738bfbc0680c360f2ab",id:"clear-button","aria-label":"Clear input",class:{["clear-button"]:true,["hidden"]:h(this.hour)&&h(this.minute)&&h(this.second)},disabled:this.disabled,innerHTML:f,onClick:this.handleClear,onFocus:this.handleClearFocus,onBlur:this.handleClearBlur,variant:"icon-tertiary",theme:this.clearButtonFocused?"light":"dark",size:u}),d&&e("div",{key:"38c7534df37f29db9273b165193c784e364f8b2a",class:"show-clock-button-wrapper"},e("div",{key:"20b447295797a275fc37469045891d0e456873ed",class:{divider:w,[u]:true}}),e("ic-button",{key:"b2cfad7af3b6a582e4633e4b519b0d940df53bf6",id:"clock-button","aria-label":"Display clock","aria-haspopup":"dialog",class:"clock-button",disabled:this.disabled,innerHTML:b,variant:"icon-tertiary",size:u,onFocus:this.handleClockFocus,onBlur:this.handleClockBlur,theme:this.clockFocused?"light":"dark"}))))),e("span",{key:"29117a343282c60d5554da7e93fd730ee0fc9f73",id:this.selectedTimeInfoId,class:"sr-only","aria-live":"polite"},e("span",{key:"741936fd61e72d7a116db2d09a4d0b4aca52af0e",ref:i=>this.selectedTimeInfoEl=i,role:"status"})),(m||!h(this.invalidTimeText))&&e("ic-input-validation",{key:"836cb0b14412f8f74bf73833897eb9be7355b636",status:k,message:m?this.validationText:this.invalidTimeText,for:i})))}static get delegatesFocus(){return true}get el(){return r(this)}static get watchers(){return{hour:["watchInputHandler"],minute:["watchInputHandler"],second:["watchInputHandler"],disabled:["watchDisabledHandler"],max:["watchMaxHandler"],min:["watchMinHandler"],required:["watchRequiredHandler"]}}};g.style=m;export{g as ic_time_input};
2
- //# sourceMappingURL=p-c039a175.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["icTimeInputCss","IcTimeInputStyle0","inputIds","TimeInput","constructor","hostRef","this","DEFAULT_TIME_FORMAT","ARIA_INVALID","ARIA_LABEL","ARIA_LABELLED_BY","EVENT_OBJECT_STRING","FIT_TO_VALUE","initialValue","value","inputsInOrder","isValidHour","isValidMinute","isValidSecond","isValidTime","isTimeSetFromKeyboardEvent","previousSelectedTime","selectedTime","externalSetTime","clearInput","maxTime","minTime","clockFocused","clearButtonFocused","removeLabelledBy","hour","minute","second","disabled","disableTimes","emitTimePartChange","hideHelperText","hideLabel","inputId","invalidTimeMessage","max","min","name","required","showClearButton","showClockButton","size","theme","timeFormat","timePeriod","validationStatus","validationText","setInputPasteValue","input","pastedValue","inputEl","classList","add","parseTime","Date","parts","split","length","d","setHours","isHHMMFormat","isKeyboardOrEvent","event","Object","prototype","toString","call","setTimeValidity","minHour","maxHour","isEmptyString","setInputValue","clear","newValue","hourInputEl","minuteInputEl","secondInputEl","setValidationMessage","setPreventInput","isPrevented","preventHourInput","preventMinuteInput","preventSecondInput","outOfBoundsMsg","isDisabledTime","convertToTime","getHours","getMinutes","getSeconds","Array","isArray","some","t","start","end","parsed","formatTime","forEach","setAttribute","removeAttribute","invalidTimeText","time","hh","padStart","mm","ss","handleInput","inputEvent","target","inputType","preventAutoFormatting","notifyScreenReader","moveToNextInput","setFitToValueStyling","handleKeyDown","isInputPrevented","eventKey","_a","key","toLowerCase","regex","test","ctrlKey","metaKey","preventDefault","moveToPreviousInput","handleUpDownArrowKeyPress","preventInput","handleFocus","select","handleBlur","autocompleteInput","minValue","maxValue","val","handleTimeChange","force","setValueAndEmitChange","notifyScreenReaderSelectedTime","selectedTimeInfoEl","textContent","updateInputValues","emitIcChange","icChange","emit","timeObject","setTime","undefined","remove","zuluMatch","match","setAriaInvalid","validHour","validMinute","validSecond","_b","_c","handleClear","focus","handleHostBlur","icBlur","handleHostFocus","el","shadowRoot","activeElement","id","icFocus","handleFormReset","selectedString","substring","selectionStart","selectionEnd","currentInput","findIndex","inputValue","setInputsInOrder","shadowInputs","querySelectorAll","push","removeAriaLabelledBy","inputCompContainerEl","setAriaLabelledBy","getAttribute","labelEl","querySelector","labelId","hasValidation","labelledBy","screenReaderInfoId","getInputDescribedByText","helperText","defaultHelperText","selectedTimeInfoId","assistiveHintId","_d","getInputsInOrder","timeParts","map","part","h","class","ref","placeholder","inputmode","pattern","onPaste","handlePaste","onKeyDown","getDescOfInputsOrder","getScreenReaderInfo","inputDescriptors","IcInformationStatus","Error","liveRegion","clipboardData","getData","isPastedStringTimeValid","setPastedValueAndValidation","handleClearFocus","handleClearBlur","ev","relatedTarget","handleClockFocus","handleClockBlur","replace","isoMatch","index","timeValue","slice","pasted","trim","isNumeric","watchInputHandler","watchDisabledHandler","removeDisabledFalse","watchMaxHandler","watchMinHandler","watchRequiredHandler","asteriskSpan","document","createElement","appendChild","disconnectedCallback","removeFormResetListener","componentWillLoad","addFormResetListener","componentDidLoad","onComponentRequiredPropUndefined","prop","label","propName","addEventListener","componentWillUpdate","componentDidRender","getTime","triggerIcChange","render","hasCustomValidation","assistiveHint","renderHiddenInput","showDivider","Host","onBlur","onFocus","for","slot","role","innerHTML","Clear","onClick","variant","divider","Clock","status","message"],"sources":["src/components/ic-time-input/ic-time-input.css?tag=ic-time-input&encapsulation=shadow","src/components/ic-time-input/ic-time-input.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n --ic-input-label-helpertext-padding: var(--ic-space-xs);\n --input-bg-color: var(--ic-time-picker-field-background);\n --ic-input-label-text-color: var(--ic-time-picker-label);\n --ic-input-label-helper-text-color: var(--ic-time-picker-subtitle);\n --border-color: var(--ic-time-picker-time-field-border-default);\n --border-color-disabled: var(--ic-time-picker-border-disabled);\n --border-color-hover: var(--ic-time-picker-time-field-border-hover);\n --border-color-pressed: var(--ic-time-picker-time-field-border-pressed);\n --border-error-color: var(--ic-time-picker-border-error);\n --border-error-color-hover: var(--ic-time-picker-border-error-hover);\n --border-error-color-pressed: var(--ic-time-picker-border-error-pressed);\n --border-success-color: var(--ic-time-picker-border-success);\n --border-success-color-hover: var(--ic-time-picker-border-success-hover);\n --border-success-color-pressed: var(--ic-time-picker-border-success-pressed);\n --border-warning-color: var(--ic-time-picker-border-warning);\n --border-warning-color-hover: var(--ic-time-picker-border-warning-hover);\n --border-warning-color-pressed: var(--ic-time-picker-border-warning-pressed);\n --input-width: calc((4 * var(--ic-space-xxl)) + var(--ic-space-xxs));\n}\n\n:host(.ic-time-input-disabled) {\n --ic-input-label-text-color: var(--ic-time-picker-label-disabled);\n --ic-input-label-helper-text-color: var(--ic-time-picker-subtitle-disabled);\n}\n\n:host(.ic-time-input-disabled) input {\n color: var(--ic-time-picker-time-text-disabled);\n}\n\n:host(.ic-time-input-large) {\n --input-width: calc(\n (4 * var(--ic-space-xxl)) + var(--ic-space-xxs) + var(--ic-space-lg)\n );\n}\n\n:host(.ic-time-input-small) {\n --input-width: calc(\n (3 * var(--ic-space-xxl)) + var(--ic-space-xxs) + var(--ic-space-xl)\n );\n}\n\ninput {\n border: 0;\n height: 100%;\n padding: 0;\n outline: none;\n background: none;\n -moz-appearance: textfield;\n appearance: textfield;\n color: var(--ic-time-picker-time-text-default);\n caret-color: var(--ic-time-picker-typing-cursor);\n}\n\ninput::-webkit-outer-spin-button,\ninput::-webkit-inner-spin-button {\n -webkit-appearance: none;\n}\n\ninput:-webkit-autofill {\n box-shadow: 0 0 0 var(--ic-space-sm) var(--ic-color-background-primary) inset;\n -webkit-text-fill-color: var(--ic-time-picker-time-text-default) !important;\n}\n\ninput::placeholder {\n color: var(--ic-time-picker-field-placeholder-text);\n}\n\nic-input-component-container {\n cursor: text;\n}\n\nic-input-component-container .focus-indicator {\n padding: var(--ic-space-xxxs) var(--ic-space-xs);\n align-items: center;\n}\n\n.time-inputs {\n color: var(--ic-time-picker-field-placeholder-text);\n}\n\n.hour-input {\n width: 1.438rem;\n}\n\n.minute-input {\n width: 1.813rem;\n}\n\n.second-input,\n.second-input.fit-to-value {\n width: 2.313rem;\n}\n\n.fit-to-value {\n width: 1.25rem;\n}\n\n.sr-only {\n position: absolute;\n left: -9999px;\n}\n\n.input-container {\n width: 100%;\n display: flex;\n justify-content: space-between;\n align-items: center;\n position: relative;\n}\n\n.action-buttons {\n display: flex;\n align-items: center;\n}\n\n.show-clock-button-wrapper {\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.clear-button,\n.clock-button {\n border-radius: var(--ic-border-radius);\n transition: box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition);\n margin: 0;\n}\n\n.clear-button.hidden {\n display: none;\n}\n\n.clear-button:focus,\n.clock-button:focus,\n.clear-button:active,\n.clock-button:active {\n background-color: var(--ic-color-focus-inner) !important;\n box-shadow: inset 0 0 0 0.125rem var(--ic-color-focus-outer) !important;\n border-radius: 0.25rem;\n}\n\n.clock-button:focus,\n.clock-button:active {\n --ic-button-tertiary-text-active: var(--ic-atoms-input-clear-button-focus);\n --ic-button-tertiary-text-hover-active: var(\n --ic-atoms-input-clear-button-focus\n );\n --ic-button-tertiary-text-pressed-active: var(\n --ic-atoms-input-clear-button-focus\n );\n}\n\n.clear-button:focus,\n.clock-button:focus,\n.clear-button:active *,\n.clock-button:active * {\n fill: var(--ic-atoms-input-clear-button-focus);\n}\n\n.clear-button svg {\n color: var(--ic-time-picker-clear-icon);\n}\n\n.clear-button:focus svg {\n color: var(--ic-atoms-input-clear-button-focus);\n}\n\n.divider {\n margin: 0 var(--ic-space-xxs);\n width: var(--ic-space-1px);\n background-color: var(--ic-atoms-input-divider);\n border-radius: var(--ic-space-1px);\n}\n\n.divider.small {\n height: var(--ic-space-md);\n}\n\n.divider.medium {\n height: calc(var(--ic-space-sm) + var(--ic-space-xs));\n}\n\n.divider.large {\n height: var(--ic-space-lg);\n}\n\nic-input-validation {\n --ic-input-validation-status-text-color: var(--ic-time-picker-status-text);\n --ic-input-validation-error: var(--ic-time-picker-icon-error);\n --ic-input-validation-warning-icon-color: var(--ic-time-picker-icon-warning);\n --ic-input-validation-success-icon-color: var(--ic-time-picker-icon-success);\n}\n\n@media (forced-colors: active) {\n .clear-button svg {\n color: currentColor;\n }\n}\n","/* eslint-disable react/jsx-no-bind */\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Prop,\n State,\n Host,\n Method,\n Watch,\n} from \"@stencil/core\";\nimport {\n IcDisableTimeSelection,\n IcInformationStatus,\n IcInformationStatusOrEmpty,\n IcSizes,\n IcThemeMode,\n IcTimeFormat,\n} from \"../../utils/types\";\nimport {\n isEmptyString,\n isNumeric,\n addFormResetListener,\n getInputDescribedByText,\n onComponentRequiredPropUndefined,\n removeDisabledFalse,\n removeFormResetListener,\n renderHiddenInput,\n} from \"../../utils/helpers\";\nimport Clear from \"../../assets/clear-icon.svg\";\nimport Clock from \"../../assets/clock.svg\";\n\nlet inputIds = 0;\n\n/**\n * @slot helper-text - Content is set as the helper text for the time input.\n */\n@Component({\n tag: \"ic-time-input\",\n styleUrl: \"ic-time-input.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class TimeInput {\n private DEFAULT_TIME_FORMAT: IcTimeFormat = \"HH:MM:SS\";\n private ARIA_INVALID = \"aria-invalid\";\n private ARIA_LABEL = \"aria-label\";\n private ARIA_LABELLED_BY = \"aria-labelledby\";\n private assistiveHintId: string;\n private hourInputEl?: HTMLInputElement;\n private minuteInputEl?: HTMLInputElement;\n private secondInputEl?: HTMLInputElement;\n private defaultHelperText: string;\n private EVENT_OBJECT_STRING = \"[object Event]\";\n private FIT_TO_VALUE = \"fit-to-value\";\n private initialValue = this.value;\n private inputCompContainerEl: HTMLIcInputComponentContainerElement;\n private inputsInOrder: HTMLInputElement[] = [];\n private isValidHour: boolean = true;\n private isValidMinute: boolean = true;\n private isValidSecond: boolean = true;\n private isValidTime: boolean = true;\n private isTimeSetFromKeyboardEvent: boolean = false;\n private preventAutoFormatting: boolean;\n private preventHourInput: boolean;\n private preventMinuteInput: boolean;\n private preventSecondInput: boolean;\n private previousSelectedTime: Date | null = null;\n private selectedTime: Date | null = null;\n private selectedTimeInfoEl?: HTMLSpanElement;\n private screenReaderInfoId: string;\n private selectedTimeInfoId: string;\n private externalSetTime: boolean = false;\n private clearInput: boolean = false;\n private maxTime: Date | null = null;\n private minTime: Date | null = null;\n\n @Element() el: HTMLIcTimeInputElement;\n\n @State() invalidTimeText: string;\n @State() clockFocused: boolean = false;\n @State() clearButtonFocused: boolean = false;\n @State() removeLabelledBy: boolean = false;\n @State() hour: string = \"\";\n @State() minute: string = \"\";\n @State() second: string = \"\";\n\n @Watch(\"hour\")\n @Watch(\"minute\")\n @Watch(\"second\")\n watchInputHandler(): void {\n if (\n this.emitTimePartChange &&\n !this.externalSetTime &&\n !this.clearInput &&\n !(this.hour && this.minute && this.second) &&\n this.selectedTime === null\n ) {\n this.emitIcChange(this.selectedTime);\n }\n }\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * An array of times that will be disabled in the time input. The times can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop() disableTimes: IcDisableTimeSelection[] = [];\n\n /**\n * If `true`, every individual input field completed will emit an icChange event.\n */\n @Prop() emitTimePartChange?: boolean = false;\n\n /**\n * The helper text that will be displayed for additional field guidance. This will default to the text \"Use format\" along with the `timeFormat` value.\n */\n @Prop({ mutable: true }) helperText: string | null;\n\n /**\n * If `true`, the helper text will be visually hidden, but still read out by screenreaders.\n */\n @Prop() hideHelperText: boolean = false;\n\n /**\n * If `true`, the label will be visually hidden, but will still be read out by screen readers.\n */\n @Prop() hideLabel?: boolean = false;\n\n /**\n * The ID for the input.\n */\n @Prop() inputId: string = `ic-time-input-${inputIds++}`;\n\n /**\n * The text to display as the validation message when an invalid time is entered.\n */\n @Prop() invalidTimeMessage: string = \"Please enter a valid time.\";\n\n /**\n * The label for the time input.\n */\n @Prop() label!: string;\n\n /**\n * The latest time that will be allowed. The value can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop() max: string | Date = \"\";\n @Watch(\"max\")\n watchMaxHandler(): void {\n this.maxTime = this.parseTime(this.max);\n }\n\n /**\n * The earliest time that will be allowed. The value can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop() min: string | Date = \"\";\n @Watch(\"min\")\n watchMinHandler(): void {\n this.minTime = this.parseTime(this.min);\n }\n\n /**\n * The name of the control, which is submitted with the form data.\n */\n @Prop() name: string = this.inputId;\n\n /**\n * If `true`, the input will require a value.\n */\n @Prop() required: boolean = false;\n @Watch(\"required\")\n watchRequiredHandler(): void {\n const labelEl = this.el.shadowRoot?.querySelector(\"label\");\n if (this.required) {\n const asteriskSpan = document.createElement(\"span\");\n asteriskSpan.setAttribute(\"id\", \"asterisk-span\");\n asteriskSpan.setAttribute(\"aria-hidden\", \"true\");\n asteriskSpan.textContent = \" *\";\n labelEl?.appendChild(asteriskSpan);\n } else {\n const asteriskSpan = this.el.shadowRoot?.querySelector(\"#asterisk-span\");\n if (asteriskSpan) {\n asteriskSpan.remove();\n }\n }\n }\n\n /**\n * If `true`, a button which clears the time input when clicked will be displayed.\n */\n @Prop() showClearButton?: boolean = true;\n\n /**\n * @internal If `true`, a button which displays the clock view when clicked will be displayed.\n */\n @Prop() showClockButton?: boolean = false;\n\n /**\n * The size of the time input to be displayed.\n */\n @Prop() size: IcSizes = \"medium\";\n\n /**\n * Sets the time picker to the dark or light theme colors. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * The format in which the time will be displayed.\n */\n @Prop() timeFormat: IcTimeFormat = this.DEFAULT_TIME_FORMAT;\n\n /**\n * The time period format: \"12\" for 12-hour, \"24\" for 24-hour. Defaults to \"24\".\n */\n @Prop() timePeriod: \"12\" | \"24\" = \"24\";\n\n /**\n * The value of the time input. The value can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop({ mutable: true }) value?: string | Date | null | undefined = \"\";\n\n /**\n * The validation status - e.g. 'error' | 'warning' | 'success'. This will override the built-in time validation.\n */\n @Prop({ mutable: true }) validationStatus: IcInformationStatusOrEmpty = \"\";\n\n /**\n * The text to display as the validation message. This will override the built-in time validation.\n */\n @Prop() validationText?: string = \"\";\n\n /**\n * @internal Emitted when the clock is opened.\n */\n @Event() clockButtonClicked: EventEmitter<{ value: Date | null }>;\n\n /**\n * Emitted when the input loses focus.\n */\n @Event() icBlur: EventEmitter<{ value: Date | null }>;\n\n /**\n * Emitted when the value has changed.\n */\n @Event() icChange: EventEmitter<{\n value: Date | null;\n timeObject: {\n hour: string | null;\n minute: string | null;\n second: string | null;\n };\n }>;\n\n /**\n * Emitted when the input gains focus.\n */\n @Event() icFocus: EventEmitter<{ value: Date | null }>;\n\n disconnectedCallback(): void {\n removeFormResetListener(this.el, this.handleFormReset);\n }\n\n componentWillLoad(): void {\n this.defaultHelperText = `Use format ${this.timeFormat}`;\n if (isEmptyString(this.helperText))\n this.helperText = this.defaultHelperText;\n if (this.value) {\n this.externalSetTime = true;\n this.setTime(this.value);\n }\n this.screenReaderInfoId = `${this.inputId}-screen-reader-info`;\n this.assistiveHintId = `${this.inputId}-assistive-hint`;\n this.selectedTimeInfoId = `${this.inputId}-selected-time-info`;\n addFormResetListener(this.el, this.handleFormReset);\n removeDisabledFalse(this.disabled, this.el);\n }\n\n componentDidLoad(): void {\n this.setInputsInOrder();\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Time Input\"\n );\n if (this.value) {\n this.updateInputValues(this.hour, this.minute, this.second);\n this.inputsInOrder.forEach((input) => {\n input.classList.add(this.FIT_TO_VALUE);\n });\n }\n this.setAriaInvalid(\n this.isValidHour,\n this.isValidMinute,\n this.isValidSecond\n );\n if (this.value) {\n this.notifyScreenReaderSelectedTime();\n }\n this.inputsInOrder.forEach((input) => {\n input.addEventListener(\"input\", this.handleInput);\n input.addEventListener(\"focus\", this.handleFocus);\n input.addEventListener(\"blur\", this.handleBlur);\n });\n this.watchRequiredHandler();\n }\n\n componentWillUpdate(): void {\n if (isEmptyString(this.helperText))\n this.helperText = this.defaultHelperText;\n if (!this.isTimeSetFromKeyboardEvent) this.setTime(this.value);\n this.setAriaInvalid(\n this.isValidHour,\n this.isValidMinute,\n this.isValidSecond\n );\n this.handleTimeChange(false);\n this.isTimeSetFromKeyboardEvent = false;\n }\n\n componentDidRender(): void {\n if (this.removeLabelledBy) {\n this.removeAriaLabelledBy();\n return;\n }\n this.setAriaLabelledBy();\n }\n\n /**\n * Returns the value as a Date object\n * @returns Date\n */\n @Method()\n async getTime(): Promise<Date | null> {\n return this.selectedTime;\n }\n\n /**\n * @internal Used to enable other components to invoke an IcChange event from the input.\n */\n @Method()\n async triggerIcChange(t: Date | null): Promise<void> {\n this.externalSetTime = true;\n this.setTime(t);\n this.emitIcChange(t);\n this.externalSetTime = false;\n }\n\n private setInputPasteValue = (\n input: EventTarget | null,\n pastedValue: string\n ) => {\n if (input) {\n const inputEl = input as HTMLInputElement;\n inputEl.value = pastedValue;\n inputEl.classList.add(this.FIT_TO_VALUE);\n }\n };\n\n private parseTime = (value: string | Date): Date | null => {\n if (!value) return null;\n if (value instanceof Date) return value;\n const parts = value.split(\":\");\n if (parts.length >= 2) {\n const d = new Date();\n d.setHours(+parts[0], +parts[1], parts[2] ? +parts[2] : 0, 0);\n return d;\n }\n return null;\n };\n\n private isHHMMFormat = () => this.timeFormat === \"HH:MM\";\n\n private isKeyboardOrEvent = (event: Event) => {\n return (\n Object.prototype.toString.call(event) === this.EVENT_OBJECT_STRING ||\n Object.prototype.toString.call(event) === \"[object KeyboardEvent]\"\n );\n };\n\n private setTimeValidity = () => {\n const minHour = 0;\n const maxHour = this.timePeriod === \"12\" ? 11 : 23;\n if (!isEmptyString(this.hour)) {\n this.isValidHour = +this.hour >= minHour && +this.hour <= maxHour;\n } else {\n this.isValidHour = true;\n }\n if (!isEmptyString(this.minute)) {\n this.isValidMinute = +this.minute >= 0 && +this.minute <= 59;\n } else {\n this.isValidMinute = true;\n }\n if (!this.isHHMMFormat()) {\n if (!isEmptyString(this.second)) {\n this.isValidSecond = +this.second >= 0 && +this.second <= 59;\n } else {\n this.isValidSecond = true;\n }\n } else {\n this.isValidSecond = true;\n }\n };\n\n private setInputValue = (input: HTMLInputElement, clear = false) => {\n const newValue = clear ? \"\" : input.value;\n if (input === this.hourInputEl) {\n this.hour = newValue;\n } else if (input === this.minuteInputEl) {\n this.minute = newValue;\n } else if (input === this.secondInputEl && !this.isHHMMFormat()) {\n this.second = newValue;\n }\n this.setValidationMessage();\n };\n\n private setPreventInput = (input: HTMLInputElement, isPrevented: boolean) => {\n if (input === this.hourInputEl) {\n this.preventHourInput = isPrevented;\n } else if (input === this.minuteInputEl) {\n this.preventMinuteInput = isPrevented;\n } else if (input === this.secondInputEl) {\n this.preventSecondInput = isPrevented;\n }\n };\n\n private setValidationMessage = () => {\n this.maxTime = this.parseTime(this.max);\n this.minTime = this.parseTime(this.min);\n this.setTimeValidity();\n let outOfBoundsMsg = \"\";\n let isDisabledTime = false;\n if (\n !isEmptyString(this.hour) &&\n !isEmptyString(this.minute) &&\n (this.isHHMMFormat() || !isEmptyString(this.second))\n ) {\n this.selectedTime = this.convertToTime(\n this.hour,\n this.minute,\n this.isHHMMFormat() ? \"00\" : this.second\n );\n this.isValidTime =\n !!this.selectedTime &&\n this.selectedTime.getHours() == +this.hour &&\n this.selectedTime.getMinutes() == +this.minute &&\n (this.isHHMMFormat() || this.selectedTime.getSeconds() == +this.second);\n\n if (\n this.selectedTime &&\n Array.isArray(this.disableTimes) &&\n this.disableTimes.length > 0\n ) {\n isDisabledTime = this.disableTimes.some((t) => {\n if (\n typeof t === \"object\" &&\n t !== null &&\n \"start\" in t &&\n \"end\" in t\n ) {\n const start = this.parseTime(t.start);\n const end = this.parseTime(t.end);\n if (start && end) {\n return this.selectedTime! >= start && this.selectedTime! <= end;\n }\n return false;\n }\n const parsed = this.parseTime(t as string | Date);\n return (\n parsed &&\n parsed.getHours() === this.selectedTime!.getHours() &&\n parsed.getMinutes() === this.selectedTime!.getMinutes() &&\n parsed.getSeconds() === this.selectedTime!.getSeconds()\n );\n });\n if (isDisabledTime) {\n this.isValidTime = false;\n outOfBoundsMsg = this.invalidTimeMessage;\n }\n }\n\n if (this.selectedTime && !isDisabledTime) {\n if (this.minTime && this.selectedTime < this.minTime) {\n this.isValidTime = false;\n outOfBoundsMsg = `Please enter a time after ${this.formatTime(\n this.minTime\n )}.`;\n } else if (this.maxTime && this.selectedTime > this.maxTime) {\n this.isValidTime = false;\n outOfBoundsMsg = `Please enter a time before ${this.formatTime(\n this.maxTime\n )}.`;\n }\n }\n if (!this.isValidTime) {\n this.inputsInOrder.forEach((input) =>\n input.setAttribute(this.ARIA_INVALID, \"true\")\n );\n } else {\n this.inputsInOrder.forEach((input) =>\n input.removeAttribute(this.ARIA_INVALID)\n );\n }\n } else {\n this.selectedTime = null;\n }\n if (\n !(\n this.isValidHour &&\n this.isValidMinute &&\n this.isValidSecond &&\n this.isValidTime\n )\n ) {\n this.invalidTimeText = outOfBoundsMsg || this.invalidTimeMessage;\n } else {\n this.invalidTimeText = \"\";\n }\n };\n\n private formatTime = (time: Date): string => {\n const hh = time.getHours().toString().padStart(2, \"0\");\n const mm = time.getMinutes().toString().padStart(2, \"0\");\n const ss = time.getSeconds().toString().padStart(2, \"0\");\n return this.isHHMMFormat() ? `${hh}:${mm}` : `${hh}:${mm}:${ss}`;\n };\n\n private handleInput = (event: Event) => {\n const inputEvent = event as InputEvent;\n const input = event.target as HTMLInputElement;\n if (input !== this.hourInputEl) {\n if (\n inputEvent.inputType !== \"deleteContentBackward\" &&\n !this.preventAutoFormatting\n ) {\n if (\n input.value.length === 1 &&\n +input.value >= 6 &&\n +input.value <= 9\n ) {\n this.setInputValue(input);\n this.notifyScreenReader(input);\n this.moveToNextInput(input);\n }\n if (input.value.length === 2) {\n this.setInputValue(input);\n this.setPreventInput(input, true);\n this.notifyScreenReader(input);\n this.moveToNextInput(input);\n } else {\n this.setPreventInput(input, false);\n }\n } else if (this.preventAutoFormatting) {\n if (input.value.length === 2 && !this.isKeyboardOrEvent(event)) {\n this.setInputValue(input);\n this.setPreventInput(input, true);\n this.moveToNextInput(input);\n } else {\n this.setInputValue(input);\n }\n }\n if (input.value.length !== 2) {\n this.setPreventInput(input, false);\n }\n } else {\n if (input.value.length === 2) {\n this.setInputValue(input);\n if (\n Object.prototype.toString.call(event) !== this.EVENT_OBJECT_STRING\n ) {\n this.moveToNextInput(input);\n }\n this.setPreventInput(input, true);\n } else {\n this.setInputValue(input, true);\n this.setPreventInput(input, false);\n }\n }\n this.setFitToValueStyling(input);\n if (input.value.length === 0) {\n this.setInputValue(input, true);\n this.setValidationMessage();\n }\n this.notifyScreenReader(input);\n };\n\n private handleKeyDown = (event: KeyboardEvent, isInputPrevented: boolean) => {\n const input = event.target as HTMLInputElement;\n const eventKey = event.key?.toLowerCase();\n const regex =\n /-?\\d*\\.?\\d+(e[-+]?\\d+)?|[:]|arrowup|arrowdown|arrowleft|arrowright|shift|tab|backspace|delete/;\n if (\n !regex.test(eventKey) &&\n !(\n (event.ctrlKey || event.metaKey) &&\n (eventKey === \"v\" || eventKey === \"c\")\n )\n ) {\n event.preventDefault();\n }\n switch (eventKey) {\n case \":\":\n case \"arrowright\":\n event.preventDefault();\n this.moveToNextInput(input);\n break;\n case \"arrowleft\":\n event.preventDefault();\n this.moveToPreviousInput(input);\n break;\n case \"arrowup\":\n case \"arrowdown\":\n this.preventAutoFormatting = true;\n this.handleUpDownArrowKeyPress(input, event);\n break;\n case \"backspace\":\n if (input.value.length === 0) {\n event.preventDefault();\n this.moveToPreviousInput(input);\n }\n break;\n default:\n break;\n }\n this.preventInput(event, isInputPrevented);\n this.isTimeSetFromKeyboardEvent = true;\n };\n\n private handleFocus = (event: FocusEvent) => {\n const input = event.target as HTMLInputElement;\n input.select();\n };\n\n private handleBlur = (event: FocusEvent) => {\n const input = event.target;\n if (input) {\n this.autocompleteInput(input as HTMLInputElement);\n }\n };\n\n private handleUpDownArrowKeyPress = (\n input: HTMLInputElement,\n event: KeyboardEvent\n ) => {\n let minValue = 0;\n let maxValue = 59;\n if (input === this.hourInputEl) {\n minValue = 0;\n maxValue = this.timePeriod === \"12\" ? 11 : 23;\n }\n let val = +input.value;\n if (event.key === \"ArrowUp\") {\n val = val + 1;\n if (val > maxValue) val = minValue;\n input.value = val.toString().padStart(2, \"0\");\n this.notifyScreenReader(input);\n }\n if (event.key === \"ArrowDown\") {\n val = val - 1;\n if (val < minValue) val = maxValue;\n input.value = val.toString().padStart(2, \"0\");\n this.notifyScreenReader(input);\n }\n this.setInputValue(input);\n this.setFitToValueStyling(input);\n };\n\n private handleTimeChange = (force: boolean) => {\n if (force || this.selectedTime !== this.previousSelectedTime) {\n if (this.value) {\n this.inputsInOrder.forEach((input) => {\n input.classList.add(this.FIT_TO_VALUE);\n });\n }\n if (\n this.hour &&\n this.minute &&\n (this.isHHMMFormat() || this.second) &&\n this.invalidTimeText === \"\"\n ) {\n this.setValueAndEmitChange(this.selectedTime);\n this.notifyScreenReaderSelectedTime();\n } else if (\n !(this.selectedTime === null && this.previousSelectedTime === null) &&\n this.selectedTimeInfoEl\n ) {\n this.setValueAndEmitChange(null);\n this.selectedTimeInfoEl.textContent = \"\";\n }\n this.previousSelectedTime = this.selectedTime;\n if (!this.isTimeSetFromKeyboardEvent) {\n this.updateInputValues(this.hour, this.minute, this.second);\n }\n }\n };\n\n private setValueAndEmitChange = (value: Date | null) => {\n if (this.value !== value) {\n this.emitIcChange(value);\n this.value = value;\n }\n };\n\n private emitIcChange = (t: Date | null) => {\n this.selectedTime = t;\n this.icChange.emit({\n value: t,\n timeObject: {\n hour: this.hour === \"\" ? null : this.hour,\n minute: this.minute === \"\" ? null : this.minute,\n second: this.second === \"\" ? null : this.second,\n },\n });\n };\n\n private setTime = (time?: string | Date | null) => {\n if (time === null || time === \"\" || time === undefined) {\n if (this.hour) this.hour = \"\";\n if (this.minute) this.minute = \"\";\n if (this.second) this.second = \"\";\n this.inputsInOrder.forEach((input) => {\n input.classList.remove(this.FIT_TO_VALUE);\n this.setPreventInput(input, false);\n });\n this.handleTimeChange(true);\n } else {\n if (typeof time === \"string\") {\n const zuluMatch = time.match(\n /^(\\d{2}):(\\d{2}):(\\d{2})(?:\\.(\\d{1,3}))?Z?$/\n );\n if (zuluMatch) {\n this.hour = zuluMatch[1];\n this.minute = zuluMatch[2];\n this.second = zuluMatch[3];\n } else {\n const parts = time.split(\":\");\n this.hour = parts[0] || \"\";\n this.minute = parts[1] || \"\";\n this.second = parts[2] || \"\";\n }\n } else if (time instanceof Date) {\n this.hour = time.getHours().toString().padStart(2, \"0\");\n this.minute = time.getMinutes().toString().padStart(2, \"0\");\n this.second = time.getSeconds().toString().padStart(2, \"0\");\n }\n }\n this.setValidationMessage();\n };\n\n private setAriaInvalid = (\n validHour: boolean,\n validMinute: boolean,\n validSecond: boolean\n ) => {\n if (this.inputsInOrder.length) {\n this.inputsInOrder.forEach((input) => {\n input.removeAttribute(this.ARIA_INVALID);\n });\n if (!validHour) {\n this.hourInputEl?.setAttribute(this.ARIA_INVALID, \"true\");\n }\n if (!validMinute) {\n this.minuteInputEl?.setAttribute(this.ARIA_INVALID, \"true\");\n }\n if (!validSecond) {\n this.secondInputEl?.setAttribute(this.ARIA_INVALID, \"true\");\n }\n if (!(validHour && validMinute && validSecond)) {\n this.inputsInOrder.forEach((input) => {\n input.setAttribute(this.ARIA_INVALID, \"true\");\n });\n }\n }\n };\n\n private handleClear = () => {\n this.clearInput = true;\n if (this.hourInputEl) {\n this.hourInputEl.value = \"\";\n }\n if (this.minuteInputEl) {\n this.minuteInputEl.value = \"\";\n }\n if (!this.isHHMMFormat() && this.secondInputEl) {\n this.secondInputEl.value = \"\";\n }\n this.hour = \"\";\n this.minute = \"\";\n this.second = \"\";\n this.handleTimeChange(true);\n this.inputsInOrder.forEach((input) => {\n input.classList.remove(this.FIT_TO_VALUE);\n this.setPreventInput(input, false);\n });\n this.clearInput = false;\n this.isTimeSetFromKeyboardEvent = false;\n this.setValidationMessage();\n this.invalidTimeText = \"\";\n if (this.hourInputEl) {\n this.hourInputEl.focus();\n }\n };\n\n private notifyScreenReaderSelectedTime = () => {\n if (this.selectedTime && this.selectedTimeInfoEl) {\n if (this.isHHMMFormat()) {\n this.selectedTimeInfoEl.textContent = `Selected time: ${this.selectedTime\n .getHours()\n .toString()\n .padStart(2, \"0\")}:${this.selectedTime\n .getMinutes()\n .toString()\n .padStart(2, \"0\")}`;\n } else {\n this.selectedTimeInfoEl.textContent = `Selected time: ${this.selectedTime\n .getHours()\n .toString()\n .padStart(2, \"0\")}:${this.selectedTime\n .getMinutes()\n .toString()\n .padStart(2, \"0\")}:${this.selectedTime\n .getSeconds()\n .toString()\n .padStart(2, \"0\")}`;\n }\n }\n };\n\n private setFitToValueStyling = (input: HTMLInputElement) => {\n if (input.value) {\n input.classList.add(this.FIT_TO_VALUE);\n } else {\n input.classList.remove(this.FIT_TO_VALUE);\n }\n };\n\n private handleHostBlur = () => {\n this.removeLabelledBy = false;\n this.icBlur.emit({ value: this.selectedTime });\n };\n\n private handleHostFocus = () => {\n if (\n this.el.shadowRoot?.activeElement?.id.match(/(hour|minute|second)-input$/)\n ) {\n this.removeLabelledBy = false;\n } else {\n this.removeLabelledBy = true;\n }\n this.icFocus.emit({ value: this.selectedTime });\n };\n\n private handleFormReset = () => {\n this.setTime(this.initialValue);\n this.setValidationMessage();\n this.handleTimeChange(false);\n };\n\n private preventInput = (event: KeyboardEvent, isInputPrevented: boolean) => {\n const key = event.key;\n const input = event.target as HTMLInputElement;\n let selectedString;\n if (input) {\n selectedString = input.value.substring(\n input.selectionStart || 0,\n input.selectionEnd || undefined\n );\n }\n if (\n key === \"e\" ||\n key === \".\" ||\n key === \"-\" ||\n (event.key >= \"0\" &&\n event.key <= \"9\" &&\n isInputPrevented &&\n !selectedString)\n ) {\n event.preventDefault();\n }\n };\n\n private moveToNextInput = (currentInput: HTMLInputElement) => {\n this.preventAutoFormatting = false;\n this.inputsInOrder[\n this.inputsInOrder.findIndex((input) => input === currentInput) + 1\n ]?.focus();\n };\n\n private moveToPreviousInput = (currentInput: HTMLInputElement) => {\n this.preventAutoFormatting = false;\n this.inputsInOrder[\n this.inputsInOrder.findIndex((input) => input === currentInput) - 1\n ]?.focus();\n };\n\n private autocompleteInput = (input: HTMLInputElement) => {\n const inputValue = input.value;\n if (inputValue.length === 1) {\n input.value = `0${inputValue}`;\n }\n if (input.value) {\n this.setInputValue(input);\n }\n };\n\n private convertToTime = (\n hour: string,\n minute: string,\n second: string\n ): Date | null => {\n if (\n !isEmptyString(hour) &&\n !isEmptyString(minute) &&\n (this.isHHMMFormat() || !isEmptyString(second))\n ) {\n const d = new Date();\n d.setHours(+hour, +minute, this.isHHMMFormat() ? 0 : +second, 0);\n return d;\n } else {\n return null;\n }\n };\n\n private setInputsInOrder = () => {\n this.inputsInOrder = [];\n const shadowInputs = this.el.shadowRoot?.querySelectorAll(\"input\");\n if (shadowInputs) {\n shadowInputs.forEach((input) => this.inputsInOrder.push(input));\n }\n };\n\n private updateInputValues = (\n hour: string,\n minute: string,\n second: string\n ) => {\n if (this.hourInputEl && this.minuteInputEl && this.secondInputEl) {\n this.hourInputEl.value = hour;\n this.minuteInputEl.value = minute;\n this.secondInputEl.value = second;\n }\n };\n\n private removeAriaLabelledBy = () => {\n this.inputCompContainerEl?.removeAttribute(this.ARIA_LABELLED_BY);\n };\n\n private setAriaLabelledBy = () => {\n if (\n this.disabled &&\n this.inputCompContainerEl?.getAttribute(this.ARIA_LABELLED_BY)\n ) {\n this.removeAriaLabelledBy();\n return;\n }\n if (this.disabled) {\n return;\n }\n const labelEl = this.el.shadowRoot?.querySelector(\"label\");\n const labelId = `${this.inputId}-label`;\n if (labelEl !== null && labelEl !== undefined) {\n labelEl.id = labelId;\n }\n const hasValidation =\n !isEmptyString(this.validationStatus) ||\n !isEmptyString(this.invalidTimeText);\n const labelledBy = `${labelEl?.id ?? \"\"} ${\n this.screenReaderInfoId\n } ${getInputDescribedByText(\n this.el,\n this.inputId,\n this.helperText !== \"\" && this.helperText !== this.defaultHelperText,\n hasValidation\n )} ${this.selectedTime ? this.selectedTimeInfoId : \"\"} ${\n this.assistiveHintId\n }`;\n this.inputCompContainerEl?.setAttribute(this.ARIA_LABELLED_BY, labelledBy);\n };\n\n private getInputsInOrder = () => {\n const timeParts = this.timeFormat.split(\":\");\n return timeParts.map((part: string) => {\n switch (part.substring(0, 1)) {\n case \"H\":\n return (\n <input\n class=\"hour-input\"\n id=\"hour-input\"\n ref={(el) => (this.hourInputEl = el)}\n aria-label=\"hour\"\n placeholder=\"HH\"\n disabled={this.disabled}\n aria-required={`${this.required}`}\n inputmode=\"number\"\n pattern=\"[0-9]*\"\n onPaste={this.handlePaste}\n onKeyDown={(event) =>\n this.handleKeyDown(event, this.preventHourInput)\n }\n ></input>\n );\n case \"M\":\n return (\n <input\n id=\"minute-input\"\n class=\"minute-input\"\n ref={(el) => (this.minuteInputEl = el)}\n aria-label=\"minute\"\n placeholder=\"MM\"\n disabled={this.disabled}\n aria-required={`${this.required}`}\n inputmode=\"number\"\n pattern=\"[0-9]*\"\n onPaste={this.handlePaste}\n onKeyDown={(event) =>\n this.handleKeyDown(event, this.preventMinuteInput)\n }\n ></input>\n );\n case \"S\":\n if (!this.isHHMMFormat()) {\n return (\n <input\n id=\"second-input\"\n class=\"second-input\"\n ref={(el) => (this.secondInputEl = el)}\n aria-label=\"second\"\n placeholder=\"SS\"\n disabled={this.disabled}\n aria-required={`${this.required}`}\n inputmode=\"number\"\n pattern=\"[0-9]*\"\n onPaste={this.handlePaste}\n onKeyDown={(event) =>\n this.handleKeyDown(event, this.preventSecondInput)\n }\n ></input>\n );\n }\n return null;\n default:\n return null;\n }\n });\n };\n\n private getDescOfInputsOrder = () => {\n return \"hour, minute, and second\";\n };\n\n private getScreenReaderInfo = (validationStatus: string) => {\n let inputDescriptors = \"\";\n if (this.required) {\n inputDescriptors += \"required\";\n }\n if (validationStatus === IcInformationStatus.Error) {\n inputDescriptors += \" invalid data\";\n }\n return inputDescriptors === \"\" ? \"\" : inputDescriptors + \", \";\n };\n\n private notifyScreenReader = (input: HTMLInputElement) => {\n const liveRegion = this.el.shadowRoot?.querySelector(\"#live-region\");\n if (liveRegion) {\n liveRegion.textContent = `${input.value}, ${input.getAttribute(\n this.ARIA_LABEL\n )}`;\n }\n };\n\n private handlePaste = (event: ClipboardEvent) => {\n event.preventDefault();\n const pastedValue = event.clipboardData?.getData(\"Text\") || \"\";\n const isValidTime = this.isPastedStringTimeValid(pastedValue);\n this.setPastedValueAndValidation(isValidTime, pastedValue, event);\n };\n\n private handleClearFocus = () => {\n this.removeLabelledBy = true;\n this.clearButtonFocused = true;\n this.isTimeSetFromKeyboardEvent = true;\n };\n\n private handleClearBlur = (ev: FocusEvent) => {\n this.clearButtonFocused = false;\n this.isTimeSetFromKeyboardEvent = true;\n const relatedTarget = ev.relatedTarget as HTMLElement | null;\n if (relatedTarget?.id === \"clock-button\") {\n this.removeLabelledBy = false;\n return;\n }\n if (relatedTarget?.id.match(/(minute|second)-input$/)) {\n this.removeLabelledBy = false;\n return;\n }\n this.removeLabelledBy = true;\n };\n\n private handleClockFocus = () => {\n this.clockFocused = true;\n };\n\n private handleClockBlur = () => {\n this.clockFocused = false;\n };\n\n private isPastedStringTimeValid = (value: string): string | false => {\n if (this.isHHMMFormat()) {\n if (/^\\d{2}:\\d{2}$/.test(value)) {\n return value;\n }\n } else {\n if (/^\\d{2}:\\d{2}:\\d{2}$/.test(value)) {\n return value;\n }\n if (/^\\d{2}:\\d{2}:\\d{2}Z$/.test(value)) {\n return value.replace(\"Z\", \"\");\n }\n const isoMatch = value.match(/T(\\d{2}:\\d{2}:\\d{2})/);\n if (isoMatch) {\n return isoMatch[1];\n }\n }\n return false;\n };\n\n private setPastedValueAndValidation = (\n isValidTime: string | false,\n pastedValue: string,\n event: ClipboardEvent\n ) => {\n if (isValidTime) {\n const timeParts = isValidTime.split(\":\");\n this.inputsInOrder.forEach((input, index) => {\n input.classList.add(this.FIT_TO_VALUE);\n const timeValue = timeParts[index] || \"\";\n input.value = timeValue.slice(0, 2);\n this.setInputValue(input);\n this.autocompleteInput(input);\n });\n if (this.isHHMMFormat() && this.second !== \"\") {\n this.second = \"\";\n }\n } else {\n const pasted = pastedValue.trim();\n if ((pasted.length === 1 || pasted.length === 2) && isNumeric(pasted)) {\n this.setInputPasteValue(event.target, pasted);\n this.setInputValue(event.target as HTMLInputElement);\n } else {\n this.invalidTimeText = `Please paste a valid ${(\n event.target as HTMLInputElement\n ).getAttribute(this.ARIA_LABEL)}`;\n this.validationStatus = IcInformationStatus.Error;\n }\n }\n };\n\n render() {\n const {\n inputId,\n label,\n disabled,\n helperText,\n hideHelperText,\n hideLabel,\n showClearButton,\n showClockButton,\n size,\n theme,\n } = this;\n const hasCustomValidation = !isEmptyString(this.validationStatus);\n const validationStatus = hasCustomValidation\n ? this.validationStatus\n : !isEmptyString(this.invalidTimeText)\n ? IcInformationStatus.Error\n : \"\";\n const assistiveHint = `Type or use the up and down arrow keys to change the values for the ${this.getDescOfInputsOrder()}.`;\n renderHiddenInput(\n true,\n this.el,\n this.name,\n this.convertToTime(this.hour, this.minute, this.second),\n this.disabled\n );\n const showDivider = !!(\n showClearButton &&\n !(\n isEmptyString(this.hour) &&\n isEmptyString(this.minute) &&\n isEmptyString(this.second)\n )\n );\n return (\n <Host\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n [`ic-time-input-disabled`]: disabled,\n [`ic-time-input-${size}`]: true,\n }}\n onBlur={this.handleHostBlur}\n onFocus={this.handleHostFocus}\n >\n <ic-input-container disabled={disabled}>\n {!(hideLabel && hideHelperText) && (\n <ic-input-label\n for={inputId}\n label={label}\n hideLabel={hideLabel}\n helperText={!hideHelperText ? helperText : \"\"}\n disabled={disabled}\n >\n <slot name=\"helper-text\" slot=\"helper-text\"></slot>\n </ic-input-label>\n )}\n <span id={this.screenReaderInfoId} class=\"sr-only\" aria-hidden=\"true\">\n {this.getScreenReaderInfo(validationStatus)}\n {hideLabel && `${label}\\n`}\n {hideHelperText && `${helperText}\\n`}\n {`${this.defaultHelperText}.`}\n </span>\n <span id={this.assistiveHintId} class=\"sr-only\" aria-hidden=\"true\">\n {assistiveHint}\n </span>\n <span id=\"live-region\" aria-live=\"assertive\" class=\"sr-only\"></span>\n <ic-input-component-container\n id={inputId}\n ref={(el: HTMLIcInputComponentContainerElement) =>\n (this.inputCompContainerEl = el)\n }\n disabled={disabled}\n validationStatus={validationStatus}\n size={size}\n role=\"group\"\n class={{ [`ic-theme-${theme}`]: theme !== \"inherit\" }}\n >\n <div class=\"input-container\">\n <div class=\"time-inputs\">\n {[\n this.getInputsInOrder()[0],\n \":\",\n this.getInputsInOrder()[1],\n !this.isHHMMFormat()\n ? [\":\", this.getInputsInOrder()[2]]\n : null,\n ]}\n </div>\n <div class=\"action-buttons\">\n {showClearButton && (\n <ic-button\n id=\"clear-button\"\n aria-label=\"Clear input\"\n class={{\n [\"clear-button\"]: true,\n [\"hidden\"]:\n isEmptyString(this.hour) &&\n isEmptyString(this.minute) &&\n isEmptyString(this.second),\n }}\n disabled={this.disabled}\n innerHTML={Clear}\n onClick={this.handleClear}\n onFocus={this.handleClearFocus}\n onBlur={this.handleClearBlur}\n variant=\"icon-tertiary\"\n theme={this.clearButtonFocused ? \"light\" : \"dark\"}\n size={size}\n ></ic-button>\n )}\n {showClockButton && (\n <div class=\"show-clock-button-wrapper\">\n <div class={{ divider: showDivider, [size]: true }}></div>\n <ic-button\n id=\"clock-button\"\n aria-label=\"Display clock\"\n aria-haspopup=\"dialog\"\n class=\"clock-button\"\n disabled={this.disabled}\n innerHTML={Clock}\n variant=\"icon-tertiary\"\n size={size}\n onFocus={this.handleClockFocus}\n onBlur={this.handleClockBlur}\n theme={this.clockFocused ? \"light\" : \"dark\"}\n ></ic-button>\n </div>\n )}\n </div>\n </div>\n </ic-input-component-container>\n <span id={this.selectedTimeInfoId} class=\"sr-only\" aria-live=\"polite\">\n <span\n ref={(el) => (this.selectedTimeInfoEl = el)}\n role=\"status\"\n ></span>\n </span>\n {(hasCustomValidation || !isEmptyString(this.invalidTimeText)) && (\n <ic-input-validation\n status={validationStatus}\n message={\n hasCustomValidation ? this.validationText : this.invalidTimeText\n }\n for={inputId}\n ></ic-input-validation>\n )}\n </ic-input-container>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as n,h as i,H as e,g as o}from"./p-8e4e97b4.js";import{r as t,a as r,s as c,S as a,Y as s,o as l,Z as p,_ as d,$ as u,a0 as h}from"./p-ee95905f.js";const b="ic-input-component-container{display:flex;border:var(--ic-border-width) solid\n var(--border-color, var(--ic-architectural-400));border-radius:var(--ic-border-radius);transition:var(--ic-easing-transition-slow);height:2.5rem;min-height:2.5rem;width:var(--input-width, 20rem);padding:var(--ic-space-1px);background-color:var(--input-bg-color, var(--ic-color-background-primary));box-sizing:border-box;fill:var(--ic-architectural-400);outline:none}ic-input-component-container.ic-input-component-container-full-width{width:100%}ic-input-component-container.ic-input-component-container-disabled,ic-input-component-container.ic-input-component-container-disabled:hover{border:var(--ic-border-width) dashed\n var(--border-color-disabled, var(--ic-color-border-neutral-disabled))}ic-input-component-container.ic-input-component-container-readonly,ic-input-component-container.ic-input-component-container-small.ic-input-component-container-readonly,ic-input-component-container.ic-input-component-container-large.ic-input-component-container-readonly{height:auto;background:transparent}ic-input-component-container.ic-input-component-container-readonly,ic-input-component-container.ic-input-component-container-readonly:hover{border:none;padding:0}ic-input-component-container.ic-input-component-container-error{border:var(--ic-space-xxxs) solid\n var(--border-color-error, var(--ic-color-border-error));padding:0}ic-input-component-container.ic-input-component-container-error:hover{border:var(--ic-space-xxxs) solid\n var(--border-color-error-hover, var(--ic-color-border-error-hover))}ic-input-component-container.ic-input-component-container-error:focus-within{border:var(--ic-space-xxxs) solid\n var(--border-color-error-pressed, var(--ic-color-border-error-pressed))}ic-input-component-container.ic-input-component-container-warning{border:var(--ic-space-xxxs) solid\n var(--border-color-warning, var(--ic-color-border-warning));padding:0}ic-input-component-container.ic-input-component-container-warning:hover{border:var(--ic-space-xxxs) solid\n var(--border-color-warning-hover, var(--ic-color-border-warning-hover))}ic-input-component-container.ic-input-component-container-warning:focus-within{border:var(--ic-space-xxxs) solid\n var(--border-color-warning-pressed, var(--ic-color-border-warning-pressed))}ic-input-component-container.ic-input-component-container-success{border:var(--ic-space-xxxs) solid\n var(--border-color-success, var(--ic-color-border-success));padding:0}ic-input-component-container.ic-input-component-container-success:hover{border:var(--ic-space-xxxs) solid\n var(--border-color-success-hover, var(--ic-color-border-success-hover))}ic-input-component-container.ic-input-component-container-success:focus-within{border:var(--ic-space-xxxs) solid\n var(--border-color-success-pressed, var(--ic-color-border-success-pressed))}ic-input-component-container.ic-input-component-container-small{height:var(--ic-space-xl);min-height:var(--ic-space-xl)}ic-input-component-container.ic-input-component-container-large{height:var(--ic-space-xxl);min-height:var(--ic-space-xxl)}ic-input-component-container.ic-input-component-container-multiline{height:auto}ic-input-component-container .icon-container{margin-top:var(--ic-space-xxs);margin-left:0.438rem;display:flex;align-items:center}ic-input-component-container.ic-input-component-container-multiline .icon-container,ic-input-component-container.ic-input-component-container-multiline.ic-input-component-container-small .icon-container{margin-top:0.375rem;display:block}ic-input-component-container.ic-input-component-container-readonly .icon-container{margin-left:-0.313rem}ic-input-component-container.ic-input-component-container-disabled ::-moz-placeholder{display:none}ic-input-component-container.ic-input-component-container-disabled ::placeholder{display:none}ic-input-component-container .inline-success{margin:var(--ic-space-xs) 0.375rem;display:flex;align-items:center}ic-input-component-container .inline-success>svg{fill:var(--ic-input-component-container-success-icon-inline-color);height:1.25rem;width:1.25rem}ic-input-component-container:hover{border:var(--ic-input-component-container-hover-border);border-color:var(--border-color-hover, var(--ic-color-border-neutral-hover));color:var(--ic-action-monochrome-hover-dark)}ic-input-component-container:focus{border:var(--ic-border-pressed);border-color:var(\n --border-color-pressed,\n var(--ic-color-border-neutral-pressed)\n )}.focus-indicator{display:flex;width:100%;margin:-0.125rem;padding:0.125rem;border-radius:var(--ic-border-radius);transition:var(--ic-easing-transition-fast)}.focus-indicator:focus-within,.focus-indicator-enabled{box-shadow:var(--ic-border-focus)}.focus-indicator.ic-input-component-container-dark:focus-within{box-shadow:var(--ic-border-focus)}@media (forced-colors: active){ic-input-component-container,.focus-indicator{transition:none}ic-input-component-container:focus-within{border:var(--ic-border-width) solid Highlight;outline:0.125rem solid Highlight}ic-input-component-container.ic-input-component-container-disabled,ic-input-component-container.ic-input-component-container-disabled:hover{border:var(--ic-border-width) dashed GrayText}}";const m=b;const v=class{constructor(i){n(this,i);this.disabled=false;this.fullWidth=false;this.multiLine=false;this.readonly=false;this.size="medium";this.validationInline=false;this.validationStatus=""}watchDisabledHandler(){t(this.disabled,this.el)}componentWillLoad(){t(this.disabled,this.el)}componentDidLoad(){this.hostMutationObserver=new MutationObserver((n=>r(n,"left-icon",this)));this.hostMutationObserver.observe(this.el,{childList:true})}render(){const{size:n,validationStatus:o,disabled:t,readonly:r,multiLine:l,fullWidth:p,validationInline:d}=this;return i(e,{key:"82e6604ab956d7648209ae1214797d48ce4a169c",class:{[`ic-input-component-container-${n}`]:true,[`ic-input-component-container-${o}`]:o!==""&&!t&&!r,"ic-input-component-container-disabled":!!t,"ic-input-component-container-readonly":!!r,"ic-input-component-container-multiline":!!l,"ic-input-component-container-full-width":!!p},"aria-disabled":t?"true":null},i("div",{key:"0fd329a8f1397ab2b6f7b4f3fd62d180003ef7e4",class:"focus-indicator"},c(this.el,"left-icon")&&i("div",{key:"3af5861c01b3e6338e20288c0577d4554d9357e6",class:"icon-container"},i("slot",{key:"25bd5414058904fb5ed05f0e4e7fda6fc4966fbb",name:"left-icon"})),i("slot",{key:"2a63ea395d97ca2f3121f30fae1a3ac8bdfd7599"}),d&&o===a.Success&&i("span",{key:"ac962172c01b7cc0abf776b7a5ff0e58cd996ad7",class:"inline-success",innerHTML:s})))}get el(){return o(this)}static get watchers(){return{disabled:["watchDisabledHandler"]}}};v.style=m;const f="ic-input-container .component-container{display:flex;flex-direction:column}";const g=f;const x=class{constructor(i){n(this,i);this.disabled=false;this.readonly=false}render(){return i(e,{key:"d7a6f03073013efef8534f6305e64f66d2b58b91"},i("div",{key:"f93b5ad4fc27eed8fabf3fd83de73906b4592ca4",class:{["component-container"]:true,["disabled"]:!!this.disabled,["readonly"]:!!this.readonly}},i("slot",{key:"59074f71d915aebc3205308c0406b4f6ab2a73ae"})))}};x.style=g;const y="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)}";const w=y;const k=class{constructor(i){n(this,i);this.disabled=false;this.helperText="";this.hideLabel=false;this.readonly=false;this.required=false;this.status="";this.useLabelTag=true;this.isHelperTextSlotUsed=n=>{const i=n===null||n===void 0?void 0:n.assignedElements();if(i&&i.length){for(const n of i){if(n.tagName==="SLOT"){if(this.isHelperTextSlotUsed(n)){return true}}else{return true}}}return false}}componentDidLoad(){l([{prop:this.label,propName:"label"}],"Input Label")}render(){const{disabled:n,readonly:o,label:t,required:r,helperText:c,status:a,hideLabel:s,useLabelTag:l}=this;const d=r?t+" *":t;const u=this.for&&p(this.for);const h={helpertext:true,"helpertext-normal":!n&&!o,"helpertext-readonly":o};const b=this.el.querySelector("slot[name='helper-text']");return i(e,{key:"b4ae951684bc9fbacd077fd7586a60a680cb1114",class:{"ic-input-label-disabled":!!n,"ic-input-label-readonly":o,"with-helper":this.isHelperTextSlotUsed(b)||c!==""}},!s&&i("ic-typography",{key:"dd5d6d73707aadd9cc59225224fffadefecda9c7",variant:"label",class:{"readonly-label":o,"error-label":a==="error"&&!(o||n)}},o||!l?`${d}`:i("label",{htmlFor:this.for},d)),this.isHelperTextSlotUsed(b)?i("span",{id:u,class:h},i("slot",{name:"helper-text"})):c!==""&&i("ic-typography",{variant:"caption",class:h},i("span",{id:u},c)))}get el(){return o(this)}};k.style=w;const L="ic-input-validation{width:var(--input-width, 20rem);margin-top:var(--ic-space-xs);display:flex}ic-input-validation.ic-input-validation-full-width{width:100%}ic-input-validation span.status-icon{padding-right:var(--ic-space-xxs)}ic-input-validation span.status-icon>svg{height:1.25rem;width:1.25rem}ic-input-validation span.icon-success>svg{fill:var(--ic-input-validation-success-icon-color)}ic-input-validation span.icon-error>svg{fill:var(--ic-input-validation-error, var(--ic-atoms-status-icon-error))}ic-input-validation span.icon-warning>svg{fill:var(--ic-input-validation-warning-icon-color)}ic-input-validation .statustext{flex-grow:1;color:var(\n --ic-input-validation-status-text-color,\n var(--ic-color-text-primary)\n );--ic-typography-color:var(\n --ic-input-validation-status-text-color,\n var(--ic-color-text-primary)\n )}ic-input-validation .sr-only{position:absolute;left:-9999px}";const _=L;const H={[a.Warning]:u,[a.Error]:h,[a.Success]:s};const T="​";const M=class{constructor(i){n(this,i);this.ariaLiveMode="polite";this.fullWidth=false;this.status=""}watchMessageHandler(n){this.messageEl.textContent=T;setTimeout((()=>{this.messageEl.textContent=n}),100)}componentDidLoad(){l([{prop:this.message,propName:"message"}],"Input Validation");this.messageEl.textContent=T}render(){const{ariaLiveMode:n,fullWidth:o,status:t,message:r}=this;const c=t!==""?H[t]:"";return i(e,{key:"34ecf789f9c0821d672bcdf532f778b8132bb595",class:{[`ic-input-validation-${t}`]:t!=="","ic-input-validation-full-width":!!o}},c!==""&&i("span",{key:"8d40b240e1e7647725c0359205a638eae4cb2cee",class:{"status-icon":true,[`icon-${t}`]:true},innerHTML:c}),i("ic-typography",{key:"841555cf1e183663ed22863bb98ccbf18dc5747d",variant:"caption",class:"statustext"},i("span",{key:"8f9cde8e980016736a58129b3928a8f90da8054c",id:this.for&&d(this.for)},r),i("span",{key:"3497fb929f8e6d55db69462405d4d2655741511b",ref:n=>this.messageEl=n,class:"sr-only","aria-live":n})),i("slot",{key:"58ac53581ef92420a088eb50bfb1e9fcedad5660",name:"validation-message-adornment"}))}get el(){return o(this)}static get watchers(){return{message:["watchMessageHandler"]}}};M.style=_;export{v as ic_input_component_container,x as ic_input_container,k as ic_input_label,M as ic_input_validation};
2
- //# sourceMappingURL=p-c08ea34d.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as t,c as i,h as e,H as s,g as a}from"./p-8e4e97b4.js";import{s as o,r as n,h as r,o as l,l as h}from"./p-ee95905f.js";const d='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;--ic-input-label-text-color:var(--ic-radio-button-input-field-label);--ic-input-label-helper-text-color:var(\n --ic-radio-button-input-field-subtitle\n );--ic-input-validation-status-text-color:var(--ic-radio-button-state-text);--ic-input-validation-error:var(--ic-radio-button-state-icon-error)}ic-input-label.error{--ic-input-label-text-color:var(--ic-radio-button-input-field-label-error)}ic-input-label.disabled{--ic-input-label-text-color:var(\n --ic-radio-button-input-field-label-disabled\n );--ic-input-label-helper-text-color:var(\n --ic-radio-button-input-field-subtitle-disabled\n )}ic-input-validation{margin-top:var(--ic-space-sm)}:host(.ic-radio-group-small) ic-input-validation{margin-top:calc(var(--ic-space-sm) / 2)}ic-input-label:not(.with-helper) .ic-typography-label,ic-input-label .helpertext{margin-bottom:var(--ic-space-sm)}:host(.ic-radio-group-small) ic-input-label:not(.with-helper) .ic-typography-label,:host(.ic-radio-group-small) ic-input-label .helpertext{margin-bottom:calc(var(--ic-space-sm) / 2)}ic-input-label .helpertext{display:block}:host .radio-buttons-container{display:flex;flex-direction:column;gap:var(--ic-space-xxs)}:host(.ic-radio-group-small) .radio-buttons-container{gap:var(--ic-space-xxxs)}:host .radio-buttons-container.horizontal{display:flex;flex-direction:row;gap:calc(var(--ic-space-xl) + var(--ic-space-xs))}:host(.ic-radio-group-small) .radio-buttons-container.horizontal{gap:var(--ic-space-xl)}';const c=d;const p=class{constructor(e){t(this,e);this.icChange=i(this,"icChange",7);this.resizeObserver=null;this.ADDITIONAL_FIELD="additional-field";this.RADIO_HORIZONTAL="horizontal";this.RADIO_VERTICAL="vertical";this.checkedValue="";this.selectedChild=-1;this.disabled=false;this.hideLabel=false;this.orientation="vertical";this.required=false;this.size="medium";this.validationStatus="";this.validationText="";this.theme="inherit";this.runResizeObserver=()=>{this.resizeObserver=new ResizeObserver((()=>{this.checkOrientation()}));this.resizeObserver.observe(this.el)};this.handleKeyDown=t=>{const i=Array.from(this.el.querySelectorAll('ic-text-field[slot="additional-field"]'));const e=document.activeElement;if(i.length>0&&this.radioOptions.map((t=>o(t,this.ADDITIONAL_FIELD)))&&i.map((t=>t==e))){return}t.stopPropagation();switch(t.key){case"ArrowDown":case"ArrowRight":this.radioOptions[this.getNextItemToSelect(this.selectedChild,true)].click();t.preventDefault();break;case"ArrowUp":case"ArrowLeft":this.radioOptions[this.getNextItemToSelect(this.selectedChild,false)].click();t.preventDefault()}};this.getNextItemToSelect=(t,i)=>{const e=this.radioOptions.length-1;if(t<1){t=0}let s=i?t+1:t-1;if(s<0){s=e}else if(s>e){s=0}if(this.radioOptions[s].disabled){s=this.getNextItemToSelect(s,i)}return s};this.addSlotChangeListener=()=>{var t;(t=this.radioContainer)===null||t===void 0?void 0:t.addEventListener("slotchange",this.setRadioOptions)};this.setFirstRadioOptionTabIndex=t=>{this.radioOptions[0].setTabIndex(t)};this.setRadioOptions=()=>{this.selectedChild=-1;this.checkedValue="";this.radioOptions=Array.from(this.el.children).filter((t=>t.tagName==="IC-RADIO-OPTION"));if(this.radioOptions.length>0){this.radioOptions.forEach(((t,i)=>{if(!t.selected){t.selected=this.checkedValue===t.value}t.name=this.name;t.groupLabel=this.label;if(t.selected){this.selectedChild=i;this.checkedValue=t.value}if(this.disabled){t.disabled=true}}));this.setFirstRadioOptionTabIndex(this.selectedChild>0?-1:0);if(this.initialOrientation===this.RADIO_HORIZONTAL&&this.radioOptions!==undefined&&(this.radioOptions.length>2||this.radioOptions.length===2&&(o(this.radioOptions[0],this.ADDITIONAL_FIELD)||o(this.radioOptions[1],this.ADDITIONAL_FIELD)))){this.currentOrientation=this.RADIO_VERTICAL}}}}watchDisabledHandler(t){this.radioOptions.forEach((i=>i.disabled=t));n(this.disabled,this.el)}orientationChangeHandler(){this.initialOrientation=this.orientation;this.checkOrientation()}watchThemeHandler(t){this.radioOptions.forEach((i=>i.theme=t))}disconnectedCallback(){var t,i;(t=this.resizeObserver)===null||t===void 0?void 0:t.disconnect();(i=this.radioContainer)===null||i===void 0?void 0:i.removeEventListener("slotchange",this.setRadioOptions)}componentWillLoad(){n(this.disabled,this.el);this.orientationChangeHandler();this.currentOrientation=this.initialOrientation}componentDidLoad(){this.setRadioOptions();r(this.runResizeObserver);this.addSlotChangeListener();l([{prop:this.label,propName:"label"},{prop:this.name,propName:"name"}],"Radio Group");this.watchThemeHandler(this.theme)}selectHandler({detail:t,target:i}){var e;const s=i;if(s.parentElement===this.el){this.checkedValue=t.value;this.icChange.emit({value:this.checkedValue,selectedOption:{radio:s,textFieldValue:(e=s===null||s===void 0?void 0:s.querySelector("ic-text-field"))===null||e===void 0?void 0:e.value}});if(this.radioOptions!==undefined){this.radioOptions.forEach(((t,i)=>{t.selected=s===t;if(t.selected){this.selectedChild=i}}));this.setFirstRadioOptionTabIndex(this.selectedChild>0?-1:0)}}}changeHandler(){var t;const i=(t=this.radioOptions)===null||t===void 0?void 0:t.findIndex((t=>t.selected));if(i<0){this.setFirstRadioOptionTabIndex(0);this.selectedChild=i}}checkOrientation(){if(this.initialOrientation===this.RADIO_HORIZONTAL){let t=0;if(Array.isArray(this.radioOptions)&&this.radioOptions.length>0){this.radioOptions.forEach((({clientWidth:i},e,s)=>{t+=i;if(e<s.length-1)t+=40}))}else{t=0}if(this.initialOrientation==this.RADIO_HORIZONTAL){if(this.radioOptions!==undefined&&(this.radioOptions.length>2||this.radioOptions.length===2&&(o(this.radioOptions[0],this.ADDITIONAL_FIELD)||o(this.radioOptions[1],this.ADDITIONAL_FIELD)))){this.currentOrientation=this.RADIO_VERTICAL}else{if(this.radioContainer){if(t>=this.radioContainer.clientWidth){this.currentOrientation=this.RADIO_VERTICAL}else if(t<this.radioContainer.clientWidth){this.currentOrientation=this.RADIO_HORIZONTAL}}}}}}render(){const{currentOrientation:t,disabled:i,handleKeyDown:a,helperText:o,hideLabel:n,label:r,required:l,size:d,validationStatus:c,validationText:p,theme:b}=this;return e(s,{key:"1918a447f8496430296685b05e633e9b3fdc60b1",onKeyDown:a,class:{"ic-radio-group-small":d==="small",[`ic-theme-${b}`]:b!=="inherit"}},e("fieldset",{key:"89b09cf7b89cff9e80077134e2ab675e4fa50f9f",role:"radiogroup",id:this.name,"aria-required":`${l}`},!n&&e("legend",{key:"be8903e178ff4f75c6fe63398b9fbecfd7c05d68"},e("ic-input-label",{key:"98a73b9c42bfa5c9c8993eaa7c2fce79f2905540",class:{[`${c}`]:true,["disabled"]:!!i},label:r,helperText:o,required:l,disabled:i},e("slot",{key:"2440d6283794eb94b28da42e44d8824260ffb064",name:"helper-text",slot:"helper-text"}))),e("div",{key:"51f662a214f2b191df64bf2ec1c84f914b53dd8e",class:{"radio-buttons-container":true,horizontal:t===this.RADIO_HORIZONTAL},ref:t=>this.radioContainer=t},e("slot",{key:"44ece542e47d62879f01d2daf14a7771818288fd"}))),h(c,i)&&e("ic-input-validation",{key:"b9a2fd5d969534c01e7a30be1a0a3f45e5a59072",ariaLiveMode:"polite",status:c,message:p}))}get el(){return a(this)}static get watchers(){return{disabled:["watchDisabledHandler"],orientation:["orientationChangeHandler"],theme:["watchThemeHandler"]}}};p.style=c;export{p as ic_radio_group};
2
- //# sourceMappingURL=p-c95be271.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["icRadioGroupCss","IcRadioGroupStyle0","RadioGroup","constructor","hostRef","this","resizeObserver","ADDITIONAL_FIELD","RADIO_HORIZONTAL","RADIO_VERTICAL","checkedValue","selectedChild","disabled","hideLabel","orientation","required","size","validationStatus","validationText","theme","runResizeObserver","ResizeObserver","checkOrientation","observe","el","handleKeyDown","event","additionalFields","Array","from","querySelectorAll","activeEl","document","activeElement","length","radioOptions","map","slotHasContent","stopPropagation","key","getNextItemToSelect","click","preventDefault","currentItem","movingDown","numRadios","nextItem","addSlotChangeListener","_a","radioContainer","addEventListener","setRadioOptions","setFirstRadioOptionTabIndex","value","setTabIndex","children","filter","tagName","forEach","radioOption","index","selected","name","groupLabel","label","initialOrientation","undefined","currentOrientation","watchDisabledHandler","newValue","removeDisabledFalse","orientationChangeHandler","watchThemeHandler","disconnectedCallback","_b","disconnect","removeEventListener","componentWillLoad","componentDidLoad","checkResizeObserver","onComponentRequiredPropUndefined","prop","propName","selectHandler","detail","target","selectedOption","parentElement","icChange","emit","radio","textFieldValue","querySelector","changeHandler","findIndex","totalWidth","isArray","clientWidth","i","arr","render","helperText","h","Host","onKeyDown","class","role","id","slot","horizontal","ref","hasValidationStatus","ariaLiveMode","status","message"],"sources":["../web-components/dist/collection/components/ic-radio-group/ic-radio-group.css?tag=ic-radio-group&encapsulation=shadow","../web-components/dist/collection/components/ic-radio-group/ic-radio-group.js"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nb,\nu,\ni,\ncenter,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font-style: inherit;\n vertical-align: baseline;\n}\n\n\n:host {\n display: block;\n\n --ic-input-label-text-color: var(--ic-radio-button-input-field-label);\n --ic-input-label-helper-text-color: var(\n --ic-radio-button-input-field-subtitle\n );\n --ic-input-validation-status-text-color: var(--ic-radio-button-state-text);\n --ic-input-validation-error: var(--ic-radio-button-state-icon-error);\n}\n\nic-input-label.error {\n --ic-input-label-text-color: var(--ic-radio-button-input-field-label-error);\n}\n\nic-input-label.disabled {\n --ic-input-label-text-color: var(\n --ic-radio-button-input-field-label-disabled\n );\n --ic-input-label-helper-text-color: var(\n --ic-radio-button-input-field-subtitle-disabled\n );\n}\n\nic-input-validation {\n margin-top: var(--ic-space-sm);\n}\n\n:host(.ic-radio-group-small) ic-input-validation {\n margin-top: calc(var(--ic-space-sm) / 2);\n}\n\nic-input-label:not(.with-helper) .ic-typography-label,\nic-input-label .helpertext {\n margin-bottom: var(--ic-space-sm);\n}\n\n:host(.ic-radio-group-small)\n ic-input-label:not(.with-helper)\n .ic-typography-label,\n:host(.ic-radio-group-small) ic-input-label .helpertext {\n margin-bottom: calc(var(--ic-space-sm) / 2);\n}\n\nic-input-label .helpertext {\n display: block;\n}\n\n:host .radio-buttons-container {\n display: flex;\n flex-direction: column;\n gap: var(--ic-space-xxs);\n}\n\n:host(.ic-radio-group-small) .radio-buttons-container {\n gap: var(--ic-space-xxxs);\n}\n\n:host .radio-buttons-container.horizontal {\n display: flex;\n flex-direction: row;\n gap: calc(var(--ic-space-xl) + var(--ic-space-xs));\n}\n\n:host(.ic-radio-group-small) .radio-buttons-container.horizontal {\n gap: var(--ic-space-xl);\n}\n","import { Host, h, } from \"@stencil/core\";\nimport { hasValidationStatus, slotHasContent, onComponentRequiredPropUndefined, removeDisabledFalse, checkResizeObserver, } from \"../../utils/helpers\";\n/**\n * @slot helper-text - Content is set as the helper text for the radio group.\n */\nexport class RadioGroup {\n constructor() {\n this.resizeObserver = null;\n this.ADDITIONAL_FIELD = \"additional-field\";\n this.RADIO_HORIZONTAL = \"horizontal\";\n this.RADIO_VERTICAL = \"vertical\";\n this.checkedValue = \"\";\n this.selectedChild = -1;\n /**\n * If `true`, the disabled state will be set.\n */\n this.disabled = false;\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n this.hideLabel = false;\n /**\n * The orientation of the radio buttons in the radio group. If there are more than two radio buttons in a radio group or either of the radio buttons use the `additional-field` slot, then the orientation will always be vertical.\n */\n this.orientation = \"vertical\";\n /**\n * If `true`, the radio group will require a value.\n */\n this.required = false;\n /**\n * The size of the radio group component.\n */\n this.size = \"medium\";\n /**\n * The validation status - e.g. 'error' | 'warning' | 'success'.\n */\n this.validationStatus = \"\";\n /**\n * The text to display as the validation message.\n */\n this.validationText = \"\";\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 this.theme = \"inherit\";\n this.runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n this.checkOrientation();\n });\n this.resizeObserver.observe(this.el);\n };\n this.handleKeyDown = (event) => {\n const additionalFields = Array.from(this.el.querySelectorAll('ic-text-field[slot=\"additional-field\"]'));\n const activeEl = document.activeElement;\n if (additionalFields.length > 0 &&\n this.radioOptions.map((el) => slotHasContent(el, this.ADDITIONAL_FIELD)) &&\n additionalFields.map((el) => el == activeEl)) {\n return;\n }\n event.stopPropagation();\n switch (event.key) {\n case \"ArrowDown\":\n case \"ArrowRight\":\n this.radioOptions[this.getNextItemToSelect(this.selectedChild, true)].click();\n event.preventDefault();\n break;\n case \"ArrowUp\":\n case \"ArrowLeft\":\n this.radioOptions[this.getNextItemToSelect(this.selectedChild, false)].click();\n event.preventDefault();\n }\n };\n this.getNextItemToSelect = (currentItem, movingDown) => {\n const numRadios = this.radioOptions.length - 1;\n if (currentItem < 1) {\n currentItem = 0;\n }\n let nextItem = movingDown ? currentItem + 1 : currentItem - 1;\n //check if wrap around necessary\n if (nextItem < 0) {\n nextItem = numRadios;\n }\n else if (nextItem > numRadios) {\n nextItem = 0;\n }\n //if next item is disabled then find next\n if (this.radioOptions[nextItem].disabled) {\n nextItem = this.getNextItemToSelect(nextItem, movingDown);\n }\n return nextItem;\n };\n this.addSlotChangeListener = () => {\n var _a;\n (_a = this.radioContainer) === null || _a === void 0 ? void 0 : _a.addEventListener(\"slotchange\", this.setRadioOptions);\n };\n this.setFirstRadioOptionTabIndex = (value) => {\n this.radioOptions[0].setTabIndex(value);\n };\n this.setRadioOptions = () => {\n this.selectedChild = -1;\n this.checkedValue = \"\";\n this.radioOptions = Array.from(this.el.children).filter((el) => el.tagName === \"IC-RADIO-OPTION\");\n if (this.radioOptions.length > 0) {\n this.radioOptions.forEach((radioOption, index) => {\n if (!radioOption.selected) {\n radioOption.selected = this.checkedValue === radioOption.value;\n }\n radioOption.name = this.name;\n radioOption.groupLabel = this.label;\n if (radioOption.selected) {\n this.selectedChild = index;\n this.checkedValue = radioOption.value;\n }\n if (this.disabled) {\n radioOption.disabled = true;\n }\n });\n this.setFirstRadioOptionTabIndex(this.selectedChild > 0 ? -1 : 0);\n if (this.initialOrientation === this.RADIO_HORIZONTAL &&\n this.radioOptions !== undefined &&\n (this.radioOptions.length > 2 ||\n (this.radioOptions.length === 2 &&\n (slotHasContent(this.radioOptions[0], this.ADDITIONAL_FIELD) ||\n slotHasContent(this.radioOptions[1], this.ADDITIONAL_FIELD))))) {\n this.currentOrientation = this.RADIO_VERTICAL;\n }\n }\n };\n }\n watchDisabledHandler(newValue) {\n this.radioOptions.forEach((radioOption) => (radioOption.disabled = newValue));\n removeDisabledFalse(this.disabled, this.el);\n }\n orientationChangeHandler() {\n this.initialOrientation = this.orientation;\n this.checkOrientation();\n }\n watchThemeHandler(newValue) {\n this.radioOptions.forEach((radioOption) => (radioOption.theme = newValue));\n }\n disconnectedCallback() {\n var _a, _b;\n (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();\n (_b = this.radioContainer) === null || _b === void 0 ? void 0 : _b.removeEventListener(\"slotchange\", this.setRadioOptions);\n }\n componentWillLoad() {\n removeDisabledFalse(this.disabled, this.el);\n this.orientationChangeHandler();\n this.currentOrientation = this.initialOrientation;\n }\n componentDidLoad() {\n this.setRadioOptions();\n checkResizeObserver(this.runResizeObserver);\n this.addSlotChangeListener();\n onComponentRequiredPropUndefined([\n { prop: this.label, propName: \"label\" },\n { prop: this.name, propName: \"name\" },\n ], \"Radio Group\");\n this.watchThemeHandler(this.theme);\n }\n selectHandler({ detail, target }) {\n var _a;\n const selectedOption = target;\n if (selectedOption.parentElement === this.el) {\n this.checkedValue = detail.value;\n this.icChange.emit({\n value: this.checkedValue,\n selectedOption: {\n radio: selectedOption,\n textFieldValue: (_a = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.querySelector(\"ic-text-field\")) === null || _a === void 0 ? void 0 : _a.value,\n },\n });\n if (this.radioOptions !== undefined) {\n this.radioOptions.forEach((radioOption, index) => {\n radioOption.selected = selectedOption === radioOption;\n if (radioOption.selected) {\n this.selectedChild = index;\n }\n });\n this.setFirstRadioOptionTabIndex(this.selectedChild > 0 ? -1 : 0);\n }\n }\n }\n changeHandler() {\n var _a;\n const selectedOption = (_a = this.radioOptions) === null || _a === void 0 ? void 0 : _a.findIndex((radioOption) => radioOption.selected);\n if (selectedOption < 0) {\n this.setFirstRadioOptionTabIndex(0);\n this.selectedChild = selectedOption;\n }\n }\n checkOrientation() {\n if (this.initialOrientation === this.RADIO_HORIZONTAL) {\n let totalWidth = 0;\n if (Array.isArray(this.radioOptions) && this.radioOptions.length > 0) {\n this.radioOptions.forEach(({ clientWidth }, i, arr) => {\n totalWidth += clientWidth;\n if (i < arr.length - 1)\n totalWidth += 40;\n });\n }\n else {\n totalWidth = 0;\n }\n if (this.initialOrientation == this.RADIO_HORIZONTAL) {\n if (this.radioOptions !== undefined &&\n (this.radioOptions.length > 2 ||\n (this.radioOptions.length === 2 &&\n (slotHasContent(this.radioOptions[0], this.ADDITIONAL_FIELD) ||\n slotHasContent(this.radioOptions[1], this.ADDITIONAL_FIELD))))) {\n this.currentOrientation = this.RADIO_VERTICAL;\n }\n else {\n if (this.radioContainer) {\n if (totalWidth >= this.radioContainer.clientWidth) {\n this.currentOrientation = this.RADIO_VERTICAL;\n }\n else if (totalWidth < this.radioContainer.clientWidth) {\n this.currentOrientation = this.RADIO_HORIZONTAL;\n }\n }\n }\n }\n }\n }\n render() {\n const { currentOrientation, disabled, handleKeyDown, helperText, hideLabel, label, required, size, validationStatus, validationText, theme, } = this;\n return (h(Host, { key: '1918a447f8496430296685b05e633e9b3fdc60b1', onKeyDown: handleKeyDown, class: {\n \"ic-radio-group-small\": size === \"small\",\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n } }, h(\"fieldset\", { key: '89b09cf7b89cff9e80077134e2ab675e4fa50f9f', role: \"radiogroup\", id: this.name, \"aria-required\": `${required}` }, !hideLabel && (h(\"legend\", { key: 'be8903e178ff4f75c6fe63398b9fbecfd7c05d68' }, h(\"ic-input-label\", { key: '98a73b9c42bfa5c9c8993eaa7c2fce79f2905540', class: {\n [`${validationStatus}`]: true,\n [\"disabled\"]: !!disabled,\n }, label: label, helperText: helperText, required: required, disabled: disabled }, h(\"slot\", { key: '2440d6283794eb94b28da42e44d8824260ffb064', name: \"helper-text\", slot: \"helper-text\" })))), h(\"div\", { key: '51f662a214f2b191df64bf2ec1c84f914b53dd8e', class: {\n \"radio-buttons-container\": true,\n horizontal: currentOrientation === this.RADIO_HORIZONTAL,\n }, ref: (el) => (this.radioContainer = el) }, h(\"slot\", { key: '44ece542e47d62879f01d2daf14a7771818288fd' }))), hasValidationStatus(validationStatus, disabled) && (h(\"ic-input-validation\", { key: 'b9a2fd5d969534c01e7a30be1a0a3f45e5a59072', ariaLiveMode: \"polite\", status: validationStatus, message: validationText }))));\n }\n static get is() { return \"ic-radio-group\"; }\n static get encapsulation() { return \"shadow\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-radio-group.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-radio-group.css\"]\n };\n }\n static get properties() {\n return {\n \"disabled\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean | undefined\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the disabled state will be set.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"disabled\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"helperText\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string | undefined\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The helper text that will be displayed for additional field guidance.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"helper-text\",\n \"reflect\": false\n },\n \"hideLabel\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean | undefined\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the label will be hidden and the required label value will be applied as an aria-label.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"hide-label\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"label\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": true,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The label for the radio group to be displayed.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"label\",\n \"reflect\": false\n },\n \"name\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": true,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The name for the radio group to differentiate from other groups.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"name\",\n \"reflect\": false\n },\n \"orientation\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcOrientation\",\n \"resolved\": \"\\\"horizontal\\\" | \\\"vertical\\\" | undefined\",\n \"references\": {\n \"IcOrientation\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcOrientation\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The orientation of the radio buttons in the radio group. If there are more than two radio buttons in a radio group or either of the radio buttons use the `additional-field` slot, then the orientation will always be vertical.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"orientation\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"vertical\\\"\"\n },\n \"required\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean | undefined\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the radio group will require a value.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"required\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"size\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcSizesNoLarge\",\n \"resolved\": \"\\\"medium\\\" | \\\"small\\\" | undefined\",\n \"references\": {\n \"IcSizesNoLarge\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcSizesNoLarge\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The size of the radio group component.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"size\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"medium\\\"\"\n },\n \"validationStatus\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcInformationStatusOrEmpty\",\n \"resolved\": \"\\\"\\\" | \\\"error\\\" | \\\"success\\\" | \\\"warning\\\" | undefined\",\n \"references\": {\n \"IcInformationStatusOrEmpty\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcInformationStatusOrEmpty\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The validation status - e.g. 'error' | 'warning' | 'success'.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"validation-status\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"\\\"\"\n },\n \"validationText\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string | undefined\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The text to display as the validation message.\"\n },\n \"getter\": false,\n \"setter\": false,\n \"attribute\": \"validation-text\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"\\\"\"\n },\n \"theme\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcThemeMode\",\n \"resolved\": \"\\\"dark\\\" | \\\"inherit\\\" | \\\"light\\\" | undefined\",\n \"references\": {\n \"IcThemeMode\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcThemeMode\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"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 \"getter\": false,\n \"setter\": false,\n \"attribute\": \"theme\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"inherit\\\"\"\n }\n };\n }\n static get states() {\n return {\n \"checkedValue\": {},\n \"currentOrientation\": {},\n \"initialOrientation\": {},\n \"selectedChild\": {}\n };\n }\n static get events() {\n return [{\n \"method\": \"icChange\",\n \"name\": \"icChange\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when a user selects a radio.\"\n },\n \"complexType\": {\n \"original\": \"IcChangeEventDetail\",\n \"resolved\": \"IcChangeEventDetail\",\n \"references\": {\n \"IcChangeEventDetail\": {\n \"location\": \"import\",\n \"path\": \"./ic-radio-group.types\",\n \"id\": \"src/components/ic-radio-group/ic-radio-group.types.ts::IcChangeEventDetail\"\n }\n }\n }\n }];\n }\n static get elementRef() { return \"el\"; }\n static get watchers() {\n return [{\n \"propName\": \"disabled\",\n \"methodName\": \"watchDisabledHandler\"\n }, {\n \"propName\": \"orientation\",\n \"methodName\": \"orientationChangeHandler\"\n }, {\n \"propName\": \"theme\",\n \"methodName\": \"watchThemeHandler\"\n }];\n }\n static get listeners() {\n return [{\n \"name\": \"icCheck\",\n \"method\": \"selectHandler\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }, {\n \"name\": \"icSelectedChange\",\n \"method\": \"changeHandler\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }];\n }\n}\n//# sourceMappingURL=ic-radio-group.js.map\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as i,c as t,h as e,F as s,H as a,g as o}from"./p-8e4e97b4.js";import{c as n}from"./p-e081702e.js";import{h as r,m as l,i as h,o as d}from"./p-ee95905f.js";const c='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;min-height:100% !important;background:rgb(0 0 0 / 60%);z-index:var(--ic-z-index-dialog);opacity:0}:host(.ic-dialog-fade-in){opacity:1}:host(.disable-height-constraint){background:none;justify-content:unset;align-items:unset}.dialog.disable-height-constraint{max-height:none;position:relative}.dialog.disable-height-constraint .content-area{overflow-y:visible}@media (prefers-reduced-motion: no-preference){:host{transition:opacity var(--ic-easing-transition-slow)}.dialog{transform:translateY(-3rem);transition:transform 1000s}:host(.ic-dialog-fade-in) .dialog{transform:translateY(0);transition:transform var(--ic-easing-transition-slow)}}:host(.ic-dialog-hidden){display:none}.dialog{background-color:var(--ic-dialog-background);color:var(--ic-dialog-text-primary);--ic-typography-color:var(--ic-dialog-text-primary);border:var(--ic-space-1px) solid var(--ic-dialog-border);border-radius:var(--ic-border-radius);padding:var(--ic-space-xs) 0 var(--ic-space-md);display:flex;flex-direction:column;box-sizing:border-box;overflow-x:visible}.small{width:50%;max-width:25rem;min-height:11rem;max-height:70vh}.medium{width:70vw;max-width:44rem;min-height:12.5rem;max-height:70vh}.large{width:90vw;max-width:62.5rem;min-height:12.5rem;max-height:90vh}.heading-area{display:flex;margin-bottom:var(--ic-space-xs);padding:0 var(--ic-space-md)}.heading{overflow-wrap:break-word}.close-icon{margin-left:auto}.close-icon>svg{color:var(--ic-dialog-clear-button)}.content-area{padding:0 var(--ic-space-md);margin:0;overflow-y:auto}#dialog-content{margin-bottom:var(--ic-space-sm)}#dialog-content ::slotted(ic-typography){overflow-wrap:break-word}#dialog-content ::slotted(*){position:relative}.dialog-controls{margin-top:auto;padding:var(--ic-space-xs) var(--ic-space-md) 0;display:flex;justify-content:flex-end;gap:var(--ic-space-md)}.dialog-control-button{width:-moz-fit-content;width:fit-content}.backdrop{overflow-y:auto;position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:rgb(0 0 0 / 60%);z-index:var(--ic-z-index-dialog);padding-top:16px;padding-bottom:16px}.heading ic-typography{--ic-typography-color:var(--ic-dialog-text-primary)}.label ic-typography{--ic-typography-color:var(--ic-dialog-label)}@media (min-width: 800px){:host([size="large"]) .dialog:not(.disable-width-constraint)>.content-area{width:75%}}@media (max-width: 576px){.dialog{width:100vw;height:100vh;max-width:none;max-height:none;box-sizing:border-box}.backdrop{padding:0}.dialog.disable-height-constraint{height:auto;min-height:100vh}}@media (max-width: 364px){.dialog-control-button{width:unset}}';const g=c;const p=class{constructor(a){i(this,a);this.icDialogCancelled=t(this,"icDialogCancelled",7);this.icDialogClosed=t(this,"icDialogClosed",7);this.icDialogConfirmed=t(this,"icDialogConfirmed",7);this.icDialogOpened=t(this,"icDialogOpened",7);this.contentAreaMutationObserver=null;this.DATA_GETS_FOCUS="data-gets-focus";this.DIALOG_CONTROLS="dialog-controls";this.dialogHeight=0;this.focusedElementIndex=0;this.IC_TEXT_FIELD="IC-TEXT-FIELD";this.IC_ACCORDION="IC-ACCORDION";this.IC_ACCORDION_GROUP="IC-ACCORDION-GROUP";this.IC_CHECKBOX="IC-CHECKBOX";this.IC_SEARCH_BAR="IC-SEARCH-BAR";this.IC_TAB_CONTEXT="IC-TAB-CONTEXT";this.resizeObserver=null;this.dialogRendered=false;this.fadeIn=false;this.closeOnBackdropClick=true;this.destructive=false;this.dismissLabel="Dismiss";this.disableHeightConstraint=false;this.disableWidthConstraint=false;this.hideCloseButton=false;this.hideDefaultControls=false;this.open=false;this.size="small";this.theme="inherit";this.dialogOpened=()=>{var i,t;this.dialogRendered=true;if(this.disableHeightConstraint){(i=this.dialogEl)===null||i===void 0?void 0:i.show()}else{(t=this.dialogEl)===null||t===void 0?void 0:t.showModal()}setTimeout((()=>{this.fadeIn=true;if(this.backdropEl&&this.disableHeightConstraint&&this.backdropEl.scrollTop!==0){this.backdropEl.scrollTop=0}}),10);setTimeout((()=>{this.setInitialFocus();r(this.runResizeObserver)}),75);setTimeout((()=>{this.icDialogOpened.emit()}),80)};this.runResizeObserver=()=>{if(this.dialogEl){this.resizeObserver=new ResizeObserver((()=>{clearTimeout(this.resizeTimeout);this.resizeTimeout=window.setTimeout(this.resizeObserverCallback,80)}));this.resizeObserver.observe(this.dialogEl)}};this.resizeObserverCallback=()=>{if(this.dialogEl&&this.dialogEl.clientHeight!==this.dialogHeight){this.dialogHeight=this.dialogEl.clientHeight}};this.refreshInteractiveElementsOnSlotChange=()=>{var i,t,e;const s=(i=this.el.shadowRoot)===null||i===void 0?void 0:i.querySelector("#dialog-content");if(s){this.contentArea=s.querySelector("slot");(t=this.contentArea)===null||t===void 0?void 0:t.addEventListener("slotchange",this.getInteractiveElements);this.contentAreaMutationObserver=new MutationObserver((()=>{this.getInteractiveElements()}));(e=l(s))===null||e===void 0?void 0:e.forEach((i=>{var t;(t=this.contentAreaMutationObserver)===null||t===void 0?void 0:t.observe(i,{childList:true,subtree:true})}))}};this.removeSlotChangeListener=()=>{var i;if(this.contentArea){this.contentArea.removeEventListener("slotchange",this.getInteractiveElements);(i=this.contentAreaMutationObserver)===null||i===void 0?void 0:i.disconnect()}};this.setInitialFocus=()=>{this.sourceElement=document.activeElement;this.focusedElementIndex=this.interactiveElementList?this.interactiveElementList.findIndex((i=>i.hasAttribute(this.DATA_GETS_FOCUS))):0;this.focusElement(this.interactiveElementList[this.focusedElementIndex])};this.getFocusedElementIndex=()=>{var i;for(let t=0;t<this.interactiveElementList.length;t++){if(this.interactiveElementList[t]===(((i=this.el.shadowRoot)===null||i===void 0?void 0:i.activeElement)||document.activeElement)){this.focusedElementIndex=t}}};this.closeIconClick=()=>{this.open=false};this.getInteractiveElements=()=>{var i;this.interactiveElementList=Array.from(((i=this.el.shadowRoot)===null||i===void 0?void 0:i.querySelectorAll("ic-button"))||[]);const t=Array.from(this.el.querySelectorAll(`a[href], button, input:not(.ic-input), textarea, select, details, [tabindex]:not([tabindex="-1"]),\n ic-button, ic-checkbox, ic-select, ic-search-bar, ic-tab-context,\n ic-back-to-top, ic-breadcrumb, ic-chip[dismissible="true"], ic-footer-link, ic-link, ic-navigation-button,\n ic-navigation-item, ic-switch, ic-text-field, ic-accordion-group, ic-accordion, ic-date-input, ic-date-picker`));if(t.length>0){if(t[0].slot!==this.DIALOG_CONTROLS){t[0].setAttribute(this.DATA_GETS_FOCUS,"")}else if(!this.destructive){t[t.length-1].setAttribute(this.DATA_GETS_FOCUS,"")}}for(let i=0;i<t.length;i++){this.interactiveElementList.splice(1+i,0,t[i])}};this.getNextFocusEl=i=>this.interactiveElementList[i];this.onTabKeyPress=i=>{this.getFocusedElementIndex();if(this.interactiveElementList[this.focusedElementIndex].tagName===this.IC_SEARCH_BAR){return false}this.setFocusIndexBasedOnShiftKey(i);this.loopNextFocusIndexIfLastElement();this.focusElement(this.getNextFocusEl(this.focusedElementIndex),i);return true};this.shouldSkipElement=i=>{const t=getComputedStyle(i).visibility==="hidden"||i.offsetHeight===0||i.hasAttribute("disabled")||i.tagName===this.IC_ACCORDION_GROUP&&i.hasAttribute("single-expansion");const e=i.closest("ic-radio-option");return t||i.getAttribute("type")==="radio"&&!!e&&!(e.hasAttribute("selected")||i.tabIndex===0)};this.focusElement=(i,t=false)=>{let e=i;if(this.shouldSkipElement(i)){this.setFocusIndexBasedOnShiftKey(t);this.loopNextFocusIndexIfLastElement();e=this.getNextFocusEl(this.focusedElementIndex);this.focusElement(e,t)}else{switch(i.tagName){case this.IC_ACCORDION_GROUP:case this.IC_ACCORDION:case this.IC_SEARCH_BAR:case this.IC_TEXT_FIELD:case this.IC_CHECKBOX:case this.IC_TAB_CONTEXT:i.setFocus();break;default:i.focus()}}};this.renderDialog=()=>{const{hideDefaultControls:i,size:t,heading:a,label:o,destructive:r,dismissLabel:l,hideCloseButton:d,disableHeightConstraint:c,disableWidthConstraint:g,closeIconClick:p,DIALOG_CONTROLS:b}=this;const m=h(this.el,b);return e("dialog",{class:{dialog:true,[`${t}`]:true,"disable-height-constraint":!!c,"disable-width-constraint":!!g},"aria-labelledby":"dialog-label dialog-heading","aria-describedby":"dialog-alert dialog-content",ref:i=>this.dialogEl=i},e("div",{class:"heading-area"},e("div",{class:"heading-content"},e("div",{class:"label"},e("slot",{name:"label"},e("ic-typography",{variant:"label",id:"dialog-label"},o))),e("div",{class:"heading"},e("slot",{name:"heading"},e("ic-typography",{variant:"h4",id:"dialog-heading"},a)))),!d&&e("ic-button",{class:"close-icon",variant:"icon-tertiary",innerHTML:n,"aria-label":l,onClick:p,"data-gets-focus":r||i&&!m?"":null})),e("div",{class:"content-area"},h(this.el,"alert")&&e("slot",{name:"alert"}),e("div",{id:"dialog-content"},e("slot",null))),(m||!i)&&e("div",{class:{[b]:true}},m?e("slot",{name:b}):e(s,null,e("ic-button",{variant:"tertiary",onClick:()=>this.cancelDialog(),class:"dialog-control-button","data-gets-focus":null},"Cancel"),e("ic-button",{variant:r?"destructive":"primary",onClick:()=>this.confirmDialog(),class:"dialog-control-button","data-gets-focus":""},"Confirm"))))}}watchOpenHandler(){if(this.open){this.dialogOpened()}else{this.fadeIn=false;if(this.resizeObserver!==null){this.resizeObserver.disconnect()}setTimeout((()=>{var i,t;this.dialogRendered=false;(i=this.dialogEl)===null||i===void 0?void 0:i.close();(t=this.sourceElement)===null||t===void 0?void 0:t.focus();this.dialogHeight=0;this.icDialogClosed.emit()}),80)}}disconnectedCallback(){this.removeSlotChangeListener()}componentDidLoad(){this.getInteractiveElements();this.refreshInteractiveElementsOnSlotChange();if(this.open){this.dialogOpened()}!h(this.el,"heading")&&d([{prop:this.heading,propName:"heading"}],"Dialog")}componentDidRender(){document.body.style.overflow=getComputedStyle(this.el).display!=="none"&&this.disableHeightConstraint?"hidden":"auto"}handleKeyboard(i){if(this.dialogRendered){switch(i.key){case"Tab":if(this.onTabKeyPress(i.shiftKey)){i.preventDefault()}break;case"Escape":if(!i.repeat){this.open=false}i.stopImmediatePropagation();break}}}handleClick(i){if(this.dialogEl&&this.closeOnBackdropClick&&i.composedPath().indexOf(this.dialogEl)<=0){const{top:t,height:e,left:s,width:a}=this.dialogEl.getBoundingClientRect();const o=t<=i.clientY&&i.clientY<=t+e&&s<=i.clientX&&i.clientX<=s+a;if(!o){this.open=false}}}async cancelDialog(){this.icDialogCancelled.emit();this.open=false}async confirmDialog(){this.icDialogConfirmed.emit()}loopNextFocusIndexIfLastElement(){if(this.focusedElementIndex>this.interactiveElementList.length-1)this.focusedElementIndex=0;else if(this.focusedElementIndex<0){this.focusedElementIndex=this.interactiveElementList.length-1}}setFocusIndexBasedOnShiftKey(i){if(i){this.focusedElementIndex-=1}else{this.focusedElementIndex+=1}}render(){const{dialogRendered:i,disableHeightConstraint:t,fadeIn:s,theme:o}=this;return e(a,{key:"6de63d3d94afa349dc9bb5b30296837bbf89f810",class:{"ic-dialog-hidden":!i,"ic-dialog-fade-in":s,"disable-height-constraint":!!t,[`ic-theme-${o}`]:o!=="inherit"}},t?e("div",{class:"backdrop",ref:i=>this.backdropEl=i},this.renderDialog()):this.renderDialog())}get el(){return o(this)}static get watchers(){return{open:["watchOpenHandler"]}}};p.style=g;export{p as ic_dialog};
2
- //# sourceMappingURL=p-cd3f12ad.entry.js.map