@nasa-terra/components 0.0.191 → 0.0.193

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 (1305) hide show
  1. package/cdn/apis/harmony.api.d.ts +10 -1
  2. package/cdn/chunks/chunk.23F22BJH.js +303 -0
  3. package/cdn/chunks/chunk.24B62XIT.js +92 -0
  4. package/cdn/chunks/chunk.262HZ2PW.js +19 -0
  5. package/cdn/chunks/chunk.2C4BQS2H.js +186 -0
  6. package/cdn/chunks/chunk.2LTVK44K.js +19 -0
  7. package/cdn/chunks/chunk.2MCGNUNV.js +19 -0
  8. package/cdn/chunks/chunk.2O6SGHAF.js +195 -0
  9. package/cdn/chunks/chunk.2RJ3FMBS.js +19 -0
  10. package/cdn/chunks/chunk.2U6ULWZU.js +33 -0
  11. package/cdn/chunks/chunk.3DMNGIYG.js +538 -0
  12. package/cdn/chunks/chunk.3GGP5B6G.js +188 -0
  13. package/cdn/chunks/chunk.3T4UCNK5.js +19 -0
  14. package/cdn/chunks/chunk.3TBELWQZ.js +134 -0
  15. package/cdn/chunks/chunk.3WOQXSCF.js +93 -0
  16. package/cdn/chunks/chunk.3ZA77B25.js +310 -0
  17. package/cdn/chunks/chunk.42WUI4KL.js +19 -0
  18. package/cdn/chunks/chunk.44AQ22IH.js +36 -0
  19. package/cdn/chunks/chunk.47QZ5O4A.js +35 -0
  20. package/cdn/chunks/chunk.4GSWBELB.js +29 -0
  21. package/cdn/chunks/chunk.4LPZX7ZP.js +32 -0
  22. package/cdn/chunks/chunk.4PK6F7TQ.js +19 -0
  23. package/cdn/chunks/chunk.4PVJJ22O.js +278 -0
  24. package/cdn/chunks/chunk.5A57ZZLC.js +29 -0
  25. package/cdn/chunks/chunk.5CYLRJPB.js +19 -0
  26. package/cdn/chunks/chunk.5EYYSFOL.js +915 -0
  27. package/cdn/chunks/chunk.5GWWMHJ7.js +539 -0
  28. package/cdn/chunks/chunk.5PYHV7EH.js +29 -0
  29. package/cdn/chunks/chunk.5SCR2NWZ.js +19 -0
  30. package/cdn/chunks/chunk.6KXBCS3L.js +32 -0
  31. package/cdn/chunks/chunk.6Q6YGONG.js +29 -0
  32. package/cdn/chunks/chunk.6QCJUKOR.js +904 -0
  33. package/cdn/chunks/chunk.6XVN6LNG.js +19 -0
  34. package/cdn/chunks/chunk.6XYUXMUR.js +478 -0
  35. package/cdn/chunks/chunk.6ZW3X3WH.js +19 -0
  36. package/cdn/chunks/chunk.77KBVOXZ.js +19 -0
  37. package/cdn/chunks/chunk.7CMOFBGK.js +35 -0
  38. package/cdn/chunks/chunk.7DFRD6TL.js +551 -0
  39. package/cdn/chunks/chunk.7PXLIE6Y.js +41 -0
  40. package/cdn/chunks/chunk.7WWAPL3E.js +241 -0
  41. package/cdn/chunks/chunk.A4GKYWCN.js +35 -0
  42. package/cdn/chunks/chunk.AFLJRQ5L.js +19 -0
  43. package/cdn/chunks/chunk.AFOQS2TB.js +493 -0
  44. package/cdn/chunks/chunk.AO5CRLEQ.js +30 -0
  45. package/cdn/chunks/chunk.AOTSW6PN.js +19 -0
  46. package/cdn/chunks/chunk.AQNSTYWZ.js +357 -0
  47. package/cdn/chunks/chunk.ASS72YVP.js +86 -0
  48. package/cdn/chunks/chunk.ATJWBDLK.js +37 -0
  49. package/cdn/chunks/chunk.AVBVAXIQ.js +1197 -0
  50. package/cdn/chunks/chunk.AWAFPU3N.js +1259 -0
  51. package/cdn/chunks/chunk.B3RMBZYQ.js +19 -0
  52. package/cdn/chunks/chunk.BC4ZMQCB.js +35 -0
  53. package/cdn/chunks/chunk.BCZ66TID.js +19 -0
  54. package/cdn/chunks/chunk.BD3FY2DX.js +945 -0
  55. package/cdn/chunks/chunk.BJ53T7YS.js +29 -0
  56. package/cdn/chunks/chunk.BQYY6OOZ.js +36 -0
  57. package/cdn/chunks/chunk.BSJUFDA5.js +1975 -0
  58. package/cdn/chunks/chunk.BTDPXFC4.js +19 -0
  59. package/cdn/chunks/chunk.BW6CO36S.js +36 -0
  60. package/cdn/chunks/chunk.BW6UHDXQ.js +60 -0
  61. package/cdn/chunks/chunk.C4PJTDXM.js +224 -0
  62. package/cdn/chunks/chunk.CACZ53WP.js +49 -0
  63. package/cdn/chunks/chunk.CAP2S4YD.js +19 -0
  64. package/cdn/chunks/chunk.CE24RZ52.js +19 -0
  65. package/cdn/chunks/chunk.CGTVI7DB.js +19 -0
  66. package/cdn/chunks/chunk.CIASH63X.js +19 -0
  67. package/cdn/chunks/chunk.CIEQDZYN.js +19 -0
  68. package/cdn/chunks/chunk.CQER7LGP.js +135 -0
  69. package/cdn/chunks/chunk.CRW7BLZC.js +19 -0
  70. package/cdn/chunks/chunk.CSEUC56Z.js +29 -0
  71. package/cdn/chunks/chunk.CSVBPSJG.js +893 -0
  72. package/cdn/chunks/chunk.CVX3LVBF.js +32 -0
  73. package/cdn/chunks/chunk.CXQ4VJHQ.js +29 -0
  74. package/cdn/chunks/chunk.DMRNFEKK.js +19 -0
  75. package/cdn/chunks/chunk.DNEV52SA.js +19 -0
  76. package/cdn/chunks/chunk.DO2XVOUK.js +19 -0
  77. package/cdn/chunks/chunk.DPSHTZ6P.js +392 -0
  78. package/cdn/chunks/chunk.EGKK52TT.js +123 -0
  79. package/cdn/chunks/chunk.ELGWQAWN.js +29 -0
  80. package/cdn/chunks/chunk.EZQMJQVW.js +29 -0
  81. package/cdn/chunks/chunk.F36QQKVA.js +155 -0
  82. package/cdn/chunks/chunk.F55SX2J2.js +47 -0
  83. package/cdn/chunks/chunk.FIEZKD4M.js +170 -0
  84. package/cdn/chunks/chunk.FLEVFZIL.js +132 -0
  85. package/cdn/chunks/chunk.FLXIUURB.js +330 -0
  86. package/cdn/chunks/chunk.FOXSLM3U.js +138 -0
  87. package/cdn/chunks/chunk.FUWO4LKV.js +32 -0
  88. package/cdn/chunks/chunk.FX5L3U44.js +29 -0
  89. package/cdn/chunks/chunk.FZJL3WN4.js +19 -0
  90. package/cdn/chunks/chunk.GILBGDM2.js +663 -0
  91. package/cdn/chunks/chunk.GTRUGE5H.js +19 -0
  92. package/cdn/chunks/chunk.GUVYSWLT.js +32 -0
  93. package/cdn/chunks/chunk.H2UK4RZG.js +29 -0
  94. package/cdn/chunks/chunk.HD56KHLF.js +610 -0
  95. package/cdn/chunks/chunk.HEFAOEHC.js +230 -0
  96. package/cdn/chunks/chunk.HH5XFUTY.js +32 -0
  97. package/cdn/chunks/chunk.HNU53HJR.js +377 -0
  98. package/cdn/chunks/chunk.HO7ISBZY.js +29 -0
  99. package/cdn/chunks/chunk.HXJ25X46.js +599 -0
  100. package/cdn/chunks/chunk.ISO434FT.js +19 -0
  101. package/cdn/chunks/chunk.ITMZI6KX.js +19 -0
  102. package/cdn/chunks/chunk.IUF2TCQV.js +19 -0
  103. package/cdn/chunks/chunk.IUFNCUXD.js +19 -0
  104. package/cdn/chunks/chunk.IWJ76MKB.js +19 -0
  105. package/cdn/chunks/chunk.IZ4OPEJL.js +60 -0
  106. package/cdn/chunks/chunk.J252E7IC.js +56075 -0
  107. package/cdn/chunks/chunk.J4P5RDYK.js +19 -0
  108. package/cdn/chunks/chunk.JCC5JYVG.js +196 -0
  109. package/cdn/chunks/chunk.JNTGTK3Y.js +29 -0
  110. package/cdn/chunks/chunk.JOIINCST.js +616 -0
  111. package/cdn/chunks/chunk.JRI3R6Z4.js +658 -0
  112. package/cdn/chunks/chunk.JRIFL3YL.js +190 -0
  113. package/cdn/chunks/chunk.JUYFC4YQ.js +62 -0
  114. package/cdn/chunks/chunk.JZ3DQBSM.js +34 -0
  115. package/cdn/chunks/chunk.K4MLSCG6.js +29 -0
  116. package/cdn/chunks/chunk.KCHUWH3B.js +158 -0
  117. package/cdn/chunks/chunk.KF5FM4UM.js +94 -0
  118. package/cdn/chunks/chunk.KOGUP64A.js +29 -0
  119. package/cdn/chunks/chunk.KP25A3GD.js +19 -0
  120. package/cdn/chunks/chunk.KPRLGL6V.js +294 -0
  121. package/cdn/chunks/chunk.L5LGMK4B.js +29 -0
  122. package/cdn/chunks/chunk.LHV7DALC.js +19 -0
  123. package/cdn/chunks/chunk.LJDDDHCY.js +234 -0
  124. package/cdn/chunks/chunk.LLZ4T36T.js +276 -0
  125. package/cdn/chunks/chunk.LQZHP5Q5.js +443 -0
  126. package/cdn/chunks/chunk.LTERX6XG.js +29 -0
  127. package/cdn/chunks/chunk.LY225GGQ.js +33 -0
  128. package/cdn/chunks/chunk.MACHE6S2.js +29 -0
  129. package/cdn/chunks/chunk.ME5CNTQ6.js +19 -0
  130. package/cdn/chunks/chunk.MICAEOPF.js +29 -0
  131. package/cdn/chunks/chunk.MJQUICWQ.js +29 -0
  132. package/cdn/chunks/chunk.MN4LTLTG.js +259 -0
  133. package/cdn/chunks/chunk.MOBZATSV.js +68 -0
  134. package/cdn/chunks/chunk.MQWYVNEP.js +32 -0
  135. package/cdn/chunks/chunk.MS4CC6YY.js +19 -0
  136. package/cdn/chunks/chunk.MUGXJ7OD.js +19 -0
  137. package/cdn/chunks/chunk.MWU5BT2I.js +128 -0
  138. package/cdn/chunks/chunk.MWWVSDXP.js +293 -0
  139. package/cdn/chunks/chunk.N2MTELAK.js +19 -0
  140. package/cdn/chunks/chunk.N3W7SNA2.js +359 -0
  141. package/cdn/chunks/chunk.NAVESOCY.js +19 -0
  142. package/cdn/chunks/chunk.NLZDX26M.js +19 -0
  143. package/cdn/chunks/chunk.NQMVUWEO.js +19 -0
  144. package/cdn/chunks/chunk.NZ5K67F5.js +32 -0
  145. package/cdn/chunks/chunk.O4PUDLBX.js +82 -0
  146. package/cdn/chunks/chunk.O4RVOCXY.js +35 -0
  147. package/cdn/chunks/chunk.OH7UMU66.js +537 -0
  148. package/cdn/chunks/chunk.P3Z633U6.js +29 -0
  149. package/cdn/chunks/chunk.PDO3A7SZ.js +19 -0
  150. package/cdn/chunks/chunk.PFBJCAEJ.js +29 -0
  151. package/cdn/chunks/chunk.PJANLDEK.js +19 -0
  152. package/cdn/chunks/chunk.PJVROMSD.js +29 -0
  153. package/cdn/chunks/chunk.PLDCR7N5.js +29 -0
  154. package/cdn/chunks/chunk.PS2PE2TF.js +19 -0
  155. package/cdn/chunks/chunk.PTK3X5ML.js +9743 -0
  156. package/cdn/chunks/chunk.PYRLBGCN.js +474 -0
  157. package/cdn/chunks/chunk.QNAYSEGG.js +19 -0
  158. package/cdn/chunks/chunk.QT355OPF.js +78 -0
  159. package/cdn/chunks/chunk.RC2J3PHW.js +29 -0
  160. package/cdn/chunks/chunk.RCIQ4ROW.js +19 -0
  161. package/cdn/chunks/chunk.RCMAF3C2.js +36 -0
  162. package/cdn/chunks/chunk.RD4KWNAE.js +524 -0
  163. package/cdn/chunks/chunk.RDXA6MDC.js +32 -0
  164. package/cdn/chunks/chunk.RHY7O2IS.js +110 -0
  165. package/cdn/chunks/chunk.RIVNZRQK.js +19 -0
  166. package/cdn/chunks/chunk.RSZW77LZ.js +136 -0
  167. package/cdn/chunks/chunk.S2OT2J42.js +29 -0
  168. package/cdn/chunks/chunk.SHOGW7F7.js +19 -0
  169. package/cdn/chunks/chunk.SHUZWK5L.js +71 -0
  170. package/cdn/chunks/chunk.SQLQ6EBJ.js +32 -0
  171. package/cdn/chunks/chunk.T6YUOYL4.js +32 -0
  172. package/cdn/chunks/chunk.TBVGVLZL.js +19 -0
  173. package/cdn/chunks/chunk.TDUAL655.js +19 -0
  174. package/cdn/chunks/chunk.TFYL5E3X.js +33 -0
  175. package/cdn/chunks/chunk.TICG3KYV.js +19 -0
  176. package/cdn/chunks/chunk.TJCVSSUM.js +32 -0
  177. package/cdn/chunks/chunk.TWSGI5KV.js +74 -0
  178. package/cdn/chunks/chunk.U45Q563O.js +19 -0
  179. package/cdn/chunks/chunk.UAXYHWAH.js +2546 -0
  180. package/cdn/chunks/chunk.UCILY7QU.js +113 -0
  181. package/cdn/chunks/chunk.UTVU3EOT.js +99 -0
  182. package/cdn/chunks/chunk.UXIPJ35C.js +104 -0
  183. package/cdn/chunks/chunk.UXZGV7OS.js +19 -0
  184. package/cdn/chunks/chunk.UZKNIZQQ.js +29 -0
  185. package/cdn/chunks/chunk.VBF5JP2E.js +19 -0
  186. package/cdn/chunks/chunk.VEM372CX.js +231 -0
  187. package/cdn/chunks/chunk.VIJH6FVX.js +19 -0
  188. package/cdn/chunks/chunk.VIUYJZVN.js +34 -0
  189. package/cdn/chunks/chunk.VJKTJ73J.js +2690 -0
  190. package/cdn/chunks/chunk.VK3BR2YG.js +19 -0
  191. package/cdn/chunks/chunk.VPEEKXD6.js +63 -0
  192. package/cdn/chunks/chunk.VU4T4F4P.js +39 -0
  193. package/cdn/chunks/chunk.W5VXUQDQ.js +19 -0
  194. package/cdn/chunks/chunk.WCROJ64G.js +19 -0
  195. package/cdn/chunks/chunk.WCZJQNF6.js +19 -0
  196. package/cdn/chunks/chunk.WQ2HWOXW.js +29 -0
  197. package/cdn/chunks/chunk.WQXDVT6E.js +151 -0
  198. package/cdn/chunks/chunk.XB4O6ZSP.js +139 -0
  199. package/cdn/chunks/chunk.XB5XP6AB.js +83 -0
  200. package/cdn/chunks/chunk.XIOI4NMY.js +32 -0
  201. package/cdn/chunks/chunk.XSL6GUNV.js +45 -0
  202. package/cdn/chunks/chunk.XTPN2WIP.js +29 -0
  203. package/cdn/chunks/chunk.XWMOTNMD.js +29 -0
  204. package/cdn/chunks/chunk.Y6ZXBJLT.js +37 -0
  205. package/cdn/chunks/chunk.YAUBOXKE.js +294 -0
  206. package/cdn/chunks/chunk.YHWPDVRQ.js +19 -0
  207. package/cdn/chunks/chunk.YLZNYAVZ.js +19 -0
  208. package/cdn/chunks/chunk.YO72L3YT.js +34 -0
  209. package/cdn/chunks/chunk.YWD5NKI4.js +161 -0
  210. package/cdn/chunks/chunk.Z6WQVHME.js +33 -0
  211. package/cdn/chunks/chunk.ZC47Q6ZQ.js +266 -0
  212. package/cdn/chunks/chunk.ZGVYKMM3.js +32 -0
  213. package/cdn/chunks/chunk.ZV3I4P4N.js +33 -0
  214. package/cdn/chunks/chunk.ZWCA3BKW.js +68 -0
  215. package/cdn/chunks/chunk.ZWWJ6B3Q.js +99 -0
  216. package/cdn/components/accordion/accordion.component.js +3 -3
  217. package/cdn/components/accordion/accordion.js +4 -4
  218. package/cdn/components/alert/alert.component.js +2 -2
  219. package/cdn/components/alert/alert.js +3 -3
  220. package/cdn/components/avatar/avatar.component.js +3 -3
  221. package/cdn/components/avatar/avatar.js +4 -4
  222. package/cdn/components/badge/badge.component.js +2 -2
  223. package/cdn/components/badge/badge.js +3 -3
  224. package/cdn/components/banner/banner.component.js +2 -2
  225. package/cdn/components/banner/banner.js +3 -3
  226. package/cdn/components/breadcrumb/breadcrumb.component.js +2 -2
  227. package/cdn/components/breadcrumb/breadcrumb.js +3 -3
  228. package/cdn/components/breadcrumbs/breadcrumbs.component.js +2 -2
  229. package/cdn/components/breadcrumbs/breadcrumbs.js +3 -3
  230. package/cdn/components/browse-variables/browse-variables.component.js +15 -15
  231. package/cdn/components/browse-variables/browse-variables.controller.js +4 -4
  232. package/cdn/components/browse-variables/browse-variables.js +16 -16
  233. package/cdn/components/button/button.component.js +3 -3
  234. package/cdn/components/button/button.js +4 -4
  235. package/cdn/components/button-group/button-group.component.js +2 -2
  236. package/cdn/components/button-group/button-group.js +3 -3
  237. package/cdn/components/caption/caption.component.js +2 -2
  238. package/cdn/components/caption/caption.js +3 -3
  239. package/cdn/components/card/card.component.js +2 -2
  240. package/cdn/components/card/card.js +3 -3
  241. package/cdn/components/checkbox/checkbox.component.js +3 -3
  242. package/cdn/components/checkbox/checkbox.js +4 -4
  243. package/cdn/components/chip/chip.component.js +2 -2
  244. package/cdn/components/chip/chip.js +3 -3
  245. package/cdn/components/combobox/combobox.component.js +2 -2
  246. package/cdn/components/combobox/combobox.js +3 -3
  247. package/cdn/components/data-access/data-access.component.js +23 -23
  248. package/cdn/components/data-access/data-access.js +24 -24
  249. package/cdn/components/data-grid/data-grid.component.js +3 -3
  250. package/cdn/components/data-grid/data-grid.js +4 -4
  251. package/cdn/components/data-rods/data-rods.component.js +34 -34
  252. package/cdn/components/data-rods/data-rods.js +35 -35
  253. package/cdn/components/data-subsetter/data-subsetter.component.d.ts +3 -0
  254. package/cdn/components/data-subsetter/data-subsetter.component.js +34 -33
  255. package/cdn/components/data-subsetter/data-subsetter.js +35 -34
  256. package/cdn/components/data-subsetter/notebooks/subsetter-notebook.js +1 -1
  257. package/cdn/components/data-subsetter-history/data-subsetter-history.component.js +35 -34
  258. package/cdn/components/data-subsetter-history/data-subsetter-history.js +36 -35
  259. package/cdn/components/date-picker/date-picker.component.d.ts +27 -0
  260. package/cdn/components/date-picker/date-picker.component.js +7 -7
  261. package/cdn/components/date-picker/date-picker.js +8 -8
  262. package/cdn/components/date-range-slider/date-range-slider.component.js +2 -2
  263. package/cdn/components/date-range-slider/date-range-slider.js +3 -3
  264. package/cdn/components/dialog/dialog.component.js +4 -4
  265. package/cdn/components/dialog/dialog.js +5 -5
  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 +10 -10
  271. package/cdn/components/earthdata-login/earthdata-login.js +11 -11
  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/harmony-history/harmony-history.component.js +10 -9
  275. package/cdn/components/harmony-history/harmony-history.js +11 -10
  276. package/cdn/components/icon/icon.component.js +2 -2
  277. package/cdn/components/icon/icon.js +3 -3
  278. package/cdn/components/input/input.component.js +3 -3
  279. package/cdn/components/input/input.js +4 -4
  280. package/cdn/components/loader/loader.component.js +2 -2
  281. package/cdn/components/loader/loader.js +3 -3
  282. package/cdn/components/login/login.component.js +8 -8
  283. package/cdn/components/login/login.js +9 -9
  284. package/cdn/components/map/map.component.js +6 -6
  285. package/cdn/components/map/map.js +7 -7
  286. package/cdn/components/map/map.service.js +1 -1
  287. package/cdn/components/map/type.d.ts +2 -0
  288. package/cdn/components/menu/menu.component.js +2 -2
  289. package/cdn/components/menu/menu.js +3 -3
  290. package/cdn/components/menu-item/menu-item.component.js +5 -5
  291. package/cdn/components/menu-item/menu-item.js +6 -6
  292. package/cdn/components/option/option.component.js +3 -3
  293. package/cdn/components/option/option.js +4 -4
  294. package/cdn/components/pagination/pagination.component.js +3 -3
  295. package/cdn/components/pagination/pagination.js +4 -4
  296. package/cdn/components/plot/plot.component.js +2 -2
  297. package/cdn/components/plot/plot.js +3 -3
  298. package/cdn/components/plot-toolbar/notebooks/time-averaged-map-notebook.js +1 -1
  299. package/cdn/components/plot-toolbar/notebooks/time-series-notebook.js +1 -1
  300. package/cdn/components/plot-toolbar/plot-toolbar.component.js +15 -15
  301. package/cdn/components/plot-toolbar/plot-toolbar.controller.js +3 -3
  302. package/cdn/components/plot-toolbar/plot-toolbar.js +16 -16
  303. package/cdn/components/popup/popup.component.js +2 -2
  304. package/cdn/components/popup/popup.js +3 -3
  305. package/cdn/components/progress-bar/progress-bar.component.js +2 -2
  306. package/cdn/components/progress-bar/progress-bar.js +3 -3
  307. package/cdn/components/radio/radio.component.js +2 -2
  308. package/cdn/components/radio/radio.js +3 -3
  309. package/cdn/components/radio-group/radio-group.component.js +2 -2
  310. package/cdn/components/radio-group/radio-group.js +3 -3
  311. package/cdn/components/scroll-hint/scroll-hint.component.js +3 -3
  312. package/cdn/components/scroll-hint/scroll-hint.js +4 -4
  313. package/cdn/components/select/select.component.js +5 -5
  314. package/cdn/components/select/select.js +6 -6
  315. package/cdn/components/site-header/site-header.component.js +3 -3
  316. package/cdn/components/site-header/site-header.js +3 -3
  317. package/cdn/components/site-navigation/site-navigation.component.js +2 -2
  318. package/cdn/components/site-navigation/site-navigation.js +2 -2
  319. package/cdn/components/skeleton/skeleton.component.js +2 -2
  320. package/cdn/components/skeleton/skeleton.js +3 -3
  321. package/cdn/components/slider/slider.component.js +2 -2
  322. package/cdn/components/slider/slider.js +3 -3
  323. package/cdn/components/spatial-picker/spatial-picker.component.d.ts +5 -0
  324. package/cdn/components/spatial-picker/spatial-picker.component.js +11 -11
  325. package/cdn/components/spatial-picker/spatial-picker.js +12 -12
  326. package/cdn/components/status-indicator/status-indicator.component.js +2 -2
  327. package/cdn/components/status-indicator/status-indicator.js +3 -3
  328. package/cdn/components/stepper/stepper.component.js +2 -2
  329. package/cdn/components/stepper/stepper.js +3 -3
  330. package/cdn/components/stepper-step/stepper-step.component.js +3 -3
  331. package/cdn/components/stepper-step/stepper-step.js +4 -4
  332. package/cdn/components/tab/tab.component.js +3 -3
  333. package/cdn/components/tab/tab.js +4 -4
  334. package/cdn/components/tab-panel/tab-panel.component.js +2 -2
  335. package/cdn/components/tab-panel/tab-panel.js +3 -3
  336. package/cdn/components/tabs/tabs.component.js +3 -3
  337. package/cdn/components/tabs/tabs.js +4 -4
  338. package/cdn/components/tag/tag.component.js +3 -3
  339. package/cdn/components/tag/tag.js +4 -4
  340. package/cdn/components/textarea/textarea.component.js +2 -2
  341. package/cdn/components/textarea/textarea.js +3 -3
  342. package/cdn/components/time-average-map/time-average-map.component.js +26 -26
  343. package/cdn/components/time-average-map/time-average-map.controller.js +10 -10
  344. package/cdn/components/time-average-map/time-average-map.js +27 -27
  345. package/cdn/components/time-series/time-series-cache.service.d.ts +6 -0
  346. package/cdn/components/time-series/time-series-cache.service.js +1 -1
  347. package/cdn/components/time-series/time-series.component.js +27 -27
  348. package/cdn/components/time-series/time-series.controller.js +11 -11
  349. package/cdn/components/time-series/time-series.js +28 -28
  350. package/cdn/components/toast/toast.component.js +3 -3
  351. package/cdn/components/toast/toast.js +4 -4
  352. package/cdn/components/toggle/toggle.component.js +2 -2
  353. package/cdn/components/toggle/toggle.js +3 -3
  354. package/cdn/components/tooltip/tooltip.component.js +3 -3
  355. package/cdn/components/tooltip/tooltip.js +4 -4
  356. package/cdn/components/variable-combobox/variable-combobox.component.js +6 -6
  357. package/cdn/components/variable-combobox/variable-combobox.js +7 -7
  358. package/cdn/components/variable-keyword-search/variable-keyword-search.component.js +10 -10
  359. package/cdn/components/variable-keyword-search/variable-keyword-search.controller.js +4 -4
  360. package/cdn/components/variable-keyword-search/variable-keyword-search.js +11 -11
  361. package/cdn/custom-elements.json +1001 -748
  362. package/cdn/lib/harmony/harmony.request.d.ts +11 -0
  363. package/cdn/react/accordion/index.js +4 -4
  364. package/cdn/react/alert/index.js +3 -3
  365. package/cdn/react/avatar/index.js +4 -4
  366. package/cdn/react/badge/index.js +3 -3
  367. package/cdn/react/banner/index.js +3 -3
  368. package/cdn/react/breadcrumb/index.js +3 -3
  369. package/cdn/react/breadcrumbs/index.js +3 -3
  370. package/cdn/react/browse-variables/index.js +16 -16
  371. package/cdn/react/button/index.js +4 -4
  372. package/cdn/react/button-group/index.js +3 -3
  373. package/cdn/react/caption/index.js +3 -3
  374. package/cdn/react/card/index.js +3 -3
  375. package/cdn/react/checkbox/index.js +4 -4
  376. package/cdn/react/chip/index.js +3 -3
  377. package/cdn/react/combobox/index.js +3 -3
  378. package/cdn/react/data-access/index.js +24 -24
  379. package/cdn/react/data-grid/index.js +4 -4
  380. package/cdn/react/data-rods/index.js +35 -35
  381. package/cdn/react/data-subsetter/index.js +35 -34
  382. package/cdn/react/data-subsetter-history/index.js +36 -35
  383. package/cdn/react/date-picker/index.js +8 -8
  384. package/cdn/react/date-range-slider/index.js +3 -3
  385. package/cdn/react/dialog/index.js +5 -5
  386. package/cdn/react/divider/index.js +3 -3
  387. package/cdn/react/dropdown/index.js +4 -4
  388. package/cdn/react/earthdata-login/index.js +11 -11
  389. package/cdn/react/file-upload/index.js +3 -3
  390. package/cdn/react/harmony-history/index.js +11 -10
  391. package/cdn/react/icon/index.js +3 -3
  392. package/cdn/react/index.d.ts +3 -3
  393. package/cdn/react/index.js +159 -159
  394. package/cdn/react/input/index.js +4 -4
  395. package/cdn/react/loader/index.js +3 -3
  396. package/cdn/react/login/index.js +9 -9
  397. package/cdn/react/map/index.js +7 -7
  398. package/cdn/react/menu/index.js +3 -3
  399. package/cdn/react/menu-item/index.js +6 -6
  400. package/cdn/react/option/index.js +4 -4
  401. package/cdn/react/pagination/index.js +4 -4
  402. package/cdn/react/plot/index.js +3 -3
  403. package/cdn/react/plot-toolbar/index.js +16 -16
  404. package/cdn/react/popup/index.js +3 -3
  405. package/cdn/react/progress-bar/index.js +3 -3
  406. package/cdn/react/radio/index.js +3 -3
  407. package/cdn/react/radio-group/index.js +3 -3
  408. package/cdn/react/scroll-hint/index.js +4 -4
  409. package/cdn/react/select/index.js +6 -6
  410. package/cdn/react/site-header/index.js +4 -4
  411. package/cdn/react/site-navigation/index.js +3 -3
  412. package/cdn/react/skeleton/index.js +3 -3
  413. package/cdn/react/slider/index.js +3 -3
  414. package/cdn/react/spatial-picker/index.js +12 -12
  415. package/cdn/react/status-indicator/index.js +3 -3
  416. package/cdn/react/stepper/index.js +3 -3
  417. package/cdn/react/stepper-step/index.js +4 -4
  418. package/cdn/react/tab/index.js +4 -4
  419. package/cdn/react/tab-panel/index.js +3 -3
  420. package/cdn/react/tabs/index.js +4 -4
  421. package/cdn/react/tag/index.js +4 -4
  422. package/cdn/react/textarea/index.js +3 -3
  423. package/cdn/react/time-average-map/index.js +27 -27
  424. package/cdn/react/time-series/index.js +28 -28
  425. package/cdn/react/toast/index.js +4 -4
  426. package/cdn/react/toggle/index.js +3 -3
  427. package/cdn/react/tooltip/index.js +4 -4
  428. package/cdn/react/variable-combobox/index.js +7 -7
  429. package/cdn/react/variable-keyword-search/index.js +11 -11
  430. package/cdn/terra-ui-components.js +147 -147
  431. package/cdn/types/vue/index.d.ts +87 -74
  432. package/cdn/utilities/harmony.d.ts +11 -0
  433. package/cdn/utilities/harmony.js +5 -3
  434. package/cdn/utilities/variable-task.js +3 -3
  435. package/cdn/vscode.html-custom-data.json +118 -103
  436. package/cdn/web-types.json +180 -147
  437. package/dist/apis/harmony.api.d.ts +10 -1
  438. package/dist/chunks/chunk.2V2ZAAHE.js +1 -0
  439. package/dist/chunks/chunk.2V5MS7YY.js +1 -0
  440. package/dist/chunks/chunk.2ZTVRFE7.js +1 -0
  441. package/dist/chunks/chunk.33ZKKWU3.js +25 -0
  442. package/dist/chunks/chunk.36EHGABP.js +572 -0
  443. package/dist/chunks/chunk.3LQIN2JU.js +1 -0
  444. package/dist/chunks/chunk.3OCVIHWU.js +1 -0
  445. package/dist/chunks/chunk.3OKIF2KP.js +1 -0
  446. package/dist/chunks/chunk.3VJXVMKE.js +55 -0
  447. package/dist/chunks/chunk.45YQHGQZ.js +1 -0
  448. package/dist/chunks/chunk.4BO4MBK2.js +1 -0
  449. package/dist/chunks/chunk.4BOK3MZC.js +1 -0
  450. package/dist/chunks/chunk.4BVODFPK.js +1 -0
  451. package/dist/chunks/chunk.4CD6OVY4.js +1 -0
  452. package/dist/chunks/chunk.4DAGIXB2.js +1 -0
  453. package/dist/chunks/chunk.4DY6HQSZ.js +1 -0
  454. package/dist/chunks/chunk.4E3RETMA.js +157 -0
  455. package/dist/chunks/chunk.4G43VCID.js +121 -0
  456. package/dist/chunks/chunk.4MSU3MLQ.js +1 -0
  457. package/dist/chunks/chunk.4ZVIPOSQ.js +1 -0
  458. package/dist/chunks/chunk.5CKUBBW2.js +1 -0
  459. package/dist/chunks/chunk.5TSON4Q5.js +1 -0
  460. package/dist/chunks/chunk.5YPHEG75.js +75 -0
  461. package/dist/chunks/chunk.65FBQLYR.js +1 -0
  462. package/dist/chunks/chunk.6BZB4PZZ.js +1 -0
  463. package/dist/chunks/chunk.6FC5HIHI.js +1 -0
  464. package/dist/chunks/chunk.6IZOMQPT.js +1 -0
  465. package/dist/chunks/chunk.6JJQ6HVT.js +1 -0
  466. package/dist/chunks/chunk.6NXYV57F.js +300 -0
  467. package/dist/chunks/chunk.6O4CQMGV.js +1 -0
  468. package/dist/chunks/chunk.6QHJZKK3.js +1 -0
  469. package/dist/chunks/chunk.6WZG63D5.js +1 -0
  470. package/dist/chunks/chunk.6YT3T3KW.js +1 -0
  471. package/dist/chunks/chunk.766YSK2T.js +1 -0
  472. package/dist/chunks/chunk.7BBV7ST3.js +1 -0
  473. package/dist/chunks/chunk.7BDICJ3O.js +1 -0
  474. package/dist/chunks/chunk.7DBDP5D4.js +55 -0
  475. package/dist/chunks/chunk.7NMKVDOW.js +1 -0
  476. package/dist/chunks/chunk.7O25L2HN.js +1 -0
  477. package/dist/chunks/chunk.7PR76PFV.js +14 -0
  478. package/dist/chunks/chunk.A3XWFCSS.js +22 -0
  479. package/dist/chunks/chunk.A4TOGQUL.js +1 -0
  480. package/dist/chunks/chunk.A6NLAVBJ.js +65 -0
  481. package/dist/chunks/chunk.AEVUVHPU.js +1 -0
  482. package/dist/chunks/chunk.AMWCH7FP.js +1 -0
  483. package/dist/chunks/chunk.AUVCF733.js +1 -0
  484. package/dist/chunks/chunk.AYHRF2PK.js +1 -0
  485. package/dist/chunks/chunk.B2XTWCNO.js +41 -0
  486. package/dist/chunks/chunk.B54EK2EK.js +80 -0
  487. package/dist/chunks/chunk.BCC3MRG7.js +1 -0
  488. package/dist/chunks/chunk.BEUKYV7G.js +1 -0
  489. package/dist/chunks/chunk.BIOPLSO5.js +1 -0
  490. package/dist/chunks/chunk.BLC4MT43.js +1 -0
  491. package/dist/chunks/chunk.BSZXBHUO.js +1 -0
  492. package/dist/chunks/chunk.BT3I4VAR.js +74 -0
  493. package/dist/chunks/chunk.BT4VFR4P.js +1 -0
  494. package/dist/chunks/chunk.BUCROGVQ.js +11 -0
  495. package/dist/chunks/chunk.BXH6GFYH.js +39 -0
  496. package/dist/chunks/chunk.C6REVK5V.js +1 -0
  497. package/dist/chunks/chunk.C7F3JPEA.js +1 -0
  498. package/dist/chunks/chunk.CDPE3HJI.js +1 -0
  499. package/dist/chunks/chunk.CFL3PJGS.js +1 -0
  500. package/dist/chunks/chunk.CFRK32FS.js +1 -0
  501. package/dist/chunks/chunk.CLI7OLUP.js +1 -0
  502. package/dist/chunks/chunk.CST73CUF.js +1 -0
  503. package/dist/chunks/chunk.CYS6XIQ3.js +1 -0
  504. package/dist/chunks/chunk.DG3TCTHP.js +1 -0
  505. package/dist/chunks/chunk.DJMIDUIR.js +20 -0
  506. package/dist/chunks/chunk.DKA4CYZZ.js +1 -0
  507. package/dist/chunks/chunk.DSVABTPB.js +1 -0
  508. package/dist/chunks/chunk.DUAYA72N.js +1 -0
  509. package/dist/chunks/chunk.DVS2JDEU.js +1 -0
  510. package/dist/chunks/chunk.DZGMHI7M.js +1 -0
  511. package/dist/chunks/chunk.ENP4BZ2Q.js +1 -0
  512. package/dist/chunks/chunk.EQKP6QEH.js +1 -0
  513. package/dist/chunks/chunk.EYHRUT2K.js +1 -0
  514. package/dist/chunks/chunk.F3XJPGCV.js +1 -0
  515. package/dist/chunks/chunk.F7QAOPKW.js +1 -0
  516. package/dist/chunks/chunk.FDVBKERY.js +1 -0
  517. package/dist/chunks/chunk.FM3UKSO3.js +16 -0
  518. package/dist/chunks/chunk.FO4YJTSB.js +1 -0
  519. package/dist/chunks/chunk.FS76W7ON.js +145 -0
  520. package/dist/chunks/chunk.FTHEBHGR.js +1 -0
  521. package/dist/chunks/chunk.FVN76A2E.js +9 -0
  522. package/dist/chunks/chunk.FZUILRGV.js +1 -0
  523. package/dist/chunks/chunk.G26ZLCMP.js +1 -0
  524. package/dist/chunks/chunk.GA4Q5FCB.js +1 -0
  525. package/dist/chunks/chunk.GDVHJLPM.js +1 -0
  526. package/dist/chunks/chunk.GE6NUEEV.js +8 -0
  527. package/dist/chunks/chunk.GLBYPT6F.js +1 -0
  528. package/dist/chunks/chunk.GOJFIDR2.js +1 -0
  529. package/dist/chunks/chunk.GS7NGP5A.js +1 -0
  530. package/dist/chunks/chunk.H5WDCMHV.js +1 -0
  531. package/dist/chunks/chunk.HC3ATGJ6.js +1 -0
  532. package/dist/chunks/chunk.HHIHBNG2.js +100 -0
  533. package/dist/chunks/chunk.HRNLETJW.js +1 -0
  534. package/dist/chunks/chunk.HRS3EZ5O.js +1 -0
  535. package/dist/chunks/chunk.HTF7A5NR.js +1 -0
  536. package/dist/chunks/chunk.I6AXQD34.js +1 -0
  537. package/dist/chunks/chunk.IJUBTAPZ.js +1 -0
  538. package/dist/chunks/chunk.IN7ZOX6F.js +1 -0
  539. package/dist/chunks/chunk.INQGHKNR.js +1 -0
  540. package/dist/chunks/chunk.IOFVAK65.js +2 -0
  541. package/dist/chunks/chunk.IRZLK5CW.js +48 -0
  542. package/dist/chunks/chunk.IWJHZMTW.js +1 -0
  543. package/dist/chunks/chunk.J3KUBNWC.js +1 -0
  544. package/dist/chunks/chunk.JAAVWPAP.js +1 -0
  545. package/dist/chunks/chunk.JF3ERNLA.js +43 -0
  546. package/dist/chunks/chunk.JFNAA6AQ.js +64 -0
  547. package/dist/chunks/chunk.JWRZTYV6.js +6 -0
  548. package/dist/chunks/chunk.K2GWWTXW.js +11 -0
  549. package/dist/chunks/chunk.KGDDA7QS.js +1 -0
  550. package/dist/chunks/chunk.KIZLB2ZY.js +1 -0
  551. package/dist/chunks/chunk.KNOUB6L7.js +1 -0
  552. package/dist/chunks/chunk.KWHNDO3M.js +1 -0
  553. package/dist/chunks/chunk.L5A5OIFC.js +38 -0
  554. package/dist/chunks/chunk.LGSGZFMY.js +1 -0
  555. package/dist/chunks/chunk.LLRBT7GW.js +1 -0
  556. package/dist/chunks/chunk.M7R6RLOP.js +1 -0
  557. package/dist/chunks/chunk.MARWR2XB.js +1 -0
  558. package/dist/chunks/chunk.MJ3DWAVJ.js +51 -0
  559. package/dist/chunks/chunk.MLPT4GL3.js +20 -0
  560. package/dist/chunks/chunk.MS55ACG4.js +47 -0
  561. package/dist/chunks/chunk.MTA4NBKZ.js +17 -0
  562. package/dist/chunks/chunk.MXMW4LIA.js +1 -0
  563. package/dist/chunks/chunk.MYTNYPQR.js +1 -0
  564. package/dist/chunks/chunk.MYXTSWP6.js +154 -0
  565. package/dist/chunks/chunk.MZZ2VFEY.js +113 -0
  566. package/dist/chunks/chunk.NA26KJ6N.js +1 -0
  567. package/dist/chunks/chunk.NCU4D7Y7.js +1 -0
  568. package/dist/chunks/chunk.NIO6L3GW.js +115 -0
  569. package/dist/chunks/chunk.NIPNHY7U.js +67 -0
  570. package/dist/chunks/chunk.NWPIYKNB.js +35 -0
  571. package/dist/chunks/chunk.OC6RDDLO.js +4 -0
  572. package/dist/chunks/chunk.OJ2CYLXH.js +1 -0
  573. package/dist/chunks/chunk.OKGA5GXY.js +1 -0
  574. package/dist/chunks/chunk.ON5BCN2P.js +1 -0
  575. package/dist/chunks/chunk.OSSHTSO5.js +1 -0
  576. package/dist/chunks/chunk.OWFT2USF.js +1 -0
  577. package/dist/chunks/chunk.OXXQPWUT.js +1 -0
  578. package/dist/chunks/chunk.POHKJIOJ.js +27 -0
  579. package/dist/chunks/chunk.PQEIPTZS.js +1 -0
  580. package/dist/chunks/chunk.PQYEANBC.js +1 -0
  581. package/dist/chunks/chunk.PSIQCTOI.js +142 -0
  582. package/dist/chunks/chunk.QAOJDTKA.js +1 -0
  583. package/dist/chunks/chunk.QEFUA4OP.js +30 -0
  584. package/dist/chunks/chunk.QSDLIEDF.js +1 -0
  585. package/dist/chunks/chunk.QXAGVUX4.js +1 -0
  586. package/dist/chunks/chunk.QYUNODYP.js +43 -0
  587. package/dist/chunks/chunk.R3XLST36.js +1 -0
  588. package/dist/chunks/chunk.R72JIRAQ.js +127 -0
  589. package/dist/chunks/chunk.RDEQYEQD.js +1 -0
  590. package/dist/chunks/chunk.RI5QWEFJ.js +55 -0
  591. package/dist/chunks/chunk.RIZXW6RX.js +1 -0
  592. package/dist/chunks/chunk.ROAJDBWY.js +300 -0
  593. package/dist/chunks/chunk.ROAOJBFK.js +122 -0
  594. package/dist/chunks/chunk.RQ3NX5RH.js +1 -0
  595. package/dist/chunks/chunk.RUF3MKNX.js +1 -0
  596. package/dist/chunks/chunk.RUSJEFXJ.js +1 -0
  597. package/dist/chunks/chunk.RVPN4DT6.js +1 -0
  598. package/dist/chunks/chunk.RX7B6M24.js +23 -0
  599. package/dist/chunks/chunk.SAJXSVRR.js +1 -0
  600. package/dist/chunks/chunk.SKHJAFUM.js +1 -0
  601. package/dist/chunks/chunk.SRIQOJ4R.js +1 -0
  602. package/dist/chunks/chunk.SVLWTIBE.js +1 -0
  603. package/dist/chunks/chunk.T2BWAH5M.js +1 -0
  604. package/dist/chunks/chunk.T3ROHJGD.js +99 -0
  605. package/dist/chunks/chunk.T5LEHOZO.js +33 -0
  606. package/dist/chunks/chunk.TBKVOYN6.js +1 -0
  607. package/dist/chunks/chunk.TK2JSJCN.js +12 -0
  608. package/dist/chunks/chunk.TM7UGCHZ.js +1 -0
  609. package/dist/chunks/chunk.TSYE26TN.js +1 -0
  610. package/dist/chunks/chunk.U42TLCPB.js +37 -0
  611. package/dist/chunks/chunk.U4QYPQ5D.js +1182 -0
  612. package/dist/chunks/chunk.U7OFS4YO.js +1 -0
  613. package/dist/chunks/chunk.UHJVEYZR.js +19 -0
  614. package/dist/chunks/chunk.UHQQDRQE.js +1 -0
  615. package/dist/chunks/chunk.UT4IMV6Z.js +1 -0
  616. package/dist/chunks/chunk.UY26P2OL.js +1 -0
  617. package/dist/chunks/chunk.VCVW26RJ.js +1 -0
  618. package/dist/chunks/chunk.VPMFNONT.js +5 -0
  619. package/dist/chunks/chunk.VVD6IBEH.js +8 -0
  620. package/dist/chunks/chunk.VVJHNG5X.js +1 -0
  621. package/dist/chunks/chunk.W47TRROJ.js +26 -0
  622. package/dist/chunks/chunk.WAD5F7IY.js +1 -0
  623. package/dist/chunks/chunk.WAYKA4GY.js +1 -0
  624. package/dist/chunks/chunk.WC7YLNKN.js +1 -0
  625. package/dist/chunks/chunk.WLNKKAQQ.js +1 -0
  626. package/dist/chunks/chunk.WVXP3DKQ.js +1 -0
  627. package/dist/chunks/chunk.WXGJBSTY.js +12 -0
  628. package/dist/chunks/chunk.WXHUYZMM.js +1 -0
  629. package/dist/chunks/chunk.WYM7XMJM.js +62 -0
  630. package/dist/chunks/chunk.XE3SMLIS.js +1 -0
  631. package/dist/chunks/chunk.XMCRPWIT.js +1 -0
  632. package/dist/chunks/chunk.XQDZ47QL.js +26 -0
  633. package/dist/chunks/chunk.XQRSTVBA.js +35 -0
  634. package/dist/chunks/chunk.XUDQZPTV.js +1 -0
  635. package/dist/chunks/chunk.XVC3SMLN.js +1 -0
  636. package/dist/chunks/chunk.XXHC6SPN.js +1 -0
  637. package/dist/chunks/chunk.Y2755SF4.js +1 -0
  638. package/dist/chunks/chunk.Y2WXU4PN.js +1 -0
  639. package/dist/chunks/chunk.YFCTJ4N3.js +1 -0
  640. package/dist/chunks/chunk.YHM2RYSO.js +780 -0
  641. package/dist/chunks/chunk.YN3KH4A6.js +1 -0
  642. package/dist/chunks/chunk.YPDAKA67.js +280 -0
  643. package/dist/chunks/chunk.YXQBVL4N.js +1 -0
  644. package/dist/chunks/chunk.Z66FJJU6.js +1 -0
  645. package/dist/chunks/chunk.ZL3KC4DQ.js +24 -0
  646. package/dist/chunks/chunk.ZLPSNVPK.js +1 -0
  647. package/dist/chunks/chunk.ZMUYCM4F.js +5 -0
  648. package/dist/chunks/chunk.ZO3LWU7S.js +9 -0
  649. package/dist/chunks/chunk.ZO7J6YXK.js +1 -0
  650. package/dist/chunks/chunk.ZZJIP5QZ.js +30 -0
  651. package/dist/chunks/chunk.ZZZPW47I.js +1 -0
  652. package/dist/components/accordion/accordion.component.js +1 -1
  653. package/dist/components/accordion/accordion.js +1 -1
  654. package/dist/components/alert/alert.component.js +1 -1
  655. package/dist/components/alert/alert.js +1 -1
  656. package/dist/components/avatar/avatar.component.js +1 -1
  657. package/dist/components/avatar/avatar.js +1 -1
  658. package/dist/components/badge/badge.component.js +1 -1
  659. package/dist/components/badge/badge.js +1 -1
  660. package/dist/components/banner/banner.component.js +1 -1
  661. package/dist/components/banner/banner.js +1 -1
  662. package/dist/components/breadcrumb/breadcrumb.component.js +1 -1
  663. package/dist/components/breadcrumb/breadcrumb.js +1 -1
  664. package/dist/components/breadcrumbs/breadcrumbs.component.js +1 -1
  665. package/dist/components/breadcrumbs/breadcrumbs.js +1 -1
  666. package/dist/components/browse-variables/browse-variables.component.js +1 -1
  667. package/dist/components/browse-variables/browse-variables.controller.js +1 -1
  668. package/dist/components/browse-variables/browse-variables.js +1 -1
  669. package/dist/components/button/button.component.js +1 -1
  670. package/dist/components/button/button.js +1 -1
  671. package/dist/components/button-group/button-group.component.js +1 -1
  672. package/dist/components/button-group/button-group.js +1 -1
  673. package/dist/components/caption/caption.component.js +1 -1
  674. package/dist/components/caption/caption.js +1 -1
  675. package/dist/components/card/card.component.js +1 -1
  676. package/dist/components/card/card.js +1 -1
  677. package/dist/components/checkbox/checkbox.component.js +1 -1
  678. package/dist/components/checkbox/checkbox.js +1 -1
  679. package/dist/components/chip/chip.component.js +1 -1
  680. package/dist/components/chip/chip.js +1 -1
  681. package/dist/components/combobox/combobox.component.js +1 -1
  682. package/dist/components/combobox/combobox.js +1 -1
  683. package/dist/components/data-access/data-access.component.js +1 -1
  684. package/dist/components/data-access/data-access.js +1 -1
  685. package/dist/components/data-grid/data-grid.component.js +1 -1
  686. package/dist/components/data-grid/data-grid.js +1 -1
  687. package/dist/components/data-rods/data-rods.component.js +1 -1
  688. package/dist/components/data-rods/data-rods.js +1 -1
  689. package/dist/components/data-subsetter/data-subsetter.component.d.ts +3 -0
  690. package/dist/components/data-subsetter/data-subsetter.component.js +1 -1
  691. package/dist/components/data-subsetter/data-subsetter.js +1 -1
  692. package/dist/components/data-subsetter/notebooks/subsetter-notebook.js +1 -1
  693. package/dist/components/data-subsetter-history/data-subsetter-history.component.js +1 -1
  694. package/dist/components/data-subsetter-history/data-subsetter-history.js +1 -1
  695. package/dist/components/date-picker/date-picker.component.d.ts +27 -0
  696. package/dist/components/date-picker/date-picker.component.js +1 -1
  697. package/dist/components/date-picker/date-picker.js +1 -1
  698. package/dist/components/date-range-slider/date-range-slider.component.js +1 -1
  699. package/dist/components/date-range-slider/date-range-slider.js +1 -1
  700. package/dist/components/dialog/dialog.component.js +1 -1
  701. package/dist/components/dialog/dialog.js +1 -1
  702. package/dist/components/divider/divider.component.js +1 -1
  703. package/dist/components/divider/divider.js +1 -1
  704. package/dist/components/dropdown/dropdown.component.js +1 -1
  705. package/dist/components/dropdown/dropdown.js +1 -1
  706. package/dist/components/earthdata-login/earthdata-login.component.js +1 -1
  707. package/dist/components/earthdata-login/earthdata-login.js +1 -1
  708. package/dist/components/file-upload/file-upload.component.js +1 -1
  709. package/dist/components/file-upload/file-upload.js +1 -1
  710. package/dist/components/harmony-history/harmony-history.component.js +1 -1
  711. package/dist/components/harmony-history/harmony-history.js +1 -1
  712. package/dist/components/icon/icon.component.js +1 -1
  713. package/dist/components/icon/icon.js +1 -1
  714. package/dist/components/input/input.component.js +1 -1
  715. package/dist/components/input/input.js +1 -1
  716. package/dist/components/loader/loader.component.js +1 -1
  717. package/dist/components/loader/loader.js +1 -1
  718. package/dist/components/login/login.component.js +1 -1
  719. package/dist/components/login/login.js +1 -1
  720. package/dist/components/map/map.component.js +1 -1
  721. package/dist/components/map/map.js +1 -1
  722. package/dist/components/map/map.service.js +1 -1
  723. package/dist/components/map/type.d.ts +2 -0
  724. package/dist/components/menu/menu.component.js +1 -1
  725. package/dist/components/menu/menu.js +1 -1
  726. package/dist/components/menu-item/menu-item.component.js +1 -1
  727. package/dist/components/menu-item/menu-item.js +1 -1
  728. package/dist/components/option/option.component.js +1 -1
  729. package/dist/components/option/option.js +1 -1
  730. package/dist/components/pagination/pagination.component.js +1 -1
  731. package/dist/components/pagination/pagination.js +1 -1
  732. package/dist/components/plot/plot.component.js +1 -1
  733. package/dist/components/plot/plot.js +1 -1
  734. package/dist/components/plot-toolbar/notebooks/time-averaged-map-notebook.js +1 -1
  735. package/dist/components/plot-toolbar/notebooks/time-series-notebook.js +1 -1
  736. package/dist/components/plot-toolbar/plot-toolbar.component.js +1 -1
  737. package/dist/components/plot-toolbar/plot-toolbar.controller.js +1 -1
  738. package/dist/components/plot-toolbar/plot-toolbar.js +1 -1
  739. package/dist/components/popup/popup.component.js +1 -1
  740. package/dist/components/popup/popup.js +1 -1
  741. package/dist/components/progress-bar/progress-bar.component.js +1 -1
  742. package/dist/components/progress-bar/progress-bar.js +1 -1
  743. package/dist/components/radio/radio.component.js +1 -1
  744. package/dist/components/radio/radio.js +1 -1
  745. package/dist/components/radio-group/radio-group.component.js +1 -1
  746. package/dist/components/radio-group/radio-group.js +1 -1
  747. package/dist/components/scroll-hint/scroll-hint.component.js +1 -1
  748. package/dist/components/scroll-hint/scroll-hint.js +1 -1
  749. package/dist/components/select/select.component.js +1 -1
  750. package/dist/components/select/select.js +1 -1
  751. package/dist/components/site-header/site-header.component.js +1 -1
  752. package/dist/components/site-header/site-header.js +1 -1
  753. package/dist/components/site-navigation/site-navigation.component.js +1 -1
  754. package/dist/components/site-navigation/site-navigation.js +1 -1
  755. package/dist/components/skeleton/skeleton.component.js +1 -1
  756. package/dist/components/skeleton/skeleton.js +1 -1
  757. package/dist/components/slider/slider.component.js +1 -1
  758. package/dist/components/slider/slider.js +1 -1
  759. package/dist/components/spatial-picker/spatial-picker.component.d.ts +5 -0
  760. package/dist/components/spatial-picker/spatial-picker.component.js +1 -1
  761. package/dist/components/spatial-picker/spatial-picker.js +1 -1
  762. package/dist/components/status-indicator/status-indicator.component.js +1 -1
  763. package/dist/components/status-indicator/status-indicator.js +1 -1
  764. package/dist/components/stepper/stepper.component.js +1 -1
  765. package/dist/components/stepper/stepper.js +1 -1
  766. package/dist/components/stepper-step/stepper-step.component.js +1 -1
  767. package/dist/components/stepper-step/stepper-step.js +1 -1
  768. package/dist/components/tab/tab.component.js +1 -1
  769. package/dist/components/tab/tab.js +1 -1
  770. package/dist/components/tab-panel/tab-panel.component.js +1 -1
  771. package/dist/components/tab-panel/tab-panel.js +1 -1
  772. package/dist/components/tabs/tabs.component.js +1 -1
  773. package/dist/components/tabs/tabs.js +1 -1
  774. package/dist/components/tag/tag.component.js +1 -1
  775. package/dist/components/tag/tag.js +1 -1
  776. package/dist/components/textarea/textarea.component.js +1 -1
  777. package/dist/components/textarea/textarea.js +1 -1
  778. package/dist/components/time-average-map/time-average-map.component.js +1 -1
  779. package/dist/components/time-average-map/time-average-map.controller.js +1 -1
  780. package/dist/components/time-average-map/time-average-map.js +1 -1
  781. package/dist/components/time-series/time-series-cache.service.d.ts +6 -0
  782. package/dist/components/time-series/time-series-cache.service.js +1 -1
  783. package/dist/components/time-series/time-series.component.js +1 -1
  784. package/dist/components/time-series/time-series.controller.js +1 -1
  785. package/dist/components/time-series/time-series.js +1 -1
  786. package/dist/components/toast/toast.component.js +1 -1
  787. package/dist/components/toast/toast.js +1 -1
  788. package/dist/components/toggle/toggle.component.js +1 -1
  789. package/dist/components/toggle/toggle.js +1 -1
  790. package/dist/components/tooltip/tooltip.component.js +1 -1
  791. package/dist/components/tooltip/tooltip.js +1 -1
  792. package/dist/components/variable-combobox/variable-combobox.component.js +1 -1
  793. package/dist/components/variable-combobox/variable-combobox.js +1 -1
  794. package/dist/components/variable-keyword-search/variable-keyword-search.component.js +1 -1
  795. package/dist/components/variable-keyword-search/variable-keyword-search.controller.js +1 -1
  796. package/dist/components/variable-keyword-search/variable-keyword-search.js +1 -1
  797. package/dist/custom-elements.json +1001 -748
  798. package/dist/lib/harmony/harmony.request.d.ts +11 -0
  799. package/dist/react/accordion/index.js +1 -1
  800. package/dist/react/alert/index.js +1 -1
  801. package/dist/react/avatar/index.js +1 -1
  802. package/dist/react/badge/index.js +1 -1
  803. package/dist/react/banner/index.js +1 -1
  804. package/dist/react/breadcrumb/index.js +1 -1
  805. package/dist/react/breadcrumbs/index.js +1 -1
  806. package/dist/react/browse-variables/index.js +1 -1
  807. package/dist/react/button/index.js +1 -1
  808. package/dist/react/button-group/index.js +1 -1
  809. package/dist/react/caption/index.js +1 -1
  810. package/dist/react/card/index.js +1 -1
  811. package/dist/react/checkbox/index.js +1 -1
  812. package/dist/react/chip/index.js +1 -1
  813. package/dist/react/combobox/index.js +1 -1
  814. package/dist/react/data-access/index.js +1 -1
  815. package/dist/react/data-grid/index.js +1 -1
  816. package/dist/react/data-rods/index.js +1 -1
  817. package/dist/react/data-subsetter/index.js +1 -1
  818. package/dist/react/data-subsetter-history/index.js +1 -1
  819. package/dist/react/date-picker/index.js +1 -1
  820. package/dist/react/date-range-slider/index.js +1 -1
  821. package/dist/react/dialog/index.js +1 -1
  822. package/dist/react/divider/index.js +1 -1
  823. package/dist/react/dropdown/index.js +1 -1
  824. package/dist/react/earthdata-login/index.js +1 -1
  825. package/dist/react/file-upload/index.js +1 -1
  826. package/dist/react/harmony-history/index.js +1 -1
  827. package/dist/react/icon/index.js +1 -1
  828. package/dist/react/index.d.ts +3 -3
  829. package/dist/react/index.js +1 -1
  830. package/dist/react/input/index.js +1 -1
  831. package/dist/react/loader/index.js +1 -1
  832. package/dist/react/login/index.js +1 -1
  833. package/dist/react/map/index.js +1 -1
  834. package/dist/react/menu/index.js +1 -1
  835. package/dist/react/menu-item/index.js +1 -1
  836. package/dist/react/option/index.js +1 -1
  837. package/dist/react/pagination/index.js +1 -1
  838. package/dist/react/plot/index.js +1 -1
  839. package/dist/react/plot-toolbar/index.js +1 -1
  840. package/dist/react/popup/index.js +1 -1
  841. package/dist/react/progress-bar/index.js +1 -1
  842. package/dist/react/radio/index.js +1 -1
  843. package/dist/react/radio-group/index.js +1 -1
  844. package/dist/react/scroll-hint/index.js +1 -1
  845. package/dist/react/select/index.js +1 -1
  846. package/dist/react/site-header/index.js +1 -1
  847. package/dist/react/site-navigation/index.js +1 -1
  848. package/dist/react/skeleton/index.js +1 -1
  849. package/dist/react/slider/index.js +1 -1
  850. package/dist/react/spatial-picker/index.js +1 -1
  851. package/dist/react/status-indicator/index.js +1 -1
  852. package/dist/react/stepper/index.js +1 -1
  853. package/dist/react/stepper-step/index.js +1 -1
  854. package/dist/react/tab/index.js +1 -1
  855. package/dist/react/tab-panel/index.js +1 -1
  856. package/dist/react/tabs/index.js +1 -1
  857. package/dist/react/tag/index.js +1 -1
  858. package/dist/react/textarea/index.js +1 -1
  859. package/dist/react/time-average-map/index.js +1 -1
  860. package/dist/react/time-series/index.js +1 -1
  861. package/dist/react/toast/index.js +1 -1
  862. package/dist/react/toggle/index.js +1 -1
  863. package/dist/react/tooltip/index.js +1 -1
  864. package/dist/react/variable-combobox/index.js +1 -1
  865. package/dist/react/variable-keyword-search/index.js +1 -1
  866. package/dist/terra-ui-components.js +1 -1
  867. package/dist/terra_ui_components-0.0.192-py3-none-any.whl +0 -0
  868. package/dist/terra_ui_components-0.0.192.tar.gz +0 -0
  869. package/dist/types/vue/index.d.ts +87 -74
  870. package/dist/utilities/harmony.d.ts +11 -0
  871. package/dist/utilities/harmony.js +1 -1
  872. package/dist/utilities/variable-task.js +1 -1
  873. package/dist/vscode.html-custom-data.json +118 -103
  874. package/dist/web-types.json +180 -147
  875. package/package.json +2 -1
  876. package/cdn/chunks/chunk.2254DWDE.js +0 -1197
  877. package/cdn/chunks/chunk.262RP2XE.js +0 -56075
  878. package/cdn/chunks/chunk.26J2HGHO.js +0 -190
  879. package/cdn/chunks/chunk.26UZKSB4.js +0 -352
  880. package/cdn/chunks/chunk.2PEBPN6E.js +0 -241
  881. package/cdn/chunks/chunk.33BHFHKT.js +0 -110
  882. package/cdn/chunks/chunk.35R3FIWH.js +0 -29
  883. package/cdn/chunks/chunk.36UI73QC.js +0 -29
  884. package/cdn/chunks/chunk.3GC3VEPG.js +0 -19
  885. package/cdn/chunks/chunk.3HGY2OQN.js +0 -493
  886. package/cdn/chunks/chunk.3OYBNUEI.js +0 -2263
  887. package/cdn/chunks/chunk.3S7WMMIE.js +0 -478
  888. package/cdn/chunks/chunk.3SWDEX6X.js +0 -83
  889. package/cdn/chunks/chunk.3TXZPWC4.js +0 -303
  890. package/cdn/chunks/chunk.3U6NF62S.js +0 -276
  891. package/cdn/chunks/chunk.3WW575WA.js +0 -60
  892. package/cdn/chunks/chunk.45CXCBSK.js +0 -19
  893. package/cdn/chunks/chunk.47KJF23J.js +0 -35
  894. package/cdn/chunks/chunk.4ISWIXVN.js +0 -19
  895. package/cdn/chunks/chunk.4NQI77PM.js +0 -19
  896. package/cdn/chunks/chunk.564J4JRX.js +0 -19
  897. package/cdn/chunks/chunk.5AQKME2B.js +0 -68
  898. package/cdn/chunks/chunk.5CH4R2XF.js +0 -230
  899. package/cdn/chunks/chunk.5QL2BX3U.js +0 -357
  900. package/cdn/chunks/chunk.5ST44KN5.js +0 -29
  901. package/cdn/chunks/chunk.5T2GTQTE.js +0 -45
  902. package/cdn/chunks/chunk.5WLOWVTH.js +0 -19
  903. package/cdn/chunks/chunk.5XN4CHYS.js +0 -19
  904. package/cdn/chunks/chunk.65NJM3X5.js +0 -234
  905. package/cdn/chunks/chunk.67KZOH4P.js +0 -29
  906. package/cdn/chunks/chunk.6EF3RM53.js +0 -195
  907. package/cdn/chunks/chunk.6F2A5RGO.js +0 -32
  908. package/cdn/chunks/chunk.6SHDOSDX.js +0 -1259
  909. package/cdn/chunks/chunk.6TKJKIGR.js +0 -259
  910. package/cdn/chunks/chunk.6TXAD2M5.js +0 -891
  911. package/cdn/chunks/chunk.6WUVTS5T.js +0 -19
  912. package/cdn/chunks/chunk.6Y2YJ7VI.js +0 -93
  913. package/cdn/chunks/chunk.7ISACLMG.js +0 -19
  914. package/cdn/chunks/chunk.7T63UPCR.js +0 -113
  915. package/cdn/chunks/chunk.A2JK2DEX.js +0 -19
  916. package/cdn/chunks/chunk.A4Z7IIES.js +0 -78
  917. package/cdn/chunks/chunk.A5PVJF4Q.js +0 -132
  918. package/cdn/chunks/chunk.A7RI43SW.js +0 -29
  919. package/cdn/chunks/chunk.AKPUZW7W.js +0 -19
  920. package/cdn/chunks/chunk.AT6JJ7OV.js +0 -19
  921. package/cdn/chunks/chunk.AVBFDPBA.js +0 -19
  922. package/cdn/chunks/chunk.AYVGZCLZ.js +0 -551
  923. package/cdn/chunks/chunk.B4TFLVNP.js +0 -36
  924. package/cdn/chunks/chunk.BA3EXOZR.js +0 -155
  925. package/cdn/chunks/chunk.BP6TJGHY.js +0 -224
  926. package/cdn/chunks/chunk.BPEXBRN7.js +0 -19
  927. package/cdn/chunks/chunk.C2FX7JKT.js +0 -30
  928. package/cdn/chunks/chunk.CCMCLTO5.js +0 -29
  929. package/cdn/chunks/chunk.CDC6ECAD.js +0 -1975
  930. package/cdn/chunks/chunk.CQ2HGWVM.js +0 -19
  931. package/cdn/chunks/chunk.CV6WLSVP.js +0 -19
  932. package/cdn/chunks/chunk.D5UTEPJY.js +0 -29
  933. package/cdn/chunks/chunk.DA5AJNT3.js +0 -19
  934. package/cdn/chunks/chunk.DEHXTBBK.js +0 -33
  935. package/cdn/chunks/chunk.DFLPZEVR.js +0 -32
  936. package/cdn/chunks/chunk.DOUH7RMC.js +0 -41
  937. package/cdn/chunks/chunk.DUCD56DE.js +0 -29
  938. package/cdn/chunks/chunk.ECTHCJK7.js +0 -539
  939. package/cdn/chunks/chunk.EEAYQF6R.js +0 -36
  940. package/cdn/chunks/chunk.EJKUYYF5.js +0 -29
  941. package/cdn/chunks/chunk.EPT3I5PV.js +0 -36
  942. package/cdn/chunks/chunk.EQNEWWN7.js +0 -32
  943. package/cdn/chunks/chunk.EVETX6CC.js +0 -47
  944. package/cdn/chunks/chunk.F2L2AHAX.js +0 -19
  945. package/cdn/chunks/chunk.F3PALOOP.js +0 -124
  946. package/cdn/chunks/chunk.F3PBZ4K2.js +0 -32
  947. package/cdn/chunks/chunk.FFIWGCVU.js +0 -99
  948. package/cdn/chunks/chunk.FHGT252S.js +0 -359
  949. package/cdn/chunks/chunk.FOHMHGWP.js +0 -19
  950. package/cdn/chunks/chunk.FRIENHWD.js +0 -19
  951. package/cdn/chunks/chunk.FSJNUBNL.js +0 -29
  952. package/cdn/chunks/chunk.GBI6BYU7.js +0 -19
  953. package/cdn/chunks/chunk.GDEOUVFA.js +0 -19
  954. package/cdn/chunks/chunk.GEGQWMR7.js +0 -19
  955. package/cdn/chunks/chunk.GF3ZBX77.js +0 -330
  956. package/cdn/chunks/chunk.GLEUAGZQ.js +0 -33
  957. package/cdn/chunks/chunk.GTJW4TWM.js +0 -19
  958. package/cdn/chunks/chunk.H23GKZYM.js +0 -437
  959. package/cdn/chunks/chunk.H5WUFEGF.js +0 -104
  960. package/cdn/chunks/chunk.HAM7CMN5.js +0 -113
  961. package/cdn/chunks/chunk.HJGSBK77.js +0 -19
  962. package/cdn/chunks/chunk.HSILZMCT.js +0 -19
  963. package/cdn/chunks/chunk.HUU6UOOJ.js +0 -663
  964. package/cdn/chunks/chunk.HYIOQ4VO.js +0 -231
  965. package/cdn/chunks/chunk.ICMS2GTW.js +0 -32
  966. package/cdn/chunks/chunk.IMZ2PUUZ.js +0 -29
  967. package/cdn/chunks/chunk.IPP7PQYM.js +0 -33
  968. package/cdn/chunks/chunk.ISJMOZQH.js +0 -74
  969. package/cdn/chunks/chunk.IUVYGTSB.js +0 -33
  970. package/cdn/chunks/chunk.IXC72OPP.js +0 -29
  971. package/cdn/chunks/chunk.IXTOOQL6.js +0 -19
  972. package/cdn/chunks/chunk.J6OYJXBE.js +0 -19
  973. package/cdn/chunks/chunk.JCD27DBZ.js +0 -29
  974. package/cdn/chunks/chunk.JJPMJZVA.js +0 -29
  975. package/cdn/chunks/chunk.JP632EER.js +0 -19
  976. package/cdn/chunks/chunk.JPVE4VMN.js +0 -310
  977. package/cdn/chunks/chunk.JQDLN76T.js +0 -19
  978. package/cdn/chunks/chunk.K7NDNEO3.js +0 -32
  979. package/cdn/chunks/chunk.KALKPFEM.js +0 -29
  980. package/cdn/chunks/chunk.KAZO73JL.js +0 -19
  981. package/cdn/chunks/chunk.KNUKVURG.js +0 -196
  982. package/cdn/chunks/chunk.KOJBQWLN.js +0 -29
  983. package/cdn/chunks/chunk.KQZCVDQH.js +0 -9741
  984. package/cdn/chunks/chunk.KRJ3544T.js +0 -19
  985. package/cdn/chunks/chunk.KRXWPPRW.js +0 -32
  986. package/cdn/chunks/chunk.KYYZNB77.js +0 -538
  987. package/cdn/chunks/chunk.L2HZBTUI.js +0 -19
  988. package/cdn/chunks/chunk.L2LRD76T.js +0 -60
  989. package/cdn/chunks/chunk.L6YIIWMJ.js +0 -39
  990. package/cdn/chunks/chunk.LANTKQ6J.js +0 -19
  991. package/cdn/chunks/chunk.LGASTYNC.js +0 -62
  992. package/cdn/chunks/chunk.LY2MO4WB.js +0 -266
  993. package/cdn/chunks/chunk.LYBULWCK.js +0 -138
  994. package/cdn/chunks/chunk.M2XUBKCS.js +0 -19
  995. package/cdn/chunks/chunk.MF3WDXVC.js +0 -29
  996. package/cdn/chunks/chunk.MFWCWKQW.js +0 -19
  997. package/cdn/chunks/chunk.MGZ4OUHF.js +0 -19
  998. package/cdn/chunks/chunk.MIIW42T5.js +0 -19
  999. package/cdn/chunks/chunk.MJMUGCPO.js +0 -29
  1000. package/cdn/chunks/chunk.MNHYBM5Z.js +0 -82
  1001. package/cdn/chunks/chunk.MTEJSLJ7.js +0 -29
  1002. package/cdn/chunks/chunk.MU7KT4WB.js +0 -19
  1003. package/cdn/chunks/chunk.MVJSUWYZ.js +0 -19
  1004. package/cdn/chunks/chunk.MXF6XQNU.js +0 -19
  1005. package/cdn/chunks/chunk.MXPGGV5E.js +0 -524
  1006. package/cdn/chunks/chunk.N6RPSEYY.js +0 -293
  1007. package/cdn/chunks/chunk.ND3745YQ.js +0 -94
  1008. package/cdn/chunks/chunk.NXTFWRHB.js +0 -86
  1009. package/cdn/chunks/chunk.NYKDNCHN.js +0 -19
  1010. package/cdn/chunks/chunk.O4R7PTMM.js +0 -915
  1011. package/cdn/chunks/chunk.O5PYYEPN.js +0 -35
  1012. package/cdn/chunks/chunk.OF3FMFHW.js +0 -35
  1013. package/cdn/chunks/chunk.OIXADKW2.js +0 -186
  1014. package/cdn/chunks/chunk.P6233WZY.js +0 -532
  1015. package/cdn/chunks/chunk.P6CMO6UZ.js +0 -99
  1016. package/cdn/chunks/chunk.PGYLRQFG.js +0 -19
  1017. package/cdn/chunks/chunk.PJXBIMAE.js +0 -32
  1018. package/cdn/chunks/chunk.PYND2VML.js +0 -599
  1019. package/cdn/chunks/chunk.Q2NWOLHL.js +0 -19
  1020. package/cdn/chunks/chunk.Q44BATKG.js +0 -158
  1021. package/cdn/chunks/chunk.Q73UFZXB.js +0 -29
  1022. package/cdn/chunks/chunk.Q7SV5DAR.js +0 -29
  1023. package/cdn/chunks/chunk.QBPS4V2I.js +0 -19
  1024. package/cdn/chunks/chunk.QCKKTVS2.js +0 -32
  1025. package/cdn/chunks/chunk.QFQLLSEZ.js +0 -29
  1026. package/cdn/chunks/chunk.QG6HLMSI.js +0 -29
  1027. package/cdn/chunks/chunk.QGWK5PB4.js +0 -63
  1028. package/cdn/chunks/chunk.QHZGME7O.js +0 -188
  1029. package/cdn/chunks/chunk.QJQWUFQG.js +0 -19
  1030. package/cdn/chunks/chunk.QREPQHHM.js +0 -32
  1031. package/cdn/chunks/chunk.QU3RKC7F.js +0 -29
  1032. package/cdn/chunks/chunk.QWEARTJZ.js +0 -19
  1033. package/cdn/chunks/chunk.R2K7YI7D.js +0 -128
  1034. package/cdn/chunks/chunk.R6FQRIIQ.js +0 -151
  1035. package/cdn/chunks/chunk.REAGMPVS.js +0 -19
  1036. package/cdn/chunks/chunk.RFMX3Z3J.js +0 -19
  1037. package/cdn/chunks/chunk.RNWMH5KE.js +0 -37
  1038. package/cdn/chunks/chunk.RU34LNOQ.js +0 -2555
  1039. package/cdn/chunks/chunk.RZTDAMTW.js +0 -278
  1040. package/cdn/chunks/chunk.S3KNMW6P.js +0 -32
  1041. package/cdn/chunks/chunk.S5YZQD7X.js +0 -49
  1042. package/cdn/chunks/chunk.SE5BI2SX.js +0 -904
  1043. package/cdn/chunks/chunk.SISTE6BF.js +0 -170
  1044. package/cdn/chunks/chunk.SMQJ5R6S.js +0 -123
  1045. package/cdn/chunks/chunk.SQZOUKTN.js +0 -19
  1046. package/cdn/chunks/chunk.SRN76VVR.js +0 -19
  1047. package/cdn/chunks/chunk.SZVOEV6H.js +0 -29
  1048. package/cdn/chunks/chunk.T4ASJ5DA.js +0 -294
  1049. package/cdn/chunks/chunk.TAKBJ4KW.js +0 -37
  1050. package/cdn/chunks/chunk.TAL5NXNQ.js +0 -19
  1051. package/cdn/chunks/chunk.TJMBLJW2.js +0 -29
  1052. package/cdn/chunks/chunk.TQLLYTCG.js +0 -19
  1053. package/cdn/chunks/chunk.TY4ORAQ7.js +0 -19
  1054. package/cdn/chunks/chunk.U4NYKRMO.js +0 -19
  1055. package/cdn/chunks/chunk.U6NE6OMF.js +0 -19
  1056. package/cdn/chunks/chunk.UBRRAXVT.js +0 -161
  1057. package/cdn/chunks/chunk.UOGPQCIT.js +0 -19
  1058. package/cdn/chunks/chunk.URMJZSQP.js +0 -29
  1059. package/cdn/chunks/chunk.UUH3P6U6.js +0 -29
  1060. package/cdn/chunks/chunk.UXR5JZ2Z.js +0 -34
  1061. package/cdn/chunks/chunk.VCPLLAGP.js +0 -294
  1062. package/cdn/chunks/chunk.VDHEXGOZ.js +0 -36
  1063. package/cdn/chunks/chunk.VJZLDXMR.js +0 -658
  1064. package/cdn/chunks/chunk.VMT2OA4F.js +0 -71
  1065. package/cdn/chunks/chunk.VOVZK7CH.js +0 -19
  1066. package/cdn/chunks/chunk.VXVQVMGN.js +0 -19
  1067. package/cdn/chunks/chunk.W5LR7MI7.js +0 -377
  1068. package/cdn/chunks/chunk.W7II6UEO.js +0 -34
  1069. package/cdn/chunks/chunk.WA5AZ33L.js +0 -134
  1070. package/cdn/chunks/chunk.WV5U6JXW.js +0 -616
  1071. package/cdn/chunks/chunk.XB3WNOCD.js +0 -35
  1072. package/cdn/chunks/chunk.XDKRVIUT.js +0 -33
  1073. package/cdn/chunks/chunk.XMSEFR5A.js +0 -32
  1074. package/cdn/chunks/chunk.XX64ET6U.js +0 -35
  1075. package/cdn/chunks/chunk.Y6E2F5ZU.js +0 -19
  1076. package/cdn/chunks/chunk.YNU663NG.js +0 -29
  1077. package/cdn/chunks/chunk.YOZWKBNL.js +0 -19
  1078. package/cdn/chunks/chunk.YQXMPDBV.js +0 -135
  1079. package/cdn/chunks/chunk.YREZWMUX.js +0 -32
  1080. package/cdn/chunks/chunk.YTZGPIYR.js +0 -92
  1081. package/cdn/chunks/chunk.YWOGPBYJ.js +0 -29
  1082. package/cdn/chunks/chunk.YZJY5KHP.js +0 -443
  1083. package/cdn/chunks/chunk.ZEJSSTEK.js +0 -610
  1084. package/cdn/chunks/chunk.ZFQJ43PN.js +0 -32
  1085. package/cdn/chunks/chunk.ZGP4LK6V.js +0 -19
  1086. package/cdn/chunks/chunk.ZI54JMC5.js +0 -136
  1087. package/cdn/chunks/chunk.ZMWJFNDI.js +0 -19
  1088. package/cdn/chunks/chunk.ZS2NFAQK.js +0 -68
  1089. package/cdn/chunks/chunk.ZXPUZVAS.js +0 -34
  1090. package/dist/chunks/chunk.24AEZQMY.js +0 -1
  1091. package/dist/chunks/chunk.2AUL36FB.js +0 -1
  1092. package/dist/chunks/chunk.2EOIJGD7.js +0 -2
  1093. package/dist/chunks/chunk.2F6VKICO.js +0 -1
  1094. package/dist/chunks/chunk.2K4PQYF7.js +0 -1
  1095. package/dist/chunks/chunk.2KBWAAOZ.js +0 -127
  1096. package/dist/chunks/chunk.2O6UGT2E.js +0 -1
  1097. package/dist/chunks/chunk.2QJ5ILLT.js +0 -5
  1098. package/dist/chunks/chunk.2TEFEWMH.js +0 -1
  1099. package/dist/chunks/chunk.2U6NRRJX.js +0 -55
  1100. package/dist/chunks/chunk.2VBMVTVL.js +0 -1
  1101. package/dist/chunks/chunk.2WJQNEGW.js +0 -1
  1102. package/dist/chunks/chunk.32IM5557.js +0 -1
  1103. package/dist/chunks/chunk.3C5PLPEL.js +0 -1
  1104. package/dist/chunks/chunk.3F7A2YCE.js +0 -80
  1105. package/dist/chunks/chunk.3JJJ3A5W.js +0 -1
  1106. package/dist/chunks/chunk.3L5IUZSR.js +0 -1
  1107. package/dist/chunks/chunk.3PSWPHUS.js +0 -12
  1108. package/dist/chunks/chunk.3QJKE2MF.js +0 -1
  1109. package/dist/chunks/chunk.3QO7J7CV.js +0 -1
  1110. package/dist/chunks/chunk.3TFLBBWR.js +0 -115
  1111. package/dist/chunks/chunk.3TNPGXLM.js +0 -1
  1112. package/dist/chunks/chunk.3TVPBDCY.js +0 -8
  1113. package/dist/chunks/chunk.3YZ7SPS6.js +0 -1
  1114. package/dist/chunks/chunk.3Z6MBEYS.js +0 -1
  1115. package/dist/chunks/chunk.43F6G3ZK.js +0 -12
  1116. package/dist/chunks/chunk.46IN2TSC.js +0 -1
  1117. package/dist/chunks/chunk.4KJESPZX.js +0 -100
  1118. package/dist/chunks/chunk.4V7RXLNV.js +0 -1
  1119. package/dist/chunks/chunk.4XJ7SAR3.js +0 -1
  1120. package/dist/chunks/chunk.53ONDEHK.js +0 -1
  1121. package/dist/chunks/chunk.5AKALBX3.js +0 -1
  1122. package/dist/chunks/chunk.5BDNKYEE.js +0 -1
  1123. package/dist/chunks/chunk.5EIBF6PE.js +0 -1
  1124. package/dist/chunks/chunk.5F27KZSR.js +0 -1
  1125. package/dist/chunks/chunk.5OXOV6YG.js +0 -38
  1126. package/dist/chunks/chunk.5PUVB3CB.js +0 -1
  1127. package/dist/chunks/chunk.5U7A7SNZ.js +0 -1
  1128. package/dist/chunks/chunk.636ADUMN.js +0 -1
  1129. package/dist/chunks/chunk.64RITC43.js +0 -1
  1130. package/dist/chunks/chunk.6HYILGKL.js +0 -1
  1131. package/dist/chunks/chunk.6LOHOD46.js +0 -1
  1132. package/dist/chunks/chunk.73MWC6LT.js +0 -1
  1133. package/dist/chunks/chunk.7ATPABHJ.js +0 -6
  1134. package/dist/chunks/chunk.7CBI6OMZ.js +0 -1
  1135. package/dist/chunks/chunk.7F4GNB3D.js +0 -1
  1136. package/dist/chunks/chunk.7G5XKBQX.js +0 -1
  1137. package/dist/chunks/chunk.7SLBI5EP.js +0 -30
  1138. package/dist/chunks/chunk.7SQQMJNR.js +0 -1
  1139. package/dist/chunks/chunk.7UWDBFRT.js +0 -1
  1140. package/dist/chunks/chunk.7W6I25NB.js +0 -1
  1141. package/dist/chunks/chunk.A6GLN7RV.js +0 -157
  1142. package/dist/chunks/chunk.ACTAEVBU.js +0 -62
  1143. package/dist/chunks/chunk.ANNK5AL5.js +0 -23
  1144. package/dist/chunks/chunk.B34XIVQZ.js +0 -1
  1145. package/dist/chunks/chunk.B6POOW4T.js +0 -1
  1146. package/dist/chunks/chunk.BL6I47ZQ.js +0 -1
  1147. package/dist/chunks/chunk.BM6R6HEQ.js +0 -1
  1148. package/dist/chunks/chunk.BX3GH3KL.js +0 -51
  1149. package/dist/chunks/chunk.BYFR372D.js +0 -64
  1150. package/dist/chunks/chunk.C2TBND2R.js +0 -1
  1151. package/dist/chunks/chunk.CDF2IKHX.js +0 -1
  1152. package/dist/chunks/chunk.CH4OTUSN.js +0 -1
  1153. package/dist/chunks/chunk.CS34YHPW.js +0 -75
  1154. package/dist/chunks/chunk.CVFM4CTZ.js +0 -1
  1155. package/dist/chunks/chunk.CVHVZQHF.js +0 -55
  1156. package/dist/chunks/chunk.DMGD52HA.js +0 -17
  1157. package/dist/chunks/chunk.DNTGG6CH.js +0 -1
  1158. package/dist/chunks/chunk.DQO5T3TC.js +0 -1
  1159. package/dist/chunks/chunk.DVGRZOZN.js +0 -1
  1160. package/dist/chunks/chunk.E4E5YW6S.js +0 -67
  1161. package/dist/chunks/chunk.EC5X7NCS.js +0 -1
  1162. package/dist/chunks/chunk.EH52QKIC.js +0 -4
  1163. package/dist/chunks/chunk.EMPX6UWB.js +0 -1
  1164. package/dist/chunks/chunk.EXDUEHTD.js +0 -1
  1165. package/dist/chunks/chunk.F6AIFJPN.js +0 -1
  1166. package/dist/chunks/chunk.F7R7YK2O.js +0 -1
  1167. package/dist/chunks/chunk.FARMGJW3.js +0 -1
  1168. package/dist/chunks/chunk.FIWFVJ3D.js +0 -1
  1169. package/dist/chunks/chunk.FNR2LCIP.js +0 -5
  1170. package/dist/chunks/chunk.FQUIUPSV.js +0 -1
  1171. package/dist/chunks/chunk.FSL3CFV7.js +0 -8
  1172. package/dist/chunks/chunk.FTS3NXLZ.js +0 -16
  1173. package/dist/chunks/chunk.G6ZHYUA3.js +0 -1
  1174. package/dist/chunks/chunk.GBM6TJGZ.js +0 -1
  1175. package/dist/chunks/chunk.GMMPKXT2.js +0 -65
  1176. package/dist/chunks/chunk.GTDDKRIN.js +0 -1
  1177. package/dist/chunks/chunk.GV5S63SB.js +0 -1
  1178. package/dist/chunks/chunk.GVXMLVLW.js +0 -121
  1179. package/dist/chunks/chunk.GZVB4XR2.js +0 -1
  1180. package/dist/chunks/chunk.HA3PA5QZ.js +0 -145
  1181. package/dist/chunks/chunk.HFNA3AAG.js +0 -1
  1182. package/dist/chunks/chunk.HGWEW6YY.js +0 -24
  1183. package/dist/chunks/chunk.HJWKRT2R.js +0 -55
  1184. package/dist/chunks/chunk.HLEMQAKN.js +0 -1
  1185. package/dist/chunks/chunk.HV3NQBOM.js +0 -14
  1186. package/dist/chunks/chunk.I24KQBGT.js +0 -1
  1187. package/dist/chunks/chunk.I4XKMXRT.js +0 -1
  1188. package/dist/chunks/chunk.IA2ZHXCK.js +0 -1
  1189. package/dist/chunks/chunk.ILU2FM4L.js +0 -1
  1190. package/dist/chunks/chunk.INVCWNTC.js +0 -41
  1191. package/dist/chunks/chunk.IT5QPTVP.js +0 -1
  1192. package/dist/chunks/chunk.J53MLXIQ.js +0 -1
  1193. package/dist/chunks/chunk.JEE5UHSS.js +0 -1
  1194. package/dist/chunks/chunk.JNX2LPPS.js +0 -1
  1195. package/dist/chunks/chunk.JSEYNLAE.js +0 -48
  1196. package/dist/chunks/chunk.JXF5TQDT.js +0 -1
  1197. package/dist/chunks/chunk.K63TORTJ.js +0 -1
  1198. package/dist/chunks/chunk.KCEHKGQU.js +0 -1
  1199. package/dist/chunks/chunk.KGLV6NBY.js +0 -1
  1200. package/dist/chunks/chunk.KI4IENJB.js +0 -1
  1201. package/dist/chunks/chunk.KLHF3ADP.js +0 -1
  1202. package/dist/chunks/chunk.KN2ZSH5I.js +0 -1
  1203. package/dist/chunks/chunk.KRY24B2Z.js +0 -1
  1204. package/dist/chunks/chunk.KV7QXEB2.js +0 -142
  1205. package/dist/chunks/chunk.L2FOML4Z.js +0 -1
  1206. package/dist/chunks/chunk.L4FZBNJZ.js +0 -20
  1207. package/dist/chunks/chunk.L7ADVOTR.js +0 -1
  1208. package/dist/chunks/chunk.LGQNDGC2.js +0 -22
  1209. package/dist/chunks/chunk.LJ3C6YXE.js +0 -1
  1210. package/dist/chunks/chunk.LLYICQ3I.js +0 -1
  1211. package/dist/chunks/chunk.LT5BSY7X.js +0 -1
  1212. package/dist/chunks/chunk.MBRHBIVR.js +0 -1
  1213. package/dist/chunks/chunk.MJJLSP6W.js +0 -1
  1214. package/dist/chunks/chunk.MQO2Z6JR.js +0 -1
  1215. package/dist/chunks/chunk.MUMOGZM7.js +0 -572
  1216. package/dist/chunks/chunk.MVQVCZMV.js +0 -1
  1217. package/dist/chunks/chunk.MY53SBVE.js +0 -43
  1218. package/dist/chunks/chunk.N2ZA3AN3.js +0 -35
  1219. package/dist/chunks/chunk.NAMM3J43.js +0 -300
  1220. package/dist/chunks/chunk.NQZCGWQT.js +0 -1
  1221. package/dist/chunks/chunk.NSKI4HXF.js +0 -19
  1222. package/dist/chunks/chunk.NTY7GIBX.js +0 -1
  1223. package/dist/chunks/chunk.NX7TNGI4.js +0 -1
  1224. package/dist/chunks/chunk.NZ2EQTLJ.js +0 -1
  1225. package/dist/chunks/chunk.OF5IIYCM.js +0 -1
  1226. package/dist/chunks/chunk.OOOGWVDH.js +0 -1
  1227. package/dist/chunks/chunk.OQU2SEYR.js +0 -1
  1228. package/dist/chunks/chunk.P35VRJSU.js +0 -1
  1229. package/dist/chunks/chunk.PBY3SOJT.js +0 -1
  1230. package/dist/chunks/chunk.PEBGUL65.js +0 -1
  1231. package/dist/chunks/chunk.PHJXLU2K.js +0 -1
  1232. package/dist/chunks/chunk.PHTTNFIA.js +0 -1
  1233. package/dist/chunks/chunk.PICICWOI.js +0 -300
  1234. package/dist/chunks/chunk.PJYZ4R4F.js +0 -1
  1235. package/dist/chunks/chunk.PKYBMF7D.js +0 -30
  1236. package/dist/chunks/chunk.PNIB7OCC.js +0 -1
  1237. package/dist/chunks/chunk.PPDNREE3.js +0 -37
  1238. package/dist/chunks/chunk.PPHWYBMI.js +0 -35
  1239. package/dist/chunks/chunk.PVRQVGN6.js +0 -99
  1240. package/dist/chunks/chunk.QNMFOQMN.js +0 -9
  1241. package/dist/chunks/chunk.QWRFOCPZ.js +0 -1
  1242. package/dist/chunks/chunk.R5KJU6SA.js +0 -47
  1243. package/dist/chunks/chunk.R5YBBFHE.js +0 -11
  1244. package/dist/chunks/chunk.RALU3ZHR.js +0 -1
  1245. package/dist/chunks/chunk.RB2ISNUH.js +0 -11
  1246. package/dist/chunks/chunk.REKHGQMI.js +0 -1
  1247. package/dist/chunks/chunk.RFGG22O7.js +0 -1
  1248. package/dist/chunks/chunk.RFPACV7B.js +0 -760
  1249. package/dist/chunks/chunk.RGRNY7OY.js +0 -1
  1250. package/dist/chunks/chunk.RH5XP3UV.js +0 -1
  1251. package/dist/chunks/chunk.S3L7GNQT.js +0 -1
  1252. package/dist/chunks/chunk.S4TDVG2W.js +0 -1
  1253. package/dist/chunks/chunk.SO45NDQI.js +0 -1
  1254. package/dist/chunks/chunk.SRZGR2LP.js +0 -1
  1255. package/dist/chunks/chunk.SU55MP2P.js +0 -27
  1256. package/dist/chunks/chunk.SUNBQSGV.js +0 -1
  1257. package/dist/chunks/chunk.T4IJSKKI.js +0 -1
  1258. package/dist/chunks/chunk.TISMRXXU.js +0 -1
  1259. package/dist/chunks/chunk.TVNCK67F.js +0 -1
  1260. package/dist/chunks/chunk.TYO47TNX.js +0 -1
  1261. package/dist/chunks/chunk.U2YGT52C.js +0 -74
  1262. package/dist/chunks/chunk.U3QRH2D5.js +0 -25
  1263. package/dist/chunks/chunk.UBGGJOZN.js +0 -1
  1264. package/dist/chunks/chunk.UDLHCCS6.js +0 -1
  1265. package/dist/chunks/chunk.UJSQVL34.js +0 -1
  1266. package/dist/chunks/chunk.USM5KDQR.js +0 -1
  1267. package/dist/chunks/chunk.UTSAP2NZ.js +0 -1
  1268. package/dist/chunks/chunk.V3JACKIW.js +0 -1
  1269. package/dist/chunks/chunk.VGGWQYPT.js +0 -154
  1270. package/dist/chunks/chunk.VOIIKZBP.js +0 -26
  1271. package/dist/chunks/chunk.VR6KDGCO.js +0 -280
  1272. package/dist/chunks/chunk.VYMDLQKW.js +0 -33
  1273. package/dist/chunks/chunk.W43XN23E.js +0 -1
  1274. package/dist/chunks/chunk.W5A5SC27.js +0 -26
  1275. package/dist/chunks/chunk.W5BWSIPL.js +0 -1
  1276. package/dist/chunks/chunk.W7APBRIA.js +0 -43
  1277. package/dist/chunks/chunk.WBPL3IO2.js +0 -1
  1278. package/dist/chunks/chunk.WUOLVIQC.js +0 -1
  1279. package/dist/chunks/chunk.WWCNUU6Q.js +0 -1
  1280. package/dist/chunks/chunk.WZ74OBKA.js +0 -1
  1281. package/dist/chunks/chunk.X2PL4Y4D.js +0 -1
  1282. package/dist/chunks/chunk.XKL57T4O.js +0 -1
  1283. package/dist/chunks/chunk.XMDSQBKG.js +0 -112
  1284. package/dist/chunks/chunk.XMHPYUCZ.js +0 -1155
  1285. package/dist/chunks/chunk.XNB4V2JD.js +0 -9
  1286. package/dist/chunks/chunk.XPKY74HM.js +0 -1
  1287. package/dist/chunks/chunk.XUWJW3FD.js +0 -122
  1288. package/dist/chunks/chunk.XYVKWI2L.js +0 -1
  1289. package/dist/chunks/chunk.Y6JLPDVR.js +0 -1
  1290. package/dist/chunks/chunk.YBLDTPN7.js +0 -1
  1291. package/dist/chunks/chunk.YGK2DL4Z.js +0 -1
  1292. package/dist/chunks/chunk.YIGG3C7R.js +0 -1
  1293. package/dist/chunks/chunk.YJYTTQML.js +0 -1
  1294. package/dist/chunks/chunk.YMDQXJV5.js +0 -1
  1295. package/dist/chunks/chunk.YNS5FOJW.js +0 -1
  1296. package/dist/chunks/chunk.YU2YXPZA.js +0 -20
  1297. package/dist/chunks/chunk.YV46PDX2.js +0 -1
  1298. package/dist/chunks/chunk.YWHOA5CV.js +0 -1
  1299. package/dist/chunks/chunk.YXSAWSTP.js +0 -1
  1300. package/dist/chunks/chunk.ZF2UFMLE.js +0 -1
  1301. package/dist/chunks/chunk.ZJMVR6SU.js +0 -1
  1302. package/dist/chunks/chunk.ZJWPN6CD.js +0 -39
  1303. package/dist/chunks/chunk.ZSBHPO6G.js +0 -1
  1304. package/dist/terra_ui_components-0.0.190-py3-none-any.whl +0 -0
  1305. package/dist/terra_ui_components-0.0.190.tar.gz +0 -0
