@nasa-terra/components 0.0.191 → 0.0.192

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.245STXLU.js +266 -0
  4. package/cdn/chunks/chunk.24INYUDF.js +538 -0
  5. package/cdn/chunks/chunk.26GHOZ7N.js +32 -0
  6. package/cdn/chunks/chunk.27WWEW6V.js +104 -0
  7. package/cdn/chunks/chunk.2ANSTQHT.js +36 -0
  8. package/cdn/chunks/chunk.2C4BQS2H.js +186 -0
  9. package/cdn/chunks/chunk.2GKHFPDG.js +599 -0
  10. package/cdn/chunks/chunk.2KXNVEBU.js +32 -0
  11. package/cdn/chunks/chunk.2NRXB43M.js +19 -0
  12. package/cdn/chunks/chunk.2YVP3FRZ.js +231 -0
  13. package/cdn/chunks/chunk.3HMD5G6A.js +443 -0
  14. package/cdn/chunks/chunk.3JLTI64D.js +19 -0
  15. package/cdn/chunks/chunk.3OZIDRVV.js +29 -0
  16. package/cdn/chunks/chunk.3REYIBPS.js +34 -0
  17. package/cdn/chunks/chunk.3W7NW4IP.js +29 -0
  18. package/cdn/chunks/chunk.44A2OFJE.js +32 -0
  19. package/cdn/chunks/chunk.45RJD3VV.js +151 -0
  20. package/cdn/chunks/chunk.4E6YUD2P.js +294 -0
  21. package/cdn/chunks/chunk.4M4SA4VL.js +155 -0
  22. package/cdn/chunks/chunk.4MXAJRHY.js +663 -0
  23. package/cdn/chunks/chunk.4OEMN3MA.js +190 -0
  24. package/cdn/chunks/chunk.4V3MHTHA.js +19 -0
  25. package/cdn/chunks/chunk.4WNBCYY4.js +134 -0
  26. package/cdn/chunks/chunk.4Y35UDBM.js +35 -0
  27. package/cdn/chunks/chunk.53PUY3ZS.js +110 -0
  28. package/cdn/chunks/chunk.56S57ULO.js +158 -0
  29. package/cdn/chunks/chunk.5MJBTEGL.js +49 -0
  30. package/cdn/chunks/chunk.5QSRCR4F.js +19 -0
  31. package/cdn/chunks/chunk.5ZXZFXF3.js +19 -0
  32. package/cdn/chunks/chunk.64L3DD6Q.js +19 -0
  33. package/cdn/chunks/chunk.6A2ZNIEO.js +19 -0
  34. package/cdn/chunks/chunk.6GG7OO3R.js +19 -0
  35. package/cdn/chunks/chunk.6RVIWT4A.js +188 -0
  36. package/cdn/chunks/chunk.7IQDUVYV.js +33 -0
  37. package/cdn/chunks/chunk.7M4SKAG4.js +19 -0
  38. package/cdn/chunks/chunk.7WSYDEHF.js +19 -0
  39. package/cdn/chunks/chunk.7XJKHZU3.js +39 -0
  40. package/cdn/chunks/chunk.A5N5AY4C.js +29 -0
  41. package/cdn/chunks/chunk.AOCK57QX.js +32 -0
  42. package/cdn/chunks/chunk.AUTKKBC5.js +241 -0
  43. package/cdn/chunks/chunk.AZ6WPUFH.js +19 -0
  44. package/cdn/chunks/chunk.B5S3NM7F.js +19 -0
  45. package/cdn/chunks/chunk.B7WNQ5PO.js +29 -0
  46. package/cdn/chunks/chunk.BAQHLVAK.js +19 -0
  47. package/cdn/chunks/chunk.BD3FY2DX.js +945 -0
  48. package/cdn/chunks/chunk.BH4BHYZF.js +19 -0
  49. package/cdn/chunks/chunk.BJ5T462Y.js +123 -0
  50. package/cdn/chunks/chunk.BPVSVPVN.js +19 -0
  51. package/cdn/chunks/chunk.BTKS3XOS.js +19 -0
  52. package/cdn/chunks/chunk.BUNK6WCA.js +19 -0
  53. package/cdn/chunks/chunk.BX4SOFZN.js +29 -0
  54. package/cdn/chunks/chunk.BXX2TOJD.js +377 -0
  55. package/cdn/chunks/chunk.C5SUSFPR.js +19 -0
  56. package/cdn/chunks/chunk.C6YX7LF2.js +19 -0
  57. package/cdn/chunks/chunk.CFW3RCL2.js +32 -0
  58. package/cdn/chunks/chunk.CQER7LGP.js +135 -0
  59. package/cdn/chunks/chunk.CQNIDQAS.js +29 -0
  60. package/cdn/chunks/chunk.CSUI7ZCT.js +658 -0
  61. package/cdn/chunks/chunk.CSVBPSJG.js +893 -0
  62. package/cdn/chunks/chunk.CWCAKMDC.js +29 -0
  63. package/cdn/chunks/chunk.DPSHTZ6P.js +392 -0
  64. package/cdn/chunks/chunk.DPW4KE3J.js +35 -0
  65. package/cdn/chunks/chunk.DTOJJOLD.js +19 -0
  66. package/cdn/chunks/chunk.DVTAL6AU.js +539 -0
  67. package/cdn/chunks/chunk.E2WN7IE3.js +29 -0
  68. package/cdn/chunks/chunk.EAQXXCFO.js +19 -0
  69. package/cdn/chunks/chunk.ET5DXSTJ.js +230 -0
  70. package/cdn/chunks/chunk.EYJ7P7C5.js +19 -0
  71. package/cdn/chunks/chunk.FIEZKD4M.js +170 -0
  72. package/cdn/chunks/chunk.FLXIUURB.js +330 -0
  73. package/cdn/chunks/chunk.FRXDO4TZ.js +29 -0
  74. package/cdn/chunks/chunk.FSSESF75.js +19 -0
  75. package/cdn/chunks/chunk.FST3PZ4D.js +2546 -0
  76. package/cdn/chunks/chunk.FT3IPXUI.js +32 -0
  77. package/cdn/chunks/chunk.G3CPLL72.js +19 -0
  78. package/cdn/chunks/chunk.G6PX4ZZR.js +78 -0
  79. package/cdn/chunks/chunk.GLC3GLWY.js +359 -0
  80. package/cdn/chunks/chunk.GQYYZEYB.js +29 -0
  81. package/cdn/chunks/chunk.H5WQMCJJ.js +234 -0
  82. package/cdn/chunks/chunk.H6IRY4OL.js +1197 -0
  83. package/cdn/chunks/chunk.HJMZJ4N5.js +32 -0
  84. package/cdn/chunks/chunk.HLQ3QMJC.js +19 -0
  85. package/cdn/chunks/chunk.HMPCGKTE.js +224 -0
  86. package/cdn/chunks/chunk.HTXCIC4D.js +19 -0
  87. package/cdn/chunks/chunk.HWGUV5FW.js +41 -0
  88. package/cdn/chunks/chunk.I2DUTZ2T.js +33 -0
  89. package/cdn/chunks/chunk.IG3H5AIK.js +60 -0
  90. package/cdn/chunks/chunk.IJM6CDFW.js +19 -0
  91. package/cdn/chunks/chunk.IQYQG42U.js +19 -0
  92. package/cdn/chunks/chunk.IUXV7RBL.js +29 -0
  93. package/cdn/chunks/chunk.IXHOSB76.js +19 -0
  94. package/cdn/chunks/chunk.IYDWKATS.js +904 -0
  95. package/cdn/chunks/chunk.JCC5JYVG.js +196 -0
  96. package/cdn/chunks/chunk.JFLGXCKZ.js +19 -0
  97. package/cdn/chunks/chunk.JGY4EGZC.js +60 -0
  98. package/cdn/chunks/chunk.JLQCZDIY.js +29 -0
  99. package/cdn/chunks/chunk.K3RQ7AFD.js +19 -0
  100. package/cdn/chunks/chunk.K4PU2JQ6.js +138 -0
  101. package/cdn/chunks/chunk.K4ZAN4CN.js +35 -0
  102. package/cdn/chunks/chunk.K7U7MVEQ.js +56075 -0
  103. package/cdn/chunks/chunk.KF5FM4UM.js +94 -0
  104. package/cdn/chunks/chunk.KRUULCP6.js +35 -0
  105. package/cdn/chunks/chunk.KTQLYAOB.js +2615 -0
  106. package/cdn/chunks/chunk.L2R7AMTX.js +19 -0
  107. package/cdn/chunks/chunk.L7FYC6LU.js +32 -0
  108. package/cdn/chunks/chunk.LCZ7CTUM.js +19 -0
  109. package/cdn/chunks/chunk.LDXOXMSA.js +19 -0
  110. package/cdn/chunks/chunk.LG32OSKX.js +68 -0
  111. package/cdn/chunks/chunk.LJIY5NZ2.js +30 -0
  112. package/cdn/chunks/chunk.LWNGQ3V4.js +29 -0
  113. package/cdn/chunks/chunk.LYQ6YFGG.js +99 -0
  114. package/cdn/chunks/chunk.MA5VVFFT.js +29 -0
  115. package/cdn/chunks/chunk.MHATFZ67.js +19 -0
  116. package/cdn/chunks/chunk.MRFDIT24.js +29 -0
  117. package/cdn/chunks/chunk.MRRU67I2.js +29 -0
  118. package/cdn/chunks/chunk.MWU5BT2I.js +128 -0
  119. package/cdn/chunks/chunk.N6YE5MVP.js +29 -0
  120. package/cdn/chunks/chunk.N73S5M22.js +32 -0
  121. package/cdn/chunks/chunk.N74CAU67.js +32 -0
  122. package/cdn/chunks/chunk.NBVZOPJI.js +616 -0
  123. package/cdn/chunks/chunk.NDSC57Q5.js +19 -0
  124. package/cdn/chunks/chunk.NQHSSDFG.js +19 -0
  125. package/cdn/chunks/chunk.NUWLRNQB.js +161 -0
  126. package/cdn/chunks/chunk.O5JW24LZ.js +36 -0
  127. package/cdn/chunks/chunk.OG47UMA5.js +1259 -0
  128. package/cdn/chunks/chunk.OK2FJZAC.js +29 -0
  129. package/cdn/chunks/chunk.OQOUFXO5.js +19 -0
  130. package/cdn/chunks/chunk.OQXKI5GJ.js +86 -0
  131. package/cdn/chunks/chunk.P2M4CQ5P.js +33 -0
  132. package/cdn/chunks/chunk.P5TSNROJ.js +537 -0
  133. package/cdn/chunks/chunk.P7CV4I3K.js +74 -0
  134. package/cdn/chunks/chunk.PHUBZRQC.js +83 -0
  135. package/cdn/chunks/chunk.PILWENSQ.js +92 -0
  136. package/cdn/chunks/chunk.PJ3IJJYS.js +19 -0
  137. package/cdn/chunks/chunk.PP3XLO5P.js +34 -0
  138. package/cdn/chunks/chunk.PRQLTMQC.js +136 -0
  139. package/cdn/chunks/chunk.PTCT3TYT.js +357 -0
  140. package/cdn/chunks/chunk.PTK3X5ML.js +9743 -0
  141. package/cdn/chunks/chunk.PUQV3TET.js +99 -0
  142. package/cdn/chunks/chunk.PUS7Y5TV.js +1975 -0
  143. package/cdn/chunks/chunk.PYFO4TDY.js +71 -0
  144. package/cdn/chunks/chunk.PYRLBGCN.js +474 -0
  145. package/cdn/chunks/chunk.Q4J6KRAB.js +310 -0
  146. package/cdn/chunks/chunk.Q6EGX4BU.js +19 -0
  147. package/cdn/chunks/chunk.QB6OILCE.js +19 -0
  148. package/cdn/chunks/chunk.QL6AJSHA.js +19 -0
  149. package/cdn/chunks/chunk.QLVPPBKP.js +19 -0
  150. package/cdn/chunks/chunk.QS2PWRLO.js +293 -0
  151. package/cdn/chunks/chunk.QZTA6VVX.js +32 -0
  152. package/cdn/chunks/chunk.R2AKYP36.js +19 -0
  153. package/cdn/chunks/chunk.RBZCWRRQ.js +29 -0
  154. package/cdn/chunks/chunk.RD6K7VHR.js +19 -0
  155. package/cdn/chunks/chunk.REPAPQYQ.js +19 -0
  156. package/cdn/chunks/chunk.RERDMEOR.js +195 -0
  157. package/cdn/chunks/chunk.RII5KPMA.js +19 -0
  158. package/cdn/chunks/chunk.RLWFZOAQ.js +32 -0
  159. package/cdn/chunks/chunk.RR7Z7BPS.js +19 -0
  160. package/cdn/chunks/chunk.RRZ6U2ME.js +19 -0
  161. package/cdn/chunks/chunk.RXWLUABB.js +47 -0
  162. package/cdn/chunks/chunk.S62TAS73.js +276 -0
  163. package/cdn/chunks/chunk.SPZEQOKO.js +93 -0
  164. package/cdn/chunks/chunk.SQIH7CTF.js +19 -0
  165. package/cdn/chunks/chunk.SSV6F5FN.js +259 -0
  166. package/cdn/chunks/chunk.STFEACGD.js +19 -0
  167. package/cdn/chunks/chunk.SZE3XMGB.js +29 -0
  168. package/cdn/chunks/chunk.T4HBNQKM.js +29 -0
  169. package/cdn/chunks/chunk.TE3JDUXK.js +36 -0
  170. package/cdn/chunks/chunk.TGHIEUXU.js +32 -0
  171. package/cdn/chunks/chunk.TNMUVPYV.js +29 -0
  172. package/cdn/chunks/chunk.TQQ2KJQP.js +493 -0
  173. package/cdn/chunks/chunk.TV5IMGDS.js +82 -0
  174. package/cdn/chunks/chunk.U3IBIDXE.js +19 -0
  175. package/cdn/chunks/chunk.U7Y67S2C.js +19 -0
  176. package/cdn/chunks/chunk.UCCUOTF6.js +19 -0
  177. package/cdn/chunks/chunk.UDACLO72.js +33 -0
  178. package/cdn/chunks/chunk.UKAWFAYP.js +524 -0
  179. package/cdn/chunks/chunk.UTYHZRYG.js +113 -0
  180. package/cdn/chunks/chunk.UWCPGTVV.js +32 -0
  181. package/cdn/chunks/chunk.UWRZGIR3.js +551 -0
  182. package/cdn/chunks/chunk.UZPINX4J.js +610 -0
  183. package/cdn/chunks/chunk.V3MUNLZP.js +29 -0
  184. package/cdn/chunks/chunk.V6KFRX6Q.js +19 -0
  185. package/cdn/chunks/chunk.V6YORIDQ.js +132 -0
  186. package/cdn/chunks/chunk.VB3KDLU6.js +29 -0
  187. package/cdn/chunks/chunk.VDXXAQWU.js +29 -0
  188. package/cdn/chunks/chunk.VGKRX5H5.js +278 -0
  189. package/cdn/chunks/chunk.VHVI2N6K.js +34 -0
  190. package/cdn/chunks/chunk.VPEEKXD6.js +63 -0
  191. package/cdn/chunks/chunk.VWXS72MS.js +19 -0
  192. package/cdn/chunks/chunk.VY4A7VXP.js +19 -0
  193. package/cdn/chunks/chunk.W5OQMP5C.js +29 -0
  194. package/cdn/chunks/chunk.W7YINCCY.js +29 -0
  195. package/cdn/chunks/chunk.WTF7NFZZ.js +36 -0
  196. package/cdn/chunks/chunk.X27AII7Z.js +19 -0
  197. package/cdn/chunks/chunk.X6F5AXSA.js +62 -0
  198. package/cdn/chunks/chunk.XB4O6ZSP.js +139 -0
  199. package/cdn/chunks/chunk.XBQ73UMK.js +37 -0
  200. package/cdn/chunks/chunk.XE4NOQA4.js +19 -0
  201. package/cdn/chunks/chunk.XHVFPYZC.js +19 -0
  202. package/cdn/chunks/chunk.XLP5YNJK.js +19 -0
  203. package/cdn/chunks/chunk.XOOKGSCN.js +35 -0
  204. package/cdn/chunks/chunk.XRKVQYVI.js +294 -0
  205. package/cdn/chunks/chunk.XSL6GUNV.js +45 -0
  206. package/cdn/chunks/chunk.XTQYMH4X.js +915 -0
  207. package/cdn/chunks/chunk.XVNO5RTC.js +478 -0
  208. package/cdn/chunks/chunk.XWUX5XJQ.js +19 -0
  209. package/cdn/chunks/chunk.XZFUPKPW.js +29 -0
  210. package/cdn/chunks/chunk.Y4MUXZI3.js +33 -0
  211. package/cdn/chunks/chunk.Z5JWSUN3.js +19 -0
  212. package/cdn/chunks/chunk.ZJZ2OUC4.js +37 -0
  213. package/cdn/chunks/chunk.ZSNXJ3BL.js +29 -0
  214. package/cdn/chunks/chunk.ZWCA3BKW.js +68 -0
  215. package/cdn/chunks/chunk.ZZATCATC.js +29 -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 +2 -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 +433 -213
  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 +1 -1
  393. package/cdn/react/index.js +155 -155
  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 +88 -77
  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 +56 -41
  436. package/cdn/web-types.json +145 -113
  437. package/dist/apis/harmony.api.d.ts +10 -1
  438. package/dist/chunks/chunk.2D55HJ64.js +1 -0
  439. package/dist/chunks/chunk.2GO7TMLP.js +1 -0
  440. package/dist/chunks/chunk.2GYNGU2K.js +1 -0
  441. package/dist/chunks/chunk.2HHUVNE2.js +1 -0
  442. package/dist/chunks/chunk.2IJJATB5.js +1 -0
  443. package/dist/chunks/chunk.2PPDUXC4.js +1 -0
  444. package/dist/chunks/chunk.2TZJ5OSU.js +121 -0
  445. package/dist/chunks/chunk.33ODMKXB.js +1 -0
  446. package/dist/chunks/chunk.37B2FLZJ.js +1 -0
  447. package/dist/chunks/chunk.3G3CSN3G.js +1 -0
  448. package/dist/chunks/chunk.3GT4NYNA.js +1 -0
  449. package/dist/chunks/chunk.3OKIF2KP.js +1 -0
  450. package/dist/chunks/chunk.3OLIE46J.js +19 -0
  451. package/dist/chunks/chunk.3S6SXGFQ.js +1 -0
  452. package/dist/chunks/chunk.3UX5QRYF.js +1 -0
  453. package/dist/chunks/chunk.43SHAFPE.js +1 -0
  454. package/dist/chunks/chunk.47FP7IRS.js +1 -0
  455. package/dist/chunks/chunk.4CAGPPMV.js +38 -0
  456. package/dist/chunks/chunk.4CI5DWX7.js +1 -0
  457. package/dist/chunks/chunk.4SKNFNU3.js +1 -0
  458. package/dist/chunks/chunk.4YQGPE6J.js +64 -0
  459. package/dist/chunks/chunk.4ZVIPOSQ.js +1 -0
  460. package/dist/chunks/chunk.567W2YB4.js +1 -0
  461. package/dist/chunks/chunk.57KBJQ5Z.js +1 -0
  462. package/dist/chunks/chunk.5OO3UVJO.js +1 -0
  463. package/dist/chunks/chunk.5TSON4Q5.js +1 -0
  464. package/dist/chunks/chunk.5UG7GGUP.js +1 -0
  465. package/dist/chunks/chunk.5XVYJITF.js +1 -0
  466. package/dist/chunks/chunk.6QTDPCVI.js +1 -0
  467. package/dist/chunks/chunk.6UWS4R34.js +8 -0
  468. package/dist/chunks/chunk.766PN3VI.js +1 -0
  469. package/dist/chunks/chunk.7IS3PQKN.js +1 -0
  470. package/dist/chunks/chunk.7JD2UT6A.js +1 -0
  471. package/dist/chunks/chunk.7VFYUGD6.js +1 -0
  472. package/dist/chunks/chunk.7X2NWNZP.js +55 -0
  473. package/dist/chunks/chunk.ACFE5TVJ.js +25 -0
  474. package/dist/chunks/chunk.AD4SBK65.js +1 -0
  475. package/dist/chunks/chunk.AHFV6WBO.js +113 -0
  476. package/dist/chunks/chunk.AN2CNNH3.js +20 -0
  477. package/dist/chunks/chunk.B2I3FFIQ.js +1 -0
  478. package/dist/chunks/chunk.BAGXAJKO.js +1 -0
  479. package/dist/chunks/chunk.BAYWCQTO.js +1 -0
  480. package/dist/chunks/chunk.BK6SKY54.js +1 -0
  481. package/dist/chunks/chunk.BOBV4O46.js +75 -0
  482. package/dist/chunks/chunk.BT6QLSOO.js +1 -0
  483. package/dist/chunks/chunk.BV6IZ2QN.js +127 -0
  484. package/dist/chunks/chunk.BVG7OM4Q.js +1 -0
  485. package/dist/chunks/chunk.CD6I4VZO.js +1 -0
  486. package/dist/chunks/chunk.CF6D473M.js +280 -0
  487. package/dist/chunks/chunk.CQLL2YKN.js +26 -0
  488. package/dist/chunks/chunk.CW47XTQB.js +1 -0
  489. package/dist/chunks/chunk.D4KXKEFI.js +1 -0
  490. package/dist/chunks/chunk.DF6IRZMZ.js +1157 -0
  491. package/dist/chunks/chunk.E76UUHH4.js +1 -0
  492. package/dist/chunks/chunk.EM4IAMRI.js +1 -0
  493. package/dist/chunks/chunk.ENQAS3E3.js +39 -0
  494. package/dist/chunks/chunk.ENXCABUB.js +1 -0
  495. package/dist/chunks/chunk.EQHUPMJQ.js +1 -0
  496. package/dist/chunks/chunk.EQJX6O4V.js +572 -0
  497. package/dist/chunks/chunk.F3PXS6XR.js +1 -0
  498. package/dist/chunks/chunk.FAWTVVL4.js +1 -0
  499. package/dist/chunks/chunk.FJIJEA4W.js +11 -0
  500. package/dist/chunks/chunk.FRY7JWSR.js +1 -0
  501. package/dist/chunks/chunk.FSHYXKJI.js +300 -0
  502. package/dist/chunks/chunk.G7H6WIM7.js +1 -0
  503. package/dist/chunks/chunk.GJG2G54S.js +62 -0
  504. package/dist/chunks/chunk.GKYP6GCC.js +1 -0
  505. package/dist/chunks/chunk.GQZN3IYC.js +1 -0
  506. package/dist/chunks/chunk.GUKZS6H7.js +1 -0
  507. package/dist/chunks/chunk.GUQPQH73.js +55 -0
  508. package/dist/chunks/chunk.H4TEESQU.js +1 -0
  509. package/dist/chunks/chunk.HEEYAQNP.js +1 -0
  510. package/dist/chunks/chunk.HJIPLW5J.js +37 -0
  511. package/dist/chunks/chunk.HLKDWTZV.js +41 -0
  512. package/dist/chunks/chunk.HVO4YL55.js +4 -0
  513. package/dist/chunks/chunk.HXJR743G.js +1 -0
  514. package/dist/chunks/chunk.HY6RFKDY.js +1 -0
  515. package/dist/chunks/chunk.HZGAYAHT.js +1 -0
  516. package/dist/chunks/chunk.I3GHWZC4.js +16 -0
  517. package/dist/chunks/chunk.I6BL3WPE.js +1 -0
  518. package/dist/chunks/chunk.IHP65UGR.js +33 -0
  519. package/dist/chunks/chunk.IN7ZOX6F.js +1 -0
  520. package/dist/chunks/chunk.IOFVAK65.js +2 -0
  521. package/dist/chunks/chunk.ISBUK3L4.js +1 -0
  522. package/dist/chunks/chunk.IWQ6YFE2.js +145 -0
  523. package/dist/chunks/chunk.JDE47ALB.js +1 -0
  524. package/dist/chunks/chunk.JDUOQDJ3.js +100 -0
  525. package/dist/chunks/chunk.JE6M4M4S.js +65 -0
  526. package/dist/chunks/chunk.JUJ7Y22D.js +74 -0
  527. package/dist/chunks/chunk.JZYLEEB7.js +1 -0
  528. package/dist/chunks/chunk.K6T46UOF.js +1 -0
  529. package/dist/chunks/chunk.KG5CMWFL.js +1 -0
  530. package/dist/chunks/chunk.KGXZLDN7.js +1 -0
  531. package/dist/chunks/chunk.KIZLB2ZY.js +1 -0
  532. package/dist/chunks/chunk.KMMLLCHB.js +1 -0
  533. package/dist/chunks/chunk.KPNCPULO.js +1 -0
  534. package/dist/chunks/chunk.KQD2HFDR.js +1 -0
  535. package/dist/chunks/chunk.KRHZH55I.js +1 -0
  536. package/dist/chunks/chunk.KTSFHPUH.js +26 -0
  537. package/dist/chunks/chunk.KWHNDO3M.js +1 -0
  538. package/dist/chunks/chunk.L2WWAWYC.js +1 -0
  539. package/dist/chunks/chunk.L3PZPPIQ.js +1 -0
  540. package/dist/chunks/chunk.L45W3S3B.js +1 -0
  541. package/dist/chunks/chunk.LFEM3FJX.js +1 -0
  542. package/dist/chunks/chunk.LH7RWUQZ.js +24 -0
  543. package/dist/chunks/chunk.LL6BEIZA.js +5 -0
  544. package/dist/chunks/chunk.LLZSYM64.js +1 -0
  545. package/dist/chunks/chunk.LM4RHNKJ.js +30 -0
  546. package/dist/chunks/chunk.LVWUQXWQ.js +1 -0
  547. package/dist/chunks/chunk.MBFAWLMY.js +9 -0
  548. package/dist/chunks/chunk.MDEHAIAG.js +1 -0
  549. package/dist/chunks/chunk.MK6COBAF.js +43 -0
  550. package/dist/chunks/chunk.MPM3TXSL.js +80 -0
  551. package/dist/chunks/chunk.NA26KJ6N.js +1 -0
  552. package/dist/chunks/chunk.NBJ7ET7E.js +1 -0
  553. package/dist/chunks/chunk.NCDC7TOR.js +1 -0
  554. package/dist/chunks/chunk.NEY2SQ2K.js +14 -0
  555. package/dist/chunks/chunk.NJJIUYH6.js +12 -0
  556. package/dist/chunks/chunk.NXGSNQLW.js +1 -0
  557. package/dist/chunks/chunk.O6Q5WBJ5.js +55 -0
  558. package/dist/chunks/chunk.OCUTIAAQ.js +1 -0
  559. package/dist/chunks/chunk.OFMDUJXM.js +1 -0
  560. package/dist/chunks/chunk.OGQQV2BX.js +1 -0
  561. package/dist/chunks/chunk.ON5BCN2P.js +1 -0
  562. package/dist/chunks/chunk.P5WP3ZNR.js +1 -0
  563. package/dist/chunks/chunk.PALWDZSA.js +1 -0
  564. package/dist/chunks/chunk.PJQAURNT.js +1 -0
  565. package/dist/chunks/chunk.PX2P3YX5.js +142 -0
  566. package/dist/chunks/chunk.PYEHMPWX.js +6 -0
  567. package/dist/chunks/chunk.Q3LRI55J.js +11 -0
  568. package/dist/chunks/chunk.QDUXLZXC.js +51 -0
  569. package/dist/chunks/chunk.QEKD7PQ4.js +1 -0
  570. package/dist/chunks/chunk.QFFYKOAS.js +1 -0
  571. package/dist/chunks/chunk.QH2WOGME.js +1 -0
  572. package/dist/chunks/chunk.QLEWT4JQ.js +23 -0
  573. package/dist/chunks/chunk.QMFEAVMN.js +17 -0
  574. package/dist/chunks/chunk.QV2ZY4DD.js +1 -0
  575. package/dist/chunks/chunk.QV5ITZ7D.js +1 -0
  576. package/dist/chunks/chunk.R5PRDVSU.js +48 -0
  577. package/dist/chunks/chunk.R6Q4JCND.js +1 -0
  578. package/dist/chunks/chunk.REKMTQRY.js +1 -0
  579. package/dist/chunks/chunk.RJML3ZEW.js +1 -0
  580. package/dist/chunks/chunk.ROCTMAMM.js +1 -0
  581. package/dist/chunks/chunk.RTXL2G7J.js +99 -0
  582. package/dist/chunks/chunk.S74OFI5C.js +1 -0
  583. package/dist/chunks/chunk.SBMSU6KI.js +35 -0
  584. package/dist/chunks/chunk.SGESE6DO.js +1 -0
  585. package/dist/chunks/chunk.SIB5Q6QQ.js +1 -0
  586. package/dist/chunks/chunk.SNMZJK77.js +1 -0
  587. package/dist/chunks/chunk.SP77OFFN.js +1 -0
  588. package/dist/chunks/chunk.STV7F7TN.js +1 -0
  589. package/dist/chunks/chunk.SU44CMPF.js +1 -0
  590. package/dist/chunks/chunk.SVLWTIBE.js +1 -0
  591. package/dist/chunks/chunk.SXBEKR3M.js +1 -0
  592. package/dist/chunks/chunk.SYEGBJVG.js +157 -0
  593. package/dist/chunks/chunk.T2BWAH5M.js +1 -0
  594. package/dist/chunks/chunk.T7WOIW6P.js +1 -0
  595. package/dist/chunks/chunk.TAQPGW7M.js +1 -0
  596. package/dist/chunks/chunk.TEOQ7XY3.js +67 -0
  597. package/dist/chunks/chunk.TGY77T44.js +122 -0
  598. package/dist/chunks/chunk.TK2JSJCN.js +12 -0
  599. package/dist/chunks/chunk.TPV33XNJ.js +1 -0
  600. package/dist/chunks/chunk.TTSYVAEW.js +1 -0
  601. package/dist/chunks/chunk.TVO3XZ2N.js +1 -0
  602. package/dist/chunks/chunk.TXOI254L.js +47 -0
  603. package/dist/chunks/chunk.TYI6WGK7.js +1 -0
  604. package/dist/chunks/chunk.U3F7WCPA.js +1 -0
  605. package/dist/chunks/chunk.U465JMCV.js +1 -0
  606. package/dist/chunks/chunk.U6HUBMNB.js +1 -0
  607. package/dist/chunks/chunk.U7OFS4YO.js +1 -0
  608. package/dist/chunks/chunk.UEIOQPHW.js +9 -0
  609. package/dist/chunks/chunk.UKUWK3UY.js +1 -0
  610. package/dist/chunks/chunk.UKWCOY7A.js +1 -0
  611. package/dist/chunks/chunk.UNRENVA4.js +1 -0
  612. package/dist/chunks/chunk.UOWK4M4L.js +1 -0
  613. package/dist/chunks/chunk.V242FK7Q.js +1 -0
  614. package/dist/chunks/chunk.V4CGJNAJ.js +30 -0
  615. package/dist/chunks/chunk.VDIB3NRZ.js +1 -0
  616. package/dist/chunks/chunk.VFE2HBPZ.js +20 -0
  617. package/dist/chunks/chunk.VP5IYIOB.js +8 -0
  618. package/dist/chunks/chunk.W2QZOO6Z.js +1 -0
  619. package/dist/chunks/chunk.W6SU4PRC.js +1 -0
  620. package/dist/chunks/chunk.W7H2V3HN.js +27 -0
  621. package/dist/chunks/chunk.WAD5F7IY.js +1 -0
  622. package/dist/chunks/chunk.WAYKA4GY.js +1 -0
  623. package/dist/chunks/chunk.WEMSJJQN.js +300 -0
  624. package/dist/chunks/chunk.WFNB4UWK.js +1 -0
  625. package/dist/chunks/chunk.WGWLPC2C.js +1 -0
  626. package/dist/chunks/chunk.WLSBHYJK.js +780 -0
  627. package/dist/chunks/chunk.WNP2BTB4.js +43 -0
  628. package/dist/chunks/chunk.WOPNQVFQ.js +5 -0
  629. package/dist/chunks/chunk.WRJYRBGT.js +1 -0
  630. package/dist/chunks/chunk.WZVYVECU.js +1 -0
  631. package/dist/chunks/chunk.X3JEFEVB.js +1 -0
  632. package/dist/chunks/chunk.X5PXI5E6.js +1 -0
  633. package/dist/chunks/chunk.X74ZBUDB.js +22 -0
  634. package/dist/chunks/chunk.XB3O7ORG.js +1 -0
  635. package/dist/chunks/chunk.XFH26EMI.js +1 -0
  636. package/dist/chunks/chunk.XTDTWZSX.js +1 -0
  637. package/dist/chunks/chunk.XVC3SMLN.js +1 -0
  638. package/dist/chunks/chunk.XYMWO3Y6.js +1 -0
  639. package/dist/chunks/chunk.Y2G3I3B3.js +35 -0
  640. package/dist/chunks/chunk.Y4SZNHG5.js +1 -0
  641. package/dist/chunks/chunk.Y4U7SQM2.js +1 -0
  642. package/dist/chunks/chunk.Y5FRCL7O.js +1 -0
  643. package/dist/chunks/chunk.Y5HJPERY.js +1 -0
  644. package/dist/chunks/chunk.YKDLYMHH.js +115 -0
  645. package/dist/chunks/chunk.YN3KH4A6.js +1 -0
  646. package/dist/chunks/chunk.YN755QKE.js +154 -0
  647. package/dist/chunks/chunk.YZLKAK5D.js +1 -0
  648. package/dist/chunks/chunk.Z44ETYQS.js +1 -0
  649. package/dist/chunks/chunk.Z5S2XQG5.js +1 -0
  650. package/dist/chunks/chunk.ZAZOHAFA.js +1 -0
  651. package/dist/chunks/chunk.ZUHRBHV4.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 +2 -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 +433 -213
  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 +1 -1
  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.191-py3-none-any.whl +0 -0
  868. package/dist/terra_ui_components-0.0.191.tar.gz +0 -0
  869. package/dist/types/vue/index.d.ts +88 -77
  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 +56 -41
  874. package/dist/web-types.json +145 -113
  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
