@ukic/canary-web-components 3.0.0-canary.13 → 3.0.0-canary.15

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 (602) hide show
  1. package/dist/cjs/core.cjs.js +2 -2
  2. package/dist/cjs/{date-helpers-c9551119.js → date-helpers-6f70dd03.js} +20 -66
  3. package/dist/cjs/date-helpers-6f70dd03.js.map +1 -0
  4. package/dist/cjs/{helpers-fc51fdcb.js → helpers-bec0dbd4.js} +2 -2
  5. package/dist/cjs/{helpers-fc51fdcb.js.map → helpers-bec0dbd4.js.map} +1 -1
  6. package/dist/cjs/{helpers-0e4c4fdd.js → helpers-d01564f7.js} +35 -17
  7. package/dist/cjs/helpers-d01564f7.js.map +1 -0
  8. package/dist/cjs/ic-accordion-group.cjs.entry.js +2 -2
  9. package/dist/cjs/ic-accordion.cjs.entry.js +2 -2
  10. package/dist/cjs/ic-alert.cjs.entry.js +2 -2
  11. package/dist/cjs/ic-back-to-top.cjs.entry.js +2 -2
  12. package/dist/cjs/ic-badge.cjs.entry.js +3 -3
  13. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +2 -2
  15. package/dist/cjs/ic-breadcrumb.cjs.entry.js +2 -2
  16. package/dist/cjs/ic-button_3.cjs.entry.js +61 -3
  17. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ic-card-horizontal.cjs.entry.js +16 -12
  19. package/dist/cjs/ic-card-horizontal.cjs.entry.js.map +1 -1
  20. package/dist/cjs/ic-card-vertical.cjs.entry.js +3 -3
  21. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
  22. package/dist/cjs/ic-checkbox-group.cjs.entry.js +7 -7
  23. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  24. package/dist/cjs/{ic-empty-state_2.cjs.entry.js → ic-checkbox_3.cjs.entry.js} +158 -24
  25. package/dist/cjs/ic-checkbox_3.cjs.entry.js.map +1 -0
  26. package/dist/cjs/ic-chip.cjs.entry.js +3 -3
  27. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  28. package/dist/cjs/ic-classification-banner.cjs.entry.js +3 -3
  29. package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
  30. package/dist/cjs/ic-data-list.cjs.entry.js +1 -1
  31. package/dist/cjs/ic-data-row.cjs.entry.js +2 -2
  32. package/dist/cjs/ic-data-table-title-bar.cjs.entry.js +7 -7
  33. package/dist/cjs/ic-data-table-title-bar.cjs.entry.js.map +1 -1
  34. package/dist/cjs/ic-data-table.cjs.entry.js +310 -276
  35. package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
  36. package/dist/cjs/ic-date-input.cjs.entry.js +175 -160
  37. package/dist/cjs/ic-date-input.cjs.entry.js.map +1 -1
  38. package/dist/cjs/ic-date-picker.cjs.entry.js +92 -70
  39. package/dist/cjs/ic-date-picker.cjs.entry.js.map +1 -1
  40. package/dist/cjs/ic-dialog.cjs.entry.js +38 -47
  41. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  42. package/dist/cjs/ic-divider.cjs.entry.js +2 -2
  43. package/dist/cjs/ic-footer-link-group.cjs.entry.js +2 -2
  44. package/dist/cjs/ic-footer-link.cjs.entry.js +2 -2
  45. package/dist/cjs/ic-footer.cjs.entry.js +2 -2
  46. package/dist/cjs/ic-hero.cjs.entry.js +2 -2
  47. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +2 -2
  48. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +3 -3
  49. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  50. package/dist/cjs/ic-input-label_2.cjs.entry.js +2 -2
  51. package/dist/cjs/ic-link.cjs.entry.js +2 -2
  52. package/dist/cjs/ic-menu-group.cjs.entry.js +2 -2
  53. package/dist/cjs/ic-menu-item.cjs.entry.js +3 -3
  54. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  55. package/dist/cjs/ic-navigation-button.cjs.entry.js +2 -2
  56. package/dist/cjs/ic-navigation-group.cjs.entry.js +23 -17
  57. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  58. package/dist/cjs/ic-navigation-item.cjs.entry.js +2 -2
  59. package/dist/cjs/ic-navigation-menu.cjs.entry.js +38 -24
  60. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  61. package/dist/cjs/ic-page-header.cjs.entry.js +12 -11
  62. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  63. package/dist/cjs/ic-pagination_4.cjs.entry.js +53 -32
  64. package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
  65. package/dist/cjs/ic-popover-menu.cjs.entry.js +7 -6
  66. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  67. package/dist/cjs/ic-radio-group.cjs.entry.js +7 -7
  68. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  69. package/dist/cjs/ic-radio-option.cjs.entry.js +2 -2
  70. package/dist/cjs/ic-search-bar.cjs.entry.js +3 -3
  71. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  72. package/dist/cjs/ic-section-container.cjs.entry.js +3 -3
  73. package/dist/cjs/ic-section-container.cjs.entry.js.map +1 -1
  74. package/dist/cjs/ic-side-navigation.cjs.entry.js +10 -7
  75. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  76. package/dist/cjs/ic-skeleton.cjs.entry.js +3 -3
  77. package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
  78. package/dist/cjs/ic-skip-link.cjs.entry.js +11 -10
  79. package/dist/cjs/ic-skip-link.cjs.entry.js.map +1 -1
  80. package/dist/cjs/ic-status-tag.cjs.entry.js +5 -5
  81. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  82. package/dist/cjs/ic-step.cjs.entry.js +17 -16
  83. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  84. package/dist/cjs/ic-stepper.cjs.entry.js +4 -4
  85. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  86. package/dist/cjs/ic-switch.cjs.entry.js +6 -6
  87. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  88. package/dist/cjs/ic-tab-context.cjs.entry.js +2 -2
  89. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  90. package/dist/cjs/ic-tab-group.cjs.entry.js +4 -4
  91. package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
  92. package/dist/cjs/ic-tab-panel.cjs.entry.js +3 -3
  93. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  94. package/dist/cjs/ic-tab.cjs.entry.js +3 -3
  95. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  96. package/dist/cjs/ic-theme.cjs.entry.js +3 -3
  97. package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
  98. package/dist/cjs/ic-toast-region.cjs.entry.js +2 -2
  99. package/dist/cjs/ic-toast-region.cjs.entry.js.map +1 -1
  100. package/dist/cjs/ic-toast.cjs.entry.js +6 -6
  101. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  102. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +4 -4
  103. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  104. package/dist/cjs/ic-toggle-button.cjs.entry.js +5 -5
  105. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  106. package/dist/cjs/ic-top-navigation.cjs.entry.js +5 -9
  107. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  108. package/dist/cjs/ic-tree-item.cjs.entry.js +56 -42
  109. package/dist/cjs/ic-tree-item.cjs.entry.js.map +1 -1
  110. package/dist/cjs/ic-tree-view.cjs.entry.js +127 -22
  111. package/dist/cjs/ic-tree-view.cjs.entry.js.map +1 -1
  112. package/dist/cjs/ic-typography.cjs.entry.js +2 -2
  113. package/dist/cjs/{index-8a24b20c.js → index-d337cd8a.js} +6 -11
  114. package/dist/cjs/index-d337cd8a.js.map +1 -0
  115. package/dist/cjs/loader.cjs.js +2 -2
  116. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.css +1 -1
  117. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js +27 -23
  118. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js.map +1 -1
  119. package/dist/collection/components/ic-data-table/ic-data-table.css +19 -2
  120. package/dist/collection/components/ic-data-table/ic-data-table.js +385 -330
  121. package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
  122. package/dist/collection/components/ic-data-table/ic-data-table.stories.js +8 -9
  123. package/dist/collection/components/ic-data-table/ic-data-table.stories.js.map +1 -1
  124. package/dist/collection/components/ic-data-table/story-data.js +13 -14
  125. package/dist/collection/components/ic-data-table/story-data.js.map +1 -1
  126. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.js +9 -9
  127. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.js.map +1 -1
  128. package/dist/collection/components/ic-date-input/ic-date-input.js +240 -198
  129. package/dist/collection/components/ic-date-input/ic-date-input.js.map +1 -1
  130. package/dist/collection/components/ic-date-input/ic-date-input.stories.js +19 -1
  131. package/dist/collection/components/ic-date-input/ic-date-input.stories.js.map +1 -1
  132. package/dist/collection/components/ic-date-input/test/helpers/ic-date-input.js +6 -3
  133. package/dist/collection/components/ic-date-input/test/helpers/ic-date-input.js.map +1 -1
  134. package/dist/collection/components/ic-date-picker/ic-date-picker.js +133 -91
  135. package/dist/collection/components/ic-date-picker/ic-date-picker.js.map +1 -1
  136. package/dist/collection/components/ic-date-picker/ic-date-picker.stories.js +9 -1
  137. package/dist/collection/components/ic-date-picker/ic-date-picker.stories.js.map +1 -1
  138. package/dist/collection/components/ic-date-picker/ic-day-button.js +1 -1
  139. package/dist/collection/components/ic-date-picker/ic-day-button.js.map +1 -1
  140. package/dist/collection/components/ic-date-picker/ic-month-picker.js.map +1 -1
  141. package/dist/collection/components/ic-date-picker/ic-year-picker.js.map +1 -1
  142. package/dist/collection/components/ic-date-picker/story-data.js +16 -1
  143. package/dist/collection/components/ic-date-picker/story-data.js.map +1 -1
  144. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +41 -38
  145. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
  146. package/dist/collection/components/ic-tree-item/ic-tree-item.js +86 -50
  147. package/dist/collection/components/ic-tree-item/ic-tree-item.js.map +1 -1
  148. package/dist/collection/components/ic-tree-view/ic-tree-view.js +165 -31
  149. package/dist/collection/components/ic-tree-view/ic-tree-view.js.map +1 -1
  150. package/dist/collection/components/ic-tree-view/ic-tree-view.stories.js +384 -12
  151. package/dist/collection/components/ic-tree-view/ic-tree-view.stories.js.map +1 -1
  152. package/dist/collection/components/ic-tree-view/ic-tree-view.types.js +2 -0
  153. package/dist/collection/components/ic-tree-view/ic-tree-view.types.js.map +1 -0
  154. package/dist/collection/utils/date-helpers.js +19 -61
  155. package/dist/collection/utils/date-helpers.js.map +1 -1
  156. package/dist/collection/utils/helpers.js +44 -61
  157. package/dist/collection/utils/helpers.js.map +1 -1
  158. package/dist/collection/utils/testa11y.helpers.js +2 -1
  159. package/dist/collection/utils/testa11y.helpers.js.map +1 -1
  160. package/dist/components/helpers.js +1 -1
  161. package/dist/components/helpers2.js +32 -16
  162. package/dist/components/helpers2.js.map +1 -1
  163. package/dist/components/ic-badge.js +1 -1
  164. package/dist/components/ic-badge.js.map +1 -1
  165. package/dist/components/ic-button2.js +59 -1
  166. package/dist/components/ic-button2.js.map +1 -1
  167. package/dist/components/ic-card-horizontal.js +14 -10
  168. package/dist/components/ic-card-horizontal.js.map +1 -1
  169. package/dist/components/ic-card-vertical.js +1 -1
  170. package/dist/components/ic-card-vertical.js.map +1 -1
  171. package/dist/components/ic-checkbox-group.js +5 -5
  172. package/dist/components/ic-checkbox-group.js.map +1 -1
  173. package/dist/components/ic-checkbox.js +1 -175
  174. package/dist/components/ic-checkbox.js.map +1 -1
  175. package/dist/{esm/ic-checkbox.entry.js → components/ic-checkbox2.js} +53 -11
  176. package/dist/components/ic-checkbox2.js.map +1 -0
  177. package/dist/components/ic-chip.js +1 -1
  178. package/dist/components/ic-chip.js.map +1 -1
  179. package/dist/components/ic-classification-banner.js +2 -2
  180. package/dist/components/ic-classification-banner.js.map +1 -1
  181. package/dist/components/ic-data-table-title-bar.js +5 -5
  182. package/dist/components/ic-data-table-title-bar.js.map +1 -1
  183. package/dist/components/ic-data-table.js +319 -279
  184. package/dist/components/ic-data-table.js.map +1 -1
  185. package/dist/components/ic-date-input2.js +198 -225
  186. package/dist/components/ic-date-input2.js.map +1 -1
  187. package/dist/components/ic-date-picker.js +90 -67
  188. package/dist/components/ic-date-picker.js.map +1 -1
  189. package/dist/components/ic-dialog.js +38 -47
  190. package/dist/components/ic-dialog.js.map +1 -1
  191. package/dist/components/ic-input-component-container2.js +1 -1
  192. package/dist/components/ic-input-component-container2.js.map +1 -1
  193. package/dist/components/ic-menu-item2.js +1 -1
  194. package/dist/components/ic-menu-item2.js.map +1 -1
  195. package/dist/components/ic-navigation-group.js +22 -15
  196. package/dist/components/ic-navigation-group.js.map +1 -1
  197. package/dist/components/ic-navigation-menu2.js +37 -23
  198. package/dist/components/ic-navigation-menu2.js.map +1 -1
  199. package/dist/components/ic-page-header.js +10 -9
  200. package/dist/components/ic-page-header.js.map +1 -1
  201. package/dist/components/ic-pagination-bar2.js +22 -20
  202. package/dist/components/ic-pagination-bar2.js.map +1 -1
  203. package/dist/components/ic-pagination-item2.js +2 -2
  204. package/dist/components/ic-pagination-item2.js.map +1 -1
  205. package/dist/components/ic-pagination2.js +5 -5
  206. package/dist/components/ic-pagination2.js.map +1 -1
  207. package/dist/components/ic-popover-menu.js +5 -4
  208. package/dist/components/ic-popover-menu.js.map +1 -1
  209. package/dist/components/ic-radio-group.js +5 -5
  210. package/dist/components/ic-radio-group.js.map +1 -1
  211. package/dist/components/ic-search-bar.js +1 -1
  212. package/dist/components/ic-search-bar.js.map +1 -1
  213. package/dist/components/ic-section-container2.js +2 -2
  214. package/dist/components/ic-section-container2.js.map +1 -1
  215. package/dist/components/ic-select2.js +13 -10
  216. package/dist/components/ic-select2.js.map +1 -1
  217. package/dist/components/ic-side-navigation.js +8 -5
  218. package/dist/components/ic-side-navigation.js.map +1 -1
  219. package/dist/components/ic-skeleton.js +2 -2
  220. package/dist/components/ic-skeleton.js.map +1 -1
  221. package/dist/components/ic-skip-link.js +10 -9
  222. package/dist/components/ic-skip-link.js.map +1 -1
  223. package/dist/components/ic-status-tag.js +3 -3
  224. package/dist/components/ic-status-tag.js.map +1 -1
  225. package/dist/components/ic-step.js +15 -14
  226. package/dist/components/ic-step.js.map +1 -1
  227. package/dist/components/ic-stepper.js +2 -2
  228. package/dist/components/ic-stepper.js.map +1 -1
  229. package/dist/components/ic-switch.js +4 -4
  230. package/dist/components/ic-switch.js.map +1 -1
  231. package/dist/components/ic-tab-context.js +1 -1
  232. package/dist/components/ic-tab-context.js.map +1 -1
  233. package/dist/components/ic-tab-group.js +2 -2
  234. package/dist/components/ic-tab-group.js.map +1 -1
  235. package/dist/components/ic-tab-panel.js +2 -2
  236. package/dist/components/ic-tab-panel.js.map +1 -1
  237. package/dist/components/ic-tab.js +1 -1
  238. package/dist/components/ic-tab.js.map +1 -1
  239. package/dist/components/ic-text-field2.js +35 -13
  240. package/dist/components/ic-text-field2.js.map +1 -1
  241. package/dist/components/ic-theme.js +1 -1
  242. package/dist/components/ic-theme.js.map +1 -1
  243. package/dist/components/ic-toast-region.js +1 -1
  244. package/dist/components/ic-toast-region.js.map +1 -1
  245. package/dist/components/ic-toast.js +5 -5
  246. package/dist/components/ic-toast.js.map +1 -1
  247. package/dist/components/ic-toggle-button-group.js +2 -2
  248. package/dist/components/ic-toggle-button-group.js.map +1 -1
  249. package/dist/components/ic-toggle-button.js +3 -3
  250. package/dist/components/ic-toggle-button.js.map +1 -1
  251. package/dist/components/ic-top-navigation.js +4 -8
  252. package/dist/components/ic-top-navigation.js.map +1 -1
  253. package/dist/components/ic-tree-item.js +55 -40
  254. package/dist/components/ic-tree-item.js.map +1 -1
  255. package/dist/components/ic-tree-view.js +132 -23
  256. package/dist/components/ic-tree-view.js.map +1 -1
  257. package/dist/core/core.css +353 -245
  258. package/dist/core/core.esm.js +1 -1
  259. package/dist/core/core.esm.js.map +1 -1
  260. package/dist/core/{p-8d73a3cc.entry.js → p-0616dfbe.entry.js} +2 -2
  261. package/dist/core/p-0616dfbe.entry.js.map +1 -0
  262. package/dist/core/{p-b17e7059.entry.js → p-06bf2cea.entry.js} +2 -2
  263. package/dist/core/{p-b17e7059.entry.js.map → p-06bf2cea.entry.js.map} +1 -1
  264. package/dist/core/{p-f2f7299b.entry.js → p-071f4748.entry.js} +2 -2
  265. package/dist/core/{p-f2f7299b.entry.js.map → p-071f4748.entry.js.map} +1 -1
  266. package/dist/core/p-09e8b002.entry.js +2 -0
  267. package/dist/core/p-09e8b002.entry.js.map +1 -0
  268. package/dist/core/{p-b18a5861.entry.js → p-110486f0.entry.js} +2 -2
  269. package/dist/core/{p-b18a5861.entry.js.map → p-110486f0.entry.js.map} +1 -1
  270. package/dist/core/p-19ecd2a6.entry.js +2 -0
  271. package/dist/core/p-19ecd2a6.entry.js.map +1 -0
  272. package/dist/core/p-1a2b4803.entry.js +2 -0
  273. package/dist/core/p-1a2b4803.entry.js.map +1 -0
  274. package/dist/core/{p-32720276.entry.js → p-1bbae4b3.entry.js} +2 -2
  275. package/dist/core/{p-0fd762bf.entry.js → p-1f415138.entry.js} +2 -2
  276. package/dist/core/p-1f415138.entry.js.map +1 -0
  277. package/dist/core/{p-b8aa37f9.entry.js → p-20bd48cf.entry.js} +2 -2
  278. package/dist/core/{p-be5ad372.entry.js → p-21193099.entry.js} +2 -2
  279. package/dist/core/p-264335c5.entry.js +2 -0
  280. package/dist/core/p-264335c5.entry.js.map +1 -0
  281. package/dist/core/{p-a214a9f8.entry.js → p-30a5b319.entry.js} +2 -2
  282. package/dist/core/{p-a214a9f8.entry.js.map → p-30a5b319.entry.js.map} +1 -1
  283. package/dist/core/{p-9f4fa820.entry.js → p-3244a174.entry.js} +2 -2
  284. package/dist/core/{p-9f4fa820.entry.js.map → p-3244a174.entry.js.map} +1 -1
  285. package/dist/core/{p-5dc25d11.entry.js → p-37df68fe.entry.js} +2 -2
  286. package/dist/core/{p-5dc25d11.entry.js.map → p-37df68fe.entry.js.map} +1 -1
  287. package/dist/core/{p-3e9564b5.entry.js → p-39269b62.entry.js} +2 -2
  288. package/dist/core/p-3955fa94.entry.js +2 -0
  289. package/dist/core/p-3955fa94.entry.js.map +1 -0
  290. package/dist/core/p-3f185257.entry.js +2 -0
  291. package/dist/core/p-3f185257.entry.js.map +1 -0
  292. package/dist/core/p-401f0043.entry.js +2 -0
  293. package/dist/core/{p-144b1dee.entry.js.map → p-401f0043.entry.js.map} +1 -1
  294. package/dist/core/{p-da798f58.entry.js → p-44ac8f8a.entry.js} +2 -2
  295. package/dist/core/{p-afc4ce53.entry.js → p-4d39cab8.entry.js} +2 -2
  296. package/dist/core/{p-fd006a9b.entry.js → p-4e187a11.entry.js} +2 -2
  297. package/dist/core/{p-d154b26c.entry.js → p-50324682.entry.js} +2 -2
  298. package/dist/core/{p-cd9e1ffa.entry.js → p-50f4d151.entry.js} +2 -2
  299. package/dist/core/{p-cd9e1ffa.entry.js.map → p-50f4d151.entry.js.map} +1 -1
  300. package/dist/core/{p-22e0ed96.entry.js → p-5796b6cd.entry.js} +2 -2
  301. package/dist/core/{p-96551ddf.entry.js → p-57c80527.entry.js} +2 -2
  302. package/dist/core/p-59aed40c.entry.js +2 -0
  303. package/dist/core/p-59aed40c.entry.js.map +1 -0
  304. package/dist/core/{p-b6db0cc1.entry.js → p-60d15d35.entry.js} +2 -2
  305. package/dist/core/p-65d3a515.entry.js +2 -0
  306. package/dist/core/p-65d3a515.entry.js.map +1 -0
  307. package/dist/core/{p-272352cb.entry.js → p-6aa1e928.entry.js} +2 -2
  308. package/dist/core/p-6e0f93c5.entry.js +2 -0
  309. package/dist/core/p-6e0f93c5.entry.js.map +1 -0
  310. package/dist/core/p-6f6d793f.entry.js +2 -0
  311. package/dist/core/p-6f6d793f.entry.js.map +1 -0
  312. package/dist/core/{p-507ec499.entry.js → p-701696aa.entry.js} +2 -2
  313. package/dist/core/{p-507ec499.entry.js.map → p-701696aa.entry.js.map} +1 -1
  314. package/dist/core/{p-1334a78f.entry.js → p-73e41eac.entry.js} +2 -2
  315. package/dist/core/p-7bbd9fcb.entry.js +2 -0
  316. package/dist/core/p-7bbd9fcb.entry.js.map +1 -0
  317. package/dist/core/p-7d054704.js +2 -0
  318. package/dist/core/p-7d054704.js.map +1 -0
  319. package/dist/core/{p-08fd225f.entry.js → p-857c46c0.entry.js} +2 -2
  320. package/dist/core/p-858dd362.entry.js +2 -0
  321. package/dist/core/p-858dd362.entry.js.map +1 -0
  322. package/dist/core/{p-0e3cb8d0.entry.js → p-8856dff4.entry.js} +2 -2
  323. package/dist/core/p-8c5a23b4.entry.js +2 -0
  324. package/dist/core/p-8c5a23b4.entry.js.map +1 -0
  325. package/dist/core/{p-00135a74.js → p-8e4e97b4.js} +3 -3
  326. package/dist/core/p-8e4e97b4.js.map +1 -0
  327. package/dist/core/p-91dc6ad3.entry.js +2 -0
  328. package/dist/core/p-91dc6ad3.entry.js.map +1 -0
  329. package/dist/core/{p-0c3bd9e6.entry.js → p-94427b50.entry.js} +2 -2
  330. package/dist/core/{p-e13b43b1.entry.js → p-9cf7494c.entry.js} +2 -2
  331. package/dist/core/{p-0848efa2.entry.js → p-a2671eb0.entry.js} +2 -2
  332. package/dist/core/p-a2fcea60.entry.js +2 -0
  333. package/dist/core/p-a2fcea60.entry.js.map +1 -0
  334. package/dist/core/p-a5ee9c8d.entry.js +2 -0
  335. package/dist/core/p-a5ee9c8d.entry.js.map +1 -0
  336. package/dist/core/{p-a4582939.entry.js → p-a88369e1.entry.js} +2 -2
  337. package/dist/core/p-a88369e1.entry.js.map +1 -0
  338. package/dist/core/{p-a30d165d.entry.js → p-af405fc0.entry.js} +2 -2
  339. package/dist/core/p-af405fc0.entry.js.map +1 -0
  340. package/dist/core/p-b953b22f.entry.js +2 -0
  341. package/dist/core/p-b953b22f.entry.js.map +1 -0
  342. package/dist/core/p-bb9142fe.entry.js +2 -0
  343. package/dist/core/{p-67f3bf1a.entry.js.map → p-bb9142fe.entry.js.map} +1 -1
  344. package/dist/core/{p-60a0c711.entry.js → p-bfdefe7a.entry.js} +2 -2
  345. package/dist/core/{p-60a0c711.entry.js.map → p-bfdefe7a.entry.js.map} +1 -1
  346. package/dist/core/p-c4baa405.entry.js +2 -0
  347. package/dist/core/p-c4baa405.entry.js.map +1 -0
  348. package/dist/core/p-c86ca475.js +2 -0
  349. package/dist/core/p-c86ca475.js.map +1 -0
  350. package/dist/core/p-cda2a461.entry.js +2 -0
  351. package/dist/core/p-cda2a461.entry.js.map +1 -0
  352. package/dist/core/{p-f6013934.entry.js → p-ce83c802.entry.js} +2 -2
  353. package/dist/core/p-ce83c802.entry.js.map +1 -0
  354. package/dist/core/p-cea17764.entry.js +2 -0
  355. package/dist/core/{p-4e5934f3.entry.js.map → p-cea17764.entry.js.map} +1 -1
  356. package/dist/core/{p-f541034c.entry.js → p-d0768256.entry.js} +2 -2
  357. package/dist/core/p-d2d6f1eb.entry.js +2 -0
  358. package/dist/core/p-d2d6f1eb.entry.js.map +1 -0
  359. package/dist/core/{p-c6f1e205.entry.js → p-d4628704.entry.js} +2 -2
  360. package/dist/core/p-d4628704.entry.js.map +1 -0
  361. package/dist/core/{p-0f6b9686.js → p-e246d84b.js} +2 -2
  362. package/dist/core/p-e4fa4ee5.entry.js +2 -0
  363. package/dist/core/p-e4fa4ee5.entry.js.map +1 -0
  364. package/dist/core/{p-3d1ba098.entry.js → p-e6779171.entry.js} +2 -2
  365. package/dist/core/{p-fd42f129.entry.js → p-e8bb1522.entry.js} +2 -2
  366. package/dist/core/p-e8bb1522.entry.js.map +1 -0
  367. package/dist/core/{p-4da17eda.entry.js → p-f42ca69f.entry.js} +2 -2
  368. package/dist/core/{p-3dc4e128.entry.js → p-f5e9c8c8.entry.js} +2 -2
  369. package/dist/core/p-f5e9c8c8.entry.js.map +1 -0
  370. package/dist/core/{p-0e119312.entry.js → p-fa02a267.entry.js} +2 -2
  371. package/dist/core/{p-0e119312.entry.js.map → p-fa02a267.entry.js.map} +1 -1
  372. package/dist/esm/core.js +3 -3
  373. package/dist/esm/{date-helpers-0e5e32a7.js → date-helpers-3b8c39ab.js} +20 -66
  374. package/dist/esm/date-helpers-3b8c39ab.js.map +1 -0
  375. package/dist/esm/{helpers-bbab69a2.js → helpers-bf471ace.js} +3 -3
  376. package/dist/esm/{helpers-bbab69a2.js.map → helpers-bf471ace.js.map} +1 -1
  377. package/dist/esm/{helpers-4e38ba2b.js → helpers-ddc2008a.js} +34 -18
  378. package/dist/esm/helpers-ddc2008a.js.map +1 -0
  379. package/dist/esm/ic-accordion-group.entry.js +2 -2
  380. package/dist/esm/ic-accordion.entry.js +2 -2
  381. package/dist/esm/ic-alert.entry.js +2 -2
  382. package/dist/esm/ic-back-to-top.entry.js +2 -2
  383. package/dist/esm/ic-badge.entry.js +3 -3
  384. package/dist/esm/ic-badge.entry.js.map +1 -1
  385. package/dist/esm/ic-breadcrumb-group.entry.js +2 -2
  386. package/dist/esm/ic-breadcrumb.entry.js +2 -2
  387. package/dist/esm/ic-button_3.entry.js +61 -3
  388. package/dist/esm/ic-button_3.entry.js.map +1 -1
  389. package/dist/esm/ic-card-horizontal.entry.js +16 -12
  390. package/dist/esm/ic-card-horizontal.entry.js.map +1 -1
  391. package/dist/esm/ic-card-vertical.entry.js +3 -3
  392. package/dist/esm/ic-card-vertical.entry.js.map +1 -1
  393. package/dist/esm/ic-checkbox-group.entry.js +7 -7
  394. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  395. package/dist/esm/{ic-empty-state_2.entry.js → ic-checkbox_3.entry.js} +158 -25
  396. package/dist/esm/ic-checkbox_3.entry.js.map +1 -0
  397. package/dist/esm/ic-chip.entry.js +3 -3
  398. package/dist/esm/ic-chip.entry.js.map +1 -1
  399. package/dist/esm/ic-classification-banner.entry.js +3 -3
  400. package/dist/esm/ic-classification-banner.entry.js.map +1 -1
  401. package/dist/esm/ic-data-list.entry.js +1 -1
  402. package/dist/esm/ic-data-row.entry.js +2 -2
  403. package/dist/esm/ic-data-table-title-bar.entry.js +7 -7
  404. package/dist/esm/ic-data-table-title-bar.entry.js.map +1 -1
  405. package/dist/esm/ic-data-table.entry.js +310 -276
  406. package/dist/esm/ic-data-table.entry.js.map +1 -1
  407. package/dist/esm/ic-date-input.entry.js +175 -160
  408. package/dist/esm/ic-date-input.entry.js.map +1 -1
  409. package/dist/esm/ic-date-picker.entry.js +92 -70
  410. package/dist/esm/ic-date-picker.entry.js.map +1 -1
  411. package/dist/esm/ic-dialog.entry.js +38 -47
  412. package/dist/esm/ic-dialog.entry.js.map +1 -1
  413. package/dist/esm/ic-divider.entry.js +2 -2
  414. package/dist/esm/ic-footer-link-group.entry.js +2 -2
  415. package/dist/esm/ic-footer-link.entry.js +2 -2
  416. package/dist/esm/ic-footer.entry.js +2 -2
  417. package/dist/esm/ic-hero.entry.js +2 -2
  418. package/dist/esm/ic-horizontal-scroll.entry.js +2 -2
  419. package/dist/esm/ic-input-component-container_3.entry.js +3 -3
  420. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  421. package/dist/esm/ic-input-label_2.entry.js +2 -2
  422. package/dist/esm/ic-link.entry.js +2 -2
  423. package/dist/esm/ic-menu-group.entry.js +2 -2
  424. package/dist/esm/ic-menu-item.entry.js +3 -3
  425. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  426. package/dist/esm/ic-navigation-button.entry.js +2 -2
  427. package/dist/esm/ic-navigation-group.entry.js +23 -17
  428. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  429. package/dist/esm/ic-navigation-item.entry.js +2 -2
  430. package/dist/esm/ic-navigation-menu.entry.js +38 -24
  431. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  432. package/dist/esm/ic-page-header.entry.js +12 -11
  433. package/dist/esm/ic-page-header.entry.js.map +1 -1
  434. package/dist/esm/ic-pagination_4.entry.js +53 -32
  435. package/dist/esm/ic-pagination_4.entry.js.map +1 -1
  436. package/dist/esm/ic-popover-menu.entry.js +7 -6
  437. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  438. package/dist/esm/ic-radio-group.entry.js +7 -7
  439. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  440. package/dist/esm/ic-radio-option.entry.js +2 -2
  441. package/dist/esm/ic-search-bar.entry.js +3 -3
  442. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  443. package/dist/esm/ic-section-container.entry.js +3 -3
  444. package/dist/esm/ic-section-container.entry.js.map +1 -1
  445. package/dist/esm/ic-side-navigation.entry.js +10 -7
  446. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  447. package/dist/esm/ic-skeleton.entry.js +3 -3
  448. package/dist/esm/ic-skeleton.entry.js.map +1 -1
  449. package/dist/esm/ic-skip-link.entry.js +11 -10
  450. package/dist/esm/ic-skip-link.entry.js.map +1 -1
  451. package/dist/esm/ic-status-tag.entry.js +5 -5
  452. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  453. package/dist/esm/ic-step.entry.js +17 -16
  454. package/dist/esm/ic-step.entry.js.map +1 -1
  455. package/dist/esm/ic-stepper.entry.js +4 -4
  456. package/dist/esm/ic-stepper.entry.js.map +1 -1
  457. package/dist/esm/ic-switch.entry.js +6 -6
  458. package/dist/esm/ic-switch.entry.js.map +1 -1
  459. package/dist/esm/ic-tab-context.entry.js +2 -2
  460. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  461. package/dist/esm/ic-tab-group.entry.js +4 -4
  462. package/dist/esm/ic-tab-group.entry.js.map +1 -1
  463. package/dist/esm/ic-tab-panel.entry.js +3 -3
  464. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  465. package/dist/esm/ic-tab.entry.js +3 -3
  466. package/dist/esm/ic-tab.entry.js.map +1 -1
  467. package/dist/esm/ic-theme.entry.js +3 -3
  468. package/dist/esm/ic-theme.entry.js.map +1 -1
  469. package/dist/esm/ic-toast-region.entry.js +2 -2
  470. package/dist/esm/ic-toast-region.entry.js.map +1 -1
  471. package/dist/esm/ic-toast.entry.js +6 -6
  472. package/dist/esm/ic-toast.entry.js.map +1 -1
  473. package/dist/esm/ic-toggle-button-group.entry.js +4 -4
  474. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  475. package/dist/esm/ic-toggle-button.entry.js +5 -5
  476. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  477. package/dist/esm/ic-top-navigation.entry.js +5 -9
  478. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  479. package/dist/esm/ic-tree-item.entry.js +56 -42
  480. package/dist/esm/ic-tree-item.entry.js.map +1 -1
  481. package/dist/esm/ic-tree-view.entry.js +127 -22
  482. package/dist/esm/ic-tree-view.entry.js.map +1 -1
  483. package/dist/esm/ic-typography.entry.js +2 -2
  484. package/dist/esm/{index-163fe708.js → index-a7a720e7.js} +6 -11
  485. package/dist/esm/index-a7a720e7.js.map +1 -0
  486. package/dist/esm/loader.js +3 -3
  487. package/dist/types/components/ic-card-horizontal/ic-card-horizontal.d.ts +3 -3
  488. package/dist/types/components/ic-data-table/ic-data-table.d.ts +30 -20
  489. package/dist/types/components/ic-data-table/ic-data-table.stories.d.ts +3 -9
  490. package/dist/types/components/ic-data-table/story-data.d.ts +15 -4
  491. package/dist/types/components/ic-date-input/ic-date-input.d.ts +46 -29
  492. package/dist/types/components/ic-date-input/ic-date-input.stories.d.ts +6 -0
  493. package/dist/types/components/ic-date-picker/ic-date-picker.d.ts +18 -12
  494. package/dist/types/components/ic-date-picker/ic-date-picker.stories.d.ts +8 -0
  495. package/dist/types/components/ic-date-picker/ic-day-button.d.ts +2 -2
  496. package/dist/types/components/ic-date-picker/ic-month-picker.d.ts +3 -3
  497. package/dist/types/components/ic-date-picker/ic-year-picker.d.ts +3 -3
  498. package/dist/types/components/ic-date-picker/story-data.d.ts +1 -0
  499. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.d.ts +2 -2
  500. package/dist/types/components/ic-tree-item/ic-tree-item.d.ts +8 -2
  501. package/dist/types/components/ic-tree-view/ic-tree-view.d.ts +21 -4
  502. package/dist/types/components/ic-tree-view/ic-tree-view.stories.d.ts +91 -13
  503. package/dist/types/components/ic-tree-view/ic-tree-view.types.d.ts +12 -0
  504. package/dist/types/components.d.ts +129 -73
  505. package/dist/types/utils/date-helpers.d.ts +4 -4
  506. package/dist/types/utils/helpers.d.ts +8 -17
  507. package/hydrate/index.js +1223 -955
  508. package/hydrate/index.mjs +1223 -955
  509. package/package.json +3 -3
  510. package/dist/cjs/date-helpers-c9551119.js.map +0 -1
  511. package/dist/cjs/helpers-0e4c4fdd.js.map +0 -1
  512. package/dist/cjs/ic-checkbox.cjs.entry.js +0 -141
  513. package/dist/cjs/ic-checkbox.cjs.entry.js.map +0 -1
  514. package/dist/cjs/ic-empty-state_2.cjs.entry.js.map +0 -1
  515. package/dist/cjs/index-8a24b20c.js.map +0 -1
  516. package/dist/core/p-00135a74.js.map +0 -1
  517. package/dist/core/p-0efeab8a.entry.js +0 -2
  518. package/dist/core/p-0efeab8a.entry.js.map +0 -1
  519. package/dist/core/p-0fd762bf.entry.js.map +0 -1
  520. package/dist/core/p-144b1dee.entry.js +0 -2
  521. package/dist/core/p-1cf61bf2.entry.js +0 -2
  522. package/dist/core/p-1cf61bf2.entry.js.map +0 -1
  523. package/dist/core/p-33dd24eb.js +0 -2
  524. package/dist/core/p-33dd24eb.js.map +0 -1
  525. package/dist/core/p-3dc4e128.entry.js.map +0 -1
  526. package/dist/core/p-44ffa951.entry.js +0 -2
  527. package/dist/core/p-44ffa951.entry.js.map +0 -1
  528. package/dist/core/p-47962514.entry.js +0 -2
  529. package/dist/core/p-47962514.entry.js.map +0 -1
  530. package/dist/core/p-4e5934f3.entry.js +0 -2
  531. package/dist/core/p-5329e478.entry.js +0 -2
  532. package/dist/core/p-5329e478.entry.js.map +0 -1
  533. package/dist/core/p-5b2a7c1a.entry.js +0 -2
  534. package/dist/core/p-5b2a7c1a.entry.js.map +0 -1
  535. package/dist/core/p-67f3bf1a.entry.js +0 -2
  536. package/dist/core/p-6eaf585a.entry.js +0 -2
  537. package/dist/core/p-6eaf585a.entry.js.map +0 -1
  538. package/dist/core/p-8c4f212a.entry.js +0 -2
  539. package/dist/core/p-8c4f212a.entry.js.map +0 -1
  540. package/dist/core/p-8d73a3cc.entry.js.map +0 -1
  541. package/dist/core/p-9265efef.entry.js +0 -2
  542. package/dist/core/p-9265efef.entry.js.map +0 -1
  543. package/dist/core/p-95f2c59a.entry.js +0 -2
  544. package/dist/core/p-95f2c59a.entry.js.map +0 -1
  545. package/dist/core/p-a30d165d.entry.js.map +0 -1
  546. package/dist/core/p-a35cdfc3.entry.js +0 -2
  547. package/dist/core/p-a35cdfc3.entry.js.map +0 -1
  548. package/dist/core/p-a4582939.entry.js.map +0 -1
  549. package/dist/core/p-a7f95a61.entry.js +0 -2
  550. package/dist/core/p-a7f95a61.entry.js.map +0 -1
  551. package/dist/core/p-a81c9048.entry.js +0 -2
  552. package/dist/core/p-a81c9048.entry.js.map +0 -1
  553. package/dist/core/p-ac74cdac.entry.js +0 -2
  554. package/dist/core/p-ac74cdac.entry.js.map +0 -1
  555. package/dist/core/p-ad3e543e.entry.js +0 -2
  556. package/dist/core/p-ad3e543e.entry.js.map +0 -1
  557. package/dist/core/p-ae2bae87.entry.js +0 -2
  558. package/dist/core/p-ae2bae87.entry.js.map +0 -1
  559. package/dist/core/p-afde50b8.js +0 -2
  560. package/dist/core/p-afde50b8.js.map +0 -1
  561. package/dist/core/p-b84213d1.entry.js +0 -2
  562. package/dist/core/p-b84213d1.entry.js.map +0 -1
  563. package/dist/core/p-c2aef5cc.entry.js +0 -2
  564. package/dist/core/p-c2aef5cc.entry.js.map +0 -1
  565. package/dist/core/p-c6f1e205.entry.js.map +0 -1
  566. package/dist/core/p-cd59dc16.entry.js +0 -2
  567. package/dist/core/p-cd59dc16.entry.js.map +0 -1
  568. package/dist/core/p-e86c1c95.entry.js +0 -2
  569. package/dist/core/p-e86c1c95.entry.js.map +0 -1
  570. package/dist/core/p-f6013934.entry.js.map +0 -1
  571. package/dist/core/p-fba58c42.entry.js +0 -2
  572. package/dist/core/p-fba58c42.entry.js.map +0 -1
  573. package/dist/core/p-fd42f129.entry.js.map +0 -1
  574. package/dist/core/p-fde3bbb2.entry.js +0 -2
  575. package/dist/core/p-fde3bbb2.entry.js.map +0 -1
  576. package/dist/esm/date-helpers-0e5e32a7.js.map +0 -1
  577. package/dist/esm/helpers-4e38ba2b.js.map +0 -1
  578. package/dist/esm/ic-checkbox.entry.js.map +0 -1
  579. package/dist/esm/ic-empty-state_2.entry.js.map +0 -1
  580. package/dist/esm/index-163fe708.js.map +0 -1
  581. /package/dist/core/{p-32720276.entry.js.map → p-1bbae4b3.entry.js.map} +0 -0
  582. /package/dist/core/{p-b8aa37f9.entry.js.map → p-20bd48cf.entry.js.map} +0 -0
  583. /package/dist/core/{p-be5ad372.entry.js.map → p-21193099.entry.js.map} +0 -0
  584. /package/dist/core/{p-3e9564b5.entry.js.map → p-39269b62.entry.js.map} +0 -0
  585. /package/dist/core/{p-da798f58.entry.js.map → p-44ac8f8a.entry.js.map} +0 -0
  586. /package/dist/core/{p-afc4ce53.entry.js.map → p-4d39cab8.entry.js.map} +0 -0
  587. /package/dist/core/{p-fd006a9b.entry.js.map → p-4e187a11.entry.js.map} +0 -0
  588. /package/dist/core/{p-d154b26c.entry.js.map → p-50324682.entry.js.map} +0 -0
  589. /package/dist/core/{p-22e0ed96.entry.js.map → p-5796b6cd.entry.js.map} +0 -0
  590. /package/dist/core/{p-96551ddf.entry.js.map → p-57c80527.entry.js.map} +0 -0
  591. /package/dist/core/{p-b6db0cc1.entry.js.map → p-60d15d35.entry.js.map} +0 -0
  592. /package/dist/core/{p-272352cb.entry.js.map → p-6aa1e928.entry.js.map} +0 -0
  593. /package/dist/core/{p-1334a78f.entry.js.map → p-73e41eac.entry.js.map} +0 -0
  594. /package/dist/core/{p-08fd225f.entry.js.map → p-857c46c0.entry.js.map} +0 -0
  595. /package/dist/core/{p-0e3cb8d0.entry.js.map → p-8856dff4.entry.js.map} +0 -0
  596. /package/dist/core/{p-0c3bd9e6.entry.js.map → p-94427b50.entry.js.map} +0 -0
  597. /package/dist/core/{p-e13b43b1.entry.js.map → p-9cf7494c.entry.js.map} +0 -0
  598. /package/dist/core/{p-0848efa2.entry.js.map → p-a2671eb0.entry.js.map} +0 -0
  599. /package/dist/core/{p-f541034c.entry.js.map → p-d0768256.entry.js.map} +0 -0
  600. /package/dist/core/{p-0f6b9686.js.map → p-e246d84b.js.map} +0 -0
  601. /package/dist/core/{p-3d1ba098.entry.js.map → p-e6779171.entry.js.map} +0 -0
  602. /package/dist/core/{p-4da17eda.entry.js.map → p-f42ca69f.entry.js.map} +0 -0
