@nasa-terra/components 0.0.170 → 0.0.172

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 (1269) hide show
  1. package/cdn/chunks/chunk.22JAM2GR.js +149 -0
  2. package/cdn/chunks/chunk.24XPUSUZ.js +1966 -0
  3. package/cdn/chunks/chunk.2BDLTBTI.js +19 -0
  4. package/cdn/chunks/chunk.2JHFGT46.js +32 -0
  5. package/cdn/chunks/chunk.2JX7GFDQ.js +62 -0
  6. package/cdn/chunks/chunk.2ODI6EJH.js +19 -0
  7. package/cdn/chunks/chunk.2PGAPRRF.js +29 -0
  8. package/cdn/chunks/chunk.2UXDDY74.js +19 -0
  9. package/cdn/chunks/chunk.3V6F2DWA.js +29 -0
  10. package/cdn/chunks/chunk.3X2FJVEK.js +99 -0
  11. package/cdn/chunks/chunk.3XVPJSSP.js +189 -0
  12. package/cdn/chunks/chunk.3YN7OOIN.js +60 -0
  13. package/cdn/chunks/chunk.3YPA3O7X.js +19 -0
  14. package/cdn/chunks/chunk.3YTZ6FCS.js +35 -0
  15. package/cdn/chunks/chunk.4BBASGSH.js +19 -0
  16. package/cdn/chunks/chunk.4HUU63FC.js +33 -0
  17. package/cdn/chunks/chunk.4K7DWAUK.js +165 -0
  18. package/cdn/chunks/chunk.4LU3KPCC.js +99 -0
  19. package/cdn/chunks/chunk.534PJBWA.js +293 -0
  20. package/cdn/chunks/chunk.53VPUZOR.js +239 -0
  21. package/cdn/chunks/chunk.5GDQXS5O.js +86 -0
  22. package/cdn/chunks/chunk.5LN4TGSH.js +19 -0
  23. package/cdn/chunks/chunk.5SMJDHEB.js +34 -0
  24. package/cdn/chunks/chunk.5SXMFX3G.js +19 -0
  25. package/cdn/chunks/chunk.5XGCTPMM.js +19 -0
  26. package/cdn/chunks/chunk.5ZDFWWUF.js +32 -0
  27. package/cdn/chunks/chunk.6HUSY5A5.js +19 -0
  28. package/cdn/chunks/chunk.6IXRMBFJ.js +19 -0
  29. package/cdn/chunks/chunk.6J43KB5E.js +29 -0
  30. package/cdn/chunks/chunk.6WBVX3YH.js +19 -0
  31. package/cdn/chunks/chunk.72CLIDBM.js +32 -0
  32. package/cdn/chunks/chunk.753BFQMN.js +288 -0
  33. package/cdn/chunks/chunk.7BCA23AI.js +29 -0
  34. package/cdn/chunks/chunk.7GIDBIUS.js +259 -0
  35. package/cdn/chunks/chunk.7NCDOJ3T.js +19 -0
  36. package/cdn/chunks/chunk.7R2GWEZU.js +287 -0
  37. package/cdn/chunks/chunk.7RMFSOS5.js +190 -0
  38. package/cdn/chunks/chunk.7YU7ADNC.js +19 -0
  39. package/cdn/chunks/chunk.A4KDSUZV.js +41 -0
  40. package/cdn/chunks/chunk.AFTOL2EB.js +359 -0
  41. package/cdn/chunks/chunk.AHXYP2XX.js +32 -0
  42. package/cdn/chunks/chunk.ALRPPBZX.js +19 -0
  43. package/cdn/chunks/chunk.AOFSXGD4.js +29 -0
  44. package/cdn/chunks/chunk.AULNGRW6.js +372 -0
  45. package/cdn/chunks/chunk.AWEPYPND.js +19 -0
  46. package/cdn/chunks/chunk.AY2ESVAW.js +32 -0
  47. package/cdn/chunks/chunk.BAIRSNCE.js +224 -0
  48. package/cdn/chunks/chunk.BC5CLB4E.js +19 -0
  49. package/cdn/chunks/chunk.BEASGBEI.js +32 -0
  50. package/cdn/chunks/chunk.BEDUK7FE.js +19 -0
  51. package/cdn/chunks/chunk.BLHY5WN3.js +29 -0
  52. package/cdn/chunks/chunk.CRZXMLDV.js +29 -0
  53. package/cdn/chunks/chunk.CY3SMGKL.js +29 -0
  54. package/cdn/chunks/chunk.D2QRYADG.js +19 -0
  55. package/cdn/chunks/chunk.D3PNTFNF.js +29 -0
  56. package/cdn/chunks/chunk.D6AU3UOZ.js +37 -0
  57. package/cdn/chunks/chunk.D6JL3ZBI.js +83 -0
  58. package/cdn/chunks/chunk.D72LV4DG.js +435 -0
  59. package/cdn/chunks/chunk.DFE7P546.js +134 -0
  60. package/cdn/chunks/chunk.DLQNZ2FX.js +201 -0
  61. package/cdn/chunks/chunk.DLTNDBKG.js +29 -0
  62. package/cdn/chunks/chunk.DRJTA6YE.js +33 -0
  63. package/cdn/chunks/chunk.DRWOEYVJ.js +357 -0
  64. package/cdn/chunks/chunk.DSLLKULQ.js +35 -0
  65. package/cdn/chunks/chunk.E6MNGPER.js +19 -0
  66. package/cdn/chunks/chunk.EHR2RG6M.js +19 -0
  67. package/cdn/chunks/chunk.ENUGTRNP.js +29 -0
  68. package/cdn/chunks/chunk.F7P4PC2R.js +19 -0
  69. package/cdn/chunks/chunk.FBHEUYVW.js +19 -0
  70. package/cdn/chunks/chunk.FEAZYVRR.js +19 -0
  71. package/cdn/chunks/chunk.FTQIS3UE.js +29 -0
  72. package/cdn/chunks/chunk.GFQ2RR6W.js +19 -0
  73. package/cdn/chunks/chunk.GIJJER3A.js +39 -0
  74. package/cdn/chunks/chunk.GLT3Q3FB.js +904 -0
  75. package/cdn/chunks/chunk.GP7JNJAX.js +29 -0
  76. package/cdn/chunks/chunk.GPCT4SIJ.js +19 -0
  77. package/cdn/chunks/chunk.GSRKPGOV.js +32 -0
  78. package/cdn/chunks/chunk.GWKSVAA6.js +29 -0
  79. package/cdn/chunks/chunk.H3TAINDH.js +188 -0
  80. package/cdn/chunks/chunk.H7VCBXTL.js +32 -0
  81. package/cdn/chunks/chunk.HB4RQESR.js +2243 -0
  82. package/cdn/chunks/chunk.HCQP36AM.js +19 -0
  83. package/cdn/chunks/chunk.HHWEVDGS.js +158 -0
  84. package/cdn/chunks/chunk.HL4FRJLB.js +493 -0
  85. package/cdn/chunks/chunk.HNXO7VBO.js +19 -0
  86. package/cdn/chunks/chunk.HP34FRHY.js +19 -0
  87. package/cdn/chunks/chunk.HPGY2OGG.js +71 -0
  88. package/cdn/chunks/chunk.HPYMMODV.js +19 -0
  89. package/cdn/chunks/chunk.HWG65NRN.js +29 -0
  90. package/cdn/chunks/chunk.IB24IRYX.js +19 -0
  91. package/cdn/chunks/chunk.ICZMYLTH.js +32 -0
  92. package/cdn/chunks/chunk.IHZ2KLCT.js +477 -0
  93. package/cdn/chunks/chunk.IL7BYPM7.js +92 -0
  94. package/cdn/chunks/chunk.IRZZX44G.js +534 -0
  95. package/cdn/chunks/chunk.ITCNMUXT.js +56 -0
  96. package/cdn/chunks/chunk.ITIBDYWK.js +33 -0
  97. package/cdn/chunks/chunk.IVVZ6XX6.js +36 -0
  98. package/cdn/chunks/chunk.J4DDZILY.js +19 -0
  99. package/cdn/chunks/chunk.J7I3DOXG.js +272 -0
  100. package/cdn/chunks/chunk.JEXAAXBB.js +19 -0
  101. package/cdn/chunks/chunk.JJ6L4MMN.js +99 -0
  102. package/cdn/chunks/chunk.JJFL72ML.js +19 -0
  103. package/cdn/chunks/chunk.JJZURVO2.js +19 -0
  104. package/cdn/chunks/chunk.JOGRTCOM.js +19 -0
  105. package/cdn/chunks/chunk.K5GSGEGZ.js +610 -0
  106. package/cdn/chunks/chunk.KCZYTXMI.js +39 -0
  107. package/cdn/chunks/chunk.KDO3FMKB.js +32 -0
  108. package/cdn/chunks/chunk.KGF2FWOT.js +29 -0
  109. package/cdn/chunks/chunk.KGSGZUCG.js +136 -0
  110. package/cdn/chunks/chunk.KIFQR3KD.js +33 -0
  111. package/cdn/chunks/chunk.KIM5IAXQ.js +47 -0
  112. package/cdn/chunks/chunk.KTZIP3RF.js +1220 -0
  113. package/cdn/chunks/chunk.L23RSHX2.js +1025 -0
  114. package/cdn/chunks/chunk.L3GMGWUV.js +19 -0
  115. package/cdn/chunks/chunk.LIKPLLCC.js +107 -0
  116. package/cdn/chunks/chunk.LLIFHQCT.js +99 -0
  117. package/cdn/chunks/chunk.LPMXP2UC.js +83 -0
  118. package/cdn/chunks/chunk.LRPZOMSB.js +35 -0
  119. package/cdn/chunks/chunk.M3TUVN5Y.js +238 -0
  120. package/cdn/chunks/chunk.MJRYD2FS.js +36 -0
  121. package/cdn/chunks/chunk.MRHL6VYL.js +19 -0
  122. package/cdn/chunks/chunk.MROYHS4V.js +19 -0
  123. package/cdn/chunks/chunk.MVGDUHXD.js +230 -0
  124. package/cdn/chunks/chunk.NFJMTKKE.js +731 -0
  125. package/cdn/chunks/chunk.NOPT72F3.js +2332 -0
  126. package/cdn/chunks/chunk.O6RBVHRC.js +104 -0
  127. package/cdn/chunks/chunk.OAEPU7YQ.js +32 -0
  128. package/cdn/chunks/chunk.OBEZEO7B.js +19 -0
  129. package/cdn/chunks/chunk.OCAU7EK6.js +68 -0
  130. package/cdn/chunks/chunk.OMJE4OG2.js +36 -0
  131. package/cdn/chunks/chunk.OT5MI24J.js +19 -0
  132. package/cdn/chunks/chunk.P4OWV3H2.js +412 -0
  133. package/cdn/chunks/chunk.P4PK2INS.js +616 -0
  134. package/cdn/chunks/chunk.P5A6GZAA.js +29 -0
  135. package/cdn/chunks/chunk.P7O2MPXC.js +29 -0
  136. package/cdn/chunks/chunk.PB422XO2.js +29 -0
  137. package/cdn/chunks/chunk.PFHOVLE3.js +19 -0
  138. package/cdn/chunks/chunk.PHAAWGO7.js +34 -0
  139. package/cdn/chunks/chunk.PIHZAPJ6.js +33858 -0
  140. package/cdn/chunks/chunk.PJQMKWOC.js +19 -0
  141. package/cdn/chunks/chunk.PUPPUPIZ.js +19 -0
  142. package/cdn/chunks/chunk.Q67OTTO2.js +145 -0
  143. package/cdn/chunks/chunk.QD7P3TYY.js +30 -0
  144. package/cdn/chunks/chunk.QMQ2XNQY.js +36 -0
  145. package/cdn/chunks/chunk.QS2QNU5L.js +29 -0
  146. package/cdn/chunks/chunk.QS4Y67LN.js +19 -0
  147. package/cdn/chunks/chunk.R5XVDB6V.js +155 -0
  148. package/cdn/chunks/chunk.RFMZNLWW.js +29 -0
  149. package/cdn/chunks/chunk.RI6DZZVW.js +621 -0
  150. package/cdn/chunks/chunk.RNIUG7UZ.js +278 -0
  151. package/cdn/chunks/chunk.RUSUCIQU.js +599 -0
  152. package/cdn/chunks/chunk.RVQ3US5N.js +19 -0
  153. package/cdn/chunks/chunk.RVYF62LC.js +32 -0
  154. package/cdn/chunks/chunk.S43QXSOG.js +538 -0
  155. package/cdn/chunks/chunk.SIDIPX5Z.js +524 -0
  156. package/cdn/chunks/chunk.SJDA3WUL.js +151 -0
  157. package/cdn/chunks/chunk.SO35RKNB.js +123 -0
  158. package/cdn/chunks/chunk.SPB5FUKU.js +29 -0
  159. package/cdn/chunks/chunk.SQLAADR2.js +19 -0
  160. package/cdn/chunks/chunk.SZ5ESX47.js +29 -0
  161. package/cdn/chunks/chunk.T4W2N4IX.js +19 -0
  162. package/cdn/chunks/chunk.T52O5DOR.js +29 -0
  163. package/cdn/chunks/chunk.T5M74VV6.js +132 -0
  164. package/cdn/chunks/chunk.T6VHQM6Z.js +19 -0
  165. package/cdn/chunks/chunk.TBAPGHFB.js +662 -0
  166. package/cdn/chunks/chunk.TBLEZOPR.js +19 -0
  167. package/cdn/chunks/chunk.TF5WXJIH.js +791 -0
  168. package/cdn/chunks/chunk.TLGXE7WV.js +52 -0
  169. package/cdn/chunks/chunk.TNQQTWDZ.js +19 -0
  170. package/cdn/chunks/chunk.TVKNTAJS.js +19 -0
  171. package/cdn/chunks/chunk.TW2V25WJ.js +234 -0
  172. package/cdn/chunks/chunk.UDFTBRW5.js +19 -0
  173. package/cdn/chunks/chunk.UFFW3XZH.js +19 -0
  174. package/cdn/chunks/chunk.UJBJMJRL.js +106 -0
  175. package/cdn/chunks/chunk.UNCED3WA.js +19 -0
  176. package/cdn/chunks/chunk.V73HKXBP.js +29 -0
  177. package/cdn/chunks/chunk.VXM33DDM.js +231 -0
  178. package/cdn/chunks/chunk.WC46FXQH.js +19 -0
  179. package/cdn/chunks/chunk.WDBY7BQK.js +29 -0
  180. package/cdn/chunks/chunk.WF66D4AL.js +49 -0
  181. package/cdn/chunks/chunk.WGDFGDRT.js +35 -0
  182. package/cdn/chunks/chunk.WIVXANPA.js +1056 -0
  183. package/cdn/chunks/chunk.WJJXD7X2.js +33 -0
  184. package/cdn/chunks/chunk.WKWKRMNY.js +264 -0
  185. package/cdn/chunks/chunk.WLFPVDH4.js +32 -0
  186. package/cdn/chunks/chunk.WMKP5VWD.js +93 -0
  187. package/cdn/chunks/chunk.WVIUB6WD.js +19 -0
  188. package/cdn/chunks/chunk.WWI4LCDA.js +113 -0
  189. package/cdn/chunks/chunk.XDQ57P2F.js +19 -0
  190. package/cdn/chunks/chunk.XHRTM47A.js +29 -0
  191. package/cdn/chunks/chunk.XHXZTCIO.js +276 -0
  192. package/cdn/chunks/chunk.XNUFU6KL.js +302 -0
  193. package/cdn/chunks/chunk.Y2ZUOEN5.js +78 -0
  194. package/cdn/chunks/chunk.Y5QHAQ7O.js +74 -0
  195. package/cdn/chunks/chunk.Y7BONWUH.js +29 -0
  196. package/cdn/chunks/chunk.YNRR744Q.js +37 -0
  197. package/cdn/chunks/chunk.YQWC6C7M.js +60 -0
  198. package/cdn/chunks/chunk.YVMGVA4Q.js +19 -0
  199. package/cdn/chunks/chunk.YXSFJKQB.js +29 -0
  200. package/cdn/chunks/chunk.ZC767XYL.js +19 -0
  201. package/cdn/chunks/chunk.ZE4OJ4GD.js +19 -0
  202. package/cdn/chunks/chunk.ZGDUVM4H.js +29 -0
  203. package/cdn/chunks/chunk.ZX4NINE4.js +32 -0
  204. package/cdn/chunks/chunk.ZXO54DY6.js +19 -0
  205. package/cdn/chunks/chunk.ZYL4RJQ7.js +55346 -0
  206. package/cdn/components/accordion/accordion.component.js +3 -3
  207. package/cdn/components/accordion/accordion.js +4 -4
  208. package/cdn/components/alert/alert.component.js +2 -2
  209. package/cdn/components/alert/alert.js +3 -3
  210. package/cdn/components/avatar/avatar.component.js +3 -3
  211. package/cdn/components/avatar/avatar.js +4 -4
  212. package/cdn/components/badge/badge.component.js +2 -2
  213. package/cdn/components/badge/badge.js +3 -3
  214. package/cdn/components/breadcrumb/breadcrumb.component.js +2 -2
  215. package/cdn/components/breadcrumb/breadcrumb.js +3 -3
  216. package/cdn/components/breadcrumbs/breadcrumbs.component.js +2 -2
  217. package/cdn/components/breadcrumbs/breadcrumbs.js +3 -3
  218. package/cdn/components/browse-variables/browse-variables.component.js +13 -13
  219. package/cdn/components/browse-variables/browse-variables.controller.js +3 -3
  220. package/cdn/components/browse-variables/browse-variables.js +14 -14
  221. package/cdn/components/button/button.component.js +3 -3
  222. package/cdn/components/button/button.js +4 -4
  223. package/cdn/components/button-group/button-group.component.js +2 -2
  224. package/cdn/components/button-group/button-group.js +3 -3
  225. package/cdn/components/caption/caption.component.js +2 -2
  226. package/cdn/components/caption/caption.js +3 -3
  227. package/cdn/components/card/card.component.js +2 -2
  228. package/cdn/components/card/card.js +3 -3
  229. package/cdn/components/checkbox/checkbox.component.js +3 -3
  230. package/cdn/components/checkbox/checkbox.js +4 -4
  231. package/cdn/components/chip/chip.component.js +2 -2
  232. package/cdn/components/chip/chip.js +3 -3
  233. package/cdn/components/combobox/combobox.component.js +2 -2
  234. package/cdn/components/combobox/combobox.js +3 -3
  235. package/cdn/components/data-access/data-access.component.d.ts +2 -0
  236. package/cdn/components/data-access/data-access.component.js +21 -19
  237. package/cdn/components/data-access/data-access.controller.js +4 -4
  238. package/cdn/components/data-access/data-access.js +22 -20
  239. package/cdn/components/data-grid/data-grid.component.js +3 -3
  240. package/cdn/components/data-grid/data-grid.js +4 -4
  241. package/cdn/components/data-rods/data-rods.component.js +27 -27
  242. package/cdn/components/data-rods/data-rods.js +28 -28
  243. package/cdn/components/data-subsetter/data-subsetter.component.d.ts +2 -1
  244. package/cdn/components/data-subsetter/data-subsetter.component.js +32 -32
  245. package/cdn/components/data-subsetter/data-subsetter.controller.d.ts +3 -1
  246. package/cdn/components/data-subsetter/data-subsetter.controller.js +3 -3
  247. package/cdn/components/data-subsetter/data-subsetter.js +33 -33
  248. package/cdn/components/data-subsetter/data-subsetter.styles.js +1 -1
  249. package/cdn/components/data-subsetter/notebooks/subsetter-notebook.js +1 -1
  250. package/cdn/components/data-subsetter-history/data-subsetter-history.component.js +33 -33
  251. package/cdn/components/data-subsetter-history/data-subsetter-history.js +34 -34
  252. package/cdn/components/date-picker/date-picker.component.d.ts +4 -0
  253. package/cdn/components/date-picker/date-picker.component.js +7 -7
  254. package/cdn/components/date-picker/date-picker.js +8 -8
  255. package/cdn/components/date-range-slider/date-range-slider.component.js +2 -2
  256. package/cdn/components/date-range-slider/date-range-slider.js +3 -3
  257. package/cdn/components/dialog/dialog.component.js +5 -5
  258. package/cdn/components/dialog/dialog.js +6 -6
  259. package/cdn/components/dialog/dialog.styles.js +1 -1
  260. package/cdn/components/divider/divider.component.js +2 -2
  261. package/cdn/components/divider/divider.js +3 -3
  262. package/cdn/components/dropdown/dropdown.component.js +3 -3
  263. package/cdn/components/dropdown/dropdown.js +4 -4
  264. package/cdn/components/earthdata-login/earthdata-login.component.js +10 -10
  265. package/cdn/components/earthdata-login/earthdata-login.js +11 -11
  266. package/cdn/components/file-upload/file-upload.component.js +2 -2
  267. package/cdn/components/file-upload/file-upload.js +3 -3
  268. package/cdn/components/icon/icon.component.js +2 -2
  269. package/cdn/components/icon/icon.js +3 -3
  270. package/cdn/components/input/input.component.js +3 -3
  271. package/cdn/components/input/input.js +4 -4
  272. package/cdn/components/loader/loader.component.js +2 -2
  273. package/cdn/components/loader/loader.js +3 -3
  274. package/cdn/components/login/login.component.js +8 -8
  275. package/cdn/components/login/login.js +9 -9
  276. package/cdn/components/map/map.component.js +2 -2
  277. package/cdn/components/map/map.js +3 -3
  278. package/cdn/components/menu/menu.component.js +2 -2
  279. package/cdn/components/menu/menu.js +3 -3
  280. package/cdn/components/menu-item/menu-item.component.js +5 -5
  281. package/cdn/components/menu-item/menu-item.js +6 -6
  282. package/cdn/components/option/option.component.js +3 -3
  283. package/cdn/components/option/option.js +4 -4
  284. package/cdn/components/pagination/pagination.component.js +3 -3
  285. package/cdn/components/pagination/pagination.js +4 -4
  286. package/cdn/components/plot/plot.component.js +2 -2
  287. package/cdn/components/plot/plot.js +3 -3
  288. package/cdn/components/plot-toolbar/notebooks/time-averaged-map-notebook.js +1 -1
  289. package/cdn/components/plot-toolbar/notebooks/time-series-notebook.js +1 -1
  290. package/cdn/components/plot-toolbar/plot-toolbar.component.d.ts +0 -4
  291. package/cdn/components/plot-toolbar/plot-toolbar.component.js +10 -10
  292. package/cdn/components/plot-toolbar/plot-toolbar.controller.js +3 -3
  293. package/cdn/components/plot-toolbar/plot-toolbar.js +11 -11
  294. package/cdn/components/popup/popup.component.js +2 -2
  295. package/cdn/components/popup/popup.js +3 -3
  296. package/cdn/components/progress-bar/progress-bar.component.js +2 -2
  297. package/cdn/components/progress-bar/progress-bar.js +3 -3
  298. package/cdn/components/radio/radio.component.js +2 -2
  299. package/cdn/components/radio/radio.js +3 -3
  300. package/cdn/components/radio-group/radio-group.component.js +2 -2
  301. package/cdn/components/radio-group/radio-group.js +3 -3
  302. package/cdn/components/scroll-hint/scroll-hint.component.js +3 -3
  303. package/cdn/components/scroll-hint/scroll-hint.js +4 -4
  304. package/cdn/components/select/select.component.js +5 -5
  305. package/cdn/components/select/select.js +6 -6
  306. package/cdn/components/site-header/site-header.component.js +3 -3
  307. package/cdn/components/site-header/site-header.js +3 -3
  308. package/cdn/components/site-navigation/site-navigation.component.js +2 -2
  309. package/cdn/components/site-navigation/site-navigation.js +2 -2
  310. package/cdn/components/skeleton/skeleton.component.js +2 -2
  311. package/cdn/components/skeleton/skeleton.js +3 -3
  312. package/cdn/components/slider/slider.component.js +2 -2
  313. package/cdn/components/slider/slider.js +3 -3
  314. package/cdn/components/spatial-picker/spatial-picker.component.js +7 -7
  315. package/cdn/components/spatial-picker/spatial-picker.js +8 -8
  316. package/cdn/components/status-indicator/status-indicator.component.js +2 -2
  317. package/cdn/components/status-indicator/status-indicator.js +3 -3
  318. package/cdn/components/stepper/stepper.component.js +2 -2
  319. package/cdn/components/stepper/stepper.js +3 -3
  320. package/cdn/components/stepper-step/stepper-step.component.js +3 -3
  321. package/cdn/components/stepper-step/stepper-step.js +4 -4
  322. package/cdn/components/tab/tab.component.js +3 -3
  323. package/cdn/components/tab/tab.js +4 -4
  324. package/cdn/components/tab-panel/tab-panel.component.js +2 -2
  325. package/cdn/components/tab-panel/tab-panel.js +3 -3
  326. package/cdn/components/tabs/tabs.component.js +3 -3
  327. package/cdn/components/tabs/tabs.js +4 -4
  328. package/cdn/components/tag/tag.component.js +3 -3
  329. package/cdn/components/tag/tag.js +4 -4
  330. package/cdn/components/textarea/textarea.component.js +2 -2
  331. package/cdn/components/textarea/textarea.js +3 -3
  332. package/cdn/components/time-average-map/time-average-map.component.d.ts +0 -4
  333. package/cdn/components/time-average-map/time-average-map.component.js +17 -17
  334. package/cdn/components/time-average-map/time-average-map.js +18 -18
  335. package/cdn/components/time-series/time-series.component.d.ts +6 -4
  336. package/cdn/components/time-series/time-series.component.js +18 -18
  337. package/cdn/components/time-series/time-series.controller.d.ts +2 -0
  338. package/cdn/components/time-series/time-series.controller.js +1 -1
  339. package/cdn/components/time-series/time-series.js +19 -19
  340. package/cdn/components/toast/toast.component.js +3 -3
  341. package/cdn/components/toast/toast.js +4 -4
  342. package/cdn/components/toggle/toggle.component.js +2 -2
  343. package/cdn/components/toggle/toggle.js +3 -3
  344. package/cdn/components/tooltip/tooltip.component.js +3 -3
  345. package/cdn/components/tooltip/tooltip.js +4 -4
  346. package/cdn/components/variable-combobox/variable-combobox.component.js +6 -6
  347. package/cdn/components/variable-combobox/variable-combobox.js +7 -7
  348. package/cdn/components/variable-keyword-search/variable-keyword-search.component.js +9 -9
  349. package/cdn/components/variable-keyword-search/variable-keyword-search.controller.js +3 -3
  350. package/cdn/components/variable-keyword-search/variable-keyword-search.js +10 -10
  351. package/cdn/custom-elements.json +465 -452
  352. package/cdn/events/terra-time-series-data-change.d.ts +4 -0
  353. package/cdn/metadata-catalog/cmr-catalog.d.ts +2 -1
  354. package/cdn/metadata-catalog/queries.d.ts +1 -0
  355. package/cdn/metadata-catalog/types.d.ts +15 -0
  356. package/cdn/metadata-catalog/utilities.d.ts +1 -0
  357. package/cdn/react/accordion/index.js +4 -4
  358. package/cdn/react/alert/index.js +3 -3
  359. package/cdn/react/avatar/index.js +4 -4
  360. package/cdn/react/badge/index.js +3 -3
  361. package/cdn/react/breadcrumb/index.js +3 -3
  362. package/cdn/react/breadcrumbs/index.js +3 -3
  363. package/cdn/react/browse-variables/index.js +14 -14
  364. package/cdn/react/button/index.js +4 -4
  365. package/cdn/react/button-group/index.js +3 -3
  366. package/cdn/react/caption/index.js +3 -3
  367. package/cdn/react/card/index.js +3 -3
  368. package/cdn/react/checkbox/index.js +4 -4
  369. package/cdn/react/chip/index.js +3 -3
  370. package/cdn/react/combobox/index.js +3 -3
  371. package/cdn/react/data-access/index.js +22 -20
  372. package/cdn/react/data-grid/index.js +4 -4
  373. package/cdn/react/data-rods/index.js +28 -28
  374. package/cdn/react/data-subsetter/index.js +33 -33
  375. package/cdn/react/data-subsetter-history/index.js +34 -34
  376. package/cdn/react/date-picker/index.js +8 -8
  377. package/cdn/react/date-range-slider/index.js +3 -3
  378. package/cdn/react/dialog/index.js +6 -6
  379. package/cdn/react/divider/index.js +3 -3
  380. package/cdn/react/dropdown/index.js +4 -4
  381. package/cdn/react/earthdata-login/index.js +11 -11
  382. package/cdn/react/file-upload/index.js +3 -3
  383. package/cdn/react/icon/index.js +3 -3
  384. package/cdn/react/index.d.ts +1 -1
  385. package/cdn/react/index.js +150 -150
  386. package/cdn/react/input/index.js +4 -4
  387. package/cdn/react/loader/index.js +3 -3
  388. package/cdn/react/login/index.js +9 -9
  389. package/cdn/react/map/index.js +3 -3
  390. package/cdn/react/menu/index.js +3 -3
  391. package/cdn/react/menu-item/index.js +6 -6
  392. package/cdn/react/option/index.js +4 -4
  393. package/cdn/react/pagination/index.js +4 -4
  394. package/cdn/react/plot/index.js +3 -3
  395. package/cdn/react/plot-toolbar/index.js +11 -11
  396. package/cdn/react/popup/index.js +3 -3
  397. package/cdn/react/progress-bar/index.js +3 -3
  398. package/cdn/react/radio/index.js +3 -3
  399. package/cdn/react/radio-group/index.js +3 -3
  400. package/cdn/react/scroll-hint/index.js +4 -4
  401. package/cdn/react/select/index.js +6 -6
  402. package/cdn/react/site-header/index.js +4 -4
  403. package/cdn/react/site-navigation/index.js +3 -3
  404. package/cdn/react/skeleton/index.js +3 -3
  405. package/cdn/react/slider/index.js +3 -3
  406. package/cdn/react/spatial-picker/index.js +8 -8
  407. package/cdn/react/status-indicator/index.js +3 -3
  408. package/cdn/react/stepper/index.js +3 -3
  409. package/cdn/react/stepper-step/index.js +4 -4
  410. package/cdn/react/tab/index.js +4 -4
  411. package/cdn/react/tab-panel/index.js +3 -3
  412. package/cdn/react/tabs/index.js +4 -4
  413. package/cdn/react/tag/index.js +4 -4
  414. package/cdn/react/textarea/index.js +3 -3
  415. package/cdn/react/time-average-map/index.js +18 -18
  416. package/cdn/react/time-series/index.js +19 -19
  417. package/cdn/react/toast/index.js +4 -4
  418. package/cdn/react/toggle/index.js +3 -3
  419. package/cdn/react/tooltip/index.js +4 -4
  420. package/cdn/react/variable-combobox/index.js +7 -7
  421. package/cdn/react/variable-keyword-search/index.js +10 -10
  422. package/cdn/terra-ui-components.js +140 -140
  423. package/cdn/types/vue/index.d.ts +48 -45
  424. package/cdn/utilities/mimetypes.d.ts +1 -1
  425. package/cdn/utilities/mimetypes.js +1 -1
  426. package/cdn/vscode.html-custom-data.json +56 -55
  427. package/cdn/web-types.json +104 -104
  428. package/dist/chunks/chunk.26NX56QI.js +24 -0
  429. package/dist/chunks/chunk.2AESHMIE.js +11 -0
  430. package/dist/chunks/chunk.2I6VAQ4X.js +220 -0
  431. package/dist/chunks/chunk.2LZ7ZK6W.js +21 -0
  432. package/dist/chunks/chunk.2VFCY3NG.js +11 -0
  433. package/dist/chunks/chunk.2XSBOTE3.js +11 -0
  434. package/dist/chunks/chunk.37I6WAMP.js +770 -0
  435. package/dist/chunks/chunk.3A7HDRCP.js +11 -0
  436. package/dist/chunks/chunk.3C4ONLXQ.js +11 -0
  437. package/dist/chunks/chunk.3EC6LVHQ.js +1008 -0
  438. package/dist/chunks/chunk.3J63KVWQ.js +64 -0
  439. package/dist/chunks/chunk.3NOU5S4K.js +91 -0
  440. package/dist/chunks/chunk.3X746YVH.js +245 -0
  441. package/dist/chunks/chunk.45MBYG2J.js +180 -0
  442. package/dist/chunks/chunk.47UJXRMC.js +11 -0
  443. package/dist/chunks/chunk.4EAOYZ4Y.js +90 -0
  444. package/dist/chunks/chunk.4JBIFDM5.js +21 -0
  445. package/dist/chunks/chunk.4NINZ7PR.js +24 -0
  446. package/dist/chunks/chunk.4RXKWDDI.js +11 -0
  447. package/dist/chunks/chunk.4W2TLCX7.js +24 -0
  448. package/dist/chunks/chunk.4YTDUBCV.js +11 -0
  449. package/dist/chunks/chunk.5CEOYGSE.js +280 -0
  450. package/dist/chunks/chunk.5H6QX5YE.js +355 -0
  451. package/dist/chunks/chunk.5HCLCKYC.js +11 -0
  452. package/dist/chunks/chunk.5LBXVLHA.js +21 -0
  453. package/dist/chunks/chunk.5LXFWS2X.js +230 -0
  454. package/dist/chunks/chunk.5NOFG3EP.js +525 -0
  455. package/dist/chunks/chunk.5NV62PAR.js +27 -0
  456. package/dist/chunks/chunk.63FOFHWA.js +11 -0
  457. package/dist/chunks/chunk.6AVQFT4P.js +48 -0
  458. package/dist/chunks/chunk.6ITPEK7G.js +112 -0
  459. package/dist/chunks/chunk.6NBGYTKX.js +24 -0
  460. package/dist/chunks/chunk.6NWWYXCX.js +11 -0
  461. package/dist/chunks/chunk.6XAOZTL3.js +180 -0
  462. package/dist/chunks/chunk.73VNYEW6.js +272 -0
  463. package/dist/chunks/chunk.76MN3EY5.js +123 -0
  464. package/dist/chunks/chunk.7B4RGASR.js +89 -0
  465. package/dist/chunks/chunk.7CO6QTVI.js +26 -0
  466. package/dist/chunks/chunk.7GUSP6AE.js +21 -0
  467. package/dist/chunks/chunk.7RDHIYBR.js +24 -0
  468. package/dist/chunks/chunk.7TGVKLME.js +11 -0
  469. package/dist/chunks/chunk.7TJE42GX.js +345 -0
  470. package/dist/chunks/chunk.AC66MQLD.js +24 -0
  471. package/dist/chunks/chunk.ACC5KGBR.js +25 -0
  472. package/dist/chunks/chunk.AQN4K4PE.js +474 -0
  473. package/dist/chunks/chunk.ATXUKRGA.js +180 -0
  474. package/dist/chunks/chunk.AWKU3XTG.js +33 -0
  475. package/dist/chunks/chunk.AXV3G7KH.js +21 -0
  476. package/dist/chunks/chunk.BET4KOE5.js +11 -0
  477. package/dist/chunks/chunk.BKK46EO2.js +11 -0
  478. package/dist/chunks/chunk.BQD6RWFM.js +11 -0
  479. package/dist/chunks/chunk.BSNRT7I5.js +143 -0
  480. package/dist/chunks/chunk.BXPWNGNF.js +27 -0
  481. package/dist/chunks/chunk.C2O5UUCC.js +422 -0
  482. package/dist/chunks/chunk.C3NVM5TN.js +11 -0
  483. package/dist/chunks/chunk.CLKASSLD.js +11 -0
  484. package/dist/chunks/chunk.CLS5HSKH.js +11 -0
  485. package/dist/chunks/chunk.CMMVTSKI.js +28 -0
  486. package/dist/chunks/chunk.CQNCI3AM.js +11 -0
  487. package/dist/chunks/chunk.CTH6JDPM.js +264 -0
  488. package/dist/chunks/chunk.CZBSZFVL.js +11 -0
  489. package/dist/chunks/chunk.DBXUWS2C.js +25 -0
  490. package/dist/chunks/chunk.DDZOBF6U.js +97 -0
  491. package/dist/chunks/chunk.DKPTMHXJ.js +220 -0
  492. package/dist/chunks/chunk.DOCKLGV6.js +11 -0
  493. package/dist/chunks/chunk.DQM3FAKQ.js +11 -0
  494. package/dist/chunks/chunk.DZCWXBBG.js +91 -0
  495. package/dist/chunks/chunk.EDXTUU3P.js +409 -0
  496. package/dist/chunks/chunk.ETNOCBXV.js +259 -0
  497. package/dist/chunks/chunk.F5VGNMAV.js +291 -0
  498. package/dist/chunks/chunk.FDA5WS6M.js +11 -0
  499. package/dist/chunks/chunk.FDZA4S2G.js +2319 -0
  500. package/dist/chunks/chunk.FHZDS7MB.js +11 -0
  501. package/dist/chunks/chunk.FJADYS4M.js +24 -0
  502. package/dist/chunks/chunk.FQFJCEW7.js +402 -0
  503. package/dist/chunks/chunk.FUSU5ES4.js +26 -0
  504. package/dist/chunks/chunk.G2XZATCZ.js +24 -0
  505. package/dist/chunks/chunk.G4VHVVLA.js +477 -0
  506. package/dist/chunks/chunk.G7EJDV7H.js +67 -0
  507. package/dist/chunks/chunk.GIOCGCQO.js +21 -0
  508. package/dist/chunks/chunk.GIPTX5FE.js +11 -0
  509. package/dist/chunks/chunk.GWHRQKHQ.js +29 -0
  510. package/dist/chunks/chunk.GYJQD3LR.js +11 -0
  511. package/dist/chunks/chunk.H7RPIHW6.js +451 -0
  512. package/dist/chunks/chunk.HEVEMLN2.js +21 -0
  513. package/dist/chunks/chunk.HN6ZD7ZR.js +11 -0
  514. package/dist/chunks/chunk.HO6GD4UO.js +39 -0
  515. package/dist/chunks/chunk.HTMQKXQS.js +230 -0
  516. package/dist/chunks/chunk.HWB6FBYC.js +21 -0
  517. package/dist/chunks/chunk.HZWA5KX4.js +592 -0
  518. package/dist/chunks/chunk.IDZS2ZB5.js +345 -0
  519. package/dist/chunks/chunk.IG33XB7H.js +11 -0
  520. package/dist/chunks/chunk.IIIMSS4Y.js +1122 -0
  521. package/dist/chunks/chunk.IO6HE7V3.js +21 -0
  522. package/dist/chunks/chunk.IOXPL76F.js +124 -0
  523. package/dist/chunks/chunk.IRBQYHAY.js +24 -0
  524. package/dist/chunks/chunk.IRS2RRJ4.js +2228 -0
  525. package/dist/chunks/chunk.JAPC2IV5.js +519 -0
  526. package/dist/chunks/chunk.JDFJLQKP.js +21 -0
  527. package/dist/chunks/chunk.JHUQOT57.js +11 -0
  528. package/dist/chunks/chunk.JJ352NL6.js +11 -0
  529. package/dist/chunks/chunk.JLVOZ6YV.js +844 -0
  530. package/dist/chunks/chunk.JSHDVZDN.js +11 -0
  531. package/dist/chunks/chunk.JXNXBQTI.js +11 -0
  532. package/dist/chunks/chunk.JYANJSE7.js +97 -0
  533. package/dist/chunks/chunk.JYGQIFKK.js +28 -0
  534. package/dist/chunks/chunk.JZCDJ4LE.js +21 -0
  535. package/dist/chunks/chunk.KN46QEMU.js +61 -0
  536. package/dist/chunks/chunk.KNYC3J2M.js +11 -0
  537. package/dist/chunks/chunk.KUV4DHH5.js +31 -0
  538. package/dist/chunks/chunk.KXUWKUKJ.js +11 -0
  539. package/dist/chunks/chunk.L2OI4UX3.js +11 -0
  540. package/dist/chunks/chunk.LH4IBUIP.js +11 -0
  541. package/dist/chunks/chunk.LI6NBHLF.js +277 -0
  542. package/dist/chunks/chunk.LJVNFO4A.js +86 -0
  543. package/dist/chunks/chunk.LUVB2N6O.js +11 -0
  544. package/dist/chunks/chunk.LXURGYLC.js +11 -0
  545. package/dist/chunks/chunk.M3OC7NEG.js +21 -0
  546. package/dist/chunks/chunk.M5D5RZKV.js +21 -0
  547. package/dist/chunks/chunk.MAGMZQOA.js +581 -0
  548. package/dist/chunks/chunk.MAVAAOE6.js +21 -0
  549. package/dist/chunks/chunk.MOQRCJ2N.js +11 -0
  550. package/dist/chunks/chunk.MS5JCXOO.js +11 -0
  551. package/dist/chunks/chunk.MZ4FDVFI.js +139 -0
  552. package/dist/chunks/chunk.MZUHYX45.js +11 -0
  553. package/dist/chunks/chunk.N3OMOLSK.js +21 -0
  554. package/dist/chunks/chunk.NAJA6PKP.js +43 -0
  555. package/dist/chunks/chunk.NENT7F4Q.js +20 -0
  556. package/dist/chunks/chunk.NKJNTRXD.js +11 -0
  557. package/dist/chunks/chunk.NL2CMWZG.js +443 -0
  558. package/dist/chunks/chunk.NZERNQMX.js +11 -0
  559. package/dist/chunks/chunk.OCP7RLRP.js +25 -0
  560. package/dist/chunks/chunk.OIOD6WKF.js +83 -0
  561. package/dist/chunks/chunk.OJ4XP4H7.js +21 -0
  562. package/dist/chunks/chunk.ON3YVM46.js +138 -0
  563. package/dist/chunks/chunk.ORBAQ3N7.js +85 -0
  564. package/dist/chunks/chunk.P6FW46QA.js +252 -0
  565. package/dist/chunks/chunk.PBVVJ6TH.js +153 -0
  566. package/dist/chunks/chunk.PG7ZTWAN.js +21 -0
  567. package/dist/chunks/chunk.PGN3NPNL.js +28 -0
  568. package/dist/chunks/chunk.PK3J43FK.js +101 -0
  569. package/dist/chunks/chunk.PMTE2NJX.js +11 -0
  570. package/dist/chunks/chunk.PT76M4XO.js +21 -0
  571. package/dist/chunks/chunk.PVJUWIFN.js +720 -0
  572. package/dist/chunks/chunk.Q6LIQNS5.js +1204 -0
  573. package/dist/chunks/chunk.Q73CFE7U.js +58 -0
  574. package/dist/chunks/chunk.QCKOJOU6.js +74 -0
  575. package/dist/chunks/chunk.QD2A3VVR.js +21 -0
  576. package/dist/chunks/chunk.QQMW6GT2.js +1045 -0
  577. package/dist/chunks/chunk.QVBFEFCU.js +11 -0
  578. package/dist/chunks/chunk.QXP6FHUR.js +24 -0
  579. package/dist/chunks/chunk.R2UGJHZZ.js +21 -0
  580. package/dist/chunks/chunk.R6H2TZX4.js +21 -0
  581. package/dist/chunks/chunk.R6OZN6EN.js +11 -0
  582. package/dist/chunks/chunk.RXSEJYNM.js +21 -0
  583. package/dist/chunks/chunk.RZVFN5UE.js +11 -0
  584. package/dist/chunks/chunk.SF2VRMST.js +21 -0
  585. package/dist/chunks/chunk.SJVXFIWD.js +43 -0
  586. package/dist/chunks/chunk.SUNOJEMZ.js +93 -0
  587. package/dist/chunks/chunk.SZYVJ4V7.js +11 -0
  588. package/dist/chunks/chunk.T7XX4WEP.js +48 -0
  589. package/dist/chunks/chunk.TDJBGDNY.js +145 -0
  590. package/dist/chunks/chunk.TJXQEGVJ.js +214 -0
  591. package/dist/chunks/chunk.TLURY5L2.js +11 -0
  592. package/dist/chunks/chunk.TPCE32EK.js +11 -0
  593. package/dist/chunks/chunk.TTWYCAIT.js +24 -0
  594. package/dist/chunks/chunk.U237ZC4W.js +21 -0
  595. package/dist/chunks/chunk.UDIZDRS5.js +29 -0
  596. package/dist/chunks/chunk.UJKKCH2V.js +24 -0
  597. package/dist/chunks/chunk.UTZAQEKC.js +78 -0
  598. package/dist/chunks/chunk.UU2S72KN.js +30 -0
  599. package/dist/chunks/chunk.UUSW6ORT.js +11 -0
  600. package/dist/chunks/chunk.VIQAMKEV.js +21 -0
  601. package/dist/chunks/chunk.VTNL5WQZ.js +27 -0
  602. package/dist/chunks/chunk.VXC7RH5L.js +262 -0
  603. package/dist/chunks/chunk.W23BEROV.js +11 -0
  604. package/dist/chunks/chunk.WEDWI2X7.js +24 -0
  605. package/dist/chunks/chunk.WHKVASNW.js +11 -0
  606. package/dist/chunks/chunk.WOQITMX7.js +24 -0
  607. package/dist/chunks/chunk.WSI766QR.js +11 -0
  608. package/dist/chunks/chunk.WVJ2PX5R.js +11 -0
  609. package/dist/chunks/chunk.XBLIWMGF.js +21 -0
  610. package/dist/chunks/chunk.XCAUTUEM.js +75 -0
  611. package/dist/chunks/chunk.XH7VQYYI.js +21 -0
  612. package/dist/chunks/chunk.XOMYW2MV.js +213 -0
  613. package/dist/chunks/chunk.XRHEEGQG.js +121 -0
  614. package/dist/chunks/chunk.XSHUDUHJ.js +11 -0
  615. package/dist/chunks/chunk.XSWBWURT.js +11 -0
  616. package/dist/chunks/chunk.XV67WVGC.js +21 -0
  617. package/dist/chunks/chunk.XYQ5OEQP.js +190 -0
  618. package/dist/chunks/chunk.Y2N3BPIK.js +11 -0
  619. package/dist/chunks/chunk.Y3Y5JOA6.js +52 -0
  620. package/dist/chunks/chunk.Y7D26LUT.js +25 -0
  621. package/dist/chunks/chunk.YGFPWBAJ.js +52 -0
  622. package/dist/chunks/chunk.YKKHGNSJ.js +28 -0
  623. package/dist/chunks/chunk.YMVVIGUR.js +25 -0
  624. package/dist/chunks/chunk.YPJD4YGB.js +21 -0
  625. package/dist/chunks/chunk.YQG36G33.js +247 -0
  626. package/dist/chunks/chunk.YRP45MK5.js +596 -0
  627. package/dist/chunks/chunk.YW42OUUX.js +11 -0
  628. package/dist/chunks/chunk.ZFWWL6VE.js +27 -0
  629. package/dist/chunks/chunk.ZRTYMWVA.js +11 -0
  630. package/dist/chunks/chunk.ZS5ZMUFV.js +609 -0
  631. package/dist/chunks/chunk.ZUHB36YG.js +21 -0
  632. package/dist/chunks/chunk.ZVZPK75F.js +11 -0
  633. package/dist/components/accordion/accordion.component.js +3 -3
  634. package/dist/components/accordion/accordion.js +4 -4
  635. package/dist/components/alert/alert.component.js +2 -2
  636. package/dist/components/alert/alert.js +3 -3
  637. package/dist/components/avatar/avatar.component.js +3 -3
  638. package/dist/components/avatar/avatar.js +4 -4
  639. package/dist/components/badge/badge.component.js +2 -2
  640. package/dist/components/badge/badge.js +3 -3
  641. package/dist/components/breadcrumb/breadcrumb.component.js +2 -2
  642. package/dist/components/breadcrumb/breadcrumb.js +3 -3
  643. package/dist/components/breadcrumbs/breadcrumbs.component.js +2 -2
  644. package/dist/components/breadcrumbs/breadcrumbs.js +3 -3
  645. package/dist/components/browse-variables/browse-variables.component.js +13 -13
  646. package/dist/components/browse-variables/browse-variables.controller.js +3 -3
  647. package/dist/components/browse-variables/browse-variables.js +14 -14
  648. package/dist/components/button/button.component.js +3 -3
  649. package/dist/components/button/button.js +4 -4
  650. package/dist/components/button-group/button-group.component.js +2 -2
  651. package/dist/components/button-group/button-group.js +3 -3
  652. package/dist/components/caption/caption.component.js +2 -2
  653. package/dist/components/caption/caption.js +3 -3
  654. package/dist/components/card/card.component.js +2 -2
  655. package/dist/components/card/card.js +3 -3
  656. package/dist/components/checkbox/checkbox.component.js +3 -3
  657. package/dist/components/checkbox/checkbox.js +4 -4
  658. package/dist/components/chip/chip.component.js +2 -2
  659. package/dist/components/chip/chip.js +3 -3
  660. package/dist/components/combobox/combobox.component.js +2 -2
  661. package/dist/components/combobox/combobox.js +3 -3
  662. package/dist/components/data-access/data-access.component.d.ts +2 -0
  663. package/dist/components/data-access/data-access.component.js +21 -19
  664. package/dist/components/data-access/data-access.controller.js +4 -4
  665. package/dist/components/data-access/data-access.js +22 -20
  666. package/dist/components/data-grid/data-grid.component.js +3 -3
  667. package/dist/components/data-grid/data-grid.js +4 -4
  668. package/dist/components/data-rods/data-rods.component.js +27 -27
  669. package/dist/components/data-rods/data-rods.js +28 -28
  670. package/dist/components/data-subsetter/data-subsetter.component.d.ts +2 -1
  671. package/dist/components/data-subsetter/data-subsetter.component.js +32 -32
  672. package/dist/components/data-subsetter/data-subsetter.controller.d.ts +3 -1
  673. package/dist/components/data-subsetter/data-subsetter.controller.js +3 -3
  674. package/dist/components/data-subsetter/data-subsetter.js +33 -33
  675. package/dist/components/data-subsetter/data-subsetter.styles.js +1 -1
  676. package/dist/components/data-subsetter/notebooks/subsetter-notebook.js +1 -1
  677. package/dist/components/data-subsetter-history/data-subsetter-history.component.js +33 -33
  678. package/dist/components/data-subsetter-history/data-subsetter-history.js +34 -34
  679. package/dist/components/date-picker/date-picker.component.d.ts +4 -0
  680. package/dist/components/date-picker/date-picker.component.js +7 -7
  681. package/dist/components/date-picker/date-picker.js +8 -8
  682. package/dist/components/date-range-slider/date-range-slider.component.js +2 -2
  683. package/dist/components/date-range-slider/date-range-slider.js +3 -3
  684. package/dist/components/dialog/dialog.component.js +5 -5
  685. package/dist/components/dialog/dialog.js +6 -6
  686. package/dist/components/dialog/dialog.styles.js +1 -1
  687. package/dist/components/divider/divider.component.js +2 -2
  688. package/dist/components/divider/divider.js +3 -3
  689. package/dist/components/dropdown/dropdown.component.js +3 -3
  690. package/dist/components/dropdown/dropdown.js +4 -4
  691. package/dist/components/earthdata-login/earthdata-login.component.js +10 -10
  692. package/dist/components/earthdata-login/earthdata-login.js +11 -11
  693. package/dist/components/file-upload/file-upload.component.js +2 -2
  694. package/dist/components/file-upload/file-upload.js +3 -3
  695. package/dist/components/icon/icon.component.js +2 -2
  696. package/dist/components/icon/icon.js +3 -3
  697. package/dist/components/input/input.component.js +3 -3
  698. package/dist/components/input/input.js +4 -4
  699. package/dist/components/loader/loader.component.js +2 -2
  700. package/dist/components/loader/loader.js +3 -3
  701. package/dist/components/login/login.component.js +8 -8
  702. package/dist/components/login/login.js +9 -9
  703. package/dist/components/map/map.component.js +2 -2
  704. package/dist/components/map/map.js +3 -3
  705. package/dist/components/menu/menu.component.js +2 -2
  706. package/dist/components/menu/menu.js +3 -3
  707. package/dist/components/menu-item/menu-item.component.js +5 -5
  708. package/dist/components/menu-item/menu-item.js +6 -6
  709. package/dist/components/option/option.component.js +3 -3
  710. package/dist/components/option/option.js +4 -4
  711. package/dist/components/pagination/pagination.component.js +3 -3
  712. package/dist/components/pagination/pagination.js +4 -4
  713. package/dist/components/plot/plot.component.js +2 -2
  714. package/dist/components/plot/plot.js +3 -3
  715. package/dist/components/plot-toolbar/notebooks/time-averaged-map-notebook.js +1 -1
  716. package/dist/components/plot-toolbar/notebooks/time-series-notebook.js +1 -1
  717. package/dist/components/plot-toolbar/plot-toolbar.component.d.ts +0 -4
  718. package/dist/components/plot-toolbar/plot-toolbar.component.js +10 -10
  719. package/dist/components/plot-toolbar/plot-toolbar.controller.js +3 -3
  720. package/dist/components/plot-toolbar/plot-toolbar.js +11 -11
  721. package/dist/components/popup/popup.component.js +2 -2
  722. package/dist/components/popup/popup.js +3 -3
  723. package/dist/components/progress-bar/progress-bar.component.js +2 -2
  724. package/dist/components/progress-bar/progress-bar.js +3 -3
  725. package/dist/components/radio/radio.component.js +2 -2
  726. package/dist/components/radio/radio.js +3 -3
  727. package/dist/components/radio-group/radio-group.component.js +2 -2
  728. package/dist/components/radio-group/radio-group.js +3 -3
  729. package/dist/components/scroll-hint/scroll-hint.component.js +3 -3
  730. package/dist/components/scroll-hint/scroll-hint.js +4 -4
  731. package/dist/components/select/select.component.js +5 -5
  732. package/dist/components/select/select.js +6 -6
  733. package/dist/components/site-header/site-header.component.js +3 -3
  734. package/dist/components/site-header/site-header.js +3 -3
  735. package/dist/components/site-navigation/site-navigation.component.js +2 -2
  736. package/dist/components/site-navigation/site-navigation.js +2 -2
  737. package/dist/components/skeleton/skeleton.component.js +2 -2
  738. package/dist/components/skeleton/skeleton.js +3 -3
  739. package/dist/components/slider/slider.component.js +2 -2
  740. package/dist/components/slider/slider.js +3 -3
  741. package/dist/components/spatial-picker/spatial-picker.component.js +7 -7
  742. package/dist/components/spatial-picker/spatial-picker.js +8 -8
  743. package/dist/components/status-indicator/status-indicator.component.js +2 -2
  744. package/dist/components/status-indicator/status-indicator.js +3 -3
  745. package/dist/components/stepper/stepper.component.js +2 -2
  746. package/dist/components/stepper/stepper.js +3 -3
  747. package/dist/components/stepper-step/stepper-step.component.js +3 -3
  748. package/dist/components/stepper-step/stepper-step.js +4 -4
  749. package/dist/components/tab/tab.component.js +3 -3
  750. package/dist/components/tab/tab.js +4 -4
  751. package/dist/components/tab-panel/tab-panel.component.js +2 -2
  752. package/dist/components/tab-panel/tab-panel.js +3 -3
  753. package/dist/components/tabs/tabs.component.js +3 -3
  754. package/dist/components/tabs/tabs.js +4 -4
  755. package/dist/components/tag/tag.component.js +3 -3
  756. package/dist/components/tag/tag.js +4 -4
  757. package/dist/components/textarea/textarea.component.js +2 -2
  758. package/dist/components/textarea/textarea.js +3 -3
  759. package/dist/components/time-average-map/time-average-map.component.d.ts +0 -4
  760. package/dist/components/time-average-map/time-average-map.component.js +17 -17
  761. package/dist/components/time-average-map/time-average-map.js +18 -18
  762. package/dist/components/time-series/time-series.component.d.ts +6 -4
  763. package/dist/components/time-series/time-series.component.js +18 -18
  764. package/dist/components/time-series/time-series.controller.d.ts +2 -0
  765. package/dist/components/time-series/time-series.controller.js +1 -1
  766. package/dist/components/time-series/time-series.js +19 -19
  767. package/dist/components/toast/toast.component.js +3 -3
  768. package/dist/components/toast/toast.js +4 -4
  769. package/dist/components/toggle/toggle.component.js +2 -2
  770. package/dist/components/toggle/toggle.js +3 -3
  771. package/dist/components/tooltip/tooltip.component.js +3 -3
  772. package/dist/components/tooltip/tooltip.js +4 -4
  773. package/dist/components/variable-combobox/variable-combobox.component.js +6 -6
  774. package/dist/components/variable-combobox/variable-combobox.js +7 -7
  775. package/dist/components/variable-keyword-search/variable-keyword-search.component.js +9 -9
  776. package/dist/components/variable-keyword-search/variable-keyword-search.controller.js +3 -3
  777. package/dist/components/variable-keyword-search/variable-keyword-search.js +10 -10
  778. package/dist/custom-elements.json +465 -452
  779. package/dist/events/terra-time-series-data-change.d.ts +4 -0
  780. package/dist/metadata-catalog/cmr-catalog.d.ts +2 -1
  781. package/dist/metadata-catalog/queries.d.ts +1 -0
  782. package/dist/metadata-catalog/types.d.ts +15 -0
  783. package/dist/metadata-catalog/utilities.d.ts +1 -0
  784. package/dist/react/accordion/index.js +4 -4
  785. package/dist/react/alert/index.js +3 -3
  786. package/dist/react/avatar/index.js +4 -4
  787. package/dist/react/badge/index.js +3 -3
  788. package/dist/react/breadcrumb/index.js +3 -3
  789. package/dist/react/breadcrumbs/index.js +3 -3
  790. package/dist/react/browse-variables/index.js +14 -14
  791. package/dist/react/button/index.js +4 -4
  792. package/dist/react/button-group/index.js +3 -3
  793. package/dist/react/caption/index.js +3 -3
  794. package/dist/react/card/index.js +3 -3
  795. package/dist/react/checkbox/index.js +4 -4
  796. package/dist/react/chip/index.js +3 -3
  797. package/dist/react/combobox/index.js +3 -3
  798. package/dist/react/data-access/index.js +22 -20
  799. package/dist/react/data-grid/index.js +4 -4
  800. package/dist/react/data-rods/index.js +28 -28
  801. package/dist/react/data-subsetter/index.js +33 -33
  802. package/dist/react/data-subsetter-history/index.js +34 -34
  803. package/dist/react/date-picker/index.js +8 -8
  804. package/dist/react/date-range-slider/index.js +3 -3
  805. package/dist/react/dialog/index.js +6 -6
  806. package/dist/react/divider/index.js +3 -3
  807. package/dist/react/dropdown/index.js +4 -4
  808. package/dist/react/earthdata-login/index.js +11 -11
  809. package/dist/react/file-upload/index.js +3 -3
  810. package/dist/react/icon/index.js +3 -3
  811. package/dist/react/index.d.ts +1 -1
  812. package/dist/react/index.js +150 -150
  813. package/dist/react/input/index.js +4 -4
  814. package/dist/react/loader/index.js +3 -3
  815. package/dist/react/login/index.js +9 -9
  816. package/dist/react/map/index.js +3 -3
  817. package/dist/react/menu/index.js +3 -3
  818. package/dist/react/menu-item/index.js +6 -6
  819. package/dist/react/option/index.js +4 -4
  820. package/dist/react/pagination/index.js +4 -4
  821. package/dist/react/plot/index.js +3 -3
  822. package/dist/react/plot-toolbar/index.js +11 -11
  823. package/dist/react/popup/index.js +3 -3
  824. package/dist/react/progress-bar/index.js +3 -3
  825. package/dist/react/radio/index.js +3 -3
  826. package/dist/react/radio-group/index.js +3 -3
  827. package/dist/react/scroll-hint/index.js +4 -4
  828. package/dist/react/select/index.js +6 -6
  829. package/dist/react/site-header/index.js +4 -4
  830. package/dist/react/site-navigation/index.js +3 -3
  831. package/dist/react/skeleton/index.js +3 -3
  832. package/dist/react/slider/index.js +3 -3
  833. package/dist/react/spatial-picker/index.js +8 -8
  834. package/dist/react/status-indicator/index.js +3 -3
  835. package/dist/react/stepper/index.js +3 -3
  836. package/dist/react/stepper-step/index.js +4 -4
  837. package/dist/react/tab/index.js +4 -4
  838. package/dist/react/tab-panel/index.js +3 -3
  839. package/dist/react/tabs/index.js +4 -4
  840. package/dist/react/tag/index.js +4 -4
  841. package/dist/react/textarea/index.js +3 -3
  842. package/dist/react/time-average-map/index.js +18 -18
  843. package/dist/react/time-series/index.js +19 -19
  844. package/dist/react/toast/index.js +4 -4
  845. package/dist/react/toggle/index.js +3 -3
  846. package/dist/react/tooltip/index.js +4 -4
  847. package/dist/react/variable-combobox/index.js +7 -7
  848. package/dist/react/variable-keyword-search/index.js +10 -10
  849. package/dist/terra-ui-components.js +140 -140
  850. package/dist/terra_ui_components-0.0.171-py3-none-any.whl +0 -0
  851. package/dist/terra_ui_components-0.0.171.tar.gz +0 -0
  852. package/dist/types/vue/index.d.ts +48 -45
  853. package/dist/utilities/mimetypes.d.ts +1 -1
  854. package/dist/utilities/mimetypes.js +1 -1
  855. package/dist/vscode.html-custom-data.json +56 -55
  856. package/dist/web-types.json +104 -104
  857. package/package.json +1 -1
  858. package/cdn/chunks/chunk.23Y7QMN5.js +0 -753
  859. package/cdn/chunks/chunk.27DM5VK6.js +0 -165
  860. package/cdn/chunks/chunk.2CUPINMP.js +0 -2225
  861. package/cdn/chunks/chunk.2HVBS5KK.js +0 -155
  862. package/cdn/chunks/chunk.2L2DH4EY.js +0 -538
  863. package/cdn/chunks/chunk.2LQPMIIZ.js +0 -32
  864. package/cdn/chunks/chunk.2NM4U2LU.js +0 -187
  865. package/cdn/chunks/chunk.2UVKVPX3.js +0 -29
  866. package/cdn/chunks/chunk.33KHQW3Z.js +0 -19
  867. package/cdn/chunks/chunk.3526RPQK.js +0 -621
  868. package/cdn/chunks/chunk.36GA7KWW.js +0 -904
  869. package/cdn/chunks/chunk.37JFNNAW.js +0 -19
  870. package/cdn/chunks/chunk.3H3V4B47.js +0 -19
  871. package/cdn/chunks/chunk.3LHSTJOM.js +0 -32
  872. package/cdn/chunks/chunk.3P36LV7J.js +0 -19
  873. package/cdn/chunks/chunk.3U7HCXAJ.js +0 -41
  874. package/cdn/chunks/chunk.4APCPT3O.js +0 -29
  875. package/cdn/chunks/chunk.4QFPAUSK.js +0 -276
  876. package/cdn/chunks/chunk.4S6HV5RX.js +0 -19
  877. package/cdn/chunks/chunk.4WNVAI6U.js +0 -610
  878. package/cdn/chunks/chunk.56SWCPZS.js +0 -1966
  879. package/cdn/chunks/chunk.57GBWZJW.js +0 -19
  880. package/cdn/chunks/chunk.5ASZGZMI.js +0 -132
  881. package/cdn/chunks/chunk.5CEXP5OW.js +0 -616
  882. package/cdn/chunks/chunk.5DNZJJJB.js +0 -104
  883. package/cdn/chunks/chunk.5H5YOUOE.js +0 -55346
  884. package/cdn/chunks/chunk.5SQAQCOP.js +0 -34
  885. package/cdn/chunks/chunk.5WPHVZHW.js +0 -19
  886. package/cdn/chunks/chunk.6KBHTN75.js +0 -99
  887. package/cdn/chunks/chunk.6L327MVB.js +0 -19
  888. package/cdn/chunks/chunk.6QE4CS2W.js +0 -35
  889. package/cdn/chunks/chunk.756JSGIG.js +0 -19
  890. package/cdn/chunks/chunk.75WXZ7WM.js +0 -19
  891. package/cdn/chunks/chunk.7BMGYTZW.js +0 -259
  892. package/cdn/chunks/chunk.7CVHAUON.js +0 -71
  893. package/cdn/chunks/chunk.7JCWA2LY.js +0 -477
  894. package/cdn/chunks/chunk.7KGX77P7.js +0 -32
  895. package/cdn/chunks/chunk.7QFE2GFU.js +0 -36
  896. package/cdn/chunks/chunk.7WTX5UMU.js +0 -19
  897. package/cdn/chunks/chunk.7Z2FEIQL.js +0 -78
  898. package/cdn/chunks/chunk.A2HDQWT4.js +0 -189
  899. package/cdn/chunks/chunk.A2OJJCLG.js +0 -731
  900. package/cdn/chunks/chunk.A32PK7HR.js +0 -113
  901. package/cdn/chunks/chunk.ADM4OZQM.js +0 -33
  902. package/cdn/chunks/chunk.AEZPANSK.js +0 -36
  903. package/cdn/chunks/chunk.AFTQQ2NR.js +0 -37
  904. package/cdn/chunks/chunk.AI5EBCPG.js +0 -19
  905. package/cdn/chunks/chunk.AQQOOF6N.js +0 -49
  906. package/cdn/chunks/chunk.BFOK4EDR.js +0 -524
  907. package/cdn/chunks/chunk.BICJ7IPP.js +0 -29
  908. package/cdn/chunks/chunk.BPPHVTY3.js +0 -293
  909. package/cdn/chunks/chunk.CDJ56MTC.js +0 -19
  910. package/cdn/chunks/chunk.CDYTMBTI.js +0 -158
  911. package/cdn/chunks/chunk.CL5CAJ5Q.js +0 -29
  912. package/cdn/chunks/chunk.CTTIIQCS.js +0 -32
  913. package/cdn/chunks/chunk.CWK3Y63Q.js +0 -19
  914. package/cdn/chunks/chunk.CXDOHJL6.js +0 -29
  915. package/cdn/chunks/chunk.DIIJLVU2.js +0 -32
  916. package/cdn/chunks/chunk.DLWEHN27.js +0 -35
  917. package/cdn/chunks/chunk.DUCENLLS.js +0 -19
  918. package/cdn/chunks/chunk.E4RTDATJ.js +0 -19
  919. package/cdn/chunks/chunk.EATTMKCR.js +0 -19
  920. package/cdn/chunks/chunk.EBKWUG27.js +0 -29
  921. package/cdn/chunks/chunk.EBQNLHZJ.js +0 -19
  922. package/cdn/chunks/chunk.EIVITIUS.js +0 -302
  923. package/cdn/chunks/chunk.EKXEAFVP.js +0 -19
  924. package/cdn/chunks/chunk.ELMFDV2G.js +0 -247
  925. package/cdn/chunks/chunk.EMYBC6Z6.js +0 -47
  926. package/cdn/chunks/chunk.EXAQWYAI.js +0 -19
  927. package/cdn/chunks/chunk.F2UTVBGA.js +0 -68
  928. package/cdn/chunks/chunk.FADW5CYP.js +0 -32
  929. package/cdn/chunks/chunk.FGQ7TN3O.js +0 -29
  930. package/cdn/chunks/chunk.FJEMKM6L.js +0 -99
  931. package/cdn/chunks/chunk.FKRUMJF6.js +0 -34
  932. package/cdn/chunks/chunk.FLVA6RF4.js +0 -19
  933. package/cdn/chunks/chunk.FR6G35YE.js +0 -190
  934. package/cdn/chunks/chunk.FVDHBEFI.js +0 -19
  935. package/cdn/chunks/chunk.FZFVEWOR.js +0 -19
  936. package/cdn/chunks/chunk.GAFBBVHT.js +0 -60
  937. package/cdn/chunks/chunk.GAO5VS4R.js +0 -32
  938. package/cdn/chunks/chunk.GHVQRIPC.js +0 -239
  939. package/cdn/chunks/chunk.GLK3BXH4.js +0 -29
  940. package/cdn/chunks/chunk.GOH3Q4DD.js +0 -29
  941. package/cdn/chunks/chunk.GOTF2HRS.js +0 -19
  942. package/cdn/chunks/chunk.GSTTVP4T.js +0 -29
  943. package/cdn/chunks/chunk.GVI2UZCY.js +0 -1048
  944. package/cdn/chunks/chunk.H3LV4ESK.js +0 -19
  945. package/cdn/chunks/chunk.HLO5BX7S.js +0 -35
  946. package/cdn/chunks/chunk.HN6WYJ7E.js +0 -29
  947. package/cdn/chunks/chunk.HO5P2NSN.js +0 -33
  948. package/cdn/chunks/chunk.HZVV2Q4F.js +0 -32
  949. package/cdn/chunks/chunk.I3QKV2JC.js +0 -19
  950. package/cdn/chunks/chunk.ICM6XULG.js +0 -33
  951. package/cdn/chunks/chunk.II3LLQGZ.js +0 -19
  952. package/cdn/chunks/chunk.IJSNT3YK.js +0 -19
  953. package/cdn/chunks/chunk.IKZ6QOIX.js +0 -435
  954. package/cdn/chunks/chunk.IOT2QUMW.js +0 -19
  955. package/cdn/chunks/chunk.IPGDKFBU.js +0 -29
  956. package/cdn/chunks/chunk.ISBKM2OB.js +0 -238
  957. package/cdn/chunks/chunk.IWWRB72D.js +0 -83
  958. package/cdn/chunks/chunk.IXPDYB64.js +0 -29
  959. package/cdn/chunks/chunk.IZ5CXEC6.js +0 -19
  960. package/cdn/chunks/chunk.IZK7HP7M.js +0 -92
  961. package/cdn/chunks/chunk.J2JFIHNU.js +0 -234
  962. package/cdn/chunks/chunk.JA6ZZ64V.js +0 -32
  963. package/cdn/chunks/chunk.JGFYSIBR.js +0 -93
  964. package/cdn/chunks/chunk.JJJZZZWN.js +0 -33869
  965. package/cdn/chunks/chunk.JK64JGC7.js +0 -19
  966. package/cdn/chunks/chunk.JNF2ARPJ.js +0 -19
  967. package/cdn/chunks/chunk.JR6UQQBE.js +0 -662
  968. package/cdn/chunks/chunk.K7EC2QO6.js +0 -145
  969. package/cdn/chunks/chunk.K7R2IQRB.js +0 -19
  970. package/cdn/chunks/chunk.KFKTQYI4.js +0 -35
  971. package/cdn/chunks/chunk.KIDO7MT6.js +0 -1224
  972. package/cdn/chunks/chunk.KJYNC4N2.js +0 -19
  973. package/cdn/chunks/chunk.KM4LDSC2.js +0 -29
  974. package/cdn/chunks/chunk.KTUOZT6B.js +0 -29
  975. package/cdn/chunks/chunk.L3WF4VSH.js +0 -224
  976. package/cdn/chunks/chunk.L4RC5K6N.js +0 -19
  977. package/cdn/chunks/chunk.L4ZVQGZG.js +0 -19
  978. package/cdn/chunks/chunk.LBABTGAS.js +0 -146
  979. package/cdn/chunks/chunk.LBP2IFU2.js +0 -32
  980. package/cdn/chunks/chunk.LH6SE47V.js +0 -19
  981. package/cdn/chunks/chunk.LI3UO24Z.js +0 -19
  982. package/cdn/chunks/chunk.LJP57TPZ.js +0 -123
  983. package/cdn/chunks/chunk.LRJIJSME.js +0 -151
  984. package/cdn/chunks/chunk.LRRN7TW2.js +0 -86
  985. package/cdn/chunks/chunk.LSDUHLTV.js +0 -264
  986. package/cdn/chunks/chunk.LTRAIDNN.js +0 -136
  987. package/cdn/chunks/chunk.M4H7O47V.js +0 -19
  988. package/cdn/chunks/chunk.MJF4FK73.js +0 -19
  989. package/cdn/chunks/chunk.MKUGDZZU.js +0 -19
  990. package/cdn/chunks/chunk.MKZAH3ZX.js +0 -29
  991. package/cdn/chunks/chunk.MRBM4LPE.js +0 -19
  992. package/cdn/chunks/chunk.NKKYMYRH.js +0 -99
  993. package/cdn/chunks/chunk.NLXOFVES.js +0 -85
  994. package/cdn/chunks/chunk.NND2EWZ7.js +0 -19
  995. package/cdn/chunks/chunk.NWPJ65LM.js +0 -372
  996. package/cdn/chunks/chunk.O5AIQWAQ.js +0 -1010
  997. package/cdn/chunks/chunk.OCDEWNKT.js +0 -32
  998. package/cdn/chunks/chunk.OO2H4TMZ.js +0 -19
  999. package/cdn/chunks/chunk.OW5IH327.js +0 -19
  1000. package/cdn/chunks/chunk.P2ZNC5N5.js +0 -19
  1001. package/cdn/chunks/chunk.PAAEZB53.js +0 -36
  1002. package/cdn/chunks/chunk.PDOV4E5N.js +0 -375
  1003. package/cdn/chunks/chunk.PENG2T5E.js +0 -599
  1004. package/cdn/chunks/chunk.PJ7252UY.js +0 -19
  1005. package/cdn/chunks/chunk.PL666R3D.js +0 -2313
  1006. package/cdn/chunks/chunk.PON44CCO.js +0 -19
  1007. package/cdn/chunks/chunk.POXRZGF4.js +0 -83
  1008. package/cdn/chunks/chunk.PRI4ETTU.js +0 -509
  1009. package/cdn/chunks/chunk.PRPTY76K.js +0 -33
  1010. package/cdn/chunks/chunk.PZP4NGXC.js +0 -19
  1011. package/cdn/chunks/chunk.Q3MSM3S3.js +0 -29
  1012. package/cdn/chunks/chunk.QAINETNF.js +0 -32
  1013. package/cdn/chunks/chunk.QQHECGCQ.js +0 -19
  1014. package/cdn/chunks/chunk.QSGYUPH7.js +0 -32
  1015. package/cdn/chunks/chunk.QVKRDXJX.js +0 -29
  1016. package/cdn/chunks/chunk.QZNDVWYX.js +0 -29
  1017. package/cdn/chunks/chunk.R2LK7SNC.js +0 -56
  1018. package/cdn/chunks/chunk.R7FSG6GO.js +0 -278
  1019. package/cdn/chunks/chunk.S2F2564D.js +0 -77
  1020. package/cdn/chunks/chunk.S4VVLASW.js +0 -29
  1021. package/cdn/chunks/chunk.S5DW3CK4.js +0 -29
  1022. package/cdn/chunks/chunk.S64Z33IQ.js +0 -19
  1023. package/cdn/chunks/chunk.S6722JTJ.js +0 -29
  1024. package/cdn/chunks/chunk.SEQFSNN4.js +0 -33
  1025. package/cdn/chunks/chunk.SF3AZD6E.js +0 -29
  1026. package/cdn/chunks/chunk.SZE5IVAS.js +0 -19
  1027. package/cdn/chunks/chunk.TGOEQWBO.js +0 -493
  1028. package/cdn/chunks/chunk.TSWRJVG4.js +0 -19
  1029. package/cdn/chunks/chunk.TU63UI7B.js +0 -36
  1030. package/cdn/chunks/chunk.UOX5YQY3.js +0 -33
  1031. package/cdn/chunks/chunk.UQJ4SMJ3.js +0 -106
  1032. package/cdn/chunks/chunk.UXWYH6UK.js +0 -359
  1033. package/cdn/chunks/chunk.V2WQ7CJY.js +0 -134
  1034. package/cdn/chunks/chunk.V346CTFU.js +0 -357
  1035. package/cdn/chunks/chunk.V3ZDPJWB.js +0 -30
  1036. package/cdn/chunks/chunk.V4B3K3CH.js +0 -60
  1037. package/cdn/chunks/chunk.V7ZHQ3LF.js +0 -19
  1038. package/cdn/chunks/chunk.VISOFNVX.js +0 -74
  1039. package/cdn/chunks/chunk.VKJTY34O.js +0 -29
  1040. package/cdn/chunks/chunk.VXFNVWXT.js +0 -39
  1041. package/cdn/chunks/chunk.VZRG32HK.js +0 -19
  1042. package/cdn/chunks/chunk.W2XEKYWI.js +0 -29
  1043. package/cdn/chunks/chunk.W3AZM2YM.js +0 -19
  1044. package/cdn/chunks/chunk.W75QDPUW.js +0 -287
  1045. package/cdn/chunks/chunk.W7KGVFJQ.js +0 -52
  1046. package/cdn/chunks/chunk.WGGPLRDO.js +0 -29
  1047. package/cdn/chunks/chunk.WNCDZ6UO.js +0 -230
  1048. package/cdn/chunks/chunk.WQXKFJW2.js +0 -29
  1049. package/cdn/chunks/chunk.WRAITQOZ.js +0 -19
  1050. package/cdn/chunks/chunk.WSWBUCUH.js +0 -231
  1051. package/cdn/chunks/chunk.X5B3CBZJ.js +0 -62
  1052. package/cdn/chunks/chunk.X6VRRG6J.js +0 -19
  1053. package/cdn/chunks/chunk.XAN6UYF4.js +0 -19
  1054. package/cdn/chunks/chunk.XS3ROQMX.js +0 -29
  1055. package/cdn/chunks/chunk.YGIT6RXF.js +0 -288
  1056. package/cdn/chunks/chunk.YHNSKH3Z.js +0 -29
  1057. package/cdn/chunks/chunk.YN27NNFM.js +0 -19
  1058. package/cdn/chunks/chunk.YNVR7UOD.js +0 -29
  1059. package/cdn/chunks/chunk.YVQ7TDFC.js +0 -37
  1060. package/cdn/chunks/chunk.ZDADCW7B.js +0 -188
  1061. package/cdn/chunks/chunk.ZLLXQUOT.js +0 -32
  1062. package/cdn/chunks/chunk.ZR2QAPEQ.js +0 -19
  1063. package/dist/chunks/chunk.25X72P22.js +0 -21
  1064. package/dist/chunks/chunk.2HJCSCE2.js +0 -52
  1065. package/dist/chunks/chunk.2IDKJCLH.js +0 -11
  1066. package/dist/chunks/chunk.2JLEP7WV.js +0 -135
  1067. package/dist/chunks/chunk.2JWWS6WI.js +0 -11
  1068. package/dist/chunks/chunk.2KXWG3Z2.js +0 -11
  1069. package/dist/chunks/chunk.2SY2KPM3.js +0 -220
  1070. package/dist/chunks/chunk.2V3DZPUN.js +0 -11
  1071. package/dist/chunks/chunk.2WAGHRXT.js +0 -21
  1072. package/dist/chunks/chunk.2X5O6LYW.js +0 -230
  1073. package/dist/chunks/chunk.36QLVQIR.js +0 -25
  1074. package/dist/chunks/chunk.3PPWMQMI.js +0 -20
  1075. package/dist/chunks/chunk.43GMMZD7.js +0 -85
  1076. package/dist/chunks/chunk.44V7SGCO.js +0 -11
  1077. package/dist/chunks/chunk.45UBEJ6Z.js +0 -11
  1078. package/dist/chunks/chunk.4DI6PZQQ.js +0 -11
  1079. package/dist/chunks/chunk.4DR7MOJU.js +0 -21
  1080. package/dist/chunks/chunk.4VPWUYWJ.js +0 -24
  1081. package/dist/chunks/chunk.4VRC33YC.js +0 -11
  1082. package/dist/chunks/chunk.4WPZZJUQ.js +0 -39
  1083. package/dist/chunks/chunk.4XHZVKB7.js +0 -24
  1084. package/dist/chunks/chunk.53BVR5TX.js +0 -409
  1085. package/dist/chunks/chunk.5DCRLY64.js +0 -28
  1086. package/dist/chunks/chunk.5EFQ5VCX.js +0 -280
  1087. package/dist/chunks/chunk.5UPO7OQP.js +0 -844
  1088. package/dist/chunks/chunk.634P7HUN.js +0 -277
  1089. package/dist/chunks/chunk.65EHNS65.js +0 -443
  1090. package/dist/chunks/chunk.6ER3C6Z6.js +0 -11
  1091. package/dist/chunks/chunk.6GXJPSOM.js +0 -27
  1092. package/dist/chunks/chunk.6JWHPMOL.js +0 -43
  1093. package/dist/chunks/chunk.6OWWYTVJ.js +0 -139
  1094. package/dist/chunks/chunk.6VGRQDFC.js +0 -78
  1095. package/dist/chunks/chunk.6WTA7ZAF.js +0 -11
  1096. package/dist/chunks/chunk.72QEMLZH.js +0 -11
  1097. package/dist/chunks/chunk.7C3HYDPQ.js +0 -25
  1098. package/dist/chunks/chunk.7EQYQPQD.js +0 -11
  1099. package/dist/chunks/chunk.7M75CILM.js +0 -26
  1100. package/dist/chunks/chunk.7NSVOGKC.js +0 -21
  1101. package/dist/chunks/chunk.7SOCTBCN.js +0 -494
  1102. package/dist/chunks/chunk.7UI4UJRA.js +0 -48
  1103. package/dist/chunks/chunk.AI5MJQ4O.js +0 -89
  1104. package/dist/chunks/chunk.AKEUBIDB.js +0 -24
  1105. package/dist/chunks/chunk.AQORDWMH.js +0 -27
  1106. package/dist/chunks/chunk.B3ZWSEFK.js +0 -31
  1107. package/dist/chunks/chunk.B7EKD3N3.js +0 -21
  1108. package/dist/chunks/chunk.BADHWJPB.js +0 -230
  1109. package/dist/chunks/chunk.BEC5NEZM.js +0 -422
  1110. package/dist/chunks/chunk.BJDVG6P4.js +0 -234
  1111. package/dist/chunks/chunk.BL7C4LXY.js +0 -596
  1112. package/dist/chunks/chunk.BPHXYE6W.js +0 -101
  1113. package/dist/chunks/chunk.BSLXVKCQ.js +0 -21
  1114. package/dist/chunks/chunk.BTWZHCZS.js +0 -21
  1115. package/dist/chunks/chunk.BVCQTPOW.js +0 -11
  1116. package/dist/chunks/chunk.CERMDF55.js +0 -176
  1117. package/dist/chunks/chunk.CEZHGLKB.js +0 -21
  1118. package/dist/chunks/chunk.CGVPVXTX.js +0 -76
  1119. package/dist/chunks/chunk.CH4USRWL.js +0 -11
  1120. package/dist/chunks/chunk.CTXTVPYG.js +0 -21
  1121. package/dist/chunks/chunk.CWTU6KK6.js +0 -11
  1122. package/dist/chunks/chunk.D5KNWGIY.js +0 -123
  1123. package/dist/chunks/chunk.D6ZCHCBI.js +0 -11
  1124. package/dist/chunks/chunk.DF4KTFWJ.js +0 -11
  1125. package/dist/chunks/chunk.DKE63MFU.js +0 -74
  1126. package/dist/chunks/chunk.DKE7LW5A.js +0 -21
  1127. package/dist/chunks/chunk.DNPK2LDE.js +0 -21
  1128. package/dist/chunks/chunk.DPU646KC.js +0 -11
  1129. package/dist/chunks/chunk.DTS74WET.js +0 -451
  1130. package/dist/chunks/chunk.EG2Z7GLQ.js +0 -11
  1131. package/dist/chunks/chunk.EHYLS37I.js +0 -477
  1132. package/dist/chunks/chunk.EIZIOEEM.js +0 -29
  1133. package/dist/chunks/chunk.EMWX354J.js +0 -11
  1134. package/dist/chunks/chunk.EPU6JAZL.js +0 -11
  1135. package/dist/chunks/chunk.FLMJAQI2.js +0 -24
  1136. package/dist/chunks/chunk.FOJ3HQWW.js +0 -21
  1137. package/dist/chunks/chunk.FRPNKGK3.js +0 -291
  1138. package/dist/chunks/chunk.FWMNXIOG.js +0 -11
  1139. package/dist/chunks/chunk.G4FUI57K.js +0 -27
  1140. package/dist/chunks/chunk.G4NQGHAX.js +0 -525
  1141. package/dist/chunks/chunk.G5AFJPH4.js +0 -11
  1142. package/dist/chunks/chunk.GABUUECG.js +0 -355
  1143. package/dist/chunks/chunk.GDDHEO5F.js +0 -24
  1144. package/dist/chunks/chunk.GLBECAG6.js +0 -11
  1145. package/dist/chunks/chunk.GRLR7XO6.js +0 -11
  1146. package/dist/chunks/chunk.GXESF72G.js +0 -220
  1147. package/dist/chunks/chunk.H7FRGWX3.js +0 -21
  1148. package/dist/chunks/chunk.HBH7X5EA.js +0 -24
  1149. package/dist/chunks/chunk.HWQWRERW.js +0 -592
  1150. package/dist/chunks/chunk.HXW7ZUDI.js +0 -474
  1151. package/dist/chunks/chunk.I2UMDI6X.js +0 -58
  1152. package/dist/chunks/chunk.I5A7YFBM.js +0 -91
  1153. package/dist/chunks/chunk.I6ORPBS5.js +0 -2210
  1154. package/dist/chunks/chunk.INWDQT67.js +0 -732
  1155. package/dist/chunks/chunk.J6TMX63K.js +0 -29
  1156. package/dist/chunks/chunk.J7ZWVUK3.js +0 -609
  1157. package/dist/chunks/chunk.JAQ3LUKC.js +0 -247
  1158. package/dist/chunks/chunk.JYGKESM3.js +0 -11
  1159. package/dist/chunks/chunk.JYP3VNP6.js +0 -112
  1160. package/dist/chunks/chunk.K3XBFEUO.js +0 -24
  1161. package/dist/chunks/chunk.K65T7KTE.js +0 -21
  1162. package/dist/chunks/chunk.KCDPVE7C.js +0 -61
  1163. package/dist/chunks/chunk.KCFXCVFH.js +0 -1133
  1164. package/dist/chunks/chunk.KEEIQVSS.js +0 -43
  1165. package/dist/chunks/chunk.KGSVGF3H.js +0 -345
  1166. package/dist/chunks/chunk.KIKCQJJO.js +0 -11
  1167. package/dist/chunks/chunk.KIPQ6D4L.js +0 -25
  1168. package/dist/chunks/chunk.KOSPOK7H.js +0 -11
  1169. package/dist/chunks/chunk.LDPT7WUL.js +0 -21
  1170. package/dist/chunks/chunk.LN7XIS45.js +0 -180
  1171. package/dist/chunks/chunk.LQEFIRWO.js +0 -245
  1172. package/dist/chunks/chunk.LTNPYYBF.js +0 -93
  1173. package/dist/chunks/chunk.MI2HDCAW.js +0 -11
  1174. package/dist/chunks/chunk.MMTZYMPU.js +0 -365
  1175. package/dist/chunks/chunk.MN6NQGAD.js +0 -21
  1176. package/dist/chunks/chunk.MOTUBWF2.js +0 -180
  1177. package/dist/chunks/chunk.MPDELFPF.js +0 -264
  1178. package/dist/chunks/chunk.MSKTLXJF.js +0 -213
  1179. package/dist/chunks/chunk.MSW2HH5S.js +0 -153
  1180. package/dist/chunks/chunk.MTNC2DCF.js +0 -11
  1181. package/dist/chunks/chunk.NDGSVMU3.js +0 -28
  1182. package/dist/chunks/chunk.NMCLTBEP.js +0 -262
  1183. package/dist/chunks/chunk.NPTMWKYL.js +0 -11
  1184. package/dist/chunks/chunk.NVZODHOK.js +0 -11
  1185. package/dist/chunks/chunk.NWN7ZIMJ.js +0 -11
  1186. package/dist/chunks/chunk.O3N63INW.js +0 -11
  1187. package/dist/chunks/chunk.OBQSWLXU.js +0 -11
  1188. package/dist/chunks/chunk.OFUJJYKR.js +0 -1037
  1189. package/dist/chunks/chunk.OM5VUJHG.js +0 -67
  1190. package/dist/chunks/chunk.OSTWXCMV.js +0 -24
  1191. package/dist/chunks/chunk.OTUP32ZV.js +0 -64
  1192. package/dist/chunks/chunk.OWTIQPHV.js +0 -21
  1193. package/dist/chunks/chunk.OX7O5BJ2.js +0 -24
  1194. package/dist/chunks/chunk.OYZ6PIX6.js +0 -21
  1195. package/dist/chunks/chunk.PAS23YIR.js +0 -21
  1196. package/dist/chunks/chunk.PASAYNUD.js +0 -11
  1197. package/dist/chunks/chunk.PCYRP6QH.js +0 -25
  1198. package/dist/chunks/chunk.PGBJDV45.js +0 -581
  1199. package/dist/chunks/chunk.PK2VBJCU.js +0 -21
  1200. package/dist/chunks/chunk.PP42WHCU.js +0 -11
  1201. package/dist/chunks/chunk.PPNAWZEL.js +0 -11
  1202. package/dist/chunks/chunk.PYYFSQ5U.js +0 -11
  1203. package/dist/chunks/chunk.QCUUQQN6.js +0 -21
  1204. package/dist/chunks/chunk.QM4W4CXC.js +0 -21
  1205. package/dist/chunks/chunk.QMLAE732.js +0 -143
  1206. package/dist/chunks/chunk.QMZMNMZI.js +0 -11
  1207. package/dist/chunks/chunk.QZ4VJZEL.js +0 -11
  1208. package/dist/chunks/chunk.RBHC3HJC.js +0 -11
  1209. package/dist/chunks/chunk.RE7HWLCN.js +0 -11
  1210. package/dist/chunks/chunk.RG3WISMO.js +0 -21
  1211. package/dist/chunks/chunk.RO4MUFVF.js +0 -67
  1212. package/dist/chunks/chunk.RSAREB5O.js +0 -1208
  1213. package/dist/chunks/chunk.RSY6HFUR.js +0 -11
  1214. package/dist/chunks/chunk.SA7ZPYYQ.js +0 -145
  1215. package/dist/chunks/chunk.SCRTSRZM.js +0 -21
  1216. package/dist/chunks/chunk.SU2NURRF.js +0 -25
  1217. package/dist/chunks/chunk.SU5KHWCD.js +0 -48
  1218. package/dist/chunks/chunk.SUUAXNKF.js +0 -26
  1219. package/dist/chunks/chunk.T5U5QBTT.js +0 -24
  1220. package/dist/chunks/chunk.TFDTNSCI.js +0 -24
  1221. package/dist/chunks/chunk.TSGOHE3X.js +0 -124
  1222. package/dist/chunks/chunk.U25LAYNL.js +0 -52
  1223. package/dist/chunks/chunk.UCIVXWSO.js +0 -2300
  1224. package/dist/chunks/chunk.UDFX6O4I.js +0 -27
  1225. package/dist/chunks/chunk.UPX3KGPJ.js +0 -24
  1226. package/dist/chunks/chunk.UT66H5XF.js +0 -11
  1227. package/dist/chunks/chunk.VIK6R6ZE.js +0 -21
  1228. package/dist/chunks/chunk.VWM7D7YU.js +0 -21
  1229. package/dist/chunks/chunk.VZ6JYJJP.js +0 -252
  1230. package/dist/chunks/chunk.W37LBCXY.js +0 -11
  1231. package/dist/chunks/chunk.W3BVMTXK.js +0 -21
  1232. package/dist/chunks/chunk.W75DNY3A.js +0 -24
  1233. package/dist/chunks/chunk.WEHKC2HC.js +0 -11
  1234. package/dist/chunks/chunk.WFXPEVP3.js +0 -33
  1235. package/dist/chunks/chunk.WKPDRIUN.js +0 -720
  1236. package/dist/chunks/chunk.WL3Z3XQF.js +0 -11
  1237. package/dist/chunks/chunk.WR44OKOH.js +0 -24
  1238. package/dist/chunks/chunk.WRN2UPJR.js +0 -180
  1239. package/dist/chunks/chunk.WTTMONSY.js +0 -11
  1240. package/dist/chunks/chunk.WUJFJ7KZ.js +0 -11
  1241. package/dist/chunks/chunk.WZVTM6NW.js +0 -21
  1242. package/dist/chunks/chunk.X5CKLKTJ.js +0 -121
  1243. package/dist/chunks/chunk.XKPZXOJZ.js +0 -86
  1244. package/dist/chunks/chunk.XMASTOGU.js +0 -75
  1245. package/dist/chunks/chunk.XR75EBXL.js +0 -24
  1246. package/dist/chunks/chunk.XWDIEP3X.js +0 -11
  1247. package/dist/chunks/chunk.XZTZVISY.js +0 -91
  1248. package/dist/chunks/chunk.Y4SX7JDQ.js +0 -11
  1249. package/dist/chunks/chunk.YHRQUJW4.js +0 -11
  1250. package/dist/chunks/chunk.YIIZOJQH.js +0 -21
  1251. package/dist/chunks/chunk.YLWDV7FG.js +0 -97
  1252. package/dist/chunks/chunk.YN5Z3QIN.js +0 -11
  1253. package/dist/chunks/chunk.YOKJEL27.js +0 -993
  1254. package/dist/chunks/chunk.YRCWMNEY.js +0 -11
  1255. package/dist/chunks/chunk.YUN5GFFN.js +0 -11
  1256. package/dist/chunks/chunk.YXEY5NTD.js +0 -83
  1257. package/dist/chunks/chunk.YZEWGCYT.js +0 -11
  1258. package/dist/chunks/chunk.YZREWGWS.js +0 -272
  1259. package/dist/chunks/chunk.Z5CYAFF5.js +0 -28
  1260. package/dist/chunks/chunk.Z6PEIFFT.js +0 -11
  1261. package/dist/chunks/chunk.ZDBS2TET.js +0 -28
  1262. package/dist/chunks/chunk.ZDSHHTCZ.js +0 -11
  1263. package/dist/chunks/chunk.ZK3JSPHW.js +0 -11
  1264. package/dist/chunks/chunk.ZQYFGIV4.js +0 -11
  1265. package/dist/chunks/chunk.ZU4JWWMF.js +0 -214
  1266. package/dist/chunks/chunk.ZUGJ7LJ3.js +0 -21
  1267. package/dist/chunks/chunk.ZZQVDIXM.js +0 -345
  1268. package/dist/terra_ui_components-0.0.169-py3-none-any.whl +0 -0
  1269. package/dist/terra_ui_components-0.0.169.tar.gz +0 -0
