@swisspost/design-system-components 10.0.0-next.72 → 10.0.0-next.76

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (365) hide show
  1. package/dist/cjs/{create-validator-decorator-Bnx17kwi.js → create-validator-decorator-4dRrOF30.js} +1 -1
  2. package/dist/cjs/{index-ngUOBQot.js → index-BqngpwGa.js} +56 -15
  3. package/dist/cjs/loader.cjs.js +2 -2
  4. package/dist/cjs/{one-of-BHyX4vYq.js → one-of-D1veqtsm.js} +1 -1
  5. package/dist/cjs/{package-Bi-tiNRc.js → package-B0PdQ0Dm.js} +1 -1
  6. package/dist/cjs/{pattern-BgBx5zGQ.js → pattern-B7VKOu5m.js} +1 -1
  7. package/dist/cjs/post-accordion_2.cjs.entry.js +10 -12
  8. package/dist/cjs/post-autocomplete.cjs.entry.js +6 -6
  9. package/dist/cjs/post-avatar.cjs.entry.js +7 -7
  10. package/dist/cjs/post-back-to-top.cjs.entry.js +6 -6
  11. package/dist/cjs/post-banner.cjs.entry.js +6 -6
  12. package/dist/cjs/post-breadcrumb-item.cjs.entry.js +8 -8
  13. package/dist/cjs/post-breadcrumbs.cjs.entry.js +9 -11
  14. package/dist/cjs/post-closebutton_14.cjs.entry.js +86 -62
  15. package/dist/cjs/post-collapsible_2.cjs.entry.js +6 -6
  16. package/dist/cjs/post-components.cjs.js +2 -2
  17. package/dist/cjs/post-date-picker.cjs.entry.js +427 -257
  18. package/dist/cjs/post-footer.cjs.entry.js +6 -6
  19. package/dist/cjs/post-linkarea.cjs.entry.js +3 -3
  20. package/dist/cjs/post-listbox-option.cjs.entry.js +4 -4
  21. package/dist/cjs/post-listbox.cjs.entry.js +3 -3
  22. package/dist/cjs/post-number-input.cjs.entry.js +6 -5
  23. package/dist/cjs/post-pagination.cjs.entry.js +15 -10
  24. package/dist/cjs/post-popover-trigger.cjs.entry.js +5 -5
  25. package/dist/cjs/post-popover.cjs.entry.js +11 -12
  26. package/dist/cjs/post-progressbar.cjs.entry.js +4 -4
  27. package/dist/cjs/post-rating.cjs.entry.js +6 -6
  28. package/dist/cjs/post-side-navigation-trigger.cjs.entry.js +109 -0
  29. package/dist/cjs/post-side-navigation.cjs.entry.js +140 -0
  30. package/dist/cjs/post-stepper-item.cjs.entry.js +4 -4
  31. package/dist/cjs/post-stepper.cjs.entry.js +9 -7
  32. package/dist/cjs/post-tab-item.cjs.entry.js +15 -14
  33. package/dist/cjs/post-tab-panel.cjs.entry.js +6 -6
  34. package/dist/cjs/post-tabs.cjs.entry.js +196 -74
  35. package/dist/cjs/post-tooltip-trigger.cjs.entry.js +7 -9
  36. package/dist/cjs/post-tooltip.cjs.entry.js +9 -10
  37. package/dist/cjs/{required-lRDOdbd6.js → required-Bkz8MOYa.js} +1 -1
  38. package/dist/cjs/{type-shT641Eo.js → type-D8eD1JMd.js} +1 -1
  39. package/dist/cjs/{url-DRUMqVBq.js → url-C7MnIIZ_.js} +1 -1
  40. package/dist/collection/collection-manifest.json +3 -2
  41. package/dist/collection/components/post-accordion/post-accordion.js +1 -1
  42. package/dist/collection/components/post-accordion-item/post-accordion-item.js +4 -36
  43. package/dist/collection/components/post-autocomplete/post-autocomplete.js +1 -1
  44. package/dist/collection/components/post-avatar/post-avatar.js +1 -1
  45. package/dist/collection/components/post-back-to-top/post-back-to-top.js +1 -1
  46. package/dist/collection/components/post-banner/post-banner.css +2 -2
  47. package/dist/collection/components/post-banner/post-banner.js +1 -1
  48. package/dist/collection/components/post-breadcrumb-item/post-breadcrumb-item.css +1 -1
  49. package/dist/collection/components/post-breadcrumbs/post-breadcrumbs.css +1 -1
  50. package/dist/collection/components/post-breadcrumbs/post-breadcrumbs.js +2 -4
  51. package/dist/collection/components/post-closebutton/post-closebutton.css +1 -1
  52. package/dist/collection/components/post-closebutton/post-closebutton.js +22 -11
  53. package/dist/collection/components/post-closebutton/types.js +1 -1
  54. package/dist/collection/components/post-collapsible/post-collapsible.js +1 -1
  55. package/dist/collection/components/post-collapsible-trigger/post-collapsible-trigger.js +1 -1
  56. package/dist/collection/components/post-date-picker/accessibility-utils.js +59 -0
  57. package/dist/collection/components/post-date-picker/date-utils.js +102 -0
  58. package/dist/collection/components/post-date-picker/native-mask-element.js +36 -0
  59. package/dist/collection/components/post-date-picker/post-date-picker.css +1 -1
  60. package/dist/collection/components/post-date-picker/post-date-picker.js +224 -301
  61. package/dist/collection/components/post-footer/post-footer.js +1 -1
  62. package/dist/collection/components/post-header/post-header.css +1 -1
  63. package/dist/collection/components/post-header/post-header.js +13 -11
  64. package/dist/collection/components/post-icon/post-icon.js +1 -1
  65. package/dist/collection/components/post-language-menu/post-language-menu.css +1 -1
  66. package/dist/collection/components/post-language-menu/post-language-menu.js +7 -5
  67. package/dist/collection/components/post-language-menu-item/post-language-menu-item.css +1 -1
  68. package/dist/collection/components/post-linkarea/post-linkarea.js +1 -1
  69. package/dist/collection/components/post-listbox/post-listbox.js +1 -1
  70. package/dist/collection/components/post-listbox-option/post-listbox-option.js +2 -2
  71. package/dist/collection/components/post-logo/post-logo.js +1 -1
  72. package/dist/collection/components/post-mainnavigation/post-mainnavigation.js +1 -1
  73. package/dist/collection/components/post-megadropdown/post-megadropdown.css +1 -1
  74. package/dist/collection/components/post-megadropdown/post-megadropdown.js +1 -1
  75. package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.css +1 -1
  76. package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.js +1 -1
  77. package/dist/collection/components/post-menu/post-menu.css +1 -1
  78. package/dist/collection/components/post-menu/post-menu.js +9 -12
  79. package/dist/collection/components/post-menu-item/post-menu-item.css +1 -1
  80. package/dist/collection/components/post-menu-trigger/post-menu-trigger.js +1 -1
  81. package/dist/collection/components/post-number-input/post-number-input.css +1 -1
  82. package/dist/collection/components/post-number-input/post-number-input.js +3 -2
  83. package/dist/collection/components/post-pagination/post-pagination.css +1 -1
  84. package/dist/collection/components/post-pagination/post-pagination.js +11 -5
  85. package/dist/collection/components/post-popover/post-popover.js +12 -22
  86. package/dist/collection/components/post-popover-trigger/post-popover-trigger.js +1 -1
  87. package/dist/collection/components/post-popovercontainer/post-popovercontainer.css +1 -1
  88. package/dist/collection/components/post-popovercontainer/post-popovercontainer.js +17 -12
  89. package/dist/collection/components/post-progressbar/post-progressbar.js +1 -1
  90. package/dist/collection/components/post-rating/post-rating.js +1 -1
  91. package/dist/collection/components/post-side-navigation/post-side-navigation.css +1 -0
  92. package/dist/collection/components/post-side-navigation/post-side-navigation.js +267 -0
  93. package/dist/collection/components/post-side-navigation/side-navigation-styles.js +1 -0
  94. package/dist/collection/components/post-side-navigation-trigger/post-side-navigation-trigger.css +1 -0
  95. package/dist/collection/components/post-side-navigation-trigger/post-side-navigation-trigger.js +154 -0
  96. package/dist/collection/components/post-stepper/post-stepper.js +3 -1
  97. package/dist/collection/components/post-stepper-item/post-stepper-item.css +1 -1
  98. package/dist/collection/components/post-stepper-item/post-stepper-item.js +1 -1
  99. package/dist/collection/components/post-tab-item/post-tab-item.js +36 -19
  100. package/dist/collection/components/post-tab-panel/post-tab-panel.js +3 -2
  101. package/dist/collection/components/post-tabs/post-tabs.css +1 -1
  102. package/dist/collection/components/post-tabs/post-tabs.js +255 -84
  103. package/dist/collection/components/post-togglebutton/post-togglebutton.js +1 -1
  104. package/dist/collection/components/post-tooltip/post-tooltip.js +12 -22
  105. package/dist/collection/components/post-tooltip-trigger/post-tooltip-trigger.js +2 -4
  106. package/dist/collection/types/element-api.js +3 -0
  107. package/dist/component-names.json +2 -1
  108. package/dist/components/index.d.ts +4 -2
  109. package/dist/components/index.js +1 -1
  110. package/dist/components/package.js +1 -1
  111. package/dist/components/post-accordion-item2.js +1 -1
  112. package/dist/components/post-accordion2.js +1 -1
  113. package/dist/components/post-autocomplete.js +1 -1
  114. package/dist/components/post-avatar.js +1 -1
  115. package/dist/components/post-back-to-top.js +1 -1
  116. package/dist/components/post-banner.js +1 -1
  117. package/dist/components/post-breadcrumb-item.js +1 -1
  118. package/dist/components/post-breadcrumbs.js +1 -1
  119. package/dist/components/post-closebutton2.js +1 -1
  120. package/dist/components/post-collapsible-trigger2.js +1 -1
  121. package/dist/components/post-collapsible2.js +1 -1
  122. package/dist/components/post-date-picker.js +1 -1
  123. package/dist/components/post-footer.js +1 -1
  124. package/dist/components/post-header.js +1 -1
  125. package/dist/components/post-icon2.js +1 -1
  126. package/dist/components/post-language-menu-item.js +1 -1
  127. package/dist/components/post-language-menu.js +1 -1
  128. package/dist/components/post-linkarea.js +1 -1
  129. package/dist/components/post-listbox-option.js +1 -1
  130. package/dist/components/post-listbox.js +1 -1
  131. package/dist/components/post-logo.js +1 -1
  132. package/dist/components/post-mainnavigation.js +1 -1
  133. package/dist/components/post-megadropdown-trigger.js +1 -1
  134. package/dist/components/post-megadropdown.js +1 -1
  135. package/dist/components/post-menu-item2.js +1 -1
  136. package/dist/components/post-menu-trigger2.js +1 -1
  137. package/dist/components/post-menu2.js +1 -1
  138. package/dist/components/post-number-input.js +1 -1
  139. package/dist/components/post-pagination.js +1 -1
  140. package/dist/components/post-popover-trigger.js +1 -1
  141. package/dist/components/post-popover.js +1 -1
  142. package/dist/components/post-popovercontainer2.js +1 -1
  143. package/dist/components/post-progressbar.js +1 -1
  144. package/dist/components/post-rating.js +1 -1
  145. package/dist/components/post-side-navigation-trigger.d.ts +11 -0
  146. package/dist/components/post-side-navigation-trigger.js +1 -0
  147. package/dist/components/{post-login-widget.d.ts → post-side-navigation.d.ts} +4 -4
  148. package/dist/components/post-side-navigation.js +1 -0
  149. package/dist/components/post-stepper-item.js +1 -1
  150. package/dist/components/post-stepper.js +1 -1
  151. package/dist/components/post-tab-item.js +1 -1
  152. package/dist/components/post-tab-panel.js +1 -1
  153. package/dist/components/post-tabs.js +1 -1
  154. package/dist/components/post-togglebutton2.js +1 -1
  155. package/dist/components/post-tooltip-trigger.js +1 -1
  156. package/dist/components/post-tooltip.js +1 -1
  157. package/dist/components/react/index.js +1 -1
  158. package/dist/components/react/{p-Bu2JeHDf.js → p-06VKKzxv.js} +1 -1
  159. package/dist/components/react/p-BkWqx_6U.js +1 -0
  160. package/dist/components/react/p-Chtl9X7o.js +1 -0
  161. package/dist/components/react/p-CrLBbthi.js +1 -0
  162. package/dist/components/react/{p-D1zw8FxT.js → p-D0kuUny7.js} +1 -1
  163. package/dist/components/react/{p-PM7l--ff.js → p-DKF__bJF.js} +1 -1
  164. package/dist/components/react/p-DkKOmXaG.js +1 -0
  165. package/dist/components/react/p-UdMqVxhd.js +1 -0
  166. package/dist/components/react/p-d02KpeUM.js +1 -0
  167. package/dist/components/react/{p-BZSAV0-K.js → p-gUhGka9h.js} +1 -1
  168. package/dist/components/react/{p-Cd1TsNm7.js → p-uQE3DVb8.js} +1 -1
  169. package/dist/components/react/{p-BxoRVIIr.js → p-wLn52OZT.js} +1 -1
  170. package/dist/components/react/post-accordion-item.js +1 -1
  171. package/dist/components/react/post-accordion.js +1 -1
  172. package/dist/components/react/post-autocomplete.js +1 -1
  173. package/dist/components/react/post-avatar.js +1 -1
  174. package/dist/components/react/post-back-to-top.js +1 -1
  175. package/dist/components/react/post-banner.js +1 -1
  176. package/dist/components/react/post-breadcrumb-item.js +1 -1
  177. package/dist/components/react/post-breadcrumbs.js +1 -1
  178. package/dist/components/react/post-closebutton.js +1 -1
  179. package/dist/components/react/post-collapsible-trigger.js +1 -1
  180. package/dist/components/react/post-collapsible.js +1 -1
  181. package/dist/components/react/post-date-picker.js +1 -1
  182. package/dist/components/react/post-footer.js +1 -1
  183. package/dist/components/react/post-header.js +1 -1
  184. package/dist/components/react/post-icon.js +1 -1
  185. package/dist/components/react/post-language-menu-item.js +1 -1
  186. package/dist/components/react/post-language-menu.js +1 -1
  187. package/dist/components/react/post-linkarea.js +1 -1
  188. package/dist/components/react/post-listbox-option.js +1 -1
  189. package/dist/components/react/post-listbox.js +1 -1
  190. package/dist/components/react/post-logo.js +1 -1
  191. package/dist/components/react/post-mainnavigation.js +1 -1
  192. package/dist/components/react/post-megadropdown-trigger.js +1 -1
  193. package/dist/components/react/post-megadropdown.js +1 -1
  194. package/dist/components/react/post-menu-item.js +1 -1
  195. package/dist/components/react/post-menu-trigger.js +1 -1
  196. package/dist/components/react/post-menu.js +1 -1
  197. package/dist/components/react/post-number-input.js +1 -1
  198. package/dist/components/react/post-pagination.js +1 -1
  199. package/dist/components/react/post-popover-trigger.js +1 -1
  200. package/dist/components/react/post-popover.js +1 -1
  201. package/dist/components/react/post-popovercontainer.js +1 -1
  202. package/dist/components/react/post-progressbar.js +1 -1
  203. package/dist/components/react/post-rating.js +1 -1
  204. package/dist/components/react/post-side-navigation-trigger.d.ts +11 -0
  205. package/dist/components/react/post-side-navigation-trigger.js +1 -0
  206. package/dist/components/react/{post-login-widget.d.ts → post-side-navigation.d.ts} +4 -4
  207. package/dist/components/react/post-side-navigation.js +1 -0
  208. package/dist/components/react/post-stepper-item.js +1 -1
  209. package/dist/components/react/post-stepper.js +1 -1
  210. package/dist/components/react/post-tab-item.js +1 -1
  211. package/dist/components/react/post-tab-panel.js +1 -1
  212. package/dist/components/react/post-tabs.js +1 -1
  213. package/dist/components/react/post-togglebutton.js +1 -1
  214. package/dist/components/react/post-tooltip-trigger.js +1 -1
  215. package/dist/components/react/post-tooltip.js +1 -1
  216. package/dist/docs.json +571 -529
  217. package/dist/esm/{create-validator-decorator-D8qwF5Qe.js → create-validator-decorator-CYYTw0AS.js} +1 -1
  218. package/dist/esm/{index-BbDawWJ5.js → index-DE1aWdqx.js} +56 -15
  219. package/dist/esm/loader.js +3 -3
  220. package/dist/esm/{one-of-GPr3FflU.js → one-of-Ug1_Xoes.js} +1 -1
  221. package/dist/esm/package-d02KpeUM.js +3 -0
  222. package/dist/esm/{pattern-BWPRYpYv.js → pattern-WLk4tOqI.js} +1 -1
  223. package/dist/esm/post-accordion_2.entry.js +10 -12
  224. package/dist/esm/post-autocomplete.entry.js +6 -6
  225. package/dist/esm/post-avatar.entry.js +7 -7
  226. package/dist/esm/post-back-to-top.entry.js +6 -6
  227. package/dist/esm/post-banner.entry.js +6 -6
  228. package/dist/esm/post-breadcrumb-item.entry.js +8 -8
  229. package/dist/esm/post-breadcrumbs.entry.js +9 -11
  230. package/dist/esm/post-closebutton_14.entry.js +86 -62
  231. package/dist/esm/post-collapsible_2.entry.js +6 -6
  232. package/dist/esm/post-components.js +3 -3
  233. package/dist/esm/post-date-picker.entry.js +427 -257
  234. package/dist/esm/post-footer.entry.js +6 -6
  235. package/dist/esm/post-linkarea.entry.js +3 -3
  236. package/dist/esm/post-listbox-option.entry.js +4 -4
  237. package/dist/esm/post-listbox.entry.js +3 -3
  238. package/dist/esm/post-number-input.entry.js +6 -5
  239. package/dist/esm/post-pagination.entry.js +15 -10
  240. package/dist/esm/post-popover-trigger.entry.js +5 -5
  241. package/dist/esm/post-popover.entry.js +11 -12
  242. package/dist/esm/post-progressbar.entry.js +4 -4
  243. package/dist/esm/post-rating.entry.js +6 -6
  244. package/dist/esm/post-side-navigation-trigger.entry.js +107 -0
  245. package/dist/esm/post-side-navigation.entry.js +138 -0
  246. package/dist/esm/post-stepper-item.entry.js +4 -4
  247. package/dist/esm/post-stepper.entry.js +9 -7
  248. package/dist/esm/post-tab-item.entry.js +15 -14
  249. package/dist/esm/post-tab-panel.entry.js +6 -6
  250. package/dist/esm/post-tabs.entry.js +196 -74
  251. package/dist/esm/post-tooltip-trigger.entry.js +7 -9
  252. package/dist/esm/post-tooltip.entry.js +9 -10
  253. package/dist/esm/{required-uK-rZZjy.js → required-DeOhRbtk.js} +1 -1
  254. package/dist/esm/{type-obmwEgkM.js → type-S-4aPMGU.js} +1 -1
  255. package/dist/esm/{url-B28ByZCe.js → url-C8KSrmWc.js} +1 -1
  256. package/dist/post-components/{p-12047216.entry.js → p-0efb77f9.entry.js} +1 -1
  257. package/dist/post-components/p-1223e51d.entry.js +1 -0
  258. package/dist/post-components/{p-3b05e01d.entry.js → p-1878e9f8.entry.js} +1 -1
  259. package/dist/post-components/p-1eea2715.entry.js +1 -0
  260. package/dist/post-components/p-2233c37e.entry.js +1 -0
  261. package/dist/post-components/p-266e68a3.entry.js +1 -0
  262. package/dist/post-components/{p-00f55af5.entry.js → p-2a0b9ed0.entry.js} +1 -1
  263. package/dist/post-components/p-3c71d687.entry.js +1 -0
  264. package/dist/post-components/{p-IUnDBhPg.js → p-4-_BhJWV.js} +1 -1
  265. package/dist/post-components/{p-7f929bb9.entry.js → p-477c8c35.entry.js} +1 -1
  266. package/dist/post-components/{p-2c6b4e6a.entry.js → p-4b366aa0.entry.js} +1 -1
  267. package/dist/post-components/{p-53fd5230.entry.js → p-4c7750cd.entry.js} +1 -1
  268. package/dist/post-components/p-52e118e0.entry.js +1 -0
  269. package/dist/post-components/p-53f34806.entry.js +1 -0
  270. package/dist/post-components/p-621a81a7.entry.js +1 -0
  271. package/dist/post-components/p-85594193.entry.js +1 -0
  272. package/dist/post-components/p-89ea447b.entry.js +1 -0
  273. package/dist/post-components/p-8d8ac7ae.entry.js +1 -0
  274. package/dist/post-components/p-900dc8e1.entry.js +1 -0
  275. package/dist/post-components/p-93da9105.entry.js +1 -0
  276. package/dist/post-components/{p-d061773b.entry.js → p-95ad4d06.entry.js} +1 -1
  277. package/dist/post-components/p-9915ffee.entry.js +1 -0
  278. package/dist/post-components/{p-Ck2qPht6.js → p-B6uZASBE.js} +1 -1
  279. package/dist/post-components/{p-DSNGJB58.js → p-BDW1XHCO.js} +1 -1
  280. package/dist/post-components/{p-CVsNfXZd.js → p-CiOyV6Mo.js} +1 -1
  281. package/dist/post-components/p-DE1aWdqx.js +2 -0
  282. package/dist/post-components/{p-BRNqUiXj.js → p-DMiERazc.js} +1 -1
  283. package/dist/post-components/{p-D4F0BqBW.js → p-NPUljV0P.js} +1 -1
  284. package/dist/post-components/p-a08abdb2.entry.js +1 -0
  285. package/dist/post-components/p-a971ec25.entry.js +1 -0
  286. package/dist/post-components/{p-e2370e94.entry.js → p-ad69ed8c.entry.js} +1 -1
  287. package/dist/post-components/p-c11a8e06.entry.js +1 -0
  288. package/dist/post-components/p-d02KpeUM.js +1 -0
  289. package/dist/post-components/p-d9ce8f05.entry.js +1 -0
  290. package/dist/post-components/p-dcceab4e.entry.js +1 -0
  291. package/dist/post-components/{p-f1ca1d3f.entry.js → p-e219e22a.entry.js} +1 -1
  292. package/dist/post-components/{p-758fc84f.entry.js → p-f6c45fed.entry.js} +1 -1
  293. package/dist/post-components/post-components.css +2 -2
  294. package/dist/post-components/post-components.esm.js +1 -1
  295. package/dist/types/components/post-accordion-item/post-accordion-item.d.ts +0 -8
  296. package/dist/types/components/post-closebutton/post-closebutton.d.ts +5 -2
  297. package/dist/types/components/post-closebutton/types.d.ts +1 -1
  298. package/dist/types/components/post-date-picker/accessibility-utils.d.ts +19 -0
  299. package/dist/types/components/post-date-picker/date-utils.d.ts +48 -0
  300. package/dist/types/components/post-date-picker/native-mask-element.d.ts +12 -0
  301. package/dist/types/components/post-date-picker/post-date-picker.d.ts +23 -62
  302. package/dist/types/components/post-header/post-header.d.ts +3 -2
  303. package/dist/types/components/post-language-menu/post-language-menu.d.ts +2 -1
  304. package/dist/types/components/post-menu/post-menu.d.ts +4 -4
  305. package/dist/types/components/post-popover/post-popover.d.ts +4 -5
  306. package/dist/types/components/post-popovercontainer/post-popovercontainer.d.ts +2 -2
  307. package/dist/types/components/post-side-navigation/post-side-navigation.d.ts +62 -0
  308. package/dist/types/components/post-side-navigation/side-navigation-styles.d.ts +2 -0
  309. package/dist/types/components/post-side-navigation-trigger/post-side-navigation-trigger.d.ts +33 -0
  310. package/dist/types/components/post-tab-item/post-tab-item.d.ts +8 -4
  311. package/dist/types/components/post-tab-panel/post-tab-panel.d.ts +1 -1
  312. package/dist/types/components/post-tabs/post-tabs.d.ts +37 -17
  313. package/dist/types/components/post-tooltip/post-tooltip.d.ts +4 -5
  314. package/dist/types/components.d.ts +181 -164
  315. package/dist/types/home/runner/work/design-system/design-system/packages/components/.stencil/vrt/helpers/header-variants.config.d.ts +1 -0
  316. package/dist/types/types/element-api.d.ts +3 -0
  317. package/dist/vrt/helpers/header-test-config.js +3 -2
  318. package/dist/vrt/helpers/header-variants.config.js +29 -2
  319. package/hydrate/index.js +1174 -682
  320. package/hydrate/index.mjs +1174 -682
  321. package/package.json +11 -12
  322. package/dist/cjs/long-press-event-Dx21Ojod.js +0 -276
  323. package/dist/cjs/post-login-widget.cjs.entry.js +0 -92
  324. package/dist/collection/components/post-accordion-item/heading-levels.js +0 -1
  325. package/dist/collection/components/post-login-widget/post-login-widget.css +0 -1
  326. package/dist/collection/components/post-login-widget/post-login-widget.js +0 -218
  327. package/dist/collection/components/post-tab-item/post-tab-item.css +0 -1
  328. package/dist/components/long-press-event.js +0 -8
  329. package/dist/components/post-avatar2.js +0 -1
  330. package/dist/components/post-login-widget.js +0 -1
  331. package/dist/components/react/p-85IGlhtB.js +0 -1
  332. package/dist/components/react/p-B9ZFuYey.js +0 -1
  333. package/dist/components/react/p-BNgqqRsB.js +0 -8
  334. package/dist/components/react/p-Bg9dtyzK.js +0 -1
  335. package/dist/components/react/p-Bn66acGG.js +0 -1
  336. package/dist/components/react/p-CkTAQJGd.js +0 -1
  337. package/dist/components/react/p-ClG-N42b.js +0 -1
  338. package/dist/components/react/p-DwuW52g5.js +0 -1
  339. package/dist/components/react/post-login-widget.js +0 -1
  340. package/dist/esm/long-press-event-BNgqqRsB.js +0 -274
  341. package/dist/esm/package-ClG-N42b.js +0 -3
  342. package/dist/esm/post-login-widget.entry.js +0 -90
  343. package/dist/post-components/p-0288484f.entry.js +0 -1
  344. package/dist/post-components/p-07cdd022.entry.js +0 -1
  345. package/dist/post-components/p-17df4e91.entry.js +0 -1
  346. package/dist/post-components/p-17e046fa.entry.js +0 -1
  347. package/dist/post-components/p-29bd31a0.entry.js +0 -1
  348. package/dist/post-components/p-5b7e6369.entry.js +0 -1
  349. package/dist/post-components/p-5f4ca179.entry.js +0 -1
  350. package/dist/post-components/p-62b6154a.entry.js +0 -1
  351. package/dist/post-components/p-686a6e22.entry.js +0 -1
  352. package/dist/post-components/p-9865f72c.entry.js +0 -1
  353. package/dist/post-components/p-99803d57.entry.js +0 -1
  354. package/dist/post-components/p-BNgqqRsB.js +0 -8
  355. package/dist/post-components/p-BbDawWJ5.js +0 -2
  356. package/dist/post-components/p-ClG-N42b.js +0 -1
  357. package/dist/post-components/p-a0e0a760.entry.js +0 -1
  358. package/dist/post-components/p-a850652d.entry.js +0 -1
  359. package/dist/post-components/p-aac1a8ea.entry.js +0 -1
  360. package/dist/post-components/p-b3f0f9a2.entry.js +0 -1
  361. package/dist/post-components/p-c37dba4b.entry.js +0 -1
  362. package/dist/post-components/p-f2e5f44e.entry.js +0 -1
  363. package/dist/post-components/p-ff98ada4.entry.js +0 -1
  364. package/dist/types/components/post-accordion-item/heading-levels.d.ts +0 -2
  365. package/dist/types/components/post-login-widget/post-login-widget.d.ts +0 -45
@@ -1,10 +1,10 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-BbDawWJ5.js';
1
+ import { r as registerInstance, h, H as Host, a as getElement } from './index-DE1aWdqx.js';
2
2
  import './breakpoints-BQ3HlJPr.js';
3
- import { v as version } from './package-ClG-N42b.js';
3
+ import { v as version } from './package-d02KpeUM.js';
4
4
  import { g as getDefaultExportFromCjs } from './_commonjsHelpers-BFTU3MAI.js';
5
- import { c as createValidatorDecorator, g as getValidationContext } from './create-validator-decorator-D8qwF5Qe.js';
6
- import { R as Required } from './required-uK-rZZjy.js';
7
- import { T as Type } from './type-obmwEgkM.js';
5
+ import { c as createValidatorDecorator, g as getValidationContext } from './create-validator-decorator-CYYTw0AS.js';
6
+ import { R as Required } from './required-DeOhRbtk.js';
7
+ import { T as Type } from './type-S-4aPMGU.js';
8
8
 