@@ -1,6 +1,6 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-163fe708.js';
2
- import { b as isEmptyString, s as stringEnumToArray, t as getInputDescribedByText, r as removeDisabledFalse, u as removeFormResetListener, v as addFormResetListener, o as onComponentRequiredPropUndefined, w as isNumeric, x as IcInformationStatus, y as renderHiddenInput, k as IcDayNames, l as IcDateInputMonths } from './helpers-4e38ba2b.js';
3
- import { b as dateMatches, i as isDateOrEpoch, j as convertToDoubleDigits, s as splitStringDate, h as createDate, k as extractDateFromZuluDateTime } from './date-helpers-0e5e32a7.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-a7a720e7.js';
2
+ import { b as isEmptyString, s as stringEnumToArray, v as getInputDescribedByText, r as removeDisabledFalse, w as removeFormResetListener, x as addFormResetListener, o as onComponentRequiredPropUndefined, y as isNumeric, z as IcInformationStatus, A as renderHiddenInput, k as IcDayNames, l as IcDateInputMonths } from './helpers-ddc2008a.js';
3
+ import { b as dateMatches, i as isDateOrEpoch, j as convertToDoubleDigits, s as splitStringDate, h as createDate, k as extractDateFromZuluDateTime } from './date-helpers-3b8c39ab.js';
4
4
 