@@ -1,2555 +0,0 @@
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.MNHYBM5Z.js";
11
- import {
12
- TerraLogin
13
- } from "./chunk.FFIWGCVU.js";
14
- import {
15
- TerraDialog
16
- } from "./chunk.WV5U6JXW.js";
17
- import {
18
- HarmonyRequestController
19
- } from "./chunk.R2K7YI7D.js";
20
- import {
21
- HarmonyRequest
22
- } from "./chunk.26UZKSB4.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.O4R7PTMM.js";
33
- import {
34
- TerraSlider
35
- } from "./chunk.YZJY5KHP.js";
36
- import {
37
- TerraMenu
38
- } from "./chunk.R6FQRIIQ.js";
39
- import {
40
- TerraMenuItem
41
- } from "./chunk.BP6TJGHY.js";
42
- import {
43
- TerraDatePicker
44
- } from "./chunk.3OYBNUEI.js";
45
- import {
46
- CollectionController
47
- } from "./chunk.3TXZPWC4.js";
48
- import {
49
- TerraSpatialPicker
50
- } from "./chunk.P6233WZY.js";
51
- import {
52
- TerraDropdown
53
- } from "./chunk.KYYZNB77.js";
54
- import {
55
- TerraInput
56
- } from "./chunk.ZEJSSTEK.js";
57
- import {
58
- QueryClientMixin
59
- } from "./chunk.DOUWGQFH.js";
60
- import {
61
- TerraLoader
62
- } from "./chunk.ZI54JMC5.js";
63
- import {
64
- getUTCDate
65
- } from "./chunk.TKSEPVAL.js";
66
- import {
67
- TerraButton
68
- } from "./chunk.3S7WMMIE.js";
69
- import {
70
- TerraAccordion
71
- } from "./chunk.NXTFWRHB.js";
72
- import {
73
- TerraIcon
74
- } from "./chunk.5CH4R2XF.js";
75
- import {
76
- getBasePath
77
- } from "./chunk.ZQVMOVOT.js";
78
- import {
79
- TerraAlert
80
- } from "./chunk.LY2MO4WB.js";
81
- import {
82
- watch
83
- } from "./chunk.MPVZOQYA.js";
84
- import {
85
- TerraElement,
86
- component_styles_default,
87
- e,
88
- n,
89
- r
90
- } from "./chunk.HUU6UOOJ.js";
91
- import {
92
- A,
93
- b
94
- } from "./chunk.RRCYT4LP.js";
95
- import {
96
- __decorateClass,
97
- __privateAdd,
98
- __privateGet,
99
- __privateMethod,
100
- __spreadProps,
101
- __spreadValues,
102
- init_buffer,
103
- init_dirname,
104
- init_process
105
- } from "./chunk.ZEOVK2FE.js";
106
-
107
- // src/components/data-subsetter/data-subsetter.component.ts
108
- init_dirname();
109
- init_buffer();
110
- init_process();
111
-
112
- // src/lib/jupyter.ts
113
- init_dirname();
114
- init_buffer();
115
- init_process();
116
- var JUPYTER_LITE_URL = "https://gesdisc.github.io/jupyterlite/lab/index.html";
117
- function openJupyterLiteWindow(readyCb) {
118
- const jupyterWindow = window.open(JUPYTER_LITE_URL, "_blank");
119
- if (!jupyterWindow) {
120
- console.error("Failed to open JupyterLite!");
121
- return;
122
- }
123
- window.addEventListener("message", (event) => readyCb(event, jupyterWindow), {
124
- once: true
125
- });
126
- return jupyterWindow;
127
- }
128
- function sendDataToJupyterNotebook(type, data) {
129
- openJupyterLiteWindow((event, jupyterWindow) => {
130
- var _a;
131
- if (((_a = event.data) == null ? void 0 : _a.type) !== "jupyterlite-ready") {
132
- return;
133
- }
134
- console.log("JupyterLite is ready!");
135
- jupyterWindow.postMessage(__spreadValues({ type }, data), "*");
136
- });
137
- }
138
-
139
- // src/services/cmr-variable.service.ts
140
- init_dirname();
141
- init_buffer();
142
- init_process();
143
- var CmrVariableService = class {
144
- /**
145
- * given a name and a list of variables, return the variable with the matching name
146
- */
147
- getVariableByName(name, variables) {
148
- var _a;
149
- if (!variables || !((_a = variables.items) == null ? void 0 : _a.length)) {
150
- return;
151
- }
152
- return variables.items.find((variable) => variable.umm.Name === name);
153
- }
154
- /**
155
- * given a variable, return the variable's display label
156
- * ex: Shortname = LongName (Units)
157
- */
158
- getVariableDisplayLabel(variable) {
159
- const { Name = "", LongName = "", Units = "" } = variable.umm;
160
- return `${Name}${Name && LongName && Name !== LongName ? ` = ${LongName}` : ""}${Units ? ` (${Units})` : ""}`;
161
- }
162
- };
163
- var cmrVariableService = new CmrVariableService();
164
- var cmr_variable_service_default = cmrVariableService;
165
-
166
- // src/components/data-subsetter/data-subsetter.component.ts
167
- var defaultOutputFormat = {
168
- key: "application/x-netcdf4",
169
- label: "NetCDF",
170
- description: "Download data in NetCDF format"
171
- };
172
- 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;
173
- var TerraDataSubsetter = class extends QueryClientMixin(TerraElement) {
174
- constructor() {
175
- super(...arguments);
176
- __privateAdd(this, _renderFooterForDialog);
177
- __privateAdd(this, _renderSizeInfo);
178
- __privateAdd(this, _renderSubsetOptions);
179
- __privateAdd(this, _renderSearchForCollection);
180
- __privateAdd(this, _renderOutputFormatSelection);
181
- __privateAdd(this, _renderDateRangeSelection);
182
- __privateAdd(this, _getCollectionDateRange);
183
- __privateAdd(this, _renderSpatialSelection);
184
- __privateAdd(this, _renderVariableSelection);
185
- __privateAdd(this, _renderDimensionGroup);
186
- __privateAdd(this, _setDimensionValue);
187
- __privateAdd(this, _renderDimensionSelection);
188
- __privateAdd(this, _filterVariableTree);
189
- __privateAdd(this, _handleVariableFilterChange);
190
- __privateAdd(this, _buildVariableTree);
191
- __privateAdd(this, _renderVariableTree);
192
- __privateAdd(this, _getAllGroupPaths);
193
- __privateAdd(this, _toggleGroupExpand);
194
- __privateAdd(this, _toggleExpandCollapseAll);
195
- __privateAdd(this, _toggleVariableSelection);
196
- __privateAdd(this, _markFieldTouched);
197
- __privateAdd(this, _resetDimensionSelection);
198
- __privateAdd(this, _isDimensionExcluded);
199
- __privateAdd(this, _getCommonSelectableDimensions);
200
- __privateAdd(this, _renderJobStatus);
201
- __privateAdd(this, _renderSelectedParams);
202
- __privateAdd(this, _cancelJob);
203
- __privateAdd(this, _getData);
204
- __privateAdd(this, _touchAllFields);
205
- __privateAdd(this, _numberOfFilesFoundEstimate);
206
- __privateAdd(this, _getDocumentationLinks);
207
- __privateAdd(this, _getDataLinks);
208
- __privateAdd(this, _hasAtLeastOneSubsetOption);
209
- __privateAdd(this, _hasSpatialSubset);
210
- __privateAdd(this, _renderJobMessage);
211
- __privateAdd(this, _getJobMessageText);
212
- __privateAdd(this, _estimateJobSize);
213
- __privateAdd(this, _refineParameters);
214
- __privateAdd(this, _backToSubsetOptions);
215
- __privateAdd(this, _viewRunningJob);
216
- __privateAdd(this, _handleDownloadSelect);
217
- __privateAdd(this, _downloadLinksAsTxt);
218
- __privateAdd(this, _downloadPythonScript);
219
- __privateAdd(this, _downloadEarthdataDownload);
220
- __privateAdd(this, _handleJupyterNotebookClick);
221
- __privateAdd(this, _renderAvailableTemporalRangeSection);
222
- __privateAdd(this, _renderAvailableSpatialRangeSection);
223
- __privateAdd(this, _renderDataAccessModeSelection);
224
- __privateAdd(this, _getGiovanniValidationError);
225
- this.showCollectionSearch = true;
226
- this.showHistoryPanel = true;
227
- this.isHistoryView = false;
228
- this.selectedVariables = [];
229
- this.selectedDimensionIndexes = {};
230
- this.expandedVariableGroups = /* @__PURE__ */ new Set();
231
- this.variableFilterText = "";
232
- this.touchedFields = /* @__PURE__ */ new Set();
233
- this.selectedDateRange = {
234
- startDate: null,
235
- endDate: null
236
- };
237
- this.selectedFormat = defaultOutputFormat;
238
- this.cancelingGetData = false;
239
- this.selectedTab = "web-links";
240
- this.refineParameters = false;
241
- this.collectionSearchType = "all";
242
- this.collectionSearchLoading = false;
243
- this.collectionLoading = false;
244
- this.collectionAccordionOpen = true;
245
- this.dataAccessMode = "original";
246
- __privateAdd(this, _collectionController, new CollectionController(this, {
247
- getCollectionEntryId: () => this.collectionEntryId,
248
- getBearerToken: () => this.bearerToken
249
- }));
250
- __privateAdd(this, _authController, new AuthController(this));
251
- __privateAdd(this, _harmonyRequestController, new HarmonyRequestController(this));
252
- __privateAdd(this, _resetAllParameters, () => {
253
- this.selectedVariables = [];
254
- if (__privateMethod(this, _hasSpatialSubset, hasSpatialSubset_fn).call(this)) {
255
- __privateGet(this, _resetSpatialSelection).call(this);
256
- }
257
- this.selectedDateRange = {
258
- startDate: null,
259
- endDate: null
260
- };
261
- this.touchedFields = /* @__PURE__ */ new Set();
262
- this.validationError = void 0;
263
- this.expandedVariableGroups = /* @__PURE__ */ new Set();
264
- this.requestUpdate();
265
- });
266
- __privateAdd(this, _handleDateChange, (e2) => {
267
- __privateMethod(this, _markFieldTouched, markFieldTouched_fn).call(this, "date");
268
- this.selectedDateRange = __spreadProps(__spreadValues({}, this.selectedDateRange), {
269
- startDate: e2.detail.startDate,
270
- endDate: e2.detail.endDate
271
- });
272
- });
273
- __privateAdd(this, _resetDateRangeSelection, () => {
274
- this.selectedDateRange = { startDate: null, endDate: null };
275
- });
276
- __privateAdd(this, _resetFormatSelection, () => {
277
- var _a;
278
- if ((_a = this.collectionWithServices) == null ? void 0 : _a.configuredOutputFormats.length) {
279
- const netcdfFormat = this.collectionWithServices.configuredOutputFormats.find(
280
- (f) => f.key === "application/x-netcdf4" || f.key === "application/netcdf"
281
- );
282
- this.selectedFormat = netcdfFormat || this.collectionWithServices.configuredOutputFormats[0];
283
- } else {
284
- this.selectedFormat = defaultOutputFormat;
285
- }
286
- });
287
- __privateAdd(this, _handleSpatialChange, (e2) => {
288
- __privateMethod(this, _markFieldTouched, markFieldTouched_fn).call(this, "spatial");
289
- if (e2.detail.type === "point" /* POINT */) {
290
- this.spatialSelection = e2.detail.latLng;
291
- } else if (e2.detail.type === "bbox" /* BBOX */) {
292
- this.spatialSelection = e2.detail.bounds;
293
- } else {
294
- this.spatialSelection = void 0;
295
- }
296
- });
297
- /**
298
- * resets the spatial selection back to the bounds of the collection
299
- */
300
- __privateAdd(this, _resetSpatialSelection, () => {
301
- this.spatialSelection = void 0;
302
- this.spatialPicker.clear();
303
- __privateMethod(this, _markFieldTouched, markFieldTouched_fn).call(this, "spatial");
304
- });
305
- __privateAdd(this, _resetVariableSelection, () => {
306
- this.selectedVariables = [];
307
- __privateMethod(this, _resetDimensionSelection, resetDimensionSelection_fn).call(this);
308
- });
309
- }
310
- jobIdChanged() {
311
- if (this.jobId) {
312
- __privateGet(this, _harmonyRequestController).startPollForJobStatus(this.jobId, {
313
- bearerToken: this.bearerToken
314
- });
315
- this.dataAccessMode = "subset";
316
- }
317
- }
318
- shortNameAndVersionChanged() {
319
- if (this.shortName && this.version) {
320
- this.collectionEntryId = `${this.shortName}_${this.version}`;
321
- }
322
- }
323
- collectionEntryIdChanged() {
324
- if (this.collectionEntryId) {
325
- this.showCollectionSearch = false;
326
- } else {
327
- this.showCollectionSearch = true;
328
- }
329
- }
330
- firstUpdated() {
331
- if (this.collectionEntryId) {
332
- this.showCollectionSearch = false;
333
- }
334
- if (this.jobId) {
335
- __privateGet(this, _harmonyRequestController).startPollForJobStatus(this.jobId, {
336
- bearerToken: this.bearerToken
337
- });
338
- this.dataAccessMode = "subset";
339
- }
340
- this.renderHistoryPanel();
341
- }
342
- updated(changedProps) {
343
- var _a, _b, _c;
344
- super.updated(changedProps);
345
- const newCollectionInfo = __privateGet(this, _collectionController).collectionInfo;
346
- if (newCollectionInfo !== this.collectionWithServices) {
347
- this.collectionWithServices = newCollectionInfo;
348
- }
349
- const sampling = (_a = __privateGet(this, _collectionController).sampling) == null ? void 0 : _a.data;
350
- if ((sampling == null ? void 0 : sampling.minDate) !== this.granuleMinDate) {
351
- this.granuleMinDate = sampling == null ? void 0 : sampling.minDate;
352
- }
353
- if ((sampling == null ? void 0 : sampling.maxDate) !== this.granuleMaxDate) {
354
- this.granuleMaxDate = sampling == null ? void 0 : sampling.maxDate;
355
- }
356
- const newGiovanni = __privateGet(this, _collectionController).giovanniVariables;
357
- if (newGiovanni.size !== ((_c = (_b = this.giovanniConfiguredVariables) == null ? void 0 : _b.size) != null ? _c : 0)) {
358
- this.giovanniConfiguredVariables = newGiovanni;
359
- }
360
- }
361
- /** True if the collection contains sub-daily granules. Used by DataSubsetterController to format dates. */
362
- get isSubDaily() {
363
- return __privateGet(this, _collectionController).isSubDaily;
364
- }
365
- collectionChanged() {
366
- const { startDate, endDate } = __privateMethod(this, _getCollectionDateRange, getCollectionDateRange_fn).call(this);
367
- this.selectedDateRange = { startDate, endDate };
368
- __privateGet(this, _resetFormatSelection).call(this);
369
- this.collectionLoading = false;
370
- this.collectionAccordionOpen = false;
371
- }
372
- granuleDatesChanged() {
373
- const newRange = __spreadValues(__spreadValues({}, this.granuleMinDate && { startDate: this.granuleMinDate }), this.granuleMaxDate && { endDate: this.granuleMaxDate });
374
- if (Object.keys(newRange).length > 0) {
375
- this.selectedDateRange = __spreadValues(__spreadValues({}, this.selectedDateRange), newRange);
376
- }
377
- }
378
- selectedFormatChanged() {
379
- if (this.selectedFormat.isGiovanniFormat && this.selectedVariables.length > 1) {
380
- this.selectedVariables = [this.selectedVariables[0]];
381
- }
382
- }
383
- showDialog() {
384
- var _a;
385
- (_a = this.dialogElement) == null ? void 0 : _a.show();
386
- }
387
- render() {
388
- var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s;
389
- const showJobStatus = __privateGet(this, _harmonyRequestController).jobId && !this.refineParameters;
390
- const showMinimizeButton = showJobStatus && !!this.dialog;
391
- const title = (_c = (_b = (_a = this.collectionWithServices) == null ? void 0 : _a.collection) == null ? void 0 : _b.EntryTitle) != null ? _c : "Download Data";
392
- if (!this.collectionWithServices) {
393
- if (__privateGet(this, _collectionController).hasCapabilitiesError) {
394
- return b`
395
- <terra-alert open variant="danger" appearance="white">
396
- Failed to find the requested collection.
397
- </terra-alert>
398
- `;
399
- }
400
- }
401
- const content = b`
402
- <div class="container">
403
- ${!this.dialog ? b`
404
- <div class="header">
405
- <h1>
406
- <svg
407
- class="download-icon"
408
- viewBox="0 0 24 24"
409
- fill="currentColor"
410
- >
411
- <path
412
- d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z"
413
- />
414
- </svg>
415
- ${title}
416
- </h1>
417
-
418
- ${showMinimizeButton ? b`<button
419
- class="minimize-btn"
420
- @click=${() => this.minimizeDialog()}
421
- >
422
- -
423
- </button>` : A}
424
- </div>
425
- ` : A}
426
- ${!this.isHistoryView && ((_e = (_d = this.collectionWithServices) == null ? void 0 : _d.services) == null ? void 0 : _e.length) ? b`
427
- <div class="section">
428
- ${__privateMethod(this, _renderDataAccessModeSelection, renderDataAccessModeSelection_fn).call(this)}
429
- </div>
430
- ` : A}
431
- ${this.dataAccessMode === "original" ? b`
432
- <div class="section">
433
- <terra-data-access
434
- short-name=${(_h = this.shortName) != null ? _h : (_g = (_f = this.collectionWithServices) == null ? void 0 : _f.collection) == null ? void 0 : _g.ShortName}
435
- version=${(_k = this.version) != null ? _k : (_j = (_i = this.collectionWithServices) == null ? void 0 : _i.collection) == null ? void 0 : _j.Version}
436
- ?footer-slot=${!!this.dialog}
437
- >
438
- ${this.dialog ? b`
439
- <div
440
- slot="footer"
441
- style="margin-top: 15px;"
442
- >
443
- <slot
444
- name="data-access-footer"
445
- ></slot>
446
- </div>
447
- ` : A}
448
- </terra-data-access>
449
- </div>
450
- ` : showJobStatus ? __privateMethod(this, _renderJobStatus, renderJobStatus_fn).call(this) : __privateMethod(this, _renderSubsetOptions, renderSubsetOptions_fn).call(this)}
451
- </div>
452
- `;
453
- if (this.dialog) {
454
- return b`
455
- <terra-dialog id=${this.dialog} style="--title-font-size: 16px;">
456
- <span
457
- slot="label"
458
- style="display: flex; align-items: center; gap: 8px; color: var(--terra-text-brand-on-secondary, #1c67e3); font-weight: 600;"
459
- >
460
- <svg
461
- class="download-icon"
462
- viewBox="0 0 24 24"
463
- fill="currentColor"
464
- style="width: 16px; height: 16px; display: inline-block; vertical-align: middle; flex-shrink: 0;"
465
- >
466
- <path d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z" />
467
- </svg>
468
- ${title}
469
- </span>
470
- ${showMinimizeButton ? b`
471
- <button
472
- slot="header-actions"
473
- class="minimize-btn"
474
- @click=${() => {
475
- var _a2;
476
- return (_a2 = this.dialogElement) == null ? void 0 : _a2.hide();
477
- }}
478
- aria-label="Minimize"
479
- >
480
- -
481
- </button>
482
- ` : A}
483
- <slot name="dialog-header-content"></slot>
484
- ${content} ${__privateMethod(this, _renderFooterForDialog, renderFooterForDialog_fn).call(this)}
485
- </terra-dialog>
486
- `;
487
- }
488
- return b`
489
- <div class="container">
490
- <div class="header">
491
- <h1>
492
- <svg
493
- class="download-icon"
494
- viewBox="0 0 24 24"
495
- fill="currentColor"
496
- >
497
- <path d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z" />
498
- </svg>
499
- ${title}
500
- </h1>
501
-
502
- ${showMinimizeButton ? b`<button
503
- class="minimize-btn"
504
- @click=${() => this.minimizeDialog()}
505
- >
506
- -
507
- </button>` : A}
508
- </div>
509
- ${!this.isHistoryView && ((_m = (_l = this.collectionWithServices) == null ? void 0 : _l.services) == null ? void 0 : _m.length) ? b`
510
- <div class="section">
511
- ${__privateMethod(this, _renderDataAccessModeSelection, renderDataAccessModeSelection_fn).call(this)}
512
- </div>
513
- ` : A}
514
- ${this.dataAccessMode === "original" ? b`
515
- <div class="section">
516
- <terra-data-access
517
- short-name=${(_p = this.shortName) != null ? _p : (_o = (_n = this.collectionWithServices) == null ? void 0 : _n.collection) == null ? void 0 : _o.ShortName}
518
- version=${(_s = this.version) != null ? _s : (_r = (_q = this.collectionWithServices) == null ? void 0 : _q.collection) == null ? void 0 : _r.Version}
519
- ?footer-slot=${!!this.dialog}
520
- >
521
- ${this.dialog ? b`
522
- <div
523
- slot="footer"
524
- style="margin-top: 15px;"
525
- >
526
- <slot
527
- name="data-access-footer"
528
- ></slot>
529
- </div>
530
- ` : A}
531
- </terra-data-access>
532
- </div>
533
- ` : showJobStatus ? __privateMethod(this, _renderJobStatus, renderJobStatus_fn).call(this) : __privateMethod(this, _renderSubsetOptions, renderSubsetOptions_fn).call(this)}
534
- </div>
535
- `;
536
- }
537
- minimizeDialog() {
538
- var _a;
539
- (_a = this.closest("terra-dialog")) == null ? void 0 : _a.hide();
540
- }
541
- handleCollectionSearch(searchTerm) {
542
- this.collectionSearchQuery = searchTerm;
543
- }
544
- renderHistoryPanel() {
545
- const existingHistoryPanel = document.querySelector(
546
- "terra-data-subsetter-history"
547
- );
548
- if (!existingHistoryPanel && this.bearerToken) {
549
- const historyPanel = document.createElement(
550
- "terra-data-subsetter-history"
551
- );
552
- if (this.bearerToken) {
553
- historyPanel.setAttribute("bearer-token", this.bearerToken);
554
- }
555
- if (this.environment) {
556
- historyPanel.setAttribute("environment", this.environment);
557
- }
558
- document.body.appendChild(historyPanel);
559
- }
560
- }
561
- };
562
- _collectionController = new WeakMap();
563
- _authController = new WeakMap();
564
- _harmonyRequestController = new WeakMap();
565
- _renderFooterForDialog = new WeakSet();
566
- renderFooterForDialog_fn = function() {
567
- const showJobStatus = __privateGet(this, _harmonyRequestController).jobId && !this.refineParameters;
568
- if (showJobStatus && __privateGet(this, _harmonyRequestController).jobId) {
569
- return b`
570
- <div slot="footer" class="footer">
571
- ${__privateGet(this, _harmonyRequestController).status === "successful" /* SUCCESSFUL */ || __privateGet(this, _harmonyRequestController).status === "complete_with_errors" /* COMPLETE_WITH_ERRORS */ ? b`
572
- <div
573
- style="display: flex; align-items: center; gap: 8px;"
574
- >
575
- <terra-dropdown
576
- @terra-select=${__privateMethod(this, _handleDownloadSelect, handleDownloadSelect_fn)}
577
- >
578
- <terra-button slot="trigger" caret>
579
- Download Options
580
- </terra-button>
581
- <terra-menu>
582
- <terra-menu-item value="file-list">
583
- <svg
584
- slot="prefix"
585
- viewBox="0 0 24 24"
586
- width="16"
587
- height="16"
588
- style="width: 16px; height: 16px;"
589
- >
590
- <path
591
- fill="currentColor"
592
- 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"
593
- />
594
- </svg>
595
- File List
596
- </terra-menu-item>
597
- <terra-menu-item value="python-script">
598
- <svg
599
- slot="prefix"
600
- viewBox="0 0 128 128"
601
- width="16"
602
- height="16"
603
- style="width: 16px; height: 16px;"
604
- >
605
- <path
606
- fill="currentColor"
607
- 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"
608
- ></path>
609
- </svg>
610
- Python Script
611
- </terra-menu-item>
612
- <terra-menu-item value="earthdata-download">
613
- <svg
614
- slot="prefix"
615
- viewBox="0 0 64 64"
616
- fill="none"
617
- width="16"
618
- height="16"
619
- style="width: 16px; height: 16px;"
620
- >
621
- <circle
622
- cx="32"
623
- cy="32"
624
- r="28"
625
- fill="currentColor"
626
- />
627
- <path
628
- d="M32 14v26M32 40l-9-9M32 40l9-9"
629
- stroke="#fff"
630
- stroke-width="4"
631
- stroke-linecap="round"
632
- stroke-linejoin="round"
633
- fill="none"
634
- />
635
- </svg>
636
- Earthdata Download
637
- </terra-menu-item>
638
- </terra-menu>
639
- </terra-dropdown>
640
-
641
- <!--
642
- <terra-button
643
- outline
644
- @click=${() => __privateMethod(this, _handleJupyterNotebookClick, handleJupyterNotebookClick_fn).call(this)}
645
- >
646
- <terra-icon
647
- name="outline-code-bracket"
648
- library="heroicons"
649
- font-size="1.5em"
650
- style="margin-right: 5px;"
651
- ></terra-icon>
652
- Open in Jupyter Notebook
653
- </terra-button>
654
- -->
655
- </div>
656
- ` : A}
657
- ${__privateGet(this, _harmonyRequestController).status === "running" /* RUNNING */ ? b`<button
658
- class="btn btn-success"
659
- @click=${__privateMethod(this, _cancelJob, cancelJob_fn)}
660
- ?disabled=${this.cancelingGetData}
661
- >
662
- ${this.cancelingGetData ? "Canceling..." : "Cancel request"}
663
- </button>` : A}
664
-
665
- <div class="job-info">
666
- Job ID:
667
- <span class="job-id">
668
- ${this.bearerToken ? b`<a
669
- href="https://harmony.earthdata.nasa.gov/jobs/${__privateGet(this, _harmonyRequestController).jobId}"
670
- target="_blank"
671
- >${__privateGet(this, _harmonyRequestController).jobId}</a
672
- >` : __privateGet(this, _harmonyRequestController).jobId}
673
- </span>
674
- <span class="info-icon">?</span>
675
- </div>
676
- </div>
677
- `;
678
- } else if (this.dataAccessMode === "subset") {
679
- return b`
680
- <div slot="footer" class="footer">
681
- <button class="btn btn-secondary" @click=${__privateGet(this, _resetAllParameters)}>Reset All</button>
682
- <div>
683
- <button class="btn btn-primary" @click=${__privateMethod(this, _getData, getData_fn)}>
684
- Get Data
685
- </button>
686
- ${this.jobId ? b`
687
- <terra-button
688
- variant="default"
689
- @click=${__privateMethod(this, _viewRunningJob, viewRunningJob_fn)}
690
- >
691
- View Running Job
692
- </terra-button>
693
- ` : A}
694
- </div>
695
- </div>
696
- </div>
697
- </div>
698
- `;
699
- }
700
- return A;
701
- };
702
- _renderSizeInfo = new WeakSet();
703
- renderSizeInfo_fn = function(estimates) {
704
- if (!__privateGet(this, _authController).state.isLoading && !__privateGet(this, _authController).state.user) {
705
- return b`
706
- <div class="size-info warning">
707
- <terra-login>
708
- <h2 slot="logged-out">Limited access as a guest.</h2>
709
-
710
- <p slot="logged-out">
711
- Your results will be capped at 10 links. Log in for full
712
- access to all data.
713
- </p>
714
- </terra-login>
715
- </div>
716
- `;
717
- }
718
- return b`<div
719
- class="size-info ${estimates.links >= 150 ? "warning" : "neutral"}"
720
- >
721
- <h2>Estimated size of results</h2>
722
- <div class="size-stats">
723
- ${estimates.days.toLocaleString()} days,
724
- ${estimates.links.toLocaleString()} links
725
- </div>
726
- ${estimates.links >= 150 ? b`<div class="size-warning">
727
- You are about to retrieve ${estimates.links.toLocaleString()}
728
- file links from the archive. You may
729
- <strong>speed up the request</strong> by limiting the scope of
730
- your search.
731
- </div>` : A}
732
- </div>`;
733
- };
734
- _renderSubsetOptions = new WeakSet();
735
- renderSubsetOptions_fn = function() {
736
- var _a, _b, _c, _d, _e, _f, _g, _h, _i;
737
- const estimates = __privateMethod(this, _estimateJobSize, estimateJobSize_fn).call(this);
738
- const hasSubsetOption = __privateMethod(this, _hasAtLeastOneSubsetOption, hasAtLeastOneSubsetOption_fn).call(this);
739
- const collection = (_a = this.collectionWithServices) == null ? void 0 : _a.collection;
740
- const temporalExtents = collection == null ? void 0 : collection.TemporalExtents;
741
- const spatialExtent = collection == null ? void 0 : collection.SpatialExtent;
742
- const showTemporalSection = temporalExtents == null ? void 0 : temporalExtents.length;
743
- const showSpatialSection = (_c = (_b = spatialExtent == null ? void 0 : spatialExtent.HorizontalSpatialDomain) == null ? void 0 : _b.Geometry) == null ? void 0 : _c.BoundingRectangles;
744
- return b`
745
- ${this.dataAccessMode === "original" ? A : hasSubsetOption ? b`
746
- ${hasSubsetOption && estimates ? __privateMethod(this, _renderSizeInfo, renderSizeInfo_fn).call(this, estimates) : A}
747
- ${this.showCollectionSearch ? b`
748
- <div class="section">
749
- <h2 class="section-title">
750
- Select Data Collection
751
- </h2>
752
-
753
- ${__privateMethod(this, _renderSearchForCollection, renderSearchForCollection_fn).call(this)}
754
- </div>
755
- ` : A}
756
- ${((_e = (_d = this.collectionWithServices) == null ? void 0 : _d.summary.outputFormats) == null ? void 0 : _e.length) && hasSubsetOption ? b`
757
- <div class="section">
758
- <h2 class="section-title">Output Format</h2>
759
-
760
- ${__privateMethod(this, _renderOutputFormatSelection, renderOutputFormatSelection_fn).call(this)}
761
- </div>
762
- ` : A}
763
- <div class="section">
764
- <h2 class="section-title">Subset Options</h2>
765
- <p style="color: #666; margin-bottom: 16px;">
766
- Generate file links that support spatial subsetting,
767
- date/time range selection, and variable selection.
768
- </p>
769
-
770
- ${((_f = this.collectionWithServices) == null ? void 0 : _f.summary.subsetting.temporal) ? __privateMethod(this, _renderDateRangeSelection, renderDateRangeSelection_fn).call(this) : A}
771
- ${__privateMethod(this, _hasSpatialSubset, hasSpatialSubset_fn).call(this) ? __privateMethod(this, _renderSpatialSelection, renderSpatialSelection_fn).call(this) : A}
772
- ${((_g = this.collectionWithServices) == null ? void 0 : _g.summary.subsetting.variable) ? __privateMethod(this, _renderVariableSelection, renderVariableSelection_fn).call(this) : A}
773
- ${((_h = this.collectionWithServices) == null ? void 0 : _h.summary.subsetting.variable) && isFeatureEnabled(
774
- KnownFeatureFlags.DIMENSION_SUBSET,
775
- this.features
776
- ) ? __privateMethod(this, _renderDimensionSelection, renderDimensionSelection_fn).call(this) : A}
777
- </div>
778
- ` : b`
779
- ${showTemporalSection && !((_i = this.collectionWithServices) == null ? void 0 : _i.summary.subsetting.temporal) ? __privateMethod(this, _renderAvailableTemporalRangeSection, renderAvailableTemporalRangeSection_fn).call(this) : A}
780
- ${showSpatialSection && !__privateMethod(this, _hasSpatialSubset, hasSpatialSubset_fn).call(this) ? __privateMethod(this, _renderAvailableSpatialRangeSection, renderAvailableSpatialRangeSection_fn).call(this) : A}
781
- `}
782
- ${!hasSubsetOption && estimates ? b`
783
- <div
784
- class="neutral-info"
785
- style="margin-top: 24px; padding: 16px 20px; border-radius: 6px; background: #f8f9fa; color: #555; border: 1px solid #ccc;"
786
- >
787
- <strong>Estimated result size:</strong><br />
788
- Your request will return approximately
789
- <b>${estimates.links.toLocaleString()}</b> files covering
790
- <b>${estimates.days.toLocaleString()}</b> days.
791
- </div>
792
- ` : A}
793
- ${this.dataAccessMode === "subset" && !this.dialog ? b`
794
- <div class="footer">
795
- <button class="btn btn-secondary" @click=${__privateGet(this, _resetAllParameters)}>Reset All</button>
796
- <div>
797
- <button
798
- class="btn btn-primary"
799
- @click=${__privateMethod(this, _getData, getData_fn)}
800
- >
801
- Get Data
802
- </button>
803
- ${this.jobId ? b`
804
- <terra-button
805
- variant="default"
806
- @click=${__privateMethod(this, _viewRunningJob, viewRunningJob_fn)}
807
- >
808
- View Running Job
809
- </terra-button>
810
- ` : A}
811
- </div>
812
- </div>
813
- </div>
814
- </div>
815
- ` : A}
816
- `;
817
- };
818
- _resetAllParameters = new WeakMap();
819
- _renderSearchForCollection = new WeakSet();
820
- renderSearchForCollection_fn = function() {
821
- var _a, _b;
822
- let placeholder = "Search all types of resources (e.g. rainfall, GPM, hurricanes, etc.)";
823
- if (this.collectionSearchType === "collection") {
824
- placeholder = "Search collections (e.g. AQUA, GPM_3IMERGH, etc.)";
825
- }
826
- if (this.collectionSearchType === "variable") {
827
- placeholder = "Search variables (e.g. rainfall, hurricanes, etc.)";
828
- }
829
- return b`
830
- <terra-accordion .open=${this.collectionAccordionOpen}>
831
- <div slot="summary">
832
- <span class="accordion-title">Collection:</span>
833
- </div>
834
-
835
- <div
836
- slot="summary-right"
837
- style="display: flex; align-items: center; gap: 10px"
838
- >
839
- ${this.collectionEntryId ? b` <span
840
- class="accordion-value"
841
- id="selected-collection-display"
842
- >${this.collectionEntryId}</span
843
- >
844
-
845
- <button
846
- class="reset-btn"
847
- @click=${() => this.collectionEntryId = void 0}
848
- >
849
- Reset
850
- </button>` : A}
851
- </div>
852
-
853
- <div class="search-tabs-mini">
854
- <button
855
- class="search-tab-mini ${this.collectionSearchType === "all" ? "active" : ""}"
856
- @click=${() => this.collectionSearchType = "all"}
857
- >
858
- All
859
- </button>
860
- <button
861
- class="search-tab-mini ${this.collectionSearchType === "collection" ? "active" : ""}"
862
- @click=${() => this.collectionSearchType = "collection"}
863
- >
864
- Collections
865
- </button>
866
- <button
867
- class="search-tab-mini ${this.collectionSearchType === "variable" ? "active" : ""}"
868
- @click=${() => this.collectionSearchType = "variable"}
869
- >
870
- Variables
871
- </button>
872
- </div>
873
-
874
- <div class="search-container-mini">
875
- <input
876
- type="text"
877
- class="search-input-mini"
878
- id="search-input"
879
- placeholder=${placeholder}
880
- @input="${(e2) => this.handleCollectionSearch(
881
- e2.target.value
882
- )}"
883
- />
884
-
885
- <button class="search-button-mini">
886
- <svg
887
- class="search-icon-mini"
888
- viewBox="0 0 24 24"
889
- fill="currentColor"
890
- >
891
- <path
892
- 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"
893
- />
894
- </svg>
895
- Search
896
- </button>
897
- </div>
898
-
899
- <!-- TODO: it may be nice to have a quick search, perhaps by recent trends?
900
- <div class="quick-links-mini">
901
- <a href="#" class="quick-link-mini" onclick="quickSearch('GPM')"
902
- >GPM Precipitation</a
903
- >
904
- <a href="#" class="quick-link-mini" onclick="quickSearch('MODIS')"
905
- >MODIS Data</a
906
- >
907
- <a
908
- href="#"
909
- class="quick-link-mini"
910
- onclick="quickSearch('Landsat')"
911
- >Landsat Imagery</a
912
- >
913
- <a href="#" class="quick-link-mini" onclick="quickSearch('AIRS')"
914
- >Atmospheric Data</a
915
- >
916
- </div>
917
- -->
918
-
919
- <div id="search-results-section" class="search-results-section">
920
- ${this.collectionSearchLoading ? b`
921
- <div id="loading-mini" class="loading-mini">
922
- <div class="spinner-mini"></div>
923
- <div>Searching NASA CMR...</div>
924
- </div>
925
- ` : ((_a = this.collectionSearchResults) == null ? void 0 : _a.length) ? b` <div
926
- id="results-container-mini"
927
- class="results-container-mini"
928
- >
929
- ${(_b = this.collectionSearchResults) == null ? void 0 : _b.map(
930
- (item) => b`
931
- <div
932
- class="result-item-mini"
933
- @click=${() => {
934
- this.collectionEntryId = item.collectionEntryId;
935
- this.collectionAccordionOpen = false;
936
- this.collectionLoading = true;
937
- if (item.type === "variable") {
938
- this.selectedVariables = [
939
- {
940
- name: item.entryId,
941
- href: "",
942
- conceptId: item.conceptId
943
- }
944
- ];
945
- }
946
- this.requestUpdate();
947
- }}
948
- style="cursor: pointer;"
949
- >
950
- <div class="result-title-mini">
951
- ${item.title}
952
- </div>
953
- <div class="result-id-mini">
954
- ${item.entryId}
955
- </div>
956
- <div class="result-description-mini">
957
- ${item.summary || item.title}
958
- </div>
959
- <div class="result-meta-mini">
960
- <span>📅 2000-02-24 - ongoing</span>
961
- <span>🌍 Global</span>
962
- <span>🏢 ${item.provider}</span>
963
- ${item.type === "variable" ? b` <span
964
- >📊
965
- ${item.collectionEntryId}</span
966
- >` : A}
967
- <span class="tag-mini"
968
- >${item.type.toUpperCase()}</span
969
- >
970
- </div>
971
- </div>
972
- `
973
- )}
974
- </div>` : this.collectionSearchResults && this.collectionSearchResults.length === 0 ? b`<div id="no-results-mini" class="no-results-mini">
975
- <p>
976
- No results found for
977
- '${this.collectionSearchQuery}'. Try adjusting
978
- your search term.
979
- </p>
980
- </div>` : A}
981
- </div>
982
- </terra-accordion>
983
-
984
- ${this.collectionLoading ? b`
985
- <div
986
- class="collection-loading-bar"
987
- style="display: flex; align-items: center; gap: 10px; margin: 16px 0;"
988
- >
989
- <span
990
- class="loading-spinner"
991
- 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;"
992
- ></span>
993
- Retrieving collection, please wait...
994
- </div>
995
- <style>
996
- @keyframes spin {
997
- 0% {
998
- transform: rotate(0deg);
999
- }
1000
- 100% {
1001
- transform: rotate(360deg);
1002
- }
1003
- }
1004
- </style>
1005
- ` : A}
1006
- `;
1007
- };
1008
- _renderOutputFormatSelection = new WeakSet();
1009
- renderOutputFormatSelection_fn = function() {
1010
- return b`
1011
- <terra-accordion>
1012
- <div slot="summary">
1013
- <span class="accordion-title">File Format:</span>
1014
- </div>
1015
-
1016
- <div
1017
- slot="summary-right"
1018
- style="display: flex; align-items: center; gap: 10px;"
1019
- >
1020
- <span>${this.selectedFormat.label}</span>
1021
-
1022
- <button class="reset-btn" @click=${__privateGet(this, _resetFormatSelection)}>
1023
- Reset
1024
- </button>
1025
- </div>
1026
-
1027
- <div class="accordion-content" style="margin-top: 12px;">
1028
- ${(() => {
1029
- var _a;
1030
- return (((_a = this.collectionWithServices) == null ? void 0 : _a.configuredOutputFormats) || []).map(
1031
- (format) => b`
1032
- <label
1033
- style="display: flex; align-items: center; gap: 8px; padding: 5px;"
1034
- >
1035
- <input
1036
- type="radio"
1037
- name="output-format"
1038
- value="${format}"
1039
- .checked=${this.selectedFormat === format}
1040
- @change=${() => this.selectedFormat = format}
1041
- />
1042
- ${format.label}
1043
- </label>
1044
- `
1045
- );
1046
- })()}
1047
- </div>
1048
- </terra-accordion>
1049
- `;
1050
- };
1051
- _renderDateRangeSelection = new WeakSet();
1052
- renderDateRangeSelection_fn = function() {
1053
- var _a, _b, _c, _d, _e, _f, _g, _h;
1054
- const { startDate: defaultStartDate, endDate: defaultEndDate } = __privateMethod(this, _getCollectionDateRange, getCollectionDateRange_fn).call(this);
1055
- const startDate = (_b = (_a = this.selectedDateRange.startDate) != null ? _a : this.granuleMinDate) != null ? _b : defaultStartDate;
1056
- const endDate = (_d = (_c = this.selectedDateRange.endDate) != null ? _c : this.granuleMaxDate) != null ? _d : defaultEndDate;
1057
- const showError = this.touchedFields.has("date") && (!this.selectedDateRange.startDate || !this.selectedDateRange.endDate);
1058
- return b`
1059
- <terra-accordion>
1060
- <div slot="summary">
1061
- <span class="accordion-title">Refine Date Range:</span>
1062
- </div>
1063
-
1064
- <div
1065
- slot="summary-right"
1066
- style="display: flex; align-items: center; gap: 10px;"
1067
- >
1068
- ${showError ? b`<span class="accordion-value error"
1069
- >Please select a date range</span
1070
- >` : this.touchedFields.has("date") && startDate && endDate ? b`<span class="accordion-value"
1071
- >${startDate} to ${endDate}</span
1072
- >` : A}
1073
- <button class="reset-btn" @click=${__privateGet(this, _resetDateRangeSelection)}>
1074
- Reset
1075
- </button>
1076
- </div>
1077
-
1078
- <div style="width: 300px">
1079
- <terra-date-picker
1080
- allow-input
1081
- inline
1082
- range
1083
- split-inputs
1084
- show-presets
1085
- ?enable-time=${this.isSubDaily}
1086
- start-label="Start Date"
1087
- end-label="End Date"
1088
- .minDate=${(_e = this.granuleMinDate) != null ? _e : defaultStartDate}
1089
- .maxDate=${(_f = this.granuleMaxDate) != null ? _f : defaultEndDate}
1090
- .startDate=${(_g = this.selectedDateRange.startDate) != null ? _g : this.granuleMinDate}
1091
- .endDate=${(_h = this.selectedDateRange.endDate) != null ? _h : this.granuleMaxDate}
1092
- .useEndOfDay=${!this.selectedFormat.isGiovanniFormat}
1093
- @terra-date-range-change=${__privateGet(this, _handleDateChange)}
1094
- ></terra-date-picker>
1095
- </div>
1096
-
1097
- <div style="display: flex; gap: 16px; margin-top: 15px;">
1098
- <span
1099
- ><strong>Available Range:</strong> ${defaultStartDate} to
1100
- ${defaultEndDate}</span
1101
- >
1102
- ${this.isSubDaily ? b`<span
1103
- ><strong>Note:</strong> All dates and times are in
1104
- UTC.</span
1105
- >` : A}
1106
- </div>
1107
- </terra-accordion>
1108
- `;
1109
- };
1110
- _handleDateChange = new WeakMap();
1111
- _resetDateRangeSelection = new WeakMap();
1112
- _resetFormatSelection = new WeakMap();
1113
- _getCollectionDateRange = new WeakSet();
1114
- getCollectionDateRange_fn = function() {
1115
- var _a, _b;
1116
- const samplingMinDate = this.granuleMinDate;
1117
- const samplingMaxDate = this.granuleMaxDate;
1118
- if (samplingMinDate && samplingMaxDate) {
1119
- return {
1120
- startDate: samplingMinDate.slice(0, 10),
1121
- endDate: samplingMaxDate.slice(0, 10)
1122
- };
1123
- }
1124
- const temporalExtents = (_b = (_a = this.collectionWithServices) == null ? void 0 : _a.collection) == null ? void 0 : _b.TemporalExtents;
1125
- if (!(temporalExtents == null ? void 0 : temporalExtents.length))
1126
- return {
1127
- startDate: null,
1128
- endDate: null
1129
- };
1130
- let minStart = null;
1131
- let maxEnd = null;
1132
- const today = /* @__PURE__ */ new Date();
1133
- for (const temporal of temporalExtents) {
1134
- for (const range of temporal.RangeDateTimes || []) {
1135
- const start = new Date(range.BeginningDateTime);
1136
- let end;
1137
- if (temporal.EndsAtPresentFlag || !range.EndingDateTime) {
1138
- end = today;
1139
- } else {
1140
- end = new Date(range.EndingDateTime);
1141
- }
1142
- if (!minStart || start < minStart)
1143
- minStart = start;
1144
- if (!maxEnd || end > maxEnd)
1145
- maxEnd = end;
1146
- }
1147
- }
1148
- return {
1149
- startDate: minStart ? minStart.toISOString().slice(0, 10) : null,
1150
- endDate: maxEnd ? maxEnd.toISOString().slice(0, 10) : null
1151
- };
1152
- };
1153
- _renderSpatialSelection = new WeakSet();
1154
- renderSpatialSelection_fn = function() {
1155
- var _a, _b;
1156
- const showError = this.touchedFields.has("spatial") && !this.spatialSelection;
1157
- const spatialString = (_b = (_a = this.spatialSelection) == null ? void 0 : _a.toString()) != null ? _b : this.spatialSelection;
1158
- return b`
1159
- <terra-accordion>
1160
- <div slot="summary">
1161
- <span class="accordion-title">Refine Region:</span>
1162
- </div>
1163
-
1164
- <div
1165
- slot="summary-right"
1166
- style="display: flex; align-items: center; gap: 10px;"
1167
- >
1168
- ${showError ? b`<span class="accordion-value error"
1169
- >Please select a region</span
1170
- >` : spatialString ? b`<span class="accordion-value"
1171
- >${spatialString}</span
1172
- >` : A}
1173
- <button class="reset-btn" @click=${__privateGet(this, _resetSpatialSelection)}>
1174
- Reset
1175
- </button>
1176
- </div>
1177
- <div class="accordion-content">
1178
- <terra-spatial-picker
1179
- part="spatial-picker"
1180
- inline
1181
- hide-label
1182
- .spatialConstraints=${__privateGet(this, _collectionController).spatialConstraints || "-180, -90, 180, 90"}
1183
- .initialValue=${spatialString}
1184
- @terra-map-change=${__privateGet(this, _handleSpatialChange)}
1185
- ></terra-spatial-picker>
1186
- <div
1187
- style="display: flex; gap: 16px; margin-top: 15px; color: #31708f;"
1188
- >
1189
- <span
1190
- ><strong>Available Range:</strong> ${__privateGet(this, _collectionController).spatialConstraints}</span
1191
- >
1192
- </div>
1193
- </div>
1194
- </terra-accordion>
1195
- `;
1196
- };
1197
- _handleSpatialChange = new WeakMap();
1198
- _resetSpatialSelection = new WeakMap();
1199
- _renderVariableSelection = new WeakSet();
1200
- renderVariableSelection_fn = function() {
1201
- var _a;
1202
- const variables = ((_a = this.collectionWithServices) == null ? void 0 : _a.variables) || [];
1203
- const giovanniError = this.touchedFields.has("variables") && __privateMethod(this, _getGiovanniValidationError, getGiovanniValidationError_fn).call(this);
1204
- const basicError = this.touchedFields.has("variables") && this.selectedVariables.length === 0;
1205
- const showError = giovanniError || basicError;
1206
- const errorMessage = giovanniError || (basicError ? "Please select at least one variable" : "");
1207
- const tree = __privateMethod(this, _buildVariableTree, buildVariableTree_fn).call(this, variables);
1208
- const allGroups = __privateMethod(this, _getAllGroupPaths, getAllGroupPaths_fn).call(this, tree);
1209
- const allExpanded = allGroups.length > 0 && allGroups.every((g) => this.expandedVariableGroups.has(g));
1210
- return b`
1211
- <terra-accordion>
1212
- <div slot="summary">
1213
- <span class="accordion-title">Select Variables:</span>
1214
- </div>
1215
- <div
1216
- slot="summary-right"
1217
- style="display: flex; align-items: center; gap: 10px;"
1218
- >
1219
- ${showError ? b`<span class="accordion-value error"
1220
- >${errorMessage}</span
1221
- >` : this.selectedVariables.length ? b`<span class="accordion-value"
1222
- >${this.selectedVariables.length} selected</span
1223
- >` : A}
1224
-
1225
- <button class="reset-btn" @click=${__privateGet(this, _resetVariableSelection)}>
1226
- Reset
1227
- </button>
1228
- </div>
1229
- <div class="accordion-content">
1230
- <terra-input
1231
- label="Filter variables"
1232
- placeholder="Search by variable name..."
1233
- .value=${this.variableFilterText}
1234
- @input=${(e2) => {
1235
- const input = e2.target;
1236
- this.variableFilterText = input.value;
1237
- __privateMethod(this, _handleVariableFilterChange, handleVariableFilterChange_fn).call(this);
1238
- }}
1239
- style="margin-bottom: 10px;"
1240
- ></terra-input>
1241
- <button
1242
- class="reset-btn"
1243
- style="margin-bottom: 10px;"
1244
- @click=${() => __privateMethod(this, _toggleExpandCollapseAll, toggleExpandCollapseAll_fn).call(this, tree)}
1245
- >
1246
- ${allExpanded ? "Collapse Tree" : "Expand Tree"}
1247
- </button>
1248
-
1249
- ${this.selectedFormat.isGiovanniFormat && this.giovanniConfiguredVariables ? b`
1250
- <terra-alert
1251
- open
1252
- appearance="white"
1253
- style="margin: 10px 0"
1254
- >
1255
- <terra-icon
1256
- slot="icon"
1257
- name="outline-information-circle"
1258
- library="heroicons"
1259
- ></terra-icon>
1260
- Only certain variables are supported for the
1261
- selected output format. (Giovanni service)
1262
- </terra-alert>
1263
- ` : A}
1264
- ${variables.length === 0 ? b`<p style="color: #666; font-style: italic;">
1265
- No variables available for this collection.
1266
- </p>` : __privateMethod(this, _renderVariableTree, renderVariableTree_fn).call(this, __privateMethod(this, _filterVariableTree, filterVariableTree_fn).call(this, tree), [])}
1267
- </div>
1268
- </terra-accordion>
1269
- `;
1270
- };
1271
- _renderDimensionGroup = new WeakSet();
1272
- renderDimensionGroup_fn = function(dim) {
1273
- var _a, _b, _c, _d, _e, _f;
1274
- const currentValue = (_a = this.selectedDimensionIndexes[dim.name]) != null ? _a : 1;
1275
- 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(
1276
- (s) => s.dimensions && s.dimensions.length > 0
1277
- )) == null ? void 0 : _f.dimensions) || [];
1278
- return b`
1279
- <div style="margin-bottom: 16px;">
1280
- <div
1281
- style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 6px;"
1282
- >
1283
- <span style="font-weight: 600; margin-bottom: 44px"
1284
- >Dimension: ${dim.name}</span
1285
- >
1286
- </div>
1287
- <terra-slider
1288
- class="dimension-slider"
1289
- mode="range"
1290
- min="1"
1291
- .max=${dim.size}
1292
- step="1"
1293
- .startValue=${currentValue.start}
1294
- .endValue=${currentValue.end}
1295
- has-tooltips
1296
- show-inputs
1297
- hide-label
1298
- .formatTooltip=${dimensions.length > 0 ? (value) => {
1299
- const found = dimensions.find(
1300
- (d) => String(d.value) === String(value)
1301
- );
1302
- return found ? found.label : String(value);
1303
- } : A}
1304
- @terra-slider-change=${(event) => {
1305
- if ("startValue" in event.detail) {
1306
- const { startValue, endValue } = event.detail;
1307
- __privateMethod(this, _setDimensionValue, setDimensionValue_fn).call(this, dim.name, startValue, endValue);
1308
- }
1309
- }}
1310
- ></terra-slider>
1311
- </div>
1312
- `;
1313
- };
1314
- _setDimensionValue = new WeakSet();
1315
- setDimensionValue_fn = function(dimName, startValue, endValue) {
1316
- const dimensions = __privateMethod(this, _getCommonSelectableDimensions, getCommonSelectableDimensions_fn).call(this);
1317
- const found = dimensions.find((d) => d.name === dimName);
1318
- if (!found) {
1319
- return;
1320
- }
1321
- const normalizedStartValue = Math.min(
1322
- Math.max(Math.round(startValue), 1),
1323
- found.size
1324
- );
1325
- const normalizedEndValue = Math.min(
1326
- Math.max(Math.round(endValue != null ? endValue : startValue), 1),
1327
- found.size
1328
- );
1329
- if (normalizedStartValue <= 1 && normalizedEndValue >= found.size) {
1330
- delete this.selectedDimensionIndexes[dimName];
1331
- return;
1332
- }
1333
- this.selectedDimensionIndexes = __spreadProps(__spreadValues({}, this.selectedDimensionIndexes), {
1334
- [dimName]: { start: normalizedStartValue, end: normalizedEndValue }
1335
- });
1336
- };
1337
- _renderDimensionSelection = new WeakSet();
1338
- renderDimensionSelection_fn = function() {
1339
- const dimensions = __privateMethod(this, _getCommonSelectableDimensions, getCommonSelectableDimensions_fn).call(this);
1340
- if (!dimensions.length) {
1341
- return A;
1342
- }
1343
- const selectedCount = Object.keys(this.selectedDimensionIndexes).length;
1344
- return b`
1345
- <terra-accordion>
1346
- <div slot="summary">
1347
- <span class="accordion-title">Select Dimensions:</span>
1348
- </div>
1349
- <div
1350
- slot="summary-right"
1351
- style="display: flex; align-items: center; gap: 10px;"
1352
- >
1353
- ${selectedCount ? b`<span class="accordion-value"
1354
- >${selectedCount}
1355
- dimension${selectedCount === 1 ? "" : "s"}
1356
- selected</span
1357
- >` : A}
1358
- <button class="reset-btn" @click=${__privateMethod(this, _resetDimensionSelection, resetDimensionSelection_fn)}>
1359
- Reset
1360
- </button>
1361
- </div>
1362
- <div class="accordion-content">
1363
- ${dimensions.map((dim) => __privateMethod(this, _renderDimensionGroup, renderDimensionGroup_fn).call(this, dim))}
1364
- </div>
1365
- </terra-accordion>
1366
- `;
1367
- };
1368
- _filterVariableTree = new WeakSet();
1369
- filterVariableTree_fn = function(tree) {
1370
- if (!this.variableFilterText.trim()) {
1371
- return tree;
1372
- }
1373
- const filterText = this.variableFilterText.toLowerCase().trim();
1374
- const filterNode = (node) => {
1375
- const result = {};
1376
- for (const [key, value] of Object.entries(node)) {
1377
- if (value.__isLeaf) {
1378
- const variableName = value.__variable.name.toLowerCase();
1379
- if (variableName.includes(filterText)) {
1380
- result[key] = value;
1381
- }
1382
- } else {
1383
- const filteredChildren = filterNode(value.__children);
1384
- if (Object.keys(filteredChildren).length > 0 || key.toLowerCase().includes(filterText)) {
1385
- result[key] = __spreadProps(__spreadValues({}, value), {
1386
- __children: filteredChildren
1387
- });
1388
- }
1389
- }
1390
- }
1391
- return result;
1392
- };
1393
- return filterNode(tree);
1394
- };
1395
- _handleVariableFilterChange = new WeakSet();
1396
- handleVariableFilterChange_fn = function() {
1397
- var _a;
1398
- if (!this.variableFilterText.trim()) {
1399
- return;
1400
- }
1401
- const variables = ((_a = this.collectionWithServices) == null ? void 0 : _a.variables) || [];
1402
- const tree = __privateMethod(this, _buildVariableTree, buildVariableTree_fn).call(this, variables);
1403
- const filterText = this.variableFilterText.toLowerCase().trim();
1404
- const groupsToExpand = /* @__PURE__ */ new Set();
1405
- const findMatchingGroups = (node, path = []) => {
1406
- for (const [key, value] of Object.entries(node)) {
1407
- if (value.__isLeaf) {
1408
- const variableName = value.__variable.name.toLowerCase();
1409
- if (variableName.includes(filterText)) {
1410
- for (let i = 0; i < path.length; i++) {
1411
- const groupPath = path.slice(0, i + 1).join("/");
1412
- groupsToExpand.add(groupPath);
1413
- }
1414
- }
1415
- } else {
1416
- const groupPath = [...path, key].join("/");
1417
- findMatchingGroups(value.__children, [...path, key]);
1418
- if (key.toLowerCase().includes(filterText)) {
1419
- groupsToExpand.add(groupPath);
1420
- }
1421
- }
1422
- }
1423
- };
1424
- findMatchingGroups(tree);
1425
- if (groupsToExpand.size > 0) {
1426
- this.expandedVariableGroups = /* @__PURE__ */ new Set([
1427
- ...this.expandedVariableGroups,
1428
- ...groupsToExpand
1429
- ]);
1430
- }
1431
- };
1432
- _buildVariableTree = new WeakSet();
1433
- buildVariableTree_fn = function(variables) {
1434
- let filteredVariables = variables;
1435
- if (this.selectedFormat.isGiovanniFormat && this.giovanniConfiguredVariables) {
1436
- filteredVariables = variables.filter((v) => {
1437
- var _a, _b, _c;
1438
- const shortName = (_a = this.collectionWithServices) == null ? void 0 : _a.shortName;
1439
- const version = (_c = (_b = this.collectionWithServices) == null ? void 0 : _b.collection) == null ? void 0 : _c.Version;
1440
- if (!shortName || !version) {
1441
- return false;
1442
- }
1443
- const giovanniVariableName = convertVariableEntryIdToGiovanniFormat(
1444
- shortName,
1445
- version,
1446
- v.name
1447
- );
1448
- return this.giovanniConfiguredVariables.has(giovanniVariableName);
1449
- });
1450
- }
1451
- const root = {};
1452
- for (const v of filteredVariables) {
1453
- const parts = v.name.split("/");
1454
- let node = root;
1455
- for (let i = 0; i < parts.length; i++) {
1456
- const part = parts[i];
1457
- if (!node[part])
1458
- node[part] = { __children: {}, __isLeaf: false };
1459
- if (i === parts.length - 1) {
1460
- node[part].__isLeaf = true;
1461
- node[part].__variable = v;
1462
- }
1463
- node = node[part].__children;
1464
- }
1465
- }
1466
- return root;
1467
- };
1468
- _renderVariableTree = new WeakSet();
1469
- renderVariableTree_fn = function(node, path) {
1470
- const isGiovanni = this.selectedFormat.isGiovanniFormat;
1471
- return b`
1472
- <div style="margin-left: ${path.length * 20}px;">
1473
- ${Object.entries(node).map(([key, value]) => {
1474
- var _a;
1475
- const groupPath = [...path, key].join("/");
1476
- if (value.__isLeaf) {
1477
- const ummVar = cmr_variable_service_default.getVariableByName(
1478
- key,
1479
- (_a = __privateGet(this, _collectionController).variables) == null ? void 0 : _a.data
1480
- );
1481
- const variableLabel = ummVar ? cmr_variable_service_default.getVariableDisplayLabel(ummVar) : key;
1482
- return b`
1483
- <div class="option-row">
1484
- <label class="checkbox-option">
1485
- <input
1486
- type="${isGiovanni ? "radio" : "checkbox"}"
1487
- name="${isGiovanni ? "variable-selection" : ""}"
1488
- .checked=${this.selectedVariables.some(
1489
- (v) => v.name === value.__variable.name
1490
- )}
1491
- @change=${(e2) => __privateMethod(this, _toggleVariableSelection, toggleVariableSelection_fn).call(this, e2, value.__variable)}
1492
- />
1493
- <span>${variableLabel}</span>
1494
- </label>
1495
- </div>
1496
- `;
1497
- } else {
1498
- const expanded = this.expandedVariableGroups.has(groupPath);
1499
- return b`
1500
- <div class="option-row" style="align-items: flex-start;">
1501
- <span
1502
- style="cursor: pointer; display: flex; align-items: center;"
1503
- @click=${() => __privateMethod(this, _toggleGroupExpand, toggleGroupExpand_fn).call(this, groupPath)}
1504
- >
1505
- <terra-icon
1506
- library="heroicons"
1507
- name="${expanded ? "outline-minus-circle" : "outline-plus-circle"}"
1508
- style="margin-right: 4px;"
1509
- ></terra-icon>
1510
- <span style="font-weight: 500;">${key}</span>
1511
- </span>
1512
- </div>
1513
- ${expanded ? __privateMethod(this, _renderVariableTree, renderVariableTree_fn).call(this, value.__children, [
1514
- ...path,
1515
- key
1516
- ]) : ""}
1517
- `;
1518
- }
1519
- })}
1520
- </div>
1521
- `;
1522
- };
1523
- _getAllGroupPaths = new WeakSet();
1524
- getAllGroupPaths_fn = function(node, path = []) {
1525
- let groups = [];
1526
- for (const [key, value] of Object.entries(node)) {
1527
- if (!value.__isLeaf) {
1528
- const groupPath = [...path, key].join("/");
1529
- groups.push(groupPath);
1530
- groups = groups.concat(
1531
- __privateMethod(this, _getAllGroupPaths, getAllGroupPaths_fn).call(this, value.__children, [...path, key])
1532
- );
1533
- }
1534
- }
1535
- return groups;
1536
- };
1537
- _toggleGroupExpand = new WeakSet();
1538
- toggleGroupExpand_fn = function(groupPath) {
1539
- const set = new Set(this.expandedVariableGroups);
1540
- if (set.has(groupPath)) {
1541
- set.delete(groupPath);
1542
- } else {
1543
- set.add(groupPath);
1544
- }
1545
- this.expandedVariableGroups = set;
1546
- };
1547
- _toggleExpandCollapseAll = new WeakSet();
1548
- toggleExpandCollapseAll_fn = function(tree) {
1549
- const allGroups = __privateMethod(this, _getAllGroupPaths, getAllGroupPaths_fn).call(this, tree);
1550
- const allExpanded = allGroups.length > 0 && allGroups.every((g) => this.expandedVariableGroups.has(g));
1551
- if (allExpanded) {
1552
- this.expandedVariableGroups = /* @__PURE__ */ new Set();
1553
- } else {
1554
- this.expandedVariableGroups = new Set(allGroups);
1555
- }
1556
- };
1557
- _toggleVariableSelection = new WeakSet();
1558
- toggleVariableSelection_fn = function(e2, variable) {
1559
- __privateMethod(this, _markFieldTouched, markFieldTouched_fn).call(this, "variables");
1560
- const checked = e2.target.checked;
1561
- if (this.selectedFormat.isGiovanniFormat) {
1562
- if (checked) {
1563
- this.selectedVariables = [variable];
1564
- }
1565
- } else {
1566
- if (checked) {
1567
- if (!this.selectedVariables.some((v) => v.name === variable.name)) {
1568
- this.selectedVariables = [...this.selectedVariables, variable];
1569
- }
1570
- } else {
1571
- this.selectedVariables = this.selectedVariables.filter(
1572
- (v) => v.name !== variable.name
1573
- );
1574
- }
1575
- }
1576
- };
1577
- _markFieldTouched = new WeakSet();
1578
- markFieldTouched_fn = function(field) {
1579
- this.touchedFields = new Set(this.touchedFields).add(field);
1580
- };
1581
- _resetVariableSelection = new WeakMap();
1582
- _resetDimensionSelection = new WeakSet();
1583
- resetDimensionSelection_fn = function() {
1584
- this.selectedDimensionIndexes = {};
1585
- };
1586
- _isDimensionExcluded = new WeakSet();
1587
- isDimensionExcluded_fn = function(dim) {
1588
- var _a, _b, _c;
1589
- const normalizedName = (_b = (_a = dim.Name) == null ? void 0 : _a.toLowerCase()) != null ? _b : "";
1590
- const normalizedType = ((_c = dim.Type) != null ? _c : "").toLowerCase();
1591
- return ["time", "latitude", "longitude", "lat", "lon", "x", "y"].some(
1592
- (value) => normalizedName.includes(value) || normalizedType.includes(value)
1593
- );
1594
- };
1595
- _getCommonSelectableDimensions = new WeakSet();
1596
- getCommonSelectableDimensions_fn = function() {
1597
- var _a, _b;
1598
- const variables = (_a = __privateGet(this, _collectionController).variables) == null ? void 0 : _a.data;
1599
- if (!variables) {
1600
- return [];
1601
- }
1602
- const allUmmVars = (_b = variables.items) != null ? _b : [];
1603
- if (!allUmmVars.length) {
1604
- return [];
1605
- }
1606
- const allDimensionSets = allUmmVars.map(
1607
- (v) => {
1608
- var _a2;
1609
- return (_a2 = v.umm.Dimensions) != null ? _a2 : [];
1610
- }
1611
- );
1612
- if (!allDimensionSets.length) {
1613
- return [];
1614
- }
1615
- const allDimensionNames = Array.from(
1616
- new Set(allDimensionSets.flatMap((dimSet) => dimSet.map((dim) => dim.Name)))
1617
- );
1618
- const filteredCommon = allDimensionNames.map((name) => {
1619
- var _a2, _b2;
1620
- const dims = allDimensionSets.map((set) => set.find((dim) => dim.Name === name)).filter((d) => Boolean(d));
1621
- if (!dims.length) {
1622
- return null;
1623
- }
1624
- const validSizes = dims.filter((dim) => dim.Size !== void 0 && dim.Size !== "Varies").map((dim) => Number(dim.Size)).filter((size2) => Number.isFinite(size2) && size2 > 0);
1625
- if (!validSizes.length) {
1626
- return null;
1627
- }
1628
- const size = Math.min(...validSizes);
1629
- return {
1630
- name,
1631
- type: (_b2 = (_a2 = dims[0]) == null ? void 0 : _a2.Type) != null ? _b2 : "OTHER",
1632
- size
1633
- };
1634
- }).filter(
1635
- (entry) => Boolean(entry)
1636
- ).filter(
1637
- (entry) => !__privateMethod(this, _isDimensionExcluded, isDimensionExcluded_fn).call(this, {
1638
- Name: entry.name,
1639
- Type: entry.type
1640
- })
1641
- );
1642
- return filteredCommon;
1643
- };
1644
- _renderJobStatus = new WeakSet();
1645
- renderJobStatus_fn = function() {
1646
- var _a, _b, _c, _d, _e;
1647
- if (!__privateGet(this, _harmonyRequestController).jobId) {
1648
- return b`<div class="results-section" id="job-status-section">
1649
- <div
1650
- style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px;"
1651
- >
1652
- <h2 class="results-title" style="margin: 0;">Results:</h2>
1653
- ${!this.isHistoryView ? b`
1654
- <terra-button
1655
- variant="default"
1656
- size="small"
1657
- @click=${__privateMethod(this, _backToSubsetOptions, backToSubsetOptions_fn)}
1658
- >
1659
- ← Back to Subset Options
1660
- </terra-button>
1661
- ` : A}
1662
- </div>
1663
-
1664
- <div class="progress-container">
1665
- <div class="progress-text">
1666
- <span class="spinner"></span>
1667
- <span class="status-running">Searching for data...</span>
1668
- </div>
1669
-
1670
- <div class="progress-bar">
1671
- <div class="progress-fill" style="width: 0%"></div>
1672
- </div>
1673
- </div>
1674
-
1675
- ${__privateMethod(this, _renderJobMessage, renderJobMessage_fn).call(this)}
1676
- </div>`;
1677
- }
1678
- return b`
1679
- <div class="results-section" id="job-status-section">
1680
- <div
1681
- style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px;"
1682
- >
1683
- <h2 class="results-title" style="margin: 0;">Results:</h2>
1684
- ${!this.isHistoryView ? b`
1685
- <terra-button
1686
- variant="default"
1687
- size="small"
1688
- @click=${__privateMethod(this, _backToSubsetOptions, backToSubsetOptions_fn)}
1689
- >
1690
- ← Back to Subset Options
1691
- </terra-button>
1692
- ` : A}
1693
- </div>
1694
-
1695
- ${__privateGet(this, _harmonyRequestController).status !== "canceled" && __privateGet(this, _harmonyRequestController).status !== "failed" ? b` <div class="progress-container">
1696
- <div class="progress-text">
1697
- ${__privateGet(this, _harmonyRequestController).progress >= 100 ? b`
1698
- <span class="status-complete"
1699
- >✓ Search complete</span
1700
- >
1701
- ` : b`
1702
- <span class="spinner"></span>
1703
- <span class="status-running"
1704
- >Searching for data...
1705
- (${__privateGet(this, _harmonyRequestController).progress}%)</span
1706
- >
1707
- `}
1708
- </div>
1709
-
1710
- <div class="progress-bar">
1711
- <div
1712
- class="progress-fill"
1713
- style="width: ${__privateGet(this, _harmonyRequestController).progress}%"
1714
- ></div>
1715
- </div>
1716
- </div>` : A}
1717
-
1718
- <div class="search-status">
1719
- <span class="file-count"
1720
- >Found ${__privateMethod(this, _numberOfFilesFoundEstimate, numberOfFilesFoundEstimate_fn).call(this)} files</span
1721
- >
1722
- out of estimated
1723
- <span class="estimated-total"
1724
- >${(_a = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _a.numInputGranules.toLocaleString()}</span
1725
- >
1726
- </div>
1727
-
1728
- ${__privateMethod(this, _renderJobMessage, renderJobMessage_fn).call(this)}
1729
- ${((_c = (_b = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _b.errors) == null ? void 0 : _c.length) ? b`
1730
- <terra-accordion>
1731
- <div slot="summary">
1732
- <span
1733
- class="accordion-title"
1734
- style="color: #dc3545;"
1735
- >Errors
1736
- (${(_d = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _d.errors.length})</span
1737
- >
1738
- </div>
1739
- <div class="accordion-content">
1740
- <ul
1741
- style="color: #dc3545; font-size: 14px; padding-left: 20px;"
1742
- >
1743
- ${(_e = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _e.errors.map(
1744
- (err) => b`
1745
- <li style="margin-bottom: 12px;">
1746
- <a
1747
- href="${err.url}"
1748
- target="_blank"
1749
- style="word-break: break-all; color: #dc3545; text-decoration: underline;"
1750
- >
1751
- ${err.url}
1752
- </a>
1753
- <div style="margin-top: 2px;">
1754
- ${err.message}
1755
- </div>
1756
- </li>
1757
- `
1758
- )}
1759
- </ul>
1760
- </div>
1761
- </terra-accordion>
1762
- ` : A}
1763
-
1764
- <div class="tabs">
1765
- <button
1766
- class="tab ${this.selectedTab === "web-links" ? "active" : ""}"
1767
- @click=${() => this.selectedTab = "web-links"}
1768
- >
1769
- Web Links
1770
- </button>
1771
-
1772
- ${!this.isHistoryView ? b`
1773
- <button
1774
- class="tab ${this.selectedTab === "selected-params" ? "active" : ""}"
1775
- @click=${() => this.selectedTab = "selected-params"}
1776
- >
1777
- Selected Parameters
1778
- </button>
1779
- ` : A}
1780
- </div>
1781
- <div
1782
- id="web-links"
1783
- class="tab-content ${this.selectedTab === "web-links" ? "active" : ""}"
1784
- >
1785
- ${__privateMethod(this, _getDocumentationLinks, getDocumentationLinks_fn).call(this).length ? b`
1786
- <div class="documentation-links">
1787
- ${__privateMethod(this, _getDocumentationLinks, getDocumentationLinks_fn).call(this).map(
1788
- (link) => b`
1789
- <a href="${link.href}" class="doc-link"
1790
- >${link.title}</a
1791
- >
1792
- `
1793
- )}
1794
- </div>
1795
- ` : A}
1796
-
1797
- <ul class="file-list">
1798
- ${__privateMethod(this, _getDataLinks, getDataLinks_fn).call(this).map(
1799
- (link) => b`
1800
- <li class="file-item">
1801
- <a
1802
- href="${link.href}"
1803
- class="file-link"
1804
- target="_blank"
1805
- >
1806
- ${link.title}
1807
- </a>
1808
- </li>
1809
- `
1810
- )}
1811
- </ul>
1812
- </div>
1813
-
1814
- <div
1815
- id="selected-params"
1816
- class="tab-content ${this.selectedTab === "selected-params" ? "active" : ""}"
1817
- >
1818
- ${__privateMethod(this, _renderSelectedParams, renderSelectedParams_fn).call(this)}
1819
- </div>
1820
- </div>
1821
-
1822
- ${!this.dialog ? b`
1823
- <div class="footer">
1824
- ${__privateGet(this, _harmonyRequestController).status === "successful" /* SUCCESSFUL */ || __privateGet(this, _harmonyRequestController).status === "complete_with_errors" /* COMPLETE_WITH_ERRORS */ ? b`
1825
- <div
1826
- style="display: flex; align-items: center; gap: 8px;"
1827
- >
1828
- <terra-dropdown
1829
- @terra-select=${__privateMethod(this, _handleDownloadSelect, handleDownloadSelect_fn)}
1830
- >
1831
- <terra-button slot="trigger" caret>
1832
- Download Options
1833
- </terra-button>
1834
- <terra-menu>
1835
- <terra-menu-item value="file-list">
1836
- <svg
1837
- slot="prefix"
1838
- viewBox="0 0 24 24"
1839
- width="16"
1840
- height="16"
1841
- style="width: 16px; height: 16px;"
1842
- >
1843
- <path
1844
- fill="currentColor"
1845
- 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"
1846
- />
1847
- </svg>
1848
- File List
1849
- </terra-menu-item>
1850
- <terra-menu-item
1851
- value="python-script"
1852
- >
1853
- <svg
1854
- slot="prefix"
1855
- viewBox="0 0 128 128"
1856
- width="16"
1857
- height="16"
1858
- style="width: 16px; height: 16px;"
1859
- >
1860
- <path
1861
- fill="currentColor"
1862
- 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"
1863
- ></path>
1864
- </svg>
1865
- Python Script
1866
- </terra-menu-item>
1867
- <terra-menu-item
1868
- value="earthdata-download"
1869
- >
1870
- <svg
1871
- slot="prefix"
1872
- viewBox="0 0 64 64"
1873
- fill="none"
1874
- width="16"
1875
- height="16"
1876
- style="width: 16px; height: 16px;"
1877
- >
1878
- <circle
1879
- cx="32"
1880
- cy="32"
1881
- r="28"
1882
- fill="currentColor"
1883
- />
1884
- <path
1885
- d="M32 14v26M32 40l-9-9M32 40l9-9"
1886
- stroke="#fff"
1887
- stroke-width="4"
1888
- stroke-linecap="round"
1889
- stroke-linejoin="round"
1890
- fill="none"
1891
- />
1892
- </svg>
1893
- Earthdata Download
1894
- </terra-menu-item>
1895
- </terra-menu>
1896
- </terra-dropdown>
1897
-
1898
- <!--
1899
- <terra-button
1900
- outline
1901
- @click=${() => __privateMethod(this, _handleJupyterNotebookClick, handleJupyterNotebookClick_fn).call(this)}
1902
- >
1903
- <terra-icon
1904
- name="outline-code-bracket"
1905
- library="heroicons"
1906
- font-size="1.5em"
1907
- style="margin-right: 5px;"
1908
- ></terra-icon>
1909
- Open in Jupyter Notebook
1910
- </terra-button>
1911
- --></div>
1912
- ` : A}
1913
- ${__privateGet(this, _harmonyRequestController).status === "running" /* RUNNING */ ? b`<button
1914
- class="btn btn-success"
1915
- @click=${__privateMethod(this, _cancelJob, cancelJob_fn)}
1916
- ?disabled=${this.cancelingGetData}
1917
- >
1918
- ${this.cancelingGetData ? "Canceling..." : "Cancel request"}
1919
- </button>` : A}
1920
-
1921
- <div class="job-info">
1922
- Job ID:
1923
- <span class="job-id">
1924
- ${this.bearerToken ? b`<a
1925
- href="https://harmony.earthdata.nasa.gov/jobs/${__privateGet(this, _harmonyRequestController).jobId}"
1926
- target="_blank"
1927
- >${__privateGet(this, _harmonyRequestController).jobId}</a
1928
- >` : __privateGet(this, _harmonyRequestController).jobId}
1929
- </span>
1930
- <span class="info-icon">?</span>
1931
- </div>
1932
- </div>
1933
- ` : A}
1934
- `;
1935
- };
1936
- _renderSelectedParams = new WeakSet();
1937
- renderSelectedParams_fn = function() {
1938
- var _a, _b, _c, _d;
1939
- const collection = (_a = this.collectionWithServices) == null ? void 0 : _a.collection;
1940
- const variables = this.selectedVariables.length ? this.selectedVariables.map((v) => v.name) : ["All"];
1941
- const dateRange = this.selectedDateRange.startDate && this.selectedDateRange.endDate ? `${this.selectedDateRange.startDate} to ${this.selectedDateRange.endDate}` : "\u2014";
1942
- const spatial = (_c = (_b = this.spatialSelection) == null ? void 0 : _b.toString()) != null ? _c : "-";
1943
- return b`
1944
- <dl class="params-summary">
1945
- <div>
1946
- <dt><strong>Dataset</strong></dt>
1947
- <dd>${(_d = collection == null ? void 0 : collection.EntryTitle) != null ? _d : "\u2014"}</dd>
1948
- </div>
1949
- <div>
1950
- <dt><strong>Variables</strong></dt>
1951
- <dd>${variables.map((v) => b`<div>${v}</div>`)}</dd>
1952
- </div>
1953
- <div>
1954
- <dt><strong>Dimensions</strong></dt>
1955
- <dd>
1956
- ${Object.entries(this.selectedDimensionIndexes).length ? Object.entries(this.selectedDimensionIndexes).map(
1957
- ([dimName, value]) => b`<div>
1958
- <strong>${dimName}:</strong> ${value}
1959
- </div>`
1960
- ) : "\u2014"}
1961
- </dd>
1962
- </div>
1963
- <div>
1964
- <dt><strong>Date Range</strong></dt>
1965
- <dd>${dateRange}</dd>
1966
- </div>
1967
- <div>
1968
- <dt><strong>Spatial</strong></dt>
1969
- <dd>${spatial}</dd>
1970
- </div>
1971
- </dl>
1972
-
1973
- <terra-button @click=${__privateMethod(this, _refineParameters, refineParameters_fn)}
1974
- >Refine Parameters</terra-button
1975
- >
1976
- `;
1977
- };
1978
- _cancelJob = new WeakSet();
1979
- cancelJob_fn = async function() {
1980
- if (!this.jobId) {
1981
- return;
1982
- }
1983
- this.cancelingGetData = true;
1984
- try {
1985
- await __privateGet(this, _harmonyRequestController).cancelJob({
1986
- jobId: this.jobId,
1987
- options: { bearerToken: this.bearerToken }
1988
- });
1989
- } finally {
1990
- this.cancelingGetData = false;
1991
- }
1992
- };
1993
- _getData = new WeakSet();
1994
- getData_fn = async function() {
1995
- var _a;
1996
- const validationError = __privateMethod(this, _getGiovanniValidationError, getGiovanniValidationError_fn).call(this);
1997
- if (validationError) {
1998
- this.validationError = validationError;
1999
- __privateMethod(this, _markFieldTouched, markFieldTouched_fn).call(this, "variables");
2000
- return;
2001
- }
2002
- this.validationError = void 0;
2003
- this.cancelingGetData = false;
2004
- __privateMethod(this, _touchAllFields, touchAllFields_fn).call(this);
2005
- const variables = this.selectedFormat.isGiovanniFormat ? this.selectedVariables.map(
2006
- (v) => {
2007
- var _a2, _b, _c;
2008
- return (
2009
- // the Giovanni variable catalog uses different variable entry ids, we need to support them
2010
- // ex. CMR: M2T1NXSLV_5.2.14 in Giovanni uses underscores: M2T1NXSLV_5_2_14
2011
- convertVariableEntryIdToGiovanniFormat(
2012
- (_a2 = this.collectionWithServices.shortName) != null ? _a2 : "",
2013
- (_c = (_b = this.collectionWithServices.collection) == null ? void 0 : _b.Version) != null ? _c : "",
2014
- v.name
2015
- )
2016
- );
2017
- }
2018
- ) : this.selectedVariables.map((v) => v.conceptId);
2019
- const harmonyRequest = new HarmonyRequest({
2020
- collectionConceptId: this.collectionWithServices.conceptId,
2021
- variables,
2022
- location: this.spatialSelection
2023
- });
2024
- if (((_a = this.collectionWithServices) == null ? void 0 : _a.summary.subsetting.temporal) && this.selectedDateRange.startDate && this.selectedDateRange.endDate) {
2025
- harmonyRequest.startDate(
2026
- this.isSubDaily ? this.selectedDateRange.startDate : getUTCDate(this.selectedDateRange.startDate).toISOString()
2027
- );
2028
- harmonyRequest.endDate(
2029
- this.isSubDaily ? this.selectedDateRange.endDate : getUTCDate(this.selectedDateRange.endDate).toISOString()
2030
- );
2031
- }
2032
- if (this.selectedFormat) {
2033
- harmonyRequest.format(
2034
- this.selectedFormat.isGiovanniFormat ? "text/csv" : this.selectedFormat.key
2035
- );
2036
- }
2037
- if (this.selectedFormat.key === "text/csv") {
2038
- harmonyRequest.average("area");
2039
- }
2040
- if (this.selectedFormat.key === "image/tiff") {
2041
- harmonyRequest.average("time");
2042
- }
2043
- if (Object.keys(this.selectedDimensionIndexes).length) {
2044
- Object.entries(this.selectedDimensionIndexes).forEach(
2045
- ([dimName, { start, end }]) => {
2046
- harmonyRequest.dimension({
2047
- name: dimName,
2048
- min: start,
2049
- max: end
2050
- });
2051
- }
2052
- );
2053
- }
2054
- harmonyRequest.label("terra-data-subsetter");
2055
- console.log("Creating Harmony job with request:", harmonyRequest);
2056
- const job = await __privateGet(this, _harmonyRequestController).startJob({
2057
- harmonyRequest,
2058
- options: { bearerToken: this.bearerToken }
2059
- });
2060
- this.jobId = job.jobID;
2061
- setTimeout(() => {
2062
- const el = this.renderRoot.querySelector("#job-status-section");
2063
- el == null ? void 0 : el.scrollIntoView({ behavior: "smooth" });
2064
- }, 100);
2065
- this.refineParameters = false;
2066
- this.isHistoryView = false;
2067
- };
2068
- _touchAllFields = new WeakSet();
2069
- touchAllFields_fn = function() {
2070
- this.touchedFields = /* @__PURE__ */ new Set(["variables", "spatial"]);
2071
- };
2072
- _numberOfFilesFoundEstimate = new WeakSet();
2073
- numberOfFilesFoundEstimate_fn = function() {
2074
- var _a, _b, _c;
2075
- return Math.floor(
2076
- ((_b = (_a = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _a.numInputGranules) != null ? _b : 0) * ((_c = __privateGet(this, _harmonyRequestController).progress) != null ? _c : 0) / 100
2077
- );
2078
- };
2079
- _getDocumentationLinks = new WeakSet();
2080
- getDocumentationLinks_fn = function() {
2081
- var _a, _b;
2082
- return ((_b = (_a = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _a.links) != null ? _b : []).filter(
2083
- (link) => link.rel === "stac-catalog-json"
2084
- );
2085
- };
2086
- _getDataLinks = new WeakSet();
2087
- getDataLinks_fn = function() {
2088
- var _a, _b;
2089
- return ((_b = (_a = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _a.links) != null ? _b : []).filter(
2090
- (link) => link.rel === "data"
2091
- );
2092
- };
2093
- _hasAtLeastOneSubsetOption = new WeakSet();
2094
- hasAtLeastOneSubsetOption_fn = function() {
2095
- var _a, _b, _c, _d;
2096
- 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);
2097
- };
2098
- _hasSpatialSubset = new WeakSet();
2099
- hasSpatialSubset_fn = function() {
2100
- var _a, _b;
2101
- return ((_a = this.collectionWithServices) == null ? void 0 : _a.summary.subsetting.bbox) || ((_b = this.collectionWithServices) == null ? void 0 : _b.summary.subsetting.shape);
2102
- };
2103
- _renderJobMessage = new WeakSet();
2104
- renderJobMessage_fn = function() {
2105
- var _a;
2106
- const warningStatuses = [
2107
- "canceled" /* CANCELED */,
2108
- "complete_with_errors" /* COMPLETE_WITH_ERRORS */,
2109
- "running_with_errors" /* RUNNING_WITH_ERRORS */
2110
- ];
2111
- const errorStatuses = ["failed" /* FAILED */];
2112
- if (!((_a = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _a.status)) {
2113
- return A;
2114
- }
2115
- let type = "normal";
2116
- if (warningStatuses.includes(__privateGet(this, _harmonyRequestController).data.status)) {
2117
- type = "warning";
2118
- } else if (errorStatuses.includes(__privateGet(this, _harmonyRequestController).data.status)) {
2119
- type = "error";
2120
- }
2121
- let color, bg;
2122
- if (type === "error") {
2123
- color = "#dc3545";
2124
- bg = "#f8d7da";
2125
- } else if (type === "warning") {
2126
- color = "#856404";
2127
- bg = "#fff3cd";
2128
- } else {
2129
- color = "#555";
2130
- bg = "#f8f9fa";
2131
- }
2132
- return b`
2133
- <div
2134
- style="
2135
- margin: 24px 0 16px 0;
2136
- padding: 16px 20px;
2137
- border-radius: 6px;
2138
- background: ${bg};
2139
- color: ${color};
2140
- border: 1px solid ${color}22;
2141
- "
2142
- >
2143
- ${__privateMethod(this, _getJobMessageText, getJobMessageText_fn).call(this)}
2144
- </div>
2145
- `;
2146
- };
2147
- _getJobMessageText = new WeakSet();
2148
- getJobMessageText_fn = function() {
2149
- var _a;
2150
- return (_a = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _a.message.replace(
2151
- /\b(The job|the job|job|Job)\b/g,
2152
- (match) => {
2153
- switch (match) {
2154
- case "The job":
2155
- return "Your request";
2156
- case "the job":
2157
- return "Your Request";
2158
- case "job":
2159
- return "request";
2160
- case "Job":
2161
- return "Request";
2162
- }
2163
- return match;
2164
- }
2165
- );
2166
- };
2167
- _estimateJobSize = new WeakSet();
2168
- estimateJobSize_fn = function() {
2169
- var _a, _b, _c, _d, _e;
2170
- if (!((_a = this.collectionWithServices) == null ? void 0 : _a.granuleCount))
2171
- return;
2172
- const range = __privateMethod(this, _getCollectionDateRange, getCollectionDateRange_fn).call(this);
2173
- let startDate;
2174
- let endDate;
2175
- let links = (_c = (_b = this.collectionWithServices) == null ? void 0 : _b.granuleCount) != null ? _c : 0;
2176
- if (this.selectedDateRange.startDate && this.selectedDateRange.endDate) {
2177
- startDate = this.selectedDateRange.startDate;
2178
- endDate = this.selectedDateRange.endDate;
2179
- } else {
2180
- startDate = (_d = this.granuleMinDate) != null ? _d : range.startDate;
2181
- endDate = (_e = this.granuleMaxDate) != null ? _e : range.endDate;
2182
- }
2183
- if (!startDate || !endDate)
2184
- return;
2185
- const start = new Date(startDate);
2186
- const end = new Date(endDate);
2187
- const days = Math.floor((end.getTime() - start.getTime()) / (1e3 * 60 * 60 * 24)) + 1;
2188
- if (range.startDate && range.endDate) {
2189
- const availableDaysInCollection = Math.floor(
2190
- (new Date(range.endDate).getTime() - new Date(range.startDate).getTime()) / (1e3 * 60 * 60 * 24)
2191
- ) + 1;
2192
- const granulesPerDay = links / availableDaysInCollection;
2193
- links = Math.ceil(days * granulesPerDay);
2194
- }
2195
- return { days, links };
2196
- };
2197
- _refineParameters = new WeakSet();
2198
- refineParameters_fn = function() {
2199
- this.refineParameters = true;
2200
- };
2201
- _backToSubsetOptions = new WeakSet();
2202
- backToSubsetOptions_fn = function() {
2203
- this.refineParameters = true;
2204
- setTimeout(() => {
2205
- const container = this.renderRoot.querySelector(".container");
2206
- container == null ? void 0 : container.scrollIntoView({ behavior: "smooth", block: "start" });
2207
- }, 100);
2208
- };
2209
- _viewRunningJob = new WeakSet();
2210
- viewRunningJob_fn = function() {
2211
- this.refineParameters = false;
2212
- setTimeout(() => {
2213
- const el = this.renderRoot.querySelector("#job-status-section");
2214
- el == null ? void 0 : el.scrollIntoView({ behavior: "smooth" });
2215
- }, 100);
2216
- };
2217
- _handleDownloadSelect = new WeakSet();
2218
- handleDownloadSelect_fn = function(event) {
2219
- const item = event.detail.item;
2220
- const value = item.value || item.getTextLabel();
2221
- if (value === "file-list") {
2222
- __privateMethod(this, _downloadLinksAsTxt, downloadLinksAsTxt_fn).call(this, event);
2223
- } else if (value === "python-script") {
2224
- __privateMethod(this, _downloadPythonScript, downloadPythonScript_fn).call(this, event);
2225
- } else if (value === "earthdata-download") {
2226
- __privateMethod(this, _downloadEarthdataDownload, downloadEarthdataDownload_fn).call(this, event);
2227
- }
2228
- };
2229
- _downloadLinksAsTxt = new WeakSet();
2230
- downloadLinksAsTxt_fn = function(event) {
2231
- var _a;
2232
- event.stopPropagation();
2233
- if (!((_a = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _a.links)) {
2234
- return;
2235
- }
2236
- const dataLinks = __privateMethod(this, _getDataLinks, getDataLinks_fn).call(this);
2237
- if (dataLinks.length === 0) {
2238
- return;
2239
- }
2240
- const content = dataLinks.map((link) => link.href).join("\n");
2241
- const blob = new Blob([content], { type: "text/plain" });
2242
- const url = URL.createObjectURL(blob);
2243
- const a = document.createElement("a");
2244
- a.href = url;
2245
- a.download = `subset_links_${__privateGet(this, _harmonyRequestController).jobId}.txt`;
2246
- document.body.appendChild(a);
2247
- a.click();
2248
- document.body.removeChild(a);
2249
- URL.revokeObjectURL(url);
2250
- };
2251
- _downloadPythonScript = new WeakSet();
2252
- downloadPythonScript_fn = async function(event) {
2253
- var _a, _b, _c, _d;
2254
- event.stopPropagation();
2255
- if (!((_a = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _a.links)) {
2256
- return;
2257
- }
2258
- const response = await fetch(
2259
- getBasePath("assets/data-subsetter/download_subset_files.py.txt")
2260
- );
2261
- if (!response.ok) {
2262
- alert(
2263
- "Sorry, there was a problem generating the Python script. We are investigating the issue.\nYou could try using the Jupyter Notebook in the meantime"
2264
- );
2265
- }
2266
- const content = (await response.text()).replace(/{{jobId}}/gi, (_b = __privateGet(this, _harmonyRequestController).jobId) != null ? _b : "").replace(
2267
- /{{HARMONY_ENV}}/gi,
2268
- `Environment.${(_c = this.environment) == null ? void 0 : _c.toUpperCase()}`
2269
- ).replace(
2270
- /{{EARTHACCESS_ENV}}/gi,
2271
- `earthaccess.${(_d = this.environment) == null ? void 0 : _d.toUpperCase()}`
2272
- );
2273
- const blob = new Blob([content], { type: "text/plain" });
2274
- const url = URL.createObjectURL(blob);
2275
- const a = document.createElement("a");
2276
- a.href = url;
2277
- a.download = `download_subset_files_${__privateGet(this, _harmonyRequestController).jobId}.py`;
2278
- document.body.appendChild(a);
2279
- a.click();
2280
- document.body.removeChild(a);
2281
- URL.revokeObjectURL(url);
2282
- };
2283
- _downloadEarthdataDownload = new WeakSet();
2284
- downloadEarthdataDownload_fn = async function(event) {
2285
- var _a;
2286
- event.stopPropagation();
2287
- if (!((_a = __privateGet(this, _harmonyRequestController).data) == null ? void 0 : _a.links)) {
2288
- return;
2289
- }
2290
- alert("Sorry, Earthdata Download is not currently supported");
2291
- };
2292
- _handleJupyterNotebookClick = new WeakSet();
2293
- handleJupyterNotebookClick_fn = function() {
2294
- const notebook = getNotebook(this);
2295
- sendDataToJupyterNotebook("load-notebook", {
2296
- filename: `subset_${__privateGet(this, _harmonyRequestController).jobId}.ipynb`,
2297
- notebook,
2298
- bearerToken: this.bearerToken
2299
- });
2300
- };
2301
- _renderAvailableTemporalRangeSection = new WeakSet();
2302
- renderAvailableTemporalRangeSection_fn = function() {
2303
- const { startDate, endDate } = __privateMethod(this, _getCollectionDateRange, getCollectionDateRange_fn).call(this);
2304
- if (!startDate || !endDate)
2305
- return A;
2306
- return b`
2307
- <div class="section" style="margin-bottom: 16px;">
2308
- <h2 class="section-title">Available Date Range</h2>
2309
- <div style="color: #31708f; margin-top: 8px;">
2310
- <strong>${startDate}</strong> to <strong>${endDate}</strong>
2311
- </div>
2312
- <div style="font-size: 0.95em; color: #666;">
2313
- This collection does not support temporal subsetting.
2314
- </div>
2315
- </div>
2316
- `;
2317
- };
2318
- _renderAvailableSpatialRangeSection = new WeakSet();
2319
- renderAvailableSpatialRangeSection_fn = function() {
2320
- var _a, _b, _c, _d, _e;
2321
- 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;
2322
- if (!boundingRects || !Array.isArray(boundingRects) || !boundingRects.length)
2323
- return A;
2324
- return b`
2325
- <div class="section" style="margin-bottom: 16px;">
2326
- <h2 class="section-title">Available Spatial Area</h2>
2327
- <div style="color: #31708f; margin-top: 8px;">
2328
- ${boundingRects.map(
2329
- (rect) => b`<div>
2330
- <strong>Bounding Box:</strong>
2331
- ${rect.WestBoundingCoordinate},
2332
- ${rect.SouthBoundingCoordinate},
2333
- ${rect.EastBoundingCoordinate},
2334
- ${rect.NorthBoundingCoordinate}
2335
- </div>`
2336
- )}
2337
- </div>
2338
- <div style="font-size: 0.95em; color: #666;">
2339
- This collection does not support spatial subsetting.
2340
- </div>
2341
- </div>
2342
- `;
2343
- };
2344
- _renderDataAccessModeSelection = new WeakSet();
2345
- renderDataAccessModeSelection_fn = function() {
2346
- if (!__privateGet(this, _collectionController).hasGranules) {
2347
- return A;
2348
- }
2349
- return b`
2350
- <div class="mode-selection">
2351
- <div class="mode-options">
2352
- <label
2353
- class="mode-option ${this.dataAccessMode === "original" ? "selected" : ""}"
2354
- >
2355
- <input
2356
- type="radio"
2357
- name="data-access-mode"
2358
- value="original"
2359
- .checked=${this.dataAccessMode === "original"}
2360
- @change=${() => this.dataAccessMode = "original"}
2361
- />
2362
- <div class="mode-content">
2363
- <div class="mode-title">Get Original Files</div>
2364
- <div class="mode-description">
2365
- Filter file links directly from the archive.
2366
- </div>
2367
- </div>
2368
- </label>
2369
-
2370
- <label
2371
- class="mode-option ${this.dataAccessMode === "subset" ? "selected" : ""}"
2372
- >
2373
- <input
2374
- type="radio"
2375
- name="data-access-mode"
2376
- value="subset"
2377
- .checked=${this.dataAccessMode === "subset"}
2378
- @change=${() => this.dataAccessMode = "subset"}
2379
- />
2380
- <div class="mode-content">
2381
- <div class="mode-title">Transform Data</div>
2382
- <div class="mode-description">
2383
- Transform the data to your specific needs.
2384
- </div>
2385
- </div>
2386
- </label>
2387
- </div>
2388
- </div>
2389
- `;
2390
- };
2391
- _getGiovanniValidationError = new WeakSet();
2392
- getGiovanniValidationError_fn = function() {
2393
- if (!this.selectedFormat.isGiovanniFormat) {
2394
- return null;
2395
- }
2396
- if (this.selectedVariables.length === 0) {
2397
- return "Please select a variable to subset.";
2398
- }
2399
- if (this.selectedVariables.length > 1) {
2400
- return "The selected format only supports subsetting one variable at a time.";
2401
- }
2402
- return null;
2403
- };
2404
- TerraDataSubsetter.styles = [component_styles_default, data_subsetter_styles_default];
2405
- TerraDataSubsetter.dependencies = {
2406
- "terra-accordion": TerraAccordion,
2407
- "terra-date-picker": TerraDatePicker,
2408
- "terra-icon": TerraIcon,
2409
- "terra-input": TerraInput,
2410
- "terra-spatial-picker": TerraSpatialPicker,
2411
- "terra-login": TerraLogin,
2412
- "terra-loader": TerraLoader,
2413
- "terra-data-access": TerraDataAccess,
2414
- "terra-dialog": TerraDialog,
2415
- "terra-dropdown": TerraDropdown,
2416
- "terra-menu": TerraMenu,
2417
- "terra-menu-item": TerraMenuItem,
2418
- "terra-button": TerraButton,
2419
- "terra-alert": TerraAlert,
2420
- "terra-slider": TerraSlider
2421
- };
2422
- __decorateClass([
2423
- n({ reflect: true, attribute: "collection-entry-id" })
2424
- ], TerraDataSubsetter.prototype, "collectionEntryId", 2);
2425
- __decorateClass([
2426
- n({ reflect: true, attribute: "short-name" })
2427
- ], TerraDataSubsetter.prototype, "shortName", 2);
2428
- __decorateClass([
2429
- n({ reflect: true, attribute: "version" })
2430
- ], TerraDataSubsetter.prototype, "version", 2);
2431
- __decorateClass([
2432
- n({
2433
- reflect: true,
2434
- type: Boolean,
2435
- attribute: "show-collection-search"
2436
- })
2437
- ], TerraDataSubsetter.prototype, "showCollectionSearch", 2);
2438
- __decorateClass([
2439
- n({ reflect: true, type: Boolean, attribute: "show-history-panel" })
2440
- ], TerraDataSubsetter.prototype, "showHistoryPanel", 2);
2441
- __decorateClass([
2442
- n({ reflect: true, attribute: "job-id" })
2443
- ], TerraDataSubsetter.prototype, "jobId", 2);
2444
- __decorateClass([
2445
- n({ attribute: "bearer-token" })
2446
- ], TerraDataSubsetter.prototype, "bearerToken", 2);
2447
- __decorateClass([
2448
- n()
2449
- ], TerraDataSubsetter.prototype, "features", 2);
2450
- __decorateClass([
2451
- n({ reflect: true })
2452
- ], TerraDataSubsetter.prototype, "dialog", 2);
2453
- __decorateClass([
2454
- n({ reflect: true, type: Boolean, attribute: "is-history-view" })
2455
- ], TerraDataSubsetter.prototype, "isHistoryView", 2);
2456
- __decorateClass([
2457
- r()
2458
- ], TerraDataSubsetter.prototype, "collectionWithServices", 2);
2459
- __decorateClass([
2460
- r()
2461
- ], TerraDataSubsetter.prototype, "selectedVariables", 2);
2462
- __decorateClass([
2463
- r()
2464
- ], TerraDataSubsetter.prototype, "selectedDimensionIndexes", 2);
2465
- __decorateClass([
2466
- r()
2467
- ], TerraDataSubsetter.prototype, "expandedVariableGroups", 2);
2468
- __decorateClass([
2469
- r()
2470
- ], TerraDataSubsetter.prototype, "variableFilterText", 2);
2471
- __decorateClass([
2472
- r()
2473
- ], TerraDataSubsetter.prototype, "touchedFields", 2);
2474
- __decorateClass([
2475
- r()
2476
- ], TerraDataSubsetter.prototype, "spatialSelection", 2);
2477
- __decorateClass([
2478
- r()
2479
- ], TerraDataSubsetter.prototype, "selectedDateRange", 2);
2480
- __decorateClass([
2481
- r()
2482
- ], TerraDataSubsetter.prototype, "selectedFormat", 2);
2483
- __decorateClass([
2484
- r()
2485
- ], TerraDataSubsetter.prototype, "cancelingGetData", 2);
2486
- __decorateClass([
2487
- r()
2488
- ], TerraDataSubsetter.prototype, "selectedTab", 2);
2489
- __decorateClass([
2490
- r()
2491
- ], TerraDataSubsetter.prototype, "refineParameters", 2);
2492
- __decorateClass([
2493
- r()
2494
- ], TerraDataSubsetter.prototype, "collectionSearchType", 2);
2495
- __decorateClass([
2496
- r()
2497
- ], TerraDataSubsetter.prototype, "collectionSearchQuery", 2);
2498
- __decorateClass([
2499
- r()
2500
- ], TerraDataSubsetter.prototype, "collectionSearchLoading", 2);
2501
- __decorateClass([
2502
- r()
2503
- ], TerraDataSubsetter.prototype, "collectionSearchResults", 2);
2504
- __decorateClass([
2505
- r()
2506
- ], TerraDataSubsetter.prototype, "collectionLoading", 2);
2507
- __decorateClass([
2508
- r()
2509
- ], TerraDataSubsetter.prototype, "collectionAccordionOpen", 2);
2510
- __decorateClass([
2511
- r()
2512
- ], TerraDataSubsetter.prototype, "dataAccessMode", 2);
2513
- __decorateClass([
2514
- r()
2515
- ], TerraDataSubsetter.prototype, "validationError", 2);
2516
- __decorateClass([
2517
- r()
2518
- ], TerraDataSubsetter.prototype, "granuleMinDate", 2);
2519
- __decorateClass([
2520
- r()
2521
- ], TerraDataSubsetter.prototype, "granuleMaxDate", 2);
2522
- __decorateClass([
2523
- r()
2524
- ], TerraDataSubsetter.prototype, "giovanniConfiguredVariables", 2);
2525
- __decorateClass([
2526
- e('[part~="spatial-picker"]')
2527
- ], TerraDataSubsetter.prototype, "spatialPicker", 2);
2528
- __decorateClass([
2529
- e("terra-dialog")
2530
- ], TerraDataSubsetter.prototype, "dialogElement", 2);
2531
- __decorateClass([
2532
- watch(["jobId"], { waitUntilFirstUpdate: true })
2533
- ], TerraDataSubsetter.prototype, "jobIdChanged", 1);
2534
- __decorateClass([
2535
- watch(["shortName", "version"])
2536
- ], TerraDataSubsetter.prototype, "shortNameAndVersionChanged", 1);
2537
- __decorateClass([
2538
- watch("collectionEntryId", { waitUntilFirstUpdate: true })
2539
- ], TerraDataSubsetter.prototype, "collectionEntryIdChanged", 1);
2540
- __decorateClass([
2541
- watch(["collectionWithServices"])
2542
- ], TerraDataSubsetter.prototype, "collectionChanged", 1);
2543
- __decorateClass([
2544
- watch(["granuleMinDate", "granuleMaxDate"])
2545
- ], TerraDataSubsetter.prototype, "granuleDatesChanged", 1);
2546
- __decorateClass([
2547
- watch("selectedFormat")
2548
- ], TerraDataSubsetter.prototype, "selectedFormatChanged", 1);
2549
- __decorateClass([
2550
- debounce(500)
2551
- ], TerraDataSubsetter.prototype, "handleCollectionSearch", 1);
2552
-
2553
- export {
2554
- TerraDataSubsetter
2555
- };