Repository: VictoriaMetrics/VictoriaMetrics
Pull request #1955 (2021-12-16 11:13:35)

vmalert: always convert `step` value to seconds for better compatibility
When using `vmalert` with older Prometheus versions, the passed
`step=2m` may be parsed by Prometheus with an err: "cannot parse \"2m0s\" to a valid duration".
In order to improve compatibility vmalert will always convert step duration to seconds.

https://github.com/VictoriaMetrics/VictoriaMetrics/issues/1943
Signed-off-by: hagen1778 <roman@victoriametrics.com>

codecov[bot]: # [Codecov](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/1955?src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics) Report
> Merging [#1955](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/1955?src=pr&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics) (172d0c5) into [master](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/commit/a3adf24527336a233cacd5341fca42289c147413?el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics) (a3adf24) will **increase** coverage by `0.04%`.
> The diff coverage is `100.00%`.

[![Impacted file tree graph](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/1955/graphs/tree.svg?width=650&height=150&src=pr&token=YND8dYVcXn&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics)](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/1955?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics)

```diff
@@            Coverage Diff             @@
##           master    #1955      +/-   ##
==========================================
+ Coverage   60.60%   60.65%   +0.04%     
==========================================
  Files         237      237              
  Lines       39906    39908       +2     
==========================================
+ Hits        24186    24205      +19     
+ Misses      14122    14109      -13     
+ Partials     1598     1594       -4     
```


| [Impacted Files](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/1955?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics) | Coverage Δ | |
|---|---|---|
| [app/vmalert/datasource/vm\_prom\_api.go](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/1955/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics#diff-YXBwL3ZtYWxlcnQvZGF0YXNvdXJjZS92bV9wcm9tX2FwaS5nbw==) | `84.82% <100.00%> (+0.27%)` | :arrow_up: |
| [lib/storage/partition.go](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/1955/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics#diff-bGliL3N0b3JhZ2UvcGFydGl0aW9uLmdv) | `64.14% <0.00%> (-0.16%)` | :arrow_down: |
| [app/vmselect/promql/aggr\_incremental.go](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/1955/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics#diff-YXBwL3Ztc2VsZWN0L3Byb21xbC9hZ2dyX2luY3JlbWVudGFsLmdv) | `87.65% <0.00%> (+4.81%)` | :arrow_up: |
| [lib/fasttime/fasttime.go](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/1955/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics#diff-bGliL2Zhc3R0aW1lL2Zhc3R0aW1lLmdv) | `71.42% <0.00%> (+21.42%)` | :arrow_up: |

------

[Continue to review full report at Codecov](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/1955?src=pr&el=continue&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics).
> **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics)
> `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
> Powered by [Codecov](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/1955?src=pr&el=footer&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics). Last update [a3adf24...172d0c5](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/1955?src=pr&el=lastupdated&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics).


Patch:
diff --git a/README.md b/README.md
index dbcceeef8..5a444567c 100644
--- a/README.md
+++ b/README.md
@@ -837,7 +837,7 @@ unix timestamp in seconds or [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) val
 
 The exported CSV data can be imported to VictoriaMetrics via [/api/v1/import/csv](#how-to-import-csv-data).
 
-The [deduplication](#deduplication) isn't applied for the data exported in CSV. It is expected that the de-duplication is performed during data import.
+The [deduplication](#deduplication) is applied for the data exported in CSV by default. It is possible to export raw data without de-duplication by passing `reduce_mem_usage=1` query arg to `/api/v1/export/csv`.
 
 
 ### How to export data in native format
@@ -1441,6 +1441,18 @@ We also provide [vmbackupmanager](https://docs.victoriametrics.com/vmbackupmanag
 Enterprise binaries can be downloaded and evaluated for free from [the releases page](https://github.com/VictoriaMetrics/VictoriaMetrics/releases).
 
 
+## Benchmarks
+
+Note, that vendors (including VictoriaMetrics) are often biased when doing such tests. E.g. they try highlighting 
+the best parts of their product, while highlighting the worst parts of competing products. 
+So we encourage users and all independent third parties to conduct their becnhmarks for various products 
+they are evaluating in production and publish the results.
+
+As a reference, please see [benchmarks](https://docs.victoriametrics.com/Articles.html#benchmarks) conducted by
+VictoriaMetrics team. Please also see the [helm chart](https://github.com/VictoriaMetrics/benchmark) 
+for running ingestion benchmarks based on node_exporter metrics.
+
+
 ## Profiling
 
 VictoriaMetrics provides handlers for collecting the following [Go profiles](https://blog.golang.org/profiling-go-programs):
diff --git a/app/vmalert/datasource/vm_prom_api.go b/app/vmalert/datasource/vm_prom_api.go
index 47a34e9e6..3bf358a24 100644
--- a/app/vmalert/datasource/vm_prom_api.go
+++ b/app/vmalert/datasource/vm_prom_api.go
@@ -159,13 +159,15 @@ func (s *VMStorage) setPrometheusReqParams(r *http.Request, query string) {
 		}
 	}
 	q.Set("query", query)
-	if s.evaluationInterval > 0 {
-		// set step as evaluationInterval by default
-		q.Set("step", s.evaluationInterval.String())
+	if s.evaluationInterval > 0 { // set step as evaluationInterval by default
+		// always convert to seconds to keep compatibility with older
+		// Prometheus versions. See https://github.com/VictoriaMetrics/VictoriaMetrics/issues/1943
+		q.Set("step", fmt.Sprintf("%ds", int(s.evaluationInterval.Seconds())))
 	}
-	if s.queryStep > 0 {
-		// override step with user-specified value
-		q.Set("step", s.queryStep.String())
+	if s.queryStep > 0 { // override step with user-specified value
+		// always convert to seconds to keep compatibility with older
+		// Prometheus versions. See https://github.com/VictoriaMetrics/VictoriaMetrics/issues/1943
+		q.Set("step", fmt.Sprintf("%ds", int(s.queryStep.Seconds())))
 	}
 	r.URL.RawQuery = q.Encode()
 }
diff --git a/app/vmselect/prometheus/prometheus.go b/app/vmselect/prometheus/prometheus.go
index a913ead1e..20b46e677 100644
--- a/app/vmselect/prometheus/prometheus.go
+++ b/app/vmselect/prometheus/prometheus.go
@@ -129,6 +129,7 @@ func ExportCSVHandler(startTime time.Time, w http.ResponseWriter, r *http.Reques
 	if err != nil {
 		return err
 	}
+	reduceMemUsage := searchutils.GetBool(r, "reduce_mem_usage")
 	deadline := searchutils.GetDeadlineForExport(r, startTime)
 	tagFilterss, err := getTagFilterssFromRequest(r)
 	if err != nil {
@@ -140,30 +141,58 @@ func ExportCSVHandler(startTime time.Time, w http.ResponseWriter, r *http.Reques
 	defer bufferedwriter.Put(bw)
 
 	resultsCh := make(chan *quicktemplate.ByteBuffer, cgroup.AvailableCPUs())
-	doneCh := make(chan error)
-	go func() {
-		err := netstorage.ExportBlocks(sq, deadline, func(mn *storage.MetricName, b *storage.Block, tr storage.TimeRange) error {
-			if err := bw.Error(); err != nil {
-				return err
-			}
-			if err := b.UnmarshalData(); err != nil {
-				return fmt.Errorf("cannot unmarshal block during export: %s", err)
-			}
-			xb := exportBlockPool.Get().(*exportBlock)
-			xb.mn = mn
-			xb.timestamps, xb.values = b.AppendRowsWithTimeRangeFilter(xb.timestamps[:0], xb.values[:0], tr)
-			if len(xb.timestamps) > 0 {
-				bb := quicktemplate.AcquireByteBuffer()
-				WriteExportCSVLine(bb, xb, fieldNames)
-				resultsCh <- bb
-			}
-			xb.reset()
-			exportBlockPool.Put(xb)
-			return nil
-		})
-		close(resultsCh)
-		doneCh <- err
-	}()
+	writeCSVLine := func(xb *exportBlock) {
+		if len(xb.timestamps) == 0 {
+			return
+		}
+		bb := quicktemplate.AcquireByteBuffer()
+		WriteExportCSVLine(bb, xb, fieldNames)
+		resultsCh <- bb
+	}
+	doneCh := make(chan error, 1)
+	if !reduceMemUsage {
+		rss, err := netstorage.ProcessSearchQuery(sq, true, deadline)
+		if err != nil {
+			return fmt.Errorf("cannot fetch data for %q: %w", sq, err)
+		}
+		go func() {
+			err := rss.RunParallel(func(rs *netstorage.Result, workerID uint) error {
+				if err := bw.Error(); err != nil {
+					return err
+				}
+				xb := exportBlockPool.Get().(*exportBlock)
+				xb.mn = &rs.MetricName
+				xb.timestamps = rs.Timestamps
+				xb.values = rs.Values
+				writeCSVLine(xb)
+				xb.reset()
+				exportBlockPool.Put(xb)
+				return nil
+			})
+			close(resultsCh)
+			doneCh <- err
+		}()
+	} else {
+		go func() {
+			err := netstorage.ExportBlocks(sq, deadline, func(mn *storage.MetricName, b *storage.Block, tr storage.TimeRange) error {
+				if err := bw.Error(); err != nil {
+					return err
+				}
+				if err := b.UnmarshalData(); err != nil {
+					return fmt.Errorf("cannot unmarshal block during export: %s", err)
+				}
+				xb := exportBlockPool.Get().(*exportBlock)
+				xb.mn = mn
+				xb.timestamps, xb.values = b.AppendRowsWithTimeRangeFilter(xb.timestamps[:0], xb.values[:0], tr)
+				writeCSVLine(xb)
+				xb.reset()
+				exportBlockPool.Put(xb)
+				return nil
+			})
+			close(resultsCh)
+			doneCh <- err
+		}()
+	}
 	// Consume all the data from resultsCh.
 	for bb := range resultsCh {
 		// Do not check for error in bw.Write, since this error is checked inside netstorage.ExportBlocks above.
@@ -360,7 +389,7 @@ func exportHandler(w http.ResponseWriter, matches []string, etfs [][]storage.Tag
 	defer bufferedwriter.Put(bw)
 
 	resultsCh := make(chan *quicktemplate.ByteBuffer, cgroup.AvailableCPUs())
-	doneCh := make(chan error)
+	doneCh := make(chan error, 1)
 	if !reduceMemUsage {
 		rss, err := netstorage.ProcessSearchQuery(sq, true, deadline)
 		if err != nil {
diff --git a/app/vmselect/vmui/asset-manifest.json b/app/vmselect/vmui/asset-manifest.json
index a0c9491e5..1594d5e04 100644
--- a/app/vmselect/vmui/asset-manifest.json
+++ b/app/vmselect/vmui/asset-manifest.json
@@ -1,7 +1,7 @@
 {
   "files": {
     "main.css": "./static/css/main.83d9ae2d.chunk.css",
-    "main.js": "./static/js/main.7fc9cf07.chunk.js",
+    "main.js": "./static/js/main.fa15a895.chunk.js",
     "runtime-main.js": "./static/js/runtime-main.c4b656b8.js",
     "static/css/2.77671664.chunk.css": "./static/css/2.77671664.chunk.css",
     "static/js/2.ef1db8c8.chunk.js": "./static/js/2.ef1db8c8.chunk.js",
@@ -14,6 +14,6 @@
     "static/css/2.77671664.chunk.css",
     "static/js/2.ef1db8c8.chunk.js",
     "static/css/main.83d9ae2d.chunk.css",
-    "static/js/main.7fc9cf07.chunk.js"
+    "static/js/main.fa15a895.chunk.js"
   ]
 }
\ No newline at end of file
diff --git a/app/vmselect/vmui/index.html b/app/vmselect/vmui/index.html
index dfa6fc0be..7bb01b38b 100644
--- a/app/vmselect/vmui/index.html
+++ b/app/vmselect/vmui/index.html
@@ -1,1 +1,1 @@
-<!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="icon" href="./favicon.ico"/><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="theme-color" content="#000000"/><meta name="description" content="VM-UI is a metric explorer for Victoria Metrics"/><link rel="apple-touch-icon" href="./apple-touch-icon.png"/><link rel="icon" type="image/png" sizes="32x32" href="./favicon-32x32.png"><link rel="manifest" href="./manifest.json"/><title>VM UI</title><link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,500,700&display=swap"/><link href="./static/css/2.77671664.chunk.css" rel="stylesheet"><link href="./static/css/main.83d9ae2d.chunk.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div><script>!function(e){function r(r){for(var n,i,a=r[0],c=r[1],l=r[2],s=0,p=[];s<a.length;s++)i=a[s],Object.prototype.hasOwnProperty.call(o,i)&&o[i]&&p.push(o[i][0]),o[i]=0;for(n in c)Object.prototype.hasOwnProperty.call(c,n)&&(e[n]=c[n]);for(f&&f(r);p.length;)p.shift()();return u.push.apply(u,l||[]),t()}function t(){for(var e,r=0;r<u.length;r++){for(var t=u[r],n=!0,a=1;a<t.length;a++){var c=t[a];0!==o[c]&&(n=!1)}n&&(u.splice(r--,1),e=i(i.s=t[0]))}return e}var n={},o={1:0},u=[];function i(r){if(n[r])return n[r].exports;var t=n[r]={i:r,l:!1,exports:{}};return e[r].call(t.exports,t,t.exports,i),t.l=!0,t.exports}i.e=function(e){var r=[],t=o[e];if(0!==t)if(t)r.push(t[2]);else{var n=new Promise((function(r,n){t=o[e]=[r,n]}));r.push(t[2]=n);var u,a=document.createElement("script");a.charset="utf-8",a.timeout=120,i.nc&&a.setAttribute("nonce",i.nc),a.src=function(e){return i.p+"static/js/"+({}[e]||e)+"."+{3:"65648506"}[e]+".chunk.js"}(e);var c=new Error;u=function(r){a.onerror=a.onload=null,clearTimeout(l);var t=o[e];if(0!==t){if(t){var n=r&&("load"===r.type?"missing":r.type),u=r&&r.target&&r.target.src;c.message="Loading chunk "+e+" failed.\n("+n+": "+u+")",c.name="ChunkLoadError",c.type=n,c.request=u,t[1](c)}o[e]=void 0}};var l=setTimeout((function(){u({type:"timeout",target:a})}),12e4);a.onerror=a.onload=u,document.head.appendChild(a)}return Promise.all(r)},i.m=e,i.c=n,i.d=function(e,r,t){i.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},i.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.t=function(e,r){if(1&r&&(e=i(e)),8&r)return e;if(4&r&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(i.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var n in e)i.d(t,n,function(r){return e[r]}.bind(null,n));return t},i.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(r,"a",r),r},i.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},i.p="./",i.oe=function(e){throw console.error(e),e};var a=this.webpackJsonpvmui=this.webpackJsonpvmui||[],c=a.push.bind(a);a.push=r,a=a.slice();for(var l=0;l<a.length;l++)r(a[l]);var f=c;t()}([])</script><script src="./static/js/2.ef1db8c8.chunk.js"></script><script src="./static/js/main.7fc9cf07.chunk.js"></script></body></html>
\ No newline at end of file
+<!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="icon" href="./favicon.ico"/><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="theme-color" content="#000000"/><meta name="description" content="VM-UI is a metric explorer for Victoria Metrics"/><link rel="apple-touch-icon" href="./apple-touch-icon.png"/><link rel="icon" type="image/png" sizes="32x32" href="./favicon-32x32.png"><link rel="manifest" href="./manifest.json"/><title>VM UI</title><link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,500,700&display=swap"/><link href="./static/css/2.77671664.chunk.css" rel="stylesheet"><link href="./static/css/main.83d9ae2d.chunk.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div><script>!function(e){function r(r){for(var n,i,a=r[0],c=r[1],l=r[2],s=0,p=[];s<a.length;s++)i=a[s],Object.prototype.hasOwnProperty.call(o,i)&&o[i]&&p.push(o[i][0]),o[i]=0;for(n in c)Object.prototype.hasOwnProperty.call(c,n)&&(e[n]=c[n]);for(f&&f(r);p.length;)p.shift()();return u.push.apply(u,l||[]),t()}function t(){for(var e,r=0;r<u.length;r++){for(var t=u[r],n=!0,a=1;a<t.length;a++){var c=t[a];0!==o[c]&&(n=!1)}n&&(u.splice(r--,1),e=i(i.s=t[0]))}return e}var n={},o={1:0},u=[];function i(r){if(n[r])return n[r].exports;var t=n[r]={i:r,l:!1,exports:{}};return e[r].call(t.exports,t,t.exports,i),t.l=!0,t.exports}i.e=function(e){var r=[],t=o[e];if(0!==t)if(t)r.push(t[2]);else{var n=new Promise((function(r,n){t=o[e]=[r,n]}));r.push(t[2]=n);var u,a=document.createElement("script");a.charset="utf-8",a.timeout=120,i.nc&&a.setAttribute("nonce",i.nc),a.src=function(e){return i.p+"static/js/"+({}[e]||e)+"."+{3:"65648506"}[e]+".chunk.js"}(e);var c=new Error;u=function(r){a.onerror=a.onload=null,clearTimeout(l);var t=o[e];if(0!==t){if(t){var n=r&&("load"===r.type?"missing":r.type),u=r&&r.target&&r.target.src;c.message="Loading chunk "+e+" failed.\n("+n+": "+u+")",c.name="ChunkLoadError",c.type=n,c.request=u,t[1](c)}o[e]=void 0}};var l=setTimeout((function(){u({type:"timeout",target:a})}),12e4);a.onerror=a.onload=u,document.head.appendChild(a)}return Promise.all(r)},i.m=e,i.c=n,i.d=function(e,r,t){i.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},i.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.t=function(e,r){if(1&r&&(e=i(e)),8&r)return e;if(4&r&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(i.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var n in e)i.d(t,n,function(r){return e[r]}.bind(null,n));return t},i.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(r,"a",r),r},i.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},i.p="./",i.oe=function(e){throw console.error(e),e};var a=this.webpackJsonpvmui=this.webpackJsonpvmui||[],c=a.push.bind(a);a.push=r,a=a.slice();for(var l=0;l<a.length;l++)r(a[l]);var f=c;t()}([])</script><script src="./static/js/2.ef1db8c8.chunk.js"></script><script src="./static/js/main.fa15a895.chunk.js"></script></body></html>
\ No newline at end of file
diff --git a/app/vmselect/vmui/static/js/main.7fc9cf07.chunk.js b/app/vmselect/vmui/static/js/main.7fc9cf07.chunk.js
deleted file mode 100644
index 8cdbe3fc0..000000000
--- a/app/vmselect/vmui/static/js/main.7fc9cf07.chunk.js
+++ /dev/null
@@ -1,1 +0,0 @@
-(this.webpackJsonpvmui=this.webpackJsonpvmui||[]).push([[0],{204:function(e,t,n){},219:function(e,t){},223:function(e,t,n){},224:function(e,t,n){},234:function(e,t,n){"use strict";n.r(t);var a=n(1),r=n.n(a),c=n(53),i=n.n(c),o=(n(204),n(9)),s=n(318),l=n(317),u=n(0),d=Object(a.createContext)({showInfoMessage:function(){}}),j=function(e){var t=e.children,n=Object(a.useState)({}),r=Object(o.a)(n,2),c=r[0],i=r[1],j=Object(a.useState)(!1),b=Object(o.a)(j,2),p=b[0],O=b[1],h=Object(a.useState)(void 0),f=Object(o.a)(h,2),x=f[0],v=f[1];Object(a.useEffect)((function(){x&&(i({message:x,key:(new Date).getTime()}),O(!0))}),[x]);return Object(u.jsxs)(d.Provider,{value:{showInfoMessage:v},children:[Object(u.jsx)(s.a,{open:p,autoHideDuration:4e3,onClose:function(e,t){"clickaway"!==t&&(v(void 0),O(!1))},children:Object(u.jsx)(l.a,{children:c.message})},c.key),t]})},b=n(352),p=n(353),O=n(328),h=n(246),f=n(344),x=n(242),v=n(329),m=n(331),y=n(323),g=n(327),S=n(149),E=n.n(S),_=n(3),T=n(16),w=n(40),C=n.n(w),A=n(145),R=n.n(A),I=n(146),k=n.n(I),U=n(105),M=n.n(U);C.a.extend(R.a),C.a.extend(k.a);var H,D=window.innerWidth/2,N=1,L=1578e8,P="YYYY-MM-DD[T]HH:mm:ss",q=[{long:"days",short:"d",possible:"day"},{long:"weeks",short:"w",possible:"week"},{long:"months",short:"M",possible:"mon"},{long:"years",short:"y",possible:"year"},{long:"hours",short:"h",possible:"hour"},{long:"minutes",short:"m",possible:"min"},{long:"seconds",short:"s",possible:"sec"},{long:"milliseconds",short:"ms",possible:"millisecond"}],Y=q.map((function(e){return e.short})),B=function(e){return+M()(e).format("0.000")},F=function(e){var t=e.match(/\d+/g),n=e.match(/[a-zA-Z]+/g);if(n&&t&&Y.includes(n[0]))return Object(_.a)({},n[0],t[0])},Q=function(e,t){var n=(t||new Date).valueOf()/1e3,a=e.trim().split(" ").reduce((function(e,t){var n=F(t);return n?Object(T.a)(Object(T.a)({},e),n):Object(T.a)({},e)}),{}),r=C.a.duration(a).asSeconds();return{start:n-r,end:n,step:B(r/D)||.001,date:z(t||new Date)}},z=function(e){return C()(e).utc().format(P)},G=function(e){var t=Math.floor(e%1e3),n=Math.floor(e/1e3%60),a=Math.floor(e/1e3/60%60),r=Math.floor(e/1e3/3600%24),c=Math.floor(e/864e5),i=["d","h","m","s","ms"];return[c,r,a,n,t].map((function(e,t){return e?"".concat(e).concat(i[t]):""})).filter((function(e){return e})).join(" ")},W=function(e){return new Date(1e3*e)},V=function(e,t){t?window.localStorage.setItem(e,JSON.stringify({value:t})):K([e])},J=function(e){var t=window.localStorage.getItem(e);if(null!==t)try{var n;return null===(n=JSON.parse(t))||void 0===n?void 0:n.value}catch(a){return t}},K=function(e){return e.forEach((function(e){return window.localStorage.removeItem(e)}))},X=["BASIC_AUTH_DATA","BEARER_AUTH_DATA"],Z=n(147),$=n.n(Z),ee=n(117),te=n.n(ee),ne=function(){var e,t=(null===(e=document.getElementById("root"))||void 0===e?void 0:e.dataset.params)||"{}";return JSON.parse(t)},ae=function(){return!!Object.keys(ne()).length},re={"time.duration":"range_input","time.period.date":"end_input","time.period.step":"step_input",displayType:"tab"},ce=ae(),ie=function(e){var t=window;if(t){var n="".concat(t.location.protocol,"//").concat(t.location.host).concat(t.location.pathname).concat(e?"?":"").concat(e);t.history.pushState({path:n},"",n)}},oe=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:window.location.search,a=$.a.parse(n,{ignoreQueryPrefix:!0});return te()(a,e,t||"")},se=oe("g0.range_input","1h"),le=(H=oe("g0.end_input",new Date(C()().utc().format(P))),C()(H).utcOffset(0,!0).local().format(P)),ue=function(){var e,t=(null===(e=window.location.search.match(/g\d+.expr/gim))||void 0===e?void 0:e.length)||1;return new Array(t).fill(1).map((function(e,t){return oe("g".concat(t,".expr"),"")}))}(),de={serverUrl:window.location.href.replace(/\/(?:prometheus\/)?(?:graph|vmui)\/.*/,"/prometheus/"),displayType:oe("tab","chart"),query:ue,queryHistory:ue.map((function(e){return{index:0,values:[e]}})),time:{duration:se,period:Q(se,new Date(le))},queryControls:{autoRefresh:!1,autocomplete:J("AUTOCOMPLETE")||!1,nocache:J("NO_CACHE")||!1}};function je(e,t){switch(t.type){case"SET_DISPLAY_TYPE":return Object(T.a)(Object(T.a)({},e),{},{displayType:t.payload});case"SET_SERVER":return Object(T.a)(Object(T.a)({},e),{},{serverUrl:t.payload});case"SET_QUERY":return Object(T.a)(Object(T.a)({},e),{},{query:t.payload});case"SET_QUERY_HISTORY":return Object(T.a)(Object(T.a)({},e),{},{queryHistory:t.payload});case"SET_QUERY_HISTORY_BY_INDEX":return e.queryHistory.splice(t.payload.queryNumber,1,t.payload.value),Object(T.a)(Object(T.a)({},e),{},{queryHistory:e.queryHistory});case"SET_DURATION":return Object(T.a)(Object(T.a)({},e),{},{time:Object(T.a)(Object(T.a)({},e.time),{},{duration:t.payload,period:Q(t.payload,W(e.time.period.end))})});case"SET_UNTIL":return Object(T.a)(Object(T.a)({},e),{},{time:Object(T.a)(Object(T.a)({},e.time),{},{period:Q(e.time.duration,t.payload)})});case"SET_PERIOD":var n=function(e){var t=e.to.valueOf()-e.from.valueOf();return G(t)}(t.payload);return Object(T.a)(Object(T.a)({},e),{},{queryControls:Object(T.a)(Object(T.a)({},e.queryControls),{},{autoRefresh:!1}),time:Object(T.a)(Object(T.a)({},e.time),{},{duration:n,period:Q(n,t.payload.to)})});case"TOGGLE_AUTOREFRESH":return Object(T.a)(Object(T.a)({},e),{},{queryControls:Object(T.a)(Object(T.a)({},e.queryControls),{},{autoRefresh:!e.queryControls.autoRefresh})});case"TOGGLE_AUTOCOMPLETE":return Object(T.a)(Object(T.a)({},e),{},{queryControls:Object(T.a)(Object(T.a)({},e.queryControls),{},{autocomplete:!e.queryControls.autocomplete})});case"NO_CACHE":return Object(T.a)(Object(T.a)({},e),{},{queryControls:Object(T.a)(Object(T.a)({},e.queryControls),{},{nocache:!e.queryControls.nocache})});case"RUN_QUERY":return Object(T.a)(Object(T.a)({},e),{},{time:Object(T.a)(Object(T.a)({},e.time),{},{period:Q(e.time.duration,W(e.time.period.end))})});case"RUN_QUERY_TO_NOW":return Object(T.a)(Object(T.a)({},e),{},{time:Object(T.a)(Object(T.a)({},e.time),{},{period:Q(e.time.duration)})});default:throw new Error}}var be=Object(a.createContext)({}),pe=function(){return Object(a.useContext)(be).state},Oe=function(){return Object(a.useContext)(be).dispatch},he=Object.entries(de).reduce((function(e,t){var n=Object(o.a)(t,2),a=n[0],r=n[1];return Object(T.a)(Object(T.a)({},e),{},Object(_.a)({},a,oe(a)||r))}),{}),fe=function(e){var t=e.children,n=Object(a.useReducer)(je,he),r=Object(o.a)(n,2),c=r[0],i=r[1];Object(a.useEffect)((function(){!function(e){if(ce)ie("");else{var t=new Map(Object.entries(re)),n=te()(e,"query",""),a=[];n.forEach((function(n,r){t.forEach((function(t,n){var c=te()(e,n,"");if(c){var i=encodeURIComponent(c);a.push("g".concat(r,".").concat(t,"=").concat(i))}})),a.push("g".concat(r,".expr=").concat(n))})),ie(a.join("&"))}}(c)}),[c]);var s=Object(a.useMemo)((function(){return{state:c,dispatch:i}}),[c,i]);return Object(u.jsx)(be.Provider,{value:s,children:t})},xe=function(e){return Object(u.jsxs)(O.a,{position:"relative",display:"inline-flex",children:[Object(u.jsx)(v.a,Object(T.a)({variant:"determinate"},e)),Object(u.jsx)(O.a,{top:0,left:0,bottom:0,right:0,position:"absolute",display:"flex",alignItems:"center",justifyContent:"center",children:Object(u.jsx)(h.a,{variant:"caption",component:"div",children:"".concat(e.label,"s")})})]})},ve=n(314),me=n(10),ye=n(330),ge=Object(me.a)(ye.a)((function(){return{padding:10,"& .MuiSwitch-track":{borderRadius:14,"&:before, &:after":{content:'""',position:"absolute",top:"50%",transform:"translateY(-50%)",width:14,height:14}},"& .MuiSwitch-thumb":{boxShadow:"none",width:12,height:12,margin:4}}})),Se=Object(ve.a)({colorizing:{color:"white"}}),Ee=function(){var e=Se(),t=Oe(),n=pe().queryControls.autoRefresh,c=Object(a.useState)(5),i=Object(o.a)(c,2),s=i[0],l=i[1],d=Object(a.useState)(),j=Object(o.a)(d,2),b=j[0],p=j[1],h=r.a.useState(100),f=Object(o.a)(h,2),x=f[0],v=f[1];Object(a.useEffect)((function(){var e;return n&&(p((new Date).valueOf()),e=setInterval((function(){p((new Date).valueOf()),t({type:"RUN_QUERY_TO_NOW"})}),1e3*s)),function(){e&&clearInterval(e)}}),[s,n]),Object(a.useEffect)((function(){var e=setInterval((function(){if(n&&b){var e=((new Date).valueOf()-b)/1e3,t=Math.floor(e/s*100);v(t)}}),16);return function(){clearInterval(e)}}),[n,b,s]);var S=function(){l((function(e){switch(e){case 1:return 2;default:return 5;case 5:return 1}}))};return Object(u.jsxs)(O.a,{display:"flex",alignItems:"center",children:[Object(u.jsx)(m.a,{control:Object(u.jsx)(ge,{className:e.colorizing,checked:n,onChange:function(){t({type:"TOGGLE_AUTOREFRESH"})}}),label:"Auto-refresh"}),n&&Object(u.jsxs)(u.Fragment,{children:[Object(u.jsx)(xe,{className:e.colorizing,label:s,value:x,onClick:function(){S()}}),Object(u.jsx)(y.a,{title:"Change delay refresh",children:Object(u.jsx)(O.a,{ml:1,children:Object(u.jsx)(g.a,{onClick:function(){S()},children:Object(u.jsx)(E.a,{style:{color:"white"}})})})})]})]})},_e=n(152),Te=n.n(_e),we=n(150),Ce=n.n(we),Ae=n(151),Re=n.n(Ae),Ie=n(333),ke=n(324),Ue=n(332),Me=Object(Ue.a)({root:{display:"grid",gridTemplateColumns:"18px auto",gridGap:6,padding:"8px 12px",color:"white",lineHeight:"19px","&.Mui-selected":{color:"white"}}})(Ie.a),He=function(){var e=pe().displayType,t=Oe();return Object(u.jsxs)(ke.a,{value:e,exclusive:!0,onChange:function(n,a){return t({type:"SET_DISPLAY_TYPE",payload:null!==a&&void 0!==a?a:e})},children:[Object(u.jsxs)(Me,{value:"chart","aria-label":"display as chart",children:[Object(u.jsx)(Ce.a,{}),Object(u.jsx)("span",{children:"Query Range as Chart"})]}),Object(u.jsxs)(Me,{value:"code","aria-label":"display as code",children:[Object(u.jsx)(Re.a,{}),Object(u.jsx)("span",{children:"Instant Query as JSON"})]}),Object(u.jsxs)(Me,{value:"table","aria-label":"display as table",children:[Object(u.jsx)(Te.a,{}),Object(u.jsx)("span",{children:"Instant Query as Table"})]})]})},De=n(21),Ne=n(153),Le={customStep:{enable:!1,value:1},yaxis:{limits:{enable:!1,range:{1:[0,0]}}}};function Pe(e,t){switch(t.type){case"TOGGLE_ENABLE_YAXIS_LIMITS":return Object(T.a)(Object(T.a)({},e),{},{yaxis:Object(T.a)(Object(T.a)({},e.yaxis),{},{limits:Object(T.a)(Object(T.a)({},e.yaxis.limits),{},{enable:!e.yaxis.limits.enable})})});case"TOGGLE_CUSTOM_STEP":return Object(T.a)(Object(T.a)({},e),{},{customStep:Object(T.a)(Object(T.a)({},e.customStep),{},{enable:!e.customStep.enable})});case"SET_CUSTOM_STEP":return Object(T.a)(Object(T.a)({},e),{},{customStep:Object(T.a)(Object(T.a)({},e.customStep),{},{value:t.payload})});case"SET_YAXIS_LIMITS":return Object(T.a)(Object(T.a)({},e),{},{yaxis:Object(T.a)(Object(T.a)({},e.yaxis),{},{limits:Object(T.a)(Object(T.a)({},e.yaxis.limits),{},{range:t.payload})})});default:throw new Error}}var qe,Ye=Object(a.createContext)({}),Be=function(){return Object(a.useContext)(Ye).state},Fe=function(){return Object(a.useContext)(Ye).dispatch},Qe=function(e){var t=e.children,n=Object(a.useReducer)(Pe,Le),r=Object(o.a)(n,2),c=r[0],i=r[1],s=Object(a.useMemo)((function(){return{state:c,dispatch:i}}),[c,i]);return Object(u.jsx)(Ye.Provider,{value:s,children:t})},ze=function(e){if(7!=e.length)return"0, 0, 0";var t=parseInt(e.slice(1,3),16),n=parseInt(e.slice(3,5),16),a=parseInt(e.slice(5,7),16);return"".concat(t,", ").concat(n,", ").concat(a)},Ge={height:500,legend:{show:!1},cursor:{drag:{x:!1,y:!1},focus:{prox:30},bind:{mouseup:function(){return null},mousedown:function(){return null},click:function(){return null},dblclick:function(){return null},mouseenter:function(){return null}}}},We=function(e,t){return t.map((function(e){return e>1e3?M()(e).format("0.0a"):e}))},Ve=function(e,t){return function(e){for(var t=0,n=0;n<e.length;n++)t=e.charCodeAt(n)+((t<<5)-t);for(var a="#",r=0;r<3;r++)a+=("00"+(t>>8*r&255).toString(16)).substr(-2);return a}("".concat(e).concat(t))},Je=function(e){return e<=1?[]:[4*e,1.2*e]},Ke=function(e){for(var t=e.length,n=-1/0;t--;)e[t]>n&&(n=e[t]);return n},Xe=function(e){for(var t=e.length,n=1/0;t--;)e[t]<n&&(n=e[t]);return n},Ze=function(e){return Array.from(new Set(e.map((function(e){return e.scale})))).map((function(e){var t={scale:e,show:!0,font:"10px Arial",values:We};return e?Number(e)%2?t:Object(T.a)(Object(T.a)({},t),{},{side:1}):{space:80}}))},$e=function(e){var t,n,a=e.u,r=e.tooltipIdx,c=e.metrics,i=e.series,o=e.tooltip,s=e.tooltipOffset,l=r.seriesIdx,u=r.dataIdx,d=a.data[l][u],j=a.data[0][u],b=(null===(t=c[l-1])||void 0===t?void 0:t.metric)||{},p=Ve(Number(i[l].scale||0),i[l].label||""),O=a.over.getBoundingClientRect(),h=O.width,f=O.height,x=a.valToPos(d||0,(null===(n=i[l])||void 0===n?void 0:n.scale)||"1"),v=a.valToPos(j,"x"),m=o.getBoundingClientRect(),y=m.width,g=m.height,S=v+y>=h,E=x+g>=f;o.style.display="grid",o.style.top="".concat(s.top+x+10-(E?g+10:0),"px"),o.style.left="".concat(s.left+v+10-(S?y+20:0),"px");var _=C()(new Date(1e3*j)).format("YYYY-MM-DD HH:mm:ss:SSS (Z)"),T=Object.keys(b).filter((function(e){return"__name__"!==e})).map((function(e){return"<div><b>".concat(e,"</b>: ").concat(b[e],"</div>")})).join(""),w='<div class="u-tooltip__marker" style="background: '.concat(p,'"></div>');o.innerHTML="<div>".concat(_,'</div>\n                       <div class="u-tooltip-data">\n                         ').concat(w).concat(b.__name__||"",': <b class="u-tooltip-data__value">').concat(d,'</b>\n                       </div>\n                       <div class="u-tooltip__info">').concat(T,"</div>")},et=n(154),tt=n.n(et);n(222),n(223);!function(e){e.xRange="xRange",e.yRange="yRange",e.data="data"}(qe||(qe={}));var nt,at=function(e){var t=e.data,n=e.series,r=e.metrics,c=void 0===r?[]:r,i=e.limits,s=Oe(),l=pe().time.period,d=Be().yaxis,j=Object(a.useRef)(null),b=Object(a.useRef)(null),p=Object(a.useState)(!1),O=Object(o.a)(p,2),h=O[0],f=O[1],x=Object(a.useState)({min:l.start,max:l.end}),v=Object(o.a)(x,2),m=v[0],y=v[1],g=Object(a.useState)(),S=Object(o.a)(g,2),E=S[0],_=S[1],w=document.createElement("div");w.className="u-tooltip";var C={seriesIdx:1,dataIdx:0},A={left:0,top:0},R=Object(a.useCallback)(tt()((function(e){var t=e.min,n=e.max;s({type:"SET_PERIOD",payload:{from:new Date(1e3*t),to:new Date(1e3*n)}})}),500),[]),I=function(e){var t=e.u,n=e.min,a=e.max,r=1e3*(a-n);r<N||r>L||(t.setScale("x",{min:n,max:a}),y({min:n,max:a}),R({min:n,max:a}))},k=function(){return[m.min,m.max]},U=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,a=arguments.length>3?arguments[3]:void 0;return d.limits.enable?d.limits.range[a]:t&&n?[t-.05*t,n+.05*n]:i[a]},M=Object(T.a)(Object(T.a)({},Ge),{},{series:n,axes:Ze(n),scales:Object(T.a)({},function(){var e={x:{range:k}};return Object.keys(d.limits.range).forEach((function(t){e[t]={range:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1;return U(e,n,a,t)}}})),e}()),width:j.current?j.current.offsetWidth:400,plugins:[{hooks:{ready:function(e){var t,n=.85;A.left=parseFloat(e.over.style.left),A.top=parseFloat(e.over.style.top),null===(t=e.root.querySelector(".u-wrap"))||void 0===t||t.appendChild(w),e.over.addEventListener("mousedown",(function(t){return function(e){var t=e.e,n=e.factor,a=void 0===n?.85:n,r=e.u,c=e.setPanning,i=e.setPlotScale;if(0===t.button){t.preventDefault(),c(!0);var o=t.clientX,s=r.posToVal(1,"x")-r.posToVal(0,"x"),l=r.scales.x.min||0,u=r.scales.x.max||0,d=function(e){e.preventDefault();var t=s*((e.clientX-o)*a);i({u:r,min:l-t,max:u-t})};document.addEventListener("mousemove",d),document.addEventListener("mouseup",(function e(){c(!1),document.removeEventListener("mousemove",d),document.removeEventListener("mouseup",e)}))}}({u:e,e:t,setPanning:f,setPlotScale:I,factor:n})})),e.over.addEventListener("wheel",(function(t){if(t.ctrlKey||t.metaKey){t.preventDefault();var a=e.over.getBoundingClientRect().width,r=e.cursor.left&&e.cursor.left>0?e.cursor.left:0,c=e.posToVal(r,"x"),i=(e.scales.x.max||0)-(e.scales.x.min||0),o=t.deltaY<0?i*n:i/n,s=c-r/a*o,l=s+o;e.batch((function(){return I({u:e,min:s,max:l})}))}}))},setCursor:function(e){C.dataIdx!==e.cursor.idx&&(C.dataIdx=e.cursor.idx||0,C.seriesIdx&&C.dataIdx&&$e({u:e,tooltipIdx:C,metrics:c,series:n,tooltip:w,tooltipOffset:A}))},setSeries:function(e,t){C.seriesIdx!==t&&(C.seriesIdx=t||0,t&&C.dataIdx?$e({u:e,tooltipIdx:C,metrics:c,series:n,tooltip:w,tooltipOffset:A}):w.style.display="none")}}}]}),H=function(e){if(E){switch(e){case qe.xRange:E.scales.x.range=k;break;case qe.yRange:Object.keys(d.limits.range).forEach((function(e){E.scales[e]&&(E.scales[e].range=function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1;return U(t,n,a,e)})}));break;case qe.data:E.setData(t)}E.redraw()}};return Object(a.useEffect)((function(){return y({min:l.start,max:l.end})}),[l]),Object(a.useEffect)((function(){if(b.current){var e=new Ne.a(M,t,b.current);return _(e),y({min:l.start,max:l.end}),e.destroy}}),[b.current,n]),Object(a.useEffect)((function(){return H(qe.data)}),[t]),Object(a.useEffect)((function(){return H(qe.xRange)}),[m]),Object(a.useEffect)((function(){return H(qe.yRange)}),[d]),Object(u.jsx)("div",{ref:j,style:{pointerEvents:h?"none":"auto",height:"500px"},children:Object(u.jsx)("div",{ref:b})})},rt=(n(224),function(e){var t=e.labels,n=e.onChange,r=pe().query,c=Object(a.useMemo)((function(){return Array.from(new Set(t.map((function(e){return e.group}))))}),[t]);return Object(u.jsx)("div",{className:"legendWrapper",children:c.map((function(e){return Object(u.jsxs)("div",{className:"legendGroup",children:[Object(u.jsxs)("div",{className:"legendGroupTitle",children:[Object(u.jsx)("svg",{className:"legendGroupLine",width:"33",height:"3",version:"1.1",xmlns:"http://www.w3.org/2000/svg",children:Object(u.jsx)("line",{strokeWidth:"3",x1:"0",y1:"0",x2:"33",y2:"0",stroke:"#363636",strokeDasharray:Je(e).join(",")})}),Object(u.jsxs)("b",{children:['"',r[e-1],'"']}),":"]}),Object(u.jsx)("div",{children:t.filter((function(t){return t.group===e})).map((function(e){return Object(u.jsxs)("div",{className:e.checked?"legendItem":"legendItem legendItemHide",onClick:function(t){return n(e,t.ctrlKey||t.metaKey)},children:[Object(u.jsx)("div",{className:"legendMarker",style:{borderColor:e.color,backgroundColor:"rgba(".concat(ze(e.color),", 0.1)")}}),Object(u.jsx)("div",{className:"legendLabel",children:e.label})]},"".concat(e.group,".").concat(e.label))}))})]},e)}))})}),ct=n(115),it=["__name__"],ot=function(e,t){var n=function(e){if(0===Object.keys(e.metric).length)return"Query result";var t=e.metric,n=t.__name__,a=Object(ct.a)(t,it);return"".concat(n||""," {").concat(Object.entries(a).map((function(e){return"".concat(e[0],": ").concat(e[1])})).join(", "),"}")}(e);return{label:n,dash:Je(e.group),width:1.5,stroke:Ve(e.group,n),show:!lt(n,e.group,t),scale:String(e.group)}},st=function(e,t){return{group:t,label:e.label||"",color:e.stroke,checked:e.show||!1}},lt=function(e,t,n){return n.includes("".concat(t,".").concat(e))},ut=n(156),dt=n.n(ut),jt=n(315),bt=n(106),pt=n.n(bt),Ot=function(){var e=Be().yaxis,t=Fe(),n=Object(a.useMemo)((function(){return Object.keys(e.limits.range)}),[e.limits.range]),r=Object(a.useCallback)(pt()((function(n,a,r){var c=e.limits.range;c[a][r]=+n.target.value,t({type:"SET_YAXIS_LIMITS",payload:c})}),500),[e.limits.range]);return Object(u.jsxs)(O.a,{display:"grid",alignItems:"center",gap:2,children:[Object(u.jsx)(m.a,{control:Object(u.jsx)(ge,{checked:e.limits.enable,onChange:function(){t({type:"TOGGLE_ENABLE_YAXIS_LIMITS"})}}),label:"Fix the limits for y-axis"}),Object(u.jsx)(O.a,{display:"grid",alignItems:"center",gap:2,children:n.map((function(t){return Object(u.jsxs)(O.a,{display:"grid",gridTemplateColumns:"120px 120px",gap:1,children:[Object(u.jsx)(jt.a,{label:"Min ".concat(t),type:"number",size:"small",variant:"outlined",disabled:!e.limits.enable,defaultValue:e.limits.range[t][0],onChange:function(e){return r(e,t,0)}}),Object(u.jsx)(jt.a,{label:"Max ".concat(t),type:"number",size:"small",variant:"outlined",disabled:!e.limits.enable,defaultValue:e.limits.range[t][1],onChange:function(e){return r(e,t,1)}})]},t)}))})]})},ht=n(325),ft=n(178),xt=n(155),vt=n.n(xt),mt=n(157),yt=n.n(mt),gt=Object(ve.a)({popover:{position:"absolute",display:"grid",gridGap:"16px",padding:"0 0 25px",zIndex:2},popoverHeader:{display:"flex",alignItems:"center",justifyContent:"space-between",background:"#3F51B5",padding:"6px 6px 6px 12px",borderRadius:"4px 4px 0 0",color:"#FFF",cursor:"move"},popoverBody:{display:"grid",gridGap:"6px",padding:"0 14px"}}),St=function(){var e=Object(a.useState)(!1),t=Object(o.a)(e,2),n=t[0],r=t[1],c=Object(a.useRef)(null),i=gt();return Object(u.jsxs)(O.a,{display:"flex",px:2,children:[Object(u.jsxs)(ht.a,{onClick:function(){return r((function(e){return!e}))},variant:"outlined",children:[Object(u.jsx)(dt.a,{sx:{fontSize:16,marginRight:"4px"}}),Object(u.jsxs)("span",{style:{lineHeight:1,paddingTop:"1px"},children:[n?"Hide":"Show"," graph settings"]})]}),n&&Object(u.jsx)(vt.a,{nodeRef:c,defaultPosition:{x:173,y:0},handle:"#handle",children:Object(u.jsxs)(ft.a,{elevation:3,className:i.popover,ref:c,children:[Object(u.jsxs)("div",{id:"handle",className:i.popoverHeader,children:[Object(u.jsx)(h.a,{variant:"body1",children:Object(u.jsx)("b",{children:"Graph Settings"})}),Object(u.jsx)(g.a,{size:"small",onClick:function(){return r(!1)},children:Object(u.jsx)(yt.a,{style:{color:"white"}})})]}),Object(u.jsx)(O.a,{className:i.popoverBody,children:Object(u.jsx)(Ot,{})})]})})]})},Et=function(e){var t=e.data,n=void 0===t?[]:t,r=Fe(),c=Object(a.useState)([[]]),i=Object(o.a)(c,2),s=i[0],l=i[1],d=Object(a.useState)([]),j=Object(o.a)(d,2),b=j[0],p=j[1],O=Object(a.useState)([]),h=Object(o.a)(O,2),f=h[0],x=h[1],v=Object(a.useState)([]),m=Object(o.a)(v,2),y=m[0],g=m[1],S=Object(a.useState)({1:[0,1]}),E=Object(o.a)(S,2),_=E[0],T=E[1],w=function(e){var t=function(e){var t={};for(var n in e){var a=e[n],r=Xe(a),c=Ke(a);t[n]=[r-.05*r,c+.05*c]}return t}(e);T(t),r({type:"SET_YAXIS_LIMITS",payload:t})};return Object(a.useEffect)((function(){var e=[],t={},a=[],r=[];null===n||void 0===n||n.forEach((function(n){var c=ot(n,y);r.push(c),a.push(st(c,n.group)),n.values.forEach((function(a){e.push(a[0]),t[n.group]?t[n.group].push(+a[1]):t[n.group]=[+a[1]]}))}));var c=function(e){var t=Array.from(new Set(e)).sort((function(e,t){return e-t})),n=Xe(t.map((function(e,n){return t[n+1]-e}))),a=t[0]||0;return new Array(t.length).fill(a).map((function(e,t){return B(e+n*t)}))}(e);l([c].concat(Object(De.a)(n.map((function(e){return new Array(c.length).fill(1).map((function(t,n){return e.values[n]?+e.values[n][1]:null}))}))))),w(t);var i=[{}].concat(r);JSON.stringify(i)!==JSON.stringify(b)&&(p(i),x(a))}),[n]),Object(a.useEffect)((function(){var e=[],t=[];null===n||void 0===n||n.forEach((function(n){var a=ot(n,y);t.push(a),e.push(st(a,n.group))})),p([{}].concat(t)),x(e)}),[y]),Object(u.jsx)(u.Fragment,{children:n.length>0?Object(u.jsxs)("div",{children:[Object(u.jsx)(St,{}),Object(u.jsx)(at,{data:s,series:b,metrics:n,limits:_}),Object(u.jsx)(rt,{labels:f,onChange:function(e,t){g(function(e){var t=e.hideSeries,n=e.legend,a=e.metaKey,r=e.series,c="".concat(n.group,".").concat(n.label),i=lt(n.label,n.group,t),o=r.map((function(e){return"".concat(e.scale,".").concat(e.label)}));return a&&i?Object(De.a)(o.filter((function(e){return e!==c}))):a&&!i?t.length>=r.length-1?[]:Object(De.a)(o.filter((function(e){return e!==c}))):i?t.filter((function(e){return e!==c})):[].concat(Object(De.a)(t),[c])}({hideSeries:y,legend:e,metaKey:t,series:b}))}})]}):Object(u.jsx)("div",{style:{textAlign:"center"},children:"No data to show"})})},_t=n(338),Tt=n(339),wt=n(340),Ct=n(341),At=n(342),Rt=n(343),It=Object(ve.a)({deemphasized:{opacity:.4}}),kt=function(e){var t=e.data,n=It(),r=function(e){return Object(a.useMemo)((function(){var t={};return e.forEach((function(e){return Object.entries(e.metric).forEach((function(e){return t[e[0]]?t[e[0]].options.add(e[1]):t[e[0]]={options:new Set([e[1]])}}))})),Object.entries(t).map((function(e){return{key:e[0],variations:e[1].options.size}})).sort((function(e,t){return e.variations-t.variations}))}),[e])}(t),c=Object(a.useMemo)((function(){return null===t||void 0===t?void 0:t.map((function(e){return{metadata:r.map((function(t){return e.metric[t.key]||"-"})),value:e.value?e.value[1]:"-"}}))}),[r,t]);return Object(u.jsx)(u.Fragment,{children:c.length>0?Object(u.jsx)(_t.a,{component:ft.a,children:Object(u.jsxs)(Tt.a,{"aria-label":"simple table",children:[Object(u.jsx)(wt.a,{children:Object(u.jsxs)(Ct.a,{children:[r.map((function(e,t){return Object(u.jsx)(At.a,{style:{textTransform:"capitalize"},children:e.key},t)})),Object(u.jsx)(At.a,{align:"right",children:"Value"})]})}),Object(u.jsx)(Rt.a,{children:c.map((function(e,t){return Object(u.jsxs)(Ct.a,{children:[e.metadata.map((function(e,a){var r=c[t-1]&&c[t-1].metadata[a];return Object(u.jsx)(At.a,{className:r===e?n.deemphasized:void 0,children:e},a)})),Object(u.jsx)(At.a,{align:"right",children:e.value})]},t)}))})]})}):Object(u.jsx)("div",{style:{textAlign:"center"},children:"No data to show"})})},Ut=n(321),Mt=n(350),Ht=n(351),Dt=n(326),Nt=n(6),Lt=n(13),Pt=n(110),qt=n(172),Yt=n(174);!function(e){e.emptyServer="Please enter Server URL",e.validServer="Please provide a valid Server URL",e.validQuery="Please enter a valid Query and execute it"}(nt||(nt={}));var Bt=function(e){var t=e.index,n=e.query,r=e.queryHistory,c=e.setHistoryIndex,i=e.setQuery,s=e.runQuery,l=e.server,d=e.oneLiner,j=void 0!==d&&d,b=e.autocomplete,p=e.error,O=Object(a.useRef)(null),h=Object(a.useState)(),f=Object(o.a)(h,2),x=f[0],v=f[1],m=Object(a.useState)(!1),y=Object(o.a)(m,2),g=y[0],S=y[1];Object(a.useEffect)((function(){return O.current&&v(new Lt.d({parent:O.current})),function(){return null===x||void 0===x?void 0:x.destroy()}}),[]),Object(a.useEffect)((function(){var e=new qt.a;e.activateCompletion(b),e.setComplete({remote:{url:l}});var a=Lt.d.updateListener.of((function(e){e.focusChanged&&S((null===x||void 0===x?void 0:x.hasFocus)||!1),e.docChanged&&i(e.state.doc.toJSON().map((function(e){return e.trim()})).join(""),t)}));null===x||void 0===x||x.setState(Nt.f.create({doc:n,extensions:[Yt.a,Lt.k.of(Pt.a),a,e.asExtension()]}))}),[l,x,b,r]);return Object(u.jsxs)("div",{className:"query-editor-container \n    ".concat(g?"query-editor-container_focus":"","\n    query-editor-container-").concat(j?"one-line":"multi-line","\n    ").concat(p===nt.validQuery?"query-editor-container_error":""),children:[Object(u.jsx)("label",{className:"query-editor-label",children:"Query"}),Object(u.jsx)("div",{className:"query-editor",ref:O,onKeyUp:function(e){var n=e.key,a=e.ctrlKey,r=e.metaKey,i=a||r;"Enter"===n&&i?s():"ArrowUp"===n&&i?c(-1,t):"ArrowDown"===n&&i&&c(1,t)}})]})},Ft=n(336),Qt=n(312),zt=function(){return Object(u.jsx)(_t.a,{component:ft.a,children:Object(u.jsxs)(Tt.a,{"aria-label":"simple table",size:"small",children:[Object(u.jsx)(wt.a,{children:Object(u.jsxs)(Ct.a,{children:[Object(u.jsx)(At.a,{children:"Long"}),Object(u.jsx)(At.a,{children:"Short"})]})}),Object(u.jsx)(Rt.a,{children:q.map((function(e,t){return Object(u.jsxs)(Ct.a,{children:[Object(u.jsx)(At.a,{component:"th",scope:"row",children:e.long}),Object(u.jsx)(At.a,{children:e.short})]},t)}))})]})})},Gt=Object(ve.a)({inlineBtn:{"&:hover":{cursor:"pointer"}}}),Wt=function(e){var t=e.handler,n=e.text,a=Gt();return Object(u.jsx)(f.a,{component:"span",className:a.inlineBtn,onClick:t,children:n})},Vt=Object(ve.a)({container:{display:"grid",gridTemplateColumns:"auto auto",height:"100%",padding:"18px 14px",borderRadius:"4px",borderColor:"#b9b9b9",borderStyle:"solid",borderWidth:"1px"}}),Jt=function(e){var t=e.setDuration,n=Vt(),c=Object(a.useState)(!1),i=Object(o.a)(c,2),s=i[0],l=i[1],d=r.a.useState(null),j=Object(o.a)(d,2),b=j[0],p=j[1],f=Object(a.useState)(),x=Object(o.a)(f,2),v=x[0],m=x[1],y=pe().time,g=y.period.end,S=y.duration,E=Oe(),_=Object(a.useState)(S),w=Object(o.a)(_,2),A=w[0],R=w[1];Object(a.useEffect)((function(){R(S)}),[S]),Object(a.useEffect)((function(){m(function(e){return C()(e).format(P)}(W(g)))}),[g]),Object(a.useEffect)((function(){if(!s){var e=function(e){var t=e.trim().split(" ").reduce((function(e,t){var n=F(t);return n?Object(T.a)(Object(T.a)({},e),n):Object(T.a)({},e)}),{}),n=C.a.duration(t).asMilliseconds();return n<N?G(N):n>L?G(L):e}(A);R(e),t(e)}}),[A,s]);var I=function(){p(null)},k=Boolean(b);return Object(u.jsxs)(O.a,{className:n.container,children:[Object(u.jsxs)(O.a,{px:1,children:[Object(u.jsx)(O.a,{children:Object(u.jsx)(jt.a,{label:"Duration",value:A,onChange:function(e){R(e.target.value)},variant:"standard",fullWidth:!0,onKeyUp:function(e){if("Enter"===e.key){var t=e.target;t.blur(),R(t.value)}},onBlur:function(){l(!1)},onFocus:function(){l(!0)}})}),Object(u.jsx)(O.a,{mt:2,children:Object(u.jsxs)(h.a,{variant:"body2",children:[Object(u.jsx)("span",{"aria-owns":k?"mouse-over-popover":void 0,"aria-haspopup":"true",style:{cursor:"pointer"},onMouseEnter:function(e){p(e.currentTarget)},onMouseLeave:I,children:"Possible options:\xa0"}),Object(u.jsx)(Ft.a,{open:k,anchorEl:b,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},style:{pointerEvents:"none"},onClose:I,disableRestoreFocus:!0,children:Object(u.jsx)(zt,{})}),Object(u.jsx)(Wt,{handler:function(){return R("5m")},text:"5m"}),",\xa0",Object(u.jsx)(Wt,{handler:function(){return R("1h")},text:"1h"}),",\xa0",Object(u.jsx)(Wt,{handler:function(){return R("1h 30m")},text:"1h 30m"})]})})]}),Object(u.jsxs)(O.a,{px:1,children:[Object(u.jsx)(O.a,{children:Object(u.jsx)(Qt.a,{label:"Until",ampm:!1,value:v,onChange:function(e){return E({type:"SET_UNTIL",payload:e})},onError:console.log,inputFormat:"DD/MM/YYYY HH:mm:ss",mask:"__/__/____ __:__:__",renderInput:function(e){return Object(u.jsx)(jt.a,Object(T.a)(Object(T.a)({},e),{},{variant:"standard"}))}})}),Object(u.jsx)(O.a,{mt:2,children:Object(u.jsxs)(h.a,{variant:"body2",children:["Will be changed to current time for auto-refresh mode.\xa0",Object(u.jsx)(Wt,{handler:function(){return E({type:"RUN_QUERY_TO_NOW"})},text:"Switch to now"})]})})]})]})},Kt=n(162),Xt=n.n(Kt),Zt=n(164),$t=n.n(Zt),en=n(165),tn=n.n(en),nn=n(163),an=n.n(nn),rn=n(302),cn=n(161),on=n.n(cn),sn=n(309),ln=n(307),un=n(347),dn=n(349),jn=n(316),bn=n(345),pn=n(335),On=n(322),hn=n(334),fn=n(346),xn=n(320),vn=n(337),mn=n(348),yn=n(308),gn=["children","value","index"],Sn=function(e){var t=e.children,n=e.value,a=e.index,r=Object(ct.a)(e,gn);return Object(u.jsx)("div",Object(T.a)(Object(T.a)({role:"tabpanel",hidden:n!==a,id:"auth-config-tabpanel-".concat(a),"aria-labelledby":"auth-config-tab-".concat(a)},r),{},{children:n===a&&Object(u.jsx)(O.a,{py:2,children:t})}))},En=n(159),_n=n.n(En),Tn=n(160),wn=n.n(Tn),Cn={authMethod:"NO_AUTH",saveAuthLocally:!1},An=J("AUTH_TYPE"),Rn=J("BASIC_AUTH_DATA"),In=J("BEARER_AUTH_DATA"),kn=Object(T.a)(Object(T.a)({},Cn),{},{authMethod:An||Cn.authMethod,basicData:Rn,bearerData:In,saveAuthLocally:!(!Rn&&!In)}),Un=function(){K(X)};function Mn(e,t){switch(t.type){case"SET_BASIC_AUTH":return t.payload.checkbox?V("BASIC_AUTH_DATA",t.payload.value):Un(),V("AUTH_TYPE","BASIC_AUTH"),Object(T.a)(Object(T.a)({},e),{},{authMethod:"BASIC_AUTH",basicData:t.payload.value});case"SET_BEARER_AUTH":return t.payload.checkbox?V("BEARER_AUTH_DATA",t.payload.value):Un(),V("AUTH_TYPE","BEARER_AUTH"),Object(T.a)(Object(T.a)({},e),{},{authMethod:"BEARER_AUTH",bearerData:t.payload.value});case"SET_NO_AUTH":return!t.payload.checkbox&&Un(),V("AUTH_TYPE","NO_AUTH"),Object(T.a)(Object(T.a)({},e),{},{authMethod:"NO_AUTH"});default:throw new Error}}var Hn=Object(a.createContext)({}),Dn=function(){return Object(a.useContext)(Hn).state},Nn=function(e){var t=e.children,n=Object(a.useReducer)(Mn,kn),r=Object(o.a)(n,2),c=r[0],i=r[1],s=Object(a.useMemo)((function(){return{state:c,dispatch:i}}),[c,i]);return Object(u.jsx)(Hn.Provider,{value:s,children:t})},Ln=Object(ve.a)((function(){return Object(yn.a)({tabsContent:{height:"200px"}})})),Pn="Bearer ",qn=[{title:"No auth",id:"NO_AUTH"},{title:"Basic Auth",id:"BASIC_AUTH"},{title:"Bearer Token",id:"BEARER_AUTH"}],Yn=function(e){var t=Ln(),n=e.onClose,r=e.open,c=Dn(),i=c.saveAuthLocally,s=c.basicData,l=c.bearerData,d=c.authMethod,j=Object(a.useContext)(Hn).dispatch,b=Object(a.useState)(i),p=Object(o.a)(b,2),f=p[0],x=p[1],v=Object(a.useState)(s||{password:"",login:""}),y=Object(o.a)(v,2),g=y[0],S=y[1],E=Object(a.useState)((null===l||void 0===l?void 0:l.token)||Pn),_=Object(o.a)(E,2),w=_[0],C=_[1],A=Object(a.useState)(qn.findIndex((function(e){return e.id===d}))||0),R=Object(o.a)(A,2),I=R[0],k=R[1],U=function(){n()};return Object(u.jsxs)(ln.a,{onClose:U,"aria-labelledby":"simple-dialog-title",open:r,children:[Object(u.jsx)(sn.a,{id:"simple-dialog-title",children:"Request Auth Settings"}),Object(u.jsxs)(un.a,{children:[Object(u.jsx)(dn.a,{children:"This affects Authorization header sent to the server you specify. Not shown in URL and can be optionally stored on a client side"}),Object(u.jsx)(jn.a,{value:I,onChange:function(e,t){k(t)},indicatorColor:"primary",textColor:"primary",children:qn.map((function(e){return Object(u.jsx)(bn.a,{label:e.title},e.id)}))}),Object(u.jsxs)(O.a,{p:0,display:"flex",flexDirection:"column",className:t.tabsContent,children:[Object(u.jsxs)(O.a,{flexGrow:1,children:[Object(u.jsx)(Sn,{value:I,index:0,children:Object(u.jsx)(h.a,{style:{fontStyle:"italic"},children:"No Authorization Header"})}),Object(u.jsxs)(Sn,{value:I,index:1,children:[Object(u.jsxs)(pn.a,{margin:"dense",fullWidth:!0,children:[Object(u.jsx)(On.a,{htmlFor:"basic-login",children:"User"}),Object(u.jsx)(hn.a,{id:"basic-login",startAdornment:Object(u.jsx)(fn.a,{position:"start",children:Object(u.jsx)(_n.a,{})}),required:!0,onChange:function(e){return S((function(t){return Object(T.a)(Object(T.a)({},t),{},{login:e.target.value||""})}))},value:(null===g||void 0===g?void 0:g.login)||""})]}),Object(u.jsxs)(pn.a,{margin:"dense",fullWidth:!0,children:[Object(u.jsx)(On.a,{htmlFor:"basic-pass",children:"Password"}),Object(u.jsx)(hn.a,{id:"basic-pass",startAdornment:Object(u.jsx)(fn.a,{position:"start",children:Object(u.jsx)(wn.a,{})}),onChange:function(e){return S((function(t){return Object(T.a)(Object(T.a)({},t),{},{password:e.target.value||""})}))},value:(null===g||void 0===g?void 0:g.password)||""})]})]}),Object(u.jsx)(Sn,{value:I,index:2,children:Object(u.jsx)(jt.a,{id:"bearer-auth",label:"Bearer token",multiline:!0,fullWidth:!0,value:w,onChange:function(e){var t=e.target.value;t.startsWith(Pn)?C(t):C(Pn)},InputProps:{onPaste:function(e){var t=e.clipboardData.getData("text/plain");t.startsWith(Pn)?C(t):C(Pn+t),e.preventDefault()}},maxRows:6})})]}),Object(u.jsxs)(pn.a,{children:[Object(u.jsx)(m.a,{control:Object(u.jsx)(xn.a,{checked:f,onChange:function(){return x((function(e){return!e}))},name:"checkedB",color:"primary"}),label:"Persist Auth Data Locally"}),Object(u.jsx)(vn.a,{children:f?"Auth Data and the Selected method will be saved to LocalStorage":"Auth Data won't be saved. All previously saved Auth Data will be removed"})]})]})]}),Object(u.jsx)(mn.a,{children:Object(u.jsx)(ht.a,{onClick:function(){switch(I){case 0:j({type:"SET_NO_AUTH",payload:{checkbox:f}});break;case 1:j({type:"SET_BASIC_AUTH",payload:{checkbox:f,value:g}});break;case 2:j({type:"SET_BEARER_AUTH",payload:{checkbox:f,value:{token:w}}})}U()},color:"primary",children:"Apply"})})]})},Bn=function(e){var t=e.error,n=ae(),r=ne().serverURL,c=pe().serverUrl,i=Oe(),s=Object(a.useState)(!1),l=Object(o.a)(s,2),d=l[0],j=l[1];return Object(a.useEffect)((function(){n&&i({type:"SET_SERVER",payload:r})}),[r]),Object(u.jsxs)(u.Fragment,{children:[Object(u.jsxs)(O.a,{display:"grid",gridTemplateColumns:"1fr auto",gap:"4px",alignItems:"center",width:"100%",mb:2,minHeight:50,children:[Object(u.jsx)(jt.a,{variant:"outlined",fullWidth:!0,label:"Server URL",value:c||"",disabled:n,error:t===nt.validServer||t===nt.emptyServer,inputProps:{style:{fontFamily:"Monospace"}},onChange:function(e){var t=e.target.value;i({type:"SET_SERVER",payload:t})}}),Object(u.jsx)(O.a,{children:Object(u.jsx)(y.a,{title:"Request Auth Settings",children:Object(u.jsx)(g.a,{onClick:function(){return j(!0)},children:Object(u.jsx)(on.a,{})})})})]}),Object(u.jsx)(Yn,{open:d,onClose:function(){return j(!1)}})]})},Fn=function(){var e=Be().customStep,t=Fe(),n=Object(a.useState)(!1),r=Object(o.a)(n,2),c=r[0],i=r[1],s=pe().time,l=s.period.step,d=s.duration,j=Object(a.useCallback)(pt()((function(e){var n=+e.target.value;n>0?(t({type:"SET_CUSTOM_STEP",payload:n}),i(!1)):i(!0)}),500),[e.value]),b=function(){i(!1),t({type:"TOGGLE_CUSTOM_STEP"})};return Object(a.useEffect)((function(){e.enable&&b()}),[d]),Object(a.useEffect)((function(){e.enable||t({type:"SET_CUSTOM_STEP",payload:l||1})}),[l]),Object(u.jsxs)(O.a,{display:"grid",gridTemplateColumns:"auto 120px",alignItems:"center",children:[Object(u.jsx)(m.a,{control:Object(u.jsx)(ge,{checked:e.enable,onChange:b}),label:"Override step value"}),e.enable&&Object(u.jsx)(jt.a,{label:"Step value",type:"number",size:"small",variant:"outlined",defaultValue:e.value,error:c,helperText:c?"step is out of allowed range":" ",onChange:j})]})},Qn=function(){var e=pe().queryControls,t=e.autocomplete,n=e.nocache,a=Oe();return Object(u.jsxs)(O.a,{display:"flex",alignItems:"center",children:[Object(u.jsx)(O.a,{children:Object(u.jsx)(m.a,{label:"Enable autocomplete",control:Object(u.jsx)(ge,{checked:t,onChange:function(){a({type:"TOGGLE_AUTOCOMPLETE"}),V("AUTOCOMPLETE",!t)}})})}),Object(u.jsx)(O.a,{ml:2,children:Object(u.jsx)(m.a,{label:"Enable cache",control:Object(u.jsx)(ge,{checked:!n,onChange:function(){a({type:"NO_CACHE"}),V("NO_CACHE",!n)}})})}),Object(u.jsx)(O.a,{ml:2,children:Object(u.jsx)(Fn,{})})]})},zn=function(e){var t=e.error,n=pe(),r=n.serverUrl,c=n.query,i=n.queryHistory,s=n.time.duration,l=n.queryControls.autocomplete,d=Oe(),j=Object(a.useState)(!0),b=Object(o.a)(j,2),p=b[0],f=b[1],x=Object(a.useRef)(null),v=Object(a.useRef)(c);Object(a.useEffect)((function(){v.current=c}),[c]);var m=function(){d({type:"SET_QUERY_HISTORY",payload:c.map((function(e,t){var n=i[t]||{values:[]},a=e===n.values[n.values.length-1];return{index:n.values.length-Number(a),values:!a&&e?[].concat(Object(De.a)(n.values),[e]):n.values}}))}),d({type:"SET_QUERY",payload:c}),d({type:"RUN_QUERY"})},S=function(e,t){var n=Object(De.a)(v.current);n[t]=e,d({type:"SET_QUERY",payload:n})},E=function(e,t){var n=i[t],a=n.index,r=n.values,c=a+e;c<0||c>=r.length||(S(r[c]||"",t),d({type:"SET_QUERY_HISTORY_BY_INDEX",payload:{value:{values:r,index:c},queryNumber:t}}))};return Object(u.jsx)(u.Fragment,{children:Object(u.jsxs)(Ut.a,{expanded:p,onChange:function(){return f((function(e){return!e}))},children:[Object(u.jsxs)(Mt.a,{expandIcon:Object(u.jsx)(g.a,{children:Object(u.jsx)(Xt.a,{})}),"aria-controls":"panel1a-content",id:"panel1a-header",sx:{alignItems:"flex-start",padding:"15px"},children:[Object(u.jsx)(O.a,{mr:2,children:Object(u.jsx)(h.a,{variant:"h6",component:"h2",children:"Query Configuration"})}),Object(u.jsx)(O.a,{flexGrow:1,onClick:function(e){return e.stopPropagation()},onFocusCapture:function(e){return e.stopPropagation()},children:Object(u.jsx)(rn.a,{disablePortal:!p,container:x.current,children:c.map((function(e,n){return Object(u.jsxs)(O.a,{display:"grid",gridTemplateColumns:"1fr auto",gap:"4px",width:"100%",mb:n===c.length-1?0:2,children:[Object(u.jsx)(Bt,{server:r,query:c[n],index:n,oneLiner:!p,autocomplete:l,queryHistory:i[n],error:t,setHistoryIndex:E,runQuery:m,setQuery:S}),0===n&&Object(u.jsx)(y.a,{title:"Execute Query",children:Object(u.jsx)(g.a,{onClick:m,children:Object(u.jsx)(an.a,{})})}),n>0&&Object(u.jsx)(y.a,{title:"Remove Query",children:Object(u.jsx)(g.a,{onClick:function(){return function(e){var t=Object(De.a)(v.current);t.splice(e,1),d({type:"SET_QUERY",payload:t})}(n)},children:Object(u.jsx)($t.a,{})})})]},n)}))})})]}),Object(u.jsx)(Ht.a,{children:Object(u.jsxs)(Dt.a,{container:!0,columnSpacing:2,children:[Object(u.jsxs)(Dt.a,{item:!0,xs:6,minWidth:400,children:[Object(u.jsx)(Bn,{error:t}),Object(u.jsx)("div",{ref:x}),c.length<2&&Object(u.jsx)(O.a,{display:"inline-block",minHeight:"40px",mt:2,children:Object(u.jsxs)(ht.a,{onClick:function(){return d({type:"SET_QUERY",payload:[].concat(Object(De.a)(v.current),[""])})},variant:"outlined",children:[Object(u.jsx)(tn.a,{sx:{fontSize:16,marginRight:"4px"}}),Object(u.jsx)("span",{style:{lineHeight:1,paddingTop:"1px"},children:"Query"})]})})]}),Object(u.jsx)(Dt.a,{item:!0,xs:!0,children:Object(u.jsx)(Jt,{setDuration:function(e){return d({type:"SET_DURATION",payload:e})},duration:s})}),Object(u.jsx)(Dt.a,{item:!0,xs:12,pt:1,children:Object(u.jsx)(Qn,{})})]})})]})})},Gn=n(81),Wn=n.n(Gn),Vn=n(166),Jn=n(167),Kn=ae(),Xn=ne().serverURL,Zn=function(){var e=pe(),t=e.query,n=e.displayType,r=e.serverUrl,c=e.time.period,i=e.queryControls.nocache,s=Dn(),l=s.basicData,u=s.bearerData,d=s.authMethod,j=Be().customStep,b=Object(a.useState)(!1),p=Object(o.a)(b,2),O=p[0],h=p[1],f=Object(a.useState)(),x=Object(o.a)(f,2),v=x[0],m=x[1],y=Object(a.useState)(),g=Object(o.a)(y,2),S=g[0],E=g[1],_=Object(a.useState)(),w=Object(o.a)(_,2),C=w[0],A=w[1],R=Object(a.useState)(),I=Object(o.a)(R,2),k=I[0],U=I[1];Object(a.useEffect)((function(){C&&(m(void 0),E(void 0))}),[C]);var M=Object(a.useMemo)((function(){if(!k)return!0;var e=(k.end-k.start)/3,t=e/(c.end-c.start)>=.7,n=c.end>k.end+e,a=c.start<k.start-e;return t||n||a}),[c]),H=function(){var e=Object(Vn.a)(Wn.a.mark((function e(){var t,a,r,i,o,s;return Wn.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null===D||void 0===D?void 0:D.length){e.next=2;break}return e.abrupt("return");case 2:return h(!0),U(c),t=new Headers,"BASIC_AUTH"===d&&t.set("Authorization","Basic "+btoa("".concat((null===l||void 0===l?void 0:l.login)||"",":").concat((null===l||void 0===l?void 0:l.password)||""))),"BEARER_AUTH"===d&&t.set("Authorization",(null===u||void 0===u?void 0:u.token)||""),e.prev=7,e.delegateYield(Wn.a.mark((function e(){var c,l,u,d,j;return Wn.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Promise.all(D.map((function(e){return fetch(e,{headers:t})})));case 2:c=e.sent,l=[],u=1,a=!1,r=!1,e.prev=7,o=Object(Jn.a)(c);case 9:return e.next=11,o.next();case 11:if(!(a=!(s=e.sent).done)){e.next=20;break}return d=s.value,e.next=15,d.json();case 15:j=e.sent,d.ok?(A(void 0),l.push.apply(l,Object(De.a)(j.data.result.map((function(e){return e.group=u,e})))),u++):A("".concat(j.errorType,"\r\n").concat(null===j||void 0===j?void 0:j.error));case 17:a=!1,e.next=9;break;case 20:e.next=26;break;case 22:e.prev=22,e.t0=e.catch(7),r=!0,i=e.t0;case 26:if(e.prev=26,e.prev=27,!a||null==o.return){e.next=31;break}return e.next=31,o.return();case 31:if(e.prev=31,!r){e.next=34;break}throw i;case 34:return e.finish(31);case 35:return e.finish(26);case 36:"chart"===n?m(l):E(l);case 37:case"end":return e.stop()}}),e,null,[[7,22,26,36],[27,,31,35]])}))(),"t0",9);case 9:e.next=14;break;case 11:e.prev=11,e.t1=e.catch(7),e.t1 instanceof Error&&A("".concat(e.t1.name,": ").concat(e.t1.message));case 14:h(!1);case 15:case"end":return e.stop()}}),e,null,[[7,11]])})));return function(){return e.apply(this,arguments)}}(),D=Object(a.useMemo)((function(){var e=Kn?Xn:r;if(c)if(e)if(t.every((function(e){return!e.trim()})))A(nt.validQuery);else{if(function(e){var t;try{t=new URL(e)}catch(n){return!1}return"http:"===t.protocol||"https:"===t.protocol}(e)){var a=(c.end-c.start)/2,o=Object(T.a)(Object(T.a)({},c),{},{start:c.start-a,end:c.end+a});return j.enable&&(o.step=j.value),t.filter((function(e){return e.trim()})).map((function(t){return"chart"===n?function(e,t,n,a){return"".concat(e,"/api/v1/query_range?query=").concat(encodeURIComponent(t),"&start=").concat(n.start,"&end=").concat(n.end,"&step=").concat(n.step).concat(a?"&nocache=1":"")}(e,t,o,i):function(e,t,n){return"".concat(e,"/api/v1/query?query=").concat(encodeURIComponent(t),"&start=").concat(n.start,"&end=").concat(n.end,"&step=").concat(n.step)}(e,t,c)}))}A(nt.validServer)}else A(nt.emptyServer)}),[r,c,n,j]);return Object(a.useEffect)((function(){U(void 0)}),[t]),Object(a.useEffect)((function(){H()}),[r,n,j]),Object(a.useEffect)((function(){M&&H()}),[c]),{fetchUrl:D,isLoading:O,graphData:v,liveData:S,error:C}},$n=function(e){var t=e.data,n=Object(a.useContext)(d).showInfoMessage,r=Object(a.useMemo)((function(){return JSON.stringify(t,null,2)}),[t]);return Object(u.jsxs)(O.a,{position:"relative",children:[Object(u.jsx)(O.a,{flexDirection:"column",justifyContent:"flex-end",display:"flex",style:{position:"fixed",right:"16px"},children:Object(u.jsx)(ht.a,{variant:"outlined",onClick:function(e){navigator.clipboard.writeText(r),n("Formatted JSON has been copied"),e.preventDefault()},children:"Copy JSON"})}),Object(u.jsx)("pre",{children:r})]})},ea=function(){var e=pe(),t=e.displayType,n=e.time.period,a=Zn(),r=a.isLoading,c=a.liveData,i=a.graphData,o=a.error;return Object(u.jsxs)(u.Fragment,{children:[Object(u.jsx)(b.a,{position:"static",children:Object(u.jsxs)(p.a,{children:[Object(u.jsxs)(O.a,{display:"flex",children:[Object(u.jsxs)(h.a,{variant:"h5",children:[Object(u.jsx)("span",{style:{fontWeight:"bolder"},children:"VM"}),Object(u.jsx)("span",{style:{fontWeight:"lighter"},children:"UI"})]}),Object(u.jsx)("div",{style:{fontSize:"10px",marginTop:"-2px"},children:Object(u.jsx)("div",{children:"BETA"})})]}),Object(u.jsx)("div",{style:{fontSize:"10px",position:"absolute",top:"40px",opacity:".4"},children:Object(u.jsx)(f.a,{color:"inherit",href:"https://github.com/VictoriaMetrics/VictoriaMetrics/issues/new",target:"_blank",children:"Create an issue"})}),Object(u.jsx)(O.a,{ml:4,flexGrow:1,children:Object(u.jsx)(Ee,{})}),Object(u.jsx)(He,{})]})}),Object(u.jsxs)(O.a,{p:4,display:"grid",gridTemplateRows:"auto 1fr",gap:"20px",style:{minHeight:"calc(100vh - 64px)"},children:[Object(u.jsx)(O.a,{children:Object(u.jsx)(zn,{error:o})}),Object(u.jsxs)(O.a,{height:"100%",children:[r&&Object(u.jsx)(x.a,{in:r,style:{transitionDelay:r?"300ms":"0ms"},children:Object(u.jsx)(O.a,{alignItems:"center",justifyContent:"center",flexDirection:"column",display:"flex",style:{width:"100%",maxWidth:"calc(100vw - 32px)",position:"absolute",height:"50%",background:"linear-gradient(rgba(255,255,255,.7), rgba(255,255,255,.7), rgba(255,255,255,0))"},children:Object(u.jsx)(v.a,{})})}),Object(u.jsxs)(O.a,{height:"100%",bgcolor:"#fff",children:[o&&Object(u.jsx)(l.a,{color:"error",severity:"error",style:{fontSize:"14px",whiteSpace:"pre-wrap"},children:o}),i&&n&&"chart"===t&&Object(u.jsx)(Et,{data:i}),c&&"code"===t&&Object(u.jsx)($n,{data:c}),c&&"table"===t&&Object(u.jsx)(kt,{data:c})]})]})]})]})},ta=n(311),na=n(354),aa=n(173),ra=Object(aa.a)({palette:{primary:{main:"#3F51B5"},secondary:{main:"#F50057"},error:{main:"#FF4141"}},components:{MuiFormHelperText:{styleOverrides:{root:{position:"absolute",top:"36px",left:"2px",margin:0}}},MuiInputLabel:{styleOverrides:{root:{fontSize:"12px",letterSpacing:"normal",lineHeight:"1"}}},MuiInputBase:{styleOverrides:{root:{"&.Mui-focused fieldset":{borderWidth:"1px !important"}}}},MuiSwitch:{defaultProps:{color:"secondary"}},MuiAccordion:{styleOverrides:{root:{boxShadow:"rgba(0, 0, 0, 0.16) 0px 1px 4px;"}}},MuiPaper:{styleOverrides:{elevation3:{boxShadow:"rgba(0, 0, 0, 0.2) 0px 3px 8px;"}}},MuiIconButton:{defaultProps:{size:"large"},styleOverrides:{sizeLarge:{borderRadius:"20%",height:"40px",width:"41px"},sizeMedium:{borderRadius:"20%"},sizeSmall:{borderRadius:"20%"}}}},typography:{fontSize:10}}),ca=n(310),ia=n(306),oa=n(168),sa=function(){return Object(u.jsxs)(u.Fragment,{children:[Object(u.jsx)(ca.a,{})," ",Object(u.jsxs)(ia.b,{dateAdapter:oa.a,children:[" ",Object(u.jsx)(ta.a,{injectFirst:!0,children:Object(u.jsxs)(na.a,{theme:ra,children:["  ",Object(u.jsxs)(fe,{children:[" ",Object(u.jsxs)(Nn,{children:[" ",Object(u.jsxs)(Qe,{children:[" ",Object(u.jsxs)(j,{children:[" ",Object(u.jsx)(ea,{})]})]})]})]})]})})]})]})},la=function(e){e&&e instanceof Function&&n.e(3).then(n.bind(null,356)).then((function(t){var n=t.getCLS,a=t.getFID,r=t.getFCP,c=t.getLCP,i=t.getTTFB;n(e),a(e),r(e),c(e),i(e)}))};i.a.render(Object(u.jsx)(r.a.StrictMode,{children:Object(u.jsx)(sa,{})}),document.getElementById("root")),la()}},[[234,1,2]]]);
\ No newline at end of file
diff --git a/app/vmselect/vmui/static/js/main.fa15a895.chunk.js b/app/vmselect/vmui/static/js/main.fa15a895.chunk.js
new file mode 100644
index 000000000..ce99f8783
--- /dev/null
+++ b/app/vmselect/vmui/static/js/main.fa15a895.chunk.js
@@ -0,0 +1,1 @@
+(this.webpackJsonpvmui=this.webpackJsonpvmui||[]).push([[0],{204:function(e,t,n){},219:function(e,t){},223:function(e,t,n){},224:function(e,t,n){},234:function(e,t,n){"use strict";n.r(t);var a=n(1),r=n.n(a),c=n(53),i=n.n(c),o=(n(204),n(9)),s=n(318),l=n(317),u=n(0),d=Object(a.createContext)({showInfoMessage:function(){}}),j=function(e){var t=e.children,n=Object(a.useState)({}),r=Object(o.a)(n,2),c=r[0],i=r[1],j=Object(a.useState)(!1),b=Object(o.a)(j,2),p=b[0],O=b[1],h=Object(a.useState)(void 0),f=Object(o.a)(h,2),x=f[0],v=f[1];Object(a.useEffect)((function(){x&&(i({message:x,key:(new Date).getTime()}),O(!0))}),[x]);return Object(u.jsxs)(d.Provider,{value:{showInfoMessage:v},children:[Object(u.jsx)(s.a,{open:p,autoHideDuration:4e3,onClose:function(e,t){"clickaway"!==t&&(v(void 0),O(!1))},children:Object(u.jsx)(l.a,{children:c.message})},c.key),t]})},b=n(352),p=n(353),O=n(328),h=n(246),f=n(344),x=n(242),v=n(329),m=n(331),y=n(323),g=n(327),S=n(149),E=n.n(S),_=n(3),T=n(16),w=n(40),C=n.n(w),A=n(145),R=n.n(A),I=n(146),k=n.n(I),U=n(105),M=n.n(U);C.a.extend(R.a),C.a.extend(k.a);var H,D=window.innerWidth/2,N=1,L=1578e8,P="YYYY-MM-DD[T]HH:mm:ss",q=[{long:"days",short:"d",possible:"day"},{long:"weeks",short:"w",possible:"week"},{long:"months",short:"M",possible:"mon"},{long:"years",short:"y",possible:"year"},{long:"hours",short:"h",possible:"hour"},{long:"minutes",short:"m",possible:"min"},{long:"seconds",short:"s",possible:"sec"},{long:"milliseconds",short:"ms",possible:"millisecond"}],Y=q.map((function(e){return e.short})),B=function(e){return+M()(e).format("0.000")},F=function(e){var t=e.match(/\d+/g),n=e.match(/[a-zA-Z]+/g);if(n&&t&&Y.includes(n[0]))return Object(_.a)({},n[0],t[0])},Q=function(e,t){var n=(t||new Date).valueOf()/1e3,a=e.trim().split(" ").reduce((function(e,t){var n=F(t);return n?Object(T.a)(Object(T.a)({},e),n):Object(T.a)({},e)}),{}),r=C.a.duration(a).asSeconds();return{start:n-r,end:n,step:B(r/D)||.001,date:z(t||new Date)}},z=function(e){return C()(e).utc().format(P)},G=function(e){var t=Math.floor(e%1e3),n=Math.floor(e/1e3%60),a=Math.floor(e/1e3/60%60),r=Math.floor(e/1e3/3600%24),c=Math.floor(e/864e5),i=["d","h","m","s","ms"];return[c,r,a,n,t].map((function(e,t){return e?"".concat(e).concat(i[t]):""})).filter((function(e){return e})).join(" ")},W=function(e){return new Date(1e3*e)},V=function(e,t){t?window.localStorage.setItem(e,JSON.stringify({value:t})):K([e])},J=function(e){var t=window.localStorage.getItem(e);if(null!==t)try{var n;return null===(n=JSON.parse(t))||void 0===n?void 0:n.value}catch(a){return t}},K=function(e){return e.forEach((function(e){return window.localStorage.removeItem(e)}))},X=["BASIC_AUTH_DATA","BEARER_AUTH_DATA"],Z=n(147),$=n.n(Z),ee=n(117),te=n.n(ee),ne={"time.duration":"range_input","time.period.date":"end_input","time.period.step":"step_input",displayType:"tab"},ae=function(e){var t=new Map(Object.entries(ne)),n=te()(e,"query",""),a=[];n.forEach((function(n,r){t.forEach((function(t,n){var c=te()(e,n,"");if(c){var i=encodeURIComponent(c);a.push("g".concat(r,".").concat(t,"=").concat(i))}})),a.push("g".concat(r,".expr=").concat(n))})),function(e){var t=window;if(t){var n="".concat(t.location.protocol,"//").concat(t.location.host).concat(t.location.pathname,"?").concat(e);t.history.pushState({path:n},"",n)}}(a.join("&"))},re=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:window.location.search,a=$.a.parse(n,{ignoreQueryPrefix:!0});return te()(a,e,t||"")},ce=re("g0.range_input","1h"),ie=(H=re("g0.end_input",new Date(C()().utc().format(P))),C()(H).utcOffset(0,!0).local().format(P)),oe=function(){var e,t=(null===(e=window.location.search.match(/g\d+.expr/gim))||void 0===e?void 0:e.length)||1;return new Array(t).fill(1).map((function(e,t){return re("g".concat(t,".expr"),"")}))}(),se={serverUrl:window.location.href.replace(/\/(?:prometheus\/)?(?:graph|vmui)\/.*/,"/prometheus/"),displayType:re("tab","chart"),query:oe,queryHistory:oe.map((function(e){return{index:0,values:[e]}})),time:{duration:ce,period:Q(ce,new Date(ie))},queryControls:{autoRefresh:!1,autocomplete:J("AUTOCOMPLETE")||!1,nocache:J("NO_CACHE")||!1}};function le(e,t){switch(t.type){case"SET_DISPLAY_TYPE":return Object(T.a)(Object(T.a)({},e),{},{displayType:t.payload});case"SET_SERVER":return Object(T.a)(Object(T.a)({},e),{},{serverUrl:t.payload});case"SET_QUERY":return Object(T.a)(Object(T.a)({},e),{},{query:t.payload});case"SET_QUERY_HISTORY":return Object(T.a)(Object(T.a)({},e),{},{queryHistory:t.payload});case"SET_QUERY_HISTORY_BY_INDEX":return e.queryHistory.splice(t.payload.queryNumber,1,t.payload.value),Object(T.a)(Object(T.a)({},e),{},{queryHistory:e.queryHistory});case"SET_DURATION":return Object(T.a)(Object(T.a)({},e),{},{time:Object(T.a)(Object(T.a)({},e.time),{},{duration:t.payload,period:Q(t.payload,W(e.time.period.end))})});case"SET_UNTIL":return Object(T.a)(Object(T.a)({},e),{},{time:Object(T.a)(Object(T.a)({},e.time),{},{period:Q(e.time.duration,t.payload)})});case"SET_PERIOD":var n=function(e){var t=e.to.valueOf()-e.from.valueOf();return G(t)}(t.payload);return Object(T.a)(Object(T.a)({},e),{},{queryControls:Object(T.a)(Object(T.a)({},e.queryControls),{},{autoRefresh:!1}),time:Object(T.a)(Object(T.a)({},e.time),{},{duration:n,period:Q(n,t.payload.to)})});case"TOGGLE_AUTOREFRESH":return Object(T.a)(Object(T.a)({},e),{},{queryControls:Object(T.a)(Object(T.a)({},e.queryControls),{},{autoRefresh:!e.queryControls.autoRefresh})});case"TOGGLE_AUTOCOMPLETE":return Object(T.a)(Object(T.a)({},e),{},{queryControls:Object(T.a)(Object(T.a)({},e.queryControls),{},{autocomplete:!e.queryControls.autocomplete})});case"NO_CACHE":return Object(T.a)(Object(T.a)({},e),{},{queryControls:Object(T.a)(Object(T.a)({},e.queryControls),{},{nocache:!e.queryControls.nocache})});case"RUN_QUERY":return Object(T.a)(Object(T.a)({},e),{},{time:Object(T.a)(Object(T.a)({},e.time),{},{period:Q(e.time.duration,W(e.time.period.end))})});case"RUN_QUERY_TO_NOW":return Object(T.a)(Object(T.a)({},e),{},{time:Object(T.a)(Object(T.a)({},e.time),{},{period:Q(e.time.duration)})});default:throw new Error}}var ue=Object(a.createContext)({}),de=function(){return Object(a.useContext)(ue).state},je=function(){return Object(a.useContext)(ue).dispatch},be=Object.entries(se).reduce((function(e,t){var n=Object(o.a)(t,2),a=n[0],r=n[1];return Object(T.a)(Object(T.a)({},e),{},Object(_.a)({},a,re(a)||r))}),{}),pe=function(e){var t=e.children,n=Object(a.useReducer)(le,be),r=Object(o.a)(n,2),c=r[0],i=r[1];Object(a.useEffect)((function(){ae(c)}),[c]);var s=Object(a.useMemo)((function(){return{state:c,dispatch:i}}),[c,i]);return Object(u.jsx)(ue.Provider,{value:s,children:t})},Oe=function(e){return Object(u.jsxs)(O.a,{position:"relative",display:"inline-flex",children:[Object(u.jsx)(v.a,Object(T.a)({variant:"determinate"},e)),Object(u.jsx)(O.a,{top:0,left:0,bottom:0,right:0,position:"absolute",display:"flex",alignItems:"center",justifyContent:"center",children:Object(u.jsx)(h.a,{variant:"caption",component:"div",children:"".concat(e.label,"s")})})]})},he=n(314),fe=n(10),xe=n(330),ve=Object(fe.a)(xe.a)((function(){return{padding:10,"& .MuiSwitch-track":{borderRadius:14,"&:before, &:after":{content:'""',position:"absolute",top:"50%",transform:"translateY(-50%)",width:14,height:14}},"& .MuiSwitch-thumb":{boxShadow:"none",width:12,height:12,margin:4}}})),me=Object(he.a)({colorizing:{color:"white"}}),ye=function(){var e=me(),t=je(),n=de().queryControls.autoRefresh,c=Object(a.useState)(5),i=Object(o.a)(c,2),s=i[0],l=i[1],d=Object(a.useState)(),j=Object(o.a)(d,2),b=j[0],p=j[1],h=r.a.useState(100),f=Object(o.a)(h,2),x=f[0],v=f[1];Object(a.useEffect)((function(){var e;return n&&(p((new Date).valueOf()),e=setInterval((function(){p((new Date).valueOf()),t({type:"RUN_QUERY_TO_NOW"})}),1e3*s)),function(){e&&clearInterval(e)}}),[s,n]),Object(a.useEffect)((function(){var e=setInterval((function(){if(n&&b){var e=((new Date).valueOf()-b)/1e3,t=Math.floor(e/s*100);v(t)}}),16);return function(){clearInterval(e)}}),[n,b,s]);var S=function(){l((function(e){switch(e){case 1:return 2;default:return 5;case 5:return 1}}))};return Object(u.jsxs)(O.a,{display:"flex",alignItems:"center",children:[Object(u.jsx)(m.a,{control:Object(u.jsx)(ve,{className:e.colorizing,checked:n,onChange:function(){t({type:"TOGGLE_AUTOREFRESH"})}}),label:"Auto-refresh"}),n&&Object(u.jsxs)(u.Fragment,{children:[Object(u.jsx)(Oe,{className:e.colorizing,label:s,value:x,onClick:function(){S()}}),Object(u.jsx)(y.a,{title:"Change delay refresh",children:Object(u.jsx)(O.a,{ml:1,children:Object(u.jsx)(g.a,{onClick:function(){S()},children:Object(u.jsx)(E.a,{style:{color:"white"}})})})})]})]})},ge=n(152),Se=n.n(ge),Ee=n(150),_e=n.n(Ee),Te=n(151),we=n.n(Te),Ce=n(333),Ae=n(324),Re=n(332),Ie=Object(Re.a)({root:{display:"grid",gridTemplateColumns:"18px auto",gridGap:6,padding:"8px 12px",color:"white",lineHeight:"19px","&.Mui-selected":{color:"white"}}})(Ce.a),ke=function(){var e=de().displayType,t=je();return Object(u.jsxs)(Ae.a,{value:e,exclusive:!0,onChange:function(n,a){return t({type:"SET_DISPLAY_TYPE",payload:null!==a&&void 0!==a?a:e})},children:[Object(u.jsxs)(Ie,{value:"chart","aria-label":"display as chart",children:[Object(u.jsx)(_e.a,{}),Object(u.jsx)("span",{children:"Query Range as Chart"})]}),Object(u.jsxs)(Ie,{value:"code","aria-label":"display as code",children:[Object(u.jsx)(we.a,{}),Object(u.jsx)("span",{children:"Instant Query as JSON"})]}),Object(u.jsxs)(Ie,{value:"table","aria-label":"display as table",children:[Object(u.jsx)(Se.a,{}),Object(u.jsx)("span",{children:"Instant Query as Table"})]})]})},Ue=n(21),Me=n(153),He={customStep:{enable:!1,value:1},yaxis:{limits:{enable:!1,range:{1:[0,0]}}}};function De(e,t){switch(t.type){case"TOGGLE_ENABLE_YAXIS_LIMITS":return Object(T.a)(Object(T.a)({},e),{},{yaxis:Object(T.a)(Object(T.a)({},e.yaxis),{},{limits:Object(T.a)(Object(T.a)({},e.yaxis.limits),{},{enable:!e.yaxis.limits.enable})})});case"TOGGLE_CUSTOM_STEP":return Object(T.a)(Object(T.a)({},e),{},{customStep:Object(T.a)(Object(T.a)({},e.customStep),{},{enable:!e.customStep.enable})});case"SET_CUSTOM_STEP":return Object(T.a)(Object(T.a)({},e),{},{customStep:Object(T.a)(Object(T.a)({},e.customStep),{},{value:t.payload})});case"SET_YAXIS_LIMITS":return Object(T.a)(Object(T.a)({},e),{},{yaxis:Object(T.a)(Object(T.a)({},e.yaxis),{},{limits:Object(T.a)(Object(T.a)({},e.yaxis.limits),{},{range:t.payload})})});default:throw new Error}}var Ne,Le=Object(a.createContext)({}),Pe=function(){return Object(a.useContext)(Le).state},qe=function(){return Object(a.useContext)(Le).dispatch},Ye=function(e){var t=e.children,n=Object(a.useReducer)(De,He),r=Object(o.a)(n,2),c=r[0],i=r[1],s=Object(a.useMemo)((function(){return{state:c,dispatch:i}}),[c,i]);return Object(u.jsx)(Le.Provider,{value:s,children:t})},Be=function(e){if(7!=e.length)return"0, 0, 0";var t=parseInt(e.slice(1,3),16),n=parseInt(e.slice(3,5),16),a=parseInt(e.slice(5,7),16);return"".concat(t,", ").concat(n,", ").concat(a)},Fe={height:500,legend:{show:!1},cursor:{drag:{x:!1,y:!1},focus:{prox:30},bind:{mouseup:function(){return null},mousedown:function(){return null},click:function(){return null},dblclick:function(){return null},mouseenter:function(){return null}}}},Qe=function(e,t){return t.map((function(e){return e>1e3?M()(e).format("0.0a"):e}))},ze=function(e,t){return function(e){for(var t=0,n=0;n<e.length;n++)t=e.charCodeAt(n)+((t<<5)-t);for(var a="#",r=0;r<3;r++)a+=("00"+(t>>8*r&255).toString(16)).substr(-2);return a}("".concat(e).concat(t))},Ge=function(e){return e<=1?[]:[4*e,1.2*e]},We=function(e){for(var t=e.length,n=-1/0;t--;)e[t]>n&&(n=e[t]);return n},Ve=function(e){for(var t=e.length,n=1/0;t--;)e[t]<n&&(n=e[t]);return n},Je=function(e){return Array.from(new Set(e.map((function(e){return e.scale})))).map((function(e){var t={scale:e,show:!0,font:"10px Arial",values:Qe};return e?Number(e)%2?t:Object(T.a)(Object(T.a)({},t),{},{side:1}):{space:80}}))},Ke=function(e){var t,n,a=e.u,r=e.tooltipIdx,c=e.metrics,i=e.series,o=e.tooltip,s=e.tooltipOffset,l=r.seriesIdx,u=r.dataIdx,d=a.data[l][u],j=a.data[0][u],b=(null===(t=c[l-1])||void 0===t?void 0:t.metric)||{},p=ze(Number(i[l].scale||0),i[l].label||""),O=a.over.getBoundingClientRect(),h=O.width,f=O.height,x=a.valToPos(d||0,(null===(n=i[l])||void 0===n?void 0:n.scale)||"1"),v=a.valToPos(j,"x"),m=o.getBoundingClientRect(),y=m.width,g=m.height,S=v+y>=h,E=x+g>=f;o.style.display="grid",o.style.top="".concat(s.top+x+10-(E?g+10:0),"px"),o.style.left="".concat(s.left+v+10-(S?y+20:0),"px");var _=C()(new Date(1e3*j)).format("YYYY-MM-DD HH:mm:ss:SSS (Z)"),T=Object.keys(b).filter((function(e){return"__name__"!==e})).map((function(e){return"<div><b>".concat(e,"</b>: ").concat(b[e],"</div>")})).join(""),w='<div class="u-tooltip__marker" style="background: '.concat(p,'"></div>');o.innerHTML="<div>".concat(_,'</div>\n                       <div class="u-tooltip-data">\n                         ').concat(w).concat(b.__name__||"",': <b class="u-tooltip-data__value">').concat(d,'</b>\n                       </div>\n                       <div class="u-tooltip__info">').concat(T,"</div>")},Xe=n(154),Ze=n.n(Xe);n(222),n(223);!function(e){e.xRange="xRange",e.yRange="yRange",e.data="data"}(Ne||(Ne={}));var $e,et=function(e){var t=e.data,n=e.series,r=e.metrics,c=void 0===r?[]:r,i=e.limits,s=je(),l=de().time.period,d=Pe().yaxis,j=Object(a.useRef)(null),b=Object(a.useRef)(null),p=Object(a.useState)(!1),O=Object(o.a)(p,2),h=O[0],f=O[1],x=Object(a.useState)({min:l.start,max:l.end}),v=Object(o.a)(x,2),m=v[0],y=v[1],g=Object(a.useState)(),S=Object(o.a)(g,2),E=S[0],_=S[1],w=document.createElement("div");w.className="u-tooltip";var C={seriesIdx:1,dataIdx:0},A={left:0,top:0},R=Object(a.useCallback)(Ze()((function(e){var t=e.min,n=e.max;s({type:"SET_PERIOD",payload:{from:new Date(1e3*t),to:new Date(1e3*n)}})}),500),[]),I=function(e){var t=e.u,n=e.min,a=e.max,r=1e3*(a-n);r<N||r>L||(t.setScale("x",{min:n,max:a}),y({min:n,max:a}),R({min:n,max:a}))},k=function(){return[m.min,m.max]},U=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,a=arguments.length>3?arguments[3]:void 0;return d.limits.enable?d.limits.range[a]:t&&n?[t-.05*t,n+.05*n]:i[a]},M=Object(T.a)(Object(T.a)({},Fe),{},{series:n,axes:Je(n),scales:Object(T.a)({},function(){var e={x:{range:k}};return Object.keys(d.limits.range).forEach((function(t){e[t]={range:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1;return U(e,n,a,t)}}})),e}()),width:j.current?j.current.offsetWidth:400,plugins:[{hooks:{ready:function(e){var t,n=.85;A.left=parseFloat(e.over.style.left),A.top=parseFloat(e.over.style.top),null===(t=e.root.querySelector(".u-wrap"))||void 0===t||t.appendChild(w),e.over.addEventListener("mousedown",(function(t){return function(e){var t=e.e,n=e.factor,a=void 0===n?.85:n,r=e.u,c=e.setPanning,i=e.setPlotScale;if(0===t.button){t.preventDefault(),c(!0);var o=t.clientX,s=r.posToVal(1,"x")-r.posToVal(0,"x"),l=r.scales.x.min||0,u=r.scales.x.max||0,d=function(e){e.preventDefault();var t=s*((e.clientX-o)*a);i({u:r,min:l-t,max:u-t})};document.addEventListener("mousemove",d),document.addEventListener("mouseup",(function e(){c(!1),document.removeEventListener("mousemove",d),document.removeEventListener("mouseup",e)}))}}({u:e,e:t,setPanning:f,setPlotScale:I,factor:n})})),e.over.addEventListener("wheel",(function(t){if(t.ctrlKey||t.metaKey){t.preventDefault();var a=e.over.getBoundingClientRect().width,r=e.cursor.left&&e.cursor.left>0?e.cursor.left:0,c=e.posToVal(r,"x"),i=(e.scales.x.max||0)-(e.scales.x.min||0),o=t.deltaY<0?i*n:i/n,s=c-r/a*o,l=s+o;e.batch((function(){return I({u:e,min:s,max:l})}))}}))},setCursor:function(e){C.dataIdx!==e.cursor.idx&&(C.dataIdx=e.cursor.idx||0,C.seriesIdx&&C.dataIdx&&Ke({u:e,tooltipIdx:C,metrics:c,series:n,tooltip:w,tooltipOffset:A}))},setSeries:function(e,t){C.seriesIdx!==t&&(C.seriesIdx=t||0,t&&C.dataIdx?Ke({u:e,tooltipIdx:C,metrics:c,series:n,tooltip:w,tooltipOffset:A}):w.style.display="none")}}}]}),H=function(e){if(E){switch(e){case Ne.xRange:E.scales.x.range=k;break;case Ne.yRange:Object.keys(d.limits.range).forEach((function(e){E.scales[e]&&(E.scales[e].range=function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1;return U(t,n,a,e)})}));break;case Ne.data:E.setData(t)}E.redraw()}};return Object(a.useEffect)((function(){return y({min:l.start,max:l.end})}),[l]),Object(a.useEffect)((function(){if(b.current){var e=new Me.a(M,t,b.current);return _(e),y({min:l.start,max:l.end}),e.destroy}}),[b.current,n]),Object(a.useEffect)((function(){return H(Ne.data)}),[t]),Object(a.useEffect)((function(){return H(Ne.xRange)}),[m]),Object(a.useEffect)((function(){return H(Ne.yRange)}),[d]),Object(u.jsx)("div",{ref:j,style:{pointerEvents:h?"none":"auto",height:"500px"},children:Object(u.jsx)("div",{ref:b})})},tt=(n(224),function(e){var t=e.labels,n=e.onChange,r=de().query,c=Object(a.useMemo)((function(){return Array.from(new Set(t.map((function(e){return e.group}))))}),[t]);return Object(u.jsx)("div",{className:"legendWrapper",children:c.map((function(e){return Object(u.jsxs)("div",{className:"legendGroup",children:[Object(u.jsxs)("div",{className:"legendGroupTitle",children:[Object(u.jsx)("svg",{className:"legendGroupLine",width:"33",height:"3",version:"1.1",xmlns:"http://www.w3.org/2000/svg",children:Object(u.jsx)("line",{strokeWidth:"3",x1:"0",y1:"0",x2:"33",y2:"0",stroke:"#363636",strokeDasharray:Ge(e).join(",")})}),Object(u.jsxs)("b",{children:['"',r[e-1],'"']}),":"]}),Object(u.jsx)("div",{children:t.filter((function(t){return t.group===e})).map((function(e){return Object(u.jsxs)("div",{className:e.checked?"legendItem":"legendItem legendItemHide",onClick:function(t){return n(e,t.ctrlKey||t.metaKey)},children:[Object(u.jsx)("div",{className:"legendMarker",style:{borderColor:e.color,backgroundColor:"rgba(".concat(Be(e.color),", 0.1)")}}),Object(u.jsx)("div",{className:"legendLabel",children:e.label})]},"".concat(e.group,".").concat(e.label))}))})]},e)}))})}),nt=n(115),at=["__name__"],rt=function(e,t){var n=function(e){if(0===Object.keys(e.metric).length)return"Query result";var t=e.metric,n=t.__name__,a=Object(nt.a)(t,at);return"".concat(n||""," {").concat(Object.entries(a).map((function(e){return"".concat(e[0],": ").concat(e[1])})).join(", "),"}")}(e);return{label:n,dash:Ge(e.group),width:1.5,stroke:ze(e.group,n),show:!it(n,e.group,t),scale:String(e.group)}},ct=function(e,t){return{group:t,label:e.label||"",color:e.stroke,checked:e.show||!1}},it=function(e,t,n){return n.includes("".concat(t,".").concat(e))},ot=n(156),st=n.n(ot),lt=n(315),ut=n(106),dt=n.n(ut),jt=function(){var e=Pe().yaxis,t=qe(),n=Object(a.useMemo)((function(){return Object.keys(e.limits.range)}),[e.limits.range]),r=Object(a.useCallback)(dt()((function(n,a,r){var c=e.limits.range;c[a][r]=+n.target.value,t({type:"SET_YAXIS_LIMITS",payload:c})}),500),[e.limits.range]);return Object(u.jsxs)(O.a,{display:"grid",alignItems:"center",gap:2,children:[Object(u.jsx)(m.a,{control:Object(u.jsx)(ve,{checked:e.limits.enable,onChange:function(){t({type:"TOGGLE_ENABLE_YAXIS_LIMITS"})}}),label:"Fix the limits for y-axis"}),Object(u.jsx)(O.a,{display:"grid",alignItems:"center",gap:2,children:n.map((function(t){return Object(u.jsxs)(O.a,{display:"grid",gridTemplateColumns:"120px 120px",gap:1,children:[Object(u.jsx)(lt.a,{label:"Min ".concat(t),type:"number",size:"small",variant:"outlined",disabled:!e.limits.enable,defaultValue:e.limits.range[t][0],onChange:function(e){return r(e,t,0)}}),Object(u.jsx)(lt.a,{label:"Max ".concat(t),type:"number",size:"small",variant:"outlined",disabled:!e.limits.enable,defaultValue:e.limits.range[t][1],onChange:function(e){return r(e,t,1)}})]},t)}))})]})},bt=n(325),pt=n(178),Ot=n(155),ht=n.n(Ot),ft=n(157),xt=n.n(ft),vt=Object(he.a)({popover:{position:"absolute",display:"grid",gridGap:"16px",padding:"0 0 25px",zIndex:2},popoverHeader:{display:"flex",alignItems:"center",justifyContent:"space-between",background:"#3F51B5",padding:"6px 6px 6px 12px",borderRadius:"4px 4px 0 0",color:"#FFF",cursor:"move"},popoverBody:{display:"grid",gridGap:"6px",padding:"0 14px"}}),mt=function(){var e=Object(a.useState)(!1),t=Object(o.a)(e,2),n=t[0],r=t[1],c=Object(a.useRef)(null),i=vt();return Object(u.jsxs)(O.a,{display:"flex",px:2,children:[Object(u.jsxs)(bt.a,{onClick:function(){return r((function(e){return!e}))},variant:"outlined",children:[Object(u.jsx)(st.a,{sx:{fontSize:16,marginRight:"4px"}}),Object(u.jsxs)("span",{style:{lineHeight:1,paddingTop:"1px"},children:[n?"Hide":"Show"," graph settings"]})]}),n&&Object(u.jsx)(ht.a,{nodeRef:c,defaultPosition:{x:173,y:0},handle:"#handle",children:Object(u.jsxs)(pt.a,{elevation:3,className:i.popover,ref:c,children:[Object(u.jsxs)("div",{id:"handle",className:i.popoverHeader,children:[Object(u.jsx)(h.a,{variant:"body1",children:Object(u.jsx)("b",{children:"Graph Settings"})}),Object(u.jsx)(g.a,{size:"small",onClick:function(){return r(!1)},children:Object(u.jsx)(xt.a,{style:{color:"white"}})})]}),Object(u.jsx)(O.a,{className:i.popoverBody,children:Object(u.jsx)(jt,{})})]})})]})},yt=function(e){var t=e.data,n=void 0===t?[]:t,r=qe(),c=Object(a.useState)([[]]),i=Object(o.a)(c,2),s=i[0],l=i[1],d=Object(a.useState)([]),j=Object(o.a)(d,2),b=j[0],p=j[1],O=Object(a.useState)([]),h=Object(o.a)(O,2),f=h[0],x=h[1],v=Object(a.useState)([]),m=Object(o.a)(v,2),y=m[0],g=m[1],S=Object(a.useState)({1:[0,1]}),E=Object(o.a)(S,2),_=E[0],T=E[1],w=function(e){var t=function(e){var t={};for(var n in e){var a=e[n],r=Ve(a),c=We(a);t[n]=[r-.05*r,c+.05*c]}return t}(e);T(t),r({type:"SET_YAXIS_LIMITS",payload:t})};return Object(a.useEffect)((function(){var e=[],t={},a=[],r=[];null===n||void 0===n||n.forEach((function(n){var c=rt(n,y);r.push(c),a.push(ct(c,n.group)),n.values.forEach((function(a){e.push(a[0]),t[n.group]?t[n.group].push(+a[1]):t[n.group]=[+a[1]]}))}));var c=function(e){var t=Array.from(new Set(e)).sort((function(e,t){return e-t})),n=Ve(t.map((function(e,n){return t[n+1]-e}))),a=t[0]||0;return new Array(t.length).fill(a).map((function(e,t){return B(e+n*t)}))}(e);l([c].concat(Object(Ue.a)(n.map((function(e){return new Array(c.length).fill(1).map((function(t,n){return e.values[n]?+e.values[n][1]:null}))}))))),w(t);var i=[{}].concat(r);JSON.stringify(i)!==JSON.stringify(b)&&(p(i),x(a))}),[n]),Object(a.useEffect)((function(){var e=[],t=[];null===n||void 0===n||n.forEach((function(n){var a=rt(n,y);t.push(a),e.push(ct(a,n.group))})),p([{}].concat(t)),x(e)}),[y]),Object(u.jsx)(u.Fragment,{children:n.length>0?Object(u.jsxs)("div",{children:[Object(u.jsx)(mt,{}),Object(u.jsx)(et,{data:s,series:b,metrics:n,limits:_}),Object(u.jsx)(tt,{labels:f,onChange:function(e,t){g(function(e){var t=e.hideSeries,n=e.legend,a=e.metaKey,r=e.series,c="".concat(n.group,".").concat(n.label),i=it(n.label,n.group,t),o=r.map((function(e){return"".concat(e.scale,".").concat(e.label)}));return a&&i?Object(Ue.a)(o.filter((function(e){return e!==c}))):a&&!i?t.length>=r.length-1?[]:Object(Ue.a)(o.filter((function(e){return e!==c}))):i?t.filter((function(e){return e!==c})):[].concat(Object(Ue.a)(t),[c])}({hideSeries:y,legend:e,metaKey:t,series:b}))}})]}):Object(u.jsx)("div",{style:{textAlign:"center"},children:"No data to show"})})},gt=n(338),St=n(339),Et=n(340),_t=n(341),Tt=n(342),wt=n(343),Ct=Object(he.a)({deemphasized:{opacity:.4}}),At=function(e){var t=e.data,n=Ct(),r=function(e){return Object(a.useMemo)((function(){var t={};return e.forEach((function(e){return Object.entries(e.metric).forEach((function(e){return t[e[0]]?t[e[0]].options.add(e[1]):t[e[0]]={options:new Set([e[1]])}}))})),Object.entries(t).map((function(e){return{key:e[0],variations:e[1].options.size}})).sort((function(e,t){return e.variations-t.variations}))}),[e])}(t),c=Object(a.useMemo)((function(){return null===t||void 0===t?void 0:t.map((function(e){return{metadata:r.map((function(t){return e.metric[t.key]||"-"})),value:e.value?e.value[1]:"-"}}))}),[r,t]);return Object(u.jsx)(u.Fragment,{children:c.length>0?Object(u.jsx)(gt.a,{component:pt.a,children:Object(u.jsxs)(St.a,{"aria-label":"simple table",children:[Object(u.jsx)(Et.a,{children:Object(u.jsxs)(_t.a,{children:[r.map((function(e,t){return Object(u.jsx)(Tt.a,{style:{textTransform:"capitalize"},children:e.key},t)})),Object(u.jsx)(Tt.a,{align:"right",children:"Value"})]})}),Object(u.jsx)(wt.a,{children:c.map((function(e,t){return Object(u.jsxs)(_t.a,{children:[e.metadata.map((function(e,a){var r=c[t-1]&&c[t-1].metadata[a];return Object(u.jsx)(Tt.a,{className:r===e?n.deemphasized:void 0,children:e},a)})),Object(u.jsx)(Tt.a,{align:"right",children:e.value})]},t)}))})]})}):Object(u.jsx)("div",{style:{textAlign:"center"},children:"No data to show"})})},Rt=n(321),It=n(350),kt=n(351),Ut=n(326),Mt=n(6),Ht=n(13),Dt=n(110),Nt=n(172),Lt=n(174);!function(e){e.emptyServer="Please enter Server URL",e.validServer="Please provide a valid Server URL",e.validQuery="Please enter a valid Query and execute it"}($e||($e={}));var Pt=function(e){var t=e.index,n=e.query,r=e.queryHistory,c=e.setHistoryIndex,i=e.setQuery,s=e.runQuery,l=e.server,d=e.oneLiner,j=void 0!==d&&d,b=e.autocomplete,p=e.error,O=Object(a.useRef)(null),h=Object(a.useState)(),f=Object(o.a)(h,2),x=f[0],v=f[1],m=Object(a.useState)(!1),y=Object(o.a)(m,2),g=y[0],S=y[1];Object(a.useEffect)((function(){return O.current&&v(new Ht.d({parent:O.current})),function(){return null===x||void 0===x?void 0:x.destroy()}}),[]),Object(a.useEffect)((function(){var e=new Nt.a;e.activateCompletion(b),e.setComplete({remote:{url:l}});var a=Ht.d.updateListener.of((function(e){e.focusChanged&&S((null===x||void 0===x?void 0:x.hasFocus)||!1),e.docChanged&&i(e.state.doc.toJSON().map((function(e){return e.trim()})).join(""),t)}));null===x||void 0===x||x.setState(Mt.f.create({doc:n,extensions:[Lt.a,Ht.k.of(Dt.a),a,e.asExtension()]}))}),[l,x,b,r]);return Object(u.jsxs)("div",{className:"query-editor-container \n    ".concat(g?"query-editor-container_focus":"","\n    query-editor-container-").concat(j?"one-line":"multi-line","\n    ").concat(p===$e.validQuery?"query-editor-container_error":""),children:[Object(u.jsx)("label",{className:"query-editor-label",children:"Query"}),Object(u.jsx)("div",{className:"query-editor",ref:O,onKeyUp:function(e){var n=e.key,a=e.ctrlKey,r=e.metaKey,i=a||r;"Enter"===n&&i?s():"ArrowUp"===n&&i?c(-1,t):"ArrowDown"===n&&i&&c(1,t)}})]})},qt=n(336),Yt=n(312),Bt=function(){return Object(u.jsx)(gt.a,{component:pt.a,children:Object(u.jsxs)(St.a,{"aria-label":"simple table",size:"small",children:[Object(u.jsx)(Et.a,{children:Object(u.jsxs)(_t.a,{children:[Object(u.jsx)(Tt.a,{children:"Long"}),Object(u.jsx)(Tt.a,{children:"Short"})]})}),Object(u.jsx)(wt.a,{children:q.map((function(e,t){return Object(u.jsxs)(_t.a,{children:[Object(u.jsx)(Tt.a,{component:"th",scope:"row",children:e.long}),Object(u.jsx)(Tt.a,{children:e.short})]},t)}))})]})})},Ft=Object(he.a)({inlineBtn:{"&:hover":{cursor:"pointer"}}}),Qt=function(e){var t=e.handler,n=e.text,a=Ft();return Object(u.jsx)(f.a,{component:"span",className:a.inlineBtn,onClick:t,children:n})},zt=Object(he.a)({container:{display:"grid",gridTemplateColumns:"auto auto",height:"100%",padding:"18px 14px",borderRadius:"4px",borderColor:"#b9b9b9",borderStyle:"solid",borderWidth:"1px"}}),Gt=function(e){var t=e.setDuration,n=zt(),c=Object(a.useState)(!1),i=Object(o.a)(c,2),s=i[0],l=i[1],d=r.a.useState(null),j=Object(o.a)(d,2),b=j[0],p=j[1],f=Object(a.useState)(),x=Object(o.a)(f,2),v=x[0],m=x[1],y=de().time,g=y.period.end,S=y.duration,E=je(),_=Object(a.useState)(S),w=Object(o.a)(_,2),A=w[0],R=w[1];Object(a.useEffect)((function(){R(S)}),[S]),Object(a.useEffect)((function(){m(function(e){return C()(e).format(P)}(W(g)))}),[g]),Object(a.useEffect)((function(){if(!s){var e=function(e){var t=e.trim().split(" ").reduce((function(e,t){var n=F(t);return n?Object(T.a)(Object(T.a)({},e),n):Object(T.a)({},e)}),{}),n=C.a.duration(t).asMilliseconds();return n<N?G(N):n>L?G(L):e}(A);R(e),t(e)}}),[A,s]);var I=function(){p(null)},k=Boolean(b);return Object(u.jsxs)(O.a,{className:n.container,children:[Object(u.jsxs)(O.a,{px:1,children:[Object(u.jsx)(O.a,{children:Object(u.jsx)(lt.a,{label:"Duration",value:A,onChange:function(e){R(e.target.value)},variant:"standard",fullWidth:!0,onKeyUp:function(e){if("Enter"===e.key){var t=e.target;t.blur(),R(t.value)}},onBlur:function(){l(!1)},onFocus:function(){l(!0)}})}),Object(u.jsx)(O.a,{mt:2,children:Object(u.jsxs)(h.a,{variant:"body2",children:[Object(u.jsx)("span",{"aria-owns":k?"mouse-over-popover":void 0,"aria-haspopup":"true",style:{cursor:"pointer"},onMouseEnter:function(e){p(e.currentTarget)},onMouseLeave:I,children:"Possible options:\xa0"}),Object(u.jsx)(qt.a,{open:k,anchorEl:b,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},style:{pointerEvents:"none"},onClose:I,disableRestoreFocus:!0,children:Object(u.jsx)(Bt,{})}),Object(u.jsx)(Qt,{handler:function(){return R("5m")},text:"5m"}),",\xa0",Object(u.jsx)(Qt,{handler:function(){return R("1h")},text:"1h"}),",\xa0",Object(u.jsx)(Qt,{handler:function(){return R("1h 30m")},text:"1h 30m"})]})})]}),Object(u.jsxs)(O.a,{px:1,children:[Object(u.jsx)(O.a,{children:Object(u.jsx)(Yt.a,{label:"Until",ampm:!1,value:v,onChange:function(e){return E({type:"SET_UNTIL",payload:e})},onError:console.log,inputFormat:"DD/MM/YYYY HH:mm:ss",mask:"__/__/____ __:__:__",renderInput:function(e){return Object(u.jsx)(lt.a,Object(T.a)(Object(T.a)({},e),{},{variant:"standard"}))}})}),Object(u.jsx)(O.a,{mt:2,children:Object(u.jsxs)(h.a,{variant:"body2",children:["Will be changed to current time for auto-refresh mode.\xa0",Object(u.jsx)(Qt,{handler:function(){return E({type:"RUN_QUERY_TO_NOW"})},text:"Switch to now"})]})})]})]})},Wt=n(162),Vt=n.n(Wt),Jt=n(164),Kt=n.n(Jt),Xt=n(165),Zt=n.n(Xt),$t=n(163),en=n.n($t),tn=n(302),nn=n(161),an=n.n(nn),rn=n(309),cn=n(307),on=n(347),sn=n(349),ln=n(316),un=n(345),dn=n(335),jn=n(322),bn=n(334),pn=n(346),On=n(320),hn=n(337),fn=n(348),xn=n(308),vn=["children","value","index"],mn=function(e){var t=e.children,n=e.value,a=e.index,r=Object(nt.a)(e,vn);return Object(u.jsx)("div",Object(T.a)(Object(T.a)({role:"tabpanel",hidden:n!==a,id:"auth-config-tabpanel-".concat(a),"aria-labelledby":"auth-config-tab-".concat(a)},r),{},{children:n===a&&Object(u.jsx)(O.a,{py:2,children:t})}))},yn=n(159),gn=n.n(yn),Sn=n(160),En=n.n(Sn),_n={authMethod:"NO_AUTH",saveAuthLocally:!1},Tn=J("AUTH_TYPE"),wn=J("BASIC_AUTH_DATA"),Cn=J("BEARER_AUTH_DATA"),An=Object(T.a)(Object(T.a)({},_n),{},{authMethod:Tn||_n.authMethod,basicData:wn,bearerData:Cn,saveAuthLocally:!(!wn&&!Cn)}),Rn=function(){K(X)};function In(e,t){switch(t.type){case"SET_BASIC_AUTH":return t.payload.checkbox?V("BASIC_AUTH_DATA",t.payload.value):Rn(),V("AUTH_TYPE","BASIC_AUTH"),Object(T.a)(Object(T.a)({},e),{},{authMethod:"BASIC_AUTH",basicData:t.payload.value});case"SET_BEARER_AUTH":return t.payload.checkbox?V("BEARER_AUTH_DATA",t.payload.value):Rn(),V("AUTH_TYPE","BEARER_AUTH"),Object(T.a)(Object(T.a)({},e),{},{authMethod:"BEARER_AUTH",bearerData:t.payload.value});case"SET_NO_AUTH":return!t.payload.checkbox&&Rn(),V("AUTH_TYPE","NO_AUTH"),Object(T.a)(Object(T.a)({},e),{},{authMethod:"NO_AUTH"});default:throw new Error}}var kn=Object(a.createContext)({}),Un=function(){return Object(a.useContext)(kn).state},Mn=function(e){var t=e.children,n=Object(a.useReducer)(In,An),r=Object(o.a)(n,2),c=r[0],i=r[1],s=Object(a.useMemo)((function(){return{state:c,dispatch:i}}),[c,i]);return Object(u.jsx)(kn.Provider,{value:s,children:t})},Hn=Object(he.a)((function(){return Object(xn.a)({tabsContent:{height:"200px"}})})),Dn="Bearer ",Nn=[{title:"No auth",id:"NO_AUTH"},{title:"Basic Auth",id:"BASIC_AUTH"},{title:"Bearer Token",id:"BEARER_AUTH"}],Ln=function(e){var t=Hn(),n=e.onClose,r=e.open,c=Un(),i=c.saveAuthLocally,s=c.basicData,l=c.bearerData,d=c.authMethod,j=Object(a.useContext)(kn).dispatch,b=Object(a.useState)(i),p=Object(o.a)(b,2),f=p[0],x=p[1],v=Object(a.useState)(s||{password:"",login:""}),y=Object(o.a)(v,2),g=y[0],S=y[1],E=Object(a.useState)((null===l||void 0===l?void 0:l.token)||Dn),_=Object(o.a)(E,2),w=_[0],C=_[1],A=Object(a.useState)(Nn.findIndex((function(e){return e.id===d}))||0),R=Object(o.a)(A,2),I=R[0],k=R[1],U=function(){n()};return Object(u.jsxs)(cn.a,{onClose:U,"aria-labelledby":"simple-dialog-title",open:r,children:[Object(u.jsx)(rn.a,{id:"simple-dialog-title",children:"Request Auth Settings"}),Object(u.jsxs)(on.a,{children:[Object(u.jsx)(sn.a,{children:"This affects Authorization header sent to the server you specify. Not shown in URL and can be optionally stored on a client side"}),Object(u.jsx)(ln.a,{value:I,onChange:function(e,t){k(t)},indicatorColor:"primary",textColor:"primary",children:Nn.map((function(e){return Object(u.jsx)(un.a,{label:e.title},e.id)}))}),Object(u.jsxs)(O.a,{p:0,display:"flex",flexDirection:"column",className:t.tabsContent,children:[Object(u.jsxs)(O.a,{flexGrow:1,children:[Object(u.jsx)(mn,{value:I,index:0,children:Object(u.jsx)(h.a,{style:{fontStyle:"italic"},children:"No Authorization Header"})}),Object(u.jsxs)(mn,{value:I,index:1,children:[Object(u.jsxs)(dn.a,{margin:"dense",fullWidth:!0,children:[Object(u.jsx)(jn.a,{htmlFor:"basic-login",children:"User"}),Object(u.jsx)(bn.a,{id:"basic-login",startAdornment:Object(u.jsx)(pn.a,{position:"start",children:Object(u.jsx)(gn.a,{})}),required:!0,onChange:function(e){return S((function(t){return Object(T.a)(Object(T.a)({},t),{},{login:e.target.value||""})}))},value:(null===g||void 0===g?void 0:g.login)||""})]}),Object(u.jsxs)(dn.a,{margin:"dense",fullWidth:!0,children:[Object(u.jsx)(jn.a,{htmlFor:"basic-pass",children:"Password"}),Object(u.jsx)(bn.a,{id:"basic-pass",startAdornment:Object(u.jsx)(pn.a,{position:"start",children:Object(u.jsx)(En.a,{})}),onChange:function(e){return S((function(t){return Object(T.a)(Object(T.a)({},t),{},{password:e.target.value||""})}))},value:(null===g||void 0===g?void 0:g.password)||""})]})]}),Object(u.jsx)(mn,{value:I,index:2,children:Object(u.jsx)(lt.a,{id:"bearer-auth",label:"Bearer token",multiline:!0,fullWidth:!0,value:w,onChange:function(e){var t=e.target.value;t.startsWith(Dn)?C(t):C(Dn)},InputProps:{onPaste:function(e){var t=e.clipboardData.getData("text/plain");t.startsWith(Dn)?C(t):C(Dn+t),e.preventDefault()}},maxRows:6})})]}),Object(u.jsxs)(dn.a,{children:[Object(u.jsx)(m.a,{control:Object(u.jsx)(On.a,{checked:f,onChange:function(){return x((function(e){return!e}))},name:"checkedB",color:"primary"}),label:"Persist Auth Data Locally"}),Object(u.jsx)(hn.a,{children:f?"Auth Data and the Selected method will be saved to LocalStorage":"Auth Data won't be saved. All previously saved Auth Data will be removed"})]})]})]}),Object(u.jsx)(fn.a,{children:Object(u.jsx)(bt.a,{onClick:function(){switch(I){case 0:j({type:"SET_NO_AUTH",payload:{checkbox:f}});break;case 1:j({type:"SET_BASIC_AUTH",payload:{checkbox:f,value:g}});break;case 2:j({type:"SET_BEARER_AUTH",payload:{checkbox:f,value:{token:w}}})}U()},color:"primary",children:"Apply"})})]})},Pn=function(){var e,t=(null===(e=document.getElementById("root"))||void 0===e?void 0:e.dataset.params)||"{}";return JSON.parse(t)},qn=function(){return!!Object.keys(Pn()).length},Yn=function(e){var t=e.error,n=qn(),r=Pn().serverURL,c=de().serverUrl,i=je(),s=Object(a.useState)(!1),l=Object(o.a)(s,2),d=l[0],j=l[1];return Object(a.useEffect)((function(){n&&i({type:"SET_SERVER",payload:r})}),[r]),Object(u.jsxs)(u.Fragment,{children:[Object(u.jsxs)(O.a,{display:"grid",gridTemplateColumns:"1fr auto",gap:"4px",alignItems:"center",width:"100%",mb:2,minHeight:50,children:[Object(u.jsx)(lt.a,{variant:"outlined",fullWidth:!0,label:"Server URL",value:c||"",disabled:n,error:t===$e.validServer||t===$e.emptyServer,inputProps:{style:{fontFamily:"Monospace"}},onChange:function(e){var t=e.target.value;i({type:"SET_SERVER",payload:t})}}),Object(u.jsx)(O.a,{children:Object(u.jsx)(y.a,{title:"Request Auth Settings",children:Object(u.jsx)(g.a,{onClick:function(){return j(!0)},children:Object(u.jsx)(an.a,{})})})})]}),Object(u.jsx)(Ln,{open:d,onClose:function(){return j(!1)}})]})},Bn=function(){var e=Pe().customStep,t=qe(),n=Object(a.useState)(!1),r=Object(o.a)(n,2),c=r[0],i=r[1],s=de().time,l=s.period.step,d=s.duration,j=Object(a.useCallback)(dt()((function(e){var n=+e.target.value;n>0?(t({type:"SET_CUSTOM_STEP",payload:n}),i(!1)):i(!0)}),500),[e.value]),b=function(){i(!1),t({type:"TOGGLE_CUSTOM_STEP"})};return Object(a.useEffect)((function(){e.enable&&b()}),[d]),Object(a.useEffect)((function(){e.enable||t({type:"SET_CUSTOM_STEP",payload:l||1})}),[l]),Object(u.jsxs)(O.a,{display:"grid",gridTemplateColumns:"auto 120px",alignItems:"center",children:[Object(u.jsx)(m.a,{control:Object(u.jsx)(ve,{checked:e.enable,onChange:b}),label:"Override step value"}),e.enable&&Object(u.jsx)(lt.a,{label:"Step value",type:"number",size:"small",variant:"outlined",defaultValue:e.value,error:c,helperText:c?"step is out of allowed range":" ",onChange:j})]})},Fn=function(){var e=de().queryControls,t=e.autocomplete,n=e.nocache,a=je();return Object(u.jsxs)(O.a,{display:"flex",alignItems:"center",children:[Object(u.jsx)(O.a,{children:Object(u.jsx)(m.a,{label:"Enable autocomplete",control:Object(u.jsx)(ve,{checked:t,onChange:function(){a({type:"TOGGLE_AUTOCOMPLETE"}),V("AUTOCOMPLETE",!t)}})})}),Object(u.jsx)(O.a,{ml:2,children:Object(u.jsx)(m.a,{label:"Enable cache",control:Object(u.jsx)(ve,{checked:!n,onChange:function(){a({type:"NO_CACHE"}),V("NO_CACHE",!n)}})})}),Object(u.jsx)(O.a,{ml:2,children:Object(u.jsx)(Bn,{})})]})},Qn=function(e){var t=e.error,n=de(),r=n.serverUrl,c=n.query,i=n.queryHistory,s=n.time.duration,l=n.queryControls.autocomplete,d=je(),j=Object(a.useState)(!0),b=Object(o.a)(j,2),p=b[0],f=b[1],x=Object(a.useRef)(null),v=Object(a.useRef)(c);Object(a.useEffect)((function(){v.current=c}),[c]);var m=function(){d({type:"SET_QUERY_HISTORY",payload:c.map((function(e,t){var n=i[t]||{values:[]},a=e===n.values[n.values.length-1];return{index:n.values.length-Number(a),values:!a&&e?[].concat(Object(Ue.a)(n.values),[e]):n.values}}))}),d({type:"SET_QUERY",payload:c}),d({type:"RUN_QUERY"})},S=function(e,t){var n=Object(Ue.a)(v.current);n[t]=e,d({type:"SET_QUERY",payload:n})},E=function(e,t){var n=i[t],a=n.index,r=n.values,c=a+e;c<0||c>=r.length||(S(r[c]||"",t),d({type:"SET_QUERY_HISTORY_BY_INDEX",payload:{value:{values:r,index:c},queryNumber:t}}))};return Object(u.jsx)(u.Fragment,{children:Object(u.jsxs)(Rt.a,{expanded:p,onChange:function(){return f((function(e){return!e}))},children:[Object(u.jsxs)(It.a,{expandIcon:Object(u.jsx)(g.a,{children:Object(u.jsx)(Vt.a,{})}),"aria-controls":"panel1a-content",id:"panel1a-header",sx:{alignItems:"flex-start",padding:"15px"},children:[Object(u.jsx)(O.a,{mr:2,children:Object(u.jsx)(h.a,{variant:"h6",component:"h2",children:"Query Configuration"})}),Object(u.jsx)(O.a,{flexGrow:1,onClick:function(e){return e.stopPropagation()},onFocusCapture:function(e){return e.stopPropagation()},children:Object(u.jsx)(tn.a,{disablePortal:!p,container:x.current,children:c.map((function(e,n){return Object(u.jsxs)(O.a,{display:"grid",gridTemplateColumns:"1fr auto",gap:"4px",width:"100%",mb:n===c.length-1?0:2,children:[Object(u.jsx)(Pt,{server:r,query:c[n],index:n,oneLiner:!p,autocomplete:l,queryHistory:i[n],error:t,setHistoryIndex:E,runQuery:m,setQuery:S}),0===n&&Object(u.jsx)(y.a,{title:"Execute Query",children:Object(u.jsx)(g.a,{onClick:m,children:Object(u.jsx)(en.a,{})})}),n>0&&Object(u.jsx)(y.a,{title:"Remove Query",children:Object(u.jsx)(g.a,{onClick:function(){return function(e){var t=Object(Ue.a)(v.current);t.splice(e,1),d({type:"SET_QUERY",payload:t})}(n)},children:Object(u.jsx)(Kt.a,{})})})]},n)}))})})]}),Object(u.jsx)(kt.a,{children:Object(u.jsxs)(Ut.a,{container:!0,columnSpacing:2,children:[Object(u.jsxs)(Ut.a,{item:!0,xs:6,minWidth:400,children:[Object(u.jsx)(Yn,{error:t}),Object(u.jsx)("div",{ref:x}),c.length<2&&Object(u.jsx)(O.a,{display:"inline-block",minHeight:"40px",mt:2,children:Object(u.jsxs)(bt.a,{onClick:function(){return d({type:"SET_QUERY",payload:[].concat(Object(Ue.a)(v.current),[""])})},variant:"outlined",children:[Object(u.jsx)(Zt.a,{sx:{fontSize:16,marginRight:"4px"}}),Object(u.jsx)("span",{style:{lineHeight:1,paddingTop:"1px"},children:"Query"})]})})]}),Object(u.jsx)(Ut.a,{item:!0,xs:!0,children:Object(u.jsx)(Gt,{setDuration:function(e){return d({type:"SET_DURATION",payload:e})},duration:s})}),Object(u.jsx)(Ut.a,{item:!0,xs:12,pt:1,children:Object(u.jsx)(Fn,{})})]})})]})})},zn=n(81),Gn=n.n(zn),Wn=n(166),Vn=n(167),Jn=qn(),Kn=Pn().serverURL,Xn=function(){var e=de(),t=e.query,n=e.displayType,r=e.serverUrl,c=e.time.period,i=e.queryControls.nocache,s=Un(),l=s.basicData,u=s.bearerData,d=s.authMethod,j=Pe().customStep,b=Object(a.useState)(!1),p=Object(o.a)(b,2),O=p[0],h=p[1],f=Object(a.useState)(),x=Object(o.a)(f,2),v=x[0],m=x[1],y=Object(a.useState)(),g=Object(o.a)(y,2),S=g[0],E=g[1],_=Object(a.useState)(),w=Object(o.a)(_,2),C=w[0],A=w[1],R=Object(a.useState)(),I=Object(o.a)(R,2),k=I[0],U=I[1];Object(a.useEffect)((function(){C&&(m(void 0),E(void 0))}),[C]);var M=Object(a.useMemo)((function(){if(!k)return!0;var e=(k.end-k.start)/3,t=e/(c.end-c.start)>=.7,n=c.end>k.end+e,a=c.start<k.start-e;return t||n||a}),[c]),H=function(){var e=Object(Wn.a)(Gn.a.mark((function e(){var t,a,r,i,o,s;return Gn.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null===D||void 0===D?void 0:D.length){e.next=2;break}return e.abrupt("return");case 2:return h(!0),U(c),t=new Headers,"BASIC_AUTH"===d&&t.set("Authorization","Basic "+btoa("".concat((null===l||void 0===l?void 0:l.login)||"",":").concat((null===l||void 0===l?void 0:l.password)||""))),"BEARER_AUTH"===d&&t.set("Authorization",(null===u||void 0===u?void 0:u.token)||""),e.prev=7,e.delegateYield(Gn.a.mark((function e(){var c,l,u,d,j;return Gn.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Promise.all(D.map((function(e){return fetch(e,{headers:t})})));case 2:c=e.sent,l=[],u=1,a=!1,r=!1,e.prev=7,o=Object(Vn.a)(c);case 9:return e.next=11,o.next();case 11:if(!(a=!(s=e.sent).done)){e.next=20;break}return d=s.value,e.next=15,d.json();case 15:j=e.sent,d.ok?(A(void 0),l.push.apply(l,Object(Ue.a)(j.data.result.map((function(e){return e.group=u,e})))),u++):A("".concat(j.errorType,"\r\n").concat(null===j||void 0===j?void 0:j.error));case 17:a=!1,e.next=9;break;case 20:e.next=26;break;case 22:e.prev=22,e.t0=e.catch(7),r=!0,i=e.t0;case 26:if(e.prev=26,e.prev=27,!a||null==o.return){e.next=31;break}return e.next=31,o.return();case 31:if(e.prev=31,!r){e.next=34;break}throw i;case 34:return e.finish(31);case 35:return e.finish(26);case 36:"chart"===n?m(l):E(l);case 37:case"end":return e.stop()}}),e,null,[[7,22,26,36],[27,,31,35]])}))(),"t0",9);case 9:e.next=14;break;case 11:e.prev=11,e.t1=e.catch(7),e.t1 instanceof Error&&A("".concat(e.t1.name,": ").concat(e.t1.message));case 14:h(!1);case 15:case"end":return e.stop()}}),e,null,[[7,11]])})));return function(){return e.apply(this,arguments)}}(),D=Object(a.useMemo)((function(){var e=Jn?Kn:r;if(c)if(e)if(t.every((function(e){return!e.trim()})))A($e.validQuery);else{if(function(e){var t;try{t=new URL(e)}catch(n){return!1}return"http:"===t.protocol||"https:"===t.protocol}(e)){var a=(c.end-c.start)/2,o=Object(T.a)(Object(T.a)({},c),{},{start:c.start-a,end:c.end+a});return j.enable&&(o.step=j.value),t.filter((function(e){return e.trim()})).map((function(t){return"chart"===n?function(e,t,n,a){return"".concat(e,"/api/v1/query_range?query=").concat(encodeURIComponent(t),"&start=").concat(n.start,"&end=").concat(n.end,"&step=").concat(n.step).concat(a?"&nocache=1":"")}(e,t,o,i):function(e,t,n){return"".concat(e,"/api/v1/query?query=").concat(encodeURIComponent(t),"&start=").concat(n.start,"&end=").concat(n.end,"&step=").concat(n.step)}(e,t,c)}))}A($e.validServer)}else A($e.emptyServer)}),[r,c,n,j]);return Object(a.useEffect)((function(){U(void 0)}),[t]),Object(a.useEffect)((function(){H()}),[r,n,j]),Object(a.useEffect)((function(){M&&H()}),[c]),{fetchUrl:D,isLoading:O,graphData:v,liveData:S,error:C}},Zn=function(e){var t=e.data,n=Object(a.useContext)(d).showInfoMessage,r=Object(a.useMemo)((function(){return JSON.stringify(t,null,2)}),[t]);return Object(u.jsxs)(O.a,{position:"relative",children:[Object(u.jsx)(O.a,{flexDirection:"column",justifyContent:"flex-end",display:"flex",style:{position:"fixed",right:"16px"},children:Object(u.jsx)(bt.a,{variant:"outlined",onClick:function(e){navigator.clipboard.writeText(r),n("Formatted JSON has been copied"),e.preventDefault()},children:"Copy JSON"})}),Object(u.jsx)("pre",{children:r})]})},$n=function(){var e=de(),t=e.displayType,n=e.time.period,a=Xn(),r=a.isLoading,c=a.liveData,i=a.graphData,o=a.error;return Object(u.jsxs)(u.Fragment,{children:[Object(u.jsx)(b.a,{position:"static",children:Object(u.jsxs)(p.a,{children:[Object(u.jsxs)(O.a,{display:"flex",children:[Object(u.jsxs)(h.a,{variant:"h5",children:[Object(u.jsx)("span",{style:{fontWeight:"bolder"},children:"VM"}),Object(u.jsx)("span",{style:{fontWeight:"lighter"},children:"UI"})]}),Object(u.jsx)("div",{style:{fontSize:"10px",marginTop:"-2px"},children:Object(u.jsx)("div",{children:"BETA"})})]}),Object(u.jsx)("div",{style:{fontSize:"10px",position:"absolute",top:"40px",opacity:".4"},children:Object(u.jsx)(f.a,{color:"inherit",href:"https://github.com/VictoriaMetrics/VictoriaMetrics/issues/new",target:"_blank",children:"Create an issue"})}),Object(u.jsx)(O.a,{ml:4,flexGrow:1,children:Object(u.jsx)(ye,{})}),Object(u.jsx)(ke,{})]})}),Object(u.jsxs)(O.a,{p:4,display:"grid",gridTemplateRows:"auto 1fr",gap:"20px",style:{minHeight:"calc(100vh - 64px)"},children:[Object(u.jsx)(O.a,{children:Object(u.jsx)(Qn,{error:o})}),Object(u.jsxs)(O.a,{height:"100%",children:[r&&Object(u.jsx)(x.a,{in:r,style:{transitionDelay:r?"300ms":"0ms"},children:Object(u.jsx)(O.a,{alignItems:"center",justifyContent:"center",flexDirection:"column",display:"flex",style:{width:"100%",maxWidth:"calc(100vw - 32px)",position:"absolute",height:"50%",background:"linear-gradient(rgba(255,255,255,.7), rgba(255,255,255,.7), rgba(255,255,255,0))"},children:Object(u.jsx)(v.a,{})})}),Object(u.jsxs)(O.a,{height:"100%",bgcolor:"#fff",children:[o&&Object(u.jsx)(l.a,{color:"error",severity:"error",style:{fontSize:"14px",whiteSpace:"pre-wrap"},children:o}),i&&n&&"chart"===t&&Object(u.jsx)(yt,{data:i}),c&&"code"===t&&Object(u.jsx)(Zn,{data:c}),c&&"table"===t&&Object(u.jsx)(At,{data:c})]})]})]})]})},ea=n(311),ta=n(354),na=n(173),aa=Object(na.a)({palette:{primary:{main:"#3F51B5"},secondary:{main:"#F50057"},error:{main:"#FF4141"}},components:{MuiFormHelperText:{styleOverrides:{root:{position:"absolute",top:"36px",left:"2px",margin:0}}},MuiInputLabel:{styleOverrides:{root:{fontSize:"12px",letterSpacing:"normal",lineHeight:"1"}}},MuiInputBase:{styleOverrides:{root:{"&.Mui-focused fieldset":{borderWidth:"1px !important"}}}},MuiSwitch:{defaultProps:{color:"secondary"}},MuiAccordion:{styleOverrides:{root:{boxShadow:"rgba(0, 0, 0, 0.16) 0px 1px 4px;"}}},MuiPaper:{styleOverrides:{elevation3:{boxShadow:"rgba(0, 0, 0, 0.2) 0px 3px 8px;"}}},MuiIconButton:{defaultProps:{size:"large"},styleOverrides:{sizeLarge:{borderRadius:"20%",height:"40px",width:"41px"},sizeMedium:{borderRadius:"20%"},sizeSmall:{borderRadius:"20%"}}}},typography:{fontSize:10}}),ra=n(310),ca=n(306),ia=n(168),oa=function(){return Object(u.jsxs)(u.Fragment,{children:[Object(u.jsx)(ra.a,{})," ",Object(u.jsxs)(ca.b,{dateAdapter:ia.a,children:[" ",Object(u.jsx)(ea.a,{injectFirst:!0,children:Object(u.jsxs)(ta.a,{theme:aa,children:["  ",Object(u.jsxs)(pe,{children:[" ",Object(u.jsxs)(Mn,{children:[" ",Object(u.jsxs)(Ye,{children:[" ",Object(u.jsxs)(j,{children:[" ",Object(u.jsx)($n,{})]})]})]})]})]})})]})]})},sa=function(e){e&&e instanceof Function&&n.e(3).then(n.bind(null,356)).then((function(t){var n=t.getCLS,a=t.getFID,r=t.getFCP,c=t.getLCP,i=t.getTTFB;n(e),a(e),r(e),c(e),i(e)}))};i.a.render(Object(u.jsx)(r.a.StrictMode,{children:Object(u.jsx)(oa,{})}),document.getElementById("root")),sa()}},[[234,1,2]]]);
\ No newline at end of file
diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md
index 0b00f76e7..0956c478c 100644
--- a/docs/CHANGELOG.md
+++ b/docs/CHANGELOG.md
@@ -24,6 +24,7 @@ sort: 15
 * BUGFIX: [vmui](https://docs.victoriametrics.com/#vmui): fix navigation over query history with `Ctrl+up/down` and fix zoom relatively to the cursor position. See [this pull request](https://github.com/VictoriaMetrics/VictoriaMetrics/pull/1936).
 * BUGFIX: deduplicate samples more thoroughly if [deduplication](https://docs.victoriametrics.com/#deduplication) is enabled. Previously some duplicate samples may be left on disk for time series with high churn rate. This may result in bigger storage space requirements.
 * BUGFIX: [vmagent](https://docs.victoriametrics.com/vmagent.html): follow up to 5 redirects when `follow_redirects: true` is set for a particular scrape config. Previously only a single redirect was performed in this case. It is expected these redirects are performed to the original hostname. See [this issue](https://github.com/VictoriaMetrics/VictoriaMetrics/issues/1945).
+* BUGFIX: de-duplicate data exported via [/api/v1/export/csv](https://docs.victoriametrics.com/#how-to-export-csv-data) by default if [deduplication](https://docs.victoriametrics.com/#deduplication) is enabled. The de-duplication can be disabled by passing `reduce_mem_usage=1` query arg to `/api/v1/export/csv`. See [this issue](https://github.com/VictoriaMetrics/VictoriaMetrics/issues/1837).
 
 
 ## [v1.70.0](https://github.com/VictoriaMetrics/VictoriaMetrics/releases/tag/v1.70.0)
diff --git a/docs/MetricsQL.md b/docs/MetricsQL.md
index d84808b8b..dc3912cb6 100644
--- a/docs/MetricsQL.md
+++ b/docs/MetricsQL.md
@@ -918,11 +918,11 @@ See also [implicit query conversions](#implicit-query-conversions).
 
 ## Subqueries
 
-MetricsQL supports and extends PromQL subqueries. See [this article](https://valyala.medium.com/prometheus-subqueries-in-victoriametrics-9b1492b720b3) for details. Any nested [rollup functions](#rollup-functions) form a subquery. Nested rollup functions can be implicit thanks to the [implicit query conversions](#implicit-query-conversions). For example, `delta(sum(m))` is implicitly converted to `delta(sum(default_rollup(m[1i]))[1i:1i])`, so it becomes a subquery, since it contains [default_rollup](#default_rollup) nested into [delta](#delta).
+MetricsQL supports and extends PromQL subqueries. See [this article](https://valyala.medium.com/prometheus-subqueries-in-victoriametrics-9b1492b720b3) for details. Any [rollup function](#rollup-functions) for something other than [series selector](https://prometheus.io/docs/prometheus/latest/querying/basics/#time-series-selectors) form a subquery. Nested rollup functions can be implicit thanks to the [implicit query conversions](#implicit-query-conversions). For example, `delta(sum(m))` is implicitly converted to `delta(sum(default_rollup(m[1i]))[1i:1i])`, so it becomes a subquery, since it contains [default_rollup](#default_rollup) nested into [delta](#delta).
 
 VictoriaMetrics performs subqueries in the following way:
 
-* It calculates the inner rollup function using the `step` value from the outer rollup function. For example, if `max_over_time(rate(http_requests_total[5m])[1h:30s])` is executed, then the `rate(http_requests_total[5m])` is calculated with the `step` equal to `30s`. The resulting data points are algined by the `step`.
+* It calculates the inner rollup function using the `step` value from the outer rollup function. For example, for expression `max_over_time(rate(http_requests_total[5m])[1h:30s])` the inner function `rate(http_requests_total[5m])` is calculated with `step=30s`. The resulting data points are aligned by the `step`.
 * It calculates the outer rollup function over the results of the inner rollup function using the `step` value passed by Grafana to [/api/v1/query_range](https://prometheus.io/docs/prometheus/latest/querying/api/#range-queries).
 
 
diff --git a/docs/README.md b/docs/README.md
index dbcceeef8..5a444567c 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -837,7 +837,7 @@ unix timestamp in seconds or [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) val
 
 The exported CSV data can be imported to VictoriaMetrics via [/api/v1/import/csv](#how-to-import-csv-data).
 
-The [deduplication](#deduplication) isn't applied for the data exported in CSV. It is expected that the de-duplication is performed during data import.
+The [deduplication](#deduplication) is applied for the data exported in CSV by default. It is possible to export raw data without de-duplication by passing `reduce_mem_usage=1` query arg to `/api/v1/export/csv`.
 
 
 ### How to export data in native format
@@ -1441,6 +1441,18 @@ We also provide [vmbackupmanager](https://docs.victoriametrics.com/vmbackupmanag
 Enterprise binaries can be downloaded and evaluated for free from [the releases page](https://github.com/VictoriaMetrics/VictoriaMetrics/releases).
 
 
+## Benchmarks
+
+Note, that vendors (including VictoriaMetrics) are often biased when doing such tests. E.g. they try highlighting 
+the best parts of their product, while highlighting the worst parts of competing products. 
+So we encourage users and all independent third parties to conduct their becnhmarks for various products 
+they are evaluating in production and publish the results.
+
+As a reference, please see [benchmarks](https://docs.victoriametrics.com/Articles.html#benchmarks) conducted by
+VictoriaMetrics team. Please also see the [helm chart](https://github.com/VictoriaMetrics/benchmark) 
+for running ingestion benchmarks based on node_exporter metrics.
+
+
 ## Profiling
 
 VictoriaMetrics provides handlers for collecting the following [Go profiles](https://blog.golang.org/profiling-go-programs):
diff --git a/docs/Single-server-VictoriaMetrics.md b/docs/Single-server-VictoriaMetrics.md
index d8892cfbf..148728d92 100644
--- a/docs/Single-server-VictoriaMetrics.md
+++ b/docs/Single-server-VictoriaMetrics.md
@@ -841,7 +841,7 @@ unix timestamp in seconds or [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) val
 
 The exported CSV data can be imported to VictoriaMetrics via [/api/v1/import/csv](#how-to-import-csv-data).
 
-The [deduplication](#deduplication) isn't applied for the data exported in CSV. It is expected that the de-duplication is performed during data import.
+The [deduplication](#deduplication) is applied for the data exported in CSV by default. It is possible to export raw data without de-duplication by passing `reduce_mem_usage=1` query arg to `/api/v1/export/csv`.
 
 
 ### How to export data in native format
@@ -1445,6 +1445,18 @@ We also provide [vmbackupmanager](https://docs.victoriametrics.com/vmbackupmanag
 Enterprise binaries can be downloaded and evaluated for free from [the releases page](https://github.com/VictoriaMetrics/VictoriaMetrics/releases).
 
 
+## Benchmarks
+
+Note, that vendors (including VictoriaMetrics) are often biased when doing such tests. E.g. they try highlighting 
+the best parts of their product, while highlighting the worst parts of competing products. 
+So we encourage users and all independent third parties to conduct their becnhmarks for various products 
+they are evaluating in production and publish the results.
+
+As a reference, please see [benchmarks](https://docs.victoriametrics.com/Articles.html#benchmarks) conducted by
+VictoriaMetrics team. Please also see the [helm chart](https://github.com/VictoriaMetrics/benchmark) 
+for running ingestion benchmarks based on node_exporter metrics.
+
+
 ## Profiling
 
 VictoriaMetrics provides handlers for collecting the following [Go profiles](https://blog.golang.org/profiling-go-programs):


Test patch:
diff --git a/app/vmalert/datasource/vm_test.go b/app/vmalert/datasource/vm_test.go
index 068cb6277..81e12b2f6 100644
--- a/app/vmalert/datasource/vm_test.go
+++ b/app/vmalert/datasource/vm_test.go
@@ -436,7 +436,20 @@ func TestRequestParams(t *testing.T) {
 				queryStep: time.Minute,
 			},
 			func(t *testing.T, r *http.Request) {
-				exp := fmt.Sprintf("query=%s&step=%v&time=%d", query, time.Minute, timestamp.Unix())
+				exp := fmt.Sprintf("query=%s&step=%ds&time=%d", query, int(time.Minute.Seconds()), timestamp.Unix())
+				checkEqualString(t, exp, r.URL.RawQuery)
+			},
+		},
+		{
+			"step to seconds",
+			false,
+			&VMStorage{
+				evaluationInterval: 3 * time.Hour,
+			},
+			func(t *testing.T, r *http.Request) {
+				evalInterval := 3 * time.Hour
+				tt := timestamp.Truncate(evalInterval)
+				exp := fmt.Sprintf("query=%s&step=%ds&time=%d", query, int(evalInterval.Seconds()), tt.Unix())
 				checkEqualString(t, exp, r.URL.RawQuery)
 			},
 		},