L)?-1:1})},[m,t,i,c,o]),b=M(()=>v.some(y=>y.copyValue),[v]),f=y=>{d(S=>S==="asc"&&i===y?"desc":"asc"),l(y)},g=y=>()=>{f(y)},_=y=>async()=>{await r(y,"Row has been copied")};return v.length?e("div",{className:I({"vm-table-view":!0,"vm-table-view_mobile":a}),children:e("table",{className:"vm-table",ref:s,children:[e("thead",{className:"vm-table-header",children:e("tr",{className:"vm-table__row vm-table__row_header",children:[m.map((y,S)=>e("td",{className:"vm-table-cell vm-table-cell_header vm-table-cell_sort",onClick:g(y.key),children:e("div",{className:"vm-table-cell__content",children:[y.key,e("div",{className:I({"vm-table__sort-icon":!0,"vm-table__sort-icon_active":i===y.key,"vm-table__sort-icon_desc":c==="desc"&&i===y.key}),children:e(Je,{})})]})},S)),e("td",{className:"vm-table-cell vm-table-cell_header vm-table-cell_right vm-table-cell_sort",onClick:g("Value"),children:e("div",{className:"vm-table-cell__content",children:[e("div",{className:I({"vm-table__sort-icon":!0,"vm-table__sort-icon_active":i==="Value","vm-table__sort-icon_desc":c==="desc"}),children:e(Je,{})}),"Value"]})}),b&&e("td",{className:"vm-table-cell vm-table-cell_header"})]})}),e("tbody",{className:"vm-table-body",children:v.map((y,S)=>e("tr",{className:"vm-table__row",children:[y.metadata.map((T,w)=>e("td",{className:I({"vm-table-cell vm-table-cell_no-wrap":!0,"vm-table-cell_gray":v[S-1]&&v[S-1].metadata[w]===T}),children:T},w)),e("td",{className:"vm-table-cell vm-table-cell_right vm-table-cell_no-wrap",children:y.values.length?y.values.map(T=>e("p",{children:T},T)):y.value}),b&&e("td",{className:"vm-table-cell vm-table-cell_right",children:y.copyValue&&e("div",{className:"vm-table-cell__content",children:e(j,{title:"Copy row",children:e(D,{variant:"text",color:"gray",size:"small",startIcon:e(Xe,{}),onClick:_(y.copyValue),ariaLabel:"copy row"})})})})]},S))})]})}):e(le,{variant:"warning",children:"No data to show"})},Or=({checked:t=!1,disabled:n=!1,label:r,color:a="secondary",onChange:o})=>{const s=()=>{n||o(!t)},i=I({"vm-checkbox":!0,"vm-checkbox_disabled":n,"vm-checkbox_active":t,[`vm-checkbox_${a}_active`]:t,[`vm-checkbox_${a}`]:a});return e("div",{className:i,onClick:s,children:[e("div",{className:"vm-checkbox-track",children:e("div",{className:"vm-checkbox-track__thumb",children:e(Wn,{})})}),r&&e("span",{className:"vm-checkbox__label",children:r})]})},_r="Table settings",Ga=({columns:t,selectedColumns:n=[],tableCompact:r,onChangeColumns:a,toggleTableCompact:o})=>{const[s,i]=oe(),l=q(null),{value:c,toggle:d,setFalse:m}=ae(!1),[u,h]=N(""),[p,v]=N(-1),b=M(()=>n.filter(k=>!t.includes(k)),[t,n]),f=M(()=>{const k=b.concat(t);return(u?k.filter(x=>x.includes(u)):k).sort((x,E)=>x.localeCompare(E))},[t,b,u]),g=M(()=>f.every(k=>n.includes(k)),[n,f]),_=k=>{a(k);const L=new URLSearchParams(s.toString());k.length===t.length?L.delete("columns"):L.set("columns",k.map(encodeURIComponent).join(",")),i(L)},y=k=>{const L=n.includes(k)?n.filter(x=>x!==k):[...n,k];_(L)},S=()=>{_(g?n.filter(k=>!f.includes(k)):f)},T=k=>()=>{y(k)},w=()=>{v(-1)},C=k=>{const L=k.key==="ArrowUp",x=k.key==="ArrowDown",E=k.key==="Enter";(x||L||E)&&k.preventDefault(),x?v(P=>P+1>f.length-1?P:P+1):L?v(P=>P-1<0?P:P-1):E&&y(f[p])};return A(()=>{Zn(t,n)||s.has("columns")||a(t)},[t]),A(()=>{if(!s.has("columns"))return;const x=(s.get("columns")||"").split(",").map(decodeURIComponent).filter(Boolean);a(x)},[]),e("div",{className:"vm-table-settings",children:[e(j,{title:_r,children:e("div",{ref:l,children:e(D,{variant:"text",startIcon:e(Ze,{}),onClick:d,ariaLabel:_r})})}),c&&e(Me,{title:_r,className:"vm-table-settings-modal",onClose:m,children:[e("div",{className:"vm-table-settings-modal-section",children:[e("div",{className:"vm-table-settings-modal-section__title",children:"Customize columns"}),e("div",{className:"vm-table-settings-modal-columns",children:[e("div",{className:"vm-table-settings-modal-columns__search",children:e(ce,{placeholder:"Search columns",startIcon:e(Cs,{}),value:u,onChange:h,onBlur:w,onKeyDown:C,type:"search"})}),e("div",{className:"vm-table-settings-modal-columns-list",children:[!!f.length&&e("div",{className:"vm-table-settings-modal-columns-list__item vm-table-settings-modal-columns-list__item_all",children:e(Or,{checked:g,onChange:S,label:g?"Uncheck all":"Check all",disabled:r})}),!f.length&&e("div",{className:"vm-table-settings-modal-columns-no-found",children:e("p",{className:"vm-table-settings-modal-columns-no-found__info",children:"No columns found."})}),f.map((k,L)=>e("div",{className:I({"vm-table-settings-modal-columns-list__item":!0,"vm-table-settings-modal-columns-list__item_focus":L===p,"vm-table-settings-modal-columns-list__item_custom":b.includes(k)}),children:e(Or,{checked:n.includes(k),onChange:T(k),label:k,disabled:r})},k))]})]})]}),o&&r!==void 0&&e("div",{className:"vm-table-settings-modal-section",children:[e("div",{className:"vm-table-settings-modal-section__title",children:"Table view"}),e("div",{className:"vm-table-settings-modal-columns-list__item",children:e(_e,{label:"Compact view",value:r,onChange:o})})]})]})]})},Cm=({liveData:t,controlsRef:n})=>{const{tableCompact:r}=je(),a=Gt(),[o,s]=N(),i=M(()=>Ya(t||[]).map(d=>d.key),[t]),c=e(Ga,{columns:i,selectedColumns:o,onChangeColumns:s,tableCompact:r,toggleTableCompact:()=>{a({type:"TOGGLE_TABLE_COMPACT"})}});return e(V,{children:[n.current&&pt(c,n.current),e(bi,{data:t,displayColumns:o})]})},yi=({graphData:t,liveData:n,isHistogram:r,displayType:a,controlsRef:o})=>a===Ne.code&&n?e(or,{data:n}):a===Ne.table&&n?e(Cm,{liveData:n,controlsRef:o}):a===Ne.chart&&t?e(_i,{graphData:t,isHistogram:r,controlsRef:o}):null,Nm=e(V,{children:[e("p",{children:"Filename - specify the name for your report file."}),e("p",{children:["Default format: ",e("code",{children:["vmui_report_$",Wr,".json"]}),"."]}),e("p",{children:"This name will be used when saving your report on your device."})]}),Sm=e(V,{children:[e("p",{children:["Title - specify the title that will be displayed on the ",e(Bn,{to:Z.queryAnalyzer,target:"_blank",rel:"noreferrer",className:"vm-link vm-link_underlined",children:gt[Z.queryAnalyzer].title})," page."]}),e("p",{children:"This helps identify your report in the interface."})]}),km=e(V,{children:[e("p",{children:"Comment (optional) - add a comment to your report."}),e("p",{children:"This can be any additional information that will be useful when reviewing the report later."})]}),Tm=e(V,{children:[e("p",{children:"Query trace - enable this option to include a query trace in your report."}),e("p",{children:"This will assist in analyzing and diagnosing the query processing."})]}),Lm=e(V,{children:[e("p",{children:"Generate Report - click this button to generate and save your report. "}),e("p",{children:["After creation, the report can be downloaded and examined on the ",e(Bn,{to:Z.queryAnalyzer,target:"_blank",rel:"noreferrer",className:"vm-link vm-link_underlined",children:gt[Z.queryAnalyzer].title})," page."]})]}),Am=[Nm,Sm,km,Tm,Lm],wi=t=>{try{return JSON.parse(t)}catch{return null}},Em=[{title:"Write",value:!1},{title:"Preview",value:!0}],xm=({value:t,onChange:n})=>{const{value:r,setTrue:a,setFalse:o}=ae(!1);return e("div",{className:"vm-markdown-editor",children:[e("div",{className:"vm-markdown-editor-header",children:[e("div",{className:"vm-markdown-editor-header-tabs",children:Em.map(({title:s,value:i})=>e("div",{className:I({"vm-markdown-editor-header-tabs__tab":!0,"vm-markdown-editor-header-tabs__tab_active":r===i}),onClick:i?a:o,children:s},s))}),e("span",{className:"vm-markdown-editor-header__info",children:"Markdown is supported"})]}),r?e("div",{className:"vm-markdown-editor-preview vm-markdown",dangerouslySetInnerHTML:{__html:Bt(t)}}):e(ce,{type:"textarea",value:t,onChange:n})]})};var Ci=(t=>(t[t.QUERY_DATA=0]="QUERY_DATA",t[t.RAW_DATA=1]="RAW_DATA",t))(Ci||{});const Mm=t=>{switch(t){case 1:return"Raw report";default:return"Report"}},Im=t=>{const n=U().utc().format(Wr);return`vmui_${t.toLowerCase().replace(/ /g,"_")}_${n}`},Ni=({fetchUrl:t,reportType:n=0})=>{const{query:r}=xe(),a=Mm(n),o=Im(a),[s,i]=N(a),[l,c]=N(o),[d,m]=N(""),[u,h]=N(n===0),[p,v]=N(),[b,f]=N(!1),g=q(null),_=q(null),y=q(null),S=q(null),T=q(null),w=[_,g,y,S,T],[C,k]=N(0),{value:L,toggle:x,setFalse:E}=ae(!1),{value:P,toggle:F,setFalse:O}=ae(!1),H=W(()=>{if(t)try{return t.map((R,$)=>{const B=new URL(R);return u?B.searchParams.set("trace","1"):B.searchParams.delete("trace"),{id:$,url:B}})}catch(R){v(String(R))}},[t,u]),z=W(R=>{const $=JSON.stringify(R,null,2);Pa($,`${l||o}.json`),E()},[l]),Y=({id:R,url:$,comment:B,title:ee})=>({id:R,title:ee||a,comment:B,endpoint:nl($.pathname)||"",params:Object.fromEntries($.searchParams)}),G=async(R,$)=>{const B=[],ee=await R.text();return R.ok?ee.split(`
-`).filter(ue=>ue).forEach(ue=>{const he=wi(ue);he&&B.push({metric:he.metric,values:he.values.map((Ye,ye)=>[he.timestamps[ye]/1e3,Ye])})}):v(String(ee)),{data:{result:B,resultType:"matrix"},vmui:Y($)}},K=async(R,$)=>{const B=await R.json();if(R.ok)return B.vmui=Y($),B;{const ee=B.errorType?`${B.errorType}\r
-`:"";v(`${ee}${(B==null?void 0:B.error)||(B==null?void 0:B.message)||"unknown error"}`)}},re=async(R,$)=>{switch(n){case 1:return await G(R,$);default:return await K(R,$)}},Q=W(async()=>{const R=H();if(!R){v($=>$||Ce.validQuery);return}v(""),f(!0);try{const $=[];for await(const B of R){if(!B)continue;const{url:ee,id:te}=B,ue=await fetch(ee),he=await re(ue,{id:te,url:ee,comment:d,title:s});$.push(he)}$.length&&z($)}catch($){$ instanceof Error&&$.name!=="AbortError"&&v(`${$.name}: ${$.message}`)}finally{f(!1)}},[H,d,z,r,s]),ie=R=>()=>{const $=B=>{var te;const ee=B+R;return(te=w[ee])!=null&&te.current?ee:$(ee)};k($)};return A(()=>{v(""),c(o),m("")},[L]),A(()=>{k(0)},[P]),e(V,{children:[e(j,{title:"Export query",children:e(D,{variant:"text",startIcon:e(fn,{}),onClick:x,ariaLabel:"export query"})}),L&&e(Me,{title:"Export query",onClose:E,isOpen:L,children:e("div",{className:"vm-download-report",children:[e("div",{className:"vm-download-report-settings",children:[e("div",{ref:_,children:[e("div",{className:"vm-download-report-settings__title",children:"Filename"}),e(ce,{value:l,onChange:c})]}),e("div",{ref:g,children:[e("div",{className:"vm-download-report-settings__title",children:"Report title"}),e(ce,{value:s,onChange:i})]}),e("div",{ref:y,children:[e("div",{className:"vm-download-report-settings__title",children:"Comment"}),e(xm,{value:d,onChange:m})]}),n===0&&e(V,{children:[e("div",{ref:S,children:e(Or,{checked:u,onChange:h,label:"Include query trace"})}),e(le,{variant:"info",children:["If confused with the query results, try viewing the raw samples for selected series in ",e(()=>e(Bn,{className:"vm-link vm-link_underlined vm-link_colored",to:Z.rawQuery,children:"Raw Query"}),{})," tab."]})]})]}),p&&e(le,{variant:"error",children:p}),e("div",{className:"vm-download-report__buttons",children:[e(D,{variant:"text",onClick:F,children:"Help"}),e("div",{ref:T,children:e(D,{onClick:Q,disabled:b,children:b?"Loading data...":"Generate Report"})})]}),e(Ie,{open:P,buttonRef:w[C],placement:"top-left",variant:"dark",onClose:O,children:e("div",{className:"vm-download-report-helper",children:[e("div",{className:"vm-download-report-helper__description",children:Am[C]}),e("div",{className:"vm-download-report-helper__buttons",children:[C!==0&&e(D,{onClick:ie(-1),size:"small",color:"white",children:"Prev"}),e(D,{onClick:C===w.length-1?O:ie(1),size:"small",color:"white",variant:"text",children:C===w.length-1?"Close":"Next"})]})]})})]})})]})},Si=()=>{const{isEmptyHistogram:t}=He(),{handleChange:n}=fi();return t?e(le,{variant:"warning",children:e("div",{className:"vm-warning-heatmap-to-line",children:[e("p",{className:"vm-warning-heatmap-to-line__text",children:'The expression cannot be displayed as a heatmap. To make the graph work, disable the heatmap in the "Graph settings" or modify the expression.'}),e(D,{size:"small",color:"primary",variant:"text",onClick:()=>n(!1),children:"Switch to line chart"})]})}):null},ki=()=>{Ia();const{isMobile:t}=J(),{displayType:n}=je(),{query:r}=xe(),{customStep:a}=He(),o=vt(),[s,i]=N([]),[l,c]=N(!r[0]),[d,m]=N(!1),u=q(null),{fetchUrl:h,isLoading:p,liveData:v,graphData:b,error:f,queryErrors:g,setQueryErrors:_,queryStats:y,warning:S,traces:T,isHistogram:w,abortFetch:C}=Xn({visible:!0,customStep:a,hideQuery:s,showAllSeries:d}),k=!(v!=null&&v.length)&&n!==Ne.chart,L=!l&&f,x=P=>{i(P)},E=()=>{c(!1)};return A(()=>{o({type:"SET_IS_HISTOGRAM",payload:w})},[b]),e("div",{className:I({"vm-custom-panel":!0,"vm-custom-panel_mobile":t}),children:[e(xa,{queryErrors:l?[]:g,setQueryErrors:_,setHideError:c,stats:y,isLoading:p,onHideQuery:x,onRunQuery:E,abortFetch:C,hideButtons:{reduceMemUsage:!0}}),e(Nd,{traces:T,displayType:n}),L&&e(le,{variant:"error",children:f}),k&&e(le,{variant:"info",children:e(wd,{})}),e(Si,{}),S&&e(tr,{warning:S,query:r,onChange:m}),e("div",{className:I({"vm-custom-panel-body":!0,"vm-custom-panel-body_mobile":t,"vm-block":!0,"vm-block_mobile":t}),children:[p&&e(er,{}),e("div",{className:"vm-custom-panel-body-header",ref:u,children:[e("div",{className:"vm-custom-panel-body-header__tabs",children:e(Es,{})}),(b||v)&&e(Ni,{fetchUrl:h})]}),e(yi,{graphData:b,liveData:v,isHistogram:w,displayType:n,controlsRef:u})]})]})},Pm=({title:t,description:n,unit:r,expr:a,showLegend:o,filename:s,alias:i})=>{const{isMobile:l}=J(),{period:c}=ge(),{customStep:d}=He(),m=Be(),u=q(null),[h,p]=N(!1),[v,b]=N(!1),[f,g]=N({limits:{enable:!1,range:{1:[0,0]}}}),_=M(()=>Array.isArray(a)&&a.every(E=>E),[a]),{isLoading:y,graphData:S,error:T,warning:w}=Xn({predefinedQuery:_?a:[],display:Ne.chart,visible:h,customStep:d}),C=E=>{const P={...f};P.limits.range=E,g(P)},k=()=>{const E={...f};E.limits.enable=!E.limits.enable,g(E)},L=({from:E,to:P})=>{m({type:"SET_PERIOD",payload:{from:E,to:P}})};return A(()=>{const E=new IntersectionObserver(P=>{P.forEach(F=>p(F.isIntersecting))},{threshold:.1});return u.current&&E.observe(u.current),()=>{u.current&&E.unobserve(u.current)}},[u]),_?e("div",{className:"vm-predefined-panel",ref:u,children:[e("div",{className:"vm-predefined-panel-header",children:[e(j,{title:e(()=>e("div",{className:"vm-predefined-panel-header__description vm-default-styles",children:[n&&e(V,{children:[e("div",{children:[e("span",{children:"Description:"}),e("div",{dangerouslySetInnerHTML:{__html:Bt(n)}})]}),e("hr",{})]}),e("div",{children:[e("span",{children:"Queries:"}),e("div",{children:a.map((E,P)=>e("div",{children:E},`${P}_${E}`))})]})]}),{}),children:e("div",{className:"vm-predefined-panel-header__info",children:e(mt,{})})}),e("h3",{className:"vm-predefined-panel-header__title",children:t||""}),e(Qa,{data:S||[],yaxis:f,setYaxisLimits:C,toggleEnableLimits:k,spanGaps:{value:v,onChange:b}})]}),e("div",{className:"vm-predefined-panel-body",children:[y&&e(Qe,{}),T&&e(le,{variant:"error",children:T}),w&&e(le,{variant:"warning",children:w}),S&&e(ar,{isPredefinedPanel:!0,data:S,period:c,customStep:d,query:a,yaxis:f,unit:r,alias:i,showLegend:o,setYaxisLimits:C,setPeriod:L,fullWidth:!1,height:l?window.innerHeight*.5:500,spanGaps:v})]})]}):e(le,{variant:"error",children:[e("code",{children:'"expr"'})," not found. Check the configuration file ",e("b",{children:s}),"."]})},Dm=({index:t,title:n,panels:r,filename:a})=>{const o=Pt(),s=M(()=>o.width/12,[o]),[i,l]=N(!t),[c,d]=N([]);A(()=>{d(r&&r.map(_=>_.width||12))},[r]);const[m,u]=N({start:0,target:0,enable:!1}),h=W(_=>{if(!m.enable)return;const{start:y}=m,S=Math.ceil((y-_.clientX)/s);if(Math.abs(S)>=12)return;const T=c.map((w,C)=>w-(C===m.target?S:0));d(T)},[m,s]),p=(_,y)=>{u({start:_.clientX,target:y,enable:!0})},v=W(()=>{u({...m,enable:!1})},[m]),b=_=>l(_),f=_=>y=>{p(y,_)};return me("mousemove",h),me("mouseup",v),e("div",{className:"vm-predefined-dashboard",children:e(Kn,{defaultExpanded:i,onChange:b,title:e(()=>e("div",{className:I({"vm-predefined-dashboard-header":!0,"vm-predefined-dashboard-header_open":i}),children:[(n||a)&&e("span",{className:"vm-predefined-dashboard-header__title",children:n||`${t+1}. ${a}`}),r&&e("span",{className:"vm-predefined-dashboard-header__count",children:["(",r.length," panels)"]})]}),{}),children:e("div",{className:"vm-predefined-dashboard-panels",children:Array.isArray(r)&&r.length?r.map((_,y)=>e("div",{className:"vm-predefined-dashboard-panels-panel vm-block vm-block_empty-padding",style:{gridColumn:`span ${c[y]}`},children:[e(Pm,{title:_.title,description:_.description,unit:_.unit,expr:_.expr,alias:_.alias,filename:a,showLegend:_.showLegend}),e("button",{className:"vm-predefined-dashboard-panels-panel__resizer",onMouseDown:f(y),"aria-label":"resize the panel"})]},y)):e("div",{className:"vm-predefined-dashboard-panels-panel__alert",children:e(le,{variant:"error",children:[e("code",{children:'"panels"'})," not found. Check the configuration file ",e("b",{children:a}),"."]})})})})})};function Om(t,n){return Object.fromEntries(Object.entries(t).filter(n))}function Ti(t){return Om(t,n=>!!n[1]||typeof n[1]=="number")}function Rm(t){return Object.keys(t).length===0}const $m=()=>{const{duration:t,relativeTime:n,period:{date:r}}=ge(),{customStep:a}=He(),{setSearchParamsFromKeys:o}=rt(),s=()=>{const i=Ti({"g0.range_input":t,"g0.end_input":r,"g0.step_input":a,"g0.relative_time":n});o(i)};A(s,[t,n,r,a]),A(s,[])},Fm=()=>{$m();const{isMobile:t}=J(),{dashboardsSettings:n,dashboardsLoading:r,dashboardsError:a}=Ms(),[o,s]=N(0),i=M(()=>n.map((p,v)=>({label:p.title||"",value:v})),[n]),l=M(()=>n[o]||{},[n,o]),c=M(()=>l==null?void 0:l.rows,[l]),d=M(()=>l.title||l.filename||"",[l]),m=M(()=>Array.isArray(c)&&!!c.length,[c]),u=p=>{s(p)},h=p=>()=>{u(p)};return e("div",{className:"vm-predefined-panels",children:[r&&e(Qe,{}),!n.length&&a&&e(le,{variant:"error",children:a}),!n.length&&e(le,{variant:"info",children:"Dashboards not found"}),i.length>1&&e("div",{className:I({"vm-predefined-panels-tabs":!0,"vm-predefined-panels-tabs_mobile":t}),children:i.map(p=>e("div",{className:I({"vm-predefined-panels-tabs__tab":!0,"vm-predefined-panels-tabs__tab_active":p.value==o}),onClick:h(p.value),children:p.label},p.value))}),e("div",{className:"vm-predefined-panels__dashboards",children:[m&&c.map((p,v)=>e(Dm,{index:v,filename:d,title:p.title,panels:p.panels},`${o}_${v}`)),!!n.length&&!m&&e(le,{variant:"error",children:[e("code",{children:'"rows"'})," not found. Check the configuration file ",e("b",{children:d}),"."]})]})]})},br=(t,n)=>{const r=n.match?"&match[]="+encodeURIComponent(n.match):"",a=n.focusLabel?"&focusLabel="+encodeURIComponent(n.focusLabel):"";return`${t}/api/v1/status/tsdb?topN=${n.topN}&date=${n.date}${r}${a}`},zm=(t,n)=>{const r=new URLSearchParams(Object.entries(n).filter(([a,o])=>o!=null)).toString();return`${t}/api/v1/status/metric_names_stats?${r}`},bn={id:"action",label:"",modifiers:["action"]},yn={id:"diff",label:"1d",info:"Shows the absolute difference compared to the previous day.",sortable:!0,modifiers:["compact"]},wn={id:"diffPercent",label:"1d %",info:"Shows the percentage difference compared to the previous day.",sortable:!0,modifiers:["compact"]},sr={id:"value",label:"Number of series",sortable:!0,modifiers:["compact"]},Hm=[{id:"name",label:"Metric name",sortable:!0},sr,{id:"requestsCount",label:"Requests count",sortable:!0,modifiers:["compact"],info:"The number of times this metric was queried since stats collection began."},{id:"lastRequestTimestamp",label:"Last request",sortable:!0,modifiers:["compact"],info:"The last time this metric was used in a query since stats collection began."},yn,wn,{id:"percentage",label:"Share in total",info:"Shows the share of a metric to the total number of series"},bn],Vm=[{id:"name",label:"Label name",sortable:!0},sr,yn,wn,{id:"percentage",label:"Share in total",info:"Shows the share of the label to the total number of series"},bn],qm=[{id:"name",label:"Label value",sortable:!0},sr,yn,wn,{id:"percentage",label:"Share in total"},bn],Um=[{id:"name",label:"Label=value pair",sortable:!0},sr,yn,wn,{id:"percentage",label:"Share in total",info:"Shows the share of the label value pair to the total number of series"},bn],Bm=[{id:"name",label:"Label name",sortable:!0},{id:"value",label:"Number of unique values",sortable:!0,modifiers:["compact"]},yn,wn,bn];class jm{constructor(){we(this,"tsdbStatus");we(this,"metricNameStats");we(this,"tabsNames");we(this,"isPrometheus");this.tsdbStatus=this.defaultTSDBStatus,this.metricNameStats=this.defaultMetricNameStats,this.tabsNames=["table","graph"],this.isPrometheus=!1,this.getDefaultState=this.getDefaultState.bind(this)}set tsdbStatusData(n){this.isPrometheus=!!(n!=null&&n.headStats),this.tsdbStatus=n}set metricNameStatsData(n){this.metricNameStats=n}get tsdbStatusData(){return this.tsdbStatus}get metricNameStatsData(){return this.metricNameStats}get defaultTSDBStatus(){return{totalSeries:0,totalSeriesPrev:0,totalSeriesByAll:0,totalLabelValuePairs:0,seriesCountByMetricName:[],seriesCountByLabelName:[],seriesCountByFocusLabelValue:[],seriesCountByLabelValuePair:[],labelValueCountByLabelName:[]}}get defaultMetricNameStats(){return{statsCollectedSince:0,statsCollectedRecordsTotal:0,trackerMemoryMaxSizeBytes:0,trackerCurrentMemoryUsageBytes:0}}get isPrometheusData(){return this.isPrometheus}keys(n,r){const a=n&&/__name__=".+"/.test(n),o=n&&/{.+=".+"}/g.test(n),s=n&&/__name__=".+", .+!=""/g.test(n);let i=[];return r||s?i=i.concat("seriesCountByFocusLabelValue"):a?i=i.concat("labelValueCountByLabelName"):o?i=i.concat("seriesCountByMetricName","seriesCountByLabelName"):i=i.concat("seriesCountByMetricName","seriesCountByLabelName","seriesCountByLabelValuePair","labelValueCountByLabelName"),i}getDefaultState(n,r){return this.keys(n,r).reduce((a,o)=>({...a,tabs:{...a.tabs,[o]:this.tabsNames},containerRefs:{...a.containerRefs,[o]:q(null)}}),{tabs:{},containerRefs:{}})}sectionsTitles(n){return{seriesCountByMetricName:"Metric names with the highest number of series",seriesCountByLabelName:"Labels with the highest number of series",seriesCountByFocusLabelValue:`Values for "${n}" 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"}}get sectionsTips(){return{seriesCountByMetricName:`
-
- This table returns a list of metrics with the highest cardinality.
- The cardinality of a metric is the number of time series associated with that metric,
- where each time series is defined as a unique combination of key-value label pairs.
-
-
- When looking to reduce the number of active series in your data source,
- you can start by inspecting individual metrics with high cardinality
- (i.e. that have lots of active time series associated with them),
- since that single metric contributes a large fraction of the series that make up your total series count.
-
`,seriesCountByLabelName:`
-
- This table returns a list of the labels with the highest number of series.
-
-
- Use this table to identify labels that are storing dimensions with high cardinality
- (many different label values).
-
-
- It is recommended to choose labels such that they have a finite set of values,
- since every unique combination of key-value label pairs creates a new time series
- and therefore can dramatically increase the number of time series in your system.
-
`,seriesCountByFocusLabelValue:`
-
- This table returns a list of unique label values per selected label.
-
-
- Use this table to identify label values that are storing per each selected series.
-
`,labelValueCountByLabelName:`
-
- This table returns a list of labels with the highest number of the unique values.
-
- `,seriesCountByLabelValuePair:`
-
- This table returns a list of the label values pairs with the highest number of series.
-
-
- Use this table to identify unique label values pairs. This helps to identify same labels
- is applied to count timeseries in your system, since every unique combination of key-value label pairs
- creates a new time series and therefore can dramatically increase the number of time series in your system
-
`}}get tablesHeaders(){return{seriesCountByMetricName:Hm,seriesCountByLabelName:Vm,seriesCountByFocusLabelValue:qm,seriesCountByLabelValuePair:Um,labelValueCountByLabelName:Bm}}totalSeries(n,r=!1){return n==="labelValueCountByLabelName"?-1:r?this.tsdbStatus.totalSeriesPrev:this.tsdbStatus.totalSeries}}const Qm=()=>{const t=new jm,[n]=oe(),r=n.get("match"),a=n.get("focusLabel"),o=+(n.get("topN")||10),s=n.get("date")||U().tz().format(kt),i=qt(s),l=q(),{serverUrl:c}=se(),[d,m]=N(!1),[u,h]=N(),[p,v]=N(t.defaultTSDBStatus),[b,f]=N(t.defaultMetricNameStats),[g,_]=N(!1),y=async C=>{const k=await fetch(C),L=await k.json();if(k.ok)return L;console.error(`Error fetching ${C}:`,L);const x=L.errorType||Ce.unknownType,E=(L==null?void 0:L.error)||(L==null?void 0:L.message)||"see console for more details",P=[x,E].join(`\r
-`);throw new Error(P)},S=(C,k)=>{Object.keys(C).forEach(L=>{const x=L,E=C[x],P=k[x];Array.isArray(E)&&Array.isArray(P)&&E.forEach(F=>{var Y;const O=(Y=P.find(G=>G.name===F.name))==null?void 0:Y.value,H=O?F.value-O:0,z=O?H/O*100:0;F.diff=H,F.diffPercent=z,F.valuePrev=O||0})})},T=async C=>{var E,P,F,O,H,z,Y,G,K,re;if(!c)return;h(""),m(!0),v(t.defaultTSDBStatus);const k={...C,date:C.date,topN:0,match:"",focusLabel:""},L={...C,date:U(C.date).subtract(1,"day").format(kt)},x=[br(c,C),br(c,L)];i!==s&&(C.match||C.focusLabel)&&x.push(br(c,k));try{const[Q,ie,X]=await Promise.all(x.map(y)),R={...ie.data},{data:$}=X||l.current||Q;l.current={data:$};const B={...Q.data,totalSeries:((E=Q.data)==null?void 0:E.totalSeries)||((F=(P=Q.data)==null?void 0:P.headStats)==null?void 0:F.numSeries)||0,totalLabelValuePairs:((O=Q.data)==null?void 0:O.totalLabelValuePairs)||((z=(H=Q.data)==null?void 0:H.headStats)==null?void 0:z.numLabelValuePairs)||0,seriesCountByLabelName:((Y=Q.data)==null?void 0:Y.seriesCountByLabelName)||[],seriesCountByFocusLabelValue:((G=Q.data)==null?void 0:G.seriesCountByFocusLabelValue)||[],totalSeriesByAll:($==null?void 0:$.totalSeries)||((K=$==null?void 0:$.headStats)==null?void 0:K.numSeries)||p.totalSeriesByAll||0,totalSeriesPrev:(R==null?void 0:R.totalSeries)||((re=R==null?void 0:R.headStats)==null?void 0:re.numSeries)||0},ee=r==null?void 0:r.replace(/[{}"]/g,"");B.seriesCountByLabelValuePair=B.seriesCountByLabelValuePair.filter(te=>te.name!==ee),S(B,R),v(B),m(!1)}catch(Q){m(!1),Q instanceof Error&&h(`${Q.name}: ${Q.message}`)}},w=async()=>{if(!c)return;h(""),m(!0);const C=zm(c,{limit:1});try{const k=await y(C);f(k),m(!1)}catch(k){m(!1),f(t.defaultMetricNameStats),console.error(k)}};return A(()=>{T({topN:o,match:r,date:s,focusLabel:a})},[c,r,a,o,s]),A(()=>{w()},[c]),A(()=>{u&&(v(t.defaultTSDBStatus),m(!1))},[u]),A(()=>{const C=dn(c);_(!!C)},[c]),t.tsdbStatusData=p,t.metricNameStatsData=b,{isLoading:d,appConfigurator:t,error:u,isCluster:g}},Ym={seriesCountByMetricName:({query:t})=>yr("__name__",t),seriesCountByLabelName:({query:t})=>`{${t}!=""}`,seriesCountByFocusLabelValue:({query:t,focusLabel:n})=>yr(n,t),seriesCountByLabelValuePair:({query:t})=>{const n=t.split("="),r=n[0],a=n.slice(1).join("=");return yr(r,a)},labelValueCountByLabelName:({query:t,match:n})=>n===""?`{${t}!=""}`:`${n.replace("}","")}, ${t}!=""}`},yr=(t,n)=>t?"{"+t+"="+JSON.stringify(n)+"}":"",Gm=({metricNameStats:t})=>{const{statsCollectedSince:n,statsCollectedRecordsTotal:r=0,trackerMemoryMaxSizeBytes:a=0,trackerCurrentMemoryUsageBytes:o=0}=t,s=n?U.unix(n).format(qe):" - ",i=a?`${(o/a*100).toFixed(2)}%`:" - ",l=r.toLocaleString("en-US");return e("div",{className:"vm-cardinality-totals-card",children:[e("h4",{className:"vm-cardinality-totals-card__title",children:[e(j,{placement:"bottom-left",title:e("div",{className:"vm-cardinality-totals-card__tooltip",children:n?e(V,{children:[e("p",{children:["Total entries in cache since ",s]}),e("p",{children:["Cache utilization: ",i]})]}):e(V,{children:[e("p",{children:"Metric names tracker is likely disabled."}),e("p",{children:"No data available. See documentation for enabling the metric names tracker."})]})}),children:e("div",{className:"vm-cardinality-totals-card__info-icon",children:e(un,{})})}),"Total metric names"]}),e("span",{className:"vm-cardinality-totals-card__value",children:l}),e("span",{className:"vm-cardinality-totals-card__link",children:e(Te,{href:"https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#track-ingested-metrics-usage",children:"Docs ↗"})})]})},Wm=({totalSeries:t=0,totalSeriesPrev:n=0,totalSeriesAll:r=0,seriesCountByMetricName:a=[],metricNameStats:o,isPrometheus:s})=>{var b;const{isMobile:i}=J(),[l]=oe(),c=l.get("match"),d=l.get("focusLabel"),m=/__name__/.test(c||""),u=((b=a[0])==null?void 0:b.value)/r*100,h=t-n,p=Math.abs(h)/n*100,v=[{title:"Total series",value:t.toLocaleString("en-US"),dynamic:!t||!n||s?"":`${p.toFixed(2)}%`,display:!d,info:`The total number of unique time series for a selected day.
- A time series is uniquely identified by its name plus a set of its labels.
- For example, temperature{city="NY",country="US"} and temperature{city="SF",country="US"}
- are two distinct series, since they differ by the "city" label.`},{title:"Percentage from total",value:isNaN(u)?"-":`${u.toFixed(2)}%`,display:m,info:"The share of these series in the total number of time series."}].filter(f=>f.display);return v.length?e("div",{className:I({"vm-cardinality-totals":!0,"vm-cardinality-totals_mobile":i}),children:[v.map(({title:f,value:g,info:_,dynamic:y})=>e("div",{className:"vm-cardinality-totals-card",children:[e("h4",{className:"vm-cardinality-totals-card__title",children:[_&&e(j,{title:e("p",{className:"vm-cardinality-totals-card__tooltip",children:_}),children:e("div",{className:"vm-cardinality-totals-card__info-icon",children:e(un,{})})}),f]}),e("span",{className:"vm-cardinality-totals-card__value",children:g}),!!y&&e(j,{title:`in relation to the previous day: ${n.toLocaleString("en-US")}`,placement:"bottom-left",children:e("span",{className:I({"vm-dynamic-number":!0,"vm-dynamic-number_positive vm-dynamic-number_down":h<0,"vm-dynamic-number_negative vm-dynamic-number_up":h>0}),children:y})})]},f)),e(Gm,{metricNameStats:o})]}):null},Se=(t,n)=>{const[r]=oe(),a=r.get(n)?r.get(n):t,[o,s]=N(a);return A(()=>{a!==o&&s(a)},[a]),[o,s]},Jm=({isPrometheus:t,isCluster:n,...r})=>{const{isMobile:a}=J(),[o]=oe(),{setSearchParamsFromKeys:s}=rt(),i=o.get("tips")||"",[l,c]=Se("","match"),[d,m]=Se("","focusLabel"),[u,h]=Se(10,"topN"),p=M(()=>u<0?"Number must be bigger than zero":"",[u]),v=_=>{const y=+_;h(isNaN(y)?0:y)},b=()=>{s({match:l,topN:u,focusLabel:d})},f=()=>{s({match:"",focusLabel:""})},g=()=>{const _=o.get("tips")||"";s({tips:_?"":"true"})};return A(()=>{const _=o.get("match"),y=+(o.get("topN")||10),S=o.get("focusLabel");_!==l&&c(_||""),y!==u&&h(y),S!==d&&m(S||"")},[o]),e("div",{className:I({"vm-cardinality-configurator":!0,"vm-cardinality-configurator_mobile":a,"vm-block":!0,"vm-block_mobile":a}),children:[e("div",{className:"vm-cardinality-configurator-controls",children:[e("div",{className:"vm-cardinality-configurator-controls__query",children:e(ce,{label:"Time series selector",type:"string",value:l,onChange:c,onEnter:b})}),e("div",{className:"vm-cardinality-configurator-controls__item",children:e(ce,{label:"Focus label",type:"text",value:d||"",onChange:m,onEnter:b,endIcon:e(j,{title:e("div",{children:e("p",{children:"To identify values with the highest number of series for the selected label."})}),children:e(la,{})})})}),e("div",{className:"vm-cardinality-configurator-controls__item vm-cardinality-configurator-controls__item_limit",children:e(ce,{label:"Limit entries",type:"number",value:t?10:u,error:p,disabled:t,helperText:t?"not available for Prometheus":"",onChange:v,onEnter:b})})]}),e("div",{className:"vm-cardinality-configurator-bottom",children:[e(Wm,{isPrometheus:t,isCluster:n,...r}),n&&e("div",{className:"vm-cardinality-configurator-bottom-helpful",children:e(Te,{href:"https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#cardinality-explorer-statistic-inaccuracy",withIcon:!0,children:[e(ut,{}),"Statistic inaccuracy explanation"]})}),e("div",{className:"vm-cardinality-configurator-bottom-helpful",children:e(Te,{href:"https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#cardinality-explorer",withIcon:!0,children:[e(ut,{}),"Documentation"]})}),e("div",{className:"vm-cardinality-configurator-bottom__execute",children:[e(j,{title:i?"Hide tips":"Show tips",children:e(D,{variant:"text",color:i?"warning":"gray",startIcon:e(vn,{}),onClick:g,ariaLabel:"visibility tips"})}),e(D,{variant:"text",startIcon:e(ct,{}),onClick:f,children:"Reset"}),e(D,{startIcon:e(nt,{}),onClick:b,children:"Execute Query"})]})]})]})};function Km(t){const{order:n,orderBy:r,onRequestSort:a,headerCells:o}=t,s=i=>l=>{a(l,i)};return e("thead",{className:"vm-table-header vm-cardinality-panel-table__header",children:e("tr",{className:"vm-table__row vm-table__row_header",children:o.map(i=>e("th",{className:I({"vm-table-cell vm-table-cell_header":!0,"vm-table-cell_sort":i.sortable,"vm-table-cell_right":i.id==="action"}),onClick:i.sortable?s(i.id):void 0,children:e("div",{className:"vm-table-cell__content",children:[i.info&&e(j,{title:i.info,children:e("div",{className:"vm-metrics-content-header__tip-icon",children:e(un,{})})}),i.label,i.sortable&&e("div",{className:I({"vm-table__sort-icon":!0,"vm-table__sort-icon_active":r===i.id,"vm-table__sort-icon_desc":n==="desc"&&r===i.id}),children:e(Je,{})})]})},i.id))})})}const Zm=["date","timestamp","time"];function So(t,n,r){const a=t[r],o=n[r];if(a==null&&o==null)return 0;if(a==null)return 1;if(o==null)return-1;const s=String(a),i=String(o);if(Zm.includes(String(r))){const u=oo(s),h=oo(i);return hu?1:0}const c=Number(s),d=Number(i);return!isNaN(c)&&!isNaN(d)?d-c:is?1:0}function Wa(t,n){return t==="desc"?(r,a)=>So(r,a,n):(r,a)=>-So(r,a,n)}function Ja(t,n){const r=t.map((a,o)=>[a,o]);return r.sort((a,o)=>{const s=n(a[0],o[0]);return s!==0?s:a[1]-o[1]}),r.map(a=>a[0])}const Xm=({rows:t,headerCells:n,defaultSortColumn:r,tableCells:a})=>{const[o,s]=N("desc"),[i,l]=N(r),c=(m,u)=>{s(i===u&&o==="asc"?"desc":"asc"),l(u)},d=Ja(t,Wa(o,i));return e("table",{className:"vm-table vm-cardinality-panel-table",children:[e(Km,{order:o,orderBy:i,onRequestSort:c,rowCount:t.length,headerCells:n}),e("tbody",{className:"vm-table-header",children:d.map(m=>e("tr",{className:"vm-table__row",children:a(m)},m.name))})]})},eu=({row:t,tableHeaderCells:n,totalSeries:r,totalSeriesPrev:a,onActionClick:o})=>{const s=r>0?t.value/r*100:-1,i=a>0?t.valuePrev/a*100:-1,l=[s,i].some(x=>x===-1),c=t.value.toLocaleString("en-US"),d=t.valuePrev.toLocaleString("en-US"),m=Math.abs(t.diff).toLocaleString("en-US"),u=s-i,h=l?"":`${Math.abs(u).toFixed(2)}%`,p=`${Math.abs(t.diffPercent).toFixed(2)}%`,v=t.requestsCount===0,f=t.requestsCount==null?"n/a":t.requestsCount.toLocaleString("en-US"),g=t.lastRequestTimestamp===0,_=t.lastRequestTimestamp==null,y=!g&&!_,S=g?"never":"n/a",T=y?U().diff(t.lastRequestTimestamp*1e3,"seconds"):0,w=y?U.unix(t.lastRequestTimestamp).format(qe):"-",C=y?U.duration(-T,"seconds").humanize(!0):S,k=()=>{o(t.name)},L=x=>{switch(x.id){case"name":return e("span",{className:"vm-link vm-link_colored",onClick:k,children:t.name});case"value":return c;case"requestsCount":return e("div",{className:I({"vm-dynamic-number":!0,"vm-dynamic-number_negative":v}),children:f});case"lastRequestTimestamp":return e(j,{title:`${w}`,children:e("span",{className:I({"vm-dynamic-number":!0,"vm-dynamic-number_negative":g||T>=30*86400,"vm-dynamic-number_warning":T>=7*86400&&T<30*86400}),children:C})});case"diff":return e(j,{title:`in relation to the previous day: ${d}`,children:e("span",{className:I({"vm-dynamic-number":!0,"vm-dynamic-number_positive vm-dynamic-number_down":t.diff<0,"vm-dynamic-number_negative vm-dynamic-number_up":t.diff>0}),children:m})});case"diffPercent":return e(j,{title:`in relation to the previous day: ${d}`,children:e("div",{className:I({"vm-dynamic-number":!0,"vm-dynamic-number_positive vm-dynamic-number_down":t.diff<0,"vm-dynamic-number_negative vm-dynamic-number_up":t.diff>0}),children:p})});case"percentage":return e("div",{className:"vm-cardinality-panel-table__progress",children:[e(Js,{value:s,hideValue:!0}),e("span",{className:"vm-dynamic-number vm-dynamic-number_static",children:[s.toFixed(2),"%"]}),e(j,{title:"in relation to the previous day",children:e("span",{className:I({"vm-dynamic-number":!0,"vm-dynamic-number_no-change":u===0,"vm-dynamic-number_positive vm-dynamic-number_down":u<0,"vm-dynamic-number_negative vm-dynamic-number_up":u>0}),children:h})})]});case"action":return e("div",{className:"vm-table-cell__content",children:e(j,{title:e("span",{children:["Filter by ",e("code",{children:["`",t.name,"`"]})]}),children:e(D,{variant:"text",size:"small",onClick:k,startIcon:e(hn,{})})})});default:return st(t,x.id,"")}};return e(V,{children:n.map(x=>{var E;return e("td",{className:I("vm-table-cell",...((E=x.modifiers)==null?void 0:E.map(P=>`vm-table-cell_${P}`))??[]),children:L(x)},x.id)})})},tu=({data:t})=>{const[n,r]=N([]),[a,o]=N([0,0]),s=i=>{const l=i.map(u=>u.value),c=Math.ceil(l[0]||1),d=10,m=c/(d-1);return new Array(d+1).fill(c+m).map((u,h)=>Math.round(u-m*h))};return A(()=>{const i=t.sort((c,d)=>d.value-c.value),l=s(i);o(l),r(i.map(c=>({...c,percentage:c.value/l[0]*100})))},[t]),e("div",{className:"vm-simple-bar-chart",children:[e("div",{className:"vm-simple-bar-chart-y-axis",children:a.map(i=>e("div",{className:"vm-simple-bar-chart-y-axis__tick",children:i},i))}),e("div",{className:"vm-simple-bar-chart-data",children:n.map(({name:i,value:l,percentage:c})=>e(j,{title:`${i}: ${l}`,placement:"top-center",children:e("div",{className:"vm-simple-bar-chart-data-item",style:{maxHeight:`${c||0}%`}})},`${i}_${l}`))})]})},nu=({rows:t,tabs:n=[],chartContainer:r,totalSeries:a,totalSeriesPrev:o,onActionClick:s,sectionTitle:i,tip:l,tableHeaderCells:c,isPrometheus:d})=>{const{isMobile:m}=J(),[u,h]=N("table"),p=d&&!t.length,v=f=>e(eu,{row:f,tableHeaderCells:c,totalSeries:a,totalSeriesPrev:o,onActionClick:s}),b=M(()=>n.map((f,g)=>({value:f,label:f,icon:g===0?e(pn,{}):e(aa,{})})),[n]);return e("div",{className:I({"vm-metrics-content":!0,"vm-metrics-content_mobile":m,"vm-block":!0,"vm-block_mobile":m}),children:[e("div",{className:"vm-metrics-content-header vm-section-header",children:[e("h5",{className:I({"vm-metrics-content-header__title":!0,"vm-section-header__title":!0,"vm-section-header__title_mobile":m}),children:[!m&&l&&e(j,{title:e("p",{dangerouslySetInnerHTML:{__html:l},className:"vm-metrics-content-header__tip"}),children:e("div",{className:"vm-metrics-content-header__tip-icon",children:e(un,{})})}),i]}),e("div",{className:"vm-section-header__tabs",children:e(Yt,{activeItem:u,items:b,onChange:h})})]}),p&&e("div",{className:"vm-metrics-content-prom-data",children:[e("div",{className:"vm-metrics-content-prom-data__icon",children:e(mt,{})}),e("h3",{className:"vm-metrics-content-prom-data__title",children:"Prometheus Data Limitation"}),e("p",{className:"vm-metrics-content-prom-data__text",children:["Due to missing data from your Prometheus source, some tables may appear empty.",e("br",{}),"This does not indicate an issue with your system or our tool."]})]}),!p&&u==="table"&&e("div",{ref:r,className:I({"vm-metrics-content__table":!0,"vm-metrics-content__table_mobile":m}),children:e(Xm,{rows:t,headerCells:c,defaultSortColumn:"value",tableCells:v})}),!p&&u==="graph"&&e("div",{className:"vm-metrics-content__chart",children:e(tu,{data:t.map(({name:f,value:g})=>({name:f,value:g}))})})]})},ir=({title:t,children:n})=>e("div",{className:"vm-cardinality-tip",children:[e("div",{className:"vm-cardinality-tip-header",children:[e("div",{className:"vm-cardinality-tip-header__tip-icon",children:e(vn,{})}),e("h4",{className:"vm-cardinality-tip-header__title",children:t||"Tips"})]}),e("p",{className:"vm-cardinality-tip__description",children:n})]}),ru=()=>e(ir,{title:"Metrics with a high number of series",children:e("ul",{children:[e("li",{children:["Identify and eliminate labels with frequently changed values to reduce their ",e(Te,{href:"https://docs.victoriametrics.com/victoriametrics/faq/#what-is-high-cardinality",children:"cardinality"})," and ",e(Te,{href:"https://docs.victoriametrics.com/victoriametrics/faq/#what-is-high-churn-rate",children:"high churn rate"})]}),e("li",{children:["Find unused time series and ",e(Te,{href:"https://docs.victoriametrics.com/victoriametrics/relabeling/",children:"drop entire metrics"})]}),e("li",{children:["Aggregate time series before they got ingested into the database via ",e(Te,{href:"https://docs.victoriametrics.com/victoriametrics/stream-aggregation/",children:"streaming aggregation"})]})]})}),au=()=>e(ir,{title:"Labels with a high number of unique values",children:e("ul",{children:[e("li",{children:"Decrease the number of unique label values to reduce cardinality"}),e("li",{children:["Drop the label entirely via ",e(Te,{href:"https://docs.victoriametrics.com/victoriametrics/relabeling/",children:"relabeling"})]}),e("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"})]})}),ou=()=>e(ir,{title:"Dashboard of a single metric",children:[e("p",{children:"This dashboard helps to understand the cardinality of a single metric."}),e("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’re trying to decrease the cardinality of a metric, start by looking at the labels with the highest number of values."}),e("p",{children:"Use the series selector at the top of the page to apply additional filters."})]}),su=()=>e(ir,{title:"Dashboard of a label",children:[e("p",{children:"This dashboard helps you understand the count of time series per label."}),e("p",{children:"Use the selector at the top of the page to pick a label name you’d like to inspect. For the selected label name, you’ll see the label values that have the highest number of series associated with them. So if you’ve chosen `instance` as your label name, you may see that `657` time series have value “host-1” attached to them and `580` time series have value `host-2` attached to them."}),e("p",{children:"This can be helpful in allowing you to determine where the bulk of your time series are coming from. If the label “instance=host-1” was applied to 657 series and the label “instance=host-2” was only applied to 580 series, you’d know, for example, that host-01 was responsible for sending the majority of the time series."})]}),iu=`Please wait while cardinality stats is calculated.
- This may take some time if the db contains big number of time series.`,lu=()=>{const{isMobile:t}=J(),[n]=oe(),{setSearchParamsFromKeys:r}=rt(),a=n.get("tips")||"",o=n.get("match")||"",s=n.get("focusLabel")||"",{isLoading:i,appConfigurator:l,error:c,isCluster:d}=Qm(),{tsdbStatusData:m,metricNameStatsData:u,getDefaultState:h,tablesHeaders:p,sectionsTips:v}=l,b=h(o,s),f=g=>_=>{const S={match:Ym[g]({query:_,focusLabel:s,match:o})};(g==="labelValueCountByLabelName"||g=="seriesCountByLabelName")&&(S.focusLabel=_),g=="seriesCountByFocusLabelValue"&&(S.focusLabel=""),r(S)};return e("div",{className:I({"vm-cardinality-panel":!0,"vm-cardinality-panel_mobile":t}),children:[i&&e(Qe,{message:iu}),e(Jm,{isPrometheus:l.isPrometheusData,totalSeries:m.totalSeries,totalSeriesPrev:m.totalSeriesPrev,totalSeriesAll:m.totalSeriesByAll,totalLabelValuePairs:m.totalLabelValuePairs,seriesCountByMetricName:m.seriesCountByMetricName,metricNameStats:u,isCluster:d}),a&&e("div",{className:"vm-cardinality-panel-tips",children:[!o&&!s&&e(ru,{}),o&&!s&&e(ou,{}),!o&&!s&&e(au,{}),s&&e(su,{})]}),c&&e(le,{variant:"error",children:c}),l.keys(o,s).map(g=>e(nu,{sectionTitle:l.sectionsTitles(s)[g],tip:v[g],rows:m[g],onActionClick:f(g),tabs:b.tabs[g],chartContainer:b.containerRefs[g],totalSeriesPrev:l.totalSeries(g,!0),totalSeries:l.totalSeries(g),tableHeaderCells:p[g],isPrometheus:l.isPrometheusData},g))]})},cu=(t,n,r)=>`${t}/api/v1/status/top_queries?topN=${n||""}&maxLifetime=${r||""}`,du=(t,n)=>{var i;const{query:r,timeRangeSeconds:a}=t,o=[`g0.expr=${encodeURIComponent(r)}`],s=(i=nn.find(l=>l.duration===n))==null?void 0:i.id;return s&&o.push(`g0.relative_time=${s}`),a&&o.push(`g0.range_input=${n}`),`${Z.home}?${o.join("&")}`},mu=t=>(["topByAvgDuration","topByCount","topBySumDuration"].forEach(r=>{const a=t[r];Array.isArray(a)&&a.forEach(o=>{const s=Qn(o.timeRangeSeconds*1e3);o.url=du(o,s),o.timeRange=s})}),t),uu=({topN:t,maxLifetime:n})=>{const{serverUrl:r}=se(),{setSearchParamsFromKeys:a}=rt(),[o,s]=N(null),[i,l]=N(!1),[c,d]=N(),m=M(()=>cu(r,t,n),[r,t,n]);return{data:o,error:c,loading:i,fetch:async()=>{l(!0),a({topN:t,maxLifetime:n});try{const h=await fetch(m),p=await h.json();s(h.ok?mu(p):null),d(String(p.error||""))}catch(h){h instanceof Error&&h.name!=="AbortError"&&d(`${h.name}: ${h.message}`)}l(!1)}}},hu=({rows:t,columns:n,defaultOrderBy:r})=>{const a=Fe(),[o,s]=N(r||"count"),[i,l]=N("desc"),c=M(()=>Ja(t,Wa(i,o)),[t,o,i]),d=h=>{l(p=>p==="asc"&&o===h?"desc":"asc"),s(h)},m=h=>()=>{d(h)},u=({query:h})=>async()=>{await a(h,"Query has been copied")};return e("table",{className:"vm-table",children:[e("thead",{className:"vm-table-header",children:e("tr",{className:"vm-table__row vm-table__row_header",children:[n.map(h=>e("th",{className:"vm-table-cell vm-table-cell_header vm-table-cell_sort",onClick:m(h.sortBy||h.key),children:e("div",{className:"vm-table-cell__content",children:[h.title||h.key,e("div",{className:I({"vm-table__sort-icon":!0,"vm-table__sort-icon_active":o===h.key,"vm-table__sort-icon_desc":i==="desc"&&o===h.key}),children:e(Je,{})})]})},h.key)),e("th",{className:"vm-table-cell vm-table-cell_header"})," "]})}),e("tbody",{className:"vm-table-body",children:c.map((h,p)=>e("tr",{className:"vm-table__row",children:[n.map(v=>e("td",{className:"vm-table-cell",children:h[v.key]||"-"},v.key)),e("td",{className:"vm-table-cell vm-table-cell_no-padding",children:e("div",{className:"vm-top-queries-panels__table-actions",children:[h.url&&e(j,{title:"Execute query",children:e(Bn,{to:h.url,target:"_blank",rel:"noreferrer","aria-disabled":!0,children:e(D,{variant:"text",size:"small",startIcon:e(hn,{}),ariaLabel:"execute query"})})}),e(j,{title:"Copy query",children:e(D,{variant:"text",size:"small",startIcon:e(Xe,{}),onClick:u(h),ariaLabel:"copy query"})})]})})]},p))})]})},pu=["table","JSON"].map((t,n)=>({value:String(n),label:t,icon:n===0?e(pn,{}):e(It,{})})),wr=({rows:t,title:n,columns:r,defaultOrderBy:a})=>{const{isMobile:o}=J(),[s,i]=N(0),l=c=>{i(+c)};return e("div",{className:I({"vm-top-queries-panel":!0,"vm-block":!0,"vm-block_mobile":o}),children:[e("div",{className:I({"vm-top-queries-panel-header":!0,"vm-section-header":!0,"vm-top-queries-panel-header_mobile":o}),children:[e("h5",{className:I({"vm-section-header__title":!0,"vm-section-header__title_mobile":o}),children:n}),e("div",{className:"vm-section-header__tabs",children:e(Yt,{activeItem:String(s),items:pu,onChange:l})})]}),e("div",{className:I({"vm-top-queries-panel__table":!0,"vm-top-queries-panel__table_mobile":o}),children:[s===0&&e(hu,{rows:t,columns:r,defaultOrderBy:a}),s===1&&e(or,{data:t})]})]})},gu="30ms, 15s, 3d4h, 1y2w",vu=()=>{const{isMobile:t}=J(),[n,r]=Se(10,"topN"),[a,o]=Se("10m","maxLifetime"),{data:s,error:i,loading:l,fetch:c}=uu({topN:n,maxLifetime:a}),d=M(()=>{const _=a.trim().split(" ").reduce((S,T)=>{const w=es(T);return w?{...S,...w}:{...S}},{});return!!U.duration(_).asMilliseconds()},[a]),m=M(()=>!!n&&n<1,[n]),u=M(()=>m?"Number must be bigger than zero":"",[m]),h=M(()=>d?"":"Invalid duration value",[d]),p=g=>{if(!s)return g;const _=s[g];return typeof _=="number"?bt(_,_,_):_||g},v=g=>{r(+g)},b=g=>{o(g)},f=g=>{g.key==="Enter"&&c()};return A(()=>{s&&(n||r(+s.topN),a||o(s.maxLifetime))},[s]),A(()=>(c(),window.addEventListener("popstate",c),()=>{window.removeEventListener("popstate",c)}),[]),e("div",{className:I({"vm-top-queries":!0,"vm-top-queries_mobile":t}),children:[l&&e(Qe,{containerStyles:{height:"500px"}}),e("div",{className:I({"vm-top-queries-controls":!0,"vm-block":!0,"vm-block_mobile":t}),children:[e("div",{className:"vm-top-queries-controls-fields",children:[e("div",{className:"vm-top-queries-controls-fields__item",children:e(ce,{label:"Max lifetime",value:a,error:h,helperText:`For example ${gu}`,onChange:b,onKeyDown:f})}),e("div",{className:"vm-top-queries-controls-fields__item",children:e(ce,{label:"Number of returned queries",type:"number",value:n||"",error:u,onChange:v,onKeyDown:f})})]}),e("div",{className:I({"vm-top-queries-controls-bottom":!0,"vm-top-queries-controls-bottom_mobile":t}),children:[e("div",{className:"vm-top-queries-controls-bottom__info",children:["VictoriaMetrics tracks the last ",e(j,{title:"search.queryStats.lastQueriesCount",children:e("b",{children:p("search.queryStats.lastQueriesCount")})})," queries with durations at least ",e(j,{title:"search.queryStats.minQueryDuration",children:e("b",{children:p("search.queryStats.minQueryDuration")})})]}),e("div",{className:"vm-top-queries-controls-bottom__button",children:e(D,{startIcon:e(nt,{}),onClick:c,children:"Execute"})})]})]}),i&&e(le,{variant:"error",children:i}),s&&e(V,{children:e("div",{className:"vm-top-queries-panels",children:[e(wr,{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"}),e(wr,{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"}),e(wr,{rows:s.topByCount,title:"Most frequently executed queries",columns:[{key:"query"},{key:"timeRange",sortBy:"timeRangeSeconds",title:"query time interval"},{key:"count"}]})]})})]})},Cr={"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.2)","color-log-hits-bar-0":"rgba(255, 255, 255, 0.18)","color-log-hits-bar-1":"#FFB74D","color-log-hits-bar-2":"#81C784","color-log-hits-bar-3":"#64B5F6","color-log-hits-bar-4":"#E57373","color-log-hits-bar-5":"#8a62f0"},Nr={"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)","color-log-hits-bar-0":"rgba(0, 0, 0, 0.18)","color-log-hits-bar-1":"#FFB74D","color-log-hits-bar-2":"#81C784","color-log-hits-bar-3":"#64B5F6","color-log-hits-bar-4":"#E57373","color-log-hits-bar-5":"#8a62f0"},fu=()=>{const[t,n]=N(Dn()),r=a=>{n(a.matches)};return A(()=>{const a=window.matchMedia("(prefers-color-scheme: dark)");return a.addEventListener("change",r),()=>a.removeEventListener("change",r)},[]),t},Sr=["primary","secondary","error","warning","info","success"],Ka=({onLoaded:t})=>{const n=Ee(),{palette:r={}}=cn(),{theme:a}=se(),o=fu(),s=xt(),i=Pt(),[l,c]=N({[Ge.dark]:Cr,[Ge.light]:Nr,[Ge.system]:Dn()?Cr:Nr}),d=()=>{const{innerWidth:v,innerHeight:b}=window,{clientWidth:f,clientHeight:g}=document.documentElement;Rt("scrollbar-width",`${v-f}px`),Rt("scrollbar-height",`${b-g}px`),Rt("vh",`${b*.01}px`)},m=()=>{Sr.forEach((v,b)=>{const f=tt(`color-${v}`),g=Dd(f);Rt(`${v}-text`,g),b===Sr.length-1&&(s({type:"SET_DARK_THEME"}),t(!0))})},u=()=>{Sr.forEach(v=>{const b=r[v];b&&Rt(`color-${v}`,b)}),m()},h=()=>{const v=Ae("THEME")||Ge.system,b=l[v];Object.entries(b).forEach(([f,g])=>{Rt(f,g)}),m(),n&&u()},p=()=>{const v=Dn()?Cr:Nr;if(l[Ge.system]===v){h();return}c(b=>({...b,[Ge.system]:v}))};return A(()=>{d(),h()},[l]),A(d,[i]),A(p,[a,o]),A(()=>{n&&s({type:"SET_THEME",payload:Ge.light})},[]),null},Li=()=>{const[t,n]=N([]),[r,a]=N(!1),o=q(document.body),s=d=>{const m=Array.from(d||[]);n(m)},i=d=>{d.preventDefault(),d.stopPropagation(),d.type==="dragenter"||d.type==="dragover"?a(!0):d.type==="dragleave"&&a(!1)},l=d=>{var m;d.preventDefault(),d.stopPropagation(),a(!1),(m=d==null?void 0:d.dataTransfer)!=null&&m.files&&d.dataTransfer.files[0]&&s(d.dataTransfer.files)},c=d=>{var h;const m=(h=d.clipboardData)==null?void 0:h.items;if(!m)return;const u=Array.from(m).filter(p=>p.type==="application/json").map(p=>p.getAsFile()).filter(p=>p!==null);n(u)};return me("dragenter",i,o),me("dragleave",i,o),me("dragover",i,o),me("drop",l,o),me("paste",c,o),{files:t,dragging:r}},Vn=({onOpenModal:t,onChange:n})=>e("div",{className:"vm-upload-json-buttons",children:[e(D,{variant:"outlined",onClick:t,children:"Paste JSON"}),e("div",{className:"vm-upload-json-buttons__upload",children:[e(D,{children:"Upload Files"}),e("input",{id:"json",name:"json",type:"file",accept:"application/json",multiple:!0,title:" ",onChange:n})]})]}),_u=()=>{const[t,n]=N([]),[r,a]=N([]),o=M(()=>!!t.length,[t]),{value:s,setTrue:i,setFalse:l}=ae(!1),c=(g,_="")=>{a(y=>[{filename:_,text:`: ${g.message}`},...y])},d=(g,_)=>{try{const y=JSON.parse(g),S=y.trace||y;if(!S.duration_msec){c(new Error(Ce.traceNotFound),_);return}const T=new At(S,_);n(w=>[T,...w])}catch(y){y instanceof Error&&c(y,_)}},m=g=>{g.map(_=>{const y=new FileReader,S=(_==null?void 0:_.name)||"";y.onload=T=>{var C;const w=String((C=T.target)==null?void 0:C.result);d(w,S)},y.readAsText(_)})},u=g=>{if(!g.target)return;const _=g.target;a([]);const y=Array.from(_.files||[]);m(y),_.value=""},h=g=>{const _=t.filter(y=>y.idValue!==g.idValue);n([..._])},p=g=>{a(_=>_.filter((y,S)=>S!==g))},v=g=>()=>{p(g)},{files:b,dragging:f}=Li();return A(()=>{m(b)},[b]),e("div",{className:"vm-trace-page",children:[e("div",{className:"vm-trace-page-header",children:[e("div",{className:"vm-trace-page-header-errors",children:r.map((g,_)=>e("div",{className:"vm-trace-page-header-errors-item",children:[e(le,{variant:"error",children:[e("b",{className:"vm-trace-page-header-errors-item__filename",children:g.filename}),e("span",{children:g.text})]}),e(D,{className:"vm-trace-page-header-errors-item__close",startIcon:e(Ue,{}),variant:"text",color:"error",onClick:v(_)})]},`${g}_${_}`))}),e("div",{children:o&&e(Vn,{onOpenModal:i,onChange:u})})]}),o&&e("div",{children:e(Da,{jsonEditor:!0,traces:t,onDeleteClick:h})}),!o&&e("div",{className:"vm-trace-page-preview",children:[e("p",{className:"vm-trace-page-preview__text",children:["Please, upload file with JSON response content.",`
-`,"The file must contain tracing information in JSON format.",`
-`,"In order to use tracing please refer to the doc: ",e("a",{className:"vm-link vm-link_colored",href:"https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#query-tracing",target:"_blank",rel:"help noreferrer",children:"https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#query-tracing"}),`
-`,"Tracing graph will be displayed after file upload.",`
-`,"Attach files by dragging & dropping, selecting or pasting them."]}),e(Vn,{onOpenModal:i,onChange:u})]}),s&&e(Me,{title:"Paste JSON",onClose:l,children:e(Zs,{editable:!0,displayTitle:!0,defaultTile:`JSON ${t.length+1}`,onClose:l,onUpload:d})}),f&&e("div",{className:"vm-trace-page__dropzone"})]})},bu=({job:t,instance:n,metrics:r,size:a})=>{const{duration:o,relativeTime:s,period:{date:i}}=ge(),{customStep:l}=He(),{setSearchParamsFromKeys:c}=rt(),d=()=>{const m=Ti({"g0.range_input":o,"g0.end_input":i,"g0.step_input":l,"g0.relative_time":s,size:a,job:t,instance:n,metrics:r});c(m)};A(d,[o,s,i,l,t,n,r,a]),A(d,[])},yu=(t,n)=>`${t}/api/v1/label/job/values?start=${n.start}&end=${n.end}`,wu=(t,n,r)=>{const a=`{job=${JSON.stringify(r)}}`;return`${t}/api/v1/label/instance/values?match[]=${encodeURIComponent(a)}&start=${n.start}&end=${n.end}`},Cu=(t,n,r,a)=>{const s=`{${Object.entries({job:r,instance:a}).filter(i=>i[1]).map(([i,l])=>`${i}=${JSON.stringify(l)}`).join(",")}}`;return`${t}/api/v1/label/__name__/values?match[]=${encodeURIComponent(s)}&start=${n.start}&end=${n.end}`},Nu=()=>{const{serverUrl:t}=se(),{period:n}=ge(),[r,a]=N([]),[o,s]=N(!1),[i,l]=N(),c=M(()=>yu(t,n),[t,n]);return A(()=>{(async()=>{s(!0);try{const m=await fetch(c),u=await m.json(),h=u.data||[];a(h.sort((p,v)=>p.localeCompare(v))),m.ok?l(void 0):l(`${u.errorType}\r
-${u==null?void 0:u.error}`)}catch(m){m instanceof Error&&l(`${m.name}: ${m.message}`)}s(!1)})().catch(console.error)},[c]),{jobs:r,isLoading:o,error:i}},Su=t=>{const{serverUrl:n}=se(),{period:r}=ge(),[a,o]=N([]),[s,i]=N(!1),[l,c]=N(),d=M(()=>wu(n,r,t),[n,r,t]);return A(()=>{if(!t)return;(async()=>{i(!0);try{const u=await fetch(d),h=await u.json(),p=h.data||[];o(p.sort((v,b)=>v.localeCompare(b))),u.ok?c(void 0):c(`${h.errorType}\r
-${h==null?void 0:h.error}`)}catch(u){u instanceof Error&&c(`${u.name}: ${u.message}`)}i(!1)})().catch(console.error)},[d]),{instances:a,isLoading:s,error:l}},ku=(t,n)=>{const{serverUrl:r}=se(),{period:a}=ge(),[o,s]=N([]),[i,l]=N(!1),[c,d]=N(),m=M(()=>Cu(r,a,t,n),[r,a,t,n]);return A(()=>{if(!t)return;(async()=>{l(!0);try{const h=await fetch(m),p=await h.json(),v=p.data||[];s(v.sort((b,f)=>b.localeCompare(f))),h.ok?d(void 0):d(`${p.errorType}\r
-${p==null?void 0:p.error}`)}catch(h){h instanceof Error&&d(`${h.name}: ${h.message}`)}l(!1)})().catch(console.error)},[m]),{names:o,isLoading:i,error:c}},Tu=({name:t,job:n,instance:r,rateEnabled:a,isBucket:o,height:s})=>{const{isMobile:i}=J(),{customStep:l,yaxis:c}=He(),{period:d}=ge(),m=vt(),u=Be(),h=mn(d.end-d.start),p=Zr(l),v=Qn(p*10*1e3),[b,f]=N(!1),[g,_]=N(!1),y=b&&l===h?v:l,S=M(()=>{const F=Object.entries({job:n,instance:r}).filter(z=>z[1]).map(([z,Y])=>`${z}=${JSON.stringify(Y)}`);F.push(`__name__=${JSON.stringify(t)}`),t=="node_cpu_seconds_total"&&F.push('mode!="idle"');const O=`{${F.join(",")}}`;return o?`sum(rate(${O})) by (vmrange, le)`:`
-with (q = ${a?`rollup_rate(${O})`:`rollup(${O})`}) (
- alias(min(label_match(q, "rollup", "min")), "min"),
- alias(max(label_match(q, "rollup", "max")), "max"),
- alias(avg(label_match(q, "rollup", "avg")), "avg"),
-)`},[t,n,r,a,o]),{isLoading:T,graphData:w,error:C,queryErrors:k,warning:L,isHistogram:x}=Xn({predefinedQuery:[S],visible:!0,customStep:y,showAllSeries:g}),E=F=>{m({type:"SET_YAXIS_LIMITS",payload:F})},P=({from:F,to:O})=>{u({type:"SET_PERIOD",payload:{from:F,to:O}})};return A(()=>{f(x)},[x]),e("div",{className:I({"vm-explore-metrics-graph":!0,"vm-explore-metrics-graph_mobile":i}),children:[T&&e(Qe,{}),C&&e(le,{variant:"error",children:C}),k[0]&&e(le,{variant:"error",children:k[0]}),L&&e(tr,{warning:L,query:[S],onChange:_}),w&&d&&e(ar,{data:w,period:d,customStep:y,query:[S],yaxis:c,setYaxisLimits:E,setPeriod:P,showLegend:!1,height:s,isHistogram:x})]})},Lu=({name:t,index:n,length:r,isBucket:a,rateEnabled:o,onChangeRate:s,onRemoveItem:i,onChangeOrder:l})=>{const{isMobile:c}=J(),{value:d,setTrue:m,setFalse:u}=ae(!1),h=()=>{i(t)},p=()=>{l(t,n,n+1)},v=()=>{l(t,n,n-1)};return c?e("div",{className:"vm-explore-metrics-item-header vm-explore-metrics-item-header_mobile",children:[e("div",{className:"vm-explore-metrics-item-header__name",children:t}),e(D,{variant:"text",size:"small",startIcon:e(ca,{}),onClick:m,ariaLabel:"open panel settings"}),d&&e(Me,{title:t,onClose:u,children:e("div",{className:"vm-explore-metrics-item-header-modal",children:[e("div",{className:"vm-explore-metrics-item-header-modal-order",children:[e(D,{startIcon:e(gs,{}),variant:"outlined",onClick:v,disabled:n===0,ariaLabel:"move graph up"}),e("p",{children:["position:",e("span",{className:"vm-explore-metrics-item-header-modal-order__index",children:["#",n+1]})]}),e(D,{endIcon:e(oa,{}),variant:"outlined",onClick:p,disabled:n===r-1,ariaLabel:"move graph down"})]}),!a&&e("div",{className:"vm-explore-metrics-item-header-modal__rate",children:[e(_e,{label:e("span",{children:["enable ",e("code",{children:"rate()"})]}),value:o,onChange:s,fullWidth:!0}),e("p",{children:"calculates the average per-second speed of metrics change"})]}),e(D,{startIcon:e(Ue,{}),color:"error",variant:"outlined",onClick:h,fullWidth:!0,children:"Remove graph"})]})})]}):e("div",{className:"vm-explore-metrics-item-header",children:[e("div",{className:"vm-explore-metrics-item-header-order",children:[e(j,{title:"move graph up",children:e(D,{className:"vm-explore-metrics-item-header-order__up",startIcon:e(be,{}),variant:"text",color:"gray",size:"small",onClick:v,ariaLabel:"move graph up"})}),e("div",{className:"vm-explore-metrics-item-header__index",children:["#",n+1]}),e(j,{title:"move graph down",children:e(D,{className:"vm-explore-metrics-item-header-order__down",startIcon:e(be,{}),variant:"text",color:"gray",size:"small",onClick:p,ariaLabel:"move graph down"})})]}),e("div",{className:"vm-explore-metrics-item-header__name",children:t}),!a&&e("div",{className:"vm-explore-metrics-item-header__rate",children:e(j,{title:"calculates the average per-second speed of metric's change",children:e(_e,{label:e("span",{children:["enable ",e("code",{children:"rate()"})]}),value:o,onChange:s})})}),e("div",{className:"vm-explore-metrics-item-header__close",children:e(j,{title:"close graph",children:e(D,{startIcon:e(Ue,{}),variant:"text",color:"gray",size:"small",onClick:h,ariaLabel:"close graph"})})})]})},Au=({name:t,job:n,instance:r,index:a,length:o,size:s,onRemoveItem:i,onChangeOrder:l})=>{const c=M(()=>/_sum?|_total?|_count?/.test(t),[t]),d=M(()=>/_bucket?/.test(t),[t]),[m,u]=N(c),h=Pt(),p=M(s.height,[s,h]);return A(()=>{u(c)},[n]),e("div",{className:"vm-explore-metrics-item vm-block vm-block_empty-padding",children:[e(Lu,{name:t,index:a,length:o,isBucket:d,rateEnabled:m,size:s.id,onChangeRate:u,onRemoveItem:i,onChangeOrder:l}),e(Tu,{name:t,job:n,instance:r,rateEnabled:m,isBucket:d,height:p},`${t}_${n}_${r}_${m}`)]})},Eu=Pn.map(t=>t.id),xu=({jobs:t,instances:n,names:r,job:a,instance:o,size:s,selectedMetrics:i,onChangeJob:l,onChangeInstance:c,onToggleMetric:d,onChangeSize:m})=>{const u=M(()=>a?"":"No instances. Please select job",[a]),h=M(()=>a?"":"No metric names. Please select job",[a]),{isMobile:p}=J(),{value:v,toggle:b,setFalse:f}=ae(Ae("EXPLORE_METRICS_TIPS")!=="false");return A(()=>{Le("EXPLORE_METRICS_TIPS",`${v}`)},[v]),e(V,{children:[e("div",{className:I({"vm-explore-metrics-header":!0,"vm-explore-metrics-header_mobile":p,"vm-block":!0,"vm-block_mobile":p}),children:[e("div",{className:"vm-explore-metrics-header__job",children:e(it,{value:a,list:t,label:"Job",placeholder:"Please select job",onChange:l,autofocus:!a&&!!t.length&&!p,searchable:!0})}),e("div",{className:"vm-explore-metrics-header__instance",children:e(it,{value:o,list:n,label:"Instance",placeholder:"Please select instance",onChange:c,noOptionsText:u,clearable:!0,searchable:!0})}),e("div",{className:"vm-explore-metrics-header__size",children:[e(it,{label:"Size graphs",value:s,list:Eu,onChange:m}),e(j,{title:`${v?"Hide":"Show"} tip`,children:e(D,{variant:"text",color:v?"warning":"gray",startIcon:e(vn,{}),onClick:b,ariaLabel:"visibility tips"})})]}),e("div",{className:"vm-explore-metrics-header-metrics",children:e(it,{label:"Metrics",value:i,list:r,placeholder:"Search metric name",onChange:d,noOptionsText:h,clearable:!0,searchable:!0})})]}),v&&e(le,{variant:"warning",children:e("div",{className:"vm-explore-metrics-header-description",children:[e("p",{children:["Please note: this page is solely designed for exploring Prometheus metrics. Prometheus metrics always contain ",e("code",{children:"job"})," and ",e("code",{children:"instance"})," labels (see ",e("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. ",e("br",{}),"Please use this page for Prometheus metrics only, in accordance with their naming conventions."]}),e(D,{variant:"text",size:"small",startIcon:e(Ue,{}),onClick:f,ariaLabel:"close tips"})]})})]})},Mu=ze("job",""),Iu=ze("instance",""),ko=ze("metrics",""),To=ze("size",""),Pu=Pn.find(t=>To?t.id===To:t.isDefault)||Pn[0],Du=()=>{const[t,n]=N(Mu),[r,a]=N(Iu),[o,s]=N(ko?ko.split("&"):[]),[i,l]=N(Pu);bu({job:t,instance:r,metrics:o.join("&"),size:i.id});const{jobs:c,isLoading:d,error:m}=Nu(),{instances:u,isLoading:h,error:p}=Su(t),{names:v,isLoading:b,error:f}=ku(t,r),g=M(()=>d||h||b,[d,h,b]),_=M(()=>m||p||f,[m,p,f]),y=w=>{s(w?C=>C.includes(w)?C.filter(k=>k!==w):[...C,w]:[])},S=w=>{const C=Pn.find(k=>k.id===w);C&&l(C)},T=(w,C,k)=>{const L=k>o.length-1;k<0||L||s(E=>{const P=[...E],[F]=P.splice(C,1);return P.splice(k,0,F),P})};return A(()=>{r&&u.length&&!u.includes(r)&&a("")},[u,r]),e("div",{className:"vm-explore-metrics",children:[e(xu,{jobs:c,instances:u,names:v,job:t,size:i.id,instance:r,selectedMetrics:o,onChangeJob:n,onChangeSize:S,onChangeInstance:a,onToggleMetric:y}),g&&e(Qe,{}),_&&e(le,{variant:"error",children:_}),!t&&e(le,{variant:"info",children:"Please select job to see list of metric names."}),t&&!o.length&&e(le,{variant:"info",children:"Please select metric names to see the graphs."}),e("div",{className:"vm-explore-metrics-body",children:o.map((w,C)=>e(Au,{name:w,job:t,instance:r,index:C,length:o.length,size:i,onRemoveItem:y,onChangeOrder:T},w))})]})},Ou=()=>{const t=Fe(),n=r=>async()=>{await t(`<${r}/>`,`<${r}/> has been copied`)};return e("div",{className:"vm-preview-icons",children:Object.entries(Il).map(([r,a])=>e("div",{className:"vm-preview-icons-item",onClick:n(r),children:[e("div",{className:"vm-preview-icons-item__svg",children:a()}),e("div",{className:"vm-preview-icons-item__name",children:`<${r}/>`})]},r))})},ot=({code:t})=>{const n=Fe(),[r,a]=N("Copy"),o=async()=>{await n(t),a("Copied")};return A(()=>{let s=null;return r==="Copied"&&(s=setTimeout(()=>a("Copy"),1e3)),()=>{s&&clearTimeout(s)}},[r]),e("code",{className:"vm-code-example",children:[t,e("div",{className:"vm-code-example__copy",children:e(j,{title:r,children:e(D,{size:"small",variant:"text",onClick:o,startIcon:e(Xe,{}),ariaLabel:"close"})})})]})},Ru=()=>e("a",{className:"vm-link vm-link_colored",href:"https://docs.victoriametrics.com/victoriametrics/metricsql/",target:"_blank",rel:"help noreferrer",children:"MetricsQL"}),Lo=()=>e("a",{className:"vm-link vm-link_colored",href:"https://grafana.com/grafana/dashboards/1860",target:"_blank",rel:"help noreferrer",children:"Node Exporter Full"}),$u=()=>e("section",{className:"vm-with-template-tutorial",children:[e("h2",{className:"vm-with-template-tutorial__title",children:["Tutorial for WITH expressions in ",e(Ru,{})]}),e("div",{className:"vm-with-template-tutorial-section",children:[e("p",{className:"vm-with-template-tutorial-section__text",children:["Let's look at the following real query from ",e(Lo,{})," dashboard:"]}),e(ot,{code:`(
- (
- node_memory_MemTotal_bytes{instance=~"$node:$port", job=~"$job"}
- -
- node_memory_MemFree_bytes{instance=~"$node:$port", job=~"$job"}
- )
- /
- node_memory_MemTotal_bytes{instance=~"$node:$port", job=~"$job"}
-) * 100`}),e("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? :)"})]}),e("div",{className:"vm-with-template-tutorial-section",children:[e("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:"}),e(ot,{code:`WITH (
- commonFilters = {instance=~"$node:$port",job=~"$job"}
-)
-(
- node_memory_MemTotal_bytes{commonFilters}
- -
- node_memory_MemFree_bytes{commonFilters}
-)
- /
-node_memory_MemTotal_bytes{commonFilters} * 100`})]}),e("div",{className:"vm-with-template-tutorial-section",children:[e("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:"]}),e(ot,{code:`WITH (
- my_resource_utilization(free, limit, filters) = (limit{filters} - free{filters}) / limit{filters} * 100
-)
-my_resource_utilization(
- node_memory_MemFree_bytes,
- node_memory_MemTotal_bytes,
- {instance=~"$node:$port",job=~"$job"},
-)`}),e("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."})]}),e("div",{className:"vm-with-template-tutorial-section",children:[e("p",{className:"vm-with-template-tutorial-section__text",children:["Let's take another nice query from ",e(Lo,{})," dashboard:"]}),e(ot,{code:`(
- (
- (
- count(
- count(node_cpu_seconds_total{instance=~"$node:$port",job=~"$job"}) by (cpu)
- )
- )
- -
- avg(
- sum by (mode) (rate(node_cpu_seconds_total{mode='idle',instance=~"$node:$port",job=~"$job"}[5m]))
- )
- )
- *
- 100
-)
- /
-count(
- count(node_cpu_seconds_total{instance=~"$node:$port",job=~"$job"}) by (cpu)
-)`}),e("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."})]}),e("div",{className:"vm-with-template-tutorial-section",children:[e("p",{className:"vm-with-template-tutorial-section__text",children:"1. Extract common filters used in multiple places into a commonFilters variable:"}),e(ot,{code:`WITH (
- commonFilters = {instance=~"$node:$port",job=~"$job"}
-)
-(
- (
- (
- count(
- count(node_cpu_seconds_total{commonFilters}) by (cpu)
- )
- )
- -
- avg(
- sum by (mode) (rate(node_cpu_seconds_total{mode='idle',commonFilters}[5m]))
- )
- )
- *
- 100
-)
- /
-count(
- count(node_cpu_seconds_total{commonFilters}) by (cpu)
-)`})]}),e("div",{className:"vm-with-template-tutorial-section",children:[e("p",{className:"vm-with-template-tutorial-section__text",children:'2. Extract "count(count(...) by (cpu))" into cpuCount variable:'}),e(ot,{code:`WITH (
- commonFilters = {instance=~"$node:$port",job=~"$job"},
- cpuCount = count(count(node_cpu_seconds_total{commonFilters}) by (cpu))
-)
-(
- (
- cpuCount
- -
- avg(
- sum by (mode) (rate(node_cpu_seconds_total{mode='idle',commonFilters}[5m]))
- )
- )
- *
- 100
-) / cpuCount`})]}),e("div",{className:"vm-with-template-tutorial-section",children:[e("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:"}),e(ot,{code:`WITH (
- commonFilters = {instance=~"$node:$port",job=~"$job"},
- cpuCount = count(count(node_cpu_seconds_total{commonFilters}) by (cpu)),
- cpuIdle = sum(rate(node_cpu_seconds_total{mode='idle',commonFilters}[5m]))
-)
-((cpuCount - cpuIdle) * 100) / cpuCount`})]}),e("div",{className:"vm-with-template-tutorial-section",children:[e("p",{className:"vm-with-template-tutorial-section__text",children:["4. Put node_cpu_seconds_total","{commonFilters}"," into its own variable with the name cpuSeconds:"]}),e(ot,{code:`WITH (
- cpuSeconds = node_cpu_seconds_total{instance=~"$node:$port",job=~"$job"},
- cpuCount = count(count(cpuSeconds) by (cpu)),
- cpuIdle = sum(rate(cpuSeconds{mode='idle'}[5m]))
-)
-((cpuCount - cpuIdle) * 100) / cpuCount`}),e("p",{className:"vm-with-template-tutorial-section__text",children:"Now the query became more clear comparing to the initial query."})]}),e("div",{className:"vm-with-template-tutorial-section",children:[e("p",{className:"vm-with-template-tutorial-section__text",children:"WITH expressions may be nested and may be put anywhere. Try expanding the following query:"}),e(ot,{code:`WITH (
- f(a, b) = WITH (
- f1(x) = b-x,
- f2(x) = x+x
- ) f1(a)*f2(b)
-) f(foo, with(x=bar) x)`})]})]}),Fu=(t,n)=>`${t}/expand-with-exprs?query=${encodeURIComponent(n)}&format=json`,zu=()=>{const{serverUrl:t}=se(),[n,r]=oe(),[a,o]=N(""),[s,i]=N(!1),[l,c]=N();return{data:a,error:l,loading:s,expand:async m=>{n.set("expr",m),r(n);const u=Fu(t,m);i(!0);try{const p=await(await fetch(u)).json();o((p==null?void 0:p.expr)||""),c(String(p.error||""))}catch(h){h instanceof Error&&h.name!=="AbortError"&&c(`${h.name}: ${h.message}`)}i(!1)}}},Hu=()=>{const[t]=oe(),{data:n,loading:r,error:a,expand:o}=zu(),[s,i]=N(t.get("expr")||""),l=d=>{i(d)},c=()=>{o(s)};return A(()=>{s&&o(s)},[]),e("section",{className:"vm-with-template",children:[r&&e(Qe,{}),e("div",{className:"vm-with-template-body vm-block",children:[e("div",{className:"vm-with-template-body__expr",children:e(ce,{type:"textarea",label:"MetricsQL query with optional WITH expressions",value:s,error:a,autofocus:!0,onEnter:c,onChange:l})}),e("div",{className:"vm-with-template-body__result",children:e(ce,{type:"textarea",label:"MetricsQL query after expanding WITH expressions and applying other optimizations",value:n,disabled:!0})}),e("div",{className:"vm-with-template-body-top",children:e(D,{variant:"contained",onClick:c,startIcon:e(nt,{}),children:"Expand"})})]}),e("div",{className:"vm-block",children:e($u,{})})]})},Vu=(t,n,r)=>{const a=["format=json",`relabel_configs=${encodeURIComponent(n)}`,`metric=${encodeURIComponent(r)}`];return`${t}/metric-relabel-debug?${a.join("&")}`},qu=()=>{const{serverUrl:t}=se(),[n,r]=N(null),[a,o]=N(!1),[s,i]=N();return{data:n,error:s,loading:a,fetchData:async(c,d)=>{const m=Vu(t,c,d);o(!0);try{const h=await(await fetch(m)).json();r(h.error?null:h),i(String(h.error||""))}catch(u){u instanceof Error&&u.name!=="AbortError"&&i(`${u.name}: ${u.message}`)}o(!1)}}},Uu={config:`- if: '{bar_label=~"b.*"}'
- source_labels: [foo_label, bar_label]
- separator: "_"
- target_label: foobar
-- action: labeldrop
- regex: "foo_.*"
-- target_label: job
- replacement: "my-application-2"`,labels:'{__name__="my_metric", bar_label="bar", foo_label="foo", job="my-application", instance="192.168.0.1"}'},Bu=()=>{const[t,n]=oe(),{data:r,loading:a,error:o,fetchData:s}=qu(),[i,l]=Se("","config"),[c,d]=Se("","labels"),m=v=>{l(v||"")},u=v=>{d(v||"")},h=W(()=>{s(i,c),t.set("config",i),t.set("labels",c),n(t)},[i,c]),p=()=>{const{config:v,labels:b}=Uu;l(v),d(b),s(v,b),t.set("config",v),t.set("labels",b),n(t)};return A(()=>{const v=t.get("config")||"",b=t.get("labels")||"";(b||v)&&(s(v,b),l(v),d(b))},[]),e("section",{className:"vm-relabeling",children:[a&&e(Qe,{}),e("div",{className:"vm-relabeling-header vm-block",children:[e("div",{className:"vm-relabeling-header-configs",children:e(ce,{type:"textarea",label:"Relabel configs",value:i,autofocus:!0,onChange:m,onEnter:h})}),e("div",{className:"vm-relabeling-header__labels",children:e(ce,{type:"textarea",label:"Labels",value:c,onChange:u,onEnter:h})}),e("div",{className:"vm-relabeling-header-bottom",children:[e("a",{className:"vm-link vm-link_with-icon",target:"_blank",href:"https://docs.victoriametrics.com/victoriametrics/relabeling/",rel:"help noreferrer",children:[e(mt,{}),"Relabeling cookbook"]}),e("a",{className:"vm-link vm-link_with-icon",target:"_blank",href:"https://docs.victoriametrics.com/victoriametrics/relabeling/",rel:"help noreferrer",children:[e(ut,{}),"Documentation"]}),e(D,{variant:"text",onClick:p,children:"Try example"}),e(D,{variant:"contained",onClick:h,startIcon:e(nt,{}),children:"Submit"})]})]}),o&&e(le,{variant:"error",children:o}),r&&e("div",{className:"vm-relabeling-steps vm-block",children:[r.originalLabels&&e("div",{className:"vm-relabeling-steps-item",children:e("div",{className:"vm-relabeling-steps-item__row",children:[e("span",{children:"Original labels:"}),e("code",{dangerouslySetInnerHTML:{__html:r.originalLabels}})]})}),r.steps.map((v,b)=>{var f,g;return e("div",{className:"vm-relabeling-steps-item",children:[e("div",{className:"vm-relabeling-steps-item__row",children:[e("span",{children:"Step:"}),b+1]}),e("div",{className:"vm-relabeling-steps-item__row",children:[e("span",{children:"Relabeling Rule:"}),e("code",{children:e("pre",{children:v.rule})})]}),e("div",{className:"vm-relabeling-steps-item__row",children:[e("span",{children:"Input Labels:"}),e("code",{children:e("pre",{dangerouslySetInnerHTML:{__html:((f=v.errors)==null?void 0:f.inLabels)||v.inLabels}})})]}),e("div",{className:"vm-relabeling-steps-item__row",children:[e("span",{children:"Output labels:"}),e("code",{children:e("pre",{dangerouslySetInnerHTML:{__html:((g=v.errors)==null?void 0:g.outLabels)||v.outLabels}})})]})]},b)}),r.resultingLabels&&e("div",{className:"vm-relabeling-steps-item",children:e("div",{className:"vm-relabeling-steps-item__row",children:[e("span",{children:"Resulting labels:"}),e("code",{dangerouslySetInnerHTML:{__html:r.resultingLabels}})]})})]})]})},ju=t=>`${t}/api/v1/status/active_queries`,Qu=()=>{const{serverUrl:t}=se(),[n,r]=N([]),[a,o]=N(U().format(On)),[s,i]=N(!1),[l,c]=N(),d=M(()=>ju(t),[t]),m=async()=>{i(!0);try{const u=await fetch(d),h=await u.json();r(h.data),o(U().format("HH:mm:ss:SSS")),u.ok?c(void 0):c(`${h.errorType}\r
-${h==null?void 0:h.error}`)}catch(u){u instanceof Error&&c(`${u.name}: ${u.message}`)}i(!1)};return A(()=>{m().catch(console.error)},[d]),{data:n,lastUpdated:a,isLoading:s,error:l,fetchData:m}},Ai=({rows:t,columns:n,defaultOrderBy:r,defaultOrderDir:a,copyToClipboard:o,paginationOffset:s})=>{const i=Fe(),[l,c]=N(r),[d,m]=N(a||"desc"),[u,h]=N(null),p=M(()=>{const{startIndex:f,endIndex:g}=s;return Ja(t,Wa(d,l)).slice(f,g)},[t,l,d,s]),v=f=>()=>{m(g=>g==="asc"&&l===f?"desc":"asc"),c(f)},b=(f,g)=>async()=>{if(u!==g)try{await i(String(f)),h(g)}catch(_){console.error(_)}};return A(()=>{if(u===null)return;const f=setTimeout(()=>h(null),2e3);return()=>clearTimeout(f)},[u]),e("table",{className:"vm-table",children:[e("thead",{className:"vm-table-header",children:e("tr",{className:"vm-table__row vm-table__row_header",children:[n.map(f=>e("th",{className:"vm-table-cell vm-table-cell_header vm-table-cell_sort",onClick:v(f.key),children:e("div",{className:"vm-table-cell__content",children:[e("div",{children:String(f.title||f.key)}),e("div",{className:I({"vm-table__sort-icon":!0,"vm-table__sort-icon_active":l===f.key,"vm-table__sort-icon_desc":d==="desc"&&l===f.key}),children:e(Je,{})})]})},String(f.key))),o&&e("th",{className:"vm-table-cell vm-table-cell_header"})]})}),e("tbody",{className:"vm-table-body",children:p.map((f,g)=>e("tr",{className:"vm-table__row",children:[n.map(_=>e("td",{className:I({"vm-table-cell":!0,[`${_.className}`]:_.className}),children:f[_.key]||"-"},String(_.key))),o&&e("td",{className:"vm-table-cell vm-table-cell_right",children:f[o]&&e("div",{className:"vm-table-cell__content",children:e(j,{title:u===g?"Copied":"Copy row",children:e(D,{variant:"text",color:u===g?"success":"gray",size:"small",startIcon:u===g?e(Wn,{}):e(Xe,{}),onClick:b(f[o],g),ariaLabel:"copy row"})})})})]},g))})]})},Yu=()=>{const{isMobile:t}=J(),{timezone:n}=ge(),{data:r,lastUpdated:a,isLoading:o,error:s,fetchData:i}=Qu(),l=M(()=>r.map(m=>{const u=U(m.start).tz().format(qe),h=U(m.end).tz().format(qe);return{duration:m.duration,remote_addr:m.remote_addr,query:m.query,args:`${u} to ${h}, step=${Er(m.step)}`,data:JSON.stringify(m,null,2)}}),[r,n]),c=M(()=>{if(!(l!=null&&l.length))return[];const m=Object.keys(l[0]),u={remote_addr:"client address"},h=["data"];return m.filter(p=>!h.includes(p)).map(p=>({key:p,title:u[p]||p}))},[l]),d=async()=>{i().catch(console.error)};return e("div",{className:"vm-active-queries",children:[o&&e(Qe,{}),e("div",{className:"vm-active-queries-header",children:[!l.length&&!s&&e(le,{variant:"info",children:"There are currently no active queries running"}),s&&e(le,{variant:"error",children:s}),e("div",{className:"vm-active-queries-header-controls",children:[e(D,{variant:"contained",onClick:d,startIcon:e(Gn,{}),children:"Update"}),e("div",{className:"vm-active-queries-header__update-msg",children:["Last updated: ",a]})]})]}),!!l.length&&e("div",{className:I({"vm-block":!0,"vm-block_mobile":t}),children:e(Ai,{rows:l,columns:c,defaultOrderBy:"duration",copyToClipboard:"data",paginationOffset:{startIndex:0,endIndex:1/0}})})]})},Gu=({onClose:t,onUpload:n})=>{const{isMobile:r}=J(),[a,o]=N(""),[s,i]=N(""),l=M(()=>{try{return JSON.parse(a),""}catch(m){return m instanceof Error?m.message:"Unknown error"}},[a]),c=m=>{i(""),o(m)},d=()=>{i(l),!l&&(n(a),t())};return e("div",{className:I({"vm-json-form vm-json-form_one-field":!0,"vm-json-form_mobile vm-json-form_one-field_mobile":r}),children:[e(ce,{value:a,label:"JSON",type:"textarea",error:s,autofocus:!0,onChange:c,onEnter:d}),e("div",{className:"vm-json-form-footer",children:e("div",{className:"vm-json-form-footer__controls vm-json-form-footer__controls_right",children:[e(D,{variant:"outlined",color:"error",onClick:t,children:"Cancel"}),e(D,{variant:"contained",onClick:d,children:"apply"})]})})]})},Wu=({data:t,period:n})=>{const{isMobile:r}=J(),[a,o]=oe(),{tableCompact:s}=je(),i=Gt(),[l,c]=N([]),[d,m]=N(),[u,h]=N(),[p,v]=N(!1),[b,f]=N([]),[g,_]=N(),y=M(()=>Ya(u||[]).map(z=>z.key),[u]),S=M(()=>{const z=t.some(G=>G.data.resultType==="matrix");return t.some(G=>G.data.resultType==="vector")&&z?zt:z?zt.filter(G=>G.value==="chart"):zt.filter(G=>G.value!=="chart")},[t]),[T,w]=N(S[0].value),{yaxis:C,spanGaps:k}=He(),L=vt(),x=z=>{L({type:"SET_YAXIS_LIMITS",payload:z})},E=()=>{L({type:"TOGGLE_ENABLE_YAXIS_LIMITS"})},P=z=>{L({type:"SET_SPAN_GAPS",payload:z})},F=z=>{w(z)},O=z=>{c(Y=>Y.filter(G=>G.idValue!==z.idValue))},H=()=>{i({type:"TOGGLE_TABLE_COMPACT"})};return A(()=>{const z=T==="chart"?"matrix":"vector",Y=t.filter(G=>G.data.resultType===z&&G.trace).map(G=>{var K,re;return G.trace?new At(G.trace,((re=(K=G==null?void 0:G.vmui)==null?void 0:K.params)==null?void 0:re.query)||"Query"):null});c(Y.filter(Boolean))},[t,T]),A(()=>{const z=[],Y=[],G=[];t.forEach((K,re)=>{var ie,X;const Q=K.data.result.map(R=>{var $,B;return{...R,group:Number(((B=($=K.vmui)==null?void 0:$.params)==null?void 0:B.id)??re)+1}});K.data.resultType==="matrix"?(Y.push(...Q),z.push(((X=(ie=K.vmui)==null?void 0:ie.params)==null?void 0:X.query)||"Query")):G.push(...Q)}),f(z),m(Y),h(G),a.delete("display_mode"),o(a)},[t]),A(()=>{const z=!a.get("display_mode");v(!!d&&z&&Ma(d))},[d,a]),e("div",{className:I({"vm-query-analyzer-view":!0,"vm-query-analyzer-view_mobile":r}),children:[!!l.length&&e(Da,{traces:l,onDeleteClick:O}),e(Si,{}),e("div",{className:I({"vm-block":!0,"vm-block_mobile":r}),children:[e("div",{className:"vm-custom-panel-body-header",children:[e("div",{className:"vm-custom-panel-body-header__tabs",children:e(Yt,{activeItem:T,items:S,onChange:F})}),e("div",{className:"vm-custom-panel-body-header__graph-controls",children:[T==="chart"&&e(Ca,{}),T==="chart"&&e(Qa,{data:d||[],yaxis:C,isHistogram:p,setYaxisLimits:x,toggleEnableLimits:E,spanGaps:{value:k,onChange:P}}),T==="table"&&e(Ga,{columns:y,selectedColumns:g,onChangeColumns:_,tableCompact:s,toggleTableCompact:H})]})]}),d&&n&&T==="chart"&&e(ar,{data:d,period:n,customStep:n.step||"1s",query:b,yaxis:C,setYaxisLimits:x,setPeriod:()=>null,height:r?window.innerHeight*.5:500,isHistogram:p,spanGaps:k}),u&&T==="code"&&e(or,{data:u}),u&&T==="table"&&e(bi,{data:u,displayColumns:g})]})]})},Ju=({data:t,period:n})=>{var m,u,h,p,v;const r=M(()=>t.filter(b=>b.vmui||b.stats),[t]),a=((u=(m=r.find(b=>{var f;return(f=b==null?void 0:b.vmui)==null?void 0:f.title}))==null?void 0:m.vmui)==null?void 0:u.title)||"Report",o=(p=(h=r.find(b=>{var f;return(f=b==null?void 0:b.vmui)==null?void 0:f.comment}))==null?void 0:h.vmui)==null?void 0:p.comment,s=M(()=>["vmui.endpoint",...new Set(r.flatMap(b=>{var f;return[...Object.keys(((f=b.vmui)==null?void 0:f.params)||[]).map(g=>`vmui.params.${g}`),...Object.keys(b.stats||[]).map(g=>`stats.${g}`),"isPartial"]}))].map(b=>({column:b.split(".").pop(),values:r.map(f=>st(f,b,"-"))})).filter(({values:b})=>b.length&&b.every(f=>f!=="-")),[r]),i=M(()=>{if(!n)return"";const b=U(n.start*1e3).tz().format(qe),f=U(n.end*1e3).tz().format(qe);return`${b} - ${f}`},[n]),{value:l,setTrue:c,setFalse:d}=ae(!1);return e(V,{children:[e("div",{className:"vm-query-analyzer-info-header",children:[e("h1",{className:"vm-query-analyzer-info-header__title",children:a}),i&&e("div",{className:"vm-query-analyzer-info-header__timerange",children:[e(rn,{})," ",i]}),(n==null?void 0:n.step)&&e("div",{className:"vm-query-analyzer-info-header__timerange",children:[e($n,{})," step ",n.step]}),(o||!!s.length)&&e("div",{className:"vm-query-analyzer-info-header__info",children:e(D,{startIcon:e(mt,{}),variant:"outlined",color:"warning",onClick:c,children:["Show stats",o&&" & comments"]})})]}),l&&e(Me,{title:a,onClose:d,children:e("div",{className:"vm-query-analyzer-info__modal",children:[!!s.length&&e("div",{className:"vm-query-analyzer-info-stats",children:[e("div",{className:"vm-query-analyzer-info-comment-header",children:[e(mt,{}),"Stats"]}),e("table",{children:[e("thead",{children:e("tr",{children:s.map(({column:b})=>e("th",{children:b},b))})}),e("tbody",{children:(v=s[0])==null?void 0:v.values.map((b,f)=>e("tr",{children:s.map(({values:g},_)=>e("td",{children:g[f]},_))},f))})]})]}),o&&e("div",{className:"vm-query-analyzer-info-comment",children:[e("div",{className:"vm-query-analyzer-info-comment-header",children:[e(Ns,{}),"Comments"]}),e("div",{className:"vm-query-analyzer-info-comment-body vm-markdown",dangerouslySetInnerHTML:{__html:Bt(o)||o}})]})]})})]})},Ku=t=>{const n=t.slice(1).map((s,i)=>s-t[i]),r={};n.forEach(s=>{const i=s.toString();r[i]=(r[i]||0)+1});let a=0,o=0;for(const s in r)r[s]>o&&(o=r[s],a=Number(s));return a},Zu=()=>{const[t,n]=N([]),[r,a]=N(""),o=M(()=>!!t.length,[t]),{value:s,setTrue:i,setFalse:l}=ae(!1),c=M(()=>{var _,y;if(!t)return;const f=(y=(_=t[0])==null?void 0:_.vmui)==null?void 0:y.params,g={start:+((f==null?void 0:f.start)||0),end:+((f==null?void 0:f.end)||0),step:f==null?void 0:f.step,date:""};if(!f){const T=t.filter(C=>C.data.resultType==="matrix").map(C=>C.data.result).flat().map(C=>{var k;return C.values?(k=C.values)==null?void 0:k.map(L=>L[0]):[0]}).flat(),w=Array.from(new Set(T.filter(Boolean))).sort((C,k)=>C-k);g.start=w[0],g.end=w[w.length-1],g.step=Kr(Ku(w))}return g.date=ts(We(g.end)),g},[t]),d=f=>f.every(g=>{if(typeof g=="object"&&g!==null){const _=g.data;if(typeof _=="object"&&_!==null){const y=_.result,S=_.resultType;return Array.isArray(y)&&typeof S=="string"}}return!1}),m=f=>{try{const g=JSON.parse(f),_=Array.isArray(g)?g:[g];d(_)?n(_):(a("Invalid structure - JSON does not match the expected format"),n([]))}catch(g){g instanceof Error&&(a(`${g.name}: ${g.message}`),n([]))}},u=f=>{f.map(g=>{const _=new FileReader;_.onload=y=>{var T;const S=String((T=y.target)==null?void 0:T.result);m(S)},_.readAsText(g)})},h=f=>{if(!f.target)return;const g=f.target;a("");const _=Array.from(g.files||[]);u(_),g.value=""},p=()=>{a("")},{files:v,dragging:b}=Li();return A(()=>{u(v)},[v]),e("div",{className:"vm-query-analyzer",children:[o&&e("div",{className:"vm-query-analyzer-header",children:[e(Ju,{data:t,period:c}),e(Vn,{onOpenModal:i,onChange:h})]}),o&&e(Wu,{data:t,period:c}),!o&&e("div",{className:"vm-trace-page-preview",children:[e("p",{className:"vm-trace-page-preview__text",children:["Please, upload file with JSON response content.",`
-`,"The file must contain query information in JSON format.",`
-`,"Graph will be displayed after file upload.",`
-`,"Attach files by dragging & dropping, selecting or pasting them."]}),e(Vn,{onOpenModal:i,onChange:h})]}),r&&e("div",{className:"vm-query-analyzer-error",children:[e(le,{variant:"error",children:r}),e(D,{className:"vm-query-analyzer-error__close",startIcon:e(Ue,{}),variant:"text",color:"error",onClick:p})]}),s&&e(Me,{title:"Paste JSON",onClose:l,children:e(Gu,{onClose:l,onUpload:m})}),b&&e("div",{className:"vm-trace-page__dropzone"})]})},Xu=(t,n,r)=>{const a=[`flags=${encodeURIComponent(n)}`,`metrics=${encodeURIComponent(r)}`];return`${t}/downsampling-filters-debug?${a.join("&")}`},eh=()=>{const{serverUrl:t}=se(),[n,r]=oe(),[a,o]=N(new Map),[s,i]=N(!1),[l,c]=N(),[d,m]=N(),[u,h]=N(),p=W(async(v,b)=>{var g,_;if(c(b?"":"metrics are required"),m(v?"":"flags are required"),!b||!v)return;n.set("flags",v),n.set("metrics",b),r(n);const f=Xu(t,v,b);i(!0);try{const S=await(await fetch(f)).json();o(new Map(Object.entries(S.result||{}))),c(((g=S.error)==null?void 0:g.metrics)||""),m(((_=S.error)==null?void 0:_.flags)||""),h("")}catch(y){y instanceof Error&&y.name!=="AbortError"&&h(`${y.name}: ${y.message}`)}i(!1)},[t]);return{data:a,error:u,metricsError:l,flagsError:d,loading:s,applyFilters:p}},Ao={flags:`-downsampling.period={env="dev"}:7d:5m,{env="dev"}:30d:30m
--downsampling.period=30d:1m
--downsampling.period=60d:5m
-`,metrics:`up
-up{env="dev"}
-up{env="prod"}`},th=()=>{const[t]=oe(),{data:n,loading:r,error:a,metricsError:o,flagsError:s,applyFilters:i}=eh(),[l,c]=N(t.get("metrics")||""),[d,m]=N(t.get("flags")||""),u=W(f=>{c(f)},[c]),h=W(f=>{m(f)},[m]),p=W(()=>{i(d,l)},[i,d,l]),v=W(()=>{const{flags:f,metrics:g}=Ao;m(f),c(g),i(f,g),t.set("flags",f),t.set("metrics",g)},[Ao,m,c,t]);A(()=>{d&&l&&p()},[]);const b=[];for(const[f,g]of n)b.push(e("tr",{className:"vm-table__row",children:[e("td",{className:"vm-table-cell",children:f}),e("td",{className:I({"vm-table-cell":!0,"vm-table-cell_empty":!g}),children:g?g.join(" "):"No matching rules found!"})]}));return e("section",{className:"vm-downsampling-filters",children:[r&&e(Qe,{}),e("div",{className:"vm-downsampling-filters-body vm-block",children:[e("div",{className:"vm-downsampling-filters-body__expr",children:[e("div",{className:"vm-retention-filters-body__title",children:e("p",{children:["Provide a list of flags for downsampling configuration. Note that only ",e("code",{children:"-downsampling.period"})," and ",e("code",{children:"-dedup.minScrapeInterval"})," flags are supported"]})}),e(ce,{type:"textarea",label:"Flags",value:d,error:a||s,autofocus:!0,onEnter:p,onChange:h,placeholder:"-downsampling.period=30d:1m -downsampling.period=7d:5m -dedup.minScrapeInterval=30s"})]}),e("div",{className:"vm-downsampling-filters-body__expr",children:[e("div",{className:"vm-retention-filters-body__title",children:e("p",{children:"Provide a list of metrics to check downsampling configuration."})}),e(ce,{type:"textarea",label:"Metrics",value:l,error:a||o,onEnter:p,onChange:u,placeholder:`up{env="dev"}
-up{env="prod"}
-`})]}),e("div",{className:"vm-downsampling-filters-body__result",children:e("table",{className:"vm-table",children:[e("thead",{className:"vm-table-header",children:e("tr",{children:[e("th",{className:"vm-table-cell vm-table-cell_header",children:"Metric"}),e("th",{className:"vm-table-cell vm-table-cell_header",children:"Applied downsampling rules"})]})}),e("tbody",{className:"vm-table-body",children:b})]})}),e("div",{className:"vm-downsampling-filters-body-top",children:[e("a",{className:"vm-link vm-link_with-icon",target:"_blank",href:"https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#downsampling",rel:"help noreferrer",children:[e(ut,{}),"Documentation"]}),e(D,{variant:"text",onClick:v,children:"Try example"}),e(D,{variant:"contained",onClick:p,startIcon:e(nt,{}),children:"Apply"})]})]})]})},nh=(t,n,r)=>{const a=[`flags=${encodeURIComponent(n)}`,`metrics=${encodeURIComponent(r)}`];return`${t}/retention-filters-debug?${a.join("&")}`},rh=()=>{const{serverUrl:t}=se(),[n,r]=oe(),[a,o]=N(new Map),[s,i]=N(!1),[l,c]=N(),[d,m]=N(),[u,h]=N(),p=W(async(v,b)=>{var g,_;if(c(b?"":"metrics are required"),m(v?"":"flags are required"),!b||!v)return;n.set("flags",v),n.set("metrics",b),r(n);const f=nh(t,v,b);i(!0);try{const S=await(await fetch(f)).json();o(new Map(Object.entries(S.result||{}))),c(((g=S.error)==null?void 0:g.metrics)||""),m(((_=S.error)==null?void 0:_.flags)||""),h("")}catch(y){y instanceof Error&&y.name!=="AbortError"&&h(`${y.name}: ${y.message}`)}i(!1)},[t]);return{data:a,error:u,metricsError:l,flagsError:d,loading:s,applyFilters:p}},Eo={flags:`-retentionPeriod=1y
--retentionFilter={env!="prod"}:2w
-`,metrics:`up
-up{env="dev"}
-up{env="prod"}`},ah=()=>{const[t]=oe(),{data:n,loading:r,error:a,metricsError:o,flagsError:s,applyFilters:i}=rh(),[l,c]=N(t.get("metrics")||""),[d,m]=N(t.get("flags")||""),u=W(f=>{c(f)},[c]),h=W(f=>{m(f)},[m]),p=W(()=>{i(d,l)},[i,d,l]),v=W(()=>{const{flags:f,metrics:g}=Eo;m(f),c(g),i(f,g),t.set("flags",f),t.set("metrics",g)},[Eo,m,c,t]);A(()=>{d&&l&&p()},[]);const b=[];for(const[f,g]of n)b.push(e("tr",{className:"vm-table__row",children:[e("td",{className:"vm-table-cell",children:f}),e("td",{className:"vm-table-cell",children:g})]}));return e("section",{className:"vm-retention-filters",children:[r&&e(Qe,{}),e("div",{className:"vm-retention-filters-body vm-block",children:[e("div",{className:"vm-retention-filters-body__expr",children:[e("div",{className:"vm-retention-filters-body__title",children:e("p",{children:["Provide a list of flags for retention configuration. Note that only ",e("code",{children:"-retentionPeriod"})," and ",e("code",{children:"-retentionFilter"})," flags are supported."]})}),e(ce,{type:"textarea",label:"Flags",value:d,error:a||s,autofocus:!0,onEnter:p,onChange:h,placeholder:'-retentionPeriod=4w -retentionFilter=up{env="dev"}:2w'})]}),e("div",{className:"vm-retention-filters-body__expr",children:[e("div",{className:"vm-retention-filters-body__title",children:e("p",{children:"Provide a list of metrics to check retention configuration."})}),e(ce,{type:"textarea",label:"Metrics",value:l,error:a||o,onEnter:p,onChange:u,placeholder:`up{env="dev"}
-up{env="prod"}
-`})]}),e("div",{className:"vm-retention-filters-body__result",children:e("table",{className:"vm-table",children:[e("thead",{className:"vm-table-header",children:e("tr",{children:[e("th",{className:"vm-table-cell vm-table-cell_header",children:"Metric"}),e("th",{className:"vm-table-cell vm-table-cell_header",children:"Applied retention"})]})}),e("tbody",{className:"vm-table-body",children:b})]})}),e("div",{className:"vm-retention-filters-body-top",children:[e("a",{className:"vm-link vm-link_with-icon",target:"_blank",href:"https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#retention-filters",rel:"help noreferrer",children:[e(ut,{}),"Documentation"]}),e(D,{variant:"text",onClick:v,children:"Try example"}),e(D,{variant:"contained",onClick:p,startIcon:e(nt,{}),children:"Apply"})]})]})]})},oh=({hideQuery:t,showAllSeries:n})=>{const{query:r}=xe(),{period:a}=ge(),{displayType:o,reduceMemUsage:s,seriesLimits:i}=je(),{serverUrl:l}=se(),[c,d]=N(!1),[m,u]=N(),[h,p]=N(),[v,b]=N([]),[f,g]=N(),_=q(new AbortController),y=M(()=>{if(p(""),b([]),!!a)if(!l)p(Ce.emptyServer);else if(r.every(w=>!w.trim()))b(r.map(()=>Ce.validQuery));else if(Qr(l)){const w={...a};return r.map(C=>fd(l,C,w,s))}else p(Ce.validServer)},[l,a,t,s]),S=W(async({fetchUrl:w,stateSeriesLimits:C,showAllSeries:k})=>{_.current.abort(),_.current=new AbortController;const{signal:L}=_.current;d(!0);try{const x=Math.floor(window.innerWidth/4),E=30*1024*1024,P=[],F=k?1/0:+C[o]||1/0;let O=1,H=0;for await(const Y of w){if(t==null?void 0:t.includes(O-1)){b(ie=>[...ie,""]),O++;continue}const K=await fetch(Y,{signal:L}),re=await K.text();if(new TextEncoder().encode(re).length>E){const ie="Response too large to display (over 30 MiB). Please narrow your query.";p(ie),b(X=>[...X,ie]);continue}if(!K.ok||!K.body)P.push({metric:{},values:[],group:O}),p(re),b(ie=>[...ie,`${re}`]);else{b($=>[...$,""]);const ie=F-P.length,X=re.split(`
-`).filter($=>$),R=X.slice(0,ie).sort();for(const $ of R){const B=wi($);if(!B)continue;const{values:ee,timestamps:te}=B,ue=ee.length,he=ue>x,Ye=he?x:ue,ye=he?ue/x:1,Pe=Array.from({length:Ye},(De,Ve)=>{const pe=he?Math.floor(Ve*ye):Ve;return[te[pe]/1e3,ee[pe]]});P.push({group:O,metric:B.metric,values:Pe})}H+=X.length}O++}const z=`Showing ${P.length} series out of ${H} series due to performance reasons. Please narrow down the query, so it returns less series`;g(H>F?z:""),u(P),d(!1)}catch(x){d(!1),x instanceof Error&&x.name!=="AbortError"&&(p(String(x)),console.error(x))}},[o,t]),T=W(()=>{_.current.abort(),u([])},[_]);return A(()=>{if(!(y!=null&&y.length))return;const w=setTimeout(S,400,{fetchUrl:y,stateSeriesLimits:i,showAllSeries:n});return()=>{var C;(C=_.current)==null||C.abort(),clearTimeout(w)}},[y,i,n]),{fetchUrl:y,isLoading:c,data:m,error:h,queryErrors:v,setQueryErrors:b,warning:f,abortFetch:T}},sh=()=>e(Te,{href:"https://docs.victoriametrics.com/victoriametrics/keyconcepts/#raw-samples",underlined:!0,children:"raw samples"}),ih=()=>e(Te,{underlined:!0,href:"https://docs.victoriametrics.com/victoriametrics/keyconcepts/#query-data",children:"Query API"}),lh=()=>e(Te,{underlined:!0,href:"https://docs.victoriametrics.com/victoriametrics/keyconcepts/#filtering",children:"time series selector"}),ch=()=>{Ia();const{isMobile:t}=J(),{displayType:n}=je(),{query:r}=xe(),[a,o]=N([]),[s,i]=N(!r[0]),[l,c]=N(!1),[d,m]=N(!0),{data:u,error:h,isLoading:p,warning:v,queryErrors:b,setQueryErrors:f,abortFetch:g,fetchUrl:_}=oh({hideQuery:a,showAllSeries:l}),y=q(null),S=!s&&h,T=k=>{o(k)},w=()=>{i(!1)},C=()=>{m(!1)};return e("div",{className:I({"vm-custom-panel":!0,"vm-custom-panel_mobile":t}),children:[e(xa,{label:"Time series selector",queryErrors:s?[]:b,setQueryErrors:f,setHideError:i,stats:[],isLoading:p,onHideQuery:T,onRunQuery:w,abortFetch:g,hideButtons:{traceQuery:!0,disableCache:!0},includeFunctions:!1}),d&&e(le,{variant:"info",children:e("div",{className:"vm-explore-metrics-header-description",children:[e("ul",{children:[e("li",{children:["This page provides a dedicated view for querying and displaying ",e(sh,{})," from VictoriaMetrics."]}),e("li",{children:["It expects only ",e(lh,{})," as a query argument."]}),e("li",{children:["Deduplication can only be disabled if it was previously enabled on the server (",e("code",{children:"-dedup.minScrapeInterval"}),")."]}),e("li",{children:["Users often assume that the ",e(ih,{})," returns data exactly as stored, but data samples and timestamps may be modified by the API."]})]}),e(D,{variant:"text",size:"small",startIcon:e(Ue,{}),onClick:C,ariaLabel:"close tips"})]})}),S&&e(le,{variant:"error",children:h}),v&&e(tr,{warning:v,query:r,onChange:c}),e("div",{className:I({"vm-custom-panel-body":!0,"vm-custom-panel-body_mobile":t,"vm-block":!0,"vm-block_mobile":t}),children:[p&&e(er,{}),e("div",{className:"vm-custom-panel-body-header",ref:y,children:[e("div",{className:"vm-custom-panel-body-header__tabs",children:e(Es,{tabFilter:k=>k.value!==Ne.table})}),u&&e(Ni,{fetchUrl:_,reportType:Ci.RAW_DATA})]}),e(yi,{graphData:u,liveData:u,isHistogram:!1,displayType:n,controlsRef:y})]})]})},dh=()=>{const[t,n]=N(!1);return e(V,{children:e(qr,{children:e(wa,{children:e(V,{children:[e(Ka,{onLoaded:n}),t&&e(Ur,{children:e(fe,{path:"/",element:e(Uc,{}),children:[e(fe,{path:Z.home,element:e(ki,{})}),e(fe,{path:Z.rawQuery,element:e(ch,{})}),e(fe,{path:Z.metrics,element:e(Du,{})}),e(fe,{path:Z.cardinality,element:e(lu,{})}),e(fe,{path:Z.topQueries,element:e(vu,{})}),e(fe,{path:Z.trace,element:e(_u,{})}),e(fe,{path:Z.queryAnalyzer,element:e(Zu,{})}),e(fe,{path:Z.dashboards,element:e(Fm,{})}),e(fe,{path:Z.withTemplate,element:e(Hu,{})}),e(fe,{path:Z.relabel,element:e(Bu,{})}),e(fe,{path:Z.activeQueries,element:e(Yu,{})}),e(fe,{path:Z.icons,element:e(Ou,{})}),e(fe,{path:Z.downsamplingDebug,element:e(th,{})}),e(fe,{path:Z.retentionDebug,element:e(ah,{})})]})})]})})})})},mh=()=>{const t={0:"#000000",1:"#AA0000",2:"#00AA00",3:"#AA5500",4:"#0000AA",5:"#AA00AA",6:"#00AAAA",7:"#AAAAAA",8:"#555555",9:"#FF5555",10:"#55FF55",11:"#FFFF55",12:"#5555FF",13:"#FF55FF",14:"#55FFFF",15:"#FFFFFF"};for(let n=0;n<6;n++)for(let r=0;r<6;r++)for(let a=0;a<6;a++){const o=16+n*36+r*6+a,s=n>0?n*40+55:0,i=r>0?r*40+55:0,l=a>0?a*40+55:0;t[o]=`rgb(${s},${i},${l})`}for(let n=0;n<24;n++){const r=232+n,a=8+n*10;t[r]=`rgb(${a},${a},${a})`}return t},uh=mh(),Xt=t=>uh[t]||null,hh="(?:\\u0007|\\u001B\\u005C|\\u009C)",ph=[`[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?${hh})`,"(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|"),xo=new RegExp(ph,"g"),gh=(t,n,r)=>{switch(n){case 0:return{color:null,fontWeight:null,fontStyle:null,textDecoration:null,backgroundColor:null};case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:return{...t,color:Xt(n-30)};case 90:case 91:case 92:case 93:case 94:case 95:case 96:case 97:return{...t,color:Xt(8+(n-90))};case 38:return r.length>2&&r[1]===5?{...t,color:Xt(r[2])}:t;case 40:case 41:case 42:case 43:case 44:case 45:case 46:case 47:return{...t,backgroundColor:Xt(n-40)};case 100:case 101:case 102:case 103:case 104:case 105:case 106:case 107:return{...t,backgroundColor:Xt(8+(n-100))};case 1:return{...t,fontWeight:"bold"};case 3:return{...t,fontStyle:"italic"};case 4:return{...t,textDecoration:"underline"};case 7:case 27:return{...t,color:t.backgroundColor,backgroundColor:t.color};case 22:return{...t,fontWeight:null};case 23:return{...t,fontStyle:null};case 24:return{...t,textDecoration:null};default:return t}},vh=t=>{var s;let n=0;const r=[];let a={color:null,fontWeight:null,fontStyle:null,textDecoration:null,backgroundColor:null},o;for(;(o=xo.exec(t))!==null;){const i=t.slice(n,o.index);i&&r.push(e("span",{style:{color:a.color||"inherit",fontWeight:a.fontWeight||"inherit",fontStyle:a.fontStyle||"inherit",textDecoration:a.textDecoration||"inherit",backgroundColor:a.backgroundColor||"inherit"},children:i},n));const l=((s=o[0].match(/\d+/g))==null?void 0:s.map(Number))||[];l.forEach(c=>{a=gh(a,c,l)}),n=xo.lastIndex}return n{const a=Fe(),[o,s]=oe(),[i,l]=N(!1),c=o.get(ke.GROUP_BY)||Re,d=o.get(ke.DISPLAY_FIELDS)||"",m=d?d.split(","):[],u=m.includes(t),h=c===t,p=W(async()=>{if(!i)try{await a(`${t}: "${n}"`),l(!0)}catch(f){console.error(f)}},[i,a]),v=()=>{const f=m,g=f.includes(t)?f.filter(_=>_!==t):[...f,t];o.set(ke.DISPLAY_FIELDS,g.join(",")),s(o)},b=()=>{h?o.delete(ke.GROUP_BY):o.set(ke.GROUP_BY,t),s(o)};return A(()=>{if(i===null)return;const f=setTimeout(()=>l(!1),2e3);return()=>clearTimeout(f)},[i]),e("tr",{className:"vm-group-logs-row-fields-item",children:[e("td",{className:"vm-group-logs-row-fields-item-controls",children:e("div",{className:"vm-group-logs-row-fields-item-controls__wrapper",children:[e(j,{title:i?"Copied":"Copy to clipboard",children:e(D,{className:"vm-group-logs-row-fields-item-controls__button",variant:"text",color:"gray",size:"small",startIcon:e(Xe,{}),onClick:p,ariaLabel:"copy to clipboard"})}),e(j,{title:u?"Hide this field":"Show this field instead of the message",children:e(D,{className:"vm-group-logs-row-fields-item-controls__button",variant:"text",color:u?"secondary":"gray",size:"small",startIcon:u?e(Vt,{}):e(Vt,{}),onClick:v,ariaLabel:u?"Hide this field":"Show this field instead of the message"})}),!r&&e(j,{title:h?"Ungroup this field":"Group by this field",children:e(D,{className:"vm-group-logs-row-fields-item-controls__button",variant:"text",color:h?"secondary":"gray",size:"small",startIcon:e(Lt,{}),onClick:b,ariaLabel:h?"Ungroup this field":"Group by this field"})})]})}),e("td",{className:"vm-group-logs-row-fields-item__key",children:t}),e("td",{className:"vm-group-logs-row-fields-item__value",children:n})]})},_h=zr(fh),lr=t=>{const[n,r]=N(!!Ae(t)),a=W(()=>{const s=!!Ae(t);s!==n&&r(s)},[t,n]),o=W(s=>{Le(t,s)},[t]);return me("storage",a),M(()=>[n,o],[n,o])},bh=({log:t,hideGroupButton:n})=>{const r=M(()=>Object.entries(t).sort(([o],[s])=>o.localeCompare(s)),[t]),[a]=lr("LOGS_DISABLED_HOVERS");return e("div",{className:I({"vm-group-logs-row-fields":!0,"vm-group-logs-row-fields_interactive":!a}),children:e("table",{children:e("tbody",{children:r.map(([o,s])=>e(_h,{field:o,value:s,hideGroupButton:n},o))})})})},yh=({log:t,displayFields:n=["_msg"],onItemClick:r,hideGroupButton:a})=>{const{value:o,toggle:s}=ae(!1),[i,l]=N(!1),c=Fe(),[d]=oe(),{markdownParsing:m,ansiParsing:u}=ya(),{timezone:h}=ge(),p=d.get(ke.NO_WRAP_LINES)==="true",v=d.get(ke.DATE_FORMAT)||$t,b=M(()=>t._time?U(t._time).tz().format(v):"",[t._time,h,v]),f=M(()=>!m||!t._msg?"":Bt(t._msg.replace(/```/g,"\n```\n")),[t._msg,m]),g=Object.keys(t).length>0,_=M(()=>{const w=[];return g||w.push("-"),n.some(C=>t[C])?n.filter(C=>t[C]).forEach(C=>{const k=C==="_msg"&&u?vh(t[C]):t[C];w.push(k)}):Object.entries(t).forEach(([C,k])=>{w.push(`${C}: ${k}`)}),w},[t,g,n,u]),[y]=lr("LOGS_DISABLED_HOVERS"),S=()=>{s(),r==null||r(t)},T=W(async w=>{if(w.stopPropagation(),!i)try{await c(JSON.stringify(t,null,2)),l(!0)}catch(C){console.error(C)}},[i,c]);return A(()=>{if(i===null)return;const w=setTimeout(()=>l(!1),2e3);return()=>clearTimeout(w)},[i]),e("div",{className:"vm-group-logs-row",children:[e("div",{className:I({"vm-group-logs-row-content":!0,"vm-group-logs-row-content_interactive":!y}),onClick:S,children:[e(j,{title:i?"Copied":"Copy to clipboard",children:e(D,{className:"vm-group-logs-row-content__copy-row",variant:"text",color:"gray",size:"small",startIcon:e(Xe,{}),onClick:T,ariaLabel:"copy to clipboard"})}),g&&e("div",{className:I({"vm-group-logs-row-content__arrow":!0,"vm-group-logs-row-content__arrow_open":o}),children:e(be,{})}),e("div",{className:I({"vm-group-logs-row-content__time":!0,"vm-group-logs-row-content__time_missing":!b}),children:b||"timestamp missing"}),e("div",{className:I({"vm-group-logs-row-content__msg":!0,"vm-group-logs-row-content__msg_empty-msg":!t._msg,"vm-group-logs-row-content__msg_missing":!_,"vm-group-logs-row-content__msg_single-line":p}),dangerouslySetInnerHTML:f?{__html:f}:void 0,children:_.map((w,C)=>e("span",{className:"vm-group-logs-row-content__sub-msg",children:w},`${w}_${C}`))})]}),g&&o&&e(bh,{hideGroupButton:a,log:t})]})},Ei=zr(yh);var lt=(t=>(t.BAR="Bars",t.LINE="Lines",t.LINE_STEPPED="Stepped lines",t.POINTS="Points",t))(lt||{});const wh=(t,n,r,a)=>{var i,l,c;const o=t.under.clientWidth/hi-1,s=(c=(l=(i=jt)==null?void 0:i.paths)==null?void 0:l.bars)==null?void 0:c.call(l,{size:[.96,o]});return s?s(t,n,r,a):null},Ch=(t,n,r,a)=>{var s,i,l;const o=(l=(i=(s=jt)==null?void 0:s.paths)==null?void 0:i.stepped)==null?void 0:l.call(i,{align:1});return o?o(t,n,r,a):null},Nh=t=>{switch(t){case lt.BAR:return wh;case lt.LINE_STEPPED:return Ch;default:return}},Sh=["color-log-hits-bar-1","color-log-hits-bar-2","color-log-hits-bar-3","color-log-hits-bar-4","color-log-hits-bar-5"],kh={[lt.BAR]:1,[lt.LINE_STEPPED]:2,[lt.LINE]:1.2,[lt.POINTS]:0},Rr="other",xi=t=>t!=null&&t._isOther?Rr:Object.values((t==null?void 0:t.fields)||{}).map(r=>r||'""').join(", "),Th=(t,n=0,r=1)=>{const a=t.series.filter(({scale:s})=>s==="y").map(({max:s})=>s||r),o=nr(a);return rr(0,o||r)},Lh=({data:t,logHits:n,xRange:r,bands:a,containerSize:o,onReadyChart:s,setPlotScale:i,graphOptions:l})=>{const{isDarkTheme:c}=se(),[d,m]=N(-1),u=v=>{const b=v.cursor.idx??-1;m(b)},h=M(()=>{let v=0;return t.map((b,f)=>{if(f===0)return{};const g=n==null?void 0:n[f-1],_=xi(g),y=g==null?void 0:g._isOther,S=y?"color-log-hits-bar-0":Sh[v++],T=tt(S);return{label:_,width:kh[l.graphStyle],spanGaps:!0,show:!0,stroke:T,fill:l.fill&&!y?`${T}80`:l.fill?T:"",paths:Nh(l.graphStyle)}})},[c,t,l]);return{options:{series:h,bands:a,width:o.width||window.innerWidth/2,height:o.height||200,cursor:{points:{width:(v,b,f)=>f/4,size:(v,b)=>{var f,g,_;return(((_=(g=(f=v.series)==null?void 0:f[b])==null?void 0:g.points)==null?void 0:_.size)||1)*1.5},stroke:(v,b)=>{var f;return`${((f=h==null?void 0:h[b])==null?void 0:f.stroke)||"#ffffff"}`},fill:()=>"#ffffff"}},scales:{x:{time:!0,range:()=>[r.min,r.max]},y:{range:Th}},hooks:{drawSeries:[],ready:[s],setCursor:[u],setSelect:[Ha(i)],destroy:[za]},legend:{show:!1},axes:Ra([{},{scale:"y"}]),tzDate:v=>U(Ft(We(v))).local().toDate()},series:h,focusDataIdx:d}},Mi=t=>(/^{.+}$/.test(t)?t.slice(1,-1).split(","):[t]).filter(Boolean),Ii=t=>{const n=U(t.start*1e3),r=U(t.end*1e3),a=r.diff(n,"milliseconds"),o=Math.ceil(a/hi)||1;return{start:n,end:r,step:o}},Pi=(t,n=Re)=>/(.+)?=(".+")/.test(t)?t.replace(/=/,": "):`${n}: "${t}"`,Ah=t=>t.reduce((n,r)=>n+(r.total||0),0),Di=t=>(n,r)=>{if(n.label===Rr)return 1;if(r.label===Rr)return-1;const a=n[t];return r[t]-a},Eh=()=>{const{isMobile:t}=J(),{markdownParsing:n,ansiParsing:r}=ya(),a=Is();return e(V,{children:[e("div",{className:"vm-group-logs-configurator-item",children:[e(_e,{label:"Enable markdown parsing",value:n,onChange:i=>{a({type:"SET_MARKDOWN_PARSING",payload:i}),r&&a({type:"SET_ANSI_PARSING",payload:!1})},fullWidth:t}),e("div",{className:"vm-group-logs-configurator-item__info",children:"Toggle this switch to enable or disable the Markdown formatting for log entries. Enabling this will parse log texts to Markdown."})]}),e("div",{className:"vm-group-logs-configurator-item",children:[e(_e,{label:"Enable ANSI parsing",value:r,onChange:i=>{a({type:"SET_ANSI_PARSING",payload:i}),n&&a({type:"SET_MARKDOWN_PARSING",payload:!1})},fullWidth:t}),e("div",{className:"vm-group-logs-configurator-item__info",children:"Toggle this switch to enable or disable ANSI escape sequence parsing for log entries. Enabling this will interpret ANSI codes to render colored log output."})]})]})},{GROUP_BY:Mo,NO_WRAP_LINES:Io,COMPACT_GROUP_HEADER:Po,DISPLAY_FIELDS:kr,DATE_FORMAT:Tr}=ke,En="Group view settings",xh=({logs:t})=>{const[n,r]=oe(),a=n.get(Mo)||Re,o=n.get(Io)==="true",s=n.get(Po)==="true",i=n.get(kr)||"",l=i?i.split(","):[tn],[c,d]=N(n.get(Tr)||$t),[m,u]=N(""),[h,p]=lr("LOGS_DISABLED_HOVERS"),v=a!==Re,b=l.length!==1||l[0]!==tn,f=c!==$t,g=[v,b,o,s,f].some(Boolean),_=M(()=>{const O=new Set(t.map(H=>Object.keys(H)).flat());return Array.from(O).sort((H,z)=>H.localeCompare(z))},[t]),{value:y,toggle:S,setFalse:T}=ae(!1),w=O=>{n.set(Mo,O),r(n)},C=O=>{const H=l,z=H.includes(O)?H.filter(Y=>Y!==O):[...H,O];n.set(kr,z.join(",")),r(n)},k=()=>{n.delete(kr),r(n)},L=()=>{n.set(Io,String(!o)),r(n)},x=()=>{n.set(Po,String(!s)),r(n)},E=O=>{U(new Date,O,!0).isValid()||u("Invalid date format"),d(O)},P=()=>{c===$t?n.delete(Tr):n.set(Tr,c),r(n),T()};return e(V,{children:[e("div",{className:"vm-group-logs-configurator-button",children:[e(j,{title:g?e("div",{className:"vm-group-logs-configurator__tooltip",children:[e("p",{children:En}),e("hr",{}),e("ul",{children:[v&&e("li",{children:["Group by ",e("code",{children:`"${a}"`})]}),b&&e("li",{children:["Display fields: ",l.length||1]}),o&&e("li",{children:"Single-line text is enabled"}),s&&e("li",{children:"Compact group header is enabled"}),f&&e("li",{children:["Date format: ",e("code",{children:c})]})]})]}):En,children:e(D,{variant:"text",startIcon:e(Ze,{}),onClick:S,ariaLabel:En})}),g&&e("span",{className:"vm-group-logs-configurator-button__marker"})]}),y&&e(Me,{title:En,onClose:P,children:e("div",{className:"vm-group-logs-configurator",children:[e("div",{className:"vm-group-logs-configurator-item",children:[e(it,{value:a,list:[Ut,..._],label:"Group by field",placeholder:"Group by field",onChange:w,searchable:!0}),e(j,{title:"Reset grouping",children:e(D,{variant:"text",color:"primary",startIcon:e(ct,{}),onClick:()=>w(Re)})}),e("span",{className:"vm-group-logs-configurator-item__info",children:["Select a field to group logs by (default: ",e("code",{children:Re}),")."]})]}),e("div",{className:"vm-group-logs-configurator-item",children:[e(it,{value:l,list:_,label:"Display fields",placeholder:"Display fields",onChange:C,searchable:!0}),e(j,{title:"Clear fields",children:e(D,{variant:"text",color:"primary",startIcon:e(ct,{}),onClick:k})}),e("span",{className:"vm-group-logs-configurator-item__info",children:["Select fields to display instead of the message (default: ",e("code",{children:tn}),")."]})]}),e("div",{className:"vm-group-logs-configurator-item",children:[e(ce,{autofocus:!0,label:"Date format",value:c,onChange:E,error:m}),e(j,{title:"Reset format",children:e(D,{variant:"text",color:"primary",startIcon:e(ct,{}),onClick:()=>d($t)})}),e("span",{className:"vm-group-logs-configurator-item__info vm-group-logs-configurator-item__info_input",children:["Set the date format (e.g., ",e("code",{children:"YYYY-MM-DD HH:mm:ss"}),"). Learn more in ",e(Te,{href:"https://day.js.org/docs/en/display/format",children:"this documentation"}),". ",e("br",{}),"Your current date format: ",e("code",{children:U().format(c||$t)})]})]}),e(Eh,{}),e("div",{className:"vm-group-logs-configurator-item",children:[e(_e,{value:o,onChange:L,label:"Single-line message"}),e("span",{className:"vm-group-logs-configurator-item__info",children:"Displays message in a single line and truncates it with an ellipsis if it exceeds the available space."})]}),e("div",{className:"vm-group-logs-configurator-item",children:[e(_e,{value:s,onChange:x,label:"Compact group header"}),e("span",{className:"vm-group-logs-configurator-item__info",children:'Shows group headers in one line with a "+N more" badge for extra fields.'})]}),e("div",{className:"vm-group-logs-configurator-item",children:[e(_e,{value:h,onChange:p,label:"Disable hover effects"}),e("span",{className:"vm-group-logs-configurator-item__info",children:"Disable row highlighting on hover to improve performance with large datasets."})]})]})})]})},Do=({pair:t,isHide:n})=>{const{isDarkTheme:r}=se(),a=Fe(),[o]=oe(),[s,i]=N(null),l=o.get(ke.GROUP_BY)||Re,c=d=>async m=>{m.stopPropagation();const u=Pi(d,l);await a(u)&&i(d)};return A(()=>{if(s===null)return;const d=setTimeout(()=>i(null),2e3);return()=>clearTimeout(d)},[s]),e(j,{title:s===t?"Copied":"Copy to clipboard",placement:"top-center",children:e("div",{className:I({"vm-group-logs-section-keys__pair":!0,"vm-group-logs-section-keys__pair_hide":n,"vm-group-logs-section-keys__pair_dark":r}),onClick:c(t),children:t})})},Mh=({group:t,index:n})=>{const{isDarkTheme:r}=se(),[a]=oe(),o=q(null),s=q(null),{value:i,toggle:l,setFalse:c}=ae(!1),[d,m]=N(0),u=a.get(ke.GROUP_BY)||Re,h=a.get(ke.COMPACT_GROUP_HEADER)==="true",p=t.pairs,v=p.length-d-1,b=g=>{g.stopPropagation(),l()},f=W(()=>{if(!h||!o.current){m(0);return}const g=o.current,_=g.getBoundingClientRect(),S=Array.from(g.querySelectorAll(".vm-group-logs-section-keys__pair:not(.vm-group-logs-section-keys__pair_more)"));let T=0;for(const w of S){const{right:C}=w.getBoundingClientRect();C+220>_.width&&T++}m(T)},[h,o]);return A(f,[t.pairs,h,o]),me("resize",f),e("div",{className:I({"vm-group-logs-section-keys":!0,"vm-group-logs-section-keys_compact":h}),ref:o,children:[e("span",{className:"vm-group-logs-section-keys__title",children:u===Ut?Ut:e(V,{children:[n+1,". Group by ",e("code",{children:u}),":"]})}),p.map((g,_)=>e(Do,{pair:g,isHide:d?_>v:!1},`${t.keysString}_${g}`)),d>0&&e(V,{children:[e("div",{className:I({"vm-group-logs-section-keys__pair":!0,"vm-group-logs-section-keys__pair_more":!0,"vm-group-logs-section-keys__pair_dark":r}),ref:s,onClick:b,children:["+",d," more"]}),e(Ie,{open:i,buttonRef:s,placement:"bottom-left",onClose:c,children:e("div",{className:"vm-group-logs-section-keys vm-group-logs-section-keys_popper",children:p.slice(v+1).map(g=>e(Do,{pair:g},`${t.keysString}_${g}`))})})]}),e("span",{className:"vm-group-logs-section-keys__count",children:[t.total," entries"]})]})},Oi=({currentPage:t,totalItems:n,itemsPerPage:r,onPageChange:a,maxVisiblePages:o=10})=>{const s=Math.ceil(n/r),i=m=>{m<1||m>s||a(m)},l=M(()=>{const m=[];if(s<=o)for(let u=1;u<=s;u++)m.push(u);else{const u=Math.max(1,t-Math.floor(o/2)),h=Math.min(s,u+o-1);u>1&&(m.push(1),u>2&&m.push("..."));for(let p=u;p<=h;p++)m.push(p);h()=>{i(t+m)},d=m=>()=>{typeof m=="number"&&i(m)};return l.length<=1?null:e("div",{className:"vm-pagination",children:[e("button",{className:"vm-pagination__page vm-pagination__arrow vm-pagination__arrow_prev",onClick:c(-1),disabled:t===1,children:e(be,{})}),l.map((m,u)=>e("button",{onClick:d(m),className:I({"vm-pagination__page":!0,"vm-pagination__page_active":t===m,"vm-pagination__page_disabled":m==="..."}),disabled:m==="...",children:m},u)),e("button",{className:"vm-pagination__page vm-pagination__arrow vm-pagination__arrow_next",onClick:c(1),disabled:t===s,children:e(be,{})})]})},Oo=[10,25,50,100,250,500,1e3],Za=({limit:t,allowUnlimited:n,onChange:r,onOpenSelect:a})=>{const{isMobile:o}=J(),s=q(null),i=M(()=>n?[...Oo,0]:Oo,[n]),{value:l,toggle:c,setFalse:d}=ae(!1),m=()=>{c(),l||a==null||a()},u=h=>()=>{r(h),d()};return e(V,{children:[e("div",{className:"vm-select-limits-button",onClick:m,ref:s,children:[e("div",{children:["Rows per page: ",e("b",{children:t||"All"})]}),e(Je,{})]}),e(Ie,{open:l,onClose:d,placement:"bottom-right",buttonRef:s,children:e("div",{className:"vm-select-limits",children:i.map(h=>e("div",{className:I({"vm-list-item":!0,"vm-list-item_mobile":o,"vm-list-item_active":h===t}),onClick:u(h),children:h||"All"},h))})})]})},Ih=(t,n,r)=>M(()=>{if(!r)return t;const a=(n-1)*r,o=a+r;let s=0;const i=[];for(const l of t){const c=l.values.length,d=s,m=s+c;if(m<=a){s=m;continue}if(d>=o)break;const u=Math.max(0,a-d),h=Math.min(c,o-d),p={...l,values:l.values.slice(u,h)};if(i.push(p),s=m,s>=o)break}return i},[t,n,r]),Ph=({title:t,downloadFormatOptions:n,onDownload:r})=>{const{value:a,setTrue:o,setFalse:s}=ae(!1),i=q(null),l=W(()=>{if(a){s();return}n&&n.length>0?o():(r(),s())},[r,s,a,o]),c=W(d=>{const m=d.currentTarget;r(m.textContent??void 0)},[r]);return e(V,{children:[e("div",{ref:i,children:e(j,{title:t,children:e(D,{variant:"text",startIcon:e(fn,{}),onClick:l,ariaLabel:t})})}),n&&n.length>0&&e(Ie,{open:a,onClose:s,buttonRef:i,placement:"bottom-right",children:n.map(d=>e("div",{className:"vm-download-button__format-option",children:e(D,{variant:"text",onClick:c,className:"vm-download-button__format-option-button",children:d})},d))})]})},cr=({getLogs:t})=>{const{fileExtensions:n,getDownloaderByExtension:r}=M(()=>{const o=[{extension:"csv",downloader:Cd},{extension:"json",downloader:(l,c)=>{const d=JSON.stringify(l,null,2);Pa(d,c)}}],s=l=>{var c;return(c=o.find(({extension:d})=>d===l))==null?void 0:c.downloader};return{fileExtensions:o.map(({extension:l})=>l),getDownloaderByExtension:s}},[]),a=W(o=>{if(!o)return;const s=t(),i=r(o);if(i){const l=U().utc().format(Wr);i(s,`vmui_logs_${l}.${o}`)}},[t]);return e(Ph,{title:"Download logs",onDownload:a,downloadFormatOptions:n})},Dh=/(?:^|\|)\s*(?:sort|order)\b/i;function Oh(t){return Dh.test(t)}const Rh=({logs:t,settingsRef:n})=>{const{isMobile:r}=J(),[a,o]=oe(),s=a.get("query")||"",i=Oh(s),[l,c]=N(1),[d,m]=N([]),u=a.get(ke.GROUP_BY)||Re,h=a.get(ke.DISPLAY_FIELDS)||tn,p=M(()=>h.split(","),[h]),v=Number(a.get(ke.ROWS_PER_PAGE)),b=isNaN(v)?0:v,f=M(()=>d.every(Boolean),[d]),g=M(()=>js(t,[u]).map(k=>{var P;const L=((P=k.values[0])==null?void 0:P[u])||"",x=Mi(L),E=i?k.values:k.values.toReversed();return{keys:k.keys,keysString:k.keys.join(""),values:E,pairs:x,total:E.length}}).sort((k,L)=>L.total-k.total),[t,u,i]),_=Ih(g,l,b),y=W(()=>{m(new Array(g.length).fill(!f))},[f,g.length]),S=W(k=>L=>{m(x=>{const E=[...x];return E[k]=L,E})},[]),T=k=>{k?a.set(ke.ROWS_PER_PAGE,String(k)):a.delete(ke.ROWS_PER_PAGE),o(a)},w=k=>{c(k),window.scrollTo({top:0})},C=W(()=>t,[t]);return A(()=>{m(new Array(g.length).fill(!r))},[g]),A(()=>{c(1)},[b]),e(V,{children:[e("div",{className:"vm-group-logs",children:[_.map((k,L)=>e("div",{className:"vm-group-logs-section",children:e(Kn,{defaultExpanded:d[L],onChange:S(L),title:e(Mh,{group:k,index:L}),children:e("div",{className:"vm-group-logs-section-rows",children:k.values.map((x,E)=>e(Ei,{log:x,displayFields:p},`${L}_${E}_${x._time}`))})})},k.keysString)),e(Oi,{currentPage:l,totalItems:t.length,itemsPerPage:b||1/0,onPageChange:w})]}),n.current&&jn.createPortal(e("div",{className:"vm-group-logs-header",children:[e("div",{className:"vm-explore-logs-body-header__log-info",children:["Total groups: ",e("b",{children:g.length})]}),e(Za,{allowUnlimited:!0,limit:b,onChange:T}),e(j,{title:f?"Collapse All":"Expand All",children:e(D,{variant:"text",startIcon:f?e(ua,{}):e(ma,{}),onClick:y,ariaLabel:f?"Collapse All":"Expand All"})}),e(cr,{getLogs:C}),e(xh,{logs:t})]}),n.current)]})},Xa=()=>e("div",{className:"vm-explore-logs-body__empty",children:"No logs found"}),$h=jn.memo(Rh),Fh=({data:t,settingsRef:n})=>t.length?e(V,{children:e($h,{logs:t,settingsRef:n})}):e(Xa,{}),zh=t=>{switch(t){case"_time":return"vm-table-cell_logs-time";default:return"vm-table-cell_logs"}},Hh=[{key:"_vmui_data",title:"Data",className:"vm-table-cell_logs vm-table-cell_pre"}],Vh=({logs:t,displayColumns:n,tableCompact:r,columns:a,rowsPerPage:o})=>{const s=q(null),[i,l]=N(1),c=M(()=>t.map(p=>{const v=JSON.stringify(p,null,2);return{...p,_vmui_data:v}}),[t]),d=M(()=>a.map(p=>({key:p,title:p,className:zh(p)})),[a]),m=M(()=>r?Hh:n!=null&&n.length?d.filter(p=>n.includes(p.key)):[],[d,n,r]),u=M(()=>{const p=(i-1)*o,v=p+o;return{startIndex:p,endIndex:v}},[i,o]),h=p=>{if(l(p),s.current){const v=s.current.getBoundingClientRect().top+window.scrollY-50;window.scrollTo({top:v})}};return A(()=>{l(1)},[t,o]),e(V,{children:[e("div",{ref:s,children:e(Ai,{rows:c,columns:m,defaultOrderBy:"_time",defaultOrderDir:"desc",copyToClipboard:"_vmui_data",paginationOffset:u})}),e(Oi,{currentPage:i,totalItems:c.length,itemsPerPage:o,onPageChange:h})]})},qh=jn.memo(Vh),Uh=({data:t,settingsRef:n})=>{const{setSearchParamsFromKeys:r}=rt(),[a,o]=N([]),[s,i]=Se(100,"rows_per_page"),l=M(()=>{const u=new Set;for(const h of t)for(const p in h)u.add(p);return Array.from(u).sort((h,p)=>h.localeCompare(p))},[t]),c=u=>{i(u),r({rows_per_page:u})},d=W(()=>t,[t]),m=()=>n.current?pt(e("div",{className:"vm-table-view__settings",children:[e(Za,{limit:s,onChange:c}),e("div",{className:"vm-table-view__settings-buttons",children:[t.length>0&&e(cr,{getLogs:d}),e(Ga,{columns:l,selectedColumns:a,onChangeColumns:o})]})]}),n.current):null;return t.length?e(V,{children:[m(),e(qh,{logs:t,displayColumns:a,tableCompact:!1,columns:l,rowsPerPage:Number(s)})]}):e(Xa,{})},Lr="JSON settings",Ro=["asc","desc"],Bh=({fields:t,sortQueryParamName:n,fieldSortQueryParamName:r})=>{const[a,o]=oe(),s=q(null),[i,l]=N(null),{value:c,toggle:d,setFalse:m}=ae(!1),[u,h]=N(null),[p,v]=N(null);A(()=>{const w=a.get(n),C=L=>Ro.includes(L);if(w){const[L,x]=w.split(":").map(decodeURIComponent);L&&C(x)&&(h(L),v(x))}const k=a.get(r);(k==="asc"||k==="desc")&&l(k)},[a,n,r,h,v,l]);const b=W((w,C)=>{const k=new URLSearchParams(a.toString());!w||!C?k.delete(n):k.set(n,`${w}:${C||""}`),o(k)},[a,n]),f=w=>{const C=p||"asc";h(w),v(C),b(w,C)},g=()=>{h(null),v(null),b(null,null)},_=W(()=>{let w=null;i===null?w="asc":i==="asc"&&(w="desc"),l(w);const C=new URLSearchParams(a.toString());w?C.set(r,encodeURIComponent(w)):C.delete(r),o(C)},[i,a,r]),y=w=>{const C=u||t[0];h(C),v(w),b(C,w)},S=M(()=>({default:{title:"Set field sort order. Click to sort in ascending order",icon:e(Ts,{})},asc:{title:"Fields sorted ascending. Click to sort in descending order",icon:e(Ls,{})},desc:{title:"Fields sorted descending. Click to reset sort",icon:e(As,{})}}),[]),T=M(()=>{const{title:w,icon:C}=S[i??"default"];return e(j,{title:w,children:e(D,{variant:"text",startIcon:C,onClick:_,ariaLabel:w})})},[i,d,_,S]);return e("div",{className:"vm-json-settings",children:[T,e(j,{title:Lr,children:e("div",{ref:s,children:e(D,{variant:"text",startIcon:e(Ze,{}),onClick:d,ariaLabel:Lr})})}),c&&e(Me,{title:Lr,className:"vm-json-settings-modal",onClose:m,children:e("div",{className:"vm-json-settings-modal-section",children:e("div",{className:"vm-json-settings-modal-section__sort-settings-container",children:[e(it,{value:u||"",onChange:f,list:t,label:"Select field"}),e(it,{value:p||"",onChange:y,list:Ro,label:"Sort direction"}),(u||p)&&e(D,{variant:"outlined",color:"error",onClick:g,children:"Reset sort"})]})})})]})},jh=jn.memo(or),$o="json_sort",Fo="json_field_sort",Qh=({data:t,settingsRef:n})=>{const r=W(()=>t,[t]),[a]=oe(),o=a.get($o),s=a.get(Fo),[i,l]=M(()=>{const[h,p]=(o==null?void 0:o.split(":").map(decodeURIComponent))||[];return[h,p]},[o]),c=M(()=>{const h=new Set(t.flatMap(Object.keys));return Array.from(h)},[t]),d=M(()=>{if(!s)return t;const h=c.toSorted((p,v)=>s==="asc"?p.localeCompare(v):v.localeCompare(p));return t.map(p=>h.reduce((v,b)=>(p[b]&&(v[b]=p[b]),v),{}))},[c,s,t]),m=M(()=>!i||!l?d:Yi(d,[i],[l]),[d,i,l]),u=()=>n.current?pt(t.length>0&&e("div",{className:"vm-json-view__settings-container",children:[e(cr,{getLogs:r}),e(Bh,{fields:c,sortQueryParamName:$o,fieldSortQueryParamName:Fo})]}),n.current):null;return t.length?e(V,{children:[u(),e(jh,{data:m})]}):e(Xa,{})},dr=()=>{const[t]=oe();return M(()=>({AccountID:t.get("accountID")||"0",ProjectID:t.get("projectID")||"0"}),[t])};class Yh{constructor(n=200,r=10,a=6,o=2){we(this,"threshold");we(this,"windowSize");we(this,"minHighCount");we(this,"minNormalCount");we(this,"window");we(this,"state");this.threshold=n,this.windowSize=r,this.minHighCount=a,this.minNormalCount=o,this.window=[],this.state="normal"}update(n){this.window.push(n),this.window.length>this.windowSize&&this.window.shift();const r=this.window.filter(a=>a>this.threshold).length;return this.state==="normal"?r>=this.minHighCount&&(this.state="high"):this.state==="high"&&rasync o=>{let s=Date.now();const i=setInterval(()=>{if(Date.now()-s>zo){clearInterval(i),a();return}},zo);try{for(;;){const{done:l,value:c}=await o.read();if(l)break;s=Date.now();const d=new TextDecoder().decode(c),m=(t.current+d).split(`
-`);t.current=m.pop()||"",n.current=[...n.current,...m]}}catch(l){l instanceof Error&&l.name!=="AbortError"&&(console.error("Stream processing error:",l),a())}finally{clearInterval(i)}},Jh=(t,n)=>t.map(r=>{try{const a=r&&JSON.parse(r);return a._log_id=n.current++,a}catch(a){return console.error(`Failed to parse "${r}" to JSON
-`,a),null}}).filter(Boolean),Kh=({lines:t,limit:n,counterRef:r,setIsLimitedLogsPerUpdate:a,setLogs:o,bufferLinesRef:s,logFlowAnalyzerRef:i})=>{var m;const l=((m=i==null?void 0:i.current)==null?void 0:m.update(t.length))==="high",c=l&&t.length>Gh?t.slice(-200):t,d=Jh(c,r);a(l),o(u=>{const h=[...u,...d];return h.length>n?h.slice(-n):h}),s.current=[]},Zh=(t,n)=>{const{serverUrl:r}=se(),[a,o]=N([]),{value:s,setTrue:i,setFalse:l}=ae(!1),c=dr(),[d,m]=N(),[u,h]=N(!1),p=q(0n),v=q(new AbortController),b=q(null),f=q(null),g=q(""),_=q([]),y=q(new Yh),S=W(()=>{b.current&&(b.current.cancel(),b.current=null),f.current&&clearInterval(f.current),g.current&&(g.current=""),v.current.abort()},[]),T=W(async()=>{S(),v.current=new AbortController;const{signal:C}=v.current;m(void 0);try{const k=await fetch(`${r}/select/logsql/tail`,{signal:C,method:"POST",headers:{...c},body:new URLSearchParams({query:t.trim()})});if(!k.ok||!k.body){const E=await k.text();return m(E),o([]),!1}const L=k.body.getReader();return b.current=L,Wh(g,_,m,T)(L),!0}catch(k){return k instanceof Error&&k.name!=="AbortError"&&(m(String(k)),console.error(k),o([])),!1}},[t,S]);A(()=>{if(s){const k=setInterval(()=>{_.current.length>n&&(_.current=_.current.slice(-n))},Ho);return()=>{clearInterval(k)}}const C=setInterval(()=>{const k=_.current;Kh({lines:k,limit:n,counterRef:p,setIsLimitedLogsPerUpdate:h,setLogs:o,bufferLinesRef:_,logFlowAnalyzerRef:y})},Ho);return()=>clearInterval(C)},[n,s,u]);const w=W(()=>{o([])},[]);return{logs:a,isPaused:s,error:d,startLiveTailing:T,stopLiveTailing:S,pauseLiveTailing:i,resumeLiveTailing:l,clearLogs:w,isLimitedLogsPerUpdate:u}},Xh=({settingsRef:t,rowsPerPage:n,handleSetRowsPerPage:r,logs:a,isPaused:o,handleResumeLiveTailing:s,pauseLiveTailing:i,clearLogs:l,isRawJsonView:c,onRawJsonViewChange:d})=>{const m=q(null),{value:u,setFalse:h,setTrue:p}=ae(!1),v=W(()=>a.map(({_log_id:b,...f})=>f),[a]);return t.current?pt(e("div",{className:"vm-live-tailing-view__settings",children:[e(Za,{limit:n,onChange:r,onOpenSelect:i}),e("div",{className:"vm-live-tailing-view__settings-buttons",children:[a.length>0&&e(cr,{getLogs:v}),o?e(j,{title:"Resume live tailing",children:e(D,{variant:"text",color:"primary",onClick:s,startIcon:e(hn,{}),ariaLabel:"Resume live tailing"})}):e(j,{title:"Pause live tailing",children:e(D,{variant:"text",color:"primary",onClick:i,startIcon:e(Ss,{}),ariaLabel:"Pause live tailing"})}),e(j,{title:"Clear logs",children:e(D,{variant:"text",color:"secondary",onClick:l,startIcon:e(gn,{}),ariaLabel:"Clear logs"})}),e(j,{title:"Settings",children:e(D,{ref:m,variant:"text",color:"secondary",onClick:p,startIcon:e(Ze,{}),ariaLabel:"Settings"})}),u&&e(Me,{onClose:h,title:"Live tailing settings",children:e("div",{className:"vm-live-tailing-view__settings-modal",children:e("div",{className:"vm-live-tailing-view__settings-modal-item",children:[e(_e,{label:"Raw JSON View",value:c,onChange:d}),e("span",{className:"vm-group-logs-configurator-item__info",children:"When this option is enabled, logs will be displayed in raw JSON format. This improves performance and uses less CPU and memory."})]})})})]})]}),t.current):null},ep=({className:t})=>{const[n,r]=N(!1),a=()=>{const s=window.pageYOffset||document.documentElement.scrollTop,i=window.innerHeight;r(s>i)},o=W(()=>{window.scrollTo({top:0,behavior:"smooth"})},[]);return A(()=>(window.addEventListener("scroll",a),a(),()=>{window.removeEventListener("scroll",a)}),[]),e("div",{className:I({"vm-scroll-to-top-button":!0,"vm-scroll-to-top-button_visible":n},t),children:e(j,{title:"Scroll to top",children:e(D,{variant:"contained",color:"primary",onClick:o,ariaLabel:"Scroll to top",startIcon:e(ks,{})})})})},tp=100,np=()=>window.scrollTo({top:document.documentElement.scrollHeight,behavior:"smooth"}),Vo=Gi(np,200),rp=({settingsRef:t})=>{const n=q(null),[r,a]=N(!0),[o]=oe(),{setSearchParamsFromKeys:s}=rt(),[i,l]=Se(100,"rows_per_page"),[c,d]=Se("*","query"),[m,u]=lr("RAW_JSON_LIVE_VIEW"),{logs:h,isPaused:p,error:v,startLiveTailing:b,stopLiveTailing:f,pauseLiveTailing:g,resumeLiveTailing:_,clearLogs:y,isLimitedLogsPerUpdate:S}=Zh(c,i),T=o.get(ke.DISPLAY_FIELDS)||tn,w=M(()=>T.split(","),[T]),C=W(()=>{Vo(),_()},[_]),k=W(L=>{s({rows_per_page:L})},[l,s]);return A(()=>(b(),()=>f()),[b,f]),A(()=>{if(!n.current)return;let x=[];const E=()=>{const{scrollTop:P,scrollHeight:F,clientHeight:O}=document.documentElement,H=Math.abs(F-P-O)document.removeEventListener("scroll",E)},[p,g,_]),A(()=>{r&&!p&&Vo()},[h,r]),A(()=>{C()},[i]),v?e("div",{className:"vm-live-tailing-view__error",children:v}):e(V,{children:[e(Xh,{settingsRef:t,rowsPerPage:i,handleSetRowsPerPage:k,logs:h,isPaused:p,handleResumeLiveTailing:C,pauseLiveTailing:g,clearLogs:y,isRawJsonView:m,onRawJsonViewChange:u}),e(ep,{}),e("div",{ref:n,className:"vm-live-tailing-view__container",children:h.length===0?e("div",{className:"vm-live-tailing-view__empty",children:"Waiting for logs..."}):e("div",{className:"vm-live-tailing-view__logs",children:h.map(({_log_id:L,...x},E)=>m?e("pre",{className:"vm-live-tailing-view__log-row",onMouseDown:g,children:JSON.stringify(x)},E):e(Ei,{log:x,onItemClick:g,hideGroupButton:!0,displayFields:w},L))})}),S&&e(le,{variant:"warning",children:"Too many logs per second detected. Large volumes of log data are difficult to process and may impact performance. We recommend adding filters to your query for better analysis and system performance."})]})},qo=[{label:"Group",value:"group",icon:e(bs,{}),Component:Fh},{label:"Table",value:"table",icon:e(pn,{}),Component:Uh},{label:"JSON",value:"json",icon:e(It,{}),Component:Qh},{label:"Live",value:"liveTailing",icon:e(nt,{}),Component:rp}],ap=({data:t,isLoading:n})=>{var d;const{isMobile:r}=J(),{setSearchParamsFromKeys:a}=rt(),[o,s]=Se("group","view"),i=q(null),l=m=>{s(m),a({view:m})},c=(d=qo.find(m=>m.value===o))==null?void 0:d.Component;return e("div",{className:I({"vm-explore-logs-body":!0,"vm-block":!0,"vm-block_mobile":r}),children:[n&&e(er,{}),e("div",{className:I({"vm-explore-logs-body-header":!0,"vm-section-header":!0,"vm-explore-logs-body-header_mobile":r}),children:[e("div",{className:I({"vm-section-header__tabs":!0,"vm-explore-logs-body-header__tabs_mobile":r}),children:[e(Yt,{activeItem:String(o),items:qo,onChange:l}),o!=="liveTailing"&&e("div",{className:"vm-explore-logs-body-header__log-info",children:["Total logs returned: ",e("b",{children:t.length})]})]}),e("div",{className:"vm-explore-logs-body-header__settings",ref:i})]}),e("div",{className:I({"vm-explore-logs-body__table":!0,"vm-explore-logs-body__table_mobile":r}),children:c&&e(c,{data:t,settingsRef:i})})]})},op=t=>`${t}/select/logsql/query`,sp=t=>`${t}/select/logsql/hits`,ip=(t,n,r)=>{const a=dr(),[o,s]=N([]),[i,l]=N({}),[c,d]=N(),m=q(new AbortController),u=M(()=>op(t),[t]),h=(v,b,f,g)=>({signal:g,method:"POST",headers:{...a,Accept:"application/stream+json"},body:new URLSearchParams({query:v.trim(),limit:`${f}`,start:U(b.start*1e3).tz().toISOString(),end:U(b.end*1e3).tz().toISOString()})}),p=W(async v=>{m.current.abort(),m.current=new AbortController;const{signal:b}=m.current,f=Date.now();l(g=>({...g,[f]:!0})),d(void 0);try{const g=h(n,v,r,b),_=await fetch(u,g),y=await _.text();if(!_.ok||!_.body)return d(y),s([]),!1;const S=y.split(`
-`,r).map(lp).filter(T=>T);return s(S),!0}catch(g){return g instanceof Error&&g.name!=="AbortError"&&(d(String(g)),console.error(g),s([])),!1}finally{l(g=>{const{[f]:_,...y}=g;return y})}},[u,n,r,a]);return A(()=>()=>{m.current.abort()},[]),{logs:o,isLoading:Object.values(i).some(v=>v),error:c,fetchLogs:p,abortController:m.current}},lp=t=>{try{return t&&JSON.parse(t)}catch(n){return console.error(`Failed to parse "${t}" to JSON
-`,n),null}};var Ke=(t=>(t.Filter="Filter",t.Pipe="Pipe",t.Operator="Operator",t.FilterOrPipe="FilterOrPipe",t))(Ke||{}),de=(t=>(t.FilterName="FilterName",t.FilterUnknown="FilterUnknown",t.FilterValue="FilterValue",t.PipeName="Pipes",t.PipeValue="PipeValue",t.Unknown="Unknown",t.FilterOrPipeName="FilterOrPipeName",t))(de||{});const cp="https://docs.victoriametrics.com/victorialogs/logsql",dp="vm-link vm-link_colored",mp=t=>{const n=`$1 target="_blank" class="${dp}" $2`,r=`$1 $2${cp}#`;return t.replace(/(copy copies log fields.'},{value:"delete",description:'delete deletes log fields.'},{value:"drop_empty_fields",description:'drop_empty_fields drops log fields with empty values.'},{value:"extract",description:'extract extracts the specified text into the given log fields.'},{value:"extract_regexp",description:'extract_regexp extracts the specified text into the given log fields via RE2 regular expressions.'},{value:"field_names",description:'field_names returns all the names of log fields.'},{value:"field_values",description:'field_values returns all the values for the given log field.'},{value:"fields",description:'fields selects the given set of log fields.'},{value:"filter",description:'filter applies additional filters to results.'},{value:"format",description:'format formats output field from input log fields.'},{value:"limit",description:'limit limits the number selected logs.'},{value:"math",description:'math performs mathematical calculations over log fields.'},{value:"offset",description:'offset skips the given number of selected logs.'},{value:"pack_json",description:'pack_json packs log fields into JSON object.'},{value:"pack_logfmt",description:'pack_logfmt packs log fields into logfmt message.'},{value:"rename",description:'rename renames log fields.'},{value:"replace",description:'replace replaces substrings in the specified log fields.'},{value:"replace_regexp",description:'replace_regexp updates log fields with regular expressions.'},{value:"sort",description:'sort sorts logs by the given fields.'},{value:"stats",description:'stats calculates various stats over the selected logs.'},{value:"stream_context",description:`stream_context allows selecting surrounding logs in front and after the matching logs
-per each log stream.`},{value:"top",description:'top returns top N field sets with the maximum number of matching logs.'},{value:"uniq",description:'uniq returns unique log entries.'},{value:"unpack_json",description:'unpack_json unpacks JSON messages from log fields.'},{value:"unpack_logfmt",description:'unpack_logfmt unpacks logfmt messages from log fields.'},{value:"unpack_syslog",description:'unpack_syslog unpacks syslog messages from log fields.'},{value:"unroll",description:'unroll unrolls JSON arrays from log fields.'}].map(t=>({...t,type:de.PipeName,icon:e(an,{}),description:mp(t.description)})),up=["AND","OR","NOT"],hp=$r.map(t=>t.value),pp=t=>{var v,b;const n=t,r=[];let a="",o,s=!1;const i=["'",'"',"`"];let l=!1,c="";const d=["(","[","{"],m=[")","]","}"],u=[...d,...m];let h=0,p=0;for(let f=0;f{const s=t.trim();if(!s)return;const i=up.includes(s.toUpperCase()),l=[Ke.Pipe,Ke.FilterOrPipe],c=a.length>0&&l.includes(a[a.length-1].type),d=()=>c?Ke.FilterOrPipe:n?Ke.Pipe:i?Ke.Operator:Ke.Filter;a.push({id:a.length,value:s,position:r,type:d(),separator:o})},gp=(t,n)=>{const r=t.value.substring(0,n),a=t.value.substring(n),o={valueBeforeCursor:r,valueAfterCursor:a,valueContext:t.value,contextType:de.Unknown};return fp(t,r,a,o),o.valueContext=o.valueContext.replace(/^["']|["']$/g,""),o},Ri=t=>hp.some(n=>t.startsWith(n)),vp=(t,n)=>!t.includes(":")&&!n.includes(":"),$i=(t,n)=>{const[r,...a]=t.split(":");n.contextType=de.FilterValue,n.filterName=r;const s=["=","-","!","~","<",">","<=",">="].find(i=>i===a[0]);s?(n.valueContext=a.slice(1).join(":"),n.operator=`:${s}`):(n.valueContext=a.join(":"),n.operator=":")},fp=(t,n,r,a)=>{switch(t.type){case Ke.Filter:_p(n,r,a);break;case Ke.Pipe:a.contextType=Ri(t.value)?de.PipeValue:de.PipeName;break;case Ke.FilterOrPipe:bp(t.value,n,a);break}},_p=(t,n,r)=>{vp(t,n)?r.contextType=de.FilterUnknown:t.includes(":")?$i(t,r):r.contextType=de.FilterName},bp=(t,n,r)=>{Ri(t)?r.contextType=de.PipeValue:n.includes(":")?$i(n,r):r.contextType=de.FilterOrPipeName},yp=t=>{if(t.includes("=")){const[n,r]=t.split("=");if(r)return`_stream:${n}=~${r}.*"}`}return"*"},Uo=(t,n)=>{const r=t.lastIndexOf(n);return r!==-1?t.slice(0,r):""},wp=t=>{let n="";return t.valueContext.includes(":")?n=Uo(t.valueContext,":"):t.valueContext.includes("-")&&(n=Uo(t.valueContext,"-")),n?`${t.filterName}:${n}`:"*"},Cp=t=>{let n="";return!t.filterName||!t.query||["_msg","_stream_id"].includes(t.filterName)?n="*":t.filterName==="_stream"?n=yp(t.valueContext):t.filterName==="_time"?n=wp(t):n=`${t.filterName}:${t.valueContext}*`,t.queryBeforeIncompleteFilter?`${t.queryBeforeIncompleteFilter}${t.separator??" "}${n}`:n},Np={[de.FilterName]:e(Fn,{}),[de.FilterUnknown]:e(Fn,{}),[de.FilterValue]:e(zn,{}),[de.PipeName]:e(an,{}),[de.PipeValue]:e(da,{}),[de.Unknown]:e(zn,{}),[de.FilterOrPipeName]:e(an,{})},Sp=t=>{const{serverUrl:n}=se(),{period:{start:r,end:a}}=ge(),{autocompleteCache:o}=ya(),s=Is(),i=dr(),[l,c]=N(!1),[d,m]=N([]),[u,h]=N([]),p=q(new AbortController),v=W(g=>{const _=U(r*1e3).startOf("day").valueOf()/1e3,y=U(a*1e3).endOf("day").valueOf()/1e3;return new URLSearchParams({...g||{},limit:`${Tt.queryLimit}`,start:`${_}`,end:`${y}`})},[r,a]),b=(g,_)=>g.map(y=>({value:y.value,type:`${_}`,icon:Np[_]})),f=async({urlSuffix:g,setter:_,params:y})=>{p.current.abort(),p.current=new AbortController;const{signal:S}=p.current,T=new URLSearchParams(i).toString(),w=`${g}?${y==null?void 0:y.toString()}&${T}`;c(!0);try{const C=o.get(w);if(C){_(C),c(!1);return}const k=await fetch(`${n}/select/logsql/${g}?${y}`,{signal:S,headers:{...i}});if(k.ok){const L=await k.json(),x=(L==null?void 0:L.values)||[];_(x||[]),s({type:"SET_AUTOCOMPLETE_CACHE",payload:{key:w,value:x}})}c(!1)}catch(C){C instanceof Error&&C.name!=="AbortError"&&(s({type:"SET_AUTOCOMPLETE_CACHE",payload:{key:w,value:[]}}),c(!1),console.error(C))}};return A(()=>{const _=![de.FilterName,de.FilterUnknown,de.FilterOrPipeName].includes((t==null?void 0:t.contextType)||de.Unknown);return!n||_?void 0:(m([]),f({urlSuffix:"field_names",setter:S=>{m(b(S,de.FilterName))},params:v({query:(t==null?void 0:t.queryBeforeIncompleteFilter)||"*"})}),()=>{var S;return(S=p.current)==null?void 0:S.abort()})},[n,t]),A(()=>{const g=(t==null?void 0:t.contextType)!==de.FilterValue;return!n||g||!(t!=null&&t.filterName)?void 0:(h([]),f({urlSuffix:"field_values",setter:y=>{h(b(y,de.FilterValue))},params:v({query:Cp(t),field:t.filterName})}),()=>{var y;return(y=p.current)==null?void 0:y.abort()})},[n,t]),{fieldNames:d,fieldValues:u,loading:l}},kp=({value:t,anchorEl:n,caretPosition:r,hasHelperText:a,onSelect:o,onFoundOptions:s})=>{const[i,l]=N({top:0,left:0}),c=M(()=>{if(r[0]!==r[1])return{valueBeforeCursor:t,valueAfterCursor:""};const _=t.substring(0,r[0]),y=t.substring(r[1]);return{valueBeforeCursor:_,valueAfterCursor:y}},[t,r]),d=M(()=>pp(t),[t]),m=M(()=>{if(r[0]!==r[1])return;const _=d.find(w=>r[0]>=w.position[0]&&r[0]<=w.position[1]);if(!_)return;const y=r[0]-_.position[0],S=d.find(w=>w.id===_.id-1),T=S?t.substring(0,S.position[1]+1):void 0;return{..._,queryBeforeIncompleteFilter:T,query:t,...gp(_,y)}},[d,r]),{fieldNames:u,fieldValues:h,loading:p}=Sp(m),v=M(()=>{switch(m==null?void 0:m.contextType){case de.FilterName:case de.FilterUnknown:return u;case de.FilterValue:return h;case de.PipeName:return $r;case de.FilterOrPipeName:return[...u,...$r];default:return[]}},[m,u,h]),b=(_,y,S)=>y.reduce((T,w)=>{const C=w.id===S?_:w.value,k=w.separator==="|"?" | ":" ";return`${T}${k}${C}`},"").trim(),f=(_,y,S="",T)=>{let w=_;if(T===de.FilterName)w+=":";else if(y===de.FilterValue){const C=S.startsWith("_stream:")?w:`${JSON.stringify(w)}`;w=`${(m==null?void 0:m.filterName)||""}${(m==null?void 0:m.operator)||":"}${C}`}return w},g=W((_,y)=>{const{id:S,contextType:T=de.FilterUnknown,value:w="",position:C=[0,0]}=m||{},k=f(_,T,w,y.type),L=b(k,d,S),x=d.find(F=>F.id===S),E=()=>(x==null?void 0:x.type)===Ke.FilterOrPipe||y.type===de.PipeName?1:0,P=(C[0]||1)+k.length+E();o(L,P)},[m,d]);return A(()=>{if(!n.current){l({top:0,left:0});return}const _=n.current.querySelector("textarea")||n.current,y=window.getComputedStyle(_),S=`${y.getPropertyValue("font-size")}`,T=`${y.getPropertyValue("font-family")}`,w=parseInt(`${y.getPropertyValue("line-height")}`),C=document.createElement("div");C.style.font=`${S} ${T}`,C.style.padding=y.getPropertyValue("padding"),C.style.lineHeight=`${w}px`,C.style.width=`${_.offsetWidth}px`,C.style.maxWidth=`${_.offsetWidth}px`,C.style.whiteSpace=y.getPropertyValue("white-space"),C.style.overflowWrap=y.getPropertyValue("overflow-wrap");const k=document.createElement("span");C.appendChild(document.createTextNode(c.valueBeforeCursor||"")),C.appendChild(k),C.appendChild(document.createTextNode(c.valueAfterCursor||"")),document.body.appendChild(C);const L=C.getBoundingClientRect(),x=k.getBoundingClientRect(),E=x.left-L.left,P=x.bottom-L.bottom-(a?w:0);l({top:P,left:E}),C.remove(),k.remove()},[n,r,a,c]),e(V,{children:e(Ea,{loading:p,disabledFullScreen:!0,value:(m==null?void 0:m.valueContext)||"",options:v,anchor:n,minLength:0,offset:i,onSelect:g,onFoundOptions:s,maxDisplayResults:{limit:Tt.displayResults,message:"Please, specify the query more precisely."}})})},Tp=({query:t,limit:n,error:r,isLoading:a,onChange:o,onChangeLimit:s,onRun:i})=>{const{isMobile:l}=J(),{autocomplete:c,queryHistory:d}=xe(),m=Mt(),[u,h]=N(""),[p,v]=N(n),{value:b,setValue:f}=ae(!1),g=w=>{const C=+w;v(C),isNaN(C)||C<0?h("Number must be bigger than zero"):(h(""),s(C))},_=()=>{m({type:"TOGGLE_AUTOCOMPLETE"})};A(()=>{v(n)},[n]);const y=w=>{const{values:C,index:k}=d[0],L=k+w;L<0||L>=C.length||(o(C[L]||""),m({type:"SET_QUERY_HISTORY_BY_INDEX",payload:{value:{values:C,index:L},queryNumber:0}}))},S=w=>{o(w),f(!0)},T=w=>()=>{y(w)};return A(()=>{b&&(i(),f(!1))},[t,b]),e("div",{className:I({"vm-explore-logs-header":!0,"vm-block":!0,"vm-block_mobile":l}),children:[e("div",{className:"vm-explore-logs-header-top",children:[e(Bs,{value:t,autocomplete:c,autocompleteEl:kp,onArrowUp:T(-1),onArrowDown:T(1),onEnter:i,onChange:o,label:"Log query",error:r}),e(ce,{label:"Limit entries",type:"number",value:p,error:u,onChange:g,onEnter:i})]}),e("div",{className:"vm-explore-logs-header-bottom",children:[e("div",{className:"vm-explore-logs-header-bottom-contols",children:e(_e,{label:"Autocomplete",value:c,onChange:_,fullWidth:l})}),e("div",{className:"vm-explore-logs-header-bottom-helpful",children:[e("a",{className:"vm-link vm-link_with-icon",target:"_blank",href:"https://docs.victoriametrics.com/victorialogs/logsql/",rel:"help noreferrer",children:[e(mt,{}),"Query language docs"]}),e("a",{className:"vm-link vm-link_with-icon",target:"_blank",href:"https://docs.victoriametrics.com/victorialogs/",rel:"help noreferrer",children:[e(ut,{}),"Documentation"]})]}),e("div",{className:"vm-explore-logs-header-bottom-buttons",children:[e(Qs,{handleSelectQuery:S,historyKey:"LOGS_QUERY_HISTORY"}),e("div",{className:"vm-explore-logs-header-bottom-execute",children:e(D,{startIcon:a?e(ha,{}):e(nt,{}),onClick:i,fullWidth:!0,children:e("div",{children:[e("span",{className:"vm-explore-logs-header-bottom-execute__text",children:a?"Cancel Query":"Execute Query"}),e("span",{className:"vm-explore-logs-header-bottom-execute__text_hidden",children:"Execute Query"})]})})})]})]})]})},Lp=({onChange:t})=>{const[n,r]=oe(),a=q(null),{value:o,toggle:s,setFalse:i}=ae(!1),[l,c]=Se(!1,"stacked"),[d,m]=Se("true","fill"),[u,h]=Se(!1,"hide_chart"),p=M(()=>({graphStyle:lt.BAR,stacked:l,fill:d==="true",hideChart:u}),[l,d,u]),v=g=>{m(`${g}`),n.set("fill",`${g}`),r(n)},b=g=>{c(g),g?n.set("stacked","true"):n.delete("stacked"),r(n)},f=()=>{h(g=>{const _=!g;return _?n.set("hide_chart","true"):n.delete("hide_chart"),r(n),_})};return A(()=>{t(p)},[p]),e("div",{className:"vm-bar-hits-options",children:[e(j,{title:u?"Show chart and resume hits updates":"Hide chart and pause hits updates",children:e(D,{variant:"text",color:"primary",startIcon:u?e(sa,{}):e(Vt,{}),onClick:f,ariaLabel:"settings"})}),e("div",{ref:a,children:e(j,{title:"Graph settings",children:e(D,{variant:"text",color:"primary",startIcon:e(Ze,{}),onClick:s,ariaLabel:"settings"})})}),e(Ie,{open:o,placement:"bottom-right",onClose:i,buttonRef:a,title:"Graph settings",children:e("div",{className:"vm-bar-hits-options-settings",children:[e("div",{className:"vm-bar-hits-options-settings-item",children:e(_e,{label:"Stacked",value:l,onChange:b})}),e("div",{className:"vm-bar-hits-options-settings-item",children:e(_e,{label:"Fill",value:d==="true",onChange:v})})]})})]})};function Ap(t,n){const r=[];let a=[];const o=t[0].length,s=Array(o);for(let i=0;is[c]+=+(l??0)));for(let i=1;ic>i&&!n(c)),i]});return a=a.filter(i=>i.series[1]>-1),{data:[t[0]].concat(r),bands:a}}const Bo=t=>U(t*1e3).tz().format(qe),Ep=({data:t,focusDataIdx:n,uPlotInst:r})=>{const a=q(null),o=M(()=>{var p,v;const i=(r==null?void 0:r.series)||[],[l,...c]=t.map(b=>b[n]||0),d=t[0][1]-t[0][0],m=l+d,u=c.map((b,f)=>{var T;const g=i[f+1],_=(T=g==null?void 0:g.stroke)==null?void 0:T.call(g),y=g==null?void 0:g.label,S=g==null?void 0:g.show;return{label:y,stroke:_,value:b,show:S}}).filter(b=>b.value>0&&b.show).sort(Di("value"));return{point:{top:u[0]&&((p=r==null?void 0:r.valToPos)==null?void 0:p.call(r,u[0].value,"y"))||0,left:((v=r==null?void 0:r.valToPos)==null?void 0:v.call(r,l,"x"))||0},values:u,total:u.reduce((b,f)=>b+f.value,0),timestamp:`${Bo(l)} - ${Bo(m)}`}},[n,r,t]),s=M(()=>{if(!r||!o.total||!a.current)return;const{top:i,left:l}=o.point,c={left:parseFloat(r.over.style.left),top:parseFloat(r.over.style.top)},{width:d,height:m}=r.over.getBoundingClientRect(),{width:u,height:h}=a.current.getBoundingClientRect(),p=50,v=l+u>=d?u+2*p:0,b=i+h>=m?h+2*p:0,f={top:i+c.top+p-b,left:l+c.left+p-v};return f.left<0&&(f.left=20),f.top<0&&(f.top=20),f},[o,r,a.current]);return e("div",{className:I({"vm-chart-tooltip":!0,"vm-chart-tooltip_hits":!0,"vm-bar-hits-tooltip":!0,"vm-bar-hits-tooltip_visible":n!==-1&&o.values.length}),ref:a,style:s,children:[e("div",{children:o.values.map((i,l)=>e("div",{className:"vm-chart-tooltip-data",children:[e("span",{className:"vm-chart-tooltip-data__marker",style:{background:i.stroke}}),e("p",{className:"vm-bar-hits-tooltip-item",children:[e("span",{className:"vm-bar-hits-tooltip-item__label",children:i.label}),e("span",{children:i.value.toLocaleString("en-US")})]})]},l))}),o.values.length>1&&e("div",{className:"vm-chart-tooltip-data",children:[e("span",{}),e("p",{className:"vm-bar-hits-tooltip-item",children:[e("span",{className:"vm-bar-hits-tooltip-item__label",children:"Total"}),e("span",{children:o.total.toLocaleString("en-US")})]})]}),e("div",{className:"vm-chart-tooltip-header",children:e("div",{className:"vm-chart-tooltip-header__title vm-bar-hits-tooltip__date",children:o.timestamp})})]})},xp=({legend:t})=>{const n=t.total.toLocaleString("en-US"),r=Math.round(t.total/t.totalHits*100);return e("div",{className:"vm-legend-hits-menu-section",children:e("div",{className:"vm-legend-hits-menu-row",children:e("div",{className:"vm-legend-hits-menu-row__title",children:["Total: ",n," (",r,"%)"]})})})},mr=({title:t,handler:n,iconStart:r,iconEnd:a,className:o,submenu:s})=>{const i=q(null),l=q(null),c=q(null),[d,m]=N(!1),[u,h]=N(!1),[p,v]=N(!1),b=!!(s!=null&&s.length),f=()=>{h(S=>!S)},g=()=>{h(!1)},_=()=>{n&&n(),b&&f()};A(()=>{l.current&&m(l.current.scrollWidth>l.current.clientWidth)},[t,l]),A(()=>{requestAnimationFrame(()=>{if(!u||!c.current){v(!1);return}const{left:S,width:T}=c.current.getBoundingClientRect();v(S+T>window.innerWidth)})},[c,u]),_n(i,g);const y=e("div",{ref:l,className:"vm-legend-hits-menu-row__title",children:t});return e("div",{ref:i,className:I({"vm-legend-hits-menu-row":!0,"vm-legend-hits-menu-row_interactive":!!n||b,[`${o}`]:o}),onClick:_,children:[r&&e("div",{className:"vm-legend-hits-menu-row__icon",children:r}),d?e(j,{title:t,children:y}):y,a&&!b&&e("div",{className:"vm-legend-hits-menu-row__icon",children:a}),b&&e("div",{className:"vm-legend-hits-menu-row__icon vm-legend-hits-menu-row__icon_drop",children:e(Je,{})}),u&&s&&e("div",{ref:c,className:I({"vm-legend-hits-menu":!0,"vm-legend-hits-menu_submenu":!0,"vm-legend-hits-menu_submenu_left":p}),children:e("div",{className:"vm-legend-hits-menu-section",children:s.map(({icon:S,title:T,handler:w})=>e(mr,{iconStart:S,title:T,handler:w},T))})})]})},Mp=({legend:t,onApplyFilter:n,onClose:r})=>{const a=Fe(),o=()=>{n(`${Re}: ${t.label}`),r()},s=()=>{n(`(NOT ${Re}: ${t.label})`),r()},i=async()=>{await a(t.label,`${t.label} has been copied`),r()},l=[{title:`Copy ${Re} name`,icon:e(Xe,{}),handler:i},{title:`Add ${Re} to filter`,icon:e(pa,{}),handler:o},{title:`Exclude ${Re} to filter`,icon:e(ga,{}),handler:s}];return e("div",{className:"vm-legend-hits-menu-section",children:l.map(({icon:c,title:d,handler:m})=>e(mr,{iconStart:c,title:d,handler:m},d))})},Ip=({fields:t,onApplyFilter:n,onClose:r})=>{const a=Fe(),o=d=>async()=>{await a(d,`${d} has been copied`),r()},s=d=>()=>{n(d),r()},i=d=>()=>{n(`-${d}`),r()},l=d=>[{title:"Copy",icon:e(Xe,{}),handler:o(d)},{title:"Add to filter",icon:e(pa,{}),handler:s(d)},{title:"Exclude to filter",icon:e(ga,{}),handler:i(d)}],c=M(()=>t.map(d=>{const m=Pi(d);return{title:m,submenu:l(m)}}),[t]);return e("div",{className:"vm-legend-hits-menu-section",children:c==null?void 0:c.map(d=>e(mr,{...d},d.title))})},Pp=`aggregated results for fields not in the top ${pi}`,Dp=({legend:t,fields:n,onApplyFilter:r,onClose:a})=>e("div",{className:"vm-legend-hits-menu",children:[e("div",{className:"vm-legend-hits-menu-section",children:e(mr,{className:"vm-legend-hits-menu-row_info",title:t.isOther?Pp:t.label})}),!t.isOther&&e(Mp,{legend:t,onApplyFilter:r,onClose:a}),!t.isOther&&e(Ip,{fields:n,onApplyFilter:r,onClose:a}),e(xp,{legend:t})]}),Op=({legend:t,series:n,onRedrawGraph:r,onApplyFilter:a})=>{const{value:o,setTrue:s,setFalse:i}=ae(!1),l=q(null),[c,d]=N(null),m=M(()=>n.find(f=>f.label===t.label),[n]),u=M(()=>Mi(t.label),[t.label]),h=u.join(", "),p=Ld(t.total),v=f=>{if(m){if(f.metaKey||f.ctrlKey)m.show=!m.show;else{const g=n.every(_=>_===m||!_.show);n.forEach(_=>{_.show=g||_===m})}r()}},b=f=>{f.preventDefault(),d({top:f.clientY,left:f.clientX}),s()};return e("div",{ref:l,className:I({"vm-bar-hits-legend-item":!0,"vm-bar-hits-legend-item_other":t.isOther,"vm-bar-hits-legend-item_hide":!(m!=null&&m.show)}),onClick:v,onContextMenu:b,children:[e("div",{className:"vm-bar-hits-legend-item__marker",style:{backgroundColor:`${t.stroke}`}}),e("div",{className:"vm-bar-hits-legend-item__label",children:h}),e("span",{className:"vm-bar-hits-legend-item__total",children:["(",p,")"]}),e(Ie,{placement:"fixed",open:o,buttonRef:l,placementPosition:c,onClose:i,children:e(Dp,{legend:t,fields:u,onApplyFilter:a,onClose:i})})]})},Rp=({uPlotInst:t,legendDetails:n,onApplyFilter:r})=>{var c;const[a,o]=N([]),s=((c=n[0])==null?void 0:c.totalHits)||0,i=()=>t.series.filter(d=>d.scale!=="x"),l=()=>{t.redraw()};return A(()=>{t.hooks.draw||(t.hooks.draw=[]),t.hooks.draw.push(()=>{o(i())})},[t]),e("div",{className:"vm-bar-hits-legend",children:[n.map(d=>e(Op,{legend:d,series:a,onRedrawGraph:l,onApplyFilter:r},d.label)),e("div",{className:"vm-bar-hits-legend-info",children:[e("div",{children:["Total hits: ",e("b",{children:s.toLocaleString("en-US")})]}),e("div",{children:[e("code",{children:"L-Click"})," toggles visibility. ",e("code",{children:"R-Click"})," opens menu."]})]})]})},$p=({graphOptions:t,logHits:n,data:r,period:a,setPeriod:o,onApplyFilter:s})=>{const[i,l]=vi(),c=q(null),[d,m]=N(),{xRange:u,setPlotScale:h}=Ua({period:a,setPeriod:o}),{onReadyChart:p,isPanning:v}=Va(h);qa({uPlotInst:d,xRange:u,setPlotScale:h});const{data:b,bands:f}=M(()=>t.stacked?Ap(r,()=>!1):{data:r,bands:[]},[t,r]),{options:g,series:_,focusDataIdx:y}=Lh({data:b,logHits:n,bands:f,xRange:u,containerSize:l,onReadyChart:p,setPlotScale:h,graphOptions:t}),S=W((w,C)=>w.map(k=>{var E;const L=xi(k);return{label:L,isOther:k._isOther,fields:k.fields,total:k.total||0,totalHits:C,stroke:(E=_.find(P=>P.label===L))==null?void 0:E.stroke}}).sort(Di("total")),[_]),T=M(()=>{const w=Ah(n);return S(n,w)},[n,S]);return A(()=>{if(!d)return;const w=new Map(d.series.map(k=>[k.label,k])),C=_.map(k=>{const L=w.get(k.label);return L?{...k,show:L.show}:k});Fa(d),ai(d,C,!0),li(d,C),d.redraw()},[_,d]),A(()=>{d&&(d.delBand(),f.forEach(w=>{d.addBand(w)}),d.redraw())},[f]),A(()=>{if(!c.current)return;const w=new jt(g,b,c.current);return m(w),()=>w.destroy()},[c.current]),A(()=>{d&&(d.scales.x.range=()=>[u.min,u.max],d.redraw())},[u]),A(()=>{d&&(d.setSize(l),d.redraw())},[l]),A(()=>{d&&(d.setData(b),d.redraw())},[b]),e(V,{children:[e("div",{className:I({"vm-bar-hits-chart":!0,"vm-bar-hits-chart_panning":v}),ref:i,children:[e("div",{className:"vm-line-chart__u-plot",ref:c}),e(Ep,{uPlotInst:d,data:r,focusDataIdx:y})]}),d&&e(Rp,{uPlotInst:d,onApplyFilter:s,legendDetails:T})]})},Fp=({logHits:t,data:n,period:r,setPeriod:a,onApplyFilter:o})=>{const[s,i]=N({graphStyle:lt.LINE_STEPPED,stacked:!1,fill:!1,hideChart:!1});return e("div",{className:I({"vm-bar-hits-chart__wrapper":!0,"vm-bar-hits-chart__wrapper_hidden":s.hideChart}),children:[!s.hideChart&&e($p,{logHits:t,data:n,period:r,setPeriod:a,onApplyFilter:o,graphOptions:s}),e(Lp,{onChange:i})]})},zp=({logHits:t,period:n,error:r,isLoading:a,onApplyFilter:o})=>{const{isMobile:s}=J(),i=Be(),[l]=oe(),c=M(()=>l.get("hide_chart"),[l]),d=(v,b)=>v.map(f=>{const g=new Map;return f.timestamps.forEach((_,y)=>{const S=U(_).unix();g.set(S,f.values[y]||null)}),b.map(_=>g.get(_)||null)}),m=W(v=>{const b=[],{start:f,end:g,step:_}=Ii(n),y=Math.ceil(f.diff(v,"milliseconds")/_);let S=v.add(y*_,"milliseconds");S.isBefore(f)&&(S=f.clone());const T=Math.floor(g.diff(S,"milliseconds")/_);for(let w=0;w<=T;w++)b.push(S.add(w*_,"milliseconds").unix());return b},[n]),u=M(()=>{if(!t.length)return[[],[]];const v=m(U(t[0].timestamps[0])),b=d(t,v);return[v,...b]},[t]),h=M(()=>{const v=u.every(g=>g.length===0),b=u[0].length===0,f=u[1].length===0;return c?"Chart hidden. Hits updates paused.":v?`No logs volume available
-No volume information available for the current queries and time range.`:b?"No timestamp information available for the current queries and time range.":f?"No value information available for the current queries and time range.":""},[u,c]),p=({from:v,to:b})=>{i({type:"SET_PERIOD",payload:{from:v,to:b}})};return e("section",{className:I({"vm-explore-logs-chart":!0,"vm-block":!0,"vm-block_mobile":s}),children:[a&&e(er,{}),!r&&h&&e("div",{className:"vm-explore-logs-chart__empty",children:e(le,{variant:"info",children:h})}),r&&h&&e("div",{className:"vm-explore-logs-chart__empty",children:e(le,{variant:"error",children:r})}),u&&e(Fp,{logHits:t,data:u,period:n,setPeriod:p,onApplyFilter:o})]})},Hp=(t,n)=>{const r=dr(),[a,o]=N([]),[s,i]=N([]),[l,c]=N(),d=q(new AbortController),m=M(()=>sp(t),[t]),u=(p,v,b)=>{const{start:f,end:g,step:_}=Ii(v);return{signal:b,method:"POST",headers:{...r},body:new URLSearchParams({query:p.trim(),step:`${_}ms`,start:f.toISOString(),end:g.toISOString(),fields_limit:`${pi}`,field:Re})}},h=W(async p=>{d.current.abort(),d.current=new AbortController;const{signal:v}=d.current,b=Date.now();i(f=>({...f,[b]:!0})),c(void 0);try{const f=u(n,p,v),g=await fetch(m,f);if(!g.ok||!g.body){const S=await g.text();c(S),o([]),i(T=>({...T,[b]:!1}));return}const _=await g.json(),y=_==null?void 0:_.hits;y||c("Error: No 'hits' field in response"),o(y.map(Vp).sort(qp))}catch(f){f instanceof Error&&f.name!=="AbortError"&&(c(String(f)),console.error(f),o([]))}i(f=>({...f,[b]:!1}))},[m,n,r]);return A(()=>()=>{d.current.abort()},[]),{logHits:a,isLoading:Object.values(s).some(p=>p),error:l,fetchLogHits:h,abortController:d.current}},Vp=t=>({...t,_isOther:Rm(t.fields)}),qp=(t,n)=>t._isOther!==n._isOther?t._isOther?-1:1:n.total-t.total;function Up(t){const n=q(t);A(()=>{n.current=t},[t]),A(()=>()=>{n.current()},[])}function Bp(t,n=500,r){const a=q(t);a.current=t;const o=M(()=>{const s=ln((...l)=>a.current(...l),n,r),i=(...l)=>{s(...l)};return i.cancel=s.cancel,i.flush=s.flush,i},[n,r]);return Up(()=>{o.cancel()}),o}const jo=Number(Ae("LOGS_LIMIT")),jp=isNaN(jo)?lm:jo,Qp=()=>{const{serverUrl:t}=se(),{queryHistory:n}=xe(),r=Mt(),{duration:a,relativeTime:o,period:s}=ge(),{setSearchParamsFromKeys:i}=rt(),[l]=oe(),c=M(()=>l.get("hide_chart"),[l]),d=qt(c),[m,u]=Se(jp,"limit"),[h,p]=Se("*","query"),v=()=>{const K=is(h,n[0]);r({type:"SET_QUERY_HISTORY",payload:{key:"LOGS_QUERY_HISTORY",history:[K]}})},[b,f]=N(!1),[g,_]=N(s),[y,S]=N(""),{logs:T,isLoading:w,error:C,fetchLogs:k,abortController:L}=ip(t,h,m),{fetchLogHits:x,...E}=Hp(t,h),F=Bp((K,re)=>{k(K).then(Q=>{Q&&re&&x(K)}).catch(()=>{})},300),O=()=>{const K=nn.find(ie=>ie.id===o);if(!K)return s;const{duration:re,until:Q}=K;return Nt(re,Q())},H=()=>{if(!h){S(Ce.validQuery);return}S("");const K=O();_(K),F(K,!c),i({query:h,"g0.range_input":a,"g0.end_input":K.date,"g0.relative_time":o||"none"}),v()},z=K=>{u(K),i({limit:K}),Le("LOGS_LIMIT",`${K}`)},Y=K=>{p(re=>`${K} AND (${re})`),f(!0)},G=()=>{var K,re,Q;w||E.isLoading?((K=L.abort)==null||K.call(L),(Q=(re=E.abortController).abort)==null||Q.call(re)):H()};return A(()=>{h&&H()},[s]),A(()=>{b&&(H(),f(!1))},[h,b]),A(()=>{!c&&d&&x(g)},[c,d,g]),e("div",{className:"vm-explore-logs",children:[e(Tp,{query:h,error:y,limit:m,onChange:p,onChangeLimit:z,onRun:G,isLoading:w||E.isLoading}),C&&e(le,{variant:"error",children:C}),!C&&e(zp,{...E,query:h,period:g,onApplyFilter:Y}),e(ap,{data:T,isLoading:w})]})},Yp=()=>{const t=Ee(),{isMobile:n}=J(),r=Be(),[a,o]=oe(),[s,i]=Se("0","accountID"),[l,c]=Se("0","projectID"),d=`${s}:${l}`,m=q(null),{value:u,toggle:h,setFalse:p}=ae(!1),v=()=>{a.set("accountID",s),a.set("projectID",l),o(a),p(),r({type:"RUN_QUERY"})},b=()=>{i(a.get("accountID")||"0"),c(a.get("projectID")||"0")};return A(()=>{u||b()},[u]),e("div",{className:"vm-tenant-input",children:[e(j,{title:"Define Tenant ID if you need request to another storage",children:e("div",{ref:m,children:n?e("div",{className:"vm-mobile-option",onClick:h,children:[e("span",{className:"vm-mobile-option__icon",children:e(Lt,{})}),e("div",{className:"vm-mobile-option-text",children:[e("span",{className:"vm-mobile-option-text__label",children:"Tenant ID"}),e("span",{className:"vm-mobile-option-text__value",children:d})]}),e("span",{className:"vm-mobile-option__arrow",children:e(be,{})})]}):e(D,{className:t?"":"vm-header-button",variant:"contained",color:"primary",fullWidth:!0,startIcon:e(Lt,{}),endIcon:e("div",{className:I({"vm-execution-controls-buttons__arrow":!0,"vm-execution-controls-buttons__arrow_open":u}),children:e(be,{})}),onClick:h,children:d})})}),e(Ie,{open:u,placement:"bottom-right",onClose:p,buttonRef:m,title:n?"Define Tenant ID":void 0,children:e("div",{className:I({"vm-list vm-tenant-input-list":!0,"vm-list vm-tenant-input-list_mobile":n,"vm-tenant-input-list_inline":!0}),children:[e(ce,{autofocus:!0,label:"accountID",value:s,onChange:i,type:"number"}),e(ce,{autofocus:!0,label:"projectID",value:l,onChange:c,type:"number"}),e("div",{className:"vm-tenant-input-list__buttons",children:[e(j,{title:"Multitenancy in VictoriaLogs documentation",children:e("a",{href:"https://docs.victoriametrics.com/victorialogs/#multitenancy",target:"_blank",rel:"help noreferrer",children:e(D,{variant:"text",color:"gray",startIcon:e(la,{})})})}),e(D,{variant:"contained",color:"primary",onClick:v,children:"Apply"})]})]})})]})},Gp=({isMobile:t})=>e("div",{className:I({"vm-header-controls":!0,"vm-header-controls_mobile":t}),children:[e(Yp,{}),e(ka,{}),e(Ta,{}),e(La,{})]}),Wp=()=>{const t=Ee(),{isMobile:n}=J(),{pathname:r}=ht();return Aa(),A(()=>{var i;const o="vmui for VictoriaLogs",s=(i=gt[Z.logs])==null?void 0:i.title;document.title=`${s} - ${o}`},[r]),e("section",{className:"vm-container",children:[e(Na,{controlsComponent:Gp}),e("div",{className:I({"vm-container-body":!0,"vm-container-body_mobile":n,"vm-container-body_app":t}),children:e(Vr,{})}),!t&&e(Sa,{links:wc})]})},Jp={100:"💯",1234:"🔢",grinning:"😀",smiley:"😃",smile:"😄",grin:"😁",laughing:"😆",satisfied:"😆",sweat_smile:"😅",rofl:"🤣",joy:"😂",slightly_smiling_face:"🙂",upside_down_face:"🙃",melting_face:"🫠",wink:"😉",blush:"😊",innocent:"😇",smiling_face_with_three_hearts:"🥰",heart_eyes:"😍",star_struck:"🤩",kissing_heart:"😘",kissing:"😗",relaxed:"☺️",kissing_closed_eyes:"😚",kissing_smiling_eyes:"😙",smiling_face_with_tear:"🥲",yum:"😋",stuck_out_tongue:"😛",stuck_out_tongue_winking_eye:"😜",zany_face:"🤪",stuck_out_tongue_closed_eyes:"😝",money_mouth_face:"🤑",hugs:"🤗",hand_over_mouth:"🤭",face_with_open_eyes_and_hand_over_mouth:"🫢",face_with_peeking_eye:"🫣",shushing_face:"🤫",thinking:"🤔",saluting_face:"🫡",zipper_mouth_face:"🤐",raised_eyebrow:"🤨",neutral_face:"😐",expressionless:"😑",no_mouth:"😶",dotted_line_face:"🫥",face_in_clouds:"😶🌫️",smirk:"😏",unamused:"😒",roll_eyes:"🙄",grimacing:"😬",face_exhaling:"😮💨",lying_face:"🤥",shaking_face:"🫨",relieved:"😌",pensive:"😔",sleepy:"😪",drooling_face:"🤤",sleeping:"😴",mask:"😷",face_with_thermometer:"🤒",face_with_head_bandage:"🤕",nauseated_face:"🤢",vomiting_face:"🤮",sneezing_face:"🤧",hot_face:"🥵",cold_face:"🥶",woozy_face:"🥴",dizzy_face:"😵",face_with_spiral_eyes:"😵💫",exploding_head:"🤯",cowboy_hat_face:"🤠",partying_face:"🥳",disguised_face:"🥸",sunglasses:"😎",nerd_face:"🤓",monocle_face:"🧐",confused:"😕",face_with_diagonal_mouth:"🫤",worried:"😟",slightly_frowning_face:"🙁",frowning_face:"☹️",open_mouth:"😮",hushed:"😯",astonished:"😲",flushed:"😳",pleading_face:"🥺",face_holding_back_tears:"🥹",frowning:"😦",anguished:"😧",fearful:"😨",cold_sweat:"😰",disappointed_relieved:"😥",cry:"😢",sob:"😭",scream:"😱",confounded:"😖",persevere:"😣",disappointed:"😞",sweat:"😓",weary:"😩",tired_face:"😫",yawning_face:"🥱",triumph:"😤",rage:"😡",pout:"😡",angry:"😠",cursing_face:"🤬",smiling_imp:"😈",imp:"👿",skull:"💀",skull_and_crossbones:"☠️",hankey:"💩",poop:"💩",shit:"💩",clown_face:"🤡",japanese_ogre:"👹",japanese_goblin:"👺",ghost:"👻",alien:"👽",space_invader:"👾",robot:"🤖",smiley_cat:"😺",smile_cat:"😸",joy_cat:"😹",heart_eyes_cat:"😻",smirk_cat:"😼",kissing_cat:"😽",scream_cat:"🙀",crying_cat_face:"😿",pouting_cat:"😾",see_no_evil:"🙈",hear_no_evil:"🙉",speak_no_evil:"🙊",love_letter:"💌",cupid:"💘",gift_heart:"💝",sparkling_heart:"💖",heartpulse:"💗",heartbeat:"💓",revolving_hearts:"💞",two_hearts:"💕",heart_decoration:"💟",heavy_heart_exclamation:"❣️",broken_heart:"💔",heart_on_fire:"❤️🔥",mending_heart:"❤️🩹",heart:"❤️",pink_heart:"🩷",orange_heart:"🧡",yellow_heart:"💛",green_heart:"💚",blue_heart:"💙",light_blue_heart:"🩵",purple_heart:"💜",brown_heart:"🤎",black_heart:"🖤",grey_heart:"🩶",white_heart:"🤍",kiss:"💋",anger:"💢",boom:"💥",collision:"💥",dizzy:"💫",sweat_drops:"💦",dash:"💨",hole:"🕳️",speech_balloon:"💬",eye_speech_bubble:"👁️🗨️",left_speech_bubble:"🗨️",right_anger_bubble:"🗯️",thought_balloon:"💭",zzz:"💤",wave:"👋",raised_back_of_hand:"🤚",raised_hand_with_fingers_splayed:"🖐️",hand:"✋",raised_hand:"✋",vulcan_salute:"🖖",rightwards_hand:"🫱",leftwards_hand:"🫲",palm_down_hand:"🫳",palm_up_hand:"🫴",leftwards_pushing_hand:"🫷",rightwards_pushing_hand:"🫸",ok_hand:"👌",pinched_fingers:"🤌",pinching_hand:"🤏",v:"✌️",crossed_fingers:"🤞",hand_with_index_finger_and_thumb_crossed:"🫰",love_you_gesture:"🤟",metal:"🤘",call_me_hand:"🤙",point_left:"👈",point_right:"👉",point_up_2:"👆",middle_finger:"🖕",fu:"🖕",point_down:"👇",point_up:"☝️",index_pointing_at_the_viewer:"🫵","+1":"👍",thumbsup:"👍","-1":"👎",thumbsdown:"👎",fist_raised:"✊",fist:"✊",fist_oncoming:"👊",facepunch:"👊",punch:"👊",fist_left:"🤛",fist_right:"🤜",clap:"👏",raised_hands:"🙌",heart_hands:"🫶",open_hands:"👐",palms_up_together:"🤲",handshake:"🤝",pray:"🙏",writing_hand:"✍️",nail_care:"💅",selfie:"🤳",muscle:"💪",mechanical_arm:"🦾",mechanical_leg:"🦿",leg:"🦵",foot:"🦶",ear:"👂",ear_with_hearing_aid:"🦻",nose:"👃",brain:"🧠",anatomical_heart:"🫀",lungs:"🫁",tooth:"🦷",bone:"🦴",eyes:"👀",eye:"👁️",tongue:"👅",lips:"👄",biting_lip:"🫦",baby:"👶",child:"🧒",boy:"👦",girl:"👧",adult:"🧑",blond_haired_person:"👱",man:"👨",bearded_person:"🧔",man_beard:"🧔♂️",woman_beard:"🧔♀️",red_haired_man:"👨🦰",curly_haired_man:"👨🦱",white_haired_man:"👨🦳",bald_man:"👨🦲",woman:"👩",red_haired_woman:"👩🦰",person_red_hair:"🧑🦰",curly_haired_woman:"👩🦱",person_curly_hair:"🧑🦱",white_haired_woman:"👩🦳",person_white_hair:"🧑🦳",bald_woman:"👩🦲",person_bald:"🧑🦲",blond_haired_woman:"👱♀️",blonde_woman:"👱♀️",blond_haired_man:"👱♂️",older_adult:"🧓",older_man:"👴",older_woman:"👵",frowning_person:"🙍",frowning_man:"🙍♂️",frowning_woman:"🙍♀️",pouting_face:"🙎",pouting_man:"🙎♂️",pouting_woman:"🙎♀️",no_good:"🙅",no_good_man:"🙅♂️",ng_man:"🙅♂️",no_good_woman:"🙅♀️",ng_woman:"🙅♀️",ok_person:"🙆",ok_man:"🙆♂️",ok_woman:"🙆♀️",tipping_hand_person:"💁",information_desk_person:"💁",tipping_hand_man:"💁♂️",sassy_man:"💁♂️",tipping_hand_woman:"💁♀️",sassy_woman:"💁♀️",raising_hand:"🙋",raising_hand_man:"🙋♂️",raising_hand_woman:"🙋♀️",deaf_person:"🧏",deaf_man:"🧏♂️",deaf_woman:"🧏♀️",bow:"🙇",bowing_man:"🙇♂️",bowing_woman:"🙇♀️",facepalm:"🤦",man_facepalming:"🤦♂️",woman_facepalming:"🤦♀️",shrug:"🤷",man_shrugging:"🤷♂️",woman_shrugging:"🤷♀️",health_worker:"🧑⚕️",man_health_worker:"👨⚕️",woman_health_worker:"👩⚕️",student:"🧑🎓",man_student:"👨🎓",woman_student:"👩🎓",teacher:"🧑🏫",man_teacher:"👨🏫",woman_teacher:"👩🏫",judge:"🧑⚖️",man_judge:"👨⚖️",woman_judge:"👩⚖️",farmer:"🧑🌾",man_farmer:"👨🌾",woman_farmer:"👩🌾",cook:"🧑🍳",man_cook:"👨🍳",woman_cook:"👩🍳",mechanic:"🧑🔧",man_mechanic:"👨🔧",woman_mechanic:"👩🔧",factory_worker:"🧑🏭",man_factory_worker:"👨🏭",woman_factory_worker:"👩🏭",office_worker:"🧑💼",man_office_worker:"👨💼",woman_office_worker:"👩💼",scientist:"🧑🔬",man_scientist:"👨🔬",woman_scientist:"👩🔬",technologist:"🧑💻",man_technologist:"👨💻",woman_technologist:"👩💻",singer:"🧑🎤",man_singer:"👨🎤",woman_singer:"👩🎤",artist:"🧑🎨",man_artist:"👨🎨",woman_artist:"👩🎨",pilot:"🧑✈️",man_pilot:"👨✈️",woman_pilot:"👩✈️",astronaut:"🧑🚀",man_astronaut:"👨🚀",woman_astronaut:"👩🚀",firefighter:"🧑🚒",man_firefighter:"👨🚒",woman_firefighter:"👩🚒",police_officer:"👮",cop:"👮",policeman:"👮♂️",policewoman:"👮♀️",detective:"🕵️",male_detective:"🕵️♂️",female_detective:"🕵️♀️",guard:"💂",guardsman:"💂♂️",guardswoman:"💂♀️",ninja:"🥷",construction_worker:"👷",construction_worker_man:"👷♂️",construction_worker_woman:"👷♀️",person_with_crown:"🫅",prince:"🤴",princess:"👸",person_with_turban:"👳",man_with_turban:"👳♂️",woman_with_turban:"👳♀️",man_with_gua_pi_mao:"👲",woman_with_headscarf:"🧕",person_in_tuxedo:"🤵",man_in_tuxedo:"🤵♂️",woman_in_tuxedo:"🤵♀️",person_with_veil:"👰",man_with_veil:"👰♂️",woman_with_veil:"👰♀️",bride_with_veil:"👰♀️",pregnant_woman:"🤰",pregnant_man:"🫃",pregnant_person:"🫄",breast_feeding:"🤱",woman_feeding_baby:"👩🍼",man_feeding_baby:"👨🍼",person_feeding_baby:"🧑🍼",angel:"👼",santa:"🎅",mrs_claus:"🤶",mx_claus:"🧑🎄",superhero:"🦸",superhero_man:"🦸♂️",superhero_woman:"🦸♀️",supervillain:"🦹",supervillain_man:"🦹♂️",supervillain_woman:"🦹♀️",mage:"🧙",mage_man:"🧙♂️",mage_woman:"🧙♀️",fairy:"🧚",fairy_man:"🧚♂️",fairy_woman:"🧚♀️",vampire:"🧛",vampire_man:"🧛♂️",vampire_woman:"🧛♀️",merperson:"🧜",merman:"🧜♂️",mermaid:"🧜♀️",elf:"🧝",elf_man:"🧝♂️",elf_woman:"🧝♀️",genie:"🧞",genie_man:"🧞♂️",genie_woman:"🧞♀️",zombie:"🧟",zombie_man:"🧟♂️",zombie_woman:"🧟♀️",troll:"🧌",massage:"💆",massage_man:"💆♂️",massage_woman:"💆♀️",haircut:"💇",haircut_man:"💇♂️",haircut_woman:"💇♀️",walking:"🚶",walking_man:"🚶♂️",walking_woman:"🚶♀️",standing_person:"🧍",standing_man:"🧍♂️",standing_woman:"🧍♀️",kneeling_person:"🧎",kneeling_man:"🧎♂️",kneeling_woman:"🧎♀️",person_with_probing_cane:"🧑🦯",man_with_probing_cane:"👨🦯",woman_with_probing_cane:"👩🦯",person_in_motorized_wheelchair:"🧑🦼",man_in_motorized_wheelchair:"👨🦼",woman_in_motorized_wheelchair:"👩🦼",person_in_manual_wheelchair:"🧑🦽",man_in_manual_wheelchair:"👨🦽",woman_in_manual_wheelchair:"👩🦽",runner:"🏃",running:"🏃",running_man:"🏃♂️",running_woman:"🏃♀️",woman_dancing:"💃",dancer:"💃",man_dancing:"🕺",business_suit_levitating:"🕴️",dancers:"👯",dancing_men:"👯♂️",dancing_women:"👯♀️",sauna_person:"🧖",sauna_man:"🧖♂️",sauna_woman:"🧖♀️",climbing:"🧗",climbing_man:"🧗♂️",climbing_woman:"🧗♀️",person_fencing:"🤺",horse_racing:"🏇",skier:"⛷️",snowboarder:"🏂",golfing:"🏌️",golfing_man:"🏌️♂️",golfing_woman:"🏌️♀️",surfer:"🏄",surfing_man:"🏄♂️",surfing_woman:"🏄♀️",rowboat:"🚣",rowing_man:"🚣♂️",rowing_woman:"🚣♀️",swimmer:"🏊",swimming_man:"🏊♂️",swimming_woman:"🏊♀️",bouncing_ball_person:"⛹️",bouncing_ball_man:"⛹️♂️",basketball_man:"⛹️♂️",bouncing_ball_woman:"⛹️♀️",basketball_woman:"⛹️♀️",weight_lifting:"🏋️",weight_lifting_man:"🏋️♂️",weight_lifting_woman:"🏋️♀️",bicyclist:"🚴",biking_man:"🚴♂️",biking_woman:"🚴♀️",mountain_bicyclist:"🚵",mountain_biking_man:"🚵♂️",mountain_biking_woman:"🚵♀️",cartwheeling:"🤸",man_cartwheeling:"🤸♂️",woman_cartwheeling:"🤸♀️",wrestling:"🤼",men_wrestling:"🤼♂️",women_wrestling:"🤼♀️",water_polo:"🤽",man_playing_water_polo:"🤽♂️",woman_playing_water_polo:"🤽♀️",handball_person:"🤾",man_playing_handball:"🤾♂️",woman_playing_handball:"🤾♀️",juggling_person:"🤹",man_juggling:"🤹♂️",woman_juggling:"🤹♀️",lotus_position:"🧘",lotus_position_man:"🧘♂️",lotus_position_woman:"🧘♀️",bath:"🛀",sleeping_bed:"🛌",people_holding_hands:"🧑🤝🧑",two_women_holding_hands:"👭",couple:"👫",two_men_holding_hands:"👬",couplekiss:"💏",couplekiss_man_woman:"👩❤️💋👨",couplekiss_man_man:"👨❤️💋👨",couplekiss_woman_woman:"👩❤️💋👩",couple_with_heart:"💑",couple_with_heart_woman_man:"👩❤️👨",couple_with_heart_man_man:"👨❤️👨",couple_with_heart_woman_woman:"👩❤️👩",family:"👪",family_man_woman_boy:"👨👩👦",family_man_woman_girl:"👨👩👧",family_man_woman_girl_boy:"👨👩👧👦",family_man_woman_boy_boy:"👨👩👦👦",family_man_woman_girl_girl:"👨👩👧👧",family_man_man_boy:"👨👨👦",family_man_man_girl:"👨👨👧",family_man_man_girl_boy:"👨👨👧👦",family_man_man_boy_boy:"👨👨👦👦",family_man_man_girl_girl:"👨👨👧👧",family_woman_woman_boy:"👩👩👦",family_woman_woman_girl:"👩👩👧",family_woman_woman_girl_boy:"👩👩👧👦",family_woman_woman_boy_boy:"👩👩👦👦",family_woman_woman_girl_girl:"👩👩👧👧",family_man_boy:"👨👦",family_man_boy_boy:"👨👦👦",family_man_girl:"👨👧",family_man_girl_boy:"👨👧👦",family_man_girl_girl:"👨👧👧",family_woman_boy:"👩👦",family_woman_boy_boy:"👩👦👦",family_woman_girl:"👩👧",family_woman_girl_boy:"👩👧👦",family_woman_girl_girl:"👩👧👧",speaking_head:"🗣️",bust_in_silhouette:"👤",busts_in_silhouette:"👥",people_hugging:"🫂",footprints:"👣",monkey_face:"🐵",monkey:"🐒",gorilla:"🦍",orangutan:"🦧",dog:"🐶",dog2:"🐕",guide_dog:"🦮",service_dog:"🐕🦺",poodle:"🐩",wolf:"🐺",fox_face:"🦊",raccoon:"🦝",cat:"🐱",cat2:"🐈",black_cat:"🐈⬛",lion:"🦁",tiger:"🐯",tiger2:"🐅",leopard:"🐆",horse:"🐴",moose:"🫎",donkey:"🫏",racehorse:"🐎",unicorn:"🦄",zebra:"🦓",deer:"🦌",bison:"🦬",cow:"🐮",ox:"🐂",water_buffalo:"🐃",cow2:"🐄",pig:"🐷",pig2:"🐖",boar:"🐗",pig_nose:"🐽",ram:"🐏",sheep:"🐑",goat:"🐐",dromedary_camel:"🐪",camel:"🐫",llama:"🦙",giraffe:"🦒",elephant:"🐘",mammoth:"🦣",rhinoceros:"🦏",hippopotamus:"🦛",mouse:"🐭",mouse2:"🐁",rat:"🐀",hamster:"🐹",rabbit:"🐰",rabbit2:"🐇",chipmunk:"🐿️",beaver:"🦫",hedgehog:"🦔",bat:"🦇",bear:"🐻",polar_bear:"🐻❄️",koala:"🐨",panda_face:"🐼",sloth:"🦥",otter:"🦦",skunk:"🦨",kangaroo:"🦘",badger:"🦡",feet:"🐾",paw_prints:"🐾",turkey:"🦃",chicken:"🐔",rooster:"🐓",hatching_chick:"🐣",baby_chick:"🐤",hatched_chick:"🐥",bird:"🐦",penguin:"🐧",dove:"🕊️",eagle:"🦅",duck:"🦆",swan:"🦢",owl:"🦉",dodo:"🦤",feather:"🪶",flamingo:"🦩",peacock:"🦚",parrot:"🦜",wing:"🪽",black_bird:"🐦⬛",goose:"🪿",frog:"🐸",crocodile:"🐊",turtle:"🐢",lizard:"🦎",snake:"🐍",dragon_face:"🐲",dragon:"🐉",sauropod:"🦕","t-rex":"🦖",whale:"🐳",whale2:"🐋",dolphin:"🐬",flipper:"🐬",seal:"🦭",fish:"🐟",tropical_fish:"🐠",blowfish:"🐡",shark:"🦈",octopus:"🐙",shell:"🐚",coral:"🪸",jellyfish:"🪼",snail:"🐌",butterfly:"🦋",bug:"🐛",ant:"🐜",bee:"🐝",honeybee:"🐝",beetle:"🪲",lady_beetle:"🐞",cricket:"🦗",cockroach:"🪳",spider:"🕷️",spider_web:"🕸️",scorpion:"🦂",mosquito:"🦟",fly:"🪰",worm:"🪱",microbe:"🦠",bouquet:"💐",cherry_blossom:"🌸",white_flower:"💮",lotus:"🪷",rosette:"🏵️",rose:"🌹",wilted_flower:"🥀",hibiscus:"🌺",sunflower:"🌻",blossom:"🌼",tulip:"🌷",hyacinth:"🪻",seedling:"🌱",potted_plant:"🪴",evergreen_tree:"🌲",deciduous_tree:"🌳",palm_tree:"🌴",cactus:"🌵",ear_of_rice:"🌾",herb:"🌿",shamrock:"☘️",four_leaf_clover:"🍀",maple_leaf:"🍁",fallen_leaf:"🍂",leaves:"🍃",empty_nest:"🪹",nest_with_eggs:"🪺",mushroom:"🍄",grapes:"🍇",melon:"🍈",watermelon:"🍉",tangerine:"🍊",orange:"🍊",mandarin:"🍊",lemon:"🍋",banana:"🍌",pineapple:"🍍",mango:"🥭",apple:"🍎",green_apple:"🍏",pear:"🍐",peach:"🍑",cherries:"🍒",strawberry:"🍓",blueberries:"🫐",kiwi_fruit:"🥝",tomato:"🍅",olive:"🫒",coconut:"🥥",avocado:"🥑",eggplant:"🍆",potato:"🥔",carrot:"🥕",corn:"🌽",hot_pepper:"🌶️",bell_pepper:"🫑",cucumber:"🥒",leafy_green:"🥬",broccoli:"🥦",garlic:"🧄",onion:"🧅",peanuts:"🥜",beans:"🫘",chestnut:"🌰",ginger_root:"🫚",pea_pod:"🫛",bread:"🍞",croissant:"🥐",baguette_bread:"🥖",flatbread:"🫓",pretzel:"🥨",bagel:"🥯",pancakes:"🥞",waffle:"🧇",cheese:"🧀",meat_on_bone:"🍖",poultry_leg:"🍗",cut_of_meat:"🥩",bacon:"🥓",hamburger:"🍔",fries:"🍟",pizza:"🍕",hotdog:"🌭",sandwich:"🥪",taco:"🌮",burrito:"🌯",tamale:"🫔",stuffed_flatbread:"🥙",falafel:"🧆",egg:"🥚",fried_egg:"🍳",shallow_pan_of_food:"🥘",stew:"🍲",fondue:"🫕",bowl_with_spoon:"🥣",green_salad:"🥗",popcorn:"🍿",butter:"🧈",salt:"🧂",canned_food:"🥫",bento:"🍱",rice_cracker:"🍘",rice_ball:"🍙",rice:"🍚",curry:"🍛",ramen:"🍜",spaghetti:"🍝",sweet_potato:"🍠",oden:"🍢",sushi:"🍣",fried_shrimp:"🍤",fish_cake:"🍥",moon_cake:"🥮",dango:"🍡",dumpling:"🥟",fortune_cookie:"🥠",takeout_box:"🥡",crab:"🦀",lobster:"🦞",shrimp:"🦐",squid:"🦑",oyster:"🦪",icecream:"🍦",shaved_ice:"🍧",ice_cream:"🍨",doughnut:"🍩",cookie:"🍪",birthday:"🎂",cake:"🍰",cupcake:"🧁",pie:"🥧",chocolate_bar:"🍫",candy:"🍬",lollipop:"🍭",custard:"🍮",honey_pot:"🍯",baby_bottle:"🍼",milk_glass:"🥛",coffee:"☕",teapot:"🫖",tea:"🍵",sake:"🍶",champagne:"🍾",wine_glass:"🍷",cocktail:"🍸",tropical_drink:"🍹",beer:"🍺",beers:"🍻",clinking_glasses:"🥂",tumbler_glass:"🥃",pouring_liquid:"🫗",cup_with_straw:"🥤",bubble_tea:"🧋",beverage_box:"🧃",mate:"🧉",ice_cube:"🧊",chopsticks:"🥢",plate_with_cutlery:"🍽️",fork_and_knife:"🍴",spoon:"🥄",hocho:"🔪",knife:"🔪",jar:"🫙",amphora:"🏺",earth_africa:"🌍",earth_americas:"🌎",earth_asia:"🌏",globe_with_meridians:"🌐",world_map:"🗺️",japan:"🗾",compass:"🧭",mountain_snow:"🏔️",mountain:"⛰️",volcano:"🌋",mount_fuji:"🗻",camping:"🏕️",beach_umbrella:"🏖️",desert:"🏜️",desert_island:"🏝️",national_park:"🏞️",stadium:"🏟️",classical_building:"🏛️",building_construction:"🏗️",bricks:"🧱",rock:"🪨",wood:"🪵",hut:"🛖",houses:"🏘️",derelict_house:"🏚️",house:"🏠",house_with_garden:"🏡",office:"🏢",post_office:"🏣",european_post_office:"🏤",hospital:"🏥",bank:"🏦",hotel:"🏨",love_hotel:"🏩",convenience_store:"🏪",school:"🏫",department_store:"🏬",factory:"🏭",japanese_castle:"🏯",european_castle:"🏰",wedding:"💒",tokyo_tower:"🗼",statue_of_liberty:"🗽",church:"⛪",mosque:"🕌",hindu_temple:"🛕",synagogue:"🕍",shinto_shrine:"⛩️",kaaba:"🕋",fountain:"⛲",tent:"⛺",foggy:"🌁",night_with_stars:"🌃",cityscape:"🏙️",sunrise_over_mountains:"🌄",sunrise:"🌅",city_sunset:"🌆",city_sunrise:"🌇",bridge_at_night:"🌉",hotsprings:"♨️",carousel_horse:"🎠",playground_slide:"🛝",ferris_wheel:"🎡",roller_coaster:"🎢",barber:"💈",circus_tent:"🎪",steam_locomotive:"🚂",railway_car:"🚃",bullettrain_side:"🚄",bullettrain_front:"🚅",train2:"🚆",metro:"🚇",light_rail:"🚈",station:"🚉",tram:"🚊",monorail:"🚝",mountain_railway:"🚞",train:"🚋",bus:"🚌",oncoming_bus:"🚍",trolleybus:"🚎",minibus:"🚐",ambulance:"🚑",fire_engine:"🚒",police_car:"🚓",oncoming_police_car:"🚔",taxi:"🚕",oncoming_taxi:"🚖",car:"🚗",red_car:"🚗",oncoming_automobile:"🚘",blue_car:"🚙",pickup_truck:"🛻",truck:"🚚",articulated_lorry:"🚛",tractor:"🚜",racing_car:"🏎️",motorcycle:"🏍️",motor_scooter:"🛵",manual_wheelchair:"🦽",motorized_wheelchair:"🦼",auto_rickshaw:"🛺",bike:"🚲",kick_scooter:"🛴",skateboard:"🛹",roller_skate:"🛼",busstop:"🚏",motorway:"🛣️",railway_track:"🛤️",oil_drum:"🛢️",fuelpump:"⛽",wheel:"🛞",rotating_light:"🚨",traffic_light:"🚥",vertical_traffic_light:"🚦",stop_sign:"🛑",construction:"🚧",anchor:"⚓",ring_buoy:"🛟",boat:"⛵",sailboat:"⛵",canoe:"🛶",speedboat:"🚤",passenger_ship:"🛳️",ferry:"⛴️",motor_boat:"🛥️",ship:"🚢",airplane:"✈️",small_airplane:"🛩️",flight_departure:"🛫",flight_arrival:"🛬",parachute:"🪂",seat:"💺",helicopter:"🚁",suspension_railway:"🚟",mountain_cableway:"🚠",aerial_tramway:"🚡",artificial_satellite:"🛰️",rocket:"🚀",flying_saucer:"🛸",bellhop_bell:"🛎️",luggage:"🧳",hourglass:"⌛",hourglass_flowing_sand:"⏳",watch:"⌚",alarm_clock:"⏰",stopwatch:"⏱️",timer_clock:"⏲️",mantelpiece_clock:"🕰️",clock12:"🕛",clock1230:"🕧",clock1:"🕐",clock130:"🕜",clock2:"🕑",clock230:"🕝",clock3:"🕒",clock330:"🕞",clock4:"🕓",clock430:"🕟",clock5:"🕔",clock530:"🕠",clock6:"🕕",clock630:"🕡",clock7:"🕖",clock730:"🕢",clock8:"🕗",clock830:"🕣",clock9:"🕘",clock930:"🕤",clock10:"🕙",clock1030:"🕥",clock11:"🕚",clock1130:"🕦",new_moon:"🌑",waxing_crescent_moon:"🌒",first_quarter_moon:"🌓",moon:"🌔",waxing_gibbous_moon:"🌔",full_moon:"🌕",waning_gibbous_moon:"🌖",last_quarter_moon:"🌗",waning_crescent_moon:"🌘",crescent_moon:"🌙",new_moon_with_face:"🌚",first_quarter_moon_with_face:"🌛",last_quarter_moon_with_face:"🌜",thermometer:"🌡️",sunny:"☀️",full_moon_with_face:"🌝",sun_with_face:"🌞",ringed_planet:"🪐",star:"⭐",star2:"🌟",stars:"🌠",milky_way:"🌌",cloud:"☁️",partly_sunny:"⛅",cloud_with_lightning_and_rain:"⛈️",sun_behind_small_cloud:"🌤️",sun_behind_large_cloud:"🌥️",sun_behind_rain_cloud:"🌦️",cloud_with_rain:"🌧️",cloud_with_snow:"🌨️",cloud_with_lightning:"🌩️",tornado:"🌪️",fog:"🌫️",wind_face:"🌬️",cyclone:"🌀",rainbow:"🌈",closed_umbrella:"🌂",open_umbrella:"☂️",umbrella:"☔",parasol_on_ground:"⛱️",zap:"⚡",snowflake:"❄️",snowman_with_snow:"☃️",snowman:"⛄",comet:"☄️",fire:"🔥",droplet:"💧",ocean:"🌊",jack_o_lantern:"🎃",christmas_tree:"🎄",fireworks:"🎆",sparkler:"🎇",firecracker:"🧨",sparkles:"✨",balloon:"🎈",tada:"🎉",confetti_ball:"🎊",tanabata_tree:"🎋",bamboo:"🎍",dolls:"🎎",flags:"🎏",wind_chime:"🎐",rice_scene:"🎑",red_envelope:"🧧",ribbon:"🎀",gift:"🎁",reminder_ribbon:"🎗️",tickets:"🎟️",ticket:"🎫",medal_military:"🎖️",trophy:"🏆",medal_sports:"🏅","1st_place_medal":"🥇","2nd_place_medal":"🥈","3rd_place_medal":"🥉",soccer:"⚽",baseball:"⚾",softball:"🥎",basketball:"🏀",volleyball:"🏐",football:"🏈",rugby_football:"🏉",tennis:"🎾",flying_disc:"🥏",bowling:"🎳",cricket_game:"🏏",field_hockey:"🏑",ice_hockey:"🏒",lacrosse:"🥍",ping_pong:"🏓",badminton:"🏸",boxing_glove:"🥊",martial_arts_uniform:"🥋",goal_net:"🥅",golf:"⛳",ice_skate:"⛸️",fishing_pole_and_fish:"🎣",diving_mask:"🤿",running_shirt_with_sash:"🎽",ski:"🎿",sled:"🛷",curling_stone:"🥌",dart:"🎯",yo_yo:"🪀",kite:"🪁",gun:"🔫","8ball":"🎱",crystal_ball:"🔮",magic_wand:"🪄",video_game:"🎮",joystick:"🕹️",slot_machine:"🎰",game_die:"🎲",jigsaw:"🧩",teddy_bear:"🧸",pinata:"🪅",mirror_ball:"🪩",nesting_dolls:"🪆",spades:"♠️",hearts:"♥️",diamonds:"♦️",clubs:"♣️",chess_pawn:"♟️",black_joker:"🃏",mahjong:"🀄",flower_playing_cards:"🎴",performing_arts:"🎭",framed_picture:"🖼️",art:"🎨",thread:"🧵",sewing_needle:"🪡",yarn:"🧶",knot:"🪢",eyeglasses:"👓",dark_sunglasses:"🕶️",goggles:"🥽",lab_coat:"🥼",safety_vest:"🦺",necktie:"👔",shirt:"👕",tshirt:"👕",jeans:"👖",scarf:"🧣",gloves:"🧤",coat:"🧥",socks:"🧦",dress:"👗",kimono:"👘",sari:"🥻",one_piece_swimsuit:"🩱",swim_brief:"🩲",shorts:"🩳",bikini:"👙",womans_clothes:"👚",folding_hand_fan:"🪭",purse:"👛",handbag:"👜",pouch:"👝",shopping:"🛍️",school_satchel:"🎒",thong_sandal:"🩴",mans_shoe:"👞",shoe:"👞",athletic_shoe:"👟",hiking_boot:"🥾",flat_shoe:"🥿",high_heel:"👠",sandal:"👡",ballet_shoes:"🩰",boot:"👢",hair_pick:"🪮",crown:"👑",womans_hat:"👒",tophat:"🎩",mortar_board:"🎓",billed_cap:"🧢",military_helmet:"🪖",rescue_worker_helmet:"⛑️",prayer_beads:"📿",lipstick:"💄",ring:"💍",gem:"💎",mute:"🔇",speaker:"🔈",sound:"🔉",loud_sound:"🔊",loudspeaker:"📢",mega:"📣",postal_horn:"📯",bell:"🔔",no_bell:"🔕",musical_score:"🎼",musical_note:"🎵",notes:"🎶",studio_microphone:"🎙️",level_slider:"🎚️",control_knobs:"🎛️",microphone:"🎤",headphones:"🎧",radio:"📻",saxophone:"🎷",accordion:"🪗",guitar:"🎸",musical_keyboard:"🎹",trumpet:"🎺",violin:"🎻",banjo:"🪕",drum:"🥁",long_drum:"🪘",maracas:"🪇",flute:"🪈",iphone:"📱",calling:"📲",phone:"☎️",telephone:"☎️",telephone_receiver:"📞",pager:"📟",fax:"📠",battery:"🔋",low_battery:"🪫",electric_plug:"🔌",computer:"💻",desktop_computer:"🖥️",printer:"🖨️",keyboard:"⌨️",computer_mouse:"🖱️",trackball:"🖲️",minidisc:"💽",floppy_disk:"💾",cd:"💿",dvd:"📀",abacus:"🧮",movie_camera:"🎥",film_strip:"🎞️",film_projector:"📽️",clapper:"🎬",tv:"📺",camera:"📷",camera_flash:"📸",video_camera:"📹",vhs:"📼",mag:"🔍",mag_right:"🔎",candle:"🕯️",bulb:"💡",flashlight:"🔦",izakaya_lantern:"🏮",lantern:"🏮",diya_lamp:"🪔",notebook_with_decorative_cover:"📔",closed_book:"📕",book:"📖",open_book:"📖",green_book:"📗",blue_book:"📘",orange_book:"📙",books:"📚",notebook:"📓",ledger:"📒",page_with_curl:"📃",scroll:"📜",page_facing_up:"📄",newspaper:"📰",newspaper_roll:"🗞️",bookmark_tabs:"📑",bookmark:"🔖",label:"🏷️",moneybag:"💰",coin:"🪙",yen:"💴",dollar:"💵",euro:"💶",pound:"💷",money_with_wings:"💸",credit_card:"💳",receipt:"🧾",chart:"💹",envelope:"✉️",email:"📧","e-mail":"📧",incoming_envelope:"📨",envelope_with_arrow:"📩",outbox_tray:"📤",inbox_tray:"📥",package:"📦",mailbox:"📫",mailbox_closed:"📪",mailbox_with_mail:"📬",mailbox_with_no_mail:"📭",postbox:"📮",ballot_box:"🗳️",pencil2:"✏️",black_nib:"✒️",fountain_pen:"🖋️",pen:"🖊️",paintbrush:"🖌️",crayon:"🖍️",memo:"📝",pencil:"📝",briefcase:"💼",file_folder:"📁",open_file_folder:"📂",card_index_dividers:"🗂️",date:"📅",calendar:"📆",spiral_notepad:"🗒️",spiral_calendar:"🗓️",card_index:"📇",chart_with_upwards_trend:"📈",chart_with_downwards_trend:"📉",bar_chart:"📊",clipboard:"📋",pushpin:"📌",round_pushpin:"📍",paperclip:"📎",paperclips:"🖇️",straight_ruler:"📏",triangular_ruler:"📐",scissors:"✂️",card_file_box:"🗃️",file_cabinet:"🗄️",wastebasket:"🗑️",lock:"🔒",unlock:"🔓",lock_with_ink_pen:"🔏",closed_lock_with_key:"🔐",key:"🔑",old_key:"🗝️",hammer:"🔨",axe:"🪓",pick:"⛏️",hammer_and_pick:"⚒️",hammer_and_wrench:"🛠️",dagger:"🗡️",crossed_swords:"⚔️",bomb:"💣",boomerang:"🪃",bow_and_arrow:"🏹",shield:"🛡️",carpentry_saw:"🪚",wrench:"🔧",screwdriver:"🪛",nut_and_bolt:"🔩",gear:"⚙️",clamp:"🗜️",balance_scale:"⚖️",probing_cane:"🦯",link:"🔗",chains:"⛓️",hook:"🪝",toolbox:"🧰",magnet:"🧲",ladder:"🪜",alembic:"⚗️",test_tube:"🧪",petri_dish:"🧫",dna:"🧬",microscope:"🔬",telescope:"🔭",satellite:"📡",syringe:"💉",drop_of_blood:"🩸",pill:"💊",adhesive_bandage:"🩹",crutch:"🩼",stethoscope:"🩺",x_ray:"🩻",door:"🚪",elevator:"🛗",mirror:"🪞",window:"🪟",bed:"🛏️",couch_and_lamp:"🛋️",chair:"🪑",toilet:"🚽",plunger:"🪠",shower:"🚿",bathtub:"🛁",mouse_trap:"🪤",razor:"🪒",lotion_bottle:"🧴",safety_pin:"🧷",broom:"🧹",basket:"🧺",roll_of_paper:"🧻",bucket:"🪣",soap:"🧼",bubbles:"🫧",toothbrush:"🪥",sponge:"🧽",fire_extinguisher:"🧯",shopping_cart:"🛒",smoking:"🚬",coffin:"⚰️",headstone:"🪦",funeral_urn:"⚱️",nazar_amulet:"🧿",hamsa:"🪬",moyai:"🗿",placard:"🪧",identification_card:"🪪",atm:"🏧",put_litter_in_its_place:"🚮",potable_water:"🚰",wheelchair:"♿",men:"🚹",women:"🚺",restroom:"🚻",baby_symbol:"🚼",wc:"🚾",passport_control:"🛂",customs:"🛃",baggage_claim:"🛄",left_luggage:"🛅",warning:"⚠️",children_crossing:"🚸",no_entry:"⛔",no_entry_sign:"🚫",no_bicycles:"🚳",no_smoking:"🚭",do_not_litter:"🚯","non-potable_water":"🚱",no_pedestrians:"🚷",no_mobile_phones:"📵",underage:"🔞",radioactive:"☢️",biohazard:"☣️",arrow_up:"⬆️",arrow_upper_right:"↗️",arrow_right:"➡️",arrow_lower_right:"↘️",arrow_down:"⬇️",arrow_lower_left:"↙️",arrow_left:"⬅️",arrow_upper_left:"↖️",arrow_up_down:"↕️",left_right_arrow:"↔️",leftwards_arrow_with_hook:"↩️",arrow_right_hook:"↪️",arrow_heading_up:"⤴️",arrow_heading_down:"⤵️",arrows_clockwise:"🔃",arrows_counterclockwise:"🔄",back:"🔙",end:"🔚",on:"🔛",soon:"🔜",top:"🔝",place_of_worship:"🛐",atom_symbol:"⚛️",om:"🕉️",star_of_david:"✡️",wheel_of_dharma:"☸️",yin_yang:"☯️",latin_cross:"✝️",orthodox_cross:"☦️",star_and_crescent:"☪️",peace_symbol:"☮️",menorah:"🕎",six_pointed_star:"🔯",khanda:"🪯",aries:"♈",taurus:"♉",gemini:"♊",cancer:"♋",leo:"♌",virgo:"♍",libra:"♎",scorpius:"♏",sagittarius:"♐",capricorn:"♑",aquarius:"♒",pisces:"♓",ophiuchus:"⛎",twisted_rightwards_arrows:"🔀",repeat:"🔁",repeat_one:"🔂",arrow_forward:"▶️",fast_forward:"⏩",next_track_button:"⏭️",play_or_pause_button:"⏯️",arrow_backward:"◀️",rewind:"⏪",previous_track_button:"⏮️",arrow_up_small:"🔼",arrow_double_up:"⏫",arrow_down_small:"🔽",arrow_double_down:"⏬",pause_button:"⏸️",stop_button:"⏹️",record_button:"⏺️",eject_button:"⏏️",cinema:"🎦",low_brightness:"🔅",high_brightness:"🔆",signal_strength:"📶",wireless:"🛜",vibration_mode:"📳",mobile_phone_off:"📴",female_sign:"♀️",male_sign:"♂️",transgender_symbol:"⚧️",heavy_multiplication_x:"✖️",heavy_plus_sign:"➕",heavy_minus_sign:"➖",heavy_division_sign:"➗",heavy_equals_sign:"🟰",infinity:"♾️",bangbang:"‼️",interrobang:"⁉️",question:"❓",grey_question:"❔",grey_exclamation:"❕",exclamation:"❗",heavy_exclamation_mark:"❗",wavy_dash:"〰️",currency_exchange:"💱",heavy_dollar_sign:"💲",medical_symbol:"⚕️",recycle:"♻️",fleur_de_lis:"⚜️",trident:"🔱",name_badge:"📛",beginner:"🔰",o:"⭕",white_check_mark:"✅",ballot_box_with_check:"☑️",heavy_check_mark:"✔️",x:"❌",negative_squared_cross_mark:"❎",curly_loop:"➰",loop:"➿",part_alternation_mark:"〽️",eight_spoked_asterisk:"✳️",eight_pointed_black_star:"✴️",sparkle:"❇️",copyright:"©️",registered:"®️",tm:"™️",hash:"#️⃣",asterisk:"*️⃣",zero:"0️⃣",one:"1️⃣",two:"2️⃣",three:"3️⃣",four:"4️⃣",five:"5️⃣",six:"6️⃣",seven:"7️⃣",eight:"8️⃣",nine:"9️⃣",keycap_ten:"🔟",capital_abcd:"🔠",abcd:"🔡",symbols:"🔣",abc:"🔤",a:"🅰️",ab:"🆎",b:"🅱️",cl:"🆑",cool:"🆒",free:"🆓",information_source:"ℹ️",id:"🆔",m:"Ⓜ️",new:"🆕",ng:"🆖",o2:"🅾️",ok:"🆗",parking:"🅿️",sos:"🆘",up:"🆙",vs:"🆚",koko:"🈁",sa:"🈂️",u6708:"🈷️",u6709:"🈶",u6307:"🈯",ideograph_advantage:"🉐",u5272:"🈹",u7121:"🈚",u7981:"🈲",accept:"🉑",u7533:"🈸",u5408:"🈴",u7a7a:"🈳",congratulations:"㊗️",secret:"㊙️",u55b6:"🈺",u6e80:"🈵",red_circle:"🔴",orange_circle:"🟠",yellow_circle:"🟡",green_circle:"🟢",large_blue_circle:"🔵",purple_circle:"🟣",brown_circle:"🟤",black_circle:"⚫",white_circle:"⚪",red_square:"🟥",orange_square:"🟧",yellow_square:"🟨",green_square:"🟩",blue_square:"🟦",purple_square:"🟪",brown_square:"🟫",black_large_square:"⬛",white_large_square:"⬜",black_medium_square:"◼️",white_medium_square:"◻️",black_medium_small_square:"◾",white_medium_small_square:"◽",black_small_square:"▪️",white_small_square:"▫️",large_orange_diamond:"🔶",large_blue_diamond:"🔷",small_orange_diamond:"🔸",small_blue_diamond:"🔹",small_red_triangle:"🔺",small_red_triangle_down:"🔻",diamond_shape_with_a_dot_inside:"💠",radio_button:"🔘",white_square_button:"🔳",black_square_button:"🔲",checkered_flag:"🏁",triangular_flag_on_post:"🚩",crossed_flags:"🎌",black_flag:"🏴",white_flag:"🏳️",rainbow_flag:"🏳️🌈",transgender_flag:"🏳️⚧️",pirate_flag:"🏴☠️",ascension_island:"🇦🇨",andorra:"🇦🇩",united_arab_emirates:"🇦🇪",afghanistan:"🇦🇫",antigua_barbuda:"🇦🇬",anguilla:"🇦🇮",albania:"🇦🇱",armenia:"🇦🇲",angola:"🇦🇴",antarctica:"🇦🇶",argentina:"🇦🇷",american_samoa:"🇦🇸",austria:"🇦🇹",australia:"🇦🇺",aruba:"🇦🇼",aland_islands:"🇦🇽",azerbaijan:"🇦🇿",bosnia_herzegovina:"🇧🇦",barbados:"🇧🇧",bangladesh:"🇧🇩",belgium:"🇧🇪",burkina_faso:"🇧🇫",bulgaria:"🇧🇬",bahrain:"🇧🇭",burundi:"🇧🇮",benin:"🇧🇯",st_barthelemy:"🇧🇱",bermuda:"🇧🇲",brunei:"🇧🇳",bolivia:"🇧🇴",caribbean_netherlands:"🇧🇶",brazil:"🇧🇷",bahamas:"🇧🇸",bhutan:"🇧🇹",bouvet_island:"🇧🇻",botswana:"🇧🇼",belarus:"⬜️🟥⬜",belize:"🇧🇿",canada:"🇨🇦",cocos_islands:"🇨🇨",congo_kinshasa:"🇨🇩",central_african_republic:"🇨🇫",congo_brazzaville:"🇨🇬",switzerland:"🇨🇭",cote_divoire:"🇨🇮",cook_islands:"🇨🇰",chile:"🇨🇱",cameroon:"🇨🇲",cn:"🇨🇳",colombia:"🇨🇴",clipperton_island:"🇨🇵",costa_rica:"🇨🇷",cuba:"🇨🇺",cape_verde:"🇨🇻",curacao:"🇨🇼",christmas_island:"🇨🇽",cyprus:"🇨🇾",czech_republic:"🇨🇿",de:"🇩🇪",diego_garcia:"🇩🇬",djibouti:"🇩🇯",denmark:"🇩🇰",dominica:"🇩🇲",dominican_republic:"🇩🇴",algeria:"🇩🇿",ceuta_melilla:"🇪🇦",ecuador:"🇪🇨",estonia:"🇪🇪",egypt:"🇪🇬",western_sahara:"🇪🇭",eritrea:"🇪🇷",es:"🇪🇸",ethiopia:"🇪🇹",eu:"🇪🇺",european_union:"🇪🇺",finland:"🇫🇮",fiji:"🇫🇯",falkland_islands:"🇫🇰",micronesia:"🇫🇲",faroe_islands:"🇫🇴",fr:"🇫🇷",gabon:"🇬🇦",gb:"🇬🇧",uk:"🇬🇧",grenada:"🇬🇩",georgia:"🇬🇪",french_guiana:"🇬🇫",guernsey:"🇬🇬",ghana:"🇬🇭",gibraltar:"🇬🇮",greenland:"🇬🇱",gambia:"🇬🇲",guinea:"🇬🇳",guadeloupe:"🇬🇵",equatorial_guinea:"🇬🇶",greece:"🇬🇷",south_georgia_south_sandwich_islands:"🇬🇸",guatemala:"🇬🇹",guam:"🇬🇺",guinea_bissau:"🇬🇼",guyana:"🇬🇾",hong_kong:"🇭🇰",heard_mcdonald_islands:"🇭🇲",honduras:"🇭🇳",croatia:"🇭🇷",haiti:"🇭🇹",hungary:"🇭🇺",canary_islands:"🇮🇨",indonesia:"🇮🇩",ireland:"🇮🇪",israel:"🇮🇱",isle_of_man:"🇮🇲",india:"🇮🇳",british_indian_ocean_territory:"🇮🇴",iraq:"🇮🇶",iran:"🇮🇷",iceland:"🇮🇸",it:"🇮🇹",jersey:"🇯🇪",jamaica:"🇯🇲",jordan:"🇯🇴",jp:"🇯🇵",kenya:"🇰🇪",kyrgyzstan:"🇰🇬",cambodia:"🇰🇭",kiribati:"🇰🇮",comoros:"🇰🇲",st_kitts_nevis:"🇰🇳",north_korea:"🇰🇵",kr:"🇰🇷",kuwait:"🇰🇼",cayman_islands:"🇰🇾",kazakhstan:"🇰🇿",laos:"🇱🇦",lebanon:"🇱🇧",st_lucia:"🇱🇨",liechtenstein:"🇱🇮",sri_lanka:"🇱🇰",liberia:"🇱🇷",lesotho:"🇱🇸",lithuania:"🇱🇹",luxembourg:"🇱🇺",latvia:"🇱🇻",libya:"🇱🇾",morocco:"🇲🇦",monaco:"🇲🇨",moldova:"🇲🇩",montenegro:"🇲🇪",st_martin:"🇲🇫",madagascar:"🇲🇬",marshall_islands:"🇲🇭",macedonia:"🇲🇰",mali:"🇲🇱",myanmar:"🇲🇲",mongolia:"🇲🇳",macau:"🇲🇴",northern_mariana_islands:"🇲🇵",martinique:"🇲🇶",mauritania:"🇲🇷",montserrat:"🇲🇸",malta:"🇲🇹",mauritius:"🇲🇺",maldives:"🇲🇻",malawi:"🇲🇼",mexico:"🇲🇽",malaysia:"🇲🇾",mozambique:"🇲🇿",namibia:"🇳🇦",new_caledonia:"🇳🇨",niger:"🇳🇪",norfolk_island:"🇳🇫",nigeria:"🇳🇬",nicaragua:"🇳🇮",netherlands:"🇳🇱",norway:"🇳🇴",nepal:"🇳🇵",nauru:"🇳🇷",niue:"🇳🇺",new_zealand:"🇳🇿",oman:"🇴🇲",panama:"🇵🇦",peru:"🇵🇪",french_polynesia:"🇵🇫",papua_new_guinea:"🇵🇬",philippines:"🇵🇭",pakistan:"🇵🇰",poland:"🇵🇱",st_pierre_miquelon:"🇵🇲",pitcairn_islands:"🇵🇳",puerto_rico:"🇵🇷",palestinian_territories:"🇵🇸",portugal:"🇵🇹",palau:"🇵🇼",paraguay:"🇵🇾",qatar:"🇶🇦",reunion:"🇷🇪",romania:"🇷🇴",serbia:"🇷🇸",ru:"🇷🇺",rwanda:"🇷🇼",saudi_arabia:"🇸🇦",solomon_islands:"🇸🇧",seychelles:"🇸🇨",sudan:"🇸🇩",sweden:"🇸🇪",singapore:"🇸🇬",st_helena:"🇸🇭",slovenia:"🇸🇮",svalbard_jan_mayen:"🇸🇯",slovakia:"🇸🇰",sierra_leone:"🇸🇱",san_marino:"🇸🇲",senegal:"🇸🇳",somalia:"🇸🇴",suriname:"🇸🇷",south_sudan:"🇸🇸",sao_tome_principe:"🇸🇹",el_salvador:"🇸🇻",sint_maarten:"🇸🇽",syria:"🇸🇾",swaziland:"🇸🇿",tristan_da_cunha:"🇹🇦",turks_caicos_islands:"🇹🇨",chad:"🇹🇩",french_southern_territories:"🇹🇫",togo:"🇹🇬",thailand:"🇹🇭",tajikistan:"🇹🇯",tokelau:"🇹🇰",timor_leste:"🇹🇱",turkmenistan:"🇹🇲",tunisia:"🇹🇳",tonga:"🇹🇴",tr:"🇹🇷",trinidad_tobago:"🇹🇹",tuvalu:"🇹🇻",taiwan:"🇹🇼",tanzania:"🇹🇿",ukraine:"🇺🇦",uganda:"🇺🇬",us_outlying_islands:"🇺🇲",united_nations:"🇺🇳",us:"🇺🇸",uruguay:"🇺🇾",uzbekistan:"🇺🇿",vatican_city:"🇻🇦",st_vincent_grenadines:"🇻🇨",venezuela:"🇻🇪",british_virgin_islands:"🇻🇬",us_virgin_islands:"🇻🇮",vietnam:"🇻🇳",vanuatu:"🇻🇺",wallis_futuna:"🇼🇫",samoa:"🇼🇸",kosovo:"🇽🇰",yemen:"🇾🇪",mayotte:"🇾🇹",south_africa:"🇿🇦",zambia:"🇿🇲",zimbabwe:"🇿🇼",england:"🏴",scotland:"🏴",wales:"🏴"};Bt.use(Wi({emojis:Jp,renderer:t=>t.emoji}));const Kp=()=>{const[t,n]=N(!1);return e(V,{children:e(qr,{children:e(wa,{children:e(V,{children:[e(Ka,{onLoaded:n}),t&&e(Ur,{children:e(fe,{path:"/",element:e(Wp,{}),children:e(fe,{path:"/",element:e(Qp,{})})})})]})})})})},Zp=({displaySidebar:t,isMobile:n,headerSetup:r,accountIds:a})=>e("div",{className:I({"vm-header-controls":!0,"vm-header-controls_mobile":n}),children:[(r==null?void 0:r.tenant)&&e(Hs,{accountIds:a||[]}),(r==null?void 0:r.stepControl)&&e(Vs,{}),(r==null?void 0:r.timeSelector)&&e(ka,{}),(r==null?void 0:r.cardinalityDatePicker)&&e(Us,{}),(r==null?void 0:r.executionControls)&&e(Ta,{}),e(La,{}),!t&&e(Fs,{})]}),Xp=()=>{const t=Ee(),{isMobile:n}=J(),{pathname:r}=ht(),[a,o]=oe();Aa();const s=()=>{var d;const l="vmui for vmanomaly",c=(d=gt[r])==null?void 0:d.title;document.title=c?`${c} - ${l}`:l},i=()=>{const{search:l,href:c}=window.location;if(l){const m=Fr.parse(l,{ignoreQueryPrefix:!0});Object.entries(m).forEach(([u,h])=>a.set(u,h)),o(a),window.location.search=""}const d=c.replace(/\/\?#\//,"/#/");d!==c&&window.location.replace(d)};return A(s,[r]),A(i,[]),e("section",{className:"vm-container",children:[e(Na,{controlsComponent:Zp}),e("div",{className:I({"vm-container-body":!0,"vm-container-body_mobile":n,"vm-container-body_app":t}),children:e(Vr,{})}),!t&&e(Sa,{})]})},eg=1,tg=()=>{Ia();const{isMobile:t}=J(),{query:n}=xe(),{customStep:r}=He(),a=q(null),[o]=N([]),[s,i]=N(!n[0]),[l,c]=N(!1),{isLoading:d,graphData:m,error:u,queryErrors:h,setQueryErrors:p,queryStats:v,warning:b}=Xn({visible:!0,customStep:r,hideQuery:o,showAllSeries:l}),f=M(()=>{if(!m)return[];const _=m.map(C=>({...ni(C.metric),...C})),y=_.filter(C=>C.value===ne.actual),S=_.filter(C=>C.value===ne.anomaly),T=y.map(C=>{const k=Pr(C.metric),L=S.find(x=>Pr(x.metric)===k);return{group:1,metric:{...C.metric,__name__:ne.anomaly},values:C.values.filter(([x])=>{if(!L)return!1;const E=L.values.find(([P])=>P===x);return E&&sn(E[1])>eg})}});return _.filter(C=>C.value!==ne.anomaly&&C.value).concat(T)},[m]),g=()=>{i(!1)};return e("div",{className:I({"vm-custom-panel":!0,"vm-custom-panel_mobile":t}),children:[e(xa,{queryErrors:s?[]:h,setQueryErrors:p,setHideError:i,stats:v,onRunQuery:g,hideButtons:{addQuery:!0,prettify:!1,autocomplete:!1,traceQuery:!0,anomalyConfig:!0,reduceMemUsage:!0}}),d&&e(Qe,{}),!s&&u&&e(le,{variant:"error",children:u}),b&&e(tr,{warning:b,query:n,onChange:c}),e("div",{className:I({"vm-custom-panel-body":!0,"vm-custom-panel-body_mobile":t,"vm-block":!0,"vm-block_mobile":t}),children:[e("div",{className:"vm-custom-panel-body-header",ref:a,children:e("div",{})}),f&&e(_i,{graphData:f,isHistogram:!1,controlsRef:a,isAnomalyView:!0})]})]})},ng=()=>{const[t,n]=N(!1);return e(V,{children:e(qr,{children:e(wa,{children:e(V,{children:[e(Ka,{onLoaded:n}),t&&e(Ur,{children:e(fe,{path:"/",element:e(Xp,{}),children:[e(fe,{path:"/",element:e(tg,{})}),e(fe,{path:Z.query,element:e(ki,{})})]})})]})})})})},rg=()=>{switch(Qt){case dt.victorialogs:return e(Kp,{});case dt.vmanomaly:return e(ng,{});default:return e(dh,{})}},Qo=document.getElementById("root");Qo&&Ji(rg(),Qo);
diff --git a/app/vlselect/vmui/assets/index-C36SC0pJ.css b/app/vlselect/vmui/assets/index-C36SC0pJ.css
deleted file mode 100644
index 25fc137ad2..0000000000
--- a/app/vlselect/vmui/assets/index-C36SC0pJ.css
+++ /dev/null
@@ -1 +0,0 @@
-@charset "UTF-8";.vm-tabs{position:relative;display:flex;align-items:center;justify-content:center;height:100%;gap:12px;-webkit-user-select:none;user-select:none}.vm-tabs-item{display:flex;align-items:center;justify-content:center;padding:12px 8px;color:inherit;text-decoration:none;text-transform:capitalize;font-size:inherit;font-weight:inherit;opacity:.6;transition:opacity .2s;cursor:pointer}.vm-tabs-item_active{opacity:1}.vm-tabs-item:hover{opacity:.8}.vm-tabs-item__icon{display:grid;width:16px;margin-right:8px}.vm-tabs-item__icon_single{margin-right:0}.vm-tabs__indicator{position:absolute;border-bottom:2px solid;transition:width .2s ease,left .3s cubic-bezier(.28,.84,.42,1)}.vm-alert{position:relative;display:grid;grid-template-columns:20px 1fr;align-items:center;gap:8px;padding:12px;background-color:var(--color-background-block);border-radius:8px;box-shadow:var(--box-shadow);font-size:14px;font-weight:400;color:var(--color-text);line-height:1.5}.vm-alert_mobile{align-items:flex-start;border-radius:0}.vm-alert:after{position:absolute;content:"";top:0;left:0;width:100%;height:100%;border-radius:8px;z-index:1;opacity:.1}.vm-alert_mobile:after{border-radius:0}.vm-alert__icon,.vm-alert__content{position:relative;z-index:2}.vm-alert__icon{display:flex;align-items:center;justify-content:center;align-self:flex-start;min-height:24px}.vm-alert__content{filter:brightness(.6);white-space:pre-line;text-wrap:balance;overflow-wrap:anywhere}.vm-alert_success{color:var(--color-success)}.vm-alert_success:after{background-color:var(--color-success)}.vm-alert_error{color:var(--color-error)}.vm-alert_error:after{background-color:var(--color-error)}.vm-alert_info{color:var(--color-info)}.vm-alert_info:after{background-color:var(--color-info)}.vm-alert_warning{color:var(--color-warning)}.vm-alert_warning:after{background-color:var(--color-warning)}.vm-alert_dark:after{opacity:.1}.vm-alert_dark .vm-alert__content{filter:none}.vm-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;padding:8px 12px;gap:0 16px;min-height:51px;z-index:99}.vm-header_app{padding:8px 0}@media (max-width: 1000px){.vm-header{position:sticky;top:0;gap:8px;padding:8px}}.vm-header_sidebar{display:grid;grid-template-columns:40px auto 1fr;box-shadow:var(--color-background-body) 0 1px 1px 0}.vm-header_mobile{display:grid;grid-template-columns:33px 1fr 33px;justify-content:space-between}.vm-header_dark .vm-header-button,.vm-header_dark button:before,.vm-header_dark button{background-color:var(--color-background-block)}.vm-header-logo{position:relative;display:flex;align-items:center;justify-content:flex-start;cursor:pointer;width:100%;max-width:75px;min-width:75px;margin-bottom:2px;overflow:hidden}.vm-header-logo svg{max-width:75px;min-width:75px}.vm-header-logo_mobile{max-width:75px;min-width:75px;margin:0 auto}.vm-header-nav{display:flex;align-items:center;justify-content:flex-start;gap:12px}.vm-header-nav_column{flex-direction:column;align-items:stretch;gap:8px}.vm-header-nav_column .vm-header-nav-item{padding:12px 0}.vm-header-nav_column .vm-header-nav-item_sub{justify-content:stretch}.vm-header-nav-item{position:relative;padding:12px 8px;opacity:1;cursor:pointer;transition:opacity .2s ease-in;text-transform:capitalize;font-size:14px;font-weight:400}.vm-header-nav-item_sub{display:grid;grid-template-columns:auto 14px;align-items:center;justify-content:center;gap:4px;cursor:default}.vm-header-nav-item:hover{opacity:.7}.vm-header-nav-item_active{border-bottom:2px solid rgba(17,15,15,.2)}.vm-header-nav-item svg{transform:rotate(0);transition:transform .2s ease-in}.vm-header-nav-item_open svg{transform:rotate(180deg)}.vm-header-nav-item-submenu{display:grid;white-space:nowrap;padding:8px;color:#fff;border-radius:4px;opacity:1;transform-origin:top center}.vm-header-nav-item-submenu-item{cursor:pointer}.vm-popper{position:fixed;background-color:var(--color-background-block);box-shadow:var(--box-shadow-popper);z-index:-99;pointer-events:none;opacity:0;transition:opacity .1s ease-in-out;border-radius:4px}.vm-popper_open{z-index:101;opacity:1;transform-origin:top center;animation:vm-slider .15s cubic-bezier(.28,.84,.42,1.1);pointer-events:auto}.vm-popper_mobile{position:fixed;left:0;right:0;top:0;bottom:0;width:100%;border-radius:0;overflow:auto;animation:none}.vm-popper-header{display:grid;grid-template-columns:1fr 25px;gap:12px;align-items:center;justify-content:space-between;background-color:var(--color-background-block);padding:8px 12px;border-radius:4px 4px 0 0;color:var(--color-text);border-bottom:var(--border-divider);margin-bottom:12px}.vm-popper-header__title{font-size:12px;font-weight:700;-webkit-user-select:none;user-select:none}.vm-popper_dark{background-color:var(--color-background-tooltip);color:#fff}.vm-popper_dark .vm-popper-header{background-color:transparent;color:#fff}@keyframes vm-slider{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.vm-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;display:flex;align-items:center;justify-content:center;background:#110f0f8c}.vm-modal_mobile{align-items:flex-start;min-height:calc(var(--vh) * 100);max-height:calc(var(--vh) * 100);overflow:auto}.vm-modal_mobile .vm-modal-content{width:100vw;border-radius:0;overflow:visible;min-height:100%;max-height:max-content;grid-template-rows:70px max-content}.vm-modal_mobile .vm-modal-content-header{padding:8px 8px 8px 12px;margin-bottom:12px}.vm-modal_mobile .vm-modal-content-header__title{max-width:80vw}.vm-modal_mobile .vm-modal-content-body{display:grid;align-items:flex-start;min-height:100%;padding:0 12px 12px}.vm-modal-content{background:var(--color-background-block);box-shadow:0 0 24px #110f0f12;border-radius:4px;max-height:calc(var(--vh) * 90);overflow:auto}.vm-modal-content-header{position:sticky;top:0;display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;justify-content:space-between;background-color:var(--color-background-block);padding:12px;border-radius:4px 4px 0 0;color:var(--color-text);border-bottom:var(--border-divider);margin-bottom:12px;min-height:51px;z-index:3}.vm-modal-content-header__title{font-weight:700;-webkit-user-select:none;user-select:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:50vw}.vm-modal-content-header__close{display:flex;align-items:center;justify-content:center;width:24px;padding:10px;box-sizing:content-box;color:#fff;cursor:pointer}.vm-modal-content-body{padding:0 12px 12px}.vm-shortcuts{min-width:400px}@media (max-width: 500px){.vm-shortcuts{min-width:100%}}.vm-shortcuts-section{position:relative;margin-bottom:12px;padding-bottom:12px;border-bottom:var(--border-divider)}.vm-shortcuts-section__title{font-weight:700;margin-bottom:12px}.vm-shortcuts-section__read-more{position:absolute;top:-8px;right:0}.vm-shortcuts-section-list{display:grid;gap:12px}@media (max-width: 500px){.vm-shortcuts-section-list{gap:12px}}.vm-shortcuts-section-list-item{display:grid;grid-template-columns:210px 1fr;align-items:center;gap:8px}@media (max-width: 500px){.vm-shortcuts-section-list-item{grid-template-columns:1fr}}.vm-shortcuts-section-list-item__key{display:flex;align-items:center;gap:4px}.vm-shortcuts-section-list-item__key svg,.vm-shortcuts-section-list-item__key code{display:inline-block;padding:2px 8px 0;font-size:12px;line-height:2;color:var(--color-text);text-align:center;background-color:var(--color-background-body);background-repeat:repeat-x;border:var(--border-divider);border-radius:4px}.vm-shortcuts-section-list-item__key svg{width:24px;padding:4px;color:var(--color-primary)}.vm-shortcuts-section-list-item__description{font-size:14px}.vm-tooltip{position:fixed;padding:3px 8px;background-color:var(--color-background-tooltip);box-shadow:var(--box-shadow-popper);border-radius:4px;color:#fff;font-size:12px;line-height:150%;white-space:nowrap;z-index:101;opacity:1;transition:opacity .1s ease-in-out;animation:vm-scale .15s cubic-bezier(.28,.84,.42,1);pointer-events:auto}@keyframes vm-scale{0%{transform:scale(0)}to{transform:scale(1)}}.fc-graph-tips{max-width:520px;display:grid;gap:12px}.fc-graph-tips-item{display:grid;gap:8px;line-height:1.3;padding-bottom:12px;border-bottom:var(--border-divider)}.fc-graph-tips-item__action{color:var(--color-text-secondary);font-weight:700}.fc-graph-tips-item__description{display:inline-block;line-height:1.5}.fc-graph-tips-item__description svg,.fc-graph-tips-item__description code{min-height:20px;min-width:20px;display:inline-flex;align-items:center;justify-content:center;padding:0 4px;font-size:12px;color:var(--color-text);background-color:var(--color-background-body);border:var(--border-divider);border-radius:4px;margin:0 2px 2px}.fc-graph-tips-item svg{width:18px;color:var(--color-primary);padding:2px;margin-top:-8px;transform:translateY(8px)}.vm-menu-burger{position:relative;border:none;background:none;width:18px;height:18px;padding:0;outline:none;cursor:pointer;transform-style:preserve-3d}.vm-menu-burger:after{content:"";position:absolute;left:-6px;top:-6px;width:calc(100% + 12px);height:calc(100% + 12px);background-color:#110f0f1a;border-radius:50%;transform:scale(0) translateZ(-2px);transition:transform .14s ease-in-out}.vm-menu-burger:hover:after{transform:scale(1) translateZ(-2px)}.vm-menu-burger span{display:block;top:50%;transform:translateY(-50%);border-top:2px solid #fff;transition:transform .3s ease,border-color .3s ease}.vm-menu-burger span,.vm-menu-burger span:before,.vm-menu-burger span:after{position:absolute;left:0;width:100%;height:2px;border-radius:6px}.vm-menu-burger span:before,.vm-menu-burger span:after{content:"";top:0;background:#fff;animation-duration:.6s;animation-timing-function:cubic-bezier(.645,.045,.355,1);animation-fill-mode:forwards}.vm-menu-burger span:before{animation-name:topLineBurger}.vm-menu-burger span:after{animation-name:bottomLineBurger}.vm-menu-burger_opened span{border-color:transparent}.vm-menu-burger_opened span:before{animation-name:topLineCross}.vm-menu-burger_opened span:after{animation-name:bottomLineCross}@keyframes topLineCross{0%{transform:translateY(-7px)}50%{transform:translateY(0)}to{width:60%;transform:translateY(-2px) translate(30%) rotate(45deg)}}@keyframes bottomLineCross{0%{transform:translateY(3px)}50%{transform:translateY(0)}to{width:60%;transform:translateY(-2px) translate(30%) rotate(-45deg)}}@keyframes topLineBurger{0%{transform:translateY(0) rotate(45deg)}50%{transform:rotate(0)}to{transform:translateY(-7px) rotate(0)}}@keyframes bottomLineBurger{0%{transform:translateY(0) rotate(-45deg)}50%{transform:rotate(0)}to{transform:translateY(3px) rotate(0)}}.vm-header-sidebar{width:24px;height:24px;color:inherit;background-color:inherit}.vm-header-sidebar-button{display:flex;align-items:center;justify-content:center;position:absolute;left:0;top:0;height:51px;width:51px;transition:left .35s cubic-bezier(.28,.84,.42,1)}.vm-header-sidebar-button_open{position:fixed;left:149px;z-index:102}.vm-header-sidebar-menu{position:fixed;top:0;left:0;display:grid;gap:12px;padding:12px;grid-template-rows:1fr auto;width:200px;height:100%;background-color:inherit;z-index:101;transform-origin:left;transform:translate(-100%);transition:transform .3s cubic-bezier(.28,.84,.42,1);box-shadow:var(--box-shadow-popper)}.vm-header-sidebar-menu_open{transform:translate(0)}.vm-header-sidebar-menu__logo{position:relative;display:flex;align-items:center;justify-content:flex-start;cursor:pointer;width:65px}.vm-header-sidebar-menu-settings{display:grid;align-items:center;gap:8px}.vm-header-controls{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-grow:1}.vm-header-controls_mobile{display:grid;grid-template-columns:1fr;padding:0}.vm-header-controls_mobile .vm-header-button{border:none}.vm-header-controls-modal{transform:scale(0)}.vm-header-controls-modal_open{transform:scale(1)}.vm-container{display:flex;flex-direction:column;min-height:calc(var(--vh) * 100 - var(--scrollbar-height))}.vm-container-body{flex-grow:1;min-height:100%;padding:12px;background-color:var(--color-background-body)}.vm-container-body_mobile{padding:8px 0 0}@media (max-width: 768px){.vm-container-body{padding:8px 0 0}}.vm-container-body_app{padding:8px 0;background-color:transparent}.vm-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;padding:12px;gap:12px;border-top:var(--border-divider);color:var(--color-text-secondary);background:var(--color-background-body)}@media (max-width: 768px){.vm-footer{padding:12px;gap:12px}}.vm-footer__link,.vm-footer__website{display:grid;grid-template-columns:12px auto;align-items:center;justify-content:center;gap:6px}.vm-footer__website{margin-right:12px}@media (max-width: 768px){.vm-footer__website{margin-right:0}}.vm-footer__link{grid-template-columns:14px auto}.vm-footer__copyright{text-align:right;flex-grow:1}@media (max-width: 768px){.vm-footer__copyright{width:100%;font-size:12px;text-align:center}}.vm-tenant-input{position:relative}.vm-tenant-input-list{max-height:300px;overflow:auto;overscroll-behavior:none;border-radius:8px}.vm-tenant-input-list_mobile{max-height:calc(var(--vh) * 100 - 70px)}.vm-tenant-input-list_mobile .vm-tenant-input-list__search{padding:0 12px 8px}.vm-tenant-input-list_inline{display:grid;gap:4px;padding:12px}.vm-tenant-input-list__search{position:sticky;top:0;padding:8px 12px;background-color:var(--color-background-block)}.vm-tenant-input-list__buttons{display:flex;justify-content:space-between;gap:8px}.vm-text-field{position:relative;display:grid;margin:6px 0;width:100%}.vm-text-field_textarea:after{content:attr(data-replicated-value) " ";white-space:pre-wrap;overflow-wrap:break-word;visibility:hidden}.vm-text-field__input,.vm-text-field:after{font-family:monospace;width:100%;padding:8px 12px;border:var(--border-divider);background-color:transparent;font-size:14px;line-height:18px;grid-area:1/1/2/2;overflow:hidden;box-sizing:border-box}.vm-text-field__label,.vm-text-field__error,.vm-text-field__warning,.vm-text-field__helper-text{position:absolute;left:6px;max-width:calc(100% - 12px);padding:0 3px;font-size:12px;line-height:14px;pointer-events:none;-webkit-user-select:none;user-select:none;background-color:var(--color-background-block);z-index:2;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical}.vm-text-field__label{top:-8px;color:var(--color-text-secondary)}.vm-text-field__helper-text,.vm-text-field__warning,.vm-text-field__error{position:relative;top:-6px;width:fit-content;overflow-wrap:anywhere;pointer-events:auto;-webkit-user-select:text;user-select:text}.vm-text-field__helper-text_full,.vm-text-field__warning_full,.vm-text-field__error_full{display:block;overflow:visible}.vm-text-field__helper-text_overflowed,.vm-text-field__warning_overflowed,.vm-text-field__error_overflowed{cursor:pointer}.vm-text-field__error{color:var(--color-error)}.vm-text-field__warning{color:var(--color-warning)}.vm-text-field__helper-text{color:var(--color-text-secondary)}.vm-text-field__input{display:block;border-radius:4px;transition:border .2s ease;resize:none;overflow:hidden;background-color:transparent;color:var(--color-text)}.vm-text-field__input:focus{border:1px solid var(--color-primary)}.vm-text-field__input:hover{border:1px solid var(--color-primary)}.vm-text-field__input_error,.vm-text-field__input_error:hover{border-color:var(--color-error)}.vm-text-field__input_error:focus{border-color:var(--color-error)}.vm-text-field__input_warning,.vm-text-field__input_warning:hover{border-color:var(--color-warning)}.vm-text-field__input_warning:focus{border-color:var(--color-warning)}.vm-text-field__input_icon-start{padding-left:31px}.vm-text-field__input:disabled{background-color:inherit;color:inherit}.vm-text-field__input:disabled:hover{border-color:var(--color-text-disabled)}.vm-text-field__icon-start,.vm-text-field__icon-end{display:flex;align-items:center;justify-content:center;max-width:15px;top:0;left:8px;height:36px;position:absolute;color:var(--color-text-secondary)}.vm-text-field__icon-end{left:auto;right:8px}.vm-text-field__controls-info{position:absolute;bottom:8px;right:12px;color:var(--color-text-secondary);font-size:12px;opacity:.8}.vm-step-control{display:inline-flex}.vm-step-control button{text-transform:none}.vm-step-control-popper{display:grid;gap:8px;max-width:300px;overflow:auto;padding:12px;font-size:14px}.vm-step-control-popper_mobile{padding:0 12px 8px;max-width:100%;max-height:calc(var(--vh) * 100 - 70px)}.vm-step-control-popper_mobile .vm-step-control-popper-info{font-size:14px}.vm-step-control-popper-info{font-size:12px;line-height:1.8}.vm-step-control-popper-info code{padding:.2em .4em;margin:0;font-size:85%;white-space:break-spaces;background-color:var(--color-hover-black);border-radius:6px}.vm-time-duration{max-height:227px;overflow:auto;font-size:14px}.vm-time-duration_mobile{max-height:100%}.vm-time-selector{display:grid;grid-template-columns:repeat(2,230px);padding:12px 0}.vm-time-selector_mobile{grid-template-columns:1fr;min-width:250px;width:100%;max-height:calc(var(--vh) * 100 - 70px);overflow:auto}.vm-time-selector_mobile .vm-time-selector-left{border-right:none;border-bottom:var(--border-divider);padding-bottom:12px}.vm-time-selector-left{display:flex;flex-direction:column;gap:8px;border-right:var(--border-divider);padding:0 12px}.vm-time-selector-left-inputs{flex-grow:1;display:grid;align-items:flex-start;justify-content:stretch}.vm-time-selector-left-timezone{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;margin-bottom:8px}.vm-time-selector-left-timezone__utc{display:inline-flex;align-items:center;justify-content:center;background-color:var(--color-hover-black);padding:4px;border-radius:4px}.vm-time-selector-left__controls{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.vm-calendar{display:grid;grid-template-rows:auto 1fr auto;padding:12px;font-size:14px;-webkit-user-select:none;user-select:none;background-color:var(--color-background-block);border-radius:8px}.vm-calendar_mobile{padding:0 12px}.vm-calendar-header{display:grid;grid-template-columns:1fr auto;align-items:center;justify-content:center;gap:12px;padding-bottom:12px;min-height:36px}.vm-calendar-header-left{display:grid;grid-template-columns:auto auto;align-items:center;justify-content:flex-start;gap:8px;cursor:pointer;transition:opacity .2s ease-in-out}.vm-calendar-header-left:hover{opacity:.8}.vm-calendar-header-left__date{font-size:14px;color:var(--color-text);font-weight:700}.vm-calendar-header-left__select-year{display:grid;align-items:center;justify-content:center;width:14px;height:14px}.vm-calendar-header-right{display:grid;grid-template-columns:18px 18px;align-items:center;justify-content:center;gap:8px}.vm-calendar-header-right__prev,.vm-calendar-header-right__next{margin:-8px;padding:8px;cursor:pointer;transition:opacity .2s ease-in-out}.vm-calendar-header-right__prev:hover,.vm-calendar-header-right__next:hover{opacity:.8}.vm-calendar-header-right__prev{transform:rotate(90deg)}.vm-calendar-header-right__next{transform:rotate(-90deg)}.vm-calendar-body{display:grid;grid-template-columns:repeat(7,32px);grid-template-rows:repeat(7,32px);align-items:center;justify-content:center;gap:2px}@media (max-width: 500px){.vm-calendar-body{grid-template-columns:repeat(7,calc((100vw - 24px - 12px) / 7));grid-template-rows:repeat(7,calc((100vw - 24px - 12px) / 7))}}.vm-calendar-body-cell{display:flex;align-items:center;justify-content:center;text-align:center;border-radius:50%;height:100%}.vm-calendar-body-cell_weekday{color:var(--color-text-secondary)}.vm-calendar-body-cell_day{cursor:pointer;transition:color .2s ease,background-color .3s ease-in-out}.vm-calendar-body-cell_day:hover{background-color:var(--color-hover-black)}.vm-calendar-body-cell_day_empty{pointer-events:none}.vm-calendar-body-cell_day_active{background-color:var(--color-primary);color:#fff}.vm-calendar-body-cell_day_active:hover{background-color:var(--color-primary)}.vm-calendar-body-cell_day_today{border:1px solid var(--color-primary)}.vm-calendar-years{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-height:400px;overflow:auto}.vm-calendar-years__year{display:flex;align-items:center;justify-content:center;padding:8px 16px;border-radius:8px;cursor:pointer;transition:color .2s ease,background-color .3s ease-in-out}.vm-calendar-years__year:hover{background-color:var(--color-hover-black)}.vm-calendar-years__year_selected{background-color:var(--color-primary);color:#fff}.vm-calendar-years__year_selected:hover{background-color:var(--color-primary)}.vm-calendar-years__year_today{border:1px solid var(--color-primary)}.vm-calendar-footer{display:flex;align-items:center;justify-content:flex-end}.vm-date-time-input{position:relative;display:grid;grid-template-columns:1fr;gap:8px 0;align-items:center;justify-content:center;margin-bottom:12px;cursor:pointer;transition:color .2s ease-in-out,border-bottom-color .3s ease}.vm-date-time-input:hover input{border-bottom-color:var(--color-primary)}.vm-date-time-input label{grid-column:1/3;width:100%;font-size:12px;color:var(--color-text-secondary);-webkit-user-select:none;user-select:none}.vm-date-time-input__icon{position:absolute;bottom:2px;right:0}.vm-date-time-input input{padding:0 0 8px;border-bottom:var(--border-divider);border-top:none;border-left:none;border-right:none;background:transparent;color:var(--color-text)}.vm-date-time-input input:focus{border-bottom-color:var(--color-primary)}.vm-date-time-input_error input{border-color:var(--color-error)}.vm-date-time-input_error input:focus{border-bottom-color:var(--color-error)}.vm-date-time-input__error-text{color:var(--color-error);font-size:12px;position:absolute;left:0;bottom:-12px}.vm-button{display:inline-flex;gap:6px;align-items:center;justify-content:center;padding:6px 14px;font-size:12px;font-weight:400;text-transform:capitalize;color:#fff;background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:transform .2s,opacity .2s,background-color .2s}.vm-button:focus-visible{outline:2px solid #006fee;outline-offset:2px}.vm-button:active{transform:scale(.97);opacity:.9}.vm-button:disabled{opacity:.3;pointer-events:none}.vm-button_small{padding:4px 10px;line-height:14px}.vm-button_small svg{width:14px}.vm-button_medium{padding:6px 14px;line-height:14px}.vm-button_medium svg{width:16px}.vm-button_large{padding:8px 20px;font-size:16px}.vm-button_large svg{width:18px;line-height:16px}.vm-button_icon_only{aspect-ratio:1}.vm-button_small.vm-button_icon_only{padding:4px}.vm-button_medium.vm-button_icon_only{padding:6px}.vm-button_large.vm-button_icon_only{padding:8px}.vm-button_contained_primary{background-color:var(--color-primary);color:#fff}.vm-button_contained_primary:hover:not(:disabled){opacity:.8}.vm-button_outlined_primary{background-color:transparent;border-color:var(--color-primary);color:var(--color-primary)}.vm-button_outlined_primary:hover:not(:disabled){background-color:var(--color-hover-black);opacity:.8}.vm-button_text_primary{background-color:transparent;color:var(--color-primary)}.vm-button_text_primary:hover:not(:disabled){background-color:var(--color-hover-black)}.vm-button_contained_secondary{background-color:var(--color-secondary);color:#fff}.vm-button_contained_secondary:hover:not(:disabled){opacity:.8}.vm-button_outlined_secondary{background-color:transparent;border-color:var(--color-secondary);color:var(--color-secondary)}.vm-button_outlined_secondary:hover:not(:disabled){background-color:var(--color-hover-black);opacity:.8}.vm-button_text_secondary{background-color:transparent;color:var(--color-secondary)}.vm-button_text_secondary:hover:not(:disabled){background-color:var(--color-hover-black)}.vm-button_contained_success{background-color:var(--color-success);color:#fff}.vm-button_contained_success:hover:not(:disabled){opacity:.8}.vm-button_outlined_success{background-color:transparent;border-color:var(--color-success);color:var(--color-success)}.vm-button_outlined_success:hover:not(:disabled){background-color:var(--color-hover-black);opacity:.8}.vm-button_text_success{background-color:transparent;color:var(--color-success)}.vm-button_text_success:hover:not(:disabled){background-color:var(--color-hover-black)}.vm-button_contained_warning{background-color:var(--color-warning);color:#fff}.vm-button_contained_warning:hover:not(:disabled){opacity:.8}.vm-button_outlined_warning{background-color:transparent;border-color:var(--color-warning);color:var(--color-warning)}.vm-button_outlined_warning:hover:not(:disabled){background-color:var(--color-hover-black);opacity:.8}.vm-button_text_warning{background-color:transparent;color:var(--color-warning)}.vm-button_text_warning:hover:not(:disabled){background-color:var(--color-hover-black)}.vm-button_contained_error{background-color:var(--color-error);color:#fff}.vm-button_contained_error:hover:not(:disabled){opacity:.8}.vm-button_outlined_error{background-color:transparent;border-color:var(--color-error);color:var(--color-error)}.vm-button_outlined_error:hover:not(:disabled){background-color:var(--color-hover-black);opacity:.8}.vm-button_text_error{background-color:transparent;color:var(--color-error)}.vm-button_text_error:hover:not(:disabled){background-color:var(--color-hover-black)}.vm-button_contained_gray{background-color:var(--color-text-secondary);color:#fff}.vm-button_contained_gray:hover:not(:disabled){opacity:.8}.vm-button_outlined_gray{background-color:transparent;border-color:var(--color-text-secondary);color:var(--color-text-secondary)}.vm-button_outlined_gray:hover:not(:disabled){background-color:var(--color-hover-black);opacity:.8}.vm-button_text_gray{background-color:transparent;color:var(--color-text-secondary)}.vm-button_text_gray:hover:not(:disabled){background-color:var(--color-hover-black)}.vm-button_contained_white{background-color:#fff;color:#110f0f}.vm-button_contained_white:hover:not(:disabled){opacity:.8}.vm-button_outlined_white{background-color:transparent;border-color:#fff;color:#fff}.vm-button_outlined_white:hover:not(:disabled){background-color:var(--color-hover-black);opacity:.8}.vm-button_text_white{background-color:transparent;color:#fff}.vm-button_text_white:hover:not(:disabled){background-color:var(--color-hover-black)}.vm-execution-controls-buttons{display:flex;justify-content:space-between;border-radius:7px;min-width:107px}.vm-execution-controls-buttons_mobile{flex-direction:column;gap:12px}.vm-execution-controls-buttons__arrow{display:flex;align-items:center;justify-content:center;transform:rotate(0);transition:transform .2s ease-in-out}.vm-execution-controls-buttons__arrow_open{transform:rotate(180deg)}.vm-execution-controls-list{width:124px;max-height:208px;overflow:auto;padding:8px 0;font-size:14px}.vm-execution-controls-list_mobile{width:100%;max-height:calc(var(--vh) * 100 - 70px);padding:0}.vm-server-configurator{display:flex;flex-direction:column;align-items:center;gap:16px;width:600px;padding-bottom:12px}.vm-server-configurator_mobile{grid-auto-rows:min-content;align-items:flex-start;height:100%;width:100%}@media (max-width: 768px){.vm-server-configurator{width:100%}}.vm-server-configurator__input{width:100%}.vm-server-configurator__input_flex{display:flex;align-items:flex-start;gap:12px}.vm-server-configurator__title{grid-column:auto/span 2;display:flex;align-items:center;justify-content:flex-start;font-size:14px;font-weight:700;margin-bottom:12px}.vm-server-configurator__info{padding-top:8px;font-size:12px;color:var(--color-text-secondary);line-height:130%}.vm-server-configurator-url{display:flex;align-items:flex-start;gap:8px}.vm-server-configurator-url__button{margin-top:8px}.vm-server-configurator-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;width:100%}.vm-server-configurator_mobile .vm-server-configurator-footer{display:grid;grid-template-columns:1fr 1fr}.vm-limits-configurator-title__reset{display:flex;align-items:center;justify-content:flex-end;flex-grow:1}.vm-limits-configurator__inputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.vm-limits-configurator__inputs_mobile{gap:8px}.vm-accordion-header{position:relative;font-size:inherit;cursor:pointer;display:grid;align-items:center}.vm-accordion-header__arrow{display:flex;align-items:center;justify-content:center;position:absolute;right:14px;top:auto;transform:rotate(0);transition:transform .2s ease-in-out}.vm-accordion-header__arrow_open{transform:rotate(180deg)}.vm-accordion-header__arrow svg{width:14px;height:auto}.accordion-section{overflow:hidden}.vm-timezones-item{display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer}.vm-timezones-item_selected{border:var(--border-divider);padding:8px 12px;border-radius:4px}.vm-timezones-item__title{display:flex;align-items:center;gap:8px;text-transform:capitalize}.vm-timezones-item__title svg{width:14px;color:var(--color-warning)}.vm-timezones-item__utc{display:inline-flex;align-items:center;justify-content:center;background-color:var(--color-hover-black);padding:4px;border-radius:4px}.vm-timezones-item__icon{display:inline-flex;align-items:center;justify-content:flex-end;margin:0 0 0 auto;transition:transform .2s ease-in}.vm-timezones-item__icon svg{width:14px}.vm-timezones-item__icon_open{transform:rotate(180deg)}.vm-timezones-list{max-height:300px;background-color:var(--color-background-block);border-radius:8px;overflow:auto}.vm-timezones-list_mobile{max-height:calc(var(--vh) * 100 - 70px)}.vm-timezones-list_mobile .vm-timezones-list-header__search{padding:0 12px}.vm-timezones-list-header{position:sticky;top:0;background-color:var(--color-background-block);z-index:2;border-bottom:var(--border-divider)}.vm-timezones-list-header__search{padding:8px}.vm-timezones-list-group{padding:8px 0;border-bottom:var(--border-divider)}.vm-timezones-list-group:last-child{border-bottom:none}.vm-timezones-list-group__title{font-weight:700;color:var(--color-text-secondary);padding:8px 12px}.vm-timezones-list-group-options{display:grid;align-items:flex-start}.vm-timezones-list-group-options__item{padding:8px 12px;transition:background-color .2s ease}.vm-timezones-list-group-options__item:hover{background-color:#110f0f1a}.vm-theme-control__toggle{display:inline-flex;min-width:300px;text-transform:capitalize}.vm-theme-control_mobile .vm-theme-control__toggle{display:flex;min-width:100%}.vm-toggles{position:relative;display:grid;gap:3px;width:100%}.vm-toggles__label{padding:0 12px;color:var(--color-text-secondary);font-size:12px;line-height:1}.vm-toggles-group{position:relative;display:grid;width:100%;align-items:center;justify-content:center;overflow:hidden}.vm-toggles-group-item{position:relative;display:grid;align-items:center;justify-content:center;padding:8px;border-right:var(--border-divider);border-top:var(--border-divider);border-bottom:var(--border-divider);font-size:12px;color:var(--color-text-secondary);font-weight:700;cursor:pointer;text-align:center;transition:color .15s ease-in;z-index:2;-webkit-user-select:none;user-select:none}.vm-toggles-group-item_first{border-radius:16px 0 0 16px;border-left:var(--border-divider)}.vm-toggles-group-item:last-child{border-radius:0 16px 16px 0;border-left:none}.vm-toggles-group-item_icon{grid-template-columns:14px auto;gap:4px}.vm-toggles-group-item:hover{color:var(--color-primary)}.vm-toggles-group-item_active{color:var(--color-primary);border-color:transparent}.vm-toggles-group-item_active:hover{background-color:transparent}.vm-toggles-group__highlight{position:absolute;top:0;height:100%;background-color:rgba(var(--color-primary),.08);border:1px solid var(--color-primary);transition:left .2s cubic-bezier(.28,.84,.42,1),border-radius .2s linear;z-index:1}.vm-query-editor{position:relative}.vm-query-editor .marker-detection{position:absolute;top:0;left:0;pointer-events:none;z-index:-9999;visibility:hidden}.vm-additional-settings{display:inline-flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:12px}.vm-additional-settings__input{flex-basis:160px;margin-bottom:-6px}.vm-additional-settings_mobile{display:grid;grid-template-columns:1fr;align-items:flex-start;padding:0 12px;gap:12px;width:100%}.vm-switch{font-size:12px;display:flex;align-items:center;justify-content:flex-start;cursor:pointer;-webkit-user-select:none;user-select:none}.vm-switch_full-width{justify-content:space-between;flex-direction:row-reverse}.vm-switch_full-width .vm-switch__label{margin-left:0}.vm-switch_disabled{opacity:.6;cursor:default}.vm-switch_secondary_active .vm-switch-track{background-color:var(--color-secondary)}.vm-switch_primary_active .vm-switch-track{background-color:var(--color-primary)}.vm-switch_active .vm-switch-track__thumb{left:20px}.vm-switch:hover .vm-switch-track{opacity:.8}.vm-switch-track{position:relative;background-color:#110f0f66;display:flex;align-items:center;justify-content:flex-start;border-radius:17px;padding:3px;width:34px;height:17px;transition:background-color .2s ease,opacity .3s ease-out}.vm-switch-track__thumb{position:absolute;top:auto;left:3px;min-width:11px;min-height:11px;background-color:var(--color-background-block);border-radius:50%;transition:right .2s ease-out,left .2s ease-out;transform-style:preserve-3d}.vm-switch__label{white-space:nowrap;font-size:inherit;margin-left:8px;transition:color .2s ease;color:var(--color-text-secondary)}.vm-switch_active .vm-switch__label{color:var(--color-text)}.vm-query-configurator{display:grid;gap:12px}.vm-query-configurator-list{display:grid}.vm-query-configurator-list-row{display:grid;grid-template-columns:1fr auto auto auto;align-items:center;gap:8px}.vm-query-configurator-list-row_mobile{gap:4px}.vm-query-configurator-list-row_disabled{filter:grayscale(100%);opacity:.5}.vm-query-configurator-list-row__button{display:grid;align-items:start;width:36px;min-height:36px}.vm-query-configurator-settings{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.vm-query-configurator-settings__buttons{flex-grow:1;display:grid;grid-template-columns:repeat(3,auto);gap:8px;justify-content:flex-end}.vm-query-history{max-width:80vw;min-width:500px}.vm-query-history_mobile{max-width:100vw;min-width:100vw}.vm-query-history__tabs{margin:-12px -12px 0;padding:0 8px;border-bottom:var(--border-divider)}.vm-query-history__tabs_mobile{margin:-12px -12px 0}.vm-query-history-list{display:grid;align-items:flex-start}.vm-query-history-list__group-title{font-weight:700;margin:0 -12px;padding:12px 12px 8px}.vm-query-history-list__group-title_first{padding-top:12px}.vm-query-history-list__no-data{display:flex;align-items:center;justify-content:center;padding:16px 12px;color:var(--color-text-secondary);text-align:center;line-height:18px;white-space:pre-line}.vm-query-history-item{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;margin:0 -12px;padding:8px 12px;border-bottom:var(--border-divider)}.vm-query-history-item__value{white-space:pre-wrap;overflow-wrap:anywhere;font-family:monospace}.vm-query-history-item__buttons{display:flex}.vm-query-history-footer{display:flex;justify-content:flex-end;padding-top:12px}.vm-spinner{position:fixed;top:0;bottom:0;left:0;right:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#ffffff80;pointer-events:none;z-index:99;animation:vm-fade 2s cubic-bezier(.28,.84,.42,1.1)}.vm-spinner_dark{background-color:#110f0f33}.vm-spinner__message{margin-top:12px;white-space:pre-line;text-align:center;line-height:1.3;font-size:16px;color:rgba(var(--color-text),.9)}.half-circle-spinner,.half-circle-spinner *{box-sizing:border-box}.half-circle-spinner{width:60px;height:60px;border-radius:100%;position:relative}.half-circle-spinner .circle{content:"";position:absolute;width:100%;height:100%;border-radius:100%;border:6px solid transparent}.half-circle-spinner .circle.circle-1{border-top-color:var(--color-primary);animation:half-circle-spinner-animation 1s infinite}.half-circle-spinner .circle.circle-2{border-bottom-color:var(--color-primary);animation:half-circle-spinner-animation 1s infinite alternate}@keyframes half-circle-spinner-animation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes vm-fade{0%{opacity:0}to{opacity:1}}.vm-anomaly-config{display:grid;grid-template-rows:calc(var(--vh) * 70 - 78px - 36px) auto;gap:12px;min-width:400px;max-width:80vw;min-height:300px}.vm-anomaly-config_mobile{width:100%;max-width:none;min-height:100%;grid-template-rows:calc(var(--vh) * 100 - 78px - 36px) auto}.vm-anomaly-config textarea{overflow:auto;width:100%;height:100%;max-height:900px}.vm-anomaly-config-error{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;gap:8px;text-align:center}.vm-anomaly-config-error__icon{display:flex;align-items:center;justify-content:center;width:30px;height:30px;margin-bottom:8px;color:var(--color-error)}.vm-anomaly-config-error__title{font-size:16px;font-weight:700}.vm-anomaly-config-error__text{max-width:700px;line-height:1.3}.vm-anomaly-config-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px}.vm-autocomplete{position:relative;max-height:300px;overflow:auto;overscroll-behavior:none}.vm-autocomplete_mobile{max-height:calc(var(--vh) * 100 - 70px)}.vm-autocomplete__no-options{padding:12px;text-align:center;color:var(--color-text-disabled)}.vm-autocomplete__loader{display:grid;grid-template-columns:14px auto;align-items:center;justify-content:center;gap:8px;padding:12px;color:var(--color-text-secondary);z-index:2;pointer-events:none}.vm-autocomplete__loader svg{animation:half-circle-spinner-animation 1s infinite linear,vm-fade .5s ease-in}.vm-autocomplete-info,.vm-autocomplete-message{padding:12px;background-color:var(--color-background-block);border-top:var(--border-divider)}.vm-autocomplete-message{position:relative;color:var(--color-warning);font-size:12px}.vm-autocomplete-message:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:var(--color-warning);opacity:.1}.vm-autocomplete-info{min-width:450px;max-width:500px;overflow-wrap:anywhere}.vm-autocomplete-info__type{color:var(--color-text-secondary);margin-bottom:8px}.vm-autocomplete-info__description{line-height:130%}.vm-autocomplete-info__description p{margin:12px 0}.vm-autocomplete-info__description p:last-child{margin:0}.vm-line-loader{position:absolute;top:0;left:0;right:0;height:2px;z-index:2;overflow:hidden}.vm-line-loader__background{position:absolute;left:0;right:0;top:0;bottom:0;background-color:var(--color-text);opacity:.1}.vm-line-loader__line{position:absolute;width:10%;height:100%;background-color:var(--color-primary);animation:slide 2s infinite linear;opacity:.8}@keyframes slide{0%{left:0}to{left:100%}}.vm-custom-panel{display:grid;grid-template-columns:100%;align-items:flex-start;gap:12px;height:100%}.vm-custom-panel_mobile{gap:8px}.vm-custom-panel__warning{display:grid;grid-template-columns:1fr auto;align-items:center;justify-content:space-between;gap:8px}.vm-custom-panel__warning_mobile{grid-template-columns:1fr}.vm-custom-panel-body{position:relative}.vm-custom-panel-body-header{position:relative;display:flex;align-items:center;justify-content:space-between;font-size:12px;margin:-12px -12px 12px;padding:0 12px;border-bottom:var(--border-divider);z-index:1}.vm-custom-panel-body-header__tabs{display:flex;justify-content:flex-start;flex-grow:1}.vm-custom-panel-body-header__graph-controls{display:flex;align-items:center;gap:8px;margin:5px 10px}.vm-custom-panel-body_mobile .vm-custom-panel-body-header{margin:-12px -12px 12px;padding:0 12px}.vm-tracings-view{display:grid;gap:12px}.vm-tracings-view-trace-header{display:flex;align-items:center;justify-content:space-between;border-bottom:var(--border-divider);padding:8px 8px 8px 12px}.vm-tracings-view-trace-header-title{flex-grow:1;font-size:16px;margin-right:8px}.vm-tracings-view-trace-header-title__query{font-weight:700}.vm-tracings-view-trace-header__expand-icon{display:flex;align-items:center;justify-content:center;width:20px;transition:transform .2s ease-in-out;transform:rotate(-90deg);color:var(--color-text-secondary)}.vm-tracings-view-trace-header__expand-icon_open{transform:rotate(0)}.vm-tracings-view-trace__nav{padding:12px 12px 12px 0}.vm-tracings-view-trace__nav_mobile{padding:8px 8px 8px 0}.vm-line-progress{display:grid;grid-template-columns:1fr auto;align-items:center;justify-content:center;gap:8px;color:var(--color-text-secondary)}.vm-line-progress-track{width:100%;height:12px;background-color:var(--color-hover-black);border-radius:4px}.vm-line-progress-track__thumb{height:100%;background-color:#1a90ff;border-radius:4px}.vm-nested-nav{position:relative;margin-left:16px;border-radius:4px}.vm-nested-nav_dark .vm-nested-nav-header{background-color:var(--color-background-body)}.vm-nested-nav_dark .vm-nested-nav-header:after,.vm-nested-nav_dark .vm-nested-nav-header:before{background-color:var(--color-background-body)}.vm-nested-nav_dark .vm-nested-nav-header:hover{box-shadow:#ffffff14 0 0 0 1px}.vm-nested-nav_mobile{margin-left:8px}.vm-nested-nav_root>.vm-nested-nav-header:before,.vm-nested-nav_root>.vm-nested-nav-header:after{display:none}.vm-nested-nav-header{position:relative;display:grid;grid-template-columns:auto 1fr;gap:8px;padding:8px;border-radius:4px;transition:box-shadow .2s ease-in-out;cursor:pointer;background-color:#c9e3f666;margin-bottom:8px;z-index:2}.vm-nested-nav-header:after{content:"";position:absolute;top:calc(50% - 1px);height:2px;width:12px;background-color:#c9e3f6;left:-12px}.vm-nested-nav-header:before{content:"";position:absolute;bottom:50%;left:-12px;height:calc(50% + 8px);width:2px;background-color:#c9e3f6}.vm-nested-nav-header:hover{box-shadow:#110f0f14 0 0 0 1px}.vm-nested-nav-header__icon{display:flex;align-items:center;justify-content:center;width:20px;transition:transform .2s ease-in-out;transform:rotate(-90deg);color:var(--color-text-secondary)}.vm-nested-nav-header__icon_open{transform:rotate(0)}.vm-nested-nav-header__progress{grid-column:2}.vm-nested-nav-header__message{position:relative;grid-column:2;line-height:130%;overflow:hidden;text-overflow:ellipsis;display:-moz-box;-moz-box-orient:vertical;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;line-clamp:3}.vm-nested-nav-header__message_show-full{display:block;overflow:visible}.vm-nested-nav-header__message_duration{color:var(--color-text-secondary)}.vm-nested-nav-header-bottom{display:grid;grid-template-columns:1fr auto;align-items:center;grid-column:2}.vm-nested-nav__childrens>.vm-nested-nav:not(:last-child):before{content:"";position:absolute;top:0;left:-12px;height:calc(100% + 32px);width:2px;background-color:#c9e3f6}.vm-nested-nav__childrens>.vm-nested-nav_dark:not(:last-child):before{background-color:var(--color-background-body)}.vm-nested-nav__childrens>.vm-nested-nav:last-child{margin-bottom:32px}.vm-line-chart{pointer-events:auto}.vm-line-chart_panning{pointer-events:none}.vm-line-chart__u-plot{position:relative}.vm-chart-tooltip{position:absolute;display:grid;gap:12px;width:370px;padding:12px;border-radius:8px;background:var(--color-background-tooltip);color:#fff;font-size:12px;font-weight:400;line-height:150%;word-wrap:break-word;font-family:monospace;z-index:98;-webkit-user-select:text;user-select:text;pointer-events:none}.vm-chart-tooltip_hits{white-space:pre-wrap;word-break:break-all;width:auto;max-width:33.3333333333vw}.vm-chart-tooltip_hits .vm-chart-tooltip-data{display:grid;grid-template-columns:14px 1fr}.vm-chart-tooltip_sticky{pointer-events:auto;z-index:99}.vm-chart-tooltip_moved{position:fixed;margin-top:-24.5px;margin-left:-316.5px}.vm-chart-tooltip-header{display:grid;grid-template-columns:1fr 25px 25px;gap:8px;align-items:center;justify-content:center;min-height:25px}.vm-chart-tooltip-header__title{grid-row:1}.vm-chart-tooltip-header__close{grid-row:1;grid-column:3;color:#fff}.vm-chart-tooltip-header__drag{grid-row:1;grid-column:2;color:#fff;cursor:move}.vm-chart-tooltip-header__date{grid-column:1;display:grid;gap:2px}.vm-chart-tooltip-data{display:flex;align-items:center;justify-content:flex-start;gap:8px}.vm-chart-tooltip-data_margin-bottom{margin-bottom:12px}.vm-chart-tooltip-data_margin-top{margin-top:12px}.vm-chart-tooltip-data__marker{min-width:14px;max-width:14px;width:14px;height:14px;border:1px solid rgba(255,255,255,.5)}.vm-chart-tooltip-data__marker_tranparent{opacity:0}.vm-chart-tooltip-data__value{line-height:1;font-size:14px}.vm-chart-tooltip-stats{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:8px 12px}.vm-chart-tooltip-stats-row{display:grid;align-items:center;justify-content:flex-start}.vm-chart-tooltip-stats-row:not(:last-child){padding-right:8px}.vm-chart-tooltip-stats-row__key{line-height:1;margin-right:4px}.vm-chart-tooltip-stats-row__value{font-weight:700}.vm-chart-tooltip__info{word-break:break-all;white-space:pre-wrap}.vm-legend{position:relative;display:flex;flex-direction:column;cursor:default;width:100%}.vm-legend-group{min-width:23%;width:100%;margin:0 12px 12px 0}.vm-legend-group-header{display:grid;align-items:center;gap:8px;margin-bottom:1px;border-bottom:var(--border-divider);font-size:12px;padding:8px}.vm-legend-group-header-title{display:flex;align-items:center;gap:8px;color:var(--color-text-secondary)}.vm-legend-group-header-title b{color:var(--color-text)}.vm-legend-group-header-labels{display:flex;flex-wrap:wrap;gap:8px;color:var(--color-text-secondary)}.vm-legend-group-header-labels__item{color:var(--color-text);cursor:pointer}.vm-legend-group-header-labels__item:hover{text-decoration:underline}.vm-legend-group-header-labels__item:not(:last-child):after{content:","}.vm-legend-item{display:grid;grid-template-columns:auto auto;grid-gap:8px;align-items:start;justify-content:start;padding:8px;background-color:var(--color-background-block);cursor:pointer;transition:.2s ease;font-size:12px}.vm-legend-item:hover{background-color:#0000001a}.vm-legend-item_hide{text-decoration:line-through;opacity:.2}.vm-legend-item__marker{position:relative;width:14px;height:14px;box-sizing:border-box;transition:.2s ease;border-radius:2px}.vm-legend-item-info{font-weight:400;word-break:break-all}.vm-legend-item-info__label{margin-right:2px}.vm-legend-item-info__free-fields{padding:2px;cursor:pointer}.vm-legend-item-info__free-fields:hover{text-decoration:underline}.vm-legend-item-stats{grid-column:2;display:flex;align-items:center;gap:8px}.vm-legend-item-stats-row{display:flex;align-items:center;justify-content:flex-start}.vm-legend-item-stats-row:not(:last-child){padding-right:12px}.vm-legend-item-stats-row__key{line-height:1;color:var(--color-text-secondary);margin-right:4px}.vm-legend-table{table-layout:auto;max-width:100%;font-size:12px}.vm-legend-table__wrapper{width:100%;max-height:50vh;overflow:auto}.vm-legend-table-row_tbody{cursor:pointer;transition:.3s ease}.vm-legend-table-row_tbody:hover{background-color:#0000001a}.vm-legend-table-row_exclude{text-decoration:line-through;opacity:.2}.vm-legend-table-col{vertical-align:middle;text-align:left;padding:6px;overflow-wrap:anywhere}.vm-legend-table-col_thead{position:sticky;top:0;left:26px;font-weight:700;z-index:2;white-space:nowrap;background:var(--color-background-block)}.vm-legend-table-col_marker{position:sticky;left:0;width:26px;padding:0 6px}.vm-legend-table-col_marker:not(th){z-index:1}.vm-legend-table-col__content{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vm-select-input{position:relative;display:flex;align-items:center;padding:8px 0 8px 12px;cursor:pointer;border:var(--border-divider);border-radius:4px;min-height:40px}.vm-select-input-content{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:8px;flex-grow:1}.vm-select-input-content_mobile{flex-wrap:nowrap}.vm-select-input-content__counter{font-size:14px;line-height:14px}.vm-select-input-content__selected{display:inline-flex;align-items:center;justify-content:center;background-color:var(--color-hover-black);padding:2px 2px 2px 8px;border-radius:4px;font-size:12px;line-height:14px;max-width:100%}.vm-select-input-content__selected span{width:100%;overflow:hidden;text-overflow:ellipsis}.vm-select-input-content__selected svg{width:20px;display:flex;align-items:center;justify-content:center;margin-left:10px;background-color:transparent;border-radius:4px;transition:background-color .2s ease-in-out;padding:4px}.vm-select-input-content__selected svg:hover{background-color:#110f0f1a}.vm-select-input input{display:inline-block;position:relative;border-radius:4px;font-size:14px;line-height:18px;height:18px;padding:0;border:none;z-index:2;min-width:100px;flex-grow:1;background-color:transparent;color:var(--color-text)}.vm-select-input input:placeholder-shown{width:auto}.vm-select-input__icon{display:inline-flex;align-items:center;justify-content:flex-end;color:var(--color-text-secondary);border-right:var(--border-divider);transition:transform .2s ease-in,opacity .2s ease-in;cursor:pointer;padding:0 8px}.vm-select-input__icon:last-child{border:none}.vm-select-input__icon svg{width:14px}.vm-select-input__icon_open{transform:rotate(180deg)}.vm-select-input__icon:hover{opacity:.7}.vm-select-options{display:grid;gap:8px;max-width:300px;max-height:208px;overflow:auto;padding:12px;font-size:14px}.vm-select-options_mobile{padding:0 12px 8px;max-width:100%;max-height:calc(var(--vh) * 100 - 70px)}.vm-select_disabled *{cursor:not-allowed}.vm-select_disabled .vm-select-input-content input{color:var(--color-text-disabled)}.vm-legend-configs{display:grid;gap:16px}.vm-legend-configs_compact{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:12px;padding:12px}.vm-legend-configs_compact .vm-legend-configs-item_switch{display:flex}.vm-legend-configs_compact .vm-legend-configs-item__label,.vm-legend-configs_compact .vm-legend-configs-item__info{display:none}.vm-legend-configs-item{display:grid;align-items:center;justify-content:stretch;margin-top:6px}.vm-legend-configs-item_switch{grid-template-columns:1fr 100px;margin-top:0}.vm-legend-configs-item__info{margin-top:6px;font-size:12px;color:var(--color-text-secondary);line-height:130%}.vm-legend-configs-item__info_input{margin-top:0}.vm-legend-heatmap{display:inline-grid;grid-template-columns:auto auto;align-items:center;justify-content:space-between;gap:4px}.vm-legend-heatmap__wrapper{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.vm-legend-heatmap__value{color:var(--color-text);font-size:12px}.vm-legend-heatmap__value:last-child{text-align:right}.vm-legend-heatmap-gradient{display:flex;align-items:center;justify-content:center;position:relative;grid-column:1/-1;height:12px;width:200px}.vm-legend-heatmap-gradient__value{display:flex;align-items:center;justify-content:center;position:absolute;top:-2px;border-radius:50%;border:2px solid var(--color-text);width:16px;height:16px;transform:translate(-8px);transition:left .1s ease}.vm-legend-heatmap-gradient__value span{position:absolute;top:18px;left:auto;padding:4px 8px;color:var(--color-text);font-size:12px;background-color:var(--color-background-block);box-shadow:var(--box-shadow)}.vm-legend-heatmap__labels{word-break:break-all}.vm-graph-view{width:100%}.vm-graph-view_full-width{width:calc(100vw - 48px - var(--scrollbar-width))}@media (max-width: 768px){.vm-graph-view_full-width{width:calc(100vw - 24px - var(--scrollbar-width))}}.vm-graph-view_full-width_mobile{width:calc(100vw - 24px - var(--scrollbar-width))}.vm-legend-anomaly{position:relative;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:32px;cursor:default}.vm-legend-anomaly-item{display:flex;align-items:center;justify-content:center;gap:8px}.vm-legend-anomaly-item svg{width:30px;height:14px}.vm-axes-limits{display:grid;align-items:center}.vm-axes-limits_mobile{width:100%;max-width:100%;gap:12px}.vm-axes-limits_mobile .vm-axes-limits-list__inputs{grid-template-columns:repeat(2,1fr)}.vm-axes-limits-list{display:grid;align-items:center;gap:12px}.vm-axes-limits-list__inputs{display:grid;grid-template-columns:repeat(2,auto);gap:8px;margin-top:12px}.vm-graph-settings{display:flex;align-items:center;gap:8px}.vm-graph-settings-modal .vm-modal-content-body{padding:0}.vm-graph-settings-modal .vm-modal-content-header{margin-bottom:0}.vm-graph-settings-body{display:grid;min-width:300px}.vm-graph-settings-body-section{border-bottom:var(--border-divider)}.vm-graph-settings-body-section:last-child{border-bottom:none;padding-bottom:16px}.vm-graph-settings-body-section__title{padding:12px;font-weight:700;background:var(--color-hover-black)}.vm-graph-settings-body-section-content{display:grid;gap:16px;padding:16px}.vm-graph-settings-row{display:grid;align-items:center;justify-content:stretch;grid-template-columns:1fr 100px}.vm-json-view__copy{position:sticky;top:0;display:flex;justify-content:flex-end;z-index:2}.vm-json-view__code{transform:translateY(-32px);font-size:14px;line-height:1.4;white-space:pre-wrap}.vm-table-view{margin-top:-12px;max-width:100%;overflow:auto}.vm-table-view_mobile{margin-top:-12px}.vm-table-view table{margin-top:0}.vm-table-settings-modal .vm-modal-content-body{min-width:clamp(300px,600px,90vw);padding:0}.vm-table-settings-modal-section{padding-block:12px;border-top:var(--border-divider)}.vm-table-settings-modal-section:first-child{padding-top:0;border-top:none}.vm-table-settings-modal-section__title{padding-inline:12px;font-size:14px;font-weight:700;margin-bottom:12px}.vm-table-settings-modal-columns__search{padding-inline:12px}.vm-table-settings-modal-columns-list{display:flex;flex-direction:column;max-height:250px;min-height:250px;overflow:auto;margin-bottom:12px}@media (max-width: 500px){.vm-table-settings-modal-columns-list{width:100vw}}.vm-table-settings-modal-columns-list__item{width:100%;font-size:14px;border-radius:4px}.vm-table-settings-modal-columns-list__item>div{padding:8px 12px}.vm-table-settings-modal-columns-list__item_all{font-weight:700}.vm-table-settings-modal-columns-list__item:hover,.vm-table-settings-modal-columns-list__item_focus{background-color:var(--color-hover-black)}.vm-table-settings-modal-columns-list__item_custom .vm-checkbox__label:after{width:100%;content:"(custom column, will be removed if unchecked)";padding:0 8px;text-align:right;font-style:italic;color:var(--color-text-secondary)}.vm-table-settings-modal-columns-no-found{display:flex;flex-direction:column;min-width:100%;min-height:250px;align-items:center;justify-content:center;gap:12px}.vm-table-settings-modal-columns-no-found__info{text-align:center;font-style:italic;color:var(--color-text-secondary)}.vm-checkbox{display:flex;align-items:center;justify-content:flex-start;cursor:pointer;-webkit-user-select:none;user-select:none}.vm-checkbox_disabled{opacity:.6;cursor:default}.vm-checkbox_secondary_active .vm-checkbox-track{background-color:var(--color-secondary)}.vm-checkbox_secondary .vm-checkbox-track{border:1px solid var(--color-secondary)}.vm-checkbox_primary_active .vm-checkbox-track{background-color:var(--color-primary)}.vm-checkbox_primary .vm-checkbox-track{border:1px solid var(--color-primary)}.vm-checkbox_active .vm-checkbox-track__thumb{transform:scale(1)}.vm-checkbox:hover .vm-checkbox-track{opacity:.8}.vm-checkbox-track{position:relative;background-color:transparent;display:flex;align-items:center;justify-content:center;border-radius:4px;padding:2px;width:16px;height:16px;transition:background-color .2s ease,opacity .3s ease-out}.vm-checkbox-track__thumb{display:grid;align-items:center;justify-content:center;width:12px;height:12px;color:#fff;transform:scale(0);transition:transform .1s ease-in-out}.vm-checkbox__label{white-space:nowrap;font-size:inherit;color:inherit;margin-left:8px;transition:color .2s ease}.vm-download-report{display:grid;gap:16px;padding-top:4px;width:700px;max-width:100%}.vm-download-report-settings{display:grid;gap:16px}.vm-download-report-settings__title{display:flex;align-items:center;margin-right:12px;font-size:14px;font-weight:600;white-space:nowrap}.vm-download-report__buttons{display:flex;align-items:center;justify-content:flex-end;gap:12px}.vm-download-report-helper{display:grid;gap:8px;padding:12px}.vm-download-report-helper__description{max-width:400px;white-space:pre-line;line-height:1.3}.vm-download-report-helper__description p{margin-bottom:4px}.vm-download-report-helper__buttons{display:flex;align-items:center;justify-content:flex-end;gap:8px}.vm-markdown-editor{margin-top:6px;padding:0 6px;border-radius:4px;border:var(--border-divider);overflow:hidden}.vm-markdown-editor-header{display:flex;align-items:center;background-color:var(--color-hover-black);padding-right:12px;border-bottom:var(--border-divider);margin:-1px -7px 6px}.vm-markdown-editor-header-tabs{display:flex}.vm-markdown-editor-header-tabs__tab{display:flex;align-items:center;justify-content:center;margin-bottom:-1px;padding:8px 16px;min-height:40px;color:var(--color-text-secondary);transition:color .3s;cursor:pointer}.vm-markdown-editor-header-tabs__tab:hover{color:var(--color-text)}.vm-markdown-editor-header-tabs__tab_active{position:relative;color:var(--color-text);background-color:var(--color-background-body);border-top-right-radius:4px;border-top-left-radius:4px;z-index:1}.vm-markdown-editor-header-tabs__tab_active:first-child{border-right:var(--border-divider)}.vm-markdown-editor-header-tabs__tab_active:last-child{border-right:var(--border-divider);border-left:var(--border-divider)}.vm-markdown-editor-header__info{margin-left:auto;margin-right:0;color:var(--color-text-secondary);font-size:12px;font-weight:500}.vm-markdown-editor-preview{padding:8px;margin-bottom:6px}.vm-markdown-editor-preview,.vm-markdown-editor textarea{min-height:200px;resize:vertical}.vm-warning-heatmap-to-line{display:flex;align-items:center;justify-content:space-between}.vm-predefined-panel-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;justify-content:flex-start;gap:8px;padding:8px 16px;border-bottom:var(--border-divider)}.vm-predefined-panel-header__description{white-space:pre-wrap;line-height:1.3}.vm-predefined-panel-header__description ul,.vm-predefined-panel-header__description ol{list-style-position:inside}.vm-predefined-panel-header__description a{color:#c9e3f6;text-decoration:underline}.vm-predefined-panel-header__info{display:flex;align-items:center;justify-content:center;width:18px;color:var(--color-primary)}.vm-predefined-panel-body{padding:8px 16px;min-height:500px}@media (max-width: 500px){.vm-predefined-panel-body{padding:0}}.vm-predefined-dashboard{background-color:transparent}.vm-predefined-dashboard-header{position:relative;display:grid;align-items:center;justify-content:space-between;grid-template-columns:1fr auto;padding:12px;border-radius:4px;font-weight:700;transform-style:preserve-3d;overflow:hidden;line-height:1;box-shadow:var(--box-shadow);transition:box-shadow .2s ease-in-out}.vm-predefined-dashboard-header_open{border-radius:4px 4px 0 0;box-shadow:none}.vm-predefined-dashboard-header__title{font-size:14px}.vm-predefined-dashboard-header__count{grid-column:2;font-size:12px;margin-right:26px}.vm-predefined-dashboard-panels{display:grid;grid-template-columns:repeat(12,1fr);gap:12px;padding:0}@media (max-width: 1000px){.vm-predefined-dashboard-panels{grid-template-columns:1fr}}.vm-predefined-dashboard-panels-panel{position:relative;border-radius:8px;overflow:hidden}.vm-predefined-dashboard-panels-panel:hover .vm-predefined-dashboard-panels-panel__resizer{transform:scale(1)}.vm-predefined-dashboard-panels-panel__resizer{position:absolute;bottom:0;right:0;width:20px;height:20px;transform:scale(0);transition:transform .2s ease-in-out;cursor:ew-resize;z-index:1}.vm-predefined-dashboard-panels-panel__resizer:after{content:"";position:absolute;bottom:5px;right:5px;border-bottom:2px solid rgba(17,15,15,.2);border-right:2px solid rgba(17,15,15,.2);width:5px;height:5px}.vm-predefined-dashboard-panels-panel__alert{grid-column:span 12}.vm-predefined-panels{display:grid;gap:12px;align-items:flex-start}@media (max-width: 768px){.vm-predefined-panels{padding:12px 0}}@media (max-width: 500px){.vm-predefined-panels{padding:8px 0}}.vm-predefined-panels-tabs{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;font-size:12px;gap:8px;overflow:hidden}@media (max-width: 768px){.vm-predefined-panels-tabs{padding:0 12px}}.vm-predefined-panels-tabs__tab{padding:8px 12px;border-radius:8px;cursor:pointer;transition:background .2s ease-in-out,color .15s ease-in;background:var(--color-background-block);text-transform:uppercase;color:var(--color-text-secondary);text-align:center;border:1px solid rgba(17,15,15,.2)}@media (max-width: 500px){.vm-predefined-panels-tabs__tab{flex-grow:1}}.vm-predefined-panels-tabs__tab:hover{color:var(--color-primary)}.vm-predefined-panels-tabs__tab_active{border-color:var(--color-primary);color:var(--color-primary)}.vm-predefined-panels__dashboards{display:grid;gap:12px}.vm-cardinality-configurator{display:grid;gap:8px}.vm-cardinality-configurator-controls{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:8px 12px}.vm-cardinality-configurator-controls__query{flex-grow:10}.vm-cardinality-configurator-controls__item{flex-grow:2}.vm-cardinality-configurator-controls__item_limit{flex-grow:1}.vm-cardinality-configurator-controls__item svg{color:var(--color-text-disabled)}.vm-cardinality-configurator-bottom{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px;width:100%}.vm-cardinality-configurator-bottom-helpful{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px 12px}.vm-cardinality-configurator-bottom-helpful a{color:var(--color-text-secondary)}.vm-cardinality-configurator-bottom__execute{display:flex;align-items:center;gap:8px}.vm-cardinality-configurator_mobile .vm-cardinality-configurator-bottom{justify-content:center}.vm-cardinality-configurator_mobile .vm-cardinality-configurator-bottom-helpful{flex-grow:1;justify-content:center}.vm-cardinality-configurator_mobile .vm-cardinality-configurator-bottom__execute{width:100%}.vm-cardinality-configurator_mobile .vm-cardinality-configurator-bottom__execute button:nth-child(3){width:100%}.vm-cardinality-totals{display:inline-flex;flex-wrap:wrap;align-content:flex-start;justify-content:flex-start;gap:16px;flex-grow:1}.vm-cardinality-totals_mobile{gap:12px;justify-content:center}.vm-cardinality-totals-card{display:grid;grid-template-columns:auto 1fr;align-items:flex-end;justify-content:center;gap:8px 4px;padding:8px}.vm-cardinality-totals-card__info-icon{width:15px;display:flex;align-items:center;justify-content:center;color:var(--color-primary)}.vm-cardinality-totals-card__title{display:flex;align-items:center;justify-content:flex-start;gap:4px;grid-column:1/-1;color:var(--color-text)}.vm-cardinality-totals-card__tooltip{max-width:280px;white-space:normal;padding:8px}.vm-cardinality-totals-card__value{font-weight:700;color:var(--color-primary);font-size:18px;line-height:14px;text-align:center}.vm-cardinality-totals-card__link{text-align:right;font-size:12px;margin-left:8px}.vm-metrics-content{border:var(--border-divider)}.vm-metrics-content-header{margin:-12px -12px 0;background-color:var(--color-hover-black)}.vm-metrics-content-header__title{display:flex;align-items:center;justify-content:flex-start}.vm-metrics-content-header__tip{max-width:300px;white-space:normal;padding:8px}.vm-metrics-content-header__tip p{margin-bottom:8px}.vm-metrics-content-header__tip-icon{width:15px;display:flex;align-items:center;justify-content:center;color:var(--color-primary);margin-right:4px}.vm-metrics-content_mobile .vm-metrics-content-header{margin:-12px -12px 0}.vm-metrics-content__table{padding-top:12px;width:calc(100vw - 64px - var(--scrollbar-width));overflow:auto}@media (max-width: 768px){.vm-metrics-content__table{width:calc(100vw - 24px - var(--scrollbar-width))}}.vm-metrics-content__table_mobile{width:calc(100vw - 24px - var(--scrollbar-width))}.vm-metrics-content__table .vm-table-cell_header{white-space:nowrap}.vm-metrics-content__table th,.vm-metrics-content__table td{vertical-align:middle;height:33px}.vm-metrics-content_mobile .vm-metrics-content__table{width:calc(100vw - 24px - var(--scrollbar-width))}.vm-metrics-content__chart{padding-top:12px}.vm-metrics-content-prom-data{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;gap:8px;margin-top:12px;text-align:center}.vm-metrics-content-prom-data__icon{display:flex;align-items:center;justify-content:center;width:30px;height:30px;margin-bottom:8px;color:var(--color-primary)}.vm-metrics-content-prom-data__title{font-size:16px;font-weight:700}.vm-metrics-content-prom-data__text{max-width:700px;line-height:1.3}.vm-simple-bar-chart{display:grid;grid-template-columns:auto 1fr;height:100%;padding-bottom:6px;overflow:hidden}.vm-simple-bar-chart-y-axis{position:relative;display:grid;transform:translateY(12px)}.vm-simple-bar-chart-y-axis__tick{position:relative;display:flex;align-items:center;justify-content:flex-end;transform-style:preserve-3d;text-align:right;padding-right:8px;font-size:12px;line-height:2;z-index:1}.vm-simple-bar-chart-y-axis__tick:after{content:"";position:absolute;top:auto;left:100%;width:100vw;height:0;border-bottom:var(--border-divider);transform:translateY(-1px) translateZ(-1)}.vm-simple-bar-chart-data{position:relative;display:flex;align-items:flex-end;justify-content:space-between;gap:1%}.vm-simple-bar-chart-data-item{display:flex;align-items:flex-start;justify-content:center;flex-grow:1;width:100%;min-width:1px;height:calc(100% - 48px);background-color:#3b5;transition:background-color .2s ease-in}.vm-simple-bar-chart-data-item:hover{background-color:#7fdc96}.vm-simple-bar-chart-data-item:first-child{background-color:#f79420}.vm-simple-bar-chart-data-item:first-child:hover{background-color:#fabf79}.vm-cardinality-panel{display:grid;align-items:flex-start;gap:16px}.vm-cardinality-panel_mobile,.vm-cardinality-panel_mobile .vm-cardinality-panel-tips{gap:8px}.vm-cardinality-panel-tips{display:inline-flex;flex-wrap:wrap;align-content:flex-start;justify-content:flex-start;gap:12px;flex-grow:1;width:100%}.vm-cardinality-panel-table__header th:first-child{width:60%}.vm-cardinality-panel-table__progress{display:grid;grid-template-columns:minmax(160px,1fr) repeat(2,auto);white-space:nowrap;align-items:center;justify-content:flex-start;gap:8px;font-size:12px}.vm-cardinality-tip{display:grid;grid-template-rows:auto 1fr;background-color:var(--color-background-block);border-radius:8px;box-shadow:var(--box-shadow);overflow:hidden;color:var(--color-text-secondary);flex-grow:1;width:300px}.vm-cardinality-tip-header{position:relative;display:flex;align-items:center;justify-content:center;padding:8px 12px;border-bottom:var(--border-divider);gap:4px}.vm-cardinality-tip-header:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:var(--color-warning);opacity:.1;pointer-events:none}.vm-cardinality-tip-header__tip-icon{width:12px;display:flex;align-items:center;justify-content:center;color:var(--color-warning)}.vm-cardinality-tip-header__title{font-weight:700;text-align:center;color:var(--color-text)}.vm-cardinality-tip-header__tooltip{max-width:280px;white-space:normal;padding:8px;line-height:130%;font-size:14px}.vm-cardinality-tip__description{padding:8px 12px;line-height:130%}.vm-cardinality-tip__description p{margin-bottom:8px}.vm-cardinality-tip__description p:last-child{margin-bottom:0}.vm-cardinality-tip__description ul,.vm-cardinality-tip__description ol{list-style-position:inside}.vm-cardinality-tip__description ul li,.vm-cardinality-tip__description ol li{margin-bottom:4px}.vm-top-queries-panel-header,.vm-top-queries-panel-header_mobile{margin:-12px -12px 0}.vm-top-queries-panel__table{padding-top:12px;width:calc(100vw - 48px - var(--scrollbar-width));overflow:auto}@media (max-width: 768px){.vm-top-queries-panel__table{width:calc(100vw - 24px - var(--scrollbar-width))}}.vm-top-queries-panel__table_mobile{width:calc(100vw - 24px - var(--scrollbar-width))}.vm-top-queries-panel__table .vm-table-cell_header{white-space:nowrap}.vm-top-queries{display:grid;align-items:flex-start;gap:12px}.vm-top-queries_mobile{gap:8px}.vm-top-queries-controls{display:grid;gap:8px}.vm-top-queries-controls-fields{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.vm-top-queries-controls-fields__item{flex-grow:1;min-width:200px}.vm-top-queries-controls-bottom{display:grid;grid-template-columns:1fr auto;align-items:flex-end;justify-content:space-between;gap:12px}.vm-top-queries-controls-bottom_mobile{grid-template-columns:1fr;gap:8px}.vm-top-queries-controls-bottom__button{display:flex;align-items:center;justify-content:flex-end}.vm-top-queries-panels{display:grid;gap:12px}.vm-top-queries-panels__table-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;height:100%;padding:0 8px}.vm-trace-page{display:flex;flex-direction:column;min-height:100%}@media (max-width: 768px){.vm-trace-page{padding:12px 0}}.vm-trace-page-header{display:grid;grid-template-columns:1fr auto;align-items:start;gap:12px;margin-bottom:12px}@media (max-width: 768px){.vm-trace-page-header{grid-template-columns:1fr;padding:0 12px}}.vm-trace-page-header-errors{display:grid;align-items:flex-start;justify-content:stretch;grid-template-columns:1fr;gap:12px}@media (max-width: 768px){.vm-trace-page-header-errors{grid-row:2}}.vm-trace-page-header-errors-item{position:relative;display:grid;align-items:center;justify-content:stretch}.vm-trace-page-header-errors-item_margin-bottom{margin-bottom:12px}.vm-trace-page-header-errors-item__filename{min-height:20px}.vm-trace-page-header-errors-item__close{position:absolute;top:auto;right:8px;z-index:2}.vm-trace-page-preview{flex-grow:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;min-height:calc(var(--vh) * 50 - var(--scrollbar-height))}.vm-trace-page-preview__text{margin-bottom:12px;font-size:14px;white-space:pre-line;text-align:center;line-height:1.8}.vm-trace-page__dropzone{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;box-shadow:inset var(--color-primary) 0 0 10px;opacity:.5;z-index:100;pointer-events:none}.vm-upload-json-buttons{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:center;justify-content:center}.vm-upload-json-buttons__upload{position:relative}.vm-explore-metrics{display:grid;align-items:flex-start;gap:12px}@media (max-width: 500px){.vm-explore-metrics{gap:8px}}.vm-explore-metrics-body{display:grid;align-items:flex-start;gap:12px}@media (max-width: 500px){.vm-explore-metrics-body{gap:8px}}.vm-explore-metrics-graph,.vm-explore-metrics-graph_mobile{padding:0 12px 12px}.vm-explore-metrics-graph__warning{display:grid;grid-template-columns:1fr auto;align-items:center;justify-content:space-between}.vm-explore-metrics-item-header{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;justify-content:flex-start;padding:12px;border-bottom:var(--border-divider);gap:12px}.vm-explore-metrics-item-header_mobile{grid-template-columns:1fr auto;padding:8px 12px}.vm-explore-metrics-item-header__index{color:var(--color-text-secondary);font-size:12px}.vm-explore-metrics-item-header__name{flex-grow:1;font-weight:700;max-width:100%;text-overflow:ellipsis;overflow:hidden;line-height:130%}.vm-explore-metrics-item-header-order{grid-column:1;display:grid;grid-template-columns:auto 20px auto;align-items:center;justify-content:flex-start;text-align:center}.vm-explore-metrics-item-header-order__up{transform:rotate(180deg)}.vm-explore-metrics-item-header__rate{grid-column:3}.vm-explore-metrics-item-header__close{grid-row:1;grid-column:4;display:grid;align-items:center}.vm-explore-metrics-item-header code{padding:.2em .4em;font-size:85%;background-color:var(--color-hover-black);border-radius:6px}.vm-explore-metrics-item-header-modal{display:grid;align-items:flex-start;gap:12px}.vm-explore-metrics-item-header-modal-order{display:flex;align-items:center;justify-content:space-between;gap:12px}.vm-explore-metrics-item-header-modal-order p{display:flex;align-items:center}.vm-explore-metrics-item-header-modal-order__index{margin-left:4px}.vm-explore-metrics-item-header-modal__rate{display:grid;gap:8px}.vm-explore-metrics-item-header-modal__rate p{color:var(--color-text-secondary)}.vm-explore-metrics-item{position:relative}.vm-explore-metrics-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:12px 18px;max-width:calc(100vw - var(--scrollbar-width))}.vm-explore-metrics-header_mobile{flex-direction:column;align-items:stretch}.vm-explore-metrics-header__job{flex-grow:1;min-width:150px}.vm-explore-metrics-header__instance{flex-grow:2;min-width:150px}.vm-explore-metrics-header__size{flex-grow:1;min-width:150px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px}.vm-explore-metrics-header-description{display:grid;grid-template-columns:1fr auto;align-items:flex-start;gap:8px}.vm-explore-metrics-header-description ul{list-style-position:inside}.vm-explore-metrics-header-description button{color:inherit;min-height:29px}.vm-explore-metrics-header-description code{margin:0 3px}.vm-explore-metrics-header-metrics{flex-grow:1;width:100%}.vm-explore-metrics-header__clear-icon{display:flex;align-items:center;justify-content:center;padding:2px;cursor:pointer}.vm-explore-metrics-header__clear-icon:hover{opacity:.7}.vm-preview-icons{display:grid;align-items:flex-start;justify-content:center;grid-template-columns:repeat(auto-fill,100px);gap:12px}.vm-preview-icons-item{display:grid;grid-template-rows:1fr auto;align-items:stretch;justify-content:center;gap:8px;height:100px;padding:12px 8px;border-radius:4px;border:1px solid transparent;cursor:pointer;transition:box-shadow .2s ease-in-out}.vm-preview-icons-item:hover{box-shadow:#00000029 0 1px 4px}.vm-preview-icons-item:active .vm-preview-icons-item__svg{transform:scale(.9)}.vm-preview-icons-item__name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-align:center;font-size:12px;line-height:2}.vm-preview-icons-item__svg{display:flex;align-items:center;justify-content:center;height:100%;transition:transform .1s ease-out}.vm-preview-icons-item__svg svg{width:auto;height:24px}.vm-with-template{display:grid;gap:12px}.vm-with-template-body{display:grid;gap:12px;align-items:flex-start;width:100%}.vm-with-template-body-top{display:flex;gap:8px;align-items:center;justify-content:flex-end}.vm-with-template-body__expr textarea{min-height:200px}.vm-with-template-body__result textarea{min-height:60px}.vm-with-template-body textarea{font-family:monospace;overflow:auto;width:100%;height:100%}.vm-with-template-tutorial{display:grid;gap:16px}.vm-with-template-tutorial__title{font-size:16px;font-weight:700}.vm-with-template-tutorial-section{display:grid;gap:12px}.vm-with-template-tutorial-section__text{font-size:14px;line-height:130%;max-width:720px}.vm-code-example{position:relative;display:block;padding:12px;white-space:pre-wrap;border-radius:4px;background-color:#110f0f0d;overflow:auto}.vm-code-example__copy{position:absolute;right:10px;top:10px}.vm-relabeling{display:grid;gap:12px}.vm-relabeling-header{display:grid;gap:12px;align-items:flex-start;width:100%}.vm-relabeling-header-configs textarea{min-height:200px}.vm-relabeling-header__labels textarea{min-height:60px}.vm-relabeling-header textarea{font-family:monospace;overflow:auto;width:100%;height:100%}.vm-relabeling-header-bottom{display:flex;align-items:center;justify-content:flex-end;gap:12px}.vm-relabeling-header-bottom a{color:var(--color-text-secondary)}.vm-relabeling-steps{display:grid;gap:12px}.vm-relabeling-steps-item{display:grid;gap:12px;padding:0 12px 12px;border-bottom:var(--border-divider)}.vm-relabeling-steps-item:last-child{border-bottom:none;padding-bottom:0}.vm-relabeling-steps-item__row{display:grid;grid-template-columns:100px 1fr}@media (max-width: 500px){.vm-relabeling-steps-item__row{grid-template-columns:1fr;gap:4px}}.vm-relabeling-steps-item__row pre{white-space:pre-wrap}.vm-active-queries-header{display:grid;grid-template-columns:1fr auto;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.vm-active-queries-header-controls{grid-column:2;display:grid;gap:8px}.vm-active-queries-header__update-msg{white-space:nowrap;color:var(--color-text-secondary);font-size:12px}.vm-json-form{display:grid;grid-template-rows:auto calc(var(--vh) * 70 - 78px - 36px) auto;gap:12px;width:70vw;max-width:1000px;max-height:900px;overflow:hidden}.vm-json-form_mobile{width:100%;min-height:100%;grid-template-rows:auto calc(var(--vh) * 100 - 200px - 36px) auto}.vm-json-form_one-field{grid-template-rows:calc(var(--vh) * 70 - 78px - 36px) auto}.vm-json-form_one-field_mobile{grid-template-rows:calc(var(--vh) * 100 - 160px - 24px) auto}.vm-json-form textarea{overflow:auto;width:100%;height:100%;max-height:900px}.vm-json-form-footer{display:flex;align-items:center;justify-content:space-between;gap:8px}@media (max-width: 500px){.vm-json-form-footer{flex-direction:column}.vm-json-form-footer button{flex-grow:1}}.vm-json-form-footer__controls{flex-grow:1;display:flex;align-items:center;justify-content:flex-start;gap:8px}@media (max-width: 500px){.vm-json-form-footer__controls{grid-template-columns:repeat(2,1fr);justify-content:center;width:100%}}.vm-json-form-footer__controls_right{display:grid;grid-template-columns:repeat(2,90px);justify-content:flex-end}@media (max-width: 500px){.vm-json-form-footer__controls_right{grid-template-columns:repeat(2,1fr);justify-content:center;width:100%}}.vm-query-analyzer{display:flex;flex-direction:column}@media (max-width: 768px){.vm-query-analyzer{padding:12px 0}}.vm-query-analyzer-header{display:grid;grid-template-columns:1fr auto;gap:12px;margin-bottom:12px}.vm-query-analyzer-error{position:relative;margin:12px 0}.vm-query-analyzer-error__close{position:absolute;top:8px;right:8px;z-index:2}.vm-query-analyzer-view{display:grid;gap:12px;position:relative}.vm-query-analyzer-view-header{position:relative;display:flex;align-items:center;justify-content:space-between;font-size:12px;margin:-12px -12px 12px;padding:0 12px;border-bottom:var(--border-divider);z-index:1}.vm-query-analyzer-view-header__left{display:flex;align-items:center;gap:8px}.vm-query-analyzer-view_mobile .vm-query-analyzer-view-header{margin:-12px -12px 12px;padding:0 12px}.vm-query-analyzer-info-header{display:flex;align-items:center;width:100%;height:100%;gap:8px;font-size:12px;background-color:var(--color-background-body);z-index:1}.vm-query-analyzer-info-header__title{font-size:18px;font-weight:500}.vm-query-analyzer-info-header__timerange{display:flex;align-items:center;gap:4px;border:var(--border-divider);border-radius:4px;padding:4px 8px;font-size:12px}.vm-query-analyzer-info-header__timerange svg{width:13px;color:var(--color-primary)}.vm-query-analyzer-info-header__info{margin-left:auto;margin-right:0}.vm-query-analyzer-info__modal{width:min(800px,90vw)}.vm-query-analyzer-info-comment{position:relative;max-width:800px;border-radius:8px;border:var(--border-divider);font-size:12px}.vm-query-analyzer-info-comment-header{display:grid;grid-template-columns:16px 1fr;align-items:center;gap:8px;padding:8px;border-bottom:var(--border-divider);background-color:var(--color-hover-black);font-weight:500;z-index:1}.vm-query-analyzer-info-comment-header svg{color:var(--color-primary)}.vm-query-analyzer-info-comment-body{padding:8px;max-height:60vh;overflow:auto}.vm-query-analyzer-info-stats{border-radius:8px;border:var(--border-divider);font-size:12px;margin-bottom:12px;overflow:hidden}.vm-query-analyzer-info-stats table{width:100%}.vm-query-analyzer-info-stats td,.vm-query-analyzer-info-stats th{padding:8px;text-align:left}.vm-query-analyzer-info-stats tr{border-bottom:var(--border-divider)}.vm-query-analyzer-info-stats thead th{font-weight:500}.vm-query-analyzer-info-stats tbody tr{transition:background-color .3s}.vm-query-analyzer-info-stats tbody tr:hover{background-color:var(--color-hover-black)}.vm-query-analyzer-info-stats tbody tr:last-child{border-bottom:none}.vm-downsampling-filters{display:grid;gap:12px}.vm-downsampling-filters-body{display:grid;gap:12px;align-items:flex-start;width:100%}.vm-downsampling-filters-body__title{margin-bottom:12px}.vm-downsampling-filters-body-top{display:flex;gap:8px;align-items:center;justify-content:flex-end}.vm-downsampling-filters-body__expr textarea{min-height:200px}.vm-downsampling-filters-body__result textarea{min-height:60px}.vm-downsampling-filters-body code{background-color:var(--color-hover-black);border-radius:6px;font-size:85%;padding:.2em .4em}.vm-downsampling-filters-body textarea{font-family:monospace;overflow:auto;width:100%;height:100%}.vm-retention-filters{display:grid;gap:12px}.vm-retention-filters-body{display:grid;gap:12px;align-items:flex-start;width:100%}.vm-retention-filters-body__title{margin-bottom:12px}.vm-retention-filters-body-top{display:flex;gap:8px;align-items:center;justify-content:flex-end}.vm-retention-filters-body__expr textarea{min-height:200px}.vm-retention-filters-body__result textarea{min-height:60px}.vm-retention-filters-body code{background-color:var(--color-hover-black);border-radius:6px;font-size:85%;padding:.2em .4em}.vm-retention-filters-body textarea{font-family:monospace;overflow:auto;width:100%;height:100%}html,body,#root{font-family:system-ui;font-size:14px;color:var(--color-text);min-height:100%;cursor:default;background-repeat:no-repeat;background-attachment:fixed;margin:0;background-color:var(--color-background-body)}body{overflow:auto}*{font:inherit;cursor:inherit;touch-action:pan-x pan-y;-webkit-tap-highlight-color:transparent}code{font-family:monospace}b{font-weight:700}textarea,input{cursor:text}input::placeholder,textarea::placeholder{-webkit-user-select:none;user-select:none}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.vm-snackbar{position:fixed;left:12px;bottom:12px;z-index:999;animation:vm-slide-snackbar .15s cubic-bezier(.28,.84,.42,1.1)}.vm-snackbar-content{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:flex-start;line-height:24px}.vm-snackbar-content__close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:4px;color:inherit;opacity:.8;border-radius:4px;cursor:pointer}.vm-snackbar-content__close:hover{background-color:var(--color-hover-black)}.vm-snackbar-details{display:grid;grid-template-columns:1fr;gap:0}.vm-snackbar-details__title{font-weight:600;padding-bottom:4px;margin-bottom:4px;border-bottom:1px solid inherit}.vm-snackbar-details__msg{display:grid;line-height:150%;white-space:pre-line;text-wrap:pretty;overflow-wrap:anywhere}.vm-snackbar-details__msg ul,.vm-snackbar-details__msg ol{list-style-position:inside;margin-bottom:8px}.vm-snackbar_mobile{bottom:0;left:0;right:0}@keyframes vm-slide-snackbar{0%{transform:translateY(100%)}to{transform:translateY(0)}}svg{width:100%}*{scrollbar-width:thin;scrollbar-color:var(--color-text-disabled) var(--color-background-block)}*::-webkit-scrollbar{width:12px}*::-webkit-scrollbar-track{background:var(--color-background-block)}*::-webkit-scrollbar-thumb{background-color:var(--color-text-disabled);border-radius:20px;border:3px solid var(--color-background-block)}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,u,center,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;vertical-align:baseline}h1,h2,h3,h4,h5,h6{font-weight:400}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}q:before,q:after{content:""}table{border-collapse:collapse;border-spacing:0}input::placeholder{opacity:1;transition:opacity .3s ease}input:focus::placeholder{opacity:0;transition:opacity .3s ease}*{outline:none;box-sizing:border-box}button{padding:0;border-radius:0;border:none;background:none}input[type=file]{opacity:0;cursor:pointer;width:100%;height:100%;font-size:0;left:0;top:0;position:absolute}input[type=file]:disabled{cursor:not-allowed}a{color:inherit;text-decoration:inherit}input,textarea{-webkit-text-fill-color:inherit;-moz-appearance:none;appearance:none;-webkit-appearance:none}input:disabled,textarea:disabled{opacity:1!important}input:placeholder-shown,textarea:placeholder-shown{width:100%}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 0 white inset!important;z-index:2;width:100%}.vm-header-button{border:1px solid rgba(17,15,15,.2)}.vm-list-item{padding:12px;cursor:pointer;background-color:transparent;transition:background-color .2s ease}.vm-list-item_mobile{padding:12px}.vm-list-item:hover,.vm-list-item_active{background-color:var(--color-hover-black)}.vm-list-item_multiselect{display:grid;grid-template-columns:10px 1fr;gap:8px;align-items:center;justify-content:flex-start}.vm-list-item_multiselect svg{animation:vm-scale .15s cubic-bezier(.28,.84,.42,1)}.vm-list-item_multiselect span{grid-column:2}.vm-list-item_multiselect_selected{color:var(--color-primary)}.vm-list-item_with-icon{display:grid;grid-template-columns:14px 1fr;gap:4px;align-items:center;justify-content:flex-start}.vm-mobile-option{display:flex;align-items:center;justify-content:flex-start;gap:8px;padding:6px 0;width:100%;-webkit-user-select:none;user-select:none}.vm-mobile-option__arrow,.vm-mobile-option__icon{display:flex;align-items:center;justify-content:center}.vm-mobile-option__icon{width:22px;height:22px;color:var(--color-primary)}.vm-mobile-option__arrow{width:14px;height:14px;transform:rotate(-90deg);color:var(--color-primary)}.vm-mobile-option-text{display:grid;align-items:center;gap:2px;flex-grow:1}.vm-mobile-option-text__label{font-weight:700}.vm-mobile-option-text__value{color:var(--color-text-secondary);font-size:12px}.vm-block{padding:12px;background-color:var(--color-background-block);border-radius:8px;box-shadow:var(--box-shadow)}.vm-block_mobile{padding:12px;border-radius:0}.vm-block_empty-padding{padding:0}.vm-section-header{display:grid;grid-template-columns:1fr auto;align-items:center;justify-content:center;padding:0 12px;border-bottom:var(--border-divider);border-radius:8px 8px 0 0}.vm-section-header__title{font-size:14px;font-weight:700}.vm-section-header__title_mobile{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical}.vm-section-header__tabs{display:flex;align-items:center;justify-content:flex-start;font-size:12px}.vm-table{width:100%;border-collapse:separate;border-spacing:0;margin-top:-12px;background-color:var(--color-background-block)}.vm-table__row{background-color:var(--color-background-block);transition:background-color .2s ease}.vm-table__row:hover:not(.vm-table__row_header){background-color:var(--color-hover-black)}.vm-table__row_header{position:relative;z-index:2}.vm-table__row_selected{background-color:#1a90ff0d}.vm-table-cell{padding:4px;border-bottom:var(--border-divider);vertical-align:top;line-height:1.5;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.vm-table-cell__content{display:flex;align-items:center;justify-content:flex-start}.vm-table-cell_sort{cursor:pointer}.vm-table-cell_sort:hover{background-color:var(--color-hover-black)}.vm-table-cell_header{font-weight:700;text-align:left;overflow-wrap:normal}.vm-table-cell_gray{color:var(--color-text);opacity:.4}.vm-table-cell_right{text-align:right}.vm-table-cell_right .vm-table-cell__content{justify-content:flex-end}.vm-table-cell_no-wrap{white-space:nowrap}.vm-table-cell_no-padding{padding:0}.vm-table-cell_pre{white-space:pre-wrap}.vm-table-cell_logs-time{white-space:nowrap;overflow-wrap:normal}.vm-table-cell_logs{font-family:monospace;line-height:1.2;width:100%;overflow-wrap:normal}.vm-table-cell_compact{white-space:nowrap;width:100px}.vm-table-cell_empty{color:var(--color-text-secondary);font-style:italic}.vm-table__sort-icon{display:flex;align-items:center;justify-content:center;width:15px;margin:0 8px;opacity:.4;transition:opacity .2s ease,transform .2s ease-in-out}.vm-table__sort-icon_active{opacity:1}.vm-table__sort-icon_desc{transform:rotate(180deg)}.vm-link{transition:color .2s ease;cursor:pointer}.vm-link_colored{color:var(--color-primary)}.vm-link_underlined{text-decoration:underline}.vm-link_with-icon{display:grid;align-items:center;justify-content:center;gap:6px;grid-template-columns:14px auto}.vm-link:hover{color:var(--color-primary);text-decoration:underline}.vm-dynamic-number{position:relative;display:flex;align-items:center;padding-left:1em;font-size:12px;color:var(--color-text-disabled)}.vm-dynamic-number_static{color:var(--color-text-secondary);padding-left:0}.vm-dynamic-number_positive{color:var(--color-success)}.vm-dynamic-number_negative{color:var(--color-error)}.vm-dynamic-number_warning{color:var(--color-warning)}.vm-dynamic-number:before{position:absolute;top:auto;left:0;width:1em}.vm-dynamic-number_down:before{content:"↓ "}.vm-dynamic-number_up:before{content:"↑ "}.vm-markdown{display:block;line-height:1.5}.vm-markdown pre,.vm-markdown code{font-size:1em;font-family:monospace}.vm-markdown pre{padding:.5em;line-height:1.25;overflow-x:scroll}.vm-markdown a,.vm-markdown a:visited{color:var(--color-primary);text-decoration:underline;cursor:pointer}.vm-markdown body{line-height:1.85}.vm-markdown p{font-size:1em;margin-bottom:1.3em}.vm-markdown h1,.vm-markdown h2,.vm-markdown h3,.vm-markdown h4,.vm-markdown h5,.vm-markdown h6{margin:.5em 0 .25em;font-weight:inherit;line-height:1.42}.vm-markdown h1{font-size:1.8em}.vm-markdown h2{font-size:1.6em}.vm-markdown h3{font-size:1.4em}.vm-markdown h4{font-size:1.2em}.vm-markdown h5{font-size:1em}.vm-markdown h6,.vm-markdown small{font-size:.8em}.vm-markdown img,.vm-markdown canvas,.vm-markdown iframe,.vm-markdown video,.vm-markdown svg,.vm-markdown select,.vm-markdown textarea{max-width:100%}.vm-markdown pre{background-color:var(--color-hover-black)}.vm-markdown blockquote{border-left:3px solid rgba(17,15,15,.2);padding-left:1em;opacity:.7}.vm-markdown ul,.vm-markdown ol{margin:.3em 0;list-style-position:inside}.vm-markdown ul li,.vm-markdown ol li{margin-bottom:.3em}.vm-markdown ul li ul,.vm-markdown ul li ol,.vm-markdown ol li ul,.vm-markdown ol li ol{margin-left:1em}.vm-markdown input[type=checkbox]{display:none}.vm-markdown th,.vm-markdown td{padding:.2em .4em}.vm-markdown hr{border-top:var(--border-divider)}.vm-markdown strong{font-weight:700}.vm-markdown em{font-style:italic}.vm-markdown del{text-decoration:line-through}.vm-markdown code:not(pre code){display:inline;vertical-align:middle;background:var(--color-hover-black);border-radius:4px;border:var(--border-divider);-moz-tab-size:4;tab-size:4;font-variant-ligatures:none;padding:.12em .4em;font-size:.9em;white-space:nowrap}:root{--color-primary: #3F51B5;--color-secondary: #E91E63;--color-error: #FD080E;--color-warning: #FF8308;--color-info: #03A9F4;--color-success: #4CAF50;--color-primary-text: #FFFFFF;--color-secondary-text: #FFFFFF;--color-error-text: #FFFFFF;--color-warning-text: #FFFFFF;--color-info-text: #FFFFFF;--color-success-text: #FFFFFF;--color-background-body: #FEFEFF;--color-background-block: #FFFFFF;--color-background-tooltip: rgba(80,80,80,.9);--color-text: #110f0f;--color-text-secondary: #706F6F;--color-text-disabled: #A09F9F;--box-shadow: rgba(0, 0, 0, .08) 1px 2px 6px;--box-shadow-popper: rgba(0, 0, 0, .1) 0px 2px 8px 0px;--border-divider: 1px solid rgba(0, 0, 0, .15);--color-hover-black: rgba(0, 0, 0, .06)}.vm-explore-logs-body{position:relative}.vm-explore-logs-body-header{background-color:var(--color-background-block);z-index:3;margin:-12px -12px 0;position:sticky;top:0}@media (max-width: 1000px){.vm-explore-logs-body-header{top:51px}}.vm-explore-logs-body-header_mobile{margin:-12px -12px 0;display:block;border-bottom:none}.vm-explore-logs-body-header__settings{display:flex;align-items:center;gap:8px;justify-content:flex-end}.vm-explore-logs-body-header__log-info{flex-grow:1;text-align:right;padding-right:16px;color:var(--color-text-secondary);font-size:12px}.vm-explore-logs-body-header__tabs_mobile{border-bottom:var(--border-divider)}.vm-explore-logs-body__table{padding-top:12px;width:calc(100vw - 48px - var(--scrollbar-width));overflow:auto}@media (max-width: 768px){.vm-explore-logs-body__table{width:calc(100vw - 24px - var(--scrollbar-width))}}.vm-explore-logs-body__table_mobile{width:calc(100vw - 24px - var(--scrollbar-width));padding-top:16px}.vm-explore-logs-body__table .vm-table{min-width:700px}.vm-group-logs{margin-top:-12px}.vm-group-logs-header{display:flex;align-items:center;justify-content:flex-end}.vm-group-logs-header-keys{max-height:300px;overflow:auto}.vm-group-logs-header-keys__search{padding:8px}.vm-group-logs-section{border-bottom:var(--border-divider)}.vm-group-logs-section-keys{position:relative;display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:8px 120px 8px 0;font-size:var(--font-size-logs, 12px)}.vm-group-logs-section-keys_compact{flex-wrap:nowrap;overflow:hidden}.vm-group-logs-section-keys_popper{display:flex;flex-wrap:nowrap;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:12px;max-height:400px;overflow:auto}.vm-group-logs-section-keys__title{font-weight:700;white-space:nowrap}.vm-group-logs-section-keys__title code{font-family:monospace}.vm-group-logs-section-keys__title code:before{content:'"'}.vm-group-logs-section-keys__title code:after{content:'"'}.vm-group-logs-section-keys__count{position:absolute;top:auto;right:0;flex-grow:1;text-align:right;font-size:var(--font-size-logs, 12px);color:var(--color-text-secondary);padding-right:48px}.vm-group-logs-section-keys__pair{order:0;padding:6px 12px;background-color:#e9f4fb;color:#1a6399;border-radius:8px;transition:background-color .3s ease-in,transform .1s ease-in,opacity .3s ease-in;white-space:nowrap}.vm-group-logs-section-keys__pair_hide{order:2;visibility:hidden;opacity:0;pointer-events:none}.vm-group-logs-section-keys__pair_more{order:1}.vm-group-logs-section-keys__pair:hover{background-color:#c9e3f6}.vm-group-logs-section-keys__pair:active{transform:scale(.98)}.vm-group-logs-section-keys__pair_dark{color:#76bcff;background-color:var(--color-background-body);opacity:.8}.vm-group-logs-section-keys__pair_dark:hover{background-color:var(--color-background-body);opacity:1}.vm-group-logs-section-rows{font-size:var(--font-size-logs, 12px);font-variant-numeric:tabular-nums;line-height:1.3}.vm-group-logs-row:last-child{margin-bottom:8px}.vm-group-logs-row-content{display:flex;padding:2px 24px 2px 0;cursor:pointer}.vm-group-logs-row-content_interactive{contain:layout;will-change:background-color}.vm-group-logs-row-content__copy-row{position:absolute;top:0;right:0;z-index:1;visibility:hidden}.vm-group-logs-row-content__copy-row.vm-button{padding:2px}.vm-group-logs-row-content_interactive:hover{background-color:var(--color-hover-black)}.vm-group-logs-row-content_interactive:hover .vm-group-logs-row-content__copy-row{visibility:visible}.vm-group-logs-row-content__arrow{display:flex;align-items:center;justify-content:center;width:16px;height:14px;transform:rotate(-90deg);transition:transform .2s ease-out}.vm-group-logs-row-content__arrow_open{transform:rotate(0)}.vm-group-logs-row-content__arrow svg{width:16px}.vm-group-logs-row-content__time{display:flex;align-items:flex-start;justify-content:flex-end;padding:0 12px 0 8px;white-space:nowrap}.vm-group-logs-row-content__time_missing{color:var(--color-text-disabled);font-style:italic;justify-content:center}.vm-group-logs-row-content__msg{font-family:monospace;overflow-wrap:anywhere}.vm-group-logs-row-content__msg_single-line,.vm-group-logs-row-content__msg_empty-msg{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vm-group-logs-row-content__msg_missing{color:var(--color-text-disabled);font-style:italic;text-align:center}.vm-group-logs-row-content__msg p,.vm-group-logs-row-content__msg pre,.vm-group-logs-row-content__msg code{white-space:pre-wrap;word-wrap:break-word;word-break:normal}.vm-group-logs-row-content__msg code:not(pre code),.vm-group-logs-row-content__msg pre{display:inline-block;background:var(--color-hover-black);border:1px solid var(--color-hover-black);border-radius:4px;-moz-tab-size:4;tab-size:4;font-variant-ligatures:none;margin:2px 0}.vm-group-logs-row-content__msg p{font-family:system-ui;line-height:1.4}.vm-group-logs-row-content__msg pre{padding:8px}.vm-group-logs-row-content__msg code{font-size:var(--font-size-logs, 12px);padding:2px 4px}.vm-group-logs-row-content__msg a{color:var(--color-primary);cursor:pointer}.vm-group-logs-row-content__msg a:hover{text-decoration:underline}.vm-group-logs-row-content__msg strong{font-weight:700}.vm-group-logs-row-content__msg em{font-style:italic}.vm-group-logs-row-content__msg blockquote{border-left:4px solid var(--color-hover-black);margin:4px 8px;padding:4px 8px}.vm-group-logs-row-content__msg ul,.vm-group-logs-row-content__msg ol{list-style-position:inside}.vm-group-logs-row-content__sub-msg{padding-right:12px}.vm-group-logs-row-fields{position:relative;padding:8px 0;margin:8px 0 8px 24px;border:var(--border-divider);border-radius:4px;overflow:auto;height:300px;resize:vertical;font-family:monospace;font-size:var(--font-size-logs, 12px);font-variant-numeric:tabular-nums}.vm-group-logs-row-fields_interactive .vm-group-logs-row-fields-item{contain:layout;will-change:background-color}.vm-group-logs-row-fields_interactive .vm-group-logs-row-fields-item:hover{background-color:var(--color-hover-black)}.vm-group-logs-row-fields-item-controls{padding:0 4px}.vm-group-logs-row-fields-item-controls__wrapper{display:flex;align-items:center;justify-content:center}.vm-group-logs-row-fields-item-controls__button.vm-button_small{width:22px;height:22px;min-height:22px}.vm-group-logs-row-fields-item__key,.vm-group-logs-row-fields-item__value{vertical-align:top;line-height:14px;padding:4px}.vm-group-logs-row-fields-item__key{overflow-wrap:break-word;width:max-content}.vm-group-logs-row-fields-item__value{width:100%;word-break:break-all;white-space:pre-wrap}.vm-group-logs-configurator{display:grid;gap:24px;padding:12px 0;max-width:600px}.vm-group-logs-configurator-item{display:grid;grid-template-columns:1fr 31px;align-items:center;justify-content:stretch;gap:0 8px}.vm-group-logs-configurator-item__info{margin-top:8px;grid-column:1/span 2;font-size:12px;color:var(--color-text-secondary);line-height:130%}.vm-group-logs-configurator-item__info_input{margin-top:0}.vm-group-logs-configurator-button{position:relative}.vm-group-logs-configurator-button__marker{position:absolute;top:6px;left:6px;width:5px;height:5px;border-radius:50%;background-color:var(--color-secondary)}.vm-group-logs-configurator__tooltip ul{list-style-position:inside}.vm-pagination{position:sticky;left:0;display:flex;justify-content:center;gap:8px;padding:12px 0;font-size:14px}.vm-pagination_mobile{padding:12px 0}.vm-pagination__page{display:flex;align-items:center;justify-content:center;height:30px;min-width:30px;color:var(--color-text);padding:0 8px;border-radius:4px;transition:background-color .3s;border:1px solid transparent;cursor:pointer}.vm-pagination__page_active{background-color:var(--color-primary);color:var(--color-primary-text);pointer-events:none}.vm-pagination__page_disabled{cursor:default;pointer-events:none;color:var(--color-text-disabled)}.vm-pagination__page:hover{background-color:var(--color-hover-black)}.vm-pagination__arrow svg{max-width:14px;max-height:14px}.vm-pagination__arrow:disabled{color:var(--color-text-disabled);cursor:default;pointer-events:none}.vm-pagination__arrow_prev{transform:rotate(90deg)}.vm-pagination__arrow_next{transform:rotate(-90deg)}.vm-select-limits-button{display:grid;grid-template-columns:auto 18px;align-items:center;justify-content:center;font-size:12px;color:var(--color-text-secondary);cursor:pointer}.vm-select-limits-button:hover{color:var(--color-primary)}.vm-select-limits{display:grid;padding:8px 0}.vm-download-button__format-option{padding:4px}.vm-download-button__format-option:first-child{padding-bottom:0}.vm-download-button__format-option-button{width:100%;justify-content:flex-start}.vm-explore-logs-body__empty{display:flex;align-items:center;justify-content:center;min-height:120px;color:var(--color-text-disabled);text-align:center}.vm-table-view__settings,.vm-table-view__settings-buttons{display:flex;align-items:center;gap:8px}.vm-json-settings{display:flex;flex-direction:row}.vm-json-settings-modal .vm-modal-content-body{min-width:clamp(300px,600px,90vw);padding:0}.vm-json-settings-modal-section{padding-block:12px;border-top:var(--border-divider)}.vm-json-settings-modal-section:first-child{padding-top:0;border-top:none}.vm-json-settings-modal-section__sort-settings-container{display:grid;padding:12px;grid-template-columns:1fr 1fr 80px;gap:12px}@media (max-width: 500px){.vm-json-settings-modal-section__sort-settings-container{grid-template-columns:1fr}}.vm-json-view__settings-container{display:flex;flex-direction:row;align-items:center}.vm-live-tailing-view__settings{display:flex;align-items:center;justify-content:space-between;width:100%}.vm-live-tailing-view__settings-modal{max-width:500px;min-width:300px}.vm-live-tailing-view__settings-modal-item{display:flex;flex-direction:column;gap:8px}.vm-live-tailing-view__settings-modal-item-info{font-size:12px;color:var(--color-text-secondary);line-height:130%}.vm-live-tailing-view__settings-buttons{display:flex;align-items:center}.vm-live-tailing-view__container{width:100%;height:100%;overflow:auto;min-height:calc(100vh - 120px);font-family:monospace;padding-bottom:12px;transition:min-height .3s ease}.vm-live-tailing-view__empty{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-text-secondary)}.vm-live-tailing-view__error{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-error)}.vm-live-tailing-view__logs .vm-group-logs-row{animation:highlight-fade 1s ease-out forwards}.vm-live-tailing-view__log-row{margin-top:8px}@keyframes highlight-fade{0%{background-color:#c9e3f6}to{background-color:var(--color-background-block)}}.vm-scroll-to-top-button{position:fixed;bottom:20px;right:20px;z-index:4;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}.vm-scroll-to-top-button_visible{opacity:1;visibility:visible}.vm-scroll-to-top-button .vm-button{border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 5px #0003}.vm-explore-logs-header{display:grid;align-items:center;gap:12px}.vm-explore-logs-header-top{display:grid;grid-template-columns:8fr 2fr;align-items:flex-start;justify-content:center;gap:12px}.vm-explore-logs-header-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:12px}@media (max-width: 500px){.vm-explore-logs-header-bottom{display:grid;justify-content:normal}}.vm-explore-logs-header-bottom-contols{display:flex;align-items:center;justify-content:flex-start;flex-grow:1}.vm-explore-logs-header-bottom-buttons{display:grid;grid-template-columns:auto 1fr;gap:8px}.vm-explore-logs-header-bottom-execute{position:relative;display:grid}.vm-explore-logs-header-bottom-execute__text{position:absolute}.vm-explore-logs-header-bottom-execute__text_hidden{position:relative;visibility:hidden}.vm-explore-logs-header-bottom-helpful{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 12px}.vm-explore-logs-header-bottom-helpful a{color:var(--color-text-secondary)}.vm-explore-logs{display:grid;grid-template-rows:auto 1fr;align-items:flex-start;gap:12px}.vm-explore-logs-chart{position:relative;display:flex;align-items:center;justify-content:center;padding:0 0 0 8px!important;width:calc(100vw - 24px)}@media (max-width: 768px){.vm-explore-logs-chart{width:100vw}}.vm-explore-logs-chart__empty{display:flex;align-items:center;justify-content:center;position:absolute;top:0;bottom:0;z-index:2}.vm-bar-hits-chart{position:relative;width:100%;height:200px}.vm-bar-hits-chart__wrapper{display:flex;flex-direction:column;width:100%;height:100%}.vm-bar-hits-chart__wrapper_hidden{min-height:90px}.vm-bar-hits-chart_panning{pointer-events:none}.vm-bar-hits-options{display:flex;align-items:center;position:absolute;top:8px;right:8px;z-index:2}.vm-bar-hits-options-settings{display:grid;align-items:flex-start;min-width:200px;gap:12px;padding-bottom:12px}.vm-bar-hits-options-settings-item{padding:0 12px}.vm-bar-hits-options-settings-item_list{padding:0}.vm-bar-hits-options-settings-item__title{font-size:12px;color:var(--color-text-secondary);padding:0 8px 8px}.vm-bar-hits-options-settings-item:last-child{border-bottom:none}.vm-bar-hits-tooltip{opacity:0;pointer-events:none;gap:8px}.vm-bar-hits-tooltip_visible{opacity:1;pointer-events:auto}.vm-bar-hits-tooltip-item{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;max-width:100%}.vm-bar-hits-tooltip-item__label{display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vm-bar-hits-tooltip__date{white-space:nowrap}.vm-bar-hits-legend{display:flex;flex-wrap:wrap;padding:0 8px 8px;color:var(--color-text)}.vm-bar-hits-legend-item{max-width:50%;display:flex;align-items:center;gap:8px;font-size:12px;padding:8px 12px;border-radius:4px;cursor:pointer;transition:.2s}.vm-bar-hits-legend-item:hover{background-color:#0000000d}.vm-bar-hits-legend-item_hide{text-decoration:line-through;opacity:.5}.vm-bar-hits-legend-item__marker{min-width:14px;max-width:14px;height:14px;border:var(--color-background-block)}.vm-bar-hits-legend-item__label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vm-bar-hits-legend-item__total{color:var(--color-text-secondary);font-style:italic;grid-column:2}.vm-bar-hits-legend-info{flex-grow:1;width:100%;display:flex;align-items:center;justify-content:space-between;padding-top:8px;color:var(--color-text-secondary);font-size:12px}.vm-bar-hits-legend-info code{display:inline-block;padding:4px 8px;font-size:12px;text-align:center;background-color:var(--color-background-body);background-repeat:repeat-x;border:var(--border-divider);border-radius:4px}.vm-legend-hits-menu{min-width:160px;z-index:1}.vm-legend-hits-menu_submenu{position:absolute;top:-8px;background-color:var(--color-background-block);left:calc(100% + 4px);box-shadow:var(--box-shadow-popper);border-radius:4px;animation:vm-submenu-show .15s cubic-bezier(.28,.84,.2,1);transform-origin:top left}.vm-legend-hits-menu_submenu_left{left:auto;right:calc(100% + 4px);transform-origin:top right}.vm-legend-hits-menu-section{border-bottom:var(--border-divider)}.vm-legend-hits-menu-section:last-child{border-bottom:none}.vm-legend-hits-menu-row{position:relative;display:flex;gap:8px;align-items:center;justify-content:flex-start;padding:0 12px;transition:background-color .3s;color:var(--color-text)}.vm-legend-hits-menu-row_interactive{cursor:pointer}.vm-legend-hits-menu-row_interactive:hover{background-color:#0000000d}.vm-legend-hits-menu-row_info{font-size:12px;font-weight:500;padding-block:8px}.vm-legend-hits-menu-row_info .vm-legend-hits-menu-row__icon{color:var(--color-info)}.vm-legend-hits-menu-row__icon{display:flex;align-items:center;justify-content:center;width:14px;height:14px}.vm-legend-hits-menu-row__icon_drop{transform:rotate(-90deg)}.vm-legend-hits-menu-row__title{flex-grow:1;padding:12px 0;position:relative;max-width:400px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vm-legend-hits-menu-other-list{width:80vw;height:80vh;overflow:auto}.vm-legend-hits-menu-other-list__search{position:sticky;top:0;padding:8px 0;background-color:var(--color-background-block);border-bottom:var(--border-divider);z-index:2}.vm-legend-hits-menu-other-list-row{border-bottom:var(--border-divider)}.vm-legend-hits-menu-other-list-row_header{border-bottom:none;position:sticky;top:65px;background-color:var(--color-background-block);z-index:1;width:100%}.vm-legend-hits-menu-other-list-row_header:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:1px;border-bottom:var(--border-divider)}.vm-legend-hits-menu-other-list-cell{padding:4px 0;text-align:left}.vm-legend-hits-menu-other-list-cell_header{padding:8px;font-weight:500}.vm-legend-hits-menu-other-list-cell_number{padding:8px;text-align:right;font-variant-numeric:tabular-nums}.vm-legend-hits-menu-other-list-cell_fields{width:100%}.vm-legend-hits-menu-other-list-fields{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start}.vm-legend-hits-menu-other-list-fields__field{padding:4px 8px;border-radius:4px;transition:background-color .3s}.vm-legend-hits-menu-other-list-fields__field:hover{background-color:var(--color-hover-black)}.vm-legend-hits-menu-other-list-fields__field:not(:last-child):after{content:","}.vm-legend-hits-menu-other-list-actions{display:flex;align-items:center;justify-content:center}@keyframes vm-submenu-show{0%{opacity:0}to{opacity:1}}
diff --git a/app/vlselect/vmui/assets/vendor-D1GxaB_c.css b/app/vlselect/vmui/assets/vendor-D1GxaB_c.css
deleted file mode 100644
index 519078e550..0000000000
--- a/app/vlselect/vmui/assets/vendor-D1GxaB_c.css
+++ /dev/null
@@ -1 +0,0 @@
-.uplot,.uplot *,.uplot *:before,.uplot *:after{box-sizing:border-box}.uplot{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:1.5;width:min-content}.u-title{text-align:center;font-size:18px;font-weight:700}.u-wrap{position:relative;-webkit-user-select:none;user-select:none}.u-over,.u-under{position:absolute}.u-under{overflow:hidden}.uplot canvas{display:block;position:relative;width:100%;height:100%}.u-axis{position:absolute}.u-legend{font-size:14px;margin:auto;text-align:center}.u-inline{display:block}.u-inline *{display:inline-block}.u-inline tr{margin-right:16px}.u-legend th{font-weight:600}.u-legend th>*{vertical-align:middle;display:inline-block}.u-legend .u-marker{width:1em;height:1em;margin-right:4px;background-clip:padding-box!important}.u-inline.u-live th:after{content:":";vertical-align:middle}.u-inline:not(.u-live) .u-value{display:none}.u-series>*{padding:4px}.u-series th{cursor:pointer}.u-legend .u-off>*{opacity:.3}.u-select{background:#00000012;position:absolute;pointer-events:none}.u-cursor-x,.u-cursor-y{position:absolute;left:0;top:0;pointer-events:none;will-change:transform}.u-hz .u-cursor-x,.u-vt .u-cursor-y{height:100%;border-right:1px dashed #607D8B}.u-hz .u-cursor-y,.u-vt .u-cursor-x{width:100%;border-bottom:1px dashed #607D8B}.u-cursor-pt{position:absolute;top:0;left:0;border-radius:50%;border:0 solid;pointer-events:none;will-change:transform;background-clip:padding-box!important}.u-axis.u-off,.u-select.u-off,.u-cursor-x.u-off,.u-cursor-y.u-off,.u-cursor-pt.u-off{display:none}
diff --git a/app/vlselect/vmui/assets/vendor-V4vnRsM-.js b/app/vlselect/vmui/assets/vendor-V4vnRsM-.js
deleted file mode 100644
index 5a37b73051..0000000000
--- a/app/vlselect/vmui/assets/vendor-V4vnRsM-.js
+++ /dev/null
@@ -1,67 +0,0 @@
-var Sh=Object.defineProperty;var xh=(e,t,n)=>t in e?Sh(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var ot=(e,t,n)=>xh(e,typeof t!="symbol"?t+"":t,n);var ro,Ce,hf,Fr,Vs,df,mf,gf,Za,Ca,Ta,yf,Xi={},_f=[],kh=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,io=Array.isArray;function er(e,t){for(var n in t)e[n]=t[n];return e}function Ja(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function Oe(e,t,n){var r,i,o,l={};for(o in t)o=="key"?r=t[o]:o=="ref"?i=t[o]:l[o]=t[o];if(arguments.length>2&&(l.children=arguments.length>3?ro.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(o in e.defaultProps)l[o]==null&&(l[o]=e.defaultProps[o]);return Gi(e,l,r,i,null)}function Gi(e,t,n,r,i){var o={type:e,props:t,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:i??++hf,__i:-1,__u:0};return i==null&&Ce.vnode!=null&&Ce.vnode(o),o}function vf(){return{current:null}}function ln(e){return e.children}function Dn(e,t){this.props=e,this.context=t}function si(e,t){if(t==null)return e.__?si(e.__,e.__i+1):null;for(var n;ta&&Fr.sort(mf),e=Fr.shift(),a=Fr.length,e.__d&&(n=void 0,i=(r=(t=e).__v).__e,o=[],l=[],t.__P&&((n=er({},r)).__v=r.__v+1,Ce.vnode&&Ce.vnode(n),Qa(t.__P,n,r,t.__n,t.__P.namespaceURI,32&r.__u?[i]:null,o,i??si(r),!!(32&r.__u),l),n.__v=r.__v,n.__.__k[n.__i]=n,xf(o,n,l),n.__e!=i&&wf(n)));Ho.__r=0}function bf(e,t,n,r,i,o,l,a,u,s,p){var f,d,g,y,S,w,_=r&&r.__k||_f,v=t.length;for(u=$h(n,t,_,u,v),f=0;f0?Gi(l.type,l.props,l.key,l.ref?l.ref:null,l.__v):l).__=e,l.__b=e.__b+1,a=null,(s=l.__i=Eh(l,n,u,f))!=-1&&(f--,(a=n[s])&&(a.__u|=2)),a==null||a.__v==null?(s==-1&&(i>p?d--:iu?d--:d++,l.__u|=4))):e.__k[o]=null;if(f)for(o=0;o
(u!=null&&(2&u.__u)==0?1:0))for(i=n-1,o=n+1;i>=0||o=0){if((u=t[i])&&(2&u.__u)==0&&l==u.key&&a==u.type)return i;i--}if(o0?e:io(e)?e.map(kf):er({},e)}function Ph(e,t,n,r,i,o,l,a,u){var s,p,f,d,g,y,S,w=n.props,_=t.props,v=t.type;if(v=="svg"?i="http://www.w3.org/2000/svg":v=="math"?i="http://www.w3.org/1998/Math/MathML":i||(i="http://www.w3.org/1999/xhtml"),o!=null){for(s=0;s2&&(a.children=arguments.length>3?ro.call(arguments,2):n),Gi(e.type,a,r||e.key,i||e.ref,null)}function wn(e){function t(n){var r,i;return this.getChildContext||(r=new Set,(i={})[t.__c]=this,this.getChildContext=function(){return i},this.componentWillUnmount=function(){r=null},this.shouldComponentUpdate=function(o){this.props.value!=o.value&&r.forEach(function(l){l.__e=!0,Ma(l)})},this.sub=function(o){r.add(o);var l=o.componentWillUnmount;o.componentWillUnmount=function(){r&&r.delete(o),l&&l.call(o)}}),n.children}return t.__c="__cC"+yf++,t.__=e,t.Provider=t.__l=(t.Consumer=function(n,r){return n.children(r)}).contextType=t,t}ro=_f.slice,Ce={__e:function(e,t,n,r){for(var i,o,l;t=t.__;)if((i=t.__c)&&!i.__)try{if((o=i.constructor)&&o.getDerivedStateFromError!=null&&(i.setState(o.getDerivedStateFromError(e)),l=i.__d),i.componentDidCatch!=null&&(i.componentDidCatch(e,r||{}),l=i.__d),l)return i.__E=i}catch(a){e=a}throw e}},hf=0,Dn.prototype.setState=function(e,t){var n;n=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=er({},this.state),typeof e=="function"&&(e=e(er({},n),this.props)),e&&er(n,e),e!=null&&this.__v&&(t&&this._sb.push(t),Ma(this))},Dn.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),Ma(this))},Dn.prototype.render=ln,Fr=[],df=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,mf=function(e,t){return e.__v.__b-t.__v.__b},Ho.__r=0,gf=/(PointerCapture)$|Capture$/i,Za=0,Ca=Ys(!1),Ta=Ys(!0),yf=0;var Oh=0;function uv(e,t,n,r,i,o){t||(t={});var l,a,u=t;if("ref"in u)for(a in u={},t)a=="ref"?l=t[a]:u[a]=t[a];var s={type:e,props:u,key:n,ref:l,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--Oh,__i:-1,__u:0,__source:i,__self:o};if(typeof e=="function"&&(l=e.defaultProps))for(a in l)u[a]===void 0&&(u[a]=l[a]);return Ce.vnode&&Ce.vnode(s),s}var fr,st,xl,Ks,ui=0,Pf=[],mt=Ce,Zs=mt.__b,Js=mt.__r,Qs=mt.diffed,Xs=mt.__c,eu=mt.unmount,tu=mt.__;function Wr(e,t){mt.__h&&mt.__h(st,e,ui||t),ui=0;var n=st.__H||(st.__H={__:[],__h:[]});return e>=n.__.length&&n.__.push({}),n.__[e]}function pr(e){return ui=1,Zo(Rf,e)}function Zo(e,t,n){var r=Wr(fr++,2);if(r.t=e,!r.__c&&(r.__=[n?n(t):Rf(void 0,t),function(a){var u=r.__N?r.__N[0]:r.__[0],s=r.t(u,a);u!==s&&(r.__N=[s,r.__[1]],r.__c.setState({}))}],r.__c=st,!st.__f)){var i=function(a,u,s){if(!r.__c.__H)return!0;var p=r.__c.__H.__.filter(function(d){return!!d.__c});if(p.every(function(d){return!d.__N}))return!o||o.call(this,a,u,s);var f=r.__c.props!==a;return p.forEach(function(d){if(d.__N){var g=d.__[0];d.__=d.__N,d.__N=void 0,g!==d.__[0]&&(f=!0)}}),o&&o.call(this,a,u,s)||f};st.__f=!0;var o=st.shouldComponentUpdate,l=st.componentWillUpdate;st.componentWillUpdate=function(a,u,s){if(this.__e){var p=o;o=void 0,i(a,u,s),o=p}l&&l.call(this,a,u,s)},st.shouldComponentUpdate=i}return r.__N||r.__}function Hr(e,t){var n=Wr(fr++,3);!mt.__s&&rs(n.__H,t)&&(n.__=e,n.u=t,st.__H.__h.push(n))}function $r(e,t){var n=Wr(fr++,4);!mt.__s&&rs(n.__H,t)&&(n.__=e,n.u=t,st.__h.push(n))}function hr(e){return ui=5,sn(function(){return{current:e}},[])}function es(e,t,n){ui=6,$r(function(){if(typeof e=="function"){var r=e(t());return function(){e(null),r&&typeof r=="function"&&r()}}if(e)return e.current=t(),function(){return e.current=null}},n==null?n:n.concat(e))}function sn(e,t){var n=Wr(fr++,7);return rs(n.__H,t)&&(n.__=e(),n.__H=t,n.__h=e),n.__}function mr(e,t){return ui=8,sn(function(){return e},t)}function qe(e){var t=st.context[e.__c],n=Wr(fr++,9);return n.c=e,t?(n.__==null&&(n.__=!0,t.sub(st)),t.props.value):e.__}function ts(e,t){mt.useDebugValue&&mt.useDebugValue(t?t(e):e)}function Ch(e){var t=Wr(fr++,10),n=pr();return t.__=e,st.componentDidCatch||(st.componentDidCatch=function(r,i){t.__&&t.__(r,i),n[1](r)}),[n[0],function(){n[1](void 0)}]}function ns(){var e=Wr(fr++,11);if(!e.__){for(var t=st.__v;t!==null&&!t.__m&&t.__!==null;)t=t.__;var n=t.__m||(t.__m=[0,0]);e.__="P"+n[0]+"-"+n[1]++}return e.__}function Th(){for(var e;e=Pf.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(To),e.__H.__h.forEach(Da),e.__H.__h=[]}catch(t){e.__H.__h=[],mt.__e(t,e.__v)}}mt.__b=function(e){st=null,Zs&&Zs(e)},mt.__=function(e,t){e&&t.__k&&t.__k.__m&&(e.__m=t.__k.__m),tu&&tu(e,t)},mt.__r=function(e){Js&&Js(e),fr=0;var t=(st=e.__c).__H;t&&(xl===st?(t.__h=[],st.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.u=n.__N=void 0})):(t.__h.forEach(To),t.__h.forEach(Da),t.__h=[],fr=0)),xl=st},mt.diffed=function(e){Qs&&Qs(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(Pf.push(t)!==1&&Ks===mt.requestAnimationFrame||((Ks=mt.requestAnimationFrame)||Mh)(Th)),t.__H.__.forEach(function(n){n.u&&(n.__H=n.u),n.u=void 0})),xl=st=null},mt.__c=function(e,t){t.some(function(n){try{n.__h.forEach(To),n.__h=n.__h.filter(function(r){return!r.__||Da(r)})}catch(r){t.some(function(i){i.__h&&(i.__h=[])}),t=[],mt.__e(r,n.__v)}}),Xs&&Xs(e,t)},mt.unmount=function(e){eu&&eu(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(r){try{To(r)}catch(i){t=i}}),n.__H=void 0,t&&mt.__e(t,n.__v))};var nu=typeof requestAnimationFrame=="function";function Mh(e){var t,n=function(){clearTimeout(r),nu&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(n,100);nu&&(t=requestAnimationFrame(n))}function To(e){var t=st,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),st=t}function Da(e){var t=st;e.__c=e.__(),st=t}function rs(e,t){return!e||e.length!==t.length||t.some(function(n,r){return n!==e[r]})}function Rf(e,t){return typeof t=="function"?t(e):t}function Af(e,t){for(var n in t)e[n]=t[n];return e}function La(e,t){for(var n in e)if(n!=="__source"&&!(n in t))return!0;for(var r in t)if(r!=="__source"&&e[r]!==t[r])return!0;return!1}function is(e,t){var n=t(),r=pr({t:{__:n,u:t}}),i=r[0].t,o=r[1];return $r(function(){i.__=n,i.u=t,kl(i)&&o({t:i})},[e,n,t]),Hr(function(){return kl(i)&&o({t:i}),e(function(){kl(i)&&o({t:i})})},[e]),n}function kl(e){var t,n,r=e.u,i=e.__;try{var o=r();return!((t=i)===(n=o)&&(t!==0||1/t==1/n)||t!=t&&n!=n)}catch{return!0}}function Jo(e){e()}function os(e){return e}function ls(){return[!1,Jo]}var as=$r;function qo(e,t){this.props=e,this.context=t}function ss(e,t){function n(i){var o=this.props.ref,l=o==i.ref;return!l&&o&&(o.call?o(null):o.current=null),t?!t(this.props,i)||!l:La(this.props,i)}function r(i){return this.shouldComponentUpdate=n,Oe(e,i)}return r.displayName="Memo("+(e.displayName||e.name)+")",r.prototype.isReactComponent=!0,r.__f=!0,r}(qo.prototype=new Dn).isPureReactComponent=!0,qo.prototype.shouldComponentUpdate=function(e,t){return La(this.props,e)||La(this.state,t)};var ru=Ce.__b;Ce.__b=function(e){e.type&&e.type.__f&&e.ref&&(e.props.ref=e.ref,e.ref=null),ru&&ru(e)};var Dh=typeof Symbol<"u"&&Symbol.for&&Symbol.for("react.forward_ref")||3911;function oo(e){function t(n){var r=Af({},n);return delete r.ref,e(r,n.ref||null)}return t.$$typeof=Dh,t.render=t,t.prototype.isReactComponent=t.__f=!0,t.displayName="ForwardRef("+(e.displayName||e.name)+")",t}var iu=function(e,t){return e==null?null:ar(ar(e).map(t))},us={map:iu,forEach:iu,count:function(e){return e?ar(e).length:0},only:function(e){var t=ar(e);if(t.length!==1)throw"Children.only";return t[0]},toArray:ar},Lh=Ce.__e;Ce.__e=function(e,t,n,r){if(e.then){for(var i,o=t;o=o.__;)if((i=o.__c)&&i.__c)return t.__e==null&&(t.__e=n.__e,t.__k=n.__k),i.__c(e,t)}Lh(e,t,n,r)};var ou=Ce.unmount;function Of(e,t,n){return e&&(e.__c&&e.__c.__H&&(e.__c.__H.__.forEach(function(r){typeof r.__c=="function"&&r.__c()}),e.__c.__H=null),(e=Af({},e)).__c!=null&&(e.__c.__P===n&&(e.__c.__P=t),e.__c.__e=!0,e.__c=null),e.__k=e.__k&&e.__k.map(function(r){return Of(r,t,n)})),e}function Cf(e,t,n){return e&&n&&(e.__v=null,e.__k=e.__k&&e.__k.map(function(r){return Cf(r,t,n)}),e.__c&&e.__c.__P===t&&(e.__e&&n.appendChild(e.__e),e.__c.__e=!0,e.__c.__P=n)),e}function Yi(){this.__u=0,this.o=null,this.__b=null}function Tf(e){var t=e.__.__c;return t&&t.__a&&t.__a(e)}function Mf(e){var t,n,r;function i(o){if(t||(t=e()).then(function(l){n=l.default||l},function(l){r=l}),r)throw r;if(!n)throw t;return Oe(n,o)}return i.displayName="Lazy",i.__f=!0,i}function li(){this.i=null,this.l=null}Ce.unmount=function(e){var t=e.__c;t&&t.__R&&t.__R(),t&&32&e.__u&&(e.type=null),ou&&ou(e)},(Yi.prototype=new Dn).__c=function(e,t){var n=t.__c,r=this;r.o==null&&(r.o=[]),r.o.push(n);var i=Tf(r.__v),o=!1,l=function(){o||(o=!0,n.__R=null,i?i(a):a())};n.__R=l;var a=function(){if(!--r.__u){if(r.state.__a){var u=r.state.__a;r.__v.__k[0]=Cf(u,u.__c.__P,u.__c.__O)}var s;for(r.setState({__a:r.__b=null});s=r.o.pop();)s.forceUpdate()}};r.__u++||32&t.__u||r.setState({__a:r.__b=r.__v.__k[0]}),e.then(l,l)},Yi.prototype.componentWillUnmount=function(){this.o=[]},Yi.prototype.render=function(e,t){if(this.__b){if(this.__v.__k){var n=document.createElement("div"),r=this.__v.__k[0].__c;this.__v.__k[0]=Of(this.__b,n,r.__O=r.__P)}this.__b=null}var i=t.__a&&Oe(ln,null,e.fallback);return i&&(i.__u&=-33),[Oe(ln,null,t.__a?null:e.children),i]};var lu=function(e,t,n){if(++n[1]===n[0]&&e.l.delete(t),e.props.revealOrder&&(e.props.revealOrder[0]!=="t"||!e.l.size))for(n=e.i;n;){for(;n.length>3;)n.pop()();if(n[1]>>1,1),t.h.removeChild(r)}}),eo(Oe(Ih,{context:t.context},e.__v),t.v)}function Df(e,t){var n=Oe(Nh,{__v:e,h:t});return n.containerInfo=t,n}(li.prototype=new Dn).__a=function(e){var t=this,n=Tf(t.__v),r=t.l.get(e);return r[0]++,function(i){var o=function(){t.props.revealOrder?(r.push(i),lu(t,e,r)):i()};n?n(o):o()}},li.prototype.render=function(e){this.i=null,this.l=new Map;var t=ar(e.children);e.revealOrder&&e.revealOrder[0]==="b"&&t.reverse();for(var n=t.length;n--;)this.l.set(t[n],this.i=[1,0,this.i]);return e.children},li.prototype.componentDidUpdate=li.prototype.componentDidMount=function(){var e=this;this.l.forEach(function(t,n){lu(e,n,t)})};var Lf=typeof Symbol<"u"&&Symbol.for&&Symbol.for("react.element")||60103,Fh=/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image(!S)|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/,zh=/^on(Ani|Tra|Tou|BeforeInp|Compo)/,Bh=/[A-Z0-9]/g,Hh=typeof document<"u",qh=function(e){return(typeof Symbol<"u"&&typeof Symbol()=="symbol"?/fil|che|rad/:/fil|che|ra/).test(e)};function If(e,t,n){return t.__k==null&&(t.textContent=""),eo(e,t),typeof n=="function"&&n(),e?e.__c:null}function Nf(e,t,n){return Ef(e,t),typeof n=="function"&&n(),e?e.__c:null}Dn.prototype.isReactComponent={},["componentWillMount","componentWillReceiveProps","componentWillUpdate"].forEach(function(e){Object.defineProperty(Dn.prototype,e,{configurable:!0,get:function(){return this["UNSAFE_"+e]},set:function(t){Object.defineProperty(this,e,{configurable:!0,writable:!0,value:t})}})});var au=Ce.event;function Uh(){}function Wh(){return this.cancelBubble}function jh(){return this.defaultPrevented}Ce.event=function(e){return au&&(e=au(e)),e.persist=Uh,e.isPropagationStopped=Wh,e.isDefaultPrevented=jh,e.nativeEvent=e};var cs,Vh={enumerable:!1,configurable:!0,get:function(){return this.class}},su=Ce.vnode;Ce.vnode=function(e){typeof e.type=="string"&&function(t){var n=t.props,r=t.type,i={},o=r.indexOf("-")===-1;for(var l in n){var a=n[l];if(!(l==="value"&&"defaultValue"in n&&a==null||Hh&&l==="children"&&r==="noscript"||l==="class"||l==="className")){var u=l.toLowerCase();l==="defaultValue"&&"value"in n&&n.value==null?l="value":l==="download"&&a===!0?a="":u==="translate"&&a==="no"?a=!1:u[0]==="o"&&u[1]==="n"?u==="ondoubleclick"?l="ondblclick":u!=="onchange"||r!=="input"&&r!=="textarea"||qh(n.type)?u==="onfocus"?l="onfocusin":u==="onblur"?l="onfocusout":zh.test(l)&&(l=u):u=l="oninput":o&&Fh.test(l)?l=l.replace(Bh,"-$&").toLowerCase():a===null&&(a=void 0),u==="oninput"&&i[l=u]&&(l="oninputCapture"),i[l]=a}}r=="select"&&i.multiple&&Array.isArray(i.value)&&(i.value=ar(n.children).forEach(function(s){s.props.selected=i.value.indexOf(s.props.value)!=-1})),r=="select"&&i.defaultValue!=null&&(i.value=ar(n.children).forEach(function(s){s.props.selected=i.multiple?i.defaultValue.indexOf(s.props.value)!=-1:i.defaultValue==s.props.value})),n.class&&!n.className?(i.class=n.class,Object.defineProperty(i,"className",Vh)):(n.className&&!n.class||n.class&&n.className)&&(i.class=i.className=n.className),t.props=i}(e),e.$$typeof=Lf,su&&su(e)};var uu=Ce.__r;Ce.__r=function(e){uu&&uu(e),cs=e.__c};var cu=Ce.diffed;Ce.diffed=function(e){cu&&cu(e);var t=e.props,n=e.__e;n!=null&&e.type==="textarea"&&"value"in t&&t.value!==n.value&&(n.value=t.value==null?"":t.value),cs=null};var Ff={ReactCurrentDispatcher:{current:{readContext:function(e){return cs.__n[e.__c].props.value},useCallback:mr,useContext:qe,useDebugValue:ts,useDeferredValue:os,useEffect:Hr,useId:ns,useImperativeHandle:es,useInsertionEffect:as,useLayoutEffect:$r,useMemo:sn,useReducer:Zo,useRef:hr,useState:pr,useSyncExternalStore:is,useTransition:ls}}},Gh="18.3.1";function zf(e){return Oe.bind(null,e)}function di(e){return!!e&&e.$$typeof===Lf}function Bf(e){return di(e)&&e.type===ln}function Hf(e){return!!e&&!!e.displayName&&(typeof e.displayName=="string"||e.displayName instanceof String)&&e.displayName.startsWith("Memo(")}function qf(e){return di(e)?Ah.apply(null,arguments):e}function Uf(e){return!!e.__k&&(eo(null,e),!0)}function Wf(e){return e&&(e.base||e.nodeType===1&&e)||null}var jf=function(e,t){return e(t)},Vf=function(e,t){return e(t)},Gf=ln,Yf=di,Yh={useState:pr,useId:ns,useReducer:Zo,useEffect:Hr,useLayoutEffect:$r,useInsertionEffect:as,useTransition:ls,useDeferredValue:os,useSyncExternalStore:is,startTransition:Jo,useRef:hr,useImperativeHandle:es,useMemo:sn,useCallback:mr,useContext:qe,useDebugValue:ts,version:"18.3.1",Children:us,render:If,hydrate:Nf,unmountComponentAtNode:Uf,createPortal:Df,createElement:Oe,createContext:wn,createFactory:zf,cloneElement:qf,createRef:vf,Fragment:ln,isValidElement:di,isElement:Yf,isFragment:Bf,isMemo:Hf,findDOMNode:Wf,Component:Dn,PureComponent:qo,memo:ss,forwardRef:oo,flushSync:Vf,unstable_batchedUpdates:jf,StrictMode:Gf,Suspense:Yi,SuspenseList:li,lazy:Mf,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:Ff};const Kh=Object.freeze(Object.defineProperty({__proto__:null,Children:us,Component:Dn,Fragment:ln,PureComponent:qo,StrictMode:Gf,Suspense:Yi,SuspenseList:li,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:Ff,cloneElement:qf,createContext:wn,createElement:Oe,createFactory:zf,createPortal:Df,createRef:vf,default:Yh,findDOMNode:Wf,flushSync:Vf,forwardRef:oo,hydrate:Nf,isElement:Yf,isFragment:Bf,isMemo:Hf,isValidElement:di,lazy:Mf,memo:ss,render:If,startTransition:Jo,unmountComponentAtNode:Uf,unstable_batchedUpdates:jf,useCallback:mr,useContext:qe,useDebugValue:ts,useDeferredValue:os,useEffect:Hr,useErrorBoundary:Ch,useId:ns,useImperativeHandle:es,useInsertionEffect:as,useLayoutEffect:$r,useMemo:sn,useReducer:Zo,useRef:hr,useState:pr,useSyncExternalStore:is,useTransition:ls,version:Gh},Symbol.toStringTag,{value:"Module"}));var Bt=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function In(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Kf(e){if(Object.prototype.hasOwnProperty.call(e,"__esModule"))return e;var t=e.default;if(typeof t=="function"){var n=function r(){return this instanceof r?Reflect.construct(t,arguments,this.constructor):t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach(function(r){var i=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(n,r,i.get?i:{enumerable:!0,get:function(){return e[r]}})}),n}var Mo={exports:{}},Zh=Mo.exports,fu;function Jh(){return fu||(fu=1,function(e,t){(function(n,r){e.exports=r()})(Zh,function(){var n=1e3,r=6e4,i=36e5,o="millisecond",l="second",a="minute",u="hour",s="day",p="week",f="month",d="quarter",g="year",y="date",S="Invalid Date",w=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,_=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,v={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(j){var B=["th","st","nd","rd"],V=j%100;return"["+j+(B[(V-20)%10]||B[V]||B[0])+"]"}},A=function(j,B,V){var Y=String(j);return!Y||Y.length>=B?j:""+Array(B+1-Y.length).join(V)+j},R={s:A,z:function(j){var B=-j.utcOffset(),V=Math.abs(B),Y=Math.floor(V/60),Z=V%60;return(B<=0?"+":"-")+A(Y,2,"0")+":"+A(Z,2,"0")},m:function j(B,V){if(B.date()1)return j(N[0])}else{var W=B.name;P[W]=B,Z=W}return!Y&&Z&&(D=Z),Z||!Y&&D},z=function(j,B){if(T(j))return j.clone();var V=typeof B=="object"?B:{};return V.date=j,V.args=arguments,new G(V)},I=R;I.l=U,I.i=T,I.w=function(j,B){return z(j,{locale:B.$L,utc:B.$u,x:B.$x,$offset:B.$offset})};var G=function(){function j(V){this.$L=U(V.locale,null,!0),this.parse(V),this.$x=this.$x||V.x||{},this[C]=!0}var B=j.prototype;return B.parse=function(V){this.$d=function(Y){var Z=Y.date,O=Y.utc;if(Z===null)return new Date(NaN);if(I.u(Z))return new Date;if(Z instanceof Date)return new Date(Z);if(typeof Z=="string"&&!/Z$/i.test(Z)){var N=Z.match(w);if(N){var W=N[2]-1||0,L=(N[7]||"0").substring(0,3);return O?new Date(Date.UTC(N[1],W,N[3]||1,N[4]||0,N[5]||0,N[6]||0,L)):new Date(N[1],W,N[3]||1,N[4]||0,N[5]||0,N[6]||0,L)}}return new Date(Z)}(V),this.init()},B.init=function(){var V=this.$d;this.$y=V.getFullYear(),this.$M=V.getMonth(),this.$D=V.getDate(),this.$W=V.getDay(),this.$H=V.getHours(),this.$m=V.getMinutes(),this.$s=V.getSeconds(),this.$ms=V.getMilliseconds()},B.$utils=function(){return I},B.isValid=function(){return this.$d.toString()!==S},B.isSame=function(V,Y){var Z=z(V);return this.startOf(Y)<=Z&&Z<=this.endOf(Y)},B.isAfter=function(V,Y){return z(V)=0&&(S[R]=parseInt(A,10))}var D=S[3],P=D===24?0:D,C=S[0]+"-"+S[1]+"-"+S[2]+" "+P+":"+S[4]+":"+S[5]+":000",T=+d;return(l.utc(C).valueOf()-(T-=T%1e3))/6e4},p=o.prototype;p.tz=function(d,g){d===void 0&&(d=a);var y,S=this.utcOffset(),w=this.toDate(),_=w.toLocaleString("en-US",{timeZone:d}),v=Math.round((w-new Date(_))/1e3/60),A=15*-Math.round(w.getTimezoneOffset()/15)-v;if(!Number(A))y=this.utcOffset(0,g);else if(y=l(_,{locale:this.$L}).$set("millisecond",this.$ms).utcOffset(A,!0),g){var R=y.utcOffset();y=y.add(S-R,"minute")}return y.$x.$timezone=d,y},p.offsetName=function(d){var g=this.$x.$timezone||l.tz.guess(),y=u(this.valueOf(),g,{timeZoneName:d}).find(function(S){return S.type.toLowerCase()==="timezonename"});return y&&y.value};var f=p.startOf;p.startOf=function(d,g){if(!this.$x||!this.$x.$timezone)return f.call(this,d,g);var y=l(this.format("YYYY-MM-DD HH:mm:ss:SSS"),{locale:this.$L});return f.call(y,d,g).tz(this.$x.$timezone,!0)},l.tz=function(d,g,y){var S=y&&g,w=y||g||a,_=s(+l(),w);if(typeof d!="string")return l(d).tz(w);var v=function(P,C,T){var U=P-60*C*1e3,z=s(U,T);if(C===z)return[U,C];var I=s(U-=60*(z-C)*1e3,T);return z===I?[U,z]:[P-60*Math.min(z,I)*1e3,Math.max(z,I)]}(l.utc(d,S).valueOf(),_,w),A=v[0],R=v[1],D=l(A).utcOffset(R);return D.$x.$timezone=w,D},l.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},l.tz.setDefault=function(d){a=d}}})}(Do)),Do.exports}var td=ed();const fv=In(td);var Lo={exports:{}},nd=Lo.exports,hu;function rd(){return hu||(hu=1,function(e,t){(function(n,r){e.exports=r()})(nd,function(){var n,r,i=1e3,o=6e4,l=36e5,a=864e5,u=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,s=31536e6,p=2628e6,f=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/,d={years:s,months:p,days:a,hours:l,minutes:o,seconds:i,milliseconds:1,weeks:6048e5},g=function(P){return P instanceof R},y=function(P,C,T){return new R(P,T,C.$l)},S=function(P){return r.p(P)+"s"},w=function(P){return P<0},_=function(P){return w(P)?Math.ceil(P):Math.floor(P)},v=function(P){return Math.abs(P)},A=function(P,C){return P?w(P)?{negative:!0,format:""+v(P)+C}:{negative:!1,format:""+P+C}:{negative:!1,format:""}},R=function(){function P(T,U,z){var I=this;if(this.$d={},this.$l=z,T===void 0&&(this.$ms=0,this.parseFromMilliseconds()),U)return y(T*d[S(U)],this);if(typeof T=="number")return this.$ms=T,this.parseFromMilliseconds(),this;if(typeof T=="object")return Object.keys(T).forEach(function(j){I.$d[S(j)]=T[j]}),this.calMilliseconds(),this;if(typeof T=="string"){var G=T.match(f);if(G){var J=G.slice(2).map(function(j){return j!=null?Number(j):0});return this.$d.years=J[0],this.$d.months=J[1],this.$d.weeks=J[2],this.$d.days=J[3],this.$d.hours=J[4],this.$d.minutes=J[5],this.$d.seconds=J[6],this.calMilliseconds(),this}}return this}var C=P.prototype;return C.calMilliseconds=function(){var T=this;this.$ms=Object.keys(this.$d).reduce(function(U,z){return U+(T.$d[z]||0)*d[z]},0)},C.parseFromMilliseconds=function(){var T=this.$ms;this.$d.years=_(T/s),T%=s,this.$d.months=_(T/p),T%=p,this.$d.days=_(T/a),T%=a,this.$d.hours=_(T/l),T%=l,this.$d.minutes=_(T/o),T%=o,this.$d.seconds=_(T/i),T%=i,this.$d.milliseconds=T},C.toISOString=function(){var T=A(this.$d.years,"Y"),U=A(this.$d.months,"M"),z=+this.$d.days||0;this.$d.weeks&&(z+=7*this.$d.weeks);var I=A(z,"D"),G=A(this.$d.hours,"H"),J=A(this.$d.minutes,"M"),j=this.$d.seconds||0;this.$d.milliseconds&&(j+=this.$d.milliseconds/1e3,j=Math.round(1e3*j)/1e3);var B=A(j,"S"),V=T.negative||U.negative||I.negative||G.negative||J.negative||B.negative,Y=G.format||J.format||B.format?"T":"",Z=(V?"-":"")+"P"+T.format+U.format+I.format+Y+G.format+J.format+B.format;return Z==="P"||Z==="-P"?"P0D":Z},C.toJSON=function(){return this.toISOString()},C.format=function(T){var U=T||"YYYY-MM-DDTHH:mm:ss",z={Y:this.$d.years,YY:r.s(this.$d.years,2,"0"),YYYY:r.s(this.$d.years,4,"0"),M:this.$d.months,MM:r.s(this.$d.months,2,"0"),D:this.$d.days,DD:r.s(this.$d.days,2,"0"),H:this.$d.hours,HH:r.s(this.$d.hours,2,"0"),m:this.$d.minutes,mm:r.s(this.$d.minutes,2,"0"),s:this.$d.seconds,ss:r.s(this.$d.seconds,2,"0"),SSS:r.s(this.$d.milliseconds,3,"0")};return U.replace(u,function(I,G){return G||String(z[I])})},C.as=function(T){return this.$ms/d[S(T)]},C.get=function(T){var U=this.$ms,z=S(T);return z==="milliseconds"?U%=1e3:U=z==="weeks"?_(U/d[z]):this.$d[z],U||0},C.add=function(T,U,z){var I;return I=U?T*d[S(U)]:g(T)?T.$ms:y(T,this).$ms,y(this.$ms+I*(z?-1:1),this)},C.subtract=function(T,U){return this.add(T,U,!0)},C.locale=function(T){var U=this.clone();return U.$l=T,U},C.clone=function(){return y(this.$ms,this)},C.humanize=function(T){return n().add(this.$ms,"ms").locale(this.$l).fromNow(!T)},C.valueOf=function(){return this.asMilliseconds()},C.milliseconds=function(){return this.get("milliseconds")},C.asMilliseconds=function(){return this.as("milliseconds")},C.seconds=function(){return this.get("seconds")},C.asSeconds=function(){return this.as("seconds")},C.minutes=function(){return this.get("minutes")},C.asMinutes=function(){return this.as("minutes")},C.hours=function(){return this.get("hours")},C.asHours=function(){return this.as("hours")},C.days=function(){return this.get("days")},C.asDays=function(){return this.as("days")},C.weeks=function(){return this.get("weeks")},C.asWeeks=function(){return this.as("weeks")},C.months=function(){return this.get("months")},C.asMonths=function(){return this.as("months")},C.years=function(){return this.get("years")},C.asYears=function(){return this.as("years")},P}(),D=function(P,C,T){return P.add(C.years()*T,"y").add(C.months()*T,"M").add(C.days()*T,"d").add(C.hours()*T,"h").add(C.minutes()*T,"m").add(C.seconds()*T,"s").add(C.milliseconds()*T,"ms")};return function(P,C,T){n=T,r=T().$utils(),T.duration=function(I,G){var J=T.locale();return y(I,{$l:J},G)},T.isDuration=g;var U=C.prototype.add,z=C.prototype.subtract;C.prototype.add=function(I,G){return g(I)?D(this,I,1):U.bind(this)(I,G)},C.prototype.subtract=function(I,G){return g(I)?D(this,I,-1):z.bind(this)(I,G)}}})}(Lo)),Lo.exports}var id=rd();const pv=In(id);var Io={exports:{}},od=Io.exports,du;function ld(){return du||(du=1,function(e,t){(function(n,r){e.exports=r()})(od,function(){return function(n,r,i){n=n||{};var o=r.prototype,l={future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function a(s,p,f,d){return o.fromToBase(s,p,f,d)}i.en.relativeTime=l,o.fromToBase=function(s,p,f,d,g){for(var y,S,w,_=f.$locale().relativeTime||l,v=n.thresholds||[{l:"s",r:44,d:"second"},{l:"m",r:89},{l:"mm",r:44,d:"minute"},{l:"h",r:89},{l:"hh",r:21,d:"hour"},{l:"d",r:35},{l:"dd",r:25,d:"day"},{l:"M",r:45},{l:"MM",r:10,d:"month"},{l:"y",r:17},{l:"yy",d:"year"}],A=v.length,R=0;R0,P<=D.r||!D.r){P<=1&&R>0&&(D=v[R-1]);var C=_[D.l];g&&(P=g(""+P)),S=typeof C=="string"?C.replace("%d",P):C(P,p,D.l,w);break}}if(p)return S;var T=w?_.future:_.past;return typeof T=="function"?T(S):T.replace("%s",S)},o.to=function(s,p){return a(s,p,this,!0)},o.from=function(s,p){return a(s,p,this)};var u=function(s){return s.$u?i.utc():i()};o.toNow=function(s){return this.to(u(this),s)},o.fromNow=function(s){return this.from(u(this),s)}}})}(Io)),Io.exports}var ad=ld();const hv=In(ad);var No={exports:{}},sd=No.exports,mu;function ud(){return mu||(mu=1,function(e,t){(function(n,r){e.exports=r()})(sd,function(){var n="minute",r=/[+-]\d\d(?::?\d\d)?/g,i=/([+-]|\d\d)/g;return function(o,l,a){var u=l.prototype;a.utc=function(S){var w={date:S,utc:!0,args:arguments};return new l(w)},u.utc=function(S){var w=a(this.toDate(),{locale:this.$L,utc:!0});return S?w.add(this.utcOffset(),n):w},u.local=function(){return a(this.toDate(),{locale:this.$L,utc:!1})};var s=u.parse;u.parse=function(S){S.utc&&(this.$u=!0),this.$utils().u(S.$offset)||(this.$offset=S.$offset),s.call(this,S)};var p=u.init;u.init=function(){if(this.$u){var S=this.$d;this.$y=S.getUTCFullYear(),this.$M=S.getUTCMonth(),this.$D=S.getUTCDate(),this.$W=S.getUTCDay(),this.$H=S.getUTCHours(),this.$m=S.getUTCMinutes(),this.$s=S.getUTCSeconds(),this.$ms=S.getUTCMilliseconds()}else p.call(this)};var f=u.utcOffset;u.utcOffset=function(S,w){var _=this.$utils().u;if(_(S))return this.$u?0:_(this.$offset)?f.call(this):this.$offset;if(typeof S=="string"&&(S=function(D){D===void 0&&(D="");var P=D.match(r);if(!P)return null;var C=(""+P[0]).match(i)||["-",0,0],T=C[0],U=60*+C[1]+ +C[2];return U===0?0:T==="+"?U:-U}(S),S===null))return this;var v=Math.abs(S)<=16?60*S:S,A=this;if(w)return A.$offset=v,A.$u=S===0,A;if(S!==0){var R=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(A=this.local().add(v+R,n)).$offset=v,A.$x.$localOffset=R}else A=this.utc();return A};var d=u.format;u.format=function(S){var w=S||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return d.call(this,w)},u.valueOf=function(){var S=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*S},u.isUTC=function(){return!!this.$u},u.toISOString=function(){return this.toDate().toISOString()},u.toString=function(){return this.toDate().toUTCString()};var g=u.toDate;u.toDate=function(S){return S==="s"&&this.$offset?a(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():g.call(this)};var y=u.diff;u.diff=function(S,w,_){if(S&&this.$u===S.$u)return y.call(this,S,w,_);var v=this.local(),A=a(S).local();return y.call(v,A,w,_)}}})}(No)),No.exports}var cd=ud();const dv=In(cd);var Ni={},gu;function fd(){if(gu)return Ni;gu=1,Object.defineProperty(Ni,"__esModule",{value:!0}),Ni.parse=l,Ni.serialize=s;const e=/^[\u0021-\u003A\u003C\u003E-\u007E]+$/,t=/^[\u0021-\u003A\u003C-\u007E]*$/,n=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,r=/^[\u0020-\u003A\u003D-\u007E]*$/,i=Object.prototype.toString,o=(()=>{const d=function(){};return d.prototype=Object.create(null),d})();function l(d,g){const y=new o,S=d.length;if(S<2)return y;const w=(g==null?void 0:g.decode)||p;let _=0;do{const v=d.indexOf("=",_);if(v===-1)break;const A=d.indexOf(";",_),R=A===-1?S:A;if(v>R){_=d.lastIndexOf(";",v-1)+1;continue}const D=a(d,_,v),P=u(d,v,D),C=d.slice(D,P);if(y[C]===void 0){let T=a(d,v+1,R),U=u(d,R,T);const z=w(d.slice(T,U));y[C]=z}_=R+1}while(_y;){const S=d.charCodeAt(--g);if(S!==32&&S!==9)return g+1}return y}function s(d,g,y){const S=(y==null?void 0:y.encode)||encodeURIComponent;if(!e.test(d))throw new TypeError(`argument name is invalid: ${d}`);const w=S(g);if(!t.test(w))throw new TypeError(`argument val is invalid: ${g}`);let _=d+"="+w;if(!y)return _;if(y.maxAge!==void 0){if(!Number.isInteger(y.maxAge))throw new TypeError(`option maxAge is invalid: ${y.maxAge}`);_+="; Max-Age="+y.maxAge}if(y.domain){if(!n.test(y.domain))throw new TypeError(`option domain is invalid: ${y.domain}`);_+="; Domain="+y.domain}if(y.path){if(!r.test(y.path))throw new TypeError(`option path is invalid: ${y.path}`);_+="; Path="+y.path}if(y.expires){if(!f(y.expires)||!Number.isFinite(y.expires.valueOf()))throw new TypeError(`option expires is invalid: ${y.expires}`);_+="; Expires="+y.expires.toUTCString()}if(y.httpOnly&&(_+="; HttpOnly"),y.secure&&(_+="; Secure"),y.partitioned&&(_+="; Partitioned"),y.priority)switch(typeof y.priority=="string"?y.priority.toLowerCase():void 0){case"low":_+="; Priority=Low";break;case"medium":_+="; Priority=Medium";break;case"high":_+="; Priority=High";break;default:throw new TypeError(`option priority is invalid: ${y.priority}`)}if(y.sameSite)switch(typeof y.sameSite=="string"?y.sameSite.toLowerCase():y.sameSite){case!0:case"strict":_+="; SameSite=Strict";break;case"lax":_+="; SameSite=Lax";break;case"none":_+="; SameSite=None";break;default:throw new TypeError(`option sameSite is invalid: ${y.sameSite}`)}return _}function p(d){if(d.indexOf("%")===-1)return d;try{return decodeURIComponent(d)}catch{return d}}function f(d){return i.call(d)==="[object Date]"}return Ni}fd();var yu="popstate";function pd(e={}){function t(i,o){let{pathname:l="/",search:a="",hash:u=""}=jr(i.location.hash.substring(1));return!l.startsWith("/")&&!l.startsWith(".")&&(l="/"+l),Ia("",{pathname:l,search:a,hash:u},o.state&&o.state.usr||null,o.state&&o.state.key||"default")}function n(i,o){let l=i.document.querySelector("base"),a="";if(l&&l.getAttribute("href")){let u=i.location.href,s=u.indexOf("#");a=s===-1?u:u.slice(0,s)}return a+"#"+(typeof o=="string"?o:to(o))}function r(i,o){Ln(i.pathname.charAt(0)==="/",`relative pathnames are not supported in hash history.push(${JSON.stringify(o)})`)}return dd(t,n,r,e)}function gt(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function Ln(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function hd(){return Math.random().toString(36).substring(2,10)}function _u(e,t){return{usr:e.state,key:e.key,idx:t}}function Ia(e,t,n=null,r){return{pathname:typeof e=="string"?e:e.pathname,search:"",hash:"",...typeof t=="string"?jr(t):t,state:n,key:t&&t.key||r||hd()}}function to({pathname:e="/",search:t="",hash:n=""}){return t&&t!=="?"&&(e+=t.charAt(0)==="?"?t:"?"+t),n&&n!=="#"&&(e+=n.charAt(0)==="#"?n:"#"+n),e}function jr(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substring(n),e=e.substring(0,n));let r=e.indexOf("?");r>=0&&(t.search=e.substring(r),e=e.substring(0,r)),e&&(t.pathname=e)}return t}function dd(e,t,n,r={}){let{window:i=document.defaultView,v5Compat:o=!1}=r,l=i.history,a="POP",u=null,s=p();s==null&&(s=0,l.replaceState({...l.state,idx:s},""));function p(){return(l.state||{idx:null}).idx}function f(){a="POP";let w=p(),_=w==null?null:w-s;s=w,u&&u({action:a,location:S.location,delta:_})}function d(w,_){a="PUSH";let v=Ia(S.location,w,_);n&&n(v,w),s=p()+1;let A=_u(v,s),R=S.createHref(v);try{l.pushState(A,"",R)}catch(D){if(D instanceof DOMException&&D.name==="DataCloneError")throw D;i.location.assign(R)}o&&u&&u({action:a,location:S.location,delta:1})}function g(w,_){a="REPLACE";let v=Ia(S.location,w,_);n&&n(v,w),s=p();let A=_u(v,s),R=S.createHref(v);l.replaceState(A,"",R),o&&u&&u({action:a,location:S.location,delta:0})}function y(w){return md(w)}let S={get action(){return a},get location(){return e(i,l)},listen(w){if(u)throw new Error("A history only accepts one active listener");return i.addEventListener(yu,f),u=w,()=>{i.removeEventListener(yu,f),u=null}},createHref(w){return t(i,w)},createURL:y,encodeLocation(w){let _=y(w);return{pathname:_.pathname,search:_.search,hash:_.hash}},push:d,replace:g,go(w){return l.go(w)}};return S}function md(e,t=!1){let n="http://localhost";typeof window<"u"&&(n=window.location.origin!=="null"?window.location.origin:window.location.href),gt(n,"No window.location.(origin|href) available to create URL");let r=typeof e=="string"?e:to(e);return r=r.replace(/ $/,"%20"),!t&&r.startsWith("//")&&(r=n+r),new URL(r,n)}function Zf(e,t,n="/"){return gd(e,t,n,!1)}function gd(e,t,n,r){let i=typeof t=="string"?jr(t):t,o=dr(i.pathname||"/",n);if(o==null)return null;let l=Jf(e);yd(l);let a=null;for(let u=0;a==null&&u{let u={relativePath:a===void 0?o.path||"":a,caseSensitive:o.caseSensitive===!0,childrenIndex:l,route:o};u.relativePath.startsWith("/")&&(gt(u.relativePath.startsWith(r),`Absolute route path "${u.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),u.relativePath=u.relativePath.slice(r.length));let s=sr([r,u.relativePath]),p=n.concat(u);o.children&&o.children.length>0&&(gt(o.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${s}".`),Jf(o.children,t,p,s)),!(o.path==null&&!o.index)&&t.push({path:s,score:kd(s,o.index),routesMeta:p})};return e.forEach((o,l)=>{var a;if(o.path===""||!((a=o.path)!=null&&a.includes("?")))i(o,l);else for(let u of Qf(o.path))i(o,l,u)}),t}function Qf(e){let t=e.split("/");if(t.length===0)return[];let[n,...r]=t,i=n.endsWith("?"),o=n.replace(/\?$/,"");if(r.length===0)return i?[o,""]:[o];let l=Qf(r.join("/")),a=[];return a.push(...l.map(u=>u===""?o:[o,u].join("/"))),i&&a.push(...l),a.map(u=>e.startsWith("/")&&u===""?"/":u)}function yd(e){e.sort((t,n)=>t.score!==n.score?n.score-t.score:$d(t.routesMeta.map(r=>r.childrenIndex),n.routesMeta.map(r=>r.childrenIndex)))}var _d=/^:[\w-]+$/,vd=3,wd=2,bd=1,Sd=10,xd=-2,vu=e=>e==="*";function kd(e,t){let n=e.split("/"),r=n.length;return n.some(vu)&&(r+=xd),t&&(r+=wd),n.filter(i=>!vu(i)).reduce((i,o)=>i+(_d.test(o)?vd:o===""?bd:Sd),r)}function $d(e,t){return e.length===t.length&&e.slice(0,-1).every((r,i)=>r===t[i])?e[e.length-1]-t[t.length-1]:0}function Ed(e,t,n=!1){let{routesMeta:r}=e,i={},o="/",l=[];for(let a=0;a{if(p==="*"){let y=a[d]||"";l=o.slice(0,o.length-y.length).replace(/(.)\/+$/,"$1")}const g=a[d];return f&&!g?s[p]=void 0:s[p]=(g||"").replace(/%2F/g,"/"),s},{}),pathname:o,pathnameBase:l,pattern:e}}function Pd(e,t=!1,n=!0){Ln(e==="*"||!e.endsWith("*")||e.endsWith("/*"),`Route path "${e}" will be treated as if it were "${e.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/,"/*")}".`);let r=[],i="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(l,a,u)=>(r.push({paramName:a,isOptional:u!=null}),u?"/?([^\\/]+)?":"/([^\\/]+)"));return e.endsWith("*")?(r.push({paramName:"*"}),i+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?i+="\\/*$":e!==""&&e!=="/"&&(i+="(?:(?=\\/|$))"),[new RegExp(i,t?void 0:"i"),r]}function Rd(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return Ln(!1,`The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${t}).`),e}}function dr(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith("/")?t.length-1:t.length,r=e.charAt(n);return r&&r!=="/"?null:e.slice(n)||"/"}function Ad(e,t="/"){let{pathname:n,search:r="",hash:i=""}=typeof e=="string"?jr(e):e;return{pathname:n?n.startsWith("/")?n:Od(n,t):t,search:Md(r),hash:Dd(i)}}function Od(e,t){let n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(i=>{i===".."?n.length>1&&n.pop():i!=="."&&n.push(i)}),n.length>1?n.join("/"):"/"}function $l(e,t,n,r){return`Cannot include a '${e}' character in a manually specified \`to.${t}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${n}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function Cd(e){return e.filter((t,n)=>n===0||t.route.path&&t.route.path.length>0)}function Xf(e){let t=Cd(e);return t.map((n,r)=>r===t.length-1?n.pathname:n.pathnameBase)}function ep(e,t,n,r=!1){let i;typeof e=="string"?i=jr(e):(i={...e},gt(!i.pathname||!i.pathname.includes("?"),$l("?","pathname","search",i)),gt(!i.pathname||!i.pathname.includes("#"),$l("#","pathname","hash",i)),gt(!i.search||!i.search.includes("#"),$l("#","search","hash",i)));let o=e===""||i.pathname==="",l=o?"/":i.pathname,a;if(l==null)a=n;else{let f=t.length-1;if(!r&&l.startsWith("..")){let d=l.split("/");for(;d[0]==="..";)d.shift(),f-=1;i.pathname=d.join("/")}a=f>=0?t[f]:"/"}let u=Ad(i,a),s=l&&l!=="/"&&l.endsWith("/"),p=(o||l===".")&&n.endsWith("/");return!u.pathname.endsWith("/")&&(s||p)&&(u.pathname+="/"),u}var sr=e=>e.join("/").replace(/\/\/+/g,"/"),Td=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),Md=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,Dd=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function Ld(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}var tp=["POST","PUT","PATCH","DELETE"];new Set(tp);var Id=["GET",...tp];new Set(Id);var mi=wn(null);mi.displayName="DataRouter";var Qo=wn(null);Qo.displayName="DataRouterState";var np=wn({isTransitioning:!1});np.displayName="ViewTransition";var Nd=wn(new Map);Nd.displayName="Fetchers";var Fd=wn(null);Fd.displayName="Await";var tr=wn(null);tr.displayName="Navigation";var lo=wn(null);lo.displayName="Location";var nr=wn({outlet:null,matches:[],isDataRoute:!1});nr.displayName="Route";var fs=wn(null);fs.displayName="RouteError";function zd(e,{relative:t}={}){gt(ao(),"useHref() may be used only in the context of a component.");let{basename:n,navigator:r}=qe(tr),{hash:i,pathname:o,search:l}=so(e,{relative:t}),a=o;return n!=="/"&&(a=o==="/"?n:sr([n,o])),r.createHref({pathname:a,search:l,hash:i})}function ao(){return qe(lo)!=null}function Er(){return gt(ao(),"useLocation() may be used only in the context of a component."),qe(lo).location}var rp="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function ip(e){qe(tr).static||$r(e)}function op(){let{isDataRoute:e}=qe(nr);return e?em():Bd()}function Bd(){gt(ao(),"useNavigate() may be used only in the context of a component.");let e=qe(mi),{basename:t,navigator:n}=qe(tr),{matches:r}=qe(nr),{pathname:i}=Er(),o=JSON.stringify(Xf(r)),l=hr(!1);return ip(()=>{l.current=!0}),mr((u,s={})=>{if(Ln(l.current,rp),!l.current)return;if(typeof u=="number"){n.go(u);return}let p=ep(u,JSON.parse(o),i,s.relative==="path");e==null&&t!=="/"&&(p.pathname=p.pathname==="/"?t:sr([t,p.pathname])),(s.replace?n.replace:n.push)(p,s.state,s)},[t,n,o,i,e])}var Hd=wn(null);function qd(e){let t=qe(nr).outlet;return t&&Oe(Hd.Provider,{value:e},t)}function so(e,{relative:t}={}){let{matches:n}=qe(nr),{pathname:r}=Er(),i=JSON.stringify(Xf(n));return sn(()=>ep(e,JSON.parse(i),r,t==="path"),[e,i,r,t])}function Ud(e,t){return lp(e,t)}function lp(e,t,n,r){var v;gt(ao(),"useRoutes() may be used only in the context of a component.");let{navigator:i,static:o}=qe(tr),{matches:l}=qe(nr),a=l[l.length-1],u=a?a.params:{},s=a?a.pathname:"/",p=a?a.pathnameBase:"/",f=a&&a.route;{let A=f&&f.path||"";ap(s,!f||A.endsWith("*")||A.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${s}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
-
-Please change the parent to .`)}let d=Er(),g;if(t){let A=typeof t=="string"?jr(t):t;gt(p==="/"||((v=A.pathname)==null?void 0:v.startsWith(p)),`When overriding the location using \`\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${p}" but pathname "${A.pathname}" was given in the \`location\` prop.`),g=A}else g=d;let y=g.pathname||"/",S=y;if(p!=="/"){let A=p.replace(/^\//,"").split("/");S="/"+y.replace(/^\//,"").split("/").slice(A.length).join("/")}let w=!o&&n&&n.matches&&n.matches.length>0?n.matches:Zf(e,{pathname:S});Ln(f||w!=null,`No routes matched location "${g.pathname}${g.search}${g.hash}" `),Ln(w==null||w[w.length-1].route.element!==void 0||w[w.length-1].route.Component!==void 0||w[w.length-1].route.lazy!==void 0,`Matched leaf route at location "${g.pathname}${g.search}${g.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`);let _=Yd(w&&w.map(A=>Object.assign({},A,{params:Object.assign({},u,A.params),pathname:sr([p,i.encodeLocation?i.encodeLocation(A.pathname).pathname:A.pathname]),pathnameBase:A.pathnameBase==="/"?p:sr([p,i.encodeLocation?i.encodeLocation(A.pathnameBase).pathname:A.pathnameBase])})),l,n,r);return t&&_?Oe(lo.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...g},navigationType:"POP"}},_):_}function Wd(){let e=Xd(),t=Ld(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,r="rgba(200,200,200, 0.5)",i={padding:"0.5rem",backgroundColor:r},o={padding:"2px 4px",backgroundColor:r},l=null;return console.error("Error handled by React Router default ErrorBoundary:",e),l=Oe(ln,null,Oe("p",null,"💿 Hey developer 👋"),Oe("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",Oe("code",{style:o},"ErrorBoundary")," or"," ",Oe("code",{style:o},"errorElement")," prop on your route.")),Oe(ln,null,Oe("h2",null,"Unexpected Application Error!"),Oe("h3",{style:{fontStyle:"italic"}},t),n?Oe("pre",{style:i},n):null,l)}var jd=Oe(Wd,null),Vd=class extends Dn{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||t.revalidation!=="idle"&&e.revalidation==="idle"?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error!==void 0?e.error:t.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){console.error("React Router caught the following error during render",e,t)}render(){return this.state.error!==void 0?Oe(nr.Provider,{value:this.props.routeContext},Oe(fs.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function Gd({routeContext:e,match:t,children:n}){let r=qe(mi);return r&&r.static&&r.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=t.route.id),Oe(nr.Provider,{value:e},n)}function Yd(e,t=[],n=null,r=null){if(e==null){if(!n)return null;if(n.errors)e=n.matches;else if(t.length===0&&!n.initialized&&n.matches.length>0)e=n.matches;else return null}let i=e,o=n==null?void 0:n.errors;if(o!=null){let u=i.findIndex(s=>s.route.id&&(o==null?void 0:o[s.route.id])!==void 0);gt(u>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(o).join(",")}`),i=i.slice(0,Math.min(i.length,u+1))}let l=!1,a=-1;if(n)for(let u=0;u=0?i=i.slice(0,a+1):i=[i[0]];break}}}return i.reduceRight((u,s,p)=>{let f,d=!1,g=null,y=null;n&&(f=o&&s.route.id?o[s.route.id]:void 0,g=s.route.errorElement||jd,l&&(a<0&&p===0?(ap("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),d=!0,y=null):a===p&&(d=!0,y=s.route.hydrateFallbackElement||null)));let S=t.concat(i.slice(0,p+1)),w=()=>{let _;return f?_=g:d?_=y:s.route.Component?_=Oe(s.route.Component,null):s.route.element?_=s.route.element:_=u,Oe(Gd,{match:s,routeContext:{outlet:u,matches:S,isDataRoute:n!=null},children:_})};return n&&(s.route.ErrorBoundary||s.route.errorElement||p===0)?Oe(Vd,{location:n.location,revalidation:n.revalidation,component:g,error:f,children:w(),routeContext:{outlet:null,matches:S,isDataRoute:!0}}):w()},null)}function ps(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Kd(e){let t=qe(mi);return gt(t,ps(e)),t}function Zd(e){let t=qe(Qo);return gt(t,ps(e)),t}function Jd(e){let t=qe(nr);return gt(t,ps(e)),t}function hs(e){let t=Jd(e),n=t.matches[t.matches.length-1];return gt(n.route.id,`${e} can only be used on routes that contain a unique "id"`),n.route.id}function Qd(){return hs("useRouteId")}function Xd(){var r;let e=qe(fs),t=Zd("useRouteError"),n=hs("useRouteError");return e!==void 0?e:(r=t.errors)==null?void 0:r[n]}function em(){let{router:e}=Kd("useNavigate"),t=hs("useNavigate"),n=hr(!1);return ip(()=>{n.current=!0}),mr(async(i,o={})=>{Ln(n.current,rp),n.current&&(typeof i=="number"?e.navigate(i):await e.navigate(i,{fromRouteId:t,...o}))},[e,t])}var wu={};function ap(e,t,n){!t&&!wu[e]&&(wu[e]=!0,Ln(!1,n))}ss(tm);function tm({routes:e,future:t,state:n}){return lp(e,void 0,n,t)}function mv(e){return qd(e.context)}function nm(e){gt(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function rm({basename:e="/",children:t=null,location:n,navigationType:r="POP",navigator:i,static:o=!1}){gt(!ao(),"You cannot render a inside another . You should never have more than one in your app.");let l=e.replace(/^\/*/,"/"),a=sn(()=>({basename:l,navigator:i,static:o,future:{}}),[l,i,o]);typeof n=="string"&&(n=jr(n));let{pathname:u="/",search:s="",hash:p="",state:f=null,key:d="default"}=n,g=sn(()=>{let y=dr(u,l);return y==null?null:{location:{pathname:y,search:s,hash:p,state:f,key:d},navigationType:r}},[l,u,s,p,f,d,r]);return Ln(g!=null,` is not able to match the URL "${u}${s}${p}" because it does not start with the basename, so the won't render anything.`),g==null?null:Oe(tr.Provider,{value:a},Oe(lo.Provider,{children:t,value:g}))}function gv({children:e,location:t}){return Ud(Na(e),t)}function Na(e,t=[]){let n=[];return us.forEach(e,(r,i)=>{if(!di(r))return;let o=[...t,i];if(r.type===ln){n.push.apply(n,Na(r.props.children,o));return}gt(r.type===nm,`[${typeof r.type=="string"?r.type:r.type.name}] is not a component. All component children of must be a or `),gt(!r.props.index||!r.props.children,"An index route cannot have child routes.");let l={id:r.props.id||o.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,loader:r.props.loader,action:r.props.action,hydrateFallbackElement:r.props.hydrateFallbackElement,HydrateFallback:r.props.HydrateFallback,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.hasErrorBoundary===!0||r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(l.children=Na(r.props.children,o)),n.push(l)}),n}var Fo="get",zo="application/x-www-form-urlencoded";function Xo(e){return e!=null&&typeof e.tagName=="string"}function im(e){return Xo(e)&&e.tagName.toLowerCase()==="button"}function om(e){return Xo(e)&&e.tagName.toLowerCase()==="form"}function lm(e){return Xo(e)&&e.tagName.toLowerCase()==="input"}function am(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function sm(e,t){return e.button===0&&(!t||t==="_self")&&!am(e)}function Fa(e=""){return new URLSearchParams(typeof e=="string"||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,n)=>{let r=e[n];return t.concat(Array.isArray(r)?r.map(i=>[n,i]):[[n,r]])},[]))}function um(e,t){let n=Fa(e);return t&&t.forEach((r,i)=>{n.has(i)||t.getAll(i).forEach(o=>{n.append(i,o)})}),n}var Po=null;function cm(){if(Po===null)try{new FormData(document.createElement("form"),0),Po=!1}catch{Po=!0}return Po}var fm=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function El(e){return e!=null&&!fm.has(e)?(Ln(!1,`"${e}" is not a valid \`encType\` for \`