@nasa-terra/components 0.0.2 → 0.0.3

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 (181) hide show
  1. package/cdn/chunks/{chunk.5UBB7KZQ.js → chunk.2LF7SMGQ.js} +10 -12
  2. package/cdn/chunks/{chunk.SXUZHG2G.js → chunk.3JODJSTO.js} +1 -1
  3. package/cdn/chunks/{chunk.HMECFSJ3.js → chunk.4D2G6L4V.js} +1 -1
  4. package/cdn/chunks/{chunk.P4LXCHCY.js → chunk.566BRIWX.js} +1 -1
  5. package/{dist/chunks/chunk.356TZEPJ.js → cdn/chunks/chunk.74CNHGFN.js} +1 -1
  6. package/cdn/chunks/{chunk.2WF7EATT.js → chunk.A3BJQZCH.js} +6 -6
  7. package/cdn/chunks/{chunk.II3GR7YQ.js → chunk.B2HOKF44.js} +4 -4
  8. package/cdn/chunks/{chunk.5OVZEQPW.js → chunk.E2SRXXI6.js} +1 -1
  9. package/cdn/chunks/{chunk.2LH52WLN.js → chunk.ELPRRHTE.js} +5 -5
  10. package/cdn/chunks/{chunk.H4SLY4KN.js → chunk.FS5IKMJD.js} +1 -1
  11. package/cdn/chunks/{chunk.S6SLZPVX.js → chunk.GR5QBZMP.js} +1 -1
  12. package/{dist/chunks/chunk.RCELHBSG.js → cdn/chunks/chunk.HCBG34UV.js} +1 -1
  13. package/cdn/chunks/{chunk.U6DUAIIP.js → chunk.IKBILRIY.js} +21 -0
  14. package/cdn/chunks/{chunk.KZIVL4LN.js → chunk.JCBJR2VJ.js} +1 -1
  15. package/cdn/chunks/{chunk.FYB4LVNE.js → chunk.JE7ZZRL6.js} +4 -4
  16. package/cdn/chunks/{chunk.A4PYD2BT.js → chunk.JM6ZF7AP.js} +4 -1
  17. package/{dist/chunks/chunk.34BDCGAS.js → cdn/chunks/chunk.JOSFOMOK.js} +1 -1
  18. package/{dist/chunks/chunk.6HHKJO37.js → cdn/chunks/chunk.JUCL53DU.js} +1 -1
  19. package/cdn/chunks/{chunk.BHVFJEIU.js → chunk.K6YHM5TZ.js} +7 -3
  20. package/cdn/chunks/{chunk.KQ6GR2XZ.js → chunk.LBKLXTIO.js} +77 -52
  21. package/{dist/chunks/chunk.LXV5KI76.js → cdn/chunks/chunk.LHW6ZEEG.js} +1 -1
  22. package/cdn/chunks/{chunk.RS4CISKV.js → chunk.LIQU3FGS.js} +1 -1
  23. package/{dist/chunks/chunk.NA6RDAQK.js → cdn/chunks/chunk.LT6GFPPN.js} +1 -1
  24. package/{dist/chunks/chunk.ZI3RW2HX.js → cdn/chunks/chunk.M4QB4Z2D.js} +1 -1
  25. package/cdn/chunks/{chunk.VHMYUAU5.js → chunk.ON2RU4HZ.js} +4 -4
  26. package/cdn/chunks/{chunk.CSZAFBCJ.js → chunk.ONGS57TV.js} +1 -1
  27. package/cdn/chunks/{chunk.KFYWXDIT.js → chunk.PDXFKRVY.js} +4 -4
  28. package/cdn/chunks/{chunk.ORXIH4AJ.js → chunk.PM3G4HWU.js} +1 -1
  29. package/cdn/chunks/{chunk.4OFE6FHL.js → chunk.PS5CJCUL.js} +1 -1
  30. package/cdn/chunks/{chunk.BLFAG25A.js → chunk.RXDN2NM7.js} +1 -1
  31. package/cdn/chunks/{chunk.2YI7V6QJ.js → chunk.SBDX4GGT.js} +24 -0
  32. package/{dist/chunks/chunk.WCD47X2N.js → cdn/chunks/chunk.SNTGQTAS.js} +1 -1
  33. package/{dist/chunks/chunk.TEY3I3LS.js → cdn/chunks/chunk.U5J3OV4V.js} +1 -1
  34. package/cdn/chunks/{chunk.MOL3RELR.js → chunk.X56PW5HS.js} +1 -1
  35. package/cdn/chunks/{chunk.PUWFHEBP.js → chunk.XQOP7YET.js} +1 -1
  36. package/cdn/chunks/{chunk.SQUNJ4EJ.js → chunk.XZEK52FD.js} +1 -1
  37. package/cdn/chunks/{chunk.PYRUETLC.js → chunk.ZO75EFUN.js} +2 -2
  38. package/{dist/chunks/chunk.6G6MC7ET.js → cdn/chunks/chunk.ZUGL2FNZ.js} +1 -1
  39. package/cdn/components/button/button.component.js +3 -3
  40. package/cdn/components/button/button.js +4 -4
  41. package/cdn/components/chip/chip.component.js +3 -3
  42. package/cdn/components/chip/chip.js +4 -4
  43. package/cdn/components/combobox/combobox.component.js +4 -4
  44. package/cdn/components/combobox/combobox.js +5 -5
  45. package/cdn/components/date-range-slider/date-range-slider.component.js +3 -3
  46. package/cdn/components/date-range-slider/date-range-slider.js +4 -4
  47. package/cdn/components/icon/icon.component.js +5 -5
  48. package/cdn/components/icon/icon.js +6 -6
  49. package/cdn/components/icon/library.js +2 -2
  50. package/cdn/components/loader/loader.component.d.ts +2 -0
  51. package/cdn/components/loader/loader.component.js +3 -3
  52. package/cdn/components/loader/loader.js +4 -4
  53. package/cdn/components/loader/loader.styles.js +1 -1
  54. package/cdn/components/map/map.component.js +2 -2
  55. package/cdn/components/map/map.js +3 -3
  56. package/cdn/components/plot/plot.component.js +2 -2
  57. package/cdn/components/plot/plot.js +3 -3
  58. package/cdn/components/spatial-picker/spatial-picker.component.js +3 -3
  59. package/cdn/components/spatial-picker/spatial-picker.js +4 -4
  60. package/cdn/components/time-series/time-series.component.d.ts +4 -0
  61. package/cdn/components/time-series/time-series.component.js +29 -27
  62. package/cdn/components/time-series/time-series.controller.d.ts +1 -0
  63. package/cdn/components/time-series/time-series.controller.js +1 -1
  64. package/cdn/components/time-series/time-series.js +30 -28
  65. package/cdn/components/time-series/time-series.styles.js +1 -1
  66. package/cdn/components/variable-combobox/variable-combobox.component.js +14 -14
  67. package/cdn/components/variable-combobox/variable-combobox.controller.js +1 -1
  68. package/cdn/components/variable-combobox/variable-combobox.js +15 -15
  69. package/cdn/custom-elements.json +494 -468
  70. package/cdn/react/button/index.js +4 -4
  71. package/cdn/react/chip/index.js +4 -4
  72. package/cdn/react/combobox/index.js +5 -5
  73. package/cdn/react/date-range-slider/index.js +4 -4
  74. package/cdn/react/icon/index.js +6 -6
  75. package/cdn/react/index.d.ts +3 -3
  76. package/cdn/react/index.js +53 -53
  77. package/cdn/react/loader/index.js +4 -4
  78. package/cdn/react/map/index.js +3 -3
  79. package/cdn/react/plot/index.js +3 -3
  80. package/cdn/react/spatial-picker/index.js +4 -4
  81. package/cdn/react/time-series/index.d.ts +2 -0
  82. package/cdn/react/time-series/index.js +30 -28
  83. package/cdn/react/variable-combobox/index.js +15 -15
  84. package/cdn/terra-ui-components.js +57 -57
  85. package/cdn/types/vue/index.d.ts +68 -66
  86. package/cdn/utilities/animation.js +3 -3
  87. package/cdn/utilities/icon-library.js +2 -2
  88. package/cdn/vscode.html-custom-data.json +83 -78
  89. package/cdn/web-types.json +169 -159
  90. package/dist/chunks/{chunk.DKCU7YEZ.js → chunk.2RJXTLAA.js} +10 -12
  91. package/dist/chunks/{chunk.WHJHZJ6L.js → chunk.33FFT37R.js} +2 -2
  92. package/dist/chunks/{chunk.6HBNUONX.js → chunk.3SRITTYR.js} +1 -1
  93. package/dist/chunks/{chunk.XPQYTQXW.js → chunk.4GCNO2RC.js} +4 -4
  94. package/dist/chunks/{chunk.XK7GWNRK.js → chunk.6DRNHPKF.js} +1 -1
  95. package/dist/chunks/{chunk.ACNC5AZO.js → chunk.7DFKM3M3.js} +1 -1
  96. package/dist/chunks/{chunk.D44WRZDJ.js → chunk.AJUYULUM.js} +1 -1
  97. package/{cdn/chunks/chunk.RDW2UZ5N.js → dist/chunks/chunk.ALFBRTWT.js} +1 -1
  98. package/dist/chunks/{chunk.TFKJWQKC.js → chunk.B7L6K56Y.js} +7 -3
  99. package/dist/chunks/{chunk.I2NEFB34.js → chunk.CL62YJ3N.js} +21 -0
  100. package/dist/chunks/{chunk.HJ4OGF6V.js → chunk.EDKH7GOS.js} +1 -1
  101. package/{cdn/chunks/chunk.KCXQJJZ4.js → dist/chunks/chunk.EPOITANB.js} +1 -1
  102. package/{cdn/chunks/chunk.3NOH36JE.js → dist/chunks/chunk.FLO6VVGK.js} +1 -1
  103. package/dist/chunks/{chunk.4WNMOJSX.js → chunk.FOD357NT.js} +35 -12
  104. package/dist/chunks/{chunk.ZGJAUXFV.js → chunk.GPUFE4ML.js} +24 -0
  105. package/dist/chunks/{chunk.MWHQHPUM.js → chunk.GWHZAFS3.js} +4 -1
  106. package/dist/chunks/{chunk.RHF5LAQQ.js → chunk.HSPKB2MG.js} +1 -1
  107. package/dist/chunks/{chunk.26XMYCND.js → chunk.IOP7DABN.js} +6 -6
  108. package/dist/chunks/{chunk.K3PPW47B.js → chunk.JL4ZDCDW.js} +4 -4
  109. package/dist/chunks/{chunk.EPMXIUY7.js → chunk.KJIDKCTU.js} +1 -1
  110. package/{cdn/chunks/chunk.EH44OY6V.js → dist/chunks/chunk.LUYLEISL.js} +1 -1
  111. package/dist/chunks/{chunk.LMUMRQLT.js → chunk.LXE4USTN.js} +1 -1
  112. package/dist/chunks/{chunk.R32FZJSC.js → chunk.LZWNT5PB.js} +1 -1
  113. package/dist/chunks/{chunk.5LBNOLAY.js → chunk.MMYKMN6B.js} +4 -4
  114. package/dist/chunks/{chunk.KWCEJCNP.js → chunk.MPA4M3E7.js} +1 -1
  115. package/{cdn/chunks/chunk.EGBZ7Z36.js → dist/chunks/chunk.MVKAIELO.js} +1 -1
  116. package/{cdn/chunks/chunk.CO6OXP3P.js → dist/chunks/chunk.NF7CULQM.js} +1 -1
  117. package/dist/chunks/{chunk.37CMTFD4.js → chunk.OIEDIUMT.js} +1 -1
  118. package/dist/chunks/{chunk.UTUM2YTN.js → chunk.PRBM2XXL.js} +1 -1
  119. package/dist/chunks/{chunk.HBEQ6SPT.js → chunk.PSTXVQB5.js} +1 -1
  120. package/dist/chunks/{chunk.37V2INM4.js → chunk.PU5MKRJ3.js} +5 -5
  121. package/{cdn/chunks/chunk.5NSDKQFA.js → dist/chunks/chunk.Q2BSVCPH.js} +1 -1
  122. package/{cdn/chunks/chunk.76UFIPPH.js → dist/chunks/chunk.S2WDTAIJ.js} +1 -1
  123. package/{cdn/chunks/chunk.C3FZSGJM.js → dist/chunks/chunk.S4JQ7QD5.js} +1 -1
  124. package/{cdn/chunks/chunk.7UVCVDMD.js → dist/chunks/chunk.XLQO6OZU.js} +1 -1
  125. package/dist/chunks/{chunk.ZUWKLZ5N.js → chunk.YRZFOIW4.js} +1 -1
  126. package/dist/chunks/{chunk.LAFN7QOI.js → chunk.YUEY7TCJ.js} +1 -1
  127. package/dist/chunks/{chunk.3OTXIELM.js → chunk.ZB6UWPGQ.js} +4 -4
  128. package/dist/components/button/button.component.js +3 -3
  129. package/dist/components/button/button.js +4 -4
  130. package/dist/components/chip/chip.component.js +2 -2
  131. package/dist/components/chip/chip.js +3 -3
  132. package/dist/components/combobox/combobox.component.js +3 -3
  133. package/dist/components/combobox/combobox.js +4 -4
  134. package/dist/components/date-range-slider/date-range-slider.component.js +3 -3
  135. package/dist/components/date-range-slider/date-range-slider.js +4 -4
  136. package/dist/components/icon/icon.component.js +4 -4
  137. package/dist/components/icon/icon.js +5 -5
  138. package/dist/components/icon/library.js +2 -2
  139. package/dist/components/loader/loader.component.d.ts +2 -0
  140. package/dist/components/loader/loader.component.js +3 -3
  141. package/dist/components/loader/loader.js +4 -4
  142. package/dist/components/loader/loader.styles.js +1 -1
  143. package/dist/components/map/map.component.js +2 -2
  144. package/dist/components/map/map.js +3 -3
  145. package/dist/components/plot/plot.component.js +2 -2
  146. package/dist/components/plot/plot.js +3 -3
  147. package/dist/components/spatial-picker/spatial-picker.component.js +3 -3
  148. package/dist/components/spatial-picker/spatial-picker.js +4 -4
  149. package/dist/components/time-series/time-series.component.d.ts +4 -0
  150. package/dist/components/time-series/time-series.component.js +24 -22
  151. package/dist/components/time-series/time-series.controller.d.ts +1 -0
  152. package/dist/components/time-series/time-series.controller.js +1 -1
  153. package/dist/components/time-series/time-series.js +25 -23
  154. package/dist/components/time-series/time-series.styles.js +1 -1
  155. package/dist/components/variable-combobox/variable-combobox.component.js +11 -11
  156. package/dist/components/variable-combobox/variable-combobox.controller.js +1 -1
  157. package/dist/components/variable-combobox/variable-combobox.js +12 -12
  158. package/dist/custom-elements.json +494 -468
  159. package/dist/react/button/index.js +4 -4
  160. package/dist/react/chip/index.js +3 -3
  161. package/dist/react/combobox/index.js +4 -4
  162. package/dist/react/date-range-slider/index.js +4 -4
  163. package/dist/react/icon/index.js +5 -5
  164. package/dist/react/index.d.ts +3 -3
  165. package/dist/react/index.js +48 -48
  166. package/dist/react/loader/index.js +4 -4
  167. package/dist/react/map/index.js +3 -3
  168. package/dist/react/plot/index.js +3 -3
  169. package/dist/react/spatial-picker/index.js +4 -4
  170. package/dist/react/time-series/index.d.ts +2 -0
  171. package/dist/react/time-series/index.js +25 -23
  172. package/dist/react/variable-combobox/index.js +12 -12
  173. package/dist/terra-ui-components.js +49 -49
  174. package/dist/types/vue/index.d.ts +68 -66
  175. package/dist/utilities/icon-library.js +2 -2
  176. package/dist/vscode.html-custom-data.json +83 -78
  177. package/dist/web-types.json +169 -159
  178. package/package.json +1 -1
  179. package/cdn/chunks/{chunk.XR56EMXH.js → chunk.LQCRC4E2.js} +8 -8
  180. package/{dist/chunks/chunk.7DOMZGX7.js → cdn/chunks/chunk.MDRUDBRH.js} +3 -3
  181. package/{cdn/chunks/chunk.7DOMZGX7.js → dist/chunks/chunk.MDRUDBRH.js} +3 -3
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://raw.githubusercontent.com/JetBrains/web-types/master/schema/web-types.json",
3
3
  "name": "@nasa-terra/components",