9
9
  /**
10
10
  * Property decorator that validates the property value is a valid date string.
@@ -87,24 +87,6 @@ function isValidLocale(locale) {
87
87
  }
88
88
  }
89
89
 
90
- var airDatepicker$1 = {exports: {}};
91
-
92
- var airDatepicker = airDatepicker$1.exports;
93
-
94
- var hasRequiredAirDatepicker;
95
-
96
- function requireAirDatepicker () {
97
- if (hasRequiredAirDatepicker) return airDatepicker$1.exports;
98
- hasRequiredAirDatepicker = 1;
99
- (function (module, exports) {
100
- !function(e,t){module.exports=t();}(airDatepicker,(function(){return function(){var e={d:function(t,i){for(var s in i)e.o(i,s)&&!e.o(t,s)&&Object.defineProperty(t,s,{enumerable:true,get:i[s]});},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}},t={};e.d(t,{default:function(){return R}});var i={days:"days",months:"months",years:"years",day:"day",month:"month",year:"year",eventChangeViewDate:"changeViewDate",eventChangeCurrentView:"changeCurrentView",eventChangeFocusDate:"changeFocusDate",eventChangeSelectedDate:"changeSelectedDate",eventChangeTime:"changeTime",eventChangeLastSelectedDate:"changeLastSelectedDate",actionSelectDate:"selectDate",actionUnselectDate:"unselectDate",cssClassWeekend:"-weekend-"},s={classes:"",inline:false,locale:{days:["Воскресенье","Понедельник","Вторник","Среда","Четверг","Пятница","Суббота"],daysShort:["Вос","Пон","Вто","Сре","Чет","Пят","Суб"],daysMin:["Вс","Пн","Вт","Ср","Чт","Пт","Сб"],months:["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"],monthsShort:["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек"],today:"Сегодня",clear:"Очистить",dateFormat:"dd.MM.yyyy",timeFormat:"HH:mm",firstDay:1},startDate:new Date,firstDay:"",weekends:[6,0],dateFormat:"",altField:"",altFieldDateFormat:"T",toggleSelected:true,keyboardNav:true,selectedDates:false,container:"",isMobile:false,visible:false,position:"bottom left",offset:12,view:i.days,minView:i.days,showOtherMonths:true,selectOtherMonths:true,moveToOtherMonthsOnSelect:true,showOtherYears:true,selectOtherYears:true,moveToOtherYearsOnSelect:true,minDate:"",maxDate:"",disableNavWhenOutOfRange:true,multipleDates:false,multipleDatesSeparator:", ",range:false,dynamicRange:true,buttons:false,monthsField:"monthsShort",showEvent:"focus",autoClose:false,fixedHeight:false,prevHtml:'<svg><path d="M 17,12 l -5,5 l 5,5"></path></svg>',nextHtml:'<svg><path d="M 14,12 l 5,5 l -5,5"></path></svg>',navTitles:{days:"MMMM, <i>yyyy</i>",months:"yyyy",years:"yyyy1 - yyyy2"},timepicker:false,onlyTimepicker:false,dateTimeSeparator:" ",timeFormat:"",minHours:0,maxHours:24,minMinutes:0,maxMinutes:59,hoursStep:1,minutesStep:1,onSelect:false,onChangeViewDate:false,onChangeView:false,onRenderCell:false,onShow:false,onHide:false,onClickDayName:false};function a(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:document;return "string"==typeof e?t.querySelector(e):e}function n(){let{tagName:e="div",className:t="",innerHtml:i="",id:s="",attrs:a={}}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=document.createElement(e);return t&&n.classList.add(...t.split(" ")),s&&(n.id=s),i&&(n.innerHTML=i),a&&r(n,a),n}function r(e,t){for(let[i,s]of Object.entries(t)) void 0!==s&&e.setAttribute(i,s);return e}function h(e){return new Date(e.getFullYear(),e.getMonth()+1,0).getDate()}function o(e){let t=e.getHours(),{hours:i,dayPeriod:s}=l(t);return {year:e.getFullYear(),month:e.getMonth(),fullMonth:e.getMonth()+1<10?"0"+(e.getMonth()+1):e.getMonth()+1,date:e.getDate(),fullDate:e.getDate()<10?"0"+e.getDate():e.getDate(),day:e.getDay(),hours:t,fullHours:d(t),hours12:i,dayPeriod:s,fullHours12:d(i),minutes:e.getMinutes(),fullMinutes:e.getMinutes()<10?"0"+e.getMinutes():e.getMinutes()}}function l(e){return {dayPeriod:e>11?"pm":"am",hours:e%12==0?12:e%12}}function d(e){return e<10?"0"+e:e}function c(e){let t=10*Math.floor(e.getFullYear()/10);return [t,t+9]}function u(){let e=[];for(var t=arguments.length,i=new Array(t),s=0;s<t;s++)i[s]=arguments[s];return i.forEach((t=>{if("object"==typeof t)for(let i in t)t[i]&&e.push(i);else t&&e.push(t);})),e.join(" ")}function p(e,t){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i.days;if(!e||!t)return false;let a=o(e),n=o(t);return {[i.days]:a.date===n.date&&a.month===n.month&&a.year===n.year,[i.months]:a.month===n.month&&a.year===n.year,[i.years]:a.year===n.year}[s]}function m(e,t,i){let s=g(e,false).getTime(),a=g(t,false).getTime();return i?s>=a:s>a}function v(e,t){return !m(e,t,true)}function g(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=new Date(e.getTime());return "boolean"!=typeof t||t||function(e){e.setHours(0,0,0,0);}(i),i}function D(e,t,i){e.length?e.forEach((e=>{e.addEventListener(t,i);})):e.addEventListener(t,i);}function y(e,t){return !(!e||e===document||e instanceof DocumentFragment)&&(e.matches(t)?e:y(e.parentNode,t))}function f(e,t,i){return e>i?i:e<t?t:e}function w(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),s=1;s<t;s++)i[s-1]=arguments[s];return i.filter((e=>e)).forEach((t=>{for(let[i,s]of Object.entries(t))if(void 0!==s&&"[object Object]"===s.toString()){let t=void 0!==e[i]?e[i].toString():void 0,a=s.toString(),n=Array.isArray(s)?[]:{};e[i]=e[i]?t!==a?n:e[i]:n,w(e[i],s);}else e[i]=s;})),e}function b(e){let t=e;return e instanceof Date||("string"==typeof e&&/^\d{4}-\d{2}-\d{2}$/.test(e)&&(e+="T00:00:00"),t=new Date(e)),isNaN(t.getTime())&&(console.log(`Unable to convert value "${e}" to Date object`),t=false),t}function $(e){let t="\\s|\\.|-|/|\\\\|,|\\$|\\!|\\?|:|;";return new RegExp("(^|>|"+t+")("+e+")($|<|"+t+")","g")}function k(e,t,i){return (t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return "symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:true,configurable:true,writable:true}):e[t]=i,e}class C{constructor(){let{type:e,date:t,dp:i,opts:s,body:a}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};k(this,"focus",(()=>{this.$cell.classList.add("-focus-"),this.focused=true;})),k(this,"removeFocus",(()=>{this.$cell.classList.remove("-focus-"),this.focused=false;})),k(this,"select",(()=>{this.$cell.classList.add("-selected-"),this.selected=true;})),k(this,"removeSelect",(()=>{this.$cell.classList.remove("-selected-","-range-from-","-range-to-"),this.selected=false;})),k(this,"onChangeSelectedDate",(()=>{this.isDisabled||(this._handleSelectedStatus(),this.opts.range&&this._handleRangeStatus());})),k(this,"onChangeFocusDate",(e=>{if(!e)return void(this.focused&&this.removeFocus());let t=p(e,this.date,this.type);t?this.focus():!t&&this.focused&&this.removeFocus(),this.opts.range&&this._handleRangeStatus();})),k(this,"render",(()=>(this.$cell.innerHTML=this._getHtml(),this._handleClasses(),this.$cell))),this.type=e,this.singleType=this.type.slice(0,-1),this.date=t,this.dp=i,this.opts=s,this.body=a,this.customData=false,this.init();}init(){var e,t;let{onRenderCell:i}=this.opts;i&&(this.customData=i({date:this.date,cellType:this.singleType,datepicker:this.dp})),this._createElement(),this._bindDatepickerEvents(),null!==(e=this.customData)&&void 0!==e&&e.disabled?this.dp.disableDate(this.date):false===(null===(t=this.customData)||void 0===t?void 0:t.disabled)&&this.dp.enableDate(this.date);}_bindDatepickerEvents(){this.dp.on(i.eventChangeSelectedDate,this.onChangeSelectedDate),this.dp.on(i.eventChangeFocusDate,this.onChangeFocusDate);}unbindDatepickerEvents(){this.dp.off(i.eventChangeSelectedDate,this.onChangeSelectedDate),this.dp.off(i.eventChangeFocusDate,this.onChangeFocusDate);}_createElement(){var e;let{year:t,month:i,fullMonth:s,date:a,fullDate:r}=o(this.date),h=(null===(e=this.customData)||void 0===e?void 0:e.attrs)||{};this.$cell=n({attrs:{"data-year":t,"data-month":i,"data-date":a,"data-iso-date":`${t}-${s}-${r}`,...h}}),this.$cell.adpCell=this;}_getClassName(){var e;let t=new Date,{selectOtherMonths:s,selectOtherYears:a}=this.opts,{minDate:n,maxDate:r,isDateDisabled:h}=this.dp,{day:l}=o(this.date),d=this._isOutOfMinMaxRange(),c=h(this.date),m=u("air-datepicker-cell",`-${this.singleType}-`,{"-current-":p(t,this.date,this.type),"-min-date-":n&&p(n,this.date,this.type),"-max-date-":r&&p(r,this.date,this.type)}),v="";switch(this.type){case i.days:v=u({"-weekend-":this.dp.isWeekend(l),"-other-month-":this.isOtherMonth,"-disabled-":this.isOtherMonth&&!s||d||c});break;case i.months:v=u({"-disabled-":d});break;case i.years:v=u({"-other-decade-":this.isOtherDecade,"-disabled-":d||this.isOtherDecade&&!a});}return u(m,v,null===(e=this.customData)||void 0===e?void 0:e.classes).split(" ")}_getHtml(){var e;let{year:t,month:s,date:a}=o(this.date),{showOtherMonths:n,showOtherYears:r}=this.opts;if(null!==(e=this.customData)&&void 0!==e&&e.html)return this.customData.html;switch(this.type){case i.days:return !n&&this.isOtherMonth?"":a;case i.months:return this.dp.locale[this.opts.monthsField][s];case i.years:return !r&&this.isOtherDecade?"":t}}_isOutOfMinMaxRange(){let{minDate:e,maxDate:t}=this.dp,{type:s,date:a}=this,{month:n,year:r,date:h}=o(a),l=s===i.days,d=s===i.years,c=!!e&&new Date(r,d?e.getMonth():n,l?h:e.getDate()),u=!!t&&new Date(r,d?t.getMonth():n,l?h:t.getDate());return e&&t?v(c,e)||m(u,t):e?v(c,e):t?m(u,t):void 0}destroy(){this.unbindDatepickerEvents();}_handleRangeStatus(){const{selectedDates:e,focusDate:t,rangeDateTo:i,rangeDateFrom:s}=this.dp,a=e.length;if(this.$cell.classList.remove("-range-from-","-range-to-","-in-range-"),!a)return;let n=s,r=i;if(1===a&&t){const i=m(t,e[0]);n=i?e[0]:t,r=i?t:e[0];}let h=u({"-in-range-":n&&r&&(o=this.date,l=n,d=r,m(o,l)&&v(o,d)),"-range-from-":n&&p(this.date,n,this.type),"-range-to-":r&&p(this.date,r,this.type)});var o,l,d;h&&this.$cell.classList.add(...h.split(" "));}_handleSelectedStatus(){let e=this.dp._checkIfDateIsSelected(this.date,this.type);e?this.select():!e&&this.selected&&this.removeSelect();}_handleInitialFocusStatus(){p(this.dp.focusDate,this.date,this.type)&&this.focus();}_handleClasses(){this.$cell.setAttribute("class",""),this._handleInitialFocusStatus(),this.dp.hasSelectedDates&&(this._handleSelectedStatus(),this.dp.opts.range&&this._handleRangeStatus()),this.$cell.classList.add(...this._getClassName());}get isDisabled(){return this.$cell.matches(".-disabled-")}get isOtherMonth(){return this.dp.isOtherMonth(this.date)}get isOtherDecade(){return this.dp.isOtherDecade(this.date)}}function _(e,t,i){return (t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return "symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:true,configurable:true,writable:true}):e[t]=i,e}let M={[i.days]:`<div class="air-datepicker-body--day-names"></div><div class="air-datepicker-body--cells -${i.days}-"></div>`,[i.months]:`<div class="air-datepicker-body--cells -${i.months}-"></div>`,[i.years]:`<div class="air-datepicker-body--cells -${i.years}-"></div>`};const S=".air-datepicker-cell";class T{constructor(e){let{dp:t,type:s,opts:a}=e;_(this,"handleClick",(e=>{let t=e.target.closest(S).adpCell;if(t.isDisabled)return;if(!this.dp.isMinViewReached)return void this.dp.down();let i=this.dp._checkIfDateIsSelected(t.date,t.type);i?this.dp._handleAlreadySelectedDates(i,t.date):this.dp.selectDate(t.date);})),_(this,"handleDayNameClick",(e=>{let t=e.target.getAttribute("data-day-index");this.opts.onClickDayName({dayIndex:Number(t),datepicker:this.dp});})),_(this,"onChangeCurrentView",(e=>{e!==this.type?this.hide():(this.show(),this.render());})),_(this,"onMouseOverCell",(e=>{let t=y(e.target,S);this.dp.setFocusDate(!!t&&t.adpCell.date);})),_(this,"onMouseOutCell",(()=>{this.dp.setFocusDate(false);})),_(this,"onClickBody",(e=>{let{onClickDayName:t}=this.opts,i=e.target;i.closest(S)&&this.handleClick(e),t&&i.closest(".air-datepicker-body--day-name")&&this.handleDayNameClick(e);})),_(this,"onMouseDown",(e=>{this.pressed=true;let t=y(e.target,S),i=t&&t.adpCell;p(i.date,this.dp.rangeDateFrom)&&(this.rangeFromFocused=true),p(i.date,this.dp.rangeDateTo)&&(this.rangeToFocused=true);})),_(this,"onMouseMove",(e=>{if(!this.pressed||!this.dp.isMinViewReached)return;e.preventDefault();let t=y(e.target,S),i=t&&t.adpCell,{selectedDates:s,rangeDateTo:a,rangeDateFrom:n}=this.dp;if(!i||i.isDisabled)return;let{date:r}=i;if(2===s.length){if(this.rangeFromFocused&&!m(r,a)){let{hours:e,minutes:t}=o(n);r.setHours(e),r.setMinutes(t),this.dp.rangeDateFrom=r,this.dp.replaceDate(n,r);}if(this.rangeToFocused&&!v(r,n)){let{hours:e,minutes:t}=o(a);r.setHours(e),r.setMinutes(t),this.dp.rangeDateTo=r,this.dp.replaceDate(a,r);}}})),_(this,"onMouseUp",(()=>{this.pressed=false,this.rangeFromFocused=false,this.rangeToFocused=false;})),_(this,"onChangeViewDate",((e,t)=>{if(!this.isVisible)return;let s=c(e),a=c(t);switch(this.dp.currentView){case i.days:if(p(e,t,i.months))return;break;case i.months:if(p(e,t,i.years))return;break;case i.years:if(s[0]===a[0]&&s[1]===a[1])return}this.render();})),_(this,"render",(()=>{this.destroyCells(),this._generateCells(),this.cells.forEach((e=>{this.$cells.appendChild(e.render());}));})),this.dp=t,this.type=s,this.opts=a,this.cells=[],this.$el="",this.pressed=false,this.isVisible=true,this.init();}init(){this._buildBaseHtml(),this.type===i.days&&this.renderDayNames(),this.render(),this._bindEvents(),this._bindDatepickerEvents();}_bindEvents(){let{range:e,dynamicRange:t}=this.opts;D(this.$el,"mouseover",this.onMouseOverCell),D(this.$el,"mouseout",this.onMouseOutCell),D(this.$el,"click",this.onClickBody),e&&t&&(D(this.$el,"mousedown",this.onMouseDown),D(this.$el,"mousemove",this.onMouseMove),D(window.document,"mouseup",this.onMouseUp));}_bindDatepickerEvents(){this.dp.on(i.eventChangeViewDate,this.onChangeViewDate),this.dp.on(i.eventChangeCurrentView,this.onChangeCurrentView);}_buildBaseHtml(){this.$el=n({className:`air-datepicker-body -${this.type}-`,innerHtml:M[this.type]}),this.$names=a(".air-datepicker-body--day-names",this.$el),this.$cells=a(".air-datepicker-body--cells",this.$el);}_getDayNamesHtml(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.dp.locale.firstDay,t="",s=this.dp.isWeekend,{onClickDayName:a}=this.opts,n=e,r=0;for(;r<7;){let e=n%7;t+=`<div class="${u("air-datepicker-body--day-name",{[i.cssClassWeekend]:s(e),"-clickable-":!!a})}" data-day-index='${e}'>${this.dp.locale.daysMin[e]}</div>`,r++,n++;}return t}renderDayNames(){this.$names.innerHTML=this._getDayNamesHtml();}_generateCell(e){let{type:t,dp:i,opts:s}=this;return new C({type:t,dp:i,opts:s,date:e,body:this})}_generateCells(){T.getDatesFunction(this.type)(this.dp,(e=>{this.cells.push(this._generateCell(e));}));}show(){this.isVisible=true,this.$el.classList.remove("-hidden-");}hide(){this.isVisible=false,this.$el.classList.add("-hidden-");}destroyCells(){this.cells.forEach((e=>e.destroy())),this.cells=[],this.$cells.innerHTML="";}destroy(){this.destroyCells(),this.dp.off(i.eventChangeViewDate,this.onChangeViewDate),this.dp.off(i.eventChangeCurrentView,this.onChangeCurrentView);}static getDaysDates(e,t){let{viewDate:i,opts:{fixedHeight:s},locale:{firstDay:a}}=e,n=h(i),{year:r,month:l}=o(i),d=new Date(r,l,1),c=new Date(r,l,n),u=d.getDay()-a,p=6-c.getDay()+a;u=u<0?u+7:u,p=p>6?p-7:p;let m=function(e,t){let{year:i,month:s,date:a}=o(e);return new Date(i,s,a-t)}(d,u),v=n+u+p,g=m.getDate(),{year:D,month:y}=o(m),f=0;s&&(v=42);const w=[];for(;f<v;){let e=new Date(D,y,g+f);t&&t(e),w.push(e),f++;}return w}static getMonthsDates(e,t){let{year:i}=e.parsedViewDate,s=0,a=[];for(;s<12;){const e=new Date(i,s);a.push(e),t&&t(e),s++;}return a}static getYearsDates(e,t){let i=c(e.viewDate),s=i[0]-1,a=i[1]+1,n=s,r=[];for(;n<=a;){const e=new Date(n,0);r.push(e),t&&t(e),n++;}return r}static getDatesFunction(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i.days;return {[i.days]:T.getDaysDates,[i.months]:T.getMonthsDates,[i.years]:T.getYearsDates}[e]}}function F(e,t,i){return (t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return "symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:true,configurable:true,writable:true}):e[t]=i,e}class V{constructor(e){let{dp:t,opts:i}=e;F(this,"onClickNav",(e=>{let t=y(e.target,".air-datepicker-nav--action");if(!t)return;let i=t.dataset.action;this.dp[i]();})),F(this,"onChangeViewDate",(()=>{this.render(),this._resetNavStatus(),this.handleNavStatus();})),F(this,"onChangeCurrentView",(()=>{this.render(),this._resetNavStatus(),this.handleNavStatus();})),F(this,"onClickNavTitle",(()=>{this.dp.isFinalView||this.dp.up();})),F(this,"update",(()=>{let{prevHtml:e,nextHtml:t}=this.opts;this.$prev.innerHTML=e,this.$next.innerHTML=t,this._resetNavStatus(),this.render(),this.handleNavStatus();})),F(this,"renderDelay",(()=>{setTimeout(this.render);})),F(this,"render",(()=>{this.$title.innerHTML=this._getTitle(),function(e,t){for(let i in t)t[i]?e.classList.add(i):e.classList.remove(i);}(this.$title,{"-disabled-":this.dp.isFinalView});})),this.dp=t,this.opts=i,this.init();}init(){this._createElement(),this._buildBaseHtml(),this._defineDOM(),this.render(),this.handleNavStatus(),this._bindEvents(),this._bindDatepickerEvents();}_defineDOM(){this.$title=a(".air-datepicker-nav--title",this.$el),this.$prev=a('[data-action="prev"]',this.$el),this.$next=a('[data-action="next"]',this.$el);}_bindEvents(){this.$el.addEventListener("click",this.onClickNav),this.$title.addEventListener("click",this.onClickNavTitle);}_bindDatepickerEvents(){this.dp.on(i.eventChangeViewDate,this.onChangeViewDate),this.dp.on(i.eventChangeCurrentView,this.onChangeCurrentView),this.isNavIsFunction&&(this.dp.on(i.eventChangeSelectedDate,this.renderDelay),this.dp.opts.timepicker&&this.dp.on(i.eventChangeTime,this.render));}destroy(){this.dp.off(i.eventChangeViewDate,this.onChangeViewDate),this.dp.off(i.eventChangeCurrentView,this.onChangeCurrentView),this.isNavIsFunction&&(this.dp.off(i.eventChangeSelectedDate,this.renderDelay),this.dp.opts.timepicker&&this.dp.off(i.eventChangeTime,this.render));}_createElement(){this.$el=n({tagName:"nav",className:"air-datepicker-nav"});}_getTitle(){let{dp:e,opts:t}=this,i=t.navTitles[e.currentView];return "function"==typeof i?i(e):e.formatDate(e.viewDate,i)}handleNavStatus(){let{disableNavWhenOutOfRange:e}=this.opts,{minDate:t,maxDate:s}=this.dp;if(!t&&!s||!e)return;let{year:a,month:n}=this.dp.parsedViewDate,r=!!t&&o(t),h=!!s&&o(s);switch(this.dp.currentView){case i.days:t&&r.month>=n&&r.year>=a&&this._disableNav("prev"),s&&h.month<=n&&h.year<=a&&this._disableNav("next");break;case i.months:t&&r.year>=a&&this._disableNav("prev"),s&&h.year<=a&&this._disableNav("next");break;case i.years:{let e=c(this.dp.viewDate);t&&r.year>=e[0]&&this._disableNav("prev"),s&&h.year<=e[1]&&this._disableNav("next");break}}}_disableNav(e){a('[data-action="'+e+'"]',this.$el).classList.add("-disabled-");}_resetNavStatus(){!function(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),s=1;s<t;s++)i[s-1]=arguments[s];e.length?e.forEach((e=>{e.classList.remove(...i);})):e.classList.remove(...i);}(this.$el.querySelectorAll(".air-datepicker-nav--action"),"-disabled-");}_buildBaseHtml(){let{prevHtml:e,nextHtml:t}=this.opts;this.$el.innerHTML=`<div class="air-datepicker-nav--action" data-action="prev">${e}</div><div class="air-datepicker-nav--title"></div><div class="air-datepicker-nav--action" data-action="next">${t}</div>`;}get isNavIsFunction(){let{navTitles:e}=this.opts;return Object.keys(e).find((t=>"function"==typeof e[t]))}}var x={today:{content:e=>e.locale.today,onClick:e=>e.setViewDate(new Date)},clear:{content:e=>e.locale.clear,onClick:e=>e.clear()}};class H{constructor(e){let{dp:t,opts:i}=e;this.dp=t,this.opts=i,this.init();}init(){this.createElement(),this.render();}createElement(){this.$el=n({className:"air-datepicker-buttons"});}destroy(){this.$el.parentNode.removeChild(this.$el);}clearHtml(){return this.$el.innerHTML="",this}generateButtons(){let{buttons:e}=this.opts;Array.isArray(e)||(e=[e]),e.forEach((e=>{let t=e;"string"==typeof e&&x[e]&&(t=x[e]);let i=this.createButton(t);t.onClick&&this.attachEventToButton(i,t.onClick),this.$el.appendChild(i);}));}attachEventToButton(e,t){e.addEventListener("click",(()=>{t(this.dp);}));}createButton(e){let{content:t,className:i,tagName:s="button",attrs:a={}}=e;return n({tagName:s,innerHtml:`<span tabindex='-1'>${"function"==typeof t?t(this.dp):t}</span>`,className:u("air-datepicker-button",i),attrs:a})}render(){this.generateButtons();}}function E(e,t,i){return (t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return "symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:true,configurable:true,writable:true}):e[t]=i,e}class L{constructor(){let{opts:e,dp:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};E(this,"toggleTimepickerIsActive",(e=>{this.dp.timepickerIsActive=e;})),E(this,"onChangeSelectedDate",(e=>{let{date:t,updateTime:i=false}=e;t&&(this.setMinMaxTime(t),this.setCurrentTime(!!i&&t),this.addTimeToDate(t));})),E(this,"onChangeLastSelectedDate",(e=>{e&&(this.setTime(e),this.render());})),E(this,"onChangeInputRange",(e=>{let t=e.target;this[t.getAttribute("name")]=t.value,this.updateText(),this.dp.trigger(i.eventChangeTime,{hours:this.hours,minutes:this.minutes});})),E(this,"onMouseEnterLeave",(e=>{let t=e.target.getAttribute("name"),i=this.$minutesText;"hours"===t&&(i=this.$hoursText),i.classList.toggle("-focus-");})),E(this,"onFocus",(()=>{this.toggleTimepickerIsActive(true);})),E(this,"onBlur",(()=>{this.toggleTimepickerIsActive(false);})),this.opts=e,this.dp=t;let{timeFormat:s}=this.dp.locale;s&&(s.match($("h"))||s.match($("hh")))&&(this.ampm=true),this.init();}init(){this.setTime(this.dp.lastSelectedDate||this.dp.viewDate),this.createElement(),this.buildHtml(),this.defineDOM(),this.render(),this.bindDatepickerEvents(),this.bindDOMEvents();}bindDatepickerEvents(){this.dp.on(i.eventChangeSelectedDate,this.onChangeSelectedDate),this.dp.on(i.eventChangeLastSelectedDate,this.onChangeLastSelectedDate);}bindDOMEvents(){let e="input";navigator.userAgent.match(/trident/gi)&&(e="change"),D(this.$ranges,e,this.onChangeInputRange),D(this.$ranges,"mouseenter",this.onMouseEnterLeave),D(this.$ranges,"mouseleave",this.onMouseEnterLeave),D(this.$ranges,"focus",this.onFocus),D(this.$ranges,"mousedown",this.onFocus),D(this.$ranges,"blur",this.onBlur);}createElement(){this.$el=n({className:u("air-datepicker-time",{"-am-pm-":this.dp.ampm})});}destroy(){this.dp.off(i.eventChangeSelectedDate,this.onChangeSelectedDate),this.dp.off(i.eventChangeLastSelectedDate,this.onChangeLastSelectedDate),this.$el.parentNode.removeChild(this.$el);}buildHtml(){let{ampm:e,hours:t,displayHours:i,minutes:s,minHours:a,minMinutes:n,maxHours:r,maxMinutes:h,dayPeriod:o,opts:{hoursStep:l,minutesStep:c}}=this;this.$el.innerHTML=`<div class="air-datepicker-time--current"> <span class="air-datepicker-time--current-hours">${d(i)}</span> <span class="air-datepicker-time--current-colon">:</span> <span class="air-datepicker-time--current-minutes">${d(s)}</span> `+(e?`<span class='air-datepicker-time--current-ampm'>${o}</span>`:"")+'</div><div class="air-datepicker-time--sliders"> <div class="air-datepicker-time--row">'+` <input type="range" name="hours" value="${t}" min="${a}" max="${r}" step="${l}"/> </div> <div class="air-datepicker-time--row">`+` <input type="range" name="minutes" value="${s}" min="${n}" max="${h}" step="${c}"/> </div></div>`;}defineDOM(){let e=e=>a(e,this.$el);this.$ranges=this.$el.querySelectorAll('[type="range"]'),this.$hours=e('[name="hours"]'),this.$minutes=e('[name="minutes"]'),this.$hoursText=e(".air-datepicker-time--current-hours"),this.$minutesText=e(".air-datepicker-time--current-minutes"),this.$ampm=e(".air-datepicker-time--current-ampm");}setTime(e){this.setMinMaxTime(e),this.setCurrentTime(e);}addTimeToDate(e){e&&(e.setHours(this.hours),e.setMinutes(this.minutes));}setMinMaxTime(e){if(this.setMinMaxTimeFromOptions(),e){let{minDate:t,maxDate:i}=this.dp;t&&p(e,t)&&this.setMinTimeFromMinDate(t),i&&p(e,i)&&this.setMaxTimeFromMaxDate(i);}}setCurrentTime(e){let{hours:t,minutes:i}=e?o(e):this;this.hours=f(t,this.minHours,this.maxHours),this.minutes=f(i,this.minMinutes,this.maxMinutes);}setMinMaxTimeFromOptions(){let{minHours:e,minMinutes:t,maxHours:i,maxMinutes:s}=this.opts;this.minHours=f(e,0,23),this.minMinutes=f(t,0,59),this.maxHours=f(i,0,23),this.maxMinutes=f(s,0,59);}setMinTimeFromMinDate(e){let{lastSelectedDate:t}=this.dp;this.minHours=e.getHours(),t&&t.getHours()>e.getHours()?this.minMinutes=this.opts.minMinutes:this.minMinutes=e.getMinutes();}setMaxTimeFromMaxDate(e){let{lastSelectedDate:t}=this.dp;this.maxHours=e.getHours(),t&&t.getHours()<e.getHours()?this.maxMinutes=this.opts.maxMinutes:this.maxMinutes=e.getMinutes();}updateSliders(){r(this.$hours,{min:this.minHours,max:this.maxHours}).value=this.hours,r(this.$minutes,{min:this.minMinutes,max:this.maxMinutes}).value=this.minutes;}updateText(){this.$hoursText.innerHTML=d(this.displayHours),this.$minutesText.innerHTML=d(this.minutes),this.ampm&&(this.$ampm.innerHTML=this.dayPeriod);}set hours(e){this._hours=e;let{hours:t,dayPeriod:i}=l(e);this.displayHours=this.ampm?t:e,this.dayPeriod=i;}get hours(){return this._hours}render(){this.updateSliders(),this.updateText();}}function A(e,t,i){return (t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return "symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:true,configurable:true,writable:true}):e[t]=i,e}class O{constructor(e){let{dp:t,opts:i}=e;A(this,"pressedKeys",new Set),A(this,"hotKeys",new Map([[[["Control","ArrowRight"],["Control","ArrowUp"]],e=>e.month++],[[["Control","ArrowLeft"],["Control","ArrowDown"]],e=>e.month--],[[["Shift","ArrowRight"],["Shift","ArrowUp"]],e=>e.year++],[[["Shift","ArrowLeft"],["Shift","ArrowDown"]],e=>e.year--],[[["Alt","ArrowRight"],["Alt","ArrowUp"]],e=>e.year+=10],[[["Alt","ArrowLeft"],["Alt","ArrowDown"]],e=>e.year-=10],[["Control","Shift","ArrowUp"],(e,t)=>t.up()]])),A(this,"handleHotKey",(e=>{let t=this.hotKeys.get(e),i=o(this.getInitialFocusDate());t(i,this.dp);let{year:s,month:a,date:n}=i,r=h(new Date(s,a));r<n&&(n=r);let l=this.dp.getClampedDate(new Date(s,a,n));this.dp.setFocusDate(l,{viewDateTransition:true});})),A(this,"isHotKeyPressed",(()=>{let e=false,t=this.pressedKeys.size,i=e=>this.pressedKeys.has(e);for(let[s]of this.hotKeys){if(e)break;if(Array.isArray(s[0]))s.forEach((a=>{e||t!==a.length||(e=a.every(i)&&s);}));else {if(t!==s.length)continue;e=s.every(i)&&s;}}return e})),A(this,"isArrow",(e=>e>=37&&e<=40)),A(this,"onKeyDown",(e=>{if(!this.dp.visible&&!this.dp.treatAsInline)return;let{key:t,which:i}=e,{dp:s,dp:{focusDate:a},opts:n}=this;this.registerKey(t);let r=this.isHotKeyPressed();if(r)return e.preventDefault(),void this.handleHotKey(r);if(this.isArrow(i))return e.preventDefault(),void this.focusNextCell(t);if("Enter"===t){if(s.currentView!==n.minView)return void s.down();if(a){let e=s._checkIfDateIsSelected(a);return void(e?s._handleAlreadySelectedDates(e,a):s.selectDate(a))}}"Escape"===t&&this.dp.hide();})),A(this,"onKeyUp",(e=>{this.removeKey(e.key);})),this.dp=t,this.opts=i,this.init();}init(){this.bindKeyboardEvents();}bindKeyboardEvents(){let{$el:e}=this.dp;e.addEventListener("keydown",this.onKeyDown),e.addEventListener("keyup",this.onKeyUp);}destroy(){let{$el:e}=this.dp;e.removeEventListener("keydown",this.onKeyDown),e.removeEventListener("keyup",this.onKeyUp),this.hotKeys=null,this.pressedKeys=null;}getInitialFocusDate(){let{focusDate:e,currentView:t,selectedDates:s,parsedViewDate:{year:a,month:n}}=this.dp,r=e||s[s.length-1];if(!r)switch(t){case i.days:r=new Date(a,n,(new Date).getDate());break;case i.months:r=new Date(a,n,1);break;case i.years:r=new Date(a,0,1);}return r}focusNextCell(e){let t=this.getInitialFocusDate(),{currentView:s}=this.dp,{days:a,months:n,years:r}=i,h=o(t),l=h.year,d=h.month,c=h.date;switch(e){case "ArrowLeft":s===a&&(c-=1),s===n&&(d-=1),s===r&&(l-=1);break;case "ArrowUp":s===a&&(c-=7),s===n&&(d-=3),s===r&&(l-=4);break;case "ArrowRight":s===a&&(c+=1),s===n&&(d+=1),s===r&&(l+=1);break;case "ArrowDown":s===a&&(c+=7),s===n&&(d+=3),s===r&&(l+=4);}let u=this.dp.getClampedDate(new Date(l,d,c));this.dp.setFocusDate(u,{viewDateTransition:true});}registerKey(e){this.pressedKeys.add(e);}removeKey(e){this.pressedKeys.delete(e);}}let N={on(e,t){this.__events||(this.__events={}),this.__events[e]?this.__events[e].push(t):this.__events[e]=[t];},off(e,t){this.__events&&this.__events[e]&&(this.__events[e]=this.__events[e].filter((e=>e!==t)));},removeAllEvents(){this.__events={};},trigger(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),s=1;s<t;s++)i[s-1]=arguments[s];this.__events&&this.__events[e]&&this.__events[e].forEach((e=>{e(...i);}));}};function I(e,t,i){return (t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return "symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:true,configurable:true,writable:true}):e[t]=i,e}let P="",j="",B=false;class R{static buildGlobalContainer(e){B=true,P=n({className:e,id:e}),a("body").appendChild(P);}constructor(e,t){var r=this;if(I(this,"viewIndexes",[i.days,i.months,i.years]),I(this,"next",(()=>{let{year:e,month:t}=this.parsedViewDate;switch(this.currentView){case i.days:this.setViewDate(new Date(e,t+1,1));break;case i.months:this.setViewDate(new Date(e+1,t,1));break;case i.years:this.setViewDate(new Date(e+10,0,1));}})),I(this,"prev",(()=>{let{year:e,month:t}=this.parsedViewDate;switch(this.currentView){case i.days:this.setViewDate(new Date(e,t-1,1));break;case i.months:this.setViewDate(new Date(e-1,t,1));break;case i.years:this.setViewDate(new Date(e-10,0,1));}})),I(this,"_finishHide",(()=>{this.hideAnimation=false,this._destroyComponents(),this.$container.removeChild(this.$datepicker);})),I(this,"setPosition",(function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if("function"==typeof(e=e||r.opts.position))return void(r.customHide=e({$datepicker:r.$datepicker,$target:r.$el,$pointer:r.$pointer,isViewChange:t,done:r._finishHide}));let i,s,{isMobile:a}=r.opts,n=r.$el.getBoundingClientRect(),h=r.$el.getBoundingClientRect(),o=r.$datepicker.offsetParent,l=r.$el.offsetParent,d=r.$datepicker.getBoundingClientRect(),c=e.split(" "),u=window.scrollY,p=window.scrollX,m=r.opts.offset,v=c[0],g=c[1];if(a)r.$datepicker.style.cssText="left: 50%; top: 50%";else {if(o===l&&o!==document.body&&(h={top:r.$el.offsetTop,left:r.$el.offsetLeft,width:n.width,height:r.$el.offsetHeight},u=0,p=0),o!==l&&o!==document.body){let e=o.getBoundingClientRect();h={top:n.top-e.top,left:n.left-e.left,width:n.width,height:n.height},u=0,p=0;}switch(v){case "top":i=h.top-d.height-m;break;case "right":s=h.left+h.width+m;break;case "bottom":i=h.top+h.height+m;break;case "left":s=h.left-d.width-m;}switch(g){case "top":i=h.top;break;case "right":s=h.left+h.width-d.width;break;case "bottom":i=h.top+h.height-d.height;break;case "left":s=h.left;break;case "center":/left|right/.test(v)?i=h.top+h.height/2-d.height/2:s=h.left+h.width/2-d.width/2;}r.$datepicker.style.cssText=`left: ${s+p}px; top: ${i+u}px`;}})),I(this,"_setInputValue",(()=>{let{opts:e,$altField:t,locale:{dateFormat:i}}=this,{altFieldDateFormat:s,altField:a}=e;a&&t&&(t.value=this._getInputValue(s)),this.$el.value=this._getInputValue(i),this.$el.dispatchEvent(new Event("change"));})),I(this,"_getInputValue",(e=>{let{selectedDates:t,opts:i}=this,{multipleDates:s,multipleDatesSeparator:a}=i;if(!t.length)return "";let n="function"==typeof e,r=n?e(s?t:t[0]):t.map((t=>this.formatDate(t,e)));return r=n?r:r.join(a),r})),I(this,"_checkIfDateIsSelected",(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:i.days,s=false;return r.selectedDates.some((i=>{let a=p(e,i,t);return s=a&&i,a})),s})),I(this,"_scheduleCallAfterTransition",(e=>{this._cancelScheduledCall(),e&&e(false),this._onTransitionEnd=()=>{e&&e(true);},this.$datepicker.addEventListener("transitionend",this._onTransitionEnd,{once:true});})),I(this,"_cancelScheduledCall",(()=>{this.$datepicker.removeEventListener("transitionend",this._onTransitionEnd);})),I(this,"setViewDate",(e=>{if(!((e=b(e))instanceof Date))return;if(p(e,this.viewDate))return;let t=this.viewDate;this.viewDate=e;let{onChangeViewDate:s}=this.opts;if(s){let{month:e,year:t}=this.parsedViewDate;s({month:e,year:t,decade:this.curDecade});}this.trigger(i.eventChangeViewDate,e,t);})),I(this,"setFocusDate",(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};(!e||(e=b(e))instanceof Date)&&(r.focusDate=e,r.trigger(i.eventChangeFocusDate,e,t));})),I(this,"setCurrentView",(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(r.viewIndexes.includes(e)){if(r.currentView=e,r.elIsInput&&r.visible&&r.setPosition(void 0,true),r.trigger(i.eventChangeCurrentView,e),!r.views[e]){let t=r.views[e]=new T({dp:r,opts:r.opts,type:e});r.shouldUpdateDOM&&r.$content.appendChild(t.$el);}r.opts.onChangeView&&!t.silent&&r.opts.onChangeView(e);}})),I(this,"_updateLastSelectedDate",(e=>{this.lastSelectedDate=e,this.trigger(i.eventChangeLastSelectedDate,e);})),I(this,"destroy",(()=>{if(this.isDestroyed)return;let{showEvent:e,isMobile:t}=this.opts,i=this.$datepicker.parentNode;i&&i.removeChild(this.$datepicker),this.$el.removeEventListener(e,this._onFocus),this.$el.removeEventListener("blur",this._onBlur),window.removeEventListener("resize",this._onResize),t&&this._removeMobileAttributes(),this.keyboardNav&&this.keyboardNav.destroy(),this.views=null,this.nav=null,this.$datepicker=null,this.opts={},this.$customContainer=null,this.viewDate=null,this.focusDate=null,this.selectedDates=[],this.rangeDateFrom=null,this.rangeDateTo=null,this.isDestroyed=true;})),I(this,"update",(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},s=w({},r.opts),{silent:a}=t;w(r.opts,e);let{timepicker:n,buttons:h,range:o,selectedDates:l,isMobile:d}=r.opts,c=r.visible||r.treatAsInline;r._createMinMaxDates(),r._limitViewDateByMaxMinDates(),r._handleLocale(),l&&(r.selectedDates=[],r.selectDate(l,{silent:a})),e.view&&r.setCurrentView(e.view,{silent:a}),r._setInputValue(),s.range&&!o?(r.rangeDateTo=false,r.rangeDateFrom=false):!s.range&&o&&r.selectedDates.length&&(r.rangeDateFrom=r.selectedDates[0],r.rangeDateTo=r.selectedDates[1]),s.timepicker&&!n?(c&&r.timepicker.destroy(),r.timepicker=false,r.$timepicker.parentNode.removeChild(r.$timepicker)):!s.timepicker&&n&&r._addTimepicker(),!s.buttons&&h?r._addButtons():s.buttons&&!h?(r.buttons.destroy(),r.$buttons.parentNode.removeChild(r.$buttons)):c&&s.buttons&&h&&r.buttons.clearHtml().render(),!s.isMobile&&d?(r.treatAsInline||j||r._createMobileOverlay(),r._addMobileAttributes(),r.visible&&r._showMobileOverlay()):s.isMobile&&!d&&(r._removeMobileAttributes(),r.visible&&(j.classList.remove("-active-"),"function"!=typeof r.opts.position&&r.setPosition())),c&&(r.nav.update(),r.views[r.currentView].render(),r.currentView===i.days&&r.views[r.currentView].renderDayNames());})),I(this,"disableDate",((e,t)=>{(Array.isArray(e)?e:[e]).forEach((e=>{let i=b(e);if(!i)return;let s=t?"delete":"add";this.disabledDates[s](this.formatDate(i,"yyyy-MM-dd"));let a=this.getCell(i,this.currentViewSingular);a&&a.adpCell.render();}),[]);})),I(this,"enableDate",(e=>{this.disableDate(e,true);})),I(this,"isDateDisabled",(e=>{let t=b(e);return this.disabledDates.has(this.formatDate(t,"yyyy-MM-dd"))})),I(this,"isOtherMonth",(e=>{let{month:t}=o(e);return t!==this.parsedViewDate.month})),I(this,"isOtherYear",(e=>{let{year:t}=o(e);return t!==this.parsedViewDate.year})),I(this,"isOtherDecade",(e=>{let{year:t}=o(e),[i,s]=c(this.viewDate);return t<i||t>s})),I(this,"_onChangeSelectedDate",(e=>{let{silent:t}=e;setTimeout((()=>{this._setInputValue(),this.opts.onSelect&&!t&&this._triggerOnSelect();}));})),I(this,"_onChangeFocusedDate",(function(e){let{viewDateTransition:t}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e)return;let i=false;t&&(i=r.isOtherMonth(e)||r.isOtherYear(e)||r.isOtherDecade(e)),i&&r.setViewDate(e),r.opts.onFocus&&r.opts.onFocus({datepicker:r,date:e});})),I(this,"_onChangeTime",(e=>{let{hours:t,minutes:i}=e,s=new Date,{lastSelectedDate:a,opts:{onSelect:n}}=this,r=a;a||(r=s);let h=this.getCell(r,this.currentViewSingular),o=h&&h.adpCell;o&&o.isDisabled||(r.setHours(t),r.setMinutes(i),a?(this._setInputValue(),n&&this._triggerOnSelect()):this.selectDate(r));})),I(this,"_onFocus",(e=>{this.visible||this.show();})),I(this,"_onBlur",(e=>{this.inFocus||!this.visible||this.opts.isMobile||this.hide();})),I(this,"_onMouseDown",(e=>{this.inFocus=true;})),I(this,"_onMouseUp",(e=>{this.inFocus=false,this.$el.focus();})),I(this,"_onResize",(()=>{this.visible&&"function"!=typeof this.opts.position&&this.setPosition();})),I(this,"_onClickOverlay",(()=>{this.visible&&this.hide();})),I(this,"getViewDates",(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i.days;return T.getDatesFunction(e)(r)})),I(this,"isWeekend",(e=>this.opts.weekends.includes(e))),I(this,"getClampedDate",(e=>{let{minDate:t,maxDate:i}=this,s=e;return i&&m(e,i)?s=i:t&&v(e,t)&&(s=t),s})),this.$el=a(e),!this.$el)return;this.$datepicker=n({className:"air-datepicker"}),this.opts=w({},s,t),this.$customContainer=!!this.opts.container&&a(this.opts.container),this.$altField=a(this.opts.altField||false);let{view:h,startDate:l}=this.opts;l||(this.opts.startDate=new Date),"INPUT"===this.$el.nodeName&&(this.elIsInput=true),this.inited=false,this.visible=false,this.viewDate=b(this.opts.startDate),this.focusDate=false,this.initialReadonly=this.$el.getAttribute("readonly"),this.customHide=false,this.currentView=h,this.selectedDates=[],this.disabledDates=new Set,this.isDestroyed=false,this.views={},this.keys=[],this.rangeDateFrom="",this.rangeDateTo="",this.timepickerIsActive=false,this.treatAsInline=this.opts.inline||!this.elIsInput,this.init();}init(){let{opts:e,treatAsInline:t,opts:{inline:i,isMobile:s,selectedDates:n,keyboardNav:r,onlyTimepicker:h}}=this,o=a("body");(!B||B&&P&&!o.contains(P))&&!i&&this.elIsInput&&!this.$customContainer&&R.buildGlobalContainer(R.defaultGlobalContainerId),!s||j||t||this._createMobileOverlay(),this._handleLocale(),this._bindSubEvents(),this._createMinMaxDates(),this._limitViewDateByMaxMinDates(),this.elIsInput&&(i||this._bindEvents(),r&&!h&&(this.keyboardNav=new O({dp:this,opts:e}))),n&&this.selectDate(n,{silent:true}),this.opts.visible&&!t&&this.show(),s&&!t&&this.$el.setAttribute("readonly",true),t&&this._createComponents();}_createMobileOverlay(){j=n({className:"air-datepicker-overlay"}),P.appendChild(j);}_createComponents(){let{opts:e,treatAsInline:t,opts:{inline:i,buttons:s,timepicker:a,position:n,classes:r,onlyTimepicker:h,isMobile:o}}=this;this._buildBaseHtml(),this.elIsInput&&(i||this._setPositionClasses(n)),!i&&this.elIsInput||this.$datepicker.classList.add("-inline-"),r&&this.$datepicker.classList.add(...r.split(" ")),h&&this.$datepicker.classList.add("-only-timepicker-"),o&&!t&&this._addMobileAttributes(),this.views[this.currentView]=new T({dp:this,type:this.currentView,opts:e}),this.nav=new V({dp:this,opts:e}),a&&this._addTimepicker(),s&&this._addButtons(),this.$content.appendChild(this.views[this.currentView].$el),this.$nav.appendChild(this.nav.$el);}_destroyComponents(){for(let e in this.views)this.views[e].destroy();this.views={},this.nav.destroy(),this.timepicker&&this.timepicker.destroy();}_addMobileAttributes(){j.addEventListener("click",this._onClickOverlay),this.$datepicker.classList.add("-is-mobile-"),this.$el.setAttribute("readonly",true);}_removeMobileAttributes(){j.removeEventListener("click",this._onClickOverlay),this.$datepicker.classList.remove("-is-mobile-"),this.initialReadonly||""===this.initialReadonly||this.$el.removeAttribute("readonly");}_createMinMaxDates(){let{minDate:e,maxDate:t}=this.opts;this.minDate=!!e&&b(e),this.maxDate=!!t&&b(t);}_addTimepicker(){this.$timepicker=n({className:"air-datepicker--time"}),this.$datepicker.appendChild(this.$timepicker),this.timepicker=new L({dp:this,opts:this.opts}),this.$timepicker.appendChild(this.timepicker.$el);}_addButtons(){this.$buttons=n({className:"air-datepicker--buttons"}),this.$datepicker.appendChild(this.$buttons),this.buttons=new H({dp:this,opts:this.opts}),this.$buttons.appendChild(this.buttons.$el);}_bindSubEvents(){this.on(i.eventChangeSelectedDate,this._onChangeSelectedDate),this.on(i.eventChangeFocusDate,this._onChangeFocusedDate),this.on(i.eventChangeTime,this._onChangeTime);}_buildBaseHtml(){let{inline:e}=this.opts;var t,i;this.elIsInput?e?(t=this.$datepicker,(i=this.$el).parentNode.insertBefore(t,i.nextSibling)):this.$container.appendChild(this.$datepicker):this.$el.appendChild(this.$datepicker),this.$datepicker.innerHTML='<i class="air-datepicker--pointer"></i><div class="air-datepicker--navigation"></div><div class="air-datepicker--content"></div>',this.$content=a(".air-datepicker--content",this.$datepicker),this.$pointer=a(".air-datepicker--pointer",this.$datepicker),this.$nav=a(".air-datepicker--navigation",this.$datepicker);}_handleLocale(){let{locale:e,dateFormat:t,firstDay:i,timepicker:s,onlyTimepicker:a,timeFormat:n,dateTimeSeparator:r}=this.opts;var h;this.locale=(h=e,JSON.parse(JSON.stringify(h))),t&&(this.locale.dateFormat=t),void 0!==n&&""!==n&&(this.locale.timeFormat=n);let{timeFormat:o}=this.locale;if(""!==i&&(this.locale.firstDay=i),s&&"function"!=typeof t){let e=o?r:"";this.locale.dateFormat=[this.locale.dateFormat,o||""].join(e);}a&&"function"!=typeof t&&(this.locale.dateFormat=this.locale.timeFormat);}_setPositionClasses(e){if("function"==typeof e)return void this.$datepicker.classList.add("-custom-position-");let t=(e=e.split(" "))[0],i=`air-datepicker -${t}-${e[1]}- -from-${t}-`;this.$datepicker.classList.add(...i.split(" "));}_bindEvents(){this.$el.addEventListener(this.opts.showEvent,this._onFocus),this.$el.addEventListener("blur",this._onBlur),this.$datepicker.addEventListener("mousedown",this._onMouseDown),this.$datepicker.addEventListener("mouseup",this._onMouseUp),window.addEventListener("resize",this._onResize);}_limitViewDateByMaxMinDates(){let{viewDate:e,minDate:t,maxDate:i}=this;i&&m(e,i)&&this.setViewDate(i),t&&v(e,t)&&this.setViewDate(t);}formatDate(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.viewDate,t=arguments.length>1?arguments[1]:void 0;if(e=b(e),!(e instanceof Date))return;let i=t,s=this.locale,a=o(e),n=a.dayPeriod,r=c(e),h=R.replacer,l={T:e.getTime(),m:a.minutes,mm:a.fullMinutes,h:a.hours12,hh:a.fullHours12,H:a.hours,HH:a.fullHours,aa:n,AA:n.toUpperCase(),E:s.daysShort[a.day],EEEE:s.days[a.day],d:a.date,dd:a.fullDate,M:a.month+1,MM:a.fullMonth,MMM:s.monthsShort[a.month],MMMM:s.months[a.month],yy:a.year.toString().slice(-2),yyyy:a.year,yyyy1:r[0],yyyy2:r[1]};for(let[e,t]of Object.entries(l))i=h(i,$(e),t);return i}down(e){this._handleUpDownActions(e,"down");}up(e){this._handleUpDownActions(e,"up");}selectDate(e){let t,s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{currentView:a,parsedViewDate:n,selectedDates:r}=this,{updateTime:h,silent:o}=s,{moveToOtherMonthsOnSelect:l,moveToOtherYearsOnSelect:d,multipleDates:c,range:u,autoClose:p,onBeforeSelect:v}=this.opts,g=r.length;if(Array.isArray(e))return e.forEach((e=>{this.selectDate(e,s);})),new Promise((e=>{setTimeout(e);}));if((e=b(e))instanceof Date){if(v&&!o&&!v({date:e,datepicker:this}))return Promise.resolve();if(a===i.days&&e.getMonth()!==n.month&&l&&(t=new Date(e.getFullYear(),e.getMonth(),1)),a===i.years&&e.getFullYear()!==n.year&&d&&(t=new Date(e.getFullYear(),0,1)),t&&this.setViewDate(t),c&&!u){if(g===c)return;this._checkIfDateIsSelected(e)||r.push(e);}else if(u)switch(g){case 1:r.push(e),this.rangeDateTo||(this.rangeDateTo=e),m(this.rangeDateFrom,this.rangeDateTo)&&(this.rangeDateTo=this.rangeDateFrom,this.rangeDateFrom=e),this.selectedDates=[this.rangeDateFrom,this.rangeDateTo];break;case 2:this.selectedDates=[e],this.rangeDateFrom=e,this.rangeDateTo="";break;default:this.selectedDates=[e],this.rangeDateFrom=e;}else this.selectedDates=[e];return this.trigger(i.eventChangeSelectedDate,{action:i.actionSelectDate,silent:null==s?void 0:s.silent,date:e,updateTime:h}),this._updateLastSelectedDate(e),p&&!this.timepickerIsActive&&this.visible&&(c||u?u&&1===g&&this.hide():this.hide()),new Promise((e=>{setTimeout(e);}))}}unselectDate(e){let t=this.selectedDates,s=this;if((e=b(e))instanceof Date)return t.some(((a,n)=>{if(p(a,e))return t.splice(n,1),s.selectedDates.length?(s.rangeDateTo="",s.rangeDateFrom=t[0],s._updateLastSelectedDate(s.selectedDates[s.selectedDates.length-1])):(s.rangeDateFrom="",s.rangeDateTo="",s._updateLastSelectedDate(false)),this.trigger(i.eventChangeSelectedDate,{action:i.actionUnselectDate,date:e}),true}))}replaceDate(e,t){let s=this.selectedDates.find((t=>p(t,e,this.currentView))),a=this.selectedDates.indexOf(s);a<0||p(this.selectedDates[a],t,this.currentView)||(this.selectedDates[a]=t,this.trigger(i.eventChangeSelectedDate,{action:i.actionSelectDate,date:t,updateTime:true}),this._updateLastSelectedDate(t));}clear(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.selectedDates=[],this.rangeDateFrom=false,this.rangeDateTo=false,this.lastSelectedDate=false,this.trigger(i.eventChangeSelectedDate,{action:i.actionUnselectDate,silent:e.silent}),new Promise((e=>{setTimeout(e);}))}show(){let{onShow:e,isMobile:t}=this.opts;this._cancelScheduledCall(),this.visible||this.hideAnimation||this._createComponents(),this.setPosition(this.opts.position),this.$datepicker.classList.add("-active-"),this.visible=true,e&&this._scheduleCallAfterTransition(e),t&&this._showMobileOverlay();}hide(){let{onHide:e,isMobile:t}=this.opts,i=this._hasTransition();this.visible=false,this.hideAnimation=true,this.$datepicker.classList.remove("-active-"),this.customHide&&this.customHide(),this.elIsInput&&this.$el.blur(),this._scheduleCallAfterTransition((t=>{!this.customHide&&(t&&i||!t&&!i)&&this._finishHide(),e&&e(t);})),t&&j.classList.remove("-active-");}_triggerOnSelect(){let e=[],t=[],{selectedDates:i,locale:s,opts:{onSelect:a,multipleDates:n,range:r}}=this,h=n||r,o="function"==typeof s.dateFormat;i.length&&(e=i.map(g),t=o?n?s.dateFormat(e):e.map((e=>s.dateFormat(e))):e.map((e=>this.formatDate(e,s.dateFormat)))),a({date:h?e:e[0],formattedDate:h?t:t[0],datepicker:this});}_handleAlreadySelectedDates(e,t){let{selectedDates:i,rangeDateFrom:s,rangeDateTo:a}=this,{range:n,toggleSelected:r}=this.opts,h=i.length,o="function"==typeof r?r({datepicker:this,date:t}):r,l=Boolean(n&&1===h&&e),d=l?g(t):t;n&&!o&&(2!==h&&this.selectDate(d),2===h&&p(s,a))||(o?this.unselectDate(d):this._updateLastSelectedDate(l?d:e));}_handleUpDownActions(e,t){if(!((e=b(e||this.focusDate||this.viewDate))instanceof Date))return;let i="up"===t?this.viewIndex+1:this.viewIndex-1;i>2&&(i=2),i<0&&(i=0),this.setViewDate(new Date(e.getFullYear(),e.getMonth(),1)),this.setCurrentView(this.viewIndexes[i]);}getCell(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:i.day;if(!((e=b(e))instanceof Date))return;let{year:s,month:a,date:n}=o(e),r=`[data-year="${s}"]`,h=`[data-month="${a}"]`,l={[i.day]:`${r}${h}[data-date="${n}"]`,[i.month]:`${r}${h}`,[i.year]:`${r}`};return this.views[this.currentView]?this.views[this.currentView].$el.querySelector(l[t]):void 0}_showMobileOverlay(){j.classList.add("-active-");}_hasTransition(){return window.getComputedStyle(this.$datepicker).getPropertyValue("transition-duration").split(", ").reduce(((e,t)=>parseFloat(t)+e),0)>0}get shouldUpdateDOM(){return this.visible||this.treatAsInline}get parsedViewDate(){return o(this.viewDate)}get currentViewSingular(){return this.currentView.slice(0,-1)}get curDecade(){return c(this.viewDate)}get viewIndex(){return this.viewIndexes.indexOf(this.currentView)}get isFinalView(){return this.currentView===i.years}get hasSelectedDates(){return this.selectedDates.length>0}get isMinViewReached(){return this.currentView===this.opts.minView||this.currentView===i.days}get $container(){return this.$customContainer||P}static replacer(e,t,i){return e.replace(t,(function(e,t,s,a){return t+i+a}))}}var K;return I(R,"defaults",s),I(R,"version","3.6.0"),I(R,"defaultGlobalContainerId","air-datepicker-global-container"),K=R.prototype,Object.assign(K,N),t.default}()}));
101
- } (airDatepicker$1));
102
- return airDatepicker$1.exports;
103
- }
104
-
105
- var airDatepickerExports = requireAirDatepicker();
106
- var AirDatepicker = /*@__PURE__*/getDefaultExportFromCjs(airDatepickerExports);
107
-
108
90
  /** Checks if value is string */
