@nasa-terra/components 0.0.29 → 0.0.30

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 (338) hide show
  1. package/cdn/chunks/{chunk.Q6JDB7UF.js → chunk.2B5MWFZJ.js} +1 -1
  2. package/cdn/chunks/{chunk.KRV3QC6E.js → chunk.2IBDQF7X.js} +1 -1
  3. package/cdn/chunks/{chunk.MOLJLF6T.js → chunk.2KO7WMDA.js} +1 -1
  4. package/cdn/chunks/{chunk.O2FDJRVL.js → chunk.2ZTQTPGQ.js} +1 -1
  5. package/cdn/chunks/chunk.567ZKY6U.js +11 -0
  6. package/cdn/chunks/{chunk.GF7FCO7U.js → chunk.57KITL7R.js} +115 -21
  7. package/{dist/chunks/chunk.QND3EL2M.js → cdn/chunks/chunk.5YPKED3D.js} +1 -1
  8. package/cdn/chunks/{chunk.XZLBSMUJ.js → chunk.63W2KW34.js} +1 -1
  9. package/cdn/chunks/{chunk.HLLY7QKL.js → chunk.6RTRSHJT.js} +4 -4
  10. package/{dist/chunks/chunk.LSCC4BWP.js → cdn/chunks/chunk.7F6COZGY.js} +1 -1
  11. package/cdn/chunks/{chunk.QUCOTU2W.js → chunk.ABJ2K7TM.js} +1 -1
  12. package/cdn/chunks/{chunk.HSHJMWBR.js → chunk.AX2SA27I.js} +1 -1
  13. package/cdn/chunks/{chunk.PLFKPXGA.js → chunk.BJNWBPC2.js} +1 -1
  14. package/cdn/chunks/{chunk.VEENI5ZG.js → chunk.BWPJFRNN.js} +1 -1
  15. package/cdn/chunks/chunk.CEIZPS3F.js +14 -0
  16. package/{dist/chunks/chunk.5VZI3AW6.js → cdn/chunks/chunk.DDGJ6BLG.js} +1 -1
  17. package/cdn/chunks/{chunk.OMGRHNEB.js → chunk.EFOVA2JJ.js} +36 -36
  18. package/cdn/chunks/{chunk.XIE55A7V.js → chunk.EKLIR3WI.js} +1 -1
  19. package/{dist/chunks/chunk.6NV24MHZ.js → cdn/chunks/chunk.F2MIC3AX.js} +1 -1
  20. package/cdn/chunks/{chunk.ZM74J5O7.js → chunk.GDSSJKN2.js} +4 -4
  21. package/cdn/chunks/{chunk.R4PWO4RV.js → chunk.GSG6MPDX.js} +1 -1
  22. package/cdn/chunks/{chunk.HC2QXV76.js → chunk.HFMQVMLF.js} +4 -4
  23. package/cdn/chunks/chunk.HLNHG2BS.js +25 -0
  24. package/cdn/chunks/{chunk.BH3A72JP.js → chunk.HXEZAY6X.js} +2 -2
  25. package/cdn/chunks/{chunk.DSBAUO4Q.js → chunk.I6AG4GNV.js} +1 -1
  26. package/cdn/chunks/{chunk.FAICFDGD.js → chunk.JLUCY2KC.js} +1 -27
  27. package/cdn/chunks/{chunk.MJY6U2Q2.js → chunk.JXGOY6TG.js} +14 -6
  28. package/cdn/chunks/{chunk.CMTARP4Z.js → chunk.KFKV4IIY.js} +8 -8
  29. package/cdn/chunks/{chunk.VO4QBWR6.js → chunk.KJEKFNS4.js} +20 -20
  30. package/cdn/chunks/{chunk.XUJ6GG3I.js → chunk.LCPNNUVW.js} +4 -4
  31. package/cdn/chunks/chunk.LLGXVXUH.js +571 -0
  32. package/cdn/chunks/{chunk.MOQDQMCK.js → chunk.LMBQZGKV.js} +1 -1
  33. package/{dist/chunks/chunk.YQCBR4B6.js → cdn/chunks/chunk.MJAGRW43.js} +1 -1
  34. package/cdn/chunks/{chunk.2NNEVPUU.js → chunk.MMPYQ7JX.js} +1 -1
  35. package/cdn/chunks/{chunk.NXRLD6HP.js → chunk.MU5CIHVF.js} +1 -1
  36. package/cdn/chunks/{chunk.3BDUSUJJ.js → chunk.N3DIGSJT.js} +1 -1
  37. package/{dist/chunks/chunk.4RD7BI5G.js → cdn/chunks/chunk.N4W3LSG4.js} +1 -1
  38. package/cdn/chunks/{chunk.WGDILZM6.js → chunk.NMJ34B6C.js} +3 -3
  39. package/cdn/chunks/{chunk.EK2WNRX7.js → chunk.O7MMFKKX.js} +2 -2
  40. package/cdn/chunks/{chunk.EZSX4R2K.js → chunk.PRXO3ACA.js} +1 -1
  41. package/{dist/chunks/chunk.V73GDG7A.js → cdn/chunks/chunk.PXFI6DWW.js} +1 -1
  42. package/cdn/chunks/{chunk.4JSCLX3L.js → chunk.QALWOJYN.js} +1 -1
  43. package/cdn/chunks/chunk.QKFBOZ3A.js +21 -0
  44. package/cdn/chunks/{chunk.Z2TYLEAP.js → chunk.RE7Y5324.js} +15 -22
  45. package/cdn/chunks/{chunk.SWEK2UAG.js → chunk.RU6G6JLS.js} +34 -4
  46. package/cdn/chunks/chunk.SBI2FAOG.js +11 -0
  47. package/cdn/chunks/{chunk.WD2DJJFP.js → chunk.SCFJOPPV.js} +1 -1
  48. package/cdn/chunks/{chunk.Y742TAGH.js → chunk.SI3J4IDI.js} +1 -1
  49. package/{dist/chunks/chunk.UCLNYZP4.js → cdn/chunks/chunk.SSOHEVCW.js} +1 -1
  50. package/{dist/chunks/chunk.WZRVDBUQ.js → cdn/chunks/chunk.STX2OFFU.js} +1 -1
  51. package/cdn/chunks/{chunk.CGMA5YPP.js → chunk.SULSGF5G.js} +5 -5
  52. package/cdn/chunks/{chunk.CNP3J6CH.js → chunk.T6H2MZZI.js} +59 -19
  53. package/{dist/chunks/chunk.FHPEQ6H6.js → cdn/chunks/chunk.TSLU66AK.js} +1 -1
  54. package/cdn/chunks/{chunk.BJIWBGKZ.js → chunk.TVLFTKMX.js} +100 -39
  55. package/cdn/chunks/{chunk.44NIPIWB.js → chunk.U2IVCX3M.js} +4 -5
  56. package/cdn/chunks/chunk.UXTJ3UQP.js +3812 -0
  57. package/{dist/chunks/chunk.XWVIOQSF.js → cdn/chunks/chunk.VJ4KDMYT.js} +1 -1
  58. package/{dist/chunks/chunk.4KUKUFDS.js → cdn/chunks/chunk.VKEDPAJJ.js} +1 -1
  59. package/cdn/chunks/{chunk.KJJ66WSH.js → chunk.X4S4SQKL.js} +1 -1
  60. package/cdn/chunks/{chunk.WPRM2AN2.js → chunk.XHVCGLFU.js} +1 -1
  61. package/cdn/chunks/{chunk.XRQFG5L5.js → chunk.ZLX4LVIZ.js} +1 -1
  62. package/cdn/chunks/{chunk.H4QA5UXQ.js → chunk.ZP7GOIAS.js} +1 -1
  63. package/cdn/chunks/{chunk.Z4FQAFSZ.js → chunk.ZXJ4IGW5.js} +1 -1
  64. package/cdn/components/browse-variables/browse-variables.component.d.ts +5 -5
  65. package/cdn/components/browse-variables/browse-variables.component.js +22 -22
  66. package/cdn/components/browse-variables/browse-variables.js +23 -23
  67. package/cdn/components/button/button.component.js +3 -3
  68. package/cdn/components/button/button.js +4 -4
  69. package/cdn/components/chip/chip.component.js +2 -2
  70. package/cdn/components/chip/chip.js +3 -3
  71. package/cdn/components/combobox/combobox.component.js +3 -3
  72. package/cdn/components/combobox/combobox.js +4 -4
  73. package/cdn/components/date-picker/date-picker.component.d.ts +39 -0
  74. package/cdn/components/date-picker/date-picker.component.js +12 -0
  75. package/cdn/components/date-picker/date-picker.d.ts +8 -0
  76. package/cdn/components/date-picker/date-picker.js +13 -0
  77. package/cdn/components/{giovanni-search/giovanni-search.styles.js → date-picker/date-picker.styles.js} +3 -3
  78. package/cdn/components/date-range-slider/date-range-slider.component.js +3 -3
  79. package/cdn/components/date-range-slider/date-range-slider.js +4 -4
  80. package/cdn/components/dialog/dialog.component.d.ts +1 -3
  81. package/cdn/components/dialog/dialog.component.js +3 -3
  82. package/cdn/components/dialog/dialog.js +4 -4
  83. package/cdn/components/dialog/dialog.styles.js +1 -1
  84. package/cdn/components/icon/icon.component.js +5 -5
  85. package/cdn/components/icon/icon.js +6 -6
  86. package/cdn/components/icon/library.js +2 -2
  87. package/cdn/components/loader/loader.component.js +2 -2
  88. package/cdn/components/loader/loader.js +3 -3
  89. package/cdn/components/login/login.component.js +15 -15
  90. package/cdn/components/login/login.js +16 -16
  91. package/cdn/components/map/map.component.js +3 -3
  92. package/cdn/components/map/map.js +4 -4
  93. package/cdn/components/plot/plot.component.js +3 -3
  94. package/cdn/components/plot/plot.js +4 -4
  95. package/cdn/components/plot/plot.styles.js +1 -1
  96. package/cdn/components/skeleton/skeleton.component.js +4 -4
  97. package/cdn/components/skeleton/skeleton.js +5 -5
  98. package/cdn/components/spatial-picker/spatial-picker.component.js +4 -4
  99. package/cdn/components/spatial-picker/spatial-picker.js +5 -5
  100. package/cdn/components/time-series/time-series.component.d.ts +17 -0
  101. package/cdn/components/time-series/time-series.component.js +30 -30
  102. package/cdn/components/time-series/time-series.controller.js +1 -1
  103. package/cdn/components/time-series/time-series.js +31 -31
  104. package/cdn/components/time-series/time-series.styles.js +1 -1
  105. package/cdn/components/variable-combobox/lib.d.ts +3 -2
  106. package/cdn/components/variable-combobox/lib.js +3 -1
  107. package/cdn/components/variable-combobox/variable-combobox.component.d.ts +15 -1
  108. package/cdn/components/variable-combobox/variable-combobox.component.js +16 -16
  109. package/cdn/components/variable-combobox/variable-combobox.controller.js +3 -3
  110. package/cdn/components/variable-combobox/variable-combobox.js +17 -17
  111. package/cdn/components/variable-combobox/variable-combobox.styles.js +1 -1
  112. package/cdn/components/variable-combobox/variable-combobox.types.d.ts +2 -0
  113. package/cdn/components/{giovanni-search → variable-keyword-search}/lib.d.ts +1 -1
  114. package/cdn/components/{giovanni-search → variable-keyword-search}/lib.js +1 -1
  115. package/{dist/components/giovanni-search/giovanni-search.component.d.ts → cdn/components/variable-keyword-search/variable-keyword-search.component.d.ts} +3 -3
  116. package/cdn/components/{giovanni-search/giovanni-search.component.js → variable-keyword-search/variable-keyword-search.component.js} +18 -18
  117. package/cdn/components/{giovanni-search/giovanni-search.controller.d.ts → variable-keyword-search/variable-keyword-search.controller.d.ts} +1 -1
  118. package/cdn/components/{giovanni-search/giovanni-search.controller.js → variable-keyword-search/variable-keyword-search.controller.js} +1 -1
  119. package/cdn/components/variable-keyword-search/variable-keyword-search.d.ts +8 -0
  120. package/cdn/components/{giovanni-search/giovanni-search.js → variable-keyword-search/variable-keyword-search.js} +19 -19
  121. package/cdn/components/variable-keyword-search/variable-keyword-search.styles.js +9 -0
  122. package/cdn/custom-elements.json +1988 -1482
  123. package/cdn/events/events.d.ts +1 -1
  124. package/cdn/events/terra-variable-keyword-search-change.d.ts +6 -0
  125. package/cdn/lib/dataset.d.ts +9 -0
  126. package/cdn/react/browse-variables/index.d.ts +1 -1
  127. package/cdn/react/browse-variables/index.js +23 -23
  128. package/cdn/react/button/index.js +4 -4
  129. package/cdn/react/chip/index.js +3 -3
  130. package/cdn/react/combobox/index.js +4 -4
  131. package/cdn/react/date-picker/index.d.ts +14 -0
  132. package/cdn/react/date-picker/index.js +13 -0
  133. package/cdn/react/date-range-slider/index.js +4 -4
  134. package/cdn/react/dialog/index.js +4 -4
  135. package/cdn/react/icon/index.js +6 -6
  136. package/cdn/react/index.d.ts +7 -6
  137. package/cdn/react/index.js +88 -82
  138. package/cdn/react/loader/index.js +3 -3
  139. package/cdn/react/login/index.js +16 -16
  140. package/cdn/react/map/index.js +4 -4
  141. package/cdn/react/plot/index.js +4 -4
  142. package/cdn/react/skeleton/index.js +5 -5
  143. package/cdn/react/spatial-picker/index.js +5 -5
  144. package/cdn/react/time-series/index.js +31 -31
  145. package/cdn/react/variable-combobox/index.js +17 -17
  146. package/{dist/react/giovanni-search → cdn/react/variable-keyword-search}/index.d.ts +5 -5
  147. package/cdn/react/{giovanni-search → variable-keyword-search}/index.js +19 -19
  148. package/cdn/terra-ui-components.d.ts +5 -4
  149. package/cdn/terra-ui-components.js +81 -75
  150. package/cdn/types/vue/index.d.ts +203 -132
  151. package/cdn/types.d.ts +7 -0
  152. package/cdn/utilities/animation.js +2 -2
  153. package/cdn/utilities/icon-library.js +2 -2
  154. package/cdn/vscode.html-custom-data.json +159 -99
  155. package/cdn/web-types.json +356 -223
  156. package/dist/chunks/{chunk.ICYAVVW4.js → chunk.2QTJHB7F.js} +1 -1
  157. package/dist/chunks/{chunk.IYY536HH.js → chunk.2RGRL45T.js} +1 -1
  158. package/dist/chunks/{chunk.WXWUMSQ6.js → chunk.2WHOFNO7.js} +1 -1
  159. package/dist/chunks/{chunk.W7JRXR2Y.js → chunk.2YRBHDWM.js} +1 -1
  160. package/dist/chunks/{chunk.OIO4HWK3.js → chunk.3IIDXU4S.js} +1 -1
  161. package/dist/chunks/{chunk.JXNFBM4G.js → chunk.3J5TZOPP.js} +17 -17
  162. package/dist/chunks/{chunk.SBA3WOAN.js → chunk.3JQPZWUE.js} +1 -1
  163. package/dist/chunks/{chunk.2OY33DUQ.js → chunk.3K3BQXON.js} +1 -1
  164. package/{cdn/chunks/chunk.4XVD3JO6.js → dist/chunks/chunk.3SSCVJFM.js} +1 -1
  165. package/dist/chunks/{chunk.GHDRVO5M.js → chunk.5EHGVGXV.js} +59 -19
  166. package/dist/chunks/{chunk.RV2KFFXW.js → chunk.5LMWCV76.js} +14 -6
  167. package/dist/chunks/{chunk.CCDDGUFW.js → chunk.67EX34DL.js} +1 -27
  168. package/dist/chunks/{chunk.X2NOCGLF.js → chunk.6P4UBSKH.js} +4 -4
  169. package/dist/chunks/chunk.A3JXDHJG.js +11 -0
  170. package/dist/chunks/{chunk.KJQZP5RO.js → chunk.AUB6SKUI.js} +3 -3
  171. package/dist/chunks/{chunk.AKIZ4D6W.js → chunk.BCU2ZKJ4.js} +1 -1
  172. package/dist/chunks/{chunk.BOJX33N7.js → chunk.BVCKNDN2.js} +1 -1
  173. package/{cdn/chunks/chunk.3T5XKTPL.js → dist/chunks/chunk.BXMFNRIQ.js} +1 -1
  174. package/dist/chunks/{chunk.ZCPWIACO.js → chunk.CY76LRGV.js} +1 -1
  175. package/dist/chunks/chunk.DJICCDFZ.js +130 -0
  176. package/dist/chunks/chunk.DP5CSX6S.js +25 -0
  177. package/dist/chunks/{chunk.EGZMQ7T7.js → chunk.DW23TAF4.js} +1 -1
  178. package/dist/chunks/{chunk.G7L4LFF2.js → chunk.E5OMSMPR.js} +4 -4
  179. package/dist/chunks/{chunk.KLX4FSH3.js → chunk.ED4EXVSJ.js} +1 -1
  180. package/{cdn/chunks/chunk.OHPQWGRL.js → dist/chunks/chunk.F5UDJENT.js} +1 -1
  181. package/dist/chunks/chunk.F7GS6U3O.js +21 -0
  182. package/dist/chunks/{chunk.QJGNTLKC.js → chunk.FAIVIYKA.js} +2 -2
  183. package/{cdn/chunks/chunk.VJY3BVCV.js → dist/chunks/chunk.H6K7DI54.js} +1 -1
  184. package/dist/chunks/{chunk.QK5OWFVO.js → chunk.HJGC45MW.js} +34 -4
  185. package/dist/chunks/{chunk.IXA4S7MC.js → chunk.HRODIECS.js} +1 -1
  186. package/dist/chunks/{chunk.HC2GJY4W.js → chunk.IPMALKFU.js} +1 -1
  187. package/dist/chunks/{chunk.2VI37SGK.js → chunk.JPTE36KF.js} +15 -22
  188. package/dist/chunks/{chunk.TRYPXGEF.js → chunk.KAU6YSSX.js} +5 -5
  189. package/dist/chunks/{chunk.6MWZMGHC.js → chunk.KF6GNNY4.js} +1 -1
  190. package/{cdn/chunks/chunk.JPORUQZG.js → dist/chunks/chunk.KY7CFQ2L.js} +1 -1
  191. package/dist/chunks/{chunk.A5MHK2RE.js → chunk.KZQGAFNS.js} +1 -1
  192. package/dist/chunks/{chunk.ZJX62EXO.js → chunk.LDXAXITL.js} +4 -4
  193. package/dist/chunks/{chunk.GRG5Z2VH.js → chunk.MY3D3SMW.js} +1 -1
  194. package/dist/chunks/{chunk.LVFOF3IN.js → chunk.NE2F3K3V.js} +4 -4
  195. package/{cdn/chunks/chunk.4XCAK3VQ.js → dist/chunks/chunk.NQ2Y66ML.js} +1 -1
  196. package/dist/chunks/{chunk.NW3BG32V.js → chunk.NRFKLACI.js} +98 -37
  197. package/dist/chunks/{chunk.3R7FYOEC.js → chunk.NY3FWCB4.js} +1 -1
  198. package/dist/chunks/{chunk.AZFDLGZH.js → chunk.P4V6NTUB.js} +1 -1
  199. package/dist/chunks/{chunk.LIBBEBVE.js → chunk.PVN5GF75.js} +110 -17
  200. package/{cdn/chunks/chunk.34HTZ3BS.js → dist/chunks/chunk.R7ZFWMFX.js} +1 -1
  201. package/dist/chunks/{chunk.MERZEEOA.js → chunk.RAGOKALJ.js} +1 -1
  202. package/dist/chunks/{chunk.VTKHAV5B.js → chunk.RFLNQ553.js} +35 -35
  203. package/{cdn/chunks/chunk.DELCDBUW.js → dist/chunks/chunk.RO6IKZZJ.js} +1 -1
  204. package/{cdn/chunks/chunk.FQ3DGJP3.js → dist/chunks/chunk.SOQ4CR5P.js} +1 -1
  205. package/dist/chunks/{chunk.JOOAZ4RH.js → chunk.T3YDWJBU.js} +1 -1
  206. package/dist/chunks/{chunk.TGFRBJQ2.js → chunk.TOKOGZDW.js} +2 -2
  207. package/dist/chunks/{chunk.Z3BPGAEC.js → chunk.TOSECFXS.js} +4 -5
  208. package/{cdn/chunks/chunk.3YMOUEX5.js → dist/chunks/chunk.U4VDOWEL.js} +1 -1
  209. package/dist/chunks/{chunk.TPLUT5FB.js → chunk.UUUQALNS.js} +1 -1
  210. package/dist/chunks/chunk.W5W4VEOX.js +11 -0
  211. package/dist/chunks/chunk.WAIWLZ6Z.js +332 -0
  212. package/dist/chunks/{chunk.AFNAKALA.js → chunk.XBGMPAGN.js} +1 -1
  213. package/{cdn/chunks/chunk.UDRESO3S.js → dist/chunks/chunk.XJZRUYAI.js} +1 -1
  214. package/dist/chunks/chunk.XTWS7MM5.js +11 -0
  215. package/dist/chunks/{chunk.6SN6X5JU.js → chunk.YF6EKHHQ.js} +1 -1
  216. package/{cdn/chunks/chunk.7MXUXHLV.js → dist/chunks/chunk.YFE22UAS.js} +1 -1
  217. package/dist/chunks/{chunk.UCFFAP7X.js → chunk.YY2NUPBF.js} +1 -1
  218. package/dist/chunks/{chunk.CXHYT4QV.js → chunk.Z2X4WGGX.js} +1 -1
  219. package/dist/components/browse-variables/browse-variables.component.d.ts +5 -5
  220. package/dist/components/browse-variables/browse-variables.component.js +17 -17
  221. package/dist/components/browse-variables/browse-variables.js +18 -18
  222. package/dist/components/button/button.component.js +3 -3
  223. package/dist/components/button/button.js +4 -4
  224. package/dist/components/chip/chip.component.js +2 -2
  225. package/dist/components/chip/chip.js +3 -3
  226. package/dist/components/combobox/combobox.component.js +3 -3
  227. package/dist/components/combobox/combobox.js +4 -4
  228. package/dist/components/date-picker/date-picker.component.d.ts +39 -0
  229. package/dist/components/date-picker/date-picker.component.js +9 -0
  230. package/dist/components/date-picker/date-picker.d.ts +8 -0
  231. package/dist/components/date-picker/date-picker.js +10 -0
  232. package/dist/components/date-picker/date-picker.styles.d.ts +2 -0
  233. package/dist/components/date-picker/date-picker.styles.js +7 -0
  234. package/dist/components/date-range-slider/date-range-slider.component.js +3 -3
  235. package/dist/components/date-range-slider/date-range-slider.js +4 -4
  236. package/dist/components/dialog/dialog.component.d.ts +1 -3
  237. package/dist/components/dialog/dialog.component.js +3 -3
  238. package/dist/components/dialog/dialog.js +4 -4
  239. package/dist/components/dialog/dialog.styles.js +1 -1
  240. package/dist/components/icon/icon.component.js +5 -5
  241. package/dist/components/icon/icon.js +6 -6
  242. package/dist/components/icon/library.js +2 -2
  243. package/dist/components/loader/loader.component.js +2 -2
  244. package/dist/components/loader/loader.js +3 -3
  245. package/dist/components/login/login.component.js +12 -12
  246. package/dist/components/login/login.js +13 -13
  247. package/dist/components/map/map.component.js +3 -3
  248. package/dist/components/map/map.js +4 -4
  249. package/dist/components/plot/plot.component.js +3 -3
  250. package/dist/components/plot/plot.js +4 -4
  251. package/dist/components/plot/plot.styles.js +1 -1
  252. package/dist/components/skeleton/skeleton.component.js +2 -2
  253. package/dist/components/skeleton/skeleton.js +3 -3
  254. package/dist/components/spatial-picker/spatial-picker.component.js +4 -4
  255. package/dist/components/spatial-picker/spatial-picker.js +5 -5
  256. package/dist/components/time-series/time-series.component.d.ts +17 -0
  257. package/dist/components/time-series/time-series.component.js +25 -25
  258. package/dist/components/time-series/time-series.controller.js +1 -1
  259. package/dist/components/time-series/time-series.js +26 -26
  260. package/dist/components/time-series/time-series.styles.js +1 -1
  261. package/dist/components/variable-combobox/lib.d.ts +3 -2
  262. package/dist/components/variable-combobox/lib.js +3 -1
  263. package/dist/components/variable-combobox/variable-combobox.component.d.ts +15 -1
  264. package/dist/components/variable-combobox/variable-combobox.component.js +13 -13
  265. package/dist/components/variable-combobox/variable-combobox.controller.js +2 -2
  266. package/dist/components/variable-combobox/variable-combobox.js +14 -14
  267. package/dist/components/variable-combobox/variable-combobox.styles.js +1 -1
  268. package/dist/components/variable-combobox/variable-combobox.types.d.ts +2 -0
  269. package/dist/components/{giovanni-search → variable-keyword-search}/lib.d.ts +1 -1
  270. package/dist/components/{giovanni-search → variable-keyword-search}/lib.js +1 -1
  271. package/{cdn/components/giovanni-search/giovanni-search.component.d.ts → dist/components/variable-keyword-search/variable-keyword-search.component.d.ts} +3 -3
  272. package/dist/components/variable-keyword-search/variable-keyword-search.component.js +23 -0
  273. package/dist/components/{giovanni-search/giovanni-search.controller.d.ts → variable-keyword-search/variable-keyword-search.controller.d.ts} +1 -1
  274. package/dist/components/{giovanni-search/giovanni-search.controller.js → variable-keyword-search/variable-keyword-search.controller.js} +1 -1
  275. package/dist/components/variable-keyword-search/variable-keyword-search.d.ts +8 -0
  276. package/dist/components/variable-keyword-search/variable-keyword-search.js +24 -0
  277. package/dist/components/variable-keyword-search/variable-keyword-search.styles.d.ts +2 -0
  278. package/dist/components/variable-keyword-search/variable-keyword-search.styles.js +7 -0
  279. package/dist/custom-elements.json +1988 -1482
  280. package/dist/events/events.d.ts +1 -1
  281. package/dist/events/terra-variable-keyword-search-change.d.ts +6 -0
  282. package/dist/lib/dataset.d.ts +9 -0
  283. package/dist/react/browse-variables/index.d.ts +1 -1
  284. package/dist/react/browse-variables/index.js +18 -18
  285. package/dist/react/button/index.js +4 -4
  286. package/dist/react/chip/index.js +3 -3
  287. package/dist/react/combobox/index.js +4 -4
  288. package/dist/react/date-picker/index.d.ts +14 -0
  289. package/dist/react/date-picker/index.js +10 -0
  290. package/dist/react/date-range-slider/index.js +4 -4
  291. package/dist/react/dialog/index.js +4 -4
  292. package/dist/react/icon/index.js +6 -6
  293. package/dist/react/index.d.ts +7 -6
  294. package/dist/react/index.js +81 -75
  295. package/dist/react/loader/index.js +3 -3
  296. package/dist/react/login/index.js +13 -13
  297. package/dist/react/map/index.js +4 -4
  298. package/dist/react/plot/index.js +4 -4
  299. package/dist/react/skeleton/index.js +3 -3
  300. package/dist/react/spatial-picker/index.js +5 -5
  301. package/dist/react/time-series/index.js +26 -26
  302. package/dist/react/variable-combobox/index.js +14 -14
  303. package/{cdn/react/giovanni-search → dist/react/variable-keyword-search}/index.d.ts +5 -5
  304. package/dist/react/variable-keyword-search/index.js +24 -0
  305. package/dist/terra-ui-components.d.ts +5 -4
  306. package/dist/terra-ui-components.js +74 -68
  307. package/dist/terra_ui_components-0.0.30-py3-none-any.whl +0 -0
  308. package/dist/{terra_ui_components-0.0.29.tar.gz → terra_ui_components-0.0.30.tar.gz} +0 -0
  309. package/dist/types/vue/index.d.ts +203 -132
  310. package/dist/types.d.ts +7 -0
  311. package/dist/utilities/icon-library.js +2 -2
  312. package/dist/vscode.html-custom-data.json +159 -99
  313. package/dist/web-types.json +356 -223
  314. package/package.json +2 -1
  315. package/cdn/chunks/chunk.GQLH2MRB.js +0 -25
  316. package/cdn/chunks/chunk.LBQPBXCY.js +0 -11
  317. package/cdn/chunks/chunk.U43KGD3Q.js +0 -6136
  318. package/cdn/components/giovanni-search/giovanni-search.d.ts +0 -8
  319. package/cdn/events/terra-giovanni-search-change.d.ts +0 -6
  320. package/dist/chunks/chunk.OAWTBOBI.js +0 -203
  321. package/dist/chunks/chunk.OVSUMCZT.js +0 -11
  322. package/dist/chunks/chunk.TVP7YR6X.js +0 -25
  323. package/dist/components/giovanni-search/giovanni-search.component.js +0 -23
  324. package/dist/components/giovanni-search/giovanni-search.d.ts +0 -8
  325. package/dist/components/giovanni-search/giovanni-search.js +0 -24
  326. package/dist/components/giovanni-search/giovanni-search.styles.js +0 -7
  327. package/dist/events/terra-giovanni-search-change.d.ts +0 -6
  328. package/dist/react/giovanni-search/index.js +0 -24
  329. package/dist/terra_ui_components-0.0.29-py3-none-any.whl +0 -0
  330. package/cdn/chunks/{chunk.MDRUDBRH.js → chunk.7DOMZGX7.js} +3 -3
  331. package/cdn/chunks/{chunk.OBHNA5IZ.js → chunk.WTPVOF7N.js} +5 -5
  332. package/cdn/components/{giovanni-search/giovanni-search.styles.d.ts → date-picker/date-picker.styles.d.ts} +0 -0
  333. package/{dist/components/giovanni-search/giovanni-search.styles.d.ts → cdn/components/variable-keyword-search/variable-keyword-search.styles.d.ts} +0 -0
  334. package/cdn/components/{giovanni-search/giovanni-search.types.d.ts → variable-keyword-search/variable-keyword-search.types.d.ts} +0 -0
  335. package/cdn/components/{giovanni-search/giovanni-search.types.js → variable-keyword-search/variable-keyword-search.types.js} +0 -0
  336. package/dist/chunks/{chunk.MDRUDBRH.js → chunk.7DOMZGX7.js} +3 -3
  337. /package/dist/components/{giovanni-search/giovanni-search.types.d.ts → variable-keyword-search/variable-keyword-search.types.d.ts} +0 -0
  338. /package/dist/components/{giovanni-search/giovanni-search.types.js → variable-keyword-search/variable-keyword-search.types.js} +0 -0
