@ukic/canary-web-components 3.0.0-canary.25 → 3.0.0-canary.27

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 (624) hide show
  1. package/dist/cjs/common-helpers-944cb54d.js +21 -0
  2. package/dist/cjs/common-helpers-944cb54d.js.map +1 -0
  3. package/dist/cjs/core.cjs.js +1 -1
  4. package/dist/cjs/{helpers-56717660.js → helpers-046745ee.js} +24 -22
  5. package/dist/cjs/helpers-046745ee.js.map +1 -0
  6. package/dist/cjs/helpers-da852478.js.map +1 -1
  7. package/dist/cjs/ic-accordion-group.cjs.entry.js +1 -1
  8. package/dist/cjs/ic-accordion.cjs.entry.js +1 -1
  9. package/dist/cjs/ic-action-chip.cjs.entry.js +1 -1
  10. package/dist/cjs/ic-alert.cjs.entry.js +2 -2
  11. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ic-back-to-top.cjs.entry.js +1 -1
  13. package/dist/cjs/ic-badge.cjs.entry.js +1 -1
  14. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +1 -1
  15. package/dist/cjs/ic-breadcrumb.cjs.entry.js +1 -1
  16. package/dist/cjs/ic-button_3.cjs.entry.js +24 -18
  17. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ic-card-vertical.cjs.entry.js +1 -1
  19. package/dist/cjs/ic-checkbox-group.cjs.entry.js +7 -4
  20. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-checkbox_3.cjs.entry.js +41 -28
  22. package/dist/cjs/ic-checkbox_3.cjs.entry.js.map +1 -1
  23. package/dist/cjs/ic-chip.cjs.entry.js +6 -5
  24. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-data-list.cjs.entry.js +2 -2
  26. package/dist/cjs/ic-data-list.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ic-data-row.cjs.entry.js +3 -3
  28. package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ic-data-table.cjs.entry.js +13 -13
  30. package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
  31. package/dist/cjs/ic-date-input.cjs.entry.js +7 -7
  32. package/dist/cjs/ic-date-input.cjs.entry.js.map +1 -1
  33. package/dist/cjs/ic-dialog.cjs.entry.js +6 -4
  34. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  35. package/dist/cjs/ic-divider.cjs.entry.js +1 -1
  36. package/dist/cjs/ic-footer-link-group.cjs.entry.js +1 -1
  37. package/dist/cjs/ic-footer-link.cjs.entry.js +3 -3
  38. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  39. package/dist/cjs/ic-footer.cjs.entry.js +1 -1
  40. package/dist/cjs/ic-hero.cjs.entry.js +5 -5
  41. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  42. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +6 -6
  43. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  44. package/dist/cjs/ic-input-component-container_4.cjs.entry.js +28 -14
  45. package/dist/cjs/ic-input-component-container_4.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ic-layout-grid-item.cjs.entry.js +2 -2
  47. package/dist/cjs/ic-layout-grid-item.cjs.entry.js.map +1 -1
  48. package/dist/cjs/ic-layout-grid.cjs.entry.js +2 -2
  49. package/dist/cjs/ic-layout-grid.cjs.entry.js.map +1 -1
  50. package/dist/cjs/ic-link.cjs.entry.js +2 -2
  51. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  52. package/dist/cjs/ic-menu-group.cjs.entry.js +2 -2
  53. package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
  54. package/dist/cjs/ic-menu-item.cjs.entry.js +1 -1
  55. package/dist/cjs/ic-menu.cjs.entry.js +23 -7
  56. package/dist/cjs/ic-menu.cjs.entry.js.map +1 -1
  57. package/dist/cjs/ic-navigation-button.cjs.entry.js +1 -1
  58. package/dist/cjs/ic-navigation-group.cjs.entry.js +2 -2
  59. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ic-navigation-item.cjs.entry.js +1 -1
  61. package/dist/cjs/ic-navigation-menu.cjs.entry.js +5 -5
  62. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  63. package/dist/cjs/ic-page-header.cjs.entry.js +7 -7
  64. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  65. package/dist/cjs/ic-pagination_4.cjs.entry.js +52 -37
  66. package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
  67. package/dist/cjs/ic-popover-menu.cjs.entry.js +5 -5
  68. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  69. package/dist/cjs/ic-radio-group.cjs.entry.js +14 -7
  70. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  71. package/dist/cjs/ic-radio-option.cjs.entry.js +6 -6
  72. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  73. package/dist/cjs/ic-search-bar.cjs.entry.js +10 -10
  74. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  75. package/dist/cjs/ic-section-container.cjs.entry.js +2 -2
  76. package/dist/cjs/ic-section-container.cjs.entry.js.map +1 -1
  77. package/dist/cjs/ic-side-navigation.cjs.entry.js +5 -5
  78. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  79. package/dist/cjs/ic-skeleton.cjs.entry.js +2 -2
  80. package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
  81. package/dist/cjs/ic-skip-link.cjs.entry.js +2 -2
  82. package/dist/cjs/ic-skip-link.cjs.entry.js.map +1 -1
  83. package/dist/cjs/ic-status-tag.cjs.entry.js +3 -3
  84. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  85. package/dist/cjs/ic-step.cjs.entry.js +66 -54
  86. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  87. package/dist/cjs/ic-stepper.cjs.entry.js +20 -3
  88. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  89. package/dist/cjs/ic-switch.cjs.entry.js +5 -5
  90. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  91. package/dist/cjs/ic-tab-context.cjs.entry.js +10 -2
  92. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  93. package/dist/cjs/ic-tab-group.cjs.entry.js +3 -3
  94. package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
  95. package/dist/cjs/ic-tab-panel.cjs.entry.js +2 -2
  96. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  97. package/dist/cjs/ic-tab.cjs.entry.js +1 -1
  98. package/dist/cjs/ic-table-of-contents.cjs.entry.js +363 -0
  99. package/dist/cjs/ic-table-of-contents.cjs.entry.js.map +1 -0
  100. package/dist/cjs/ic-theme.cjs.entry.js +2 -2
  101. package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
  102. package/dist/cjs/ic-time-input.cjs.entry.js +11 -11
  103. package/dist/cjs/ic-time-input.cjs.entry.js.map +1 -1
  104. package/dist/cjs/ic-toast-region.cjs.entry.js +1 -1
  105. package/dist/cjs/ic-toast-region.cjs.entry.js.map +1 -1
  106. package/dist/cjs/ic-toast.cjs.entry.js +4 -4
  107. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  108. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +3 -3
  109. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  110. package/dist/cjs/ic-toggle-button.cjs.entry.js +3 -3
  111. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  112. package/dist/cjs/ic-top-navigation.cjs.entry.js +1 -1
  113. package/dist/cjs/ic-tree-item.cjs.entry.js +2 -2
  114. package/dist/cjs/ic-tree-view.cjs.entry.js +6 -4
  115. package/dist/cjs/ic-tree-view.cjs.entry.js.map +1 -1
  116. package/dist/cjs/ic-typography.cjs.entry.js +3 -3
  117. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  118. package/dist/cjs/index-d337cd8a.js +4 -0
  119. package/dist/cjs/loader.cjs.js +1 -1
  120. package/dist/cjs/purify-039f565a.js +1365 -0
  121. package/dist/cjs/purify-039f565a.js.map +1 -0
  122. package/dist/collection/assets/error-icon.svg +4 -4
  123. package/dist/collection/assets/info-icon.svg +4 -4
  124. package/dist/collection/assets/neutral-icon.svg +4 -4
  125. package/dist/collection/assets/success-icon.svg +4 -4
  126. package/dist/collection/assets/warning-icon.svg +4 -4
  127. package/dist/collection/collection-manifest.json +1 -0
  128. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js.map +1 -1
  129. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.stories.js.map +1 -1
  130. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.types.js.map +1 -1
  131. package/dist/collection/components/ic-data-table/ic-data-table.js +12 -13
  132. package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
  133. package/dist/collection/components/ic-data-table/ic-data-table.stories.js +1 -1
  134. package/dist/collection/components/ic-data-table/ic-data-table.stories.js.map +1 -1
  135. package/dist/collection/components/ic-data-table/ic-data-table.types.js.map +1 -1
  136. package/dist/collection/components/ic-data-table/story-data.js +128 -69
  137. package/dist/collection/components/ic-data-table/story-data.js.map +1 -1
  138. package/dist/collection/components/ic-data-table/test/a11y/ic-data-table.test.a11y.js.map +1 -1
  139. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.js.map +1 -1
  140. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.stories.js.map +1 -1
  141. package/dist/collection/components/ic-data-table-title-bar/test/a11y/ic-data-table-title-bar.test.a11y.js.map +1 -1
  142. package/dist/collection/components/ic-date-input/ic-date-input.css +6 -0
  143. package/dist/collection/components/ic-date-input/ic-date-input.js +6 -6
  144. package/dist/collection/components/ic-date-input/ic-date-input.js.map +1 -1
  145. package/dist/collection/components/ic-date-input/ic-date-input.stories.js.map +1 -1
  146. package/dist/collection/components/ic-date-input/story-data.js.map +1 -1
  147. package/dist/collection/components/ic-date-input/test/helpers/ic-date-input.js.map +1 -1
  148. package/dist/collection/components/ic-date-picker/ic-date-picker.js.map +1 -1
  149. package/dist/collection/components/ic-date-picker/ic-date-picker.stories.js.map +1 -1
  150. package/dist/collection/components/ic-date-picker/ic-day-button.js.map +1 -1
  151. package/dist/collection/components/ic-date-picker/ic-month-picker.js.map +1 -1
  152. package/dist/collection/components/ic-date-picker/ic-year-picker.js.map +1 -1
  153. package/dist/collection/components/ic-date-picker/story-data.js.map +1 -1
  154. package/dist/collection/components/ic-date-picker/test/a11y/ic-date-picker.test.a11y.js.map +1 -1
  155. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +44 -25
  156. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
  157. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.stories.js +1 -1
  158. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.stories.js.map +1 -1
  159. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.types.js.map +1 -1
  160. package/dist/collection/components/ic-pagination-bar/test/a11y/ic-pagination-bar.test.a11y.js.map +1 -1
  161. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents-item.js +28 -0
  162. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents-item.js.map +1 -0
  163. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents.css +145 -0
  164. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents.js +526 -0
  165. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents.js.map +1 -0
  166. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents.stories.js +291 -0
  167. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents.stories.js.map +1 -0
  168. package/dist/collection/components/ic-table-of-contents/test/a11y/ic-table-of-contents.test.a11y.js +13 -0
  169. package/dist/collection/components/ic-table-of-contents/test/a11y/ic-table-of-contents.test.a11y.js.map +1 -0
  170. package/dist/collection/components/ic-time-input/ic-time-input.css +1 -1
  171. package/dist/collection/components/ic-time-input/ic-time-input.js +10 -10
  172. package/dist/collection/components/ic-time-input/ic-time-input.js.map +1 -1
  173. package/dist/collection/components/ic-time-input/ic-time-input.stories.js.map +1 -1
  174. package/dist/collection/components/ic-time-input/test/helpers/ic-time-input.js.map +1 -1
  175. package/dist/collection/components/ic-tree-item/ic-tree-item.js +2 -2
  176. package/dist/collection/components/ic-tree-item/ic-tree-item.js.map +1 -1
  177. package/dist/collection/components/ic-tree-view/ic-tree-view.js +5 -4
  178. package/dist/collection/components/ic-tree-view/ic-tree-view.js.map +1 -1
  179. package/dist/collection/components/ic-tree-view/ic-tree-view.stories.js.map +1 -1
  180. package/dist/collection/components/ic-tree-view/ic-tree-view.types.js.map +1 -1
  181. package/dist/collection/index.js.map +1 -1
  182. package/dist/collection/utils/constants.js.map +1 -1
  183. package/dist/collection/utils/date-helpers.js.map +1 -1
  184. package/dist/collection/utils/helpers.js.map +1 -1
  185. package/dist/collection/utils/testa11y.helpers.js.map +1 -1
  186. package/dist/collection/utils/types.js.map +1 -1
  187. package/dist/components/common-helpers.js +19 -0
  188. package/dist/components/common-helpers.js.map +1 -0
  189. package/dist/components/helpers.js +23 -22
  190. package/dist/components/helpers.js.map +1 -1
  191. package/dist/components/helpers2.js.map +1 -1
  192. package/dist/components/ic-alert.js +1 -1
  193. package/dist/components/ic-alert.js.map +1 -1
  194. package/dist/components/ic-button2.js +15 -10
  195. package/dist/components/ic-button2.js.map +1 -1
  196. package/dist/components/ic-checkbox-group.js +6 -3
  197. package/dist/components/ic-checkbox-group.js.map +1 -1
  198. package/dist/components/ic-checkbox2.js +3 -3
  199. package/dist/components/ic-checkbox2.js.map +1 -1
  200. package/dist/components/ic-chip.js +5 -4
  201. package/dist/components/ic-chip.js.map +1 -1
  202. package/dist/components/ic-data-list.js +2 -2
  203. package/dist/components/ic-data-list.js.map +1 -1
  204. package/dist/components/ic-data-row.js +2 -2
  205. package/dist/components/ic-data-row.js.map +1 -1
  206. package/dist/components/ic-data-table.js +12 -13
  207. package/dist/components/ic-data-table.js.map +1 -1
  208. package/dist/components/ic-date-input2.js +7 -7
  209. package/dist/components/ic-date-input2.js.map +1 -1
  210. package/dist/components/ic-dialog.js +5 -3
  211. package/dist/components/ic-dialog.js.map +1 -1
  212. package/dist/components/ic-empty-state2.js +2 -2
  213. package/dist/components/ic-empty-state2.js.map +1 -1
  214. package/dist/components/ic-footer-link.js +2 -2
  215. package/dist/components/ic-footer-link.js.map +1 -1
  216. package/dist/components/ic-footer.js +1 -1
  217. package/dist/components/ic-hero.js +4 -4
  218. package/dist/components/ic-hero.js.map +1 -1
  219. package/dist/components/ic-horizontal-scroll2.js +6 -6
  220. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  221. package/dist/components/ic-input-component-container2.js +3 -3
  222. package/dist/components/ic-input-component-container2.js.map +1 -1
  223. package/dist/components/ic-input-container2.js +2 -2
  224. package/dist/components/ic-input-container2.js.map +1 -1
  225. package/dist/components/ic-input-label2.js +2 -2
  226. package/dist/components/ic-input-label2.js.map +1 -1
  227. package/dist/components/ic-input-validation2.js +22 -6
  228. package/dist/components/ic-input-validation2.js.map +1 -1
  229. package/dist/components/ic-layout-grid-item.js +2 -2
  230. package/dist/components/ic-layout-grid-item.js.map +1 -1
  231. package/dist/components/ic-layout-grid.js +2 -2
  232. package/dist/components/ic-layout-grid.js.map +1 -1
  233. package/dist/components/ic-link2.js +1 -1
  234. package/dist/components/ic-link2.js.map +1 -1
  235. package/dist/components/ic-loading-indicator2.js +5 -5
  236. package/dist/components/ic-loading-indicator2.js.map +1 -1
  237. package/dist/components/ic-menu-group.js +1 -1
  238. package/dist/components/ic-menu-group.js.map +1 -1
  239. package/dist/components/ic-menu2.js +23 -7
  240. package/dist/components/ic-menu2.js.map +1 -1
  241. package/dist/components/ic-navigation-button.js +1 -1
  242. package/dist/components/ic-navigation-group.js +2 -2
  243. package/dist/components/ic-navigation-group.js.map +1 -1
  244. package/dist/components/ic-navigation-item.js +1 -1
  245. package/dist/components/ic-navigation-menu2.js +5 -5
  246. package/dist/components/ic-navigation-menu2.js.map +1 -1
  247. package/dist/components/ic-page-header.js +6 -6
  248. package/dist/components/ic-page-header.js.map +1 -1
  249. package/dist/components/ic-pagination-bar2.js +35 -22
  250. package/dist/components/ic-pagination-bar2.js.map +1 -1
  251. package/dist/components/ic-pagination-item2.js +2 -2
  252. package/dist/components/ic-pagination-item2.js.map +1 -1
  253. package/dist/components/ic-pagination2.js +4 -4
  254. package/dist/components/ic-pagination2.js.map +1 -1
  255. package/dist/components/ic-popover-menu.js +4 -4
  256. package/dist/components/ic-popover-menu.js.map +1 -1
  257. package/dist/components/ic-radio-group.js +14 -6
  258. package/dist/components/ic-radio-group.js.map +1 -1
  259. package/dist/components/ic-radio-option.js +5 -5
  260. package/dist/components/ic-radio-option.js.map +1 -1
  261. package/dist/components/ic-search-bar.js +10 -10
  262. package/dist/components/ic-search-bar.js.map +1 -1
  263. package/dist/components/ic-section-container2.js +2 -2
  264. package/dist/components/ic-section-container2.js.map +1 -1
  265. package/dist/components/ic-select2.js +20 -12
  266. package/dist/components/ic-select2.js.map +1 -1
  267. package/dist/components/ic-side-navigation.js +5 -5
  268. package/dist/components/ic-side-navigation.js.map +1 -1
  269. package/dist/components/ic-skeleton.js +2 -2
  270. package/dist/components/ic-skeleton.js.map +1 -1
  271. package/dist/components/ic-skip-link.js +2 -2
  272. package/dist/components/ic-skip-link.js.map +1 -1
  273. package/dist/components/ic-status-tag.js +2 -2
  274. package/dist/components/ic-status-tag.js.map +1 -1
  275. package/dist/components/ic-step.js +66 -53
  276. package/dist/components/ic-step.js.map +1 -1
  277. package/dist/components/ic-stepper.js +20 -2
  278. package/dist/components/ic-stepper.js.map +1 -1
  279. package/dist/components/ic-switch.js +4 -4
  280. package/dist/components/ic-switch.js.map +1 -1
  281. package/dist/components/ic-tab-context.js +11 -2
  282. package/dist/components/ic-tab-context.js.map +1 -1
  283. package/dist/components/ic-tab-group.js +2 -2
  284. package/dist/components/ic-tab-group.js.map +1 -1
  285. package/dist/components/ic-tab-panel.js +2 -2
  286. package/dist/components/ic-tab-panel.js.map +1 -1
  287. package/dist/components/ic-table-of-contents.d.ts +11 -0
  288. package/dist/components/ic-table-of-contents.js +408 -0
  289. package/dist/components/ic-table-of-contents.js.map +1 -0
  290. package/dist/components/ic-text-field2.js +30 -21
  291. package/dist/components/ic-text-field2.js.map +1 -1
  292. package/dist/components/ic-theme.js +2 -2
  293. package/dist/components/ic-theme.js.map +1 -1
  294. package/dist/components/ic-time-input.js +11 -11
  295. package/dist/components/ic-time-input.js.map +1 -1
  296. package/dist/components/ic-toast-region.js +1 -1
  297. package/dist/components/ic-toast-region.js.map +1 -1
  298. package/dist/components/ic-toast.js +4 -4
  299. package/dist/components/ic-toast.js.map +1 -1
  300. package/dist/components/ic-toggle-button-group.js +2 -2
  301. package/dist/components/ic-toggle-button-group.js.map +1 -1
  302. package/dist/components/ic-toggle-button.js +3 -3
  303. package/dist/components/ic-toggle-button.js.map +1 -1
  304. package/dist/components/ic-tooltip2.js +6 -4
  305. package/dist/components/ic-tooltip2.js.map +1 -1
  306. package/dist/components/ic-top-navigation.js +1 -1
  307. package/dist/components/ic-tree-item.js +2 -2
  308. package/dist/components/ic-tree-view.js +5 -4
  309. package/dist/components/ic-tree-view.js.map +1 -1
  310. package/dist/components/ic-typography2.js +2 -2
  311. package/dist/components/ic-typography2.js.map +1 -1
  312. package/dist/components/purify.js +1363 -0
  313. package/dist/components/purify.js.map +1 -0
  314. package/dist/core/core.css +32 -4
  315. package/dist/core/core.esm.js +1 -1
  316. package/dist/core/core.esm.js.map +1 -1
  317. package/dist/core/{p-d47e200c.entry.js → p-05e0cadf.entry.js} +2 -2
  318. package/dist/core/{p-8051e61b.entry.js → p-07365d6f.entry.js} +2 -2
  319. package/dist/core/{p-51e2de77.entry.js → p-0b0cc10d.entry.js} +2 -2
  320. package/dist/core/{p-51e2de77.entry.js.map → p-0b0cc10d.entry.js.map} +1 -1
  321. package/dist/core/{p-c067e62c.entry.js → p-0e882f70.entry.js} +2 -2
  322. package/dist/core/{p-588a331f.entry.js → p-0ec0be8d.entry.js} +2 -2
  323. package/dist/core/{p-588a331f.entry.js.map → p-0ec0be8d.entry.js.map} +1 -1
  324. package/dist/core/p-0f22f41e.js.map +1 -1
  325. package/dist/core/{p-d41b0da0.entry.js → p-182883cb.entry.js} +2 -2
  326. package/dist/core/{p-d41b0da0.entry.js.map → p-182883cb.entry.js.map} +1 -1
  327. package/dist/core/{p-364cc350.entry.js → p-18b793e0.entry.js} +2 -2
  328. package/dist/core/p-1d89fcda.entry.js +2 -0
  329. package/dist/core/p-1d89fcda.entry.js.map +1 -0
  330. package/dist/core/{p-0fad83d8.entry.js → p-266d5e13.entry.js} +2 -2
  331. package/dist/core/{p-0fad83d8.entry.js.map → p-266d5e13.entry.js.map} +1 -1
  332. package/dist/core/p-2bba11f8.entry.js +2 -0
  333. package/dist/core/p-2bba11f8.entry.js.map +1 -0
  334. package/dist/core/{p-43285eeb.entry.js → p-2f0ab1d0.entry.js} +2 -2
  335. package/dist/core/{p-43285eeb.entry.js.map → p-2f0ab1d0.entry.js.map} +1 -1
  336. package/dist/core/p-349d91dc.js +3 -0
  337. package/dist/core/p-349d91dc.js.map +1 -0
  338. package/dist/core/p-35bff926.entry.js +2 -0
  339. package/dist/core/p-35bff926.entry.js.map +1 -0
  340. package/dist/core/{p-287e5c17.entry.js → p-37d217b5.entry.js} +2 -2
  341. package/dist/core/{p-287e5c17.entry.js.map → p-37d217b5.entry.js.map} +1 -1
  342. package/dist/core/{p-df88ff5b.entry.js → p-37daa8fe.entry.js} +2 -2
  343. package/dist/core/{p-df88ff5b.entry.js.map → p-37daa8fe.entry.js.map} +1 -1
  344. package/dist/core/{p-45dd12ee.entry.js → p-4747c39f.entry.js} +2 -2
  345. package/dist/core/p-4747c39f.entry.js.map +1 -0
  346. package/dist/core/p-479e5fa2.entry.js +2 -0
  347. package/dist/core/p-479e5fa2.entry.js.map +1 -0
  348. package/dist/core/{p-ffac41d6.entry.js → p-492fcb51.entry.js} +2 -2
  349. package/dist/core/{p-ffac41d6.entry.js.map → p-492fcb51.entry.js.map} +1 -1
  350. package/dist/core/p-542ac498.js +2 -0
  351. package/dist/core/p-542ac498.js.map +1 -0
  352. package/dist/core/{p-9863a070.entry.js → p-54da2d5f.entry.js} +2 -2
  353. package/dist/core/{p-4bddb866.entry.js → p-553531bf.entry.js} +2 -2
  354. package/dist/core/{p-4bddb866.entry.js.map → p-553531bf.entry.js.map} +1 -1
  355. package/dist/core/{p-6e8ef73c.entry.js → p-57721431.entry.js} +2 -2
  356. package/dist/core/{p-6e8ef73c.entry.js.map → p-57721431.entry.js.map} +1 -1
  357. package/dist/core/{p-f7d746d7.entry.js → p-5d6290bb.entry.js} +2 -2
  358. package/dist/core/p-5d6290bb.entry.js.map +1 -0
  359. package/dist/core/{p-5fbc8e62.entry.js → p-5fcfcfb6.entry.js} +2 -2
  360. package/dist/core/{p-5fbc8e62.entry.js.map → p-5fcfcfb6.entry.js.map} +1 -1
  361. package/dist/core/{p-608a8a4d.entry.js → p-656b92d7.entry.js} +2 -2
  362. package/dist/core/{p-59048c2a.entry.js → p-6addd986.entry.js} +2 -2
  363. package/dist/core/p-6addd986.entry.js.map +1 -0
  364. package/dist/core/p-6d2fa004.entry.js +2 -0
  365. package/dist/core/p-6d2fa004.entry.js.map +1 -0
  366. package/dist/core/{p-fecef807.entry.js → p-6d4418e4.entry.js} +2 -2
  367. package/dist/core/{p-b87e4485.entry.js → p-6e5fc63c.entry.js} +2 -2
  368. package/dist/core/{p-66ae9eb3.entry.js → p-70447473.entry.js} +2 -2
  369. package/dist/core/{p-66ae9eb3.entry.js.map → p-70447473.entry.js.map} +1 -1
  370. package/dist/core/{p-aa94c4b0.entry.js → p-77c4d1d2.entry.js} +2 -2
  371. package/dist/core/{p-aa94c4b0.entry.js.map → p-77c4d1d2.entry.js.map} +1 -1
  372. package/dist/core/{p-fb8c47ce.entry.js → p-796b9ac5.entry.js} +2 -2
  373. package/dist/core/{p-fb8c47ce.entry.js.map → p-796b9ac5.entry.js.map} +1 -1
  374. package/dist/core/{p-3f241d71.entry.js → p-7986db4a.entry.js} +2 -2
  375. package/dist/core/{p-3f241d71.entry.js.map → p-7986db4a.entry.js.map} +1 -1
  376. package/dist/core/p-7bb3531c.entry.js +2 -0
  377. package/dist/core/p-7bb3531c.entry.js.map +1 -0
  378. package/dist/core/p-8a5ae4ab.entry.js +2 -0
  379. package/dist/core/p-8a5ae4ab.entry.js.map +1 -0
  380. package/dist/core/{p-2fe31f66.entry.js → p-8b4a7a78.entry.js} +2 -2
  381. package/dist/core/{p-2fe31f66.entry.js.map → p-8b4a7a78.entry.js.map} +1 -1
  382. package/dist/core/{p-f517f412.entry.js → p-8c841dc8.entry.js} +2 -2
  383. package/dist/core/{p-d7217588.entry.js → p-94e5ed81.entry.js} +2 -2
  384. package/dist/core/{p-d7217588.entry.js.map → p-94e5ed81.entry.js.map} +1 -1
  385. package/dist/core/{p-ea061ccf.entry.js → p-9a8bcb78.entry.js} +2 -2
  386. package/dist/core/{p-ea061ccf.entry.js.map → p-9a8bcb78.entry.js.map} +1 -1
  387. package/dist/core/p-9af5008c.entry.js +2 -0
  388. package/dist/core/{p-20374e30.entry.js.map → p-9af5008c.entry.js.map} +1 -1
  389. package/dist/core/{p-9fffb01e.entry.js → p-9b68bee6.entry.js} +2 -2
  390. package/dist/core/{p-8b5022bc.entry.js → p-9cf6ccfd.entry.js} +2 -2
  391. package/dist/core/{p-8b5022bc.entry.js.map → p-9cf6ccfd.entry.js.map} +1 -1
  392. package/dist/core/p-9fa329f2.entry.js +2 -0
  393. package/dist/core/p-9fa329f2.entry.js.map +1 -0
  394. package/dist/core/p-a422b778.js +2 -0
  395. package/dist/core/p-a422b778.js.map +1 -0
  396. package/dist/core/{p-9fe5e2eb.entry.js → p-a7a572d9.entry.js} +2 -2
  397. package/dist/core/p-a86756fa.entry.js +2 -0
  398. package/dist/core/p-a86756fa.entry.js.map +1 -0
  399. package/dist/core/{p-145c0245.entry.js → p-ac2f8cc8.entry.js} +2 -2
  400. package/dist/core/{p-145c0245.entry.js.map → p-ac2f8cc8.entry.js.map} +1 -1
  401. package/dist/core/{p-1a5efa3e.entry.js → p-b10f5992.entry.js} +2 -2
  402. package/dist/core/p-b2b5d4fa.entry.js +2 -0
  403. package/dist/core/p-b2b5d4fa.entry.js.map +1 -0
  404. package/dist/core/{p-999f0a5d.entry.js → p-b4a2f6fa.entry.js} +2 -2
  405. package/dist/core/{p-999f0a5d.entry.js.map → p-b4a2f6fa.entry.js.map} +1 -1
  406. package/dist/core/p-b7a726fb.entry.js +2 -0
  407. package/dist/core/p-b7a726fb.entry.js.map +1 -0
  408. package/dist/core/{p-cb4522ed.entry.js → p-ba26a1f0.entry.js} +2 -2
  409. package/dist/core/{p-c3fe54ab.entry.js → p-bad17ba7.entry.js} +2 -2
  410. package/dist/core/{p-c3fe54ab.entry.js.map → p-bad17ba7.entry.js.map} +1 -1
  411. package/dist/core/{p-812a0246.entry.js → p-bf08d34c.entry.js} +2 -2
  412. package/dist/core/{p-31d6d587.entry.js → p-bf5558ac.entry.js} +2 -2
  413. package/dist/core/p-bf5558ac.entry.js.map +1 -0
  414. package/dist/core/{p-40743d97.entry.js → p-c1ae14ad.entry.js} +2 -2
  415. package/dist/core/{p-40743d97.entry.js.map → p-c1ae14ad.entry.js.map} +1 -1
  416. package/dist/core/p-c9953122.entry.js +2 -0
  417. package/dist/core/p-c9953122.entry.js.map +1 -0
  418. package/dist/core/p-d4a1e90d.entry.js +2 -0
  419. package/dist/core/p-d4a1e90d.entry.js.map +1 -0
  420. package/dist/core/{p-5c7c7205.entry.js → p-d77981a5.entry.js} +2 -2
  421. package/dist/core/{p-518a8e87.entry.js → p-e0abd214.entry.js} +2 -2
  422. package/dist/core/p-e0abd214.entry.js.map +1 -0
  423. package/dist/core/{p-b8938f93.entry.js → p-e4f1d72b.entry.js} +2 -2
  424. package/dist/core/{p-5976d13e.entry.js → p-e8cea1d5.entry.js} +2 -2
  425. package/dist/core/{p-5976d13e.entry.js.map → p-e8cea1d5.entry.js.map} +1 -1
  426. package/dist/core/{p-b93e8ecb.entry.js → p-f591abc2.entry.js} +2 -2
  427. package/dist/core/p-f6209622.entry.js +2 -0
  428. package/dist/core/p-f6209622.entry.js.map +1 -0
  429. package/dist/core/p-f7b1d6bf.entry.js +2 -0
  430. package/dist/core/p-f7b1d6bf.entry.js.map +1 -0
  431. package/dist/core/{p-e543f2e7.entry.js → p-fba9f5b6.entry.js} +2 -2
  432. package/dist/core/{p-e543f2e7.entry.js.map → p-fba9f5b6.entry.js.map} +1 -1
  433. package/dist/core/{p-d13a066e.entry.js → p-ff4a873e.entry.js} +2 -2
  434. package/dist/core/{p-d13a066e.entry.js.map → p-ff4a873e.entry.js.map} +1 -1
  435. package/dist/esm/common-helpers-86c07ff1.js +19 -0
  436. package/dist/esm/common-helpers-86c07ff1.js.map +1 -0
  437. package/dist/esm/core.js +1 -1
  438. package/dist/esm/{helpers-f3928d01.js → helpers-1dbd527e.js} +24 -23
  439. package/dist/esm/helpers-1dbd527e.js.map +1 -0
  440. package/dist/esm/helpers-89cb996d.js.map +1 -1
  441. package/dist/esm/ic-accordion-group.entry.js +1 -1
  442. package/dist/esm/ic-accordion.entry.js +1 -1
  443. package/dist/esm/ic-action-chip.entry.js +1 -1
  444. package/dist/esm/ic-alert.entry.js +2 -2
  445. package/dist/esm/ic-alert.entry.js.map +1 -1
  446. package/dist/esm/ic-back-to-top.entry.js +1 -1
  447. package/dist/esm/ic-badge.entry.js +1 -1
  448. package/dist/esm/ic-breadcrumb-group.entry.js +1 -1
  449. package/dist/esm/ic-breadcrumb.entry.js +1 -1
  450. package/dist/esm/ic-button_3.entry.js +24 -18
  451. package/dist/esm/ic-button_3.entry.js.map +1 -1
  452. package/dist/esm/ic-card-vertical.entry.js +1 -1
  453. package/dist/esm/ic-checkbox-group.entry.js +7 -4
  454. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  455. package/dist/esm/ic-checkbox_3.entry.js +41 -28
  456. package/dist/esm/ic-checkbox_3.entry.js.map +1 -1
  457. package/dist/esm/ic-chip.entry.js +6 -5
  458. package/dist/esm/ic-chip.entry.js.map +1 -1
  459. package/dist/esm/ic-data-list.entry.js +2 -2
  460. package/dist/esm/ic-data-list.entry.js.map +1 -1
  461. package/dist/esm/ic-data-row.entry.js +3 -3
  462. package/dist/esm/ic-data-row.entry.js.map +1 -1
  463. package/dist/esm/ic-data-table.entry.js +13 -13
  464. package/dist/esm/ic-data-table.entry.js.map +1 -1
  465. package/dist/esm/ic-date-input.entry.js +7 -7
  466. package/dist/esm/ic-date-input.entry.js.map +1 -1
  467. package/dist/esm/ic-dialog.entry.js +6 -4
  468. package/dist/esm/ic-dialog.entry.js.map +1 -1
  469. package/dist/esm/ic-divider.entry.js +1 -1
  470. package/dist/esm/ic-footer-link-group.entry.js +1 -1
  471. package/dist/esm/ic-footer-link.entry.js +3 -3
  472. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  473. package/dist/esm/ic-footer.entry.js +1 -1
  474. package/dist/esm/ic-hero.entry.js +5 -5
  475. package/dist/esm/ic-hero.entry.js.map +1 -1
  476. package/dist/esm/ic-horizontal-scroll.entry.js +6 -6
  477. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  478. package/dist/esm/ic-input-component-container_4.entry.js +28 -14
  479. package/dist/esm/ic-input-component-container_4.entry.js.map +1 -1
  480. package/dist/esm/ic-layout-grid-item.entry.js +2 -2
  481. package/dist/esm/ic-layout-grid-item.entry.js.map +1 -1
  482. package/dist/esm/ic-layout-grid.entry.js +2 -2
  483. package/dist/esm/ic-layout-grid.entry.js.map +1 -1
  484. package/dist/esm/ic-link.entry.js +2 -2
  485. package/dist/esm/ic-link.entry.js.map +1 -1
  486. package/dist/esm/ic-menu-group.entry.js +2 -2
  487. package/dist/esm/ic-menu-group.entry.js.map +1 -1
  488. package/dist/esm/ic-menu-item.entry.js +1 -1
  489. package/dist/esm/ic-menu.entry.js +23 -7
  490. package/dist/esm/ic-menu.entry.js.map +1 -1
  491. package/dist/esm/ic-navigation-button.entry.js +1 -1
  492. package/dist/esm/ic-navigation-group.entry.js +2 -2
  493. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  494. package/dist/esm/ic-navigation-item.entry.js +1 -1
  495. package/dist/esm/ic-navigation-menu.entry.js +5 -5
  496. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  497. package/dist/esm/ic-page-header.entry.js +7 -7
  498. package/dist/esm/ic-page-header.entry.js.map +1 -1
  499. package/dist/esm/ic-pagination_4.entry.js +52 -37
  500. package/dist/esm/ic-pagination_4.entry.js.map +1 -1
  501. package/dist/esm/ic-popover-menu.entry.js +5 -5
  502. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  503. package/dist/esm/ic-radio-group.entry.js +14 -7
  504. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  505. package/dist/esm/ic-radio-option.entry.js +6 -6
  506. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  507. package/dist/esm/ic-search-bar.entry.js +10 -10
  508. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  509. package/dist/esm/ic-section-container.entry.js +2 -2
  510. package/dist/esm/ic-section-container.entry.js.map +1 -1
  511. package/dist/esm/ic-side-navigation.entry.js +5 -5
  512. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  513. package/dist/esm/ic-skeleton.entry.js +2 -2
  514. package/dist/esm/ic-skeleton.entry.js.map +1 -1
  515. package/dist/esm/ic-skip-link.entry.js +2 -2
  516. package/dist/esm/ic-skip-link.entry.js.map +1 -1
  517. package/dist/esm/ic-status-tag.entry.js +3 -3
  518. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  519. package/dist/esm/ic-step.entry.js +66 -54
  520. package/dist/esm/ic-step.entry.js.map +1 -1
  521. package/dist/esm/ic-stepper.entry.js +20 -3
  522. package/dist/esm/ic-stepper.entry.js.map +1 -1
  523. package/dist/esm/ic-switch.entry.js +5 -5
  524. package/dist/esm/ic-switch.entry.js.map +1 -1
  525. package/dist/esm/ic-tab-context.entry.js +10 -2
  526. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  527. package/dist/esm/ic-tab-group.entry.js +3 -3
  528. package/dist/esm/ic-tab-group.entry.js.map +1 -1
  529. package/dist/esm/ic-tab-panel.entry.js +2 -2
  530. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  531. package/dist/esm/ic-tab.entry.js +1 -1
  532. package/dist/esm/ic-table-of-contents.entry.js +359 -0
  533. package/dist/esm/ic-table-of-contents.entry.js.map +1 -0
  534. package/dist/esm/ic-theme.entry.js +2 -2
  535. package/dist/esm/ic-theme.entry.js.map +1 -1
  536. package/dist/esm/ic-time-input.entry.js +11 -11
  537. package/dist/esm/ic-time-input.entry.js.map +1 -1
  538. package/dist/esm/ic-toast-region.entry.js +1 -1
  539. package/dist/esm/ic-toast-region.entry.js.map +1 -1
  540. package/dist/esm/ic-toast.entry.js +4 -4
  541. package/dist/esm/ic-toast.entry.js.map +1 -1
  542. package/dist/esm/ic-toggle-button-group.entry.js +3 -3
  543. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  544. package/dist/esm/ic-toggle-button.entry.js +3 -3
  545. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  546. package/dist/esm/ic-top-navigation.entry.js +1 -1
  547. package/dist/esm/ic-tree-item.entry.js +2 -2
  548. package/dist/esm/ic-tree-view.entry.js +6 -4
  549. package/dist/esm/ic-tree-view.entry.js.map +1 -1
  550. package/dist/esm/ic-typography.entry.js +3 -3
  551. package/dist/esm/ic-typography.entry.js.map +1 -1
  552. package/dist/esm/index-a7a720e7.js +4 -0
  553. package/dist/esm/loader.js +1 -1
  554. package/dist/esm/purify-6eaa9893.js +1363 -0
  555. package/dist/esm/purify-6eaa9893.js.map +1 -0
  556. package/dist/types/components/ic-data-table/story-data.d.ts +2 -11
  557. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.d.ts +3 -4
  558. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.types.d.ts +4 -0
  559. package/dist/types/components/ic-table-of-contents/ic-table-of-contents-item.d.ts +14 -0
  560. package/dist/types/components/ic-table-of-contents/ic-table-of-contents.d.ts +83 -0
  561. package/dist/types/components/ic-table-of-contents/ic-table-of-contents.stories.d.ts +90 -0
  562. package/dist/types/components/ic-table-of-contents/test/a11y/ic-table-of-contents.test.a11y.d.ts +1 -0
  563. package/dist/types/components.d.ts +83 -6
  564. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/utils/common-helpers.d.ts +2 -0
  565. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/utils/constants.d.ts +44 -0
  566. package/dist/types/utils/types.d.ts +1 -0
  567. package/hydrate/index.js +2178 -313
  568. package/hydrate/index.mjs +2178 -313
  569. package/package.json +4 -4
  570. package/dist/cjs/helpers-56717660.js.map +0 -1
  571. package/dist/core/p-20374e30.entry.js +0 -2
  572. package/dist/core/p-2f4f4aea.entry.js +0 -2
  573. package/dist/core/p-2f4f4aea.entry.js.map +0 -1
  574. package/dist/core/p-31d6d587.entry.js.map +0 -1
  575. package/dist/core/p-3a73a9b7.entry.js +0 -2
  576. package/dist/core/p-3a73a9b7.entry.js.map +0 -1
  577. package/dist/core/p-45dd12ee.entry.js.map +0 -1
  578. package/dist/core/p-518a8e87.entry.js.map +0 -1
  579. package/dist/core/p-558936fb.entry.js +0 -2
  580. package/dist/core/p-558936fb.entry.js.map +0 -1
  581. package/dist/core/p-59048c2a.entry.js.map +0 -1
  582. package/dist/core/p-5ac30e1f.entry.js +0 -2
  583. package/dist/core/p-5ac30e1f.entry.js.map +0 -1
  584. package/dist/core/p-6796acff.entry.js +0 -2
  585. package/dist/core/p-6796acff.entry.js.map +0 -1
  586. package/dist/core/p-7d2d067f.entry.js +0 -2
  587. package/dist/core/p-7d2d067f.entry.js.map +0 -1
  588. package/dist/core/p-91646e38.entry.js +0 -2
  589. package/dist/core/p-91646e38.entry.js.map +0 -1
  590. package/dist/core/p-ad48c77c.entry.js +0 -2
  591. package/dist/core/p-ad48c77c.entry.js.map +0 -1
  592. package/dist/core/p-afece95e.entry.js +0 -2
  593. package/dist/core/p-afece95e.entry.js.map +0 -1
  594. package/dist/core/p-b0462734.entry.js +0 -2
  595. package/dist/core/p-b0462734.entry.js.map +0 -1
  596. package/dist/core/p-bc7d730d.entry.js +0 -2
  597. package/dist/core/p-bc7d730d.entry.js.map +0 -1
  598. package/dist/core/p-be5df6a9.entry.js +0 -2
  599. package/dist/core/p-be5df6a9.entry.js.map +0 -1
  600. package/dist/core/p-efa95979.js +0 -2
  601. package/dist/core/p-efa95979.js.map +0 -1
  602. package/dist/core/p-efe2fbd7.entry.js +0 -2
  603. package/dist/core/p-efe2fbd7.entry.js.map +0 -1
  604. package/dist/core/p-f3201a0b.entry.js +0 -2
  605. package/dist/core/p-f3201a0b.entry.js.map +0 -1
  606. package/dist/core/p-f7d746d7.entry.js.map +0 -1
  607. package/dist/esm/helpers-f3928d01.js.map +0 -1
  608. /package/dist/core/{p-d47e200c.entry.js.map → p-05e0cadf.entry.js.map} +0 -0
  609. /package/dist/core/{p-8051e61b.entry.js.map → p-07365d6f.entry.js.map} +0 -0
  610. /package/dist/core/{p-c067e62c.entry.js.map → p-0e882f70.entry.js.map} +0 -0
  611. /package/dist/core/{p-364cc350.entry.js.map → p-18b793e0.entry.js.map} +0 -0
  612. /package/dist/core/{p-9863a070.entry.js.map → p-54da2d5f.entry.js.map} +0 -0
  613. /package/dist/core/{p-608a8a4d.entry.js.map → p-656b92d7.entry.js.map} +0 -0
  614. /package/dist/core/{p-fecef807.entry.js.map → p-6d4418e4.entry.js.map} +0 -0
  615. /package/dist/core/{p-b87e4485.entry.js.map → p-6e5fc63c.entry.js.map} +0 -0
  616. /package/dist/core/{p-f517f412.entry.js.map → p-8c841dc8.entry.js.map} +0 -0
  617. /package/dist/core/{p-9fffb01e.entry.js.map → p-9b68bee6.entry.js.map} +0 -0
  618. /package/dist/core/{p-9fe5e2eb.entry.js.map → p-a7a572d9.entry.js.map} +0 -0
  619. /package/dist/core/{p-1a5efa3e.entry.js.map → p-b10f5992.entry.js.map} +0 -0
  620. /package/dist/core/{p-cb4522ed.entry.js.map → p-ba26a1f0.entry.js.map} +0 -0
  621. /package/dist/core/{p-812a0246.entry.js.map → p-bf08d34c.entry.js.map} +0 -0
  622. /package/dist/core/{p-5c7c7205.entry.js.map → p-d77981a5.entry.js.map} +0 -0
  623. /package/dist/core/{p-b8938f93.entry.js.map → p-e4f1d72b.entry.js.map} +0 -0
  624. /package/dist/core/{p-b93e8ecb.entry.js.map → p-f591abc2.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"ic-time-input.entry.js","mappings":"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","names":[],"sources":["src/components/ic-time-input/ic-time-input.css?tag=ic-time-input&encapsulation=shadow","src/components/ic-time-input/ic-time-input.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n --ic-input-label-helpertext-padding: var(--ic-space-xs);\n --input-bg-color: var(--ic-time-picker-field-background);\n --ic-input-label-text-color: var(--ic-time-picker-label);\n --ic-input-label-helper-text-color: var(--ic-time-picker-subtitle);\n --border-color: var(--ic-time-picker-time-field-border-default);\n --border-color-disabled: var(--ic-time-picker-border-disabled);\n --border-color-hover: var(--ic-time-picker-time-field-border-hover);\n --border-color-pressed: var(--ic-time-picker-time-field-border-pressed);\n --border-error-color: var(--ic-time-picker-border-error);\n --border-error-color-hover: var(--ic-time-picker-border-error-hover);\n --border-error-color-pressed: var(--ic-time-picker-border-error-pressed);\n --border-success-color: var(--ic-time-picker-border-success);\n --border-success-color-hover: var(--ic-time-picker-border-success-hover);\n --border-success-color-pressed: var(--ic-time-picker-border-success-pressed);\n --border-warning-color: var(--ic-time-picker-border-warning);\n --border-warning-color-hover: var(--ic-time-picker-border-warning-hover);\n --border-warning-color-pressed: var(--ic-time-picker-border-warning-pressed);\n --input-width: calc((4 * var(--ic-space-xxl)) + var(--ic-space-xxs));\n}\n\n:host(.ic-time-input-disabled) {\n --ic-input-label-text-color: var(--ic-time-picker-label-disabled);\n --ic-input-label-helper-text-color: var(--ic-time-picker-subtitle-disabled);\n}\n\n:host(.ic-time-input-disabled) input {\n color: var(--ic-time-picker-time-text-disabled);\n}\n\n:host(.ic-time-input-large) {\n --input-width: calc(\n (4 * var(--ic-space-xxl)) + var(--ic-space-xxs) + var(--ic-space-lg)\n );\n}\n\n:host(.ic-time-input-small) {\n --input-width: calc(\n (3 * var(--ic-space-xxl)) + var(--ic-space-xxs) + var(--ic-space-xl)\n );\n}\n\ninput {\n border: 0;\n height: 100%;\n padding: 0;\n outline: none;\n background: none;\n -moz-appearance: textfield;\n appearance: textfield;\n color: var(--ic-time-picker-time-text-default);\n caret-color: var(--ic-time-picker-typing-cursor);\n}\n\ninput::-webkit-outer-spin-button,\ninput::-webkit-inner-spin-button {\n -webkit-appearance: none;\n}\n\ninput:-webkit-autofill {\n box-shadow: 0 0 0 var(--ic-space-sm) var(--ic-color-background-primary) inset;\n -webkit-text-fill-color: var(--ic-time-picker-time-text-default) !important;\n}\n\ninput::placeholder {\n color: var(--ic-time-picker-field-placeholder-text);\n}\n\nic-input-component-container {\n cursor: text;\n}\n\nic-input-component-container .focus-indicator {\n padding: var(--ic-space-xxxs) var(--ic-space-xs);\n align-items: center;\n}\n\n.time-inputs {\n color: var(--ic-time-picker-field-placeholder-text);\n}\n\n.hour-input {\n width: 1.438rem;\n}\n\n.minute-input {\n width: 1.813rem;\n}\n\n.second-input,\n.second-input.fit-to-value {\n width: 2.313rem;\n}\n\n.fit-to-value {\n width: 1.25rem;\n}\n\n.sr-only {\n position: absolute;\n left: -9999px;\n}\n\n.input-container {\n width: 100%;\n display: flex;\n justify-content: space-between;\n align-items: center;\n position: relative;\n}\n\n.action-buttons {\n display: flex;\n align-items: center;\n}\n\n.show-clock-button-wrapper {\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.clear-button,\n.clock-button {\n border-radius: var(--ic-border-radius);\n transition: box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition);\n margin: 0;\n}\n\n.clear-button.hidden {\n display: none;\n}\n\n.clear-button:focus,\n.clock-button:focus,\n.clear-button:active,\n.clock-button:active {\n background-color: var(--ic-color-focus-inner) !important;\n box-shadow: inset 0 0 0 0.125rem var(--ic-color-focus-outer) !important;\n border-radius: 0.25rem;\n}\n\n.clock-button:focus,\n.clock-button:active {\n --ic-button-tertiary-text-active: var(--ic-atoms-input-clear-button-focus);\n --ic-button-tertiary-text-hover-active: var(\n --ic-atoms-input-clear-button-focus\n );\n --ic-button-tertiary-text-pressed-active: var(\n --ic-atoms-input-clear-button-focus\n );\n}\n\n.clear-button:focus,\n.clock-button:focus,\n.clear-button:active *,\n.clock-button:active * {\n fill: var(--ic-atoms-input-clear-button-focus);\n}\n\n.clear-button svg {\n color: var(--ic-time-picker-clear-icon);\n}\n\n.clear-button:focus svg {\n color: var(--ic-atoms-input-clear-button-focus);\n}\n\n.divider {\n margin: 0 var(--ic-space-xxs);\n width: var(--ic-space-1px);\n background-color: var(--ic-atoms-input-divider);\n border-radius: var(--ic-space-1px);\n}\n\n.divider.small {\n height: var(--ic-space-md);\n}\n\n.divider.medium {\n height: calc(var(--ic-space-sm) + var(--ic-space-xs));\n}\n\n.divider.large {\n height: var(--ic-space-lg);\n}\n\nic-input-validation {\n --ic-input-validation-status-text-color: var(--ic-time-picker-status-text);\n --ic-input-validation-error: var(--ic-time-picker-icon-error);\n --ic-input-validation-warning-icon-color: var(--ic-time-picker-icon-warning);\n --ic-input-validation-success-icon-color: var(--ic-time-picker-icon-success);\n}\n\n@media (forced-colors: active) {\n .clear-button svg {\n color: currentColor;\n }\n}\n","/* eslint-disable react/jsx-no-bind */\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Prop,\n State,\n Host,\n Method,\n Watch,\n} from \"@stencil/core\";\nimport {\n IcDisableTimeSelection,\n IcInformationStatus,\n IcInformationStatusOrEmpty,\n IcSizes,\n IcThemeMode,\n IcTimeFormat,\n} from \"../../utils/types\";\nimport {\n isEmptyString,\n isNumeric,\n addFormResetListener,\n getInputDescribedByText,\n onComponentRequiredPropUndefined,\n removeDisabledFalse,\n removeFormResetListener,\n renderHiddenInput,\n} from \"../../utils/helpers\";\nimport Clear from \"../../assets/clear-icon.svg\";\nimport Clock from \"../../assets/clock.svg\";\n\nlet inputIds = 0;\n\n/**\n * @slot helper-text - Content is set as the helper text for the time input.\n */\n@Component({\n tag: \"ic-time-input\",\n styleUrl: \"ic-time-input.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class TimeInput {\n private DEFAULT_TIME_FORMAT: IcTimeFormat = \"HH:MM:SS\";\n private ARIA_INVALID = \"aria-invalid\";\n private ARIA_LABEL = \"aria-label\";\n private ARIA_LABELLED_BY = \"aria-labelledby\";\n private assistiveHintId: string;\n private hourInputEl?: HTMLInputElement;\n private minuteInputEl?: HTMLInputElement;\n private secondInputEl?: HTMLInputElement;\n private defaultHelperText: string;\n private EVENT_OBJECT_STRING = \"[object Event]\";\n private FIT_TO_VALUE = \"fit-to-value\";\n private initialValue = this.value;\n private inputCompContainerEl: HTMLIcInputComponentContainerElement;\n private inputsInOrder: HTMLInputElement[] = [];\n private isValidHour: boolean = true;\n private isValidMinute: boolean = true;\n private isValidSecond: boolean = true;\n private isValidTime: boolean = true;\n private isTimeSetFromKeyboardEvent: boolean = false;\n private preventAutoFormatting: boolean;\n private preventHourInput: boolean;\n private preventMinuteInput: boolean;\n private preventSecondInput: boolean;\n private previousSelectedTime: Date | null = null;\n private selectedTime: Date | null = null;\n private selectedTimeInfoEl?: HTMLSpanElement;\n private screenReaderInfoId: string;\n private selectedTimeInfoId: string;\n private externalSetTime: boolean = false;\n private clearInput: boolean = false;\n private maxTime: Date | null = null;\n private minTime: Date | null = null;\n\n @Element() el: HTMLIcTimeInputElement;\n\n @State() invalidTimeText: string;\n @State() clockFocused: boolean = false;\n @State() clearButtonFocused: boolean = false;\n @State() removeLabelledBy: boolean = false;\n @State() hour: string = \"\";\n @State() minute: string = \"\";\n @State() second: string = \"\";\n\n @Watch(\"hour\")\n @Watch(\"minute\")\n @Watch(\"second\")\n watchInputHandler(): void {\n if (\n this.emitTimePartChange &&\n !this.externalSetTime &&\n !this.clearInput &&\n !(this.hour && this.minute && this.second) &&\n this.selectedTime === null\n ) {\n this.emitIcChange(this.selectedTime);\n }\n }\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * An array of times that will be disabled in the time input. The times can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop() disableTimes: IcDisableTimeSelection[] = [];\n\n /**\n * If `true`, every individual input field completed will emit an icChange event.\n */\n @Prop() emitTimePartChange?: boolean = false;\n\n /**\n * The helper text that will be displayed for additional field guidance. This will default to the text \"Use format\" along with the `timeFormat` value.\n */\n @Prop({ mutable: true }) helperText: string | null;\n\n /**\n * If `true`, the helper text will be visually hidden, but still read out by screenreaders.\n */\n @Prop() hideHelperText: boolean = false;\n\n /**\n * If `true`, the label will be visually hidden, but will still be read out by screen readers.\n */\n @Prop() hideLabel?: boolean = false;\n\n /**\n * The ID for the input.\n */\n @Prop() inputId: string = `ic-time-input-${inputIds++}`;\n\n /**\n * The text to display as the validation message when an invalid time is entered.\n */\n @Prop() invalidTimeMessage: string = \"Please enter a valid time.\";\n\n /**\n * The label for the time input.\n */\n @Prop() label!: string;\n\n /**\n * The latest time that will be allowed. The value can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop() max: string | Date = \"\";\n @Watch(\"max\")\n watchMaxHandler(): void {\n this.maxTime = this.parseTime(this.max);\n }\n\n /**\n * The earliest time that will be allowed. The value can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop() min: string | Date = \"\";\n @Watch(\"min\")\n watchMinHandler(): void {\n this.minTime = this.parseTime(this.min);\n }\n\n /**\n * The name of the control, which is submitted with the form data.\n */\n @Prop() name: string = this.inputId;\n\n /**\n * If `true`, the input will require a value.\n */\n @Prop() required: boolean = false;\n @Watch(\"required\")\n watchRequiredHandler(): void {\n const labelEl = this.el.shadowRoot?.querySelector(\"label\");\n if (this.required) {\n const asteriskSpan = document.createElement(\"span\");\n asteriskSpan.setAttribute(\"id\", \"asterisk-span\");\n asteriskSpan.setAttribute(\"aria-hidden\", \"true\");\n asteriskSpan.textContent = \" *\";\n labelEl?.appendChild(asteriskSpan);\n } else {\n const asteriskSpan = this.el.shadowRoot?.querySelector(\"#asterisk-span\");\n if (asteriskSpan) {\n asteriskSpan.remove();\n }\n }\n }\n\n /**\n * If `true`, a button which clears the time input when clicked will be displayed.\n */\n @Prop() showClearButton?: boolean = true;\n\n /**\n * @internal If `true`, a button which displays the clock view when clicked will be displayed.\n */\n @Prop() showClockButton?: boolean = false;\n\n /**\n * The size of the time input to be displayed.\n */\n @Prop() size: IcSizes = \"medium\";\n\n /**\n * Sets the time picker to the dark or light theme colors. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * The format in which the time will be displayed.\n */\n @Prop() timeFormat: IcTimeFormat = this.DEFAULT_TIME_FORMAT;\n\n /**\n * The time period format: \"12\" for 12-hour, \"24\" for 24-hour. Defaults to \"24\".\n */\n @Prop() timePeriod: \"12\" | \"24\" = \"24\";\n\n /**\n * The value of the time input. The value can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop({ mutable: true }) value?: string | Date | null | undefined = \"\";\n\n /**\n * The validation status - e.g. 'error' | 'warning' | 'success'. This will override the built-in time validation.\n */\n @Prop({ mutable: true }) validationStatus: IcInformationStatusOrEmpty = \"\";\n\n /**\n * The text to display as the validation message. This will override the built-in time validation.\n */\n @Prop() validationText?: string = \"\";\n\n /**\n * @internal Emitted when the clock is opened.\n */\n @Event() clockButtonClicked: EventEmitter<{ value: Date | null }>;\n\n /**\n * Emitted when the input loses focus.\n */\n @Event() icBlur: EventEmitter<{ value: Date | null }>;\n\n /**\n * Emitted when the value has changed.\n */\n @Event() icChange: EventEmitter<{\n value: Date | null;\n timeObject: {\n hour: string | null;\n minute: string | null;\n second: string | null;\n };\n }>;\n\n /**\n * Emitted when the input gains focus.\n */\n @Event() icFocus: EventEmitter<{ value: Date | null }>;\n\n disconnectedCallback(): void {\n removeFormResetListener(this.el, this.handleFormReset);\n }\n\n componentWillLoad(): void {\n this.defaultHelperText = `Use format ${this.timeFormat}`;\n if (isEmptyString(this.helperText))\n this.helperText = this.defaultHelperText;\n if (this.value) {\n this.externalSetTime = true;\n this.setTime(this.value);\n }\n this.screenReaderInfoId = `${this.inputId}-screen-reader-info`;\n this.assistiveHintId = `${this.inputId}-assistive-hint`;\n this.selectedTimeInfoId = `${this.inputId}-selected-time-info`;\n addFormResetListener(this.el, this.handleFormReset);\n removeDisabledFalse(this.disabled, this.el);\n }\n\n componentDidLoad(): void {\n this.setInputsInOrder();\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Time Input\"\n );\n if (this.value) {\n this.updateInputValues(this.hour, this.minute, this.second);\n this.inputsInOrder.forEach((input) => {\n input.classList.add(this.FIT_TO_VALUE);\n });\n }\n this.setAriaInvalid(\n this.isValidHour,\n this.isValidMinute,\n this.isValidSecond\n );\n if (this.value) {\n this.notifyScreenReaderSelectedTime();\n }\n this.inputsInOrder.forEach((input) => {\n input.addEventListener(\"input\", this.handleInput);\n input.addEventListener(\"focus\", this.handleFocus);\n input.addEventListener(\"blur\", this.handleBlur);\n });\n this.watchRequiredHandler();\n }\n\n componentWillUpdate(): void {\n if (isEmptyString(this.helperText))\n this.helperText = this.defaultHelperText;\n if (!this.isTimeSetFromKeyboardEvent) this.setTime(this.value);\n this.setAriaInvalid(\n this.isValidHour,\n this.isValidMinute,\n this.isValidSecond\n );\n this.handleTimeChange(false);\n this.isTimeSetFromKeyboardEvent = false;\n }\n\n componentDidRender(): void {\n if (this.removeLabelledBy) {\n this.removeAriaLabelledBy();\n return;\n }\n this.setAriaLabelledBy();\n }\n\n /**\n * Returns the value as a Date object\n * @returns Date\n */\n @Method()\n async getTime(): Promise<Date | null> {\n return this.selectedTime;\n }\n\n /**\n * @internal Used to enable other components to invoke an IcChange event from the input.\n */\n @Method()\n async triggerIcChange(t: Date | null): Promise<void> {\n this.externalSetTime = true;\n this.setTime(t);\n this.emitIcChange(t);\n this.externalSetTime = false;\n }\n\n private setInputPasteValue = (\n input: EventTarget | null,\n pastedValue: string\n ) => {\n if (input) {\n const inputEl = input as HTMLInputElement;\n inputEl.value = pastedValue;\n inputEl.classList.add(this.FIT_TO_VALUE);\n }\n };\n\n private parseTime = (value: string | Date): Date | null => {\n if (!value) return null;\n if (value instanceof Date) return value;\n const parts = value.split(\":\");\n if (parts.length >= 2) {\n const d = new Date();\n d.setHours(+parts[0], +parts[1], parts[2] ? +parts[2] : 0, 0);\n return d;\n }\n return null;\n };\n\n private isHHMMFormat = () => this.timeFormat === \"HH:MM\";\n\n private isKeyboardOrEvent = (event: Event) => {\n return (\n Object.prototype.toString.call(event) === this.EVENT_OBJECT_STRING ||\n Object.prototype.toString.call(event) === \"[object KeyboardEvent]\"\n );\n };\n\n private setTimeValidity = () => {\n const minHour = 0;\n const maxHour = this.timePeriod === \"12\" ? 11 : 23;\n if (!isEmptyString(this.hour)) {\n this.isValidHour = +this.hour >= minHour && +this.hour <= maxHour;\n } else {\n this.isValidHour = true;\n }\n if (!isEmptyString(this.minute)) {\n this.isValidMinute = +this.minute >= 0 && +this.minute <= 59;\n } else {\n this.isValidMinute = true;\n }\n if (!this.isHHMMFormat()) {\n if (!isEmptyString(this.second)) {\n this.isValidSecond = +this.second >= 0 && +this.second <= 59;\n } else {\n this.isValidSecond = true;\n }\n } else {\n this.isValidSecond = true;\n }\n };\n\n private setInputValue = (input: HTMLInputElement, clear = false) => {\n const newValue = clear ? \"\" : input.value;\n if (input === this.hourInputEl) {\n this.hour = newValue;\n } else if (input === this.minuteInputEl) {\n this.minute = newValue;\n } else if (input === this.secondInputEl && !this.isHHMMFormat()) {\n this.second = newValue;\n }\n this.setValidationMessage();\n };\n\n private setPreventInput = (input: HTMLInputElement, isPrevented: boolean) => {\n if (input === this.hourInputEl) {\n this.preventHourInput = isPrevented;\n } else if (input === this.minuteInputEl) {\n this.preventMinuteInput = isPrevented;\n } else if (input === this.secondInputEl) {\n this.preventSecondInput = isPrevented;\n }\n };\n\n private setValidationMessage = () => {\n this.maxTime = this.parseTime(this.max);\n this.minTime = this.parseTime(this.min);\n this.setTimeValidity();\n let outOfBoundsMsg = \"\";\n let isDisabledTime = false;\n if (\n !isEmptyString(this.hour) &&\n !isEmptyString(this.minute) &&\n (this.isHHMMFormat() || !isEmptyString(this.second))\n ) {\n this.selectedTime = this.convertToTime(\n this.hour,\n this.minute,\n this.isHHMMFormat() ? \"00\" : this.second\n );\n this.isValidTime =\n !!this.selectedTime &&\n this.selectedTime.getHours() == +this.hour &&\n this.selectedTime.getMinutes() == +this.minute &&\n (this.isHHMMFormat() || this.selectedTime.getSeconds() == +this.second);\n\n if (\n this.selectedTime &&\n Array.isArray(this.disableTimes) &&\n this.disableTimes.length > 0\n ) {\n isDisabledTime = this.disableTimes.some((t) => {\n if (\n typeof t === \"object\" &&\n t !== null &&\n \"start\" in t &&\n \"end\" in t\n ) {\n const start = this.parseTime(t.start);\n const end = this.parseTime(t.end);\n if (start && end) {\n return this.selectedTime! >= start && this.selectedTime! <= end;\n }\n return false;\n }\n const parsed = this.parseTime(t as string | Date);\n return (\n parsed &&\n parsed.getHours() === this.selectedTime!.getHours() &&\n parsed.getMinutes() === this.selectedTime!.getMinutes() &&\n parsed.getSeconds() === this.selectedTime!.getSeconds()\n );\n });\n if (isDisabledTime) {\n this.isValidTime = false;\n outOfBoundsMsg = this.invalidTimeMessage;\n }\n }\n\n if (this.selectedTime && !isDisabledTime) {\n if (this.minTime && this.selectedTime < this.minTime) {\n this.isValidTime = false;\n outOfBoundsMsg = `Please enter a time after ${this.formatTime(\n this.minTime\n )}.`;\n } else if (this.maxTime && this.selectedTime > this.maxTime) {\n this.isValidTime = false;\n outOfBoundsMsg = `Please enter a time before ${this.formatTime(\n this.maxTime\n )}.`;\n }\n }\n if (!this.isValidTime) {\n this.inputsInOrder.forEach((input) =>\n input.setAttribute(this.ARIA_INVALID, \"true\")\n );\n } else {\n this.inputsInOrder.forEach((input) =>\n input.removeAttribute(this.ARIA_INVALID)\n );\n }\n } else {\n this.selectedTime = null;\n }\n if (\n !(\n this.isValidHour &&\n this.isValidMinute &&\n this.isValidSecond &&\n this.isValidTime\n )\n ) {\n this.invalidTimeText = outOfBoundsMsg || this.invalidTimeMessage;\n } else {\n this.invalidTimeText = \"\";\n }\n };\n\n private formatTime = (time: Date): string => {\n const hh = time.getHours().toString().padStart(2, \"0\");\n const mm = time.getMinutes().toString().padStart(2, \"0\");\n const ss = time.getSeconds().toString().padStart(2, \"0\");\n return this.isHHMMFormat() ? `${hh}:${mm}` : `${hh}:${mm}:${ss}`;\n };\n\n private handleInput = (event: Event) => {\n const inputEvent = event as InputEvent;\n const input = event.target as HTMLInputElement;\n if (input !== this.hourInputEl) {\n if (\n inputEvent.inputType !== \"deleteContentBackward\" &&\n !this.preventAutoFormatting\n ) {\n if (\n input.value.length === 1 &&\n +input.value >= 6 &&\n +input.value <= 9\n ) {\n this.setInputValue(input);\n this.notifyScreenReader(input);\n this.moveToNextInput(input);\n }\n if (input.value.length === 2) {\n this.setInputValue(input);\n this.setPreventInput(input, true);\n this.notifyScreenReader(input);\n this.moveToNextInput(input);\n } else {\n this.setPreventInput(input, false);\n }\n } else if (this.preventAutoFormatting) {\n if (input.value.length === 2 && !this.isKeyboardOrEvent(event)) {\n this.setInputValue(input);\n this.setPreventInput(input, true);\n this.moveToNextInput(input);\n } else {\n this.setInputValue(input);\n }\n }\n if (input.value.length !== 2) {\n this.setPreventInput(input, false);\n }\n } else {\n if (input.value.length === 2) {\n this.setInputValue(input);\n if (\n Object.prototype.toString.call(event) !== this.EVENT_OBJECT_STRING\n ) {\n this.moveToNextInput(input);\n }\n this.setPreventInput(input, true);\n } else {\n this.setInputValue(input, true);\n this.setPreventInput(input, false);\n }\n }\n this.setFitToValueStyling(input);\n if (input.value.length === 0) {\n this.setInputValue(input, true);\n this.setValidationMessage();\n }\n this.notifyScreenReader(input);\n };\n\n private handleKeyDown = (event: KeyboardEvent, isInputPrevented: boolean) => {\n const input = event.target as HTMLInputElement;\n const eventKey = event.key?.toLowerCase();\n const regex =\n /-?\\d*\\.?\\d+(e[-+]?\\d+)?|[:]|arrowup|arrowdown|arrowleft|arrowright|shift|tab|backspace|delete/;\n if (\n !regex.test(eventKey) &&\n !(\n (event.ctrlKey || event.metaKey) &&\n (eventKey === \"v\" || eventKey === \"c\")\n )\n ) {\n event.preventDefault();\n }\n switch (eventKey) {\n case \":\":\n case \"arrowright\":\n event.preventDefault();\n this.moveToNextInput(input);\n break;\n case \"arrowleft\":\n event.preventDefault();\n this.moveToPreviousInput(input);\n break;\n case \"arrowup\":\n case \"arrowdown\":\n this.preventAutoFormatting = true;\n this.handleUpDownArrowKeyPress(input, event);\n break;\n case \"backspace\":\n if (input.value.length === 0) {\n event.preventDefault();\n this.moveToPreviousInput(input);\n }\n break;\n default:\n break;\n }\n this.preventInput(event, isInputPrevented);\n this.isTimeSetFromKeyboardEvent = true;\n };\n\n private handleFocus = (event: FocusEvent) => {\n const input = event.target as HTMLInputElement;\n input.select();\n };\n\n private handleBlur = (event: FocusEvent) => {\n const input = event.target;\n if (input) {\n this.autocompleteInput(input as HTMLInputElement);\n }\n };\n\n private handleUpDownArrowKeyPress = (\n input: HTMLInputElement,\n event: KeyboardEvent\n ) => {\n let minValue = 0;\n let maxValue = 59;\n if (input === this.hourInputEl) {\n minValue = 0;\n maxValue = this.timePeriod === \"12\" ? 11 : 23;\n }\n let val = +input.value;\n if (event.key === \"ArrowUp\") {\n val = val + 1;\n if (val > maxValue) val = minValue;\n input.value = val.toString().padStart(2, \"0\");\n this.notifyScreenReader(input);\n }\n if (event.key === \"ArrowDown\") {\n val = val - 1;\n if (val < minValue) val = maxValue;\n input.value = val.toString().padStart(2, \"0\");\n this.notifyScreenReader(input);\n }\n this.setInputValue(input);\n this.setFitToValueStyling(input);\n };\n\n private handleTimeChange = (force: boolean) => {\n if (force || this.selectedTime !== this.previousSelectedTime) {\n if (this.value) {\n this.inputsInOrder.forEach((input) => {\n input.classList.add(this.FIT_TO_VALUE);\n });\n }\n if (\n this.hour &&\n this.minute &&\n (this.isHHMMFormat() || this.second) &&\n this.invalidTimeText === \"\"\n ) {\n this.setValueAndEmitChange(this.selectedTime);\n this.notifyScreenReaderSelectedTime();\n } else if (\n !(this.selectedTime === null && this.previousSelectedTime === null) &&\n this.selectedTimeInfoEl\n ) {\n this.setValueAndEmitChange(null);\n this.selectedTimeInfoEl.textContent = \"\";\n }\n this.previousSelectedTime = this.selectedTime;\n if (!this.isTimeSetFromKeyboardEvent) {\n this.updateInputValues(this.hour, this.minute, this.second);\n }\n }\n };\n\n private setValueAndEmitChange = (value: Date | null) => {\n if (this.value !== value) {\n this.emitIcChange(value);\n this.value = value;\n }\n };\n\n private emitIcChange = (t: Date | null) => {\n this.selectedTime = t;\n this.icChange.emit({\n value: t,\n timeObject: {\n hour: this.hour === \"\" ? null : this.hour,\n minute: this.minute === \"\" ? null : this.minute,\n second: this.second === \"\" ? null : this.second,\n },\n });\n };\n\n private setTime = (time?: string | Date | null) => {\n if (time === null || time === \"\" || time === undefined) {\n if (this.hour) this.hour = \"\";\n if (this.minute) this.minute = \"\";\n if (this.second) this.second = \"\";\n this.inputsInOrder.forEach((input) => {\n input.classList.remove(this.FIT_TO_VALUE);\n this.setPreventInput(input, false);\n });\n this.handleTimeChange(true);\n } else {\n if (typeof time === \"string\") {\n const zuluMatch = time.match(\n /^(\\d{2}):(\\d{2}):(\\d{2})(?:\\.(\\d{1,3}))?Z?$/\n );\n if (zuluMatch) {\n this.hour = zuluMatch[1];\n this.minute = zuluMatch[2];\n this.second = zuluMatch[3];\n } else {\n const parts = time.split(\":\");\n this.hour = parts[0] || \"\";\n this.minute = parts[1] || \"\";\n this.second = parts[2] || \"\";\n }\n } else if (time instanceof Date) {\n this.hour = time.getHours().toString().padStart(2, \"0\");\n this.minute = time.getMinutes().toString().padStart(2, \"0\");\n this.second = time.getSeconds().toString().padStart(2, \"0\");\n }\n }\n this.setValidationMessage();\n };\n\n private setAriaInvalid = (\n validHour: boolean,\n validMinute: boolean,\n validSecond: boolean\n ) => {\n if (this.inputsInOrder.length) {\n this.inputsInOrder.forEach((input) => {\n input.removeAttribute(this.ARIA_INVALID);\n });\n if (!validHour) {\n this.hourInputEl?.setAttribute(this.ARIA_INVALID, \"true\");\n }\n if (!validMinute) {\n this.minuteInputEl?.setAttribute(this.ARIA_INVALID, \"true\");\n }\n if (!validSecond) {\n this.secondInputEl?.setAttribute(this.ARIA_INVALID, \"true\");\n }\n if (!(validHour && validMinute && validSecond)) {\n this.inputsInOrder.forEach((input) => {\n input.setAttribute(this.ARIA_INVALID, \"true\");\n });\n }\n }\n };\n\n private handleClear = () => {\n this.clearInput = true;\n if (this.hourInputEl) {\n this.hourInputEl.value = \"\";\n }\n if (this.minuteInputEl) {\n this.minuteInputEl.value = \"\";\n }\n if (!this.isHHMMFormat() && this.secondInputEl) {\n this.secondInputEl.value = \"\";\n }\n this.hour = \"\";\n this.minute = \"\";\n this.second = \"\";\n this.handleTimeChange(true);\n this.inputsInOrder.forEach((input) => {\n input.classList.remove(this.FIT_TO_VALUE);\n this.setPreventInput(input, false);\n });\n this.clearInput = false;\n this.isTimeSetFromKeyboardEvent = false;\n this.setValidationMessage();\n this.invalidTimeText = \"\";\n if (this.hourInputEl) {\n this.hourInputEl.focus();\n }\n };\n\n private notifyScreenReaderSelectedTime = () => {\n if (this.selectedTime && this.selectedTimeInfoEl) {\n if (this.isHHMMFormat()) {\n this.selectedTimeInfoEl.textContent = `Selected time: ${this.selectedTime\n .getHours()\n .toString()\n .padStart(2, \"0\")}:${this.selectedTime\n .getMinutes()\n .toString()\n .padStart(2, \"0\")}`;\n } else {\n this.selectedTimeInfoEl.textContent = `Selected time: ${this.selectedTime\n .getHours()\n .toString()\n .padStart(2, \"0\")}:${this.selectedTime\n .getMinutes()\n .toString()\n .padStart(2, \"0\")}:${this.selectedTime\n .getSeconds()\n .toString()\n .padStart(2, \"0\")}`;\n }\n }\n };\n\n private setFitToValueStyling = (input: HTMLInputElement) => {\n if (input.value) {\n input.classList.add(this.FIT_TO_VALUE);\n } else {\n input.classList.remove(this.FIT_TO_VALUE);\n }\n };\n\n private handleHostBlur = () => {\n this.removeLabelledBy = false;\n this.icBlur.emit({ value: this.selectedTime });\n };\n\n private handleHostFocus = () => {\n if (\n this.el.shadowRoot?.activeElement?.id.match(/(hour|minute|second)-input$/)\n ) {\n this.removeLabelledBy = false;\n } else {\n this.removeLabelledBy = true;\n }\n this.icFocus.emit({ value: this.selectedTime });\n };\n\n private handleFormReset = () => {\n this.setTime(this.initialValue);\n this.setValidationMessage();\n this.handleTimeChange(false);\n };\n\n private preventInput = (event: KeyboardEvent, isInputPrevented: boolean) => {\n const key = event.key;\n const input = event.target as HTMLInputElement;\n let selectedString;\n if (input) {\n selectedString = input.value.substring(\n input.selectionStart || 0,\n input.selectionEnd || undefined\n );\n }\n if (\n key === \"e\" ||\n key === \".\" ||\n key === \"-\" ||\n (event.key >= \"0\" &&\n event.key <= \"9\" &&\n isInputPrevented &&\n !selectedString)\n ) {\n event.preventDefault();\n }\n };\n\n private moveToNextInput = (currentInput: HTMLInputElement) => {\n this.preventAutoFormatting = false;\n this.inputsInOrder[\n this.inputsInOrder.findIndex((input) => input === currentInput) + 1\n ]?.focus();\n };\n\n private moveToPreviousInput = (currentInput: HTMLInputElement) => {\n this.preventAutoFormatting = false;\n this.inputsInOrder[\n this.inputsInOrder.findIndex((input) => input === currentInput) - 1\n ]?.focus();\n };\n\n private autocompleteInput = (input: HTMLInputElement) => {\n const inputValue = input.value;\n if (inputValue.length === 1) {\n input.value = `0${inputValue}`;\n }\n if (input.value) {\n this.setInputValue(input);\n }\n };\n\n private convertToTime = (\n hour: string,\n minute: string,\n second: string\n ): Date | null => {\n if (\n !isEmptyString(hour) &&\n !isEmptyString(minute) &&\n (this.isHHMMFormat() || !isEmptyString(second))\n ) {\n const d = new Date();\n d.setHours(+hour, +minute, this.isHHMMFormat() ? 0 : +second, 0);\n return d;\n } else {\n return null;\n }\n };\n\n private setInputsInOrder = () => {\n this.inputsInOrder = [];\n const shadowInputs = this.el.shadowRoot?.querySelectorAll(\"input\");\n if (shadowInputs) {\n shadowInputs.forEach((input) => this.inputsInOrder.push(input));\n }\n };\n\n private updateInputValues = (\n hour: string,\n minute: string,\n second: string\n ) => {\n if (this.hourInputEl && this.minuteInputEl && this.secondInputEl) {\n this.hourInputEl.value = hour;\n this.minuteInputEl.value = minute;\n this.secondInputEl.value = second;\n }\n };\n\n private removeAriaLabelledBy = () => {\n this.inputCompContainerEl?.removeAttribute(this.ARIA_LABELLED_BY);\n };\n\n private setAriaLabelledBy = () => {\n if (\n this.disabled &&\n this.inputCompContainerEl?.getAttribute(this.ARIA_LABELLED_BY)\n ) {\n this.removeAriaLabelledBy();\n return;\n }\n if (this.disabled) {\n return;\n }\n const labelEl = this.el.shadowRoot?.querySelector(\"label\");\n const labelId = `${this.inputId}-label`;\n if (labelEl !== null && labelEl !== undefined) {\n labelEl.id = labelId;\n }\n const hasValidation =\n !isEmptyString(this.validationStatus) ||\n !isEmptyString(this.invalidTimeText);\n const labelledBy = `${labelEl?.id ?? \"\"} ${\n this.screenReaderInfoId\n } ${getInputDescribedByText(\n this.el,\n this.inputId,\n this.helperText !== \"\" && this.helperText !== this.defaultHelperText,\n hasValidation\n )} ${this.selectedTime ? this.selectedTimeInfoId : \"\"} ${\n this.assistiveHintId\n }`;\n this.inputCompContainerEl?.setAttribute(this.ARIA_LABELLED_BY, labelledBy);\n };\n\n private getInputsInOrder = () => {\n const timeParts = this.timeFormat.split(\":\");\n return timeParts.map((part: string) => {\n switch (part.substring(0, 1)) {\n case \"H\":\n return (\n <input\n class=\"hour-input\"\n id=\"hour-input\"\n ref={(el) => (this.hourInputEl = el)}\n aria-label=\"hour\"\n placeholder=\"HH\"\n disabled={this.disabled}\n inputmode=\"number\"\n pattern=\"[0-9]*\"\n onPaste={this.handlePaste}\n onKeyDown={(event) =>\n this.handleKeyDown(event, this.preventHourInput)\n }\n ></input>\n );\n case \"M\":\n return (\n <input\n id=\"minute-input\"\n class=\"minute-input\"\n ref={(el) => (this.minuteInputEl = el)}\n aria-label=\"minute\"\n placeholder=\"MM\"\n disabled={this.disabled}\n inputmode=\"number\"\n pattern=\"[0-9]*\"\n onPaste={this.handlePaste}\n onKeyDown={(event) =>\n this.handleKeyDown(event, this.preventMinuteInput)\n }\n ></input>\n );\n case \"S\":\n if (!this.isHHMMFormat()) {\n return (\n <input\n id=\"second-input\"\n class=\"second-input\"\n ref={(el) => (this.secondInputEl = el)}\n aria-label=\"second\"\n placeholder=\"SS\"\n disabled={this.disabled}\n inputmode=\"number\"\n pattern=\"[0-9]*\"\n onPaste={this.handlePaste}\n onKeyDown={(event) =>\n this.handleKeyDown(event, this.preventSecondInput)\n }\n ></input>\n );\n }\n return null;\n default:\n return null;\n }\n });\n };\n\n private getDescOfInputsOrder = () => {\n return \"hour, minute, and second\";\n };\n\n private getScreenReaderInfo = (validationStatus: string) => {\n let inputDescriptors = \"\";\n if (this.required) {\n inputDescriptors += \"required\";\n }\n if (validationStatus === IcInformationStatus.Error) {\n inputDescriptors += \" invalid data\";\n }\n return inputDescriptors === \"\" ? \"\" : inputDescriptors + \", \";\n };\n\n private notifyScreenReader = (input: HTMLInputElement) => {\n const liveRegion = this.el.shadowRoot?.querySelector(\"#live-region\");\n if (liveRegion) {\n liveRegion.textContent = `${input.value}, ${input.getAttribute(\n this.ARIA_LABEL\n )}`;\n }\n };\n\n private handlePaste = (event: ClipboardEvent) => {\n event.preventDefault();\n const pastedValue = event.clipboardData?.getData(\"Text\") || \"\";\n const isValidTime = this.isPastedStringTimeValid(pastedValue);\n this.setPastedValueAndValidation(isValidTime, pastedValue, event);\n };\n\n private handleClearFocus = () => {\n this.removeLabelledBy = true;\n this.clearButtonFocused = true;\n this.isTimeSetFromKeyboardEvent = true;\n };\n\n private handleClearBlur = (ev: FocusEvent) => {\n this.clearButtonFocused = false;\n this.isTimeSetFromKeyboardEvent = true;\n const relatedTarget = ev.relatedTarget as HTMLElement | null;\n if (relatedTarget?.id === \"clock-button\") {\n this.removeLabelledBy = false;\n return;\n }\n if (relatedTarget?.id.match(/(minute|second)-input$/)) {\n this.removeLabelledBy = false;\n return;\n }\n this.removeLabelledBy = true;\n };\n\n private handleClockFocus = () => {\n this.clockFocused = true;\n };\n\n private handleClockBlur = () => {\n this.clockFocused = false;\n };\n\n private isPastedStringTimeValid = (value: string): string | false => {\n if (this.isHHMMFormat()) {\n if (/^\\d{2}:\\d{2}$/.test(value)) {\n return value;\n }\n } else {\n if (/^\\d{2}:\\d{2}:\\d{2}$/.test(value)) {\n return value;\n }\n if (/^\\d{2}:\\d{2}:\\d{2}Z$/.test(value)) {\n return value.replace(\"Z\", \"\");\n }\n const isoMatch = value.match(/T(\\d{2}:\\d{2}:\\d{2})/);\n if (isoMatch) {\n return isoMatch[1];\n }\n }\n return false;\n };\n\n private setPastedValueAndValidation = (\n isValidTime: string | false,\n pastedValue: string,\n event: ClipboardEvent\n ) => {\n if (isValidTime) {\n const timeParts = isValidTime.split(\":\");\n this.inputsInOrder.forEach((input, index) => {\n input.classList.add(this.FIT_TO_VALUE);\n const timeValue = timeParts[index] || \"\";\n input.value = timeValue.slice(0, 2);\n this.setInputValue(input);\n this.autocompleteInput(input);\n });\n if (this.isHHMMFormat() && this.second !== \"\") {\n this.second = \"\";\n }\n } else {\n const pasted = pastedValue.trim();\n if ((pasted.length === 1 || pasted.length === 2) && isNumeric(pasted)) {\n this.setInputPasteValue(event.target, pasted);\n this.setInputValue(event.target as HTMLInputElement);\n } else {\n this.invalidTimeText = `Please paste a valid ${(\n event.target as HTMLInputElement\n ).getAttribute(this.ARIA_LABEL)}`;\n this.validationStatus = IcInformationStatus.Error;\n }\n }\n };\n\n render() {\n const {\n inputId,\n label,\n disabled,\n helperText,\n hideHelperText,\n hideLabel,\n showClearButton,\n showClockButton,\n size,\n theme,\n } = this;\n const hasCustomValidation = !isEmptyString(this.validationStatus);\n const validationStatus = hasCustomValidation\n ? this.validationStatus\n : !isEmptyString(this.invalidTimeText)\n ? IcInformationStatus.Error\n : \"\";\n const assistiveHint = `Type or use the up and down arrow keys to change the values for the ${this.getDescOfInputsOrder()}.`;\n renderHiddenInput(\n true,\n this.el,\n this.name,\n this.convertToTime(this.hour, this.minute, this.second),\n this.disabled\n );\n const showDivider = !!(\n showClearButton &&\n !(\n isEmptyString(this.hour) &&\n isEmptyString(this.minute) &&\n isEmptyString(this.second)\n )\n );\n return (\n <Host\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n [`ic-time-input-disabled`]: disabled,\n [`ic-time-input-${size}`]: true,\n }}\n onBlur={this.handleHostBlur}\n onFocus={this.handleHostFocus}\n >\n <ic-input-container disabled={disabled}>\n {!(hideLabel && hideHelperText) && (\n <ic-input-label\n for={inputId}\n label={label}\n hideLabel={hideLabel}\n helperText={!hideHelperText ? helperText : \"\"}\n disabled={disabled}\n >\n <slot name=\"helper-text\" slot=\"helper-text\"></slot>\n </ic-input-label>\n )}\n <span id={this.screenReaderInfoId} class=\"sr-only\" aria-hidden=\"true\">\n {this.getScreenReaderInfo(validationStatus)}\n {hideLabel && `${label}\\n`}\n {hideHelperText && `${helperText}\\n`}\n {`${this.defaultHelperText}.`}\n </span>\n <span id={this.assistiveHintId} class=\"sr-only\" aria-hidden=\"true\">\n {assistiveHint}\n </span>\n <span id=\"live-region\" aria-live=\"assertive\" class=\"sr-only\"></span>\n <ic-input-component-container\n id={inputId}\n ref={(el: HTMLIcInputComponentContainerElement) =>\n (this.inputCompContainerEl = el)\n }\n disabled={disabled}\n validationStatus={validationStatus}\n size={size}\n role=\"group\"\n class={{ [`ic-theme-${theme}`]: theme !== \"inherit\" }}\n >\n <div class=\"input-container\">\n <div class=\"time-inputs\">\n {[\n this.getInputsInOrder()[0],\n \":\",\n this.getInputsInOrder()[1],\n !this.isHHMMFormat()\n ? [\":\", this.getInputsInOrder()[2]]\n : null,\n ]}\n </div>\n <div class=\"action-buttons\">\n {showClearButton && (\n <ic-button\n id=\"clear-button\"\n aria-label=\"Clear input\"\n class={{\n [\"clear-button\"]: true,\n [\"hidden\"]:\n isEmptyString(this.hour) &&\n isEmptyString(this.minute) &&\n isEmptyString(this.second),\n }}\n disabled={this.disabled}\n innerHTML={Clear}\n onClick={this.handleClear}\n onFocus={this.handleClearFocus}\n onBlur={this.handleClearBlur}\n variant=\"icon-tertiary\"\n theme={this.clearButtonFocused ? \"light\" : \"dark\"}\n size={size}\n ></ic-button>\n )}\n {showClockButton && (\n <div class=\"show-clock-button-wrapper\">\n <div class={{ divider: showDivider, [size]: true }}></div>\n <ic-button\n id=\"clock-button\"\n aria-label=\"Display clock\"\n aria-haspopup=\"dialog\"\n class=\"clock-button\"\n disabled={this.disabled}\n innerHTML={Clock}\n variant=\"icon-tertiary\"\n size={size}\n onFocus={this.handleClockFocus}\n onBlur={this.handleClockBlur}\n theme={this.clockFocused ? \"light\" : \"dark\"}\n ></ic-button>\n </div>\n )}\n </div>\n </div>\n </ic-input-component-container>\n <span id={this.selectedTimeInfoId} class=\"sr-only\" aria-live=\"polite\">\n <span\n ref={(el) => (this.selectedTimeInfoEl = el)}\n role=\"status\"\n ></span>\n </span>\n {(hasCustomValidation || !isEmptyString(this.invalidTimeText)) && (\n <ic-input-validation\n status={validationStatus}\n message={\n hasCustomValidation ? this.validationText : this.invalidTimeText\n }\n for={inputId}\n ></ic-input-validation>\n )}\n </ic-input-container>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-time-input.entry.js","mappings":"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","names":[],"sources":["src/components/ic-time-input/ic-time-input.css?tag=ic-time-input&encapsulation=shadow","src/components/ic-time-input/ic-time-input.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n --ic-input-label-helpertext-padding: var(--ic-space-xs);\n --input-bg-color: var(--ic-time-picker-field-background);\n --ic-input-label-text-color: var(--ic-time-picker-label);\n --ic-input-label-helper-text-color: var(--ic-time-picker-subtitle);\n --border-color: var(--ic-time-picker-time-field-border-default);\n --border-color-disabled: var(--ic-time-picker-border-disabled);\n --border-color-hover: var(--ic-time-picker-time-field-border-hover);\n --border-color-pressed: var(--ic-time-picker-time-field-border-pressed);\n --border-error-color: var(--ic-time-picker-border-error);\n --border-error-color-hover: var(--ic-time-picker-border-error-hover);\n --border-error-color-pressed: var(--ic-time-picker-border-error-pressed);\n --border-success-color: var(--ic-time-picker-border-success);\n --border-success-color-hover: var(--ic-time-picker-border-success-hover);\n --border-success-color-pressed: var(--ic-time-picker-border-success-pressed);\n --border-warning-color: var(--ic-time-picker-border-warning);\n --border-warning-color-hover: var(--ic-time-picker-border-warning-hover);\n --border-warning-color-pressed: var(--ic-time-picker-border-warning-pressed);\n --input-width: calc((4 * var(--ic-space-xxl)) + var(--ic-space-xxs));\n}\n\n:host(.ic-time-input-disabled) {\n --ic-input-label-text-color: var(--ic-time-picker-label-disabled);\n --ic-input-label-helper-text-color: var(--ic-time-picker-subtitle-disabled);\n}\n\n:host(.ic-time-input-disabled) input {\n color: var(--ic-time-picker-time-text-disabled);\n}\n\n:host(.ic-time-input-large) {\n --input-width: calc(\n (4 * var(--ic-space-xxl)) + var(--ic-space-xxs) + var(--ic-space-lg)\n );\n}\n\n:host(.ic-time-input-small) {\n --input-width: calc(\n (3 * var(--ic-space-xxl)) + var(--ic-space-xxs) + var(--ic-space-xl)\n );\n}\n\ninput {\n border: 0;\n height: 100%;\n padding: 0;\n outline: none;\n background: none;\n -moz-appearance: textfield;\n appearance: textfield;\n color: var(--ic-time-picker-time-text-default);\n caret-color: var(--ic-time-picker-typing-cursor);\n}\n\ninput::-webkit-outer-spin-button,\ninput::-webkit-inner-spin-button {\n -webkit-appearance: none;\n}\n\ninput:-webkit-autofill {\n box-shadow: 0 0 0 var(--ic-space-sm) var(--ic-color-background-primary) inset;\n -webkit-text-fill-color: var(--ic-time-picker-time-text-default) !important;\n}\n\ninput::placeholder {\n color: var(--ic-time-picker-field-placeholder-text);\n}\n\nic-input-component-container {\n cursor: text;\n}\n\nic-input-component-container .focus-indicator {\n padding: var(--ic-space-xxxs) var(--ic-space-xs);\n align-items: center;\n}\n\n.time-inputs {\n color: var(--ic-time-picker-field-placeholder-text);\n}\n\n.hour-input {\n width: 1.438rem;\n}\n\n.minute-input {\n width: 1.813rem;\n}\n\n.second-input,\n.second-input.fit-to-value {\n width: 2.313rem;\n}\n\n.fit-to-value {\n width: 1.25rem;\n}\n\n.sr-only {\n position: absolute;\n left: -9999px;\n}\n\n.input-container {\n width: 100%;\n display: flex;\n justify-content: space-between;\n align-items: center;\n position: relative;\n}\n\n.action-buttons {\n display: flex;\n align-items: center;\n}\n\n.show-clock-button-wrapper {\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.clear-button,\n.clock-button {\n border-radius: var(--ic-border-radius);\n transition: box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition);\n margin: 0;\n}\n\n.clear-button.hidden {\n display: none;\n}\n\n.clear-button:focus,\n.clock-button:focus,\n.clear-button:active,\n.clock-button:active {\n background-color: var(--ic-color-focus-inner) !important;\n box-shadow: inset 0 0 0 0.125rem var(--ic-color-focus-outer) !important;\n border-radius: 0.25rem;\n}\n\n.clock-button:focus,\n.clock-button:active {\n --ic-button-tertiary-text-active: var(--ic-atoms-input-clear-button-focus);\n --ic-button-tertiary-text-hover-active: var(\n --ic-atoms-input-clear-button-focus\n );\n --ic-button-tertiary-text-pressed-active: var(\n --ic-atoms-input-clear-button-focus\n );\n}\n\n.clear-button:focus,\n.clock-button:focus,\n.clear-button:active *,\n.clock-button:active * {\n fill: var(--ic-atoms-input-clear-button-focus);\n}\n\n.clear-button svg {\n color: var(--ic-time-picker-clear-icon);\n}\n\n.clear-button:focus svg {\n color: var(--ic-atoms-input-clear-button-focus);\n}\n\n.divider {\n margin: 0 var(--ic-space-xxs);\n width: var(--ic-space-1px);\n background-color: var(--ic-atoms-input-divider);\n border-radius: var(--ic-space-1px);\n}\n\n.divider.small {\n height: var(--ic-space-md);\n}\n\n.divider.medium {\n height: calc(var(--ic-space-sm) + var(--ic-space-xs));\n}\n\n.divider.large {\n height: var(--ic-space-lg);\n}\n\nic-input-validation {\n --ic-input-validation-status-text-color: var(--ic-time-picker-status-text);\n --ic-input-validation-error: var(--ic-time-picker-icon-error);\n --ic-input-validation-warning-icon-color: var(--ic-time-picker-icon-warning);\n --ic-input-validation-success-icon-color: var(--ic-time-picker-icon-success);\n}\n\n@media (forced-colors: active) {\n .clear-button svg {\n color: currentcolor;\n }\n}\n","/* eslint-disable react/jsx-no-bind */\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Prop,\n State,\n Host,\n Method,\n Watch,\n} from \"@stencil/core\";\nimport {\n IcDisableTimeSelection,\n IcInformationStatus,\n IcInformationStatusOrEmpty,\n IcSizes,\n IcThemeMode,\n IcTimeFormat,\n} from \"../../utils/types\";\nimport {\n isEmptyString,\n isNumeric,\n addFormResetListener,\n getInputDescribedByText,\n onComponentRequiredPropUndefined,\n removeDisabledFalse,\n removeFormResetListener,\n renderHiddenInput,\n} from \"../../utils/helpers\";\nimport Clear from \"../../assets/clear-icon.svg\";\nimport Clock from \"../../assets/clock.svg\";\n\nlet inputIds = 0;\n\n/**\n * @slot helper-text - Content is set as the helper text for the time input.\n */\n@Component({\n tag: \"ic-time-input\",\n styleUrl: \"ic-time-input.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class TimeInput {\n private DEFAULT_TIME_FORMAT: IcTimeFormat = \"HH:MM:SS\";\n private ARIA_INVALID = \"aria-invalid\";\n private ARIA_LABEL = \"aria-label\";\n private ARIA_LABELLED_BY = \"aria-labelledby\";\n private assistiveHintId: string;\n private hourInputEl?: HTMLInputElement;\n private minuteInputEl?: HTMLInputElement;\n private secondInputEl?: HTMLInputElement;\n private defaultHelperText: string;\n private EVENT_OBJECT_STRING = \"[object Event]\";\n private FIT_TO_VALUE = \"fit-to-value\";\n private initialValue = this.value;\n private inputCompContainerEl: HTMLIcInputComponentContainerElement;\n private inputsInOrder: HTMLInputElement[] = [];\n private isValidHour: boolean = true;\n private isValidMinute: boolean = true;\n private isValidSecond: boolean = true;\n private isValidTime: boolean = true;\n private isTimeSetFromKeyboardEvent: boolean = false;\n private preventAutoFormatting: boolean;\n private preventHourInput: boolean;\n private preventMinuteInput: boolean;\n private preventSecondInput: boolean;\n private previousSelectedTime: Date | null = null;\n private selectedTime: Date | null = null;\n private selectedTimeInfoEl?: HTMLSpanElement;\n private screenReaderInfoId: string;\n private selectedTimeInfoId: string;\n private externalSetTime: boolean = false;\n private clearInput: boolean = false;\n private maxTime: Date | null = null;\n private minTime: Date | null = null;\n\n @Element() el: HTMLIcTimeInputElement;\n\n @State() invalidTimeText: string;\n @State() clockFocused: boolean = false;\n @State() clearButtonFocused: boolean = false;\n @State() removeLabelledBy: boolean = false;\n @State() hour: string = \"\";\n @State() minute: string = \"\";\n @State() second: string = \"\";\n\n @Watch(\"hour\")\n @Watch(\"minute\")\n @Watch(\"second\")\n watchInputHandler(): void {\n if (\n this.emitTimePartChange &&\n !this.externalSetTime &&\n !this.clearInput &&\n !(this.hour && this.minute && this.second) &&\n this.selectedTime === null\n ) {\n this.emitIcChange(this.selectedTime);\n }\n }\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * An array of times that will be disabled in the time input. The times can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop() disableTimes: IcDisableTimeSelection[] = [];\n\n /**\n * If `true`, every individual input field completed will emit an icChange event.\n */\n @Prop() emitTimePartChange?: boolean = false;\n\n /**\n * The helper text that will be displayed for additional field guidance. This will default to the text \"Use format\" along with the `timeFormat` value.\n */\n @Prop({ mutable: true }) helperText: string | null;\n\n /**\n * If `true`, the helper text will be visually hidden, but still read out by screenreaders.\n */\n @Prop() hideHelperText: boolean = false;\n\n /**\n * If `true`, the label will be visually hidden, but will still be read out by screen readers.\n */\n @Prop() hideLabel?: boolean = false;\n\n /**\n * The ID for the input.\n */\n @Prop() inputId: string = `ic-time-input-${inputIds++}`;\n\n /**\n * The text to display as the validation message when an invalid time is entered.\n */\n @Prop() invalidTimeMessage: string = \"Please enter a valid time.\";\n\n /**\n * The label for the time input.\n */\n @Prop() label!: string;\n\n /**\n * The latest time that will be allowed. The value can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop() max: string | Date = \"\";\n @Watch(\"max\")\n watchMaxHandler(): void {\n this.maxTime = this.parseTime(this.max);\n }\n\n /**\n * The earliest time that will be allowed. The value can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop() min: string | Date = \"\";\n @Watch(\"min\")\n watchMinHandler(): void {\n this.minTime = this.parseTime(this.min);\n }\n\n /**\n * The name of the control, which is submitted with the form data.\n */\n @Prop() name: string = this.inputId;\n\n /**\n * If `true`, the input will require a value.\n */\n @Prop() required: boolean = false;\n @Watch(\"required\")\n watchRequiredHandler(): void {\n const labelEl = this.el.shadowRoot?.querySelector(\"label\");\n if (this.required) {\n const asteriskSpan = document.createElement(\"span\");\n asteriskSpan.setAttribute(\"id\", \"asterisk-span\");\n asteriskSpan.setAttribute(\"aria-hidden\", \"true\");\n asteriskSpan.textContent = \" *\";\n labelEl?.appendChild(asteriskSpan);\n } else {\n const asteriskSpan = this.el.shadowRoot?.querySelector(\"#asterisk-span\");\n if (asteriskSpan) {\n asteriskSpan.remove();\n }\n }\n }\n\n /**\n * If `true`, a button which clears the time input when clicked will be displayed.\n */\n @Prop() showClearButton?: boolean = true;\n\n /**\n * @internal If `true`, a button which displays the clock view when clicked will be displayed.\n */\n @Prop() showClockButton?: boolean = false;\n\n /**\n * The size of the time input to be displayed.\n */\n @Prop() size: IcSizes = \"medium\";\n\n /**\n * Sets the time picker to the dark or light theme colors. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * The format in which the time will be displayed.\n */\n @Prop() timeFormat: IcTimeFormat = this.DEFAULT_TIME_FORMAT;\n\n /**\n * The time period format: \"12\" for 12-hour, \"24\" for 24-hour. Defaults to \"24\".\n */\n @Prop() timePeriod: \"12\" | \"24\" = \"24\";\n\n /**\n * The value of the time input. The value can be in any format supported as `timeFormat`, in ISO 8601 time string format (`HH:MM:SS`) or as a JavaScript `Date` object.\n */\n @Prop({ mutable: true }) value?: string | Date | null | undefined = \"\";\n\n /**\n * The validation status - e.g. 'error' | 'warning' | 'success'. This will override the built-in time validation.\n */\n @Prop({ mutable: true }) validationStatus: IcInformationStatusOrEmpty = \"\";\n\n /**\n * The text to display as the validation message. This will override the built-in time validation.\n */\n @Prop() validationText?: string = \"\";\n\n /**\n * @internal Emitted when the clock is opened.\n */\n @Event() clockButtonClicked: EventEmitter<{ value: Date | null }>;\n\n /**\n * Emitted when the input loses focus.\n */\n @Event() icBlur: EventEmitter<{ value: Date | null }>;\n\n /**\n * Emitted when the value has changed.\n */\n @Event() icChange: EventEmitter<{\n value: Date | null;\n timeObject: {\n hour: string | null;\n minute: string | null;\n second: string | null;\n };\n }>;\n\n /**\n * Emitted when the input gains focus.\n */\n @Event() icFocus: EventEmitter<{ value: Date | null }>;\n\n disconnectedCallback(): void {\n removeFormResetListener(this.el, this.handleFormReset);\n }\n\n componentWillLoad(): void {\n this.defaultHelperText = `Use format ${this.timeFormat}`;\n if (isEmptyString(this.helperText))\n this.helperText = this.defaultHelperText;\n if (this.value) {\n this.externalSetTime = true;\n this.setTime(this.value);\n }\n this.screenReaderInfoId = `${this.inputId}-screen-reader-info`;\n this.assistiveHintId = `${this.inputId}-assistive-hint`;\n this.selectedTimeInfoId = `${this.inputId}-selected-time-info`;\n addFormResetListener(this.el, this.handleFormReset);\n removeDisabledFalse(this.disabled, this.el);\n }\n\n componentDidLoad(): void {\n this.setInputsInOrder();\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Time Input\"\n );\n if (this.value) {\n this.updateInputValues(this.hour, this.minute, this.second);\n this.inputsInOrder.forEach((input) => {\n input.classList.add(this.FIT_TO_VALUE);\n });\n }\n this.setAriaInvalid(\n this.isValidHour,\n this.isValidMinute,\n this.isValidSecond\n );\n if (this.value) {\n this.notifyScreenReaderSelectedTime();\n }\n this.inputsInOrder.forEach((input) => {\n input.addEventListener(\"input\", this.handleInput);\n input.addEventListener(\"focus\", this.handleFocus);\n input.addEventListener(\"blur\", this.handleBlur);\n });\n this.watchRequiredHandler();\n }\n\n componentWillUpdate(): void {\n if (isEmptyString(this.helperText))\n this.helperText = this.defaultHelperText;\n if (!this.isTimeSetFromKeyboardEvent) this.setTime(this.value);\n this.setAriaInvalid(\n this.isValidHour,\n this.isValidMinute,\n this.isValidSecond\n );\n this.handleTimeChange(false);\n this.isTimeSetFromKeyboardEvent = false;\n }\n\n componentDidRender(): void {\n if (this.removeLabelledBy) {\n this.removeAriaLabelledBy();\n return;\n }\n this.setAriaLabelledBy();\n }\n\n /**\n * Returns the value as a Date object\n * @returns Date\n */\n @Method()\n async getTime(): Promise<Date | null> {\n return this.selectedTime;\n }\n\n /**\n * @internal Used to enable other components to invoke an IcChange event from the input.\n */\n @Method()\n async triggerIcChange(t: Date | null): Promise<void> {\n this.externalSetTime = true;\n this.setTime(t);\n this.emitIcChange(t);\n this.externalSetTime = false;\n }\n\n private setInputPasteValue = (\n input: EventTarget | null,\n pastedValue: string\n ) => {\n if (input) {\n const inputEl = input as HTMLInputElement;\n inputEl.value = pastedValue;\n inputEl.classList.add(this.FIT_TO_VALUE);\n }\n };\n\n private parseTime = (value: string | Date): Date | null => {\n if (!value) return null;\n if (value instanceof Date) return value;\n const parts = value.split(\":\");\n if (parts.length >= 2) {\n const d = new Date();\n d.setHours(+parts[0], +parts[1], parts[2] ? +parts[2] : 0, 0);\n return d;\n }\n return null;\n };\n\n private isHHMMFormat = () => this.timeFormat === \"HH:MM\";\n\n private isKeyboardOrEvent = (event: Event) => {\n return (\n Object.prototype.toString.call(event) === this.EVENT_OBJECT_STRING ||\n Object.prototype.toString.call(event) === \"[object KeyboardEvent]\"\n );\n };\n\n private setTimeValidity = () => {\n const minHour = 0;\n const maxHour = this.timePeriod === \"12\" ? 12 : 23;\n if (!isEmptyString(this.hour)) {\n this.isValidHour = +this.hour >= minHour && +this.hour <= maxHour;\n } else {\n this.isValidHour = true;\n }\n if (!isEmptyString(this.minute)) {\n this.isValidMinute = +this.minute >= 0 && +this.minute <= 59;\n } else {\n this.isValidMinute = true;\n }\n if (!this.isHHMMFormat()) {\n if (!isEmptyString(this.second)) {\n this.isValidSecond = +this.second >= 0 && +this.second <= 59;\n } else {\n this.isValidSecond = true;\n }\n } else {\n this.isValidSecond = true;\n }\n };\n\n private setInputValue = (input: HTMLInputElement, clear = false) => {\n const newValue = clear ? \"\" : input.value;\n if (input === this.hourInputEl) {\n this.hour = newValue;\n } else if (input === this.minuteInputEl) {\n this.minute = newValue;\n } else if (input === this.secondInputEl && !this.isHHMMFormat()) {\n this.second = newValue;\n }\n this.setValidationMessage();\n };\n\n private setPreventInput = (input: HTMLInputElement, isPrevented: boolean) => {\n if (input === this.hourInputEl) {\n this.preventHourInput = isPrevented;\n } else if (input === this.minuteInputEl) {\n this.preventMinuteInput = isPrevented;\n } else if (input === this.secondInputEl) {\n this.preventSecondInput = isPrevented;\n }\n };\n\n private setValidationMessage = () => {\n this.maxTime = this.parseTime(this.max);\n this.minTime = this.parseTime(this.min);\n this.setTimeValidity();\n let outOfBoundsMsg = \"\";\n let isDisabledTime = false;\n if (\n !isEmptyString(this.hour) &&\n !isEmptyString(this.minute) &&\n (this.isHHMMFormat() || !isEmptyString(this.second))\n ) {\n this.selectedTime = this.convertToTime(\n this.hour,\n this.minute,\n this.isHHMMFormat() ? \"00\" : this.second\n );\n this.isValidTime =\n !!this.selectedTime &&\n this.selectedTime.getHours() == +this.hour &&\n this.selectedTime.getMinutes() == +this.minute &&\n (this.isHHMMFormat() || this.selectedTime.getSeconds() == +this.second);\n\n if (\n this.selectedTime &&\n Array.isArray(this.disableTimes) &&\n this.disableTimes.length > 0\n ) {\n isDisabledTime = this.disableTimes.some((t) => {\n if (\n typeof t === \"object\" &&\n t !== null &&\n \"start\" in t &&\n \"end\" in t\n ) {\n const start = this.parseTime(t.start);\n const end = this.parseTime(t.end);\n if (start && end) {\n return this.selectedTime! >= start && this.selectedTime! <= end;\n }\n return false;\n }\n const parsed = this.parseTime(t as string | Date);\n return (\n parsed &&\n parsed.getHours() === this.selectedTime!.getHours() &&\n parsed.getMinutes() === this.selectedTime!.getMinutes() &&\n parsed.getSeconds() === this.selectedTime!.getSeconds()\n );\n });\n if (isDisabledTime) {\n this.isValidTime = false;\n outOfBoundsMsg = this.invalidTimeMessage;\n }\n }\n\n if (this.selectedTime && !isDisabledTime) {\n if (this.minTime && this.selectedTime < this.minTime) {\n this.isValidTime = false;\n outOfBoundsMsg = `Please enter a time after ${this.formatTime(\n this.minTime\n )}.`;\n } else if (this.maxTime && this.selectedTime > this.maxTime) {\n this.isValidTime = false;\n outOfBoundsMsg = `Please enter a time before ${this.formatTime(\n this.maxTime\n )}.`;\n }\n }\n if (!this.isValidTime) {\n this.inputsInOrder.forEach((input) =>\n input.setAttribute(this.ARIA_INVALID, \"true\")\n );\n } else {\n this.inputsInOrder.forEach((input) =>\n input.removeAttribute(this.ARIA_INVALID)\n );\n }\n } else {\n this.selectedTime = null;\n }\n if (\n !(\n this.isValidHour &&\n this.isValidMinute &&\n this.isValidSecond &&\n this.isValidTime\n )\n ) {\n this.invalidTimeText = outOfBoundsMsg || this.invalidTimeMessage;\n } else {\n this.invalidTimeText = \"\";\n }\n };\n\n private formatTime = (time: Date): string => {\n const hh = time.getHours().toString().padStart(2, \"0\");\n const mm = time.getMinutes().toString().padStart(2, \"0\");\n const ss = time.getSeconds().toString().padStart(2, \"0\");\n return this.isHHMMFormat() ? `${hh}:${mm}` : `${hh}:${mm}:${ss}`;\n };\n\n private handleInput = (event: Event) => {\n const inputEvent = event as InputEvent;\n const input = event.target as HTMLInputElement;\n if (input !== this.hourInputEl) {\n if (\n inputEvent.inputType !== \"deleteContentBackward\" &&\n !this.preventAutoFormatting\n ) {\n if (\n input.value.length === 1 &&\n +input.value >= 6 &&\n +input.value <= 9\n ) {\n this.setInputValue(input);\n this.notifyScreenReader(input);\n this.moveToNextInput(input);\n }\n if (input.value.length === 2) {\n this.setInputValue(input);\n this.setPreventInput(input, true);\n this.notifyScreenReader(input);\n this.moveToNextInput(input);\n } else {\n this.setPreventInput(input, false);\n }\n } else if (this.preventAutoFormatting) {\n if (input.value.length === 2 && !this.isKeyboardOrEvent(event)) {\n this.setInputValue(input);\n this.setPreventInput(input, true);\n this.moveToNextInput(input);\n } else {\n this.setInputValue(input);\n }\n }\n if (input.value.length !== 2) {\n this.setPreventInput(input, false);\n }\n } else {\n if (input.value.length === 2) {\n this.setInputValue(input);\n if (\n Object.prototype.toString.call(event) !== this.EVENT_OBJECT_STRING\n ) {\n this.moveToNextInput(input);\n }\n this.setPreventInput(input, true);\n } else {\n this.setInputValue(input, true);\n this.setPreventInput(input, false);\n }\n }\n this.setFitToValueStyling(input);\n if (input.value.length === 0) {\n this.setInputValue(input, true);\n this.setValidationMessage();\n }\n this.notifyScreenReader(input);\n };\n\n private handleKeyDown = (event: KeyboardEvent, isInputPrevented: boolean) => {\n const input = event.target as HTMLInputElement;\n const eventKey = event.key?.toLowerCase();\n const regex =\n /-?\\d*\\.?\\d+(e[-+]?\\d+)?|[:]|arrowup|arrowdown|arrowleft|arrowright|shift|tab|backspace|delete/;\n if (\n !regex.test(eventKey) &&\n !(\n (event.ctrlKey || event.metaKey) &&\n (eventKey === \"v\" || eventKey === \"c\")\n )\n ) {\n event.preventDefault();\n }\n switch (eventKey) {\n case \":\":\n case \"arrowright\":\n event.preventDefault();\n this.moveToNextInput(input);\n break;\n case \"arrowleft\":\n event.preventDefault();\n this.moveToPreviousInput(input);\n break;\n case \"arrowup\":\n case \"arrowdown\":\n this.preventAutoFormatting = true;\n this.handleUpDownArrowKeyPress(input, event);\n break;\n case \"backspace\":\n if (input.value.length === 0) {\n event.preventDefault();\n this.moveToPreviousInput(input);\n }\n break;\n default:\n break;\n }\n this.preventInput(event, isInputPrevented);\n this.isTimeSetFromKeyboardEvent = true;\n };\n\n private handleFocus = (event: FocusEvent) => {\n const input = event.target as HTMLInputElement;\n input.select();\n };\n\n private handleBlur = (event: FocusEvent) => {\n const input = event.target;\n if (input) {\n this.autocompleteInput(input as HTMLInputElement);\n }\n };\n\n private handleUpDownArrowKeyPress = (\n input: HTMLInputElement,\n event: KeyboardEvent\n ) => {\n let minValue = 0;\n let maxValue = 59;\n if (input === this.hourInputEl) {\n minValue = this.timePeriod === \"12\" ? 1 : 0;\n maxValue = this.timePeriod === \"12\" ? 12 : 23;\n }\n let val = +input.value;\n if (event.key === \"ArrowUp\") {\n val = val + 1;\n if (val > maxValue) val = minValue;\n input.value = val.toString().padStart(2, \"0\");\n this.notifyScreenReader(input);\n }\n if (event.key === \"ArrowDown\") {\n val = val - 1;\n if (val < minValue) val = maxValue;\n input.value = val.toString().padStart(2, \"0\");\n this.notifyScreenReader(input);\n }\n this.setInputValue(input);\n this.setFitToValueStyling(input);\n };\n\n private handleTimeChange = (force: boolean) => {\n if (force || this.selectedTime !== this.previousSelectedTime) {\n if (this.value) {\n this.inputsInOrder.forEach((input) => {\n input.classList.add(this.FIT_TO_VALUE);\n });\n }\n if (\n this.hour &&\n this.minute &&\n (this.isHHMMFormat() || this.second) &&\n this.invalidTimeText === \"\"\n ) {\n this.setValueAndEmitChange(this.selectedTime);\n this.notifyScreenReaderSelectedTime();\n } else if (\n !(this.selectedTime === null && this.previousSelectedTime === null) &&\n this.selectedTimeInfoEl\n ) {\n this.setValueAndEmitChange(null);\n this.selectedTimeInfoEl.textContent = \"\";\n }\n this.previousSelectedTime = this.selectedTime;\n if (!this.isTimeSetFromKeyboardEvent) {\n this.updateInputValues(this.hour, this.minute, this.second);\n }\n }\n };\n\n private setValueAndEmitChange = (value: Date | null) => {\n if (this.value !== value) {\n this.emitIcChange(value);\n this.value = value;\n }\n };\n\n private emitIcChange = (t: Date | null) => {\n this.selectedTime = t;\n this.icChange.emit({\n value: t,\n timeObject: {\n hour: this.hour === \"\" ? null : this.hour,\n minute: this.minute === \"\" ? null : this.minute,\n second: this.second === \"\" ? null : this.second,\n },\n });\n };\n\n private setTime = (time?: string | Date | null) => {\n if (time === null || time === \"\" || time === undefined) {\n if (this.hour) this.hour = \"\";\n if (this.minute) this.minute = \"\";\n if (this.second) this.second = \"\";\n this.inputsInOrder.forEach((input) => {\n input.classList.remove(this.FIT_TO_VALUE);\n this.setPreventInput(input, false);\n });\n this.handleTimeChange(true);\n } else {\n if (typeof time === \"string\") {\n const zuluMatch = time.match(\n /^(\\d{2}):(\\d{2}):(\\d{2})(?:\\.(\\d{1,3}))?Z?$/\n );\n if (zuluMatch) {\n this.hour = zuluMatch[1];\n this.minute = zuluMatch[2];\n this.second = zuluMatch[3];\n } else {\n const parts = time.split(\":\");\n this.hour = parts[0] || \"\";\n this.minute = parts[1] || \"\";\n this.second = parts[2] || \"\";\n }\n } else if (time instanceof Date) {\n this.hour = time.getHours().toString().padStart(2, \"0\");\n this.minute = time.getMinutes().toString().padStart(2, \"0\");\n this.second = time.getSeconds().toString().padStart(2, \"0\");\n }\n }\n this.setValidationMessage();\n };\n\n private setAriaInvalid = (\n validHour: boolean,\n validMinute: boolean,\n validSecond: boolean\n ) => {\n if (this.inputsInOrder.length) {\n this.inputsInOrder.forEach((input) => {\n input.removeAttribute(this.ARIA_INVALID);\n });\n if (!validHour) {\n this.hourInputEl?.setAttribute(this.ARIA_INVALID, \"true\");\n }\n if (!validMinute) {\n this.minuteInputEl?.setAttribute(this.ARIA_INVALID, \"true\");\n }\n if (!validSecond) {\n this.secondInputEl?.setAttribute(this.ARIA_INVALID, \"true\");\n }\n if (!(validHour && validMinute && validSecond)) {\n this.inputsInOrder.forEach((input) => {\n input.setAttribute(this.ARIA_INVALID, \"true\");\n });\n }\n }\n };\n\n private handleClear = () => {\n this.clearInput = true;\n if (this.hourInputEl) {\n this.hourInputEl.value = \"\";\n }\n if (this.minuteInputEl) {\n this.minuteInputEl.value = \"\";\n }\n if (!this.isHHMMFormat() && this.secondInputEl) {\n this.secondInputEl.value = \"\";\n }\n this.hour = \"\";\n this.minute = \"\";\n this.second = \"\";\n this.handleTimeChange(true);\n this.inputsInOrder.forEach((input) => {\n input.classList.remove(this.FIT_TO_VALUE);\n this.setPreventInput(input, false);\n });\n this.clearInput = false;\n this.isTimeSetFromKeyboardEvent = false;\n this.setValidationMessage();\n this.invalidTimeText = \"\";\n if (this.hourInputEl) {\n this.hourInputEl.focus();\n }\n };\n\n private notifyScreenReaderSelectedTime = () => {\n if (this.selectedTime && this.selectedTimeInfoEl) {\n if (this.isHHMMFormat()) {\n this.selectedTimeInfoEl.textContent = `Selected time: ${this.selectedTime\n .getHours()\n .toString()\n .padStart(2, \"0\")}:${this.selectedTime\n .getMinutes()\n .toString()\n .padStart(2, \"0\")}`;\n } else {\n this.selectedTimeInfoEl.textContent = `Selected time: ${this.selectedTime\n .getHours()\n .toString()\n .padStart(2, \"0\")}:${this.selectedTime\n .getMinutes()\n .toString()\n .padStart(2, \"0\")}:${this.selectedTime\n .getSeconds()\n .toString()\n .padStart(2, \"0\")}`;\n }\n }\n };\n\n private setFitToValueStyling = (input: HTMLInputElement) => {\n if (input.value) {\n input.classList.add(this.FIT_TO_VALUE);\n } else {\n input.classList.remove(this.FIT_TO_VALUE);\n }\n };\n\n private handleHostBlur = () => {\n this.removeLabelledBy = false;\n this.icBlur.emit({ value: this.selectedTime });\n };\n\n private handleHostFocus = () => {\n if (\n this.el.shadowRoot?.activeElement?.id.match(/(hour|minute|second)-input$/)\n ) {\n this.removeLabelledBy = false;\n } else {\n this.removeLabelledBy = true;\n }\n this.icFocus.emit({ value: this.selectedTime });\n };\n\n private handleFormReset = () => {\n this.setTime(this.initialValue);\n this.setValidationMessage();\n this.handleTimeChange(false);\n };\n\n private preventInput = (event: KeyboardEvent, isInputPrevented: boolean) => {\n const key = event.key;\n const input = event.target as HTMLInputElement;\n let selectedString;\n if (input) {\n selectedString = input.value.substring(\n input.selectionStart || 0,\n input.selectionEnd || undefined\n );\n }\n if (\n key === \"e\" ||\n key === \".\" ||\n key === \"-\" ||\n (event.key >= \"0\" &&\n event.key <= \"9\" &&\n isInputPrevented &&\n !selectedString)\n ) {\n event.preventDefault();\n }\n };\n\n private moveToNextInput = (currentInput: HTMLInputElement) => {\n this.preventAutoFormatting = false;\n this.inputsInOrder[\n this.inputsInOrder.findIndex((input) => input === currentInput) + 1\n ]?.focus();\n };\n\n private moveToPreviousInput = (currentInput: HTMLInputElement) => {\n this.preventAutoFormatting = false;\n this.inputsInOrder[\n this.inputsInOrder.findIndex((input) => input === currentInput) - 1\n ]?.focus();\n };\n\n private autocompleteInput = (input: HTMLInputElement) => {\n const inputValue = input.value;\n if (inputValue.length === 1) {\n input.value = `0${inputValue}`;\n }\n if (input.value) {\n this.setInputValue(input);\n }\n };\n\n private convertToTime = (\n hour: string,\n minute: string,\n second: string\n ): Date | null => {\n if (\n !isEmptyString(hour) &&\n !isEmptyString(minute) &&\n (this.isHHMMFormat() || !isEmptyString(second))\n ) {\n const d = new Date();\n d.setHours(+hour, +minute, this.isHHMMFormat() ? 0 : +second, 0);\n return d;\n } else {\n return null;\n }\n };\n\n private setInputsInOrder = () => {\n this.inputsInOrder = [];\n const shadowInputs = this.el.shadowRoot?.querySelectorAll(\"input\");\n if (shadowInputs) {\n shadowInputs.forEach((input) => this.inputsInOrder.push(input));\n }\n };\n\n private updateInputValues = (\n hour: string,\n minute: string,\n second: string\n ) => {\n if (this.hourInputEl && this.minuteInputEl && this.secondInputEl) {\n this.hourInputEl.value = hour;\n this.minuteInputEl.value = minute;\n this.secondInputEl.value = second;\n }\n };\n\n private removeAriaLabelledBy = () => {\n this.inputCompContainerEl?.removeAttribute(this.ARIA_LABELLED_BY);\n };\n\n private setAriaLabelledBy = () => {\n if (\n this.disabled &&\n this.inputCompContainerEl?.getAttribute(this.ARIA_LABELLED_BY)\n ) {\n this.removeAriaLabelledBy();\n return;\n }\n if (this.disabled) {\n return;\n }\n const labelEl = this.el.shadowRoot?.querySelector(\"label\");\n const labelId = `${this.inputId}-label`;\n if (labelEl !== null && labelEl !== undefined) {\n labelEl.id = labelId;\n }\n const hasValidation =\n !isEmptyString(this.validationStatus) ||\n !isEmptyString(this.invalidTimeText);\n const labelledBy = `${labelEl?.id ?? \"\"} ${\n this.screenReaderInfoId\n } ${getInputDescribedByText(\n this.el,\n this.inputId,\n this.helperText !== \"\" && this.helperText !== this.defaultHelperText,\n hasValidation\n )} ${this.selectedTime ? this.selectedTimeInfoId : \"\"} ${\n this.assistiveHintId\n }`;\n this.inputCompContainerEl?.setAttribute(this.ARIA_LABELLED_BY, labelledBy);\n };\n\n private getInputsInOrder = () => {\n const timeParts = this.timeFormat.split(\":\");\n return timeParts.map((part: string) => {\n switch (part.substring(0, 1)) {\n case \"H\":\n return (\n <input\n class=\"hour-input\"\n id=\"hour-input\"\n ref={(el) => (this.hourInputEl = el)}\n aria-label=\"hour\"\n placeholder=\"HH\"\n disabled={this.disabled}\n aria-required={`${this.required}`}\n inputmode=\"number\"\n pattern=\"[0-9]*\"\n onPaste={this.handlePaste}\n onKeyDown={(event) =>\n this.handleKeyDown(event, this.preventHourInput)\n }\n ></input>\n );\n case \"M\":\n return (\n <input\n id=\"minute-input\"\n class=\"minute-input\"\n ref={(el) => (this.minuteInputEl = el)}\n aria-label=\"minute\"\n placeholder=\"MM\"\n disabled={this.disabled}\n aria-required={`${this.required}`}\n inputmode=\"number\"\n pattern=\"[0-9]*\"\n onPaste={this.handlePaste}\n onKeyDown={(event) =>\n this.handleKeyDown(event, this.preventMinuteInput)\n }\n ></input>\n );\n case \"S\":\n if (!this.isHHMMFormat()) {\n return (\n <input\n id=\"second-input\"\n class=\"second-input\"\n ref={(el) => (this.secondInputEl = el)}\n aria-label=\"second\"\n placeholder=\"SS\"\n disabled={this.disabled}\n aria-required={`${this.required}`}\n inputmode=\"number\"\n pattern=\"[0-9]*\"\n onPaste={this.handlePaste}\n onKeyDown={(event) =>\n this.handleKeyDown(event, this.preventSecondInput)\n }\n ></input>\n );\n }\n return null;\n default:\n return null;\n }\n });\n };\n\n private getDescOfInputsOrder = () => {\n return \"hour, minute, and second\";\n };\n\n private getScreenReaderInfo = (validationStatus: string) => {\n let inputDescriptors = \"\";\n if (this.required) {\n inputDescriptors += \"required\";\n }\n if (validationStatus === IcInformationStatus.Error) {\n inputDescriptors += \" invalid data\";\n }\n return inputDescriptors === \"\" ? \"\" : inputDescriptors + \", \";\n };\n\n private notifyScreenReader = (input: HTMLInputElement) => {\n const liveRegion = this.el.shadowRoot?.querySelector(\"#live-region\");\n if (liveRegion) {\n liveRegion.textContent = `${input.value}, ${input.getAttribute(\n this.ARIA_LABEL\n )}`;\n }\n };\n\n private handlePaste = (event: ClipboardEvent) => {\n event.preventDefault();\n const pastedValue = event.clipboardData?.getData(\"Text\") || \"\";\n const isValidTime = this.isPastedStringTimeValid(pastedValue);\n this.setPastedValueAndValidation(isValidTime, pastedValue, event);\n };\n\n private handleClearFocus = () => {\n this.removeLabelledBy = true;\n this.clearButtonFocused = true;\n this.isTimeSetFromKeyboardEvent = true;\n };\n\n private handleClearBlur = (ev: FocusEvent) => {\n this.clearButtonFocused = false;\n this.isTimeSetFromKeyboardEvent = true;\n const relatedTarget = ev.relatedTarget as HTMLElement | null;\n if (relatedTarget?.id === \"clock-button\") {\n this.removeLabelledBy = false;\n return;\n }\n if (relatedTarget?.id.match(/(minute|second)-input$/)) {\n this.removeLabelledBy = false;\n return;\n }\n this.removeLabelledBy = true;\n };\n\n private handleClockFocus = () => {\n this.clockFocused = true;\n };\n\n private handleClockBlur = () => {\n this.clockFocused = false;\n };\n\n private isPastedStringTimeValid = (value: string): string | false => {\n if (this.isHHMMFormat()) {\n if (/^\\d{2}:\\d{2}$/.test(value)) {\n return value;\n }\n } else {\n if (/^\\d{2}:\\d{2}:\\d{2}$/.test(value)) {\n return value;\n }\n if (/^\\d{2}:\\d{2}:\\d{2}Z$/.test(value)) {\n return value.replace(\"Z\", \"\");\n }\n const isoMatch = value.match(/T(\\d{2}:\\d{2}:\\d{2})/);\n if (isoMatch) {\n return isoMatch[1];\n }\n }\n return false;\n };\n\n private setPastedValueAndValidation = (\n isValidTime: string | false,\n pastedValue: string,\n event: ClipboardEvent\n ) => {\n if (isValidTime) {\n const timeParts = isValidTime.split(\":\");\n this.inputsInOrder.forEach((input, index) => {\n input.classList.add(this.FIT_TO_VALUE);\n const timeValue = timeParts[index] || \"\";\n input.value = timeValue.slice(0, 2);\n this.setInputValue(input);\n this.autocompleteInput(input);\n });\n if (this.isHHMMFormat() && this.second !== \"\") {\n this.second = \"\";\n }\n } else {\n const pasted = pastedValue.trim();\n if ((pasted.length === 1 || pasted.length === 2) && isNumeric(pasted)) {\n this.setInputPasteValue(event.target, pasted);\n this.setInputValue(event.target as HTMLInputElement);\n } else {\n this.invalidTimeText = `Please paste a valid ${(\n event.target as HTMLInputElement\n ).getAttribute(this.ARIA_LABEL)}`;\n this.validationStatus = IcInformationStatus.Error;\n }\n }\n };\n\n render() {\n const {\n inputId,\n label,\n disabled,\n helperText,\n hideHelperText,\n hideLabel,\n showClearButton,\n showClockButton,\n size,\n theme,\n } = this;\n const hasCustomValidation = !isEmptyString(this.validationStatus);\n const validationStatus = hasCustomValidation\n ? this.validationStatus\n : !isEmptyString(this.invalidTimeText)\n ? IcInformationStatus.Error\n : \"\";\n const assistiveHint = `Type or use the up and down arrow keys to change the values for the ${this.getDescOfInputsOrder()}.`;\n renderHiddenInput(\n true,\n this.el,\n this.name,\n this.convertToTime(this.hour, this.minute, this.second),\n this.disabled\n );\n const showDivider = !!(\n showClearButton &&\n !(\n isEmptyString(this.hour) &&\n isEmptyString(this.minute) &&\n isEmptyString(this.second)\n )\n );\n return (\n <Host\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n [`ic-time-input-disabled`]: disabled,\n [`ic-time-input-${size}`]: true,\n }}\n onBlur={this.handleHostBlur}\n onFocus={this.handleHostFocus}\n >\n <ic-input-container disabled={disabled}>\n {!(hideLabel && hideHelperText) && (\n <ic-input-label\n for={inputId}\n label={label}\n hideLabel={hideLabel}\n helperText={!hideHelperText ? helperText : \"\"}\n disabled={disabled}\n >\n <slot name=\"helper-text\" slot=\"helper-text\"></slot>\n </ic-input-label>\n )}\n <span id={this.screenReaderInfoId} class=\"sr-only\" aria-hidden=\"true\">\n {this.getScreenReaderInfo(validationStatus)}\n {hideLabel && `${label}\\n`}\n {hideHelperText && `${helperText}\\n`}\n {`${this.defaultHelperText}.`}\n </span>\n <span id={this.assistiveHintId} class=\"sr-only\" aria-hidden=\"true\">\n {assistiveHint}\n </span>\n <span id=\"live-region\" aria-live=\"assertive\" class=\"sr-only\"></span>\n <ic-input-component-container\n id={inputId}\n ref={(el: HTMLIcInputComponentContainerElement) =>\n (this.inputCompContainerEl = el)\n }\n disabled={disabled}\n validationStatus={validationStatus}\n size={size}\n role=\"group\"\n class={{ [`ic-theme-${theme}`]: theme !== \"inherit\" }}\n >\n <div class=\"input-container\">\n <div class=\"time-inputs\">\n {[\n this.getInputsInOrder()[0],\n \":\",\n this.getInputsInOrder()[1],\n !this.isHHMMFormat()\n ? [\":\", this.getInputsInOrder()[2]]\n : null,\n ]}\n </div>\n <div class=\"action-buttons\">\n {showClearButton && (\n <ic-button\n id=\"clear-button\"\n aria-label=\"Clear input\"\n class={{\n [\"clear-button\"]: true,\n [\"hidden\"]:\n isEmptyString(this.hour) &&\n isEmptyString(this.minute) &&\n isEmptyString(this.second),\n }}\n disabled={this.disabled}\n innerHTML={Clear}\n onClick={this.handleClear}\n onFocus={this.handleClearFocus}\n onBlur={this.handleClearBlur}\n variant=\"icon-tertiary\"\n theme={this.clearButtonFocused ? \"light\" : \"dark\"}\n size={size}\n ></ic-button>\n )}\n {showClockButton && (\n <div class=\"show-clock-button-wrapper\">\n <div class={{ divider: showDivider, [size]: true }}></div>\n <ic-button\n id=\"clock-button\"\n aria-label=\"Display clock\"\n aria-haspopup=\"dialog\"\n class=\"clock-button\"\n disabled={this.disabled}\n innerHTML={Clock}\n variant=\"icon-tertiary\"\n size={size}\n onFocus={this.handleClockFocus}\n onBlur={this.handleClockBlur}\n theme={this.clockFocused ? \"light\" : \"dark\"}\n ></ic-button>\n </div>\n )}\n </div>\n </div>\n </ic-input-component-container>\n <span id={this.selectedTimeInfoId} class=\"sr-only\" aria-live=\"polite\">\n <span\n ref={(el) => (this.selectedTimeInfoEl = el)}\n role=\"status\"\n ></span>\n </span>\n {(hasCustomValidation || !isEmptyString(this.invalidTimeText)) && (\n <ic-input-validation\n status={validationStatus}\n message={\n hasCustomValidation ? this.validationText : this.invalidTimeText\n }\n for={inputId}\n ></ic-input-validation>\n )}\n </ic-input-container>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -42,7 +42,7 @@ const ToastRegion = class {
42
42
  }
43
43
  }
44
44
  render() {
45
- return h("slot", { key: '5f8c46d718f868942c5b46b431b2cee136e215b4' });
45
+ return h("slot", { key: 'fd1b79dd960a3c3caef1d90e1e1184e4e9fa0432' });
46
46
  }
47
47
  get el() { return getElement(this); }
48
48
  static get watchers() { return {
@@ -1 +1 @@
1
- {"file":"ic-toast-region.entry.js","mappings":";;MACa,WAAW;IACpB;;QACI,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC;QAC5B,IAAI,CAAC,SAAS,GAAG,CAAC,KAAK;YACnB,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC;YACvI,IAAI,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,aAAa,CAAC,MAAM,IAAI,CAAC,EAAE;gBAClE,KAAK,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,IAAI,CAAC,iBAAiB,GAAG,GAAG,CAAC,CAAC,CAAC;aACpE;YACD,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC;gBACxB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC1C,CAAC;KACL;IACD,qBAAqB,CAAC,QAAQ;QAC1B,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE;YAC9B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;SAC9B;KACJ;IACD,gBAAgB;QACZ,IAAI,IAAI,CAAC,SAAS,EAAE;YAChB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC/B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;SAC9B;KACJ;IACD,oBAAoB;QAChB,IAAI,EAAE,CAAC;QACP,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;YACnC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;iBACpB,UAAU,EAAE;iBACZ,IAAI,CAAC,CAAC,GAAG,MAAM,IAAI,CAAC,iBAAiB,GAAG,GAAG,CAAC,CAAC,CAAC;YACnD,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;SAClC;aACI;YACD,IAAI,IAAI,CAAC,iBAAiB,IAAI,UAAU,IAAI,IAAI,CAAC,iBAAiB,EAAE;gBAChE,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC;aACrC;;gBAEG,CAAC,EAAE,GAAG,IAAI,CAAC,iBAAiB,MAAM,IAAI,IAAI,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC;SACrF;KACJ;IACD,MAAM;QACF,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,0CAA0C,EAAE,CAAC,CAAC;KACzE;;;;;;;;;","names":[],"sources":["../web-components/dist/collection/components/ic-toast-region/ic-toast-region.js"],"sourcesContent":["import { h } from \"@stencil/core\";\nexport class ToastRegion {\n constructor() {\n this.pendingVisibility = [];\n this.showToast = (toast) => {\n const visibleToasts = Array.from(document.querySelectorAll(\"ic-toast\")).filter((el) => window.getComputedStyle(el).display !== \"none\");\n if (visibleToasts.indexOf(toast) === -1 && visibleToasts.length <= 0) {\n toast.setVisible().then((res) => (this.previouslyFocused = res));\n }\n if (visibleToasts.length > 0)\n this.pendingVisibility.push(toast);\n };\n }\n watchOpenToastHandler(newValue) {\n if (this.openToast !== undefined) {\n this.showToast(newValue);\n this.openToast = undefined;\n }\n }\n componentDidLoad() {\n if (this.openToast) {\n this.showToast(this.openToast);\n this.openToast = undefined;\n }\n }\n handleDismissedToast() {\n var _a;\n if (this.pendingVisibility.length > 0) {\n this.pendingVisibility[0]\n .setVisible()\n .then((res) => (this.previouslyFocused = res));\n this.pendingVisibility.shift();\n }\n else {\n if (this.previouslyFocused && \"setFocus\" in this.previouslyFocused) {\n this.previouslyFocused.setFocus();\n }\n else\n (_a = this.previouslyFocused) === null || _a === void 0 ? void 0 : _a.focus();\n }\n }\n render() {\n return h(\"slot\", { key: '5f8c46d718f868942c5b46b431b2cee136e215b4' });\n }\n static get is() { return \"ic-toast-region\"; }\n static get properties() {\n return {\n \"openToast\": {\n \"type\": \"unknown\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"HTMLIcToastElement\",\n \"resolved\": \"HTMLIcToastElement | undefined\",\n \"references\": {\n \"HTMLIcToastElement\": {\n \"location\": \"global\",\n \"id\": \"global::HTMLIcToastElement\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The toast element to be displayed.\"\n },\n \"getter\": false,\n \"setter\": false\n }\n };\n }\n static get elementRef() { return \"el\"; }\n static get watchers() {\n return [{\n \"propName\": \"openToast\",\n \"methodName\": \"watchOpenToastHandler\"\n }];\n }\n static get listeners() {\n return [{\n \"name\": \"icDismiss\",\n \"method\": \"handleDismissedToast\",\n \"target\": undefined,\n \"capture\": true,\n \"passive\": false\n }];\n }\n}\n//# sourceMappingURL=ic-toast-region.js.map\n"],"version":3}
1
+ {"file":"ic-toast-region.entry.js","mappings":";;MACa,WAAW;IACpB;;QACI,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC;QAC5B,IAAI,CAAC,SAAS,GAAG,CAAC,KAAK;YACnB,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC;YACvI,IAAI,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,aAAa,CAAC,MAAM,IAAI,CAAC,EAAE;gBAClE,KAAK,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,IAAI,CAAC,iBAAiB,GAAG,GAAG,CAAC,CAAC,CAAC;aACpE;YACD,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC;gBACxB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC1C,CAAC;KACL;IACD,qBAAqB,CAAC,QAAQ;QAC1B,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE;YAC9B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;SAC9B;KACJ;IACD,gBAAgB;QACZ,IAAI,IAAI,CAAC,SAAS,EAAE;YAChB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC/B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;SAC9B;KACJ;IACD,oBAAoB;QAChB,IAAI,EAAE,CAAC;QACP,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;YACnC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;iBACpB,UAAU,EAAE;iBACZ,IAAI,CAAC,CAAC,GAAG,MAAM,IAAI,CAAC,iBAAiB,GAAG,GAAG,CAAC,CAAC,CAAC;YACnD,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;SAClC;aACI;YACD,IAAI,IAAI,CAAC,iBAAiB,IAAI,UAAU,IAAI,IAAI,CAAC,iBAAiB,EAAE;gBAChE,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC;aACrC;;gBAEG,CAAC,EAAE,GAAG,IAAI,CAAC,iBAAiB,MAAM,IAAI,IAAI,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC;SACrF;KACJ;IACD,MAAM;QACF,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,0CAA0C,EAAE,CAAC,CAAC;KACzE;;;;;;;;;","names":[],"sources":["../web-components/dist/collection/components/ic-toast-region/ic-toast-region.js"],"sourcesContent":["import { h } from \"@stencil/core\";\nexport class ToastRegion {\n constructor() {\n this.pendingVisibility = [];\n this.showToast = (toast) => {\n const visibleToasts = Array.from(document.querySelectorAll(\"ic-toast\")).filter((el) => window.getComputedStyle(el).display !== \"none\");\n if (visibleToasts.indexOf(toast) === -1 && visibleToasts.length <= 0) {\n toast.setVisible().then((res) => (this.previouslyFocused = res));\n }\n if (visibleToasts.length > 0)\n this.pendingVisibility.push(toast);\n };\n }\n watchOpenToastHandler(newValue) {\n if (this.openToast !== undefined) {\n this.showToast(newValue);\n this.openToast = undefined;\n }\n }\n componentDidLoad() {\n if (this.openToast) {\n this.showToast(this.openToast);\n this.openToast = undefined;\n }\n }\n handleDismissedToast() {\n var _a;\n if (this.pendingVisibility.length > 0) {\n this.pendingVisibility[0]\n .setVisible()\n .then((res) => (this.previouslyFocused = res));\n this.pendingVisibility.shift();\n }\n else {\n if (this.previouslyFocused && \"setFocus\" in this.previouslyFocused) {\n this.previouslyFocused.setFocus();\n }\n else\n (_a = this.previouslyFocused) === null || _a === void 0 ? void 0 : _a.focus();\n }\n }\n render() {\n return h(\"slot\", { key: 'fd1b79dd960a3c3caef1d90e1e1184e4e9fa0432' });\n }\n static get is() { return \"ic-toast-region\"; }\n static get properties() {\n return {\n \"openToast\": {\n \"type\": \"unknown\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"HTMLIcToastElement\",\n \"resolved\": \"HTMLIcToastElement | undefined\",\n \"references\": {\n \"HTMLIcToastElement\": {\n \"location\": \"global\",\n \"id\": \"global::HTMLIcToastElement\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The toast element to be displayed.\"\n },\n \"getter\": false,\n \"setter\": false\n }\n };\n }\n static get elementRef() { return \"el\"; }\n static get watchers() {\n return [{\n \"propName\": \"openToast\",\n \"methodName\": \"watchOpenToastHandler\"\n }];\n }\n static get listeners() {\n return [{\n \"name\": \"icDismiss\",\n \"method\": \"handleDismissedToast\",\n \"target\": undefined,\n \"capture\": true,\n \"passive\": false\n }];\n }\n}\n//# sourceMappingURL=ic-toast-region.js.map\n"],"version":3}
@@ -1,6 +1,6 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-a7a720e7.js';
2
2
  import { c as closeIcon } from './close-icon-c9e09475.js';
3
- import { i as isSlotUsed, V as VARIANT_ICONS, o as onComponentRequiredPropUndefined, K as getSlot, e as isPropDefined } from './helpers-f3928d01.js';
3
+ import { i as isSlotUsed, V as VARIANT_ICONS, o as onComponentRequiredPropUndefined, K as getSlot, e as isPropDefined } from './helpers-1dbd527e.js';
4
4
 
5
5
  const icToastCss = "/*! 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}@media (prefers-reduced-motion: no-preference){:host{animation:fadein var(--ic-transition-duration-slow) ease-in-out}:host(.hidden){animation:fadeout var(--ic-transition-duration-slow) ease-in-out}}:host{--bottom-position:var(--ic-space-xl);position:fixed;bottom:var(--bottom-position);left:50%;transform:translate(-50%);z-index:var(--ic-z-index-toast)}:host(.ic-toast-hidden){display:none}:host(:focus){outline:none}.container{max-width:32.5rem;min-width:18rem;box-shadow:var(--ic-elevation-overlay);min-height:3.5rem;background-color:var(--ic-toast-background);display:flex;align-items:center;position:relative;border-radius:var(--ic-border-radius)}.toast-icon-container{height:100%;display:flex;align-items:center}.divider{height:100%;width:var(--ic-space-xs);position:absolute;border-radius:var(--ic-space-xxxs) 0 0 var(--ic-space-xxxs)}.divider-neutral{background-color:var(--ic-toast-status-neutral)}.divider-info{background-color:var(--ic-toast-status-info)}.divider-warning{background-color:var(--ic-toast-status-warning)}.divider-error{background-color:var(--ic-toast-status-error)}.divider-success{background-color:var(--ic-toast-status-success)}.divider-ai{background-color:var(--ic-toast-status-ai)}.toast-icon,::slotted(svg){height:var(--ic-space-lg);width:var(--ic-space-lg);margin-left:var(--ic-space-md)}:host([variant=\"neutral\"]) .toast-icon svg,::slotted(svg){fill:var(--ic-toast-icon-neutral)}:host([variant=\"info\"]) .toast-icon svg{fill:var(--ic-toast-icon-info)}:host([variant=\"warning\"]) .toast-icon svg{fill:var(--ic-toast-icon-warning)}:host([variant=\"error\"]) .toast-icon svg{fill:var(--ic-toast-icon-error)}:host([variant=\"success\"]) .toast-icon svg{fill:var(--ic-toast-icon-success)}:host([variant=\"ai\"]) .toast-icon svg{fill:var(--ic-toast-icon-ai)}.toast-content{margin-left:var(--ic-space-xs);width:100%}.no-icon{margin-left:var(--ic-space-md)}.toast-text{padding:var(--ic-space-xs) var(--ic-space-xs) var(--ic-space-xs) 0}.toast-heading{--ic-typography-color:var(--ic-toast-title)}.toast-message{--ic-typography-color:var(--ic-toast-description)}.toast-action-container{padding-bottom:var(--ic-space-md)}#dismiss-button{padding:var(--ic-space-xs)}#dismiss-button>svg{color:var(--ic-toast-dismiss-button)}ic-loading-indicator{--outer-color:transparent;--inner-color:var(--ic-action-monochrome)}.toast-dismiss-timer{padding:var(--ic-space-sm)}@media (max-width: 576px){:host{--bottom-position:var(--ic-space-lg);width:calc(100% - 2 * var(--ic-space-md))}}@media (min-width: 993px){:host{--bottom-position:calc(var(--ic-space-xl) + var(--ic-space-xs))}}@media (forced-colors: active){.container{border:var(--ic-border-hc)}}@keyframes fadein{from{bottom:0;opacity:0}to{bottom:var(--bottom-position);opacity:1}}@keyframes fadeout{from{bottom:var(--bottom-position);opacity:1}to{bottom:0;opacity:0}}";
6
6
  const IcToastStyle0 = icToastCss;
@@ -203,13 +203,13 @@ const Toast = class {
203
203
  }
204
204
  render() {
205
205
  const { variant, heading, message, visible, isManual, dismissButtonAriaLabel, } = this;
206
- return (h(Host, { key: 'ced9ccd739749f996c2c9a116bffa32cf19dbec1', class: { ["ic-toast-hidden"]: !visible }, tabindex: "0", onFocus: this.onFocus, onBlur: this.onBlur, role: isManual ? "dialog" : "alert", "aria-live": isManual ? null : "polite" }, h("div", { key: 'cb61a3180810c26fa2b2e093f9bef2887a876d0e', class: "container" }, variant && visible && (h("div", { key: 'b4fa17e0010310b293431201e9149b182ba3bd23', class: "toast-icon-container" }, h("div", { key: '70d2193d9b7ebad46c05bb50839c1d2f512d004e', class: {
206
+ return (h(Host, { key: '4e5a088492c0c9fb37f0ca2211d6f458be9e1318', class: { ["ic-toast-hidden"]: !visible }, tabindex: "0", onFocus: this.onFocus, onBlur: this.onBlur, role: isManual ? "dialog" : "alert", "aria-live": isManual ? null : "polite" }, h("div", { key: '5692e63d07ebc6ca0beaf89952f6dea339f46b28', class: "container" }, variant && visible && (h("div", { key: 'a1a33233e9436d44ed398a72519d25d37256d355', class: "toast-icon-container" }, h("div", { key: 'eea9ec3d6b4d330d07f0d9aff54b040b14406d41', class: {
207
207
  ["divider"]: true,
208
208
  [`divider-${variant}`]: true,
209
- } }), variant === "neutral" ? (h("slot", { name: "neutral-icon" })) : (h("span", { class: "toast-icon", innerHTML: VARIANT_ICONS[variant].icon })))), h("div", { key: '6a78e344040bd9e5d5a20dd5922e97091a89f0bc', class: {
209
+ } }), variant === "neutral" ? (h("slot", { name: "neutral-icon" })) : (h("span", { class: "toast-icon", innerHTML: VARIANT_ICONS[variant].icon })))), h("div", { key: '92552b4b1b4d5de15284d8f5382a56ed81a99d89', class: {
210
210
  ["toast-content"]: true,
211
211
  ["no-icon"]: variant === "neutral" && !isSlotUsed(this.el, "neutral-icon"),
212
- } }, h("div", { key: '6f9807f536c6f37b6868bc651fd0cc90bff3817f', class: "toast-text" }, h("ic-typography", { key: 'e86371c512f1413ec2482b0e8c88baa0357c346b', variant: "subtitle-large", class: "toast-heading" }, visible && (isManual ? h("h5", null, heading) : h("p", null, heading))), message && (h("ic-typography", { key: '593526ebb19c0fe0f9761b316ba75557f17dc545', variant: "body", class: "toast-message" }, visible && h("p", { key: '15b6099aeaca00f3124d80fad1ce94d396343d17' }, message)))), isSlotUsed(this.el, "action") && (h("div", { key: 'bda528607c243a094a3c61f509e12902133245e9', class: "toast-action-container" }, h("slot", { key: '35c924efff99f3882daaec3f3589057a67eb9d46', name: "action" })))), !isManual ? (h("ic-loading-indicator", { class: "toast-dismiss-timer", theme: "dark", monochrome: true, size: "icon", progress: this.timerProgress, description: "Dismiss timer" })) : (h("ic-button", { id: "dismiss-button", innerHTML: closeIcon, onClick: this.dismissAction, variant: "icon", "aria-label": dismissButtonAriaLabel })))));
212
+ } }, h("div", { key: '96b38beec1024b8c1eff1b86e823f1f95c1e574d', class: "toast-text" }, h("ic-typography", { key: 'aacffb589fd0e8180b0b72ad7d1315f4720e67ed', variant: "subtitle-large", class: "toast-heading" }, visible && (isManual ? h("h5", null, heading) : h("p", null, heading))), message && (h("ic-typography", { key: '6cbbb428be1211f1d730838a45cb17757d8af28a', variant: "body", class: "toast-message" }, visible && h("p", { key: '45191e3180d2b133071d727f515c3b16391ca681' }, message)))), isSlotUsed(this.el, "action") && (h("div", { key: '4d3555d3dc5bb374ac8aa3c112e91da2da37c66d', class: "toast-action-container" }, h("slot", { key: '0fcefdc03a5ff6f20e589f74433e51ea25b2e929', name: "action" })))), !isManual ? (h("ic-loading-indicator", { class: "toast-dismiss-timer", theme: "dark", monochrome: true, size: "icon", progress: this.timerProgress, description: "Dismiss timer" })) : (h("ic-button", { id: "dismiss-button", innerHTML: closeIcon, onClick: this.dismissAction, variant: "icon-tertiary", "aria-label": dismissButtonAriaLabel })))));
213
213
  }
214
214
  get el() { return getElement(this); }
215
215
  static get watchers() { return {