@grafana/assistant 0.1.8 → 0.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page.d.ts","sourceRoot":"","sources":["../../src/context/page.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAI1C,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB;CACF;AAED,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,OAAO,EAAE,eAAe,EAAE,CAAC;CAC5B;AAuID;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,MAAM,GAAG,MAAM,EAC3B,cAAc,EAAE,eAAe,EAAE,GAChC,CAAC,CAAC,OAAO,EAAE,eAAe,EAAE,KAAK,IAAI,CAAC,GAAG;IAAE,UAAU,EAAE,MAAM,IAAI,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"page.d.ts","sourceRoot":"","sources":["../../src/context/page.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAI1C,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB;CACF;AAED,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,OAAO,EAAE,eAAe,EAAE,CAAC;CAC5B;AAuID;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,MAAM,GAAG,MAAM,EAC3B,cAAc,EAAE,eAAe,EAAE,GAChC,CAAC,CAAC,OAAO,EAAE,eAAe,EAAE,KAAK,IAAI,CAAC,GAAG;IAAE,UAAU,EAAE,MAAM,IAAI,CAAA;CAAE,CA4DrE;AAID;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,MAAM,GAAG,MAAM,EAC3B,cAAc,GAAE,eAAe,EAAU,GACxC,CAAC,OAAO,EAAE,eAAe,EAAE,KAAK,IAAI,CAmDtC;AA0BD,wBAAgB,cAAc,CAC5B,OAAO,GAAE;IAAE,cAAc,EAAE,OAAO,CAAC;IAAC,eAAe,EAAE,OAAO,CAAA;CAAsD,GACjH,eAAe,EAAE,CA4DnB;AAED,wBAAgB,sBAAsB,CAAC,MAAM,SAAiB,GAAG,MAAM,CAEtE;AAiED;;;;;GAKG;AACH,wBAAgB,oCAAoC,IAAI,IAAI,CAE3D"}
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(()=>{"use strict";var e={n:t=>{var n=t&&t.__esModule?()=>t.default:()=>t;return e.d(n,{a:n}),n},d:(t,n)=>{for(var r in n)e.o(n,r)&&!e.o(t,r)&&Object.defineProperty(t,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})}},t={};function n(e){let t=5381;for(let n=0;n<e.length;n++)t=(t<<5)+t+e.charCodeAt(n);return(t>>>0).toString(16)}e.r(t),e.d(t,{AITextArea:()=>qt,AITextInput:()=>Mt,ASSISTANT_PLUGIN_ID:()=>B,ASSISTANT_PLUGIN_TITLE:()=>G,CALLBACK_EXTENSION_POINT:()=>F,ComponentNodeData:()=>k,DashboardNodeData:()=>$,DatasourceNodeData:()=>S,EntityNodeData:()=>I,FolderNodeData:()=>C,LabelNameNodeData:()=>N,LabelValueNodeData:()=>_,OpenAssistantButton:()=>At,OpenAssistantSplitButton:()=>St,PlaybookNodeData:()=>U,StructuredNodeData:()=>a,TERMS_AND_CONDITIONS_REFRESH_EVENT:()=>Wt,acceptTerms:()=>Kt,checkTerms:()=>Vt,closeAssistant:()=>ee,createAssistantContextItem:()=>P,createTool:()=>Ht,ensureInlineAssistantInitialized:()=>Ot,getExposeAssistantFunctionsConfig:()=>j,getInlineAssistantFactory:()=>Rt,isAssistantAvailable:()=>Q,newFunctionNamespace:()=>M,openAssistant:()=>Y,provideComponents:()=>A,providePageContext:()=>g,provideQuestions:()=>O,setInlineAssistantFactory:()=>Pt,setInlineAssistantInitializer:()=>Ut,toggleAssistant:()=>te,useAssistant:()=>ne,useInlineAssistant:()=>zt,usePageComponents:()=>E,usePageContext:()=>y,useProvidePageContext:()=>b,useProvideQuestions:()=>R,useQuestions:()=>z,useTerms:()=>Qt});class r{constructor(e){this.params=e,this.text="",this.id=n(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 r&&this.id===e.id&&this.type===e.type}}class a extends r{constructor(e){super({...e,id:n(JSON.stringify(e.data)),type:"structured"}),this.data=e.data}formatForLLM(e){return{type:this.type,codeElementIds:e,data:this.data}}}const o=require("@grafana/runtime"),s=require("react");var i=e.n(s);const c="__grafanaAssistantPageContextRegistry__",l="grafana-assistant:page-context-registry-changed",u="grafana-assistant:page-context-update",d="grafana-assistant:page-context-remove",p="grafana-assistant:page-context-sync";function m(){return window[c]}function f(e,t=!1){window[c]=e,window.dispatchEvent(new CustomEvent(l)),t||window.dispatchEvent(new CustomEvent(p,{detail:{registry:e}}))}window[c]||(window[c]=[]);let h=!1;function g(e,t){const n={id:w(),urlPattern:e,context:[...t]};f([...m(),n]),window.dispatchEvent(new CustomEvent(u,{detail:n}));const r=e=>{const t=m(),r=t.findIndex((e=>e.id===n.id));if(-1!==r){const n=[...t];n[r]={...n[r],context:[...e]},f(n),window.dispatchEvent(new CustomEvent(u,{detail:n[r]}))}};return r.unregister=()=>{const e=m(),t=e.findIndex((e=>e.id===n.id));-1!==t&&(f(e.filter(((e,n)=>n!==t))),window.dispatchEvent(new CustomEvent(d,{detail:{id:n.id}})))},r}h||(h=!0,window.addEventListener(u,(e=>{const t=e.detail;if(!t||!t.id)return;const n=m(),r=n.findIndex((e=>e.id===t.id));if(-1!==r){const e=[...n];e[r]=t,f(e,!0)}else f([...n,t],!0)})),window.addEventListener(d,(e=>{var t;const n=null===(t=e.detail)||void 0===t?void 0:t.id;if(!n)return;const r=m(),a=r.findIndex((e=>e.id===n));-1!==a&&f(r.filter(((e,t)=>t!==a)),!0)})),window.addEventListener(p,(e=>{var t;const n=null===(t=e.detail)||void 0===t?void 0:t.registry;if(!Array.isArray(n))return;const r=m(),a=new Set(r.map((e=>e.id))),o=n.filter((e=>!a.has(e.id)));o.length>0&&f([...r,...o],!0)})));const v=[];function b(e,t=v){const n=(0,s.useRef)(void 0),r=(0,s.useRef)(void 0),a=(0,s.useRef)(!1);return(0,s.useEffect)((()=>{a.current=!1;const o=void 0!==r.current?r.current:t;return n.current=g(e,o),void 0!==r.current&&(r.current=void 0),()=>{var e;null===(e=n.current)||void 0===e||e.unregister(),n.current=void 0}}),[e]),(0,s.useEffect)((()=>{!a.current&&n.current&&n.current(t)}),[t]),(0,s.useCallback)((e=>{a.current=!0,n.current?n.current(e):r.current=e}),[])}function y(e={allowQuestions:!1,allowComponents:!1}){const[t,n]=(0,s.useState)([]),r=(0,o.useLocationService)(),a=(0,s.useRef)("");(0,s.useEffect)((()=>{const e=()=>{const e=function(e){if(!e)return[];const t=[],n=m();for(const r of n)x(e,r.urlPattern)&&t.push(...r.context);return t}(r.getLocation().pathname);n(e)},t=()=>{e()},o=r.getLocationObservable().subscribe((t=>{const n=t.pathname;n!==a.current&&(a.current=n,e())}));return window.addEventListener(l,t),window.addEventListener(u,t),window.addEventListener(d,t),window.addEventListener(p,t),e(),()=>{o.unsubscribe(),window.removeEventListener(l,t),window.removeEventListener(u,t),window.removeEventListener(d,t),window.removeEventListener(p,t)}}),[r]);let i=t;return e.allowQuestions||(i=i.filter((e=>{var t;return"question"!==(null===(t=e.node.data)||void 0===t?void 0:t.type)}))),e.allowComponents||(i=i.filter((e=>{var t;return"component"!==(null===(t=e.node.data)||void 0===t?void 0:t.type)}))),i}function w(e="page-context"){return`${e}-${Date.now()}-${Math.random().toString(36).slice(2,11)}`}function x(e,t){if(t instanceof RegExp)return t.test(e);if("string"==typeof t){if(!t||""===t.trim())return console.warn("useProvidePageContext: Empty string passed as urlPattern. This will cause the context to not match any pages."),!1;const n=`^${t.replace(/\*\*/g,"\0DOUBLE_STAR\0").replace(/\*/g,"[^/]*").replace(/\u0000DOUBLE_STAR\u0000/g,".*").replace(/\?/g,".")}$`;return"^.*$"===n&&console.warn("useProvidePageContext: URL pattern matches all URLs (e.g., **). This will cause the context to match every page, which may be unintended."),new RegExp(n).test(e)}return!1}class k extends r{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 E(){const e=y({allowComponents:!0,allowQuestions:!1});return(0,s.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)&&Object.keys(n.components).length>0){const e=n.namespace||n.name||"components";Object.entries(n.components).forEach((([n,r])=>{t[`${e}_${n}`]=r}))}})),t}),[e])}function A(e,t,n,r=/.*/){if((a=r)instanceof RegExp?".*"===a.source&&""===a.flags:".*"===a||"/.*/"===a){const r=g(/.*/,[P("component",{components:n,prompt:e,namespace:t})]),a=(e,n)=>{r([P("component",{components:e,prompt:n,namespace:t})])};return a.unregister=r.unregister,a}var a;const o=g(/.*/,[P("component",{components:n,prompt:"",namespace:t})]),s=g(r,[P("component",{components:{},prompt:e,namespace:t})]),i=(e,n)=>{o([P("component",{components:e,prompt:"",namespace:t})]),s([P("component",{components:{},prompt:n,namespace:t})])};return i.unregister=()=>{o.unregister(),s.unregister()},i}class $ extends r{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 C extends r{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 S extends r{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 I extends r{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 N extends r{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 _ extends r{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 T(e){var t,n,r,a,s;const i=(0,o.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===(s=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===s?void 0:s.small}}const L={datasource:"database",label_name:"database",label_value:"database",dashboard:"dashboard",dashboard_folder:"folder",unknown:"circle-mono",structured:"gf-grid",component:"gf-grid",entity:"asserts",playbook:"play"};function P(e,t){var n,o,s;const i=function(e,t){switch(e){case"datasource":return new S({...t,...T(t.datasourceUid)});case"label_name":return new N({...t,...T(t.datasourceUid)});case"label_value":return new _({...t,...T(t.datasourceUid)});case"dashboard":return new $(t);case"dashboard_folder":return new C(t);case"structured":return new a(t);case"component":return new k({...t,hidden:!0});case"entity":return new I(t);case"unknown":return new r(t);default:return console.error(`Unknown context type: ${e}`),new r(t)}}(e,t),c=null!==(n=t.title)&&void 0!==n?n:function(e){var t;return e instanceof a?e.formatForLLM().data.name:null!==(t=e.text)&&void 0!==t?t:"Given Context"}(i),l=null!==(o=t.img)&&void 0!==o?o:function(e){if("img"in e)return e.img}(i);return{node:{id:i.id,name:c,img:l,icon:null!==(s=t.icon)&&void 0!==s?s:L[e],navigable:!1,selectable:!0,data:i},occurrences:[]}}class U extends r{constructor(e){super({...e,id:e.playbookId,type:"playbook",text:e.playbookName}),this.playbookId=e.playbookId,this.playbookName=e.playbookName,this.text=e.playbookName}formatForLLM(e){return{type:this.type,codeElementIds:e,data:{name:this.playbookName,playbookId:this.playbookId,playbookName:this.playbookName,text:this.text}}}}function O(e,t){const n=w("question"),r=e=>e.map(((e,t)=>({node:{id:`question-${n}-${t}`,name:e.title||e.prompt,navigable:!1,selectable:!0,icon:"question-circle",data:{type:"question",prompt:e.prompt,title:e.title,context:e.context||[]}},occurrences:[]}))),a=g(e,r(t)),o=e=>{a(r(e))};return o.unregister=a.unregister,o}function R(e,t=[]){const n=(0,s.useMemo)((()=>w("question")),[]),r=e=>e.map(((e,t)=>{var r;return{node:{id:`question-${n}-${t}`,name:null!==(r=e.title)&&void 0!==r?r:e.prompt,navigable:!1,selectable:!0,icon:"question-circle",data:{type:"question",prompt:e.prompt,title:e.title,context:e.context||[]}},occurrences:[]}})),a=b(e,r(t));return e=>{a(r(e))}}function z(){const e=y({allowQuestions:!0,allowComponents:!1});return D(e)}const D=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,r;return{prompt:(null===(t=e.node.data)||void 0===t?void 0:t.prompt)||e.node.name,title:null===(n=e.node.data)||void 0===n?void 0:n.title,context:(null===(r=e.node.data)||void 0===r?void 0:r.context)||[]}})),F="grafana-assistant-app/callback/v0-alpha";function M(e,t){return{namespace:e,functions:t}}function j(e){return{title:"callback",targets:[F],fn:()=>e.map((e=>({namespace:e.namespace,functions:e.functions})))}}const q=require("rxjs"),B="grafana-assistant-app",G="Grafana Assistant",W=10,V=100,K=5e3;function Q(){return o.getObservablePluginLinks?(0,q.defer)((()=>{try{return(0,o.getObservablePluginLinks)({extensionPointId:"grafana/extension-sidebar/v0-alpha"}).pipe((0,q.map)((e=>e.some((e=>e.pluginId===B&&e.title===G)))))}catch(e){return(0,q.throwError)((()=>e))}})).pipe((0,q.retry)({count:W,delay:(e,t)=>{var n;const r=(null===(n=null==e?void 0:e.message)||void 0===n?void 0:n.toLowerCase())||"";if(!(r.includes("can only be used after")||r.includes("grafana instance has started")||r.includes("not started")))throw e;const a=Math.min(V*Math.pow(2,t-1),K);return(0,q.timer)(a)}}),(0,q.catchError)((()=>(0,q.of)(!1)))):(0,q.of)(!1)}const H=require("@grafana/data");class J extends H.BusEventWithPayload{}J.type="open-extension-sidebar";class X extends H.BusEventBase{}X.type="close-extension-sidebar";class Z extends H.BusEventWithPayload{}function Y(e){var t,n;(0,o.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 J({pluginId:e,componentTitle:t,props:n});(0,o.getAppEvents)().publish(r)}(B,G,{initialPrompt:e.prompt,initialContext:e.context,initialAutoSend:null===(n=e.autoSend)||void 0===n||n,origin:e.origin,initialMode:e.mode})}function ee(){!function(){const e=new X;(0,o.getAppEvents)().publish(e)}()}function te(e){var t,n;(0,o.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 Z({pluginId:e,componentTitle:t,props:n});(0,o.getAppEvents)().publish(r)}(B,G,{initialPrompt:e.prompt,initialContext:e.context,initialAutoSend:null===(n=e.autoSend)||void 0===n||n,origin:e.origin,initialMode:e.mode})}function ne(){const[e,t]=(0,s.useState)(!1);return(0,s.useEffect)((()=>{const e=Q().subscribe((e=>t(e)));return()=>{e.unsubscribe()}}),[]),{isAvailable:e,openAssistant:e?Y:void 0,closeAssistant:e?ee:void 0,toggleAssistant:e?te:void 0}}Z.type="toggle-extension-sidebar";const re=require("@grafana/ui");var ae=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}(),oe=Math.abs,se=String.fromCharCode,ie=Object.assign;function ce(e){return e.trim()}function le(e,t,n){return e.replace(t,n)}function ue(e,t){return e.indexOf(t)}function de(e,t){return 0|e.charCodeAt(t)}function pe(e,t,n){return e.slice(t,n)}function me(e){return e.length}function fe(e){return e.length}function he(e,t){return t.push(e),e}var ge=1,ve=1,be=0,ye=0,we=0,xe="";function ke(e,t,n,r,a,o,s){return{value:e,root:t,parent:n,type:r,props:a,children:o,line:ge,column:ve,length:s,return:""}}function Ee(e,t){return ie(ke("",null,null,"",null,null,0),e,{length:-e.length},t)}function Ae(){return we=ye>0?de(xe,--ye):0,ve--,10===we&&(ve=1,ge--),we}function $e(){return we=ye<be?de(xe,ye++):0,ve++,10===we&&(ve=1,ge++),we}function Ce(){return de(xe,ye)}function Se(){return ye}function Ie(e,t){return pe(xe,e,t)}function Ne(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 _e(e){return ge=ve=1,be=me(xe=e),ye=0,[]}function Te(e){return xe="",e}function Le(e){return ce(Ie(ye-1,Oe(91===e?e+2:40===e?e+1:e)))}function Pe(e){for(;(we=Ce())&&we<33;)$e();return Ne(e)>2||Ne(we)>3?"":" "}function Ue(e,t){for(;--t&&$e()&&!(we<48||we>102||we>57&&we<65||we>70&&we<97););return Ie(e,Se()+(t<6&&32==Ce()&&32==$e()))}function Oe(e){for(;$e();)switch(we){case e:return ye;case 34:case 39:34!==e&&39!==e&&Oe(we);break;case 40:41===e&&Oe(e);break;case 92:$e()}return ye}function Re(e,t){for(;$e()&&e+we!==57&&(e+we!==84||47!==Ce()););return"/*"+Ie(t,ye-1)+"*"+se(47===e?e:$e())}function ze(e){for(;!Ne(Ce());)$e();return Ie(e,ye)}var De="-ms-",Fe="-moz-",Me="-webkit-",je="comm",qe="rule",Be="decl",Ge="@keyframes";function We(e,t){for(var n="",r=fe(e),a=0;a<r;a++)n+=t(e[a],a,e,t)||"";return n}function Ve(e,t,n,r){switch(e.type){case"@layer":if(e.children.length)break;case"@import":case Be:return e.return=e.return||e.value;case je:return"";case Ge:return e.return=e.value+"{"+We(e.children,r)+"}";case qe:e.value=e.props.join(",")}return me(n=We(e.children,r))?e.return=e.value+"{"+n+"}":""}function Ke(e){return Te(Qe("",null,null,null,[""],e=_e(e),0,[0],e))}function Qe(e,t,n,r,a,o,s,i,c){for(var l=0,u=0,d=s,p=0,m=0,f=0,h=1,g=1,v=1,b=0,y="",w=a,x=o,k=r,E=y;g;)switch(f=b,b=$e()){case 40:if(108!=f&&58==de(E,d-1)){-1!=ue(E+=le(Le(b),"&","&\f"),"&\f")&&(v=-1);break}case 34:case 39:case 91:E+=Le(b);break;case 9:case 10:case 13:case 32:E+=Pe(f);break;case 92:E+=Ue(Se()-1,7);continue;case 47:switch(Ce()){case 42:case 47:he(Je(Re($e(),Se()),t,n),c);break;default:E+="/"}break;case 123*h:i[l++]=me(E)*v;case 125*h:case 59:case 0:switch(b){case 0:case 125:g=0;case 59+u:-1==v&&(E=le(E,/\f/g,"")),m>0&&me(E)-d&&he(m>32?Xe(E+";",r,n,d-1):Xe(le(E," ","")+";",r,n,d-2),c);break;case 59:E+=";";default:if(he(k=He(E,t,n,l,u,a,i,y,w=[],x=[],d),o),123===b)if(0===u)Qe(E,t,k,k,w,o,d,i,x);else switch(99===p&&110===de(E,3)?100:p){case 100:case 108:case 109:case 115:Qe(e,k,k,r&&he(He(e,k,k,0,0,a,i,y,a,w=[],d),x),a,x,d,i,r?w:x);break;default:Qe(E,k,k,k,[""],x,0,i,x)}}l=u=m=0,h=v=1,y=E="",d=s;break;case 58:d=1+me(E),m=f;default:if(h<1)if(123==b)--h;else if(125==b&&0==h++&&125==Ae())continue;switch(E+=se(b),b*h){case 38:v=u>0?1:(E+="\f",-1);break;case 44:i[l++]=(me(E)-1)*v,v=1;break;case 64:45===Ce()&&(E+=Le($e())),p=Ce(),u=d=me(y=E+=ze(Se())),b++;break;case 45:45===f&&2==me(E)&&(h=0)}}return o}function He(e,t,n,r,a,o,s,i,c,l,u){for(var d=a-1,p=0===a?o:[""],m=fe(p),f=0,h=0,g=0;f<r;++f)for(var v=0,b=pe(e,d+1,d=oe(h=s[f])),y=e;v<m;++v)(y=ce(h>0?p[v]+" "+b:le(b,/&\f/g,p[v])))&&(c[g++]=y);return ke(e,t,n,0===a?qe:i,c,l,u)}function Je(e,t,n){return ke(e,t,n,je,se(we),pe(e,2,-2),0)}function Xe(e,t,n,r){return ke(e,t,n,Be,pe(e,0,r),pe(e,r+1,-1),r)}var Ze=function(e,t,n){for(var r=0,a=0;r=a,a=Ce(),38===r&&12===a&&(t[n]=1),!Ne(a);)$e();return Ie(e,ye)},Ye=new WeakMap,et=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)||Ye.get(n))&&!r){Ye.set(e,!0);for(var a=[],o=function(e,t){return Te(function(e,t){var n=-1,r=44;do{switch(Ne(r)){case 0:38===r&&12===Ce()&&(t[n]=1),e[n]+=Ze(ye-1,t,n);break;case 2:e[n]+=Le(r);break;case 4:if(44===r){e[++n]=58===Ce()?"&\f":"",t[n]=e[n].length;break}default:e[n]+=se(r)}}while(r=$e());return e}(_e(e),t))}(t,a),s=n.props,i=0,c=0;i<o.length;i++)for(var l=0;l<s.length;l++,c++)e.props[c]=a[i]?o[i].replace(/&\f/g,s[l]):s[l]+" "+o[i]}}},tt=function(e){if("decl"===e.type){var t=e.value;108===t.charCodeAt(0)&&98===t.charCodeAt(2)&&(e.return="",e.value="")}};function nt(e,t){switch(function(e,t){return 45^de(e,0)?(((t<<2^de(e,0))<<2^de(e,1))<<2^de(e,2))<<2^de(e,3):0}(e,t)){case 5103:return Me+"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 Me+e+e;case 5349:case 4246:case 4810:case 6968:case 2756:return Me+e+Fe+e+De+e+e;case 6828:case 4268:return Me+e+De+e+e;case 6165:return Me+e+De+"flex-"+e+e;case 5187:return Me+e+le(e,/(\w+).+(:[^]+)/,Me+"box-$1$2"+De+"flex-$1$2")+e;case 5443:return Me+e+De+"flex-item-"+le(e,/flex-|-self/,"")+e;case 4675:return Me+e+De+"flex-line-pack"+le(e,/align-content|flex-|-self/,"")+e;case 5548:return Me+e+De+le(e,"shrink","negative")+e;case 5292:return Me+e+De+le(e,"basis","preferred-size")+e;case 6060:return Me+"box-"+le(e,"-grow","")+Me+e+De+le(e,"grow","positive")+e;case 4554:return Me+le(e,/([^-])(transform)/g,"$1"+Me+"$2")+e;case 6187:return le(le(le(e,/(zoom-|grab)/,Me+"$1"),/(image-set)/,Me+"$1"),e,"")+e;case 5495:case 3959:return le(e,/(image-set\([^]*)/,Me+"$1$`$1");case 4968:return le(le(e,/(.+:)(flex-)?(.*)/,Me+"box-pack:$3"+De+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+Me+e+e;case 4095:case 3583:case 4068:case 2532:return le(e,/(.+)-inline(.+)/,Me+"$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(me(e)-1-t>6)switch(de(e,t+1)){case 109:if(45!==de(e,t+4))break;case 102:return le(e,/(.+:)(.+)-([^]+)/,"$1"+Me+"$2-$3$1"+Fe+(108==de(e,t+3)?"$3":"$2-$3"))+e;case 115:return~ue(e,"stretch")?nt(le(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(115!==de(e,t+1))break;case 6444:switch(de(e,me(e)-3-(~ue(e,"!important")&&10))){case 107:return le(e,":",":"+Me)+e;case 101:return le(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+Me+(45===de(e,14)?"inline-":"")+"box$3$1"+Me+"$2$3$1"+De+"$2box$3")+e}break;case 5936:switch(de(e,t+11)){case 114:return Me+e+De+le(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return Me+e+De+le(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return Me+e+De+le(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return Me+e+De+e+e}return e}var rt=[function(e,t,n,r){if(e.length>-1&&!e.return)switch(e.type){case Be:e.return=nt(e.value,e.length);break;case Ge:return We([Ee(e,{value:le(e.value,"@","@"+Me)})],r);case qe: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 We([Ee(e,{props:[le(t,/:(read-\w+)/,":-moz-$1")]})],r);case"::placeholder":return We([Ee(e,{props:[le(t,/:(plac\w+)/,":"+Me+"input-$1")]}),Ee(e,{props:[le(t,/:(plac\w+)/,":-moz-$1")]}),Ee(e,{props:[le(t,/:(plac\w+)/,De+"input-$1")]})],r)}return""}))}}],at={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};function ot(e){var t=Object.create(null);return function(n){return void 0===t[n]&&(t[n]=e(n)),t[n]}}var st=/[A-Z]|^ms/g,it=/_EMO_([^_]+?)_([^]*?)_EMO_/g,ct=function(e){return 45===e.charCodeAt(1)},lt=function(e){return null!=e&&"boolean"!=typeof e},ut=ot((function(e){return ct(e)?e:e.replace(st,"-$&").toLowerCase()})),dt=function(e,t){switch(e){case"animation":case"animationName":if("string"==typeof t)return t.replace(it,(function(e,t,n){return mt={name:t,styles:n,next:mt},t}))}return 1===at[e]||ct(e)||"number"!=typeof t||0===t?t:t+"px"};function pt(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 mt={name:a.name,styles:a.styles,next:mt},a.name;var o=n;if(void 0!==o.styles){var s=o.next;if(void 0!==s)for(;void 0!==s;)mt={name:s.name,styles:s.styles,next:mt},s=s.next;return o.styles+";"}return function(e,t,n){var r="";if(Array.isArray(n))for(var a=0;a<n.length;a++)r+=pt(e,t,n[a])+";";else for(var o in n){var s=n[o];if("object"!=typeof s){var i=s;null!=t&&void 0!==t[i]?r+=o+"{"+t[i]+"}":lt(i)&&(r+=ut(o)+":"+dt(o,i)+";")}else if(!Array.isArray(s)||"string"!=typeof s[0]||null!=t&&void 0!==t[s[0]]){var c=pt(e,t,s);switch(o){case"animation":case"animationName":r+=ut(o)+":"+c+";";break;default:r+=o+"{"+c+"}"}}else for(var l=0;l<s.length;l++)lt(s[l])&&(r+=ut(o)+":"+dt(o,s[l])+";")}return r}(e,t,n);case"function":if(void 0!==e){var i=mt,c=n(e);return mt=i,pt(e,t,c)}}var l=n;if(null==t)return l;var u=t[l];return void 0!==u?u:l}var mt,ft=/label:\s*([^\s;{]+)\s*(;|$)/g;function ht(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="";mt=void 0;var o=e[0];null==o||void 0===o.raw?(r=!1,a+=pt(n,t,o)):a+=o[0];for(var s=1;s<e.length;s++)a+=pt(n,t,e[s]),r&&(a+=o[s]);ft.lastIndex=0;for(var i,c="";null!==(i=ft.exec(a));)c+="-"+i[1];var l=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)+c;return{name:l,styles:a,next:mt}}function gt(e,t,n){var r="";return n.split(" ").forEach((function(n){void 0!==e[n]?t.push(e[n]+";"):n&&(r+=n+" ")})),r}function vt(e,t){if(void 0===e.inserted[t.name])return e.insert("",t,e.sheet,!0)}function bt(e,t,n){var r=[],a=gt(e,r,n);return r.length<2?n:a+t(r)}var yt=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 s in o="",a)a[s]&&s&&(o&&(o+=" "),o+=s);break;default:o=a}o&&(n&&(n+=" "),n+=o)}}return n};var wt=function(e){var t=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||rt,s={},i=[];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++)s[t[n]]=!0;i.push(e)}));var c,l,u,d,p=[Ve,(d=function(e){c.insert(e)},function(e){e.root||(e=e.return)&&d(e)})],m=(l=[et,tt].concat(o,p),u=fe(l),function(e,t,n,r){for(var a="",o=0;o<u;o++)a+=l[o](e,t,n,r)||"";return a});a=function(e,t,n,r){c=n,We(Ke(e?e+"{"+t.styles+"}":t.styles),m),r&&(f.inserted[t.name]=!0)};var f={key:t,sheet:new ae({key:t,container:r,nonce:e.nonce,speedy:e.speedy,prepend:e.prepend,insertionPoint:e.insertionPoint}),nonce:e.nonce,inserted:s,registered:{},insert:a};return f.sheet.hydrate(i),f}(e);t.sheet.speedy=function(e){this.isSpeedy=e},t.compat=!0;var n=function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];var a=ht(n,t.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)}}(t,a),t.key+"-"+a.name};return{css:n,cx:function(){for(var e=arguments.length,r=new Array(e),a=0;a<e;a++)r[a]=arguments[a];return bt(t.registered,n,yt(r))},injectGlobal:function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];var a=ht(n,t.registered);vt(t,a)},keyframes:function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];var a=ht(n,t.registered),o="animation-"+a.name;return vt(t,{name:a.name,styles:"@keyframes "+o+"{"+a.styles+"}"}),o},hydrate:function(e){e.forEach((function(e){t.inserted[e]=!0}))},flush:function(){t.registered={},t.inserted={},t.sheet.flush()},sheet:t.sheet,cache:t,getRegisteredStyles:gt.bind(null,t.registered),merge:bt.bind(null,t.registered,n)}}({key:"css"}),xt=(wt.flush,wt.hydrate,wt.cx),kt=(wt.merge,wt.getRegisteredStyles,wt.injectGlobal,wt.keyframes),Et=wt.css;function At(e){const{isAvailable:t,openAssistant:n}=ne();return t&&n?i().createElement($t,{...e,openAssistant:n}):null}function $t({prompt:e,origin:t,context:n,autoSend:r=!0,title:a="Analyze with Assistant",size:c="sm",iconOnlyButton:l=!1,openAssistant:u,onClick:d}){const p=(0,re.useStyles2)(Ct);return(0,s.useEffect)((()=>{(0,o.reportInteraction)("grafana_assistant_app_open_sidebar_button_displayed",{from:t})}),[t]),i().createElement(i().Fragment,null,l?i().createElement(re.IconButton,{name:"ai-sparkle",onClick:()=>{null==d||d(),u({prompt:e,context:n,autoSend:r,origin:t})},variant:"secondary",size:c,"aria-label":a,className:p.icon,tooltip:a,"data-testid":"assistant-icon-button"}):i().createElement(re.Button,{icon:"ai-sparkle",onClick:()=>{null==d||d(),u({prompt:e,context:n,autoSend:r,origin:t})},variant:"secondary",fill:"solid",size:c,title:a,"aria-label":a,className:p.button,"data-testid":"assistant-button"},a))}wt.sheet,wt.cache;const Ct=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)`,s={content:'""',position:"absolute",inset:0,borderRadius:a,cornerShape:"squircle",background:"linear-gradient(90deg, rgb(168, 85, 247), rgb(249, 115, 22))",zIndex:-2,pointerEvents:"none"},i=e=>({content:'""',position:"absolute",inset:"1px",borderRadius:o,cornerShape:"squircle",background:`linear-gradient(${e}, ${e}), ${r}`,zIndex:-1,transition:"none",pointerEvents:"none"});return{button:Et({label:"assistant-button",position:"relative",isolation:"isolate",border:"none",transition:"none !important","&::before":s,"&::after":{...i(t),transition:"none"},"&:hover":{transition:"none !important"},"&:hover::after":{background:`linear-gradient(${n}, ${n}), ${r}`}}),icon:Et({label:"assistant-icon",position:"relative",isolation:"isolate",border:"none",background:"none",padding:e.spacing(.5),"&::before":{...s,transition:"background 0.1s ease"},"&:hover::after":{...i(t),background:`linear-gradient(${n}, ${n}), ${r}`}})}};function St(e){const{isAvailable:t,openAssistant:n}=ne();return t&&n?i().createElement(It,{...e,openAssistant:n}):null}function It({prompt:e,origin:t,context:n,autoSend:r=!0,title:a="Chat with Assistant",size:c="sm",onClick:l,menuItems:u,tooltip:d,openAssistant:p}){const m=(0,re.useStyles2)(Nt);(0,s.useEffect)((()=>{(0,o.reportInteraction)("grafana_assistant_app_open_sidebar_split_button_displayed",{from:t})}),[t]);const f=i().createElement("div",{className:m.wrapper},i().createElement(re.ButtonGroup,{className:m.buttonGroup},i().createElement(re.Button,{icon:"ai-sparkle",onClick:()=>{null==l||l(),p({prompt:e,context:n,autoSend:r,origin:t})},variant:"secondary",fill:"solid",size:c,"aria-label":a,"data-testid":"assistant-split-button-main"},a),u&&i().createElement(re.Dropdown,{overlay:u},i().createElement(re.Button,{variant:"secondary",icon:"angle-down",size:c,"aria-label":"More AI actions",className:m.dropdownButton,"data-testid":"assistant-split-button-dropdown"}))));return d?i().createElement(re.Tooltip,{content:d},f):f}const Nt=e=>{const t=e.colors.secondary.main,n=e.colors.emphasize(t,.05),r=e.colors.background.canvas,a=e.shape.radius.default;return{wrapper:Et({label:"assistant-split-button-wrapper",position:"relative",isolation:"isolate",display:"inline-block","&::before":{content:'""',position:"absolute",inset:0,borderRadius:a,cornerShape:"squircle",background:"linear-gradient(90deg, rgb(168, 85, 247), rgb(249, 115, 22))",zIndex:-1,pointerEvents:"none"},"&::after":{content:'""',position:"absolute",inset:"1px",borderRadius:`max(calc(${a} - 1px), 1px)`,cornerShape:"squircle",background:`linear-gradient(${t}, ${t}), ${r}`,zIndex:-1,pointerEvents:"none"},"&:hover::after":{background:`linear-gradient(${n}, ${n}), ${r}`}}),buttonGroup:Et({label:"assistant-split-button-group",gap:0,position:"relative",zIndex:1,"& button":{border:"none",background:"transparent !important","&:hover":{background:"transparent !important"}}}),dropdownButton:Et({padding:"0 6px"})}},_t="__grafanaAssistantInlineFactory__",Tt="__grafanaAssistantInlineInitializer__",Lt="__grafanaAssistantInlineInitPromise__";function Pt(e){const t=window[_t];t&&t!==e?console.warn("InlineAssistant factory already set; ignoring subsequent setInlineAssistantFactory call"):t||(window[_t]=e)}function Ut(e){const t=window[Tt];t&&t!==e?console.warn("InlineAssistant initializer already set; ignoring subsequent setInlineAssistantInitializer call"):t||(window[Tt]=e)}async function Ot(){if(window[_t])return;const e=window[Tt];if(!e)throw new Error("InlineAssistant not initialized. Make sure the Grafana Assistant plugin is loaded and initialized.");const t=window[Lt];if(t)return t;const n=(async()=>{try{await e()}catch(e){throw window[Lt]=null,e}})();return window[Lt]=n,n}function Rt(){const e=window[_t];if(!e)throw new Error("InlineAssistant factory not initialized. Make sure the Grafana Assistant plugin is loaded.");return e}function zt(){const[e,t]=(0,s.useState)(!1),[n,r]=(0,s.useState)(""),[a,o]=(0,s.useState)(null),i=(0,s.useRef)(null),c=(0,s.useCallback)((()=>{o(null),r("")}),[]),l=(0,s.useCallback)((()=>{i.current&&i.current.cancel(),t(!1)}),[]),u=(0,s.useCallback)((async e=>{var n;o(null),r(""),t(!0);try{await Ot();const n=Rt();i.current||(i.current=await n(e.origin)),await i.current.sendPrompt({prompt:e.prompt,systemPrompt:e.systemPrompt,tools:e.tools,onStart:()=>{t(!0)},onDelta:t=>{var n;r((e=>e+t)),null===(n=e.onDelta)||void 0===n||n.call(e,t)},onComplete:n=>{var a;r(n),t(!1),null===(a=e.onComplete)||void 0===a||a.call(e,n)},onError:n=>{var r;o(n),t(!1),null===(r=e.onError)||void 0===r||r.call(e,n)}})}catch(r){const a=r instanceof Error?r:new Error(String(r));o(a),t(!1),null===(n=e.onError)||void 0===n||n.call(e,a)}}),[]);return(0,s.useEffect)((()=>()=>{i.current&&(i.current.cancel(),i.current.dispose(),i.current=null)}),[]),{generate:u,isGenerating:e,content:n,error:a,cancel:l,reset:c}}const Dt=e=>{const t=["rgb(168, 85, 247)","rgb(249, 115, 22)"];if("dark"===e.name.toLowerCase()||"light"===e.name.toLowerCase())return t;const n=e.colors.gradients.brandHorizontal.match(/#[0-9A-Fa-f]{6}/g);return!n||n.length<2?t:[n[0],n[1]]},Ft=(e,t,n,r)=>{const a=Array.from({length:101},((e,t)=>t)),o={},[s,i]=Dt(e),c=null!=n?n:s,l=null!=r?r:i;return a.forEach((e=>{o[`${e}%`]={backgroundImage:`\n linear-gradient(${t}, ${t}),\n conic-gradient(from ${3.6*e}deg, transparent 60%, ${c} 80%, ${l} 100%, transparent 15%)\n `}})),o};function Mt({value:e,onChange:t,placeholder:n,origin:r,systemPrompt:a,onComplete:o,onError:s,onDelta:c,disabled:l=!1,className:u,"data-testid":d}){const{generate:p,isGenerating:m,error:f,reset:h}=zt(),g=!e.trim()||l||m,v=(0,re.useStyles2)(jt),b=async()=>{if(g)return;const t=e.trim();h(),await p({prompt:t,origin:r,systemPrompt:a,onComplete:e=>{null==o||o(e)},onError:e=>{null==s||s(e)},onDelta:e=>{null==c||c(e)}})},y=i().createElement(re.IconButton,{name:"ai-sparkle",onClick:b,disabled:g,tooltip:g?"Enter text to generate":"Generate with AI","data-testid":d?`${d}-send`:void 0});return i().createElement("div",{className:xt(v.wrapper,{[v.animatedWrapper]:m},u),"data-testid":d},i().createElement(re.Input,{value:e,onKeyDown:e=>{"Enter"===e.key&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),b())},onChange:e=>t(e.currentTarget.value),placeholder:null!=n?n:"Ask AI to generate...",disabled:l||m,suffix:y,invalid:!!f,"data-testid":d?`${d}-input`:void 0}))}const jt=e=>{const t=e.colors.background.primary,n=kt({label:"ai-input-border-animation",...Ft(e,t)}),[r,a]=Dt(e);return{wrapper:Et({label:"ai-text-input-wrapper",position:"relative",borderRadius:e.shape.radius.default,cornerShape:"squircle"}),animatedWrapper:Et({label:"ai-text-input-animated",border:"1px solid transparent",backgroundImage:`\n linear-gradient(${t}, ${t}),\n conic-gradient(from 0deg, transparent 60%, ${r} 80%, ${a} 100%, transparent 15%)\n `,backgroundOrigin:"border-box",backgroundClip:"padding-box, border-box",animation:`${n} 2s linear infinite`,"& input":{border:"none !important"}})}};function qt({value:e,onChange:t,placeholder:n,origin:r,systemPrompt:a,onComplete:o,onError:s,onDelta:c,disabled:l=!1,rows:u=4,className:d,"data-testid":p}){const{generate:m,isGenerating:f,error:h,reset:g}=zt(),v=!e.trim()||l||f,b=(0,re.useStyles2)(Bt),y=async()=>{if(v)return;const t=e.trim();g(),await m({prompt:t,origin:r,systemPrompt:a,onComplete:e=>{null==o||o(e)},onError:e=>{null==s||s(e)},onDelta:e=>{null==c||c(e)}})};return i().createElement("div",{className:xt(b.textareaWrapper,{[b.animatedWrapper]:f},d),"data-testid":p},i().createElement(re.TextArea,{value:e,onKeyDown:e=>{"Enter"===e.key&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),y())},onChange:e=>t(e.currentTarget.value),placeholder:null!=n?n:"Ask AI to generate... (Cmd/Ctrl+Enter to send)",disabled:l||f,rows:u,className:b.textarea,invalid:!!h,"data-testid":p?`${p}-textarea`:void 0}),i().createElement(re.IconButton,{name:"ai-sparkle",onClick:y,disabled:v,className:b.sendButton,"aria-label":"Generate with AI",tooltip:v?"Enter text to generate":"Generate with AI (Cmd/Ctrl+Enter)","data-testid":p?`${p}-send`:void 0}))}const Bt=e=>{const t=e.colors.background.primary,n=kt({label:"ai-textarea-border-animation",...Ft(e,t)}),[r,a]=Dt(e);return{textareaWrapper:Et({label:"ai-textarea-wrapper",position:"relative",borderRadius:e.shape.radius.default,cornerShape:"squircle"}),animatedWrapper:Et({label:"ai-textarea-animated",border:"1px solid transparent",backgroundImage:`\n linear-gradient(${t}, ${t}),\n conic-gradient(from 0deg, transparent 60%, ${r} 80%, ${a} 100%, transparent 15%)\n `,backgroundOrigin:"border-box",backgroundClip:"padding-box, border-box",animation:`${n} 2s linear infinite`,"& textarea":{border:"none !important"}}),textarea:Et({label:"ai-textarea",paddingRight:e.spacing(4),scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}}),sendButton:Et({label:"ai-textarea-send",position:"absolute",right:e.spacing(1),top:e.spacing(1)})}};function Gt(e){const t=e.split("+")[0].split("-"),n=t[0],r=t.length>1?t.slice(1).join("-"):void 0,a=n.split(".").map(Number);return 3!==a.length||a.some(isNaN)?null:{major:a[0],minor:a[1],patch:a[2],prerelease:r}}const Wt="grafana-assistant-terms-and-conditions-refresh";async function Vt(){var e,t;const n=(0,o.getBackendSrv)(),r=`${null!==(e=null===o.config||void 0===o.config?void 0:o.config.appSubUrl)&&void 0!==e?e:""}/api/plugins/${B}/resources/api/v1/settings/terms`;try{const e=(await(0,q.lastValueFrom)(n.fetch({url:r,method:"GET"}))).data.data,a=null!==(t=e.acceptedTermsAndConditions)&&void 0!==t&&t,o=e.acceptedVersion,s=e.version;if(!a||!o||!s)return!1;const i=1===function(e,t){const n=Gt(e),r=Gt(t);return n&&r?n.major!==r.major?n.major>r.major?1:-1:n.minor!==r.minor?n.minor>r.minor?1:-1:n.patch!==r.patch?n.patch>r.patch?1:-1:n.prerelease&&r.prerelease?n.prerelease===r.prerelease?0:n.prerelease>r.prerelease?1:-1:n.prerelease&&!r.prerelease?-1:!n.prerelease&&r.prerelease?1:0:null}(s,o);return a&&!i}catch(e){throw new Error(`Failed to check terms requirements: ${e instanceof Error?e.message:String(e)}`)}}async function Kt(){var e;const t=(0,o.getBackendSrv)(),n=`${null!==(e=null===o.config||void 0===o.config?void 0:o.config.appSubUrl)&&void 0!==e?e:""}/api/plugins/${B}/resources/api/v1/settings/accept-terms`;try{await(0,q.lastValueFrom)(t.fetch({url:n,method:"PUT",data:{acceptedTermsAndConditions:!0}})),"undefined"!=typeof document&&document.dispatchEvent(new CustomEvent(Wt))}catch(e){throw new Error(`Failed to accept terms: ${e instanceof Error?e.message:String(e)}`)}}function Qt(){const[e,t]=(0,s.useState)(!1),[n,r]=(0,s.useState)(!0),[a,o]=(0,s.useState)(null);return(0,s.useEffect)((()=>{!async function(){try{r(!0),o(null);const e=await Vt();t(e)}catch(e){const n=e instanceof Error?e.message:"Failed to check terms";o(n),t(!1)}finally{r(!1)}}()}),[]),{accepted:e,loading:n,error:a,acceptTerms:(0,s.useCallback)((async()=>{try{r(!0),o(null),await Kt();const e=await Vt();t(e)}catch(e){const n=e instanceof Error?e.message:"Failed to accept terms";o(n),t(!1)}finally{r(!1)}}),[])}}function Ht(e,t){var n;const{explainer:r,...a}=null!==(n=t.metadata)&&void 0!==n?n:{},o={name:t.name,description:t.description,inputSchema:t.inputSchema,metadata:r?{...a,explainer:e=>r(e)}:a,responseFormat:t.responseFormat,verboseParsingErrors:t.verboseParsingErrors,async invoke(n,r){var a;try{if(null===(a=r.signal)||void 0===a?void 0:a.aborted)throw new Error(`Tool ${t.name} execution was aborted`);const o=t.validate(n),s=[e(o,r)];return r.signal&&s.push(new Promise(((e,n)=>{var a;null===(a=r.signal)||void 0===a||a.addEventListener("abort",(()=>{n(new Error(`Tool ${t.name} execution was aborted`))}),{once:!0})}))),r.timeout&&r.timeout>0&&s.push(new Promise(((e,n)=>{setTimeout((()=>{n(new Error(`Tool ${t.name} execution timed out after ${r.timeout}ms`))}),r.timeout)}))),Promise.race(s)}catch(e){throw t.verboseParsingErrors&&console.error(`Error invoking tool ${t.name}:`,e,n),e}}};return o}module.exports=t})();
|
|
1
|
+
(()=>{"use strict";var e={n:t=>{var n=t&&t.__esModule?()=>t.default:()=>t;return e.d(n,{a:n}),n},d:(t,n)=>{for(var r in n)e.o(n,r)&&!e.o(t,r)&&Object.defineProperty(t,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})}},t={};function n(e){let t=5381;for(let n=0;n<e.length;n++)t=(t<<5)+t+e.charCodeAt(n);return(t>>>0).toString(16)}e.r(t),e.d(t,{AITextArea:()=>qt,AITextInput:()=>Mt,ASSISTANT_PLUGIN_ID:()=>B,ASSISTANT_PLUGIN_TITLE:()=>G,CALLBACK_EXTENSION_POINT:()=>F,ComponentNodeData:()=>E,DashboardNodeData:()=>$,DatasourceNodeData:()=>S,EntityNodeData:()=>I,FolderNodeData:()=>C,LabelNameNodeData:()=>T,LabelValueNodeData:()=>N,OpenAssistantButton:()=>At,OpenAssistantSplitButton:()=>St,PlaybookNodeData:()=>U,StructuredNodeData:()=>a,TERMS_AND_CONDITIONS_REFRESH_EVENT:()=>Wt,acceptTerms:()=>Qt,checkTerms:()=>Kt,closeAssistant:()=>ee,createAssistantContextItem:()=>P,createTool:()=>Jt,ensureInlineAssistantInitialized:()=>Ot,getExposeAssistantFunctionsConfig:()=>j,getInlineAssistantFactory:()=>Rt,isAssistantAvailable:()=>Q,newFunctionNamespace:()=>M,openAssistant:()=>Y,provideComponents:()=>A,providePageContext:()=>g,provideQuestions:()=>O,setInlineAssistantFactory:()=>Pt,setInlineAssistantInitializer:()=>Ut,toggleAssistant:()=>te,useAssistant:()=>ne,useInlineAssistant:()=>zt,usePageComponents:()=>k,usePageContext:()=>y,useProvidePageContext:()=>b,useProvideQuestions:()=>R,useQuestions:()=>z,useTerms:()=>Ht});class r{constructor(e){this.params=e,this.text="",this.id=n(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 r&&this.id===e.id&&this.type===e.type}}class a extends r{constructor(e){super({...e,id:n(JSON.stringify(e.data)),type:"structured"}),this.data=e.data}formatForLLM(e){return{type:this.type,codeElementIds:e,data:this.data}}}const o=require("@grafana/runtime"),s=require("react");var i=e.n(s);const c="__grafanaAssistantPageContextRegistry__",l="grafana-assistant:page-context-registry-changed",u="grafana-assistant:page-context-update",d="grafana-assistant:page-context-remove",p="grafana-assistant:page-context-sync";function m(){return window[c]}function f(e,t=!1){window[c]=e,window.dispatchEvent(new CustomEvent(l)),t||window.dispatchEvent(new CustomEvent(p,{detail:{registry:e}}))}window[c]||(window[c]=[]);let h=!1;function g(e,t){var n;(n=e)instanceof RegExp?n.source:"string"!=typeof n||n&&""!==n.trim()||console.warn("useProvidePageContext: Empty string passed as urlPattern. This will cause the context to not match any pages.");const r={id:w(),urlPattern:e,context:[...t]};f([...m(),r]),window.dispatchEvent(new CustomEvent(u,{detail:r}));const a=e=>{const t=m(),n=t.findIndex((e=>e.id===r.id));if(-1!==n){const r=[...t];r[n]={...r[n],context:[...e]},f(r),window.dispatchEvent(new CustomEvent(u,{detail:r[n]}))}};return a.unregister=()=>{const e=m(),t=e.findIndex((e=>e.id===r.id));-1!==t&&(f(e.filter(((e,n)=>n!==t))),window.dispatchEvent(new CustomEvent(d,{detail:{id:r.id}})))},a}h||(h=!0,window.addEventListener(u,(e=>{const t=e.detail;if(!t||!t.id)return;const n=m(),r=n.findIndex((e=>e.id===t.id));if(-1!==r){const e=[...n];e[r]=t,f(e,!0)}else f([...n,t],!0)})),window.addEventListener(d,(e=>{var t;const n=null===(t=e.detail)||void 0===t?void 0:t.id;if(!n)return;const r=m(),a=r.findIndex((e=>e.id===n));-1!==a&&f(r.filter(((e,t)=>t!==a)),!0)})),window.addEventListener(p,(e=>{var t;const n=null===(t=e.detail)||void 0===t?void 0:t.registry;if(!Array.isArray(n))return;const r=m(),a=new Set(r.map((e=>e.id))),o=n.filter((e=>!a.has(e.id)));o.length>0&&f([...r,...o],!0)})));const v=[];function b(e,t=v){const n=(0,s.useRef)(void 0),r=(0,s.useRef)(void 0),a=(0,s.useRef)(!1);return(0,s.useEffect)((()=>{a.current=!1;const o=void 0!==r.current?r.current:t;return n.current=g(e,o),void 0!==r.current&&(r.current=void 0),()=>{var e;null===(e=n.current)||void 0===e||e.unregister(),n.current=void 0}}),[e]),(0,s.useEffect)((()=>{!a.current&&n.current&&n.current(t)}),[t]),(0,s.useCallback)((e=>{a.current=!0,n.current?n.current(e):r.current=e}),[])}function y(e={allowQuestions:!1,allowComponents:!1}){const[t,n]=(0,s.useState)([]),r=(0,o.useLocationService)(),a=(0,s.useRef)("");(0,s.useEffect)((()=>{const e=()=>{const e=function(e){if(!e)return[];const t=[],n=m();for(const r of n)x(e,r.urlPattern)&&t.push(...r.context);return t}(r.getLocation().pathname);n(e)},t=()=>{e()},o=r.getLocationObservable().subscribe((t=>{const n=t.pathname;n!==a.current&&(a.current=n,e())}));return window.addEventListener(l,t),window.addEventListener(u,t),window.addEventListener(d,t),window.addEventListener(p,t),e(),()=>{o.unsubscribe(),window.removeEventListener(l,t),window.removeEventListener(u,t),window.removeEventListener(d,t),window.removeEventListener(p,t)}}),[r]);let i=t;return e.allowQuestions||(i=i.filter((e=>{var t;return"question"!==(null===(t=e.node.data)||void 0===t?void 0:t.type)}))),e.allowComponents||(i=i.filter((e=>{var t;return"component"!==(null===(t=e.node.data)||void 0===t?void 0:t.type)}))),i}function w(e="page-context"){return`${e}-${Date.now()}-${Math.random().toString(36).slice(2,11)}`}function x(e,t){if(t instanceof RegExp)return t.test(e);if("string"==typeof t){if(!t||""===t.trim())return!1;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}class E extends r{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 k(){const e=y({allowComponents:!0,allowQuestions:!1});return(0,s.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)&&Object.keys(n.components).length>0){const e=n.namespace||n.name||"components";Object.entries(n.components).forEach((([n,r])=>{t[`${e}_${n}`]=r}))}})),t}),[e])}function A(e,t,n,r=/.*/){if((a=r)instanceof RegExp?".*"===a.source&&""===a.flags:".*"===a||"/.*/"===a){const r=g(/.*/,[P("component",{components:n,prompt:e,namespace:t})]),a=(e,n)=>{r([P("component",{components:e,prompt:n,namespace:t})])};return a.unregister=r.unregister,a}var a;const o=g(/.*/,[P("component",{components:n,prompt:"",namespace:t})]),s=g(r,[P("component",{components:{},prompt:e,namespace:t})]),i=(e,n)=>{o([P("component",{components:e,prompt:"",namespace:t})]),s([P("component",{components:{},prompt:n,namespace:t})])};return i.unregister=()=>{o.unregister(),s.unregister()},i}class $ extends r{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 C extends r{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 S extends r{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 I extends r{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 T extends r{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 N extends r{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 _(e){var t,n,r,a,s;const i=(0,o.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===(s=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===s?void 0:s.small}}const L={datasource:"database",label_name:"database",label_value:"database",dashboard:"dashboard",dashboard_folder:"folder",unknown:"circle-mono",structured:"gf-grid",component:"gf-grid",entity:"asserts",playbook:"play"};function P(e,t){var n,o,s;const i=function(e,t){switch(e){case"datasource":return new S({...t,..._(t.datasourceUid)});case"label_name":return new T({...t,..._(t.datasourceUid)});case"label_value":return new N({...t,..._(t.datasourceUid)});case"dashboard":return new $(t);case"dashboard_folder":return new C(t);case"structured":return new a(t);case"component":return new E({...t,hidden:!0});case"entity":return new I(t);case"unknown":return new r(t);default:return console.error(`Unknown context type: ${e}`),new r(t)}}(e,t),c=null!==(n=t.title)&&void 0!==n?n:function(e){var t;return e instanceof a?e.formatForLLM().data.name:null!==(t=e.text)&&void 0!==t?t:"Given Context"}(i),l=null!==(o=t.img)&&void 0!==o?o:function(e){if("img"in e)return e.img}(i);return{node:{id:i.id,name:c,img:l,icon:null!==(s=t.icon)&&void 0!==s?s:L[e],navigable:!1,selectable:!0,data:i},occurrences:[]}}class U extends r{constructor(e){super({...e,id:e.playbookId,type:"playbook",text:e.playbookName}),this.playbookId=e.playbookId,this.playbookName=e.playbookName,this.text=e.playbookName}formatForLLM(e){return{type:this.type,codeElementIds:e,data:{name:this.playbookName,playbookId:this.playbookId,playbookName:this.playbookName,text:this.text}}}}function O(e,t){const n=w("question"),r=e=>e.map(((e,t)=>({node:{id:`question-${n}-${t}`,name:e.title||e.prompt,navigable:!1,selectable:!0,icon:"question-circle",data:{type:"question",prompt:e.prompt,title:e.title,context:e.context||[]}},occurrences:[]}))),a=g(e,r(t)),o=e=>{a(r(e))};return o.unregister=a.unregister,o}function R(e,t=[]){const n=(0,s.useMemo)((()=>w("question")),[]),r=e=>e.map(((e,t)=>{var r;return{node:{id:`question-${n}-${t}`,name:null!==(r=e.title)&&void 0!==r?r:e.prompt,navigable:!1,selectable:!0,icon:"question-circle",data:{type:"question",prompt:e.prompt,title:e.title,context:e.context||[]}},occurrences:[]}})),a=b(e,r(t));return e=>{a(r(e))}}function z(){const e=y({allowQuestions:!0,allowComponents:!1});return D(e)}const D=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,r;return{prompt:(null===(t=e.node.data)||void 0===t?void 0:t.prompt)||e.node.name,title:null===(n=e.node.data)||void 0===n?void 0:n.title,context:(null===(r=e.node.data)||void 0===r?void 0:r.context)||[]}})),F="grafana-assistant-app/callback/v0-alpha";function M(e,t){return{namespace:e,functions:t}}function j(e){return{title:"callback",targets:[F],fn:()=>e.map((e=>({namespace:e.namespace,functions:e.functions})))}}const q=require("rxjs"),B="grafana-assistant-app",G="Grafana Assistant",W=10,V=100,K=5e3;function Q(){return o.getObservablePluginLinks?(0,q.defer)((()=>{try{return(0,o.getObservablePluginLinks)({extensionPointId:"grafana/extension-sidebar/v0-alpha"}).pipe((0,q.map)((e=>e.some((e=>e.pluginId===B&&e.title===G)))))}catch(e){return(0,q.throwError)((()=>e))}})).pipe((0,q.retry)({count:W,delay:(e,t)=>{var n;const r=(null===(n=null==e?void 0:e.message)||void 0===n?void 0:n.toLowerCase())||"";if(!(r.includes("can only be used after")||r.includes("grafana instance has started")||r.includes("not started")))throw e;const a=Math.min(V*Math.pow(2,t-1),K);return(0,q.timer)(a)}}),(0,q.catchError)((()=>(0,q.of)(!1)))):(0,q.of)(!1)}const H=require("@grafana/data");class J extends H.BusEventWithPayload{}J.type="open-extension-sidebar";class X extends H.BusEventBase{}X.type="close-extension-sidebar";class Z extends H.BusEventWithPayload{}function Y(e){var t,n;(0,o.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 J({pluginId:e,componentTitle:t,props:n});(0,o.getAppEvents)().publish(r)}(B,G,{initialPrompt:e.prompt,initialContext:e.context,initialAutoSend:null===(n=e.autoSend)||void 0===n||n,origin:e.origin,initialMode:e.mode})}function ee(){!function(){const e=new X;(0,o.getAppEvents)().publish(e)}()}function te(e){var t,n;(0,o.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 Z({pluginId:e,componentTitle:t,props:n});(0,o.getAppEvents)().publish(r)}(B,G,{initialPrompt:e.prompt,initialContext:e.context,initialAutoSend:null===(n=e.autoSend)||void 0===n||n,origin:e.origin,initialMode:e.mode})}function ne(){const[e,t]=(0,s.useState)(!1);return(0,s.useEffect)((()=>{const e=Q().subscribe((e=>t(e)));return()=>{e.unsubscribe()}}),[]),{isAvailable:e,openAssistant:e?Y:void 0,closeAssistant:e?ee:void 0,toggleAssistant:e?te:void 0}}Z.type="toggle-extension-sidebar";const re=require("@grafana/ui");var ae=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}(),oe=Math.abs,se=String.fromCharCode,ie=Object.assign;function ce(e){return e.trim()}function le(e,t,n){return e.replace(t,n)}function ue(e,t){return e.indexOf(t)}function de(e,t){return 0|e.charCodeAt(t)}function pe(e,t,n){return e.slice(t,n)}function me(e){return e.length}function fe(e){return e.length}function he(e,t){return t.push(e),e}var ge=1,ve=1,be=0,ye=0,we=0,xe="";function Ee(e,t,n,r,a,o,s){return{value:e,root:t,parent:n,type:r,props:a,children:o,line:ge,column:ve,length:s,return:""}}function ke(e,t){return ie(Ee("",null,null,"",null,null,0),e,{length:-e.length},t)}function Ae(){return we=ye>0?de(xe,--ye):0,ve--,10===we&&(ve=1,ge--),we}function $e(){return we=ye<be?de(xe,ye++):0,ve++,10===we&&(ve=1,ge++),we}function Ce(){return de(xe,ye)}function Se(){return ye}function Ie(e,t){return pe(xe,e,t)}function Te(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 Ne(e){return ge=ve=1,be=me(xe=e),ye=0,[]}function _e(e){return xe="",e}function Le(e){return ce(Ie(ye-1,Oe(91===e?e+2:40===e?e+1:e)))}function Pe(e){for(;(we=Ce())&&we<33;)$e();return Te(e)>2||Te(we)>3?"":" "}function Ue(e,t){for(;--t&&$e()&&!(we<48||we>102||we>57&&we<65||we>70&&we<97););return Ie(e,Se()+(t<6&&32==Ce()&&32==$e()))}function Oe(e){for(;$e();)switch(we){case e:return ye;case 34:case 39:34!==e&&39!==e&&Oe(we);break;case 40:41===e&&Oe(e);break;case 92:$e()}return ye}function Re(e,t){for(;$e()&&e+we!==57&&(e+we!==84||47!==Ce()););return"/*"+Ie(t,ye-1)+"*"+se(47===e?e:$e())}function ze(e){for(;!Te(Ce());)$e();return Ie(e,ye)}var De="-ms-",Fe="-moz-",Me="-webkit-",je="comm",qe="rule",Be="decl",Ge="@keyframes";function We(e,t){for(var n="",r=fe(e),a=0;a<r;a++)n+=t(e[a],a,e,t)||"";return n}function Ve(e,t,n,r){switch(e.type){case"@layer":if(e.children.length)break;case"@import":case Be:return e.return=e.return||e.value;case je:return"";case Ge:return e.return=e.value+"{"+We(e.children,r)+"}";case qe:e.value=e.props.join(",")}return me(n=We(e.children,r))?e.return=e.value+"{"+n+"}":""}function Ke(e){return _e(Qe("",null,null,null,[""],e=Ne(e),0,[0],e))}function Qe(e,t,n,r,a,o,s,i,c){for(var l=0,u=0,d=s,p=0,m=0,f=0,h=1,g=1,v=1,b=0,y="",w=a,x=o,E=r,k=y;g;)switch(f=b,b=$e()){case 40:if(108!=f&&58==de(k,d-1)){-1!=ue(k+=le(Le(b),"&","&\f"),"&\f")&&(v=-1);break}case 34:case 39:case 91:k+=Le(b);break;case 9:case 10:case 13:case 32:k+=Pe(f);break;case 92:k+=Ue(Se()-1,7);continue;case 47:switch(Ce()){case 42:case 47:he(Je(Re($e(),Se()),t,n),c);break;default:k+="/"}break;case 123*h:i[l++]=me(k)*v;case 125*h:case 59:case 0:switch(b){case 0:case 125:g=0;case 59+u:-1==v&&(k=le(k,/\f/g,"")),m>0&&me(k)-d&&he(m>32?Xe(k+";",r,n,d-1):Xe(le(k," ","")+";",r,n,d-2),c);break;case 59:k+=";";default:if(he(E=He(k,t,n,l,u,a,i,y,w=[],x=[],d),o),123===b)if(0===u)Qe(k,t,E,E,w,o,d,i,x);else switch(99===p&&110===de(k,3)?100:p){case 100:case 108:case 109:case 115:Qe(e,E,E,r&&he(He(e,E,E,0,0,a,i,y,a,w=[],d),x),a,x,d,i,r?w:x);break;default:Qe(k,E,E,E,[""],x,0,i,x)}}l=u=m=0,h=v=1,y=k="",d=s;break;case 58:d=1+me(k),m=f;default:if(h<1)if(123==b)--h;else if(125==b&&0==h++&&125==Ae())continue;switch(k+=se(b),b*h){case 38:v=u>0?1:(k+="\f",-1);break;case 44:i[l++]=(me(k)-1)*v,v=1;break;case 64:45===Ce()&&(k+=Le($e())),p=Ce(),u=d=me(y=k+=ze(Se())),b++;break;case 45:45===f&&2==me(k)&&(h=0)}}return o}function He(e,t,n,r,a,o,s,i,c,l,u){for(var d=a-1,p=0===a?o:[""],m=fe(p),f=0,h=0,g=0;f<r;++f)for(var v=0,b=pe(e,d+1,d=oe(h=s[f])),y=e;v<m;++v)(y=ce(h>0?p[v]+" "+b:le(b,/&\f/g,p[v])))&&(c[g++]=y);return Ee(e,t,n,0===a?qe:i,c,l,u)}function Je(e,t,n){return Ee(e,t,n,je,se(we),pe(e,2,-2),0)}function Xe(e,t,n,r){return Ee(e,t,n,Be,pe(e,0,r),pe(e,r+1,-1),r)}var Ze=function(e,t,n){for(var r=0,a=0;r=a,a=Ce(),38===r&&12===a&&(t[n]=1),!Te(a);)$e();return Ie(e,ye)},Ye=new WeakMap,et=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)||Ye.get(n))&&!r){Ye.set(e,!0);for(var a=[],o=function(e,t){return _e(function(e,t){var n=-1,r=44;do{switch(Te(r)){case 0:38===r&&12===Ce()&&(t[n]=1),e[n]+=Ze(ye-1,t,n);break;case 2:e[n]+=Le(r);break;case 4:if(44===r){e[++n]=58===Ce()?"&\f":"",t[n]=e[n].length;break}default:e[n]+=se(r)}}while(r=$e());return e}(Ne(e),t))}(t,a),s=n.props,i=0,c=0;i<o.length;i++)for(var l=0;l<s.length;l++,c++)e.props[c]=a[i]?o[i].replace(/&\f/g,s[l]):s[l]+" "+o[i]}}},tt=function(e){if("decl"===e.type){var t=e.value;108===t.charCodeAt(0)&&98===t.charCodeAt(2)&&(e.return="",e.value="")}};function nt(e,t){switch(function(e,t){return 45^de(e,0)?(((t<<2^de(e,0))<<2^de(e,1))<<2^de(e,2))<<2^de(e,3):0}(e,t)){case 5103:return Me+"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 Me+e+e;case 5349:case 4246:case 4810:case 6968:case 2756:return Me+e+Fe+e+De+e+e;case 6828:case 4268:return Me+e+De+e+e;case 6165:return Me+e+De+"flex-"+e+e;case 5187:return Me+e+le(e,/(\w+).+(:[^]+)/,Me+"box-$1$2"+De+"flex-$1$2")+e;case 5443:return Me+e+De+"flex-item-"+le(e,/flex-|-self/,"")+e;case 4675:return Me+e+De+"flex-line-pack"+le(e,/align-content|flex-|-self/,"")+e;case 5548:return Me+e+De+le(e,"shrink","negative")+e;case 5292:return Me+e+De+le(e,"basis","preferred-size")+e;case 6060:return Me+"box-"+le(e,"-grow","")+Me+e+De+le(e,"grow","positive")+e;case 4554:return Me+le(e,/([^-])(transform)/g,"$1"+Me+"$2")+e;case 6187:return le(le(le(e,/(zoom-|grab)/,Me+"$1"),/(image-set)/,Me+"$1"),e,"")+e;case 5495:case 3959:return le(e,/(image-set\([^]*)/,Me+"$1$`$1");case 4968:return le(le(e,/(.+:)(flex-)?(.*)/,Me+"box-pack:$3"+De+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+Me+e+e;case 4095:case 3583:case 4068:case 2532:return le(e,/(.+)-inline(.+)/,Me+"$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(me(e)-1-t>6)switch(de(e,t+1)){case 109:if(45!==de(e,t+4))break;case 102:return le(e,/(.+:)(.+)-([^]+)/,"$1"+Me+"$2-$3$1"+Fe+(108==de(e,t+3)?"$3":"$2-$3"))+e;case 115:return~ue(e,"stretch")?nt(le(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(115!==de(e,t+1))break;case 6444:switch(de(e,me(e)-3-(~ue(e,"!important")&&10))){case 107:return le(e,":",":"+Me)+e;case 101:return le(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+Me+(45===de(e,14)?"inline-":"")+"box$3$1"+Me+"$2$3$1"+De+"$2box$3")+e}break;case 5936:switch(de(e,t+11)){case 114:return Me+e+De+le(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return Me+e+De+le(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return Me+e+De+le(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return Me+e+De+e+e}return e}var rt=[function(e,t,n,r){if(e.length>-1&&!e.return)switch(e.type){case Be:e.return=nt(e.value,e.length);break;case Ge:return We([ke(e,{value:le(e.value,"@","@"+Me)})],r);case qe: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 We([ke(e,{props:[le(t,/:(read-\w+)/,":-moz-$1")]})],r);case"::placeholder":return We([ke(e,{props:[le(t,/:(plac\w+)/,":"+Me+"input-$1")]}),ke(e,{props:[le(t,/:(plac\w+)/,":-moz-$1")]}),ke(e,{props:[le(t,/:(plac\w+)/,De+"input-$1")]})],r)}return""}))}}],at={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};function ot(e){var t=Object.create(null);return function(n){return void 0===t[n]&&(t[n]=e(n)),t[n]}}var st=/[A-Z]|^ms/g,it=/_EMO_([^_]+?)_([^]*?)_EMO_/g,ct=function(e){return 45===e.charCodeAt(1)},lt=function(e){return null!=e&&"boolean"!=typeof e},ut=ot((function(e){return ct(e)?e:e.replace(st,"-$&").toLowerCase()})),dt=function(e,t){switch(e){case"animation":case"animationName":if("string"==typeof t)return t.replace(it,(function(e,t,n){return mt={name:t,styles:n,next:mt},t}))}return 1===at[e]||ct(e)||"number"!=typeof t||0===t?t:t+"px"};function pt(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 mt={name:a.name,styles:a.styles,next:mt},a.name;var o=n;if(void 0!==o.styles){var s=o.next;if(void 0!==s)for(;void 0!==s;)mt={name:s.name,styles:s.styles,next:mt},s=s.next;return o.styles+";"}return function(e,t,n){var r="";if(Array.isArray(n))for(var a=0;a<n.length;a++)r+=pt(e,t,n[a])+";";else for(var o in n){var s=n[o];if("object"!=typeof s){var i=s;null!=t&&void 0!==t[i]?r+=o+"{"+t[i]+"}":lt(i)&&(r+=ut(o)+":"+dt(o,i)+";")}else if(!Array.isArray(s)||"string"!=typeof s[0]||null!=t&&void 0!==t[s[0]]){var c=pt(e,t,s);switch(o){case"animation":case"animationName":r+=ut(o)+":"+c+";";break;default:r+=o+"{"+c+"}"}}else for(var l=0;l<s.length;l++)lt(s[l])&&(r+=ut(o)+":"+dt(o,s[l])+";")}return r}(e,t,n);case"function":if(void 0!==e){var i=mt,c=n(e);return mt=i,pt(e,t,c)}}var l=n;if(null==t)return l;var u=t[l];return void 0!==u?u:l}var mt,ft=/label:\s*([^\s;{]+)\s*(;|$)/g;function ht(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="";mt=void 0;var o=e[0];null==o||void 0===o.raw?(r=!1,a+=pt(n,t,o)):a+=o[0];for(var s=1;s<e.length;s++)a+=pt(n,t,e[s]),r&&(a+=o[s]);ft.lastIndex=0;for(var i,c="";null!==(i=ft.exec(a));)c+="-"+i[1];var l=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)+c;return{name:l,styles:a,next:mt}}function gt(e,t,n){var r="";return n.split(" ").forEach((function(n){void 0!==e[n]?t.push(e[n]+";"):n&&(r+=n+" ")})),r}function vt(e,t){if(void 0===e.inserted[t.name])return e.insert("",t,e.sheet,!0)}function bt(e,t,n){var r=[],a=gt(e,r,n);return r.length<2?n:a+t(r)}var yt=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 s in o="",a)a[s]&&s&&(o&&(o+=" "),o+=s);break;default:o=a}o&&(n&&(n+=" "),n+=o)}}return n};var wt=function(e){var t=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||rt,s={},i=[];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++)s[t[n]]=!0;i.push(e)}));var c,l,u,d,p=[Ve,(d=function(e){c.insert(e)},function(e){e.root||(e=e.return)&&d(e)})],m=(l=[et,tt].concat(o,p),u=fe(l),function(e,t,n,r){for(var a="",o=0;o<u;o++)a+=l[o](e,t,n,r)||"";return a});a=function(e,t,n,r){c=n,We(Ke(e?e+"{"+t.styles+"}":t.styles),m),r&&(f.inserted[t.name]=!0)};var f={key:t,sheet:new ae({key:t,container:r,nonce:e.nonce,speedy:e.speedy,prepend:e.prepend,insertionPoint:e.insertionPoint}),nonce:e.nonce,inserted:s,registered:{},insert:a};return f.sheet.hydrate(i),f}(e);t.sheet.speedy=function(e){this.isSpeedy=e},t.compat=!0;var n=function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];var a=ht(n,t.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)}}(t,a),t.key+"-"+a.name};return{css:n,cx:function(){for(var e=arguments.length,r=new Array(e),a=0;a<e;a++)r[a]=arguments[a];return bt(t.registered,n,yt(r))},injectGlobal:function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];var a=ht(n,t.registered);vt(t,a)},keyframes:function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];var a=ht(n,t.registered),o="animation-"+a.name;return vt(t,{name:a.name,styles:"@keyframes "+o+"{"+a.styles+"}"}),o},hydrate:function(e){e.forEach((function(e){t.inserted[e]=!0}))},flush:function(){t.registered={},t.inserted={},t.sheet.flush()},sheet:t.sheet,cache:t,getRegisteredStyles:gt.bind(null,t.registered),merge:bt.bind(null,t.registered,n)}}({key:"css"}),xt=(wt.flush,wt.hydrate,wt.cx),Et=(wt.merge,wt.getRegisteredStyles,wt.injectGlobal,wt.keyframes),kt=wt.css;function At(e){const{isAvailable:t,openAssistant:n}=ne();return t&&n?i().createElement($t,{...e,openAssistant:n}):null}function $t({prompt:e,origin:t,context:n,autoSend:r=!0,title:a="Analyze with Assistant",size:c="sm",iconOnlyButton:l=!1,openAssistant:u,onClick:d}){const p=(0,re.useStyles2)(Ct);return(0,s.useEffect)((()=>{(0,o.reportInteraction)("grafana_assistant_app_open_sidebar_button_displayed",{from:t})}),[t]),i().createElement(i().Fragment,null,l?i().createElement(re.IconButton,{name:"ai-sparkle",onClick:()=>{null==d||d(),u({prompt:e,context:n,autoSend:r,origin:t})},variant:"secondary",size:c,"aria-label":a,className:p.icon,tooltip:a,"data-testid":"assistant-icon-button"}):i().createElement(re.Button,{icon:"ai-sparkle",onClick:()=>{null==d||d(),u({prompt:e,context:n,autoSend:r,origin:t})},variant:"secondary",fill:"solid",size:c,title:a,"aria-label":a,className:p.button,"data-testid":"assistant-button"},a))}wt.sheet,wt.cache;const Ct=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)`,s={content:'""',position:"absolute",inset:0,borderRadius:a,cornerShape:"squircle",background:"linear-gradient(90deg, rgb(168, 85, 247), rgb(249, 115, 22))",zIndex:-2,pointerEvents:"none"},i=e=>({content:'""',position:"absolute",inset:"1px",borderRadius:o,cornerShape:"squircle",background:`linear-gradient(${e}, ${e}), ${r}`,zIndex:-1,transition:"none",pointerEvents:"none"});return{button:kt({label:"assistant-button",position:"relative",isolation:"isolate",border:"none",transition:"none !important","&::before":s,"&::after":{...i(t),transition:"none"},"&:hover":{transition:"none !important"},"&:hover::after":{background:`linear-gradient(${n}, ${n}), ${r}`}}),icon:kt({label:"assistant-icon",position:"relative",isolation:"isolate",border:"none",background:"none",padding:e.spacing(.5),"&::before":{...s,transition:"background 0.1s ease"},"&:hover::after":{...i(t),background:`linear-gradient(${n}, ${n}), ${r}`}})}};function St(e){const{isAvailable:t,openAssistant:n}=ne();return t&&n?i().createElement(It,{...e,openAssistant:n}):null}function It({prompt:e,origin:t,context:n,autoSend:r=!0,title:a="Chat with Assistant",size:c="sm",onClick:l,menuItems:u,tooltip:d,openAssistant:p}){const m=(0,re.useStyles2)(Tt);(0,s.useEffect)((()=>{(0,o.reportInteraction)("grafana_assistant_app_open_sidebar_split_button_displayed",{from:t})}),[t]);const f=i().createElement("div",{className:m.wrapper},i().createElement(re.ButtonGroup,{className:m.buttonGroup},i().createElement(re.Button,{icon:"ai-sparkle",onClick:()=>{null==l||l(),p({prompt:e,context:n,autoSend:r,origin:t})},variant:"secondary",fill:"solid",size:c,"aria-label":a,"data-testid":"assistant-split-button-main"},a),u&&i().createElement(re.Dropdown,{overlay:u},i().createElement(re.Button,{variant:"secondary",icon:"angle-down",size:c,"aria-label":"More AI actions",className:m.dropdownButton,"data-testid":"assistant-split-button-dropdown"}))));return d?i().createElement(re.Tooltip,{content:d},f):f}const Tt=e=>{const t=e.colors.secondary.main,n=e.colors.emphasize(t,.05),r=e.colors.background.canvas,a=e.shape.radius.default;return{wrapper:kt({label:"assistant-split-button-wrapper",position:"relative",isolation:"isolate",display:"inline-block","&::before":{content:'""',position:"absolute",inset:0,borderRadius:a,cornerShape:"squircle",background:"linear-gradient(90deg, rgb(168, 85, 247), rgb(249, 115, 22))",zIndex:-1,pointerEvents:"none"},"&::after":{content:'""',position:"absolute",inset:"1px",borderRadius:`max(calc(${a} - 1px), 1px)`,cornerShape:"squircle",background:`linear-gradient(${t}, ${t}), ${r}`,zIndex:-1,pointerEvents:"none"},"&:hover::after":{background:`linear-gradient(${n}, ${n}), ${r}`}}),buttonGroup:kt({label:"assistant-split-button-group",gap:0,position:"relative",zIndex:1,"& button":{border:"none",background:"transparent !important","&:hover":{background:"transparent !important"}}}),dropdownButton:kt({padding:"0 6px"})}},Nt="__grafanaAssistantInlineFactory__",_t="__grafanaAssistantInlineInitializer__",Lt="__grafanaAssistantInlineInitPromise__";function Pt(e){const t=window[Nt];t&&t!==e?console.warn("InlineAssistant factory already set; ignoring subsequent setInlineAssistantFactory call"):t||(window[Nt]=e)}function Ut(e){const t=window[_t];t&&t!==e?console.warn("InlineAssistant initializer already set; ignoring subsequent setInlineAssistantInitializer call"):t||(window[_t]=e)}async function Ot(){if(window[Nt])return;const e=window[_t];if(!e)throw new Error("InlineAssistant not initialized. Make sure the Grafana Assistant plugin is loaded and initialized.");const t=window[Lt];if(t)return t;const n=(async()=>{try{await e()}catch(e){throw window[Lt]=null,e}})();return window[Lt]=n,n}function Rt(){const e=window[Nt];if(!e)throw new Error("InlineAssistant factory not initialized. Make sure the Grafana Assistant plugin is loaded.");return e}function zt(){const[e,t]=(0,s.useState)(!1),[n,r]=(0,s.useState)(""),[a,o]=(0,s.useState)(null),i=(0,s.useRef)(null),c=(0,s.useCallback)((()=>{o(null),r("")}),[]),l=(0,s.useCallback)((()=>{i.current&&i.current.cancel(),t(!1)}),[]),u=(0,s.useCallback)((async e=>{var n;o(null),r(""),t(!0);try{await Ot();const n=Rt();i.current||(i.current=await n(e.origin)),await i.current.sendPrompt({prompt:e.prompt,systemPrompt:e.systemPrompt,tools:e.tools,onStart:()=>{t(!0)},onDelta:t=>{var n;r((e=>e+t)),null===(n=e.onDelta)||void 0===n||n.call(e,t)},onComplete:n=>{var a;r(n),t(!1),null===(a=e.onComplete)||void 0===a||a.call(e,n)},onError:n=>{var r;o(n),t(!1),null===(r=e.onError)||void 0===r||r.call(e,n)}})}catch(r){const a=r instanceof Error?r:new Error(String(r));o(a),t(!1),null===(n=e.onError)||void 0===n||n.call(e,a)}}),[]);return(0,s.useEffect)((()=>()=>{i.current&&(i.current.cancel(),i.current.dispose(),i.current=null)}),[]),{generate:u,isGenerating:e,content:n,error:a,cancel:l,reset:c}}const Dt=e=>{const t=["rgb(168, 85, 247)","rgb(249, 115, 22)"];if("dark"===e.name.toLowerCase()||"light"===e.name.toLowerCase())return t;const n=e.colors.gradients.brandHorizontal.match(/#[0-9A-Fa-f]{6}/g);return!n||n.length<2?t:[n[0],n[1]]},Ft=(e,t,n,r)=>{const a=Array.from({length:101},((e,t)=>t)),o={},[s,i]=Dt(e),c=null!=n?n:s,l=null!=r?r:i;return a.forEach((e=>{o[`${e}%`]={backgroundImage:`\n linear-gradient(${t}, ${t}),\n conic-gradient(from ${3.6*e}deg, transparent 60%, ${c} 80%, ${l} 100%, transparent 15%)\n `}})),o};function Mt({value:e,onChange:t,placeholder:n,origin:r,systemPrompt:a,onComplete:o,onError:s,onDelta:c,disabled:l=!1,className:u,"data-testid":d}){const{generate:p,isGenerating:m,error:f,reset:h}=zt(),g=!e.trim()||l||m,v=(0,re.useStyles2)(jt),b=async()=>{if(g)return;const t=e.trim();h(),await p({prompt:t,origin:r,systemPrompt:a,onComplete:e=>{null==o||o(e)},onError:e=>{null==s||s(e)},onDelta:e=>{null==c||c(e)}})},y=i().createElement(re.IconButton,{name:"ai-sparkle",onClick:b,disabled:g,tooltip:g?"Enter text to generate":"Generate with AI","data-testid":d?`${d}-send`:void 0});return i().createElement("div",{className:xt(v.wrapper,{[v.animatedWrapper]:m},u),"data-testid":d},i().createElement(re.Input,{value:e,onKeyDown:e=>{"Enter"===e.key&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),b())},onChange:e=>t(e.currentTarget.value),placeholder:null!=n?n:"Ask AI to generate...",disabled:l||m,suffix:y,invalid:!!f,"data-testid":d?`${d}-input`:void 0}))}const jt=e=>{const t=e.colors.background.primary,n=Et({label:"ai-input-border-animation",...Ft(e,t)}),[r,a]=Dt(e);return{wrapper:kt({label:"ai-text-input-wrapper",position:"relative",borderRadius:e.shape.radius.default,cornerShape:"squircle"}),animatedWrapper:kt({label:"ai-text-input-animated",border:"1px solid transparent",backgroundImage:`\n linear-gradient(${t}, ${t}),\n conic-gradient(from 0deg, transparent 60%, ${r} 80%, ${a} 100%, transparent 15%)\n `,backgroundOrigin:"border-box",backgroundClip:"padding-box, border-box",animation:`${n} 2s linear infinite`,"& input":{border:"none !important"}})}};function qt({value:e,onChange:t,placeholder:n,origin:r,systemPrompt:a,onComplete:o,onError:s,onDelta:c,disabled:l=!1,rows:u=4,className:d,"data-testid":p}){const{generate:m,isGenerating:f,error:h,reset:g}=zt(),v=!e.trim()||l||f,b=(0,re.useStyles2)(Bt),y=async()=>{if(v)return;const t=e.trim();g(),await m({prompt:t,origin:r,systemPrompt:a,onComplete:e=>{null==o||o(e)},onError:e=>{null==s||s(e)},onDelta:e=>{null==c||c(e)}})};return i().createElement("div",{className:xt(b.textareaWrapper,{[b.animatedWrapper]:f},d),"data-testid":p},i().createElement(re.TextArea,{value:e,onKeyDown:e=>{"Enter"===e.key&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),y())},onChange:e=>t(e.currentTarget.value),placeholder:null!=n?n:"Ask AI to generate... (Cmd/Ctrl+Enter to send)",disabled:l||f,rows:u,className:b.textarea,invalid:!!h,"data-testid":p?`${p}-textarea`:void 0}),i().createElement(re.IconButton,{name:"ai-sparkle",onClick:y,disabled:v,className:b.sendButton,"aria-label":"Generate with AI",tooltip:v?"Enter text to generate":"Generate with AI (Cmd/Ctrl+Enter)","data-testid":p?`${p}-send`:void 0}))}const Bt=e=>{const t=e.colors.background.primary,n=Et({label:"ai-textarea-border-animation",...Ft(e,t)}),[r,a]=Dt(e);return{textareaWrapper:kt({label:"ai-textarea-wrapper",position:"relative",borderRadius:e.shape.radius.default,cornerShape:"squircle"}),animatedWrapper:kt({label:"ai-textarea-animated",border:"1px solid transparent",backgroundImage:`\n linear-gradient(${t}, ${t}),\n conic-gradient(from 0deg, transparent 60%, ${r} 80%, ${a} 100%, transparent 15%)\n `,backgroundOrigin:"border-box",backgroundClip:"padding-box, border-box",animation:`${n} 2s linear infinite`,"& textarea":{border:"none !important"}}),textarea:kt({label:"ai-textarea",paddingRight:e.spacing(4),scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}}),sendButton:kt({label:"ai-textarea-send",position:"absolute",right:e.spacing(1),top:e.spacing(1)})}};function Gt(e){const t=e.split("+")[0].split("-"),n=t[0],r=t.length>1?t.slice(1).join("-"):void 0,a=n.split(".").map(Number);return 3!==a.length||a.some(isNaN)?null:{major:a[0],minor:a[1],patch:a[2],prerelease:r}}const Wt="grafana-assistant-terms-and-conditions-refresh";async function Vt(){var e,t;const n=(0,o.getBackendSrv)(),r=`${null!==(e=null===o.config||void 0===o.config?void 0:o.config.appSubUrl)&&void 0!==e?e:""}/api/plugins/${B}/resources/api/v1/settings/terms`,a=(await(0,q.lastValueFrom)(n.fetch({url:r,method:"GET"}))).data.data,s=null!==(t=a.acceptedTermsAndConditions)&&void 0!==t&&t,i=a.acceptedVersion,c=a.version,l=a.termsType;if("msa"===l)return{accepted:s,termsType:l};if(!s||!i||!c)return{accepted:!1,termsType:l};const u=1===function(e,t){const n=Gt(e),r=Gt(t);return n&&r?n.major!==r.major?n.major>r.major?1:-1:n.minor!==r.minor?n.minor>r.minor?1:-1:n.patch!==r.patch?n.patch>r.patch?1:-1:n.prerelease&&r.prerelease?n.prerelease===r.prerelease?0:n.prerelease>r.prerelease?1:-1:n.prerelease&&!r.prerelease?-1:!n.prerelease&&r.prerelease?1:0:null}(c,i);return{accepted:s&&!u,termsType:l}}async function Kt(){try{return(await Vt()).accepted}catch(e){throw new Error(`Failed to check terms requirements: ${e instanceof Error?e.message:String(e)}`)}}async function Qt(){var e;const t=(0,o.getBackendSrv)(),n=`${null!==(e=null===o.config||void 0===o.config?void 0:o.config.appSubUrl)&&void 0!==e?e:""}/api/plugins/${B}/resources/api/v1/settings/accept-terms`;try{await(0,q.lastValueFrom)(t.fetch({url:n,method:"PUT",data:{acceptedTermsAndConditions:!0}})),"undefined"!=typeof document&&document.dispatchEvent(new CustomEvent(Wt))}catch(e){throw new Error(`Failed to accept terms: ${e instanceof Error?e.message:String(e)}`)}}function Ht(){const[e,t]=(0,s.useState)(!1),[n,r]=(0,s.useState)(null),[a,o]=(0,s.useState)(!0),[i,c]=(0,s.useState)(null);return(0,s.useEffect)((()=>{!async function(){try{o(!0),c(null);const e=await Vt();t(e.accepted),r(e.termsType)}catch(e){const n=e instanceof Error?e.message:"Failed to check terms";c(n),t(!1),r(null)}finally{o(!1)}}()}),[]),{accepted:e,termsType:n,loading:a,error:i,acceptTerms:(0,s.useCallback)((async()=>{try{o(!0),c(null),await Qt();const e=await Vt();t(e.accepted),r(e.termsType)}catch(e){const n=e instanceof Error?e.message:"Failed to accept terms";c(n),t(!1),r(null)}finally{o(!1)}}),[])}}function Jt(e,t){var n;const{explainer:r,...a}=null!==(n=t.metadata)&&void 0!==n?n:{},o={name:t.name,description:t.description,inputSchema:t.inputSchema,metadata:r?{...a,explainer:e=>r(e)}:a,responseFormat:t.responseFormat,verboseParsingErrors:t.verboseParsingErrors,async invoke(n,r){var a;try{if(null===(a=r.signal)||void 0===a?void 0:a.aborted)throw new Error(`Tool ${t.name} execution was aborted`);const o=t.validate(n),s=[e(o,r)];return r.signal&&s.push(new Promise(((e,n)=>{var a;null===(a=r.signal)||void 0===a||a.addEventListener("abort",(()=>{n(new Error(`Tool ${t.name} execution was aborted`))}),{once:!0})}))),r.timeout&&r.timeout>0&&s.push(new Promise(((e,n)=>{setTimeout((()=>{n(new Error(`Tool ${t.name} execution timed out after ${r.timeout}ms`))}),r.timeout)}))),Promise.race(s)}catch(e){throw t.verboseParsingErrors&&console.error(`Error invoking tool ${t.name}:`,e,n),e}}};return o}module.exports=t})();
|
|
2
2
|
//# sourceMappingURL=index.js.map
|