@nasa-terra/components 0.0.43 → 0.0.45

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 (330) hide show
  1. package/cdn/chunks/{chunk.KJ4BZBTX.js → chunk.27EMK3NO.js} +16 -4
  2. package/cdn/chunks/{chunk.OGI7F4SN.js → chunk.2BBYUVXZ.js} +1 -1
  3. package/cdn/chunks/{chunk.JZBUILMZ.js → chunk.2JVFCPZQ.js} +50 -6
  4. package/cdn/chunks/{chunk.5TCPFCD2.js → chunk.2XTKUKIB.js} +7 -7
  5. package/{dist/chunks/chunk.V7QPBR74.js → cdn/chunks/chunk.3S6YU4GV.js} +1 -1
  6. package/cdn/chunks/{chunk.ESMJ3XDS.js → chunk.4IAWGN7F.js} +1 -1
  7. package/cdn/chunks/{chunk.SNULTXLY.js → chunk.4UYNOT7W.js} +1 -1
  8. package/cdn/chunks/{chunk.ZJAN35CA.js → chunk.4Z4SJPRM.js} +1 -1
  9. package/{dist/chunks/chunk.4CGQC6VG.js → cdn/chunks/chunk.6EHV6K3S.js} +1 -1
  10. package/cdn/chunks/{chunk.MUAWDIKB.js → chunk.6NEMJOXS.js} +2 -2
  11. package/cdn/chunks/chunk.754XAIN7.js +39 -0
  12. package/cdn/chunks/{chunk.4T3FDB6X.js → chunk.AIVF2LYW.js} +1 -1
  13. package/cdn/chunks/{chunk.BKOLMPIY.js → chunk.ALXMBVVZ.js} +3 -3
  14. package/{dist/chunks/chunk.WSTFOCG3.js → cdn/chunks/chunk.BIBODSR4.js} +1 -1
  15. package/{dist/chunks/chunk.5SCGJTRA.js → cdn/chunks/chunk.BSPUHX7G.js} +1 -1
  16. package/cdn/chunks/{chunk.FROJF7FV.js → chunk.CZILWG23.js} +2 -2
  17. package/cdn/chunks/{chunk.GGDBLPBD.js → chunk.DDY3FGPF.js} +1 -1
  18. package/cdn/chunks/{chunk.WQQBVCL5.js → chunk.DF3GGEJ5.js} +1 -1
  19. package/cdn/chunks/{chunk.NL52F475.js → chunk.DWZFUOHR.js} +1 -1
  20. package/cdn/chunks/{chunk.RGXPGRGO.js → chunk.EBWKHD35.js} +1 -1
  21. package/cdn/chunks/{chunk.HY2OIJPI.js → chunk.EDZIBUTU.js} +1 -1
  22. package/cdn/chunks/{chunk.XJVNZTEE.js → chunk.FE7PKR4T.js} +1 -1
  23. package/cdn/chunks/{chunk.TY7DVGTP.js → chunk.FKZEIUI7.js} +5 -5
  24. package/cdn/chunks/{chunk.UJXGVWQA.js → chunk.FM3UWDOB.js} +1 -1
  25. package/cdn/chunks/{chunk.2GGZHPMT.js → chunk.HEVFNGHQ.js} +8 -8
  26. package/{dist/chunks/chunk.FLB4JM62.js → cdn/chunks/chunk.HFCQI2MX.js} +1 -1
  27. package/cdn/chunks/chunk.HSD63J4K.js +11 -0
  28. package/cdn/chunks/{chunk.ANZFZPPU.js → chunk.IL7RNVV6.js} +84 -27
  29. package/cdn/chunks/{chunk.FBCYHMRV.js → chunk.J53H64HP.js} +6 -6
  30. package/cdn/chunks/{chunk.BPNFS4ED.js → chunk.K6GAF43H.js} +1 -1
  31. package/cdn/chunks/{chunk.XGH62P7U.js → chunk.KDZX6267.js} +1 -1
  32. package/cdn/chunks/{chunk.KAY2II66.js → chunk.KP4VCTRF.js} +1 -1
  33. package/cdn/chunks/{chunk.WI5HA4EV.js → chunk.LSHZ2GJS.js} +1 -1
  34. package/cdn/chunks/{chunk.XAQF3BDY.js → chunk.LW4FDJZV.js} +1 -1
  35. package/cdn/chunks/{chunk.RBDPBQSI.js → chunk.NZQLJJWI.js} +1 -1
  36. package/{dist/chunks/chunk.T6R6HWM7.js → cdn/chunks/chunk.O73IBY6C.js} +1 -1
  37. package/{dist/chunks/chunk.N2FQ2MRM.js → cdn/chunks/chunk.QI4CW6SZ.js} +1 -1
  38. package/cdn/chunks/{chunk.HPB6CXCO.js → chunk.QWNJZLAC.js} +1 -1
  39. package/cdn/chunks/{chunk.7HEVEWEJ.js → chunk.RCPEY33L.js} +15 -15
  40. package/cdn/chunks/{chunk.Q6QGJGPK.js → chunk.REGE7WJB.js} +1 -1
  41. package/cdn/chunks/{chunk.IAPB27AW.js → chunk.RN6XJ3EC.js} +6 -6
  42. package/{dist/chunks/chunk.QIA6DTTP.js → cdn/chunks/chunk.SLY7YUFC.js} +1 -1
  43. package/cdn/chunks/chunk.SVB6CWAO.js +187 -0
  44. package/{dist/chunks/chunk.H7YVB7XB.js → cdn/chunks/chunk.T6GXXTCR.js} +1 -1
  45. package/cdn/chunks/chunk.TEWFW2B2.js +21 -0
  46. package/{dist/chunks/chunk.YS5RGF3Z.js → cdn/chunks/chunk.TWMOVOPK.js} +1 -1
  47. package/cdn/chunks/{chunk.XTDVJMOY.js → chunk.U5KI6JRO.js} +1 -1
  48. package/cdn/chunks/{chunk.HNZE7Q25.js → chunk.UOAXJTR4.js} +1 -1
  49. package/cdn/chunks/chunk.UQYGB6XL.js +660 -0
  50. package/cdn/chunks/{chunk.3JPFQJXJ.js → chunk.VD37HWZF.js} +10 -10
  51. package/cdn/chunks/{chunk.D7BYLJCK.js → chunk.VV7CXX5L.js} +12 -12
  52. package/cdn/chunks/{chunk.D2R6EOTB.js → chunk.VWQZIINL.js} +1 -1
  53. package/{dist/chunks/chunk.CPI32ZAZ.js → cdn/chunks/chunk.XGF2P4YV.js} +1 -1
  54. package/cdn/chunks/{chunk.ELAWVWEZ.js → chunk.XO3SOVHY.js} +2 -29
  55. package/cdn/chunks/{chunk.E6NS2XK6.js → chunk.XSXK5XPO.js} +1 -1
  56. package/cdn/chunks/chunk.XU3NXPIM.js +193 -0
  57. package/{dist/chunks/chunk.LNGXE27U.js → cdn/chunks/chunk.Y6FGE5IT.js} +1 -1
  58. package/cdn/chunks/{chunk.T6H2MZZI.js → chunk.Y7I2RXN6.js} +1 -10
  59. package/cdn/chunks/{chunk.S4INEVCC.js → chunk.Y7P4LXE6.js} +11 -11
  60. package/cdn/chunks/{chunk.ZU6ADSVN.js → chunk.YCRGAL67.js} +1 -1
  61. package/{dist/chunks/chunk.AFI6EDPJ.js → cdn/chunks/chunk.YDTFMWV3.js} +1 -1
  62. package/cdn/chunks/{chunk.L5Q6MO7Q.js → chunk.YHH2QGV3.js} +1 -1
  63. package/cdn/chunks/chunk.YIABHSHN.js +505 -0
  64. package/cdn/chunks/{chunk.4XFHUWXK.js → chunk.YZXMJRFT.js} +1 -1
  65. package/{dist/chunks/chunk.37HULH6M.js → cdn/chunks/chunk.ZPUZYX2F.js} +1 -1
  66. package/cdn/chunks/{chunk.QUT2NHTH.js → chunk.ZROILKPX.js} +1 -1
  67. package/cdn/chunks/{chunk.CH45CXZY.js → chunk.ZX2ZNCYX.js} +1 -1
  68. package/cdn/components/browse-variables/browse-variables.component.js +23 -22
  69. package/cdn/components/browse-variables/browse-variables.controller.js +4 -2
  70. package/cdn/components/browse-variables/browse-variables.js +24 -23
  71. package/cdn/components/browse-variables/browse-variables.types.d.ts +8 -0
  72. package/cdn/components/button/button.component.js +4 -4
  73. package/cdn/components/button/button.js +5 -5
  74. package/cdn/components/chip/chip.component.js +2 -2
  75. package/cdn/components/chip/chip.js +3 -3
  76. package/cdn/components/combobox/combobox.component.js +5 -5
  77. package/cdn/components/combobox/combobox.js +6 -6
  78. package/cdn/components/data-rods/data-rods.component.d.ts +57 -0
  79. package/cdn/components/data-rods/data-rods.component.js +62 -0
  80. package/cdn/components/data-rods/data-rods.d.ts +8 -0
  81. package/cdn/components/data-rods/data-rods.js +63 -0
  82. package/cdn/components/data-rods/data-rods.styles.d.ts +2 -0
  83. package/cdn/components/data-rods/data-rods.styles.js +9 -0
  84. package/cdn/components/date-picker/date-picker.component.js +2 -2
  85. package/cdn/components/date-picker/date-picker.js +3 -3
  86. package/cdn/components/date-range-slider/date-range-slider.component.js +5 -6
  87. package/cdn/components/date-range-slider/date-range-slider.js +6 -7
  88. package/cdn/components/dialog/dialog.component.js +2 -2
  89. package/cdn/components/dialog/dialog.js +3 -3
  90. package/cdn/components/icon/icon.component.js +4 -4
  91. package/cdn/components/icon/icon.js +5 -5
  92. package/cdn/components/icon/library.js +2 -2
  93. package/cdn/components/loader/loader.component.js +2 -2
  94. package/cdn/components/loader/loader.js +3 -3
  95. package/cdn/components/login/login.component.js +13 -13
  96. package/cdn/components/login/login.js +14 -14
  97. package/cdn/components/map/leaflet-draw.styles.js +1 -1
  98. package/cdn/components/map/leaflet-utils.js +1 -1
  99. package/cdn/components/map/map.component.js +6 -6
  100. package/cdn/components/map/map.js +7 -7
  101. package/cdn/components/plot/plot.component.js +2 -2
  102. package/cdn/components/plot/plot.js +3 -3
  103. package/cdn/components/skeleton/skeleton.component.js +4 -4
  104. package/cdn/components/skeleton/skeleton.js +5 -5
  105. package/cdn/components/spatial-picker/spatial-picker.component.d.ts +8 -0
  106. package/cdn/components/spatial-picker/spatial-picker.component.js +7 -7
  107. package/cdn/components/spatial-picker/spatial-picker.js +8 -8
  108. package/cdn/components/time-series/time-series.component.d.ts +8 -49
  109. package/cdn/components/time-series/time-series.component.js +17 -40
  110. package/cdn/components/time-series/time-series.controller.d.ts +6 -9
  111. package/cdn/components/time-series/time-series.controller.js +3 -3
  112. package/cdn/components/time-series/time-series.js +18 -41
  113. package/cdn/components/time-series/time-series.styles.js +1 -1
  114. package/cdn/components/time-series/time-series.types.d.ts +1 -1
  115. package/cdn/components/variable-combobox/lib.js +1 -1
  116. package/cdn/components/variable-combobox/variable-combobox.component.js +14 -14
  117. package/cdn/components/variable-combobox/variable-combobox.controller.js +3 -3
  118. package/cdn/components/variable-combobox/variable-combobox.js +15 -15
  119. package/cdn/components/variable-keyword-search/variable-keyword-search.component.js +17 -15
  120. package/cdn/components/variable-keyword-search/variable-keyword-search.controller.js +4 -2
  121. package/cdn/components/variable-keyword-search/variable-keyword-search.js +18 -16
  122. package/cdn/custom-elements.json +1524 -1479
  123. package/cdn/events/terra-time-series-data-change.d.ts +2 -2
  124. package/cdn/react/browse-variables/index.js +24 -23
  125. package/cdn/react/button/index.js +5 -5
  126. package/cdn/react/chip/index.js +3 -3
  127. package/cdn/react/combobox/index.js +6 -6
  128. package/cdn/react/data-rods/index.d.ts +9 -0
  129. package/cdn/react/data-rods/index.js +63 -0
  130. package/cdn/react/date-picker/index.js +3 -3
  131. package/cdn/react/date-range-slider/index.js +6 -7
  132. package/cdn/react/dialog/index.js +3 -3
  133. package/cdn/react/icon/index.js +5 -5
  134. package/cdn/react/index.d.ts +5 -4
  135. package/cdn/react/index.js +87 -83
  136. package/cdn/react/loader/index.js +3 -3
  137. package/cdn/react/login/index.js +14 -14
  138. package/cdn/react/map/index.js +7 -7
  139. package/cdn/react/plot/index.js +3 -3
  140. package/cdn/react/skeleton/index.js +5 -5
  141. package/cdn/react/spatial-picker/index.js +8 -8
  142. package/cdn/react/time-series/index.d.ts +0 -2
  143. package/cdn/react/time-series/index.js +18 -41
  144. package/cdn/react/variable-combobox/index.js +15 -15
  145. package/cdn/react/variable-keyword-search/index.js +18 -16
  146. package/cdn/terra-ui-components.d.ts +1 -0
  147. package/cdn/terra-ui-components.js +91 -86
  148. package/cdn/types/vue/index.d.ts +97 -78
  149. package/cdn/utilities/animation.js +2 -2
  150. package/cdn/utilities/date.d.ts +8 -0
  151. package/cdn/utilities/date.js +5 -2
  152. package/cdn/utilities/icon-library.js +2 -2
  153. package/cdn/variable-catalog/giovanni-variable-catalog.d.ts +4 -0
  154. package/cdn/variable-catalog/queries.d.ts +1 -0
  155. package/cdn/variable-catalog/types.d.ts +15 -0
  156. package/cdn/vscode.html-custom-data.json +146 -105
  157. package/cdn/web-types.json +306 -259
  158. package/dist/chunks/{chunk.FAYNPOTP.js → chunk.2R2CMZU5.js} +1 -1
  159. package/dist/chunks/{chunk.M6QZS4UJ.js → chunk.33MT36PS.js} +3 -3
  160. package/dist/chunks/{chunk.4AOEB4BK.js → chunk.3B622XLR.js} +2 -2
  161. package/dist/chunks/{chunk.E4PWWMRO.js → chunk.3C5R6F2R.js} +1 -1
  162. package/{cdn/chunks/chunk.HWT242NM.js → dist/chunks/chunk.3CTBJXJY.js} +1 -1
  163. package/dist/chunks/{chunk.GHEMW42S.js → chunk.44QP2ERH.js} +1 -1
  164. package/dist/chunks/{chunk.KOMSLHFU.js → chunk.47RYAEL6.js} +1 -1
  165. package/dist/chunks/chunk.4AMT22AE.js +11 -0
  166. package/dist/chunks/{chunk.TWPOB6FJ.js → chunk.6DOKSRWY.js} +1 -1
  167. package/{cdn/chunks/chunk.7BF65WWU.js → dist/chunks/chunk.6XHLGITH.js} +1 -1
  168. package/dist/chunks/{chunk.JTXEL73L.js → chunk.75SJTCIV.js} +1 -1
  169. package/dist/chunks/chunk.7JBFBZ5C.js +27 -0
  170. package/dist/chunks/{chunk.WAIWLZ6Z.js → chunk.7OWQQEAP.js} +83 -26
  171. package/dist/chunks/{chunk.TCMWMNOB.js → chunk.7ZF43BLB.js} +5 -5
  172. package/dist/chunks/{chunk.W2CS6IVI.js → chunk.7ZPJWNP3.js} +1 -1
  173. package/dist/chunks/{chunk.YQPJQSUN.js → chunk.A7QBYP2G.js} +1 -1
  174. package/dist/chunks/{chunk.NL2R2NSO.js → chunk.AY7TGBWI.js} +2 -31
  175. package/{cdn/chunks/chunk.TVULBZN7.js → dist/chunks/chunk.BA5UHVQA.js} +1 -1
  176. package/dist/chunks/{chunk.HJTPJ2RC.js → chunk.BMR2MSLS.js} +1 -1
  177. package/dist/chunks/{chunk.ENYPV32S.js → chunk.CBBRYITQ.js} +6 -6
  178. package/{cdn/chunks/chunk.7SSKWW2H.js → dist/chunks/chunk.CBPNOBYV.js} +1 -1
  179. package/dist/chunks/{chunk.7P5EOY66.js → chunk.DKAE3S5I.js} +4 -4
  180. package/dist/chunks/{chunk.H22DYLKA.js → chunk.DUGMF3IG.js} +5 -5
  181. package/{cdn/chunks/chunk.YUAVRIVY.js → dist/chunks/chunk.EDRHDXR5.js} +1 -1
  182. package/dist/chunks/{chunk.JGX3UBBP.js → chunk.EQN4RFGU.js} +1 -1
  183. package/dist/chunks/{chunk.67I5KKLX.js → chunk.GIJRARNO.js} +1 -1
  184. package/dist/chunks/{chunk.MILUFBKY.js → chunk.H4HQMP7O.js} +1 -1
  185. package/{cdn/chunks/chunk.CANVOVRP.js → dist/chunks/chunk.HHQCCB7G.js} +1 -1
  186. package/dist/chunks/{chunk.4XAV4ODI.js → chunk.HO7IFKH7.js} +1 -1
  187. package/dist/chunks/{chunk.XR6W57RO.js → chunk.I2NF2HZM.js} +1 -1
  188. package/dist/chunks/{chunk.5EHGVGXV.js → chunk.K2IRF2QI.js} +1 -10
  189. package/dist/chunks/{chunk.MZHCB5V5.js → chunk.K4PW2RMT.js} +1 -1
  190. package/{cdn/chunks/chunk.YYL6BIZT.js → dist/chunks/chunk.KB7LV3EL.js} +1 -1
  191. package/dist/chunks/{chunk.ZLAVT4EU.js → chunk.LE33GS2U.js} +7 -7
  192. package/dist/chunks/{chunk.5AOSWMDT.js → chunk.LFZXSVJS.js} +1 -1
  193. package/{cdn/chunks/chunk.GZEUJ2JS.js → dist/chunks/chunk.LO5DQW6B.js} +1 -1
  194. package/dist/chunks/{chunk.QDWCCDUY.js → chunk.LYNMSIPM.js} +1 -1
  195. package/dist/chunks/{chunk.MS3DCXPP.js → chunk.MEPZIAGL.js} +1 -1
  196. package/{cdn/chunks/chunk.5HHHG4SV.js → dist/chunks/chunk.MLOEWNPV.js} +1 -1
  197. package/dist/chunks/{chunk.JFAR45NP.js → chunk.MS6UNHXS.js} +1 -1
  198. package/dist/chunks/{chunk.RXZPXAB4.js → chunk.MUOIGLIS.js} +50 -6
  199. package/dist/chunks/{chunk.KD3R2URP.js → chunk.NHJ3EBNG.js} +1 -1
  200. package/dist/chunks/{chunk.QHNJQDE5.js → chunk.NHW27P5N.js} +1 -1
  201. package/{cdn/chunks/chunk.MNRRHWDX.js → dist/chunks/chunk.NWOLKB4W.js} +1 -1
  202. package/{cdn/chunks/chunk.LFJJNF7C.js → dist/chunks/chunk.NY5ELIGL.js} +1 -1
  203. package/{cdn/chunks/chunk.BRFSUY5D.js → dist/chunks/chunk.NZCOLBOI.js} +1 -1
  204. package/dist/chunks/{chunk.O5QN7EQO.js → chunk.O4UZCLJJ.js} +1 -1
  205. package/dist/chunks/{chunk.AAWOHDFX.js → chunk.P442U2FF.js} +16 -4
  206. package/{cdn/chunks/chunk.RJCMYVMK.js → dist/chunks/chunk.Q6DRT4JH.js} +1 -1
  207. package/dist/chunks/chunk.QW3YB4FP.js +647 -0
  208. package/{cdn/chunks/chunk.3GLWKAG4.js → dist/chunks/chunk.RMHKCYA6.js} +1 -1
  209. package/dist/chunks/{chunk.UPG6O57L.js → chunk.RT2CYLEI.js} +1 -1
  210. package/dist/chunks/{chunk.OOLLCVNR.js → chunk.S2YNNRAG.js} +1 -1
  211. package/dist/chunks/chunk.TFI3UXXB.js +193 -0
  212. package/dist/chunks/{chunk.E4LMDFCL.js → chunk.TY6D5XAZ.js} +1 -1
  213. package/dist/chunks/chunk.V3AQ3G4R.js +21 -0
  214. package/dist/chunks/{chunk.5LMWCV76.js → chunk.V3YFBP3T.js} +1 -1
  215. package/dist/chunks/chunk.VFU2O56V.js +180 -0
  216. package/dist/chunks/{chunk.OMJNBUCH.js → chunk.VQIZ36B7.js} +12 -12
  217. package/dist/chunks/{chunk.SZGKWCF3.js → chunk.WAHH4JE5.js} +1 -1
  218. package/dist/chunks/{chunk.OFKYTBNH.js → chunk.WW7KBC2J.js} +4 -4
  219. package/dist/chunks/{chunk.QM5FOCP6.js → chunk.XMJAGELF.js} +1 -1
  220. package/dist/chunks/{chunk.6YWP3FBT.js → chunk.YNJTPABM.js} +1 -1
  221. package/dist/chunks/{chunk.NDYEIMNI.js → chunk.Z7YYSHP5.js} +8 -8
  222. package/dist/chunks/chunk.ZIB2YERI.js +36 -0
  223. package/dist/chunks/{chunk.X4377OEL.js → chunk.ZMMA3LHG.js} +6 -6
  224. package/dist/components/browse-variables/browse-variables.component.js +19 -18
  225. package/dist/components/browse-variables/browse-variables.controller.js +4 -2
  226. package/dist/components/browse-variables/browse-variables.js +20 -19
  227. package/dist/components/browse-variables/browse-variables.types.d.ts +8 -0
  228. package/dist/components/button/button.component.js +3 -3
  229. package/dist/components/button/button.js +4 -4
  230. package/dist/components/chip/chip.component.js +2 -2
  231. package/dist/components/chip/chip.js +3 -3
  232. package/dist/components/combobox/combobox.component.js +3 -3
  233. package/dist/components/combobox/combobox.js +4 -4
  234. package/dist/components/data-rods/data-rods.component.d.ts +57 -0
  235. package/dist/components/data-rods/data-rods.component.js +47 -0
  236. package/dist/components/data-rods/data-rods.d.ts +8 -0
  237. package/dist/components/data-rods/data-rods.js +48 -0
  238. package/dist/components/data-rods/data-rods.styles.d.ts +2 -0
  239. package/dist/components/data-rods/data-rods.styles.js +7 -0
  240. package/dist/components/date-picker/date-picker.component.js +2 -2
  241. package/dist/components/date-picker/date-picker.js +3 -3
  242. package/dist/components/date-range-slider/date-range-slider.component.js +4 -4
  243. package/dist/components/date-range-slider/date-range-slider.js +5 -5
  244. package/dist/components/dialog/dialog.component.js +2 -2
  245. package/dist/components/dialog/dialog.js +3 -3
  246. package/dist/components/icon/icon.component.js +4 -4
  247. package/dist/components/icon/icon.js +5 -5
  248. package/dist/components/icon/library.js +2 -2
  249. package/dist/components/loader/loader.component.js +2 -2
  250. package/dist/components/loader/loader.js +3 -3
  251. package/dist/components/login/login.component.js +11 -11
  252. package/dist/components/login/login.js +12 -12
  253. package/dist/components/map/leaflet-draw.styles.js +1 -1
  254. package/dist/components/map/leaflet-utils.js +1 -1
  255. package/dist/components/map/map.component.js +5 -5
  256. package/dist/components/map/map.js +6 -6
  257. package/dist/components/plot/plot.component.js +2 -2
  258. package/dist/components/plot/plot.js +3 -3
  259. package/dist/components/skeleton/skeleton.component.js +2 -2
  260. package/dist/components/skeleton/skeleton.js +3 -3
  261. package/dist/components/spatial-picker/spatial-picker.component.d.ts +8 -0
  262. package/dist/components/spatial-picker/spatial-picker.component.js +6 -6
  263. package/dist/components/spatial-picker/spatial-picker.js +7 -7
  264. package/dist/components/time-series/time-series.component.d.ts +8 -49
  265. package/dist/components/time-series/time-series.component.js +14 -32
  266. package/dist/components/time-series/time-series.controller.d.ts +6 -9
  267. package/dist/components/time-series/time-series.controller.js +2 -1
  268. package/dist/components/time-series/time-series.js +15 -33
  269. package/dist/components/time-series/time-series.styles.js +1 -1
  270. package/dist/components/time-series/time-series.types.d.ts +1 -1
  271. package/dist/components/variable-combobox/lib.js +1 -1
  272. package/dist/components/variable-combobox/variable-combobox.component.js +11 -11
  273. package/dist/components/variable-combobox/variable-combobox.controller.js +2 -2
  274. package/dist/components/variable-combobox/variable-combobox.js +12 -12
  275. package/dist/components/variable-keyword-search/variable-keyword-search.component.js +14 -12
  276. package/dist/components/variable-keyword-search/variable-keyword-search.controller.js +3 -1
  277. package/dist/components/variable-keyword-search/variable-keyword-search.js +15 -13
  278. package/dist/custom-elements.json +1524 -1479
  279. package/dist/events/terra-time-series-data-change.d.ts +2 -2
  280. package/dist/react/browse-variables/index.js +20 -19
  281. package/dist/react/button/index.js +4 -4
  282. package/dist/react/chip/index.js +3 -3
  283. package/dist/react/combobox/index.js +4 -4
  284. package/dist/react/data-rods/index.d.ts +9 -0
  285. package/dist/react/data-rods/index.js +48 -0
  286. package/dist/react/date-picker/index.js +3 -3
  287. package/dist/react/date-range-slider/index.js +5 -5
  288. package/dist/react/dialog/index.js +3 -3
  289. package/dist/react/icon/index.js +5 -5
  290. package/dist/react/index.d.ts +5 -4
  291. package/dist/react/index.js +81 -76
  292. package/dist/react/loader/index.js +3 -3
  293. package/dist/react/login/index.js +12 -12
  294. package/dist/react/map/index.js +6 -6
  295. package/dist/react/plot/index.js +3 -3
  296. package/dist/react/skeleton/index.js +3 -3
  297. package/dist/react/spatial-picker/index.js +7 -7
  298. package/dist/react/time-series/index.d.ts +0 -2
  299. package/dist/react/time-series/index.js +15 -33
  300. package/dist/react/variable-combobox/index.js +12 -12
  301. package/dist/react/variable-keyword-search/index.js +15 -13
  302. package/dist/terra-ui-components.d.ts +1 -0
  303. package/dist/terra-ui-components.js +84 -78
  304. package/dist/terra_ui_components-0.0.45-py3-none-any.whl +0 -0
  305. package/dist/{terra_ui_components-0.0.43.tar.gz → terra_ui_components-0.0.45.tar.gz} +0 -0
  306. package/dist/types/vue/index.d.ts +97 -78
  307. package/dist/utilities/date.d.ts +8 -0
  308. package/dist/utilities/date.js +5 -1
  309. package/dist/utilities/icon-library.js +2 -2
  310. package/dist/variable-catalog/giovanni-variable-catalog.d.ts +4 -0
  311. package/dist/variable-catalog/queries.d.ts +1 -0
  312. package/dist/variable-catalog/types.d.ts +15 -0
  313. package/dist/vscode.html-custom-data.json +146 -105
  314. package/dist/web-types.json +306 -259
  315. package/package.json +1 -1
  316. package/cdn/chunks/chunk.46IWBVYP.js +0 -13
  317. package/cdn/chunks/chunk.FRHQ2JZY.js +0 -30
  318. package/cdn/chunks/chunk.GD2FHNDE.js +0 -1131
  319. package/cdn/chunks/chunk.TNVTVMRS.js +0 -36
  320. package/cdn/components/browse-variables/repositories/giovanni.repository.d.ts +0 -8
  321. package/cdn/components/browse-variables/repositories/giovanni.repository.js +0 -7
  322. package/dist/chunks/chunk.4TEZ5QPN.js +0 -671
  323. package/dist/chunks/chunk.OIDMX5LU.js +0 -10
  324. package/dist/chunks/chunk.TNVTVMRS.js +0 -36
  325. package/dist/components/browse-variables/repositories/giovanni.repository.d.ts +0 -8
  326. package/dist/components/browse-variables/repositories/giovanni.repository.js +0 -7
  327. package/dist/terra_ui_components-0.0.43-py3-none-any.whl +0 -0
  328. package/cdn/chunks/{chunk.7DOMZGX7.js → chunk.MDRUDBRH.js} +3 -3
  329. package/cdn/chunks/{chunk.LOCO37M5.js → chunk.X2C7E56W.js} +3 -3
  330. package/dist/chunks/{chunk.7DOMZGX7.js → chunk.MDRUDBRH.js} +3 -3
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  TerraBrowseVariables
3
- } from "./chunk.7HEVEWEJ.js";
3
+ } from "./chunk.RCPEY33L.js";
4
4
 
