@nasa-terra/components 0.0.165 → 0.0.167

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 (1274) hide show
  1. package/cdn/chunks/chunk.22JAM2GR.js +149 -0
  2. package/cdn/chunks/chunk.2KSTLEEW.js +19 -0
  3. package/cdn/chunks/chunk.2MOKVZJ5.js +110 -0
  4. package/cdn/chunks/chunk.2MRTLI7C.js +29 -0
  5. package/cdn/chunks/chunk.2OYHOPUN.js +29 -0
  6. package/cdn/chunks/chunk.2W6MOIKV.js +36 -0
  7. package/cdn/chunks/chunk.2ZAILZIZ.js +29 -0
  8. package/cdn/chunks/chunk.34GKSDDH.js +29 -0
  9. package/cdn/chunks/chunk.35NWYWPA.js +610 -0
  10. package/cdn/chunks/chunk.3DZICDY5.js +19 -0
  11. package/cdn/chunks/chunk.3EEC7I6T.js +77 -0
  12. package/cdn/chunks/chunk.3HQ5B2XG.js +60 -0
  13. package/cdn/chunks/chunk.3KF4JV5X.js +19 -0
  14. package/cdn/chunks/chunk.3OCLA6PR.js +113 -0
  15. package/cdn/chunks/chunk.3PYSUHMX.js +74 -0
  16. package/cdn/chunks/chunk.3RYHRIU7.js +47 -0
  17. package/cdn/chunks/chunk.3T7254VH.js +1002 -0
  18. package/cdn/chunks/chunk.3X2FJVEK.js +99 -0
  19. package/cdn/chunks/chunk.3YIIQKB4.js +29 -0
  20. package/cdn/chunks/chunk.4E526L3E.js +29 -0
  21. package/cdn/chunks/chunk.4JULN6G5.js +29 -0
  22. package/cdn/chunks/chunk.56M3T4SS.js +19 -0
  23. package/cdn/chunks/chunk.5RFPNO6G.js +19 -0
  24. package/cdn/chunks/chunk.5RYT4QNM.js +157 -0
  25. package/cdn/chunks/chunk.5VTC5O3H.js +29 -0
  26. package/cdn/chunks/chunk.5XLABLQB.js +276 -0
  27. package/cdn/chunks/chunk.66SSQP45.js +19 -0
  28. package/cdn/chunks/chunk.67XHQN22.js +19 -0
  29. package/cdn/chunks/chunk.6JBKCS52.js +83 -0
  30. package/cdn/chunks/chunk.6JIAMAMY.js +29 -0
  31. package/cdn/chunks/chunk.6TBKK4LM.js +493 -0
  32. package/cdn/chunks/chunk.6Y4YTK5P.js +238 -0
  33. package/cdn/chunks/chunk.77XDQUES.js +19 -0
  34. package/cdn/chunks/chunk.7FSPBN74.js +99 -0
  35. package/cdn/chunks/chunk.7PS6V6WS.js +1966 -0
  36. package/cdn/chunks/chunk.7SUZRUNK.js +19 -0
  37. package/cdn/chunks/chunk.7T52ILDL.js +599 -0
  38. package/cdn/chunks/chunk.7VUN6GFK.js +29 -0
  39. package/cdn/chunks/chunk.AFC2HLIY.js +19 -0
  40. package/cdn/chunks/chunk.AOBU6O57.js +990 -0
  41. package/cdn/chunks/chunk.AQ3JLCWN.js +165 -0
  42. package/cdn/chunks/chunk.ATCGQBQH.js +19 -0
  43. package/cdn/chunks/chunk.B3EEU2CI.js +29 -0
  44. package/cdn/chunks/chunk.B4TQIGEX.js +19 -0
  45. package/cdn/chunks/chunk.B526UDNH.js +29 -0
  46. package/cdn/chunks/chunk.BFVSGVAT.js +19 -0
  47. package/cdn/chunks/chunk.BJF5R6JW.js +190 -0
  48. package/cdn/chunks/chunk.BMK7DPMC.js +19 -0
  49. package/cdn/chunks/chunk.BNPVRBVC.js +123 -0
  50. package/cdn/chunks/chunk.BPUKB6TK.js +29 -0
  51. package/cdn/chunks/chunk.BRIHWEDS.js +29 -0
  52. package/cdn/chunks/chunk.BUGYJIDA.js +29 -0
  53. package/cdn/chunks/chunk.BY3XMPVV.js +731 -0
  54. package/cdn/chunks/chunk.C4QTAT3W.js +32 -0
  55. package/cdn/chunks/chunk.C7BHHMPD.js +29 -0
  56. package/cdn/chunks/chunk.CCYPCKYP.js +29 -0
  57. package/cdn/chunks/chunk.CE7S2HSD.js +19 -0
  58. package/cdn/chunks/chunk.CHP6L4IZ.js +29 -0
  59. package/cdn/chunks/chunk.CNFKSV5Y.js +41 -0
  60. package/cdn/chunks/chunk.CNQ5DP2Y.js +19 -0
  61. package/cdn/chunks/chunk.CR32YRI3.js +32 -0
  62. package/cdn/chunks/chunk.CV3BFVNC.js +224 -0
  63. package/cdn/chunks/chunk.DBV4CPVA.js +93 -0
  64. package/cdn/chunks/chunk.DKXKWPJK.js +189 -0
  65. package/cdn/chunks/chunk.DLQNZ2FX.js +201 -0
  66. package/cdn/chunks/chunk.DQKC3KIY.js +19 -0
  67. package/cdn/chunks/chunk.DVUHMHS7.js +77 -0
  68. package/cdn/chunks/chunk.DYNAESKX.js +32 -0
  69. package/cdn/chunks/chunk.DZJULA3U.js +33858 -0
  70. package/cdn/chunks/chunk.EEBXXJ5S.js +19 -0
  71. package/cdn/chunks/chunk.EGTBQ75C.js +279 -0
  72. package/cdn/chunks/chunk.ERLTY6RD.js +32 -0
  73. package/cdn/chunks/chunk.ERM35NF4.js +93 -0
  74. package/cdn/chunks/chunk.ESRB43Y5.js +616 -0
  75. package/cdn/chunks/chunk.F4EH5N56.js +33 -0
  76. package/cdn/chunks/chunk.FLBSTQ3K.js +19 -0
  77. package/cdn/chunks/chunk.FPAJGJR7.js +35 -0
  78. package/cdn/chunks/chunk.FQMP346K.js +19 -0
  79. package/cdn/chunks/chunk.FXITFED3.js +37 -0
  80. package/cdn/chunks/chunk.G6Z24R6Y.js +19 -0
  81. package/cdn/chunks/chunk.GCKUWBFX.js +477 -0
  82. package/cdn/chunks/chunk.GEBLYMYM.js +264 -0
  83. package/cdn/chunks/chunk.GN2ZQBKO.js +34 -0
  84. package/cdn/chunks/chunk.HFTGBEXB.js +188 -0
  85. package/cdn/chunks/chunk.HHPVOMGD.js +278 -0
  86. package/cdn/chunks/chunk.HPJ222W5.js +33 -0
  87. package/cdn/chunks/chunk.HV5AHGSZ.js +288 -0
  88. package/cdn/chunks/chunk.HXT3MQZB.js +86 -0
  89. package/cdn/chunks/chunk.HYTFGYES.js +524 -0
  90. package/cdn/chunks/chunk.HZLKJ66W.js +29 -0
  91. package/cdn/chunks/chunk.I6RAXH53.js +19 -0
  92. package/cdn/chunks/chunk.IJQLOBAC.js +132 -0
  93. package/cdn/chunks/chunk.ISYLWUTX.js +19 -0
  94. package/cdn/chunks/chunk.ITCNMUXT.js +56 -0
  95. package/cdn/chunks/chunk.IWVNVNRD.js +134 -0
  96. package/cdn/chunks/chunk.J3Z3NPJ4.js +134 -0
  97. package/cdn/chunks/chunk.J6VLXGTF.js +36 -0
  98. package/cdn/chunks/chunk.J7I3DOXG.js +272 -0
  99. package/cdn/chunks/chunk.JBRXER73.js +19 -0
  100. package/cdn/chunks/chunk.JGEML6NJ.js +30 -0
  101. package/cdn/chunks/chunk.JK27J74D.js +62 -0
  102. package/cdn/chunks/chunk.K7YIOV7T.js +19 -0
  103. package/cdn/chunks/chunk.KCZYTXMI.js +39 -0
  104. package/cdn/chunks/chunk.KD6G7ERX.js +68 -0
  105. package/cdn/chunks/chunk.KGCLCQ7X.js +60 -0
  106. package/cdn/chunks/chunk.KILIHVMF.js +32 -0
  107. package/cdn/chunks/chunk.KMCDDWE5.js +35 -0
  108. package/cdn/chunks/chunk.KU5FXVEU.js +19 -0
  109. package/cdn/chunks/chunk.KWBRNY25.js +19 -0
  110. package/cdn/chunks/chunk.KXBA6WIZ.js +904 -0
  111. package/cdn/chunks/chunk.L2NSE4OV.js +19 -0
  112. package/cdn/chunks/chunk.L4G7AM4D.js +19 -0
  113. package/cdn/chunks/chunk.LCNNIIGG.js +372 -0
  114. package/cdn/chunks/chunk.LE77IFIT.js +29 -0
  115. package/cdn/chunks/chunk.LJV444BY.js +19 -0
  116. package/cdn/chunks/chunk.LPUGYJQ6.js +19 -0
  117. package/cdn/chunks/chunk.MGD4I7TI.js +33 -0
  118. package/cdn/chunks/chunk.MGVK6RY6.js +19 -0
  119. package/cdn/chunks/chunk.MSKQVFVO.js +36 -0
  120. package/cdn/chunks/chunk.MYXC7VZK.js +19 -0
  121. package/cdn/chunks/chunk.N2ZLSKRS.js +19 -0
  122. package/cdn/chunks/chunk.N7Y6PI75.js +19 -0
  123. package/cdn/chunks/chunk.NBYFCLIA.js +230 -0
  124. package/cdn/chunks/chunk.NCSQNVLT.js +34 -0
  125. package/cdn/chunks/chunk.NKVAAAFV.js +19 -0
  126. package/cdn/chunks/chunk.NLM2F46S.js +37 -0
  127. package/cdn/chunks/chunk.NQ6WTKJ5.js +39 -0
  128. package/cdn/chunks/chunk.NRJZH24F.js +19 -0
  129. package/cdn/chunks/chunk.NT5A6ZHT.js +136 -0
  130. package/cdn/chunks/chunk.NYZK4RJY.js +19 -0
  131. package/cdn/chunks/chunk.O22V5PWM.js +35 -0
  132. package/cdn/chunks/chunk.O45AJCZN.js +32 -0
  133. package/cdn/chunks/chunk.O5BUI6HD.js +499 -0
  134. package/cdn/chunks/chunk.OBIYKNGD.js +36 -0
  135. package/cdn/chunks/chunk.OE32JNHX.js +2290 -0
  136. package/cdn/chunks/chunk.OE6QBUL3.js +151 -0
  137. package/cdn/chunks/chunk.OIBHUA2X.js +33 -0
  138. package/cdn/chunks/chunk.ONZYR5V7.js +19 -0
  139. package/cdn/chunks/chunk.OTBLJV2P.js +19 -0
  140. package/cdn/chunks/chunk.OWBCL4YY.js +92 -0
  141. package/cdn/chunks/chunk.OWOOYBL5.js +621 -0
  142. package/cdn/chunks/chunk.OYDCM6EP.js +19 -0
  143. package/cdn/chunks/chunk.P4OWV3H2.js +412 -0
  144. package/cdn/chunks/chunk.PLP3BQV2.js +29 -0
  145. package/cdn/chunks/chunk.PMUKNJQB.js +357 -0
  146. package/cdn/chunks/chunk.PUDKOG7O.js +19 -0
  147. package/cdn/chunks/chunk.PVPOTYBO.js +29 -0
  148. package/cdn/chunks/chunk.Q67OTTO2.js +145 -0
  149. package/cdn/chunks/chunk.QB7PKQGX.js +32 -0
  150. package/cdn/chunks/chunk.QHPWQ6EU.js +234 -0
  151. package/cdn/chunks/chunk.QIALAQUY.js +19 -0
  152. package/cdn/chunks/chunk.QMAOK6H7.js +287 -0
  153. package/cdn/chunks/chunk.QN47HJMJ.js +99 -0
  154. package/cdn/chunks/chunk.QPO4FJDV.js +19 -0
  155. package/cdn/chunks/chunk.QTCDR4K5.js +19 -0
  156. package/cdn/chunks/chunk.QZA56TJF.js +83 -0
  157. package/cdn/chunks/chunk.R2CKSIEB.js +302 -0
  158. package/cdn/chunks/chunk.R3ELIEXH.js +158 -0
  159. package/cdn/chunks/chunk.RESQSJZW.js +19 -0
  160. package/cdn/chunks/chunk.RLB5ZGN3.js +2243 -0
  161. package/cdn/chunks/chunk.RPIMP5VU.js +29 -0
  162. package/cdn/chunks/chunk.RRIBXI6T.js +662 -0
  163. package/cdn/chunks/chunk.RVVT6D2O.js +32 -0
  164. package/cdn/chunks/chunk.RWRHKJV7.js +29 -0
  165. package/cdn/chunks/chunk.S6HRHLBY.js +29 -0
  166. package/cdn/chunks/chunk.SBRPQN46.js +239 -0
  167. package/cdn/chunks/chunk.SBV4CE52.js +293 -0
  168. package/cdn/chunks/chunk.SCVPK7ZI.js +19 -0
  169. package/cdn/chunks/chunk.SGVXOEMD.js +359 -0
  170. package/cdn/chunks/chunk.SOL4KQRB.js +32 -0
  171. package/cdn/chunks/chunk.STIIRCSR.js +32 -0
  172. package/cdn/chunks/chunk.SVWVRXE5.js +19 -0
  173. package/cdn/chunks/chunk.T4EQTEDI.js +79 -0
  174. package/cdn/chunks/chunk.TAVW4BSX.js +231 -0
  175. package/cdn/chunks/chunk.TCVQUZH3.js +19 -0
  176. package/cdn/chunks/chunk.TGA7THVX.js +32 -0
  177. package/cdn/chunks/chunk.TLGXE7WV.js +52 -0
  178. package/cdn/chunks/chunk.TO3IZDTY.js +435 -0
  179. package/cdn/chunks/chunk.TU5LEWLH.js +78 -0
  180. package/cdn/chunks/chunk.UCYLBWS6.js +19 -0
  181. package/cdn/chunks/chunk.UGVKO2F3.js +29 -0
  182. package/cdn/chunks/chunk.UMXEOKQR.js +29 -0
  183. package/cdn/chunks/chunk.UQ3KQHGM.js +29 -0
  184. package/cdn/chunks/chunk.UXW4BGB3.js +35 -0
  185. package/cdn/chunks/chunk.UZO2S5ZV.js +55346 -0
  186. package/cdn/chunks/chunk.UZUUSYPD.js +19 -0
  187. package/cdn/chunks/chunk.V5RXILK4.js +19 -0
  188. package/cdn/chunks/chunk.VKGMZPCA.js +19 -0
  189. package/cdn/chunks/chunk.VMITYTMW.js +29 -0
  190. package/cdn/chunks/chunk.VOHWSUS6.js +19 -0
  191. package/cdn/chunks/chunk.VRFTM5EZ.js +33 -0
  192. package/cdn/chunks/chunk.VW4JRARC.js +19 -0
  193. package/cdn/chunks/chunk.W2L4LFHP.js +538 -0
  194. package/cdn/chunks/chunk.WIHIKDOO.js +19 -0
  195. package/cdn/chunks/chunk.WIVXANPA.js +1056 -0
  196. package/cdn/chunks/chunk.WJ4RUTUN.js +19 -0
  197. package/cdn/chunks/chunk.WUS3RA7A.js +259 -0
  198. package/cdn/chunks/chunk.XHDWZUS3.js +19 -0
  199. package/cdn/chunks/chunk.XXKZMY2K.js +19 -0
  200. package/cdn/chunks/chunk.XZVBKL46.js +104 -0
  201. package/cdn/chunks/chunk.YI5QUNXX.js +19 -0
  202. package/cdn/chunks/chunk.YIJM5IYA.js +32 -0
  203. package/cdn/chunks/chunk.YIYWTQKE.js +32 -0
  204. package/cdn/chunks/chunk.YLEDVKIQ.js +155 -0
  205. package/cdn/chunks/chunk.YQWDPYX2.js +71 -0
  206. package/cdn/chunks/chunk.YTZMHMX3.js +29 -0
  207. package/cdn/chunks/chunk.Z2DAFDC2.js +49 -0
  208. package/cdn/chunks/chunk.Z4LEEFSD.js +19 -0
  209. package/cdn/chunks/chunk.ZGA7FO7P.js +32 -0
  210. package/cdn/chunks/chunk.ZN6PR35U.js +106 -0
  211. package/cdn/components/accordion/accordion.component.js +5 -5
  212. package/cdn/components/accordion/accordion.js +6 -6
  213. package/cdn/components/alert/alert.component.js +3 -3
  214. package/cdn/components/alert/alert.js +4 -4
  215. package/cdn/components/avatar/avatar.component.js +7 -7
  216. package/cdn/components/avatar/avatar.js +8 -8
  217. package/cdn/components/badge/badge.component.js +2 -2
  218. package/cdn/components/badge/badge.js +3 -3
  219. package/cdn/components/breadcrumb/breadcrumb.component.js +2 -2
  220. package/cdn/components/breadcrumb/breadcrumb.js +3 -3
  221. package/cdn/components/breadcrumbs/breadcrumbs.component.js +2 -2
  222. package/cdn/components/breadcrumbs/breadcrumbs.js +3 -3
  223. package/cdn/components/browse-variables/browse-variables.component.js +18 -18
  224. package/cdn/components/browse-variables/browse-variables.controller.js +3 -3
  225. package/cdn/components/browse-variables/browse-variables.js +19 -19
  226. package/cdn/components/button/button.component.js +7 -7
  227. package/cdn/components/button/button.js +8 -8
  228. package/cdn/components/button-group/button-group.component.js +2 -2
  229. package/cdn/components/button-group/button-group.js +3 -3
  230. package/cdn/components/caption/caption.component.js +2 -2
  231. package/cdn/components/caption/caption.js +3 -3
  232. package/cdn/components/card/card.component.js +2 -2
  233. package/cdn/components/card/card.js +3 -3
  234. package/cdn/components/checkbox/checkbox.component.js +8 -8
  235. package/cdn/components/checkbox/checkbox.js +9 -9
  236. package/cdn/components/chip/chip.component.js +2 -2
  237. package/cdn/components/chip/chip.js +3 -3
  238. package/cdn/components/combobox/combobox.component.d.ts +4 -1
  239. package/cdn/components/combobox/combobox.component.js +6 -6
  240. package/cdn/components/combobox/combobox.js +7 -7
  241. package/cdn/components/data-access/data-access.component.d.ts +2 -0
  242. package/cdn/components/data-access/data-access.component.js +29 -27
  243. package/cdn/components/data-access/data-access.controller.js +3 -3
  244. package/cdn/components/data-access/data-access.js +30 -28
  245. package/cdn/components/data-grid/data-grid.component.js +5 -5
  246. package/cdn/components/data-grid/data-grid.js +6 -6
  247. package/cdn/components/data-rods/data-rods.component.js +38 -38
  248. package/cdn/components/data-rods/data-rods.js +39 -39
  249. package/cdn/components/data-subsetter/data-subsetter.component.d.ts +2 -1
  250. package/cdn/components/data-subsetter/data-subsetter.component.js +45 -45
  251. package/cdn/components/data-subsetter/data-subsetter.controller.d.ts +3 -1
  252. package/cdn/components/data-subsetter/data-subsetter.controller.js +3 -3
  253. package/cdn/components/data-subsetter/data-subsetter.js +46 -46
  254. package/cdn/components/data-subsetter/data-subsetter.styles.js +1 -1
  255. package/cdn/components/data-subsetter/notebooks/subsetter-notebook.js +1 -1
  256. package/cdn/components/data-subsetter-history/data-subsetter-history.component.js +46 -46
  257. package/cdn/components/data-subsetter-history/data-subsetter-history.js +47 -47
  258. package/cdn/components/date-picker/date-picker.component.d.ts +10 -0
  259. package/cdn/components/date-picker/date-picker.component.js +14 -14
  260. package/cdn/components/date-picker/date-picker.js +15 -15
  261. package/cdn/components/date-range-slider/date-range-slider.component.js +2 -2
  262. package/cdn/components/date-range-slider/date-range-slider.js +3 -3
  263. package/cdn/components/dialog/dialog.component.js +10 -10
  264. package/cdn/components/dialog/dialog.js +11 -11
  265. package/cdn/components/dialog/dialog.styles.js +1 -1
  266. package/cdn/components/divider/divider.component.js +2 -2
  267. package/cdn/components/divider/divider.js +3 -3
  268. package/cdn/components/dropdown/dropdown.component.js +3 -3
  269. package/cdn/components/dropdown/dropdown.js +4 -4
  270. package/cdn/components/earthdata-login/earthdata-login.component.js +15 -15
  271. package/cdn/components/earthdata-login/earthdata-login.js +16 -16
  272. package/cdn/components/file-upload/file-upload.component.js +2 -2
  273. package/cdn/components/file-upload/file-upload.js +3 -3
  274. package/cdn/components/icon/icon.component.js +3 -3
  275. package/cdn/components/icon/icon.js +4 -4
  276. package/cdn/components/input/input.component.js +8 -8
  277. package/cdn/components/input/input.js +9 -9
  278. package/cdn/components/loader/loader.component.js +2 -2
  279. package/cdn/components/loader/loader.js +3 -3
  280. package/cdn/components/login/login.component.js +12 -12
  281. package/cdn/components/login/login.js +13 -13
  282. package/cdn/components/map/leaflet-utils.d.ts +1 -1
  283. package/cdn/components/map/map.component.js +4 -4
  284. package/cdn/components/map/map.js +5 -5
  285. package/cdn/components/menu/menu.component.js +2 -2
  286. package/cdn/components/menu/menu.js +3 -3
  287. package/cdn/components/menu-item/menu-item.component.js +11 -11
  288. package/cdn/components/menu-item/menu-item.js +12 -12
  289. package/cdn/components/menu-item/submenu-controller.js +3 -3
  290. package/cdn/components/option/option.component.js +6 -6
  291. package/cdn/components/option/option.js +7 -7
  292. package/cdn/components/pagination/pagination.component.js +6 -6
  293. package/cdn/components/pagination/pagination.js +7 -7
  294. package/cdn/components/plot/plot.component.js +2 -2
  295. package/cdn/components/plot/plot.js +3 -3
  296. package/cdn/components/plot-toolbar/notebooks/time-averaged-map-notebook.js +1 -1
  297. package/cdn/components/plot-toolbar/notebooks/time-series-notebook.js +1 -1
  298. package/cdn/components/plot-toolbar/plot-toolbar.component.js +15 -15
  299. package/cdn/components/plot-toolbar/plot-toolbar.controller.js +3 -3
  300. package/cdn/components/plot-toolbar/plot-toolbar.js +16 -16
  301. package/cdn/components/popup/popup.component.js +2 -2
  302. package/cdn/components/popup/popup.js +3 -3
  303. package/cdn/components/progress-bar/progress-bar.component.js +2 -2
  304. package/cdn/components/progress-bar/progress-bar.js +3 -3
  305. package/cdn/components/radio/radio.component.js +4 -4
  306. package/cdn/components/radio/radio.js +5 -5
  307. package/cdn/components/radio-group/radio-group.component.js +2 -2
  308. package/cdn/components/radio-group/radio-group.js +3 -3
  309. package/cdn/components/scroll-hint/scroll-hint.component.js +4 -4
  310. package/cdn/components/scroll-hint/scroll-hint.js +5 -5
  311. package/cdn/components/select/select.component.js +10 -10
  312. package/cdn/components/select/select.js +11 -11
  313. package/cdn/components/site-header/site-header.component.js +5 -5
  314. package/cdn/components/site-header/site-header.js +5 -5
  315. package/cdn/components/site-navigation/site-navigation.component.js +2 -2
  316. package/cdn/components/site-navigation/site-navigation.js +2 -2
  317. package/cdn/components/skeleton/skeleton.component.js +2 -2
  318. package/cdn/components/skeleton/skeleton.js +3 -3
  319. package/cdn/components/slider/slider.component.js +2 -2
  320. package/cdn/components/slider/slider.js +3 -3
  321. package/cdn/components/spatial-picker/spatial-picker.component.js +15 -15
  322. package/cdn/components/spatial-picker/spatial-picker.js +16 -16
  323. package/cdn/components/status-indicator/status-indicator.component.js +2 -2
  324. package/cdn/components/status-indicator/status-indicator.js +3 -3
  325. package/cdn/components/stepper/stepper.component.js +2 -2
  326. package/cdn/components/stepper/stepper.js +3 -3
  327. package/cdn/components/stepper-step/stepper-step.component.js +6 -6
  328. package/cdn/components/stepper-step/stepper-step.js +7 -7
  329. package/cdn/components/tab/tab.component.js +6 -6
  330. package/cdn/components/tab/tab.js +7 -7
  331. package/cdn/components/tab-panel/tab-panel.component.js +2 -2
  332. package/cdn/components/tab-panel/tab-panel.js +3 -3
  333. package/cdn/components/tabs/tabs.component.js +6 -6
  334. package/cdn/components/tabs/tabs.js +7 -7
  335. package/cdn/components/tag/tag.component.js +6 -6
  336. package/cdn/components/tag/tag.js +7 -7
  337. package/cdn/components/textarea/textarea.component.js +4 -4
  338. package/cdn/components/textarea/textarea.js +5 -5
  339. package/cdn/components/time-average-map/time-average-map.component.js +24 -24
  340. package/cdn/components/time-average-map/time-average-map.js +25 -25
  341. package/cdn/components/time-series/time-series.component.js +23 -23
  342. package/cdn/components/time-series/time-series.js +24 -24
  343. package/cdn/components/toast/toast.component.js +4 -4
  344. package/cdn/components/toast/toast.js +5 -5
  345. package/cdn/components/toggle/toggle.component.js +4 -4
  346. package/cdn/components/toggle/toggle.js +5 -5
  347. package/cdn/components/tooltip/tooltip.component.js +3 -3
  348. package/cdn/components/tooltip/tooltip.js +4 -4
  349. package/cdn/components/variable-combobox/lib.js +3 -3
  350. package/cdn/components/variable-combobox/variable-combobox.component.d.ts +4 -1
  351. package/cdn/components/variable-combobox/variable-combobox.component.js +15 -15
  352. package/cdn/components/variable-combobox/variable-combobox.controller.js +4 -4
  353. package/cdn/components/variable-combobox/variable-combobox.js +16 -16
  354. package/cdn/components/variable-keyword-search/variable-keyword-search.component.d.ts +4 -1
  355. package/cdn/components/variable-keyword-search/variable-keyword-search.component.js +14 -14
  356. package/cdn/components/variable-keyword-search/variable-keyword-search.controller.js +3 -3
  357. package/cdn/components/variable-keyword-search/variable-keyword-search.js +15 -15
  358. package/cdn/custom-elements.json +2648 -2570
  359. package/cdn/internal/animate.d.ts +3 -3
  360. package/cdn/metadata-catalog/cmr-catalog.d.ts +2 -1
  361. package/cdn/metadata-catalog/queries.d.ts +1 -0
  362. package/cdn/metadata-catalog/types.d.ts +13 -0
  363. package/cdn/react/accordion/index.js +6 -6
  364. package/cdn/react/alert/index.js +4 -4
  365. package/cdn/react/avatar/index.js +8 -8
  366. package/cdn/react/badge/index.js +3 -3
  367. package/cdn/react/breadcrumb/index.js +3 -3
  368. package/cdn/react/breadcrumbs/index.js +3 -3
  369. package/cdn/react/browse-variables/index.js +19 -19
  370. package/cdn/react/button/index.js +8 -8
  371. package/cdn/react/button-group/index.js +3 -3
  372. package/cdn/react/caption/index.js +3 -3
  373. package/cdn/react/card/index.js +3 -3
  374. package/cdn/react/checkbox/index.js +9 -9
  375. package/cdn/react/chip/index.js +3 -3
  376. package/cdn/react/combobox/index.js +7 -7
  377. package/cdn/react/data-access/index.js +30 -28
  378. package/cdn/react/data-grid/index.js +6 -6
  379. package/cdn/react/data-rods/index.js +39 -39
  380. package/cdn/react/data-subsetter/index.js +46 -46
  381. package/cdn/react/data-subsetter-history/index.js +47 -47
  382. package/cdn/react/date-picker/index.js +15 -15
  383. package/cdn/react/date-range-slider/index.js +3 -3
  384. package/cdn/react/dialog/index.js +11 -11
  385. package/cdn/react/divider/index.js +3 -3
  386. package/cdn/react/dropdown/index.js +4 -4
  387. package/cdn/react/earthdata-login/index.js +16 -16
  388. package/cdn/react/file-upload/index.js +3 -3
  389. package/cdn/react/icon/index.js +4 -4
  390. package/cdn/react/index.d.ts +12 -12
  391. package/cdn/react/index.js +198 -198
  392. package/cdn/react/input/index.js +9 -9
  393. package/cdn/react/loader/index.js +3 -3
  394. package/cdn/react/login/index.js +13 -13
  395. package/cdn/react/map/index.js +5 -5
  396. package/cdn/react/menu/index.js +3 -3
  397. package/cdn/react/menu-item/index.js +12 -12
  398. package/cdn/react/option/index.js +7 -7
  399. package/cdn/react/pagination/index.js +7 -7
  400. package/cdn/react/plot/index.js +3 -3
  401. package/cdn/react/plot-toolbar/index.js +16 -16
  402. package/cdn/react/popup/index.js +3 -3
  403. package/cdn/react/progress-bar/index.js +3 -3
  404. package/cdn/react/radio/index.js +5 -5
  405. package/cdn/react/radio-group/index.js +3 -3
  406. package/cdn/react/scroll-hint/index.js +5 -5
  407. package/cdn/react/select/index.js +11 -11
  408. package/cdn/react/site-header/index.js +6 -6
  409. package/cdn/react/site-navigation/index.js +3 -3
  410. package/cdn/react/skeleton/index.js +3 -3
  411. package/cdn/react/slider/index.js +3 -3
  412. package/cdn/react/spatial-picker/index.js +16 -16
  413. package/cdn/react/status-indicator/index.js +3 -3
  414. package/cdn/react/stepper/index.js +3 -3
  415. package/cdn/react/stepper-step/index.js +7 -7
  416. package/cdn/react/tab/index.js +7 -7
  417. package/cdn/react/tab-panel/index.js +3 -3
  418. package/cdn/react/tabs/index.js +7 -7
  419. package/cdn/react/tag/index.js +7 -7
  420. package/cdn/react/textarea/index.js +5 -5
  421. package/cdn/react/time-average-map/index.js +25 -25
  422. package/cdn/react/time-series/index.js +24 -24
  423. package/cdn/react/toast/index.js +5 -5
  424. package/cdn/react/toggle/index.js +5 -5
  425. package/cdn/react/tooltip/index.js +4 -4
  426. package/cdn/react/variable-combobox/index.js +16 -16
  427. package/cdn/react/variable-keyword-search/index.js +15 -15
  428. package/cdn/terra-ui-components.js +186 -186
  429. package/cdn/types/vue/index.d.ts +695 -684
  430. package/cdn/utilities/mimetypes.d.ts +1 -1
  431. package/cdn/utilities/mimetypes.js +1 -1
  432. package/cdn/vscode.html-custom-data.json +343 -340
  433. package/cdn/web-types.json +1897 -1878
  434. package/dist/chunks/chunk.2HPCVNQL.js +21 -0
  435. package/dist/chunks/chunk.2OT2UXF4.js +11 -0
  436. package/dist/chunks/chunk.32NG2VNQ.js +11 -0
  437. package/dist/chunks/chunk.36JXOS6Y.js +21 -0
  438. package/dist/chunks/chunk.3CCSEGFN.js +21 -0
  439. package/dist/chunks/chunk.3GSDEVDN.js +52 -0
  440. package/dist/chunks/chunk.3JAVPASP.js +609 -0
  441. package/dist/chunks/chunk.3L4WRUGE.js +74 -0
  442. package/dist/chunks/chunk.3NOU5S4K.js +91 -0
  443. package/dist/chunks/chunk.3RMARKUW.js +24 -0
  444. package/dist/chunks/chunk.3SVUDGSO.js +11 -0
  445. package/dist/chunks/chunk.3WCZNEVP.js +52 -0
  446. package/dist/chunks/chunk.3XVU2CMW.js +25 -0
  447. package/dist/chunks/chunk.42RWQXVF.js +11 -0
  448. package/dist/chunks/chunk.44B2QB57.js +11 -0
  449. package/dist/chunks/chunk.44C2RMYG.js +345 -0
  450. package/dist/chunks/chunk.4KI6GHHX.js +11 -0
  451. package/dist/chunks/chunk.4TO6RQDT.js +11 -0
  452. package/dist/chunks/chunk.4UBHRRUU.js +220 -0
  453. package/dist/chunks/chunk.4YCY2DV3.js +21 -0
  454. package/dist/chunks/chunk.4YYCBOVI.js +11 -0
  455. package/dist/chunks/chunk.524NKNPG.js +39 -0
  456. package/dist/chunks/chunk.5EJAFKZ7.js +21 -0
  457. package/dist/chunks/chunk.5V4FAK7C.js +11 -0
  458. package/dist/chunks/chunk.5YSU3HL7.js +33 -0
  459. package/dist/chunks/chunk.64SWCNHI.js +262 -0
  460. package/dist/chunks/chunk.6AVQFT4P.js +48 -0
  461. package/dist/chunks/chunk.6ITSS4GH.js +11 -0
  462. package/dist/chunks/chunk.6KCKKNYD.js +48 -0
  463. package/dist/chunks/chunk.6QSTETYN.js +11 -0
  464. package/dist/chunks/chunk.6TW6DP7W.js +11 -0
  465. package/dist/chunks/chunk.74HB6B26.js +27 -0
  466. package/dist/chunks/chunk.7FZCDHMN.js +11 -0
  467. package/dist/chunks/chunk.7MXXFSLC.js +24 -0
  468. package/dist/chunks/chunk.7QOQXG7V.js +280 -0
  469. package/dist/chunks/chunk.A54SXMF6.js +11 -0
  470. package/dist/chunks/chunk.A75XMZQF.js +91 -0
  471. package/dist/chunks/chunk.A7AZEOWS.js +21 -0
  472. package/dist/chunks/chunk.ABJSJSVR.js +451 -0
  473. package/dist/chunks/chunk.ACW2XVAY.js +29 -0
  474. package/dist/chunks/chunk.AJY5IKAP.js +596 -0
  475. package/dist/chunks/chunk.ANAQ3U23.js +11 -0
  476. package/dist/chunks/chunk.ANLBJK37.js +25 -0
  477. package/dist/chunks/chunk.AYMNVM3K.js +422 -0
  478. package/dist/chunks/chunk.AYXVVA52.js +24 -0
  479. package/dist/chunks/chunk.B7H4U76E.js +21 -0
  480. package/dist/chunks/chunk.BBCOXXME.js +75 -0
  481. package/dist/chunks/chunk.BENDF532.js +11 -0
  482. package/dist/chunks/chunk.BRDHFOSA.js +11 -0
  483. package/dist/chunks/chunk.C24Z45OK.js +58 -0
  484. package/dist/chunks/chunk.C5ZKA7VW.js +25 -0
  485. package/dist/chunks/chunk.CBMMWN53.js +11 -0
  486. package/dist/chunks/chunk.CIDFDZRW.js +230 -0
  487. package/dist/chunks/chunk.CTUS2BRJ.js +21 -0
  488. package/dist/chunks/chunk.CVM4QQIH.js +11 -0
  489. package/dist/chunks/chunk.CWP2OCTX.js +28 -0
  490. package/dist/chunks/chunk.DBWF2K7N.js +24 -0
  491. package/dist/chunks/chunk.DFOY2RXN.js +121 -0
  492. package/dist/chunks/chunk.DKRMDAXH.js +21 -0
  493. package/dist/chunks/chunk.DLG3ISTI.js +345 -0
  494. package/dist/chunks/chunk.DS2GXZ4J.js +64 -0
  495. package/dist/chunks/chunk.EFW6UAEH.js +11 -0
  496. package/dist/chunks/chunk.ENBFHQ3L.js +291 -0
  497. package/dist/chunks/chunk.EPPQF7KD.js +24 -0
  498. package/dist/chunks/chunk.EQ6VDEGW.js +11 -0
  499. package/dist/chunks/chunk.ET4GP57T.js +213 -0
  500. package/dist/chunks/chunk.ETNOCBXV.js +259 -0
  501. package/dist/chunks/chunk.F5A3CI7J.js +21 -0
  502. package/dist/chunks/chunk.F6YXPWWD.js +11 -0
  503. package/dist/chunks/chunk.FDY3GDIO.js +21 -0
  504. package/dist/chunks/chunk.FGIV23AN.js +29 -0
  505. package/dist/chunks/chunk.FKS74UUE.js +21 -0
  506. package/dist/chunks/chunk.FQFJCEW7.js +402 -0
  507. package/dist/chunks/chunk.FQJUCC6Z.js +180 -0
  508. package/dist/chunks/chunk.FTQDFGAR.js +28 -0
  509. package/dist/chunks/chunk.GRBQETKI.js +21 -0
  510. package/dist/chunks/chunk.GT6B4BF3.js +11 -0
  511. package/dist/chunks/chunk.GTMUZKD3.js +11 -0
  512. package/dist/chunks/chunk.HARVA2IP.js +21 -0
  513. package/dist/chunks/chunk.HK5E3MB4.js +11 -0
  514. package/dist/chunks/chunk.HOMKMLDI.js +986 -0
  515. package/dist/chunks/chunk.HSGP3NJV.js +112 -0
  516. package/dist/chunks/chunk.HUDMN5IZ.js +11 -0
  517. package/dist/chunks/chunk.HWE36KUL.js +214 -0
  518. package/dist/chunks/chunk.IJQWDDTY.js +21 -0
  519. package/dist/chunks/chunk.IKMWLDCT.js +21 -0
  520. package/dist/chunks/chunk.IP6RYMMF.js +11 -0
  521. package/dist/chunks/chunk.IW47OQDJ.js +27 -0
  522. package/dist/chunks/chunk.IYF6RYNW.js +11 -0
  523. package/dist/chunks/chunk.JCQVYTHW.js +21 -0
  524. package/dist/chunks/chunk.JHMPD5S3.js +11 -0
  525. package/dist/chunks/chunk.JK62FCBM.js +277 -0
  526. package/dist/chunks/chunk.JTJTZNBC.js +11 -0
  527. package/dist/chunks/chunk.K66DWQG7.js +474 -0
  528. package/dist/chunks/chunk.K6WBYPK4.js +2228 -0
  529. package/dist/chunks/chunk.K7B5G7VZ.js +484 -0
  530. package/dist/chunks/chunk.K7QSTEOZ.js +11 -0
  531. package/dist/chunks/chunk.KTF6ZVQC.js +247 -0
  532. package/dist/chunks/chunk.KW76EJFU.js +2277 -0
  533. package/dist/chunks/chunk.LENFD4DV.js +844 -0
  534. package/dist/chunks/chunk.LIJJ2CVM.js +21 -0
  535. package/dist/chunks/chunk.LPCY54WK.js +11 -0
  536. package/dist/chunks/chunk.LPYTOTCB.js +124 -0
  537. package/dist/chunks/chunk.MFCOSXFW.js +21 -0
  538. package/dist/chunks/chunk.MGDJ2LD5.js +220 -0
  539. package/dist/chunks/chunk.MICLMHWK.js +11 -0
  540. package/dist/chunks/chunk.MNZZPXWB.js +11 -0
  541. package/dist/chunks/chunk.MQVNIT4S.js +973 -0
  542. package/dist/chunks/chunk.MTAR5BJL.js +153 -0
  543. package/dist/chunks/chunk.MZ4FDVFI.js +139 -0
  544. package/dist/chunks/chunk.N363OJZ2.js +89 -0
  545. package/dist/chunks/chunk.NLK5RRJT.js +11 -0
  546. package/dist/chunks/chunk.NUD2D7OX.js +11 -0
  547. package/dist/chunks/chunk.NXYNTUNF.js +24 -0
  548. package/dist/chunks/chunk.NY5YVZRV.js +11 -0
  549. package/dist/chunks/chunk.NZNBKBV5.js +11 -0
  550. package/dist/chunks/chunk.OHLDTKQU.js +21 -0
  551. package/dist/chunks/chunk.OIS2I2WX.js +11 -0
  552. package/dist/chunks/chunk.OKCQAPIO.js +11 -0
  553. package/dist/chunks/chunk.ON3YVM46.js +138 -0
  554. package/dist/chunks/chunk.ORHU4TOP.js +25 -0
  555. package/dist/chunks/chunk.OVF3LEJ5.js +61 -0
  556. package/dist/chunks/chunk.OVYETBCA.js +11 -0
  557. package/dist/chunks/chunk.OYOOZ5CY.js +20 -0
  558. package/dist/chunks/chunk.PHNX45ET.js +93 -0
  559. package/dist/chunks/chunk.PNW5CV46.js +11 -0
  560. package/dist/chunks/chunk.POB3HHX4.js +11 -0
  561. package/dist/chunks/chunk.PUQIBC6P.js +525 -0
  562. package/dist/chunks/chunk.PX7JSWL7.js +67 -0
  563. package/dist/chunks/chunk.QHDDMY67.js +21 -0
  564. package/dist/chunks/chunk.QP5XM7WT.js +720 -0
  565. package/dist/chunks/chunk.QQMW6GT2.js +1045 -0
  566. package/dist/chunks/chunk.QQWZTESV.js +21 -0
  567. package/dist/chunks/chunk.QVJT4Q7B.js +24 -0
  568. package/dist/chunks/chunk.R4KWN2HX.js +443 -0
  569. package/dist/chunks/chunk.RBEXUNHZ.js +581 -0
  570. package/dist/chunks/chunk.REHHQZMY.js +11 -0
  571. package/dist/chunks/chunk.RJRVYB3F.js +83 -0
  572. package/dist/chunks/chunk.RNNZRROI.js +85 -0
  573. package/dist/chunks/chunk.RQHF447H.js +123 -0
  574. package/dist/chunks/chunk.RWTN6VR5.js +11 -0
  575. package/dist/chunks/chunk.RYP4SV66.js +11 -0
  576. package/dist/chunks/chunk.S5JREWKQ.js +21 -0
  577. package/dist/chunks/chunk.S65PVGZW.js +11 -0
  578. package/dist/chunks/chunk.SJVXFIWD.js +43 -0
  579. package/dist/chunks/chunk.SMIEZHJ2.js +11 -0
  580. package/dist/chunks/chunk.SWGKKZUD.js +27 -0
  581. package/dist/chunks/chunk.SYBFIXLK.js +11 -0
  582. package/dist/chunks/chunk.SZAADZKK.js +252 -0
  583. package/dist/chunks/chunk.T7XC2TPO.js +43 -0
  584. package/dist/chunks/chunk.TFN2HUUW.js +78 -0
  585. package/dist/chunks/chunk.TJ5S7Y7N.js +11 -0
  586. package/dist/chunks/chunk.TKTDW7K4.js +592 -0
  587. package/dist/chunks/chunk.TXGZZ232.js +26 -0
  588. package/dist/chunks/chunk.U22BJ3HS.js +24 -0
  589. package/dist/chunks/chunk.U6JA4K4J.js +24 -0
  590. package/dist/chunks/chunk.UCXSNYW7.js +24 -0
  591. package/dist/chunks/chunk.UHIHGVN4.js +31 -0
  592. package/dist/chunks/chunk.UNJJ4K5X.js +24 -0
  593. package/dist/chunks/chunk.UNO3VVAK.js +11 -0
  594. package/dist/chunks/chunk.UU2S72KN.js +30 -0
  595. package/dist/chunks/chunk.V7PI7GT2.js +21 -0
  596. package/dist/chunks/chunk.VBCVUNIU.js +67 -0
  597. package/dist/chunks/chunk.VBWBPTPK.js +230 -0
  598. package/dist/chunks/chunk.VIBAVNO2.js +11 -0
  599. package/dist/chunks/chunk.VOGQH6VT.js +28 -0
  600. package/dist/chunks/chunk.VWZX32FU.js +145 -0
  601. package/dist/chunks/chunk.VYXIWUES.js +11 -0
  602. package/dist/chunks/chunk.W52CDXRW.js +11 -0
  603. package/dist/chunks/chunk.WBEYZIEP.js +24 -0
  604. package/dist/chunks/chunk.WFDKB6ZX.js +21 -0
  605. package/dist/chunks/chunk.WHFZNJAZ.js +409 -0
  606. package/dist/chunks/chunk.WJT6IE7Z.js +28 -0
  607. package/dist/chunks/chunk.WPBID72S.js +11 -0
  608. package/dist/chunks/chunk.WPUBNP6J.js +355 -0
  609. package/dist/chunks/chunk.WUSLL2E3.js +86 -0
  610. package/dist/chunks/chunk.WWDJTRJH.js +264 -0
  611. package/dist/chunks/chunk.X4HRSJ4F.js +11 -0
  612. package/dist/chunks/chunk.XA65IBXV.js +11 -0
  613. package/dist/chunks/chunk.XB6CG3ZS.js +24 -0
  614. package/dist/chunks/chunk.XBRKSIRT.js +97 -0
  615. package/dist/chunks/chunk.XC6HL6VP.js +101 -0
  616. package/dist/chunks/chunk.XHJJAZ6W.js +11 -0
  617. package/dist/chunks/chunk.XIFDLBOB.js +25 -0
  618. package/dist/chunks/chunk.XIXMPQO2.js +21 -0
  619. package/dist/chunks/chunk.XMGVOXBG.js +11 -0
  620. package/dist/chunks/chunk.XQHIGAKF.js +1122 -0
  621. package/dist/chunks/chunk.XQVFPFWL.js +245 -0
  622. package/dist/chunks/chunk.XYQ5OEQP.js +190 -0
  623. package/dist/chunks/chunk.YDUPN3OG.js +180 -0
  624. package/dist/chunks/chunk.YEL7UCDK.js +477 -0
  625. package/dist/chunks/chunk.YIGP5HKO.js +26 -0
  626. package/dist/chunks/chunk.YLUFHBYX.js +21 -0
  627. package/dist/chunks/chunk.YP3AWZ7P.js +11 -0
  628. package/dist/chunks/chunk.YY5TU7AJ.js +21 -0
  629. package/dist/chunks/chunk.Z7RT3KHG.js +24 -0
  630. package/dist/chunks/chunk.ZDDLFJFZ.js +27 -0
  631. package/dist/chunks/chunk.ZHCDFME3.js +272 -0
  632. package/dist/chunks/chunk.ZJISEOPZ.js +11 -0
  633. package/dist/chunks/chunk.ZKLP6636.js +180 -0
  634. package/dist/chunks/chunk.ZLLSS62V.js +21 -0
  635. package/dist/chunks/chunk.ZLZJXLHD.js +21 -0
  636. package/dist/chunks/chunk.ZVEB7QG2.js +143 -0
  637. package/dist/components/accordion/accordion.component.js +5 -5
  638. package/dist/components/accordion/accordion.js +6 -6
  639. package/dist/components/alert/alert.component.js +3 -3
  640. package/dist/components/alert/alert.js +4 -4
  641. package/dist/components/avatar/avatar.component.js +5 -5
  642. package/dist/components/avatar/avatar.js +6 -6
  643. package/dist/components/badge/badge.component.js +2 -2
  644. package/dist/components/badge/badge.js +3 -3
  645. package/dist/components/breadcrumb/breadcrumb.component.js +2 -2
  646. package/dist/components/breadcrumb/breadcrumb.js +3 -3
  647. package/dist/components/breadcrumbs/breadcrumbs.component.js +2 -2
  648. package/dist/components/breadcrumbs/breadcrumbs.js +3 -3
  649. package/dist/components/browse-variables/browse-variables.component.js +15 -15
  650. package/dist/components/browse-variables/browse-variables.controller.js +3 -3
  651. package/dist/components/browse-variables/browse-variables.js +16 -16
  652. package/dist/components/button/button.component.js +5 -5
  653. package/dist/components/button/button.js +6 -6
  654. package/dist/components/button-group/button-group.component.js +2 -2
  655. package/dist/components/button-group/button-group.js +3 -3
  656. package/dist/components/caption/caption.component.js +2 -2
  657. package/dist/components/caption/caption.js +3 -3
  658. package/dist/components/card/card.component.js +2 -2
  659. package/dist/components/card/card.js +3 -3
  660. package/dist/components/checkbox/checkbox.component.js +5 -5
  661. package/dist/components/checkbox/checkbox.js +6 -6
  662. package/dist/components/chip/chip.component.js +2 -2
  663. package/dist/components/chip/chip.js +3 -3
  664. package/dist/components/combobox/combobox.component.d.ts +4 -1
  665. package/dist/components/combobox/combobox.component.js +2 -2
  666. package/dist/components/combobox/combobox.js +3 -3
  667. package/dist/components/data-access/data-access.component.d.ts +2 -0
  668. package/dist/components/data-access/data-access.component.js +23 -21
  669. package/dist/components/data-access/data-access.controller.js +3 -3
  670. package/dist/components/data-access/data-access.js +24 -22
  671. package/dist/components/data-grid/data-grid.component.js +3 -3
  672. package/dist/components/data-grid/data-grid.js +4 -4
  673. package/dist/components/data-rods/data-rods.component.js +30 -30
  674. package/dist/components/data-rods/data-rods.js +31 -31
  675. package/dist/components/data-subsetter/data-subsetter.component.d.ts +2 -1
  676. package/dist/components/data-subsetter/data-subsetter.component.js +39 -39
  677. package/dist/components/data-subsetter/data-subsetter.controller.d.ts +3 -1
  678. package/dist/components/data-subsetter/data-subsetter.controller.js +3 -3
  679. package/dist/components/data-subsetter/data-subsetter.js +40 -40
  680. package/dist/components/data-subsetter/data-subsetter.styles.js +1 -1
  681. package/dist/components/data-subsetter/notebooks/subsetter-notebook.js +1 -1
  682. package/dist/components/data-subsetter-history/data-subsetter-history.component.js +40 -40
  683. package/dist/components/data-subsetter-history/data-subsetter-history.js +41 -41
  684. package/dist/components/date-picker/date-picker.component.d.ts +10 -0
  685. package/dist/components/date-picker/date-picker.component.js +10 -10
  686. package/dist/components/date-picker/date-picker.js +11 -11
  687. package/dist/components/date-range-slider/date-range-slider.component.js +2 -2
  688. package/dist/components/date-range-slider/date-range-slider.js +3 -3
  689. package/dist/components/dialog/dialog.component.js +8 -8
  690. package/dist/components/dialog/dialog.js +9 -9
  691. package/dist/components/dialog/dialog.styles.js +1 -1
  692. package/dist/components/divider/divider.component.js +2 -2
  693. package/dist/components/divider/divider.js +3 -3
  694. package/dist/components/dropdown/dropdown.component.js +3 -3
  695. package/dist/components/dropdown/dropdown.js +4 -4
  696. package/dist/components/earthdata-login/earthdata-login.component.js +12 -12
  697. package/dist/components/earthdata-login/earthdata-login.js +13 -13
  698. package/dist/components/file-upload/file-upload.component.js +2 -2
  699. package/dist/components/file-upload/file-upload.js +3 -3
  700. package/dist/components/icon/icon.component.js +3 -3
  701. package/dist/components/icon/icon.js +4 -4
  702. package/dist/components/input/input.component.js +5 -5
  703. package/dist/components/input/input.js +6 -6
  704. package/dist/components/loader/loader.component.js +2 -2
  705. package/dist/components/loader/loader.js +3 -3
  706. package/dist/components/login/login.component.js +10 -10
  707. package/dist/components/login/login.js +11 -11
  708. package/dist/components/map/leaflet-utils.d.ts +1 -1
  709. package/dist/components/map/map.component.js +2 -2
  710. package/dist/components/map/map.js +3 -3
  711. package/dist/components/menu/menu.component.js +2 -2
  712. package/dist/components/menu/menu.js +3 -3
  713. package/dist/components/menu-item/menu-item.component.js +7 -7
  714. package/dist/components/menu-item/menu-item.js +8 -8
  715. package/dist/components/option/option.component.js +4 -4
  716. package/dist/components/option/option.js +5 -5
  717. package/dist/components/pagination/pagination.component.js +4 -4
  718. package/dist/components/pagination/pagination.js +5 -5
  719. package/dist/components/plot/plot.component.js +2 -2
  720. package/dist/components/plot/plot.js +3 -3
  721. package/dist/components/plot-toolbar/notebooks/time-averaged-map-notebook.js +1 -1
  722. package/dist/components/plot-toolbar/notebooks/time-series-notebook.js +1 -1
  723. package/dist/components/plot-toolbar/plot-toolbar.component.js +12 -12
  724. package/dist/components/plot-toolbar/plot-toolbar.controller.js +3 -3
  725. package/dist/components/plot-toolbar/plot-toolbar.js +13 -13
  726. package/dist/components/popup/popup.component.js +2 -2
  727. package/dist/components/popup/popup.js +3 -3
  728. package/dist/components/progress-bar/progress-bar.component.js +2 -2
  729. package/dist/components/progress-bar/progress-bar.js +3 -3
  730. package/dist/components/radio/radio.component.js +2 -2
  731. package/dist/components/radio/radio.js +3 -3
  732. package/dist/components/radio-group/radio-group.component.js +2 -2
  733. package/dist/components/radio-group/radio-group.js +3 -3
  734. package/dist/components/scroll-hint/scroll-hint.component.js +4 -4
  735. package/dist/components/scroll-hint/scroll-hint.js +5 -5
  736. package/dist/components/select/select.component.js +8 -8
  737. package/dist/components/select/select.js +9 -9
  738. package/dist/components/site-header/site-header.component.js +5 -5
  739. package/dist/components/site-header/site-header.js +5 -5
  740. package/dist/components/site-navigation/site-navigation.component.js +2 -2
  741. package/dist/components/site-navigation/site-navigation.js +2 -2
  742. package/dist/components/skeleton/skeleton.component.js +2 -2
  743. package/dist/components/skeleton/skeleton.js +3 -3
  744. package/dist/components/slider/slider.component.js +2 -2
  745. package/dist/components/slider/slider.js +3 -3
  746. package/dist/components/spatial-picker/spatial-picker.component.js +10 -10
  747. package/dist/components/spatial-picker/spatial-picker.js +11 -11
  748. package/dist/components/status-indicator/status-indicator.component.js +2 -2
  749. package/dist/components/status-indicator/status-indicator.js +3 -3
  750. package/dist/components/stepper/stepper.component.js +2 -2
  751. package/dist/components/stepper/stepper.js +3 -3
  752. package/dist/components/stepper-step/stepper-step.component.js +4 -4
  753. package/dist/components/stepper-step/stepper-step.js +5 -5
  754. package/dist/components/tab/tab.component.js +4 -4
  755. package/dist/components/tab/tab.js +5 -5
  756. package/dist/components/tab-panel/tab-panel.component.js +2 -2
  757. package/dist/components/tab-panel/tab-panel.js +3 -3
  758. package/dist/components/tabs/tabs.component.js +4 -4
  759. package/dist/components/tabs/tabs.js +5 -5
  760. package/dist/components/tag/tag.component.js +4 -4
  761. package/dist/components/tag/tag.js +5 -5
  762. package/dist/components/textarea/textarea.component.js +2 -2
  763. package/dist/components/textarea/textarea.js +3 -3
  764. package/dist/components/time-average-map/time-average-map.component.js +21 -21
  765. package/dist/components/time-average-map/time-average-map.js +22 -22
  766. package/dist/components/time-series/time-series.component.js +20 -20
  767. package/dist/components/time-series/time-series.js +21 -21
  768. package/dist/components/toast/toast.component.js +4 -4
  769. package/dist/components/toast/toast.js +5 -5
  770. package/dist/components/toggle/toggle.component.js +2 -2
  771. package/dist/components/toggle/toggle.js +3 -3
  772. package/dist/components/tooltip/tooltip.component.js +3 -3
  773. package/dist/components/tooltip/tooltip.js +4 -4
  774. package/dist/components/variable-combobox/variable-combobox.component.d.ts +4 -1
  775. package/dist/components/variable-combobox/variable-combobox.component.js +8 -8
  776. package/dist/components/variable-combobox/variable-combobox.js +9 -9
  777. package/dist/components/variable-keyword-search/variable-keyword-search.component.d.ts +4 -1
  778. package/dist/components/variable-keyword-search/variable-keyword-search.component.js +11 -11
  779. package/dist/components/variable-keyword-search/variable-keyword-search.controller.js +3 -3
  780. package/dist/components/variable-keyword-search/variable-keyword-search.js +12 -12
  781. package/dist/custom-elements.json +2648 -2570
  782. package/dist/internal/animate.d.ts +3 -3
  783. package/dist/metadata-catalog/cmr-catalog.d.ts +2 -1
  784. package/dist/metadata-catalog/queries.d.ts +1 -0
  785. package/dist/metadata-catalog/types.d.ts +13 -0
  786. package/dist/react/accordion/index.js +6 -6
  787. package/dist/react/alert/index.js +4 -4
  788. package/dist/react/avatar/index.js +6 -6
  789. package/dist/react/badge/index.js +3 -3
  790. package/dist/react/breadcrumb/index.js +3 -3
  791. package/dist/react/breadcrumbs/index.js +3 -3
  792. package/dist/react/browse-variables/index.js +16 -16
  793. package/dist/react/button/index.js +6 -6
  794. package/dist/react/button-group/index.js +3 -3
  795. package/dist/react/caption/index.js +3 -3
  796. package/dist/react/card/index.js +3 -3
  797. package/dist/react/checkbox/index.js +6 -6
  798. package/dist/react/chip/index.js +3 -3
  799. package/dist/react/combobox/index.js +3 -3
  800. package/dist/react/data-access/index.js +24 -22
  801. package/dist/react/data-grid/index.js +4 -4
  802. package/dist/react/data-rods/index.js +31 -31
  803. package/dist/react/data-subsetter/index.js +40 -40
  804. package/dist/react/data-subsetter-history/index.js +41 -41
  805. package/dist/react/date-picker/index.js +11 -11
  806. package/dist/react/date-range-slider/index.js +3 -3
  807. package/dist/react/dialog/index.js +9 -9
  808. package/dist/react/divider/index.js +3 -3
  809. package/dist/react/dropdown/index.js +4 -4
  810. package/dist/react/earthdata-login/index.js +13 -13
  811. package/dist/react/file-upload/index.js +3 -3
  812. package/dist/react/icon/index.js +4 -4
  813. package/dist/react/index.d.ts +12 -12
  814. package/dist/react/index.js +190 -190
  815. package/dist/react/input/index.js +6 -6
  816. package/dist/react/loader/index.js +3 -3
  817. package/dist/react/login/index.js +11 -11
  818. package/dist/react/map/index.js +3 -3
  819. package/dist/react/menu/index.js +3 -3
  820. package/dist/react/menu-item/index.js +8 -8
  821. package/dist/react/option/index.js +5 -5
  822. package/dist/react/pagination/index.js +5 -5
  823. package/dist/react/plot/index.js +3 -3
  824. package/dist/react/plot-toolbar/index.js +13 -13
  825. package/dist/react/popup/index.js +3 -3
  826. package/dist/react/progress-bar/index.js +3 -3
  827. package/dist/react/radio/index.js +3 -3
  828. package/dist/react/radio-group/index.js +3 -3
  829. package/dist/react/scroll-hint/index.js +5 -5
  830. package/dist/react/select/index.js +9 -9
  831. package/dist/react/site-header/index.js +6 -6
  832. package/dist/react/site-navigation/index.js +3 -3
  833. package/dist/react/skeleton/index.js +3 -3
  834. package/dist/react/slider/index.js +3 -3
  835. package/dist/react/spatial-picker/index.js +11 -11
  836. package/dist/react/status-indicator/index.js +3 -3
  837. package/dist/react/stepper/index.js +3 -3
  838. package/dist/react/stepper-step/index.js +5 -5
  839. package/dist/react/tab/index.js +5 -5
  840. package/dist/react/tab-panel/index.js +3 -3
  841. package/dist/react/tabs/index.js +5 -5
  842. package/dist/react/tag/index.js +5 -5
  843. package/dist/react/textarea/index.js +3 -3
  844. package/dist/react/time-average-map/index.js +22 -22
  845. package/dist/react/time-series/index.js +21 -21
  846. package/dist/react/toast/index.js +5 -5
  847. package/dist/react/toggle/index.js +3 -3
  848. package/dist/react/tooltip/index.js +4 -4
  849. package/dist/react/variable-combobox/index.js +9 -9
  850. package/dist/react/variable-keyword-search/index.js +12 -12
  851. package/dist/terra-ui-components.js +178 -178
  852. package/dist/terra_ui_components-0.0.167-py3-none-any.whl +0 -0
  853. package/dist/terra_ui_components-0.0.167.tar.gz +0 -0
  854. package/dist/types/vue/index.d.ts +695 -684
  855. package/dist/utilities/mimetypes.d.ts +1 -1
  856. package/dist/utilities/mimetypes.js +1 -1
  857. package/dist/vscode.html-custom-data.json +343 -340
  858. package/dist/web-types.json +1897 -1878
  859. package/package.json +1 -1
  860. package/cdn/chunks/chunk.2EWZZROF.js +0 -19
  861. package/cdn/chunks/chunk.2NM4U2LU.js +0 -187
  862. package/cdn/chunks/chunk.2S7FXDXE.js +0 -19
  863. package/cdn/chunks/chunk.2TM2DOUK.js +0 -34
  864. package/cdn/chunks/chunk.2U6GNQHA.js +0 -32
  865. package/cdn/chunks/chunk.2UNOREJQ.js +0 -19
  866. package/cdn/chunks/chunk.2VNRC5N4.js +0 -19
  867. package/cdn/chunks/chunk.2VYORYI2.js +0 -189
  868. package/cdn/chunks/chunk.2Z7U2X7L.js +0 -29
  869. package/cdn/chunks/chunk.3ALJUIVF.js +0 -19
  870. package/cdn/chunks/chunk.3BYVGEYV.js +0 -32
  871. package/cdn/chunks/chunk.3KKPV5OI.js +0 -288
  872. package/cdn/chunks/chunk.3M7YL7BY.js +0 -34
  873. package/cdn/chunks/chunk.3UNTOIV2.js +0 -29
  874. package/cdn/chunks/chunk.3WIWERHG.js +0 -41
  875. package/cdn/chunks/chunk.3WPT4WPA.js +0 -158
  876. package/cdn/chunks/chunk.3XEK6ZJA.js +0 -19
  877. package/cdn/chunks/chunk.45XFWGEL.js +0 -110
  878. package/cdn/chunks/chunk.46WWZTCI.js +0 -39
  879. package/cdn/chunks/chunk.4AWQ3P7Z.js +0 -19
  880. package/cdn/chunks/chunk.4BS3A266.js +0 -19
  881. package/cdn/chunks/chunk.4PDBX7DI.js +0 -37
  882. package/cdn/chunks/chunk.4QFIJBCO.js +0 -60
  883. package/cdn/chunks/chunk.4SH2XSLJ.js +0 -47
  884. package/cdn/chunks/chunk.4YZDZQ4Y.js +0 -32
  885. package/cdn/chunks/chunk.53RRYVCX.js +0 -29
  886. package/cdn/chunks/chunk.57GXVKQI.js +0 -29
  887. package/cdn/chunks/chunk.5SABEIEW.js +0 -359
  888. package/cdn/chunks/chunk.5XSRMYEO.js +0 -132
  889. package/cdn/chunks/chunk.6BPRQKWC.js +0 -19
  890. package/cdn/chunks/chunk.6PDKWTOW.js +0 -279
  891. package/cdn/chunks/chunk.6TFBNK24.js +0 -19
  892. package/cdn/chunks/chunk.6Y6CEFC4.js +0 -19
  893. package/cdn/chunks/chunk.74ZEGEWV.js +0 -19
  894. package/cdn/chunks/chunk.77ZBM3DP.js +0 -662
  895. package/cdn/chunks/chunk.7DBJ6F7W.js +0 -35
  896. package/cdn/chunks/chunk.7IJFDHCX.js +0 -32
  897. package/cdn/chunks/chunk.7JN43LMT.js +0 -19
  898. package/cdn/chunks/chunk.7JXWQSAX.js +0 -36
  899. package/cdn/chunks/chunk.7NLSXSIB.js +0 -29
  900. package/cdn/chunks/chunk.7PFNDNEY.js +0 -234
  901. package/cdn/chunks/chunk.7R3QM2PS.js +0 -30
  902. package/cdn/chunks/chunk.7S3RPGH3.js +0 -29
  903. package/cdn/chunks/chunk.7THLKNXU.js +0 -29
  904. package/cdn/chunks/chunk.7UCPGD44.js +0 -106
  905. package/cdn/chunks/chunk.7XDSA7NO.js +0 -278
  906. package/cdn/chunks/chunk.7XIXO5VA.js +0 -19
  907. package/cdn/chunks/chunk.7YGWLDY2.js +0 -19
  908. package/cdn/chunks/chunk.A3DLYWF7.js +0 -19
  909. package/cdn/chunks/chunk.AH6W6EGS.js +0 -77
  910. package/cdn/chunks/chunk.AM27WUW5.js +0 -29
  911. package/cdn/chunks/chunk.ANGGR464.js +0 -19
  912. package/cdn/chunks/chunk.BCDPCFGL.js +0 -19
  913. package/cdn/chunks/chunk.BJ3N2M74.js +0 -477
  914. package/cdn/chunks/chunk.BLLQQEU4.js +0 -93
  915. package/cdn/chunks/chunk.BPMODTFZ.js +0 -19
  916. package/cdn/chunks/chunk.C3WIXITA.js +0 -19
  917. package/cdn/chunks/chunk.C4NRIXB5.js +0 -32
  918. package/cdn/chunks/chunk.C6ZU7BQU.js +0 -19
  919. package/cdn/chunks/chunk.CED7VU3A.js +0 -19
  920. package/cdn/chunks/chunk.CIQJX7DN.js +0 -19
  921. package/cdn/chunks/chunk.CNUZIWX3.js +0 -49
  922. package/cdn/chunks/chunk.CPMSN4UJ.js +0 -188
  923. package/cdn/chunks/chunk.CWXB2IIO.js +0 -29
  924. package/cdn/chunks/chunk.D7RTNDXT.js +0 -19
  925. package/cdn/chunks/chunk.DJQP2IMA.js +0 -264
  926. package/cdn/chunks/chunk.DNR3FVXW.js +0 -357
  927. package/cdn/chunks/chunk.DRMQM3ZI.js +0 -302
  928. package/cdn/chunks/chunk.DZE46JZE.js +0 -33
  929. package/cdn/chunks/chunk.E23QC5CB.js +0 -19
  930. package/cdn/chunks/chunk.E2XCXOAJ.js +0 -74
  931. package/cdn/chunks/chunk.E5SLLQG3.js +0 -19
  932. package/cdn/chunks/chunk.E74MOGHY.js +0 -19
  933. package/cdn/chunks/chunk.EK3MCWKP.js +0 -19
  934. package/cdn/chunks/chunk.ETNO4HXV.js +0 -276
  935. package/cdn/chunks/chunk.EYD3JBVW.js +0 -19
  936. package/cdn/chunks/chunk.EYQLI54B.js +0 -29
  937. package/cdn/chunks/chunk.F3RTIMRW.js +0 -1039
  938. package/cdn/chunks/chunk.F5QWVMPR.js +0 -99
  939. package/cdn/chunks/chunk.F73O5LKK.js +0 -134
  940. package/cdn/chunks/chunk.F7XFAAJE.js +0 -33
  941. package/cdn/chunks/chunk.FDZIJYAO.js +0 -610
  942. package/cdn/chunks/chunk.FEAWTNIM.js +0 -19
  943. package/cdn/chunks/chunk.FEG7AH52.js +0 -230
  944. package/cdn/chunks/chunk.FJEMKM6L.js +0 -99
  945. package/cdn/chunks/chunk.FLYZMRBH.js +0 -19
  946. package/cdn/chunks/chunk.FMZGNUT6.js +0 -32
  947. package/cdn/chunks/chunk.FPTDR7CZ.js +0 -19
  948. package/cdn/chunks/chunk.FT4EMWLT.js +0 -36
  949. package/cdn/chunks/chunk.G3TTBDUB.js +0 -29
  950. package/cdn/chunks/chunk.GDWGIG42.js +0 -33858
  951. package/cdn/chunks/chunk.GESX3J6K.js +0 -29
  952. package/cdn/chunks/chunk.GLGGOYSS.js +0 -32
  953. package/cdn/chunks/chunk.GP34NE53.js +0 -248
  954. package/cdn/chunks/chunk.GQDFFYST.js +0 -37
  955. package/cdn/chunks/chunk.GUH7MM42.js +0 -224
  956. package/cdn/chunks/chunk.GWUI2AWV.js +0 -32
  957. package/cdn/chunks/chunk.HDHDBLD7.js +0 -78
  958. package/cdn/chunks/chunk.HEU3DA6R.js +0 -19
  959. package/cdn/chunks/chunk.HUPSCPKB.js +0 -35
  960. package/cdn/chunks/chunk.HVEKBFXN.js +0 -19
  961. package/cdn/chunks/chunk.I7DZOR75.js +0 -35
  962. package/cdn/chunks/chunk.I7I7IRUJ.js +0 -165
  963. package/cdn/chunks/chunk.IQO7QZ6F.js +0 -19
  964. package/cdn/chunks/chunk.IZB43GH7.js +0 -616
  965. package/cdn/chunks/chunk.JAMHC4MV.js +0 -83
  966. package/cdn/chunks/chunk.JFHC3LXJ.js +0 -56
  967. package/cdn/chunks/chunk.JIFH4KW6.js +0 -29
  968. package/cdn/chunks/chunk.JZSQM3VW.js +0 -29
  969. package/cdn/chunks/chunk.K6LGN35W.js +0 -136
  970. package/cdn/chunks/chunk.K6SKQZRX.js +0 -157
  971. package/cdn/chunks/chunk.K7EC2QO6.js +0 -145
  972. package/cdn/chunks/chunk.KBLQRHVM.js +0 -33
  973. package/cdn/chunks/chunk.KIYBBETI.js +0 -599
  974. package/cdn/chunks/chunk.KJIZK2GR.js +0 -33
  975. package/cdn/chunks/chunk.KPCBPIM2.js +0 -19
  976. package/cdn/chunks/chunk.L3OIOVRC.js +0 -36
  977. package/cdn/chunks/chunk.LBABTGAS.js +0 -146
  978. package/cdn/chunks/chunk.LBLAQB7E.js +0 -19
  979. package/cdn/chunks/chunk.LK77ZQIZ.js +0 -19
  980. package/cdn/chunks/chunk.LLAXCJPT.js +0 -32
  981. package/cdn/chunks/chunk.LQCV7ZYM.js +0 -83
  982. package/cdn/chunks/chunk.M55UUYE6.js +0 -19
  983. package/cdn/chunks/chunk.M5MAEZD5.js +0 -29
  984. package/cdn/chunks/chunk.M6362XDV.js +0 -19
  985. package/cdn/chunks/chunk.MFFHCZ5L.js +0 -19
  986. package/cdn/chunks/chunk.MIQUNAYB.js +0 -19
  987. package/cdn/chunks/chunk.MOZTMXIO.js +0 -29
  988. package/cdn/chunks/chunk.MWWSE5AO.js +0 -19
  989. package/cdn/chunks/chunk.MY73O246.js +0 -499
  990. package/cdn/chunks/chunk.NKC2HFQO.js +0 -19
  991. package/cdn/chunks/chunk.NKP4OZ6C.js +0 -19
  992. package/cdn/chunks/chunk.NPKRRICT.js +0 -36
  993. package/cdn/chunks/chunk.NU3XX242.js +0 -93
  994. package/cdn/chunks/chunk.OEG2PCOY.js +0 -29
  995. package/cdn/chunks/chunk.OICPTIVQ.js +0 -1002
  996. package/cdn/chunks/chunk.ONRLLQNT.js +0 -86
  997. package/cdn/chunks/chunk.ORNWQAHG.js +0 -29
  998. package/cdn/chunks/chunk.OUTTGBUO.js +0 -29
  999. package/cdn/chunks/chunk.OVVZBWQ5.js +0 -32
  1000. package/cdn/chunks/chunk.OWCDD7DL.js +0 -977
  1001. package/cdn/chunks/chunk.P4RQ4MFI.js +0 -33
  1002. package/cdn/chunks/chunk.PAHZERFK.js +0 -19
  1003. package/cdn/chunks/chunk.Q3LBEGYY.js +0 -19
  1004. package/cdn/chunks/chunk.QFRZNTBB.js +0 -19
  1005. package/cdn/chunks/chunk.QLUPX74R.js +0 -32
  1006. package/cdn/chunks/chunk.QNBW7SSE.js +0 -19
  1007. package/cdn/chunks/chunk.QRYITAX4.js +0 -29
  1008. package/cdn/chunks/chunk.QYV5WCX7.js +0 -372
  1009. package/cdn/chunks/chunk.S2F2564D.js +0 -77
  1010. package/cdn/chunks/chunk.S7E2TP3A.js +0 -29
  1011. package/cdn/chunks/chunk.SA2UUVST.js +0 -19
  1012. package/cdn/chunks/chunk.SA4JCYIC.js +0 -287
  1013. package/cdn/chunks/chunk.SBHQWVNS.js +0 -123
  1014. package/cdn/chunks/chunk.SDNNLHZQ.js +0 -259
  1015. package/cdn/chunks/chunk.SEQFSNN4.js +0 -33
  1016. package/cdn/chunks/chunk.SIGBMSJD.js +0 -19
  1017. package/cdn/chunks/chunk.SJWU5EWL.js +0 -904
  1018. package/cdn/chunks/chunk.SQBGXFEJ.js +0 -375
  1019. package/cdn/chunks/chunk.STCSMNYB.js +0 -113
  1020. package/cdn/chunks/chunk.SUWTMK7P.js +0 -19
  1021. package/cdn/chunks/chunk.SW5PSOVR.js +0 -2175
  1022. package/cdn/chunks/chunk.TFYS773O.js +0 -538
  1023. package/cdn/chunks/chunk.THX5KACF.js +0 -29
  1024. package/cdn/chunks/chunk.TOZJSWZM.js +0 -257
  1025. package/cdn/chunks/chunk.TPINKMZJ.js +0 -32
  1026. package/cdn/chunks/chunk.TSLZA2FP.js +0 -79
  1027. package/cdn/chunks/chunk.TUZUVIYQ.js +0 -493
  1028. package/cdn/chunks/chunk.TWGFMAIL.js +0 -239
  1029. package/cdn/chunks/chunk.TZLNQAFG.js +0 -68
  1030. package/cdn/chunks/chunk.U2G7CWH4.js +0 -19
  1031. package/cdn/chunks/chunk.U4WOOAKH.js +0 -19
  1032. package/cdn/chunks/chunk.U7DU43ZD.js +0 -29
  1033. package/cdn/chunks/chunk.UDIXHKOM.js +0 -29
  1034. package/cdn/chunks/chunk.UGUHGDCA.js +0 -32
  1035. package/cdn/chunks/chunk.ULCUBVWX.js +0 -92
  1036. package/cdn/chunks/chunk.UNRDSWSJ.js +0 -19
  1037. package/cdn/chunks/chunk.UOHYVQ6N.js +0 -190
  1038. package/cdn/chunks/chunk.UPGC5XHC.js +0 -1966
  1039. package/cdn/chunks/chunk.UQWL4L3A.js +0 -19
  1040. package/cdn/chunks/chunk.URRRD4PA.js +0 -32
  1041. package/cdn/chunks/chunk.UVILYQWA.js +0 -134
  1042. package/cdn/chunks/chunk.UXDVYLP3.js +0 -29
  1043. package/cdn/chunks/chunk.VA6OPZBX.js +0 -293
  1044. package/cdn/chunks/chunk.VF7MKBFU.js +0 -731
  1045. package/cdn/chunks/chunk.VKVSAKRF.js +0 -29
  1046. package/cdn/chunks/chunk.VOG4NJCY.js +0 -19
  1047. package/cdn/chunks/chunk.VXY5YRVZ.js +0 -29
  1048. package/cdn/chunks/chunk.W4OUTCDL.js +0 -29
  1049. package/cdn/chunks/chunk.W5D76LYB.js +0 -104
  1050. package/cdn/chunks/chunk.W7KGVFJQ.js +0 -52
  1051. package/cdn/chunks/chunk.WD2GZO6V.js +0 -19
  1052. package/cdn/chunks/chunk.WNX4WGS3.js +0 -524
  1053. package/cdn/chunks/chunk.WWAK3QTQ.js +0 -155
  1054. package/cdn/chunks/chunk.WXIFDT4N.js +0 -231
  1055. package/cdn/chunks/chunk.XCDWBMH6.js +0 -99
  1056. package/cdn/chunks/chunk.XOBAY4RP.js +0 -62
  1057. package/cdn/chunks/chunk.XSKBH44W.js +0 -71
  1058. package/cdn/chunks/chunk.XTBGTVDX.js +0 -29
  1059. package/cdn/chunks/chunk.Y76X56VW.js +0 -60
  1060. package/cdn/chunks/chunk.YATRTMXH.js +0 -35
  1061. package/cdn/chunks/chunk.YCWFBBIW.js +0 -19
  1062. package/cdn/chunks/chunk.YG57KJCC.js +0 -621
  1063. package/cdn/chunks/chunk.YM5CME77.js +0 -151
  1064. package/cdn/chunks/chunk.YP7ODXXO.js +0 -55346
  1065. package/cdn/chunks/chunk.YXXYHJWO.js +0 -435
  1066. package/cdn/chunks/chunk.ZNBYJMJX.js +0 -29
  1067. package/cdn/chunks/chunk.ZTV3CFZX.js +0 -19
  1068. package/cdn/chunks/chunk.ZVDRQMOJ.js +0 -19
  1069. package/cdn/chunks/chunk.ZWNN5ZH2.js +0 -2248
  1070. package/dist/chunks/chunk.23NL6ZID.js +0 -48
  1071. package/dist/chunks/chunk.24Y45GCJ.js +0 -422
  1072. package/dist/chunks/chunk.2BUIWDOP.js +0 -11
  1073. package/dist/chunks/chunk.2FCEMVJR.js +0 -474
  1074. package/dist/chunks/chunk.2I67FVGM.js +0 -245
  1075. package/dist/chunks/chunk.2JGKWM6C.js +0 -74
  1076. package/dist/chunks/chunk.2JLEP7WV.js +0 -135
  1077. package/dist/chunks/chunk.34D76IWL.js +0 -277
  1078. package/dist/chunks/chunk.3E224JEK.js +0 -409
  1079. package/dist/chunks/chunk.3KXUPHQI.js +0 -91
  1080. package/dist/chunks/chunk.3L6HPYYD.js +0 -11
  1081. package/dist/chunks/chunk.3PZSDY3H.js +0 -11
  1082. package/dist/chunks/chunk.46LR3GBN.js +0 -21
  1083. package/dist/chunks/chunk.47TCOBJL.js +0 -93
  1084. package/dist/chunks/chunk.4C6H35CR.js +0 -609
  1085. package/dist/chunks/chunk.4FJ3X63Q.js +0 -21
  1086. package/dist/chunks/chunk.4KAGHT32.js +0 -11
  1087. package/dist/chunks/chunk.4S7VDYUE.js +0 -11
  1088. package/dist/chunks/chunk.4XAFSDPF.js +0 -21
  1089. package/dist/chunks/chunk.4YE3RHPD.js +0 -27
  1090. package/dist/chunks/chunk.5356OGOU.js +0 -596
  1091. package/dist/chunks/chunk.5ONQAV7J.js +0 -11
  1092. package/dist/chunks/chunk.5PJNFHW7.js +0 -11
  1093. package/dist/chunks/chunk.5W5ACDR2.js +0 -11
  1094. package/dist/chunks/chunk.62XR66HC.js +0 -75
  1095. package/dist/chunks/chunk.6BTZPYYD.js +0 -85
  1096. package/dist/chunks/chunk.6G2CQWQW.js +0 -21
  1097. package/dist/chunks/chunk.6JWHPMOL.js +0 -43
  1098. package/dist/chunks/chunk.6LYMZ74C.js +0 -26
  1099. package/dist/chunks/chunk.6OWWYTVJ.js +0 -139
  1100. package/dist/chunks/chunk.7BP2RTH6.js +0 -345
  1101. package/dist/chunks/chunk.7CO4TCAE.js +0 -39
  1102. package/dist/chunks/chunk.7DHYCCKV.js +0 -28
  1103. package/dist/chunks/chunk.7DXRWFLB.js +0 -21
  1104. package/dist/chunks/chunk.7GVOOFGX.js +0 -21
  1105. package/dist/chunks/chunk.A2EGUC6U.js +0 -11
  1106. package/dist/chunks/chunk.A4Y5JGLO.js +0 -291
  1107. package/dist/chunks/chunk.AGVANNFL.js +0 -11
  1108. package/dist/chunks/chunk.AIN7RMJA.js +0 -20
  1109. package/dist/chunks/chunk.AMORIPDA.js +0 -11
  1110. package/dist/chunks/chunk.AOG6UBAK.js +0 -581
  1111. package/dist/chunks/chunk.AOMYOT5P.js +0 -21
  1112. package/dist/chunks/chunk.AWZVKNCO.js +0 -280
  1113. package/dist/chunks/chunk.B25JSTW3.js +0 -24
  1114. package/dist/chunks/chunk.B35TXTHD.js +0 -25
  1115. package/dist/chunks/chunk.B75F4EUF.js +0 -11
  1116. package/dist/chunks/chunk.BFYI5XHA.js +0 -86
  1117. package/dist/chunks/chunk.BMP66UJR.js +0 -451
  1118. package/dist/chunks/chunk.BN7IWGKR.js +0 -24
  1119. package/dist/chunks/chunk.BPYGZWI3.js +0 -180
  1120. package/dist/chunks/chunk.BRSRN5QN.js +0 -24
  1121. package/dist/chunks/chunk.CE47STSQ.js +0 -11
  1122. package/dist/chunks/chunk.CERMDF55.js +0 -176
  1123. package/dist/chunks/chunk.CHYOTCHZ.js +0 -11
  1124. package/dist/chunks/chunk.CIMAQVS2.js +0 -11
  1125. package/dist/chunks/chunk.CIMGUV6Y.js +0 -24
  1126. package/dist/chunks/chunk.CLRSZEB2.js +0 -24
  1127. package/dist/chunks/chunk.CQVTWL6Z.js +0 -21
  1128. package/dist/chunks/chunk.CQYKQRWL.js +0 -11
  1129. package/dist/chunks/chunk.CR7VTG7C.js +0 -89
  1130. package/dist/chunks/chunk.CU5BQKH2.js +0 -477
  1131. package/dist/chunks/chunk.CYCA3NBR.js +0 -1028
  1132. package/dist/chunks/chunk.DACLOTFS.js +0 -28
  1133. package/dist/chunks/chunk.DITKLYBN.js +0 -180
  1134. package/dist/chunks/chunk.DKUE6PE4.js +0 -11
  1135. package/dist/chunks/chunk.DLNPETOO.js +0 -21
  1136. package/dist/chunks/chunk.DTXOJ33G.js +0 -21
  1137. package/dist/chunks/chunk.DZV7WWTJ.js +0 -11
  1138. package/dist/chunks/chunk.EDG6QOJD.js +0 -27
  1139. package/dist/chunks/chunk.ELELOKAM.js +0 -1122
  1140. package/dist/chunks/chunk.EMK63FTO.js +0 -720
  1141. package/dist/chunks/chunk.ESD54SLD.js +0 -24
  1142. package/dist/chunks/chunk.ET27O3TP.js +0 -21
  1143. package/dist/chunks/chunk.EUVVVTAD.js +0 -11
  1144. package/dist/chunks/chunk.F2SPMDPY.js +0 -11
  1145. package/dist/chunks/chunk.F3ZB3JGC.js +0 -11
  1146. package/dist/chunks/chunk.FKHGRLRX.js +0 -28
  1147. package/dist/chunks/chunk.FKT5MJBI.js +0 -11
  1148. package/dist/chunks/chunk.FM5ENKI6.js +0 -11
  1149. package/dist/chunks/chunk.FSGSFQFY.js +0 -43
  1150. package/dist/chunks/chunk.FUTLNYKY.js +0 -262
  1151. package/dist/chunks/chunk.FWCHY6C4.js +0 -484
  1152. package/dist/chunks/chunk.G4FDMA5K.js +0 -21
  1153. package/dist/chunks/chunk.GCFEUSUL.js +0 -21
  1154. package/dist/chunks/chunk.GMHPIB55.js +0 -61
  1155. package/dist/chunks/chunk.GMMKTV4V.js +0 -11
  1156. package/dist/chunks/chunk.GNEHDIYJ.js +0 -28
  1157. package/dist/chunks/chunk.GOUVLQBF.js +0 -21
  1158. package/dist/chunks/chunk.GP55JK77.js +0 -21
  1159. package/dist/chunks/chunk.GTAPYKS6.js +0 -25
  1160. package/dist/chunks/chunk.H56NTNBW.js +0 -11
  1161. package/dist/chunks/chunk.HETGYAIO.js +0 -48
  1162. package/dist/chunks/chunk.HSQFX4AI.js +0 -29
  1163. package/dist/chunks/chunk.HTALZVYR.js +0 -11
  1164. package/dist/chunks/chunk.HUXLAZB4.js +0 -11
  1165. package/dist/chunks/chunk.HZGL7RFR.js +0 -11
  1166. package/dist/chunks/chunk.HZJ3FPWX.js +0 -525
  1167. package/dist/chunks/chunk.IGMGR4ZS.js +0 -101
  1168. package/dist/chunks/chunk.IHWF6YAG.js +0 -11
  1169. package/dist/chunks/chunk.IKVDW6B4.js +0 -24
  1170. package/dist/chunks/chunk.IRBK2ABM.js +0 -214
  1171. package/dist/chunks/chunk.ITXGVZ3Z.js +0 -24
  1172. package/dist/chunks/chunk.J2CM4WQY.js +0 -25
  1173. package/dist/chunks/chunk.JIEKTF4Q.js +0 -67
  1174. package/dist/chunks/chunk.JIXCGGBH.js +0 -11
  1175. package/dist/chunks/chunk.JQYBVE6K.js +0 -11
  1176. package/dist/chunks/chunk.JQZKVVMA.js +0 -2160
  1177. package/dist/chunks/chunk.JRY3VDVA.js +0 -21
  1178. package/dist/chunks/chunk.JY44NYXW.js +0 -240
  1179. package/dist/chunks/chunk.JYPYYB7H.js +0 -355
  1180. package/dist/chunks/chunk.KA344ZWW.js +0 -180
  1181. package/dist/chunks/chunk.KDFIJ2XZ.js +0 -21
  1182. package/dist/chunks/chunk.KREYCF2O.js +0 -21
  1183. package/dist/chunks/chunk.KYVRLVBM.js +0 -124
  1184. package/dist/chunks/chunk.L2F66NTF.js +0 -11
  1185. package/dist/chunks/chunk.L7HBQCK2.js +0 -21
  1186. package/dist/chunks/chunk.LFGKDLWB.js +0 -11
  1187. package/dist/chunks/chunk.LKC67DSF.js +0 -11
  1188. package/dist/chunks/chunk.LLJK5HH7.js +0 -29
  1189. package/dist/chunks/chunk.LMTCPKOW.js +0 -58
  1190. package/dist/chunks/chunk.LNJDOWJT.js +0 -11
  1191. package/dist/chunks/chunk.LSVWT3PR.js +0 -345
  1192. package/dist/chunks/chunk.M7I7E4A3.js +0 -33
  1193. package/dist/chunks/chunk.MBN5DJT2.js +0 -21
  1194. package/dist/chunks/chunk.MHQYU34F.js +0 -21
  1195. package/dist/chunks/chunk.MPGLTYB6.js +0 -11
  1196. package/dist/chunks/chunk.N4TIYPDB.js +0 -21
  1197. package/dist/chunks/chunk.NBQU43OA.js +0 -21
  1198. package/dist/chunks/chunk.NCGR4ABQ.js +0 -97
  1199. package/dist/chunks/chunk.NMIMLWDR.js +0 -11
  1200. package/dist/chunks/chunk.NVNFECEI.js +0 -24
  1201. package/dist/chunks/chunk.NVUIBB4S.js +0 -11
  1202. package/dist/chunks/chunk.NWAYZFWI.js +0 -11
  1203. package/dist/chunks/chunk.NY7KKKRO.js +0 -230
  1204. package/dist/chunks/chunk.NZ3NKZKC.js +0 -24
  1205. package/dist/chunks/chunk.O5MZZQEP.js +0 -21
  1206. package/dist/chunks/chunk.OA5W6DJB.js +0 -11
  1207. package/dist/chunks/chunk.OAB3DDK5.js +0 -11
  1208. package/dist/chunks/chunk.OCEDSOZX.js +0 -11
  1209. package/dist/chunks/chunk.OKBW6URU.js +0 -11
  1210. package/dist/chunks/chunk.OVOPZGEQ.js +0 -11
  1211. package/dist/chunks/chunk.OXLDFPNG.js +0 -21
  1212. package/dist/chunks/chunk.P67X474T.js +0 -27
  1213. package/dist/chunks/chunk.P6JXLYSN.js +0 -272
  1214. package/dist/chunks/chunk.PADXM5M4.js +0 -11
  1215. package/dist/chunks/chunk.PHMEQKNL.js +0 -844
  1216. package/dist/chunks/chunk.PKDYXLVJ.js +0 -24
  1217. package/dist/chunks/chunk.POZSYZAF.js +0 -986
  1218. package/dist/chunks/chunk.PPJMSHGN.js +0 -11
  1219. package/dist/chunks/chunk.PX354GM6.js +0 -24
  1220. package/dist/chunks/chunk.Q5243NGP.js +0 -25
  1221. package/dist/chunks/chunk.Q5BAROG6.js +0 -11
  1222. package/dist/chunks/chunk.QERV4LTZ.js +0 -52
  1223. package/dist/chunks/chunk.QJQRZAWC.js +0 -365
  1224. package/dist/chunks/chunk.QT2W6HFD.js +0 -252
  1225. package/dist/chunks/chunk.QVAO6BXX.js +0 -21
  1226. package/dist/chunks/chunk.R27R2AP4.js +0 -121
  1227. package/dist/chunks/chunk.RB3PF4D4.js +0 -143
  1228. package/dist/chunks/chunk.RB5DJUVF.js +0 -27
  1229. package/dist/chunks/chunk.RD2C6T6M.js +0 -21
  1230. package/dist/chunks/chunk.RO4MUFVF.js +0 -67
  1231. package/dist/chunks/chunk.S26GNPAB.js +0 -123
  1232. package/dist/chunks/chunk.S3WMAEHE.js +0 -145
  1233. package/dist/chunks/chunk.SGCHDWXR.js +0 -11
  1234. package/dist/chunks/chunk.SKC62H4B.js +0 -11
  1235. package/dist/chunks/chunk.SOPQY2QK.js +0 -21
  1236. package/dist/chunks/chunk.T26ST6IU.js +0 -244
  1237. package/dist/chunks/chunk.T4NPZPD3.js +0 -443
  1238. package/dist/chunks/chunk.T5D6H2LT.js +0 -112
  1239. package/dist/chunks/chunk.T6IXCNHI.js +0 -213
  1240. package/dist/chunks/chunk.TIGMAWX4.js +0 -24
  1241. package/dist/chunks/chunk.TMB4QBMB.js +0 -11
  1242. package/dist/chunks/chunk.TPSLZ3TQ.js +0 -11
  1243. package/dist/chunks/chunk.TT3GKM5K.js +0 -247
  1244. package/dist/chunks/chunk.U3YHERE2.js +0 -11
  1245. package/dist/chunks/chunk.U4G2J5CP.js +0 -25
  1246. package/dist/chunks/chunk.U7E4P6HB.js +0 -220
  1247. package/dist/chunks/chunk.UGC5X6N6.js +0 -11
  1248. package/dist/chunks/chunk.UOPABB4M.js +0 -11
  1249. package/dist/chunks/chunk.UYM4IZDG.js +0 -264
  1250. package/dist/chunks/chunk.V7YAD2DD.js +0 -11
  1251. package/dist/chunks/chunk.VZKXMTPH.js +0 -220
  1252. package/dist/chunks/chunk.W4OTNTHJ.js +0 -11
  1253. package/dist/chunks/chunk.WB55OBFF.js +0 -2235
  1254. package/dist/chunks/chunk.WMBZEBFZ.js +0 -83
  1255. package/dist/chunks/chunk.WVISM2XC.js +0 -31
  1256. package/dist/chunks/chunk.WWHBYZSK.js +0 -52
  1257. package/dist/chunks/chunk.WYB3Y5OW.js +0 -26
  1258. package/dist/chunks/chunk.X2LVPENQ.js +0 -78
  1259. package/dist/chunks/chunk.X3AHCDBL.js +0 -11
  1260. package/dist/chunks/chunk.X7ZDUHWH.js +0 -11
  1261. package/dist/chunks/chunk.XCEIA7BY.js +0 -21
  1262. package/dist/chunks/chunk.XFRO2CBR.js +0 -21
  1263. package/dist/chunks/chunk.XR75EBXL.js +0 -24
  1264. package/dist/chunks/chunk.XRH6YDK4.js +0 -153
  1265. package/dist/chunks/chunk.XZTZVISY.js +0 -91
  1266. package/dist/chunks/chunk.Y6FMCUGS.js +0 -11
  1267. package/dist/chunks/chunk.Y6RWRJYS.js +0 -11
  1268. package/dist/chunks/chunk.YBIDA2BA.js +0 -64
  1269. package/dist/chunks/chunk.ZBDDC5PN.js +0 -11
  1270. package/dist/chunks/chunk.ZDDLBZZE.js +0 -24
  1271. package/dist/chunks/chunk.ZFEQ3S27.js +0 -592
  1272. package/dist/chunks/chunk.ZLFMCRKN.js +0 -960
  1273. package/dist/terra_ui_components-0.0.165-py3-none-any.whl +0 -0
  1274. package/dist/terra_ui_components-0.0.165.tar.gz +0 -0
