@nasa-terra/components 0.0.167 → 0.0.169

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 (1300) hide show
  1. package/cdn/chunks/chunk.23Y7QMN5.js +753 -0
  2. package/cdn/chunks/chunk.27Z6KDFJ.js +29 -0
  3. package/cdn/chunks/chunk.2C6JDQ6U.js +19 -0
  4. package/cdn/chunks/chunk.2MOGXBDF.js +86 -0
  5. package/cdn/chunks/chunk.2NM4U2LU.js +187 -0
  6. package/cdn/chunks/chunk.2SKQ6AQU.js +2225 -0
  7. package/cdn/chunks/chunk.2XFZBD6Q.js +99 -0
  8. package/cdn/chunks/chunk.32L5LFZR.js +29 -0
  9. package/cdn/chunks/chunk.33QF2G3Y.js +19 -0
  10. package/cdn/chunks/chunk.34SPQMJO.js +278 -0
  11. package/cdn/chunks/chunk.3PZB6AVW.js +283 -0
  12. package/cdn/chunks/chunk.3V6TVWPS.js +36 -0
  13. package/cdn/chunks/chunk.3VXK4B37.js +189 -0
  14. package/cdn/chunks/chunk.45XFWGEL.js +110 -0
  15. package/cdn/chunks/chunk.4MLRNI36.js +1010 -0
  16. package/cdn/chunks/chunk.4PZUD73W.js +288 -0
  17. package/cdn/chunks/chunk.4QELQH4S.js +83 -0
  18. package/cdn/chunks/chunk.4TIGHFD5.js +113 -0
  19. package/cdn/chunks/chunk.4UP2HCBT.js +610 -0
  20. package/cdn/chunks/chunk.4VPZDIG3.js +19 -0
  21. package/cdn/chunks/chunk.53OJ6QZJ.js +36 -0
  22. package/cdn/chunks/chunk.5AKBNBQL.js +19 -0
  23. package/cdn/chunks/chunk.5B4HOPC3.js +621 -0
  24. package/cdn/chunks/chunk.5G35VKMS.js +34 -0
  25. package/cdn/chunks/chunk.5KLKJUET.js +19 -0
  26. package/cdn/chunks/chunk.5NDUEFAX.js +19 -0
  27. package/cdn/chunks/chunk.5O7CGBAI.js +372 -0
  28. package/cdn/chunks/chunk.5QA4AP6R.js +92 -0
  29. package/cdn/chunks/chunk.5QX4WCU3.js +19 -0
  30. package/cdn/chunks/chunk.5ZF3IZGQ.js +33 -0
  31. package/cdn/chunks/chunk.6PDKWTOW.js +279 -0
  32. package/cdn/chunks/chunk.6XORV5WJ.js +47 -0
  33. package/cdn/chunks/chunk.6YO4E7VJ.js +1966 -0
  34. package/cdn/chunks/chunk.7BAOWZ2D.js +19 -0
  35. package/cdn/chunks/chunk.7KL7WK6H.js +151 -0
  36. package/cdn/chunks/chunk.7NG6N5I3.js +662 -0
  37. package/cdn/chunks/chunk.7PCSQFOH.js +19 -0
  38. package/cdn/chunks/chunk.7RM2ENLT.js +19 -0
  39. package/cdn/chunks/chunk.7TREZJR6.js +19 -0
  40. package/cdn/chunks/chunk.7X6TJBWS.js +62 -0
  41. package/cdn/chunks/chunk.7Z2DAUSO.js +19 -0
  42. package/cdn/chunks/chunk.AARFNUFN.js +29 -0
  43. package/cdn/chunks/chunk.AH6W6EGS.js +77 -0
  44. package/cdn/chunks/chunk.AHLH6A5O.js +33 -0
  45. package/cdn/chunks/chunk.ANMEF6XI.js +293 -0
  46. package/cdn/chunks/chunk.APDB5NTC.js +29 -0
  47. package/cdn/chunks/chunk.APGGATLO.js +19 -0
  48. package/cdn/chunks/chunk.B42NQTM4.js +71 -0
  49. package/cdn/chunks/chunk.B7MPBI6S.js +19 -0
  50. package/cdn/chunks/chunk.BHL4G52Q.js +234 -0
  51. package/cdn/chunks/chunk.BJDNJHIM.js +188 -0
  52. package/cdn/chunks/chunk.BJHOKODY.js +99 -0
  53. package/cdn/chunks/chunk.BJTWOR56.js +35 -0
  54. package/cdn/chunks/chunk.BPNJJF6A.js +68 -0
  55. package/cdn/chunks/chunk.BSPXTTCH.js +19 -0
  56. package/cdn/chunks/chunk.BWV2EL62.js +302 -0
  57. package/cdn/chunks/chunk.C4SHZW4H.js +19 -0
  58. package/cdn/chunks/chunk.CGO5IFL4.js +19 -0
  59. package/cdn/chunks/chunk.CPTHJ4NK.js +19 -0
  60. package/cdn/chunks/chunk.CQC3KAII.js +19 -0
  61. package/cdn/chunks/chunk.CRIMMGT4.js +29 -0
  62. package/cdn/chunks/chunk.CT54BNQB.js +19 -0
  63. package/cdn/chunks/chunk.CWXYJTK4.js +19 -0
  64. package/cdn/chunks/chunk.CXHXO6JQ.js +29 -0
  65. package/cdn/chunks/chunk.CZFT6YMB.js +19 -0
  66. package/cdn/chunks/chunk.DCITKPSL.js +30 -0
  67. package/cdn/chunks/chunk.DGXQG33Y.js +104 -0
  68. package/cdn/chunks/chunk.DNMYG3N2.js +74 -0
  69. package/cdn/chunks/chunk.E2XB6ZUN.js +158 -0
  70. package/cdn/chunks/chunk.E5ISMLQF.js +19 -0
  71. package/cdn/chunks/chunk.EFT35FHT.js +29 -0
  72. package/cdn/chunks/chunk.EJAQIFMU.js +29 -0
  73. package/cdn/chunks/chunk.ELMFDV2G.js +247 -0
  74. package/cdn/chunks/chunk.EMAMZRIH.js +78 -0
  75. package/cdn/chunks/chunk.EQUCF5LD.js +19 -0
  76. package/cdn/chunks/chunk.EV7Z4OAI.js +19 -0
  77. package/cdn/chunks/chunk.F4EZVDJI.js +19 -0
  78. package/cdn/chunks/chunk.F4GBRISI.js +19 -0
  79. package/cdn/chunks/chunk.F4OB5CBN.js +93 -0
  80. package/cdn/chunks/chunk.F73O5LKK.js +134 -0
  81. package/cdn/chunks/chunk.F7OW25HL.js +29 -0
  82. package/cdn/chunks/chunk.FGNNQYIL.js +359 -0
  83. package/cdn/chunks/chunk.FI7PMRLM.js +538 -0
  84. package/cdn/chunks/chunk.FJEMKM6L.js +99 -0
  85. package/cdn/chunks/chunk.FMIULJV6.js +19 -0
  86. package/cdn/chunks/chunk.FORTTFQH.js +33868 -0
  87. package/cdn/chunks/chunk.FR3WWA4S.js +36 -0
  88. package/cdn/chunks/chunk.FTKWFZT4.js +19 -0
  89. package/cdn/chunks/chunk.GA2B2LAL.js +32 -0
  90. package/cdn/chunks/chunk.GGBZTPD2.js +19 -0
  91. package/cdn/chunks/chunk.GHOBJ5BL.js +287 -0
  92. package/cdn/chunks/chunk.GM3JMZ5I.js +19 -0
  93. package/cdn/chunks/chunk.GOEOLG2N.js +239 -0
  94. package/cdn/chunks/chunk.GQC5E6EC.js +29 -0
  95. package/cdn/chunks/chunk.GVI2UZCY.js +1048 -0
  96. package/cdn/chunks/chunk.H2IUVKJO.js +83 -0
  97. package/cdn/chunks/chunk.HGDCOEDY.js +373 -0
  98. package/cdn/chunks/chunk.HKAIXQV3.js +264 -0
  99. package/cdn/chunks/chunk.IA5HSLBJ.js +55346 -0
  100. package/cdn/chunks/chunk.IGWO2LFI.js +29 -0
  101. package/cdn/chunks/chunk.IHGRVRYV.js +29 -0
  102. package/cdn/chunks/chunk.INR4UCPD.js +19 -0
  103. package/cdn/chunks/chunk.INUGNJKE.js +32 -0
  104. package/cdn/chunks/chunk.IO42EDFI.js +34 -0
  105. package/cdn/chunks/chunk.ISBKM2OB.js +238 -0
  106. package/cdn/chunks/chunk.IXEQHA2E.js +37 -0
  107. package/cdn/chunks/chunk.JBO5AXOD.js +35 -0
  108. package/cdn/chunks/chunk.JEW7GNBV.js +19 -0
  109. package/cdn/chunks/chunk.JGKB44KG.js +33 -0
  110. package/cdn/chunks/chunk.JJTTJFNF.js +19 -0
  111. package/cdn/chunks/chunk.JKFQGZZS.js +29 -0
  112. package/cdn/chunks/chunk.JL5VZPY7.js +41 -0
  113. package/cdn/chunks/chunk.JPXF26BZ.js +19 -0
  114. package/cdn/chunks/chunk.JXJSUK7W.js +19 -0
  115. package/cdn/chunks/chunk.JYHWS7XE.js +19 -0
  116. package/cdn/chunks/chunk.JZBYPXWG.js +32 -0
  117. package/cdn/chunks/chunk.K6SKQZRX.js +157 -0
  118. package/cdn/chunks/chunk.K7EC2QO6.js +145 -0
  119. package/cdn/chunks/chunk.KA6WTUWB.js +19 -0
  120. package/cdn/chunks/chunk.KEVFSGQL.js +32 -0
  121. package/cdn/chunks/chunk.KL62X5YD.js +1224 -0
  122. package/cdn/chunks/chunk.KTXAP2TY.js +19 -0
  123. package/cdn/chunks/chunk.KVR4MZB3.js +19 -0
  124. package/cdn/chunks/chunk.KZH2AYJ5.js +230 -0
  125. package/cdn/chunks/chunk.KZPKUN7H.js +19 -0
  126. package/cdn/chunks/chunk.L5NIUHFX.js +29 -0
  127. package/cdn/chunks/chunk.L626XNCW.js +19 -0
  128. package/cdn/chunks/chunk.LBABTGAS.js +146 -0
  129. package/cdn/chunks/chunk.LCNRDMNM.js +29 -0
  130. package/cdn/chunks/chunk.LDOEOSXZ.js +106 -0
  131. package/cdn/chunks/chunk.LGLQGF4T.js +19 -0
  132. package/cdn/chunks/chunk.LJAZFNUH.js +29 -0
  133. package/cdn/chunks/chunk.LNVZEE46.js +39 -0
  134. package/cdn/chunks/chunk.LPY4V6GC.js +2313 -0
  135. package/cdn/chunks/chunk.LYMZZEFO.js +60 -0
  136. package/cdn/chunks/chunk.M3FU7BPO.js +32 -0
  137. package/cdn/chunks/chunk.MBQIMN2Z.js +29 -0
  138. package/cdn/chunks/chunk.MNQ7QWSM.js +493 -0
  139. package/cdn/chunks/chunk.MRZFOIU2.js +29 -0
  140. package/cdn/chunks/chunk.N2Z4NRNI.js +19 -0
  141. package/cdn/chunks/chunk.N46SRNCW.js +904 -0
  142. package/cdn/chunks/chunk.N5HI5LFG.js +19 -0
  143. package/cdn/chunks/chunk.NGVIDM3X.js +29 -0
  144. package/cdn/chunks/chunk.NILECMZK.js +599 -0
  145. package/cdn/chunks/chunk.NKVPUP6A.js +29 -0
  146. package/cdn/chunks/chunk.NU3XX242.js +93 -0
  147. package/cdn/chunks/chunk.NVUJVD6C.js +477 -0
  148. package/cdn/chunks/chunk.NW2G62UV.js +29 -0
  149. package/cdn/chunks/chunk.NX4PFYEF.js +32 -0
  150. package/cdn/chunks/chunk.NZXBPYVN.js +19 -0
  151. package/cdn/chunks/chunk.OELE2X2G.js +32 -0
  152. package/cdn/chunks/chunk.OH47WRWT.js +19 -0
  153. package/cdn/chunks/chunk.OIZ34FEG.js +35 -0
  154. package/cdn/chunks/chunk.ONJTZZMY.js +29 -0
  155. package/cdn/chunks/chunk.PC5QDYRG.js +29 -0
  156. package/cdn/chunks/chunk.PDOV4E5N.js +375 -0
  157. package/cdn/chunks/chunk.PLKBAUEN.js +134 -0
  158. package/cdn/chunks/chunk.PLXTOFVR.js +19 -0
  159. package/cdn/chunks/chunk.PWWRFXZ4.js +132 -0
  160. package/cdn/chunks/chunk.QE4X4C7L.js +259 -0
  161. package/cdn/chunks/chunk.QHDK5ULH.js +29 -0
  162. package/cdn/chunks/chunk.QHR7UYK7.js +524 -0
  163. package/cdn/chunks/chunk.QHZASRBB.js +19 -0
  164. package/cdn/chunks/chunk.QJIEOAFQ.js +165 -0
  165. package/cdn/chunks/chunk.R2LK7SNC.js +56 -0
  166. package/cdn/chunks/chunk.R3EJAFWI.js +276 -0
  167. package/cdn/chunks/chunk.RAWWXBL3.js +35 -0
  168. package/cdn/chunks/chunk.RH2QYEGK.js +29 -0
  169. package/cdn/chunks/chunk.RMV34ISP.js +19 -0
  170. package/cdn/chunks/chunk.RVNABBTF.js +49 -0
  171. package/cdn/chunks/chunk.RYX2JLIN.js +32 -0
  172. package/cdn/chunks/chunk.S2F2564D.js +77 -0
  173. package/cdn/chunks/chunk.S5VANC77.js +32 -0
  174. package/cdn/chunks/chunk.SEQFSNN4.js +33 -0
  175. package/cdn/chunks/chunk.SKSJUMZK.js +123 -0
  176. package/cdn/chunks/chunk.SN7V5RB4.js +32 -0
  177. package/cdn/chunks/chunk.SVTJ2HZL.js +33 -0
  178. package/cdn/chunks/chunk.SXSGS73B.js +32 -0
  179. package/cdn/chunks/chunk.TMFYVWJ3.js +33 -0
  180. package/cdn/chunks/chunk.TO7ON7YJ.js +19 -0
  181. package/cdn/chunks/chunk.TP5LOSK6.js +37 -0
  182. package/cdn/chunks/chunk.TSLZA2FP.js +79 -0
  183. package/cdn/chunks/chunk.TTAUA77F.js +357 -0
  184. package/cdn/chunks/chunk.TTYPIJOI.js +19 -0
  185. package/cdn/chunks/chunk.TXATSRV2.js +36 -0
  186. package/cdn/chunks/chunk.UAB2HUHC.js +510 -0
  187. package/cdn/chunks/chunk.UDK5CODG.js +29 -0
  188. package/cdn/chunks/chunk.UI3WONLU.js +19 -0
  189. package/cdn/chunks/chunk.UO7REAHO.js +32 -0
  190. package/cdn/chunks/chunk.UYGYCNWY.js +190 -0
  191. package/cdn/chunks/chunk.V53CQCNU.js +231 -0
  192. package/cdn/chunks/chunk.V5XFPLYF.js +731 -0
  193. package/cdn/chunks/chunk.W7KGVFJQ.js +52 -0
  194. package/cdn/chunks/chunk.WACY4TCH.js +29 -0
  195. package/cdn/chunks/chunk.WHG6YFIB.js +19 -0
  196. package/cdn/chunks/chunk.WQRXNFMU.js +60 -0
  197. package/cdn/chunks/chunk.X4TM7GM6.js +29 -0
  198. package/cdn/chunks/chunk.XDGH7ACO.js +155 -0
  199. package/cdn/chunks/chunk.XGW4U4H6.js +19 -0
  200. package/cdn/chunks/chunk.XHRAL6WO.js +19 -0
  201. package/cdn/chunks/chunk.XLU2JHSE.js +29 -0
  202. package/cdn/chunks/chunk.XVPTDJKQ.js +136 -0
  203. package/cdn/chunks/chunk.XZUP4GG5.js +19 -0
  204. package/cdn/chunks/chunk.Y4ZXUYTT.js +224 -0
  205. package/cdn/chunks/chunk.YL6EYCOL.js +19 -0
  206. package/cdn/chunks/chunk.YRRK6LWV.js +19 -0
  207. package/cdn/chunks/chunk.YSVRMMA2.js +19 -0
  208. package/cdn/chunks/chunk.YY4FM3EU.js +435 -0
  209. package/cdn/chunks/chunk.YZLDKZ4I.js +32 -0
  210. package/cdn/chunks/chunk.ZF6FTSZN.js +616 -0
  211. package/cdn/chunks/chunk.ZOL6RNPQ.js +29 -0
  212. package/cdn/chunks/chunk.ZRYOHRSD.js +19 -0
  213. package/cdn/chunks/chunk.ZUPGLM4I.js +32 -0
  214. package/cdn/components/accordion/accordion.component.js +5 -5
  215. package/cdn/components/accordion/accordion.js +6 -6
  216. package/cdn/components/alert/alert.component.js +3 -3
  217. package/cdn/components/alert/alert.js +4 -4
  218. package/cdn/components/avatar/avatar.component.js +7 -7
  219. package/cdn/components/avatar/avatar.js +8 -8
  220. package/cdn/components/badge/badge.component.js +2 -2
  221. package/cdn/components/badge/badge.js +3 -3
  222. package/cdn/components/breadcrumb/breadcrumb.component.js +2 -2
  223. package/cdn/components/breadcrumb/breadcrumb.js +3 -3
  224. package/cdn/components/breadcrumbs/breadcrumbs.component.js +2 -2
  225. package/cdn/components/breadcrumbs/breadcrumbs.js +3 -3
  226. package/cdn/components/browse-variables/browse-variables.component.js +18 -18
  227. package/cdn/components/browse-variables/browse-variables.controller.js +3 -3
  228. package/cdn/components/browse-variables/browse-variables.js +19 -19
  229. package/cdn/components/button/button.component.js +7 -7
  230. package/cdn/components/button/button.js +8 -8
  231. package/cdn/components/button-group/button-group.component.js +2 -2
  232. package/cdn/components/button-group/button-group.js +3 -3
  233. package/cdn/components/caption/caption.component.js +2 -2
  234. package/cdn/components/caption/caption.js +3 -3
  235. package/cdn/components/card/card.component.js +2 -2
  236. package/cdn/components/card/card.js +3 -3
  237. package/cdn/components/checkbox/checkbox.component.js +8 -8
  238. package/cdn/components/checkbox/checkbox.js +9 -9
  239. package/cdn/components/chip/chip.component.js +2 -2
  240. package/cdn/components/chip/chip.js +3 -3
  241. package/cdn/components/combobox/combobox.component.d.ts +1 -4
  242. package/cdn/components/combobox/combobox.component.js +6 -6
  243. package/cdn/components/combobox/combobox.js +7 -7
  244. package/cdn/components/data-access/data-access.component.d.ts +3 -2
  245. package/cdn/components/data-access/data-access.component.js +28 -30
  246. package/cdn/components/data-access/data-access.controller.js +3 -3
  247. package/cdn/components/data-access/data-access.js +29 -31
  248. package/cdn/components/data-access/data-access.styles.js +1 -1
  249. package/cdn/components/data-grid/data-grid.component.js +5 -5
  250. package/cdn/components/data-grid/data-grid.js +6 -6
  251. package/cdn/components/data-rods/data-rods.component.js +40 -40
  252. package/cdn/components/data-rods/data-rods.js +41 -41
  253. package/cdn/components/data-subsetter/data-subsetter.component.d.ts +1 -2
  254. package/cdn/components/data-subsetter/data-subsetter.component.js +46 -46
  255. package/cdn/components/data-subsetter/data-subsetter.controller.d.ts +1 -3
  256. package/cdn/components/data-subsetter/data-subsetter.controller.js +3 -3
  257. package/cdn/components/data-subsetter/data-subsetter.js +47 -47
  258. package/cdn/components/data-subsetter/data-subsetter.styles.js +1 -1
  259. package/cdn/components/data-subsetter/notebooks/subsetter-notebook.js +1 -1
  260. package/cdn/components/data-subsetter-history/data-subsetter-history.component.js +47 -47
  261. package/cdn/components/data-subsetter-history/data-subsetter-history.js +48 -48
  262. package/cdn/components/date-picker/date-picker.component.d.ts +0 -4
  263. package/cdn/components/date-picker/date-picker.component.js +14 -14
  264. package/cdn/components/date-picker/date-picker.js +15 -15
  265. package/cdn/components/date-range-slider/date-range-slider.component.js +2 -2
  266. package/cdn/components/date-range-slider/date-range-slider.js +3 -3
  267. package/cdn/components/dialog/dialog.component.js +10 -10
  268. package/cdn/components/dialog/dialog.js +11 -11
  269. package/cdn/components/dialog/dialog.styles.js +1 -1
  270. package/cdn/components/divider/divider.component.js +2 -2
  271. package/cdn/components/divider/divider.js +3 -3
  272. package/cdn/components/dropdown/dropdown.component.js +3 -3
  273. package/cdn/components/dropdown/dropdown.js +4 -4
  274. package/cdn/components/earthdata-login/earthdata-login.component.js +15 -15
  275. package/cdn/components/earthdata-login/earthdata-login.js +16 -16
  276. package/cdn/components/file-upload/file-upload.component.js +2 -2
  277. package/cdn/components/file-upload/file-upload.js +3 -3
  278. package/cdn/components/icon/icon.component.js +3 -3
  279. package/cdn/components/icon/icon.js +4 -4
  280. package/cdn/components/input/input.component.js +8 -8
  281. package/cdn/components/input/input.js +9 -9
  282. package/cdn/components/loader/loader.component.js +2 -2
  283. package/cdn/components/loader/loader.js +3 -3
  284. package/cdn/components/login/login.component.js +12 -12
  285. package/cdn/components/login/login.js +13 -13
  286. package/cdn/components/map/leaflet-utils.d.ts +1 -1
  287. package/cdn/components/map/map.component.js +4 -4
  288. package/cdn/components/map/map.js +5 -5
  289. package/cdn/components/menu/menu.component.js +2 -2
  290. package/cdn/components/menu/menu.js +3 -3
  291. package/cdn/components/menu-item/menu-item.component.js +11 -11
  292. package/cdn/components/menu-item/menu-item.js +12 -12
  293. package/cdn/components/menu-item/submenu-controller.js +3 -3
  294. package/cdn/components/option/option.component.js +6 -6
  295. package/cdn/components/option/option.js +7 -7
  296. package/cdn/components/pagination/pagination.component.js +6 -6
  297. package/cdn/components/pagination/pagination.js +7 -7
  298. package/cdn/components/plot/plot.component.js +2 -2
  299. package/cdn/components/plot/plot.js +3 -3
  300. package/cdn/components/plot-toolbar/notebooks/time-averaged-map-notebook.js +1 -1
  301. package/cdn/components/plot-toolbar/notebooks/time-series-notebook.js +1 -1
  302. package/cdn/components/plot-toolbar/plot-toolbar.component.d.ts +8 -0
  303. package/cdn/components/plot-toolbar/plot-toolbar.component.js +16 -16
  304. package/cdn/components/plot-toolbar/plot-toolbar.controller.js +3 -3
  305. package/cdn/components/plot-toolbar/plot-toolbar.js +17 -17
  306. package/cdn/components/plot-toolbar/plot-toolbar.styles.js +1 -1
  307. package/cdn/components/popup/popup.component.js +2 -2
  308. package/cdn/components/popup/popup.js +3 -3
  309. package/cdn/components/progress-bar/progress-bar.component.js +2 -2
  310. package/cdn/components/progress-bar/progress-bar.js +3 -3
  311. package/cdn/components/radio/radio.component.js +4 -4
  312. package/cdn/components/radio/radio.js +5 -5
  313. package/cdn/components/radio-group/radio-group.component.js +2 -2
  314. package/cdn/components/radio-group/radio-group.js +3 -3
  315. package/cdn/components/scroll-hint/scroll-hint.component.js +4 -4
  316. package/cdn/components/scroll-hint/scroll-hint.js +5 -5
  317. package/cdn/components/select/select.component.js +10 -10
  318. package/cdn/components/select/select.js +11 -11
  319. package/cdn/components/site-header/site-header.component.js +5 -5
  320. package/cdn/components/site-header/site-header.js +5 -5
  321. package/cdn/components/site-navigation/site-navigation.component.js +2 -2
  322. package/cdn/components/site-navigation/site-navigation.js +2 -2
  323. package/cdn/components/skeleton/skeleton.component.js +2 -2
  324. package/cdn/components/skeleton/skeleton.js +3 -3
  325. package/cdn/components/slider/slider.component.js +2 -2
  326. package/cdn/components/slider/slider.js +3 -3
  327. package/cdn/components/spatial-picker/spatial-picker.component.js +15 -15
  328. package/cdn/components/spatial-picker/spatial-picker.js +16 -16
  329. package/cdn/components/status-indicator/status-indicator.component.js +2 -2
  330. package/cdn/components/status-indicator/status-indicator.js +3 -3
  331. package/cdn/components/stepper/stepper.component.js +2 -2
  332. package/cdn/components/stepper/stepper.js +3 -3
  333. package/cdn/components/stepper-step/stepper-step.component.js +6 -6
  334. package/cdn/components/stepper-step/stepper-step.js +7 -7
  335. package/cdn/components/tab/tab.component.js +6 -6
  336. package/cdn/components/tab/tab.js +7 -7
  337. package/cdn/components/tab-panel/tab-panel.component.js +2 -2
  338. package/cdn/components/tab-panel/tab-panel.js +3 -3
  339. package/cdn/components/tabs/tabs.component.js +6 -6
  340. package/cdn/components/tabs/tabs.js +7 -7
  341. package/cdn/components/tag/tag.component.js +6 -6
  342. package/cdn/components/tag/tag.js +7 -7
  343. package/cdn/components/textarea/textarea.component.js +4 -4
  344. package/cdn/components/textarea/textarea.js +5 -5
  345. package/cdn/components/time-average-map/time-average-map.component.d.ts +4 -0
  346. package/cdn/components/time-average-map/time-average-map.component.js +24 -24
  347. package/cdn/components/time-average-map/time-average-map.js +25 -25
  348. package/cdn/components/time-series/time-series.component.d.ts +4 -0
  349. package/cdn/components/time-series/time-series.component.js +25 -25
  350. package/cdn/components/time-series/time-series.controller.d.ts +2 -0
  351. package/cdn/components/time-series/time-series.controller.js +1 -1
  352. package/cdn/components/time-series/time-series.js +26 -26
  353. package/cdn/components/toast/toast.component.js +4 -4
  354. package/cdn/components/toast/toast.js +5 -5
  355. package/cdn/components/toggle/toggle.component.js +4 -4
  356. package/cdn/components/toggle/toggle.js +5 -5
  357. package/cdn/components/tooltip/tooltip.component.js +3 -3
  358. package/cdn/components/tooltip/tooltip.js +4 -4
  359. package/cdn/components/variable-combobox/lib.js +3 -3
  360. package/cdn/components/variable-combobox/variable-combobox.component.d.ts +1 -4
  361. package/cdn/components/variable-combobox/variable-combobox.component.js +15 -15
  362. package/cdn/components/variable-combobox/variable-combobox.controller.js +4 -4
  363. package/cdn/components/variable-combobox/variable-combobox.js +16 -16
  364. package/cdn/components/variable-keyword-search/variable-keyword-search.component.d.ts +1 -4
  365. package/cdn/components/variable-keyword-search/variable-keyword-search.component.js +14 -14
  366. package/cdn/components/variable-keyword-search/variable-keyword-search.controller.js +3 -3
  367. package/cdn/components/variable-keyword-search/variable-keyword-search.js +15 -15
  368. package/cdn/custom-elements.json +2426 -2236
  369. package/cdn/internal/animate.d.ts +3 -3
  370. package/cdn/metadata-catalog/cmr-catalog.d.ts +1 -2
  371. package/cdn/metadata-catalog/queries.d.ts +0 -1
  372. package/cdn/metadata-catalog/types.d.ts +0 -13
  373. package/cdn/react/accordion/index.js +6 -6
  374. package/cdn/react/alert/index.js +4 -4
  375. package/cdn/react/avatar/index.js +8 -8
  376. package/cdn/react/badge/index.js +3 -3
  377. package/cdn/react/breadcrumb/index.js +3 -3
  378. package/cdn/react/breadcrumbs/index.js +3 -3
  379. package/cdn/react/browse-variables/index.js +19 -19
  380. package/cdn/react/button/index.js +8 -8
  381. package/cdn/react/button-group/index.js +3 -3
  382. package/cdn/react/caption/index.js +3 -3
  383. package/cdn/react/card/index.js +3 -3
  384. package/cdn/react/checkbox/index.js +9 -9
  385. package/cdn/react/chip/index.js +3 -3
  386. package/cdn/react/combobox/index.js +7 -7
  387. package/cdn/react/data-access/index.js +29 -31
  388. package/cdn/react/data-grid/index.js +6 -6
  389. package/cdn/react/data-rods/index.js +41 -41
  390. package/cdn/react/data-subsetter/index.js +47 -47
  391. package/cdn/react/data-subsetter-history/index.js +48 -48
  392. package/cdn/react/date-picker/index.js +15 -15
  393. package/cdn/react/date-range-slider/index.js +3 -3
  394. package/cdn/react/dialog/index.js +11 -11
  395. package/cdn/react/divider/index.js +3 -3
  396. package/cdn/react/dropdown/index.js +4 -4
  397. package/cdn/react/earthdata-login/index.js +16 -16
  398. package/cdn/react/file-upload/index.js +3 -3
  399. package/cdn/react/icon/index.js +4 -4
  400. package/cdn/react/index.d.ts +8 -8
  401. package/cdn/react/index.js +199 -199
  402. package/cdn/react/input/index.js +9 -9
  403. package/cdn/react/loader/index.js +3 -3
  404. package/cdn/react/login/index.js +13 -13
  405. package/cdn/react/map/index.js +5 -5
  406. package/cdn/react/menu/index.js +3 -3
  407. package/cdn/react/menu-item/index.js +12 -12
  408. package/cdn/react/option/index.js +7 -7
  409. package/cdn/react/pagination/index.js +7 -7
  410. package/cdn/react/plot/index.js +3 -3
  411. package/cdn/react/plot-toolbar/index.js +17 -17
  412. package/cdn/react/popup/index.js +3 -3
  413. package/cdn/react/progress-bar/index.js +3 -3
  414. package/cdn/react/radio/index.js +5 -5
  415. package/cdn/react/radio-group/index.js +3 -3
  416. package/cdn/react/scroll-hint/index.js +5 -5
  417. package/cdn/react/select/index.js +11 -11
  418. package/cdn/react/site-header/index.js +6 -6
  419. package/cdn/react/site-navigation/index.js +3 -3
  420. package/cdn/react/skeleton/index.js +3 -3
  421. package/cdn/react/slider/index.js +3 -3
  422. package/cdn/react/spatial-picker/index.js +16 -16
  423. package/cdn/react/status-indicator/index.js +3 -3
  424. package/cdn/react/stepper/index.js +3 -3
  425. package/cdn/react/stepper-step/index.js +7 -7
  426. package/cdn/react/tab/index.js +7 -7
  427. package/cdn/react/tab-panel/index.js +3 -3
  428. package/cdn/react/tabs/index.js +7 -7
  429. package/cdn/react/tag/index.js +7 -7
  430. package/cdn/react/textarea/index.js +5 -5
  431. package/cdn/react/time-average-map/index.js +25 -25
  432. package/cdn/react/time-series/index.js +26 -26
  433. package/cdn/react/toast/index.js +5 -5
  434. package/cdn/react/toggle/index.js +5 -5
  435. package/cdn/react/tooltip/index.js +4 -4
  436. package/cdn/react/variable-combobox/index.js +16 -16
  437. package/cdn/react/variable-keyword-search/index.js +15 -15
  438. package/cdn/terra-ui-components.js +181 -181
  439. package/cdn/types/vue/index.d.ts +623 -611
  440. package/cdn/utilities/mimetypes.d.ts +1 -1
  441. package/cdn/utilities/mimetypes.js +1 -1
  442. package/cdn/vscode.html-custom-data.json +321 -315
  443. package/cdn/web-types.json +1599 -1575
  444. package/dist/chunks/chunk.244DZLIP.js +11 -0
  445. package/dist/chunks/chunk.27GXWWY5.js +477 -0
  446. package/dist/chunks/chunk.2IFSOO3E.js +252 -0
  447. package/dist/chunks/chunk.2JLEP7WV.js +135 -0
  448. package/dist/chunks/chunk.2L3CFGOL.js +1208 -0
  449. package/dist/chunks/chunk.2MA2LAWJ.js +26 -0
  450. package/dist/chunks/chunk.3BXIF2L6.js +123 -0
  451. package/dist/chunks/chunk.3GTYR5QQ.js +48 -0
  452. package/dist/chunks/chunk.3SUPGFZP.js +11 -0
  453. package/dist/chunks/chunk.3TCKFLXO.js +25 -0
  454. package/dist/chunks/chunk.42U67QA6.js +24 -0
  455. package/dist/chunks/chunk.4BRHJBL7.js +362 -0
  456. package/dist/chunks/chunk.4CQ6JLXT.js +11 -0
  457. package/dist/chunks/chunk.4MR3XQYZ.js +11 -0
  458. package/dist/chunks/chunk.4YBTJRDB.js +21 -0
  459. package/dist/chunks/chunk.57FICIIB.js +75 -0
  460. package/dist/chunks/chunk.5BIIGX5J.js +11 -0
  461. package/dist/chunks/chunk.5CEJUKNY.js +24 -0
  462. package/dist/chunks/chunk.5LOMSDJG.js +21 -0
  463. package/dist/chunks/chunk.5MD7WIHY.js +345 -0
  464. package/dist/chunks/chunk.5YFNGTKF.js +11 -0
  465. package/dist/chunks/chunk.5YXVYNKA.js +27 -0
  466. package/dist/chunks/chunk.6AE2CYBW.js +720 -0
  467. package/dist/chunks/chunk.6ARWS5HX.js +180 -0
  468. package/dist/chunks/chunk.6BJRAWOU.js +21 -0
  469. package/dist/chunks/chunk.6BXNCUEM.js +11 -0
  470. package/dist/chunks/chunk.6GC22XGW.js +11 -0
  471. package/dist/chunks/chunk.6JWHPMOL.js +43 -0
  472. package/dist/chunks/chunk.6OWWYTVJ.js +139 -0
  473. package/dist/chunks/chunk.6QUKR7RO.js +112 -0
  474. package/dist/chunks/chunk.6U5T7MPK.js +28 -0
  475. package/dist/chunks/chunk.6WFQLIO6.js +24 -0
  476. package/dist/chunks/chunk.6X5KWRWR.js +24 -0
  477. package/dist/chunks/chunk.6XEOJEHN.js +345 -0
  478. package/dist/chunks/chunk.6YM2VNJ6.js +145 -0
  479. package/dist/chunks/chunk.7CUXDX2A.js +25 -0
  480. package/dist/chunks/chunk.7DIAPFYG.js +581 -0
  481. package/dist/chunks/chunk.7FB4E6GP.js +21 -0
  482. package/dist/chunks/chunk.7MTJNTH5.js +33 -0
  483. package/dist/chunks/chunk.7RORE7SX.js +39 -0
  484. package/dist/chunks/chunk.7S3CSJ3Q.js +26 -0
  485. package/dist/chunks/chunk.7WBVLWQI.js +220 -0
  486. package/dist/chunks/chunk.7YYVFTB6.js +21 -0
  487. package/dist/chunks/chunk.A7GSFUIJ.js +24 -0
  488. package/dist/chunks/chunk.AFJEYVSG.js +11 -0
  489. package/dist/chunks/chunk.AX4ZWMMB.js +11 -0
  490. package/dist/chunks/chunk.AZ6MIDIS.js +272 -0
  491. package/dist/chunks/chunk.B5EWGDA2.js +11 -0
  492. package/dist/chunks/chunk.BADHWJPB.js +230 -0
  493. package/dist/chunks/chunk.BH3YZAKC.js +11 -0
  494. package/dist/chunks/chunk.BHPD4NJ5.js +27 -0
  495. package/dist/chunks/chunk.BJDVG6P4.js +234 -0
  496. package/dist/chunks/chunk.BKA35SC2.js +25 -0
  497. package/dist/chunks/chunk.BLNEOX5E.js +474 -0
  498. package/dist/chunks/chunk.BTP3GVLU.js +24 -0
  499. package/dist/chunks/chunk.BTSG3LQM.js +11 -0
  500. package/dist/chunks/chunk.BX6LEPMM.js +592 -0
  501. package/dist/chunks/chunk.BYRZUTFU.js +11 -0
  502. package/dist/chunks/chunk.BZM2ZCWG.js +11 -0
  503. package/dist/chunks/chunk.C32A7MRT.js +21 -0
  504. package/dist/chunks/chunk.C5S6UDN2.js +21 -0
  505. package/dist/chunks/chunk.CERMDF55.js +176 -0
  506. package/dist/chunks/chunk.COEHW6OY.js +86 -0
  507. package/dist/chunks/chunk.CQEVRRQZ.js +24 -0
  508. package/dist/chunks/chunk.CZUH53PN.js +11 -0
  509. package/dist/chunks/chunk.DASUCWZP.js +11 -0
  510. package/dist/chunks/chunk.DBY3G3UB.js +11 -0
  511. package/dist/chunks/chunk.DMAH3PCT.js +11 -0
  512. package/dist/chunks/chunk.DSUDWF6F.js +11 -0
  513. package/dist/chunks/chunk.DYCZ423L.js +78 -0
  514. package/dist/chunks/chunk.E7H5E5SH.js +11 -0
  515. package/dist/chunks/chunk.EGRGRWWC.js +11 -0
  516. package/dist/chunks/chunk.EJDQ7N4N.js +11 -0
  517. package/dist/chunks/chunk.EKCHTIZJ.js +2300 -0
  518. package/dist/chunks/chunk.ETRDQRH3.js +21 -0
  519. package/dist/chunks/chunk.F5IIABM6.js +43 -0
  520. package/dist/chunks/chunk.FDTBGRL6.js +153 -0
  521. package/dist/chunks/chunk.FIAR7NZE.js +11 -0
  522. package/dist/chunks/chunk.FL6IELYY.js +11 -0
  523. package/dist/chunks/chunk.FNNNCTDJ.js +11 -0
  524. package/dist/chunks/chunk.FNPTN6G3.js +11 -0
  525. package/dist/chunks/chunk.FQKRRAYU.js +31 -0
  526. package/dist/chunks/chunk.FVAP6J7L.js +52 -0
  527. package/dist/chunks/chunk.G3SVVREJ.js +11 -0
  528. package/dist/chunks/chunk.G5RCFGIM.js +21 -0
  529. package/dist/chunks/chunk.G64YMGVV.js +24 -0
  530. package/dist/chunks/chunk.GDPEDD4C.js +28 -0
  531. package/dist/chunks/chunk.GEEXIPJV.js +11 -0
  532. package/dist/chunks/chunk.H2J4HKGH.js +21 -0
  533. package/dist/chunks/chunk.H4OZ7IMY.js +21 -0
  534. package/dist/chunks/chunk.H6OIWIV7.js +291 -0
  535. package/dist/chunks/chunk.HA3JDW7A.js +422 -0
  536. package/dist/chunks/chunk.HARXTWRK.js +409 -0
  537. package/dist/chunks/chunk.HLWXCHIT.js +11 -0
  538. package/dist/chunks/chunk.HMW6QGJN.js +21 -0
  539. package/dist/chunks/chunk.HSJ4HZPL.js +11 -0
  540. package/dist/chunks/chunk.HSWF2FM4.js +247 -0
  541. package/dist/chunks/chunk.HVML4S4Z.js +11 -0
  542. package/dist/chunks/chunk.HYNXF7QU.js +27 -0
  543. package/dist/chunks/chunk.I4CG4XCP.js +93 -0
  544. package/dist/chunks/chunk.IDQL7BOY.js +264 -0
  545. package/dist/chunks/chunk.INWDQT67.js +732 -0
  546. package/dist/chunks/chunk.JCUAIHCM.js +11 -0
  547. package/dist/chunks/chunk.JEAP7TNI.js +451 -0
  548. package/dist/chunks/chunk.JEL2MSEG.js +74 -0
  549. package/dist/chunks/chunk.JFBYVCVJ.js +11 -0
  550. package/dist/chunks/chunk.JKQ3QVLB.js +230 -0
  551. package/dist/chunks/chunk.JNVRKAM2.js +11 -0
  552. package/dist/chunks/chunk.JT4WOJMO.js +280 -0
  553. package/dist/chunks/chunk.JZFGWLGA.js +11 -0
  554. package/dist/chunks/chunk.K5XCZI52.js +21 -0
  555. package/dist/chunks/chunk.K7YNBL2G.js +28 -0
  556. package/dist/chunks/chunk.KBSJPDEC.js +245 -0
  557. package/dist/chunks/chunk.KV2IYFJ5.js +24 -0
  558. package/dist/chunks/chunk.KVCGJWC3.js +213 -0
  559. package/dist/chunks/chunk.KWHILUSG.js +89 -0
  560. package/dist/chunks/chunk.KWON4JYT.js +21 -0
  561. package/dist/chunks/chunk.L7U3VLPR.js +11 -0
  562. package/dist/chunks/chunk.LBWSMVXC.js +21 -0
  563. package/dist/chunks/chunk.LFJQDEQV.js +21 -0
  564. package/dist/chunks/chunk.LIO3C37Q.js +11 -0
  565. package/dist/chunks/chunk.LP5NFGUK.js +21 -0
  566. package/dist/chunks/chunk.LTIZBU7H.js +11 -0
  567. package/dist/chunks/chunk.LW5H2P44.js +11 -0
  568. package/dist/chunks/chunk.M5FYWQOR.js +61 -0
  569. package/dist/chunks/chunk.MMTZYMPU.js +365 -0
  570. package/dist/chunks/chunk.MS6LN5W5.js +11 -0
  571. package/dist/chunks/chunk.N4KUCFNV.js +11 -0
  572. package/dist/chunks/chunk.N65PNERF.js +180 -0
  573. package/dist/chunks/chunk.N6ZYA3DL.js +355 -0
  574. package/dist/chunks/chunk.NCLFPAHC.js +64 -0
  575. package/dist/chunks/chunk.NNDYPXKX.js +29 -0
  576. package/dist/chunks/chunk.NPNC2FCY.js +844 -0
  577. package/dist/chunks/chunk.NPNHPKHU.js +83 -0
  578. package/dist/chunks/chunk.OCLKL55D.js +29 -0
  579. package/dist/chunks/chunk.OESICSHC.js +525 -0
  580. package/dist/chunks/chunk.OFUJJYKR.js +1037 -0
  581. package/dist/chunks/chunk.OLVV5YXB.js +58 -0
  582. package/dist/chunks/chunk.OOV6DVGY.js +121 -0
  583. package/dist/chunks/chunk.OS3RKLJB.js +21 -0
  584. package/dist/chunks/chunk.OZH745CV.js +21 -0
  585. package/dist/chunks/chunk.PEDKCOY4.js +11 -0
  586. package/dist/chunks/chunk.PEP5YG7F.js +11 -0
  587. package/dist/chunks/chunk.PGYEWOEN.js +11 -0
  588. package/dist/chunks/chunk.Q2N6LAHV.js +11 -0
  589. package/dist/chunks/chunk.QD6RCWVW.js +609 -0
  590. package/dist/chunks/chunk.QFIGOLZ5.js +21 -0
  591. package/dist/chunks/chunk.QIV6FTJZ.js +2210 -0
  592. package/dist/chunks/chunk.QQTZHRO6.js +220 -0
  593. package/dist/chunks/chunk.R2FIROFJ.js +214 -0
  594. package/dist/chunks/chunk.RAZUJTMC.js +25 -0
  595. package/dist/chunks/chunk.RC4C4SUI.js +11 -0
  596. package/dist/chunks/chunk.RCSGMZ4N.js +11 -0
  597. package/dist/chunks/chunk.RGLIK7PD.js +443 -0
  598. package/dist/chunks/chunk.RGWMRGT7.js +11 -0
  599. package/dist/chunks/chunk.RJ3ZDWLV.js +596 -0
  600. package/dist/chunks/chunk.RKHOFI7X.js +101 -0
  601. package/dist/chunks/chunk.RLA4DXLG.js +11 -0
  602. package/dist/chunks/chunk.RMMLBUXZ.js +21 -0
  603. package/dist/chunks/chunk.RO4MUFVF.js +67 -0
  604. package/dist/chunks/chunk.RS6ILFIV.js +24 -0
  605. package/dist/chunks/chunk.S6S6AZVY.js +11 -0
  606. package/dist/chunks/chunk.SJ2MURWD.js +124 -0
  607. package/dist/chunks/chunk.SU5KHWCD.js +48 -0
  608. package/dist/chunks/chunk.SUIUTP6U.js +27 -0
  609. package/dist/chunks/chunk.TEXDZ47N.js +272 -0
  610. package/dist/chunks/chunk.TFDANUKB.js +11 -0
  611. package/dist/chunks/chunk.TGLQJXHW.js +67 -0
  612. package/dist/chunks/chunk.TLEU57VT.js +11 -0
  613. package/dist/chunks/chunk.TUSRW37U.js +11 -0
  614. package/dist/chunks/chunk.UP3PWL6B.js +85 -0
  615. package/dist/chunks/chunk.UWTULAWZ.js +11 -0
  616. package/dist/chunks/chunk.V55F6ZYF.js +21 -0
  617. package/dist/chunks/chunk.V5E6WXAV.js +1132 -0
  618. package/dist/chunks/chunk.V7WZ4WVL.js +993 -0
  619. package/dist/chunks/chunk.VEMPRIOR.js +262 -0
  620. package/dist/chunks/chunk.VT4LPOE5.js +91 -0
  621. package/dist/chunks/chunk.VZZBFVXV.js +21 -0
  622. package/dist/chunks/chunk.W7KS33UL.js +21 -0
  623. package/dist/chunks/chunk.WVDLUQ3V.js +24 -0
  624. package/dist/chunks/chunk.WX6ETV4B.js +21 -0
  625. package/dist/chunks/chunk.X3YS4VVF.js +21 -0
  626. package/dist/chunks/chunk.X6EK75J7.js +11 -0
  627. package/dist/chunks/chunk.X6UN7MAD.js +11 -0
  628. package/dist/chunks/chunk.X6WBXAZA.js +25 -0
  629. package/dist/chunks/chunk.XDL7CULW.js +24 -0
  630. package/dist/chunks/chunk.XF2TNIPL.js +21 -0
  631. package/dist/chunks/chunk.XHHQASBA.js +97 -0
  632. package/dist/chunks/chunk.XISOGFIV.js +11 -0
  633. package/dist/chunks/chunk.XJDIZ5SC.js +11 -0
  634. package/dist/chunks/chunk.XL2WKV7L.js +28 -0
  635. package/dist/chunks/chunk.XNRQH37L.js +11 -0
  636. package/dist/chunks/chunk.XQPZ7LL7.js +277 -0
  637. package/dist/chunks/chunk.XR75EBXL.js +24 -0
  638. package/dist/chunks/chunk.XVF4BWHT.js +21 -0
  639. package/dist/chunks/chunk.XZTZVISY.js +91 -0
  640. package/dist/chunks/chunk.YCBRNVEI.js +11 -0
  641. package/dist/chunks/chunk.YEJ2JSXH.js +143 -0
  642. package/dist/chunks/chunk.YKUYWI5U.js +180 -0
  643. package/dist/chunks/chunk.YPEILVTS.js +24 -0
  644. package/dist/chunks/chunk.YRAXSV5D.js +495 -0
  645. package/dist/chunks/chunk.Z3H2UKLG.js +24 -0
  646. package/dist/chunks/chunk.ZM2BSPTE.js +52 -0
  647. package/dist/chunks/chunk.ZPQIS45C.js +20 -0
  648. package/dist/chunks/chunk.ZT22E4FS.js +21 -0
  649. package/dist/chunks/chunk.ZX2YAIZI.js +21 -0
  650. package/dist/components/accordion/accordion.component.js +5 -5
  651. package/dist/components/accordion/accordion.js +6 -6
  652. package/dist/components/alert/alert.component.js +3 -3
  653. package/dist/components/alert/alert.js +4 -4
  654. package/dist/components/avatar/avatar.component.js +5 -5
  655. package/dist/components/avatar/avatar.js +6 -6
  656. package/dist/components/badge/badge.component.js +2 -2
  657. package/dist/components/badge/badge.js +3 -3
  658. package/dist/components/breadcrumb/breadcrumb.component.js +2 -2
  659. package/dist/components/breadcrumb/breadcrumb.js +3 -3
  660. package/dist/components/breadcrumbs/breadcrumbs.component.js +2 -2
  661. package/dist/components/breadcrumbs/breadcrumbs.js +3 -3
  662. package/dist/components/browse-variables/browse-variables.component.js +15 -15
  663. package/dist/components/browse-variables/browse-variables.controller.js +3 -3
  664. package/dist/components/browse-variables/browse-variables.js +16 -16
  665. package/dist/components/button/button.component.js +5 -5
  666. package/dist/components/button/button.js +6 -6
  667. package/dist/components/button-group/button-group.component.js +2 -2
  668. package/dist/components/button-group/button-group.js +3 -3
  669. package/dist/components/caption/caption.component.js +2 -2
  670. package/dist/components/caption/caption.js +3 -3
  671. package/dist/components/card/card.component.js +2 -2
  672. package/dist/components/card/card.js +3 -3
  673. package/dist/components/checkbox/checkbox.component.js +5 -5
  674. package/dist/components/checkbox/checkbox.js +6 -6
  675. package/dist/components/chip/chip.component.js +2 -2
  676. package/dist/components/chip/chip.js +3 -3
  677. package/dist/components/combobox/combobox.component.d.ts +1 -4
  678. package/dist/components/combobox/combobox.component.js +2 -2
  679. package/dist/components/combobox/combobox.js +3 -3
  680. package/dist/components/data-access/data-access.component.d.ts +3 -2
  681. package/dist/components/data-access/data-access.component.js +22 -24
  682. package/dist/components/data-access/data-access.controller.js +3 -3
  683. package/dist/components/data-access/data-access.js +23 -25
  684. package/dist/components/data-access/data-access.styles.js +1 -1
  685. package/dist/components/data-grid/data-grid.component.js +3 -3
  686. package/dist/components/data-grid/data-grid.js +4 -4
  687. package/dist/components/data-rods/data-rods.component.js +32 -32
  688. package/dist/components/data-rods/data-rods.js +33 -33
  689. package/dist/components/data-subsetter/data-subsetter.component.d.ts +1 -2
  690. package/dist/components/data-subsetter/data-subsetter.component.js +40 -40
  691. package/dist/components/data-subsetter/data-subsetter.controller.d.ts +1 -3
  692. package/dist/components/data-subsetter/data-subsetter.controller.js +3 -3
  693. package/dist/components/data-subsetter/data-subsetter.js +41 -41
  694. package/dist/components/data-subsetter/data-subsetter.styles.js +1 -1
  695. package/dist/components/data-subsetter/notebooks/subsetter-notebook.js +1 -1
  696. package/dist/components/data-subsetter-history/data-subsetter-history.component.js +41 -41
  697. package/dist/components/data-subsetter-history/data-subsetter-history.js +42 -42
  698. package/dist/components/date-picker/date-picker.component.d.ts +0 -4
  699. package/dist/components/date-picker/date-picker.component.js +10 -10
  700. package/dist/components/date-picker/date-picker.js +11 -11
  701. package/dist/components/date-range-slider/date-range-slider.component.js +2 -2
  702. package/dist/components/date-range-slider/date-range-slider.js +3 -3
  703. package/dist/components/dialog/dialog.component.js +8 -8
  704. package/dist/components/dialog/dialog.js +9 -9
  705. package/dist/components/dialog/dialog.styles.js +1 -1
  706. package/dist/components/divider/divider.component.js +2 -2
  707. package/dist/components/divider/divider.js +3 -3
  708. package/dist/components/dropdown/dropdown.component.js +3 -3
  709. package/dist/components/dropdown/dropdown.js +4 -4
  710. package/dist/components/earthdata-login/earthdata-login.component.js +12 -12
  711. package/dist/components/earthdata-login/earthdata-login.js +13 -13
  712. package/dist/components/file-upload/file-upload.component.js +2 -2
  713. package/dist/components/file-upload/file-upload.js +3 -3
  714. package/dist/components/icon/icon.component.js +3 -3
  715. package/dist/components/icon/icon.js +4 -4
  716. package/dist/components/input/input.component.js +5 -5
  717. package/dist/components/input/input.js +6 -6
  718. package/dist/components/loader/loader.component.js +2 -2
  719. package/dist/components/loader/loader.js +3 -3
  720. package/dist/components/login/login.component.js +10 -10
  721. package/dist/components/login/login.js +11 -11
  722. package/dist/components/map/leaflet-utils.d.ts +1 -1
  723. package/dist/components/map/map.component.js +2 -2
  724. package/dist/components/map/map.js +3 -3
  725. package/dist/components/menu/menu.component.js +2 -2
  726. package/dist/components/menu/menu.js +3 -3
  727. package/dist/components/menu-item/menu-item.component.js +7 -7
  728. package/dist/components/menu-item/menu-item.js +8 -8
  729. package/dist/components/option/option.component.js +4 -4
  730. package/dist/components/option/option.js +5 -5
  731. package/dist/components/pagination/pagination.component.js +4 -4
  732. package/dist/components/pagination/pagination.js +5 -5
  733. package/dist/components/plot/plot.component.js +2 -2
  734. package/dist/components/plot/plot.js +3 -3
  735. package/dist/components/plot-toolbar/notebooks/time-averaged-map-notebook.js +1 -1
  736. package/dist/components/plot-toolbar/notebooks/time-series-notebook.js +1 -1
  737. package/dist/components/plot-toolbar/plot-toolbar.component.d.ts +8 -0
  738. package/dist/components/plot-toolbar/plot-toolbar.component.js +13 -13
  739. package/dist/components/plot-toolbar/plot-toolbar.controller.js +3 -3
  740. package/dist/components/plot-toolbar/plot-toolbar.js +14 -14
  741. package/dist/components/plot-toolbar/plot-toolbar.styles.js +1 -1
  742. package/dist/components/popup/popup.component.js +2 -2
  743. package/dist/components/popup/popup.js +3 -3
  744. package/dist/components/progress-bar/progress-bar.component.js +2 -2
  745. package/dist/components/progress-bar/progress-bar.js +3 -3
  746. package/dist/components/radio/radio.component.js +2 -2
  747. package/dist/components/radio/radio.js +3 -3
  748. package/dist/components/radio-group/radio-group.component.js +2 -2
  749. package/dist/components/radio-group/radio-group.js +3 -3
  750. package/dist/components/scroll-hint/scroll-hint.component.js +4 -4
  751. package/dist/components/scroll-hint/scroll-hint.js +5 -5
  752. package/dist/components/select/select.component.js +8 -8
  753. package/dist/components/select/select.js +9 -9
  754. package/dist/components/site-header/site-header.component.js +5 -5
  755. package/dist/components/site-header/site-header.js +5 -5
  756. package/dist/components/site-navigation/site-navigation.component.js +2 -2
  757. package/dist/components/site-navigation/site-navigation.js +2 -2
  758. package/dist/components/skeleton/skeleton.component.js +2 -2
  759. package/dist/components/skeleton/skeleton.js +3 -3
  760. package/dist/components/slider/slider.component.js +2 -2
  761. package/dist/components/slider/slider.js +3 -3
  762. package/dist/components/spatial-picker/spatial-picker.component.js +10 -10
  763. package/dist/components/spatial-picker/spatial-picker.js +11 -11
  764. package/dist/components/status-indicator/status-indicator.component.js +2 -2
  765. package/dist/components/status-indicator/status-indicator.js +3 -3
  766. package/dist/components/stepper/stepper.component.js +2 -2
  767. package/dist/components/stepper/stepper.js +3 -3
  768. package/dist/components/stepper-step/stepper-step.component.js +4 -4
  769. package/dist/components/stepper-step/stepper-step.js +5 -5
  770. package/dist/components/tab/tab.component.js +4 -4
  771. package/dist/components/tab/tab.js +5 -5
  772. package/dist/components/tab-panel/tab-panel.component.js +2 -2
  773. package/dist/components/tab-panel/tab-panel.js +3 -3
  774. package/dist/components/tabs/tabs.component.js +4 -4
  775. package/dist/components/tabs/tabs.js +5 -5
  776. package/dist/components/tag/tag.component.js +4 -4
  777. package/dist/components/tag/tag.js +5 -5
  778. package/dist/components/textarea/textarea.component.js +2 -2
  779. package/dist/components/textarea/textarea.js +3 -3
  780. package/dist/components/time-average-map/time-average-map.component.d.ts +4 -0
  781. package/dist/components/time-average-map/time-average-map.component.js +21 -21
  782. package/dist/components/time-average-map/time-average-map.js +22 -22
  783. package/dist/components/time-series/time-series.component.d.ts +4 -0
  784. package/dist/components/time-series/time-series.component.js +22 -22
  785. package/dist/components/time-series/time-series.controller.d.ts +2 -0
  786. package/dist/components/time-series/time-series.controller.js +1 -1
  787. package/dist/components/time-series/time-series.js +23 -23
  788. package/dist/components/toast/toast.component.js +4 -4
  789. package/dist/components/toast/toast.js +5 -5
  790. package/dist/components/toggle/toggle.component.js +2 -2
  791. package/dist/components/toggle/toggle.js +3 -3
  792. package/dist/components/tooltip/tooltip.component.js +3 -3
  793. package/dist/components/tooltip/tooltip.js +4 -4
  794. package/dist/components/variable-combobox/variable-combobox.component.d.ts +1 -4
  795. package/dist/components/variable-combobox/variable-combobox.component.js +8 -8
  796. package/dist/components/variable-combobox/variable-combobox.js +9 -9
  797. package/dist/components/variable-keyword-search/variable-keyword-search.component.d.ts +1 -4
  798. package/dist/components/variable-keyword-search/variable-keyword-search.component.js +11 -11
  799. package/dist/components/variable-keyword-search/variable-keyword-search.controller.js +3 -3
  800. package/dist/components/variable-keyword-search/variable-keyword-search.js +12 -12
  801. package/dist/custom-elements.json +2426 -2236
  802. package/dist/internal/animate.d.ts +3 -3
  803. package/dist/metadata-catalog/cmr-catalog.d.ts +1 -2
  804. package/dist/metadata-catalog/queries.d.ts +0 -1
  805. package/dist/metadata-catalog/types.d.ts +0 -13
  806. package/dist/react/accordion/index.js +6 -6
  807. package/dist/react/alert/index.js +4 -4
  808. package/dist/react/avatar/index.js +6 -6
  809. package/dist/react/badge/index.js +3 -3
  810. package/dist/react/breadcrumb/index.js +3 -3
  811. package/dist/react/breadcrumbs/index.js +3 -3
  812. package/dist/react/browse-variables/index.js +16 -16
  813. package/dist/react/button/index.js +6 -6
  814. package/dist/react/button-group/index.js +3 -3
  815. package/dist/react/caption/index.js +3 -3
  816. package/dist/react/card/index.js +3 -3
  817. package/dist/react/checkbox/index.js +6 -6
  818. package/dist/react/chip/index.js +3 -3
  819. package/dist/react/combobox/index.js +3 -3
  820. package/dist/react/data-access/index.js +23 -25
  821. package/dist/react/data-grid/index.js +4 -4
  822. package/dist/react/data-rods/index.js +33 -33
  823. package/dist/react/data-subsetter/index.js +41 -41
  824. package/dist/react/data-subsetter-history/index.js +42 -42
  825. package/dist/react/date-picker/index.js +11 -11
  826. package/dist/react/date-range-slider/index.js +3 -3
  827. package/dist/react/dialog/index.js +9 -9
  828. package/dist/react/divider/index.js +3 -3
  829. package/dist/react/dropdown/index.js +4 -4
  830. package/dist/react/earthdata-login/index.js +13 -13
  831. package/dist/react/file-upload/index.js +3 -3
  832. package/dist/react/icon/index.js +4 -4
  833. package/dist/react/index.d.ts +8 -8
  834. package/dist/react/index.js +191 -191
  835. package/dist/react/input/index.js +6 -6
  836. package/dist/react/loader/index.js +3 -3
  837. package/dist/react/login/index.js +11 -11
  838. package/dist/react/map/index.js +3 -3
  839. package/dist/react/menu/index.js +3 -3
  840. package/dist/react/menu-item/index.js +8 -8
  841. package/dist/react/option/index.js +5 -5
  842. package/dist/react/pagination/index.js +5 -5
  843. package/dist/react/plot/index.js +3 -3
  844. package/dist/react/plot-toolbar/index.js +14 -14
  845. package/dist/react/popup/index.js +3 -3
  846. package/dist/react/progress-bar/index.js +3 -3
  847. package/dist/react/radio/index.js +3 -3
  848. package/dist/react/radio-group/index.js +3 -3
  849. package/dist/react/scroll-hint/index.js +5 -5
  850. package/dist/react/select/index.js +9 -9
  851. package/dist/react/site-header/index.js +6 -6
  852. package/dist/react/site-navigation/index.js +3 -3
  853. package/dist/react/skeleton/index.js +3 -3
  854. package/dist/react/slider/index.js +3 -3
  855. package/dist/react/spatial-picker/index.js +11 -11
  856. package/dist/react/status-indicator/index.js +3 -3
  857. package/dist/react/stepper/index.js +3 -3
  858. package/dist/react/stepper-step/index.js +5 -5
  859. package/dist/react/tab/index.js +5 -5
  860. package/dist/react/tab-panel/index.js +3 -3
  861. package/dist/react/tabs/index.js +5 -5
  862. package/dist/react/tag/index.js +5 -5
  863. package/dist/react/textarea/index.js +3 -3
  864. package/dist/react/time-average-map/index.js +22 -22
  865. package/dist/react/time-series/index.js +23 -23
  866. package/dist/react/toast/index.js +5 -5
  867. package/dist/react/toggle/index.js +3 -3
  868. package/dist/react/tooltip/index.js +4 -4
  869. package/dist/react/variable-combobox/index.js +9 -9
  870. package/dist/react/variable-keyword-search/index.js +12 -12
  871. package/dist/terra-ui-components.js +173 -173
  872. package/dist/terra_ui_components-0.0.168-py3-none-any.whl +0 -0
  873. package/dist/terra_ui_components-0.0.168.tar.gz +0 -0
  874. package/dist/types/vue/index.d.ts +623 -611
  875. package/dist/utilities/mimetypes.d.ts +1 -1
  876. package/dist/utilities/mimetypes.js +1 -1
  877. package/dist/vscode.html-custom-data.json +321 -315
  878. package/dist/web-types.json +1599 -1575
  879. package/package.json +1 -1
  880. package/cdn/chunks/chunk.22JAM2GR.js +0 -149
  881. package/cdn/chunks/chunk.2KSTLEEW.js +0 -19
  882. package/cdn/chunks/chunk.2MOKVZJ5.js +0 -110
  883. package/cdn/chunks/chunk.2MRTLI7C.js +0 -29
  884. package/cdn/chunks/chunk.2OYHOPUN.js +0 -29
  885. package/cdn/chunks/chunk.2W6MOIKV.js +0 -36
  886. package/cdn/chunks/chunk.2ZAILZIZ.js +0 -29
  887. package/cdn/chunks/chunk.34GKSDDH.js +0 -29
  888. package/cdn/chunks/chunk.35NWYWPA.js +0 -610
  889. package/cdn/chunks/chunk.3DZICDY5.js +0 -19
  890. package/cdn/chunks/chunk.3EEC7I6T.js +0 -77
  891. package/cdn/chunks/chunk.3HQ5B2XG.js +0 -60
  892. package/cdn/chunks/chunk.3KF4JV5X.js +0 -19
  893. package/cdn/chunks/chunk.3OCLA6PR.js +0 -113
  894. package/cdn/chunks/chunk.3PYSUHMX.js +0 -74
  895. package/cdn/chunks/chunk.3RYHRIU7.js +0 -47
  896. package/cdn/chunks/chunk.3SO4K6Y3.js +0 -355
  897. package/cdn/chunks/chunk.3T7254VH.js +0 -1002
  898. package/cdn/chunks/chunk.3X2FJVEK.js +0 -99
  899. package/cdn/chunks/chunk.3YIIQKB4.js +0 -29
  900. package/cdn/chunks/chunk.4E526L3E.js +0 -29
  901. package/cdn/chunks/chunk.4JULN6G5.js +0 -29
  902. package/cdn/chunks/chunk.56M3T4SS.js +0 -19
  903. package/cdn/chunks/chunk.5RFPNO6G.js +0 -19
  904. package/cdn/chunks/chunk.5RYT4QNM.js +0 -157
  905. package/cdn/chunks/chunk.5VTC5O3H.js +0 -29
  906. package/cdn/chunks/chunk.5XLABLQB.js +0 -276
  907. package/cdn/chunks/chunk.66SSQP45.js +0 -19
  908. package/cdn/chunks/chunk.67XHQN22.js +0 -19
  909. package/cdn/chunks/chunk.6JBKCS52.js +0 -83
  910. package/cdn/chunks/chunk.6JIAMAMY.js +0 -29
  911. package/cdn/chunks/chunk.6TBKK4LM.js +0 -493
  912. package/cdn/chunks/chunk.6Y4YTK5P.js +0 -238
  913. package/cdn/chunks/chunk.77XDQUES.js +0 -19
  914. package/cdn/chunks/chunk.7FSPBN74.js +0 -99
  915. package/cdn/chunks/chunk.7PS6V6WS.js +0 -1966
  916. package/cdn/chunks/chunk.7SUZRUNK.js +0 -19
  917. package/cdn/chunks/chunk.7T52ILDL.js +0 -599
  918. package/cdn/chunks/chunk.7VUN6GFK.js +0 -29
  919. package/cdn/chunks/chunk.AFC2HLIY.js +0 -19
  920. package/cdn/chunks/chunk.AOBU6O57.js +0 -990
  921. package/cdn/chunks/chunk.AQ3JLCWN.js +0 -165
  922. package/cdn/chunks/chunk.ATCGQBQH.js +0 -19
  923. package/cdn/chunks/chunk.B3EEU2CI.js +0 -29
  924. package/cdn/chunks/chunk.B4TQIGEX.js +0 -19
  925. package/cdn/chunks/chunk.B526UDNH.js +0 -29
  926. package/cdn/chunks/chunk.BFVSGVAT.js +0 -19
  927. package/cdn/chunks/chunk.BJF5R6JW.js +0 -190
  928. package/cdn/chunks/chunk.BMK7DPMC.js +0 -19
  929. package/cdn/chunks/chunk.BNPVRBVC.js +0 -123
  930. package/cdn/chunks/chunk.BPUKB6TK.js +0 -29
  931. package/cdn/chunks/chunk.BRIHWEDS.js +0 -29
  932. package/cdn/chunks/chunk.BUGYJIDA.js +0 -29
  933. package/cdn/chunks/chunk.BY3XMPVV.js +0 -731
  934. package/cdn/chunks/chunk.C4QTAT3W.js +0 -32
  935. package/cdn/chunks/chunk.C7BHHMPD.js +0 -29
  936. package/cdn/chunks/chunk.CCYPCKYP.js +0 -29
  937. package/cdn/chunks/chunk.CE7S2HSD.js +0 -19
  938. package/cdn/chunks/chunk.CHP6L4IZ.js +0 -29
  939. package/cdn/chunks/chunk.CNFKSV5Y.js +0 -41
  940. package/cdn/chunks/chunk.CNQ5DP2Y.js +0 -19
  941. package/cdn/chunks/chunk.CR32YRI3.js +0 -32
  942. package/cdn/chunks/chunk.CV3BFVNC.js +0 -224
  943. package/cdn/chunks/chunk.DBV4CPVA.js +0 -93
  944. package/cdn/chunks/chunk.DKXKWPJK.js +0 -189
  945. package/cdn/chunks/chunk.DLQNZ2FX.js +0 -201
  946. package/cdn/chunks/chunk.DQKC3KIY.js +0 -19
  947. package/cdn/chunks/chunk.DVUHMHS7.js +0 -77
  948. package/cdn/chunks/chunk.DYNAESKX.js +0 -32
  949. package/cdn/chunks/chunk.DZJULA3U.js +0 -33858
  950. package/cdn/chunks/chunk.EEBXXJ5S.js +0 -19
  951. package/cdn/chunks/chunk.EGTBQ75C.js +0 -279
  952. package/cdn/chunks/chunk.ERLTY6RD.js +0 -32
  953. package/cdn/chunks/chunk.ERM35NF4.js +0 -93
  954. package/cdn/chunks/chunk.ESRB43Y5.js +0 -616
  955. package/cdn/chunks/chunk.F4EH5N56.js +0 -33
  956. package/cdn/chunks/chunk.FLBSTQ3K.js +0 -19
  957. package/cdn/chunks/chunk.FPAJGJR7.js +0 -35
  958. package/cdn/chunks/chunk.FQMP346K.js +0 -19
  959. package/cdn/chunks/chunk.FXITFED3.js +0 -37
  960. package/cdn/chunks/chunk.FXM6K5HM.js +0 -217
  961. package/cdn/chunks/chunk.G6Z24R6Y.js +0 -19
  962. package/cdn/chunks/chunk.GCKUWBFX.js +0 -477
  963. package/cdn/chunks/chunk.GEBLYMYM.js +0 -264
  964. package/cdn/chunks/chunk.GN2ZQBKO.js +0 -34
  965. package/cdn/chunks/chunk.HFTGBEXB.js +0 -188
  966. package/cdn/chunks/chunk.HHPVOMGD.js +0 -278
  967. package/cdn/chunks/chunk.HPJ222W5.js +0 -33
  968. package/cdn/chunks/chunk.HV5AHGSZ.js +0 -288
  969. package/cdn/chunks/chunk.HXT3MQZB.js +0 -86
  970. package/cdn/chunks/chunk.HYTFGYES.js +0 -524
  971. package/cdn/chunks/chunk.HZLKJ66W.js +0 -29
  972. package/cdn/chunks/chunk.I6RAXH53.js +0 -19
  973. package/cdn/chunks/chunk.IJQLOBAC.js +0 -132
  974. package/cdn/chunks/chunk.ISYLWUTX.js +0 -19
  975. package/cdn/chunks/chunk.ITCNMUXT.js +0 -56
  976. package/cdn/chunks/chunk.IWVNVNRD.js +0 -134
  977. package/cdn/chunks/chunk.J3Z3NPJ4.js +0 -134
  978. package/cdn/chunks/chunk.J6VLXGTF.js +0 -36
  979. package/cdn/chunks/chunk.J7I3DOXG.js +0 -272
  980. package/cdn/chunks/chunk.JBRXER73.js +0 -19
  981. package/cdn/chunks/chunk.JGEML6NJ.js +0 -30
  982. package/cdn/chunks/chunk.JK27J74D.js +0 -62
  983. package/cdn/chunks/chunk.K7YIOV7T.js +0 -19
  984. package/cdn/chunks/chunk.KCZYTXMI.js +0 -39
  985. package/cdn/chunks/chunk.KD6G7ERX.js +0 -68
  986. package/cdn/chunks/chunk.KGCLCQ7X.js +0 -60
  987. package/cdn/chunks/chunk.KILIHVMF.js +0 -32
  988. package/cdn/chunks/chunk.KMCDDWE5.js +0 -35
  989. package/cdn/chunks/chunk.KU5FXVEU.js +0 -19
  990. package/cdn/chunks/chunk.KWBRNY25.js +0 -19
  991. package/cdn/chunks/chunk.KXBA6WIZ.js +0 -904
  992. package/cdn/chunks/chunk.L2NSE4OV.js +0 -19
  993. package/cdn/chunks/chunk.L4G7AM4D.js +0 -19
  994. package/cdn/chunks/chunk.LCNNIIGG.js +0 -372
  995. package/cdn/chunks/chunk.LE77IFIT.js +0 -29
  996. package/cdn/chunks/chunk.LJV444BY.js +0 -19
  997. package/cdn/chunks/chunk.LPUGYJQ6.js +0 -19
  998. package/cdn/chunks/chunk.MGD4I7TI.js +0 -33
  999. package/cdn/chunks/chunk.MGVK6RY6.js +0 -19
  1000. package/cdn/chunks/chunk.MSKQVFVO.js +0 -36
  1001. package/cdn/chunks/chunk.MYXC7VZK.js +0 -19
  1002. package/cdn/chunks/chunk.N2ZLSKRS.js +0 -19
  1003. package/cdn/chunks/chunk.N7Y6PI75.js +0 -19
  1004. package/cdn/chunks/chunk.NBYFCLIA.js +0 -230
  1005. package/cdn/chunks/chunk.NCSQNVLT.js +0 -34
  1006. package/cdn/chunks/chunk.NKVAAAFV.js +0 -19
  1007. package/cdn/chunks/chunk.NLM2F46S.js +0 -37
  1008. package/cdn/chunks/chunk.NQ6WTKJ5.js +0 -39
  1009. package/cdn/chunks/chunk.NRJZH24F.js +0 -19
  1010. package/cdn/chunks/chunk.NT5A6ZHT.js +0 -136
  1011. package/cdn/chunks/chunk.NYZK4RJY.js +0 -19
  1012. package/cdn/chunks/chunk.O22V5PWM.js +0 -35
  1013. package/cdn/chunks/chunk.O45AJCZN.js +0 -32
  1014. package/cdn/chunks/chunk.O5BUI6HD.js +0 -499
  1015. package/cdn/chunks/chunk.OBIYKNGD.js +0 -36
  1016. package/cdn/chunks/chunk.OE32JNHX.js +0 -2290
  1017. package/cdn/chunks/chunk.OE6QBUL3.js +0 -151
  1018. package/cdn/chunks/chunk.OIBHUA2X.js +0 -33
  1019. package/cdn/chunks/chunk.ONZYR5V7.js +0 -19
  1020. package/cdn/chunks/chunk.OTBLJV2P.js +0 -19
  1021. package/cdn/chunks/chunk.OWBCL4YY.js +0 -92
  1022. package/cdn/chunks/chunk.OWOOYBL5.js +0 -621
  1023. package/cdn/chunks/chunk.OYDCM6EP.js +0 -19
  1024. package/cdn/chunks/chunk.P4OWV3H2.js +0 -412
  1025. package/cdn/chunks/chunk.PLP3BQV2.js +0 -29
  1026. package/cdn/chunks/chunk.PMUKNJQB.js +0 -357
  1027. package/cdn/chunks/chunk.PUDKOG7O.js +0 -19
  1028. package/cdn/chunks/chunk.PVPOTYBO.js +0 -29
  1029. package/cdn/chunks/chunk.Q67OTTO2.js +0 -145
  1030. package/cdn/chunks/chunk.QB7PKQGX.js +0 -32
  1031. package/cdn/chunks/chunk.QHPWQ6EU.js +0 -234
  1032. package/cdn/chunks/chunk.QIALAQUY.js +0 -19
  1033. package/cdn/chunks/chunk.QMAOK6H7.js +0 -287
  1034. package/cdn/chunks/chunk.QN47HJMJ.js +0 -99
  1035. package/cdn/chunks/chunk.QPO4FJDV.js +0 -19
  1036. package/cdn/chunks/chunk.QTCDR4K5.js +0 -19
  1037. package/cdn/chunks/chunk.QZA56TJF.js +0 -83
  1038. package/cdn/chunks/chunk.R2CKSIEB.js +0 -302
  1039. package/cdn/chunks/chunk.R3ELIEXH.js +0 -158
  1040. package/cdn/chunks/chunk.RESQSJZW.js +0 -19
  1041. package/cdn/chunks/chunk.RLB5ZGN3.js +0 -2243
  1042. package/cdn/chunks/chunk.RPIMP5VU.js +0 -29
  1043. package/cdn/chunks/chunk.RRIBXI6T.js +0 -662
  1044. package/cdn/chunks/chunk.RVVT6D2O.js +0 -32
  1045. package/cdn/chunks/chunk.RWRHKJV7.js +0 -29
  1046. package/cdn/chunks/chunk.S6HRHLBY.js +0 -29
  1047. package/cdn/chunks/chunk.SBRPQN46.js +0 -239
  1048. package/cdn/chunks/chunk.SBV4CE52.js +0 -293
  1049. package/cdn/chunks/chunk.SCVPK7ZI.js +0 -19
  1050. package/cdn/chunks/chunk.SGVXOEMD.js +0 -359
  1051. package/cdn/chunks/chunk.SOL4KQRB.js +0 -32
  1052. package/cdn/chunks/chunk.STIIRCSR.js +0 -32
  1053. package/cdn/chunks/chunk.SVWVRXE5.js +0 -19
  1054. package/cdn/chunks/chunk.T4EQTEDI.js +0 -79
  1055. package/cdn/chunks/chunk.TAVW4BSX.js +0 -231
  1056. package/cdn/chunks/chunk.TCVQUZH3.js +0 -19
  1057. package/cdn/chunks/chunk.TGA7THVX.js +0 -32
  1058. package/cdn/chunks/chunk.TLGXE7WV.js +0 -52
  1059. package/cdn/chunks/chunk.TO3IZDTY.js +0 -435
  1060. package/cdn/chunks/chunk.TU5LEWLH.js +0 -78
  1061. package/cdn/chunks/chunk.UCYLBWS6.js +0 -19
  1062. package/cdn/chunks/chunk.UGVKO2F3.js +0 -29
  1063. package/cdn/chunks/chunk.UMXEOKQR.js +0 -29
  1064. package/cdn/chunks/chunk.UQ3KQHGM.js +0 -29
  1065. package/cdn/chunks/chunk.UXW4BGB3.js +0 -35
  1066. package/cdn/chunks/chunk.UZO2S5ZV.js +0 -55346
  1067. package/cdn/chunks/chunk.UZUUSYPD.js +0 -19
  1068. package/cdn/chunks/chunk.V5RXILK4.js +0 -19
  1069. package/cdn/chunks/chunk.VKGMZPCA.js +0 -19
  1070. package/cdn/chunks/chunk.VMITYTMW.js +0 -29
  1071. package/cdn/chunks/chunk.VOHWSUS6.js +0 -19
  1072. package/cdn/chunks/chunk.VRFTM5EZ.js +0 -33
  1073. package/cdn/chunks/chunk.VW4JRARC.js +0 -19
  1074. package/cdn/chunks/chunk.W2L4LFHP.js +0 -538
  1075. package/cdn/chunks/chunk.WIHIKDOO.js +0 -19
  1076. package/cdn/chunks/chunk.WIVXANPA.js +0 -1056
  1077. package/cdn/chunks/chunk.WJ4RUTUN.js +0 -19
  1078. package/cdn/chunks/chunk.WUS3RA7A.js +0 -259
  1079. package/cdn/chunks/chunk.XHDWZUS3.js +0 -19
  1080. package/cdn/chunks/chunk.XXKZMY2K.js +0 -19
  1081. package/cdn/chunks/chunk.XZVBKL46.js +0 -104
  1082. package/cdn/chunks/chunk.YI5QUNXX.js +0 -19
  1083. package/cdn/chunks/chunk.YIJM5IYA.js +0 -32
  1084. package/cdn/chunks/chunk.YIYWTQKE.js +0 -32
  1085. package/cdn/chunks/chunk.YLEDVKIQ.js +0 -155
  1086. package/cdn/chunks/chunk.YQWDPYX2.js +0 -71
  1087. package/cdn/chunks/chunk.YTSNCCCN.js +0 -752
  1088. package/cdn/chunks/chunk.YTZMHMX3.js +0 -29
  1089. package/cdn/chunks/chunk.Z2DAFDC2.js +0 -49
  1090. package/cdn/chunks/chunk.Z4LEEFSD.js +0 -19
  1091. package/cdn/chunks/chunk.ZGA7FO7P.js +0 -32
  1092. package/cdn/chunks/chunk.ZN6PR35U.js +0 -106
  1093. package/dist/chunks/chunk.2HPCVNQL.js +0 -21
  1094. package/dist/chunks/chunk.2OT2UXF4.js +0 -11
  1095. package/dist/chunks/chunk.32NG2VNQ.js +0 -11
  1096. package/dist/chunks/chunk.36JXOS6Y.js +0 -21
  1097. package/dist/chunks/chunk.3CCSEGFN.js +0 -21
  1098. package/dist/chunks/chunk.3GSDEVDN.js +0 -52
  1099. package/dist/chunks/chunk.3JAVPASP.js +0 -609
  1100. package/dist/chunks/chunk.3L4WRUGE.js +0 -74
  1101. package/dist/chunks/chunk.3NOU5S4K.js +0 -91
  1102. package/dist/chunks/chunk.3RMARKUW.js +0 -24
  1103. package/dist/chunks/chunk.3SVUDGSO.js +0 -11
  1104. package/dist/chunks/chunk.3WCZNEVP.js +0 -52
  1105. package/dist/chunks/chunk.3XVU2CMW.js +0 -25
  1106. package/dist/chunks/chunk.42RWQXVF.js +0 -11
  1107. package/dist/chunks/chunk.44B2QB57.js +0 -11
  1108. package/dist/chunks/chunk.44C2RMYG.js +0 -345
  1109. package/dist/chunks/chunk.4KI6GHHX.js +0 -11
  1110. package/dist/chunks/chunk.4TO6RQDT.js +0 -11
  1111. package/dist/chunks/chunk.4UBHRRUU.js +0 -220
  1112. package/dist/chunks/chunk.4YCY2DV3.js +0 -21
  1113. package/dist/chunks/chunk.4YYCBOVI.js +0 -11
  1114. package/dist/chunks/chunk.524NKNPG.js +0 -39
  1115. package/dist/chunks/chunk.5EJAFKZ7.js +0 -21
  1116. package/dist/chunks/chunk.5V4FAK7C.js +0 -11
  1117. package/dist/chunks/chunk.5YSU3HL7.js +0 -33
  1118. package/dist/chunks/chunk.64SWCNHI.js +0 -262
  1119. package/dist/chunks/chunk.6AVQFT4P.js +0 -48
  1120. package/dist/chunks/chunk.6ITSS4GH.js +0 -11
  1121. package/dist/chunks/chunk.6KCKKNYD.js +0 -48
  1122. package/dist/chunks/chunk.6QSTETYN.js +0 -11
  1123. package/dist/chunks/chunk.6TW6DP7W.js +0 -11
  1124. package/dist/chunks/chunk.74HB6B26.js +0 -27
  1125. package/dist/chunks/chunk.7FZCDHMN.js +0 -11
  1126. package/dist/chunks/chunk.7MXXFSLC.js +0 -24
  1127. package/dist/chunks/chunk.7QOQXG7V.js +0 -280
  1128. package/dist/chunks/chunk.A54SXMF6.js +0 -11
  1129. package/dist/chunks/chunk.A75XMZQF.js +0 -91
  1130. package/dist/chunks/chunk.A7AZEOWS.js +0 -21
  1131. package/dist/chunks/chunk.ABJSJSVR.js +0 -451
  1132. package/dist/chunks/chunk.ACW2XVAY.js +0 -29
  1133. package/dist/chunks/chunk.AJY5IKAP.js +0 -596
  1134. package/dist/chunks/chunk.ANAQ3U23.js +0 -11
  1135. package/dist/chunks/chunk.ANLBJK37.js +0 -25
  1136. package/dist/chunks/chunk.AYMNVM3K.js +0 -422
  1137. package/dist/chunks/chunk.AYXVVA52.js +0 -24
  1138. package/dist/chunks/chunk.B7H4U76E.js +0 -21
  1139. package/dist/chunks/chunk.BBCOXXME.js +0 -75
  1140. package/dist/chunks/chunk.BENDF532.js +0 -11
  1141. package/dist/chunks/chunk.BRDHFOSA.js +0 -11
  1142. package/dist/chunks/chunk.C24Z45OK.js +0 -58
  1143. package/dist/chunks/chunk.C5ZKA7VW.js +0 -25
  1144. package/dist/chunks/chunk.CBMMWN53.js +0 -11
  1145. package/dist/chunks/chunk.CIDFDZRW.js +0 -230
  1146. package/dist/chunks/chunk.CTUS2BRJ.js +0 -21
  1147. package/dist/chunks/chunk.CVM4QQIH.js +0 -11
  1148. package/dist/chunks/chunk.CWP2OCTX.js +0 -28
  1149. package/dist/chunks/chunk.DBWF2K7N.js +0 -24
  1150. package/dist/chunks/chunk.DFOY2RXN.js +0 -121
  1151. package/dist/chunks/chunk.DKRMDAXH.js +0 -21
  1152. package/dist/chunks/chunk.DLG3ISTI.js +0 -345
  1153. package/dist/chunks/chunk.DO6GYJM7.js +0 -344
  1154. package/dist/chunks/chunk.DS2GXZ4J.js +0 -64
  1155. package/dist/chunks/chunk.EFW6UAEH.js +0 -11
  1156. package/dist/chunks/chunk.ENBFHQ3L.js +0 -291
  1157. package/dist/chunks/chunk.EPPQF7KD.js +0 -24
  1158. package/dist/chunks/chunk.EQ6VDEGW.js +0 -11
  1159. package/dist/chunks/chunk.ET4GP57T.js +0 -213
  1160. package/dist/chunks/chunk.ETNOCBXV.js +0 -259
  1161. package/dist/chunks/chunk.F5A3CI7J.js +0 -21
  1162. package/dist/chunks/chunk.F6YXPWWD.js +0 -11
  1163. package/dist/chunks/chunk.FDY3GDIO.js +0 -21
  1164. package/dist/chunks/chunk.FGIV23AN.js +0 -29
  1165. package/dist/chunks/chunk.FKS74UUE.js +0 -21
  1166. package/dist/chunks/chunk.FQFJCEW7.js +0 -402
  1167. package/dist/chunks/chunk.FQJUCC6Z.js +0 -180
  1168. package/dist/chunks/chunk.FTQDFGAR.js +0 -28
  1169. package/dist/chunks/chunk.GRBQETKI.js +0 -21
  1170. package/dist/chunks/chunk.GT6B4BF3.js +0 -11
  1171. package/dist/chunks/chunk.GTMUZKD3.js +0 -11
  1172. package/dist/chunks/chunk.HARVA2IP.js +0 -21
  1173. package/dist/chunks/chunk.HK5E3MB4.js +0 -11
  1174. package/dist/chunks/chunk.HOMKMLDI.js +0 -986
  1175. package/dist/chunks/chunk.HSGP3NJV.js +0 -112
  1176. package/dist/chunks/chunk.HUDMN5IZ.js +0 -11
  1177. package/dist/chunks/chunk.HWE36KUL.js +0 -214
  1178. package/dist/chunks/chunk.IJQWDDTY.js +0 -21
  1179. package/dist/chunks/chunk.IKMWLDCT.js +0 -21
  1180. package/dist/chunks/chunk.IP6RYMMF.js +0 -11
  1181. package/dist/chunks/chunk.IW47OQDJ.js +0 -27
  1182. package/dist/chunks/chunk.IYF6RYNW.js +0 -11
  1183. package/dist/chunks/chunk.JCQVYTHW.js +0 -21
  1184. package/dist/chunks/chunk.JHMPD5S3.js +0 -11
  1185. package/dist/chunks/chunk.JK62FCBM.js +0 -277
  1186. package/dist/chunks/chunk.JTJTZNBC.js +0 -11
  1187. package/dist/chunks/chunk.K66DWQG7.js +0 -474
  1188. package/dist/chunks/chunk.K6WBYPK4.js +0 -2228
  1189. package/dist/chunks/chunk.K7B5G7VZ.js +0 -484
  1190. package/dist/chunks/chunk.K7QSTEOZ.js +0 -11
  1191. package/dist/chunks/chunk.KTF6ZVQC.js +0 -247
  1192. package/dist/chunks/chunk.KW76EJFU.js +0 -2277
  1193. package/dist/chunks/chunk.LENFD4DV.js +0 -844
  1194. package/dist/chunks/chunk.LIJJ2CVM.js +0 -21
  1195. package/dist/chunks/chunk.LPCY54WK.js +0 -11
  1196. package/dist/chunks/chunk.LPYTOTCB.js +0 -124
  1197. package/dist/chunks/chunk.MFCOSXFW.js +0 -21
  1198. package/dist/chunks/chunk.MGDJ2LD5.js +0 -220
  1199. package/dist/chunks/chunk.MICLMHWK.js +0 -11
  1200. package/dist/chunks/chunk.MNZZPXWB.js +0 -11
  1201. package/dist/chunks/chunk.MQVNIT4S.js +0 -973
  1202. package/dist/chunks/chunk.MTAR5BJL.js +0 -153
  1203. package/dist/chunks/chunk.MZ4FDVFI.js +0 -139
  1204. package/dist/chunks/chunk.N363OJZ2.js +0 -89
  1205. package/dist/chunks/chunk.NLK5RRJT.js +0 -11
  1206. package/dist/chunks/chunk.NUD2D7OX.js +0 -11
  1207. package/dist/chunks/chunk.NXYNTUNF.js +0 -24
  1208. package/dist/chunks/chunk.NY5YVZRV.js +0 -11
  1209. package/dist/chunks/chunk.NZNBKBV5.js +0 -11
  1210. package/dist/chunks/chunk.OHLDTKQU.js +0 -21
  1211. package/dist/chunks/chunk.OIS2I2WX.js +0 -11
  1212. package/dist/chunks/chunk.OKCQAPIO.js +0 -11
  1213. package/dist/chunks/chunk.ON3YVM46.js +0 -138
  1214. package/dist/chunks/chunk.ORHU4TOP.js +0 -25
  1215. package/dist/chunks/chunk.OVF3LEJ5.js +0 -61
  1216. package/dist/chunks/chunk.OVYETBCA.js +0 -11
  1217. package/dist/chunks/chunk.OYOOZ5CY.js +0 -20
  1218. package/dist/chunks/chunk.PHNX45ET.js +0 -93
  1219. package/dist/chunks/chunk.PNW5CV46.js +0 -11
  1220. package/dist/chunks/chunk.POB3HHX4.js +0 -11
  1221. package/dist/chunks/chunk.PUQIBC6P.js +0 -525
  1222. package/dist/chunks/chunk.PX7JSWL7.js +0 -67
  1223. package/dist/chunks/chunk.QHDDMY67.js +0 -21
  1224. package/dist/chunks/chunk.QP5XM7WT.js +0 -720
  1225. package/dist/chunks/chunk.QQMW6GT2.js +0 -1045
  1226. package/dist/chunks/chunk.QQWZTESV.js +0 -21
  1227. package/dist/chunks/chunk.QVJT4Q7B.js +0 -24
  1228. package/dist/chunks/chunk.QXGAOOH7.js +0 -206
  1229. package/dist/chunks/chunk.R4KWN2HX.js +0 -443
  1230. package/dist/chunks/chunk.RBEXUNHZ.js +0 -581
  1231. package/dist/chunks/chunk.REHHQZMY.js +0 -11
  1232. package/dist/chunks/chunk.RJRVYB3F.js +0 -83
  1233. package/dist/chunks/chunk.RNNZRROI.js +0 -85
  1234. package/dist/chunks/chunk.RQHF447H.js +0 -123
  1235. package/dist/chunks/chunk.RWTN6VR5.js +0 -11
  1236. package/dist/chunks/chunk.RYP4SV66.js +0 -11
  1237. package/dist/chunks/chunk.S5JREWKQ.js +0 -21
  1238. package/dist/chunks/chunk.S65PVGZW.js +0 -11
  1239. package/dist/chunks/chunk.SJVXFIWD.js +0 -43
  1240. package/dist/chunks/chunk.SMIEZHJ2.js +0 -11
  1241. package/dist/chunks/chunk.SWGKKZUD.js +0 -27
  1242. package/dist/chunks/chunk.SYBFIXLK.js +0 -11
  1243. package/dist/chunks/chunk.SZAADZKK.js +0 -252
  1244. package/dist/chunks/chunk.T7XC2TPO.js +0 -43
  1245. package/dist/chunks/chunk.TFN2HUUW.js +0 -78
  1246. package/dist/chunks/chunk.TJ5S7Y7N.js +0 -11
  1247. package/dist/chunks/chunk.TKTDW7K4.js +0 -592
  1248. package/dist/chunks/chunk.TXGZZ232.js +0 -26
  1249. package/dist/chunks/chunk.U22BJ3HS.js +0 -24
  1250. package/dist/chunks/chunk.U6JA4K4J.js +0 -24
  1251. package/dist/chunks/chunk.UCXSNYW7.js +0 -24
  1252. package/dist/chunks/chunk.UHIHGVN4.js +0 -31
  1253. package/dist/chunks/chunk.ULEUXMBD.js +0 -731
  1254. package/dist/chunks/chunk.UNJJ4K5X.js +0 -24
  1255. package/dist/chunks/chunk.UNO3VVAK.js +0 -11
  1256. package/dist/chunks/chunk.UU2S72KN.js +0 -30
  1257. package/dist/chunks/chunk.V7PI7GT2.js +0 -21
  1258. package/dist/chunks/chunk.VBCVUNIU.js +0 -67
  1259. package/dist/chunks/chunk.VBWBPTPK.js +0 -230
  1260. package/dist/chunks/chunk.VIBAVNO2.js +0 -11
  1261. package/dist/chunks/chunk.VOGQH6VT.js +0 -28
  1262. package/dist/chunks/chunk.VWZX32FU.js +0 -145
  1263. package/dist/chunks/chunk.VYXIWUES.js +0 -11
  1264. package/dist/chunks/chunk.W52CDXRW.js +0 -11
  1265. package/dist/chunks/chunk.WBEYZIEP.js +0 -24
  1266. package/dist/chunks/chunk.WFDKB6ZX.js +0 -21
  1267. package/dist/chunks/chunk.WHFZNJAZ.js +0 -409
  1268. package/dist/chunks/chunk.WJT6IE7Z.js +0 -28
  1269. package/dist/chunks/chunk.WPBID72S.js +0 -11
  1270. package/dist/chunks/chunk.WPUBNP6J.js +0 -355
  1271. package/dist/chunks/chunk.WUSLL2E3.js +0 -86
  1272. package/dist/chunks/chunk.WWDJTRJH.js +0 -264
  1273. package/dist/chunks/chunk.X4HRSJ4F.js +0 -11
  1274. package/dist/chunks/chunk.XA65IBXV.js +0 -11
  1275. package/dist/chunks/chunk.XB6CG3ZS.js +0 -24
  1276. package/dist/chunks/chunk.XBRKSIRT.js +0 -97
  1277. package/dist/chunks/chunk.XC6HL6VP.js +0 -101
  1278. package/dist/chunks/chunk.XHJJAZ6W.js +0 -11
  1279. package/dist/chunks/chunk.XIFDLBOB.js +0 -25
  1280. package/dist/chunks/chunk.XIXMPQO2.js +0 -21
  1281. package/dist/chunks/chunk.XMGVOXBG.js +0 -11
  1282. package/dist/chunks/chunk.XQHIGAKF.js +0 -1122
  1283. package/dist/chunks/chunk.XQVFPFWL.js +0 -245
  1284. package/dist/chunks/chunk.XYQ5OEQP.js +0 -190
  1285. package/dist/chunks/chunk.YDUPN3OG.js +0 -180
  1286. package/dist/chunks/chunk.YEL7UCDK.js +0 -477
  1287. package/dist/chunks/chunk.YIGP5HKO.js +0 -26
  1288. package/dist/chunks/chunk.YLUFHBYX.js +0 -21
  1289. package/dist/chunks/chunk.YP3AWZ7P.js +0 -11
  1290. package/dist/chunks/chunk.YY5TU7AJ.js +0 -21
  1291. package/dist/chunks/chunk.Z7RT3KHG.js +0 -24
  1292. package/dist/chunks/chunk.ZDDLFJFZ.js +0 -27
  1293. package/dist/chunks/chunk.ZHCDFME3.js +0 -272
  1294. package/dist/chunks/chunk.ZJISEOPZ.js +0 -11
  1295. package/dist/chunks/chunk.ZKLP6636.js +0 -180
  1296. package/dist/chunks/chunk.ZLLSS62V.js +0 -21
  1297. package/dist/chunks/chunk.ZLZJXLHD.js +0 -21
  1298. package/dist/chunks/chunk.ZVEB7QG2.js +0 -143
  1299. package/dist/terra_ui_components-0.0.167-py3-none-any.whl +0 -0
  1300. package/dist/terra_ui_components-0.0.167.tar.gz +0 -0
