@ukic/canary-web-components 2.0.0-canary.10 → 2.0.0-canary.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (460) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/{helpers-7a069459.js → helpers-b525d45a.js} +2 -7
  3. package/dist/cjs/helpers-b525d45a.js.map +1 -0
  4. package/dist/cjs/{helpers-f75cf7cf.js → helpers-c4444a7e.js} +48 -94
  5. package/dist/cjs/helpers-c4444a7e.js.map +1 -0
  6. package/dist/cjs/ic-accordion.cjs.entry.js +1 -1
  7. package/dist/cjs/ic-alert.cjs.entry.js +1 -1
  8. package/dist/cjs/ic-back-to-top.cjs.entry.js +1 -1
  9. package/dist/cjs/ic-badge.cjs.entry.js +1 -1
  10. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +1 -1
  11. package/dist/cjs/ic-breadcrumb.cjs.entry.js +1 -1
  12. package/dist/cjs/ic-button_3.cjs.entry.js +2 -8
  13. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ic-card.cjs.entry.js +1 -1
  15. package/dist/cjs/ic-checkbox-group.cjs.entry.js +1 -1
  16. package/dist/cjs/ic-checkbox.cjs.entry.js +1 -1
  17. package/dist/cjs/ic-chip.cjs.entry.js +1 -1
  18. package/dist/cjs/ic-data-row.cjs.entry.js +1 -1
  19. package/dist/cjs/ic-data-table-title-bar.cjs.entry.js +57 -0
  20. package/dist/cjs/ic-data-table-title-bar.cjs.entry.js.map +1 -0
  21. package/dist/cjs/ic-data-table.cjs.entry.js +308 -43
  22. package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
  23. package/dist/cjs/ic-dialog.cjs.entry.js +1 -1
  24. package/dist/cjs/ic-divider.cjs.entry.js +1 -1
  25. package/dist/cjs/{ic-pagination-bar.cjs.entry.js → ic-empty-state_2.cjs.entry.js} +34 -4
  26. package/dist/cjs/ic-empty-state_2.cjs.entry.js.map +1 -0
  27. package/dist/cjs/ic-footer-link-group.cjs.entry.js +1 -1
  28. package/dist/cjs/ic-footer-link.cjs.entry.js +1 -1
  29. package/dist/cjs/ic-footer.cjs.entry.js +1 -1
  30. package/dist/cjs/ic-hero.cjs.entry.js +1 -1
  31. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +1 -1
  32. package/dist/cjs/{ic-menu.cjs.entry.js → ic-input-component-container_3.cjs.entry.js} +69 -5
  33. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -0
  34. package/dist/cjs/ic-input-label_2.cjs.entry.js +86 -0
  35. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -0
  36. package/dist/cjs/ic-link.cjs.entry.js +1 -1
  37. package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
  38. package/dist/cjs/ic-menu-item.cjs.entry.js +1 -1
  39. package/dist/cjs/ic-menu-with-multi.cjs.entry.js +1 -1
  40. package/dist/cjs/ic-menu-with-multi.cjs.entry.js.map +1 -1
  41. package/dist/cjs/ic-navigation-button.cjs.entry.js +1 -1
  42. package/dist/cjs/ic-navigation-group.cjs.entry.js +13 -16
  43. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  44. package/dist/cjs/ic-navigation-item.cjs.entry.js +32 -28
  45. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ic-navigation-menu.cjs.entry.js +1 -1
  47. package/dist/cjs/ic-page-header.cjs.entry.js +1 -1
  48. package/dist/cjs/ic-pagination_4.cjs.entry.js +5 -5
  49. package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
  50. package/dist/cjs/ic-popover-menu.cjs.entry.js +1 -1
  51. package/dist/cjs/ic-radio-group.cjs.entry.js +1 -1
  52. package/dist/cjs/ic-radio-option.cjs.entry.js +1 -1
  53. package/dist/cjs/ic-search-bar.cjs.entry.js +1 -1
  54. package/dist/cjs/ic-select-with-multi.cjs.entry.js +19 -6
  55. package/dist/cjs/ic-select-with-multi.cjs.entry.js.map +1 -1
  56. package/dist/cjs/ic-side-navigation.cjs.entry.js +1 -1
  57. package/dist/cjs/ic-status-tag.cjs.entry.js +1 -1
  58. package/dist/cjs/ic-step.cjs.entry.js +1 -1
  59. package/dist/cjs/ic-stepper.cjs.entry.js +1 -1
  60. package/dist/cjs/ic-switch.cjs.entry.js +1 -1
  61. package/dist/cjs/ic-tab-group.cjs.entry.js +1 -1
  62. package/dist/cjs/ic-tab-panel.cjs.entry.js +1 -1
  63. package/dist/cjs/ic-tab.cjs.entry.js +1 -1
  64. package/dist/cjs/ic-theme.cjs.entry.js +1 -1
  65. package/dist/cjs/ic-toast.cjs.entry.js +1 -1
  66. package/dist/cjs/ic-toggle-button.cjs.entry.js +1 -1
  67. package/dist/cjs/ic-top-navigation.cjs.entry.js +60 -46
  68. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  69. package/dist/cjs/ic-typography.cjs.entry.js +35 -11
  70. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  71. package/dist/cjs/index-4cf27b16.js +10 -18
  72. package/dist/cjs/loader.cjs.js +1 -1
  73. package/dist/collection/collection-manifest.json +1 -2
  74. package/dist/collection/components/ic-data-table/ic-data-table.css +82 -7
  75. package/dist/collection/components/ic-data-table/ic-data-table.js +535 -44
  76. package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
  77. package/dist/collection/components/ic-data-table/ic-data-table.types.js.map +1 -1
  78. package/dist/collection/components/ic-data-table/story-data.js +386 -11
  79. package/dist/collection/components/ic-data-table/story-data.js.map +1 -1
  80. package/dist/collection/components/ic-data-table/test/basic/ic-data-table.e2e.js +217 -0
  81. package/dist/collection/components/ic-data-table/test/basic/ic-data-table.e2e.js.map +1 -0
  82. package/dist/collection/components/ic-data-table/test/basic/ic-data-table.spec.js +319 -0
  83. package/dist/collection/components/ic-data-table/test/basic/ic-data-table.spec.js.map +1 -1
  84. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.css +87 -0
  85. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.js +160 -0
  86. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.js.map +1 -0
  87. package/dist/collection/components/{ic-date-picker/test/a11y/ic-date-picker.test.a11y.js → ic-data-table-title-bar/test/a11y/ic-data-table-title-bar.test.a11y.js} +3 -5
  88. package/dist/collection/components/ic-data-table-title-bar/test/a11y/ic-data-table-title-bar.test.a11y.js.map +1 -0
  89. package/dist/collection/components/ic-data-table-title-bar/test/basic/ic-data-table-title-bar.spec.js +70 -0
  90. package/dist/collection/components/ic-data-table-title-bar/test/basic/ic-data-table-title-bar.spec.js.map +1 -0
  91. package/dist/collection/components/ic-menu-with-multi/ic-menu.js +2 -2
  92. package/dist/collection/components/ic-menu-with-multi/ic-menu.js.map +1 -1
  93. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +1 -1
  94. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
  95. package/dist/collection/components/ic-select-with-multi/ic-select.js +2 -2
  96. package/dist/collection/components/ic-select-with-multi/ic-select.js.map +1 -1
  97. package/dist/collection/utils/constants.js +0 -55
  98. package/dist/collection/utils/constants.js.map +1 -1
  99. package/dist/collection/utils/helpers.js +43 -259
  100. package/dist/collection/utils/helpers.js.map +1 -1
  101. package/dist/collection/utils/types.js +0 -45
  102. package/dist/collection/utils/types.js.map +1 -1
  103. package/dist/components/helpers.js +2 -7
  104. package/dist/components/helpers.js.map +1 -1
  105. package/dist/components/helpers2.js +45 -91
  106. package/dist/components/helpers2.js.map +1 -1
  107. package/dist/components/ic-button2.js +3 -11
  108. package/dist/components/ic-button2.js.map +1 -1
  109. package/dist/components/ic-card.js +1 -1
  110. package/dist/components/ic-checkbox-group.js +1 -1
  111. package/dist/components/ic-checkbox.js +1 -1
  112. package/dist/components/ic-chip.js +1 -1
  113. package/dist/components/{ic-date-input.d.ts → ic-data-table-title-bar.d.ts} +4 -4
  114. package/dist/components/ic-data-table-title-bar.js +136 -0
  115. package/dist/components/ic-data-table-title-bar.js.map +1 -0
  116. package/dist/components/ic-data-table.js +334 -49
  117. package/dist/components/ic-data-table.js.map +1 -1
  118. package/dist/components/ic-empty-state.js +1 -57
  119. package/dist/components/ic-empty-state.js.map +1 -1
  120. package/dist/{esm/ic-empty-state.entry.js → components/ic-empty-state2.js} +38 -11
  121. package/dist/components/ic-empty-state2.js.map +1 -0
  122. package/dist/components/ic-input-component-container2.js +1 -1
  123. package/dist/components/ic-input-component-container2.js.map +1 -1
  124. package/dist/components/ic-link2.js +1 -1
  125. package/dist/components/ic-menu-item2.js +1 -1
  126. package/dist/components/ic-menu2.js +2 -2
  127. package/dist/components/ic-menu2.js.map +1 -1
  128. package/dist/components/ic-menu3.js +1 -1
  129. package/dist/components/ic-menu3.js.map +1 -1
  130. package/dist/components/ic-navigation-button.js +1 -1
  131. package/dist/components/ic-navigation-group.js +12 -15
  132. package/dist/components/ic-navigation-group.js.map +1 -1
  133. package/dist/components/ic-navigation-item.js +32 -28
  134. package/dist/components/ic-navigation-item.js.map +1 -1
  135. package/dist/components/ic-pagination-bar2.js +1 -1
  136. package/dist/components/ic-pagination-bar2.js.map +1 -1
  137. package/dist/components/ic-pagination-item2.js +1 -1
  138. package/dist/components/ic-pagination2.js +5 -5
  139. package/dist/components/ic-pagination2.js.map +1 -1
  140. package/dist/components/ic-radio-group.js +1 -1
  141. package/dist/components/ic-radio-option.js +1 -1
  142. package/dist/components/ic-search-bar.js +1 -1
  143. package/dist/components/ic-select-with-multi.js +14 -1
  144. package/dist/components/ic-select-with-multi.js.map +1 -1
  145. package/dist/components/ic-select2.js +1 -1
  146. package/dist/components/ic-switch.js +1 -1
  147. package/dist/components/ic-tab.js +1 -1
  148. package/dist/components/ic-text-field2.js +1 -1
  149. package/dist/components/ic-toggle-button.js +1 -1
  150. package/dist/components/ic-top-navigation.js +61 -47
  151. package/dist/components/ic-top-navigation.js.map +1 -1
  152. package/dist/components/ic-typography2.js +38 -12
  153. package/dist/components/ic-typography2.js.map +1 -1
  154. package/dist/core/core.css +1 -1
  155. package/dist/core/core.esm.js +1 -1
  156. package/dist/core/core.esm.js.map +1 -1
  157. package/dist/core/{p-8ea47d42.entry.js → p-045359e1.entry.js} +2 -2
  158. package/dist/core/{p-3745da83.entry.js → p-10fb4c46.entry.js} +2 -2
  159. package/dist/core/p-169bfa51.entry.js +2 -0
  160. package/dist/core/p-169bfa51.entry.js.map +1 -0
  161. package/dist/core/{p-2e2e0099.entry.js → p-1ca332ca.entry.js} +2 -2
  162. package/dist/core/p-1e91f540.entry.js +2 -0
  163. package/dist/core/p-1e91f540.entry.js.map +1 -0
  164. package/dist/core/{p-d4fdd8c1.entry.js → p-204ace96.entry.js} +2 -2
  165. package/dist/core/{p-5fe96107.entry.js → p-2eac7dcc.entry.js} +2 -2
  166. package/dist/core/p-347e8dab.entry.js +2 -0
  167. package/dist/core/p-347e8dab.entry.js.map +1 -0
  168. package/dist/core/p-3803a5b5.entry.js +2 -0
  169. package/dist/core/p-3803a5b5.entry.js.map +1 -0
  170. package/dist/core/{p-36508aad.entry.js → p-4753bac8.entry.js} +2 -2
  171. package/dist/core/{p-4f1ffa39.entry.js → p-4baa0916.entry.js} +2 -2
  172. package/dist/core/{p-776671cf.entry.js → p-4f413fc0.entry.js} +2 -2
  173. package/dist/core/p-5171169f.entry.js +2 -0
  174. package/dist/core/p-5171169f.entry.js.map +1 -0
  175. package/dist/core/{p-9d540656.entry.js → p-595be57d.entry.js} +2 -2
  176. package/dist/core/{p-7cecf5d5.entry.js → p-5ae93c16.entry.js} +2 -2
  177. package/dist/core/{p-1ce75941.entry.js → p-5e0c830b.entry.js} +2 -2
  178. package/dist/core/p-5ee4319c.entry.js +2 -0
  179. package/dist/core/p-5ee4319c.entry.js.map +1 -0
  180. package/dist/core/p-5f4e96ec.entry.js +2 -0
  181. package/dist/core/p-5f4e96ec.entry.js.map +1 -0
  182. package/dist/core/{p-e74f1d09.entry.js → p-624d4f5f.entry.js} +2 -2
  183. package/dist/core/{p-9d01a7ad.entry.js → p-6933f8e9.entry.js} +2 -2
  184. package/dist/core/{p-5e2e6c3b.entry.js → p-6c3044b6.entry.js} +2 -2
  185. package/dist/core/p-7267fe19.entry.js +2 -0
  186. package/dist/core/p-7267fe19.entry.js.map +1 -0
  187. package/dist/core/{p-6690bc04.entry.js → p-75dac3d1.entry.js} +2 -2
  188. package/dist/core/{p-85609bdd.entry.js → p-7ef8d616.entry.js} +2 -2
  189. package/dist/core/{p-a0f9b259.entry.js → p-81ddc39d.entry.js} +2 -2
  190. package/dist/core/{p-a6447b13.entry.js → p-869954a2.entry.js} +2 -2
  191. package/dist/core/{p-47ac6838.entry.js → p-88d54b72.entry.js} +2 -2
  192. package/dist/core/{p-06ae5bec.entry.js → p-8b08d8fe.entry.js} +2 -2
  193. package/dist/core/{p-ca8cbd6a.entry.js → p-917c5721.entry.js} +2 -2
  194. package/dist/core/p-942282cd.entry.js +2 -0
  195. package/dist/core/p-942282cd.entry.js.map +1 -0
  196. package/dist/core/p-96b3e7e2.js +2 -0
  197. package/dist/core/p-96b3e7e2.js.map +1 -0
  198. package/dist/core/p-9caf19eb.js +2 -0
  199. package/dist/core/p-9caf19eb.js.map +1 -0
  200. package/dist/core/{p-76d26018.entry.js → p-a0f8efb2.entry.js} +2 -2
  201. package/dist/core/{p-a42c2f37.entry.js → p-a31031a5.entry.js} +2 -2
  202. package/dist/core/{p-b306cbc8.entry.js → p-a434c3d4.entry.js} +2 -2
  203. package/dist/core/{p-86012178.entry.js → p-a43c12cd.entry.js} +2 -2
  204. package/dist/core/{p-8c90110a.entry.js → p-a50c3b9e.entry.js} +2 -2
  205. package/dist/core/p-aac4185b.entry.js +2 -0
  206. package/dist/core/p-aac4185b.entry.js.map +1 -0
  207. package/dist/core/{p-1b7d426b.entry.js → p-ab09986c.entry.js} +2 -2
  208. package/dist/core/{p-9e3178e8.entry.js → p-b6639e4a.entry.js} +2 -2
  209. package/dist/core/{p-9e3178e8.entry.js.map → p-b6639e4a.entry.js.map} +1 -1
  210. package/dist/core/{p-62e22508.entry.js → p-b82dcc29.entry.js} +2 -2
  211. package/dist/core/{p-d5c99ec3.entry.js → p-ba86928c.entry.js} +2 -2
  212. package/dist/core/{p-d3856ed3.entry.js → p-c34848da.entry.js} +2 -2
  213. package/dist/core/{p-98448bdb.entry.js → p-d8469ac0.entry.js} +2 -2
  214. package/dist/core/{p-1832f4b5.entry.js → p-db9c03c0.entry.js} +2 -2
  215. package/dist/core/{p-ae422058.entry.js → p-e3997d60.entry.js} +2 -2
  216. package/dist/core/{p-982a6e88.entry.js → p-e834344e.entry.js} +2 -2
  217. package/dist/core/p-f14454b1.entry.js +2 -0
  218. package/dist/core/{p-f55ad6ae.entry.js.map → p-f14454b1.entry.js.map} +1 -1
  219. package/dist/core/{p-c7820c23.entry.js → p-f3c840cd.entry.js} +2 -2
  220. package/dist/core/p-f6888309.entry.js +2 -0
  221. package/dist/core/p-f6888309.entry.js.map +1 -0
  222. package/dist/core/p-f74a8752.entry.js +2 -0
  223. package/dist/core/p-f74a8752.entry.js.map +1 -0
  224. package/dist/core/{p-5759d771.entry.js → p-f7a14c01.entry.js} +2 -2
  225. package/dist/core/{p-0939ce92.entry.js → p-f843da01.entry.js} +2 -2
  226. package/dist/core/{p-e84b0310.entry.js → p-fc5611e2.entry.js} +2 -2
  227. package/dist/esm/core.js +1 -1
  228. package/dist/esm/{helpers-7aa21b0a.js → helpers-12b4266a.js} +2 -7
  229. package/dist/esm/helpers-12b4266a.js.map +1 -0
  230. package/dist/esm/{helpers-f328a7b6.js → helpers-1f07eb61.js} +46 -92
  231. package/dist/esm/helpers-1f07eb61.js.map +1 -0
  232. package/dist/esm/ic-accordion.entry.js +1 -1
  233. package/dist/esm/ic-alert.entry.js +1 -1
  234. package/dist/esm/ic-back-to-top.entry.js +1 -1
  235. package/dist/esm/ic-badge.entry.js +1 -1
  236. package/dist/esm/ic-breadcrumb-group.entry.js +1 -1
  237. package/dist/esm/ic-breadcrumb.entry.js +1 -1
  238. package/dist/esm/ic-button_3.entry.js +2 -8
  239. package/dist/esm/ic-button_3.entry.js.map +1 -1
  240. package/dist/esm/ic-card.entry.js +1 -1
  241. package/dist/esm/ic-checkbox-group.entry.js +1 -1
  242. package/dist/esm/ic-checkbox.entry.js +1 -1
  243. package/dist/esm/ic-chip.entry.js +1 -1
  244. package/dist/esm/ic-data-row.entry.js +1 -1
  245. package/dist/esm/ic-data-table-title-bar.entry.js +53 -0
  246. package/dist/esm/ic-data-table-title-bar.entry.js.map +1 -0
  247. package/dist/esm/ic-data-table.entry.js +309 -44
  248. package/dist/esm/ic-data-table.entry.js.map +1 -1
  249. package/dist/esm/ic-dialog.entry.js +1 -1
  250. package/dist/esm/ic-divider.entry.js +1 -1
  251. package/dist/esm/{ic-pagination-bar.entry.js → ic-empty-state_2.entry.js} +34 -5
  252. package/dist/esm/ic-empty-state_2.entry.js.map +1 -0
  253. package/dist/esm/ic-footer-link-group.entry.js +1 -1
  254. package/dist/esm/ic-footer-link.entry.js +1 -1
  255. package/dist/esm/ic-footer.entry.js +1 -1
  256. package/dist/esm/ic-hero.entry.js +1 -1
  257. package/dist/esm/ic-horizontal-scroll.entry.js +1 -1
  258. package/dist/esm/{ic-menu.entry.js → ic-input-component-container_3.entry.js} +69 -7
  259. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -0
  260. package/dist/esm/ic-input-label_2.entry.js +81 -0
  261. package/dist/esm/ic-input-label_2.entry.js.map +1 -0
  262. package/dist/esm/ic-link.entry.js +1 -1
  263. package/dist/esm/ic-menu-group.entry.js +1 -1
  264. package/dist/esm/ic-menu-item.entry.js +1 -1
  265. package/dist/esm/ic-menu-with-multi.entry.js +1 -1
  266. package/dist/esm/ic-menu-with-multi.entry.js.map +1 -1
  267. package/dist/esm/ic-navigation-button.entry.js +1 -1
  268. package/dist/esm/ic-navigation-group.entry.js +13 -16
  269. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  270. package/dist/esm/ic-navigation-item.entry.js +32 -28
  271. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  272. package/dist/esm/ic-navigation-menu.entry.js +1 -1
  273. package/dist/esm/ic-page-header.entry.js +1 -1
  274. package/dist/esm/ic-pagination_4.entry.js +5 -5
  275. package/dist/esm/ic-pagination_4.entry.js.map +1 -1
  276. package/dist/esm/ic-popover-menu.entry.js +1 -1
  277. package/dist/esm/ic-radio-group.entry.js +1 -1
  278. package/dist/esm/ic-radio-option.entry.js +1 -1
  279. package/dist/esm/ic-search-bar.entry.js +1 -1
  280. package/dist/esm/ic-select-with-multi.entry.js +14 -1
  281. package/dist/esm/ic-select-with-multi.entry.js.map +1 -1
  282. package/dist/esm/ic-side-navigation.entry.js +1 -1
  283. package/dist/esm/ic-status-tag.entry.js +1 -1
  284. package/dist/esm/ic-step.entry.js +1 -1
  285. package/dist/esm/ic-stepper.entry.js +1 -1
  286. package/dist/esm/ic-switch.entry.js +1 -1
  287. package/dist/esm/ic-tab-group.entry.js +1 -1
  288. package/dist/esm/ic-tab-panel.entry.js +1 -1
  289. package/dist/esm/ic-tab.entry.js +1 -1
  290. package/dist/esm/ic-theme.entry.js +1 -1
  291. package/dist/esm/ic-toast.entry.js +1 -1
  292. package/dist/esm/ic-toggle-button.entry.js +1 -1
  293. package/dist/esm/ic-top-navigation.entry.js +60 -46
  294. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  295. package/dist/esm/ic-typography.entry.js +36 -12
  296. package/dist/esm/ic-typography.entry.js.map +1 -1
  297. package/dist/esm/index-93509377.js +10 -18
  298. package/dist/esm/loader.js +1 -1
  299. package/dist/esm/polyfills/core-js.js +0 -0
  300. package/dist/esm/polyfills/dom.js +0 -0
  301. package/dist/esm/polyfills/es5-html-element.js +0 -0
  302. package/dist/esm/polyfills/index.js +0 -0
  303. package/dist/esm/polyfills/system.js +0 -0
  304. package/dist/types/components/ic-data-table/ic-data-table.d.ts +96 -1
  305. package/dist/types/components/ic-data-table/ic-data-table.types.d.ts +11 -0
  306. package/dist/types/components/ic-data-table/story-data.d.ts +99 -0
  307. package/dist/types/components/ic-data-table-title-bar/ic-data-table-title-bar.d.ts +36 -0
  308. package/dist/types/components/ic-menu-with-multi/ic-menu.d.ts +2 -2
  309. package/dist/types/components/ic-select-with-multi/ic-select.d.ts +2 -2
  310. package/dist/types/components.d.ts +141 -389
  311. package/dist/types/utils/constants.d.ts +0 -37
  312. package/dist/types/utils/helpers.d.ts +16 -83
  313. package/dist/types/utils/types.d.ts +1 -92
  314. package/hydrate/index.js +945 -2932
  315. package/package.json +3 -4
  316. package/dist/cjs/date-helpers-c9551119.js +0 -150
  317. package/dist/cjs/date-helpers-c9551119.js.map +0 -1
  318. package/dist/cjs/helpers-7a069459.js.map +0 -1
  319. package/dist/cjs/helpers-f75cf7cf.js.map +0 -1
  320. package/dist/cjs/ic-date-input.cjs.entry.js +0 -1073
  321. package/dist/cjs/ic-date-input.cjs.entry.js.map +0 -1
  322. package/dist/cjs/ic-date-picker.cjs.entry.js +0 -1050
  323. package/dist/cjs/ic-date-picker.cjs.entry.js.map +0 -1
  324. package/dist/cjs/ic-empty-state.cjs.entry.js +0 -38
  325. package/dist/cjs/ic-empty-state.cjs.entry.js.map +0 -1
  326. package/dist/cjs/ic-input-component-container_4.cjs.entry.js +0 -150
  327. package/dist/cjs/ic-input-component-container_4.cjs.entry.js.map +0 -1
  328. package/dist/cjs/ic-menu.cjs.entry.js.map +0 -1
  329. package/dist/cjs/ic-pagination-bar.cjs.entry.js.map +0 -1
  330. package/dist/collection/assets/calendar.svg +0 -3
  331. package/dist/collection/components/ic-date-input/ic-date-input.css +0 -560
  332. package/dist/collection/components/ic-date-input/ic-date-input.js +0 -1668
  333. package/dist/collection/components/ic-date-input/ic-date-input.js.map +0 -1
  334. package/dist/collection/components/ic-date-input/story-data.js +0 -28
  335. package/dist/collection/components/ic-date-input/story-data.js.map +0 -1
  336. package/dist/collection/components/ic-date-input/test/basic/ic-date-input.spec.js +0 -1156
  337. package/dist/collection/components/ic-date-input/test/basic/ic-date-input.spec.js.map +0 -1
  338. package/dist/collection/components/ic-date-input/test/helpers/ic-date-input.js +0 -42
  339. package/dist/collection/components/ic-date-input/test/helpers/ic-date-input.js.map +0 -1
  340. package/dist/collection/components/ic-date-picker/ic-date-picker.css +0 -878
  341. package/dist/collection/components/ic-date-picker/ic-date-picker.js +0 -1506
  342. package/dist/collection/components/ic-date-picker/ic-date-picker.js.map +0 -1
  343. package/dist/collection/components/ic-date-picker/ic-day-button.js +0 -36
  344. package/dist/collection/components/ic-date-picker/ic-day-button.js.map +0 -1
  345. package/dist/collection/components/ic-date-picker/ic-month-picker.js +0 -29
  346. package/dist/collection/components/ic-date-picker/ic-month-picker.js.map +0 -1
  347. package/dist/collection/components/ic-date-picker/ic-year-picker.js +0 -39
  348. package/dist/collection/components/ic-date-picker/ic-year-picker.js.map +0 -1
  349. package/dist/collection/components/ic-date-picker/story-data.js +0 -147
  350. package/dist/collection/components/ic-date-picker/story-data.js.map +0 -1
  351. package/dist/collection/components/ic-date-picker/test/a11y/ic-date-picker.test.a11y.js.map +0 -1
  352. package/dist/collection/components/ic-date-picker/test/basic/ic-date-picker-utils.spec.js +0 -207
  353. package/dist/collection/components/ic-date-picker/test/basic/ic-date-picker-utils.spec.js.map +0 -1
  354. package/dist/collection/components/ic-date-picker/test/basic/ic-date-picker.spec.js +0 -962
  355. package/dist/collection/components/ic-date-picker/test/basic/ic-date-picker.spec.js.map +0 -1
  356. package/dist/collection/utils/date-helpers.js +0 -133
  357. package/dist/collection/utils/date-helpers.js.map +0 -1
  358. package/dist/components/ic-date-input.js +0 -8
  359. package/dist/components/ic-date-input.js.map +0 -1
  360. package/dist/components/ic-date-input2.js +0 -1301
  361. package/dist/components/ic-date-input2.js.map +0 -1
  362. package/dist/components/ic-date-picker.d.ts +0 -11
  363. package/dist/components/ic-date-picker.js +0 -1171
  364. package/dist/components/ic-date-picker.js.map +0 -1
  365. package/dist/core/p-16f67397.entry.js +0 -2
  366. package/dist/core/p-16f67397.entry.js.map +0 -1
  367. package/dist/core/p-2c1fecb9.entry.js +0 -2
  368. package/dist/core/p-2c1fecb9.entry.js.map +0 -1
  369. package/dist/core/p-33679c06.entry.js +0 -2
  370. package/dist/core/p-33679c06.entry.js.map +0 -1
  371. package/dist/core/p-33dd24eb.js +0 -2
  372. package/dist/core/p-33dd24eb.js.map +0 -1
  373. package/dist/core/p-5392bca0.entry.js +0 -2
  374. package/dist/core/p-5392bca0.entry.js.map +0 -1
  375. package/dist/core/p-550a5674.entry.js +0 -2
  376. package/dist/core/p-550a5674.entry.js.map +0 -1
  377. package/dist/core/p-6c0e2ceb.entry.js +0 -2
  378. package/dist/core/p-6c0e2ceb.entry.js.map +0 -1
  379. package/dist/core/p-8ab12a15.entry.js +0 -2
  380. package/dist/core/p-8ab12a15.entry.js.map +0 -1
  381. package/dist/core/p-aabab75f.entry.js +0 -2
  382. package/dist/core/p-aabab75f.entry.js.map +0 -1
  383. package/dist/core/p-c7590421.entry.js +0 -2
  384. package/dist/core/p-c7590421.entry.js.map +0 -1
  385. package/dist/core/p-caf857de.entry.js +0 -2
  386. package/dist/core/p-caf857de.entry.js.map +0 -1
  387. package/dist/core/p-cd799087.js +0 -2
  388. package/dist/core/p-cd799087.js.map +0 -1
  389. package/dist/core/p-d32692e2.entry.js +0 -2
  390. package/dist/core/p-d32692e2.entry.js.map +0 -1
  391. package/dist/core/p-d35c7c18.js +0 -2
  392. package/dist/core/p-d35c7c18.js.map +0 -1
  393. package/dist/core/p-e189f1d0.entry.js +0 -2
  394. package/dist/core/p-e189f1d0.entry.js.map +0 -1
  395. package/dist/core/p-e5d76564.entry.js +0 -2
  396. package/dist/core/p-e5d76564.entry.js.map +0 -1
  397. package/dist/core/p-f55ad6ae.entry.js +0 -2
  398. package/dist/core/p-f91527a0.entry.js +0 -2
  399. package/dist/core/p-f91527a0.entry.js.map +0 -1
  400. package/dist/esm/date-helpers-0e5e32a7.js +0 -136
  401. package/dist/esm/date-helpers-0e5e32a7.js.map +0 -1
  402. package/dist/esm/helpers-7aa21b0a.js.map +0 -1
  403. package/dist/esm/helpers-f328a7b6.js.map +0 -1
  404. package/dist/esm/ic-date-input.entry.js +0 -1069
  405. package/dist/esm/ic-date-input.entry.js.map +0 -1
  406. package/dist/esm/ic-date-picker.entry.js +0 -1046
  407. package/dist/esm/ic-date-picker.entry.js.map +0 -1
  408. package/dist/esm/ic-empty-state.entry.js.map +0 -1
  409. package/dist/esm/ic-input-component-container_4.entry.js +0 -143
  410. package/dist/esm/ic-input-component-container_4.entry.js.map +0 -1
  411. package/dist/esm/ic-menu.entry.js.map +0 -1
  412. package/dist/esm/ic-pagination-bar.entry.js.map +0 -1
  413. package/dist/types/components/ic-date-input/ic-date-input.d.ts +0 -242
  414. package/dist/types/components/ic-date-input/story-data.d.ts +0 -1
  415. package/dist/types/components/ic-date-input/test/helpers/ic-date-input.d.ts +0 -23
  416. package/dist/types/components/ic-date-picker/ic-date-picker.d.ts +0 -251
  417. package/dist/types/components/ic-date-picker/ic-day-button.d.ts +0 -16
  418. package/dist/types/components/ic-date-picker/ic-month-picker.d.ts +0 -14
  419. package/dist/types/components/ic-date-picker/ic-year-picker.d.ts +0 -16
  420. package/dist/types/components/ic-date-picker/story-data.d.ts +0 -22
  421. package/dist/types/utils/date-helpers.d.ts +0 -22
  422. /package/dist/core/{p-8ea47d42.entry.js.map → p-045359e1.entry.js.map} +0 -0
  423. /package/dist/core/{p-3745da83.entry.js.map → p-10fb4c46.entry.js.map} +0 -0
  424. /package/dist/core/{p-2e2e0099.entry.js.map → p-1ca332ca.entry.js.map} +0 -0
  425. /package/dist/core/{p-d4fdd8c1.entry.js.map → p-204ace96.entry.js.map} +0 -0
  426. /package/dist/core/{p-5fe96107.entry.js.map → p-2eac7dcc.entry.js.map} +0 -0
  427. /package/dist/core/{p-36508aad.entry.js.map → p-4753bac8.entry.js.map} +0 -0
  428. /package/dist/core/{p-4f1ffa39.entry.js.map → p-4baa0916.entry.js.map} +0 -0
  429. /package/dist/core/{p-776671cf.entry.js.map → p-4f413fc0.entry.js.map} +0 -0
  430. /package/dist/core/{p-9d540656.entry.js.map → p-595be57d.entry.js.map} +0 -0
  431. /package/dist/core/{p-7cecf5d5.entry.js.map → p-5ae93c16.entry.js.map} +0 -0
  432. /package/dist/core/{p-1ce75941.entry.js.map → p-5e0c830b.entry.js.map} +0 -0
  433. /package/dist/core/{p-e74f1d09.entry.js.map → p-624d4f5f.entry.js.map} +0 -0
  434. /package/dist/core/{p-9d01a7ad.entry.js.map → p-6933f8e9.entry.js.map} +0 -0
  435. /package/dist/core/{p-5e2e6c3b.entry.js.map → p-6c3044b6.entry.js.map} +0 -0
  436. /package/dist/core/{p-6690bc04.entry.js.map → p-75dac3d1.entry.js.map} +0 -0
  437. /package/dist/core/{p-85609bdd.entry.js.map → p-7ef8d616.entry.js.map} +0 -0
  438. /package/dist/core/{p-a0f9b259.entry.js.map → p-81ddc39d.entry.js.map} +0 -0
  439. /package/dist/core/{p-a6447b13.entry.js.map → p-869954a2.entry.js.map} +0 -0
  440. /package/dist/core/{p-47ac6838.entry.js.map → p-88d54b72.entry.js.map} +0 -0
  441. /package/dist/core/{p-06ae5bec.entry.js.map → p-8b08d8fe.entry.js.map} +0 -0
  442. /package/dist/core/{p-ca8cbd6a.entry.js.map → p-917c5721.entry.js.map} +0 -0
  443. /package/dist/core/{p-76d26018.entry.js.map → p-a0f8efb2.entry.js.map} +0 -0
  444. /package/dist/core/{p-a42c2f37.entry.js.map → p-a31031a5.entry.js.map} +0 -0
  445. /package/dist/core/{p-b306cbc8.entry.js.map → p-a434c3d4.entry.js.map} +0 -0
  446. /package/dist/core/{p-86012178.entry.js.map → p-a43c12cd.entry.js.map} +0 -0
  447. /package/dist/core/{p-8c90110a.entry.js.map → p-a50c3b9e.entry.js.map} +0 -0
  448. /package/dist/core/{p-1b7d426b.entry.js.map → p-ab09986c.entry.js.map} +0 -0
  449. /package/dist/core/{p-62e22508.entry.js.map → p-b82dcc29.entry.js.map} +0 -0
  450. /package/dist/core/{p-d5c99ec3.entry.js.map → p-ba86928c.entry.js.map} +0 -0
  451. /package/dist/core/{p-d3856ed3.entry.js.map → p-c34848da.entry.js.map} +0 -0
  452. /package/dist/core/{p-98448bdb.entry.js.map → p-d8469ac0.entry.js.map} +0 -0
  453. /package/dist/core/{p-1832f4b5.entry.js.map → p-db9c03c0.entry.js.map} +0 -0
  454. /package/dist/core/{p-ae422058.entry.js.map → p-e3997d60.entry.js.map} +0 -0
  455. /package/dist/core/{p-982a6e88.entry.js.map → p-e834344e.entry.js.map} +0 -0
  456. /package/dist/core/{p-c7820c23.entry.js.map → p-f3c840cd.entry.js.map} +0 -0
  457. /package/dist/core/{p-5759d771.entry.js.map → p-f7a14c01.entry.js.map} +0 -0
  458. /package/dist/core/{p-0939ce92.entry.js.map → p-f843da01.entry.js.map} +0 -0
  459. /package/dist/core/{p-e84b0310.entry.js.map → p-fc5611e2.entry.js.map} +0 -0
  460. /package/dist/types/components/{ic-date-picker/test/a11y/ic-date-picker.test.a11y.d.ts → ic-data-table-title-bar/test/a11y/ic-data-table-title-bar.test.a11y.d.ts} +0 -0
