@grafana/assistant 0.1.22 → 0.1.23

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.
@@ -3,4 +3,5 @@ export { OpenAssistantSplitButton, type OpenAssistantSplitButtonProps } from './
3
3
  export { AITextInput, type AITextInputProps } from './input/AITextInput';
4
4
  export { AITextArea, type AITextAreaProps } from './input/AITextArea';
5
5
  export { QueryWithAssistantButton, type QueryWithAssistantButtonProps } from './button/QueryWithAssistantButton';
6
+ export { AssistantPromptCard, AssistantPromptCardView, type AssistantPromptCardProps, type AssistantPromptCardViewProps, } from './prompt-card/AssistantPromptCard';
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,KAAK,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AAClG,OAAO,EAAE,wBAAwB,EAAE,KAAK,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AACjH,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,KAAK,6BAA6B,EAAE,MAAM,mCAAmC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,KAAK,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AAClG,OAAO,EAAE,wBAAwB,EAAE,KAAK,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AACjH,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,KAAK,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AACjH,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,4BAA4B,GAClC,MAAM,mCAAmC,CAAC"}
@@ -0,0 +1,35 @@
1
+ import React from 'react';
2
+ import { ChatContextItem } from '../../context/types';
3
+ import { OpenAssistantProps } from '../../sidebar';
4
+ export interface AssistantPromptCardProps {
5
+ /** Origin of the request for analytics tracking. Should be a structured string using forward slashes. */
6
+ origin: string;
7
+ /** Context items passed to the assistant on submit. Created with `createAssistantContextItem`. */
8
+ context?: ChatContextItem[];
9
+ /** Assistant mode (e.g. 'dashboarding'). Defaults to 'assistant'. */
10
+ mode?: string;
11
+ /** Placeholder text for the input. */
12
+ placeholder?: string;
13
+ /** Example prompts to cycle through as animated placeholder text. Pass an empty array to disable. */
14
+ examplePrompts?: string[];
15
+ /** Called when the card should close (Escape key, close button). */
16
+ onClose?: () => void;
17
+ /** Called after a prompt is submitted, receives the prompt string. */
18
+ onSubmit?: (prompt: string) => void;
19
+ /** Called when the user clicks the card body. */
20
+ onClick?: () => void;
21
+ /** Whether the card border is animated. Defaults to true. */
22
+ animated?: boolean;
23
+ /** Extra CSS class for the root element. */
24
+ className?: string;
25
+ }
26
+ /**
27
+ * A prompt card component that opens the Grafana Assistant with a user-typed prompt and context.
28
+ * Renders nothing if the assistant is not available. Positioning is the consumer's responsibility.
29
+ */
30
+ export declare function AssistantPromptCard(props: AssistantPromptCardProps): React.JSX.Element | null;
31
+ export interface AssistantPromptCardViewProps extends AssistantPromptCardProps {
32
+ openAssistant: (props: OpenAssistantProps) => void;
33
+ }
34
+ export declare function AssistantPromptCardView({ origin, context, mode, placeholder, examplePrompts, animated, onClose, onSubmit, onClick, className, openAssistant, }: AssistantPromptCardViewProps): React.JSX.Element;
35
+ //# sourceMappingURL=AssistantPromptCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AssistantPromptCard.d.ts","sourceRoot":"","sources":["../../../src/components/prompt-card/AssistantPromptCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkE,MAAM,OAAO,CAAC;AAKvF,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAInD,MAAM,WAAW,wBAAwB;IACvC,yGAAyG;IACzG,MAAM,EAAE,MAAM,CAAC;IACf,kGAAkG;IAClG,OAAO,CAAC,EAAE,eAAe,EAAE,CAAC;IAC5B,qEAAqE;IACrE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,sCAAsC;IACtC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qGAAqG;IACrG,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,oEAAoE;IACpE,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,sEAAsE;IACtE,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,iDAAiD;IACjD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4CAA4C;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,4BAMlE;AAED,MAAM,WAAW,4BAA6B,SAAQ,wBAAwB;IAC5E,aAAa,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;CACpD;AAED,wBAAgB,uBAAuB,CAAC,EACtC,MAAM,EACN,OAAO,EACP,IAAI,EACJ,WAAW,EACX,cAAc,EACd,QAAe,EACf,OAAO,EACP,QAAQ,EACR,OAAO,EACP,SAAS,EACT,aAAa,GACd,EAAE,4BAA4B,qBAyE9B"}
@@ -0,0 +1,4 @@
1
+ declare const DEFAULT_EXAMPLE_PROMPTS: string[];
2
+ export { DEFAULT_EXAMPLE_PROMPTS };
3
+ export declare function useAnimatedPlaceholder(staticPlaceholder: string, prompts: string[], hasUserInput: boolean): string;
4
+ //# sourceMappingURL=useAnimatedPlaceholder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAnimatedPlaceholder.d.ts","sourceRoot":"","sources":["../../../src/components/prompt-card/useAnimatedPlaceholder.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,uBAAuB,UAM5B,CAAC;AAEF,OAAO,EAAE,uBAAuB,EAAE,CAAC;AAEnC,wBAAgB,sBAAsB,CAAC,iBAAiB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,YAAY,EAAE,OAAO,GAAG,MAAM,CAgElH"}
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:()=>Kt,AITextInput:()=>Qt,ASSISTANT_PLUGIN_ID:()=>Q,ASSISTANT_PLUGIN_TITLE:()=>H,CALLBACK_EXTENSION_POINT:()=>F,ComponentNodeData:()=>E,DashboardNodeData:()=>$,DatasourceNodeData:()=>C,EntityNodeData:()=>I,FolderNodeData:()=>S,InvestigationCreatedEvent:()=>G,LIMITS_UPDATED_EVENT:()=>sn,LabelNameNodeData:()=>T,LabelValueNodeData:()=>L,OpenAssistantButton:()=>Ct,OpenAssistantSplitButton:()=>Nt,QueryWithAssistantButton:()=>Zt,SkillNodeData:()=>R,StructuredNodeData:()=>a,TERMS_AND_CONDITIONS_REFRESH_EVENT:()=>en,checkLimits:()=>cn,checkTerms:()=>nn,closeAssistant:()=>re,createAssistantContextItem:()=>P,createTool:()=>an,emitInvestigationCreated:()=>M,ensureInlineAssistantInitialized:()=>Mt,getExposeAssistantFunctionsConfig:()=>W,getInlineAssistantFactory:()=>zt,isAssistantAvailable:()=>Z,newFunctionNamespace:()=>j,onInvestigationCreated:()=>z,openAssistant:()=>ne,provideComponents:()=>A,providePageContext:()=>g,provideQuestions:()=>U,setInlineAssistantFactory:()=>Ot,setInlineAssistantInitializer:()=>Gt,toggleAssistant:()=>ae,useAssistant:()=>se,useInlineAssistant:()=>Ft,useLimits:()=>ln,usePageComponents:()=>k,usePageContext:()=>y,useProvidePageContext:()=>b,useProvideQuestions:()=>D,useQuestions:()=>q,useTerms:()=>rn});class r{constructor(e){this.params=e,this.text="",this.id=n(e.id),this.type=e.type}get bypassLimits(){var e;return null!==(e=this.params.bypassLimits)&&void 0!==e&&e}formatForLLM(e){var t,n;return{type:this.type,codeElementIds:e,bypassLimits:this.bypassLimits,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,bypassLimits:this.bypassLimits,data:this.data}}}const s=require("@grafana/runtime"),o=require("react");var i=e.n(o);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)),s=n.filter(e=>!a.has(e.id));s.length>0&&f([...r,...s],!0)}));const v=[];function b(e,t=v){const n=(0,o.useRef)(void 0),r=(0,o.useRef)(void 0),a=(0,o.useRef)(!1);return(0,o.useEffect)(()=>{a.current=!1;const s=void 0!==r.current?r.current:t;return n.current=g(e,s),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,o.useEffect)(()=>{!a.current&&n.current&&n.current(t)},[t]),(0,o.useCallback)(e=>{a.current=!0,n.current?n.current(e):r.current=e},[])}function y(e={allowQuestions:!1,allowComponents:!1}){const[t,n]=(0,o.useState)([]),r=(0,s.useLocationService)(),a=(0,o.useRef)("");(0,o.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()},s=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(),()=>{s.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:`Custom UI components (${this.namespace})`,prompt:this.prompt?this.prompt+"\n\nIMPORTANT: The instructions and components described above are scoped to this specific context item only. Do not apply them to unrelated queries or components.":""}}}}function k(){const e=y({allowComponents:!0,allowQuestions:!1});return(0,o.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 s=g(/.*/,[P("component",{components:n,prompt:"",namespace:t})]),o=g(r,[P("component",{components:{},prompt:e,namespace:t})]),i=(e,n)=>{s([P("component",{components:e,prompt:"",namespace:t})]),o([P("component",{components:{},prompt:n,namespace:t})])};return i.unregister=()=>{s.unregister(),o.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,bypassLimits:this.bypassLimits,data:{name:this.dashboardTitle,dashboardUid:this.dashboardUid,dashboardTitle:this.dashboardTitle,folderUid:this.folderUid,folderTitle:this.folderTitle,text:this.text}}}}class S 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,bypassLimits:this.bypassLimits,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,bypassLimits:this.bypassLimits,data:{name:this.datasourceName,uid:this.datasourceUid,type:this.datasourceType,text:this.text}}}}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,bypassLimits:this.bypassLimits,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,bypassLimits:this.bypassLimits,data:{name:this.labelName,datasourceUid:this.datasourceUid,datasourceType:this.datasourceType,datasourceName:this.datasourceName,labelName:this.labelName,text:this.text}}}}class L extends r{constructor(e){super({...e,id:`${e.datasourceUid}-${e.labelName}-${e.labelValue}-${e.operator||"="}`,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,this.operator=e.operator||"="}formatForLLM(e){return{type:this.type,codeElementIds:e,bypassLimits:this.bypassLimits,data:{name:this.labelValue,datasourceUid:this.datasourceUid,datasourceType:this.datasourceType,datasourceName:this.datasourceName,labelName:this.labelName,labelValue:this.labelValue,text:this.text,operator:this.operator}}}}function N(e){var t,n,r,a,o;const i=(0,s.getDataSourceSrv)().getInstanceSettings(e);return{datasourceType:null!==(t=null==i?void 0:i.type)&&void 0!==t?t:"unknown",datasourceName:null!==(n=null==i?void 0:i.name)&&void 0!==n?n:e,img:null===(o=null===(a=null===(r=null==i?void 0:i.meta)||void 0===r?void 0:r.info)||void 0===a?void 0:a.logos)||void 0===o?void 0:o.small}}const _={datasource:"database",label_name:"database",label_value:"database",dashboard:"dashboard",dashboard_folder:"folder",unknown:"circle-mono",structured:"gf-grid",component:"gf-grid",entity:"asserts",skill:"play"};function P(e,t){var n,s,o;const i=function(e,t){switch(e){case"datasource":return new C({...t,...N(t.datasourceUid)});case"label_name":return new T({...t,...N(t.datasourceUid)});case"label_value":return new L({...t,...N(t.datasourceUid)});case"dashboard":return new $(t);case"dashboard_folder":return new S(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!==(s=t.img)&&void 0!==s?s:function(e){if("img"in e)return e.img}(i);return{node:{id:i.id,name:c,img:l,icon:null!==(o=t.icon)&&void 0!==o?o:_[e],navigable:!1,selectable:!0,data:i},occurrences:[]}}class R extends r{constructor(e){super({...e,id:e.skillId,type:"skill",text:e.skillName}),this.skillId=e.skillId,this.skillName=e.skillName,this.text=e.skillName}formatForLLM(e){return{type:this.type,codeElementIds:e,bypassLimits:this.bypassLimits,data:{name:this.skillName,skillId:this.skillId,skillName:this.skillName,text:this.text}}}}function U(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)),s=e=>{a(r(e))};return s.unregister=a.unregister,s}function D(e,t=[]){const n=(0,o.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 q(){const e=y({allowQuestions:!0,allowComponents:!1});return B(e)}const B=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)||[]}}),O=require("@grafana/data");class G extends O.BusEventWithPayload{}function M(e){const t=new G({investigationId:e});(0,s.getAppEvents)().publish(t)}function z(e){const t=(0,s.getAppEvents)().subscribe(G,t=>{e(t.payload)});return()=>t.unsubscribe()}G.type="grafana-assistant:investigation-created";const F="grafana-assistant-app/callback/v0-alpha";function j(e,t){return{namespace:e,functions:t}}function W(e){return{title:"callback",targets:[F],fn:()=>e.map(e=>({namespace:e.namespace,functions:e.functions}))}}const V=require("rxjs"),Q="grafana-assistant-app",H="Grafana Assistant",K=10,J=100,X=5e3;function Z(){return s.getObservablePluginLinks?(0,V.defer)(()=>{try{return(0,s.getObservablePluginLinks)({extensionPointId:"grafana/extension-sidebar/v0-alpha"}).pipe((0,V.map)(e=>e.some(e=>e.pluginId===Q&&e.title===H)))}catch(e){return(0,V.throwError)(()=>e)}}).pipe((0,V.retry)({count:K,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(J*Math.pow(2,t-1),X);return(0,V.timer)(a)}}),(0,V.catchError)(()=>(0,V.of)(!1))):(0,V.of)(!1)}class Y extends O.BusEventWithPayload{}Y.type="open-extension-sidebar";class ee extends O.BusEventBase{}ee.type="close-extension-sidebar";class te extends O.BusEventWithPayload{}function ne(e){var t,n;(0,s.reportInteraction)("grafana_assistant_app_opened_sidebar",{from:e.origin,prompt:null!==(t=e.prompt)&&void 0!==t?t:""}),function(e,t,n){const r=new Y({pluginId:e,componentTitle:t,props:n});(0,s.getAppEvents)().publish(r)}(Q,H,{initialPrompt:e.prompt,initialContext:e.context,initialAutoSend:null===(n=e.autoSend)||void 0===n||n,origin:e.origin,initialMode:e.mode})}function re(){!function(){const e=new ee;(0,s.getAppEvents)().publish(e)}()}function ae(e){var t,n;(0,s.reportInteraction)("grafana_assistant_app_toggled_sidebar",{from:e.origin,prompt:null!==(t=e.prompt)&&void 0!==t?t:""}),function(e,t,n){const r=new te({pluginId:e,componentTitle:t,props:n});(0,s.getAppEvents)().publish(r)}(Q,H,{initialPrompt:e.prompt,initialContext:e.context,initialAutoSend:null===(n=e.autoSend)||void 0===n||n,origin:e.origin,initialMode:e.mode})}function se(){const[e,t]=(0,o.useState)(void 0);(0,o.useEffect)(()=>{const e=Z().subscribe(t);return()=>e.unsubscribe()},[]);const n=null!=e&&e;return{isLoading:void 0===e,isAvailable:n,openAssistant:n?ne:void 0,closeAssistant:n?re:void 0,toggleAssistant:n?ae:void 0}}te.type="toggle-extension-sidebar";const oe=require("@grafana/ui");var ie=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}(),ce=Math.abs,le=String.fromCharCode,ue=Object.assign;function de(e){return e.trim()}function pe(e,t,n){return e.replace(t,n)}function me(e,t){return e.indexOf(t)}function fe(e,t){return 0|e.charCodeAt(t)}function he(e,t,n){return e.slice(t,n)}function ge(e){return e.length}function ve(e){return e.length}function be(e,t){return t.push(e),e}var ye=1,we=1,xe=0,Ee=0,ke=0,Ae="";function $e(e,t,n,r,a,s,o){return{value:e,root:t,parent:n,type:r,props:a,children:s,line:ye,column:we,length:o,return:""}}function Se(e,t){return ue($e("",null,null,"",null,null,0),e,{length:-e.length},t)}function Ce(){return ke=Ee>0?fe(Ae,--Ee):0,we--,10===ke&&(we=1,ye--),ke}function Ie(){return ke=Ee<xe?fe(Ae,Ee++):0,we++,10===ke&&(we=1,ye++),ke}function Te(){return fe(Ae,Ee)}function Le(){return Ee}function Ne(e,t){return he(Ae,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 Pe(e){return ye=we=1,xe=ge(Ae=e),Ee=0,[]}function Re(e){return Ae="",e}function Ue(e){return de(Ne(Ee-1,Be(91===e?e+2:40===e?e+1:e)))}function De(e){for(;(ke=Te())&&ke<33;)Ie();return _e(e)>2||_e(ke)>3?"":" "}function qe(e,t){for(;--t&&Ie()&&!(ke<48||ke>102||ke>57&&ke<65||ke>70&&ke<97););return Ne(e,Le()+(t<6&&32==Te()&&32==Ie()))}function Be(e){for(;Ie();)switch(ke){case e:return Ee;case 34:case 39:34!==e&&39!==e&&Be(ke);break;case 40:41===e&&Be(e);break;case 92:Ie()}return Ee}function Oe(e,t){for(;Ie()&&e+ke!==57&&(e+ke!==84||47!==Te()););return"/*"+Ne(t,Ee-1)+"*"+le(47===e?e:Ie())}function Ge(e){for(;!_e(Te());)Ie();return Ne(e,Ee)}var Me="-ms-",ze="-moz-",Fe="-webkit-",je="comm",We="rule",Ve="decl",Qe="@keyframes";function He(e,t){for(var n="",r=ve(e),a=0;a<r;a++)n+=t(e[a],a,e,t)||"";return n}function Ke(e,t,n,r){switch(e.type){case"@layer":if(e.children.length)break;case"@import":case Ve:return e.return=e.return||e.value;case je:return"";case Qe:return e.return=e.value+"{"+He(e.children,r)+"}";case We:e.value=e.props.join(",")}return ge(n=He(e.children,r))?e.return=e.value+"{"+n+"}":""}function Je(e){return Re(Xe("",null,null,null,[""],e=Pe(e),0,[0],e))}function Xe(e,t,n,r,a,s,o,i,c){for(var l=0,u=0,d=o,p=0,m=0,f=0,h=1,g=1,v=1,b=0,y="",w=a,x=s,E=r,k=y;g;)switch(f=b,b=Ie()){case 40:if(108!=f&&58==fe(k,d-1)){-1!=me(k+=pe(Ue(b),"&","&\f"),"&\f")&&(v=-1);break}case 34:case 39:case 91:k+=Ue(b);break;case 9:case 10:case 13:case 32:k+=De(f);break;case 92:k+=qe(Le()-1,7);continue;case 47:switch(Te()){case 42:case 47:be(Ye(Oe(Ie(),Le()),t,n),c);break;default:k+="/"}break;case 123*h:i[l++]=ge(k)*v;case 125*h:case 59:case 0:switch(b){case 0:case 125:g=0;case 59+u:-1==v&&(k=pe(k,/\f/g,"")),m>0&&ge(k)-d&&be(m>32?et(k+";",r,n,d-1):et(pe(k," ","")+";",r,n,d-2),c);break;case 59:k+=";";default:if(be(E=Ze(k,t,n,l,u,a,i,y,w=[],x=[],d),s),123===b)if(0===u)Xe(k,t,E,E,w,s,d,i,x);else switch(99===p&&110===fe(k,3)?100:p){case 100:case 108:case 109:case 115:Xe(e,E,E,r&&be(Ze(e,E,E,0,0,a,i,y,a,w=[],d),x),a,x,d,i,r?w:x);break;default:Xe(k,E,E,E,[""],x,0,i,x)}}l=u=m=0,h=v=1,y=k="",d=o;break;case 58:d=1+ge(k),m=f;default:if(h<1)if(123==b)--h;else if(125==b&&0==h++&&125==Ce())continue;switch(k+=le(b),b*h){case 38:v=u>0?1:(k+="\f",-1);break;case 44:i[l++]=(ge(k)-1)*v,v=1;break;case 64:45===Te()&&(k+=Ue(Ie())),p=Te(),u=d=ge(y=k+=Ge(Le())),b++;break;case 45:45===f&&2==ge(k)&&(h=0)}}return s}function Ze(e,t,n,r,a,s,o,i,c,l,u){for(var d=a-1,p=0===a?s:[""],m=ve(p),f=0,h=0,g=0;f<r;++f)for(var v=0,b=he(e,d+1,d=ce(h=o[f])),y=e;v<m;++v)(y=de(h>0?p[v]+" "+b:pe(b,/&\f/g,p[v])))&&(c[g++]=y);return $e(e,t,n,0===a?We:i,c,l,u)}function Ye(e,t,n){return $e(e,t,n,je,le(ke),he(e,2,-2),0)}function et(e,t,n,r){return $e(e,t,n,Ve,he(e,0,r),he(e,r+1,-1),r)}var tt=function(e,t,n){for(var r=0,a=0;r=a,a=Te(),38===r&&12===a&&(t[n]=1),!_e(a);)Ie();return Ne(e,Ee)},nt=new WeakMap,rt=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)||nt.get(n))&&!r){nt.set(e,!0);for(var a=[],s=function(e,t){return Re(function(e,t){var n=-1,r=44;do{switch(_e(r)){case 0:38===r&&12===Te()&&(t[n]=1),e[n]+=tt(Ee-1,t,n);break;case 2:e[n]+=Ue(r);break;case 4:if(44===r){e[++n]=58===Te()?"&\f":"",t[n]=e[n].length;break}default:e[n]+=le(r)}}while(r=Ie());return e}(Pe(e),t))}(t,a),o=n.props,i=0,c=0;i<s.length;i++)for(var l=0;l<o.length;l++,c++)e.props[c]=a[i]?s[i].replace(/&\f/g,o[l]):o[l]+" "+s[i]}}},at=function(e){if("decl"===e.type){var t=e.value;108===t.charCodeAt(0)&&98===t.charCodeAt(2)&&(e.return="",e.value="")}};function st(e,t){switch(function(e,t){return 45^fe(e,0)?(((t<<2^fe(e,0))<<2^fe(e,1))<<2^fe(e,2))<<2^fe(e,3):0}(e,t)){case 5103:return Fe+"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 Fe+e+e;case 5349:case 4246:case 4810:case 6968:case 2756:return Fe+e+ze+e+Me+e+e;case 6828:case 4268:return Fe+e+Me+e+e;case 6165:return Fe+e+Me+"flex-"+e+e;case 5187:return Fe+e+pe(e,/(\w+).+(:[^]+)/,Fe+"box-$1$2"+Me+"flex-$1$2")+e;case 5443:return Fe+e+Me+"flex-item-"+pe(e,/flex-|-self/,"")+e;case 4675:return Fe+e+Me+"flex-line-pack"+pe(e,/align-content|flex-|-self/,"")+e;case 5548:return Fe+e+Me+pe(e,"shrink","negative")+e;case 5292:return Fe+e+Me+pe(e,"basis","preferred-size")+e;case 6060:return Fe+"box-"+pe(e,"-grow","")+Fe+e+Me+pe(e,"grow","positive")+e;case 4554:return Fe+pe(e,/([^-])(transform)/g,"$1"+Fe+"$2")+e;case 6187:return pe(pe(pe(e,/(zoom-|grab)/,Fe+"$1"),/(image-set)/,Fe+"$1"),e,"")+e;case 5495:case 3959:return pe(e,/(image-set\([^]*)/,Fe+"$1$`$1");case 4968:return pe(pe(e,/(.+:)(flex-)?(.*)/,Fe+"box-pack:$3"+Me+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+Fe+e+e;case 4095:case 3583:case 4068:case 2532:return pe(e,/(.+)-inline(.+)/,Fe+"$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(ge(e)-1-t>6)switch(fe(e,t+1)){case 109:if(45!==fe(e,t+4))break;case 102:return pe(e,/(.+:)(.+)-([^]+)/,"$1"+Fe+"$2-$3$1"+ze+(108==fe(e,t+3)?"$3":"$2-$3"))+e;case 115:return~me(e,"stretch")?st(pe(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(115!==fe(e,t+1))break;case 6444:switch(fe(e,ge(e)-3-(~me(e,"!important")&&10))){case 107:return pe(e,":",":"+Fe)+e;case 101:return pe(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+Fe+(45===fe(e,14)?"inline-":"")+"box$3$1"+Fe+"$2$3$1"+Me+"$2box$3")+e}break;case 5936:switch(fe(e,t+11)){case 114:return Fe+e+Me+pe(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return Fe+e+Me+pe(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return Fe+e+Me+pe(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return Fe+e+Me+e+e}return e}var ot=[function(e,t,n,r){if(e.length>-1&&!e.return)switch(e.type){case Ve:e.return=st(e.value,e.length);break;case Qe:return He([Se(e,{value:pe(e.value,"@","@"+Fe)})],r);case We: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 He([Se(e,{props:[pe(t,/:(read-\w+)/,":-moz-$1")]})],r);case"::placeholder":return He([Se(e,{props:[pe(t,/:(plac\w+)/,":"+Fe+"input-$1")]}),Se(e,{props:[pe(t,/:(plac\w+)/,":-moz-$1")]}),Se(e,{props:[pe(t,/:(plac\w+)/,Me+"input-$1")]})],r)}return""})}}],it={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 ct(e){var t=Object.create(null);return function(n){return void 0===t[n]&&(t[n]=e(n)),t[n]}}var lt=/[A-Z]|^ms/g,ut=/_EMO_([^_]+?)_([^]*?)_EMO_/g,dt=function(e){return 45===e.charCodeAt(1)},pt=function(e){return null!=e&&"boolean"!=typeof e},mt=ct(function(e){return dt(e)?e:e.replace(lt,"-$&").toLowerCase()}),ft=function(e,t){switch(e){case"animation":case"animationName":if("string"==typeof t)return t.replace(ut,function(e,t,n){return gt={name:t,styles:n,next:gt},t})}return 1===it[e]||dt(e)||"number"!=typeof t||0===t?t:t+"px"};function ht(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 gt={name:a.name,styles:a.styles,next:gt},a.name;var s=n;if(void 0!==s.styles){var o=s.next;if(void 0!==o)for(;void 0!==o;)gt={name:o.name,styles:o.styles,next:gt},o=o.next;return s.styles+";"}return function(e,t,n){var r="";if(Array.isArray(n))for(var a=0;a<n.length;a++)r+=ht(e,t,n[a])+";";else for(var s in n){var o=n[s];if("object"!=typeof o){var i=o;null!=t&&void 0!==t[i]?r+=s+"{"+t[i]+"}":pt(i)&&(r+=mt(s)+":"+ft(s,i)+";")}else if(!Array.isArray(o)||"string"!=typeof o[0]||null!=t&&void 0!==t[o[0]]){var c=ht(e,t,o);switch(s){case"animation":case"animationName":r+=mt(s)+":"+c+";";break;default:r+=s+"{"+c+"}"}}else for(var l=0;l<o.length;l++)pt(o[l])&&(r+=mt(s)+":"+ft(s,o[l])+";")}return r}(e,t,n);case"function":if(void 0!==e){var i=gt,c=n(e);return gt=i,ht(e,t,c)}}var l=n;if(null==t)return l;var u=t[l];return void 0!==u?u:l}var gt,vt=/label:\s*([^\s;{]+)\s*(;|$)/g;function bt(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="";gt=void 0;var s=e[0];null==s||void 0===s.raw?(r=!1,a+=ht(n,t,s)):a+=s[0];for(var o=1;o<e.length;o++)a+=ht(n,t,e[o]),r&&(a+=s[o]);vt.lastIndex=0;for(var i,c="";null!==(i=vt.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:gt}}function yt(e,t,n){var r="";return n.split(" ").forEach(function(n){void 0!==e[n]?t.push(e[n]+";"):n&&(r+=n+" ")}),r}function wt(e,t){if(void 0===e.inserted[t.name])return e.insert("",t,e.sheet,!0)}function xt(e,t,n){var r=[],a=yt(e,r,n);return r.length<2?n:a+t(r)}var Et=function e(t){for(var n="",r=0;r<t.length;r++){var a=t[r];if(null!=a){var s=void 0;switch(typeof a){case"boolean":break;case"object":if(Array.isArray(a))s=e(a);else for(var o in s="",a)a[o]&&o&&(s&&(s+=" "),s+=o);break;default:s=a}s&&(n&&(n+=" "),n+=s)}}return n};var kt=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,s=e.stylisPlugins||ot,o={},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++)o[t[n]]=!0;i.push(e)});var c,l,u,d,p=[Ke,(d=function(e){c.insert(e)},function(e){e.root||(e=e.return)&&d(e)})],m=(l=[rt,at].concat(s,p),u=ve(l),function(e,t,n,r){for(var a="",s=0;s<u;s++)a+=l[s](e,t,n,r)||"";return a});a=function(e,t,n,r){c=n,He(Je(e?e+"{"+t.styles+"}":t.styles),m),r&&(f.inserted[t.name]=!0)};var f={key:t,sheet:new ie({key:t,container:r,nonce:e.nonce,speedy:e.speedy,prepend:e.prepend,insertionPoint:e.insertionPoint}),nonce:e.nonce,inserted:o,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=bt(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 xt(t.registered,n,Et(r))},injectGlobal:function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];var a=bt(n,t.registered);wt(t,a)},keyframes:function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];var a=bt(n,t.registered),s="animation-"+a.name;return wt(t,{name:a.name,styles:"@keyframes "+s+"{"+a.styles+"}"}),s},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:yt.bind(null,t.registered),merge:xt.bind(null,t.registered,n)}}({key:"css"}),At=(kt.flush,kt.hydrate,kt.cx),$t=(kt.merge,kt.getRegisteredStyles,kt.injectGlobal,kt.keyframes),St=kt.css;function Ct(e){const{isAvailable:t,openAssistant:n}=se();return t&&n?i().createElement(It,{...e,openAssistant:n}):null}function It({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,oe.useStyles2)(Tt);return(0,o.useEffect)(()=>{(0,s.reportInteraction)("grafana_assistant_app_open_sidebar_button_displayed",{from:t})},[t]),i().createElement(i().Fragment,null,l?i().createElement(oe.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(oe.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))}kt.sheet,kt.cache;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,s=`max(calc(${a} - 1px), 1px)`,o={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:s,cornerShape:"squircle",background:`linear-gradient(${e}, ${e}), ${r}`,zIndex:-1,transition:"none",pointerEvents:"none"});return{button:St({label:"assistant-button",width:"fit-content",maxWidth:"100%",position:"relative",isolation:"isolate",border:"none",transition:"none !important","&::before":o,"&::after":{...i(t),transition:"none"},"&:hover":{transition:"none !important"},"&:hover::after":{background:`linear-gradient(${n}, ${n}), ${r}`}}),icon:St({label:"assistant-icon",position:"relative",isolation:"isolate",border:"none",background:"none",padding:e.spacing(.5),"&::before":{...o,transition:"background 0.1s ease"},"&:hover::after":{...i(t),background:`linear-gradient(${n}, ${n}), ${r}`}})}},Lt={sm:32,md:36,lg:40};function Nt(e){const{isAvailable:t,openAssistant:n}=se();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,dropdownButtonWidth:p,openAssistant:m}){const f=(0,oe.useStyles2)(Pt),h=Boolean(u),g="number"==typeof(v=null!=p?p:Lt[c])?`${v}px`:v;var v;(0,o.useEffect)(()=>{(0,s.reportInteraction)("grafana_assistant_app_open_sidebar_split_button_displayed",{from:t})},[t]);const b=i().createElement("div",{className:f.wrapper},i().createElement(oe.ButtonGroup,{className:f.buttonGroup},i().createElement(oe.Button,{icon:"ai-sparkle",onClick:()=>{null==l||l(),m({prompt:e,context:n,autoSend:r,origin:t})},variant:"secondary",fill:"solid",size:c,"aria-label":a,className:At(f.segmentButton,h?f.mainButtonSplit:f.mainButtonSolo),"data-testid":"assistant-split-button-main"},a),u&&i().createElement(oe.Dropdown,{overlay:u},i().createElement(oe.Button,{variant:"secondary",icon:"angle-down",size:c,"aria-label":"More AI actions",className:At(f.segmentButton,f.dropdownButton),style:{width:g,minWidth:g},"data-testid":"assistant-split-button-dropdown"}))));return d?i().createElement(oe.Tooltip,{content:d},b):b}const Pt=e=>{const t=e.colors.secondary.main,n=e.colors.emphasize(t,.05),r=e.colors.background.canvas,a=e.colors.border.weak,s=e.shape.radius.default,o=`max(calc(${s} - 1px), 1px)`;return{wrapper:St({label:"assistant-split-button-wrapper",position:"relative",isolation:"isolate",display:"inline-block","&::before":{content:'""',position:"absolute",inset:0,borderRadius:s,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:o,cornerShape:"squircle",background:`linear-gradient(${t}, ${t}), ${r}`,zIndex:-1,pointerEvents:"none"}}),buttonGroup:St({label:"assistant-split-button-group",gap:0,position:"relative",zIndex:1,borderRadius:o,overflow:"hidden","& button":{border:"none",boxShadow:"none",background:"transparent !important"}}),segmentButton:St({label:"assistant-split-button-segment",position:"relative","&:hover":{background:`${n} !important`},"&:focus-visible":{background:`${n} !important`},'&[aria-expanded="true"]':{background:`${n} !important`}}),mainButtonSolo:St({label:"assistant-split-button-main-solo",borderRadius:o}),mainButtonSplit:St({label:"assistant-split-button-main-split",borderTopLeftRadius:o,borderBottomLeftRadius:o,borderTopRightRadius:0,borderBottomRightRadius:0}),dropdownButton:St({label:"assistant-split-button-dropdown",display:"inline-flex",alignItems:"center",justifyContent:"center",gap:0,borderTopLeftRadius:0,borderBottomLeftRadius:0,borderTopRightRadius:o,borderBottomRightRadius:o,padding:"0 !important",boxShadow:`inset 1px 0 0 ${a}`,"& svg":{margin:0}})}},Rt=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]]},Ut=(e,t,n,r)=>{const a=Array.from({length:101},(e,t)=>t),s={},[o,i]=Rt(e),c=null!=n?n:o,l=null!=r?r:i;return a.forEach(e=>{s[`${e}%`]={backgroundImage:`\n linear-gradient(${t}, ${t}),\n conic-gradient(from ${3.6*e}deg, transparent 60%, ${c} 80%, ${l} 100%, transparent 15%)\n `}}),s},Dt="__grafanaAssistantInlineFactory__",qt="__grafanaAssistantInlineInitializer__",Bt="__grafanaAssistantInlineInitPromise__";function Ot(e){const t=window[Dt];t&&t!==e?console.warn("InlineAssistant factory already set; ignoring subsequent setInlineAssistantFactory call"):t||(window[Dt]=e)}function Gt(e){const t=window[qt];t&&t!==e?console.warn("InlineAssistant initializer already set; ignoring subsequent setInlineAssistantInitializer call"):t||(window[qt]=e)}async function Mt(){if(window[Dt])return;const e=window[qt];if(!e)throw new Error("InlineAssistant not initialized. Make sure the Grafana Assistant plugin is loaded and initialized.");const t=window[Bt];if(t)return t;const n=(async()=>{try{await e()}catch(e){throw window[Bt]=null,e}})();return window[Bt]=n,n}function zt(){const e=window[Dt];if(!e)throw new Error("InlineAssistant factory not initialized. Make sure the Grafana Assistant plugin is loaded.");return e}function Ft(){const[e,t]=(0,o.useState)(!1),[n,r]=(0,o.useState)(""),[a,s]=(0,o.useState)(null),i=(0,o.useRef)(null),c=(0,o.useCallback)(()=>{s(null),r("")},[]),l=(0,o.useCallback)(()=>{i.current&&i.current.cancel(),t(!1)},[]),u=(0,o.useCallback)(async e=>{var n;s(null),r(""),t(!0);try{await Mt();const n=zt();i.current||(i.current=await n(e.origin)),await i.current.sendPrompt({prompt:e.prompt,agentName:e.agentName,agentId:e.agentId,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;s(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));s(a),t(!1),null===(n=e.onError)||void 0===n||n.call(e,a)}},[]);return(0,o.useEffect)(()=>()=>{i.current&&(i.current.cancel(),i.current.dispose(),i.current=null)},[]),{generate:u,isGenerating:e,content:n,error:a,cancel:l,reset:c}}function jt({value:e,onChange:t,origin:n,systemPrompt:r,onComplete:a,onError:s,onDelta:i,disabled:c=!1,autoGenerate:l=!1,streaming:u=!1,getUserPrompt:d}){const{generate:p,isGenerating:m,content:f,error:h,reset:g}=Ft(),v=(0,o.useRef)(!1),b=(0,o.useRef)(e),y=m?u?f:"":e,w=d?d(e.trim()):e.trim(),x=!w||c||m,E=(0,o.useCallback)(o=>{b.current=e,t(""),g(),p({prompt:o,origin:n,systemPrompt:r,onDelta:i,onComplete:e=>{t(e),null==a||a(e)},onError:e=>{t(b.current),null==s||s(e)}})},[e,t,n,r,i,a,s,p,g]);(0,o.useEffect)(()=>{!l||!r||e||v.current||c||(v.current=!0,E(r))},[]);const k=(0,o.useCallback)(()=>{x||E(w)},[x,E,w]);return{displayValue:y,isSendDisabled:x,handleGenerate:k,isGenerating:m,error:h}}const Wt=["Generating...","Brewing...","Cooking...","Crunching...","Phrasing...","Wording...","Crafting...","Composing...","Drafting...","Shaping...","Forming...","Molding...","Sketching...","Whipping up...","Conjuring...","Stirring..."];function Vt(e,t){const[n,r]=(0,o.useState)(""),a=(0,o.useRef)(!1);if(e&&!a.current){const e=Wt[Math.floor(Math.random()*Wt.length)];return r(e),a.current=!0,e}return e||(a.current=!1),e?n:t}function Qt({value:e,onChange:t,placeholder:n,origin:r,systemPrompt:a,onComplete:s,onError:o,onDelta:c,disabled:l=!1,autoGenerate:u=!1,streaming:d=!1,getUserPrompt:p,className:m,"data-testid":f}){const{displayValue:h,isSendDisabled:g,handleGenerate:v,isGenerating:b,error:y}=jt({value:e,onChange:t,origin:r,systemPrompt:a,onComplete:s,onError:o,onDelta:c,disabled:l,autoGenerate:u,streaming:d,getUserPrompt:p}),w=(0,oe.useStyles2)(Ht),x=Vt(b,null!=n?n:"Ask AI to generate..."),E=i().createElement(oe.IconButton,{name:"ai-sparkle",onClick:v,disabled:g,tooltip:g?"Enter text to generate":"Generate with AI","data-testid":f?`${f}-send`:void 0});return i().createElement("div",{className:At(w.wrapper,{[w.animatedWrapper]:b},m),"data-testid":f},i().createElement(oe.Input,{value:h,onKeyDown:e=>{"Enter"===e.key&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),v())},onChange:e=>t(e.currentTarget.value),placeholder:x,disabled:l||b,suffix:E,invalid:!!y,"data-testid":f?`${f}-input`:void 0}))}const Ht=e=>{const t=e.colors.background.primary,n=$t({label:"ai-input-border-animation",...Ut(e,t)}),[r,a]=Rt(e);return{wrapper:St({label:"ai-text-input-wrapper",position:"relative",border:"1px solid transparent",borderRadius:e.shape.radius.default,cornerShape:"squircle"}),animatedWrapper:St({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 Kt({value:e,onChange:t,placeholder:n,origin:r,systemPrompt:a,onComplete:s,onError:o,onDelta:c,disabled:l=!1,autoGenerate:u=!1,streaming:d=!1,getUserPrompt:p,rows:m=4,className:f,"data-testid":h}){const{displayValue:g,isSendDisabled:v,handleGenerate:b,isGenerating:y,error:w}=jt({value:e,onChange:t,origin:r,systemPrompt:a,onComplete:s,onError:o,onDelta:c,disabled:l,autoGenerate:u,streaming:d,getUserPrompt:p}),x=(0,oe.useStyles2)(Jt),E=Vt(y,null!=n?n:"Ask AI to generate... (Cmd/Ctrl+Enter to send)"),k=Math.max(m,2);return i().createElement("div",{className:At(x.textareaWrapper,{[x.animatedWrapper]:y},f),"data-testid":h},i().createElement(oe.TextArea,{value:g,onKeyDown:e=>{"Enter"===e.key&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),b())},onChange:e=>t(e.currentTarget.value),placeholder:E,disabled:l||y,rows:k,className:x.textarea,invalid:!!w,"data-testid":h?`${h}-textarea`:void 0}),i().createElement(oe.IconButton,{name:"ai-sparkle",onClick:b,disabled:v,className:x.sendButton,"aria-label":"Generate with AI",tooltip:v?"Enter text to generate":"Generate with AI (Cmd/Ctrl+Enter)","data-testid":h?`${h}-send`:void 0}))}const Jt=e=>{const t=e.colors.background.primary,n=$t({label:"ai-textarea-border-animation",...Ut(e,t)}),[r,a]=Rt(e);return{textareaWrapper:St({label:"ai-textarea-wrapper",position:"relative",border:"1px solid transparent",borderRadius:e.shape.radius.default,cornerShape:"squircle"}),animatedWrapper:St({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:St({label:"ai-textarea",paddingRight:e.spacing(4),minHeight:e.spacing(6),"& textarea":{minHeight:e.spacing(6)},scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}}),sendButton:St({label:"ai-textarea-send",position:"absolute",right:e.spacing(1),top:e.spacing(1)})}};function Xt(e){const t=["refId","hide","key","queryType","datasource"];for(const n in e)if("label"!==n&&!t.includes(n))return!1;return!0}function Zt({size:e,currentQuery:t,queries:n,dataSourceInstanceSettings:r,app:a,datasourceApi:s,title:o="Query with Assistant"}){var c;const{isAvailable:l,openAssistant:u}=se();if(!l||!u)return null;const d=`grafana/query-editor/${r.type}/${null!==(c=null!=a?a:O.CoreApp.Unknown)&&void 0!==c?c:"unknown"}`,p=!Xt(t),m=n.filter(e=>e.refId!==t.refId&&!Xt(e)),f=[P("datasource",{datasourceUid:r.uid})];p&&f.push(P("structured",{title:"Current query",data:t})),m.length>0&&f.push(P("structured",{title:"Other queries",data:{queries:m}}));const h=p&&(null==s?void 0:s.getQueryDisplayText)?s.getQueryDisplayText(t):null,g=!!h,v=g?"Help me update the current query to answer my questions and provide the insights I need.":"Help me create a new query to answer my questions and provide the insights I need.",b=[];h&&b.push(`Current query: ${h}`),b.push(`Selected data source: ${r.name}`);const y=g?"Please describe what you want to change or improve in this query.":"Please describe what you want to query and what insights you're looking for.",w=[v,"```",...b,"```",y].join("\n");return i().createElement(It,{prompt:w,origin:d,context:f,autoSend:!1,title:o,size:e,openAssistant:u})}function Yt(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 en="grafana-assistant-terms-and-conditions-refresh";async function tn(){var e,t;const n=(0,s.getBackendSrv)(),r=`${null!==(e=null===s.config||void 0===s.config?void 0:s.config.appSubUrl)&&void 0!==e?e:""}/api/plugins/${Q}/resources/api/v1/settings/terms`,a=(await(0,V.lastValueFrom)(n.fetch({url:r,method:"GET",showErrorAlert:!1}))).data.data,o=null!==(t=a.acceptedTermsAndConditions)&&void 0!==t&&t,i=a.acceptedVersion,c=a.version,l=a.termsType;if("msa"===l)return{accepted:o,termsType:l};if(!o||!i||!c)return{accepted:!1,termsType:l};const u=1===function(e,t){const n=Yt(e),r=Yt(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:o&&!u,termsType:l}}async function nn(){try{return(await tn()).accepted}catch(e){throw new Error(`Failed to check terms requirements: ${e instanceof Error?e.message:String(e)}`)}}function rn(){const[e,t]=(0,o.useState)(!1),[n,r]=(0,o.useState)(null),[a,s]=(0,o.useState)(!0),[i,c]=(0,o.useState)(null);return(0,o.useEffect)(()=>{async function e(){try{s(!0),c(null);const e=await tn();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{s(!1)}}e();const n=()=>{e()};return document.addEventListener(en,n),()=>{document.removeEventListener(en,n)}},[]),{accepted:e,termsType:n,loading:a,error:i}}function an(e,t){var n;const{explainer:r,...a}=null!==(n=t.metadata)&&void 0!==n?n:{},s={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 s=t.validate(n),o=[e(s,r)];return r.signal&&o.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&&o.push(new Promise((e,n)=>{setTimeout(()=>{n(new Error(`Tool ${t.name} execution timed out after ${r.timeout}ms`))},r.timeout)})),Promise.race(o)}catch(e){throw t.verboseParsingErrors&&console.error(`Error invoking tool ${t.name}:`,e,n),e}}};return s}const sn="grafana-assistant-limits-updated";async function on(){var e,t,n,r;const a=(0,s.getBackendSrv)(),o=`${null!==(e=null===s.config||void 0===s.config?void 0:s.config.appSubUrl)&&void 0!==e?e:""}/api/plugins/${Q}/resources/api/v1/usage/limits/prompt`,i=(await(0,V.lastValueFrom)(a.fetch({url:o,method:"GET",showErrorAlert:!1}))).data.data,c=null!==(t=i.total)&&void 0!==t?t:0,l=null!==(n=i.limit)&&void 0!==n?n:0;return{count:c,limit:l,month:null!==(r=i.month)&&void 0!==r?r:"",isLimitReached:l>0&&c>=l}}async function cn(){try{return await on()}catch(e){throw new Error(`Failed to check limits: ${e instanceof Error?e.message:String(e)}`)}}function ln(){const[e,t]=(0,o.useState)(0),[n,r]=(0,o.useState)(0),[a,s]=(0,o.useState)(""),[i,c]=(0,o.useState)(!0),[l,u]=(0,o.useState)(null),d=(0,o.useCallback)(async()=>{try{c(!0),u(null);const e=await on();t(e.count),r(e.limit),s(e.month)}catch(e){const n=e instanceof Error?e.message:"Failed to fetch limits";u(n),t(0),r(0),s("")}finally{c(!1)}},[]);return(0,o.useEffect)(()=>{d()},[d]),(0,o.useEffect)(()=>{const e=e=>{const n=e;n.detail&&(t(n.detail.count),r(n.detail.limit),u(null))};return window.addEventListener(sn,e),()=>{window.removeEventListener(sn,e)}},[]),{count:e,limit:n,month:a,isLimitReached:n>0&&e>=n,loading:i,error:l,refetch:d}}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:()=>Ht,AITextInput:()=>Qt,ASSISTANT_PLUGIN_ID:()=>Q,ASSISTANT_PLUGIN_TITLE:()=>K,AssistantPromptCard:()=>en,AssistantPromptCardView:()=>tn,CALLBACK_EXTENSION_POINT:()=>z,ComponentNodeData:()=>k,DashboardNodeData:()=>S,DatasourceNodeData:()=>C,EntityNodeData:()=>I,FolderNodeData:()=>$,InvestigationCreatedEvent:()=>M,LIMITS_UPDATED_EVENT:()=>dn,LabelNameNodeData:()=>T,LabelValueNodeData:()=>L,OpenAssistantButton:()=>Ct,OpenAssistantSplitButton:()=>Nt,QueryWithAssistantButton:()=>Zt,SkillNodeData:()=>R,StructuredNodeData:()=>a,TERMS_AND_CONDITIONS_REFRESH_EVENT:()=>sn,checkLimits:()=>mn,checkTerms:()=>cn,closeAssistant:()=>re,createAssistantContextItem:()=>P,createTool:()=>un,emitInvestigationCreated:()=>G,ensureInlineAssistantInitialized:()=>Gt,getExposeAssistantFunctionsConfig:()=>W,getInlineAssistantFactory:()=>Ft,isAssistantAvailable:()=>Z,newFunctionNamespace:()=>j,onInvestigationCreated:()=>F,openAssistant:()=>ne,provideComponents:()=>A,providePageContext:()=>g,provideQuestions:()=>D,setInlineAssistantFactory:()=>Ot,setInlineAssistantInitializer:()=>Mt,toggleAssistant:()=>ae,useAssistant:()=>se,useInlineAssistant:()=>zt,useLimits:()=>fn,usePageComponents:()=>E,usePageContext:()=>y,useProvidePageContext:()=>v,useProvideQuestions:()=>U,useQuestions:()=>q,useTerms:()=>ln});class r{constructor(e){this.params=e,this.text="",this.id=n(e.id),this.type=e.type}get bypassLimits(){var e;return null!==(e=this.params.bypassLimits)&&void 0!==e&&e}formatForLLM(e){var t,n;return{type:this.type,codeElementIds:e,bypassLimits:this.bypassLimits,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,bypassLimits:this.bypassLimits,data:this.data}}}const s=require("@grafana/runtime"),o=require("react");var i=e.n(o);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)),s=n.filter(e=>!a.has(e.id));s.length>0&&f([...r,...s],!0)}));const b=[];function v(e,t=b){const n=(0,o.useRef)(void 0),r=(0,o.useRef)(void 0),a=(0,o.useRef)(!1);return(0,o.useEffect)(()=>{a.current=!1;const s=void 0!==r.current?r.current:t;return n.current=g(e,s),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,o.useEffect)(()=>{!a.current&&n.current&&n.current(t)},[t]),(0,o.useCallback)(e=>{a.current=!0,n.current?n.current(e):r.current=e},[])}function y(e={allowQuestions:!1,allowComponents:!1}){const[t,n]=(0,o.useState)([]),r=(0,s.useLocationService)(),a=(0,o.useRef)("");(0,o.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()},s=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(),()=>{s.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 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:`Custom UI components (${this.namespace})`,prompt:this.prompt?this.prompt+"\n\nIMPORTANT: The instructions and components described above are scoped to this specific context item only. Do not apply them to unrelated queries or components.":""}}}}function E(){const e=y({allowComponents:!0,allowQuestions:!1});return(0,o.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 s=g(/.*/,[P("component",{components:n,prompt:"",namespace:t})]),o=g(r,[P("component",{components:{},prompt:e,namespace:t})]),i=(e,n)=>{s([P("component",{components:e,prompt:"",namespace:t})]),o([P("component",{components:{},prompt:n,namespace:t})])};return i.unregister=()=>{s.unregister(),o.unregister()},i}class S 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,bypassLimits:this.bypassLimits,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,bypassLimits:this.bypassLimits,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,bypassLimits:this.bypassLimits,data:{name:this.datasourceName,uid:this.datasourceUid,type:this.datasourceType,text:this.text}}}}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,bypassLimits:this.bypassLimits,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,bypassLimits:this.bypassLimits,data:{name:this.labelName,datasourceUid:this.datasourceUid,datasourceType:this.datasourceType,datasourceName:this.datasourceName,labelName:this.labelName,text:this.text}}}}class L extends r{constructor(e){super({...e,id:`${e.datasourceUid}-${e.labelName}-${e.labelValue}-${e.operator||"="}`,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,this.operator=e.operator||"="}formatForLLM(e){return{type:this.type,codeElementIds:e,bypassLimits:this.bypassLimits,data:{name:this.labelValue,datasourceUid:this.datasourceUid,datasourceType:this.datasourceType,datasourceName:this.datasourceName,labelName:this.labelName,labelValue:this.labelValue,text:this.text,operator:this.operator}}}}function N(e){var t,n,r,a,o;const i=(0,s.getDataSourceSrv)().getInstanceSettings(e);return{datasourceType:null!==(t=null==i?void 0:i.type)&&void 0!==t?t:"unknown",datasourceName:null!==(n=null==i?void 0:i.name)&&void 0!==n?n:e,img:null===(o=null===(a=null===(r=null==i?void 0:i.meta)||void 0===r?void 0:r.info)||void 0===a?void 0:a.logos)||void 0===o?void 0:o.small}}const _={datasource:"database",label_name:"database",label_value:"database",dashboard:"dashboard",dashboard_folder:"folder",unknown:"circle-mono",structured:"gf-grid",component:"gf-grid",entity:"asserts",skill:"play"};function P(e,t){var n,s,o;const i=function(e,t){switch(e){case"datasource":return new C({...t,...N(t.datasourceUid)});case"label_name":return new T({...t,...N(t.datasourceUid)});case"label_value":return new L({...t,...N(t.datasourceUid)});case"dashboard":return new S(t);case"dashboard_folder":return new $(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!==(s=t.img)&&void 0!==s?s:function(e){if("img"in e)return e.img}(i);return{node:{id:i.id,name:c,img:l,icon:null!==(o=t.icon)&&void 0!==o?o:_[e],navigable:!1,selectable:!0,data:i},occurrences:[]}}class R extends r{constructor(e){super({...e,id:e.skillId,type:"skill",text:e.skillName}),this.skillId=e.skillId,this.skillName=e.skillName,this.text=e.skillName}formatForLLM(e){return{type:this.type,codeElementIds:e,bypassLimits:this.bypassLimits,data:{name:this.skillName,skillId:this.skillId,skillName:this.skillName,text:this.text}}}}function D(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)),s=e=>{a(r(e))};return s.unregister=a.unregister,s}function U(e,t=[]){const n=(0,o.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=v(e,r(t));return e=>{a(r(e))}}function q(){const e=y({allowQuestions:!0,allowComponents:!1});return B(e)}const B=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)||[]}}),O=require("@grafana/data");class M extends O.BusEventWithPayload{}function G(e){const t=new M({investigationId:e});(0,s.getAppEvents)().publish(t)}function F(e){const t=(0,s.getAppEvents)().subscribe(M,t=>{e(t.payload)});return()=>t.unsubscribe()}M.type="grafana-assistant:investigation-created";const z="grafana-assistant-app/callback/v0-alpha";function j(e,t){return{namespace:e,functions:t}}function W(e){return{title:"callback",targets:[z],fn:()=>e.map(e=>({namespace:e.namespace,functions:e.functions}))}}const V=require("rxjs"),Q="grafana-assistant-app",K="Grafana Assistant",H=10,J=100,X=5e3;function Z(){return s.getObservablePluginLinks?(0,V.defer)(()=>{try{return(0,s.getObservablePluginLinks)({extensionPointId:"grafana/extension-sidebar/v0-alpha"}).pipe((0,V.map)(e=>e.some(e=>e.pluginId===Q&&e.title===K)))}catch(e){return(0,V.throwError)(()=>e)}}).pipe((0,V.retry)({count:H,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(J*Math.pow(2,t-1),X);return(0,V.timer)(a)}}),(0,V.catchError)(()=>(0,V.of)(!1))):(0,V.of)(!1)}class Y extends O.BusEventWithPayload{}Y.type="open-extension-sidebar";class ee extends O.BusEventBase{}ee.type="close-extension-sidebar";class te extends O.BusEventWithPayload{}function ne(e){var t,n;(0,s.reportInteraction)("grafana_assistant_app_opened_sidebar",{from:e.origin,prompt:null!==(t=e.prompt)&&void 0!==t?t:""}),function(e,t,n){const r=new Y({pluginId:e,componentTitle:t,props:n});(0,s.getAppEvents)().publish(r)}(Q,K,{initialPrompt:e.prompt,initialContext:e.context,initialAutoSend:null===(n=e.autoSend)||void 0===n||n,origin:e.origin,initialMode:e.mode})}function re(){!function(){const e=new ee;(0,s.getAppEvents)().publish(e)}()}function ae(e){var t,n;(0,s.reportInteraction)("grafana_assistant_app_toggled_sidebar",{from:e.origin,prompt:null!==(t=e.prompt)&&void 0!==t?t:""}),function(e,t,n){const r=new te({pluginId:e,componentTitle:t,props:n});(0,s.getAppEvents)().publish(r)}(Q,K,{initialPrompt:e.prompt,initialContext:e.context,initialAutoSend:null===(n=e.autoSend)||void 0===n||n,origin:e.origin,initialMode:e.mode})}function se(){const[e,t]=(0,o.useState)(void 0);(0,o.useEffect)(()=>{const e=Z().subscribe(t);return()=>e.unsubscribe()},[]);const n=null!=e&&e;return{isLoading:void 0===e,isAvailable:n,openAssistant:n?ne:void 0,closeAssistant:n?re:void 0,toggleAssistant:n?ae:void 0}}te.type="toggle-extension-sidebar";const oe=require("@grafana/ui");var ie=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}(),ce=Math.abs,le=String.fromCharCode,ue=Object.assign;function de(e){return e.trim()}function pe(e,t,n){return e.replace(t,n)}function me(e,t){return e.indexOf(t)}function fe(e,t){return 0|e.charCodeAt(t)}function he(e,t,n){return e.slice(t,n)}function ge(e){return e.length}function be(e){return e.length}function ve(e,t){return t.push(e),e}var ye=1,we=1,xe=0,ke=0,Ee=0,Ae="";function Se(e,t,n,r,a,s,o){return{value:e,root:t,parent:n,type:r,props:a,children:s,line:ye,column:we,length:o,return:""}}function $e(e,t){return ue(Se("",null,null,"",null,null,0),e,{length:-e.length},t)}function Ce(){return Ee=ke>0?fe(Ae,--ke):0,we--,10===Ee&&(we=1,ye--),Ee}function Ie(){return Ee=ke<xe?fe(Ae,ke++):0,we++,10===Ee&&(we=1,ye++),Ee}function Te(){return fe(Ae,ke)}function Le(){return ke}function Ne(e,t){return he(Ae,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 Pe(e){return ye=we=1,xe=ge(Ae=e),ke=0,[]}function Re(e){return Ae="",e}function De(e){return de(Ne(ke-1,Be(91===e?e+2:40===e?e+1:e)))}function Ue(e){for(;(Ee=Te())&&Ee<33;)Ie();return _e(e)>2||_e(Ee)>3?"":" "}function qe(e,t){for(;--t&&Ie()&&!(Ee<48||Ee>102||Ee>57&&Ee<65||Ee>70&&Ee<97););return Ne(e,Le()+(t<6&&32==Te()&&32==Ie()))}function Be(e){for(;Ie();)switch(Ee){case e:return ke;case 34:case 39:34!==e&&39!==e&&Be(Ee);break;case 40:41===e&&Be(e);break;case 92:Ie()}return ke}function Oe(e,t){for(;Ie()&&e+Ee!==57&&(e+Ee!==84||47!==Te()););return"/*"+Ne(t,ke-1)+"*"+le(47===e?e:Ie())}function Me(e){for(;!_e(Te());)Ie();return Ne(e,ke)}var Ge="-ms-",Fe="-moz-",ze="-webkit-",je="comm",We="rule",Ve="decl",Qe="@keyframes";function Ke(e,t){for(var n="",r=be(e),a=0;a<r;a++)n+=t(e[a],a,e,t)||"";return n}function He(e,t,n,r){switch(e.type){case"@layer":if(e.children.length)break;case"@import":case Ve:return e.return=e.return||e.value;case je:return"";case Qe:return e.return=e.value+"{"+Ke(e.children,r)+"}";case We:e.value=e.props.join(",")}return ge(n=Ke(e.children,r))?e.return=e.value+"{"+n+"}":""}function Je(e){return Re(Xe("",null,null,null,[""],e=Pe(e),0,[0],e))}function Xe(e,t,n,r,a,s,o,i,c){for(var l=0,u=0,d=o,p=0,m=0,f=0,h=1,g=1,b=1,v=0,y="",w=a,x=s,k=r,E=y;g;)switch(f=v,v=Ie()){case 40:if(108!=f&&58==fe(E,d-1)){-1!=me(E+=pe(De(v),"&","&\f"),"&\f")&&(b=-1);break}case 34:case 39:case 91:E+=De(v);break;case 9:case 10:case 13:case 32:E+=Ue(f);break;case 92:E+=qe(Le()-1,7);continue;case 47:switch(Te()){case 42:case 47:ve(Ye(Oe(Ie(),Le()),t,n),c);break;default:E+="/"}break;case 123*h:i[l++]=ge(E)*b;case 125*h:case 59:case 0:switch(v){case 0:case 125:g=0;case 59+u:-1==b&&(E=pe(E,/\f/g,"")),m>0&&ge(E)-d&&ve(m>32?et(E+";",r,n,d-1):et(pe(E," ","")+";",r,n,d-2),c);break;case 59:E+=";";default:if(ve(k=Ze(E,t,n,l,u,a,i,y,w=[],x=[],d),s),123===v)if(0===u)Xe(E,t,k,k,w,s,d,i,x);else switch(99===p&&110===fe(E,3)?100:p){case 100:case 108:case 109:case 115:Xe(e,k,k,r&&ve(Ze(e,k,k,0,0,a,i,y,a,w=[],d),x),a,x,d,i,r?w:x);break;default:Xe(E,k,k,k,[""],x,0,i,x)}}l=u=m=0,h=b=1,y=E="",d=o;break;case 58:d=1+ge(E),m=f;default:if(h<1)if(123==v)--h;else if(125==v&&0==h++&&125==Ce())continue;switch(E+=le(v),v*h){case 38:b=u>0?1:(E+="\f",-1);break;case 44:i[l++]=(ge(E)-1)*b,b=1;break;case 64:45===Te()&&(E+=De(Ie())),p=Te(),u=d=ge(y=E+=Me(Le())),v++;break;case 45:45===f&&2==ge(E)&&(h=0)}}return s}function Ze(e,t,n,r,a,s,o,i,c,l,u){for(var d=a-1,p=0===a?s:[""],m=be(p),f=0,h=0,g=0;f<r;++f)for(var b=0,v=he(e,d+1,d=ce(h=o[f])),y=e;b<m;++b)(y=de(h>0?p[b]+" "+v:pe(v,/&\f/g,p[b])))&&(c[g++]=y);return Se(e,t,n,0===a?We:i,c,l,u)}function Ye(e,t,n){return Se(e,t,n,je,le(Ee),he(e,2,-2),0)}function et(e,t,n,r){return Se(e,t,n,Ve,he(e,0,r),he(e,r+1,-1),r)}var tt=function(e,t,n){for(var r=0,a=0;r=a,a=Te(),38===r&&12===a&&(t[n]=1),!_e(a);)Ie();return Ne(e,ke)},nt=new WeakMap,rt=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)||nt.get(n))&&!r){nt.set(e,!0);for(var a=[],s=function(e,t){return Re(function(e,t){var n=-1,r=44;do{switch(_e(r)){case 0:38===r&&12===Te()&&(t[n]=1),e[n]+=tt(ke-1,t,n);break;case 2:e[n]+=De(r);break;case 4:if(44===r){e[++n]=58===Te()?"&\f":"",t[n]=e[n].length;break}default:e[n]+=le(r)}}while(r=Ie());return e}(Pe(e),t))}(t,a),o=n.props,i=0,c=0;i<s.length;i++)for(var l=0;l<o.length;l++,c++)e.props[c]=a[i]?s[i].replace(/&\f/g,o[l]):o[l]+" "+s[i]}}},at=function(e){if("decl"===e.type){var t=e.value;108===t.charCodeAt(0)&&98===t.charCodeAt(2)&&(e.return="",e.value="")}};function st(e,t){switch(function(e,t){return 45^fe(e,0)?(((t<<2^fe(e,0))<<2^fe(e,1))<<2^fe(e,2))<<2^fe(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+Fe+e+Ge+e+e;case 6828:case 4268:return ze+e+Ge+e+e;case 6165:return ze+e+Ge+"flex-"+e+e;case 5187:return ze+e+pe(e,/(\w+).+(:[^]+)/,ze+"box-$1$2"+Ge+"flex-$1$2")+e;case 5443:return ze+e+Ge+"flex-item-"+pe(e,/flex-|-self/,"")+e;case 4675:return ze+e+Ge+"flex-line-pack"+pe(e,/align-content|flex-|-self/,"")+e;case 5548:return ze+e+Ge+pe(e,"shrink","negative")+e;case 5292:return ze+e+Ge+pe(e,"basis","preferred-size")+e;case 6060:return ze+"box-"+pe(e,"-grow","")+ze+e+Ge+pe(e,"grow","positive")+e;case 4554:return ze+pe(e,/([^-])(transform)/g,"$1"+ze+"$2")+e;case 6187:return pe(pe(pe(e,/(zoom-|grab)/,ze+"$1"),/(image-set)/,ze+"$1"),e,"")+e;case 5495:case 3959:return pe(e,/(image-set\([^]*)/,ze+"$1$`$1");case 4968:return pe(pe(e,/(.+:)(flex-)?(.*)/,ze+"box-pack:$3"+Ge+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+ze+e+e;case 4095:case 3583:case 4068:case 2532:return pe(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(ge(e)-1-t>6)switch(fe(e,t+1)){case 109:if(45!==fe(e,t+4))break;case 102:return pe(e,/(.+:)(.+)-([^]+)/,"$1"+ze+"$2-$3$1"+Fe+(108==fe(e,t+3)?"$3":"$2-$3"))+e;case 115:return~me(e,"stretch")?st(pe(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(115!==fe(e,t+1))break;case 6444:switch(fe(e,ge(e)-3-(~me(e,"!important")&&10))){case 107:return pe(e,":",":"+ze)+e;case 101:return pe(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+ze+(45===fe(e,14)?"inline-":"")+"box$3$1"+ze+"$2$3$1"+Ge+"$2box$3")+e}break;case 5936:switch(fe(e,t+11)){case 114:return ze+e+Ge+pe(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return ze+e+Ge+pe(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return ze+e+Ge+pe(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return ze+e+Ge+e+e}return e}var ot=[function(e,t,n,r){if(e.length>-1&&!e.return)switch(e.type){case Ve:e.return=st(e.value,e.length);break;case Qe:return Ke([$e(e,{value:pe(e.value,"@","@"+ze)})],r);case We: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 Ke([$e(e,{props:[pe(t,/:(read-\w+)/,":-moz-$1")]})],r);case"::placeholder":return Ke([$e(e,{props:[pe(t,/:(plac\w+)/,":"+ze+"input-$1")]}),$e(e,{props:[pe(t,/:(plac\w+)/,":-moz-$1")]}),$e(e,{props:[pe(t,/:(plac\w+)/,Ge+"input-$1")]})],r)}return""})}}],it={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 ct(e){var t=Object.create(null);return function(n){return void 0===t[n]&&(t[n]=e(n)),t[n]}}var lt=/[A-Z]|^ms/g,ut=/_EMO_([^_]+?)_([^]*?)_EMO_/g,dt=function(e){return 45===e.charCodeAt(1)},pt=function(e){return null!=e&&"boolean"!=typeof e},mt=ct(function(e){return dt(e)?e:e.replace(lt,"-$&").toLowerCase()}),ft=function(e,t){switch(e){case"animation":case"animationName":if("string"==typeof t)return t.replace(ut,function(e,t,n){return gt={name:t,styles:n,next:gt},t})}return 1===it[e]||dt(e)||"number"!=typeof t||0===t?t:t+"px"};function ht(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 gt={name:a.name,styles:a.styles,next:gt},a.name;var s=n;if(void 0!==s.styles){var o=s.next;if(void 0!==o)for(;void 0!==o;)gt={name:o.name,styles:o.styles,next:gt},o=o.next;return s.styles+";"}return function(e,t,n){var r="";if(Array.isArray(n))for(var a=0;a<n.length;a++)r+=ht(e,t,n[a])+";";else for(var s in n){var o=n[s];if("object"!=typeof o){var i=o;null!=t&&void 0!==t[i]?r+=s+"{"+t[i]+"}":pt(i)&&(r+=mt(s)+":"+ft(s,i)+";")}else if(!Array.isArray(o)||"string"!=typeof o[0]||null!=t&&void 0!==t[o[0]]){var c=ht(e,t,o);switch(s){case"animation":case"animationName":r+=mt(s)+":"+c+";";break;default:r+=s+"{"+c+"}"}}else for(var l=0;l<o.length;l++)pt(o[l])&&(r+=mt(s)+":"+ft(s,o[l])+";")}return r}(e,t,n);case"function":if(void 0!==e){var i=gt,c=n(e);return gt=i,ht(e,t,c)}}var l=n;if(null==t)return l;var u=t[l];return void 0!==u?u:l}var gt,bt=/label:\s*([^\s;{]+)\s*(;|$)/g;function vt(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="";gt=void 0;var s=e[0];null==s||void 0===s.raw?(r=!1,a+=ht(n,t,s)):a+=s[0];for(var o=1;o<e.length;o++)a+=ht(n,t,e[o]),r&&(a+=s[o]);bt.lastIndex=0;for(var i,c="";null!==(i=bt.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:gt}}function yt(e,t,n){var r="";return n.split(" ").forEach(function(n){void 0!==e[n]?t.push(e[n]+";"):n&&(r+=n+" ")}),r}function wt(e,t){if(void 0===e.inserted[t.name])return e.insert("",t,e.sheet,!0)}function xt(e,t,n){var r=[],a=yt(e,r,n);return r.length<2?n:a+t(r)}var kt=function e(t){for(var n="",r=0;r<t.length;r++){var a=t[r];if(null!=a){var s=void 0;switch(typeof a){case"boolean":break;case"object":if(Array.isArray(a))s=e(a);else for(var o in s="",a)a[o]&&o&&(s&&(s+=" "),s+=o);break;default:s=a}s&&(n&&(n+=" "),n+=s)}}return n};var Et=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,s=e.stylisPlugins||ot,o={},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++)o[t[n]]=!0;i.push(e)});var c,l,u,d,p=[He,(d=function(e){c.insert(e)},function(e){e.root||(e=e.return)&&d(e)})],m=(l=[rt,at].concat(s,p),u=be(l),function(e,t,n,r){for(var a="",s=0;s<u;s++)a+=l[s](e,t,n,r)||"";return a});a=function(e,t,n,r){c=n,Ke(Je(e?e+"{"+t.styles+"}":t.styles),m),r&&(f.inserted[t.name]=!0)};var f={key:t,sheet:new ie({key:t,container:r,nonce:e.nonce,speedy:e.speedy,prepend:e.prepend,insertionPoint:e.insertionPoint}),nonce:e.nonce,inserted:o,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=vt(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 xt(t.registered,n,kt(r))},injectGlobal:function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];var a=vt(n,t.registered);wt(t,a)},keyframes:function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];var a=vt(n,t.registered),s="animation-"+a.name;return wt(t,{name:a.name,styles:"@keyframes "+s+"{"+a.styles+"}"}),s},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:yt.bind(null,t.registered),merge:xt.bind(null,t.registered,n)}}({key:"css"}),At=(Et.flush,Et.hydrate,Et.cx),St=(Et.merge,Et.getRegisteredStyles,Et.injectGlobal,Et.keyframes),$t=Et.css;function Ct(e){const{isAvailable:t,openAssistant:n}=se();return t&&n?i().createElement(It,{...e,openAssistant:n}):null}function It({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,oe.useStyles2)(Tt);return(0,o.useEffect)(()=>{(0,s.reportInteraction)("grafana_assistant_app_open_sidebar_button_displayed",{from:t})},[t]),i().createElement(i().Fragment,null,l?i().createElement(oe.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(oe.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))}Et.sheet,Et.cache;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,s=`max(calc(${a} - 1px), 1px)`,o={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:s,cornerShape:"squircle",background:`linear-gradient(${e}, ${e}), ${r}`,zIndex:-1,transition:"none",pointerEvents:"none"});return{button:$t({label:"assistant-button",width:"fit-content",maxWidth:"100%",position:"relative",isolation:"isolate",border:"none",transition:"none !important","&::before":o,"&::after":{...i(t),transition:"none"},"&:hover":{transition:"none !important"},"&:hover::after":{background:`linear-gradient(${n}, ${n}), ${r}`}}),icon:$t({label:"assistant-icon",position:"relative",isolation:"isolate",border:"none",background:"none",padding:e.spacing(.5),"&::before":{...o,transition:"background 0.1s ease"},"&:hover::after":{...i(t),background:`linear-gradient(${n}, ${n}), ${r}`}})}},Lt={sm:32,md:36,lg:40};function Nt(e){const{isAvailable:t,openAssistant:n}=se();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,dropdownButtonWidth:p,openAssistant:m}){const f=(0,oe.useStyles2)(Pt),h=Boolean(u),g="number"==typeof(b=null!=p?p:Lt[c])?`${b}px`:b;var b;(0,o.useEffect)(()=>{(0,s.reportInteraction)("grafana_assistant_app_open_sidebar_split_button_displayed",{from:t})},[t]);const v=i().createElement("div",{className:f.wrapper},i().createElement(oe.ButtonGroup,{className:f.buttonGroup},i().createElement(oe.Button,{icon:"ai-sparkle",onClick:()=>{null==l||l(),m({prompt:e,context:n,autoSend:r,origin:t})},variant:"secondary",fill:"solid",size:c,"aria-label":a,className:At(f.segmentButton,h?f.mainButtonSplit:f.mainButtonSolo),"data-testid":"assistant-split-button-main"},a),u&&i().createElement(oe.Dropdown,{overlay:u},i().createElement(oe.Button,{variant:"secondary",icon:"angle-down",size:c,"aria-label":"More AI actions",className:At(f.segmentButton,f.dropdownButton),style:{width:g,minWidth:g},"data-testid":"assistant-split-button-dropdown"}))));return d?i().createElement(oe.Tooltip,{content:d},v):v}const Pt=e=>{const t=e.colors.secondary.main,n=e.colors.emphasize(t,.05),r=e.colors.background.canvas,a=e.colors.border.weak,s=e.shape.radius.default,o=`max(calc(${s} - 1px), 1px)`;return{wrapper:$t({label:"assistant-split-button-wrapper",position:"relative",isolation:"isolate",display:"inline-block","&::before":{content:'""',position:"absolute",inset:0,borderRadius:s,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:o,cornerShape:"squircle",background:`linear-gradient(${t}, ${t}), ${r}`,zIndex:-1,pointerEvents:"none"}}),buttonGroup:$t({label:"assistant-split-button-group",gap:0,position:"relative",zIndex:1,borderRadius:o,overflow:"hidden","& button":{border:"none",boxShadow:"none",background:"transparent !important"}}),segmentButton:$t({label:"assistant-split-button-segment",position:"relative","&:hover":{background:`${n} !important`},"&:focus-visible":{background:`${n} !important`},'&[aria-expanded="true"]':{background:`${n} !important`}}),mainButtonSolo:$t({label:"assistant-split-button-main-solo",borderRadius:o}),mainButtonSplit:$t({label:"assistant-split-button-main-split",borderTopLeftRadius:o,borderBottomLeftRadius:o,borderTopRightRadius:0,borderBottomRightRadius:0}),dropdownButton:$t({label:"assistant-split-button-dropdown",display:"inline-flex",alignItems:"center",justifyContent:"center",gap:0,borderTopLeftRadius:0,borderBottomLeftRadius:0,borderTopRightRadius:o,borderBottomRightRadius:o,padding:"0 !important",boxShadow:`inset 1px 0 0 ${a}`,"& svg":{margin:0}})}},Rt=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]]},Dt=(e,t,n,r)=>{const a=Array.from({length:101},(e,t)=>t),s={},[o,i]=Rt(e),c=null!=n?n:o,l=null!=r?r:i;return a.forEach(e=>{s[`${e}%`]={backgroundImage:`\n linear-gradient(${t}, ${t}),\n conic-gradient(from ${3.6*e}deg, transparent 60%, ${c} 80%, ${l} 100%, transparent 15%)\n `}}),s},Ut="__grafanaAssistantInlineFactory__",qt="__grafanaAssistantInlineInitializer__",Bt="__grafanaAssistantInlineInitPromise__";function Ot(e){const t=window[Ut];t&&t!==e?console.warn("InlineAssistant factory already set; ignoring subsequent setInlineAssistantFactory call"):t||(window[Ut]=e)}function Mt(e){const t=window[qt];t&&t!==e?console.warn("InlineAssistant initializer already set; ignoring subsequent setInlineAssistantInitializer call"):t||(window[qt]=e)}async function Gt(){if(window[Ut])return;const e=window[qt];if(!e)throw new Error("InlineAssistant not initialized. Make sure the Grafana Assistant plugin is loaded and initialized.");const t=window[Bt];if(t)return t;const n=(async()=>{try{await e()}catch(e){throw window[Bt]=null,e}})();return window[Bt]=n,n}function Ft(){const e=window[Ut];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,o.useState)(!1),[n,r]=(0,o.useState)(""),[a,s]=(0,o.useState)(null),i=(0,o.useRef)(null),c=(0,o.useCallback)(()=>{s(null),r("")},[]),l=(0,o.useCallback)(()=>{i.current&&i.current.cancel(),t(!1)},[]),u=(0,o.useCallback)(async e=>{var n;s(null),r(""),t(!0);try{await Gt();const n=Ft();i.current||(i.current=await n(e.origin)),await i.current.sendPrompt({prompt:e.prompt,agentName:e.agentName,agentId:e.agentId,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;s(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));s(a),t(!1),null===(n=e.onError)||void 0===n||n.call(e,a)}},[]);return(0,o.useEffect)(()=>()=>{i.current&&(i.current.cancel(),i.current.dispose(),i.current=null)},[]),{generate:u,isGenerating:e,content:n,error:a,cancel:l,reset:c}}function jt({value:e,onChange:t,origin:n,systemPrompt:r,onComplete:a,onError:s,onDelta:i,disabled:c=!1,autoGenerate:l=!1,streaming:u=!1,getUserPrompt:d}){const{generate:p,isGenerating:m,content:f,error:h,reset:g}=zt(),b=(0,o.useRef)(!1),v=(0,o.useRef)(e),y=m?u?f:"":e,w=d?d(e.trim()):e.trim(),x=!w||c||m,k=(0,o.useCallback)(o=>{v.current=e,t(""),g(),p({prompt:o,origin:n,systemPrompt:r,onDelta:i,onComplete:e=>{t(e),null==a||a(e)},onError:e=>{t(v.current),null==s||s(e)}})},[e,t,n,r,i,a,s,p,g]);(0,o.useEffect)(()=>{!l||!r||e||b.current||c||(b.current=!0,k(r))},[]);const E=(0,o.useCallback)(()=>{x||k(w)},[x,k,w]);return{displayValue:y,isSendDisabled:x,handleGenerate:E,isGenerating:m,error:h}}const Wt=["Generating...","Brewing...","Cooking...","Crunching...","Phrasing...","Wording...","Crafting...","Composing...","Drafting...","Shaping...","Forming...","Molding...","Sketching...","Whipping up...","Conjuring...","Stirring..."];function Vt(e,t){const[n,r]=(0,o.useState)(""),a=(0,o.useRef)(!1);if(e&&!a.current){const e=Wt[Math.floor(Math.random()*Wt.length)];return r(e),a.current=!0,e}return e||(a.current=!1),e?n:t}function Qt({value:e,onChange:t,placeholder:n,origin:r,systemPrompt:a,onComplete:s,onError:o,onDelta:c,disabled:l=!1,autoGenerate:u=!1,streaming:d=!1,getUserPrompt:p,className:m,"data-testid":f}){const{displayValue:h,isSendDisabled:g,handleGenerate:b,isGenerating:v,error:y}=jt({value:e,onChange:t,origin:r,systemPrompt:a,onComplete:s,onError:o,onDelta:c,disabled:l,autoGenerate:u,streaming:d,getUserPrompt:p}),w=(0,oe.useStyles2)(Kt),x=Vt(v,null!=n?n:"Ask AI to generate..."),k=i().createElement(oe.IconButton,{name:"ai-sparkle",onClick:b,disabled:g,tooltip:g?"Enter text to generate":"Generate with AI","data-testid":f?`${f}-send`:void 0});return i().createElement("div",{className:At(w.wrapper,{[w.animatedWrapper]:v},m),"data-testid":f},i().createElement(oe.Input,{value:h,onKeyDown:e=>{"Enter"===e.key&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),b())},onChange:e=>t(e.currentTarget.value),placeholder:x,disabled:l||v,suffix:k,invalid:!!y,"data-testid":f?`${f}-input`:void 0}))}const Kt=e=>{const t=e.colors.background.primary,n=St({label:"ai-input-border-animation",...Dt(e,t)}),[r,a]=Rt(e);return{wrapper:$t({label:"ai-text-input-wrapper",position:"relative",border:"1px solid transparent",borderRadius:e.shape.radius.default,cornerShape:"squircle"}),animatedWrapper:$t({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 Ht({value:e,onChange:t,placeholder:n,origin:r,systemPrompt:a,onComplete:s,onError:o,onDelta:c,disabled:l=!1,autoGenerate:u=!1,streaming:d=!1,getUserPrompt:p,rows:m=4,className:f,"data-testid":h}){const{displayValue:g,isSendDisabled:b,handleGenerate:v,isGenerating:y,error:w}=jt({value:e,onChange:t,origin:r,systemPrompt:a,onComplete:s,onError:o,onDelta:c,disabled:l,autoGenerate:u,streaming:d,getUserPrompt:p}),x=(0,oe.useStyles2)(Jt),k=Vt(y,null!=n?n:"Ask AI to generate... (Cmd/Ctrl+Enter to send)"),E=Math.max(m,2);return i().createElement("div",{className:At(x.textareaWrapper,{[x.animatedWrapper]:y},f),"data-testid":h},i().createElement(oe.TextArea,{value:g,onKeyDown:e=>{"Enter"===e.key&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),v())},onChange:e=>t(e.currentTarget.value),placeholder:k,disabled:l||y,rows:E,className:x.textarea,invalid:!!w,"data-testid":h?`${h}-textarea`:void 0}),i().createElement(oe.IconButton,{name:"ai-sparkle",onClick:v,disabled:b,className:x.sendButton,"aria-label":"Generate with AI",tooltip:b?"Enter text to generate":"Generate with AI (Cmd/Ctrl+Enter)","data-testid":h?`${h}-send`:void 0}))}const Jt=e=>{const t=e.colors.background.primary,n=St({label:"ai-textarea-border-animation",...Dt(e,t)}),[r,a]=Rt(e);return{textareaWrapper:$t({label:"ai-textarea-wrapper",position:"relative",border:"1px solid transparent",borderRadius:e.shape.radius.default,cornerShape:"squircle"}),animatedWrapper:$t({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:$t({label:"ai-textarea",paddingRight:e.spacing(4),minHeight:e.spacing(6),"& textarea":{minHeight:e.spacing(6)},scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}}),sendButton:$t({label:"ai-textarea-send",position:"absolute",right:e.spacing(1),top:e.spacing(1)})}};function Xt(e){const t=["refId","hide","key","queryType","datasource"];for(const n in e)if("label"!==n&&!t.includes(n))return!1;return!0}function Zt({size:e,currentQuery:t,queries:n,dataSourceInstanceSettings:r,app:a,datasourceApi:s,title:o="Query with Assistant"}){var c;const{isAvailable:l,openAssistant:u}=se();if(!l||!u)return null;const d=`grafana/query-editor/${r.type}/${null!==(c=null!=a?a:O.CoreApp.Unknown)&&void 0!==c?c:"unknown"}`,p=!Xt(t),m=n.filter(e=>e.refId!==t.refId&&!Xt(e)),f=[P("datasource",{datasourceUid:r.uid})];p&&f.push(P("structured",{title:"Current query",data:t})),m.length>0&&f.push(P("structured",{title:"Other queries",data:{queries:m}}));const h=p&&(null==s?void 0:s.getQueryDisplayText)?s.getQueryDisplayText(t):null,g=!!h,b=g?"Help me update the current query to answer my questions and provide the insights I need.":"Help me create a new query to answer my questions and provide the insights I need.",v=[];h&&v.push(`Current query: ${h}`),v.push(`Selected data source: ${r.name}`);const y=g?"Please describe what you want to change or improve in this query.":"Please describe what you want to query and what insights you're looking for.",w=[b,"```",...v,"```",y].join("\n");return i().createElement(It,{prompt:w,origin:d,context:f,autoSend:!1,title:o,size:e,openAssistant:u})}const Yt=["What does this panel show?","Explain the trend in this data","Why is there a spike?","Add a threshold at 80%","Change the legend to table mode"];function en(e){const{isAvailable:t,openAssistant:n}=se();return t&&n?i().createElement(tn,{...e,openAssistant:n}):null}function tn({origin:e,context:t,mode:n,placeholder:r,examplePrompts:a,animated:c=!0,onClose:l,onSubmit:u,onClick:d,className:p,openAssistant:m}){const[f,h]=(0,o.useState)(""),g=(0,o.useRef)(null),b=(0,oe.useStyles2)(rn),v=null!=r?r:"Ask Assistant...",y=function(e,t,n){const[r,a]=(0,o.useState)(""),s=(0,o.useRef)(0),i=(0,o.useRef)(0),c=(0,o.useRef)("typing");return(0,o.useEffect)(()=>{if(s.current=0,i.current=0,c.current="typing",a(""),n||0===t.length)return;let e;const r=()=>{e=setTimeout(()=>{(()=>{const e=t[s.current];"typing"===c.current?(i.current++,a(e.slice(0,i.current)),i.current>=e.length&&(c.current="pause")):"pause"===c.current?c.current="erasing":"erasing"===c.current&&(i.current--,a(e.slice(0,i.current)),i.current<=0&&(c.current="typing",s.current=(s.current+1)%t.length))})(),r()},"pause"===c.current?800:"erasing"===c.current?15:30+20*Math.random())};return r(),()=>clearTimeout(e)},[n,t]),n||0===t.length?e:r}(v,null!=a?a:void 0!==r?[]:Yt,f.length>0);(0,o.useEffect)(()=>{(0,s.reportInteraction)("grafana_assistant_app_prompt_card_displayed",{from:e})},[e]),(0,o.useEffect)(()=>{const e=requestAnimationFrame(()=>{var e;return null===(e=g.current)||void 0===e?void 0:e.focus()});return()=>cancelAnimationFrame(e)},[t]);const w=(0,o.useCallback)(r=>{const a=r.trim();a&&(m({prompt:a,context:t,autoSend:!0,origin:e,mode:n}),null==u||u(a),h(""))},[m,t,e,n,u]);return i().createElement("div",{className:At(c?b.card:b.cardStatic,p),onClick:d,role:"search","aria-label":v,"data-testid":"assistant-prompt-card"},i().createElement("div",{className:b.inputRow},i().createElement(oe.Input,{ref:g,value:f,onChange:e=>h(e.currentTarget.value),onKeyDown:e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),w(f)),"Escape"===e.key&&(e.preventDefault(),null==l||l())},placeholder:y,suffix:i().createElement(oe.IconButton,{name:"ai-sparkle",onClick:()=>w(f),disabled:!f.trim(),tooltip:"Send to assistant","aria-label":"Send to assistant","data-testid":"assistant-prompt-card-send"}),"data-testid":"assistant-prompt-card-input"})))}function nn(e){return["rgba(168, 85, 247, 0.25) 3px -1px 20px","rgba(249, 115, 22, 0.18) -5px 3px 40px","rgba(168, 85, 247, 0.12) 7px 4px 60px",(e.isDark?"rgb(17 18 23)":"rgb(245 245 245)")+" 0 6px 30px"].join(", ")}const rn=e=>{const t=e.colors.background.primary,[n,r]=Rt(e),a=St({label:"prompt-card-border",...Dt(e,t)}),s={label:"assistant-prompt-card",position:"relative",display:"flex",flexDirection:"column",gap:e.spacing(1),padding:e.spacing(1),borderRadius:e.shape.radius.lg,boxShadow:nn(e)};return{card:$t({...s,cornerShape:"squircle",background:t,border:"1px solid transparent",backgroundImage:`\n linear-gradient(${t}, ${t}),\n conic-gradient(from 0deg, transparent 60%, ${n} 80%, ${r} 100%, transparent 15%)\n `,backgroundOrigin:"border-box",backgroundClip:"padding-box, border-box",[e.transitions.handleMotion("no-preference")]:{animation:`${a} 2s linear infinite`}}),cardStatic:$t({...s,label:"assistant-prompt-card-static",background:e.colors.background.elevated,border:`1px solid ${e.colors.border.weak}`}),inputRow:$t({label:"prompt-card-input-row",display:"flex",alignItems:"center",gap:e.spacing(.5),"& input":{border:"none !important"}})}};function an(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 sn="grafana-assistant-terms-and-conditions-refresh";async function on(){var e,t;const n=(0,s.getBackendSrv)(),r=`${null!==(e=null===s.config||void 0===s.config?void 0:s.config.appSubUrl)&&void 0!==e?e:""}/api/plugins/${Q}/resources/api/v1/settings/terms`,a=(await(0,V.lastValueFrom)(n.fetch({url:r,method:"GET",showErrorAlert:!1}))).data.data,o=null!==(t=a.acceptedTermsAndConditions)&&void 0!==t&&t,i=a.acceptedVersion,c=a.version,l=a.termsType;if("msa"===l)return{accepted:o,termsType:l};if(!o||!i||!c)return{accepted:!1,termsType:l};const u=1===function(e,t){const n=an(e),r=an(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:o&&!u,termsType:l}}async function cn(){try{return(await on()).accepted}catch(e){throw new Error(`Failed to check terms requirements: ${e instanceof Error?e.message:String(e)}`)}}function ln(){const[e,t]=(0,o.useState)(!1),[n,r]=(0,o.useState)(null),[a,s]=(0,o.useState)(!0),[i,c]=(0,o.useState)(null);return(0,o.useEffect)(()=>{async function e(){try{s(!0),c(null);const e=await on();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{s(!1)}}e();const n=()=>{e()};return document.addEventListener(sn,n),()=>{document.removeEventListener(sn,n)}},[]),{accepted:e,termsType:n,loading:a,error:i}}function un(e,t){var n;const{explainer:r,...a}=null!==(n=t.metadata)&&void 0!==n?n:{},s={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 s=t.validate(n),o=[e(s,r)];return r.signal&&o.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&&o.push(new Promise((e,n)=>{setTimeout(()=>{n(new Error(`Tool ${t.name} execution timed out after ${r.timeout}ms`))},r.timeout)})),Promise.race(o)}catch(e){throw t.verboseParsingErrors&&console.error(`Error invoking tool ${t.name}:`,e,n),e}}};return s}const dn="grafana-assistant-limits-updated";async function pn(){var e,t,n,r;const a=(0,s.getBackendSrv)(),o=`${null!==(e=null===s.config||void 0===s.config?void 0:s.config.appSubUrl)&&void 0!==e?e:""}/api/plugins/${Q}/resources/api/v1/usage/limits/prompt`,i=(await(0,V.lastValueFrom)(a.fetch({url:o,method:"GET",showErrorAlert:!1}))).data.data,c=null!==(t=i.total)&&void 0!==t?t:0,l=null!==(n=i.limit)&&void 0!==n?n:0;return{count:c,limit:l,month:null!==(r=i.month)&&void 0!==r?r:"",isLimitReached:l>0&&c>=l}}async function mn(){try{return await pn()}catch(e){throw new Error(`Failed to check limits: ${e instanceof Error?e.message:String(e)}`)}}function fn(){const[e,t]=(0,o.useState)(0),[n,r]=(0,o.useState)(0),[a,s]=(0,o.useState)(""),[i,c]=(0,o.useState)(!0),[l,u]=(0,o.useState)(null),d=(0,o.useCallback)(async()=>{try{c(!0),u(null);const e=await pn();t(e.count),r(e.limit),s(e.month)}catch(e){const n=e instanceof Error?e.message:"Failed to fetch limits";u(n),t(0),r(0),s("")}finally{c(!1)}},[]);return(0,o.useEffect)(()=>{d()},[d]),(0,o.useEffect)(()=>{const e=e=>{const n=e;n.detail&&(t(n.detail.count),r(n.detail.limit),u(null))};return window.addEventListener(dn,e),()=>{window.removeEventListener(dn,e)}},[]),{count:e,limit:n,month:a,isLimitReached:n>0&&e>=n,loading:i,error:l,refetch:d}}module.exports=t})();
2
2
  //# sourceMappingURL=index.js.map