@ukic/canary-web-components 3.0.0-canary.22 → 3.0.0-canary.23

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 (572) hide show
  1. package/dist/cjs/clear-icon-547aa9b9.js +10 -0
  2. package/dist/cjs/clear-icon-547aa9b9.js.map +1 -0
  3. package/dist/cjs/core.cjs.js +1 -1
  4. package/dist/cjs/helpers-da852478.js.map +1 -1
  5. package/dist/cjs/ic-action-chip.cjs.entry.js +116 -0
  6. package/dist/cjs/ic-action-chip.cjs.entry.js.map +1 -0
  7. package/dist/cjs/ic-back-to-top.cjs.entry.js +3 -3
  8. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ic-badge.cjs.entry.js +2 -2
  10. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +2 -2
  12. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  13. package/dist/cjs/ic-breadcrumb.cjs.entry.js +2 -2
  14. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ic-button_3.cjs.entry.js +40 -85
  16. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ic-card-vertical.cjs.entry.js +4 -4
  18. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ic-checkbox-group.cjs.entry.js +2 -2
  20. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-checkbox_3.cjs.entry.js +6 -6
  22. package/dist/cjs/ic-checkbox_3.cjs.entry.js.map +1 -1
  23. package/dist/cjs/ic-chip.cjs.entry.js +11 -3
  24. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-classification-banner.cjs.entry.js +2 -2
  26. package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ic-data-list.cjs.entry.js +2 -2
  28. package/dist/cjs/ic-data-list.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ic-data-row.cjs.entry.js +2 -2
  30. package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
  31. package/dist/cjs/ic-data-table.cjs.entry.js +43 -56
  32. package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
  33. package/dist/cjs/ic-date-input.cjs.entry.js +25 -17
  34. package/dist/cjs/ic-date-input.cjs.entry.js.map +1 -1
  35. package/dist/cjs/ic-dialog.cjs.entry.js +1 -1
  36. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  37. package/dist/cjs/ic-footer-link.cjs.entry.js +2 -2
  38. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  39. package/dist/cjs/ic-footer.cjs.entry.js +3 -3
  40. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  41. package/dist/cjs/ic-hero.cjs.entry.js +4 -4
  42. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  43. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +5 -5
  44. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  45. package/dist/cjs/ic-input-component-container_4.cjs.entry.js +224 -0
  46. package/dist/cjs/ic-input-component-container_4.cjs.entry.js.map +1 -0
  47. package/dist/cjs/ic-link.cjs.entry.js +1 -1
  48. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  49. package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
  50. package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
  51. package/dist/cjs/{ic-input-component-container_3.cjs.entry.js → ic-menu.cjs.entry.js} +5 -96
  52. package/dist/cjs/ic-menu.cjs.entry.js.map +1 -0
  53. package/dist/cjs/ic-navigation-button.cjs.entry.js +2 -2
  54. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  55. package/dist/cjs/ic-navigation-group.cjs.entry.js +1 -1
  56. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  57. package/dist/cjs/ic-navigation-item.cjs.entry.js +2 -2
  58. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  59. package/dist/cjs/ic-navigation-menu.cjs.entry.js +4 -4
  60. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  61. package/dist/cjs/ic-page-header.cjs.entry.js +6 -6
  62. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  63. package/dist/cjs/ic-pagination_4.cjs.entry.js +17 -17
  64. package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
  65. package/dist/cjs/ic-popover-menu.cjs.entry.js +4 -4
  66. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  67. package/dist/cjs/ic-radio-group.cjs.entry.js +4 -4
  68. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  69. package/dist/cjs/ic-radio-option.cjs.entry.js +4 -4
  70. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  71. package/dist/cjs/ic-search-bar.cjs.entry.js +9 -9
  72. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  73. package/dist/cjs/ic-section-container.cjs.entry.js +2 -2
  74. package/dist/cjs/ic-section-container.cjs.entry.js.map +1 -1
  75. package/dist/cjs/ic-side-navigation.cjs.entry.js +4 -4
  76. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  77. package/dist/cjs/ic-skeleton.cjs.entry.js +2 -2
  78. package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
  79. package/dist/cjs/ic-skip-link.cjs.entry.js +2 -2
  80. package/dist/cjs/ic-skip-link.cjs.entry.js.map +1 -1
  81. package/dist/cjs/ic-status-tag.cjs.entry.js +2 -2
  82. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  83. package/dist/cjs/ic-step.cjs.entry.js +13 -13
  84. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  85. package/dist/cjs/ic-stepper.cjs.entry.js +2 -2
  86. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  87. package/dist/cjs/ic-switch.cjs.entry.js +4 -4
  88. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  89. package/dist/cjs/ic-tab-context.cjs.entry.js +1 -1
  90. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  91. package/dist/cjs/ic-tab-group.cjs.entry.js +2 -2
  92. package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
  93. package/dist/cjs/ic-tab-panel.cjs.entry.js +2 -2
  94. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  95. package/dist/cjs/ic-tab.cjs.entry.js +2 -2
  96. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  97. package/dist/cjs/ic-theme.cjs.entry.js +1 -1
  98. package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
  99. package/dist/cjs/ic-time-input.cjs.entry.js +943 -0
  100. package/dist/cjs/ic-time-input.cjs.entry.js.map +1 -0
  101. package/dist/cjs/ic-toast-region.cjs.entry.js +1 -1
  102. package/dist/cjs/ic-toast-region.cjs.entry.js.map +1 -1
  103. package/dist/cjs/ic-toast.cjs.entry.js +3 -3
  104. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  105. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +2 -2
  106. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  107. package/dist/cjs/ic-toggle-button.cjs.entry.js +2 -2
  108. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  109. package/dist/cjs/ic-top-navigation.cjs.entry.js +4 -4
  110. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  111. package/dist/cjs/ic-tree-item.cjs.entry.js +2 -2
  112. package/dist/cjs/ic-tree-view.cjs.entry.js +3 -3
  113. package/dist/cjs/ic-typography.cjs.entry.js +2 -2
  114. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  115. package/dist/cjs/index-d337cd8a.js +12 -4
  116. package/dist/cjs/loader.cjs.js +1 -1
  117. package/dist/collection/assets/clock.svg +1 -0
  118. package/dist/collection/collection-manifest.json +2 -0
  119. package/dist/collection/components/ic-data-table/ic-data-table.js +43 -57
  120. package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
  121. package/dist/collection/components/ic-data-table/ic-data-table.stories.js +3 -2
  122. package/dist/collection/components/ic-data-table/ic-data-table.stories.js.map +1 -1
  123. package/dist/collection/components/ic-data-table/ic-data-table.types.js.map +1 -1
  124. package/dist/collection/components/ic-data-table/story-data.js +7 -57
  125. package/dist/collection/components/ic-data-table/story-data.js.map +1 -1
  126. package/dist/collection/components/ic-date-input/ic-date-input.js +24 -12
  127. package/dist/collection/components/ic-date-input/ic-date-input.js.map +1 -1
  128. package/dist/collection/components/ic-time-input/ic-time-input.css +648 -0
  129. package/dist/collection/components/ic-time-input/ic-time-input.js +1600 -0
  130. package/dist/collection/components/ic-time-input/ic-time-input.js.map +1 -0
  131. package/dist/collection/components/ic-time-input/ic-time-input.stories.js +320 -0
  132. package/dist/collection/components/ic-time-input/ic-time-input.stories.js.map +1 -0
  133. package/dist/collection/components/ic-time-input/test/helpers/ic-time-input.js +45 -0
  134. package/dist/collection/components/ic-time-input/test/helpers/ic-time-input.js.map +1 -0
  135. package/dist/collection/components/ic-tree-item/ic-tree-item.js +2 -2
  136. package/dist/collection/components/ic-tree-view/ic-tree-view.js +3 -3
  137. package/dist/collection/utils/types.js.map +1 -1
  138. package/dist/components/clear-icon.js +8 -0
  139. package/dist/components/clear-icon.js.map +1 -0
  140. package/dist/components/helpers2.js.map +1 -1
  141. package/dist/components/ic-action-chip.js +160 -0
  142. package/dist/components/ic-action-chip.js.map +1 -0
  143. package/dist/components/ic-back-to-top.js +3 -3
  144. package/dist/components/ic-back-to-top.js.map +1 -1
  145. package/dist/components/ic-badge.js +2 -2
  146. package/dist/components/ic-badge.js.map +1 -1
  147. package/dist/components/ic-breadcrumb-group.js +2 -2
  148. package/dist/components/ic-breadcrumb-group.js.map +1 -1
  149. package/dist/components/ic-breadcrumb2.js +2 -2
  150. package/dist/components/ic-breadcrumb2.js.map +1 -1
  151. package/dist/components/ic-button2.js +3 -3
  152. package/dist/components/ic-button2.js.map +1 -1
  153. package/dist/components/ic-card-vertical.js +4 -4
  154. package/dist/components/ic-card-vertical.js.map +1 -1
  155. package/dist/components/ic-checkbox-group.js +2 -2
  156. package/dist/components/ic-checkbox-group.js.map +1 -1
  157. package/dist/components/ic-checkbox2.js +4 -4
  158. package/dist/components/ic-checkbox2.js.map +1 -1
  159. package/dist/components/ic-chip.js +12 -4
  160. package/dist/components/ic-chip.js.map +1 -1
  161. package/dist/components/ic-classification-banner.js +2 -2
  162. package/dist/components/ic-classification-banner.js.map +1 -1
  163. package/dist/components/ic-data-list.js +2 -2
  164. package/dist/components/ic-data-list.js.map +1 -1
  165. package/dist/components/ic-data-row.js +2 -2
  166. package/dist/components/ic-data-row.js.map +1 -1
  167. package/dist/components/ic-data-table.js +43 -56
  168. package/dist/components/ic-data-table.js.map +1 -1
  169. package/dist/components/ic-date-input2.js +25 -17
  170. package/dist/components/ic-date-input2.js.map +1 -1
  171. package/dist/components/ic-dialog.js +1 -1
  172. package/dist/components/ic-dialog.js.map +1 -1
  173. package/dist/components/ic-empty-state2.js +2 -2
  174. package/dist/components/ic-empty-state2.js.map +1 -1
  175. package/dist/components/ic-footer-link.js +2 -2
  176. package/dist/components/ic-footer-link.js.map +1 -1
  177. package/dist/components/ic-footer.js +3 -3
  178. package/dist/components/ic-footer.js.map +1 -1
  179. package/dist/components/ic-hero.js +4 -4
  180. package/dist/components/ic-hero.js.map +1 -1
  181. package/dist/components/ic-horizontal-scroll2.js +5 -5
  182. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  183. package/dist/components/ic-input-component-container2.js +3 -3
  184. package/dist/components/ic-input-component-container2.js.map +1 -1
  185. package/dist/components/ic-input-container2.js +2 -2
  186. package/dist/components/ic-input-container2.js.map +1 -1
  187. package/dist/components/ic-input-label2.js +2 -2
  188. package/dist/components/ic-input-label2.js.map +1 -1
  189. package/dist/components/ic-input-validation2.js +3 -3
  190. package/dist/components/ic-input-validation2.js.map +1 -1
  191. package/dist/components/ic-link2.js +1 -1
  192. package/dist/components/ic-link2.js.map +1 -1
  193. package/dist/components/ic-loading-indicator2.js +5 -5
  194. package/dist/components/ic-loading-indicator2.js.map +1 -1
  195. package/dist/components/ic-menu-group.js +1 -1
  196. package/dist/components/ic-menu-group.js.map +1 -1
  197. package/dist/components/ic-menu2.js +3 -3
  198. package/dist/components/ic-menu2.js.map +1 -1
  199. package/dist/components/ic-navigation-button.js +2 -2
  200. package/dist/components/ic-navigation-button.js.map +1 -1
  201. package/dist/components/ic-navigation-group.js +1 -1
  202. package/dist/components/ic-navigation-group.js.map +1 -1
  203. package/dist/components/ic-navigation-item.js +2 -2
  204. package/dist/components/ic-navigation-item.js.map +1 -1
  205. package/dist/components/ic-navigation-menu2.js +4 -4
  206. package/dist/components/ic-navigation-menu2.js.map +1 -1
  207. package/dist/components/ic-page-header.js +6 -6
  208. package/dist/components/ic-page-header.js.map +1 -1
  209. package/dist/components/ic-pagination-item2.js +1 -1
  210. package/dist/components/ic-pagination-item2.js.map +1 -1
  211. package/dist/components/ic-pagination2.js +4 -4
  212. package/dist/components/ic-pagination2.js.map +1 -1
  213. package/dist/components/ic-popover-menu.js +4 -4
  214. package/dist/components/ic-popover-menu.js.map +1 -1
  215. package/dist/components/ic-radio-group.js +4 -4
  216. package/dist/components/ic-radio-group.js.map +1 -1
  217. package/dist/components/ic-radio-option.js +4 -4
  218. package/dist/components/ic-radio-option.js.map +1 -1
  219. package/dist/components/ic-search-bar.js +9 -9
  220. package/dist/components/ic-search-bar.js.map +1 -1
  221. package/dist/components/ic-section-container2.js +2 -2
  222. package/dist/components/ic-section-container2.js.map +1 -1
  223. package/dist/components/ic-select2.js +6 -6
  224. package/dist/components/ic-select2.js.map +1 -1
  225. package/dist/components/ic-side-navigation.js +4 -4
  226. package/dist/components/ic-side-navigation.js.map +1 -1
  227. package/dist/components/ic-skeleton.js +2 -2
  228. package/dist/components/ic-skeleton.js.map +1 -1
  229. package/dist/components/ic-skip-link.js +2 -2
  230. package/dist/components/ic-skip-link.js.map +1 -1
  231. package/dist/components/ic-status-tag.js +2 -2
  232. package/dist/components/ic-status-tag.js.map +1 -1
  233. package/dist/components/ic-step.js +13 -13
  234. package/dist/components/ic-step.js.map +1 -1
  235. package/dist/components/ic-stepper.js +2 -2
  236. package/dist/components/ic-stepper.js.map +1 -1
  237. package/dist/components/ic-switch.js +4 -4
  238. package/dist/components/ic-switch.js.map +1 -1
  239. package/dist/components/ic-tab-context.js +1 -1
  240. package/dist/components/ic-tab-context.js.map +1 -1
  241. package/dist/components/ic-tab-group.js +2 -2
  242. package/dist/components/ic-tab-group.js.map +1 -1
  243. package/dist/components/ic-tab-panel.js +2 -2
  244. package/dist/components/ic-tab-panel.js.map +1 -1
  245. package/dist/components/ic-tab.js +2 -2
  246. package/dist/components/ic-tab.js.map +1 -1
  247. package/dist/components/ic-text-field2.js +6 -6
  248. package/dist/components/ic-text-field2.js.map +1 -1
  249. package/dist/components/ic-theme.js +1 -1
  250. package/dist/components/ic-theme.js.map +1 -1
  251. package/dist/components/ic-time-input.d.ts +11 -0
  252. package/dist/components/ic-time-input.js +1045 -0
  253. package/dist/components/ic-time-input.js.map +1 -0
  254. package/dist/components/ic-toast-region.js +1 -1
  255. package/dist/components/ic-toast-region.js.map +1 -1
  256. package/dist/components/ic-toast.js +3 -3
  257. package/dist/components/ic-toast.js.map +1 -1
  258. package/dist/components/ic-toggle-button-group.js +2 -2
  259. package/dist/components/ic-toggle-button-group.js.map +1 -1
  260. package/dist/components/ic-toggle-button.js +2 -2
  261. package/dist/components/ic-toggle-button.js.map +1 -1
  262. package/dist/components/ic-tooltip2.js +33 -78
  263. package/dist/components/ic-tooltip2.js.map +1 -1
  264. package/dist/components/ic-top-navigation.js +4 -4
  265. package/dist/components/ic-top-navigation.js.map +1 -1
  266. package/dist/components/ic-tree-item.js +2 -2
  267. package/dist/components/ic-tree-view.js +3 -3
  268. package/dist/components/ic-typography2.js +2 -2
  269. package/dist/components/ic-typography2.js.map +1 -1
  270. package/dist/core/core.css +227 -7
  271. package/dist/core/core.esm.js +1 -1
  272. package/dist/core/core.esm.js.map +1 -1
  273. package/dist/core/{p-137dd76e.entry.js → p-00a89919.entry.js} +2 -2
  274. package/dist/core/{p-137dd76e.entry.js.map → p-00a89919.entry.js.map} +1 -1
  275. package/dist/core/{p-e253a857.js → p-0f22f41e.js} +2 -2
  276. package/dist/core/p-0f22f41e.js.map +1 -0
  277. package/dist/core/{p-97abdbf7.entry.js → p-1521e96b.entry.js} +2 -2
  278. package/dist/core/{p-97abdbf7.entry.js.map → p-1521e96b.entry.js.map} +1 -1
  279. package/dist/core/{p-5d987f8f.entry.js → p-153d3597.entry.js} +2 -2
  280. package/dist/core/{p-5d987f8f.entry.js.map → p-153d3597.entry.js.map} +1 -1
  281. package/dist/core/{p-4b6818d9.entry.js → p-1cc402b8.entry.js} +2 -2
  282. package/dist/core/{p-4b6818d9.entry.js.map → p-1cc402b8.entry.js.map} +1 -1
  283. package/dist/core/{p-8d908a57.entry.js → p-22863d31.entry.js} +2 -2
  284. package/dist/core/{p-8d908a57.entry.js.map → p-22863d31.entry.js.map} +1 -1
  285. package/dist/core/{p-c94e7b0b.entry.js → p-27207aa3.entry.js} +2 -2
  286. package/dist/core/{p-c94e7b0b.entry.js.map → p-27207aa3.entry.js.map} +1 -1
  287. package/dist/core/{p-2c4bf16f.entry.js → p-2d6a1b50.entry.js} +2 -2
  288. package/dist/core/{p-2c4bf16f.entry.js.map → p-2d6a1b50.entry.js.map} +1 -1
  289. package/dist/core/{p-bc974a3e.entry.js → p-307c13a1.entry.js} +2 -2
  290. package/dist/core/{p-bc974a3e.entry.js.map → p-307c13a1.entry.js.map} +1 -1
  291. package/dist/core/{p-2d8900bf.entry.js → p-30b3afb1.entry.js} +2 -2
  292. package/dist/core/{p-2d8900bf.entry.js.map → p-30b3afb1.entry.js.map} +1 -1
  293. package/dist/core/{p-bf93baea.entry.js → p-324862f7.entry.js} +2 -2
  294. package/dist/core/{p-bf93baea.entry.js.map → p-324862f7.entry.js.map} +1 -1
  295. package/dist/core/{p-0fe08a58.js → p-33927ee1.js} +2 -2
  296. package/dist/core/{p-a220535c.entry.js → p-369f4536.entry.js} +2 -2
  297. package/dist/core/{p-a220535c.entry.js.map → p-369f4536.entry.js.map} +1 -1
  298. package/dist/core/{p-6e7aaca5.entry.js → p-3a5da30c.entry.js} +2 -2
  299. package/dist/core/{p-6e7aaca5.entry.js.map → p-3a5da30c.entry.js.map} +1 -1
  300. package/dist/core/{p-826a6c25.entry.js → p-3d10fa12.entry.js} +2 -2
  301. package/dist/core/{p-826a6c25.entry.js.map → p-3d10fa12.entry.js.map} +1 -1
  302. package/dist/core/{p-f569a91f.entry.js → p-48127d40.entry.js} +2 -2
  303. package/dist/core/{p-f569a91f.entry.js.map → p-48127d40.entry.js.map} +1 -1
  304. package/dist/core/{p-3448c713.entry.js → p-48db785a.entry.js} +2 -2
  305. package/dist/core/{p-3448c713.entry.js.map → p-48db785a.entry.js.map} +1 -1
  306. package/dist/core/{p-b27bc1a1.entry.js → p-4b212968.entry.js} +2 -2
  307. package/dist/core/{p-b27bc1a1.entry.js.map → p-4b212968.entry.js.map} +1 -1
  308. package/dist/core/p-53d50d9e.entry.js +2 -0
  309. package/dist/core/p-53d50d9e.entry.js.map +1 -0
  310. package/dist/core/{p-78635447.entry.js → p-558936fb.entry.js} +2 -2
  311. package/dist/core/{p-64372a57.entry.js → p-593cc594.entry.js} +2 -2
  312. package/dist/core/{p-64372a57.entry.js.map → p-593cc594.entry.js.map} +1 -1
  313. package/dist/core/{p-bbf39a76.entry.js → p-666a671b.entry.js} +2 -2
  314. package/dist/core/{p-bbf39a76.entry.js.map → p-666a671b.entry.js.map} +1 -1
  315. package/dist/core/{p-8397766e.entry.js → p-726144b4.entry.js} +2 -2
  316. package/dist/core/{p-8397766e.entry.js.map → p-726144b4.entry.js.map} +1 -1
  317. package/dist/core/p-74e0f41f.entry.js +2 -0
  318. package/dist/core/p-74e0f41f.entry.js.map +1 -0
  319. package/dist/core/{p-0dc0d839.entry.js → p-75f3038c.entry.js} +2 -2
  320. package/dist/core/{p-0dc0d839.entry.js.map → p-75f3038c.entry.js.map} +1 -1
  321. package/dist/core/p-7892130d.entry.js +2 -0
  322. package/dist/core/p-7892130d.entry.js.map +1 -0
  323. package/dist/core/{p-15ec796a.entry.js → p-7e5e94a9.entry.js} +2 -2
  324. package/dist/core/{p-15ec796a.entry.js.map → p-7e5e94a9.entry.js.map} +1 -1
  325. package/dist/core/p-8048c7da.entry.js +2 -0
  326. package/dist/core/{p-1e256460.entry.js.map → p-8048c7da.entry.js.map} +1 -1
  327. package/dist/core/p-80e43591.entry.js +2 -0
  328. package/dist/core/{p-8cb5deba.entry.js.map → p-80e43591.entry.js.map} +1 -1
  329. package/dist/core/{p-75901d06.entry.js → p-86ff903d.entry.js} +2 -2
  330. package/dist/core/{p-ead0acc3.entry.js → p-8908b8e6.entry.js} +2 -2
  331. package/dist/core/{p-832c7042.entry.js → p-8bf1022e.entry.js} +2 -2
  332. package/dist/core/{p-90364cef.entry.js → p-8fa7085e.entry.js} +2 -2
  333. package/dist/core/{p-90364cef.entry.js.map → p-8fa7085e.entry.js.map} +1 -1
  334. package/dist/core/{p-5237f3ac.entry.js → p-97c437bb.entry.js} +2 -2
  335. package/dist/core/{p-e2103bcc.entry.js → p-9c8a98e8.entry.js} +2 -2
  336. package/dist/core/{p-e2103bcc.entry.js.map → p-9c8a98e8.entry.js.map} +1 -1
  337. package/dist/core/{p-0f86ea09.entry.js → p-9f792a31.entry.js} +2 -2
  338. package/dist/core/{p-0f86ea09.entry.js.map → p-9f792a31.entry.js.map} +1 -1
  339. package/dist/core/{p-cd8178a9.entry.js → p-abcc90f0.entry.js} +2 -2
  340. package/dist/core/{p-cd8178a9.entry.js.map → p-abcc90f0.entry.js.map} +1 -1
  341. package/dist/core/p-ad48c77c.entry.js +2 -0
  342. package/dist/core/p-ad48c77c.entry.js.map +1 -0
  343. package/dist/core/p-b0462734.entry.js +2 -0
  344. package/dist/core/p-b0462734.entry.js.map +1 -0
  345. package/dist/core/{p-88c5ec78.entry.js → p-b2680959.entry.js} +2 -2
  346. package/dist/core/{p-88c5ec78.entry.js.map → p-b2680959.entry.js.map} +1 -1
  347. package/dist/core/{p-b1b27b7e.entry.js → p-b3ac38c5.entry.js} +2 -2
  348. package/dist/core/{p-b1b27b7e.entry.js.map → p-b3ac38c5.entry.js.map} +1 -1
  349. package/dist/core/p-b5ef2799.entry.js +2 -0
  350. package/dist/core/{p-497918fd.entry.js.map → p-b5ef2799.entry.js.map} +1 -1
  351. package/dist/core/{p-33404c14.entry.js → p-b7a0dc04.entry.js} +2 -2
  352. package/dist/core/{p-33404c14.entry.js.map → p-b7a0dc04.entry.js.map} +1 -1
  353. package/dist/core/{p-755bdc43.entry.js → p-b8938f93.entry.js} +2 -2
  354. package/dist/core/{p-9097a16a.entry.js → p-b9d4c0db.entry.js} +2 -2
  355. package/dist/core/{p-9097a16a.entry.js.map → p-b9d4c0db.entry.js.map} +1 -1
  356. package/dist/core/{p-b3509380.entry.js → p-c4bf8742.entry.js} +2 -2
  357. package/dist/core/{p-3cf99186.entry.js → p-c6eabd53.entry.js} +2 -2
  358. package/dist/core/{p-6f72e6ac.entry.js → p-c7ccc52a.entry.js} +2 -2
  359. package/dist/core/{p-6f72e6ac.entry.js.map → p-c7ccc52a.entry.js.map} +1 -1
  360. package/dist/core/{p-d04b75cb.entry.js → p-c82a2e84.entry.js} +2 -2
  361. package/dist/core/{p-94065f7a.entry.js → p-ca3c6653.entry.js} +2 -2
  362. package/dist/core/{p-94065f7a.entry.js.map → p-ca3c6653.entry.js.map} +1 -1
  363. package/dist/core/{p-d281c3cf.entry.js → p-d47acbd4.entry.js} +2 -2
  364. package/dist/core/{p-d281c3cf.entry.js.map → p-d47acbd4.entry.js.map} +1 -1
  365. package/dist/core/{p-a54eb1d1.entry.js → p-d5f8ef77.entry.js} +2 -2
  366. package/dist/core/{p-c77d6efc.entry.js → p-db3b0c0a.entry.js} +2 -2
  367. package/dist/core/{p-c77d6efc.entry.js.map → p-db3b0c0a.entry.js.map} +1 -1
  368. package/dist/core/{p-cc36abaa.entry.js → p-db6d0463.entry.js} +2 -2
  369. package/dist/core/p-dbde45ff.entry.js +2 -0
  370. package/dist/core/p-dbde45ff.entry.js.map +1 -0
  371. package/dist/core/p-dc8eede2.entry.js +2 -0
  372. package/dist/core/p-dc8eede2.entry.js.map +1 -0
  373. package/dist/core/p-dd7450fb.js +2 -0
  374. package/dist/core/p-dd7450fb.js.map +1 -0
  375. package/dist/core/{p-fc5661ac.entry.js → p-de43d375.entry.js} +2 -2
  376. package/dist/core/{p-fc5661ac.entry.js.map → p-de43d375.entry.js.map} +1 -1
  377. package/dist/core/p-de8081c6.entry.js +2 -0
  378. package/dist/core/{p-a26a60ff.entry.js.map → p-de8081c6.entry.js.map} +1 -1
  379. package/dist/core/p-e4906394.entry.js +2 -0
  380. package/dist/core/{p-032113b9.entry.js.map → p-e4906394.entry.js.map} +1 -1
  381. package/dist/core/p-e595bb87.entry.js +2 -0
  382. package/dist/core/p-e595bb87.entry.js.map +1 -0
  383. package/dist/core/{p-42913c5b.entry.js → p-e75514f1.entry.js} +2 -2
  384. package/dist/core/{p-42913c5b.entry.js.map → p-e75514f1.entry.js.map} +1 -1
  385. package/dist/core/{p-6dd73165.entry.js → p-ee6caf27.entry.js} +2 -2
  386. package/dist/core/{p-6dd73165.entry.js.map → p-ee6caf27.entry.js.map} +1 -1
  387. package/dist/core/{p-2de3287c.entry.js → p-f33eae3c.entry.js} +2 -2
  388. package/dist/core/{p-2de3287c.entry.js.map → p-f33eae3c.entry.js.map} +1 -1
  389. package/dist/core/{p-9e051db4.entry.js → p-f34eee68.entry.js} +2 -2
  390. package/dist/core/{p-9e051db4.entry.js.map → p-f34eee68.entry.js.map} +1 -1
  391. package/dist/core/{p-fb7f4e2e.entry.js → p-fbb0a74d.entry.js} +2 -2
  392. package/dist/core/{p-fb7f4e2e.entry.js.map → p-fbb0a74d.entry.js.map} +1 -1
  393. package/dist/core/{p-b88585bf.entry.js → p-fbd80981.entry.js} +2 -2
  394. package/dist/core/{p-b88585bf.entry.js.map → p-fbd80981.entry.js.map} +1 -1
  395. package/dist/core/{p-e18ba5d6.entry.js → p-fffb98c9.entry.js} +2 -2
  396. package/dist/core/{p-e18ba5d6.entry.js.map → p-fffb98c9.entry.js.map} +1 -1
  397. package/dist/esm/clear-icon-1c79bda2.js +8 -0
  398. package/dist/esm/clear-icon-1c79bda2.js.map +1 -0
  399. package/dist/esm/core.js +1 -1
  400. package/dist/esm/{helpers-d9387cd3.js → helpers-89cb996d.js} +2 -2
  401. package/dist/esm/helpers-89cb996d.js.map +1 -0
  402. package/dist/esm/{helpers-574534c9.js → helpers-dea3fd9b.js} +2 -2
  403. package/dist/esm/{helpers-574534c9.js.map → helpers-dea3fd9b.js.map} +1 -1
  404. package/dist/esm/ic-accordion-group.entry.js +1 -1
  405. package/dist/esm/ic-accordion.entry.js +1 -1
  406. package/dist/esm/ic-action-chip.entry.js +112 -0
  407. package/dist/esm/ic-action-chip.entry.js.map +1 -0
  408. package/dist/esm/ic-alert.entry.js +1 -1
  409. package/dist/esm/ic-back-to-top.entry.js +4 -4
  410. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  411. package/dist/esm/ic-badge.entry.js +3 -3
  412. package/dist/esm/ic-badge.entry.js.map +1 -1
  413. package/dist/esm/ic-breadcrumb-group.entry.js +3 -3
  414. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  415. package/dist/esm/ic-breadcrumb.entry.js +3 -3
  416. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  417. package/dist/esm/ic-button_3.entry.js +41 -86
  418. package/dist/esm/ic-button_3.entry.js.map +1 -1
  419. package/dist/esm/ic-card-horizontal.entry.js +1 -1
  420. package/dist/esm/ic-card-vertical.entry.js +5 -5
  421. package/dist/esm/ic-card-vertical.entry.js.map +1 -1
  422. package/dist/esm/ic-checkbox-group.entry.js +3 -3
  423. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  424. package/dist/esm/ic-checkbox_3.entry.js +8 -8
  425. package/dist/esm/ic-checkbox_3.entry.js.map +1 -1
  426. package/dist/esm/ic-chip.entry.js +12 -4
  427. package/dist/esm/ic-chip.entry.js.map +1 -1
  428. package/dist/esm/ic-classification-banner.entry.js +2 -2
  429. package/dist/esm/ic-classification-banner.entry.js.map +1 -1
  430. package/dist/esm/ic-data-list.entry.js +2 -2
  431. package/dist/esm/ic-data-list.entry.js.map +1 -1
  432. package/dist/esm/ic-data-row.entry.js +3 -3
  433. package/dist/esm/ic-data-row.entry.js.map +1 -1
  434. package/dist/esm/ic-data-table-title-bar.entry.js +1 -1
  435. package/dist/esm/ic-data-table.entry.js +44 -57
  436. package/dist/esm/ic-data-table.entry.js.map +1 -1
  437. package/dist/esm/ic-date-input.entry.js +26 -18
  438. package/dist/esm/ic-date-input.entry.js.map +1 -1
  439. package/dist/esm/ic-date-picker.entry.js +1 -1
  440. package/dist/esm/ic-dialog.entry.js +2 -2
  441. package/dist/esm/ic-dialog.entry.js.map +1 -1
  442. package/dist/esm/ic-divider.entry.js +1 -1
  443. package/dist/esm/ic-footer-link-group.entry.js +1 -1
  444. package/dist/esm/ic-footer-link.entry.js +3 -3
  445. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  446. package/dist/esm/ic-footer.entry.js +4 -4
  447. package/dist/esm/ic-footer.entry.js.map +1 -1
  448. package/dist/esm/ic-hero.entry.js +5 -5
  449. package/dist/esm/ic-hero.entry.js.map +1 -1
  450. package/dist/esm/ic-horizontal-scroll.entry.js +6 -6
  451. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  452. package/dist/esm/ic-input-component-container_4.entry.js +217 -0
  453. package/dist/esm/ic-input-component-container_4.entry.js.map +1 -0
  454. package/dist/esm/ic-link.entry.js +2 -2
  455. package/dist/esm/ic-link.entry.js.map +1 -1
  456. package/dist/esm/ic-menu-group.entry.js +2 -2
  457. package/dist/esm/ic-menu-group.entry.js.map +1 -1
  458. package/dist/esm/ic-menu-item.entry.js +1 -1
  459. package/dist/esm/{ic-input-component-container_3.entry.js → ic-menu.entry.js} +7 -96
  460. package/dist/esm/ic-menu.entry.js.map +1 -0
  461. package/dist/esm/ic-navigation-button.entry.js +3 -3
  462. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  463. package/dist/esm/ic-navigation-group.entry.js +2 -2
  464. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  465. package/dist/esm/ic-navigation-item.entry.js +3 -3
  466. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  467. package/dist/esm/ic-navigation-menu.entry.js +5 -5
  468. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  469. package/dist/esm/ic-page-header.entry.js +7 -7
  470. package/dist/esm/ic-page-header.entry.js.map +1 -1
  471. package/dist/esm/ic-pagination_4.entry.js +18 -18
  472. package/dist/esm/ic-pagination_4.entry.js.map +1 -1
  473. package/dist/esm/ic-popover-menu.entry.js +5 -5
  474. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  475. package/dist/esm/ic-radio-group.entry.js +5 -5
  476. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  477. package/dist/esm/ic-radio-option.entry.js +5 -5
  478. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  479. package/dist/esm/ic-search-bar.entry.js +10 -10
  480. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  481. package/dist/esm/ic-section-container.entry.js +2 -2
  482. package/dist/esm/ic-section-container.entry.js.map +1 -1
  483. package/dist/esm/ic-side-navigation.entry.js +5 -5
  484. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  485. package/dist/esm/ic-skeleton.entry.js +2 -2
  486. package/dist/esm/ic-skeleton.entry.js.map +1 -1
  487. package/dist/esm/ic-skip-link.entry.js +2 -2
  488. package/dist/esm/ic-skip-link.entry.js.map +1 -1
  489. package/dist/esm/ic-status-tag.entry.js +3 -3
  490. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  491. package/dist/esm/ic-step.entry.js +14 -14
  492. package/dist/esm/ic-step.entry.js.map +1 -1
  493. package/dist/esm/ic-stepper.entry.js +3 -3
  494. package/dist/esm/ic-stepper.entry.js.map +1 -1
  495. package/dist/esm/ic-switch.entry.js +5 -5
  496. package/dist/esm/ic-switch.entry.js.map +1 -1
  497. package/dist/esm/ic-tab-context.entry.js +1 -1
  498. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  499. package/dist/esm/ic-tab-group.entry.js +3 -3
  500. package/dist/esm/ic-tab-group.entry.js.map +1 -1
  501. package/dist/esm/ic-tab-panel.entry.js +2 -2
  502. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  503. package/dist/esm/ic-tab.entry.js +3 -3
  504. package/dist/esm/ic-tab.entry.js.map +1 -1
  505. package/dist/esm/ic-theme.entry.js +2 -2
  506. package/dist/esm/ic-theme.entry.js.map +1 -1
  507. package/dist/esm/ic-time-input.entry.js +939 -0
  508. package/dist/esm/ic-time-input.entry.js.map +1 -0
  509. package/dist/esm/ic-toast-region.entry.js +1 -1
  510. package/dist/esm/ic-toast-region.entry.js.map +1 -1
  511. package/dist/esm/ic-toast.entry.js +4 -4
  512. package/dist/esm/ic-toast.entry.js.map +1 -1
  513. package/dist/esm/ic-toggle-button-group.entry.js +3 -3
  514. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  515. package/dist/esm/ic-toggle-button.entry.js +3 -3
  516. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  517. package/dist/esm/ic-top-navigation.entry.js +5 -5
  518. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  519. package/dist/esm/ic-tree-item.entry.js +3 -3
  520. package/dist/esm/ic-tree-view.entry.js +4 -4
  521. package/dist/esm/ic-typography.entry.js +3 -3
  522. package/dist/esm/ic-typography.entry.js.map +1 -1
  523. package/dist/esm/index-a7a720e7.js +12 -4
  524. package/dist/esm/loader.js +1 -1
  525. package/dist/types/components/ic-data-table/ic-data-table.types.d.ts +12 -7
  526. package/dist/types/components/ic-data-table/story-data.d.ts +11 -20
  527. package/dist/types/components/ic-date-input/ic-date-input.d.ts +2 -1
  528. package/dist/types/components/ic-time-input/ic-time-input.d.ts +229 -0
  529. package/dist/types/components/ic-time-input/ic-time-input.stories.d.ts +121 -0
  530. package/dist/types/components/ic-time-input/test/helpers/ic-time-input.d.ts +23 -0
  531. package/dist/types/components.d.ts +234 -2
  532. package/dist/types/utils/types.d.ts +5 -0
  533. package/hydrate/index.js +1439 -361
  534. package/hydrate/index.mjs +1439 -361
  535. package/package.json +3 -3
  536. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +0 -1
  537. package/dist/cjs/ic-input-label_2.cjs.entry.js +0 -133
  538. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +0 -1
  539. package/dist/core/p-032113b9.entry.js +0 -2
  540. package/dist/core/p-156fc5f1.entry.js +0 -2
  541. package/dist/core/p-156fc5f1.entry.js.map +0 -1
  542. package/dist/core/p-1e256460.entry.js +0 -2
  543. package/dist/core/p-1ffac8ae.entry.js +0 -2
  544. package/dist/core/p-1ffac8ae.entry.js.map +0 -1
  545. package/dist/core/p-224b2e14.entry.js +0 -2
  546. package/dist/core/p-224b2e14.entry.js.map +0 -1
  547. package/dist/core/p-497918fd.entry.js +0 -2
  548. package/dist/core/p-8cb5deba.entry.js +0 -2
  549. package/dist/core/p-95881758.entry.js +0 -2
  550. package/dist/core/p-95881758.entry.js.map +0 -1
  551. package/dist/core/p-a26a60ff.entry.js +0 -2
  552. package/dist/core/p-c67381b1.entry.js +0 -2
  553. package/dist/core/p-c67381b1.entry.js.map +0 -1
  554. package/dist/core/p-cdd6d5e8.entry.js +0 -2
  555. package/dist/core/p-cdd6d5e8.entry.js.map +0 -1
  556. package/dist/core/p-e253a857.js.map +0 -1
  557. package/dist/esm/helpers-d9387cd3.js.map +0 -1
  558. package/dist/esm/ic-input-component-container_3.entry.js.map +0 -1
  559. package/dist/esm/ic-input-label_2.entry.js +0 -128
  560. package/dist/esm/ic-input-label_2.entry.js.map +0 -1
  561. /package/dist/core/{p-0fe08a58.js.map → p-33927ee1.js.map} +0 -0
  562. /package/dist/core/{p-78635447.entry.js.map → p-558936fb.entry.js.map} +0 -0
  563. /package/dist/core/{p-75901d06.entry.js.map → p-86ff903d.entry.js.map} +0 -0
  564. /package/dist/core/{p-ead0acc3.entry.js.map → p-8908b8e6.entry.js.map} +0 -0
  565. /package/dist/core/{p-832c7042.entry.js.map → p-8bf1022e.entry.js.map} +0 -0
  566. /package/dist/core/{p-5237f3ac.entry.js.map → p-97c437bb.entry.js.map} +0 -0
  567. /package/dist/core/{p-755bdc43.entry.js.map → p-b8938f93.entry.js.map} +0 -0
  568. /package/dist/core/{p-b3509380.entry.js.map → p-c4bf8742.entry.js.map} +0 -0
  569. /package/dist/core/{p-3cf99186.entry.js.map → p-c6eabd53.entry.js.map} +0 -0
  570. /package/dist/core/{p-d04b75cb.entry.js.map → p-c82a2e84.entry.js.map} +0 -0
  571. /package/dist/core/{p-a54eb1d1.entry.js.map → p-d5f8ef77.entry.js.map} +0 -0
  572. /package/dist/core/{p-cc36abaa.entry.js.map → p-db6d0463.entry.js.map} +0 -0