@@ -1 +0,0 @@
1
- {"file":"ic-date-picker.entry.cjs.js","mappings":"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","names":["stringEnumToArray","IcDayNames","IcDateInputMonths","h","index","dateInRange","getMonthStart","getMonthEnd","yearInRange","dateMatches","getWeekStart","getWeekEnd","clampDate","IcWeekDays","createDate","onComponentRequiredPropUndefined","IcShortDayNames","Host"],"sources":["src/components/ic-date-picker/ic-day-button.tsx","src/components/ic-date-picker/ic-month-picker.tsx","src/components/ic-date-picker/ic-year-picker.tsx","src/components/ic-date-picker/ic-date-picker.css?tag=ic-date-picker&encapsulation=shadow","src/components/ic-date-picker/ic-date-picker.tsx"],"sourcesContent":["import { h, FunctionalComponent } from \"@stencil/core\";\nimport { stringEnumToArray } from \"../../utils/helpers\";\nimport { IcDayNames, IcDateInputMonths } from \"../../utils/types\";\n\nexport type DayButtonProps = {\n focussed: boolean;\n today: boolean;\n day: Date;\n monthInView: number;\n onFocusDay: () => void;\n onBlurDay: () => void;\n onSelectDay: (day: Date) => void;\n selected: boolean;\n focussedDayRef?: (element: HTMLButtonElement) => void;\n inRange: boolean;\n showDaysOutsideMonth: boolean;\n disableDay: boolean;\n};\n\nexport const DayButton: FunctionalComponent<DayButtonProps> = ({\n focussed,\n today,\n day,\n monthInView,\n onFocusDay,\n onBlurDay,\n onSelectDay,\n selected,\n focussedDayRef,\n inRange,\n showDaysOutsideMonth,\n disableDay,\n}) => {\n const handleDayClick = (): void => {\n onSelectDay(day);\n };\n\n const handleDayFocus = (): void => {\n onFocusDay();\n };\n\n const handleDayBlur = (): void => {\n onBlurDay();\n };\n\n const dayNames = stringEnumToArray(IcDayNames);\n const months = stringEnumToArray(IcDateInputMonths);\n const outsideRange = !inRange || disableDay;\n const outsideMonth = monthInView !== day.getMonth();\n const disabled = outsideRange || (outsideMonth && !showDaysOutsideMonth);\n\n return (\n <div class=\"day-button-container\">\n <button\n class={{\n \"day-button\": true,\n \"outside-month\": outsideMonth,\n \"outside-range\": outsideRange,\n hidden: outsideMonth && !showDaysOutsideMonth,\n disabled: disabled,\n today: today,\n selected: selected,\n focussed: focussed,\n }}\n tabIndex={focussed ? 0 : -1}\n aria-hidden={outsideMonth ? \"true\" : \"false\"}\n aria-disabled={disabled ? \"true\" : \"false\"}\n aria-current={today ? \"date\" : undefined}\n aria-label={\n disabled || outsideMonth || outsideRange\n ? undefined\n : `Choose ${dayNames[day.getDay()]}, ${day.getDate()} ${\n months[day.getMonth()]\n } ${day.getFullYear()}`\n }\n disabled={disabled}\n onClick={handleDayClick}\n onBlur={handleDayBlur}\n onFocus={handleDayFocus}\n ref={(el: HTMLButtonElement) => {\n if (focussed && el && focussedDayRef) {\n focussedDayRef(el);\n }\n }}\n >\n {(!outsideMonth || (outsideMonth && showDaysOutsideMonth)) && (\n <ic-typography variant=\"subtitle-small\" italic={outsideMonth}>\n {day.getDate()}\n </ic-typography>\n )}\n </button>\n </div>\n );\n};\n","import { h, FunctionalComponent } from \"@stencil/core\";\nimport {\n dateInRange,\n getMonthStart,\n getMonthEnd,\n} from \"../../utils/date-helpers\";\nimport { stringEnumToArray } from \"../../utils/helpers\";\nimport { IcSizes, IcDateInputMonths } from \"../../utils/types\";\n\nexport type MonthPickerProps = {\n size: IcSizes;\n focussedMonth: number;\n monthInView: number;\n yearInView: number;\n onSelectMonth: (month: number) => void;\n onKeyDown: (ev: KeyboardEvent) => void;\n focussedMonthRef: (element: HTMLIcButtonElement) => void;\n minDate: Date;\n maxDate: Date;\n};\n\nexport const MonthPicker: FunctionalComponent<MonthPickerProps> = ({\n size,\n focussedMonth,\n monthInView,\n onSelectMonth,\n onKeyDown,\n focussedMonthRef,\n minDate,\n maxDate,\n yearInView,\n}) => {\n const handleMonthClick = (ev: MouseEvent): void => {\n const button = ev.target as HTMLElement;\n onSelectMonth(Number(button.getAttribute(\"data-month\")));\n };\n\n const monthNames = stringEnumToArray(IcDateInputMonths);\n\n return (\n <div\n class={{\n \"month-picker\": true,\n }}\n role=\"list\"\n >\n {monthNames.map((month, index) => {\n const current = monthInView === index;\n const focussed = focussedMonth === index;\n const outsideRange = !dateInRange(\n new Date(yearInView, index, 1),\n minDate ? getMonthStart(minDate) : null,\n maxDate ? getMonthEnd(maxDate) : null\n );\n\n return (\n <ic-button\n role=\"listitem\"\n class={{\n \"month-button\": true,\n selected: current,\n focussed: focussed,\n disabled: outsideRange,\n }}\n full-width\n disabled={outsideRange}\n variant={current ? \"primary\" : \"tertiary\"}\n data-month={index}\n size={size}\n tabIndex={focussed ? 0 : -1}\n aria-current={current ? \"true\" : \"false\"}\n aria-label={current ? \"\" : `select ${month}`}\n onClick={handleMonthClick}\n onKeyDown={onKeyDown}\n ref={(el: HTMLIcButtonElement) => {\n if (focussed && el) {\n focussedMonthRef(el);\n }\n }}\n >\n {month}\n </ic-button>\n );\n })}\n </div>\n );\n};\n","import { h, FunctionalComponent } from \"@stencil/core\";\nimport { yearInRange } from \"../../utils/date-helpers\";\nimport { IcSizes } from \"../../utils/types\";\n\nexport type YearPickerProps = {\n decadeView: number[];\n size: IcSizes;\n focussedYear: number;\n yearInView: number;\n onSelectYear: (year: number) => void;\n onKeyDown: (ev: KeyboardEvent) => void;\n onFocusYear: () => void;\n onBlurYear: () => void;\n minDate: Date;\n maxDate: Date;\n focussedYearRef: (element: HTMLIcButtonElement) => void;\n};\n\nexport const YearPicker: FunctionalComponent<YearPickerProps> = ({\n decadeView,\n size,\n focussedYear,\n yearInView,\n onSelectYear,\n onFocusYear,\n onBlurYear,\n onKeyDown,\n minDate,\n maxDate,\n focussedYearRef,\n}) => {\n const handleYearClick = (ev: MouseEvent): void => {\n const button = ev.target as HTMLElement;\n onSelectYear(Number(button.getAttribute(\"data-year\")));\n };\n\n const handleYearFocus = (): void => {\n onFocusYear();\n };\n\n const handleYearBlur = (): void => {\n onBlurYear();\n };\n\n const navButtonMouseDownHandler = (ev: MouseEvent): void => {\n ev.preventDefault();\n };\n\n const prevDecade = decadeView[0];\n const nextDecade = decadeView[11];\n const years = decadeView.slice(1, 11);\n\n return (\n <div class=\"year-picker\" role=\"list\">\n <div class=\"prev-decade\" aria-hidden=\"true\">\n <ic-button\n id=\"prev-decade-button\"\n class={{\n \"year-button\": true,\n }}\n disabled={!yearInRange(prevDecade, minDate, maxDate)}\n data-year={prevDecade}\n tabIndex={-1}\n variant=\"tertiary\"\n onClick={handleYearClick}\n onMouseDown={navButtonMouseDownHandler}\n aria-hidden=\"true\"\n size={size}\n >\n {`${prevDecade - 9}s`}\n <svg\n slot=\"left-icon\"\n width=\"12\"\n height=\"12\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M11.3333 5.33341H3.21996L6.94663 1.60675L5.99996 0.666748L0.666626 6.00008L5.99996 11.3334L6.93996 10.3934L3.21996 6.66675H11.3333V5.33341Z\"\n fill=\"currentColor\"\n />\n </svg>\n </ic-button>\n </div>\n {years.map((yr) => {\n const current = yearInView === yr;\n const focussed = focussedYear === yr;\n return (\n <ic-button\n class={{\n \"year-button\": true,\n selected: current,\n focussed: focussed,\n }}\n disabled={!yearInRange(yr, minDate, maxDate)}\n data-year={yr}\n tabIndex={focussed ? 0 : -1}\n variant={current ? \"primary\" : \"tertiary\"}\n onClick={handleYearClick}\n aria-label={current ? \"\" : `select ${yr}`}\n role=\"listitem\"\n aria-current={current ? \"true\" : \"false\"}\n onKeyDown={onKeyDown}\n onFocus={handleYearFocus}\n onBlur={handleYearBlur}\n size={size}\n ref={(el: HTMLIcButtonElement) => {\n if (focussed && el) {\n focussedYearRef(el);\n }\n }}\n >\n {yr}\n </ic-button>\n );\n })}\n <div class=\"next-decade\" aria-hidden=\"true\">\n <ic-button\n id=\"next-decade-button\"\n class={{\n \"year-button\": true,\n flip: true,\n }}\n disabled={!yearInRange(nextDecade, minDate, maxDate)}\n data-year={nextDecade}\n tabIndex={-1}\n variant=\"tertiary\"\n onClick={handleYearClick}\n onMouseDown={navButtonMouseDownHandler}\n aria-hidden=\"true\"\n size={size}\n >\n {`${nextDecade}s`}\n <svg\n slot=\"right-icon\"\n width=\"12\"\n height=\"12\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M11.3333 5.33341H3.21996L6.94663 1.60675L5.99996 0.666748L0.666626 6.00008L5.99996 11.3334L6.93996 10.3934L3.21996 6.66675H11.3333V5.33341Z\"\n fill=\"currentColor\"\n />\n </svg>\n </ic-button>\n </div>\n </div>\n );\n};\n","@import \"../../../dist/core/normalize.css\";\n\n/**\n* @prop --input-width: Width of the input field\n @prop --ic-z-index-date-picker: z-index of date picker.\n*/\n\n:host {\n display: block;\n position: relative;\n\n --month-year-picker-button-width: 5rem;\n --month-button-width: 5.5rem;\n --input-field-width: var(--input-width, 19.125rem);\n}\n\n:host(.large) {\n --month-button-width: 6.3125rem;\n --input-field-width: var(--input-width, 21.125rem);\n}\n\n:host(.small) {\n --month-button-width: 6.25rem;\n --input-field-width: var(--input-width, 17.125rem);\n}\n\n:host .date-input-container {\n position: relative;\n}\n\nic-date-input {\n --input-width: var(--input-field-width);\n}\n\n:host .calendar-container {\n min-width: 19rem;\n max-width: 23.5rem;\n width: var(--input-width);\n display: flex;\n flex-direction: column;\n gap: var(--ic-space-xs);\n position: absolute;\n border: var(--ic-border-default);\n border-radius: var(--ic-border-radius);\n align-items: center;\n background-color: var(--ic-architectural-white);\n z-index: var(--ic-z-index-date-picker);\n box-sizing: border-box;\n box-shadow: var(--ic-elevation-overlay);\n margin-top: var(--ic-space-xxxs);\n padding: var(--ic-space-xs);\n animation: fade-in-calendar var(--ic-transition-duration-slow);\n}\n\n:host(.small) .calendar-container {\n min-width: 17rem;\n max-width: 21.5rem;\n}\n\n:host(.large) .calendar-container {\n min-width: 21rem;\n max-width: 25.5rem;\n}\n\n:host .calendar-container.above {\n bottom: calc(var(--ic-space-xxl) - var(--ic-space-xxs));\n}\n\n:host .month-year-nav-container {\n display: flex;\n justify-content: space-between;\n align-items: center;\n align-self: stretch;\n}\n\n:host .month-year-nav-container.hidden {\n display: none;\n}\n\n:host .month-year-nav {\n display: flex;\n justify-content: space-between;\n align-items: center;\n flex: 1 0 0;\n}\n\n:host .month-picker,\n:host .year-picker {\n flex-wrap: wrap;\n display: inline-flex;\n align-items: center;\n width: 17.5rem;\n column-gap: var(--ic-space-xs);\n row-gap: var(--ic-space-xxs);\n}\n\n:host(.small) .month-picker,\n:host(.small) .year-picker {\n width: 13.125rem;\n}\n\n:host(.large) .month-picker,\n:host(.large) .year-picker {\n width: 20rem;\n}\n\n:host .month-picker-button,\n:host .year-picker-button {\n width: 5rem;\n\n --min-width: 5rem;\n}\n\n:host .month-button,\n:host .year-button {\n width: var(--month-button-width);\n}\n\n:host .month-button.focussed,\n:host .year-button.focussed {\n z-index: 1;\n}\n\n:host .month-button::part(button),\n:host .year-button::part(button) {\n min-width: var(--month-button-width);\n}\n\n:host .prev-decade .year-button svg {\n margin-right: calc(-1 * var(--ic-space-xl));\n padding-top: var(--ic-space-sm);\n}\n\n:host .prev-decade .year-button::part(button) {\n padding-left: 0;\n padding-right: var(--ic-space-lg);\n}\n\n:host(.small) .prev-decade .year-button::part(button) {\n padding-left: 0;\n padding-right: calc(var(--ic-space-lg) + var(--ic-space-xxs));\n}\n\n:host .next-decade .year-button svg {\n margin-left: calc(-1 * var(--ic-space-xl));\n padding-top: var(--ic-space-sm);\n}\n\n:host .next-decade .year-button::part(button) {\n padding-right: 0;\n padding-left: var(--ic-space-lg);\n}\n\n:host(.small) .next-decade .year-button::part(button),\n:host(.large) .next-decade .year-button::part(button) {\n padding-left: var(--ic-space-xl);\n}\n\n:host .bottom-buttons {\n padding-top: var(--ic-space-xs);\n display: flex;\n justify-content: space-between;\n align-items: center;\n align-self: stretch;\n animation: fade-in-buttons var(--ic-transition-duration-slow);\n}\n\n:host(.small) .bottom-buttons {\n padding-top: var(--ic-space-xxs);\n}\n\n:host .bottom-buttons.no-today {\n align-items: flex-end;\n flex-direction: column;\n}\n\n:host .bottom-buttons.hidden {\n display: none;\n}\n\n:host .calendar {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n width: 15.75rem;\n animation: fade-in-buttons var(--ic-transition-duration-slow);\n}\n\n:host(.large) .calendar {\n width: 19.25rem;\n}\n\n:host(.small) .calendar {\n padding-bottom: var(--ic-space-xxs);\n width: 14rem;\n}\n\n:host .hidden {\n display: none;\n}\n\n:host .weekdays {\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n padding-bottom: var(--ic-space-xs);\n align-self: stretch;\n}\n\n:host .calendar-days-container {\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n row-gap: var(--ic-space-xs);\n padding: var(--ic-space-xxs) 0;\n}\n\n:host(.small) .calendar-days-container {\n padding: var(--ic-space-xxxs) 0;\n}\n\n:host(.large) .calendar-days-container {\n padding: var(--ic-space-xs) 0;\n}\n\n:host .calendar-day-header {\n display: flex;\n width: 2rem;\n padding: var(--ic-space-xxs) 0;\n justify-content: center;\n align-items: center;\n}\n\n:host(.small) .calendar-day-header,\n:host(.large) .calendar-day-header {\n padding: var(--ic-space-xxs);\n}\n\n:host .calendar-day-header ic-typography {\n color: var(--ic-color-tertiary-text);\n text-align: center;\n}\n\n:host .day-button-container {\n display: flex;\n justify-content: center;\n align-items: center;\n width: 2.25rem;\n height: 2.25rem;\n}\n\n:host(.small) .day-button-container {\n width: 2rem;\n height: 2rem;\n}\n\n:host(.large) .day-button-container {\n width: 2.5rem;\n height: 2.5rem;\n}\n\n:host .day-button {\n display: flex;\n position: relative;\n justify-content: center;\n align-items: center;\n border: 0;\n border-radius: 2rem;\n background-color: var(--ic-architectural-white);\n width: 2rem;\n height: 2rem;\n cursor: pointer;\n transition: var(--ic-easing-transition-fast);\n z-index: 0;\n}\n\n:host .day-button.disabled {\n cursor: default;\n}\n\n:host(.large) .day-button {\n width: 2.25rem;\n height: 2.25rem;\n}\n\n:host(.small) .day-button {\n width: 1.75rem;\n height: 1.75rem;\n}\n\n:host .day-button ic-typography {\n width: 1.75rem;\n color: var(--ic-color-primary-text);\n}\n\n:host .day-button.outside-range ic-typography {\n color: var(--ic-architectural-400);\n}\n\n:host .day-button.outside-month ic-typography {\n font-weight: var(--ic-font-weight-regular) !important;\n}\n\n:host\n .day-button.outside-month:not(.outside-range):not(.selected)\n ic-typography {\n color: var(--ic-color-primary-text);\n}\n\n:host .day-button:hover:not(.disabled) {\n background-color: var(--ic-action-dark-bg-hover);\n}\n\n:host .day-button:active:not(.disabled) {\n background-color: var(--ic-action-dark-bg-active);\n}\n\n@media (prefers-reduced-motion: no-preference) {\n :host .day-button:hover:not(.disabled):not(.focussed),\n :host .day-button:active:not(.disabled):not(.focussed) {\n transition: background-color var(--ic-transition-duration-slow) ease-in-out;\n }\n}\n\n:host .day-button.selected:not(.hidden) {\n background-color: var(--ic-action-default);\n}\n\n:host .day-button.selected ic-typography {\n color: var(--ic-color-white-text);\n}\n\n:host .day-button.selected:not(.hidden):hover {\n background-color: var(--ic-action-default-hover);\n}\n\n:host .day-button.selected:not(.hidden):active {\n background-color: var(--ic-action-default-active);\n}\n\n:host .day-button.focussed {\n z-index: 1;\n}\n\n:host .day-button:focus {\n outline: none;\n}\n\n:host .day-button.focussed:focus {\n box-shadow: var(--ic-border-focus);\n}\n\n:host .day-button.today:not(.hidden)::after {\n content: \"\";\n position: absolute;\n width: 0.875rem;\n height: 0.125rem;\n bottom: 0.4rem;\n border-radius: var(--ic-border-radius);\n background-color: var(--ic-action-default);\n}\n\n:host(.small) .day-button.today::after {\n bottom: 0.35rem;\n}\n\n:host(.large) .day-button.today::after {\n width: 1rem;\n}\n\n:host .day-button.today.selected::after {\n background-color: var(--ic-architectural-white);\n}\n\n:host #select-month-hint,\n:host #select-year-hint {\n display: none;\n}\n\n.sr-only {\n position: absolute;\n left: -9999px;\n}\n\n@media (prefers-reduced-motion: reduce) {\n :host .calendar-container,\n :host .calendar,\n :host .bottom-buttons {\n animation: none;\n }\n}\n\n@keyframes fade-in-buttons {\n 0% {\n opacity: 0;\n }\n\n 50% {\n opacity: 0;\n }\n\n 100% {\n opacity: 1;\n }\n}\n\n@keyframes fade-in-calendar {\n 0% {\n display: flex;\n max-height: 0;\n }\n\n 100% {\n display: flex;\n max-height: 600px;\n }\n}\n\n@media (forced-colors: active) {\n :host .day-button.today:not(.hidden)::after {\n background-color: highlight;\n }\n\n :host .day-button.selected:not(.hidden) {\n background-color: highlight;\n }\n\n :host .day-button.focussed:focus {\n border: var(--ic-hc-border);\n }\n\n :host .month-button.selected::part(button),\n :host .year-button.selected::part(button) {\n background-color: highlight;\n }\n}\n","import {\n Component,\n Element,\n Host,\n h,\n Prop,\n Listen,\n Watch,\n State,\n Event,\n EventEmitter,\n} from \"@stencil/core\";\nimport {\n createDate,\n clampDate,\n dateMatches,\n dateInRange,\n getMonthStart,\n getMonthEnd,\n getWeekEnd,\n getWeekStart,\n yearInRange,\n} from \"../../utils/date-helpers\";\nimport {\n stringEnumToArray,\n onComponentRequiredPropUndefined,\n} from \"../../utils/helpers\";\nimport {\n IcWeekDays,\n IcShortDayNames,\n IcDateInputMonths,\n IcDateFormat,\n IcSizes,\n IcInformationStatusOrEmpty,\n} from \"../../utils/types\";\nimport chevron from \"../../assets/chevron-icon.svg\";\nimport { DayButton } from \"./ic-day-button\";\nimport { MonthPicker } from \"./ic-month-picker\";\nimport { YearPicker } from \"./ic-year-picker\";\n\nconst DEFAULT_DATE_FORMAT = \"DD/MM/YYYY\";\nconst DEFAULT_DISABLE_DATES_FROM_NOW_MSG =\n \"Dates in the future are not allowed. Please select a date in the past.\";\nconst DEFAULT_DISABLE_DATES_UNTIL_NOW_MSG =\n \"Dates in the past are not allowed. Please select a date in the future.\";\nconst DEFAULT_DISABLE_DAYS_MSG =\n \"The date you have selected is on a day of the week that is not allowed. Please select another date.\";\nconst FOCUS_TIMER = 100;\nconst PICKER_HEIGHT_SMALL = 360;\nconst PICKER_HEIGHT_DEFAULT = 400;\nconst PICKER_HEIGHT_LARGE = 440;\n\ninterface IcDateInputProps {\n dateFormat?: IcDateFormat;\n disabled?: boolean;\n disableDays?: IcWeekDays[];\n disableDaysMessage?: string;\n disableFuture?: boolean;\n disableFutureMessage?: string;\n disablePast?: boolean;\n disablePastMessage?: string;\n helperText?: string;\n inputId?: string;\n label: string;\n max?: string | Date;\n min?: string | Date;\n name?: string;\n required?: boolean;\n showClearButton?: boolean;\n showCalendarButton?: boolean;\n size?: IcSizes;\n value?: string | Date;\n validationStatus?: IcInformationStatusOrEmpty;\n validationText?: string;\n}\n\n@Component({\n tag: \"ic-date-picker\",\n styleUrl: \"ic-date-picker.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class DatePicker {\n private inputEl: HTMLIcDateInputElement;\n private clearButtonEl: HTMLIcButtonElement = null;\n private daysOfWeek: string[] = [];\n private dayButtonFocussed: boolean = false;\n private dayPickerKeyboardNav: boolean = false;\n private decadeStart: number;\n private decadeEnd: number;\n private dialogDescription: string = \"\";\n private focusDay: boolean = true;\n private focussedYearEl: HTMLIcButtonElement;\n private liveRegionEl: HTMLElement = null;\n private monthButtonEl: HTMLIcButtonElement;\n private monthNames: string[] = [];\n private monthInViewUpdateHandled: boolean = false;\n private myCalendarButtonClicked: boolean = false;\n private showPickerAbove: boolean = false;\n private today = new Date();\n private todayButtonEl: HTMLIcButtonElement = null;\n private yearButtonEl: HTMLIcButtonElement;\n private yearButtonFocussed: boolean = false;\n\n @Element() el: HTMLIcDatePickerElement;\n\n @State() calendarOpen: boolean = false;\n @State() currMonthView: Date[] = [];\n @State() currYearPickerView: number[] = [];\n @State() dateInputProps: IcDateInputProps = { label: \"\" };\n @State() decadeView: number[] = [];\n @State() focussedDate: Date = null;\n @State() focussedDay: number;\n @State() focussedDayEl: HTMLButtonElement;\n @State() focussedMonth: number;\n @State() focussedMonthEl: HTMLIcButtonElement;\n @State() focussedYear: number;\n @State() maxDate: Date = null;\n @State() minDate: Date = null;\n @State() monthInView: number;\n @State() monthPickerVisible: boolean = false;\n @State() orderedDaysOfWeek: string[] = [];\n @State() selectedDate: Date = null;\n @State() yearInView: number;\n @State() yearPickerVisible: boolean = false;\n\n /**\n * The format in which the date will be displayed.\n */\n @Prop() dateFormat?: IcDateFormat = \"DD/MM/YYYY\";\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled?: boolean = false;\n\n /**\n * The days of the week to disable.\n */\n @Prop() disableDays?: IcWeekDays[] = [];\n\n /**\n * The text to display as the validation message when `disableDays` is `true` and a disabled date is entered.\n */\n @Prop() disableDaysMessage?: string =\n \"The date you have selected is on a day of the week that is not allowed. Please select another date.\";\n\n /**\n * If `true`, dates in the future are not allowed. A validation message will appear if a date in the future is entered.\n */\n @Prop() disableFuture?: boolean = false;\n\n /**\n * The text to display as the validation message when `disableFuture` is `true` and a date in the future is entered.\n */\n @Prop() disableFutureMessage?: string =\n \"Dates in the future are not allowed. Please select a date in the past.\";\n\n /**\n * If `true`, dates in the past are not allowed. A validation message will appear if a date in the past is entered.\n */\n @Prop() disablePast?: boolean = false;\n\n /**\n * The text to display as the validation message when `disablePast` is `true` and a date in the past is entered.\n */\n @Prop() disablePastMessage?: string =\n \"Dates in the past are not allowed. Please select a date in the future.\";\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 `dateFormat` value.\n */\n @Prop() helperText?: string;\n\n /**\n * The ID for the input field. The default will be an automatically generated value.\n */\n @Prop() inputId?: string;\n\n /**\n * The label for the date input.\n */\n @Prop() label!: string;\n\n /**\n * The latest date that will be allowed. The value can be in any format supported as `dateFormat`, in ISO 8601 date string format (`yyyy-mm-dd`) or as a JavaScript `Date` object.\n * The value of this prop is ignored if `disableFuture` is set to `true`.\n */\n @Prop() max?: string | Date = \"\";\n\n @Watch(\"max\")\n watchMaxHandler(): void {\n if (this.disableFuture) {\n this.maxDate = new Date();\n } else {\n this.maxDate = createDate(this.max, this.dateFormat);\n }\n }\n\n /**\n * The earliest date that will be allowed. The value can be in any format supported as `dateFormat`, in ISO 8601 date string format (`yyyy-mm-dd`) or as a JavaScript `Date` object.\n * The value of this prop is ignored if `disablePast` is set to `true`.\n */\n @Prop() min?: string | Date = \"\";\n\n @Watch(\"min\")\n watchMinHandler(): void {\n if (this.disablePast) {\n this.minDate = new Date();\n } else {\n this.minDate = createDate(this.min, this.dateFormat);\n }\n }\n\n /**\n * The name of the control, which is submitted with the form data.\n */\n @Prop() name?: string;\n\n /**\n * The date visible when the calendar opens. Used if no date is currently selected.\n * The value can be in any format supported as `dateFormat`, in ISO 8601 date string format (`yyyy-mm-dd`) or as a JavaScript `Date` object.\n */\n @Prop() openAtDate: string | Date = \"\";\n\n /**\n * If `true`, the input will require a value.\n */\n @Prop() required?: boolean = false;\n\n /**\n * If `true`, days outside the current month will be visible in the date picker.\n */\n @Prop() showDaysOutsideMonth?: boolean = true;\n\n /**\n * If `true`, the `Clear` button on the date picker will be visible.\n */\n @Prop() showPickerClearButton?: boolean = true;\n\n /**\n * If `true`, the `Go to today` button on the date picker will be visible.\n */\n @Prop() showPickerTodayButton?: boolean = true;\n\n /**\n * The size of the date picker to be displayed.\n */\n @Prop() size?: IcSizes = \"default\";\n\n /**\n * The first day of the week. `0` for Sunday, `1` for Monday, etc.\n * Default is Monday.\n */\n @Prop() startOfWeek?: IcWeekDays = IcWeekDays.Monday;\n\n /**\n * The validation status - e.g. 'error' | 'warning' | 'success'. This will override the built-in date validation.\n */\n @Prop() validationStatus?: IcInformationStatusOrEmpty = \"\";\n\n /**\n * The text to display as the validation message. This will override the built-in date validation.\n */\n @Prop() validationText?: string = \"\";\n\n /**\n * The value of the date picker. The value can be in any format supported as `dateFormat`, in ISO 8601 date string format (`yyyy-mm-dd`) or as a JavaScript `Date` object.\n */\n @Prop({ mutable: true }) value?: string | Date | null | undefined = \"\";\n\n @Watch(\"calendarOpen\")\n watchOpenHandler(): void {\n if (this.calendarOpen) {\n if (this.inputEl) {\n let pickerHeight = PICKER_HEIGHT_DEFAULT;\n if (this.size === \"small\") {\n pickerHeight = PICKER_HEIGHT_SMALL;\n } else if (this.size === \"large\") {\n pickerHeight = PICKER_HEIGHT_LARGE;\n }\n if (\n this.el.offsetTop + this.inputEl.offsetHeight + pickerHeight >\n window.innerHeight &&\n this.el.offsetTop > pickerHeight\n ) {\n this.showPickerAbove = true;\n } else {\n this.showPickerAbove = false;\n }\n }\n if (\n this.selectedDate === null ||\n !dateInRange(this.selectedDate, this.minDate, this.maxDate)\n ) {\n let openAt = new Date();\n if (this.openAtDate !== \"\") {\n openAt = createDate(this.openAtDate, this.dateFormat);\n }\n this.setFocussedDate(openAt);\n } else {\n this.setFocussedDate(this.selectedDate);\n }\n let dialogDesc = this.getMonthInViewText();\n if (this.selectedDate === null) {\n dialogDesc += \" No date selected.\";\n }\n dialogDesc +=\n \" Use arrow keys to change day. Press enter or space to select a date or press escape to close the picker\";\n this.dialogDescription = dialogDesc;\n setTimeout(() => this.focusFocussedDay(), FOCUS_TIMER);\n document.addEventListener(\"click\", this.handleDocumentClick);\n } else {\n document.removeEventListener(\"click\", this.handleDocumentClick);\n this.monthPickerVisible = false;\n this.yearPickerVisible = false;\n }\n }\n\n @Watch(\"focussedDate\")\n watchFocussedDateHandler(current: Date, previous: Date): void {\n if (\n previous === null ||\n !(\n previous.getFullYear() === current.getFullYear() &&\n previous.getMonth() === current.getMonth()\n )\n ) {\n this.updateMonthInView();\n }\n }\n\n @Watch(\"monthInView\")\n watchMonthInViewHandler(): void {\n this.focussedMonth = this.monthInView;\n }\n\n @Watch(\"yearInView\")\n watchYearInViewHandler(): void {\n this.setFocussedYear(this.yearInView, false);\n }\n\n @Watch(\"yearPickerVisible\")\n watchYearPickerVisibleHandler(): void {\n if (!this.yearPickerVisible) {\n this.setFocussedYear(this.yearInView);\n }\n }\n\n @Watch(\"monthPickerVisible\")\n watchMonthPickerVisibleHandler(): void {\n if (!this.monthPickerVisible) {\n this.focussedMonth = this.monthInView;\n }\n }\n\n @Watch(\"focussedDayEl\")\n watchFocussedDayEl(): void {\n if (this.focusDay) {\n setTimeout(() => this.focusFocussedDay(), FOCUS_TIMER);\n }\n\n this.focusDay = true;\n }\n\n /**\n * Emitted when the value has changed.\n */\n @Event() icChange: EventEmitter<{ value: Date }>;\n\n componentWillLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Date Picker\"\n );\n\n this.monthNames = stringEnumToArray(IcDateInputMonths);\n this.daysOfWeek = stringEnumToArray(IcShortDayNames);\n this.orderedDaysOfWeek = this.daysOfWeek\n .splice(this.startOfWeek, this.daysOfWeek.length)\n .concat(this.daysOfWeek.splice(0, this.startOfWeek));\n\n this.watchMaxHandler();\n this.watchMinHandler();\n }\n\n @Listen(\"calendarButtonClicked\")\n localCalendarButtonClickHandler(ev: CustomEvent): void {\n this.myCalendarButtonClicked = true;\n if (!this.calendarOpen) {\n this.setSelectedDate(ev.detail.value, false);\n }\n\n this.calendarOpen = !this.calendarOpen;\n }\n\n @Listen(\"calendarButtonClicked\", { target: \"document\" })\n calendarButtonClickHandler(): void {\n //closes this picker if calendar button in another clicked\n if (!this.myCalendarButtonClicked) {\n this.calendarOpen = false;\n }\n this.myCalendarButtonClicked = false;\n }\n\n private setDecadeView = (start: number) => {\n let currYear = start - 1;\n const decadeArr = [];\n while (currYear <= start + 10) {\n decadeArr.push(currYear);\n currYear++;\n }\n this.decadeView = decadeArr;\n this.decadeStart = decadeArr[1];\n this.decadeEnd = decadeArr[10];\n };\n\n private setSelectedDate = (d: Date, emit = true): void => {\n if (d === null || !dateMatches(d, this.selectedDate)) {\n this.selectedDate = d;\n this.value = d;\n if (emit) {\n this.icChange.emit({ value: d });\n }\n }\n };\n\n private handleCalendarMouseDown = (event: MouseEvent): void => {\n const target = event.target as HTMLElement;\n if (target.tagName !== \"IC-BUTTON\") {\n event.preventDefault();\n }\n };\n\n private handleCalendarClick = (event: MouseEvent): void => {\n this.clearDialogDescription();\n event.stopImmediatePropagation();\n };\n\n private handleDocumentClick = (): void => {\n this.calendarOpen = false;\n };\n\n private keyDownHandler = (event: KeyboardEvent) => {\n if (event.key === \"Escape\") {\n this.closeButtonClickHandler();\n this.inputEl.setCalendarFocus();\n } else {\n this.clearDialogDescription();\n }\n event.stopImmediatePropagation();\n };\n\n private closeButtonClickHandler = () => {\n this.calendarOpen = false;\n };\n\n private focusFirstElement = () => {\n this.monthButtonEl.setFocus();\n };\n\n private focusLastElement = () => {\n if (this.showPickerClearButton && !this.clearButtonEl.disabled) {\n this.clearButtonEl.setFocus();\n } else if (this.showPickerTodayButton && !this.todayButtonEl.disabled) {\n this.todayButtonEl.setFocus();\n } else if (this.monthPickerVisible) {\n this.focussedMonthEl.setFocus();\n } else if (this.yearPickerVisible) {\n this.focussedYearEl.setFocus();\n } else {\n this.focussedDayEl.focus();\n }\n };\n\n private focusFocussedDay = () => {\n this.focussedDayEl.focus();\n };\n\n private monthButtonClickHandler = () => {\n this.yearPickerVisible = false;\n this.focusDay = false;\n this.monthPickerVisible = !this.monthPickerVisible;\n if (this.monthPickerVisible) {\n this.setAriaLiveRegionText(\"Month picker view open\");\n } else {\n this.setMonthSelectedLiveRegionText();\n }\n };\n\n private yearButtonClickHandler = () => {\n this.monthPickerVisible = false;\n this.focusDay = false;\n this.yearPickerVisible = !this.yearPickerVisible;\n if (this.yearPickerVisible) {\n this.setAriaLiveRegionText(\n `Year picker view open. ${this.getDecadeInViewText()}`\n );\n } else {\n this.setYearSelectedLiveRegionText();\n }\n };\n\n private todayButtonClickHandler = () => {\n this.yearPickerVisible = false;\n this.monthPickerVisible = false;\n this.setFocussedDate(new Date());\n this.setAriaLiveRegionText(this.getMonthInViewText());\n\n setTimeout(() => this.focusFocussedDay(), FOCUS_TIMER);\n };\n\n private todayButtonKeyDownHandler = (ev: KeyboardEvent) => {\n if (ev.key === \"Tab\" && !ev.shiftKey && this.clearButtonEl.disabled) {\n this.focusFirstElement();\n ev.preventDefault();\n }\n };\n\n private clearButtonClickHandler = () => {\n this.setSelectedDate(null, false);\n let text = \"Selected date cleared.\";\n if (!this.monthPickerVisible && !this.yearPickerVisible) {\n text += ` ${this.getMonthInViewText()}`;\n }\n if (this.monthPickerVisible) {\n this.focussedMonthEl.setFocus();\n } else if (this.yearPickerVisible) {\n this.focussedYearEl.setFocus();\n } else {\n this.focusFocussedDay();\n }\n this.setAriaLiveRegionText(text);\n };\n\n private setMonthSelectedLiveRegionText = () => {\n this.setAriaLiveRegionText(\n `${\n this.monthNames[this.monthInView]\n } selected. ${this.getMonthInViewText()}`\n );\n };\n\n private setYearSelectedLiveRegionText = () => {\n this.setAriaLiveRegionText(\n `${this.yearInView} selected. ${this.getMonthInViewText()}`\n );\n };\n\n private getMonthInViewText = () => {\n return `${this.monthNames[this.monthInView]} ${\n this.yearInView\n } currently in view.`;\n };\n\n private getDecadeInViewText = () => {\n return `${this.decadeStart} to ${this.decadeEnd} currently in view.`;\n };\n\n private setAriaLiveRegionText = (text: string) => {\n this.liveRegionEl.innerText = text;\n };\n\n private clearDialogDescription = () => {\n this.dialogDescription = \"\";\n };\n\n private clearButtonKeyDownHandler = (ev: KeyboardEvent) => {\n if (ev.key === \"Tab\" && !ev.shiftKey) {\n this.focusFirstElement();\n ev.preventDefault();\n }\n };\n\n private goToPreviousMonth = (focusDay = false) => {\n this.focusDay = focusDay;\n this.moveMonths(-1);\n };\n\n private goToNextMonth = (focusDay = false) => {\n this.focusDay = focusDay;\n this.moveMonths(1);\n };\n\n private goToPreviousYear = (focusDay = false) => {\n if (this.isPrevYearAllowed()) {\n this.focusDay = focusDay;\n this.moveYears(-1);\n }\n };\n\n private goToNextYear = (focusDay = false) => {\n if (this.isNextYearAllowed()) {\n this.focusDay = focusDay;\n this.moveYears(1);\n }\n };\n\n private navButtonMouseDownHandler = (ev: MouseEvent): void => {\n ev.preventDefault();\n };\n\n private renderMonthYearNavButton = (\n id: string,\n flip: boolean,\n disabled: boolean\n ): void => {\n const buttonSize = this.size;\n return (\n <div aria-hidden=\"true\">\n <ic-button\n id={id}\n disableTooltip={true}\n disabled={disabled}\n onClick={this.monthYearNavClickHandler}\n class={{ flip: flip }}\n variant=\"icon\"\n innerHTML={chevron}\n size={buttonSize}\n tabIndex={-1}\n aria-hidden=\"true\"\n onMouseDown={this.navButtonMouseDownHandler}\n />\n </div>\n );\n };\n\n private monthYearNavClickHandler = (ev: Event): void => {\n const target = ev.target as Element;\n switch (target.id) {\n case \"previous-month-button\":\n this.goToPreviousMonth(this.dayButtonFocussed);\n break;\n\n case \"next-month-button\":\n this.goToNextMonth(this.dayButtonFocussed);\n break;\n\n case \"previous-year-button\":\n this.goToPreviousYear(this.dayButtonFocussed);\n break;\n\n case \"next-year-button\":\n this.goToNextYear(this.dayButtonFocussed);\n break;\n }\n };\n\n private previousMonthButton = (): void => {\n let disabled = false;\n if (this.focussedDate !== null && this.minDate !== null) {\n const yearMatch =\n this.focussedDate.getFullYear() === this.minDate.getFullYear();\n if (yearMatch) {\n disabled = this.monthInView - 1 < this.minDate.getMonth();\n }\n }\n return this.renderMonthYearNavButton(\n \"previous-month-button\",\n true,\n disabled\n );\n };\n\n private nextMonthButton = (): void => {\n let disabled = false;\n if (this.focussedDate !== null && this.maxDate !== null) {\n const yearMatch =\n this.focussedDate.getFullYear() === this.maxDate.getFullYear();\n if (yearMatch) {\n disabled = this.monthInView + 1 > this.maxDate.getMonth();\n }\n }\n return this.renderMonthYearNavButton(\"next-month-button\", false, disabled);\n };\n\n private previousYearButton = (): void => {\n return this.renderMonthYearNavButton(\n \"previous-year-button\",\n true,\n !this.isPrevYearAllowed()\n );\n };\n\n private nextYearButton = (): void => {\n return this.renderMonthYearNavButton(\n \"next-year-button\",\n false,\n !this.isNextYearAllowed()\n );\n };\n\n private isPrevYearAllowed = (): boolean => {\n return this.isYearAllowed(this.yearInView - 1);\n };\n\n private isNextYearAllowed = (): boolean => {\n return this.isYearAllowed(this.yearInView + 1);\n };\n\n private isYearAllowed = (yr: number): boolean => {\n return yearInRange(yr, this.minDate, this.maxDate);\n };\n\n private getMonthView = (date: Date): Date[] => {\n const start = getWeekStart(getMonthStart(date), this.startOfWeek);\n const end = getWeekEnd(getMonthEnd(date), this.startOfWeek);\n\n const days: Date[] = [];\n let current = start;\n\n while (!dateMatches(current, end)) {\n days.push(current);\n current = new Date(current);\n current.setDate(current.getDate() + 1);\n }\n\n days.push(current);\n\n return days;\n };\n\n private isCurrentMonth = (): boolean => {\n const d = new Date();\n return (\n d.getFullYear() === this.yearInView && d.getMonth() === this.monthInView\n );\n };\n\n private updateMonthInView = (): void => {\n this.currMonthView = this.getMonthView(this.focussedDate);\n\n this.focussedDay = this.focussedDate.getDate();\n this.monthInView = this.focussedDate.getMonth();\n this.yearInView = this.focussedDate.getFullYear();\n\n if (this.dayPickerKeyboardNav) {\n this.monthInViewUpdateHandled = true;\n this.setAriaLiveRegionText(this.getMonthInViewText());\n this.dayPickerKeyboardNav = false;\n }\n };\n\n private handleSelectDay = (day: Date): void => {\n this.setSelectedDate(day);\n this.calendarOpen = false;\n this.inputEl.setCalendarFocus();\n };\n\n private handleSelectMonth = (month: number): void => {\n this.moveMonths(month - this.monthInView);\n setTimeout(() => {\n this.monthButtonEl.setFocus();\n this.monthPickerVisible = false;\n this.setMonthSelectedLiveRegionText();\n }, FOCUS_TIMER);\n };\n\n private handleSelectYear = (year: number): void => {\n const yrPos = this.decadeView.indexOf(year);\n if (yrPos > 0 && yrPos < this.decadeView.length - 1) {\n this.moveYears(year - this.yearInView);\n this.focusDay = false;\n const monthName = this.monthNames[this.monthInView];\n this.setAriaLiveRegionText(\n `${year} selected. ${monthName} ${year} currently in view.`\n );\n setTimeout(() => {\n this.yearButtonEl.setFocus();\n this.yearPickerVisible = false;\n }, FOCUS_TIMER);\n } else {\n const moveYears = year - this.focussedYear > 0 ? 10 : -10;\n this.updateFocussedYear(moveYears, this.yearButtonFocussed);\n this.setAriaLiveRegionText(this.getDecadeInViewText());\n }\n };\n\n private monthPickerKeyDownHandler = (ev: KeyboardEvent): void => {\n let handled = true;\n switch (ev.key) {\n case \"ArrowUp\":\n case \"ArrowLeft\":\n this.updateFocussedMonth(-1);\n break;\n\n case \"ArrowDown\":\n case \"ArrowRight\":\n this.updateFocussedMonth(1);\n break;\n\n case \"Home\":\n this.updateFocussedMonth(-this.focussedMonth);\n break;\n\n case \"End\":\n this.updateFocussedMonth(11 - this.focussedMonth);\n break;\n\n case \"Tab\":\n handled = this.calendarTabHandler(ev);\n break;\n\n case \"Escape\":\n ev.stopImmediatePropagation();\n this.monthPickerVisible = false;\n setTimeout(() => this.focusFocussedDay(), FOCUS_TIMER);\n break;\n\n default:\n handled = false;\n }\n\n if (handled) {\n ev.preventDefault();\n }\n };\n\n private yearPickerKeyDownHandler = (ev: KeyboardEvent): void => {\n let handled = true;\n switch (ev.key) {\n case \"ArrowUp\":\n case \"ArrowLeft\":\n this.updateFocussedYear(-1);\n break;\n\n case \"ArrowDown\":\n case \"ArrowRight\":\n this.updateFocussedYear(1);\n break;\n\n case \"Home\":\n if (this.focussedYear > this.decadeStart) {\n this.updateFocussedYear(this.decadeStart - this.focussedYear);\n }\n break;\n\n case \"End\":\n if (this.focussedYear < this.decadeEnd) {\n this.updateFocussedYear(this.decadeEnd - this.focussedYear);\n }\n break;\n\n case \"PageUp\":\n this.updateFocussedYear(-10);\n break;\n\n case \"PageDown\":\n this.updateFocussedYear(10);\n break;\n\n case \"Tab\":\n handled = this.calendarTabHandler(ev);\n break;\n\n case \"Escape\":\n ev.stopImmediatePropagation();\n this.yearPickerVisible = false;\n setTimeout(() => this.focusFocussedDay(), FOCUS_TIMER);\n break;\n\n default:\n handled = false;\n }\n\n if (handled) {\n ev.preventDefault();\n }\n };\n\n private onYearButtonFocusHandler = () => {\n this.yearButtonFocussed = true;\n };\n\n private onYearButtonBlurHandler = () => {\n this.yearButtonFocussed = false;\n };\n\n private monthButtonKeyDownHandler = (ev: KeyboardEvent): void => {\n let handled = false;\n switch (ev.key) {\n case \"ArrowLeft\":\n case \"ArrowUp\":\n handled = true;\n this.goToPreviousMonth();\n break;\n\n case \"ArrowRight\":\n case \"ArrowDown\":\n handled = true;\n this.goToNextMonth();\n break;\n\n case \"Home\":\n handled = true;\n this.focusDay = false;\n this.moveMonths(-this.monthInView);\n break;\n\n case \"End\":\n handled = true;\n this.focusDay = false;\n this.moveMonths(11 - this.monthInView);\n break;\n\n case \"Tab\":\n if (ev.shiftKey) {\n handled = true;\n this.focusLastElement();\n }\n break;\n\n case \"Escape\":\n if (this.monthPickerVisible) {\n this.monthPickerVisible = false;\n ev.stopImmediatePropagation();\n }\n break;\n\n default:\n break;\n }\n\n if (handled) {\n ev.preventDefault();\n }\n };\n\n private yearButtonKeyDownHandler = (ev: KeyboardEvent): void => {\n let handled = false;\n switch (ev.key) {\n case \"ArrowLeft\":\n case \"ArrowUp\":\n handled = true;\n this.goToPreviousYear();\n break;\n\n case \"ArrowRight\":\n case \"ArrowDown\":\n handled = true;\n this.goToNextYear();\n break;\n\n case \"Home\":\n if (this.yearPickerVisible && this.yearInView > this.decadeStart) {\n handled = true;\n this.moveYears(this.decadeStart - this.yearInView);\n }\n break;\n\n case \"End\":\n if (this.yearPickerVisible && this.yearInView < this.decadeEnd) {\n handled = true;\n this.moveYears(this.decadeEnd - this.focussedYear);\n }\n break;\n\n case \"PageUp\":\n handled = true;\n this.focusDay = false;\n this.moveYears(-10);\n break;\n\n case \"PageDown\":\n handled = true;\n this.focusDay = false;\n this.moveYears(10);\n break;\n\n case \"Escape\":\n if (this.yearPickerVisible) {\n this.yearPickerVisible = false;\n ev.stopImmediatePropagation();\n }\n break;\n\n default:\n break;\n }\n\n if (handled) {\n ev.preventDefault();\n }\n };\n\n private handleCalendarKeyDown = (ev: KeyboardEvent): void => {\n let handled = true;\n switch (ev.key) {\n case \"ArrowDown\":\n this.dayPickerKeyboardNav = true;\n this.moveDays(7);\n break;\n\n case \"ArrowUp\":\n this.dayPickerKeyboardNav = true;\n this.moveDays(-7);\n break;\n\n case \"ArrowLeft\":\n this.dayPickerKeyboardNav = true;\n this.moveDays(-1 * this.getNextDayToFocus(this.focussedDate, false));\n break;\n\n case \"ArrowRight\":\n this.dayPickerKeyboardNav = true;\n this.moveDays(this.getNextDayToFocus(this.focussedDate, true));\n break;\n\n case \"PageUp\":\n this.dayPickerKeyboardNav = true;\n ev.shiftKey ? this.moveYears(-1) : this.moveMonths(-1);\n break;\n\n case \"PageDown\":\n this.dayPickerKeyboardNav = true;\n ev.shiftKey ? this.moveYears(1) : this.moveMonths(1);\n break;\n\n case \"Home\":\n this.dayPickerKeyboardNav = true;\n this.setFocussedDate(\n new Date(this.focussedYear, this.focussedMonth, 1)\n );\n break;\n\n case \"End\":\n this.dayPickerKeyboardNav = true;\n this.setFocussedDate(\n new Date(this.focussedYear, this.focussedMonth + 1, 0)\n );\n break;\n\n case \"Tab\":\n handled = this.calendarTabHandler(ev);\n break;\n\n default:\n handled = false;\n break;\n }\n\n if (handled) {\n ev.preventDefault();\n }\n };\n\n private calendarTabHandler = (ev: KeyboardEvent): boolean => {\n let handled = false;\n if (\n !ev.shiftKey &&\n (!this.showPickerTodayButton || this.isCurrentMonth()) &&\n (!this.showPickerClearButton || this.clearButtonEl.disabled)\n ) {\n this.focusFirstElement();\n handled = true;\n } else if (ev.shiftKey) {\n this.yearButtonEl.setFocus();\n handled = true;\n }\n return handled;\n };\n\n private onDayButtonFocusHandler = () => {\n this.dayButtonFocussed = true;\n };\n\n private onDayButtonBlurHandler = () => {\n this.dayButtonFocussed = false;\n };\n\n private getNextDayToFocus = (\n currDay: Date,\n forward: boolean,\n level = 1\n ): number => {\n const move = forward ? 1 : -1;\n const nextDay = new Date(currDay);\n nextDay.setDate(nextDay.getDate() + move);\n const nextDayNum = Number(nextDay.getDay());\n if (this.disableDays.includes(nextDayNum)) {\n return this.getNextDayToFocus(nextDay, forward, level + 1);\n } else {\n return level;\n }\n };\n\n private moveDays = (numDays: number): void => {\n const d = new Date(this.focussedDate);\n d.setDate(d.getDate() + numDays);\n this.setFocussedDate(d);\n };\n\n private moveMonths = (numMonths: number): void => {\n const newMonth = this.focussedDate.getMonth() + numMonths;\n const min = new Date(\n new Date(getMonthStart(this.focussedDate)).setMonth(newMonth)\n );\n const max = getMonthEnd(min);\n const newDate = new Date(new Date(this.focussedDate).setMonth(newMonth));\n this.setFocussedDate(clampDate(newDate, min, max));\n\n if (\n this.monthPickerVisible === false &&\n this.yearPickerVisible === false &&\n this.monthInViewUpdateHandled === false\n ) {\n this.setAriaLiveRegionText(this.getMonthInViewText());\n }\n this.monthInViewUpdateHandled = false;\n };\n\n private moveYears = (numYears: number): void => {\n const newYear = this.focussedDate.getFullYear() + numYears;\n const min = new Date(\n new Date(getMonthStart(this.focussedDate)).setFullYear(newYear)\n );\n const max = getMonthEnd(min);\n const newDate = new Date(new Date(this.focussedDate).setFullYear(newYear));\n this.setFocussedDate(clampDate(newDate, min, max));\n\n if (\n this.monthPickerVisible === false &&\n this.yearPickerVisible === false &&\n this.monthInViewUpdateHandled === false\n ) {\n this.setAriaLiveRegionText(this.getMonthInViewText());\n }\n this.monthInViewUpdateHandled = false;\n };\n\n private updateFocussedMonth = (adjust: number): void => {\n const d = new Date(this.focussedYear, this.focussedMonth, 1);\n d.setMonth(this.focussedMonth + adjust);\n const newDate = clampDate(d, this.minDate, this.maxDate);\n this.focussedMonth = newDate.getMonth();\n setTimeout(() => this.focussedMonthEl.setFocus(), FOCUS_TIMER);\n };\n\n private updateFocussedYear = (adjust: number, focusYear = true): void => {\n const d = new Date(new Date().setFullYear(this.focussedYear + adjust));\n const newDate = clampDate(d, this.minDate, this.maxDate);\n this.setFocussedYear(newDate.getFullYear(), focusYear);\n };\n\n private setFocussedDate = (d: Date): void => {\n this.focussedDate = clampDate(d, this.minDate, this.maxDate);\n };\n\n private setFocussedDayEl = (element: HTMLButtonElement) => {\n this.focussedDayEl = element;\n };\n\n private setFocussedMonthEl = (element: HTMLIcButtonElement) => {\n this.focussedMonthEl = element;\n };\n\n private setFocussedYearEl = (element: HTMLIcButtonElement) => {\n this.focussedYearEl = element;\n };\n\n private setFocussedYear = (newYear: number, focus = true): void => {\n const prevYear = this.focussedYear;\n this.focussedYear = newYear;\n if (this.yearPickerVisible) {\n const newDecade = Math.floor(newYear / 10) * 10;\n const oldDecade = Math.floor(prevYear / 10) * 10;\n if (newDecade !== oldDecade) {\n this.setDecadeView(newDecade);\n this.setAriaLiveRegionText(this.getDecadeInViewText());\n }\n if (focus) {\n setTimeout(() => {\n if (this.focussedYearEl !== null) this.focussedYearEl.setFocus();\n }, FOCUS_TIMER);\n }\n } else {\n this.setDecadeView(Math.floor(newYear / 10) * 10);\n }\n };\n\n private setDateInputProps = (): void => {\n const untilNowMsg =\n !this.disablePast ||\n this.disablePastMessage === DEFAULT_DISABLE_DATES_UNTIL_NOW_MSG\n ? \"\"\n : this.disablePastMessage;\n const fromNowMsg =\n !this.disableFuture ||\n this.disableFutureMessage === DEFAULT_DISABLE_DATES_FROM_NOW_MSG\n ? \"\"\n : this.disableFutureMessage;\n const disableDaysMsg =\n !this.disableDays.length ||\n this.disableDaysMessage === DEFAULT_DISABLE_DAYS_MSG\n ? \"\"\n : this.disableDaysMessage;\n\n if (this.dateFormat !== DEFAULT_DATE_FORMAT) {\n this.dateInputProps.dateFormat = this.dateFormat;\n }\n if (this.disableFuture) {\n this.dateInputProps.disableFuture = this.disableFuture;\n if (fromNowMsg !== \"\") {\n this.dateInputProps.disableFutureMessage = fromNowMsg;\n }\n }\n if (this.disablePast) {\n this.dateInputProps.disablePast = this.disablePast;\n if (untilNowMsg !== \"\") {\n this.dateInputProps.disablePastMessage = untilNowMsg;\n }\n }\n if (this.disableDays.length > 0) {\n this.dateInputProps.disableDays = this.disableDays;\n if (disableDaysMsg !== \"\") {\n this.dateInputProps.disableDaysMessage = disableDaysMsg;\n }\n }\n this.dateInputProps.label = this.label;\n if (this.max !== null && this.max !== \"\") {\n this.dateInputProps.max = this.maxDate;\n }\n if (this.min !== null && this.min !== \"\") {\n this.dateInputProps.min = this.minDate;\n }\n if (this.helperText !== undefined) {\n this.dateInputProps.helperText = this.helperText;\n }\n if (this.inputId !== undefined) {\n this.dateInputProps.inputId = this.inputId;\n }\n if (this.name !== undefined) {\n this.dateInputProps.name = this.name;\n }\n this.dateInputProps.showClearButton = true;\n this.dateInputProps.showCalendarButton = true;\n if (this.disabled) {\n this.dateInputProps.disabled = this.disabled;\n }\n if (this.required) {\n this.dateInputProps.required = this.required;\n }\n if (this.size !== \"default\") {\n this.dateInputProps.size = this.size;\n }\n if (this.validationStatus !== \"\") {\n this.dateInputProps.validationStatus = this.validationStatus;\n }\n if (this.validationText !== \"\") {\n this.dateInputProps.validationText = this.validationText;\n }\n this.dateInputProps.value = this.value;\n };\n\n render() {\n const {\n calendarOpen,\n dateInputProps,\n monthNames,\n size,\n focussedMonth,\n focussedYear,\n monthInView,\n yearInView,\n monthPickerVisible,\n yearPickerVisible,\n orderedDaysOfWeek,\n decadeView,\n minDate,\n maxDate,\n showPickerClearButton,\n showPickerTodayButton,\n dialogDescription,\n } = this;\n\n let monthButtonText = \"\";\n if (monthPickerVisible) {\n monthButtonText = `Use the arrow keys to change the selected month. To return to day picker view, press Enter or Space to select a month, or press Escape.`;\n } else {\n monthButtonText = `Press Enter or Space to open month picker view or use the arrow keys to change month.`;\n }\n\n let yearButtonText = \"\";\n if (yearPickerVisible) {\n yearButtonText = `Use the arrow keys to change the selected year. To return to day picker view, press Enter or Space to select a year, or press Escape.`;\n } else {\n yearButtonText = `Press Enter or Space to open year picker view or use the arrow keys to change the selected year.`;\n }\n\n this.setDateInputProps();\n\n const dialogLabel = \"choose date\";\n\n const monthLabel =\n monthNames && monthNames[monthInView]\n ? monthNames[monthInView]\n : \"Open month picker\";\n const yearLabel = this.yearInView ? this.yearInView : \"Open year picker\";\n\n let minDay = minDate;\n if (this.disablePast) {\n const yesterday = new Date(minDate);\n yesterday.setDate(minDate.getDate() - 1);\n minDay = yesterday;\n }\n\n return (\n <Host onKeyDown={this.keyDownHandler} class={size}>\n <div class=\"date-input-container\">\n <ic-date-input\n ref={(el) => (this.inputEl = el)}\n {...dateInputProps}\n ></ic-date-input>\n </div>\n {calendarOpen && (\n <div>\n <span id=\"dialog-description\" class=\"sr-only\">\n {dialogDescription}\n </span>\n <div\n role=\"dialog\"\n aria-modal=\"true\"\n aria-label={dialogLabel}\n aria-describedBy=\"dialog-description\"\n class={{\n \"calendar-container\": true,\n above: this.showPickerAbove,\n }}\n onMouseDown={this.handleCalendarMouseDown}\n onClick={this.handleCalendarClick}\n >\n <span\n ref={(el) => (this.liveRegionEl = el)}\n id=\"live-region\"\n aria-live=\"assertive\"\n class=\"sr-only\"\n ></span>\n <div\n class={{\n \"month-year-nav-container\": true,\n }}\n >\n <div class=\"month-year-nav\">\n {this.previousMonthButton()}\n <span id=\"select-month-hint\" aria-hidden=\"true\">\n {monthButtonText}\n </span>\n <ic-button\n ref={(el: HTMLIcButtonElement) => (this.monthButtonEl = el)}\n size={size}\n class=\"month-picker-button\"\n aria-haspopup=\"menu\"\n aria-expanded={monthPickerVisible ? \"true\" : \"false\"}\n full-width=\"true\"\n variant=\"tertiary\"\n aria-label={monthLabel}\n aria-describedby=\"select-month-hint\"\n onKeyDown={this.monthButtonKeyDownHandler}\n onClick={this.monthButtonClickHandler}\n >\n {monthNames[monthInView]}\n </ic-button>\n {this.nextMonthButton()}\n </div>\n <div class=\"month-year-nav\">\n {this.previousYearButton()}\n <span id=\"select-year-hint\" aria-hidden=\"true\">\n {yearButtonText}\n </span>\n <ic-button\n ref={(el: HTMLIcButtonElement) => (this.yearButtonEl = el)}\n size={size}\n class=\"year-picker-button\"\n aria-haspopup=\"menu\"\n aria-expanded={yearPickerVisible ? \"true\" : \"false\"}\n full-width=\"true\"\n variant=\"tertiary\"\n aria-label={yearLabel}\n aria-describedby=\"select-year-hint\"\n onKeyDown={this.yearButtonKeyDownHandler}\n onClick={this.yearButtonClickHandler}\n >\n {this.yearInView}\n </ic-button>\n {this.nextYearButton()}\n </div>\n </div>\n {!(monthPickerVisible || yearPickerVisible) && (\n <div\n class={{\n calendar: true,\n hidden: monthPickerVisible || yearPickerVisible,\n }}\n onKeyDown={this.handleCalendarKeyDown}\n >\n <div class=\"weekdays\" aria-hidden=\"true\">\n {orderedDaysOfWeek.map((dayName) => {\n const header =\n size === \"small\" ? dayName.charAt(0) : dayName;\n return (\n <div class=\"calendar-day-header\">\n <ic-typography variant=\"caption\">\n {header}\n </ic-typography>\n </div>\n );\n })}\n </div>\n\n <div class=\"calendar-days-container\">\n {this.currMonthView.map((day) => (\n <DayButton\n day={day}\n disableDay={this.disableDays.includes(\n Number(day.getDay())\n )}\n today={dateMatches(day, this.today)}\n selected={dateMatches(day, this.selectedDate)}\n focussed={dateMatches(day, this.focussedDate)}\n inRange={dateInRange(day, minDay, maxDate)}\n monthInView={monthInView}\n onSelectDay={this.handleSelectDay}\n focussedDayRef={this.setFocussedDayEl}\n onFocusDay={this.onDayButtonFocusHandler}\n onBlurDay={this.onDayButtonBlurHandler}\n showDaysOutsideMonth={this.showDaysOutsideMonth}\n ></DayButton>\n ))}\n </div>\n </div>\n )}\n <div\n class={{\n \"month-picker-container\": true,\n hidden: !monthPickerVisible,\n }}\n >\n {monthPickerVisible && (\n <MonthPicker\n size={size}\n onSelectMonth={this.handleSelectMonth}\n monthInView={monthInView}\n focussedMonth={focussedMonth}\n onKeyDown={this.monthPickerKeyDownHandler}\n focussedMonthRef={this.setFocussedMonthEl}\n minDate={minDate}\n maxDate={maxDate}\n yearInView={yearInView}\n ></MonthPicker>\n )}\n </div>\n <div\n class={{\n \"year-picker-container\": true,\n hidden: !yearPickerVisible,\n }}\n >\n {yearPickerVisible && (\n <YearPicker\n decadeView={decadeView}\n size={size}\n focussedYear={focussedYear}\n onSelectYear={this.handleSelectYear}\n onKeyDown={this.yearPickerKeyDownHandler}\n onFocusYear={this.onYearButtonFocusHandler}\n onBlurYear={this.onYearButtonBlurHandler}\n yearInView={yearInView}\n minDate={minDate}\n maxDate={maxDate}\n focussedYearRef={this.setFocussedYearEl}\n ></YearPicker>\n )}\n </div>\n <div\n class={{\n \"bottom-buttons\": true,\n \"no-today\": !showPickerTodayButton,\n }}\n >\n {showPickerTodayButton && (\n <ic-button\n id=\"today-button\"\n variant=\"tertiary\"\n ref={(el: HTMLIcButtonElement) => (this.todayButtonEl = el)}\n size={size}\n aria-label=\"Navigate to current date\"\n onClick={this.todayButtonClickHandler}\n onKeyDown={this.todayButtonKeyDownHandler}\n disabled={this.isCurrentMonth()}\n >\n Go to today\n </ic-button>\n )}\n {showPickerClearButton && (\n <ic-button\n id=\"clear-button\"\n aria-label=\"clear selected date\"\n ref={(el: HTMLIcButtonElement) => (this.clearButtonEl = el)}\n variant=\"tertiary\"\n size={size}\n onClick={this.clearButtonClickHandler}\n onKeyDown={this.clearButtonKeyDownHandler}\n disabled={\n this.value === \"\" ||\n this.value === null ||\n this.value === undefined\n }\n >\n Clear\n </ic-button>\n )}\n </div>\n </div>\n </div>\n )}\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,38 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- const index = require('./index-4cf27b16.js');
6
- const helpers = require('./helpers-7a069459.js');
7
- require('./types-17dba796.js');
8
-
9
- const icEmptyStateCss = ":host{gap:var(--ic-space-xs);padding:var(--ic-space-xs)}:host,.action-area{display:flex;flex-direction:column}.action-area{gap:var(--ic-space-md)}:host ::slotted(svg),:host ::slotted(img){border-radius:var(--ic-space-xxs)}:host(.right),:host(.right) .action-area{align-items:flex-end;text-align:right}:host(.center),:host(.center) .action-area{align-items:center;text-align:center}:host(.image-default) ::slotted(svg),:host(.image-default) ::slotted(img){height:calc(3 * var(--ic-space-lg)) !important;width:calc(3 * var(--ic-space-lg)) !important}:host(.image-small) ::slotted(svg),:host(.image-small) ::slotted(img){height:var(--ic-space-xxl) !important;width:var(--ic-space-xxl) !important}:host(.image-large) ::slotted(svg),:host(.image-large) ::slotted(img){height:calc(4 * var(--ic-space-xl)) !important;width:calc(4 * var(--ic-space-xl)) !important}";
10
-
11
- const EmptyState = class {
12
- constructor(hostRef) {
13
- index.registerInstance(this, hostRef);
14
- this.aligned = "left";
15
- this.body = undefined;
16
- this.bodyMaxLines = undefined;
17
- this.heading = undefined;
18
- this.imageSize = "default";
19
- this.subheading = undefined;
20
- }
21
- componentDidLoad() {
22
- !helpers.isSlotUsed(this.el, "heading") &&
23
- helpers.onComponentRequiredPropUndefined([{ prop: this.heading, propName: "heading" }], "Empty State");
24
- }
25
- render() {
26
- const { aligned, body, bodyMaxLines, heading, imageSize, subheading } = this;
27
- return (index.h(index.Host, { class: {
28
- [`${aligned}`]: true,
29
- [`image-${imageSize}`]: helpers.isSlotUsed(this.el, "image"),
30
- } }, helpers.isSlotUsed(this.el, "image") && index.h("slot", { name: "image" }), index.h("div", null, index.h("slot", { name: "heading" }, index.h("ic-typography", { variant: "h4" }, heading)), index.h("slot", { name: "subheading" }, index.h("ic-typography", { variant: "subtitle-small" }, subheading)), index.h("slot", { name: "body" }, index.h("ic-typography", { maxLines: bodyMaxLines }, body))), helpers.isSlotUsed(this.el, "actions") && (index.h("div", { class: "action-area" }, index.h("slot", { name: "actions" })))));
31
- }
32
- get el() { return index.getElement(this); }
33
- };
34
- EmptyState.style = icEmptyStateCss;
35
-
36
- exports.ic_empty_state = EmptyState;
37
-
38
- //# sourceMappingURL=ic-empty-state.cjs.entry.js.map
@@ -1 +0,0 @@
1
- {"file":"ic-empty-state.entry.cjs.js","mappings":";;;;;;;;AAAA,MAAM,eAAe,GAAG,01BAA01B;;MCSr2B,UAAU;IACnB;;QACI,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QACtB,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;QAC9B,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;KAC/B;IACD,gBAAgB;QACZ,CAACA,kBAAU,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC;YAC3BC,wCAAgC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,aAAa,CAAC,CAAC;KACtG;IACD,MAAM;QACF,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;QAC7E,QAAQC,OAAC,CAACC,UAAI,EAAE,EAAE,KAAK,EAAE;gBACjB,CAAC,GAAG,OAAO,EAAE,GAAG,IAAI;gBACpB,CAAC,SAAS,SAAS,EAAE,GAAGH,kBAAU,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC;aACvD,EAAE,EAAEA,kBAAU,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,IAAIE,OAAC,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAEA,OAAC,CAAC,KAAK,EAAE,IAAI,EAAEA,OAAC,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAEA,OAAC,CAAC,eAAe,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC,EAAEA,OAAC,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,EAAEA,OAAC,CAAC,eAAe,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE,UAAU,CAAC,CAAC,EAAEA,OAAC,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAEA,OAAC,CAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,EAAEF,kBAAU,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,KAAKE,OAAC,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,EAAEA,OAAC,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;KACxc;;;;;;;","names":["isSlotUsed","onComponentRequiredPropUndefined","h","Host"],"sources":["../web-components/dist/collection/components/ic-empty-state/ic-empty-state.css?tag=ic-empty-state&encapsulation=shadow","../web-components/dist/collection/components/ic-empty-state/ic-empty-state.js"],"sourcesContent":[":host {\n gap: var(--ic-space-xs);\n padding: var(--ic-space-xs);\n}\n\n:host,\n.action-area {\n display: flex;\n flex-direction: column;\n}\n\n.action-area {\n gap: var(--ic-space-md);\n}\n\n:host ::slotted(svg),\n:host ::slotted(img) {\n border-radius: var(--ic-space-xxs);\n}\n\n:host(.right),\n:host(.right) .action-area {\n align-items: flex-end;\n text-align: right;\n}\n\n:host(.center),\n:host(.center) .action-area {\n align-items: center;\n text-align: center;\n}\n\n:host(.image-default) ::slotted(svg),\n:host(.image-default) ::slotted(img) {\n height: calc(3 * var(--ic-space-lg)) !important;\n width: calc(3 * var(--ic-space-lg)) !important;\n}\n\n:host(.image-small) ::slotted(svg),\n:host(.image-small) ::slotted(img) {\n height: var(--ic-space-xxl) !important;\n width: var(--ic-space-xxl) !important;\n}\n\n:host(.image-large) ::slotted(svg),\n:host(.image-large) ::slotted(img) {\n height: calc(4 * var(--ic-space-xl)) !important;\n width: calc(4 * var(--ic-space-xl)) !important;\n}\n","import { h, Host } from \"@stencil/core\";\nimport { isSlotUsed, onComponentRequiredPropUndefined, } from \"../../utils/helpers\";\n/**\n * @slot image - Content is placed at the top above all other content.\n * @slot actions - Content is placed at the bottom below all other content.\n * @slot heading - Content will be rendered in place of the heading prop.\n * @slot subheading - Content will be rendered in place of the subheading prop.\n * @slot body - Content will be rendered in place of the body prop.\n */\nexport class EmptyState {\n constructor() {\n this.aligned = \"left\";\n this.body = undefined;\n this.bodyMaxLines = undefined;\n this.heading = undefined;\n this.imageSize = \"default\";\n this.subheading = undefined;\n }\n componentDidLoad() {\n !isSlotUsed(this.el, \"heading\") &&\n onComponentRequiredPropUndefined([{ prop: this.heading, propName: \"heading\" }], \"Empty State\");\n }\n render() {\n const { aligned, body, bodyMaxLines, heading, imageSize, subheading } = this;\n return (h(Host, { class: {\n [`${aligned}`]: true,\n [`image-${imageSize}`]: isSlotUsed(this.el, \"image\"),\n } }, isSlotUsed(this.el, \"image\") && h(\"slot\", { name: \"image\" }), h(\"div\", null, h(\"slot\", { name: \"heading\" }, h(\"ic-typography\", { variant: \"h4\" }, heading)), h(\"slot\", { name: \"subheading\" }, h(\"ic-typography\", { variant: \"subtitle-small\" }, subheading)), h(\"slot\", { name: \"body\" }, h(\"ic-typography\", { maxLines: bodyMaxLines }, body))), isSlotUsed(this.el, \"actions\") && (h(\"div\", { class: \"action-area\" }, h(\"slot\", { name: \"actions\" })))));\n }\n static get is() { return \"ic-empty-state\"; }\n static get encapsulation() { return \"shadow\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-empty-state.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-empty-state.css\"]\n };\n }\n static get properties() {\n return {\n \"aligned\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcEmptyStateAlignment\",\n \"resolved\": \"\\\"center\\\" | \\\"left\\\" | \\\"right\\\"\",\n \"references\": {\n \"IcEmptyStateAlignment\": {\n \"location\": \"import\",\n \"path\": \"./ic-empty-state.types\",\n \"id\": \"src/components/ic-empty-state/ic-empty-state.types.ts::IcEmptyStateAlignment\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The alignment of the empty state container.\"\n },\n \"attribute\": \"aligned\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"left\\\"\"\n },\n \"body\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The body text rendered in the empty state container.\"\n },\n \"attribute\": \"body\",\n \"reflect\": false\n },\n \"bodyMaxLines\": {\n \"type\": \"number\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"number\",\n \"resolved\": \"number\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The number of lines of body text to display before truncating.\"\n },\n \"attribute\": \"body-max-lines\",\n \"reflect\": false\n },\n \"heading\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The title rendered in the empty state container.\"\n },\n \"attribute\": \"heading\",\n \"reflect\": false\n },\n \"imageSize\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcSizes\",\n \"resolved\": \"\\\"default\\\" | \\\"large\\\" | \\\"small\\\"\",\n \"references\": {\n \"IcSizes\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcSizes\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The size of the image or icon used in the image slot.\"\n },\n \"attribute\": \"image-size\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"default\\\"\"\n },\n \"subheading\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The subtitle rendered in the empty state container.\"\n },\n \"attribute\": \"subheading\",\n \"reflect\": false\n }\n };\n }\n static get elementRef() { return \"el\"; }\n}\n//# sourceMappingURL=ic-empty-state.js.map\n"],"version":3}
@@ -1,150 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- const index = require('./index-4cf27b16.js');
6
- const types = require('./types-17dba796.js');
7
- const helpers = require('./helpers-7a069459.js');
8
-
9
- const icInputComponentContainerCss = "ic-input-component-container{display:flex;border:var(--ic-border-width) solid\n var(--border-color, var(--ic-architectural-400));border-radius:var(--ic-border-radius);transition:var(--ic-easing-transition-slow);height:2.5rem;width:var(--input-width, 20rem);padding:var(--ic-space-1px);background-color:var(--ic-architectural-white);box-sizing:border-box;fill:var(--ic-architectural-400);outline:none}ic-input-component-container.fullwidth{width:100%}ic-input-component-container.disabled,ic-input-component-container.disabled:hover{border:var(--ic-border-width) dashed var(--ic-architectural-200)}ic-input-component-container.readonly,ic-input-component-container.readonly:hover{border:none;padding:0}ic-input-component-container.error{border:var(--ic-error-border-default);padding:0}ic-input-component-container.error:hover{border:var(--ic-error-border-hover)}ic-input-component-container.error:focus-within{border:var(--ic-error-border-pressed)}ic-input-component-container.warning{border:var(--ic-warning-border-default);padding:0}ic-input-component-container.warning:hover{border:var(--ic-warning-border-hover)}ic-input-component-container.warning:focus-within{border:var(--ic-warning-border-pressed)}ic-input-component-container.success{border:var(--ic-success-border-default);padding:0}ic-input-component-container.success:hover{border:var(--ic-success-border-hover)}ic-input-component-container.success:focus-within{border:var(--ic-success-border-pressed)}ic-input-component-container.small{height:var(--ic-space-xl)}ic-input-component-container.large{height:var(--ic-space-xxl)}ic-input-component-container.multiline{height:auto}ic-input-component-container .icon-container{margin-top:var(--ic-space-xxs);margin-left:0.438rem;display:flex;align-items:center}ic-input-component-container.multiline .icon-container,ic-input-component-container.multiline.small .icon-container{margin-top:0.375rem;display:block}ic-input-component-container.readonly .icon-container{margin-left:-0.313rem}ic-input-component-container.disabled ::-moz-placeholder{display:none}ic-input-component-container.disabled ::placeholder{display:none}ic-input-component-container .inline-success{margin:var(--ic-space-xs) 0.375rem;display:flex;align-items:center}ic-input-component-container.dark:hover{--border-color:var(--ic-architectural-400)}ic-input-component-container .inline-success>svg{fill:var(--ic-status-success);height:1.25rem;width:1.25rem}ic-input-component-container:hover{border:var(--ic-border-hover);color:var(--ic-action-dark-hover)}ic-input-component-container:focus{border:var(--ic-border-pressed)}.focus-indicator{display:flex;width:100%;margin:-0.125rem;padding:0.125rem;border-radius:var(--ic-border-radius);transition:var(--ic-easing-transition-fast)}.focus-indicator:focus-within,.focus-indicator-enabled{box-shadow:var(--ic-border-focus)}.focus-indicator.dark:focus-within{box-shadow:var(--ic-border-focus)}@media (forced-colors: active){ic-input-component-container,.focus-indicator{transition:none}ic-input-component-container:focus-within{border:var(--ic-border-width) solid Highlight;outline:0.125rem solid Highlight}ic-input-component-container.disabled,ic-input-component-container.disabled:hover{border:var(--ic-border-width) dashed GrayText}}";
10
-
11
- const InputComponentContainer = class {
12
- constructor(hostRef) {
13
- index.registerInstance(this, hostRef);
14
- this.appearance = "default";
15
- this.dark = false;
16
- this.disabled = false;
17
- this.fullWidth = false;
18
- this.multiLine = false;
19
- this.readonly = false;
20
- this.size = "default";
21
- this.small = false;
22
- this.validationInline = false;
23
- this.validationStatus = "";
24
- }
25
- render() {
26
- const { size, small, validationStatus, disabled, readonly, multiLine, fullWidth, dark, appearance, validationInline, } = this;
27
- const hasValidationStatus = this.validationStatus !== "" && !this.disabled && !this.readonly
28
- ? true
29
- : false;
30
- return (index.h(index.Host, { class: {
31
- small: small,
32
- [`${size}`]: true,
33
- [validationStatus]: hasValidationStatus,
34
- disabled: disabled,
35
- readonly: readonly,
36
- ["multiline"]: multiLine,
37
- ["fullwidth"]: fullWidth,
38
- ["dark"]: dark || appearance === "dark",
39
- }, "aria-disabled": disabled && `${disabled}` }, index.h("div", { class: {
40
- "focus-indicator": true,
41
- dark: dark || appearance === "dark",
42
- } }, helpers.isSlotUsed(this.el, "left-icon") && (index.h("div", { class: {
43
- ["icon-container"]: true,
44
- } }, index.h("slot", { name: "left-icon" }))), index.h("slot", null), validationInline &&
45
- validationStatus === types.IcInformationStatus.Success && (index.h("span", { class: {
46
- ["inline-success"]: true,
47
- }, innerHTML: helpers.successIcon })))));
48
- }
49
- get el() { return index.getElement(this); }
50
- };
51
- InputComponentContainer.style = icInputComponentContainerCss;
52
-
53
- const icInputContainerCss = "ic-input-container .component-container{display:flex;flex-direction:column}";
54
-
55
- const InputContainer = class {
56
- constructor(hostRef) {
57
- index.registerInstance(this, hostRef);
58
- this.disabled = false;
59
- this.readonly = false;
60
- }
61
- render() {
62
- return (index.h(index.Host, null, index.h("div", { class: {
63
- ["component-container"]: true,
64
- ["disabled"]: this.disabled,
65
- ["readonly"]: this.readonly,
66
- } }, index.h("slot", null))));
67
- }
68
- };
69
- InputContainer.style = icInputContainerCss;
70
-
71
- const icInputLabelCss = "ic-input-label{margin-bottom:var(--ic-space-xs)}ic-input-label.with-helper{margin-bottom:var(--ic-space-xxxs)}ic-input-label.readonly{color:var(--ic-color-tertiary-text)}ic-input-label .helpertext{margin-top:var(--ic-space-xxxs)}ic-input-label .helpertext-normal{color:var(--ic-color-secondary-text)}ic-input-label .helpertext-readonly{color:var(--ic-color-tertiary-text)}ic-input-label .readonly-label{color:var(--ic-color-secondary-text)}ic-input-label .error-label{color:var(--ic-status-error)}ic-input-label .dark{color:var(--ic-architectural-white)}";
72
-
73
- const InputLabel = class {
74
- constructor(hostRef) {
75
- index.registerInstance(this, hostRef);
76
- this.appearance = "default";
77
- this.dark = false;
78
- this.disabled = false;
79
- this.error = false;
80
- this.for = undefined;
81
- this.helperText = "";
82
- this.label = undefined;
83
- this.readonly = false;
84
- this.required = false;
85
- }
86
- componentDidLoad() {
87
- helpers.onComponentRequiredPropUndefined([{ prop: this.label, propName: "label" }], "Input Label");
88
- }
89
- render() {
90
- const { disabled, readonly, label, required, helperText, error, dark, appearance, } = this;
91
- const labelText = required ? label + " *" : label;
92
- const labelContent = readonly ? (`${labelText}`) : (index.h("label", { htmlFor: this.for }, labelText));
93
- const id = helpers.getInputHelperTextID(this.for);
94
- return (index.h(index.Host, { class: {
95
- ["disabled"]: disabled,
96
- ["readonly"]: readonly,
97
- ["with-helper"]: helperText !== "",
98
- } }, index.h("ic-typography", { variant: "label", class: {
99
- ["readonly-label"]: readonly,
100
- ["error-label"]: error && !(readonly || disabled),
101
- ["dark"]: dark || appearance === "dark",
102
- } }, labelContent), helperText !== "" && (index.h("ic-typography", { variant: "caption", class: {
103
- ["helpertext"]: true,
104
- ["helpertext-normal"]: !disabled && !readonly,
105
- ["helpertext-readonly"]: readonly,
106
- } }, index.h("span", { id: id }, helperText)))));
107
- }
108
- };
109
- InputLabel.style = icInputLabelCss;
110
-
111
- const icInputValidationCss = "ic-input-validation{width:var(--input-width, 20rem);margin-top:var(--ic-space-xs);display:flex}ic-input-validation.fullwidth{width:100%}ic-input-validation span.status-icon{padding-right:var(--ic-space-xxs)}ic-input-validation span.status-icon>svg{height:1.25rem;width:1.25rem}ic-input-validation span.icon-success>svg{fill:var(--ic-status-success)}ic-input-validation span.icon-error>svg{fill:var(--ic-status-error)}ic-input-validation span.icon-warning>svg{fill:var(--ic-status-warning)}ic-input-validation .statustext{flex-grow:1}";
112
-
113
- const icon = {
114
- [types.IcInformationStatus.Warning]: helpers.warningIcon,
115
- [types.IcInformationStatus.Error]: helpers.errorIcon,
116
- [types.IcInformationStatus.Success]: helpers.successIcon,
117
- };
118
- const InputValidation = class {
119
- constructor(hostRef) {
120
- index.registerInstance(this, hostRef);
121
- this.ariaLiveMode = "polite";
122
- this.for = undefined;
123
- this.fullWidth = false;
124
- this.message = undefined;
125
- this.status = "";
126
- }
127
- componentDidLoad() {
128
- helpers.onComponentRequiredPropUndefined([{ prop: this.message, propName: "message" }], "Input Validation");
129
- }
130
- render() {
131
- const displayIcon = this.status !== "" ? icon[this.status] : "";
132
- const id = helpers.getInputValidationTextID(this.for);
133
- return (index.h(index.Host, { class: {
134
- [this.status]: this.status !== "",
135
- ["fullwidth"]: this.fullWidth,
136
- } }, displayIcon !== "" && (index.h("span", { class: {
137
- ["status-icon"]: true,
138
- [`icon-${this.status}`]: true,
139
- }, innerHTML: displayIcon })), index.h("ic-typography", { variant: "caption", class: "statustext" }, index.h("span", { "aria-live": this.ariaLiveMode, id: id }, this.message)), index.h("slot", { name: "validation-message-adornment" })));
140
- }
141
- get el() { return index.getElement(this); }
142
- };
143
- InputValidation.style = icInputValidationCss;
144
-
145
- exports.ic_input_component_container = InputComponentContainer;
146
- exports.ic_input_container = InputContainer;
147
- exports.ic_input_label = InputLabel;
148
- exports.ic_input_validation = InputValidation;
149
-
150
- //# sourceMappingURL=ic-input-component-container_4.cjs.entry.js.map
@@ -1 +0,0 @@
1
- {"file":"ic-input-component-container.ic-input-container.ic-input-label.ic-input-validation.entry.cjs.js","mappings":";;;;;;;;AAAA,MAAM,4BAA4B,GAAG,2rGAA2rG;;MCOntG,uBAAuB;IAChC;;QACI,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAClB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QACtB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAC9B,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;KAC9B;IACD,MAAM;QACF,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,GAAG,GAAG,IAAI,CAAC;QAC9H,MAAM,mBAAmB,GAAG,IAAI,CAAC,gBAAgB,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ;cACtF,IAAI;cACJ,KAAK,CAAC;QACZ,QAAQA,OAAC,CAACC,UAAI,EAAE,EAAE,KAAK,EAAE;gBACjB,KAAK,EAAE,KAAK;gBACZ,CAAC,GAAG,IAAI,EAAE,GAAG,IAAI;gBACjB,CAAC,gBAAgB,GAAG,mBAAmB;gBACvC,QAAQ,EAAE,QAAQ;gBAClB,QAAQ,EAAE,QAAQ;gBAClB,CAAC,WAAW,GAAG,SAAS;gBACxB,CAAC,WAAW,GAAG,SAAS;gBACxB,CAAC,MAAM,GAAG,IAAI,IAAI,UAAU,KAAK,MAAM;aAC1C,EAAE,eAAe,EAAE,QAAQ,IAAI,GAAG,QAAQ,EAAE,EAAE,EAAED,OAAC,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE;gBAC/D,iBAAiB,EAAE,IAAI;gBACvB,IAAI,EAAE,IAAI,IAAI,UAAU,KAAK,MAAM;aACtC,EAAE,EAAEE,kBAAU,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,CAAC,KAAKF,OAAC,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE;gBACxD,CAAC,gBAAgB,GAAG,IAAI;aAC3B,EAAE,EAAEA,OAAC,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAEA,OAAC,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,gBAAgB;YAC1E,gBAAgB,KAAKG,yBAAmB,CAAC,OAAO,KAAKH,OAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE;gBACpE,CAAC,gBAAgB,GAAG,IAAI;aAC3B,EAAE,SAAS,EAAEI,mBAAW,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;KACxC;;;;;AC3CL,MAAM,mBAAmB,GAAG,6EAA6E;;MCC5F,cAAc;IACvB;;QACI,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;KACzB;IACD,MAAM;QACF,QAAQJ,OAAC,CAACC,UAAI,EAAE,IAAI,EAAED,OAAC,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE;gBAChC,CAAC,qBAAqB,GAAG,IAAI;gBAC7B,CAAC,UAAU,GAAG,IAAI,CAAC,QAAQ;gBAC3B,CAAC,UAAU,GAAG,IAAI,CAAC,QAAQ;aAC9B,EAAE,EAAEA,OAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE;KAC/B;;;;ACZL,MAAM,eAAe,GAAG,4iBAA4iB;;MCEvjB,UAAU;IACnB;;QACI,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAClB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC;QACrB,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;KACzB;IACD,gBAAgB;QACZK,wCAAgC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAE,aAAa,CAAC,CAAC;KAC9F;IACD,MAAM;QACF,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,GAAG,GAAG,IAAI,CAAC;QAC3F,MAAM,SAAS,GAAG,QAAQ,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC;QAClD,MAAM,YAAY,GAAG,QAAQ,IAAI,GAAG,SAAS,EAAE,KAAKL,OAAC,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC;QAClG,MAAM,EAAE,GAAGM,4BAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1C,QAAQN,OAAC,CAACC,UAAI,EAAE,EAAE,KAAK,EAAE;gBACjB,CAAC,UAAU,GAAG,QAAQ;gBACtB,CAAC,UAAU,GAAG,QAAQ;gBACtB,CAAC,aAAa,GAAG,UAAU,KAAK,EAAE;aACrC,EAAE,EAAED,OAAC,CAAC,eAAe,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;gBAC/C,CAAC,gBAAgB,GAAG,QAAQ;gBAC5B,CAAC,aAAa,GAAG,KAAK,IAAI,EAAE,QAAQ,IAAI,QAAQ,CAAC;gBACjD,CAAC,MAAM,GAAG,IAAI,IAAI,UAAU,KAAK,MAAM;aAC1C,EAAE,EAAE,YAAY,CAAC,EAAE,UAAU,KAAK,EAAE,KAAKA,OAAC,CAAC,eAAe,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE;gBACtF,CAAC,YAAY,GAAG,IAAI;gBACpB,CAAC,mBAAmB,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ;gBAC7C,CAAC,qBAAqB,GAAG,QAAQ;aACpC,EAAE,EAAEA,OAAC,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE;KAClD;;;;ACnCL,MAAM,oBAAoB,GAAG,uhBAAuhB;;ACMpjB,MAAM,IAAI,GAAG;IACT,CAACG,yBAAmB,CAAC,OAAO,GAAGI,mBAAW;IAC1C,CAACJ,yBAAmB,CAAC,KAAK,GAAGK,iBAAS;IACtC,CAACL,yBAAmB,CAAC,OAAO,GAAGC,mBAAW;CAC7C,CAAC;MAIW,eAAe;IACxB;;QACI,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC;QAC7B,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;KACpB;IACD,gBAAgB;QACZC,wCAAgC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,kBAAkB,CAAC,CAAC;KACvG;IACD,MAAM;QACF,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,KAAK,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;QAChE,MAAM,EAAE,GAAGI,gCAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9C,QAAQT,OAAC,CAACC,UAAI,EAAE,EAAE,KAAK,EAAE;gBACjB,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,KAAK,EAAE;gBACjC,CAAC,WAAW,GAAG,IAAI,CAAC,SAAS;aAChC,EAAE,EAAE,WAAW,KAAK,EAAE,KAAKD,OAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE;gBAC3C,CAAC,aAAa,GAAG,IAAI;gBACrB,CAAC,QAAQ,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI;aAChC,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC,EAAEA,OAAC,CAAC,eAAe,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,EAAEA,OAAC,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,EAAEA,OAAC,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,8BAA8B,EAAE,CAAC,CAAC,EAAE;KAClO;;;;;;;;;;","names":["h","Host","isSlotUsed","IcInformationStatus","successIcon","onComponentRequiredPropUndefined","getInputHelperTextID","warningIcon","errorIcon","getInputValidationTextID"],"sources":["../web-components/dist/collection/components/ic-input-component-container/ic-input-component-container.css?tag=ic-input-component-container","../web-components/dist/collection/components/ic-input-component-container/ic-input-component-container.js","../web-components/dist/collection/components/ic-input-container/ic-input-container.css?tag=ic-input-container","../web-components/dist/collection/components/ic-input-container/ic-input-container.js","../web-components/dist/collection/components/ic-input-label/ic-input-label.css?tag=ic-input-label","../web-components/dist/collection/components/ic-input-label/ic-input-label.js","../web-components/dist/collection/components/ic-input-validation/ic-input-validation.css?tag=ic-input-validation","../web-components/dist/collection/components/ic-input-validation/ic-input-validation.js"],"sourcesContent":["ic-input-component-container {\n /**\n * @prop --border-color: Border colour of the input component container\n */\n\n display: flex;\n border: var(--ic-border-width) solid\n var(--border-color, var(--ic-architectural-400));\n border-radius: var(--ic-border-radius);\n transition: var(--ic-easing-transition-slow);\n height: 2.5rem;\n width: var(--input-width, 20rem);\n padding: var(--ic-space-1px);\n background-color: var(--ic-architectural-white);\n box-sizing: border-box;\n fill: var(--ic-architectural-400);\n outline: none;\n}\n\nic-input-component-container.fullwidth {\n width: 100%;\n}\n\nic-input-component-container.disabled,\nic-input-component-container.disabled:hover {\n border: var(--ic-border-width) dashed var(--ic-architectural-200);\n}\n\nic-input-component-container.readonly,\nic-input-component-container.readonly:hover {\n border: none;\n padding: 0;\n}\n\nic-input-component-container.error {\n border: var(--ic-error-border-default);\n padding: 0;\n}\n\nic-input-component-container.error:hover {\n border: var(--ic-error-border-hover);\n}\n\nic-input-component-container.error:focus-within {\n border: var(--ic-error-border-pressed);\n}\n\nic-input-component-container.warning {\n border: var(--ic-warning-border-default);\n padding: 0;\n}\n\nic-input-component-container.warning:hover {\n border: var(--ic-warning-border-hover);\n}\n\nic-input-component-container.warning:focus-within {\n border: var(--ic-warning-border-pressed);\n}\n\nic-input-component-container.success {\n border: var(--ic-success-border-default);\n padding: 0;\n}\n\nic-input-component-container.success:hover {\n border: var(--ic-success-border-hover);\n}\n\nic-input-component-container.success:focus-within {\n border: var(--ic-success-border-pressed);\n}\n\nic-input-component-container.small {\n height: var(--ic-space-xl);\n}\n\nic-input-component-container.large {\n height: var(--ic-space-xxl);\n}\n\nic-input-component-container.multiline {\n height: auto;\n}\n\nic-input-component-container .icon-container {\n margin-top: var(--ic-space-xxs);\n margin-left: 0.438rem;\n display: flex;\n align-items: center;\n}\n\nic-input-component-container.multiline .icon-container,\nic-input-component-container.multiline.small .icon-container {\n margin-top: 0.375rem;\n display: block;\n}\n\nic-input-component-container.readonly .icon-container {\n margin-left: -0.313rem;\n}\n\nic-input-component-container.disabled ::-moz-placeholder {\n display: none;\n}\n\nic-input-component-container.disabled ::placeholder {\n display: none;\n}\n\nic-input-component-container .inline-success {\n margin: var(--ic-space-xs) 0.375rem;\n display: flex;\n align-items: center;\n}\n\nic-input-component-container.dark:hover {\n --border-color: var(--ic-architectural-400);\n}\n\nic-input-component-container .inline-success > svg {\n fill: var(--ic-status-success);\n height: 1.25rem;\n width: 1.25rem;\n}\n\nic-input-component-container:hover {\n border: var(--ic-border-hover);\n color: var(--ic-action-dark-hover);\n}\n\nic-input-component-container:focus {\n border: var(--ic-border-pressed);\n}\n\n.focus-indicator {\n display: flex;\n width: 100%;\n margin: -0.125rem;\n padding: 0.125rem;\n border-radius: var(--ic-border-radius);\n transition: var(--ic-easing-transition-fast);\n}\n\n.focus-indicator:focus-within,\n.focus-indicator-enabled {\n box-shadow: var(--ic-border-focus);\n}\n\n.focus-indicator.dark:focus-within {\n box-shadow: var(--ic-border-focus);\n}\n\n@media (forced-colors: active) {\n /* Styles here only apply to Forced Colors Mode */\n ic-input-component-container,\n .focus-indicator {\n transition: none;\n }\n\n ic-input-component-container:focus-within {\n border: var(--ic-border-width) solid Highlight;\n outline: 0.125rem solid Highlight;\n }\n\n ic-input-component-container.disabled,\n ic-input-component-container.disabled:hover {\n border: var(--ic-border-width) dashed GrayText;\n }\n}\n","import { Host, h } from \"@stencil/core\";\nimport { IcInformationStatus, } from \"../../utils/types\";\nimport successIcon from \"../../assets/success-icon.svg\";\nimport { isSlotUsed } from \"../../utils/helpers\";\n/**\n * @slot left-icon - Content will be placed to the left of the input.\n */\nexport class InputComponentContainer {\n constructor() {\n this.appearance = \"default\";\n this.dark = false;\n this.disabled = false;\n this.fullWidth = false;\n this.multiLine = false;\n this.readonly = false;\n this.size = \"default\";\n this.small = false;\n this.validationInline = false;\n this.validationStatus = \"\";\n }\n render() {\n const { size, small, validationStatus, disabled, readonly, multiLine, fullWidth, dark, appearance, validationInline, } = this;\n const hasValidationStatus = this.validationStatus !== \"\" && !this.disabled && !this.readonly\n ? true\n : false;\n return (h(Host, { class: {\n small: small,\n [`${size}`]: true,\n [validationStatus]: hasValidationStatus,\n disabled: disabled,\n readonly: readonly,\n [\"multiline\"]: multiLine,\n [\"fullwidth\"]: fullWidth,\n [\"dark\"]: dark || appearance === \"dark\",\n }, \"aria-disabled\": disabled && `${disabled}` }, h(\"div\", { class: {\n \"focus-indicator\": true,\n dark: dark || appearance === \"dark\",\n } }, isSlotUsed(this.el, \"left-icon\") && (h(\"div\", { class: {\n [\"icon-container\"]: true,\n } }, h(\"slot\", { name: \"left-icon\" }))), h(\"slot\", null), validationInline &&\n validationStatus === IcInformationStatus.Success && (h(\"span\", { class: {\n [\"inline-success\"]: true,\n }, innerHTML: successIcon })))));\n }\n static get is() { return \"ic-input-component-container\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-input-component-container.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-input-component-container.css\"]\n };\n }\n static get properties() {\n return {\n \"appearance\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"\\\"dark\\\" | \\\"default\\\"\",\n \"resolved\": \"\\\"dark\\\" | \\\"default\\\"\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The appearance of the input component container.\"\n },\n \"attribute\": \"appearance\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"default\\\"\"\n },\n \"dark\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"deprecated\",\n \"text\": \"This prop should not be used anymore. Set prop `appearance` to \\\"dark\\\" instead.\"\n }],\n \"text\": \"\"\n },\n \"attribute\": \"dark\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"disabled\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the disabled state will be set.\"\n },\n \"attribute\": \"disabled\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"fullWidth\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the input component container will fill the width of the container it is in.\"\n },\n \"attribute\": \"full-width\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"multiLine\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the input component container will allow for multiple lines.\"\n },\n \"attribute\": \"multi-line\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"readonly\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the readonly state will be set.\"\n },\n \"attribute\": \"readonly\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"size\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcSizes\",\n \"resolved\": \"\\\"default\\\" | \\\"large\\\" | \\\"small\\\"\",\n \"references\": {\n \"IcSizes\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcSizes\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The size of the input component container component.\"\n },\n \"attribute\": \"size\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"default\\\"\"\n },\n \"small\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"deprecated\",\n \"text\": \"This prop should not be used anymore. Set prop `size` to \\\"small\\\" instead.\"\n }],\n \"text\": \"\"\n },\n \"attribute\": \"small\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"validationInline\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the validation will display inline.\"\n },\n \"attribute\": \"validation-inline\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"validationStatus\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcInformationStatusOrEmpty\",\n \"resolved\": \"\\\"\\\" | \\\"error\\\" | \\\"success\\\" | \\\"warning\\\"\",\n \"references\": {\n \"IcInformationStatusOrEmpty\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcInformationStatusOrEmpty\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The validation status of the input component container - e.g. 'error' | 'warning' | 'success'.\"\n },\n \"attribute\": \"validation-status\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"\\\"\"\n }\n };\n }\n static get elementRef() { return \"el\"; }\n}\n//# sourceMappingURL=ic-input-component-container.js.map\n","ic-input-container .component-container {\n display: flex;\n flex-direction: column;\n}\n","import { Host, h } from \"@stencil/core\";\nexport class InputContainer {\n constructor() {\n this.disabled = false;\n this.readonly = false;\n }\n render() {\n return (h(Host, null, h(\"div\", { class: {\n [\"component-container\"]: true,\n [\"disabled\"]: this.disabled,\n [\"readonly\"]: this.readonly,\n } }, h(\"slot\", null))));\n }\n static get is() { return \"ic-input-container\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-input-container.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-input-container.css\"]\n };\n }\n static get properties() {\n return {\n \"disabled\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the disabled state will be set.\"\n },\n \"attribute\": \"disabled\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"readonly\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the readonly state will be set.\"\n },\n \"attribute\": \"readonly\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n }\n };\n }\n}\n//# sourceMappingURL=ic-input-container.js.map\n","ic-input-label {\n margin-bottom: var(--ic-space-xs);\n}\n\nic-input-label.with-helper {\n margin-bottom: var(--ic-space-xxxs);\n}\n\nic-input-label.readonly {\n color: var(--ic-color-tertiary-text);\n}\n\nic-input-label .helpertext {\n margin-top: var(--ic-space-xxxs);\n}\n\nic-input-label .helpertext-normal {\n color: var(--ic-color-secondary-text);\n}\n\nic-input-label .helpertext-readonly {\n color: var(--ic-color-tertiary-text);\n}\n\nic-input-label .readonly-label {\n color: var(--ic-color-secondary-text);\n}\n\nic-input-label .error-label {\n color: var(--ic-status-error);\n}\n\nic-input-label .dark {\n color: var(--ic-architectural-white);\n}\n","import { Host, h } from \"@stencil/core\";\nimport { getInputHelperTextID, onComponentRequiredPropUndefined, } from \"../../utils/helpers\";\nexport class InputLabel {\n constructor() {\n this.appearance = \"default\";\n this.dark = false;\n this.disabled = false;\n this.error = false;\n this.for = undefined;\n this.helperText = \"\";\n this.label = undefined;\n this.readonly = false;\n this.required = false;\n }\n componentDidLoad() {\n onComponentRequiredPropUndefined([{ prop: this.label, propName: \"label\" }], \"Input Label\");\n }\n render() {\n const { disabled, readonly, label, required, helperText, error, dark, appearance, } = this;\n const labelText = required ? label + \" *\" : label;\n const labelContent = readonly ? (`${labelText}`) : (h(\"label\", { htmlFor: this.for }, labelText));\n const id = getInputHelperTextID(this.for);\n return (h(Host, { class: {\n [\"disabled\"]: disabled,\n [\"readonly\"]: readonly,\n [\"with-helper\"]: helperText !== \"\",\n } }, h(\"ic-typography\", { variant: \"label\", class: {\n [\"readonly-label\"]: readonly,\n [\"error-label\"]: error && !(readonly || disabled),\n [\"dark\"]: dark || appearance === \"dark\",\n } }, labelContent), helperText !== \"\" && (h(\"ic-typography\", { variant: \"caption\", class: {\n [\"helpertext\"]: true,\n [\"helpertext-normal\"]: !disabled && !readonly,\n [\"helpertext-readonly\"]: readonly,\n } }, h(\"span\", { id: id }, helperText)))));\n }\n static get is() { return \"ic-input-label\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"./ic-input-label.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-input-label.css\"]\n };\n }\n static get properties() {\n return {\n \"appearance\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"\\\"dark\\\" | \\\"default\\\"\",\n \"resolved\": \"\\\"dark\\\" | \\\"default\\\"\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The appearance of the input label.\"\n },\n \"attribute\": \"appearance\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"default\\\"\"\n },\n \"dark\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"deprecated\",\n \"text\": \"This prop should not be used anymore. Set prop `appearance` to \\\"dark\\\" instead.\"\n }],\n \"text\": \"\"\n },\n \"attribute\": \"dark\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"disabled\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the disabled state will be set.\"\n },\n \"attribute\": \"disabled\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"error\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the input label will display with error styling.\"\n },\n \"attribute\": \"error\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"for\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The ID of the form element the label is bound to.\"\n },\n \"attribute\": \"for\",\n \"reflect\": false\n },\n \"helperText\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The helper text that will be displayed.\"\n },\n \"attribute\": \"helper-text\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"\\\"\"\n },\n \"label\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": true,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The text content of the label.\"\n },\n \"attribute\": \"label\",\n \"reflect\": false\n },\n \"readonly\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the readonly state will be set.\"\n },\n \"attribute\": \"readonly\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"required\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the input label will require a value.\"\n },\n \"attribute\": \"required\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n }\n };\n }\n}\n//# sourceMappingURL=ic-input-label.js.map\n","ic-input-validation {\n width: var(--input-width, 20rem);\n margin-top: var(--ic-space-xs);\n display: flex;\n}\n\nic-input-validation.fullwidth {\n width: 100%;\n}\n\nic-input-validation span.status-icon {\n padding-right: var(--ic-space-xxs);\n}\n\nic-input-validation span.status-icon > svg {\n height: 1.25rem;\n width: 1.25rem;\n}\n\nic-input-validation span.icon-success > svg {\n fill: var(--ic-status-success);\n}\n\nic-input-validation span.icon-error > svg {\n fill: var(--ic-status-error);\n}\n\nic-input-validation span.icon-warning > svg {\n fill: var(--ic-status-warning);\n}\n\nic-input-validation .statustext {\n flex-grow: 1;\n}\n","import { Host, h } from \"@stencil/core\";\nimport { IcInformationStatus, } from \"../../utils/types\";\nimport errorIcon from \"../../assets/error-icon.svg\";\nimport successIcon from \"../../assets/success-icon.svg\";\nimport warningIcon from \"../../assets/warning-icon.svg\";\nimport { getInputValidationTextID, onComponentRequiredPropUndefined, } from \"../../utils/helpers\";\nconst icon = {\n [IcInformationStatus.Warning]: warningIcon,\n [IcInformationStatus.Error]: errorIcon,\n [IcInformationStatus.Success]: successIcon,\n};\n/**\n * @slot validation-message-adornment - Content will be placed to the right of the validation message.\n */\nexport class InputValidation {\n constructor() {\n this.ariaLiveMode = \"polite\";\n this.for = undefined;\n this.fullWidth = false;\n this.message = undefined;\n this.status = \"\";\n }\n componentDidLoad() {\n onComponentRequiredPropUndefined([{ prop: this.message, propName: \"message\" }], \"Input Validation\");\n }\n render() {\n const displayIcon = this.status !== \"\" ? icon[this.status] : \"\";\n const id = getInputValidationTextID(this.for);\n return (h(Host, { class: {\n [this.status]: this.status !== \"\",\n [\"fullwidth\"]: this.fullWidth,\n } }, displayIcon !== \"\" && (h(\"span\", { class: {\n [\"status-icon\"]: true,\n [`icon-${this.status}`]: true,\n }, innerHTML: displayIcon })), h(\"ic-typography\", { variant: \"caption\", class: \"statustext\" }, h(\"span\", { \"aria-live\": this.ariaLiveMode, id: id }, this.message)), h(\"slot\", { name: \"validation-message-adornment\" })));\n }\n static get is() { return \"ic-input-validation\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-input-validation.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-input-validation.css\"]\n };\n }\n static get properties() {\n return {\n \"ariaLiveMode\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcAriaLiveModeVariants\",\n \"resolved\": \"\\\"assertive\\\" | \\\"polite\\\"\",\n \"references\": {\n \"IcAriaLiveModeVariants\": {\n \"location\": \"import\",\n \"path\": \"./ic-input-validation.types\",\n \"id\": \"src/components/ic-input-validation/ic-input-validation.types.tsx::IcAriaLiveModeVariants\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The ARIA live mode to apply to the message.\"\n },\n \"attribute\": \"aria-live-mode\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"polite\\\"\"\n },\n \"for\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The ID of the form element the validation is bound to.\"\n },\n \"attribute\": \"for\",\n \"reflect\": false\n },\n \"fullWidth\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the input validation will fill the width of the container.\"\n },\n \"attribute\": \"full-width\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"message\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": true,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The validation message to display.\"\n },\n \"attribute\": \"message\",\n \"reflect\": false\n },\n \"status\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcInformationStatusOrEmpty\",\n \"resolved\": \"\\\"\\\" | \\\"error\\\" | \\\"success\\\" | \\\"warning\\\"\",\n \"references\": {\n \"IcInformationStatusOrEmpty\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcInformationStatusOrEmpty\"\n }\n }\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The status of the validation - e.g. 'error' | 'warning' | 'success'.\"\n },\n \"attribute\": \"status\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"\\\"\"\n }\n };\n }\n static get elementRef() { return \"el\"; }\n}\n//# sourceMappingURL=ic-input-validation.js.map\n"],"version":3}