5
5
  // src/react/browse-variables/index.ts
6
6
  import * as React from "react";
@@ -0,0 +1,660 @@
1
+ import {
2
+ TimeSeriesController
3
+ } from "./chunk.IL7RNVV6.js";
4
+ import {
5
+ time_series_styles_default
6
+ } from "./chunk.Y7I2RXN6.js";
7
+ import {
8
+ TerraPlot,
9
+ require_plotly_min
10
+ } from "./chunk.FM3UWDOB.js";
11
+ import {
12
+ h
13
+ } from "./chunk.QB5SASDL.js";
14
+ import {
15
+ TerraLoader
16
+ } from "./chunk.LSHZ2GJS.js";
17
+ import {
18
+ TerraIcon
19
+ } from "./chunk.FKZEIUI7.js";
20
+ import {
21
+ GiovanniVariableCatalog
22
+ } from "./chunk.XU3NXPIM.js";
23
+ import {
24
+ h as h2,
25
+ s
26
+ } from "./chunk.UGTZ22DI.js";
27
+ import {
28
+ TerraButton
29
+ } from "./chunk.J53H64HP.js";
30
+ import {
31
+ watch
32
+ } from "./chunk.6MMTW476.js";
33
+ import {
34
+ TerraElement,
35
+ component_styles_default
36
+ } from "./chunk.2BBYUVXZ.js";
37
+ import {
38
+ e,
39
+ n,
40
+ r
41
+ } from "./chunk.2FFSUM6T.js";
42
+ import {
43
+ x
44
+ } from "./chunk.PQFHJHNO.js";
45
+ import {
46
+ __decorateClass,
47
+ __privateAdd,
48
+ __privateGet,
49
+ __privateMethod,
50
+ __privateSet,
51
+ __toESM
52
+ } from "./chunk.6JHIJHTB.js";
53
+
54
+ // src/components/time-series/time-series.component.ts
55
+ var import_plotly = __toESM(require_plotly_min(), 1);
56
+ var _timeSeriesController, _catalog, _fetchVariableTask, _confirmDataPointWarning, confirmDataPointWarning_fn, _cancelDataPointWarning, cancelDataPointWarning_fn, _abortDataLoad, abortDataLoad_fn, _downloadCSV, downloadCSV_fn, _convertToCSV, convertToCSV_fn, _downloadPNG, downloadPNG_fn, _handleActiveMenuItem, handleActiveMenuItem_fn, _handleMenuLeave, handleMenuLeave_fn, _getVariableEntryId, getVariableEntryId_fn, _getYAxisLabel, getYAxisLabel_fn, _renderInfoPanel, renderInfoPanel_fn, _renderDownloadPanel, renderDownloadPanel_fn, _renderHelpPanel, renderHelpPanel_fn, _renderJupyterNotebookPanel, renderJupyterNotebookPanel_fn, _handleJupyterNotebookClick, handleJupyterNotebookClick_fn;
57
+ var TerraTimeSeries = class extends TerraElement {
58
+ constructor() {
59
+ super(...arguments);
60
+ __privateAdd(this, _confirmDataPointWarning);
61
+ __privateAdd(this, _cancelDataPointWarning);
62
+ /**
63
+ * aborts the underlying data loading task, which cancels the network request
64
+ */
65
+ __privateAdd(this, _abortDataLoad);
66
+ __privateAdd(this, _downloadCSV);
67
+ __privateAdd(this, _convertToCSV);
68
+ __privateAdd(this, _downloadPNG);
69
+ __privateAdd(this, _handleActiveMenuItem);
70
+ __privateAdd(this, _handleMenuLeave);
71
+ __privateAdd(this, _getVariableEntryId);
72
+ __privateAdd(this, _getYAxisLabel);
73
+ __privateAdd(this, _renderInfoPanel);
74
+ __privateAdd(this, _renderDownloadPanel);
75
+ __privateAdd(this, _renderHelpPanel);
76
+ __privateAdd(this, _renderJupyterNotebookPanel);
77
+ __privateAdd(this, _handleJupyterNotebookClick);
78
+ __privateAdd(this, _timeSeriesController, void 0);
79
+ this.showDataPointWarning = false;
80
+ this.estimatedDataPoints = 0;
81
+ this.activeMenuItem = null;
82
+ __privateAdd(this, _catalog, new GiovanniVariableCatalog());
83
+ // @ts-expect-error
84
+ __privateAdd(this, _fetchVariableTask, new h2(this, {
85
+ task: async (_args, { signal }) => {
86
+ var _a, _b, _c, _d;
87
+ const variableEntryId = __privateMethod(this, _getVariableEntryId, getVariableEntryId_fn).call(this);
88
+ console.debug("fetch variable ", variableEntryId);
89
+ if (!variableEntryId) {
90
+ return;
91
+ }
92
+ const variable = await __privateGet(this, _catalog).getVariable(variableEntryId, {
93
+ signal
94
+ });
95
+ console.debug("found variable ", variable);
96
+ if (!variable) {
97
+ return;
98
+ }
99
+ this.startDate = (_b = this.startDate) != null ? _b : (_a = variable.exampleInitialStartDate) == null ? void 0 : _a.toISOString();
100
+ this.endDate = (_d = this.endDate) != null ? _d : (_c = variable.exampleInitialEndDate) == null ? void 0 : _c.toISOString();
101
+ this.catalogVariable = variable;
102
+ },
103
+ args: () => [this.variableEntryId, this.collection, this.variable]
104
+ }));
105
+ }
106
+ handleFocus(_oldValue, newValue) {
107
+ if (newValue === null) {
108
+ return;
109
+ }
110
+ this.menu.focus();
111
+ }
112
+ connectedCallback() {
113
+ super.connectedCallback();
114
+ __privateSet(this, _timeSeriesController, new TimeSeriesController(this, this.bearerToken));
115
+ if (!document.getElementById("terra-jupyterlite-warmup-iframe")) {
116
+ const iframe = document.createElement("iframe");
117
+ iframe.id = "terra-jupyterlite-warmup-iframe";
118
+ iframe.src = "https://gesdisc.github.io/jupyterlite/lab/index.html?path=warmup.ipynb";
119
+ iframe.style.cssText = "width:1px; height:1px; opacity:0.01; pointer-events: none; border: 0; position: fixed; top: 0; left: 0;";
120
+ iframe.title = "Notebook Warm-Up Frame";
121
+ iframe.setAttribute("aria-hidden", "true");
122
+ document.body.appendChild(iframe);
123
+ }
124
+ }
125
+ render() {
126
+ var _a, _b;
127
+ return x`
128
+ <div class="plot-container">
129
+ ${h(
130
+ this.catalogVariable ? x`
131
+ <header>
132
+ <h2 class="title">
133
+ ${this.catalogVariable.dataFieldLongName}
134
+ </h2>
135
+
136
+ <div class="toggles">
137
+ <terra-button
138
+ circle
139
+ outline
140
+ aria-expanded=${this.activeMenuItem === "information"}
141
+ aria-controls="menu"
142
+ aria-haspopup="true"
143
+ class="toggle"
144
+ @mouseenter=${__privateMethod(this, _handleActiveMenuItem, handleActiveMenuItem_fn)}
145
+ data-menu-name="information"
146
+ >
147
+ <span class="sr-only"
148
+ >Information for
149
+ ${this.catalogVariable.dataFieldLongName}</span
150
+ >
151
+
152
+ <terra-icon
153
+ name="outline-information-circle"
154
+ library="heroicons"
155
+ font-size="1.5em"
156
+ ></terra-icon>
157
+ </terra-button>
158
+
159
+ <terra-button
160
+ circle
161
+ outline
162
+ aria-expanded=${this.activeMenuItem === "download"}
163
+ aria-controls="menu"
164
+ aria-haspopup="true"
165
+ class="toggle"
166
+ @mouseenter=${__privateMethod(this, _handleActiveMenuItem, handleActiveMenuItem_fn)}
167
+ data-menu-name="download"
168
+ >
169
+ <span class="sr-only"
170
+ >Download options for
171
+ ${this.catalogVariable.dataFieldLongName}</span
172
+ >
173
+
174
+ <terra-icon
175
+ name="outline-arrow-down-tray"
176
+ library="heroicons"
177
+ font-size="1.5em"
178
+ ></terra-icon>
179
+ </terra-button>
180
+
181
+ <terra-button
182
+ circle
183
+ outline
184
+ aria-expanded=${this.activeMenuItem === "help"}
185
+ aria-controls="menu"
186
+ aria-haspopup="true"
187
+ class="toggle"
188
+ @mouseenter=${__privateMethod(this, _handleActiveMenuItem, handleActiveMenuItem_fn)}
189
+ data-menu-name="help"
190
+ >
191
+ <span class="sr-only"
192
+ >Help link for
193
+ ${this.catalogVariable.dataFieldLongName}</span
194
+ >
195
+
196
+ <terra-icon
197
+ name="outline-question-mark-circle"
198
+ library="heroicons"
199
+ font-size="1.5em"
200
+ ></terra-icon>
201
+ </terra-button>
202
+
203
+ <terra-button
204
+ circle
205
+ outline
206
+ aria-expanded=${this.activeMenuItem === "jupyter"}
207
+ aria-controls="menu"
208
+ aria-haspopup="true"
209
+ class="toggle"
210
+ @mouseenter=${__privateMethod(this, _handleActiveMenuItem, handleActiveMenuItem_fn)}
211
+ data-menu-name="jupyter"
212
+ >
213
+ <span class="sr-only"
214
+ >Open in Jupyter Notebook for
215
+ ${this.catalogVariable.dataFieldLongName}</span
216
+ >
217
+
218
+ <terra-icon
219
+ name="outline-code-bracket-square"
220
+ library="heroicons"
221
+ font-size="1.5em"
222
+ ></terra-icon>
223
+ </terra-button>
224
+ </div>
225
+
226
+ <menu
227
+ role="menu"
228
+ id="menu"
229
+ data-expanded=${this.activeMenuItem !== null}
230
+ tabindex="-1"
231
+ @mouseleave=${__privateMethod(this, _handleMenuLeave, handleMenuLeave_fn)}
232
+ >
233
+ <li
234
+ role="menuitem"
235
+ ?hidden=${this.activeMenuItem !== "information"}
236
+ >
237
+ ${__privateMethod(this, _renderInfoPanel, renderInfoPanel_fn).call(this)}
238
+ </li>
239
+
240
+ <li
241
+ role="menuitem"
242
+ ?hidden=${this.activeMenuItem !== "download"}
243
+ >
244
+ ${__privateMethod(this, _renderDownloadPanel, renderDownloadPanel_fn).call(this)}
245
+ </li>
246
+
247
+ <li
248
+ role="menuitem"
249
+ ?hidden=${this.activeMenuItem !== "help"}
250
+ >
251
+ ${__privateMethod(this, _renderHelpPanel, renderHelpPanel_fn).call(this)}
252
+ </li>
253
+
254
+ <li
255
+ role="menuitem"
256
+ ?hidden=${this.activeMenuItem !== "jupyter"}
257
+ >
258
+ ${__privateMethod(this, _renderJupyterNotebookPanel, renderJupyterNotebookPanel_fn).call(this)}
259
+ </li>
260
+ </menu>
261
+ </header>
262
+ ` : x`<div class="spacer"></div>`
263
+ )}
264
+
265
+ <terra-plot
266
+ exportparts="base:plot__base, plot-title:plot__title"
267
+ .data=${(_a = __privateGet(this, _timeSeriesController).lastTaskValue) != null ? _a : __privateGet(this, _timeSeriesController).emptyPlotData}
268
+ .layout="${{
269
+ xaxis: {
270
+ title: "Time",
271
+ showgrid: false,
272
+ zeroline: false
273
+ },
274
+ yaxis: {
275
+ title: __privateMethod(this, _getYAxisLabel, getYAxisLabel_fn).call(this),
276
+ showline: false
277
+ },
278
+ title: {
279
+ text: this.catalogVariable && this.location ? `${this.catalogVariable.dataProductShortName} @ ${this.location}` : null
280
+ }
281
+ }}"
282
+ .config=${{
283
+ displayModeBar: true,
284
+ displaylogo: false,
285
+ modeBarButtonsToRemove: ["toImage", "zoom2d", "resetScale2d"],
286
+ responsive: true
287
+ }}
288
+ ></terra-plot>
289
+ </div>
290
+
291
+ <!-- DATE RANGE SLIDER WAS HERE -->
292
+
293
+ <dialog
294
+ ?open=${__privateGet(this, _timeSeriesController).task.status === s.PENDING}
295
+ >
296
+ <terra-loader indeterminate></terra-loader>
297
+ <p>Plotting ${(_b = this.catalogVariable) == null ? void 0 : _b.dataFieldId}&hellip;</p>
298
+ <terra-button @click=${__privateMethod(this, _abortDataLoad, abortDataLoad_fn)}>Cancel</terra-button>
299
+ </dialog>
300
+
301
+ <dialog ?open=${this.showDataPointWarning} class="quota-dialog">
302
+ <h2>This is a large request</h2>
303
+
304
+ <p>
305
+ You are requesting approximately
306
+ ${this.estimatedDataPoints.toLocaleString()} data points.
307
+ </p>
308
+
309
+ <p>
310
+ Requesting large amounts of data may cause you to reach your
311
+ monthly quota limit.
312
+ </p>
313
+
314
+ <p>Would you still like to proceed with this request?</p>
315
+
316
+ <div class="dialog-buttons">
317
+ <terra-button
318
+ @click=${__privateMethod(this, _cancelDataPointWarning, cancelDataPointWarning_fn)}
319
+ variant="default"
320
+ >
321
+ Cancel
322
+ </terra-button>
323
+
324
+ <terra-button
325
+ @click=${__privateMethod(this, _confirmDataPointWarning, confirmDataPointWarning_fn)}
326
+ variant="primary"
327
+ >
328
+ Proceed
329
+ </terra-button>
330
+ </div>
331
+ </dialog>
332
+ `;
333
+ }
334
+ };
335
+ _timeSeriesController = new WeakMap();
336
+ _catalog = new WeakMap();
337
+ _fetchVariableTask = new WeakMap();
338
+ _confirmDataPointWarning = new WeakSet();
339
+ confirmDataPointWarning_fn = function() {
340
+ __privateGet(this, _timeSeriesController).confirmDataPointWarning();
341
+ __privateGet(this, _timeSeriesController).task.run();
342
+ };
343
+ _cancelDataPointWarning = new WeakSet();
344
+ cancelDataPointWarning_fn = function() {
345
+ this.showDataPointWarning = false;
346
+ };
347
+ _abortDataLoad = new WeakSet();
348
+ abortDataLoad_fn = function() {
349
+ var _a;
350
+ (_a = __privateGet(this, _timeSeriesController).task) == null ? void 0 : _a.abort();
351
+ };
352
+ _downloadCSV = new WeakSet();
353
+ downloadCSV_fn = function(_event) {
354
+ var _a, _b;
355
+ const controllerData = (_a = __privateGet(this, _timeSeriesController).lastTaskValue) != null ? _a : __privateGet(this, _timeSeriesController).emptyPlotData;
356
+ let plotData = [];
357
+ controllerData.forEach((plot, index) => {
358
+ plotData[index] = plot;
359
+ });
360
+ const csvData = plotData.map((trace) => {
361
+ return trace.x.map((x2, i) => {
362
+ return {
363
+ x: x2,
364
+ y: trace.y[i]
365
+ };
366
+ });
367
+ }).flat();
368
+ const csv = __privateMethod(this, _convertToCSV, convertToCSV_fn).call(this, csvData);
369
+ const blob = new Blob([csv], { type: "text/csv;charset=utf-8;" });
370
+ const url = URL.createObjectURL(blob);
371
+ const link = document.createElement("a");
372
+ link.setAttribute("href", url);
373
+ const variableName = ((_b = this.catalogVariable) == null ? void 0 : _b.dataFieldId) || "time-series-data";
374
+ const locationStr = this.location ? `_${this.location.replace(/,/g, "_")}` : "";
375
+ const dateRange = this.startDate && this.endDate ? `_${this.startDate.split("T")[0]}_to_${this.endDate.split("T")[0]}` : "";
376
+ const filename = `${variableName}${locationStr}${dateRange}.csv`;
377
+ link.setAttribute("download", filename);
378
+ link.style.visibility = "hidden";
379
+ document.body.appendChild(link);
380
+ link.click();
381
+ document.body.removeChild(link);
382
+ };
383
+ _convertToCSV = new WeakSet();
384
+ convertToCSV_fn = function(data) {
385
+ const header = Object.keys(data[0]).join(",") + "\n";
386
+ const rows = data.map((obj) => Object.values(obj).join(",")).join("\n");
387
+ return header + rows;
388
+ };
389
+ _downloadPNG = new WeakSet();
390
+ downloadPNG_fn = function(_event) {
391
+ var _a;
392
+ (0, import_plotly.downloadImage)((_a = this.plot) == null ? void 0 : _a.base, {
393
+ filename: this.catalogVariable.dataFieldId,
394
+ format: "png",
395
+ width: 1920,
396
+ height: 1080
397
+ });
398
+ };
399
+ _handleActiveMenuItem = new WeakSet();
400
+ handleActiveMenuItem_fn = function(event) {
401
+ const button = event.currentTarget;
402
+ const menuName = button.dataset.menuName;
403
+ this.activeMenuItem = menuName;
404
+ };
405
+ _handleMenuLeave = new WeakSet();
406
+ handleMenuLeave_fn = function() {
407
+ this.activeMenuItem = null;
408
+ };
409
+ _getVariableEntryId = new WeakSet();
410
+ getVariableEntryId_fn = function() {
411
+ var _a;
412
+ if (!this.variableEntryId && !(this.collection && this.variable)) {
413
+ return;
414
+ }
415
+ return (_a = this.variableEntryId) != null ? _a : `${this.collection}_${this.variable}`;
416
+ };
417
+ _getYAxisLabel = new WeakSet();
418
+ getYAxisLabel_fn = function() {
419
+ if (!this.catalogVariable) {
420
+ return;
421
+ }
422
+ return [
423
+ this.catalogVariable.dataFieldLongName,
424
+ this.catalogVariable.dataFieldUnits
425
+ ].filter(Boolean).join(", ");
426
+ };
427
+ _renderInfoPanel = new WeakSet();
428
+ renderInfoPanel_fn = function() {
429
+ var _a;
430
+ return x`
431
+ <h3 class="sr-only">Information</h3>
432
+
433
+ <dl>
434
+ <dt>Variable Longname</dt>
435
+ <dd>${this.catalogVariable.dataFieldLongName}</dd>
436
+
437
+ <dt>Variable Shortname</dt>
438
+ <dd>
439
+ ${(_a = this.catalogVariable.dataFieldShortName) != null ? _a : this.catalogVariable.dataFieldAccessName}
440
+ </dd>
441
+
442
+ <dt>Units</dt>
443
+ <dd>
444
+ <code>${this.catalogVariable.dataFieldUnits}</code>
445
+ </dd>
446
+
447
+ <dt>Dataset Information</dt>
448
+ <dd>
449
+ <a
450
+ href=${this.catalogVariable.dataProductDescriptionUrl}
451
+ rel="noopener noreffer"
452
+ target="_blank"
453
+ >${this.catalogVariable.dataProductLongName}
454
+
455
+ <terra-icon
456
+ name="outline-arrow-top-right-on-square"
457
+ library="heroicons"
458
+ ></terra-icon>
459
+ </a>
460
+ </dd>
461
+
462
+ <dt>Variable Information</dt>
463
+ <dd>
464
+ <a
465
+ href=${this.catalogVariable.dataFieldDescriptionUrl}
466
+ rel="noopener noreffer"
467
+ target="_blank"
468
+ >Variable Glossary
469
+
470
+ <terra-icon
471
+ name="outline-arrow-top-right-on-square"
472
+ library="heroicons"
473
+ ></terra-icon>
474
+ </a>
475
+ </dd>
476
+ </dl>
477
+ `;
478
+ };
479
+ _renderDownloadPanel = new WeakSet();
480
+ renderDownloadPanel_fn = function() {
481
+ return x`
482
+ <h3 class="sr-only">Download Options</h3>
483
+
484
+ <p>
485
+ This plot can be downloaded as either a
486
+ <abbr title="Portable Network Graphic">PNG</abbr>
487
+ image or
488
+ <abbr title="Comma-Separated Value">CSV</abbr>
489
+ data.
490
+ </p>
491
+
492
+ <terra-button outline variant="default" @click=${__privateMethod(this, _downloadPNG, downloadPNG_fn)}>
493
+ <span class="sr-only">Download Plot Data as </span>
494
+ PNG
495
+ <terra-icon
496
+ slot="prefix"
497
+ name="outline-photo"
498
+ library="heroicons"
499
+ font-size="1.5em"
500
+ ></terra-icon>
501
+ </terra-button>
502
+
503
+ <terra-button outline variant="default" @click=${__privateMethod(this, _downloadCSV, downloadCSV_fn)}>
504
+ <span class="sr-only">Download Plot Data as </span>
505
+ CSV
506
+ <terra-icon
507
+ slot="prefix"
508
+ name="outline-document-chart-bar"
509
+ library="heroicons"
510
+ font-size="1.5em"
511
+ ></terra-icon>
512
+ </terra-button>
513
+ `;
514
+ };
515
+ _renderHelpPanel = new WeakSet();
516
+ renderHelpPanel_fn = function() {
517
+ return x`
518
+ <h3 class="sr-only">Help Links</h3>
519
+ <ul>
520
+ <li>
521
+ <a href="https://forum.earthdata.nasa.gov/viewforum.php?f=7&DAAC=3" rel"noopener noreffer">Earthdata User Forum
522
+ <terra-icon
523
+ name="outline-arrow-top-right-on-square"
524
+ library="heroicons"
525
+ ></terra-icon>
526
+ </a>
527
+ </li>
528
+ </ul>
529
+ `;
530
+ };
531
+ _renderJupyterNotebookPanel = new WeakSet();
532
+ renderJupyterNotebookPanel_fn = function() {
533
+ return x`
534
+ <h3 class="sr-only">Jupyter Notebook Options</h3>
535
+ <p>Open this plot in a Jupyter Notebook to explore the data further.</p>
536
+ <a
537
+ href="#"
538
+ @click=${(e2) => {
539
+ e2.preventDefault();
540
+ __privateMethod(this, _handleJupyterNotebookClick, handleJupyterNotebookClick_fn).call(this);
541
+ }}
542
+ >
543
+ Open in Jupyter Notebook
544
+ <terra-icon
545
+ name="outline-arrow-top-right-on-square"
546
+ library="heroicons"
547
+ ></terra-icon>
548
+ </a>
549
+ `;
550
+ };
551
+ _handleJupyterNotebookClick = new WeakSet();
552
+ handleJupyterNotebookClick_fn = function() {
553
+ const jupyterLiteUrl = "https://gesdisc.github.io/jupyterlite/lab/index.html";
554
+ const jupyterWindow = window.open(jupyterLiteUrl, "_blank");
555
+ if (!jupyterWindow) {
556
+ console.error("Failed to open JupyterLite!");
557
+ return;
558
+ }
559
+ setTimeout(() => {
560
+ const notebook = [
561
+ {
562
+ id: "2733501b-0de4-4067-8aff-864e1b4c76cb",
563
+ cell_type: "code",
564
+ source: "%pip install -q terra_ui_components",
565
+ metadata: {
566
+ trusted: true
567
+ },
568
+ outputs: [],
569
+ execution_count: null
570
+ },
571
+ {
572
+ id: "870c1384-e706-48ee-ba07-fd552a949869",
573
+ cell_type: "code",
574
+ source: `from terra_ui_components import TerraTimeSeries
575
+ timeseries = TerraTimeSeries()
576
+
577
+ timeseries.variableEntryId = '${this.variableEntryId}'
578
+ timeseries.startDate = '${this.startDate}'
579
+ timeseries.endDate = '${this.endDate}'
580
+ timeseries.location = '${this.location}'
581
+
582
+ timeseries`,
583
+ metadata: {
584
+ trusted: true
585
+ },
586
+ outputs: [],
587
+ execution_count: null
588
+ }
589
+ ];
590
+ jupyterWindow.postMessage(
591
+ {
592
+ type: "load-notebook",
593
+ filename: "from_uui.ipynb",
594
+ notebook
595
+ },
596
+ "*"
597
+ );
598
+ }, 500);
599
+ };
600
+ TerraTimeSeries.styles = [component_styles_default, time_series_styles_default];
601
+ TerraTimeSeries.dependencies = {
602
+ "terra-plot": TerraPlot,
603
+ "terra-loader": TerraLoader,
604
+ "terra-icon": TerraIcon,
605
+ "terra-button": TerraButton
606
+ };
607
+ __decorateClass([
608
+ n({ attribute: "variable-entry-id", reflect: true })
609
+ ], TerraTimeSeries.prototype, "variableEntryId", 2);
610
+ __decorateClass([
611
+ n({ reflect: true })
612
+ ], TerraTimeSeries.prototype, "collection", 2);
613
+ __decorateClass([
614
+ n({ reflect: true })
615
+ ], TerraTimeSeries.prototype, "variable", 2);
616
+ __decorateClass([
617
+ n({
618
+ attribute: "start-date",
619
+ reflect: true
620
+ })
621
+ ], TerraTimeSeries.prototype, "startDate", 2);
622
+ __decorateClass([
623
+ n({
624
+ attribute: "end-date",
625
+ reflect: true
626
+ })
627
+ ], TerraTimeSeries.prototype, "endDate", 2);
628
+ __decorateClass([
629
+ n({
630
+ reflect: true
631
+ })
632
+ ], TerraTimeSeries.prototype, "location", 2);
633
+ __decorateClass([
634
+ n({ attribute: "bearer-token", reflect: false })
635
+ ], TerraTimeSeries.prototype, "bearerToken", 2);
636
+ __decorateClass([
637
+ e("terra-plot")
638
+ ], TerraTimeSeries.prototype, "plot", 2);
639
+ __decorateClass([
640
+ e("#menu")
641
+ ], TerraTimeSeries.prototype, "menu", 2);
642
+ __decorateClass([
643
+ r()
644
+ ], TerraTimeSeries.prototype, "catalogVariable", 2);
645
+ __decorateClass([
646
+ r()
647
+ ], TerraTimeSeries.prototype, "showDataPointWarning", 2);
648
+ __decorateClass([
649
+ r()
650
+ ], TerraTimeSeries.prototype, "estimatedDataPoints", 2);
651
+ __decorateClass([
652
+ r()
653
+ ], TerraTimeSeries.prototype, "activeMenuItem", 2);
654
+ __decorateClass([
655
+ watch("activeMenuItem")
656
+ ], TerraTimeSeries.prototype, "handleFocus", 1);
657
+
658
+ export {
659
+ TerraTimeSeries
660
+ };