4
- "version": "0.0.2",
4
+ "version": "0.0.3",
5
5
  "description-markup": "markdown",
6
6
  "contributions": {
7
7
  "html": {
@@ -268,28 +268,6 @@
268
268
  "events": []
269
269
  }
270
270
  },
271
- {
272
- "name": "terra-chip",
273
- "description": "Used for contacts and tags\n---\n\n\n### **Slots:**\n - _default_ - The chip's label.",
274
- "doc-url": "",
275
- "attributes": [
276
- {
277
- "name": "size",
278
- "value": {
279
- "type": "'small' | 'medium' | 'large'",
280
- "default": "'medium'"
281
- }
282
- }
283
- ],
284
- "slots": [{ "name": "", "description": "The chip's label." }],
285
- "events": [],
286
- "js": {
287
- "properties": [
288
- { "name": "size", "type": "'small' | 'medium' | 'large'" }
289
- ],
290
- "events": []
291
- }
292
- },
293
271
  {
294
272
  "name": "terra-combobox",
295
273
  "description": "Fuzzy-search for combobox with list autocomplete.\n---\n\n\n### **CSS Properties:**\n - **--host-height** - The height of the host element. _(default: undefined)_\n- **--help-height** - The height of the search help element. _(default: undefined)_\n- **--label-height** - The height of the input's label element. _(default: undefined)_\n\n### **CSS Parts:**\n - **base** - A `search` element, the component's base.\n- **combobox** - An `input` element used for searching.\n- **button** - A `button` used for toggling the listbox's visibility.\n- **listbox** - A `ul` that holds the clickable options.",
@@ -434,104 +412,6 @@
434
412
  "events": []
435
413
  }