@@ -0,0 +1,939 @@
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-a7a720e7.js';
2
+ import { b as isEmptyString, q as getInputDescribedByText, t as isNumeric, u as IcInformationStatus, r as removeDisabledFalse, v as removeFormResetListener, w as addFormResetListener, o as onComponentRequiredPropUndefined, x as renderHiddenInput } from './helpers-89cb996d.js';
3
+ import { C as Clear } from './clear-icon-1c79bda2.js';
4
+
5
+ const Clock = `<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>`;
6
+
7
+ const icTimeInputCss = "/*! 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}}";
8
+ const IcTimeInputStyle0 = icTimeInputCss;
9
+
10
+ let inputIds = 0;
11
+ const TimeInput = class {
12
+ constructor(hostRef) {
13
+ registerInstance(this, hostRef);
14
+ this.clockButtonClicked = createEvent(this, "clockButtonClicked", 7);
15
+ this.icBlur = createEvent(this, "icBlur", 7);
16
+ this.icChange = createEvent(this, "icChange", 7);
17
+ this.icFocus = createEvent(this, "icFocus", 7);
18
+ this.DEFAULT_TIME_FORMAT = "HH:MM:SS";
19
+ this.ARIA_INVALID = "aria-invalid";
20
+ this.ARIA_LABEL = "aria-label";
21
+ this.ARIA_LABELLED_BY = "aria-labelledby";
22
+ this.EVENT_OBJECT_STRING = "[object Event]";
23
+ this.FIT_TO_VALUE = "fit-to-value";
24
+ this.initialValue = this.value;
25
+ this.inputsInOrder = [];
26
+ this.isValidHour = true;
27
+ this.isValidMinute = true;
28
+ this.isValidSecond = true;
29
+ this.isValidTime = true;
30
+ this.isTimeSetFromKeyboardEvent = false;
31
+ this.previousSelectedTime = null;
32
+ this.selectedTime = null;
33
+ this.externalSetTime = false;
34
+ this.clearInput = false;
35
+ this.maxTime = null;
36
+ this.minTime = null;
37
+ this.clockFocused = false;
38
+ this.clearButtonFocused = false;
39
+ this.removeLabelledBy = false;
40
+ this.hour = "";
41
+ this.minute = "";
42
+ this.second = "";
43
+ /**
44
+ * If `true`, the disabled state will be set.
45
+ */
46
+ this.disabled = false;
47
+ /**
48
+ * 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.
49
+ */
50
+ this.disableTimes = [];
51
+ /**
52
+ * If `true`, every individual input field completed will emit an icChange event.
53
+ */
54
+ this.emitTimePartChange = false;
55
+ /**
56
+ * If `true`, the helper text will be visually hidden, but still read out by screenreaders.
57
+ */
58
+ this.hideHelperText = false;
59
+ /**
60
+ * If `true`, the label will be visually hidden, but will still be read out by screen readers.
61
+ */
62
+ this.hideLabel = false;
63
+ /**
64
+ * The ID for the input.
65
+ */
66
+ this.inputId = `ic-time-input-${inputIds++}`;
67
+ /**
68
+ * The text to display as the validation message when an invalid time is entered.
69
+ */
70
+ this.invalidTimeMessage = "Please enter a valid time.";
71
+ /**
72
+ * 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.
73
+ */
74
+ this.max = "";
75
+ /**
76
+ * 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.
77
+ */
78
+ this.min = "";
79
+ /**
80
+ * The name of the control, which is submitted with the form data.
81
+ */
82
+ this.name = this.inputId;
83
+ /**
84
+ * If `true`, the input will require a value.
85
+ */
86
+ this.required = false;
87
+ /**
88
+ * If `true`, a button which clears the time input when clicked will be displayed.
89
+ */
90
+ this.showClearButton = true;
91
+ /**
92
+ * @internal If `true`, a button which displays the clock view when clicked will be displayed.
93
+ */
94
+ this.showClockButton = false;
95
+ /**
96
+ * The size of the time input to be displayed.
97
+ */
98
+ this.size = "medium";
99
+ /**
100
+ * 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.
101
+ */
102
+ this.theme = "inherit";
103
+ /**
104
+ * The format in which the time will be displayed.
105
+ */
106
+ this.timeFormat = this.DEFAULT_TIME_FORMAT;
107
+ /**
108
+ * The time period format: "12" for 12-hour, "24" for 24-hour. Defaults to "24".
109
+ */
110
+ this.timePeriod = "24";
111
+ /**
112
+ * 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.
113
+ */
114
+ this.value = "";
115
+ /**
116
+ * The validation status - e.g. 'error' | 'warning' | 'success'. This will override the built-in time validation.
117
+ */
118
+ this.validationStatus = "";
119
+ /**
120
+ * The text to display as the validation message. This will override the built-in time validation.
121
+ */
122
+ this.validationText = "";
123
+ this.setInputPasteValue = (input, pastedValue) => {
124
+ if (input) {
125
+ const inputEl = input;
126
+ inputEl.value = pastedValue;
127
+ inputEl.classList.add(this.FIT_TO_VALUE);
128
+ }
129
+ };
130
+ this.parseTime = (value) => {
131
+ if (!value)
132
+ return null;
133
+ if (value instanceof Date)
134
+ return value;
135
+ const parts = value.split(":");
136
+ if (parts.length >= 2) {
137
+ const d = new Date();
138
+ d.setHours(+parts[0], +parts[1], parts[2] ? +parts[2] : 0, 0);
139
+ return d;
140
+ }
141
+ return null;
142
+ };
143
+ this.isHHMMFormat = () => this.timeFormat === "HH:MM";
144
+ this.isKeyboardOrEvent = (event) => {
145
+ return (Object.prototype.toString.call(event) === this.EVENT_OBJECT_STRING ||
146
+ Object.prototype.toString.call(event) === "[object KeyboardEvent]");
147
+ };
148
+ this.setTimeValidity = () => {
149
+ const minHour = 0;
150
+ const maxHour = this.timePeriod === "12" ? 11 : 23;
151
+ if (!isEmptyString(this.hour)) {
152
+ this.isValidHour = +this.hour >= minHour && +this.hour <= maxHour;
153
+ }
154
+ else {
155
+ this.isValidHour = true;
156
+ }
157
+ if (!isEmptyString(this.minute)) {
158
+ this.isValidMinute = +this.minute >= 0 && +this.minute <= 59;
159
+ }
160
+ else {
161
+ this.isValidMinute = true;
162
+ }
163
+ if (!this.isHHMMFormat()) {
164
+ if (!isEmptyString(this.second)) {
165
+ this.isValidSecond = +this.second >= 0 && +this.second <= 59;
166
+ }
167
+ else {
168
+ this.isValidSecond = true;
169
+ }
170
+ }
171
+ else {
172
+ this.isValidSecond = true;
173
+ }
174
+ };
175
+ this.setInputValue = (input, clear = false) => {
176
+ const newValue = clear ? "" : input.value;
177
+ if (input === this.hourInputEl) {
178
+ this.hour = newValue;
179
+ }
180
+ else if (input === this.minuteInputEl) {
181
+ this.minute = newValue;
182
+ }
183
+ else if (input === this.secondInputEl && !this.isHHMMFormat()) {
184
+ this.second = newValue;
185
+ }
186
+ this.setValidationMessage();
187
+ };
188
+ this.setPreventInput = (input, isPrevented) => {
189
+ if (input === this.hourInputEl) {
190
+ this.preventHourInput = isPrevented;
191
+ }
192
+ else if (input === this.minuteInputEl) {
193
+ this.preventMinuteInput = isPrevented;
194
+ }
195
+ else if (input === this.secondInputEl) {
196
+ this.preventSecondInput = isPrevented;
197
+ }
198
+ };
199
+ this.setValidationMessage = () => {
200
+ this.maxTime = this.parseTime(this.max);
201
+ this.minTime = this.parseTime(this.min);
202
+ this.setTimeValidity();
203
+ let outOfBoundsMsg = "";
204
+ let isDisabledTime = false;
205
+ if (!isEmptyString(this.hour) &&
206
+ !isEmptyString(this.minute) &&
207
+ (this.isHHMMFormat() || !isEmptyString(this.second))) {
208
+ this.selectedTime = this.convertToTime(this.hour, this.minute, this.isHHMMFormat() ? "00" : this.second);
209
+ this.isValidTime =
210
+ !!this.selectedTime &&
211
+ this.selectedTime.getHours() == +this.hour &&
212
+ this.selectedTime.getMinutes() == +this.minute &&
213
+ (this.isHHMMFormat() || this.selectedTime.getSeconds() == +this.second);
214
+ if (this.selectedTime &&
215
+ Array.isArray(this.disableTimes) &&
216
+ this.disableTimes.length > 0) {
217
+ isDisabledTime = this.disableTimes.some((t) => {
218
+ if (typeof t === "object" &&
219
+ t !== null &&
220
+ "start" in t &&
221
+ "end" in t) {
222
+ const start = this.parseTime(t.start);
223
+ const end = this.parseTime(t.end);
224
+ if (start && end) {
225
+ return this.selectedTime >= start && this.selectedTime <= end;
226
+ }
227
+ return false;
228
+ }
229
+ const parsed = this.parseTime(t);
230
+ return (parsed &&
231
+ parsed.getHours() === this.selectedTime.getHours() &&
232
+ parsed.getMinutes() === this.selectedTime.getMinutes() &&
233
+ parsed.getSeconds() === this.selectedTime.getSeconds());
234
+ });
235
+ if (isDisabledTime) {
236
+ this.isValidTime = false;
237
+ outOfBoundsMsg = this.invalidTimeMessage;
238
+ }
239
+ }
240
+ if (this.selectedTime && !isDisabledTime) {
241
+ if (this.minTime && this.selectedTime < this.minTime) {
242
+ this.isValidTime = false;
243
+ outOfBoundsMsg = `Please enter a time after ${this.formatTime(this.minTime)}.`;
244
+ }
245
+ else if (this.maxTime && this.selectedTime > this.maxTime) {
246
+ this.isValidTime = false;
247
+ outOfBoundsMsg = `Please enter a time before ${this.formatTime(this.maxTime)}.`;
248
+ }
249
+ }
250
+ if (!this.isValidTime) {
251
+ this.inputsInOrder.forEach((input) => input.setAttribute(this.ARIA_INVALID, "true"));
252
+ }
253
+ else {
254
+ this.inputsInOrder.forEach((input) => input.removeAttribute(this.ARIA_INVALID));
255
+ }
256
+ }
257
+ else {
258
+ this.selectedTime = null;
259
+ }
260
+ if (!(this.isValidHour &&
261
+ this.isValidMinute &&
262
+ this.isValidSecond &&
263
+ this.isValidTime)) {
264
+ this.invalidTimeText = outOfBoundsMsg || this.invalidTimeMessage;
265
+ }
266
+ else {
267
+ this.invalidTimeText = "";
268
+ }
269
+ };
270
+ this.formatTime = (time) => {
271
+ const hh = time.getHours().toString().padStart(2, "0");
272
+ const mm = time.getMinutes().toString().padStart(2, "0");
273
+ const ss = time.getSeconds().toString().padStart(2, "0");
274
+ return this.isHHMMFormat() ? `${hh}:${mm}` : `${hh}:${mm}:${ss}`;
275
+ };
276
+ this.handleInput = (event) => {
277
+ const inputEvent = event;
278
+ const input = event.target;
279
+ if (input !== this.hourInputEl) {
280
+ if (inputEvent.inputType !== "deleteContentBackward" &&
281
+ !this.preventAutoFormatting) {
282
+ if (input.value.length === 1 &&
283
+ +input.value >= 6 &&
284
+ +input.value <= 9) {
285
+ this.setInputValue(input);
286
+ this.notifyScreenReader(input);
287
+ this.moveToNextInput(input);
288
+ }
289
+ if (input.value.length === 2) {
290
+ this.setInputValue(input);
291
+ this.setPreventInput(input, true);
292
+ this.notifyScreenReader(input);
293
+ this.moveToNextInput(input);
294
+ }
295
+ else {
296
+ this.setPreventInput(input, false);
297
+ }
298
+ }
299
+ else if (this.preventAutoFormatting) {
300
+ if (input.value.length === 2 && !this.isKeyboardOrEvent(event)) {
301
+ this.setInputValue(input);
302
+ this.setPreventInput(input, true);
303
+ this.moveToNextInput(input);
304
+ }
305
+ else {
306
+ this.setInputValue(input);
307
+ }
308
+ }
309
+ if (input.value.length !== 2) {
310
+ this.setPreventInput(input, false);
311
+ }
312
+ }
313
+ else {
314
+ if (input.value.length === 2) {
315
+ this.setInputValue(input);
316
+ if (Object.prototype.toString.call(event) !== this.EVENT_OBJECT_STRING) {
317
+ this.moveToNextInput(input);
318
+ }
319
+ this.setPreventInput(input, true);
320
+ }
321
+ else {
322
+ this.setInputValue(input, true);
323
+ this.setPreventInput(input, false);
324
+ }
325
+ }
326
+ this.setFitToValueStyling(input);
327
+ if (input.value.length === 0) {
328
+ this.setInputValue(input, true);
329
+ this.setValidationMessage();
330
+ }
331
+ this.notifyScreenReader(input);
332
+ };
333
+ this.handleKeyDown = (event, isInputPrevented) => {
334
+ var _a;
335
+ const input = event.target;
336
+ const eventKey = (_a = event.key) === null || _a === void 0 ? void 0 : _a.toLowerCase();
337
+ const regex = /-?\d*\.?\d+(e[-+]?\d+)?|[:]|arrowup|arrowdown|arrowleft|arrowright|shift|tab|backspace|delete/;
338
+ if (!regex.test(eventKey) &&
339
+ !((event.ctrlKey || event.metaKey) &&
340
+ (eventKey === "v" || eventKey === "c"))) {
341
+ event.preventDefault();
342
+ }
343
+ switch (eventKey) {
344
+ case ":":
345
+ case "arrowright":
346
+ event.preventDefault();
347
+ this.moveToNextInput(input);
348
+ break;
349
+ case "arrowleft":
350
+ event.preventDefault();
351
+ this.moveToPreviousInput(input);
352
+ break;
353
+ case "arrowup":
354
+ case "arrowdown":
355
+ this.preventAutoFormatting = true;
356
+ this.handleUpDownArrowKeyPress(input, event);
357
+ break;
358
+ case "backspace":
359
+ if (input.value.length === 0) {
360
+ event.preventDefault();
361
+ this.moveToPreviousInput(input);
362
+ }
363
+ break;
364
+ }
365
+ this.preventInput(event, isInputPrevented);
366
+ this.isTimeSetFromKeyboardEvent = true;
367
+ };
368
+ this.handleFocus = (event) => {
369
+ const input = event.target;
370
+ input.select();
371
+ };
372
+ this.handleBlur = (event) => {
373
+ const input = event.target;
374
+ if (input) {
375
+ this.autocompleteInput(input);
376
+ }
377
+ };
378
+ this.handleUpDownArrowKeyPress = (input, event) => {
379
+ let minValue = 0;
380
+ let maxValue = 59;
381
+ if (input === this.hourInputEl) {
382
+ minValue = 0;
383
+ maxValue = this.timePeriod === "12" ? 11 : 23;
384
+ }
385
+ let val = +input.value;
386
+ if (event.key === "ArrowUp") {
387
+ val = val + 1;
388
+ if (val > maxValue)
389
+ val = minValue;
390
+ input.value = val.toString().padStart(2, "0");
391
+ this.notifyScreenReader(input);
392
+ }
393
+ if (event.key === "ArrowDown") {
394
+ val = val - 1;
395
+ if (val < minValue)
396
+ val = maxValue;
397
+ input.value = val.toString().padStart(2, "0");
398
+ this.notifyScreenReader(input);
399
+ }
400
+ this.setInputValue(input);
401
+ this.setFitToValueStyling(input);
402
+ };
403
+ this.handleTimeChange = (force) => {
404
+ if (force || this.selectedTime !== this.previousSelectedTime) {
405
+ if (this.value) {
406
+ this.inputsInOrder.forEach((input) => {
407
+ input.classList.add(this.FIT_TO_VALUE);
408
+ });
409
+ }
410
+ if (this.hour &&
411
+ this.minute &&
412
+ (this.isHHMMFormat() || this.second) &&
413
+ this.invalidTimeText === "") {
414
+ this.setValueAndEmitChange(this.selectedTime);
415
+ this.notifyScreenReaderSelectedTime();
416
+ }
417
+ else if (!(this.selectedTime === null && this.previousSelectedTime === null) &&
418
+ this.selectedTimeInfoEl) {
419
+ this.setValueAndEmitChange(null);
420
+ this.selectedTimeInfoEl.textContent = "";
421
+ }
422
+ this.previousSelectedTime = this.selectedTime;
423
+ if (!this.isTimeSetFromKeyboardEvent) {
424
+ this.updateInputValues(this.hour, this.minute, this.second);
425
+ }
426
+ }
427
+ };
428
+ this.setValueAndEmitChange = (value) => {
429
+ if (this.value !== value) {
430
+ this.emitIcChange(value);
431
+ this.value = value;
432
+ }
433
+ };
434
+ this.emitIcChange = (t) => {
435
+ this.selectedTime = t;
436
+ this.icChange.emit({
437
+ value: t,
438
+ timeObject: {
439
+ hour: this.hour === "" ? null : this.hour,
440
+ minute: this.minute === "" ? null : this.minute,
441
+ second: this.second === "" ? null : this.second,
442
+ },
443
+ });
444
+ };
445
+ this.setTime = (time) => {
446
+ if (time === null || time === "" || time === undefined) {
447
+ if (this.hour)
448
+ this.hour = "";
449
+ if (this.minute)
450
+ this.minute = "";
451
+ if (this.second)
452
+ this.second = "";
453
+ this.inputsInOrder.forEach((input) => {
454
+ input.classList.remove(this.FIT_TO_VALUE);
455
+ this.setPreventInput(input, false);
456
+ });
457
+ this.handleTimeChange(true);
458
+ }
459
+ else {
460
+ if (typeof time === "string") {
461
+ const zuluMatch = time.match(/^(\d{2}):(\d{2}):(\d{2})(?:\.(\d{1,3}))?Z?$/);
462
+ if (zuluMatch) {
463
+ this.hour = zuluMatch[1];
464
+ this.minute = zuluMatch[2];
465
+ this.second = zuluMatch[3];
466
+ }
467
+ else {
468
+ const parts = time.split(":");
469
+ this.hour = parts[0] || "";
470
+ this.minute = parts[1] || "";
471
+ this.second = parts[2] || "";
472
+ }
473
+ }
474
+ else if (time instanceof Date) {
475
+ this.hour = time.getHours().toString().padStart(2, "0");
476
+ this.minute = time.getMinutes().toString().padStart(2, "0");
477
+ this.second = time.getSeconds().toString().padStart(2, "0");
478
+ }
479
+ }
480
+ this.setValidationMessage();
481
+ };
482
+ this.setAriaInvalid = (validHour, validMinute, validSecond) => {
483
+ var _a, _b, _c;
484
+ if (this.inputsInOrder.length) {
485
+ this.inputsInOrder.forEach((input) => {
486
+ input.removeAttribute(this.ARIA_INVALID);
487
+ });
488
+ if (!validHour) {
489
+ (_a = this.hourInputEl) === null || _a === void 0 ? void 0 : _a.setAttribute(this.ARIA_INVALID, "true");
490
+ }
491
+ if (!validMinute) {
492
+ (_b = this.minuteInputEl) === null || _b === void 0 ? void 0 : _b.setAttribute(this.ARIA_INVALID, "true");
493
+ }
494
+ if (!validSecond) {
495
+ (_c = this.secondInputEl) === null || _c === void 0 ? void 0 : _c.setAttribute(this.ARIA_INVALID, "true");
496
+ }
497
+ if (!(validHour && validMinute && validSecond)) {
498
+ this.inputsInOrder.forEach((input) => {
499
+ input.setAttribute(this.ARIA_INVALID, "true");
500
+ });
501
+ }
502
+ }
503
+ };
504
+ this.handleClear = () => {
505
+ this.clearInput = true;
506
+ if (this.hourInputEl) {
507
+ this.hourInputEl.value = "";
508
+ }
509
+ if (this.minuteInputEl) {
510
+ this.minuteInputEl.value = "";
511
+ }
512
+ if (!this.isHHMMFormat() && this.secondInputEl) {
513
+ this.secondInputEl.value = "";
514
+ }
515
+ this.hour = "";
516
+ this.minute = "";
517
+ this.second = "";
518
+ this.handleTimeChange(true);
519
+ this.inputsInOrder.forEach((input) => {
520
+ input.classList.remove(this.FIT_TO_VALUE);
521
+ this.setPreventInput(input, false);
522
+ });
523
+ this.clearInput = false;
524
+ this.isTimeSetFromKeyboardEvent = false;
525
+ this.setValidationMessage();
526
+ this.invalidTimeText = "";
527
+ if (this.hourInputEl) {
528
+ this.hourInputEl.focus();
529
+ }
530
+ };
531
+ this.notifyScreenReaderSelectedTime = () => {
532
+ if (this.selectedTime && this.selectedTimeInfoEl) {
533
+ if (this.isHHMMFormat()) {
534
+ this.selectedTimeInfoEl.textContent = `Selected time: ${this.selectedTime
535
+ .getHours()
536
+ .toString()
537
+ .padStart(2, "0")}:${this.selectedTime
538
+ .getMinutes()
539
+ .toString()
540
+ .padStart(2, "0")}`;
541
+ }
542
+ else {
543
+ this.selectedTimeInfoEl.textContent = `Selected time: ${this.selectedTime
544
+ .getHours()
545
+ .toString()
546
+ .padStart(2, "0")}:${this.selectedTime
547
+ .getMinutes()
548
+ .toString()
549
+ .padStart(2, "0")}:${this.selectedTime
550
+ .getSeconds()
551
+ .toString()
552
+ .padStart(2, "0")}`;
553
+ }
554
+ }
555
+ };
556
+ this.setFitToValueStyling = (input) => {
557
+ if (input.value) {
558
+ input.classList.add(this.FIT_TO_VALUE);
559
+ }
560
+ else {
561
+ input.classList.remove(this.FIT_TO_VALUE);
562
+ }
563
+ };
564
+ this.handleHostBlur = () => {
565
+ this.removeLabelledBy = false;
566
+ this.icBlur.emit({ value: this.selectedTime });
567
+ };
568
+ this.handleHostFocus = () => {
569
+ var _a, _b;
570
+ if ((_b = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.activeElement) === null || _b === void 0 ? void 0 : _b.id.match(/(hour|minute|second)-input$/)) {
571
+ this.removeLabelledBy = false;
572
+ }
573
+ else {
574
+ this.removeLabelledBy = true;
575
+ }
576
+ this.icFocus.emit({ value: this.selectedTime });
577
+ };
578
+ this.handleFormReset = () => {
579
+ this.setTime(this.initialValue);
580
+ this.setValidationMessage();
581
+ this.handleTimeChange(false);
582
+ };
583
+ this.preventInput = (event, isInputPrevented) => {
584
+ const key = event.key;
585
+ const input = event.target;
586
+ let selectedString;
587
+ if (input) {
588
+ selectedString = input.value.substring(input.selectionStart || 0, input.selectionEnd || undefined);
589
+ }
590
+ if (key === "e" ||
591
+ key === "." ||
592
+ key === "-" ||
593
+ (event.key >= "0" &&
594
+ event.key <= "9" &&
595
+ isInputPrevented &&
596
+ !selectedString)) {
597
+ event.preventDefault();
598
+ }
599
+ };
600
+ this.moveToNextInput = (currentInput) => {
601
+ var _a;
602
+ this.preventAutoFormatting = false;
603
+ (_a = this.inputsInOrder[this.inputsInOrder.findIndex((input) => input === currentInput) + 1]) === null || _a === void 0 ? void 0 : _a.focus();
604
+ };
605
+ this.moveToPreviousInput = (currentInput) => {
606
+ var _a;
607
+ this.preventAutoFormatting = false;
608
+ (_a = this.inputsInOrder[this.inputsInOrder.findIndex((input) => input === currentInput) - 1]) === null || _a === void 0 ? void 0 : _a.focus();
609
+ };
610
+ this.autocompleteInput = (input) => {
611
+ const inputValue = input.value;
612
+ if (inputValue.length === 1) {
613
+ input.value = `0${inputValue}`;
614
+ }
615
+ if (input.value) {
616
+ this.setInputValue(input);
617
+ }
618
+ };
619
+ this.convertToTime = (hour, minute, second) => {
620
+ if (!isEmptyString(hour) &&
621
+ !isEmptyString(minute) &&
622
+ (this.isHHMMFormat() || !isEmptyString(second))) {
623
+ const d = new Date();
624
+ d.setHours(+hour, +minute, this.isHHMMFormat() ? 0 : +second, 0);
625
+ return d;
626
+ }
627
+ else {
628
+ return null;
629
+ }
630
+ };
631
+ this.setInputsInOrder = () => {
632
+ var _a;
633
+ this.inputsInOrder = [];
634
+ const shadowInputs = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll("input");
635
+ if (shadowInputs) {
636
+ shadowInputs.forEach((input) => this.inputsInOrder.push(input));
637
+ }
638
+ };
639
+ this.updateInputValues = (hour, minute, second) => {
640
+ if (this.hourInputEl && this.minuteInputEl && this.secondInputEl) {
641
+ this.hourInputEl.value = hour;
642
+ this.minuteInputEl.value = minute;
643
+ this.secondInputEl.value = second;
644
+ }
645
+ };
646
+ this.removeAriaLabelledBy = () => {
647
+ var _a;
648
+ (_a = this.inputCompContainerEl) === null || _a === void 0 ? void 0 : _a.removeAttribute(this.ARIA_LABELLED_BY);
649
+ };
650
+ this.setAriaLabelledBy = () => {
651
+ var _a, _b, _c, _d;
652
+ if (this.disabled &&
653
+ ((_a = this.inputCompContainerEl) === null || _a === void 0 ? void 0 : _a.getAttribute(this.ARIA_LABELLED_BY))) {
654
+ this.removeAriaLabelledBy();
655
+ return;
656
+ }
657
+ if (this.disabled) {
658
+ return;
659
+ }
660
+ const labelEl = (_b = this.el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector("label");
661
+ const labelId = `${this.inputId}-label`;
662
+ if (labelEl !== null && labelEl !== undefined) {
663
+ labelEl.id = labelId;
664
+ }
665
+ const hasValidation = !isEmptyString(this.validationStatus) ||
666
+ !isEmptyString(this.invalidTimeText);
667
+ const labelledBy = `${(_c = labelEl === null || labelEl === void 0 ? void 0 : labelEl.id) !== null && _c !== void 0 ? _c : ""} ${this.screenReaderInfoId} ${getInputDescribedByText(this.el, this.inputId, this.helperText !== "" && this.helperText !== this.defaultHelperText, hasValidation)} ${this.selectedTime ? this.selectedTimeInfoId : ""} ${this.assistiveHintId}`;
668
+ (_d = this.inputCompContainerEl) === null || _d === void 0 ? void 0 : _d.setAttribute(this.ARIA_LABELLED_BY, labelledBy);
669
+ };
670
+ this.getInputsInOrder = () => {
671
+ const timeParts = this.timeFormat.split(":");
672
+ return timeParts.map((part) => {
673
+ switch (part.substring(0, 1)) {
674
+ case "H":
675
+ return (h("input", { class: "hour-input", id: "hour-input", ref: (el) => (this.hourInputEl = el), "aria-label": "hour", placeholder: "HH", disabled: this.disabled, inputmode: "number", pattern: "[0-9]*", onPaste: this.handlePaste, onKeyDown: (event) => this.handleKeyDown(event, this.preventHourInput) }));
676
+ case "M":
677
+ return (h("input", { id: "minute-input", class: "minute-input", ref: (el) => (this.minuteInputEl = el), "aria-label": "minute", placeholder: "MM", disabled: this.disabled, inputmode: "number", pattern: "[0-9]*", onPaste: this.handlePaste, onKeyDown: (event) => this.handleKeyDown(event, this.preventMinuteInput) }));
678
+ case "S":
679
+ if (!this.isHHMMFormat()) {
680
+ return (h("input", { id: "second-input", class: "second-input", ref: (el) => (this.secondInputEl = el), "aria-label": "second", placeholder: "SS", disabled: this.disabled, inputmode: "number", pattern: "[0-9]*", onPaste: this.handlePaste, onKeyDown: (event) => this.handleKeyDown(event, this.preventSecondInput) }));
681
+ }
682
+ return null;
683
+ default:
684
+ return null;
685
+ }
686
+ });
687
+ };
688
+ this.getDescOfInputsOrder = () => {
689
+ return "hour, minute, and second";
690
+ };
691
+ this.getScreenReaderInfo = (validationStatus) => {
692
+ let inputDescriptors = "";
693
+ if (this.required) {
694
+ inputDescriptors += "required";
695
+ }
696
+ if (validationStatus === IcInformationStatus.Error) {
697
+ inputDescriptors += " invalid data";
698
+ }
699
+ return inputDescriptors === "" ? "" : inputDescriptors + ", ";
700
+ };
701
+ this.notifyScreenReader = (input) => {
702
+ var _a;
703
+ const liveRegion = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("#live-region");
704
+ if (liveRegion) {
705
+ liveRegion.textContent = `${input.value}, ${input.getAttribute(this.ARIA_LABEL)}`;
706
+ }
707
+ };
708
+ this.handlePaste = (event) => {
709
+ var _a;
710
+ event.preventDefault();
711
+ const pastedValue = ((_a = event.clipboardData) === null || _a === void 0 ? void 0 : _a.getData("Text")) || "";
712
+ const isValidTime = this.isPastedStringTimeValid(pastedValue);
713
+ this.setPastedValueAndValidation(isValidTime, pastedValue, event);
714
+ };
715
+ this.handleClearFocus = () => {
716
+ this.removeLabelledBy = true;
717
+ this.clearButtonFocused = true;
718
+ this.isTimeSetFromKeyboardEvent = true;
719
+ };
720
+ this.handleClearBlur = (ev) => {
721
+ this.clearButtonFocused = false;
722
+ this.isTimeSetFromKeyboardEvent = true;
723
+ const relatedTarget = ev.relatedTarget;
724
+ if ((relatedTarget === null || relatedTarget === void 0 ? void 0 : relatedTarget.id) === "clock-button") {
725
+ this.removeLabelledBy = false;
726
+ return;
727
+ }
728
+ if (relatedTarget === null || relatedTarget === void 0 ? void 0 : relatedTarget.id.match(/(minute|second)-input$/)) {
729
+ this.removeLabelledBy = false;
730
+ return;
731
+ }
732
+ this.removeLabelledBy = true;
733
+ };
734
+ this.handleClockFocus = () => {
735
+ this.clockFocused = true;
736
+ };
737
+ this.handleClockBlur = () => {
738
+ this.clockFocused = false;
739
+ };
740
+ this.isPastedStringTimeValid = (value) => {
741
+ if (this.isHHMMFormat()) {
742
+ if (/^\d{2}:\d{2}$/.test(value)) {
743
+ return value;
744
+ }
745
+ }
746
+ else {
747
+ if (/^\d{2}:\d{2}:\d{2}$/.test(value)) {
748
+ return value;
749
+ }
750
+ if (/^\d{2}:\d{2}:\d{2}Z$/.test(value)) {
751
+ return value.replace("Z", "");
752
+ }
753
+ const isoMatch = value.match(/T(\d{2}:\d{2}:\d{2})/);
754
+ if (isoMatch) {
755
+ return isoMatch[1];
756
+ }
757
+ }
758
+ return false;
759
+ };
760
+ this.setPastedValueAndValidation = (isValidTime, pastedValue, event) => {
761
+ if (isValidTime) {
762
+ const timeParts = isValidTime.split(":");
763
+ this.inputsInOrder.forEach((input, index) => {
764
+ input.classList.add(this.FIT_TO_VALUE);
765
+ const timeValue = timeParts[index] || "";
766
+ input.value = timeValue.slice(0, 2);
767
+ this.setInputValue(input);
768
+ this.autocompleteInput(input);
769
+ });
770
+ if (this.isHHMMFormat() && this.second !== "") {
771
+ this.second = "";
772
+ }
773
+ }
774
+ else {
775
+ const pasted = pastedValue.trim();
776
+ if ((pasted.length === 1 || pasted.length === 2) && isNumeric(pasted)) {
777
+ this.setInputPasteValue(event.target, pasted);
778
+ this.setInputValue(event.target);
779
+ }
780
+ else {
781
+ this.invalidTimeText = `Please paste a valid ${event.target.getAttribute(this.ARIA_LABEL)}`;
782
+ this.validationStatus = IcInformationStatus.Error;
783
+ }
784
+ }
785
+ };
786
+ }
787
+ watchInputHandler() {
788
+ if (this.emitTimePartChange &&
789
+ !this.externalSetTime &&
790
+ !this.clearInput &&
791
+ !(this.hour && this.minute && this.second) &&
792
+ this.selectedTime === null) {
793
+ this.emitIcChange(this.selectedTime);
794
+ }
795
+ }
796
+ watchDisabledHandler() {
797
+ removeDisabledFalse(this.disabled, this.el);
798
+ }
799
+ watchMaxHandler() {
800
+ this.maxTime = this.parseTime(this.max);
801
+ }
802
+ watchMinHandler() {
803
+ this.minTime = this.parseTime(this.min);
804
+ }
805
+ watchRequiredHandler() {
806
+ var _a, _b;
807
+ const labelEl = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("label");
808
+ if (this.required) {
809
+ const asteriskSpan = document.createElement("span");
810
+ asteriskSpan.setAttribute("id", "asterisk-span");
811
+ asteriskSpan.setAttribute("aria-hidden", "true");
812
+ asteriskSpan.textContent = " *";
813
+ labelEl === null || labelEl === void 0 ? void 0 : labelEl.appendChild(asteriskSpan);
814
+ }
815
+ else {
816
+ const asteriskSpan = (_b = this.el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector("#asterisk-span");
817
+ if (asteriskSpan) {
818
+ asteriskSpan.remove();
819
+ }
820
+ }
821
+ }
822
+ disconnectedCallback() {
823
+ removeFormResetListener(this.el, this.handleFormReset);
824
+ }
825
+ componentWillLoad() {
826
+ this.defaultHelperText = `Use format ${this.timeFormat}`;
827
+ if (isEmptyString(this.helperText))
828
+ this.helperText = this.defaultHelperText;
829
+ if (this.value) {
830
+ this.externalSetTime = true;
831
+ this.setTime(this.value);
832
+ }
833
+ this.screenReaderInfoId = `${this.inputId}-screen-reader-info`;
834
+ this.assistiveHintId = `${this.inputId}-assistive-hint`;
835
+ this.selectedTimeInfoId = `${this.inputId}-selected-time-info`;
836
+ addFormResetListener(this.el, this.handleFormReset);
837
+ removeDisabledFalse(this.disabled, this.el);
838
+ }
839
+ componentDidLoad() {
840
+ this.setInputsInOrder();
841
+ onComponentRequiredPropUndefined([{ prop: this.label, propName: "label" }], "Time Input");
842
+ if (this.value) {
843
+ this.updateInputValues(this.hour, this.minute, this.second);
844
+ this.inputsInOrder.forEach((input) => {
845
+ input.classList.add(this.FIT_TO_VALUE);
846
+ });
847
+ }
848
+ this.setAriaInvalid(this.isValidHour, this.isValidMinute, this.isValidSecond);
849
+ if (this.value) {
850
+ this.notifyScreenReaderSelectedTime();
851
+ }
852
+ this.inputsInOrder.forEach((input) => {
853
+ input.addEventListener("input", this.handleInput);
854
+ input.addEventListener("focus", this.handleFocus);
855
+ input.addEventListener("blur", this.handleBlur);
856
+ });
857
+ this.watchRequiredHandler();
858
+ }
859
+ componentWillUpdate() {
860
+ if (isEmptyString(this.helperText))
861
+ this.helperText = this.defaultHelperText;
862
+ if (!this.isTimeSetFromKeyboardEvent)
863
+ this.setTime(this.value);
864
+ this.setAriaInvalid(this.isValidHour, this.isValidMinute, this.isValidSecond);
865
+ this.handleTimeChange(false);
866
+ this.isTimeSetFromKeyboardEvent = false;
867
+ }
868
+ componentDidRender() {
869
+ if (this.removeLabelledBy) {
870
+ this.removeAriaLabelledBy();
871
+ return;
872
+ }
873
+ this.setAriaLabelledBy();
874
+ }
875
+ /**
876
+ * Returns the value as a Date object
877
+ * @returns Date
878
+ */
879
+ async getTime() {
880
+ return this.selectedTime;
881
+ }
882
+ /**
883
+ * @internal Used to enable other components to invoke an IcChange event from the input.
884
+ */
885
+ async triggerIcChange(t) {
886
+ this.externalSetTime = true;
887
+ this.setTime(t);
888
+ this.emitIcChange(t);
889
+ this.externalSetTime = false;
890
+ }
891
+ render() {
892
+ const { inputId, label, disabled, helperText, hideHelperText, hideLabel, showClearButton, showClockButton, size, theme, } = this;
893
+ const hasCustomValidation = !isEmptyString(this.validationStatus);
894
+ const validationStatus = hasCustomValidation
895
+ ? this.validationStatus
896
+ : !isEmptyString(this.invalidTimeText)
897
+ ? IcInformationStatus.Error
898
+ : "";
899
+ const assistiveHint = `Type or use the up and down arrow keys to change the values for the ${this.getDescOfInputsOrder()}.`;
900
+ renderHiddenInput(true, this.el, this.name, this.convertToTime(this.hour, this.minute, this.second), this.disabled);
901
+ const showDivider = !!(showClearButton &&
902
+ !(isEmptyString(this.hour) &&
903
+ isEmptyString(this.minute) &&
904
+ isEmptyString(this.second)));
905
+ return (h(Host, { key: 'cf8b05ab0ccc0a0a779296e4dd3ba52375547b13', class: {
906
+ [`ic-theme-${theme}`]: theme !== "inherit",
907
+ [`ic-time-input-disabled`]: disabled,
908
+ [`ic-time-input-${size}`]: true,
909
+ }, onBlur: this.handleHostBlur, onFocus: this.handleHostFocus }, h("ic-input-container", { key: 'b104968d5b191f040358a7e800f11cb6dd036407', disabled: disabled }, !(hideLabel && hideHelperText) && (h("ic-input-label", { key: 'fa0eaeef4aab6aef24b830e466ba87d68eb84b84', for: inputId, label: label, hideLabel: hideLabel, helperText: !hideHelperText ? helperText : "", disabled: disabled }, h("slot", { key: 'e4548928534459ff788ff576483b560cf90fed53', name: "helper-text", slot: "helper-text" }))), h("span", { key: '6f119c460880a9adb8661309c3a59cfee061ae7c', id: this.screenReaderInfoId, class: "sr-only", "aria-hidden": "true" }, this.getScreenReaderInfo(validationStatus), hideLabel && `${label}\n`, hideHelperText && `${helperText}\n`, `${this.defaultHelperText}.`), h("span", { key: 'bd5ce20dab45d2514cd4219eee0d1645596e5e6e', id: this.assistiveHintId, class: "sr-only", "aria-hidden": "true" }, assistiveHint), h("span", { key: 'e3d4a1e518f7bcb1b35ee065b5f038f9f6f3ffe7', id: "live-region", "aria-live": "assertive", class: "sr-only" }), h("ic-input-component-container", { key: '396b05aa89aa0e24a1853cc5de20abb5341c49e5', id: inputId, ref: (el) => (this.inputCompContainerEl = el), disabled: disabled, validationStatus: validationStatus, size: size, role: "group", class: { [`ic-theme-${theme}`]: theme !== "inherit" } }, h("div", { key: '2ac49a3454ce8dbabb546e54af197f0a66840499', class: "input-container" }, h("div", { key: '6917d370b61c997d888c133bb27d5fa8f94a79c0', class: "time-inputs" }, [
910
+ this.getInputsInOrder()[0],
911
+ ":",
912
+ this.getInputsInOrder()[1],
913
+ !this.isHHMMFormat()
914
+ ? [":", this.getInputsInOrder()[2]]
915
+ : null,
916
+ ]), h("div", { key: 'f09f3442355e75170fb1916727fdcac001df885d', class: "action-buttons" }, showClearButton && (h("ic-button", { key: '27173fcbdcd13798c4adc66eda9469bc471693ea', id: "clear-button", "aria-label": "Clear input", class: {
917
+ ["clear-button"]: true,
918
+ ["hidden"]: isEmptyString(this.hour) &&
919
+ isEmptyString(this.minute) &&
920
+ isEmptyString(this.second),
921
+ }, disabled: this.disabled, innerHTML: Clear, onClick: this.handleClear, onFocus: this.handleClearFocus, onBlur: this.handleClearBlur, variant: "icon-tertiary", theme: this.clearButtonFocused ? "light" : "dark", size: size })), showClockButton && (h("div", { key: '606a05c923fc4b95c21d0418be14168982117938', class: "show-clock-button-wrapper" }, h("div", { key: '4b9b2d37ed3a9661615685f3b077ac244295fbd1', class: { divider: showDivider, [size]: true } }), h("ic-button", { key: 'ab6ec2ca4b1442a23834e1a514800cd0f77c92d5', id: "clock-button", "aria-label": "Display clock", "aria-haspopup": "dialog", class: "clock-button", disabled: this.disabled, innerHTML: Clock, variant: "icon-tertiary", size: size, onFocus: this.handleClockFocus, onBlur: this.handleClockBlur, theme: this.clockFocused ? "light" : "dark" })))))), h("span", { key: '1695846e5d626056f5a0e372c8513fcf0001f0b9', id: this.selectedTimeInfoId, class: "sr-only", "aria-live": "polite" }, h("span", { key: '34f41adff4bc3642d21014b85e525b6f80814bb6', ref: (el) => (this.selectedTimeInfoEl = el), role: "status" })), (hasCustomValidation || !isEmptyString(this.invalidTimeText)) && (h("ic-input-validation", { key: '4b9326e9e9df98698c2c6643262122658a1434de', status: validationStatus, message: hasCustomValidation ? this.validationText : this.invalidTimeText, for: inputId })))));
922
+ }
923
+ static get delegatesFocus() { return true; }
924
+ get el() { return getElement(this); }
925
+ static get watchers() { return {
926
+ "hour": ["watchInputHandler"],
927
+ "minute": ["watchInputHandler"],
928
+ "second": ["watchInputHandler"],
929
+ "disabled": ["watchDisabledHandler"],
930
+ "max": ["watchMaxHandler"],
931
+ "min": ["watchMinHandler"],
932
+ "required": ["watchRequiredHandler"]
933
+ }; }
934
+ };
935
+ TimeInput.style = IcTimeInputStyle0;
936
+
937
+ export { TimeInput as ic_time_input };
938
+
939
+ //# sourceMappingURL=ic-time-input.entry.js.map