/usr/share/grafana/public/app/plugins/datasource/grafana-pyroscope-datasource/dist
/*! For license information please see module.js.LICENSE.txt */ /* [create-plugin] version: 5.22.0 */ define(["module","@grafana/data","react","@emotion/css","@grafana/ui","@grafana/runtime","lodash","prismjs","rxjs"],((e,t,n,r,a,o,i,s,l)=>(()=>{var c={7:e=>{"use strict";e.exports=a},44:(e,t,n)=>{"use strict";var r=n(959),a=Symbol.for("react.element"),o=Symbol.for("react.fragment"),i=Object.prototype.hasOwnProperty,s=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,l={key:!0,ref:!0,__self:!0,__source:!0};function c(e,t,n){var r,o={},c=null,u=null;for(r in void 0!==n&&(c=""+n),void 0!==t.key&&(c=""+t.key),void 0!==t.ref&&(u=t.ref),t)i.call(t,r)&&!l.hasOwnProperty(r)&&(o[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps)void 0===o[r]&&(o[r]=t[r]);return{$$typeof:a,type:e,key:c,ref:u,props:o,_owner:s.current}}t.Fragment=o,t.jsx=c,t.jsxs=c},89:e=>{"use strict";e.exports=r},127:(e,t,n)=>{(()=>{"use strict";var t={n:e=>{var n=e&&e.__esModule?()=>e.default:()=>e;return t.d(n,{a:n}),n},d:(e,n)=>{for(var r in n)t.o(n,r)&&!t.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:n[r]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},r={};function a(e){let t=5381;for(let n=0;n<e.length;n++)t=(t<<5)+t+e.charCodeAt(n);return(t>>>0).toString(16)}t.r(r),t.d(r,{ASSISTANT_PLUGIN_ID:()=>B,ASSISTANT_PLUGIN_TITLE:()=>U,CALLBACK_EXTENSION_POINT:()=>_,ComponentNodeData:()=>x,DashboardNodeData:()=>C,DatasourceNodeData:()=>E,EntityNodeData:()=>T,FolderNodeData:()=>S,LabelNameNodeData:()=>A,LabelValueNodeData:()=>P,OpenAssistantButton:()=>mt,StructuredNodeData:()=>i,closeAssistant:()=>K,createAssistantContextItem:()=>k,getExposeAssistantFunctionsConfig:()=>M,isAssistantAvailable:()=>W,newFunctionNamespace:()=>R,openAssistant:()=>G,provideComponents:()=>j,providePageContext:()=>g,provideQuestions:()=>L,toggleAssistant:()=>H,useAssistant:()=>Y,usePageComponents:()=>O,usePageContext:()=>y,useProvidePageContext:()=>b,useProvideQuestions:()=>D,useQuestions:()=>F});class o{constructor(e){this.params=e,this.text="",this.id=a(e.id),this.type=e.type}formatForLLM(e){var t,n;return{type:this.type,codeElementIds:e,data:{name:null!==(t=this.params.text)&&void 0!==t?t:"",text:null!==(n=this.params.text)&&void 0!==n?n:""}}}equals(e){return e instanceof o&&this.id===e.id&&this.type===e.type}}class i extends o{constructor(e){super({...e,id:a(JSON.stringify(e.data)),type:"structured"}),this.data=e.data}formatForLLM(e){return{type:this.type,codeElementIds:e,data:this.data}}}const s=n(531),l=n(959);var c=t.n(l);const u=[],d="grafana-assistant:page-context-sync",p="grafana-assistant:page-context-update",f="grafana-assistant:page-context-remove",h="grafana-assistant:location-changed";let m=!1;function g(e,t){const n={id:v(),urlPattern:e,context:[...t]};u.push(n),window.dispatchEvent(new CustomEvent(p,{detail:n})),window.dispatchEvent(new CustomEvent(d,{detail:{registry:u}}));const r=e=>{const t=u.findIndex((e=>e.id===n.id));-1!==t&&(u[t].context=[...e],window.dispatchEvent(new CustomEvent(p,{detail:u[t]})))};return r.unregister=()=>{const e=u.findIndex((e=>e.id===n.id));-1!==e&&(u.splice(e,1),window.dispatchEvent(new CustomEvent(f,{detail:{id:n.id}})))},r}function b(e,t=[]){const n=(0,l.useRef)(void 0),r=(0,l.useRef)(t);return r.current=t,(0,l.useEffect)((()=>(n.current=g(e,r.current),()=>{var e;null===(e=n.current)||void 0===e||e.unregister()})),[e]),(0,l.useEffect)((()=>{n.current&&n.current(t)}),[t]),(0,l.useCallback)((e=>{var t;null===(t=n.current)||void 0===t||t.call(n,e)}),[])}function y(e={allowQuestions:!1,allowComponents:!1}){const[t,n]=(0,l.useState)([]),r=(0,s.useLocationService)(),a=(0,l.useRef)("");(0,l.useEffect)((()=>{const e=()=>{const e=function(e,t){if(!e)return[];const n=[];for(const r of t)w(e,r.urlPattern)&&n.push(...r.context);return n}(r.getLocation().pathname,u);n(e)},t=()=>{e()},o=t=>{var n;const a=null===(n=t.detail)||void 0===n?void 0:n.pathname;a&&a===r.getLocation().pathname&&e()},i=r.getLocationObservable().subscribe((t=>{const n=t.pathname;n!==a.current&&(a.current=n,function(e){window.dispatchEvent(new CustomEvent(h,{detail:{pathname:e}}))}(n),e())}));return e(),window.addEventListener(d,t),window.addEventListener(p,t),window.addEventListener(f,t),window.addEventListener(h,o),()=>{i.unsubscribe(),window.removeEventListener(d,t),window.removeEventListener(p,t),window.removeEventListener(f,t),window.removeEventListener(h,o)}}),[r]);let o=t;return e.allowQuestions||(o=o.filter((e=>{var t;return"question"!==(null===(t=e.node.data)||void 0===t?void 0:t.type)}))),e.allowComponents||(o=o.filter((e=>{var t;return"component"!==(null===(t=e.node.data)||void 0===t?void 0:t.type)}))),o}function v(e="page-context"){return`${e}-${Date.now()}-${Math.random().toString(36).slice(2,11)}`}function w(e,t){if(t instanceof RegExp)return t.test(e);if("string"==typeof t){const n=t.replace(/\*\*/g,"\0DOUBLE_STAR\0").replace(/\*/g,"[^/]*").replace(/\u0000DOUBLE_STAR\u0000/g,".*").replace(/\?/g,".");return new RegExp(`^${n}$`).test(e)}return!1}m||(window.addEventListener(d,(e=>{var t;const n=null===(t=e.detail)||void 0===t?void 0:t.registry;if(n){const e=new Set(u.map((e=>e.id))),t=n.filter((t=>!e.has(t.id)));u.push(...t)}})),window.addEventListener(p,(e=>{const t=e.detail;if(t){const e=u.findIndex((e=>e.id===t.id));-1!==e?u[e]=t:u.push(t)}})),window.addEventListener(f,(e=>{var t;const n=null===(t=e.detail)||void 0===t?void 0:t.id;if(n){const e=u.findIndex((e=>e.id===n));-1!==e&&u.splice(e,1)}})),m=!0);class x extends o{constructor(e){const t=e.namespace||"components";super({...e,id:`${t}-${Object.keys(e.components).join("-")}`,type:"component"}),this.components=e.components,this.prompt=e.prompt,this.namespace=t}formatForLLM(e){return{type:this.type,codeElementIds:e,data:{name:`${this.namespace} components`,prompt:this.prompt,namespace:this.namespace}}}}function O(){const e=y({allowComponents:!0,allowQuestions:!1});return(0,l.useMemo)((()=>{const t={};return e.filter((e=>{var t;return null===(t=e.node.data)||void 0===t?void 0:t.components})).forEach((e=>{const n=e.node.data;if(null==n?void 0:n.components){const e=n.namespace||n.name||"components";Object.entries(n.components).forEach((([n,r])=>{t[`${e}_${n}`]=r}))}})),t}),[e])}function j(e,t,n,r=/.*/){return g(r,[k("component",{components:n,prompt:e,namespace:t})])}class C extends o{constructor(e){super({...e,id:e.dashboardUid,type:"dashboard"}),this.dashboardUid=e.dashboardUid,this.dashboardTitle=e.dashboardTitle,this.folderUid=e.folderUid,this.folderTitle=e.folderTitle,this.text=e.dashboardTitle}formatForLLM(e){return{type:this.type,codeElementIds:e,data:{name:this.dashboardTitle,dashboardUid:this.dashboardUid,dashboardTitle:this.dashboardTitle,folderUid:this.folderUid,folderTitle:this.folderTitle,text:this.text}}}}class S extends o{constructor(e){super({...e,id:e.folderUid,type:"dashboard_folder"}),this.text="",this.folderUid=e.folderUid,this.folderTitle=e.folderTitle,this.text=e.folderTitle}formatForLLM(e){return{type:this.type,codeElementIds:e,data:{name:this.folderTitle,folderUid:this.folderUid,folderTitle:this.folderTitle,text:this.text}}}}class E extends o{constructor(e){super({...e,id:e.datasourceUid,type:"datasource"}),this.datasourceUid=e.datasourceUid,this.datasourceType=e.datasourceType,this.datasourceName=e.datasourceName,this.img=e.img,this.text=e.datasourceName}formatForLLM(e){return{type:this.type,codeElementIds:e,data:{name:this.datasourceName,uid:this.datasourceUid,type:this.datasourceType,text:this.text,img:this.img}}}}class T extends o{constructor(e){var t,n,r;super({id:`${e.type}-${e.name}-${[null===(t=e.scope)||void 0===t?void 0:t.env,null===(n=e.scope)||void 0===n?void 0:n.site,null===(r=e.scope)||void 0===r?void 0:r.namespace].filter(Boolean).join("-")}`,type:"entity",title:e.title,hidden:e.hidden,img:e.img,icon:e.icon,text:e.name}),this.entityType=e.type,this.name=e.name,this.scope=e.scope,this.properties=e.properties,this.text=e.name}formatForLLM(e){return{type:"entity",codeElementIds:e,data:{name:this.name,text:this.text,type:this.entityType,scope:this.scope,properties:this.properties}}}}class A extends o{constructor(e){super({...e,id:`${e.datasourceUid}-${e.labelName}`,type:"label_name"}),this.datasourceUid=e.datasourceUid,this.datasourceType=e.datasourceType,this.datasourceName=e.datasourceName,this.labelName=e.labelName,this.text=e.labelName,this.img=e.img}formatForLLM(e){return{type:this.type,codeElementIds:e,data:{name:this.labelName,datasourceUid:this.datasourceUid,datasourceType:this.datasourceType,datasourceName:this.datasourceName,labelName:this.labelName,img:this.img,text:this.text}}}}class P extends o{constructor(e){super({...e,id:`${e.datasourceUid}-${e.labelName}-${e.labelValue}`,type:"label_value"}),this.datasourceUid=e.datasourceUid,this.datasourceType=e.datasourceType,this.datasourceName=e.datasourceName,this.labelName=e.labelName,this.labelValue=e.labelValue,this.text=e.labelValue,this.img=e.img}formatForLLM(e){return{type:this.type,codeElementIds:e,data:{name:this.labelValue,datasourceUid:this.datasourceUid,datasourceType:this.datasourceType,datasourceName:this.datasourceName,labelName:this.labelName,labelValue:this.labelValue,text:this.text,img:this.img}}}}function N(e){var t,n,r,a,o;const i=(0,s.getDataSourceSrv)().getInstanceSettings(e);return{datasourceType:null!==(t=null==i?void 0:i.type)&&void 0!==t?t:"unknown",datasourceName:null!==(n=null==i?void 0:i.name)&&void 0!==n?n:e,img:null===(o=null===(a=null===(r=null==i?void 0:i.meta)||void 0===r?void 0:r.info)||void 0===a?void 0:a.logos)||void 0===o?void 0:o.small}}const I={datasource:"database",label_name:"database",label_value:"database",dashboard:"dashboard",dashboard_folder:"folder",unknown:"circle-mono",structured:"gf-grid",component:"gf-grid",entity:"asserts"};function k(e,t){var n,r,a;const s=function(e,t){switch(e){case"datasource":return new E({...t,...N(t.datasourceUid)});case"label_name":return new A({...t,...N(t.datasourceUid)});case"label_value":return new P({...t,...N(t.datasourceUid)});case"dashboard":return new C(t);case"dashboard_folder":return new S(t);case"structured":return new i(t);case"component":return new x({...t,hidden:!0});case"entity":return new T(t);case"unknown":return new o(t);default:return console.error(`Unknown context type: ${e}`),new o(t)}}(e,t),l=null!==(n=t.title)&&void 0!==n?n:function(e){var t;return e instanceof i?e.formatForLLM().data.name:null!==(t=e.text)&&void 0!==t?t:"Given Context"}(s),c=null!==(r=t.img)&&void 0!==r?r:function(e){if("img"in e)return e.img}(s);return{node:{id:s.id,name:l,img:c,icon:null!==(a=t.icon)&&void 0!==a?a:I[e],navigable:!1,selectable:!0,data:s},occurrences:[]}}function L(e,t){const n=v("question"),r=e=>e.map(((e,t)=>({node:{id:`question-${n}-${t}`,name:e.prompt,navigable:!1,selectable:!0,icon:"question-circle",data:{type:"question",prompt:e.prompt,context:e.context||[]}},occurrences:[]}))),a=g(e,r(t)),o=e=>{a(r(e))};return o.unregister=a.unregister,o}function D(e,t=[]){const n=(0,l.useMemo)((()=>v("question")),[]),r=e=>e.map(((e,t)=>({node:{id:`question-${n}-${t}`,name:e.prompt,navigable:!1,selectable:!0,icon:"question-circle",data:{type:"question",prompt:e.prompt,context:e.context||[]}},occurrences:[]}))),a=b(e,r(t));return e=>{a(r(e))}}function F(){const e=y({allowQuestions:!0,allowComponents:!1});return $(e)}const $=e=>e.filter((e=>{var t;return"question"===(null===(t=e.node.data)||void 0===t?void 0:t.type)})).map((e=>{var t,n;return{prompt:(null===(t=e.node.data)||void 0===t?void 0:t.prompt)||e.node.name,context:(null===(n=e.node.data)||void 0===n?void 0:n.context)||[]}})),_="grafana-assistant-app/callback/v0-alpha";function R(e,t){return{namespace:e,functions:t}}function M(e){return{title:"callback",targets:[_],fn:()=>e.map((e=>({namespace:e.namespace,functions:e.functions})))}}const q=n(269),B="grafana-assistant-app",U="Grafana Assistant";function W(){return s.getObservablePluginLinks?(0,s.getObservablePluginLinks)({extensionPointId:"grafana/extension-sidebar/v0-alpha"}).pipe((0,q.map)((e=>e.some((e=>e.pluginId===B&&e.title===U))))):(0,q.of)(!1)}const V=n(781);class z extends V.BusEventWithPayload{}z.type="open-extension-sidebar";class J extends V.BusEventBase{}J.type="close-extension-sidebar";class Q extends V.BusEventWithPayload{}function G(e){var t,n;(0,s.reportInteraction)("grafana_assistant_app_opened_sidebar",{from:e.origin,prompt:null!==(t=e.prompt)&&void 0!==t?t:""}),function(e,t,n){const r=new z({pluginId:e,componentTitle:t,props:n});(0,s.getAppEvents)().publish(r)}(B,U,{initialPrompt:e.prompt,initialContext:e.context,initialAutoSend:null===(n=e.autoSend)||void 0===n||n,origin:e.origin})}function K(){!function(){const e=new J;(0,s.getAppEvents)().publish(e)}()}function H(e){var t,n;(0,s.reportInteraction)("grafana_assistant_app_toggled_sidebar",{from:e.origin,prompt:null!==(t=e.prompt)&&void 0!==t?t:""}),function(e,t,n){const r=new Q({pluginId:e,componentTitle:t,props:n});(0,s.getAppEvents)().publish(r)}(B,U,{initialPrompt:e.prompt,initialContext:e.context,initialAutoSend:null===(n=e.autoSend)||void 0===n||n,origin:e.origin})}function Y(){const[e,t]=(0,l.useState)(!1);return(0,l.useEffect)((()=>{const e=W().subscribe((e=>t(e)));return()=>{e.unsubscribe()}}),[]),{isAvailable:e,openAssistant:e?G:void 0,closeAssistant:e?K:void 0,toggleAssistant:e?H:void 0}}Q.type="toggle-extension-sidebar";const Z=n(7);var X=function(){function e(e){var t=this;this._insertTag=function(e){var n;n=0===t.tags.length?t.insertionPoint?t.insertionPoint.nextSibling:t.prepend?t.container.firstChild:t.before:t.tags[t.tags.length-1].nextSibling,t.container.insertBefore(e,n),t.tags.push(e)},this.isSpeedy=void 0===e.speedy||e.speedy,this.tags=[],this.ctr=0,this.nonce=e.nonce,this.key=e.key,this.container=e.container,this.prepend=e.prepend,this.insertionPoint=e.insertionPoint,this.before=null}var t=e.prototype;return t.hydrate=function(e){e.forEach(this._insertTag)},t.insert=function(e){this.ctr%(this.isSpeedy?65e3:1)==0&&this._insertTag(function(e){var t=document.createElement("style");return t.setAttribute("data-emotion",e.key),void 0!==e.nonce&&t.setAttribute("nonce",e.nonce),t.appendChild(document.createTextNode("")),t.setAttribute("data-s",""),t}(this));var t=this.tags[this.tags.length-1];if(this.isSpeedy){var n=function(e){if(e.sheet)return e.sheet;for(var t=0;t<document.styleSheets.length;t++)if(document.styleSheets[t].ownerNode===e)return document.styleSheets[t]}(t);try{n.insertRule(e,n.cssRules.length)}catch(e){}}else t.appendChild(document.createTextNode(e));this.ctr++},t.flush=function(){this.tags.forEach((function(e){var t;return null==(t=e.parentNode)?void 0:t.removeChild(e)})),this.tags=[],this.ctr=0},e}(),ee=Math.abs,te=String.fromCharCode,ne=Object.assign;function re(e){return e.trim()}function ae(e,t,n){return e.replace(t,n)}function oe(e,t){return e.indexOf(t)}function ie(e,t){return 0|e.charCodeAt(t)}function se(e,t,n){return e.slice(t,n)}function le(e){return e.length}function ce(e){return e.length}function ue(e,t){return t.push(e),e}var de=1,pe=1,fe=0,he=0,me=0,ge="";function be(e,t,n,r,a,o,i){return{value:e,root:t,parent:n,type:r,props:a,children:o,line:de,column:pe,length:i,return:""}}function ye(e,t){return ne(be("",null,null,"",null,null,0),e,{length:-e.length},t)}function ve(){return me=he<fe?ie(ge,he++):0,pe++,10===me&&(pe=1,de++),me}function we(){return ie(ge,he)}function xe(){return he}function Oe(e,t){return se(ge,e,t)}function je(e){switch(e){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function Ce(e){return de=pe=1,fe=le(ge=e),he=0,[]}function Se(e){return ge="",e}function Ee(e){return re(Oe(he-1,Pe(91===e?e+2:40===e?e+1:e)))}function Te(e){for(;(me=we())&&me<33;)ve();return je(e)>2||je(me)>3?"":" "}function Ae(e,t){for(;--t&&ve()&&!(me<48||me>102||me>57&&me<65||me>70&&me<97););return Oe(e,xe()+(t<6&&32==we()&&32==ve()))}function Pe(e){for(;ve();)switch(me){case e:return he;case 34:case 39:34!==e&&39!==e&&Pe(me);break;case 40:41===e&&Pe(e);break;case 92:ve()}return he}function Ne(e,t){for(;ve()&&e+me!==57&&(e+me!==84||47!==we()););return"/*"+Oe(t,he-1)+"*"+te(47===e?e:ve())}function Ie(e){for(;!je(we());)ve();return Oe(e,he)}var ke="-ms-",Le="-moz-",De="-webkit-",Fe="comm",$e="rule",_e="decl",Re="@keyframes";function Me(e,t){for(var n="",r=ce(e),a=0;a<r;a++)n+=t(e[a],a,e,t)||"";return n}function qe(e,t,n,r){switch(e.type){case"@layer":if(e.children.length)break;case"@import":case _e:return e.return=e.return||e.value;case Fe:return"";case Re:return e.return=e.value+"{"+Me(e.children,r)+"}";case $e:e.value=e.props.join(",")}return le(n=Me(e.children,r))?e.return=e.value+"{"+n+"}":""}function Be(e){return Se(Ue("",null,null,null,[""],e=Ce(e),0,[0],e))}function Ue(e,t,n,r,a,o,i,s,l){for(var c=0,u=0,d=i,p=0,f=0,h=0,m=1,g=1,b=1,y=0,v="",w=a,x=o,O=r,j=v;g;)switch(h=y,y=ve()){case 40:if(108!=h&&58==ie(j,d-1)){-1!=oe(j+=ae(Ee(y),"&","&\f"),"&\f")&&(b=-1);break}case 34:case 39:case 91:j+=Ee(y);break;case 9:case 10:case 13:case 32:j+=Te(h);break;case 92:j+=Ae(xe()-1,7);continue;case 47:switch(we()){case 42:case 47:ue(Ve(Ne(ve(),xe()),t,n),l);break;default:j+="/"}break;case 123*m:s[c++]=le(j)*b;case 125*m:case 59:case 0:switch(y){case 0:case 125:g=0;case 59+u:-1==b&&(j=ae(j,/\f/g,"")),f>0&&le(j)-d&&ue(f>32?ze(j+";",r,n,d-1):ze(ae(j," ","")+";",r,n,d-2),l);break;case 59:j+=";";default:if(ue(O=We(j,t,n,c,u,a,s,v,w=[],x=[],d),o),123===y)if(0===u)Ue(j,t,O,O,w,o,d,s,x);else switch(99===p&&110===ie(j,3)?100:p){case 100:case 108:case 109:case 115:Ue(e,O,O,r&&ue(We(e,O,O,0,0,a,s,v,a,w=[],d),x),a,x,d,s,r?w:x);break;default:Ue(j,O,O,O,[""],x,0,s,x)}}c=u=f=0,m=b=1,v=j="",d=i;break;case 58:d=1+le(j),f=h;default:if(m<1)if(123==y)--m;else if(125==y&&0==m++&&125==(me=he>0?ie(ge,--he):0,pe--,10===me&&(pe=1,de--),me))continue;switch(j+=te(y),y*m){case 38:b=u>0?1:(j+="\f",-1);break;case 44:s[c++]=(le(j)-1)*b,b=1;break;case 64:45===we()&&(j+=Ee(ve())),p=we(),u=d=le(v=j+=Ie(xe())),y++;break;case 45:45===h&&2==le(j)&&(m=0)}}return o}function We(e,t,n,r,a,o,i,s,l,c,u){for(var d=a-1,p=0===a?o:[""],f=ce(p),h=0,m=0,g=0;h<r;++h)for(var b=0,y=se(e,d+1,d=ee(m=i[h])),v=e;b<f;++b)(v=re(m>0?p[b]+" "+y:ae(y,/&\f/g,p[b])))&&(l[g++]=v);return be(e,t,n,0===a?$e:s,l,c,u)}function Ve(e,t,n){return be(e,t,n,Fe,te(me),se(e,2,-2),0)}function ze(e,t,n,r){return be(e,t,n,_e,se(e,0,r),se(e,r+1,-1),r)}var Je=function(e,t,n){for(var r=0,a=0;r=a,a=we(),38===r&&12===a&&(t[n]=1),!je(a);)ve();return Oe(e,he)},Qe=new WeakMap,Ge=function(e){if("rule"===e.type&&e.parent&&!(e.length<1)){for(var t=e.value,n=e.parent,r=e.column===n.column&&e.line===n.line;"rule"!==n.type;)if(!(n=n.parent))return;if((1!==e.props.length||58===t.charCodeAt(0)||Qe.get(n))&&!r){Qe.set(e,!0);for(var a=[],o=function(e,t){return Se(function(e,t){var n=-1,r=44;do{switch(je(r)){case 0:38===r&&12===we()&&(t[n]=1),e[n]+=Je(he-1,t,n);break;case 2:e[n]+=Ee(r);break;case 4:if(44===r){e[++n]=58===we()?"&\f":"",t[n]=e[n].length;break}default:e[n]+=te(r)}}while(r=ve());return e}(Ce(e),t))}(t,a),i=n.props,s=0,l=0;s<o.length;s++)for(var c=0;c<i.length;c++,l++)e.props[l]=a[s]?o[s].replace(/&\f/g,i[c]):i[c]+" "+o[s]}}},Ke=function(e){if("decl"===e.type){var t=e.value;108===t.charCodeAt(0)&&98===t.charCodeAt(2)&&(e.return="",e.value="")}};function He(e,t){switch(function(e,t){return 45^ie(e,0)?(((t<<2^ie(e,0))<<2^ie(e,1))<<2^ie(e,2))<<2^ie(e,3):0}(e,t)){case 5103:return De+"print-"+e+e;case 5737:case 4201:case 3177:case 3433:case 1641:case 4457:case 2921:case 5572:case 6356:case 5844:case 3191:case 6645:case 3005:case 6391:case 5879:case 5623:case 6135:case 4599:case 4855:case 4215:case 6389:case 5109:case 5365:case 5621:case 3829:return De+e+e;case 5349:case 4246:case 4810:case 6968:case 2756:return De+e+Le+e+ke+e+e;case 6828:case 4268:return De+e+ke+e+e;case 6165:return De+e+ke+"flex-"+e+e;case 5187:return De+e+ae(e,/(\w+).+(:[^]+)/,De+"box-$1$2"+ke+"flex-$1$2")+e;case 5443:return De+e+ke+"flex-item-"+ae(e,/flex-|-self/,"")+e;case 4675:return De+e+ke+"flex-line-pack"+ae(e,/align-content|flex-|-self/,"")+e;case 5548:return De+e+ke+ae(e,"shrink","negative")+e;case 5292:return De+e+ke+ae(e,"basis","preferred-size")+e;case 6060:return De+"box-"+ae(e,"-grow","")+De+e+ke+ae(e,"grow","positive")+e;case 4554:return De+ae(e,/([^-])(transform)/g,"$1"+De+"$2")+e;case 6187:return ae(ae(ae(e,/(zoom-|grab)/,De+"$1"),/(image-set)/,De+"$1"),e,"")+e;case 5495:case 3959:return ae(e,/(image-set\([^]*)/,De+"$1$`$1");case 4968:return ae(ae(e,/(.+:)(flex-)?(.*)/,De+"box-pack:$3"+ke+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+De+e+e;case 4095:case 3583:case 4068:case 2532:return ae(e,/(.+)-inline(.+)/,De+"$1$2")+e;case 8116:case 7059:case 5753:case 5535:case 5445:case 5701:case 4933:case 4677:case 5533:case 5789:case 5021:case 4765:if(le(e)-1-t>6)switch(ie(e,t+1)){case 109:if(45!==ie(e,t+4))break;case 102:return ae(e,/(.+:)(.+)-([^]+)/,"$1"+De+"$2-$3$1"+Le+(108==ie(e,t+3)?"$3":"$2-$3"))+e;case 115:return~oe(e,"stretch")?He(ae(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(115!==ie(e,t+1))break;case 6444:switch(ie(e,le(e)-3-(~oe(e,"!important")&&10))){case 107:return ae(e,":",":"+De)+e;case 101:return ae(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+De+(45===ie(e,14)?"inline-":"")+"box$3$1"+De+"$2$3$1"+ke+"$2box$3")+e}break;case 5936:switch(ie(e,t+11)){case 114:return De+e+ke+ae(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return De+e+ke+ae(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return De+e+ke+ae(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return De+e+ke+e+e}return e}var Ye=[function(e,t,n,r){if(e.length>-1&&!e.return)switch(e.type){case _e:e.return=He(e.value,e.length);break;case Re:return Me([ye(e,{value:ae(e.value,"@","@"+De)})],r);case $e:if(e.length)return function(e,t){return e.map(t).join("")}(e.props,(function(t){switch(function(e){return(e=/(::plac\w+|:read-\w+)/.exec(e))?e[0]:e}(t)){case":read-only":case":read-write":return Me([ye(e,{props:[ae(t,/:(read-\w+)/,":-moz-$1")]})],r);case"::placeholder":return Me([ye(e,{props:[ae(t,/:(plac\w+)/,":"+De+"input-$1")]}),ye(e,{props:[ae(t,/:(plac\w+)/,":-moz-$1")]}),ye(e,{props:[ae(t,/:(plac\w+)/,ke+"input-$1")]})],r)}return""}))}}],Ze={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,scale:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1};var Xe=/[A-Z]|^ms/g,et=/_EMO_([^_]+?)_([^]*?)_EMO_/g,tt=function(e){return 45===e.charCodeAt(1)},nt=function(e){return null!=e&&"boolean"!=typeof e},rt=function(e){var t=Object.create(null);return function(n){return void 0===t[n]&&(t[n]=e(n)),t[n]}}((function(e){return tt(e)?e:e.replace(Xe,"-$&").toLowerCase()})),at=function(e,t){switch(e){case"animation":case"animationName":if("string"==typeof t)return t.replace(et,(function(e,t,n){return it={name:t,styles:n,next:it},t}))}return 1===Ze[e]||tt(e)||"number"!=typeof t||0===t?t:t+"px"};function ot(e,t,n){if(null==n)return"";var r=n;if(void 0!==r.__emotion_styles)return r;switch(typeof n){case"boolean":return"";case"object":var a=n;if(1===a.anim)return it={name:a.name,styles:a.styles,next:it},a.name;var o=n;if(void 0!==o.styles){var i=o.next;if(void 0!==i)for(;void 0!==i;)it={name:i.name,styles:i.styles,next:it},i=i.next;return o.styles+";"}return function(e,t,n){var r="";if(Array.isArray(n))for(var a=0;a<n.length;a++)r+=ot(e,t,n[a])+";";else for(var o in n){var i=n[o];if("object"!=typeof i){var s=i;null!=t&&void 0!==t[s]?r+=o+"{"+t[s]+"}":nt(s)&&(r+=rt(o)+":"+at(o,s)+";")}else if(!Array.isArray(i)||"string"!=typeof i[0]||null!=t&&void 0!==t[i[0]]){var l=ot(e,t,i);switch(o){case"animation":case"animationName":r+=rt(o)+":"+l+";";break;default:r+=o+"{"+l+"}"}}else for(var c=0;c<i.length;c++)nt(i[c])&&(r+=rt(o)+":"+at(o,i[c])+";")}return r}(e,t,n);case"function":if(void 0!==e){var s=it,l=n(e);return it=s,ot(e,t,l)}}var c=n;if(null==t)return c;var u=t[c];return void 0!==u?u:c}var it,st=/label:\s*([^\s;{]+)\s*(;|$)/g;function lt(e,t,n){if(1===e.length&&"object"==typeof e[0]&&null!==e[0]&&void 0!==e[0].styles)return e[0];var r=!0,a="";it=void 0;var o=e[0];null==o||void 0===o.raw?(r=!1,a+=ot(n,t,o)):a+=o[0];for(var i=1;i<e.length;i++)a+=ot(n,t,e[i]),r&&(a+=o[i]);st.lastIndex=0;for(var s,l="";null!==(s=st.exec(a));)l+="-"+s[1];var c=function(e){for(var t,n=0,r=0,a=e.length;a>=4;++r,a-=4)t=1540483477*(65535&(t=255&e.charCodeAt(r)|(255&e.charCodeAt(++r))<<8|(255&e.charCodeAt(++r))<<16|(255&e.charCodeAt(++r))<<24))+(59797*(t>>>16)<<16),n=1540483477*(65535&(t^=t>>>24))+(59797*(t>>>16)<<16)^1540483477*(65535&n)+(59797*(n>>>16)<<16);switch(a){case 3:n^=(255&e.charCodeAt(r+2))<<16;case 2:n^=(255&e.charCodeAt(r+1))<<8;case 1:n=1540483477*(65535&(n^=255&e.charCodeAt(r)))+(59797*(n>>>16)<<16)}return(((n=1540483477*(65535&(n^=n>>>13))+(59797*(n>>>16)<<16))^n>>>15)>>>0).toString(36)}(a)+l;return{name:c,styles:a,next:it}}function ct(e,t,n){var r="";return n.split(" ").forEach((function(n){void 0!==e[n]?t.push(e[n]+";"):n&&(r+=n+" ")})),r}function ut(e,t){if(void 0===e.inserted[t.name])return e.insert("",t,e.sheet,!0)}function dt(e,t,n){var r=[],a=ct(e,r,n);return r.length<2?n:a+t(r)}var pt=function e(t){for(var n="",r=0;r<t.length;r++){var a=t[r];if(null!=a){var o=void 0;switch(typeof a){case"boolean":break;case"object":if(Array.isArray(a))o=e(a);else for(var i in o="",a)a[i]&&i&&(o&&(o+=" "),o+=i);break;default:o=a}o&&(n&&(n+=" "),n+=o)}}return n},ft=function(){var e=function(e){var t=e.key;if("css"===t){var n=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(n,(function(e){-1!==e.getAttribute("data-emotion").indexOf(" ")&&(document.head.appendChild(e),e.setAttribute("data-s",""))}))}var r,a,o=e.stylisPlugins||Ye,i={},s=[];r=e.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+t+' "]'),(function(e){for(var t=e.getAttribute("data-emotion").split(" "),n=1;n<t.length;n++)i[t[n]]=!0;s.push(e)}));var l,c,u,d,p=[qe,(d=function(e){l.insert(e)},function(e){e.root||(e=e.return)&&d(e)})],f=(c=[Ge,Ke].concat(o,p),u=ce(c),function(e,t,n,r){for(var a="",o=0;o<u;o++)a+=c[o](e,t,n,r)||"";return a});a=function(e,t,n,r){l=n,Me(Be(e?e+"{"+t.styles+"}":t.styles),f),r&&(h.inserted[t.name]=!0)};var h={key:t,sheet:new X({key:t,container:r,nonce:e.nonce,speedy:e.speedy,prepend:e.prepend,insertionPoint:e.insertionPoint}),nonce:e.nonce,inserted:i,registered:{},insert:a};return h.sheet.hydrate(s),h}({key:"css"});e.sheet.speedy=function(e){this.isSpeedy=e},e.compat=!0;var t=function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];var a=lt(n,e.registered,void 0);return function(e,t){!function(e,t){var n=e.key+"-"+t.name;void 0===e.registered[n]&&(e.registered[n]=t.styles)}(e,t);var n=e.key+"-"+t.name;if(void 0===e.inserted[t.name]){var r=t;do{e.insert(t===r?"."+n:"",r,e.sheet,!0),r=r.next}while(void 0!==r)}}(e,a),e.key+"-"+a.name};return{css:t,cx:function(){for(var n=arguments.length,r=new Array(n),a=0;a<n;a++)r[a]=arguments[a];return dt(e.registered,t,pt(r))},injectGlobal:function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];var a=lt(n,e.registered);ut(e,a)},keyframes:function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];var a=lt(n,e.registered),o="animation-"+a.name;return ut(e,{name:a.name,styles:"@keyframes "+o+"{"+a.styles+"}"}),o},hydrate:function(t){t.forEach((function(t){e.inserted[t]=!0}))},flush:function(){e.registered={},e.inserted={},e.sheet.flush()},sheet:e.sheet,cache:e,getRegisteredStyles:ct.bind(null,e.registered),merge:dt.bind(null,e.registered,t)}}(),ht=(ft.flush,ft.hydrate,ft.cx,ft.merge,ft.getRegisteredStyles,ft.injectGlobal,ft.keyframes,ft.css);function mt(e){const{isAvailable:t,openAssistant:n}=Y();return t&&n?c().createElement(gt,{...e,openAssistant:n}):null}function gt({prompt:e,origin:t,context:n,autoSend:r=!0,title:a="Analyze with Assistant",size:o="sm",iconOnlyButton:i=!1,openAssistant:u}){const d=(0,Z.useStyles2)(bt);return(0,l.useEffect)((()=>{(0,s.reportInteraction)("grafana_assistant_app_open_sidebar_button_displayed",{from:t})}),[t]),c().createElement(c().Fragment,null,i?c().createElement(Z.IconButton,{name:"ai-sparkle",onClick:()=>u({prompt:e,context:n,autoSend:r,origin:t}),variant:"secondary",size:o,"aria-label":a,className:d.icon,tooltip:a,"data-testid":"assistant-icon-button"}):c().createElement(Z.Button,{icon:"ai-sparkle",onClick:()=>u({prompt:e,context:n,autoSend:r,origin:t}),variant:"secondary",fill:"solid",size:o,title:a,"aria-label":a,className:d.button,"data-testid":"assistant-button"},a))}ft.sheet,ft.cache;const bt=e=>{const t=e.colors.secondary.main,n=e.colors.emphasize(t,.05),r=e.colors.background.canvas,a=e.shape.radius.default,o=`max(calc(${a} - 1px), 1px)`,i={content:'""',position:"absolute",inset:0,borderRadius:a,background:"linear-gradient(90deg, rgb(168, 85, 247), rgb(249, 115, 22))",zIndex:-2,pointerEvents:"none"},s=e=>({content:'""',position:"absolute",inset:"1px",borderRadius:o,background:`linear-gradient(${e}, ${e}), ${r}`,zIndex:-1,transition:"none",pointerEvents:"none"});return{button:ht({label:"assistant-button",position:"relative",isolation:"isolate",border:"none",transition:"none !important","&::before":i,"&::after":{...s(t),transition:"none"},"&:hover":{transition:"none !important"},"&:hover::after":{background:`linear-gradient(${n}, ${n}), ${r}`}}),icon:ht({label:"assistant-icon",position:"relative",isolation:"isolate",border:"none",background:"none",padding:e.spacing(.5),"&::before":{...i,transition:"background 0.1s ease"},"&:hover::after":{...s(t),background:`linear-gradient(${n}, ${n}), ${r}`}})}};e.exports=r})()},146:e=>{"use strict";e.exports=s},241:e=>{"use strict";e.exports=i},269:e=>{"use strict";e.exports=l},308:t=>{"use strict";t.exports=e},513:e=>{"use strict";e.exports=function e(t,n){if(t===n)return!0;if(t&&n&&"object"==typeof t&&"object"==typeof n){if(t.constructor!==n.constructor)return!1;var r,a,o;if(Array.isArray(t)){if((r=t.length)!=n.length)return!1;for(a=r;0!=a--;)if(!e(t[a],n[a]))return!1;return!0}if(t.constructor===RegExp)return t.source===n.source&&t.flags===n.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===n.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===n.toString();if((r=(o=Object.keys(t)).length)!==Object.keys(n).length)return!1;for(a=r;0!=a--;)if(!Object.prototype.hasOwnProperty.call(n,o[a]))return!1;for(a=r;0!=a--;){var i=o[a];if(!e(t[i],n[i]))return!1}return!0}return t!=t&&n!=n}},531:e=>{"use strict";e.exports=o},728:(e,t,n)=>{"use strict";e.exports=n(44)},781:e=>{"use strict";e.exports=t},959:e=>{"use strict";e.exports=n}},u={};function d(e){var t=u[e];if(void 0!==t)return t.exports;var n=u[e]={exports:{}};return c[e](n,n.exports,d),n.exports}d.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return d.d(t,{a:t}),t},d.d=(e,t)=>{for(var n in t)d.o(t,n)&&!d.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},d.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),d.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},d.p="public/plugins/grafana-pyroscope-datasource/";var p={};return(()=>{"use strict";d.r(p),d.d(p,{plugin:()=>Ot});var e=d(308),t=d.n(e);d.p=t()&&t().uri?t().uri.slice(0,t().uri.lastIndexOf("/")+1):"public/plugins/grafana-pyroscope-datasource/";var n=d(781),r=d(728),a=d(89),o=d(959),i=d(7);const s=({dataSourceName:e,docsLink:t,hasRequiredFields:n=!0,className:r})=>{const s=(0,i.useTheme2)(),l={container:(0,a.css)({p:{margin:0},"p + p":{marginTop:s.spacing(2)}}),text:(0,a.css)({...s.typography.body,color:s.colors.text.secondary,a:(0,a.css)({color:s.colors.text.link,textDecoration:"underline","&:hover":{textDecoration:"none"}})})};return o.createElement("div",{className:(0,a.cx)(l.container,r)},o.createElement("p",{className:l.text},"Before you can use the ",e," data source, you must configure it below or in the config file. For detailed instructions,"," ",o.createElement("a",{href:t,target:"_blank",rel:"noreferrer"},"view the documentation"),"."),n&&o.createElement("p",{className:l.text},o.createElement("i",null,"Fields marked with * are required")))},l=({children:e,title:t,description:n,isCollapsible:r=!1,isInitiallyOpen:s=!0,kind:l="section",className:c})=>{const{colors:u,typography:d,spacing:p}=(0,i.useTheme2)(),[f,h]=(0,o.useState)(!r||s),m=f?"angle-up":"angle-down",g="sub-section"===l,b=`${f?"Collapse":"Expand"} section ${t}`,y={header:(0,a.css)({display:"flex",justifyContent:"space-between",alignItems:"center"}),title:(0,a.css)({margin:0}),subtitle:(0,a.css)({margin:0,fontWeight:d.fontWeightRegular}),descriptionText:(0,a.css)({marginTop:p(g?.25:.5),marginBottom:0,...d.bodySmall,color:u.text.secondary}),content:(0,a.css)({marginTop:p(2)})};return o.createElement("div",{className:c},o.createElement("div",{className:y.header},"section"===l?o.createElement("h3",{className:y.title},t):o.createElement("h6",{className:y.subtitle},t),r&&o.createElement(i.IconButton,{name:m,onClick:()=>h(!f),type:"button",size:"xl","aria-label":b})),n&&o.createElement("p",{className:y.descriptionText},n),f&&o.createElement("div",{className:y.content},e))},c=({children:e,...t})=>o.createElement(l,{...t,kind:"section"},e),u=({config:e,onChange:t,description:n,urlPlaceholder:r,urlTooltip:s,urlLabel:l,className:u})=>{const d=void 0!==e.url&&/^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?$/.test(e.url),p={container:(0,a.css)({maxWidth:578})};return o.createElement(o.Fragment,null,o.createElement(c,{title:"Connection",description:n,className:(0,a.cx)(p.container,u)},o.createElement(i.InlineField,{htmlFor:"connection-url",label:l||"URL",labelWidth:24,tooltip:s||o.createElement(o.Fragment,null,"Specify a complete HTTP URL",o.createElement("br",null),"(for example https://example.com:8080)"),grow:!0,disabled:e.readOnly,required:!0,invalid:!d&&!e.readOnly,error:d?"":"Please enter a valid URL",interactive:!0},o.createElement(i.Input,{id:"connection-url","aria-label":"Data source connection URL",onChange:n=>t({...e,url:n.currentTarget.value}),value:e.url||"",placeholder:r||"URL"}))))},f=()=>({inlineFieldNoMarginRight:(0,a.css)({marginRight:0}),inlineFieldWithSecret:(0,a.css)({'[class$="layoutChildrenWrapper"]:first-child':{flexGrow:1}})}),h=({user:e,passwordConfigured:t,userLabel:n="User",userTooltip:r="The username of the data source account",userPlaceholder:s="User",passwordLabel:l="Password",passwordTooltip:c="The password of the data source account",passwordPlaceholder:u="Password",onUserChange:d,onPasswordChange:p,onPasswordReset:h,readOnly:m})=>{const g=f(),b={lastInlineField:(0,a.css)({marginBottom:0})};return o.createElement(o.Fragment,null,o.createElement(i.InlineField,{className:g.inlineFieldNoMarginRight,label:n,labelWidth:24,tooltip:r,required:!0,htmlFor:"basic-auth-user-input",interactive:!0,grow:!0,disabled:m},o.createElement(i.Input,{id:"basic-auth-user-input",placeholder:s,value:e,onChange:e=>d(e.currentTarget.value),required:!0})),o.createElement(i.InlineField,{className:(0,a.cx)(g.inlineFieldNoMarginRight,g.inlineFieldWithSecret,b.lastInlineField),label:l,labelWidth:24,tooltip:c,required:!0,htmlFor:"basic-auth-password-input",interactive:!0,grow:!0,disabled:m},o.createElement(i.SecretInput,{id:"basic-auth-password-input",isConfigured:t,onReset:m?()=>{}:h,placeholder:u,onChange:e=>p(e.currentTarget.value),required:!0})))},m=({children:e,...t})=>o.createElement(l,{...t,kind:"sub-section"},e);var g=(e=>(e.NoAuth="NoAuth",e.BasicAuth="BasicAuth",e.OAuthForward="OAuthForward",e.CrossSiteCredentials="CrossSiteCredentials",e))(g||{});const b={[g.BasicAuth]:{label:"Basic authentication",value:g.BasicAuth,description:"Authenticate with your data source username and password"},[g.CrossSiteCredentials]:{label:"Enable cross-site access control requests",value:g.CrossSiteCredentials,description:"Allow cross-site Access-Control requests with your existing credentials and cookies. This enables the server to authenticate the user and perform authorized requests on their behalf on other domains."},[g.OAuthForward]:{label:"Forward OAuth Identity",value:g.OAuthForward,description:"Forward the OAuth access token (and if available: the OIDC ID token) of the user querying to the data source"},[g.NoAuth]:{label:"No Authentication",value:g.NoAuth,description:"Data source is available without authentication"}},y=({selectedMethod:e,mostCommonMethod:t,visibleMethods:n,defaultOptionsOverrides:r,customMethods:s,onAuthMethodSelect:l,basicAuth:c,readOnly:u})=>{var d,p,f,y;const[v,w]=(0,o.useState)(!1),{colors:x,spacing:O}=(0,i.useTheme2)(),j=(0,o.useMemo)((()=>{var e;return null!=n?n:[g.BasicAuth,g.OAuthForward,g.NoAuth,...null!=(e=null==s?void 0:s.map((e=>e.id)))?e:[]]}),[s,n]),C=j.length>1,S=(0,o.useMemo)((()=>{var e;const n=null!=(e=null==s?void 0:s.reduce(((e,t)=>(e[t.id]={label:t.label,value:t.id,description:t.description},e)),{}))?e:{},a={};let o;for(o in b)a[o]={...b[o],...null==r?void 0:r[o]};const i={...n,...a};return j.filter((e=>Boolean(i[e]))).map((e=>{const n=i[e];return e===t&&C?{...n,label:`${n.label} (most common)`}:n}))}),[j,s,r,t,C]);let E=e;C?e===g.NoAuth&&t&&!v&&(E=t):E=j[0];let T=null;E===g.BasicAuth&&c?T=o.createElement(h,{...c,readOnly:u}):E.startsWith("custom-")&&(T=null!=(p=null==(d=null==s?void 0:s.find((e=>e.id===E)))?void 0:d.component)?p:null);const A=C?"Authentication methods":null!=(f=S[0].label)?f:"",P=C?"Choose an authentication method to access the data source":null!=(y=S[0].description)?y:"",N={authMethods:(0,a.css)({marginTop:O(2.5),...C&&{padding:O(2),border:`1px solid ${x.border.weak}`}}),selectedMethodFields:(0,a.css)({marginTop:O(1.5)})};return o.createElement(m,{title:A,description:P},o.createElement("div",{className:N.authMethods},C&&o.createElement(i.Field,{label:"Authentication method"},o.createElement(i.Select,{inputId:"auth-method-select",options:S,value:E,onChange:e=>{w(!0),l(e.value)},disabled:u})),T&&o.createElement("div",{className:N.selectedMethodFields},T)))},v=({children:e,enabled:t,label:n,tooltipText:r,onToggle:s,readOnly:l})=>{const{colors:c,spacing:u}=(0,i.useTheme2)(),d={container:(0,a.css)({marginTop:3}),checkboxContainer:(0,a.css)({display:"flex",alignItems:"center"}),infoIcon:(0,a.css)({marginTop:-2,marginLeft:5,color:c.text.secondary}),content:(0,a.css)({margin:u(1,0,2,3)})};return o.createElement("div",{className:d.container},o.createElement("div",{className:d.checkboxContainer},o.createElement(i.Checkbox,{value:t,label:n,onChange:()=>s(!t),disabled:l}),o.createElement(i.Tooltip,{placement:"top",content:r,interactive:!0},o.createElement(i.Icon,{name:"info-circle",className:d.infoIcon,size:"sm"}))),t&&e&&o.createElement("div",{className:d.content},e))},w=({enabled:e,certificateConfigured:t,onToggle:n,onCertificateChange:r,onCertificateReset:s,tooltips:l,readOnly:c})=>{var u;const d=f();return o.createElement(v,{enabled:e,label:"Add self-signed certificate",tooltipText:"Add your own Certificate Authority (CA) certificate on top of one generated by the certificate authorities for additional security measures",onToggle:e=>n(e),readOnly:c},o.createElement(i.InlineField,{label:"CA Certificate",labelWidth:24,tooltip:null!=(u=null==l?void 0:l.certificateLabel)?u:"Your self-signed certificate",required:!0,htmlFor:"self-signed-certificate-input",interactive:!0,grow:!0,className:(0,a.cx)(d.inlineFieldNoMarginRight,d.inlineFieldWithSecret),disabled:c},o.createElement(i.SecretTextArea,{id:"self-signed-certificate-input",isConfigured:t,onChange:e=>r(e.currentTarget.value),onReset:c?()=>{}:s,placeholder:"Begins with --- BEGIN CERTIFICATE ---",rows:6,required:!0})))},x=({enabled:e,serverName:t,clientCertificateConfigured:n,clientKeyConfigured:r,onToggle:s,onServerNameChange:l,onClientCertificateChange:c,onClientKeyChange:u,onClientCertificateReset:d,onClientKeyReset:p,tooltips:h,readOnly:m})=>{var g,b,y;const w=f();return o.createElement(v,{enabled:e,label:"TLS Client Authentication",tooltipText:"Validate using TLS client authentication, in which the server authenticates the client",onToggle:e=>s(e),readOnly:m},o.createElement(i.InlineField,{label:"ServerName",labelWidth:24,tooltip:null!=(g=null==h?void 0:h.serverNameLabel)?g:"A Servername is used to verify the hostname on the returned certificate",required:!0,htmlFor:"client-auth-servername-input",interactive:!0,grow:!0,className:w.inlineFieldNoMarginRight,disabled:m},o.createElement(i.Input,{id:"client-auth-servername-input",placeholder:"domain.example.com",value:t,onChange:e=>l(e.currentTarget.value),required:!0})),o.createElement(i.InlineField,{label:"Client Certificate",labelWidth:24,tooltip:null!=(b=null==h?void 0:h.certificateLabel)?b:"The client certificate can be generated from a Certificate Authority or be self-signed",required:!0,htmlFor:"client-auth-client-certificate-input",interactive:!0,grow:!0,className:(0,a.cx)(w.inlineFieldNoMarginRight,w.inlineFieldWithSecret),disabled:m},o.createElement(i.SecretTextArea,{id:"client-auth-client-certificate-input",isConfigured:n,onChange:e=>c(e.currentTarget.value),onReset:m?()=>{}:d,placeholder:"Begins with --- BEGIN CERTIFICATE ---",rows:6,required:!0})),o.createElement(i.InlineField,{label:"Client Key",labelWidth:24,tooltip:null!=(y=null==h?void 0:h.keyLabel)?y:"The client key can be generated from a Certificate Authority or be self-signed",required:!0,htmlFor:"client-auth-client-key-input",interactive:!0,grow:!0,className:(0,a.cx)(w.inlineFieldNoMarginRight,w.inlineFieldWithSecret),disabled:m},o.createElement(i.SecretTextArea,{id:"client-auth-client-key-input",isConfigured:r,onChange:e=>u(e.currentTarget.value),onReset:m?()=>{}:p,placeholder:"Begins with --- RSA PRIVATE KEY CERTIFICATE ---",rows:6,required:!0})))},O=({enabled:e,onToggle:t,readOnly:n})=>o.createElement(v,{enabled:e,label:"Skip TLS certificate validation",tooltipText:"Skipping TLS certificate validation is not recommended unless absolutely necessary or for testing",onToggle:e=>t(e),readOnly:n}),j=({selfSignedCertificate:e,TLSClientAuth:t,skipTLSVerification:n,readOnly:r})=>{const{spacing:s}=(0,i.useTheme2)(),l={container:(0,a.css)({marginTop:s(3)})};return o.createElement(m,{className:l.container,title:"TLS settings",description:"Additional security measures that can be applied on top of authentication"},o.createElement(w,{...e,readOnly:r}),o.createElement(x,{...t,readOnly:r}),o.createElement(O,{...n,readOnly:r}))},C=({header:e,onChange:t,onBlur:n,onDelete:r,readOnly:s})=>{const{spacing:l}=(0,i.useTheme2)(),c=f(),u={container:(0,a.css)({alignItems:"center"}),input:(0,a.css)({minWidth:"100%"}),headerNameField:(0,a.css)({width:"40%",marginRight:0,paddingRight:l(1)}),headerValueField:(0,a.css)({width:"45%",marginRight:0}),removeHeaderBtn:(0,a.css)({margin:"0 0 3px 10px"})};return o.createElement(o.Fragment,null,o.createElement(i.InlineFieldRow,{className:u.container},o.createElement(i.InlineField,{label:"Header",labelWidth:9,grow:!0,className:u.headerNameField,htmlFor:`custom-header-${e.id}-name-input`,disabled:s},o.createElement(i.Input,{id:`custom-header-${e.id}-name-input`,placeholder:"X-Custom-Header",value:e.name,width:12,onChange:n=>t({...e,name:n.currentTarget.value}),onBlur:n,className:u.input})),o.createElement(i.InlineField,{label:"Value",labelWidth:9,grow:!0,className:(0,a.cx)(c.inlineFieldWithSecret,u.headerValueField),htmlFor:`custom-header-${e.id}-value-input`,disabled:s},o.createElement(i.SecretInput,{id:`custom-header-${e.id}-value-input`,isConfigured:e.configured,placeholder:"Header value",value:e.value,width:12,onChange:n=>t({...e,value:n.currentTarget.value}),onReset:s?()=>{}:()=>t({...e,configured:!1,value:""}),onBlur:n,className:u.input})),o.createElement(i.IconButton,{name:"trash-alt",tooltip:"Remove header",tooltipPlacement:"top",className:u.removeHeaderBtn,onClick:r,type:"button",disabled:s})))},S=({headers:e,onChange:t,readOnly:n})=>{const{spacing:r}=(0,i.useTheme2)(),[s,l]=(0,o.useState)(e.map((e=>({...e,id:E(),value:""}))));(0,o.useEffect)((()=>{l((t=>{let n=!1;const r=t.map((t=>{var r;const a=null==(r=e.find((e=>e.name===t.name)))?void 0:r.configured;return void 0!==a&&t.configured!==a?(n=!0,{...t,configured:a}):t}));return n?r:t}))}),[e]);const c=()=>{t(s.map((({name:e,value:t,configured:n})=>({name:e,value:t,configured:n}))))},u={container:(0,a.css)({marginTop:r(3)}),addHeaderButton:(0,a.css)({marginTop:r(1.5)})};return o.createElement("div",{className:u.container},o.createElement(m,{title:"HTTP headers",description:"Pass along additional context and metadata about the request/response",isCollapsible:!0,isInitiallyOpen:s.length>0},o.createElement("div",null,s.map((e=>o.createElement(C,{key:e.id,header:e,onChange:e=>((e,t)=>{l(s.map((n=>n.id===e?{...t}:n)))})(e.id,e),onDelete:()=>(e=>{const n=s.findIndex((t=>t.id===e));if(-1===n)return;const r=[...s];r.splice(n,1),l(r),t(r.map((({name:e,value:t,configured:n})=>({name:e,value:t,configured:n}))))})(e.id),onBlur:c,readOnly:n})))),o.createElement("div",{className:u.addHeaderButton},o.createElement(i.Button,{icon:"plus",variant:"secondary",fill:"outline",onClick:()=>{l([...s,{id:E(),name:"",value:"",configured:!1}])},disabled:n},0===s.length?"Add header":"Add another header"))))};function E(){return Math.random().toString(16).slice(2)}const T=({selectedMethod:e,mostCommonMethod:t,visibleMethods:n,defaultOptionsOverrides:r,customMethods:i,onAuthMethodSelect:s,basicAuth:l,TLS:u,customHeaders:d,readOnly:p=!1})=>{const f={container:(0,a.css)({maxWidth:578})};return o.createElement("div",{className:f.container},o.createElement(c,{title:"Authentication"},o.createElement(y,{selectedMethod:e,mostCommonMethod:t,customMethods:i,visibleMethods:n,defaultOptionsOverrides:r,onAuthMethodSelect:s,basicAuth:l,readOnly:p}),u&&o.createElement(j,{...u,readOnly:p}),d&&o.createElement(S,{...d,readOnly:p})))},A="httpHeaderName",P="httpHeaderValue";function N({config:e,onChange:t}){return{selectedMethod:I(e),onAuthMethodSelect:k(e,t),basicAuth:L(e,t),TLS:D(e,t),customHeaders:F(e,t),readOnly:e.readOnly}}function I(e){return e.basicAuth?g.BasicAuth:e.withCredentials?g.CrossSiteCredentials:e.jsonData.oauthPassThru?g.OAuthForward:g.NoAuth}function k(e,t){return n=>{t({...e,basicAuth:n===g.BasicAuth,withCredentials:n===g.CrossSiteCredentials,jsonData:{...e.jsonData,oauthPassThru:n===g.OAuthForward}})}}function L(e,t){return{user:e.basicAuthUser,passwordConfigured:e.secureJsonFields.basicAuthPassword,onUserChange:n=>t({...e,basicAuthUser:n}),onPasswordChange:n=>t({...e,secureJsonData:{...e.secureJsonData,basicAuthPassword:n}}),onPasswordReset:()=>t({...e,secureJsonData:{...e.secureJsonData,basicAuthPassword:""},secureJsonFields:{...e.secureJsonFields,basicAuthPassword:!1}})}}function D(e,t){var n,r,a;return{selfSignedCertificate:{enabled:Boolean(e.jsonData.tlsAuthWithCACert),certificateConfigured:!!(null==(n=e.secureJsonFields)?void 0:n.tlsCACert),onToggle:n=>t(n?{...e,jsonData:{...e.jsonData,tlsAuthWithCACert:n}}:{...e,jsonData:{...e.jsonData,tlsAuthWithCACert:n},secureJsonData:{...e.secureJsonData,tlsCACert:""},secureJsonFields:{...e.secureJsonFields,tlsCACert:!1}}),onCertificateChange:n=>t({...e,secureJsonData:{...e.secureJsonData,tlsCACert:n}}),onCertificateReset:()=>t({...e,secureJsonData:{...e.secureJsonData,tlsCACert:""},secureJsonFields:{...e.secureJsonFields,tlsCACert:!1}})},TLSClientAuth:{enabled:e.jsonData.tlsAuth,serverName:e.jsonData.serverName,clientCertificateConfigured:!!(null==(r=e.secureJsonFields)?void 0:r.tlsClientCert),clientKeyConfigured:!!(null==(a=e.secureJsonFields)?void 0:a.tlsClientKey),onToggle:n=>t(n?{...e,jsonData:{...e.jsonData,tlsAuth:n}}:{...e,jsonData:{...e.jsonData,tlsAuth:n,serverName:""},secureJsonData:{...e.secureJsonData,tlsClientCert:"",tlsClientKey:""},secureJsonFields:{...e.secureJsonFields,tlsClientCert:!1,tlsClientKey:!1}}),onServerNameChange:n=>t({...e,jsonData:{...e.jsonData,serverName:n}}),onClientCertificateChange:n=>t({...e,secureJsonData:{...e.secureJsonData,tlsClientCert:n}}),onClientCertificateReset:()=>t({...e,secureJsonData:{...e.secureJsonData,tlsClientCert:""},secureJsonFields:{...e.secureJsonFields,tlsClientCert:!1}}),onClientKeyChange:n=>t({...e,secureJsonData:{...e.secureJsonData,tlsClientKey:n}}),onClientKeyReset:()=>t({...e,secureJsonData:{...e.secureJsonData,tlsClientKey:""},secureJsonFields:{...e.secureJsonFields,tlsClientKey:!1}})},skipTLSVerification:{enabled:e.jsonData.tlsSkipVerify,onToggle:n=>t({...e,jsonData:{...e.jsonData,tlsSkipVerify:n}})}}}function F(e,t){return{headers:Object.keys(e.jsonData).filter((e=>e.startsWith(A))).sort().map((t=>{var n;const r=t.slice(14);return{name:e.jsonData[t],configured:null!=(n=e.secureJsonFields[`${P}${r}`])&&n}})),onChange:n=>{const r=Object.fromEntries(Object.entries(e.jsonData).filter((([e])=>!e.startsWith(A)))),a=Object.fromEntries(Object.entries(e.secureJsonData||{}).filter((([e])=>!e.startsWith(P)))),o=Object.fromEntries(Object.entries(e.secureJsonFields).filter((([e])=>!e.startsWith(P))));n.forEach(((e,t)=>{r[`${A}${t+1}`]=e.name,e.configured?o[`${P}${t+1}`]=!0:a[`${P}${t+1}`]=e.value})),t({...e,jsonData:r,secureJsonData:a,secureJsonFields:o})}}}const $=({config:e,onChange:t,className:n})=>{const r={container:(0,a.css)({maxWidth:578})};return o.createElement(m,{title:"Advanced HTTP settings",className:(0,a.cx)(r.container,n)},o.createElement(i.InlineField,{htmlFor:"advanced-http-cookies",label:"Allowed cookies",labelWidth:24,tooltip:"Grafana proxy deletes forwarded cookies by default. Specify cookies by name that should be forwarded to the data source.",disabled:e.readOnly,grow:!0},o.createElement(i.TagsInput,{id:"advanced-http-cookies",placeholder:"New cookie (hit enter to add)",tags:e.jsonData.keepCookies,onChange:n=>{t({...e,jsonData:{...e.jsonData,keepCookies:n}})}})),o.createElement(i.InlineField,{htmlFor:"advanced-http-timeout",label:"Timeout",labelWidth:24,tooltip:"HTTP request timeout in seconds",disabled:e.readOnly,grow:!0},o.createElement(i.Input,{id:"advanced-http-timeout",type:"number",min:0,placeholder:"Timeout in seconds","aria-label":"Timeout in seconds",value:e.jsonData.timeout,onChange:n=>{t({...e,jsonData:{...e.jsonData,timeout:parseInt(n.currentTarget.value,10)}})}})))};var _=d(531);function R(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function M(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),r.forEach((function(t){R(e,t,n[t])}))}return e}function q(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})),e}const B=e=>({container:(0,a.css)({marginBottom:e.spacing(2),maxWidth:"900px"})});var U=d(513),W=d.n(U),V=d(241),z=d(146),J=d.n(z),Q=d(269);function G(e,t,n,r,a,o,i){try{var s=e[o](i),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,a)}function K(e){const t=(n=e.profileTypes,(0,o.useMemo)((()=>{if(!n)return[];let e=new Map;for(let r of n){var t;let n=[];r.id.indexOf(":")>-1&&(n=r.id.split(":"));const[a,o]=n;e.has(a)||e.set(a,{label:a,value:a,items:[]}),null===(t=e.get(a))||void 0===t||t.items.push({label:o,value:r.id})}return Array.from(e.values())}),[n]));var n,a;return(0,r.jsx)(i.Cascader,{placeholder:e.placeholder,separator:"-",displayAllSelectedLevels:!0,initialValue:e.initialProfileTypeId,allowCustomValue:!0,onSelect:e.onChange,options:t,changeOnSelect:!1,width:null!==(a=e.width)&&void 0!==a?a:26})}function H(e,t){const[n,r]=(0,o.useState)(),a={to:6e4*Math.ceil(((null==t?void 0:t.to.valueOf())||0)/6e4),from:6e4*Math.floor(((null==t?void 0:t.from.valueOf())||0)/6e4)};return(0,o.useEffect)((()=>{var t;(t=function*(){const t=yield e.getProfileTypes(a.from.valueOf(),a.to.valueOf());r(t)},function(){var e=this,n=arguments;return new Promise((function(r,a){var o=t.apply(e,n);function i(e){G(o,r,a,i,s,"next",e)}function s(e){G(o,r,a,i,s,"throw",e)}i(void 0)}))})()}),[e,a.from,a.to]),n}function Y(e,t,n,r,a,o,i){try{var s=e[o](i),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,a)}function Z(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function X(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),r.forEach((function(t){Z(e,t,n[t])}))}return e}function ee(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})),e}function te(e){var t,n;return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(i.InlineFieldRow,{children:(0,r.jsx)(i.InlineField,{label:"Query type",labelWidth:20,tooltip:(0,r.jsx)("div",{children:"The Pyroscope data source plugin provides the following query types for template variables"}),children:(0,r.jsx)(i.Select,{placeholder:"Select query type","aria-label":"Query type",width:25,options:[{label:"Profile type",value:"profileType"},{label:"Label",value:"label"},{label:"Label value",value:"labelValue"}],onChange:t=>{"profileType"===t.value&&e.onChange({type:t.value,refId:e.query.refId}),"label"!==t.value&&"labelValue"!==t.value||e.onChange({type:t.value,refId:e.query.refId,profileTypeId:"profileType"!==e.query.type?e.query.profileTypeId:""})},value:e.query.type})})}),("labelValue"===e.query.type||"label"===e.query.type)&&(0,r.jsx)(re,{datasource:e.datasource,initialValue:e.query.profileTypeId,onChange:t=>{"label"!==e.query.type&&"labelValue"!==e.query.type||e.onChange(ee(X({},e.query),{profileTypeId:t}))},range:e.range}),"labelValue"===e.query.type&&(0,r.jsx)(ne,{value:e.query.labelName,datasource:e.datasource,profileTypeId:e.query.profileTypeId,onChange:t=>{"labelValue"===e.query.type&&e.onChange(ee(X({},e.query),{labelName:t}))},from:(null===(t=e.range)||void 0===t?void 0:t.from.valueOf())||Date.now().valueOf()-864e5,to:(null===(n=e.range)||void 0===n?void 0:n.to.valueOf())||Date.now().valueOf()})]})}function ne(e){const[t,n]=(0,o.useState)();(0,o.useEffect)((()=>{var t;(t=function*(){n(yield e.datasource.getLabelNames(e.profileTypeId?ae(e.profileTypeId):"{}",e.from,e.to))},function(){var e=this,n=arguments;return new Promise((function(r,a){var o=t.apply(e,n);function i(e){Y(o,r,a,i,s,"next",e)}function s(e){Y(o,r,a,i,s,"throw",e)}i(void 0)}))})()}),[e.datasource,e.profileTypeId,e.to,e.from]);const a=t?t.map((e=>({label:e,value:e}))):[];return t&&e.value&&!t.find((t=>t===e.value))&&a.push({value:e.value,label:e.value}),(0,r.jsx)(i.InlineFieldRow,{children:(0,r.jsx)(i.InlineField,{label:"Label",labelWidth:20,tooltip:(0,r.jsx)("div",{children:"Select label for which to retrieve available values"}),children:(0,r.jsx)(i.Select,{allowCustomValue:!0,placeholder:"Select label","aria-label":"Select label",width:25,options:a,onChange:t=>e.onChange(t.value),value:e.value})})})}function re(e){const t=H(e.datasource,e.range);return(0,r.jsx)(i.InlineFieldRow,{children:(0,r.jsx)(i.InlineField,{label:"Profile type","aria-label":"Profile type",labelWidth:20,tooltip:(0,r.jsx)("div",{children:"Select profile type for which to retrieve available labels"}),children:t?(0,r.jsx)(K,{onChange:e.onChange,profileTypes:t,initialProfileTypeId:e.initialValue}):(0,r.jsx)(i.LoadingPlaceholder,{text:"Loading"})})})}function ae(e){return`{__profile_type__="${e}"}`}function oe(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class ie extends n.CustomVariableSupport{query(e){return"profileType"===e.targets[0].type?(0,Q.from)(this.dataAPI.getProfileTypes(e.range.from.valueOf(),e.range.to.valueOf())).pipe((0,Q.map)((e=>({data:e.map((e=>({text:e.label,value:e.id})))})))):"label"===e.targets[0].type?e.targets[0].profileTypeId?(0,Q.from)(this.dataAPI.getLabelNames(ae(e.targets[0].profileTypeId),e.range.from.valueOf(),e.range.to.valueOf())).pipe((0,Q.map)((e=>({data:e.map((e=>({text:e})))})))):(0,Q.of)({data:[]}):"labelValue"===e.targets[0].type&&e.targets[0].labelName&&e.targets[0].profileTypeId?(0,Q.from)(this.dataAPI.getLabelValues(ae(e.targets[0].profileTypeId),e.targets[0].labelName,e.range.from.valueOf(),e.range.to.valueOf())).pipe((0,Q.map)((e=>({data:e.map((e=>({text:e})))})))):(0,Q.of)({data:[]})}constructor(e){super(),oe(this,"dataAPI",void 0),oe(this,"editor",void 0),this.dataAPI=e,this.editor=te}}var se=d(127);function le(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ce(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})),e}function ue(e){const t=[];for(const n of e)if(n instanceof z.Token&&"context-labels"===n.type){let e="",r="",a="";const o=Array.isArray(n.content)?n.content:[n.content];for(let n of o)if("string"==typeof n){let e;e=n,"="!==e&&"!="!==e&&"=~"!==e&&"!~"!==e||(a=e)}else if(n instanceof z.Token)switch(n.type){case"label-key":e=pe(n);break;case"label-value":r=pe(n),r=r.substring(1,r.length-1);const o=fe[a];o&&t.push({name:e,operator:o,value:r})}}return t}function de(e){const t=e.map((e=>{const t=he[e.operator];return t?`${e.name}${t}"${e.value}"`:""})).filter((e=>""!==e)).join(", ");return t?`{${t}}`:""}function pe(e){return"string"==typeof e.content?e.content:""}const fe={"=":n.AbstractLabelOperator.Equal,"!=":n.AbstractLabelOperator.NotEqual,"=~":n.AbstractLabelOperator.EqualRegEx,"!~":n.AbstractLabelOperator.NotEqualRegEx},he=(0,V.invert)(fe);function me(e,t,r,a="="){if(!t||!r)throw new Error("Need label to add to query.");let o=ue(J().tokenize(e,ge));var i;return o=o.filter((e=>e.name!==t)),o.push({name:t,value:r.toString(),operator:null!==(i=fe[a])&&void 0!==i?i:n.AbstractLabelOperator.Equal}),de(o)}const ge={"context-labels":{pattern:/\{[^}]*(?=}?)/,greedy:!0,inside:{comment:{pattern:/#.*/},"label-key":{pattern:/[a-zA-Z_]\w*(?=\s*(=|!=|=~|!~))/,alias:"attr-name",greedy:!0},"label-value":{pattern:/"(?:\\.|[^\\"])*"/,greedy:!0,alias:"attr-value"},punctuation:/[{]/}},punctuation:/[{}(),.]/};function be(e,t){const n=e.targets;return t=>(t.data=t.data.map((t=>{var r,a,o;if("flamegraph"!==(null===(r=t.meta)||void 0===r?void 0:r.preferredVisualisationType))return t;const i=n.find((e=>e.refId===t.refId));if(!i||!(null===(a=i.datasource)||void 0===a?void 0:a.uid)||!(null===(o=i.datasource)||void 0===o?void 0:o.type))return t;const s=[(0,se.createAssistantContextItem)("datasource",{datasourceUid:i.datasource.uid}),(0,se.createAssistantContextItem)("structured",{title:"Analyze Flame Graph",data:{start:e.range.from.valueOf(),end:e.range.to.valueOf(),profile_type_id:i.profileTypeId,label_selector:i.labelSelector,operation:"execute"}})];return t.meta=t.meta||{},t.meta.custom=ce(function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),r.forEach((function(t){le(e,t,n[t])}))}return e}({},t.meta.custom),{assistantContext:s}),t})),t)}function ye(e,t,n,r,a,o,i){try{var s=e[o](i),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,a)}function ve(e){return function(){var t=this,n=arguments;return new Promise((function(r,a){var o=e.apply(t,n);function i(e){ye(o,r,a,i,s,"next",e)}function s(e){ye(o,r,a,i,s,"throw",e)}i(void 0)}))}}function we(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function xe(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),r.forEach((function(t){we(e,t,n[t])}))}return e}function Oe(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})),e}class je extends _.DataSourceWithBackend{query(e){const t=e.targets.filter((e=>e.profileTypeId)).map((t=>""===t.labelSelector?Oe(xe({},t),{labelSelector:"{}"}):Se(t,e.app)));return t.length?super.query(Oe(xe({},e),{targets:t})).pipe((0,Q.map)(be(e,this.name))):(0,Q.of)({data:[]})}getProfileTypes(e,t){return ve((function*(){return yield this.getResource("profileTypes",{start:e,end:t})})).call(this)}getAllProfileTypes(){return ve((function*(){return yield this.getResource("profileTypes")})).call(this)}getLabelNames(e,t,n){return ve((function*(){return yield this.getResource("labelNames",{query:this.templateSrv.replace(e),start:t,end:n})})).call(this)}getLabelValues(e,t,n,r){return ve((function*(){return yield this.getResource("labelValues",{label:this.templateSrv.replace(t),query:this.templateSrv.replace(e),start:n,end:r})})).call(this)}getTagKeys(e){return ve((function*(){const t=this.adhocFilterData(e);return(yield this.getLabelNames(t.query,t.from,t.to)).map((e=>({text:e})))})).call(this)}getTagValues(e){return ve((function*(){const t=this.adhocFilterData(e);return(yield this.getLabelValues(t.query,e.key,t.from,t.to)).map((e=>({text:e})))})).call(this)}adhocFilterData(e){var t,n,r;var a;return{from:null!==(r=null===(t=e.timeRange)||void 0===t?void 0:t.from.valueOf())&&void 0!==r?r:Date.now()-864e5,to:null!==(a=null===(n=e.timeRange)||void 0===n?void 0:n.to.valueOf())&&void 0!==a?a:Date.now(),query:"{"+e.filters.map((e=>`${e.key}${e.operator}"${e.value}"`)).join(",")+"}"}}applyTemplateVariables(e,t,n){var r;let a=this.templateSrv.replace(null!==(r=e.labelSelector)&&void 0!==r?r:"",t);if(n&&a)for(const e of n)a=me(a,e.key,e.value,e.operator);var o;return Oe(xe({},e),{labelSelector:a,profileTypeId:this.templateSrv.replace(null!==(o=e.profileTypeId)&&void 0!==o?o:"",t)})}importFromAbstractQueries(e){return ve((function*(){return e.map((e=>this.importFromAbstractQuery(e)))})).call(this)}importFromAbstractQuery(e){return{refId:e.refId,labelSelector:de(e.labelMatchers),queryType:"both",profileTypeId:"",groupBy:[]}}exportToAbstractQueries(e){return ve((function*(){return e.map((e=>this.exportToAbstractQuery(e)))})).call(this)}exportToAbstractQuery(e){const t=e.labelSelector;if(!t||0===t.length)return{refId:e.refId,labelMatchers:[]};const n=J().tokenize(t,ge);return{refId:e.refId,labelMatchers:ue(n)}}getDefaultQuery(e){return Ce}constructor(e,t=(0,_.getTemplateSrv)()){super(e),we(this,"templateSrv",void 0),this.templateSrv=t,this.variables=new ie(this)}}const Ce=Oe(xe({},{groupBy:[],labelSelector:"{}",spanSelector:[]}),{queryType:"both"});function Se(e,t){let r=xe({},Ce,e);return t!==n.CoreApp.Explore&&"both"===r.queryType&&(r.queryType="profile"),r}function Ee(e){const t=(0,i.useStyles2)(Te,e);return(0,r.jsx)("div",{className:t.root,children:e.children})}const Te=(e,t)=>{var n,r,o;return{root:(0,a.css)({display:"flex",flexDirection:null!==(n=t.direction)&&void 0!==n?n:"row",flexWrap:null===(r=t.wrap)||void 0===r||r?"wrap":void 0,alignItems:t.alignItems,gap:e.spacing(null!==(o=t.gap)&&void 0!==o?o:2),flexGrow:t.flexGrow})}};function Ae(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Pe(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),r.forEach((function(t){Ae(e,t,n[t])}))}return e}function Ne(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})),e}const Ie=({children:e,stackProps:t})=>{const n=(0,i.useStyles2)(ke);return(0,r.jsx)("div",{className:n.root,children:(0,r.jsx)(Ee,Ne(Pe({gap:2},t),{children:e}))})},ke=e=>({root:(0,a.css)({padding:e.spacing(1),backgroundColor:e.colors.background.secondary,borderRadius:e.shape.radius.default})}),Le=({children:e})=>(0,r.jsx)(Ee,{gap:.5,direction:"column",children:e});const De=function(e){var t=(0,o.useRef)(e);return t.current=e,t};var Fe=function(){return Fe=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var a in t=arguments[n])Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a]);return e},Fe.apply(this,arguments)};Object.create;Object.create;"function"==typeof SuppressedError&&SuppressedError;function $e(e,t,n){void 0===t&&(t=[]),void 0===n&&(n={loading:!1});var r,a,i=(0,o.useRef)(0),s=(r=(0,o.useRef)(!1),a=(0,o.useCallback)((function(){return r.current}),[]),(0,o.useEffect)((function(){return r.current=!0,function(){r.current=!1}}),[]),a),l=(0,o.useState)(n),c=l[0],u=l[1],d=(0,o.useCallback)((function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var r=++i.current;return c.loading||u((function(e){return Fe(Fe({},e),{loading:!0})})),e.apply(void 0,t).then((function(e){return s()&&r===i.current&&u({value:e,loading:!1}),e}),(function(e){return s()&&r===i.current&&u({error:e,loading:!1}),e}))}),t);return[c,d]}const _e={id:"pyroscopeql",extensions:[".pyroscopeql"],aliases:["pyroscope","pyroscopeql"],mimetypes:[],def:{language:{ignoreCase:!1,defaultToken:"",tokenPostfix:".pyroscopeql",keywords:[],operators:[],symbols:/[=><!~?:&|+\-*\/^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,integersuffix:/(ll|LL|u|U|l|L)?(ll|LL|u|U|l|L)?/,floatsuffix:/[fFlL]?/,tokenizer:{root:[[/[a-z_]\w*(?=\s*(=|!=|=~|!~))/,"tag"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string_double"],[/'/,"string","@string_single"],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d+/,"number"],[/\d*\d+[eE]([\-+]?\d+)?(@floatsuffix)/,"number.float"],[/\d*\.\d+([eE][\-+]?\d+)?(@floatsuffix)/,"number.float"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F](@integersuffix)/,"number.hex"],[/0[0-7']*[0-7](@integersuffix)/,"number.octal"],[/0[bB][0-1']*[0-1](@integersuffix)/,"number.binary"],[/\d[\d']*\d(@integersuffix)/,"number"],[/\d(@integersuffix)/,"number"]],string_double:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],string_single:[[/[^\\']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/'/,"string","@pop"]],clauses:[[/[^(,)]/,"tag"],[/\)/,"identifier","@pop"]],whitespace:[[/[ \t\r\n]+/,"white"]]}},languageConfiguration:{wordPattern:/(-?\d*\.\d\w*)|([^`~!#%^&*()=+\[{\]}\\|;:'",<>\/?\s]+)/g,brackets:[["{","}"]],autoClosingPairs:[{open:"{",close:"}"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{}}}};function Re(e,t,n,r,a,o,i){try{var s=e[o](i),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,a)}function Me(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class qe{init(e,t){this.labels=e,this.getLabelValues=t}provideCompletionItems(e,t){var n;if(!this.monaco||!this.editor)throw new Error("provideCompletionItems called before CompletionProvider was initialized");if((null===(n=this.editor.getModel())||void 0===n?void 0:n.id)!==e.id)return{suggestions:[]};const{range:r,offset:a}=function(e,t,n){const r=t.getWordAtPosition(n),a=null!=r?e.Range.lift({startLineNumber:n.lineNumber,endLineNumber:n.lineNumber,startColumn:r.startColumn,endColumn:r.endColumn}):e.Range.fromPositions(n),o={column:n.column,lineNumber:n.lineNumber},i=t.getOffsetAt(o);return{offset:i,range:a}}(this.monaco,e,t),o=function(e,t){if(""===e)return{type:"EMPTY"};const n=e.matchAll(Ve),r=Array.from(n).reduce(((e,t)=>{const[n,r,a]=t[1];return e.push({name:r,value:a}),e}),[]),a=e.substring(0,t).match(ze);if(a)return{type:"IN_LABEL_VALUE",labelName:a[1],betweenQuotes:!!a[2],otherLabels:r};const o=e.substring(0,t).match(Je);if(o)return{type:"IN_LABEL_NAME",otherLabels:r};return{type:"UNKNOWN"}}(e.getValue(),a);return this.getCompletions(o).then((e=>{const t=e.length.toString().length;return{suggestions:e.map(((e,n)=>({kind:Be(e.type,this.monaco),label:e.label,insertText:e.insertText,sortText:n.toString().padStart(t,"0"),range:r})))}}))}getCompletions(e){return(t=function*(){switch(e.type){case"UNKNOWN":return[];case"EMPTY":return this.labels.map((e=>({label:e,insertText:`{${e}="`,type:"LABEL_NAME"})));case"IN_LABEL_NAME":return this.labels.map((e=>({label:e,insertText:e,type:"LABEL_NAME"})));case"IN_LABEL_VALUE":let t=yield this.getLabelValues(e.labelName);return t?t.map((t=>({label:t,insertText:e.betweenQuotes?t:`"${t}"`,type:"LABEL_VALUE"}))):[];default:throw new Error(`Unexpected situation ${e}`)}},function(){var e=this,n=arguments;return new Promise((function(r,a){var o=t.apply(e,n);function i(e){Re(o,r,a,i,s,"next",e)}function s(e){Re(o,r,a,i,s,"throw",e)}i(void 0)}))}).call(this);var t}constructor(){Me(this,"triggerCharacters",["{",",","[","(","=","~"," ",'"']),Me(this,"monaco",void 0),Me(this,"editor",void 0),Me(this,"labels",[]),Me(this,"getLabelValues",(()=>Promise.resolve([])))}}function Be(e,t){switch(e){case"LABEL_NAME":return t.languages.CompletionItemKind.Enum;case"LABEL_VALUE":return t.languages.CompletionItemKind.EnumMember;default:throw new Error(`Unexpected CompletionType: ${e}`)}}const Ue=/[a-zA-Z_][a-zA-Z0-9_]*/,We=/[^"]*/,Ve=new RegExp(`(${Ue.source})="(${We.source})"`,"g"),ze=new RegExp(`(${Ue.source})=("?)${We.source}$`),Je=new RegExp(/[{,]\s*[a-zA-Z0-9_]*$/);function Qe(e,t,n,r,a,o,i){try{var s=e[o](i),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,a)}function Ge(e){const t=function(e,t){const n=(0,o.useRef)();void 0===n.current&&(n.current=new qe);!function(e,t){void 0===t&&(t=[]);var n=$e(e,t,{loading:!0}),r=n[0],a=n[1];(0,o.useEffect)((function(){a()}),[a])}((()=>{return(r=function*(){n.current&&n.current.init(t||[],e)},function(){var e=this,t=arguments;return new Promise((function(n,a){var o=r.apply(e,t);function i(e){Qe(o,n,a,i,s,"next",e)}function s(e){Qe(o,n,a,i,s,"throw",e)}i(void 0)}))})();var r}),[t,e]);const r=(0,o.useRef)(null);return(0,o.useEffect)((()=>()=>{var e;null===(e=r.current)||void 0===e||e.call(r)}),[]),(e,t)=>{if(n.current){n.current.editor=e,n.current.monaco=t;const{dispose:a}=t.languages.registerCompletionItemProvider(Ye,n.current);r.current=a}}}(e.getLabelValues,e.labels),n=(0,i.useStyles2)(Xe),a=De(e.onRunQuery),s=(0,o.useRef)(null);return(0,r.jsx)("div",{className:n.wrapper,ref:s,children:(0,r.jsx)(i.CodeEditor,{value:e.value,language:Ye,onChange:e.onChange,containerStyles:n.queryField,monacoOptions:{folding:!1,fontSize:14,lineNumbers:"off",overviewRulerLanes:0,renderLineHighlight:"none",scrollbar:{vertical:"hidden",verticalScrollbarSize:8,horizontal:"hidden",horizontalScrollbarSize:0},scrollBeyondLastLine:!1,wordWrap:"on",padding:{top:4,bottom:5}},onBeforeEditorMount:Ze,onEditorDidMount:(e,n)=>{t(e,n);const r=()=>{const t=s.current;if(null!==t){const n=e.getContentHeight();t.style.height=`${n+Ke}px`,t.style.width="100%";const r=t.clientWidth;e.layout({width:r,height:n})}};e.onDidContentSizeChange(r),r(),e.addCommand(n.KeyMod.Shift|n.KeyCode.Enter,(()=>{a.current(e.getValue())}))}})})}const Ke=2;let He=!1;const Ye="pyroscopeql";function Ze(e){if(!1===He){He=!0;const{aliases:t,extensions:n,mimetypes:r,def:a}=_e;e.languages.register({id:Ye,aliases:t,extensions:n,mimetypes:r}),e.languages.setMonarchTokensProvider(Ye,a.language),e.languages.setLanguageConfiguration(Ye,a.languageConfiguration)}}const Xe=e=>({queryField:(0,a.css)({label:"LabelsEditorQueryField",flex:1,width:"100px"}),wrapper:(0,a.css)({label:"LabelsEditorWrapper",display:"flex",flex:1,border:"1px solid rgba(36, 41, 46, 0.3)",borderRadius:e.shape.radius.default})});function et(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function tt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),r.forEach((function(t){et(e,t,n[t])}))}return e}function nt(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})),e}function rt(e,t){if(null==e)return{};var n,r,a=function(e,t){if(null==e)return{};var n,r,a={},o=Object.keys(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}const at=e=>{const{label:t,optional:n,tooltip:a,children:o,width:s}=e,l=rt(e,["label","optional","tooltip","children","width"]),c=(0,i.useStyles2)(ot,s),u=(null==l?void 0:l.htmlFor)||(null===i.ReactUtils||void 0===i.ReactUtils?void 0:i.ReactUtils.getChildId(o)),d=(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("label",{className:c.label,htmlFor:u,children:[t,n&&(0,r.jsx)("span",{className:c.optional,children:" - optional"}),a&&(0,r.jsx)(i.Tooltip,{placement:"top",content:a,theme:"info",children:(0,r.jsx)(i.Icon,{name:"info-circle",size:"sm",className:c.icon})})]}),(0,r.jsx)("span",{className:c.space})]});return(0,r.jsx)("div",{className:c.root,children:(0,r.jsx)(i.Field,nt(tt({className:c.field,label:d},l),{children:o}))})},ot=(e,t)=>({space:(0,a.css)({paddingRight:e.spacing(0),paddingBottom:e.spacing(.5)}),root:(0,a.css)({minWidth:e.spacing(null!=t?t:0)}),label:(0,a.css)({fontSize:12,fontWeight:e.typography.fontWeightMedium}),optional:(0,a.css)({fontStyle:"italic",color:e.colors.text.secondary}),field:(0,a.css)({marginBottom:0}),icon:(0,a.css)({color:e.colors.text.secondary,marginLeft:e.spacing(1),":hover":{color:e.colors.text.primary}})});var it=function(e,t){return"boolean"==typeof t?t:!e};const st=function(e){return(0,o.useReducer)(it,e)};function lt({title:e,children:t,collapsedInfo:n}){const[a,o]=st(!1),s=(0,i.useStyles2)(ct);return(0,r.jsx)("div",{className:s.wrapper,children:(0,r.jsx)(i.Collapse,{className:s.collapse,isOpen:a,onToggle:o,label:(0,r.jsxs)(i.Stack,{gap:0,children:[(0,r.jsx)("h6",{className:s.title,children:e}),!a&&(0,r.jsx)("div",{className:s.description,children:n.map(((e,t)=>(0,r.jsx)("span",{children:e},t)))})]}),children:(0,r.jsx)("div",{className:s.body,children:t})})})}const ct=e=>({collapse:(0,a.css)({backgroundColor:"unset",border:"unset",marginBottom:0,"> button":{padding:e.spacing(0,1)}}),wrapper:(0,a.css)({width:"100%",display:"flex",justifyContent:"space-between",alignItems:"baseline"}),title:(0,a.css)({flexGrow:1,overflow:"hidden",fontSize:e.typography.bodySmall.fontSize,fontWeight:e.typography.fontWeightMedium,margin:0}),description:(0,a.css)({color:e.colors.text.secondary,fontSize:e.typography.bodySmall.fontSize,fontWeight:e.typography.bodySmall.fontWeight,paddingLeft:e.spacing(2),gap:e.spacing(2),display:"flex"}),body:(0,a.css)({display:"flex",gap:e.spacing(2),flexWrap:"wrap"})});function ut(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function dt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),r.forEach((function(t){ut(e,t,n[t])}))}return e}function pt(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})),e}const ft=[{value:"metrics",label:"Metric",description:"Return aggregated metrics"},{value:"profile",label:"Profile",description:"Return profile"},{value:"both",label:"Both",description:"Return both metric and profile data"}];function ht(e){return e===n.CoreApp.Explore?ft:ft.filter((e=>"both"!==e.value))}function mt({query:e,onQueryChange:t,app:n,labels:a}){var o,s;const l=(0,i.useStyles2)(gt),c=ht(n),u=a?a.map((e=>({label:e,value:e}))):[];let d=[`Type: ${e.queryType}`];return(null===(o=e.groupBy)||void 0===o?void 0:o.length)&&d.push(`Group by: ${e.groupBy.join(", ")}`),e.limit&&d.push(`Limit: ${e.limit}`),(null===(s=e.spanSelector)||void 0===s?void 0:s.length)&&d.push(`Span ID: ${e.spanSelector.join(", ")}`),e.maxNodes&&d.push(`Max nodes: ${e.maxNodes}`),(0,r.jsx)(Ee,{gap:0,direction:"column",children:(0,r.jsx)(lt,{title:"Options",collapsedInfo:d,children:(0,r.jsxs)("div",{className:l.body,children:[(0,r.jsx)(at,{label:"Query Type",children:(0,r.jsx)(i.RadioButtonGroup,{options:c,value:e.queryType,onChange:n=>t(pt(dt({},e),{queryType:n}))})}),(0,r.jsx)(at,{label:"Group by",tooltip:(0,r.jsx)(r.Fragment,{children:"Used to group the metric result by a specific label or set of labels. Does not apply to profile query."}),children:(0,r.jsx)(i.MultiSelect,{placeholder:"Label",value:e.groupBy,allowCustomValue:!0,options:u,onChange:n=>{const r=n.map((e=>e.value));t(pt(dt({},e),{groupBy:r}))}})}),(0,r.jsx)(at,{label:"Limit",tooltip:(0,r.jsx)(r.Fragment,{children:'When "Group by" is set, limits the maximum number of series to return. Does not apply to profile query.'}),children:(0,r.jsx)(i.Input,{value:e.limit||"",type:"number",placeholder:"0",onChange:n=>{let r=parseInt(n.currentTarget.value,10);r=isNaN(r)?0:r,t(pt(dt({},e),{limit:r}))}})}),(0,r.jsx)(at,{label:"Span ID",tooltip:(0,r.jsx)(r.Fragment,{children:"Sets the span ID from which to search for profiles."}),children:(0,r.jsx)(i.Input,{value:e.spanSelector||[""],type:"string",placeholder:"64f170a95f537095",onChange:n=>{t(pt(dt({},e),{spanSelector:""!==n.currentTarget.value?[n.currentTarget.value]:[]}))}})}),(0,r.jsx)(at,{label:"Max Nodes",tooltip:(0,r.jsx)(r.Fragment,{children:"Sets the maximum number of nodes to return in the flamegraph."}),children:(0,r.jsx)(i.Input,{value:e.maxNodes||"",type:"number",placeholder:"16384",onChange:n=>{let r=parseInt(n.currentTarget.value,10);r=isNaN(r)?0:r,t(pt(dt({},e),{maxNodes:r}))}})}),(0,r.jsx)(at,{label:"Annotations",tooltip:(0,r.jsx)(r.Fragment,{children:"Include profiling annotations in the time series."}),children:(0,r.jsx)(i.InlineSwitch,{value:e.annotations||!1,onChange:n=>{t(pt(dt({},e),{annotations:n.currentTarget.checked}))}})})]})})})}const gt=e=>({switchLabel:(0,a.css)({color:e.colors.text.secondary,cursor:"pointer",fontSize:e.typography.bodySmall.fontSize,"&:hover":{color:e.colors.text.primary}}),body:(0,a.css)({display:"flex",paddingTop:e.spacing(2),gap:e.spacing(2),flexWrap:"wrap"})});function bt(e,t,n,r,a,o,i){try{var s=e[o](i),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,a)}function yt(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function vt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),r.forEach((function(t){yt(e,t,n[t])}))}return e}function wt(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})),e}const xt=/(\w+)\s*=\s*("[^,"]+")/g;const Ot=new n.DataSourcePlugin(je).setConfigEditor((e=>{const{options:t,onOptionsChange:n}=e,a=(0,i.useStyles2)(B);return(0,r.jsxs)("div",{className:a.container,children:[(0,r.jsx)(s,{dataSourceName:"Pyroscope",docsLink:"https://grafana.com/docs/grafana/latest/datasources/pyroscope",hasRequiredFields:!1}),(0,r.jsx)(i.Divider,{spacing:4}),(0,r.jsx)(u,{config:t,onChange:n,urlPlaceholder:"http://localhost:4040"}),(0,r.jsx)(i.Divider,{spacing:4}),(0,r.jsx)(T,M({},N({config:t,onChange:n}))),(0,r.jsx)(i.Divider,{spacing:4}),(0,r.jsx)(c,{title:"Additional settings",description:"Additional settings are optional settings that can be configured for more control over your data source.",isCollapsible:!0,isInitiallyOpen:!1,children:(0,r.jsxs)(i.Stack,{gap:5,direction:"column",maxWidth:72,children:[(0,r.jsx)($,{config:t,onChange:n}),_.config.secureSocksDSProxyEnabled&&(0,r.jsx)(i.SecureSocksProxySettings,{options:t,onOptionsChange:n}),(0,r.jsx)(m,{title:"Querying",children:(0,r.jsx)(i.Field,{noMargin:!0,label:"Minimal step",htmlFor:"minimal-step",description:"Minimal step used for metric query. Should be the same or higher as the scrape interval setting in the Pyroscope database.",error:"Value is not valid, you can use number with time unit specifier: y, M, w, d, h, m, s",invalid:!!t.jsonData.minStep&&!/^\d+(ms|[Mwdhmsy])$/.test(t.jsonData.minStep),children:(0,r.jsx)(i.Input,{id:"minimal-step",value:t.jsonData.minStep,spellCheck:!1,placeholder:"15s",onChange:e=>{n(q(M({},t),{jsonData:q(M({},t.jsonData),{minStep:e.currentTarget.value})}))}})})})]})})]})})).setQueryEditor((function(e){const{onChange:t,onRunQuery:n,datasource:a,query:s,range:l,app:c}=e,u=function(e,t){const n=(0,o.useRef)(e);n.current=e;const r=(0,V.debounce)((e=>{t&&t(wt(vt({},n.current),{labelSelector:e}))}),200),a=(0,o.useCallback)((e=>{r(e)}),[r]);return a}(s,t),d=H(a,l),{labels:p,getLabelValues:f}=function(e,t,n){const r={to:1e4*Math.ceil(((null==e?void 0:e.to.valueOf())||0)/1e4),from:1e4*Math.floor(((null==e?void 0:e.from.valueOf())||0)/1e4)},a=(e,t,n)=>{let r,a=[`__profile_type__="${t}"`];for(;null!==(r=xt.exec(e));)if(r[1]&&r[2]){if(r[1]===n)continue;a.push(`${r[1]}=${r[2]}`)}return`{${a.join(",")}}`},[i,s]=(0,o.useState)((()=>[""]));(0,o.useEffect)((()=>{const e=()=>{return(e=function*(){const e=yield t.getLabelNames(a(n.labelSelector,n.profileTypeId,""),r.from,r.to);s(e)},function(){var t=this,n=arguments;return new Promise((function(r,a){var o=e.apply(t,n);function i(e){bt(o,r,a,i,s,"next",e)}function s(e){bt(o,r,a,i,s,"throw",e)}i(void 0)}))})();var e};e()}),[n,r.from,r.to,t,s]);const l=(0,o.useCallback)((e=>{const o=a(n.labelSelector,n.profileTypeId,e);return t.getLabelValues(o,e,r.from,r.to)}),[t,n.labelSelector,n.profileTypeId,r.to,r.from]);return{labels:i,getLabelValues:l}}(l,a,s);!function(e,t,n,r){(0,o.useEffect)((()=>{if(!t)return;const a=Se(e,r);e.profileTypeId||(a.profileTypeId=function(e){var t;const n=e.filter((e=>e.id.indexOf("cpu")>=0));if(n.length){const e=n.find((e=>-1===e.id.indexOf("samples")));return e?e.id:n[0].id}return(null===(t=e[0])||void 0===t?void 0:t.id)||""}(t)),W()(e,a)||n(a)}),[r,e,t,n])}(s,d,t,c);let h=(0,r.jsx)(i.LoadingPlaceholder,{text:"Loading"});return d&&void 0!==s.profileTypeId&&(h=(0,r.jsx)(K,{placeholder:0===d.length?"No profile types found":"Select profile type",profileTypes:d,initialProfileTypeId:s.profileTypeId,onChange:e=>{t(wt(vt({},s),{profileTypeId:e}))}})),(0,r.jsxs)(Le,{children:[(0,r.jsxs)(Ie,{stackProps:{wrap:!1,gap:1},children:[h,(0,r.jsx)(Ge,{value:s.labelSelector,onChange:u,onRunQuery:function(e){t(wt(vt({},s),{labelSelector:e})),n()},labels:p,getLabelValues:f})]}),(0,r.jsx)(Ie,{children:(0,r.jsx)(mt,{query:s,onQueryChange:e.onChange,app:e.app,labels:p})})]})}))})(),p})())); //# sourceMappingURL=module.js.map
.
Edit
..
Edit
CHANGELOG.md
Edit
LICENSE
Edit
README.md
Edit
img
Edit
module.js
Edit
module.js.LICENSE.txt
Edit
module.js.map
Edit
plugin.json
Edit