436
414
  },
437
- {
438
- "name": "terra-icon",
439
- "description": "Icons are symbols that can be used to represent various options within an application.\n---\n\n\n### **Events:**\n - **terra-load** - Emitted when the icon has loaded.\n- **terra-error** - Emitted when the icon fails to load due to an error.\n\n### **CSS Parts:**\n - **svg** - The internal SVG element.",
440
- "doc-url": "",
441
- "attributes": [
442
- {
443
- "name": "name",
444
- "description": "The name of the icon to draw. Available names depend on the icon library being used.",
445
- "value": { "type": "string | undefined" }
446
- },
447
- {
448
- "name": "src",
449
- "description": "An external URL of an SVG file. Be sure you trust the content you are including, as it will be executed as code and\ncan result in XSS attacks.",
450
- "value": { "type": "string | undefined" }
451
- },
452
- {
453
- "name": "label",
454
- "description": "An alternate description to use for assistive devices. If omitted, the icon will be considered presentational and\nignored by assistive devices.",
455
- "value": { "type": "string", "default": "''" }
456
- },
457
- {
458
- "name": "library",
459
- "description": "The name of a registered custom icon library.",
460
- "value": {
461
- "type": "'default' | 'heroicons' | string",
462
- "default": "'default'"
463
- }
464
- },
465
- {
466
- "name": "color",
467
- "description": "The CSS color to assign to the SVG.",
468
- "value": { "type": "string | null", "default": "null" }
469
- },
470
- {
471
- "name": "font-size",
472
- "description": "The CSS font-size to assign to the SVG.",
473
- "value": { "type": "string | null", "default": "null" }
474
- }
475
- ],
476
- "events": [
477
- {
478
- "name": "terra-load",
479
- "description": "Emitted when the icon has loaded."
480
- },
481
- {
482
- "name": "terra-error",
483
- "description": "Emitted when the icon fails to load due to an error."
484
- }
485
- ],
486
- "js": {
487
- "properties": [
488
- {
489
- "name": "svg",
490
- "type": "SVGElement | HTMLTemplateResult | null"
491
- },
492
- {
493
- "name": "name",
494
- "description": "The name of the icon to draw. Available names depend on the icon library being used.",
495
- "type": "string | undefined"
496
- },
497
- {
498
- "name": "src",
499
- "description": "An external URL of an SVG file. Be sure you trust the content you are including, as it will be executed as code and\ncan result in XSS attacks.",
500
- "type": "string | undefined"
501
- },
502
- {
503
- "name": "label",
504
- "description": "An alternate description to use for assistive devices. If omitted, the icon will be considered presentational and\nignored by assistive devices.",
505
- "type": "string"
506
- },
507
- {
508
- "name": "library",
509
- "description": "The name of a registered custom icon library.",
510
- "type": "'default' | 'heroicons' | string"
511
- },
512
- {
513
- "name": "color",
514
- "description": "The CSS color to assign to the SVG.",
515
- "type": "string | null"
516
- },
517
- {
518
- "name": "fontSize",
519
- "description": "The CSS font-size to assign to the SVG.",
520
- "type": "string | null"
521
- }
522
- ],
523
- "events": [
524
- {
525
- "name": "terra-load",
526
- "description": "Emitted when the icon has loaded."
527
- },
528
- {
529
- "name": "terra-error",
530
- "description": "Emitted when the icon fails to load due to an error."
531
- }
532
- ]
533
- }
534
- },
535
415
  {
536
416
  "name": "terra-loader",
537
417
  "description": "Loaders are used to indicate there is content that is loading.\n---\n\n\n### **CSS Properties:**\n - **--example** - An example CSS custom property. _(default: undefined)_\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.",
@@ -552,6 +432,11 @@
552
432
  "description": "The percent complete for the loader to display",
553
433
  "value": { "type": "number", "default": "0" }
554
434
  },