109
91
  function isString(str) {
110
92
  return typeof str === 'string' || str instanceof String;
@@ -3703,6 +3685,117 @@ try {
3703
3685
  globalThis.IMask = IMask;
3704
3686
  } catch {}
3705
3687
 
3688
+ const nativeValueDescriptor = Object.getOwnPropertyDescriptor(HTMLInputElement.prototype, 'value');
3689
+ // iMask adapter that bypasses the instance-level `input.value` override (which returns ISO strings)
3690
+ // so iMask always works with locale-formatted display text.
3691
+ class NativeInputMaskElement extends HTMLInputMaskElement {
3692
+ constructor() {
3693
+ super(...arguments);
3694
+ this.allowEvents = false;
3695
+ this._inputEventSuppressor = (e) => {
3696
+ if (this.allowEvents)
3697
+ return;
3698
+ if (!e.isTrusted)
3699
+ e.stopImmediatePropagation();
3700
+ };
3701
+ }
3702
+ get value() {
3703
+ return nativeValueDescriptor.get.call(this.input);
3704
+ }
3705
+ set value(val) {
3706
+ nativeValueDescriptor.set.call(this.input, val);
3707
+ }
3708
+ bindEvents(handlers) {
3709
+ this.input.addEventListener('input', this._inputEventSuppressor, true);
3710
+ super.bindEvents(handlers);
3711
+ }
3712
+ unbindEvents() {
3713
+ this.input.removeEventListener('input', this._inputEventSuppressor, true);
3714
+ super.unbindEvents();
3715
+ }
3716
+ }
3717
+ function getNativeValue(input) {
3718
+ return nativeValueDescriptor.get.call(input);
3719
+ }
3720
+
3721
+ var airDatepicker$1 = {exports: {}};
3722
+
3723
+ var airDatepicker = airDatepicker$1.exports;
3724
+
3725
+ var hasRequiredAirDatepicker;
3726
+
3727
+ function requireAirDatepicker () {
3728
+ if (hasRequiredAirDatepicker) return airDatepicker$1.exports;
3729
+ hasRequiredAirDatepicker = 1;
3730
+ (function (module, exports) {
3731
+ !function(e,t){module.exports=t();}(airDatepicker,(function(){return function(){var e={d:function(t,i){for(var s in i)e.o(i,s)&&!e.o(t,s)&&Object.defineProperty(t,s,{enumerable:true,get:i[s]});},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}},t={};e.d(t,{default:function(){return R}});var i={days:"days",months:"months",years:"years",day:"day",month:"month",year:"year",eventChangeViewDate:"changeViewDate",eventChangeCurrentView:"changeCurrentView",eventChangeFocusDate:"changeFocusDate",eventChangeSelectedDate:"changeSelectedDate",eventChangeTime:"changeTime",eventChangeLastSelectedDate:"changeLastSelectedDate",actionSelectDate:"selectDate",actionUnselectDate:"unselectDate",cssClassWeekend:"-weekend-"},s={classes:"",inline:false,locale:{days:["Воскресенье","Понедельник","Вторник","Среда","Четверг","Пятница","Суббота"],daysShort:["Вос","Пон","Вто","Сре","Чет","Пят","Суб"],daysMin:["Вс","Пн","Вт","Ср","Чт","Пт","Сб"],months:["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"],monthsShort:["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек"],today:"Сегодня",clear:"Очистить",dateFormat:"dd.MM.yyyy",timeFormat:"HH:mm",firstDay:1},startDate:new Date,firstDay:"",weekends:[6,0],dateFormat:"",altField:"",altFieldDateFormat:"T",toggleSelected:true,keyboardNav:true,selectedDates:false,container:"",isMobile:false,visible:false,position:"bottom left",offset:12,view:i.days,minView:i.days,showOtherMonths:true,selectOtherMonths:true,moveToOtherMonthsOnSelect:true,showOtherYears:true,selectOtherYears:true,moveToOtherYearsOnSelect:true,minDate:"",maxDate:"",disableNavWhenOutOfRange:true,multipleDates:false,multipleDatesSeparator:", ",range:false,dynamicRange:true,buttons:false,monthsField:"monthsShort",showEvent:"focus",autoClose:false,fixedHeight:false,prevHtml:'<svg><path d="M 17,12 l -5,5 l 5,5"></path></svg>',nextHtml:'<svg><path d="M 14,12 l 5,5 l -5,5"></path></svg>',navTitles:{days:"MMMM, <i>yyyy</i>",months:"yyyy",years:"yyyy1 - yyyy2"},timepicker:false,onlyTimepicker:false,dateTimeSeparator:" ",timeFormat:"",minHours:0,maxHours:24,minMinutes:0,maxMinutes:59,hoursStep:1,minutesStep:1,onSelect:false,onChangeViewDate:false,onChangeView:false,onRenderCell:false,onShow:false,onHide:false,onClickDayName:false};function a(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:document;return "string"==typeof e?t.querySelector(e):e}function n(){let{tagName:e="div",className:t="",innerHtml:i="",id:s="",attrs:a={}}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=document.createElement(e);return t&&n.classList.add(...t.split(" ")),s&&(n.id=s),i&&(n.innerHTML=i),a&&r(n,a),n}function r(e,t){for(let[i,s]of Object.entries(t)) void 0!==s&&e.setAttribute(i,s);return e}function h(e){return new Date(e.getFullYear(),e.getMonth()+1,0).getDate()}function o(e){let t=e.getHours(),{hours:i,dayPeriod:s}=l(t);return {year:e.getFullYear(),month:e.getMonth(),fullMonth:e.getMonth()+1<10?"0"+(e.getMonth()+1):e.getMonth()+1,date:e.getDate(),fullDate:e.getDate()<10?"0"+e.getDate():e.getDate(),day:e.getDay(),hours:t,fullHours:d(t),hours12:i,dayPeriod:s,fullHours12:d(i),minutes:e.getMinutes(),fullMinutes:e.getMinutes()<10?"0"+e.getMinutes():e.getMinutes()}}function l(e){return {dayPeriod:e>11?"pm":"am",hours:e%12==0?12:e%12}}function d(e){return e<10?"0"+e:e}function c(e){let t=10*Math.floor(e.getFullYear()/10);return [t,t+9]}function u(){let e=[];for(var t=arguments.length,i=new Array(t),s=0;s<t;s++)i[s]=arguments[s];return i.forEach((t=>{if("object"==typeof t)for(let i in t)t[i]&&e.push(i);else t&&e.push(t);})),e.join(" ")}function p(e,t){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i.days;if(!e||!t)return false;let a=o(e),n=o(t);return {[i.days]:a.date===n.date&&a.month===n.month&&a.year===n.year,[i.months]:a.month===n.month&&a.year===n.year,[i.years]:a.year===n.year}[s]}function m(e,t,i){let s=g(e,false).getTime(),a=g(t,false).getTime();return i?s>=a:s>a}function v(e,t){return !m(e,t,true)}function g(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=new Date(e.getTime());return "boolean"!=typeof t||t||function(e){e.setHours(0,0,0,0);}(i),i}function D(e,t,i){e.length?e.forEach((e=>{e.addEventListener(t,i);})):e.addEventListener(t,i);}function y(e,t){return !(!e||e===document||e instanceof DocumentFragment)&&(e.matches(t)?e:y(e.parentNode,t))}function f(e,t,i){return e>i?i:e<t?t:e}function w(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),s=1;s<t;s++)i[s-1]=arguments[s];return i.filter((e=>e)).forEach((t=>{for(let[i,s]of Object.entries(t))if(void 0!==s&&"[object Object]"===s.toString()){let t=void 0!==e[i]?e[i].toString():void 0,a=s.toString(),n=Array.isArray(s)?[]:{};e[i]=e[i]?t!==a?n:e[i]:n,w(e[i],s);}else e[i]=s;})),e}function b(e){let t=e;return e instanceof Date||("string"==typeof e&&/^\d{4}-\d{2}-\d{2}$/.test(e)&&(e+="T00:00:00"),t=new Date(e)),isNaN(t.getTime())&&(console.log(`Unable to convert value "${e}" to Date object`),t=false),t}function $(e){let t="\\s|\\.|-|/|\\\\|,|\\$|\\!|\\?|:|;";return new RegExp("(^|>|"+t+")("+e+")($|<|"+t+")","g")}function k(e,t,i){return (t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return "symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:true,configurable:true,writable:true}):e[t]=i,e}class C{constructor(){let{type:e,date:t,dp:i,opts:s,body:a}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};k(this,"focus",(()=>{this.$cell.classList.add("-focus-"),this.focused=true;})),k(this,"removeFocus",(()=>{this.$cell.classList.remove("-focus-"),this.focused=false;})),k(this,"select",(()=>{this.$cell.classList.add("-selected-"),this.selected=true;})),k(this,"removeSelect",(()=>{this.$cell.classList.remove("-selected-","-range-from-","-range-to-"),this.selected=false;})),k(this,"onChangeSelectedDate",(()=>{this.isDisabled||(this._handleSelectedStatus(),this.opts.range&&this._handleRangeStatus());})),k(this,"onChangeFocusDate",(e=>{if(!e)return void(this.focused&&this.removeFocus());let t=p(e,this.date,this.type);t?this.focus():!t&&this.focused&&this.removeFocus(),this.opts.range&&this._handleRangeStatus();})),k(this,"render",(()=>(this.$cell.innerHTML=this._getHtml(),this._handleClasses(),this.$cell))),this.type=e,this.singleType=this.type.slice(0,-1),this.date=t,this.dp=i,this.opts=s,this.body=a,this.customData=false,this.init();}init(){var e,t;let{onRenderCell:i}=this.opts;i&&(this.customData=i({date:this.date,cellType:this.singleType,datepicker:this.dp})),this._createElement(),this._bindDatepickerEvents(),null!==(e=this.customData)&&void 0!==e&&e.disabled?this.dp.disableDate(this.date):false===(null===(t=this.customData)||void 0===t?void 0:t.disabled)&&this.dp.enableDate(this.date);}_bindDatepickerEvents(){this.dp.on(i.eventChangeSelectedDate,this.onChangeSelectedDate),this.dp.on(i.eventChangeFocusDate,this.onChangeFocusDate);}unbindDatepickerEvents(){this.dp.off(i.eventChangeSelectedDate,this.onChangeSelectedDate),this.dp.off(i.eventChangeFocusDate,this.onChangeFocusDate);}_createElement(){var e;let{year:t,month:i,fullMonth:s,date:a,fullDate:r}=o(this.date),h=(null===(e=this.customData)||void 0===e?void 0:e.attrs)||{};this.$cell=n({attrs:{"data-year":t,"data-month":i,"data-date":a,"data-iso-date":`${t}-${s}-${r}`,...h}}),this.$cell.adpCell=this;}_getClassName(){var e;let t=new Date,{selectOtherMonths:s,selectOtherYears:a}=this.opts,{minDate:n,maxDate:r,isDateDisabled:h}=this.dp,{day:l}=o(this.date),d=this._isOutOfMinMaxRange(),c=h(this.date),m=u("air-datepicker-cell",`-${this.singleType}-`,{"-current-":p(t,this.date,this.type),"-min-date-":n&&p(n,this.date,this.type),"-max-date-":r&&p(r,this.date,this.type)}),v="";switch(this.type){case i.days:v=u({"-weekend-":this.dp.isWeekend(l),"-other-month-":this.isOtherMonth,"-disabled-":this.isOtherMonth&&!s||d||c});break;case i.months:v=u({"-disabled-":d});break;case i.years:v=u({"-other-decade-":this.isOtherDecade,"-disabled-":d||this.isOtherDecade&&!a});}return u(m,v,null===(e=this.customData)||void 0===e?void 0:e.classes).split(" ")}_getHtml(){var e;let{year:t,month:s,date:a}=o(this.date),{showOtherMonths:n,showOtherYears:r}=this.opts;if(null!==(e=this.customData)&&void 0!==e&&e.html)return this.customData.html;switch(this.type){case i.days:return !n&&this.isOtherMonth?"":a;case i.months:return this.dp.locale[this.opts.monthsField][s];case i.years:return !r&&this.isOtherDecade?"":t}}_isOutOfMinMaxRange(){let{minDate:e,maxDate:t}=this.dp,{type:s,date:a}=this,{month:n,year:r,date:h}=o(a),l=s===i.days,d=s===i.years,c=!!e&&new Date(r,d?e.getMonth():n,l?h:e.getDate()),u=!!t&&new Date(r,d?t.getMonth():n,l?h:t.getDate());return e&&t?v(c,e)||m(u,t):e?v(c,e):t?m(u,t):void 0}destroy(){this.unbindDatepickerEvents();}_handleRangeStatus(){const{selectedDates:e,focusDate:t,rangeDateTo:i,rangeDateFrom:s}=this.dp,a=e.length;if(this.$cell.classList.remove("-range-from-","-range-to-","-in-range-"),!a)return;let n=s,r=i;if(1===a&&t){const i=m(t,e[0]);n=i?e[0]:t,r=i?t:e[0];}let h=u({"-in-range-":n&&r&&(o=this.date,l=n,d=r,m(o,l)&&v(o,d)),"-range-from-":n&&p(this.date,n,this.type),"-range-to-":r&&p(this.date,r,this.type)});var o,l,d;h&&this.$cell.classList.add(...h.split(" "));}_handleSelectedStatus(){let e=this.dp._checkIfDateIsSelected(this.date,this.type);e?this.select():!e&&this.selected&&this.removeSelect();}_handleInitialFocusStatus(){p(this.dp.focusDate,this.date,this.type)&&this.focus();}_handleClasses(){this.$cell.setAttribute("class",""),this._handleInitialFocusStatus(),this.dp.hasSelectedDates&&(this._handleSelectedStatus(),this.dp.opts.range&&this._handleRangeStatus()),this.$cell.classList.add(...this._getClassName());}get isDisabled(){return this.$cell.matches(".-disabled-")}get isOtherMonth(){return this.dp.isOtherMonth(this.date)}get isOtherDecade(){return this.dp.isOtherDecade(this.date)}}function _(e,t,i){return (t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return "symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:true,configurable:true,writable:true}):e[t]=i,e}let M={[i.days]:`<div class="air-datepicker-body--day-names"></div><div class="air-datepicker-body--cells -${i.days}-"></div>`,[i.months]:`<div class="air-datepicker-body--cells -${i.months}-"></div>`,[i.years]:`<div class="air-datepicker-body--cells -${i.years}-"></div>`};const S=".air-datepicker-cell";class T{constructor(e){let{dp:t,type:s,opts:a}=e;_(this,"handleClick",(e=>{let t=e.target.closest(S).adpCell;if(t.isDisabled)return;if(!this.dp.isMinViewReached)return void this.dp.down();let i=this.dp._checkIfDateIsSelected(t.date,t.type);i?this.dp._handleAlreadySelectedDates(i,t.date):this.dp.selectDate(t.date);})),_(this,"handleDayNameClick",(e=>{let t=e.target.getAttribute("data-day-index");this.opts.onClickDayName({dayIndex:Number(t),datepicker:this.dp});})),_(this,"onChangeCurrentView",(e=>{e!==this.type?this.hide():(this.show(),this.render());})),_(this,"onMouseOverCell",(e=>{let t=y(e.target,S);this.dp.setFocusDate(!!t&&t.adpCell.date);})),_(this,"onMouseOutCell",(()=>{this.dp.setFocusDate(false);})),_(this,"onClickBody",(e=>{let{onClickDayName:t}=this.opts,i=e.target;i.closest(S)&&this.handleClick(e),t&&i.closest(".air-datepicker-body--day-name")&&this.handleDayNameClick(e);})),_(this,"onMouseDown",(e=>{this.pressed=true;let t=y(e.target,S),i=t&&t.adpCell;p(i.date,this.dp.rangeDateFrom)&&(this.rangeFromFocused=true),p(i.date,this.dp.rangeDateTo)&&(this.rangeToFocused=true);})),_(this,"onMouseMove",(e=>{if(!this.pressed||!this.dp.isMinViewReached)return;e.preventDefault();let t=y(e.target,S),i=t&&t.adpCell,{selectedDates:s,rangeDateTo:a,rangeDateFrom:n}=this.dp;if(!i||i.isDisabled)return;let{date:r}=i;if(2===s.length){if(this.rangeFromFocused&&!m(r,a)){let{hours:e,minutes:t}=o(n);r.setHours(e),r.setMinutes(t),this.dp.rangeDateFrom=r,this.dp.replaceDate(n,r);}if(this.rangeToFocused&&!v(r,n)){let{hours:e,minutes:t}=o(a);r.setHours(e),r.setMinutes(t),this.dp.rangeDateTo=r,this.dp.replaceDate(a,r);}}})),_(this,"onMouseUp",(()=>{this.pressed=false,this.rangeFromFocused=false,this.rangeToFocused=false;})),_(this,"onChangeViewDate",((e,t)=>{if(!this.isVisible)return;let s=c(e),a=c(t);switch(this.dp.currentView){case i.days:if(p(e,t,i.months))return;break;case i.months:if(p(e,t,i.years))return;break;case i.years:if(s[0]===a[0]&&s[1]===a[1])return}this.render();})),_(this,"render",(()=>{this.destroyCells(),this._generateCells(),this.cells.forEach((e=>{this.$cells.appendChild(e.render());}));})),this.dp=t,this.type=s,this.opts=a,this.cells=[],this.$el="",this.pressed=false,this.isVisible=true,this.init();}init(){this._buildBaseHtml(),this.type===i.days&&this.renderDayNames(),this.render(),this._bindEvents(),this._bindDatepickerEvents();}_bindEvents(){let{range:e,dynamicRange:t}=this.opts;D(this.$el,"mouseover",this.onMouseOverCell),D(this.$el,"mouseout",this.onMouseOutCell),D(this.$el,"click",this.onClickBody),e&&t&&(D(this.$el,"mousedown",this.onMouseDown),D(this.$el,"mousemove",this.onMouseMove),D(window.document,"mouseup",this.onMouseUp));}_bindDatepickerEvents(){this.dp.on(i.eventChangeViewDate,this.onChangeViewDate),this.dp.on(i.eventChangeCurrentView,this.onChangeCurrentView);}_buildBaseHtml(){this.$el=n({className:`air-datepicker-body -${this.type}-`,innerHtml:M[this.type]}),this.$names=a(".air-datepicker-body--day-names",this.$el),this.$cells=a(".air-datepicker-body--cells",this.$el);}_getDayNamesHtml(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.dp.locale.firstDay,t="",s=this.dp.isWeekend,{onClickDayName:a}=this.opts,n=e,r=0;for(;r<7;){let e=n%7;t+=`<div class="${u("air-datepicker-body--day-name",{[i.cssClassWeekend]:s(e),"-clickable-":!!a})}" data-day-index='${e}'>${this.dp.locale.daysMin[e]}</div>`,r++,n++;}return t}renderDayNames(){this.$names.innerHTML=this._getDayNamesHtml();}_generateCell(e){let{type:t,dp:i,opts:s}=this;return new C({type:t,dp:i,opts:s,date:e,body:this})}_generateCells(){T.getDatesFunction(this.type)(this.dp,(e=>{this.cells.push(this._generateCell(e));}));}show(){this.isVisible=true,this.$el.classList.remove("-hidden-");}hide(){this.isVisible=false,this.$el.classList.add("-hidden-");}destroyCells(){this.cells.forEach((e=>e.destroy())),this.cells=[],this.$cells.innerHTML="";}destroy(){this.destroyCells(),this.dp.off(i.eventChangeViewDate,this.onChangeViewDate),this.dp.off(i.eventChangeCurrentView,this.onChangeCurrentView);}static getDaysDates(e,t){let{viewDate:i,opts:{fixedHeight:s},locale:{firstDay:a}}=e,n=h(i),{year:r,month:l}=o(i),d=new Date(r,l,1),c=new Date(r,l,n),u=d.getDay()-a,p=6-c.getDay()+a;u=u<0?u+7:u,p=p>6?p-7:p;let m=function(e,t){let{year:i,month:s,date:a}=o(e);return new Date(i,s,a-t)}(d,u),v=n+u+p,g=m.getDate(),{year:D,month:y}=o(m),f=0;s&&(v=42);const w=[];for(;f<v;){let e=new Date(D,y,g+f);t&&t(e),w.push(e),f++;}return w}static getMonthsDates(e,t){let{year:i}=e.parsedViewDate,s=0,a=[];for(;s<12;){const e=new Date(i,s);a.push(e),t&&t(e),s++;}return a}static getYearsDates(e,t){let i=c(e.viewDate),s=i[0]-1,a=i[1]+1,n=s,r=[];for(;n<=a;){const e=new Date(n,0);r.push(e),t&&t(e),n++;}return r}static getDatesFunction(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i.days;return {[i.days]:T.getDaysDates,[i.months]:T.getMonthsDates,[i.years]:T.getYearsDates}[e]}}function F(e,t,i){return (t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return "symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:true,configurable:true,writable:true}):e[t]=i,e}class V{constructor(e){let{dp:t,opts:i}=e;F(this,"onClickNav",(e=>{let t=y(e.target,".air-datepicker-nav--action");if(!t)return;let i=t.dataset.action;this.dp[i]();})),F(this,"onChangeViewDate",(()=>{this.render(),this._resetNavStatus(),this.handleNavStatus();})),F(this,"onChangeCurrentView",(()=>{this.render(),this._resetNavStatus(),this.handleNavStatus();})),F(this,"onClickNavTitle",(()=>{this.dp.isFinalView||this.dp.up();})),F(this,"update",(()=>{let{prevHtml:e,nextHtml:t}=this.opts;this.$prev.innerHTML=e,this.$next.innerHTML=t,this._resetNavStatus(),this.render(),this.handleNavStatus();})),F(this,"renderDelay",(()=>{setTimeout(this.render);})),F(this,"render",(()=>{this.$title.innerHTML=this._getTitle(),function(e,t){for(let i in t)t[i]?e.classList.add(i):e.classList.remove(i);}(this.$title,{"-disabled-":this.dp.isFinalView});})),this.dp=t,this.opts=i,this.init();}init(){this._createElement(),this._buildBaseHtml(),this._defineDOM(),this.render(),this.handleNavStatus(),this._bindEvents(),this._bindDatepickerEvents();}_defineDOM(){this.$title=a(".air-datepicker-nav--title",this.$el),this.$prev=a('[data-action="prev"]',this.$el),this.$next=a('[data-action="next"]',this.$el);}_bindEvents(){this.$el.addEventListener("click",this.onClickNav),this.$title.addEventListener("click",this.onClickNavTitle);}_bindDatepickerEvents(){this.dp.on(i.eventChangeViewDate,this.onChangeViewDate),this.dp.on(i.eventChangeCurrentView,this.onChangeCurrentView),this.isNavIsFunction&&(this.dp.on(i.eventChangeSelectedDate,this.renderDelay),this.dp.opts.timepicker&&this.dp.on(i.eventChangeTime,this.render));}destroy(){this.dp.off(i.eventChangeViewDate,this.onChangeViewDate),this.dp.off(i.eventChangeCurrentView,this.onChangeCurrentView),this.isNavIsFunction&&(this.dp.off(i.eventChangeSelectedDate,this.renderDelay),this.dp.opts.timepicker&&this.dp.off(i.eventChangeTime,this.render));}_createElement(){this.$el=n({tagName:"nav",className:"air-datepicker-nav"});}_getTitle(){let{dp:e,opts:t}=this,i=t.navTitles[e.currentView];return "function"==typeof i?i(e):e.formatDate(e.viewDate,i)}handleNavStatus(){let{disableNavWhenOutOfRange:e}=this.opts,{minDate:t,maxDate:s}=this.dp;if(!t&&!s||!e)return;let{year:a,month:n}=this.dp.parsedViewDate,r=!!t&&o(t),h=!!s&&o(s);switch(this.dp.currentView){case i.days:t&&r.month>=n&&r.year>=a&&this._disableNav("prev"),s&&h.month<=n&&h.year<=a&&this._disableNav("next");break;case i.months:t&&r.year>=a&&this._disableNav("prev"),s&&h.year<=a&&this._disableNav("next");break;case i.years:{let e=c(this.dp.viewDate);t&&r.year>=e[0]&&this._disableNav("prev"),s&&h.year<=e[1]&&this._disableNav("next");break}}}_disableNav(e){a('[data-action="'+e+'"]',this.$el).classList.add("-disabled-");}_resetNavStatus(){!function(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),s=1;s<t;s++)i[s-1]=arguments[s];e.length?e.forEach((e=>{e.classList.remove(...i);})):e.classList.remove(...i);}(this.$el.querySelectorAll(".air-datepicker-nav--action"),"-disabled-");}_buildBaseHtml(){let{prevHtml:e,nextHtml:t}=this.opts;this.$el.innerHTML=`<div class="air-datepicker-nav--action" data-action="prev">${e}</div><div class="air-datepicker-nav--title"></div><div class="air-datepicker-nav--action" data-action="next">${t}</div>`;}get isNavIsFunction(){let{navTitles:e}=this.opts;return Object.keys(e).find((t=>"function"==typeof e[t]))}}var x={today:{content:e=>e.locale.today,onClick:e=>e.setViewDate(new Date)},clear:{content:e=>e.locale.clear,onClick:e=>e.clear()}};class H{constructor(e){let{dp:t,opts:i}=e;this.dp=t,this.opts=i,this.init();}init(){this.createElement(),this.render();}createElement(){this.$el=n({className:"air-datepicker-buttons"});}destroy(){this.$el.parentNode.removeChild(this.$el);}clearHtml(){return this.$el.innerHTML="",this}generateButtons(){let{buttons:e}=this.opts;Array.isArray(e)||(e=[e]),e.forEach((e=>{let t=e;"string"==typeof e&&x[e]&&(t=x[e]);let i=this.createButton(t);t.onClick&&this.attachEventToButton(i,t.onClick),this.$el.appendChild(i);}));}attachEventToButton(e,t){e.addEventListener("click",(()=>{t(this.dp);}));}createButton(e){let{content:t,className:i,tagName:s="button",attrs:a={}}=e;return n({tagName:s,innerHtml:`<span tabindex='-1'>${"function"==typeof t?t(this.dp):t}</span>`,className:u("air-datepicker-button",i),attrs:a})}render(){this.generateButtons();}}function E(e,t,i){return (t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return "symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:true,configurable:true,writable:true}):e[t]=i,e}class L{constructor(){let{opts:e,dp:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};E(this,"toggleTimepickerIsActive",(e=>{this.dp.timepickerIsActive=e;})),E(this,"onChangeSelectedDate",(e=>{let{date:t,updateTime:i=false}=e;t&&(this.setMinMaxTime(t),this.setCurrentTime(!!i&&t),this.addTimeToDate(t));})),E(this,"onChangeLastSelectedDate",(e=>{e&&(this.setTime(e),this.render());})),E(this,"onChangeInputRange",(e=>{let t=e.target;this[t.getAttribute("name")]=t.value,this.updateText(),this.dp.trigger(i.eventChangeTime,{hours:this.hours,minutes:this.minutes});})),E(this,"onMouseEnterLeave",(e=>{let t=e.target.getAttribute("name"),i=this.$minutesText;"hours"===t&&(i=this.$hoursText),i.classList.toggle("-focus-");})),E(this,"onFocus",(()=>{this.toggleTimepickerIsActive(true);})),E(this,"onBlur",(()=>{this.toggleTimepickerIsActive(false);})),this.opts=e,this.dp=t;let{timeFormat:s}=this.dp.locale;s&&(s.match($("h"))||s.match($("hh")))&&(this.ampm=true),this.init();}init(){this.setTime(this.dp.lastSelectedDate||this.dp.viewDate),this.createElement(),this.buildHtml(),this.defineDOM(),this.render(),this.bindDatepickerEvents(),this.bindDOMEvents();}bindDatepickerEvents(){this.dp.on(i.eventChangeSelectedDate,this.onChangeSelectedDate),this.dp.on(i.eventChangeLastSelectedDate,this.onChangeLastSelectedDate);}bindDOMEvents(){let e="input";navigator.userAgent.match(/trident/gi)&&(e="change"),D(this.$ranges,e,this.onChangeInputRange),D(this.$ranges,"mouseenter",this.onMouseEnterLeave),D(this.$ranges,"mouseleave",this.onMouseEnterLeave),D(this.$ranges,"focus",this.onFocus),D(this.$ranges,"mousedown",this.onFocus),D(this.$ranges,"blur",this.onBlur);}createElement(){this.$el=n({className:u("air-datepicker-time",{"-am-pm-":this.dp.ampm})});}destroy(){this.dp.off(i.eventChangeSelectedDate,this.onChangeSelectedDate),this.dp.off(i.eventChangeLastSelectedDate,this.onChangeLastSelectedDate),this.$el.parentNode.removeChild(this.$el);}buildHtml(){let{ampm:e,hours:t,displayHours:i,minutes:s,minHours:a,minMinutes:n,maxHours:r,maxMinutes:h,dayPeriod:o,opts:{hoursStep:l,minutesStep:c}}=this;this.$el.innerHTML=`<div class="air-datepicker-time--current"> <span class="air-datepicker-time--current-hours">${d(i)}</span> <span class="air-datepicker-time--current-colon">:</span> <span class="air-datepicker-time--current-minutes">${d(s)}</span> `+(e?`<span class='air-datepicker-time--current-ampm'>${o}</span>`:"")+'</div><div class="air-datepicker-time--sliders"> <div class="air-datepicker-time--row">'+` <input type="range" name="hours" value="${t}" min="${a}" max="${r}" step="${l}"/> </div> <div class="air-datepicker-time--row">`+` <input type="range" name="minutes" value="${s}" min="${n}" max="${h}" step="${c}"/> </div></div>`;}defineDOM(){let e=e=>a(e,this.$el);this.$ranges=this.$el.querySelectorAll('[type="range"]'),this.$hours=e('[name="hours"]'),this.$minutes=e('[name="minutes"]'),this.$hoursText=e(".air-datepicker-time--current-hours"),this.$minutesText=e(".air-datepicker-time--current-minutes"),this.$ampm=e(".air-datepicker-time--current-ampm");}setTime(e){this.setMinMaxTime(e),this.setCurrentTime(e);}addTimeToDate(e){e&&(e.setHours(this.hours),e.setMinutes(this.minutes));}setMinMaxTime(e){if(this.setMinMaxTimeFromOptions(),e){let{minDate:t,maxDate:i}=this.dp;t&&p(e,t)&&this.setMinTimeFromMinDate(t),i&&p(e,i)&&this.setMaxTimeFromMaxDate(i);}}setCurrentTime(e){let{hours:t,minutes:i}=e?o(e):this;this.hours=f(t,this.minHours,this.maxHours),this.minutes=f(i,this.minMinutes,this.maxMinutes);}setMinMaxTimeFromOptions(){let{minHours:e,minMinutes:t,maxHours:i,maxMinutes:s}=this.opts;this.minHours=f(e,0,23),this.minMinutes=f(t,0,59),this.maxHours=f(i,0,23),this.maxMinutes=f(s,0,59);}setMinTimeFromMinDate(e){let{lastSelectedDate:t}=this.dp;this.minHours=e.getHours(),t&&t.getHours()>e.getHours()?this.minMinutes=this.opts.minMinutes:this.minMinutes=e.getMinutes();}setMaxTimeFromMaxDate(e){let{lastSelectedDate:t}=this.dp;this.maxHours=e.getHours(),t&&t.getHours()<e.getHours()?this.maxMinutes=this.opts.maxMinutes:this.maxMinutes=e.getMinutes();}updateSliders(){r(this.$hours,{min:this.minHours,max:this.maxHours}).value=this.hours,r(this.$minutes,{min:this.minMinutes,max:this.maxMinutes}).value=this.minutes;}updateText(){this.$hoursText.innerHTML=d(this.displayHours),this.$minutesText.innerHTML=d(this.minutes),this.ampm&&(this.$ampm.innerHTML=this.dayPeriod);}set hours(e){this._hours=e;let{hours:t,dayPeriod:i}=l(e);this.displayHours=this.ampm?t:e,this.dayPeriod=i;}get hours(){return this._hours}render(){this.updateSliders(),this.updateText();}}function A(e,t,i){return (t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return "symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:true,configurable:true,writable:true}):e[t]=i,e}class O{constructor(e){let{dp:t,opts:i}=e;A(this,"pressedKeys",new Set),A(this,"hotKeys",new Map([[[["Control","ArrowRight"],["Control","ArrowUp"]],e=>e.month++],[[["Control","ArrowLeft"],["Control","ArrowDown"]],e=>e.month--],[[["Shift","ArrowRight"],["Shift","ArrowUp"]],e=>e.year++],[[["Shift","ArrowLeft"],["Shift","ArrowDown"]],e=>e.year--],[[["Alt","ArrowRight"],["Alt","ArrowUp"]],e=>e.year+=10],[[["Alt","ArrowLeft"],["Alt","ArrowDown"]],e=>e.year-=10],[["Control","Shift","ArrowUp"],(e,t)=>t.up()]])),A(this,"handleHotKey",(e=>{let t=this.hotKeys.get(e),i=o(this.getInitialFocusDate());t(i,this.dp);let{year:s,month:a,date:n}=i,r=h(new Date(s,a));r<n&&(n=r);let l=this.dp.getClampedDate(new Date(s,a,n));this.dp.setFocusDate(l,{viewDateTransition:true});})),A(this,"isHotKeyPressed",(()=>{let e=false,t=this.pressedKeys.size,i=e=>this.pressedKeys.has(e);for(let[s]of this.hotKeys){if(e)break;if(Array.isArray(s[0]))s.forEach((a=>{e||t!==a.length||(e=a.every(i)&&s);}));else {if(t!==s.length)continue;e=s.every(i)&&s;}}return e})),A(this,"isArrow",(e=>e>=37&&e<=40)),A(this,"onKeyDown",(e=>{if(!this.dp.visible&&!this.dp.treatAsInline)return;let{key:t,which:i}=e,{dp:s,dp:{focusDate:a},opts:n}=this;this.registerKey(t);let r=this.isHotKeyPressed();if(r)return e.preventDefault(),void this.handleHotKey(r);if(this.isArrow(i))return e.preventDefault(),void this.focusNextCell(t);if("Enter"===t){if(s.currentView!==n.minView)return void s.down();if(a){let e=s._checkIfDateIsSelected(a);return void(e?s._handleAlreadySelectedDates(e,a):s.selectDate(a))}}"Escape"===t&&this.dp.hide();})),A(this,"onKeyUp",(e=>{this.removeKey(e.key);})),this.dp=t,this.opts=i,this.init();}init(){this.bindKeyboardEvents();}bindKeyboardEvents(){let{$el:e}=this.dp;e.addEventListener("keydown",this.onKeyDown),e.addEventListener("keyup",this.onKeyUp);}destroy(){let{$el:e}=this.dp;e.removeEventListener("keydown",this.onKeyDown),e.removeEventListener("keyup",this.onKeyUp),this.hotKeys=null,this.pressedKeys=null;}getInitialFocusDate(){let{focusDate:e,currentView:t,selectedDates:s,parsedViewDate:{year:a,month:n}}=this.dp,r=e||s[s.length-1];if(!r)switch(t){case i.days:r=new Date(a,n,(new Date).getDate());break;case i.months:r=new Date(a,n,1);break;case i.years:r=new Date(a,0,1);}return r}focusNextCell(e){let t=this.getInitialFocusDate(),{currentView:s}=this.dp,{days:a,months:n,years:r}=i,h=o(t),l=h.year,d=h.month,c=h.date;switch(e){case "ArrowLeft":s===a&&(c-=1),s===n&&(d-=1),s===r&&(l-=1);break;case "ArrowUp":s===a&&(c-=7),s===n&&(d-=3),s===r&&(l-=4);break;case "ArrowRight":s===a&&(c+=1),s===n&&(d+=1),s===r&&(l+=1);break;case "ArrowDown":s===a&&(c+=7),s===n&&(d+=3),s===r&&(l+=4);}let u=this.dp.getClampedDate(new Date(l,d,c));this.dp.setFocusDate(u,{viewDateTransition:true});}registerKey(e){this.pressedKeys.add(e);}removeKey(e){this.pressedKeys.delete(e);}}let N={on(e,t){this.__events||(this.__events={}),this.__events[e]?this.__events[e].push(t):this.__events[e]=[t];},off(e,t){this.__events&&this.__events[e]&&(this.__events[e]=this.__events[e].filter((e=>e!==t)));},removeAllEvents(){this.__events={};},trigger(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),s=1;s<t;s++)i[s-1]=arguments[s];this.__events&&this.__events[e]&&this.__events[e].forEach((e=>{e(...i);}));}};function I(e,t,i){return (t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return "symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:true,configurable:true,writable:true}):e[t]=i,e}let P="",j="",B=false;class R{static buildGlobalContainer(e){B=true,P=n({className:e,id:e}),a("body").appendChild(P);}constructor(e,t){var r=this;if(I(this,"viewIndexes",[i.days,i.months,i.years]),I(this,"next",(()=>{let{year:e,month:t}=this.parsedViewDate;switch(this.currentView){case i.days:this.setViewDate(new Date(e,t+1,1));break;case i.months:this.setViewDate(new Date(e+1,t,1));break;case i.years:this.setViewDate(new Date(e+10,0,1));}})),I(this,"prev",(()=>{let{year:e,month:t}=this.parsedViewDate;switch(this.currentView){case i.days:this.setViewDate(new Date(e,t-1,1));break;case i.months:this.setViewDate(new Date(e-1,t,1));break;case i.years:this.setViewDate(new Date(e-10,0,1));}})),I(this,"_finishHide",(()=>{this.hideAnimation=false,this._destroyComponents(),this.$container.removeChild(this.$datepicker);})),I(this,"setPosition",(function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if("function"==typeof(e=e||r.opts.position))return void(r.customHide=e({$datepicker:r.$datepicker,$target:r.$el,$pointer:r.$pointer,isViewChange:t,done:r._finishHide}));let i,s,{isMobile:a}=r.opts,n=r.$el.getBoundingClientRect(),h=r.$el.getBoundingClientRect(),o=r.$datepicker.offsetParent,l=r.$el.offsetParent,d=r.$datepicker.getBoundingClientRect(),c=e.split(" "),u=window.scrollY,p=window.scrollX,m=r.opts.offset,v=c[0],g=c[1];if(a)r.$datepicker.style.cssText="left: 50%; top: 50%";else {if(o===l&&o!==document.body&&(h={top:r.$el.offsetTop,left:r.$el.offsetLeft,width:n.width,height:r.$el.offsetHeight},u=0,p=0),o!==l&&o!==document.body){let e=o.getBoundingClientRect();h={top:n.top-e.top,left:n.left-e.left,width:n.width,height:n.height},u=0,p=0;}switch(v){case "top":i=h.top-d.height-m;break;case "right":s=h.left+h.width+m;break;case "bottom":i=h.top+h.height+m;break;case "left":s=h.left-d.width-m;}switch(g){case "top":i=h.top;break;case "right":s=h.left+h.width-d.width;break;case "bottom":i=h.top+h.height-d.height;break;case "left":s=h.left;break;case "center":/left|right/.test(v)?i=h.top+h.height/2-d.height/2:s=h.left+h.width/2-d.width/2;}r.$datepicker.style.cssText=`left: ${s+p}px; top: ${i+u}px`;}})),I(this,"_setInputValue",(()=>{let{opts:e,$altField:t,locale:{dateFormat:i}}=this,{altFieldDateFormat:s,altField:a}=e;a&&t&&(t.value=this._getInputValue(s)),this.$el.value=this._getInputValue(i),this.$el.dispatchEvent(new Event("change"));})),I(this,"_getInputValue",(e=>{let{selectedDates:t,opts:i}=this,{multipleDates:s,multipleDatesSeparator:a}=i;if(!t.length)return "";let n="function"==typeof e,r=n?e(s?t:t[0]):t.map((t=>this.formatDate(t,e)));return r=n?r:r.join(a),r})),I(this,"_checkIfDateIsSelected",(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:i.days,s=false;return r.selectedDates.some((i=>{let a=p(e,i,t);return s=a&&i,a})),s})),I(this,"_scheduleCallAfterTransition",(e=>{this._cancelScheduledCall(),e&&e(false),this._onTransitionEnd=()=>{e&&e(true);},this.$datepicker.addEventListener("transitionend",this._onTransitionEnd,{once:true});})),I(this,"_cancelScheduledCall",(()=>{this.$datepicker.removeEventListener("transitionend",this._onTransitionEnd);})),I(this,"setViewDate",(e=>{if(!((e=b(e))instanceof Date))return;if(p(e,this.viewDate))return;let t=this.viewDate;this.viewDate=e;let{onChangeViewDate:s}=this.opts;if(s){let{month:e,year:t}=this.parsedViewDate;s({month:e,year:t,decade:this.curDecade});}this.trigger(i.eventChangeViewDate,e,t);})),I(this,"setFocusDate",(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};(!e||(e=b(e))instanceof Date)&&(r.focusDate=e,r.trigger(i.eventChangeFocusDate,e,t));})),I(this,"setCurrentView",(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(r.viewIndexes.includes(e)){if(r.currentView=e,r.elIsInput&&r.visible&&r.setPosition(void 0,true),r.trigger(i.eventChangeCurrentView,e),!r.views[e]){let t=r.views[e]=new T({dp:r,opts:r.opts,type:e});r.shouldUpdateDOM&&r.$content.appendChild(t.$el);}r.opts.onChangeView&&!t.silent&&r.opts.onChangeView(e);}})),I(this,"_updateLastSelectedDate",(e=>{this.lastSelectedDate=e,this.trigger(i.eventChangeLastSelectedDate,e);})),I(this,"destroy",(()=>{if(this.isDestroyed)return;let{showEvent:e,isMobile:t}=this.opts,i=this.$datepicker.parentNode;i&&i.removeChild(this.$datepicker),this.$el.removeEventListener(e,this._onFocus),this.$el.removeEventListener("blur",this._onBlur),window.removeEventListener("resize",this._onResize),t&&this._removeMobileAttributes(),this.keyboardNav&&this.keyboardNav.destroy(),this.views=null,this.nav=null,this.$datepicker=null,this.opts={},this.$customContainer=null,this.viewDate=null,this.focusDate=null,this.selectedDates=[],this.rangeDateFrom=null,this.rangeDateTo=null,this.isDestroyed=true;})),I(this,"update",(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},s=w({},r.opts),{silent:a}=t;w(r.opts,e);let{timepicker:n,buttons:h,range:o,selectedDates:l,isMobile:d}=r.opts,c=r.visible||r.treatAsInline;r._createMinMaxDates(),r._limitViewDateByMaxMinDates(),r._handleLocale(),l&&(r.selectedDates=[],r.selectDate(l,{silent:a})),e.view&&r.setCurrentView(e.view,{silent:a}),r._setInputValue(),s.range&&!o?(r.rangeDateTo=false,r.rangeDateFrom=false):!s.range&&o&&r.selectedDates.length&&(r.rangeDateFrom=r.selectedDates[0],r.rangeDateTo=r.selectedDates[1]),s.timepicker&&!n?(c&&r.timepicker.destroy(),r.timepicker=false,r.$timepicker.parentNode.removeChild(r.$timepicker)):!s.timepicker&&n&&r._addTimepicker(),!s.buttons&&h?r._addButtons():s.buttons&&!h?(r.buttons.destroy(),r.$buttons.parentNode.removeChild(r.$buttons)):c&&s.buttons&&h&&r.buttons.clearHtml().render(),!s.isMobile&&d?(r.treatAsInline||j||r._createMobileOverlay(),r._addMobileAttributes(),r.visible&&r._showMobileOverlay()):s.isMobile&&!d&&(r._removeMobileAttributes(),r.visible&&(j.classList.remove("-active-"),"function"!=typeof r.opts.position&&r.setPosition())),c&&(r.nav.update(),r.views[r.currentView].render(),r.currentView===i.days&&r.views[r.currentView].renderDayNames());})),I(this,"disableDate",((e,t)=>{(Array.isArray(e)?e:[e]).forEach((e=>{let i=b(e);if(!i)return;let s=t?"delete":"add";this.disabledDates[s](this.formatDate(i,"yyyy-MM-dd"));let a=this.getCell(i,this.currentViewSingular);a&&a.adpCell.render();}),[]);})),I(this,"enableDate",(e=>{this.disableDate(e,true);})),I(this,"isDateDisabled",(e=>{let t=b(e);return this.disabledDates.has(this.formatDate(t,"yyyy-MM-dd"))})),I(this,"isOtherMonth",(e=>{let{month:t}=o(e);return t!==this.parsedViewDate.month})),I(this,"isOtherYear",(e=>{let{year:t}=o(e);return t!==this.parsedViewDate.year})),I(this,"isOtherDecade",(e=>{let{year:t}=o(e),[i,s]=c(this.viewDate);return t<i||t>s})),I(this,"_onChangeSelectedDate",(e=>{let{silent:t}=e;setTimeout((()=>{this._setInputValue(),this.opts.onSelect&&!t&&this._triggerOnSelect();}));})),I(this,"_onChangeFocusedDate",(function(e){let{viewDateTransition:t}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e)return;let i=false;t&&(i=r.isOtherMonth(e)||r.isOtherYear(e)||r.isOtherDecade(e)),i&&r.setViewDate(e),r.opts.onFocus&&r.opts.onFocus({datepicker:r,date:e});})),I(this,"_onChangeTime",(e=>{let{hours:t,minutes:i}=e,s=new Date,{lastSelectedDate:a,opts:{onSelect:n}}=this,r=a;a||(r=s);let h=this.getCell(r,this.currentViewSingular),o=h&&h.adpCell;o&&o.isDisabled||(r.setHours(t),r.setMinutes(i),a?(this._setInputValue(),n&&this._triggerOnSelect()):this.selectDate(r));})),I(this,"_onFocus",(e=>{this.visible||this.show();})),I(this,"_onBlur",(e=>{this.inFocus||!this.visible||this.opts.isMobile||this.hide();})),I(this,"_onMouseDown",(e=>{this.inFocus=true;})),I(this,"_onMouseUp",(e=>{this.inFocus=false,this.$el.focus();})),I(this,"_onResize",(()=>{this.visible&&"function"!=typeof this.opts.position&&this.setPosition();})),I(this,"_onClickOverlay",(()=>{this.visible&&this.hide();})),I(this,"getViewDates",(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i.days;return T.getDatesFunction(e)(r)})),I(this,"isWeekend",(e=>this.opts.weekends.includes(e))),I(this,"getClampedDate",(e=>{let{minDate:t,maxDate:i}=this,s=e;return i&&m(e,i)?s=i:t&&v(e,t)&&(s=t),s})),this.$el=a(e),!this.$el)return;this.$datepicker=n({className:"air-datepicker"}),this.opts=w({},s,t),this.$customContainer=!!this.opts.container&&a(this.opts.container),this.$altField=a(this.opts.altField||false);let{view:h,startDate:l}=this.opts;l||(this.opts.startDate=new Date),"INPUT"===this.$el.nodeName&&(this.elIsInput=true),this.inited=false,this.visible=false,this.viewDate=b(this.opts.startDate),this.focusDate=false,this.initialReadonly=this.$el.getAttribute("readonly"),this.customHide=false,this.currentView=h,this.selectedDates=[],this.disabledDates=new Set,this.isDestroyed=false,this.views={},this.keys=[],this.rangeDateFrom="",this.rangeDateTo="",this.timepickerIsActive=false,this.treatAsInline=this.opts.inline||!this.elIsInput,this.init();}init(){let{opts:e,treatAsInline:t,opts:{inline:i,isMobile:s,selectedDates:n,keyboardNav:r,onlyTimepicker:h}}=this,o=a("body");(!B||B&&P&&!o.contains(P))&&!i&&this.elIsInput&&!this.$customContainer&&R.buildGlobalContainer(R.defaultGlobalContainerId),!s||j||t||this._createMobileOverlay(),this._handleLocale(),this._bindSubEvents(),this._createMinMaxDates(),this._limitViewDateByMaxMinDates(),this.elIsInput&&(i||this._bindEvents(),r&&!h&&(this.keyboardNav=new O({dp:this,opts:e}))),n&&this.selectDate(n,{silent:true}),this.opts.visible&&!t&&this.show(),s&&!t&&this.$el.setAttribute("readonly",true),t&&this._createComponents();}_createMobileOverlay(){j=n({className:"air-datepicker-overlay"}),P.appendChild(j);}_createComponents(){let{opts:e,treatAsInline:t,opts:{inline:i,buttons:s,timepicker:a,position:n,classes:r,onlyTimepicker:h,isMobile:o}}=this;this._buildBaseHtml(),this.elIsInput&&(i||this._setPositionClasses(n)),!i&&this.elIsInput||this.$datepicker.classList.add("-inline-"),r&&this.$datepicker.classList.add(...r.split(" ")),h&&this.$datepicker.classList.add("-only-timepicker-"),o&&!t&&this._addMobileAttributes(),this.views[this.currentView]=new T({dp:this,type:this.currentView,opts:e}),this.nav=new V({dp:this,opts:e}),a&&this._addTimepicker(),s&&this._addButtons(),this.$content.appendChild(this.views[this.currentView].$el),this.$nav.appendChild(this.nav.$el);}_destroyComponents(){for(let e in this.views)this.views[e].destroy();this.views={},this.nav.destroy(),this.timepicker&&this.timepicker.destroy();}_addMobileAttributes(){j.addEventListener("click",this._onClickOverlay),this.$datepicker.classList.add("-is-mobile-"),this.$el.setAttribute("readonly",true);}_removeMobileAttributes(){j.removeEventListener("click",this._onClickOverlay),this.$datepicker.classList.remove("-is-mobile-"),this.initialReadonly||""===this.initialReadonly||this.$el.removeAttribute("readonly");}_createMinMaxDates(){let{minDate:e,maxDate:t}=this.opts;this.minDate=!!e&&b(e),this.maxDate=!!t&&b(t);}_addTimepicker(){this.$timepicker=n({className:"air-datepicker--time"}),this.$datepicker.appendChild(this.$timepicker),this.timepicker=new L({dp:this,opts:this.opts}),this.$timepicker.appendChild(this.timepicker.$el);}_addButtons(){this.$buttons=n({className:"air-datepicker--buttons"}),this.$datepicker.appendChild(this.$buttons),this.buttons=new H({dp:this,opts:this.opts}),this.$buttons.appendChild(this.buttons.$el);}_bindSubEvents(){this.on(i.eventChangeSelectedDate,this._onChangeSelectedDate),this.on(i.eventChangeFocusDate,this._onChangeFocusedDate),this.on(i.eventChangeTime,this._onChangeTime);}_buildBaseHtml(){let{inline:e}=this.opts;var t,i;this.elIsInput?e?(t=this.$datepicker,(i=this.$el).parentNode.insertBefore(t,i.nextSibling)):this.$container.appendChild(this.$datepicker):this.$el.appendChild(this.$datepicker),this.$datepicker.innerHTML='<i class="air-datepicker--pointer"></i><div class="air-datepicker--navigation"></div><div class="air-datepicker--content"></div>',this.$content=a(".air-datepicker--content",this.$datepicker),this.$pointer=a(".air-datepicker--pointer",this.$datepicker),this.$nav=a(".air-datepicker--navigation",this.$datepicker);}_handleLocale(){let{locale:e,dateFormat:t,firstDay:i,timepicker:s,onlyTimepicker:a,timeFormat:n,dateTimeSeparator:r}=this.opts;var h;this.locale=(h=e,JSON.parse(JSON.stringify(h))),t&&(this.locale.dateFormat=t),void 0!==n&&""!==n&&(this.locale.timeFormat=n);let{timeFormat:o}=this.locale;if(""!==i&&(this.locale.firstDay=i),s&&"function"!=typeof t){let e=o?r:"";this.locale.dateFormat=[this.locale.dateFormat,o||""].join(e);}a&&"function"!=typeof t&&(this.locale.dateFormat=this.locale.timeFormat);}_setPositionClasses(e){if("function"==typeof e)return void this.$datepicker.classList.add("-custom-position-");let t=(e=e.split(" "))[0],i=`air-datepicker -${t}-${e[1]}- -from-${t}-`;this.$datepicker.classList.add(...i.split(" "));}_bindEvents(){this.$el.addEventListener(this.opts.showEvent,this._onFocus),this.$el.addEventListener("blur",this._onBlur),this.$datepicker.addEventListener("mousedown",this._onMouseDown),this.$datepicker.addEventListener("mouseup",this._onMouseUp),window.addEventListener("resize",this._onResize);}_limitViewDateByMaxMinDates(){let{viewDate:e,minDate:t,maxDate:i}=this;i&&m(e,i)&&this.setViewDate(i),t&&v(e,t)&&this.setViewDate(t);}formatDate(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.viewDate,t=arguments.length>1?arguments[1]:void 0;if(e=b(e),!(e instanceof Date))return;let i=t,s=this.locale,a=o(e),n=a.dayPeriod,r=c(e),h=R.replacer,l={T:e.getTime(),m:a.minutes,mm:a.fullMinutes,h:a.hours12,hh:a.fullHours12,H:a.hours,HH:a.fullHours,aa:n,AA:n.toUpperCase(),E:s.daysShort[a.day],EEEE:s.days[a.day],d:a.date,dd:a.fullDate,M:a.month+1,MM:a.fullMonth,MMM:s.monthsShort[a.month],MMMM:s.months[a.month],yy:a.year.toString().slice(-2),yyyy:a.year,yyyy1:r[0],yyyy2:r[1]};for(let[e,t]of Object.entries(l))i=h(i,$(e),t);return i}down(e){this._handleUpDownActions(e,"down");}up(e){this._handleUpDownActions(e,"up");}selectDate(e){let t,s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{currentView:a,parsedViewDate:n,selectedDates:r}=this,{updateTime:h,silent:o}=s,{moveToOtherMonthsOnSelect:l,moveToOtherYearsOnSelect:d,multipleDates:c,range:u,autoClose:p,onBeforeSelect:v}=this.opts,g=r.length;if(Array.isArray(e))return e.forEach((e=>{this.selectDate(e,s);})),new Promise((e=>{setTimeout(e);}));if((e=b(e))instanceof Date){if(v&&!o&&!v({date:e,datepicker:this}))return Promise.resolve();if(a===i.days&&e.getMonth()!==n.month&&l&&(t=new Date(e.getFullYear(),e.getMonth(),1)),a===i.years&&e.getFullYear()!==n.year&&d&&(t=new Date(e.getFullYear(),0,1)),t&&this.setViewDate(t),c&&!u){if(g===c)return;this._checkIfDateIsSelected(e)||r.push(e);}else if(u)switch(g){case 1:r.push(e),this.rangeDateTo||(this.rangeDateTo=e),m(this.rangeDateFrom,this.rangeDateTo)&&(this.rangeDateTo=this.rangeDateFrom,this.rangeDateFrom=e),this.selectedDates=[this.rangeDateFrom,this.rangeDateTo];break;case 2:this.selectedDates=[e],this.rangeDateFrom=e,this.rangeDateTo="";break;default:this.selectedDates=[e],this.rangeDateFrom=e;}else this.selectedDates=[e];return this.trigger(i.eventChangeSelectedDate,{action:i.actionSelectDate,silent:null==s?void 0:s.silent,date:e,updateTime:h}),this._updateLastSelectedDate(e),p&&!this.timepickerIsActive&&this.visible&&(c||u?u&&1===g&&this.hide():this.hide()),new Promise((e=>{setTimeout(e);}))}}unselectDate(e){let t=this.selectedDates,s=this;if((e=b(e))instanceof Date)return t.some(((a,n)=>{if(p(a,e))return t.splice(n,1),s.selectedDates.length?(s.rangeDateTo="",s.rangeDateFrom=t[0],s._updateLastSelectedDate(s.selectedDates[s.selectedDates.length-1])):(s.rangeDateFrom="",s.rangeDateTo="",s._updateLastSelectedDate(false)),this.trigger(i.eventChangeSelectedDate,{action:i.actionUnselectDate,date:e}),true}))}replaceDate(e,t){let s=this.selectedDates.find((t=>p(t,e,this.currentView))),a=this.selectedDates.indexOf(s);a<0||p(this.selectedDates[a],t,this.currentView)||(this.selectedDates[a]=t,this.trigger(i.eventChangeSelectedDate,{action:i.actionSelectDate,date:t,updateTime:true}),this._updateLastSelectedDate(t));}clear(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.selectedDates=[],this.rangeDateFrom=false,this.rangeDateTo=false,this.lastSelectedDate=false,this.trigger(i.eventChangeSelectedDate,{action:i.actionUnselectDate,silent:e.silent}),new Promise((e=>{setTimeout(e);}))}show(){let{onShow:e,isMobile:t}=this.opts;this._cancelScheduledCall(),this.visible||this.hideAnimation||this._createComponents(),this.setPosition(this.opts.position),this.$datepicker.classList.add("-active-"),this.visible=true,e&&this._scheduleCallAfterTransition(e),t&&this._showMobileOverlay();}hide(){let{onHide:e,isMobile:t}=this.opts,i=this._hasTransition();this.visible=false,this.hideAnimation=true,this.$datepicker.classList.remove("-active-"),this.customHide&&this.customHide(),this.elIsInput&&this.$el.blur(),this._scheduleCallAfterTransition((t=>{!this.customHide&&(t&&i||!t&&!i)&&this._finishHide(),e&&e(t);})),t&&j.classList.remove("-active-");}_triggerOnSelect(){let e=[],t=[],{selectedDates:i,locale:s,opts:{onSelect:a,multipleDates:n,range:r}}=this,h=n||r,o="function"==typeof s.dateFormat;i.length&&(e=i.map(g),t=o?n?s.dateFormat(e):e.map((e=>s.dateFormat(e))):e.map((e=>this.formatDate(e,s.dateFormat)))),a({date:h?e:e[0],formattedDate:h?t:t[0],datepicker:this});}_handleAlreadySelectedDates(e,t){let{selectedDates:i,rangeDateFrom:s,rangeDateTo:a}=this,{range:n,toggleSelected:r}=this.opts,h=i.length,o="function"==typeof r?r({datepicker:this,date:t}):r,l=Boolean(n&&1===h&&e),d=l?g(t):t;n&&!o&&(2!==h&&this.selectDate(d),2===h&&p(s,a))||(o?this.unselectDate(d):this._updateLastSelectedDate(l?d:e));}_handleUpDownActions(e,t){if(!((e=b(e||this.focusDate||this.viewDate))instanceof Date))return;let i="up"===t?this.viewIndex+1:this.viewIndex-1;i>2&&(i=2),i<0&&(i=0),this.setViewDate(new Date(e.getFullYear(),e.getMonth(),1)),this.setCurrentView(this.viewIndexes[i]);}getCell(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:i.day;if(!((e=b(e))instanceof Date))return;let{year:s,month:a,date:n}=o(e),r=`[data-year="${s}"]`,h=`[data-month="${a}"]`,l={[i.day]:`${r}${h}[data-date="${n}"]`,[i.month]:`${r}${h}`,[i.year]:`${r}`};return this.views[this.currentView]?this.views[this.currentView].$el.querySelector(l[t]):void 0}_showMobileOverlay(){j.classList.add("-active-");}_hasTransition(){return window.getComputedStyle(this.$datepicker).getPropertyValue("transition-duration").split(", ").reduce(((e,t)=>parseFloat(t)+e),0)>0}get shouldUpdateDOM(){return this.visible||this.treatAsInline}get parsedViewDate(){return o(this.viewDate)}get currentViewSingular(){return this.currentView.slice(0,-1)}get curDecade(){return c(this.viewDate)}get viewIndex(){return this.viewIndexes.indexOf(this.currentView)}get isFinalView(){return this.currentView===i.years}get hasSelectedDates(){return this.selectedDates.length>0}get isMinViewReached(){return this.currentView===this.opts.minView||this.currentView===i.days}get $container(){return this.$customContainer||P}static replacer(e,t,i){return e.replace(t,(function(e,t,s,a){return t+i+a}))}}var K;return I(R,"defaults",s),I(R,"version","3.6.0"),I(R,"defaultGlobalContainerId","air-datepicker-global-container"),K=R.prototype,Object.assign(K,N),t.default}()}));
3732
+ } (airDatepicker$1));
3733
+ return airDatepicker$1.exports;
3734
+ }
3735
+
3736
+ var airDatepickerExports = requireAirDatepicker();
3737
+ var AirDatepicker = /*@__PURE__*/getDefaultExportFromCjs(airDatepickerExports);
3738
+
3739
+ /**
3740
+ * Add role and aria-label to each grid cell based on its type.
3741
+ * @param data The render cell data from AirDatepicker.
3742
+ * @param localeCode The BCP 47 locale code for formatting.
3743
+ * @returns An object with `attrs` to apply to the cell element.
3744
+ */
3745
+ function renderCellAccessibility({ date, cellType }, localeCode) {
3746
+ if (cellType === 'day') {
3747
+ return {
3748
+ attrs: {
3749
+ 'role': 'gridcell',
3750
+ 'aria-label': date.toLocaleDateString(localeCode, {
3751
+ weekday: 'long',
3752
+ year: 'numeric',
3753
+ month: 'long',
3754
+ day: 'numeric',
3755
+ }),
3756
+ },
3757
+ };
3758
+ }
3759
+ else if (cellType === 'month') {
3760
+ return {
3761
+ attrs: {
3762
+ 'role': 'gridcell',
3763
+ 'aria-label': date.toLocaleDateString(localeCode, {
3764
+ year: 'numeric',
3765
+ month: 'long',
3766
+ }),
3767
+ },
3768
+ };
3769
+ }
3770
+ else if (cellType === 'year') {
3771
+ return {
3772
+ attrs: {
3773
+ 'role': 'gridcell',
3774
+ 'aria-label': date.toLocaleDateString(localeCode, {
3775
+ year: 'numeric',
3776
+ }),
3777
+ },
3778
+ };
3779
+ }
3780
+ }
3781
+ /**
3782
+ * Merge the internal render cell (adding of role + aria-label attributes) and the user's render cell (disabling dates, etc.)
3783
+ * @param base Internal render cell
3784
+ * @param custom User render cell
3785
+ * @returns Merged render cell
3786
+ */
3787
+ function mergeRenderCellResults(base, custom) {
3788
+ if (!base)
3789
+ return custom;
3790
+ if (!custom)
3791
+ return base;
3792
+ return {
3793
+ ...base,
3794
+ classes: [base.classes, custom.classes].filter(Boolean).join(' '),
3795
+ disabled: custom.disabled || base.disabled,
3796
+ };
3797
+ }
3798
+
3706
3799
  const airDatepickerLocales = {
3707
3800
  ar: () => import('./_air-datepicker-locale_ar-DQq5Bnk2.js'),
3708
3801
  bg: () => import('./_air-datepicker-locale_bg-bl3gSRgH.js'),
@@ -3780,7 +3873,108 @@ const DATE_FORMAT_STRING_OPTIONS = {
3780
3873
  year: 'numeric',
3781
3874
  };
3782
3875
 
3783
- const postDatePickerCss = () => `.air-datepicker-cell.-year-.-other-decade-,.air-datepicker-cell.-day-.-other-month-{color:var(--adp-color-other-month)}.air-datepicker-cell.-year-.-other-decade-:hover,.air-datepicker-cell.-day-.-other-month-:hover{color:var(--adp-color-other-month-hover)}.-disabled-.-focus-.air-datepicker-cell.-year-.-other-decade-,.-disabled-.-focus-.air-datepicker-cell.-day-.-other-month-{color:var(--adp-color-other-month)}.-selected-.air-datepicker-cell.-year-.-other-decade-,.-selected-.air-datepicker-cell.-day-.-other-month-{color:#fff;background:var(--adp-background-color-selected-other-month)}.-selected-.-focus-.air-datepicker-cell.-year-.-other-decade-,.-selected-.-focus-.air-datepicker-cell.-day-.-other-month-{background:var(--adp-background-color-selected-other-month-focused)}.-in-range-.air-datepicker-cell.-year-.-other-decade-,.-in-range-.air-datepicker-cell.-day-.-other-month-{background-color:var(--adp-background-color-in-range);color:var(--adp-color)}.-in-range-.-focus-.air-datepicker-cell.-year-.-other-decade-,.-in-range-.-focus-.air-datepicker-cell.-day-.-other-month-{background-color:var(--adp-background-color-in-range-focused)}.air-datepicker-cell.-year-.-other-decade-:empty,.air-datepicker-cell.-day-.-other-month-:empty{background:none;border:none}.air-datepicker-cell{border-radius:var(--adp-cell-border-radius);box-sizing:border-box;cursor:pointer;display:flex;position:relative;align-items:center;justify-content:center;z-index:1}.air-datepicker-cell.-focus-{background:var(--adp-cell-background-color-hover)}.air-datepicker-cell.-current-{color:var(--adp-color-current-date)}.air-datepicker-cell.-current-.-focus-{color:var(--adp-color)}.air-datepicker-cell.-current-.-in-range-{color:var(--adp-color-current-date)}.air-datepicker-cell.-disabled-{cursor:default;color:var(--adp-color-disabled)}.air-datepicker-cell.-disabled-.-focus-{color:var(--adp-color-disabled)}.air-datepicker-cell.-disabled-.-in-range-{color:var(--adp-color-disabled-in-range)}.air-datepicker-cell.-disabled-.-current-.-focus-{color:var(--adp-color-disabled)}.air-datepicker-cell.-in-range-{background:var(--adp-cell-background-color-in-range);border-radius:0}.air-datepicker-cell.-in-range-:hover,.air-datepicker-cell.-in-range-.-focus-{background:var(--adp-cell-background-color-in-range-hover)}.air-datepicker-cell.-range-from-{border:1px solid var(--adp-cell-border-color-in-range);background-color:var(--adp-cell-background-color-in-range);border-radius:var(--adp-cell-border-radius) 0 0 var(--adp-cell-border-radius)}.air-datepicker-cell.-range-to-{border:1px solid var(--adp-cell-border-color-in-range);background-color:var(--adp-cell-background-color-in-range);border-radius:0 var(--adp-cell-border-radius) var(--adp-cell-border-radius) 0}.air-datepicker-cell.-range-to-.-range-from-{border-radius:var(--adp-cell-border-radius)}.air-datepicker-cell.-selected-{color:#fff;border:none;background:var(--adp-cell-background-color-selected)}.air-datepicker-cell.-selected-.-current-{color:#fff;background:var(--adp-cell-background-color-selected)}.air-datepicker-cell.-selected-.-focus-{background:var(--adp-cell-background-color-selected-hover)}.air-datepicker-body{transition:all var(--adp-transition-duration) var(--adp-transition-ease)}.air-datepicker-body.-hidden-{display:none}.air-datepicker-body--day-names{display:grid;grid-template-columns:repeat(7, var(--adp-day-cell-width));margin:8px 0 3px}.air-datepicker-body--day-name{color:var(--adp-day-name-color);display:flex;align-items:center;justify-content:center;flex:1;text-align:center;text-transform:uppercase;font-size:.8em}.air-datepicker-body--day-name.-clickable-{cursor:pointer}.air-datepicker-body--day-name.-clickable-:hover{color:var(--adp-day-name-color-hover)}.air-datepicker-body--cells{display:grid}.air-datepicker-body--cells.-days-{grid-template-columns:repeat(7, var(--adp-day-cell-width));grid-auto-rows:var(--adp-day-cell-height)}.air-datepicker-body--cells.-months-{grid-template-columns:repeat(3, 1fr);grid-auto-rows:var(--adp-month-cell-height)}.air-datepicker-body--cells.-years-{grid-template-columns:repeat(4, 1fr);grid-auto-rows:var(--adp-year-cell-height)}.air-datepicker-nav{display:flex;justify-content:space-between;border-bottom:1px solid var(--adp-border-color-inner);min-height:var(--adp-nav-height);padding:var(--adp-padding);box-sizing:content-box}.-only-timepicker- .air-datepicker-nav{display:none}.air-datepicker-nav--title,.air-datepicker-nav--action{display:flex;cursor:pointer;align-items:center;justify-content:center}.air-datepicker-nav--action{width:var(--adp-nav-action-size);border-radius:var(--adp-border-radius);-webkit-user-select:none;-moz-user-select:none;user-select:none}.air-datepicker-nav--action:hover{background:var(--adp-background-color-hover)}.air-datepicker-nav--action:active{background:var(--adp-background-color-active)}.air-datepicker-nav--action.-disabled-{visibility:hidden}.air-datepicker-nav--action svg{width:32px;height:32px}.air-datepicker-nav--action path{fill:none;stroke:var(--adp-nav-arrow-color);stroke-width:2px}.air-datepicker-nav--title{border-radius:var(--adp-border-radius);padding:0 8px}.air-datepicker-nav--title i{font-style:normal;color:var(--adp-nav-color-secondary);margin-left:.3em}.air-datepicker-nav--title:hover{background:var(--adp-background-color-hover)}.air-datepicker-nav--title:active{background:var(--adp-background-color-active)}.air-datepicker-nav--title.-disabled-{cursor:default;background:none}.air-datepicker-buttons{display:grid;grid-auto-columns:1fr;grid-auto-flow:column}.air-datepicker-button{display:inline-flex;color:var(--adp-btn-color);border-radius:var(--adp-btn-border-radius);cursor:pointer;height:var(--adp-btn-height);border:none;background:rgba(255, 255, 255, 0)}.air-datepicker-button:hover{color:var(--adp-btn-color-hover);background:var(--adp-btn-background-color-hover)}.air-datepicker-button:focus{color:var(--adp-btn-color-hover);background:var(--adp-btn-background-color-hover);outline:none}.air-datepicker-button:active{background:var(--adp-btn-background-color-active)}.air-datepicker-button span{outline:none;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.air-datepicker-time{display:grid;grid-template-columns:max-content 1fr;grid-column-gap:12px;align-items:center;position:relative;padding:0 var(--adp-time-padding-inner)}.-only-timepicker- .air-datepicker-time{border-top:none}.air-datepicker-time--current{display:flex;align-items:center;flex:1;font-size:14px;text-align:center}.air-datepicker-time--current-colon{margin:0 2px 3px;line-height:1}.air-datepicker-time--current-hours,.air-datepicker-time--current-minutes{line-height:1;font-size:19px;font-family:"Century Gothic",CenturyGothic,AppleGothic,sans-serif;position:relative;z-index:1}.air-datepicker-time--current-hours:after,.air-datepicker-time--current-minutes:after{content:"";background:var(--adp-background-color-hover);border-radius:var(--adp-border-radius);position:absolute;left:-2px;top:-3px;right:-2px;bottom:-2px;z-index:-1;opacity:0}.air-datepicker-time--current-hours.-focus-:after,.air-datepicker-time--current-minutes.-focus-:after{opacity:1}.air-datepicker-time--current-ampm{text-transform:uppercase;align-self:flex-end;color:var(--adp-time-day-period-color);margin-left:6px;font-size:11px;margin-bottom:1px}.air-datepicker-time--row{display:flex;align-items:center;font-size:11px;height:17px;background:linear-gradient(to right, var(--adp-time-track-color), var(--adp-time-track-color)) left 50%/100% var(--adp-time-track-height) no-repeat}.air-datepicker-time--row:first-child{margin-bottom:4px}.air-datepicker-time--row input[type=range]{background:none;cursor:pointer;flex:1;height:100%;width:100%;padding:0;margin:0;-webkit-appearance:none}.air-datepicker-time--row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none}.air-datepicker-time--row input[type=range]::-ms-tooltip{display:none}.air-datepicker-time--row input[type=range]:hover::-webkit-slider-thumb{border-color:var(--adp-time-track-color-hover)}.air-datepicker-time--row input[type=range]:hover::-moz-range-thumb{border-color:var(--adp-time-track-color-hover)}.air-datepicker-time--row input[type=range]:hover::-ms-thumb{border-color:var(--adp-time-track-color-hover)}.air-datepicker-time--row input[type=range]:focus{outline:none}.air-datepicker-time--row input[type=range]:focus::-webkit-slider-thumb{background:var(--adp-cell-background-color-selected);border-color:var(--adp-cell-background-color-selected)}.air-datepicker-time--row input[type=range]:focus::-moz-range-thumb{background:var(--adp-cell-background-color-selected);border-color:var(--adp-cell-background-color-selected)}.air-datepicker-time--row input[type=range]:focus::-ms-thumb{background:var(--adp-cell-background-color-selected);border-color:var(--adp-cell-background-color-selected)}.air-datepicker-time--row input[type=range]::-webkit-slider-thumb{box-sizing:border-box;height:12px;width:12px;border-radius:3px;border:1px solid var(--adp-time-track-color);background:#fff;cursor:pointer;-webkit-transition:background var(--adp-transition-duration);transition:background var(--adp-transition-duration)}.air-datepicker-time--row input[type=range]::-moz-range-thumb{box-sizing:border-box;height:12px;width:12px;border-radius:3px;border:1px solid var(--adp-time-track-color);background:#fff;cursor:pointer;-moz-transition:background var(--adp-transition-duration);transition:background var(--adp-transition-duration)}.air-datepicker-time--row input[type=range]::-ms-thumb{box-sizing:border-box;height:12px;width:12px;border-radius:3px;border:1px solid var(--adp-time-track-color);background:#fff;cursor:pointer;-ms-transition:background var(--adp-transition-duration);transition:background var(--adp-transition-duration)}.air-datepicker-time--row input[type=range]::-webkit-slider-thumb{margin-top:calc(var(--adp-time-thumb-size)/2*-1)}.air-datepicker-time--row input[type=range]::-webkit-slider-runnable-track{border:none;height:var(--adp-time-track-height);cursor:pointer;color:rgba(0, 0, 0, 0);background:rgba(0, 0, 0, 0)}.air-datepicker-time--row input[type=range]::-moz-range-track{border:none;height:var(--adp-time-track-height);cursor:pointer;color:rgba(0, 0, 0, 0);background:rgba(0, 0, 0, 0)}.air-datepicker-time--row input[type=range]::-ms-track{border:none;height:var(--adp-time-track-height);cursor:pointer;color:rgba(0, 0, 0, 0);background:rgba(0, 0, 0, 0)}.air-datepicker-time--row input[type=range]::-ms-fill-lower{background:rgba(0, 0, 0, 0)}.air-datepicker-time--row input[type=range]::-ms-fill-upper{background:rgba(0, 0, 0, 0)}.air-datepicker{--adp-font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";--adp-font-size:14px;--adp-width:246px;--adp-z-index:100;--adp-padding:4px;--adp-grid-areas:"nav" "body" "timepicker" "buttons";--adp-transition-duration:.3s;--adp-transition-ease:ease-out;--adp-transition-offset:8px;--adp-background-color:#fff;--adp-background-color-hover:#f0f0f0;--adp-background-color-active:#eaeaea;--adp-background-color-in-range:rgba(92, 196, 239, .1);--adp-background-color-in-range-focused:rgba(92, 196, 239, .2);--adp-background-color-selected-other-month-focused:#8ad5f4;--adp-background-color-selected-other-month:#a2ddf6;--adp-color:#4a4a4a;--adp-color-secondary:#9c9c9c;--adp-accent-color:#4eb5e6;--adp-color-current-date:var(--adp-accent-color);--adp-color-other-month:#dedede;--adp-color-disabled:#aeaeae;--adp-color-disabled-in-range:#939393;--adp-color-other-month-hover:#c5c5c5;--adp-border-color:#dbdbdb;--adp-border-color-inner:#efefef;--adp-border-radius:4px;--adp-border-color-inline:#d7d7d7;--adp-nav-height:32px;--adp-nav-arrow-color:var(--adp-color-secondary);--adp-nav-action-size:32px;--adp-nav-color-secondary:var(--adp-color-secondary);--adp-day-name-color:#ff9a19;--adp-day-name-color-hover:#8ad5f4;--adp-day-cell-width:1fr;--adp-day-cell-height:32px;--adp-month-cell-height:42px;--adp-year-cell-height:56px;--adp-pointer-size:10px;--adp-poiner-border-radius:2px;--adp-pointer-offset:14px;--adp-cell-border-radius:4px;--adp-cell-background-color-hover:var(--adp-background-color-hover);--adp-cell-background-color-selected:#5cc4ef;--adp-cell-background-color-selected-hover:#45bced;--adp-cell-background-color-in-range:rgba(92, 196, 239, 0.1);--adp-cell-background-color-in-range-hover:rgba(92, 196, 239, 0.2);--adp-cell-border-color-in-range:var(--adp-cell-background-color-selected);--adp-btn-height:32px;--adp-btn-color:var(--adp-accent-color);--adp-btn-color-hover:var(--adp-color);--adp-btn-border-radius:var(--adp-border-radius);--adp-btn-background-color-hover:var(--adp-background-color-hover);--adp-btn-background-color-active:var(--adp-background-color-active);--adp-time-track-height:1px;--adp-time-track-color:#dedede;--adp-time-track-color-hover:#b1b1b1;--adp-time-thumb-size:12px;--adp-time-padding-inner:10px;--adp-time-day-period-color:var(--adp-color-secondary);--adp-mobile-font-size:16px;--adp-mobile-nav-height:40px;--adp-mobile-width:320px;--adp-mobile-day-cell-height:38px;--adp-mobile-month-cell-height:48px;--adp-mobile-year-cell-height:64px}.air-datepicker-overlay{--adp-overlay-background-color:rgba(0, 0, 0, .3);--adp-overlay-transition-duration:.3s;--adp-overlay-transition-ease:ease-out;--adp-overlay-z-index:99}.air-datepicker{background:var(--adp-background-color);border:1px solid var(--adp-border-color);box-shadow:0 4px 12px rgba(0, 0, 0, 0.15);border-radius:var(--adp-border-radius);box-sizing:content-box;display:grid;grid-template-columns:1fr;grid-template-rows:repeat(4, max-content);grid-template-areas:var(--adp-grid-areas);font-family:var(--adp-font-family),sans-serif;font-size:var(--adp-font-size);color:var(--adp-color);width:var(--adp-width);position:absolute;transition:opacity var(--adp-transition-duration) var(--adp-transition-ease),transform var(--adp-transition-duration) var(--adp-transition-ease);z-index:var(--adp-z-index)}.air-datepicker:not(.-custom-position-){opacity:0}.air-datepicker.-from-top-{transform:translateY(calc(var(--adp-transition-offset) * -1))}.air-datepicker.-from-right-{transform:translateX(var(--adp-transition-offset))}.air-datepicker.-from-bottom-{transform:translateY(var(--adp-transition-offset))}.air-datepicker.-from-left-{transform:translateX(calc(var(--adp-transition-offset) * -1))}.air-datepicker.-active-:not(.-custom-position-){transform:translate(0, 0);opacity:1}.air-datepicker.-active-.-custom-position-{transition:none}.air-datepicker.-inline-{border-color:var(--adp-border-color-inline);box-shadow:none;position:static;left:auto;right:auto;opacity:1;transform:none}.air-datepicker.-inline- .air-datepicker--pointer{display:none}.air-datepicker.-is-mobile-{--adp-font-size:var(--adp-mobile-font-size);--adp-day-cell-height:var(--adp-mobile-day-cell-height);--adp-month-cell-height:var(--adp-mobile-month-cell-height);--adp-year-cell-height:var(--adp-mobile-year-cell-height);--adp-nav-height:var(--adp-mobile-nav-height);--adp-nav-action-size:var(--adp-mobile-nav-height);position:fixed;width:var(--adp-mobile-width);border:none}.air-datepicker.-is-mobile- *{-webkit-tap-highlight-color:rgba(0, 0, 0, 0)}.air-datepicker.-is-mobile- .air-datepicker--pointer{display:none}.air-datepicker.-is-mobile-:not(.-custom-position-){transform:translate(-50%, calc(-50% + var(--adp-transition-offset)))}.air-datepicker.-is-mobile-.-active-:not(.-custom-position-){transform:translate(-50%, -50%)}.air-datepicker.-custom-position-{transition:none}.air-datepicker-global-container{position:absolute;left:0;top:0}.air-datepicker--pointer{--pointer-half-size:calc(var(--adp-pointer-size) / 2);position:absolute;width:var(--adp-pointer-size);height:var(--adp-pointer-size);z-index:-1}.air-datepicker--pointer:after{content:"";position:absolute;background:#fff;border-top:1px solid var(--adp-border-color-inline);border-right:1px solid var(--adp-border-color-inline);border-top-right-radius:var(--adp-poiner-border-radius);width:var(--adp-pointer-size);height:var(--adp-pointer-size);box-sizing:border-box}.-top-left- .air-datepicker--pointer,.-top-center- .air-datepicker--pointer,.-top-right- .air-datepicker--pointer,[data-popper-placement^=top] .air-datepicker--pointer{top:calc(100% - var(--pointer-half-size) + 1px)}.-top-left- .air-datepicker--pointer:after,.-top-center- .air-datepicker--pointer:after,.-top-right- .air-datepicker--pointer:after,[data-popper-placement^=top] .air-datepicker--pointer:after{transform:rotate(135deg)}.-right-top- .air-datepicker--pointer,.-right-center- .air-datepicker--pointer,.-right-bottom- .air-datepicker--pointer,[data-popper-placement^=right] .air-datepicker--pointer{right:calc(100% - var(--pointer-half-size) + 1px)}.-right-top- .air-datepicker--pointer:after,.-right-center- .air-datepicker--pointer:after,.-right-bottom- .air-datepicker--pointer:after,[data-popper-placement^=right] .air-datepicker--pointer:after{transform:rotate(225deg)}.-bottom-left- .air-datepicker--pointer,.-bottom-center- .air-datepicker--pointer,.-bottom-right- .air-datepicker--pointer,[data-popper-placement^=bottom] .air-datepicker--pointer{bottom:calc(100% - var(--pointer-half-size) + 1px)}.-bottom-left- .air-datepicker--pointer:after,.-bottom-center- .air-datepicker--pointer:after,.-bottom-right- .air-datepicker--pointer:after,[data-popper-placement^=bottom] .air-datepicker--pointer:after{transform:rotate(315deg)}.-left-top- .air-datepicker--pointer,.-left-center- .air-datepicker--pointer,.-left-bottom- .air-datepicker--pointer,[data-popper-placement^=left] .air-datepicker--pointer{left:calc(100% - var(--pointer-half-size) + 1px)}.-left-top- .air-datepicker--pointer:after,.-left-center- .air-datepicker--pointer:after,.-left-bottom- .air-datepicker--pointer:after,[data-popper-placement^=left] .air-datepicker--pointer:after{transform:rotate(45deg)}.-top-left- .air-datepicker--pointer,.-bottom-left- .air-datepicker--pointer{left:var(--adp-pointer-offset)}.-top-right- .air-datepicker--pointer,.-bottom-right- .air-datepicker--pointer{right:var(--adp-pointer-offset)}.-top-center- .air-datepicker--pointer,.-bottom-center- .air-datepicker--pointer{left:calc(50% - var(--adp-pointer-size)/2)}.-left-top- .air-datepicker--pointer,.-right-top- .air-datepicker--pointer{top:var(--adp-pointer-offset)}.-left-bottom- .air-datepicker--pointer,.-right-bottom- .air-datepicker--pointer{bottom:var(--adp-pointer-offset)}.-left-center- .air-datepicker--pointer,.-right-center- .air-datepicker--pointer{top:calc(50% - var(--adp-pointer-size)/2)}.air-datepicker--navigation{grid-area:nav}.air-datepicker--content{box-sizing:content-box;padding:var(--adp-padding);grid-area:body}.-only-timepicker- .air-datepicker--content{display:none}.air-datepicker--time{grid-area:timepicker}.air-datepicker--buttons{grid-area:buttons}.air-datepicker--buttons,.air-datepicker--time{padding:var(--adp-padding);border-top:1px solid var(--adp-border-color-inner)}.air-datepicker-overlay{position:fixed;background:var(--adp-overlay-background-color);left:0;top:0;width:0;height:0;opacity:0;transition:opacity var(--adp-overlay-transition-duration) var(--adp-overlay-transition-ease),left 0s,height 0s,width 0s;transition-delay:0s,var(--adp-overlay-transition-duration),var(--adp-overlay-transition-duration),var(--adp-overlay-transition-duration);z-index:var(--adp-overlay-z-index)}.air-datepicker-overlay.-active-{opacity:1;width:100%;height:100%;transition:opacity var(--adp-overlay-transition-duration) var(--adp-overlay-transition-ease),height 0s,width 0s}.air-datepicker{--adp-cell-background-color-in-range:unset;--adp-hover-color:unset;--adp-cell-border-width:2px;font-family:inherit;font-size:var(--post-device-font-size-8);width:var(--post-core-dimension-296);border-radius:var(--post-device-border-radius-1);box-shadow:var(--post-device-elevation-300);font-weight:700;border:none}.air-datepicker.-inline-{box-shadow:var(--post-device-elevation-300)}.air-datepicker *{font-family:inherit}.air-datepicker .air-datepicker--navigation{border-start-start-radius:inherit;border-start-end-radius:inherit}.air-datepicker .air-datepicker--navigation .air-datepicker-nav{border-start-start-radius:inherit;border-start-end-radius:inherit;border-block-end:none;background:var(--post-core-color-sandgrey-012);padding:var(--post-device-spacing-padding-15)}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title{margin-inline-start:0;margin-inline-end:auto;justify-content:flex-start;display:flex;align-items:center;padding:0 0 0 var(--post-device-spacing-padding-15);color:var(--post-scheme-color-interactive-button-tertiary-enabled-fg)}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title.-disabled-:hover{color:var(--post-scheme-color-interactive-button-tertiary-enabled-fg) !important}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title:hover{background:unset;color:var(--post-scheme-color-interactive-button-tertiary-hover-fg)}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title:has(button:disabled){color:var(--post-scheme-color-interactive-button-tertiary-disabled-fg)}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title button{padding:0;overflow:visible;border:0;background:none;color:var(--post-scheme-color-interactive-button-secondary-enabled-fg);font:inherit;-webkit-user-select:none;user-select:none;appearance:button;border-radius:var(--post-device-border-radius-1);display:flex;align-items:center;gap:var(--post-device-spacing-gap-3);color:inherit;cursor:inherit}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title button{background-color:ButtonFace !important}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title button:hover{background-color:Highlight !important}}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title button:not(.-disabled-){outline-offset:var(--post-device-spacing-padding-2) !important;outline:var(--post-scheme-color-interactive-focus-stroke) none var(--post-device-border-width-focus) !important}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title button:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title button:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title button:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title button:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title .placeholder{flex-grow:2;pointer-events:none}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action{height:var(--post-device-sizing-interactive-button-height-4);width:var(--post-device-sizing-interactive-button-height-4)}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action[data-action=next]{margin-inline-start:var(--post-device-spacing-gap-inline-4)}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action:hover{background:unset;color:var(--post-scheme-color-interactive-button-tertiary-hover-fg)}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action:has(:disabled){color:var(--post-scheme-color-interactive-button-tertiary-disabled-fg)}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action button{padding:0;overflow:visible;border:0;background:none;color:var(--post-scheme-color-interactive-button-secondary-enabled-fg);font:inherit;-webkit-user-select:none;user-select:none;appearance:button;height:var(--post-device-sizing-interactive-button-height-4);width:var(--post-device-sizing-interactive-button-height-4);border-radius:var(--post-device-border-radius-round);color:inherit;cursor:inherit}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action button{background-color:ButtonFace !important}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action button:hover{background-color:Highlight !important}}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action button:not(.-disabled-){outline-offset:var(--post-device-spacing-padding-2) !important;outline:var(--post-scheme-color-interactive-focus-stroke) none var(--post-device-border-width-focus) !important}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action button:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action button:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action button:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action button:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}.air-datepicker .air-datepicker--content{padding:0 !important}.air-datepicker .air-datepicker--content .air-datepicker-body--day-names{background:var(--post-core-color-sandgrey-012);margin:0;padding-block-start:var(--post-device-spacing-padding-13);padding-block-end:var(--post-device-spacing-padding-5);padding-inline:var(--post-device-spacing-padding-15)}.air-datepicker .air-datepicker--content .air-datepicker-body--day-names .air-datepicker-body--day-name{text-transform:capitalize;font-size:inherit;color:var(--post-scheme-color-surface-brand-fg)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells{min-height:var(--post-core-dimension-182);padding:var(--post-device-spacing-padding-15);background:var(--post-scheme-color-surface-accent1-bg);row-gap:var(--post-device-spacing-gap-2);border-radius:var(--post-device-border-radius-1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days-{grid-template-columns:repeat(7, var(--post-core-dimension-40));grid-auto-rows:var(--post-core-dimension-40)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell>*{box-sizing:border-box}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell::after{box-sizing:border-box}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-{width:var(--post-core-dimension-40);height:var(--post-core-dimension-40);border-radius:var(--post-device-border-radius-round)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-:not(.-disabled-){outline-offset:var(--post-device-spacing-padding-2) !important;outline:var(--post-scheme-color-interactive-focus-stroke) none var(--post-device-border-width-focus) !important}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important;z-index:3}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important;z-index:3}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-.-other-month-,.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-:empty{pointer-events:none}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-:hover:not(.-disabled-,.-other-month-,.-in-range-):not(:empty){color:var(--post-scheme-color-interactive-primary-hover-fg3)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-:hover:not(.-disabled-,.-other-month-,.-in-range-):not(:empty):not(.-current-){background:var(--post-scheme-color-interactive-primary-hover-bg2)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-:hover:not(.-disabled-,.-other-month-,.-in-range-):not(:empty):not(.-current-){background-color:ButtonFace;color:ButtonText}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-:hover:not(.-disabled-,.-other-month-,.-in-range-):not(:empty).-current-{color:var(--post-scheme-color-interactive-primary-hover-fg1);border-color:var(--post-scheme-color-interactive-primary-hover-stroke)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-.-selected-:not(.-other-month-){color:var(--post-scheme-color-interactive-primary-selected-fg3);background:var(--post-scheme-color-interactive-primary-selected-bg4)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-.-selected-:not(.-other-month-):not(.-range-from-):not(.-range-to-,.-other-month-){border-color:var(--post-scheme-color-interactive-primary-selected-stroke1)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-.-selected-:not(.-other-month-){background-color:Highlight;color:HighlightText}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-.-disabled-:not(.-other-month-){user-select:none;pointer-events:none;color:var(--post-scheme-color-interactive-primary-disabled-fg1);border:var(--post-device-border-width-default) dashed var(--post-scheme-color-interactive-primary-disabled-stroke);width:var(--post-core-dimension-38);height:var(--post-core-dimension-38);outline:none;display:flex;align-self:center;justify-self:center}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-.-current-:not(.-disabled-,.-other-month-):not(:empty){border:var(--adp-cell-border-width) solid var(--post-scheme-color-interactive-primary-enabled-stroke)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-.-current-:not(.-disabled-,.-other-month-):not(:empty).-selected-{background:var(--post-scheme-color-interactive-primary-selected-bg4);color:var(--post-scheme-color-interactive-primary-selected-fg3);border-color:var(--post-scheme-color-interactive-primary-selected-stroke1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-.-current-:not(.-disabled-,.-other-month-):not(:empty).-selected-:hover{border-color:var(--post-scheme-color-interactive-primary-hover-stroke);background:var(--post-scheme-color-interactive-primary-hover-bg2);color:var(--post-scheme-color-interactive-primary-hover-fg3)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years-{grid-template-columns:repeat(4, var(--post-core-dimension-64));grid-auto-rows:var(--post-core-dimension-40);column-gap:var(--post-device-spacing-gap-inline-8)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-{width:var(--post-core-dimension-64);height:var(--post-core-dimension-40);border-radius:var(--post-device-border-radius-round);color:var(--post-scheme-color-interactive-primary-enabled-fg1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-.-in-range-{background-color:rgba(0,0,0,0)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-.-other-decade-{color:var(--post-scheme-color-interactive-primary-enabled-fg1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-:not(.-disabled-){outline-offset:var(--post-device-spacing-padding-2) !important;outline:var(--post-scheme-color-interactive-focus-stroke) none var(--post-device-border-width-focus) !important}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important;z-index:3}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important;z-index:3}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-:hover:not(.-disabled-){color:var(--post-scheme-color-interactive-primary-hover-fg3);background:var(--post-scheme-color-interactive-primary-hover-bg2);border-color:var(--post-scheme-color-interactive-primary-hover-bg2)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-.-selected-:not(.-selected-~.-selected-){color:var(--post-scheme-color-interactive-primary-selected-fg3);background-color:var(--post-scheme-color-interactive-primary-selected-bg4);border:var(--adp-cell-border-width) solid var(--post-scheme-color-interactive-primary-selected-stroke1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-.-disabled-:not(.-day-.-other-decade-){user-select:none;pointer-events:none;color:var(--post-scheme-color-interactive-primary-disabled-fg1);border:var(--adp-cell-border-width) dashed var(--post-scheme-color-interactive-primary-disabled-stroke)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-.-current-{border:var(--adp-cell-border-width) solid var(--post-scheme-color-interactive-primary-enabled-stroke)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-.-current-:hover{border-color:var(--post-scheme-color-interactive-primary-hover-stroke);background:var(--post-scheme-color-interactive-primary-hover-bg2)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months-{grid-template-columns:repeat(4, var(--post-core-dimension-64));padding:var(--post-device-spacing-padding-15);column-gap:var(--post-device-spacing-gap-inline-8);min-height:var(--post-core-dimension-182);text-transform:uppercase}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-{width:var(--post-core-dimension-64);height:var(--post-core-dimension-40);border-radius:var(--post-device-border-radius-round);color:var(--post-scheme-color-interactive-primary-enabled-fg1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-.-in-range-{background-color:rgba(0,0,0,0)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-.-other-decade-{color:var(--post-scheme-color-interactive-primary-enabled-fg1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-:not(.-disabled-){outline-offset:var(--post-device-spacing-padding-2) !important;outline:var(--post-scheme-color-interactive-focus-stroke) none var(--post-device-border-width-focus) !important}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-:hover:not(.-disabled-){color:var(--post-scheme-color-interactive-primary-hover-fg3);border-color:var(--post-scheme-color-interactive-primary-hover-bg2)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-:hover:not(.-disabled-):not(.-current-){background:var(--post-scheme-color-interactive-primary-hover-bg2)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-:hover:not(.-disabled-):not(.-current-){background-color:ButtonFace;color:ButtonText}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-.-selected-:not(.-selected-~.-selected-){color:var(--post-scheme-color-interactive-primary-selected-fg3);background-color:var(--post-scheme-color-interactive-primary-selected-bg4);border:var(--adp-cell-border-width) solid var(--post-scheme-color-interactive-primary-selected-stroke1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-.-disabled-{user-select:none;pointer-events:none;color:var(--post-scheme-color-interactive-primary-disabled-fg1);border:var(--adp-cell-border-width) dashed var(--post-scheme-color-interactive-primary-disabled-stroke)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-.-current-{border:var(--adp-cell-border-width) solid var(--post-scheme-color-interactive-primary-enabled-stroke)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-.-current-:hover{border-color:var(--post-scheme-color-interactive-primary-hover-stroke);color:var(--post-scheme-color-interactive-primary-hover-fg1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell{position:relative;display:flex;justify-content:center;align-items:center;flex-shrink:0;flex-direction:column;color:var(--post-scheme-color-interactive-primary-enabled-fg1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell.-focus-:hover{background:none}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-{position:relative;border:0}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-::after{content:"";position:absolute;inset:0;display:block;width:var(--post-core-dimension-40);height:var(--post-core-dimension-40)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-current-::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-current-::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-.-current-::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-.-current-::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-.-current-::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-.-current-::after{inset:calc(var(--adp-cell-border-width)*-1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-current-.-selected-:hover::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-current-.-selected-:hover::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-.-current-.-selected-:hover::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-.-current-.-selected-:hover::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-.-current-.-selected-:hover::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-.-current-.-selected-:hover::after{inset:0}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-::before{z-index:-2}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-::after{z-index:-1}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-:hover:not(.-current-,.-disabled-),.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:hover:not(.-current-,.-disabled-),.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:hover:not(.-current-,.-disabled-){color:var(--post-scheme-color-interactive-primary-hover-fg3)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-:hover:not(.-current-,.-disabled-)::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:hover:not(.-current-,.-disabled-)::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:hover:not(.-current-,.-disabled-)::after{background:var(--post-scheme-color-interactive-primary-hover-bg2);border-radius:var(--post-device-border-radius-round);border-color:var(--post-scheme-color-interactive-primary-hover-bg2)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-:hover:not(.-current-,.-disabled-)::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:hover:not(.-current-,.-disabled-)::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:hover:not(.-current-,.-disabled-)::after{border:none}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-current-:not(.-disabled-,.-other-month-)::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-.-current-:not(.-disabled-,.-other-month-)::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-.-current-:not(.-disabled-,.-other-month-)::after{border:var(--post-device-border-width-default) solid var(--post-scheme-color-interactive-primary-selected-stroke1);border-radius:var(--post-device-border-radius-round);color:var(--post-scheme-color-interactive-primary-selected-fg3)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-current-:not(.-disabled-,.-other-month-)::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-.-current-:not(.-disabled-,.-other-month-)::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-.-current-:not(.-disabled-,.-other-month-)::after{forced-color-adjust:none;border-color:Highlight}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-current-:not(.-disabled-,.-other-month-):hover,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-.-current-:not(.-disabled-,.-other-month-):hover,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-.-current-:not(.-disabled-,.-other-month-):hover{color:var(--post-scheme-color-interactive-primary-hover-fg3)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-current-:not(.-disabled-,.-other-month-):hover::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-.-current-:not(.-disabled-,.-other-month-):hover::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-.-current-:not(.-disabled-,.-other-month-):hover::after{border-color:var(--post-scheme-color-interactive-primary-hover-stroke);color:var(--post-scheme-color-interactive-primary-hover-fg3);background:var(--post-scheme-color-interactive-primary-hover-bg2)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-{background-color:rgba(0,0,0,0);z-index:2}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-:not(.-disabled-){outline-offset:var(--post-device-spacing-padding-2) !important;outline:var(--post-scheme-color-interactive-focus-stroke) none var(--post-device-border-width-focus) !important}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important;z-index:3}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important;z-index:3}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-:not(.-disabled-):hover::after{background-color:ButtonFace;color:ButtonText}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-:not(.-other-month-)::before{background-color:var(--post-scheme-color-interactive-primary-selected-bg3);border-block:var(--post-device-border-width-default) solid var(--post-scheme-color-interactive-primary-selected-stroke1)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-:not(.-other-month-)::before{forced-color-adjust:none}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-disabled-:not(.-other-month-){color:var(--post-scheme-color-interactive-primary-disabled-fg1) !important}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-disabled-:not(.-other-month-)::after{background-color:var(--post-scheme-color-surface-accent1-bg);border-radius:var(--post-device-border-radius-round);border:var(--post-device-border-width-default) dashed var(--post-scheme-color-interactive-primary-disabled-stroke);color:var(--post-scheme-color-interactive-primary-disabled-fg1) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-disabled-:not(.-other-month-)::after{forced-color-adjust:none}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-),.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-){z-index:1}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-).-selected-:not(.-disabled-):hover,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-).-selected-:not(.-disabled-):hover{border:none}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-):not(.-disabled-)::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-):not(.-disabled-)::before{background:var(--post-scheme-color-interactive-primary-selected-bg3);border-block:var(--post-device-border-width-default) solid var(--post-scheme-color-interactive-primary-selected-stroke1)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-):not(.-disabled-)::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-):not(.-disabled-)::before{forced-color-adjust:none}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-):not(.-disabled-).-selected-::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-):not(.-disabled-).-selected-::after{border-radius:var(--post-device-border-radius-round);background:var(--post-scheme-color-interactive-primary-selected-bg4)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-):not(.-disabled-).-selected-::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-):not(.-disabled-).-selected-::after{background-color:Highlight;color:HighlightText}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-):not(.-disabled-):hover,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-):not(.-disabled-):hover{color:var(--post-scheme-color-interactive-primary-hover-fg3)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-):not(.-disabled-):hover::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-):not(.-disabled-):hover::before{forced-color-adjust:none}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-):not(.-disabled-):hover::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-):not(.-disabled-):hover::after{background:var(--post-scheme-color-interactive-primary-hover-bg2);border-color:var(--post-scheme-color-interactive-primary-hover-bg2)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-):not(.-disabled-):hover::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-):not(.-disabled-):hover::after{background-color:Highlight;color:HighlightText}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-,.-disabled-):hover::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-,.-disabled-).-selected-::before{inset-inline-start:auto;width:50%;background-color:var(--post-scheme-color-interactive-primary-selected-bg3);border-block:var(--post-device-border-width-default) solid var(--post-scheme-color-interactive-primary-selected-stroke1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-,.-disabled-):hover::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-,.-disabled-).-selected-::before{inset-inline-end:auto;width:50%;background-color:var(--post-scheme-color-interactive-primary-selected-bg3);border-block:var(--post-device-border-width-default) solid var(--post-scheme-color-interactive-primary-selected-stroke1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-.-range-from-:hover::before{background:none;border:none}.calendar-input,.calendar-input-range{position:relative}.calendar-input button,.calendar-input-range button{z-index:1;padding:0;position:absolute;transform:translateY(-50%);background:none;border:0;display:flex;align-items:center;justify-content:center;border-radius:var(--post-device-border-radius-focus);transition:opacity .2s ease,visibility .2s ease,fill .2s ease;right:var(--post-core-dimension-14);top:calc(var(--post-device-sizing-interactive-button-height-6) / 2);-webkit-appearance:none;appearance:none;color:var(--post-scheme-color-interactive-primary-enabled-fg1);outline-offset:4px;right:var(--post-core-dimension-14)}.calendar-input button post-icon,.calendar-input-range button post-icon{width:var(--post-device-sizing-notification-1);height:var(--post-device-sizing-notification-1)}.calendar-input button:not([disabled]),.calendar-input-range button:not([disabled]){cursor:pointer}.calendar-input button:not([disabled]) :where(:hover>*) post-icon,.calendar-input-range button:not([disabled]) :where(:hover>*) post-icon{color:var(--post-scheme-color-interactive-input-hover-fg)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.calendar-input button:not([disabled]) :where(:hover>*) post-icon,.calendar-input-range button:not([disabled]) :where(:hover>*) post-icon{color:Highlight}}.calendar-input button[disabled],.calendar-input-range button[disabled]{color:var(--post-scheme-color-interactive-primary-disabled-fg1)}.calendar-input ::slotted(input),.calendar-input-range ::slotted(input){padding-inline-end:calc( var(--post-core-dimension-14) + var(--post-device-spacing-gap-inline-8) + var(--post-device-sizing-notification-1) ) !important}:host ::slotted(input.form-control:is(.is-invalid,.is-valid):not(:disabled)){background-position:top 50% right calc( var(--post-core-dimension-14) + var(--post-device-spacing-gap-inline-8) + var(--post-device-sizing-notification-1) ) !important}:host [dir=rtl] .calendar-input button,:host [dir=rtl] .calendar-input-range button{right:auto;left:var(--post-core-dimension-14)}:host [dir=rtl] .air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action{transform:scaleX(-1)}`;
3876
+ /**
3877
+ * Pad the year component of an ISO date string to 4 digits.
3878
+ * @param isoDateString An ISO formatted date string (YYYY-MM-DD).
3879
+ * @returns The padded ISO date string.
3880
+ */
3881
+ function padIsoDate(isoDateString) {
3882
+ const valueParts = isoDateString.split('-');
3883
+ return `${valueParts[0].padStart(4, '0')}-${valueParts[1]}-${valueParts[2]}`;
3884
+ }
3885
+ /**
3886
+ * Convert an ISO 8601 formatted date string (YYYY-MM-DD) to a localtime date object.
3887
+ * @param isoDateString An ISO formatted, localtime date string.
3888
+ * @returns A localtime date object.
3889
+ */
3890
+ function isoToDate(isoDateString) {
3891
+ return new Date(`${padIsoDate(isoDateString)}T00:00`);
3892
+ }
3893
+ /**
3894
+ * Convert a date object to an ISO 8601 formatted date string (YYYY-MM-DD).
3895
+ * @param date A localtime date object.
3896
+ * @returns An ISO formatted, localtime date string.
3897
+ */
3898
+ function dateToIso(date) {
3899
+ // The swedish locale (`sv`) happens to format the date in the exact ISO format (YYYY-MM-DD),
3900
+ // so we can use it as a shortcut instead of manually constructing the string from the date parts.
3901
+ return date.toLocaleDateString('sv', DATE_FORMAT_STRING_OPTIONS);
3902
+ }
3903
+ /**
3904
+ * Convert a date object to a localized date string.
3905
+ * @param date A localtime date object.
3906
+ * @param localeCode The BCP 47 locale code to use for formatting.
3907
+ * @returns A localized date string, depending on the given `localeCode`.
3908
+ */
3909
+ function dateToString(date, localeCode) {
3910
+ const dateString = date.toLocaleDateString(localeCode, DATE_FORMAT_STRING_OPTIONS);
3911
+ const yearString = date.getFullYear().toString();
3912
+ if (yearString.length < 4) {
3913
+ return dateString.replace(yearString, yearString.padStart(4, '0'));
3914
+ }
3915
+ return dateString;
3916
+ }
3917
+ /**
3918
+ * Convert a localized date string to a date object.
3919
+ * The date string should be in the same format as the date picker's `dateFormat`, which depends on the given `localeCode`.
3920
+ * @param localeDateString A localized date string.
3921
+ * @param dateFormat The date format string (e.g. "dd.mm.yyyy").
3922
+ * @param isBuddhistCalendar Whether the locale uses the Buddhist calendar.
3923
+ * @returns A localtime date object.
3924
+ */
3925
+ function stringToDate(localeDateString, dateFormat, isBuddhistCalendar) {
3926
+ // Match the separator chars in the date format (e.g. "." for "dd.mm.yyyy", etc.).
3927
+ const dateSeparator = dateFormat.match(DATE_FORMAT_SEPARATOR_REGEX)[0];
3928
+ // Remove the text direction markers, split the date string into its parts (e.g. ["31", "01", "2026"], etc.)
3929
+ // and make sure its values only contains digits (e.g. for "bg-BG", etc.).
3930
+ const dateParts = localeDateString
3931
+ .replace(TEXT_DIRECTION_MARKERS_REGEX, '')
3932
+ .split(dateSeparator)
3933
+ .map(p => p.replaceAll(/[^\d]/g, ''));
3934
+ // Split the dateFormat into its parts to get the year, month, day order (e.g. ["d", "m", "y"], etc.).
3935
+ // Removing everything else but the DATE_FORMAT_KEYS is necessary to support date formats with additional chars (e.g. "d.m.y г.", etc.).
3936
+ const formatParts = dateFormat.replace(DATE_FORMAT_KEYS_REGEX, '').split('');
3937
+ // Map the datePart values to their corresponding keys (e.g. y, m, d),
3938
+ // to construct an ISO date string (e.g. "2026-01-31") that can be parsed by the Date constructor.
3939
+ // This is necessary because different locale date formats may have different orders (e.g. "ymd", "dmy", "mdy", etc.).
3940
+ const { y, m, d } = DATE_FORMAT_KEYS.reduce((parts, key) => ({
3941
+ ...parts,
3942
+ [key]: dateParts[formatParts.indexOf(key)],
3943
+ }), {});
3944
+ // Adjust for Thai Buddhist calendar
3945
+ const year = isBuddhistCalendar ? (Number(y) - BUDDHIST_CALENDAR_YEAR_OFFSET).toString() : y;
3946
+ return isoToDate([year, m, d].join('-'));
3947
+ }
3948
+ /**
3949
+ * Get the date format string for a locale, by formatting a sample date and replacing the date parts
3950
+ * with format keys (y, m, d). For example, it will return "dd.mm.yyyy" for "de-CH" locale and "mm/dd/yyyy" for "en-US" locale.
3951
+ * @param localeCode The BCP 47 locale code.
3952
+ * @param isBuddhistCalendar Whether the locale uses the Buddhist calendar.
3953
+ * @returns The date format string.
3954
+ */
3955
+ function getDateFormat(localeCode, isBuddhistCalendar) {
3956
+ const date = new Date(Object.values(DATE_FORMAT_MAP).join('-'));
3957
+ // get the locale date format e.g. `22.11.3333` for `de-CH` or `11/22/3333` for `en-US`
3958
+ let localeDateString = date.toLocaleDateString(localeCode, DATE_FORMAT_STRING_OPTIONS);
3959
+ // replace the date parts (3333, 11, 22) with the corresponding format keys (y, m, d)
3960
+ for (const [key, value] of Object.entries(DATE_FORMAT_MAP)) {
3961
+ // for Thai locale, the year is in Buddhist calendar which is 543 years ahead of Gregorian calendar, so we need to adjust the year value accordingly
3962
+ localeDateString = localeDateString.replace(isBuddhistCalendar && value.length === 4
3963
+ ? (Number(value) + BUDDHIST_CALENDAR_YEAR_OFFSET).toString()
3964
+ : value, key);
3965
+ }
3966
+ return localeDateString;
3967
+ }
3968
+ /**
3969
+ * Check if a value is a valid Date object.
3970
+ * @param date The value to check.
3971
+ * @returns `true` if the value is a valid Date, `false` otherwise.
3972
+ */
3973
+ function isValidDate(date) {
3974
+ return date instanceof Date && !Number.isNaN(date.getTime()) && date.getFullYear() >= 1000;
3975
+ }
3976
+
3977
+ const postDatePickerCss = () => `.air-datepicker-cell.-year-.-other-decade-,.air-datepicker-cell.-day-.-other-month-{color:var(--adp-color-other-month)}.air-datepicker-cell.-year-.-other-decade-:hover,.air-datepicker-cell.-day-.-other-month-:hover{color:var(--adp-color-other-month-hover)}.-disabled-.-focus-.air-datepicker-cell.-year-.-other-decade-,.-disabled-.-focus-.air-datepicker-cell.-day-.-other-month-{color:var(--adp-color-other-month)}.-selected-.air-datepicker-cell.-year-.-other-decade-,.-selected-.air-datepicker-cell.-day-.-other-month-{color:#fff;background:var(--adp-background-color-selected-other-month)}.-selected-.-focus-.air-datepicker-cell.-year-.-other-decade-,.-selected-.-focus-.air-datepicker-cell.-day-.-other-month-{background:var(--adp-background-color-selected-other-month-focused)}.-in-range-.air-datepicker-cell.-year-.-other-decade-,.-in-range-.air-datepicker-cell.-day-.-other-month-{background-color:var(--adp-background-color-in-range);color:var(--adp-color)}.-in-range-.-focus-.air-datepicker-cell.-year-.-other-decade-,.-in-range-.-focus-.air-datepicker-cell.-day-.-other-month-{background-color:var(--adp-background-color-in-range-focused)}.air-datepicker-cell.-year-.-other-decade-:empty,.air-datepicker-cell.-day-.-other-month-:empty{background:none;border:none}.air-datepicker-cell{border-radius:var(--adp-cell-border-radius);box-sizing:border-box;cursor:pointer;display:flex;position:relative;align-items:center;justify-content:center;z-index:1}.air-datepicker-cell.-focus-{background:var(--adp-cell-background-color-hover)}.air-datepicker-cell.-current-{color:var(--adp-color-current-date)}.air-datepicker-cell.-current-.-focus-{color:var(--adp-color)}.air-datepicker-cell.-current-.-in-range-{color:var(--adp-color-current-date)}.air-datepicker-cell.-disabled-{cursor:default;color:var(--adp-color-disabled)}.air-datepicker-cell.-disabled-.-focus-{color:var(--adp-color-disabled)}.air-datepicker-cell.-disabled-.-in-range-{color:var(--adp-color-disabled-in-range)}.air-datepicker-cell.-disabled-.-current-.-focus-{color:var(--adp-color-disabled)}.air-datepicker-cell.-in-range-{background:var(--adp-cell-background-color-in-range);border-radius:0}.air-datepicker-cell.-in-range-:hover,.air-datepicker-cell.-in-range-.-focus-{background:var(--adp-cell-background-color-in-range-hover)}.air-datepicker-cell.-range-from-{border:1px solid var(--adp-cell-border-color-in-range);background-color:var(--adp-cell-background-color-in-range);border-radius:var(--adp-cell-border-radius) 0 0 var(--adp-cell-border-radius)}.air-datepicker-cell.-range-to-{border:1px solid var(--adp-cell-border-color-in-range);background-color:var(--adp-cell-background-color-in-range);border-radius:0 var(--adp-cell-border-radius) var(--adp-cell-border-radius) 0}.air-datepicker-cell.-range-to-.-range-from-{border-radius:var(--adp-cell-border-radius)}.air-datepicker-cell.-selected-{color:#fff;border:none;background:var(--adp-cell-background-color-selected)}.air-datepicker-cell.-selected-.-current-{color:#fff;background:var(--adp-cell-background-color-selected)}.air-datepicker-cell.-selected-.-focus-{background:var(--adp-cell-background-color-selected-hover)}.air-datepicker-body{transition:all var(--adp-transition-duration) var(--adp-transition-ease)}.air-datepicker-body.-hidden-{display:none}.air-datepicker-body--day-names{display:grid;grid-template-columns:repeat(7, var(--adp-day-cell-width));margin:8px 0 3px}.air-datepicker-body--day-name{color:var(--adp-day-name-color);display:flex;align-items:center;justify-content:center;flex:1;text-align:center;text-transform:uppercase;font-size:.8em}.air-datepicker-body--day-name.-clickable-{cursor:pointer}.air-datepicker-body--day-name.-clickable-:hover{color:var(--adp-day-name-color-hover)}.air-datepicker-body--cells{display:grid}.air-datepicker-body--cells.-days-{grid-template-columns:repeat(7, var(--adp-day-cell-width));grid-auto-rows:var(--adp-day-cell-height)}.air-datepicker-body--cells.-months-{grid-template-columns:repeat(3, 1fr);grid-auto-rows:var(--adp-month-cell-height)}.air-datepicker-body--cells.-years-{grid-template-columns:repeat(4, 1fr);grid-auto-rows:var(--adp-year-cell-height)}.air-datepicker-nav{display:flex;justify-content:space-between;border-bottom:1px solid var(--adp-border-color-inner);min-height:var(--adp-nav-height);padding:var(--adp-padding);box-sizing:content-box}.-only-timepicker- .air-datepicker-nav{display:none}.air-datepicker-nav--title,.air-datepicker-nav--action{display:flex;cursor:pointer;align-items:center;justify-content:center}.air-datepicker-nav--action{width:var(--adp-nav-action-size);border-radius:var(--adp-border-radius);-webkit-user-select:none;-moz-user-select:none;user-select:none}.air-datepicker-nav--action:hover{background:var(--adp-background-color-hover)}.air-datepicker-nav--action:active{background:var(--adp-background-color-active)}.air-datepicker-nav--action.-disabled-{visibility:hidden}.air-datepicker-nav--action svg{width:32px;height:32px}.air-datepicker-nav--action path{fill:none;stroke:var(--adp-nav-arrow-color);stroke-width:2px}.air-datepicker-nav--title{border-radius:var(--adp-border-radius);padding:0 8px}.air-datepicker-nav--title i{font-style:normal;color:var(--adp-nav-color-secondary);margin-left:.3em}.air-datepicker-nav--title:hover{background:var(--adp-background-color-hover)}.air-datepicker-nav--title:active{background:var(--adp-background-color-active)}.air-datepicker-nav--title.-disabled-{cursor:default;background:none}.air-datepicker-buttons{display:grid;grid-auto-columns:1fr;grid-auto-flow:column}.air-datepicker-button{display:inline-flex;color:var(--adp-btn-color);border-radius:var(--adp-btn-border-radius);cursor:pointer;height:var(--adp-btn-height);border:none;background:rgba(255, 255, 255, 0)}.air-datepicker-button:hover{color:var(--adp-btn-color-hover);background:var(--adp-btn-background-color-hover)}.air-datepicker-button:focus{color:var(--adp-btn-color-hover);background:var(--adp-btn-background-color-hover);outline:none}.air-datepicker-button:active{background:var(--adp-btn-background-color-active)}.air-datepicker-button span{outline:none;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.air-datepicker-time{display:grid;grid-template-columns:max-content 1fr;grid-column-gap:12px;align-items:center;position:relative;padding:0 var(--adp-time-padding-inner)}.-only-timepicker- .air-datepicker-time{border-top:none}.air-datepicker-time--current{display:flex;align-items:center;flex:1;font-size:14px;text-align:center}.air-datepicker-time--current-colon{margin:0 2px 3px;line-height:1}.air-datepicker-time--current-hours,.air-datepicker-time--current-minutes{line-height:1;font-size:19px;font-family:"Century Gothic",CenturyGothic,AppleGothic,sans-serif;position:relative;z-index:1}.air-datepicker-time--current-hours:after,.air-datepicker-time--current-minutes:after{content:"";background:var(--adp-background-color-hover);border-radius:var(--adp-border-radius);position:absolute;left:-2px;top:-3px;right:-2px;bottom:-2px;z-index:-1;opacity:0}.air-datepicker-time--current-hours.-focus-:after,.air-datepicker-time--current-minutes.-focus-:after{opacity:1}.air-datepicker-time--current-ampm{text-transform:uppercase;align-self:flex-end;color:var(--adp-time-day-period-color);margin-left:6px;font-size:11px;margin-bottom:1px}.air-datepicker-time--row{display:flex;align-items:center;font-size:11px;height:17px;background:linear-gradient(to right, var(--adp-time-track-color), var(--adp-time-track-color)) left 50%/100% var(--adp-time-track-height) no-repeat}.air-datepicker-time--row:first-child{margin-bottom:4px}.air-datepicker-time--row input[type=range]{background:none;cursor:pointer;flex:1;height:100%;width:100%;padding:0;margin:0;-webkit-appearance:none}.air-datepicker-time--row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none}.air-datepicker-time--row input[type=range]::-ms-tooltip{display:none}.air-datepicker-time--row input[type=range]:hover::-webkit-slider-thumb{border-color:var(--adp-time-track-color-hover)}.air-datepicker-time--row input[type=range]:hover::-moz-range-thumb{border-color:var(--adp-time-track-color-hover)}.air-datepicker-time--row input[type=range]:hover::-ms-thumb{border-color:var(--adp-time-track-color-hover)}.air-datepicker-time--row input[type=range]:focus{outline:none}.air-datepicker-time--row input[type=range]:focus::-webkit-slider-thumb{background:var(--adp-cell-background-color-selected);border-color:var(--adp-cell-background-color-selected)}.air-datepicker-time--row input[type=range]:focus::-moz-range-thumb{background:var(--adp-cell-background-color-selected);border-color:var(--adp-cell-background-color-selected)}.air-datepicker-time--row input[type=range]:focus::-ms-thumb{background:var(--adp-cell-background-color-selected);border-color:var(--adp-cell-background-color-selected)}.air-datepicker-time--row input[type=range]::-webkit-slider-thumb{box-sizing:border-box;height:12px;width:12px;border-radius:3px;border:1px solid var(--adp-time-track-color);background:#fff;cursor:pointer;-webkit-transition:background var(--adp-transition-duration);transition:background var(--adp-transition-duration)}.air-datepicker-time--row input[type=range]::-moz-range-thumb{box-sizing:border-box;height:12px;width:12px;border-radius:3px;border:1px solid var(--adp-time-track-color);background:#fff;cursor:pointer;-moz-transition:background var(--adp-transition-duration);transition:background var(--adp-transition-duration)}.air-datepicker-time--row input[type=range]::-ms-thumb{box-sizing:border-box;height:12px;width:12px;border-radius:3px;border:1px solid var(--adp-time-track-color);background:#fff;cursor:pointer;-ms-transition:background var(--adp-transition-duration);transition:background var(--adp-transition-duration)}.air-datepicker-time--row input[type=range]::-webkit-slider-thumb{margin-top:calc(var(--adp-time-thumb-size)/2*-1)}.air-datepicker-time--row input[type=range]::-webkit-slider-runnable-track{border:none;height:var(--adp-time-track-height);cursor:pointer;color:rgba(0, 0, 0, 0);background:rgba(0, 0, 0, 0)}.air-datepicker-time--row input[type=range]::-moz-range-track{border:none;height:var(--adp-time-track-height);cursor:pointer;color:rgba(0, 0, 0, 0);background:rgba(0, 0, 0, 0)}.air-datepicker-time--row input[type=range]::-ms-track{border:none;height:var(--adp-time-track-height);cursor:pointer;color:rgba(0, 0, 0, 0);background:rgba(0, 0, 0, 0)}.air-datepicker-time--row input[type=range]::-ms-fill-lower{background:rgba(0, 0, 0, 0)}.air-datepicker-time--row input[type=range]::-ms-fill-upper{background:rgba(0, 0, 0, 0)}.air-datepicker{--adp-font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";--adp-font-size:14px;--adp-width:246px;--adp-z-index:100;--adp-padding:4px;--adp-grid-areas:"nav" "body" "timepicker" "buttons";--adp-transition-duration:.3s;--adp-transition-ease:ease-out;--adp-transition-offset:8px;--adp-background-color:#fff;--adp-background-color-hover:#f0f0f0;--adp-background-color-active:#eaeaea;--adp-background-color-in-range:rgba(92, 196, 239, .1);--adp-background-color-in-range-focused:rgba(92, 196, 239, .2);--adp-background-color-selected-other-month-focused:#8ad5f4;--adp-background-color-selected-other-month:#a2ddf6;--adp-color:#4a4a4a;--adp-color-secondary:#9c9c9c;--adp-accent-color:#4eb5e6;--adp-color-current-date:var(--adp-accent-color);--adp-color-other-month:#dedede;--adp-color-disabled:#aeaeae;--adp-color-disabled-in-range:#939393;--adp-color-other-month-hover:#c5c5c5;--adp-border-color:#dbdbdb;--adp-border-color-inner:#efefef;--adp-border-radius:4px;--adp-border-color-inline:#d7d7d7;--adp-nav-height:32px;--adp-nav-arrow-color:var(--adp-color-secondary);--adp-nav-action-size:32px;--adp-nav-color-secondary:var(--adp-color-secondary);--adp-day-name-color:#ff9a19;--adp-day-name-color-hover:#8ad5f4;--adp-day-cell-width:1fr;--adp-day-cell-height:32px;--adp-month-cell-height:42px;--adp-year-cell-height:56px;--adp-pointer-size:10px;--adp-poiner-border-radius:2px;--adp-pointer-offset:14px;--adp-cell-border-radius:4px;--adp-cell-background-color-hover:var(--adp-background-color-hover);--adp-cell-background-color-selected:#5cc4ef;--adp-cell-background-color-selected-hover:#45bced;--adp-cell-background-color-in-range:rgba(92, 196, 239, 0.1);--adp-cell-background-color-in-range-hover:rgba(92, 196, 239, 0.2);--adp-cell-border-color-in-range:var(--adp-cell-background-color-selected);--adp-btn-height:32px;--adp-btn-color:var(--adp-accent-color);--adp-btn-color-hover:var(--adp-color);--adp-btn-border-radius:var(--adp-border-radius);--adp-btn-background-color-hover:var(--adp-background-color-hover);--adp-btn-background-color-active:var(--adp-background-color-active);--adp-time-track-height:1px;--adp-time-track-color:#dedede;--adp-time-track-color-hover:#b1b1b1;--adp-time-thumb-size:12px;--adp-time-padding-inner:10px;--adp-time-day-period-color:var(--adp-color-secondary);--adp-mobile-font-size:16px;--adp-mobile-nav-height:40px;--adp-mobile-width:320px;--adp-mobile-day-cell-height:38px;--adp-mobile-month-cell-height:48px;--adp-mobile-year-cell-height:64px}.air-datepicker-overlay{--adp-overlay-background-color:rgba(0, 0, 0, .3);--adp-overlay-transition-duration:.3s;--adp-overlay-transition-ease:ease-out;--adp-overlay-z-index:99}.air-datepicker{background:var(--adp-background-color);border:1px solid var(--adp-border-color);box-shadow:0 4px 12px rgba(0, 0, 0, 0.15);border-radius:var(--adp-border-radius);box-sizing:content-box;display:grid;grid-template-columns:1fr;grid-template-rows:repeat(4, max-content);grid-template-areas:var(--adp-grid-areas);font-family:var(--adp-font-family),sans-serif;font-size:var(--adp-font-size);color:var(--adp-color);width:var(--adp-width);position:absolute;transition:opacity var(--adp-transition-duration) var(--adp-transition-ease),transform var(--adp-transition-duration) var(--adp-transition-ease);z-index:var(--adp-z-index)}.air-datepicker:not(.-custom-position-){opacity:0}.air-datepicker.-from-top-{transform:translateY(calc(var(--adp-transition-offset) * -1))}.air-datepicker.-from-right-{transform:translateX(var(--adp-transition-offset))}.air-datepicker.-from-bottom-{transform:translateY(var(--adp-transition-offset))}.air-datepicker.-from-left-{transform:translateX(calc(var(--adp-transition-offset) * -1))}.air-datepicker.-active-:not(.-custom-position-){transform:translate(0, 0);opacity:1}.air-datepicker.-active-.-custom-position-{transition:none}.air-datepicker.-inline-{border-color:var(--adp-border-color-inline);box-shadow:none;position:static;left:auto;right:auto;opacity:1;transform:none}.air-datepicker.-inline- .air-datepicker--pointer{display:none}.air-datepicker.-is-mobile-{--adp-font-size:var(--adp-mobile-font-size);--adp-day-cell-height:var(--adp-mobile-day-cell-height);--adp-month-cell-height:var(--adp-mobile-month-cell-height);--adp-year-cell-height:var(--adp-mobile-year-cell-height);--adp-nav-height:var(--adp-mobile-nav-height);--adp-nav-action-size:var(--adp-mobile-nav-height);position:fixed;width:var(--adp-mobile-width);border:none}.air-datepicker.-is-mobile- *{-webkit-tap-highlight-color:rgba(0, 0, 0, 0)}.air-datepicker.-is-mobile- .air-datepicker--pointer{display:none}.air-datepicker.-is-mobile-:not(.-custom-position-){transform:translate(-50%, calc(-50% + var(--adp-transition-offset)))}.air-datepicker.-is-mobile-.-active-:not(.-custom-position-){transform:translate(-50%, -50%)}.air-datepicker.-custom-position-{transition:none}.air-datepicker-global-container{position:absolute;left:0;top:0}.air-datepicker--pointer{--pointer-half-size:calc(var(--adp-pointer-size) / 2);position:absolute;width:var(--adp-pointer-size);height:var(--adp-pointer-size);z-index:-1}.air-datepicker--pointer:after{content:"";position:absolute;background:#fff;border-top:1px solid var(--adp-border-color-inline);border-right:1px solid var(--adp-border-color-inline);border-top-right-radius:var(--adp-poiner-border-radius);width:var(--adp-pointer-size);height:var(--adp-pointer-size);box-sizing:border-box}.-top-left- .air-datepicker--pointer,.-top-center- .air-datepicker--pointer,.-top-right- .air-datepicker--pointer,[data-popper-placement^=top] .air-datepicker--pointer{top:calc(100% - var(--pointer-half-size) + 1px)}.-top-left- .air-datepicker--pointer:after,.-top-center- .air-datepicker--pointer:after,.-top-right- .air-datepicker--pointer:after,[data-popper-placement^=top] .air-datepicker--pointer:after{transform:rotate(135deg)}.-right-top- .air-datepicker--pointer,.-right-center- .air-datepicker--pointer,.-right-bottom- .air-datepicker--pointer,[data-popper-placement^=right] .air-datepicker--pointer{right:calc(100% - var(--pointer-half-size) + 1px)}.-right-top- .air-datepicker--pointer:after,.-right-center- .air-datepicker--pointer:after,.-right-bottom- .air-datepicker--pointer:after,[data-popper-placement^=right] .air-datepicker--pointer:after{transform:rotate(225deg)}.-bottom-left- .air-datepicker--pointer,.-bottom-center- .air-datepicker--pointer,.-bottom-right- .air-datepicker--pointer,[data-popper-placement^=bottom] .air-datepicker--pointer{bottom:calc(100% - var(--pointer-half-size) + 1px)}.-bottom-left- .air-datepicker--pointer:after,.-bottom-center- .air-datepicker--pointer:after,.-bottom-right- .air-datepicker--pointer:after,[data-popper-placement^=bottom] .air-datepicker--pointer:after{transform:rotate(315deg)}.-left-top- .air-datepicker--pointer,.-left-center- .air-datepicker--pointer,.-left-bottom- .air-datepicker--pointer,[data-popper-placement^=left] .air-datepicker--pointer{left:calc(100% - var(--pointer-half-size) + 1px)}.-left-top- .air-datepicker--pointer:after,.-left-center- .air-datepicker--pointer:after,.-left-bottom- .air-datepicker--pointer:after,[data-popper-placement^=left] .air-datepicker--pointer:after{transform:rotate(45deg)}.-top-left- .air-datepicker--pointer,.-bottom-left- .air-datepicker--pointer{left:var(--adp-pointer-offset)}.-top-right- .air-datepicker--pointer,.-bottom-right- .air-datepicker--pointer{right:var(--adp-pointer-offset)}.-top-center- .air-datepicker--pointer,.-bottom-center- .air-datepicker--pointer{left:calc(50% - var(--adp-pointer-size)/2)}.-left-top- .air-datepicker--pointer,.-right-top- .air-datepicker--pointer{top:var(--adp-pointer-offset)}.-left-bottom- .air-datepicker--pointer,.-right-bottom- .air-datepicker--pointer{bottom:var(--adp-pointer-offset)}.-left-center- .air-datepicker--pointer,.-right-center- .air-datepicker--pointer{top:calc(50% - var(--adp-pointer-size)/2)}.air-datepicker--navigation{grid-area:nav}.air-datepicker--content{box-sizing:content-box;padding:var(--adp-padding);grid-area:body}.-only-timepicker- .air-datepicker--content{display:none}.air-datepicker--time{grid-area:timepicker}.air-datepicker--buttons{grid-area:buttons}.air-datepicker--buttons,.air-datepicker--time{padding:var(--adp-padding);border-top:1px solid var(--adp-border-color-inner)}.air-datepicker-overlay{position:fixed;background:var(--adp-overlay-background-color);left:0;top:0;width:0;height:0;opacity:0;transition:opacity var(--adp-overlay-transition-duration) var(--adp-overlay-transition-ease),left 0s,height 0s,width 0s;transition-delay:0s,var(--adp-overlay-transition-duration),var(--adp-overlay-transition-duration),var(--adp-overlay-transition-duration);z-index:var(--adp-overlay-z-index)}.air-datepicker-overlay.-active-{opacity:1;width:100%;height:100%;transition:opacity var(--adp-overlay-transition-duration) var(--adp-overlay-transition-ease),height 0s,width 0s}.air-datepicker{--adp-cell-background-color-in-range:unset;--adp-hover-color:unset;--adp-cell-border-width:2px;font-family:inherit;font-size:var(--post-device-font-size-8);width:var(--post-core-dimension-296);border-radius:var(--post-device-border-radius-1);box-shadow:var(--post-device-elevation-300);font-weight:700;border:none}.air-datepicker.-inline-{box-shadow:var(--post-device-elevation-300)}.air-datepicker *{font-family:inherit}.air-datepicker .air-datepicker--navigation{border-start-start-radius:inherit;border-start-end-radius:inherit}.air-datepicker .air-datepicker--navigation .air-datepicker-nav{border-start-start-radius:inherit;border-start-end-radius:inherit;border-block-end:none;background:var(--post-core-color-sandgrey-012);padding:var(--post-device-spacing-padding-15)}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title{margin-inline-start:0;margin-inline-end:auto;justify-content:flex-start;display:flex;align-items:center;padding:0 0 0 var(--post-device-spacing-padding-15);color:var(--post-scheme-color-interactive-button-tertiary-enabled-fg)}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title.-disabled-:hover{color:var(--post-scheme-color-interactive-button-tertiary-enabled-fg) !important}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title:hover{background:unset;color:var(--post-scheme-color-interactive-button-tertiary-hover-fg)}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title:has(button:disabled){color:var(--post-scheme-color-interactive-button-tertiary-disabled-fg)}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title button{padding:0;overflow:visible;border:0;background:none;color:var(--post-scheme-color-interactive-button-secondary-enabled-fg);font:inherit;-webkit-user-select:none;user-select:none;appearance:button;border-radius:var(--post-device-border-radius-1);display:flex;align-items:center;gap:var(--post-device-spacing-gap-3);color:inherit;cursor:inherit}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title button{background-color:ButtonFace !important}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title button:hover{background-color:Highlight !important}}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title button:not(.-disabled-){outline-offset:var(--post-device-spacing-padding-2) !important;outline:var(--post-scheme-color-interactive-focus-stroke) none var(--post-device-border-width-focus) !important}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title button:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title button:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title button:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title button:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--title .placeholder{flex-grow:2;pointer-events:none}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action{height:var(--post-device-sizing-interactive-button-height-4);width:var(--post-device-sizing-interactive-button-height-4)}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action[data-action=next]{margin-inline-start:var(--post-device-spacing-gap-inline-4)}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action:hover{background:unset;color:var(--post-scheme-color-interactive-button-tertiary-hover-fg)}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action:has(:disabled){color:var(--post-scheme-color-interactive-button-tertiary-disabled-fg)}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action button{padding:0;overflow:visible;border:0;background:none;color:var(--post-scheme-color-interactive-button-secondary-enabled-fg);font:inherit;-webkit-user-select:none;user-select:none;appearance:button;height:var(--post-device-sizing-interactive-button-height-4);width:var(--post-device-sizing-interactive-button-height-4);border-radius:var(--post-device-border-radius-round);color:inherit;cursor:inherit}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action button{background-color:ButtonFace !important}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action button:hover{background-color:Highlight !important}}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action button:not(.-disabled-){outline-offset:var(--post-device-spacing-padding-2) !important;outline:var(--post-scheme-color-interactive-focus-stroke) none var(--post-device-border-width-focus) !important}.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action button:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action button:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action button:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action button:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}.air-datepicker .air-datepicker--content{padding:0 !important}.air-datepicker .air-datepicker--content .air-datepicker-body--day-names{background:var(--post-core-color-sandgrey-012);margin:0;padding-block-start:var(--post-device-spacing-padding-13);padding-block-end:var(--post-device-spacing-padding-5);padding-inline:var(--post-device-spacing-padding-15)}.air-datepicker .air-datepicker--content .air-datepicker-body--day-names .air-datepicker-body--day-name{text-transform:capitalize;font-size:inherit;color:var(--post-scheme-color-surface-brand-fg)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells{min-height:var(--post-core-dimension-182);padding:var(--post-device-spacing-padding-15);background:var(--post-scheme-color-surface-accent1-bg);row-gap:var(--post-device-spacing-gap-2);border-radius:var(--post-device-border-radius-1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days-{grid-template-columns:repeat(7, var(--post-core-dimension-40));grid-auto-rows:var(--post-core-dimension-40)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell>*{box-sizing:border-box}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell::after{box-sizing:border-box}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-{width:var(--post-core-dimension-40);height:var(--post-core-dimension-40);border-radius:var(--post-device-border-radius-round)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-:not(.-disabled-){outline-offset:var(--post-device-spacing-padding-2) !important;outline:var(--post-scheme-color-interactive-focus-stroke) none var(--post-device-border-width-focus) !important}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important;z-index:3}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important;z-index:3}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-.-other-month-,.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-:empty{pointer-events:none}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-:hover:not(.-disabled-,.-other-month-,.-in-range-,.-range-from-,.-range-to-):not(:empty){color:var(--post-scheme-color-interactive-primary-hover-fg3)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-:hover:not(.-disabled-,.-other-month-,.-in-range-,.-range-from-,.-range-to-):not(:empty):not(.-current-){background:var(--post-scheme-color-interactive-primary-hover-bg2)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-:hover:not(.-disabled-,.-other-month-,.-in-range-,.-range-from-,.-range-to-):not(:empty):not(.-current-){background-color:ButtonFace;color:ButtonText}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-:hover:not(.-disabled-,.-other-month-,.-in-range-,.-range-from-,.-range-to-):not(:empty).-current-{color:var(--post-scheme-color-interactive-primary-hover-fg1);border-color:var(--post-scheme-color-interactive-primary-hover-stroke)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-.-selected-:not(.-other-month-){color:var(--post-scheme-color-interactive-primary-selected-fg3);background:var(--post-scheme-color-interactive-primary-selected-bg4)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-.-selected-:not(.-other-month-):not(.-range-from-):not(.-range-to-,.-other-month-){border-color:var(--post-scheme-color-interactive-primary-selected-stroke1)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-.-selected-:not(.-other-month-){background-color:Highlight;color:HighlightText}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-.-disabled-:not(.-other-month-){user-select:none;pointer-events:none;color:var(--post-scheme-color-interactive-primary-disabled-fg1);border:var(--post-device-border-width-default) dashed var(--post-scheme-color-interactive-primary-disabled-stroke);width:var(--post-core-dimension-38);height:var(--post-core-dimension-38);outline:none;display:flex;align-self:center;justify-self:center}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-.-current-:not(.-disabled-,.-other-month-):not(:empty){border:var(--adp-cell-border-width) solid var(--post-scheme-color-interactive-primary-enabled-stroke)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-.-current-:not(.-disabled-,.-other-month-):not(:empty).-selected-{background:var(--post-scheme-color-interactive-primary-selected-bg4);color:var(--post-scheme-color-interactive-primary-selected-fg3);border-color:var(--post-scheme-color-interactive-primary-selected-stroke1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-days- .air-datepicker-cell.-day-.-current-:not(.-disabled-,.-other-month-):not(:empty).-selected-:hover{border-color:var(--post-scheme-color-interactive-primary-hover-stroke);background:var(--post-scheme-color-interactive-primary-hover-bg2);color:var(--post-scheme-color-interactive-primary-hover-fg3)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years-{grid-template-columns:repeat(4, var(--post-core-dimension-64));grid-auto-rows:var(--post-core-dimension-40);column-gap:var(--post-device-spacing-gap-inline-8)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-{width:var(--post-core-dimension-64);height:var(--post-core-dimension-40);border-radius:var(--post-device-border-radius-round);color:var(--post-scheme-color-interactive-primary-enabled-fg1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-.-in-range-{background-color:rgba(0,0,0,0)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-.-other-decade-{color:var(--post-scheme-color-interactive-primary-enabled-fg1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-:not(.-disabled-){outline-offset:var(--post-device-spacing-padding-2) !important;outline:var(--post-scheme-color-interactive-focus-stroke) none var(--post-device-border-width-focus) !important}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important;z-index:3}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important;z-index:3}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-:hover:not(.-disabled-){color:var(--post-scheme-color-interactive-primary-hover-fg3);background:var(--post-scheme-color-interactive-primary-hover-bg2);border-color:var(--post-scheme-color-interactive-primary-hover-bg2)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-.-selected-:not(.-selected-~.-selected-){color:var(--post-scheme-color-interactive-primary-selected-fg3);background-color:var(--post-scheme-color-interactive-primary-selected-bg4);border:var(--adp-cell-border-width) solid var(--post-scheme-color-interactive-primary-selected-stroke1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-.-disabled-:not(.-day-.-other-decade-){user-select:none;pointer-events:none;color:var(--post-scheme-color-interactive-primary-disabled-fg1);border:var(--adp-cell-border-width) dashed var(--post-scheme-color-interactive-primary-disabled-stroke)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-.-current-{border:var(--adp-cell-border-width) solid var(--post-scheme-color-interactive-primary-enabled-stroke)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-years- .air-datepicker-cell.-year-.-current-:hover{border-color:var(--post-scheme-color-interactive-primary-hover-stroke);background:var(--post-scheme-color-interactive-primary-hover-bg2)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months-{grid-template-columns:repeat(4, var(--post-core-dimension-64));padding:var(--post-device-spacing-padding-15);column-gap:var(--post-device-spacing-gap-inline-8);min-height:var(--post-core-dimension-182);text-transform:uppercase}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-{width:var(--post-core-dimension-64);height:var(--post-core-dimension-40);border-radius:var(--post-device-border-radius-round);color:var(--post-scheme-color-interactive-primary-enabled-fg1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-.-in-range-{background-color:rgba(0,0,0,0)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-.-other-decade-{color:var(--post-scheme-color-interactive-primary-enabled-fg1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-:not(.-disabled-){outline-offset:var(--post-device-spacing-padding-2) !important;outline:var(--post-scheme-color-interactive-focus-stroke) none var(--post-device-border-width-focus) !important}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-:hover:not(.-disabled-){color:var(--post-scheme-color-interactive-primary-hover-fg3);border-color:var(--post-scheme-color-interactive-primary-hover-bg2)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-:hover:not(.-disabled-):not(.-current-){background:var(--post-scheme-color-interactive-primary-hover-bg2)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-:hover:not(.-disabled-):not(.-current-){background-color:ButtonFace;color:ButtonText}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-.-selected-:not(.-selected-~.-selected-){color:var(--post-scheme-color-interactive-primary-selected-fg3);background-color:var(--post-scheme-color-interactive-primary-selected-bg4);border:var(--adp-cell-border-width) solid var(--post-scheme-color-interactive-primary-selected-stroke1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-.-disabled-{user-select:none;pointer-events:none;color:var(--post-scheme-color-interactive-primary-disabled-fg1);border:var(--adp-cell-border-width) dashed var(--post-scheme-color-interactive-primary-disabled-stroke)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-.-current-{border:var(--adp-cell-border-width) solid var(--post-scheme-color-interactive-primary-enabled-stroke)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells.-months- .air-datepicker-cell.-month-.-current-:hover{border-color:var(--post-scheme-color-interactive-primary-hover-stroke);color:var(--post-scheme-color-interactive-primary-hover-fg1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell{position:relative;display:flex;justify-content:center;align-items:center;flex-shrink:0;flex-direction:column;color:var(--post-scheme-color-interactive-primary-enabled-fg1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell.-focus-:hover{background:none}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-{position:relative;border:0}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-::after{content:"";position:absolute;inset:0;display:block;width:var(--post-core-dimension-40);height:var(--post-core-dimension-40)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-current-::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-current-::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-.-current-::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-.-current-::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-.-current-::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-.-current-::after{inset:calc(var(--adp-cell-border-width)*-1)}@media (min-resolution: 1.25dppx)and (max-resolution: 1.4999dppx){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-current-::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-current-::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-.-current-::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-.-current-::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-.-current-::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-.-current-::after{inset:calc(var(--adp-cell-border-width)*-1 - .5)}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-current-.-selected-:hover::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-current-.-selected-:hover::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-.-current-.-selected-:hover::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-.-current-.-selected-:hover::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-.-current-.-selected-:hover::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-.-current-.-selected-:hover::after{inset:0}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-::before{z-index:-2}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-::after{z-index:-1}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-:hover:not(.-current-,.-disabled-),.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:hover:not(.-current-,.-disabled-),.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:hover:not(.-current-,.-disabled-){color:var(--post-scheme-color-interactive-primary-hover-fg3)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-:hover:not(.-current-,.-disabled-)::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:hover:not(.-current-,.-disabled-)::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:hover:not(.-current-,.-disabled-)::after{background:var(--post-scheme-color-interactive-primary-hover-bg2);border-radius:var(--post-device-border-radius-round);border-color:var(--post-scheme-color-interactive-primary-hover-bg2)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-:hover:not(.-current-,.-disabled-)::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:hover:not(.-current-,.-disabled-)::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:hover:not(.-current-,.-disabled-)::after{border:none}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-current-:not(.-disabled-,.-other-month-)::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-.-current-:not(.-disabled-,.-other-month-)::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-.-current-:not(.-disabled-,.-other-month-)::after{border:var(--post-device-border-width-default) solid var(--post-scheme-color-interactive-primary-selected-stroke1);border-radius:var(--post-device-border-radius-round);color:var(--post-scheme-color-interactive-primary-selected-fg3)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-current-:not(.-disabled-,.-other-month-)::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-.-current-:not(.-disabled-,.-other-month-)::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-.-current-:not(.-disabled-,.-other-month-)::after{forced-color-adjust:none;border-color:Highlight}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-current-:not(.-disabled-,.-other-month-):hover,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-.-current-:not(.-disabled-,.-other-month-):hover,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-.-current-:not(.-disabled-,.-other-month-):hover{color:var(--post-scheme-color-interactive-primary-hover-fg3)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-current-:not(.-disabled-,.-other-month-):hover::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-.-current-:not(.-disabled-,.-other-month-):hover::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-.-current-:not(.-disabled-,.-other-month-):hover::after{border-color:var(--post-scheme-color-interactive-primary-hover-stroke);color:var(--post-scheme-color-interactive-primary-hover-fg3);background:var(--post-scheme-color-interactive-primary-hover-bg2)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-{background-color:rgba(0,0,0,0);z-index:2}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-:not(.-disabled-){outline-offset:var(--post-device-spacing-padding-2) !important;outline:var(--post-scheme-color-interactive-focus-stroke) none var(--post-device-border-width-focus) !important}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important;z-index:3}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-:not(.-disabled-):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important;z-index:3}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-:not(.-disabled-):is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-:not(.-disabled-):hover::after{background-color:ButtonFace;color:ButtonText}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-:not(.-other-month-)::before{background-color:var(--post-scheme-color-interactive-primary-selected-bg3);border-block:var(--post-device-border-width-default) solid var(--post-scheme-color-interactive-primary-selected-stroke1)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-:not(.-other-month-)::before{forced-color-adjust:none}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-disabled-:not(.-other-month-){color:var(--post-scheme-color-interactive-primary-disabled-fg1) !important}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-disabled-:not(.-other-month-)::after{background-color:var(--post-scheme-color-surface-accent1-bg);border-radius:var(--post-device-border-radius-round);border:var(--post-device-border-width-default) dashed var(--post-scheme-color-interactive-primary-disabled-stroke);color:var(--post-scheme-color-interactive-primary-disabled-fg1) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-in-range-.-disabled-:not(.-other-month-)::after{forced-color-adjust:none}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-),.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-){z-index:1}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-).-selected-:not(.-disabled-):hover,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-).-selected-:not(.-disabled-):hover{border:none}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-):not(.-disabled-)::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-):not(.-disabled-)::before{background:var(--post-scheme-color-interactive-primary-selected-bg3);border-block:var(--post-device-border-width-default) solid var(--post-scheme-color-interactive-primary-selected-stroke1)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-):not(.-disabled-)::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-):not(.-disabled-)::before{forced-color-adjust:none}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-):not(.-disabled-).-selected-::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-):not(.-disabled-).-selected-::after{border-radius:var(--post-device-border-radius-round);background:var(--post-scheme-color-interactive-primary-selected-bg4)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-):not(.-disabled-).-selected-::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-):not(.-disabled-).-selected-::after{background-color:Highlight;color:HighlightText}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-):not(.-disabled-):hover,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-):not(.-disabled-):hover{color:var(--post-scheme-color-interactive-primary-hover-fg3)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-):not(.-disabled-):hover::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-):not(.-disabled-):hover::before{forced-color-adjust:none}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-):not(.-disabled-):hover::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-):not(.-disabled-):hover::after{background:var(--post-scheme-color-interactive-primary-hover-bg2);border-color:var(--post-scheme-color-interactive-primary-hover-bg2)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-):not(.-disabled-):hover::after,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-):not(.-disabled-):hover::after{background-color:Highlight;color:HighlightText}}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-,.-disabled-):hover::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-from-:not(.-other-month-,.-disabled-).-selected-::before{inset-inline-start:auto;width:50%;background-color:var(--post-scheme-color-interactive-primary-selected-bg3);border-block:var(--post-device-border-width-default) solid var(--post-scheme-color-interactive-primary-selected-stroke1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-,.-disabled-):hover::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-:not(.-other-month-,.-disabled-).-selected-::before{inset-inline-end:auto;width:50%;background-color:var(--post-scheme-color-interactive-primary-selected-bg3);border-block:var(--post-device-border-width-default) solid var(--post-scheme-color-interactive-primary-selected-stroke1)}.air-datepicker .air-datepicker--content .air-datepicker-body--cells .air-datepicker-cell:not(.-year-,.-month-).-range-to-.-range-from-:hover::before{background:none;border:none}.air-datepicker .air-datepicker--content .air-datepicker-body--cells:not(:has(.-selected-.-range-from-):has(.-selected-.-range-to-)):not(:hover) .air-datepicker-cell:is(.-in-range-,.-range-from-,.-range-to-)::before,.air-datepicker .air-datepicker--content .air-datepicker-body--cells:not(:has(.-selected-.-range-from-):has(.-selected-.-range-to-)):not(:hover) .air-datepicker-cell:is(.-in-range-,.-range-from-,.-range-to-):not(.-selected-)::after{content:unset}.calendar-input,.calendar-input-range{position:relative}.calendar-input button,.calendar-input-range button{z-index:1;padding:0;position:absolute;transform:translateY(-50%);background:none;border:0;display:flex;align-items:center;justify-content:center;border-radius:var(--post-device-border-radius-focus);transition:opacity .2s ease,visibility .2s ease,fill .2s ease;color:var(--post-scheme-color-interactive-input-enabled-fg);right:var(--post-core-dimension-14);top:calc(var(--post-device-sizing-interactive-button-height-6) / 2);-webkit-appearance:none;appearance:none;color:var(--post-scheme-color-interactive-input-enabled-fg);outline-offset:4px;right:var(--post-core-dimension-14)}.calendar-input button post-icon,.calendar-input-range button post-icon{width:var(--post-device-sizing-notification-1);height:var(--post-device-sizing-notification-1)}.calendar-input button:not([disabled]),.calendar-input-range button:not([disabled]){cursor:pointer}.calendar-input button:not([disabled]) :where(:hover>*) post-icon,.calendar-input-range button:not([disabled]) :where(:hover>*) post-icon{color:var(--post-scheme-color-interactive-input-hover-fg)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.calendar-input button:not([disabled]) :where(:hover>*) post-icon,.calendar-input-range button:not([disabled]) :where(:hover>*) post-icon{color:Highlight}}.calendar-input button[disabled],.calendar-input-range button[disabled]{color:var(--post-scheme-color-interactive-primary-disabled-fg1)}.calendar-input ::slotted(input),.calendar-input-range ::slotted(input){padding-inline-end:calc( var(--post-core-dimension-14) + var(--post-device-spacing-gap-inline-8) + var(--post-device-sizing-notification-1) ) !important}:host ::slotted(input.form-control:is(.is-invalid,.is-valid):not(:disabled)){background-position:top 50% right calc( var(--post-core-dimension-14) + var(--post-device-spacing-gap-inline-8) + var(--post-device-sizing-notification-1) ) !important}:host [dir=rtl] .calendar-input button,:host [dir=rtl] .calendar-input-range button{right:auto;left:var(--post-core-dimension-14)}:host [dir=rtl] .air-datepicker .air-datepicker--navigation .air-datepicker-nav .air-datepicker-nav--action{transform:scaleX(-1)}`;
3784
3978
 
3785
3979
  var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
3786
3980
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -3795,7 +3989,6 @@ var __decorate = (undefined && undefined.__decorate) || function (decorators, ta
3795
3989
  const PostDatePicker = class {
3796
3990
  constructor(hostRef) {
3797
3991
  registerInstance(this, hostRef);
3798
- this.postUpdateDates = createEvent(this, "postUpdateDates");
3799
3992
  /**
3800
3993
  * The date pickers locale (e.g. "it", "it-CH", etc.), which specifies the date format and language.
3801
3994
  * <post-banner type="info" data-size="sm"><span>If not set, it defaults to either the closest ancestor with a `lang` attribute (e.g. \<html lang="de"\>), or falls back to English.</span></post-banner>
@@ -3814,22 +4007,23 @@ const PostDatePicker = class {
3814
4007
  this.today = new Date();
3815
4008
  this.startDate = new Date();
3816
4009
  this.currentViewType = 'days';
4010
+ this._isInternalUpdate = false;
4011
+ this._lastInputValue = null;
3817
4012
  this.skipOnSelectCount = 0;
3818
4013
  this.skipFocusOnNextRender = false;
3819
4014
  this.handleInputBlur = () => {
3820
4015
  if (this.range) {
3821
- const dates = this.inputMask.value.split(this.dateFormatRangeSeparator);
3822
- const start = this.stringToDate(dates[0]);
3823
- const end = this.stringToDate(dates[1]);
3824
- const startValid = this.isValidDate(start);
3825
- const endValid = this.isValidDate(end);
4016
+ const parts = this.inputMask.value.split(this.dateFormatRangeSeparator);
4017
+ const start = this.stringToDate(parts[0]);
4018
+ const end = this.stringToDate(parts[1]);
4019
+ const startValid = isValidDate(start);
4020
+ const endValid = isValidDate(end);
3826
4021
  if (startValid && endValid) {
3827
4022
  // Check if user entered dates in wrong order
3828
4023
  const reversed = start > end;
3829
4024
  this.skipOnSelectCount = reversed ? 0 : 2; // don't skip if reversed
3830
4025
  this.dpInstance.selectDate([start, end]);
3831
4026
  this.dpInstance.setViewDate(start);
3832
- this.postUpdateDates.emit([this.dateToIso(start), this.dateToIso(end)]);
3833
4027
  }
3834
4028
  else if (startValid && !endValid) {
3835
4029
  this.dpInstance.clear();
@@ -3842,16 +4036,16 @@ const PostDatePicker = class {
3842
4036
  }
3843
4037
  else {
3844
4038
  const date = this.stringToDate(this.inputMask.value);
3845
- if (this.isValidDate(date)) {
4039
+ if (isValidDate(date)) {
3846
4040
  this.skipOnSelectCount = 1;
3847
4041
  this.dpInstance.selectDate(date);
3848
4042
  this.dpInstance.setViewDate(date);
3849
- this.postUpdateDates.emit(this.dateToIso(date));
3850
4043
  }
3851
4044
  else {
3852
4045
  this.resetSelection();
3853
4046
  }
3854
4047
  }
4048
+ this.emitInputEvents();
3855
4049
  };
3856
4050
  this.handlePrevNextClick = () => {
3857
4051
  this.skipFocusOnNextRender = true;
@@ -3967,6 +4161,17 @@ const PostDatePicker = class {
3967
4161
  this.setActiveCell(newDate, true);
3968
4162
  }
3969
4163
  };
4164
+ // Suppress native input events fired while typing when the ISO value hasn't actually changed
4165
+ this.handleInputEvent = (e) => {
4166
+ if (this.maskElement.allowEvents)
4167
+ return;
4168
+ const currentValue = this.serializeIsoValue();
4169
+ if (currentValue === this._lastInputValue) {
4170
+ e.stopImmediatePropagation();
4171
+ return;
4172
+ }
4173
+ this._lastInputValue = currentValue;
4174
+ };
3970
4175
  // Skip the month view and go directly to year selection
3971
4176
  this.forceTitleClickToYear = () => {
3972
4177
  if (this.dpInstance) {
@@ -3990,12 +4195,25 @@ const PostDatePicker = class {
3990
4195
  }
3991
4196
  updateRange() {
3992
4197
  this.dpInstance?.update({ range: this.range });
3993
- this.handleSelectedDates();
3994
4198
  this.updateMask();
4199
+ if (this.range && this.dpInstance?.selectedDates.length > 0) {
4200
+ const startDate = this.dpInstance.selectedDates[0];
4201
+ this.dpInstance.clear();
4202
+ this.dpInstance.selectDate(startDate);
4203
+ }
4204
+ else {
4205
+ this.syncInputToDp();
4206
+ }
4207
+ }
4208
+ updateMin() {
4209
+ this.dpInstance?.update({ minDate: this.min ? isoToDate(this.min) : false });
4210
+ }
4211
+ updateMax() {
4212
+ this.dpInstance?.update({ maxDate: this.max ? isoToDate(this.max) : false });
3995
4213
  }
3996
4214
  validateInline() {
3997
- if (!this.inline && !this.dpInput) {
3998
- console.error('A non-inline date picker should contain one input');
4215
+ if (!this.dpInput) {
4216
+ console.error('The date picker must contain one input element');
3999
4217
  }
4000
4218
  }
4001
4219
  /**
@@ -4003,6 +4221,7 @@ const PostDatePicker = class {
4003
4221
  */
4004
4222
  async show() {
4005
4223
  if (this.popoverRef) {
4224
+ this.dpInstance?.setCurrentView('days');
4006
4225
  await this.popoverRef.show(this.dpInput);
4007
4226
  this.enhanceAccessibility();
4008
4227
  this.host.shadowRoot.removeEventListener('keydown', this.handleTab, true); // remove before adding
@@ -4028,7 +4247,8 @@ const PostDatePicker = class {
4028
4247
  * or fallback to a default language code if not found or in server environment.
4029
4248
  */
4030
4249
  get systemLocale() {
4031
- return this.host.closest('[lang]')?.getAttribute('lang') ?? FALLBACK_LANGUAGE_CODE;
4250
+ const closestLang = this.host.closest('[lang]')?.getAttribute('lang');
4251
+ return closestLang ?? navigator.language ?? FALLBACK_LANGUAGE_CODE;
4032
4252
  }
4033
4253
  /**
4034
4254
  * Get the locale code to use for the date picker, ensuring it is valid and applying fallback if necessary.
@@ -4048,17 +4268,7 @@ const PostDatePicker = class {
4048
4268
  * with format keys (y, m, d). For example, it will return "dd.mm.yyyy" for "de-CH" locale and "mm/dd/yyyy" for "en-US" locale.
4049
4269
  */
4050
4270
  get dateFormat() {
4051
- const date = new Date(Object.values(DATE_FORMAT_MAP).join('-'));
4052
- // get the locale date format e.g. `22.11.3333` for `de-CH` or `11/22/3333` for `en-US`
4053
- let localeDateString = date.toLocaleDateString(this.localeCode, DATE_FORMAT_STRING_OPTIONS);
4054
- // replace the date parts (3333, 11, 22) with the corresponding format keys (y, m, d)
4055
- for (const [key, value] of Object.entries(DATE_FORMAT_MAP)) {
4056
- // for Thai locale, the year is in Buddhist calendar which is 543 years ahead of Gregorian calendar, so we need to adjust the year value accordingly
4057
- localeDateString = localeDateString.replace(this.isBuddhistCalendar && value.length === 4
4058
- ? (Number(value) + BUDDHIST_CALENDAR_YEAR_OFFSET).toString()
4059
- : value, key);
4060
- }
4061
- return localeDateString;
4271
+ return getDateFormat(this.localeCode, this.isBuddhistCalendar);
4062
4272
  }
4063
4273
  /**
4064
4274
  * Determine the text direction (ltr or rtl) based on the language code, to apply the correct styles and layout to the date picker.
@@ -4092,70 +4302,16 @@ const PostDatePicker = class {
4092
4302
  return module.default;
4093
4303
  }
4094
4304
  /**
4095
- * Convert a date object to a localized date string and vice versa.
4096
- * @param date A localtime date object.
4097
- * @returns A localized date string, depending on the given `localeCode` and the given `options`.
4305
+ * Convert a date object to a localized date string, bound to the current locale.
4098
4306
  */
4099
4307
  dateToString(date) {
4100
- const dateString = date.toLocaleDateString(this.localeCode, DATE_FORMAT_STRING_OPTIONS);
4101
- const yearString = date.getFullYear().toString();
4102
- if (yearString.length < 4) {
4103
- return dateString.replace(yearString, yearString.padStart(4, '0'));
4104
- }
4105
- return dateString;
4308
+ return dateToString(date, this.localeCode);
4106
4309
  }
4107
4310
  /**
4108
- * Convert a localized date string to a date object.
4109
- * The date string should be in the same format as the date picker's `dateFormat`, which depends on the given `localeCode`.
4110
- * @param localeDateString A localized date string.
4111
- * @returns A localtime date object.
4311
+ * Convert a localized date string to a date object, bound to the current locale and format.
4112
4312
  */
4113
4313
  stringToDate(localeDateString) {
4114
- // Match the separator chars in the date format (e.g. "." for "dd.mm.yyyy", etc.).
4115
- const dateSeparator = this.dateFormat.match(DATE_FORMAT_SEPARATOR_REGEX)[0];
4116
- // Remove the text direction markers, split the date string into its parts (e.g. ["31", "01", "2026"], etc.)
4117
- // and make sure its values only contains digits (e.g. for "bg-BG", etc.).
4118
- const dateParts = localeDateString
4119
- .replace(TEXT_DIRECTION_MARKERS_REGEX, '')
4120
- .split(dateSeparator)
4121
- .map(p => p.replaceAll(/[^\d]/g, ''));
4122
- // Split the dateFormat into its parts to get the year, month, day order (e.g. ["d", "m", "y"], etc.).
4123
- // Removing everything else but the DATE_FORMAT_KEYS is necessary to support date formats with additional chars (e.g. "d.m.y г.", etc.).
4124
- const formatParts = this.dateFormat.replace(DATE_FORMAT_KEYS_REGEX, '').split('');
4125
- // Map the datePart values to their corresponding keys (e.g. y, m, d),
4126
- // to construct an ISO date string (e.g. "2026-01-31") that can be parsed by the Date constructor.
4127
- // This is necessary because different locale date formats may have different orders (e.g. "ymd", "dmy", "mdy", etc.).
4128
- const { y, m, d } = DATE_FORMAT_KEYS.reduce((parts, key) => ({
4129
- ...parts,
4130
- [key]: dateParts[formatParts.indexOf(key)],
4131
- }), {});
4132
- // Adjust for Thai Buddhist calendar
4133
- const year = this.isBuddhistCalendar
4134
- ? (Number(y) - BUDDHIST_CALENDAR_YEAR_OFFSET).toString()
4135
- : y;
4136
- return this.isoToDate([year, m, d].join('-'));
4137
- }
4138
- /**
4139
- * Convert a date object to an ISO 8601 formatted date string (YYYY-MM-DD) and vice versa.
4140
- * @param date A localtime date object.
4141
- * @returns An iso formatted, localtime date string.
4142
- */
4143
- dateToIso(date) {
4144
- // The swedish locale (`sv`) happens to format the date in the exact ISO format (YYYY-MM-DD),
4145
- // so we can use it as a shortcut instead of manually constructing the string from the date parts.
4146
- return date.toLocaleDateString('sv', DATE_FORMAT_STRING_OPTIONS);
4147
- }
4148
- /**
4149
- * Convert an ISO 8601 formatted date string (YYYY-MM-DD) to a localtime date object.
4150
- * @param isoDateString An iso formatted, localtime date string.
4151
- * @returns A localtime date object.
4152
- */
4153
- isoToDate(isoDateString) {
4154
- return new Date(`${this.padIsoDate(isoDateString)}T00:00`);
4155
- }
4156
- padIsoDate(isoDateString) {
4157
- const valueParts = isoDateString.split('-');
4158
- return `${valueParts[0].padStart(4, '0')}-${valueParts[1]}-${valueParts[2]}`;
4314
+ return stringToDate(localeDateString, this.dateFormat, this.isBuddhistCalendar);
4159
4315
  }
4160
4316
  setupInputObserver() {
4161
4317
  if (typeof MutationObserver === 'undefined')
@@ -4295,7 +4451,9 @@ const PostDatePicker = class {
4295
4451
  });
4296
4452
  body.removeEventListener('keydown', this.handleGridKeydown);
4297
4453
  body.addEventListener('keydown', this.handleGridKeydown);
4298
- this.setActiveCell((this.selectedStartDate && this.isoToDate(this.selectedStartDate)) || this.today, focusOnDate);
4454
+ const dates = this.getIsoDates();
4455
+ const selectedDate = dates[0] ? isoToDate(dates[0]) : null;
4456
+ this.setActiveCell(selectedDate || this.today, focusOnDate);
4299
4457
  }
4300
4458
  /**
4301
4459
  * Set up the masks on the inputs to reflect the date pickers
@@ -4303,7 +4461,7 @@ const PostDatePicker = class {
4303
4461
  setUpMask() {
4304
4462
  // WARNING: using the DATE_FORMAT_SEPARATOR_REGEX is mandatory here,
4305
4463
  // because `this.dateFormat` can possibly contain unicode bidi characters!
4306
- const maskPattern = this.dateFormat; //.replace(DATE_FORMAT_SEPARATOR_REGEX, m => `${m}\``);
4464
+ const maskPattern = this.dateFormat.replace(DATE_FORMAT_SEPARATOR_REGEX, m => `${m}\``);
4307
4465
  const baseMaskOptions = {
4308
4466
  mask: Date,
4309
4467
  pattern: maskPattern,
@@ -4312,7 +4470,7 @@ const PostDatePicker = class {
4312
4470
  blocks: {
4313
4471
  y: {
4314
4472
  mask: IMask.MaskedRange,
4315
- from: 101, // dates from 0100-01-31 and earlier are causing issues in air-datepicker
4473
+ from: 1000,
4316
4474
  to: 9999,
4317
4475
  maxLength: 4,
4318
4476
  placeholderChar: Object.keys(DATE_FORMAT_MAP)[0],
@@ -4330,8 +4488,10 @@ const PostDatePicker = class {
4330
4488
  placeholderChar: Object.keys(DATE_FORMAT_MAP)[2],
4331
4489
  },
4332
4490
  },
4333
- min: this.min ? new Date(`${this.padIsoDate(this.min)}T00:00`) : null,
4334
- max: this.max ? new Date(`${this.padIsoDate(this.max)}T00:00`) : null,
4491
+ min: this.min ? new Date(`${padIsoDate(this.min)}T00:00`) : null,
4492
+ max: this.max ? new Date(`${padIsoDate(this.max)}T00:00`) : null,
4493
+ autofix: true,
4494
+ eager: true,
4335
4495
  };
4336
4496
  const singleMaskOptions = {
4337
4497
  ...baseMaskOptions,
@@ -4339,7 +4499,7 @@ const PostDatePicker = class {
4339
4499
  overwrite: true,
4340
4500
  };
4341
4501
  const rangeMaskOptions = {
4342
- mask: `from${this.dateFormatRangeSeparator}to`,
4502
+ mask: `from\`${this.dateFormatRangeSeparator}to`,
4343
4503
  blocks: {
4344
4504
  from: { ...baseMaskOptions },
4345
4505
  to: { ...baseMaskOptions },
@@ -4347,29 +4507,109 @@ const PostDatePicker = class {
4347
4507
  lazy: false,
4348
4508
  overwrite: true,
4349
4509
  };
4350
- this.inputMask = IMask(this.dpInput, this.range ? rangeMaskOptions : singleMaskOptions);
4510
+ this.maskElement = new NativeInputMaskElement(this.dpInput);
4511
+ this.inputMask = IMask(this.maskElement, this.range ? rangeMaskOptions : singleMaskOptions);
4351
4512
  }
4352
4513
  updateMask() {
4353
4514
  if (!this.inline) {
4354
4515
  this.inputMask.destroy();
4355
4516
  this.setUpMask();
4517
+ this.setupValueOverride();
4356
4518
  if (this.dpInstance.selectedDates.length > 0) {
4357
- if (this.range) {
4358
- this.inputMask.value = this.dpInstance.selectedDates
4359
- .map(d => this.dateToString(d))
4360
- .join(this.dateFormatRangeSeparator);
4361
- }
4362
- else {
4363
- this.inputMask.value = this.dateToString(this.dpInstance.selectedDates[0]);
4364
- }
4519
+ this.inputMask.value = this.formatDatesForMask(this.dpInstance.selectedDates);
4520
+ }
4521
+ }
4522
+ }
4523
+ // Override input.value so external consumers get ISO strings
4524
+ // while iMask continues to work with locale-formatted display text via NativeInputMaskElement
4525
+ setupValueOverride() {
4526
+ if (!this.dpInput)
4527
+ return;
4528
+ Object.defineProperty(this.dpInput, 'value', {
4529
+ get: this.getInputIsoValue.bind(this),
4530
+ set: this.setInputIsoValue.bind(this),
4531
+ configurable: true,
4532
+ enumerable: true,
4533
+ });
4534
+ }
4535
+ getIsoDates() {
4536
+ const nativeVal = getNativeValue(this.dpInput);
4537
+ const DIGITS_PER_DATE = 8; // dd(2) + mm(2) + yyyy(4)
4538
+ if (!this.range) {
4539
+ const digits = nativeVal?.replaceAll(/\D/g, '') ?? '';
4540
+ if (digits.length < DIGITS_PER_DATE)
4541
+ return [];
4542
+ const date = this.stringToDate(nativeVal);
4543
+ return date && isValidDate(date) ? [dateToIso(date)] : [];
4544
+ }
4545
+ const parts = nativeVal?.split(this.dateFormatRangeSeparator) ?? [];
4546
+ const startDigits = parts[0]?.replaceAll(/\D/g, '') ?? '';
4547
+ const endDigits = parts[1]?.replaceAll(/\D/g, '') ?? '';
4548
+ const start = startDigits.length >= DIGITS_PER_DATE ? this.stringToDate(parts[0]) : null;
4549
+ const end = endDigits.length >= DIGITS_PER_DATE ? this.stringToDate(parts[1]) : null;
4550
+ const result = [];
4551
+ if (start && isValidDate(start))
4552
+ result.push(dateToIso(start));
4553
+ if (end && isValidDate(end))
4554
+ result.push(dateToIso(end));
4555
+ return result;
4556
+ }
4557
+ getInputIsoValue() {
4558
+ const dates = this.getIsoDates();
4559
+ if (!this.range) {
4560
+ return dates[0] ?? '';
4561
+ }
4562
+ return dates;
4563
+ }
4564
+ serializeIsoValue() {
4565
+ return JSON.stringify(this.getIsoDates());
4566
+ }
4567
+ setInputIsoValue(val) {
4568
+ if (this._isInternalUpdate)
4569
+ return;
4570
+ this._isInternalUpdate = true;
4571
+ try {
4572
+ let isoValues;
4573
+ if (Array.isArray(val)) {
4574
+ isoValues = val;
4365
4575
  }
4576
+ else {
4577
+ isoValues = val ? val.split(',').map(s => s.trim()) : [];
4578
+ }
4579
+ const dates = isoValues
4580
+ .filter(Boolean)
4581
+ .map(iso => isoToDate(iso))
4582
+ .filter(d => d && isValidDate(d));
4583
+ if (dates.length === 0) {
4584
+ this.inputMask.value = '';
4585
+ this.dpInstance?.clear();
4586
+ return;
4587
+ }
4588
+ this.inputMask.value = this.formatDatesForMask(dates);
4589
+ this.dpInstance?.clear();
4590
+ this.dpInstance?.selectDate(this.range ? dates : dates[0]);
4591
+ this.dpInstance?.setViewDate(dates[0]);
4592
+ }
4593
+ finally {
4594
+ this._isInternalUpdate = false;
4366
4595
  }
4367
4596
  }
4368
4597
  async configDatePicker() {
4369
4598
  const locale = await this.airLocale();
4370
- if (!this.inline) {
4371
- this.dpInput = this.host.querySelector('input');
4372
- this.setUpMask();
4599
+ this.dpInput = this.host.querySelector('input');
4600
+ if (!this.dpInput) {
4601
+ console.error('The post-date-picker component requires a slotted <input> element.');
4602
+ return;
4603
+ }
4604
+ this.dpInput.type = this.inline ? 'hidden' : 'text';
4605
+ // Capture and clear initial value before mask setup, since iMask would
4606
+ // interpret an ISO string as locale-formatted text and garble it
4607
+ const initialValue = this.dpInput.value;
4608
+ this.dpInput.value = '';
4609
+ this.setUpMask();
4610
+ this.setupValueOverride();
4611
+ if (initialValue) {
4612
+ this.setInputIsoValue(initialValue);
4373
4613
  }
4374
4614
  this.dpContainer = this.host.shadowRoot.querySelector('.datepicker-container');
4375
4615
  if (this.dpContainer) {
@@ -4388,8 +4628,8 @@ const PostDatePicker = class {
4388
4628
  showOtherMonths: false,
4389
4629
  moveToOtherMonthsOnSelect: true,
4390
4630
  startDate: this.startDate,
4391
- minDate: this.min,
4392
- maxDate: this.max,
4631
+ minDate: this.min ? isoToDate(this.min) : undefined,
4632
+ maxDate: this.max ? isoToDate(this.max) : undefined,
4393
4633
  locale: locale,
4394
4634
  dateFormat: locale.dateFormat,
4395
4635
  firstDay: locale.firstDay,
@@ -4406,8 +4646,14 @@ const PostDatePicker = class {
4406
4646
  this.updateNavigationButtonLabels();
4407
4647
  },
4408
4648
  onSelect: ({ date }) => {
4409
- if (!date || (Array.isArray(date) && date.length === 0))
4649
+ // Handle deselection (clicking the same date again)
4650
+ if (!date || (Array.isArray(date) && date.length === 0)) {
4651
+ if (this._isInternalUpdate)
4652
+ return;
4653
+ this.inputMask.value = '';
4654
+ this.emitInputEvents();
4410
4655
  return;
4656
+ }
4411
4657
  this.getCells().forEach(c => {
4412
4658
  c.setAttribute('aria-selected', c.classList.contains('-selected-') ? 'true' : 'false');
4413
4659
  });
@@ -4416,33 +4662,19 @@ const PostDatePicker = class {
4416
4662
  this.skipOnSelectCount--;
4417
4663
  return;
4418
4664
  }
4419
- // update props
4420
- if (Array.isArray(date) && date.length === 2) {
4421
- this.selectedStartDate = this.dateToIso(date[0]);
4422
- this.selectedEndDate = this.dateToIso(date[1]);
4423
- }
4424
- else if (!Array.isArray(date)) {
4425
- this.selectedStartDate = this.dateToIso(date);
4426
- this.selectedEndDate = undefined;
4665
+ // If this selection was triggered by the value setter, don't re-emit
4666
+ if (this._isInternalUpdate)
4667
+ return;
4668
+ const dates = Array.isArray(date) ? date : [date];
4669
+ const isPartialRange = this.range && dates.length === 1;
4670
+ // Update the input mask value and emit events
4671
+ this.inputMask.value = this.formatDatesForMask(dates);
4672
+ this.emitInputEvents();
4673
+ // If range & only one date has been selected, user should stay in the DP
4674
+ if (isPartialRange) {
4675
+ return;
4427
4676
  }
4428
- this.postUpdateDates.emit(Array.isArray(date) ? date.map(d => this.dateToIso(d)) : this.dateToIso(date));
4429
- // Assign value to the input, close the popover and focus on the input
4430
- if (this.dpInput) {
4431
- if (Array.isArray(date)) {
4432
- this.inputMask.value = date
4433
- .map(d => this.dateToString(d))
4434
- .join(this.dateFormatRangeSeparator);
4435
- this.updateInputValue();
4436
- }
4437
- else if (date) {
4438
- // If there is a date, set it to the input. No date = same date as before
4439
- this.inputMask.value = this.dateToString(date);
4440
- this.updateInputValue();
4441
- }
4442
- // If range & only one date has been selected, user should stay in the DP
4443
- if (this.range && Array.isArray(date) && date.length === 1) {
4444
- return;
4445
- }
4677
+ if (!this.inline) {
4446
4678
  this.popoverRef?.hide();
4447
4679
  requestAnimationFrame(() => this.dpTrigger.focus());
4448
4680
  }
@@ -4451,41 +4683,46 @@ const PostDatePicker = class {
4451
4683
  this.enhanceAccessibility();
4452
4684
  },
4453
4685
  onRenderCell: data => {
4454
- const internal = this.internalOnRenderCell(data);
4455
- const custom = this.renderCellCallback?.(data);
4456
- return this.mergeRenderCellResults(internal, custom);
4686
+ const internal = renderCellAccessibility(data, this.localeCode);
4687
+ const custom = this.cellConfig?.(data.date, data.cellType);
4688
+ return mergeRenderCellResults(internal, custom);
4457
4689
  },
4458
4690
  };
4459
4691
  this.dpInstance = new AirDatepicker(this.dpContainer, options);
4460
4692
  this.reorderNavigation();
4461
4693
  this.prevBtn?.addEventListener('click', this.handlePrevNextClick);
4462
4694
  this.nextBtn?.addEventListener('click', this.handlePrevNextClick);
4463
- this.handleSelectedDates();
4695
+ this.syncInputToDp();
4464
4696
  }
4465
4697
  }
4466
- updateInputValue() {
4698
+ emitInputEvents() {
4467
4699
  this.inputMask.updateValue();
4468
- // Emit the native input and change events
4700
+ const currentValue = this.serializeIsoValue();
4701
+ if (currentValue === this._lastInputValue) {
4702
+ return;
4703
+ }
4704
+ this._lastInputValue = currentValue;
4705
+ this.maskElement.allowEvents = true;
4469
4706
  this.dpInput.dispatchEvent(new InputEvent('input', { bubbles: true }));
4470
4707
  this.dpInput.dispatchEvent(new InputEvent('change', { bubbles: true }));
4708
+ this.maskElement.allowEvents = false;
4471
4709
  }
4472
- handleSelectedDates() {
4710
+ formatDatesForMask(dates) {
4711
+ if (dates.length === 0)
4712
+ return '';
4473
4713
  if (this.range) {
4474
- if ((this.selectedStartDate && !this.selectedEndDate) ||
4475
- (!this.selectedStartDate && this.selectedEndDate)) {
4476
- console.error('The range date picker expects either no selected dates or both of them defined.');
4477
- }
4478
- else if (this.selectedStartDate && this.selectedEndDate) {
4479
- this.dpInstance.selectDate([
4480
- this.isoToDate(this.selectedStartDate),
4481
- this.isoToDate(this.selectedEndDate),
4482
- ]);
4483
- }
4714
+ return dates.map(d => this.dateToString(d)).join(this.dateFormatRangeSeparator);
4484
4715
  }
4485
- else {
4486
- if (this.selectedStartDate && this.isoToDate(this.selectedStartDate)) {
4487
- this.dpInstance.selectDate(this.isoToDate(this.selectedStartDate));
4488
- }
4716
+ return this.dateToString(dates[0]);
4717
+ }
4718
+ syncInputToDp() {
4719
+ const isoDates = this.getIsoDates();
4720
+ if (isoDates.length === 0)
4721
+ return;
4722
+ const dates = isoDates.map(iso => isoToDate(iso)).filter(d => d && isValidDate(d));
4723
+ if (dates.length > 0) {
4724
+ this.dpInstance.selectDate(this.range ? dates : dates[0]);
4725
+ this.dpInstance.setViewDate(dates[0]);
4489
4726
  }
4490
4727
  }
4491
4728
  attachTitleBtnListener() {
@@ -4497,67 +4734,6 @@ const PostDatePicker = class {
4497
4734
  this.titleBtn.addEventListener('click', this.forceTitleClickToYear, { capture: true });
4498
4735
  });
4499
4736
  }
4500
- /**
4501
- * Add role and aria-label to each grid cell
4502
- */
4503
- internalOnRenderCell({ date, cellType }) {
4504
- if (cellType === 'day') {
4505
- return {
4506
- attrs: {
4507
- 'role': 'gridcell',
4508
- 'aria-label': date.toLocaleDateString(this.localeCode, {
4509
- weekday: 'long',
4510
- year: 'numeric',
4511
- month: 'long',
4512
- day: 'numeric',
4513
- }),
4514
- },
4515
- };
4516
- }
4517
- else if (cellType === 'month') {
4518
- return {
4519
- attrs: {
4520
- 'role': 'gridcell',
4521
- 'aria-label': date.toLocaleDateString(this.localeCode, {
4522
- year: 'numeric',
4523
- month: 'long',
4524
- }),
4525
- },
4526
- };
4527
- }
4528
- else if (cellType === 'year') {
4529
- return {
4530
- attrs: {
4531
- 'role': 'gridcell',
4532
- 'aria-label': date.toLocaleDateString(this.localeCode, {
4533
- year: 'numeric',
4534
- }),
4535
- },
4536
- };
4537
- }
4538
- }
4539
- /**
4540
- * Merge the internal render cell (adding of role + aria-label attributes) and the user's render cell (disabling dates, etc.)
4541
- * @param base Internal render cell
4542
- * @param custom User render cell
4543
- * @returns Merged render cell
4544
- */
4545
- mergeRenderCellResults(base, custom) {
4546
- if (!base)
4547
- return custom;
4548
- if (!custom)
4549
- return base;
4550
- return {
4551
- ...base,
4552
- ...custom,
4553
- attrs: {
4554
- ...(base.attrs ?? {}),
4555
- ...(custom.attrs ?? {}),
4556
- },
4557
- classes: [base.classes, custom.classes].filter(Boolean).join(' '),
4558
- disabled: base.disabled || custom.disabled,
4559
- };
4560
- }
4561
4737
  setupNavObserver() {
4562
4738
  if (typeof MutationObserver === 'undefined')
4563
4739
  return;
@@ -4603,17 +4779,16 @@ const PostDatePicker = class {
4603
4779
  });
4604
4780
  }
4605
4781
  addInputListener() {
4606
- this.dpInput.addEventListener('blur', this.handleInputBlur);
4782
+ this._lastInputValue = this.serializeIsoValue();
4783
+ if (!this.inline) {
4784
+ this.dpInput.addEventListener('blur', this.handleInputBlur);
4785
+ }
4786
+ this.dpInput.addEventListener('input', this.handleInputEvent);
4607
4787
  }
4608
4788
  resetSelection() {
4609
4789
  this.skipOnSelectCount = 0;
4610
4790
  this.dpInstance.clear();
4611
4791
  this.dpInstance.setViewDate(this.today);
4612
- this.selectedStartDate = undefined;
4613
- this.selectedEndDate = undefined;
4614
- }
4615
- isValidDate(date) {
4616
- return date instanceof Date && !Number.isNaN(date.getTime());
4617
4792
  }
4618
4793
  syncDatePickerState() {
4619
4794
  this.inputDisabled = this.dpInput.disabled;
@@ -4625,15 +4800,11 @@ const PostDatePicker = class {
4625
4800
  this.setupInputObserver();
4626
4801
  this.validateLocale();
4627
4802
  this.validateInline();
4803
+ this.addInputListener();
4804
+ this.syncDatePickerState();
4628
4805
  if (this.inline) {
4629
4806
  requestAnimationFrame(() => this.enhanceAccessibility(false));
4630
4807
  }
4631
- else {
4632
- this.addInputListener();
4633
- requestAnimationFrame(() => {
4634
- this.syncDatePickerState();
4635
- });
4636
- }
4637
4808
  }
4638
4809
  disconnectedCallback() {
4639
4810
  this.host.shadowRoot?.removeEventListener('keydown', this.handleTab, true);
@@ -4643,6 +4814,7 @@ const PostDatePicker = class {
4643
4814
  this.prevBtn?.removeEventListener('click', this.handlePrevNextClick);
4644
4815
  this.nextBtn?.removeEventListener('click', this.handlePrevNextClick);
4645
4816
  this.dpInput?.removeEventListener('blur', this.handleInputBlur);
4817
+ this.dpInput?.removeEventListener('input', this.handleInputEvent);
4646
4818
  this.gridObserver?.disconnect();
4647
4819
  this.navObserver?.disconnect();
4648
4820
  this.inputObserver?.disconnect();
@@ -4652,11 +4824,11 @@ const PostDatePicker = class {
4652
4824
  }
4653
4825
  }
4654
4826
  render() {
4655
- return (h(Host, { key: 'c4cc0eb142d566fa9ba70272cd9ff21c433c4137', "data-version": version }, this.inline && h("div", { key: '8611e4dcfc77187799261e6187304ac1cf46b7c2', class: "datepicker-container", dir: this.textDirection }), !this.inline && (h("div", { key: '5581acfe5acf7ae1d1e445c53870b235f4b18646', dir: this.textDirection }, h("div", { key: 'e24d9772613c92916b6d38e79352fef2c81d9511', class: {
4827
+ return (h(Host, { key: 'e5eeee8c1cb2cc1f63bdf74077a23410e7fdc8e9', "data-version": version }, this.inline && (h("div", { key: '9518bcce6cfd31747c03fb46f8c27ebc58f3dbfc', dir: this.textDirection }, h("slot", { key: '4cf06d1fc9ff12d8f471860166a4561218e3a8c3' }), h("div", { key: '79b7a64d5f4f0ed1ec8e484f93f985da7f060ec2', class: "datepicker-container" }))), !this.inline && (h("div", { key: '2c579c73dcbfab1fc3ba207a97638415815f317d', dir: this.textDirection }, h("div", { key: '80969517b53c43a6c94e2452220f344f3ab49e34', class: {
4656
4828
  'calendar-input': !this.range,
4657
4829
  'calendar-input-range': this.range,
4658
4830
  'disabled': this.inputDisabled,
4659
- } }, h("slot", { key: 'c844d9615f779430969e5d794a903aa30f06f24c' }), h("button", { key: 'cae3200ceb21aa35b3dd443c19875af4cbdc82a4', onClick: () => this.show(), "aria-haspopup": "true", "aria-label": this.textToggleCalendar, disabled: this.inputDisabled, ref: e => (this.dpTrigger = e) }, h("post-icon", { key: 'c6c51b1021aee6726bb01c24ec0fd532e4a41e49', name: "calendar" }))), h("post-popovercontainer", { key: '1c4bccada0ae38c80fa20ae7602510bd0c841757', placement: "bottom-end", offset: PostDatePicker.FLYOUT_OFFSET, ref: e => (this.popoverRef = e) }, h("div", { key: '8dcf519dbf39b8312275ade1b267dc9660c0ffb4', class: "datepicker-container" }))))));
4831
+ } }, h("slot", { key: 'a52d67dd7a762f7811c574c54a5e04864a6d7d66' }), h("button", { key: '68f891aa03c93ef515430cb7849184eba54bd03e', onClick: () => this.show(), "aria-haspopup": "true", "aria-label": this.textToggleCalendar, disabled: this.inputDisabled, ref: e => (this.dpTrigger = e) }, h("post-icon", { key: '5d9544388a2017906575e1dba8186641a556d09f', name: "calendar" }))), h("post-popovercontainer", { key: '646481b281bb1df3e856fab125fad3eb6bcc3f6d', placement: "bottom-end", offset: PostDatePicker.FLYOUT_OFFSET, ref: e => (this.popoverRef = e) }, h("div", { key: '3482284992582511e01ac60832ca119f54905b56', class: "datepicker-container" }))))));
4660
4832
  }
4661
4833
  get host() { return getElement(this); }
4662
4834
  static get watchers() { return {
@@ -4668,20 +4840,18 @@ const PostDatePicker = class {
4668
4840
  "range": [{
4669
4841
  "updateRange": 0
4670
4842
  }],
4843
+ "min": [{
4844
+ "updateMin": 0
4845
+ }],
4846
+ "max": [{
4847
+ "updateMax": 0
4848
+ }],
4671
4849
  "inline": [{
4672
4850
  "validateInline": 0
4673
4851
  }]
4674
4852
  }; }
4675
4853
  };
4676
4854
  PostDatePicker.FLYOUT_OFFSET = 4;
4677
- __decorate([
4678
- DateValue(),
4679
- IsoDate()
4680
- ], PostDatePicker.prototype, "selectedStartDate", void 0);
4681
- __decorate([
4682
- DateValue(),
4683
- IsoDate()
4684
- ], PostDatePicker.prototype, "selectedEndDate", void 0);
4685
4855
  __decorate([
4686
4856
  DateValue(),
4687
4857
  IsoDate()