@ukic/canary-web-components 3.0.0-canary.31 → 3.0.0-canary.33

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 (388) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/{helpers-6f4b406b.js → helpers-f81fed28.js} +37 -1
  3. package/dist/cjs/helpers-f81fed28.js.map +1 -0
  4. package/dist/cjs/ic-calendar_2.cjs.entry.js +2 -2
  5. package/dist/cjs/ic-calendar_2.cjs.entry.js.map +1 -1
  6. package/dist/cjs/ic-card-horizontal.cjs.entry.js +1 -1
  7. package/dist/cjs/ic-checkbox_3.cjs.entry.js +19 -7
  8. package/dist/cjs/ic-checkbox_3.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ic-data-list.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ic-data-table-title-bar.cjs.entry.js +1 -1
  12. package/dist/cjs/ic-data-table.cjs.entry.js +13 -8
  13. package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ic-date-picker.cjs.entry.js +1 -1
  15. package/dist/cjs/ic-footer.cjs.entry.js +9 -5
  16. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ic-input-component-container_4.cjs.entry.js +2 -2
  19. package/dist/cjs/ic-input-component-container_4.cjs.entry.js.map +1 -1
  20. package/dist/cjs/ic-menu.cjs.entry.js +1 -1
  21. package/dist/cjs/ic-menu.cjs.entry.js.map +1 -1
  22. package/dist/cjs/ic-navigation-group.cjs.entry.js +1 -1
  23. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  24. package/dist/cjs/ic-navigation-item.cjs.entry.js +1 -1
  25. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  26. package/dist/cjs/ic-pagination_4.cjs.entry.js +8 -4
  27. package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
  28. package/dist/cjs/ic-radio-group.cjs.entry.js +1 -1
  29. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  30. package/dist/cjs/ic-radio-option.cjs.entry.js +9 -6
  31. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  32. package/dist/cjs/ic-search-bar.cjs.entry.js +1 -1
  33. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  34. package/dist/cjs/ic-table-of-contents.cjs.entry.js +1 -1
  35. package/dist/cjs/ic-time-input.cjs.entry.js +401 -99
  36. package/dist/cjs/ic-time-input.cjs.entry.js.map +1 -1
  37. package/dist/cjs/ic-time-selector.cjs.entry.js +842 -0
  38. package/dist/cjs/ic-time-selector.cjs.entry.js.map +1 -0
  39. package/dist/cjs/ic-toast.cjs.entry.js +14 -6
  40. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  41. package/dist/cjs/{ic-toggle-button.cjs.entry.js → ic-toggle-button_2.cjs.entry.js} +274 -1
  42. package/dist/cjs/ic-toggle-button_2.cjs.entry.js.map +1 -0
  43. package/dist/cjs/ic-tree-item.cjs.entry.js +3 -3
  44. package/dist/cjs/ic-tree-view.cjs.entry.js +4 -4
  45. package/dist/cjs/index-d337cd8a.js +8 -8
  46. package/dist/cjs/loader.cjs.js +1 -1
  47. package/dist/collection/collection-manifest.json +1 -0
  48. package/dist/collection/components/ic-calendar/ic-calendar.css +13 -7
  49. package/dist/collection/components/ic-calendar/ic-calendar.stories.js +13 -0
  50. package/dist/collection/components/ic-calendar/ic-calendar.stories.js.map +1 -1
  51. package/dist/collection/components/ic-data-table/ic-data-table.js +13 -8
  52. package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
  53. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +78 -6
  54. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
  55. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.stories.js +28 -0
  56. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.stories.js.map +1 -1
  57. package/dist/collection/components/ic-time-input/ic-time-input.css +21 -3
  58. package/dist/collection/components/ic-time-input/ic-time-input.js +434 -106
  59. package/dist/collection/components/ic-time-input/ic-time-input.js.map +1 -1
  60. package/dist/collection/components/ic-time-input/ic-time-input.stories.js +58 -9
  61. package/dist/collection/components/ic-time-input/ic-time-input.stories.js.map +1 -1
  62. package/dist/collection/components/ic-time-input/test/helpers/ic-time-input.js +2 -0
  63. package/dist/collection/components/ic-time-input/test/helpers/ic-time-input.js.map +1 -1
  64. package/dist/collection/components/ic-time-selector/ic-time-selector.css +293 -0
  65. package/dist/collection/components/ic-time-selector/ic-time-selector.js +1075 -0
  66. package/dist/collection/components/ic-time-selector/ic-time-selector.js.map +1 -0
  67. package/dist/collection/components/ic-time-selector/ic-time-selector.stories.js +166 -0
  68. package/dist/collection/components/ic-time-selector/ic-time-selector.stories.js.map +1 -0
  69. package/dist/collection/components/ic-time-selector/ic-time-selector.types.js +2 -0
  70. package/dist/collection/components/ic-time-selector/ic-time-selector.types.js.map +1 -0
  71. package/dist/collection/components/ic-tree-item/ic-tree-item.js +2 -2
  72. package/dist/collection/components/ic-tree-view/ic-tree-view.js +3 -3
  73. package/dist/collection/utils/helpers.js +35 -0
  74. package/dist/collection/utils/helpers.js.map +1 -1
  75. package/dist/collection/utils/types.js.map +1 -1
  76. package/dist/components/helpers2.js +36 -1
  77. package/dist/components/helpers2.js.map +1 -1
  78. package/dist/components/ic-calendar2.js +1 -1
  79. package/dist/components/ic-calendar2.js.map +1 -1
  80. package/dist/components/ic-checkbox2.js.map +1 -1
  81. package/dist/components/ic-data-list.js.map +1 -1
  82. package/dist/components/ic-data-row.js.map +1 -1
  83. package/dist/components/ic-data-table.js +12 -7
  84. package/dist/components/ic-data-table.js.map +1 -1
  85. package/dist/components/ic-footer.js +10 -5
  86. package/dist/components/ic-footer.js.map +1 -1
  87. package/dist/components/ic-hero.js.map +1 -1
  88. package/dist/components/ic-input-component-container2.js +1 -1
  89. package/dist/components/ic-input-component-container2.js.map +1 -1
  90. package/dist/components/ic-input-validation2.js +1 -1
  91. package/dist/components/ic-input-validation2.js.map +1 -1
  92. package/dist/components/ic-menu2.js +1 -1
  93. package/dist/components/ic-menu2.js.map +1 -1
  94. package/dist/components/ic-navigation-group.js +1 -1
  95. package/dist/components/ic-navigation-group.js.map +1 -1
  96. package/dist/components/ic-navigation-item.js +1 -1
  97. package/dist/components/ic-navigation-item.js.map +1 -1
  98. package/dist/components/ic-pagination-bar2.js +21 -6
  99. package/dist/components/ic-pagination-bar2.js.map +1 -1
  100. package/dist/components/ic-pagination2.js +9 -4
  101. package/dist/components/ic-pagination2.js.map +1 -1
  102. package/dist/components/ic-radio-group.js +1 -1
  103. package/dist/components/ic-radio-group.js.map +1 -1
  104. package/dist/components/ic-radio-option.js +10 -7
  105. package/dist/components/ic-radio-option.js.map +1 -1
  106. package/dist/components/ic-search-bar.js +1 -1
  107. package/dist/components/ic-search-bar.js.map +1 -1
  108. package/dist/components/ic-time-input.js +431 -112
  109. package/dist/components/ic-time-input.js.map +1 -1
  110. package/dist/components/ic-time-selector.d.ts +11 -0
  111. package/dist/components/ic-time-selector.js +898 -0
  112. package/dist/components/ic-time-selector.js.map +1 -0
  113. package/dist/components/ic-toast.js +15 -6
  114. package/dist/components/ic-toast.js.map +1 -1
  115. package/dist/components/ic-toggle-button-group.js +1 -299
  116. package/dist/components/ic-toggle-button-group.js.map +1 -1
  117. package/dist/{esm/ic-toggle-button-group.entry.js → components/ic-toggle-button-group2.js} +70 -13
  118. package/dist/components/ic-toggle-button-group2.js.map +1 -0
  119. package/dist/components/ic-toggle-button.js +1 -228
  120. package/dist/components/ic-toggle-button.js.map +1 -1
  121. package/dist/{esm/ic-toggle-button.entry.js → components/ic-toggle-button2.js} +65 -10
  122. package/dist/components/ic-toggle-button2.js.map +1 -0
  123. package/dist/components/ic-tree-item.js +2 -2
  124. package/dist/components/ic-tree-view.js +4 -4
  125. package/dist/core/core.css +28 -6
  126. package/dist/core/core.esm.js +1 -1
  127. package/dist/core/core.esm.js.map +1 -1
  128. package/dist/core/{p-b80b08ae.entry.js → p-08f24329.entry.js} +2 -2
  129. package/dist/core/{p-615d474e.entry.js → p-14b8bf37.entry.js} +2 -2
  130. package/dist/core/{p-81f12581.entry.js → p-169ad948.entry.js} +2 -2
  131. package/dist/core/p-169ad948.entry.js.map +1 -0
  132. package/dist/core/{p-847cbb16.entry.js → p-1d166343.entry.js} +2 -2
  133. package/dist/core/{p-b4bfaf8f.entry.js → p-201b41c7.entry.js} +2 -2
  134. package/dist/core/{p-24bac55f.entry.js → p-33509a89.entry.js} +2 -2
  135. package/dist/core/{p-e1920777.entry.js → p-3389625c.entry.js} +2 -2
  136. package/dist/core/{p-5a1cfb3c.entry.js → p-344752cb.entry.js} +2 -2
  137. package/dist/core/{p-6c238418.entry.js → p-348d7080.entry.js} +2 -2
  138. package/dist/core/{p-3ef2e98d.entry.js → p-39cdf5db.entry.js} +2 -2
  139. package/dist/core/{p-ffbf493f.entry.js → p-496b314f.entry.js} +2 -2
  140. package/dist/core/p-496b314f.entry.js.map +1 -0
  141. package/dist/core/{p-bd9a76d8.entry.js → p-508b6da3.entry.js} +2 -2
  142. package/dist/core/p-551a0fc1.entry.js +2 -0
  143. package/dist/core/p-551a0fc1.entry.js.map +1 -0
  144. package/dist/core/{p-f5cea10d.entry.js → p-5e6687a8.entry.js} +2 -2
  145. package/dist/core/{p-72171192.entry.js → p-60f4fe3a.entry.js} +2 -2
  146. package/dist/core/p-61c92598.entry.js +2 -0
  147. package/dist/core/p-61c92598.entry.js.map +1 -0
  148. package/dist/core/{p-e00e67ff.entry.js → p-6323da7a.entry.js} +2 -2
  149. package/dist/core/p-691dd972.entry.js +2 -0
  150. package/dist/core/p-691dd972.entry.js.map +1 -0
  151. package/dist/core/{p-c6c87e58.entry.js → p-6dfe0922.entry.js} +2 -2
  152. package/dist/core/p-71cc5909.entry.js +2 -0
  153. package/dist/core/p-71cc5909.entry.js.map +1 -0
  154. package/dist/core/p-770e92cd.entry.js +2 -0
  155. package/dist/core/p-770e92cd.entry.js.map +1 -0
  156. package/dist/core/{p-7cf6b428.entry.js → p-79ead0e7.entry.js} +2 -2
  157. package/dist/core/p-7b4b45cf.entry.js +2 -0
  158. package/dist/core/p-7b4b45cf.entry.js.map +1 -0
  159. package/dist/core/{p-afedcfdb.entry.js → p-7efdbab8.entry.js} +2 -2
  160. package/dist/core/p-802a4bd3.entry.js +2 -0
  161. package/dist/core/p-802a4bd3.entry.js.map +1 -0
  162. package/dist/core/p-829b34f9.js +2 -0
  163. package/dist/core/p-829b34f9.js.map +1 -0
  164. package/dist/core/{p-9a9605c3.entry.js → p-879c180d.entry.js} +2 -2
  165. package/dist/core/{p-3891ce53.entry.js → p-8830011c.entry.js} +2 -2
  166. package/dist/core/{p-444cd8d3.entry.js → p-8ab37b4d.entry.js} +2 -2
  167. package/dist/core/{p-c87cc0d1.entry.js → p-939025af.entry.js} +2 -2
  168. package/dist/core/p-939b168a.entry.js +2 -0
  169. package/dist/core/p-939b168a.entry.js.map +1 -0
  170. package/dist/core/{p-5a4344cb.entry.js → p-9dea5764.entry.js} +2 -2
  171. package/dist/core/{p-af821831.entry.js → p-a88e61b2.entry.js} +2 -2
  172. package/dist/core/p-a88e61b2.entry.js.map +1 -0
  173. package/dist/core/{p-90611726.entry.js → p-a8a92e54.entry.js} +2 -2
  174. package/dist/core/{p-31f3fb15.entry.js → p-a94a7b71.entry.js} +2 -2
  175. package/dist/core/p-ad551a0c.entry.js +2 -0
  176. package/dist/core/p-ad551a0c.entry.js.map +1 -0
  177. package/dist/core/{p-ba75ed34.entry.js → p-b434bd7c.entry.js} +2 -2
  178. package/dist/core/p-b4a2f6fa.entry.js.map +1 -1
  179. package/dist/core/{p-2188b483.entry.js → p-c0a7eed7.entry.js} +2 -2
  180. package/dist/core/p-c0b227d2.entry.js +2 -0
  181. package/dist/core/p-c0b227d2.entry.js.map +1 -0
  182. package/dist/core/{p-2646a629.entry.js → p-c32f043e.entry.js} +2 -2
  183. package/dist/core/{p-7a0f62c2.entry.js → p-c4b2774d.entry.js} +2 -2
  184. package/dist/core/p-c9525aac.entry.js +2 -0
  185. package/dist/core/p-c9525aac.entry.js.map +1 -0
  186. package/dist/core/{p-7026afad.entry.js → p-ca05573a.entry.js} +2 -2
  187. package/dist/core/{p-8c580d88.entry.js → p-d0607a70.entry.js} +2 -2
  188. package/dist/core/{p-15c05eb8.entry.js → p-d528d856.entry.js} +2 -2
  189. package/dist/core/{p-0043b019.entry.js → p-da1c2883.entry.js} +2 -2
  190. package/dist/core/{p-ffc1cea6.entry.js → p-e2e556ec.entry.js} +2 -2
  191. package/dist/core/{p-e4ef4263.js → p-e519f607.js} +2 -2
  192. package/dist/core/{p-3f0bce15.entry.js → p-e5c6d01a.entry.js} +2 -2
  193. package/dist/core/{p-04a9f82f.entry.js → p-e8db8772.entry.js} +2 -2
  194. package/dist/core/{p-e4b82731.entry.js → p-ea04103e.entry.js} +2 -2
  195. package/dist/core/{p-9a95f428.entry.js → p-eaeb473e.entry.js} +2 -2
  196. package/dist/core/p-eaeb473e.entry.js.map +1 -0
  197. package/dist/core/{p-8e592393.entry.js → p-ecc7fd71.entry.js} +2 -2
  198. package/dist/core/p-efe260f0.entry.js +2 -0
  199. package/dist/core/p-efe260f0.entry.js.map +1 -0
  200. package/dist/core/{p-b6d6b26e.entry.js → p-f1b57f91.entry.js} +2 -2
  201. package/dist/core/p-f5dc04f7.entry.js +2 -0
  202. package/dist/core/p-f5dc04f7.entry.js.map +1 -0
  203. package/dist/core/p-fb07921b.entry.js +2 -0
  204. package/dist/core/p-fb07921b.entry.js.map +1 -0
  205. package/dist/core/{p-1900c7c7.entry.js → p-fd08156a.entry.js} +2 -2
  206. package/dist/core/{p-3594922d.entry.js → p-fe5b51bb.entry.js} +2 -2
  207. package/dist/core/{p-ef5b6622.entry.js → p-ff618439.entry.js} +2 -2
  208. package/dist/esm/core.js +1 -1
  209. package/dist/esm/{helpers-5419eb6c.js → helpers-063369f4.js} +2 -2
  210. package/dist/esm/{helpers-5419eb6c.js.map → helpers-063369f4.js.map} +1 -1
  211. package/dist/esm/{helpers-9f228880.js → helpers-a08b3f32.js} +37 -2
  212. package/dist/esm/helpers-a08b3f32.js.map +1 -0
  213. package/dist/esm/ic-accordion-group.entry.js +1 -1
  214. package/dist/esm/ic-accordion.entry.js +1 -1
  215. package/dist/esm/ic-action-chip.entry.js +1 -1
  216. package/dist/esm/ic-alert.entry.js +1 -1
  217. package/dist/esm/ic-back-to-top.entry.js +1 -1
  218. package/dist/esm/ic-badge.entry.js +1 -1
  219. package/dist/esm/ic-breadcrumb-group.entry.js +1 -1
  220. package/dist/esm/ic-breadcrumb.entry.js +1 -1
  221. package/dist/esm/ic-button_3.entry.js +1 -1
  222. package/dist/esm/ic-calendar_2.entry.js +2 -2
  223. package/dist/esm/ic-calendar_2.entry.js.map +1 -1
  224. package/dist/esm/ic-card-horizontal.entry.js +1 -1
  225. package/dist/esm/ic-card-vertical.entry.js +1 -1
  226. package/dist/esm/ic-checkbox-group.entry.js +1 -1
  227. package/dist/esm/ic-checkbox_3.entry.js +20 -8
  228. package/dist/esm/ic-checkbox_3.entry.js.map +1 -1
  229. package/dist/esm/ic-chip.entry.js +1 -1
  230. package/dist/esm/ic-data-list.entry.js.map +1 -1
  231. package/dist/esm/ic-data-row.entry.js +1 -1
  232. package/dist/esm/ic-data-row.entry.js.map +1 -1
  233. package/dist/esm/ic-data-table-title-bar.entry.js +1 -1
  234. package/dist/esm/ic-data-table.entry.js +13 -8
  235. package/dist/esm/ic-data-table.entry.js.map +1 -1
  236. package/dist/esm/ic-date-picker.entry.js +1 -1
  237. package/dist/esm/ic-dialog.entry.js +1 -1
  238. package/dist/esm/ic-divider.entry.js +1 -1
  239. package/dist/esm/ic-footer-link-group.entry.js +1 -1
  240. package/dist/esm/ic-footer-link.entry.js +1 -1
  241. package/dist/esm/ic-footer.entry.js +10 -6
  242. package/dist/esm/ic-footer.entry.js.map +1 -1
  243. package/dist/esm/ic-hero.entry.js +1 -1
  244. package/dist/esm/ic-hero.entry.js.map +1 -1
  245. package/dist/esm/ic-horizontal-scroll.entry.js +1 -1
  246. package/dist/esm/ic-input-component-container_4.entry.js +3 -3
  247. package/dist/esm/ic-input-component-container_4.entry.js.map +1 -1
  248. package/dist/esm/ic-link.entry.js +1 -1
  249. package/dist/esm/ic-menu-group.entry.js +1 -1
  250. package/dist/esm/ic-menu-item.entry.js +1 -1
  251. package/dist/esm/ic-menu.entry.js +2 -2
  252. package/dist/esm/ic-menu.entry.js.map +1 -1
  253. package/dist/esm/ic-navigation-button.entry.js +1 -1
  254. package/dist/esm/ic-navigation-group.entry.js +2 -2
  255. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  256. package/dist/esm/ic-navigation-item.entry.js +2 -2
  257. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  258. package/dist/esm/ic-navigation-menu.entry.js +1 -1
  259. package/dist/esm/ic-page-header.entry.js +1 -1
  260. package/dist/esm/ic-pagination_4.entry.js +9 -5
  261. package/dist/esm/ic-pagination_4.entry.js.map +1 -1
  262. package/dist/esm/ic-popover-menu.entry.js +1 -1
  263. package/dist/esm/ic-radio-group.entry.js +2 -2
  264. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  265. package/dist/esm/ic-radio-option.entry.js +10 -7
  266. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  267. package/dist/esm/ic-search-bar.entry.js +2 -2
  268. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  269. package/dist/esm/ic-side-navigation.entry.js +1 -1
  270. package/dist/esm/ic-status-tag.entry.js +1 -1
  271. package/dist/esm/ic-step.entry.js +1 -1
  272. package/dist/esm/ic-stepper.entry.js +1 -1
  273. package/dist/esm/ic-switch.entry.js +1 -1
  274. package/dist/esm/ic-tab-group.entry.js +1 -1
  275. package/dist/esm/ic-tab.entry.js +1 -1
  276. package/dist/esm/ic-table-of-contents.entry.js +1 -1
  277. package/dist/esm/ic-theme.entry.js +1 -1
  278. package/dist/esm/ic-time-input.entry.js +401 -99
  279. package/dist/esm/ic-time-input.entry.js.map +1 -1
  280. package/dist/esm/ic-time-selector.entry.js +838 -0
  281. package/dist/esm/ic-time-selector.entry.js.map +1 -0
  282. package/dist/esm/ic-toast.entry.js +15 -7
  283. package/dist/esm/ic-toast.entry.js.map +1 -1
  284. package/dist/esm/ic-toggle-button_2.entry.js +449 -0
  285. package/dist/esm/ic-toggle-button_2.entry.js.map +1 -0
  286. package/dist/esm/ic-top-navigation.entry.js +1 -1
  287. package/dist/esm/ic-tree-item.entry.js +3 -3
  288. package/dist/esm/ic-tree-view.entry.js +4 -4
  289. package/dist/esm/ic-typography.entry.js +1 -1
  290. package/dist/esm/index-a7a720e7.js +8 -8
  291. package/dist/esm/loader.js +1 -1
  292. package/dist/types/components/ic-calendar/ic-calendar.stories.d.ts +20 -14
  293. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.d.ts +12 -0
  294. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.stories.d.ts +12 -0
  295. package/dist/types/components/ic-time-input/ic-time-input.d.ts +26 -6
  296. package/dist/types/components/ic-time-input/ic-time-input.stories.d.ts +31 -7
  297. package/dist/types/components/ic-time-input/test/helpers/ic-time-input.d.ts +1 -0
  298. package/dist/types/components/ic-time-selector/ic-time-selector.d.ts +88 -0
  299. package/dist/types/components/ic-time-selector/ic-time-selector.stories.d.ts +99 -0
  300. package/dist/types/components/ic-time-selector/ic-time-selector.types.d.ts +1 -0
  301. package/dist/types/components.d.ts +163 -11
  302. package/dist/types/utils/helpers.d.ts +14 -0
  303. package/dist/types/utils/types.d.ts +4 -1
  304. package/hydrate/index.js +1410 -156
  305. package/hydrate/index.mjs +1410 -156
  306. package/package.json +30 -30
  307. package/dist/cjs/helpers-6f4b406b.js.map +0 -1
  308. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +0 -267
  309. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +0 -1
  310. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +0 -1
  311. package/dist/core/p-1a976789.entry.js +0 -2
  312. package/dist/core/p-1a976789.entry.js.map +0 -1
  313. package/dist/core/p-3ba2b455.entry.js +0 -2
  314. package/dist/core/p-3ba2b455.entry.js.map +0 -1
  315. package/dist/core/p-41def410.entry.js +0 -2
  316. package/dist/core/p-41def410.entry.js.map +0 -1
  317. package/dist/core/p-4b188516.entry.js +0 -2
  318. package/dist/core/p-4b188516.entry.js.map +0 -1
  319. package/dist/core/p-5b32aaf3.entry.js +0 -2
  320. package/dist/core/p-5b32aaf3.entry.js.map +0 -1
  321. package/dist/core/p-7332320d.entry.js +0 -2
  322. package/dist/core/p-7332320d.entry.js.map +0 -1
  323. package/dist/core/p-81f12581.entry.js.map +0 -1
  324. package/dist/core/p-9044539c.entry.js +0 -2
  325. package/dist/core/p-9044539c.entry.js.map +0 -1
  326. package/dist/core/p-9a95f428.entry.js.map +0 -1
  327. package/dist/core/p-9f76eed6.entry.js +0 -2
  328. package/dist/core/p-9f76eed6.entry.js.map +0 -1
  329. package/dist/core/p-a1448064.entry.js +0 -2
  330. package/dist/core/p-a1448064.entry.js.map +0 -1
  331. package/dist/core/p-a237af88.entry.js +0 -2
  332. package/dist/core/p-a237af88.entry.js.map +0 -1
  333. package/dist/core/p-af821831.entry.js.map +0 -1
  334. package/dist/core/p-ba21f477.entry.js +0 -2
  335. package/dist/core/p-ba21f477.entry.js.map +0 -1
  336. package/dist/core/p-c3eddb99.entry.js +0 -2
  337. package/dist/core/p-c3eddb99.entry.js.map +0 -1
  338. package/dist/core/p-c5d65718.entry.js +0 -2
  339. package/dist/core/p-c5d65718.entry.js.map +0 -1
  340. package/dist/core/p-d144ca59.entry.js +0 -2
  341. package/dist/core/p-d144ca59.entry.js.map +0 -1
  342. package/dist/core/p-f48ce5f6.js +0 -2
  343. package/dist/core/p-f48ce5f6.js.map +0 -1
  344. package/dist/core/p-ffbf493f.entry.js.map +0 -1
  345. package/dist/esm/helpers-9f228880.js.map +0 -1
  346. package/dist/esm/ic-toggle-button-group.entry.js.map +0 -1
  347. package/dist/esm/ic-toggle-button.entry.js.map +0 -1
  348. /package/dist/core/{p-b80b08ae.entry.js.map → p-08f24329.entry.js.map} +0 -0
  349. /package/dist/core/{p-615d474e.entry.js.map → p-14b8bf37.entry.js.map} +0 -0
  350. /package/dist/core/{p-847cbb16.entry.js.map → p-1d166343.entry.js.map} +0 -0
  351. /package/dist/core/{p-b4bfaf8f.entry.js.map → p-201b41c7.entry.js.map} +0 -0
  352. /package/dist/core/{p-24bac55f.entry.js.map → p-33509a89.entry.js.map} +0 -0
  353. /package/dist/core/{p-e1920777.entry.js.map → p-3389625c.entry.js.map} +0 -0
  354. /package/dist/core/{p-5a1cfb3c.entry.js.map → p-344752cb.entry.js.map} +0 -0
  355. /package/dist/core/{p-6c238418.entry.js.map → p-348d7080.entry.js.map} +0 -0
  356. /package/dist/core/{p-3ef2e98d.entry.js.map → p-39cdf5db.entry.js.map} +0 -0
  357. /package/dist/core/{p-bd9a76d8.entry.js.map → p-508b6da3.entry.js.map} +0 -0
  358. /package/dist/core/{p-f5cea10d.entry.js.map → p-5e6687a8.entry.js.map} +0 -0
  359. /package/dist/core/{p-72171192.entry.js.map → p-60f4fe3a.entry.js.map} +0 -0
  360. /package/dist/core/{p-e00e67ff.entry.js.map → p-6323da7a.entry.js.map} +0 -0
  361. /package/dist/core/{p-c6c87e58.entry.js.map → p-6dfe0922.entry.js.map} +0 -0
  362. /package/dist/core/{p-7cf6b428.entry.js.map → p-79ead0e7.entry.js.map} +0 -0
  363. /package/dist/core/{p-afedcfdb.entry.js.map → p-7efdbab8.entry.js.map} +0 -0
  364. /package/dist/core/{p-9a9605c3.entry.js.map → p-879c180d.entry.js.map} +0 -0
  365. /package/dist/core/{p-3891ce53.entry.js.map → p-8830011c.entry.js.map} +0 -0
  366. /package/dist/core/{p-444cd8d3.entry.js.map → p-8ab37b4d.entry.js.map} +0 -0
  367. /package/dist/core/{p-c87cc0d1.entry.js.map → p-939025af.entry.js.map} +0 -0
  368. /package/dist/core/{p-5a4344cb.entry.js.map → p-9dea5764.entry.js.map} +0 -0
  369. /package/dist/core/{p-90611726.entry.js.map → p-a8a92e54.entry.js.map} +0 -0
  370. /package/dist/core/{p-31f3fb15.entry.js.map → p-a94a7b71.entry.js.map} +0 -0
  371. /package/dist/core/{p-ba75ed34.entry.js.map → p-b434bd7c.entry.js.map} +0 -0
  372. /package/dist/core/{p-2188b483.entry.js.map → p-c0a7eed7.entry.js.map} +0 -0
  373. /package/dist/core/{p-2646a629.entry.js.map → p-c32f043e.entry.js.map} +0 -0
  374. /package/dist/core/{p-7a0f62c2.entry.js.map → p-c4b2774d.entry.js.map} +0 -0
  375. /package/dist/core/{p-7026afad.entry.js.map → p-ca05573a.entry.js.map} +0 -0
  376. /package/dist/core/{p-8c580d88.entry.js.map → p-d0607a70.entry.js.map} +0 -0
  377. /package/dist/core/{p-15c05eb8.entry.js.map → p-d528d856.entry.js.map} +0 -0
  378. /package/dist/core/{p-0043b019.entry.js.map → p-da1c2883.entry.js.map} +0 -0
  379. /package/dist/core/{p-ffc1cea6.entry.js.map → p-e2e556ec.entry.js.map} +0 -0
  380. /package/dist/core/{p-e4ef4263.js.map → p-e519f607.js.map} +0 -0
  381. /package/dist/core/{p-3f0bce15.entry.js.map → p-e5c6d01a.entry.js.map} +0 -0
  382. /package/dist/core/{p-04a9f82f.entry.js.map → p-e8db8772.entry.js.map} +0 -0
  383. /package/dist/core/{p-e4b82731.entry.js.map → p-ea04103e.entry.js.map} +0 -0
  384. /package/dist/core/{p-8e592393.entry.js.map → p-ecc7fd71.entry.js.map} +0 -0
  385. /package/dist/core/{p-b6d6b26e.entry.js.map → p-f1b57f91.entry.js.map} +0 -0
  386. /package/dist/core/{p-1900c7c7.entry.js.map → p-fd08156a.entry.js.map} +0 -0
  387. /package/dist/core/{p-3594922d.entry.js.map → p-fe5b51bb.entry.js.map} +0 -0
  388. /package/dist/core/{p-ef5b6622.entry.js.map → p-ff618439.entry.js.map} +0 -0