435
+ {
436
+ "name": "indeterminate",
437
+ "description": "an indeterminate loader has an unknown progress and will show a spinner",
438
+ "value": { "type": "boolean", "default": "false" }
439
+ },
555
440
  {
556
441
  "name": "label",
557
442
  "description": "A label used by a screen reader which describes the loader element (e.g., \"Loading video of Tropical Storm Nepartak\")",
@@ -581,6 +466,11 @@
581
466
  "description": "The percent complete for the loader to display",
582
467
  "type": "number"
583
468
  },
469
+ {
470
+ "name": "indeterminate",
471
+ "description": "an indeterminate loader has an unknown progress and will show a spinner",
472
+ "type": "boolean"
473
+ },
584
474
  {
585
475
  "name": "label",
586
476
  "description": "A label used by a screen reader which describes the loader element (e.g., \"Loading video of Tropical Storm Nepartak\")",
@@ -595,6 +485,66 @@
595
485
  "events": []
596
486
  }
597
487
  },
488
+ {
489
+ "name": "terra-chip",
490
+ "description": "Used for contacts and tags\n---\n\n\n### **Slots:**\n - _default_ - The chip's label.",
491
+ "doc-url": "",
492
+ "attributes": [
493
+ {
494
+ "name": "size",
495
+ "value": {
496
+ "type": "'small' | 'medium' | 'large'",
497
+ "default": "'medium'"
498
+ }
499
+ }
500
+ ],
501
+ "slots": [{ "name": "", "description": "The chip's label." }],
502
+ "events": [],
503
+ "js": {
504
+ "properties": [
505
+ { "name": "size", "type": "'small' | 'medium' | 'large'" }
506
+ ],
507
+ "events": []
508
+ }
509
+ },
510
+ {
511
+ "name": "terra-plot",
512
+ "description": "A web component for interactive graphs using Plotly.js.\n---\n\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.",
513
+ "doc-url": "",
514
+ "attributes": [
515
+ { "name": "plotTitle", "value": { "type": "string | undefined" } },
516
+ {
517
+ "name": "layout",
518
+ "value": {
519
+ "type": "Partial<Layout> | undefined",
520
+ "default": "{}"
521
+ }
522
+ },
523
+ {
524
+ "name": "config",
525
+ "value": {
526
+ "type": "Partial<Config> | undefined",
527
+ "default": "{\n modeBarButtonsToAdd: [\n {\n name: 'Download Data',\n title: 'Download plot data as a CSV file',\n icon: Icons.disk,\n click: () => {\n this.downloadCSV()\n },\n },\n ],\n }"
528
+ }
529
+ },
530
+ {
531
+ "name": "data",
532
+ "value": { "type": "Array<Partial<Data>>", "default": "[]" }
533
+ }
534
+ ],
535
+ "events": [],
536
+ "js": {
537
+ "properties": [
538
+ { "name": "plotData", "type": "Array<Plot>" },
539
+ { "name": "base", "type": "HTMLElement" },
540
+ { "name": "plotTitle", "type": "string | undefined" },
541
+ { "name": "layout", "type": "Partial<Layout> | undefined" },
542
+ { "name": "config", "type": "Partial<Config> | undefined" },
543
+ { "name": "data", "type": "Array<Partial<Data>>" }
544
+ ],
545
+ "events": []
546
+ }
547
+ },
598
548
  {
599
549
  "name": "terra-map",
600
550
  "description": "A map component for visualizing and selecting coordinates.\n---\n",
@@ -678,6 +628,104 @@
678
628
  "events": []
679
629
  }