5
5
  const Clear = `<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
6
6
  <path d="M15.8327 5.34199L14.6577 4.16699L9.99935 8.82533L5.34102 4.16699L4.16602 5.34199L8.82435 10.0003L4.16602 14.6587L5.34102 15.8337L9.99935 11.1753L14.6577 15.8337L15.8327 14.6587L11.1743 10.0003L15.8327 5.34199Z" fill="currentColor"/>
@@ -22,6 +22,7 @@ const DateInput = class {
22
22
  this.icBlur = createEvent(this, "icBlur", 7);
23
23
  this.icChange = createEvent(this, "icChange", 7);
24
24
  this.icFocus = createEvent(this, "icFocus", 7);
25
+ this.DEFAULT_DATE_FORMAT = "DD/MM/YYYY";
25
26
  this.ARIA_INVALID = "aria-invalid";
26
27
  this.ARIA_LABEL = "aria-label";
27
28
  this.ARIA_LABELLED_BY = "aria-labelledby";
@@ -41,20 +42,24 @@ const DateInput = class {
41
42
  this.KEYBOARD_EVENT_OBJECT_STRING = "[object KeyboardEvent]";
42
43
  this.MAX_DAY = 31;
43
44
  this.MAX_MONTH = 12;
44
- this.previousEmittedDate = undefined;
45
45
  this.previousSelectedDate = null;
46
46
  this.selectedDate = null;
47
- this.day = "";
48
- this.month = "";
49
- this.year = "";
47
+ this.externalSetDate = false;
48
+ this.clearInput = false;
50
49
  this.calendarFocused = false;
51
50
  this.clearButtonFocused = false;
52
51
  this.removeLabelledBy = false;
52
+ this.day = "";
53
+ this.month = "";
54
+ this.year = "";
53
55
  /**
54
56
  * The format in which the date will be displayed.
55
57
  */
56
- // eslint-disable-next-line sonarjs/no-duplicate-string
57
- this.dateFormat = "DD/MM/YYYY";
58
+ this.dateFormat = this.DEFAULT_DATE_FORMAT;
59
+ /**
60
+ * If `true`, every individual input field completed will emit an icChange event.
61
+ */
62
+ this.emitDatePartChange = false;
58
63
  /**
59
64
  * If `true`, the disabled state will be set.
60
65
  */
@@ -146,9 +151,11 @@ const DateInput = class {
146
151
  */
147
152
  this.validationText = "";
148
153
  this.setInputPasteValue = (input, pastedValue) => {
149
- const inputEl = input;
150
- inputEl.value = pastedValue;
151
- inputEl.classList.add(this.FIT_TO_VALUE);
154
+ if (input) {
155
+ const inputEl = input;
156
+ inputEl.value = pastedValue;
157
+ inputEl.classList.add(this.FIT_TO_VALUE);
158
+ }
152
159
  };
153
160
  this.checkSingleCopiedValueIsValid = (input, pastedValue) => {
154
161
  let isValid = false;
@@ -163,9 +170,6 @@ const DateInput = class {
163
170
  case this.yearInputEl:
164
171
  isValid = true;
165
172
  break;
166
- default:
167
- isValid = false;
168
- break;
169
173
  }
170
174
  return isValid;
171
175
  };
@@ -307,8 +311,10 @@ const DateInput = class {
307
311
  };
308
312
  this.handleBlur = (event) => {
309
313
  const input = event.target;
310
- this.setPasteInvalidText();
311
- this.autocompleteInput(input);
314
+ if (input) {
315
+ this.setPasteInvalidText();
316
+ this.autocompleteInput(input);
317
+ }
312
318
  };
313
319
  this.handleLeftRightArrowKeyPress = (input, key) => {
314
320
  if (key === "arrowright") {
@@ -320,13 +326,15 @@ const DateInput = class {
320
326
  this.setPasteInvalidText();
321
327
  };
322
328
  this.notifyScreenReaderSelectedDate = () => {
323
- const dayNames = stringEnumToArray(IcDayNames);
324
- const months = stringEnumToArray(IcDateInputMonths);
325
- this.selectedDateInfoEl.textContent = `Selected date: ${dayNames[this.selectedDate.getDay()]}, ${this.selectedDate.getDate()} ${months[this.selectedDate.getMonth()]} ${this.selectedDate.getFullYear()}`;
329
+ if (this.selectedDate && this.selectedDateInfoEl) {
330
+ const dayNames = stringEnumToArray(IcDayNames);
331
+ const months = stringEnumToArray(IcDateInputMonths);
332
+ this.selectedDateInfoEl.textContent = `Selected date: ${dayNames[this.selectedDate.getDay()]}, ${this.selectedDate.getDate()} ${months[this.selectedDate.getMonth()]} ${this.selectedDate.getFullYear()}`;
333
+ }
326
334
  };
327
335
  this.handleUpDownArrowKeyPress = (input, event) => {
328
336
  const minValue = input === this.yearInputEl ? 0 : 1;
329
- let maxValue;
337
+ let maxValue = 9999;
330
338
  switch (input) {
331
339
  case this.dayInputEl:
332
340
  maxValue = this.MAX_DAY;
@@ -369,22 +377,18 @@ const DateInput = class {
369
377
  else {
370
378
  if (event.key === "ArrowDown") {
371
379
  event.preventDefault();
372
- if (input === this.yearInputEl) {
373
- input.value = new Date().getFullYear().toString();
374
- }
375
- else {
376
- input.value = maxValue.toString();
377
- }
380
+ input.value =
381
+ input === this.yearInputEl
382
+ ? new Date().getFullYear().toString()
383
+ : maxValue.toString();
378
384
  this.notifyScreenReader(input, event);
379
385
  }
380
386
  else if (event.key === "ArrowUp") {
381
387
  event.preventDefault();
382
- if (input === this.yearInputEl) {
383
- input.value = new Date().getFullYear().toString();
384
- }
385
- else {
386
- input.value = `0${minValue}`;
387
- }
388
+ input.value =
389
+ input === this.yearInputEl
390
+ ? new Date().getFullYear().toString()
391
+ : `0${minValue}`;
388
392
  this.notifyScreenReader(input, event);
389
393
  }
390
394
  }
@@ -404,7 +408,8 @@ const DateInput = class {
404
408
  this.setValueAndEmitChange(this.selectedDate);
405
409
  this.notifyScreenReaderSelectedDate();
406
410
  }
407
- else if (!(this.selectedDate === null && this.previousSelectedDate === null)) {
411
+ else if (!(this.selectedDate === null && this.previousSelectedDate === null) &&
412
+ this.selectedDateInfoEl) {
408
413
  this.setValueAndEmitChange(null);
409
414
  this.selectedDateInfoEl.textContent = "";
410
415
  }
@@ -434,16 +439,20 @@ const DateInput = class {
434
439
  // Set value of each input to value of pasted date part
435
440
  // Allows formats separated by '-' or '/'
436
441
  this.handlePaste = (event) => {
442
+ var _a;
437
443
  event.preventDefault();
438
- const pastedValue = event.clipboardData.getData("Text");
444
+ const pastedValue = ((_a = event.clipboardData) === null || _a === void 0 ? void 0 : _a.getData("Text")) || "";
439
445
  const isValidDate = this.isPastedStringDateValid(pastedValue);
440
446
  this.setPastedValueAndValidation(isValidDate, pastedValue, event);
441
447
  };
442
448
  this.setDate = (date) => {
443
449
  if (date === null || date === "" || date === undefined) {
444
- this.day = null;
445
- this.month = null;
446
- this.year = null;
450
+ if (this.day)
451
+ this.day = "";
452
+ if (this.month)
453
+ this.month = "";
454
+ if (this.year)
455
+ this.year = "";
447
456
  this.inputsInOrder.forEach((input) => {
448
457
  input.classList.remove(this.FIT_TO_VALUE);
449
458
  this.setPreventInput(input, false);
@@ -466,9 +475,11 @@ const DateInput = class {
466
475
  }
467
476
  else if (typeof date === "string") {
468
477
  const defaultDateArray = splitStringDate(date, this.dateFormat);
478
+ this.selectedDate = new Date(Number(defaultDateArray[0]), Number(defaultDateArray[1]) - 1, Number(defaultDateArray[2]));
469
479
  this.year = defaultDateArray[0];
470
480
  this.month = defaultDateArray[1];
471
481
  this.day = defaultDateArray[2];
482
+ this.setValueAndEmitChange(this.selectedDate);
472
483
  }
473
484
  }
474
485
  this.setValidationMessage();
@@ -479,7 +490,7 @@ const DateInput = class {
479
490
  const month = convertToDoubleDigits(date.getMonth() + 1);
480
491
  const year = date.getFullYear();
481
492
  switch (this.dateFormat) {
482
- case "DD/MM/YYYY":
493
+ case this.DEFAULT_DATE_FORMAT:
483
494
  formattedDate = `${day}/${month}/${year}`;
484
495
  break;
485
496
  case "MM/DD/YYYY":
@@ -492,9 +503,11 @@ const DateInput = class {
492
503
  return formattedDate;
493
504
  };
494
505
  this.updateInputValues = (day, month, year) => {
495
- this.dayInputEl.value = day;
496
- this.monthInputEl.value = month;
497
- this.yearInputEl.value = year;
506
+ if (this.dayInputEl && this.monthInputEl && this.yearInputEl) {
507
+ this.dayInputEl.value = day;
508
+ this.monthInputEl.value = month;
509
+ this.yearInputEl.value = year;
510
+ }
498
511
  };
499
512
  // Set value in state based on input
500
513
  this.setInputValue = (input, clear = false) => {
@@ -522,7 +535,9 @@ const DateInput = class {
522
535
  // (used https://www.hectane.com/blog/javascript-date-validation-with-leap-year)
523
536
  this.selectedDate = this.convertToDate(this.year, this.month, this.day);
524
537
  this.isValidDate =
525
- +this.selectedDate !== 0 && this.selectedDate.getDate() == +this.day;
538
+ !!this.selectedDate &&
539
+ +this.selectedDate !== 0 &&
540
+ this.selectedDate.getDate() == +this.day;
526
541
  this.isDisabledDate = this.isSelectedDateDisabled();
527
542
  if (!this.isValidDate || this.isDisabledDate) {
528
543
  this.inputsInOrder.forEach((input) => input.setAttribute(this.ARIA_INVALID, "true"));
@@ -572,13 +587,13 @@ const DateInput = class {
572
587
  };
573
588
  // Set refs to the input elements in the order they are displayed (based on the dateFormat)
574
589
  this.setInputsInOrder = () => {
575
- const inputs = this.el.shadowRoot.querySelectorAll("input");
576
- inputs.forEach((input) => this.inputsInOrder.push(input));
590
+ var _a;
591
+ (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll("input").forEach((input) => this.inputsInOrder.push(input));
577
592
  };
578
593
  // Includes text usually added using aria-describedby
579
594
  // (which doesn't work on input component container)
580
595
  this.setAriaLabelledBy = () => {
581
- var _a, _b;
596
+ var _a, _b, _c;
582
597
  if (this.disabled &&
583
598
  !isEmptyString((_a = this.inputCompContainerEl) === null || _a === void 0 ? void 0 : _a.getAttribute(this.ARIA_LABELLED_BY))) {
584
599
  this.removeAriaLabelledBy();
@@ -587,14 +602,14 @@ const DateInput = class {
587
602
  if (this.disabled) {
588
603
  return;
589
604
  }
590
- const labelEl = this.el.shadowRoot.querySelector("label");
605
+ const labelEl = (_b = this.el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector("label");
591
606
  const labelId = `${this.inputId}-label`;
592
607
  if (labelEl !== null && labelEl !== undefined) {
593
608
  labelEl.id = labelId;
594
609
  }
595
610
  const hasValidation = !isEmptyString(this.validationStatus) ||
596
611
  !isEmptyString(this.invalidDateText);
597
- const labelledBy = `${(_b = labelEl === null || labelEl === void 0 ? void 0 : labelEl.id) !== null && _b !== void 0 ? _b : ""} ${this.screenReaderInfoId} ${getInputDescribedByText(this.inputId, this.helperText !== "" && this.helperText !== this.defaultHelperText, hasValidation)} ${this.selectedDate ? this.selectedDateInfoId : ""} ${this.assistiveHintId}`;
612
+ const labelledBy = `${(_c = labelEl === null || labelEl === void 0 ? void 0 : labelEl.id) !== null && _c !== void 0 ? _c : ""} ${this.screenReaderInfoId} ${getInputDescribedByText(this.inputId, this.helperText !== "" && this.helperText !== this.defaultHelperText, hasValidation)} ${this.selectedDate ? this.selectedDateInfoId : ""} ${this.assistiveHintId}`;
598
613
  this.inputCompContainerEl.setAttribute(this.ARIA_LABELLED_BY, labelledBy);
599
614
  };
600
615
  // Sets boolean for each input, used to limit the number of characters within each field (2 for day / month, 4 for year)
@@ -643,7 +658,7 @@ const DateInput = class {
643
658
  this.getDescOfInputsOrder = () => {
644
659
  let description;
645
660
  switch (this.dateFormat) {
646
- case "DD/MM/YYYY":
661
+ case this.DEFAULT_DATE_FORMAT:
647
662
  description = "day, month, and year";
648
663
  break;
649
664
  case "MM/DD/YYYY":
@@ -675,7 +690,7 @@ const DateInput = class {
675
690
  const input = event.target;
676
691
  let selectedString;
677
692
  if (input) {
678
- selectedString = input.value.substring(input.selectionStart, input.selectionEnd);
693
+ selectedString = input.value.substring(input.selectionStart || 0, input.selectionEnd || undefined);
679
694
  }
680
695
  if (key === "e" ||
681
696
  key === "." ||
@@ -687,81 +702,60 @@ const DateInput = class {
687
702
  event.preventDefault();
688
703
  }
689
704
  };
690
- // Get whether date has been disabled using disableFuture or disablePast prop, but always allow current day
691
- // Consider using dateClamp and inDateRange
705
+ /**
706
+ * Get whether date has been disabled using disableFuture or disablePast prop, but always allow current day
707
+ * Consider using dateClamp and inDateRange
708
+ * @returns `boolean`
709
+ */
692
710
  this.isSelectedDateDisabled = () => {
711
+ if (!this.selectedDate)
712
+ return false;
693
713
  const currentDate = new Date();
694
- this.isAfterMax = false;
695
- this.isBeforeMin = false;
696
- let disabled = false;
697
714
  const isNotToday = this.selectedDate.toDateString() !== currentDate.toDateString();
698
- if (this.minDate && this.selectedDate < this.minDate && isNotToday) {
699
- this.isBeforeMin = true;
700
- disabled = true;
701
- }
702
- if (this.maxDate && this.selectedDate > this.maxDate && isNotToday) {
703
- this.isAfterMax = true;
704
- disabled = true;
705
- }
706
- if (this.disableDays.includes(this.selectedDate.getDay())) {
707
- disabled = true;
708
- }
709
- if (((this.disablePast && this.selectedDate < currentDate) ||
710
- (this.disableFuture && this.selectedDate > currentDate)) &&
711
- isNotToday) {
712
- disabled = true;
713
- }
714
- return disabled;
715
+ this.isAfterMax =
716
+ this.maxDate && this.selectedDate > this.maxDate && isNotToday;
717
+ this.isBeforeMin =
718
+ this.minDate && this.selectedDate < this.minDate && isNotToday;
719
+ return (this.isAfterMax ||
720
+ this.isBeforeMin ||
721
+ this.disableDays.includes(this.selectedDate.getDay()) ||
722
+ (((!!this.disablePast && this.selectedDate < currentDate) ||
723
+ (!!this.disableFuture && this.selectedDate > currentDate)) &&
724
+ isNotToday));
715
725
  };
716
726
  this.moveToNextInput = (currentInput) => {
717
- const currentInputPos = this.inputsInOrder.findIndex((input) => input === currentInput);
718
- const nextInput = this.inputsInOrder[currentInputPos + 1];
727
+ var _a;
719
728
  this.preventAutoFormatting = false;
720
- if (nextInput) {
721
- nextInput.focus();
722
- }
729
+ (_a = this.inputsInOrder[this.inputsInOrder.findIndex((input) => input === currentInput) + 1]) === null || _a === void 0 ? void 0 : _a.focus();
723
730
  };
724
731
  this.moveToPreviousInput = (currentInput) => {
725
- const currentInputPos = this.inputsInOrder.findIndex((input) => input === currentInput);
732
+ var _a;
726
733
  this.preventAutoFormatting = false;
727
- if (this.inputsInOrder[currentInputPos - 1]) {
728
- this.inputsInOrder[currentInputPos - 1].focus();
729
- }
734
+ (_a = this.inputsInOrder[this.inputsInOrder.findIndex((input) => input === currentInput) - 1]) === null || _a === void 0 ? void 0 : _a.focus();
730
735
  };
731
736
  this.autocompleteInput = (input) => {
732
- if (input === this.yearInputEl) {
733
- this.autocompleteYear();
737
+ const inputValue = input.value;
738
+ if (this.yearInputEl && input === this.yearInputEl) {
739
+ // Autocomplete year as current millennium when fewer than 4 characters entered
740
+ const yearNumbers = ["2", "0", "0"];
741
+ let autocompletedInput = "";
742
+ if (inputValue) {
743
+ yearNumbers.forEach((number, index) => {
744
+ if (inputValue.length + index <= 3) {
745
+ autocompletedInput += number;
746
+ }
747
+ });
748
+ this.yearInputEl.value = `${autocompletedInput}${inputValue}`;
749
+ }
734
750
  }
735
- else {
736
- const inputValue = input.value;
751
+ else if (inputValue.length === 1) {
737
752
  // Autocomplete input as 2 characters (leading zero) when only 1 character entered (for day and month)
738
- if (inputValue.length === 1) {
739
- if (+inputValue === 0) {
740
- input.value = "01";
741
- }
742
- else {
743
- input.value = `0${inputValue}`;
744
- }
745
- }
753
+ input.value = +inputValue === 0 ? "01" : `0${inputValue}`;
746
754
  }
747
755
  if (input.value) {
748
756
  this.setInputValue(input);
749
757
  }
750
758
  };
751
- // Autocomplete year as current millennium when fewer than 4 characters entered
752
- this.autocompleteYear = () => {
753
- const inputValue = this.yearInputEl.value;
754
- const yearNumbers = ["2", "0", "0"];
755
- let autocompletedInput = "";
756
- if (inputValue) {
757
- yearNumbers.forEach((number, index) => {
758
- if (inputValue.length + index <= 3) {
759
- autocompletedInput += number;
760
- }
761
- });
762
- this.yearInputEl.value = `${autocompletedInput}${inputValue}`;
763
- }
764
- };
765
759
  this.convertToDate = (year, month, day) => {
766
760
  if (!isEmptyString(year) && !isEmptyString(month) && !isEmptyString(day)) {
767
761
  return new Date(+year, +month - 1, +day);
@@ -775,8 +769,8 @@ const DateInput = class {
775
769
  this.icBlur.emit({ value: this.selectedDate });
776
770
  };
777
771
  this.handleHostFocus = () => {
778
- var _a;
779
- if ((_a = this.el.shadowRoot.activeElement) === null || _a === void 0 ? void 0 : _a.id.match(/(day|month|year)-input$/)) {
772
+ var _a, _b;
773
+ if ((_b = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.activeElement) === null || _b === void 0 ? void 0 : _b.id.match(/(day|month|year)-input$/)) {
780
774
  this.removeLabelledBy = false;
781
775
  }
782
776
  else {
@@ -790,14 +784,13 @@ const DateInput = class {
790
784
  this.setValidationMessage();
791
785
  this.handleDateChange(false);
792
786
  };
793
- this.getAriaLabel = (input) => {
794
- return input.getAttribute(this.ARIA_LABEL);
795
- };
787
+ this.getAriaLabel = (input) => input.getAttribute(this.ARIA_LABEL);
796
788
  this.notifyScreenReaderArrowKeys = (input) => {
797
- const liveRegion = this.el.shadowRoot.querySelector("#live-region");
798
- let announcement = "";
789
+ var _a;
790
+ const liveRegion = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("#live-region");
799
791
  const ariaLabel = this.getAriaLabel(input);
800
- if (liveRegion && input.value) {
792
+ if (liveRegion && input.value && ariaLabel) {
793
+ let announcement = "";
801
794
  if (input === this.monthInputEl &&
802
795
  !!IcDateInputMonths[+input.value - 1]) {
803
796
  announcement = `${input.value} - ${IcDateInputMonths[+input.value - 1]}, ${ariaLabel}`;
@@ -809,32 +802,23 @@ const DateInput = class {
809
802
  }
810
803
  };
811
804
  this.notifyScreenReaderInput = (input, liveRegion) => {
812
- let announcement = "";
813
805
  const ariaLabel = this.getAriaLabel(input);
814
- if (input === this.dayInputEl || input === this.monthInputEl) {
815
- if (input.value.length === 2) {
816
- if (input === this.monthInputEl &&
817
- !!IcDateInputMonths[+input.value - 1] &&
818
- this.isValidMonth) {
819
- announcement = `${input.value} - ${IcDateInputMonths[+input.value - 1]}, ${ariaLabel}`;
820
- }
821
- if (input === this.dayInputEl && this.isValidDay) {
822
- announcement = `${input.value}, ${ariaLabel}`;
823
- }
824
- }
825
- else {
826
- announcement = "";
827
- }
828
- }
829
- else {
830
- if (input.value.length === 4) {
831
- announcement = `${input.value}, ${ariaLabel}`;
806
+ const value = input.value;
807
+ if (ariaLabel && value) {
808
+ let announcement = "";
809
+ const monthValue = IcDateInputMonths[+value - 1];
810
+ if (input === this.monthInputEl &&
811
+ !!monthValue &&
812
+ this.isValidMonth &&
813
+ value.length === 2) {
814
+ announcement = `${value} - ${monthValue}`;
832
815
  }
833
- else {
834
- announcement = "";
816
+ else if ((input === this.dayInputEl && this.isValidDay && value.length === 2) ||
817
+ (input === this.yearInputEl && value.length === 4)) {
818
+ announcement = value;
835
819
  }
820
+ liveRegion.textContent = `${announcement}, ${ariaLabel}`;
836
821
  }
837
- liveRegion.textContent = announcement;
838
822
  };
839
823
  this.setFitToValueStyling = (input) => {
840
824
  if (input.value) {
@@ -845,15 +829,16 @@ const DateInput = class {
845
829
  }
846
830
  };
847
831
  this.setAriaInvalid = (validDay, validMonth, validDate, disabledDate) => {
832
+ var _a, _b;
848
833
  if (this.inputsInOrder.length) {
849
834
  this.inputsInOrder.forEach((input) => {
850
835
  input.removeAttribute(this.ARIA_INVALID);
851
836
  });
852
837
  if (!validDay) {
853
- this.dayInputEl.setAttribute(this.ARIA_INVALID, "true");
838
+ (_a = this.dayInputEl) === null || _a === void 0 ? void 0 : _a.setAttribute(this.ARIA_INVALID, "true");
854
839
  }
855
840
  if (!validMonth) {
856
- this.monthInputEl.setAttribute(this.ARIA_INVALID, "true");
841
+ (_b = this.monthInputEl) === null || _b === void 0 ? void 0 : _b.setAttribute(this.ARIA_INVALID, "true");
857
842
  }
858
843
  if (!validDate || disabledDate) {
859
844
  this.inputsInOrder.forEach((input) => {
@@ -863,26 +848,28 @@ const DateInput = class {
863
848
  }
864
849
  };
865
850
  this.handleClear = () => {
851
+ this.clearInput = true;
866
852
  this.inputsInOrder.forEach((input) => {
867
853
  input.classList.remove(this.FIT_TO_VALUE);
868
854
  this.setInputValue(input, true);
869
855
  this.setPreventInput(input, false);
870
856
  });
857
+ this.clearInput = false;
871
858
  this.isDateSetFromKeyboardEvent = false;
872
859
  this.setValidationMessage();
873
860
  this.handleDateChange(true);
874
861
  this.inputsInOrder[0].focus();
875
862
  };
876
863
  this.handleCalendarOpen = (ev) => {
877
- var _a, _b;
864
+ var _a, _b, _c, _d, _e, _f;
878
865
  ev.stopImmediatePropagation();
879
- (_a = this.calendarButtonEl) === null || _a === void 0 ? void 0 : _a.shadowRoot.querySelector("ic-tooltip").displayTooltip(false);
866
+ (_c = (_b = (_a = this.calendarButtonEl) === null || _a === void 0 ? void 0 : _a.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector("ic-tooltip")) === null || _c === void 0 ? void 0 : _c.displayTooltip(false);
880
867
  this.calendarButtonClicked.emit({ value: this.selectedDate });
881
- (_b = this.calendarButtonEl) === null || _b === void 0 ? void 0 : _b.shadowRoot.querySelector("ic-tooltip").displayTooltip(false);
868
+ (_f = (_e = (_d = this.calendarButtonEl) === null || _d === void 0 ? void 0 : _d.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector("ic-tooltip")) === null || _f === void 0 ? void 0 : _f.displayTooltip(false);
882
869
  this.isDateSetFromKeyboardEvent = false;
883
870
  };
884
871
  this.setValueAndEmitChange = (value) => {
885
- if (!dateMatches(new Date(this.value), value)) {
872
+ if (!dateMatches(this.value ? new Date(this.value) : null, value)) {
886
873
  this.emitIcChange(value);
887
874
  this.value = value;
888
875
  }
@@ -907,13 +894,36 @@ const DateInput = class {
907
894
  this.removeLabelledBy = true;
908
895
  };
909
896
  this.emitIcChange = (d) => {
910
- if (!(d === null && this.previousEmittedDate === null) &&
911
- !dateMatches(d, this.previousEmittedDate)) {
912
- this.previousEmittedDate = d;
913
- this.icChange.emit({ value: d });
897
+ this.selectedDate = d;
898
+ if (!dateMatches(this.selectedDate, d) ||
899
+ this.day !== null ||
900
+ this.month !== null ||
901
+ this.year !== null) {
902
+ let UTCDate = null;
903
+ if (d !== null) {
904
+ UTCDate = new Date(Date.UTC(d.getFullYear(), d.getMonth(), d.getDate()));
905
+ }
906
+ this.icChange.emit({
907
+ value: d,
908
+ dateObject: {
909
+ day: this.day === "" ? null : this.day,
910
+ month: this.month === "" ? null : this.month,
911
+ year: this.year === "" ? null : this.year,
912
+ },
913
+ utcValue: UTCDate,
914
+ });
914
915
  }
915
916
  };
916
917
  }
918
+ watchInputHandler() {
919
+ if (this.emitDatePartChange &&
920
+ !this.externalSetDate &&
921
+ !this.clearInput &&
922
+ !(this.day && this.month && this.year) &&
923
+ this.selectedDate === null) {
924
+ this.emitIcChange(this.selectedDate);
925
+ }
926
+ }
917
927
  watchDisabledHandler() {
918
928
  removeDisabledFalse(this.disabled, this.el);
919
929
  }
@@ -940,9 +950,10 @@ const DateInput = class {
940
950
  }
941
951
  }
942
952
  watchRequiredHandler() {
953
+ var _a, _b;
943
954
  // Prevent asterisk being read out after the label by screen reader (by applying aria-hidden)
944
955
  // Needed because label is included in 'aria-labelledby' instead of using 'aria-label'
945
- const labelEl = this.el.shadowRoot.querySelector("label");
956
+ const labelEl = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("label");
946
957
  if (this.required) {
947
958
  const asteriskSpan = document.createElement("span");
948
959
  asteriskSpan.setAttribute("id", "asterisk-span");
@@ -951,7 +962,7 @@ const DateInput = class {
951
962
  labelEl === null || labelEl === void 0 ? void 0 : labelEl.appendChild(asteriskSpan);
952
963
  }
953
964
  else {
954
- const asteriskSpan = this.el.shadowRoot.querySelector("#asterisk-span");
965
+ const asteriskSpan = (_b = this.el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector("#asterisk-span");
955
966
  if (asteriskSpan) {
956
967
  asteriskSpan.remove();
957
968
  }
@@ -967,11 +978,8 @@ const DateInput = class {
967
978
  this.watchMinHandler();
968
979
  this.watchMaxHandler();
969
980
  if (this.value) {
981
+ this.externalSetDate = true;
970
982
  this.setDate(this.value);
971
- this.previousEmittedDate = this.selectedDate;
972
- }
973
- else {
974
- this.previousEmittedDate = null;
975
983
  }
976
984
  this.screenReaderInfoId = `${this.inputId}-screen-reader-info`;
977
985
  this.assistiveHintId = `${this.inputId}-assistive-hint`;
@@ -1040,7 +1048,10 @@ const DateInput = class {
1040
1048
  * @internal Used to enable other components to invoke an IcChange event from the input.
1041
1049
  */
1042
1050
  async triggerIcChange(d) {
1051
+ this.externalSetDate = true;
1052
+ this.setDate(d);
1043
1053
  this.emitIcChange(d);
1054
+ this.externalSetDate = false;
1044
1055
  }
1045
1056
  removeAriaLabelledBy() {
1046
1057
  this.inputCompContainerEl.removeAttribute(this.ARIA_LABELLED_BY);
@@ -1101,18 +1112,18 @@ const DateInput = class {
1101
1112
  }
1102
1113
  pasteZuluDateTime(dateParts, index) {
1103
1114
  // ['YYYY', 'MM', 'DD']
1104
- if (index === 0) {
1115
+ if (index === 0 && this.yearInputEl) {
1105
1116
  const dateValue = this.slicePastedDate(4, dateParts[index]);
1106
1117
  this.yearInputEl.value = dateValue;
1107
1118
  this.setInputValue(this.yearInputEl);
1108
1119
  }
1109
- else if (index === 1) {
1120
+ else if (index === 1 && this.monthInputEl) {
1110
1121
  // The month value is the second item in the array
1111
1122
  const dateValue = this.slicePastedDate(2, dateParts[index]);
1112
1123
  this.monthInputEl.value = dateValue;
1113
1124
  this.setInputValue(this.monthInputEl);
1114
1125
  }
1115
- else {
1126
+ else if (this.dayInputEl) {
1116
1127
  const dateValue = this.slicePastedDate(2, dateParts[index]);
1117
1128
  this.dayInputEl.value = dateValue;
1118
1129
  this.setInputValue(this.dayInputEl);
@@ -1137,7 +1148,8 @@ const DateInput = class {
1137
1148
  }
1138
1149
  }
1139
1150
  notifyScreenReader(input, event) {
1140
- const liveRegion = this.el.shadowRoot.querySelector("#live-region");
1151
+ var _a;
1152
+ const liveRegion = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("#live-region");
1141
1153
  if (liveRegion) {
1142
1154
  if (this.isKeyboardOrEvent(event)) {
1143
1155
  this.notifyScreenReaderArrowKeys(input);
@@ -1157,19 +1169,22 @@ const DateInput = class {
1157
1169
  : "";
1158
1170
  const assistiveHint = `Type or use the up and down arrow keys to change the values for the ${this.getDescOfInputsOrder()}.`;
1159
1171
  renderHiddenInput(true, this.el, this.name, this.convertToDate(this.year, this.month, this.day), this.disabled);
1160
- return (h(Host, { key: '08b8f65934b55fd86e9abe2fad8f232af68b3754', class: {
1172
+ return (h(Host, { key: '5e9f71b2a1c5dbc55f615ea389121c300ed68fd4', class: {
1161
1173
  [`ic-theme-${theme}`]: theme !== "inherit",
1162
1174
  [`ic-date-input-disabled`]: disabled,
1163
- }, onBlur: this.handleHostBlur, onFocus: this.handleHostFocus }, h("ic-input-container", { key: '285bb0e746630a08c3e4e29bc8a24f5d97b4b4e5', disabled: disabled }, !(hideLabel && hideHelperText) && (h("ic-input-label", { key: 'f1facdecd84445133a67c87a2d6e5ba4dfbfbceb', for: inputId, label: label, hideLabel: hideLabel, helperText: !hideHelperText ? helperText : "", disabled: disabled })), h("span", { key: '25ae3fae1dc4f2862ec14e348138adfadf0dc3c7', id: this.screenReaderInfoId, class: "sr-only", "aria-hidden": "true" }, this.getScreenReaderInfo(validationStatus), hideLabel && `${label}\n`, hideHelperText && `${helperText}\n`, `${this.defaultHelperText}.`), h("span", { key: 'd3c34084b3b846795063f799720b7d918f10f5a9', id: this.assistiveHintId, class: "sr-only", "aria-hidden": "true" }, assistiveHint), h("span", { key: '37ecdc3ee7ced98dac405591cb106e1a03add976', id: "live-region", "aria-live": "assertive", class: "sr-only" }), h("ic-input-component-container", { key: 'cfcfae24a49a49e0f2a878a7c024818e1cce125a', id: inputId, ref: (el) => (this.inputCompContainerEl = el), disabled: disabled, validationStatus: validationStatus, size: size, role: "group", class: { [`ic-theme-${theme}`]: theme !== "inherit" } }, h("div", { key: '4d090542f2fb72fae8cda326af45278552707cd6', class: "input-container" }, h("div", { key: '4eef737c2a8d25353a41ea31b2e8bc21ec55ff9a', class: "date-inputs" }, this.getInputsInOrder()[0], "/", this.getInputsInOrder()[1], "/", this.getInputsInOrder()[2]), h("div", { key: 'bc1cb74a96f75b4018f2e39f8712a870f5f4bf6e', class: "action-buttons" }, showClearButton && (h("ic-button", { key: 'e58854f9e3b74a7f46a253a8421c8c9775047069', id: "clear-button", "aria-label": "Clear input", class: {
1175
+ }, onBlur: this.handleHostBlur, onFocus: this.handleHostFocus }, h("ic-input-container", { key: '64fe93a68d17f2b84e296efb2d9602876628d972', disabled: disabled }, !(hideLabel && hideHelperText) && (h("ic-input-label", { key: '69bb1722d84504483a7691fe713c86639025765f', for: inputId, label: label, hideLabel: hideLabel, helperText: !hideHelperText ? helperText : "", disabled: disabled })), h("span", { key: '3ef289406284d077b47db67d8b5d45919fdaad0e', id: this.screenReaderInfoId, class: "sr-only", "aria-hidden": "true" }, this.getScreenReaderInfo(validationStatus), hideLabel && `${label}\n`, hideHelperText && `${helperText}\n`, `${this.defaultHelperText}.`), h("span", { key: '20222a2534cf00d15fe40610412babb302fc0e7a', id: this.assistiveHintId, class: "sr-only", "aria-hidden": "true" }, assistiveHint), h("span", { key: '5d4346a0fec1b1ee9d22057b7f2f1aa3b98f9693', id: "live-region", "aria-live": "assertive", class: "sr-only" }), h("ic-input-component-container", { key: '1a2adcdeaf2e5cb437f77dd76054dcd872937bfc', id: inputId, ref: (el) => (this.inputCompContainerEl = el), disabled: disabled, validationStatus: validationStatus, size: size, role: "group", class: { [`ic-theme-${theme}`]: theme !== "inherit" } }, h("div", { key: 'ad5c42cec33b39329bde1975b094f3f13e974191', class: "input-container" }, h("div", { key: '5bc9b871e605562b50306d5bb6bcc078892bafc5', class: "date-inputs" }, this.getInputsInOrder()[0], "/", this.getInputsInOrder()[1], "/", this.getInputsInOrder()[2]), h("div", { key: '6efb1d64b2eeab1c3da78d1e0b95f3df987fedcc', class: "action-buttons" }, showClearButton && (h("ic-button", { key: '39a73d58a6814d3fac7425050291e3f2f821cd72', id: "clear-button", "aria-label": "Clear input", class: {
1164
1176
  ["clear-button"]: true,
1165
1177
  ["hidden"]: isEmptyString(this.day) &&
1166
1178
  isEmptyString(this.month) &&
1167
1179
  isEmptyString(this.year),
1168
- }, disabled: this.disabled, innerHTML: Clear, onClick: this.handleClear, onFocus: this.handleClearFocus, onBlur: this.handleClearBlur, variant: "icon-tertiary", theme: this.clearButtonFocused ? "light" : "dark", size: size })), showCalendarButton && (h("div", { key: 'd7e3f4e87e69d949a1c9e56230ae78b22dfd23f8', class: "show-calendar-button-wrapper" }, h("div", { key: '21bcae037bcb6d81bd89ba1eb51f279f048fa2df', class: { divider: true, [size]: true } }), h("ic-button", { key: '3bad8c476367e3aac94092078fe9d8aa52f396ff', id: "calendar-button", ref: (el) => (this.calendarButtonEl = el), "aria-label": "Display calendar", "aria-haspopup": "dialog", class: "calendar-button", disabled: this.disabled, innerHTML: Calendar, onClick: this.handleCalendarOpen, variant: "icon-tertiary", size: size, onFocus: this.handleCalendarFocus, onBlur: this.handleCalendarBlur, theme: this.calendarFocused ? "light" : "dark" })))))), h("span", { key: 'c11a9f0fc1eae4efc3a3a29ebdd1eb65a6de7630', id: this.selectedDateInfoId, class: "sr-only", "aria-live": "polite" }, h("span", { key: '2930c304db0ad50b6991454d9375fdc2e1a4547a', ref: (el) => (this.selectedDateInfoEl = el), role: "status" })), (hasCustomValidation || !isEmptyString(this.invalidDateText)) && (h("ic-input-validation", { key: '5fc1473b568a1f82c3c1ee9f73e20a19f7c28d85', status: validationStatus, message: hasCustomValidation ? this.validationText : this.invalidDateText, for: inputId })))));
1180
+ }, disabled: this.disabled, innerHTML: Clear, onClick: this.handleClear, onFocus: this.handleClearFocus, onBlur: this.handleClearBlur, variant: "icon-tertiary", theme: this.clearButtonFocused ? "light" : "dark", size: size })), showCalendarButton && (h("div", { key: '6d05e11943d6bd56f9dd6d20b8306a45062ac3f2', class: "show-calendar-button-wrapper" }, h("div", { key: 'c04cdf2665700c19fdc323bf92435d2b0d710016', class: { divider: true, [size]: true } }), h("ic-button", { key: '1a88f2b979c6c1569bb5bff797ea28e86526ff69', id: "calendar-button", ref: (el) => (this.calendarButtonEl = el), "aria-label": "Display calendar", "aria-haspopup": "dialog", class: "calendar-button", disabled: this.disabled, innerHTML: Calendar, onClick: this.handleCalendarOpen, variant: "icon-tertiary", size: size, onFocus: this.handleCalendarFocus, onBlur: this.handleCalendarBlur, theme: this.calendarFocused ? "light" : "dark" })))))), h("span", { key: '49dc06b59b4ecbee2899842a1dc63d5bbde70cc3', id: this.selectedDateInfoId, class: "sr-only", "aria-live": "polite" }, h("span", { key: 'bd2d89299077ceaf51b03fc5f22e6d0ff2f1550a', ref: (el) => (this.selectedDateInfoEl = el), role: "status" })), (hasCustomValidation || !isEmptyString(this.invalidDateText)) && (h("ic-input-validation", { key: 'd1502e42604239e61c7ec08840c258d2ea4d07e8', status: validationStatus, message: hasCustomValidation ? this.validationText : this.invalidDateText, for: inputId })))));
1169
1181
  }
1170
1182
  static get delegatesFocus() { return true; }
1171
1183
  get el() { return getElement(this); }
1172
1184
  static get watchers() { return {
1185
+ "day": ["watchInputHandler"],
1186
+ "month": ["watchInputHandler"],
1187
+ "year": ["watchInputHandler"],
1173
1188
  "disabled": ["watchDisabledHandler"],
1174
1189
  "disableFuture": ["watchDisableFutureHandler"],
1175
1190
  "disablePast": ["watchDisablePastHandler"],