@@ -0,0 +1,2210 @@
1
+ import {
2
+ date_picker_styles_default
3
+ } from "./chunk.6BJRMCOW.js";
4
+ import {
5
+ TerraInput
6
+ } from "./chunk.RJ3ZDWLV.js";
7
+ import {
8
+ TerraDropdown
9
+ } from "./chunk.OESICSHC.js";
10
+ import {
11
+ TerraButton
12
+ } from "./chunk.HARXTWRK.js";
13
+ import {
14
+ TerraElement,
15
+ component_styles_default
16
+ } from "./chunk.JEAP7TNI.js";
17
+ import {
18
+ __decorateClass
19
+ } from "./chunk.SHKVBVTI.js";
20
+
21
+ // src/components/date-picker/date-picker.component.ts
22
+ import { property, state, query } from "lit/decorators.js";
23
+ import { html } from "lit";
24
+ import { createRef, ref } from "lit/directives/ref.js";
25
+ import { isValid } from "date-fns";
26
+ var TerraDatePicker = class extends TerraElement {
27
+ constructor() {
28
+ super();
29
+ this.range = false;
30
+ this.hideLabel = false;
31
+ this.label = "Select Date";
32
+ this.helpText = "";
33
+ this.startHelpText = "";
34
+ this.endHelpText = "";
35
+ this.showPresets = false;
36
+ this.presets = [];
37
+ this.enableTime = false;
38
+ this.inline = false;
39
+ this.splitInputs = false;
40
+ this.placeholder = "Select Date";
41
+ this.startPlaceholder = "Start Date";
42
+ this.endPlaceholder = "End Date";
43
+ this.role = "group";
44
+ this.ariaLabel = "Date picker";
45
+ this.hideClearAll = false;
46
+ this.clearAllLabel = "Clear Dates";
47
+ this.isOpen = false;
48
+ this.leftMonth = /* @__PURE__ */ new Date();
49
+ this.rightMonth = /* @__PURE__ */ new Date();
50
+ this.selectedStart = null;
51
+ this.selectedEnd = null;
52
+ this.hoverDate = null;
53
+ this.isSelectingRange = false;
54
+ this.showLeftMonthDropdown = false;
55
+ this.showRightMonthDropdown = false;
56
+ this.startHour = 0;
57
+ this.startMinute = 0;
58
+ this.startSecond = 0;
59
+ this.endHour = 23;
60
+ this.endMinute = 59;
61
+ this.endSecond = 59;
62
+ this.selectedDates = {
63
+ startDate: (/* @__PURE__ */ new Date()).toString(),
64
+ endDate: (/* @__PURE__ */ new Date()).toString()
65
+ };
66
+ this.dropdownRef = createRef();
67
+ this.DAYS = ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"];
68
+ this.MONTHS = [
69
+ "January",
70
+ "February",
71
+ "March",
72
+ "April",
73
+ "May",
74
+ "June",
75
+ "July",
76
+ "August",
77
+ "September",
78
+ "October",
79
+ "November",
80
+ "December"
81
+ ];
82
+ this.initializePresets();
83
+ }
84
+ /**
85
+ * Parse a date string (YYYY-MM-DD or ISO datetime) as a local date, avoiding timezone issues.
86
+ * When you do `new Date("2024-03-20")`, JavaScript interprets it as UTC midnight,
87
+ * which can cause off-by-one day errors when using getDate() in local timezone.
88
+ * This function parses the date as a local date instead.
89
+ *
90
+ * When enableTime is true, datetime strings are parsed as UTC to match API min/max dates.
91
+ */
92
+ parseLocalDate(dateString) {
93
+ const dateOnlyPattern = /^\d{4}-\d{2}-\d{2}$/;
94
+ if (dateOnlyPattern.test(dateString)) {
95
+ const [year, month, day] = dateString.split("-").map(Number);
96
+ if (this.enableTime) {
97
+ return new Date(Date.UTC(year, month - 1, day, 0, 0, 0));
98
+ }
99
+ return new Date(year, month - 1, day);
100
+ }
101
+ const dateTimePattern = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}$/;
102
+ if (dateTimePattern.test(dateString)) {
103
+ const [datePart, timePart] = dateString.split("T");
104
+ const [year, month, day] = datePart.split("-").map(Number);
105
+ const [hours, minutes, seconds] = timePart.split(":").map(Number);
106
+ return new Date(Date.UTC(year, month - 1, day, hours, minutes, seconds));
107
+ }
108
+ return new Date(dateString);
109
+ }
110
+ /**
111
+ * Check if two dates are in the same calendar month and year
112
+ */
113
+ isSameMonth(date1, date2) {
114
+ if (this.enableTime) {
115
+ return date1.getUTCFullYear() === date2.getUTCFullYear() && date1.getUTCMonth() === date2.getUTCMonth();
116
+ }
117
+ return date1.getFullYear() === date2.getFullYear() && date1.getMonth() === date2.getMonth();
118
+ }
119
+ /**
120
+ * Check if a date's month/year matches a given month Date
121
+ */
122
+ isDateInMonth(date, monthDate) {
123
+ if (this.enableTime) {
124
+ return date.getUTCFullYear() === monthDate.getUTCFullYear() && date.getUTCMonth() === monthDate.getUTCMonth();
125
+ }
126
+ return date.getFullYear() === monthDate.getFullYear() && date.getMonth() === monthDate.getMonth();
127
+ }
128
+ getBounds() {
129
+ const min = this.minDate ? this.parseLocalDate(this.minDate) : void 0;
130
+ const max = this.maxDate ? this.parseLocalDate(this.maxDate) : void 0;
131
+ return { min, max };
132
+ }
133
+ doesRangeOverlapBounds(range) {
134
+ const { startDate, endDate } = range;
135
+ const { min, max } = this.getBounds();
136
+ if (!this.range) {
137
+ if (!startDate)
138
+ return false;
139
+ if (min && startDate < min)
140
+ return false;
141
+ if (max && startDate > max)
142
+ return false;
143
+ return true;
144
+ }
145
+ const start = startDate != null ? startDate : /* @__PURE__ */ new Date(-864e13);
146
+ const end = endDate != null ? endDate : /* @__PURE__ */ new Date(864e13);
147
+ if (!min && !max)
148
+ return true;
149
+ const windowStart = min != null ? min : /* @__PURE__ */ new Date(-864e13);
150
+ const windowEnd = max != null ? max : /* @__PURE__ */ new Date(864e13);
151
+ return end >= windowStart && start <= windowEnd;
152
+ }
153
+ isPresetWithinBounds(range) {
154
+ return this.doesRangeOverlapBounds(range);
155
+ }
156
+ get filteredPresets() {
157
+ return (this.presets || []).filter(
158
+ (preset) => this.isPresetWithinBounds(preset.getValue())
159
+ );
160
+ }
161
+ open() {
162
+ this.isOpen = true;
163
+ if (this.maxDate && !this.selectedStart && !this.selectedEnd) {
164
+ const max = this.parseLocalDate(this.maxDate);
165
+ if (!isNaN(max.getTime())) {
166
+ if (this.range) {
167
+ this.rightMonth = new Date(max);
168
+ const left = new Date(max);
169
+ left.setMonth(left.getMonth() - 1);
170
+ this.leftMonth = left;
171
+ } else {
172
+ this.leftMonth = new Date(max);
173
+ }
174
+ }
175
+ }
176
+ if (!this.inline && this.dropdownRef.value) {
177
+ this.dropdownRef.value.show();
178
+ }
179
+ this.requestUpdate();
180
+ }
181
+ close() {
182
+ this.isOpen = false;
183
+ if (!this.inline && this.dropdownRef.value) {
184
+ this.dropdownRef.value.hide();
185
+ }
186
+ this.requestUpdate();
187
+ }
188
+ /**
189
+ * Clears the selected date(s) and resets the date picker to its initial state.
190
+ */
191
+ clear() {
192
+ this.selectedStart = null;
193
+ this.selectedEnd = null;
194
+ this.hoverDate = null;
195
+ this.isSelectingRange = false;
196
+ this.startHour = 0;
197
+ this.startMinute = 0;
198
+ this.startSecond = 0;
199
+ this.endHour = 23;
200
+ this.endMinute = 59;
201
+ this.endSecond = 59;
202
+ this.clearInputValidation();
203
+ this.requestUpdate();
204
+ this.emitChange();
205
+ }
206
+ setOpen(open) {
207
+ if (open) {
208
+ this.open();
209
+ } else {
210
+ this.close();
211
+ }
212
+ }
213
+ willUpdate(changedProperties) {
214
+ super.willUpdate(changedProperties);
215
+ if (changedProperties.has("inline")) {
216
+ if (this.inline) {
217
+ this.isOpen = true;
218
+ if (this.dropdownRef.value) {
219
+ this.dropdownRef.value.hide();
220
+ }
221
+ }
222
+ }
223
+ if (changedProperties.has("minDate") || changedProperties.has("maxDate")) {
224
+ if (this.maxDate && !this.selectedStart && !this.selectedEnd) {
225
+ const max = this.parseLocalDate(this.maxDate);
226
+ if (!isNaN(max.getTime())) {
227
+ if (this.range) {
228
+ this.rightMonth = new Date(max);
229
+ const left = new Date(max);
230
+ left.setMonth(left.getMonth() - 1);
231
+ this.leftMonth = left;
232
+ } else {
233
+ this.leftMonth = new Date(max);
234
+ }
235
+ }
236
+ }
237
+ }
238
+ if (changedProperties.has("startDate") || changedProperties.has("endDate")) {
239
+ if (this.startDate) {
240
+ const start = this.parseLocalDate(this.startDate);
241
+ if (!isNaN(start.getTime())) {
242
+ this.selectedStart = start;
243
+ if (this.enableTime) {
244
+ this.initializeTimeFromDate(start, true);
245
+ }
246
+ }
247
+ } else {
248
+ this.selectedStart = null;
249
+ }
250
+ if (this.range) {
251
+ if (this.endDate) {
252
+ const end = this.parseLocalDate(this.endDate);
253
+ if (!isNaN(end.getTime())) {
254
+ this.selectedEnd = end;
255
+ if (this.enableTime) {
256
+ this.initializeTimeFromDate(end, false);
257
+ }
258
+ }
259
+ } else {
260
+ this.selectedEnd = null;
261
+ }
262
+ if (this.selectedStart && this.selectedEnd) {
263
+ const isSingleMonthRange = this.isSameMonth(
264
+ this.selectedStart,
265
+ this.selectedEnd
266
+ );
267
+ if (isSingleMonthRange) {
268
+ if (this.isDateInMonth(this.selectedStart, this.leftMonth)) {
269
+ this.leftMonth = new Date(this.selectedStart);
270
+ if (this.isDateInMonth(
271
+ this.selectedStart,
272
+ this.rightMonth
273
+ )) {
274
+ this.rightMonth = new Date(this.selectedStart);
275
+ this.rightMonth.setMonth(
276
+ this.rightMonth.getMonth() + 1
277
+ );
278
+ }
279
+ } else if (this.isDateInMonth(this.selectedStart, this.rightMonth)) {
280
+ this.rightMonth = new Date(this.selectedStart);
281
+ } else {
282
+ this.leftMonth = new Date(this.selectedStart);
283
+ }
284
+ } else {
285
+ this.leftMonth = new Date(this.selectedStart);
286
+ this.rightMonth = new Date(this.selectedEnd);
287
+ }
288
+ } else if (this.selectedStart) {
289
+ this.leftMonth = new Date(this.selectedStart);
290
+ this.rightMonth = new Date(this.leftMonth);
291
+ this.rightMonth.setMonth(this.rightMonth.getMonth() + 1);
292
+ }
293
+ } else {
294
+ if (this.selectedStart) {
295
+ this.leftMonth = new Date(this.selectedStart);
296
+ }
297
+ this.selectedEnd = null;
298
+ }
299
+ }
300
+ }
301
+ initializePresets() {
302
+ if (this.presets.length === 0) {
303
+ this.presets = [
304
+ {
305
+ label: "Today",
306
+ getValue: () => {
307
+ const today = /* @__PURE__ */ new Date();
308
+ return {
309
+ startDate: today,
310
+ endDate: this.range ? today : null
311
+ };
312
+ }
313
+ },
314
+ {
315
+ label: "Yesterday",
316
+ getValue: () => {
317
+ const yesterday = /* @__PURE__ */ new Date();
318
+ yesterday.setDate(yesterday.getDate() - 1);
319
+ return {
320
+ startDate: yesterday,
321
+ endDate: this.range ? yesterday : null
322
+ };
323
+ }
324
+ },
325
+ {
326
+ label: "Last 7 days",
327
+ getValue: () => {
328
+ const end = /* @__PURE__ */ new Date();
329
+ const start = /* @__PURE__ */ new Date();
330
+ start.setDate(start.getDate() - 6);
331
+ return { startDate: start, endDate: end };
332
+ }
333
+ },
334
+ {
335
+ label: "Last 30 days",
336
+ getValue: () => {
337
+ const end = /* @__PURE__ */ new Date();
338
+ const start = /* @__PURE__ */ new Date();
339
+ start.setDate(start.getDate() - 29);
340
+ return { startDate: start, endDate: end };
341
+ }
342
+ },
343
+ {
344
+ label: "Last 6 months",
345
+ getValue: () => {
346
+ const end = /* @__PURE__ */ new Date();
347
+ const start = /* @__PURE__ */ new Date();
348
+ start.setMonth(start.getMonth() - 6);
349
+ return { startDate: start, endDate: end };
350
+ }
351
+ },
352
+ {
353
+ label: "Last year",
354
+ getValue: () => {
355
+ const end = /* @__PURE__ */ new Date();
356
+ const start = /* @__PURE__ */ new Date();
357
+ start.setFullYear(start.getFullYear() - 1);
358
+ return { startDate: start, endDate: end };
359
+ }
360
+ },
361
+ {
362
+ label: "All time",
363
+ getValue: () => {
364
+ const { min, max } = this.getBounds();
365
+ return {
366
+ startDate: min || null,
367
+ endDate: max || null
368
+ };
369
+ }
370
+ }
371
+ ];
372
+ }
373
+ }
374
+ firstUpdated() {
375
+ const params = new URLSearchParams(window.location.search);
376
+ const timeStartParam = params.get("time_start") || this.startDate;
377
+ const timeEndParam = params.get("time_end") || this.endDate;
378
+ if (timeStartParam) {
379
+ this.selectedStart = this.parseLocalDate(timeStartParam);
380
+ this.leftMonth = new Date(this.selectedStart);
381
+ if (this.enableTime) {
382
+ this.initializeTimeFromDate(this.selectedStart, true);
383
+ }
384
+ }
385
+ if (this.range && timeEndParam) {
386
+ this.selectedEnd = this.parseLocalDate(timeEndParam);
387
+ if (this.enableTime) {
388
+ this.initializeTimeFromDate(this.selectedEnd, false);
389
+ }
390
+ if (this.selectedStart && this.selectedEnd) {
391
+ const isSingleMonthRange = this.isSameMonth(
392
+ this.selectedStart,
393
+ this.selectedEnd
394
+ );
395
+ if (isSingleMonthRange) {
396
+ this.rightMonth = new Date(this.selectedStart);
397
+ this.rightMonth.setMonth(this.rightMonth.getMonth() + 1);
398
+ } else {
399
+ this.rightMonth = new Date(this.selectedEnd);
400
+ }
401
+ } else if (this.selectedEnd) {
402
+ this.rightMonth = new Date(this.selectedEnd);
403
+ }
404
+ }
405
+ if (this.range && !timeEndParam) {
406
+ this.rightMonth = new Date(this.leftMonth);
407
+ this.rightMonth.setMonth(this.rightMonth.getMonth() + 1);
408
+ }
409
+ if (this.inline) {
410
+ this.isOpen = true;
411
+ }
412
+ }
413
+ disconnectedCallback() {
414
+ super.disconnectedCallback();
415
+ }
416
+ handleDropdownShow() {
417
+ this.isOpen = true;
418
+ }
419
+ handleDropdownHide() {
420
+ this.isOpen = false;
421
+ }
422
+ formatDisplayDate(date, isStart = true) {
423
+ if (!date)
424
+ return "";
425
+ const format = this.displayFormat || (this.enableTime ? "YYYY-MM-DD HH:mm:ss" : "YYYY-MM-DD");
426
+ if (this.enableTime) {
427
+ const year2 = date.getUTCFullYear();
428
+ const month2 = String(date.getUTCMonth() + 1).padStart(2, "0");
429
+ const day2 = String(date.getUTCDate()).padStart(2, "0");
430
+ const hours = String(isStart ? this.startHour : this.endHour).padStart(
431
+ 2,
432
+ "0"
433
+ );
434
+ const minutes = String(
435
+ isStart ? this.startMinute : this.endMinute
436
+ ).padStart(2, "0");
437
+ const seconds = String(
438
+ isStart ? this.startSecond : this.endSecond
439
+ ).padStart(2, "0");
440
+ return format.replace("YYYY", year2.toString()).replace("MM", month2).replace("DD", day2).replace("HH", hours).replace("mm", minutes).replace("ss", seconds);
441
+ }
442
+ const year = date.getFullYear();
443
+ const month = String(date.getMonth() + 1).padStart(2, "0");
444
+ const day = String(date.getDate()).padStart(2, "0");
445
+ return format.replace("YYYY", year.toString()).replace("MM", month).replace("DD", day);
446
+ }
447
+ getDisplayValue() {
448
+ if (this.range) {
449
+ if (this.selectedStart && this.selectedEnd) {
450
+ return `${this.formatDisplayDate(this.selectedStart, true)} \u2013 ${this.formatDisplayDate(this.selectedEnd, false)}`;
451
+ } else if (this.selectedStart) {
452
+ return this.formatDisplayDate(this.selectedStart, true);
453
+ }
454
+ return "";
455
+ } else {
456
+ return this.selectedStart ? this.formatDisplayDate(this.selectedStart, true) : "";
457
+ }
458
+ }
459
+ getStartDateDisplayValue() {
460
+ return this.selectedStart ? this.formatDisplayDate(this.selectedStart, true) : "";
461
+ }
462
+ getEndDateDisplayValue() {
463
+ return this.selectedEnd ? this.formatDisplayDate(this.selectedEnd, false) : "";
464
+ }
465
+ parseAndFormatDate(dateStr) {
466
+ const trimmed = dateStr.trim();
467
+ if (!trimmed)
468
+ return null;
469
+ const dateOnlyPattern = /^\d{4}-\d{2}-\d{2}$/;
470
+ const dateTimePattern = /^\d{4}-\d{2}-\d{2}[T\s]\d{1,2}:\d{2}(:\d{2})?$/;
471
+ let date;
472
+ if (dateOnlyPattern.test(trimmed)) {
473
+ date = this.parseLocalDate(trimmed);
474
+ } else if (this.enableTime && dateTimePattern.test(trimmed)) {
475
+ const [datePart, timePart] = trimmed.split(/[T\s]+/);
476
+ const [year, month, day] = datePart.split("-").map(Number);
477
+ const timeComponents = timePart.split(":").map(Number);
478
+ const hours = timeComponents[0] || 0;
479
+ const minutes = timeComponents[1] || 0;
480
+ const seconds = timeComponents[2] || 0;
481
+ date = new Date(Date.UTC(year, month - 1, day, hours, minutes, seconds));
482
+ } else {
483
+ date = new Date(trimmed);
484
+ if (!isValid(date)) {
485
+ return null;
486
+ }
487
+ }
488
+ if (!isValid(date)) {
489
+ return null;
490
+ }
491
+ if (this.enableTime) {
492
+ if (dateOnlyPattern.test(trimmed)) {
493
+ return trimmed;
494
+ } else {
495
+ const utcYear = date.getUTCFullYear();
496
+ const utcMonth = date.getUTCMonth() + 1;
497
+ const utcDay = date.getUTCDate();
498
+ const utcHours = date.getUTCHours();
499
+ const utcMinutes = date.getUTCMinutes();
500
+ const utcSeconds = date.getUTCSeconds();
501
+ return `${utcYear}-${String(utcMonth).padStart(2, "0")}-${String(utcDay).padStart(2, "0")}T${String(utcHours).padStart(2, "0")}:${String(utcMinutes).padStart(2, "0")}:${String(utcSeconds).padStart(2, "0")}`;
502
+ }
503
+ } else {
504
+ const year = date.getFullYear();
505
+ const month = date.getMonth() + 1;
506
+ const day = date.getDate();
507
+ return `${year}-${String(month).padStart(2, "0")}-${String(day).padStart(2, "0")}`;
508
+ }
509
+ }
510
+ clearInputValidation() {
511
+ const inputs = this.renderRoot.querySelectorAll("terra-input");
512
+ inputs.forEach((input) => {
513
+ input.setCustomValidity("");
514
+ });
515
+ }
516
+ /**
517
+ * Format a date string for display in error messages
518
+ * When time is disabled, only show the date portion (YYYY-MM-DD)
519
+ */
520
+ formatDateForError(dateString) {
521
+ if (!this.enableTime) {
522
+ return dateString.split("T")[0];
523
+ }
524
+ return dateString;
525
+ }
526
+ /**
527
+ * Set validation error on input and emit invalid event
528
+ */
529
+ setInputValidationError(input, message) {
530
+ input.setCustomValidity(message);
531
+ requestAnimationFrame(() => {
532
+ ;
533
+ input.validationErrorMessage = message;
534
+ input.requestUpdate();
535
+ });
536
+ this.emit("terra-date-selection-invalid", {
537
+ detail: { message }
538
+ });
539
+ }
540
+ handleInputBlur(event) {
541
+ const input = event.target;
542
+ const value = input.value || "";
543
+ if (!value.trim()) {
544
+ this.selectedStart = null;
545
+ this.selectedEnd = null;
546
+ input.setCustomValidity("");
547
+ this.emitChange();
548
+ return;
549
+ }
550
+ if (this.range) {
551
+ const parts = value.split(" - ");
552
+ if (parts.length !== 2) {
553
+ const message = "Date range must be in format: YYYY-MM-DD - YYYY-MM-DD";
554
+ this.setInputValidationError(input, message);
555
+ return;
556
+ }
557
+ const startFormatted = this.parseAndFormatDate(parts[0]);
558
+ const endFormatted = this.parseAndFormatDate(parts[1]);
559
+ if (!startFormatted) {
560
+ const message = "Invalid start date format";
561
+ this.setInputValidationError(input, message);
562
+ return;
563
+ }
564
+ if (!endFormatted) {
565
+ const message = "Invalid end date format";
566
+ this.setInputValidationError(input, message);
567
+ return;
568
+ }
569
+ let start;
570
+ let end;
571
+ if (this.enableTime && startFormatted.includes("T")) {
572
+ start = new Date(startFormatted);
573
+ this.initializeTimeFromDate(start, true);
574
+ } else if (this.enableTime) {
575
+ const [year, month, day] = startFormatted.split("-").map(Number);
576
+ start = new Date(
577
+ Date.UTC(
578
+ year,
579
+ month - 1,
580
+ day,
581
+ this.startHour,
582
+ this.startMinute,
583
+ this.startSecond
584
+ )
585
+ );
586
+ } else {
587
+ start = this.parseLocalDate(startFormatted);
588
+ }
589
+ if (this.enableTime && endFormatted.includes("T")) {
590
+ end = new Date(endFormatted);
591
+ this.initializeTimeFromDate(end, false);
592
+ } else if (this.enableTime) {
593
+ const [year, month, day] = endFormatted.split("-").map(Number);
594
+ end = new Date(
595
+ Date.UTC(
596
+ year,
597
+ month - 1,
598
+ day,
599
+ this.endHour,
600
+ this.endMinute,
601
+ this.endSecond
602
+ )
603
+ );
604
+ } else {
605
+ end = this.parseLocalDate(endFormatted);
606
+ }
607
+ let finalStart = start;
608
+ let finalEnd = end;
609
+ if (start > end) {
610
+ finalStart = end;
611
+ finalEnd = start;
612
+ }
613
+ if (this.minDate) {
614
+ const min = this.parseLocalDate(this.minDate);
615
+ if (finalStart < min) {
616
+ const message = `Start date must be on or after ${this.formatDateForError(this.minDate)}`;
617
+ this.setInputValidationError(input, message);
618
+ return;
619
+ }
620
+ }
621
+ if (this.maxDate) {
622
+ const max = this.parseLocalDate(this.maxDate);
623
+ if (finalEnd > max) {
624
+ const message = `End date must be on or before ${this.formatDateForError(this.maxDate)}`;
625
+ this.setInputValidationError(input, message);
626
+ return;
627
+ }
628
+ }
629
+ this.selectedStart = finalStart;
630
+ this.selectedEnd = finalEnd;
631
+ this.updateMonthViews();
632
+ input.value = `${startFormatted} - ${endFormatted}`;
633
+ input.setCustomValidity("");
634
+ this.emitChange();
635
+ } else {
636
+ const formatted = this.parseAndFormatDate(value);
637
+ if (!formatted) {
638
+ const message = "Invalid date format";
639
+ this.setInputValidationError(input, message);
640
+ return;
641
+ }
642
+ let date;
643
+ if (this.enableTime && formatted.includes("T")) {
644
+ date = new Date(formatted);
645
+ this.initializeTimeFromDate(date, true);
646
+ } else if (this.enableTime) {
647
+ const [year, month, day] = formatted.split("-").map(Number);
648
+ date = new Date(
649
+ Date.UTC(
650
+ year,
651
+ month - 1,
652
+ day,
653
+ this.startHour,
654
+ this.startMinute,
655
+ this.startSecond
656
+ )
657
+ );
658
+ } else {
659
+ date = this.parseLocalDate(formatted);
660
+ }
661
+ if (this.minDate) {
662
+ const min = this.parseLocalDate(this.minDate);
663
+ if (date < min) {
664
+ const message = `Date must be on or after ${this.formatDateForError(this.minDate)}`;
665
+ this.setInputValidationError(input, message);
666
+ return;
667
+ }
668
+ }
669
+ if (this.maxDate) {
670
+ const max = this.parseLocalDate(this.maxDate);
671
+ if (date > max) {
672
+ const message = `Date must be on or before ${this.formatDateForError(this.maxDate)}`;
673
+ this.setInputValidationError(input, message);
674
+ return;
675
+ }
676
+ }
677
+ this.selectedStart = date;
678
+ this.selectedEnd = null;
679
+ this.updateMonthViews();
680
+ input.value = formatted;
681
+ input.setCustomValidity("");
682
+ this.emitChange();
683
+ }
684
+ }
685
+ handleStartInputBlur(event) {
686
+ const input = event.target;
687
+ const value = input.value || "";
688
+ if (!value.trim()) {
689
+ this.selectedStart = null;
690
+ input.setCustomValidity("");
691
+ this.emitChange();
692
+ return;
693
+ }
694
+ const formatted = this.parseAndFormatDate(value);
695
+ if (!formatted) {
696
+ const message = "Invalid date format";
697
+ this.setInputValidationError(input, message);
698
+ return;
699
+ }
700
+ let date;
701
+ if (this.enableTime && formatted.includes("T")) {
702
+ date = new Date(formatted);
703
+ this.initializeTimeFromDate(date, true);
704
+ } else if (this.enableTime) {
705
+ const [year, month, day] = formatted.split("-").map(Number);
706
+ date = new Date(
707
+ Date.UTC(
708
+ year,
709
+ month - 1,
710
+ day,
711
+ this.startHour,
712
+ this.startMinute,
713
+ this.startSecond
714
+ )
715
+ );
716
+ } else {
717
+ date = this.parseLocalDate(formatted);
718
+ }
719
+ if (this.minDate) {
720
+ const min = this.parseLocalDate(this.minDate);
721
+ if (date < min) {
722
+ const message = `Date must be on or after ${this.formatDateForError(this.minDate)}`;
723
+ this.setInputValidationError(input, message);
724
+ return;
725
+ }
726
+ }
727
+ if (this.maxDate) {
728
+ const max = this.parseLocalDate(this.maxDate);
729
+ if (date > max) {
730
+ const message = `Date must be on or before ${this.formatDateForError(this.maxDate)}`;
731
+ this.setInputValidationError(input, message);
732
+ return;
733
+ }
734
+ }
735
+ if (this.selectedEnd && date > this.selectedEnd) {
736
+ const message = "Start date must be before end date";
737
+ this.setInputValidationError(input, message);
738
+ return;
739
+ }
740
+ this.selectedStart = date;
741
+ this.leftMonth = new Date(date);
742
+ input.value = formatted;
743
+ input.setCustomValidity("");
744
+ this.emitChange();
745
+ }
746
+ handleEndInputBlur(event) {
747
+ const input = event.target;
748
+ const value = input.value || "";
749
+ if (!value.trim()) {
750
+ this.selectedEnd = null;
751
+ input.setCustomValidity("");
752
+ this.emitChange();
753
+ return;
754
+ }
755
+ const formatted = this.parseAndFormatDate(value);
756
+ if (!formatted) {
757
+ const message = "Invalid date format";
758
+ this.setInputValidationError(input, message);
759
+ return;
760
+ }
761
+ let date;
762
+ if (this.enableTime && formatted.includes("T")) {
763
+ date = new Date(formatted);
764
+ this.initializeTimeFromDate(date, false);
765
+ } else if (this.enableTime) {
766
+ const [year, month, day] = formatted.split("-").map(Number);
767
+ date = new Date(
768
+ Date.UTC(
769
+ year,
770
+ month - 1,
771
+ day,
772
+ this.endHour,
773
+ this.endMinute,
774
+ this.endSecond
775
+ )
776
+ );
777
+ } else {
778
+ date = this.parseLocalDate(formatted);
779
+ }
780
+ if (this.minDate) {
781
+ const min = this.parseLocalDate(this.minDate);
782
+ if (date < min) {
783
+ const message = `Date must be on or after ${this.formatDateForError(this.minDate)}`;
784
+ this.setInputValidationError(input, message);
785
+ return;
786
+ }
787
+ }
788
+ if (this.maxDate) {
789
+ const max = this.parseLocalDate(this.maxDate);
790
+ if (date > max) {
791
+ const message = `Date must be on or before ${this.formatDateForError(this.maxDate)}`;
792
+ this.setInputValidationError(input, message);
793
+ return;
794
+ }
795
+ }
796
+ if (this.selectedStart) {
797
+ if (this.enableTime && this.isSameDay(date, this.selectedStart)) {
798
+ const startTimeSeconds = this.startHour * 3600 + this.startMinute * 60 + this.startSecond;
799
+ const endTimeSeconds = this.endHour * 3600 + this.endMinute * 60 + this.endSecond;
800
+ if (endTimeSeconds < startTimeSeconds) {
801
+ const message = "End time must be after start time when dates are the same";
802
+ this.setInputValidationError(input, message);
803
+ return;
804
+ }
805
+ } else if (date < this.selectedStart) {
806
+ const message = "End date must be after start date";
807
+ this.setInputValidationError(input, message);
808
+ return;
809
+ }
810
+ }
811
+ this.selectedEnd = date;
812
+ if (this.selectedStart && this.isSameMonth(this.selectedStart, this.selectedEnd)) {
813
+ this.rightMonth = new Date(this.selectedStart);
814
+ this.rightMonth.setMonth(this.rightMonth.getMonth() + 1);
815
+ } else {
816
+ this.rightMonth = new Date(date);
817
+ }
818
+ input.setCustomValidity("");
819
+ this.emitChange();
820
+ }
821
+ updateMonthViews() {
822
+ if (this.selectedStart) {
823
+ this.leftMonth = new Date(this.selectedStart);
824
+ if (this.range && this.selectedEnd) {
825
+ if (this.isSameMonth(this.selectedStart, this.selectedEnd)) {
826
+ this.rightMonth = new Date(this.selectedStart);
827
+ this.rightMonth.setMonth(this.rightMonth.getMonth() + 1);
828
+ } else {
829
+ this.rightMonth = new Date(this.selectedEnd);
830
+ }
831
+ }
832
+ }
833
+ }
834
+ handleKeydown(event) {
835
+ if (event.key === " ") {
836
+ event.stopPropagation();
837
+ return;
838
+ }
839
+ if (event.key === "Enter") {
840
+ event.preventDefault();
841
+ this.handleInputBlur(event);
842
+ }
843
+ }
844
+ previousMonth(isLeft) {
845
+ if (isLeft) {
846
+ const newMonth = new Date(this.leftMonth);
847
+ newMonth.setMonth(newMonth.getMonth() - 1);
848
+ this.leftMonth = newMonth;
849
+ } else {
850
+ const newMonth = new Date(this.rightMonth);
851
+ newMonth.setMonth(newMonth.getMonth() - 1);
852
+ this.rightMonth = newMonth;
853
+ }
854
+ }
855
+ nextMonth(isLeft) {
856
+ if (isLeft) {
857
+ const newMonth = new Date(this.leftMonth);
858
+ newMonth.setMonth(newMonth.getMonth() + 1);
859
+ this.leftMonth = newMonth;
860
+ } else {
861
+ const newMonth = new Date(this.rightMonth);
862
+ newMonth.setMonth(newMonth.getMonth() + 1);
863
+ this.rightMonth = newMonth;
864
+ }
865
+ }
866
+ toggleMonthDropdown(isLeft, event) {
867
+ event.stopPropagation();
868
+ if (isLeft) {
869
+ this.showLeftMonthDropdown = !this.showLeftMonthDropdown;
870
+ this.showRightMonthDropdown = false;
871
+ } else {
872
+ this.showRightMonthDropdown = !this.showRightMonthDropdown;
873
+ this.showLeftMonthDropdown = false;
874
+ }
875
+ }
876
+ selectMonth(month, isLeft) {
877
+ if (isLeft) {
878
+ const newMonth = new Date(this.leftMonth);
879
+ newMonth.setDate(1);
880
+ newMonth.setMonth(month);
881
+ this.leftMonth = newMonth;
882
+ this.showLeftMonthDropdown = false;
883
+ } else {
884
+ const newMonth = new Date(this.rightMonth);
885
+ newMonth.setDate(1);
886
+ newMonth.setMonth(month);
887
+ this.rightMonth = newMonth;
888
+ this.showRightMonthDropdown = false;
889
+ }
890
+ }
891
+ changeYear(delta, isLeft) {
892
+ if (isLeft) {
893
+ const newMonth = new Date(this.leftMonth);
894
+ newMonth.setFullYear(newMonth.getFullYear() + delta);
895
+ this.leftMonth = newMonth;
896
+ } else {
897
+ const newMonth = new Date(this.rightMonth);
898
+ newMonth.setFullYear(newMonth.getFullYear() + delta);
899
+ this.rightMonth = newMonth;
900
+ }
901
+ }
902
+ handleYearInput(event, isLeft) {
903
+ const input = event.target;
904
+ const year = parseInt(input.value, 10);
905
+ if (!isNaN(year) && year >= 1900 && year <= 2100) {
906
+ if (isLeft) {
907
+ const newMonth = new Date(this.leftMonth);
908
+ newMonth.setFullYear(year);
909
+ this.leftMonth = newMonth;
910
+ } else {
911
+ const newMonth = new Date(this.rightMonth);
912
+ newMonth.setFullYear(year);
913
+ this.rightMonth = newMonth;
914
+ }
915
+ }
916
+ }
917
+ getDaysInMonth(date) {
918
+ const year = date.getFullYear();
919
+ const month = date.getMonth();
920
+ const createDate = (y, m, d) => {
921
+ if (this.enableTime) {
922
+ return new Date(Date.UTC(y, m, d, 0, 0, 0));
923
+ }
924
+ return new Date(y, m, d);
925
+ };
926
+ const firstDay = createDate(year, month, 1);
927
+ const lastDay = new Date(year, month + 1, 0);
928
+ const days = [];
929
+ const firstDayOfWeek = this.enableTime ? firstDay.getUTCDay() : firstDay.getDay();
930
+ for (let i = firstDayOfWeek - 1; i >= 0; i--) {
931
+ const day = createDate(year, month, -i);
932
+ days.push(day);
933
+ }
934
+ for (let i = 1; i <= lastDay.getDate(); i++) {
935
+ days.push(createDate(year, month, i));
936
+ }
937
+ const remainingDays = 7 - days.length % 7;
938
+ if (remainingDays < 7) {
939
+ for (let i = 1; i <= remainingDays; i++) {
940
+ days.push(createDate(year, month + 1, i));
941
+ }
942
+ }
943
+ return days;
944
+ }
945
+ isSameDay(date1, date2) {
946
+ if (!date1 || !date2)
947
+ return false;
948
+ if (this.enableTime) {
949
+ return date1.getUTCFullYear() === date2.getUTCFullYear() && date1.getUTCMonth() === date2.getUTCMonth() && date1.getUTCDate() === date2.getUTCDate();
950
+ }
951
+ return date1.getFullYear() === date2.getFullYear() && date1.getMonth() === date2.getMonth() && date1.getDate() === date2.getDate();
952
+ }
953
+ isInRange(date) {
954
+ if (!this.selectedStart || !this.selectedEnd)
955
+ return false;
956
+ const time = date.getTime();
957
+ return time >= this.selectedStart.getTime() && time <= this.selectedEnd.getTime();
958
+ }
959
+ isInHoverRange(date) {
960
+ if (!this.range || !this.selectedStart || !this.hoverDate || this.selectedEnd)
961
+ return false;
962
+ const time = date.getTime();
963
+ const start = Math.min(this.selectedStart.getTime(), this.hoverDate.getTime());
964
+ const end = Math.max(this.selectedStart.getTime(), this.hoverDate.getTime());
965
+ return time >= start && time <= end;
966
+ }
967
+ isDisabled(date) {
968
+ if (this.minDate) {
969
+ const min = this.parseLocalDate(this.minDate);
970
+ const minMidnight = new Date(
971
+ Date.UTC(min.getUTCFullYear(), min.getUTCMonth(), min.getUTCDate())
972
+ );
973
+ const dateMidnight = new Date(
974
+ Date.UTC(date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate())
975
+ );
976
+ if (dateMidnight < minMidnight)
977
+ return true;
978
+ }
979
+ if (this.maxDate) {
980
+ const max = this.parseLocalDate(this.maxDate);
981
+ const maxMidnight = new Date(
982
+ Date.UTC(max.getUTCFullYear(), max.getUTCMonth(), max.getUTCDate())
983
+ );
984
+ const dateMidnight = new Date(
985
+ Date.UTC(date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate())
986
+ );
987
+ if (dateMidnight > maxMidnight)
988
+ return true;
989
+ }
990
+ return false;
991
+ }
992
+ selectDate(date) {
993
+ if (this.isDisabled(date)) {
994
+ this.emit("terra-date-selection-invalid", {
995
+ detail: {
996
+ message: `You are not allowed to select dates outside ${this.minDate} to ${this.maxDate}.`
997
+ }
998
+ });
999
+ return;
1000
+ }
1001
+ this.clearInputValidation();
1002
+ if (this.range) {
1003
+ if (!this.selectedStart || this.selectedEnd) {
1004
+ this.selectedStart = date;
1005
+ this.selectedEnd = null;
1006
+ this.isSelectingRange = true;
1007
+ } else {
1008
+ if (date < this.selectedStart) {
1009
+ this.selectedEnd = this.selectedStart;
1010
+ this.selectedStart = date;
1011
+ } else {
1012
+ this.selectedEnd = date;
1013
+ }
1014
+ this.isSelectingRange = false;
1015
+ if (this.enableTime && this.selectedStart && this.selectedEnd && this.isSameDay(this.selectedStart, this.selectedEnd)) {
1016
+ const startTimeSeconds = this.startHour * 3600 + this.startMinute * 60 + this.startSecond;
1017
+ const endTimeSeconds = this.endHour * 3600 + this.endMinute * 60 + this.endSecond;
1018
+ if (endTimeSeconds < startTimeSeconds) {
1019
+ this.emit("terra-date-selection-invalid", {
1020
+ detail: {
1021
+ message: "End time is before start time. Please adjust the time values."
1022
+ }
1023
+ });
1024
+ }
1025
+ }
1026
+ this.emitChange();
1027
+ if (!this.inline) {
1028
+ this.isOpen = false;
1029
+ }
1030
+ }
1031
+ } else {
1032
+ this.selectedStart = date;
1033
+ this.selectedEnd = null;
1034
+ this.emitChange();
1035
+ if (!this.inline) {
1036
+ this.isOpen = false;
1037
+ }
1038
+ }
1039
+ }
1040
+ handleDateHover(date) {
1041
+ if (this.range && this.selectedStart && !this.selectedEnd) {
1042
+ this.hoverDate = date;
1043
+ }
1044
+ }
1045
+ selectPreset(preset) {
1046
+ const { startDate, endDate } = preset.getValue();
1047
+ if (!this.isPresetWithinBounds({ startDate, endDate })) {
1048
+ this.emit("terra-date-selection-invalid", {
1049
+ detail: {
1050
+ message: `The preset "${preset.label}" is not available within the allowed date range ${this.minDate} to ${this.maxDate}.`
1051
+ }
1052
+ });
1053
+ return;
1054
+ }
1055
+ this.clearInputValidation();
1056
+ const { min, max } = this.getBounds();
1057
+ if (this.range) {
1058
+ let s = startDate;
1059
+ let e = endDate;
1060
+ if (s && min && s < min)
1061
+ s = new Date(min);
1062
+ if (s && max && s > max)
1063
+ s = new Date(max);
1064
+ if (e && min && e < min)
1065
+ e = new Date(min);
1066
+ if (e && max && e > max)
1067
+ e = new Date(max);
1068
+ if (s && e && e < s) {
1069
+ const tmp = s;
1070
+ s = e;
1071
+ e = tmp;
1072
+ }
1073
+ this.selectedStart = s;
1074
+ this.selectedEnd = e;
1075
+ } else {
1076
+ let s = startDate;
1077
+ if (s && min && s < min)
1078
+ s = new Date(min);
1079
+ if (s && max && s > max)
1080
+ s = new Date(max);
1081
+ this.selectedStart = s;
1082
+ this.selectedEnd = null;
1083
+ }
1084
+ if (this.selectedStart) {
1085
+ this.leftMonth = new Date(this.selectedStart);
1086
+ if (this.range && this.selectedEnd) {
1087
+ this.rightMonth = new Date(this.selectedEnd);
1088
+ }
1089
+ }
1090
+ this.emitChange();
1091
+ if (!this.range && !this.inline) {
1092
+ this.isOpen = false;
1093
+ }
1094
+ }
1095
+ emitChange() {
1096
+ let startDateTime = "";
1097
+ let endDateTime = "";
1098
+ if (this.selectedStart) {
1099
+ if (this.enableTime) {
1100
+ const startDate = new Date(this.selectedStart);
1101
+ startDate.setUTCHours(
1102
+ this.startHour,
1103
+ this.startMinute,
1104
+ this.startSecond,
1105
+ 0
1106
+ );
1107
+ startDateTime = startDate.toISOString();
1108
+ } else {
1109
+ const year = this.selectedStart.getFullYear();
1110
+ const month = String(this.selectedStart.getMonth() + 1).padStart(
1111
+ 2,
1112
+ "0"
1113
+ );
1114
+ const day = String(this.selectedStart.getDate()).padStart(2, "0");
1115
+ startDateTime = `${year}-${month}-${day}`;
1116
+ }
1117
+ }
1118
+ if (this.selectedEnd) {
1119
+ if (this.enableTime) {
1120
+ const endDate = new Date(this.selectedEnd);
1121
+ endDate.setUTCHours(this.endHour, this.endMinute, this.endSecond, 0);
1122
+ endDateTime = endDate.toISOString();
1123
+ } else {
1124
+ const year = this.selectedEnd.getFullYear();
1125
+ const month = String(this.selectedEnd.getMonth() + 1).padStart(2, "0");
1126
+ const day = String(this.selectedEnd.getDate()).padStart(2, "0");
1127
+ endDateTime = `${year}-${month}-${day}`;
1128
+ }
1129
+ }
1130
+ this.emit("terra-date-range-change", {
1131
+ detail: {
1132
+ startDate: startDateTime,
1133
+ endDate: endDateTime
1134
+ }
1135
+ });
1136
+ }
1137
+ initializeTimeFromDate(date, isStart) {
1138
+ const hours = date.getUTCHours();
1139
+ const minutes = date.getUTCMinutes();
1140
+ const seconds = date.getUTCSeconds();
1141
+ if (isStart) {
1142
+ this.startHour = hours;
1143
+ this.startMinute = minutes;
1144
+ this.startSecond = seconds;
1145
+ } else {
1146
+ this.endHour = hours;
1147
+ this.endMinute = minutes;
1148
+ this.endSecond = seconds;
1149
+ }
1150
+ }
1151
+ changeTime(type, delta, isStart) {
1152
+ if (type === "hour") {
1153
+ if (isStart) {
1154
+ let newHour = this.startHour + delta;
1155
+ if (newHour > 23)
1156
+ newHour = 0;
1157
+ if (newHour < 0)
1158
+ newHour = 23;
1159
+ this.startHour = newHour;
1160
+ } else {
1161
+ let newHour = this.endHour + delta;
1162
+ if (newHour > 23)
1163
+ newHour = 0;
1164
+ if (newHour < 0)
1165
+ newHour = 23;
1166
+ this.endHour = newHour;
1167
+ }
1168
+ } else if (type === "minute") {
1169
+ if (isStart) {
1170
+ let newMinute = this.startMinute + delta;
1171
+ if (newMinute >= 60)
1172
+ newMinute = 0;
1173
+ if (newMinute < 0)
1174
+ newMinute = 59;
1175
+ this.startMinute = newMinute;
1176
+ } else {
1177
+ let newMinute = this.endMinute + delta;
1178
+ if (newMinute >= 60)
1179
+ newMinute = 0;
1180
+ if (newMinute < 0)
1181
+ newMinute = 59;
1182
+ this.endMinute = newMinute;
1183
+ }
1184
+ } else {
1185
+ if (isStart) {
1186
+ let newSecond = this.startSecond + delta;
1187
+ if (newSecond >= 60)
1188
+ newSecond = 0;
1189
+ if (newSecond < 0)
1190
+ newSecond = 59;
1191
+ this.startSecond = newSecond;
1192
+ } else {
1193
+ let newSecond = this.endSecond + delta;
1194
+ if (newSecond >= 60)
1195
+ newSecond = 0;
1196
+ if (newSecond < 0)
1197
+ newSecond = 59;
1198
+ this.endSecond = newSecond;
1199
+ }
1200
+ }
1201
+ this.emitChange();
1202
+ this.requestUpdate();
1203
+ }
1204
+ handleTimeInput(event, type, isStart) {
1205
+ const input = event.target;
1206
+ let value = parseInt(input.value, 10);
1207
+ if (type === "hour") {
1208
+ if (isNaN(value) || value < 0 || value > 23) {
1209
+ input.value = isStart ? this.startHour.toString().padStart(2, "0") : this.endHour.toString().padStart(2, "0");
1210
+ return;
1211
+ }
1212
+ if (isStart)
1213
+ this.startHour = value;
1214
+ else
1215
+ this.endHour = value;
1216
+ } else if (type === "minute") {
1217
+ if (isNaN(value) || value < 0 || value >= 60) {
1218
+ input.value = isStart ? this.startMinute.toString().padStart(2, "0") : this.endMinute.toString().padStart(2, "0");
1219
+ return;
1220
+ }
1221
+ if (isStart)
1222
+ this.startMinute = value;
1223
+ else
1224
+ this.endMinute = value;
1225
+ } else {
1226
+ if (isNaN(value) || value < 0 || value >= 60) {
1227
+ input.value = isStart ? this.startSecond.toString().padStart(2, "0") : this.endSecond.toString().padStart(2, "0");
1228
+ return;
1229
+ }
1230
+ if (isStart)
1231
+ this.startSecond = value;
1232
+ else
1233
+ this.endSecond = value;
1234
+ }
1235
+ this.emitChange();
1236
+ this.requestUpdate();
1237
+ }
1238
+ renderCalendar(month, isLeft = true) {
1239
+ const days = this.getDaysInMonth(month);
1240
+ const currentMonth = month.getMonth();
1241
+ const showDropdown = isLeft ? this.showLeftMonthDropdown : this.showRightMonthDropdown;
1242
+ return html`
1243
+ <div class="calendar">
1244
+ <div class="calendar__header">
1245
+ <button
1246
+ type="button"
1247
+ class="calendar__nav"
1248
+ @click=${() => this.previousMonth(isLeft)}
1249
+ >
1250
+ <svg width="16" height="16" viewBox="0 0 16 16" fill="none">
1251
+ <path
1252
+ d="M10 12L6 8L10 4"
1253
+ stroke="currentColor"
1254
+ stroke-width="2"
1255
+ stroke-linecap="round"
1256
+ stroke-linejoin="round"
1257
+ />
1258
+ </svg>
1259
+ </button>
1260
+
1261
+ <div class="calendar__month-year">
1262
+ <div class="calendar__month-dropdown-wrapper">
1263
+ <button
1264
+ type="button"
1265
+ class="calendar__month-button"
1266
+ @click=${(e) => this.toggleMonthDropdown(isLeft, e)}
1267
+ >
1268
+ ${this.MONTHS[month.getMonth()]}
1269
+ <svg
1270
+ width="12"
1271
+ height="12"
1272
+ viewBox="0 0 12 12"
1273
+ fill="none"
1274
+ class="calendar__month-icon"
1275
+ >
1276
+ <path
1277
+ d="M3 5L6 8L9 5"
1278
+ stroke="currentColor"
1279
+ stroke-width="1.5"
1280
+ stroke-linecap="round"
1281
+ stroke-linejoin="round"
1282
+ />
1283
+ </svg>
1284
+ </button>
1285
+
1286
+ ${showDropdown ? html`
1287
+ <div class="calendar__month-dropdown">
1288
+ ${this.MONTHS.map(
1289
+ (monthName, index) => html`
1290
+ <button
1291
+ type="button"
1292
+ class="calendar__month-option ${index === month.getMonth() ? "calendar__month-option--selected" : ""}"
1293
+ @click=${() => this.selectMonth(
1294
+ index,
1295
+ isLeft
1296
+ )}
1297
+ >
1298
+ ${index === month.getMonth() ? html`
1299
+ <svg
1300
+ width="16"
1301
+ height="16"
1302
+ viewBox="0 0 16 16"
1303
+ fill="none"
1304
+ class="calendar__month-check"
1305
+ >
1306
+ <path
1307
+ d="M13 4L6 11L3 8"
1308
+ stroke="currentColor"
1309
+ stroke-width="2"
1310
+ stroke-linecap="round"
1311
+ stroke-linejoin="round"
1312
+ />
1313
+ </svg>
1314
+ ` : ""}
1315
+ ${monthName}
1316
+ </button>
1317
+ `
1318
+ )}
1319
+ </div>
1320
+ ` : ""}
1321
+ </div>
1322
+
1323
+ <div class="calendar__year-input-wrapper">
1324
+ <input
1325
+ type="number"
1326
+ class="calendar__year-input"
1327
+ .value=${month.getFullYear().toString()}
1328
+ @input=${(e) => this.handleYearInput(e, isLeft)}
1329
+ @blur=${(e) => {
1330
+ const input = e.target;
1331
+ input.value = month.getFullYear().toString();
1332
+ }}
1333
+ min="1900"
1334
+ max="2100"
1335
+ />
1336
+ <div class="calendar__year-spinners">
1337
+ <button
1338
+ type="button"
1339
+ class="calendar__year-spinner calendar__year-spinner--up"
1340
+ @click=${() => this.changeYear(1, isLeft)}
1341
+ >
1342
+ <svg
1343
+ width="10"
1344
+ height="10"
1345
+ viewBox="0 0 10 10"
1346
+ fill="none"
1347
+ >
1348
+ <path
1349
+ d="M2 6L5 3L8 6"
1350
+ stroke="currentColor"
1351
+ stroke-width="1.5"
1352
+ stroke-linecap="round"
1353
+ stroke-linejoin="round"
1354
+ />
1355
+ </svg>
1356
+ </button>
1357
+ <button
1358
+ type="button"
1359
+ class="calendar__year-spinner calendar__year-spinner--down"
1360
+ @click=${() => this.changeYear(-1, isLeft)}
1361
+ >
1362
+ <svg
1363
+ width="10"
1364
+ height="10"
1365
+ viewBox="0 0 10 10"
1366
+ fill="none"
1367
+ >
1368
+ <path
1369
+ d="M2 4L5 7L8 4"
1370
+ stroke="currentColor"
1371
+ stroke-width="1.5"
1372
+ stroke-linecap="round"
1373
+ stroke-linejoin="round"
1374
+ />
1375
+ </svg>
1376
+ </button>
1377
+ </div>
1378
+ </div>
1379
+ </div>
1380
+
1381
+ <button
1382
+ type="button"
1383
+ class="calendar__nav"
1384
+ @click=${() => this.nextMonth(isLeft)}
1385
+ >
1386
+ <svg width="16" height="16" viewBox="0 0 16 16" fill="none">
1387
+ <path
1388
+ d="M6 12L10 8L6 4"
1389
+ stroke="currentColor"
1390
+ stroke-width="2"
1391
+ stroke-linecap="round"
1392
+ stroke-linejoin="round"
1393
+ />
1394
+ </svg>
1395
+ </button>
1396
+ </div>
1397
+ <div class="calendar__weekdays">
1398
+ ${this.DAYS.map(
1399
+ (day) => html`<div class="calendar__weekday">${day}</div>`
1400
+ )}
1401
+ </div>
1402
+ <div class="calendar__days">
1403
+ ${days.map((date) => {
1404
+ const dateMonth = this.enableTime ? date.getUTCMonth() : date.getMonth();
1405
+ const dateDay = this.enableTime ? date.getUTCDate() : date.getDate();
1406
+ const isCurrentMonth = dateMonth === currentMonth;
1407
+ const isSelected = this.isSameDay(date, this.selectedStart) || this.isSameDay(date, this.selectedEnd);
1408
+ const isStart = this.isSameDay(date, this.selectedStart);
1409
+ const isEnd = this.isSameDay(date, this.selectedEnd);
1410
+ const inRange = this.isInRange(date);
1411
+ const inHoverRange = this.isInHoverRange(date);
1412
+ const isDisabled = this.isDisabled(date);
1413
+ return html`
1414
+ <button
1415
+ type="button"
1416
+ class="calendar__day ${!isCurrentMonth ? "calendar__day--outside" : ""}
1417
+ ${isSelected ? "calendar__day--selected" : ""}
1418
+ ${isStart ? "calendar__day--start" : ""}
1419
+ ${isEnd ? "calendar__day--end" : ""}
1420
+ ${inRange ? "calendar__day--in-range" : ""}
1421
+ ${inHoverRange ? "calendar__day--hover-range" : ""}
1422
+ ${isDisabled ? "calendar__day--disabled" : ""}"
1423
+ @click=${() => this.selectDate(date)}
1424
+ @mouseenter=${() => this.handleDateHover(date)}
1425
+ ?disabled=${isDisabled}
1426
+ >
1427
+ ${dateDay}
1428
+ </button>
1429
+ `;
1430
+ })}
1431
+ </div>
1432
+ </div>
1433
+ `;
1434
+ }
1435
+ renderTimePicker() {
1436
+ if (!this.enableTime)
1437
+ return "";
1438
+ return html`
1439
+ <div class="date-picker__time">
1440
+ <div class="date-picker__time-section">
1441
+ <div class="date-picker__time-inputs">
1442
+ <div class="date-picker__time-input-group">
1443
+ <input
1444
+ type="number"
1445
+ class="date-picker__time-input"
1446
+ .value=${this.startHour.toString().padStart(2, "0")}
1447
+ @input=${(e) => this.handleTimeInput(e, "hour", true)}
1448
+ @blur=${(e) => {
1449
+ const input = e.target;
1450
+ input.value = this.startHour.toString().padStart(2, "0");
1451
+ }}
1452
+ min="0"
1453
+ max="23"
1454
+ />
1455
+ <div class="date-picker__time-spinners">
1456
+ <button
1457
+ type="button"
1458
+ class="date-picker__time-spinner"
1459
+ @click=${() => this.changeTime("hour", 1, true)}
1460
+ >
1461
+ <svg
1462
+ width="10"
1463
+ height="10"
1464
+ viewBox="0 0 10 10"
1465
+ fill="none"
1466
+ >
1467
+ <path
1468
+ d="M2 6L5 3L8 6"
1469
+ stroke="currentColor"
1470
+ stroke-width="1.5"
1471
+ stroke-linecap="round"
1472
+ stroke-linejoin="round"
1473
+ />
1474
+ </svg>
1475
+ </button>
1476
+ <button
1477
+ type="button"
1478
+ class="date-picker__time-spinner"
1479
+ @click=${() => this.changeTime("hour", -1, true)}
1480
+ >
1481
+ <svg
1482
+ width="10"
1483
+ height="10"
1484
+ viewBox="0 0 10 10"
1485
+ fill="none"
1486
+ >
1487
+ <path
1488
+ d="M2 4L5 7L8 4"
1489
+ stroke="currentColor"
1490
+ stroke-width="1.5"
1491
+ stroke-linecap="round"
1492
+ stroke-linejoin="round"
1493
+ />
1494
+ </svg>
1495
+ </button>
1496
+ </div>
1497
+ </div>
1498
+
1499
+ <span class="date-picker__time-separator">:</span>
1500
+
1501
+ <div class="date-picker__time-input-group">
1502
+ <input
1503
+ type="number"
1504
+ class="date-picker__time-input"
1505
+ .value=${this.startMinute.toString().padStart(2, "0")}
1506
+ @input=${(e) => this.handleTimeInput(e, "minute", true)}
1507
+ @blur=${(e) => {
1508
+ const input = e.target;
1509
+ input.value = this.startMinute.toString().padStart(2, "0");
1510
+ }}
1511
+ min="0"
1512
+ max="59"
1513
+ />
1514
+ <div class="date-picker__time-spinners">
1515
+ <button
1516
+ type="button"
1517
+ class="date-picker__time-spinner"
1518
+ @click=${() => this.changeTime("minute", 1, true)}
1519
+ >
1520
+ <svg
1521
+ width="10"
1522
+ height="10"
1523
+ viewBox="0 0 10 10"
1524
+ fill="none"
1525
+ >
1526
+ <path
1527
+ d="M2 6L5 3L8 6"
1528
+ stroke="currentColor"
1529
+ stroke-width="1.5"
1530
+ stroke-linecap="round"
1531
+ stroke-linejoin="round"
1532
+ />
1533
+ </svg>
1534
+ </button>
1535
+ <button
1536
+ type="button"
1537
+ class="date-picker__time-spinner"
1538
+ @click=${() => this.changeTime("minute", -1, true)}
1539
+ >
1540
+ <svg
1541
+ width="10"
1542
+ height="10"
1543
+ viewBox="0 0 10 10"
1544
+ fill="none"
1545
+ >
1546
+ <path
1547
+ d="M2 4L5 7L8 4"
1548
+ stroke="currentColor"
1549
+ stroke-width="1.5"
1550
+ stroke-linecap="round"
1551
+ stroke-linejoin="round"
1552
+ />
1553
+ </svg>
1554
+ </button>
1555
+ </div>
1556
+ </div>
1557
+
1558
+ <span class="date-picker__time-separator">:</span>
1559
+
1560
+ <div class="date-picker__time-input-group">
1561
+ <input
1562
+ type="number"
1563
+ class="date-picker__time-input"
1564
+ .value=${this.startSecond.toString().padStart(2, "0")}
1565
+ @input=${(e) => this.handleTimeInput(e, "second", true)}
1566
+ @blur=${(e) => {
1567
+ const input = e.target;
1568
+ input.value = this.startSecond.toString().padStart(2, "0");
1569
+ }}
1570
+ min="0"
1571
+ max="59"
1572
+ />
1573
+ <div class="date-picker__time-spinners">
1574
+ <button
1575
+ type="button"
1576
+ class="date-picker__time-spinner"
1577
+ @click=${() => this.changeTime("second", 1, true)}
1578
+ >
1579
+ <svg
1580
+ width="10"
1581
+ height="10"
1582
+ viewBox="0 0 10 10"
1583
+ fill="none"
1584
+ >
1585
+ <path
1586
+ d="M2 6L5 3L8 6"
1587
+ stroke="currentColor"
1588
+ stroke-width="1.5"
1589
+ stroke-linecap="round"
1590
+ stroke-linejoin="round"
1591
+ />
1592
+ </svg>
1593
+ </button>
1594
+ <button
1595
+ type="button"
1596
+ class="date-picker__time-spinner"
1597
+ @click=${() => this.changeTime("second", -1, true)}
1598
+ >
1599
+ <svg
1600
+ width="10"
1601
+ height="10"
1602
+ viewBox="0 0 10 10"
1603
+ fill="none"
1604
+ >
1605
+ <path
1606
+ d="M2 4L5 7L8 4"
1607
+ stroke="currentColor"
1608
+ stroke-width="1.5"
1609
+ stroke-linecap="round"
1610
+ stroke-linejoin="round"
1611
+ />
1612
+ </svg>
1613
+ </button>
1614
+ </div>
1615
+ </div>
1616
+ </div>
1617
+ </div>
1618
+
1619
+ ${this.range ? html`
1620
+ <span class="date-picker__separator">–</span>
1621
+
1622
+ <div class="date-picker__time-section">
1623
+ <div class="date-picker__time-inputs">
1624
+ <div class="date-picker__time-input-group">
1625
+ <input
1626
+ type="number"
1627
+ class="date-picker__time-input"
1628
+ .value=${this.endHour.toString().padStart(2, "0")}
1629
+ @input=${(e) => this.handleTimeInput(e, "hour", false)}
1630
+ @blur=${(e) => {
1631
+ const input = e.target;
1632
+ input.value = this.endHour.toString().padStart(2, "0");
1633
+ }}
1634
+ min="0"
1635
+ max="23"
1636
+ />
1637
+ <div class="date-picker__time-spinners">
1638
+ <button
1639
+ type="button"
1640
+ class="date-picker__time-spinner"
1641
+ @click=${() => this.changeTime("hour", 1, false)}
1642
+ >
1643
+ <svg
1644
+ width="10"
1645
+ height="10"
1646
+ viewBox="0 0 10 10"
1647
+ fill="none"
1648
+ >
1649
+ <path
1650
+ d="M2 6L5 3L8 6"
1651
+ stroke="currentColor"
1652
+ stroke-width="1.5"
1653
+ stroke-linecap="round"
1654
+ stroke-linejoin="round"
1655
+ />
1656
+ </svg>
1657
+ </button>
1658
+ <button
1659
+ type="button"
1660
+ class="date-picker__time-spinner"
1661
+ @click=${() => this.changeTime("hour", -1, false)}
1662
+ >
1663
+ <svg
1664
+ width="10"
1665
+ height="10"
1666
+ viewBox="0 0 10 10"
1667
+ fill="none"
1668
+ >
1669
+ <path
1670
+ d="M2 4L5 7L8 4"
1671
+ stroke="currentColor"
1672
+ stroke-width="1.5"
1673
+ stroke-linecap="round"
1674
+ stroke-linejoin="round"
1675
+ />
1676
+ </svg>
1677
+ </button>
1678
+ </div>
1679
+ </div>
1680
+
1681
+ <span class="date-picker__time-separator">:</span>
1682
+
1683
+ <div class="date-picker__time-input-group">
1684
+ <input
1685
+ type="number"
1686
+ class="date-picker__time-input"
1687
+ .value=${this.endMinute.toString().padStart(2, "0")}
1688
+ @input=${(e) => this.handleTimeInput(
1689
+ e,
1690
+ "minute",
1691
+ false
1692
+ )}
1693
+ @blur=${(e) => {
1694
+ const input = e.target;
1695
+ input.value = this.endMinute.toString().padStart(2, "0");
1696
+ }}
1697
+ min="0"
1698
+ max="59"
1699
+ />
1700
+ <div class="date-picker__time-spinners">
1701
+ <button
1702
+ type="button"
1703
+ class="date-picker__time-spinner"
1704
+ @click=${() => this.changeTime("minute", 1, false)}
1705
+ >
1706
+ <svg
1707
+ width="10"
1708
+ height="10"
1709
+ viewBox="0 0 10 10"
1710
+ fill="none"
1711
+ >
1712
+ <path
1713
+ d="M2 6L5 3L8 6"
1714
+ stroke="currentColor"
1715
+ stroke-width="1.5"
1716
+ stroke-linecap="round"
1717
+ stroke-linejoin="round"
1718
+ />
1719
+ </svg>
1720
+ </button>
1721
+ <button
1722
+ type="button"
1723
+ class="date-picker__time-spinner"
1724
+ @click=${() => this.changeTime(
1725
+ "minute",
1726
+ -1,
1727
+ false
1728
+ )}
1729
+ >
1730
+ <svg
1731
+ width="10"
1732
+ height="10"
1733
+ viewBox="0 0 10 10"
1734
+ fill="none"
1735
+ >
1736
+ <path
1737
+ d="M2 4L5 7L8 4"
1738
+ stroke="currentColor"
1739
+ stroke-width="1.5"
1740
+ stroke-linecap="round"
1741
+ stroke-linejoin="round"
1742
+ />
1743
+ </svg>
1744
+ </button>
1745
+ </div>
1746
+ </div>
1747
+
1748
+ <span class="date-picker__time-separator">:</span>
1749
+
1750
+ <div class="date-picker__time-input-group">
1751
+ <input
1752
+ type="number"
1753
+ class="date-picker__time-input"
1754
+ .value=${this.endSecond.toString().padStart(2, "0")}
1755
+ @input=${(e) => this.handleTimeInput(
1756
+ e,
1757
+ "second",
1758
+ false
1759
+ )}
1760
+ @blur=${(e) => {
1761
+ const input = e.target;
1762
+ input.value = this.endSecond.toString().padStart(2, "0");
1763
+ }}
1764
+ min="0"
1765
+ max="59"
1766
+ />
1767
+ <div class="date-picker__time-spinners">
1768
+ <button
1769
+ type="button"
1770
+ class="date-picker__time-spinner"
1771
+ @click=${() => this.changeTime("second", 1, false)}
1772
+ >
1773
+ <svg
1774
+ width="10"
1775
+ height="10"
1776
+ viewBox="0 0 10 10"
1777
+ fill="none"
1778
+ >
1779
+ <path
1780
+ d="M2 6L5 3L8 6"
1781
+ stroke="currentColor"
1782
+ stroke-width="1.5"
1783
+ stroke-linecap="round"
1784
+ stroke-linejoin="round"
1785
+ />
1786
+ </svg>
1787
+ </button>
1788
+ <button
1789
+ type="button"
1790
+ class="date-picker__time-spinner"
1791
+ @click=${() => this.changeTime(
1792
+ "second",
1793
+ -1,
1794
+ false
1795
+ )}
1796
+ >
1797
+ <svg
1798
+ width="10"
1799
+ height="10"
1800
+ viewBox="0 0 10 10"
1801
+ fill="none"
1802
+ >
1803
+ <path
1804
+ d="M2 4L5 7L8 4"
1805
+ stroke="currentColor"
1806
+ stroke-width="1.5"
1807
+ stroke-linecap="round"
1808
+ stroke-linejoin="round"
1809
+ />
1810
+ </svg>
1811
+ </button>
1812
+ </div>
1813
+ </div>
1814
+ </div>
1815
+ </div>
1816
+ ` : ""}
1817
+ </div>
1818
+ `;
1819
+ }
1820
+ renderCalendarIcon() {
1821
+ return html`
1822
+ <svg
1823
+ slot="suffix"
1824
+ class="date-picker__icon"
1825
+ width="20"
1826
+ height="20"
1827
+ viewBox="0 0 24 24"
1828
+ fill="none"
1829
+ stroke="currentColor"
1830
+ stroke-width="2"
1831
+ >
1832
+ <rect x="3" y="4" width="18" height="18" rx="2" ry="2"></rect>
1833
+ <line x1="16" y1="2" x2="16" y2="6"></line>
1834
+ <line x1="8" y1="2" x2="8" y2="6"></line>
1835
+ <line x1="3" y1="10" x2="21" y2="10"></line>
1836
+ </svg>
1837
+ `;
1838
+ }
1839
+ renderCalendarContent() {
1840
+ return html`
1841
+ <div class="date-picker__dropdown" part="calendar">
1842
+ <div class="date-picker__content">
1843
+ ${this.showPresets && this.filteredPresets.length > 0 ? html`
1844
+ <div class="date-picker__sidebar" part="sidebar">
1845
+ <slot name="sidebar-header"></slot>
1846
+
1847
+ <div class="presets">
1848
+ ${this.filteredPresets.map(
1849
+ (preset) => html`
1850
+ <button
1851
+ type="button"
1852
+ class="date-picker__preset"
1853
+ @click=${() => this.selectPreset(preset)}
1854
+ >
1855
+ ${preset.label}
1856
+ </button>
1857
+ `
1858
+ )}
1859
+ </div>
1860
+
1861
+ <slot name="sidebar-footer">
1862
+ <terra-button
1863
+ outline
1864
+ variant="default"
1865
+ size="small"
1866
+ @click=${() => this.clear()}
1867
+ >
1868
+ ${this.clearAllLabel}
1869
+ </terra-button>
1870
+ </slot>
1871
+ </div>
1872
+ ` : ""}
1873
+
1874
+ <div class="date-picker__calendars">
1875
+ ${this.renderCalendar(this.leftMonth, true)}
1876
+ ${this.range ? this.renderCalendar(this.rightMonth, false) : ""}
1877
+ </div>
1878
+ </div>
1879
+
1880
+ ${this.enableTime ? this.renderTimePicker() : ""}
1881
+ </div>
1882
+ `;
1883
+ }
1884
+ render() {
1885
+ const showSplitInputs = this.range && this.splitInputs;
1886
+ if (this.inline) {
1887
+ return html`
1888
+ <div
1889
+ class="date-picker date-picker--inline ${showSplitInputs ? "date-picker--split-inputs" : ""}"
1890
+ @click=${(e) => e.stopPropagation()}
1891
+ >
1892
+ ${showSplitInputs ? html`
1893
+ <div class="date-picker__inputs">
1894
+ <terra-input
1895
+ .label=${this.startLabel || (this.label ? `${this.label} (Start)` : "Start Date")}
1896
+ .hideLabel=${this.hideLabel}
1897
+ .helpText=${this.startHelpText || this.helpText}
1898
+ .value=${this.getStartDateDisplayValue()}
1899
+ @terra-blur=${this.handleStartInputBlur}
1900
+ @keydown=${this.handleKeydown}
1901
+ placeholder=${this.startPlaceholder}
1902
+ name="start-date"
1903
+ >
1904
+ ${this.renderCalendarIcon()}
1905
+ </terra-input>
1906
+ <terra-input
1907
+ .label=${this.endLabel || (this.label ? `${this.label} (End)` : "End Date")}
1908
+ .hideLabel=${this.hideLabel}
1909
+ .helpText=${this.endHelpText || this.helpText}
1910
+ .value=${this.getEndDateDisplayValue()}
1911
+ @terra-blur=${this.handleEndInputBlur}
1912
+ @keydown=${this.handleKeydown}
1913
+ placeholder=${this.endPlaceholder}
1914
+ name="end-date"
1915
+ >
1916
+ ${this.renderCalendarIcon()}
1917
+ </terra-input>
1918
+ </div>
1919
+ ` : html`
1920
+ <terra-input
1921
+ .label=${this.label}
1922
+ .hideLabel=${this.hideLabel}
1923
+ .helpText=${this.helpText}
1924
+ .value=${this.getDisplayValue()}
1925
+ placeholder=${this.placeholder}
1926
+ @terra-blur=${this.handleInputBlur}
1927
+ @keydown=${this.handleKeydown}
1928
+ name="date"
1929
+ >
1930
+ ${this.renderCalendarIcon()}
1931
+ </terra-input>
1932
+ `}
1933
+
1934
+ <slot name="additional-text"></slot>
1935
+
1936
+ <div class="date-picker__dropdown-wrapper">
1937
+ <div
1938
+ class="date-picker__dropdown date-picker__dropdown--inline"
1939
+ part="calendar"
1940
+ >
1941
+ <div class="date-picker__content">
1942
+ ${this.showPresets && this.filteredPresets.length > 0 ? html`
1943
+ <div
1944
+ class="date-picker__sidebar"
1945
+ part="sidebar"
1946
+ >
1947
+ <slot name="sidebar-header"></slot>
1948
+
1949
+ <div class="presets">
1950
+ ${this.filteredPresets.map(
1951
+ (preset) => html`
1952
+ <button
1953
+ type="button"
1954
+ class="date-picker__preset"
1955
+ @click=${() => this.selectPreset(
1956
+ preset
1957
+ )}
1958
+ >
1959
+ ${preset.label}
1960
+ </button>
1961
+ `
1962
+ )}
1963
+ </div>
1964
+
1965
+ <slot name="sidebar-footer">
1966
+ <terra-button
1967
+ outline
1968
+ variant="default"
1969
+ size="small"
1970
+ @click=${() => this.clear()}
1971
+ >
1972
+ ${this.clearAllLabel}
1973
+ </terra-button>
1974
+ </slot>
1975
+ </div>
1976
+ ` : ""}
1977
+
1978
+ <div class="date-picker__calendars">
1979
+ ${this.renderCalendar(this.leftMonth, true)}
1980
+ ${this.range ? this.renderCalendar(this.rightMonth, false) : ""}
1981
+ </div>
1982
+ </div>
1983
+
1984
+ ${this.enableTime ? this.renderTimePicker() : ""}
1985
+ </div>
1986
+ </div>
1987
+ </div>
1988
+ `;
1989
+ }
1990
+ return html`
1991
+ <div
1992
+ class="date-picker ${showSplitInputs ? "date-picker--split-inputs" : ""}"
1993
+ @click=${(e) => e.stopPropagation()}
1994
+ >
1995
+ ${showSplitInputs ? html`
1996
+ <div class="date-picker__inputs">
1997
+ <terra-dropdown
1998
+ ${ref(this.dropdownRef)}
1999
+ placement="bottom-start"
2000
+ distance="4"
2001
+ @terra-show=${this.handleDropdownShow}
2002
+ @terra-hide=${this.handleDropdownHide}
2003
+ hoist
2004
+ >
2005
+ <terra-input
2006
+ slot="trigger"
2007
+ .label=${this.startLabel || (this.label ? `${this.label} (Start)` : "Start Date")}
2008
+ .hideLabel=${this.hideLabel}
2009
+ .helpText=${this.startHelpText || this.helpText}
2010
+ .value=${this.getStartDateDisplayValue()}
2011
+ placeholder=${this.startPlaceholder}
2012
+ @terra-blur=${this.handleStartInputBlur}
2013
+ @keydown=${this.handleKeydown}
2014
+ name="start-date"
2015
+ >
2016
+ ${this.renderCalendarIcon()}
2017
+ </terra-input>
2018
+ ${this.renderCalendarContent()}
2019
+ </terra-dropdown>
2020
+ <terra-dropdown
2021
+ placement="bottom-start"
2022
+ distance="4"
2023
+ @terra-show=${this.handleDropdownShow}
2024
+ @terra-hide=${this.handleDropdownHide}
2025
+ hoist
2026
+ >
2027
+ <terra-input
2028
+ slot="trigger"
2029
+ .label=${this.endLabel || (this.label ? `${this.label} (End)` : "End Date")}
2030
+ .hideLabel=${this.hideLabel}
2031
+ .helpText=${this.endHelpText || this.helpText}
2032
+ .value=${this.getEndDateDisplayValue()}
2033
+ placeholder=${this.endPlaceholder}
2034
+ @terra-blur=${this.handleEndInputBlur}
2035
+ @keydown=${this.handleKeydown}
2036
+ name="end-date"
2037
+ >
2038
+ ${this.renderCalendarIcon()}
2039
+ </terra-input>
2040
+ ${this.renderCalendarContent()}
2041
+ </terra-dropdown>
2042
+ </div>
2043
+ ` : html`
2044
+ <terra-dropdown
2045
+ ${ref(this.dropdownRef)}
2046
+ placement="bottom-start"
2047
+ distance="4"
2048
+ @terra-show=${this.handleDropdownShow}
2049
+ @terra-hide=${this.handleDropdownHide}
2050
+ hoist
2051
+ >
2052
+ <terra-input
2053
+ slot="trigger"
2054
+ .label=${this.label}
2055
+ .hideLabel=${this.hideLabel}
2056
+ .helpText=${this.helpText}
2057
+ .value=${this.getDisplayValue()}
2058
+ placeholder=${this.placeholder}
2059
+ @terra-blur=${this.handleInputBlur}
2060
+ @keydown=${this.handleKeydown}
2061
+ name="date"
2062
+ >
2063
+ ${this.renderCalendarIcon()}
2064
+ </terra-input>
2065
+ ${this.renderCalendarContent()}
2066
+ </terra-dropdown>
2067
+ `}
2068
+ </div>
2069
+ `;
2070
+ }
2071
+ };
2072
+ TerraDatePicker.styles = [component_styles_default, date_picker_styles_default];
2073
+ TerraDatePicker.dependencies = {
2074
+ "terra-button": TerraButton,
2075
+ "terra-input": TerraInput,
2076
+ "terra-dropdown": TerraDropdown
2077
+ };
2078
+ __decorateClass([
2079
+ property()
2080
+ ], TerraDatePicker.prototype, "id", 2);
2081
+ __decorateClass([
2082
+ property({ type: Boolean, reflect: true })
2083
+ ], TerraDatePicker.prototype, "range", 2);
2084
+ __decorateClass([
2085
+ property({ attribute: "min-date", reflect: true })
2086
+ ], TerraDatePicker.prototype, "minDate", 2);
2087
+ __decorateClass([
2088
+ property({ attribute: "max-date", reflect: true })
2089
+ ], TerraDatePicker.prototype, "maxDate", 2);
2090
+ __decorateClass([
2091
+ property({ attribute: "start-date", reflect: true })
2092
+ ], TerraDatePicker.prototype, "startDate", 2);
2093
+ __decorateClass([
2094
+ property({ attribute: "end-date", reflect: true })
2095
+ ], TerraDatePicker.prototype, "endDate", 2);
2096
+ __decorateClass([
2097
+ property({ attribute: "hide-label", type: Boolean })
2098
+ ], TerraDatePicker.prototype, "hideLabel", 2);
2099
+ __decorateClass([
2100
+ property()
2101
+ ], TerraDatePicker.prototype, "label", 2);
2102
+ __decorateClass([
2103
+ property({ attribute: "help-text" })
2104
+ ], TerraDatePicker.prototype, "helpText", 2);
2105
+ __decorateClass([
2106
+ property({ attribute: "start-help-text" })
2107
+ ], TerraDatePicker.prototype, "startHelpText", 2);
2108
+ __decorateClass([
2109
+ property({ attribute: "end-help-text" })
2110
+ ], TerraDatePicker.prototype, "endHelpText", 2);
2111
+ __decorateClass([
2112
+ property({ attribute: "start-label" })
2113
+ ], TerraDatePicker.prototype, "startLabel", 2);
2114
+ __decorateClass([
2115
+ property({ attribute: "end-label" })
2116
+ ], TerraDatePicker.prototype, "endLabel", 2);
2117
+ __decorateClass([
2118
+ property({ type: Boolean, attribute: "show-presets" })
2119
+ ], TerraDatePicker.prototype, "showPresets", 2);
2120
+ __decorateClass([
2121
+ property({ type: Array })
2122
+ ], TerraDatePicker.prototype, "presets", 2);
2123
+ __decorateClass([
2124
+ property({ type: Boolean, attribute: "enable-time" })
2125
+ ], TerraDatePicker.prototype, "enableTime", 2);
2126
+ __decorateClass([
2127
+ property({ attribute: "display-format" })
2128
+ ], TerraDatePicker.prototype, "displayFormat", 2);
2129
+ __decorateClass([
2130
+ property({ type: Boolean })
2131
+ ], TerraDatePicker.prototype, "inline", 2);
2132
+ __decorateClass([
2133
+ property({ type: Boolean, attribute: "split-inputs" })
2134
+ ], TerraDatePicker.prototype, "splitInputs", 2);
2135
+ __decorateClass([
2136
+ property()
2137
+ ], TerraDatePicker.prototype, "placeholder", 2);
2138
+ __decorateClass([
2139
+ property()
2140
+ ], TerraDatePicker.prototype, "startPlaceholder", 2);
2141
+ __decorateClass([
2142
+ property()
2143
+ ], TerraDatePicker.prototype, "endPlaceholder", 2);
2144
+ __decorateClass([
2145
+ property({ reflect: true })
2146
+ ], TerraDatePicker.prototype, "role", 2);
2147
+ __decorateClass([
2148
+ property({ reflect: true, attribute: "aria-label" })
2149
+ ], TerraDatePicker.prototype, "ariaLabel", 2);
2150
+ __decorateClass([
2151
+ property({ type: Boolean })
2152
+ ], TerraDatePicker.prototype, "hideClearAll", 2);
2153
+ __decorateClass([
2154
+ property()
2155
+ ], TerraDatePicker.prototype, "clearAllLabel", 2);
2156
+ __decorateClass([
2157
+ state()
2158
+ ], TerraDatePicker.prototype, "isOpen", 2);
2159
+ __decorateClass([
2160
+ state()
2161
+ ], TerraDatePicker.prototype, "leftMonth", 2);
2162
+ __decorateClass([
2163
+ state()
2164
+ ], TerraDatePicker.prototype, "rightMonth", 2);
2165
+ __decorateClass([
2166
+ state()
2167
+ ], TerraDatePicker.prototype, "selectedStart", 2);
2168
+ __decorateClass([
2169
+ state()
2170
+ ], TerraDatePicker.prototype, "selectedEnd", 2);
2171
+ __decorateClass([
2172
+ state()
2173
+ ], TerraDatePicker.prototype, "hoverDate", 2);
2174
+ __decorateClass([
2175
+ state()
2176
+ ], TerraDatePicker.prototype, "isSelectingRange", 2);
2177
+ __decorateClass([
2178
+ state()
2179
+ ], TerraDatePicker.prototype, "showLeftMonthDropdown", 2);
2180
+ __decorateClass([
2181
+ state()
2182
+ ], TerraDatePicker.prototype, "showRightMonthDropdown", 2);
2183
+ __decorateClass([
2184
+ state()
2185
+ ], TerraDatePicker.prototype, "startHour", 2);
2186
+ __decorateClass([
2187
+ state()
2188
+ ], TerraDatePicker.prototype, "startMinute", 2);
2189
+ __decorateClass([
2190
+ state()
2191
+ ], TerraDatePicker.prototype, "startSecond", 2);
2192
+ __decorateClass([
2193
+ state()
2194
+ ], TerraDatePicker.prototype, "endHour", 2);
2195
+ __decorateClass([
2196
+ state()
2197
+ ], TerraDatePicker.prototype, "endMinute", 2);
2198
+ __decorateClass([
2199
+ state()
2200
+ ], TerraDatePicker.prototype, "endSecond", 2);
2201
+ __decorateClass([
2202
+ state()
2203
+ ], TerraDatePicker.prototype, "selectedDates", 2);
2204
+ __decorateClass([
2205
+ query(".date-picker__dropdown")
2206
+ ], TerraDatePicker.prototype, "dropdown", 2);
2207
+
2208
+ export {
2209
+ TerraDatePicker
2210
+ };