680
630
  },
631
+ {
632
+ "name": "terra-icon",
633
+ "description": "Icons are symbols that can be used to represent various options within an application.\n---\n\n\n### **Events:**\n - **terra-load** - Emitted when the icon has loaded.\n- **terra-error** - Emitted when the icon fails to load due to an error.\n\n### **CSS Parts:**\n - **svg** - The internal SVG element.",
634
+ "doc-url": "",
635
+ "attributes": [
636
+ {
637
+ "name": "name",
638
+ "description": "The name of the icon to draw. Available names depend on the icon library being used.",
639
+ "value": { "type": "string | undefined" }
640
+ },
641
+ {
642
+ "name": "src",
643
+ "description": "An external URL of an SVG file. Be sure you trust the content you are including, as it will be executed as code and\ncan result in XSS attacks.",
644
+ "value": { "type": "string | undefined" }
645
+ },
646
+ {
647
+ "name": "label",
648
+ "description": "An alternate description to use for assistive devices. If omitted, the icon will be considered presentational and\nignored by assistive devices.",
649
+ "value": { "type": "string", "default": "''" }
650
+ },
651
+ {
652
+ "name": "library",
653
+ "description": "The name of a registered custom icon library.",
654
+ "value": {
655
+ "type": "'default' | 'heroicons' | string",
656
+ "default": "'default'"
657
+ }
658
+ },
659
+ {
660
+ "name": "color",
661
+ "description": "The CSS color to assign to the SVG.",
662
+ "value": { "type": "string | null", "default": "null" }
663
+ },
664
+ {
665
+ "name": "font-size",
666
+ "description": "The CSS font-size to assign to the SVG.",
667
+ "value": { "type": "string | null", "default": "null" }
668
+ }
669
+ ],
670
+ "events": [
671
+ {
672
+ "name": "terra-load",
673
+ "description": "Emitted when the icon has loaded."
674
+ },
675
+ {
676
+ "name": "terra-error",
677
+ "description": "Emitted when the icon fails to load due to an error."
678
+ }
679
+ ],
680
+ "js": {
681
+ "properties": [
682
+ {
683
+ "name": "svg",
684
+ "type": "SVGElement | HTMLTemplateResult | null"
685
+ },
686
+ {
687
+ "name": "name",
688
+ "description": "The name of the icon to draw. Available names depend on the icon library being used.",
689
+ "type": "string | undefined"
690
+ },
691
+ {
692
+ "name": "src",
693
+ "description": "An external URL of an SVG file. Be sure you trust the content you are including, as it will be executed as code and\ncan result in XSS attacks.",
694
+ "type": "string | undefined"
695
+ },
696
+ {
697
+ "name": "label",
698
+ "description": "An alternate description to use for assistive devices. If omitted, the icon will be considered presentational and\nignored by assistive devices.",
699
+ "type": "string"
700
+ },
701
+ {
702
+ "name": "library",
703
+ "description": "The name of a registered custom icon library.",
704
+ "type": "'default' | 'heroicons' | string"
705
+ },
706
+ {
707
+ "name": "color",
708
+ "description": "The CSS color to assign to the SVG.",
709
+ "type": "string | null"
710
+ },
711
+ {
712
+ "name": "fontSize",
713
+ "description": "The CSS font-size to assign to the SVG.",
714
+ "type": "string | null"
715
+ }
716
+ ],
717
+ "events": [
718
+ {
719
+ "name": "terra-load",
720
+ "description": "Emitted when the icon has loaded."
721
+ },
722
+ {
723
+ "name": "terra-error",
724
+ "description": "Emitted when the icon fails to load due to an error."
725
+ }
726
+ ]
727
+ }
728
+ },
681
729
  {
682
730
  "name": "terra-spatial-picker",
683
731
  "description": "A component that allows input of coordinates and rendering of map.\n---\n",
@@ -784,44 +832,6 @@
784
832
  "events": []
785
833
  }
