";return t?Promise.resolve(i):n?void n(null,i):i}if(t)return Promise.reject(r);if(!n)throw r;n(r)}}var Uf=new Hf(rf);function Vf(e,t,n){return Uf.parse(e,t,n)}Vf.options=Vf.setOptions=function(e){return Uf.setOptions(e),Vf.defaults=Uf.defaults,af(Vf.defaults),Vf},Vf.getDefaults=nf,Vf.defaults=rf,Vf.use=function(){return Uf.use.apply(Uf,arguments),Vf.defaults=Uf.defaults,af(Vf.defaults),Vf},Vf.walkTokens=function(e,t){return Uf.walkTokens(e,t)},Vf.parseInline=Uf.parseInline,Vf.Parser=Rf,Vf.parser=Rf.parse,Vf.Renderer=Pf,Vf.TextRenderer=If,Vf.Lexer=Of,Vf.lexer=Of.lex,Vf.Tokenizer=Af,Vf.Slugger=Lf,Vf.Hooks=Bf,Vf.parse=Vf;Vf.options,Vf.setOptions,Vf.use,Vf.walkTokens,Vf.parseInline,Rf.parse,Of.lex;var qf=function(e){var t=e.title,n=e.description,i=e.unit,a=e.expr,o=e.showLegend,u=e.filename,l=e.alias,c=Xr().isMobile,s=Tn().period,f=Qr().customStep,d=On(),h=(0,r.useRef)(null),m=v((0,r.useState)(!1),2),p=m[0],g=m[1],y=v((0,r.useState)({limits:{enable:!1,range:{1:[0,0]}}}),2),_=y[0],b=y[1],w=(0,r.useMemo)((function(){return Array.isArray(a)&&a.every((function(e){return e}))}),[a]),D=Fs({predefinedQuery:w?a:[],display:"chart",visible:p,customStep:f}),k=D.isLoading,x=D.graphData,C=D.error,S=D.warning,E=function(e){var t=st({},_);t.limits.range=e,b(t)};return(0,r.useEffect)((function(){var e=new IntersectionObserver((function(e){e.forEach((function(e){return g(e.isIntersecting)}))}),{threshold:.1});return h.current&&e.observe(h.current),function(){h.current&&e.unobserve(h.current)}}),[h]),w?Yt("div",{className:"vm-predefined-panel",ref:h,children:[Yt("div",{className:"vm-predefined-panel-header",children:[Yt(yi,{title:Yt((function(){return Yt("div",{className:"vm-predefined-panel-header__description vm-default-styles",children:[n&&Yt(Ht.HY,{children:[Yt("div",{children:[Yt("span",{children:"Description:"}),Yt("div",{dangerouslySetInnerHTML:{__html:Vf.parse(n)}})]}),Yt("hr",{})]}),Yt("div",{children:[Yt("span",{children:"Queries:"}),Yt("div",{children:a.map((function(e,t){return Yt("div",{children:e},"".concat(t,"_").concat(e))}))})]})]})}),{}),children:Yt("div",{className:"vm-predefined-panel-header__info",children:Yt(qn,{})})}),Yt("h3",{className:"vm-predefined-panel-header__title",children:t||""}),Yt(Is,{yaxis:_,setYaxisLimits:E,toggleEnableLimits:function(){var e=st({},_);e.limits.enable=!e.limits.enable,b(e)}})]}),Yt("div",{className:"vm-predefined-panel-body",children:[k&&Yt(Ls,{}),C&&Yt(ti,{variant:"error",children:C}),S&&Yt(ti,{variant:"warning",children:S}),x&&Yt(ms,{data:x,period:s,customStep:f,query:a,yaxis:_,unit:i,alias:l,showLegend:o,setYaxisLimits:E,setPeriod:function(e){var t=e.from,n=e.to;d({type:"SET_PERIOD",payload:{from:t,to:n}})},fullWidth:!1,height:c?.5*window.innerHeight:500})]})]}):Yt(ti,{variant:"error",children:[Yt("code",{children:'"expr"'})," not found. Check the configuration file ",Yt("b",{children:u}),"."]})},Wf=function(e){var t=e.index,n=e.title,i=e.panels,a=e.filename,o=Pr(),u=(0,r.useMemo)((function(){return o.width/12}),[o]),l=v((0,r.useState)(!t),2),c=l[0],s=l[1],f=v((0,r.useState)([]),2),d=f[0],h=f[1];(0,r.useEffect)((function(){h(i&&i.map((function(e){return e.width||12})))}),[i]);var m=v((0,r.useState)({start:0,target:0,enable:!1}),2),p=m[0],g=m[1],y=(0,r.useCallback)((function(e){if(p.enable){var t=p.start,n=Math.ceil((t-e.clientX)/u);if(!(Math.abs(n)>=12)){var r=d.map((function(e,t){return e-(t===p.target?n:0)}));h(r)}}}),[p,u]),_=(0,r.useCallback)((function(){g(st(st({},p),{},{enable:!1}))}),[p]),b=function(e){return function(t){!function(e,t){g({start:e.clientX,target:t,enable:!0})}(t,e)}};return Or("mousemove",y),Or("mouseup",_),Yt("div",{className:"vm-predefined-dashboard",children:Yt(ga,{defaultExpanded:c,onChange:function(e){return s(e)},title:Yt((function(){return Yt("div",{className:Er()({"vm-predefined-dashboard-header":!0,"vm-predefined-dashboard-header_open":c}),children:[(n||a)&&Yt("span",{className:"vm-predefined-dashboard-header__title",children:n||"".concat(t+1,". ").concat(a)}),i&&Yt("span",{className:"vm-predefined-dashboard-header__count",children:["(",i.length," panels)"]})]})}),{}),children:Yt("div",{className:"vm-predefined-dashboard-panels",children:Array.isArray(i)&&i.length?i.map((function(e,t){return Yt("div",{className:"vm-predefined-dashboard-panels-panel vm-block vm-block_empty-padding",style:{gridColumn:"span ".concat(d[t])},children:[Yt(qf,{title:e.title,description:e.description,unit:e.unit,expr:e.expr,alias:e.alias,filename:a,showLegend:e.showLegend}),Yt("button",{className:"vm-predefined-dashboard-panels-panel__resizer",onMouseDown:b(t),"aria-label":"resize the panel"})]},t)})):Yt("div",{className:"vm-predefined-dashboard-panels-panel__alert",children:Yt(ti,{variant:"error",children:[Yt("code",{children:'"panels"'})," not found. Check the configuration file ",Yt("b",{children:a}),"."]})})})})})},Zf=function(){!function(){var e=Tn(),t=e.duration,n=e.relativeTime,i=e.period.date,a=Qr().customStep,o=ca().setSearchParamsFromKeys,u=function(){var e,r=Us((lt(e={},"g0.range_input",t),lt(e,"g0.end_input",i),lt(e,"g0.step_input",a),lt(e,"g0.relative_time",n),e));o(r)};(0,r.useEffect)(u,[t,n,i,a]),(0,r.useEffect)(u,[])}();var e=Xr().isMobile,t=oi(),n=t.dashboardsSettings,i=t.dashboardsLoading,a=t.dashboardsError,o=v((0,r.useState)(0),2),u=o[0],l=o[1],c=(0,r.useMemo)((function(){return n.map((function(e,t){return{label:e.title||"",value:t}}))}),[n]),s=(0,r.useMemo)((function(){return n[u]||{}}),[n,u]),f=(0,r.useMemo)((function(){return null===s||void 0===s?void 0:s.rows}),[s]),d=(0,r.useMemo)((function(){return s.title||s.filename||""}),[s]),h=(0,r.useMemo)((function(){return Array.isArray(f)&&!!f.length}),[f]),m=function(e){return function(){!function(e){l(e)}(e)}};return Yt("div",{className:"vm-predefined-panels",children:[i&&Yt(Ls,{}),!n.length&&a&&Yt(ti,{variant:"error",children:a}),!n.length&&Yt(ti,{variant:"info",children:"Dashboards not found"}),c.length>1&&Yt("div",{className:Er()({"vm-predefined-panels-tabs":!0,"vm-predefined-panels-tabs_mobile":e}),children:c.map((function(e){return Yt("div",{className:Er()({"vm-predefined-panels-tabs__tab":!0,"vm-predefined-panels-tabs__tab_active":e.value==u}),onClick:m(e.value),children:e.label},e.value)}))}),Yt("div",{className:"vm-predefined-panels__dashboards",children:[h&&f.map((function(e,t){return Yt(Wf,{index:t,filename:d,title:e.title,panels:e.panels},"".concat(u,"_").concat(t))})),!!n.length&&!h&&Yt(ti,{variant:"error",children:[Yt("code",{children:'"rows"'})," not found. Check the configuration file ",Yt("b",{children:d}),"."]})]})]})},Qf=function(e,t){var n=t.match?"&match[]="+encodeURIComponent(t.match):"",r=t.focusLabel?"&focusLabel="+encodeURIComponent(t.focusLabel):"";return"".concat(e,"/api/v1/status/tsdb?topN=").concat(t.topN,"&date=").concat(t.date).concat(n).concat(r)},Gf=function(){function e(){b(this,e),this.tsdbStatus=void 0,this.tabsNames=void 0,this.isPrometheus=void 0,this.tsdbStatus=this.defaultTSDBStatus,this.tabsNames=["table","graph"],this.isPrometheus=!1,this.getDefaultState=this.getDefaultState.bind(this)}return x(e,[{key:"tsdbStatusData",get:function(){return this.tsdbStatus},set:function(e){this.isPrometheus=!(null===e||void 0===e||!e.headStats),this.tsdbStatus=e}},{key:"defaultTSDBStatus",get:function(){return{totalSeries:0,totalSeriesPrev:0,totalSeriesByAll:0,totalLabelValuePairs:0,seriesCountByMetricName:[],seriesCountByLabelName:[],seriesCountByFocusLabelValue:[],seriesCountByLabelValuePair:[],labelValueCountByLabelName:[]}}},{key:"isPrometheusData",get:function(){return this.isPrometheus}},{key:"keys",value:function(e,t){var n=e&&/__name__=".+"/.test(e),r=e&&/{.+=".+"}/g.test(e),i=e&&/__name__=".+", .+!=""/g.test(e),a=[];return a=t||i?a.concat("seriesCountByFocusLabelValue"):n?a.concat("labelValueCountByLabelName"):r?a.concat("seriesCountByMetricName","seriesCountByLabelName"):a.concat("seriesCountByMetricName","seriesCountByLabelName","seriesCountByLabelValuePair","labelValueCountByLabelName"),a}},{key:"getDefaultState",value:function(e,t){var n=this;return this.keys(e,t).reduce((function(e,t){return st(st({},e),{},{tabs:st(st({},e.tabs),{},lt({},t,n.tabsNames)),containerRefs:st(st({},e.containerRefs),{},lt({},t,(0,r.useRef)(null)))})}),{tabs:{},containerRefs:{}})}},{key:"sectionsTitles",value:function(e){return{seriesCountByMetricName:"Metric names with the highest number of series",seriesCountByLabelName:"Labels with the highest number of series",seriesCountByFocusLabelValue:'Values for "'.concat(e,'" label with the highest number of series'),seriesCountByLabelValuePair:"Label=value pairs with the highest number of series",labelValueCountByLabelName:"Labels with the highest number of unique values"}}},{key:"sectionsTips",get:function(){return{seriesCountByMetricName:"\n \n This table returns a list of metrics with the highest cardinality.\n The cardinality of a metric is the number of time series associated with that metric,\n where each time series is defined as a unique combination of key-value label pairs.\n
\n \n When looking to reduce the number of active series in your data source,\n you can start by inspecting individual metrics with high cardinality\n (i.e. that have lots of active time series associated with them),\n since that single metric contributes a large fraction of the series that make up your total series count.\n
",seriesCountByLabelName:"\n \n This table returns a list of the labels with the highest number of series.\n
\n \n Use this table to identify labels that are storing dimensions with high cardinality\n (many different label values).\n
\n \n It is recommended to choose labels such that they have a finite set of values,\n since every unique combination of key-value label pairs creates a new time series\n and therefore can dramatically increase the number of time series in your system.\n
",seriesCountByFocusLabelValue:"\n \n This table returns a list of unique label values per selected label.\n
\n \n Use this table to identify label values that are storing per each selected series.\n
",labelValueCountByLabelName:"\n \n This table returns a list of labels with the highest number of the unique values.\n
\n ",seriesCountByLabelValuePair:"\n \n This table returns a list of the label values pairs with the highest number of series.\n
\n \n Use this table to identify unique label values pairs. This helps to identify same labels \n is applied to count timeseries in your system, since every unique combination of key-value label pairs \n creates a new time series and therefore can dramatically increase the number of time series in your system\n
"}}},{key:"tablesHeaders",get:function(){return{seriesCountByMetricName:Kf,seriesCountByLabelName:Jf,seriesCountByFocusLabelValue:Xf,seriesCountByLabelValuePair:ed,labelValueCountByLabelName:td}}},{key:"totalSeries",value:function(e){return"labelValueCountByLabelName"===e?-1:arguments.length>1&&void 0!==arguments[1]&&arguments[1]?this.tsdbStatus.totalSeriesPrev:this.tsdbStatus.totalSeries}}]),e}(),Kf=[{id:"name",label:"Metric name"},{id:"value",label:"Number of series"},{id:"percentage",label:"Share in total",info:"Shows the share of a metric to the total number of series"},{id:"action",label:""}],Jf=[{id:"name",label:"Label name"},{id:"value",label:"Number of series"},{id:"percentage",label:"Share in total",info:"Shows the share of the label to the total number of series"},{id:"action",label:""}],Xf=[{id:"name",label:"Label value"},{id:"value",label:"Number of series"},{id:"percentage",label:"Share in total"},{disablePadding:!1,id:"action",label:"",numeric:!1}],ed=[{id:"name",label:"Label=value pair"},{id:"value",label:"Number of series"},{id:"percentage",label:"Share in total",info:"Shows the share of the label value pair to the total number of series"},{id:"action",label:""}],td=[{id:"name",label:"Label name"},{id:"value",label:"Number of unique values"},{id:"action",label:""}],nd={seriesCountByMetricName:function(e){var t=e.query;return rd("__name__",t)},seriesCountByLabelName:function(e){var t=e.query;return"{".concat(t,'!=""}')},seriesCountByFocusLabelValue:function(e){var t=e.query,n=e.focusLabel;return rd(n,t)},seriesCountByLabelValuePair:function(e){var t=e.query.split("="),n=t[0],r=t.slice(1).join("=");return rd(n,r)},labelValueCountByLabelName:function(e){var t=e.query,n=e.match;return""===n?"{".concat(t,'!=""}'):"".concat(n.replace("}",""),", ").concat(t,'!=""}')}},rd=function(e,t){return e?"{"+e+"="+JSON.stringify(t)+"}":""},id=function(e){var t,n=e.totalSeries,r=void 0===n?0:n,i=e.totalSeriesPrev,a=void 0===i?0:i,o=e.totalSeriesAll,u=void 0===o?0:o,l=e.seriesCountByMetricName,c=void 0===l?[]:l,s=e.isPrometheus,f=Xr().isMobile,d=v(ot(),1)[0],h=d.get("match"),m=d.get("focusLabel"),p=/__name__/.test(h||""),g=(null===(t=c[0])||void 0===t?void 0:t.value)/u*100,y=r-a,_=Math.abs(y)/a*100,b=[{title:"Total series",value:r.toLocaleString("en-US"),dynamic:r&&a&&!s?"".concat(_.toFixed(2),"%"):"",display:!m,info:'The total number of active time series. \n A time series is uniquely identified by its name plus a set of its labels. \n For example, temperature{city="NY",country="US"} and temperature{city="SF",country="US"} \n are two distinct series, since they differ by the city label.'},{title:"Percentage from total",value:isNaN(g)?"-":"".concat(g.toFixed(2),"%"),display:p,info:"The share of these series in the total number of time series."}].filter((function(e){return e.display}));return b.length?Yt("div",{className:Er()({"vm-cardinality-totals":!0,"vm-cardinality-totals_mobile":f}),children:b.map((function(e){var t=e.title,n=e.value,r=e.info,i=e.dynamic;return Yt("div",{className:"vm-cardinality-totals-card",children:[Yt("h4",{className:"vm-cardinality-totals-card__title",children:[t,r&&Yt(yi,{title:Yt("p",{className:"vm-cardinality-totals-card__tooltip",children:r}),children:Yt("div",{className:"vm-cardinality-totals-card__info-icon",children:Yt(qn,{})})})]}),Yt("span",{className:"vm-cardinality-totals-card__value",children:n}),!!i&&Yt(yi,{title:"in relation to the previous day: ".concat(a.toLocaleString("en-US")),children:Yt("span",{className:Er()({"vm-dynamic-number":!0,"vm-dynamic-number_positive vm-dynamic-number_down":y<0,"vm-dynamic-number_negative vm-dynamic-number_up":y>0}),children:i})})]},t)}))}):null},ad=function(e,t){var n=v(ot(),1)[0],i=n.get(t)?n.get(t):e,a=v((0,r.useState)(i),2),o=a[0],u=a[1];return(0,r.useEffect)((function(){i!==o&&u(i)}),[i]),[o,u]},od=["isPrometheus"],ud=function(e){var t=e.isPrometheus,n=Ar(e,od),i=Xr().isMobile,a=v(ot(),1)[0],o=ca().setSearchParamsFromKeys,u=a.get("tips")||"",l=v(ad("","match"),2),c=l[0],s=l[1],f=v(ad("","focusLabel"),2),d=f[0],h=f[1],m=v(ad(10,"topN"),2),p=m[0],g=m[1],y=(0,r.useMemo)((function(){return p<0?"Number must be bigger than zero":""}),[p]),_=function(){o({match:c,topN:p,focusLabel:d})};return(0,r.useEffect)((function(){var e=a.get("match"),t=+(a.get("topN")||10),n=a.get("focusLabel");e!==c&&s(e||""),t!==p&&g(t),n!==d&&h(n||"")}),[a]),Yt("div",{className:Er()({"vm-cardinality-configurator":!0,"vm-cardinality-configurator_mobile":i,"vm-block":!0,"vm-block_mobile":i}),children:[Yt("div",{className:"vm-cardinality-configurator-controls",children:[Yt("div",{className:"vm-cardinality-configurator-controls__query",children:Yt($i,{label:"Time series selector",type:"string",value:c,onChange:s,onEnter:_})}),Yt("div",{className:"vm-cardinality-configurator-controls__item",children:Yt($i,{label:"Focus label",type:"text",value:d||"",onChange:h,onEnter:_,endIcon:Yt(yi,{title:Yt("div",{children:Yt("p",{children:"To identify values with the highest number of series for the selected label."})}),children:Yt(br,{})})})}),Yt("div",{className:"vm-cardinality-configurator-controls__item vm-cardinality-configurator-controls__item_limit",children:Yt($i,{label:"Limit entries",type:"number",value:t?10:p,error:y,disabled:t,helperText:t?"not available for Prometheus":"",onChange:function(e){var t=+e;g(isNaN(t)?0:t)},onEnter:_})})]}),Yt("div",{className:"vm-cardinality-configurator-bottom",children:[Yt(id,st({isPrometheus:t},n)),Yt("div",{className:"vm-cardinality-configurator-bottom-helpful",children:Yt("a",{className:"vm-link vm-link_with-icon",target:"_blank",href:"https://docs.victoriametrics.com/#cardinality-explorer",rel:"help noreferrer",children:[Yt(yr,{}),"Documentation"]})}),Yt("div",{className:"vm-cardinality-configurator-bottom__execute",children:[Yt(yi,{title:u?"Hide tips":"Show tips",children:Yt(si,{variant:"text",color:u?"warning":"gray",startIcon:Yt(xr,{}),onClick:function(){var e=a.get("tips")||"";o({tips:e?"":"true"})},ariaLabel:"visibility tips"})}),Yt(si,{variant:"text",startIcon:Yt(Vn,{}),onClick:function(){o({match:"",focusLabel:""})},children:"Reset"}),Yt(si,{startIcon:Yt(rr,{}),onClick:_,children:"Execute Query"})]})]})]})};function ld(e){var t=e.order,n=e.orderBy,r=e.onRequestSort,i=e.headerCells;return Yt("thead",{className:"vm-table-header vm-cardinality-panel-table__header",children:Yt("tr",{className:"vm-table__row vm-table__row_header",children:i.map((function(e){return Yt("th",{className:Er()({"vm-table-cell vm-table-cell_header":!0,"vm-table-cell_sort":"action"!==e.id&&"percentage"!==e.id,"vm-table-cell_right":"action"===e.id}),onClick:(i=e.id,function(e){r(e,i)}),children:Yt("div",{className:"vm-table-cell__content",children:[e.info?Yt(yi,{title:e.info,children:[Yt("div",{className:"vm-metrics-content-header__tip-icon",children:Yt(qn,{})}),e.label]}):Yt(Ht.HY,{children:e.label}),"action"!==e.id&&"percentage"!==e.id&&Yt("div",{className:Er()({"vm-table__sort-icon":!0,"vm-table__sort-icon_active":n===e.id,"vm-table__sort-icon_desc":"desc"===t&&n===e.id}),children:Yt(Jn,{})})]})},e.id);var i}))})})}function cd(e,t,n){return t[n]e[n]?1:0}function sd(e,t){return"desc"===e?function(e,n){return cd(e,n,t)}:function(e,n){return-cd(e,n,t)}}function fd(e,t){var n=e.map((function(e,t){return[e,t]}));return n.sort((function(e,n){var r=t(e[0],n[0]);return 0!==r?r:e[1]-n[1]})),n.map((function(e){return e[0]}))}var dd=function(e){var t=e.rows,n=e.headerCells,i=e.defaultSortColumn,a=e.tableCells,o=v((0,r.useState)("desc"),2),u=o[0],l=o[1],c=v((0,r.useState)(i),2),s=c[0],f=c[1],d=fd(t,sd(u,s));return Yt("table",{className:"vm-table vm-cardinality-panel-table",children:[Yt(ld,{order:u,orderBy:s,onRequestSort:function(e,t){l(s===t&&"asc"===u?"desc":"asc"),f(t)},rowCount:t.length,headerCells:n}),Yt("tbody",{className:"vm-table-header",children:d.map((function(e){return Yt("tr",{className:"vm-table__row",children:a(e)},e.name)}))})]})},hd=function(e){var t=e.row,n=e.totalSeries,r=e.totalSeriesPrev,i=e.onActionClick,a=n>0?t.value/n*100:-1,o=r>0?t.valuePrev/r*100:-1,u=[a,o].some((function(e){return-1===e})),l=a-o,c=u?"":"".concat(l.toFixed(2),"%"),s=function(){i(t.name)};return Yt(Ht.HY,{children:[Yt("td",{className:"vm-table-cell",children:Yt("span",{className:"vm-link vm-link_colored",onClick:s,children:t.name})},t.name),Yt("td",{className:"vm-table-cell",children:[t.value,!!t.diff&&Yt(yi,{title:"in relation to the previous day: ".concat(t.valuePrev),children:Yt("span",{className:Er()({"vm-dynamic-number":!0,"vm-dynamic-number_positive":t.diff<0,"vm-dynamic-number_negative":t.diff>0}),children:["\xa0",t.diff>0?"+":"",t.diff]})})]},t.value),a>0&&Yt("td",{className:"vm-table-cell",children:Yt("div",{className:"vm-cardinality-panel-table__progress",children:[Yt(Rs,{value:a}),c&&Yt(yi,{title:"in relation to the previous day",children:Yt("span",{className:Er()({"vm-dynamic-number":!0,"vm-dynamic-number_positive vm-dynamic-number_down":l<0,"vm-dynamic-number_negative vm-dynamic-number_up":l>0}),children:c})})]})},t.progressValue),Yt("td",{className:"vm-table-cell vm-table-cell_right",children:Yt("div",{className:"vm-table-cell__content",children:Yt(yi,{title:"Filter by ".concat(t.name),children:Yt(si,{variant:"text",size:"small",onClick:s,children:Yt(ir,{})})})})},"action")]})},md=function(e){var t=e.data,n=v((0,r.useState)([]),2),i=n[0],a=n[1],o=v((0,r.useState)([0,0]),2),u=o[0],l=o[1];return(0,r.useEffect)((function(){var e=t.sort((function(e,t){return t.value-e.value})),n=function(e){var t=e.map((function(e){return e.value})),n=Math.ceil(t[0]||1),r=n/9;return new Array(11).fill(n+r).map((function(e,t){return Math.round(e-r*t)}))}(e);l(n),a(e.map((function(e){return st(st({},e),{},{percentage:e.value/n[0]*100})})))}),[t]),Yt("div",{className:"vm-simple-bar-chart",children:[Yt("div",{className:"vm-simple-bar-chart-y-axis",children:u.map((function(e){return Yt("div",{className:"vm-simple-bar-chart-y-axis__tick",children:e},e)}))}),Yt("div",{className:"vm-simple-bar-chart-data",children:i.map((function(e){var t=e.name,n=e.value,r=e.percentage;return Yt(yi,{title:"".concat(t,": ").concat(n),placement:"top-center",children:Yt("div",{className:"vm-simple-bar-chart-data-item",style:{maxHeight:"".concat(r||0,"%")}})},"".concat(t,"_").concat(n))}))})]})},pd=function(e){var t=e.rows,n=e.tabs,i=void 0===n?[]:n,a=e.chartContainer,o=e.totalSeries,u=e.totalSeriesPrev,l=e.onActionClick,c=e.sectionTitle,s=e.tip,f=e.tableHeaderCells,d=e.isPrometheus,h=Xr().isMobile,m=v((0,r.useState)("table"),2),p=m[0],g=m[1],y=d&&!t.length,_=(0,r.useMemo)((function(){return i.map((function(e,t){return{value:e,label:e,icon:Yt(0===t?or:ar,{})}}))}),[i]);return Yt("div",{className:Er()({"vm-metrics-content":!0,"vm-metrics-content_mobile":h,"vm-block":!0,"vm-block_mobile":h}),children:[Yt("div",{className:"vm-metrics-content-header vm-section-header",children:[Yt("h5",{className:Er()({"vm-metrics-content-header__title":!0,"vm-section-header__title":!0,"vm-section-header__title_mobile":h}),children:[!h&&s&&Yt(yi,{title:Yt("p",{dangerouslySetInnerHTML:{__html:s},className:"vm-metrics-content-header__tip"}),children:Yt("div",{className:"vm-metrics-content-header__tip-icon",children:Yt(qn,{})})}),c]}),Yt("div",{className:"vm-section-header__tabs",children:Yt(Ir,{activeItem:p,items:_,onChange:g})})]}),y&&Yt("div",{className:"vm-metrics-content-prom-data",children:[Yt("div",{className:"vm-metrics-content-prom-data__icon",children:Yt(qn,{})}),Yt("h3",{className:"vm-metrics-content-prom-data__title",children:"Prometheus Data Limitation"}),Yt("p",{className:"vm-metrics-content-prom-data__text",children:["Due to missing data from your Prometheus source, some tables may appear empty.",Yt("br",{}),"This does not indicate an issue with your system or our tool."]})]}),!y&&"table"===p&&Yt("div",{ref:a,className:Er()({"vm-metrics-content__table":!0,"vm-metrics-content__table_mobile":h}),children:Yt(dd,{rows:t,headerCells:f,defaultSortColumn:"value",tableCells:function(e){return Yt(hd,{row:e,totalSeries:o,totalSeriesPrev:u,onActionClick:l})}})}),!y&&"graph"===p&&Yt("div",{className:"vm-metrics-content__chart",children:Yt(md,{data:t.map((function(e){return{name:e.name,value:e.value}}))})})]})},vd=function(e){var t=e.title,n=e.children;return Yt("div",{className:"vm-cardinality-tip",children:[Yt("div",{className:"vm-cardinality-tip-header",children:[Yt("div",{className:"vm-cardinality-tip-header__tip-icon",children:Yt(xr,{})}),Yt("h4",{className:"vm-cardinality-tip-header__title",children:t||"Tips"})]}),Yt("p",{className:"vm-cardinality-tip__description",children:n})]})},gd=function(){return Yt(vd,{title:"Metrics with a high number of series",children:Yt("ul",{children:[Yt("li",{children:["Identify and eliminate labels with frequently changed values to reduce their\xa0",Yt(Qs,{href:"https://docs.victoriametrics.com/FAQ.html#what-is-high-cardinality",children:"cardinality"}),"\xa0and\xa0",Yt(Qs,{href:"https://docs.victoriametrics.com/FAQ.html#what-is-high-churn-rate",children:"high churn rate"})]}),Yt("li",{children:["Find unused time series and\xa0",Yt(Qs,{href:"https://docs.victoriametrics.com/relabeling.html",children:"drop entire metrics"})]}),Yt("li",{children:["Aggregate time series before they got ingested into the database via\xa0",Yt(Qs,{href:"https://docs.victoriametrics.com/stream-aggregation.html",children:"streaming aggregation"})]})]})})},yd=function(){return Yt(vd,{title:"Labels with a high number of unique values",children:Yt("ul",{children:[Yt("li",{children:"Decrease the number of unique label values to reduce cardinality"}),Yt("li",{children:["Drop the label entirely via\xa0",Yt(Qs,{href:"https://docs.victoriametrics.com/relabeling.html",children:"relabeling"})]}),Yt("li",{children:"For volatile label values (such as URL path, user session, etc.) consider printing them to the log file instead of adding to time series"})]})})},_d=function(){return Yt(vd,{title:"Dashboard of a single metric",children:[Yt("p",{children:"This dashboard helps to understand the cardinality of a single metric."}),Yt("p",{children:"Each time series is a unique combination of key-value label pairs. Therefore a label key with many values can create a lot of time series for a particular metric. If you\u2019re trying to decrease the cardinality of a metric, start by looking at the labels with the highest number of values."}),Yt("p",{children:"Use the series selector at the top of the page to apply additional filters."})]})},bd=function(){return Yt(vd,{title:"Dashboard of a label",children:[Yt("p",{children:"This dashboard helps you understand the count of time series per label."}),Yt("p",{children:"Use the selector at the top of the page to pick a label name you\u2019d like to inspect. For the selected label name, you\u2019ll see the label values that have the highest number of series associated with them. So if you\u2019ve chosen `instance` as your label name, you may see that `657` time series have value \u201chost-1\u201d attached to them and `580` time series have value `host-2` attached to them."}),Yt("p",{children:"This can be helpful in allowing you to determine where the bulk of your time series are coming from. If the label \u201cinstance=host-1\u201d was applied to 657 series and the label \u201cinstance=host-2\u201d was only applied to 580 series, you\u2019d know, for example, that host-01 was responsible for sending the majority of the time series."})]})},wd=function(){var e=Xr().isMobile,t=v(ot(),1)[0],n=ca().setSearchParamsFromKeys,i=t.get("tips")||"",o=t.get("match")||"",u=t.get("focusLabel")||"",l=function(){var e=new Gf,t=v(ot(),1)[0],n=t.get("match"),i=t.get("focusLabel"),o=+(t.get("topN")||10),u=t.get("date")||a()().tz().format(Zt),l=Vt().serverUrl,c=v((0,r.useState)(!1),2),s=c[0],f=c[1],d=v((0,r.useState)(),2),h=d[0],m=d[1],p=v((0,r.useState)(e.defaultTSDBStatus),2),g=p[0],y=p[1],_=function(){var e=Pi(Ti().mark((function e(t){var n;return Ti().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,fetch(t);case 2:if(!(n=e.sent).ok){e.next=7;break}return e.next=6,n.json();case 6:return e.abrupt("return",e.sent);case 7:throw new Error("Request failed with status ".concat(n.status));case 8:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),b=function(e,t){Object.keys(e).forEach((function(n){var r=n,i=e[r],a=t[r];Array.isArray(i)&&Array.isArray(a)&&i.forEach((function(e){var t,n=null===(t=a.find((function(t){return t.name===e.name})))||void 0===t?void 0:t.value;e.diff=n?e.value-n:0,e.valuePrev=n||0}))}))},w=function(){var t=Pi(Ti().mark((function t(r){var i,o,u,c,s,d,h,p,g,w,D,k,x,C,S,E,A,N,M,F,T,O;return Ti().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(l){t.next=2;break}return t.abrupt("return");case 2:return m(""),f(!0),y(e.defaultTSDBStatus),i=st(st({},r),{},{date:r.date,topN:0,match:"",focusLabel:""}),o=st(st({},r),{},{date:a()(r.date).subtract(1,"day").tz().format(Zt)}),u=[Qf(l,r),Qf(l,o),Qf(l,i)],t.prev=8,t.next=11,Promise.all(u.map(_));case 11:C=t.sent,S=v(C,3),E=S[0],A=S[1],N=S[2],M=st({},A.data),F=N.data,T=st(st({},E.data),{},{totalSeries:(null===(c=E.data)||void 0===c?void 0:c.totalSeries)||(null===(s=E.data)||void 0===s||null===(d=s.headStats)||void 0===d?void 0:d.numSeries)||0,totalLabelValuePairs:(null===(h=E.data)||void 0===h?void 0:h.totalLabelValuePairs)||(null===(p=E.data)||void 0===p||null===(g=p.headStats)||void 0===g?void 0:g.numLabelValuePairs)||0,seriesCountByLabelName:(null===(w=E.data)||void 0===w?void 0:w.seriesCountByLabelName)||[],seriesCountByFocusLabelValue:(null===(D=E.data)||void 0===D?void 0:D.seriesCountByFocusLabelValue)||[],totalSeriesByAll:(null===F||void 0===F?void 0:F.totalSeries)||(null===F||void 0===F||null===(k=F.headStats)||void 0===k?void 0:k.numSeries)||0,totalSeriesPrev:(null===M||void 0===M?void 0:M.totalSeries)||(null===M||void 0===M||null===(x=M.headStats)||void 0===x?void 0:x.numSeries)||0}),O=null===n||void 0===n?void 0:n.replace(/[{}"]/g,""),T.seriesCountByLabelValuePair=T.seriesCountByLabelValuePair.filter((function(e){return e.name!==O})),b(T,M),y(T),f(!1),t.next=30;break;case 26:t.prev=26,t.t0=t.catch(8),f(!1),t.t0 instanceof Error&&m("".concat(t.t0.name,": ").concat(t.t0.message));case 30:case"end":return t.stop()}}),t,null,[[8,26]])})));return function(e){return t.apply(this,arguments)}}();return(0,r.useEffect)((function(){w({topN:o,match:n,date:u,focusLabel:i})}),[l,n,i,o,u]),(0,r.useEffect)((function(){h&&(y(e.defaultTSDBStatus),f(!1))}),[h]),e.tsdbStatusData=g,{isLoading:s,appConfigurator:e,error:h}}(),c=l.isLoading,s=l.appConfigurator,f=l.error,d=s.tsdbStatusData,h=s.getDefaultState,m=s.tablesHeaders,p=s.sectionsTips,g=h(o,u);return Yt("div",{className:Er()({"vm-cardinality-panel":!0,"vm-cardinality-panel_mobile":e}),children:[c&&Yt(Ls,{message:"Please wait while cardinality stats is calculated. \n This may take some time if the db contains big number of time series."}),Yt(ud,{isPrometheus:s.isPrometheusData,totalSeries:d.totalSeries,totalSeriesPrev:d.totalSeriesPrev,totalSeriesAll:d.totalSeriesByAll,totalLabelValuePairs:d.totalLabelValuePairs,seriesCountByMetricName:d.seriesCountByMetricName}),i&&Yt("div",{className:"vm-cardinality-panel-tips",children:[!o&&!u&&Yt(gd,{}),o&&!u&&Yt(_d,{}),!o&&!u&&Yt(yd,{}),u&&Yt(bd,{})]}),f&&Yt(ti,{variant:"error",children:f}),s.keys(o,u).map((function(e){return Yt(pd,{sectionTitle:s.sectionsTitles(u)[e],tip:p[e],rows:d[e],onActionClick:(t=e,function(e){var r={match:nd[t]({query:e,focusLabel:u,match:o})};"labelValueCountByLabelName"!==t&&"seriesCountByLabelName"!=t||(r.focusLabel=e),"seriesCountByFocusLabelValue"==t&&(r.focusLabel=""),n(r)}),tabs:g.tabs[e],chartContainer:g.containerRefs[e],totalSeriesPrev:s.totalSeries(e,!0),totalSeries:s.totalSeries(e),tableHeaderCells:m[e],isPrometheus:s.isPrometheusData},e);var t}))]})},Dd=function(e){var t=e.topN,n=e.maxLifetime,i=Vt().serverUrl,a=ca().setSearchParamsFromKeys,o=v((0,r.useState)(null),2),u=o[0],l=o[1],c=v((0,r.useState)(!1),2),s=c[0],f=c[1],d=v((0,r.useState)(),2),h=d[0],m=d[1],p=(0,r.useMemo)((function(){return function(e,t,n){return"".concat(e,"/api/v1/status/top_queries?topN=").concat(t||"","&maxLifetime=").concat(n||"")}(i,t,n)}),[i,t,n]),g=function(){var e=Pi(Ti().mark((function e(){var r,i;return Ti().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return f(!0),a({topN:t,maxLifetime:n}),e.prev=2,e.next=5,fetch(p);case 5:return r=e.sent,e.next=8,r.json();case 8:i=e.sent,r.ok&&["topByAvgDuration","topByCount","topBySumDuration"].forEach((function(e){var t=i[e];Array.isArray(t)&&t.forEach((function(e){return e.timeRange=pn(1e3*e.timeRangeSeconds)}))})),l(r.ok?i:null),m(String(i.error||"")),e.next=17;break;case 14:e.prev=14,e.t0=e.catch(2),e.t0 instanceof Error&&"AbortError"!==e.t0.name&&m("".concat(e.t0.name,": ").concat(e.t0.message));case 17:f(!1);case 18:case"end":return e.stop()}}),e,null,[[2,14]])})));return function(){return e.apply(this,arguments)}}();return{data:u,error:h,loading:s,fetch:g}},kd=function(e){var t=e.rows,n=e.columns,i=e.defaultOrderBy,a=us(),o=v((0,r.useState)(i||"count"),2),u=o[0],l=o[1],c=v((0,r.useState)("desc"),2),s=c[0],f=c[1],d=(0,r.useMemo)((function(){return fd(t,sd(s,u))}),[t,u,s]),h=function(e){return function(){var t;t=e,f((function(e){return"asc"===e&&u===t?"desc":"asc"})),l(t)}},m=function(e){var t=e.query;return Pi(Ti().mark((function e(){return Ti().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,a(t,"Query has been copied");case 2:case"end":return e.stop()}}),e)})))};return Yt("table",{className:"vm-table",children:[Yt("thead",{className:"vm-table-header",children:Yt("tr",{className:"vm-table__row vm-table__row_header",children:[n.map((function(e){return Yt("th",{className:"vm-table-cell vm-table-cell_header vm-table-cell_sort",onClick:h(e.sortBy||e.key),children:Yt("div",{className:"vm-table-cell__content",children:[e.title||e.key,Yt("div",{className:Er()({"vm-table__sort-icon":!0,"vm-table__sort-icon_active":u===e.key,"vm-table__sort-icon_desc":"desc"===s&&u===e.key}),children:Yt(Jn,{})})]})},e.key)})),Yt("th",{className:"vm-table-cell vm-table-cell_header"})," "]})}),Yt("tbody",{className:"vm-table-body",children:d.map((function(e,t){return Yt("tr",{className:"vm-table__row",children:[n.map((function(t){return Yt("td",{className:"vm-table-cell",children:e[t.key]||"-"},t.key)})),Yt("td",{className:"vm-table-cell vm-table-cell_no-padding",children:Yt("div",{className:"vm-top-queries-panels__table-actions",children:[Yt(yi,{title:"Execute query",children:Yt(nt,{to:"".concat(pt.home,"?g0.expr=").concat(encodeURIComponent(e.query)),target:"_blank",rel:"noreferrer",children:Yt(si,{variant:"text",size:"small",startIcon:Yt(ir,{}),ariaLabel:"execute query"})})}),Yt(yi,{title:"Copy query",children:Yt(si,{variant:"text",size:"small",startIcon:Yt(pr,{}),onClick:m(e),ariaLabel:"copy query"})})]})})]},t)}))})]})},xd=["table","JSON"].map((function(e,t){return{value:String(t),label:e,icon:Yt(0===t?or:ur,{})}})),Cd=function(e){var t=e.rows,n=e.title,i=e.columns,a=e.defaultOrderBy,o=Xr().isMobile,u=v((0,r.useState)(0),2),l=u[0],c=u[1];return Yt("div",{className:Er()({"vm-top-queries-panel":!0,"vm-block":!0,"vm-block_mobile":o}),children:[Yt("div",{className:Er()({"vm-top-queries-panel-header":!0,"vm-section-header":!0,"vm-top-queries-panel-header_mobile":o}),children:[Yt("h5",{className:Er()({"vm-section-header__title":!0,"vm-section-header__title_mobile":o}),children:n}),Yt("div",{className:"vm-section-header__tabs",children:Yt(Ir,{activeItem:String(l),items:xd,onChange:function(e){c(+e)}})})]}),Yt("div",{className:Er()({"vm-top-queries-panel__table":!0,"vm-top-queries-panel__table_mobile":o}),children:[0===l&&Yt(kd,{rows:t,columns:i,defaultOrderBy:a}),1===l&&Yt(Ts,{data:t})]})]})},Sd=function(){var e=Xr().isMobile,t=v(ad(10,"topN"),2),n=t[0],i=t[1],o=v(ad("10m","maxLifetime"),2),u=o[0],l=o[1],c=Dd({topN:n,maxLifetime:u}),s=c.data,f=c.error,d=c.loading,h=c.fetch,m=(0,r.useMemo)((function(){var e=u.trim().split(" ").reduce((function(e,t){var n=cn(t);return n?st(st({},e),n):st({},e)}),{});return!!a().duration(e).asMilliseconds()}),[u]),p=(0,r.useMemo)((function(){return!!n&&n<1}),[n]),g=(0,r.useMemo)((function(){return p?"Number must be bigger than zero":""}),[p]),y=(0,r.useMemo)((function(){return m?"":"Invalid duration value"}),[m]),_=function(e){if(!s)return e;var t=s[e];return"number"===typeof t?Cc(t,t,t):t||e},b=function(e){"Enter"===e.key&&h()};return(0,r.useEffect)((function(){s&&(n||i(+s.topN),u||l(s.maxLifetime))}),[s]),(0,r.useEffect)((function(){return h(),window.addEventListener("popstate",h),function(){window.removeEventListener("popstate",h)}}),[]),Yt("div",{className:Er()({"vm-top-queries":!0,"vm-top-queries_mobile":e}),children:[d&&Yt(Ls,{containerStyles:{height:"500px"}}),Yt("div",{className:Er()({"vm-top-queries-controls":!0,"vm-block":!0,"vm-block_mobile":e}),children:[Yt("div",{className:"vm-top-queries-controls-fields",children:[Yt("div",{className:"vm-top-queries-controls-fields__item",children:Yt($i,{label:"Max lifetime",value:u,error:y,helperText:"For example ".concat("30ms, 15s, 3d4h, 1y2w"),onChange:function(e){l(e)},onKeyDown:b})}),Yt("div",{className:"vm-top-queries-controls-fields__item",children:Yt($i,{label:"Number of returned queries",type:"number",value:n||"",error:g,onChange:function(e){i(+e)},onKeyDown:b})})]}),Yt("div",{className:Er()({"vm-top-queries-controls-bottom":!0,"vm-top-queries-controls-bottom_mobile":e}),children:[Yt("div",{className:"vm-top-queries-controls-bottom__info",children:["VictoriaMetrics tracks the last\xa0",Yt(yi,{title:"search.queryStats.lastQueriesCount",children:Yt("b",{children:_("search.queryStats.lastQueriesCount")})}),"\xa0queries with durations at least\xa0",Yt(yi,{title:"search.queryStats.minQueryDuration",children:Yt("b",{children:_("search.queryStats.minQueryDuration")})})]}),Yt("div",{className:"vm-top-queries-controls-bottom__button",children:Yt(si,{startIcon:Yt(rr,{}),onClick:h,children:"Execute"})})]})]}),f&&Yt(ti,{variant:"error",children:f}),s&&Yt(Ht.HY,{children:Yt("div",{className:"vm-top-queries-panels",children:[Yt(Cd,{rows:s.topByCount,title:"Most frequently executed queries",columns:[{key:"query"},{key:"timeRange",sortBy:"timeRangeSeconds",title:"query time interval"},{key:"count"}]}),Yt(Cd,{rows:s.topByAvgDuration,title:"Most heavy queries",columns:[{key:"query"},{key:"avgDurationSeconds",title:"avg duration, sec"},{key:"timeRange",sortBy:"timeRangeSeconds",title:"query time interval"},{key:"count"}],defaultOrderBy:"avgDurationSeconds"}),Yt(Cd,{rows:s.topBySumDuration,title:"Queries with most summary time to execute",columns:[{key:"query"},{key:"sumDurationSeconds",title:"sum duration, sec"},{key:"timeRange",sortBy:"timeRangeSeconds",title:"query time interval"},{key:"count"}],defaultOrderBy:"sumDurationSeconds"})]})})]})},Ed={"color-primary":"#589DF6","color-secondary":"#316eca","color-error":"#e5534b","color-warning":"#c69026","color-info":"#539bf5","color-success":"#57ab5a","color-background-body":"#22272e","color-background-block":"#2d333b","color-background-tooltip":"rgba(22, 22, 22, 0.8)","color-text":"#cdd9e5","color-text-secondary":"#768390","color-text-disabled":"#636e7b","box-shadow":"rgba(0, 0, 0, 0.16) 1px 2px 6px","box-shadow-popper":"rgba(0, 0, 0, 0.2) 0px 2px 8px 0px","border-divider":"1px solid rgba(99, 110, 123, 0.5)","color-hover-black":"rgba(0, 0, 0, 0.12)"},Ad={"color-primary":"#3F51B5","color-secondary":"#E91E63","color-error":"#FD080E","color-warning":"#FF8308","color-info":"#03A9F4","color-success":"#4CAF50","color-background-body":"#FEFEFF","color-background-block":"#FFFFFF","color-background-tooltip":"rgba(80,80,80,0.9)","color-text":"#110f0f","color-text-secondary":"#706F6F","color-text-disabled":"#A09F9F","box-shadow":"rgba(0, 0, 0, 0.08) 1px 2px 6px","box-shadow-popper":"rgba(0, 0, 0, 0.1) 0px 2px 8px 0px","border-divider":"1px solid rgba(0, 0, 0, 0.15)","color-hover-black":"rgba(0, 0, 0, 0.06)"},Nd=function(){var e=v((0,r.useState)(Rt()),2),t=e[0],n=e[1],i=function(e){n(e.matches)};return(0,r.useEffect)((function(){var e=window.matchMedia("(prefers-color-scheme: dark)");return e.addEventListener("change",i),function(){return e.removeEventListener("change",i)}}),[]),t},Md=["primary","secondary","error","warning","info","success"],Fd=function(e){var t,n=e.onLoaded,i=gt(),a=vt().palette,o=void 0===a?{}:a,u=Vt().theme,l=Nd(),c=qt(),s=Pr(),f=v((0,r.useState)((lt(t={},Pt.dark,Ed),lt(t,Pt.light,Ad),lt(t,Pt.system,Rt()?Ed:Ad),t)),2),d=f[0],h=f[1],m=function(){var e=window,t=e.innerWidth,n=e.innerHeight,r=document.documentElement,i=r.clientWidth,a=r.clientHeight;Lt("scrollbar-width","".concat(t-i,"px")),Lt("scrollbar-height","".concat(n-a,"px")),Lt("vh","".concat(.01*n,"px"))},p=function(){Md.forEach((function(e,t){var r=function(e){var t=e.replace("#","").trim();if(3===t.length&&(t=t[0]+t[0]+t[1]+t[1]+t[2]+t[2]),6!==t.length)throw new Error("Invalid HEX color.");return(299*parseInt(t.slice(0,2),16)+587*parseInt(t.slice(2,4),16)+114*parseInt(t.slice(4,6),16))/1e3>=128?"#000000":"#FFFFFF"}(It("color-".concat(e)));Lt("".concat(e,"-text"),r),t===Md.length-1&&(c({type:"SET_DARK_THEME"}),n(!0))}))},g=function(){var e=Ft("THEME")||Pt.system,t=d[e];Object.entries(t).forEach((function(e){var t=v(e,2),n=t[0],r=t[1];Lt(n,r)})),p(),i&&(Md.forEach((function(e){var t=o[e];t&&Lt("color-".concat(e),t)})),p())};return(0,r.useEffect)((function(){m(),g()}),[d]),(0,r.useEffect)(m,[s]),(0,r.useEffect)((function(){var e=Rt()?Ed:Ad;d[Pt.system]!==e?h((function(t){return st(st({},t),{},lt({},Pt.system,e))})):g()}),[u,l]),(0,r.useEffect)((function(){i&&c({type:"SET_THEME",payload:Pt.light})}),[]),null},Td=function(){var e=v((0,r.useState)([]),2),t=e[0],n=e[1],i=v((0,r.useState)(!1),2),a=i[0],o=i[1],u=(0,r.useRef)(document.body),l=function(e){e.preventDefault(),e.stopPropagation(),"dragenter"===e.type||"dragover"===e.type?o(!0):"dragleave"===e.type&&o(!1)};return Or("dragenter",l,u),Or("dragleave",l,u),Or("dragover",l,u),Or("drop",(function(e){var t;e.preventDefault(),e.stopPropagation(),o(!1),null!==e&&void 0!==e&&null!==(t=e.dataTransfer)&&void 0!==t&&t.files&&e.dataTransfer.files[0]&&function(e){var t=Array.from(e||[]);n(t)}(e.dataTransfer.files)}),u),Or("paste",(function(e){var t,r=null===(t=e.clipboardData)||void 0===t?void 0:t.items;if(r){var i=Array.from(r).filter((function(e){return"application/json"===e.type})).map((function(e){return e.getAsFile()})).filter((function(e){return null!==e}));n(i)}}),u),{files:t,dragging:a}},Od=function(e){var t=e.onOpenModal,n=e.onChange;return Yt("div",{className:"vm-trace-page-controls",children:[Yt(si,{variant:"outlined",onClick:t,children:"Paste JSON"}),Yt(yi,{title:"The file must contain tracing information in JSON format",children:Yt(si,{children:["Upload Files",Yt("input",{id:"json",type:"file",accept:"application/json",multiple:!0,title:" ",onChange:n})]})})]})},Pd=function(){var e=v((0,r.useState)([]),2),t=e[0],n=e[1],i=v((0,r.useState)([]),2),a=i[0],o=i[1],u=(0,r.useMemo)((function(){return!!t.length}),[t]),l=fi(!1),c=l.value,s=l.setTrue,f=l.setFalse,d=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";o((function(n){return[{filename:t,text:": ".concat(e.message)}].concat(_(n))}))},h=function(e,t){try{var r=JSON.parse(e),i=r.trace||r;if(!i.duration_msec)return void d(new Error(Ot.traceNotFound),t);var a=new Ms(i,t);n((function(e){return[a].concat(_(e))}))}catch(o){o instanceof Error&&d(o,t)}},m=function(e){e.map((function(e){var t=new FileReader,n=(null===e||void 0===e?void 0:e.name)||"";t.onload=function(e){var t,r=String(null===(t=e.target)||void 0===t?void 0:t.result);h(r,n)},t.readAsText(e)}))},p=function(e){o([]);var t=Array.from(e.target.files||[]);m(t),e.target.value=""},g=function(e){return function(){!function(e){o((function(t){return t.filter((function(t,n){return n!==e}))}))}(e)}},y=Td(),b=y.files,w=y.dragging;return(0,r.useEffect)((function(){m(b)}),[b]),Yt("div",{className:"vm-trace-page",children:[Yt("div",{className:"vm-trace-page-header",children:[Yt("div",{className:"vm-trace-page-header-errors",children:a.map((function(e,t){return Yt("div",{className:"vm-trace-page-header-errors-item",children:[Yt(ti,{variant:"error",children:[Yt("b",{className:"vm-trace-page-header-errors-item__filename",children:e.filename}),Yt("span",{children:e.text})]}),Yt(si,{className:"vm-trace-page-header-errors-item__close",startIcon:Yt(Un,{}),variant:"text",color:"error",onClick:g(t)})]},"".concat(e,"_").concat(t))}))}),Yt("div",{children:u&&Yt(Od,{onOpenModal:s,onChange:p})})]}),u&&Yt("div",{children:Yt(js,{jsonEditor:!0,traces:t,onDeleteClick:function(e){var r=t.filter((function(t){return t.idValue!==e.idValue}));n(_(r))}})}),!u&&Yt("div",{className:"vm-trace-page-preview",children:[Yt("p",{className:"vm-trace-page-preview__text",children:["Please, upload file with JSON response content.","\n","The file must contain tracing information in JSON format.","\n","In order to use tracing please refer to the doc:\xa0",Yt("a",{className:"vm-link vm-link_colored",href:"https://docs.victoriametrics.com/#query-tracing",target:"_blank",rel:"help noreferrer",children:"https://docs.victoriametrics.com/#query-tracing"}),"\n","Tracing graph will be displayed after file upload.","\n","Attach files by dragging & dropping, selecting or pasting them."]}),Yt(Od,{onOpenModal:s,onChange:p})]}),c&&Yt(gi,{title:"Paste JSON",onClose:f,children:Yt(zs,{editable:!0,displayTitle:!0,defaultTile:"JSON ".concat(t.length+1),onClose:f,onUpload:h})}),w&&Yt("div",{className:"vm-trace-page__dropzone"})]})},Id=function(e){var t=Vt().serverUrl,n=Tn().period,i=v((0,r.useState)([]),2),a=i[0],o=i[1],u=v((0,r.useState)(!1),2),l=u[0],c=u[1],s=v((0,r.useState)(),2),f=s[0],d=s[1],h=(0,r.useMemo)((function(){return function(e,t,n){var r="{job=".concat(JSON.stringify(n),"}");return"".concat(e,"/api/v1/label/instance/values?match[]=").concat(encodeURIComponent(r),"&start=").concat(t.start,"&end=").concat(t.end)}(t,n,e)}),[t,n,e]);return(0,r.useEffect)((function(){if(e){var t=function(){var e=Pi(Ti().mark((function e(){var t,n,r;return Ti().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return c(!0),e.prev=1,e.next=4,fetch(h);case 4:return t=e.sent,e.next=7,t.json();case 7:n=e.sent,r=n.data||[],o(r.sort((function(e,t){return e.localeCompare(t)}))),t.ok?d(void 0):d("".concat(n.errorType,"\r\n").concat(null===n||void 0===n?void 0:n.error)),e.next=16;break;case 13:e.prev=13,e.t0=e.catch(1),e.t0 instanceof Error&&d("".concat(e.t0.name,": ").concat(e.t0.message));case 16:c(!1);case 17:case"end":return e.stop()}}),e,null,[[1,13]])})));return function(){return e.apply(this,arguments)}}();t().catch(console.error)}}),[h]),{instances:a,isLoading:l,error:f}},Ld=function(e,t){var n=Vt().serverUrl,i=Tn().period,a=v((0,r.useState)([]),2),o=a[0],u=a[1],l=v((0,r.useState)(!1),2),c=l[0],s=l[1],f=v((0,r.useState)(),2),d=f[0],h=f[1],m=(0,r.useMemo)((function(){return function(e,t,n,r){var i=Object.entries({job:n,instance:r}).filter((function(e){return e[1]})).map((function(e){var t=v(e,2),n=t[0],r=t[1];return"".concat(n,"=").concat(JSON.stringify(r))})).join(","),a="{".concat(i,"}");return"".concat(e,"/api/v1/label/__name__/values?match[]=").concat(encodeURIComponent(a),"&start=").concat(t.start,"&end=").concat(t.end)}(n,i,e,t)}),[n,i,e,t]);return(0,r.useEffect)((function(){if(e){var t=function(){var e=Pi(Ti().mark((function e(){var t,n,r;return Ti().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return s(!0),e.prev=1,e.next=4,fetch(m);case 4:return t=e.sent,e.next=7,t.json();case 7:n=e.sent,r=n.data||[],u(r.sort((function(e,t){return e.localeCompare(t)}))),t.ok?h(void 0):h("".concat(n.errorType,"\r\n").concat(null===n||void 0===n?void 0:n.error)),e.next=16;break;case 13:e.prev=13,e.t0=e.catch(1),e.t0 instanceof Error&&h("".concat(e.t0.name,": ").concat(e.t0.message));case 16:s(!1);case 17:case"end":return e.stop()}}),e,null,[[1,13]])})));return function(){return e.apply(this,arguments)}}();t().catch(console.error)}}),[m]),{names:o,isLoading:c,error:d}},Rd=function(e){var t=e.name,n=e.job,i=e.instance,a=e.rateEnabled,o=e.isBucket,u=e.height,l=Xr().isMobile,c=Qr(),s=c.customStep,f=c.yaxis,d=Tn().period,h=Gr(),m=On(),p=fn(d.end-d.start),g=sn(s),y=pn(10*g*1e3),_=v((0,r.useState)(!1),2),b=_[0],w=_[1],D=b&&s===p?y:s,k=fi(!1),x=k.value,C=k.setTrue,S=(0,r.useMemo)((function(){var e=Object.entries({job:n,instance:i}).filter((function(e){return e[1]})).map((function(e){var t=v(e,2),n=t[0],r=t[1];return"".concat(n,"=").concat(JSON.stringify(r))}));e.push("__name__=".concat(JSON.stringify(t))),"node_cpu_seconds_total"==t&&e.push('mode!="idle"');var r="{".concat(e.join(","),"}");if(o)return"sum(rate(".concat(r,")) by (vmrange, le)");var u=a?"rollup_rate(".concat(r,")"):"rollup(".concat(r,")");return"\nwith (q = ".concat(u,') (\n alias(min(label_match(q, "rollup", "min")), "min"),\n alias(max(label_match(q, "rollup", "max")), "max"),\n alias(avg(label_match(q, "rollup", "avg")), "avg"),\n)')}),[t,n,i,a,o]),E=Fs({predefinedQuery:[S],visible:!0,customStep:D,showAllSeries:x}),A=E.isLoading,N=E.graphData,M=E.error,F=E.warning,T=E.isHistogram;return(0,r.useEffect)((function(){w(T)}),[T]),Yt("div",{className:Er()({"vm-explore-metrics-graph":!0,"vm-explore-metrics-graph_mobile":l}),children:[A&&Yt(Ls,{}),M&&Yt(ti,{variant:"error",children:M}),F&&Yt(ti,{variant:"warning",children:Yt("div",{className:"vm-explore-metrics-graph__warning",children:[Yt("p",{children:F}),Yt(si,{color:"warning",variant:"outlined",onClick:C,children:"Show all"})]})}),N&&d&&Yt(ms,{data:N,period:d,customStep:D,query:[S],yaxis:f,setYaxisLimits:function(e){h({type:"SET_YAXIS_LIMITS",payload:e})},setPeriod:function(e){var t=e.from,n=e.to;m({type:"SET_PERIOD",payload:{from:t,to:n}})},showLegend:!1,height:u,isHistogram:T})]})},Bd=function(e){var t=e.name,n=e.index,r=e.length,i=e.isBucket,a=e.rateEnabled,o=e.onChangeRate,u=e.onRemoveItem,l=e.onChangeOrder,c=Xr().isMobile,s=fi(!1),f=s.value,d=s.setTrue,h=s.setFalse,m=function(){u(t)},p=function(){l(t,n,n+1)},v=function(){l(t,n,n-1)};return Yt("div",c?{className:"vm-explore-metrics-item-header vm-explore-metrics-item-header_mobile",children:[Yt("div",{className:"vm-explore-metrics-item-header__name",children:t}),Yt(si,{variant:"text",size:"small",startIcon:Yt(Dr,{}),onClick:d,ariaLabel:"open panel settings"}),f&&Yt(gi,{title:t,onClose:h,children:Yt("div",{className:"vm-explore-metrics-item-header-modal",children:[Yt("div",{className:"vm-explore-metrics-item-header-modal-order",children:[Yt(si,{startIcon:Yt(sr,{}),variant:"outlined",onClick:v,disabled:0===n,ariaLabel:"move graph up"}),Yt("p",{children:["position:",Yt("span",{className:"vm-explore-metrics-item-header-modal-order__index",children:["#",n+1]})]}),Yt(si,{endIcon:Yt(cr,{}),variant:"outlined",onClick:p,disabled:n===r-1,ariaLabel:"move graph down"})]}),!i&&Yt("div",{className:"vm-explore-metrics-item-header-modal__rate",children:[Yt(_s,{label:Yt("span",{children:["enable ",Yt("code",{children:"rate()"})]}),value:a,onChange:o,fullWidth:!0}),Yt("p",{children:"calculates the average per-second speed of metrics change"})]}),Yt(si,{startIcon:Yt(Un,{}),color:"error",variant:"outlined",onClick:m,fullWidth:!0,children:"Remove graph"})]})})]}:{className:"vm-explore-metrics-item-header",children:[Yt("div",{className:"vm-explore-metrics-item-header-order",children:[Yt(yi,{title:"move graph up",children:Yt(si,{className:"vm-explore-metrics-item-header-order__up",startIcon:Yt(Kn,{}),variant:"text",color:"gray",size:"small",onClick:v,ariaLabel:"move graph up"})}),Yt("div",{className:"vm-explore-metrics-item-header__index",children:["#",n+1]}),Yt(yi,{title:"move graph down",children:Yt(si,{className:"vm-explore-metrics-item-header-order__down",startIcon:Yt(Kn,{}),variant:"text",color:"gray",size:"small",onClick:p,ariaLabel:"move graph down"})})]}),Yt("div",{className:"vm-explore-metrics-item-header__name",children:t}),!i&&Yt("div",{className:"vm-explore-metrics-item-header__rate",children:Yt(yi,{title:"calculates the average per-second speed of metric's change",children:Yt(_s,{label:Yt("span",{children:["enable ",Yt("code",{children:"rate()"})]}),value:a,onChange:o})})}),Yt("div",{className:"vm-explore-metrics-item-header__close",children:Yt(yi,{title:"close graph",children:Yt(si,{startIcon:Yt(Un,{}),variant:"text",color:"gray",size:"small",onClick:m,ariaLabel:"close graph"})})})]})},zd=function(e){var t=e.name,n=e.job,i=e.instance,a=e.index,o=e.length,u=e.size,l=e.onRemoveItem,c=e.onChangeOrder,s=(0,r.useMemo)((function(){return/_sum?|_total?|_count?/.test(t)}),[t]),f=(0,r.useMemo)((function(){return/_bucket?/.test(t)}),[t]),d=v((0,r.useState)(s),2),h=d[0],m=d[1],p=Pr(),g=(0,r.useMemo)(u.height,[u,p]);return(0,r.useEffect)((function(){m(s)}),[n]),Yt("div",{className:"vm-explore-metrics-item vm-block vm-block_empty-padding",children:[Yt(Bd,{name:t,index:a,length:o,isBucket:f,rateEnabled:h,size:u.id,onChangeRate:m,onRemoveItem:l,onChangeOrder:c}),Yt(Rd,{name:t,job:n,instance:i,rateEnabled:h,isBucket:f,height:g},"".concat(t,"_").concat(n,"_").concat(i,"_").concat(h))]})},jd=function(e){var t=e.values,n=e.onRemoveItem,r=Xr().isMobile;return r?Yt("span",{className:"vm-select-input-content__counter",children:["selected ",t.length]}):Yt(Ht.HY,{children:t.map((function(e){return Yt("div",{className:"vm-select-input-content__selected",children:[Yt("span",{children:e}),Yt("div",{onClick:(t=e,function(e){n(t),e.stopPropagation()}),children:Yt(Un,{})})]},e);var t}))})},Hd=function(e){var t=e.value,n=e.list,i=e.label,a=e.placeholder,o=e.noOptionsText,u=e.clearable,l=void 0!==u&&u,c=e.searchable,s=void 0!==c&&c,f=e.autofocus,d=e.onChange,h=Vt().isDarkTheme,m=Xr().isMobile,p=v((0,r.useState)(""),2),g=p[0],y=p[1],_=(0,r.useRef)(null),b=v((0,r.useState)(!1),2),w=b[0],D=b[1],k=(0,r.useRef)(null),x=Array.isArray(t),C=Array.isArray(t)?t:void 0,S=m&&x&&!(null===C||void 0===C||!C.length),E=(0,r.useMemo)((function(){return w?g:Array.isArray(t)?"":t}),[t,g,w,x]),A=(0,r.useMemo)((function(){return w?g||"(.+)":""}),[g,w]),N=function(){k.current&&k.current.blur()},M=function(e){d(e),x||(D(!1),N()),x&&k.current&&k.current.focus()};return(0,r.useEffect)((function(){y(""),w&&k.current&&k.current.focus(),w||N()}),[w,k]),(0,r.useEffect)((function(){f&&k.current&&!m&&k.current.focus()}),[f,k]),Or("keyup",(function(e){k.current!==e.target&&D(!1)})),Yt("div",{className:Er()({"vm-select":!0,"vm-select_dark":h}),children:[Yt("div",{className:"vm-select-input",onClick:function(e){e.target instanceof HTMLInputElement||D((function(e){return!e}))},ref:_,children:[Yt("div",{className:"vm-select-input-content",children:[!(null===C||void 0===C||!C.length)&&Yt(jd,{values:C,onRemoveItem:M}),!S&&Yt("input",{value:E,type:"text",placeholder:a,onInput:function(e){y(e.target.value)},onFocus:function(){D(!0)},ref:k,readOnly:m||!s})]}),i&&Yt("span",{className:"vm-text-field__label",children:i}),l&&t&&Yt("div",{className:"vm-select-input__icon",onClick:function(e){return function(t){M(e),t.stopPropagation()}}(""),children:Yt(Un,{})}),Yt("div",{className:Er()({"vm-select-input__icon":!0,"vm-select-input__icon_open":w}),children:Yt(Jn,{})})]}),Yt(ps,{label:i,value:A,options:n,anchor:_,selected:C,maxWords:10,minLength:0,fullWidth:!0,noOptionsText:o,onSelect:M,onOpenAutocomplete:D})]})},$d=Et.map((function(e){return e.id})),Yd=function(e){var t=e.jobs,n=e.instances,i=e.names,a=e.job,o=e.instance,u=e.size,l=e.selectedMetrics,c=e.onChangeJob,s=e.onChangeInstance,f=e.onToggleMetric,d=e.onChangeSize,h=(0,r.useMemo)((function(){return a?"":"No instances. Please select job"}),[a]),m=(0,r.useMemo)((function(){return a?"":"No metric names. Please select job"}),[a]),p=Xr().isMobile,v=fi("false"!==Ft("EXPLORE_METRICS_TIPS")),g=v.value,y=v.toggle,_=v.setFalse;return(0,r.useEffect)((function(){Mt("EXPLORE_METRICS_TIPS","".concat(g))}),[g]),Yt(Ht.HY,{children:[Yt("div",{className:Er()({"vm-explore-metrics-header":!0,"vm-explore-metrics-header_mobile":p,"vm-block":!0,"vm-block_mobile":p}),children:[Yt("div",{className:"vm-explore-metrics-header__job",children:Yt(Hd,{value:a,list:t,label:"Job",placeholder:"Please select job",onChange:c,autofocus:!a,searchable:!0})}),Yt("div",{className:"vm-explore-metrics-header__instance",children:Yt(Hd,{value:o,list:n,label:"Instance",placeholder:"Please select instance",onChange:s,noOptionsText:h,clearable:!0,searchable:!0})}),Yt("div",{className:"vm-explore-metrics-header__size",children:[Yt(Hd,{label:"Size graphs",value:u,list:$d,onChange:d}),Yt(yi,{title:"".concat(g?"Hide":"Show"," tip"),children:Yt(si,{variant:"text",color:g?"warning":"gray",startIcon:Yt(xr,{}),onClick:y,ariaLabel:"visibility tips"})})]}),Yt("div",{className:"vm-explore-metrics-header-metrics",children:Yt(Hd,{label:"Metrics",value:l,list:i,placeholder:"Search metric name",onChange:f,noOptionsText:m,clearable:!0,searchable:!0})})]}),g&&Yt(ti,{variant:"warning",children:Yt("div",{className:"vm-explore-metrics-header-description",children:[Yt("p",{children:["Please note: this page is solely designed for exploring Prometheus metrics. Prometheus metrics always contain ",Yt("code",{children:"job"})," and ",Yt("code",{children:"instance"})," labels (see ",Yt("a",{className:"vm-link vm-link_colored",href:"https://prometheus.io/docs/concepts/jobs_instances/",children:"these docs"}),"), and this page relies on them as filters. ",Yt("br",{}),"Please use this page for Prometheus metrics only, in accordance with their naming conventions."]}),Yt(si,{variant:"text",size:"small",startIcon:Yt(Un,{}),onClick:_,ariaLabel:"close tips"})]})})]})},Ud=Nt("job",""),Vd=Nt("instance",""),qd=Nt("metrics",""),Wd=Nt("size",""),Zd=Et.find((function(e){return Wd?e.id===Wd:e.isDefault}))||Et[0],Qd=function(){var e=v((0,r.useState)(Ud),2),t=e[0],n=e[1],i=v((0,r.useState)(Vd),2),a=i[0],o=i[1],u=v((0,r.useState)(qd?qd.split("&"):[]),2),l=u[0],c=u[1],s=v((0,r.useState)(Zd),2),f=s[0],d=s[1];!function(e){var t=e.job,n=e.instance,i=e.metrics,a=e.size,o=Tn(),u=o.duration,l=o.relativeTime,c=o.period.date,s=Qr().customStep,f=ca().setSearchParamsFromKeys,d=function(){var e,r=Us((lt(e={},"g0.range_input",u),lt(e,"g0.end_input",c),lt(e,"g0.step_input",s),lt(e,"g0.relative_time",l),lt(e,"size",a),lt(e,"job",t),lt(e,"instance",n),lt(e,"metrics",i),e));f(r)};(0,r.useEffect)(d,[u,l,c,s,t,n,i,a]),(0,r.useEffect)(d,[])}({job:t,instance:a,metrics:l.join("&"),size:f.id});var h=function(){var e=Vt().serverUrl,t=Tn().period,n=v((0,r.useState)([]),2),i=n[0],a=n[1],o=v((0,r.useState)(!1),2),u=o[0],l=o[1],c=v((0,r.useState)(),2),s=c[0],f=c[1],d=(0,r.useMemo)((function(){return function(e,t){return"".concat(e,"/api/v1/label/job/values?start=").concat(t.start,"&end=").concat(t.end)}(e,t)}),[e,t]);return(0,r.useEffect)((function(){var e=function(){var e=Pi(Ti().mark((function e(){var t,n,r;return Ti().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return l(!0),e.prev=1,e.next=4,fetch(d);case 4:return t=e.sent,e.next=7,t.json();case 7:n=e.sent,r=n.data||[],a(r.sort((function(e,t){return e.localeCompare(t)}))),t.ok?f(void 0):f("".concat(n.errorType,"\r\n").concat(null===n||void 0===n?void 0:n.error)),e.next=16;break;case 13:e.prev=13,e.t0=e.catch(1),e.t0 instanceof Error&&f("".concat(e.t0.name,": ").concat(e.t0.message));case 16:l(!1);case 17:case"end":return e.stop()}}),e,null,[[1,13]])})));return function(){return e.apply(this,arguments)}}();e().catch(console.error)}),[d]),{jobs:i,isLoading:u,error:s}}(),m=h.jobs,p=h.isLoading,g=h.error,y=Id(t),b=y.instances,w=y.isLoading,D=y.error,k=Ld(t,a),x=k.names,C=k.isLoading,S=k.error,E=(0,r.useMemo)((function(){return p||w||C}),[p,w,C]),A=(0,r.useMemo)((function(){return g||D||S}),[g,D,S]),N=function(e){c(e?function(t){return t.includes(e)?t.filter((function(t){return t!==e})):[].concat(_(t),[e])}:[])},M=function(e,t,n){var r=n>l.length-1;n<0||r||c((function(e){var r=_(e),i=v(r.splice(t,1),1)[0];return r.splice(n,0,i),r}))};return(0,r.useEffect)((function(){a&&b.length&&!b.includes(a)&&o("")}),[b,a]),Yt("div",{className:"vm-explore-metrics",children:[Yt(Yd,{jobs:m,instances:b,names:x,job:t,size:f.id,instance:a,selectedMetrics:l,onChangeJob:n,onChangeSize:function(e){var t=Et.find((function(t){return t.id===e}));t&&d(t)},onChangeInstance:o,onToggleMetric:N}),E&&Yt(Ls,{}),A&&Yt(ti,{variant:"error",children:A}),!t&&Yt(ti,{variant:"info",children:"Please select job to see list of metric names."}),t&&!l.length&&Yt(ti,{variant:"info",children:"Please select metric names to see the graphs."}),Yt("div",{className:"vm-explore-metrics-body",children:l.map((function(e,n){return Yt(zd,{name:e,job:t,instance:a,index:n,length:l.length,size:f,onRemoveItem:N,onChangeOrder:M},e)}))})]})},Gd=function(){var t=us();return Yt("div",{className:"vm-preview-icons",children:Object.entries(e).map((function(e){var n,r=v(e,2),i=r[0],a=r[1];return Yt("div",{className:"vm-preview-icons-item",onClick:(n=i,Pi(Ti().mark((function e(){return Ti().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t("<".concat(n,"/>"),"<".concat(n,"/> has been copied"));case 2:case"end":return e.stop()}}),e)})))),children:[Yt("div",{className:"vm-preview-icons-item__svg",children:a()}),Yt("div",{className:"vm-preview-icons-item__name",children:"<".concat(i,"/>")})]},i)}))})},Kd=function(e){return e.copy="Copy",e.copied="Copied",e}(Kd||{}),Jd=function(e){var t=e.code,n=v((0,r.useState)(Kd.copy),2),i=n[0],a=n[1];return(0,r.useEffect)((function(){var e=null;return i===Kd.copied&&(e=setTimeout((function(){return a(Kd.copy)}),1e3)),function(){e&&clearTimeout(e)}}),[i]),Yt("code",{className:"vm-code-example",children:[t,Yt("div",{className:"vm-code-example__copy",children:Yt(yi,{title:i,children:Yt(si,{size:"small",variant:"text",onClick:function(){navigator.clipboard.writeText(t),a(Kd.copied)},startIcon:Yt(pr,{}),ariaLabel:"close"})})})]})},Xd=function(){return Yt("a",{className:"vm-link vm-link_colored",href:"https://docs.victoriametrics.com/MetricsQL.html",target:"_blank",rel:"help noreferrer",children:"MetricsQL"})},eh=function(){return Yt("a",{className:"vm-link vm-link_colored",href:"https://grafana.com/grafana/dashboards/1860-node-exporter-full/",target:"_blank",rel:"help noreferrer",children:"Node Exporter Full"})},th=function(){return Yt("section",{className:"vm-with-template-tutorial",children:[Yt("h2",{className:"vm-with-template-tutorial__title",children:["Tutorial for WITH expressions in ",Yt(Xd,{})]}),Yt("div",{className:"vm-with-template-tutorial-section",children:[Yt("p",{className:"vm-with-template-tutorial-section__text",children:["Let's look at the following real query from ",Yt(eh,{})," dashboard:"]}),Yt(Jd,{code:'(\n (\n node_memory_MemTotal_bytes{instance=~"$node:$port", job=~"$job"}\n -\n node_memory_MemFree_bytes{instance=~"$node:$port", job=~"$job"}\n )\n /\n node_memory_MemTotal_bytes{instance=~"$node:$port", job=~"$job"}\n) * 100'}),Yt("p",{className:"vm-with-template-tutorial-section__text",children:"It is clear the query calculates the percentage of used memory for the given $node, $port and $job. Isn't it? :)"})]}),Yt("div",{className:"vm-with-template-tutorial-section",children:[Yt("p",{className:"vm-with-template-tutorial-section__text",children:"What's wrong with this query? Copy-pasted label filters for distinct timeseries which makes it easy to mistype these filters during modification. Let's simplify the query with WITH expressions:"}),Yt(Jd,{code:'WITH (\n commonFilters = {instance=~"$node:$port",job=~"$job"}\n)\n(\n node_memory_MemTotal_bytes{commonFilters}\n -\n node_memory_MemFree_bytes{commonFilters}\n)\n /\nnode_memory_MemTotal_bytes{commonFilters} * 100'})]}),Yt("div",{className:"vm-with-template-tutorial-section",children:[Yt("p",{className:"vm-with-template-tutorial-section__text",children:["Now label filters are located in a single place instead of three distinct places. The query mentions node_memory_MemTotal_bytes metric twice and ","{commonFilters}"," three times. WITH expressions may improve this:"]}),Yt(Jd,{code:'WITH (\n my_resource_utilization(free, limit, filters) = (limit{filters} - free{filters}) / limit{filters} * 100\n)\nmy_resource_utilization(\n node_memory_MemFree_bytes,\n node_memory_MemTotal_bytes,\n {instance=~"$node:$port",job=~"$job"},\n)'}),Yt("p",{className:"vm-with-template-tutorial-section__text",children:"Now the template function my_resource_utilization() may be used for monitoring arbitrary resources - memory, CPU, network, storage, you name it."})]}),Yt("div",{className:"vm-with-template-tutorial-section",children:[Yt("p",{className:"vm-with-template-tutorial-section__text",children:["Let's take another nice query from ",Yt(eh,{})," dashboard:"]}),Yt(Jd,{code:'(\n (\n (\n count(\n count(node_cpu_seconds_total{instance=~"$node:$port",job=~"$job"}) by (cpu)\n )\n )\n -\n avg(\n sum by (mode) (rate(node_cpu_seconds_total{mode=\'idle\',instance=~"$node:$port",job=~"$job"}[5m]))\n )\n )\n *\n 100\n)\n /\ncount(\n count(node_cpu_seconds_total{instance=~"$node:$port",job=~"$job"}) by (cpu)\n)'}),Yt("p",{className:"vm-with-template-tutorial-section__text",children:"Do you understand what does this mess do? Is it manageable? :) WITH expressions are happy to help in a few iterations."})]}),Yt("div",{className:"vm-with-template-tutorial-section",children:[Yt("p",{className:"vm-with-template-tutorial-section__text",children:"1. Extract common filters used in multiple places into a commonFilters variable:"}),Yt(Jd,{code:'WITH (\n commonFilters = {instance=~"$node:$port",job=~"$job"}\n)\n(\n (\n (\n count(\n count(node_cpu_seconds_total{commonFilters}) by (cpu)\n )\n )\n -\n avg(\n sum by (mode) (rate(node_cpu_seconds_total{mode=\'idle\',commonFilters}[5m]))\n )\n )\n *\n 100\n)\n /\ncount(\n count(node_cpu_seconds_total{commonFilters}) by (cpu)\n)'})]}),Yt("div",{className:"vm-with-template-tutorial-section",children:[Yt("p",{className:"vm-with-template-tutorial-section__text",children:'2. Extract "count(count(...) by (cpu))" into cpuCount variable:'}),Yt(Jd,{code:'WITH (\n commonFilters = {instance=~"$node:$port",job=~"$job"},\n cpuCount = count(count(node_cpu_seconds_total{commonFilters}) by (cpu))\n)\n(\n (\n cpuCount\n -\n avg(\n sum by (mode) (rate(node_cpu_seconds_total{mode=\'idle\',commonFilters}[5m]))\n )\n )\n *\n 100\n) / cpuCount'})]}),Yt("div",{className:"vm-with-template-tutorial-section",children:[Yt("p",{className:"vm-with-template-tutorial-section__text",children:"3. Extract rate(...) part into cpuIdle variable, since it is clear now that this part calculates the number of idle CPUs:"}),Yt(Jd,{code:'WITH (\n commonFilters = {instance=~"$node:$port",job=~"$job"},\n cpuCount = count(count(node_cpu_seconds_total{commonFilters}) by (cpu)),\n cpuIdle = sum(rate(node_cpu_seconds_total{mode=\'idle\',commonFilters}[5m]))\n)\n((cpuCount - cpuIdle) * 100) / cpuCount'})]}),Yt("div",{className:"vm-with-template-tutorial-section",children:[Yt("p",{className:"vm-with-template-tutorial-section__text",children:["4. Put node_cpu_seconds_total","{commonFilters}"," into its own varialbe with the name cpuSeconds:"]}),Yt(Jd,{code:'WITH (\n cpuSeconds = node_cpu_seconds_total{instance=~"$node:$port",job=~"$job"},\n cpuCount = count(count(cpuSeconds) by (cpu)),\n cpuIdle = sum(rate(cpuSeconds{mode=\'idle\'}[5m]))\n)\n((cpuCount - cpuIdle) * 100) / cpuCount'}),Yt("p",{className:"vm-with-template-tutorial-section__text",children:"Now the query became more clear comparing to the initial query."})]}),Yt("div",{className:"vm-with-template-tutorial-section",children:[Yt("p",{className:"vm-with-template-tutorial-section__text",children:"WITH expressions may be nested and may be put anywhere. Try expanding the following query:"}),Yt(Jd,{code:"WITH (\n f(a, b) = WITH (\n f1(x) = b-x,\n f2(x) = x+x\n ) f1(a)*f2(b)\n) f(foo, with(x=bar) x)"})]})]})},nh=function(e,t){return"".concat(e,"/expand-with-exprs?query=").concat(encodeURIComponent(t),"&format=json")},rh=function(){var e=v(ot(),1)[0],t=function(){var e=Vt().serverUrl,t=v(ot(),2),n=t[0],i=t[1],a=v((0,r.useState)(""),2),o=a[0],u=a[1],l=v((0,r.useState)(!1),2),c=l[0],s=l[1],f=v((0,r.useState)(),2),d=f[0],h=f[1],m=function(){var t=Pi(Ti().mark((function t(r){var a,o,l;return Ti().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n.set("expr",r),i(n),a=nh(e,r),s(!0),t.prev=4,t.next=7,fetch(a);case 7:return o=t.sent,t.next=10,o.json();case 10:l=t.sent,u((null===l||void 0===l?void 0:l.expr)||""),h(String(l.error||"")),t.next=18;break;case 15:t.prev=15,t.t0=t.catch(4),t.t0 instanceof Error&&"AbortError"!==t.t0.name&&h("".concat(t.t0.name,": ").concat(t.t0.message));case 18:s(!1);case 19:case"end":return t.stop()}}),t,null,[[4,15]])})));return function(e){return t.apply(this,arguments)}}();return{data:o,error:d,loading:c,expand:m}}(),n=t.data,i=t.loading,a=t.error,o=t.expand,u=v((0,r.useState)(e.get("expr")||""),2),l=u[0],c=u[1],s=function(){o(l)};return(0,r.useEffect)((function(){l&&o(l)}),[]),Yt("section",{className:"vm-with-template",children:[i&&Yt(Ls,{}),Yt("div",{className:"vm-with-template-body vm-block",children:[Yt("div",{className:"vm-with-template-body__expr",children:Yt($i,{type:"textarea",label:"MetricsQL query with optional WITH expressions",value:l,error:a,autofocus:!0,onEnter:s,onChange:function(e){c(e)}})}),Yt("div",{className:"vm-with-template-body__result",children:Yt($i,{type:"textarea",label:"MetricsQL query after expanding WITH expressions and applying other optimizations",value:n,disabled:!0})}),Yt("div",{className:"vm-with-template-body-top",children:Yt(si,{variant:"contained",onClick:s,startIcon:Yt(rr,{}),children:"Expand"})})]}),Yt("div",{className:"vm-block",children:Yt(th,{})})]})},ih=function(e,t,n){var r=["format=json","relabel_configs=".concat(encodeURIComponent(t)),"metric=".concat(encodeURIComponent(n))];return"".concat(e,"/metric-relabel-debug?").concat(r.join("&"))},ah='- if: \'{bar_label=~"b.*"}\'\n source_labels: [foo_label, bar_label]\n separator: "_"\n target_label: foobar\n- action: labeldrop\n regex: "foo_.*"\n- target_label: job\n replacement: "my-application-2"',oh='{__name__="my_metric", bar_label="bar", foo_label="foo", job="my-application", instance="192.168.0.1"}',uh=function(){var e=v(ot(),2),t=e[0],n=e[1],i=function(){var e=Vt().serverUrl,t=v((0,r.useState)(null),2),n=t[0],i=t[1],a=v((0,r.useState)(!1),2),o=a[0],u=a[1],l=v((0,r.useState)(),2),c=l[0],s=l[1],f=function(){var t=Pi(Ti().mark((function t(n,r){var a,o,l;return Ti().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return a=ih(e,n,r),u(!0),t.prev=2,t.next=5,fetch(a);case 5:return o=t.sent,t.next=8,o.json();case 8:l=t.sent,i(l.error?null:l),s(String(l.error||"")),t.next=16;break;case 13:t.prev=13,t.t0=t.catch(2),t.t0 instanceof Error&&"AbortError"!==t.t0.name&&s("".concat(t.t0.name,": ").concat(t.t0.message));case 16:u(!1);case 17:case"end":return t.stop()}}),t,null,[[2,13]])})));return function(e,n){return t.apply(this,arguments)}}();return{data:n,error:c,loading:o,fetchData:f}}(),a=i.data,o=i.loading,u=i.error,l=i.fetchData,c=v(ad("","config"),2),s=c[0],f=c[1],d=v(ad("","labels"),2),h=d[0],m=d[1],p=(0,r.useCallback)((function(){l(s,h),t.set("config",s),t.set("labels",h),n(t)}),[s,h]);return(0,r.useEffect)((function(){var e=t.get("config")||"",n=t.get("labels")||"";(n||e)&&(l(e,n),f(e),m(n))}),[]),Yt("section",{className:"vm-relabeling",children:[o&&Yt(Ls,{}),Yt("div",{className:"vm-relabeling-header vm-block",children:[Yt("div",{className:"vm-relabeling-header-configs",children:Yt($i,{type:"textarea",label:"Relabel configs",value:s,autofocus:!0,onChange:function(e){f(e||"")},onEnter:p})}),Yt("div",{className:"vm-relabeling-header__labels",children:Yt($i,{type:"textarea",label:"Labels",value:h,onChange:function(e){m(e||"")},onEnter:p})}),Yt("div",{className:"vm-relabeling-header-bottom",children:[Yt("a",{className:"vm-link vm-link_with-icon",target:"_blank",href:"https://docs.victoriametrics.com/relabeling.html",rel:"help noreferrer",children:[Yt(qn,{}),"Relabeling cookbook"]}),Yt("a",{className:"vm-link vm-link_with-icon",target:"_blank",href:"https://docs.victoriametrics.com/vmagent.html#relabeling",rel:"help noreferrer",children:[Yt(yr,{}),"Documentation"]}),Yt(si,{variant:"text",onClick:function(){var e=ah,r=oh;f(e),m(r),l(e,r),t.set("config",e),t.set("labels",r),n(t)},children:"Try example"}),Yt(si,{variant:"contained",onClick:p,startIcon:Yt(rr,{}),children:"Submit"})]})]}),u&&Yt(ti,{variant:"error",children:u}),a&&Yt("div",{className:"vm-relabeling-steps vm-block",children:[a.originalLabels&&Yt("div",{className:"vm-relabeling-steps-item",children:Yt("div",{className:"vm-relabeling-steps-item__row",children:[Yt("span",{children:"Original labels:"}),Yt("code",{dangerouslySetInnerHTML:{__html:a.originalLabels}})]})}),a.steps.map((function(e,t){return Yt("div",{className:"vm-relabeling-steps-item",children:[Yt("div",{className:"vm-relabeling-steps-item__row",children:[Yt("span",{children:"Step:"}),t+1]}),Yt("div",{className:"vm-relabeling-steps-item__row",children:[Yt("span",{children:"Relabeling Rule:"}),Yt("code",{children:Yt("pre",{children:e.rule})})]}),Yt("div",{className:"vm-relabeling-steps-item__row",children:[Yt("span",{children:"Input Labels:"}),Yt("code",{children:Yt("pre",{dangerouslySetInnerHTML:{__html:e.inLabels}})})]}),Yt("div",{className:"vm-relabeling-steps-item__row",children:[Yt("span",{children:"Output labels:"}),Yt("code",{children:Yt("pre",{dangerouslySetInnerHTML:{__html:e.outLabels}})})]})]},t)})),a.resultingLabels&&Yt("div",{className:"vm-relabeling-steps-item",children:Yt("div",{className:"vm-relabeling-steps-item__row",children:[Yt("span",{children:"Resulting labels:"}),Yt("code",{dangerouslySetInnerHTML:{__html:a.resultingLabels}})]})})]})]})},lh=function(e){var t=e.rows,n=e.columns,i=e.defaultOrderBy,a=e.copyToClipboard,o=e.paginationOffset,u=v((0,r.useState)(i),2),l=u[0],c=u[1],s=v((0,r.useState)("desc"),2),f=s[0],d=s[1],h=v((0,r.useState)(null),2),m=h[0],p=h[1],g=(0,r.useMemo)((function(){var e=o.startIndex,n=o.endIndex;return fd(t,sd(f,l)).slice(e,n)}),[t,l,f,o]),y=function(e,t){return Pi(Ti().mark((function n(){return Ti().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(m!==t){n.next=2;break}return n.abrupt("return");case 2:return n.prev=2,n.next=5,navigator.clipboard.writeText(String(e));case 5:p(t),n.next=11;break;case 8:n.prev=8,n.t0=n.catch(2),console.error(n.t0);case 11:case"end":return n.stop()}}),n,null,[[2,8]])})))};return(0,r.useEffect)((function(){if(null!==m){var e=setTimeout((function(){return p(null)}),2e3);return function(){return clearTimeout(e)}}}),[m]),Yt("table",{className:"vm-table",children:[Yt("thead",{className:"vm-table-header",children:Yt("tr",{className:"vm-table__row vm-table__row_header",children:[n.map((function(e){return Yt("th",{className:"vm-table-cell vm-table-cell_header vm-table-cell_sort",onClick:(t=e.key,function(){d((function(e){return"asc"===e&&l===t?"desc":"asc"})),c(t)}),children:Yt("div",{className:"vm-table-cell__content",children:[Yt("div",{children:String(e.title||e.key)}),Yt("div",{className:Er()({"vm-table__sort-icon":!0,"vm-table__sort-icon_active":l===e.key,"vm-table__sort-icon_desc":"desc"===f&&l===e.key}),children:Yt(Jn,{})})]})},String(e.key));var t})),a&&Yt("th",{className:"vm-table-cell vm-table-cell_header"})]})}),Yt("tbody",{className:"vm-table-body",children:g.map((function(e,t){return Yt("tr",{className:"vm-table__row",children:[n.map((function(t){return Yt("td",{className:Er()(lt({"vm-table-cell":!0},"".concat(t.className),t.className)),children:e[t.key]||"-"},String(t.key))})),a&&Yt("td",{className:"vm-table-cell vm-table-cell_right",children:e[a]&&Yt("div",{className:"vm-table-cell__content",children:Yt(yi,{title:m===t?"Copied":"Copy row",children:Yt(si,{variant:"text",color:m===t?"success":"gray",size:"small",startIcon:Yt(m===t?fr:pr,{}),onClick:y(e[a],t),ariaLabel:"copy row"})})})})]},t)}))})]})},ch=function(){var e=Xr().isMobile,t=Tn().timezone,n=function(){var e=Vt().serverUrl,t=v((0,r.useState)([]),2),n=t[0],i=t[1],o=v((0,r.useState)(a()().format(Gt)),2),u=o[0],l=o[1],c=v((0,r.useState)(!1),2),s=c[0],f=c[1],d=v((0,r.useState)(),2),h=d[0],m=d[1],p=(0,r.useMemo)((function(){return"".concat(e,"/api/v1/status/active_queries")}),[e]),g=function(){var e=Pi(Ti().mark((function e(){var t,n;return Ti().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return f(!0),e.prev=1,e.next=4,fetch(p);case 4:return t=e.sent,e.next=7,t.json();case 7:n=e.sent,i(n.data),l(a()().format("HH:mm:ss:SSS")),t.ok?m(void 0):m("".concat(n.errorType,"\r\n").concat(null===n||void 0===n?void 0:n.error)),e.next=16;break;case 13:e.prev=13,e.t0=e.catch(1),e.t0 instanceof Error&&m("".concat(e.t0.name,": ").concat(e.t0.message));case 16:f(!1);case 17:case"end":return e.stop()}}),e,null,[[1,13]])})));return function(){return e.apply(this,arguments)}}();return(0,r.useEffect)((function(){g().catch(console.error)}),[p]),{data:n,lastUpdated:u,isLoading:s,error:h,fetchData:g}}(),i=n.data,o=n.lastUpdated,u=n.isLoading,l=n.error,c=n.fetchData,s=(0,r.useMemo)((function(){return i.map((function(e){var t=a()(e.start).tz().format(Qt),n=a()(e.end).tz().format(Qt);return{duration:e.duration,remote_addr:e.remote_addr,query:e.query,args:"".concat(t," to ").concat(n,", step=").concat(ln(e.step)),data:JSON.stringify(e,null,2)}}))}),[i,t]),f=(0,r.useMemo)((function(){if(null===s||void 0===s||!s.length)return[];var e=Object.keys(s[0]),t={remote_addr:"client address"},n=["data"];return e.filter((function(e){return!n.includes(e)})).map((function(e){return{key:e,title:t[e]||e}}))}),[s]),d=function(){var e=Pi(Ti().mark((function e(){return Ti().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:c().catch(console.error);case 1:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return Yt("div",{className:"vm-active-queries",children:[u&&Yt(Ls,{}),Yt("div",{className:"vm-active-queries-header",children:[!s.length&&!l&&Yt(ti,{variant:"info",children:"There are currently no active queries running"}),l&&Yt(ti,{variant:"error",children:l}),Yt("div",{className:"vm-active-queries-header-controls",children:[Yt(si,{variant:"contained",onClick:d,startIcon:Yt(Gn,{}),children:"Update"}),Yt("div",{className:"vm-active-queries-header__update-msg",children:["Last updated: ",o]})]})]}),!!s.length&&Yt("div",{className:Er()({"vm-block":!0,"vm-block_mobile":e}),children:Yt(lh,{rows:s,columns:f,defaultOrderBy:"duration",copyToClipboard:"data",paginationOffset:{startIndex:0,endIndex:1/0}})})]})},sh=function(){var e=v((0,r.useState)(!1),2),t=e[0],n=e[1];return Yt(Ht.HY,{children:Yt(Xe,{children:Yt(ui,{children:Yt(Ht.HY,{children:[Yt(Fd,{onLoaded:n}),t&&Yt(Ue,{children:Yt($e,{path:"/",element:Yt(Ca,{}),children:[Yt($e,{path:pt.home,element:Yt(Xs,{})}),Yt($e,{path:pt.metrics,element:Yt(Qd,{})}),Yt($e,{path:pt.cardinality,element:Yt(wd,{})}),Yt($e,{path:pt.topQueries,element:Yt(Sd,{})}),Yt($e,{path:pt.trace,element:Yt(Pd,{})}),Yt($e,{path:pt.dashboards,element:Yt(Zf,{})}),Yt($e,{path:pt.withTemplate,element:Yt(rh,{})}),Yt($e,{path:pt.relabel,element:Yt(uh,{})}),Yt($e,{path:pt.activeQueries,element:Yt(ch,{})}),Yt($e,{path:pt.icons,element:Yt(Gd,{})})]})})]})})})})},fh=function(e){e&&n.e(522).then(n.bind(n,522)).then((function(t){var n=t.getCLS,r=t.getFID,i=t.getFCP,a=t.getLCP,o=t.getTTFB;n(e),r(e),i(e),a(e),o(e)}))},dh=document.getElementById("root");dh&&(0,r.render)(Yt(sh,{}),dh),fh()}()}();
\ No newline at end of file
diff --git a/app/vmselect/vmui/static/js/main.e97c3048.js.LICENSE.txt b/app/vmselect/vmui/static/js/main.8d3e794d.js.LICENSE.txt
similarity index 100%
rename from app/vmselect/vmui/static/js/main.e97c3048.js.LICENSE.txt
rename to app/vmselect/vmui/static/js/main.8d3e794d.js.LICENSE.txt