@@ -0,0 +1,2690 @@
1
+ import {
2
+ KnownFeatureFlags,
3
+ isFeatureEnabled
4
+ } from "./chunk.S6KQAZNG.js";
5
+ import {
6
+ convertVariableEntryIdToGiovanniFormat
7
+ } from "./chunk.FXO66O5A.js";
8
+ import {
9
+ getNotebook
10
+ } from "./chunk.O4PUDLBX.js";
11
+ import {
12
+ TerraLogin
13
+ } from "./chunk.UTVU3EOT.js";
14
+ import {
15
+ TerraDialog
16
+ } from "./chunk.JOIINCST.js";
17
+ import {
18
+ HarmonyRequestController
19
+ } from "./chunk.MWU5BT2I.js";
20
+ import {
21
+ HarmonyRequest
22
+ } from "./chunk.DPSHTZ6P.js";
23
+ import {
24
+ AuthController
25
+ } from "./chunk.P34Y4ETY.js";
26
+ import {
27
+ data_subsetter_styles_default
28
+ } from "./chunk.ITK2GQEZ.js";
29
+ import {
30
+ TerraDataAccess,
31
+ debounce
32
+ } from "./chunk.5EYYSFOL.js";
33
+ import {
34
+ TerraSlider
35
+ } from "./chunk.LQZHP5Q5.js";
36
+ import {
37
+ TerraMenu
38
+ } from "./chunk.WQXDVT6E.js";
39
+ import {
40
+ TerraMenuItem
41
+ } from "./chunk.C4PJTDXM.js";
42
+ import {
43
+ TerraDatePicker
44
+ } from "./chunk.UAXYHWAH.js";
45
+ import {
46
+ CollectionController
47
+ } from "./chunk.23F22BJH.js";
48
+ import {
49
+ TerraSpatialPicker
50
+ } from "./chunk.OH7UMU66.js";
51
+ import {
52
+ TerraDropdown
53
+ } from "./chunk.3DMNGIYG.js";
54
+ import {
55
+ TerraInput
56
+ } from "./chunk.HD56KHLF.js";
57
+ import {
58
+ QueryClientMixin
59
+ } from "./chunk.DOUWGQFH.js";
60
+ import {
61
+ TerraLoader
62
+ } from "./chunk.RSZW77LZ.js";
63
+ import {
64
+ getUTCDate
65
+ } from "./chunk.TKSEPVAL.js";
66
+ import {
67
+ HttpException
68
+ } from "./chunk.SYQOGYTQ.js";
69
+ import {
70
+ TerraButton
71
+ } from "./chunk.6XYUXMUR.js";
72
+ import {
73
+ TerraAccordion
74
+ } from "./chunk.ASS72YVP.js";
75
+ import {
76
+ TerraIcon
77
+ } from "./chunk.HEFAOEHC.js";
78
+ import {
79
+ getBasePath
80
+ } from "./chunk.ZQVMOVOT.js";
81
+ import {
82
+ TerraAlert
83
+ } from "./chunk.ZC47Q6ZQ.js";
84
+ import {
85
+ watch
86
+ } from "./chunk.MPVZOQYA.js";
87
+ import {
88
+ TerraElement,
89
+ component_styles_default,
90
+ e,
91
+ n,
92
+ r
93
+ } from "./chunk.GILBGDM2.js";
94
+ import {
95
+ A,
96
+ b
97
+ } from "./chunk.RRCYT4LP.js";
98
+ import {
99
+ __decorateClass,
100
+ __privateAdd,
101
+ __privateGet,
102
+ __privateMethod,
103
+ __spreadProps,
104
+ __spreadValues,
105
+ init_buffer,
106
+ init_dirname,
107
+ init_process
108
+ } from "./chunk.ZEOVK2FE.js";
109
+
110
+ // src/components/data-subsetter/data-subsetter.component.ts
111
+ init_dirname();
112
+ init_buffer();
113
+ init_process();
114
+
115
+ // src/lib/jupyter.ts
116
+ init_dirname();
117
+ init_buffer();
118
+ init_process();
119
+ var JUPYTER_LITE_URL = "https://gesdisc.github.io/jupyterlite/lab/index.html";
120
+ function openJupyterLiteWindow(readyCb) {
121
+ const jupyterWindow = window.open(JUPYTER_LITE_URL, "_blank");
122
+ if (!jupyterWindow) {
123
+ console.error("Failed to open JupyterLite!");
124
+ return;
125
+ }
126
+ window.addEventListener("message", (event) => readyCb(event, jupyterWindow), {
127
+ once: true
128
+ });
129
+ return jupyterWindow;
130
+ }
131
+ function sendDataToJupyterNotebook(type, data) {
132
+ openJupyterLiteWindow((event, jupyterWindow) => {
133
+ var _a;
134
+ if (((_a = event.data) == null ? void 0 : _a.type) !== "jupyterlite-ready") {
135
+ return;
136
+ }
137
+ console.log("JupyterLite is ready!");
138
+ jupyterWindow.postMessage(__spreadValues({ type }, data), "*");
139
+ });
140
+ }
141
+
142
+ // src/services/cmr-variable.service.ts
143
+ init_dirname();
144
+ init_buffer();
145
+ init_process();
146
+ var CmrVariableService = class {
147
+ /**
148
+ * given a name and a list of variables, return the variable with the matching name
149
+ */
150
+ getVariableByName(name, variables) {
151
+ var _a;
152
+ if (!variables || !((_a = variables.items) == null ? void 0 : _a.length)) {
153
+ return;
154
+ }
155
+ return variables.items.find((variable) => variable.umm.Name === name);
156
+ }
157
+ /**
158
+ * given a variable, return the variable's display label
159
+ * ex: Shortname = LongName (Units)
160
+ */
161
+ getVariableDisplayLabel(variable) {
162
+ const { Name = "", LongName = "", Units = "" } = variable.umm;
163
+ return `${Name}${Name && LongName && Name !== LongName ? ` = ${LongName}` : ""}${Units ? ` (${Units})` : ""}`;
164
+ }
165
+ };
166
+ var cmrVariableService = new CmrVariableService();
167
+ var cmr_variable_service_default = cmrVariableService;
168
+
169
+ // src/components/data-subsetter/data-subsetter.component.ts
170
+ var defaultOutputFormat = {
171
+ key: "application/x-netcdf4",
172
+ label: "NetCDF",
173
+ description: "Download data in NetCDF format"
174
+ };
175
+ var _collectionController, _authController, _harmonyRequestController, _renderFooterForDialog, renderFooterForDialog_fn, _renderSizeInfo, renderSizeInfo_fn, _renderSubsetOptions, renderSubsetOptions_fn, _resetAllParameters, _renderSearchForCollection, renderSearchForCollection_fn, _renderOutputFormatSelection, renderOutputFormatSelection_fn, _renderDateRangeSelection, renderDateRangeSelection_fn, _handleDateChange, _resetDateRangeSelection, _resetFormatSelection, _getCollectionDateRange, getCollectionDateRange_fn, _renderSpatialSelection, renderSpatialSelection_fn, _handleSpatialChange, _resetSpatialSelection, _renderVariableSelection, renderVariableSelection_fn, _renderDimensionGroup, renderDimensionGroup_fn, _setDimensionValue, setDimensionValue_fn, _renderDimensionSelection, renderDimensionSelection_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, _resetDimensionSelection, resetDimensionSelection_fn, _isDimensionExcluded, isDimensionExcluded_fn, _getCommonSelectableDimensions, getCommonSelectableDimensions_fn, _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, _getGiovanniValidationError, getGiovanniValidationError_fn, _getHarmonyRequestErrorMessage, getHarmonyRequestErrorMessage_fn, _renderHarmonyRequestError, renderHarmonyRequestError_fn, _handleExpandSearchClick;
176
+ var TerraDataSubsetter = class extends QueryClientMixin(TerraElement) {
177
+ constructor() {
178
+ super(...arguments);
179
+ __privateAdd(this, _renderFooterForDialog);
180
+ __privateAdd(this, _renderSizeInfo);
181
+ __privateAdd(this, _renderSubsetOptions);
182
+ __privateAdd(this, _renderSearchForCollection);
183
+ __privateAdd(this, _renderOutputFormatSelection);
184
+ __privateAdd(this, _renderDateRangeSelection);
185
+ __privateAdd(this, _getCollectionDateRange);
186
+ __privateAdd(this, _renderSpatialSelection);
187
+ __privateAdd(this, _renderVariableSelection);
188
+ __privateAdd(this, _renderDimensionGroup);
189
+ __privateAdd(this, _setDimensionValue);
190
+ __privateAdd(this, _renderDimensionSelection);
191
+ __privateAdd(this, _filterVariableTree);
192
+ __privateAdd(this, _handleVariableFilterChange);
193
+ __privateAdd(this, _buildVariableTree);
194
+ __privateAdd(this, _renderVariableTree);
195
+ __privateAdd(this, _getAllGroupPaths);
196
+ __privateAdd(this, _toggleGroupExpand);
197
+ __privateAdd(this, _toggleExpandCollapseAll);
198
+ __privateAdd(this, _toggleVariableSelection);
199
+ __privateAdd(this, _markFieldTouched);
200
+ __privateAdd(this, _resetDimensionSelection);
201
+ __privateAdd(this, _isDimensionExcluded);
202
+ __privateAdd(this, _getCommonSelectableDimensions);
203
+ __privateAdd(this, _renderJobStatus);
204
+ __privateAdd(this, _renderSelectedParams);
205
+ __privateAdd(this, _cancelJob);
206
+ __privateAdd(this, _getData);
207
+ __privateAdd(this, _touchAllFields);
208
+ __privateAdd(this, _numberOfFilesFoundEstimate);
209
+ __privateAdd(this, _getDocumentationLinks);
210
+ __privateAdd(this, _getDataLinks);
211
+ __privateAdd(this, _hasAtLeastOneSubsetOption);
212
+ __privateAdd(this, _hasSpatialSubset);
213
+ __privateAdd(this, _renderJobMessage);
214
+ __privateAdd(this, _getJobMessageText);
215
+ __privateAdd(this, _estimateJobSize);
216
+ __privateAdd(this, _refineParameters);
217
+ __privateAdd(this, _backToSubsetOptions);
218
+ __privateAdd(this, _viewRunningJob);
219
+ __privateAdd(this, _handleDownloadSelect);
220
+ __privateAdd(this, _downloadLinksAsTxt);
221
+ __privateAdd(this, _downloadPythonScript);
222
+ __privateAdd(this, _downloadEarthdataDownload);
223
+ __privateAdd(this, _handleJupyterNotebookClick);
224
+ __privateAdd(this, _renderAvailableTemporalRangeSection);
225
+ __privateAdd(this, _renderAvailableSpatialRangeSection);
226
+ __privateAdd(this, _renderDataAccessModeSelection);
227
+ __privateAdd(this, _getGiovanniValidationError);
228
+ __privateAdd(this, _getHarmonyRequestErrorMessage);
229
+ __privateAdd(this, _renderHarmonyRequestError);
230
+ this.showCollectionSearch = true;
231
+ this.showHistoryPanel = true;
232
+ this.isHistoryView = false;
233
+ this.selectedVariables = [];
234
+ this.selectedDimensionIndexes = {};
235
+ this.expandedVariableGroups = /* @__PURE__ */ new Set();
236
+ this.variableFilterText = "";
237
+ this.touchedFields = /* @__PURE__ */ new Set();
238
+ this.selectedDateRange = {
239
+ startDate: null,
240
+ endDate: null
241
+ };
242
+ this.selectedFormat = defaultOutputFormat;
243
+ this.cancelingGetData = false;
244
+ this.selectedTab = "web-links";
245
+ this.refineParameters = false;
246
+ this.collectionSearchType = "all";
247
+ this.collectionSearchLoading = false;
248
+ this.collectionLoading = false;
249
+ this.collectionAccordionOpen = true;
250
+ this.dataAccessMode = "original";
251
+ __privateAdd(this, _collectionController, new CollectionController(this, {
252
+ getCollectionEntryId: () => this.collectionEntryId,
253
+ getBearerToken: () => this.bearerToken
254
+ }));
255
+ __privateAdd(this, _authController, new AuthController(this));
256
+ __privateAdd(this, _harmonyRequestController, new HarmonyRequestController(this));
257
+ __privateAdd(this, _resetAllParameters, () => {
258
+ this.selectedVariables = [];
259
+ if (__privateMethod(this, _hasSpatialSubset, hasSpatialSubset_fn).call(this)) {
260
+ __privateGet(this, _resetSpatialSelection).call(this);
261
+ }
262
+ this.selectedDateRange = {
263
+ startDate: null,
264
+ endDate: null
265
+ };
266
+ this.touchedFields = /* @__PURE__ */ new Set();
267
+ this.validationError = void 0;
268
+ this.expandedVariableGroups = /* @__PURE__ */ new Set();
269
+ this.requestUpdate();
270
+ });
271
+ __privateAdd(this, _handleDateChange, (e2) => {
272
+ __privateMethod(this, _markFieldTouched, markFieldTouched_fn).call(this, "date");
273
+ this.selectedDateRange = __spreadProps(__spreadValues({}, this.selectedDateRange), {
274
+ startDate: e2.detail.startDate,
275
+ endDate: e2.detail.endDate
276
+ });
277
+ });
278
+ __privateAdd(this, _resetDateRangeSelection, () => {
279
+ this.selectedDateRange = { startDate: null, endDate: null };
280
+ });
281
+ __privateAdd(this, _resetFormatSelection, () => {
282
+ var _a;
283
+ if ((_a = this.collectionWithServices) == null ? void 0 : _a.configuredOutputFormats.length) {
284
+ const netcdfFormat = this.collectionWithServices.configuredOutputFormats.find(
285
+ (f) => f.key === "application/x-netcdf4" || f.key === "application/netcdf"
286
+ );
287
+ this.selectedFormat = netcdfFormat || this.collectionWithServices.configuredOutputFormats[0];
288
+ } else {
289
+ this.selectedFormat = defaultOutputFormat;
290
+ }
291
+ });
292
+ __privateAdd(this, _handleSpatialChange, (e2) => {
293
+ var _a;
294
+ __privateMethod(this, _markFieldTouched, markFieldTouched_fn).call(this, "spatial");
295
+ if (e2.detail.type === "point" /* POINT */) {
296
+ this.shapeGeoJson = void 0;
297
+ this.spatialLabel = void 0;
298
+ this.spatialSelection = e2.detail.latLng;
299
+ } else if (e2.detail.type === "bbox" /* BBOX */) {
300
+ this.shapeGeoJson = void 0;
301
+ this.spatialLabel = void 0;
302
+ this.spatialSelection = e2.detail.bounds;
303
+ } else if (e2.detail.type === "polygon" /* POLYGON */) {
304
+ this.spatialSelection = void 0;
305
+ if (e2.detail.geoJson) {
306
+ this.shapeGeoJson = e2.detail.geoJson;
307
+ this.spatialLabel = (_a = e2.detail.label) != null ? _a : "Shape selected";
308
+ } else if (e2.detail.latLngs.length > 0) {
309
+ const coords = e2.detail.latLngs.map((ll) => [ll.lng, ll.lat]);
310
+ coords.push(coords[0]);
311
+ this.shapeGeoJson = {
312
+ type: "FeatureCollection",
313
+ features: [
314
+ {
315
+ type: "Feature",
316
+ geometry: {
317
+ type: "Polygon",
318
+ coordinates: [coords]
319
+ },
320
+ properties: null
321
+ }
322
+ ]
323
+ };
324
+ this.spatialLabel = `Polygon (${e2.detail.latLngs.length} vertices)`;
325
+ } else {
326
+ this.shapeGeoJson = void 0;
327
+ this.spatialLabel = void 0;
328
+ }
329
+ } else {
330
+ this.spatialSelection = void 0;
331
+ this.shapeGeoJson = void 0;
332
+ this.spatialLabel = void 0;
333
+ }
334
+ });
335
+ /**
336
+ * resets the spatial selection back to the bounds of the collection
337
+ */
338
+ __privateAdd(this, _resetSpatialSelection, () => {
339
+ this.spatialSelection = void 0;
340
+ this.shapeGeoJson = void 0;
341
+ this.spatialLabel = void 0;
342
+ this.spatialPicker.clear();
343
+ __privateMethod(this, _markFieldTouched, markFieldTouched_fn).call(this, "spatial");
344
+ });
345
+ __privateAdd(this, _resetVariableSelection, () => {
346
+ this.selectedVariables = [];
347
+ __privateMethod(this, _resetDimensionSelection, resetDimensionSelection_fn).call(this);
348
+ });
349
+ __privateAdd(this, _handleExpandSearchClick, (event) => {
350
+ event.preventDefault();
351
+ __privateMethod(this, _backToSubsetOptions, backToSubsetOptions_fn).call(this);
352
+ });
353
+ }
354
+ jobIdChanged() {
355
+ if (this.jobId) {
356
+ __privateGet(this, _harmonyRequestController).startPollForJobStatus(this.jobId, {
357
+ bearerToken: this.bearerToken
358
+ });
359
+ this.dataAccessMode = "subset";
360
+ }
361
+ }
362
+ shortNameAndVersionChanged() {
363
+ if (this.shortName && this.version) {
364
+ this.collectionEntryId = `${this.shortName}_${this.version}`;
365
+ }
366
+ }
367
+ collectionEntryIdChanged() {
368
+ if (this.collectionEntryId) {
369
+ this.showCollectionSearch = false;
370
+ } else {
371
+ this.showCollectionSearch = true;
372
+ }
373
+ }
374
+ firstUpdated() {
375
+ if (this.collectionEntryId) {
376
+ this.showCollectionSearch = false;
377
+ }
378
+ if (this.jobId) {
379
+ __privateGet(this, _harmonyRequestController).startPollForJobStatus(this.jobId, {
380
+ bearerToken: this.bearerToken
381
+ });
382
+ this.dataAccessMode = "subset";
383
+ }
384
+ this.renderHistoryPanel();
385
+ }
386
+ updated(changedProps) {
387
+ var _a, _b, _c;
388
+ super.updated(changedProps);
389
+ const newCollectionInfo = __privateGet(this, _collectionController).collectionInfo;
390
+ if (newCollectionInfo !== this.collectionWithServices) {
391
+ this.collectionWithServices = newCollectionInfo;
392
+ }
393
+ const sampling = (_a = __privateGet(this, _collectionController).sampling) == null ? void 0 : _a.data;
394
+ if ((sampling == null ? void 0 : sampling.minDate) !== this.granuleMinDate) {
395
+ this.granuleMinDate = sampling == null ? void 0 : sampling.minDate;
396
+ }
397
+ if ((sampling == null ? void 0 : sampling.maxDate) !== this.granuleMaxDate) {
398
+ this.granuleMaxDate = sampling == null ? void 0 : sampling.maxDate;
399
+ }
400
+ const newGiovanni = __privateGet(this, _collectionController).giovanniVariables;
401
+ if (newGiovanni.size !== ((_c = (_b = this.giovanniConfiguredVariables) == null ? void 0 : _b.size) != null ? _c : 0)) {
402
+ this.giovanniConfiguredVariables = newGiovanni;
403
+ }
404
+ }
405
+ /** True if the collection contains sub-daily granules. Used by DataSubsetterController to format dates. */
406
+ get isSubDaily() {
407
+ return __privateGet(this, _collectionController).isSubDaily;
408
+ }
409
+ collectionChanged() {
410
+ const { startDate, endDate } = __privateMethod(this, _getCollectionDateRange, getCollectionDateRange_fn).call(this);
411
+ this.selectedDateRange = { startDate, endDate };
412
+ __privateGet(this, _resetFormatSelection).call(this);
413
+ this.collectionLoading = false;
414
+ this.collectionAccordionOpen = false;
415
+ }
416
+ granuleDatesChanged() {
417
+ const newRange = __spreadValues(__spreadValues({}, this.granuleMinDate && { startDate: this.granuleMinDate }), this.granuleMaxDate && { endDate: this.granuleMaxDate });
418
+ if (Object.keys(newRange).length > 0) {
419
+ this.selectedDateRange = __spreadValues(__spreadValues({}, this.selectedDateRange), newRange);
420
+ }
421
+ }
422
+ selectedFormatChanged() {
423
+ if (this.selectedFormat.isGiovanniFormat && this.selectedVariables.length > 1) {
424
+ this.selectedVariables = [this.selectedVariables[0]];
425
+ }
426
+ }
427
+ showDialog() {
428
+ var _a;
429
+ (_a = this.dialogElement) == null ? void 0 : _a.show();
430
+ }
431
+ render() {
432
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s;
433
+ const showJobStatus = (__privateGet(this, _harmonyRequestController).jobId || this.harmonyRequestError) && !this.refineParameters;
434
+ const showMinimizeButton = showJobStatus && !!this.dialog;
435
+ const title = (_c = (_b = (_a = this.collectionWithServices) == null ? void 0 : _a.collection) == null ? void 0 : _b.EntryTitle) != null ? _c : "Download Data";
436
+ if (!this.collectionWithServices) {
437
+ if (__privateGet(this, _collectionController).hasCapabilitiesError) {
438
+ return b`
439
+ <terra-alert open variant="danger" appearance="white">
440
+ Failed to find the requested collection.
441
+ </terra-alert>
442
+ `;
443
+ }
444
+ }
445
+ const content = b`
446
+ <div class="container">
447
+ ${!this.dialog ? b`
448
+ <div class="header">
449
+ <h1>
450
+ <svg
451
+ class="download-icon"
452
+ viewBox="0 0 24 24"
453
+ fill="currentColor"
454
+ >
455
+ <path
456
+ d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z"
457
+ />
458
+ </svg>
459
+ ${title}
460
+ </h1>
461
+
462
+ ${showMinimizeButton ? b`<button
463
+ class="minimize-btn"
464
+ @click=${() => this.minimizeDialog()}
465
+ >
466
+ -
467
+ </button>` : A}
468
+ </div>
469
+ ` : A}
470
+ ${!this.isHistoryView && ((_e = (_d = this.collectionWithServices) == null ? void 0 : _d.services) == null ? void 0 : _e.length) ? b`
471
+ <div class="section">
472
+ ${__privateMethod(this, _renderDataAccessModeSelection, renderDataAccessModeSelection_fn).call(this)}
473
+ </div>
474
+ ` : A}
475
+ ${this.dataAccessMode === "original" ? b`
476
+ <div class="section">
477
+ <terra-data-access
478
+ short-name=${(_h = this.shortName) != null ? _h : (_g = (_f = this.collectionWithServices) == null ? void 0 : _f.collection) == null ? void 0 : _g.ShortName}
479
+ version=${(_k = this.version) != null ? _k : (_j = (_i = this.collectionWithServices) == null ? void 0 : _i.collection) == null ? void 0 : _j.Version}
480
+ ?footer-slot=${!!this.dialog}
481
+ >
482
+ ${this.dialog ? b`
483
+ <div
484
+ slot="footer"
485
+ style="margin-top: 15px;"
486
+ >
487
+ <slot
488
+ name="data-access-footer"
489
+ ></slot>
490
+ </div>
491
+ ` : A}
492
+ </terra-data-access>
493
+ </div>
494
+ ` : showJobStatus ? __privateMethod(this, _renderJobStatus, renderJobStatus_fn).call(this) : __privateMethod(this, _renderSubsetOptions, renderSubsetOptions_fn).call(this)}
495
+ </div>
496
+ `;
497
+ if (this.dialog) {
498
+ return b`
499
+ <terra-dialog id=${this.dialog} style="--title-font-size: 16px;">
500
+ <span
501
+ slot="label"
502
+ style="display: flex; align-items: center; gap: 8px; color: var(--terra-text-brand-on-secondary, #1c67e3); font-weight: 600;"
503
+ >
504
+ <svg
505
+ class="download-icon"
506
+ viewBox="0 0 24 24"
507
+ fill="currentColor"
508
+ style="width: 16px; height: 16px; display: inline-block; vertical-align: middle; flex-shrink: 0;"
509
+ >
510
+ <path d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z" />
511
+ </svg>
512
+ ${title}
513
+ </span>
514
+ ${showMinimizeButton ? b`
515
+ <button
516
+ slot="header-actions"
517
+ class="minimize-btn"
518
+ @click=${() => {
519
+ var _a2;
520
+ return (_a2 = this.dialogElement) == null ? void 0 : _a2.hide();
521
+ }}
522
+ aria-label="Minimize"
523
+ >
524
+ -
525
+ </button>
526
+ ` : A}
527
+ <slot name="dialog-header-content"></slot>
528
+ ${content} ${__privateMethod(this, _renderFooterForDialog, renderFooterForDialog_fn).call(this)}
529
+ </terra-dialog>
530
+ `;
531
+ }
532
+ return b`
533
+ <div class="container">
534
+ <div class="header">
535
+ <h1>
536
+ <svg
537
+ class="download-icon"
538
+ viewBox="0 0 24 24"
539
+ fill="currentColor"
540
+ >
541
+ <path d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z" />
542
+ </svg>
543
+ ${title}
544
+ </h1>
545
+
546
+ ${showMinimizeButton ? b`<button
547
+ class="minimize-btn"
548
+ @click=${() => this.minimizeDialog()}
549
+ >
550
+ -
551
+ </button>` : A}
552
+ </div>
553
+ ${!this.isHistoryView && ((_m = (_l = this.collectionWithServices) == null ? void 0 : _l.services) == null ? void 0 : _m.length) ? b`
554
+ <div class="section">
555
+ ${__privateMethod(this, _renderDataAccessModeSelection, renderDataAccessModeSelection_fn).call(this)}
556
+ </div>
557
+ ` : A}
558
+ ${this.dataAccessMode === "original" ? b`
559
+ <div class="section">
560
+ <terra-data-access
561
+ short-name=${(_p = this.shortName) != null ? _p : (_o = (_n = this.collectionWithServices) == null ? void 0 : _n.collection) == null ? void 0 : _o.ShortName}
562
+ version=${(_s = this.version) != null ? _s : (_r = (_q = this.collectionWithServices) == null ? void 0 : _q.collection) == null ? void 0 : _r.Version}
563
+ ?footer-slot=${!!this.dialog}
564
+ >
565
+ ${this.dialog ? b`
566
+ <div
567
+ slot="footer"
568
+ style="margin-top: 15px;"
569
+ >
570
+ <slot
571
+ name="data-access-footer"
572
+ ></slot>
573
+ </div>
574
+ ` : A}
575
+ </terra-data-access>
576
+ </div>
577
+ ` : showJobStatus ? __privateMethod(this, _renderJobStatus, renderJobStatus_fn).call(this) : __privateMethod(this, _renderSubsetOptions, renderSubsetOptions_fn).call(this)}
578
+ </div>
579
+ `;
580
+ }
581
+ minimizeDialog() {
582
+ var _a;
583
+ (_a = this.closest("terra-dialog")) == null ? void 0 : _a.hide();
584
+ }
585
+ handleCollectionSearch(searchTerm) {
586
+ this.collectionSearchQuery = searchTerm;
587
+ }
588
+ renderHistoryPanel() {
589
+ const existingHistoryPanel = document.querySelector(
590
+ "terra-data-subsetter-history"
591
+ );
592
+ if (!existingHistoryPanel && this.bearerToken) {
593
+ const historyPanel = document.createElement(
594
+ "terra-data-subsetter-history"
595
+ );
596
+ if (this.bearerToken) {
597
+ historyPanel.setAttribute("bearer-token", this.bearerToken);
598
+ }
599
+ if (this.environment) {
600
+ historyPanel.setAttribute("environment", this.environment);
601
+ }
602
+ document.body.appendChild(historyPanel);
603
+ }
604
+ }
605
+ };
606
+ _collectionController = new WeakMap();
607
+ _authController = new WeakMap();
608
+ _harmonyRequestController = new WeakMap();
609
+ _renderFooterForDialog = new WeakSet();
610
+ renderFooterForDialog_fn = function() {
611
+ const showJobStatus = (__privateGet(this, _harmonyRequestController).jobId || this.harmonyRequestError) && !this.refineParameters;
612
+ if (showJobStatus) {
613
+ if (!__privateGet(this, _harmonyRequestController).jobId) {
614
+ return A;
615
+ }
616
+ return b`
617
+ <div slot="footer" class="footer">
618
+ ${__privateGet(this, _harmonyRequestController).status === "successful" /* SUCCESSFUL */ || __privateGet(this, _harmonyRequestController).status === "complete_with_errors" /* COMPLETE_WITH_ERRORS */ ? b`
619
+ <div
620
+ style="display: flex; align-items: center; gap: 8px;"
621
+ >
622
+ <terra-dropdown
623
+ @terra-select=${__privateMethod(this, _handleDownloadSelect, handleDownloadSelect_fn)}
624
+ >
625
+ <terra-button slot="trigger" caret>
626
+ Download Options
627
+ </terra-button>
628
+ <terra-menu>
629
+ <terra-menu-item value="file-list">
630
+ <svg
631
+ slot="prefix"
632
+ viewBox="0 0 24 24"
633
+ width="16"
634
+ height="16"
635
+ style="width: 16px; height: 16px;"
636
+ >
637
+ <path
638
+ fill="currentColor"
639
+ 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"
640
+ />
641
+ </svg>
642
+ File List
643
+ </terra-menu-item>
644
+ <terra-menu-item value="python-script">
645
+ <svg
646
+ slot="prefix"
647
+ viewBox="0 0 128 128"
648
+ width="16"
649
+ height="16"
650
+ style="width: 16px; height: 16px;"
651
+ >
652
+ <path
653
+ fill="currentColor"
654
+ 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"
655
+ ></path>
656
+ </svg>
657
+ Python Script
658
+ </terra-menu-item>
659
+ <terra-menu-item value="earthdata-download">
660
+ <svg
661
+ slot="prefix"
662
+ viewBox="0 0 64 64"
663
+ fill="none"
664
+ width="16"
665
+ height="16"
666
+ style="width: 16px; height: 16px;"
667
+ >
668
+ <circle
669
+ cx="32"
670
+ cy="32"
671
+ r="28"
672
+ fill="currentColor"
673
+ />
674
+ <path
675
+ d="M32 14v26M32 40l-9-9M32 40l9-9"
676
+ stroke="#fff"
677
+ stroke-width="4"
678
+ stroke-linecap="round"
679
+ stroke-linejoin="round"
680
+ fill="none"
681
+ />
682
+ </svg>
683
+ Earthdata Download
684
+ </terra-menu-item>
685
+ </terra-menu>
686
+ </terra-dropdown>
687
+
688
+ <!--
689
+ <terra-button
690
+ outline
691
+ @click=${() => __privateMethod(this, _handleJupyterNotebookClick, handleJupyterNotebookClick_fn).call(this)}
692
+ >
693
+ <terra-icon
694
+ name="outline-code-bracket"
695
+ library="heroicons"
696
+ font-size="1.5em"
697
+ style="margin-right: 5px;"
698
+ ></terra-icon>
699
+ Open in Jupyter Notebook
700
+ </terra-button>
701
+ -->
702
+ </div>
703
+ ` : A}
704
+ ${__privateGet(this, _harmonyRequestController).status === "running" /* RUNNING */ ? b`<button
705
+ class="btn btn-success"
706
+ @click=${__privateMethod(this, _cancelJob, cancelJob_fn)}
707
+ ?disabled=${this.cancelingGetData}
708
+ >
709
+ ${this.cancelingGetData ? "Canceling..." : "Cancel request"}
710
+ </button>` : A}
711
+
712
+ <div class="job-info">
713
+ Job ID:
714
+ <span class="job-id">
715
+ ${this.bearerToken ? b`<a
716
+ href="https://harmony.earthdata.nasa.gov/jobs/${__privateGet(this, _harmonyRequestController).jobId}"
717
+ target="_blank"
718
+ >${__privateGet(this, _harmonyRequestController).jobId}</a
719
+ >` : __privateGet(this, _harmonyRequestController).jobId}
720
+ </span>
721
+ <span class="info-icon">?</span>
722
+ </div>
723
+ </div>
724
+ `;
725
+ }
726
+ if (this.dataAccessMode === "subset") {
727
+ return b`
728
+ <div slot="footer" class="footer">
729
+ <button
730
+ class="btn btn-secondary"
731
+ @click=${__privateGet(this, _resetAllParameters)}
732
+ >
733
+ Reset All
734
+ </button>
735
+ <div>
736
+ <button class="btn btn-primary" @click=${__privateMethod(this, _getData, getData_fn)}>
737
+ Get Data
738
+ </button>
739
+ ${this.jobId ? b`
740
+ <terra-button
741
+ variant="default"
742
+ @click=${__privateMethod(this, _viewRunningJob, viewRunningJob_fn)}
743
+ >
744
+ View Running Job
745
+ </terra-button>
746
+ ` : A}
747
+ </div>
748
+ </div>
749
+ `;
750
+ }
751
+ return A;
752
+ };
753
+ _renderSizeInfo = new WeakSet();
754
+ renderSizeInfo_fn = function(estimates) {
755
+ if (!__privateGet(this, _authController).state.isLoading && !__privateGet(this, _authController).state.user) {
756
+ return b`
757
+ <div class="size-info warning">
758
+ <terra-login>
759
+ <h2 slot="logged-out">Limited access as a guest.</h2>
760
+
761
+ <p slot="logged-out">
762
+ Your results will be capped at 10 links. Log in for full
763
+ access to all data.
764
+ </p>
765
+ </terra-login>
766
+ </div>
767
+ `;
768
+ }
769
+ return b`<div
770
+ class="size-info ${estimates.links >= 150 ? "warning" : "neutral"}"
771
+ >
772
+ <h2>Estimated size of results</h2>
773
+ <div class="size-stats">
774
+ ${estimates.days.toLocaleString()} days,
775
+ ${estimates.links.toLocaleString()} links
776
+ </div>
777
+ ${estimates.links >= 150 ? b`<div class="size-warning">
778
+ You are about to retrieve ${estimates.links.toLocaleString()}
779
+ file links from the archive. You may
780
+ <strong>speed up the request</strong> by limiting the scope of
781
+ your search.
782
+ </div>` : A}
783
+ </div>`;
784
+ };
785
+ _renderSubsetOptions = new WeakSet();
786
+ renderSubsetOptions_fn = function() {
787
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i;
788
+ const estimates = __privateMethod(this, _estimateJobSize, estimateJobSize_fn).call(this);
789
+ const hasSubsetOption = __privateMethod(this, _hasAtLeastOneSubsetOption, hasAtLeastOneSubsetOption_fn).call(this);
790
+ const collection = (_a = this.collectionWithServices) == null ? void 0 : _a.collection;
791
+ const temporalExtents = collection == null ? void 0 : collection.TemporalExtents;
792
+ const spatialExtent = collection == null ? void 0 : collection.SpatialExtent;
793
+ const showTemporalSection = temporalExtents == null ? void 0 : temporalExtents.length;
794
+ const showSpatialSection = (_c = (_b = spatialExtent == null ? void 0 : spatialExtent.HorizontalSpatialDomain) == null ? void 0 : _b.Geometry) == null ? void 0 : _c.BoundingRectangles;
795
+ return b`
796
+ ${this.dataAccessMode === "original" ? A : hasSubsetOption ? b`
797
+ ${hasSubsetOption && estimates ? __privateMethod(this, _renderSizeInfo, renderSizeInfo_fn).call(this, estimates) : A}
798
+ ${this.showCollectionSearch ? b`
799
+ <div class="section">
800
+ <h2 class="section-title">
801
+ Select Data Collection
802
+ </h2>
803
+
804
+ ${__privateMethod(this, _renderSearchForCollection, renderSearchForCollection_fn).call(this)}
805
+ </div>
806
+ ` : A}
807
+ ${((_e = (_d = this.collectionWithServices) == null ? void 0 : _d.summary.outputFormats) == null ? void 0 : _e.length) && hasSubsetOption ? b`
808
+ <div class="section">
809
+ <h2 class="section-title">Output Format</h2>
810
+
811
+ ${__privateMethod(this, _renderOutputFormatSelection, renderOutputFormatSelection_fn).call(this)}
812
+ </div>
813
+ ` : A}
814
+ <div class="section">
815
+ <h2 class="section-title">Subset Options</h2>
816
+ <p style="color: #666; margin-bottom: 16px;">
817
+ Generate file links that support spatial subsetting,
818
+ date/time range selection, and variable selection.
819
+ </p>
820
+
821
+ ${((_f = this.collectionWithServices) == null ? void 0 : _f.summary.subsetting.temporal) ? __privateMethod(this, _renderDateRangeSelection, renderDateRangeSelection_fn).call(this) : A}
822
+ ${__privateMethod(this, _hasSpatialSubset, hasSpatialSubset_fn).call(this) ? __privateMethod(this, _renderSpatialSelection, renderSpatialSelection_fn).call(this) : A}
823
+ ${((_g = this.collectionWithServices) == null ? void 0 : _g.summary.subsetting.variable) ? __privateMethod(this, _renderVariableSelection, renderVariableSelection_fn).call(this) : A}
824
+ ${((_h = this.collectionWithServices) == null ? void 0 : _h.summary.subsetting.variable) && isFeatureEnabled(
825
+ KnownFeatureFlags.DIMENSION_SUBSET,
826
+ this.features
827
+ ) ? __privateMethod(this, _renderDimensionSelection, renderDimensionSelection_fn).call(this) : A}
828
+ </div>
829
+ ` : b`
830
+ ${showTemporalSection && !((_i = this.collectionWithServices) == null ? void 0 : _i.summary.subsetting.temporal) ? __privateMethod(this, _renderAvailableTemporalRangeSection, renderAvailableTemporalRangeSection_fn).call(this) : A}
831
+ ${showSpatialSection && !__privateMethod(this, _hasSpatialSubset, hasSpatialSubset_fn).call(this) ? __privateMethod(this, _renderAvailableSpatialRangeSection, renderAvailableSpatialRangeSection_fn).call(this) : A}
832
+ `}
833
+ ${!hasSubsetOption && estimates ? b`
834
+ <div
835
+ class="neutral-info"
836
+ style="margin-top: 24px; padding: 16px 20px; border-radius: 6px; background: #f8f9fa; color: #555; border: 1px solid #ccc;"
837
+ >
838
+ <strong>Estimated result size:</strong><br />
839
+ Your request will return approximately
840
+ <b>${estimates.links.toLocaleString()}</b> files covering
841
+ <b>${estimates.days.toLocaleString()}</b> days.
842
+ </div>
843
+ ` : A}
844
+ ${this.dataAccessMode === "subset" && !this.dialog ? b`
845
+ <div class="footer">
846
+ <button
847
+ class="btn btn-secondary"
848
+ @click=${__privateGet(this, _resetAllParameters)}
849
+ >
850
+ Reset All
851
+ </button>
852
+ <div>
853
+ <button class="btn btn-primary" @click=${__privateMethod(this, _getData, getData_fn)}>
854
+ Get Data
855
+ </button>
856
+ ${this.jobId ? b`
857
+ <terra-button
858
+ variant="default"
859
+ @click=${__privateMethod(this, _viewRunningJob, viewRunningJob_fn)}
860
+ >
861
+ View Running Job
862
+ </terra-button>
863
+ ` : A}
864
+ </div>
865
+ </div>
866
+ ` : A}
867
+ `;
868
+ };
869
+ _resetAllParameters = new WeakMap();
870
+ _renderSearchForCollection = new WeakSet();
871
+ renderSearchForCollection_fn = function() {
872
+ var _a, _b;
873
+ let placeholder = "Search all types of resources (e.g. rainfall, GPM, hurricanes, etc.)";
874
+ if (this.collectionSearchType === "collection") {
875
+ placeholder = "Search collections (e.g. AQUA, GPM_3IMERGH, etc.)";
876
+ }
877
+ if (this.collectionSearchType === "variable") {
878
+ placeholder = "Search variables (e.g. rainfall, hurricanes, etc.)";
879
+ }
880
+ return b`
881
+ <terra-accordion .open=${this.collectionAccordionOpen}>
882
+ <div slot="summary">
883
+ <span class="accordion-title">Collection:</span>
884
+ </div>
885
+
886
+ <div
887
+ slot="summary-right"
888
+ style="display: flex; align-items: center; gap: 10px"
889
+ >
890
+ ${this.collectionEntryId ? b` <span
891
+ class="accordion-value"
892
+ id="selected-collection-display"
893
+ >${this.collectionEntryId}</span
894
+ >
895
+
896
+ <button
897
+ class="reset-btn"
898
+ @click=${() => this.collectionEntryId = void 0}
899
+ >
900
+ Reset
901
+ </button>` : A}
902
+ </div>
903
+
904
+ <div class="search-tabs-mini">
905
+ <button
906
+ class="search-tab-mini ${this.collectionSearchType === "all" ? "active" : ""}"
907
+ @click=${() => this.collectionSearchType = "all"}
908
+ >
909
+ All
910
+ </button>
911
+ <button
912
+ class="search-tab-mini ${this.collectionSearchType === "collection" ? "active" : ""}"
913
+ @click=${() => this.collectionSearchType = "collection"}
914
+ >
915
+ Collections
916
+ </button>
917
+ <button
918
+ class="search-tab-mini ${this.collectionSearchType === "variable" ? "active" : ""}"
919
+ @click=${() => this.collectionSearchType = "variable"}
920
+ >
921
+ Variables
922
+ </button>
923
+ </div>
924
+
925
+ <div class="search-container-mini">
926
+ <input
927
+ type="text"
928
+ class="search-input-mini"
929
+ id="search-input"
930
+ placeholder=${placeholder}
931
+ @input="${(e2) => this.handleCollectionSearch(
932
+ e2.target.value
933
+ )}"
934
+ />
935
+
936
+ <button class="search-button-mini">
937
+ <svg
938
+ class="search-icon-mini"
939
+ viewBox="0 0 24 24"
940
+ fill="currentColor"
941
+ >
942
+ <path
943
+ 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"
944
+ />
945
+ </svg>
946
+ Search
947
+ </button>
948
+ </div>
949
+
950
+ <!-- TODO: it may be nice to have a quick search, perhaps by recent trends?
951
+ <div class="quick-links-mini">
952
+ <a href="#" class="quick-link-mini" onclick="quickSearch('GPM')"
953
+ >GPM Precipitation</a
954
+ >
955
+ <a href="#" class="quick-link-mini" onclick="quickSearch('MODIS')"
956
+ >MODIS Data</a
957
+ >
958
+ <a
959
+ href="#"
960
+ class="quick-link-mini"
961
+ onclick="quickSearch('Landsat')"
962
+ >Landsat Imagery</a
963
+ >
964
+ <a href="#" class="quick-link-mini" onclick="quickSearch('AIRS')"
965
+ >Atmospheric Data</a
966
+ >
967
+ </div>
968
+ -->
969
+
970
+ <div id="search-results-section" class="search-results-section">
971
+ ${this.collectionSearchLoading ? b`
972
+ <div id="loading-mini" class="loading-mini">
973
+ <div class="spinner-mini"></div>
974
+ <div>Searching NASA CMR...</div>
975
+ </div>
976
+ ` : ((_a = this.collectionSearchResults) == null ? void 0 : _a.length) ? b` <div
977
+ id="results-container-mini"
978
+ class="results-container-mini"
979
+ >
980
+ ${(_b = this.collectionSearchResults) == null ? void 0 : _b.map(
981
+ (item) => b`
982
+ <div
983
+ class="result-item-mini"
984
+ @click=${() => {
985
+ this.collectionEntryId = item.collectionEntryId;
986
+ this.collectionAccordionOpen = false;
987
+ this.collectionLoading = true;
988
+ if (item.type === "variable") {
989
+ this.selectedVariables = [
990
+ {
991
+ name: item.entryId,
992
+ href: "",
993
+ conceptId: item.conceptId
994
+ }
995
+ ];
996
+ }
997
+ this.requestUpdate();
998
+ }}
999
+ style="cursor: pointer;"
1000
+ >
1001
+ <div class="result-title-mini">
1002
+ ${item.title}
1003
+ </div>
1004
+ <div class="result-id-mini">
1005
+ ${item.entryId}
1006
+ </div>
1007
+ <div class="result-description-mini">
1008
+ ${item.summary || item.title}
1009
+ </div>
1010
+ <div class="result-meta-mini">
1011
+ <span>📅 2000-02-24 - ongoing</span>
1012
+ <span>🌍 Global</span>
1013
+ <span>🏢 ${item.provider}</span>
1014
+ ${item.type === "variable" ? b` <span
1015
+ >📊
1016
+ ${item.collectionEntryId}</span
1017
+ >` : A}
1018
+ <span class="tag-mini"
1019
+ >${item.type.toUpperCase()}</span
1020
+ >
1021
+ </div>
1022
+ </div>
1023
+ `
1024
+ )}
1025
+ </div>` : this.collectionSearchResults && this.collectionSearchResults.length === 0 ? b`<div id="no-results-mini" class="no-results-mini">
1026
+ <p>
1027
+ No results found for
1028
+ '${this.collectionSearchQuery}'. Try adjusting
1029
+ your search term.
1030
+ </p>
1031
+ </div>` : A}
1032
+ </div>
1033
+ </terra-accordion>
1034
+
1035
+ ${this.collectionLoading ? b`
1036
+ <div
1037
+ class="collection-loading-bar"
1038
+ style="display: flex; align-items: center; gap: 10px; margin: 16px 0;"
1039
+ >
1040
+ <span
1041
+ class="loading-spinner"
1042
+ 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;"
1043
+ ></span>
1044
+ Retrieving collection, please wait...
1045
+ </div>
1046
+ <style>
1047
+ @keyframes spin {
1048
+ 0% {
1049
+ transform: rotate(0deg);
1050
+ }
1051
+ 100% {
1052
+ transform: rotate(360deg);
1053
+ }
1054
+ }
1055
+ </style>
1056
+ ` : A}
1057
+ `;
1058
+ };
1059
+ _renderOutputFormatSelection = new WeakSet();
1060
+ renderOutputFormatSelection_fn = function() {
1061
+ return b`
1062
+ <terra-accordion>
1063
+ <div slot="summary">
1064
+ <span class="accordion-title">File Format:</span>
1065
+ </div>
1066
+
1067
+ <div
1068
+ slot="summary-right"
1069
+ style="display: flex; align-items: center; gap: 10px;"
1070
+ >
1071
+ <span>${this.selectedFormat.label}</span>
1072
+
1073
+ <button class="reset-btn" @click=${__privateGet(this, _resetFormatSelection)}>
1074
+ Reset
1075
+ </button>
1076
+ </div>
1077
+
1078
+ <div class="accordion-content" style="margin-top: 12px;">
1079
+ ${(() => {
1080
+ var _a;
1081
+ return (((_a = this.collectionWithServices) == null ? void 0 : _a.configuredOutputFormats) || []).map(
1082
+ (format) => b`
1083
+ <label
1084
+ style="display: flex; align-items: center; gap: 8px; padding: 5px;"
1085
+ >
1086
+ <input
1087
+ type="radio"
1088
+ name="output-format"
1089
+ value="${format}"
1090
+ .checked=${this.selectedFormat === format}
1091
+ @change=${() => this.selectedFormat = format}
1092
+ />
1093
+ ${format.label}
1094
+ </label>
1095
+ `
1096
+ );
1097
+ })()}
1098
+ </div>
1099
+ </terra-accordion>
1100
+ `;
1101
+ };
1102
+ _renderDateRangeSelection = new WeakSet();
1103
+ renderDateRangeSelection_fn = function() {
1104
+ var _a, _b, _c, _d, _e, _f, _g, _h;
1105
+ const { startDate: defaultStartDate, endDate: defaultEndDate } = __privateMethod(this, _getCollectionDateRange, getCollectionDateRange_fn).call(this);
1106
+ const startDate = (_b = (_a = this.selectedDateRange.startDate) != null ? _a : this.granuleMinDate) != null ? _b : defaultStartDate;
1107
+ const endDate = (_d = (_c = this.selectedDateRange.endDate) != null ? _c : this.granuleMaxDate) != null ? _d : defaultEndDate;
1108
+ const showError = this.touchedFields.has("date") && (!this.selectedDateRange.startDate || !this.selectedDateRange.endDate);
1109
+ return b`
1110
+ <terra-accordion>
1111
+ <div slot="summary">
1112
+ <span class="accordion-title">Refine Date Range:</span>
1113
+ </div>
1114
+
1115
+ <div
1116
+ slot="summary-right"
1117
+ style="display: flex; align-items: center; gap: 10px;"
1118
+ >
1119
+ ${showError ? b`<span class="accordion-value error"
1120
+ >Please select a date range</span
1121
+ >` : this.touchedFields.has("date") && startDate && endDate ? b`<span class="accordion-value"
1122
+ >${startDate} to ${endDate}</span
1123
+ >` : A}
1124
+ <button class="reset-btn" @click=${__privateGet(this, _resetDateRangeSelection)}>
1125
+ Reset
1126
+ </button>
1127
+ </div>
1128
+
1129
+ <div style="width: 300px">
1130
+ <terra-date-picker
1131
+ allow-input
1132
+ inline
1133
+ range
1134
+ split-inputs
1135
+ show-presets
1136
+ ?enable-time=${this.isSubDaily}
1137
+ start-label="Start Date"
1138
+ end-label="End Date"
1139
+ .minDate=${(_e = this.granuleMinDate) != null ? _e : defaultStartDate}
1140
+ .maxDate=${(_f = this.granuleMaxDate) != null ? _f : defaultEndDate}
1141
+ .startDate=${(_g = this.selectedDateRange.startDate) != null ? _g : this.granuleMinDate}
1142
+ .endDate=${(_h = this.selectedDateRange.endDate) != null ? _h : this.granuleMaxDate}
1143
+ .useEndOfDay=${!this.selectedFormat.isGiovanniFormat}
1144
+ @terra-date-range-change=${__privateGet(this, _handleDateChange)}
1145
+ ></terra-date-picker>
1146
+ </div>
1147
+
1148
+ <div style="display: flex; gap: 16px; margin-top: 15px;">
1149
+ <span
1150
+ ><strong>Available Range:</strong> ${defaultStartDate} to
1151
+ ${defaultEndDate}</span
1152
+ >
1153
+ ${this.isSubDaily ? b`<span
1154
+ ><strong>Note:</strong> All dates and times are in
1155
+ UTC.</span
1156
+ >` : A}
1157
+ </div>
1158
+ </terra-accordion>
1159
+ `;
1160
+ };
1161
+ _handleDateChange = new WeakMap();
1162
+ _resetDateRangeSelection = new WeakMap();
1163
+ _resetFormatSelection = new WeakMap();
1164
+ _getCollectionDateRange = new WeakSet();
1165
+ getCollectionDateRange_fn = function() {
1166
+ var _a, _b;
1167
+ const samplingMinDate = this.granuleMinDate;
1168
+ const samplingMaxDate = this.granuleMaxDate;
1169
+ if (samplingMinDate && samplingMaxDate) {
1170
+ return {
1171
+ startDate: samplingMinDate.slice(0, 10),
1172
+ endDate: samplingMaxDate.slice(0, 10)
1173
+ };
1174
+ }
1175
+ const temporalExtents = (_b = (_a = this.collectionWithServices) == null ? void 0 : _a.collection) == null ? void 0 : _b.TemporalExtents;
1176
+ if (!(temporalExtents == null ? void 0 : temporalExtents.length))
1177
+ return {
1178
+ startDate: null,
1179
+ endDate: null
1180
+ };
1181
+ let minStart = null;
1182
+ let maxEnd = null;
1183
+ const today = /* @__PURE__ */ new Date();
1184
+ for (const temporal of temporalExtents) {
1185
+ for (const range of temporal.RangeDateTimes || []) {
1186
+ const start = new Date(range.BeginningDateTime);
1187
+ let end;
1188
+ if (temporal.EndsAtPresentFlag || !range.EndingDateTime) {
1189
+ end = today;
1190
+ } else {
1191
+ end = new Date(range.EndingDateTime);
1192
+ }
1193
+ if (!minStart || start < minStart)
1194
+ minStart = start;
1195
+ if (!maxEnd || end > maxEnd)
1196
+ maxEnd = end;
1197
+ }
1198
+ }
1199
+ return {
1200
+ startDate: minStart ? minStart.toISOString().slice(0, 10) : null,
1201
+ endDate: maxEnd ? maxEnd.toISOString().slice(0, 10) : null
1202
+ };
1203
+ };
1204
+ _renderSpatialSelection = new WeakSet();
1205
+ renderSpatialSelection_fn = function() {
1206
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m;
1207
+ const showError = this.touchedFields.has("spatial") && !this.spatialSelection && !this.shapeGeoJson;
1208
+ const spatialString = (_c = (_b = this.spatialLabel) != null ? _b : (_a = this.spatialSelection) == null ? void 0 : _a.toString()) != null ? _c : void 0;
1209
+ const spatialInitialValue = (_e = (_d = this.spatialSelection) == null ? void 0 : _d.toString()) != null ? _e : void 0;
1210
+ return b`
1211
+ <terra-accordion>
1212
+ <div slot="summary">
1213
+ <span class="accordion-title">Refine Region:</span>
1214
+ </div>
1215
+
1216
+ <div
1217
+ slot="summary-right"
1218
+ style="display: flex; align-items: center; gap: 10px;"
1219
+ >
1220
+ ${showError ? b`<span class="accordion-value error"
1221
+ >Please select a region</span
1222
+ >` : spatialString ? b`<span class="accordion-value"
1223
+ >${spatialString}</span
1224
+ >` : A}
1225
+ <button class="reset-btn" @click=${__privateGet(this, _resetSpatialSelection)}>
1226
+ Reset
1227
+ </button>
1228
+ </div>
1229
+ <div class="accordion-content">
1230
+ <terra-spatial-picker
1231
+ part="spatial-picker"
1232
+ inline
1233
+ hide-label
1234
+ .spatialConstraints=${__privateGet(this, _collectionController).spatialConstraints || "-180, -90, 180, 90"}
1235
+ .initialValue=${spatialInitialValue}
1236
+ ?has-shape-selector=${(_i = (_h = (_g = (_f = this.collectionWithServices) == null ? void 0 : _f.summary) == null ? void 0 : _g.subsetting) == null ? void 0 : _h.shape) != null ? _i : false}
1237
+ ?show-polygon-selection=${(_m = (_l = (_k = (_j = this.collectionWithServices) == null ? void 0 : _j.summary) == null ? void 0 : _k.subsetting) == null ? void 0 : _l.shape) != null ? _m : false}
1238
+ @terra-map-change=${__privateGet(this, _handleSpatialChange)}
1239
+ ></terra-spatial-picker>
1240
+ <div
1241
+ style="display: flex; gap: 16px; margin-top: 15px; color: #31708f;"
1242
+ >
1243
+ <span
1244
+ ><strong>Available Range:</strong> ${__privateGet(this, _collectionController).spatialConstraints}</span
1245
+ >
1246
+ </div>
1247
+ </div>
1248
+ </terra-accordion>
1249
+ `;
1250
+ };
1251
+ _handleSpatialChange = new WeakMap();
1252
+ _resetSpatialSelection = new WeakMap();
1253
+ _renderVariableSelection = new WeakSet();
1254
+ renderVariableSelection_fn = function() {
1255
+ var _a;
1256
+ const variables = ((_a = this.collectionWithServices) == null ? void 0 : _a.variables) || [];
1257
+ const giovanniError = this.touchedFields.has("variables") && __privateMethod(this, _getGiovanniValidationError, getGiovanniValidationError_fn).call(this);
1258
+ const basicError = this.touchedFields.has("variables") && this.selectedVariables.length === 0;
1259
+ const showError = giovanniError || basicError;
1260
+ const errorMessage = giovanniError || (basicError ? "Please select at least one variable" : "");
1261
+ const tree = __privateMethod(this, _buildVariableTree, buildVariableTree_fn).call(this, variables);
1262
+ const allGroups = __privateMethod(this, _getAllGroupPaths, getAllGroupPaths_fn).call(this, tree);
1263
+ const allExpanded = allGroups.length > 0 && allGroups.every((g) => this.expandedVariableGroups.has(g));
1264
+ return b`
1265
+ <terra-accordion>
1266
+ <div slot="summary">
1267
+ <span class="accordion-title">Select Variables:</span>
1268
+ </div>
1269
+ <div
1270
+ slot="summary-right"
1271
+ style="display: flex; align-items: center; gap: 10px;"
1272
+ >
1273
+ ${showError ? b`<span class="accordion-value error"
1274
+ >${errorMessage}</span
1275
+ >` : this.selectedVariables.length ? b`<span class="accordion-value"
1276
+ >${this.selectedVariables.length} selected</span
1277
+ >` : A}
1278
+
1279
+ <button class="reset-btn" @click=${__privateGet(this, _resetVariableSelection)}>
1280
+ Reset
1281
+ </button>
1282
+ </div>
1283
+ <div class="accordion-content">
1284
+ <terra-input
1285
+ label="Filter variables"
1286
+ placeholder="Search by variable name..."
1287
+ .value=${this.variableFilterText}
1288
+ @input=${(e2) => {
1289
+ const input = e2.target;
1290
+ this.variableFilterText = input.value;
1291
+ __privateMethod(this, _handleVariableFilterChange, handleVariableFilterChange_fn).call(this);
1292
+ }}
1293
+ style="margin-bottom: 10px;"
1294
+ ></terra-input>
1295
+ <button
1296
+ class="reset-btn"
1297
+ style="margin-bottom: 10px;"
1298
+ @click=${() => __privateMethod(this, _toggleExpandCollapseAll, toggleExpandCollapseAll_fn).call(this, tree)}
1299
+ >
1300
+ ${allExpanded ? "Collapse Tree" : "Expand Tree"}
1301
+ </button>
1302
+
1303
+ ${this.selectedFormat.isGiovanniFormat && this.giovanniConfiguredVariables ? b`
1304
+ <terra-alert
1305
+ open
1306
+ appearance="white"
1307
+ style="margin: 10px 0"
1308
+ >
1309
+ <terra-icon
1310
+ slot="icon"
1311
+ name="outline-information-circle"
1312
+ library="heroicons"
1313
+ ></terra-icon>
1314
+ Only certain variables are supported for the
1315
+ selected output format. (Giovanni service)
1316
+ </terra-alert>
1317
+ ` : A}
1318
+ ${variables.length === 0 ? b`<p style="color: #666; font-style: italic;">
1319
+ No variables available for this collection.
1320
+ </p>` : __privateMethod(this, _renderVariableTree, renderVariableTree_fn).call(this, __privateMethod(this, _filterVariableTree, filterVariableTree_fn).call(this, tree), [])}
1321
+ </div>
1322
+ </terra-accordion>
1323
+ `;
1324
+ };
1325
+ _renderDimensionGroup = new WeakSet();
1326
+ renderDimensionGroup_fn = function(dim) {
1327
+ var _a, _b, _c, _d, _e, _f;
1328
+ const currentValue = (_a = this.selectedDimensionIndexes[dim.name]) != null ? _a : 1;
1329
+ const dimensions = ((_f = (_e = (_d = (_c = (_b = __privateGet(this, _collectionController).gesDiscCollection) == null ? void 0 : _b.data) == null ? void 0 : _c.services) == null ? void 0 : _d.subset) == null ? void 0 : _e.find(
1330
+ (s) => s.dimensions && s.dimensions.length > 0
1331
+ )) == null ? void 0 : _f.dimensions) || [];
1332
+ return b`
1333
+ <div style="margin-bottom: 16px;">
1334
+ <div
1335
+ style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 6px;"
1336
+ >
1337
+ <span style="font-weight: 600; margin-bottom: 44px"
1338
+ >Dimension: ${dim.name}</span
1339
+ >
1340
+ </div>
1341
+ <terra-slider
1342
+ class="dimension-slider"
1343
+ mode="range"
1344
+ min="1"
1345
+ .max=${dim.size}
1346
+ step="1"
1347
+ .startValue=${currentValue.start}
1348
+ .endValue=${currentValue.end}
1349
+ has-tooltips
1350
+ show-inputs
1351
+ hide-label
1352
+ .formatTooltip=${dimensions.length > 0 ? (value) => {
1353
+ const found = dimensions.find(
1354
+ (d) => String(d.value) === String(value)
1355
+ );
1356
+ return found ? found.label : String(value);
1357
+ } : A}
1358
+ @terra-slider-change=${(event) => {
1359
+ if ("startValue" in event.detail) {
1360
+ const { startValue, endValue } = event.detail;
1361
+ __privateMethod(this, _setDimensionValue, setDimensionValue_fn).call(this, dim.name, startValue, endValue);
1362
+ }
1363
+ }}
1364
+ ></terra-slider>
1365
+ </div>
1366
+ `;
1367
+ };
1368
+ _setDimensionValue = new WeakSet();
1369
+ setDimensionValue_fn = function(dimName, startValue, endValue) {
1370
+ const dimensions = __privateMethod(this, _getCommonSelectableDimensions, getCommonSelectableDimensions_fn).call(this);
1371
+ const found = dimensions.find((d) => d.name === dimName);
1372
+ if (!found) {
1373
+ return;
1374
+ }
1375
+ const normalizedStartValue = Math.min(
1376
+ Math.max(Math.round(startValue), 1),
1377
+ found.size
1378
+ );
1379
+ const normalizedEndValue = Math.min(
1380
+ Math.max(Math.round(endValue != null ? endValue : startValue), 1),
1381
+ found.size
1382
+ );
1383
+ if (normalizedStartValue <= 1 && normalizedEndValue >= found.size) {
1384
+ delete this.selectedDimensionIndexes[dimName];
1385
+ return;
1386
+ }
1387
+ this.selectedDimensionIndexes = __spreadProps(__spreadValues({}, this.selectedDimensionIndexes), {
1388
+ [dimName]: { start: normalizedStartValue, end: normalizedEndValue }
1389
+ });
1390
+ };
1391
+ _renderDimensionSelection = new WeakSet();
1392
+ renderDimensionSelection_fn = function() {
1393
+ const dimensions = __privateMethod(this, _getCommonSelectableDimensions, getCommonSelectableDimensions_fn).call(this);
1394
+ if (!dimensions.length) {
1395
+ return A;
1396
+ }
1397
+ const selectedCount = Object.keys(this.selectedDimensionIndexes).length;
1398
+ return b`
1399
+ <terra-accordion>
1400
+ <div slot="summary">
1401
+ <span class="accordion-title">Select Dimensions:</span>
1402
+ </div>
1403
+ <div
1404
+ slot="summary-right"
1405
+ style="display: flex; align-items: center; gap: 10px;"
1406
+ >
1407
+ ${selectedCount ? b`<span class="accordion-value"
1408
+ >${selectedCount}
1409
+ dimension${selectedCount === 1 ? "" : "s"}
1410
+ selected</span
1411
+ >` : A}
1412
+ <button class="reset-btn" @click=${__privateMethod(this, _resetDimensionSelection, resetDimensionSelection_fn)}>
1413
+ Reset
1414
+ </button>
1415
+ </div>
1416
+ <div class="accordion-content">
1417
+ ${dimensions.map((dim) => __privateMethod(this, _renderDimensionGroup, renderDimensionGroup_fn).call(this, dim))}
1418
+ </div>
1419
+ </terra-accordion>
1420
+ `;
1421
+ };
1422
+ _filterVariableTree = new WeakSet();
1423
+ filterVariableTree_fn = function(tree) {
1424
+ if (!this.variableFilterText.trim()) {
1425
+ return tree;
1426
+ }
1427
+ const filterText = this.variableFilterText.toLowerCase().trim();
1428
+ const filterNode = (node) => {
1429
+ const result = {};
1430
+ for (const [key, value] of Object.entries(node)) {
1431
+ if (value.__isLeaf) {
1432
+ const variableName = value.__variable.name.toLowerCase();
1433
+ if (variableName.includes(filterText)) {
1434
+ result[key] = value;
1435
+ }
1436
+ } else {
1437
+ const filteredChildren = filterNode(value.__children);
1438
+ if (Object.keys(filteredChildren).length > 0 || key.toLowerCase().includes(filterText)) {
1439
+ result[key] = __spreadProps(__spreadValues({}, value), {
1440
+ __children: filteredChildren
1441
+ });
1442
+ }
1443
+ }
1444
+ }
1445
+ return result;
1446
+ };
1447
+ return filterNode(tree);
1448
+ };
1449
+ _handleVariableFilterChange = new WeakSet();
1450
+ handleVariableFilterChange_fn = function() {
1451
+ var _a;
1452
+ if (!this.variableFilterText.trim()) {
1453
+ return;
1454
+ }
1455
+ const variables = ((_a = this.collectionWithServices) == null ? void 0 : _a.variables) || [];
1456
+ const tree = __privateMethod(this, _buildVariableTree, buildVariableTree_fn).call(this, variables);
1457
+ const filterText = this.variableFilterText.toLowerCase().trim();
1458
+ const groupsToExpand = /* @__PURE__ */ new Set();
1459
+ const findMatchingGroups = (node, path = []) => {
1460
+ for (const [key, value] of Object.entries(node)) {
1461
+ if (value.__isLeaf) {
1462
+ const variableName = value.__variable.name.toLowerCase();
1463
+ if (variableName.includes(filterText)) {
1464
+ for (let i = 0; i < path.length; i++) {
1465
+ const groupPath = path.slice(0, i + 1).join("/");
1466
+ groupsToExpand.add(groupPath);
1467
+ }
1468
+ }
1469
+ } else {
1470
+ const groupPath = [...path, key].join("/");
1471
+ findMatchingGroups(value.__children, [...path, key]);
1472
+ if (key.toLowerCase().includes(filterText)) {
1473
+ groupsToExpand.add(groupPath);
1474
+ }
1475
+ }
1476
+ }
1477
+ };
1478
+ findMatchingGroups(tree);
1479
+ if (groupsToExpand.size > 0) {
1480
+ this.expandedVariableGroups = /* @__PURE__ */ new Set([
1481
+ ...this.expandedVariableGroups,
1482
+ ...groupsToExpand
1483
+ ]);
1484
+ }
1485
+ };
1486
+ _buildVariableTree = new WeakSet();
1487
+ buildVariableTree_fn = function(variables) {
1488
+ let filteredVariables = variables;
1489
+ if (this.selectedFormat.isGiovanniFormat && this.giovanniConfiguredVariables) {
1490
+ filteredVariables = variables.filter((v) => {
1491
+ var _a, _b, _c;
1492
+ const shortName = (_a = this.collectionWithServices) == null ? void 0 : _a.shortName;
1493
+ const version = (_c = (_b = this.collectionWithServices) == null ? void 0 : _b.collection) == null ? void 0 : _c.Version;
1494
+ if (!shortName || !version) {
1495
+ return false;
1496
+ }
1497
+ const giovanniVariableName = convertVariableEntryIdToGiovanniFormat(
1498
+ shortName,
1499
+ version,
1500
+ v.name
1501
+ );
1502
+ return this.giovanniConfiguredVariables.has(giovanniVariableName);
1503
+ });
1504
+ }
1505
+ const root = {};
1506
+ for (const v of filteredVariables) {
1507
+ const parts = v.name.split("/");
1508
+ let node = root;
1509
+ for (let i = 0; i < parts.length; i++) {
1510
+ const part = parts[i];
1511
+ if (!node[part])
1512
+ node[part] = { __children: {}, __isLeaf: false };
1513
+ if (i === parts.length - 1) {
1514
+ node[part].__isLeaf = true;
1515
+ node[part].__variable = v;
1516
+ }
1517
+ node = node[part].__children;
1518
+ }
1519
+ }
1520
+ return root;
1521
+ };
1522
+ _renderVariableTree = new WeakSet();
1523
+ renderVariableTree_fn = function(node, path) {
1524
+ const isGiovanni = this.selectedFormat.isGiovanniFormat;
1525
+ return b`
1526
+ <div style="margin-left: ${path.length * 20}px;">
1527
+ ${Object.entries(node).map(([key, value]) => {
1528
+ var _a;
1529
+ const groupPath = [...path, key].join("/");
1530
+ if (value.__isLeaf) {
1531
+ const ummVar = cmr_variable_service_default.getVariableByName(
1532
+ key,
1533
+ (_a = __privateGet(this, _collectionController).variables) == null ? void 0 : _a.data
1534
+ );
1535
+ const variableLabel = ummVar ? cmr_variable_service_default.getVariableDisplayLabel(ummVar) : key;
1536
+ return b`
1537
+ <div class="option-row">
1538
+ <label class="checkbox-option">
1539
+ <input
1540
+ type="${isGiovanni ? "radio" : "checkbox"}"
1541
+ name="${isGiovanni ? "variable-selection" : ""}"
1542
+ .checked=${this.selectedVariables.some(
1543
+ (v) => v.name === value.__variable.name
1544
+ )}
1545
+ @change=${(e2) => __privateMethod(this, _toggleVariableSelection, toggleVariableSelection_fn).call(this, e2, value.__variable)}
1546
+ />
1547
+ <span>${variableLabel}</span>
1548
+ </label>
1549
+ </div>
1550
+ `;
1551
+ } else {
1552
+ const expanded = this.expandedVariableGroups.has(groupPath);
1553
+ return b`
1554
+ <div class="option-row" style="align-items: flex-start;">
1555
+ <span
1556
+ style="cursor: pointer; display: flex; align-items: center;"
1557
+ @click=${() => __privateMethod(this, _toggleGroupExpand, toggleGroupExpand_fn).call(this, groupPath)}
1558
+ >
1559
+ <terra-icon
1560
+ library="heroicons"
1561
+ name="${expanded ? "outline-minus-circle" : "outline-plus-circle"}"
1562
+ style="margin-right: 4px;"
1563
+ ></terra-icon>
1564
+ <span style="font-weight: 500;">${key}</span>
1565
+ </span>
1566
+ </div>
1567
+ ${expanded ? __privateMethod(this, _renderVariableTree, renderVariableTree_fn).call(this, value.__children, [
1568
+ ...path,
1569
+ key
1570
+ ]) : ""}
1571
+ `;
1572
+ }
1573
+ })}
1574
+ </div>
1575
+ `;
1576
+ };
1577
+ _getAllGroupPaths = new WeakSet();
1578
+ getAllGroupPaths_fn = function(node, path = []) {
1579
+ let groups = [];
1580
+ for (const [key, value] of Object.entries(node)) {
1581
+ if (!value.__isLeaf) {
1582
+ const groupPath = [...path, key].join("/");
1583
+ groups.push(groupPath);
1584
+ groups = groups.concat(
1585
+ __privateMethod(this, _getAllGroupPaths, getAllGroupPaths_fn).call(this, value.__children, [...path, key])
1586
+ );
1587
+ }
1588
+ }
1589
+ return groups;
1590
+ };
1591
+ _toggleGroupExpand = new WeakSet();
1592
+ toggleGroupExpand_fn = function(groupPath) {
1593
+ const set = new Set(this.expandedVariableGroups);
1594
+ if (set.has(groupPath)) {
1595
+ set.delete(groupPath);
1596
+ } else {
1597
+ set.add(groupPath);
1598
+ }
1599
+ this.expandedVariableGroups = set;
1600
+ };
1601
+ _toggleExpandCollapseAll = new WeakSet();
1602
+ toggleExpandCollapseAll_fn = function(tree) {
1603
+ const allGroups = __privateMethod(this, _getAllGroupPaths, getAllGroupPaths_fn).call(this, tree);
1604
+ const allExpanded = allGroups.length > 0 && allGroups.every((g) => this.expandedVariableGroups.has(g));
1605
+ if (allExpanded) {
1606
+ this.expandedVariableGroups = /* @__PURE__ */ new Set();
1607
+ } else {
1608
+ this.expandedVariableGroups = new Set(allGroups);
1609
+ }
1610
+ };
1611
+ _toggleVariableSelection = new WeakSet();
1612
+ toggleVariableSelection_fn = function(e2, variable) {
1613
+ __privateMethod(this, _markFieldTouched, markFieldTouched_fn).call(this, "variables");
1614
+ const checked = e2.target.checked;
1615
+ if (this.selectedFormat.isGiovanniFormat) {
1616
+ if (checked) {
1617
+ this.selectedVariables = [variable];
1618
+ }
1619
+ } else {
1620
+ if (checked) {
1621
+ if (!this.selectedVariables.some((v) => v.name === variable.name)) {
1622
+ this.selectedVariables = [...this.selectedVariables, variable];
1623
+ }
1624
+ } else {
1625
+ this.selectedVariables = this.selectedVariables.filter(
1626
+ (v) => v.name !== variable.name
1627
+ );
1628
+ }
1629
+ }
1630
+ };
1631
+ _markFieldTouched = new WeakSet();
1632
+ markFieldTouched_fn = function(field) {
1633
+ this.touchedFields = new Set(this.touchedFields).add(field);
1634
+ };
1635
+ _resetVariableSelection = new WeakMap();
1636
+ _resetDimensionSelection = new WeakSet();
1637
+ resetDimensionSelection_fn = function() {
1638
+ this.selectedDimensionIndexes = {};
1639
+ };
1640
+ _isDimensionExcluded = new WeakSet();
1641
+ isDimensionExcluded_fn = function(dim) {
1642
+ var _a, _b, _c;
1643
+ const normalizedName = (_b = (_a = dim.Name) == null ? void 0 : _a.toLowerCase()) != null ? _b : "";
1644
+ const normalizedType = ((_c = dim.Type) != null ? _c : "").toLowerCase();
1645
+ return ["time", "latitude", "longitude", "lat", "lon", "x", "y"].some(
1646
+ (value) => normalizedName.includes(value) || normalizedType.includes(value)
1647
+ );
1648
+ };
1649
+ _getCommonSelectableDimensions = new WeakSet();
1650
+ getCommonSelectableDimensions_fn = function() {
1651
+ var _a, _b;
1652
+ const variables = (_a = __privateGet(this, _collectionController).variables) == null ? void 0 : _a.data;
1653
+ if (!variables) {
1654
+ return [];
1655
+ }
1656
+ const allUmmVars = (_b = variables.items) != null ? _b : [];
1657
+ if (!allUmmVars.length) {
1658
+ return [];
1659
+ }
1660
+ const allDimensionSets = allUmmVars.map(
1661
+ (v) => {
1662
+ var _a2;
1663
+ return (_a2 = v.umm.Dimensions) != null ? _a2 : [];
1664
+ }
1665
+ );
1666
+ if (!allDimensionSets.length) {
1667
+ return [];
1668
+ }
1669
+ const allDimensionNames = Array.from(
1670
+ new Set(allDimensionSets.flatMap((dimSet) => dimSet.map((dim) => dim.Name)))
1671
+ );
1672
+ const filteredCommon = allDimensionNames.map((name) => {
1673
+ var _a2, _b2;
1674
+ const dims = allDimensionSets.map((set) => set.find((dim) => dim.Name === name)).filter((d) => Boolean(d));
1675
+ if (!dims.length) {
1676
+ return null;
1677
+ }
1678
+ const validSizes = dims.filter((dim) => dim.Size !== void 0 && dim.Size !== "Varies").map((dim) => Number(dim.Size)).filter((size2) => Number.isFinite(size2) && size2 > 0);
1679
+ if (!validSizes.length) {
1680
+ return null;
1681
+ }
1682
+ const size = Math.min(...validSizes);
1683
+ return {
1684
+ name,
1685
+ type: (_b2 = (_a2 = dims[0]) == null ? void 0 : _a2.Type) != null ? _b2 : "OTHER",
1686
+ size
1687
+ };
1688
+ }).filter(
1689
+ (entry) => Boolean(entry)
1690
+ ).filter(
1691
+ (entry) => !__privateMethod(this, _isDimensionExcluded, isDimensionExcluded_fn).call(this, {
1692
+ Name: entry.name,
1693
+ Type: entry.type
1694
+ })
1695
+ );
1696
+ return filteredCommon;
1697
+ };
1698
+ _renderJobStatus = new WeakSet();
1699
+ renderJobStatus_fn = function() {
1700
+ var _a, _b, _c, _d, _e;
1701
+ if (!__privateGet(this, _harmonyRequestController).jobId) {
1702
+ return b`<div class="results-section" id="job-status-section">
1703
+ <div
1704
+ style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px;"
1705
+ >
1706
+ <h2 class="results-title" style="margin: 0;">Results:</h2>
1707
+ ${!this.isHistoryView ? b`
1708
+ <terra-button
1709
+ variant="default"
1710
+ size="small"
1711
+ @click=${__privateMethod(this, _backToSubsetOptions, backToSubsetOptions_fn)}
1712
+ >
1713
+ ← Back to Subset Options
1714
+ </terra-button>
1715
+ ` : A}
1716
+ </div>
1717
+
1718
+ <div class="progress-container">
1719
+ ${this.harmonyRequestError ? b`
1720
+ <terra-alert open variant="danger" appearance="white">
1721
+ ${__privateMethod(this, _renderHarmonyRequestError, renderHarmonyRequestError_fn).call(this)}
1722
+ </terra-alert>
1723
+ ` : b`
1724
+ <div class="progress-container">
1725
+ <div class="progress-text">
1726
+ <span class="spinner"></span>
1727
+ <span class="status-running"
1728
+ >Searching for data...</span
1729
+ >
1730
+ </div>
1731
+
1732
+ <div class="progress-bar">
1733
+ <div
1734
+ class="progress-fill"
1735
+ style="width: 0%"
1736
+ ></div>
1737
+ </div>
1738
+ </div>
1739
+
1740
+ ${__privateMethod(this, _renderJobMessage, renderJobMessage_fn).call(this)}
1741
+ `}
1742
+ </div>
1743
+ </div>`;
1744
+ }
1745
+ return b`
1746
+ <div class="results-section" id="job-status-section">
1747
+ <div
1748
+ style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px;"
1749
+ >
1750
+ <h2 class="results-title" style="margin: 0;">Results:</h2>
1751
+ ${!this.isHistoryView ? b`
1752
+ <terra-button
1753
+ variant="default"
1754
+ size="small"
1755
+ @click=${__privateMethod(this, _backToSubsetOptions, backToSubsetOptions_fn)}
1756
+ >
1757
+ ← Back to Subset Options
1758
+ </terra-button>
1759
+ ` : A}
1760
+ </div>
1761
+
1762
+ ${__privateGet(this, _harmonyRequestController).status !== "canceled" && __privateGet(this, _harmonyRequestController).status !== "failed" ? b` <div class="progress-container">
1763
+ <div class="progress-text">
1764
+ ${__privateGet(this, _harmonyRequestController).progress >= 100 ? b`
1765
+ <span class="status-complete"
1766
+ >✓ Search complete</span
1767
+ >
1768
+ ` : b`
1769
+ <span class="spinner"></span>
1770
+ <span class="status-running"
1771
+ >Searching for data...
1772
+ (${__privateGet(this, _harmonyRequestController).progress}%)</span
1773
+ >
1774
+ `}
1775
+ </div>
1776
+
1777
+ <div class="progress-bar">
1778
+ <div
1779
+ class="progress-fill"
1780
+ style="width: ${__privateGet(this, _harmonyRequestController).progress}%"
1781
+ ></div>
1782
+ </div>
1783
+ </div>` : A}
1784
+
1785
+ <div class="search-status">
1786
+ <span class="file-count"
1787
+ >Found ${__privateMethod(this, _numberOfFilesFoundEstimate, numberOfFilesFoundEstimate_fn).call(this)} files</span
1788
+ >
1789
+ out of estimated
1790
+ <span class="estimated-total"
1791
+ >${(_a = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _a.numInputGranules.toLocaleString()}</span
1792
+ >
1793
+ </div>
1794
+
1795
+ ${__privateMethod(this, _renderJobMessage, renderJobMessage_fn).call(this)}
1796
+ ${((_c = (_b = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _b.errors) == null ? void 0 : _c.length) ? b`
1797
+ <terra-accordion>
1798
+ <div slot="summary">
1799
+ <span
1800
+ class="accordion-title"
1801
+ style="color: #dc3545;"
1802
+ >Errors
1803
+ (${(_d = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _d.errors.length})</span
1804
+ >
1805
+ </div>
1806
+ <div class="accordion-content">
1807
+ <ul
1808
+ style="color: #dc3545; font-size: 14px; padding-left: 20px;"
1809
+ >
1810
+ ${(_e = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _e.errors.map(
1811
+ (err) => b`
1812
+ <li style="margin-bottom: 12px;">
1813
+ <a
1814
+ href="${err.url}"
1815
+ target="_blank"
1816
+ style="word-break: break-all; color: #dc3545; text-decoration: underline;"
1817
+ >
1818
+ ${err.url}
1819
+ </a>
1820
+ <div style="margin-top: 2px;">
1821
+ ${err.message}
1822
+ </div>
1823
+ </li>
1824
+ `
1825
+ )}
1826
+ </ul>
1827
+ </div>
1828
+ </terra-accordion>
1829
+ ` : A}
1830
+
1831
+ <div class="tabs">
1832
+ <button
1833
+ class="tab ${this.selectedTab === "web-links" ? "active" : ""}"
1834
+ @click=${() => this.selectedTab = "web-links"}
1835
+ >
1836
+ Web Links
1837
+ </button>
1838
+
1839
+ ${!this.isHistoryView ? b`
1840
+ <button
1841
+ class="tab ${this.selectedTab === "selected-params" ? "active" : ""}"
1842
+ @click=${() => this.selectedTab = "selected-params"}
1843
+ >
1844
+ Selected Parameters
1845
+ </button>
1846
+ ` : A}
1847
+ </div>
1848
+ <div
1849
+ id="web-links"
1850
+ class="tab-content ${this.selectedTab === "web-links" ? "active" : ""}"
1851
+ >
1852
+ ${__privateMethod(this, _getDocumentationLinks, getDocumentationLinks_fn).call(this).length ? b`
1853
+ <div class="documentation-links">
1854
+ ${__privateMethod(this, _getDocumentationLinks, getDocumentationLinks_fn).call(this).map(
1855
+ (link) => b`
1856
+ <a href="${link.href}" class="doc-link"
1857
+ >${link.title}</a
1858
+ >
1859
+ `
1860
+ )}
1861
+ </div>
1862
+ ` : A}
1863
+
1864
+ <ul class="file-list">
1865
+ ${__privateMethod(this, _getDataLinks, getDataLinks_fn).call(this).map(
1866
+ (link) => b`
1867
+ <li class="file-item">
1868
+ <a
1869
+ href="${link.href}"
1870
+ class="file-link"
1871
+ target="_blank"
1872
+ >
1873
+ ${link.title}
1874
+ </a>
1875
+ </li>
1876
+ `
1877
+ )}
1878
+ </ul>
1879
+ </div>
1880
+
1881
+ <div
1882
+ id="selected-params"
1883
+ class="tab-content ${this.selectedTab === "selected-params" ? "active" : ""}"
1884
+ >
1885
+ ${__privateMethod(this, _renderSelectedParams, renderSelectedParams_fn).call(this)}
1886
+ </div>
1887
+ </div>
1888
+
1889
+ ${!this.dialog ? b`
1890
+ <div class="footer">
1891
+ ${__privateGet(this, _harmonyRequestController).status === "successful" /* SUCCESSFUL */ || __privateGet(this, _harmonyRequestController).status === "complete_with_errors" /* COMPLETE_WITH_ERRORS */ ? b`
1892
+ <div
1893
+ style="display: flex; align-items: center; gap: 8px;"
1894
+ >
1895
+ <terra-dropdown
1896
+ @terra-select=${__privateMethod(this, _handleDownloadSelect, handleDownloadSelect_fn)}
1897
+ >
1898
+ <terra-button slot="trigger" caret>
1899
+ Download Options
1900
+ </terra-button>
1901
+ <terra-menu>
1902
+ <terra-menu-item value="file-list">
1903
+ <svg
1904
+ slot="prefix"
1905
+ viewBox="0 0 24 24"
1906
+ width="16"
1907
+ height="16"
1908
+ style="width: 16px; height: 16px;"
1909
+ >
1910
+ <path
1911
+ fill="currentColor"
1912
+ 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"
1913
+ />
1914
+ </svg>
1915
+ File List
1916
+ </terra-menu-item>
1917
+ <terra-menu-item
1918
+ value="python-script"
1919
+ >
1920
+ <svg
1921
+ slot="prefix"
1922
+ viewBox="0 0 128 128"
1923
+ width="16"
1924
+ height="16"
1925
+ style="width: 16px; height: 16px;"
1926
+ >
1927
+ <path
1928
+ fill="currentColor"
1929
+ 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"
1930
+ ></path>
1931
+ </svg>
1932
+ Python Script
1933
+ </terra-menu-item>
1934
+ <terra-menu-item
1935
+ value="earthdata-download"
1936
+ >
1937
+ <svg
1938
+ slot="prefix"
1939
+ viewBox="0 0 64 64"
1940
+ fill="none"
1941
+ width="16"
1942
+ height="16"
1943
+ style="width: 16px; height: 16px;"
1944
+ >
1945
+ <circle
1946
+ cx="32"
1947
+ cy="32"
1948
+ r="28"
1949
+ fill="currentColor"
1950
+ />
1951
+ <path
1952
+ d="M32 14v26M32 40l-9-9M32 40l9-9"
1953
+ stroke="#fff"
1954
+ stroke-width="4"
1955
+ stroke-linecap="round"
1956
+ stroke-linejoin="round"
1957
+ fill="none"
1958
+ />
1959
+ </svg>
1960
+ Earthdata Download
1961
+ </terra-menu-item>
1962
+ </terra-menu>
1963
+ </terra-dropdown>
1964
+
1965
+ <!--
1966
+ <terra-button
1967
+ outline
1968
+ @click=${() => __privateMethod(this, _handleJupyterNotebookClick, handleJupyterNotebookClick_fn).call(this)}
1969
+ >
1970
+ <terra-icon
1971
+ name="outline-code-bracket"
1972
+ library="heroicons"
1973
+ font-size="1.5em"
1974
+ style="margin-right: 5px;"
1975
+ ></terra-icon>
1976
+ Open in Jupyter Notebook
1977
+ </terra-button>
1978
+ --></div>
1979
+ ` : A}
1980
+ ${__privateGet(this, _harmonyRequestController).status === "running" /* RUNNING */ ? b`<button
1981
+ class="btn btn-success"
1982
+ @click=${__privateMethod(this, _cancelJob, cancelJob_fn)}
1983
+ ?disabled=${this.cancelingGetData}
1984
+ >
1985
+ ${this.cancelingGetData ? "Canceling..." : "Cancel request"}
1986
+ </button>` : A}
1987
+
1988
+ <div class="job-info">
1989
+ Job ID:
1990
+ <span class="job-id">
1991
+ ${this.bearerToken ? b`<a
1992
+ href="https://harmony.earthdata.nasa.gov/jobs/${__privateGet(this, _harmonyRequestController).jobId}"
1993
+ target="_blank"
1994
+ >${__privateGet(this, _harmonyRequestController).jobId}</a
1995
+ >` : __privateGet(this, _harmonyRequestController).jobId}
1996
+ </span>
1997
+ <span class="info-icon">?</span>
1998
+ </div>
1999
+ </div>
2000
+ ` : A}
2001
+ `;
2002
+ };
2003
+ _renderSelectedParams = new WeakSet();
2004
+ renderSelectedParams_fn = function() {
2005
+ var _a, _b, _c, _d;
2006
+ const collection = (_a = this.collectionWithServices) == null ? void 0 : _a.collection;
2007
+ const variables = this.selectedVariables.length ? this.selectedVariables.map((v) => v.name) : ["All"];
2008
+ const dateRange = this.selectedDateRange.startDate && this.selectedDateRange.endDate ? `${this.selectedDateRange.startDate} to ${this.selectedDateRange.endDate}` : "\u2014";
2009
+ const spatial = (_c = (_b = this.spatialSelection) == null ? void 0 : _b.toString()) != null ? _c : "-";
2010
+ return b`
2011
+ <dl class="params-summary">
2012
+ <div>
2013
+ <dt><strong>Dataset</strong></dt>
2014
+ <dd>${(_d = collection == null ? void 0 : collection.EntryTitle) != null ? _d : "\u2014"}</dd>
2015
+ </div>
2016
+ <div>
2017
+ <dt><strong>Variables</strong></dt>
2018
+ <dd>${variables.map((v) => b`<div>${v}</div>`)}</dd>
2019
+ </div>
2020
+ <div>
2021
+ <dt><strong>Dimensions</strong></dt>
2022
+ <dd>
2023
+ ${Object.entries(this.selectedDimensionIndexes).length ? Object.entries(this.selectedDimensionIndexes).map(
2024
+ ([dimName, value]) => b`<div>
2025
+ <strong>${dimName}:</strong> ${value}
2026
+ </div>`
2027
+ ) : "\u2014"}
2028
+ </dd>
2029
+ </div>
2030
+ <div>
2031
+ <dt><strong>Date Range</strong></dt>
2032
+ <dd>${dateRange}</dd>
2033
+ </div>
2034
+ <div>
2035
+ <dt><strong>Spatial</strong></dt>
2036
+ <dd>${spatial}</dd>
2037
+ </div>
2038
+ </dl>
2039
+
2040
+ <terra-button @click=${__privateMethod(this, _refineParameters, refineParameters_fn)}
2041
+ >Refine Parameters</terra-button
2042
+ >
2043
+ `;
2044
+ };
2045
+ _cancelJob = new WeakSet();
2046
+ cancelJob_fn = async function() {
2047
+ if (!this.jobId) {
2048
+ return;
2049
+ }
2050
+ this.cancelingGetData = true;
2051
+ try {
2052
+ await __privateGet(this, _harmonyRequestController).cancelJob({
2053
+ jobId: this.jobId,
2054
+ options: { bearerToken: this.bearerToken }
2055
+ });
2056
+ } finally {
2057
+ this.cancelingGetData = false;
2058
+ }
2059
+ };
2060
+ _getData = new WeakSet();
2061
+ getData_fn = async function() {
2062
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i;
2063
+ this.harmonyRequestError = void 0;
2064
+ const validationError = __privateMethod(this, _getGiovanniValidationError, getGiovanniValidationError_fn).call(this);
2065
+ if (validationError) {
2066
+ this.validationError = validationError;
2067
+ __privateMethod(this, _markFieldTouched, markFieldTouched_fn).call(this, "variables");
2068
+ return;
2069
+ }
2070
+ this.validationError = void 0;
2071
+ this.cancelingGetData = false;
2072
+ __privateMethod(this, _touchAllFields, touchAllFields_fn).call(this);
2073
+ const variables = this.selectedFormat.isGiovanniFormat ? this.selectedVariables.map(
2074
+ (v) => {
2075
+ var _a2, _b2, _c2;
2076
+ return (
2077
+ // the Giovanni variable catalog uses different variable entry ids, we need to support them
2078
+ // ex. CMR: M2T1NXSLV_5.2.14 in Giovanni uses underscores: M2T1NXSLV_5_2_14
2079
+ convertVariableEntryIdToGiovanniFormat(
2080
+ (_a2 = this.collectionWithServices.shortName) != null ? _a2 : "",
2081
+ (_c2 = (_b2 = this.collectionWithServices.collection) == null ? void 0 : _b2.Version) != null ? _c2 : "",
2082
+ v.name
2083
+ )
2084
+ );
2085
+ }
2086
+ ) : this.selectedVariables.map((v) => v.conceptId);
2087
+ const harmonyRequest = new HarmonyRequest({
2088
+ collectionConceptId: this.collectionWithServices.conceptId,
2089
+ variables,
2090
+ location: this.spatialSelection
2091
+ });
2092
+ if (this.shapeGeoJson) {
2093
+ harmonyRequest.shape(this.shapeGeoJson);
2094
+ }
2095
+ if (((_a = this.collectionWithServices) == null ? void 0 : _a.summary.subsetting.temporal) && this.selectedDateRange.startDate && this.selectedDateRange.endDate) {
2096
+ harmonyRequest.startDate(
2097
+ this.isSubDaily ? this.selectedDateRange.startDate : getUTCDate(this.selectedDateRange.startDate).toISOString()
2098
+ );
2099
+ harmonyRequest.endDate(
2100
+ this.isSubDaily ? this.selectedDateRange.endDate : getUTCDate(this.selectedDateRange.endDate).toISOString()
2101
+ );
2102
+ }
2103
+ if (this.selectedFormat) {
2104
+ harmonyRequest.format(
2105
+ this.selectedFormat.isGiovanniFormat ? "text/csv" : this.selectedFormat.key
2106
+ );
2107
+ }
2108
+ if (this.selectedFormat.key === "text/csv") {
2109
+ harmonyRequest.average("area");
2110
+ }
2111
+ if (this.selectedFormat.key === "image/tiff") {
2112
+ harmonyRequest.average("time");
2113
+ }
2114
+ if (Object.keys(this.selectedDimensionIndexes).length) {
2115
+ Object.entries(this.selectedDimensionIndexes).forEach(
2116
+ ([dimName, { start, end }]) => {
2117
+ harmonyRequest.dimension({
2118
+ name: dimName,
2119
+ min: start,
2120
+ max: end
2121
+ });
2122
+ }
2123
+ );
2124
+ }
2125
+ harmonyRequest.label("terra-data-subsetter");
2126
+ const cwsShortName = (_e = (_b = this.collectionWithServices) == null ? void 0 : _b.shortName) != null ? _e : (_d = (_c = this.collectionWithServices) == null ? void 0 : _c.collection) == null ? void 0 : _d.ShortName;
2127
+ const cwsVersion = (_g = (_f = this.collectionWithServices) == null ? void 0 : _f.collection) == null ? void 0 : _g.Version;
2128
+ const cwsEntryTitle = (_i = (_h = this.collectionWithServices) == null ? void 0 : _h.collection) == null ? void 0 : _i.EntryTitle;
2129
+ if (cwsShortName && cwsVersion) {
2130
+ harmonyRequest.label(
2131
+ `collection-entry-id: ${cwsShortName}_${cwsVersion}`.toLowerCase()
2132
+ );
2133
+ }
2134
+ if (cwsEntryTitle) {
2135
+ harmonyRequest.label(
2136
+ `collection-entry-title: ${cwsEntryTitle.toLowerCase()}`
2137
+ );
2138
+ }
2139
+ console.log("Creating Harmony job with request:", harmonyRequest.params);
2140
+ try {
2141
+ const job = await __privateGet(this, _harmonyRequestController).startJob({
2142
+ harmonyRequest,
2143
+ options: { bearerToken: this.bearerToken }
2144
+ });
2145
+ this.jobId = job.jobID;
2146
+ } catch (error) {
2147
+ this.harmonyRequestError = __privateMethod(this, _getHarmonyRequestErrorMessage, getHarmonyRequestErrorMessage_fn).call(this, error);
2148
+ this.refineParameters = false;
2149
+ return;
2150
+ }
2151
+ setTimeout(() => {
2152
+ const el = this.renderRoot.querySelector("#job-status-section");
2153
+ el == null ? void 0 : el.scrollIntoView({ behavior: "smooth" });
2154
+ }, 100);
2155
+ this.refineParameters = false;
2156
+ this.isHistoryView = false;
2157
+ };
2158
+ _touchAllFields = new WeakSet();
2159
+ touchAllFields_fn = function() {
2160
+ this.touchedFields = /* @__PURE__ */ new Set(["variables", "spatial"]);
2161
+ };
2162
+ _numberOfFilesFoundEstimate = new WeakSet();
2163
+ numberOfFilesFoundEstimate_fn = function() {
2164
+ var _a, _b, _c;
2165
+ return Math.floor(
2166
+ ((_b = (_a = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _a.numInputGranules) != null ? _b : 0) * ((_c = __privateGet(this, _harmonyRequestController).progress) != null ? _c : 0) / 100
2167
+ );
2168
+ };
2169
+ _getDocumentationLinks = new WeakSet();
2170
+ getDocumentationLinks_fn = function() {
2171
+ var _a, _b;
2172
+ return ((_b = (_a = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _a.links) != null ? _b : []).filter(
2173
+ (link) => link.rel === "stac-catalog-json"
2174
+ );
2175
+ };
2176
+ _getDataLinks = new WeakSet();
2177
+ getDataLinks_fn = function() {
2178
+ var _a, _b;
2179
+ return ((_b = (_a = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _a.links) != null ? _b : []).filter(
2180
+ (link) => link.rel === "data"
2181
+ );
2182
+ };
2183
+ _hasAtLeastOneSubsetOption = new WeakSet();
2184
+ hasAtLeastOneSubsetOption_fn = function() {
2185
+ var _a, _b, _c, _d;
2186
+ return ((_a = this.collectionWithServices) == null ? void 0 : _a.summary.subsetting.bbox) || ((_b = this.collectionWithServices) == null ? void 0 : _b.summary.subsetting.shape) || ((_c = this.collectionWithServices) == null ? void 0 : _c.summary.subsetting.variable) || ((_d = this.collectionWithServices) == null ? void 0 : _d.summary.subsetting.temporal);
2187
+ };
2188
+ _hasSpatialSubset = new WeakSet();
2189
+ hasSpatialSubset_fn = function() {
2190
+ var _a, _b;
2191
+ return ((_a = this.collectionWithServices) == null ? void 0 : _a.summary.subsetting.bbox) || ((_b = this.collectionWithServices) == null ? void 0 : _b.summary.subsetting.shape);
2192
+ };
2193
+ _renderJobMessage = new WeakSet();
2194
+ renderJobMessage_fn = function() {
2195
+ var _a;
2196
+ const warningStatuses = [
2197
+ "canceled" /* CANCELED */,
2198
+ "complete_with_errors" /* COMPLETE_WITH_ERRORS */,
2199
+ "running_with_errors" /* RUNNING_WITH_ERRORS */
2200
+ ];
2201
+ const errorStatuses = ["failed" /* FAILED */];
2202
+ if (!((_a = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _a.status)) {
2203
+ return A;
2204
+ }
2205
+ let type = "normal";
2206
+ if (warningStatuses.includes(__privateGet(this, _harmonyRequestController).data.status)) {
2207
+ type = "warning";
2208
+ } else if (errorStatuses.includes(__privateGet(this, _harmonyRequestController).data.status)) {
2209
+ type = "error";
2210
+ }
2211
+ let color, bg;
2212
+ if (type === "error") {
2213
+ color = "#dc3545";
2214
+ bg = "#f8d7da";
2215
+ } else if (type === "warning") {
2216
+ color = "#856404";
2217
+ bg = "#fff3cd";
2218
+ } else {
2219
+ color = "#555";
2220
+ bg = "#f8f9fa";
2221
+ }
2222
+ return b`
2223
+ <div
2224
+ style="
2225
+ margin: 24px 0 16px 0;
2226
+ padding: 16px 20px;
2227
+ border-radius: 6px;
2228
+ background: ${bg};
2229
+ color: ${color};
2230
+ border: 1px solid ${color}22;
2231
+ "
2232
+ >
2233
+ ${__privateMethod(this, _getJobMessageText, getJobMessageText_fn).call(this)}
2234
+ </div>
2235
+ `;
2236
+ };
2237
+ _getJobMessageText = new WeakSet();
2238
+ getJobMessageText_fn = function() {
2239
+ var _a;
2240
+ return (_a = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _a.message.replace(
2241
+ /\b(The job|the job|job|Job)\b/g,
2242
+ (match) => {
2243
+ switch (match) {
2244
+ case "The job":
2245
+ return "Your request";
2246
+ case "the job":
2247
+ return "Your Request";
2248
+ case "job":
2249
+ return "request";
2250
+ case "Job":
2251
+ return "Request";
2252
+ }
2253
+ return match;
2254
+ }
2255
+ );
2256
+ };
2257
+ _estimateJobSize = new WeakSet();
2258
+ estimateJobSize_fn = function() {
2259
+ var _a, _b, _c, _d, _e;
2260
+ if (!((_a = this.collectionWithServices) == null ? void 0 : _a.granuleCount))
2261
+ return;
2262
+ const range = __privateMethod(this, _getCollectionDateRange, getCollectionDateRange_fn).call(this);
2263
+ let startDate;
2264
+ let endDate;
2265
+ let links = (_c = (_b = this.collectionWithServices) == null ? void 0 : _b.granuleCount) != null ? _c : 0;
2266
+ if (this.selectedDateRange.startDate && this.selectedDateRange.endDate) {
2267
+ startDate = this.selectedDateRange.startDate;
2268
+ endDate = this.selectedDateRange.endDate;
2269
+ } else {
2270
+ startDate = (_d = this.granuleMinDate) != null ? _d : range.startDate;
2271
+ endDate = (_e = this.granuleMaxDate) != null ? _e : range.endDate;
2272
+ }
2273
+ if (!startDate || !endDate)
2274
+ return;
2275
+ const start = new Date(startDate);
2276
+ const end = new Date(endDate);
2277
+ const days = Math.floor((end.getTime() - start.getTime()) / (1e3 * 60 * 60 * 24)) + 1;
2278
+ if (range.startDate && range.endDate) {
2279
+ const availableDaysInCollection = Math.floor(
2280
+ (new Date(range.endDate).getTime() - new Date(range.startDate).getTime()) / (1e3 * 60 * 60 * 24)
2281
+ ) + 1;
2282
+ const granulesPerDay = links / availableDaysInCollection;
2283
+ links = Math.ceil(days * granulesPerDay);
2284
+ }
2285
+ return { days, links };
2286
+ };
2287
+ _refineParameters = new WeakSet();
2288
+ refineParameters_fn = function() {
2289
+ this.refineParameters = true;
2290
+ };
2291
+ _backToSubsetOptions = new WeakSet();
2292
+ backToSubsetOptions_fn = function() {
2293
+ this.refineParameters = true;
2294
+ this.harmonyRequestError = void 0;
2295
+ setTimeout(() => {
2296
+ const container = this.renderRoot.querySelector(".container");
2297
+ container == null ? void 0 : container.scrollIntoView({ behavior: "smooth", block: "start" });
2298
+ }, 100);
2299
+ };
2300
+ _viewRunningJob = new WeakSet();
2301
+ viewRunningJob_fn = function() {
2302
+ this.refineParameters = false;
2303
+ setTimeout(() => {
2304
+ const el = this.renderRoot.querySelector("#job-status-section");
2305
+ el == null ? void 0 : el.scrollIntoView({ behavior: "smooth" });
2306
+ }, 100);
2307
+ };
2308
+ _handleDownloadSelect = new WeakSet();
2309
+ handleDownloadSelect_fn = function(event) {
2310
+ const item = event.detail.item;
2311
+ const value = item.value || item.getTextLabel();
2312
+ if (value === "file-list") {
2313
+ __privateMethod(this, _downloadLinksAsTxt, downloadLinksAsTxt_fn).call(this, event);
2314
+ } else if (value === "python-script") {
2315
+ __privateMethod(this, _downloadPythonScript, downloadPythonScript_fn).call(this, event);
2316
+ } else if (value === "earthdata-download") {
2317
+ __privateMethod(this, _downloadEarthdataDownload, downloadEarthdataDownload_fn).call(this, event);
2318
+ }
2319
+ };
2320
+ _downloadLinksAsTxt = new WeakSet();
2321
+ downloadLinksAsTxt_fn = function(event) {
2322
+ var _a;
2323
+ event.stopPropagation();
2324
+ if (!((_a = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _a.links)) {
2325
+ return;
2326
+ }
2327
+ const dataLinks = __privateMethod(this, _getDataLinks, getDataLinks_fn).call(this);
2328
+ if (dataLinks.length === 0) {
2329
+ return;
2330
+ }
2331
+ const content = dataLinks.map((link) => link.href).join("\n");
2332
+ const blob = new Blob([content], { type: "text/plain" });
2333
+ const url = URL.createObjectURL(blob);
2334
+ const a = document.createElement("a");
2335
+ a.href = url;
2336
+ a.download = `subset_links_${__privateGet(this, _harmonyRequestController).jobId}.txt`;
2337
+ document.body.appendChild(a);
2338
+ a.click();
2339
+ document.body.removeChild(a);
2340
+ URL.revokeObjectURL(url);
2341
+ };
2342
+ _downloadPythonScript = new WeakSet();
2343
+ downloadPythonScript_fn = async function(event) {
2344
+ var _a, _b, _c, _d;
2345
+ event.stopPropagation();
2346
+ if (!((_a = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _a.links)) {
2347
+ return;
2348
+ }
2349
+ const response = await fetch(
2350
+ getBasePath("assets/data-subsetter/download_subset_files.py.txt")
2351
+ );
2352
+ if (!response.ok) {
2353
+ alert(
2354
+ "Sorry, there was a problem generating the Python script. We are investigating the issue.\nYou could try using the Jupyter Notebook in the meantime"
2355
+ );
2356
+ }
2357
+ const content = (await response.text()).replace(/{{jobId}}/gi, (_b = __privateGet(this, _harmonyRequestController).jobId) != null ? _b : "").replace(
2358
+ /{{HARMONY_ENV}}/gi,
2359
+ `Environment.${(_c = this.environment) == null ? void 0 : _c.toUpperCase()}`
2360
+ ).replace(
2361
+ /{{EARTHACCESS_ENV}}/gi,
2362
+ `earthaccess.${(_d = this.environment) == null ? void 0 : _d.toUpperCase()}`
2363
+ );
2364
+ const blob = new Blob([content], { type: "text/plain" });
2365
+ const url = URL.createObjectURL(blob);
2366
+ const a = document.createElement("a");
2367
+ a.href = url;
2368
+ a.download = `download_subset_files_${__privateGet(this, _harmonyRequestController).jobId}.py`;
2369
+ document.body.appendChild(a);
2370
+ a.click();
2371
+ document.body.removeChild(a);
2372
+ URL.revokeObjectURL(url);
2373
+ };
2374
+ _downloadEarthdataDownload = new WeakSet();
2375
+ downloadEarthdataDownload_fn = async function(event) {
2376
+ var _a;
2377
+ event.stopPropagation();
2378
+ if (!((_a = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _a.links)) {
2379
+ return;
2380
+ }
2381
+ alert("Sorry, Earthdata Download is not currently supported");
2382
+ };
2383
+ _handleJupyterNotebookClick = new WeakSet();
2384
+ handleJupyterNotebookClick_fn = function() {
2385
+ const notebook = getNotebook(this);
2386
+ sendDataToJupyterNotebook("load-notebook", {
2387
+ filename: `subset_${__privateGet(this, _harmonyRequestController).jobId}.ipynb`,
2388
+ notebook,
2389
+ bearerToken: this.bearerToken
2390
+ });
2391
+ };
2392
+ _renderAvailableTemporalRangeSection = new WeakSet();
2393
+ renderAvailableTemporalRangeSection_fn = function() {
2394
+ const { startDate, endDate } = __privateMethod(this, _getCollectionDateRange, getCollectionDateRange_fn).call(this);
2395
+ if (!startDate || !endDate)
2396
+ return A;
2397
+ return b`
2398
+ <div class="section" style="margin-bottom: 16px;">
2399
+ <h2 class="section-title">Available Date Range</h2>
2400
+ <div style="color: #31708f; margin-top: 8px;">
2401
+ <strong>${startDate}</strong> to <strong>${endDate}</strong>
2402
+ </div>
2403
+ <div style="font-size: 0.95em; color: #666;">
2404
+ This collection does not support temporal subsetting.
2405
+ </div>
2406
+ </div>
2407
+ `;
2408
+ };
2409
+ _renderAvailableSpatialRangeSection = new WeakSet();
2410
+ renderAvailableSpatialRangeSection_fn = function() {
2411
+ var _a, _b, _c, _d, _e;
2412
+ 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;
2413
+ if (!boundingRects || !Array.isArray(boundingRects) || !boundingRects.length)
2414
+ return A;
2415
+ return b`
2416
+ <div class="section" style="margin-bottom: 16px;">
2417
+ <h2 class="section-title">Available Spatial Area</h2>
2418
+ <div style="color: #31708f; margin-top: 8px;">
2419
+ ${boundingRects.map(
2420
+ (rect) => b`<div>
2421
+ <strong>Bounding Box:</strong>
2422
+ ${rect.WestBoundingCoordinate},
2423
+ ${rect.SouthBoundingCoordinate},
2424
+ ${rect.EastBoundingCoordinate},
2425
+ ${rect.NorthBoundingCoordinate}
2426
+ </div>`
2427
+ )}
2428
+ </div>
2429
+ <div style="font-size: 0.95em; color: #666;">
2430
+ This collection does not support spatial subsetting.
2431
+ </div>
2432
+ </div>
2433
+ `;
2434
+ };
2435
+ _renderDataAccessModeSelection = new WeakSet();
2436
+ renderDataAccessModeSelection_fn = function() {
2437
+ if (!__privateGet(this, _collectionController).hasGranules) {
2438
+ return A;
2439
+ }
2440
+ return b`
2441
+ <div class="mode-selection">
2442
+ <div class="mode-options">
2443
+ <label
2444
+ class="mode-option ${this.dataAccessMode === "original" ? "selected" : ""}"
2445
+ >
2446
+ <input
2447
+ type="radio"
2448
+ name="data-access-mode"
2449
+ value="original"
2450
+ .checked=${this.dataAccessMode === "original"}
2451
+ @change=${() => this.dataAccessMode = "original"}
2452
+ />
2453
+ <div class="mode-content">
2454
+ <div class="mode-title">Get Original Files</div>
2455
+ <div class="mode-description">
2456
+ Filter file links directly from the archive.
2457
+ </div>
2458
+ </div>
2459
+ </label>
2460
+
2461
+ <label
2462
+ class="mode-option ${this.dataAccessMode === "subset" ? "selected" : ""}"
2463
+ >
2464
+ <input
2465
+ type="radio"
2466
+ name="data-access-mode"
2467
+ value="subset"
2468
+ .checked=${this.dataAccessMode === "subset"}
2469
+ @change=${() => this.dataAccessMode = "subset"}
2470
+ />
2471
+ <div class="mode-content">
2472
+ <div class="mode-title">Transform Data</div>
2473
+ <div class="mode-description">
2474
+ Transform the data to your specific needs.
2475
+ </div>
2476
+ </div>
2477
+ </label>
2478
+ </div>
2479
+ </div>
2480
+ `;
2481
+ };
2482
+ _getGiovanniValidationError = new WeakSet();
2483
+ getGiovanniValidationError_fn = function() {
2484
+ if (!this.selectedFormat.isGiovanniFormat) {
2485
+ return null;
2486
+ }
2487
+ if (this.selectedVariables.length === 0) {
2488
+ return "Please select a variable to subset.";
2489
+ }
2490
+ if (this.selectedVariables.length > 1) {
2491
+ return "The selected format only supports subsetting one variable at a time.";
2492
+ }
2493
+ return null;
2494
+ };
2495
+ _getHarmonyRequestErrorMessage = new WeakSet();
2496
+ getHarmonyRequestErrorMessage_fn = function(error) {
2497
+ var _a;
2498
+ if (error instanceof HttpException) {
2499
+ const sanitizedMessage = (_a = error.message) == null ? void 0 : _a.replace(/^Error:\s*/i, "").trim();
2500
+ if (sanitizedMessage == null ? void 0 : sanitizedMessage.toLowerCase().includes("no matching granules found")) {
2501
+ return "No matching granules were found for your subset request. Please try expanding your search";
2502
+ }
2503
+ if (sanitizedMessage) {
2504
+ return sanitizedMessage;
2505
+ }
2506
+ }
2507
+ return "Unable to create your subset request. Please try again.";
2508
+ };
2509
+ _renderHarmonyRequestError = new WeakSet();
2510
+ renderHarmonyRequestError_fn = function() {
2511
+ if (!this.harmonyRequestError) {
2512
+ return A;
2513
+ }
2514
+ const noGranulesMessage = "No matching granules were found for your subset request. Please try expanding your search";
2515
+ if (this.harmonyRequestError === noGranulesMessage) {
2516
+ return b`
2517
+ No matching granules were found for your subset request. Please try
2518
+ <a
2519
+ href="#"
2520
+ @click=${__privateGet(this, _handleExpandSearchClick)}
2521
+ style="color: inherit; text-decoration: underline; font-weight: 600;"
2522
+ >
2523
+ expanding your search
2524
+ </a>
2525
+ `;
2526
+ }
2527
+ return this.harmonyRequestError;
2528
+ };
2529
+ _handleExpandSearchClick = new WeakMap();
2530
+ TerraDataSubsetter.styles = [component_styles_default, data_subsetter_styles_default];
2531
+ TerraDataSubsetter.dependencies = {
2532
+ "terra-accordion": TerraAccordion,
2533
+ "terra-date-picker": TerraDatePicker,
2534
+ "terra-icon": TerraIcon,
2535
+ "terra-input": TerraInput,
2536
+ "terra-spatial-picker": TerraSpatialPicker,
2537
+ "terra-login": TerraLogin,
2538
+ "terra-loader": TerraLoader,
2539
+ "terra-data-access": TerraDataAccess,
2540
+ "terra-dialog": TerraDialog,
2541
+ "terra-dropdown": TerraDropdown,
2542
+ "terra-menu": TerraMenu,
2543
+ "terra-menu-item": TerraMenuItem,
2544
+ "terra-button": TerraButton,
2545
+ "terra-alert": TerraAlert,
2546
+ "terra-slider": TerraSlider
2547
+ };
2548
+ __decorateClass([
2549
+ n({ reflect: true, attribute: "collection-entry-id" })
2550
+ ], TerraDataSubsetter.prototype, "collectionEntryId", 2);
2551
+ __decorateClass([
2552
+ n({ reflect: true, attribute: "short-name" })
2553
+ ], TerraDataSubsetter.prototype, "shortName", 2);
2554
+ __decorateClass([
2555
+ n({ reflect: true, attribute: "version" })
2556
+ ], TerraDataSubsetter.prototype, "version", 2);
2557
+ __decorateClass([
2558
+ n({
2559
+ reflect: true,
2560
+ type: Boolean,
2561
+ attribute: "show-collection-search"
2562
+ })
2563
+ ], TerraDataSubsetter.prototype, "showCollectionSearch", 2);
2564
+ __decorateClass([
2565
+ n({ reflect: true, type: Boolean, attribute: "show-history-panel" })
2566
+ ], TerraDataSubsetter.prototype, "showHistoryPanel", 2);
2567
+ __decorateClass([
2568
+ n({ reflect: true, attribute: "job-id" })
2569
+ ], TerraDataSubsetter.prototype, "jobId", 2);
2570
+ __decorateClass([
2571
+ n({ attribute: "bearer-token" })
2572
+ ], TerraDataSubsetter.prototype, "bearerToken", 2);
2573
+ __decorateClass([
2574
+ n()
2575
+ ], TerraDataSubsetter.prototype, "features", 2);
2576
+ __decorateClass([
2577
+ n({ reflect: true })
2578
+ ], TerraDataSubsetter.prototype, "dialog", 2);
2579
+ __decorateClass([
2580
+ n({ reflect: true, type: Boolean, attribute: "is-history-view" })
2581
+ ], TerraDataSubsetter.prototype, "isHistoryView", 2);
2582
+ __decorateClass([
2583
+ r()
2584
+ ], TerraDataSubsetter.prototype, "collectionWithServices", 2);
2585
+ __decorateClass([
2586
+ r()
2587
+ ], TerraDataSubsetter.prototype, "selectedVariables", 2);
2588
+ __decorateClass([
2589
+ r()
2590
+ ], TerraDataSubsetter.prototype, "selectedDimensionIndexes", 2);
2591
+ __decorateClass([
2592
+ r()
2593
+ ], TerraDataSubsetter.prototype, "expandedVariableGroups", 2);
2594
+ __decorateClass([
2595
+ r()
2596
+ ], TerraDataSubsetter.prototype, "variableFilterText", 2);
2597
+ __decorateClass([
2598
+ r()
2599
+ ], TerraDataSubsetter.prototype, "touchedFields", 2);
2600
+ __decorateClass([
2601
+ r()
2602
+ ], TerraDataSubsetter.prototype, "spatialSelection", 2);
2603
+ __decorateClass([
2604
+ r()
2605
+ ], TerraDataSubsetter.prototype, "shapeGeoJson", 2);
2606
+ __decorateClass([
2607
+ r()
2608
+ ], TerraDataSubsetter.prototype, "spatialLabel", 2);
2609
+ __decorateClass([
2610
+ r()
2611
+ ], TerraDataSubsetter.prototype, "selectedDateRange", 2);
2612
+ __decorateClass([
2613
+ r()
2614
+ ], TerraDataSubsetter.prototype, "selectedFormat", 2);
2615
+ __decorateClass([
2616
+ r()
2617
+ ], TerraDataSubsetter.prototype, "cancelingGetData", 2);
2618
+ __decorateClass([
2619
+ r()
2620
+ ], TerraDataSubsetter.prototype, "selectedTab", 2);
2621
+ __decorateClass([
2622
+ r()
2623
+ ], TerraDataSubsetter.prototype, "refineParameters", 2);
2624
+ __decorateClass([
2625
+ r()
2626
+ ], TerraDataSubsetter.prototype, "collectionSearchType", 2);
2627
+ __decorateClass([
2628
+ r()
2629
+ ], TerraDataSubsetter.prototype, "collectionSearchQuery", 2);
2630
+ __decorateClass([
2631
+ r()
2632
+ ], TerraDataSubsetter.prototype, "collectionSearchLoading", 2);
2633
+ __decorateClass([
2634
+ r()
2635
+ ], TerraDataSubsetter.prototype, "collectionSearchResults", 2);
2636
+ __decorateClass([
2637
+ r()
2638
+ ], TerraDataSubsetter.prototype, "collectionLoading", 2);
2639
+ __decorateClass([
2640
+ r()
2641
+ ], TerraDataSubsetter.prototype, "collectionAccordionOpen", 2);
2642
+ __decorateClass([
2643
+ r()
2644
+ ], TerraDataSubsetter.prototype, "dataAccessMode", 2);
2645
+ __decorateClass([
2646
+ r()
2647
+ ], TerraDataSubsetter.prototype, "validationError", 2);
2648
+ __decorateClass([
2649
+ r()
2650
+ ], TerraDataSubsetter.prototype, "harmonyRequestError", 2);
2651
+ __decorateClass([
2652
+ r()
2653
+ ], TerraDataSubsetter.prototype, "granuleMinDate", 2);
2654
+ __decorateClass([
2655
+ r()
2656
+ ], TerraDataSubsetter.prototype, "granuleMaxDate", 2);
2657
+ __decorateClass([
2658
+ r()
2659
+ ], TerraDataSubsetter.prototype, "giovanniConfiguredVariables", 2);
2660
+ __decorateClass([
2661
+ e('[part~="spatial-picker"]')
2662
+ ], TerraDataSubsetter.prototype, "spatialPicker", 2);
2663
+ __decorateClass([
2664
+ e("terra-dialog")
2665
+ ], TerraDataSubsetter.prototype, "dialogElement", 2);
2666
+ __decorateClass([
2667
+ watch(["jobId"], { waitUntilFirstUpdate: true })
2668
+ ], TerraDataSubsetter.prototype, "jobIdChanged", 1);
2669
+ __decorateClass([
2670
+ watch(["shortName", "version"])
2671
+ ], TerraDataSubsetter.prototype, "shortNameAndVersionChanged", 1);
2672
+ __decorateClass([
2673
+ watch("collectionEntryId", { waitUntilFirstUpdate: true })
2674
+ ], TerraDataSubsetter.prototype, "collectionEntryIdChanged", 1);
2675
+ __decorateClass([
2676
+ watch(["collectionWithServices"])
2677
+ ], TerraDataSubsetter.prototype, "collectionChanged", 1);
2678
+ __decorateClass([
2679
+ watch(["granuleMinDate", "granuleMaxDate"])
2680
+ ], TerraDataSubsetter.prototype, "granuleDatesChanged", 1);
2681
+ __decorateClass([
2682
+ watch("selectedFormat")
2683
+ ], TerraDataSubsetter.prototype, "selectedFormatChanged", 1);
2684
+ __decorateClass([
2685
+ debounce(500)
2686
+ ], TerraDataSubsetter.prototype, "handleCollectionSearch", 1);
2687
+
2688
+ export {
2689
+ TerraDataSubsetter
2690
+ };