786
834
  },
787
- {
788
- "name": "terra-plot",
789
- "description": "A web component for interactive graphs using Plotly.js.\n---\n\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.",
790
- "doc-url": "",
791
- "attributes": [
792
- { "name": "plotTitle", "value": { "type": "string | undefined" } },
793
- {
794
- "name": "layout",
795
- "value": {
796
- "type": "Partial<Layout> | undefined",
797
- "default": "{}"
798
- }
799
- },
800
- {
801
- "name": "config",
802
- "value": {
803
- "type": "Partial<Config> | undefined",
804
- "default": "{\n modeBarButtonsToAdd: [\n {\n name: 'Download Data',\n title: 'Download plot data as a CSV file',\n icon: Icons.disk,\n click: () => {\n this.downloadCSV()\n },\n },\n ],\n }"
805
- }
806
- },
807
- {
808
- "name": "data",
809
- "value": { "type": "Array<Partial<Data>>", "default": "[]" }
810
- }
811
- ],
812
- "events": [],
813
- "js": {
814
- "properties": [
815
- { "name": "plotData", "type": "Array<Plot>" },
816
- { "name": "base", "type": "HTMLElement" },
817
- { "name": "plotTitle", "type": "string | undefined" },
818
- { "name": "layout", "type": "Partial<Layout> | undefined" },
819
- { "name": "config", "type": "Partial<Config> | undefined" },
820
- { "name": "data", "type": "Array<Partial<Data>>" }
821
- ],
822
- "events": []
823
- }
824
- },
825
835
  {
826
836
  "name": "terra-time-series",
827
837
  "description": "A component for visualizing time series data using the GES DISC Giovanni API.\n---\n",
@@ -84,12 +84,13 @@ var TimeSeriesController = class {
84
84
  return initialState;
85
85
  }
86
86
  const timeSeries = await __privateMethod(this, _loadTimeSeries, loadTimeSeries_fn).call(this, signal);
87
- return [
87
+ this.lastTaskValue = [
88
88
  __spreadProps(__spreadValues({}, plotlyDefaultData), {
89
89
  x: timeSeries.data.map((row) => row.timestamp),
90
90
  y: timeSeries.data.map((row) => row.value)
91
91
  })
92
92
  ];
93
+ return this.lastTaskValue;
93
94
  }
94
95
  });