@@ -0,0 +1,2319 @@
1
+ import {
2
+ defaultSubsetFileMimeType,
3
+ getFriendlyNameForMimeType
4
+ } from "./chunk.UU2S72KN.js";
5
+ import {
6
+ getNotebook
7
+ } from "./chunk.QCKOJOU6.js";
8
+ import {
9
+ TerraLogin
10
+ } from "./chunk.DZCWXBBG.js";
11
+ import {
12
+ TerraDialog
13
+ } from "./chunk.HZWA5KX4.js";
14
+ import {
15
+ DataSubsetterController
16
+ } from "./chunk.FQFJCEW7.js";
17
+ import {
18
+ convertVariableEntryIdToGiovanniFormat
19
+ } from "./chunk.FDIMGAJI.js";
20
+ import {
21
+ data_subsetter_styles_default
22
+ } from "./chunk.QQMW6GT2.js";
23
+ import {
24
+ TerraDataAccess,
25
+ debounce,
26
+ sendDataToJupyterNotebook
27
+ } from "./chunk.3EC6LVHQ.js";
28
+ import {
29
+ TerraMenuItem
30
+ } from "./chunk.XOMYW2MV.js";
31
+ import {
32
+ TerraMenu
33
+ } from "./chunk.BSNRT7I5.js";
34
+ import {
35
+ TerraDatePicker
36
+ } from "./chunk.IRS2RRJ4.js";
37
+ import {
38
+ extractHarmonyError
39
+ } from "./chunk.ESNQNQUJ.js";
40
+ import {
41
+ AuthController
42
+ } from "./chunk.DHM36JBP.js";
43
+ import {
44
+ TerraSpatialPicker
45
+ } from "./chunk.PVJUWIFN.js";
46
+ import {
47
+ TerraInput
48
+ } from "./chunk.YRP45MK5.js";
49
+ import {
50
+ TerraDropdown
51
+ } from "./chunk.5NOFG3EP.js";
52
+ import {
53
+ TerraLoader
54
+ } from "./chunk.IOXPL76F.js";
55
+ import {
56
+ TerraButton
57
+ } from "./chunk.EDXTUU3P.js";
58
+ import {
59
+ TerraAccordion
60
+ } from "./chunk.UTZAQEKC.js";
61
+ import {
62
+ TerraIcon
63
+ } from "./chunk.TJXQEGVJ.js";
64
+ import {
65
+ getBasePath
66
+ } from "./chunk.PBC3S6IG.js";
67
+ import {
68
+ TerraAlert
69
+ } from "./chunk.P6FW46QA.js";
70
+ import {
71
+ watch
72
+ } from "./chunk.NWXJOH5T.js";
73
+ import {
74
+ TerraElement,
75
+ component_styles_default
76
+ } from "./chunk.H7RPIHW6.js";
77
+ import {
78
+ __decorateClass,
79
+ __privateAdd,
80
+ __privateGet,
81
+ __privateMethod,
82
+ __spreadProps,
83
+ __spreadValues
84
+ } from "./chunk.SHKVBVTI.js";
85
+
86
+ // src/components/data-subsetter/data-subsetter.component.ts
87
+ import { html, nothing } from "lit";
88
+ import { property, query, state } from "lit/decorators.js";
89
+ import { TaskStatus } from "@lit/task";
90
+ var _authController, _renderFooterForDialog, renderFooterForDialog_fn, _renderSizeInfo, renderSizeInfo_fn, _renderSubsetOptions, renderSubsetOptions_fn, _resetAllParameters, _renderSearchForCollection, renderSearchForCollection_fn, _renderOutputFormatSelection, renderOutputFormatSelection_fn, _renderDateRangeSelection, renderDateRangeSelection_fn, _handleDateChange, _resetDateRangeSelection, _resetFormatSelection, _getCollectionDateRange, getCollectionDateRange_fn, _handleRegionAccordionToggle, handleRegionAccordionToggle_fn, _renderSpatialSelection, renderSpatialSelection_fn, _handleSpatialChange, _resetSpatialSelection, _renderVariableSelection, renderVariableSelection_fn, _filterVariableTree, filterVariableTree_fn, _handleVariableFilterChange, handleVariableFilterChange_fn, _buildVariableTree, buildVariableTree_fn, _renderVariableTree, renderVariableTree_fn, _getAllGroupPaths, getAllGroupPaths_fn, _toggleGroupExpand, toggleGroupExpand_fn, _toggleExpandCollapseAll, toggleExpandCollapseAll_fn, _toggleVariableSelection, toggleVariableSelection_fn, _markFieldTouched, markFieldTouched_fn, _resetVariableSelection, _renderJobStatus, renderJobStatus_fn, _renderSelectedParams, renderSelectedParams_fn, _cancelJob, cancelJob_fn, _getData, getData_fn, _touchAllFields, touchAllFields_fn, _numberOfFilesFoundEstimate, numberOfFilesFoundEstimate_fn, _getDocumentationLinks, getDocumentationLinks_fn, _getDataLinks, getDataLinks_fn, _hasAtLeastOneSubsetOption, hasAtLeastOneSubsetOption_fn, _hasSpatialSubset, hasSpatialSubset_fn, _renderJobMessage, renderJobMessage_fn, _getJobMessageText, getJobMessageText_fn, _estimateJobSize, estimateJobSize_fn, _refineParameters, refineParameters_fn, _backToSubsetOptions, backToSubsetOptions_fn, _viewRunningJob, viewRunningJob_fn, _handleDownloadSelect, handleDownloadSelect_fn, _downloadLinksAsTxt, downloadLinksAsTxt_fn, _downloadPythonScript, downloadPythonScript_fn, _downloadEarthdataDownload, downloadEarthdataDownload_fn, _handleJupyterNotebookClick, handleJupyterNotebookClick_fn, _renderAvailableTemporalRangeSection, renderAvailableTemporalRangeSection_fn, _renderAvailableSpatialRangeSection, renderAvailableSpatialRangeSection_fn, _renderDataAccessModeSelection, renderDataAccessModeSelection_fn, _isGiovanniFormat, isGiovanniFormat_fn, _getGiovanniValidationError, getGiovanniValidationError_fn;
91
+ var TerraDataSubsetter = class extends TerraElement {
92
+ constructor() {
93
+ super(...arguments);
94
+ __privateAdd(this, _renderFooterForDialog);
95
+ __privateAdd(this, _renderSizeInfo);
96
+ __privateAdd(this, _renderSubsetOptions);
97
+ __privateAdd(this, _renderSearchForCollection);
98
+ __privateAdd(this, _renderOutputFormatSelection);
99
+ __privateAdd(this, _renderDateRangeSelection);
100
+ __privateAdd(this, _getCollectionDateRange);
101
+ __privateAdd(this, _handleRegionAccordionToggle);
102
+ __privateAdd(this, _renderSpatialSelection);
103
+ __privateAdd(this, _renderVariableSelection);
104
+ __privateAdd(this, _filterVariableTree);
105
+ __privateAdd(this, _handleVariableFilterChange);
106
+ __privateAdd(this, _buildVariableTree);
107
+ __privateAdd(this, _renderVariableTree);
108
+ __privateAdd(this, _getAllGroupPaths);
109
+ __privateAdd(this, _toggleGroupExpand);
110
+ __privateAdd(this, _toggleExpandCollapseAll);
111
+ __privateAdd(this, _toggleVariableSelection);
112
+ __privateAdd(this, _markFieldTouched);
113
+ __privateAdd(this, _renderJobStatus);
114
+ __privateAdd(this, _renderSelectedParams);
115
+ __privateAdd(this, _cancelJob);
116
+ __privateAdd(this, _getData);
117
+ __privateAdd(this, _touchAllFields);
118
+ __privateAdd(this, _numberOfFilesFoundEstimate);
119
+ __privateAdd(this, _getDocumentationLinks);
120
+ __privateAdd(this, _getDataLinks);
121
+ __privateAdd(this, _hasAtLeastOneSubsetOption);
122
+ __privateAdd(this, _hasSpatialSubset);
123
+ __privateAdd(this, _renderJobMessage);
124
+ __privateAdd(this, _getJobMessageText);
125
+ __privateAdd(this, _estimateJobSize);
126
+ __privateAdd(this, _refineParameters);
127
+ __privateAdd(this, _backToSubsetOptions);
128
+ __privateAdd(this, _viewRunningJob);
129
+ __privateAdd(this, _handleDownloadSelect);
130
+ __privateAdd(this, _downloadLinksAsTxt);
131
+ __privateAdd(this, _downloadPythonScript);
132
+ __privateAdd(this, _downloadEarthdataDownload);
133
+ __privateAdd(this, _handleJupyterNotebookClick);
134
+ __privateAdd(this, _renderAvailableTemporalRangeSection);
135
+ __privateAdd(this, _renderAvailableSpatialRangeSection);
136
+ __privateAdd(this, _renderDataAccessModeSelection);
137
+ __privateAdd(this, _isGiovanniFormat);
138
+ __privateAdd(this, _getGiovanniValidationError);
139
+ this.showCollectionSearch = true;
140
+ this.showHistoryPanel = true;
141
+ this.isHistoryView = false;
142
+ this.selectedVariables = [];
143
+ this.expandedVariableGroups = /* @__PURE__ */ new Set();
144
+ this.variableFilterText = "";
145
+ this.touchedFields = /* @__PURE__ */ new Set();
146
+ this.spatialSelection = null;
147
+ this.selectedDateRange = {
148
+ startDate: null,
149
+ endDate: null
150
+ };
151
+ this.selectedFormat = defaultSubsetFileMimeType;
152
+ this.cancelingGetData = false;
153
+ this.selectedTab = "web-links";
154
+ this.refineParameters = false;
155
+ this.collectionSearchType = "all";
156
+ this.collectionSearchLoading = false;
157
+ this.collectionLoading = false;
158
+ this.collectionAccordionOpen = true;
159
+ this.dataAccessMode = "original";
160
+ this.controller = new DataSubsetterController(this);
161
+ __privateAdd(this, _authController, new AuthController(this));
162
+ __privateAdd(this, _resetAllParameters, () => {
163
+ this.selectedVariables = [];
164
+ if (__privateMethod(this, _hasSpatialSubset, hasSpatialSubset_fn).call(this)) {
165
+ __privateGet(this, _resetSpatialSelection).call(this);
166
+ }
167
+ this.selectedDateRange = {
168
+ startDate: null,
169
+ endDate: null
170
+ };
171
+ this.touchedFields = /* @__PURE__ */ new Set();
172
+ this.validationError = void 0;
173
+ this.expandedVariableGroups = /* @__PURE__ */ new Set();
174
+ this.requestUpdate();
175
+ });
176
+ __privateAdd(this, _handleDateChange, (e) => {
177
+ __privateMethod(this, _markFieldTouched, markFieldTouched_fn).call(this, "date");
178
+ this.selectedDateRange = __spreadProps(__spreadValues({}, this.selectedDateRange), {
179
+ startDate: e.detail.startDate,
180
+ endDate: e.detail.endDate
181
+ });
182
+ });
183
+ __privateAdd(this, _resetDateRangeSelection, () => {
184
+ this.selectedDateRange = { startDate: null, endDate: null };
185
+ });
186
+ __privateAdd(this, _resetFormatSelection, () => {
187
+ var _a, _b;
188
+ if ((_b = (_a = this.collectionWithServices) == null ? void 0 : _a.outputFormats) == null ? void 0 : _b.length) {
189
+ const netcdfFormat = this.collectionWithServices.outputFormats.find(
190
+ (format) => format === "application/x-netcdf4" || format === "application/netcdf"
191
+ );
192
+ this.selectedFormat = netcdfFormat || this.collectionWithServices.outputFormats[0];
193
+ } else {
194
+ this.selectedFormat = defaultSubsetFileMimeType;
195
+ }
196
+ });
197
+ __privateAdd(this, _handleSpatialChange, (e) => {
198
+ __privateMethod(this, _markFieldTouched, markFieldTouched_fn).call(this, "spatial");
199
+ const round2 = (n) => parseFloat(Number(n).toFixed(2));
200
+ if (e.detail.type === "bbox" /* BBOX */) {
201
+ this.spatialSelection = {
202
+ e: round2(e.detail.bounds.getNorthEast().lng),
203
+ n: round2(e.detail.bounds.getNorthEast().lat),
204
+ w: round2(e.detail.bounds.getSouthWest().lng),
205
+ s: round2(e.detail.bounds.getSouthWest().lat)
206
+ };
207
+ } else if (e.detail.type === "point" /* POINT */) {
208
+ this.spatialSelection = e.detail.latLng;
209
+ } else {
210
+ this.spatialSelection = null;
211
+ }
212
+ });
213
+ __privateAdd(this, _resetSpatialSelection, () => {
214
+ var _a, _b, _c, _d, _e;
215
+ const spatial_constraints = (_e = (_d = (_c = (_b = (_a = this.collectionWithServices) == null ? void 0 : _a.collection) == null ? void 0 : _b.SpatialExtent) == null ? void 0 : _c.HorizontalSpatialDomain) == null ? void 0 : _d.Geometry) == null ? void 0 : _e.BoundingRectangles;
216
+ if (!spatial_constraints) {
217
+ this.spatialSelection = null;
218
+ return;
219
+ }
220
+ const normalized = Array.isArray(spatial_constraints) ? spatial_constraints : [spatial_constraints];
221
+ const rect = normalized[0];
222
+ this.spatialSelection = {
223
+ w: Number(rect.WestBoundingCoordinate),
224
+ s: Number(rect.SouthBoundingCoordinate),
225
+ e: Number(rect.EastBoundingCoordinate),
226
+ n: Number(rect.NorthBoundingCoordinate)
227
+ };
228
+ __privateMethod(this, _markFieldTouched, markFieldTouched_fn).call(this, "spatial");
229
+ });
230
+ __privateAdd(this, _resetVariableSelection, () => {
231
+ this.selectedVariables = [];
232
+ });
233
+ }
234
+ jobIdChanged() {
235
+ if (this.jobId) {
236
+ this.controller.fetchJobByID(this.jobId);
237
+ this.dataAccessMode = "subset";
238
+ }
239
+ }
240
+ shortNameAndVersionChanged() {
241
+ if (this.shortName && this.version) {
242
+ this.collectionEntryId = `${this.shortName}_${this.version}`;
243
+ }
244
+ }
245
+ collectionEntryIdChanged() {
246
+ if (this.collectionEntryId) {
247
+ this.showCollectionSearch = false;
248
+ } else {
249
+ this.showCollectionSearch = true;
250
+ }
251
+ }
252
+ firstUpdated() {
253
+ if (this.collectionEntryId) {
254
+ this.showCollectionSearch = false;
255
+ }
256
+ if (this.jobId) {
257
+ this.controller.fetchJobByID(this.jobId);
258
+ this.dataAccessMode = "subset";
259
+ }
260
+ this.renderHistoryPanel();
261
+ }
262
+ updated(changedProps) {
263
+ var _a, _b, _c, _d;
264
+ super.updated(changedProps);
265
+ const taskStatus = (_b = (_a = this.controller) == null ? void 0 : _a.jobStatusTask) == null ? void 0 : _b.status;
266
+ if (taskStatus === TaskStatus.ERROR) {
267
+ const taskError = (_d = (_c = this.controller) == null ? void 0 : _c.jobStatusTask) == null ? void 0 : _d.error;
268
+ if (taskError) {
269
+ const errorDetails = extractHarmonyError(taskError);
270
+ if (errorDetails.isCancellation) {
271
+ return;
272
+ }
273
+ if (this.controller.currentJob) {
274
+ this.controller.currentJob = __spreadProps(__spreadValues({}, this.controller.currentJob), {
275
+ status: "failed" /* FAILED */,
276
+ message: errorDetails.message || "Failed to create subset job"
277
+ });
278
+ }
279
+ }
280
+ }
281
+ }
282
+ collectionChanged() {
283
+ var _a;
284
+ const { startDate, endDate } = __privateMethod(this, _getCollectionDateRange, getCollectionDateRange_fn).call(this);
285
+ this.selectedDateRange = { startDate, endDate };
286
+ const formats = Array.from(
287
+ new Set(((_a = this.collectionWithServices) == null ? void 0 : _a.outputFormats) || [])
288
+ );
289
+ const hasNetcdf4 = formats.includes("application/x-netcdf4");
290
+ const hasNetcdfClassic = formats.includes("application/netcdf");
291
+ let displayFormats = formats;
292
+ if (hasNetcdf4 && hasNetcdfClassic) {
293
+ displayFormats = formats.filter((f) => f !== "application/netcdf");
294
+ }
295
+ if (displayFormats.length === 1) {
296
+ this.selectedFormat = displayFormats[0];
297
+ } else {
298
+ this.selectedFormat = displayFormats.find((f) => f === "application/x-netcdf4") || displayFormats[0];
299
+ }
300
+ this.collectionLoading = false;
301
+ this.collectionAccordionOpen = false;
302
+ }
303
+ granuleDatesChanged() {
304
+ const newRange = __spreadValues(__spreadValues({}, this.granuleMinDate && { startDate: this.granuleMinDate }), this.granuleMaxDate && { endDate: this.granuleMaxDate });
305
+ if (Object.keys(newRange).length > 0) {
306
+ this.selectedDateRange = __spreadValues(__spreadValues({}, this.selectedDateRange), newRange);
307
+ }
308
+ }
309
+ selectedFormatChanged() {
310
+ if (__privateMethod(this, _isGiovanniFormat, isGiovanniFormat_fn).call(this) && this.selectedVariables.length > 1) {
311
+ this.selectedVariables = [this.selectedVariables[0]];
312
+ }
313
+ }
314
+ showDialog() {
315
+ var _a;
316
+ (_a = this.dialogElement) == null ? void 0 : _a.show();
317
+ }
318
+ render() {
319
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s;
320
+ const showJobStatus = this.controller.currentJob && !this.refineParameters;
321
+ const showMinimizeButton = showJobStatus && !!this.dialog;
322
+ const title = (_c = (_b = (_a = this.collectionWithServices) == null ? void 0 : _a.collection) == null ? void 0 : _b.EntryTitle) != null ? _c : "Download Data";
323
+ if (!this.collectionWithServices) {
324
+ if (this.controller.fetchCollectionTask.status === TaskStatus.ERROR) {
325
+ return html`
326
+ <terra-alert open variant="danger" appearance="white">
327
+ Failed to find the requested collection.
328
+ </terra-alert>
329
+ `;
330
+ }
331
+ }
332
+ const content = html`
333
+ <div class="container">
334
+ ${!this.dialog ? html`
335
+ <div class="header">
336
+ <h1>
337
+ <svg
338
+ class="download-icon"
339
+ viewBox="0 0 24 24"
340
+ fill="currentColor"
341
+ >
342
+ <path
343
+ d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z"
344
+ />
345
+ </svg>
346
+ ${title}
347
+ </h1>
348
+
349
+ ${showMinimizeButton ? html`<button
350
+ class="minimize-btn"
351
+ @click=${() => this.minimizeDialog()}
352
+ >
353
+ -
354
+ </button>` : nothing}
355
+ </div>
356
+ ` : nothing}
357
+ ${!this.isHistoryView && ((_e = (_d = this.collectionWithServices) == null ? void 0 : _d.services) == null ? void 0 : _e.length) ? html`
358
+ <div class="section">
359
+ ${__privateMethod(this, _renderDataAccessModeSelection, renderDataAccessModeSelection_fn).call(this)}
360
+ </div>
361
+ ` : nothing}
362
+ ${this.dataAccessMode === "original" ? html`
363
+ <div class="section">
364
+ <terra-data-access
365
+ short-name=${(_h = this.shortName) != null ? _h : (_g = (_f = this.collectionWithServices) == null ? void 0 : _f.collection) == null ? void 0 : _g.ShortName}
366
+ version=${(_k = this.version) != null ? _k : (_j = (_i = this.collectionWithServices) == null ? void 0 : _i.collection) == null ? void 0 : _j.Version}
367
+ ?footer-slot=${!!this.dialog}
368
+ >
369
+ ${this.dialog ? html`
370
+ <div
371
+ slot="footer"
372
+ style="margin-top: 15px;"
373
+ >
374
+ <slot
375
+ name="data-access-footer"
376
+ ></slot>
377
+ </div>
378
+ ` : nothing}
379
+ </terra-data-access>
380
+ </div>
381
+ ` : showJobStatus ? __privateMethod(this, _renderJobStatus, renderJobStatus_fn).call(this) : __privateMethod(this, _renderSubsetOptions, renderSubsetOptions_fn).call(this)}
382
+ </div>
383
+ `;
384
+ if (this.dialog) {
385
+ return html`
386
+ <terra-dialog id=${this.dialog} style="--title-font-size: 16px;">
387
+ <span
388
+ slot="label"
389
+ style="display: flex; align-items: center; gap: 8px; color: #0066cc; font-weight: 600;"
390
+ >
391
+ <svg
392
+ class="download-icon"
393
+ viewBox="0 0 24 24"
394
+ fill="currentColor"
395
+ style="width: 16px; height: 16px; display: inline-block; vertical-align: middle; flex-shrink: 0;"
396
+ >
397
+ <path d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z" />
398
+ </svg>
399
+ ${title}
400
+ </span>
401
+ ${showMinimizeButton ? html`
402
+ <button
403
+ slot="header-actions"
404
+ class="minimize-btn"
405
+ @click=${() => {
406
+ var _a2;
407
+ return (_a2 = this.dialogElement) == null ? void 0 : _a2.hide();
408
+ }}
409
+ aria-label="Minimize"
410
+ >
411
+ -
412
+ </button>
413
+ ` : nothing}
414
+ ${content} ${__privateMethod(this, _renderFooterForDialog, renderFooterForDialog_fn).call(this)}
415
+ </terra-dialog>
416
+ `;
417
+ }
418
+ return html`
419
+ <div class="container">
420
+ <div class="header">
421
+ <h1>
422
+ <svg
423
+ class="download-icon"
424
+ viewBox="0 0 24 24"
425
+ fill="currentColor"
426
+ >
427
+ <path d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z" />
428
+ </svg>
429
+ ${title}
430
+ </h1>
431
+
432
+ ${showMinimizeButton ? html`<button
433
+ class="minimize-btn"
434
+ @click=${() => this.minimizeDialog()}
435
+ >
436
+ -
437
+ </button>` : nothing}
438
+ </div>
439
+ ${!this.isHistoryView && ((_m = (_l = this.collectionWithServices) == null ? void 0 : _l.services) == null ? void 0 : _m.length) ? html`
440
+ <div class="section">
441
+ ${__privateMethod(this, _renderDataAccessModeSelection, renderDataAccessModeSelection_fn).call(this)}
442
+ </div>
443
+ ` : nothing}
444
+ ${this.dataAccessMode === "original" ? html`
445
+ <div class="section">
446
+ <terra-data-access
447
+ short-name=${(_p = this.shortName) != null ? _p : (_o = (_n = this.collectionWithServices) == null ? void 0 : _n.collection) == null ? void 0 : _o.ShortName}
448
+ version=${(_s = this.version) != null ? _s : (_r = (_q = this.collectionWithServices) == null ? void 0 : _q.collection) == null ? void 0 : _r.Version}
449
+ ?footer-slot=${!!this.dialog}
450
+ >
451
+ ${this.dialog ? html`
452
+ <div
453
+ slot="footer"
454
+ style="margin-top: 15px;"
455
+ >
456
+ <slot
457
+ name="data-access-footer"
458
+ ></slot>
459
+ </div>
460
+ ` : nothing}
461
+ </terra-data-access>
462
+ </div>
463
+ ` : showJobStatus ? __privateMethod(this, _renderJobStatus, renderJobStatus_fn).call(this) : __privateMethod(this, _renderSubsetOptions, renderSubsetOptions_fn).call(this)}
464
+ </div>
465
+ `;
466
+ }
467
+ minimizeDialog() {
468
+ var _a;
469
+ (_a = this.closest("terra-dialog")) == null ? void 0 : _a.hide();
470
+ }
471
+ handleCollectionSearch(searchTerm) {
472
+ this.collectionSearchQuery = searchTerm;
473
+ }
474
+ isLatLng(value) {
475
+ return value && typeof value.lat === "number" && typeof value.lng === "number";
476
+ }
477
+ isLatLngBounds(value) {
478
+ return value && typeof value.getSouthWest === "function" && typeof value.getNorthEast === "function";
479
+ }
480
+ renderHistoryPanel() {
481
+ const existingHistoryPanel = document.querySelector(
482
+ "terra-data-subsetter-history"
483
+ );
484
+ if (!existingHistoryPanel && this.bearerToken) {
485
+ const historyPanel = document.createElement(
486
+ "terra-data-subsetter-history"
487
+ );
488
+ if (this.bearerToken) {
489
+ historyPanel.setAttribute("bearer-token", this.bearerToken);
490
+ }
491
+ if (this.environment) {
492
+ historyPanel.setAttribute("environment", this.environment);
493
+ }
494
+ document.body.appendChild(historyPanel);
495
+ }
496
+ }
497
+ };
498
+ _authController = new WeakMap();
499
+ _renderFooterForDialog = new WeakSet();
500
+ renderFooterForDialog_fn = function() {
501
+ const showJobStatus = this.controller.currentJob && !this.refineParameters;
502
+ if (showJobStatus && this.controller.currentJob) {
503
+ return html`
504
+ <div slot="footer" class="footer">
505
+ ${this.controller.currentJob.status === "successful" /* SUCCESSFUL */ || this.controller.currentJob.status === "complete_with_errors" /* COMPLETE_WITH_ERRORS */ ? html`
506
+ <div
507
+ style="display: flex; align-items: center; gap: 8px;"
508
+ >
509
+ <terra-dropdown
510
+ @terra-select=${__privateMethod(this, _handleDownloadSelect, handleDownloadSelect_fn)}
511
+ >
512
+ <terra-button slot="trigger" caret>
513
+ Download Options
514
+ </terra-button>
515
+ <terra-menu>
516
+ <terra-menu-item value="file-list">
517
+ <svg
518
+ slot="prefix"
519
+ viewBox="0 0 24 24"
520
+ width="16"
521
+ height="16"
522
+ style="width: 16px; height: 16px;"
523
+ >
524
+ <path
525
+ fill="currentColor"
526
+ d="M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6zm2 16H8v-2h8v2zm0-4H8v-2h8v2zm-3-5V3.5L18.5 9H13z"
527
+ />
528
+ </svg>
529
+ File List
530
+ </terra-menu-item>
531
+ <terra-menu-item value="python-script">
532
+ <svg
533
+ slot="prefix"
534
+ viewBox="0 0 128 128"
535
+ width="16"
536
+ height="16"
537
+ style="width: 16px; height: 16px;"
538
+ >
539
+ <path
540
+ fill="currentColor"
541
+ d="M49.33 62h29.159C86.606 62 93 55.132 93 46.981V19.183c0-7.912-6.632-13.856-14.555-15.176-5.014-.835-10.195-1.215-15.187-1.191-4.99.023-9.612.448-13.805 1.191C37.098 6.188 35 10.758 35 19.183V30h29v4H23.776c-8.484 0-15.914 5.108-18.237 14.811-2.681 11.12-2.8 17.919 0 29.53C7.614 86.983 12.569 93 21.054 93H31V79.952C31 70.315 39.428 62 49.33 62zm-1.838-39.11c-3.026 0-5.478-2.479-5.478-5.545 0-3.079 2.451-5.581 5.478-5.581 3.015 0 5.479 2.502 5.479 5.581-.001 3.066-2.465 5.545-5.479 5.545zm74.789 25.921C120.183 40.363 116.178 34 107.682 34H97v12.981C97 57.031 88.206 65 78.489 65H49.33C41.342 65 35 72.326 35 80.326v27.8c0 7.91 6.745 12.564 14.462 14.834 9.242 2.717 17.994 3.208 29.051 0C85.862 120.831 93 116.549 93 108.126V97H64v-4h43.682c8.484 0 11.647-5.776 14.599-14.66 3.047-9.145 2.916-17.799 0-29.529zm-41.955 55.606c3.027 0 5.479 2.479 5.479 5.547 0 3.076-2.451 5.579-5.479 5.579-3.015 0-5.478-2.502-5.478-5.579 0-3.068 2.463-5.547 5.478-5.547z"
542
+ ></path>
543
+ </svg>
544
+ Python Script
545
+ </terra-menu-item>
546
+ <terra-menu-item value="earthdata-download">
547
+ <svg
548
+ slot="prefix"
549
+ viewBox="0 0 64 64"
550
+ fill="none"
551
+ width="16"
552
+ height="16"
553
+ style="width: 16px; height: 16px;"
554
+ >
555
+ <circle
556
+ cx="32"
557
+ cy="32"
558
+ r="28"
559
+ fill="currentColor"
560
+ />
561
+ <path
562
+ d="M32 14v26M32 40l-9-9M32 40l9-9"
563
+ stroke="#fff"
564
+ stroke-width="4"
565
+ stroke-linecap="round"
566
+ stroke-linejoin="round"
567
+ fill="none"
568
+ />
569
+ </svg>
570
+ Earthdata Download
571
+ </terra-menu-item>
572
+ </terra-menu>
573
+ </terra-dropdown>
574
+
575
+ <!--
576
+ <terra-button
577
+ outline
578
+ @click=${() => __privateMethod(this, _handleJupyterNotebookClick, handleJupyterNotebookClick_fn).call(this)}
579
+ >
580
+ <terra-icon
581
+ name="outline-code-bracket"
582
+ library="heroicons"
583
+ font-size="1.5em"
584
+ style="margin-right: 5px;"
585
+ ></terra-icon>
586
+ Open in Jupyter Notebook
587
+ </terra-button>
588
+ -->
589
+ </div>
590
+ ` : nothing}
591
+ ${this.controller.currentJob.status === "running" ? html`<button
592
+ class="btn btn-success"
593
+ @click=${__privateMethod(this, _cancelJob, cancelJob_fn)}
594
+ ?disabled=${this.cancelingGetData}
595
+ >
596
+ ${this.cancelingGetData ? "Canceling..." : "Cancel request"}
597
+ </button>` : nothing}
598
+
599
+ <div class="job-info">
600
+ Job ID:
601
+ <span class="job-id">
602
+ ${this.bearerToken ? html`<a
603
+ href="https://harmony.earthdata.nasa.gov/jobs/${this.controller.currentJob.jobID}"
604
+ target="_blank"
605
+ >${this.controller.currentJob.jobID}</a
606
+ >` : this.controller.currentJob.jobID}
607
+ </span>
608
+ <span class="info-icon">?</span>
609
+ </div>
610
+ </div>
611
+ `;
612
+ } else if (this.dataAccessMode === "subset") {
613
+ return html`
614
+ <div slot="footer" class="footer">
615
+ <button class="btn btn-secondary" @click=${__privateGet(this, _resetAllParameters)}>Reset All</button>
616
+ <div>
617
+ <button class="btn btn-primary" @click=${__privateMethod(this, _getData, getData_fn)}>
618
+ Get Data
619
+ </button>
620
+ ${this.jobId ? html`
621
+ <terra-button
622
+ variant="default"
623
+ @click=${__privateMethod(this, _viewRunningJob, viewRunningJob_fn)}
624
+ >
625
+ View Running Job
626
+ </terra-button>
627
+ ` : nothing}
628
+ </div>
629
+ </div>
630
+ </div>
631
+ </div>
632
+ `;
633
+ }
634
+ return nothing;
635
+ };
636
+ _renderSizeInfo = new WeakSet();
637
+ renderSizeInfo_fn = function(estimates) {
638
+ if (!__privateGet(this, _authController).state.isLoading && !__privateGet(this, _authController).state.user) {
639
+ return html`
640
+ <div class="size-info warning">
641
+ <terra-login>
642
+ <h2 slot="logged-out">Limited access as a guest.</h2>
643
+
644
+ <p slot="logged-out">
645
+ Your results will be capped at 10 links. Log in for full
646
+ access to all data.
647
+ </p>
648
+ </terra-login>
649
+ </div>
650
+ `;
651
+ }
652
+ return html`<div
653
+ class="size-info ${estimates.links >= 150 ? "warning" : "neutral"}"
654
+ >
655
+ <h2>Estimated size of results</h2>
656
+ <div class="size-stats">
657
+ ${estimates.days.toLocaleString()} days,
658
+ ${estimates.links.toLocaleString()} links
659
+ </div>
660
+ ${estimates.links >= 150 ? html`<div class="size-warning">
661
+ You are about to retrieve ${estimates.links.toLocaleString()}
662
+ file links from the archive. You may
663
+ <strong>speed up the request</strong> by limiting the scope of
664
+ your search.
665
+ </div>` : nothing}
666
+ </div>`;
667
+ };
668
+ _renderSubsetOptions = new WeakSet();
669
+ renderSubsetOptions_fn = function() {
670
+ var _a, _b, _c, _d, _e, _f, _g, _h;
671
+ const estimates = __privateMethod(this, _estimateJobSize, estimateJobSize_fn).call(this);
672
+ const hasSubsetOption = __privateMethod(this, _hasAtLeastOneSubsetOption, hasAtLeastOneSubsetOption_fn).call(this);
673
+ const collection = (_a = this.collectionWithServices) == null ? void 0 : _a.collection;
674
+ const temporalExtents = collection == null ? void 0 : collection.TemporalExtents;
675
+ const spatialExtent = collection == null ? void 0 : collection.SpatialExtent;
676
+ const showTemporalSection = temporalExtents && temporalExtents.length;
677
+ const showSpatialSection = spatialExtent && ((_c = (_b = spatialExtent.HorizontalSpatialDomain) == null ? void 0 : _b.Geometry) == null ? void 0 : _c.BoundingRectangles);
678
+ return html`
679
+ ${this.dataAccessMode === "original" ? nothing : hasSubsetOption ? html`
680
+ ${hasSubsetOption && estimates ? __privateMethod(this, _renderSizeInfo, renderSizeInfo_fn).call(this, estimates) : nothing}
681
+ ${this.showCollectionSearch ? html`
682
+ <div class="section">
683
+ <h2 class="section-title">
684
+ Select Data Collection
685
+ </h2>
686
+
687
+ ${__privateMethod(this, _renderSearchForCollection, renderSearchForCollection_fn).call(this)}
688
+ </div>
689
+ ` : nothing}
690
+ ${((_e = (_d = this.collectionWithServices) == null ? void 0 : _d.outputFormats) == null ? void 0 : _e.length) && hasSubsetOption ? html`
691
+ <div class="section">
692
+ <h2 class="section-title">Output Format</h2>
693
+
694
+ ${__privateMethod(this, _renderOutputFormatSelection, renderOutputFormatSelection_fn).call(this)}
695
+ </div>
696
+ ` : nothing}
697
+ <div class="section">
698
+ <h2 class="section-title">Subset Options</h2>
699
+ <p style="color: #666; margin-bottom: 16px;">
700
+ Generate file links that support spatial subsetting,
701
+ date/time range selection, and variable selection.
702
+ </p>
703
+
704
+ ${((_f = this.collectionWithServices) == null ? void 0 : _f.temporalSubset) ? __privateMethod(this, _renderDateRangeSelection, renderDateRangeSelection_fn).call(this) : nothing}
705
+ ${__privateMethod(this, _hasSpatialSubset, hasSpatialSubset_fn).call(this) ? __privateMethod(this, _renderSpatialSelection, renderSpatialSelection_fn).call(this) : nothing}
706
+ ${((_g = this.collectionWithServices) == null ? void 0 : _g.variableSubset) ? __privateMethod(this, _renderVariableSelection, renderVariableSelection_fn).call(this) : nothing}
707
+ </div>
708
+ ` : html`
709
+ ${showTemporalSection && !((_h = this.collectionWithServices) == null ? void 0 : _h.temporalSubset) ? __privateMethod(this, _renderAvailableTemporalRangeSection, renderAvailableTemporalRangeSection_fn).call(this) : nothing}
710
+ ${showSpatialSection && !__privateMethod(this, _hasSpatialSubset, hasSpatialSubset_fn).call(this) ? __privateMethod(this, _renderAvailableSpatialRangeSection, renderAvailableSpatialRangeSection_fn).call(this) : nothing}
711
+ `}
712
+ ${!hasSubsetOption && estimates ? html`
713
+ <div
714
+ class="neutral-info"
715
+ style="margin-top: 24px; padding: 16px 20px; border-radius: 6px; background: #f8f9fa; color: #555; border: 1px solid #ccc;"
716
+ >
717
+ <strong>Estimated result size:</strong><br />
718
+ Your request will return approximately
719
+ <b>${estimates.links.toLocaleString()}</b> files covering
720
+ <b>${estimates.days.toLocaleString()}</b> days.
721
+ </div>
722
+ ` : nothing}
723
+ ${this.dataAccessMode === "subset" && !this.dialog ? html`
724
+ <div class="footer">
725
+ <button class="btn btn-secondary" @click=${__privateGet(this, _resetAllParameters)}>Reset All</button>
726
+ <div>
727
+ <button
728
+ class="btn btn-primary"
729
+ @click=${__privateMethod(this, _getData, getData_fn)}
730
+ >
731
+ Get Data
732
+ </button>
733
+ ${this.jobId ? html`
734
+ <terra-button
735
+ variant="default"
736
+ @click=${__privateMethod(this, _viewRunningJob, viewRunningJob_fn)}
737
+ >
738
+ View Running Job
739
+ </terra-button>
740
+ ` : nothing}
741
+ </div>
742
+ </div>
743
+ </div>
744
+ </div>
745
+ ` : nothing}
746
+ `;
747
+ };
748
+ _resetAllParameters = new WeakMap();
749
+ _renderSearchForCollection = new WeakSet();
750
+ renderSearchForCollection_fn = function() {
751
+ var _a, _b;
752
+ let placeholder = "Search all types of resources (e.g. rainfall, GPM, hurricanes, etc.)";
753
+ if (this.collectionSearchType === "collection") {
754
+ placeholder = "Search collections (e.g. AQUA, GPM_3IMERGH, etc.)";
755
+ }
756
+ if (this.collectionSearchType === "variable") {
757
+ placeholder = "Search variables (e.g. rainfall, hurricanes, etc.)";
758
+ }
759
+ return html`
760
+ <terra-accordion .open=${this.collectionAccordionOpen}>
761
+ <div slot="summary">
762
+ <span class="accordion-title">Collection:</span>
763
+ </div>
764
+
765
+ <div
766
+ slot="summary-right"
767
+ style="display: flex; align-items: center; gap: 10px"
768
+ >
769
+ ${this.collectionEntryId ? html` <span
770
+ class="accordion-value"
771
+ id="selected-collection-display"
772
+ >${this.collectionEntryId}</span
773
+ >
774
+
775
+ <button
776
+ class="reset-btn"
777
+ @click=${() => this.collectionEntryId = void 0}
778
+ >
779
+ Reset
780
+ </button>` : nothing}
781
+ </div>
782
+
783
+ <div class="search-tabs-mini">
784
+ <button
785
+ class="search-tab-mini ${this.collectionSearchType === "all" ? "active" : ""}"
786
+ @click=${() => this.collectionSearchType = "all"}
787
+ >
788
+ All
789
+ </button>
790
+ <button
791
+ class="search-tab-mini ${this.collectionSearchType === "collection" ? "active" : ""}"
792
+ @click=${() => this.collectionSearchType = "collection"}
793
+ >
794
+ Collections
795
+ </button>
796
+ <button
797
+ class="search-tab-mini ${this.collectionSearchType === "variable" ? "active" : ""}"
798
+ @click=${() => this.collectionSearchType = "variable"}
799
+ >
800
+ Variables
801
+ </button>
802
+ </div>
803
+
804
+ <div class="search-container-mini">
805
+ <input
806
+ type="text"
807
+ class="search-input-mini"
808
+ id="search-input"
809
+ placeholder=${placeholder}
810
+ @input="${(e) => this.handleCollectionSearch(
811
+ e.target.value
812
+ )}"
813
+ />
814
+
815
+ <button class="search-button-mini">
816
+ <svg
817
+ class="search-icon-mini"
818
+ viewBox="0 0 24 24"
819
+ fill="currentColor"
820
+ >
821
+ <path
822
+ d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"
823
+ />
824
+ </svg>
825
+ Search
826
+ </button>
827
+ </div>
828
+
829
+ <!-- TODO: it may be nice to have a quick search, perhaps by recent trends?
830
+ <div class="quick-links-mini">
831
+ <a href="#" class="quick-link-mini" onclick="quickSearch('GPM')"
832
+ >GPM Precipitation</a
833
+ >
834
+ <a href="#" class="quick-link-mini" onclick="quickSearch('MODIS')"
835
+ >MODIS Data</a
836
+ >
837
+ <a
838
+ href="#"
839
+ class="quick-link-mini"
840
+ onclick="quickSearch('Landsat')"
841
+ >Landsat Imagery</a
842
+ >
843
+ <a href="#" class="quick-link-mini" onclick="quickSearch('AIRS')"
844
+ >Atmospheric Data</a
845
+ >
846
+ </div>
847
+ -->
848
+
849
+ <div id="search-results-section" class="search-results-section">
850
+ ${this.collectionSearchLoading ? html`
851
+ <div id="loading-mini" class="loading-mini">
852
+ <div class="spinner-mini"></div>
853
+ <div>Searching NASA CMR...</div>
854
+ </div>
855
+ ` : ((_a = this.collectionSearchResults) == null ? void 0 : _a.length) ? html` <div
856
+ id="results-container-mini"
857
+ class="results-container-mini"
858
+ >
859
+ ${(_b = this.collectionSearchResults) == null ? void 0 : _b.map(
860
+ (item) => html`
861
+ <div
862
+ class="result-item-mini"
863
+ @click=${() => {
864
+ this.collectionEntryId = item.collectionEntryId;
865
+ this.collectionAccordionOpen = false;
866
+ this.collectionLoading = true;
867
+ if (item.type === "variable") {
868
+ this.selectedVariables = [
869
+ {
870
+ name: item.entryId,
871
+ href: "",
872
+ conceptId: item.conceptId
873
+ }
874
+ ];
875
+ }
876
+ this.requestUpdate();
877
+ }}
878
+ style="cursor: pointer;"
879
+ >
880
+ <div class="result-title-mini">
881
+ ${item.title}
882
+ </div>
883
+ <div class="result-id-mini">
884
+ ${item.entryId}
885
+ </div>
886
+ <div class="result-description-mini">
887
+ ${item.summary || item.title}
888
+ </div>
889
+ <div class="result-meta-mini">
890
+ <span>📅 2000-02-24 - ongoing</span>
891
+ <span>🌍 Global</span>
892
+ <span>🏢 ${item.provider}</span>
893
+ ${item.type === "variable" ? html` <span
894
+ >📊
895
+ ${item.collectionEntryId}</span
896
+ >` : nothing}
897
+ <span class="tag-mini"
898
+ >${item.type.toUpperCase()}</span
899
+ >
900
+ </div>
901
+ </div>
902
+ `
903
+ )}
904
+ </div>` : this.collectionSearchResults && this.collectionSearchResults.length === 0 ? html`<div id="no-results-mini" class="no-results-mini">
905
+ <p>
906
+ No results found for
907
+ '${this.collectionSearchQuery}'. Try adjusting
908
+ your search term.
909
+ </p>
910
+ </div>` : nothing}
911
+ </div>
912
+ </terra-accordion>
913
+
914
+ ${this.collectionLoading ? html`
915
+ <div
916
+ class="collection-loading-bar"
917
+ style="display: flex; align-items: center; gap: 10px; margin: 16px 0;"
918
+ >
919
+ <span
920
+ class="loading-spinner"
921
+ style="width: 20px; height: 20px; border: 3px solid #ccc; border-top: 3px solid #31708f; border-radius: 50%; display: inline-block; animation: spin 1s linear infinite;"
922
+ ></span>
923
+ Retrieving collection, please wait...
924
+ </div>
925
+ <style>
926
+ @keyframes spin {
927
+ 0% {
928
+ transform: rotate(0deg);
929
+ }
930
+ 100% {
931
+ transform: rotate(360deg);
932
+ }
933
+ }
934
+ </style>
935
+ ` : nothing}
936
+ `;
937
+ };
938
+ _renderOutputFormatSelection = new WeakSet();
939
+ renderOutputFormatSelection_fn = function() {
940
+ var _a, _b;
941
+ const hasGiovanniService = (_b = (_a = this.collectionWithServices) == null ? void 0 : _a.services) == null ? void 0 : _b.some(
942
+ (s) => s.name.indexOf("giovanni") !== -1
943
+ );
944
+ return html`
945
+ <terra-accordion>
946
+ <div slot="summary">
947
+ <span class="accordion-title">File Format:</span>
948
+ </div>
949
+
950
+ <div
951
+ slot="summary-right"
952
+ style="display: flex; align-items: center; gap: 10px;"
953
+ >
954
+ <span
955
+ >${getFriendlyNameForMimeType(
956
+ this.selectedFormat,
957
+ hasGiovanniService
958
+ )}</span
959
+ >
960
+
961
+ <button class="reset-btn" @click=${__privateGet(this, _resetFormatSelection)}>
962
+ Reset
963
+ </button>
964
+ </div>
965
+
966
+ <div class="accordion-content" style="margin-top: 12px;">
967
+ ${(() => {
968
+ var _a2;
969
+ const allFormats = ((_a2 = this.collectionWithServices) == null ? void 0 : _a2.outputFormats) || [];
970
+ const uniqueFormats = Array.from(new Set(allFormats));
971
+ const hasNetcdf4 = uniqueFormats.includes(
972
+ "application/x-netcdf4"
973
+ );
974
+ const hasNetcdfClassic = uniqueFormats.includes("application/netcdf");
975
+ let displayFormats = uniqueFormats;
976
+ if (hasNetcdf4 && hasNetcdfClassic) {
977
+ displayFormats = uniqueFormats.filter(
978
+ (f) => f !== "application/netcdf"
979
+ );
980
+ }
981
+ return displayFormats.map(
982
+ (format) => html`
983
+ <label
984
+ style="display: flex; align-items: center; gap: 8px; padding: 5px;"
985
+ >
986
+ <input
987
+ type="radio"
988
+ name="output-format"
989
+ value="${format}"
990
+ .checked=${this.selectedFormat === format}
991
+ @change=${() => this.selectedFormat = format}
992
+ />
993
+ ${getFriendlyNameForMimeType(
994
+ format,
995
+ hasGiovanniService
996
+ )}
997
+ </label>
998
+ `
999
+ );
1000
+ })()}
1001
+ </div>
1002
+ </terra-accordion>
1003
+ `;
1004
+ };
1005
+ _renderDateRangeSelection = new WeakSet();
1006
+ renderDateRangeSelection_fn = function() {
1007
+ var _a, _b, _c, _d, _e, _f, _g, _h;
1008
+ const { startDate: defaultStartDate, endDate: defaultEndDate } = __privateMethod(this, _getCollectionDateRange, getCollectionDateRange_fn).call(this);
1009
+ const startDate = (_b = (_a = this.selectedDateRange.startDate) != null ? _a : this.granuleMinDate) != null ? _b : defaultStartDate;
1010
+ const endDate = (_d = (_c = this.selectedDateRange.endDate) != null ? _c : this.granuleMaxDate) != null ? _d : defaultEndDate;
1011
+ const showError = this.touchedFields.has("date") && (!this.selectedDateRange.startDate || !this.selectedDateRange.endDate);
1012
+ return html`
1013
+ <terra-accordion>
1014
+ <div slot="summary">
1015
+ <span class="accordion-title">Refine Date Range:</span>
1016
+ </div>
1017
+
1018
+ <div
1019
+ slot="summary-right"
1020
+ style="display: flex; align-items: center; gap: 10px;"
1021
+ >
1022
+ ${showError ? html`<span class="accordion-value error"
1023
+ >Please select a date range</span
1024
+ >` : this.touchedFields.has("date") && startDate && endDate ? html`<span class="accordion-value"
1025
+ >${startDate} to ${endDate}</span
1026
+ >` : nothing}
1027
+ <button class="reset-btn" @click=${__privateGet(this, _resetDateRangeSelection)}>
1028
+ Reset
1029
+ </button>
1030
+ </div>
1031
+
1032
+ <div style="width: 300px">
1033
+ <terra-date-picker
1034
+ allow-input
1035
+ inline
1036
+ range
1037
+ split-inputs
1038
+ show-presets
1039
+ ?enable-time=${this.controller.isSubDaily}
1040
+ start-label="Start Date"
1041
+ end-label="End Date"
1042
+ .minDate=${(_e = this.granuleMinDate) != null ? _e : defaultStartDate}
1043
+ .maxDate=${(_f = this.granuleMaxDate) != null ? _f : defaultEndDate}
1044
+ .startDate=${(_g = this.selectedDateRange.startDate) != null ? _g : this.granuleMinDate}
1045
+ .endDate=${(_h = this.selectedDateRange.endDate) != null ? _h : this.granuleMaxDate}
1046
+ .useEndOfDay=${__privateMethod(this, _isGiovanniFormat, isGiovanniFormat_fn).call(this) ? false : true}
1047
+ @terra-date-range-change=${__privateGet(this, _handleDateChange)}
1048
+ ></terra-date-picker>
1049
+ </div>
1050
+
1051
+ <div
1052
+ style="display: flex; gap: 16px; margin-top: 15px; color: #31708f;"
1053
+ >
1054
+ <span
1055
+ ><strong>Available Range:</strong> ${defaultStartDate} to
1056
+ ${defaultEndDate}</span
1057
+ >
1058
+ ${this.controller.isSubDaily ? html`<span
1059
+ ><strong>Note:</strong> All dates and times are in
1060
+ UTC.</span
1061
+ >` : nothing}
1062
+ </div>
1063
+ </terra-accordion>
1064
+ `;
1065
+ };
1066
+ _handleDateChange = new WeakMap();
1067
+ _resetDateRangeSelection = new WeakMap();
1068
+ _resetFormatSelection = new WeakMap();
1069
+ _getCollectionDateRange = new WeakSet();
1070
+ getCollectionDateRange_fn = function() {
1071
+ var _a, _b;
1072
+ const samplingMinDate = this.controller.granuleMinDate;
1073
+ const samplingMaxDate = this.controller.granuleMaxDate;
1074
+ if (samplingMinDate && samplingMaxDate) {
1075
+ return {
1076
+ startDate: samplingMinDate.slice(0, 10),
1077
+ endDate: samplingMaxDate.slice(0, 10)
1078
+ };
1079
+ }
1080
+ const temporalExtents = (_b = (_a = this.collectionWithServices) == null ? void 0 : _a.collection) == null ? void 0 : _b.TemporalExtents;
1081
+ if (!temporalExtents || !temporalExtents.length)
1082
+ return {
1083
+ startDate: null,
1084
+ endDate: null
1085
+ };
1086
+ let minStart = null;
1087
+ let maxEnd = null;
1088
+ const today = /* @__PURE__ */ new Date();
1089
+ for (const temporal of temporalExtents) {
1090
+ for (const range of temporal.RangeDateTimes) {
1091
+ const start = new Date(range.BeginningDateTime);
1092
+ let end;
1093
+ if (temporal.EndsAtPresentFlag || !range.EndingDateTime) {
1094
+ end = today;
1095
+ } else {
1096
+ end = new Date(range.EndingDateTime);
1097
+ }
1098
+ if (!minStart || start < minStart)
1099
+ minStart = start;
1100
+ if (!maxEnd || end > maxEnd)
1101
+ maxEnd = end;
1102
+ }
1103
+ }
1104
+ return {
1105
+ startDate: minStart ? minStart.toISOString().slice(0, 10) : null,
1106
+ endDate: maxEnd ? maxEnd.toISOString().slice(0, 10) : null
1107
+ };
1108
+ };
1109
+ _handleRegionAccordionToggle = new WeakSet();
1110
+ handleRegionAccordionToggle_fn = function() {
1111
+ var _a;
1112
+ (_a = this.spatialPicker) == null ? void 0 : _a.invalidateSize();
1113
+ };
1114
+ _renderSpatialSelection = new WeakSet();
1115
+ renderSpatialSelection_fn = function() {
1116
+ var _a, _b, _c, _d, _e;
1117
+ const showError = this.touchedFields.has("spatial") && !this.spatialSelection;
1118
+ let boundingRects = (_e = (_d = (_c = (_b = (_a = this.collectionWithServices) == null ? void 0 : _a.collection) == null ? void 0 : _b.SpatialExtent) == null ? void 0 : _c.HorizontalSpatialDomain) == null ? void 0 : _d.Geometry) == null ? void 0 : _e.BoundingRectangles;
1119
+ if (boundingRects && !Array.isArray(boundingRects)) {
1120
+ boundingRects = [boundingRects];
1121
+ }
1122
+ let spatialString = "";
1123
+ if (this.isLatLng(this.spatialSelection)) {
1124
+ spatialString = `${this.spatialSelection.lat}, ${this.spatialSelection.lng}`;
1125
+ } else if (this.isLatLngBounds(this.spatialSelection)) {
1126
+ spatialString = `${this.spatialSelection.getSouthWest().lat}, ${this.spatialSelection.getSouthWest().lng}, ${this.spatialSelection.getNorthEast().lat}, ${this.spatialSelection.getNorthEast().lng}`;
1127
+ } else if (this.spatialSelection && "w" in this.spatialSelection && "s" in this.spatialSelection && "e" in this.spatialSelection && "n" in this.spatialSelection) {
1128
+ spatialString = `${this.spatialSelection.w}, ${this.spatialSelection.s}, ${this.spatialSelection.e}, ${this.spatialSelection.n}`;
1129
+ } else if (this.spatialSelection) {
1130
+ spatialString = this.spatialSelection;
1131
+ }
1132
+ return html`
1133
+ <terra-accordion
1134
+ @terra-accordion-toggle=${__privateMethod(this, _handleRegionAccordionToggle, handleRegionAccordionToggle_fn)}
1135
+ >
1136
+ <div slot="summary">
1137
+ <span class="accordion-title">Refine Region:</span>
1138
+ </div>
1139
+
1140
+ <div
1141
+ slot="summary-right"
1142
+ style="display: flex; align-items: center; gap: 10px;"
1143
+ >
1144
+ ${showError ? html`<span class="accordion-value error"
1145
+ >Please select a region</span
1146
+ >` : spatialString ? html`<span class="accordion-value"
1147
+ >${spatialString}</span
1148
+ >` : nothing}
1149
+ <button class="reset-btn" @click=${__privateGet(this, _resetSpatialSelection)}>
1150
+ Reset
1151
+ </button>
1152
+ </div>
1153
+ <div class="accordion-content">
1154
+ <terra-spatial-picker
1155
+ part="spatial-picker"
1156
+ inline
1157
+ hide-label
1158
+ hide-point-selection
1159
+ no-world-wrap
1160
+ .spatialConstraints=${this.controller.spatialConstraints || "-180, -90, 180, 90"}
1161
+ .initialValue=${spatialString}
1162
+ @terra-map-change=${__privateGet(this, _handleSpatialChange)}
1163
+ ></terra-spatial-picker>
1164
+ <div
1165
+ style="display: flex; gap: 16px; margin-top: 15px; color: #31708f;"
1166
+ >
1167
+ <span
1168
+ ><strong>Available Range:</strong> ${this.controller.spatialConstraints}</span
1169
+ >
1170
+ </div>
1171
+ </div>
1172
+ </terra-accordion>
1173
+ `;
1174
+ };
1175
+ _handleSpatialChange = new WeakMap();
1176
+ _resetSpatialSelection = new WeakMap();
1177
+ _renderVariableSelection = new WeakSet();
1178
+ renderVariableSelection_fn = function() {
1179
+ var _a;
1180
+ const variables = ((_a = this.collectionWithServices) == null ? void 0 : _a.variables) || [];
1181
+ const giovanniError = this.touchedFields.has("variables") && __privateMethod(this, _getGiovanniValidationError, getGiovanniValidationError_fn).call(this);
1182
+ const basicError = this.touchedFields.has("variables") && this.selectedVariables.length === 0;
1183
+ const showError = giovanniError || basicError;
1184
+ const errorMessage = giovanniError || (basicError ? "Please select at least one variable" : "");
1185
+ const tree = __privateMethod(this, _buildVariableTree, buildVariableTree_fn).call(this, variables);
1186
+ const allGroups = __privateMethod(this, _getAllGroupPaths, getAllGroupPaths_fn).call(this, tree);
1187
+ const allExpanded = allGroups.length > 0 && allGroups.every((g) => this.expandedVariableGroups.has(g));
1188
+ return html`
1189
+ <terra-accordion>
1190
+ <div slot="summary">
1191
+ <span class="accordion-title">Select Variables:</span>
1192
+ </div>
1193
+ <div
1194
+ slot="summary-right"
1195
+ style="display: flex; align-items: center; gap: 10px;"
1196
+ >
1197
+ ${showError ? html`<span class="accordion-value error"
1198
+ >${errorMessage}</span
1199
+ >` : this.selectedVariables.length ? html`<span class="accordion-value"
1200
+ >${this.selectedVariables.length} selected</span
1201
+ >` : nothing}
1202
+
1203
+ <button class="reset-btn" @click=${__privateGet(this, _resetVariableSelection)}>
1204
+ Reset
1205
+ </button>
1206
+ </div>
1207
+ <div class="accordion-content">
1208
+ <terra-input
1209
+ label="Filter variables"
1210
+ placeholder="Search by variable name..."
1211
+ .value=${this.variableFilterText}
1212
+ @input=${(e) => {
1213
+ const input = e.target;
1214
+ this.variableFilterText = input.value;
1215
+ __privateMethod(this, _handleVariableFilterChange, handleVariableFilterChange_fn).call(this);
1216
+ }}
1217
+ style="margin-bottom: 10px;"
1218
+ ></terra-input>
1219
+ <button
1220
+ class="reset-btn"
1221
+ style="margin-bottom: 10px;"
1222
+ @click=${() => __privateMethod(this, _toggleExpandCollapseAll, toggleExpandCollapseAll_fn).call(this, tree)}
1223
+ >
1224
+ ${allExpanded ? "Collapse Tree" : "Expand Tree"}
1225
+ </button>
1226
+
1227
+ ${__privateMethod(this, _isGiovanniFormat, isGiovanniFormat_fn).call(this) && this.giovanniConfiguredVariables ? html`
1228
+ <terra-alert
1229
+ open
1230
+ appearance="white"
1231
+ style="margin: 10px 0"
1232
+ >
1233
+ <terra-icon
1234
+ slot="icon"
1235
+ name="outline-information-circle"
1236
+ library="heroicons"
1237
+ ></terra-icon>
1238
+ Only certain variables are supported for the
1239
+ selected output format. (Giovanni service)
1240
+ </terra-alert>
1241
+ <terra-alert
1242
+ open
1243
+ appearance="white"
1244
+ style="margin: 10px 0"
1245
+ >
1246
+ <terra-icon
1247
+ slot="icon"
1248
+ name="outline-information-circle"
1249
+ library="heroicons"
1250
+ ></terra-icon>
1251
+ User's are allowed to select only one variable for
1252
+ the selected output format. (Giovanni service)
1253
+ </terra-alert>
1254
+ ` : nothing}
1255
+ ${variables.length === 0 ? html`<p style="color: #666; font-style: italic;">
1256
+ No variables available for this collection.
1257
+ </p>` : __privateMethod(this, _renderVariableTree, renderVariableTree_fn).call(this, __privateMethod(this, _filterVariableTree, filterVariableTree_fn).call(this, tree), [])}
1258
+ </div>
1259
+ </terra-accordion>
1260
+ `;
1261
+ };
1262
+ _filterVariableTree = new WeakSet();
1263
+ filterVariableTree_fn = function(tree) {
1264
+ if (!this.variableFilterText.trim()) {
1265
+ return tree;
1266
+ }
1267
+ const filterText = this.variableFilterText.toLowerCase().trim();
1268
+ const filterNode = (node) => {
1269
+ const result = {};
1270
+ for (const [key, value] of Object.entries(node)) {
1271
+ if (value.__isLeaf) {
1272
+ const variableName = value.__variable.name.toLowerCase();
1273
+ if (variableName.includes(filterText)) {
1274
+ result[key] = value;
1275
+ }
1276
+ } else {
1277
+ const filteredChildren = filterNode(value.__children);
1278
+ if (Object.keys(filteredChildren).length > 0 || key.toLowerCase().includes(filterText)) {
1279
+ result[key] = __spreadProps(__spreadValues({}, value), {
1280
+ __children: filteredChildren
1281
+ });
1282
+ }
1283
+ }
1284
+ }
1285
+ return result;
1286
+ };
1287
+ return filterNode(tree);
1288
+ };
1289
+ _handleVariableFilterChange = new WeakSet();
1290
+ handleVariableFilterChange_fn = function() {
1291
+ var _a;
1292
+ if (!this.variableFilterText.trim()) {
1293
+ return;
1294
+ }
1295
+ const variables = ((_a = this.collectionWithServices) == null ? void 0 : _a.variables) || [];
1296
+ const tree = __privateMethod(this, _buildVariableTree, buildVariableTree_fn).call(this, variables);
1297
+ const filterText = this.variableFilterText.toLowerCase().trim();
1298
+ const groupsToExpand = /* @__PURE__ */ new Set();
1299
+ const findMatchingGroups = (node, path = []) => {
1300
+ for (const [key, value] of Object.entries(node)) {
1301
+ if (value.__isLeaf) {
1302
+ const variableName = value.__variable.name.toLowerCase();
1303
+ if (variableName.includes(filterText)) {
1304
+ for (let i = 0; i < path.length; i++) {
1305
+ const groupPath = path.slice(0, i + 1).join("/");
1306
+ groupsToExpand.add(groupPath);
1307
+ }
1308
+ }
1309
+ } else {
1310
+ const groupPath = [...path, key].join("/");
1311
+ findMatchingGroups(value.__children, [...path, key]);
1312
+ if (key.toLowerCase().includes(filterText)) {
1313
+ groupsToExpand.add(groupPath);
1314
+ }
1315
+ }
1316
+ }
1317
+ };
1318
+ findMatchingGroups(tree);
1319
+ if (groupsToExpand.size > 0) {
1320
+ this.expandedVariableGroups = /* @__PURE__ */ new Set([
1321
+ ...this.expandedVariableGroups,
1322
+ ...groupsToExpand
1323
+ ]);
1324
+ }
1325
+ };
1326
+ _buildVariableTree = new WeakSet();
1327
+ buildVariableTree_fn = function(variables) {
1328
+ let filteredVariables = variables;
1329
+ if (__privateMethod(this, _isGiovanniFormat, isGiovanniFormat_fn).call(this) && this.giovanniConfiguredVariables) {
1330
+ const originalCount = variables.length;
1331
+ filteredVariables = variables.filter((v) => {
1332
+ var _a, _b, _c;
1333
+ const shortName = (_a = this.collectionWithServices) == null ? void 0 : _a.shortName;
1334
+ const version = (_c = (_b = this.collectionWithServices) == null ? void 0 : _b.collection) == null ? void 0 : _c.Version;
1335
+ if (!shortName || !version) {
1336
+ return false;
1337
+ }
1338
+ const giovanniVariableName = convertVariableEntryIdToGiovanniFormat(
1339
+ shortName,
1340
+ version,
1341
+ v.name
1342
+ );
1343
+ return this.giovanniConfiguredVariables.has(giovanniVariableName);
1344
+ });
1345
+ console.log(
1346
+ `Filtered ${originalCount - filteredVariables.length} variables for Giovanni format. Showing ${filteredVariables.length} of ${originalCount}.`
1347
+ );
1348
+ }
1349
+ const root = {};
1350
+ for (const v of filteredVariables) {
1351
+ const parts = v.name.split("/");
1352
+ let node = root;
1353
+ for (let i = 0; i < parts.length; i++) {
1354
+ const part = parts[i];
1355
+ if (!node[part])
1356
+ node[part] = { __children: {}, __isLeaf: false };
1357
+ if (i === parts.length - 1) {
1358
+ node[part].__isLeaf = true;
1359
+ node[part].__variable = v;
1360
+ }
1361
+ node = node[part].__children;
1362
+ }
1363
+ }
1364
+ return root;
1365
+ };
1366
+ _renderVariableTree = new WeakSet();
1367
+ renderVariableTree_fn = function(node, path) {
1368
+ const isGiovanni = __privateMethod(this, _isGiovanniFormat, isGiovanniFormat_fn).call(this);
1369
+ return html`
1370
+ <div style="margin-left: ${path.length * 20}px;">
1371
+ ${Object.entries(node).map(([key, value]) => {
1372
+ var _a;
1373
+ const groupPath = [...path, key].join("/");
1374
+ if (value.__isLeaf) {
1375
+ const variableDetail = (_a = this.variableDetails) == null ? void 0 : _a.find(
1376
+ (d) => d.name === value.__variable.name && d.longName !== value.__variable.name
1377
+ );
1378
+ const variableName = (variableDetail == null ? void 0 : variableDetail.longName) ? `${key} = ${variableDetail.longName}${variableDetail.units ? ` (${variableDetail.units})` : ""}` : key;
1379
+ return html`
1380
+ <div class="option-row">
1381
+ <label class="checkbox-option">
1382
+ <input
1383
+ type="${isGiovanni ? "radio" : "checkbox"}"
1384
+ name="${isGiovanni ? "variable-selection" : ""}"
1385
+ .checked=${this.selectedVariables.some(
1386
+ (v) => v.name === value.__variable.name
1387
+ )}
1388
+ @change=${(e) => __privateMethod(this, _toggleVariableSelection, toggleVariableSelection_fn).call(this, e, value.__variable)}
1389
+ />
1390
+ <span>${variableName}</span>
1391
+ </label>
1392
+ </div>
1393
+ `;
1394
+ } else {
1395
+ const expanded = this.expandedVariableGroups.has(groupPath);
1396
+ return html`
1397
+ <div class="option-row" style="align-items: flex-start;">
1398
+ <span
1399
+ style="cursor: pointer; display: flex; align-items: center;"
1400
+ @click=${() => __privateMethod(this, _toggleGroupExpand, toggleGroupExpand_fn).call(this, groupPath)}
1401
+ >
1402
+ <terra-icon
1403
+ library="heroicons"
1404
+ name="${expanded ? "outline-minus-circle" : "outline-plus-circle"}"
1405
+ style="margin-right: 4px;"
1406
+ ></terra-icon>
1407
+ <span style="font-weight: 500;">${key}</span>
1408
+ </span>
1409
+ </div>
1410
+ ${expanded ? __privateMethod(this, _renderVariableTree, renderVariableTree_fn).call(this, value.__children, [
1411
+ ...path,
1412
+ key
1413
+ ]) : ""}
1414
+ `;
1415
+ }
1416
+ })}
1417
+ </div>
1418
+ `;
1419
+ };
1420
+ _getAllGroupPaths = new WeakSet();
1421
+ getAllGroupPaths_fn = function(node, path = []) {
1422
+ let groups = [];
1423
+ for (const [key, value] of Object.entries(node)) {
1424
+ if (!value.__isLeaf) {
1425
+ const groupPath = [...path, key].join("/");
1426
+ groups.push(groupPath);
1427
+ groups = groups.concat(
1428
+ __privateMethod(this, _getAllGroupPaths, getAllGroupPaths_fn).call(this, value.__children, [...path, key])
1429
+ );
1430
+ }
1431
+ }
1432
+ return groups;
1433
+ };
1434
+ _toggleGroupExpand = new WeakSet();
1435
+ toggleGroupExpand_fn = function(groupPath) {
1436
+ const set = new Set(this.expandedVariableGroups);
1437
+ if (set.has(groupPath)) {
1438
+ set.delete(groupPath);
1439
+ } else {
1440
+ set.add(groupPath);
1441
+ }
1442
+ this.expandedVariableGroups = set;
1443
+ };
1444
+ _toggleExpandCollapseAll = new WeakSet();
1445
+ toggleExpandCollapseAll_fn = function(tree) {
1446
+ const allGroups = __privateMethod(this, _getAllGroupPaths, getAllGroupPaths_fn).call(this, tree);
1447
+ const allExpanded = allGroups.length > 0 && allGroups.every((g) => this.expandedVariableGroups.has(g));
1448
+ if (allExpanded) {
1449
+ this.expandedVariableGroups = /* @__PURE__ */ new Set();
1450
+ } else {
1451
+ this.expandedVariableGroups = new Set(allGroups);
1452
+ }
1453
+ };
1454
+ _toggleVariableSelection = new WeakSet();
1455
+ toggleVariableSelection_fn = function(e, variable) {
1456
+ __privateMethod(this, _markFieldTouched, markFieldTouched_fn).call(this, "variables");
1457
+ const checked = e.target.checked;
1458
+ if (__privateMethod(this, _isGiovanniFormat, isGiovanniFormat_fn).call(this)) {
1459
+ if (checked) {
1460
+ this.selectedVariables = [variable];
1461
+ }
1462
+ } else {
1463
+ if (checked) {
1464
+ if (!this.selectedVariables.some((v) => v.name === variable.name)) {
1465
+ this.selectedVariables = [...this.selectedVariables, variable];
1466
+ }
1467
+ } else {
1468
+ this.selectedVariables = this.selectedVariables.filter(
1469
+ (v) => v.name !== variable.name
1470
+ );
1471
+ }
1472
+ }
1473
+ };
1474
+ _markFieldTouched = new WeakSet();
1475
+ markFieldTouched_fn = function(field) {
1476
+ this.touchedFields = new Set(this.touchedFields).add(field);
1477
+ };
1478
+ _resetVariableSelection = new WeakMap();
1479
+ _renderJobStatus = new WeakSet();
1480
+ renderJobStatus_fn = function() {
1481
+ var _a, _b;
1482
+ if (!((_a = this.controller.currentJob) == null ? void 0 : _a.jobID)) {
1483
+ return html`<div class="results-section" id="job-status-section">
1484
+ <div
1485
+ style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px;"
1486
+ >
1487
+ <h2 class="results-title" style="margin: 0;">Results:</h2>
1488
+ ${!this.isHistoryView ? html`
1489
+ <terra-button
1490
+ variant="default"
1491
+ size="small"
1492
+ @click=${__privateMethod(this, _backToSubsetOptions, backToSubsetOptions_fn)}
1493
+ >
1494
+ ← Back to Subset Options
1495
+ </terra-button>
1496
+ ` : nothing}
1497
+ </div>
1498
+
1499
+ <div class="progress-container">
1500
+ <div class="progress-text">
1501
+ <span class="spinner"></span>
1502
+ <span class="status-running">Searching for data...</span>
1503
+ </div>
1504
+
1505
+ <div class="progress-bar">
1506
+ <div class="progress-fill" style="width: 0%"></div>
1507
+ </div>
1508
+ </div>
1509
+
1510
+ ${__privateMethod(this, _renderJobMessage, renderJobMessage_fn).call(this)}
1511
+ </div>`;
1512
+ }
1513
+ return html`
1514
+ <div class="results-section" id="job-status-section">
1515
+ <div
1516
+ style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px;"
1517
+ >
1518
+ <h2 class="results-title" style="margin: 0;">Results:</h2>
1519
+ ${!this.isHistoryView ? html`
1520
+ <terra-button
1521
+ variant="default"
1522
+ size="small"
1523
+ @click=${__privateMethod(this, _backToSubsetOptions, backToSubsetOptions_fn)}
1524
+ >
1525
+ ← Back to Subset Options
1526
+ </terra-button>
1527
+ ` : nothing}
1528
+ </div>
1529
+
1530
+ ${this.controller.currentJob.status !== "canceled" && this.controller.currentJob.status !== "failed" ? html` <div class="progress-container">
1531
+ <div class="progress-text">
1532
+ ${this.controller.currentJob.progress >= 100 ? html`
1533
+ <span class="status-complete"
1534
+ >✓ Search complete</span
1535
+ >
1536
+ ` : html`
1537
+ <span class="spinner"></span>
1538
+ <span class="status-running"
1539
+ >Searching for data...
1540
+ (${this.controller.currentJob.progress}%)</span
1541
+ >
1542
+ `}
1543
+ </div>
1544
+
1545
+ <div class="progress-bar">
1546
+ <div
1547
+ class="progress-fill"
1548
+ style="width: ${this.controller.currentJob.progress}%"
1549
+ ></div>
1550
+ </div>
1551
+ </div>` : nothing}
1552
+
1553
+ <div class="search-status">
1554
+ <span class="file-count"
1555
+ >Found ${__privateMethod(this, _numberOfFilesFoundEstimate, numberOfFilesFoundEstimate_fn).call(this)} files</span
1556
+ >
1557
+ out of estimated
1558
+ <span class="estimated-total"
1559
+ >${this.controller.currentJob.numInputGranules.toLocaleString()}</span
1560
+ >
1561
+ </div>
1562
+
1563
+ ${__privateMethod(this, _renderJobMessage, renderJobMessage_fn).call(this)}
1564
+ ${((_b = this.controller.currentJob.errors) == null ? void 0 : _b.length) ? html`
1565
+ <terra-accordion>
1566
+ <div slot="summary">
1567
+ <span
1568
+ class="accordion-title"
1569
+ style="color: #dc3545;"
1570
+ >Errors
1571
+ (${this.controller.currentJob.errors.length})</span
1572
+ >
1573
+ </div>
1574
+ <div class="accordion-content">
1575
+ <ul
1576
+ style="color: #dc3545; font-size: 14px; padding-left: 20px;"
1577
+ >
1578
+ ${this.controller.currentJob.errors.map(
1579
+ (err) => html`
1580
+ <li style="margin-bottom: 12px;">
1581
+ <a
1582
+ href="${err.url}"
1583
+ target="_blank"
1584
+ style="word-break: break-all; color: #dc3545; text-decoration: underline;"
1585
+ >
1586
+ ${err.url}
1587
+ </a>
1588
+ <div style="margin-top: 2px;">
1589
+ ${err.message}
1590
+ </div>
1591
+ </li>
1592
+ `
1593
+ )}
1594
+ </ul>
1595
+ </div>
1596
+ </terra-accordion>
1597
+ ` : nothing}
1598
+
1599
+ <div class="tabs">
1600
+ <button
1601
+ class="tab ${this.selectedTab === "web-links" ? "active" : ""}"
1602
+ @click=${() => this.selectedTab = "web-links"}
1603
+ >
1604
+ Web Links
1605
+ </button>
1606
+
1607
+ ${!this.isHistoryView ? html`
1608
+ <button
1609
+ class="tab ${this.selectedTab === "selected-params" ? "active" : ""}"
1610
+ @click=${() => this.selectedTab = "selected-params"}
1611
+ >
1612
+ Selected Parameters
1613
+ </button>
1614
+ ` : nothing}
1615
+ </div>
1616
+ <div
1617
+ id="web-links"
1618
+ class="tab-content ${this.selectedTab === "web-links" ? "active" : ""}"
1619
+ >
1620
+ ${__privateMethod(this, _getDocumentationLinks, getDocumentationLinks_fn).call(this).length ? html`
1621
+ <div class="documentation-links">
1622
+ ${__privateMethod(this, _getDocumentationLinks, getDocumentationLinks_fn).call(this).map(
1623
+ (link) => html`
1624
+ <a href="${link.href}" class="doc-link"
1625
+ >${link.title}</a
1626
+ >
1627
+ `
1628
+ )}
1629
+ </div>
1630
+ ` : nothing}
1631
+
1632
+ <ul class="file-list">
1633
+ ${__privateMethod(this, _getDataLinks, getDataLinks_fn).call(this).map(
1634
+ (link) => html`
1635
+ <li class="file-item">
1636
+ <a
1637
+ href="${link.href}"
1638
+ class="file-link"
1639
+ target="_blank"
1640
+ >
1641
+ ${link.title}
1642
+ </a>
1643
+ </li>
1644
+ `
1645
+ )}
1646
+ </ul>
1647
+ </div>
1648
+
1649
+ <div
1650
+ id="selected-params"
1651
+ class="tab-content ${this.selectedTab === "selected-params" ? "active" : ""}"
1652
+ >
1653
+ ${__privateMethod(this, _renderSelectedParams, renderSelectedParams_fn).call(this)}
1654
+ </div>
1655
+ </div>
1656
+
1657
+ ${!this.dialog ? html`
1658
+ <div class="footer">
1659
+ ${this.controller.currentJob.status === "successful" /* SUCCESSFUL */ || this.controller.currentJob.status === "complete_with_errors" /* COMPLETE_WITH_ERRORS */ ? html`
1660
+ <div
1661
+ style="display: flex; align-items: center; gap: 8px;"
1662
+ >
1663
+ <terra-dropdown
1664
+ @terra-select=${__privateMethod(this, _handleDownloadSelect, handleDownloadSelect_fn)}
1665
+ >
1666
+ <terra-button slot="trigger" caret>
1667
+ Download Options
1668
+ </terra-button>
1669
+ <terra-menu>
1670
+ <terra-menu-item value="file-list">
1671
+ <svg
1672
+ slot="prefix"
1673
+ viewBox="0 0 24 24"
1674
+ width="16"
1675
+ height="16"
1676
+ style="width: 16px; height: 16px;"
1677
+ >
1678
+ <path
1679
+ fill="currentColor"
1680
+ d="M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6zm2 16H8v-2h8v2zm0-4H8v-2h8v2zm-3-5V3.5L18.5 9H13z"
1681
+ />
1682
+ </svg>
1683
+ File List
1684
+ </terra-menu-item>
1685
+ <terra-menu-item
1686
+ value="python-script"
1687
+ >
1688
+ <svg
1689
+ slot="prefix"
1690
+ viewBox="0 0 128 128"
1691
+ width="16"
1692
+ height="16"
1693
+ style="width: 16px; height: 16px;"
1694
+ >
1695
+ <path
1696
+ fill="currentColor"
1697
+ d="M49.33 62h29.159C86.606 62 93 55.132 93 46.981V19.183c0-7.912-6.632-13.856-14.555-15.176-5.014-.835-10.195-1.215-15.187-1.191-4.99.023-9.612.448-13.805 1.191C37.098 6.188 35 10.758 35 19.183V30h29v4H23.776c-8.484 0-15.914 5.108-18.237 14.811-2.681 11.12-2.8 17.919 0 29.53C7.614 86.983 12.569 93 21.054 93H31V79.952C31 70.315 39.428 62 49.33 62zm-1.838-39.11c-3.026 0-5.478-2.479-5.478-5.545 0-3.079 2.451-5.581 5.478-5.581 3.015 0 5.479 2.502 5.479 5.581-.001 3.066-2.465 5.545-5.479 5.545zm74.789 25.921C120.183 40.363 116.178 34 107.682 34H97v12.981C97 57.031 88.206 65 78.489 65H49.33C41.342 65 35 72.326 35 80.326v27.8c0 7.91 6.745 12.564 14.462 14.834 9.242 2.717 17.994 3.208 29.051 0C85.862 120.831 93 116.549 93 108.126V97H64v-4h43.682c8.484 0 11.647-5.776 14.599-14.66 3.047-9.145 2.916-17.799 0-29.529zm-41.955 55.606c3.027 0 5.479 2.479 5.479 5.547 0 3.076-2.451 5.579-5.479 5.579-3.015 0-5.478-2.502-5.478-5.579 0-3.068 2.463-5.547 5.478-5.547z"
1698
+ ></path>
1699
+ </svg>
1700
+ Python Script
1701
+ </terra-menu-item>
1702
+ <terra-menu-item
1703
+ value="earthdata-download"
1704
+ >
1705
+ <svg
1706
+ slot="prefix"
1707
+ viewBox="0 0 64 64"
1708
+ fill="none"
1709
+ width="16"
1710
+ height="16"
1711
+ style="width: 16px; height: 16px;"
1712
+ >
1713
+ <circle
1714
+ cx="32"
1715
+ cy="32"
1716
+ r="28"
1717
+ fill="currentColor"
1718
+ />
1719
+ <path
1720
+ d="M32 14v26M32 40l-9-9M32 40l9-9"
1721
+ stroke="#fff"
1722
+ stroke-width="4"
1723
+ stroke-linecap="round"
1724
+ stroke-linejoin="round"
1725
+ fill="none"
1726
+ />
1727
+ </svg>
1728
+ Earthdata Download
1729
+ </terra-menu-item>
1730
+ </terra-menu>
1731
+ </terra-dropdown>
1732
+
1733
+ <!--
1734
+ <terra-button
1735
+ outline
1736
+ @click=${() => __privateMethod(this, _handleJupyterNotebookClick, handleJupyterNotebookClick_fn).call(this)}
1737
+ >
1738
+ <terra-icon
1739
+ name="outline-code-bracket"
1740
+ library="heroicons"
1741
+ font-size="1.5em"
1742
+ style="margin-right: 5px;"
1743
+ ></terra-icon>
1744
+ Open in Jupyter Notebook
1745
+ </terra-button>
1746
+ --></div>
1747
+ ` : nothing}
1748
+ ${this.controller.currentJob.status === "running" ? html`<button
1749
+ class="btn btn-success"
1750
+ @click=${__privateMethod(this, _cancelJob, cancelJob_fn)}
1751
+ ?disabled=${this.cancelingGetData}
1752
+ >
1753
+ ${this.cancelingGetData ? "Canceling..." : "Cancel request"}
1754
+ </button>` : nothing}
1755
+
1756
+ <div class="job-info">
1757
+ Job ID:
1758
+ <span class="job-id">
1759
+ ${this.bearerToken ? html`<a
1760
+ href="https://harmony.earthdata.nasa.gov/jobs/${this.controller.currentJob.jobID}"
1761
+ target="_blank"
1762
+ >${this.controller.currentJob.jobID}</a
1763
+ >` : this.controller.currentJob.jobID}
1764
+ </span>
1765
+ <span class="info-icon">?</span>
1766
+ </div>
1767
+ </div>
1768
+ ` : nothing}
1769
+ `;
1770
+ };
1771
+ _renderSelectedParams = new WeakSet();
1772
+ renderSelectedParams_fn = function() {
1773
+ var _a, _b;
1774
+ const collection = (_a = this.collectionWithServices) == null ? void 0 : _a.collection;
1775
+ const variables = this.selectedVariables.length ? this.selectedVariables.map((v) => v.name) : ["All"];
1776
+ const dateRange = this.selectedDateRange.startDate && this.selectedDateRange.endDate ? `${this.selectedDateRange.startDate} to ${this.selectedDateRange.endDate}` : "\u2014";
1777
+ let spatial = "\u2014";
1778
+ if (this.spatialSelection) {
1779
+ if ("w" in this.spatialSelection) {
1780
+ spatial = `Bounding Box: ${this.spatialSelection.w}, ${this.spatialSelection.s}, ${this.spatialSelection.e}, ${this.spatialSelection.n}`;
1781
+ } else if ("lat" in this.spatialSelection && "lng" in this.spatialSelection) {
1782
+ spatial = `Point: ${this.spatialSelection.lat}, ${this.spatialSelection.lng}`;
1783
+ }
1784
+ }
1785
+ return html`
1786
+ <dl class="params-summary">
1787
+ <div>
1788
+ <dt><strong>Dataset</strong></dt>
1789
+ <dd>${(_b = collection == null ? void 0 : collection.EntryTitle) != null ? _b : "\u2014"}</dd>
1790
+ </div>
1791
+ <div>
1792
+ <dt><strong>Variables</strong></dt>
1793
+ <dd>${variables.map((v) => html`<div>${v}</div>`)}</dd>
1794
+ </div>
1795
+ <div>
1796
+ <dt><strong>Date Range</strong></dt>
1797
+ <dd>${dateRange}</dd>
1798
+ </div>
1799
+ <div>
1800
+ <dt><strong>Spatial</strong></dt>
1801
+ <dd>${spatial}</dd>
1802
+ </div>
1803
+ </dl>
1804
+
1805
+ <terra-button @click=${__privateMethod(this, _refineParameters, refineParameters_fn)}
1806
+ >Refine Parameters</terra-button
1807
+ >
1808
+ `;
1809
+ };
1810
+ _cancelJob = new WeakSet();
1811
+ cancelJob_fn = function() {
1812
+ this.cancelingGetData = true;
1813
+ this.controller.cancelCurrentJob();
1814
+ };
1815
+ _getData = new WeakSet();
1816
+ getData_fn = function() {
1817
+ const validationError = __privateMethod(this, _getGiovanniValidationError, getGiovanniValidationError_fn).call(this);
1818
+ if (validationError) {
1819
+ this.validationError = validationError;
1820
+ __privateMethod(this, _markFieldTouched, markFieldTouched_fn).call(this, "variables");
1821
+ return;
1822
+ }
1823
+ this.validationError = void 0;
1824
+ this.cancelingGetData = false;
1825
+ __privateMethod(this, _touchAllFields, touchAllFields_fn).call(this);
1826
+ this.controller.cancelCurrentJob();
1827
+ this.controller.currentJob = null;
1828
+ this.jobId = void 0;
1829
+ this.controller.jobStatusTask.run().then(() => {
1830
+ var _a;
1831
+ if ((_a = this.controller.currentJob) == null ? void 0 : _a.jobID) {
1832
+ this.jobId = this.controller.currentJob.jobID;
1833
+ }
1834
+ });
1835
+ setTimeout(() => {
1836
+ const el = this.renderRoot.querySelector("#job-status-section");
1837
+ el == null ? void 0 : el.scrollIntoView({ behavior: "smooth" });
1838
+ }, 100);
1839
+ this.refineParameters = false;
1840
+ this.isHistoryView = false;
1841
+ };
1842
+ _touchAllFields = new WeakSet();
1843
+ touchAllFields_fn = function() {
1844
+ this.touchedFields = /* @__PURE__ */ new Set(["variables", "spatial"]);
1845
+ };
1846
+ _numberOfFilesFoundEstimate = new WeakSet();
1847
+ numberOfFilesFoundEstimate_fn = function() {
1848
+ return Math.floor(
1849
+ this.controller.currentJob.numInputGranules * this.controller.currentJob.progress / 100
1850
+ );
1851
+ };
1852
+ _getDocumentationLinks = new WeakSet();
1853
+ getDocumentationLinks_fn = function() {
1854
+ return this.controller.currentJob.links.filter(
1855
+ (link) => link.rel === "stac-catalog-json"
1856
+ );
1857
+ };
1858
+ _getDataLinks = new WeakSet();
1859
+ getDataLinks_fn = function() {
1860
+ return this.controller.currentJob.links.filter((link) => link.rel === "data");
1861
+ };
1862
+ _hasAtLeastOneSubsetOption = new WeakSet();
1863
+ hasAtLeastOneSubsetOption_fn = function() {
1864
+ var _a, _b, _c, _d;
1865
+ return ((_a = this.collectionWithServices) == null ? void 0 : _a.bboxSubset) || ((_b = this.collectionWithServices) == null ? void 0 : _b.shapeSubset) || ((_c = this.collectionWithServices) == null ? void 0 : _c.variableSubset) || ((_d = this.collectionWithServices) == null ? void 0 : _d.temporalSubset);
1866
+ };
1867
+ _hasSpatialSubset = new WeakSet();
1868
+ hasSpatialSubset_fn = function() {
1869
+ var _a, _b;
1870
+ return ((_a = this.collectionWithServices) == null ? void 0 : _a.bboxSubset) || ((_b = this.collectionWithServices) == null ? void 0 : _b.shapeSubset);
1871
+ };
1872
+ _renderJobMessage = new WeakSet();
1873
+ renderJobMessage_fn = function() {
1874
+ const warningStatuses = [
1875
+ "canceled" /* CANCELED */,
1876
+ "complete_with_errors" /* COMPLETE_WITH_ERRORS */,
1877
+ "running_with_errors" /* RUNNING_WITH_ERRORS */
1878
+ ];
1879
+ const errorStatuses = ["failed" /* FAILED */];
1880
+ let type = "normal";
1881
+ if (warningStatuses.includes(this.controller.currentJob.status)) {
1882
+ type = "warning";
1883
+ } else if (errorStatuses.includes(this.controller.currentJob.status)) {
1884
+ type = "error";
1885
+ }
1886
+ let color, bg;
1887
+ if (type === "error") {
1888
+ color = "#dc3545";
1889
+ bg = "#f8d7da";
1890
+ } else if (type === "warning") {
1891
+ color = "#856404";
1892
+ bg = "#fff3cd";
1893
+ } else {
1894
+ color = "#555";
1895
+ bg = "#f8f9fa";
1896
+ }
1897
+ return html`
1898
+ <div
1899
+ style="
1900
+ margin: 24px 0 16px 0;
1901
+ padding: 16px 20px;
1902
+ border-radius: 6px;
1903
+ background: ${bg};
1904
+ color: ${color};
1905
+ border: 1px solid ${color}22;
1906
+ "
1907
+ >
1908
+ ${__privateMethod(this, _getJobMessageText, getJobMessageText_fn).call(this)}
1909
+ </div>
1910
+ `;
1911
+ };
1912
+ _getJobMessageText = new WeakSet();
1913
+ getJobMessageText_fn = function() {
1914
+ var _a;
1915
+ return (_a = this.controller.currentJob) == null ? void 0 : _a.message.replace(
1916
+ /\b(The job|the job|job|Job)\b/g,
1917
+ (match) => {
1918
+ switch (match) {
1919
+ case "The job":
1920
+ return "Your request";
1921
+ case "the job":
1922
+ return "Your Request";
1923
+ case "job":
1924
+ return "request";
1925
+ case "Job":
1926
+ return "Request";
1927
+ }
1928
+ return match;
1929
+ }
1930
+ );
1931
+ };
1932
+ _estimateJobSize = new WeakSet();
1933
+ estimateJobSize_fn = function() {
1934
+ var _a, _b, _c, _d;
1935
+ const collection = (_a = this.collectionWithServices) == null ? void 0 : _a.collection;
1936
+ if (!collection)
1937
+ return;
1938
+ const range = __privateMethod(this, _getCollectionDateRange, getCollectionDateRange_fn).call(this);
1939
+ let startDate;
1940
+ let endDate;
1941
+ let links = (_b = collection.granuleCount) != null ? _b : 0;
1942
+ if (this.selectedDateRange.startDate && this.selectedDateRange.endDate) {
1943
+ startDate = this.selectedDateRange.startDate;
1944
+ endDate = this.selectedDateRange.endDate;
1945
+ } else {
1946
+ startDate = (_c = this.granuleMinDate) != null ? _c : range.startDate;
1947
+ endDate = (_d = this.granuleMaxDate) != null ? _d : range.endDate;
1948
+ }
1949
+ if (!startDate || !endDate)
1950
+ return;
1951
+ const start = new Date(startDate);
1952
+ const end = new Date(endDate);
1953
+ const days = Math.floor((end.getTime() - start.getTime()) / (1e3 * 60 * 60 * 24)) + 1;
1954
+ if (range.startDate && range.endDate) {
1955
+ const availableDaysInCollection = Math.floor(
1956
+ (new Date(range.endDate).getTime() - new Date(range.startDate).getTime()) / (1e3 * 60 * 60 * 24)
1957
+ ) + 1;
1958
+ const granulesPerDay = links / availableDaysInCollection;
1959
+ links = Math.ceil(days * granulesPerDay);
1960
+ }
1961
+ return { days, links };
1962
+ };
1963
+ _refineParameters = new WeakSet();
1964
+ refineParameters_fn = function() {
1965
+ this.refineParameters = true;
1966
+ };
1967
+ _backToSubsetOptions = new WeakSet();
1968
+ backToSubsetOptions_fn = function() {
1969
+ this.refineParameters = true;
1970
+ setTimeout(() => {
1971
+ const container = this.renderRoot.querySelector(".container");
1972
+ container == null ? void 0 : container.scrollIntoView({ behavior: "smooth", block: "start" });
1973
+ }, 100);
1974
+ };
1975
+ _viewRunningJob = new WeakSet();
1976
+ viewRunningJob_fn = function() {
1977
+ this.refineParameters = false;
1978
+ setTimeout(() => {
1979
+ const el = this.renderRoot.querySelector("#job-status-section");
1980
+ el == null ? void 0 : el.scrollIntoView({ behavior: "smooth" });
1981
+ }, 100);
1982
+ };
1983
+ _handleDownloadSelect = new WeakSet();
1984
+ handleDownloadSelect_fn = function(event) {
1985
+ const item = event.detail.item;
1986
+ const value = item.value || item.getTextLabel();
1987
+ if (value === "file-list") {
1988
+ __privateMethod(this, _downloadLinksAsTxt, downloadLinksAsTxt_fn).call(this, event);
1989
+ } else if (value === "python-script") {
1990
+ __privateMethod(this, _downloadPythonScript, downloadPythonScript_fn).call(this, event);
1991
+ } else if (value === "earthdata-download") {
1992
+ __privateMethod(this, _downloadEarthdataDownload, downloadEarthdataDownload_fn).call(this, event);
1993
+ }
1994
+ };
1995
+ _downloadLinksAsTxt = new WeakSet();
1996
+ downloadLinksAsTxt_fn = function(event) {
1997
+ var _a;
1998
+ event.stopPropagation();
1999
+ if (!((_a = this.controller.currentJob) == null ? void 0 : _a.links)) {
2000
+ return;
2001
+ }
2002
+ const dataLinks = __privateMethod(this, _getDataLinks, getDataLinks_fn).call(this);
2003
+ if (dataLinks.length === 0) {
2004
+ return;
2005
+ }
2006
+ const content = dataLinks.map((link) => link.href).join("\n");
2007
+ const blob = new Blob([content], { type: "text/plain" });
2008
+ const url = URL.createObjectURL(blob);
2009
+ const a = document.createElement("a");
2010
+ a.href = url;
2011
+ a.download = `subset_links_${this.controller.currentJob.jobID}.txt`;
2012
+ document.body.appendChild(a);
2013
+ a.click();
2014
+ document.body.removeChild(a);
2015
+ URL.revokeObjectURL(url);
2016
+ };
2017
+ _downloadPythonScript = new WeakSet();
2018
+ downloadPythonScript_fn = async function(event) {
2019
+ var _a, _b, _c;
2020
+ event.stopPropagation();
2021
+ if (!((_a = this.controller.currentJob) == null ? void 0 : _a.links)) {
2022
+ return;
2023
+ }
2024
+ const response = await fetch(
2025
+ getBasePath("assets/data-subsetter/download_subset_files.py.txt")
2026
+ );
2027
+ if (!response.ok) {
2028
+ alert(
2029
+ "Sorry, there was a problem generating the Python script. We are investigating the issue.\nYou could try using the Jupyter Notebook in the meantime"
2030
+ );
2031
+ }
2032
+ const content = (await response.text()).replace(/{{jobId}}/gi, this.controller.currentJob.jobID).replace(
2033
+ /{{HARMONY_ENV}}/gi,
2034
+ `Environment.${(_b = this.environment) == null ? void 0 : _b.toUpperCase()}`
2035
+ ).replace(
2036
+ /{{EARTHACCESS_ENV}}/gi,
2037
+ `earthaccess.${(_c = this.environment) == null ? void 0 : _c.toUpperCase()}`
2038
+ );
2039
+ const blob = new Blob([content], { type: "text/plain" });
2040
+ const url = URL.createObjectURL(blob);
2041
+ const a = document.createElement("a");
2042
+ a.href = url;
2043
+ a.download = `download_subset_files_${this.controller.currentJob.jobID}.py`;
2044
+ document.body.appendChild(a);
2045
+ a.click();
2046
+ document.body.removeChild(a);
2047
+ URL.revokeObjectURL(url);
2048
+ };
2049
+ _downloadEarthdataDownload = new WeakSet();
2050
+ downloadEarthdataDownload_fn = async function(event) {
2051
+ var _a;
2052
+ event.stopPropagation();
2053
+ if (!((_a = this.controller.currentJob) == null ? void 0 : _a.links)) {
2054
+ return;
2055
+ }
2056
+ alert("Sorry, Earthdata Download is not currently supported");
2057
+ };
2058
+ _handleJupyterNotebookClick = new WeakSet();
2059
+ handleJupyterNotebookClick_fn = function() {
2060
+ var _a;
2061
+ const notebook = getNotebook(this);
2062
+ console.log("sending data to JupyterLite");
2063
+ sendDataToJupyterNotebook("load-notebook", {
2064
+ filename: `subset_${(_a = this.controller.currentJob) == null ? void 0 : _a.jobID}.ipynb`,
2065
+ notebook,
2066
+ bearerToken: this.bearerToken
2067
+ });
2068
+ };
2069
+ _renderAvailableTemporalRangeSection = new WeakSet();
2070
+ renderAvailableTemporalRangeSection_fn = function() {
2071
+ const { startDate, endDate } = __privateMethod(this, _getCollectionDateRange, getCollectionDateRange_fn).call(this);
2072
+ if (!startDate || !endDate)
2073
+ return nothing;
2074
+ return html`
2075
+ <div class="section" style="margin-bottom: 16px;">
2076
+ <h2 class="section-title">Available Date Range</h2>
2077
+ <div style="color: #31708f; margin-top: 8px;">
2078
+ <strong>${startDate}</strong> to <strong>${endDate}</strong>
2079
+ </div>
2080
+ <div style="font-size: 0.95em; color: #666;">
2081
+ This collection does not support temporal subsetting.
2082
+ </div>
2083
+ </div>
2084
+ `;
2085
+ };
2086
+ _renderAvailableSpatialRangeSection = new WeakSet();
2087
+ renderAvailableSpatialRangeSection_fn = function() {
2088
+ var _a, _b, _c, _d, _e;
2089
+ const boundingRects = (_e = (_d = (_c = (_b = (_a = this.collectionWithServices) == null ? void 0 : _a.collection) == null ? void 0 : _b.SpatialExtent) == null ? void 0 : _c.HorizontalSpatialDomain) == null ? void 0 : _d.Geometry) == null ? void 0 : _e.BoundingRectangles;
2090
+ if (!boundingRects || !Array.isArray(boundingRects) || !boundingRects.length)
2091
+ return nothing;
2092
+ return html`
2093
+ <div class="section" style="margin-bottom: 16px;">
2094
+ <h2 class="section-title">Available Spatial Area</h2>
2095
+ <div style="color: #31708f; margin-top: 8px;">
2096
+ ${boundingRects.map(
2097
+ (rect) => html`<div>
2098
+ <strong>Bounding Box:</strong>
2099
+ ${rect.WestBoundingCoordinate},
2100
+ ${rect.SouthBoundingCoordinate},
2101
+ ${rect.EastBoundingCoordinate},
2102
+ ${rect.NorthBoundingCoordinate}
2103
+ </div>`
2104
+ )}
2105
+ </div>
2106
+ <div style="font-size: 0.95em; color: #666;">
2107
+ This collection does not support spatial subsetting.
2108
+ </div>
2109
+ </div>
2110
+ `;
2111
+ };
2112
+ _renderDataAccessModeSelection = new WeakSet();
2113
+ renderDataAccessModeSelection_fn = function() {
2114
+ if (!this.controller.hasGranules) {
2115
+ return nothing;
2116
+ }
2117
+ return html`
2118
+ <div class="mode-selection">
2119
+ <div class="mode-options">
2120
+ <label
2121
+ class="mode-option ${this.dataAccessMode === "original" ? "selected" : ""}"
2122
+ >
2123
+ <input
2124
+ type="radio"
2125
+ name="data-access-mode"
2126
+ value="original"
2127
+ .checked=${this.dataAccessMode === "original"}
2128
+ @change=${() => this.dataAccessMode = "original"}
2129
+ />
2130
+ <div class="mode-content">
2131
+ <div class="mode-title">Get Original Files</div>
2132
+ <div class="mode-description">
2133
+ Filter file links directly from the archive.
2134
+ </div>
2135
+ </div>
2136
+ </label>
2137
+
2138
+ <label
2139
+ class="mode-option ${this.dataAccessMode === "subset" ? "selected" : ""}"
2140
+ >
2141
+ <input
2142
+ type="radio"
2143
+ name="data-access-mode"
2144
+ value="subset"
2145
+ .checked=${this.dataAccessMode === "subset"}
2146
+ @change=${() => this.dataAccessMode = "subset"}
2147
+ />
2148
+ <div class="mode-content">
2149
+ <div class="mode-title">Subset Data</div>
2150
+ <div class="mode-description">
2151
+ Subset the data to your specific needs.
2152
+ </div>
2153
+ </div>
2154
+ </label>
2155
+ </div>
2156
+ </div>
2157
+ `;
2158
+ };
2159
+ _isGiovanniFormat = new WeakSet();
2160
+ isGiovanniFormat_fn = function() {
2161
+ return this.selectedFormat === "text/csv" || this.selectedFormat === "image/tiff";
2162
+ };
2163
+ _getGiovanniValidationError = new WeakSet();
2164
+ getGiovanniValidationError_fn = function() {
2165
+ if (!__privateMethod(this, _isGiovanniFormat, isGiovanniFormat_fn).call(this)) {
2166
+ return null;
2167
+ }
2168
+ if (this.selectedVariables.length === 0) {
2169
+ return "Please select a variable to subset.";
2170
+ }
2171
+ if (this.selectedVariables.length > 1) {
2172
+ return "The selected format only supports subsetting one variable at a time.";
2173
+ }
2174
+ return null;
2175
+ };
2176
+ TerraDataSubsetter.styles = [component_styles_default, data_subsetter_styles_default];
2177
+ TerraDataSubsetter.dependencies = {
2178
+ "terra-accordion": TerraAccordion,
2179
+ "terra-date-picker": TerraDatePicker,
2180
+ "terra-icon": TerraIcon,
2181
+ "terra-input": TerraInput,
2182
+ "terra-spatial-picker": TerraSpatialPicker,
2183
+ "terra-login": TerraLogin,
2184
+ "terra-loader": TerraLoader,
2185
+ "terra-data-access": TerraDataAccess,
2186
+ "terra-dialog": TerraDialog,
2187
+ "terra-dropdown": TerraDropdown,
2188
+ "terra-menu": TerraMenu,
2189
+ "terra-menu-item": TerraMenuItem,
2190
+ "terra-button": TerraButton,
2191
+ "terra-alert": TerraAlert
2192
+ };
2193
+ __decorateClass([
2194
+ property({ reflect: true, attribute: "collection-entry-id" })
2195
+ ], TerraDataSubsetter.prototype, "collectionEntryId", 2);
2196
+ __decorateClass([
2197
+ property({ reflect: true, attribute: "short-name" })
2198
+ ], TerraDataSubsetter.prototype, "shortName", 2);
2199
+ __decorateClass([
2200
+ property({ reflect: true, attribute: "version" })
2201
+ ], TerraDataSubsetter.prototype, "version", 2);
2202
+ __decorateClass([
2203
+ property({ reflect: true, type: Boolean, attribute: "show-collection-search" })
2204
+ ], TerraDataSubsetter.prototype, "showCollectionSearch", 2);
2205
+ __decorateClass([
2206
+ property({ reflect: true, type: Boolean, attribute: "show-history-panel" })
2207
+ ], TerraDataSubsetter.prototype, "showHistoryPanel", 2);
2208
+ __decorateClass([
2209
+ property({ reflect: true, attribute: "job-id" })
2210
+ ], TerraDataSubsetter.prototype, "jobId", 2);
2211
+ __decorateClass([
2212
+ property({ attribute: "bearer-token" })
2213
+ ], TerraDataSubsetter.prototype, "bearerToken", 2);
2214
+ __decorateClass([
2215
+ property({ reflect: true })
2216
+ ], TerraDataSubsetter.prototype, "dialog", 2);
2217
+ __decorateClass([
2218
+ property({ reflect: true, type: Boolean, attribute: "is-history-view" })
2219
+ ], TerraDataSubsetter.prototype, "isHistoryView", 2);
2220
+ __decorateClass([
2221
+ state()
2222
+ ], TerraDataSubsetter.prototype, "collectionWithServices", 2);
2223
+ __decorateClass([
2224
+ state()
2225
+ ], TerraDataSubsetter.prototype, "variableDetails", 2);
2226
+ __decorateClass([
2227
+ state()
2228
+ ], TerraDataSubsetter.prototype, "selectedVariables", 2);
2229
+ __decorateClass([
2230
+ state()
2231
+ ], TerraDataSubsetter.prototype, "expandedVariableGroups", 2);
2232
+ __decorateClass([
2233
+ state()
2234
+ ], TerraDataSubsetter.prototype, "variableFilterText", 2);
2235
+ __decorateClass([
2236
+ state()
2237
+ ], TerraDataSubsetter.prototype, "touchedFields", 2);
2238
+ __decorateClass([
2239
+ state()
2240
+ ], TerraDataSubsetter.prototype, "spatialSelection", 2);
2241
+ __decorateClass([
2242
+ state()
2243
+ ], TerraDataSubsetter.prototype, "selectedDateRange", 2);
2244
+ __decorateClass([
2245
+ state()
2246
+ ], TerraDataSubsetter.prototype, "selectedFormat", 2);
2247
+ __decorateClass([
2248
+ state()
2249
+ ], TerraDataSubsetter.prototype, "cancelingGetData", 2);
2250
+ __decorateClass([
2251
+ state()
2252
+ ], TerraDataSubsetter.prototype, "selectedTab", 2);
2253
+ __decorateClass([
2254
+ state()
2255
+ ], TerraDataSubsetter.prototype, "refineParameters", 2);
2256
+ __decorateClass([
2257
+ state()
2258
+ ], TerraDataSubsetter.prototype, "collectionSearchType", 2);
2259
+ __decorateClass([
2260
+ state()
2261
+ ], TerraDataSubsetter.prototype, "collectionSearchQuery", 2);
2262
+ __decorateClass([
2263
+ state()
2264
+ ], TerraDataSubsetter.prototype, "collectionSearchLoading", 2);
2265
+ __decorateClass([
2266
+ state()
2267
+ ], TerraDataSubsetter.prototype, "collectionSearchResults", 2);
2268
+ __decorateClass([
2269
+ state()
2270
+ ], TerraDataSubsetter.prototype, "collectionLoading", 2);
2271
+ __decorateClass([
2272
+ state()
2273
+ ], TerraDataSubsetter.prototype, "collectionAccordionOpen", 2);
2274
+ __decorateClass([
2275
+ state()
2276
+ ], TerraDataSubsetter.prototype, "dataAccessMode", 2);
2277
+ __decorateClass([
2278
+ state()
2279
+ ], TerraDataSubsetter.prototype, "validationError", 2);
2280
+ __decorateClass([
2281
+ state()
2282
+ ], TerraDataSubsetter.prototype, "granuleMinDate", 2);
2283
+ __decorateClass([
2284
+ state()
2285
+ ], TerraDataSubsetter.prototype, "granuleMaxDate", 2);
2286
+ __decorateClass([
2287
+ state()
2288
+ ], TerraDataSubsetter.prototype, "giovanniConfiguredVariables", 2);
2289
+ __decorateClass([
2290
+ query('[part~="spatial-picker"]')
2291
+ ], TerraDataSubsetter.prototype, "spatialPicker", 2);
2292
+ __decorateClass([
2293
+ query("terra-dialog")
2294
+ ], TerraDataSubsetter.prototype, "dialogElement", 2);
2295
+ __decorateClass([
2296
+ watch(["jobId"], { waitUntilFirstUpdate: true })
2297
+ ], TerraDataSubsetter.prototype, "jobIdChanged", 1);
2298
+ __decorateClass([
2299
+ watch(["shortName", "version"])
2300
+ ], TerraDataSubsetter.prototype, "shortNameAndVersionChanged", 1);
2301
+ __decorateClass([
2302
+ watch("collectionEntryId", { waitUntilFirstUpdate: true })
2303
+ ], TerraDataSubsetter.prototype, "collectionEntryIdChanged", 1);
2304
+ __decorateClass([
2305
+ watch(["collectionWithServices"])
2306
+ ], TerraDataSubsetter.prototype, "collectionChanged", 1);
2307
+ __decorateClass([
2308
+ watch(["granuleMinDate", "granuleMaxDate"])
2309
+ ], TerraDataSubsetter.prototype, "granuleDatesChanged", 1);
2310
+ __decorateClass([
2311
+ watch("selectedFormat")
2312
+ ], TerraDataSubsetter.prototype, "selectedFormatChanged", 1);
2313
+ __decorateClass([
2314
+ debounce(500)
2315
+ ], TerraDataSubsetter.prototype, "handleCollectionSearch", 1);
2316
+
2317
+ export {
2318
+ TerraDataSubsetter
2319
+ };