@@ -1,2235 +0,0 @@
1
- import {
2
- defaultSubsetFileMimeType,
3
- getFriendlyNameForMimeType
4
- } from "./chunk.XR75EBXL.js";
5
- import {
6
- getNotebook
7
- } from "./chunk.2JGKWM6C.js";
8
- import {
9
- TerraLogin
10
- } from "./chunk.3KXUPHQI.js";
11
- import {
12
- TerraDialog
13
- } from "./chunk.ZFEQ3S27.js";
14
- import {
15
- DataSubsetterController
16
- } from "./chunk.QJQRZAWC.js";
17
- import {
18
- convertVariableEntryIdToGiovanniFormat
19
- } from "./chunk.FDIMGAJI.js";
20
- import {
21
- data_subsetter_styles_default
22
- } from "./chunk.CYCA3NBR.js";
23
- import {
24
- TerraDataAccess,
25
- debounce,
26
- sendDataToJupyterNotebook
27
- } from "./chunk.ZLFMCRKN.js";
28
- import {
29
- TerraMenuItem
30
- } from "./chunk.T6IXCNHI.js";
31
- import {
32
- TerraMenu
33
- } from "./chunk.RB3PF4D4.js";
34
- import {
35
- TerraDatePicker
36
- } from "./chunk.JQZKVVMA.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.EMK63FTO.js";
46
- import {
47
- TerraInput
48
- } from "./chunk.5356OGOU.js";
49
- import {
50
- TerraDropdown
51
- } from "./chunk.HZJ3FPWX.js";
52
- import {
53
- TerraLoader
54
- } from "./chunk.KYVRLVBM.js";
55
- import {
56
- TerraButton
57
- } from "./chunk.3E224JEK.js";
58
- import {
59
- TerraAccordion
60
- } from "./chunk.X2LVPENQ.js";
61
- import {
62
- TerraIcon
63
- } from "./chunk.IRBK2ABM.js";
64
- import {
65
- getBasePath
66
- } from "./chunk.PBC3S6IG.js";
67
- import {
68
- TerraAlert
69
- } from "./chunk.QT2W6HFD.js";
70
- import {
71
- watch
72
- } from "./chunk.NWXJOH5T.js";
73
- import {
74
- TerraElement,
75
- component_styles_default
76
- } from "./chunk.BMP66UJR.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, _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, _handleDateChange, (e) => {
163
- __privateMethod(this, _markFieldTouched, markFieldTouched_fn).call(this, "date");
164
- this.selectedDateRange = __spreadProps(__spreadValues({}, this.selectedDateRange), {
165
- startDate: e.detail.startDate,
166
- endDate: e.detail.endDate
167
- });
168
- });
169
- __privateAdd(this, _resetDateRangeSelection, () => {
170
- this.selectedDateRange = { startDate: null, endDate: null };
171
- });
172
- __privateAdd(this, _resetFormatSelection, () => {
173
- var _a, _b;
174
- if ((_b = (_a = this.collectionWithServices) == null ? void 0 : _a.outputFormats) == null ? void 0 : _b.length) {
175
- const netcdfFormat = this.collectionWithServices.outputFormats.find(
176
- (format) => format === "application/x-netcdf4" || format === "application/netcdf"
177
- );
178
- this.selectedFormat = netcdfFormat || this.collectionWithServices.outputFormats[0];
179
- } else {
180
- this.selectedFormat = defaultSubsetFileMimeType;
181
- }
182
- });
183
- __privateAdd(this, _handleSpatialChange, (e) => {
184
- __privateMethod(this, _markFieldTouched, markFieldTouched_fn).call(this, "spatial");
185
- const round2 = (n) => parseFloat(Number(n).toFixed(2));
186
- if (e.detail.type === "bbox" /* BBOX */) {
187
- this.spatialSelection = {
188
- e: round2(e.detail.bounds.getNorthEast().lng),
189
- n: round2(e.detail.bounds.getNorthEast().lat),
190
- w: round2(e.detail.bounds.getSouthWest().lng),
191
- s: round2(e.detail.bounds.getSouthWest().lat)
192
- };
193
- } else if (e.detail.type === "point" /* POINT */) {
194
- this.spatialSelection = e.detail.latLng;
195
- } else {
196
- this.spatialSelection = null;
197
- }
198
- });
199
- __privateAdd(this, _resetSpatialSelection, () => {
200
- this.spatialSelection = null;
201
- });
202
- __privateAdd(this, _resetVariableSelection, () => {
203
- this.selectedVariables = [];
204
- });
205
- }
206
- jobIdChanged() {
207
- if (this.jobId) {
208
- this.controller.fetchJobByID(this.jobId);
209
- this.dataAccessMode = "subset";
210
- }
211
- }
212
- shortNameAndVersionChanged() {
213
- if (this.shortName && this.version) {
214
- this.collectionEntryId = `${this.shortName}_${this.version}`;
215
- }
216
- }
217
- collectionEntryIdChanged() {
218
- if (this.collectionEntryId) {
219
- this.showCollectionSearch = false;
220
- } else {
221
- this.showCollectionSearch = true;
222
- }
223
- }
224
- firstUpdated() {
225
- if (this.collectionEntryId) {
226
- this.showCollectionSearch = false;
227
- }
228
- if (this.jobId) {
229
- this.controller.fetchJobByID(this.jobId);
230
- this.dataAccessMode = "subset";
231
- }
232
- this.renderHistoryPanel();
233
- }
234
- updated(changedProps) {
235
- var _a, _b, _c, _d;
236
- super.updated(changedProps);
237
- const taskStatus = (_b = (_a = this.controller) == null ? void 0 : _a.jobStatusTask) == null ? void 0 : _b.status;
238
- if (taskStatus === TaskStatus.ERROR) {
239
- const taskError = (_d = (_c = this.controller) == null ? void 0 : _c.jobStatusTask) == null ? void 0 : _d.error;
240
- if (taskError) {
241
- const errorDetails = extractHarmonyError(taskError);
242
- if (errorDetails.isCancellation) {
243
- return;
244
- }
245
- if (this.controller.currentJob) {
246
- this.controller.currentJob = __spreadProps(__spreadValues({}, this.controller.currentJob), {
247
- status: "failed" /* FAILED */,
248
- message: errorDetails.message || "Failed to create subset job"
249
- });
250
- }
251
- }
252
- }
253
- }
254
- collectionChanged() {
255
- var _a, _b;
256
- const { startDate, endDate } = __privateMethod(this, _getCollectionDateRange, getCollectionDateRange_fn).call(this);
257
- this.selectedDateRange = { startDate, endDate };
258
- if ((_b = (_a = this.collectionWithServices) == null ? void 0 : _a.outputFormats) == null ? void 0 : _b.length) {
259
- const netcdfFormat = this.collectionWithServices.outputFormats.find(
260
- (format) => format === "application/x-netcdf4" || format === "application/netcdf"
261
- );
262
- this.selectedFormat = netcdfFormat || this.collectionWithServices.outputFormats[0];
263
- } else {
264
- this.selectedFormat = defaultSubsetFileMimeType;
265
- }
266
- this.collectionLoading = false;
267
- this.collectionAccordionOpen = false;
268
- }
269
- granuleDatesChanged() {
270
- const newRange = __spreadValues(__spreadValues({}, this.granuleMinDate && { startDate: this.granuleMinDate }), this.granuleMaxDate && { endDate: this.granuleMaxDate });
271
- if (Object.keys(newRange).length > 0) {
272
- this.selectedDateRange = __spreadValues(__spreadValues({}, this.selectedDateRange), newRange);
273
- }
274
- }
275
- selectedFormatChanged() {
276
- if (__privateMethod(this, _isGiovanniFormat, isGiovanniFormat_fn).call(this) && this.selectedVariables.length > 1) {
277
- this.selectedVariables = [this.selectedVariables[0]];
278
- }
279
- }
280
- showDialog() {
281
- var _a;
282
- (_a = this.dialogElement) == null ? void 0 : _a.show();
283
- }
284
- render() {
285
- var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s;
286
- const showJobStatus = this.controller.currentJob && !this.refineParameters;
287
- const showMinimizeButton = showJobStatus && !!this.dialog;
288
- const title = (_c = (_b = (_a = this.collectionWithServices) == null ? void 0 : _a.collection) == null ? void 0 : _b.EntryTitle) != null ? _c : "Download Data";
289
- const content = html`
290
- <div class="container">
291
- ${!this.dialog ? html`
292
- <div class="header">
293
- <h1>
294
- <svg
295
- class="download-icon"
296
- viewBox="0 0 24 24"
297
- fill="currentColor"
298
- >
299
- <path
300
- d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z"
301
- />
302
- </svg>
303
- ${title}
304
- </h1>
305
-
306
- ${showMinimizeButton ? html`<button
307
- class="minimize-btn"
308
- @click=${() => this.minimizeDialog()}
309
- >
310
- -
311
- </button>` : nothing}
312
- </div>
313
- ` : nothing}
314
- ${!this.isHistoryView && ((_e = (_d = this.collectionWithServices) == null ? void 0 : _d.services) == null ? void 0 : _e.length) ? html`
315
- <div class="section">
316
- ${__privateMethod(this, _renderDataAccessModeSelection, renderDataAccessModeSelection_fn).call(this)}
317
- </div>
318
- ` : nothing}
319
- ${this.dataAccessMode === "original" ? html`
320
- <div class="section">
321
- <terra-data-access
322
- short-name=${(_h = this.shortName) != null ? _h : (_g = (_f = this.collectionWithServices) == null ? void 0 : _f.collection) == null ? void 0 : _g.ShortName}
323
- version=${(_k = this.version) != null ? _k : (_j = (_i = this.collectionWithServices) == null ? void 0 : _i.collection) == null ? void 0 : _j.Version}
324
- ?footer-slot=${!!this.dialog}
325
- >
326
- ${this.dialog ? html`
327
- <div
328
- slot="footer"
329
- style="margin-top: 15px;"
330
- >
331
- <slot
332
- name="data-access-footer"
333
- ></slot>
334
- </div>
335
- ` : nothing}
336
- </terra-data-access>
337
- </div>
338
- ` : showJobStatus ? __privateMethod(this, _renderJobStatus, renderJobStatus_fn).call(this) : __privateMethod(this, _renderSubsetOptions, renderSubsetOptions_fn).call(this)}
339
- </div>
340
- `;
341
- if (this.dialog) {
342
- return html`
343
- <terra-dialog id=${this.dialog} style="--title-font-size: 16px;">
344
- <span
345
- slot="label"
346
- style="display: flex; align-items: center; gap: 8px; color: #0066cc; font-weight: 600;"
347
- >
348
- <svg
349
- class="download-icon"
350
- viewBox="0 0 24 24"
351
- fill="currentColor"
352
- style="width: 16px; height: 16px; display: inline-block; vertical-align: middle; flex-shrink: 0;"
353
- >
354
- <path d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z" />
355
- </svg>
356
- ${title}
357
- </span>
358
- ${showMinimizeButton ? html`
359
- <button
360
- slot="header-actions"
361
- class="minimize-btn"
362
- @click=${() => {
363
- var _a2;
364
- return (_a2 = this.dialogElement) == null ? void 0 : _a2.hide();
365
- }}
366
- aria-label="Minimize"
367
- >
368
- -
369
- </button>
370
- ` : nothing}
371
- ${content} ${__privateMethod(this, _renderFooterForDialog, renderFooterForDialog_fn).call(this)}
372
- </terra-dialog>
373
- `;
374
- }
375
- return html`
376
- <div class="container">
377
- <div class="header">
378
- <h1>
379
- <svg
380
- class="download-icon"
381
- viewBox="0 0 24 24"
382
- fill="currentColor"
383
- >
384
- <path d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z" />
385
- </svg>
386
- ${title}
387
- </h1>
388
-
389
- ${showMinimizeButton ? html`<button
390
- class="minimize-btn"
391
- @click=${() => this.minimizeDialog()}
392
- >
393
- -
394
- </button>` : nothing}
395
- </div>
396
- ${!this.isHistoryView && ((_m = (_l = this.collectionWithServices) == null ? void 0 : _l.services) == null ? void 0 : _m.length) ? html`
397
- <div class="section">
398
- ${__privateMethod(this, _renderDataAccessModeSelection, renderDataAccessModeSelection_fn).call(this)}
399
- </div>
400
- ` : nothing}
401
- ${this.dataAccessMode === "original" ? html`
402
- <div class="section">
403
- <terra-data-access
404
- short-name=${(_p = this.shortName) != null ? _p : (_o = (_n = this.collectionWithServices) == null ? void 0 : _n.collection) == null ? void 0 : _o.ShortName}
405
- version=${(_s = this.version) != null ? _s : (_r = (_q = this.collectionWithServices) == null ? void 0 : _q.collection) == null ? void 0 : _r.Version}
406
- ?footer-slot=${!!this.dialog}
407
- >
408
- ${this.dialog ? html`
409
- <div
410
- slot="footer"
411
- style="margin-top: 15px;"
412
- >
413
- <slot
414
- name="data-access-footer"
415
- ></slot>
416
- </div>
417
- ` : nothing}
418
- </terra-data-access>
419
- </div>
420
- ` : showJobStatus ? __privateMethod(this, _renderJobStatus, renderJobStatus_fn).call(this) : __privateMethod(this, _renderSubsetOptions, renderSubsetOptions_fn).call(this)}
421
- </div>
422
- `;
423
- }
424
- minimizeDialog() {
425
- var _a;
426
- (_a = this.closest("terra-dialog")) == null ? void 0 : _a.hide();
427
- }
428
- handleCollectionSearch(searchTerm) {
429
- this.collectionSearchQuery = searchTerm;
430
- }
431
- isLatLng(value) {
432
- return value && typeof value.lat === "number" && typeof value.lng === "number";
433
- }
434
- isLatLngBounds(value) {
435
- return value && typeof value.getSouthWest === "function" && typeof value.getNorthEast === "function";
436
- }
437
- renderHistoryPanel() {
438
- const existingHistoryPanel = document.querySelector(
439
- "terra-data-subsetter-history"
440
- );
441
- if (!existingHistoryPanel && this.bearerToken) {
442
- const historyPanel = document.createElement(
443
- "terra-data-subsetter-history"
444
- );
445
- if (this.bearerToken) {
446
- historyPanel.setAttribute("bearer-token", this.bearerToken);
447
- }
448
- if (this.environment) {
449
- historyPanel.setAttribute("environment", this.environment);
450
- }
451
- document.body.appendChild(historyPanel);
452
- }
453
- }
454
- };
455
- _authController = new WeakMap();
456
- _renderFooterForDialog = new WeakSet();
457
- renderFooterForDialog_fn = function() {
458
- const showJobStatus = this.controller.currentJob && !this.refineParameters;
459
- if (showJobStatus && this.controller.currentJob) {
460
- return html`
461
- <div slot="footer" class="footer">
462
- ${this.controller.currentJob.status === "successful" /* SUCCESSFUL */ || this.controller.currentJob.status === "complete_with_errors" /* COMPLETE_WITH_ERRORS */ ? html`
463
- <div
464
- style="display: flex; align-items: center; gap: 8px;"
465
- >
466
- <terra-dropdown
467
- @terra-select=${__privateMethod(this, _handleDownloadSelect, handleDownloadSelect_fn)}
468
- >
469
- <terra-button slot="trigger" caret>
470
- Download Options
471
- </terra-button>
472
- <terra-menu>
473
- <terra-menu-item value="file-list">
474
- <svg
475
- slot="prefix"
476
- viewBox="0 0 24 24"
477
- width="16"
478
- height="16"
479
- style="width: 16px; height: 16px;"
480
- >
481
- <path
482
- fill="currentColor"
483
- 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"
484
- />
485
- </svg>
486
- File List
487
- </terra-menu-item>
488
- <terra-menu-item value="python-script">
489
- <svg
490
- slot="prefix"
491
- viewBox="0 0 128 128"
492
- width="16"
493
- height="16"
494
- style="width: 16px; height: 16px;"
495
- >
496
- <path
497
- fill="currentColor"
498
- 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"
499
- ></path>
500
- </svg>
501
- Python Script
502
- </terra-menu-item>
503
- <terra-menu-item value="earthdata-download">
504
- <svg
505
- slot="prefix"
506
- viewBox="0 0 64 64"
507
- fill="none"
508
- width="16"
509
- height="16"
510
- style="width: 16px; height: 16px;"
511
- >
512
- <circle
513
- cx="32"
514
- cy="32"
515
- r="28"
516
- fill="currentColor"
517
- />
518
- <path
519
- d="M32 14v26M32 40l-9-9M32 40l9-9"
520
- stroke="#fff"
521
- stroke-width="4"
522
- stroke-linecap="round"
523
- stroke-linejoin="round"
524
- fill="none"
525
- />
526
- </svg>
527
- Earthdata Download
528
- </terra-menu-item>
529
- </terra-menu>
530
- </terra-dropdown>
531
-
532
- <terra-button
533
- outline
534
- @click=${() => __privateMethod(this, _handleJupyterNotebookClick, handleJupyterNotebookClick_fn).call(this)}
535
- >
536
- <terra-icon
537
- name="outline-code-bracket"
538
- library="heroicons"
539
- font-size="1.5em"
540
- style="margin-right: 5px;"
541
- ></terra-icon>
542
- Open in Jupyter Notebook
543
- </terra-button>
544
- </div>
545
- ` : nothing}
546
- ${this.controller.currentJob.status === "running" ? html`<button
547
- class="btn btn-success"
548
- @click=${__privateMethod(this, _cancelJob, cancelJob_fn)}
549
- ?disabled=${this.cancelingGetData}
550
- >
551
- ${this.cancelingGetData ? "Canceling..." : "Cancel request"}
552
- </button>` : nothing}
553
-
554
- <div class="job-info">
555
- Job ID:
556
- <span class="job-id">
557
- ${this.bearerToken ? html`<a
558
- href="https://harmony.earthdata.nasa.gov/jobs/${this.controller.currentJob.jobID}"
559
- target="_blank"
560
- >${this.controller.currentJob.jobID}</a
561
- >` : this.controller.currentJob.jobID}
562
- </span>
563
- <span class="info-icon">?</span>
564
- </div>
565
- </div>
566
- `;
567
- } else if (this.dataAccessMode === "subset") {
568
- return html`
569
- <div slot="footer" class="footer">
570
- <button class="btn btn-secondary">Reset All</button>
571
- <div>
572
- <button class="btn btn-primary" @click=${__privateMethod(this, _getData, getData_fn)}>
573
- Get Data
574
- </button>
575
- ${this.jobId ? html`
576
- <terra-button
577
- variant="default"
578
- @click=${__privateMethod(this, _viewRunningJob, viewRunningJob_fn)}
579
- >
580
- View Running Job
581
- </terra-button>
582
- ` : nothing}
583
- </div>
584
- </div>
585
- </div>
586
- </div>
587
- `;
588
- }
589
- return nothing;
590
- };
591
- _renderSizeInfo = new WeakSet();
592
- renderSizeInfo_fn = function(estimates) {
593
- if (!__privateGet(this, _authController).state.isLoading && !__privateGet(this, _authController).state.user) {
594
- return html`
595
- <div class="size-info warning">
596
- <terra-login>
597
- <h2 slot="logged-out">Limited access as a guest.</h2>
598
-
599
- <p slot="logged-out">
600
- Your results will be capped at 10 links. Log in for full
601
- access to all data.
602
- </p>
603
- </terra-login>
604
- </div>
605
- `;
606
- }
607
- return html`<div
608
- class="size-info ${estimates.links >= 150 ? "warning" : "neutral"}"
609
- >
610
- <h2>Estimated size of results</h2>
611
- <div class="size-stats">
612
- ${estimates.days.toLocaleString()} days,
613
- ${estimates.links.toLocaleString()} links
614
- </div>
615
- ${estimates.links >= 150 ? html`<div class="size-warning">
616
- You are about to retrieve ${estimates.links.toLocaleString()}
617
- file links from the archive. You may
618
- <strong>speed up the request</strong> by limiting the scope of
619
- your search.
620
- </div>` : nothing}
621
- </div>`;
622
- };
623
- _renderSubsetOptions = new WeakSet();
624
- renderSubsetOptions_fn = function() {
625
- var _a, _b, _c, _d, _e, _f, _g, _h;
626
- const estimates = __privateMethod(this, _estimateJobSize, estimateJobSize_fn).call(this);
627
- const hasSubsetOption = __privateMethod(this, _hasAtLeastOneSubsetOption, hasAtLeastOneSubsetOption_fn).call(this);
628
- const collection = (_a = this.collectionWithServices) == null ? void 0 : _a.collection;
629
- const temporalExtents = collection == null ? void 0 : collection.TemporalExtents;
630
- const spatialExtent = collection == null ? void 0 : collection.SpatialExtent;
631
- const showTemporalSection = temporalExtents && temporalExtents.length;
632
- const showSpatialSection = spatialExtent && ((_c = (_b = spatialExtent.HorizontalSpatialDomain) == null ? void 0 : _b.Geometry) == null ? void 0 : _c.BoundingRectangles);
633
- return html`
634
- ${this.dataAccessMode === "original" ? nothing : hasSubsetOption ? html`
635
- ${hasSubsetOption && estimates ? __privateMethod(this, _renderSizeInfo, renderSizeInfo_fn).call(this, estimates) : nothing}
636
- ${this.showCollectionSearch ? html`
637
- <div class="section">
638
- <h2 class="section-title">
639
- Select Data Collection
640
- </h2>
641
-
642
- ${__privateMethod(this, _renderSearchForCollection, renderSearchForCollection_fn).call(this)}
643
- </div>
644
- ` : nothing}
645
- ${((_e = (_d = this.collectionWithServices) == null ? void 0 : _d.outputFormats) == null ? void 0 : _e.length) && hasSubsetOption ? html`
646
- <div class="section">
647
- <h2 class="section-title">Output Format</h2>
648
-
649
- ${__privateMethod(this, _renderOutputFormatSelection, renderOutputFormatSelection_fn).call(this)}
650
- </div>
651
- ` : nothing}
652
- <div class="section">
653
- <h2 class="section-title">Subset Options</h2>
654
- <p style="color: #666; margin-bottom: 16px;">
655
- Generate file links that support spatial subsetting,
656
- date/time range selection, and variable selection.
657
- </p>
658
-
659
- ${((_f = this.collectionWithServices) == null ? void 0 : _f.temporalSubset) ? __privateMethod(this, _renderDateRangeSelection, renderDateRangeSelection_fn).call(this) : nothing}
660
- ${__privateMethod(this, _hasSpatialSubset, hasSpatialSubset_fn).call(this) ? __privateMethod(this, _renderSpatialSelection, renderSpatialSelection_fn).call(this) : nothing}
661
- ${((_g = this.collectionWithServices) == null ? void 0 : _g.variableSubset) ? __privateMethod(this, _renderVariableSelection, renderVariableSelection_fn).call(this) : nothing}
662
- </div>
663
- ` : html`
664
- ${showTemporalSection && !((_h = this.collectionWithServices) == null ? void 0 : _h.temporalSubset) ? __privateMethod(this, _renderAvailableTemporalRangeSection, renderAvailableTemporalRangeSection_fn).call(this) : nothing}
665
- ${showSpatialSection && !__privateMethod(this, _hasSpatialSubset, hasSpatialSubset_fn).call(this) ? __privateMethod(this, _renderAvailableSpatialRangeSection, renderAvailableSpatialRangeSection_fn).call(this) : nothing}
666
- `}
667
- ${!hasSubsetOption && estimates ? html`
668
- <div
669
- class="neutral-info"
670
- style="margin-top: 24px; padding: 16px 20px; border-radius: 6px; background: #f8f9fa; color: #555; border: 1px solid #ccc;"
671
- >
672
- <strong>Estimated result size:</strong><br />
673
- Your request will return approximately
674
- <b>${estimates.links.toLocaleString()}</b> files covering
675
- <b>${estimates.days.toLocaleString()}</b> days.
676
- </div>
677
- ` : nothing}
678
- ${this.dataAccessMode === "subset" && !this.dialog ? html`
679
- <div class="footer">
680
- <button class="btn btn-secondary">Reset All</button>
681
- <div>
682
- <button
683
- class="btn btn-primary"
684
- @click=${__privateMethod(this, _getData, getData_fn)}
685
- >
686
- Get Data
687
- </button>
688
- ${this.jobId ? html`
689
- <terra-button
690
- variant="default"
691
- @click=${__privateMethod(this, _viewRunningJob, viewRunningJob_fn)}
692
- >
693
- View Running Job
694
- </terra-button>
695
- ` : nothing}
696
- </div>
697
- </div>
698
- </div>
699
- </div>
700
- ` : nothing}
701
- `;
702
- };
703
- _renderSearchForCollection = new WeakSet();
704
- renderSearchForCollection_fn = function() {
705
- var _a, _b;
706
- let placeholder = "Search all types of resources (e.g. rainfall, GPM, hurricanes, etc.)";
707
- if (this.collectionSearchType === "collection") {
708
- placeholder = "Search collections (e.g. AQUA, GPM_3IMERGH, etc.)";
709
- }
710
- if (this.collectionSearchType === "variable") {
711
- placeholder = "Search variables (e.g. rainfall, hurricanes, etc.)";
712
- }
713
- return html`
714
- <terra-accordion .open=${this.collectionAccordionOpen}>
715
- <div slot="summary">
716
- <span class="accordion-title">Collection:</span>
717
- </div>
718
-
719
- <div
720
- slot="summary-right"
721
- style="display: flex; align-items: center; gap: 10px"
722
- >
723
- ${this.collectionEntryId ? html` <span
724
- class="accordion-value"
725
- id="selected-collection-display"
726
- >${this.collectionEntryId}</span
727
- >
728
-
729
- <button
730
- class="reset-btn"
731
- @click=${() => this.collectionEntryId = void 0}
732
- >
733
- Reset
734
- </button>` : nothing}
735
- </div>
736
-
737
- <div class="search-tabs-mini">
738
- <button
739
- class="search-tab-mini ${this.collectionSearchType === "all" ? "active" : ""}"
740
- @click=${() => this.collectionSearchType = "all"}
741
- >
742
- All
743
- </button>
744
- <button
745
- class="search-tab-mini ${this.collectionSearchType === "collection" ? "active" : ""}"
746
- @click=${() => this.collectionSearchType = "collection"}
747
- >
748
- Collections
749
- </button>
750
- <button
751
- class="search-tab-mini ${this.collectionSearchType === "variable" ? "active" : ""}"
752
- @click=${() => this.collectionSearchType = "variable"}
753
- >
754
- Variables
755
- </button>
756
- </div>
757
-
758
- <div class="search-container-mini">
759
- <input
760
- type="text"
761
- class="search-input-mini"
762
- id="search-input"
763
- placeholder=${placeholder}
764
- @input="${(e) => this.handleCollectionSearch(
765
- e.target.value
766
- )}"
767
- />
768
-
769
- <button class="search-button-mini">
770
- <svg
771
- class="search-icon-mini"
772
- viewBox="0 0 24 24"
773
- fill="currentColor"
774
- >
775
- <path
776
- 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"
777
- />
778
- </svg>
779
- Search
780
- </button>
781
- </div>
782
-
783
- <!-- TODO: it may be nice to have a quick search, perhaps by recent trends?
784
- <div class="quick-links-mini">
785
- <a href="#" class="quick-link-mini" onclick="quickSearch('GPM')"
786
- >GPM Precipitation</a
787
- >
788
- <a href="#" class="quick-link-mini" onclick="quickSearch('MODIS')"
789
- >MODIS Data</a
790
- >
791
- <a
792
- href="#"
793
- class="quick-link-mini"
794
- onclick="quickSearch('Landsat')"
795
- >Landsat Imagery</a
796
- >
797
- <a href="#" class="quick-link-mini" onclick="quickSearch('AIRS')"
798
- >Atmospheric Data</a
799
- >
800
- </div>
801
- -->
802
-
803
- <div id="search-results-section" class="search-results-section">
804
- ${this.collectionSearchLoading ? html`
805
- <div id="loading-mini" class="loading-mini">
806
- <div class="spinner-mini"></div>
807
- <div>Searching NASA CMR...</div>
808
- </div>
809
- ` : ((_a = this.collectionSearchResults) == null ? void 0 : _a.length) ? html` <div
810
- id="results-container-mini"
811
- class="results-container-mini"
812
- >
813
- ${(_b = this.collectionSearchResults) == null ? void 0 : _b.map(
814
- (item) => html`
815
- <div
816
- class="result-item-mini"
817
- @click=${() => {
818
- this.collectionEntryId = item.collectionEntryId;
819
- this.collectionAccordionOpen = false;
820
- this.collectionLoading = true;
821
- if (item.type === "variable") {
822
- this.selectedVariables = [
823
- {
824
- name: item.entryId,
825
- href: "",
826
- conceptId: item.conceptId
827
- }
828
- ];
829
- }
830
- this.requestUpdate();
831
- }}
832
- style="cursor: pointer;"
833
- >
834
- <div class="result-title-mini">
835
- ${item.title}
836
- </div>
837
- <div class="result-id-mini">
838
- ${item.entryId}
839
- </div>
840
- <div class="result-description-mini">
841
- ${item.summary || item.title}
842
- </div>
843
- <div class="result-meta-mini">
844
- <span>📅 2000-02-24 - ongoing</span>
845
- <span>🌍 Global</span>
846
- <span>🏢 ${item.provider}</span>
847
- ${item.type === "variable" ? html` <span
848
- >📊
849
- ${item.collectionEntryId}</span
850
- >` : nothing}
851
- <span class="tag-mini"
852
- >${item.type.toUpperCase()}</span
853
- >
854
- </div>
855
- </div>
856
- `
857
- )}
858
- </div>` : this.collectionSearchResults && this.collectionSearchResults.length === 0 ? html`<div id="no-results-mini" class="no-results-mini">
859
- <p>
860
- No results found for
861
- '${this.collectionSearchQuery}'. Try adjusting
862
- your search term.
863
- </p>
864
- </div>` : nothing}
865
- </div>
866
- </terra-accordion>
867
-
868
- ${this.collectionLoading ? html`
869
- <div
870
- class="collection-loading-bar"
871
- style="display: flex; align-items: center; gap: 10px; margin: 16px 0;"
872
- >
873
- <span
874
- class="loading-spinner"
875
- 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;"
876
- ></span>
877
- Retrieving collection, please wait...
878
- </div>
879
- <style>
880
- @keyframes spin {
881
- 0% {
882
- transform: rotate(0deg);
883
- }
884
- 100% {
885
- transform: rotate(360deg);
886
- }
887
- }
888
- </style>
889
- ` : nothing}
890
- `;
891
- };
892
- _renderOutputFormatSelection = new WeakSet();
893
- renderOutputFormatSelection_fn = function() {
894
- return html`
895
- <terra-accordion>
896
- <div slot="summary">
897
- <span class="accordion-title">File Format:</span>
898
- </div>
899
-
900
- <div
901
- slot="summary-right"
902
- style="display: flex; align-items: center; gap: 10px;"
903
- >
904
- <span>${getFriendlyNameForMimeType(this.selectedFormat)}</span>
905
-
906
- <button class="reset-btn" @click=${__privateGet(this, _resetFormatSelection)}>
907
- Reset
908
- </button>
909
- </div>
910
-
911
- <div class="accordion-content" style="margin-top: 12px;">
912
- ${(() => {
913
- var _a;
914
- const allFormats = ((_a = this.collectionWithServices) == null ? void 0 : _a.outputFormats) || [];
915
- const uniqueFormats = Array.from(new Set(allFormats));
916
- const hasNetcdf4 = uniqueFormats.includes(
917
- "application/x-netcdf4"
918
- );
919
- const hasNetcdfClassic = uniqueFormats.includes("application/netcdf");
920
- let displayFormats = uniqueFormats;
921
- if (hasNetcdf4 && hasNetcdfClassic) {
922
- displayFormats = uniqueFormats.filter(
923
- (f) => f !== "application/netcdf"
924
- );
925
- }
926
- return displayFormats.map(
927
- (format) => html`
928
- <label
929
- style="display: flex; align-items: center; gap: 8px; padding: 5px;"
930
- >
931
- <input
932
- type="radio"
933
- name="output-format"
934
- value="${format}"
935
- .checked=${this.selectedFormat === format}
936
- @change=${() => this.selectedFormat = format}
937
- />
938
- ${getFriendlyNameForMimeType(format)}
939
- </label>
940
- `
941
- );
942
- })()}
943
- </div>
944
- </terra-accordion>
945
- `;
946
- };
947
- _renderDateRangeSelection = new WeakSet();
948
- renderDateRangeSelection_fn = function() {
949
- var _a, _b, _c, _d, _e, _f;
950
- const { startDate: defaultStartDate, endDate: defaultEndDate } = __privateMethod(this, _getCollectionDateRange, getCollectionDateRange_fn).call(this);
951
- const startDate = (_b = (_a = this.selectedDateRange.startDate) != null ? _a : this.granuleMinDate) != null ? _b : defaultStartDate;
952
- const endDate = (_d = (_c = this.selectedDateRange.endDate) != null ? _c : this.granuleMaxDate) != null ? _d : defaultEndDate;
953
- const showError = this.touchedFields.has("date") && (!this.selectedDateRange.startDate || !this.selectedDateRange.endDate);
954
- return html`
955
- <terra-accordion>
956
- <div slot="summary">
957
- <span class="accordion-title">Refine Date Range:</span>
958
- </div>
959
-
960
- <div
961
- slot="summary-right"
962
- style="display: flex; align-items: center; gap: 10px;"
963
- >
964
- ${showError ? html`<span class="accordion-value error"
965
- >Please select a date range</span
966
- >` : this.touchedFields.has("date") && startDate && endDate ? html`<span class="accordion-value"
967
- >${startDate} to ${endDate}</span
968
- >` : nothing}
969
- <button class="reset-btn" @click=${__privateGet(this, _resetDateRangeSelection)}>
970
- Reset
971
- </button>
972
- </div>
973
-
974
- <div style="width: 300px">
975
- <terra-date-picker
976
- allow-input
977
- inline
978
- range
979
- split-inputs
980
- show-presets
981
- ?enable-time=${this.controller.isSubDaily}
982
- start-label="Start Date"
983
- end-label="End Date"
984
- .minDate=${(_e = this.granuleMinDate) != null ? _e : defaultStartDate}
985
- .maxDate=${(_f = this.granuleMaxDate) != null ? _f : defaultEndDate}
986
- .startDate=${this.selectedDateRange.startDate}
987
- .endDate=${this.selectedDateRange.endDate}
988
- @terra-date-range-change=${__privateGet(this, _handleDateChange)}
989
- ></terra-date-picker>
990
- </div>
991
-
992
- <div
993
- style="display: flex; gap: 16px; margin-top: 15px; color: #31708f;"
994
- >
995
- <span
996
- ><strong>Available Range:</strong> ${defaultStartDate} to
997
- ${defaultEndDate}</span
998
- >
999
- ${this.controller.isSubDaily ? html`<span
1000
- ><strong>Note:</strong> All dates and times are in
1001
- UTC.</span
1002
- >` : nothing}
1003
- </div>
1004
- </terra-accordion>
1005
- `;
1006
- };
1007
- _handleDateChange = new WeakMap();
1008
- _resetDateRangeSelection = new WeakMap();
1009
- _resetFormatSelection = new WeakMap();
1010
- _getCollectionDateRange = new WeakSet();
1011
- getCollectionDateRange_fn = function() {
1012
- var _a, _b;
1013
- const samplingMinDate = this.controller.granuleMinDate;
1014
- const samplingMaxDate = this.controller.granuleMaxDate;
1015
- if (samplingMinDate && samplingMaxDate) {
1016
- return {
1017
- startDate: samplingMinDate.slice(0, 10),
1018
- endDate: samplingMaxDate.slice(0, 10)
1019
- };
1020
- }
1021
- const temporalExtents = (_b = (_a = this.collectionWithServices) == null ? void 0 : _a.collection) == null ? void 0 : _b.TemporalExtents;
1022
- if (!temporalExtents || !temporalExtents.length)
1023
- return {
1024
- startDate: null,
1025
- endDate: null
1026
- };
1027
- let minStart = null;
1028
- let maxEnd = null;
1029
- const today = /* @__PURE__ */ new Date();
1030
- for (const temporal of temporalExtents) {
1031
- for (const range of temporal.RangeDateTimes) {
1032
- const start = new Date(range.BeginningDateTime);
1033
- let end;
1034
- if (temporal.EndsAtPresentFlag || !range.EndingDateTime) {
1035
- end = today;
1036
- } else {
1037
- end = new Date(range.EndingDateTime);
1038
- }
1039
- if (!minStart || start < minStart)
1040
- minStart = start;
1041
- if (!maxEnd || end > maxEnd)
1042
- maxEnd = end;
1043
- }
1044
- }
1045
- return {
1046
- startDate: minStart ? minStart.toISOString().slice(0, 10) : null,
1047
- endDate: maxEnd ? maxEnd.toISOString().slice(0, 10) : null
1048
- };
1049
- };
1050
- _handleRegionAccordionToggle = new WeakSet();
1051
- handleRegionAccordionToggle_fn = function() {
1052
- var _a;
1053
- (_a = this.spatialPicker) == null ? void 0 : _a.invalidateSize();
1054
- };
1055
- _renderSpatialSelection = new WeakSet();
1056
- renderSpatialSelection_fn = function() {
1057
- var _a, _b, _c, _d, _e;
1058
- const showError = this.touchedFields.has("spatial") && !this.spatialSelection;
1059
- 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;
1060
- if (boundingRects && !Array.isArray(boundingRects)) {
1061
- boundingRects = [boundingRects];
1062
- }
1063
- let spatialString = "";
1064
- if (this.isLatLng(this.spatialSelection)) {
1065
- spatialString = `${this.spatialSelection.lat}, ${this.spatialSelection.lng}`;
1066
- } else if (this.isLatLngBounds(this.spatialSelection)) {
1067
- spatialString = `${this.spatialSelection.getSouthWest().lat}, ${this.spatialSelection.getSouthWest().lng}, ${this.spatialSelection.getNorthEast().lat}, ${this.spatialSelection.getNorthEast().lng}`;
1068
- } else if (this.spatialSelection && "w" in this.spatialSelection && "s" in this.spatialSelection && "e" in this.spatialSelection && "n" in this.spatialSelection) {
1069
- spatialString = `${this.spatialSelection.w}, ${this.spatialSelection.s}, ${this.spatialSelection.e}, ${this.spatialSelection.n}`;
1070
- } else if (this.spatialSelection) {
1071
- spatialString = this.spatialSelection;
1072
- }
1073
- return html`
1074
- <terra-accordion
1075
- @terra-accordion-toggle=${__privateMethod(this, _handleRegionAccordionToggle, handleRegionAccordionToggle_fn)}
1076
- >
1077
- <div slot="summary">
1078
- <span class="accordion-title">Refine Region:</span>
1079
- </div>
1080
-
1081
- <div
1082
- slot="summary-right"
1083
- style="display: flex; align-items: center; gap: 10px;"
1084
- >
1085
- ${showError ? html`<span class="accordion-value error"
1086
- >Please select a region</span
1087
- >` : spatialString ? html`<span class="accordion-value"
1088
- >${spatialString}</span
1089
- >` : nothing}
1090
- <button class="reset-btn" @click=${__privateGet(this, _resetSpatialSelection)}>
1091
- Reset
1092
- </button>
1093
- </div>
1094
- <div class="accordion-content">
1095
- <terra-spatial-picker
1096
- part="spatial-picker"
1097
- inline
1098
- hide-label
1099
- hide-point-selection
1100
- no-world-wrap
1101
- .spatialConstraints=${this.controller.spatialConstraints || "-180, -90, 180, 90"}
1102
- .initialValue=${spatialString}
1103
- @terra-map-change=${__privateGet(this, _handleSpatialChange)}
1104
- ></terra-spatial-picker>
1105
- <div
1106
- style="display: flex; gap: 16px; margin-top: 15px; color: #31708f;"
1107
- >
1108
- <span
1109
- ><strong>Available Range:</strong> ${this.controller.spatialConstraints}</span
1110
- >
1111
- </div>
1112
- </div>
1113
- </terra-accordion>
1114
- `;
1115
- };
1116
- _handleSpatialChange = new WeakMap();
1117
- _resetSpatialSelection = new WeakMap();
1118
- _renderVariableSelection = new WeakSet();
1119
- renderVariableSelection_fn = function() {
1120
- var _a;
1121
- const variables = ((_a = this.collectionWithServices) == null ? void 0 : _a.variables) || [];
1122
- const giovanniError = this.touchedFields.has("variables") && __privateMethod(this, _getGiovanniValidationError, getGiovanniValidationError_fn).call(this);
1123
- const basicError = this.touchedFields.has("variables") && this.selectedVariables.length === 0;
1124
- const showError = giovanniError || basicError;
1125
- const errorMessage = giovanniError || (basicError ? "Please select at least one variable" : "");
1126
- const tree = __privateMethod(this, _buildVariableTree, buildVariableTree_fn).call(this, variables);
1127
- const allGroups = __privateMethod(this, _getAllGroupPaths, getAllGroupPaths_fn).call(this, tree);
1128
- const allExpanded = allGroups.length > 0 && allGroups.every((g) => this.expandedVariableGroups.has(g));
1129
- return html`
1130
- <terra-accordion>
1131
- <div slot="summary">
1132
- <span class="accordion-title">Select Variables:</span>
1133
- </div>
1134
- <div
1135
- slot="summary-right"
1136
- style="display: flex; align-items: center; gap: 10px;"
1137
- >
1138
- ${showError ? html`<span class="accordion-value error"
1139
- >${errorMessage}</span
1140
- >` : this.selectedVariables.length ? html`<span class="accordion-value"
1141
- >${this.selectedVariables.length} selected</span
1142
- >` : nothing}
1143
-
1144
- <button class="reset-btn" @click=${__privateGet(this, _resetVariableSelection)}>
1145
- Reset
1146
- </button>
1147
- </div>
1148
- <div class="accordion-content">
1149
- <terra-input
1150
- label="Filter variables"
1151
- placeholder="Search by variable name..."
1152
- .value=${this.variableFilterText}
1153
- @input=${(e) => {
1154
- const input = e.target;
1155
- this.variableFilterText = input.value;
1156
- __privateMethod(this, _handleVariableFilterChange, handleVariableFilterChange_fn).call(this);
1157
- }}
1158
- style="margin-bottom: 10px;"
1159
- ></terra-input>
1160
- <button
1161
- class="reset-btn"
1162
- style="margin-bottom: 10px;"
1163
- @click=${() => __privateMethod(this, _toggleExpandCollapseAll, toggleExpandCollapseAll_fn).call(this, tree)}
1164
- >
1165
- ${allExpanded ? "Collapse Tree" : "Expand Tree"}
1166
- </button>
1167
-
1168
- ${__privateMethod(this, _isGiovanniFormat, isGiovanniFormat_fn).call(this) && this.giovanniConfiguredVariables ? html`
1169
- <terra-alert
1170
- open
1171
- appearance="white"
1172
- style="margin: 10px 0"
1173
- >
1174
- <terra-icon
1175
- slot="icon"
1176
- name="outline-information-circle"
1177
- library="heroicons"
1178
- ></terra-icon>
1179
- Only certain variables are supported for the
1180
- selected output format. (Giovanni service)
1181
- </terra-alert>
1182
- ` : nothing}
1183
- ${variables.length === 0 ? html`<p style="color: #666; font-style: italic;">
1184
- No variables available for this collection.
1185
- </p>` : __privateMethod(this, _renderVariableTree, renderVariableTree_fn).call(this, __privateMethod(this, _filterVariableTree, filterVariableTree_fn).call(this, tree), [])}
1186
- </div>
1187
- </terra-accordion>
1188
- `;
1189
- };
1190
- _filterVariableTree = new WeakSet();
1191
- filterVariableTree_fn = function(tree) {
1192
- if (!this.variableFilterText.trim()) {
1193
- return tree;
1194
- }
1195
- const filterText = this.variableFilterText.toLowerCase().trim();
1196
- const filterNode = (node) => {
1197
- const result = {};
1198
- for (const [key, value] of Object.entries(node)) {
1199
- if (value.__isLeaf) {
1200
- const variableName = value.__variable.name.toLowerCase();
1201
- if (variableName.includes(filterText)) {
1202
- result[key] = value;
1203
- }
1204
- } else {
1205
- const filteredChildren = filterNode(value.__children);
1206
- if (Object.keys(filteredChildren).length > 0 || key.toLowerCase().includes(filterText)) {
1207
- result[key] = __spreadProps(__spreadValues({}, value), {
1208
- __children: filteredChildren
1209
- });
1210
- }
1211
- }
1212
- }
1213
- return result;
1214
- };
1215
- return filterNode(tree);
1216
- };
1217
- _handleVariableFilterChange = new WeakSet();
1218
- handleVariableFilterChange_fn = function() {
1219
- var _a;
1220
- if (!this.variableFilterText.trim()) {
1221
- return;
1222
- }
1223
- const variables = ((_a = this.collectionWithServices) == null ? void 0 : _a.variables) || [];
1224
- const tree = __privateMethod(this, _buildVariableTree, buildVariableTree_fn).call(this, variables);
1225
- const filterText = this.variableFilterText.toLowerCase().trim();
1226
- const groupsToExpand = /* @__PURE__ */ new Set();
1227
- const findMatchingGroups = (node, path = []) => {
1228
- for (const [key, value] of Object.entries(node)) {
1229
- if (value.__isLeaf) {
1230
- const variableName = value.__variable.name.toLowerCase();
1231
- if (variableName.includes(filterText)) {
1232
- for (let i = 0; i < path.length; i++) {
1233
- const groupPath = path.slice(0, i + 1).join("/");
1234
- groupsToExpand.add(groupPath);
1235
- }
1236
- }
1237
- } else {
1238
- const groupPath = [...path, key].join("/");
1239
- findMatchingGroups(value.__children, [...path, key]);
1240
- if (key.toLowerCase().includes(filterText)) {
1241
- groupsToExpand.add(groupPath);
1242
- }
1243
- }
1244
- }
1245
- };
1246
- findMatchingGroups(tree);
1247
- if (groupsToExpand.size > 0) {
1248
- this.expandedVariableGroups = /* @__PURE__ */ new Set([
1249
- ...this.expandedVariableGroups,
1250
- ...groupsToExpand
1251
- ]);
1252
- }
1253
- };
1254
- _buildVariableTree = new WeakSet();
1255
- buildVariableTree_fn = function(variables) {
1256
- let filteredVariables = variables;
1257
- if (__privateMethod(this, _isGiovanniFormat, isGiovanniFormat_fn).call(this) && this.giovanniConfiguredVariables) {
1258
- const originalCount = variables.length;
1259
- filteredVariables = variables.filter((v) => {
1260
- var _a, _b, _c;
1261
- const shortName = (_a = this.collectionWithServices) == null ? void 0 : _a.shortName;
1262
- const version = (_c = (_b = this.collectionWithServices) == null ? void 0 : _b.collection) == null ? void 0 : _c.Version;
1263
- if (!shortName || !version) {
1264
- return false;
1265
- }
1266
- const giovanniVariableName = convertVariableEntryIdToGiovanniFormat(
1267
- shortName,
1268
- version,
1269
- v.name
1270
- );
1271
- return this.giovanniConfiguredVariables.has(giovanniVariableName);
1272
- });
1273
- console.log(
1274
- `Filtered ${originalCount - filteredVariables.length} variables for Giovanni format. Showing ${filteredVariables.length} of ${originalCount}.`
1275
- );
1276
- }
1277
- const root = {};
1278
- for (const v of filteredVariables) {
1279
- const parts = v.name.split("/");
1280
- let node = root;
1281
- for (let i = 0; i < parts.length; i++) {
1282
- const part = parts[i];
1283
- if (!node[part])
1284
- node[part] = { __children: {}, __isLeaf: false };
1285
- if (i === parts.length - 1) {
1286
- node[part].__isLeaf = true;
1287
- node[part].__variable = v;
1288
- }
1289
- node = node[part].__children;
1290
- }
1291
- }
1292
- return root;
1293
- };
1294
- _renderVariableTree = new WeakSet();
1295
- renderVariableTree_fn = function(node, path) {
1296
- const isGiovanni = __privateMethod(this, _isGiovanniFormat, isGiovanniFormat_fn).call(this);
1297
- return html`
1298
- <div style="margin-left: ${path.length * 20}px;">
1299
- ${Object.entries(node).map(([key, value]) => {
1300
- const groupPath = [...path, key].join("/");
1301
- if (value.__isLeaf) {
1302
- return html`
1303
- <div class="option-row">
1304
- <label class="checkbox-option">
1305
- <input
1306
- type="${isGiovanni ? "radio" : "checkbox"}"
1307
- name="${isGiovanni ? "variable-selection" : ""}"
1308
- .checked=${this.selectedVariables.some(
1309
- (v) => v.name === value.__variable.name
1310
- )}
1311
- @change=${(e) => __privateMethod(this, _toggleVariableSelection, toggleVariableSelection_fn).call(this, e, value.__variable)}
1312
- />
1313
- <span>${key}</span>
1314
- </label>
1315
- </div>
1316
- `;
1317
- } else {
1318
- const expanded = this.expandedVariableGroups.has(groupPath);
1319
- return html`
1320
- <div class="option-row" style="align-items: flex-start;">
1321
- <span
1322
- style="cursor: pointer; display: flex; align-items: center;"
1323
- @click=${() => __privateMethod(this, _toggleGroupExpand, toggleGroupExpand_fn).call(this, groupPath)}
1324
- >
1325
- <terra-icon
1326
- library="heroicons"
1327
- name="${expanded ? "outline-minus-circle" : "outline-plus-circle"}"
1328
- style="margin-right: 4px;"
1329
- ></terra-icon>
1330
- <span style="font-weight: 500;">${key}</span>
1331
- </span>
1332
- </div>
1333
- ${expanded ? __privateMethod(this, _renderVariableTree, renderVariableTree_fn).call(this, value.__children, [
1334
- ...path,
1335
- key
1336
- ]) : ""}
1337
- `;
1338
- }
1339
- })}
1340
- </div>
1341
- `;
1342
- };
1343
- _getAllGroupPaths = new WeakSet();
1344
- getAllGroupPaths_fn = function(node, path = []) {
1345
- let groups = [];
1346
- for (const [key, value] of Object.entries(node)) {
1347
- if (!value.__isLeaf) {
1348
- const groupPath = [...path, key].join("/");
1349
- groups.push(groupPath);
1350
- groups = groups.concat(
1351
- __privateMethod(this, _getAllGroupPaths, getAllGroupPaths_fn).call(this, value.__children, [...path, key])
1352
- );
1353
- }
1354
- }
1355
- return groups;
1356
- };
1357
- _toggleGroupExpand = new WeakSet();
1358
- toggleGroupExpand_fn = function(groupPath) {
1359
- const set = new Set(this.expandedVariableGroups);
1360
- if (set.has(groupPath)) {
1361
- set.delete(groupPath);
1362
- } else {
1363
- set.add(groupPath);
1364
- }
1365
- this.expandedVariableGroups = set;
1366
- };
1367
- _toggleExpandCollapseAll = new WeakSet();
1368
- toggleExpandCollapseAll_fn = function(tree) {
1369
- const allGroups = __privateMethod(this, _getAllGroupPaths, getAllGroupPaths_fn).call(this, tree);
1370
- const allExpanded = allGroups.length > 0 && allGroups.every((g) => this.expandedVariableGroups.has(g));
1371
- if (allExpanded) {
1372
- this.expandedVariableGroups = /* @__PURE__ */ new Set();
1373
- } else {
1374
- this.expandedVariableGroups = new Set(allGroups);
1375
- }
1376
- };
1377
- _toggleVariableSelection = new WeakSet();
1378
- toggleVariableSelection_fn = function(e, variable) {
1379
- __privateMethod(this, _markFieldTouched, markFieldTouched_fn).call(this, "variables");
1380
- const checked = e.target.checked;
1381
- if (__privateMethod(this, _isGiovanniFormat, isGiovanniFormat_fn).call(this)) {
1382
- if (checked) {
1383
- this.selectedVariables = [variable];
1384
- }
1385
- } else {
1386
- if (checked) {
1387
- if (!this.selectedVariables.some((v) => v.name === variable.name)) {
1388
- this.selectedVariables = [...this.selectedVariables, variable];
1389
- }
1390
- } else {
1391
- this.selectedVariables = this.selectedVariables.filter(
1392
- (v) => v.name !== variable.name
1393
- );
1394
- }
1395
- }
1396
- };
1397
- _markFieldTouched = new WeakSet();
1398
- markFieldTouched_fn = function(field) {
1399
- this.touchedFields = new Set(this.touchedFields).add(field);
1400
- };
1401
- _resetVariableSelection = new WeakMap();
1402
- _renderJobStatus = new WeakSet();
1403
- renderJobStatus_fn = function() {
1404
- var _a, _b;
1405
- if (!((_a = this.controller.currentJob) == null ? void 0 : _a.jobID)) {
1406
- return html`<div class="results-section" id="job-status-section">
1407
- <div
1408
- style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px;"
1409
- >
1410
- <h2 class="results-title" style="margin: 0;">Results:</h2>
1411
- ${!this.isHistoryView ? html`
1412
- <terra-button
1413
- variant="default"
1414
- size="small"
1415
- @click=${__privateMethod(this, _backToSubsetOptions, backToSubsetOptions_fn)}
1416
- >
1417
- ← Back to Subset Options
1418
- </terra-button>
1419
- ` : nothing}
1420
- </div>
1421
-
1422
- <div class="progress-container">
1423
- <div class="progress-text">
1424
- <span class="spinner"></span>
1425
- <span class="status-running">Searching for data...</span>
1426
- </div>
1427
-
1428
- <div class="progress-bar">
1429
- <div class="progress-fill" style="width: 0%"></div>
1430
- </div>
1431
- </div>
1432
-
1433
- ${__privateMethod(this, _renderJobMessage, renderJobMessage_fn).call(this)}
1434
- </div>`;
1435
- }
1436
- return html`
1437
- <div class="results-section" id="job-status-section">
1438
- <div
1439
- style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px;"
1440
- >
1441
- <h2 class="results-title" style="margin: 0;">Results:</h2>
1442
- ${!this.isHistoryView ? html`
1443
- <terra-button
1444
- variant="default"
1445
- size="small"
1446
- @click=${__privateMethod(this, _backToSubsetOptions, backToSubsetOptions_fn)}
1447
- >
1448
- ← Back to Subset Options
1449
- </terra-button>
1450
- ` : nothing}
1451
- </div>
1452
-
1453
- ${this.controller.currentJob.status !== "canceled" && this.controller.currentJob.status !== "failed" ? html` <div class="progress-container">
1454
- <div class="progress-text">
1455
- ${this.controller.currentJob.progress >= 100 ? html`
1456
- <span class="status-complete"
1457
- >✓ Search complete</span
1458
- >
1459
- ` : html`
1460
- <span class="spinner"></span>
1461
- <span class="status-running"
1462
- >Searching for data...
1463
- (${this.controller.currentJob.progress}%)</span
1464
- >
1465
- `}
1466
- </div>
1467
-
1468
- <div class="progress-bar">
1469
- <div
1470
- class="progress-fill"
1471
- style="width: ${this.controller.currentJob.progress}%"
1472
- ></div>
1473
- </div>
1474
- </div>` : nothing}
1475
-
1476
- <div class="search-status">
1477
- <span class="file-count"
1478
- >Found ${__privateMethod(this, _numberOfFilesFoundEstimate, numberOfFilesFoundEstimate_fn).call(this)} files</span
1479
- >
1480
- out of estimated
1481
- <span class="estimated-total"
1482
- >${this.controller.currentJob.numInputGranules.toLocaleString()}</span
1483
- >
1484
- </div>
1485
-
1486
- ${__privateMethod(this, _renderJobMessage, renderJobMessage_fn).call(this)}
1487
- ${((_b = this.controller.currentJob.errors) == null ? void 0 : _b.length) ? html`
1488
- <terra-accordion>
1489
- <div slot="summary">
1490
- <span
1491
- class="accordion-title"
1492
- style="color: #dc3545;"
1493
- >Errors
1494
- (${this.controller.currentJob.errors.length})</span
1495
- >
1496
- </div>
1497
- <div class="accordion-content">
1498
- <ul
1499
- style="color: #dc3545; font-size: 14px; padding-left: 20px;"
1500
- >
1501
- ${this.controller.currentJob.errors.map(
1502
- (err) => html`
1503
- <li style="margin-bottom: 12px;">
1504
- <a
1505
- href="${err.url}"
1506
- target="_blank"
1507
- style="word-break: break-all; color: #dc3545; text-decoration: underline;"
1508
- >
1509
- ${err.url}
1510
- </a>
1511
- <div style="margin-top: 2px;">
1512
- ${err.message}
1513
- </div>
1514
- </li>
1515
- `
1516
- )}
1517
- </ul>
1518
- </div>
1519
- </terra-accordion>
1520
- ` : nothing}
1521
-
1522
- <div class="tabs">
1523
- <button
1524
- class="tab ${this.selectedTab === "web-links" ? "active" : ""}"
1525
- @click=${() => this.selectedTab = "web-links"}
1526
- >
1527
- Web Links
1528
- </button>
1529
-
1530
- ${!this.isHistoryView ? html`
1531
- <button
1532
- class="tab ${this.selectedTab === "selected-params" ? "active" : ""}"
1533
- @click=${() => this.selectedTab = "selected-params"}
1534
- >
1535
- Selected Parameters
1536
- </button>
1537
- ` : nothing}
1538
- </div>
1539
- <div
1540
- id="web-links"
1541
- class="tab-content ${this.selectedTab === "web-links" ? "active" : ""}"
1542
- >
1543
- ${__privateMethod(this, _getDocumentationLinks, getDocumentationLinks_fn).call(this).length ? html`
1544
- <div class="documentation-links">
1545
- ${__privateMethod(this, _getDocumentationLinks, getDocumentationLinks_fn).call(this).map(
1546
- (link) => html`
1547
- <a href="${link.href}" class="doc-link"
1548
- >${link.title}</a
1549
- >
1550
- `
1551
- )}
1552
- </div>
1553
- ` : nothing}
1554
-
1555
- <ul class="file-list">
1556
- ${__privateMethod(this, _getDataLinks, getDataLinks_fn).call(this).map(
1557
- (link) => html`
1558
- <li class="file-item">
1559
- <a
1560
- href="${link.href}"
1561
- class="file-link"
1562
- target="_blank"
1563
- >
1564
- ${link.title}
1565
- </a>
1566
- </li>
1567
- `
1568
- )}
1569
- </ul>
1570
- </div>
1571
-
1572
- <div
1573
- id="selected-params"
1574
- class="tab-content ${this.selectedTab === "selected-params" ? "active" : ""}"
1575
- >
1576
- ${__privateMethod(this, _renderSelectedParams, renderSelectedParams_fn).call(this)}
1577
- </div>
1578
- </div>
1579
-
1580
- ${!this.dialog ? html`
1581
- <div class="footer">
1582
- ${this.controller.currentJob.status === "successful" /* SUCCESSFUL */ || this.controller.currentJob.status === "complete_with_errors" /* COMPLETE_WITH_ERRORS */ ? html`
1583
- <div
1584
- style="display: flex; align-items: center; gap: 8px;"
1585
- >
1586
- <terra-dropdown
1587
- @terra-select=${__privateMethod(this, _handleDownloadSelect, handleDownloadSelect_fn)}
1588
- >
1589
- <terra-button slot="trigger" caret>
1590
- Download Options
1591
- </terra-button>
1592
- <terra-menu>
1593
- <terra-menu-item value="file-list">
1594
- <svg
1595
- slot="prefix"
1596
- viewBox="0 0 24 24"
1597
- width="16"
1598
- height="16"
1599
- style="width: 16px; height: 16px;"
1600
- >
1601
- <path
1602
- fill="currentColor"
1603
- 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"
1604
- />
1605
- </svg>
1606
- File List
1607
- </terra-menu-item>
1608
- <terra-menu-item
1609
- value="python-script"
1610
- >
1611
- <svg
1612
- slot="prefix"
1613
- viewBox="0 0 128 128"
1614
- width="16"
1615
- height="16"
1616
- style="width: 16px; height: 16px;"
1617
- >
1618
- <path
1619
- fill="currentColor"
1620
- 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"
1621
- ></path>
1622
- </svg>
1623
- Python Script
1624
- </terra-menu-item>
1625
- <terra-menu-item
1626
- value="earthdata-download"
1627
- >
1628
- <svg
1629
- slot="prefix"
1630
- viewBox="0 0 64 64"
1631
- fill="none"
1632
- width="16"
1633
- height="16"
1634
- style="width: 16px; height: 16px;"
1635
- >
1636
- <circle
1637
- cx="32"
1638
- cy="32"
1639
- r="28"
1640
- fill="currentColor"
1641
- />
1642
- <path
1643
- d="M32 14v26M32 40l-9-9M32 40l9-9"
1644
- stroke="#fff"
1645
- stroke-width="4"
1646
- stroke-linecap="round"
1647
- stroke-linejoin="round"
1648
- fill="none"
1649
- />
1650
- </svg>
1651
- Earthdata Download
1652
- </terra-menu-item>
1653
- </terra-menu>
1654
- </terra-dropdown>
1655
-
1656
- <terra-button
1657
- outline
1658
- @click=${() => __privateMethod(this, _handleJupyterNotebookClick, handleJupyterNotebookClick_fn).call(this)}
1659
- >
1660
- <terra-icon
1661
- name="outline-code-bracket"
1662
- library="heroicons"
1663
- font-size="1.5em"
1664
- style="margin-right: 5px;"
1665
- ></terra-icon>
1666
- Open in Jupyter Notebook
1667
- </terra-button>
1668
- </div>
1669
- ` : nothing}
1670
- ${this.controller.currentJob.status === "running" ? html`<button
1671
- class="btn btn-success"
1672
- @click=${__privateMethod(this, _cancelJob, cancelJob_fn)}
1673
- ?disabled=${this.cancelingGetData}
1674
- >
1675
- ${this.cancelingGetData ? "Canceling..." : "Cancel request"}
1676
- </button>` : nothing}
1677
-
1678
- <div class="job-info">
1679
- Job ID:
1680
- <span class="job-id">
1681
- ${this.bearerToken ? html`<a
1682
- href="https://harmony.earthdata.nasa.gov/jobs/${this.controller.currentJob.jobID}"
1683
- target="_blank"
1684
- >${this.controller.currentJob.jobID}</a
1685
- >` : this.controller.currentJob.jobID}
1686
- </span>
1687
- <span class="info-icon">?</span>
1688
- </div>
1689
- </div>
1690
- ` : nothing}
1691
- `;
1692
- };
1693
- _renderSelectedParams = new WeakSet();
1694
- renderSelectedParams_fn = function() {
1695
- var _a, _b;
1696
- const collection = (_a = this.collectionWithServices) == null ? void 0 : _a.collection;
1697
- const variables = this.selectedVariables.length ? this.selectedVariables.map((v) => v.name) : ["All"];
1698
- const dateRange = this.selectedDateRange.startDate && this.selectedDateRange.endDate ? `${this.selectedDateRange.startDate} to ${this.selectedDateRange.endDate}` : "\u2014";
1699
- let spatial = "\u2014";
1700
- if (this.spatialSelection) {
1701
- if ("w" in this.spatialSelection) {
1702
- spatial = `Bounding Box: ${this.spatialSelection.w}, ${this.spatialSelection.s}, ${this.spatialSelection.e}, ${this.spatialSelection.n}`;
1703
- } else if ("lat" in this.spatialSelection && "lng" in this.spatialSelection) {
1704
- spatial = `Point: ${this.spatialSelection.lat}, ${this.spatialSelection.lng}`;
1705
- }
1706
- }
1707
- return html`
1708
- <dl class="params-summary">
1709
- <div>
1710
- <dt><strong>Dataset</strong></dt>
1711
- <dd>${(_b = collection == null ? void 0 : collection.EntryTitle) != null ? _b : "\u2014"}</dd>
1712
- </div>
1713
- <div>
1714
- <dt><strong>Variables</strong></dt>
1715
- <dd>${variables.map((v) => html`<div>${v}</div>`)}</dd>
1716
- </div>
1717
- <div>
1718
- <dt><strong>Date Range</strong></dt>
1719
- <dd>${dateRange}</dd>
1720
- </div>
1721
- <div>
1722
- <dt><strong>Spatial</strong></dt>
1723
- <dd>${spatial}</dd>
1724
- </div>
1725
- </dl>
1726
-
1727
- <terra-button @click=${__privateMethod(this, _refineParameters, refineParameters_fn)}
1728
- >Refine Parameters</terra-button
1729
- >
1730
- `;
1731
- };
1732
- _cancelJob = new WeakSet();
1733
- cancelJob_fn = function() {
1734
- this.cancelingGetData = true;
1735
- this.controller.cancelCurrentJob();
1736
- };
1737
- _getData = new WeakSet();
1738
- getData_fn = function() {
1739
- const validationError = __privateMethod(this, _getGiovanniValidationError, getGiovanniValidationError_fn).call(this);
1740
- if (validationError) {
1741
- this.validationError = validationError;
1742
- __privateMethod(this, _markFieldTouched, markFieldTouched_fn).call(this, "variables");
1743
- return;
1744
- }
1745
- this.validationError = void 0;
1746
- this.cancelingGetData = false;
1747
- __privateMethod(this, _touchAllFields, touchAllFields_fn).call(this);
1748
- this.controller.cancelCurrentJob();
1749
- this.controller.currentJob = null;
1750
- this.jobId = void 0;
1751
- this.controller.jobStatusTask.run().then(() => {
1752
- var _a;
1753
- if ((_a = this.controller.currentJob) == null ? void 0 : _a.jobID) {
1754
- this.jobId = this.controller.currentJob.jobID;
1755
- }
1756
- });
1757
- setTimeout(() => {
1758
- const el = this.renderRoot.querySelector("#job-status-section");
1759
- el == null ? void 0 : el.scrollIntoView({ behavior: "smooth" });
1760
- }, 100);
1761
- this.refineParameters = false;
1762
- this.isHistoryView = false;
1763
- };
1764
- _touchAllFields = new WeakSet();
1765
- touchAllFields_fn = function() {
1766
- this.touchedFields = /* @__PURE__ */ new Set(["variables", "spatial"]);
1767
- };
1768
- _numberOfFilesFoundEstimate = new WeakSet();
1769
- numberOfFilesFoundEstimate_fn = function() {
1770
- return Math.floor(
1771
- this.controller.currentJob.numInputGranules * this.controller.currentJob.progress / 100
1772
- );
1773
- };
1774
- _getDocumentationLinks = new WeakSet();
1775
- getDocumentationLinks_fn = function() {
1776
- return this.controller.currentJob.links.filter(
1777
- (link) => link.rel === "stac-catalog-json"
1778
- );
1779
- };
1780
- _getDataLinks = new WeakSet();
1781
- getDataLinks_fn = function() {
1782
- return this.controller.currentJob.links.filter((link) => link.rel === "data");
1783
- };
1784
- _hasAtLeastOneSubsetOption = new WeakSet();
1785
- hasAtLeastOneSubsetOption_fn = function() {
1786
- var _a, _b, _c, _d;
1787
- 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);
1788
- };
1789
- _hasSpatialSubset = new WeakSet();
1790
- hasSpatialSubset_fn = function() {
1791
- var _a, _b;
1792
- return ((_a = this.collectionWithServices) == null ? void 0 : _a.bboxSubset) || ((_b = this.collectionWithServices) == null ? void 0 : _b.shapeSubset);
1793
- };
1794
- _renderJobMessage = new WeakSet();
1795
- renderJobMessage_fn = function() {
1796
- const warningStatuses = [
1797
- "canceled" /* CANCELED */,
1798
- "complete_with_errors" /* COMPLETE_WITH_ERRORS */,
1799
- "running_with_errors" /* RUNNING_WITH_ERRORS */
1800
- ];
1801
- const errorStatuses = ["failed" /* FAILED */];
1802
- let type = "normal";
1803
- if (warningStatuses.includes(this.controller.currentJob.status)) {
1804
- type = "warning";
1805
- } else if (errorStatuses.includes(this.controller.currentJob.status)) {
1806
- type = "error";
1807
- }
1808
- let color, bg;
1809
- if (type === "error") {
1810
- color = "#dc3545";
1811
- bg = "#f8d7da";
1812
- } else if (type === "warning") {
1813
- color = "#856404";
1814
- bg = "#fff3cd";
1815
- } else {
1816
- color = "#555";
1817
- bg = "#f8f9fa";
1818
- }
1819
- return html`
1820
- <div
1821
- style="
1822
- margin: 24px 0 16px 0;
1823
- padding: 16px 20px;
1824
- border-radius: 6px;
1825
- background: ${bg};
1826
- color: ${color};
1827
- border: 1px solid ${color}22;
1828
- "
1829
- >
1830
- ${__privateMethod(this, _getJobMessageText, getJobMessageText_fn).call(this)}
1831
- </div>
1832
- `;
1833
- };
1834
- _getJobMessageText = new WeakSet();
1835
- getJobMessageText_fn = function() {
1836
- var _a;
1837
- return (_a = this.controller.currentJob) == null ? void 0 : _a.message.replace(
1838
- /\b(The job|the job|job|Job)\b/g,
1839
- (match) => {
1840
- switch (match) {
1841
- case "The job":
1842
- return "Your request";
1843
- case "the job":
1844
- return "Your Request";
1845
- case "job":
1846
- return "request";
1847
- case "Job":
1848
- return "Request";
1849
- }
1850
- return match;
1851
- }
1852
- );
1853
- };
1854
- _estimateJobSize = new WeakSet();
1855
- estimateJobSize_fn = function() {
1856
- var _a, _b, _c, _d;
1857
- const collection = (_a = this.collectionWithServices) == null ? void 0 : _a.collection;
1858
- if (!collection)
1859
- return;
1860
- const range = __privateMethod(this, _getCollectionDateRange, getCollectionDateRange_fn).call(this);
1861
- let startDate;
1862
- let endDate;
1863
- let links = (_b = collection.granuleCount) != null ? _b : 0;
1864
- if (this.selectedDateRange.startDate && this.selectedDateRange.endDate) {
1865
- startDate = this.selectedDateRange.startDate;
1866
- endDate = this.selectedDateRange.endDate;
1867
- } else {
1868
- startDate = (_c = this.granuleMinDate) != null ? _c : range.startDate;
1869
- endDate = (_d = this.granuleMaxDate) != null ? _d : range.endDate;
1870
- }
1871
- if (!startDate || !endDate)
1872
- return;
1873
- const start = new Date(startDate);
1874
- const end = new Date(endDate);
1875
- const days = Math.floor((end.getTime() - start.getTime()) / (1e3 * 60 * 60 * 24)) + 1;
1876
- if (range.startDate && range.endDate) {
1877
- const availableDaysInCollection = Math.floor(
1878
- (new Date(range.endDate).getTime() - new Date(range.startDate).getTime()) / (1e3 * 60 * 60 * 24)
1879
- ) + 1;
1880
- const granulesPerDay = links / availableDaysInCollection;
1881
- links = Math.ceil(days * granulesPerDay);
1882
- }
1883
- return { days, links };
1884
- };
1885
- _refineParameters = new WeakSet();
1886
- refineParameters_fn = function() {
1887
- this.refineParameters = true;
1888
- };
1889
- _backToSubsetOptions = new WeakSet();
1890
- backToSubsetOptions_fn = function() {
1891
- this.refineParameters = true;
1892
- setTimeout(() => {
1893
- const container = this.renderRoot.querySelector(".container");
1894
- container == null ? void 0 : container.scrollIntoView({ behavior: "smooth", block: "start" });
1895
- }, 100);
1896
- };
1897
- _viewRunningJob = new WeakSet();
1898
- viewRunningJob_fn = function() {
1899
- this.refineParameters = false;
1900
- setTimeout(() => {
1901
- const el = this.renderRoot.querySelector("#job-status-section");
1902
- el == null ? void 0 : el.scrollIntoView({ behavior: "smooth" });
1903
- }, 100);
1904
- };
1905
- _handleDownloadSelect = new WeakSet();
1906
- handleDownloadSelect_fn = function(event) {
1907
- const item = event.detail.item;
1908
- const value = item.value || item.getTextLabel();
1909
- if (value === "file-list") {
1910
- __privateMethod(this, _downloadLinksAsTxt, downloadLinksAsTxt_fn).call(this, event);
1911
- } else if (value === "python-script") {
1912
- __privateMethod(this, _downloadPythonScript, downloadPythonScript_fn).call(this, event);
1913
- } else if (value === "earthdata-download") {
1914
- __privateMethod(this, _downloadEarthdataDownload, downloadEarthdataDownload_fn).call(this, event);
1915
- }
1916
- };
1917
- _downloadLinksAsTxt = new WeakSet();
1918
- downloadLinksAsTxt_fn = function(event) {
1919
- var _a;
1920
- event.stopPropagation();
1921
- if (!((_a = this.controller.currentJob) == null ? void 0 : _a.links)) {
1922
- return;
1923
- }
1924
- const dataLinks = __privateMethod(this, _getDataLinks, getDataLinks_fn).call(this);
1925
- if (dataLinks.length === 0) {
1926
- return;
1927
- }
1928
- const content = dataLinks.map((link) => link.href).join("\n");
1929
- const blob = new Blob([content], { type: "text/plain" });
1930
- const url = URL.createObjectURL(blob);
1931
- const a = document.createElement("a");
1932
- a.href = url;
1933
- a.download = `subset_links_${this.controller.currentJob.jobID}.txt`;
1934
- document.body.appendChild(a);
1935
- a.click();
1936
- document.body.removeChild(a);
1937
- URL.revokeObjectURL(url);
1938
- };
1939
- _downloadPythonScript = new WeakSet();
1940
- downloadPythonScript_fn = async function(event) {
1941
- var _a, _b, _c;
1942
- event.stopPropagation();
1943
- if (!((_a = this.controller.currentJob) == null ? void 0 : _a.links)) {
1944
- return;
1945
- }
1946
- const response = await fetch(
1947
- getBasePath("assets/data-subsetter/download_subset_files.py.txt")
1948
- );
1949
- if (!response.ok) {
1950
- alert(
1951
- "Sorry, there was a problem generating the Python script. We are investigating the issue.\nYou could try using the Jupyter Notebook in the meantime"
1952
- );
1953
- }
1954
- const content = (await response.text()).replace(/{{jobId}}/gi, this.controller.currentJob.jobID).replace(
1955
- /{{HARMONY_ENV}}/gi,
1956
- `Environment.${(_b = this.environment) == null ? void 0 : _b.toUpperCase()}`
1957
- ).replace(
1958
- /{{EARTHACCESS_ENV}}/gi,
1959
- `earthaccess.${(_c = this.environment) == null ? void 0 : _c.toUpperCase()}`
1960
- );
1961
- const blob = new Blob([content], { type: "text/plain" });
1962
- const url = URL.createObjectURL(blob);
1963
- const a = document.createElement("a");
1964
- a.href = url;
1965
- a.download = `download_subset_files_${this.controller.currentJob.jobID}.py`;
1966
- document.body.appendChild(a);
1967
- a.click();
1968
- document.body.removeChild(a);
1969
- URL.revokeObjectURL(url);
1970
- };
1971
- _downloadEarthdataDownload = new WeakSet();
1972
- downloadEarthdataDownload_fn = async function(event) {
1973
- var _a;
1974
- event.stopPropagation();
1975
- if (!((_a = this.controller.currentJob) == null ? void 0 : _a.links)) {
1976
- return;
1977
- }
1978
- alert("Sorry, Earthdata Download is not currently supported");
1979
- };
1980
- _handleJupyterNotebookClick = new WeakSet();
1981
- handleJupyterNotebookClick_fn = function() {
1982
- var _a;
1983
- const notebook = getNotebook(this);
1984
- console.log("sending data to JupyterLite");
1985
- sendDataToJupyterNotebook("load-notebook", {
1986
- filename: `subset_${(_a = this.controller.currentJob) == null ? void 0 : _a.jobID}.ipynb`,
1987
- notebook,
1988
- bearerToken: this.bearerToken
1989
- });
1990
- };
1991
- _renderAvailableTemporalRangeSection = new WeakSet();
1992
- renderAvailableTemporalRangeSection_fn = function() {
1993
- const { startDate, endDate } = __privateMethod(this, _getCollectionDateRange, getCollectionDateRange_fn).call(this);
1994
- if (!startDate || !endDate)
1995
- return nothing;
1996
- return html`
1997
- <div class="section" style="margin-bottom: 16px;">
1998
- <h2 class="section-title">Available Date Range</h2>
1999
- <div style="color: #31708f; margin-top: 8px;">
2000
- <strong>${startDate}</strong> to <strong>${endDate}</strong>
2001
- </div>
2002
- <div style="font-size: 0.95em; color: #666;">
2003
- This collection does not support temporal subsetting.
2004
- </div>
2005
- </div>
2006
- `;
2007
- };
2008
- _renderAvailableSpatialRangeSection = new WeakSet();
2009
- renderAvailableSpatialRangeSection_fn = function() {
2010
- var _a, _b, _c, _d, _e;
2011
- 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;
2012
- if (!boundingRects || !Array.isArray(boundingRects) || !boundingRects.length)
2013
- return nothing;
2014
- return html`
2015
- <div class="section" style="margin-bottom: 16px;">
2016
- <h2 class="section-title">Available Spatial Area</h2>
2017
- <div style="color: #31708f; margin-top: 8px;">
2018
- ${boundingRects.map(
2019
- (rect) => html`<div>
2020
- <strong>Bounding Box:</strong>
2021
- ${rect.WestBoundingCoordinate},
2022
- ${rect.SouthBoundingCoordinate},
2023
- ${rect.EastBoundingCoordinate},
2024
- ${rect.NorthBoundingCoordinate}
2025
- </div>`
2026
- )}
2027
- </div>
2028
- <div style="font-size: 0.95em; color: #666;">
2029
- This collection does not support spatial subsetting.
2030
- </div>
2031
- </div>
2032
- `;
2033
- };
2034
- _renderDataAccessModeSelection = new WeakSet();
2035
- renderDataAccessModeSelection_fn = function() {
2036
- return html`
2037
- <div class="mode-selection">
2038
- <div class="mode-options">
2039
- <label
2040
- class="mode-option ${this.dataAccessMode === "original" ? "selected" : ""}"
2041
- >
2042
- <input
2043
- type="radio"
2044
- name="data-access-mode"
2045
- value="original"
2046
- .checked=${this.dataAccessMode === "original"}
2047
- @change=${() => this.dataAccessMode = "original"}
2048
- />
2049
- <div class="mode-content">
2050
- <div class="mode-title">Get Original Files</div>
2051
- <div class="mode-description">
2052
- Filter file links directly from the archive.
2053
- </div>
2054
- </div>
2055
- </label>
2056
-
2057
- <label
2058
- class="mode-option ${this.dataAccessMode === "subset" ? "selected" : ""}"
2059
- >
2060
- <input
2061
- type="radio"
2062
- name="data-access-mode"
2063
- value="subset"
2064
- .checked=${this.dataAccessMode === "subset"}
2065
- @change=${() => this.dataAccessMode = "subset"}
2066
- />
2067
- <div class="mode-content">
2068
- <div class="mode-title">Subset Data</div>
2069
- <div class="mode-description">
2070
- Subset the data to your specific needs.
2071
- </div>
2072
- </div>
2073
- </label>
2074
- </div>
2075
- </div>
2076
- `;
2077
- };
2078
- _isGiovanniFormat = new WeakSet();
2079
- isGiovanniFormat_fn = function() {
2080
- return this.selectedFormat === "text/csv" || this.selectedFormat === "image/tiff";
2081
- };
2082
- _getGiovanniValidationError = new WeakSet();
2083
- getGiovanniValidationError_fn = function() {
2084
- if (!__privateMethod(this, _isGiovanniFormat, isGiovanniFormat_fn).call(this)) {
2085
- return null;
2086
- }
2087
- if (this.selectedVariables.length === 0) {
2088
- return "Please select a variable to subset.";
2089
- }
2090
- if (this.selectedVariables.length > 1) {
2091
- return "The selected format only supports subsetting one variable at a time.";
2092
- }
2093
- return null;
2094
- };
2095
- TerraDataSubsetter.styles = [component_styles_default, data_subsetter_styles_default];
2096
- TerraDataSubsetter.dependencies = {
2097
- "terra-accordion": TerraAccordion,
2098
- "terra-date-picker": TerraDatePicker,
2099
- "terra-icon": TerraIcon,
2100
- "terra-input": TerraInput,
2101
- "terra-spatial-picker": TerraSpatialPicker,
2102
- "terra-login": TerraLogin,
2103
- "terra-loader": TerraLoader,
2104
- "terra-data-access": TerraDataAccess,
2105
- "terra-dialog": TerraDialog,
2106
- "terra-dropdown": TerraDropdown,
2107
- "terra-menu": TerraMenu,
2108
- "terra-menu-item": TerraMenuItem,
2109
- "terra-button": TerraButton,
2110
- "terra-alert": TerraAlert
2111
- };
2112
- __decorateClass([
2113
- property({ reflect: true, attribute: "collection-entry-id" })
2114
- ], TerraDataSubsetter.prototype, "collectionEntryId", 2);
2115
- __decorateClass([
2116
- property({ reflect: true, attribute: "short-name" })
2117
- ], TerraDataSubsetter.prototype, "shortName", 2);
2118
- __decorateClass([
2119
- property({ reflect: true, attribute: "version" })
2120
- ], TerraDataSubsetter.prototype, "version", 2);
2121
- __decorateClass([
2122
- property({ reflect: true, type: Boolean, attribute: "show-collection-search" })
2123
- ], TerraDataSubsetter.prototype, "showCollectionSearch", 2);
2124
- __decorateClass([
2125
- property({ reflect: true, type: Boolean, attribute: "show-history-panel" })
2126
- ], TerraDataSubsetter.prototype, "showHistoryPanel", 2);
2127
- __decorateClass([
2128
- property({ reflect: true, attribute: "job-id" })
2129
- ], TerraDataSubsetter.prototype, "jobId", 2);
2130
- __decorateClass([
2131
- property({ attribute: "bearer-token" })
2132
- ], TerraDataSubsetter.prototype, "bearerToken", 2);
2133
- __decorateClass([
2134
- property({ reflect: true })
2135
- ], TerraDataSubsetter.prototype, "dialog", 2);
2136
- __decorateClass([
2137
- property({ reflect: true, type: Boolean, attribute: "is-history-view" })
2138
- ], TerraDataSubsetter.prototype, "isHistoryView", 2);
2139
- __decorateClass([
2140
- state()
2141
- ], TerraDataSubsetter.prototype, "collectionWithServices", 2);
2142
- __decorateClass([
2143
- state()
2144
- ], TerraDataSubsetter.prototype, "selectedVariables", 2);
2145
- __decorateClass([
2146
- state()
2147
- ], TerraDataSubsetter.prototype, "expandedVariableGroups", 2);
2148
- __decorateClass([
2149
- state()
2150
- ], TerraDataSubsetter.prototype, "variableFilterText", 2);
2151
- __decorateClass([
2152
- state()
2153
- ], TerraDataSubsetter.prototype, "touchedFields", 2);
2154
- __decorateClass([
2155
- state()
2156
- ], TerraDataSubsetter.prototype, "spatialSelection", 2);
2157
- __decorateClass([
2158
- state()
2159
- ], TerraDataSubsetter.prototype, "selectedDateRange", 2);
2160
- __decorateClass([
2161
- state()
2162
- ], TerraDataSubsetter.prototype, "selectedFormat", 2);
2163
- __decorateClass([
2164
- state()
2165
- ], TerraDataSubsetter.prototype, "cancelingGetData", 2);
2166
- __decorateClass([
2167
- state()
2168
- ], TerraDataSubsetter.prototype, "selectedTab", 2);
2169
- __decorateClass([
2170
- state()
2171
- ], TerraDataSubsetter.prototype, "refineParameters", 2);
2172
- __decorateClass([
2173
- state()
2174
- ], TerraDataSubsetter.prototype, "collectionSearchType", 2);
2175
- __decorateClass([
2176
- state()
2177
- ], TerraDataSubsetter.prototype, "collectionSearchQuery", 2);
2178
- __decorateClass([
2179
- state()
2180
- ], TerraDataSubsetter.prototype, "collectionSearchLoading", 2);
2181
- __decorateClass([
2182
- state()
2183
- ], TerraDataSubsetter.prototype, "collectionSearchResults", 2);
2184
- __decorateClass([
2185
- state()
2186
- ], TerraDataSubsetter.prototype, "collectionLoading", 2);
2187
- __decorateClass([
2188
- state()
2189
- ], TerraDataSubsetter.prototype, "collectionAccordionOpen", 2);
2190
- __decorateClass([
2191
- state()
2192
- ], TerraDataSubsetter.prototype, "dataAccessMode", 2);
2193
- __decorateClass([
2194
- state()
2195
- ], TerraDataSubsetter.prototype, "validationError", 2);
2196
- __decorateClass([
2197
- state()
2198
- ], TerraDataSubsetter.prototype, "granuleMinDate", 2);
2199
- __decorateClass([
2200
- state()
2201
- ], TerraDataSubsetter.prototype, "granuleMaxDate", 2);
2202
- __decorateClass([
2203
- state()
2204
- ], TerraDataSubsetter.prototype, "giovanniConfiguredVariables", 2);
2205
- __decorateClass([
2206
- query('[part~="spatial-picker"]')
2207
- ], TerraDataSubsetter.prototype, "spatialPicker", 2);
2208
- __decorateClass([
2209
- query("terra-dialog")
2210
- ], TerraDataSubsetter.prototype, "dialogElement", 2);
2211
- __decorateClass([
2212
- watch(["jobId"], { waitUntilFirstUpdate: true })
2213
- ], TerraDataSubsetter.prototype, "jobIdChanged", 1);
2214
- __decorateClass([
2215
- watch(["shortName", "version"])
2216
- ], TerraDataSubsetter.prototype, "shortNameAndVersionChanged", 1);
2217
- __decorateClass([
2218
- watch("collectionEntryId", { waitUntilFirstUpdate: true })
2219
- ], TerraDataSubsetter.prototype, "collectionEntryIdChanged", 1);
2220
- __decorateClass([
2221
- watch(["collectionWithServices"])
2222
- ], TerraDataSubsetter.prototype, "collectionChanged", 1);
2223
- __decorateClass([
2224
- watch(["granuleMinDate", "granuleMaxDate"])
2225
- ], TerraDataSubsetter.prototype, "granuleDatesChanged", 1);
2226
- __decorateClass([
2227
- watch("selectedFormat")
2228
- ], TerraDataSubsetter.prototype, "selectedFormatChanged", 1);
2229
- __decorateClass([
2230
- debounce(500)
2231
- ], TerraDataSubsetter.prototype, "handleCollectionSearch", 1);
2232
-
2233
- export {
2234
- TerraDataSubsetter
2235
- };