95
96
  }
@@ -100,9 +101,10 @@ var TimeSeriesController = class {
100
101
  _loadTimeSeries = new WeakSet();
101
102
  loadTimeSeries_fn = async function(signal) {
102
103
  const variableEntryId = `${this.collection}_${this.variable}`;
104
+ const cacheKey = `${variableEntryId}_${this.location}`;
103
105
  const existingTerraData = await getDataByKey(
104
106
  "time-series" /* TIME_SERIES */,
105
- `${variableEntryId}_${this.location}`
107
+ cacheKey
106
108
  );
107
109
  if (existingTerraData && this.startDate.getTime() >= new Date(existingTerraData.startDate).getTime() && this.endDate.getTime() <= new Date(existingTerraData.endDate).getTime()) {
108
110
  return __privateMethod(this, _getDataInRange, getDataInRange_fn).call(this, existingTerraData);
@@ -133,16 +135,12 @@ loadTimeSeries_fn = async function(signal) {
133
135
  }
134
136
  const parsedData = __privateMethod(this, _parseTimeSeriesCsv, parseTimeSeriesCsv_fn).call(this, await response.text());
135
137
  parsedData.data = [...parsedData.data, ...(existingTerraData == null ? void 0 : existingTerraData.data) || []];
136
- await storeDataByKey(
137
- "time-series" /* TIME_SERIES */,
138
- `${variableEntryId}_${this.location}`,
139
- __spreadValues({
140
- variableEntryId,
141
- key: `${variableEntryId}_${this.location}`,
142
- startDate: parsedData.data[0].timestamp,
143
- endDate: parsedData.data[parsedData.data.length - 1].timestamp
144
- }, parsedData)
145
- );
138
+ await storeDataByKey("time-series" /* TIME_SERIES */, cacheKey, __spreadValues({
139
+ variableEntryId,
140
+ key: cacheKey,
141
+ startDate: parsedData.data[0].timestamp,
142
+ endDate: parsedData.data[parsedData.data.length - 1].timestamp
143
+ }, parsedData));
146
144
  return __privateMethod(this, _getDataInRange, getDataInRange_fn).call(this, parsedData);
147
145
  };
148
146
  _parseTimeSeriesCsv = new WeakSet();
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk.ZCNMYQP2.js";
4
4
  import {
5
5
  TerraMap
6
- } from "./chunk.LAFN7QOI.js";
6
+ } from "./chunk.YUEY7TCJ.js";
7
7
  import {
8
8
  StringifyBoundingBox,
9
9
  parseBoundingBox
@@ -11,7 +11,7 @@ import {
11
11
  import {
12
12
  TerraElement,
13
13
  component_styles_default
14
- } from "./chunk.HBEQ6SPT.js";
14
+ } from "./chunk.PSTXVQB5.js";
15
15
  import {
16
16
  __decorateClass
17
17
  } from "./chunk.RYPAZDXE.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  TerraMap
3
- } from "./chunk.LAFN7QOI.js";
3
+ } from "./chunk.YUEY7TCJ.js";
4
4
 
5
5
  // src/react/map/index.ts
6
6
  import * as React from "react";
@@ -2,16 +2,16 @@ import {
2
2
  FormControlController,
3
3
  validValidityState
4
4
  } from "./chunk.NYBJ252W.js";
5
- import {
6
- watch
7
- } from "./chunk.ZK7QVWBI.js";
8
5
  import {
9
6
  button_styles_default
10
7
  } from "./chunk.SHS42OAD.js";
