@grafana/assistant 0.1.5 → 0.1.6
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.
package/dist/context/page.d.ts
CHANGED
|
@@ -17,7 +17,7 @@ export interface PageContextRegistration {
|
|
|
17
17
|
* when the pattern matches. Each call creates a new independent registration.
|
|
18
18
|
*
|
|
19
19
|
* @param urlPattern - URL pattern (string or RegExp) to match against page URLs
|
|
20
|
-
* @param initialContext - Initial array of
|
|
20
|
+
* @param initialContext - *Initial* array of ContextItems to provide when the pattern matches. IMPORTANT: will be overwritten when setContext is used to update the context.
|
|
21
21
|
* @returns A setter function to update the context, with an unregister method attached
|
|
22
22
|
*/
|
|
23
23
|
export declare function providePageContext(urlPattern: string | RegExp, initialContext: ChatContextItem[]): ((context: ChatContextItem[]) => void) & {
|
|
@@ -28,7 +28,7 @@ export declare function providePageContext(urlPattern: string | RegExp, initialC
|
|
|
28
28
|
* This is the recommended way to use page context in React components.
|
|
29
29
|
*
|
|
30
30
|
* @param urlPattern - URL pattern (string or RegExp) to match against page URLs
|
|
31
|
-
* @param initialContext - Initial array of
|
|
31
|
+
* @param initialContext - Initial array of ContextItems to provide when the pattern matches. IMPORTANT: will be overwritten when setContext is used to update the context.
|
|
32
32
|
* @returns A setter function to update the context
|
|
33
33
|
*/
|
|
34
34
|
export declare function useProvidePageContext(urlPattern: string | RegExp, initialContext?: ChatContextItem[]): (context: ChatContextItem[]) => void;
|
|
@@ -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,CAyDrE;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,MAAM,GAAG,MAAM,EAC3B,cAAc,GAAE,eAAe,EAAO,GACrC,CAAC,OAAO,EAAE,eAAe,EAAE,KAAK,IAAI,
|
|
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,CAyDrE;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,MAAM,GAAG,MAAM,EAC3B,cAAc,GAAE,eAAe,EAAO,GACrC,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;AAiDD;;;;;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:()=>Dt,AITextInput:()=>zt,ASSISTANT_PLUGIN_ID:()=>M,ASSISTANT_PLUGIN_TITLE:()=>B,CALLBACK_EXTENSION_POINT:()=>D,ComponentNodeData:()=>x,DashboardNodeData:()=>A,DatasourceNodeData:()=>C,EntityNodeData:()=>S,FolderNodeData:()=>$,LabelNameNodeData:()=>I,LabelValueNodeData:()=>N,OpenAssistantButton:()=>wt,OpenAssistantSplitButton:()=>Et,PlaybookNodeData:()=>P,StructuredNodeData:()=>a,acceptTerms:()=>Mt,checkTerms:()=>qt,closeAssistant:()=>J,createAssistantContextItem:()=>L,createTool:()=>Gt,ensureInlineAssistantInitialized:()=>Tt,getExposeAssistantFunctionsConfig:()=>j,getInlineAssistantFactory:()=>Lt,isAssistantAvailable:()=>G,newFunctionNamespace:()=>R,openAssistant:()=>H,provideComponents:()=>E,providePageContext:()=>g,provideQuestions:()=>U,setInlineAssistantFactory:()=>Nt,setInlineAssistantInitializer:()=>_t,toggleAssistant:()=>X,useAssistant:()=>Z,useInlineAssistant:()=>Pt,usePageComponents:()=>k,usePageContext:()=>b,useProvidePageContext:()=>v,useProvideQuestions:()=>O,useQuestions:()=>z,useTerms:()=>Bt});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:y(),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}function v(e,t=[]){const n=(0,s.useRef)(void 0),r=(0,s.useRef)(t);return r.current=t,(0,s.useEffect)((()=>(n.current=g(e,r.current),()=>{var e;null===(e=n.current)||void 0===e||e.unregister()})),[e]),(0,s.useEffect)((()=>{n.current&&n.current(t)}),[t]),(0,s.useCallback)((e=>{var t;null===(t=n.current)||void 0===t||t.call(n,e)}),[])}function b(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)w(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 y(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}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)})));class x 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=b({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 E(e,t,n,r=/.*/){if((a=r)instanceof RegExp?".*"===a.source&&""===a.flags:".*"===a||"/.*/"===a){const r=g(/.*/,[L("component",{components:n,prompt:e,namespace:t})]),a=(e,n)=>{r([L("component",{components:e,prompt:n,namespace:t})])};return a.unregister=r.unregister,a}var a;const o=g(/.*/,[L("component",{components:n,prompt:"",namespace:t})]),s=g(r,[L("component",{components:{},prompt:e,namespace:t})]),i=(e,n)=>{o([L("component",{components:e,prompt:"",namespace:t})]),s([L("component",{components:{},prompt:n,namespace:t})])};return i.unregister=()=>{o.unregister(),s.unregister()},i}class A 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 $ 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 C 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 S 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 I 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 T={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 L(e,t){var n,o,s;const i=function(e,t){switch(e){case"datasource":return new C({...t,..._(t.datasourceUid)});case"label_name":return new I({...t,..._(t.datasourceUid)});case"label_value":return new N({...t,..._(t.datasourceUid)});case"dashboard":return new A(t);case"dashboard_folder":return new $(t);case"structured":return new a(t);case"component":return new x({...t,hidden:!0});case"entity":return new S(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:T[e],navigable:!1,selectable:!0,data:i},occurrences:[]}}class P 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 U(e,t){const n=y("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 O(e,t=[]){const n=(0,s.useMemo)((()=>y("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=v(e,r(t));return e=>{a(r(e))}}function z(){const e=b({allowQuestions:!0,allowComponents:!1});return F(e)}const F=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)||[]}})),D="grafana-assistant-app/callback/v0-alpha";function R(e,t){return{namespace:e,functions:t}}function j(e){return{title:"callback",targets:[D],fn:()=>e.map((e=>({namespace:e.namespace,functions:e.functions})))}}const q=require("rxjs"),M="grafana-assistant-app",B="Grafana Assistant";function G(){if(!o.getObservablePluginLinks)return(0,q.of)(!1);return(0,o.getObservablePluginLinks)({extensionPointId:"grafana/extension-sidebar/v0-alpha"}).pipe((0,q.map)((e=>e.some((e=>e.pluginId===M&&e.title===B)))))}const W=require("@grafana/data");class V extends W.BusEventWithPayload{}V.type="open-extension-sidebar";class K extends W.BusEventBase{}K.type="close-extension-sidebar";class Q extends W.BusEventWithPayload{}function H(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 V({pluginId:e,componentTitle:t,props:n});(0,o.getAppEvents)().publish(r)}(M,B,{initialPrompt:e.prompt,initialContext:e.context,initialAutoSend:null===(n=e.autoSend)||void 0===n||n,origin:e.origin,initialMode:e.mode})}function J(){!function(){const e=new K;(0,o.getAppEvents)().publish(e)}()}function X(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 Q({pluginId:e,componentTitle:t,props:n});(0,o.getAppEvents)().publish(r)}(M,B,{initialPrompt:e.prompt,initialContext:e.context,initialAutoSend:null===(n=e.autoSend)||void 0===n||n,origin:e.origin,initialMode:e.mode})}function Z(){const[e,t]=(0,s.useState)(!1);return(0,s.useEffect)((()=>{const e=G().subscribe((e=>t(e)));return()=>{e.unsubscribe()}}),[]),{isAvailable:e,openAssistant:e?H:void 0,closeAssistant:e?J:void 0,toggleAssistant:e?X:void 0}}Q.type="toggle-extension-sidebar";const Y=require("@grafana/ui");var ee=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}(),te=Math.abs,ne=String.fromCharCode,re=Object.assign;function ae(e){return e.trim()}function oe(e,t,n){return e.replace(t,n)}function se(e,t){return e.indexOf(t)}function ie(e,t){return 0|e.charCodeAt(t)}function ce(e,t,n){return e.slice(t,n)}function le(e){return e.length}function ue(e){return e.length}function de(e,t){return t.push(e),e}var pe=1,me=1,fe=0,he=0,ge=0,ve="";function be(e,t,n,r,a,o,s){return{value:e,root:t,parent:n,type:r,props:a,children:o,line:pe,column:me,length:s,return:""}}function ye(e,t){return re(be("",null,null,"",null,null,0),e,{length:-e.length},t)}function we(){return ge=he>0?ie(ve,--he):0,me--,10===ge&&(me=1,pe--),ge}function xe(){return ge=he<fe?ie(ve,he++):0,me++,10===ge&&(me=1,pe++),ge}function ke(){return ie(ve,he)}function Ee(){return he}function Ae(e,t){return ce(ve,e,t)}function $e(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 pe=me=1,fe=le(ve=e),he=0,[]}function Se(e){return ve="",e}function Ie(e){return ae(Ae(he-1,Te(91===e?e+2:40===e?e+1:e)))}function Ne(e){for(;(ge=ke())&&ge<33;)xe();return $e(e)>2||$e(ge)>3?"":" "}function _e(e,t){for(;--t&&xe()&&!(ge<48||ge>102||ge>57&&ge<65||ge>70&&ge<97););return Ae(e,Ee()+(t<6&&32==ke()&&32==xe()))}function Te(e){for(;xe();)switch(ge){case e:return he;case 34:case 39:34!==e&&39!==e&&Te(ge);break;case 40:41===e&&Te(e);break;case 92:xe()}return he}function Le(e,t){for(;xe()&&e+ge!==57&&(e+ge!==84||47!==ke()););return"/*"+Ae(t,he-1)+"*"+ne(47===e?e:xe())}function Pe(e){for(;!$e(ke());)xe();return Ae(e,he)}var Ue="-ms-",Oe="-moz-",ze="-webkit-",Fe="comm",De="rule",Re="decl",je="@keyframes";function qe(e,t){for(var n="",r=ue(e),a=0;a<r;a++)n+=t(e[a],a,e,t)||"";return n}function Me(e,t,n,r){switch(e.type){case"@layer":if(e.children.length)break;case"@import":case Re:return e.return=e.return||e.value;case Fe:return"";case je:return e.return=e.value+"{"+qe(e.children,r)+"}";case De:e.value=e.props.join(",")}return le(n=qe(e.children,r))?e.return=e.value+"{"+n+"}":""}function Be(e){return Se(Ge("",null,null,null,[""],e=Ce(e),0,[0],e))}function Ge(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=xe()){case 40:if(108!=f&&58==ie(E,d-1)){-1!=se(E+=oe(Ie(b),"&","&\f"),"&\f")&&(v=-1);break}case 34:case 39:case 91:E+=Ie(b);break;case 9:case 10:case 13:case 32:E+=Ne(f);break;case 92:E+=_e(Ee()-1,7);continue;case 47:switch(ke()){case 42:case 47:de(Ve(Le(xe(),Ee()),t,n),c);break;default:E+="/"}break;case 123*h:i[l++]=le(E)*v;case 125*h:case 59:case 0:switch(b){case 0:case 125:g=0;case 59+u:-1==v&&(E=oe(E,/\f/g,"")),m>0&&le(E)-d&&de(m>32?Ke(E+";",r,n,d-1):Ke(oe(E," ","")+";",r,n,d-2),c);break;case 59:E+=";";default:if(de(k=We(E,t,n,l,u,a,i,y,w=[],x=[],d),o),123===b)if(0===u)Ge(E,t,k,k,w,o,d,i,x);else switch(99===p&&110===ie(E,3)?100:p){case 100:case 108:case 109:case 115:Ge(e,k,k,r&&de(We(e,k,k,0,0,a,i,y,a,w=[],d),x),a,x,d,i,r?w:x);break;default:Ge(E,k,k,k,[""],x,0,i,x)}}l=u=m=0,h=v=1,y=E="",d=s;break;case 58:d=1+le(E),m=f;default:if(h<1)if(123==b)--h;else if(125==b&&0==h++&&125==we())continue;switch(E+=ne(b),b*h){case 38:v=u>0?1:(E+="\f",-1);break;case 44:i[l++]=(le(E)-1)*v,v=1;break;case 64:45===ke()&&(E+=Ie(xe())),p=ke(),u=d=le(y=E+=Pe(Ee())),b++;break;case 45:45===f&&2==le(E)&&(h=0)}}return o}function We(e,t,n,r,a,o,s,i,c,l,u){for(var d=a-1,p=0===a?o:[""],m=ue(p),f=0,h=0,g=0;f<r;++f)for(var v=0,b=ce(e,d+1,d=te(h=s[f])),y=e;v<m;++v)(y=ae(h>0?p[v]+" "+b:oe(b,/&\f/g,p[v])))&&(c[g++]=y);return be(e,t,n,0===a?De:i,c,l,u)}function Ve(e,t,n){return be(e,t,n,Fe,ne(ge),ce(e,2,-2),0)}function Ke(e,t,n,r){return be(e,t,n,Re,ce(e,0,r),ce(e,r+1,-1),r)}var Qe=function(e,t,n){for(var r=0,a=0;r=a,a=ke(),38===r&&12===a&&(t[n]=1),!$e(a);)xe();return Ae(e,he)},He=new WeakMap,Je=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)||He.get(n))&&!r){He.set(e,!0);for(var a=[],o=function(e,t){return Se(function(e,t){var n=-1,r=44;do{switch($e(r)){case 0:38===r&&12===ke()&&(t[n]=1),e[n]+=Qe(he-1,t,n);break;case 2:e[n]+=Ie(r);break;case 4:if(44===r){e[++n]=58===ke()?"&\f":"",t[n]=e[n].length;break}default:e[n]+=ne(r)}}while(r=xe());return e}(Ce(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]}}},Xe=function(e){if("decl"===e.type){var t=e.value;108===t.charCodeAt(0)&&98===t.charCodeAt(2)&&(e.return="",e.value="")}};function Ze(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 ze+"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 ze+e+e;case 5349:case 4246:case 4810:case 6968:case 2756:return ze+e+Oe+e+Ue+e+e;case 6828:case 4268:return ze+e+Ue+e+e;case 6165:return ze+e+Ue+"flex-"+e+e;case 5187:return ze+e+oe(e,/(\w+).+(:[^]+)/,ze+"box-$1$2"+Ue+"flex-$1$2")+e;case 5443:return ze+e+Ue+"flex-item-"+oe(e,/flex-|-self/,"")+e;case 4675:return ze+e+Ue+"flex-line-pack"+oe(e,/align-content|flex-|-self/,"")+e;case 5548:return ze+e+Ue+oe(e,"shrink","negative")+e;case 5292:return ze+e+Ue+oe(e,"basis","preferred-size")+e;case 6060:return ze+"box-"+oe(e,"-grow","")+ze+e+Ue+oe(e,"grow","positive")+e;case 4554:return ze+oe(e,/([^-])(transform)/g,"$1"+ze+"$2")+e;case 6187:return oe(oe(oe(e,/(zoom-|grab)/,ze+"$1"),/(image-set)/,ze+"$1"),e,"")+e;case 5495:case 3959:return oe(e,/(image-set\([^]*)/,ze+"$1$`$1");case 4968:return oe(oe(e,/(.+:)(flex-)?(.*)/,ze+"box-pack:$3"+Ue+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+ze+e+e;case 4095:case 3583:case 4068:case 2532:return oe(e,/(.+)-inline(.+)/,ze+"$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 oe(e,/(.+:)(.+)-([^]+)/,"$1"+ze+"$2-$3$1"+Oe+(108==ie(e,t+3)?"$3":"$2-$3"))+e;case 115:return~se(e,"stretch")?Ze(oe(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-(~se(e,"!important")&&10))){case 107:return oe(e,":",":"+ze)+e;case 101:return oe(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+ze+(45===ie(e,14)?"inline-":"")+"box$3$1"+ze+"$2$3$1"+Ue+"$2box$3")+e}break;case 5936:switch(ie(e,t+11)){case 114:return ze+e+Ue+oe(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return ze+e+Ue+oe(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return ze+e+Ue+oe(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return ze+e+Ue+e+e}return e}var Ye=[function(e,t,n,r){if(e.length>-1&&!e.return)switch(e.type){case Re:e.return=Ze(e.value,e.length);break;case je:return qe([ye(e,{value:oe(e.value,"@","@"+ze)})],r);case De: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 qe([ye(e,{props:[oe(t,/:(read-\w+)/,":-moz-$1")]})],r);case"::placeholder":return qe([ye(e,{props:[oe(t,/:(plac\w+)/,":"+ze+"input-$1")]}),ye(e,{props:[oe(t,/:(plac\w+)/,":-moz-$1")]}),ye(e,{props:[oe(t,/:(plac\w+)/,Ue+"input-$1")]})],r)}return""}))}}],et={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 tt(e){var t=Object.create(null);return function(n){return void 0===t[n]&&(t[n]=e(n)),t[n]}}var nt=/[A-Z]|^ms/g,rt=/_EMO_([^_]+?)_([^]*?)_EMO_/g,at=function(e){return 45===e.charCodeAt(1)},ot=function(e){return null!=e&&"boolean"!=typeof e},st=tt((function(e){return at(e)?e:e.replace(nt,"-$&").toLowerCase()})),it=function(e,t){switch(e){case"animation":case"animationName":if("string"==typeof t)return t.replace(rt,(function(e,t,n){return lt={name:t,styles:n,next:lt},t}))}return 1===et[e]||at(e)||"number"!=typeof t||0===t?t:t+"px"};function ct(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 lt={name:a.name,styles:a.styles,next:lt},a.name;var o=n;if(void 0!==o.styles){var s=o.next;if(void 0!==s)for(;void 0!==s;)lt={name:s.name,styles:s.styles,next:lt},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+=ct(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]+"}":ot(i)&&(r+=st(o)+":"+it(o,i)+";")}else if(!Array.isArray(s)||"string"!=typeof s[0]||null!=t&&void 0!==t[s[0]]){var c=ct(e,t,s);switch(o){case"animation":case"animationName":r+=st(o)+":"+c+";";break;default:r+=o+"{"+c+"}"}}else for(var l=0;l<s.length;l++)ot(s[l])&&(r+=st(o)+":"+it(o,s[l])+";")}return r}(e,t,n);case"function":if(void 0!==e){var i=lt,c=n(e);return lt=i,ct(e,t,c)}}var l=n;if(null==t)return l;var u=t[l];return void 0!==u?u:l}var lt,ut=/label:\s*([^\s;{]+)\s*(;|$)/g;function dt(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="";lt=void 0;var o=e[0];null==o||void 0===o.raw?(r=!1,a+=ct(n,t,o)):a+=o[0];for(var s=1;s<e.length;s++)a+=ct(n,t,e[s]),r&&(a+=o[s]);ut.lastIndex=0;for(var i,c="";null!==(i=ut.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:lt}}function pt(e,t,n){var r="";return n.split(" ").forEach((function(n){void 0!==e[n]?t.push(e[n]+";"):n&&(r+=n+" ")})),r}function mt(e,t){if(void 0===e.inserted[t.name])return e.insert("",t,e.sheet,!0)}function ft(e,t,n){var r=[],a=pt(e,r,n);return r.length<2?n:a+t(r)}var ht=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 gt=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||Ye,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=[Me,(d=function(e){c.insert(e)},function(e){e.root||(e=e.return)&&d(e)})],m=(l=[Je,Xe].concat(o,p),u=ue(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,qe(Be(e?e+"{"+t.styles+"}":t.styles),m),r&&(f.inserted[t.name]=!0)};var f={key:t,sheet:new ee({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=dt(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 ft(t.registered,n,ht(r))},injectGlobal:function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];var a=dt(n,t.registered);mt(t,a)},keyframes:function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];var a=dt(n,t.registered),o="animation-"+a.name;return mt(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:pt.bind(null,t.registered),merge:ft.bind(null,t.registered,n)}}({key:"css"}),vt=(gt.flush,gt.hydrate,gt.cx),bt=(gt.merge,gt.getRegisteredStyles,gt.injectGlobal,gt.keyframes),yt=gt.css;function wt(e){const{isAvailable:t,openAssistant:n}=Z();return t&&n?i().createElement(xt,{...e,openAssistant:n}):null}function xt({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,Y.useStyles2)(kt);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(Y.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(Y.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))}gt.sheet,gt.cache;const kt=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:yt({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:yt({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 Et(e){const{isAvailable:t,openAssistant:n}=Z();return t&&n?i().createElement(At,{...e,openAssistant:n}):null}function At({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,Y.useStyles2)($t);(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(Y.ButtonGroup,{className:m.buttonGroup},i().createElement(Y.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(Y.Dropdown,{overlay:u},i().createElement(Y.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(Y.Tooltip,{content:d},f):f}const $t=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:yt({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:yt({label:"assistant-split-button-group",gap:0,position:"relative",zIndex:1,"& button":{border:"none",background:"transparent !important","&:hover":{background:"transparent !important"}}}),dropdownButton:yt({padding:"0 6px"})}},Ct="__grafanaAssistantInlineFactory__",St="__grafanaAssistantInlineInitializer__",It="__grafanaAssistantInlineInitPromise__";function Nt(e){const t=window[Ct];t&&t!==e?console.warn("InlineAssistant factory already set; ignoring subsequent setInlineAssistantFactory call"):t||(window[Ct]=e)}function _t(e){const t=window[St];t&&t!==e?console.warn("InlineAssistant initializer already set; ignoring subsequent setInlineAssistantInitializer call"):t||(window[St]=e)}async function Tt(){if(window[Ct])return;const e=window[St];if(!e)throw new Error("InlineAssistant not initialized. Make sure the Grafana Assistant plugin is loaded and initialized.");const t=window[It];if(t)return t;const n=(async()=>{try{await e()}catch(e){throw window[It]=null,e}})();return window[It]=n,n}function Lt(){const e=window[Ct];if(!e)throw new Error("InlineAssistant factory not initialized. Make sure the Grafana Assistant plugin is loaded.");return e}function Pt(){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 Tt();const n=Lt();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 Ut=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]]},Ot=(e,t,n,r)=>{const a=Array.from({length:101},((e,t)=>t)),o={},[s,i]=Ut(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 zt({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}=Pt(),g=!e.trim()||l||m,v=(0,Y.useStyles2)(Ft),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(Y.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:vt(v.wrapper,{[v.animatedWrapper]:m},u),"data-testid":d},i().createElement(Y.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 Ft=e=>{const t=e.colors.background.primary,n=bt({label:"ai-input-border-animation",...Ot(e,t)}),[r,a]=Ut(e);return{wrapper:yt({label:"ai-text-input-wrapper",position:"relative",borderRadius:e.shape.radius.default,cornerShape:"squircle"}),animatedWrapper:yt({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 Dt({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}=Pt(),v=!e.trim()||l||f,b=(0,Y.useStyles2)(Rt),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:vt(b.textareaWrapper,{[b.animatedWrapper]:f},d),"data-testid":p},i().createElement(Y.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(Y.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 Rt=e=>{const t=e.colors.background.primary,n=bt({label:"ai-textarea-border-animation",...Ot(e,t)}),[r,a]=Ut(e);return{textareaWrapper:yt({label:"ai-textarea-wrapper",position:"relative",borderRadius:e.shape.radius.default,cornerShape:"squircle"}),animatedWrapper:yt({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:yt({label:"ai-textarea",paddingRight:e.spacing(4),scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}}),sendButton:yt({label:"ai-textarea-send",position:"absolute",right:e.spacing(1),top:e.spacing(1)})}};function jt(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}}async function qt(){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/${M}/resources/api/v1/settings/terms`;try{const e=(await(0,q.lastValueFrom)(n.fetch({url:r,method:"GET"}))).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=jt(e),r=jt(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 Mt(){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/${M}/resources/api/v1/settings/accept-terms`;try{await(0,q.lastValueFrom)(t.fetch({url:n,method:"PUT",data:{acceptedTermsAndConditions:!0}}))}catch(e){throw new Error(`Failed to accept terms: ${e instanceof Error?e.message:String(e)}`)}}function Bt(){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 qt();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 Mt();const e=await qt();t(e)}catch(e){const n=e instanceof Error?e.message:"Failed to accept terms";o(n),t(!1)}finally{r(!1)}}),[])}}function Gt(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:()=>Ft,AITextInput:()=>Rt,ASSISTANT_PLUGIN_ID:()=>M,ASSISTANT_PLUGIN_TITLE:()=>B,CALLBACK_EXTENSION_POINT:()=>F,ComponentNodeData:()=>x,DashboardNodeData:()=>$,DatasourceNodeData:()=>C,EntityNodeData:()=>S,FolderNodeData:()=>A,LabelNameNodeData:()=>I,LabelValueNodeData:()=>N,OpenAssistantButton:()=>wt,OpenAssistantSplitButton:()=>Et,PlaybookNodeData:()=>P,StructuredNodeData:()=>a,acceptTerms:()=>Mt,checkTerms:()=>qt,closeAssistant:()=>J,createAssistantContextItem:()=>L,createTool:()=>Gt,ensureInlineAssistantInitialized:()=>_t,getExposeAssistantFunctionsConfig:()=>j,getInlineAssistantFactory:()=>Lt,isAssistantAvailable:()=>G,newFunctionNamespace:()=>D,openAssistant:()=>H,provideComponents:()=>E,providePageContext:()=>g,provideQuestions:()=>U,setInlineAssistantFactory:()=>Nt,setInlineAssistantInitializer:()=>Tt,toggleAssistant:()=>X,useAssistant:()=>Z,useInlineAssistant:()=>Pt,usePageComponents:()=>k,usePageContext:()=>b,useProvidePageContext:()=>v,useProvideQuestions:()=>O,useQuestions:()=>R,useTerms:()=>Bt});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:y(),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}function v(e,t=[]){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 b(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)w(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 y(e="page-context"){return`${e}-${Date.now()}-${Math.random().toString(36).slice(2,11)}`}function w(e,t){if(t instanceof RegExp){const n=t.source;return".*"!==n&&"^.*$"!==n&&"^.*"!==n&&".*$"!==n||console.warn("useProvidePageContext: RegExp pattern matches all URLs (e.g., /.*/). This will cause the context to match every page, which may be unintended."),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}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)})));class x 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=b({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 E(e,t,n,r=/.*/){if((a=r)instanceof RegExp?".*"===a.source&&""===a.flags:".*"===a||"/.*/"===a){const r=g(/.*/,[L("component",{components:n,prompt:e,namespace:t})]),a=(e,n)=>{r([L("component",{components:e,prompt:n,namespace:t})])};return a.unregister=r.unregister,a}var a;const o=g(/.*/,[L("component",{components:n,prompt:"",namespace:t})]),s=g(r,[L("component",{components:{},prompt:e,namespace:t})]),i=(e,n)=>{o([L("component",{components:e,prompt:"",namespace:t})]),s([L("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 A 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 C 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 S 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 I 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 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 _={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 L(e,t){var n,o,s;const i=function(e,t){switch(e){case"datasource":return new C({...t,...T(t.datasourceUid)});case"label_name":return new I({...t,...T(t.datasourceUid)});case"label_value":return new N({...t,...T(t.datasourceUid)});case"dashboard":return new $(t);case"dashboard_folder":return new A(t);case"structured":return new a(t);case"component":return new x({...t,hidden:!0});case"entity":return new S(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:_[e],navigable:!1,selectable:!0,data:i},occurrences:[]}}class P 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 U(e,t){const n=y("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 O(e,t=[]){const n=(0,s.useMemo)((()=>y("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=v(e,r(t));return e=>{a(r(e))}}function R(){const e=b({allowQuestions:!0,allowComponents:!1});return z(e)}const z=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 D(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"),M="grafana-assistant-app",B="Grafana Assistant";function G(){if(!o.getObservablePluginLinks)return(0,q.of)(!1);return(0,o.getObservablePluginLinks)({extensionPointId:"grafana/extension-sidebar/v0-alpha"}).pipe((0,q.map)((e=>e.some((e=>e.pluginId===M&&e.title===B)))))}const W=require("@grafana/data");class V extends W.BusEventWithPayload{}V.type="open-extension-sidebar";class K extends W.BusEventBase{}K.type="close-extension-sidebar";class Q extends W.BusEventWithPayload{}function H(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 V({pluginId:e,componentTitle:t,props:n});(0,o.getAppEvents)().publish(r)}(M,B,{initialPrompt:e.prompt,initialContext:e.context,initialAutoSend:null===(n=e.autoSend)||void 0===n||n,origin:e.origin,initialMode:e.mode})}function J(){!function(){const e=new K;(0,o.getAppEvents)().publish(e)}()}function X(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 Q({pluginId:e,componentTitle:t,props:n});(0,o.getAppEvents)().publish(r)}(M,B,{initialPrompt:e.prompt,initialContext:e.context,initialAutoSend:null===(n=e.autoSend)||void 0===n||n,origin:e.origin,initialMode:e.mode})}function Z(){const[e,t]=(0,s.useState)(!1);return(0,s.useEffect)((()=>{const e=G().subscribe((e=>t(e)));return()=>{e.unsubscribe()}}),[]),{isAvailable:e,openAssistant:e?H:void 0,closeAssistant:e?J:void 0,toggleAssistant:e?X:void 0}}Q.type="toggle-extension-sidebar";const Y=require("@grafana/ui");var ee=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}(),te=Math.abs,ne=String.fromCharCode,re=Object.assign;function ae(e){return e.trim()}function oe(e,t,n){return e.replace(t,n)}function se(e,t){return e.indexOf(t)}function ie(e,t){return 0|e.charCodeAt(t)}function ce(e,t,n){return e.slice(t,n)}function le(e){return e.length}function ue(e){return e.length}function de(e,t){return t.push(e),e}var pe=1,me=1,fe=0,he=0,ge=0,ve="";function be(e,t,n,r,a,o,s){return{value:e,root:t,parent:n,type:r,props:a,children:o,line:pe,column:me,length:s,return:""}}function ye(e,t){return re(be("",null,null,"",null,null,0),e,{length:-e.length},t)}function we(){return ge=he>0?ie(ve,--he):0,me--,10===ge&&(me=1,pe--),ge}function xe(){return ge=he<fe?ie(ve,he++):0,me++,10===ge&&(me=1,pe++),ge}function ke(){return ie(ve,he)}function Ee(){return he}function $e(e,t){return ce(ve,e,t)}function Ae(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 pe=me=1,fe=le(ve=e),he=0,[]}function Se(e){return ve="",e}function Ie(e){return ae($e(he-1,_e(91===e?e+2:40===e?e+1:e)))}function Ne(e){for(;(ge=ke())&&ge<33;)xe();return Ae(e)>2||Ae(ge)>3?"":" "}function Te(e,t){for(;--t&&xe()&&!(ge<48||ge>102||ge>57&&ge<65||ge>70&&ge<97););return $e(e,Ee()+(t<6&&32==ke()&&32==xe()))}function _e(e){for(;xe();)switch(ge){case e:return he;case 34:case 39:34!==e&&39!==e&&_e(ge);break;case 40:41===e&&_e(e);break;case 92:xe()}return he}function Le(e,t){for(;xe()&&e+ge!==57&&(e+ge!==84||47!==ke()););return"/*"+$e(t,he-1)+"*"+ne(47===e?e:xe())}function Pe(e){for(;!Ae(ke());)xe();return $e(e,he)}var Ue="-ms-",Oe="-moz-",Re="-webkit-",ze="comm",Fe="rule",De="decl",je="@keyframes";function qe(e,t){for(var n="",r=ue(e),a=0;a<r;a++)n+=t(e[a],a,e,t)||"";return n}function Me(e,t,n,r){switch(e.type){case"@layer":if(e.children.length)break;case"@import":case De:return e.return=e.return||e.value;case ze:return"";case je:return e.return=e.value+"{"+qe(e.children,r)+"}";case Fe:e.value=e.props.join(",")}return le(n=qe(e.children,r))?e.return=e.value+"{"+n+"}":""}function Be(e){return Se(Ge("",null,null,null,[""],e=Ce(e),0,[0],e))}function Ge(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=xe()){case 40:if(108!=f&&58==ie(E,d-1)){-1!=se(E+=oe(Ie(b),"&","&\f"),"&\f")&&(v=-1);break}case 34:case 39:case 91:E+=Ie(b);break;case 9:case 10:case 13:case 32:E+=Ne(f);break;case 92:E+=Te(Ee()-1,7);continue;case 47:switch(ke()){case 42:case 47:de(Ve(Le(xe(),Ee()),t,n),c);break;default:E+="/"}break;case 123*h:i[l++]=le(E)*v;case 125*h:case 59:case 0:switch(b){case 0:case 125:g=0;case 59+u:-1==v&&(E=oe(E,/\f/g,"")),m>0&&le(E)-d&&de(m>32?Ke(E+";",r,n,d-1):Ke(oe(E," ","")+";",r,n,d-2),c);break;case 59:E+=";";default:if(de(k=We(E,t,n,l,u,a,i,y,w=[],x=[],d),o),123===b)if(0===u)Ge(E,t,k,k,w,o,d,i,x);else switch(99===p&&110===ie(E,3)?100:p){case 100:case 108:case 109:case 115:Ge(e,k,k,r&&de(We(e,k,k,0,0,a,i,y,a,w=[],d),x),a,x,d,i,r?w:x);break;default:Ge(E,k,k,k,[""],x,0,i,x)}}l=u=m=0,h=v=1,y=E="",d=s;break;case 58:d=1+le(E),m=f;default:if(h<1)if(123==b)--h;else if(125==b&&0==h++&&125==we())continue;switch(E+=ne(b),b*h){case 38:v=u>0?1:(E+="\f",-1);break;case 44:i[l++]=(le(E)-1)*v,v=1;break;case 64:45===ke()&&(E+=Ie(xe())),p=ke(),u=d=le(y=E+=Pe(Ee())),b++;break;case 45:45===f&&2==le(E)&&(h=0)}}return o}function We(e,t,n,r,a,o,s,i,c,l,u){for(var d=a-1,p=0===a?o:[""],m=ue(p),f=0,h=0,g=0;f<r;++f)for(var v=0,b=ce(e,d+1,d=te(h=s[f])),y=e;v<m;++v)(y=ae(h>0?p[v]+" "+b:oe(b,/&\f/g,p[v])))&&(c[g++]=y);return be(e,t,n,0===a?Fe:i,c,l,u)}function Ve(e,t,n){return be(e,t,n,ze,ne(ge),ce(e,2,-2),0)}function Ke(e,t,n,r){return be(e,t,n,De,ce(e,0,r),ce(e,r+1,-1),r)}var Qe=function(e,t,n){for(var r=0,a=0;r=a,a=ke(),38===r&&12===a&&(t[n]=1),!Ae(a);)xe();return $e(e,he)},He=new WeakMap,Je=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)||He.get(n))&&!r){He.set(e,!0);for(var a=[],o=function(e,t){return Se(function(e,t){var n=-1,r=44;do{switch(Ae(r)){case 0:38===r&&12===ke()&&(t[n]=1),e[n]+=Qe(he-1,t,n);break;case 2:e[n]+=Ie(r);break;case 4:if(44===r){e[++n]=58===ke()?"&\f":"",t[n]=e[n].length;break}default:e[n]+=ne(r)}}while(r=xe());return e}(Ce(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]}}},Xe=function(e){if("decl"===e.type){var t=e.value;108===t.charCodeAt(0)&&98===t.charCodeAt(2)&&(e.return="",e.value="")}};function Ze(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 Re+"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 Re+e+e;case 5349:case 4246:case 4810:case 6968:case 2756:return Re+e+Oe+e+Ue+e+e;case 6828:case 4268:return Re+e+Ue+e+e;case 6165:return Re+e+Ue+"flex-"+e+e;case 5187:return Re+e+oe(e,/(\w+).+(:[^]+)/,Re+"box-$1$2"+Ue+"flex-$1$2")+e;case 5443:return Re+e+Ue+"flex-item-"+oe(e,/flex-|-self/,"")+e;case 4675:return Re+e+Ue+"flex-line-pack"+oe(e,/align-content|flex-|-self/,"")+e;case 5548:return Re+e+Ue+oe(e,"shrink","negative")+e;case 5292:return Re+e+Ue+oe(e,"basis","preferred-size")+e;case 6060:return Re+"box-"+oe(e,"-grow","")+Re+e+Ue+oe(e,"grow","positive")+e;case 4554:return Re+oe(e,/([^-])(transform)/g,"$1"+Re+"$2")+e;case 6187:return oe(oe(oe(e,/(zoom-|grab)/,Re+"$1"),/(image-set)/,Re+"$1"),e,"")+e;case 5495:case 3959:return oe(e,/(image-set\([^]*)/,Re+"$1$`$1");case 4968:return oe(oe(e,/(.+:)(flex-)?(.*)/,Re+"box-pack:$3"+Ue+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+Re+e+e;case 4095:case 3583:case 4068:case 2532:return oe(e,/(.+)-inline(.+)/,Re+"$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 oe(e,/(.+:)(.+)-([^]+)/,"$1"+Re+"$2-$3$1"+Oe+(108==ie(e,t+3)?"$3":"$2-$3"))+e;case 115:return~se(e,"stretch")?Ze(oe(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-(~se(e,"!important")&&10))){case 107:return oe(e,":",":"+Re)+e;case 101:return oe(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+Re+(45===ie(e,14)?"inline-":"")+"box$3$1"+Re+"$2$3$1"+Ue+"$2box$3")+e}break;case 5936:switch(ie(e,t+11)){case 114:return Re+e+Ue+oe(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return Re+e+Ue+oe(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return Re+e+Ue+oe(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return Re+e+Ue+e+e}return e}var Ye=[function(e,t,n,r){if(e.length>-1&&!e.return)switch(e.type){case De:e.return=Ze(e.value,e.length);break;case je:return qe([ye(e,{value:oe(e.value,"@","@"+Re)})],r);case Fe: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 qe([ye(e,{props:[oe(t,/:(read-\w+)/,":-moz-$1")]})],r);case"::placeholder":return qe([ye(e,{props:[oe(t,/:(plac\w+)/,":"+Re+"input-$1")]}),ye(e,{props:[oe(t,/:(plac\w+)/,":-moz-$1")]}),ye(e,{props:[oe(t,/:(plac\w+)/,Ue+"input-$1")]})],r)}return""}))}}],et={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 tt(e){var t=Object.create(null);return function(n){return void 0===t[n]&&(t[n]=e(n)),t[n]}}var nt=/[A-Z]|^ms/g,rt=/_EMO_([^_]+?)_([^]*?)_EMO_/g,at=function(e){return 45===e.charCodeAt(1)},ot=function(e){return null!=e&&"boolean"!=typeof e},st=tt((function(e){return at(e)?e:e.replace(nt,"-$&").toLowerCase()})),it=function(e,t){switch(e){case"animation":case"animationName":if("string"==typeof t)return t.replace(rt,(function(e,t,n){return lt={name:t,styles:n,next:lt},t}))}return 1===et[e]||at(e)||"number"!=typeof t||0===t?t:t+"px"};function ct(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 lt={name:a.name,styles:a.styles,next:lt},a.name;var o=n;if(void 0!==o.styles){var s=o.next;if(void 0!==s)for(;void 0!==s;)lt={name:s.name,styles:s.styles,next:lt},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+=ct(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]+"}":ot(i)&&(r+=st(o)+":"+it(o,i)+";")}else if(!Array.isArray(s)||"string"!=typeof s[0]||null!=t&&void 0!==t[s[0]]){var c=ct(e,t,s);switch(o){case"animation":case"animationName":r+=st(o)+":"+c+";";break;default:r+=o+"{"+c+"}"}}else for(var l=0;l<s.length;l++)ot(s[l])&&(r+=st(o)+":"+it(o,s[l])+";")}return r}(e,t,n);case"function":if(void 0!==e){var i=lt,c=n(e);return lt=i,ct(e,t,c)}}var l=n;if(null==t)return l;var u=t[l];return void 0!==u?u:l}var lt,ut=/label:\s*([^\s;{]+)\s*(;|$)/g;function dt(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="";lt=void 0;var o=e[0];null==o||void 0===o.raw?(r=!1,a+=ct(n,t,o)):a+=o[0];for(var s=1;s<e.length;s++)a+=ct(n,t,e[s]),r&&(a+=o[s]);ut.lastIndex=0;for(var i,c="";null!==(i=ut.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:lt}}function pt(e,t,n){var r="";return n.split(" ").forEach((function(n){void 0!==e[n]?t.push(e[n]+";"):n&&(r+=n+" ")})),r}function mt(e,t){if(void 0===e.inserted[t.name])return e.insert("",t,e.sheet,!0)}function ft(e,t,n){var r=[],a=pt(e,r,n);return r.length<2?n:a+t(r)}var ht=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 gt=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||Ye,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=[Me,(d=function(e){c.insert(e)},function(e){e.root||(e=e.return)&&d(e)})],m=(l=[Je,Xe].concat(o,p),u=ue(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,qe(Be(e?e+"{"+t.styles+"}":t.styles),m),r&&(f.inserted[t.name]=!0)};var f={key:t,sheet:new ee({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=dt(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 ft(t.registered,n,ht(r))},injectGlobal:function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];var a=dt(n,t.registered);mt(t,a)},keyframes:function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];var a=dt(n,t.registered),o="animation-"+a.name;return mt(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:pt.bind(null,t.registered),merge:ft.bind(null,t.registered,n)}}({key:"css"}),vt=(gt.flush,gt.hydrate,gt.cx),bt=(gt.merge,gt.getRegisteredStyles,gt.injectGlobal,gt.keyframes),yt=gt.css;function wt(e){const{isAvailable:t,openAssistant:n}=Z();return t&&n?i().createElement(xt,{...e,openAssistant:n}):null}function xt({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,Y.useStyles2)(kt);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(Y.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(Y.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))}gt.sheet,gt.cache;const kt=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:yt({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:yt({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 Et(e){const{isAvailable:t,openAssistant:n}=Z();return t&&n?i().createElement($t,{...e,openAssistant:n}):null}function $t({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,Y.useStyles2)(At);(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(Y.ButtonGroup,{className:m.buttonGroup},i().createElement(Y.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(Y.Dropdown,{overlay:u},i().createElement(Y.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(Y.Tooltip,{content:d},f):f}const At=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:yt({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:yt({label:"assistant-split-button-group",gap:0,position:"relative",zIndex:1,"& button":{border:"none",background:"transparent !important","&:hover":{background:"transparent !important"}}}),dropdownButton:yt({padding:"0 6px"})}},Ct="__grafanaAssistantInlineFactory__",St="__grafanaAssistantInlineInitializer__",It="__grafanaAssistantInlineInitPromise__";function Nt(e){const t=window[Ct];t&&t!==e?console.warn("InlineAssistant factory already set; ignoring subsequent setInlineAssistantFactory call"):t||(window[Ct]=e)}function Tt(e){const t=window[St];t&&t!==e?console.warn("InlineAssistant initializer already set; ignoring subsequent setInlineAssistantInitializer call"):t||(window[St]=e)}async function _t(){if(window[Ct])return;const e=window[St];if(!e)throw new Error("InlineAssistant not initialized. Make sure the Grafana Assistant plugin is loaded and initialized.");const t=window[It];if(t)return t;const n=(async()=>{try{await e()}catch(e){throw window[It]=null,e}})();return window[It]=n,n}function Lt(){const e=window[Ct];if(!e)throw new Error("InlineAssistant factory not initialized. Make sure the Grafana Assistant plugin is loaded.");return e}function Pt(){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 _t();const n=Lt();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 Ut=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]]},Ot=(e,t,n,r)=>{const a=Array.from({length:101},((e,t)=>t)),o={},[s,i]=Ut(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 Rt({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}=Pt(),g=!e.trim()||l||m,v=(0,Y.useStyles2)(zt),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(Y.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:vt(v.wrapper,{[v.animatedWrapper]:m},u),"data-testid":d},i().createElement(Y.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 zt=e=>{const t=e.colors.background.primary,n=bt({label:"ai-input-border-animation",...Ot(e,t)}),[r,a]=Ut(e);return{wrapper:yt({label:"ai-text-input-wrapper",position:"relative",borderRadius:e.shape.radius.default,cornerShape:"squircle"}),animatedWrapper:yt({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 Ft({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}=Pt(),v=!e.trim()||l||f,b=(0,Y.useStyles2)(Dt),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:vt(b.textareaWrapper,{[b.animatedWrapper]:f},d),"data-testid":p},i().createElement(Y.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(Y.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 Dt=e=>{const t=e.colors.background.primary,n=bt({label:"ai-textarea-border-animation",...Ot(e,t)}),[r,a]=Ut(e);return{textareaWrapper:yt({label:"ai-textarea-wrapper",position:"relative",borderRadius:e.shape.radius.default,cornerShape:"squircle"}),animatedWrapper:yt({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:yt({label:"ai-textarea",paddingRight:e.spacing(4),scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}}),sendButton:yt({label:"ai-textarea-send",position:"absolute",right:e.spacing(1),top:e.spacing(1)})}};function jt(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}}async function qt(){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/${M}/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=jt(e),r=jt(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 Mt(){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/${M}/resources/api/v1/settings/accept-terms`;try{await(0,q.lastValueFrom)(t.fetch({url:n,method:"PUT",data:{acceptedTermsAndConditions:!0}}))}catch(e){throw new Error(`Failed to accept terms: ${e instanceof Error?e.message:String(e)}`)}}function Bt(){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 qt();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 Mt();const e=await qt();t(e)}catch(e){const n=e instanceof Error?e.message:"Failed to accept terms";o(n),t(!1)}finally{r(!1)}}),[])}}function Gt(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
|