@@ -3,12 +3,12 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-d337cd8a.js');
6
- const helpers = require('./helpers-6f4b406b.js');
6
+ const helpers = require('./helpers-f81fed28.js');
7
7
  const clearIcon = require('./clear-icon-547aa9b9.js');
8
8
 
9
9
  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>`;
10
10
 
11
- 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}}";
11
+ 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 )}.with-am-pm-toggle{display:flex;flex-direction:row}.am-pm-toggle ::part(button){min-width:-moz-fit-content;min-width:fit-content}.am-pm-toggle{margin-left:var(--ic-space-xs)}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{width:1.18rem}.millisecond-input,.millisecond-input.fit-to-value{width:1.75rem}.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}}";
12
12
  const IcTimeInputStyle0 = icTimeInputCss;
13
13
 
14
14
  let inputIds = 0;
@@ -17,9 +17,10 @@ const TimeInput = class {
17
17
  index.registerInstance(this, hostRef);
18
18
  this.clockButtonClicked = index.createEvent(this, "clockButtonClicked", 7);
19
19
  this.icBlur = index.createEvent(this, "icBlur", 7);
20
- this.icChange = index.createEvent(this, "icChange", 7);
20
+ this.icTimeChange = index.createEvent(this, "icTimeChange", 7);
21
21
  this.icFocus = index.createEvent(this, "icFocus", 7);
22
22
  this.DEFAULT_TIME_FORMAT = "HH:MM:SS";
23
+ this.TOGGLE_BUTTON_SELECTOR = "ic-toggle-button";
23
24
  this.ARIA_INVALID = "aria-invalid";
24
25
  this.ARIA_LABEL = "aria-label";
25
26
  this.ARIA_LABELLED_BY = "aria-labelledby";
@@ -30,6 +31,7 @@ const TimeInput = class {
30
31
  this.isValidHour = true;
31
32
  this.isValidMinute = true;
32
33
  this.isValidSecond = true;
34
+ this.isValidMillisecond = true;
33
35
  this.isValidTime = true;
34
36
  this.isTimeSetFromKeyboardEvent = false;
35
37
  this.previousSelectedTime = null;
@@ -38,12 +40,20 @@ const TimeInput = class {
38
40
  this.clearInput = false;
39
41
  this.maxTime = null;
40
42
  this.minTime = null;
43
+ this.previousHour = "";
44
+ this.previousMinute = "";
45
+ this.previousSecond = "";
46
+ this.previousMillisecond = "";
47
+ this.previousPeriod = "AM";
41
48
  this.clockFocused = false;
42
49
  this.clearButtonFocused = false;
43
50
  this.removeLabelledBy = false;
44
51
  this.hour = "";
45
52
  this.minute = "";
46
53
  this.second = "";
54
+ this.millisecond = "";
55
+ this.period = "AM";
56
+ this.isSSSFormat = () => this.timeFormat === "HH:MM:SS.SSS";
47
57
  /**
48
58
  * If `true`, the disabled state will be set.
49
59
  */
@@ -53,7 +63,7 @@ const TimeInput = class {
53
63
  */
54
64
  this.disableTimes = [];
55
65
  /**
56
- * If `true`, every individual input field completed will emit an icChange event.
66
+ * If `true`, every individual input field completed will emit an icTimeChange event.
57
67
  */
58
68
  this.emitTimePartChange = false;
59
69
  /**
@@ -88,6 +98,10 @@ const TimeInput = class {
88
98
  * If `true`, the input will require a value.
89
99
  */
90
100
  this.required = false;
101
+ /**
102
+ * If `true`, the time input will show an AM/PM toggle when in 12-hour time period.
103
+ */
104
+ this.showAmPmToggle = false;
91
105
  /**
92
106
  * If `true`, a button which clears the time input when clicked will be displayed.
93
107
  */
@@ -135,19 +149,6 @@ const TimeInput = class {
135
149
  inputEl.classList.add(this.FIT_TO_VALUE);
136
150
  }
137
151
  };
138
- this.parseTime = (value) => {
139
- if (!value)
140
- return null;
141
- if (value instanceof Date)
142
- return value;
143
- const parts = value.split(":");
144
- if (parts.length >= 2) {
145
- const d = new Date();
146
- d.setHours(+parts[0], +parts[1], parts[2] ? +parts[2] : 0, 0);
147
- return d;
148
- }
149
- return null;
150
- };
151
152
  this.isHHMMFormat = () => this.timeFormat === "HH:MM";
152
153
  this.isKeyboardOrEvent = (event) => {
153
154
  return (Object.prototype.toString.call(event) === this.EVENT_OBJECT_STRING ||
@@ -175,9 +176,22 @@ const TimeInput = class {
175
176
  else {
176
177
  this.isValidSecond = true;
177
178
  }
179
+ if (this.isSSSFormat()) {
180
+ if (!helpers.isEmptyString(this.millisecond)) {
181
+ this.isValidMillisecond =
182
+ +this.millisecond >= 0 && +this.millisecond <= 999;
183
+ }
184
+ else {
185
+ this.isValidMillisecond = true;
186
+ }
187
+ }
188
+ else {
189
+ this.isValidMillisecond = true;
190
+ }
178
191
  }
179
192
  else {
180
193
  this.isValidSecond = true;
194
+ this.isValidMillisecond = true;
181
195
  }
182
196
  };
183
197
  this.setInputValue = (input, clear = false) => {
@@ -191,6 +205,9 @@ const TimeInput = class {
191
205
  else if (input === this.secondInputEl && !this.isHHMMFormat()) {
192
206
  this.second = newValue;
193
207
  }
208
+ else if (this.isSSSFormat() && input === this.millisecondInputEl) {
209
+ this.millisecond = newValue;
210
+ }
194
211
  this.setValidationMessage();
195
212
  };
196
213
  this.setPreventInput = (input, isPrevented) => {
@@ -203,22 +220,50 @@ const TimeInput = class {
203
220
  else if (input === this.secondInputEl) {
204
221
  this.preventSecondInput = isPrevented;
205
222
  }
223
+ else if (this.isSSSFormat() && input === this.millisecondInputEl) {
224
+ this.preventMillisecondInput = isPrevented;
225
+ }
206
226
  };
207
227
  this.setValidationMessage = () => {
208
- this.maxTime = this.parseTime(this.max);
209
- this.minTime = this.parseTime(this.min);
228
+ this.maxTime = helpers.parseTimeHelper(this.max).date;
229
+ this.minTime = helpers.parseTimeHelper(this.min).date;
210
230
  this.setTimeValidity();
211
231
  let outOfBoundsMsg = "";
212
232
  let isDisabledTime = false;
213
233
  if (!helpers.isEmptyString(this.hour) &&
214
234
  !helpers.isEmptyString(this.minute) &&
215
- (this.isHHMMFormat() || !helpers.isEmptyString(this.second))) {
216
- this.selectedTime = this.convertToTime(this.hour, this.minute, this.isHHMMFormat() ? "00" : this.second);
217
- this.isValidTime =
218
- !!this.selectedTime &&
219
- this.selectedTime.getHours() == +this.hour &&
220
- this.selectedTime.getMinutes() == +this.minute &&
221
- (this.isHHMMFormat() || this.selectedTime.getSeconds() == +this.second);
235
+ (this.isHHMMFormat() || !helpers.isEmptyString(this.second)) &&
236
+ (!this.isSSSFormat() || !helpers.isEmptyString(this.millisecond))) {
237
+ this.selectedTime = this.convertToTime(this.hour, this.minute, this.isHHMMFormat() ? "00" : this.second, this.isSSSFormat() ? this.millisecond : "000");
238
+ const inputHour = +this.hour;
239
+ const selectedHour = this.selectedTime
240
+ ? this.selectedTime.getHours()
241
+ : null;
242
+ if (this.timePeriod === "12" &&
243
+ this.showAmPmToggle &&
244
+ selectedHour !== null) {
245
+ let selectedHour12 = selectedHour % 12;
246
+ if (selectedHour12 === 0)
247
+ selectedHour12 = 12;
248
+ this.isValidTime =
249
+ !!this.selectedTime &&
250
+ selectedHour12 == inputHour &&
251
+ this.selectedTime.getMinutes() == +this.minute &&
252
+ (this.isHHMMFormat() ||
253
+ this.selectedTime.getSeconds() == +this.second) &&
254
+ (!this.isSSSFormat() ||
255
+ this.selectedTime.getMilliseconds() == +this.millisecond);
256
+ }
257
+ else {
258
+ this.isValidTime =
259
+ !!this.selectedTime &&
260
+ this.selectedTime.getHours() == inputHour &&
261
+ this.selectedTime.getMinutes() == +this.minute &&
262
+ (this.isHHMMFormat() ||
263
+ this.selectedTime.getSeconds() == +this.second) &&
264
+ (!this.isSSSFormat() ||
265
+ this.selectedTime.getMilliseconds() == +this.millisecond);
266
+ }
222
267
  if (this.selectedTime &&
223
268
  Array.isArray(this.disableTimes) &&
224
269
  this.disableTimes.length > 0) {
@@ -227,18 +272,25 @@ const TimeInput = class {
227
272
  t !== null &&
228
273
  "start" in t &&
229
274
  "end" in t) {
230
- const start = this.parseTime(t.start);
231
- const end = this.parseTime(t.end);
275
+ const start = helpers.parseTimeHelper(t.start).date;
276
+ const end = helpers.parseTimeHelper(t.end).date;
232
277
  if (start && end) {
233
278
  return this.selectedTime >= start && this.selectedTime <= end;
234
279
  }
235
280
  return false;
236
281
  }
237
- const parsed = this.parseTime(t);
238
- return (parsed &&
239
- parsed.getHours() === this.selectedTime.getHours() &&
240
- parsed.getMinutes() === this.selectedTime.getMinutes() &&
241
- parsed.getSeconds() === this.selectedTime.getSeconds());
282
+ const parsed = helpers.parseTimeHelper(t).parts;
283
+ if (!parsed)
284
+ return false;
285
+ let selectedHour = this.selectedTime.getHours();
286
+ let parsedHour = parsed.hour;
287
+ if (this.timePeriod === "12" && this.showAmPmToggle) {
288
+ selectedHour = this.convertTo24Hour(selectedHour);
289
+ parsedHour = this.convertTo24Hour(parsedHour);
290
+ }
291
+ return (parsedHour === selectedHour &&
292
+ parsed.minute === this.selectedTime.getMinutes() &&
293
+ parsed.second === this.selectedTime.getSeconds());
242
294
  });
243
295
  if (isDisabledTime) {
244
296
  this.isValidTime = false;
@@ -268,6 +320,7 @@ const TimeInput = class {
268
320
  if (!(this.isValidHour &&
269
321
  this.isValidMinute &&
270
322
  this.isValidSecond &&
323
+ this.isValidMillisecond &&
271
324
  this.isValidTime)) {
272
325
  this.invalidTimeText = outOfBoundsMsg || this.invalidTimeMessage;
273
326
  }
@@ -279,12 +332,33 @@ const TimeInput = class {
279
332
  const hh = time.getHours().toString().padStart(2, "0");
280
333
  const mm = time.getMinutes().toString().padStart(2, "0");
281
334
  const ss = time.getSeconds().toString().padStart(2, "0");
335
+ const sss = time.getMilliseconds().toString().padStart(3, "0");
336
+ if (this.isSSSFormat()) {
337
+ return `${hh}:${mm}:${ss}.${sss}`;
338
+ }
282
339
  return this.isHHMMFormat() ? `${hh}:${mm}` : `${hh}:${mm}:${ss}`;
283
340
  };
284
341
  this.handleInput = (event) => {
285
342
  const inputEvent = event;
286
343
  const input = event.target;
287
- if (input !== this.hourInputEl) {
344
+ if (input === this.millisecondInputEl && this.isSSSFormat()) {
345
+ this.setInputValue(input);
346
+ this.setPreventInput(input, false);
347
+ this.setFitToValueStyling(input);
348
+ if (input.value.length === 3) {
349
+ this.moveToNextInput(input);
350
+ this.setPreventInput(input, true);
351
+ }
352
+ else {
353
+ this.setPreventInput(input, false);
354
+ }
355
+ if (input.value.length === 0) {
356
+ this.setInputValue(input, true);
357
+ this.setValidationMessage();
358
+ }
359
+ this.notifyScreenReader(input);
360
+ }
361
+ else if (input !== this.hourInputEl) {
288
362
  if (inputEvent.inputType !== "deleteContentBackward" &&
289
363
  !this.preventAutoFormatting) {
290
364
  if (input.value.length === 1 &&
@@ -317,6 +391,12 @@ const TimeInput = class {
317
391
  if (input.value.length !== 2) {
318
392
  this.setPreventInput(input, false);
319
393
  }
394
+ this.setFitToValueStyling(input);
395
+ if (input.value.length === 0) {
396
+ this.setInputValue(input, true);
397
+ this.setValidationMessage();
398
+ }
399
+ this.notifyScreenReader(input);
320
400
  }
321
401
  else {
322
402
  if (input.value.length === 2) {
@@ -330,18 +410,25 @@ const TimeInput = class {
330
410
  this.setInputValue(input, true);
331
411
  this.setPreventInput(input, false);
332
412
  }
413
+ this.setFitToValueStyling(input);
414
+ if (input.value.length === 0) {
415
+ this.setInputValue(input, true);
416
+ this.setValidationMessage();
417
+ }
418
+ this.notifyScreenReader(input);
333
419
  }
334
- this.setFitToValueStyling(input);
335
- if (input.value.length === 0) {
336
- this.setInputValue(input, true);
337
- this.setValidationMessage();
338
- }
339
- this.notifyScreenReader(input);
340
420
  };
341
421
  this.handleKeyDown = (event, isInputPrevented) => {
342
422
  var _a;
423
+ const navKeys = /arrowup|arrowdown|arrowleft|arrowright|shift|tab|backspace|delete/i;
343
424
  const input = event.target;
344
425
  const eventKey = (_a = event.key) === null || _a === void 0 ? void 0 : _a.toLowerCase();
426
+ if (!/-?\d*\.?\d+(e[-+]?\d+)?|[:]|[.]/i.test(eventKey) &&
427
+ !navKeys.test(eventKey) &&
428
+ !((event.ctrlKey || event.metaKey) &&
429
+ (eventKey === "v" || eventKey === "c"))) {
430
+ event.preventDefault();
431
+ }
345
432
  const regex = /-?\d*\.?\d+(e[-+]?\d+)?|[:]|arrowup|arrowdown|arrowleft|arrowright|shift|tab|backspace|delete/;
346
433
  if (!regex.test(eventKey) &&
347
434
  !((event.ctrlKey || event.metaKey) &&
@@ -379,7 +466,18 @@ const TimeInput = class {
379
466
  };
380
467
  this.handleBlur = (event) => {
381
468
  const input = event.target;
382
- if (input) {
469
+ if (input === this.millisecondInputEl && this.isSSSFormat()) {
470
+ if (input.value.length === 1) {
471
+ input.value = `00${input.value}`;
472
+ this.setInputValue(input);
473
+ }
474
+ else if (input.value.length === 2) {
475
+ input.value = `0${input.value}`;
476
+ this.setInputValue(input);
477
+ }
478
+ this.setFitToValueStyling(input);
479
+ }
480
+ else if (input) {
383
481
  this.autocompleteInput(input);
384
482
  }
385
483
  };
@@ -435,20 +533,80 @@ const TimeInput = class {
435
533
  };
436
534
  this.setValueAndEmitChange = (value, force = false) => {
437
535
  if (this.value !== value || force) {
438
- this.emitIcChange(value);
536
+ this.emitIcTimeChange(value);
439
537
  this.value = value;
440
538
  }
441
539
  };
442
- this.emitIcChange = (t) => {
443
- this.selectedTime = t;
444
- this.icChange.emit({
445
- value: t,
446
- timeObject: {
447
- hour: this.hour === "" ? null : this.hour,
448
- minute: this.minute === "" ? null : this.minute,
449
- second: this.second === "" ? null : this.second,
450
- },
451
- });
540
+ this.convertTo24Hour = (hour) => {
541
+ let date24hours = hour;
542
+ if (this.period === "PM" && hour < 12)
543
+ date24hours = hour + 12;
544
+ if (this.period === "AM" && hour === 12)
545
+ date24hours = 0;
546
+ return date24hours;
547
+ };
548
+ this.emitIcTimeChange = (t) => {
549
+ const hour = parseInt(this.hour);
550
+ const minute = parseInt(this.minute);
551
+ const second = parseInt(this.second);
552
+ const millisecond = parseInt(this.millisecond);
553
+ const period = this.period;
554
+ let allSelected = false;
555
+ if (this.isSSSFormat()) {
556
+ allSelected =
557
+ this.hour !== "" &&
558
+ this.minute !== "" &&
559
+ this.second !== "" &&
560
+ this.millisecond !== "";
561
+ }
562
+ else if (this.timeFormat === this.DEFAULT_TIME_FORMAT) {
563
+ allSelected =
564
+ this.hour !== "" && this.minute !== "" && this.second !== "";
565
+ }
566
+ else if (this.timeFormat === "HH:MM") {
567
+ allSelected = this.hour !== "" && this.minute !== "";
568
+ }
569
+ let time = t;
570
+ let date24hours = hour;
571
+ if (hour != null &&
572
+ period &&
573
+ this.timePeriod === "12" &&
574
+ this.showAmPmToggle) {
575
+ date24hours = this.convertTo24Hour(hour);
576
+ time = new Date();
577
+ time.setHours(date24hours !== null && date24hours !== void 0 ? date24hours : 0);
578
+ time.setMinutes(minute !== null && minute !== void 0 ? minute : 0);
579
+ time.setSeconds(second !== null && second !== void 0 ? second : 0);
580
+ this.isSSSFormat() && time.setMilliseconds(millisecond !== null && millisecond !== void 0 ? millisecond : 0);
581
+ }
582
+ this.selectedTime = time;
583
+ const allTimePartsEmpty = this.hour === "" &&
584
+ this.minute === "" &&
585
+ this.second === "" &&
586
+ this.millisecond === "";
587
+ const onlyPeriodChanged = allTimePartsEmpty &&
588
+ this.period !== this.previousPeriod &&
589
+ this.previousHour === "" &&
590
+ this.previousMinute === "" &&
591
+ this.previousSecond === "" &&
592
+ this.previousMillisecond === "";
593
+ if (!onlyPeriodChanged) {
594
+ this.icTimeChange.emit({
595
+ value: allSelected ? time : null,
596
+ timeObject: {
597
+ hour: this.hour === "" ? null : this.hour,
598
+ minute: this.minute === "" ? null : this.minute,
599
+ second: this.second === "" ? null : this.second,
600
+ millisecond: this.millisecond === "" ? null : this.millisecond,
601
+ period: this.period === "" ? null : this.period,
602
+ },
603
+ });
604
+ }
605
+ this.previousHour = this.hour;
606
+ this.previousMinute = this.minute;
607
+ this.previousSecond = this.second;
608
+ this.previousMillisecond = this.millisecond;
609
+ this.previousPeriod = this.period;
452
610
  };
453
611
  this.setTime = (time) => {
454
612
  if (time === null || time === "" || time === undefined) {
@@ -458,6 +616,8 @@ const TimeInput = class {
458
616
  this.minute = "";
459
617
  if (this.second)
460
618
  this.second = "";
619
+ if (this.millisecond)
620
+ this.millisecond = "";
461
621
  this.inputsInOrder.forEach((input) => {
462
622
  input.classList.remove(this.FIT_TO_VALUE);
463
623
  this.setPreventInput(input, false);
@@ -473,22 +633,26 @@ const TimeInput = class {
473
633
  this.second = zuluMatch[3];
474
634
  }
475
635
  else {
476
- const parts = time.split(":");
636
+ const parts = time.split(/[:.]/);
477
637
  this.hour = parts[0] || "";
478
638
  this.minute = parts[1] || "";
479
639
  this.second = parts[2] || "";
640
+ this.millisecond = parts[3] || "";
480
641
  }
481
642
  }
482
643
  else if (time instanceof Date) {
483
644
  this.hour = time.getHours().toString().padStart(2, "0");
484
645
  this.minute = time.getMinutes().toString().padStart(2, "0");
485
646
  this.second = time.getSeconds().toString().padStart(2, "0");
647
+ if (this.isSSSFormat()) {
648
+ this.millisecond = time.getMilliseconds().toString().padStart(3, "0");
649
+ }
486
650
  }
487
651
  }
488
652
  this.setValidationMessage();
489
653
  };
490
- this.setAriaInvalid = (validHour, validMinute, validSecond) => {
491
- var _a, _b, _c;
654
+ this.setAriaInvalid = (validHour, validMinute, validSecond, validMillisecond) => {
655
+ var _a, _b, _c, _d;
492
656
  if (this.inputsInOrder.length) {
493
657
  this.inputsInOrder.forEach((input) => {
494
658
  input.removeAttribute(this.ARIA_INVALID);
@@ -502,7 +666,10 @@ const TimeInput = class {
502
666
  if (!validSecond) {
503
667
  (_c = this.secondInputEl) === null || _c === void 0 ? void 0 : _c.setAttribute(this.ARIA_INVALID, "true");
504
668
  }
505
- if (!(validHour && validMinute && validSecond)) {
669
+ if (!validMillisecond) {
670
+ (_d = this.millisecondInputEl) === null || _d === void 0 ? void 0 : _d.setAttribute(this.ARIA_INVALID, "true");
671
+ }
672
+ if (!(validHour && validMinute && validSecond && validMillisecond)) {
506
673
  this.inputsInOrder.forEach((input) => {
507
674
  input.setAttribute(this.ARIA_INVALID, "true");
508
675
  });
@@ -510,6 +677,7 @@ const TimeInput = class {
510
677
  }
511
678
  };
512
679
  this.handleClear = () => {
680
+ var _a;
513
681
  this.clearInput = true;
514
682
  if (this.hourInputEl) {
515
683
  this.hourInputEl.value = "";
@@ -520,9 +688,25 @@ const TimeInput = class {
520
688
  if (!this.isHHMMFormat() && this.secondInputEl) {
521
689
  this.secondInputEl.value = "";
522
690
  }
691
+ if (this.isSSSFormat() && this.millisecondInputEl) {
692
+ this.millisecondInputEl.value = "";
693
+ }
523
694
  this.hour = "";
524
695
  this.minute = "";
525
696
  this.second = "";
697
+ this.millisecond = "";
698
+ this.period = "AM";
699
+ if (this.showAmPmToggle) {
700
+ (_a = this.periodToggleEl) === null || _a === void 0 ? void 0 : _a.querySelectorAll(this.TOGGLE_BUTTON_SELECTOR).forEach((btn) => {
701
+ const toggleBtn = btn;
702
+ if (toggleBtn.label === "AM") {
703
+ toggleBtn.checked = true;
704
+ }
705
+ else {
706
+ toggleBtn.checked = false;
707
+ }
708
+ });
709
+ }
526
710
  this.handleTimeChange(true);
527
711
  this.inputsInOrder.forEach((input) => {
528
712
  input.classList.remove(this.FIT_TO_VALUE);
@@ -538,26 +722,31 @@ const TimeInput = class {
538
722
  };
539
723
  this.notifyScreenReaderSelectedTime = () => {
540
724
  if (this.selectedTime && this.selectedTimeInfoEl) {
725
+ let hours = this.selectedTime.getHours();
726
+ if (this.timePeriod === "12" && this.showAmPmToggle) {
727
+ hours = this.convertTo24Hour(hours);
728
+ }
729
+ const hoursStr = hours.toString().padStart(2, "0");
730
+ const minutesStr = this.selectedTime
731
+ .getMinutes()
732
+ .toString()
733
+ .padStart(2, "0");
734
+ const secondsStr = this.selectedTime
735
+ .getSeconds()
736
+ .toString()
737
+ .padStart(2, "0");
738
+ const msStr = this.selectedTime
739
+ .getMilliseconds()
740
+ .toString()
741
+ .padStart(3, "0");
541
742
  if (this.isHHMMFormat()) {
542
- this.selectedTimeInfoEl.textContent = `Selected time: ${this.selectedTime
543
- .getHours()
544
- .toString()
545
- .padStart(2, "0")}:${this.selectedTime
546
- .getMinutes()
547
- .toString()
548
- .padStart(2, "0")}`;
743
+ this.selectedTimeInfoEl.textContent = `Selected time: ${hoursStr}:${minutesStr}`;
744
+ }
745
+ else if (!this.isSSSFormat()) {
746
+ this.selectedTimeInfoEl.textContent = `Selected time: ${hoursStr}:${minutesStr}:${secondsStr}`;
549
747
  }
550
748
  else {
551
- this.selectedTimeInfoEl.textContent = `Selected time: ${this.selectedTime
552
- .getHours()
553
- .toString()
554
- .padStart(2, "0")}:${this.selectedTime
555
- .getMinutes()
556
- .toString()
557
- .padStart(2, "0")}:${this.selectedTime
558
- .getSeconds()
559
- .toString()
560
- .padStart(2, "0")}`;
749
+ this.selectedTimeInfoEl.textContent = `Selected time: ${hoursStr}:${minutesStr}:${secondsStr}.${msStr}`;
561
750
  }
562
751
  }
563
752
  };
@@ -575,7 +764,7 @@ const TimeInput = class {
575
764
  };
576
765
  this.handleHostFocus = () => {
577
766
  var _a, _b;
578
- 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$/)) {
767
+ 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|millisecond)-input$/)) {
579
768
  this.removeLabelledBy = false;
580
769
  }
581
770
  else {
@@ -624,12 +813,17 @@ const TimeInput = class {
624
813
  this.setInputValue(input);
625
814
  }
626
815
  };
627
- this.convertToTime = (hour, minute, second) => {
816
+ this.convertToTime = (hour, minute, second, millisecond = null) => {
628
817
  if (!helpers.isEmptyString(hour) &&
629
818
  !helpers.isEmptyString(minute) &&
630
- (this.isHHMMFormat() || !helpers.isEmptyString(second))) {
819
+ (this.isHHMMFormat() || !helpers.isEmptyString(second)) &&
820
+ (!this.isSSSFormat() ||
821
+ (millisecond !== null && !helpers.isEmptyString(millisecond)))) {
631
822
  const d = new Date();
632
823
  d.setHours(+hour, +minute, this.isHHMMFormat() ? 0 : +second, 0);
824
+ if (this.isSSSFormat() && millisecond !== null) {
825
+ d.setMilliseconds(+millisecond);
826
+ }
633
827
  return d;
634
828
  }
635
829
  else {
@@ -674,17 +868,22 @@ const TimeInput = class {
674
868
  (_d = this.inputCompContainerEl) === null || _d === void 0 ? void 0 : _d.setAttribute(this.ARIA_LABELLED_BY, labelledBy);
675
869
  };
676
870
  this.getInputsInOrder = () => {
677
- const timeParts = this.timeFormat.split(":");
871
+ const timeParts = this.timeFormat.split(/[:.]/);
678
872
  return timeParts.map((part) => {
679
- switch (part.substring(0, 1)) {
680
- case "H":
873
+ switch (part) {
874
+ case "HH":
681
875
  return (index.h("input", { class: "hour-input", id: "hour-input", ref: (el) => (this.hourInputEl = el), "aria-label": "hour", placeholder: "HH", disabled: this.disabled, "aria-required": `${this.required}`, inputmode: "number", pattern: "[0-9]*", onPaste: this.handlePaste, onKeyDown: (event) => this.handleKeyDown(event, this.preventHourInput) }));
682
- case "M":
876
+ case "MM":
683
877
  return (index.h("input", { id: "minute-input", class: "minute-input", ref: (el) => (this.minuteInputEl = el), "aria-label": "minute", placeholder: "MM", disabled: this.disabled, "aria-required": `${this.required}`, inputmode: "number", pattern: "[0-9]*", onPaste: this.handlePaste, onKeyDown: (event) => this.handleKeyDown(event, this.preventMinuteInput) }));
684
- case "S":
878
+ case "SS":
685
879
  if (!this.isHHMMFormat()) {
686
880
  return (index.h("input", { id: "second-input", class: "second-input", ref: (el) => (this.secondInputEl = el), "aria-label": "second", placeholder: "SS", disabled: this.disabled, "aria-required": `${this.required}`, inputmode: "number", pattern: "[0-9]*", onPaste: this.handlePaste, onKeyDown: (event) => this.handleKeyDown(event, this.preventSecondInput) }));
687
881
  }
882
+ break;
883
+ case "SSS":
884
+ if (this.isSSSFormat()) {
885
+ return (index.h("input", { id: "millisecond-input", class: "millisecond-input", ref: (el) => (this.millisecondInputEl = el), "aria-label": "millisecond", placeholder: "SSS", disabled: this.disabled, "aria-required": `${this.required}`, inputmode: "number", pattern: "[0-9]*", onPaste: this.handlePaste, onKeyDown: (event) => this.handleKeyDown(event, this.preventMillisecondInput) }));
886
+ }
688
887
  return null;
689
888
  default:
690
889
  return null;
@@ -692,6 +891,9 @@ const TimeInput = class {
692
891
  });
693
892
  };
694
893
  this.getDescOfInputsOrder = () => {
894
+ if (this.isSSSFormat()) {
895
+ return "hour, minute, second, and millisecond";
896
+ }
695
897
  return "hour, minute, and second";
696
898
  };
697
899
  this.getScreenReaderInfo = (validationStatus) => {
@@ -731,7 +933,7 @@ const TimeInput = class {
731
933
  this.removeLabelledBy = false;
732
934
  return;
733
935
  }
734
- if (relatedTarget === null || relatedTarget === void 0 ? void 0 : relatedTarget.id.match(/(minute|second)-input$/)) {
936
+ if (relatedTarget === null || relatedTarget === void 0 ? void 0 : relatedTarget.id.match(/(minute|second|millisecond)-input$/)) {
735
937
  this.removeLabelledBy = false;
736
938
  return;
737
939
  }
@@ -749,6 +951,18 @@ const TimeInput = class {
749
951
  return value;
750
952
  }
751
953
  }
954
+ else if (this.isSSSFormat()) {
955
+ if (/^\d{2}:\d{2}:\d{2}\.\d{1,3}$/.test(value)) {
956
+ return value;
957
+ }
958
+ if (/^\d{2}:\d{2}:\d{2}\.\d{1,3}Z$/.test(value)) {
959
+ return value.replace("Z", "");
960
+ }
961
+ const isoMatch = value.match(/T(\d{2}:\d{2}:\d{2}\.\d{1,3})/);
962
+ if (isoMatch) {
963
+ return isoMatch[1];
964
+ }
965
+ }
752
966
  else {
753
967
  if (/^\d{2}:\d{2}:\d{2}$/.test(value)) {
754
968
  return value;
@@ -765,16 +979,78 @@ const TimeInput = class {
765
979
  };
766
980
  this.setPastedValueAndValidation = (isValidTime, pastedValue, event) => {
767
981
  if (isValidTime) {
768
- const timeParts = isValidTime.split(":");
982
+ const timeParts = isValidTime.split(/[:.]/);
769
983
  this.inputsInOrder.forEach((input, index) => {
984
+ var _a, _b, _c, _d;
770
985
  input.classList.add(this.FIT_TO_VALUE);
771
- const timeValue = timeParts[index] || "";
772
- input.value = timeValue.slice(0, 2);
986
+ let timeValue = timeParts[index] || "";
987
+ if (input === this.millisecondInputEl && this.isSSSFormat()) {
988
+ timeValue = timeValue.slice(0, 3);
989
+ }
990
+ else {
991
+ timeValue = timeValue.slice(0, 2);
992
+ }
993
+ if (input === this.hourInputEl) {
994
+ let activeToggle;
995
+ if (this.timePeriod === "12" && this.showAmPmToggle) {
996
+ if (parseInt(timeValue) > 12) {
997
+ timeValue = (parseInt(timeValue) - 12)
998
+ .toString()
999
+ .padStart(2, "0");
1000
+ if (parseInt(timeValue) > 12) {
1001
+ return;
1002
+ }
1003
+ else {
1004
+ this.period = "PM";
1005
+ (_a = this.periodToggleEl) === null || _a === void 0 ? void 0 : _a.querySelectorAll(this.TOGGLE_BUTTON_SELECTOR).forEach((btn) => {
1006
+ const toggleBtn = btn;
1007
+ if (toggleBtn.label === "PM") {
1008
+ activeToggle = toggleBtn;
1009
+ }
1010
+ else {
1011
+ toggleBtn.checked = false;
1012
+ }
1013
+ });
1014
+ if (activeToggle) {
1015
+ (_b = this.periodToggleEl) === null || _b === void 0 ? void 0 : _b.setActiveToggle(activeToggle);
1016
+ activeToggle.checked = true;
1017
+ }
1018
+ this.invalidTimeText = "";
1019
+ this.validationStatus = "";
1020
+ }
1021
+ }
1022
+ else {
1023
+ if (parseInt(timeValue) === 0) {
1024
+ timeValue = "12";
1025
+ }
1026
+ this.period = "AM";
1027
+ (_c = this.periodToggleEl) === null || _c === void 0 ? void 0 : _c.querySelectorAll(this.TOGGLE_BUTTON_SELECTOR).forEach((btn) => {
1028
+ const toggleBtn = btn;
1029
+ if (toggleBtn.label === "AM") {
1030
+ activeToggle = toggleBtn;
1031
+ }
1032
+ else {
1033
+ toggleBtn.checked = false;
1034
+ }
1035
+ });
1036
+ if (activeToggle) {
1037
+ (_d = this.periodToggleEl) === null || _d === void 0 ? void 0 : _d.setActiveToggle(activeToggle);
1038
+ activeToggle.checked = true;
1039
+ }
1040
+ this.invalidTimeText = "";
1041
+ this.validationStatus = "";
1042
+ }
1043
+ }
1044
+ }
1045
+ input.value = timeValue;
773
1046
  this.setInputValue(input);
774
1047
  this.autocompleteInput(input);
775
1048
  });
776
- if (this.isHHMMFormat() && this.second !== "") {
1049
+ if (this.isHHMMFormat() &&
1050
+ this.second !== "" &&
1051
+ this.millisecond !== "") {
777
1052
  this.second = "";
1053
+ this.millisecond = "";
778
1054
  }
779
1055
  }
780
1056
  else {
@@ -789,14 +1065,22 @@ const TimeInput = class {
789
1065
  }
790
1066
  }
791
1067
  };
1068
+ this.handleAMPM = (selectedOption) => {
1069
+ var _a;
1070
+ this.period = selectedOption.label;
1071
+ (_a = this.periodToggleEl) === null || _a === void 0 ? void 0 : _a.setActiveToggle(selectedOption);
1072
+ };
792
1073
  }
793
1074
  watchInputHandler() {
794
1075
  if (this.emitTimePartChange &&
795
1076
  !this.externalSetTime &&
796
1077
  !this.clearInput &&
797
- !(this.hour && this.minute && this.second) &&
1078
+ !(this.hour &&
1079
+ this.minute &&
1080
+ this.second &&
1081
+ (this.isSSSFormat() ? this.millisecond : true)) &&
798
1082
  this.selectedTime === null) {
799
- this.emitIcChange(this.selectedTime);
1083
+ this.emitIcTimeChange(this.selectedTime);
800
1084
  }
801
1085
  }
802
1086
  watchDisabledHandler() {
@@ -807,10 +1091,10 @@ const TimeInput = class {
807
1091
  this.helperText = this.defaultHelperText;
808
1092
  }
809
1093
  watchMaxHandler() {
810
- this.maxTime = this.parseTime(this.max);
1094
+ this.maxTime = helpers.parseTimeHelper(this.max).date;
811
1095
  }
812
1096
  watchMinHandler() {
813
- this.minTime = this.parseTime(this.min);
1097
+ this.minTime = helpers.parseTimeHelper(this.min).date;
814
1098
  }
815
1099
  watchRequiredHandler() {
816
1100
  var _a, _b;
@@ -859,7 +1143,7 @@ const TimeInput = class {
859
1143
  input.classList.add(this.FIT_TO_VALUE);
860
1144
  });
861
1145
  }
862
- this.setAriaInvalid(this.isValidHour, this.isValidMinute, this.isValidSecond);
1146
+ this.setAriaInvalid(this.isValidHour, this.isValidMinute, this.isValidSecond, this.isValidMillisecond);
863
1147
  if (this.value) {
864
1148
  this.notifyScreenReaderSelectedTime();
865
1149
  }
@@ -873,7 +1157,7 @@ const TimeInput = class {
873
1157
  componentWillUpdate() {
874
1158
  if (!this.isTimeSetFromKeyboardEvent)
875
1159
  this.setTime(this.value);
876
- this.setAriaInvalid(this.isValidHour, this.isValidMinute, this.isValidSecond);
1160
+ this.setAriaInvalid(this.isValidHour, this.isValidMinute, this.isValidSecond, this.isValidMillisecond);
877
1161
  this.handleTimeChange(false);
878
1162
  this.isTimeSetFromKeyboardEvent = false;
879
1163
  }
@@ -892,12 +1176,12 @@ const TimeInput = class {
892
1176
  return this.selectedTime;
893
1177
  }
894
1178
  /**
895
- * @internal Used to enable other components to invoke an IcChange event from the input.
1179
+ * @internal Used to enable other components to invoke an icTimeChange event from the input.
896
1180
  */
897
- async triggerIcChange(t) {
1181
+ async triggerIcTimeChange(t) {
898
1182
  this.externalSetTime = true;
899
1183
  this.setTime(t);
900
- this.emitIcChange(t);
1184
+ this.emitIcTimeChange(t);
901
1185
  this.externalSetTime = false;
902
1186
  }
903
1187
  render() {
@@ -914,23 +1198,39 @@ const TimeInput = class {
914
1198
  !(helpers.isEmptyString(this.hour) &&
915
1199
  helpers.isEmptyString(this.minute) &&
916
1200
  helpers.isEmptyString(this.second)));
917
- return (index.h(index.Host, { key: 'b4330a85fcd6bf99ace98ba735759e0e98ebea69', class: {
1201
+ if (this.showAmPmToggle && this.timePeriod !== "12") {
1202
+ this.showAmPmToggle = false;
1203
+ }
1204
+ return (index.h(index.Host, { key: 'd005982324084fad9fdfe6392cf879e15709d2ef', class: {
918
1205
  [`ic-theme-${theme}`]: theme !== "inherit",
919
1206
  [`ic-time-input-disabled`]: disabled,
920
1207
  [`ic-time-input-${size}`]: true,
921
- }, onBlur: this.handleHostBlur, onFocus: this.handleHostFocus }, index.h("ic-input-container", { key: 'e61ccf4dc81c26e14bf37e388aeb60fd25b4abd7', disabled: disabled }, !(hideLabel && hideHelperText) && (index.h("ic-input-label", { key: '7bda8a8034ae7b80594341f6924d561abcbbab90', for: inputId, label: label, hideLabel: hideLabel, helperText: !hideHelperText ? helperText : "", disabled: disabled }, index.h("slot", { key: 'da6a06701686398f4a44b71e76db5d02da897631', name: "helper-text", slot: "helper-text" }))), index.h("span", { key: '62e88d54d2f445778e96be67949b1a82fc272955', id: this.screenReaderInfoId, class: "sr-only", "aria-hidden": "true" }, this.getScreenReaderInfo(validationStatus), hideLabel && `${label}\n`, hideHelperText && `${helperText}\n`, `${this.defaultHelperText}.`), index.h("span", { key: '0a80156ecc1ddf0dea39033cc78de875ab7fa532', id: this.assistiveHintId, class: "sr-only", "aria-hidden": "true" }, assistiveHint), index.h("span", { key: '09d36876b7dc4d8050bcb0e7d39a0b008bab4a12', id: "live-region", "aria-live": "assertive", class: "sr-only" }), index.h("ic-input-component-container", { key: '6bb2743ce8c211b4500d707bf0a2ce10245dc31c', id: inputId, ref: (el) => (this.inputCompContainerEl = el), disabled: disabled, validationStatus: validationStatus, size: size, role: "group", class: { [`ic-theme-${theme}`]: theme !== "inherit" } }, index.h("div", { key: '02a184415c1f445340b3d4a3097b28a79cd258fe', class: "input-container" }, index.h("div", { key: 'a68248f5ad7a134ebe73456268b6f9cf07a35afa', class: "time-inputs" }, [
1208
+ }, onBlur: this.handleHostBlur, onFocus: this.handleHostFocus }, index.h("ic-input-container", { key: '6fcc48d72a92ef2a0acf3f6b109e29b24c6608db', disabled: disabled }, !(hideLabel && hideHelperText) && (index.h("ic-input-label", { key: '84364f527bbfeffed22d95df1ce879bb9cb55fde', for: inputId, label: label, hideLabel: hideLabel, helperText: !hideHelperText ? helperText : "", disabled: disabled }, index.h("slot", { key: '4a993ddc9a3923e4fbe58f4abfd1d6f51ef63494', name: "helper-text", slot: "helper-text" }))), index.h("span", { key: 'de2889971bef74376661a3fb0963c9bc88673e12', id: this.screenReaderInfoId, class: "sr-only", "aria-hidden": "true" }, this.getScreenReaderInfo(validationStatus), hideLabel && `${label}\n`, hideHelperText && `${helperText}\n`, `${this.defaultHelperText}.`), index.h("span", { key: 'b68b686d6794d6ad1247f18c867b1652066b48da', id: this.assistiveHintId, class: "sr-only", "aria-hidden": "true" }, assistiveHint), index.h("span", { key: '56557e76da321f937be614926cd3f41b4c9a09a8', id: "live-region", "aria-live": "assertive", class: "sr-only" }), index.h("div", { key: '89cbb13ffe21d66fd82a28ad6b5b295cf68c5787', class: {
1209
+ "with-am-pm-toggle": this.showAmPmToggle === true,
1210
+ } }, index.h("ic-input-component-container", { key: '03a61c8d72f43d68f81069327aa31b632bfee74d', id: inputId, ref: (el) => (this.inputCompContainerEl = el), disabled: disabled, validationStatus: validationStatus, size: size, role: "group", class: { [`ic-theme-${theme}`]: theme !== "inherit" } }, index.h("div", { key: '0fdf9d4191272a8b53e73d6230e10750032d5279', class: "input-container" }, index.h("div", { key: 'c7b13f330ec67b48e817f4b87fff96ad6ad6102e', class: "time-inputs" }, [
922
1211
  this.getInputsInOrder()[0],
923
1212
  ":",
924
1213
  this.getInputsInOrder()[1],
925
1214
  !this.isHHMMFormat()
926
1215
  ? [":", this.getInputsInOrder()[2]]
927
1216
  : null,
928
- ]), index.h("div", { key: '095391d922701f29a7debfd2482723fe05d1fdeb', class: "action-buttons" }, showClearButton && (index.h("ic-button", { key: '8690a529f57705b60ecbc3122925557803197ed8', id: "clear-button", "aria-label": "Clear input", class: {
1217
+ this.isSSSFormat()
1218
+ ? [".", this.getInputsInOrder()[3]]
1219
+ : null,
1220
+ ]), index.h("div", { key: 'caf4926b8008875a111f6bb3aa0815cfb2e10768', class: "action-buttons" }, showClearButton && (index.h("ic-button", { key: '9883c16dc3d60c6ea4d9d3cc3e4a770479339879', id: "clear-button", "aria-label": "Clear input", class: {
929
1221
  ["clear-button"]: true,
930
1222
  ["hidden"]: helpers.isEmptyString(this.hour) &&
931
1223
  helpers.isEmptyString(this.minute) &&
932
1224
  helpers.isEmptyString(this.second),
933
- }, disabled: this.disabled, innerHTML: clearIcon.Clear, onClick: this.handleClear, onFocus: this.handleClearFocus, onBlur: this.handleClearBlur, variant: "icon-tertiary", theme: this.clearButtonFocused ? "light" : "dark", size: size })), showClockButton && (index.h("div", { key: '83fe94cb9dc7b16f70049b36644d62f714e03c6f', class: "show-clock-button-wrapper" }, index.h("div", { key: '34171a16f8058ad79af9ac3bfeb9c2aea06c0c91', class: { divider: showDivider, [size]: true } }), index.h("ic-button", { key: '3290691bc0e95d300e526052934efbc93e806e62', 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" })))))), index.h("span", { key: 'b44af8625ff62cf77e8be3e88d62bcb411bd5dc0', id: this.selectedTimeInfoId, class: "sr-only", "aria-live": "polite" }, index.h("span", { key: 'a68f8dac81536f4f14302d7be6151a20c7e92024', ref: (el) => (this.selectedTimeInfoEl = el), role: "status" })), index.h("ic-input-validation", { key: 'c152fd0a46420a430bb61f619dbbb395f1dd41cb', status: validationStatus, message: hasCustomValidation ? this.validationText : this.invalidTimeText, for: inputId, ariaLiveMode: validationAriaLive }))));
1225
+ }, disabled: this.disabled, innerHTML: clearIcon.Clear, onClick: this.handleClear, onFocus: this.handleClearFocus, onBlur: this.handleClearBlur, variant: "icon-tertiary", theme: this.clearButtonFocused ? "light" : "dark", size: size })), showClockButton && (index.h("div", { key: '9ace5895419381c300bbdc5c8ef2eeacad05b63b', class: "show-clock-button-wrapper" }, index.h("div", { key: 'dfa2a5bbf9e7bd74353d7caf3514861d545d6026', class: { divider: showDivider, [size]: true } }), index.h("ic-button", { key: '1c36dcf4f02a323aafeb265126e2d1334df077b2', 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" })))))), this.showAmPmToggle && (index.h("ic-toggle-button-group", { key: 'c63749fddcc1b7ed3c394a17a5d1a65aa322f024', "select-type": "single", "accessible-label": "AM PM Toggle", ref: (el) => (this.periodToggleEl = el), disabled: disabled, class: "am-pm-toggle", "select-method": "auto", onIcChange: (e) => this.handleAMPM(e.detail.selectedOption), onKeyDown: (e) => {
1226
+ if (e.key === "Tab" && e.shiftKey) {
1227
+ e.preventDefault();
1228
+ if (this.inputsInOrder && this.inputsInOrder.length > 0) {
1229
+ const lastInput = this.inputsInOrder[this.inputsInOrder.length - 1];
1230
+ lastInput === null || lastInput === void 0 ? void 0 : lastInput.focus();
1231
+ }
1232
+ }
1233
+ } }, index.h("ic-toggle-button", { key: 'fc731674e7c26846a969768ddc77b94b14c6cca6', label: "AM", disabled: disabled, checked: true }), index.h("ic-toggle-button", { key: '89e0bd48a39a8e786fcac5e034358edd560f4136', label: "PM", disabled: disabled })))), index.h("span", { key: '52854ea1dc4a1c4e7783914ff90bf204848a2e6e', id: this.selectedTimeInfoId, class: "sr-only", "aria-live": "polite" }, index.h("span", { key: '065c89020778df53ae78d037ef62feb189b7fdba', ref: (el) => (this.selectedTimeInfoEl = el), role: "status" })), index.h("ic-input-validation", { key: 'fc2500bef0e8e077272424a46663a85509a160c3', status: validationStatus, message: hasCustomValidation ? this.validationText : this.invalidTimeText, for: inputId, ariaLiveMode: validationAriaLive }))));
934
1234
  }
935
1235
  static get delegatesFocus() { return true; }
936
1236
  get el() { return index.getElement(this); }
@@ -938,6 +1238,8 @@ const TimeInput = class {
938
1238
  "hour": ["watchInputHandler"],
939
1239
  "minute": ["watchInputHandler"],
940
1240
  "second": ["watchInputHandler"],
1241
+ "millisecond": ["watchInputHandler"],
1242
+ "period": ["watchInputHandler"],
941
1243
  "disabled": ["watchDisabledHandler"],
942
1244
  "helperText": ["watchHelperTextHandler"],
943
1245
  "max": ["watchMaxHandler"],