8
+ import {
9
+ watch
10
+ } from "./chunk.ZK7QVWBI.js";
11
11
  import {
12
12
  TerraElement,
13
13
  component_styles_default
14
- } from "./chunk.HBEQ6SPT.js";
14
+ } from "./chunk.PSTXVQB5.js";
15
15
  import {
16
16
  __decorateClass
17
17
  } from "./chunk.RYPAZDXE.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  TerraIcon
3
- } from "./chunk.37V2INM4.js";
3
+ } from "./chunk.PU5MKRJ3.js";
4
4
 
5
5
  // src/react/icon/index.ts
6
6
  import * as React from "react";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  TerraVariableCombobox
3
- } from "./chunk.26XMYCND.js";
3
+ } from "./chunk.IOP7DABN.js";
4
4
 
5
5
  // src/components/variable-combobox/variable-combobox.ts
6
6
  var variable_combobox_default = TerraVariableCombobox;
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  TerraButton
3
- } from "./chunk.XPQYTQXW.js";
3
+ } from "./chunk.4GCNO2RC.js";
4
4
 
5
5
  // src/components/button/button.ts
6
6
  var button_default = TerraButton;
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  TerraChip
3
- } from "./chunk.VHMYUAU5.js";
3
+ } from "./chunk.ZB6UWPGQ.js";
4
4
 
5
5
  // src/components/chip/chip.ts
6
6
  var chip_default = TerraChip;
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  loader_styles_default
3
- } from "./chunk.I2NEFB34.js";
3
+ } from "./chunk.CL62YJ3N.js";
4
4
  import {
5
5
  TerraElement,
6
6
  component_styles_default
7
- } from "./chunk.HBEQ6SPT.js";
7
+ } from "./chunk.PSTXVQB5.js";
8
8
  import {
9
9
  __decorateClass
10
10
  } from "./chunk.RYPAZDXE.js";
@@ -18,6 +18,7 @@ var TerraLoader = class extends TerraElement {
18
18
  super(...arguments);
19
19
  this.size = "large";
20
20
  this.percent = 0;
21
+ this.indeterminate = false;
21
22
  this.label = "Loading request";
22
23
  this.message = "";
23
24
  }
@@ -54,7 +55,7 @@ var TerraLoader = class extends TerraElement {
54
55
  viewBox=${this.size == "small" ? "0 0 30 30" : "0 0 52 52"}
55
56
  aria-hidden="true"
56
57
  style="--progress: ${this.percent}"
57
- class="circular-progress"
58
+ class="circular-progress ${this.indeterminate ? "indeterminate" : ""}"
58
59
  >
59
60
  <circle class="bg"></circle>
60
61
  <circle class="fg"></circle>
@@ -73,6 +74,9 @@ __decorateClass([
73
74
  __decorateClass([
74
75
  property({ type: Number })
75
76
  ], TerraLoader.prototype, "percent", 2);
77
+ __decorateClass([
78
+ property({ type: Boolean })
79
+ ], TerraLoader.prototype, "indeterminate", 2);
76
80
  __decorateClass([
77
81
  property({ type: String })
78
82
  ], TerraLoader.prototype, "label", 2);
@@ -63,6 +63,9 @@ var loader_styles_default = css`
63
63
  --dash: calc(
64
64
  (var(--progress) * var(--circumference)) / 100
65
65
  ); /* Calculate the length of the dash based on the progress percentage */
66
+ --indeterminate-dash: calc(
67
+ (25 * var(--circumference)) / 100
68
+ ); /* force progress to 25% for an indeterminate loader */
66
69
  }
67
70
 
68
71
  .circular-progress circle {
@@ -86,6 +89,24 @@ var loader_styles_default = css`
86
89
  stroke: #1c68e3;
87
90
  }
88
91
 
92
+ .circular-progress.indeterminate circle.fg {
93
+ stroke-dasharray: var(--indeterminate-dash)
94
+ calc(var(--circumference) - var(--indeterminate-dash));
95
+ animation: 0.8s spin infinite;
96
+ animation-timing-function: linear;
97
+ transform-origin: 50% 50%;
98
+ }
99
+
100
+ @keyframes spin {
101
+ from {
102
+ transform: rotate(-90deg);
103
+ }
104
+
105
+ to {
106
+ transform: rotate(270deg);
107
+ }
108
+ }
109
+
89
110
  @property --progress {
90
111
  /* Registers and describes the custom property and variable with the browser. */
91
112
  syntax: '<number>';
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  TerraDateRangeSlider
3
- } from "./chunk.5LBNOLAY.js";
3
+ } from "./chunk.MMYKMN6B.js";
4
4
 
5
5
  // src/react/date-range-slider/index.ts
6
6
  import * as React from "react";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  TerraPlot
3
- } from "./chunk.HMECFSJ3.js";
3
+ } from "./chunk.PRBM2XXL.js";
4
4
 
5
5
  // src/components/plot/plot.ts
6
6
  var plot_default = TerraPlot;
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  TerraPlot
3
- } from "./chunk.HMECFSJ3.js";
3
+ } from "./chunk.PRBM2XXL.js";
4
4
 
5
5
  // src/react/plot/index.ts
6
6
  import * as React from "react";