@perses-dev/timeseries-table-plugin 0.7.0 → 0.7.1

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.
Files changed (40) hide show
  1. package/__mf/js/{2795.da99f4e6.js → 2795.a440ef38.js} +1 -1
  2. package/__mf/js/{TimeSeriesTable.4632354a.js → TimeSeriesTable.2da81b85.js} +3 -3
  3. package/__mf/js/async/1143.485578ee.js +37 -0
  4. package/__mf/js/async/1146.07aa30ae.js +1 -0
  5. package/__mf/js/async/1495.b3e3893c.js +29 -0
  6. package/__mf/js/async/2292.fc810bed.js +2 -0
  7. package/__mf/js/async/2980.18947ff5.js +1 -0
  8. package/__mf/js/async/{5409.6e494cf6.js → 5409.a87deb49.js} +1 -1
  9. package/__mf/js/async/5901.13294148.js +2 -0
  10. package/__mf/js/async/7179.07f82b2f.js +73 -0
  11. package/__mf/js/async/{__federation_expose_TimeSeriesTable.1b608971.js → __federation_expose_TimeSeriesTable.6b53cd91.js} +1 -1
  12. package/__mf/js/main.631883b2.js +1 -0
  13. package/mf-manifest.json +48 -86
  14. package/mf-stats.json +49 -87
  15. package/package.json +5 -11
  16. package/__mf/css/async/8433.53436797.css +0 -1
  17. package/__mf/js/async/1996.eb63b85f.js +0 -2
  18. package/__mf/js/async/2358.d5e2a579.js +0 -7
  19. package/__mf/js/async/2399.c004c2a0.js +0 -23
  20. package/__mf/js/async/2641.01bd627c.js +0 -1
  21. package/__mf/js/async/3001.f5a37a5a.js +0 -1
  22. package/__mf/js/async/3111.078f056e.js +0 -37
  23. package/__mf/js/async/3598.da131c3c.js +0 -1
  24. package/__mf/js/async/3660.8a07b6df.js +0 -23
  25. package/__mf/js/async/4446.de8c4376.js +0 -1
  26. package/__mf/js/async/52.66016701.js +0 -2
  27. package/__mf/js/async/5662.5aa06a68.js +0 -1
  28. package/__mf/js/async/5767.9f409196.js +0 -1
  29. package/__mf/js/async/5998.273ad1d8.js +0 -73
  30. package/__mf/js/async/654.0d83c19c.js +0 -1
  31. package/__mf/js/async/6884.bc471e42.js +0 -1
  32. package/__mf/js/async/7606.1f156522.js +0 -1
  33. package/__mf/js/async/894.670bb5d0.js +0 -1
  34. package/__mf/js/async/9560.b16c7025.js +0 -1
  35. package/__mf/js/async/9954.d0a3f126.js +0 -1
  36. package/__mf/js/main.f66bbd09.js +0 -1
  37. /package/__mf/js/async/{2358.d5e2a579.js.LICENSE.txt → 1495.b3e3893c.js.LICENSE.txt} +0 -0
  38. /package/__mf/js/async/{1996.eb63b85f.js.LICENSE.txt → 2292.fc810bed.js.LICENSE.txt} +0 -0
  39. /package/__mf/js/async/{52.66016701.js.LICENSE.txt → 5901.13294148.js.LICENSE.txt} +0 -0
  40. /package/__mf/js/async/{5998.273ad1d8.js.LICENSE.txt → 7179.07f82b2f.js.LICENSE.txt} +0 -0
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkTimeSeriesTable=self.webpackChunkTimeSeriesTable||[]).push([["6884"],{80912:function(e,t,a){a.r(t),a.d(t,{applyMergeSeriesTransform:()=>tL,SpanStatusError:()=>Z,variableTextSchema:()=>ts,globalRoleBindingSchema:()=>eQ,msToPrometheusDuration:()=>C,getMetadataProject:()=>j,useTransformData:()=>tN,rolesEditorSchema:()=>eW,secretSchema:()=>e1,getSuggestedStepMs:()=>N,getCalculation:()=>c,CALCULATIONS_CONFIG:()=>l,isValidLegendPosition:()=>g,isValidLegendSize:()=>h,querySpecSchema:()=>eU,buildVariableSpecSchema:()=>tr,buildDatasourceSpecSchema:()=>eT,transformData:()=>tG,useMemoized:()=>tM,secretsEditorSchema:()=>e3,secretSpecSchema:()=>e0,DEFAULT_REFRESH_INTERVAL:()=>s,roleBindingSpecSchema:()=>eH,intervalToPrometheusDuration:()=>U,pluginSchema:()=>ek,displaySchema:()=>ex,getLegendMode:()=>y,isThroughputUnit:()=>eS,projectMetadataSchema:()=>ej,variableListSchema:()=>tt,buildDatasourceDefinitionSchema:()=>eO,isValidTraceId:()=>q,panelSpecSchema:()=>eA,getLegendSize:()=>M,buildPanelDefinitionSchema:()=>eN,useEvent:()=>tp,isTimeUnit:()=>em,parseDurationString:()=>V,applyMergeColumnsTransform:()=>tC,FetchError:()=>tb,SpanStatusOk:()=>B,buildVariableListSpecSchema:()=>te,datasourceSpecSchema:()=>eR,formatDuration:()=>A,globalVariableSchema:()=>tl,isPercentUnit:()=>ep,isRelativeTimeRange:()=>w,GLOBAL_SCOPES:()=>R,getVariableProject:()=>ez,isEmptyObject:()=>tS,buildVariableListSchema:()=>ta,isValidQueryPluginType:()=>v,TRANSFORM_TEXT:()=>J,UNIT_GROUP_CONFIG:()=>er,roleSchema:()=>eq,resolvePanelRef:()=>tD,variableTextSpecSchema:()=>tn,KINDS:()=>d,applyMergeIndexedColumnsTransform:()=>tA,CalculationsMap:()=>o,getTimeSeriesValues:()=>tO,UNIT_CONFIG:()=>eo,createRegexFromString:()=>t$,buildPanelEditorSchema:()=>e$,isDecimalUnit:()=>ef,isUnitWithShortValues:()=>eh,userSchema:()=>e8,variableSpecSchema:()=>ti,userSpecSchema:()=>e4,PROJECT_SCOPES:()=>x,getCommonTimeScale:()=>tP,variableDisplaySchema:()=>e7,formatValue:()=>el,variablesSchema:()=>tu,DEFAULT_DASHBOARD_DURATION:()=>n,legendSizes:()=>f,getYValues:()=>tV,datasourceSchema:()=>eI,isBytesUnit:()=>eg,durationValidationSchema:()=>eV,getCalculations:()=>u,toAbsoluteTimeRange:()=>E,getLegendPosition:()=>z,roleSpecSchema:()=>eZ,nameSchema:()=>ev,SAVE_DEFAULTS_DIALOG_TEXT:()=>i,isRegexPattern:()=>t_,buildPanelSpecSchema:()=>eL,isUnitWithDecimalPlaces:()=>eb,isProjectMetadata:()=>D,shouldShortenValues:()=>W,getResourceExtendedDisplayName:()=>tR,oauthProvidersSchema:()=>e2,permissionSchema:()=>eB,variableListSpecSchema:()=>e9,getPanelKeyFromRef:()=>tj,globalRoleSchema:()=>eJ,variableDefinitionSchema:()=>tc,DEFAULT_LEGEND:()=>S,globalDatasourceSchema:()=>ew,isDurationString:()=>P,fetchJson:()=>tg,legendModes:()=>p,roleBindingsEditorSchema:()=>eY,panelDisplaySpec:()=>eP,roundStepInterval:()=>G,DURATION_REGEX:()=>O,buildVariableDefinitionSchema:()=>td,MAX_SIGNIFICANT_DIGITS:()=>Q,getUnitGroupConfig:()=>ed,legendPositions:()=>m,limitDecimalPlaces:()=>H,hasDecimalPlaces:()=>X,UserFriendlyError:()=>th,panelEditorSchema:()=>e_,DEFAULT_ALL_VALUE:()=>ey,getXValues:()=>tE,fetch:()=>tf,globalSecretSchema:()=>e5,isAbsoluteTimeRange:()=>F,roleBindingSchema:()=>eK,useDeepMemo:()=>tv,MIN_STEP_INTERVAL_MS:()=>tF,SpanStatusUnset:()=>$,metadataSchema:()=>eD,isTimeSeriesValueTuple:()=>_,datasourcesSchema:()=>eF,createPanelRef:()=>tk,applyValueMapping:()=>tB,getResourceDisplayName:()=>tx,nativeProviderSchema:()=>e6,applyJoinTransform:()=>tU,DEFAULT_CALCULATION:()=>r,isValidLegendMode:()=>b,ACTIONS:()=>k,datasourceDefinitionSchema:()=>eE,subjectSchema:()=>eX,getUnitConfig:()=>eu,linkSchema:()=>eC,variableSchema:()=>to,getUnitGroup:()=>ec,panelDefinitionSchema:()=>eG});let n="1h",s="0s",i="You have made changes to the time range or the variables values. Would you like to save these as defaults?",r="last",o={first:function(e){return c(e,"first")},last:function(e){return c(e,"last")},"first-number":function(e){return c(e,"first-number")},"last-number":function(e){return c(e,"last-number")},mean:function(e){return c(e,"mean")},sum:function(e){return c(e,"sum")},min:function(e){return c(e,"min")},max:function(e){return c(e,"max")}},l={first:{label:"First",description:"First value"},last:{label:"Last",description:"Last value"},"first-number":{label:"First *",description:"First numeric value"},"last-number":{label:"Last *",description:"Last numeric value"},mean:{label:"Avg",description:"Average value excluding nulls"},sum:{label:"Sum",description:"The sum of all values"},min:{label:"Min",description:"Minimum value"},max:{label:"Max",description:"Maximum value"}};function u(e,t){let a=t.reduce((e,t)=>(e[t]=void 0,e),{}),n=0,s=0;return e.forEach((t,i)=>{let r=t[1];0===i&&"first"in a&&(a.first=r),i===e.length-1&&"last"in a&&(a.last=r),"number"==typeof r&&(n+=1,s+=r,"first-number"in a&&void 0===a["first-number"]&&(a["first-number"]=r),"last-number"in a&&(a["last-number"]=r),"min"in a&&("number"!=typeof a.min?a.min=r:a.min=Math.min(a.min,r)),"max"in a&&("number"!=typeof a.max?a.max=r:a.max=Math.max(a.max,r)))}),n>0&&"sum"in a&&(a.sum=s),n>0&&"mean"in a&&(a.mean=s/n),a}function c(e,t){return u(e,[t])[t]}let d=["Dashboard","Datasource","EphemeralDashboard","Folder","GlobalDatasource","GlobalRole","GlobalRoleBinding","GlobalSecret","GlobalVariable","Project","Role","RoleBinding","Secret","User","Variable"],m=["bottom","right"],p=["list","table"],f=["small","medium"];function g(e){return m.includes(e)}function b(e){return p.includes(e)}function h(e){return f.includes(e)}let S={position:"bottom",mode:"list",size:"medium"};function z(e){return void 0===e?S.position:g(e)?e:S.position}function y(e){return e&&b(e)?e:S.mode}function M(e){return e&&h(e)?e:S.size}function v(e){return["TimeSeriesQuery","TraceQuery"].includes(e)}function D(e){return"project"in e}function j(e){return"project"in e?e.project:void 0}let k=["*","create","read","update","delete"],x=["*","Dashboard","Datasource","EphemeralDashboard","Folder","Project","Role","RoleBinding","Secret","Variable"],R=["GlobalDatasource","GlobalRole","GlobalRoleBinding","GlobalSecret","GlobalVariable","User"];var T,I=a(20461);function w(e){return void 0!==e.pastDuration}function F(e){return void 0!==e.start&&void 0!==e.end}function E(e){let t=e.end??new Date;return{start:(0,I.sub)(t,V(e.pastDuration)),end:t}}let O=/^(?:(\d+)y)?(?:(\d+)w)?(?:(\d+)d)?(?:(\d+)h)?(?:(\d+)m)?(?:(\d+)s)?(?:(\d+)ms)?$/;function V(e){let t=O.exec(e);if(null===t)throw Error(`Invalid duration string '${e}'`);return{years:parseInt(t[1]??"0"),months:0,weeks:parseInt(t[2]??"0"),days:parseInt(t[3]??"0"),hours:parseInt(t[4]??"0"),minutes:parseInt(t[5]??"0"),seconds:parseInt(t[6]??"0")+parseInt(t[7]??"0")/1e3}}function P(e){return""!==e&&O.test(e)}function U(e){return C(e.end.valueOf()-e.start.valueOf())}function C(e){let t=Math.trunc(e/31536e6);t>0&&(e-=31536e6*t);let a=Math.trunc(e/6048e5);a>0&&(e-=6048e5*a);let n=Math.trunc(e/864e5);n>0&&(e-=864e5*n);let s=Math.trunc(e/36e5);s>0&&(e-=36e5*s);let i=Math.trunc(e/6e4);return i>0&&(e-=6e4*i),{years:t,months:0,weeks:a,days:n,hours:s,minutes:i,seconds:e/1e3}}function A(e){let t=[];if(e.years&&t.push(`${e.years}y`),e.weeks&&t.push(`${e.weeks}w`),e.days&&t.push(`${e.days}d`),e.hours&&t.push(`${e.hours}h`),e.minutes&&t.push(`${e.minutes}m`),e.seconds){let a=Math.trunc(e.seconds);a&&t.push(`${a}s`);let n=Math.round((e.seconds-a)*1e3);n&&t.push(`${n}ms`)}return t.join("")}let L=[{maxMs:15,roundedStepMs:10,display:"0.01s"},{maxMs:35,roundedStepMs:20,display:"0.02s"},{maxMs:75,roundedStepMs:50,display:"0.05s"},{maxMs:150,roundedStepMs:100,display:"0.1s"},{maxMs:350,roundedStepMs:200,display:"0.2s"},{maxMs:750,roundedStepMs:500,display:"0.5s"},{maxMs:1500,roundedStepMs:1e3,display:"1s"},{maxMs:3500,roundedStepMs:2e3,display:"2s"},{maxMs:7500,roundedStepMs:5e3,display:"5s"},{maxMs:12500,roundedStepMs:1e4,display:"10s"},{maxMs:17500,roundedStepMs:15e3,display:"15s"},{maxMs:25e3,roundedStepMs:2e4,display:"20s"},{maxMs:45e3,roundedStepMs:3e4,display:"30s"},{maxMs:9e4,roundedStepMs:6e4,display:"1m"},{maxMs:21e4,roundedStepMs:12e4,display:"2m"},{maxMs:45e4,roundedStepMs:3e5,display:"5m"},{maxMs:75e4,roundedStepMs:6e5,display:"10m"},{maxMs:75e4,roundedStepMs:9e5,display:"15m"},{maxMs:15e5,roundedStepMs:12e5,display:"20m"},{maxMs:27e5,roundedStepMs:18e5,display:"30m"},{maxMs:54e5,roundedStepMs:36e5,display:"1h"},{maxMs:9e6,roundedStepMs:72e5,display:"2h"},{maxMs:162e5,roundedStepMs:108e5,display:"3h"},{maxMs:324e5,roundedStepMs:216e5,display:"6h"},{maxMs:864e5,roundedStepMs:432e5,display:"12h"},{maxMs:6048e5,roundedStepMs:864e5,display:"1d"},{maxMs:18144e5,roundedStepMs:6048e5,display:"1w"},{maxMs:36288e5,roundedStepMs:2592e6,display:"30d"},{maxMs:63072e6,roundedStepMs:31536e6,display:"1y"}];function G(e){for(let{maxMs:t,roundedStepMs:a}of L)if(e<t)return a;return 15e3}function N(e,t){return G(Math.floor((e.end.valueOf()-e.start.valueOf())/t))}function _(e){return 2===e.length}let $="STATUS_CODE_UNSET",B="STATUS_CODE_OK",Z="STATUS_CODE_ERROR";function q(e){return/^[0-9a-fA-F]+$/.test(e)}let J={JoinByColumnValue:"Join by column value",MergeColumns:"Merge columns",MergeIndexedColumns:"Merge indexed columns",MergeSeries:"Merge series"};function W(e){return!1!==e}function X(e){return"number"==typeof e}function H(e){return e&&(e<0?e=0:e>20&&(e=20)),e}var K=a(74638);let Q=3;function Y(e,{shortValues:t,decimalPlaces:a}){if(!W(t)||1e3>Math.abs(e)){let n={style:"unit",unit:"byte",unitDisplay:"long",useGrouping:!0};return X(a)?(n.minimumFractionDigits=H(a),n.maximumFractionDigits=H(a)):W(t)&&(n.maximumSignificantDigits=Q),Intl.NumberFormat("en-US",n).format(e)}return(0,K.Z)(e).format({output:"byte",base:"decimal",spaceSeparated:!0,mantissa:X(a)?a:2,trimMantissa:!X(a),optionalMantissa:!X(a)})}let ee="Percent",et="Time";var ea=((T={}).milliseconds="millisecond",T.seconds="second",T.minutes="minute",T.hours="hour",T.days="day",T.weeks="week",T.months="month",T.years="year",T);let en={years:31536e3,months:2592e3,weeks:604800,days:86400,hours:3600,minutes:60,seconds:1,milliseconds:.001},es=["years","months","weeks","days","hours","minutes","seconds","milliseconds"],ei="Throughput",er={Time:{label:"Time",decimalPlaces:!0},Percent:{label:"percent",decimalPlaces:!0},Decimal:{label:"Decimal",decimalPlaces:!0,shortValues:!0},Bytes:{label:"Bytes",decimalPlaces:!0,shortValues:!0},Throughput:{label:"Throughput",decimalPlaces:!0}},eo={milliseconds:{group:et,label:"Milliseconds"},seconds:{group:et,label:"Seconds"},minutes:{group:et,label:"Minutes"},hours:{group:et,label:"Hours"},days:{group:et,label:"Days"},weeks:{group:et,label:"Weeks"},months:{group:et,label:"Months"},years:{group:et,label:"Years"},percent:{group:ee,label:"Percent (0-100)"},"percent-decimal":{group:ee,label:"Percent (0.0-1.0)"},"%":{disableSelectorOption:!0,group:ee,label:"%"},decimal:{group:"Decimal",label:"Decimal"},bytes:{group:"Bytes",label:"Bytes"},"bits/sec":{group:ei,label:"Bits/sec"},"bytes/sec":{group:ei,label:"Bytes/sec"},"counts/sec":{group:ei,label:"Counts/sec"},"events/sec":{group:ei,label:"Events/sec"},"messages/sec":{group:ei,label:"Messages/sec"},"ops/sec":{group:ei,label:"Ops/sec"},"packets/sec":{group:ei,label:"Packets/sec"},"reads/sec":{group:ei,label:"Reads/sec"},"requests/sec":{group:ei,label:"Requests/sec"},"records/sec":{group:ei,label:"Records/sec"},"rows/sec":{group:ei,label:"Rows/sec"},"writes/sec":{group:ei,label:"Writes/sec"}};function el(e,t){if(void 0===t)return e.toString();if(eg(t))return Y(e,t);if(ef(t))return function(e,{shortValues:t,decimalPlaces:a}){let n={style:"decimal",useGrouping:!0};return W(t)&&(n.notation="compact"),X(a)?(n.minimumFractionDigits=H(a),n.maximumFractionDigits=H(a)):W(t)&&(n.maximumSignificantDigits=Q),Intl.NumberFormat("en-US",n).format(e)}(e,t);if(ep(t))return function(e,{unit:t,decimalPlaces:a}){let n={style:"percent",useGrouping:!0};return X(a)?(n.minimumFractionDigits=H(a),n.maximumFractionDigits=H(a)):n.maximumSignificantDigits=Q,"percent"===t&&(e/=100),Intl.NumberFormat("en-US",n).format(e)}(e,t);if(em(t))return function(e,{unit:t,decimalPlaces:a}){var n;if(0===e)return"0s";let s=function(e,t){let a=e*en[t],n=es[0]||"years",s=n,i=a/en[n];for(s of es)if((i=a/en[s])>=1)break;return{value:i,unit:s}}(e,t),i={style:"unit",unit:ea[s.unit],unitDisplay:"months"===(n=s.unit)||"years"===n?"long":"narrow"};return X(a)?(i.minimumFractionDigits=H(a),i.maximumFractionDigits=H(a)):i.maximumSignificantDigits=Q,Intl.NumberFormat("en-US",i).format(s.value)}(e,t);if(eS(t))return function(e,{unit:t,shortValues:a,decimalPlaces:n}){if("bytes/sec"===t){let t=1e3>Math.abs(e)?"sec":"s";return Y(e,{unit:"bytes",shortValues:a,decimalPlaces:n})+"/"+t}let s={style:"decimal",useGrouping:!0};return W(a)&&(s.notation="compact"),X(n)?(s.minimumFractionDigits=H(n),s.maximumFractionDigits=H(n)):W(a)&&(s.maximumSignificantDigits=Q),Intl.NumberFormat("en-US",s).format(e)+" "+t}(e,t);throw Error(`Unknown unit options ${t}`)}function eu(e){return eo[e.unit]}function ec(e){return eu(e).group}function ed(e){return er[eu(e).group]}function em(e){return"Time"===ec(e)}function ep(e){return"Percent"===ec(e)}function ef(e){return"Decimal"===ec(e)}function eg(e){return"Bytes"===ec(e)}function eb(e){return!!ed(e).decimalPlaces}function eh(e){return!!ed(e).shortValues}function eS(e){return"Throughput"===ec(e)}function ez(e){return"project"in e.metadata?e.metadata.project:void 0}let ey="$__all";var eM=a(77891);let ev=eM.z.string().min(1,"Required").max(75,"Must be 75 or fewer characters long").regex(/^[a-zA-Z0-9_.-]+$/,"Must only contains alphanumerical characters and special characters _ . -"),eD=eM.z.object({name:ev}),ej=eD.extend({project:ev}),ek=eM.z.object({kind:eM.z.string().min(1,"Required"),spec:eM.z.record(eM.z.string(),eM.z.any())}),ex=eM.z.object({name:eM.z.string().optional(),description:eM.z.string().optional()}),eR=eM.z.object({display:ex.optional(),default:eM.z.boolean(),plugin:ek});function eT(e){return eM.z.object({display:ex.optional(),default:eM.z.boolean(),plugin:e})}let eI=eM.z.object({kind:eM.z.literal("Datasource"),metadata:ej,spec:eR}),ew=eM.z.object({kind:eM.z.literal("GlobalDatasource"),metadata:eD,spec:eR}),eF=eM.z.discriminatedUnion("kind",[eI,ew]),eE=eM.z.object({name:eM.z.string().min(1),spec:eR});function eO(e){return eM.z.object({name:eM.z.string().min(1),spec:eT(e)})}let eV=eM.z.string().min(1,"Required").regex(O,"Must be a valid duration string"),eP=eM.z.object({name:eM.z.string().min(1,{message:"Required"}),description:eM.z.string().optional()}),eU=eM.z.object({kind:eM.z.string().min(1),spec:eM.z.object({plugin:ek})}),eC=eM.z.object({name:eM.z.string().optional(),url:eM.z.string().min(1),tooltip:eM.z.string().optional(),renderVariables:eM.z.boolean().optional(),targetBlank:eM.z.boolean().optional()}),eA=eM.z.object({display:eP,plugin:ek,queries:eM.z.array(eU).optional(),links:eM.z.array(eC).optional()});function eL(e){return eM.z.object({display:eP,plugin:e,queries:eM.z.array(eU).optional(),links:eM.z.array(eC).optional()})}let eG=eM.z.object({kind:eM.z.literal("Panel"),spec:eA});function eN(e){return eM.z.object({kind:eM.z.literal("Panel"),spec:eL(e)})}let e_=eM.z.object({groupId:eM.z.number(),panelDefinition:eG});function e$(e){return eM.z.object({groupId:eM.z.number(),panelDefinition:eN(e)})}let eB=eM.z.object({actions:eM.z.array(eM.z.enum(["*","create","read","update","delete"])).nonempty("Must contains at least 1 action"),scopes:eM.z.array(eM.z.enum(["*","Dashboard","Datasource","EphemeralDashboard","Folder","GlobalDatasource","GlobalRole","GlobalRoleBinding","GlobalSecret","GlobalVariable","Project","Role","RoleBinding","Secret","User","Variable"])).nonempty("Must contains at least 1 scope")}),eZ=eM.z.object({permissions:eM.z.array(eB)}),eq=eM.z.object({kind:eM.z.literal("Role"),metadata:ej,spec:eZ}),eJ=eM.z.object({kind:eM.z.literal("GlobalRole"),metadata:eD,spec:eZ}),eW=eM.z.discriminatedUnion("kind",[eq,eJ]),eX=eM.z.object({kind:eM.z.enum(["User"]),name:ev}),eH=eM.z.object({role:ev,subjects:eM.z.array(eX).nonempty()}),eK=eM.z.object({kind:eM.z.literal("RoleBinding"),metadata:ej,spec:eH}),eQ=eM.z.object({kind:eM.z.literal("GlobalRoleBinding"),metadata:eD,spec:eH}),eY=eM.z.discriminatedUnion("kind",[eK,eQ]),e0=eM.z.object({basicAuth:eM.z.object({username:eM.z.string().min(1),password:eM.z.string().optional(),passwordFile:eM.z.string().optional()}).superRefine((e,t)=>{e.password&&e.password.length>0&&e.passwordFile&&e.passwordFile.length>0&&(t.addIssue({code:eM.z.ZodIssueCode.custom,message:"Only one of the fields must be defined",path:["password"]}),t.addIssue({code:eM.z.ZodIssueCode.custom,message:"Only one of the fields must be defined",path:["passwordFile"]}))}).optional(),authorization:eM.z.object({type:eM.z.string().optional(),credentials:eM.z.string().optional(),credentialsFile:eM.z.string().optional()}).superRefine((e,t)=>{e.credentials&&e.credentials.length>0&&e.credentialsFile&&e.credentialsFile.length>0&&(t.addIssue({code:eM.z.ZodIssueCode.custom,message:"Only one of the fields must be defined",path:["credentials"]}),t.addIssue({code:eM.z.ZodIssueCode.custom,message:"Only one of the fields must be defined",path:["credentialsFile"]}))}).optional(),tlsConfig:eM.z.object({ca:eM.z.string().optional(),cert:eM.z.string().optional(),key:eM.z.string().optional(),caFile:eM.z.string().optional(),certFile:eM.z.string().optional(),keyFile:eM.z.string().optional(),serverName:eM.z.string().optional(),insecureSkipVerify:eM.z.boolean()}).superRefine((e,t)=>{e.ca&&e.ca.length>0&&e.caFile&&e.caFile.length>0&&(t.addIssue({code:eM.z.ZodIssueCode.custom,message:"Only one of the fields must be defined",path:["ca"]}),t.addIssue({code:eM.z.ZodIssueCode.custom,message:"Only one of the fields must be defined",path:["caFile"]})),e.cert&&e.cert.length>0&&e.certFile&&e.certFile.length>0&&(t.addIssue({code:eM.z.ZodIssueCode.custom,message:"Only one of the fields must be defined",path:["cert"]}),t.addIssue({code:eM.z.ZodIssueCode.custom,message:"Only one of the fields must be defined",path:["certFile"]})),e.key&&e.key.length>0&&e.keyFile&&e.keyFile.length>0&&(t.addIssue({code:eM.z.ZodIssueCode.custom,message:"Only one of the fields must be defined",path:["key"]}),t.addIssue({code:eM.z.ZodIssueCode.custom,message:"Only one of the fields must be defined",path:["keyFile"]}))}).optional()}).superRefine((e,t)=>{e.basicAuth&&e.authorization&&(t.addIssue({code:eM.z.ZodIssueCode.custom,message:"Only one of the fields must be defined",path:["basicAuth"]}),t.addIssue({code:eM.z.ZodIssueCode.custom,message:"Only one of the fields must be defined",path:["authorization"]}))}),e1=eM.z.object({kind:eM.z.literal("Secret"),metadata:ej,spec:e0}),e5=eM.z.object({kind:eM.z.literal("GlobalSecret"),metadata:eD,spec:e0}),e3=eM.z.discriminatedUnion("kind",[e1,e5]),e6=eM.z.object({password:eM.z.string().optional()}),e2=eM.z.object({issuer:eM.z.string().optional(),email:eM.z.string().optional(),subject:eM.z.string().optional()}),e4=eM.z.object({firstName:eM.z.string().optional(),lastName:eM.z.string().optional(),nativeProvider:e6.optional(),oauthProviders:eM.z.array(e2).optional()}),e8=eM.z.object({kind:eM.z.literal("User"),metadata:eD,spec:e4}),e7=eM.z.object({name:eM.z.string().optional(),description:eM.z.string().optional(),hidden:eM.z.boolean().optional()}),e9=eM.z.object({name:eM.z.string().min(1),display:e7.optional(),defaultValue:eM.z.string().or(eM.z.array(eM.z.string())).optional(),allowAllValue:eM.z.boolean(),allowMultiple:eM.z.boolean(),customAllValue:eM.z.string().optional(),capturingRegexp:eM.z.string().optional(),sort:eM.z.enum(["none","alphabetical-asc","alphabetical-desc","numerical-asc","numerical-desc","alphabetical-ci-asc","alphabetical-ci-desc"]).optional(),plugin:ek});function te(e){return eM.z.object({name:eM.z.string().min(1),display:e7.optional(),defaultValue:eM.z.string().or(eM.z.array(eM.z.string())).optional(),allowAllValue:eM.z.boolean(),allowMultiple:eM.z.boolean(),customAllValue:eM.z.string().optional(),capturingRegexp:eM.z.string().optional(),sort:eM.z.enum(["none","alphabetical-asc","alphabetical-desc","numerical-asc","numerical-desc","alphabetical-ci-asc","alphabetical-ci-desc"]).optional(),plugin:e})}let tt=eM.z.object({kind:eM.z.literal("ListVariable"),spec:e9});function ta(e){return eM.z.object({kind:eM.z.literal("ListVariable"),spec:te(e)})}let tn=eM.z.object({name:eM.z.string().min(1),display:e7.optional(),value:eM.z.string(),constant:eM.z.boolean().optional()}),ts=eM.z.object({kind:eM.z.literal("TextVariable"),spec:tn}),ti=eM.z.discriminatedUnion("kind",[ts,tt]);function tr(e){return eM.z.union([ts,ta(e)])}let to=eM.z.object({kind:eM.z.literal("Variable"),metadata:ej,spec:ti}),tl=eM.z.object({kind:eM.z.literal("GlobalVariable"),metadata:ej,spec:ti}),tu=eM.z.discriminatedUnion("kind",[to,tl]),tc=ti;function td(e){return eM.z.discriminatedUnion("kind",[eM.z.object({kind:eM.z.literal("ListVariable"),spec:te(e)}),eM.z.object({kind:eM.z.literal("TextVariable"),spec:tn})])}var tm=a(54538);function tp(e){let t=(0,tm.useRef)(e);return(0,tm.useLayoutEffect)(()=>{t.current=e}),(0,tm.useCallback)((...e)=>t.current(...e),[])}async function tf(...e){let t=await a.g.fetch(...e);if(!1===t.ok){let e=t.headers.get("content-type");if(e?.includes("application/json")){let e=await t.json();if(e.error)throw new th(e.error,t.status);if(e.message)throw new th(e.message,t.status)}let a=await t.text();if(a)throw new th(a,t.status);throw new tb(t)}return t}async function tg(...e){let t=await tf(...e);return await t.json()}class tb extends Error{status;constructor(e){super(`${e.status} ${e.statusText}`),this.status=e.status,Object.setPrototypeOf(this,tb.prototype)}}class th extends Error{status;constructor(e,t){super(e),this.status=t,Object.setPrototypeOf(this,th.prototype)}}function tS(e){return 0===Object.getOwnPropertyNames(e).length}var tz=a(56141),ty=a.n(tz);function tM(e,t){let a=(0,tm.useRef)(),n=!0;for(let e=0;e<t.length;e++)if(a.current?.deps[e]!==t[e]){n=!1;break}return(void 0===a.current||!1===n)&&(a.current={value:e(),deps:t}),a.current.value}function tv(e,t){let a=(0,tm.useRef)();return(void 0===a.current||!1===ty()(t,a.current.deps))&&(a.current={value:e(),deps:t}),a.current.value}function tD(e,t){let a=tj(t),n=e.panels[a];if(void 0===n)throw Error(`Could not resolve panels reference ${t.$ref}`);return n}function tj(e){return e.$ref.substring(14)}function tk(e){return{$ref:`#/spec/panels/${e}`}}function tx(e){return e.spec.spec?.display?.name?e.spec.spec.display.name:e.spec.display?.name?e.spec.display.name:e.metadata.name}function tR(e){return e.spec.spec?.display?.name?`${e.spec.spec.display.name} (ID: ${e.metadata.name})`:e.spec.display?.name?`${e.spec.display.name} (ID: ${e.metadata.name})`:e.metadata.name}var tT=a(15539),tI=a(70590);let{gcd:tw}=(0,tT.U)({gcdDependencies:tI.e}),tF=10;function tE(e){let t=[],a=e.startMs;for(;a<=e.endMs;)t.push(a),a+=e.stepMs;return t}function tO(e,t){let a=t.startMs,n=e.values,s=[];for(let e of n){for(;a<e[0];)s.push([a,null]),a+=t.stepMs;s.push([a,e[1]]),a+=t.stepMs}for(;a<=t.endMs;)s.push([a,null]),a+=t.stepMs;return s}function tV(e,t){let a=t.startMs,n=[];for(let s of e.values){for(;a<s[0];)n.push(null),a+=t.stepMs;n.push(s[1]),a+=t.stepMs}for(;a<=t.endMs;)n.push(null),a+=t.stepMs;return n}function tP(e){let t,a;let n=[];for(let t of e)if(t&&"timeRange"in t){if(void 0===t||void 0===t.timeRange||void 0===t.stepMs)continue;if(n.push(t.stepMs),void 0===a){a=t.timeRange;continue}t.timeRange.start<a.start&&(a.start=t.timeRange.start),t.timeRange.end>a.end&&(a.end=t.timeRange.end)}else if(t&&"values"in t){for(let e=0;e<t.values.length;e++){let n=t.values[e];if(void 0===n)continue;let[s]=n,i=new Date(s),r=new Date(s);if(void 0===a){a={start:i,end:r};continue}i<a.start&&(a.start=i),r>a.end&&(a.end=r)}if(void 0===a)return;let e=a.start.valueOf(),n=a.end.valueOf(),s=n-e;return{startMs:e,endMs:n,rangeMs:s,stepMs:tF}}if(void 0===a)return;if(1===n.length)t=n[0];else{let e=tw(...n);t=e<tF?tF:e}let s=a.start.valueOf(),i=a.end.valueOf();return{startMs:s,endMs:i,stepMs:t,rangeMs:i-s}}function tU(e,t){if(0===t.length)return e;let a={};for(let n of e){let e=Object.keys(n).filter(e=>t.includes(e)).map(e=>n[e]).join("|"),s=a[e];s?a[e]={...s,...n}:a[e]={...n}}return Object.values(a)}function tC(e,t,a){let n=[];for(let s of e){let e=Object.keys(s).filter(e=>t.includes(e)),i={};for(let t of e)i[t]=s[t],delete s[t];for(let t of e)n.push({...s,[a]:i[t]});0===e.length&&n.push(s)}return n}function tA(e,t){let a=[];for(let n of e){let e=Object.keys(n).filter(e=>RegExp("^("+t+" #\\d+)|("+t+")$").test(e)),s={};for(let t of e)s[t]=n[t],delete n[t];for(let i of e)a.push({...n,[t]:s[i]});0===e.length&&a.push(n)}return a}function tL(e){let t=[...e],a=Array.from(new Set(e.flatMap(Object.keys).map(e=>e.replace(/ #\d+/,"")).filter(e=>"value"!==e)));for(let e of a)t=tA(t,e);return tU(t,a)}function tG(e,t){let a=e;for(let e of t??[])if(!e.spec.disabled)switch(e.kind){case"JoinByColumnValue":e.spec.columns&&e.spec.columns.length>0&&(a=tU(a,e.spec.columns));break;case"MergeIndexedColumns":e.spec.column&&(a=tA(a,e.spec.column));break;case"MergeColumns":e.spec.columns&&e.spec.columns.length>0&&e.spec.name&&(a=tC(a,e.spec.columns,e.spec.name));break;case"MergeSeries":a=tL(a)}return a.map(e=>Object.keys(e).sort().reduce((t,a)=>(t[a]=e[a],t),{}))}function tN(e,t){return(0,tm.useMemo)(()=>tG(e,t),[e,t])}function t_(e){return!!e?.startsWith("/")}function t$(e){if(!e)throw Error("Input string cannot be empty");if(!t_(e))return RegExp(`^${e}$`);let t=e.match(/^\/(.+)\/([gimy]*)$/);if(!t)throw Error(`Invalid regular expression format: ${e}`);let[,a="",n=""]=t;try{return new RegExp(a,n)}catch(e){throw Error(`Failed to create RegExp ${e}`)}}function tB(e,t=[]){if(!t.length)return{value:e};let a={value:e};return t.forEach(t=>{switch(t.kind){case"Value":{let n=t.spec;String(n.value)===String(e)&&(a.value=n.result.value||a.value,a.color=n.result.color);break}case"Range":{let n=t.spec;if(void 0===n.from&&void 0===n.to)break;let s=void 0!==n.from?n.from:-1/0,i=void 0!==n.to?n.to:1/0;e>=s&&e<=i&&(a.value=n.result.value||a.value,a.color=n.result.color);break}case"Regex":{let n=t.spec,s=e.toString();if(!n.pattern)break;let i=t$(n.pattern);s.match(i)&&null!==n.result.value&&(a.value=s.replace(i,n.result.value.toString()||"")||a.value,a.color=n.result.color);break}case"Misc":{let n=t.spec;(function(e,t){switch(e){case"empty":return""===t;case"null":return null==t;case"NaN":return Number.isNaN(t);case"true":return!0===t;case"false":return!1===t;default:return!1}})(n.value,e)&&(a.value=n.result.value||a.value,a.color=n.result.color)}}}),a}}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkTimeSeriesTable=self.webpackChunkTimeSeriesTable||[]).push([["7606"],{70252:function(e,n,r){r.d(n,{Z:()=>a});function a(){return(a=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var r=arguments[n];for(var a in r)({}).hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e}).apply(null,arguments)}}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkTimeSeriesTable=self.webpackChunkTimeSeriesTable||[]).push([["894"],{67966:function(e,i,n){n.r(i),n.d(i,{useListPanelGroups:()=>H,useVariableDefinitionAndState:()=>ik,usePanelGroupEditor:()=>ee,VariableProviderWithQueryParams:()=>iT,DashboardContext:()=>O,SaveDashboardButton:()=>ng,useDeletePanelGroupDialog:()=>en,DashboardDiscardChangesConfirmationDialog:()=>n_,useVariableDefinitionStoreCtx:()=>iZ,useDashboardDuration:()=>eu,useDashboardStore:()=>z,useDiscardChangesConfirmationDialog:()=>ej,PanelPluginLoader:()=>eW,useDashboardActions:()=>F,useVariableDefinitions:()=>iE,VariableEditor:()=>i5,ViewDashboard:()=>al,generateId:()=>v,EditJsonDialog:()=>nN,VariableList:()=>nV,DashboardToolbar:()=>nA,VariableListItem:()=>nI,DeletePanelDialog:()=>nT,Panel:()=>id,createPanelDefinition:()=>y,useEditMode:()=>B,usePanelGroupActions:()=>Q,useVariableDefinitionActions:()=>iS,usePanel:()=>ea,PanelGroupDialog:()=>n4,useViewPanel:()=>eh,QuerySummaryTable:()=>n6,GridContainer:()=>iu,Variable:()=>nw,GridItemContent:()=>ic,GridLayout:()=>ih,useSaveChangesConfirmationDialog:()=>em,usePanelGroup:()=>J,VariableName:()=>i3,EmptyDashboard:()=>nn,GridTitle:()=>eR,DeletePanelGroupDialog:()=>nB,useViewPanelGroup:()=>eg,AddGroupButton:()=>eC,PanelDrawer:()=>nX,DownloadButton:()=>nc,BuiltinVariableAccordions:()=>i1,EditVariablesButton:()=>i8,useDeletePanelDialog:()=>ed,useEditJsonDialog:()=>ey,usePanelEditor:()=>es,DashboardProvider:()=>R,DatasourceStoreProvider:()=>an,EditDatasourcesButton:()=>np,SaveChangesConfirmationDialog:()=>ai,DatasourceEditor:()=>nu,VariableProvider:()=>iA,useExternalVariableDefinitions:()=>iV,EditJsonButton:()=>nx,useListVariableState:()=>nZ,usePanelActions:()=>er,usePanelGroupIds:()=>W,AddPanelButton:()=>ew,useVariableDefinitionStates:()=>iP,PanelPreview:()=>nq,useDashboard:()=>nd,DashboardStickyToolbar:()=>nG,Dashboard:()=>na});var a=n(24246),t=n(48565),r=n(69472),l=n(18832);let s={addPanel:"Add panel",addGroup:"Add panel group",editDatasources:"Edit datasources",editJson:"Edit JSON",editVariables:"Edit variables",viewJson:"View JSON",addPanelToGroup:"Add panel to group",deleteGroup:"Delete group",editGroup:"Edit group",moveGroupDown:"Move group down",moveGroupUp:"Move group up",viewPanel:"Toggle View Mode",editPanel:"Edit",duplicatePanel:"Duplicate",deletePanel:"Delete",movePanel:"Move"},o={addPanelToGroup:e=>`add panel to group ${e}`,deleteGroup:e=>`delete group ${e}`,editGroup:e=>`edit group ${e}`,moveGroupDown:e=>`move group ${e} down`,moveGroupUp:e=>`move group ${e} up`,viewPanel:e=>`toggle panel ${e} view mode`,editPanel:e=>`edit panel ${e}`,duplicatePanel:e=>`duplicate panel ${e}`,deletePanel:e=>`delete panel ${e}`,showPanelActions:e=>`show panel actions for ${e}`,movePanel:e=>`move panel ${e}`},d={whiteSpace:"nowrap",minWidth:"auto","& .MuiButton-startIcon":{marginRight:.5}},c="header-actions-container";var u=n(54538),p=n.n(u),h=n(40330),x=n(8785),g=n(56569),f=n(48639),m=n(65447),b=n(38187),j=n(27813);function v(){return void 0===globalThis.dashboardStoreId&&(globalThis.dashboardStoreId=0),globalThis.dashboardStoreId++}function y(e,i){return{kind:"Panel",spec:{display:{name:"",description:void 0},plugin:{kind:e??"",spec:i??{}},queries:[]}}}function C(e){let i={},n=[];for(let a of e){let e=[],t={};for(let i of a.spec.items){let n=v().toString();e.push({i:n,w:i.width,h:i.height,x:i.x,y:i.y}),t[n]=(0,b.getPanelKeyFromRef)(i.content)}let r=v();i[r]={id:r,isCollapsed:a.spec.display?.collapse?.open===!1,title:a.spec.display?.title,itemLayouts:e,itemPanelKeys:t},n.push(r)}return{panelGroups:i,panelGroupOrder:n}}function D(){return{id:v(),title:void 0,isCollapsed:!1,itemLayouts:[],itemPanelKeys:{}}}function w(e,i){e.panelGroups[i.id]=i,e.panelGroupOrder.unshift(i.id)}let Z=(e,i)=>({panelGroupEditor:void 0,openAddPanelGroup:()=>{let i={mode:"Add",initialValues:{title:"",isCollapsed:!1},applyChanges(i){let n=D();n.title=i.title,n.isCollapsed=i.isCollapsed,e(e=>{w(e,n)})},close(){e(e=>{e.panelGroupEditor=void 0})}};e(e=>{e.panelGroupEditor=i})},openEditPanelGroup:n=>{let a=i().panelGroups[n];if(void 0===a)throw Error(`Panel group with Id ${n} does not exist`);let t={mode:"Edit",initialValues:{title:a.title??"",isCollapsed:a.isCollapsed},applyChanges(i){e(e=>{let a=e.panelGroups[n];if(void 0===a)throw Error(`Panel group with Id ${n} does not exist`);a.title=i.title,a.isCollapsed=i.isCollapsed})},close(){e(e=>{e.panelGroupEditor=void 0})}};e(e=>{e.panelGroupEditor=t})}}),P={sm:24,xxs:2};function k(e){let i=0;for(let n of e.itemLayouts){let e=n.y+n.h;e>i&&(i=e)}return i}function S({x:e,y:i,w:n,h:a}){return{x1:e,x2:e+n,y1:i,y2:i+a}}function E(e,i){let n=function(e){let i={};return Object.keys(e).forEach(e=>{let{name:n,number:a}=I(e);void 0===i[n]&&(i[n]=0);let t=i[n];"number"==typeof t&&a&&(i[n]=Math.max(t,a))}),i}(i),a=I(V(e)).name,t=n[a];return"number"==typeof t&&(a+=`-${t+1}`),a}let V=e=>e.replace(/\s+/g,"");function I(e){let i=e.match(/(.+)-([0-9]+)/);return i&&i[1]&&i[2]?{name:i[1],number:parseInt(i[2],10)}:{name:e}}let G=(e,i)=>({deletePanelGroup(n){let{panelGroups:a,panelGroupOrder:t}=i(),r=a[n],l=t.findIndex(e=>e===n);if(void 0===r||-1===l)throw Error(`Panel group ${n} not found`);let s=Object.values(r.itemPanelKeys);e(e=>{delete e.panelGroups[n],e.panelGroupOrder.splice(l,1);let i=function(e){let i=new Set;for(let n of Object.values(e))for(let e of Object.values(n.itemPanelKeys))i.add(e);return i}(e.panelGroups);for(let n of s)i.has(n)||delete e.panels[n]})},openDeletePanelGroupDialog:n=>{let a=i().panelGroups[n];if(void 0===a)throw Error(`Panel group with Id ${n} not found`);e(e=>{e.deletePanelGroupDialog={panelGroupId:n,panelGroupName:a.title}})},closeDeletePanelGroupDialog:()=>e(e=>{e.deletePanelGroupDialog=void 0})}),A=e=>({isOpen:!1,openDiscardChangesConfirmationDialog(i){e(e=>{e.discardChangesConfirmationDialog=i})},closeDiscardChangesConfirmationDialog(){e(e=>{e.discardChangesConfirmationDialog=void 0})}}),T=e=>({isOpen:!1,openSaveChangesConfirmationDialog(i){e(e=>{e.saveChangesConfirmationDialog=i},!1,"openSaveChangesConfirmationDialog")},closeSaveChangesConfirmationDialog(){e(e=>{e.saveChangesConfirmationDialog=void 0},!1,"closeSaveChangesConfirmationDialog")}}),L=e=>({openEditJsonDialog(){e(e=>{e.editJsonDialog={isOpen:!0}})},closeEditJsonDialog(){e(e=>{e.editJsonDialog={isOpen:!1}})}}),O=(0,u.createContext)(void 0);function z(e){let i=(0,u.useContext)(O);if(void 0===i)throw Error("No DashboardContext found. Did you forget a Provider?");return(0,x.s)(i,e,m.X)}function R(e){let i=(0,u.useCallback)(M,[e]),{defaultPluginKinds:n}=(0,j.usePluginRegistry)(),t=n?.Panel??"",{data:r}=(0,j.usePlugin)("Panel",t),[l]=(0,u.useState)(i(e));return(0,u.useEffect)(()=>{if(void 0===r)return;let e=r.createInitialOptions?r.createInitialOptions():{};l.setState({initialValues:{panelDefinition:y(t,e)}})},[r,l,t]),(0,a.jsx)(O.Provider,{value:l,children:e.children})}function M(e){let{initialState:{dashboardResource:i,isEditMode:n,viewPanelRef:a,setViewPanelRef:t}}=e,{kind:r,metadata:l,spec:{display:s,duration:o,refreshInterval:d=b.DEFAULT_REFRESH_INTERVAL,datasources:c}}=i,u="ttl"in i.spec?i.spec.ttl:void 0,{spec:{layouts:p,panels:x}}=i;return p=p??[],x=x??{},(0,h.M)()((0,f.n)((0,g.mW)((...e)=>{var i;let h,g,f,m;let[j]=e;return{...(function(e){let{panelGroups:i,panelGroupOrder:n}=C(e);return e=>({panelGroups:i,panelGroupOrder:n,swapPanelGroups(i,n){e(e=>{if(i<0||i>=e.panelGroupOrder.length||n<0||n>=e.panelGroupOrder.length)throw Error("index out of bound");let a=e.panelGroupOrder[i],t=e.panelGroupOrder[n];if(void 0===a||void 0===t)throw Error("panel group is undefined");[e.panelGroupOrder[i],e.panelGroupOrder[n]]=[t,a]})},updatePanelGroupLayouts(i,n){e(e=>{let a=e.panelGroups[i];if(void 0===a)throw Error(`Cannot find panel group ${i}`);a.itemLayouts=n})}})})(p)(...e),...Z(...e),...G(...e),...(i=x,()=>({panels:i}))(...e),panelEditor:void 0,openEditPanel(i){let{panels:n,panelGroups:a}=h(),{panelGroupId:t,panelGroupItemLayoutId:r}=i,l=a[t]?.itemPanelKeys[r];if(void 0===l)throw Error(`Could not find Panel Group item ${i}`);let s=n[l];if(void 0===s)throw Error(`Cannot find Panel with key '${l}'`);let o={mode:"update",initialValues:{groupId:i.panelGroupId,panelDefinition:s},applyChanges:i=>{e(e=>{if(e.panels[l]=i.panelDefinition,i.groupId===t)return;let n=e.panelGroups[t];if(void 0===n)throw Error(`Missing panel group ${t}`);let a=n.itemLayouts.findIndex(e=>e.i===r),s=n.itemLayouts[a],o=n.itemPanelKeys[r];if(-1===a||void 0===s||void 0===o)throw Error(`Missing panel group item ${r}`);n.itemLayouts.splice(a,1),delete n.itemPanelKeys[r];let d=e.panelGroups[i.groupId];if(void 0===d)throw Error(`Could not find new group ${i.groupId}`);d.itemLayouts.push({i:s.i,x:0,y:k(d),w:s.w,h:s.h}),d.itemPanelKeys[s.i]=o})},close:()=>{e(e=>{e.panelEditor=void 0})}};e(e=>{e.panelEditor=o})},openAddPanel(i){let n;void 0===(i??=h().panelGroupOrder[0])&&((n=D()).title="Panel Group",i=n.id);let a={mode:"create",initialValues:{groupId:i,panelDefinition:h().initialValues?.panelDefinition??y()},applyChanges:i=>{let n=E(i.panelDefinition.spec.display.name,h().panels);e(e=>{e.panels[n]=i.panelDefinition;let a=e.panelGroups[i.groupId];if(void 0===a)throw Error(`Missing panel group ${i.groupId}`);let t={i:v().toString(),x:0,y:k(a),w:12,h:6};a.itemLayouts.push(t),a.itemPanelKeys[t.i]=n})},close:()=>{e(e=>{e.panelEditor=void 0})}};e(e=>{void 0!==n&&w(e,n),e.panelEditor=a})},deletePanel(i){e(e=>{let{panelGroupId:n,panelGroupItemLayoutId:a}=i,t=e.panelGroups[n];if(void 0===t)throw Error(`Missing panel group ${n}`);let r=t.itemLayouts.findIndex(e=>e.i===a),l=t.itemPanelKeys[a];if(-1===r||void 0===l)throw Error(`Missing panel group item ${a}`);t.itemLayouts.splice(r,1),delete t.itemPanelKeys[a],!1===function(e,i){for(let n of Object.values(e))if(void 0!==Object.values(n.itemPanelKeys).find(e=>e===i))return!0;return!1}(e.panelGroups,l)&&delete e.panels[l]})},openDeletePanelDialog(i){let{panelGroupId:n,panelGroupItemLayoutId:a}=i,{panels:t,panelGroups:r}=g(),l=r[n];if(void 0===l)throw Error(`Panel group not found ${n}`);let s=l.itemPanelKeys[a];if(void 0===s)throw Error(`Could not find Panel Group item ${a}`);let o=t[s];if(void 0===o)throw Error(`Could not find panel ${s}`);e(e=>{e.deletePanelDialog={panelGroupItemId:i,panelName:o.spec.display.name,panelGroupName:l.title??""}})},closeDeletePanelDialog(){e(e=>{e.deletePanelDialog=void 0})},duplicatePanel(i){e(e=>{let n=e.panels,{panelGroupId:a,panelGroupItemLayoutId:t}=i,r=e.panelGroups[a];if(void 0===r)throw Error(`Missing panel group ${a}`);let l=r.itemPanelKeys[t];if(void 0===l)throw Error(`Could not find Panel Group item ${i}`);let s=n[l];if(void 0===s)throw Error(`Cannot find Panel with key '${l}'`);let o=r.itemLayouts.find(e=>e.i===t);if(void 0===o)throw Error(`Cannot find layout for Panel with key '${l}'`);let d=E(l,n);e.panels[d]=s;let c={i:v().toString(),w:o.w,h:o.h};r.itemLayouts=function(e,i,n){let a=P.sm,t=S(i),r=[],l=[],s=[];n.forEach(e=>{let i=S(e);i.y2<=t.y1?r.push(e):i.y1>=t.y2?s.push(e):l.push(e)}),l.sort((e,i)=>e.x-i.x);let o=l.findIndex(e=>e.i===i.i);if(o===l.length-1){if(t.x2+e.w<=a)return[...r,...l,{...e,x:t.x2,y:t.y1},...s]}else if(o>=0){let i=l[o+1];if(i&&S(i).x1-t.x2>=e.w)return l.splice(o+1,0,{...e,x:t.x2,y:t.y1}),[...r,...l,...s]}return[...r,...l,{x:t.x1,y:t.y2,...e},...s.map(i=>({...i,y:i.y+e.h}))]}(c,o,r.itemLayouts),r.itemPanelKeys[c.i]=d})},...(f=e,{viewPanel:{panelGroupItemId:void 0,panelRef:a},getViewPanel:()=>{var e,i,n;return e=m().panelGroups,i=m().viewPanel.panelGroupItemId,n=m().viewPanel.panelRef,i||(n?function(e,i){for(let n of Object.values(e)){let e=Object.entries(n.itemPanelKeys??[]).find(([e,n])=>n===i);if(e){let[i]=e;return{panelGroupId:n.id,panelGroupItemLayoutId:i}}}}(e,n):void 0)},setViewPanel(e){f(i=>{i.viewPanel={panelRef:void 0,panelGroupItemId:e};let n=function(e,i){if(!i)return;let n=e[i.panelGroupId];if(n)return n.itemPanelKeys[i.panelGroupItemLayoutId]}(m().panelGroups,e);t&&t(n)})}}),...A(...e),...L(...e),...T(...e),kind:r,metadata:l,display:s,duration:o,refreshInterval:d,datasources:c,ttl:u,isEditMode:!!n,setEditMode:e=>j({isEditMode:e}),setDashboard:({kind:e,metadata:i,spec:{display:n,panels:a={},layouts:t=[],duration:r,refreshInterval:l,datasources:s={}}})=>{j(o=>{o.kind=e,o.metadata=i,o.display=n,o.panels=a;let{panelGroups:d,panelGroupOrder:c}=C(t);o.panelGroups=d,o.panelGroupOrder=c,o.duration=r,o.refreshInterval=l??b.DEFAULT_REFRESH_INTERVAL,o.datasources=s})}}})))}let $=({isEditMode:e,setEditMode:i})=>({isEditMode:e,setEditMode:i});function B(){return z($)}let _=({setDashboard:e,openAddPanelGroup:i,openAddPanel:n})=>({setDashboard:e,openAddPanelGroup:i,openAddPanel:n});function F(){let{setDashboard:e,openAddPanelGroup:i,openAddPanel:n}=z(_);return{setDashboard:e,openAddPanelGroup:()=>i(),openAddPanel:()=>n()}}let N=e=>e.panelGroupOrder;function W(){return z(N)}let U=e=>e.panelGroups;function H(){let e=W(),i=z(U);return(0,u.useMemo)(()=>e.map(e=>{let n=i[e];if(void 0===n)throw Error(`Invalid panel group Id found ${e}`);return n}),[e,i])}function J(e){let i=z((0,u.useCallback)(i=>i.panelGroups[e],[e]));if(void 0===i)throw Error(`Panel group with Id ${e} was not found`);return i}let q=({openEditPanelGroup:e,deletePanelGroup:i,openAddPanel:n,updatePanelGroupLayouts:a})=>({openEditPanelGroup:e,deletePanelGroup:i,openAddPanel:n,updatePanelGroupLayouts:a});function Q(e){let{moveUp:i,moveDown:n}=function(e){let i=z((0,u.useCallback)(i=>i.panelGroupOrder.findIndex(i=>i===e),[e])),n=z(Y),a=z(K);if(i<0)throw Error(`Could not find panel group with Id ${e} in order array`);return{moveUp:i>0?()=>a(i,i-1):void 0,moveDown:i<n-1?()=>a(i,i+1):void 0}}(e),{openEditPanelGroup:a,deletePanelGroup:t,openAddPanel:r,updatePanelGroupLayouts:l}=z(q);return{openEditPanelGroup:()=>a(e),deletePanelGroup:()=>t(e),openAddPanel:()=>r(e),moveUp:i,moveDown:n,updatePanelGroupLayouts:i=>l(e,i)}}let K=e=>e.swapPanelGroups,Y=e=>e.panelGroupOrder.length,X=e=>e.panelGroupEditor;function ee(){return z(X)}let ei=({deletePanelGroupDialog:e,openDeletePanelGroupDialog:i,closeDeletePanelGroupDialog:n,deletePanelGroup:a})=>({deletePanelGroupDialog:e,openDeletePanelGroupDialog:i,closeDeletePanelGroupDialog:n,deletePanelGroup:a});function en(){let{deletePanelGroupDialog:e,openDeletePanelGroupDialog:i,closeDeletePanelGroupDialog:n,deletePanelGroup:a}=z(ei);return{deletePanelGroupDialog:e,deletePanelGroup:a,openDeletePanelGroupDialog:i,closeDeletePanelGroupDialog:()=>n()}}function ea(e){let{panelGroupId:i,panelGroupItemLayoutId:n}=e,a=z((0,u.useCallback)(e=>{let a=e.panelGroups[i]?.itemPanelKeys[n];if(void 0!==a)return e.panels[a]},[i,n]));if(void 0===a)throw Error(`Could not find panel for Id ${e}`);return a}let et=({openEditPanel:e,openDeletePanelDialog:i,duplicatePanel:n,setViewPanel:a})=>({openEditPanel:e,openDeletePanelDialog:i,duplicatePanel:n,setViewPanel:a});function er(e){let{openEditPanel:i,openDeletePanelDialog:n,duplicatePanel:a,setViewPanel:t}=z(et);return{openEditPanel:()=>i(e),openDeletePanelDialog:()=>n(e),duplicatePanel:()=>a(e),viewPanel:e=>t(e)}}let el=e=>e.panelEditor;function es(){return z(el)}let eo=({deletePanelDialog:e,deletePanel:i,closeDeletePanelDialog:n})=>({deletePanelDialog:e,deletePanel:i,closeDeletePanelDialog:n});function ed(){return z(eo)}let ec=e=>e.duration;function eu(){return z(ec)}let ep=e=>({setViewPanel:e.setViewPanel,getViewPanel:e.getViewPanel,viewPanelId:e.getViewPanel()});function eh(){return z(ep)}let ex=e=>e.getViewPanel();function eg(){return z(ex)}let ef=({saveChangesConfirmationDialog:e,openSaveChangesConfirmationDialog:i,closeSaveChangesConfirmationDialog:n})=>({saveChangesConfirmationDialog:e,openSaveChangesConfirmationDialog:i,closeSaveChangesConfirmationDialog:n});function em(){return z(ef)}let eb=({discardChangesConfirmationDialog:e,openDiscardChangesConfirmationDialog:i,closeDiscardChangesConfirmationDialog:n})=>({discardChangesConfirmationDialog:e,openDiscardChangesConfirmationDialog:i,closeDiscardChangesConfirmationDialog:n});function ej(){return z(eb)}let ev=({editJsonDialog:e,openEditJsonDialog:i,closeEditJsonDialog:n})=>({editJsonDialog:e,openEditJsonDialog:i,closeEditJsonDialog:n});function ey(){return z(ev)}let eC=()=>{let{openAddPanelGroup:e}=F();return(0,a.jsx)(l.InfoTooltip,{description:s.addGroup,children:(0,a.jsx)(t.Z,{startIcon:(0,a.jsx)(r.default,{}),onClick:e,"aria-label":s.addGroup,sx:d,children:"Panel Group"})})};var eD=n(31243);let ew=({variant:e="text",color:i="primary",label:n="Panel",fullWidth:r})=>{let{openAddPanel:o}=F();return(0,a.jsx)(l.InfoTooltip,{description:s.addPanel,children:(0,a.jsx)(t.Z,{startIcon:(0,a.jsx)(eD.default,{}),onClick:o,"aria-label":s.addPanel,variant:e,color:i,fullWidth:r,sx:d,children:n})})};var eZ=n(36372),eP=n(30788),ek=n(94776),eS=n(33711),eE=n(52054),eV=n(75094),eI=n(25283),eG=n(12449),eA=n(84974),eT=n(57739),eL=n(47501),eO=n(61679),ez=n(22446);function eR(e){let{panelGroupId:i,title:n,collapse:t}=e,r=(0,j.useReplaceVariablesInString)(n),{openAddPanel:d,openEditPanelGroup:c,moveUp:u,moveDown:p}=Q(i),{openDeletePanelGroupDialog:h}=en(),{isEditMode:x}=B(),g=(0,a.jsx)(eE.Z,{variant:"h2",children:r});return(0,a.jsx)(eZ.Z,{onClick:t?.onToggleOpen,sx:{display:"flex",justifyContent:"start",alignItems:"center",cursor:t?"pointer":"auto",backgroundColor:({palette:e})=>e.background.paper},"data-testid":"panel-group-header",children:t?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(eV.Z,{sx:{marginRight:1},"aria-label":`${t.isOpen?"collapse":"expand"} group ${r}`,children:t.isOpen?(0,a.jsx)(eG.default,{}):(0,a.jsx)(eA.default,{})}),g,x&&(0,a.jsxs)(eI.Z,{direction:"row",marginLeft:"auto",children:[(0,a.jsx)(l.InfoTooltip,{description:s.addPanelToGroup,children:(0,a.jsx)(eV.Z,{"aria-label":o.addPanelToGroup(r),onClick:e=>{e.stopPropagation(),d()},children:(0,a.jsx)(eD.default,{})})}),(0,a.jsx)(l.InfoTooltip,{description:s.editGroup,children:(0,a.jsx)(eV.Z,{"aria-label":o.editGroup(r),onClick:e=>{e.stopPropagation(),c()},children:(0,a.jsx)(eT.default,{})})}),(0,a.jsx)(l.InfoTooltip,{description:s.deleteGroup,children:(0,a.jsx)(eV.Z,{"aria-label":o.deleteGroup(r),onClick:e=>{e.stopPropagation(),h(i)},children:(0,a.jsx)(ez.default,{})})}),(0,a.jsx)(l.InfoTooltip,{description:s.moveGroupDown,children:(0,a.jsx)(eV.Z,{"aria-label":o.moveGroupDown(r),disabled:void 0===p,onClick:e=>{e.stopPropagation(),p?.()},children:(0,a.jsx)(eO.default,{})})}),(0,a.jsx)(l.InfoTooltip,{description:s.moveGroupUp,children:(0,a.jsx)(eV.Z,{"aria-label":o.moveGroupUp(r),disabled:void 0===u,onClick:e=>{e.stopPropagation(),u?.()},children:(0,a.jsx)(eL.default,{})})})]})]}):g})}var eM=n(32647),e$=n(84954),eB=n(25635),e_=n(4338),eF=n.n(e_),eN=n(66224);function eW(e){let{kind:i,spec:n,contentDimensions:t,definition:r,queryResults:l}=e,{data:s,isLoading:o}=(0,j.usePlugin)("Panel",i,{throwOnError:!0}),d=s?.PanelComponent,c=s?.supportedQueryTypes||[];if(o)return(0,a.jsx)(eN.Z,{variant:"rectangular",width:t?.width,height:t?.height,"aria-label":"Loading..."});if(void 0===d)throw Error(`Missing PanelComponent from panel plugin for kind '${i}'`);for(let e of l)if(!c.includes(e.definition.kind))throw Error(`This panel does not support queries of type '${e.definition.kind}'. Supported query types: ${c.join(", ")}.`);return(0,a.jsx)(d,{spec:n,contentDimensions:t,definition:r,queryResults:l})}function eU(e){let{panelPluginKind:i,definition:n,queryResults:t,spec:r,contentDimensions:l}=e,{data:s,isLoading:o}=(0,j.usePlugin)("Panel",i,{throwOnError:!0});if(o)return(0,a.jsx)(eN.Z,{variant:"rectangular",width:l?.width,height:l?.height,"aria-label":"Loading..."});let d=t.flatMap(e=>e.data?[{data:e.data,definition:e.definition}]:[]);if(d.length>0||0===t.length)return(0,a.jsx)(eW,{kind:i,spec:r,contentDimensions:l,definition:n,queryResults:d});if(t.some(e=>e.isFetching))return(0,a.jsx)(eH,{plugin:s,spec:r,definition:n,contentDimensions:l});let c=t.find(e=>e.error);if(c)throw c.error;return(0,a.jsx)(eH,{plugin:s,spec:r,definition:n,contentDimensions:l})}function eH({plugin:e,spec:i,definition:n,contentDimensions:t}){return e?.LoadingComponent?(0,a.jsx)(e.LoadingComponent,{spec:i,contentDimensions:t,definition:n,queryResults:[]}):(0,a.jsx)(l.LoadingOverlay,{})}var eJ=n(81652),eq=n(12709),eQ=n(50898),eK=n(6714),eY=n(15758),eX=n(13801),e0=n(18979),e1=n(50345),e2=n(93051),e5=n(47512),e4=n(39398);let e3=(0,eq.ZP)(eV.Z)(({theme:e})=>({borderRadius:e.shape.borderRadius,padding:"4px"}));var e8=n(5549),e6=n(10517),e7=n(60886),e9=n(14434);function ie({links:e}){let[i,n]=(0,u.useState)(null);if(1===e.length&&e[0]){let i=e[0];return(0,a.jsx)(ii,{link:i})}return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(l.InfoTooltip,{description:`${e.length} links`,enterDelay:100,children:(0,a.jsx)(eV.Z,{"aria-label":"Panel links",size:"small",onClick:e=>{n(e.currentTarget)},sx:e=>({borderRadius:e.shape.borderRadius,padding:"4px"}),children:(0,a.jsx)(e9.default,{"aria-describedby":"links-icon",fontSize:"inherit",sx:{color:e=>e.palette.text.secondary}})})}),(0,a.jsx)(e8.Z,{anchorEl:i,open:!!i,onClose:()=>{n(null)},MenuListProps:{"aria-labelledby":"panel-links"},children:e.map(e=>(0,a.jsx)(ia,{link:e},e.url))})]})}function ii({link:e}){let{url:i,name:n,tooltip:t,targetBlank:r}=it(e);return(0,a.jsx)(l.InfoTooltip,{description:t??i,enterDelay:100,children:(0,a.jsx)(eV.Z,{"aria-label":n??i,size:"small",href:i,target:r?"_blank":"_self",sx:e=>({borderRadius:e.shape.borderRadius,padding:"4px"}),children:(0,a.jsx)(e9.default,{fontSize:"inherit",sx:{color:e=>e.palette.text.secondary}})})})}function ia({link:e}){let{url:i,name:n,tooltip:t,targetBlank:r}=it(e);return(0,a.jsx)(l.InfoTooltip,{description:t??i,enterDelay:100,children:(0,a.jsx)(e6.Z,{component:e7.Z,href:i,target:r?"_blank":"_self",children:n??i})})}function it(e){let i=(0,j.useReplaceVariablesInString)(e.url)??e.url,n=(0,j.useReplaceVariablesInString)(e.name),a=(0,j.useReplaceVariablesInString)(e.tooltip);return!1===e.renderVariables?e:{...e,url:i,name:n,tooltip:a}}let ir=(0,eq.ZP)(eZ.Z)({display:"none",alignItems:"center",flexGrow:1,justifyContent:"flex-end"}),il=({editHandlers:e,readHandlers:i,extra:n,title:t,description:r,descriptionTooltipId:d,links:p,queryResults:h})=>{let x=(0,u.useMemo)(()=>{if(r&&r.trim().length>0)return(0,a.jsx)(l.InfoTooltip,{id:d,description:r,enterDelay:100,children:(0,a.jsx)(e3,{"aria-label":"panel description",size:"small",children:(0,a.jsx)(e4.default,{"aria-describedby":"info-tooltip","aria-hidden":!1,fontSize:"inherit",sx:{color:e=>e.palette.text.secondary}})})})},[d,r]),g=p&&p.length>0&&(0,a.jsx)(ie,{links:p}),f=void 0===e&&n,m=(0,u.useMemo)(()=>{let e=h.some(e=>e.data),i=h.some(e=>e.isFetching),n=h.filter(e=>e.error);if(i&&e)return(0,a.jsx)(eQ.Z,{"aria-label":"loading",size:"1.125rem"});if(n.length>0){let e=n.map(e=>e.error).map(e=>e?.message??e?.toString()??"Unknown error").join("\n");return(0,a.jsx)(l.InfoTooltip,{description:e,children:(0,a.jsx)(e3,{"aria-label":"panel errors",size:"small",children:(0,a.jsx)(e5.default,{fontSize:"inherit"})})})}},[h]),b=(0,u.useMemo)(()=>{if(void 0!==i)return(0,a.jsx)(l.InfoTooltip,{description:s.viewPanel,children:(0,a.jsx)(e3,{"aria-label":o.viewPanel(t),size:"small",onClick:i.onViewPanelClick,children:i.isPanelViewed?(0,a.jsx)(eY.default,{fontSize:"inherit"}):(0,a.jsx)(eX.default,{fontSize:"inherit"})})})},[i,t]),j=(0,u.useMemo)(()=>{if(void 0!==e)return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(l.InfoTooltip,{description:s.editPanel,children:(0,a.jsx)(e3,{"aria-label":o.editPanel(t),size:"small",onClick:e.onEditPanelClick,children:(0,a.jsx)(eT.default,{fontSize:"inherit"})})}),(0,a.jsx)(l.InfoTooltip,{description:s.duplicatePanel,children:(0,a.jsx)(e3,{"aria-label":o.duplicatePanel(t),size:"small",onClick:e.onDuplicatePanelClick,children:(0,a.jsx)(e1.default,{fontSize:"inherit",sx:{transform:"scale(0.925)"}})})}),(0,a.jsx)(l.InfoTooltip,{description:s.deletePanel,children:(0,a.jsx)(e3,{"aria-label":o.deletePanel(t),size:"small",onClick:e.onDeletePanelClick,children:(0,a.jsx)(ez.default,{fontSize:"inherit"})})})]})},[e,t]),v=(0,u.useMemo)(()=>{if(j&&!i?.isPanelViewed)return(0,a.jsx)(l.InfoTooltip,{description:s.movePanel,children:(0,a.jsx)(e3,{"aria-label":o.movePanel(t),size:"small",children:(0,a.jsx)(e0.default,{className:"drag-handle",sx:{cursor:"grab"},fontSize:"inherit"})})})},[j,i,t]),y=(0,a.jsx)(eZ.Z,{sx:{flexGrow:1}}),C=({children:n})=>void 0!==e||i?.isPanelViewed?(0,a.jsx)(a.Fragment,{children:n}):(0,a.jsx)(eZ.Z,{sx:{display:"var(--panel-hover, none)"},children:n});return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(ir,{sx:e=>({[e.containerQueries(c).between(0,170)]:{display:"flex"}}),children:[y,(0,a.jsxs)(C,{children:[(0,a.jsxs)(is,{title:t,children:[x," ",g," ",m," ",f," ",b," ",j]}),v]})]}),(0,a.jsxs)(ir,{sx:e=>({[e.containerQueries(c).between(170,220)]:{display:"flex"}}),children:[(0,a.jsxs)(C,{children:[x," ",g]}),y," ",m,(0,a.jsxs)(C,{children:[f," ",b,(0,a.jsx)(is,{title:t,children:j}),v]})]}),(0,a.jsxs)(ir,{sx:e=>({display:"flex",[e.containerQueries(c).down(220)]:{display:"none"}}),children:[(0,a.jsxs)(C,{children:[x," ",g]}),y," ",m,(0,a.jsxs)(C,{children:[f," ",b," ",j," ",v]})]})]})},is=({children:e,title:i})=>{let[n,t]=(0,u.useState)();if(!((0,u.isValidElement)(e)||Array.isArray(e)&&e.some(u.isValidElement)))return;let r=()=>{t(void 0)},l=!!n,s=l?"actions-menu":void 0;return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(e3,{className:"show-actions","aria-describedby":s,onClick:e=>{t(e.currentTarget.getBoundingClientRect())},"aria-label":o.showPanelActions(i),size:"small",children:(0,a.jsx)(e2.default,{fontSize:"inherit"})}),(0,a.jsx)(eK.ZP,{id:s,open:l,anchorReference:"anchorPosition",anchorPosition:n,onClose:r,anchorOrigin:{vertical:"bottom",horizontal:"left"},children:(0,a.jsx)(eI.Z,{direction:"row",alignItems:"center",sx:{padding:1},onClick:r,children:e})})]})};function io({id:e,title:i,description:n,links:t,queryResults:r,readHandlers:s,editHandlers:o,sx:d,extra:u,...p}){let h=`${e}-title`,x=`${e}-description`,g=(0,j.useReplaceVariablesInString)(i),f=(0,j.useReplaceVariablesInString)(n);return(0,a.jsx)(eJ.Z,{id:e,component:"header","aria-labelledby":h,"aria-describedby":x,disableTypography:!0,title:(0,a.jsxs)(eI.Z,{direction:"row",children:[(0,a.jsx)(eE.Z,{id:h,variant:"subtitle1",sx:{lineHeight:"24px",minHeight:"26px",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:g}),(0,a.jsx)(il,{title:g,description:f,descriptionTooltipId:x,links:t,queryResults:r,readHandlers:s,editHandlers:o,extra:u})]}),sx:(0,l.combineSx)(e=>({containerType:"inline-size",containerName:c,padding:e.spacing(1),borderBottom:`solid 1px ${e.palette.divider}`,".MuiCardHeader-content":{overflow:"hidden"}}),d),...p})}let id=(0,u.memo)(function(e){let{definition:i,readHandlers:n,editHandlers:t,onMouseEnter:r,onMouseLeave:s,sx:o,panelOptions:d,panelGroupItemId:c,...p}=e,h=(0,l.useId)("Panel"),x=`${h}-header`,[g,f]=(0,u.useState)(null),{width:m,height:b}=eF()({ref:g}),v=(0,u.useMemo)(()=>{if(void 0!==m&&void 0!==b)return{width:m,height:b}},[m,b]),y=(0,l.useChartsTheme)(),{queryResults:C}=(0,j.useDataQueriesContext)();return(0,a.jsxs)(e$.Z,{component:"section",sx:(0,l.combineSx)({width:"100%",height:"100%",display:"flex",flexFlow:"column nowrap",":hover":{"--panel-hover":"block"}},o),variant:"outlined",onMouseEnter:e=>{r?.(e)},onMouseLeave:e=>{s?.(e)},"aria-labelledby":x,"aria-describedby":x,"data-testid":"panel",...p,children:[!d?.hideHeader&&(0,a.jsx)(io,{extra:d?.extra?.({panelDefinition:i,panelGroupItemId:c}),id:x,title:i.spec.display.name,description:i.spec.display.description,queryResults:C,readHandlers:n,editHandlers:t,links:i.spec.links,sx:{paddingX:`${y.container.padding.default}px`}}),(0,a.jsx)(eB.Z,{component:"figure",sx:{position:"relative",overflow:"hidden",flexGrow:1,margin:0,padding:0,":last-child":{padding:0}},ref:f,children:(0,a.jsx)(l.ErrorBoundary,{FallbackComponent:l.ErrorAlert,resetKeys:[i.spec],children:(0,a.jsx)(eU,{definition:i,panelPluginKind:i.spec.plugin.kind,spec:i.spec.plugin.spec,contentDimensions:v,queryResults:C})})})]})});function ic(e){let i;let{panelGroupItemId:n,width:t}=e,r=ea(n),{spec:{queries:l}}=r,{isEditMode:s}=B(),{openEditPanel:o,openDeletePanelDialog:d,duplicatePanel:c,viewPanel:u}=er(n),p=eg(),{ref:h,inView:x}=(0,eM.YD)({threshold:.2,initialInView:!1,triggerOnce:!0}),g={isPanelViewed:p?.panelGroupId===n?.panelGroupId&&p?.panelGroupItemLayoutId===n?.panelGroupItemLayoutId,onViewPanelClick:function(){void 0===p?u(n):u(void 0)}};s&&(i={onEditPanelClick:o,onDuplicatePanelClick:c,onDeletePanelClick:d});let f=(0,j.useSuggestedStepMs)(t),{data:m}=(0,j.usePlugin)("Panel",r.spec.plugin.kind),b=(l??[]).map(e=>({kind:e.spec.plugin.kind,spec:e.spec.plugin.spec})),v="function"==typeof m?.queryOptions?m?.queryOptions(r.spec.plugin.spec):m?.queryOptions;return(0,a.jsx)(eZ.Z,{ref:h,sx:{width:"100%",height:"100%"},children:(0,a.jsx)(j.DataQueriesProvider,{definitions:b,options:{suggestedStepMs:f,...v},queryOptions:{enabled:x},children:x&&(0,a.jsx)(id,{definition:r,readHandlers:g,editHandlers:i,panelOptions:e.panelOptions,panelGroupItemId:n})})})}function iu(e){let[i,n]=(0,u.useState)(!0);return(0,u.useEffect)(()=>{i&&n(!1)},[i]),(0,a.jsx)(ip,{sx:[{"& + &":{marginTop:1},"& .react-grid-item.cssTransforms":{transitionProperty:i?"none":"transform"}},...Array.isArray(e.sx)?e.sx:[e.sx]],"data-testid":"panel-group",children:e.children})}let ip=(0,eq.ZP)("section")(({theme:e})=>({"& .react-grid-layout":{position:"relative",transition:"height 200ms ease"},"& .react-grid-item":{transition:"all 200ms ease",transitionProperty:"left, top"},"& .react-grid-item img":{pointerEvents:"none",userSelect:"none"},"& .react-grid-item.cssTransforms":{transitionProperty:"transform"},"& .react-grid-item.resizing":{zIndex:1,willChange:"width, height"},"& .react-grid-item.react-draggable-dragging":{transition:"none",zIndex:3,willChange:"transform"},"& .react-grid-item.dropping":{visibility:"hidden"},"& .react-grid-item.react-grid-placeholder":{background:e.palette.primary.main,opacity:.2,transitionDuration:"100ms",zIndex:2,userSelect:"none",WebkitUserSelect:"none",MozUserSelect:"none",msUserSelect:"none",OUserSelect:"none"},"& .react-grid-item > .react-resizable-handle":{position:"absolute",width:"20px",height:"20px"},"& .react-grid-item > .react-resizable-handle::after":{content:'""',position:"absolute",right:"3px",bottom:"3px",width:"5px",height:"5px",borderRight:`2px solid ${e.palette.text.secondary}`,borderBottom:`2px solid ${e.palette.text.secondary}`},"& .react-resizable-hide > .react-resizable-handle":{display:"none"},"& .react-grid-item > .react-resizable-handle.react-resizable-handle-sw":{bottom:"0",left:"0",cursor:"sw-resize",transform:"rotate(90deg)"},"& .react-grid-item > .react-resizable-handle.react-resizable-handle-se":{bottom:"0",right:"0",cursor:"se-resize"},"& .react-grid-item > .react-resizable-handle.react-resizable-handle-nw":{top:"0",left:"0",cursor:"nw-resize",transform:"rotate(180deg)"},"& .react-grid-item > .react-resizable-handle.react-resizable-handle-ne":{top:"0",right:"0",cursor:"ne-resize",transform:"rotate(270deg)"},"& .react-grid-item > .react-resizable-handle.react-resizable-handle-w, &.react-grid-item > .react-resizable-handle.react-resizable-handle-e":{top:"50%",marginTop:"-10px",cursor:"ew-resize"},"& .react-grid-item > .react-resizable-handle.react-resizable-handle-w":{left:"0",transform:"rotate(135deg)"},"& .react-grid-item > .react-resizable-handle.react-resizable-handle-e":{right:"0",transform:"rotate(315deg)"},"& .react-grid-item > .react-resizable-handle.react-resizable-handle-n, &.react-grid-item > .react-resizable-handle.react-resizable-handle-s":{left:"50%",marginLeft:"-10px",cursor:"ns-resize"},"& .react-grid-item > .react-resizable-handle.react-resizable-handle-n":{top:"0",transform:"rotate(225deg)"},"& .react-grid-item > .react-resizable-handle.react-resizable-handle-s":{bottom:"0",transform:"rotate(45deg)"},"& .react-resizable":{position:"relative"},"& .react-resizable-handle":{position:"absolute",width:"20px",height:"20px",backgroundRepeat:"no-repeat",backgroundOrigin:"content-box",boxSizing:"border-box",backgroundImage:"url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2IDYiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYwMCIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI2cHgiIGhlaWdodD0iNnB4Ij48ZyBvcGFjaXR5PSIwLjMwMiI+PHBhdGggZD0iTSA2IDYgTCAwIDYgTCAwIDQuMiBMIDQgNC4yIEwgNC4yIDQuMiBMIDQuMiAwIEwgNiAwIEwgNiA2IEwgNiA2IFoiIGZpbGw9IiMwMDAwMDAiLz48L2c+PC9zdmc+')",backgroundPosition:"bottom right",padding:"0 3px 3px 0"},"& .react-resizable-handle-sw":{bottom:"0",left:"0",cursor:"sw-resize",transform:"rotate(90deg)"},"& .react-resizable-handle-se":{bottom:"0",right:"0",cursor:"se-resize"},"& .react-resizable-handle-nw":{top:"0",left:"0",cursor:"nw-resize",transform:"rotate(180deg)"},"& .react-resizable-handle-ne":{top:"0",right:"0",cursor:"ne-resize",transform:"rotate(270deg)"},"& .react-resizable-handle-w, .react-resizable-handle-e":{top:"50%",marginTop:"-10px",cursor:"ew-resize"},"& .react-resizable-handle-w":{left:"0",transform:"rotate(135deg)"},"& .react-resizable-handle-e":{right:"0",transform:"rotate(315deg)"},"& .react-resizable-handle-n, .react-resizable-handle-s":{left:"50%",marginLeft:"-10px",cursor:"ns-resize"},"& .react-resizable-handle-n":{top:"0",transform:"rotate(225deg)"},"& .react-resizable-handle-s":{bottom:"0",transform:"rotate(45deg)"}}));function ih(e){let{panelGroupId:i,panelOptions:n,panelFullHeight:t}=e,r=(0,ek.Z)(),s=J(i),{updatePanelGroupLayouts:o}=Q(i),[d,c]=(0,u.useState)(!s.isCollapsed),{isEditMode:p}=B(),[h,x]=(0,u.useState)(0),g=eg(),f=g?.panelGroupId===i,m=g?.panelGroupItemLayoutId;(0,u.useEffect)(()=>{f&&c(!0)},[f]);let b=void 0===g||f,j=(0,u.useMemo)(()=>m?s.itemLayouts.map(e=>e.i===m?{h:Math.round(((t??window.innerHeight)-48)/40),i:m,w:48,x:0,y:0}:e):s.itemLayouts,[s.itemLayouts,m,t]),v=(0,u.useMemo)(()=>(0,eP.WidthProvider)(eP.Responsive),[]);return(0,a.jsxs)(iu,{sx:{display:b?"block":"none",height:m?`${t}px`:"unset",overflow:m?"hidden":"unset"},children:[void 0!==s.title&&(0,a.jsx)(eR,{panelGroupId:i,title:s.title,collapse:void 0===s.isCollapsed?void 0:{isOpen:d,onToggleOpen:()=>c(e=>!e)}}),(0,a.jsx)(eS.Z,{in:d,unmountOnExit:!0,appear:!1,"data-testid":"panel-group-content",children:(0,a.jsx)(v,{className:"layout",breakpoints:{sm:r.breakpoints.values.sm,xxs:0},cols:P,rowHeight:30,draggableHandle:".drag-handle",resizeHandles:["se"],isDraggable:p&&!f,isResizable:p&&!f,margin:[10,10],containerPadding:[0,10],layouts:{sm:j},onLayoutChange:(e,i)=>{let n=i.sm;n&&!f&&o(n)},onWidthChange:(e,i,n,a)=>{x((e-i[0]*(n-1)-2*a[0])/n)},allowOverlap:f,children:j.map(({i:e,w:t})=>(0,a.jsx)("div",{style:{display:void 0!==m?m===e?"unset":"none":"unset"},children:(0,a.jsx)(l.ErrorBoundary,{FallbackComponent:l.ErrorAlert,children:(0,a.jsx)(ic,{panelOptions:n,panelGroupItemId:{panelGroupId:i,panelGroupItemLayoutId:e},width:ix(t,h)})})},e))})})]})}let ix=(e,i)=>Number.isFinite(e)?Math.round(i*e+10*Math.max(0,e-1)):e;var ig=n(71783),im=n(75586);function ib(e,i){var n,a,t;let r={},l=[];return n=e,a=i,t=(e,i)=>{r[i]||(l.push(e),r[i]=!0)},n.forEach(e=>t(e,e.spec.name)),a.forEach(e=>e.definitions.forEach(i=>t(i,i.spec.name,e.source))),l}function ij(e,i){let n={value:null,loading:!1,overriding:!1,overridden:!1};switch(e.kind){case"TextVariable":n.value=i??e.spec.value;break;case"ListVariable":if(n.options=[],n.value=i??e.spec.defaultValue??null,n.options.length>0&&!n.value){let i=n.options[0]?.value??null;null!==i&&(n.value=e.spec.allowMultiple?[i]:i)}Array.isArray(n.value)&&1===n.value.length&&n.value[0]===b.DEFAULT_ALL_VALUE&&(n.value=b.DEFAULT_ALL_VALUE)}return n}function iv(e,i,n=[]){let a=new j.VariableStoreStateMap,t={};e.forEach(e=>{t[e.spec.name]=!0},{});let r={};return n.forEach(e=>{let n=e.source;e.definitions.forEach(e=>{let l=e.spec.name,s=i[l];a.set({source:n,name:l},{...ij(e,s||null),overridden:!!t[l]}),t[l]=!0,r[e.spec.name]=!0})},{}),e.forEach(e=>{let n=e.spec.name,t=i[n];a.set({name:n},{...ij(e,t||null),overriding:!!r[n]})}),t={},n.slice().reverse().forEach(e=>{let i=e.source;e.definitions.forEach(e=>{let n=e.spec.name,r=a.get({source:i,name:n});r&&(r.overriding=!!t[n]),t[n]=!0})}),a}var iy=n(51564);let iC="var-",iD={encode:function(e){return Array.isArray(e)?e.join(","):e},decode:e=>"string"==typeof e?function(e){if(!e)return null;let i=e.split(",");return 1===i.length?i[0]:i}(e):""},iw=(0,u.createContext)(void 0);function iZ(){let e=(0,u.useContext)(iw);if(!e)throw Error("VariableStoreContext not initialized");return e}function iP(e){let i=iZ();return(0,x.s)(i,i=>{let n={};return(e??i.variableDefinitions.map(e=>e.spec.name)).forEach(e=>{let a=i.variableState.get({name:e});a&&!a.overridden&&(n[e]=a)}),i.externalVariableDefinitions.forEach(e=>{let a=e.source;e.definitions.forEach(e=>{let t=e.spec.name,r=i.variableState.get({name:t,source:a});r&&!r.overridden&&(n[t]=r)})}),n},(e,i)=>JSON.stringify(e)===JSON.stringify(i))}function ik(e,i){let n=iZ();return(0,ig.oR)(n,n=>({state:n.variableState.get({name:e,source:i}),definition:((i?n.externalVariableDefinitions.find(e=>e.source===i)?.definitions:n.variableDefinitions)||[]).find(i=>i.spec.name===e)}))}function iS(){let e=iZ();return(0,x.s)(e,e=>({setVariableValue:e.setVariableValue,setVariableLoading:e.setVariableLoading,setVariableOptions:e.setVariableOptions,setVariableDefinitions:e.setVariableDefinitions,setVariableDefaultValues:e.setVariableDefaultValues,getSavedVariablesStatus:e.getSavedVariablesStatus}),m.X)}function iE(){let e=iZ();return(0,ig.oR)(e,e=>e.variableDefinitions)}function iV(){let e=iZ();return(0,ig.oR)(e,e=>e.externalVariableDefinitions)}function iI({children:e,builtinVariables:i}){let n=iP(),t=iE(),r=iV(),{absoluteTimeRange:l}=(0,j.useTimeRange)(),s=(0,u.useMemo)(()=>{let e={};return Object.keys(n).forEach(i=>{let a={...n[i]};if(a.value===b.DEFAULT_ALL_VALUE){let e=ib(t,r).find(e=>e.spec.name===i);e?.kind==="ListVariable"&&e.spec.customAllValue?a.value=e.spec.customAllValue:a.value=a.options?.map(e=>e.value)??null}e[i]=a}),e},[n,t,r]),o=(0,u.useMemo)(()=>{let e=[{kind:"BuiltinVariable",spec:{name:"__from",value:()=>l.start.valueOf().toString(),source:"Dashboard",display:{name:"__from",description:"Start time of the current time range in unix millisecond epoch",hidden:!0}}},{kind:"BuiltinVariable",spec:{name:"__to",value:()=>l.end.valueOf().toString(),source:"Dashboard",display:{name:"__to",description:"End time of the current time range in unix millisecond epoch",hidden:!0}}},{kind:"BuiltinVariable",spec:{name:"__range",value:()=>(0,b.formatDuration)((0,b.intervalToPrometheusDuration)(l)),source:"Dashboard",display:{name:"__range",description:"The range for the current dashboard in human readable format",hidden:!0}}},{kind:"BuiltinVariable",spec:{name:"__range_s",value:()=>((l.end.valueOf()-l.start.valueOf())/1e3).toString(),source:"Dashboard",display:{name:"__range_s",description:"The range for the current dashboard in second",hidden:!0}}},{kind:"BuiltinVariable",spec:{name:"__range_ms",value:()=>(l.end.valueOf()-l.start.valueOf()).toString(),source:"Dashboard",display:{name:"__range_ms",description:"The range for the current dashboard in millisecond",hidden:!0}}}];return i?.forEach(i=>e.push(i)),e},[l,i]);return(0,a.jsx)(j.BuiltinVariableContext.Provider,{value:{variables:o},children:(0,a.jsx)(j.VariableContext.Provider,{value:{state:s},children:e})})}function iG({initialVariableDefinitions:e=[],externalVariableDefinitions:i=[],queryParams:n}){let a=function(e){let i={};return Object.keys(e).forEach(n=>{let a=e[n];a&&(i[n.replace(iC,"")]=a)}),i}(n?n[0]:{});return(0,h.M)()((0,g.mW)((0,f.n)((t,r)=>({variableState:iv(e,a,i),variableDefinitions:e,externalVariableDefinitions:i,setVariableDefinitions(e){t(n=>{n.variableDefinitions=e,n.variableState=iv(e,a,i)},!1,"[Variables] setVariableDefinitions")},setVariableOptions(e,i,n){t(a=>{let t=a.variableState.get({name:e,source:n});t&&(t.options=i)},!1,"[Variables] setVariableOptions")},setVariableLoading(e,i,n){t(a=>{let t=a.variableState.get({name:e,source:n});t&&(t.loading=i)},!1,"[Variables] setVariableLoading")},setVariableValue:(e,i,a)=>t(t=>{let r=i,l=t.variableState.get({name:e,source:a});if(l){if(Array.isArray(r)&&r.includes(b.DEFAULT_ALL_VALUE)&&(r=r.at(-1)===b.DEFAULT_ALL_VALUE?b.DEFAULT_ALL_VALUE:r.filter(e=>e!==b.DEFAULT_ALL_VALUE)),n)(0,n[1])({[`${iC}${e}`]:r});l.value=r}},!1,"[Variables] setVariableValue"),setVariableDefaultValues:()=>{let e=r().variableDefinitions,i=r().variableState,n=(0,im.Uy)(e,e=>{e.forEach((n,a)=>{let t=n.spec.name;if("ListVariable"===n.kind){let r=i.get({name:t});r?.value!==void 0&&(e[a]={kind:"ListVariable",spec:(0,im.Uy)(n.spec,e=>{e.defaultValue=r.value})})}else if("TextVariable"===n.kind){let r=i.get({name:t}),l="string"==typeof r?.value?r.value:"";r?.value!==void 0&&(e[a]={kind:"TextVariable",spec:(0,im.Uy)(n.spec,e=>{e.value=l})})}})});return t(e=>{e.variableDefinitions=n},!1,"[Variables] setVariableDefaultValues"),n},getSavedVariablesStatus:()=>(function(e,i){let n=!1,a=[];for(let t of e){let e=t.spec.name;if("ListVariable"===t.kind){let r=i.get({name:e});r?.value!==null&&r?.value!==t.spec.defaultValue&&(a.push(e),n=!0)}else if("TextVariable"===t.kind){let r=i.get({name:e}),l="string"==typeof r?.value?r.value:"";t.spec.value!==l&&(a.push(e),n=!0)}}return{isSavedVariableModified:n,modifiedVariableNames:a}})(r().variableDefinitions,r().variableState)}))))}function iA({children:e,initialVariableDefinitions:i=[],externalVariableDefinitions:n=[],builtinVariableDefinitions:t=[]}){let[r]=(0,u.useState)(()=>iG({initialVariableDefinitions:i,externalVariableDefinitions:n}));return(0,a.jsx)(iw.Provider,{value:r,children:(0,a.jsx)(iI,{builtinVariables:t,children:e})})}function iT({children:e,initialVariableDefinitions:i=[],externalVariableDefinitions:n=[],builtinVariableDefinitions:t=[]}){let r=function(e){let i={};return e.forEach(e=>{var n;i[n=e.spec.name,`${iC}${n}`]=iD}),(0,iy.useQueryParams)(i,{updateType:"replaceIn"})}(ib(i,n)),[l]=(0,u.useState)(()=>iG({initialVariableDefinitions:i,externalVariableDefinitions:n,queryParams:r}));return(0,a.jsx)(iw.Provider,{value:l,children:(0,a.jsx)(iI,{builtinVariables:t,children:e})})}var iL=n(315),iO=n(59019),iz=n(90190),iR=n(31889),iM=n(14968),i$=n(56174),iB=n(87895),i_=n(49538),iF=n(56656),iN=n(51640),iW=n(85474),iU=n(32964),iH=n(96205),iJ=n(33755),iq=n(58641),iQ=n(22212),iK=n(74081),iY=n(64315),iX=n(14371),i0=n(6849);function i1({builtinVariableDefinitions:e}){let i=(0,u.useMemo)(()=>{let i={};for(let n of e){let e=i[n.spec.source];if(e){e.push(n);continue}i[n.spec.source]=[n]}return i},[e]),n=(0,u.useMemo)(()=>{let e=[];for(let n in i)e.includes(n)||e.push(n);return e},[i]);return(0,a.jsx)(a.Fragment,{children:n.map(e=>(0,a.jsxs)(i_.Z,{sx:e=>({".MuiAccordionSummary-root":{backgroundColor:e.palette.background.lighter},".MuiAccordionDetails-root":{backgroundColor:e.palette.background.lighter}}),children:[(0,a.jsx)(iF.Z,{expandIcon:(0,a.jsx)(i0.default,{}),"aria-controls":"builtin",id:"builtin",children:(0,a.jsx)(eE.Z,{variant:"h2",children:(0,a.jsx)(l.InfoTooltip,{title:`${e} Built-in Variables`,description:"Variables computed during dashboard rendering.",children:(0,a.jsxs)("span",{children:[e," Built-in Variables"]})})})}),(0,a.jsx)(iW.Z,{children:(0,a.jsx)(iO.Z,{children:(0,a.jsxs)(iz.Z,{sx:{minWidth:650},"aria-label":"table of external variables",children:[(0,a.jsx)(iR.Z,{children:(0,a.jsxs)(iM.Z,{children:[(0,a.jsx)(iH.Z,{children:"Name"}),(0,a.jsx)(iH.Z,{children:"Description"})]})}),(0,a.jsx)(i$.Z,{children:(i[e]??[]).map(i=>(0,a.jsxs)(iM.Z,{children:[(0,a.jsx)(iH.Z,{component:"th",scope:"row",sx:{fontWeight:"bold"},children:i.spec.name}),(0,a.jsx)(iH.Z,{children:i.spec.display?.description??""})]},e+"-"+i.spec.name))})]})})})]},e))})}function i2(e){return j.VARIABLE_TYPES.find(i=>i.kind===e)?.label}function i5(e){let[i,n]=(0,iq.x)(e.variableDefinitions),[r,s]=(0,u.useState)(null),[o,d]=(0,u.useState)("update"),c=e.externalVariableDefinitions,p=e.builtinVariableDefinitions,h=(0,u.useMemo)(()=>(function(e){let i=[],n=e.map(e=>e.spec.name),a=new Set(n);return n.length!==a.size&&i.push("Variable names must be unique"),{errors:i,isValid:0===i.length}})(i),[i]),[x]=(0,u.useMemo)(()=>[iv(i,{},c)],[c,i]),g="number"==typeof r&&i[r],{openDiscardChangesConfirmationDialog:f,closeDiscardChangesConfirmationDialog:m}=ej(),b=e=>{n(i=>{i.splice(e,1)})},v=e=>{d("update"),s(e)},y=(e,i)=>{n(n=>{let a=n[e];a&&(a.spec.display||(a.spec.display={name:a.spec.name,hidden:!1}),a.spec.display.hidden=!1===i)})},C=(e,i)=>{n(n=>{if("up"===i){let i=n[e-1],a=n[e];0!==e&&i&&a&&(n[e-1]=a,n[e]=i)}else{let i=n[e+1],a=n[e];if(e===n.length-1||!i||!a)return;n[e+1]=a,n[e]=i}})},D=e=>{n(i=>{i.push(e)})};return(0,a.jsxs)(a.Fragment,{children:[g&&(0,a.jsx)(j.ValidationProvider,{children:(0,a.jsx)(j.VariableEditorForm,{initialVariableDefinition:g,action:o,isDraft:!0,onActionChange:d,onSave:e=>{n(i=>{i[r]=e,s(null)})},onClose:()=>{"create"===o&&b(r),s(null)}})}),!g&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(eZ.Z,{sx:{display:"flex",alignItems:"center",padding:e=>e.spacing(1,2),borderBottom:e=>`1px solid ${e.palette.divider}`},children:[(0,a.jsx)(eE.Z,{variant:"h2",children:"Edit Dashboard Variables"}),(0,a.jsxs)(eI.Z,{direction:"row",spacing:1,marginLeft:"auto",children:[(0,a.jsx)(t.Z,{disabled:e.variableDefinitions===i||!h.isValid,variant:"contained",onClick:()=>{e.onChange(i)},children:"Apply"}),(0,a.jsx)(t.Z,{color:"secondary",variant:"outlined",onClick:()=>{JSON.stringify(e.variableDefinitions)!==JSON.stringify(i)?f({onDiscardChanges:()=>{m(),e.onCancel()},onCancel:()=>{m()},description:"You have unapplied changes. Are you sure you want to discard these changes? Changes cannot be recovered."}):e.onCancel()},children:"Cancel"})]})]}),(0,a.jsx)(eZ.Z,{padding:2,sx:{overflowY:"scroll"},children:(0,a.jsxs)(eI.Z,{spacing:2,children:[(0,a.jsxs)(eI.Z,{spacing:2,children:[!h.isValid&&h.errors.map(e=>(0,a.jsx)(iL.Z,{severity:"error",children:e},e)),(0,a.jsx)(iO.Z,{children:(0,a.jsxs)(iz.Z,{sx:{minWidth:650},"aria-label":"table of variables",children:[(0,a.jsx)(iR.Z,{children:(0,a.jsxs)(iM.Z,{children:[(0,a.jsx)(i4,{children:"Visibility"}),(0,a.jsx)(i4,{children:"Name"}),(0,a.jsx)(i4,{children:"Type"}),(0,a.jsx)(i4,{children:"Description"}),(0,a.jsx)(i4,{align:"right",children:"Actions"})]})}),(0,a.jsx)(i$.Z,{children:i.map((e,n)=>(0,a.jsxs)(iM.Z,{children:[(0,a.jsx)(i4,{component:"th",scope:"row",children:(0,a.jsx)(iB.Z,{checked:e.spec.display?.hidden!==!0,onChange:e=>{y(n,e.target.checked)}})}),(0,a.jsx)(i4,{component:"th",scope:"row",sx:{fontWeight:"bold"},children:(0,a.jsx)(i3,{name:e.spec.name,state:x.get({name:e.spec.name})})}),(0,a.jsx)(i4,{children:i2(e.kind)??e.kind}),(0,a.jsx)(i4,{children:e.spec.display?.description??""}),(0,a.jsxs)(i4,{align:"right",sx:{whiteSpace:"nowrap"},children:[(0,a.jsx)(eV.Z,{onClick:()=>C(n,"up"),disabled:0===n,children:(0,a.jsx)(eL.default,{})}),(0,a.jsx)(eV.Z,{onClick:()=>C(n,"down"),disabled:n===i.length-1,children:(0,a.jsx)(eO.default,{})}),(0,a.jsx)(eV.Z,{onClick:()=>v(n),children:(0,a.jsx)(iQ.default,{})}),(0,a.jsx)(eV.Z,{onClick:()=>b(n),children:(0,a.jsx)(iK.default,{})})]})]},e.spec.name))})]})}),(0,a.jsx)(eZ.Z,{display:"flex",children:(0,a.jsx)(t.Z,{variant:"contained",startIcon:(0,a.jsx)(iJ.default,{}),sx:{marginLeft:"auto"},onClick:()=>{d("create"),n(e=>{e.push({kind:"TextVariable",spec:{name:"NewVariable",value:""}})}),s(i.length)},children:"Add Variable"})})]}),c&&!c.every(e=>0===e.definitions.length)&&c.map((e,i)=>e.definitions.length>0&&(0,a.jsxs)(i_.Z,{sx:e=>({".MuiAccordionSummary-root":{backgroundColor:e.palette.background.lighter},".MuiAccordionDetails-root":{backgroundColor:e.palette.background.lighter}}),children:[(0,a.jsx)(iF.Z,{expandIcon:(0,a.jsx)(i0.default,{}),"aria-controls":e.source,id:e.source,children:(0,a.jsx)(eI.Z,{flexDirection:"row",alignItems:"center",justifyContent:"start",children:(0,a.jsxs)(a.Fragment,{children:[e.tooltip?(0,a.jsx)(eE.Z,{variant:"h2",children:(0,a.jsx)(l.InfoTooltip,{title:e.tooltip.title||"",description:e.tooltip.description||"",children:(0,a.jsxs)("span",{children:[(0,iN.Z)(e.source)," Variables"]})})}):(0,a.jsxs)(eE.Z,{variant:"h2",children:[(0,iN.Z)(e.source)," Variables"]}),e.editLink&&(0,a.jsx)(eV.Z,{href:e.editLink,target:"_blank",children:(0,a.jsx)(iX.default,{fontSize:"small"})})]})})}),(0,a.jsx)(iW.Z,{children:(0,a.jsx)(iO.Z,{children:(0,a.jsxs)(iz.Z,{sx:{minWidth:650},"aria-label":"table of external variables",children:[(0,a.jsx)(iR.Z,{children:(0,a.jsxs)(iM.Z,{children:[(0,a.jsx)(i4,{children:"Visibility"}),(0,a.jsx)(i4,{children:"Name"}),(0,a.jsx)(i4,{children:"Type"}),(0,a.jsx)(i4,{children:"Description"}),(0,a.jsx)(i4,{align:"right",children:"Actions"})]})}),(0,a.jsx)(i$.Z,{children:e.definitions.map(i=>(0,a.jsxs)(iM.Z,{children:[(0,a.jsx)(i4,{component:"th",scope:"row",children:(0,a.jsx)(iB.Z,{checked:i.spec.display?.hidden!==!0,disabled:!0})}),(0,a.jsx)(i4,{component:"th",scope:"row",sx:{fontWeight:"bold"},children:(0,a.jsx)(i3,{name:i.spec.name,state:x.get({name:i.spec.name,source:e.source})})}),(0,a.jsx)(i4,{children:i2(i.kind)??i.kind}),(0,a.jsx)(i4,{children:i.spec.display?.description??""}),(0,a.jsxs)(i4,{align:"right",children:[(0,a.jsx)(iU.Z,{title:"Override",children:(0,a.jsx)(eV.Z,{onClick:()=>D(i),disabled:!!x.get({name:i.spec.name}),children:(0,a.jsx)(iY.default,{})})}),(0,a.jsx)(eV.Z,{disabled:!0,children:(0,a.jsx)(eL.default,{})}),(0,a.jsx)(eV.Z,{disabled:!0,children:(0,a.jsx)(eO.default,{})}),(0,a.jsx)(eV.Z,{disabled:!0,children:(0,a.jsx)(iQ.default,{})}),(0,a.jsx)(eV.Z,{disabled:!0,children:(0,a.jsx)(iK.default,{})})]})]},i.spec.name))})]})})})]},i)),p&&(0,a.jsx)(i1,{builtinVariableDefinitions:p})]})})]})]})}let i4=(0,eq.ZP)(iH.Z)(({theme:e})=>({borderBottom:`solid 1px ${e.palette.divider}`}));function i3(e){let{name:i,state:n}=e;return(0,a.jsxs)(a.Fragment,{children:[!n?.overridden&&`${i} `,!n?.overridden&&n?.overriding&&(0,a.jsx)(eZ.Z,{fontWeight:"normal",color:e=>e.palette.primary.main,children:"(overriding)"}),n?.overridden&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(eZ.Z,{color:e=>e.palette.grey[500],children:i}),(0,a.jsx)(eZ.Z,{fontWeight:"normal",color:e=>e.palette.grey[500],children:"(overridden)"})]})]})}function i8({variant:e="text",label:i="Variables",color:n="primary",fullWidth:r}){let[o,c]=(0,u.useState)(!1),p=iE(),h=iV(),x=(0,j.useBuiltinVariableDefinitions)(),{setVariableDefinitions:g}=iS(),f=()=>{c(!1)};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(l.InfoTooltip,{description:s.editVariables,children:(0,a.jsx)(t.Z,{startIcon:(0,a.jsx)(eT.default,{}),onClick:()=>{c(!0)},"aria-label":s.editVariables,variant:e,color:n,fullWidth:r,sx:d,children:i})}),(0,a.jsx)(l.Drawer,{isOpen:o,onClose:f,PaperProps:{sx:{width:"50%"}},"data-testid":"variable-editor",children:(0,a.jsx)(i5,{variableDefinitions:p,externalVariableDefinitions:h,builtinVariableDefinitions:x,onCancel:f,onChange:e=>{g(e),c(!1)}})})]})}let i6=({label:e="Edit",onClick:i})=>(0,a.jsx)(t.Z,{onClick:i,startIcon:(0,a.jsx)(eT.default,{}),variant:"outlined",color:"secondary",sx:{whiteSpace:"nowrap",minWidth:"auto"},children:e}),i7="Let's get started",i9={edit:"We currently support time series charts, gauge charts, stat charts and more!",view:"This dashboard is currently empty. Get started by clicking the edit button."},ne={variant:"outlined",color:"secondary"},ni=({actions:e,isEditMode:i,onEditButtonClick:n})=>e&&"boolean"!=typeof e?e:!1===e?null:i?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(ew,{variant:"outlined",color:"secondary",label:"Add Panel",fullWidth:!0}),(0,a.jsx)(i8,{variant:"outlined",color:"secondary",label:"Add Variables",fullWidth:!0})]}):n?(0,a.jsx)(i6,{...ne,label:"Edit Dashboard",onClick:n}):null,nn=({title:e=i7,image:i,description:n,additionalText:t,actions:r,onEditButtonClick:l})=>{let{isEditMode:s}=B(),o=s?i9.edit:i9.view,d=(0,a.jsx)(ni,{actions:r,onEditButtonClick:l,isEditMode:s});return(0,a.jsxs)(eZ.Z,{sx:{width:"500px",textAlign:"center",margin:"0 auto"},children:[(0,a.jsxs)(eZ.Z,{sx:{width:"289px",margin:"0 auto"},children:[!!i&&i,(0,a.jsx)(eE.Z,{variant:"h2",gutterBottom:!0,children:e}),(0,a.jsx)(eE.Z,{variant:"body1",children:n??o}),d&&(0,a.jsx)(eZ.Z,{sx:{display:"flex",gap:2,marginTop:1,justifyContent:"center"},children:d})]}),t&&(0,a.jsx)(eE.Z,{variant:"subtitle1",sx:{marginTop:12},children:t})]})};function na({emptyDashboardProps:e,panelOptions:i,...n}){let t=W(),r=(0,u.useRef)(null),s=!t.length,o=r.current?.getBoundingClientRect().top??165,d=window.innerHeight-o-window.scrollY;return(0,a.jsx)(eZ.Z,{...n,sx:{height:"100%"},ref:r,children:(0,a.jsxs)(l.ErrorBoundary,{FallbackComponent:l.ErrorAlert,children:[s&&(0,a.jsx)(eZ.Z,{sx:{height:"100%",display:"flex",alignItems:"center"},children:(0,a.jsx)(nn,{...e})}),!s&&t.map(e=>(0,a.jsx)(ih,{panelGroupId:e,panelOptions:i,panelFullHeight:d},e))]})})}var nt=n(76439),nr=n(70313),nl=n(18873),ns=n(29379),no=n(18971);function nd(){let{panels:e,panelGroups:i,panelGroupOrder:n,setDashboard:a,kind:t,metadata:r,display:l,duration:s,refreshInterval:o,datasources:d,ttl:c}=z(({panels:e,panelGroups:i,panelGroupOrder:n,setDashboard:a,kind:t,metadata:r,display:l,duration:s,refreshInterval:o,datasources:d,ttl:c})=>({panels:e,panelGroups:i,panelGroupOrder:n,setDashboard:a,kind:t,metadata:r,display:l,duration:s,refreshInterval:o,datasources:d,ttl:c})),{setVariableDefinitions:u}=iS(),p=iE(),h=function(e,i){let n=[];return i.map(i=>{let a;let t=e[i];if(void 0===t)throw Error("panel group not found");let{title:r,isCollapsed:l,itemLayouts:s,itemPanelKeys:o}=t;r&&(a={title:r,collapse:{open:!l}});let d={kind:"Grid",spec:{display:a,items:s.map(e=>{let i=o[e.i];if(void 0===i)throw Error(`Missing panel key of layout ${e.i}`);return{x:e.x,y:e.y,width:e.w,height:e.h,content:(0,b.createPanelRef)(i)}})}};n.push(d)}),n}(i,n);return{dashboard:"Dashboard"===t?{kind:t,metadata:r,spec:{display:l,panels:e,layouts:h,variables:p,duration:s,refreshInterval:o,datasources:d}}:{kind:t,metadata:r,spec:{display:l,panels:e,layouts:h,variables:p,duration:s,refreshInterval:o,datasources:d,ttl:c}},setDashboard:e=>{u(e.spec.variables),a(e)}}}function nc(){let{dashboard:e}=nd(),i=(0,u.useRef)(null),[n,t]=p().useState(null),r=!!n,s=(n,a)=>()=>{t(null);let r,l="";switch(n){case"json":r="application/json",l=JSON.stringify(e,null,2);break;case"yaml":if(r="application/yaml","cr"===a){let i=e.metadata.name.toLowerCase().replace(/[^a-z0-9-]/g,"-");l=(0,no.Pz)({apiVersion:"perses.dev/v1alpha1",kind:"PersesDashboard",metadata:{labels:{"app.kubernetes.io/name":"perses-dashboard","app.kubernetes.io/instance":i,"app.kubernetes.io/part-of":"perses-operator"},name:i},namespace:e.metadata.project,spec:e.spec})}else l=(0,no.Pz)(e)}if(!i||!i.current)return;let s=URL.createObjectURL(new Blob([l],{type:r}));i.current.download=`${e.metadata.name}${"cr"===a?"-cr":""}.${n}`,i.current.href=s,i.current.click(),URL.revokeObjectURL(s)};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(l.ToolbarIconButton,{id:"download-dashboard-button","aria-controls":r?"basic-menu":void 0,"aria-haspopup":"true","aria-expanded":r?"true":void 0,onClick:e=>{t(e.currentTarget)},children:(0,a.jsx)(ns.default,{})}),(0,a.jsx)(e8.Z,{id:"download-dashboard-formats",anchorEl:n,open:r,hideBackdrop:!0,onClose:()=>t(null),MenuListProps:{"aria-labelledby":"download-dashboard-button"},children:(0,a.jsx)("div",{children:(0,a.jsx)(nr.d,{onClickAway:()=>t(null),children:(0,a.jsxs)(nl.Z,{children:[(0,a.jsx)(e6.Z,{onClick:s("json"),children:"JSON"}),(0,a.jsx)(e6.Z,{onClick:s("yaml"),children:"YAML"}),(0,a.jsx)(e6.Z,{onClick:s("yaml","cr"),children:"YAML (CR)"})]})})})}),(0,a.jsx)("a",{ref:i,style:{display:"none"}})]})}function nu(e){let[i,n]=(0,iq.x)(e.datasources),[r,l]=(0,u.useState)("update"),[s,o]=(0,u.useState)(null),d={default:!1,plugin:{kind:"PrometheusDatasource",spec:{}}},{openDiscardChangesConfirmationDialog:c,closeDiscardChangesConfirmationDialog:p}=ej(),h=e=>{n(i=>{delete i[e]})},x=e=>{l("update"),o({name:e,spec:i[e]??d})};return(0,a.jsx)(a.Fragment,{children:s?(0,a.jsx)(j.ValidationProvider,{children:(0,a.jsx)(j.DatasourceEditorForm,{initialDatasourceDefinition:s,action:r,isDraft:!0,onActionChange:l,onSave:e=>{n(i=>{delete i[s.name],i[e.name]=e.spec,o(null)})},onClose:()=>{o(null)}})}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(eZ.Z,{sx:{display:"flex",alignItems:"center",padding:e=>e.spacing(1,2),borderBottom:e=>`1px solid ${e.palette.divider}`},children:[(0,a.jsx)(eE.Z,{variant:"h2",children:"Edit Dashboard Datasources"}),(0,a.jsxs)(eI.Z,{direction:"row",spacing:1,marginLeft:"auto",children:[(0,a.jsx)(t.Z,{disabled:e.datasources===i,variant:"contained",onClick:()=>{e.onChange(i)},children:"Apply"}),(0,a.jsx)(t.Z,{color:"secondary",variant:"outlined",onClick:()=>{JSON.stringify(e.datasources)!==JSON.stringify(i)?c({onDiscardChanges:()=>{p(),e.onCancel()},onCancel:()=>{p()},description:"You have unapplied changes. Are you sure you want to discard these changes? Changes cannot be recovered."}):e.onCancel()},children:"Cancel"})]})]}),(0,a.jsx)(eZ.Z,{padding:2,sx:{overflowY:"scroll"},children:(0,a.jsx)(eI.Z,{spacing:2,children:(0,a.jsxs)(eI.Z,{spacing:2,children:[(0,a.jsx)(iO.Z,{children:(0,a.jsxs)(iz.Z,{sx:{minWidth:650},"aria-label":"table of datasources",children:[(0,a.jsx)(iR.Z,{children:(0,a.jsxs)(iM.Z,{children:[(0,a.jsx)(iH.Z,{children:"Name"}),(0,a.jsx)(iH.Z,{children:"Type"}),(0,a.jsx)(iH.Z,{children:"Description"}),(0,a.jsx)(iH.Z,{align:"right",children:"Actions"})]})}),(0,a.jsx)(i$.Z,{children:Object.entries(i).map(([e,i])=>(0,a.jsxs)(iM.Z,{children:[(0,a.jsx)(iH.Z,{component:"th",scope:"row",sx:{fontWeight:"bold"},children:e}),(0,a.jsx)(iH.Z,{children:i.plugin.kind}),(0,a.jsx)(iH.Z,{children:i.display?.description??""}),(0,a.jsxs)(iH.Z,{align:"right",sx:{whiteSpace:"nowrap"},children:[(0,a.jsx)(eV.Z,{onClick:()=>x(e),children:(0,a.jsx)(iQ.default,{})}),(0,a.jsx)(eV.Z,{onClick:()=>h(e),children:(0,a.jsx)(iK.default,{})})]})]},e))})]})}),(0,a.jsx)(eZ.Z,{display:"flex",children:(0,a.jsx)(t.Z,{variant:"contained",startIcon:(0,a.jsx)(iJ.default,{}),sx:{marginLeft:"auto"},onClick:()=>{l("create"),o({name:"NewDatasource",spec:d})},children:"Add Datasource"})})]})})})]})})}function np(){let[e,i]=(0,u.useState)(!1),{getLocalDatasources:n,setLocalDatasources:r,getSavedDatasources:o,setSavedDatasources:c}=(0,j.useDatasourceStore)(),p=n(),h=o(),{dashboard:x,setDashboard:g}=nd(),f=()=>{i(!1)};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(l.InfoTooltip,{description:s.editDatasources,children:(0,a.jsx)(t.Z,{startIcon:(0,a.jsx)(eT.default,{}),onClick:()=>{i(!0)},"aria-label":s.editDatasources,variant:"text",color:"primary",sx:d,children:"Datasources"})}),(0,a.jsx)(l.Drawer,{isOpen:e,onClose:f,PaperProps:{sx:{width:"50%"}},"data-testid":"datasource-editor",children:(0,a.jsx)(nu,{datasources:p,onCancel:f,onChange:e=>{let n=Object.keys(e).filter(i=>{let n="directUrl"in(e[i]?.plugin?.spec??{}),a=!n&&!("directUrl"in(h[i]?.plugin?.spec??{}))&&e[i]?.plugin?.spec?.proxy===h[i]?.plugin?.spec?.proxy;return n||a}).reduce((i,n)=>(i[n]=e[n],i),{});g((x.kind,{...x,spec:{...x.spec,datasources:e}})),c(n),r(e),i(!1)}})})]})}var nh=n(40427);let nx=e=>{let{isReadonly:i}=e,{openEditJsonDialog:n}=ey(),t=i?s.viewJson:s.editJson;return(0,a.jsx)(l.InfoTooltip,{description:t,children:(0,a.jsx)(l.ToolbarIconButton,{"aria-label":t,variant:"outlined",onClick:()=>n(),children:(0,a.jsx)(nh.default,{})})})},ng=({onSave:e,isDisabled:i,variant:n="contained"})=>{let[r,l]=(0,u.useState)(!1),{dashboard:s,setDashboard:o}=nd(),{getSavedVariablesStatus:d,setVariableDefaultValues:c}=iS(),{isSavedVariableModified:p}=d(),{timeRange:h}=(0,j.useTimeRange)(),{setEditMode:x}=B(),{openSaveChangesConfirmationDialog:g,closeSaveChangesConfirmationDialog:f}=em(),m=async()=>{if(e)try{l(!0),await e(s),f(),x(!1)}catch(e){throw Error(`An error occurred while saving the dashboard. ${e}`)}finally{l(!1)}else x(!1)};return(0,a.jsx)(t.Z,{variant:n,onClick:()=>{let e=(0,b.isRelativeTimeRange)(h)&&s.spec.duration!==h.pastDuration;e||p?g({onSaveChanges:(e,i)=>{if((0,b.isRelativeTimeRange)(h)&&!0===e&&(s.spec.duration=h.pastDuration),!0===i){let e=c();s.spec.variables=e}o(s),m()},onCancel:()=>{f()},isSavedDurationModified:e,isSavedVariableModified:p}):m()},disabled:i||r,children:"Save"})};var nf=n(53620),nm=n(13098),nb=n(75186),nj=n(42402),nv=n(75651),ny=n(11774),nC=n(8695),nD=n(37809);function nw({name:e,source:i}){let n=ik(e,i),t=n.definition?.kind;switch(t){case"TextVariable":return(0,a.jsx)(nE,{name:e,source:i});case"ListVariable":return(0,a.jsx)(nS,{name:e,source:i})}return(0,a.jsxs)("div",{children:["Unsupported Variable Kind: $",t]})}function nZ(e,i,n){let a=e?.allowMultiple===!0,t=e?.allowAllValue===!0,r=e?.sort,l=(0,u.useMemo)(()=>n.isFetching??!1,[n.isFetching]),s=(0,u.useMemo)(()=>n.data??[],[n.data]),o=i?.value;a&&!Array.isArray(o)&&(o="string"==typeof o?[o]:[]);let d=(0,u.useMemo)(()=>{let e=s?[...s]:[];if(!r||"none"===r)return e;switch(r){case"alphabetical-asc":return e.sort((e,i)=>e.label>i.label?1:-1);case"alphabetical-desc":return e.sort((e,i)=>e.label>i.label?-1:1);case"numerical-asc":return e.sort((e,i)=>parseInt(e.label)>parseInt(i.label)?1:-1);case"numerical-desc":return e.sort((e,i)=>parseInt(e.label)<parseInt(i.label)?1:-1);case"alphabetical-ci-asc":return e.sort((e,i)=>e.label.toLowerCase()>i.label.toLowerCase()?1:-1);case"alphabetical-ci-desc":return e.sort((e,i)=>e.label.toLowerCase()>i.label.toLowerCase()?-1:1);default:return e}},[s,r]),c=(0,u.useMemo)(()=>{let e=d;return t&&(e=[{value:b.DEFAULT_ALL_VALUE,label:"All"},...e]),e},[t,d]),p=(0,u.useMemo)(()=>!!c.find(e=>a?o.includes(e.value):o===e.value),[c,o,a]);o=(0,u.useMemo)(()=>{let e=c?.[+!!t]?.value;return!e||p&&o&&0!==o.length?o:a?[e]:e},[c,o,p,a,t]);let h=(0,u.useMemo)(()=>Array.isArray(o)?c.filter(e=>o?.includes(e.value)):c.find(e=>o===e.value)??{value:"",label:""},[o,c]);return{value:o,loading:l,options:s,selectedOptions:h,viewOptions:c}}let nP=e=>(0,a.jsx)(nv.Z,{...e,sx:{minWidth:"fit-content"},placement:"bottom-start"}),nk=(e,i)=>{let n=(e.length+1)*8+40*("list"===i);return n<120?120:n>500?500:n};function nS({name:e,source:i}){let n=ik(e,i),t=n.definition,r=(0,j.useListVariablePluginValues)(t),{setVariableValue:l,setVariableLoading:s,setVariableOptions:o}=iS(),{selectedOptions:d,value:c,loading:p,options:h,viewOptions:x}=nZ(t?.spec,n.state,r),[g,f]=(0,u.useState)(120),[m,v]=(0,u.useState)(""),y=t?.spec.display?.name??e,C=t?.spec.allowMultiple===!0,D=t?.spec.allowAllValue===!0;return(0,u.useEffect)(()=>{c&&l(e,c,i)},[l,e,c,i]),(0,u.useEffect)(()=>{s(e,p,i)},[s,e,p,i]),(0,u.useEffect)(()=>{h&&o(e,h,i)},[o,e,h,i]),(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(ny.Z,{disablePortal:!0,disableCloseOnSelect:C,multiple:C,fullWidth:!0,limitTags:3,size:"small",disableClearable:!0,slots:{popper:nP},renderInput:e=>C?(0,a.jsx)(nC.Z,{...e,label:y,onChange:e=>v(e.target.value)}):(0,a.jsx)(nC.Z,{...e,label:y,style:{width:`${g}px`}}),sx:{"& .MuiInputBase-root":{minHeight:"38px"},"& .MuiAutocomplete-tag":{margin:"1px 2px"}},value:d,onChange:(n,a)=>{if((null===a||Array.isArray(a)&&0===a.length)&&D)l(e,b.DEFAULT_ALL_VALUE,i);else l(e,null===a?null:Array.isArray(a)?a.map(e=>e.value):a.value,i)},inputValue:C?m:void 0,onInputChange:(e,i)=>{C||f(nk(i,"list"))},onBlur:()=>{C&&v("")},options:x}),p&&(0,a.jsx)(nD.Z,{})]})}function nE({name:e,source:i}){let n=ik(e,i),t=n.state,r=n.definition,[l,s]=(0,u.useState)(t?.value??""),[o,d]=(0,u.useState)(nk(l,"text")),{setVariableValue:c}=iS();return(0,u.useEffect)(()=>{s(t?.value??"")},[t?.value]),(0,a.jsx)(nC.Z,{title:l,value:l,onChange:e=>{s(e.target.value),d(nk(e.target.value,"text"))},onBlur:()=>c(e,l,i),placeholder:e,label:r?.spec.display?.name??e,slotProps:{input:{readOnly:r?.spec.constant??!1}},sx:{width:`${o}px`,"& .MuiInputBase-root":{minHeight:"38px"},"& .MuiInputBase-input":{textOverflow:"ellipsis"}}})}function nV(){let e=iE(),i=iV();return(0,a.jsxs)(a.Fragment,{children:[i.slice().reverse().map(e=>e.definitions.map(i=>(0,a.jsx)(nI,{spec:i.spec,source:e.source},i.spec.name+e.source))),e.map(e=>(0,a.jsx)(nI,{spec:e.spec},e.spec.name))]})}function nI({spec:e,source:i}){let n=ik(e.name,i);return n.state?.overridden?null:(0,a.jsx)(eZ.Z,{display:e.display?.hidden?"none":void 0,minWidth:"120px",maxWidth:"500px",flexShrink:0,"data-testid":"variable-"+e.name,children:(0,a.jsx)(nw,{name:e.name,source:i},(e.name+i)??"")},(e.name+i)??"")}function nG(e){let[i,n]=(0,u.useState)(e.initialVariableIsSticky),t=(0,nf.Z)({disableHysteresis:!0})&&e.initialVariableIsSticky&&i,r=(0,nt.Z)((0,ek.Z)().breakpoints.up("md"));return(0,a.jsx)(eZ.Z,{marginBottom:-1,"data-testid":"variable-list",children:(0,a.jsx)(nm.Z,{color:"inherit",position:t?"fixed":"static",elevation:4*!!t,sx:{backgroundColor:"inherit",...e.sx},children:(0,a.jsxs)(eZ.Z,{display:"flex",justifyContent:"space-between",sx:{flexDirection:r?"row":"column"},children:[(0,a.jsxs)(eZ.Z,{display:"flex",flexWrap:!t&&r?"wrap":"nowrap",maxWidth:t||!r?"100vw":"100%",maxHeight:"150px",pt:1,pl:+!!t,mt:t&&r?.5:0,ml:t&&r?.5:0,sx:{overflowX:!t&&r?"hidden":"auto",scrollbarWidth:"thin","&::-webkit-scrollbar":{height:"8px",backgroundColor:e=>e.palette.grey["300"]},"&::-webkit-scrollbar-thumb":{background:e=>e.palette.grey["600"]}},gap:1,children:[(0,a.jsx)(nV,{}),e.initialVariableIsSticky&&(0,a.jsx)(eV.Z,{style:{width:"fit-content",height:"fit-content"},onClick:()=>n(!i),children:i?(0,a.jsx)(nb.default,{}):(0,a.jsx)(nj.default,{})})]}),t&&(0,a.jsx)(eI.Z,{m:r?1.5:1,mt:1.5*!!r,ml:r?1.5:"auto",direction:"row",justifyContent:"end",children:(0,a.jsx)(j.TimeRangeControls,{})})]})})})}let nA=e=>{let{dashboardName:i,dashboardTitleComponent:n,initialVariableIsSticky:r,isReadonly:s,isVariableEnabled:o,isDatasourceEnabled:d,onEditButtonClick:c,onCancelButtonClick:u,onSave:p}=e,{isEditMode:h}=B(),x=(0,nt.Z)((0,ek.Z)().breakpoints.up("sm")),g=(0,nt.Z)((0,ek.Z)().breakpoints.up("md")),f=n||(0,a.jsx)(eE.Z,{variant:"h2",children:i});return(0,a.jsx)(a.Fragment,{children:(0,a.jsxs)(eI.Z,{"data-testid":"dashboard-toolbar",children:[(0,a.jsxs)(eZ.Z,{px:2,py:1.5,display:"flex",sx:{backgroundColor:e=>e.palette.primary.main+(h?"30":"0")},children:[f,h?(0,a.jsxs)(eI.Z,{direction:"row",gap:1,ml:"auto",children:[s&&(0,a.jsx)(iL.Z,{severity:"warning",sx:{backgroundColor:"transparent",padding:0},children:"Dashboard managed via code only. Download JSON and commit changes to save."}),(0,a.jsxs)(eI.Z,{direction:"row",spacing:.5,ml:1,whiteSpace:"nowrap",children:[o&&(0,a.jsx)(i8,{}),d&&(0,a.jsx)(np,{}),(0,a.jsx)(ew,{}),(0,a.jsx)(eC,{})]}),(0,a.jsx)(ng,{onSave:p,isDisabled:s}),(0,a.jsx)(t.Z,{variant:"outlined",onClick:u,children:"Cancel"})]}):(0,a.jsx)(a.Fragment,{children:x&&(0,a.jsx)(eI.Z,{direction:"row",gap:1,ml:"auto",children:(0,a.jsx)(i6,{onClick:c})})})]}),(0,a.jsxs)(eZ.Z,{sx:{display:"flex",width:"100%",alignItems:"start",padding:e=>e.spacing(1,2,0,2),flexDirection:g?"row":"column",flexWrap:"nowrap",gap:1},children:[(0,a.jsx)(eZ.Z,{width:"100%",children:(0,a.jsx)(l.ErrorBoundary,{FallbackComponent:l.ErrorAlert,children:(0,a.jsx)(nG,{initialVariableIsSticky:r,sx:{backgroundColor:({palette:e})=>e.background.default}})})}),(0,a.jsx)(eI.Z,{direction:"row",ml:"auto",flexWrap:"wrap",justifyContent:"end",children:(0,a.jsxs)(eI.Z,{direction:"row",spacing:1,mt:1,ml:1,children:[(0,a.jsx)(j.TimeRangeControls,{}),(0,a.jsx)(nc,{}),(0,a.jsx)(nx,{isReadonly:!h})]})})]})]})})},nT=()=>{let{deletePanelDialog:e,closeDeletePanelDialog:i}=ed();return(0,a.jsxs)(l.Dialog,{open:void 0!==e,children:[(0,a.jsx)(l.Dialog.Header,{onClose:()=>i(),children:"Delete Panel"}),e&&(0,a.jsx)(nL,{deletePanelDialog:e})]})},nL=({deletePanelDialog:e})=>{let{deletePanel:i,closeDeletePanelDialog:n}=ed(),{setViewPanel:t}=eh();return(0,a.jsxs)("form",{onSubmit:a=>{a.preventDefault();let{panelGroupItemId:r}=e;i(r),n(),t(void 0)},children:[(0,a.jsxs)(l.Dialog.Content,{children:["Are you sure you want to delete ",e.panelName," from ",e.panelGroupName,"? This action cannot be undone."]}),(0,a.jsxs)(l.Dialog.Actions,{children:[(0,a.jsx)(l.Dialog.PrimaryButton,{children:"Delete"}),(0,a.jsx)(l.Dialog.SecondaryButton,{onClick:()=>n(),children:"Cancel"})]})]})};var nO=n(56873),nz=n(51602),nR=n(19978),nM=n(70616),n$=n(10763);let nB=()=>{let{deletePanelGroupDialog:e,closeDeletePanelGroupDialog:i,deletePanelGroup:n}=en(),{setViewPanel:r}=eh(),l=e?.panelGroupId;return(0,a.jsxs)(nO.Z,{open:void 0!==e,children:[(0,a.jsx)(nz.Z,{children:"Delete Panel Group"}),(0,a.jsx)(eV.Z,{"aria-label":"Close",onClick:()=>i(),sx:e=>({position:"absolute",top:e.spacing(.5),right:e.spacing(.5)}),children:(0,a.jsx)(n$.default,{})}),(0,a.jsxs)("form",{onSubmit:e=>{if(e.preventDefault(),void 0===l)throw Error("group index is undefined");n(l),i(),r(void 0)},children:[(0,a.jsxs)(nR.Z,{dividers:!0,sx:{width:"500px"},children:["Are you sure you want to delete ",e?.panelGroupName??"panel group","? This will delete all the panels within the group."]}),(0,a.jsxs)(nM.Z,{children:[(0,a.jsx)(t.Z,{variant:"contained",type:"submit",children:"Delete"}),(0,a.jsx)(t.Z,{variant:"outlined",color:"secondary",onClick:()=>i(),children:"Cancel"})]})]})]})},n_=()=>{let{discardChangesConfirmationDialog:e}=ej();return void 0===e?null:(0,a.jsx)(l.DiscardChangesConfirmationDialog,{description:e.description||"You have unsaved changes in this dashboard. Are you sure you want to discard these changes? Changes cannot be recovered.",isOpen:!0,onCancel:e.onCancel,onDiscardChanges:e.onDiscardChanges})};var nF=n(90192);let nN=e=>{let{isReadonly:i,disableMetadataEdition:n}=e,{editJsonDialog:t,closeEditJsonDialog:r}=ey();return(0,a.jsxs)(l.Dialog,{open:!!t?.isOpen,scroll:"paper",fullWidth:!0,maxWidth:"lg",children:[(0,a.jsxs)(l.Dialog.Header,{onClose:()=>r(),children:[!i&&"Edit "," Dashboard JSON"]}),t?.isOpen&&(0,a.jsx)(nW,{isReadonly:i,disableMetadataEdition:n})]})},nW=e=>{let{isReadonly:i,disableMetadataEdition:n}=e,{closeEditJsonDialog:t}=ey(),{setTimeRange:r,setRefreshInterval:s}=(0,j.useTimeRange)(),{dashboard:o,setDashboard:d}=nd(),{setLocalDatasources:c}=(0,j.useDatasourceStore)(),[p,h]=(0,u.useState)(o),x=e=>{e.preventDefault(),d(p),r({pastDuration:p.spec.duration}),s(p.spec.refreshInterval??"0s"),c(p.spec.datasources??{}),t()},g=e=>{try{let i=JSON.parse(e??"{}");h(i)}catch(e){}};return(0,a.jsxs)(l.Dialog.Form,{onSubmit:x,children:[(0,a.jsxs)(l.Dialog.Content,{sx:{width:"100%"},children:[n&&!i&&(0,a.jsx)(iL.Z,{sx:{marginBottom:e=>e.spacing(1)},severity:"warning",children:"Metadata cannot be modified or saved."}),"EphemeralDashboard"===p.kind&&(0,a.jsx)(iL.Z,{sx:{marginBottom:1},severity:"warning",children:"Time-to-live cannot be modified or saved from here. Go to the project view to modify it."}),(0,a.jsx)(nF.Z,{fullWidth:!0,children:(0,a.jsx)(l.JSONEditor,{minHeight:"300px",maxHeight:"70vh",value:p,onChange:e=>g(e),readOnly:i})})]}),!i&&(0,a.jsx)(l.Dialog.Actions,{children:(0,a.jsx)(l.Dialog.PrimaryButton,{onClick:x,children:"Apply"})})]})};var nU=n(38359),nH=n(36679),nJ=n(494);function nq({panelDefinition:e}){let i=(0,u.useRef)(null),n=840;null!==i.current&&(n=i.current.getBoundingClientRect().width);let t=(0,j.useSuggestedStepMs)(n),{data:r,isPending:l}=(0,j.usePlugin)("Panel",e.spec.plugin.kind);if(l||""===e.spec.plugin.kind)return null;let s=e.spec.queries??[],o=s.length?s.map(e=>({kind:e.spec.plugin.kind,spec:e.spec.plugin.spec})):[];return(0,a.jsx)(eZ.Z,{ref:i,height:300,children:(0,a.jsx)(j.DataQueriesProvider,{definitions:o,options:{suggestedStepMs:t,...r?.queryOptions},children:(0,a.jsx)(id,{definition:e})})})}let nQ=e=>{let{display:i,plugin:n,queries:a,links:t}=e.spec,[r,l]=(0,u.useState)(i.name),[s,o]=(0,u.useState)(i.description),[d,c]=(0,u.useState)(t),[p,h]=(0,u.useState)(n),[x,g]=(0,u.useState)(a),[f,m]=(0,u.useState)(a),b=(0,u.useCallback)((e,i)=>{i?(g(f),m(void 0)):m(void 0===e?x:e)},[m,f,g,x]),j=(0,u.useCallback)(e=>{let{display:i,plugin:n,queries:a,links:t}=e.spec;l(i.name),o(i.description),c(t),h(n),b(a)},[l,o,c,h,b]);return(0,u.useMemo)(()=>({panelDefinition:{kind:"Panel",spec:{display:{name:r,description:s},plugin:p,queries:f,links:d}},setName:l,setDescription:o,setLinks:c,setQueries:b,setPlugin:h,setPanelDefinition:j}),[r,s,d,p,f,b,j])};function nK(e){let{initialValues:i,initialAction:n,onSave:r,onClose:s}=e,o=H(),{panelDefinition:d,setName:c,setDescription:p,setLinks:h,setQueries:x,setPlugin:g,setPanelDefinition:f}=nQ(i.panelDefinition),{plugin:m}=d.spec,[b,v]=(0,u.useState)(!1),{panelEditorSchema:y}=(0,j.useValidationSchemas)(),C=(0,nH.useForm)({resolver:(0,nJ.F)(y),mode:"onBlur",defaultValues:i}),D=(0,j.usePluginEditor)({pluginTypes:["Panel"],value:{selection:{kind:m.kind,type:"Panel"},spec:m.spec},onChange:e=>{C.setValue("panelDefinition.spec.plugin",{kind:e.selection.kind,spec:e.spec}),g({kind:e.selection.kind,spec:e.spec})},onHideQueryEditorChange:e=>{x(void 0,e)}}),w=(0,j.getTitleAction)(n,!0),Z=(0,j.getSubmitText)(n,!0),P=(0,nH.useWatch)({control:C.control,name:"panelDefinition.spec.links"});(0,u.useEffect)(()=>{h(P)},[h,P]);let k=(0,nH.useWatch)({control:C.control,name:"panelDefinition.spec.display.name"}),S=(0,nH.useWatch)({control:C.control,name:"panelDefinition.spec.display.description"}),E=(0,nH.useWatch)({control:C.control,name:"panelDefinition.spec.plugin.kind"});return(0,a.jsxs)(nH.FormProvider,{...C,children:[(0,a.jsxs)(eZ.Z,{sx:{display:"flex",alignItems:"center",padding:e=>e.spacing(1,2),borderBottom:e=>`1px solid ${e.palette.divider}`},children:[(0,a.jsxs)(eE.Z,{variant:"h2",children:[w," Panel"]}),(0,a.jsxs)(eI.Z,{direction:"row",spacing:1,marginLeft:"auto",children:[(0,a.jsx)(t.Z,{variant:"contained",disabled:!C.formState.isValid,onClick:C.handleSubmit(e=>{r(e)}),children:Z}),(0,a.jsx)(t.Z,{color:"secondary",variant:"outlined",onClick:function(){JSON.stringify(i)!==JSON.stringify(C.getValues())?v(!0):s()},children:"Cancel"})]})]}),(0,a.jsx)(eZ.Z,{id:nY,sx:{flex:1,overflowY:"scroll",padding:e=>e.spacing(2)},children:(0,a.jsxs)(nU.ZP,{container:!0,spacing:2,children:[(0,a.jsx)(nU.ZP,{item:!0,xs:8,children:(0,a.jsx)(nH.Controller,{control:C.control,name:"panelDefinition.spec.display.name",render:({field:e,fieldState:i})=>(0,a.jsx)(nC.Z,{...e,required:!0,fullWidth:!0,label:"Name",error:!!i.error,helperText:i.error?.message,value:k??"",onChange:i=>{e.onChange(i),c(i.target.value)}})})}),(0,a.jsx)(nU.ZP,{item:!0,xs:4,children:(0,a.jsx)(nH.Controller,{control:C.control,name:"groupId",render:({field:e,fieldState:i})=>(0,a.jsx)(nC.Z,{select:!0,...e,required:!0,fullWidth:!0,label:"Group",error:!!i.error,helperText:i.error?.message,onChange:i=>{e.onChange(i)},children:o.map((e,i)=>(0,a.jsx)(e6.Z,{value:e.id,children:e.title??`Group ${i+1}`},e.id))})})}),(0,a.jsx)(nU.ZP,{item:!0,xs:8,children:(0,a.jsx)(nH.Controller,{control:C.control,name:"panelDefinition.spec.display.description",render:({field:e,fieldState:i})=>(0,a.jsx)(nC.Z,{...e,fullWidth:!0,label:"Description",error:!!i.error,helperText:i.error?.message,value:S??"",onChange:i=>{e.onChange(i),p(i.target.value)}})})}),(0,a.jsx)(nU.ZP,{item:!0,xs:4,children:(0,a.jsx)(nH.Controller,{control:C.control,name:"panelDefinition.spec.plugin.kind",render:({field:e,fieldState:i})=>(0,a.jsx)(j.PluginKindSelect,{...e,pluginTypes:["Panel"],required:!0,fullWidth:!0,label:"Type",disabled:D.isLoading,error:!!D.error||!!i.error,helperText:D.error?.message??i.error?.message,value:{type:"Panel",kind:E},onChange:i=>{e.onChange(i.kind),D.onSelectionChange(i)}})})}),(0,a.jsxs)(nU.ZP,{item:!0,xs:12,children:[(0,a.jsx)(eE.Z,{variant:"h4",marginBottom:1,children:"Preview"}),(0,a.jsx)(l.ErrorBoundary,{FallbackComponent:l.ErrorAlert,children:(0,a.jsx)(nq,{panelDefinition:d})})]}),(0,a.jsx)(nU.ZP,{item:!0,xs:12,children:(0,a.jsx)(l.ErrorBoundary,{FallbackComponent:l.ErrorAlert,children:(0,a.jsx)(j.PanelSpecEditor,{control:C.control,panelDefinition:d,onJSONChange:e=>{let i=JSON.parse(e),{kind:n,spec:a}=i.spec.plugin;d.spec.plugin.kind!==n&&JSON.stringify(d.spec.plugin.spec)!==JSON.stringify(a)&&D.rememberCurrentSpecState(),f(i)},onQueriesChange:e=>{x(e)},onPluginSpecChange:e=>{D.onSpecChange(e)}})})})]})}),(0,a.jsx)(l.DiscardChangesConfirmationDialog,{description:"You have unapplied changes in this panel. Are you sure you want to discard these changes? Changes cannot be recovered.",isOpen:b,onCancel:()=>{v(!1)},onDiscardChanges:()=>{v(!1),s()}})]})}let nY="panel-editor-form",nX=()=>{let e=es(),[i,n]=(0,u.useState)(!1),t=void 0!==e&&!1===i;return(0,a.jsx)(l.Drawer,{isOpen:t,onClose:()=>{},SlideProps:{onExited:()=>{e?.close(),n(!1)}},"data-testid":"panel-editor",children:e&&(0,a.jsx)(l.ErrorBoundary,{FallbackComponent:l.ErrorAlert,children:(0,a.jsx)(nK,{initialAction:e.mode,initialValues:e.initialValues,onSave:function(i){if(void 0===e||void 0===i)throw Error("Cannot apply changes");e.applyChanges(i),n(!0)},onClose:()=>{n(!0)}})})})};var n0=n(68808),n1=n(63767);function n2(e){let{initialValues:i,onSubmit:n}=e,[t,r]=(0,u.useState)(i.title),[l,s]=(0,u.useState)(i.isCollapsed);return(0,a.jsxs)("form",{id:n5,onSubmit:e=>{e.preventDefault(),n({title:t,isCollapsed:l})},children:[(0,a.jsx)(nF.Z,{fullWidth:!0,margin:"normal",children:(0,a.jsx)(nC.Z,{required:!0,label:"Name",variant:"outlined",value:t,onChange:e=>r(e.target.value)})}),(0,a.jsxs)(nF.Z,{fullWidth:!0,margin:"normal",children:[(0,a.jsx)(n0.Z,{id:"select-collapse-state",children:"Collapse State"}),(0,a.jsxs)(n1.Z,{required:!0,displayEmpty:!0,labelId:"select-collapse-state",label:"Collapse State",size:"small",value:l?"Closed":"Open",onChange:e=>{s("Closed"===e.target.value)},children:[(0,a.jsx)(e6.Z,{value:"Open",children:"Open"}),(0,a.jsx)(e6.Z,{value:"Closed",children:"Closed"})]})]})]})}let n5="panel-group-editor-form";function n4(){let e=ee(),[i,n]=(0,u.useState)(!1),r=()=>n(!0),l=void 0!==e&&!1===i;return(0,a.jsx)(nO.Z,{open:l,TransitionProps:{onExited:()=>{e?.close(),n(!1)}},children:void 0!==e&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(nz.Z,{children:[e.mode," Panel Group"]}),(0,a.jsx)(eV.Z,{"aria-label":"Close",onClick:e.close,sx:e=>({position:"absolute",top:e.spacing(.5),right:e.spacing(.5)}),children:(0,a.jsx)(n$.default,{})}),(0,a.jsx)(nR.Z,{dividers:!0,sx:{width:"500px"},children:(0,a.jsx)(n2,{initialValues:e.initialValues,onSubmit:i=>{if(void 0===e)throw Error("Cannot apply changes");e.applyChanges(i),r()}})}),(0,a.jsxs)(nM.Z,{children:[(0,a.jsx)(t.Z,{variant:"contained",type:"submit",form:n5,children:"Edit"===e.mode?"Apply":"Add"}),(0,a.jsx)(t.Z,{variant:"outlined",color:"secondary",onClick:e.close,children:"Cancel"})]})]})})}var n3=n(28866),n8=n(68e3);function n6(e){let{showTotalQueries:i=!0}=e,n=(0,j.useDatasourceClient)({kind:"PrometheusDatasource"}),{absoluteTimeRange:r}=(0,j.useTimeRange)(),l=(0,n8.NL)().getQueryCache().findAll(),s=l.filter(e=>"pending"===e.state.status),o=l.filter(e=>"success"===e.state.status),d=(0,j.useActiveTimeSeriesQueries)();if(!0===n.isLoading)return null;let c=[];return d.forEach(e=>{let i=e.state.data;if(i&&i.metadata?.notices){let n=e.queryKey,a=i.metadata.notices[0]?.message;a&&c.push({query:String(n[0].spec.plugin.spec.query),summary:a})}}),(0,a.jsxs)(eI.Z,{spacing:1,mb:2,sx:{maxWidth:1e3},children:[(0,a.jsxs)(eZ.Z,{sx:{p:1},children:[(0,a.jsx)(eE.Z,{variant:"h2",mb:1,children:"Query Summary"}),(0,a.jsx)(iO.Z,{component:n3.Z,children:(0,a.jsxs)(iz.Z,{size:"small","aria-label":"query summary table",children:[(0,a.jsx)(iR.Z,{children:(0,a.jsxs)(iM.Z,{children:[(0,a.jsx)(iH.Z,{children:"Queries Loading"}),(0,a.jsx)(iH.Z,{children:"Recent Time Series Queries"}),i&&(0,a.jsx)(iH.Z,{children:"Total Queries"}),(0,a.jsx)(iH.Z,{children:"Start Time"}),(0,a.jsx)(iH.Z,{children:"End Time"})]})}),(0,a.jsx)(i$.Z,{children:(0,a.jsxs)(iM.Z,{children:[(0,a.jsx)(iH.Z,{children:s.length}),(0,a.jsx)(iH.Z,{children:d.length}),i&&(0,a.jsx)(iH.Z,{children:o.length}),(0,a.jsx)(iH.Z,{children:r.start.toString()}),(0,a.jsx)(iH.Z,{children:r.end.toString()})]})})]})})]}),c.length>0&&(0,a.jsxs)(eZ.Z,{sx:{p:1,m:0},children:[(0,a.jsx)(eE.Z,{variant:"h3",mb:1,children:"Warnings"}),(0,a.jsx)(iO.Z,{component:n3.Z,sx:{mb:2},children:(0,a.jsxs)(iz.Z,{size:"small","aria-label":"query warnings table",children:[(0,a.jsx)(iR.Z,{children:(0,a.jsxs)(iM.Z,{children:[(0,a.jsx)(iH.Z,{children:"Query"}),(0,a.jsx)(iH.Z,{children:"Summary"})]})}),(0,a.jsx)(i$.Z,{children:c.map((e,i)=>(0,a.jsxs)(iM.Z,{children:[(0,a.jsx)(iH.Z,{children:e.query}),(0,a.jsx)(iH.Z,{children:e.summary})]},i))})]})}),(0,a.jsx)(t.Z,{disabled:!0,variant:"outlined",children:"TODO: Action Button"})]})]})}var n7=n(85843),n9=n(28797),ae=n(82707);let ai=()=>{let{saveChangesConfirmationDialog:e}=em(),i=e?.isSavedDurationModified??!0,n=e?.isSavedVariableModified??!0,[t,r]=(0,u.useState)(i),[s,o]=(0,u.useState)(n),{getSavedVariablesStatus:d}=iS(),{modifiedVariableNames:c}=d(),p=void 0!==e,{timeRange:h}=(0,j.useTimeRange)(),x=(0,b.isRelativeTimeRange)(h)?`(Last ${h.pastDuration})`:"(Absolute time ranges can not be saved)",g=`Save current time range as new default ${x}`,f=`Save current variable values as new default (${c.length>0?c.join(", "):"No modified variables"})`;return(0,a.jsx)(l.Dialog,{open:p,children:void 0!==e&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(l.Dialog.Header,{onClose:()=>e.onCancel(),children:"Save Dashboard"}),(0,a.jsxs)(l.Dialog.Content,{children:[(0,a.jsx)(eE.Z,{marginBottom:2,children:e.description||b.SAVE_DEFAULTS_DIALOG_TEXT}),(0,a.jsxs)(n7.Z,{children:[(0,a.jsx)(n9.Z,{control:(0,a.jsx)(ae.Z,{disabled:!i||!(0,b.isRelativeTimeRange)(h),checked:t&&i&&(0,b.isRelativeTimeRange)(h),onChange:e=>r(e.target.checked)}),label:g}),(0,a.jsx)(n9.Z,{control:(0,a.jsx)(ae.Z,{disabled:!n,checked:s&&n,onChange:e=>o(e.target.checked)}),label:f})]})]}),(0,a.jsxs)(l.Dialog.Actions,{children:[(0,a.jsx)(l.Dialog.PrimaryButton,{onClick:()=>e.onSaveChanges(t,s),children:"Save Changes"}),(0,a.jsx)(l.Dialog.SecondaryButton,{onClick:()=>e.onCancel(),children:"Cancel"})]})]})})};function an(e){let{projectName:i,datasourceApi:n,onCreate:t,children:r}=e,[l,s]=(0,u.useState)(e.dashboardResource),[o,d]=(0,u.useState)(e.savedDatasources??{}),c=i??l?.metadata.project,{getPlugin:p,listPluginMetadata:h}=(0,j.usePluginRegistry)(),x=(0,b.useEvent)(async e=>{if(l){let{datasources:i}=l.spec,a=function(e,i){if(void 0===e)return;if(void 0!==i.name){let n=e[i.name];if(void 0===n)return;return n.plugin.kind===i.kind?{name:i.name,spec:n}:void 0}let n=Object.entries(e).find(e=>e[1].plugin.kind===i.kind&&e[1].default);if(n)return{name:n[0],spec:n[1]}}(i,e);if(void 0!==a)return{spec:a.spec,proxyUrl:aa(n,{project:l.metadata.project,dashboard:l.metadata.name,name:a.name})}}if(c){let i=await n.getDatasource(c,e);if(void 0!==i)return{spec:i.spec,proxyUrl:aa(n,{project:i.metadata.project,name:i.metadata.name})}}let i=await n.getGlobalDatasource(e);if(void 0!==i)return{spec:i.spec,proxyUrl:aa(n,{name:i.metadata.name})};throw Error(`No datasource found for kind '${e.kind}' and name '${e.name}'`)}),g=(0,u.useCallback)(async e=>{let{spec:i}=await x(e);return i},[x]),f=(0,u.useCallback)(async function(e){let{kind:i}=e,[{spec:n,proxyUrl:a},r]=await Promise.all([x(e),p("Datasource",i)]),l=r.createClient(n.plugin.spec,{proxyUrl:a});return void 0!==t?t(l):l},[x,p,t]),m=(0,b.useEvent)(async e=>{let[i,a,t]=await Promise.all([h(["Datasource"]),c?n.listDatasources(c,e):[],n.listGlobalDatasources(e)]),r=i.find(i=>i.spec.name===e);if(void 0===r)throw Error(`Could not find a Datasource plugin with kind '${e}'`);let{results:s,addItem:d}=function(e){let i=[],n=new Set,a=!0,t=!1,r={},l=1;return{results:i,addItem:({spec:s,selectorName:o,selectorGroup:d,editLink:c,saved:u})=>{d=d??"",a&&i.push({group:`Default ${e}`,items:[]});let p=i[r[d]??-1];!p&&(r[d]=l,p={items:[],group:d,editLink:c},i[l]=p,l++);let h=n.has(o);p.items.push({name:s.display?.name??o,overridden:h,saved:u,selector:{kind:s.plugin.kind,name:o,group:d}}),n.add(o);let x=!h&&s.default&&!t;if(i[0]&&(a||x)&&(i[0].items=[{name:`Default (${o} from ${d})`,selector:{kind:s.plugin.kind}}],t=x),h)for(let e=+!!t;e<l;e++)(i[e]?.items??[]).filter(e=>e.selector.name===o).forEach(e=>{e.overriding=!0});a=!1}}}(r.spec.display.name);if(l?.spec.datasources)for(let i in l.spec.datasources){let n=l.spec.datasources[i];if(void 0===n||n.plugin.kind!==e)continue;let a=i in o;d({spec:n,selectorName:i,selectorGroup:"dashboard",saved:a})}for(let e of a){let i=e.metadata.name;d({spec:e.spec,selectorName:i,selectorGroup:"project",editLink:`/projects/${c}/datasources`})}for(let e of t){let i=e.metadata.name;d({spec:e.spec,selectorName:i,selectorGroup:"global",editLink:"/admin/datasources"})}return s}),v=(0,u.useCallback)(()=>l?.spec.datasources??{},[l]),y=(0,u.useCallback)(()=>o,[o]),C=(0,u.useCallback)(e=>{l&&s((l.kind,{...l,spec:{...l.spec,datasources:e}}))},[l]),D=(0,u.useMemo)(()=>({getDatasource:g,getDatasourceClient:f,getLocalDatasources:v,setLocalDatasources:C,setSavedDatasources:d,getSavedDatasources:y,listDatasourceSelectItems:m}),[g,f,v,C,m,d,y]);return(0,a.jsx)(j.DatasourceStoreContext.Provider,{value:D,children:r})}function aa(e,i){return e.buildProxyUrl?e.buildProxyUrl(i):""}function at({children:e,initialState:i}){let[n,t]=(0,iy.useQueryParam)("viewPanelRef",iy.StringParam);return(0,a.jsx)(R,{initialState:{viewPanelRef:n??void 0,setViewPanelRef:t,...i},children:e})}let ar=e=>{let{dashboardResource:i,dashboardTitleComponent:n,emptyDashboardProps:t,onSave:r,onDiscard:s,initialVariableIsSticky:o,isReadonly:d,isVariableEnabled:c,isDatasourceEnabled:p,isCreating:h}=e,x=(0,l.useChartsTheme)(),{isEditMode:g,setEditMode:f}=B(),{dashboard:m,setDashboard:b}=nd(),[v,y]=(0,u.useState)(void 0),{setSavedDatasources:C}=(0,j.useDatasourceStore)(),{openDiscardChangesConfirmationDialog:D,closeDiscardChangesConfirmationDialog:w}=ej(),Z=()=>{v&&b(v),f(!1),w(),s&&s(m)},P=()=>{f(!0),y(m),C(m.spec.datasources??{})};return(0,a.jsxs)(eZ.Z,{sx:{flexGrow:1,overflowX:"hidden",overflowY:"auto",display:"flex",flexDirection:"column"},children:[(0,a.jsx)(nA,{dashboardName:i.metadata.name,dashboardTitleComponent:n,initialVariableIsSticky:o,onSave:r,isReadonly:d,isVariableEnabled:c,isDatasourceEnabled:p,onEditButtonClick:P,onCancelButtonClick:()=>{JSON.stringify(m)===JSON.stringify(v)?f(!1):D({onDiscardChanges:()=>{Z()},onCancel:()=>{w()}})}}),(0,a.jsxs)(eZ.Z,{sx:{paddingTop:2,paddingX:2,height:"100%"},children:[(0,a.jsx)(l.ErrorBoundary,{FallbackComponent:l.ErrorAlert,children:(0,a.jsx)(na,{emptyDashboardProps:{onEditButtonClick:P,...t}})}),(0,a.jsx)(l.ChartsProvider,{chartsTheme:x,enablePinning:!1,children:(0,a.jsx)(nX,{})}),(0,a.jsx)(n4,{}),(0,a.jsx)(nB,{}),(0,a.jsx)(nT,{}),(0,a.jsx)(n_,{}),(0,a.jsx)(nN,{isReadonly:!g,disableMetadataEdition:!h}),(0,a.jsx)(ai,{})]})]})};function al(e){let{dashboardResource:i,datasourceApi:n,externalVariableDefinitions:t,dashboardTitleComponent:r,emptyDashboardProps:s,onSave:o,onDiscard:d,initialVariableIsSticky:c,isReadonly:p,isVariableEnabled:h,isDatasourceEnabled:x,isEditing:g,isCreating:f,sx:m,...v}=e,{spec:y}=i,C=y.duration??b.DEFAULT_DASHBOARD_DURATION,D=y.refreshInterval??b.DEFAULT_REFRESH_INTERVAL,w=(0,j.useInitialTimeRange)(C),Z=(0,j.useInitialRefreshInterval)(D),{data:P}=(0,j.usePluginBuiltinVariableDefinitions)(),k=(0,u.useMemo)(()=>{let e=[{kind:"BuiltinVariable",spec:{name:"__dashboard",value:()=>i.metadata.name,source:"Dashboard",display:{name:"__dashboard",description:"The name of the current dashboard",hidden:!0}}},{kind:"BuiltinVariable",spec:{name:"__project",value:()=>i.metadata.project,source:"Dashboard",display:{name:"__project",description:"The name of the current dashboard project",hidden:!0}}}];return P&&P.forEach(i=>e.push(i)),e},[i.metadata.name,i.metadata.project,P]);return(0,a.jsx)(an,{dashboardResource:i,datasourceApi:n,children:(0,a.jsx)(at,{initialState:{dashboardResource:i,isEditMode:!!g},children:(0,a.jsx)(j.TimeRangeProviderWithQueryParams,{initialTimeRange:w,initialRefreshInterval:Z,children:(0,a.jsx)(iT,{initialVariableDefinitions:y.variables,externalVariableDefinitions:t,builtinVariableDefinitions:k,children:(0,a.jsx)(eZ.Z,{sx:(0,l.combineSx)({display:"flex",width:"100%",height:"100%",position:"relative",overflow:"hidden"},m),...v,children:(0,a.jsx)(l.ErrorBoundary,{FallbackComponent:l.ErrorAlert,children:(0,a.jsx)(ar,{dashboardResource:i,dashboardTitleComponent:r,emptyDashboardProps:s,onSave:o,onDiscard:d,initialVariableIsSticky:c,isReadonly:p,isVariableEnabled:h,isDatasourceEnabled:x,isCreating:f})})})})})})})}}}]);