@@ -0,0 +1,3812 @@
1
+ import {
2
+ date_picker_styles_default
3
+ } from "./chunk.CEIZPS3F.js";
4
+ import {
5
+ TerraElement,
6
+ component_styles_default
7
+ } from "./chunk.AX2SA27I.js";
8
+ import {
9
+ e,
10
+ n
11
+ } from "./chunk.QCK7PTWV.js";
12
+ import {
13
+ x
14
+ } from "./chunk.PQFHJHNO.js";
15
+ import {
16
+ __decorateClass,
17
+ __spreadProps,
18
+ __spreadValues
19
+ } from "./chunk.MR27IH5Z.js";
20
+
21
+ // node_modules/lit-flatpickr/node_modules/tslib/tslib.es6.js
22
+ function __decorate(decorators, target, key, desc) {
23
+ var c3 = arguments.length, r4 = c3 < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d3;
24
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
25
+ r4 = Reflect.decorate(decorators, target, key, desc);
26
+ else
27
+ for (var i4 = decorators.length - 1; i4 >= 0; i4--)
28
+ if (d3 = decorators[i4])
29
+ r4 = (c3 < 3 ? d3(r4) : c3 > 3 ? d3(target, key, r4) : d3(target, key)) || r4;
30
+ return c3 > 3 && r4 && Object.defineProperty(target, key, r4), r4;
31
+ }
32
+
33
+ // node_modules/lit-flatpickr/node_modules/@lit/reactive-element/css-tag.js
34
+ var t = window;
35
+ var e2 = t.ShadowRoot && (void 0 === t.ShadyCSS || t.ShadyCSS.nativeShadow) && "adoptedStyleSheets" in Document.prototype && "replace" in CSSStyleSheet.prototype;
36
+ var s = Symbol();
37
+ var n2 = /* @__PURE__ */ new WeakMap();
38
+ var o = class {
39
+ constructor(t3, e8, n8) {
40
+ if (this._$cssResult$ = true, n8 !== s)
41
+ throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");
42
+ this.cssText = t3, this.t = e8;
43
+ }
44
+ get styleSheet() {
45
+ let t3 = this.o;
46
+ const s5 = this.t;
47
+ if (e2 && void 0 === t3) {
48
+ const e8 = void 0 !== s5 && 1 === s5.length;
49
+ e8 && (t3 = n2.get(s5)), void 0 === t3 && ((this.o = t3 = new CSSStyleSheet()).replaceSync(this.cssText), e8 && n2.set(s5, t3));
50
+ }
51
+ return t3;
52
+ }
53
+ toString() {
54
+ return this.cssText;
55
+ }
56
+ };
57
+ var r = (t3) => new o("string" == typeof t3 ? t3 : t3 + "", void 0, s);
58
+ var i = (t3, ...e8) => {
59
+ const n8 = 1 === t3.length ? t3[0] : e8.reduce((e9, s5, n9) => e9 + ((t4) => {
60
+ if (true === t4._$cssResult$)
61
+ return t4.cssText;
62
+ if ("number" == typeof t4)
63
+ return t4;
64
+ throw Error("Value passed to 'css' function must be a 'css' function result: " + t4 + ". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.");
65
+ })(s5) + t3[n9 + 1], t3[0]);
66
+ return new o(n8, t3, s);
67
+ };
68
+ var S = (s5, n8) => {
69
+ e2 ? s5.adoptedStyleSheets = n8.map((t3) => t3 instanceof CSSStyleSheet ? t3 : t3.styleSheet) : n8.forEach((e8) => {
70
+ const n9 = document.createElement("style"), o6 = t.litNonce;
71
+ void 0 !== o6 && n9.setAttribute("nonce", o6), n9.textContent = e8.cssText, s5.appendChild(n9);
72
+ });
73
+ };
74
+ var c = e2 ? (t3) => t3 : (t3) => t3 instanceof CSSStyleSheet ? ((t4) => {
75
+ let e8 = "";
76
+ for (const s5 of t4.cssRules)
77
+ e8 += s5.cssText;
78
+ return r(e8);
79
+ })(t3) : t3;
80
+
81
+ // node_modules/lit-flatpickr/node_modules/@lit/reactive-element/reactive-element.js
82
+ var s2;
83
+ var e3 = window;
84
+ var r2 = e3.trustedTypes;
85
+ var h = r2 ? r2.emptyScript : "";
86
+ var o2 = e3.reactiveElementPolyfillSupport;
87
+ var n3 = { toAttribute(t3, i4) {
88
+ switch (i4) {
89
+ case Boolean:
90
+ t3 = t3 ? h : null;
91
+ break;
92
+ case Object:
93
+ case Array:
94
+ t3 = null == t3 ? t3 : JSON.stringify(t3);
95
+ }
96
+ return t3;
97
+ }, fromAttribute(t3, i4) {
98
+ let s5 = t3;
99
+ switch (i4) {
100
+ case Boolean:
101
+ s5 = null !== t3;
102
+ break;
103
+ case Number:
104
+ s5 = null === t3 ? null : Number(t3);
105
+ break;
106
+ case Object:
107
+ case Array:
108
+ try {
109
+ s5 = JSON.parse(t3);
110
+ } catch (t4) {
111
+ s5 = null;
112
+ }
113
+ }
114
+ return s5;
115
+ } };
116
+ var a = (t3, i4) => i4 !== t3 && (i4 == i4 || t3 == t3);
117
+ var l = { attribute: true, type: String, converter: n3, reflect: false, hasChanged: a };
118
+ var d = "finalized";
119
+ var u = class extends HTMLElement {
120
+ constructor() {
121
+ super(), this._$Ei = /* @__PURE__ */ new Map(), this.isUpdatePending = false, this.hasUpdated = false, this._$El = null, this._$Eu();
122
+ }
123
+ static addInitializer(t3) {
124
+ var i4;
125
+ this.finalize(), (null !== (i4 = this.h) && void 0 !== i4 ? i4 : this.h = []).push(t3);
126
+ }
127
+ static get observedAttributes() {
128
+ this.finalize();
129
+ const t3 = [];
130
+ return this.elementProperties.forEach((i4, s5) => {
131
+ const e8 = this._$Ep(s5, i4);
132
+ void 0 !== e8 && (this._$Ev.set(e8, s5), t3.push(e8));
133
+ }), t3;
134
+ }
135
+ static createProperty(t3, i4 = l) {
136
+ if (i4.state && (i4.attribute = false), this.finalize(), this.elementProperties.set(t3, i4), !i4.noAccessor && !this.prototype.hasOwnProperty(t3)) {
137
+ const s5 = "symbol" == typeof t3 ? Symbol() : "__" + t3, e8 = this.getPropertyDescriptor(t3, s5, i4);
138
+ void 0 !== e8 && Object.defineProperty(this.prototype, t3, e8);
139
+ }
140
+ }
141
+ static getPropertyDescriptor(t3, i4, s5) {
142
+ return { get() {
143
+ return this[i4];
144
+ }, set(e8) {
145
+ const r4 = this[t3];
146
+ this[i4] = e8, this.requestUpdate(t3, r4, s5);
147
+ }, configurable: true, enumerable: true };
148
+ }
149
+ static getPropertyOptions(t3) {
150
+ return this.elementProperties.get(t3) || l;
151
+ }
152
+ static finalize() {
153
+ if (this.hasOwnProperty(d))
154
+ return false;
155
+ this[d] = true;
156
+ const t3 = Object.getPrototypeOf(this);
157
+ if (t3.finalize(), void 0 !== t3.h && (this.h = [...t3.h]), this.elementProperties = new Map(t3.elementProperties), this._$Ev = /* @__PURE__ */ new Map(), this.hasOwnProperty("properties")) {
158
+ const t4 = this.properties, i4 = [...Object.getOwnPropertyNames(t4), ...Object.getOwnPropertySymbols(t4)];
159
+ for (const s5 of i4)
160
+ this.createProperty(s5, t4[s5]);
161
+ }
162
+ return this.elementStyles = this.finalizeStyles(this.styles), true;
163
+ }
164
+ static finalizeStyles(i4) {
165
+ const s5 = [];
166
+ if (Array.isArray(i4)) {
167
+ const e8 = new Set(i4.flat(1 / 0).reverse());
168
+ for (const i5 of e8)
169
+ s5.unshift(c(i5));
170
+ } else
171
+ void 0 !== i4 && s5.push(c(i4));
172
+ return s5;
173
+ }
174
+ static _$Ep(t3, i4) {
175
+ const s5 = i4.attribute;
176
+ return false === s5 ? void 0 : "string" == typeof s5 ? s5 : "string" == typeof t3 ? t3.toLowerCase() : void 0;
177
+ }
178
+ _$Eu() {
179
+ var t3;
180
+ this._$E_ = new Promise((t4) => this.enableUpdating = t4), this._$AL = /* @__PURE__ */ new Map(), this._$Eg(), this.requestUpdate(), null === (t3 = this.constructor.h) || void 0 === t3 || t3.forEach((t4) => t4(this));
181
+ }
182
+ addController(t3) {
183
+ var i4, s5;
184
+ (null !== (i4 = this._$ES) && void 0 !== i4 ? i4 : this._$ES = []).push(t3), void 0 !== this.renderRoot && this.isConnected && (null === (s5 = t3.hostConnected) || void 0 === s5 || s5.call(t3));
185
+ }
186
+ removeController(t3) {
187
+ var i4;
188
+ null === (i4 = this._$ES) || void 0 === i4 || i4.splice(this._$ES.indexOf(t3) >>> 0, 1);
189
+ }
190
+ _$Eg() {
191
+ this.constructor.elementProperties.forEach((t3, i4) => {
192
+ this.hasOwnProperty(i4) && (this._$Ei.set(i4, this[i4]), delete this[i4]);
193
+ });
194
+ }
195
+ createRenderRoot() {
196
+ var t3;
197
+ const s5 = null !== (t3 = this.shadowRoot) && void 0 !== t3 ? t3 : this.attachShadow(this.constructor.shadowRootOptions);
198
+ return S(s5, this.constructor.elementStyles), s5;
199
+ }
200
+ connectedCallback() {
201
+ var t3;
202
+ void 0 === this.renderRoot && (this.renderRoot = this.createRenderRoot()), this.enableUpdating(true), null === (t3 = this._$ES) || void 0 === t3 || t3.forEach((t4) => {
203
+ var i4;
204
+ return null === (i4 = t4.hostConnected) || void 0 === i4 ? void 0 : i4.call(t4);
205
+ });
206
+ }
207
+ enableUpdating(t3) {
208
+ }
209
+ disconnectedCallback() {
210
+ var t3;
211
+ null === (t3 = this._$ES) || void 0 === t3 || t3.forEach((t4) => {
212
+ var i4;
213
+ return null === (i4 = t4.hostDisconnected) || void 0 === i4 ? void 0 : i4.call(t4);
214
+ });
215
+ }
216
+ attributeChangedCallback(t3, i4, s5) {
217
+ this._$AK(t3, s5);
218
+ }
219
+ _$EO(t3, i4, s5 = l) {
220
+ var e8;
221
+ const r4 = this.constructor._$Ep(t3, s5);
222
+ if (void 0 !== r4 && true === s5.reflect) {
223
+ const h3 = (void 0 !== (null === (e8 = s5.converter) || void 0 === e8 ? void 0 : e8.toAttribute) ? s5.converter : n3).toAttribute(i4, s5.type);
224
+ this._$El = t3, null == h3 ? this.removeAttribute(r4) : this.setAttribute(r4, h3), this._$El = null;
225
+ }
226
+ }
227
+ _$AK(t3, i4) {
228
+ var s5;
229
+ const e8 = this.constructor, r4 = e8._$Ev.get(t3);
230
+ if (void 0 !== r4 && this._$El !== r4) {
231
+ const t4 = e8.getPropertyOptions(r4), h3 = "function" == typeof t4.converter ? { fromAttribute: t4.converter } : void 0 !== (null === (s5 = t4.converter) || void 0 === s5 ? void 0 : s5.fromAttribute) ? t4.converter : n3;
232
+ this._$El = r4, this[r4] = h3.fromAttribute(i4, t4.type), this._$El = null;
233
+ }
234
+ }
235
+ requestUpdate(t3, i4, s5) {
236
+ let e8 = true;
237
+ void 0 !== t3 && (((s5 = s5 || this.constructor.getPropertyOptions(t3)).hasChanged || a)(this[t3], i4) ? (this._$AL.has(t3) || this._$AL.set(t3, i4), true === s5.reflect && this._$El !== t3 && (void 0 === this._$EC && (this._$EC = /* @__PURE__ */ new Map()), this._$EC.set(t3, s5))) : e8 = false), !this.isUpdatePending && e8 && (this._$E_ = this._$Ej());
238
+ }
239
+ async _$Ej() {
240
+ this.isUpdatePending = true;
241
+ try {
242
+ await this._$E_;
243
+ } catch (t4) {
244
+ Promise.reject(t4);
245
+ }
246
+ const t3 = this.scheduleUpdate();
247
+ return null != t3 && await t3, !this.isUpdatePending;
248
+ }
249
+ scheduleUpdate() {
250
+ return this.performUpdate();
251
+ }
252
+ performUpdate() {
253
+ var t3;
254
+ if (!this.isUpdatePending)
255
+ return;
256
+ this.hasUpdated, this._$Ei && (this._$Ei.forEach((t4, i5) => this[i5] = t4), this._$Ei = void 0);
257
+ let i4 = false;
258
+ const s5 = this._$AL;
259
+ try {
260
+ i4 = this.shouldUpdate(s5), i4 ? (this.willUpdate(s5), null === (t3 = this._$ES) || void 0 === t3 || t3.forEach((t4) => {
261
+ var i5;
262
+ return null === (i5 = t4.hostUpdate) || void 0 === i5 ? void 0 : i5.call(t4);
263
+ }), this.update(s5)) : this._$Ek();
264
+ } catch (t4) {
265
+ throw i4 = false, this._$Ek(), t4;
266
+ }
267
+ i4 && this._$AE(s5);
268
+ }
269
+ willUpdate(t3) {
270
+ }
271
+ _$AE(t3) {
272
+ var i4;
273
+ null === (i4 = this._$ES) || void 0 === i4 || i4.forEach((t4) => {
274
+ var i5;
275
+ return null === (i5 = t4.hostUpdated) || void 0 === i5 ? void 0 : i5.call(t4);
276
+ }), this.hasUpdated || (this.hasUpdated = true, this.firstUpdated(t3)), this.updated(t3);
277
+ }
278
+ _$Ek() {
279
+ this._$AL = /* @__PURE__ */ new Map(), this.isUpdatePending = false;
280
+ }
281
+ get updateComplete() {
282
+ return this.getUpdateComplete();
283
+ }
284
+ getUpdateComplete() {
285
+ return this._$E_;
286
+ }
287
+ shouldUpdate(t3) {
288
+ return true;
289
+ }
290
+ update(t3) {
291
+ void 0 !== this._$EC && (this._$EC.forEach((t4, i4) => this._$EO(i4, this[i4], t4)), this._$EC = void 0), this._$Ek();
292
+ }
293
+ updated(t3) {
294
+ }
295
+ firstUpdated(t3) {
296
+ }
297
+ };
298
+ u[d] = true, u.elementProperties = /* @__PURE__ */ new Map(), u.elementStyles = [], u.shadowRootOptions = { mode: "open" }, null == o2 || o2({ ReactiveElement: u }), (null !== (s2 = e3.reactiveElementVersions) && void 0 !== s2 ? s2 : e3.reactiveElementVersions = []).push("1.6.3");
299
+
300
+ // node_modules/lit-flatpickr/node_modules/lit-html/lit-html.js
301
+ var t2;
302
+ var i2 = window;
303
+ var s3 = i2.trustedTypes;
304
+ var e4 = s3 ? s3.createPolicy("lit-html", { createHTML: (t3) => t3 }) : void 0;
305
+ var o3 = "$lit$";
306
+ var n4 = `lit$${(Math.random() + "").slice(9)}$`;
307
+ var l2 = "?" + n4;
308
+ var h2 = `<${l2}>`;
309
+ var r3 = document;
310
+ var u2 = () => r3.createComment("");
311
+ var d2 = (t3) => null === t3 || "object" != typeof t3 && "function" != typeof t3;
312
+ var c2 = Array.isArray;
313
+ var v = (t3) => c2(t3) || "function" == typeof (null == t3 ? void 0 : t3[Symbol.iterator]);
314
+ var a2 = "[ \n\f\r]";
315
+ var f = /<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g;
316
+ var _ = /-->/g;
317
+ var m = />/g;
318
+ var p = RegExp(`>|${a2}(?:([^\\s"'>=/]+)(${a2}*=${a2}*(?:[^
319
+ \f\r"'\`<>=]|("|')|))|$)`, "g");
320
+ var g = /'/g;
321
+ var $ = /"/g;
322
+ var y = /^(?:script|style|textarea|title)$/i;
323
+ var w = (t3) => (i4, ...s5) => ({ _$litType$: t3, strings: i4, values: s5 });
324
+ var x2 = w(1);
325
+ var b = w(2);
326
+ var T = Symbol.for("lit-noChange");
327
+ var A = Symbol.for("lit-nothing");
328
+ var E = /* @__PURE__ */ new WeakMap();
329
+ var C = r3.createTreeWalker(r3, 129, null, false);
330
+ function P(t3, i4) {
331
+ if (!Array.isArray(t3) || !t3.hasOwnProperty("raw"))
332
+ throw Error("invalid template strings array");
333
+ return void 0 !== e4 ? e4.createHTML(i4) : i4;
334
+ }
335
+ var V = (t3, i4) => {
336
+ const s5 = t3.length - 1, e8 = [];
337
+ let l5, r4 = 2 === i4 ? "<svg>" : "", u3 = f;
338
+ for (let i5 = 0; i5 < s5; i5++) {
339
+ const s6 = t3[i5];
340
+ let d3, c3, v2 = -1, a3 = 0;
341
+ for (; a3 < s6.length && (u3.lastIndex = a3, c3 = u3.exec(s6), null !== c3); )
342
+ a3 = u3.lastIndex, u3 === f ? "!--" === c3[1] ? u3 = _ : void 0 !== c3[1] ? u3 = m : void 0 !== c3[2] ? (y.test(c3[2]) && (l5 = RegExp("</" + c3[2], "g")), u3 = p) : void 0 !== c3[3] && (u3 = p) : u3 === p ? ">" === c3[0] ? (u3 = null != l5 ? l5 : f, v2 = -1) : void 0 === c3[1] ? v2 = -2 : (v2 = u3.lastIndex - c3[2].length, d3 = c3[1], u3 = void 0 === c3[3] ? p : '"' === c3[3] ? $ : g) : u3 === $ || u3 === g ? u3 = p : u3 === _ || u3 === m ? u3 = f : (u3 = p, l5 = void 0);
343
+ const w2 = u3 === p && t3[i5 + 1].startsWith("/>") ? " " : "";
344
+ r4 += u3 === f ? s6 + h2 : v2 >= 0 ? (e8.push(d3), s6.slice(0, v2) + o3 + s6.slice(v2) + n4 + w2) : s6 + n4 + (-2 === v2 ? (e8.push(void 0), i5) : w2);
345
+ }
346
+ return [P(t3, r4 + (t3[s5] || "<?>") + (2 === i4 ? "</svg>" : "")), e8];
347
+ };
348
+ var N = class _N {
349
+ constructor({ strings: t3, _$litType$: i4 }, e8) {
350
+ let h3;
351
+ this.parts = [];
352
+ let r4 = 0, d3 = 0;
353
+ const c3 = t3.length - 1, v2 = this.parts, [a3, f2] = V(t3, i4);
354
+ if (this.el = _N.createElement(a3, e8), C.currentNode = this.el.content, 2 === i4) {
355
+ const t4 = this.el.content, i5 = t4.firstChild;
356
+ i5.remove(), t4.append(...i5.childNodes);
357
+ }
358
+ for (; null !== (h3 = C.nextNode()) && v2.length < c3; ) {
359
+ if (1 === h3.nodeType) {
360
+ if (h3.hasAttributes()) {
361
+ const t4 = [];
362
+ for (const i5 of h3.getAttributeNames())
363
+ if (i5.endsWith(o3) || i5.startsWith(n4)) {
364
+ const s5 = f2[d3++];
365
+ if (t4.push(i5), void 0 !== s5) {
366
+ const t5 = h3.getAttribute(s5.toLowerCase() + o3).split(n4), i6 = /([.?@])?(.*)/.exec(s5);
367
+ v2.push({ type: 1, index: r4, name: i6[2], strings: t5, ctor: "." === i6[1] ? H : "?" === i6[1] ? L : "@" === i6[1] ? z : k });
368
+ } else
369
+ v2.push({ type: 6, index: r4 });
370
+ }
371
+ for (const i5 of t4)
372
+ h3.removeAttribute(i5);
373
+ }
374
+ if (y.test(h3.tagName)) {
375
+ const t4 = h3.textContent.split(n4), i5 = t4.length - 1;
376
+ if (i5 > 0) {
377
+ h3.textContent = s3 ? s3.emptyScript : "";
378
+ for (let s5 = 0; s5 < i5; s5++)
379
+ h3.append(t4[s5], u2()), C.nextNode(), v2.push({ type: 2, index: ++r4 });
380
+ h3.append(t4[i5], u2());
381
+ }
382
+ }
383
+ } else if (8 === h3.nodeType)
384
+ if (h3.data === l2)
385
+ v2.push({ type: 2, index: r4 });
386
+ else {
387
+ let t4 = -1;
388
+ for (; -1 !== (t4 = h3.data.indexOf(n4, t4 + 1)); )
389
+ v2.push({ type: 7, index: r4 }), t4 += n4.length - 1;
390
+ }
391
+ r4++;
392
+ }
393
+ }
394
+ static createElement(t3, i4) {
395
+ const s5 = r3.createElement("template");
396
+ return s5.innerHTML = t3, s5;
397
+ }
398
+ };
399
+ function S2(t3, i4, s5 = t3, e8) {
400
+ var o6, n8, l5, h3;
401
+ if (i4 === T)
402
+ return i4;
403
+ let r4 = void 0 !== e8 ? null === (o6 = s5._$Co) || void 0 === o6 ? void 0 : o6[e8] : s5._$Cl;
404
+ const u3 = d2(i4) ? void 0 : i4._$litDirective$;
405
+ return (null == r4 ? void 0 : r4.constructor) !== u3 && (null === (n8 = null == r4 ? void 0 : r4._$AO) || void 0 === n8 || n8.call(r4, false), void 0 === u3 ? r4 = void 0 : (r4 = new u3(t3), r4._$AT(t3, s5, e8)), void 0 !== e8 ? (null !== (l5 = (h3 = s5)._$Co) && void 0 !== l5 ? l5 : h3._$Co = [])[e8] = r4 : s5._$Cl = r4), void 0 !== r4 && (i4 = S2(t3, r4._$AS(t3, i4.values), r4, e8)), i4;
406
+ }
407
+ var M = class {
408
+ constructor(t3, i4) {
409
+ this._$AV = [], this._$AN = void 0, this._$AD = t3, this._$AM = i4;
410
+ }
411
+ get parentNode() {
412
+ return this._$AM.parentNode;
413
+ }
414
+ get _$AU() {
415
+ return this._$AM._$AU;
416
+ }
417
+ u(t3) {
418
+ var i4;
419
+ const { el: { content: s5 }, parts: e8 } = this._$AD, o6 = (null !== (i4 = null == t3 ? void 0 : t3.creationScope) && void 0 !== i4 ? i4 : r3).importNode(s5, true);
420
+ C.currentNode = o6;
421
+ let n8 = C.nextNode(), l5 = 0, h3 = 0, u3 = e8[0];
422
+ for (; void 0 !== u3; ) {
423
+ if (l5 === u3.index) {
424
+ let i5;
425
+ 2 === u3.type ? i5 = new R(n8, n8.nextSibling, this, t3) : 1 === u3.type ? i5 = new u3.ctor(n8, u3.name, u3.strings, this, t3) : 6 === u3.type && (i5 = new Z(n8, this, t3)), this._$AV.push(i5), u3 = e8[++h3];
426
+ }
427
+ l5 !== (null == u3 ? void 0 : u3.index) && (n8 = C.nextNode(), l5++);
428
+ }
429
+ return C.currentNode = r3, o6;
430
+ }
431
+ v(t3) {
432
+ let i4 = 0;
433
+ for (const s5 of this._$AV)
434
+ void 0 !== s5 && (void 0 !== s5.strings ? (s5._$AI(t3, s5, i4), i4 += s5.strings.length - 2) : s5._$AI(t3[i4])), i4++;
435
+ }
436
+ };
437
+ var R = class _R {
438
+ constructor(t3, i4, s5, e8) {
439
+ var o6;
440
+ this.type = 2, this._$AH = A, this._$AN = void 0, this._$AA = t3, this._$AB = i4, this._$AM = s5, this.options = e8, this._$Cp = null === (o6 = null == e8 ? void 0 : e8.isConnected) || void 0 === o6 || o6;
441
+ }
442
+ get _$AU() {
443
+ var t3, i4;
444
+ return null !== (i4 = null === (t3 = this._$AM) || void 0 === t3 ? void 0 : t3._$AU) && void 0 !== i4 ? i4 : this._$Cp;
445
+ }
446
+ get parentNode() {
447
+ let t3 = this._$AA.parentNode;
448
+ const i4 = this._$AM;
449
+ return void 0 !== i4 && 11 === (null == t3 ? void 0 : t3.nodeType) && (t3 = i4.parentNode), t3;
450
+ }
451
+ get startNode() {
452
+ return this._$AA;
453
+ }
454
+ get endNode() {
455
+ return this._$AB;
456
+ }
457
+ _$AI(t3, i4 = this) {
458
+ t3 = S2(this, t3, i4), d2(t3) ? t3 === A || null == t3 || "" === t3 ? (this._$AH !== A && this._$AR(), this._$AH = A) : t3 !== this._$AH && t3 !== T && this._(t3) : void 0 !== t3._$litType$ ? this.g(t3) : void 0 !== t3.nodeType ? this.$(t3) : v(t3) ? this.T(t3) : this._(t3);
459
+ }
460
+ k(t3) {
461
+ return this._$AA.parentNode.insertBefore(t3, this._$AB);
462
+ }
463
+ $(t3) {
464
+ this._$AH !== t3 && (this._$AR(), this._$AH = this.k(t3));
465
+ }
466
+ _(t3) {
467
+ this._$AH !== A && d2(this._$AH) ? this._$AA.nextSibling.data = t3 : this.$(r3.createTextNode(t3)), this._$AH = t3;
468
+ }
469
+ g(t3) {
470
+ var i4;
471
+ const { values: s5, _$litType$: e8 } = t3, o6 = "number" == typeof e8 ? this._$AC(t3) : (void 0 === e8.el && (e8.el = N.createElement(P(e8.h, e8.h[0]), this.options)), e8);
472
+ if ((null === (i4 = this._$AH) || void 0 === i4 ? void 0 : i4._$AD) === o6)
473
+ this._$AH.v(s5);
474
+ else {
475
+ const t4 = new M(o6, this), i5 = t4.u(this.options);
476
+ t4.v(s5), this.$(i5), this._$AH = t4;
477
+ }
478
+ }
479
+ _$AC(t3) {
480
+ let i4 = E.get(t3.strings);
481
+ return void 0 === i4 && E.set(t3.strings, i4 = new N(t3)), i4;
482
+ }
483
+ T(t3) {
484
+ c2(this._$AH) || (this._$AH = [], this._$AR());
485
+ const i4 = this._$AH;
486
+ let s5, e8 = 0;
487
+ for (const o6 of t3)
488
+ e8 === i4.length ? i4.push(s5 = new _R(this.k(u2()), this.k(u2()), this, this.options)) : s5 = i4[e8], s5._$AI(o6), e8++;
489
+ e8 < i4.length && (this._$AR(s5 && s5._$AB.nextSibling, e8), i4.length = e8);
490
+ }
491
+ _$AR(t3 = this._$AA.nextSibling, i4) {
492
+ var s5;
493
+ for (null === (s5 = this._$AP) || void 0 === s5 || s5.call(this, false, true, i4); t3 && t3 !== this._$AB; ) {
494
+ const i5 = t3.nextSibling;
495
+ t3.remove(), t3 = i5;
496
+ }
497
+ }
498
+ setConnected(t3) {
499
+ var i4;
500
+ void 0 === this._$AM && (this._$Cp = t3, null === (i4 = this._$AP) || void 0 === i4 || i4.call(this, t3));
501
+ }
502
+ };
503
+ var k = class {
504
+ constructor(t3, i4, s5, e8, o6) {
505
+ this.type = 1, this._$AH = A, this._$AN = void 0, this.element = t3, this.name = i4, this._$AM = e8, this.options = o6, s5.length > 2 || "" !== s5[0] || "" !== s5[1] ? (this._$AH = Array(s5.length - 1).fill(new String()), this.strings = s5) : this._$AH = A;
506
+ }
507
+ get tagName() {
508
+ return this.element.tagName;
509
+ }
510
+ get _$AU() {
511
+ return this._$AM._$AU;
512
+ }
513
+ _$AI(t3, i4 = this, s5, e8) {
514
+ const o6 = this.strings;
515
+ let n8 = false;
516
+ if (void 0 === o6)
517
+ t3 = S2(this, t3, i4, 0), n8 = !d2(t3) || t3 !== this._$AH && t3 !== T, n8 && (this._$AH = t3);
518
+ else {
519
+ const e9 = t3;
520
+ let l5, h3;
521
+ for (t3 = o6[0], l5 = 0; l5 < o6.length - 1; l5++)
522
+ h3 = S2(this, e9[s5 + l5], i4, l5), h3 === T && (h3 = this._$AH[l5]), n8 || (n8 = !d2(h3) || h3 !== this._$AH[l5]), h3 === A ? t3 = A : t3 !== A && (t3 += (null != h3 ? h3 : "") + o6[l5 + 1]), this._$AH[l5] = h3;
523
+ }
524
+ n8 && !e8 && this.j(t3);
525
+ }
526
+ j(t3) {
527
+ t3 === A ? this.element.removeAttribute(this.name) : this.element.setAttribute(this.name, null != t3 ? t3 : "");
528
+ }
529
+ };
530
+ var H = class extends k {
531
+ constructor() {
532
+ super(...arguments), this.type = 3;
533
+ }
534
+ j(t3) {
535
+ this.element[this.name] = t3 === A ? void 0 : t3;
536
+ }
537
+ };
538
+ var I = s3 ? s3.emptyScript : "";
539
+ var L = class extends k {
540
+ constructor() {
541
+ super(...arguments), this.type = 4;
542
+ }
543
+ j(t3) {
544
+ t3 && t3 !== A ? this.element.setAttribute(this.name, I) : this.element.removeAttribute(this.name);
545
+ }
546
+ };
547
+ var z = class extends k {
548
+ constructor(t3, i4, s5, e8, o6) {
549
+ super(t3, i4, s5, e8, o6), this.type = 5;
550
+ }
551
+ _$AI(t3, i4 = this) {
552
+ var s5;
553
+ if ((t3 = null !== (s5 = S2(this, t3, i4, 0)) && void 0 !== s5 ? s5 : A) === T)
554
+ return;
555
+ const e8 = this._$AH, o6 = t3 === A && e8 !== A || t3.capture !== e8.capture || t3.once !== e8.once || t3.passive !== e8.passive, n8 = t3 !== A && (e8 === A || o6);
556
+ o6 && this.element.removeEventListener(this.name, this, e8), n8 && this.element.addEventListener(this.name, this, t3), this._$AH = t3;
557
+ }
558
+ handleEvent(t3) {
559
+ var i4, s5;
560
+ "function" == typeof this._$AH ? this._$AH.call(null !== (s5 = null === (i4 = this.options) || void 0 === i4 ? void 0 : i4.host) && void 0 !== s5 ? s5 : this.element, t3) : this._$AH.handleEvent(t3);
561
+ }
562
+ };
563
+ var Z = class {
564
+ constructor(t3, i4, s5) {
565
+ this.element = t3, this.type = 6, this._$AN = void 0, this._$AM = i4, this.options = s5;
566
+ }
567
+ get _$AU() {
568
+ return this._$AM._$AU;
569
+ }
570
+ _$AI(t3) {
571
+ S2(this, t3);
572
+ }
573
+ };
574
+ var B = i2.litHtmlPolyfillSupport;
575
+ null == B || B(N, R), (null !== (t2 = i2.litHtmlVersions) && void 0 !== t2 ? t2 : i2.litHtmlVersions = []).push("2.8.0");
576
+ var D = (t3, i4, s5) => {
577
+ var e8, o6;
578
+ const n8 = null !== (e8 = null == s5 ? void 0 : s5.renderBefore) && void 0 !== e8 ? e8 : i4;
579
+ let l5 = n8._$litPart$;
580
+ if (void 0 === l5) {
581
+ const t4 = null !== (o6 = null == s5 ? void 0 : s5.renderBefore) && void 0 !== o6 ? o6 : null;
582
+ n8._$litPart$ = l5 = new R(i4.insertBefore(u2(), t4), t4, void 0, null != s5 ? s5 : {});
583
+ }
584
+ return l5._$AI(t3), l5;
585
+ };
586
+
587
+ // node_modules/lit-flatpickr/node_modules/lit-element/lit-element.js
588
+ var l3;
589
+ var o4;
590
+ var s4 = class extends u {
591
+ constructor() {
592
+ super(...arguments), this.renderOptions = { host: this }, this._$Do = void 0;
593
+ }
594
+ createRenderRoot() {
595
+ var t3, e8;
596
+ const i4 = super.createRenderRoot();
597
+ return null !== (t3 = (e8 = this.renderOptions).renderBefore) && void 0 !== t3 || (e8.renderBefore = i4.firstChild), i4;
598
+ }
599
+ update(t3) {
600
+ const i4 = this.render();
601
+ this.hasUpdated || (this.renderOptions.isConnected = this.isConnected), super.update(t3), this._$Do = D(i4, this.renderRoot, this.renderOptions);
602
+ }
603
+ connectedCallback() {
604
+ var t3;
605
+ super.connectedCallback(), null === (t3 = this._$Do) || void 0 === t3 || t3.setConnected(true);
606
+ }
607
+ disconnectedCallback() {
608
+ var t3;
609
+ super.disconnectedCallback(), null === (t3 = this._$Do) || void 0 === t3 || t3.setConnected(false);
610
+ }
611
+ render() {
612
+ return T;
613
+ }
614
+ };
615
+ s4.finalized = true, s4._$litElement$ = true, null === (l3 = globalThis.litElementHydrateSupport) || void 0 === l3 || l3.call(globalThis, { LitElement: s4 });
616
+ var n5 = globalThis.litElementPolyfillSupport;
617
+ null == n5 || n5({ LitElement: s4 });
618
+ (null !== (o4 = globalThis.litElementVersions) && void 0 !== o4 ? o4 : globalThis.litElementVersions = []).push("3.3.3");
619
+
620
+ // node_modules/lit-flatpickr/node_modules/@lit/reactive-element/decorators/custom-element.js
621
+ var e5 = (e8) => (n8) => "function" == typeof n8 ? ((e9, n9) => (customElements.define(e9, n9), n9))(e8, n8) : ((e9, n9) => {
622
+ const { kind: t3, elements: s5 } = n9;
623
+ return { kind: t3, elements: s5, finisher(n10) {
624
+ customElements.define(e9, n10);
625
+ } };
626
+ })(e8, n8);
627
+
628
+ // node_modules/lit-flatpickr/node_modules/@lit/reactive-element/decorators/property.js
629
+ var i3 = (i4, e8) => "method" === e8.kind && e8.descriptor && !("value" in e8.descriptor) ? __spreadProps(__spreadValues({}, e8), { finisher(n8) {
630
+ n8.createProperty(e8.key, i4);
631
+ } }) : { kind: "field", key: Symbol(), placement: "own", descriptor: {}, originalKey: e8.key, initializer() {
632
+ "function" == typeof e8.initializer && (this[e8.key] = e8.initializer.call(this));
633
+ }, finisher(n8) {
634
+ n8.createProperty(e8.key, i4);
635
+ } };
636
+ var e6 = (i4, e8, n8) => {
637
+ e8.constructor.createProperty(n8, i4);
638
+ };
639
+ function n6(n8) {
640
+ return (t3, o6) => void 0 !== o6 ? e6(n8, t3, o6) : i3(n8, t3);
641
+ }
642
+
643
+ // node_modules/lit-flatpickr/node_modules/@lit/reactive-element/decorators/query-assigned-elements.js
644
+ var n7;
645
+ var e7 = null != (null === (n7 = window.HTMLSlotElement) || void 0 === n7 ? void 0 : n7.prototype.assignedElements) ? (o6, n8) => o6.assignedElements(n8) : (o6, n8) => o6.assignedNodes(n8).filter((o7) => o7.nodeType === Node.ELEMENT_NODE);
646
+
647
+ // node_modules/flatpickr/dist/esm/types/options.js
648
+ var HOOKS = [
649
+ "onChange",
650
+ "onClose",
651
+ "onDayCreate",
652
+ "onDestroy",
653
+ "onKeyDown",
654
+ "onMonthChange",
655
+ "onOpen",
656
+ "onParseConfig",
657
+ "onReady",
658
+ "onValueUpdate",
659
+ "onYearChange",
660
+ "onPreCalendarPosition"
661
+ ];
662
+ var defaults = {
663
+ _disable: [],
664
+ allowInput: false,
665
+ allowInvalidPreload: false,
666
+ altFormat: "F j, Y",
667
+ altInput: false,
668
+ altInputClass: "form-control input",
669
+ animate: typeof window === "object" && window.navigator.userAgent.indexOf("MSIE") === -1,
670
+ ariaDateFormat: "F j, Y",
671
+ autoFillDefaultTime: true,
672
+ clickOpens: true,
673
+ closeOnSelect: true,
674
+ conjunction: ", ",
675
+ dateFormat: "Y-m-d",
676
+ defaultHour: 12,
677
+ defaultMinute: 0,
678
+ defaultSeconds: 0,
679
+ disable: [],
680
+ disableMobile: false,
681
+ enableSeconds: false,
682
+ enableTime: false,
683
+ errorHandler: function(err) {
684
+ return typeof console !== "undefined" && console.warn(err);
685
+ },
686
+ getWeek: function(givenDate) {
687
+ var date = new Date(givenDate.getTime());
688
+ date.setHours(0, 0, 0, 0);
689
+ date.setDate(date.getDate() + 3 - (date.getDay() + 6) % 7);
690
+ var week1 = new Date(date.getFullYear(), 0, 4);
691
+ return 1 + Math.round(((date.getTime() - week1.getTime()) / 864e5 - 3 + (week1.getDay() + 6) % 7) / 7);
692
+ },
693
+ hourIncrement: 1,
694
+ ignoredFocusElements: [],
695
+ inline: false,
696
+ locale: "default",
697
+ minuteIncrement: 5,
698
+ mode: "single",
699
+ monthSelectorType: "dropdown",
700
+ nextArrow: "<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M13.207 8.472l-7.854 7.854-0.707-0.707 7.146-7.146-7.146-7.148 0.707-0.707 7.854 7.854z' /></svg>",
701
+ noCalendar: false,
702
+ now: /* @__PURE__ */ new Date(),
703
+ onChange: [],
704
+ onClose: [],
705
+ onDayCreate: [],
706
+ onDestroy: [],
707
+ onKeyDown: [],
708
+ onMonthChange: [],
709
+ onOpen: [],
710
+ onParseConfig: [],
711
+ onReady: [],
712
+ onValueUpdate: [],
713
+ onYearChange: [],
714
+ onPreCalendarPosition: [],
715
+ plugins: [],
716
+ position: "auto",
717
+ positionElement: void 0,
718
+ prevArrow: "<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M5.207 8.471l7.146 7.147-0.707 0.707-7.853-7.854 7.854-7.853 0.707 0.707-7.147 7.146z' /></svg>",
719
+ shorthandCurrentMonth: false,
720
+ showMonths: 1,
721
+ static: false,
722
+ time_24hr: false,
723
+ weekNumbers: false,
724
+ wrap: false
725
+ };
726
+
727
+ // node_modules/flatpickr/dist/esm/l10n/default.js
728
+ var english = {
729
+ weekdays: {
730
+ shorthand: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
731
+ longhand: [
732
+ "Sunday",
733
+ "Monday",
734
+ "Tuesday",
735
+ "Wednesday",
736
+ "Thursday",
737
+ "Friday",
738
+ "Saturday"
739
+ ]
740
+ },
741
+ months: {
742
+ shorthand: [
743
+ "Jan",
744
+ "Feb",
745
+ "Mar",
746
+ "Apr",
747
+ "May",
748
+ "Jun",
749
+ "Jul",
750
+ "Aug",
751
+ "Sep",
752
+ "Oct",
753
+ "Nov",
754
+ "Dec"
755
+ ],
756
+ longhand: [
757
+ "January",
758
+ "February",
759
+ "March",
760
+ "April",
761
+ "May",
762
+ "June",
763
+ "July",
764
+ "August",
765
+ "September",
766
+ "October",
767
+ "November",
768
+ "December"
769
+ ]
770
+ },
771
+ daysInMonth: [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31],
772
+ firstDayOfWeek: 0,
773
+ ordinal: function(nth) {
774
+ var s5 = nth % 100;
775
+ if (s5 > 3 && s5 < 21)
776
+ return "th";
777
+ switch (s5 % 10) {
778
+ case 1:
779
+ return "st";
780
+ case 2:
781
+ return "nd";
782
+ case 3:
783
+ return "rd";
784
+ default:
785
+ return "th";
786
+ }
787
+ },
788
+ rangeSeparator: " to ",
789
+ weekAbbreviation: "Wk",
790
+ scrollTitle: "Scroll to increment",
791
+ toggleTitle: "Click to toggle",
792
+ amPM: ["AM", "PM"],
793
+ yearAriaLabel: "Year",
794
+ monthAriaLabel: "Month",
795
+ hourAriaLabel: "Hour",
796
+ minuteAriaLabel: "Minute",
797
+ time_24hr: false
798
+ };
799
+ var default_default = english;
800
+
801
+ // node_modules/flatpickr/dist/esm/utils/index.js
802
+ var pad = function(number, length) {
803
+ if (length === void 0) {
804
+ length = 2;
805
+ }
806
+ return ("000" + number).slice(length * -1);
807
+ };
808
+ var int = function(bool) {
809
+ return bool === true ? 1 : 0;
810
+ };
811
+ function debounce(fn, wait) {
812
+ var t3;
813
+ return function() {
814
+ var _this = this;
815
+ var args = arguments;
816
+ clearTimeout(t3);
817
+ t3 = setTimeout(function() {
818
+ return fn.apply(_this, args);
819
+ }, wait);
820
+ };
821
+ }
822
+ var arrayify = function(obj) {
823
+ return obj instanceof Array ? obj : [obj];
824
+ };
825
+
826
+ // node_modules/flatpickr/dist/esm/utils/dom.js
827
+ function toggleClass(elem, className, bool) {
828
+ if (bool === true)
829
+ return elem.classList.add(className);
830
+ elem.classList.remove(className);
831
+ }
832
+ function createElement(tag, className, content) {
833
+ var e8 = window.document.createElement(tag);
834
+ className = className || "";
835
+ content = content || "";
836
+ e8.className = className;
837
+ if (content !== void 0)
838
+ e8.textContent = content;
839
+ return e8;
840
+ }
841
+ function clearNode(node) {
842
+ while (node.firstChild)
843
+ node.removeChild(node.firstChild);
844
+ }
845
+ function findParent(node, condition) {
846
+ if (condition(node))
847
+ return node;
848
+ else if (node.parentNode)
849
+ return findParent(node.parentNode, condition);
850
+ return void 0;
851
+ }
852
+ function createNumberInput(inputClassName, opts) {
853
+ var wrapper = createElement("div", "numInputWrapper"), numInput = createElement("input", "numInput " + inputClassName), arrowUp = createElement("span", "arrowUp"), arrowDown = createElement("span", "arrowDown");
854
+ if (navigator.userAgent.indexOf("MSIE 9.0") === -1) {
855
+ numInput.type = "number";
856
+ } else {
857
+ numInput.type = "text";
858
+ numInput.pattern = "\\d*";
859
+ }
860
+ if (opts !== void 0)
861
+ for (var key in opts)
862
+ numInput.setAttribute(key, opts[key]);
863
+ wrapper.appendChild(numInput);
864
+ wrapper.appendChild(arrowUp);
865
+ wrapper.appendChild(arrowDown);
866
+ return wrapper;
867
+ }
868
+ function getEventTarget(event) {
869
+ try {
870
+ if (typeof event.composedPath === "function") {
871
+ var path = event.composedPath();
872
+ return path[0];
873
+ }
874
+ return event.target;
875
+ } catch (error) {
876
+ return event.target;
877
+ }
878
+ }
879
+
880
+ // node_modules/flatpickr/dist/esm/utils/formatting.js
881
+ var doNothing = function() {
882
+ return void 0;
883
+ };
884
+ var monthToStr = function(monthNumber, shorthand, locale) {
885
+ return locale.months[shorthand ? "shorthand" : "longhand"][monthNumber];
886
+ };
887
+ var revFormat = {
888
+ D: doNothing,
889
+ F: function(dateObj, monthName, locale) {
890
+ dateObj.setMonth(locale.months.longhand.indexOf(monthName));
891
+ },
892
+ G: function(dateObj, hour) {
893
+ dateObj.setHours((dateObj.getHours() >= 12 ? 12 : 0) + parseFloat(hour));
894
+ },
895
+ H: function(dateObj, hour) {
896
+ dateObj.setHours(parseFloat(hour));
897
+ },
898
+ J: function(dateObj, day) {
899
+ dateObj.setDate(parseFloat(day));
900
+ },
901
+ K: function(dateObj, amPM, locale) {
902
+ dateObj.setHours(dateObj.getHours() % 12 + 12 * int(new RegExp(locale.amPM[1], "i").test(amPM)));
903
+ },
904
+ M: function(dateObj, shortMonth, locale) {
905
+ dateObj.setMonth(locale.months.shorthand.indexOf(shortMonth));
906
+ },
907
+ S: function(dateObj, seconds) {
908
+ dateObj.setSeconds(parseFloat(seconds));
909
+ },
910
+ U: function(_2, unixSeconds) {
911
+ return new Date(parseFloat(unixSeconds) * 1e3);
912
+ },
913
+ W: function(dateObj, weekNum, locale) {
914
+ var weekNumber = parseInt(weekNum);
915
+ var date = new Date(dateObj.getFullYear(), 0, 2 + (weekNumber - 1) * 7, 0, 0, 0, 0);
916
+ date.setDate(date.getDate() - date.getDay() + locale.firstDayOfWeek);
917
+ return date;
918
+ },
919
+ Y: function(dateObj, year) {
920
+ dateObj.setFullYear(parseFloat(year));
921
+ },
922
+ Z: function(_2, ISODate) {
923
+ return new Date(ISODate);
924
+ },
925
+ d: function(dateObj, day) {
926
+ dateObj.setDate(parseFloat(day));
927
+ },
928
+ h: function(dateObj, hour) {
929
+ dateObj.setHours((dateObj.getHours() >= 12 ? 12 : 0) + parseFloat(hour));
930
+ },
931
+ i: function(dateObj, minutes) {
932
+ dateObj.setMinutes(parseFloat(minutes));
933
+ },
934
+ j: function(dateObj, day) {
935
+ dateObj.setDate(parseFloat(day));
936
+ },
937
+ l: doNothing,
938
+ m: function(dateObj, month) {
939
+ dateObj.setMonth(parseFloat(month) - 1);
940
+ },
941
+ n: function(dateObj, month) {
942
+ dateObj.setMonth(parseFloat(month) - 1);
943
+ },
944
+ s: function(dateObj, seconds) {
945
+ dateObj.setSeconds(parseFloat(seconds));
946
+ },
947
+ u: function(_2, unixMillSeconds) {
948
+ return new Date(parseFloat(unixMillSeconds));
949
+ },
950
+ w: doNothing,
951
+ y: function(dateObj, year) {
952
+ dateObj.setFullYear(2e3 + parseFloat(year));
953
+ }
954
+ };
955
+ var tokenRegex = {
956
+ D: "",
957
+ F: "",
958
+ G: "(\\d\\d|\\d)",
959
+ H: "(\\d\\d|\\d)",
960
+ J: "(\\d\\d|\\d)\\w+",
961
+ K: "",
962
+ M: "",
963
+ S: "(\\d\\d|\\d)",
964
+ U: "(.+)",
965
+ W: "(\\d\\d|\\d)",
966
+ Y: "(\\d{4})",
967
+ Z: "(.+)",
968
+ d: "(\\d\\d|\\d)",
969
+ h: "(\\d\\d|\\d)",
970
+ i: "(\\d\\d|\\d)",
971
+ j: "(\\d\\d|\\d)",
972
+ l: "",
973
+ m: "(\\d\\d|\\d)",
974
+ n: "(\\d\\d|\\d)",
975
+ s: "(\\d\\d|\\d)",
976
+ u: "(.+)",
977
+ w: "(\\d\\d|\\d)",
978
+ y: "(\\d{2})"
979
+ };
980
+ var formats = {
981
+ Z: function(date) {
982
+ return date.toISOString();
983
+ },
984
+ D: function(date, locale, options) {
985
+ return locale.weekdays.shorthand[formats.w(date, locale, options)];
986
+ },
987
+ F: function(date, locale, options) {
988
+ return monthToStr(formats.n(date, locale, options) - 1, false, locale);
989
+ },
990
+ G: function(date, locale, options) {
991
+ return pad(formats.h(date, locale, options));
992
+ },
993
+ H: function(date) {
994
+ return pad(date.getHours());
995
+ },
996
+ J: function(date, locale) {
997
+ return locale.ordinal !== void 0 ? date.getDate() + locale.ordinal(date.getDate()) : date.getDate();
998
+ },
999
+ K: function(date, locale) {
1000
+ return locale.amPM[int(date.getHours() > 11)];
1001
+ },
1002
+ M: function(date, locale) {
1003
+ return monthToStr(date.getMonth(), true, locale);
1004
+ },
1005
+ S: function(date) {
1006
+ return pad(date.getSeconds());
1007
+ },
1008
+ U: function(date) {
1009
+ return date.getTime() / 1e3;
1010
+ },
1011
+ W: function(date, _2, options) {
1012
+ return options.getWeek(date);
1013
+ },
1014
+ Y: function(date) {
1015
+ return pad(date.getFullYear(), 4);
1016
+ },
1017
+ d: function(date) {
1018
+ return pad(date.getDate());
1019
+ },
1020
+ h: function(date) {
1021
+ return date.getHours() % 12 ? date.getHours() % 12 : 12;
1022
+ },
1023
+ i: function(date) {
1024
+ return pad(date.getMinutes());
1025
+ },
1026
+ j: function(date) {
1027
+ return date.getDate();
1028
+ },
1029
+ l: function(date, locale) {
1030
+ return locale.weekdays.longhand[date.getDay()];
1031
+ },
1032
+ m: function(date) {
1033
+ return pad(date.getMonth() + 1);
1034
+ },
1035
+ n: function(date) {
1036
+ return date.getMonth() + 1;
1037
+ },
1038
+ s: function(date) {
1039
+ return date.getSeconds();
1040
+ },
1041
+ u: function(date) {
1042
+ return date.getTime();
1043
+ },
1044
+ w: function(date) {
1045
+ return date.getDay();
1046
+ },
1047
+ y: function(date) {
1048
+ return String(date.getFullYear()).substring(2);
1049
+ }
1050
+ };
1051
+
1052
+ // node_modules/flatpickr/dist/esm/utils/dates.js
1053
+ var createDateFormatter = function(_a) {
1054
+ var _b = _a.config, config = _b === void 0 ? defaults : _b, _c = _a.l10n, l10n = _c === void 0 ? english : _c, _d = _a.isMobile, isMobile = _d === void 0 ? false : _d;
1055
+ return function(dateObj, frmt, overrideLocale) {
1056
+ var locale = overrideLocale || l10n;
1057
+ if (config.formatDate !== void 0 && !isMobile) {
1058
+ return config.formatDate(dateObj, frmt, locale);
1059
+ }
1060
+ return frmt.split("").map(function(c3, i4, arr) {
1061
+ return formats[c3] && arr[i4 - 1] !== "\\" ? formats[c3](dateObj, locale, config) : c3 !== "\\" ? c3 : "";
1062
+ }).join("");
1063
+ };
1064
+ };
1065
+ var createDateParser = function(_a) {
1066
+ var _b = _a.config, config = _b === void 0 ? defaults : _b, _c = _a.l10n, l10n = _c === void 0 ? english : _c;
1067
+ return function(date, givenFormat, timeless, customLocale) {
1068
+ if (date !== 0 && !date)
1069
+ return void 0;
1070
+ var locale = customLocale || l10n;
1071
+ var parsedDate;
1072
+ var dateOrig = date;
1073
+ if (date instanceof Date)
1074
+ parsedDate = new Date(date.getTime());
1075
+ else if (typeof date !== "string" && date.toFixed !== void 0)
1076
+ parsedDate = new Date(date);
1077
+ else if (typeof date === "string") {
1078
+ var format = givenFormat || (config || defaults).dateFormat;
1079
+ var datestr = String(date).trim();
1080
+ if (datestr === "today") {
1081
+ parsedDate = /* @__PURE__ */ new Date();
1082
+ timeless = true;
1083
+ } else if (config && config.parseDate) {
1084
+ parsedDate = config.parseDate(date, format);
1085
+ } else if (/Z$/.test(datestr) || /GMT$/.test(datestr)) {
1086
+ parsedDate = new Date(date);
1087
+ } else {
1088
+ var matched = void 0, ops = [];
1089
+ for (var i4 = 0, matchIndex = 0, regexStr = ""; i4 < format.length; i4++) {
1090
+ var token = format[i4];
1091
+ var isBackSlash = token === "\\";
1092
+ var escaped = format[i4 - 1] === "\\" || isBackSlash;
1093
+ if (tokenRegex[token] && !escaped) {
1094
+ regexStr += tokenRegex[token];
1095
+ var match = new RegExp(regexStr).exec(date);
1096
+ if (match && (matched = true)) {
1097
+ ops[token !== "Y" ? "push" : "unshift"]({
1098
+ fn: revFormat[token],
1099
+ val: match[++matchIndex]
1100
+ });
1101
+ }
1102
+ } else if (!isBackSlash)
1103
+ regexStr += ".";
1104
+ }
1105
+ parsedDate = !config || !config.noCalendar ? new Date((/* @__PURE__ */ new Date()).getFullYear(), 0, 1, 0, 0, 0, 0) : new Date((/* @__PURE__ */ new Date()).setHours(0, 0, 0, 0));
1106
+ ops.forEach(function(_a2) {
1107
+ var fn = _a2.fn, val = _a2.val;
1108
+ return parsedDate = fn(parsedDate, val, locale) || parsedDate;
1109
+ });
1110
+ parsedDate = matched ? parsedDate : void 0;
1111
+ }
1112
+ }
1113
+ if (!(parsedDate instanceof Date && !isNaN(parsedDate.getTime()))) {
1114
+ config.errorHandler(new Error("Invalid date provided: " + dateOrig));
1115
+ return void 0;
1116
+ }
1117
+ if (timeless === true)
1118
+ parsedDate.setHours(0, 0, 0, 0);
1119
+ return parsedDate;
1120
+ };
1121
+ };
1122
+ function compareDates(date1, date2, timeless) {
1123
+ if (timeless === void 0) {
1124
+ timeless = true;
1125
+ }
1126
+ if (timeless !== false) {
1127
+ return new Date(date1.getTime()).setHours(0, 0, 0, 0) - new Date(date2.getTime()).setHours(0, 0, 0, 0);
1128
+ }
1129
+ return date1.getTime() - date2.getTime();
1130
+ }
1131
+ var isBetween = function(ts, ts1, ts2) {
1132
+ return ts > Math.min(ts1, ts2) && ts < Math.max(ts1, ts2);
1133
+ };
1134
+ var calculateSecondsSinceMidnight = function(hours, minutes, seconds) {
1135
+ return hours * 3600 + minutes * 60 + seconds;
1136
+ };
1137
+ var parseSeconds = function(secondsSinceMidnight) {
1138
+ var hours = Math.floor(secondsSinceMidnight / 3600), minutes = (secondsSinceMidnight - hours * 3600) / 60;
1139
+ return [hours, minutes, secondsSinceMidnight - hours * 3600 - minutes * 60];
1140
+ };
1141
+ var duration = {
1142
+ DAY: 864e5
1143
+ };
1144
+ function getDefaultHours(config) {
1145
+ var hours = config.defaultHour;
1146
+ var minutes = config.defaultMinute;
1147
+ var seconds = config.defaultSeconds;
1148
+ if (config.minDate !== void 0) {
1149
+ var minHour = config.minDate.getHours();
1150
+ var minMinutes = config.minDate.getMinutes();
1151
+ var minSeconds = config.minDate.getSeconds();
1152
+ if (hours < minHour) {
1153
+ hours = minHour;
1154
+ }
1155
+ if (hours === minHour && minutes < minMinutes) {
1156
+ minutes = minMinutes;
1157
+ }
1158
+ if (hours === minHour && minutes === minMinutes && seconds < minSeconds)
1159
+ seconds = config.minDate.getSeconds();
1160
+ }
1161
+ if (config.maxDate !== void 0) {
1162
+ var maxHr = config.maxDate.getHours();
1163
+ var maxMinutes = config.maxDate.getMinutes();
1164
+ hours = Math.min(hours, maxHr);
1165
+ if (hours === maxHr)
1166
+ minutes = Math.min(maxMinutes, minutes);
1167
+ if (hours === maxHr && minutes === maxMinutes)
1168
+ seconds = config.maxDate.getSeconds();
1169
+ }
1170
+ return { hours, minutes, seconds };
1171
+ }
1172
+
1173
+ // node_modules/flatpickr/dist/esm/utils/polyfills.js
1174
+ if (typeof Object.assign !== "function") {
1175
+ Object.assign = function(target) {
1176
+ var args = [];
1177
+ for (var _i = 1; _i < arguments.length; _i++) {
1178
+ args[_i - 1] = arguments[_i];
1179
+ }
1180
+ if (!target) {
1181
+ throw TypeError("Cannot convert undefined or null to object");
1182
+ }
1183
+ var _loop_1 = function(source2) {
1184
+ if (source2) {
1185
+ Object.keys(source2).forEach(function(key) {
1186
+ return target[key] = source2[key];
1187
+ });
1188
+ }
1189
+ };
1190
+ for (var _a = 0, args_1 = args; _a < args_1.length; _a++) {
1191
+ var source = args_1[_a];
1192
+ _loop_1(source);
1193
+ }
1194
+ return target;
1195
+ };
1196
+ }
1197
+
1198
+ // node_modules/flatpickr/dist/esm/index.js
1199
+ var __assign = function() {
1200
+ __assign = Object.assign || function(t3) {
1201
+ for (var s5, i4 = 1, n8 = arguments.length; i4 < n8; i4++) {
1202
+ s5 = arguments[i4];
1203
+ for (var p2 in s5)
1204
+ if (Object.prototype.hasOwnProperty.call(s5, p2))
1205
+ t3[p2] = s5[p2];
1206
+ }
1207
+ return t3;
1208
+ };
1209
+ return __assign.apply(this, arguments);
1210
+ };
1211
+ var __spreadArrays = function() {
1212
+ for (var s5 = 0, i4 = 0, il = arguments.length; i4 < il; i4++)
1213
+ s5 += arguments[i4].length;
1214
+ for (var r4 = Array(s5), k2 = 0, i4 = 0; i4 < il; i4++)
1215
+ for (var a3 = arguments[i4], j = 0, jl = a3.length; j < jl; j++, k2++)
1216
+ r4[k2] = a3[j];
1217
+ return r4;
1218
+ };
1219
+ var DEBOUNCED_CHANGE_MS = 300;
1220
+ function FlatpickrInstance(element, instanceConfig) {
1221
+ var self = {
1222
+ config: __assign(__assign({}, defaults), flatpickr2.defaultConfig),
1223
+ l10n: default_default
1224
+ };
1225
+ self.parseDate = createDateParser({ config: self.config, l10n: self.l10n });
1226
+ self._handlers = [];
1227
+ self.pluginElements = [];
1228
+ self.loadedPlugins = [];
1229
+ self._bind = bind;
1230
+ self._setHoursFromDate = setHoursFromDate;
1231
+ self._positionCalendar = positionCalendar;
1232
+ self.changeMonth = changeMonth;
1233
+ self.changeYear = changeYear;
1234
+ self.clear = clear;
1235
+ self.close = close;
1236
+ self.onMouseOver = onMouseOver;
1237
+ self._createElement = createElement;
1238
+ self.createDay = createDay;
1239
+ self.destroy = destroy;
1240
+ self.isEnabled = isEnabled;
1241
+ self.jumpToDate = jumpToDate;
1242
+ self.updateValue = updateValue;
1243
+ self.open = open;
1244
+ self.redraw = redraw;
1245
+ self.set = set;
1246
+ self.setDate = setDate;
1247
+ self.toggle = toggle;
1248
+ function setupHelperFunctions() {
1249
+ self.utils = {
1250
+ getDaysInMonth: function(month, yr) {
1251
+ if (month === void 0) {
1252
+ month = self.currentMonth;
1253
+ }
1254
+ if (yr === void 0) {
1255
+ yr = self.currentYear;
1256
+ }
1257
+ if (month === 1 && (yr % 4 === 0 && yr % 100 !== 0 || yr % 400 === 0))
1258
+ return 29;
1259
+ return self.l10n.daysInMonth[month];
1260
+ }
1261
+ };
1262
+ }
1263
+ function init() {
1264
+ self.element = self.input = element;
1265
+ self.isOpen = false;
1266
+ parseConfig();
1267
+ setupLocale();
1268
+ setupInputs();
1269
+ setupDates();
1270
+ setupHelperFunctions();
1271
+ if (!self.isMobile)
1272
+ build();
1273
+ bindEvents();
1274
+ if (self.selectedDates.length || self.config.noCalendar) {
1275
+ if (self.config.enableTime) {
1276
+ setHoursFromDate(self.config.noCalendar ? self.latestSelectedDateObj : void 0);
1277
+ }
1278
+ updateValue(false);
1279
+ }
1280
+ setCalendarWidth();
1281
+ var isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);
1282
+ if (!self.isMobile && isSafari) {
1283
+ positionCalendar();
1284
+ }
1285
+ triggerEvent("onReady");
1286
+ }
1287
+ function getClosestActiveElement() {
1288
+ var _a;
1289
+ return ((_a = self.calendarContainer) === null || _a === void 0 ? void 0 : _a.getRootNode()).activeElement || document.activeElement;
1290
+ }
1291
+ function bindToInstance(fn) {
1292
+ return fn.bind(self);
1293
+ }
1294
+ function setCalendarWidth() {
1295
+ var config = self.config;
1296
+ if (config.weekNumbers === false && config.showMonths === 1) {
1297
+ return;
1298
+ } else if (config.noCalendar !== true) {
1299
+ window.requestAnimationFrame(function() {
1300
+ if (self.calendarContainer !== void 0) {
1301
+ self.calendarContainer.style.visibility = "hidden";
1302
+ self.calendarContainer.style.display = "block";
1303
+ }
1304
+ if (self.daysContainer !== void 0) {
1305
+ var daysWidth = (self.days.offsetWidth + 1) * config.showMonths;
1306
+ self.daysContainer.style.width = daysWidth + "px";
1307
+ self.calendarContainer.style.width = daysWidth + (self.weekWrapper !== void 0 ? self.weekWrapper.offsetWidth : 0) + "px";
1308
+ self.calendarContainer.style.removeProperty("visibility");
1309
+ self.calendarContainer.style.removeProperty("display");
1310
+ }
1311
+ });
1312
+ }
1313
+ }
1314
+ function updateTime(e8) {
1315
+ if (self.selectedDates.length === 0) {
1316
+ var defaultDate = self.config.minDate === void 0 || compareDates(/* @__PURE__ */ new Date(), self.config.minDate) >= 0 ? /* @__PURE__ */ new Date() : new Date(self.config.minDate.getTime());
1317
+ var defaults2 = getDefaultHours(self.config);
1318
+ defaultDate.setHours(defaults2.hours, defaults2.minutes, defaults2.seconds, defaultDate.getMilliseconds());
1319
+ self.selectedDates = [defaultDate];
1320
+ self.latestSelectedDateObj = defaultDate;
1321
+ }
1322
+ if (e8 !== void 0 && e8.type !== "blur") {
1323
+ timeWrapper(e8);
1324
+ }
1325
+ var prevValue = self._input.value;
1326
+ setHoursFromInputs();
1327
+ updateValue();
1328
+ if (self._input.value !== prevValue) {
1329
+ self._debouncedChange();
1330
+ }
1331
+ }
1332
+ function ampm2military(hour, amPM) {
1333
+ return hour % 12 + 12 * int(amPM === self.l10n.amPM[1]);
1334
+ }
1335
+ function military2ampm(hour) {
1336
+ switch (hour % 24) {
1337
+ case 0:
1338
+ case 12:
1339
+ return 12;
1340
+ default:
1341
+ return hour % 12;
1342
+ }
1343
+ }
1344
+ function setHoursFromInputs() {
1345
+ if (self.hourElement === void 0 || self.minuteElement === void 0)
1346
+ return;
1347
+ var hours = (parseInt(self.hourElement.value.slice(-2), 10) || 0) % 24, minutes = (parseInt(self.minuteElement.value, 10) || 0) % 60, seconds = self.secondElement !== void 0 ? (parseInt(self.secondElement.value, 10) || 0) % 60 : 0;
1348
+ if (self.amPM !== void 0) {
1349
+ hours = ampm2military(hours, self.amPM.textContent);
1350
+ }
1351
+ var limitMinHours = self.config.minTime !== void 0 || self.config.minDate && self.minDateHasTime && self.latestSelectedDateObj && compareDates(self.latestSelectedDateObj, self.config.minDate, true) === 0;
1352
+ var limitMaxHours = self.config.maxTime !== void 0 || self.config.maxDate && self.maxDateHasTime && self.latestSelectedDateObj && compareDates(self.latestSelectedDateObj, self.config.maxDate, true) === 0;
1353
+ if (self.config.maxTime !== void 0 && self.config.minTime !== void 0 && self.config.minTime > self.config.maxTime) {
1354
+ var minBound = calculateSecondsSinceMidnight(self.config.minTime.getHours(), self.config.minTime.getMinutes(), self.config.minTime.getSeconds());
1355
+ var maxBound = calculateSecondsSinceMidnight(self.config.maxTime.getHours(), self.config.maxTime.getMinutes(), self.config.maxTime.getSeconds());
1356
+ var currentTime = calculateSecondsSinceMidnight(hours, minutes, seconds);
1357
+ if (currentTime > maxBound && currentTime < minBound) {
1358
+ var result = parseSeconds(minBound);
1359
+ hours = result[0];
1360
+ minutes = result[1];
1361
+ seconds = result[2];
1362
+ }
1363
+ } else {
1364
+ if (limitMaxHours) {
1365
+ var maxTime = self.config.maxTime !== void 0 ? self.config.maxTime : self.config.maxDate;
1366
+ hours = Math.min(hours, maxTime.getHours());
1367
+ if (hours === maxTime.getHours())
1368
+ minutes = Math.min(minutes, maxTime.getMinutes());
1369
+ if (minutes === maxTime.getMinutes())
1370
+ seconds = Math.min(seconds, maxTime.getSeconds());
1371
+ }
1372
+ if (limitMinHours) {
1373
+ var minTime = self.config.minTime !== void 0 ? self.config.minTime : self.config.minDate;
1374
+ hours = Math.max(hours, minTime.getHours());
1375
+ if (hours === minTime.getHours() && minutes < minTime.getMinutes())
1376
+ minutes = minTime.getMinutes();
1377
+ if (minutes === minTime.getMinutes())
1378
+ seconds = Math.max(seconds, minTime.getSeconds());
1379
+ }
1380
+ }
1381
+ setHours(hours, minutes, seconds);
1382
+ }
1383
+ function setHoursFromDate(dateObj) {
1384
+ var date = dateObj || self.latestSelectedDateObj;
1385
+ if (date && date instanceof Date) {
1386
+ setHours(date.getHours(), date.getMinutes(), date.getSeconds());
1387
+ }
1388
+ }
1389
+ function setHours(hours, minutes, seconds) {
1390
+ if (self.latestSelectedDateObj !== void 0) {
1391
+ self.latestSelectedDateObj.setHours(hours % 24, minutes, seconds || 0, 0);
1392
+ }
1393
+ if (!self.hourElement || !self.minuteElement || self.isMobile)
1394
+ return;
1395
+ self.hourElement.value = pad(!self.config.time_24hr ? (12 + hours) % 12 + 12 * int(hours % 12 === 0) : hours);
1396
+ self.minuteElement.value = pad(minutes);
1397
+ if (self.amPM !== void 0)
1398
+ self.amPM.textContent = self.l10n.amPM[int(hours >= 12)];
1399
+ if (self.secondElement !== void 0)
1400
+ self.secondElement.value = pad(seconds);
1401
+ }
1402
+ function onYearInput(event) {
1403
+ var eventTarget = getEventTarget(event);
1404
+ var year = parseInt(eventTarget.value) + (event.delta || 0);
1405
+ if (year / 1e3 > 1 || event.key === "Enter" && !/[^\d]/.test(year.toString())) {
1406
+ changeYear(year);
1407
+ }
1408
+ }
1409
+ function bind(element2, event, handler, options) {
1410
+ if (event instanceof Array)
1411
+ return event.forEach(function(ev) {
1412
+ return bind(element2, ev, handler, options);
1413
+ });
1414
+ if (element2 instanceof Array)
1415
+ return element2.forEach(function(el) {
1416
+ return bind(el, event, handler, options);
1417
+ });
1418
+ element2.addEventListener(event, handler, options);
1419
+ self._handlers.push({
1420
+ remove: function() {
1421
+ return element2.removeEventListener(event, handler, options);
1422
+ }
1423
+ });
1424
+ }
1425
+ function triggerChange() {
1426
+ triggerEvent("onChange");
1427
+ }
1428
+ function bindEvents() {
1429
+ if (self.config.wrap) {
1430
+ ["open", "close", "toggle", "clear"].forEach(function(evt) {
1431
+ Array.prototype.forEach.call(self.element.querySelectorAll("[data-" + evt + "]"), function(el) {
1432
+ return bind(el, "click", self[evt]);
1433
+ });
1434
+ });
1435
+ }
1436
+ if (self.isMobile) {
1437
+ setupMobile();
1438
+ return;
1439
+ }
1440
+ var debouncedResize = debounce(onResize, 50);
1441
+ self._debouncedChange = debounce(triggerChange, DEBOUNCED_CHANGE_MS);
1442
+ if (self.daysContainer && !/iPhone|iPad|iPod/i.test(navigator.userAgent))
1443
+ bind(self.daysContainer, "mouseover", function(e8) {
1444
+ if (self.config.mode === "range")
1445
+ onMouseOver(getEventTarget(e8));
1446
+ });
1447
+ bind(self._input, "keydown", onKeyDown);
1448
+ if (self.calendarContainer !== void 0) {
1449
+ bind(self.calendarContainer, "keydown", onKeyDown);
1450
+ }
1451
+ if (!self.config.inline && !self.config.static)
1452
+ bind(window, "resize", debouncedResize);
1453
+ if (window.ontouchstart !== void 0)
1454
+ bind(window.document, "touchstart", documentClick);
1455
+ else
1456
+ bind(window.document, "mousedown", documentClick);
1457
+ bind(window.document, "focus", documentClick, { capture: true });
1458
+ if (self.config.clickOpens === true) {
1459
+ bind(self._input, "focus", self.open);
1460
+ bind(self._input, "click", self.open);
1461
+ }
1462
+ if (self.daysContainer !== void 0) {
1463
+ bind(self.monthNav, "click", onMonthNavClick);
1464
+ bind(self.monthNav, ["keyup", "increment"], onYearInput);
1465
+ bind(self.daysContainer, "click", selectDate);
1466
+ }
1467
+ if (self.timeContainer !== void 0 && self.minuteElement !== void 0 && self.hourElement !== void 0) {
1468
+ var selText = function(e8) {
1469
+ return getEventTarget(e8).select();
1470
+ };
1471
+ bind(self.timeContainer, ["increment"], updateTime);
1472
+ bind(self.timeContainer, "blur", updateTime, { capture: true });
1473
+ bind(self.timeContainer, "click", timeIncrement);
1474
+ bind([self.hourElement, self.minuteElement], ["focus", "click"], selText);
1475
+ if (self.secondElement !== void 0)
1476
+ bind(self.secondElement, "focus", function() {
1477
+ return self.secondElement && self.secondElement.select();
1478
+ });
1479
+ if (self.amPM !== void 0) {
1480
+ bind(self.amPM, "click", function(e8) {
1481
+ updateTime(e8);
1482
+ });
1483
+ }
1484
+ }
1485
+ if (self.config.allowInput) {
1486
+ bind(self._input, "blur", onBlur);
1487
+ }
1488
+ }
1489
+ function jumpToDate(jumpDate, triggerChange2) {
1490
+ var jumpTo = jumpDate !== void 0 ? self.parseDate(jumpDate) : self.latestSelectedDateObj || (self.config.minDate && self.config.minDate > self.now ? self.config.minDate : self.config.maxDate && self.config.maxDate < self.now ? self.config.maxDate : self.now);
1491
+ var oldYear = self.currentYear;
1492
+ var oldMonth = self.currentMonth;
1493
+ try {
1494
+ if (jumpTo !== void 0) {
1495
+ self.currentYear = jumpTo.getFullYear();
1496
+ self.currentMonth = jumpTo.getMonth();
1497
+ }
1498
+ } catch (e8) {
1499
+ e8.message = "Invalid date supplied: " + jumpTo;
1500
+ self.config.errorHandler(e8);
1501
+ }
1502
+ if (triggerChange2 && self.currentYear !== oldYear) {
1503
+ triggerEvent("onYearChange");
1504
+ buildMonthSwitch();
1505
+ }
1506
+ if (triggerChange2 && (self.currentYear !== oldYear || self.currentMonth !== oldMonth)) {
1507
+ triggerEvent("onMonthChange");
1508
+ }
1509
+ self.redraw();
1510
+ }
1511
+ function timeIncrement(e8) {
1512
+ var eventTarget = getEventTarget(e8);
1513
+ if (~eventTarget.className.indexOf("arrow"))
1514
+ incrementNumInput(e8, eventTarget.classList.contains("arrowUp") ? 1 : -1);
1515
+ }
1516
+ function incrementNumInput(e8, delta, inputElem) {
1517
+ var target = e8 && getEventTarget(e8);
1518
+ var input = inputElem || target && target.parentNode && target.parentNode.firstChild;
1519
+ var event = createEvent("increment");
1520
+ event.delta = delta;
1521
+ input && input.dispatchEvent(event);
1522
+ }
1523
+ function build() {
1524
+ var fragment = window.document.createDocumentFragment();
1525
+ self.calendarContainer = createElement("div", "flatpickr-calendar");
1526
+ self.calendarContainer.tabIndex = -1;
1527
+ if (!self.config.noCalendar) {
1528
+ fragment.appendChild(buildMonthNav());
1529
+ self.innerContainer = createElement("div", "flatpickr-innerContainer");
1530
+ if (self.config.weekNumbers) {
1531
+ var _a = buildWeeks(), weekWrapper = _a.weekWrapper, weekNumbers = _a.weekNumbers;
1532
+ self.innerContainer.appendChild(weekWrapper);
1533
+ self.weekNumbers = weekNumbers;
1534
+ self.weekWrapper = weekWrapper;
1535
+ }
1536
+ self.rContainer = createElement("div", "flatpickr-rContainer");
1537
+ self.rContainer.appendChild(buildWeekdays());
1538
+ if (!self.daysContainer) {
1539
+ self.daysContainer = createElement("div", "flatpickr-days");
1540
+ self.daysContainer.tabIndex = -1;
1541
+ }
1542
+ buildDays();
1543
+ self.rContainer.appendChild(self.daysContainer);
1544
+ self.innerContainer.appendChild(self.rContainer);
1545
+ fragment.appendChild(self.innerContainer);
1546
+ }
1547
+ if (self.config.enableTime) {
1548
+ fragment.appendChild(buildTime());
1549
+ }
1550
+ toggleClass(self.calendarContainer, "rangeMode", self.config.mode === "range");
1551
+ toggleClass(self.calendarContainer, "animate", self.config.animate === true);
1552
+ toggleClass(self.calendarContainer, "multiMonth", self.config.showMonths > 1);
1553
+ self.calendarContainer.appendChild(fragment);
1554
+ var customAppend = self.config.appendTo !== void 0 && self.config.appendTo.nodeType !== void 0;
1555
+ if (self.config.inline || self.config.static) {
1556
+ self.calendarContainer.classList.add(self.config.inline ? "inline" : "static");
1557
+ if (self.config.inline) {
1558
+ if (!customAppend && self.element.parentNode)
1559
+ self.element.parentNode.insertBefore(self.calendarContainer, self._input.nextSibling);
1560
+ else if (self.config.appendTo !== void 0)
1561
+ self.config.appendTo.appendChild(self.calendarContainer);
1562
+ }
1563
+ if (self.config.static) {
1564
+ var wrapper = createElement("div", "flatpickr-wrapper");
1565
+ if (self.element.parentNode)
1566
+ self.element.parentNode.insertBefore(wrapper, self.element);
1567
+ wrapper.appendChild(self.element);
1568
+ if (self.altInput)
1569
+ wrapper.appendChild(self.altInput);
1570
+ wrapper.appendChild(self.calendarContainer);
1571
+ }
1572
+ }
1573
+ if (!self.config.static && !self.config.inline)
1574
+ (self.config.appendTo !== void 0 ? self.config.appendTo : window.document.body).appendChild(self.calendarContainer);
1575
+ }
1576
+ function createDay(className, date, _dayNumber, i4) {
1577
+ var dateIsEnabled = isEnabled(date, true), dayElement = createElement("span", className, date.getDate().toString());
1578
+ dayElement.dateObj = date;
1579
+ dayElement.$i = i4;
1580
+ dayElement.setAttribute("aria-label", self.formatDate(date, self.config.ariaDateFormat));
1581
+ if (className.indexOf("hidden") === -1 && compareDates(date, self.now) === 0) {
1582
+ self.todayDateElem = dayElement;
1583
+ dayElement.classList.add("today");
1584
+ dayElement.setAttribute("aria-current", "date");
1585
+ }
1586
+ if (dateIsEnabled) {
1587
+ dayElement.tabIndex = -1;
1588
+ if (isDateSelected(date)) {
1589
+ dayElement.classList.add("selected");
1590
+ self.selectedDateElem = dayElement;
1591
+ if (self.config.mode === "range") {
1592
+ toggleClass(dayElement, "startRange", self.selectedDates[0] && compareDates(date, self.selectedDates[0], true) === 0);
1593
+ toggleClass(dayElement, "endRange", self.selectedDates[1] && compareDates(date, self.selectedDates[1], true) === 0);
1594
+ if (className === "nextMonthDay")
1595
+ dayElement.classList.add("inRange");
1596
+ }
1597
+ }
1598
+ } else {
1599
+ dayElement.classList.add("flatpickr-disabled");
1600
+ }
1601
+ if (self.config.mode === "range") {
1602
+ if (isDateInRange(date) && !isDateSelected(date))
1603
+ dayElement.classList.add("inRange");
1604
+ }
1605
+ if (self.weekNumbers && self.config.showMonths === 1 && className !== "prevMonthDay" && i4 % 7 === 6) {
1606
+ self.weekNumbers.insertAdjacentHTML("beforeend", "<span class='flatpickr-day'>" + self.config.getWeek(date) + "</span>");
1607
+ }
1608
+ triggerEvent("onDayCreate", dayElement);
1609
+ return dayElement;
1610
+ }
1611
+ function focusOnDayElem(targetNode) {
1612
+ targetNode.focus();
1613
+ if (self.config.mode === "range")
1614
+ onMouseOver(targetNode);
1615
+ }
1616
+ function getFirstAvailableDay(delta) {
1617
+ var startMonth = delta > 0 ? 0 : self.config.showMonths - 1;
1618
+ var endMonth = delta > 0 ? self.config.showMonths : -1;
1619
+ for (var m2 = startMonth; m2 != endMonth; m2 += delta) {
1620
+ var month = self.daysContainer.children[m2];
1621
+ var startIndex = delta > 0 ? 0 : month.children.length - 1;
1622
+ var endIndex = delta > 0 ? month.children.length : -1;
1623
+ for (var i4 = startIndex; i4 != endIndex; i4 += delta) {
1624
+ var c3 = month.children[i4];
1625
+ if (c3.className.indexOf("hidden") === -1 && isEnabled(c3.dateObj))
1626
+ return c3;
1627
+ }
1628
+ }
1629
+ return void 0;
1630
+ }
1631
+ function getNextAvailableDay(current, delta) {
1632
+ var givenMonth = current.className.indexOf("Month") === -1 ? current.dateObj.getMonth() : self.currentMonth;
1633
+ var endMonth = delta > 0 ? self.config.showMonths : -1;
1634
+ var loopDelta = delta > 0 ? 1 : -1;
1635
+ for (var m2 = givenMonth - self.currentMonth; m2 != endMonth; m2 += loopDelta) {
1636
+ var month = self.daysContainer.children[m2];
1637
+ var startIndex = givenMonth - self.currentMonth === m2 ? current.$i + delta : delta < 0 ? month.children.length - 1 : 0;
1638
+ var numMonthDays = month.children.length;
1639
+ for (var i4 = startIndex; i4 >= 0 && i4 < numMonthDays && i4 != (delta > 0 ? numMonthDays : -1); i4 += loopDelta) {
1640
+ var c3 = month.children[i4];
1641
+ if (c3.className.indexOf("hidden") === -1 && isEnabled(c3.dateObj) && Math.abs(current.$i - i4) >= Math.abs(delta))
1642
+ return focusOnDayElem(c3);
1643
+ }
1644
+ }
1645
+ self.changeMonth(loopDelta);
1646
+ focusOnDay(getFirstAvailableDay(loopDelta), 0);
1647
+ return void 0;
1648
+ }
1649
+ function focusOnDay(current, offset) {
1650
+ var activeElement = getClosestActiveElement();
1651
+ var dayFocused = isInView(activeElement || document.body);
1652
+ var startElem = current !== void 0 ? current : dayFocused ? activeElement : self.selectedDateElem !== void 0 && isInView(self.selectedDateElem) ? self.selectedDateElem : self.todayDateElem !== void 0 && isInView(self.todayDateElem) ? self.todayDateElem : getFirstAvailableDay(offset > 0 ? 1 : -1);
1653
+ if (startElem === void 0) {
1654
+ self._input.focus();
1655
+ } else if (!dayFocused) {
1656
+ focusOnDayElem(startElem);
1657
+ } else {
1658
+ getNextAvailableDay(startElem, offset);
1659
+ }
1660
+ }
1661
+ function buildMonthDays(year, month) {
1662
+ var firstOfMonth = (new Date(year, month, 1).getDay() - self.l10n.firstDayOfWeek + 7) % 7;
1663
+ var prevMonthDays = self.utils.getDaysInMonth((month - 1 + 12) % 12, year);
1664
+ var daysInMonth = self.utils.getDaysInMonth(month, year), days = window.document.createDocumentFragment(), isMultiMonth = self.config.showMonths > 1, prevMonthDayClass = isMultiMonth ? "prevMonthDay hidden" : "prevMonthDay", nextMonthDayClass = isMultiMonth ? "nextMonthDay hidden" : "nextMonthDay";
1665
+ var dayNumber = prevMonthDays + 1 - firstOfMonth, dayIndex = 0;
1666
+ for (; dayNumber <= prevMonthDays; dayNumber++, dayIndex++) {
1667
+ days.appendChild(createDay("flatpickr-day " + prevMonthDayClass, new Date(year, month - 1, dayNumber), dayNumber, dayIndex));
1668
+ }
1669
+ for (dayNumber = 1; dayNumber <= daysInMonth; dayNumber++, dayIndex++) {
1670
+ days.appendChild(createDay("flatpickr-day", new Date(year, month, dayNumber), dayNumber, dayIndex));
1671
+ }
1672
+ for (var dayNum = daysInMonth + 1; dayNum <= 42 - firstOfMonth && (self.config.showMonths === 1 || dayIndex % 7 !== 0); dayNum++, dayIndex++) {
1673
+ days.appendChild(createDay("flatpickr-day " + nextMonthDayClass, new Date(year, month + 1, dayNum % daysInMonth), dayNum, dayIndex));
1674
+ }
1675
+ var dayContainer = createElement("div", "dayContainer");
1676
+ dayContainer.appendChild(days);
1677
+ return dayContainer;
1678
+ }
1679
+ function buildDays() {
1680
+ if (self.daysContainer === void 0) {
1681
+ return;
1682
+ }
1683
+ clearNode(self.daysContainer);
1684
+ if (self.weekNumbers)
1685
+ clearNode(self.weekNumbers);
1686
+ var frag = document.createDocumentFragment();
1687
+ for (var i4 = 0; i4 < self.config.showMonths; i4++) {
1688
+ var d3 = new Date(self.currentYear, self.currentMonth, 1);
1689
+ d3.setMonth(self.currentMonth + i4);
1690
+ frag.appendChild(buildMonthDays(d3.getFullYear(), d3.getMonth()));
1691
+ }
1692
+ self.daysContainer.appendChild(frag);
1693
+ self.days = self.daysContainer.firstChild;
1694
+ if (self.config.mode === "range" && self.selectedDates.length === 1) {
1695
+ onMouseOver();
1696
+ }
1697
+ }
1698
+ function buildMonthSwitch() {
1699
+ if (self.config.showMonths > 1 || self.config.monthSelectorType !== "dropdown")
1700
+ return;
1701
+ var shouldBuildMonth = function(month2) {
1702
+ if (self.config.minDate !== void 0 && self.currentYear === self.config.minDate.getFullYear() && month2 < self.config.minDate.getMonth()) {
1703
+ return false;
1704
+ }
1705
+ return !(self.config.maxDate !== void 0 && self.currentYear === self.config.maxDate.getFullYear() && month2 > self.config.maxDate.getMonth());
1706
+ };
1707
+ self.monthsDropdownContainer.tabIndex = -1;
1708
+ self.monthsDropdownContainer.innerHTML = "";
1709
+ for (var i4 = 0; i4 < 12; i4++) {
1710
+ if (!shouldBuildMonth(i4))
1711
+ continue;
1712
+ var month = createElement("option", "flatpickr-monthDropdown-month");
1713
+ month.value = new Date(self.currentYear, i4).getMonth().toString();
1714
+ month.textContent = monthToStr(i4, self.config.shorthandCurrentMonth, self.l10n);
1715
+ month.tabIndex = -1;
1716
+ if (self.currentMonth === i4) {
1717
+ month.selected = true;
1718
+ }
1719
+ self.monthsDropdownContainer.appendChild(month);
1720
+ }
1721
+ }
1722
+ function buildMonth() {
1723
+ var container = createElement("div", "flatpickr-month");
1724
+ var monthNavFragment = window.document.createDocumentFragment();
1725
+ var monthElement;
1726
+ if (self.config.showMonths > 1 || self.config.monthSelectorType === "static") {
1727
+ monthElement = createElement("span", "cur-month");
1728
+ } else {
1729
+ self.monthsDropdownContainer = createElement("select", "flatpickr-monthDropdown-months");
1730
+ self.monthsDropdownContainer.setAttribute("aria-label", self.l10n.monthAriaLabel);
1731
+ bind(self.monthsDropdownContainer, "change", function(e8) {
1732
+ var target = getEventTarget(e8);
1733
+ var selectedMonth = parseInt(target.value, 10);
1734
+ self.changeMonth(selectedMonth - self.currentMonth);
1735
+ triggerEvent("onMonthChange");
1736
+ });
1737
+ buildMonthSwitch();
1738
+ monthElement = self.monthsDropdownContainer;
1739
+ }
1740
+ var yearInput = createNumberInput("cur-year", { tabindex: "-1" });
1741
+ var yearElement = yearInput.getElementsByTagName("input")[0];
1742
+ yearElement.setAttribute("aria-label", self.l10n.yearAriaLabel);
1743
+ if (self.config.minDate) {
1744
+ yearElement.setAttribute("min", self.config.minDate.getFullYear().toString());
1745
+ }
1746
+ if (self.config.maxDate) {
1747
+ yearElement.setAttribute("max", self.config.maxDate.getFullYear().toString());
1748
+ yearElement.disabled = !!self.config.minDate && self.config.minDate.getFullYear() === self.config.maxDate.getFullYear();
1749
+ }
1750
+ var currentMonth = createElement("div", "flatpickr-current-month");
1751
+ currentMonth.appendChild(monthElement);
1752
+ currentMonth.appendChild(yearInput);
1753
+ monthNavFragment.appendChild(currentMonth);
1754
+ container.appendChild(monthNavFragment);
1755
+ return {
1756
+ container,
1757
+ yearElement,
1758
+ monthElement
1759
+ };
1760
+ }
1761
+ function buildMonths() {
1762
+ clearNode(self.monthNav);
1763
+ self.monthNav.appendChild(self.prevMonthNav);
1764
+ if (self.config.showMonths) {
1765
+ self.yearElements = [];
1766
+ self.monthElements = [];
1767
+ }
1768
+ for (var m2 = self.config.showMonths; m2--; ) {
1769
+ var month = buildMonth();
1770
+ self.yearElements.push(month.yearElement);
1771
+ self.monthElements.push(month.monthElement);
1772
+ self.monthNav.appendChild(month.container);
1773
+ }
1774
+ self.monthNav.appendChild(self.nextMonthNav);
1775
+ }
1776
+ function buildMonthNav() {
1777
+ self.monthNav = createElement("div", "flatpickr-months");
1778
+ self.yearElements = [];
1779
+ self.monthElements = [];
1780
+ self.prevMonthNav = createElement("span", "flatpickr-prev-month");
1781
+ self.prevMonthNav.innerHTML = self.config.prevArrow;
1782
+ self.nextMonthNav = createElement("span", "flatpickr-next-month");
1783
+ self.nextMonthNav.innerHTML = self.config.nextArrow;
1784
+ buildMonths();
1785
+ Object.defineProperty(self, "_hidePrevMonthArrow", {
1786
+ get: function() {
1787
+ return self.__hidePrevMonthArrow;
1788
+ },
1789
+ set: function(bool) {
1790
+ if (self.__hidePrevMonthArrow !== bool) {
1791
+ toggleClass(self.prevMonthNav, "flatpickr-disabled", bool);
1792
+ self.__hidePrevMonthArrow = bool;
1793
+ }
1794
+ }
1795
+ });
1796
+ Object.defineProperty(self, "_hideNextMonthArrow", {
1797
+ get: function() {
1798
+ return self.__hideNextMonthArrow;
1799
+ },
1800
+ set: function(bool) {
1801
+ if (self.__hideNextMonthArrow !== bool) {
1802
+ toggleClass(self.nextMonthNav, "flatpickr-disabled", bool);
1803
+ self.__hideNextMonthArrow = bool;
1804
+ }
1805
+ }
1806
+ });
1807
+ self.currentYearElement = self.yearElements[0];
1808
+ updateNavigationCurrentMonth();
1809
+ return self.monthNav;
1810
+ }
1811
+ function buildTime() {
1812
+ self.calendarContainer.classList.add("hasTime");
1813
+ if (self.config.noCalendar)
1814
+ self.calendarContainer.classList.add("noCalendar");
1815
+ var defaults2 = getDefaultHours(self.config);
1816
+ self.timeContainer = createElement("div", "flatpickr-time");
1817
+ self.timeContainer.tabIndex = -1;
1818
+ var separator = createElement("span", "flatpickr-time-separator", ":");
1819
+ var hourInput = createNumberInput("flatpickr-hour", {
1820
+ "aria-label": self.l10n.hourAriaLabel
1821
+ });
1822
+ self.hourElement = hourInput.getElementsByTagName("input")[0];
1823
+ var minuteInput = createNumberInput("flatpickr-minute", {
1824
+ "aria-label": self.l10n.minuteAriaLabel
1825
+ });
1826
+ self.minuteElement = minuteInput.getElementsByTagName("input")[0];
1827
+ self.hourElement.tabIndex = self.minuteElement.tabIndex = -1;
1828
+ self.hourElement.value = pad(self.latestSelectedDateObj ? self.latestSelectedDateObj.getHours() : self.config.time_24hr ? defaults2.hours : military2ampm(defaults2.hours));
1829
+ self.minuteElement.value = pad(self.latestSelectedDateObj ? self.latestSelectedDateObj.getMinutes() : defaults2.minutes);
1830
+ self.hourElement.setAttribute("step", self.config.hourIncrement.toString());
1831
+ self.minuteElement.setAttribute("step", self.config.minuteIncrement.toString());
1832
+ self.hourElement.setAttribute("min", self.config.time_24hr ? "0" : "1");
1833
+ self.hourElement.setAttribute("max", self.config.time_24hr ? "23" : "12");
1834
+ self.hourElement.setAttribute("maxlength", "2");
1835
+ self.minuteElement.setAttribute("min", "0");
1836
+ self.minuteElement.setAttribute("max", "59");
1837
+ self.minuteElement.setAttribute("maxlength", "2");
1838
+ self.timeContainer.appendChild(hourInput);
1839
+ self.timeContainer.appendChild(separator);
1840
+ self.timeContainer.appendChild(minuteInput);
1841
+ if (self.config.time_24hr)
1842
+ self.timeContainer.classList.add("time24hr");
1843
+ if (self.config.enableSeconds) {
1844
+ self.timeContainer.classList.add("hasSeconds");
1845
+ var secondInput = createNumberInput("flatpickr-second");
1846
+ self.secondElement = secondInput.getElementsByTagName("input")[0];
1847
+ self.secondElement.value = pad(self.latestSelectedDateObj ? self.latestSelectedDateObj.getSeconds() : defaults2.seconds);
1848
+ self.secondElement.setAttribute("step", self.minuteElement.getAttribute("step"));
1849
+ self.secondElement.setAttribute("min", "0");
1850
+ self.secondElement.setAttribute("max", "59");
1851
+ self.secondElement.setAttribute("maxlength", "2");
1852
+ self.timeContainer.appendChild(createElement("span", "flatpickr-time-separator", ":"));
1853
+ self.timeContainer.appendChild(secondInput);
1854
+ }
1855
+ if (!self.config.time_24hr) {
1856
+ self.amPM = createElement("span", "flatpickr-am-pm", self.l10n.amPM[int((self.latestSelectedDateObj ? self.hourElement.value : self.config.defaultHour) > 11)]);
1857
+ self.amPM.title = self.l10n.toggleTitle;
1858
+ self.amPM.tabIndex = -1;
1859
+ self.timeContainer.appendChild(self.amPM);
1860
+ }
1861
+ return self.timeContainer;
1862
+ }
1863
+ function buildWeekdays() {
1864
+ if (!self.weekdayContainer)
1865
+ self.weekdayContainer = createElement("div", "flatpickr-weekdays");
1866
+ else
1867
+ clearNode(self.weekdayContainer);
1868
+ for (var i4 = self.config.showMonths; i4--; ) {
1869
+ var container = createElement("div", "flatpickr-weekdaycontainer");
1870
+ self.weekdayContainer.appendChild(container);
1871
+ }
1872
+ updateWeekdays();
1873
+ return self.weekdayContainer;
1874
+ }
1875
+ function updateWeekdays() {
1876
+ if (!self.weekdayContainer) {
1877
+ return;
1878
+ }
1879
+ var firstDayOfWeek = self.l10n.firstDayOfWeek;
1880
+ var weekdays = __spreadArrays(self.l10n.weekdays.shorthand);
1881
+ if (firstDayOfWeek > 0 && firstDayOfWeek < weekdays.length) {
1882
+ weekdays = __spreadArrays(weekdays.splice(firstDayOfWeek, weekdays.length), weekdays.splice(0, firstDayOfWeek));
1883
+ }
1884
+ for (var i4 = self.config.showMonths; i4--; ) {
1885
+ self.weekdayContainer.children[i4].innerHTML = "\n <span class='flatpickr-weekday'>\n " + weekdays.join("</span><span class='flatpickr-weekday'>") + "\n </span>\n ";
1886
+ }
1887
+ }
1888
+ function buildWeeks() {
1889
+ self.calendarContainer.classList.add("hasWeeks");
1890
+ var weekWrapper = createElement("div", "flatpickr-weekwrapper");
1891
+ weekWrapper.appendChild(createElement("span", "flatpickr-weekday", self.l10n.weekAbbreviation));
1892
+ var weekNumbers = createElement("div", "flatpickr-weeks");
1893
+ weekWrapper.appendChild(weekNumbers);
1894
+ return {
1895
+ weekWrapper,
1896
+ weekNumbers
1897
+ };
1898
+ }
1899
+ function changeMonth(value, isOffset) {
1900
+ if (isOffset === void 0) {
1901
+ isOffset = true;
1902
+ }
1903
+ var delta = isOffset ? value : value - self.currentMonth;
1904
+ if (delta < 0 && self._hidePrevMonthArrow === true || delta > 0 && self._hideNextMonthArrow === true)
1905
+ return;
1906
+ self.currentMonth += delta;
1907
+ if (self.currentMonth < 0 || self.currentMonth > 11) {
1908
+ self.currentYear += self.currentMonth > 11 ? 1 : -1;
1909
+ self.currentMonth = (self.currentMonth + 12) % 12;
1910
+ triggerEvent("onYearChange");
1911
+ buildMonthSwitch();
1912
+ }
1913
+ buildDays();
1914
+ triggerEvent("onMonthChange");
1915
+ updateNavigationCurrentMonth();
1916
+ }
1917
+ function clear(triggerChangeEvent, toInitial) {
1918
+ if (triggerChangeEvent === void 0) {
1919
+ triggerChangeEvent = true;
1920
+ }
1921
+ if (toInitial === void 0) {
1922
+ toInitial = true;
1923
+ }
1924
+ self.input.value = "";
1925
+ if (self.altInput !== void 0)
1926
+ self.altInput.value = "";
1927
+ if (self.mobileInput !== void 0)
1928
+ self.mobileInput.value = "";
1929
+ self.selectedDates = [];
1930
+ self.latestSelectedDateObj = void 0;
1931
+ if (toInitial === true) {
1932
+ self.currentYear = self._initialDate.getFullYear();
1933
+ self.currentMonth = self._initialDate.getMonth();
1934
+ }
1935
+ if (self.config.enableTime === true) {
1936
+ var _a = getDefaultHours(self.config), hours = _a.hours, minutes = _a.minutes, seconds = _a.seconds;
1937
+ setHours(hours, minutes, seconds);
1938
+ }
1939
+ self.redraw();
1940
+ if (triggerChangeEvent)
1941
+ triggerEvent("onChange");
1942
+ }
1943
+ function close() {
1944
+ self.isOpen = false;
1945
+ if (!self.isMobile) {
1946
+ if (self.calendarContainer !== void 0) {
1947
+ self.calendarContainer.classList.remove("open");
1948
+ }
1949
+ if (self._input !== void 0) {
1950
+ self._input.classList.remove("active");
1951
+ }
1952
+ }
1953
+ triggerEvent("onClose");
1954
+ }
1955
+ function destroy() {
1956
+ if (self.config !== void 0)
1957
+ triggerEvent("onDestroy");
1958
+ for (var i4 = self._handlers.length; i4--; ) {
1959
+ self._handlers[i4].remove();
1960
+ }
1961
+ self._handlers = [];
1962
+ if (self.mobileInput) {
1963
+ if (self.mobileInput.parentNode)
1964
+ self.mobileInput.parentNode.removeChild(self.mobileInput);
1965
+ self.mobileInput = void 0;
1966
+ } else if (self.calendarContainer && self.calendarContainer.parentNode) {
1967
+ if (self.config.static && self.calendarContainer.parentNode) {
1968
+ var wrapper = self.calendarContainer.parentNode;
1969
+ wrapper.lastChild && wrapper.removeChild(wrapper.lastChild);
1970
+ if (wrapper.parentNode) {
1971
+ while (wrapper.firstChild)
1972
+ wrapper.parentNode.insertBefore(wrapper.firstChild, wrapper);
1973
+ wrapper.parentNode.removeChild(wrapper);
1974
+ }
1975
+ } else
1976
+ self.calendarContainer.parentNode.removeChild(self.calendarContainer);
1977
+ }
1978
+ if (self.altInput) {
1979
+ self.input.type = "text";
1980
+ if (self.altInput.parentNode)
1981
+ self.altInput.parentNode.removeChild(self.altInput);
1982
+ delete self.altInput;
1983
+ }
1984
+ if (self.input) {
1985
+ self.input.type = self.input._type;
1986
+ self.input.classList.remove("flatpickr-input");
1987
+ self.input.removeAttribute("readonly");
1988
+ }
1989
+ [
1990
+ "_showTimeInput",
1991
+ "latestSelectedDateObj",
1992
+ "_hideNextMonthArrow",
1993
+ "_hidePrevMonthArrow",
1994
+ "__hideNextMonthArrow",
1995
+ "__hidePrevMonthArrow",
1996
+ "isMobile",
1997
+ "isOpen",
1998
+ "selectedDateElem",
1999
+ "minDateHasTime",
2000
+ "maxDateHasTime",
2001
+ "days",
2002
+ "daysContainer",
2003
+ "_input",
2004
+ "_positionElement",
2005
+ "innerContainer",
2006
+ "rContainer",
2007
+ "monthNav",
2008
+ "todayDateElem",
2009
+ "calendarContainer",
2010
+ "weekdayContainer",
2011
+ "prevMonthNav",
2012
+ "nextMonthNav",
2013
+ "monthsDropdownContainer",
2014
+ "currentMonthElement",
2015
+ "currentYearElement",
2016
+ "navigationCurrentMonth",
2017
+ "selectedDateElem",
2018
+ "config"
2019
+ ].forEach(function(k2) {
2020
+ try {
2021
+ delete self[k2];
2022
+ } catch (_2) {
2023
+ }
2024
+ });
2025
+ }
2026
+ function isCalendarElem(elem) {
2027
+ return self.calendarContainer.contains(elem);
2028
+ }
2029
+ function documentClick(e8) {
2030
+ if (self.isOpen && !self.config.inline) {
2031
+ var eventTarget_1 = getEventTarget(e8);
2032
+ var isCalendarElement = isCalendarElem(eventTarget_1);
2033
+ var isInput = eventTarget_1 === self.input || eventTarget_1 === self.altInput || self.element.contains(eventTarget_1) || e8.path && e8.path.indexOf && (~e8.path.indexOf(self.input) || ~e8.path.indexOf(self.altInput));
2034
+ var lostFocus = !isInput && !isCalendarElement && !isCalendarElem(e8.relatedTarget);
2035
+ var isIgnored = !self.config.ignoredFocusElements.some(function(elem) {
2036
+ return elem.contains(eventTarget_1);
2037
+ });
2038
+ if (lostFocus && isIgnored) {
2039
+ if (self.config.allowInput) {
2040
+ self.setDate(self._input.value, false, self.config.altInput ? self.config.altFormat : self.config.dateFormat);
2041
+ }
2042
+ if (self.timeContainer !== void 0 && self.minuteElement !== void 0 && self.hourElement !== void 0 && self.input.value !== "" && self.input.value !== void 0) {
2043
+ updateTime();
2044
+ }
2045
+ self.close();
2046
+ if (self.config && self.config.mode === "range" && self.selectedDates.length === 1)
2047
+ self.clear(false);
2048
+ }
2049
+ }
2050
+ }
2051
+ function changeYear(newYear) {
2052
+ if (!newYear || self.config.minDate && newYear < self.config.minDate.getFullYear() || self.config.maxDate && newYear > self.config.maxDate.getFullYear())
2053
+ return;
2054
+ var newYearNum = newYear, isNewYear = self.currentYear !== newYearNum;
2055
+ self.currentYear = newYearNum || self.currentYear;
2056
+ if (self.config.maxDate && self.currentYear === self.config.maxDate.getFullYear()) {
2057
+ self.currentMonth = Math.min(self.config.maxDate.getMonth(), self.currentMonth);
2058
+ } else if (self.config.minDate && self.currentYear === self.config.minDate.getFullYear()) {
2059
+ self.currentMonth = Math.max(self.config.minDate.getMonth(), self.currentMonth);
2060
+ }
2061
+ if (isNewYear) {
2062
+ self.redraw();
2063
+ triggerEvent("onYearChange");
2064
+ buildMonthSwitch();
2065
+ }
2066
+ }
2067
+ function isEnabled(date, timeless) {
2068
+ var _a;
2069
+ if (timeless === void 0) {
2070
+ timeless = true;
2071
+ }
2072
+ var dateToCheck = self.parseDate(date, void 0, timeless);
2073
+ if (self.config.minDate && dateToCheck && compareDates(dateToCheck, self.config.minDate, timeless !== void 0 ? timeless : !self.minDateHasTime) < 0 || self.config.maxDate && dateToCheck && compareDates(dateToCheck, self.config.maxDate, timeless !== void 0 ? timeless : !self.maxDateHasTime) > 0)
2074
+ return false;
2075
+ if (!self.config.enable && self.config.disable.length === 0)
2076
+ return true;
2077
+ if (dateToCheck === void 0)
2078
+ return false;
2079
+ var bool = !!self.config.enable, array = (_a = self.config.enable) !== null && _a !== void 0 ? _a : self.config.disable;
2080
+ for (var i4 = 0, d3 = void 0; i4 < array.length; i4++) {
2081
+ d3 = array[i4];
2082
+ if (typeof d3 === "function" && d3(dateToCheck))
2083
+ return bool;
2084
+ else if (d3 instanceof Date && dateToCheck !== void 0 && d3.getTime() === dateToCheck.getTime())
2085
+ return bool;
2086
+ else if (typeof d3 === "string") {
2087
+ var parsed = self.parseDate(d3, void 0, true);
2088
+ return parsed && parsed.getTime() === dateToCheck.getTime() ? bool : !bool;
2089
+ } else if (typeof d3 === "object" && dateToCheck !== void 0 && d3.from && d3.to && dateToCheck.getTime() >= d3.from.getTime() && dateToCheck.getTime() <= d3.to.getTime())
2090
+ return bool;
2091
+ }
2092
+ return !bool;
2093
+ }
2094
+ function isInView(elem) {
2095
+ if (self.daysContainer !== void 0)
2096
+ return elem.className.indexOf("hidden") === -1 && elem.className.indexOf("flatpickr-disabled") === -1 && self.daysContainer.contains(elem);
2097
+ return false;
2098
+ }
2099
+ function onBlur(e8) {
2100
+ var isInput = e8.target === self._input;
2101
+ var valueChanged = self._input.value.trimEnd() !== getDateStr();
2102
+ if (isInput && valueChanged && !(e8.relatedTarget && isCalendarElem(e8.relatedTarget))) {
2103
+ self.setDate(self._input.value, true, e8.target === self.altInput ? self.config.altFormat : self.config.dateFormat);
2104
+ }
2105
+ }
2106
+ function onKeyDown(e8) {
2107
+ var eventTarget = getEventTarget(e8);
2108
+ var isInput = self.config.wrap ? element.contains(eventTarget) : eventTarget === self._input;
2109
+ var allowInput = self.config.allowInput;
2110
+ var allowKeydown = self.isOpen && (!allowInput || !isInput);
2111
+ var allowInlineKeydown = self.config.inline && isInput && !allowInput;
2112
+ if (e8.keyCode === 13 && isInput) {
2113
+ if (allowInput) {
2114
+ self.setDate(self._input.value, true, eventTarget === self.altInput ? self.config.altFormat : self.config.dateFormat);
2115
+ self.close();
2116
+ return eventTarget.blur();
2117
+ } else {
2118
+ self.open();
2119
+ }
2120
+ } else if (isCalendarElem(eventTarget) || allowKeydown || allowInlineKeydown) {
2121
+ var isTimeObj = !!self.timeContainer && self.timeContainer.contains(eventTarget);
2122
+ switch (e8.keyCode) {
2123
+ case 13:
2124
+ if (isTimeObj) {
2125
+ e8.preventDefault();
2126
+ updateTime();
2127
+ focusAndClose();
2128
+ } else
2129
+ selectDate(e8);
2130
+ break;
2131
+ case 27:
2132
+ e8.preventDefault();
2133
+ focusAndClose();
2134
+ break;
2135
+ case 8:
2136
+ case 46:
2137
+ if (isInput && !self.config.allowInput) {
2138
+ e8.preventDefault();
2139
+ self.clear();
2140
+ }
2141
+ break;
2142
+ case 37:
2143
+ case 39:
2144
+ if (!isTimeObj && !isInput) {
2145
+ e8.preventDefault();
2146
+ var activeElement = getClosestActiveElement();
2147
+ if (self.daysContainer !== void 0 && (allowInput === false || activeElement && isInView(activeElement))) {
2148
+ var delta_1 = e8.keyCode === 39 ? 1 : -1;
2149
+ if (!e8.ctrlKey)
2150
+ focusOnDay(void 0, delta_1);
2151
+ else {
2152
+ e8.stopPropagation();
2153
+ changeMonth(delta_1);
2154
+ focusOnDay(getFirstAvailableDay(1), 0);
2155
+ }
2156
+ }
2157
+ } else if (self.hourElement)
2158
+ self.hourElement.focus();
2159
+ break;
2160
+ case 38:
2161
+ case 40:
2162
+ e8.preventDefault();
2163
+ var delta = e8.keyCode === 40 ? 1 : -1;
2164
+ if (self.daysContainer && eventTarget.$i !== void 0 || eventTarget === self.input || eventTarget === self.altInput) {
2165
+ if (e8.ctrlKey) {
2166
+ e8.stopPropagation();
2167
+ changeYear(self.currentYear - delta);
2168
+ focusOnDay(getFirstAvailableDay(1), 0);
2169
+ } else if (!isTimeObj)
2170
+ focusOnDay(void 0, delta * 7);
2171
+ } else if (eventTarget === self.currentYearElement) {
2172
+ changeYear(self.currentYear - delta);
2173
+ } else if (self.config.enableTime) {
2174
+ if (!isTimeObj && self.hourElement)
2175
+ self.hourElement.focus();
2176
+ updateTime(e8);
2177
+ self._debouncedChange();
2178
+ }
2179
+ break;
2180
+ case 9:
2181
+ if (isTimeObj) {
2182
+ var elems = [
2183
+ self.hourElement,
2184
+ self.minuteElement,
2185
+ self.secondElement,
2186
+ self.amPM
2187
+ ].concat(self.pluginElements).filter(function(x3) {
2188
+ return x3;
2189
+ });
2190
+ var i4 = elems.indexOf(eventTarget);
2191
+ if (i4 !== -1) {
2192
+ var target = elems[i4 + (e8.shiftKey ? -1 : 1)];
2193
+ e8.preventDefault();
2194
+ (target || self._input).focus();
2195
+ }
2196
+ } else if (!self.config.noCalendar && self.daysContainer && self.daysContainer.contains(eventTarget) && e8.shiftKey) {
2197
+ e8.preventDefault();
2198
+ self._input.focus();
2199
+ }
2200
+ break;
2201
+ default:
2202
+ break;
2203
+ }
2204
+ }
2205
+ if (self.amPM !== void 0 && eventTarget === self.amPM) {
2206
+ switch (e8.key) {
2207
+ case self.l10n.amPM[0].charAt(0):
2208
+ case self.l10n.amPM[0].charAt(0).toLowerCase():
2209
+ self.amPM.textContent = self.l10n.amPM[0];
2210
+ setHoursFromInputs();
2211
+ updateValue();
2212
+ break;
2213
+ case self.l10n.amPM[1].charAt(0):
2214
+ case self.l10n.amPM[1].charAt(0).toLowerCase():
2215
+ self.amPM.textContent = self.l10n.amPM[1];
2216
+ setHoursFromInputs();
2217
+ updateValue();
2218
+ break;
2219
+ }
2220
+ }
2221
+ if (isInput || isCalendarElem(eventTarget)) {
2222
+ triggerEvent("onKeyDown", e8);
2223
+ }
2224
+ }
2225
+ function onMouseOver(elem, cellClass) {
2226
+ if (cellClass === void 0) {
2227
+ cellClass = "flatpickr-day";
2228
+ }
2229
+ if (self.selectedDates.length !== 1 || elem && (!elem.classList.contains(cellClass) || elem.classList.contains("flatpickr-disabled")))
2230
+ return;
2231
+ var hoverDate = elem ? elem.dateObj.getTime() : self.days.firstElementChild.dateObj.getTime(), initialDate = self.parseDate(self.selectedDates[0], void 0, true).getTime(), rangeStartDate = Math.min(hoverDate, self.selectedDates[0].getTime()), rangeEndDate = Math.max(hoverDate, self.selectedDates[0].getTime());
2232
+ var containsDisabled = false;
2233
+ var minRange = 0, maxRange = 0;
2234
+ for (var t3 = rangeStartDate; t3 < rangeEndDate; t3 += duration.DAY) {
2235
+ if (!isEnabled(new Date(t3), true)) {
2236
+ containsDisabled = containsDisabled || t3 > rangeStartDate && t3 < rangeEndDate;
2237
+ if (t3 < initialDate && (!minRange || t3 > minRange))
2238
+ minRange = t3;
2239
+ else if (t3 > initialDate && (!maxRange || t3 < maxRange))
2240
+ maxRange = t3;
2241
+ }
2242
+ }
2243
+ var hoverableCells = Array.from(self.rContainer.querySelectorAll("*:nth-child(-n+" + self.config.showMonths + ") > ." + cellClass));
2244
+ hoverableCells.forEach(function(dayElem) {
2245
+ var date = dayElem.dateObj;
2246
+ var timestamp = date.getTime();
2247
+ var outOfRange = minRange > 0 && timestamp < minRange || maxRange > 0 && timestamp > maxRange;
2248
+ if (outOfRange) {
2249
+ dayElem.classList.add("notAllowed");
2250
+ ["inRange", "startRange", "endRange"].forEach(function(c3) {
2251
+ dayElem.classList.remove(c3);
2252
+ });
2253
+ return;
2254
+ } else if (containsDisabled && !outOfRange)
2255
+ return;
2256
+ ["startRange", "inRange", "endRange", "notAllowed"].forEach(function(c3) {
2257
+ dayElem.classList.remove(c3);
2258
+ });
2259
+ if (elem !== void 0) {
2260
+ elem.classList.add(hoverDate <= self.selectedDates[0].getTime() ? "startRange" : "endRange");
2261
+ if (initialDate < hoverDate && timestamp === initialDate)
2262
+ dayElem.classList.add("startRange");
2263
+ else if (initialDate > hoverDate && timestamp === initialDate)
2264
+ dayElem.classList.add("endRange");
2265
+ if (timestamp >= minRange && (maxRange === 0 || timestamp <= maxRange) && isBetween(timestamp, initialDate, hoverDate))
2266
+ dayElem.classList.add("inRange");
2267
+ }
2268
+ });
2269
+ }
2270
+ function onResize() {
2271
+ if (self.isOpen && !self.config.static && !self.config.inline)
2272
+ positionCalendar();
2273
+ }
2274
+ function open(e8, positionElement) {
2275
+ if (positionElement === void 0) {
2276
+ positionElement = self._positionElement;
2277
+ }
2278
+ if (self.isMobile === true) {
2279
+ if (e8) {
2280
+ e8.preventDefault();
2281
+ var eventTarget = getEventTarget(e8);
2282
+ if (eventTarget) {
2283
+ eventTarget.blur();
2284
+ }
2285
+ }
2286
+ if (self.mobileInput !== void 0) {
2287
+ self.mobileInput.focus();
2288
+ self.mobileInput.click();
2289
+ }
2290
+ triggerEvent("onOpen");
2291
+ return;
2292
+ } else if (self._input.disabled || self.config.inline) {
2293
+ return;
2294
+ }
2295
+ var wasOpen = self.isOpen;
2296
+ self.isOpen = true;
2297
+ if (!wasOpen) {
2298
+ self.calendarContainer.classList.add("open");
2299
+ self._input.classList.add("active");
2300
+ triggerEvent("onOpen");
2301
+ positionCalendar(positionElement);
2302
+ }
2303
+ if (self.config.enableTime === true && self.config.noCalendar === true) {
2304
+ if (self.config.allowInput === false && (e8 === void 0 || !self.timeContainer.contains(e8.relatedTarget))) {
2305
+ setTimeout(function() {
2306
+ return self.hourElement.select();
2307
+ }, 50);
2308
+ }
2309
+ }
2310
+ }
2311
+ function minMaxDateSetter(type) {
2312
+ return function(date) {
2313
+ var dateObj = self.config["_" + type + "Date"] = self.parseDate(date, self.config.dateFormat);
2314
+ var inverseDateObj = self.config["_" + (type === "min" ? "max" : "min") + "Date"];
2315
+ if (dateObj !== void 0) {
2316
+ self[type === "min" ? "minDateHasTime" : "maxDateHasTime"] = dateObj.getHours() > 0 || dateObj.getMinutes() > 0 || dateObj.getSeconds() > 0;
2317
+ }
2318
+ if (self.selectedDates) {
2319
+ self.selectedDates = self.selectedDates.filter(function(d3) {
2320
+ return isEnabled(d3);
2321
+ });
2322
+ if (!self.selectedDates.length && type === "min")
2323
+ setHoursFromDate(dateObj);
2324
+ updateValue();
2325
+ }
2326
+ if (self.daysContainer) {
2327
+ redraw();
2328
+ if (dateObj !== void 0)
2329
+ self.currentYearElement[type] = dateObj.getFullYear().toString();
2330
+ else
2331
+ self.currentYearElement.removeAttribute(type);
2332
+ self.currentYearElement.disabled = !!inverseDateObj && dateObj !== void 0 && inverseDateObj.getFullYear() === dateObj.getFullYear();
2333
+ }
2334
+ };
2335
+ }
2336
+ function parseConfig() {
2337
+ var boolOpts = [
2338
+ "wrap",
2339
+ "weekNumbers",
2340
+ "allowInput",
2341
+ "allowInvalidPreload",
2342
+ "clickOpens",
2343
+ "time_24hr",
2344
+ "enableTime",
2345
+ "noCalendar",
2346
+ "altInput",
2347
+ "shorthandCurrentMonth",
2348
+ "inline",
2349
+ "static",
2350
+ "enableSeconds",
2351
+ "disableMobile"
2352
+ ];
2353
+ var userConfig = __assign(__assign({}, JSON.parse(JSON.stringify(element.dataset || {}))), instanceConfig);
2354
+ var formats2 = {};
2355
+ self.config.parseDate = userConfig.parseDate;
2356
+ self.config.formatDate = userConfig.formatDate;
2357
+ Object.defineProperty(self.config, "enable", {
2358
+ get: function() {
2359
+ return self.config._enable;
2360
+ },
2361
+ set: function(dates) {
2362
+ self.config._enable = parseDateRules(dates);
2363
+ }
2364
+ });
2365
+ Object.defineProperty(self.config, "disable", {
2366
+ get: function() {
2367
+ return self.config._disable;
2368
+ },
2369
+ set: function(dates) {
2370
+ self.config._disable = parseDateRules(dates);
2371
+ }
2372
+ });
2373
+ var timeMode = userConfig.mode === "time";
2374
+ if (!userConfig.dateFormat && (userConfig.enableTime || timeMode)) {
2375
+ var defaultDateFormat = flatpickr2.defaultConfig.dateFormat || defaults.dateFormat;
2376
+ formats2.dateFormat = userConfig.noCalendar || timeMode ? "H:i" + (userConfig.enableSeconds ? ":S" : "") : defaultDateFormat + " H:i" + (userConfig.enableSeconds ? ":S" : "");
2377
+ }
2378
+ if (userConfig.altInput && (userConfig.enableTime || timeMode) && !userConfig.altFormat) {
2379
+ var defaultAltFormat = flatpickr2.defaultConfig.altFormat || defaults.altFormat;
2380
+ formats2.altFormat = userConfig.noCalendar || timeMode ? "h:i" + (userConfig.enableSeconds ? ":S K" : " K") : defaultAltFormat + (" h:i" + (userConfig.enableSeconds ? ":S" : "") + " K");
2381
+ }
2382
+ Object.defineProperty(self.config, "minDate", {
2383
+ get: function() {
2384
+ return self.config._minDate;
2385
+ },
2386
+ set: minMaxDateSetter("min")
2387
+ });
2388
+ Object.defineProperty(self.config, "maxDate", {
2389
+ get: function() {
2390
+ return self.config._maxDate;
2391
+ },
2392
+ set: minMaxDateSetter("max")
2393
+ });
2394
+ var minMaxTimeSetter = function(type) {
2395
+ return function(val) {
2396
+ self.config[type === "min" ? "_minTime" : "_maxTime"] = self.parseDate(val, "H:i:S");
2397
+ };
2398
+ };
2399
+ Object.defineProperty(self.config, "minTime", {
2400
+ get: function() {
2401
+ return self.config._minTime;
2402
+ },
2403
+ set: minMaxTimeSetter("min")
2404
+ });
2405
+ Object.defineProperty(self.config, "maxTime", {
2406
+ get: function() {
2407
+ return self.config._maxTime;
2408
+ },
2409
+ set: minMaxTimeSetter("max")
2410
+ });
2411
+ if (userConfig.mode === "time") {
2412
+ self.config.noCalendar = true;
2413
+ self.config.enableTime = true;
2414
+ }
2415
+ Object.assign(self.config, formats2, userConfig);
2416
+ for (var i4 = 0; i4 < boolOpts.length; i4++)
2417
+ self.config[boolOpts[i4]] = self.config[boolOpts[i4]] === true || self.config[boolOpts[i4]] === "true";
2418
+ HOOKS.filter(function(hook) {
2419
+ return self.config[hook] !== void 0;
2420
+ }).forEach(function(hook) {
2421
+ self.config[hook] = arrayify(self.config[hook] || []).map(bindToInstance);
2422
+ });
2423
+ self.isMobile = !self.config.disableMobile && !self.config.inline && self.config.mode === "single" && !self.config.disable.length && !self.config.enable && !self.config.weekNumbers && /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
2424
+ for (var i4 = 0; i4 < self.config.plugins.length; i4++) {
2425
+ var pluginConf = self.config.plugins[i4](self) || {};
2426
+ for (var key in pluginConf) {
2427
+ if (HOOKS.indexOf(key) > -1) {
2428
+ self.config[key] = arrayify(pluginConf[key]).map(bindToInstance).concat(self.config[key]);
2429
+ } else if (typeof userConfig[key] === "undefined")
2430
+ self.config[key] = pluginConf[key];
2431
+ }
2432
+ }
2433
+ if (!userConfig.altInputClass) {
2434
+ self.config.altInputClass = getInputElem().className + " " + self.config.altInputClass;
2435
+ }
2436
+ triggerEvent("onParseConfig");
2437
+ }
2438
+ function getInputElem() {
2439
+ return self.config.wrap ? element.querySelector("[data-input]") : element;
2440
+ }
2441
+ function setupLocale() {
2442
+ if (typeof self.config.locale !== "object" && typeof flatpickr2.l10ns[self.config.locale] === "undefined")
2443
+ self.config.errorHandler(new Error("flatpickr: invalid locale " + self.config.locale));
2444
+ self.l10n = __assign(__assign({}, flatpickr2.l10ns.default), typeof self.config.locale === "object" ? self.config.locale : self.config.locale !== "default" ? flatpickr2.l10ns[self.config.locale] : void 0);
2445
+ tokenRegex.D = "(" + self.l10n.weekdays.shorthand.join("|") + ")";
2446
+ tokenRegex.l = "(" + self.l10n.weekdays.longhand.join("|") + ")";
2447
+ tokenRegex.M = "(" + self.l10n.months.shorthand.join("|") + ")";
2448
+ tokenRegex.F = "(" + self.l10n.months.longhand.join("|") + ")";
2449
+ tokenRegex.K = "(" + self.l10n.amPM[0] + "|" + self.l10n.amPM[1] + "|" + self.l10n.amPM[0].toLowerCase() + "|" + self.l10n.amPM[1].toLowerCase() + ")";
2450
+ var userConfig = __assign(__assign({}, instanceConfig), JSON.parse(JSON.stringify(element.dataset || {})));
2451
+ if (userConfig.time_24hr === void 0 && flatpickr2.defaultConfig.time_24hr === void 0) {
2452
+ self.config.time_24hr = self.l10n.time_24hr;
2453
+ }
2454
+ self.formatDate = createDateFormatter(self);
2455
+ self.parseDate = createDateParser({ config: self.config, l10n: self.l10n });
2456
+ }
2457
+ function positionCalendar(customPositionElement) {
2458
+ if (typeof self.config.position === "function") {
2459
+ return void self.config.position(self, customPositionElement);
2460
+ }
2461
+ if (self.calendarContainer === void 0)
2462
+ return;
2463
+ triggerEvent("onPreCalendarPosition");
2464
+ var positionElement = customPositionElement || self._positionElement;
2465
+ var calendarHeight = Array.prototype.reduce.call(self.calendarContainer.children, function(acc, child) {
2466
+ return acc + child.offsetHeight;
2467
+ }, 0), calendarWidth = self.calendarContainer.offsetWidth, configPos = self.config.position.split(" "), configPosVertical = configPos[0], configPosHorizontal = configPos.length > 1 ? configPos[1] : null, inputBounds = positionElement.getBoundingClientRect(), distanceFromBottom = window.innerHeight - inputBounds.bottom, showOnTop = configPosVertical === "above" || configPosVertical !== "below" && distanceFromBottom < calendarHeight && inputBounds.top > calendarHeight;
2468
+ var top = window.pageYOffset + inputBounds.top + (!showOnTop ? positionElement.offsetHeight + 2 : -calendarHeight - 2);
2469
+ toggleClass(self.calendarContainer, "arrowTop", !showOnTop);
2470
+ toggleClass(self.calendarContainer, "arrowBottom", showOnTop);
2471
+ if (self.config.inline)
2472
+ return;
2473
+ var left = window.pageXOffset + inputBounds.left;
2474
+ var isCenter = false;
2475
+ var isRight = false;
2476
+ if (configPosHorizontal === "center") {
2477
+ left -= (calendarWidth - inputBounds.width) / 2;
2478
+ isCenter = true;
2479
+ } else if (configPosHorizontal === "right") {
2480
+ left -= calendarWidth - inputBounds.width;
2481
+ isRight = true;
2482
+ }
2483
+ toggleClass(self.calendarContainer, "arrowLeft", !isCenter && !isRight);
2484
+ toggleClass(self.calendarContainer, "arrowCenter", isCenter);
2485
+ toggleClass(self.calendarContainer, "arrowRight", isRight);
2486
+ var right = window.document.body.offsetWidth - (window.pageXOffset + inputBounds.right);
2487
+ var rightMost = left + calendarWidth > window.document.body.offsetWidth;
2488
+ var centerMost = right + calendarWidth > window.document.body.offsetWidth;
2489
+ toggleClass(self.calendarContainer, "rightMost", rightMost);
2490
+ if (self.config.static)
2491
+ return;
2492
+ self.calendarContainer.style.top = top + "px";
2493
+ if (!rightMost) {
2494
+ self.calendarContainer.style.left = left + "px";
2495
+ self.calendarContainer.style.right = "auto";
2496
+ } else if (!centerMost) {
2497
+ self.calendarContainer.style.left = "auto";
2498
+ self.calendarContainer.style.right = right + "px";
2499
+ } else {
2500
+ var doc = getDocumentStyleSheet();
2501
+ if (doc === void 0)
2502
+ return;
2503
+ var bodyWidth = window.document.body.offsetWidth;
2504
+ var centerLeft = Math.max(0, bodyWidth / 2 - calendarWidth / 2);
2505
+ var centerBefore = ".flatpickr-calendar.centerMost:before";
2506
+ var centerAfter = ".flatpickr-calendar.centerMost:after";
2507
+ var centerIndex = doc.cssRules.length;
2508
+ var centerStyle = "{left:" + inputBounds.left + "px;right:auto;}";
2509
+ toggleClass(self.calendarContainer, "rightMost", false);
2510
+ toggleClass(self.calendarContainer, "centerMost", true);
2511
+ doc.insertRule(centerBefore + "," + centerAfter + centerStyle, centerIndex);
2512
+ self.calendarContainer.style.left = centerLeft + "px";
2513
+ self.calendarContainer.style.right = "auto";
2514
+ }
2515
+ }
2516
+ function getDocumentStyleSheet() {
2517
+ var editableSheet = null;
2518
+ for (var i4 = 0; i4 < document.styleSheets.length; i4++) {
2519
+ var sheet = document.styleSheets[i4];
2520
+ if (!sheet.cssRules)
2521
+ continue;
2522
+ try {
2523
+ sheet.cssRules;
2524
+ } catch (err) {
2525
+ continue;
2526
+ }
2527
+ editableSheet = sheet;
2528
+ break;
2529
+ }
2530
+ return editableSheet != null ? editableSheet : createStyleSheet();
2531
+ }
2532
+ function createStyleSheet() {
2533
+ var style = document.createElement("style");
2534
+ document.head.appendChild(style);
2535
+ return style.sheet;
2536
+ }
2537
+ function redraw() {
2538
+ if (self.config.noCalendar || self.isMobile)
2539
+ return;
2540
+ buildMonthSwitch();
2541
+ updateNavigationCurrentMonth();
2542
+ buildDays();
2543
+ }
2544
+ function focusAndClose() {
2545
+ self._input.focus();
2546
+ if (window.navigator.userAgent.indexOf("MSIE") !== -1 || navigator.msMaxTouchPoints !== void 0) {
2547
+ setTimeout(self.close, 0);
2548
+ } else {
2549
+ self.close();
2550
+ }
2551
+ }
2552
+ function selectDate(e8) {
2553
+ e8.preventDefault();
2554
+ e8.stopPropagation();
2555
+ var isSelectable = function(day) {
2556
+ return day.classList && day.classList.contains("flatpickr-day") && !day.classList.contains("flatpickr-disabled") && !day.classList.contains("notAllowed");
2557
+ };
2558
+ var t3 = findParent(getEventTarget(e8), isSelectable);
2559
+ if (t3 === void 0)
2560
+ return;
2561
+ var target = t3;
2562
+ var selectedDate = self.latestSelectedDateObj = new Date(target.dateObj.getTime());
2563
+ var shouldChangeMonth = (selectedDate.getMonth() < self.currentMonth || selectedDate.getMonth() > self.currentMonth + self.config.showMonths - 1) && self.config.mode !== "range";
2564
+ self.selectedDateElem = target;
2565
+ if (self.config.mode === "single")
2566
+ self.selectedDates = [selectedDate];
2567
+ else if (self.config.mode === "multiple") {
2568
+ var selectedIndex = isDateSelected(selectedDate);
2569
+ if (selectedIndex)
2570
+ self.selectedDates.splice(parseInt(selectedIndex), 1);
2571
+ else
2572
+ self.selectedDates.push(selectedDate);
2573
+ } else if (self.config.mode === "range") {
2574
+ if (self.selectedDates.length === 2) {
2575
+ self.clear(false, false);
2576
+ }
2577
+ self.latestSelectedDateObj = selectedDate;
2578
+ self.selectedDates.push(selectedDate);
2579
+ if (compareDates(selectedDate, self.selectedDates[0], true) !== 0)
2580
+ self.selectedDates.sort(function(a3, b2) {
2581
+ return a3.getTime() - b2.getTime();
2582
+ });
2583
+ }
2584
+ setHoursFromInputs();
2585
+ if (shouldChangeMonth) {
2586
+ var isNewYear = self.currentYear !== selectedDate.getFullYear();
2587
+ self.currentYear = selectedDate.getFullYear();
2588
+ self.currentMonth = selectedDate.getMonth();
2589
+ if (isNewYear) {
2590
+ triggerEvent("onYearChange");
2591
+ buildMonthSwitch();
2592
+ }
2593
+ triggerEvent("onMonthChange");
2594
+ }
2595
+ updateNavigationCurrentMonth();
2596
+ buildDays();
2597
+ updateValue();
2598
+ if (!shouldChangeMonth && self.config.mode !== "range" && self.config.showMonths === 1)
2599
+ focusOnDayElem(target);
2600
+ else if (self.selectedDateElem !== void 0 && self.hourElement === void 0) {
2601
+ self.selectedDateElem && self.selectedDateElem.focus();
2602
+ }
2603
+ if (self.hourElement !== void 0)
2604
+ self.hourElement !== void 0 && self.hourElement.focus();
2605
+ if (self.config.closeOnSelect) {
2606
+ var single = self.config.mode === "single" && !self.config.enableTime;
2607
+ var range = self.config.mode === "range" && self.selectedDates.length === 2 && !self.config.enableTime;
2608
+ if (single || range) {
2609
+ focusAndClose();
2610
+ }
2611
+ }
2612
+ triggerChange();
2613
+ }
2614
+ var CALLBACKS = {
2615
+ locale: [setupLocale, updateWeekdays],
2616
+ showMonths: [buildMonths, setCalendarWidth, buildWeekdays],
2617
+ minDate: [jumpToDate],
2618
+ maxDate: [jumpToDate],
2619
+ positionElement: [updatePositionElement],
2620
+ clickOpens: [
2621
+ function() {
2622
+ if (self.config.clickOpens === true) {
2623
+ bind(self._input, "focus", self.open);
2624
+ bind(self._input, "click", self.open);
2625
+ } else {
2626
+ self._input.removeEventListener("focus", self.open);
2627
+ self._input.removeEventListener("click", self.open);
2628
+ }
2629
+ }
2630
+ ]
2631
+ };
2632
+ function set(option, value) {
2633
+ if (option !== null && typeof option === "object") {
2634
+ Object.assign(self.config, option);
2635
+ for (var key in option) {
2636
+ if (CALLBACKS[key] !== void 0)
2637
+ CALLBACKS[key].forEach(function(x3) {
2638
+ return x3();
2639
+ });
2640
+ }
2641
+ } else {
2642
+ self.config[option] = value;
2643
+ if (CALLBACKS[option] !== void 0)
2644
+ CALLBACKS[option].forEach(function(x3) {
2645
+ return x3();
2646
+ });
2647
+ else if (HOOKS.indexOf(option) > -1)
2648
+ self.config[option] = arrayify(value);
2649
+ }
2650
+ self.redraw();
2651
+ updateValue(true);
2652
+ }
2653
+ function setSelectedDate(inputDate, format) {
2654
+ var dates = [];
2655
+ if (inputDate instanceof Array)
2656
+ dates = inputDate.map(function(d3) {
2657
+ return self.parseDate(d3, format);
2658
+ });
2659
+ else if (inputDate instanceof Date || typeof inputDate === "number")
2660
+ dates = [self.parseDate(inputDate, format)];
2661
+ else if (typeof inputDate === "string") {
2662
+ switch (self.config.mode) {
2663
+ case "single":
2664
+ case "time":
2665
+ dates = [self.parseDate(inputDate, format)];
2666
+ break;
2667
+ case "multiple":
2668
+ dates = inputDate.split(self.config.conjunction).map(function(date) {
2669
+ return self.parseDate(date, format);
2670
+ });
2671
+ break;
2672
+ case "range":
2673
+ dates = inputDate.split(self.l10n.rangeSeparator).map(function(date) {
2674
+ return self.parseDate(date, format);
2675
+ });
2676
+ break;
2677
+ default:
2678
+ break;
2679
+ }
2680
+ } else
2681
+ self.config.errorHandler(new Error("Invalid date supplied: " + JSON.stringify(inputDate)));
2682
+ self.selectedDates = self.config.allowInvalidPreload ? dates : dates.filter(function(d3) {
2683
+ return d3 instanceof Date && isEnabled(d3, false);
2684
+ });
2685
+ if (self.config.mode === "range")
2686
+ self.selectedDates.sort(function(a3, b2) {
2687
+ return a3.getTime() - b2.getTime();
2688
+ });
2689
+ }
2690
+ function setDate(date, triggerChange2, format) {
2691
+ if (triggerChange2 === void 0) {
2692
+ triggerChange2 = false;
2693
+ }
2694
+ if (format === void 0) {
2695
+ format = self.config.dateFormat;
2696
+ }
2697
+ if (date !== 0 && !date || date instanceof Array && date.length === 0)
2698
+ return self.clear(triggerChange2);
2699
+ setSelectedDate(date, format);
2700
+ self.latestSelectedDateObj = self.selectedDates[self.selectedDates.length - 1];
2701
+ self.redraw();
2702
+ jumpToDate(void 0, triggerChange2);
2703
+ setHoursFromDate();
2704
+ if (self.selectedDates.length === 0) {
2705
+ self.clear(false);
2706
+ }
2707
+ updateValue(triggerChange2);
2708
+ if (triggerChange2)
2709
+ triggerEvent("onChange");
2710
+ }
2711
+ function parseDateRules(arr) {
2712
+ return arr.slice().map(function(rule) {
2713
+ if (typeof rule === "string" || typeof rule === "number" || rule instanceof Date) {
2714
+ return self.parseDate(rule, void 0, true);
2715
+ } else if (rule && typeof rule === "object" && rule.from && rule.to)
2716
+ return {
2717
+ from: self.parseDate(rule.from, void 0),
2718
+ to: self.parseDate(rule.to, void 0)
2719
+ };
2720
+ return rule;
2721
+ }).filter(function(x3) {
2722
+ return x3;
2723
+ });
2724
+ }
2725
+ function setupDates() {
2726
+ self.selectedDates = [];
2727
+ self.now = self.parseDate(self.config.now) || /* @__PURE__ */ new Date();
2728
+ var preloadedDate = self.config.defaultDate || ((self.input.nodeName === "INPUT" || self.input.nodeName === "TEXTAREA") && self.input.placeholder && self.input.value === self.input.placeholder ? null : self.input.value);
2729
+ if (preloadedDate)
2730
+ setSelectedDate(preloadedDate, self.config.dateFormat);
2731
+ self._initialDate = self.selectedDates.length > 0 ? self.selectedDates[0] : self.config.minDate && self.config.minDate.getTime() > self.now.getTime() ? self.config.minDate : self.config.maxDate && self.config.maxDate.getTime() < self.now.getTime() ? self.config.maxDate : self.now;
2732
+ self.currentYear = self._initialDate.getFullYear();
2733
+ self.currentMonth = self._initialDate.getMonth();
2734
+ if (self.selectedDates.length > 0)
2735
+ self.latestSelectedDateObj = self.selectedDates[0];
2736
+ if (self.config.minTime !== void 0)
2737
+ self.config.minTime = self.parseDate(self.config.minTime, "H:i");
2738
+ if (self.config.maxTime !== void 0)
2739
+ self.config.maxTime = self.parseDate(self.config.maxTime, "H:i");
2740
+ self.minDateHasTime = !!self.config.minDate && (self.config.minDate.getHours() > 0 || self.config.minDate.getMinutes() > 0 || self.config.minDate.getSeconds() > 0);
2741
+ self.maxDateHasTime = !!self.config.maxDate && (self.config.maxDate.getHours() > 0 || self.config.maxDate.getMinutes() > 0 || self.config.maxDate.getSeconds() > 0);
2742
+ }
2743
+ function setupInputs() {
2744
+ self.input = getInputElem();
2745
+ if (!self.input) {
2746
+ self.config.errorHandler(new Error("Invalid input element specified"));
2747
+ return;
2748
+ }
2749
+ self.input._type = self.input.type;
2750
+ self.input.type = "text";
2751
+ self.input.classList.add("flatpickr-input");
2752
+ self._input = self.input;
2753
+ if (self.config.altInput) {
2754
+ self.altInput = createElement(self.input.nodeName, self.config.altInputClass);
2755
+ self._input = self.altInput;
2756
+ self.altInput.placeholder = self.input.placeholder;
2757
+ self.altInput.disabled = self.input.disabled;
2758
+ self.altInput.required = self.input.required;
2759
+ self.altInput.tabIndex = self.input.tabIndex;
2760
+ self.altInput.type = "text";
2761
+ self.input.setAttribute("type", "hidden");
2762
+ if (!self.config.static && self.input.parentNode)
2763
+ self.input.parentNode.insertBefore(self.altInput, self.input.nextSibling);
2764
+ }
2765
+ if (!self.config.allowInput)
2766
+ self._input.setAttribute("readonly", "readonly");
2767
+ updatePositionElement();
2768
+ }
2769
+ function updatePositionElement() {
2770
+ self._positionElement = self.config.positionElement || self._input;
2771
+ }
2772
+ function setupMobile() {
2773
+ var inputType = self.config.enableTime ? self.config.noCalendar ? "time" : "datetime-local" : "date";
2774
+ self.mobileInput = createElement("input", self.input.className + " flatpickr-mobile");
2775
+ self.mobileInput.tabIndex = 1;
2776
+ self.mobileInput.type = inputType;
2777
+ self.mobileInput.disabled = self.input.disabled;
2778
+ self.mobileInput.required = self.input.required;
2779
+ self.mobileInput.placeholder = self.input.placeholder;
2780
+ self.mobileFormatStr = inputType === "datetime-local" ? "Y-m-d\\TH:i:S" : inputType === "date" ? "Y-m-d" : "H:i:S";
2781
+ if (self.selectedDates.length > 0) {
2782
+ self.mobileInput.defaultValue = self.mobileInput.value = self.formatDate(self.selectedDates[0], self.mobileFormatStr);
2783
+ }
2784
+ if (self.config.minDate)
2785
+ self.mobileInput.min = self.formatDate(self.config.minDate, "Y-m-d");
2786
+ if (self.config.maxDate)
2787
+ self.mobileInput.max = self.formatDate(self.config.maxDate, "Y-m-d");
2788
+ if (self.input.getAttribute("step"))
2789
+ self.mobileInput.step = String(self.input.getAttribute("step"));
2790
+ self.input.type = "hidden";
2791
+ if (self.altInput !== void 0)
2792
+ self.altInput.type = "hidden";
2793
+ try {
2794
+ if (self.input.parentNode)
2795
+ self.input.parentNode.insertBefore(self.mobileInput, self.input.nextSibling);
2796
+ } catch (_a) {
2797
+ }
2798
+ bind(self.mobileInput, "change", function(e8) {
2799
+ self.setDate(getEventTarget(e8).value, false, self.mobileFormatStr);
2800
+ triggerEvent("onChange");
2801
+ triggerEvent("onClose");
2802
+ });
2803
+ }
2804
+ function toggle(e8) {
2805
+ if (self.isOpen === true)
2806
+ return self.close();
2807
+ self.open(e8);
2808
+ }
2809
+ function triggerEvent(event, data) {
2810
+ if (self.config === void 0)
2811
+ return;
2812
+ var hooks = self.config[event];
2813
+ if (hooks !== void 0 && hooks.length > 0) {
2814
+ for (var i4 = 0; hooks[i4] && i4 < hooks.length; i4++)
2815
+ hooks[i4](self.selectedDates, self.input.value, self, data);
2816
+ }
2817
+ if (event === "onChange") {
2818
+ self.input.dispatchEvent(createEvent("change"));
2819
+ self.input.dispatchEvent(createEvent("input"));
2820
+ }
2821
+ }
2822
+ function createEvent(name) {
2823
+ var e8 = document.createEvent("Event");
2824
+ e8.initEvent(name, true, true);
2825
+ return e8;
2826
+ }
2827
+ function isDateSelected(date) {
2828
+ for (var i4 = 0; i4 < self.selectedDates.length; i4++) {
2829
+ var selectedDate = self.selectedDates[i4];
2830
+ if (selectedDate instanceof Date && compareDates(selectedDate, date) === 0)
2831
+ return "" + i4;
2832
+ }
2833
+ return false;
2834
+ }
2835
+ function isDateInRange(date) {
2836
+ if (self.config.mode !== "range" || self.selectedDates.length < 2)
2837
+ return false;
2838
+ return compareDates(date, self.selectedDates[0]) >= 0 && compareDates(date, self.selectedDates[1]) <= 0;
2839
+ }
2840
+ function updateNavigationCurrentMonth() {
2841
+ if (self.config.noCalendar || self.isMobile || !self.monthNav)
2842
+ return;
2843
+ self.yearElements.forEach(function(yearElement, i4) {
2844
+ var d3 = new Date(self.currentYear, self.currentMonth, 1);
2845
+ d3.setMonth(self.currentMonth + i4);
2846
+ if (self.config.showMonths > 1 || self.config.monthSelectorType === "static") {
2847
+ self.monthElements[i4].textContent = monthToStr(d3.getMonth(), self.config.shorthandCurrentMonth, self.l10n) + " ";
2848
+ } else {
2849
+ self.monthsDropdownContainer.value = d3.getMonth().toString();
2850
+ }
2851
+ yearElement.value = d3.getFullYear().toString();
2852
+ });
2853
+ self._hidePrevMonthArrow = self.config.minDate !== void 0 && (self.currentYear === self.config.minDate.getFullYear() ? self.currentMonth <= self.config.minDate.getMonth() : self.currentYear < self.config.minDate.getFullYear());
2854
+ self._hideNextMonthArrow = self.config.maxDate !== void 0 && (self.currentYear === self.config.maxDate.getFullYear() ? self.currentMonth + 1 > self.config.maxDate.getMonth() : self.currentYear > self.config.maxDate.getFullYear());
2855
+ }
2856
+ function getDateStr(specificFormat) {
2857
+ var format = specificFormat || (self.config.altInput ? self.config.altFormat : self.config.dateFormat);
2858
+ return self.selectedDates.map(function(dObj) {
2859
+ return self.formatDate(dObj, format);
2860
+ }).filter(function(d3, i4, arr) {
2861
+ return self.config.mode !== "range" || self.config.enableTime || arr.indexOf(d3) === i4;
2862
+ }).join(self.config.mode !== "range" ? self.config.conjunction : self.l10n.rangeSeparator);
2863
+ }
2864
+ function updateValue(triggerChange2) {
2865
+ if (triggerChange2 === void 0) {
2866
+ triggerChange2 = true;
2867
+ }
2868
+ if (self.mobileInput !== void 0 && self.mobileFormatStr) {
2869
+ self.mobileInput.value = self.latestSelectedDateObj !== void 0 ? self.formatDate(self.latestSelectedDateObj, self.mobileFormatStr) : "";
2870
+ }
2871
+ self.input.value = getDateStr(self.config.dateFormat);
2872
+ if (self.altInput !== void 0) {
2873
+ self.altInput.value = getDateStr(self.config.altFormat);
2874
+ }
2875
+ if (triggerChange2 !== false)
2876
+ triggerEvent("onValueUpdate");
2877
+ }
2878
+ function onMonthNavClick(e8) {
2879
+ var eventTarget = getEventTarget(e8);
2880
+ var isPrevMonth = self.prevMonthNav.contains(eventTarget);
2881
+ var isNextMonth = self.nextMonthNav.contains(eventTarget);
2882
+ if (isPrevMonth || isNextMonth) {
2883
+ changeMonth(isPrevMonth ? -1 : 1);
2884
+ } else if (self.yearElements.indexOf(eventTarget) >= 0) {
2885
+ eventTarget.select();
2886
+ } else if (eventTarget.classList.contains("arrowUp")) {
2887
+ self.changeYear(self.currentYear + 1);
2888
+ } else if (eventTarget.classList.contains("arrowDown")) {
2889
+ self.changeYear(self.currentYear - 1);
2890
+ }
2891
+ }
2892
+ function timeWrapper(e8) {
2893
+ e8.preventDefault();
2894
+ var isKeyDown = e8.type === "keydown", eventTarget = getEventTarget(e8), input = eventTarget;
2895
+ if (self.amPM !== void 0 && eventTarget === self.amPM) {
2896
+ self.amPM.textContent = self.l10n.amPM[int(self.amPM.textContent === self.l10n.amPM[0])];
2897
+ }
2898
+ var min = parseFloat(input.getAttribute("min")), max = parseFloat(input.getAttribute("max")), step = parseFloat(input.getAttribute("step")), curValue = parseInt(input.value, 10), delta = e8.delta || (isKeyDown ? e8.which === 38 ? 1 : -1 : 0);
2899
+ var newValue = curValue + step * delta;
2900
+ if (typeof input.value !== "undefined" && input.value.length === 2) {
2901
+ var isHourElem = input === self.hourElement, isMinuteElem = input === self.minuteElement;
2902
+ if (newValue < min) {
2903
+ newValue = max + newValue + int(!isHourElem) + (int(isHourElem) && int(!self.amPM));
2904
+ if (isMinuteElem)
2905
+ incrementNumInput(void 0, -1, self.hourElement);
2906
+ } else if (newValue > max) {
2907
+ newValue = input === self.hourElement ? newValue - max - int(!self.amPM) : min;
2908
+ if (isMinuteElem)
2909
+ incrementNumInput(void 0, 1, self.hourElement);
2910
+ }
2911
+ if (self.amPM && isHourElem && (step === 1 ? newValue + curValue === 23 : Math.abs(newValue - curValue) > step)) {
2912
+ self.amPM.textContent = self.l10n.amPM[int(self.amPM.textContent === self.l10n.amPM[0])];
2913
+ }
2914
+ input.value = pad(newValue);
2915
+ }
2916
+ }
2917
+ init();
2918
+ return self;
2919
+ }
2920
+ function _flatpickr(nodeList, config) {
2921
+ var nodes = Array.prototype.slice.call(nodeList).filter(function(x3) {
2922
+ return x3 instanceof HTMLElement;
2923
+ });
2924
+ var instances = [];
2925
+ for (var i4 = 0; i4 < nodes.length; i4++) {
2926
+ var node = nodes[i4];
2927
+ try {
2928
+ if (node.getAttribute("data-fp-omit") !== null)
2929
+ continue;
2930
+ if (node._flatpickr !== void 0) {
2931
+ node._flatpickr.destroy();
2932
+ node._flatpickr = void 0;
2933
+ }
2934
+ node._flatpickr = FlatpickrInstance(node, config || {});
2935
+ instances.push(node._flatpickr);
2936
+ } catch (e8) {
2937
+ console.error(e8);
2938
+ }
2939
+ }
2940
+ return instances.length === 1 ? instances[0] : instances;
2941
+ }
2942
+ if (typeof HTMLElement !== "undefined" && typeof HTMLCollection !== "undefined" && typeof NodeList !== "undefined") {
2943
+ HTMLCollection.prototype.flatpickr = NodeList.prototype.flatpickr = function(config) {
2944
+ return _flatpickr(this, config);
2945
+ };
2946
+ HTMLElement.prototype.flatpickr = function(config) {
2947
+ return _flatpickr([this], config);
2948
+ };
2949
+ }
2950
+ var flatpickr2 = function(selector, config) {
2951
+ if (typeof selector === "string") {
2952
+ return _flatpickr(window.document.querySelectorAll(selector), config);
2953
+ } else if (selector instanceof Node) {
2954
+ return _flatpickr([selector], config);
2955
+ } else {
2956
+ return _flatpickr(selector, config);
2957
+ }
2958
+ };
2959
+ flatpickr2.defaultConfig = {};
2960
+ flatpickr2.l10ns = {
2961
+ en: __assign({}, default_default),
2962
+ default: __assign({}, default_default)
2963
+ };
2964
+ flatpickr2.localize = function(l10n) {
2965
+ flatpickr2.l10ns.default = __assign(__assign({}, flatpickr2.l10ns.default), l10n);
2966
+ };
2967
+ flatpickr2.setDefaults = function(config) {
2968
+ flatpickr2.defaultConfig = __assign(__assign({}, flatpickr2.defaultConfig), config);
2969
+ };
2970
+ flatpickr2.parseDate = createDateParser({});
2971
+ flatpickr2.formatDate = createDateFormatter({});
2972
+ flatpickr2.compareDates = compareDates;
2973
+ if (typeof jQuery !== "undefined" && typeof jQuery.fn !== "undefined") {
2974
+ jQuery.fn.flatpickr = function(config) {
2975
+ return _flatpickr(this, config);
2976
+ };
2977
+ }
2978
+ Date.prototype.fp_incr = function(days) {
2979
+ return new Date(this.getFullYear(), this.getMonth(), this.getDate() + (typeof days === "string" ? parseInt(days, 10) : days));
2980
+ };
2981
+ if (typeof window !== "undefined") {
2982
+ window.flatpickr = flatpickr2;
2983
+ }
2984
+
2985
+ // node_modules/lit-flatpickr/dist/src/CdnManager.js
2986
+ var FLATPICKR_VERSION = window._FLATPICKR_VERSION || "4.6.13";
2987
+ var CDN_BASE = `https://unpkg.com/flatpickr@${FLATPICKR_VERSION}/dist/`;
2988
+ function getCDNBase() {
2989
+ return CDN_BASE;
2990
+ }
2991
+
2992
+ // node_modules/lit-flatpickr/dist/src/styles/Themes.js
2993
+ var FlatpickrTheme;
2994
+ (function(FlatpickrTheme2) {
2995
+ FlatpickrTheme2["light"] = "light";
2996
+ FlatpickrTheme2["dark"] = "dark";
2997
+ FlatpickrTheme2["materialBlue"] = "material_blue";
2998
+ FlatpickrTheme2["materialGreen"] = "material_green";
2999
+ FlatpickrTheme2["materialOrange"] = "material_orange";
3000
+ FlatpickrTheme2["materialRed"] = "material_red";
3001
+ FlatpickrTheme2["airbnb"] = "airbnb";
3002
+ FlatpickrTheme2["confetti"] = "confetti";
3003
+ FlatpickrTheme2["none"] = "none";
3004
+ })(FlatpickrTheme || (FlatpickrTheme = {}));
3005
+ function getStyleRepository(theme) {
3006
+ return `${getCDNBase()}themes/${theme}.css`;
3007
+ }
3008
+
3009
+ // node_modules/lit-flatpickr/dist/src/StyleLoader.js
3010
+ var StyleLoader = class {
3011
+ constructor(theme) {
3012
+ this.theme = theme;
3013
+ this.theme = theme;
3014
+ }
3015
+ async initStyles() {
3016
+ const themeUrl = getStyleRepository(this.theme);
3017
+ const themeIsLoaded = this.isThemeLoaded();
3018
+ if (!themeIsLoaded) {
3019
+ this.appendThemeStyles(themeUrl);
3020
+ await this.waitForStyleToLoad(() => this.isThemeLoaded());
3021
+ }
3022
+ }
3023
+ /**
3024
+ * We want to prevent the styles from flickering, so we halt the
3025
+ * initialization process until the styles have been loaded
3026
+ * */
3027
+ waitForStyleToLoad(checkFunction) {
3028
+ return new Promise((resolve, reject) => {
3029
+ const checkIfStylesHaveLoaded = (iteration = 0) => {
3030
+ if (checkFunction())
3031
+ return resolve();
3032
+ if (iteration > 10) {
3033
+ throw Error("Styles took too long to load, or were not able to be loaded");
3034
+ reject();
3035
+ }
3036
+ setTimeout(() => checkIfStylesHaveLoaded(iteration++), 100);
3037
+ };
3038
+ checkIfStylesHaveLoaded();
3039
+ });
3040
+ }
3041
+ isThemeLoaded() {
3042
+ if (this.theme === FlatpickrTheme.none)
3043
+ return true;
3044
+ const styleSheetSources = Array.from(document.styleSheets).map((ss) => ss.href);
3045
+ return styleSheetSources.some((sss) => sss != null && new RegExp(getCDNBase() + "themes").test(sss));
3046
+ }
3047
+ appendThemeStyles(themeUrl) {
3048
+ const styleElem = document.createElement("link");
3049
+ styleElem.rel = "stylesheet";
3050
+ styleElem.type = "text/css";
3051
+ styleElem.href = themeUrl;
3052
+ document.head.append(styleElem);
3053
+ }
3054
+ };
3055
+
3056
+ // node_modules/lit-flatpickr/dist/src/LocaleLoader.js
3057
+ async function loadLocale(locale) {
3058
+ const themeUrl = getCDNBase() + "l10n/" + locale + ".js";
3059
+ const themeData = await import(themeUrl);
3060
+ }
3061
+
3062
+ // node_modules/lit-flatpickr/dist/src/plugins/PluginLoader.js
3063
+ async function loadPlugins(instance, options) {
3064
+ if (instance.weekSelect) {
3065
+ const weekSelectPluginImport = await import(getCDNBase() + "esm/plugins/weekSelect/weekSelect.js");
3066
+ const weekSelectPlugin = weekSelectPluginImport.default;
3067
+ options = __spreadProps(__spreadValues({}, options), {
3068
+ plugins: [...options.plugins, weekSelectPlugin()],
3069
+ onChange: function() {
3070
+ const weekNumber = this.selectedDates[0] ? this.config.getWeek(this.selectedDates[0]) : null;
3071
+ this.input.value = weekNumber;
3072
+ }
3073
+ });
3074
+ }
3075
+ if (instance.monthSelect) {
3076
+ const monthSelectPluginImport = await import(getCDNBase() + "esm/plugins/monthSelect/index.js");
3077
+ const monthSelectPlugin = monthSelectPluginImport.default;
3078
+ options = __spreadProps(__spreadValues({}, options), {
3079
+ plugins: [
3080
+ ...options.plugins,
3081
+ monthSelectPlugin({
3082
+ shorthand: false,
3083
+ dateFormat: instance.dateFormat,
3084
+ altFormat: instance.altFormat
3085
+ })
3086
+ ]
3087
+ });
3088
+ const styles = document.createElement("link");
3089
+ styles.rel = "stylesheet";
3090
+ styles.href = getCDNBase() + "plugins/monthSelect/style.css";
3091
+ document.head.appendChild(styles);
3092
+ }
3093
+ return options;
3094
+ }
3095
+
3096
+ // node_modules/lit-flatpickr/dist/src/LitFlatpickr.js
3097
+ var LitFlatpickr = class LitFlatpickr2 extends s4 {
3098
+ constructor() {
3099
+ super(...arguments);
3100
+ this.placeholder = "";
3101
+ this.altFormat = "F j, Y";
3102
+ this.altInput = false;
3103
+ this.altInputClass = "";
3104
+ this.allowInput = false;
3105
+ this.ariaDateFormat = "F j, Y";
3106
+ this.clickOpens = true;
3107
+ this.dateFormat = "Y-m-d";
3108
+ this.defaultHour = 12;
3109
+ this.defaultMinute = 0;
3110
+ this.disable = [];
3111
+ this.disableMobile = false;
3112
+ this.enable = void 0;
3113
+ this.enableTime = false;
3114
+ this.enableSeconds = false;
3115
+ this.hourIncrement = 1;
3116
+ this.minuteIncrement = 5;
3117
+ this.inline = false;
3118
+ this.mode = "single";
3119
+ this.nextArrow = ">";
3120
+ this.prevArrow = "<";
3121
+ this.noCalendar = false;
3122
+ this.position = "auto";
3123
+ this.shorthandCurrentMonth = false;
3124
+ this.showMonths = 1;
3125
+ this.static = false;
3126
+ this.time_24hr = false;
3127
+ this.weekNumbers = false;
3128
+ this.wrap = false;
3129
+ this.theme = "light";
3130
+ this.firstDayOfWeek = 1;
3131
+ this.defaultToToday = false;
3132
+ this.weekSelect = false;
3133
+ this.monthSelect = false;
3134
+ this.confirmDate = false;
3135
+ this._hasSlottedElement = false;
3136
+ }
3137
+ static get styles() {
3138
+ return [
3139
+ i`
3140
+ :host {
3141
+ width: fit-content;
3142
+ display: block;
3143
+ cursor: pointer;
3144
+ background: #fff;
3145
+ color: #000;
3146
+ overflow: hidden;
3147
+ }
3148
+
3149
+ ::slotted(*) {
3150
+ cursor: pointer;
3151
+ }
3152
+
3153
+ input {
3154
+ width: 100%;
3155
+ height: 100%;
3156
+ font-size: inherit;
3157
+ cursor: pointer;
3158
+ background: inherit;
3159
+ box-sizing: border-box;
3160
+ outline: none;
3161
+ color: inherit;
3162
+ border: none;
3163
+ }
3164
+ `
3165
+ ];
3166
+ }
3167
+ firstUpdated() {
3168
+ this._hasSlottedElement = this.checkForSlottedElement();
3169
+ }
3170
+ updated() {
3171
+ this.init();
3172
+ }
3173
+ getToday() {
3174
+ const today = /* @__PURE__ */ new Date();
3175
+ const dateString = `${today.getFullYear()}-${today.getMonth() + 1}-${today.getDate()}`;
3176
+ return dateString;
3177
+ }
3178
+ checkForSlottedElement() {
3179
+ var _a;
3180
+ const slottedElem = (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("slot");
3181
+ const assignedNodes = slottedElem ? slottedElem.assignedNodes().filter(this.removeTextNodes) : [];
3182
+ return slottedElem != null && assignedNodes && assignedNodes.length > 0;
3183
+ }
3184
+ getSlottedElement() {
3185
+ var _a;
3186
+ if (!this._hasSlottedElement) {
3187
+ return void 0;
3188
+ }
3189
+ const slottedElem = (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("slot");
3190
+ const slottedElemNodes = slottedElem === null || slottedElem === void 0 ? void 0 : slottedElem.assignedNodes().filter(this.removeTextNodes);
3191
+ if (!slottedElemNodes || slottedElemNodes.length < 1) {
3192
+ return void 0;
3193
+ }
3194
+ return slottedElemNodes[0];
3195
+ }
3196
+ removeTextNodes(node) {
3197
+ return node.nodeName !== "#text";
3198
+ }
3199
+ async init() {
3200
+ const styleLoader = new StyleLoader(this.theme);
3201
+ await styleLoader.initStyles();
3202
+ if (this.locale) {
3203
+ await loadLocale(this.locale);
3204
+ }
3205
+ await this.initializeComponent();
3206
+ }
3207
+ async getOptions() {
3208
+ let options = {
3209
+ altFormat: this.altFormat,
3210
+ altInput: this.altInput,
3211
+ altInputClass: this.altInputClass,
3212
+ allowInput: this.allowInput,
3213
+ ariaDateFormat: this.ariaDateFormat,
3214
+ clickOpens: this.clickOpens,
3215
+ dateFormat: this.dateFormat,
3216
+ defaultDate: this.defaultToToday ? this.getToday() : this.defaultDate,
3217
+ defaultHour: this.defaultHour,
3218
+ defaultMinute: this.defaultMinute,
3219
+ disable: this.disable,
3220
+ disableMobile: this.disableMobile,
3221
+ enable: this.enable,
3222
+ enableTime: this.enableTime,
3223
+ enableSeconds: this.enableSeconds,
3224
+ formatDate: this.formatDateFn,
3225
+ hourIncrement: this.hourIncrement,
3226
+ inline: this.inline,
3227
+ maxDate: this.maxDate,
3228
+ minDate: this.minDate,
3229
+ minuteIncrement: this.minuteIncrement,
3230
+ mode: this.mode,
3231
+ nextArrow: this.nextArrow,
3232
+ prevArrow: this.prevArrow,
3233
+ noCalendar: this.noCalendar,
3234
+ onChange: this.onChange,
3235
+ onClose: this.onClose,
3236
+ onOpen: this.onOpen,
3237
+ onReady: this.onReady,
3238
+ onMonthChange: this.onMonthChange,
3239
+ onYearChange: this.onYearChange,
3240
+ onValueUpdate: this.onValueUpdate,
3241
+ parseDate: this.parseDateFn,
3242
+ position: this.position,
3243
+ shorthandCurrentMonth: this.shorthandCurrentMonth,
3244
+ showMonths: this.showMonths,
3245
+ static: this.static,
3246
+ // eslint-disable-next-line @typescript-eslint/camelcase
3247
+ time_24hr: this.time_24hr,
3248
+ weekNumbers: this.weekNumbers,
3249
+ wrap: this.wrap,
3250
+ locale: this.locale,
3251
+ plugins: []
3252
+ };
3253
+ options = await loadPlugins(this, options);
3254
+ Object.keys(options).forEach((key) => {
3255
+ if (options[key] === void 0)
3256
+ delete options[key];
3257
+ });
3258
+ return options;
3259
+ }
3260
+ async initializeComponent() {
3261
+ var _a;
3262
+ if (this._instance) {
3263
+ if (Object.prototype.hasOwnProperty.call(this, "destroy")) {
3264
+ this._instance.destroy();
3265
+ }
3266
+ }
3267
+ let inputElement;
3268
+ if (this._hasSlottedElement) {
3269
+ inputElement = this.findInputField();
3270
+ } else {
3271
+ inputElement = (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("input");
3272
+ }
3273
+ if (inputElement) {
3274
+ this._inputElement = inputElement;
3275
+ flatpickr.l10ns.default.firstDayOfWeek = this.firstDayOfWeek;
3276
+ const options = await this.getOptions();
3277
+ this._instance = flatpickr(inputElement, options);
3278
+ }
3279
+ }
3280
+ findInputField() {
3281
+ let inputElement = null;
3282
+ inputElement = this.querySelector("input");
3283
+ if (inputElement) {
3284
+ return inputElement;
3285
+ }
3286
+ const slottedElement = this.getSlottedElement();
3287
+ if (typeof slottedElement !== void 0) {
3288
+ inputElement = this.searchWebComponentForInputElement(slottedElement);
3289
+ }
3290
+ return inputElement ? inputElement : null;
3291
+ }
3292
+ /**
3293
+ * Traverse the shadow dom tree and search for input from it
3294
+ * and it's children
3295
+ * */
3296
+ searchWebComponentForInputElement(element) {
3297
+ let inputElement = this.getInputFieldInElement(element);
3298
+ if (inputElement)
3299
+ return inputElement;
3300
+ const webComponentsInChildren = this.getWebComponentsInsideElement(element);
3301
+ for (let i4 = 0; i4 < webComponentsInChildren.length; i4++) {
3302
+ inputElement = this.searchWebComponentForInputElement(webComponentsInChildren[i4]);
3303
+ if (inputElement) {
3304
+ break;
3305
+ }
3306
+ }
3307
+ return inputElement;
3308
+ }
3309
+ /**
3310
+ * Check if said element's dom tree contains a input element
3311
+ * */
3312
+ getInputFieldInElement(element) {
3313
+ let inputElement = null;
3314
+ if (element.shadowRoot) {
3315
+ inputElement = element.shadowRoot.querySelector("input");
3316
+ } else {
3317
+ inputElement = element.querySelector("input");
3318
+ }
3319
+ return inputElement;
3320
+ }
3321
+ getWebComponentsInsideElement(element) {
3322
+ if (element.shadowRoot) {
3323
+ return [
3324
+ ...Array.from(element.querySelectorAll("*")),
3325
+ ...Array.from(element.shadowRoot.querySelectorAll("*"))
3326
+ ].filter((elem) => elem.shadowRoot);
3327
+ } else {
3328
+ return Array.from(element.querySelectorAll("*")).filter((elem) => elem.shadowRoot);
3329
+ }
3330
+ }
3331
+ changeMonth(monthNum, isOffset = true) {
3332
+ if (!this._instance)
3333
+ return;
3334
+ this._instance.changeMonth(monthNum, isOffset);
3335
+ }
3336
+ clear() {
3337
+ if (!this._instance)
3338
+ return;
3339
+ this._instance.clear();
3340
+ }
3341
+ close() {
3342
+ if (!this._instance)
3343
+ return;
3344
+ this._instance.close();
3345
+ }
3346
+ destroy() {
3347
+ if (!this._instance)
3348
+ return;
3349
+ this._instance.destroy();
3350
+ }
3351
+ formatDate(dateObj, formatStr) {
3352
+ if (!this._instance)
3353
+ return "";
3354
+ return this._instance.formatDate(dateObj, formatStr);
3355
+ }
3356
+ jumpToDate(date, triggerChange) {
3357
+ if (!this._instance)
3358
+ return;
3359
+ this._instance.jumpToDate(date, triggerChange);
3360
+ }
3361
+ open() {
3362
+ if (!this._instance)
3363
+ return;
3364
+ this._instance.open();
3365
+ }
3366
+ parseDate(dateStr, dateFormat) {
3367
+ if (!this._instance)
3368
+ return void 0;
3369
+ return this._instance.parseDate(dateStr, dateFormat);
3370
+ }
3371
+ redraw() {
3372
+ if (!this._instance)
3373
+ return;
3374
+ this._instance.redraw();
3375
+ }
3376
+ /* eslint-disable @typescript-eslint/no-explicit-any */
3377
+ set(option, value) {
3378
+ if (!this._instance)
3379
+ return;
3380
+ this._instance.set(option, value);
3381
+ }
3382
+ setDate(date, triggerChange, dateStrFormat) {
3383
+ if (!this._instance)
3384
+ return;
3385
+ this._instance.setDate(date, triggerChange, dateStrFormat);
3386
+ }
3387
+ toggle() {
3388
+ if (!this._instance)
3389
+ return;
3390
+ }
3391
+ getSelectedDates() {
3392
+ if (!this._instance)
3393
+ return [];
3394
+ return this._instance.selectedDates;
3395
+ }
3396
+ getCurrentYear() {
3397
+ if (!this._instance)
3398
+ return -1;
3399
+ return this._instance.currentYear;
3400
+ }
3401
+ getCurrentMonth() {
3402
+ if (!this._instance)
3403
+ return -1;
3404
+ return this._instance.currentMonth;
3405
+ }
3406
+ getConfig() {
3407
+ if (!this._instance)
3408
+ return {};
3409
+ return this._instance.config;
3410
+ }
3411
+ getValue() {
3412
+ if (!this._inputElement)
3413
+ return "";
3414
+ return this._inputElement.value;
3415
+ }
3416
+ render() {
3417
+ return x2`
3418
+ ${!this._hasSlottedElement ? x2`<input class="lit-flatpickr flatpickr flatpickr-input" placeholder=${this.placeholder} />` : x2``}
3419
+ <slot></slot>
3420
+ `;
3421
+ }
3422
+ };
3423
+ __decorate([
3424
+ n6({ type: String })
3425
+ ], LitFlatpickr.prototype, "placeholder", void 0);
3426
+ __decorate([
3427
+ n6({ type: String })
3428
+ ], LitFlatpickr.prototype, "altFormat", void 0);
3429
+ __decorate([
3430
+ n6({ type: Boolean })
3431
+ ], LitFlatpickr.prototype, "altInput", void 0);
3432
+ __decorate([
3433
+ n6({ type: String })
3434
+ ], LitFlatpickr.prototype, "altInputClass", void 0);
3435
+ __decorate([
3436
+ n6({ type: Boolean })
3437
+ ], LitFlatpickr.prototype, "allowInput", void 0);
3438
+ __decorate([
3439
+ n6({ type: String })
3440
+ ], LitFlatpickr.prototype, "ariaDateFormat", void 0);
3441
+ __decorate([
3442
+ n6({ type: Boolean })
3443
+ ], LitFlatpickr.prototype, "clickOpens", void 0);
3444
+ __decorate([
3445
+ n6({ type: String })
3446
+ ], LitFlatpickr.prototype, "dateFormat", void 0);
3447
+ __decorate([
3448
+ n6({ type: Object })
3449
+ ], LitFlatpickr.prototype, "defaultDate", void 0);
3450
+ __decorate([
3451
+ n6({ type: Number })
3452
+ ], LitFlatpickr.prototype, "defaultHour", void 0);
3453
+ __decorate([
3454
+ n6({ type: Number })
3455
+ ], LitFlatpickr.prototype, "defaultMinute", void 0);
3456
+ __decorate([
3457
+ n6({ type: Array })
3458
+ ], LitFlatpickr.prototype, "disable", void 0);
3459
+ __decorate([
3460
+ n6({ type: Boolean })
3461
+ ], LitFlatpickr.prototype, "disableMobile", void 0);
3462
+ __decorate([
3463
+ n6({ type: Array })
3464
+ ], LitFlatpickr.prototype, "enable", void 0);
3465
+ __decorate([
3466
+ n6({ type: Boolean })
3467
+ ], LitFlatpickr.prototype, "enableTime", void 0);
3468
+ __decorate([
3469
+ n6({ type: Boolean })
3470
+ ], LitFlatpickr.prototype, "enableSeconds", void 0);
3471
+ __decorate([
3472
+ n6({ type: Function })
3473
+ ], LitFlatpickr.prototype, "formatDateFn", void 0);
3474
+ __decorate([
3475
+ n6({ type: Number })
3476
+ ], LitFlatpickr.prototype, "hourIncrement", void 0);
3477
+ __decorate([
3478
+ n6({ type: Number })
3479
+ ], LitFlatpickr.prototype, "minuteIncrement", void 0);
3480
+ __decorate([
3481
+ n6({ type: Boolean })
3482
+ ], LitFlatpickr.prototype, "inline", void 0);
3483
+ __decorate([
3484
+ n6({ type: String })
3485
+ ], LitFlatpickr.prototype, "maxDate", void 0);
3486
+ __decorate([
3487
+ n6({ type: String })
3488
+ ], LitFlatpickr.prototype, "minDate", void 0);
3489
+ __decorate([
3490
+ n6({ type: String })
3491
+ ], LitFlatpickr.prototype, "mode", void 0);
3492
+ __decorate([
3493
+ n6({ type: String })
3494
+ ], LitFlatpickr.prototype, "nextArrow", void 0);
3495
+ __decorate([
3496
+ n6({ type: String })
3497
+ ], LitFlatpickr.prototype, "prevArrow", void 0);
3498
+ __decorate([
3499
+ n6({ type: Boolean })
3500
+ ], LitFlatpickr.prototype, "noCalendar", void 0);
3501
+ __decorate([
3502
+ n6({ type: Function })
3503
+ ], LitFlatpickr.prototype, "onChange", void 0);
3504
+ __decorate([
3505
+ n6({ type: Function })
3506
+ ], LitFlatpickr.prototype, "onClose", void 0);
3507
+ __decorate([
3508
+ n6({ type: Function })
3509
+ ], LitFlatpickr.prototype, "onOpen", void 0);
3510
+ __decorate([
3511
+ n6({ type: Function })
3512
+ ], LitFlatpickr.prototype, "onReady", void 0);
3513
+ __decorate([
3514
+ n6({ type: Function })
3515
+ ], LitFlatpickr.prototype, "onMonthChange", void 0);
3516
+ __decorate([
3517
+ n6({ type: Function })
3518
+ ], LitFlatpickr.prototype, "onYearChange", void 0);
3519
+ __decorate([
3520
+ n6({ type: Function })
3521
+ ], LitFlatpickr.prototype, "onValueUpdate", void 0);
3522
+ __decorate([
3523
+ n6({ type: Function })
3524
+ ], LitFlatpickr.prototype, "parseDateFn", void 0);
3525
+ __decorate([
3526
+ n6({ type: String })
3527
+ ], LitFlatpickr.prototype, "position", void 0);
3528
+ __decorate([
3529
+ n6({ type: Boolean })
3530
+ ], LitFlatpickr.prototype, "shorthandCurrentMonth", void 0);
3531
+ __decorate([
3532
+ n6({ type: Number })
3533
+ ], LitFlatpickr.prototype, "showMonths", void 0);
3534
+ __decorate([
3535
+ n6({ type: Boolean })
3536
+ ], LitFlatpickr.prototype, "static", void 0);
3537
+ __decorate([
3538
+ n6({ type: Boolean })
3539
+ ], LitFlatpickr.prototype, "time_24hr", void 0);
3540
+ __decorate([
3541
+ n6({ type: Boolean })
3542
+ ], LitFlatpickr.prototype, "weekNumbers", void 0);
3543
+ __decorate([
3544
+ n6({ type: Boolean })
3545
+ ], LitFlatpickr.prototype, "wrap", void 0);
3546
+ __decorate([
3547
+ n6({ type: String })
3548
+ ], LitFlatpickr.prototype, "theme", void 0);
3549
+ __decorate([
3550
+ n6({ type: Number })
3551
+ ], LitFlatpickr.prototype, "firstDayOfWeek", void 0);
3552
+ __decorate([
3553
+ n6({ type: String })
3554
+ ], LitFlatpickr.prototype, "locale", void 0);
3555
+ __decorate([
3556
+ n6({ type: Boolean, attribute: "default-to-today" })
3557
+ ], LitFlatpickr.prototype, "defaultToToday", void 0);
3558
+ __decorate([
3559
+ n6({ type: Boolean, attribute: "week-select" })
3560
+ ], LitFlatpickr.prototype, "weekSelect", void 0);
3561
+ __decorate([
3562
+ n6({ type: Boolean, attribute: "month-select" })
3563
+ ], LitFlatpickr.prototype, "monthSelect", void 0);
3564
+ __decorate([
3565
+ n6({ type: Boolean, attribute: "confirm-date" })
3566
+ ], LitFlatpickr.prototype, "confirmDate", void 0);
3567
+ __decorate([
3568
+ n6({ type: Boolean })
3569
+ ], LitFlatpickr.prototype, "_hasSlottedElement", void 0);
3570
+ LitFlatpickr = __decorate([
3571
+ e5("lit-flatpickr")
3572
+ ], LitFlatpickr);
3573
+
3574
+ // src/components/date-picker/date-picker.component.ts
3575
+ var TerraDatePicker = class extends TerraElement {
3576
+ constructor() {
3577
+ super(...arguments);
3578
+ this.range = false;
3579
+ this.allowInput = false;
3580
+ this.altFormat = "F j, Y";
3581
+ this.altInput = false;
3582
+ this.altInputClass = "";
3583
+ this.dateFormat = "Y-m-d";
3584
+ this.enableTime = false;
3585
+ this.time24hr = false;
3586
+ this.weekNumbers = false;
3587
+ this.static = false;
3588
+ this.position = "auto";
3589
+ this.theme = "light";
3590
+ this.showMonths = 1;
3591
+ }
3592
+ firstUpdated() {
3593
+ this.flatpickrElement.addEventListener("change", this.handleChange.bind(this));
3594
+ }
3595
+ handleChange(e8) {
3596
+ var _a, _b, _c;
3597
+ const selectedDates = e8.detail.selectedDates;
3598
+ if (this.range) {
3599
+ this.startDate = (_a = selectedDates[0]) == null ? void 0 : _a.toISOString().split("T")[0];
3600
+ this.endDate = (_b = selectedDates[1]) == null ? void 0 : _b.toISOString().split("T")[0];
3601
+ } else {
3602
+ this.startDate = (_c = selectedDates[0]) == null ? void 0 : _c.toISOString().split("T")[0];
3603
+ }
3604
+ }
3605
+ render() {
3606
+ return x`
3607
+ <lit-flatpickr
3608
+ .mode=${this.range ? "range" : "single"}
3609
+ .minDate=${this.minDate}
3610
+ .maxDate=${this.maxDate}
3611
+ .defaultDate=${this.range ? [this.startDate, this.endDate].filter(Boolean) : this.startDate}
3612
+ .allowInput=${this.allowInput}
3613
+ .altFormat=${this.altFormat}
3614
+ .altInput=${this.altInput}
3615
+ .altInputClass=${this.altInputClass}
3616
+ .dateFormat=${this.dateFormat}
3617
+ .enableTime=${this.enableTime}
3618
+ .time24hr=${this.time24hr}
3619
+ .weekNumbers=${this.weekNumbers}
3620
+ .static=${this.static}
3621
+ .position=${this.position}
3622
+ .theme=${this.theme}
3623
+ .showMonths=${this.showMonths}
3624
+ ></lit-flatpickr>
3625
+ `;
3626
+ }
3627
+ };
3628
+ TerraDatePicker.styles = [component_styles_default, date_picker_styles_default];
3629
+ __decorateClass([
3630
+ n()
3631
+ ], TerraDatePicker.prototype, "id", 2);
3632
+ __decorateClass([
3633
+ n({ type: Boolean })
3634
+ ], TerraDatePicker.prototype, "range", 2);
3635
+ __decorateClass([
3636
+ n({ attribute: "min-date" })
3637
+ ], TerraDatePicker.prototype, "minDate", 2);
3638
+ __decorateClass([
3639
+ n({ attribute: "max-date" })
3640
+ ], TerraDatePicker.prototype, "maxDate", 2);
3641
+ __decorateClass([
3642
+ n({ attribute: "start-date" })
3643
+ ], TerraDatePicker.prototype, "startDate", 2);
3644
+ __decorateClass([
3645
+ n({ attribute: "end-date" })
3646
+ ], TerraDatePicker.prototype, "endDate", 2);
3647
+ __decorateClass([
3648
+ n({ type: Boolean, attribute: "allow-input" })
3649
+ ], TerraDatePicker.prototype, "allowInput", 2);
3650
+ __decorateClass([
3651
+ n({ attribute: "alt-format" })
3652
+ ], TerraDatePicker.prototype, "altFormat", 2);
3653
+ __decorateClass([
3654
+ n({ type: Boolean, attribute: "alt-input" })
3655
+ ], TerraDatePicker.prototype, "altInput", 2);
3656
+ __decorateClass([
3657
+ n({ attribute: "alt-input-class" })
3658
+ ], TerraDatePicker.prototype, "altInputClass", 2);
3659
+ __decorateClass([
3660
+ n({ attribute: "date-format" })
3661
+ ], TerraDatePicker.prototype, "dateFormat", 2);
3662
+ __decorateClass([
3663
+ n({ type: Boolean, attribute: "enable-time" })
3664
+ ], TerraDatePicker.prototype, "enableTime", 2);
3665
+ __decorateClass([
3666
+ n({ type: Boolean, attribute: "time-24hr" })
3667
+ ], TerraDatePicker.prototype, "time24hr", 2);
3668
+ __decorateClass([
3669
+ n({ type: Boolean, attribute: "week-numbers" })
3670
+ ], TerraDatePicker.prototype, "weekNumbers", 2);
3671
+ __decorateClass([
3672
+ n({ type: Boolean })
3673
+ ], TerraDatePicker.prototype, "static", 2);
3674
+ __decorateClass([
3675
+ n()
3676
+ ], TerraDatePicker.prototype, "position", 2);
3677
+ __decorateClass([
3678
+ n()
3679
+ ], TerraDatePicker.prototype, "theme", 2);
3680
+ __decorateClass([
3681
+ n({ type: Number, attribute: "show-months" })
3682
+ ], TerraDatePicker.prototype, "showMonths", 2);
3683
+ __decorateClass([
3684
+ e("lit-flatpickr")
3685
+ ], TerraDatePicker.prototype, "flatpickrElement", 2);
3686
+
3687
+ export {
3688
+ TerraDatePicker
3689
+ };
3690
+ /*! Bundled license information:
3691
+
3692
+ tslib/tslib.es6.js:
3693
+ (*! *****************************************************************************
3694
+ Copyright (c) Microsoft Corporation.
3695
+
3696
+ Permission to use, copy, modify, and/or distribute this software for any
3697
+ purpose with or without fee is hereby granted.
3698
+
3699
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
3700
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
3701
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
3702
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
3703
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
3704
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
3705
+ PERFORMANCE OF THIS SOFTWARE.
3706
+ ***************************************************************************** *)
3707
+
3708
+ @lit/reactive-element/css-tag.js:
3709
+ (**
3710
+ * @license
3711
+ * Copyright 2019 Google LLC
3712
+ * SPDX-License-Identifier: BSD-3-Clause
3713
+ *)
3714
+
3715
+ @lit/reactive-element/reactive-element.js:
3716
+ (**
3717
+ * @license
3718
+ * Copyright 2017 Google LLC
3719
+ * SPDX-License-Identifier: BSD-3-Clause
3720
+ *)
3721
+
3722
+ lit-html/lit-html.js:
3723
+ (**
3724
+ * @license
3725
+ * Copyright 2017 Google LLC
3726
+ * SPDX-License-Identifier: BSD-3-Clause
3727
+ *)
3728
+
3729
+ lit-element/lit-element.js:
3730
+ (**
3731
+ * @license
3732
+ * Copyright 2017 Google LLC
3733
+ * SPDX-License-Identifier: BSD-3-Clause
3734
+ *)
3735
+
3736
+ lit-html/is-server.js:
3737
+ (**
3738
+ * @license
3739
+ * Copyright 2022 Google LLC
3740
+ * SPDX-License-Identifier: BSD-3-Clause
3741
+ *)
3742
+
3743
+ @lit/reactive-element/decorators/custom-element.js:
3744
+ (**
3745
+ * @license
3746
+ * Copyright 2017 Google LLC
3747
+ * SPDX-License-Identifier: BSD-3-Clause
3748
+ *)
3749
+
3750
+ @lit/reactive-element/decorators/property.js:
3751
+ (**
3752
+ * @license
3753
+ * Copyright 2017 Google LLC
3754
+ * SPDX-License-Identifier: BSD-3-Clause
3755
+ *)
3756
+
3757
+ @lit/reactive-element/decorators/state.js:
3758
+ (**
3759
+ * @license
3760
+ * Copyright 2017 Google LLC
3761
+ * SPDX-License-Identifier: BSD-3-Clause
3762
+ *)
3763
+
3764
+ @lit/reactive-element/decorators/base.js:
3765
+ (**
3766
+ * @license
3767
+ * Copyright 2017 Google LLC
3768
+ * SPDX-License-Identifier: BSD-3-Clause
3769
+ *)
3770
+
3771
+ @lit/reactive-element/decorators/event-options.js:
3772
+ (**
3773
+ * @license
3774
+ * Copyright 2017 Google LLC
3775
+ * SPDX-License-Identifier: BSD-3-Clause
3776
+ *)
3777
+
3778
+ @lit/reactive-element/decorators/query.js:
3779
+ (**
3780
+ * @license
3781
+ * Copyright 2017 Google LLC
3782
+ * SPDX-License-Identifier: BSD-3-Clause
3783
+ *)
3784
+
3785
+ @lit/reactive-element/decorators/query-all.js:
3786
+ (**
3787
+ * @license
3788
+ * Copyright 2017 Google LLC
3789
+ * SPDX-License-Identifier: BSD-3-Clause
3790
+ *)
3791
+
3792
+ @lit/reactive-element/decorators/query-async.js:
3793
+ (**
3794
+ * @license
3795
+ * Copyright 2017 Google LLC
3796
+ * SPDX-License-Identifier: BSD-3-Clause
3797
+ *)
3798
+
3799
+ @lit/reactive-element/decorators/query-assigned-elements.js:
3800
+ (**
3801
+ * @license
3802
+ * Copyright 2021 Google LLC
3803
+ * SPDX-License-Identifier: BSD-3-Clause
3804
+ *)
3805
+
3806
+ @lit/reactive-element/decorators/query-assigned-nodes.js:
3807
+ (**
3808
+ * @license
3809
+ * Copyright 2017 Google LLC
3810
+ * SPDX-License-Identifier: BSD-3-Clause
3811
+ *)
3812
+ */