@deephaven/code-studio 1.10.2-lerna-v9.0 → 1.10.2

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/build/assets/{AppRoot-Dsp0-nx9.js → AppRoot-BY4a1UaK.js} +6 -6
  2. package/build/assets/{AppRoot-Dsp0-nx9.js.map → AppRoot-BY4a1UaK.js.map} +1 -1
  3. package/build/assets/{Chart-P_gTGGZ1.js → Chart-DmqNQtr3.js} +2 -2
  4. package/build/assets/{Chart-P_gTGGZ1.js.map → Chart-DmqNQtr3.js.map} +1 -1
  5. package/build/assets/{ControlType-lgZLQmfY.js → ControlType-RBsIk8KS.js} +4 -4
  6. package/build/assets/{ControlType-lgZLQmfY.js.map → ControlType-RBsIk8KS.js.map} +1 -1
  7. package/build/assets/{FormatterUtils-C9ixv8yB.js → FormatterUtils-C3xgIs6_.js} +2 -2
  8. package/build/assets/{FormatterUtils-C9ixv8yB.js.map → FormatterUtils-C3xgIs6_.js.map} +1 -1
  9. package/build/assets/{Grid-DQPrZJGB.js → Grid-B7dO0Sbi.js} +2 -2
  10. package/build/assets/{Grid-DQPrZJGB.js.map → Grid-B7dO0Sbi.js.map} +1 -1
  11. package/build/assets/{GridTokenMouseHandler-X2JErABm.js → GridTokenMouseHandler-Ds5xKqrO.js} +2 -2
  12. package/build/assets/{GridTokenMouseHandler-X2JErABm.js.map → GridTokenMouseHandler-Ds5xKqrO.js.map} +1 -1
  13. package/build/assets/{IrisGrid-m82zJTmT.js → IrisGrid-CFqfz-_M.js} +2 -2
  14. package/build/assets/{IrisGrid-m82zJTmT.js.map → IrisGrid-CFqfz-_M.js.map} +1 -1
  15. package/build/assets/{IrisGridModel-BWX_u8pv.js → IrisGridModel-CfNBLna8.js} +3 -3
  16. package/build/assets/{IrisGridModel-BWX_u8pv.js.map → IrisGridModel-CfNBLna8.js.map} +1 -1
  17. package/build/assets/{IrisGridShortcuts-QN2zgZUQ.js → IrisGridShortcuts-Bw5ADLgT.js} +2 -2
  18. package/build/assets/{IrisGridShortcuts-QN2zgZUQ.js.map → IrisGridShortcuts-Bw5ADLgT.js.map} +1 -1
  19. package/build/assets/{IrisGridThemeProvider-DtrPDGfJ.js → IrisGridThemeProvider-CggmgZiA.js} +2 -2
  20. package/build/assets/{IrisGridThemeProvider-DtrPDGfJ.js.map → IrisGridThemeProvider-CggmgZiA.js.map} +1 -1
  21. package/build/assets/{LocalWorkspaceStorage-C6dxwi4z.js → LocalWorkspaceStorage-DXAI74vd.js} +2 -2
  22. package/build/assets/{LocalWorkspaceStorage-C6dxwi4z.js.map → LocalWorkspaceStorage-DXAI74vd.js.map} +1 -1
  23. package/build/assets/{MarkdownEditor-B4WFJDBT.js → MarkdownEditor-CjiUT8XD.js} +2 -2
  24. package/build/assets/{MarkdownEditor-B4WFJDBT.js.map → MarkdownEditor-CjiUT8XD.js.map} +1 -1
  25. package/build/assets/{MarkdownNotebook-Bw-fDcJ8.js → MarkdownNotebook-CsCP6Muy.js} +2 -2
  26. package/build/assets/{MarkdownNotebook-Bw-fDcJ8.js.map → MarkdownNotebook-CsCP6Muy.js.map} +1 -1
  27. package/build/assets/{MissingPartitionError-Cw7iLwy0.js → MissingPartitionError-DXkc6F4C.js} +2 -2
  28. package/build/assets/{MissingPartitionError-Cw7iLwy0.js.map → MissingPartitionError-DXkc6F4C.js.map} +1 -1
  29. package/build/assets/{MockChartModel-C5m_XRVw.js → MockChartModel-B0Gv2sr1.js} +2 -2
  30. package/build/assets/{MockChartModel-C5m_XRVw.js.map → MockChartModel-B0Gv2sr1.js.map} +1 -1
  31. package/build/assets/{StyleGuideRoot-DGm-hysw.js → StyleGuideRoot-BAYFLFTM.js} +2 -2
  32. package/build/assets/{StyleGuideRoot-DGm-hysw.js.map → StyleGuideRoot-BAYFLFTM.js.map} +1 -1
  33. package/build/assets/{index-LXmN419B.js → index-Bjvh6jhx.js} +4 -4
  34. package/build/assets/{index-LXmN419B.js.map → index-Bjvh6jhx.js.map} +1 -1
  35. package/build/assets/{index-CqIl8EDR.js → index-CVle8e1T.js} +2 -2
  36. package/build/assets/{index-CqIl8EDR.js.map → index-CVle8e1T.js.map} +1 -1
  37. package/build/assets/{index-DmVB6hX1.js → index-Cwc_E41j.js} +3 -3
  38. package/build/assets/{index-DmVB6hX1.js.map → index-Cwc_E41j.js.map} +1 -1
  39. package/build/index.html +2 -2
  40. package/package.json +31 -31
@@ -1,9 +1,9 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./MarkdownEditor-B4WFJDBT.js","./vendor-DVrAV4v1.js","./helpers-BosuxZz1.js","./vendor-CawHrWiI.css","./ControlType-lgZLQmfY.js","./index-DmVB6hX1.js","./monaco-DaE0jI-i.js","./monaco-CgHo24-M.css","./index-WCsQ0aAg.css","./ControlType-CFrcYBSr.css","./mathjax-DWeFhW7B.js"])))=>i.map(i=>d[i]);
2
- import{r as f,I as u,K as de,a0 as Ve,a1 as se,bC as pa,ad as O,bD as Gi,M as oe,_ as Ge,U as ne,H as ue,b2 as va,b1 as _n,av as ze,a3 as ma,af as fa,bE as I}from"./vendor-DVrAV4v1.js";import{F as $e,di as Fe,P as Ne,as as G,dj as Qt,c as z,ci as ga,cn as ba,b8 as Hi,U as Sa,av as Bi,ae as Ca,dk as rt,dl as ge,B as N,dm as at,ag as De,dn as on,aa as Wi,dp as Vt,ct as Ki,a5 as dn,dq as Gt,W as pe,J as Ht,dr as lt,ds as wt,dt as Et,du as zi,c7 as T,y as nn,cS as ya,S as bt,a as qi,m as Xi,dv as un,ab as Pa,$ as wa,dw as Zi,dx as Yi,a$ as Ea,cs as Ta,al as te,dy as Rn,db as Fa,dc as Da,e as Qi,u as Bt,cU as je,co as Tt,cN as Ue,a7 as Ma,ax as Ji,d3 as ka,d1 as La,cL as er,cM as tr,z as rn,cO as nr,d6 as ir,T as qe,X as Oa,t as Na,Q as ja,dz as rr,dA as ar,dB as lr,dC as sr,bm as Ia,am as or,cQ as xa,c9 as _a,b6 as Ra,dg as Aa,dD as Ua,de as $a,au as Va,V as Ga,dh as Ha,df as Ba,af as Wa,ap as Ka,a1 as za,dE as qa,a0 as Xa,aD as Za,dF as Ya,aE as Qa,dG as Ja}from"./ControlType-lgZLQmfY.js";import{aA as el,L as B,e as k,aO as tl,aP as nl,K as hn,aQ as il,aR as rl,aS as dr,f as cn,aT as ur,y as An,aU as Un,g as al,F as ll,M as sl,b as ol,c as dl,N as St,s as ul,aV as hl,aW as cl,d as pl,aX as vl,aY as ml}from"./index-DmVB6hX1.js";import{C as fl,a as J,I as x,G as Dt,S as hr,L as cr,b as pn}from"./IrisGridModel-BWX_u8pv.js";import{d as gl,M as $n,n as bl,f as Me,l as ke,k as Sl,e as Cl,I as H,A as yl,o as Pl,p as wl,q as El}from"./MissingPartitionError-Cw7iLwy0.js";import{F as Vn}from"./FormatterUtils-C9ixv8yB.js";import{_ as Tl}from"./monaco-DaE0jI-i.js";function vn(i){var{className:e,isFlipped:t,children:n,"data-testid":r}=i,a=d=>{if(n.length!==2)throw new Error("CardFlip requires 2 children to function");return n[d]},l=f.useRef(null),s=f.useCallback(d=>{d.target===d.currentTarget&&document.body.classList.add("card-flip--is-flipping")},[]),o=f.useCallback(d=>{d.target===d.currentTarget&&document.body.classList.remove("card-flip--is-flipping")},[]);return f.useEffect(function(){if(!l.current)throw Error("ref undefined");l.current.addEventListener("transitionstart",s);var h=l.current;return function(){if(h!=null)return h.removeEventListener("transitionstart",s)}},[s]),u.jsxs("div",{className:de(e,{"card-flip--show-front":t,"card-flip--show-back":!t}),"data-testid":r,children:[u.jsx("div",{className:"card-flip--back",children:a(0)}),u.jsx("div",{ref:l,className:"card-flip--front",onTransitionEnd:o,children:a(1)})]})}function Gn(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function Fl(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){Gn(a,n,r,l,s,"next",o)}function s(o){Gn(a,n,r,l,s,"throw",o)}l(void 0)})}}var pr=f.createContext(null);pr.displayName="DeferredApiContext";function Dl(i){var[e,t]=f.useState(null),[n,r]=f.useState(null),a=f.useContext(pr),l=f.useContext(el);return f.useEffect(()=>{if(a==null){if(l!=null){t(l),r(null);return}t(null),r(new Error("No API available in useDeferredApi. Was code wrapped in ApiBootstrap or DeferredApiContext.Provider?"));return}var s=!1;function o(){return d.apply(this,arguments)}function d(){return d=Fl(function*(){if(i==null)s||(t(null),r(new Error("No widget provided to useDeferredApi")));else if(typeof a=="function")try{var h=yield a(i);s||(t(h),r(null))}catch(c){s||(t(null),r(c??new Error("Null error")))}else t(a)}),d.apply(this,arguments)}return o(),()=>{s=!0}},[l,a,i]),[e,n]}function Hn(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Bn(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Hn(Object(t),!0).forEach(function(n){$(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Hn(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function $(i,e,t){return(e=Ml(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ml(i){var e=kl(i,"string");return typeof e=="symbol"?e:e+""}function kl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var W=B.module("FigureChartModel");class Ct extends fl{constructor(e,t){var n,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(e),n=this,$(this,"chartUtils",void 0),$(this,"dh",void 0),$(this,"figure",void 0),$(this,"settings",void 0),$(this,"data",void 0),$(this,"layout",void 0),$(this,"seriesDataMap",void 0),$(this,"pendingSeries",void 0),$(this,"oneClicks",void 0),$(this,"filterColumnMap",void 0),$(this,"lastFilter",void 0),$(this,"isConnected",void 0),$(this,"seriesToProcess",void 0),$(this,"addPendingSeries",Ve(()=>{for(var a=J.getAxisTypeMap(this.figure),{pendingSeries:l}=this,s=function(){var h,c=l[o],p=n.figure.charts.find(v=>v.series.includes(c));n.addSeries(c,a,(h=p==null?void 0:p.showLegend)!==null&&h!==void 0?h:null),c.subscribe()},o=0;o<l.length;o+=1)s();this.pendingSeries=[]},Ct.ADD_SERIES_DEBOUNCE)),$(this,"getTimeZone",se((a,l)=>{if(l!=null){var s=l.getColumnTypeFormatter(a);if(s!=null)return s.dhTimeZone}},{max:100})),$(this,"getValueTranslator",se((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.unwrapValue(o,s)},{max:100})),$(this,"getValueParser",se((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.wrapValue(o,a,s)},{max:100})),$(this,"getRangeParser",se((a,l)=>s=>{var[o,d]=s,h=this.getValueParser(a,l);return o=h(o),d=h(d),[o,d]},{max:100})),$(this,"getAxisRangeParser",se((a,l)=>s=>{var o=J.getSourceForAxis(a,s);return o!=null?this.getRangeParser(o.columnType,l):d=>d},{max:100})),this.handleFigureUpdated=this.handleFigureUpdated.bind(this),this.handleFigureDisconnected=this.handleFigureDisconnected.bind(this),this.handleFigureReconnected=this.handleFigureReconnected.bind(this),this.handleFigureSeriesAdded=this.handleFigureSeriesAdded.bind(this),this.handleDownsampleStart=this.handleDownsampleStart.bind(this),this.handleDownsampleFinish=this.handleDownsampleFinish.bind(this),this.handleDownsampleFail=this.handleDownsampleFail.bind(this),this.handleDownsampleNeeded=this.handleDownsampleNeeded.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.dh=e,this.chartUtils=new J(e),this.figure=t,this.settings=r,this.data=[],this.layout={grid:{rows:t.rows,columns:t.cols,pattern:"independent"}},this.seriesDataMap=new Map,this.pendingSeries=[],this.oneClicks=[],this.filterColumnMap=new Map,this.lastFilter=new Map,this.isConnected=!0,this.seriesToProcess=new Set,this.setTitle(this.getDefaultTitle()),this.initAllSeries(),this.updateAxisPositions(),this.startListeningFigure()}close(){this.figure.close(),this.addPendingSeries.cancel(),this.stopListeningFigure()}getDefaultTitle(){if(this.figure.title!=null&&this.figure.title.length>0)return this.figure.title;if(this.figure.charts.length===1){var e;return(e=this.figure.charts[0].title)!==null&&e!==void 0?e:""}return""}initAllSeries(){var e=this;this.oneClicks=[],this.filterColumnMap.clear();var{charts:t}=this.figure,n=J.getAxisTypeMap(this.figure),r=[];this.seriesToProcess=new Set;for(var a=function(){for(var p=t[l],v=0;v<p.series.length;v+=1){var g=p.series[v];r.push(g.name),e.addSeries(g,n,p.showLegend)}var{axes:S,title:m}=p;if(m!=null&&m.length>0&&(t.length>1||e.figure.title!=null)){var b=S.find(E=>E.type===e.dh.plot.AxisType.X),y=S.find(E=>E.type===e.dh.plot.AxisType.Y);if(b==null||y==null)W.warn("Chart title provided, but unknown how to map to the correct axes for this chart type",p);else{var C,P,w,F,L=((C=(P=n.get(b.type))===null||P===void 0?void 0:P.findIndex(E=>E===b))!==null&&C!==void 0?C:0)+1,M=((w=(F=n.get(y.type))===null||F===void 0?void 0:F.findIndex(E=>E===y))!==null&&w!==void 0?w:0)+1,D={align:"center",x:.5,y:1,yshift:17,text:m,showarrow:!1,xref:"x".concat(L," domain"),yref:"y".concat(M," domain")};e.layout.annotations==null?e.layout.annotations=[D]:e.layout.annotations.push(D)}}},l=0;l<t.length;l+=1)a();for(var s=[...this.seriesDataMap.keys()],o=s.filter(c=>r.indexOf(c)<0),d=0;d<o.length;d+=1){var h=o[d];this.seriesDataMap.delete(h)}}addSeries(e,t,n){var r,a,{dh:l}=this,s=this.chartUtils.makeSeriesDataFromSeries(e,t,J.getSeriesVisibility(e.name,this.settings),n,(r=(a=this.renderOptions)===null||a===void 0?void 0:a.webgl)!==null&&r!==void 0?r:!0);if(this.seriesDataMap.set(e.name,s),this.seriesToProcess.add(e.name),this.data=[...this.seriesDataMap.values()],e.plotStyle===l.plot.SeriesPlotStyle.STACKED_BAR?this.layout.barmode="stack":e.plotStyle===l.plot.SeriesPlotStyle.PIE&&(this.layout.hiddenlabels=J.getHiddenLabels(this.settings)),this.layout.showlegend=this.data.length>1||e.plotStyle===l.plot.SeriesPlotStyle.PIE?n??void 0:!1,e.oneClick!=null){for(var{oneClick:o}=e,{columns:d}=o,h=0;h<d.length;h+=1)this.filterColumnMap.set(d[h].name,d[h]);this.oneClicks.push(o)}this.updateLayoutFormats()}subscribe(e){super.subscribe(e),this.listeners.length===1&&(this.initAllSeries(),this.subscribeFigure())}unsubscribe(e){super.unsubscribe(e),this.listeners.length===0&&this.unsubscribeFigure()}subscribeFigure(){if(!this.isConnected){W.debug("Ignoring subscribe when figure in disconnected state");return}this.figure.subscribe(this.isDownsamplingDisabled?this.dh.plot.DownsampleOptions.DISABLE:this.dh.plot.DownsampleOptions.DEFAULT),this.figure.errors.length>0&&(W.error("Errors in figure",this.figure.errors),this.fireError(this.figure.errors))}unsubscribeFigure(){this.figure.unsubscribe()}startListeningFigure(){var{dh:e}=this;this.figure.addEventListener(e.plot.Figure.EVENT_UPDATED,this.handleFigureUpdated),this.figure.addEventListener(e.plot.Figure.EVENT_SERIES_ADDED,this.handleFigureSeriesAdded),this.figure.addEventListener(e.plot.Figure.EVENT_DISCONNECT,this.handleFigureDisconnected),this.figure.addEventListener(e.plot.Figure.EVENT_RECONNECT,this.handleFigureReconnected),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLESTARTED,this.handleDownsampleStart),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFINISHED,this.handleDownsampleFinish),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFAILED,this.handleDownsampleFail),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLENEEDED,this.handleDownsampleNeeded),this.figure.addEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed)}stopListeningFigure(){var{dh:e}=this;this.figure.removeEventListener(e.plot.Figure.EVENT_UPDATED,this.handleFigureUpdated),this.figure.removeEventListener(e.plot.Figure.EVENT_SERIES_ADDED,this.handleFigureSeriesAdded),this.figure.removeEventListener(e.plot.Figure.EVENT_DISCONNECT,this.handleFigureDisconnected),this.figure.removeEventListener(e.plot.Figure.EVENT_RECONNECT,this.handleFigureReconnected),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLESTARTED,this.handleDownsampleStart),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFINISHED,this.handleDownsampleFinish),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFAILED,this.handleDownsampleFail),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLENEEDED,this.handleDownsampleNeeded),this.figure.removeEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed)}handleDownsampleStart(e){W.debug("Downsample started",e),this.fireDownsampleStart(e.detail)}handleDownsampleFinish(e){W.debug("Downsample finished",e),this.fireDownsampleFinish(e.detail)}handleDownsampleFail(e){W.error("Downsample failed",e),this.fireDownsampleFail(e.detail)}handleDownsampleNeeded(e){W.info("Downsample needed",e),this.fireDownsampleNeeded(e.detail)}handleFigureUpdated(e){var{detail:t}=e,{series:n}=t;W.debug2("handleFigureUpdated",n);for(var r=0;r<n.length;r+=1){var a=n[r];W.debug2("handleFigureUpdated updating series",a.name);for(var{sources:l}=a,s=0;s<l.length;s+=1){var o=l[s],{columnType:d,type:h}=o,c=this.getValueTranslator(d,this.formatter),p=t.getArray(a,h,c);this.setDataArrayForSeries(a,h,p)}this.seriesToProcess.delete(a.name),this.cleanSeries(a)}this.seriesToProcess.size===0&&this.fireLoadFinished();var{data:v}=this;this.fireUpdate(v)}handleRequestFailed(e){W.error("Request failed",e),this.fireError(["".concat(e.detail)])}resubscribe(){this.listeners.length>0&&(this.unsubscribeFigure(),this.subscribeFigure())}setFormatter(e){super.setFormatter(e),this.updateLayoutFormats(),this.resubscribe()}setRenderOptions(e){super.setRenderOptions(e),this.initAllSeries()}setDownsamplingDisabled(e){super.setDownsamplingDisabled(e),this.resubscribe()}handleFigureDisconnected(e){W.debug("Figure disconnected",e),this.isConnected=!1,this.listeners.length>0&&this.unsubscribeFigure(),this.fireDisconnect()}handleFigureReconnected(e){W.debug("Figure reconnected",e),this.isConnected=!0,this.initAllSeries(),this.fireReconnect(),this.listeners.length>0&&this.subscribeFigure()}handleFigureSeriesAdded(e){var{detail:t}=e;W.debug("handleFigureSeriesAdded",t),this.pendingSeries.push(t),this.addPendingSeries()}setDimensions(e){super.setDimensions(e),this.updateAxisPositions()}setTitle(e){var t,n;super.setTitle(e);var r=(t=(n=(e??"").match(/<br>/g))===null||n===void 0?void 0:n.length)!==null&&t!==void 0?t:0,a=J.DEFAULT_MARGIN.t+r*J.SUBTITLE_LINE_HEIGHT;this.layout.margin?this.layout.margin.t=a:this.layout.margin={t:a},typeof this.layout.title=="string"?this.layout.title={text:e}:(this.layout.title=Bn({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=Bn({},this.layout.title.pad),this.layout.title.pad.t=J.DEFAULT_TITLE_PADDING.t+r*J.SUBTITLE_LINE_HEIGHT*.5),this.fireLayoutUpdated({title:this.layout.title})}getPlotWidth(){var e,t,n,r;return!this.rect||!this.rect.width?0:Math.max(this.rect.width-((e=(t=this.layout.margin)===null||t===void 0?void 0:t.l)!==null&&e!==void 0?e:0)-((n=(r=this.layout.margin)===null||r===void 0?void 0:r.r)!==null&&n!==void 0?n:0),0)}getPlotHeight(){var e,t,n,r;return!this.rect||!this.rect.height?0:Math.max(this.rect.height-((e=(t=this.layout.margin)===null||t===void 0?void 0:t.t)!==null&&e!==void 0?e:0)-((n=(r=this.layout.margin)===null||r===void 0?void 0:r.b)!==null&&n!==void 0?n:0),0)}updateAxisPositions(){var e=this.getPlotWidth(),t=this.getPlotHeight();this.chartUtils.updateFigureAxes(this.layout,this.figure,n=>this.getAxisRangeParser(n,this.formatter),e,t)}updateLayoutFormats(){if(this.formatter){var e=this.chartUtils.getAxisFormats(this.figure,this.formatter);e.forEach((t,n)=>{W.debug("Assigning ".concat(n),this.layout[n],t);var r=this.layout[n];r!=null?Object.assign(r,t):W.debug("Ignoring null layout.".concat(n))})}}setDataArrayForSeries(e,t,n){var{name:r,plotStyle:a}=e,l=this.seriesDataMap.get(r),s=this.chartUtils.getPlotlyProperty(a,t);l&&pa(l,s,n)}cleanSeries(e){var{dh:t}=this,{name:n,plotStyle:r}=e,a=this.seriesDataMap.get(n);if(a!=null){if(r===t.plot.SeriesPlotStyle.HISTOGRAM){var{xLow:l,xHigh:s}=a;if(l&&s&&l.length===s.length){for(var o=[],d=0;d<l.length;d+=1)o.push(s[d]-l[d]);a.width=o}}else if(r===t.plot.SeriesPlotStyle.LINE||r===t.plot.SeriesPlotStyle.ERROR_BAR||r===t.plot.SeriesPlotStyle.BAR){var{x:h,xLow:c,xHigh:p,y:v,yLow:g,yHigh:S}=a;c&&p&&c!==h&&(a.error_x=J.getPlotlyErrorBars(h,c,p)),g&&S&&g!==v&&(a.error_y=J.getPlotlyErrorBars(v,g,S))}else if(r===t.plot.SeriesPlotStyle.TREEMAP){var{ids:m,labels:b}=a;m!==void 0&&b===void 0&&(a.labels=m)}}}getData(){return this.data}getLayout(){return this.layout}getFilterColumnMap(){return new Map(this.filterColumnMap)}isFilterRequired(){return this.oneClicks.find(e=>e.requireAllFiltersToDisplay)!=null}setFilter(e){var t=this;if(this.oneClicks.length===0){W.warn("Trying to set a filter, but no one click!");return}W.debug("setFilter",e);for(var n=function(){var l=t.oneClicks[r],{columns:s}=l,o=new Set([...e.keys(),...t.lastFilter.keys()]);o.forEach(d=>{var h=e.get(d);t.lastFilter.get(d)!==h&&s.find(c=>c.name===d)!=null&&l.setValueForColumn(d,h)})},r=0;r<this.oneClicks.length;r+=1)n();this.lastFilter=new Map(e)}setFigure(e){this.close(),this.figure=e,this.setTitle(this.getDefaultTitle()),this.initAllSeries(),this.updateAxisPositions(),this.startListeningFigure(),this.listeners.length>0&&this.subscribeFigure()}updateSettings(e){this.settings=e}}$(Ct,"ADD_SERIES_DEBOUNCE",50);function Wn(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function Jt(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){Wn(a,n,r,l,s,"next",o)}function s(o){Wn(a,n,r,l,s,"throw",o)}l(void 0)})}}class Je{static makeModelFromSettings(e,t,n){return Jt(function*(){var r=yield Je.makeFigureFromSettings(e,t,n);return new Ct(e,r,t)})()}static makeFigureFromSettings(e,t,n){return Jt(function*(){var r=yield n.copy();return r.applyCustomColumns(n.customColumns),r.applyFilter(n.filter),r.applySort(n.sort),e.plot.Figure.create(new J(e).makeFigureSettings(t,r))})()}static makeModel(e,t,n){return Jt(function*(){return new Ct(e,n,t)})()}}function Kn(i){return i.setFigure!==void 0}function zn(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function _e(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){zn(a,n,r,l,s,"next",o)}function s(o){zn(a,n,r,l,s,"throw",o)}l(void 0)})}}function re(i,e,t){return(e=Ll(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ll(i){var e=Ol(i,"string");return typeof e=="symbol"?e:e+""}function Ol(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var we=B.module("IrisGridTableModel");class Nl extends gl{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new $e(e),r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,n,r),re(this,"userFrozenColumns",void 0),re(this,"customColumnList",void 0),re(this,"formatColumnList",void 0),re(this,"initialFilters",[]),re(this,"wasUncoalesced",void 0),re(this,"getMemoizedKeyColumnSet",O(a=>new Set(a??G))),re(this,"getMemoizedValueColumnSet",O(a=>new Set(a??G))),re(this,"getMemoizedFrontColumns",O(a=>a??G)),re(this,"getMemoizedBackColumns",O(a=>a??G)),re(this,"getMemoizedFrozenColumns",O((a,l)=>{var s;return(s=l??a)!==null&&s!==void 0?s:G})),re(this,"getCachedFilterableColumnSet",O(a=>new Set(a.map((l,s)=>s)))),re(this,"getCachedPartitionColumns",O(a=>a.filter(l=>l.isPartitionColumn))),this.customColumnList=[],this.formatColumnList=[],this.initialFilters=t.filter,this.wasUncoalesced=this.isPartitionRequired}get isExportAvailable(){return this.table.freeze!=null}get isColumnStatisticsAvailable(){return this.table.getColumnStatistics!=null}get isRollupAvailable(){return this.table.rollup!=null}get isSelectDistinctAvailable(){return this.table.selectDistinct!=null}get isOrganizeColumnsAvailable(){return!0}get isCustomColumnsAvailable(){return this.table.applyCustomColumns!=null}get isFormatColumnsAvailable(){return this.table.applyCustomColumns!=null}get keyColumnSet(){var e;return this.getMemoizedKeyColumnSet((e=this.inputTable)===null||e===void 0?void 0:e.keys)}get valueColumnSet(){var e;return this.getMemoizedValueColumnSet((e=this.inputTable)===null||e===void 0?void 0:e.values)}get frontColumns(){var e,t;return this.getMemoizedFrontColumns((e=(t=this.layoutHints)===null||t===void 0?void 0:t.frontColumns)!==null&&e!==void 0?e:void 0)}get backColumns(){var e,t;return this.getMemoizedBackColumns((e=(t=this.layoutHints)===null||t===void 0?void 0:t.backColumns)!==null&&e!==void 0?e:void 0)}get frozenColumns(){var e,t;return this.getMemoizedFrozenColumns((e=(t=this.layoutHints)===null||t===void 0?void 0:t.frozenColumns)!==null&&e!==void 0?e:void 0,this.userFrozenColumns)}get layoutHints(){return this.table.layoutHints}get floatingLeftColumnCount(){return this.frozenColumns.length}get description(){var e;return(e=this.table.description)!==null&&e!==void 0?e:""}get customColumns(){return this.customColumnList}set customColumns(e){if(we.debug2("set customColumns",e,this.customColumnList,e===this.customColumnList),this.customColumnList.length===0&&e.length===0){we.debug("Ignore empty initial customColumns"),this.customColumnList=e;return}if(this.customColumnList===e){we.debug("Ignore same customColumns");return}this.closeSubscription(),this.customColumnList=e,this.table.applyCustomColumns([...e,...this.formatColumns]),this.applyViewport()}get formatColumns(){return this.formatColumnList}set formatColumns(e){if(we.debug2("set formatColumns",e,this.formatColumnList,e===this.formatColumnList),this.formatColumnList.length===0&&e.length===0){we.debug("Ignore empty initial formatColumns"),this.formatColumnList=e;return}if(this.formatColumnList===e){we.debug("Ignore same formatColumns");return}this.closeSubscription(),this.formatColumnList=e,this.table.applyCustomColumns([...this.customColumns,...e]),this.applyViewport()}updateFrozenColumns(e){this.userFrozenColumns=e,this.dispatchEvent(new Fe(x.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get partitionColumns(){return this.getCachedPartitionColumns(this.columns)}partitionKeysTable(){var e=this;return _e(function*(){return e.valuesTable(e.partitionColumns)})()}partitionMergedTable(){var e=this;return _e(function*(){var t=yield e.table.copy();return t.applyFilter([]),t})()}partitionBaseTable(){var e=this;return _e(function*(){return e.partitionKeysTable()})()}partitionTable(e){var t=this;return _e(function*(){we.debug("getting partition table for partitions",e);for(var n=[],r=0;r<t.partitionColumns.length;r+=1){var a=e[r],l=t.partitionColumns[r],s=t.tableUtils.makeNullableEqFilter(l,a);n.push(s)}var o=yield t.table.copy();return o.applyFilter([...t.initialFilters,...n]),o})()}set filter(e){this.closeSubscription(),this.table.applyFilter([...this.initialFilters,...e]),this.applyViewport()}set totalsConfig(e){if(we.debug("set totalsConfig",e),e!==this.totals){if(this.totals=e,this.formattedStringData=[],this.totalsTablePromise!=null&&this.totalsTablePromise.cancel(),this.setTotalsTable(null),e==null){this.dispatchEvent(new Fe(x.EVENT.UPDATED));return}this.totalsTablePromise=Ne.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{Ne.isCanceled(t)||(we.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new Fe(x.EVENT.REQUEST_FAILED,{detail:t})))})}}get isFilterRequired(){return this.table.isUncoalesced}get isPartitionRequired(){return this.table.isUncoalesced&&this.isValuesTableAvailable&&this.partitionColumns.length>0}get isPartitionAwareSourceTable(){return this.wasUncoalesced}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns).has(e)}export(){var e=this;return _e(function*(){return e.table.freeze()})()}columnStatistics(e){return this.table.getColumnStatistics(e)}isColumnMovable(e){var t=this.columns[e].name;return this.frontColumns.includes(t)||this.backColumns.includes(t)||this.frozenColumns.includes(t)?!1:!this.isKeyColumn(e)}isColumnFrozen(e){return this.frozenColumns.includes(this.columns[e].name)}delete(e){var t=()=>super.pendingDataMap,n=a=>super.pendingDataMap=a,r=this;return _e(function*(){var a;if(!r.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));k(r.inputTable);var{keyColumns:l}=r.inputTable;if(r.keyColumnSet.size===0)throw new Error("No key columns to allow deletion");var s=r.getPendingAreaRange(),o=e.map(C=>Dt.intersection(s,C)).filter(C=>C!=null).map(C=>(k(C),Dt.offset(C,0,-(r.floatingTopRowCount+r.table.size))));if(o.length>0){for(var d=new Map(t()),h=0;h<o.length;h+=1){var c=o[h];k(c.startRow),k(c.endRow);for(var p=c.startRow;p<=c.endRow;p+=1)d.delete(p)}n(d),r.formattedStringData=[],r.dispatchEvent(new Fe(x.EVENT.PENDING_DATA_UPDATED)),r.dispatchEvent(new Fe(x.EVENT.UPDATED))}var v=r.getTableAreaRange(),g=e.map(C=>Dt.intersection(v,C)).filter(C=>C!=null);if(!(g.length<=0)){var[S,m]=yield Promise.all([r.snapshot(g.map(C=>(k(C),l.map(P=>{var w=r.getColumnIndexByName(P.name);if(w==null)throw new Error("Key column ".concat(P.name," not found"));return new Dt(w,C.startRow,w,C.endRow)}))).flat()),r.table.copy()]),b=S.map(C=>{for(var P=[],w=0;w<l.length;w+=1){var F=l[w],L=C[w],M=r.tableUtils.makeNullableEqFilter(F,L);P.push(M)}return P.reduce((D,E)=>{var j;return(j=D==null?void 0:D.and(E))!==null&&j!==void 0?j:E})}),y=b.reduce((C,P)=>{var w;return(w=C==null?void 0:C.or(P))!==null&&w!==void 0?w:P});m.applyFilter([y]),yield(a=r.inputTable)===null||a===void 0?void 0:a.deleteTable(m),m.close()}})()}seekRow(e,t,n,r,a,l,s){var o=this;return _e(function*(){return o.table.seekRow(e,t,n,r,a,l,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}function qn(i,e,t){return(e=jl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function jl(i){var e=Il(i,"string");return typeof e=="symbol"?e:e+""}function Il(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class xl extends x{constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new $e(e);super(e),qn(this,"modelFormatter",void 0),qn(this,"modelColumnAlignmentMap",void 0),this.modelFormatter=t,this.modelColumnAlignmentMap=new Map}get rowCount(){return 0}get columnCount(){return 0}textForCell(e,t){return""}textForColumnHeader(e,t){}get columns(){return G}getColumnIndexByName(e){}get initialMovedColumns(){return G}get initialMovedRows(){return G}get initialColumnHeaderGroups(){return G}get groupedColumns(){return G}formatForCell(e,t){}valueForCell(e,t){}get filter(){return G}set filter(e){}get partition(){return G}set partition(e){}get partitionColumns(){return G}get formatter(){return this.modelFormatter}set formatter(e){this.modelFormatter=e}get columnAlignmentMap(){return this.modelColumnAlignmentMap}set columnAlignmentMap(e){this.modelColumnAlignmentMap=e}displayString(e,t,n){return""}get sort(){return G}set sort(e){}get customColumns(){return G}set customColumns(e){}get formatColumns(){return G}updateFrozenColumns(e){}get rollupConfig(){return null}set rollupConfig(e){}get totalsConfig(){return null}set totalsConfig(e){}export(){throw new Error("Method not implemented.")}columnStatistics(e){throw new Error("Method not implemented.")}get selectDistinctColumns(){return G}set selectDistinctColumns(e){}get pendingDataMap(){return Qt}set pendingDataMap(e){}get pendingRowCount(){return 0}set pendingRowCount(e){}get pendingDataErrors(){return Qt}commitPending(){return Promise.resolve()}setViewport(e,t,n){}snapshot(e){return Promise.resolve([])}textSnapshot(e,t,n){return Promise.resolve("")}valuesTable(e){throw new Error("Method not implemented.")}delete(e){return Promise.resolve()}seekRow(e,t,n,r,a,l,s){return Promise.resolve(0)}get columnHeaderGroups(){return G}set columnHeaderGroups(e){}get columnHeaderGroupMap(){return Qt}getColumnHeaderParentGroup(e,t){}}function Xn(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function Mt(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){Xn(a,n,r,l,s,"next",o)}function s(o){Xn(a,n,r,l,s,"throw",o)}l(void 0)})}}function _l(i,e,t){return(e=Rl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Rl(i){var e=Al(i,"string");return typeof e=="symbol"?e:e+""}function Al(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function Ul(i){return"getBaseTable"in i&&typeof i.getBaseTable=="function"}class $l extends xl{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new $e(e);super(e,n),_l(this,"partitionedTable",void 0),this.partitionedTable=t}get isPartitionRequired(){return!0}get isPartitionAwareSourceTable(){return!1}get isReversible(){return!1}displayString(e,t,n){return""}close(){this.partitionedTable.close()}get columns(){return this.partitionedTable.columns}get partitionColumns(){return this.partitionedTable.keyColumns}get columnCount(){return this.columns.length}getColumnIndexByName(e){return this.columns.findIndex(t=>t.name===e)}textForColumnHeader(e,t){var n;return(n=this.columns[e].name)!==null&&n!==void 0?n:""}partitionKeysTable(){var e=this;return Mt(function*(){return e.partitionedTable.getKeyTable()})()}partitionBaseTable(){var e=this;return Mt(function*(){return Ul(e.partitionedTable)?e.partitionedTable.getBaseTable():e.partitionedTable.getKeyTable()})()}partitionMergedTable(){var e=this;return Mt(function*(){return e.partitionedTable.getMergedTable()})()}partitionTable(e){var t=this;return Mt(function*(){try{var n=yield t.partitionedTable.getTable(e);if(n==null)throw new $n("Partition not found");return n}catch(r){throw bl(r)?r:new $n("Unable to retrieve partition")}})()}}function Ee(i,e,t){return(e=Vl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Vl(i){var e=Gl(i,"string");return typeof e=="symbol"?e:e+""}function Gl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Te=B.module("IrisGridProxyModel");function Ke(i,e,t,n){return z.isTreeTable(e)?new Cl(i,e,t):z.isPartitionedTable(e)?new $l(i,e,t):new Nl(i,e,t,n)}class Hl extends x{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new $e(e),r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),Ee(this,"model",void 0),Ee(this,"dh",void 0),Ee(this,"originalModel",void 0),Ee(this,"modelPromise",void 0),Ee(this,"rollup",void 0),Ee(this,"partition",void 0),Ee(this,"selectDistinct",void 0),Ee(this,"currentViewport",void 0),Ee(this,"setViewport",(l,s,o)=>{this.currentViewport={top:l,bottom:s,columns:o},this.model.setViewport(l,s,o)}),this.addEventListener=this.addEventListener.bind(this),this.removeEventListener=this.removeEventListener.bind(this),this.dispatchEvent=this.dispatchEvent.bind(this),this.handleModelEvent=this.handleModelEvent.bind(this);var a=Ke(e,t,n,r);return this.dh=e,this.originalModel=a,this.model=a,this.modelPromise=null,this.rollup=null,this.partition=null,this.selectDistinct=[],new Proxy(this,{get(l,s,o){var d,h=((d=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(l),s))===null||d===void 0?void 0:d.get)!=null;if(h)return Reflect.get(l,s,o);var c=Object.prototype.hasOwnProperty.call(l,s),p=Object.prototype.hasOwnProperty.call(Object.getPrototypeOf(l),s),v=c||p?l:l.model;return Reflect.get(v,s)},set(l,s,o){var d,h=((d=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(l),s))===null||d===void 0?void 0:d.set)!=null,c=Object.prototype.hasOwnProperty.call(l,s);return h||c?Reflect.set(l,s,o,l):Reflect.set(l.model,s,o,l.model)}})}close(){this.originalModel.close(),this.model!==this.originalModel&&this.model.close(),this.modelPromise!=null&&this.modelPromise.cancel()}handleModelEvent(e){Te.debug2("handleModelEvent",e);var{detail:t,type:n}=e;this.dispatchEvent(new Fe(n,{detail:t}))}setModel(e){Te.debug("setModel",e);var t=this.model,{columns:n}=t;if(t!==this.originalModel&&t.close(),this.model=e,this.listenerCount>0&&this.addListeners(e),n!==e.columns)this.dispatchEvent(new Fe(x.EVENT.COLUMNS_CHANGED,{detail:e.columns}));else if(this.currentViewport!=null){var{top:r,bottom:a,columns:l}=this.currentViewport;e.setViewport(r,a,l)}Me(e)&&this.dispatchEvent(new Fe(x.EVENT.TABLE_CHANGED,{detail:e.table}))}setNextModel(e){Te.debug2("setNextModel"),this.modelPromise&&this.modelPromise.cancel(),this.listenerCount>0&&this.removeListeners(this.model),this.modelPromise=Ne.makeCancelable(e,t=>t.close()),this.modelPromise.then(t=>{this.modelPromise=null,this.setModel(t)}).catch(t=>{if(Ne.isCanceled(t)){Te.debug2("setNextModel cancelled");return}Te.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new Fe(x.EVENT.REQUEST_FAILED,{detail:t}))})}startListening(){super.startListening(),this.addListeners(this.model)}stopListening(){super.stopListening(),this.removeListeners(this.model)}addListeners(e){for(var t=Object.keys(x.EVENT),n=0;n<t.length;n+=1)e.addEventListener(t[n],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(x.EVENT),n=0;n<t.length;n+=1)e.removeEventListener(t[n],this.handleModelEvent)}get isCustomColumnsAvailable(){return this.model.isCustomColumnsAvailable&&!(this.isSelectDistinctAvailable&&this.selectDistinctColumns.length>0)}get isRollupAvailable(){return(this.originalModel.isRollupAvailable||this.rollup!=null)&&this.selectDistinct.length===0}get isSelectDistinctAvailable(){return(this.originalModel.isSelectDistinctAvailable||this.selectDistinct.length>0)&&this.rollup==null}get originalColumns(){return this.originalModel.columns}get partitionColumns(){return ke(this.originalModel)?this.originalModel.partitionColumns:[]}get partitionConfig(){return!ke(this.originalModel)||!this.originalModel.isPartitionRequired?Sl(this.originalModel)?null:void 0:this.partition}set partitionConfig(e){if(!this.isPartitionRequired)throw new Error("Partitions are not available");Te.debug("set partitionConfig",e),this.partition=e;var t=Promise.resolve(this.originalModel);e!=null&&ke(this.originalModel)&&(e.mode==="keys"?t=this.originalModel.partitionBaseTable().then(n=>Ke(this.dh,n,this.formatter)):e.mode==="merged"?t=this.originalModel.partitionMergedTable().then(n=>Ke(this.dh,n,this.formatter)):t=this.originalModel.partitionTable(e.partitions).then(n=>Ke(this.dh,n,this.formatter))),this.setNextModel(t)}partitionKeysTable(){if(!ke(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionKeysTable()}partitionMergedTable(){if(!ke(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionMergedTable()}partitionTable(e){if(!ke(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionTable(e)}get rollupConfig(){return this.rollup}set rollupConfig(e){if(Te.debug("set rollupConfig",e),!this.isRollupAvailable)throw new Error("Rollup Rows are not available");if(!Gi(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);Me(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(n=>Ke(this.dh,n,this.formatter))),this.setNextModel(t)}}get selectDistinctColumns(){return this.selectDistinct}set selectDistinctColumns(e){if(Te.debug("set selectDistinctColumns",e),!this.isSelectDistinctAvailable)throw new Error("Select distinct is not available");if(e===this.selectDistinctColumns||e.length===0&&this.selectDistinctColumns.length===0){Te.debug("Ignore same selectDistinctColumns",e);return}this.selectDistinct=e;var t=e.map(r=>this.originalColumns.find(a=>a.name===r)).filter(r=>r!=null),n=Promise.resolve(this.originalModel);Me(this.originalModel)&&t.length>0&&(n=this.originalModel.table.selectDistinct(t).then(r=>Ke(this.dh,r,this.formatter))),this.setNextModel(n)}get isFilterRequired(){return this.originalModel.isFilterRequired}get isPartitionRequired(){return ke(this.originalModel)?this.originalModel.isPartitionRequired:void 0}get isPartitionAwareSourceTable(){return ke(this.originalModel)&&this.originalModel.isPartitionAwareSourceTable}get formatter(){return this.originalModel.formatter}set formatter(e){this.originalModel.formatter=e}get columnAlignmentMap(){return this.originalModel.columnAlignmentMap}set columnAlignmentMap(e){this.originalModel.columnAlignmentMap=e}}function Zn(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function Bl(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){Zn(a,n,r,l,s,"next",o)}function s(o){Zn(a,n,r,l,s,"throw",o)}l(void 0)})}}class vr{static makeModel(e,t){var n=arguments;return Bl(function*(){var r=n.length>2&&n[2]!==void 0?n[2]:new $e(e),a=null;return!z.isTreeTable(t)&&!z.isPartitionedTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new Hl(e,t,r,a)})()}}function Yn(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Qn(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Yn(Object(t),!0).forEach(function(n){Wl(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Yn(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Wl(i,e,t){return(e=Kl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Kl(i){var e=zl(i,"string");return typeof e=="symbol"?e:e+""}function zl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function mr(i,e){var t=["isStuckToBottom","isStuckToRight","movedColumns","movedRows"];return i===e||t.every(n=>i[n]===e[n])}function fr(i,e){var t=["advancedFilters","aggregationSettings","customColumnFormatMap","columnAlignmentMap","isFilterBarShown","quickFilters","customColumns","reverse","rollupConfig","showSearchBar","searchValue","selectDistinctColumns","selectedSearchColumns","sorts","invertSearchColumns","pendingDataMap","frozenColumns","conditionalFormats","columnHeaderGroups","partitionConfig"];return i===e||i.metrics!=null&&e.metrics!=null&&i.metrics.userColumnWidths===e.metrics.userColumnWidths&&i.metrics.userRowHeights===e.metrics.userRowHeights&&t.every(n=>i[n]===e[n])}function ql(){return O((i,e)=>H.dehydrateGridState(i,e),(i,e)=>{var[t,n]=i,[r,a]=e;return t===r&&mr(n,a)})}function Xl(){return O((i,e)=>{var t=new H(i.dh);return t.dehydrateIrisGridState(i,e)},(i,e)=>{var[t,n]=i,[r,a]=e;return t===r&&fr(n,a)})}function Zl(){return O((i,e,t)=>{var n=new H(i.dh);return Qn(Qn({},n.dehydrateIrisGridState(i,e)),H.dehydrateGridState(i,t))},(i,e)=>{var[t,n,r]=i,[a,l,s]=e;return t===a&&fr(n,l)&&mr(r,s)})}var an={makeMemoizedGridStateDehydrator:ql,makeMemoizedIrisGridStateDehydrator:Xl,makeMemoizedCombinedGridStateDehydrator:Zl};function Wt(){var i=f.useContext(ga);if(i==null)throw new Error("LayoutManager not available, did you add a LayoutManagerContext.Provider to the tree?");return i}function mn(i,e,t){return(e=Yl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Yl(i){var e=Ql(i,"string");return typeof e=="symbol"?e:e+""}function Ql(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class et{}mn(et,"OPEN","ChartEvent.OPEN");mn(et,"CLOSE","ChartEvent.CLOSE");mn(et,"COLUMN_SELECTED","ChartEvent.COLUMN_SELECTED");function st(i,e,t){return(e=Jl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Jl(i){var e=es(i,"string");return typeof e=="symbol"?e:e+""}function es(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Z{}st(Z,"OPEN_GRID","IrisGridEvent.OPEN_GRID");st(Z,"CLOSE_GRID","IrisGridEvent.CLOSE_GRID");st(Z,"DATA_SELECTED","IrisGridEvent.DATA_SELECTED");st(Z,"COLUMN_SELECTED","IrisGridEvent.COLUMN_SELECTED");st(Z,"STATE_CHANGED","IrisGridEvent.STATE_CHANGED");st(Z,"CREATE_CHART","IrisGridevent.CREATE_CHART");function gr(i,e,t){return(e=ts(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function ts(i){var e=ns(i,"string");return typeof e=="symbol"?e:e+""}function ns(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class fn{}gr(fn,"OPEN","PandasEvent.OPEN");gr(fn,"CLOSE","PandasEvent.CLOSE");var is=ba;function rs(i){var{children:e,descriptor:t}=i,{name:n,type:r,description:a,displayName:l}=t,s=r.replace(/([a-z])([A-Z])/g,"$1 $2");return u.jsxs("div",{className:"tab-tooltip-grid-container",children:[u.jsxs("span",{className:"tab-tooltip-title",children:[s," Name"]}),u.jsxs("div",{className:"tab-tooltip-name-wrapper",children:[u.jsx("span",{className:"tab-tooltip-name",children:n}),u.jsx(Sa,{className:"tab-tooltip-copy",tooltip:"Copy name",copy:n})]}),n!==l&&!!l&&u.jsxs(u.Fragment,{children:[u.jsx("span",{className:"tab-tooltip-title",children:"Display Name"}),u.jsx("span",{className:"tab-tooltip-name",children:l})]}),!!a&&u.jsx("div",{className:"tab-tooltip-description",children:a}),e]})}var gn=Hi(rs);function ln(i,e,t){return(e=as(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function as(i){var e=ls(i,"string");return typeof e=="symbol"?e:e+""}function ls(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class br extends f.PureComponent{constructor(e){var t;super(e),t=this,ln(this,"getCachedRenderTabTooltip",O((n,r)=>n?()=>u.jsx(gn,{descriptor:r}):void 0)),ln(this,"getCachedActions",O(function(n){var r,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:G;return[...a,{title:"Copy ".concat((r=n.displayType)!==null&&r!==void 0?r:n.type," Name"),group:Bi.groups.medium,order:20,action:t.handleCopyName}]})),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleCopyName=this.handleCopyName.bind(this),this.state={isClientDisconnected:!1,isPanelDisconnected:!1,isWidgetDisconnected:!1,isWaitingForReconnect:!1,isPanelInactive:!1}}handleCopyName(){var{descriptor:e}=this.props;Ca(e.name)}getErrorMessage(){var{descriptor:e,errorMessage:t}=this.props,{isClientDisconnected:n,isPanelDisconnected:r,isWidgetDisconnected:a,isWaitingForReconnect:l}=this.state;if(t!=null&&t!=="")return"".concat(t);if(n&&r&&l)return`Disconnected from server.
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./MarkdownEditor-CjiUT8XD.js","./vendor-DVrAV4v1.js","./helpers-BosuxZz1.js","./vendor-CawHrWiI.css","./ControlType-RBsIk8KS.js","./index-Cwc_E41j.js","./monaco-DaE0jI-i.js","./monaco-CgHo24-M.css","./index-WCsQ0aAg.css","./ControlType-CFrcYBSr.css","./mathjax-DWeFhW7B.js"])))=>i.map(i=>d[i]);
2
+ import{r as f,I as u,K as de,a0 as Ve,a1 as se,bC as pa,ad as O,bD as Gi,M as oe,_ as Ge,U as ne,H as ue,b2 as va,b1 as _n,av as ze,a3 as ma,af as fa,bE as I}from"./vendor-DVrAV4v1.js";import{F as $e,di as Fe,P as Ne,as as G,dj as Qt,c as z,ci as ga,cn as ba,b8 as Hi,U as Sa,av as Bi,ae as Ca,dk as rt,dl as ge,B as N,dm as at,ag as De,dn as on,aa as Wi,dp as Vt,ct as Ki,a5 as dn,dq as Gt,W as pe,J as Ht,dr as lt,ds as wt,dt as Et,du as zi,c7 as T,y as nn,cS as ya,S as bt,a as qi,m as Xi,dv as un,ab as Pa,$ as wa,dw as Zi,dx as Yi,a$ as Ea,cs as Ta,al as te,dy as Rn,db as Fa,dc as Da,e as Qi,u as Bt,cU as je,co as Tt,cN as Ue,a7 as Ma,ax as Ji,d3 as ka,d1 as La,cL as er,cM as tr,z as rn,cO as nr,d6 as ir,T as qe,X as Oa,t as Na,Q as ja,dz as rr,dA as ar,dB as lr,dC as sr,bm as Ia,am as or,cQ as xa,c9 as _a,b6 as Ra,dg as Aa,dD as Ua,de as $a,au as Va,V as Ga,dh as Ha,df as Ba,af as Wa,ap as Ka,a1 as za,dE as qa,a0 as Xa,aD as Za,dF as Ya,aE as Qa,dG as Ja}from"./ControlType-RBsIk8KS.js";import{aA as el,L as B,e as k,aO as tl,aP as nl,K as hn,aQ as il,aR as rl,aS as dr,f as cn,aT as ur,y as An,aU as Un,g as al,F as ll,M as sl,b as ol,c as dl,N as St,s as ul,aV as hl,aW as cl,d as pl,aX as vl,aY as ml}from"./index-Cwc_E41j.js";import{C as fl,a as J,I as x,G as Dt,S as hr,L as cr,b as pn}from"./IrisGridModel-CfNBLna8.js";import{d as gl,M as $n,n as bl,f as Me,l as ke,k as Sl,e as Cl,I as H,A as yl,o as Pl,p as wl,q as El}from"./MissingPartitionError-DXkc6F4C.js";import{F as Vn}from"./FormatterUtils-C3xgIs6_.js";import{_ as Tl}from"./monaco-DaE0jI-i.js";function vn(i){var{className:e,isFlipped:t,children:n,"data-testid":r}=i,a=d=>{if(n.length!==2)throw new Error("CardFlip requires 2 children to function");return n[d]},l=f.useRef(null),s=f.useCallback(d=>{d.target===d.currentTarget&&document.body.classList.add("card-flip--is-flipping")},[]),o=f.useCallback(d=>{d.target===d.currentTarget&&document.body.classList.remove("card-flip--is-flipping")},[]);return f.useEffect(function(){if(!l.current)throw Error("ref undefined");l.current.addEventListener("transitionstart",s);var h=l.current;return function(){if(h!=null)return h.removeEventListener("transitionstart",s)}},[s]),u.jsxs("div",{className:de(e,{"card-flip--show-front":t,"card-flip--show-back":!t}),"data-testid":r,children:[u.jsx("div",{className:"card-flip--back",children:a(0)}),u.jsx("div",{ref:l,className:"card-flip--front",onTransitionEnd:o,children:a(1)})]})}function Gn(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function Fl(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){Gn(a,n,r,l,s,"next",o)}function s(o){Gn(a,n,r,l,s,"throw",o)}l(void 0)})}}var pr=f.createContext(null);pr.displayName="DeferredApiContext";function Dl(i){var[e,t]=f.useState(null),[n,r]=f.useState(null),a=f.useContext(pr),l=f.useContext(el);return f.useEffect(()=>{if(a==null){if(l!=null){t(l),r(null);return}t(null),r(new Error("No API available in useDeferredApi. Was code wrapped in ApiBootstrap or DeferredApiContext.Provider?"));return}var s=!1;function o(){return d.apply(this,arguments)}function d(){return d=Fl(function*(){if(i==null)s||(t(null),r(new Error("No widget provided to useDeferredApi")));else if(typeof a=="function")try{var h=yield a(i);s||(t(h),r(null))}catch(c){s||(t(null),r(c??new Error("Null error")))}else t(a)}),d.apply(this,arguments)}return o(),()=>{s=!0}},[l,a,i]),[e,n]}function Hn(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Bn(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Hn(Object(t),!0).forEach(function(n){$(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Hn(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function $(i,e,t){return(e=Ml(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ml(i){var e=kl(i,"string");return typeof e=="symbol"?e:e+""}function kl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var W=B.module("FigureChartModel");class Ct extends fl{constructor(e,t){var n,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(e),n=this,$(this,"chartUtils",void 0),$(this,"dh",void 0),$(this,"figure",void 0),$(this,"settings",void 0),$(this,"data",void 0),$(this,"layout",void 0),$(this,"seriesDataMap",void 0),$(this,"pendingSeries",void 0),$(this,"oneClicks",void 0),$(this,"filterColumnMap",void 0),$(this,"lastFilter",void 0),$(this,"isConnected",void 0),$(this,"seriesToProcess",void 0),$(this,"addPendingSeries",Ve(()=>{for(var a=J.getAxisTypeMap(this.figure),{pendingSeries:l}=this,s=function(){var h,c=l[o],p=n.figure.charts.find(v=>v.series.includes(c));n.addSeries(c,a,(h=p==null?void 0:p.showLegend)!==null&&h!==void 0?h:null),c.subscribe()},o=0;o<l.length;o+=1)s();this.pendingSeries=[]},Ct.ADD_SERIES_DEBOUNCE)),$(this,"getTimeZone",se((a,l)=>{if(l!=null){var s=l.getColumnTypeFormatter(a);if(s!=null)return s.dhTimeZone}},{max:100})),$(this,"getValueTranslator",se((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.unwrapValue(o,s)},{max:100})),$(this,"getValueParser",se((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.wrapValue(o,a,s)},{max:100})),$(this,"getRangeParser",se((a,l)=>s=>{var[o,d]=s,h=this.getValueParser(a,l);return o=h(o),d=h(d),[o,d]},{max:100})),$(this,"getAxisRangeParser",se((a,l)=>s=>{var o=J.getSourceForAxis(a,s);return o!=null?this.getRangeParser(o.columnType,l):d=>d},{max:100})),this.handleFigureUpdated=this.handleFigureUpdated.bind(this),this.handleFigureDisconnected=this.handleFigureDisconnected.bind(this),this.handleFigureReconnected=this.handleFigureReconnected.bind(this),this.handleFigureSeriesAdded=this.handleFigureSeriesAdded.bind(this),this.handleDownsampleStart=this.handleDownsampleStart.bind(this),this.handleDownsampleFinish=this.handleDownsampleFinish.bind(this),this.handleDownsampleFail=this.handleDownsampleFail.bind(this),this.handleDownsampleNeeded=this.handleDownsampleNeeded.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.dh=e,this.chartUtils=new J(e),this.figure=t,this.settings=r,this.data=[],this.layout={grid:{rows:t.rows,columns:t.cols,pattern:"independent"}},this.seriesDataMap=new Map,this.pendingSeries=[],this.oneClicks=[],this.filterColumnMap=new Map,this.lastFilter=new Map,this.isConnected=!0,this.seriesToProcess=new Set,this.setTitle(this.getDefaultTitle()),this.initAllSeries(),this.updateAxisPositions(),this.startListeningFigure()}close(){this.figure.close(),this.addPendingSeries.cancel(),this.stopListeningFigure()}getDefaultTitle(){if(this.figure.title!=null&&this.figure.title.length>0)return this.figure.title;if(this.figure.charts.length===1){var e;return(e=this.figure.charts[0].title)!==null&&e!==void 0?e:""}return""}initAllSeries(){var e=this;this.oneClicks=[],this.filterColumnMap.clear();var{charts:t}=this.figure,n=J.getAxisTypeMap(this.figure),r=[];this.seriesToProcess=new Set;for(var a=function(){for(var p=t[l],v=0;v<p.series.length;v+=1){var g=p.series[v];r.push(g.name),e.addSeries(g,n,p.showLegend)}var{axes:S,title:m}=p;if(m!=null&&m.length>0&&(t.length>1||e.figure.title!=null)){var b=S.find(E=>E.type===e.dh.plot.AxisType.X),y=S.find(E=>E.type===e.dh.plot.AxisType.Y);if(b==null||y==null)W.warn("Chart title provided, but unknown how to map to the correct axes for this chart type",p);else{var C,P,w,F,L=((C=(P=n.get(b.type))===null||P===void 0?void 0:P.findIndex(E=>E===b))!==null&&C!==void 0?C:0)+1,M=((w=(F=n.get(y.type))===null||F===void 0?void 0:F.findIndex(E=>E===y))!==null&&w!==void 0?w:0)+1,D={align:"center",x:.5,y:1,yshift:17,text:m,showarrow:!1,xref:"x".concat(L," domain"),yref:"y".concat(M," domain")};e.layout.annotations==null?e.layout.annotations=[D]:e.layout.annotations.push(D)}}},l=0;l<t.length;l+=1)a();for(var s=[...this.seriesDataMap.keys()],o=s.filter(c=>r.indexOf(c)<0),d=0;d<o.length;d+=1){var h=o[d];this.seriesDataMap.delete(h)}}addSeries(e,t,n){var r,a,{dh:l}=this,s=this.chartUtils.makeSeriesDataFromSeries(e,t,J.getSeriesVisibility(e.name,this.settings),n,(r=(a=this.renderOptions)===null||a===void 0?void 0:a.webgl)!==null&&r!==void 0?r:!0);if(this.seriesDataMap.set(e.name,s),this.seriesToProcess.add(e.name),this.data=[...this.seriesDataMap.values()],e.plotStyle===l.plot.SeriesPlotStyle.STACKED_BAR?this.layout.barmode="stack":e.plotStyle===l.plot.SeriesPlotStyle.PIE&&(this.layout.hiddenlabels=J.getHiddenLabels(this.settings)),this.layout.showlegend=this.data.length>1||e.plotStyle===l.plot.SeriesPlotStyle.PIE?n??void 0:!1,e.oneClick!=null){for(var{oneClick:o}=e,{columns:d}=o,h=0;h<d.length;h+=1)this.filterColumnMap.set(d[h].name,d[h]);this.oneClicks.push(o)}this.updateLayoutFormats()}subscribe(e){super.subscribe(e),this.listeners.length===1&&(this.initAllSeries(),this.subscribeFigure())}unsubscribe(e){super.unsubscribe(e),this.listeners.length===0&&this.unsubscribeFigure()}subscribeFigure(){if(!this.isConnected){W.debug("Ignoring subscribe when figure in disconnected state");return}this.figure.subscribe(this.isDownsamplingDisabled?this.dh.plot.DownsampleOptions.DISABLE:this.dh.plot.DownsampleOptions.DEFAULT),this.figure.errors.length>0&&(W.error("Errors in figure",this.figure.errors),this.fireError(this.figure.errors))}unsubscribeFigure(){this.figure.unsubscribe()}startListeningFigure(){var{dh:e}=this;this.figure.addEventListener(e.plot.Figure.EVENT_UPDATED,this.handleFigureUpdated),this.figure.addEventListener(e.plot.Figure.EVENT_SERIES_ADDED,this.handleFigureSeriesAdded),this.figure.addEventListener(e.plot.Figure.EVENT_DISCONNECT,this.handleFigureDisconnected),this.figure.addEventListener(e.plot.Figure.EVENT_RECONNECT,this.handleFigureReconnected),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLESTARTED,this.handleDownsampleStart),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFINISHED,this.handleDownsampleFinish),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFAILED,this.handleDownsampleFail),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLENEEDED,this.handleDownsampleNeeded),this.figure.addEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed)}stopListeningFigure(){var{dh:e}=this;this.figure.removeEventListener(e.plot.Figure.EVENT_UPDATED,this.handleFigureUpdated),this.figure.removeEventListener(e.plot.Figure.EVENT_SERIES_ADDED,this.handleFigureSeriesAdded),this.figure.removeEventListener(e.plot.Figure.EVENT_DISCONNECT,this.handleFigureDisconnected),this.figure.removeEventListener(e.plot.Figure.EVENT_RECONNECT,this.handleFigureReconnected),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLESTARTED,this.handleDownsampleStart),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFINISHED,this.handleDownsampleFinish),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFAILED,this.handleDownsampleFail),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLENEEDED,this.handleDownsampleNeeded),this.figure.removeEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed)}handleDownsampleStart(e){W.debug("Downsample started",e),this.fireDownsampleStart(e.detail)}handleDownsampleFinish(e){W.debug("Downsample finished",e),this.fireDownsampleFinish(e.detail)}handleDownsampleFail(e){W.error("Downsample failed",e),this.fireDownsampleFail(e.detail)}handleDownsampleNeeded(e){W.info("Downsample needed",e),this.fireDownsampleNeeded(e.detail)}handleFigureUpdated(e){var{detail:t}=e,{series:n}=t;W.debug2("handleFigureUpdated",n);for(var r=0;r<n.length;r+=1){var a=n[r];W.debug2("handleFigureUpdated updating series",a.name);for(var{sources:l}=a,s=0;s<l.length;s+=1){var o=l[s],{columnType:d,type:h}=o,c=this.getValueTranslator(d,this.formatter),p=t.getArray(a,h,c);this.setDataArrayForSeries(a,h,p)}this.seriesToProcess.delete(a.name),this.cleanSeries(a)}this.seriesToProcess.size===0&&this.fireLoadFinished();var{data:v}=this;this.fireUpdate(v)}handleRequestFailed(e){W.error("Request failed",e),this.fireError(["".concat(e.detail)])}resubscribe(){this.listeners.length>0&&(this.unsubscribeFigure(),this.subscribeFigure())}setFormatter(e){super.setFormatter(e),this.updateLayoutFormats(),this.resubscribe()}setRenderOptions(e){super.setRenderOptions(e),this.initAllSeries()}setDownsamplingDisabled(e){super.setDownsamplingDisabled(e),this.resubscribe()}handleFigureDisconnected(e){W.debug("Figure disconnected",e),this.isConnected=!1,this.listeners.length>0&&this.unsubscribeFigure(),this.fireDisconnect()}handleFigureReconnected(e){W.debug("Figure reconnected",e),this.isConnected=!0,this.initAllSeries(),this.fireReconnect(),this.listeners.length>0&&this.subscribeFigure()}handleFigureSeriesAdded(e){var{detail:t}=e;W.debug("handleFigureSeriesAdded",t),this.pendingSeries.push(t),this.addPendingSeries()}setDimensions(e){super.setDimensions(e),this.updateAxisPositions()}setTitle(e){var t,n;super.setTitle(e);var r=(t=(n=(e??"").match(/<br>/g))===null||n===void 0?void 0:n.length)!==null&&t!==void 0?t:0,a=J.DEFAULT_MARGIN.t+r*J.SUBTITLE_LINE_HEIGHT;this.layout.margin?this.layout.margin.t=a:this.layout.margin={t:a},typeof this.layout.title=="string"?this.layout.title={text:e}:(this.layout.title=Bn({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=Bn({},this.layout.title.pad),this.layout.title.pad.t=J.DEFAULT_TITLE_PADDING.t+r*J.SUBTITLE_LINE_HEIGHT*.5),this.fireLayoutUpdated({title:this.layout.title})}getPlotWidth(){var e,t,n,r;return!this.rect||!this.rect.width?0:Math.max(this.rect.width-((e=(t=this.layout.margin)===null||t===void 0?void 0:t.l)!==null&&e!==void 0?e:0)-((n=(r=this.layout.margin)===null||r===void 0?void 0:r.r)!==null&&n!==void 0?n:0),0)}getPlotHeight(){var e,t,n,r;return!this.rect||!this.rect.height?0:Math.max(this.rect.height-((e=(t=this.layout.margin)===null||t===void 0?void 0:t.t)!==null&&e!==void 0?e:0)-((n=(r=this.layout.margin)===null||r===void 0?void 0:r.b)!==null&&n!==void 0?n:0),0)}updateAxisPositions(){var e=this.getPlotWidth(),t=this.getPlotHeight();this.chartUtils.updateFigureAxes(this.layout,this.figure,n=>this.getAxisRangeParser(n,this.formatter),e,t)}updateLayoutFormats(){if(this.formatter){var e=this.chartUtils.getAxisFormats(this.figure,this.formatter);e.forEach((t,n)=>{W.debug("Assigning ".concat(n),this.layout[n],t);var r=this.layout[n];r!=null?Object.assign(r,t):W.debug("Ignoring null layout.".concat(n))})}}setDataArrayForSeries(e,t,n){var{name:r,plotStyle:a}=e,l=this.seriesDataMap.get(r),s=this.chartUtils.getPlotlyProperty(a,t);l&&pa(l,s,n)}cleanSeries(e){var{dh:t}=this,{name:n,plotStyle:r}=e,a=this.seriesDataMap.get(n);if(a!=null){if(r===t.plot.SeriesPlotStyle.HISTOGRAM){var{xLow:l,xHigh:s}=a;if(l&&s&&l.length===s.length){for(var o=[],d=0;d<l.length;d+=1)o.push(s[d]-l[d]);a.width=o}}else if(r===t.plot.SeriesPlotStyle.LINE||r===t.plot.SeriesPlotStyle.ERROR_BAR||r===t.plot.SeriesPlotStyle.BAR){var{x:h,xLow:c,xHigh:p,y:v,yLow:g,yHigh:S}=a;c&&p&&c!==h&&(a.error_x=J.getPlotlyErrorBars(h,c,p)),g&&S&&g!==v&&(a.error_y=J.getPlotlyErrorBars(v,g,S))}else if(r===t.plot.SeriesPlotStyle.TREEMAP){var{ids:m,labels:b}=a;m!==void 0&&b===void 0&&(a.labels=m)}}}getData(){return this.data}getLayout(){return this.layout}getFilterColumnMap(){return new Map(this.filterColumnMap)}isFilterRequired(){return this.oneClicks.find(e=>e.requireAllFiltersToDisplay)!=null}setFilter(e){var t=this;if(this.oneClicks.length===0){W.warn("Trying to set a filter, but no one click!");return}W.debug("setFilter",e);for(var n=function(){var l=t.oneClicks[r],{columns:s}=l,o=new Set([...e.keys(),...t.lastFilter.keys()]);o.forEach(d=>{var h=e.get(d);t.lastFilter.get(d)!==h&&s.find(c=>c.name===d)!=null&&l.setValueForColumn(d,h)})},r=0;r<this.oneClicks.length;r+=1)n();this.lastFilter=new Map(e)}setFigure(e){this.close(),this.figure=e,this.setTitle(this.getDefaultTitle()),this.initAllSeries(),this.updateAxisPositions(),this.startListeningFigure(),this.listeners.length>0&&this.subscribeFigure()}updateSettings(e){this.settings=e}}$(Ct,"ADD_SERIES_DEBOUNCE",50);function Wn(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function Jt(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){Wn(a,n,r,l,s,"next",o)}function s(o){Wn(a,n,r,l,s,"throw",o)}l(void 0)})}}class Je{static makeModelFromSettings(e,t,n){return Jt(function*(){var r=yield Je.makeFigureFromSettings(e,t,n);return new Ct(e,r,t)})()}static makeFigureFromSettings(e,t,n){return Jt(function*(){var r=yield n.copy();return r.applyCustomColumns(n.customColumns),r.applyFilter(n.filter),r.applySort(n.sort),e.plot.Figure.create(new J(e).makeFigureSettings(t,r))})()}static makeModel(e,t,n){return Jt(function*(){return new Ct(e,n,t)})()}}function Kn(i){return i.setFigure!==void 0}function zn(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function _e(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){zn(a,n,r,l,s,"next",o)}function s(o){zn(a,n,r,l,s,"throw",o)}l(void 0)})}}function re(i,e,t){return(e=Ll(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ll(i){var e=Ol(i,"string");return typeof e=="symbol"?e:e+""}function Ol(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var we=B.module("IrisGridTableModel");class Nl extends gl{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new $e(e),r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,n,r),re(this,"userFrozenColumns",void 0),re(this,"customColumnList",void 0),re(this,"formatColumnList",void 0),re(this,"initialFilters",[]),re(this,"wasUncoalesced",void 0),re(this,"getMemoizedKeyColumnSet",O(a=>new Set(a??G))),re(this,"getMemoizedValueColumnSet",O(a=>new Set(a??G))),re(this,"getMemoizedFrontColumns",O(a=>a??G)),re(this,"getMemoizedBackColumns",O(a=>a??G)),re(this,"getMemoizedFrozenColumns",O((a,l)=>{var s;return(s=l??a)!==null&&s!==void 0?s:G})),re(this,"getCachedFilterableColumnSet",O(a=>new Set(a.map((l,s)=>s)))),re(this,"getCachedPartitionColumns",O(a=>a.filter(l=>l.isPartitionColumn))),this.customColumnList=[],this.formatColumnList=[],this.initialFilters=t.filter,this.wasUncoalesced=this.isPartitionRequired}get isExportAvailable(){return this.table.freeze!=null}get isColumnStatisticsAvailable(){return this.table.getColumnStatistics!=null}get isRollupAvailable(){return this.table.rollup!=null}get isSelectDistinctAvailable(){return this.table.selectDistinct!=null}get isOrganizeColumnsAvailable(){return!0}get isCustomColumnsAvailable(){return this.table.applyCustomColumns!=null}get isFormatColumnsAvailable(){return this.table.applyCustomColumns!=null}get keyColumnSet(){var e;return this.getMemoizedKeyColumnSet((e=this.inputTable)===null||e===void 0?void 0:e.keys)}get valueColumnSet(){var e;return this.getMemoizedValueColumnSet((e=this.inputTable)===null||e===void 0?void 0:e.values)}get frontColumns(){var e,t;return this.getMemoizedFrontColumns((e=(t=this.layoutHints)===null||t===void 0?void 0:t.frontColumns)!==null&&e!==void 0?e:void 0)}get backColumns(){var e,t;return this.getMemoizedBackColumns((e=(t=this.layoutHints)===null||t===void 0?void 0:t.backColumns)!==null&&e!==void 0?e:void 0)}get frozenColumns(){var e,t;return this.getMemoizedFrozenColumns((e=(t=this.layoutHints)===null||t===void 0?void 0:t.frozenColumns)!==null&&e!==void 0?e:void 0,this.userFrozenColumns)}get layoutHints(){return this.table.layoutHints}get floatingLeftColumnCount(){return this.frozenColumns.length}get description(){var e;return(e=this.table.description)!==null&&e!==void 0?e:""}get customColumns(){return this.customColumnList}set customColumns(e){if(we.debug2("set customColumns",e,this.customColumnList,e===this.customColumnList),this.customColumnList.length===0&&e.length===0){we.debug("Ignore empty initial customColumns"),this.customColumnList=e;return}if(this.customColumnList===e){we.debug("Ignore same customColumns");return}this.closeSubscription(),this.customColumnList=e,this.table.applyCustomColumns([...e,...this.formatColumns]),this.applyViewport()}get formatColumns(){return this.formatColumnList}set formatColumns(e){if(we.debug2("set formatColumns",e,this.formatColumnList,e===this.formatColumnList),this.formatColumnList.length===0&&e.length===0){we.debug("Ignore empty initial formatColumns"),this.formatColumnList=e;return}if(this.formatColumnList===e){we.debug("Ignore same formatColumns");return}this.closeSubscription(),this.formatColumnList=e,this.table.applyCustomColumns([...this.customColumns,...e]),this.applyViewport()}updateFrozenColumns(e){this.userFrozenColumns=e,this.dispatchEvent(new Fe(x.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get partitionColumns(){return this.getCachedPartitionColumns(this.columns)}partitionKeysTable(){var e=this;return _e(function*(){return e.valuesTable(e.partitionColumns)})()}partitionMergedTable(){var e=this;return _e(function*(){var t=yield e.table.copy();return t.applyFilter([]),t})()}partitionBaseTable(){var e=this;return _e(function*(){return e.partitionKeysTable()})()}partitionTable(e){var t=this;return _e(function*(){we.debug("getting partition table for partitions",e);for(var n=[],r=0;r<t.partitionColumns.length;r+=1){var a=e[r],l=t.partitionColumns[r],s=t.tableUtils.makeNullableEqFilter(l,a);n.push(s)}var o=yield t.table.copy();return o.applyFilter([...t.initialFilters,...n]),o})()}set filter(e){this.closeSubscription(),this.table.applyFilter([...this.initialFilters,...e]),this.applyViewport()}set totalsConfig(e){if(we.debug("set totalsConfig",e),e!==this.totals){if(this.totals=e,this.formattedStringData=[],this.totalsTablePromise!=null&&this.totalsTablePromise.cancel(),this.setTotalsTable(null),e==null){this.dispatchEvent(new Fe(x.EVENT.UPDATED));return}this.totalsTablePromise=Ne.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{Ne.isCanceled(t)||(we.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new Fe(x.EVENT.REQUEST_FAILED,{detail:t})))})}}get isFilterRequired(){return this.table.isUncoalesced}get isPartitionRequired(){return this.table.isUncoalesced&&this.isValuesTableAvailable&&this.partitionColumns.length>0}get isPartitionAwareSourceTable(){return this.wasUncoalesced}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns).has(e)}export(){var e=this;return _e(function*(){return e.table.freeze()})()}columnStatistics(e){return this.table.getColumnStatistics(e)}isColumnMovable(e){var t=this.columns[e].name;return this.frontColumns.includes(t)||this.backColumns.includes(t)||this.frozenColumns.includes(t)?!1:!this.isKeyColumn(e)}isColumnFrozen(e){return this.frozenColumns.includes(this.columns[e].name)}delete(e){var t=()=>super.pendingDataMap,n=a=>super.pendingDataMap=a,r=this;return _e(function*(){var a;if(!r.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));k(r.inputTable);var{keyColumns:l}=r.inputTable;if(r.keyColumnSet.size===0)throw new Error("No key columns to allow deletion");var s=r.getPendingAreaRange(),o=e.map(C=>Dt.intersection(s,C)).filter(C=>C!=null).map(C=>(k(C),Dt.offset(C,0,-(r.floatingTopRowCount+r.table.size))));if(o.length>0){for(var d=new Map(t()),h=0;h<o.length;h+=1){var c=o[h];k(c.startRow),k(c.endRow);for(var p=c.startRow;p<=c.endRow;p+=1)d.delete(p)}n(d),r.formattedStringData=[],r.dispatchEvent(new Fe(x.EVENT.PENDING_DATA_UPDATED)),r.dispatchEvent(new Fe(x.EVENT.UPDATED))}var v=r.getTableAreaRange(),g=e.map(C=>Dt.intersection(v,C)).filter(C=>C!=null);if(!(g.length<=0)){var[S,m]=yield Promise.all([r.snapshot(g.map(C=>(k(C),l.map(P=>{var w=r.getColumnIndexByName(P.name);if(w==null)throw new Error("Key column ".concat(P.name," not found"));return new Dt(w,C.startRow,w,C.endRow)}))).flat()),r.table.copy()]),b=S.map(C=>{for(var P=[],w=0;w<l.length;w+=1){var F=l[w],L=C[w],M=r.tableUtils.makeNullableEqFilter(F,L);P.push(M)}return P.reduce((D,E)=>{var j;return(j=D==null?void 0:D.and(E))!==null&&j!==void 0?j:E})}),y=b.reduce((C,P)=>{var w;return(w=C==null?void 0:C.or(P))!==null&&w!==void 0?w:P});m.applyFilter([y]),yield(a=r.inputTable)===null||a===void 0?void 0:a.deleteTable(m),m.close()}})()}seekRow(e,t,n,r,a,l,s){var o=this;return _e(function*(){return o.table.seekRow(e,t,n,r,a,l,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}function qn(i,e,t){return(e=jl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function jl(i){var e=Il(i,"string");return typeof e=="symbol"?e:e+""}function Il(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class xl extends x{constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new $e(e);super(e),qn(this,"modelFormatter",void 0),qn(this,"modelColumnAlignmentMap",void 0),this.modelFormatter=t,this.modelColumnAlignmentMap=new Map}get rowCount(){return 0}get columnCount(){return 0}textForCell(e,t){return""}textForColumnHeader(e,t){}get columns(){return G}getColumnIndexByName(e){}get initialMovedColumns(){return G}get initialMovedRows(){return G}get initialColumnHeaderGroups(){return G}get groupedColumns(){return G}formatForCell(e,t){}valueForCell(e,t){}get filter(){return G}set filter(e){}get partition(){return G}set partition(e){}get partitionColumns(){return G}get formatter(){return this.modelFormatter}set formatter(e){this.modelFormatter=e}get columnAlignmentMap(){return this.modelColumnAlignmentMap}set columnAlignmentMap(e){this.modelColumnAlignmentMap=e}displayString(e,t,n){return""}get sort(){return G}set sort(e){}get customColumns(){return G}set customColumns(e){}get formatColumns(){return G}updateFrozenColumns(e){}get rollupConfig(){return null}set rollupConfig(e){}get totalsConfig(){return null}set totalsConfig(e){}export(){throw new Error("Method not implemented.")}columnStatistics(e){throw new Error("Method not implemented.")}get selectDistinctColumns(){return G}set selectDistinctColumns(e){}get pendingDataMap(){return Qt}set pendingDataMap(e){}get pendingRowCount(){return 0}set pendingRowCount(e){}get pendingDataErrors(){return Qt}commitPending(){return Promise.resolve()}setViewport(e,t,n){}snapshot(e){return Promise.resolve([])}textSnapshot(e,t,n){return Promise.resolve("")}valuesTable(e){throw new Error("Method not implemented.")}delete(e){return Promise.resolve()}seekRow(e,t,n,r,a,l,s){return Promise.resolve(0)}get columnHeaderGroups(){return G}set columnHeaderGroups(e){}get columnHeaderGroupMap(){return Qt}getColumnHeaderParentGroup(e,t){}}function Xn(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function Mt(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){Xn(a,n,r,l,s,"next",o)}function s(o){Xn(a,n,r,l,s,"throw",o)}l(void 0)})}}function _l(i,e,t){return(e=Rl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Rl(i){var e=Al(i,"string");return typeof e=="symbol"?e:e+""}function Al(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function Ul(i){return"getBaseTable"in i&&typeof i.getBaseTable=="function"}class $l extends xl{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new $e(e);super(e,n),_l(this,"partitionedTable",void 0),this.partitionedTable=t}get isPartitionRequired(){return!0}get isPartitionAwareSourceTable(){return!1}get isReversible(){return!1}displayString(e,t,n){return""}close(){this.partitionedTable.close()}get columns(){return this.partitionedTable.columns}get partitionColumns(){return this.partitionedTable.keyColumns}get columnCount(){return this.columns.length}getColumnIndexByName(e){return this.columns.findIndex(t=>t.name===e)}textForColumnHeader(e,t){var n;return(n=this.columns[e].name)!==null&&n!==void 0?n:""}partitionKeysTable(){var e=this;return Mt(function*(){return e.partitionedTable.getKeyTable()})()}partitionBaseTable(){var e=this;return Mt(function*(){return Ul(e.partitionedTable)?e.partitionedTable.getBaseTable():e.partitionedTable.getKeyTable()})()}partitionMergedTable(){var e=this;return Mt(function*(){return e.partitionedTable.getMergedTable()})()}partitionTable(e){var t=this;return Mt(function*(){try{var n=yield t.partitionedTable.getTable(e);if(n==null)throw new $n("Partition not found");return n}catch(r){throw bl(r)?r:new $n("Unable to retrieve partition")}})()}}function Ee(i,e,t){return(e=Vl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Vl(i){var e=Gl(i,"string");return typeof e=="symbol"?e:e+""}function Gl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Te=B.module("IrisGridProxyModel");function Ke(i,e,t,n){return z.isTreeTable(e)?new Cl(i,e,t):z.isPartitionedTable(e)?new $l(i,e,t):new Nl(i,e,t,n)}class Hl extends x{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new $e(e),r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),Ee(this,"model",void 0),Ee(this,"dh",void 0),Ee(this,"originalModel",void 0),Ee(this,"modelPromise",void 0),Ee(this,"rollup",void 0),Ee(this,"partition",void 0),Ee(this,"selectDistinct",void 0),Ee(this,"currentViewport",void 0),Ee(this,"setViewport",(l,s,o)=>{this.currentViewport={top:l,bottom:s,columns:o},this.model.setViewport(l,s,o)}),this.addEventListener=this.addEventListener.bind(this),this.removeEventListener=this.removeEventListener.bind(this),this.dispatchEvent=this.dispatchEvent.bind(this),this.handleModelEvent=this.handleModelEvent.bind(this);var a=Ke(e,t,n,r);return this.dh=e,this.originalModel=a,this.model=a,this.modelPromise=null,this.rollup=null,this.partition=null,this.selectDistinct=[],new Proxy(this,{get(l,s,o){var d,h=((d=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(l),s))===null||d===void 0?void 0:d.get)!=null;if(h)return Reflect.get(l,s,o);var c=Object.prototype.hasOwnProperty.call(l,s),p=Object.prototype.hasOwnProperty.call(Object.getPrototypeOf(l),s),v=c||p?l:l.model;return Reflect.get(v,s)},set(l,s,o){var d,h=((d=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(l),s))===null||d===void 0?void 0:d.set)!=null,c=Object.prototype.hasOwnProperty.call(l,s);return h||c?Reflect.set(l,s,o,l):Reflect.set(l.model,s,o,l.model)}})}close(){this.originalModel.close(),this.model!==this.originalModel&&this.model.close(),this.modelPromise!=null&&this.modelPromise.cancel()}handleModelEvent(e){Te.debug2("handleModelEvent",e);var{detail:t,type:n}=e;this.dispatchEvent(new Fe(n,{detail:t}))}setModel(e){Te.debug("setModel",e);var t=this.model,{columns:n}=t;if(t!==this.originalModel&&t.close(),this.model=e,this.listenerCount>0&&this.addListeners(e),n!==e.columns)this.dispatchEvent(new Fe(x.EVENT.COLUMNS_CHANGED,{detail:e.columns}));else if(this.currentViewport!=null){var{top:r,bottom:a,columns:l}=this.currentViewport;e.setViewport(r,a,l)}Me(e)&&this.dispatchEvent(new Fe(x.EVENT.TABLE_CHANGED,{detail:e.table}))}setNextModel(e){Te.debug2("setNextModel"),this.modelPromise&&this.modelPromise.cancel(),this.listenerCount>0&&this.removeListeners(this.model),this.modelPromise=Ne.makeCancelable(e,t=>t.close()),this.modelPromise.then(t=>{this.modelPromise=null,this.setModel(t)}).catch(t=>{if(Ne.isCanceled(t)){Te.debug2("setNextModel cancelled");return}Te.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new Fe(x.EVENT.REQUEST_FAILED,{detail:t}))})}startListening(){super.startListening(),this.addListeners(this.model)}stopListening(){super.stopListening(),this.removeListeners(this.model)}addListeners(e){for(var t=Object.keys(x.EVENT),n=0;n<t.length;n+=1)e.addEventListener(t[n],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(x.EVENT),n=0;n<t.length;n+=1)e.removeEventListener(t[n],this.handleModelEvent)}get isCustomColumnsAvailable(){return this.model.isCustomColumnsAvailable&&!(this.isSelectDistinctAvailable&&this.selectDistinctColumns.length>0)}get isRollupAvailable(){return(this.originalModel.isRollupAvailable||this.rollup!=null)&&this.selectDistinct.length===0}get isSelectDistinctAvailable(){return(this.originalModel.isSelectDistinctAvailable||this.selectDistinct.length>0)&&this.rollup==null}get originalColumns(){return this.originalModel.columns}get partitionColumns(){return ke(this.originalModel)?this.originalModel.partitionColumns:[]}get partitionConfig(){return!ke(this.originalModel)||!this.originalModel.isPartitionRequired?Sl(this.originalModel)?null:void 0:this.partition}set partitionConfig(e){if(!this.isPartitionRequired)throw new Error("Partitions are not available");Te.debug("set partitionConfig",e),this.partition=e;var t=Promise.resolve(this.originalModel);e!=null&&ke(this.originalModel)&&(e.mode==="keys"?t=this.originalModel.partitionBaseTable().then(n=>Ke(this.dh,n,this.formatter)):e.mode==="merged"?t=this.originalModel.partitionMergedTable().then(n=>Ke(this.dh,n,this.formatter)):t=this.originalModel.partitionTable(e.partitions).then(n=>Ke(this.dh,n,this.formatter))),this.setNextModel(t)}partitionKeysTable(){if(!ke(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionKeysTable()}partitionMergedTable(){if(!ke(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionMergedTable()}partitionTable(e){if(!ke(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionTable(e)}get rollupConfig(){return this.rollup}set rollupConfig(e){if(Te.debug("set rollupConfig",e),!this.isRollupAvailable)throw new Error("Rollup Rows are not available");if(!Gi(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);Me(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(n=>Ke(this.dh,n,this.formatter))),this.setNextModel(t)}}get selectDistinctColumns(){return this.selectDistinct}set selectDistinctColumns(e){if(Te.debug("set selectDistinctColumns",e),!this.isSelectDistinctAvailable)throw new Error("Select distinct is not available");if(e===this.selectDistinctColumns||e.length===0&&this.selectDistinctColumns.length===0){Te.debug("Ignore same selectDistinctColumns",e);return}this.selectDistinct=e;var t=e.map(r=>this.originalColumns.find(a=>a.name===r)).filter(r=>r!=null),n=Promise.resolve(this.originalModel);Me(this.originalModel)&&t.length>0&&(n=this.originalModel.table.selectDistinct(t).then(r=>Ke(this.dh,r,this.formatter))),this.setNextModel(n)}get isFilterRequired(){return this.originalModel.isFilterRequired}get isPartitionRequired(){return ke(this.originalModel)?this.originalModel.isPartitionRequired:void 0}get isPartitionAwareSourceTable(){return ke(this.originalModel)&&this.originalModel.isPartitionAwareSourceTable}get formatter(){return this.originalModel.formatter}set formatter(e){this.originalModel.formatter=e}get columnAlignmentMap(){return this.originalModel.columnAlignmentMap}set columnAlignmentMap(e){this.originalModel.columnAlignmentMap=e}}function Zn(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function Bl(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){Zn(a,n,r,l,s,"next",o)}function s(o){Zn(a,n,r,l,s,"throw",o)}l(void 0)})}}class vr{static makeModel(e,t){var n=arguments;return Bl(function*(){var r=n.length>2&&n[2]!==void 0?n[2]:new $e(e),a=null;return!z.isTreeTable(t)&&!z.isPartitionedTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new Hl(e,t,r,a)})()}}function Yn(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Qn(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Yn(Object(t),!0).forEach(function(n){Wl(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Yn(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Wl(i,e,t){return(e=Kl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Kl(i){var e=zl(i,"string");return typeof e=="symbol"?e:e+""}function zl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function mr(i,e){var t=["isStuckToBottom","isStuckToRight","movedColumns","movedRows"];return i===e||t.every(n=>i[n]===e[n])}function fr(i,e){var t=["advancedFilters","aggregationSettings","customColumnFormatMap","columnAlignmentMap","isFilterBarShown","quickFilters","customColumns","reverse","rollupConfig","showSearchBar","searchValue","selectDistinctColumns","selectedSearchColumns","sorts","invertSearchColumns","pendingDataMap","frozenColumns","conditionalFormats","columnHeaderGroups","partitionConfig"];return i===e||i.metrics!=null&&e.metrics!=null&&i.metrics.userColumnWidths===e.metrics.userColumnWidths&&i.metrics.userRowHeights===e.metrics.userRowHeights&&t.every(n=>i[n]===e[n])}function ql(){return O((i,e)=>H.dehydrateGridState(i,e),(i,e)=>{var[t,n]=i,[r,a]=e;return t===r&&mr(n,a)})}function Xl(){return O((i,e)=>{var t=new H(i.dh);return t.dehydrateIrisGridState(i,e)},(i,e)=>{var[t,n]=i,[r,a]=e;return t===r&&fr(n,a)})}function Zl(){return O((i,e,t)=>{var n=new H(i.dh);return Qn(Qn({},n.dehydrateIrisGridState(i,e)),H.dehydrateGridState(i,t))},(i,e)=>{var[t,n,r]=i,[a,l,s]=e;return t===a&&fr(n,l)&&mr(r,s)})}var an={makeMemoizedGridStateDehydrator:ql,makeMemoizedIrisGridStateDehydrator:Xl,makeMemoizedCombinedGridStateDehydrator:Zl};function Wt(){var i=f.useContext(ga);if(i==null)throw new Error("LayoutManager not available, did you add a LayoutManagerContext.Provider to the tree?");return i}function mn(i,e,t){return(e=Yl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Yl(i){var e=Ql(i,"string");return typeof e=="symbol"?e:e+""}function Ql(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class et{}mn(et,"OPEN","ChartEvent.OPEN");mn(et,"CLOSE","ChartEvent.CLOSE");mn(et,"COLUMN_SELECTED","ChartEvent.COLUMN_SELECTED");function st(i,e,t){return(e=Jl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Jl(i){var e=es(i,"string");return typeof e=="symbol"?e:e+""}function es(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Z{}st(Z,"OPEN_GRID","IrisGridEvent.OPEN_GRID");st(Z,"CLOSE_GRID","IrisGridEvent.CLOSE_GRID");st(Z,"DATA_SELECTED","IrisGridEvent.DATA_SELECTED");st(Z,"COLUMN_SELECTED","IrisGridEvent.COLUMN_SELECTED");st(Z,"STATE_CHANGED","IrisGridEvent.STATE_CHANGED");st(Z,"CREATE_CHART","IrisGridevent.CREATE_CHART");function gr(i,e,t){return(e=ts(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function ts(i){var e=ns(i,"string");return typeof e=="symbol"?e:e+""}function ns(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class fn{}gr(fn,"OPEN","PandasEvent.OPEN");gr(fn,"CLOSE","PandasEvent.CLOSE");var is=ba;function rs(i){var{children:e,descriptor:t}=i,{name:n,type:r,description:a,displayName:l}=t,s=r.replace(/([a-z])([A-Z])/g,"$1 $2");return u.jsxs("div",{className:"tab-tooltip-grid-container",children:[u.jsxs("span",{className:"tab-tooltip-title",children:[s," Name"]}),u.jsxs("div",{className:"tab-tooltip-name-wrapper",children:[u.jsx("span",{className:"tab-tooltip-name",children:n}),u.jsx(Sa,{className:"tab-tooltip-copy",tooltip:"Copy name",copy:n})]}),n!==l&&!!l&&u.jsxs(u.Fragment,{children:[u.jsx("span",{className:"tab-tooltip-title",children:"Display Name"}),u.jsx("span",{className:"tab-tooltip-name",children:l})]}),!!a&&u.jsx("div",{className:"tab-tooltip-description",children:a}),e]})}var gn=Hi(rs);function ln(i,e,t){return(e=as(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function as(i){var e=ls(i,"string");return typeof e=="symbol"?e:e+""}function ls(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class br extends f.PureComponent{constructor(e){var t;super(e),t=this,ln(this,"getCachedRenderTabTooltip",O((n,r)=>n?()=>u.jsx(gn,{descriptor:r}):void 0)),ln(this,"getCachedActions",O(function(n){var r,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:G;return[...a,{title:"Copy ".concat((r=n.displayType)!==null&&r!==void 0?r:n.type," Name"),group:Bi.groups.medium,order:20,action:t.handleCopyName}]})),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleCopyName=this.handleCopyName.bind(this),this.state={isClientDisconnected:!1,isPanelDisconnected:!1,isWidgetDisconnected:!1,isWaitingForReconnect:!1,isPanelInactive:!1}}handleCopyName(){var{descriptor:e}=this.props;Ca(e.name)}getErrorMessage(){var{descriptor:e,errorMessage:t}=this.props,{isClientDisconnected:n,isPanelDisconnected:r,isWidgetDisconnected:a,isWaitingForReconnect:l}=this.state;if(t!=null&&t!=="")return"".concat(t);if(n&&r&&l)return`Disconnected from server.
3
3
  Check your internet connection.`;if(n&&r)return"Disconnected from server.";if(r){var{name:s,type:o}=e;return'Variable "'.concat(s,`" not set.
4
4
  `).concat(o," does not exist yet.")}if(a)return"".concat(e.name," is unavailable.")}handleSessionClosed(e){var{onSessionClose:t}=this.props;this.setState({isPanelDisconnected:!0,isWaitingForReconnect:!1}),t==null||t(e)}render(){var{children:e,className:t,componentPanel:n,descriptor:r,isLoaded:a,isLoading:l,glContainer:s,glEventHub:o,isDisconnected:d,isClonable:h,isRenamable:c,showTabTooltip:p=!1,renderTabTooltip:v,onClearAllFilters:g,onHide:S,onFocus:m,onBlur:b,onResize:y,onSessionOpen:C,onShow:P,onTabBlur:w,onTabFocus:F,onTabClicked:L,additionalActions:M}=this.props,{isPanelDisconnected:D,isWidgetDisconnected:E,isPanelInactive:j}=this.state,R=this.getErrorMessage(),A=v??this.getCachedRenderTabTooltip(p,r),q=this.getCachedActions(r,M);return u.jsxs(rt,{className:de(t,{disconnected:D||E||d,inactive:j}),componentPanel:n,glContainer:s,glEventHub:o,onClearAllFilters:g,onHide:S,onFocus:m,onBlur:b,onResize:y,onShow:P,onSessionClose:this.handleSessionClosed,onSessionOpen:C,onTabBlur:w,onTabFocus:F,onTabClicked:L,renderTabTooltip:A,errorMessage:R,isLoaded:a,isLoading:l,isClonable:h,isRenamable:c,additionalActions:q,children:[e,j&&u.jsx("div",{className:"fill-parent-absolute"})]})}}ln(br,"defaultProps",{className:"",isClonable:!0,isDisconnected:!1,isLoading:!1,isLoaded:!0,isRenamable:!0,showTabTooltip:!0});var Ft=Hi(br);function ss(i){var{columnMap:e,inputFilterMap:t,linkedColumnMap:n,onAdd:r,onOpenLinker:a,waitingFilterMap:l,waitingInputMap:s}=i,o=f.useMemo(()=>{var g=Array.from(s.keys()),S=g.find(y=>t.get(y)!=null),m=g.find(y=>n.get(y)!=null),b=ge.join(g.map(y=>'"'.concat(y,'"')));return S!=null&&S&&m!=null&&m?"Use a filter control or linked table to set a value for ".concat(b):S!=null&&S?"Set a filter control value for ".concat(b):"Double click a row in a linked table to set a value for ".concat(b)},[t,n,s]),d=f.useMemo(()=>Array.from(e.values()),[e]),h=f.useCallback(g=>{g.stopPropagation(),g.preventDefault(),r(Array.from(l.values()))},[r,l]),c=f.useCallback(g=>{g.stopPropagation(),g.preventDefault(),a()},[a]),p=l.size>0,v=!p&&s.size>0;return u.jsx("div",{className:"chart-panel-overlay chart-filter-overlay",children:u.jsxs("div",{className:de("chart-panel-overlay-content chart-filter-overlay-content",{"chart-filter-waiting-filter":p},{"chart-filter-waiting-input":v}),children:[p&&u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"info-message",children:"This plot requires a filter control to be added to the layout or a table link to be created on the following columns:"}),u.jsx("div",{className:"waiting-filter-list",children:d.map(g=>{var S=l.has(g.name),m=S?tl:nl;return u.jsxs("div",{className:de("waiting-filter-item",{"is-invalid":S}),children:[u.jsx(oe,{icon:m}),g.name]},g.name)})}),u.jsxs("div",{children:[u.jsx(N,{kind:"primary",onClick:h,children:"Add Input Filters"}),u.jsx(N,{kind:"primary",onClick:c,children:"Open Linker Tool"})]})]}),v&&u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"info-message",children:"Waiting for User Input"}),u.jsx("div",{className:"",children:o})]})]})})}function Rt(i){var{columns:e,onColumnSelected:t,onMouseEnter:n,onMouseLeave:r}=i;return u.jsx("div",{className:"chart-panel-overlay chart-column-selector-overlay",children:u.jsxs("div",{className:de("chart-panel-overlay-content"),children:[u.jsx("div",{className:"info-message",children:"This plot requires a filter control to be added to the layout or a table link to be created on the following columns:"}),u.jsx("div",{className:"waiting-column-select-list",children:e.map(a=>u.jsx(hr,{className:de("btn-chart-column-selector",Rt.makeButtonClassName(a.name)),onClick:()=>t(a.name),onMouseEnter:()=>{n==null||n(a)},onMouseLeave:r,disabled:!a.isValid,isLinked:a.isActive,children:a.name},a.name))})]})})}Rt.makeButtonClassName=i=>"btn-chart-column-selector-".concat(i);function Xe(i){return i.settings!==void 0}function Sr(i){return i.figure!==void 0}function Cr(i){if(i==null)return!1;var{settings:e,tableSettings:t}=i;return typeof e=="object"&&typeof t=="object"}function yr(i){return i!=null&&Cr(i.panelState)}var bn=at(De.COLUMNS_CHANGED),os=bn.listen,At=bn.emit,ds=bn.useListener,Sn=at(De.TABLE_CHANGED);Sn.listen;var Ut=Sn.emit,us=Sn.useListener,Cn=at(De.FILTERS_CHANGED);Cn.listen;var Pr=Cn.emit,hs=Cn.useListener,yn=Object.freeze({LINK_POINT_SELECTED:"LinkerEvent.LINK_POINT_SELECTED",SOURCE_DATA_SELECTED:"LinkerEvent.SOURCE_DATA_SELECTED",REGISTER_TARGET:"LinkerEvent.REGISTER_TARGET"}),Pn=at(yn.LINK_POINT_SELECTED),cs=Pn.listen,Kt=Pn.emit;Pn.useListener;var wn=at(yn.SOURCE_DATA_SELECTED),ps=wn.listen,wr=wn.emit;wn.useListener;var En=at(yn.REGISTER_TARGET),vs=En.listen,Jn=En.emit;En.useListener;function ei(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function kt(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ei(Object(t),!0).forEach(function(n){le(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):ei(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function le(i,e,t){return(e=ms(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function ms(i){var e=fs(i,"string");return typeof e=="symbol"?e:e+""}function fs(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Q=B.module("ChartPanel"),gs=150;function bs(i){return i.inputFilters!=null}function Ss(i){return i.panelState!=null}class zt extends f.Component{constructor(e){super(e),le(this,"panelContainer",void 0),le(this,"pending",void 0),le(this,"getWaitingInputMap",O((l,s,o)=>{if(!l)return new Map;var d=new Map(s);return o.forEach((h,c)=>{d.delete(c)}),d})),le(this,"getWaitingFilterMap",O((l,s,o,d,h)=>{if(!l)return new Map;var c=new Map(s);return o.forEach((p,v)=>{c.delete(v)}),h.forEach((p,v)=>{c.delete(v)}),d.forEach((p,v)=>{c.delete(v)}),c})),le(this,"getInputFilterColumnMap",O((l,s)=>{for(var o=new Map,d=0;d<s.length;d+=1){var h=s[d],{name:c,type:p}=h,v=l.get(c);v!=null&&v.type===p&&o.set(c,h)}return o})),le(this,"getLinkedColumnMap",O((l,s)=>{for(var o=new Map,d=T.getIdFromPanel(this),h=0;h<s.length;h+=1){var c=s[h],p=null;if(c.start!=null&&c.start.panelId===d&&l.has(c.start.columnName)?p=c.start.columnName:c.end&&c.end.panelId===d&&l.has(c.end.columnName)&&(p=c.end.columnName),p!=null&&l.has(p)){var v=l.get(p);k(v),o.set(p,v)}}return o})),le(this,"getSelectorColumns",O((l,s,o)=>Array.from(l.values()).map(d=>({name:d.name,type:d.type,isValid:o?o(this,d,{type:"chartLink"}):!1,isActive:s.has(d.name)})))),le(this,"getWidgetPanelDescriptor",O(l=>{var s="Chart";if(Xe(l))s=l.table;else if(Sr(l)){var o;s=(o=l.figure)!==null&&o!==void 0?o:s}else{var d;s=(d=l.name)!==null&&d!==void 0?d:s}return kt(kt({},l),{},{type:"Chart",name:s})})),this.handleColumnSelected=this.handleColumnSelected.bind(this),this.handleColumnMouseEnter=this.handleColumnMouseEnter.bind(this),this.handleColumnMouseLeave=this.handleColumnMouseLeave.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleFilterAdd=this.handleFilterAdd.bind(this),this.handleHide=this.handleHide.bind(this),this.handleError=this.handleError.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleSettingsChanged=this.handleSettingsChanged.bind(this),this.handleOpenLinker=this.handleOpenLinker.bind(this),this.handleShow=this.handleShow.bind(this),this.handleSourceColumnChange=this.handleSourceColumnChange.bind(this),this.handleSourceFilterChange=this.handleSourceFilterChange.bind(this),this.handleSourceSortChange=this.handleSourceSortChange.bind(this),this.handleTabBlur=this.handleTabBlur.bind(this),this.handleTabFocus=this.handleTabFocus.bind(this),this.handleUpdate=this.handleUpdate.bind(this),this.updateModelFromSource=Ve(this.updateModelFromSource.bind(this),gs),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.panelContainer=ne.createRef(),this.pending=new zi;var{metadata:t,panelState:n}=e,{filterValueMap:r=[],settings:a={}}=n??{};this.state={settings:a,error:void 0,isActive:!1,isDisconnected:!1,isLoading:!1,isLoaded:!1,isLinked:t!=null&&Xe(t)&&t.settings.isLinked,filterMap:new Map(r),filterValueMap:new Map(r),model:void 0,columnMap:new Map,panelState:n}}componentDidMount(){this.isHidden()||(this.setState({isActive:!0}),this.initModel())}componentDidUpdate(e,t){var{inputFilters:n,source:r,makeModel:a}=this.props,{columnMap:l,model:s,filterMap:o,filterValueMap:d,isLinked:h,settings:c}=this.state;a!==e.makeModel&&this.initModel(),s!=null&&(l!==t.columnMap&&this.pruneFilterMaps(),n!==e.inputFilters&&this.updateChangedInputFilters(n,e.inputFilters),o!==t.filterMap?this.updateFilters():d!==t.filterValueMap&&this.updatePanelState(),c!==t.settings&&Kn(s)&&(s.updateSettings(c),this.updatePanelState()),h!==t.isLinked?r&&(h?(this.startListeningToSource(r),this.updateModelFromSource()):this.stopListeningToSource(r)):h&&r!==e.source&&(e.source&&this.stopListeningToSource(e.source),r&&(this.startListeningToSource(r),this.updateModelFromSource())))}componentWillUnmount(){this.pending.cancel();var{model:e}=this.state,{source:t}=this.props;e!=null&&t&&this.stopListeningToSource(t)}initModel(){this.setState({isLoading:!0,isLoaded:!1,error:void 0,isDisconnected:!1});var{makeModel:e}=this.props;this.pending.cancel(),this.pending.add(e(),t=>{t.close()}).then(this.handleLoadSuccess,this.handleLoadError)}startListeningToSource(e){Q.debug("startListeningToSource",e);var{model:t}=this.state;k(t);var{dh:n}=t;e.addEventListener(n.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleSourceColumnChange),e.addEventListener(n.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.addEventListener(n.Table.EVENT_SORTCHANGED,this.handleSourceSortChange)}stopListeningToSource(e){Q.debug("stopListeningToSource",e);var{model:t}=this.state;k(t);var{dh:n}=t;e.removeEventListener(n.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleSourceColumnChange),e.removeEventListener(n.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.removeEventListener(n.Table.EVENT_SORTCHANGED,this.handleSourceSortChange)}loadModelIfNecessary(){var{isActive:e,isLoaded:t,isLoading:n}=this.state;e&&!t&&!n&&this.initModel()}isHidden(){var{glContainer:e}=this.props,{isHidden:t}=e;return t}handleColumnSelected(e){var{glEventHub:t}=this.props,{columnMap:n}=this.state,r=T.getIdFromPanel(this);k(r);var a=n.get(e);a!=null&&Kt(t,r,a,{type:"chartLink"})}handleColumnMouseEnter(e){var{type:t,name:n}=e,{columnSelectionValidator:r}=this.props;Q.debug("handleColumnMouseEnter",r,t,n),r&&r(this,{type:t,name:n},{type:"chartLink"})}handleColumnMouseLeave(){var{columnSelectionValidator:e}=this.props;Q.debug("handleColumnMouseLeave",e),e&&e(this,void 0,{type:"chartLink"})}handleDisconnect(){this.setState({error:new Error("Figure disconnected"),isDisconnected:!0})}handleFilterAdd(e){for(var t=0;t<e.length;t+=1)this.openInputFilter(e[t])}handleOpenLinker(){var{localDashboardId:e,setActiveTool:t,setDashboardIsolatedLinkerPanelId:n}=this.props;n(e,void 0),t(pe.LINKER)}handleReconnect(){this.setState({isDisconnected:!1,error:void 0}),this.sendColumnChange(),this.updateColumnFilters()}handleLoadSuccess(e){Q.debug("handleLoadSuccess");var{model:t}=this.state;this.setState({model:e,isLoaded:!0},()=>{var{inputFilters:n,source:r}=this.props,{filterMap:a,isLinked:l}=this.state;e!==t&&(this.sendColumnChange(),this.updateColumnFilters(),this.updateInputFilters(n,a.size>0||e.isFilterRequired()),r&&l&&(this.startListeningToSource(r),this.updateModelFromSource()))})}handleLoadError(e){Ne.isCanceled(e)||(Q.error("handleLoadError",e),this.setState({error:e,isLoading:!1}))}handleSourceColumnChange(){this.updateModelFromSource()}handleSourceFilterChange(){this.updateModelFromSource()}handleSourceSortChange(){this.updateModelFromSource()}updateModelFromSource(){var{metadata:e,source:t}=this.props,{isLinked:n,model:r}=this.state;if(!n||!r||!t){Q.debug2("updateModelFromSource ignoring",n,r,t);return}var{dh:a}=r;if(this.pending.cancel(),Xe(e)){var{settings:l}=e;this.pending.add(Je.makeFigureFromSettings(a,l,t),s=>s.close()).then(s=>{Kn(r)&&r.setFigure(s)}).catch(this.handleLoadError)}this.updatePanelState()}updatePanelState(){var{sourcePanel:e}=this.props,{panelState:t,filterValueMap:n,settings:r}=this.state,{tableSettings:a}=t??{};if(e&&bs(e.props)&&Ss(e.state)){var{inputFilters:l}=e.props,{panelState:s}=e.state;s!=null&&(a=H.extractTableSettings(s,l))}this.setState({panelState:{settings:r,tableSettings:a,filterValueMap:Array.from(n)}})}handleError(){this.setState({isLoading:!1})}handleSettingsChanged(e){this.setState(t=>{var{settings:n}=t,r=kt(kt({},n),e);return Q.debug("Updated settings",r),{settings:r}})}handleHide(){this.setActive(!1)}handleShow(){this.setActive(!0)}handleTabBlur(){this.setActive(!1)}handleTabFocus(){var e=this.isHidden();this.setActive(!e)}handleUpdate(e){var{isLoading:t}=e;this.setState({isLoading:t})}handleClearAllFilters(){this.setState({filterValueMap:new Map,filterMap:new Map}),this.updatePanelState()}openInputFilter(e){var{glEventHub:t}=this.props,{name:n,type:r}=e;t.emit(De.OPEN_INPUT,{title:"".concat(n," Filter"),panelState:{name:n,type:r,isValueShown:!0},createNewStack:!0,focusElement:"input"})}setActive(e){this.setState({isActive:e},()=>{e&&this.loadModelIfNecessary()})}sendColumnChange(){var{model:e}=this.state;if(e){var{glEventHub:t}=this.props,n=T.getIdFromPanel(this);k(n),At(t,n,Array.from(e.getFilterColumnMap().values()))}}getCoordinateForColumn(e){var t,n=Rt.makeButtonClassName(e);if(!this.panelContainer.current)return null;var r=this.panelContainer.current.querySelector(".".concat(n)),a=(t=r==null?void 0:r.getBoundingClientRect())!==null&&t!==void 0?t:null;if(a==null||a.width<=0||a.height<=0)return null;var l=a.left+a.width/2,s=a.bottom;return[l,s]}setFilterMap(e){Q.debug("setFilterMap",e),this.setState(t=>{var{columnMap:n,filterMap:r}=t,a=null,l=new Map(t.filterValueMap);return e.forEach((s,o)=>{var{columnType:d,filterList:h}=s,c=n.get(o);if(!(c==null||c.type!==d)){if(h.length===0){Q.debug("Ignoring empty filterList for column",o);return}var{value:p}=h[0];l.set(o,p),r.get(o)!==p&&(a===null&&(a=new Map(r)),a.set(o,p))}}),{filterValueMap:l,filterMap:a??r}})}unsetFilterValue(e){this.setState(t=>{var{inputFilters:n}=this.props,{columnMap:r}=t,{filterMap:a,filterValueMap:l}=t;if(!l.has(e))return null;l=new Map(t.filterValueMap),l.delete(e);var s=this.getInputFilterColumnMap(r,n);if(s.has(e)){var o,d=a.get(e),h=(o=s.get(e))===null||o===void 0?void 0:o.value;h!=null&&d!==h&&(a=new Map(t.filterMap),h.length>0?a.set(e,h):a.delete(e))}else a=new Map(t.filterMap),a.delete(e);return{filterMap:a,filterValueMap:l}})}updateChangedInputFilters(e,t){var n=t.filter(a=>e.find(l=>l.name===a.name&&l.type===a.type)===void 0);n.length>0&&this.deleteInputFilters(n);var r=e.filter(a=>!t.includes(a));r.length>0&&this.updateInputFilters(r)}updateInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState(n=>{for(var{columnMap:r}=n,a=new Map(n.filterValueMap),l=new Map(n.filterMap),s=t?{filterMap:l,filterValueMap:a}:{},o=0;o<e.length;o+=1){var{name:d,type:h,value:c}=e[o],p=r.get(d);p!=null&&p.type===h&&(c!=null&&l.get(d)!==c&&(c===""?l.delete(d):l.set(d,c),s.filterMap=l),a.has(d)&&(a.delete(d),s.filterValueMap=a))}return Q.debug("updateInputFilters",s),s})}deleteInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState(n=>{for(var{columnMap:r,filterValueMap:a}=n,l=new Map(n.filterMap),s=t,o=0;o<e.length;o+=1){var{name:d,type:h}=e[o],c=r.get(d);if(c!=null&&c.type===h&&l.has(d)){var p=l.get(d);if(a.has(d)){var v=a.get(d);v!==p&&v!=null&&(s=!0,l.set(d,v))}else s=!0,l.delete(d)}}return Q.debug("deleteInputFilters",s),s?{filterMap:l}:null})}updateColumnFilters(){this.setState(e=>{var{model:t}=e;return t?{columnMap:t.getFilterColumnMap()}:null})}updateFilters(){var{columnMap:e,filterMap:t,model:n}=this.state;k(n);var r=this.getWaitingInputMap(n.isFilterRequired(),e,t);if(n.setFilter(t),t.size>0&&r.size===0){var a=n.getDefaultTitle(),l=ge.join(Array.from(t.entries()).map(s=>{var[o,d]=s;return"".concat(o,": ").concat(d)}));a?n.setTitle("".concat(a,'<br><span style="font-size: smaller">').concat(l,"</span>")):n.setTitle(l),Q.debug2("updateFilters filters set",t),this.setState({isLoading:!0})}else Q.debug2("updateFilters waiting on inputs",r),n.setTitle(n.getDefaultTitle()),this.setState({isLoading:!1});this.updatePanelState()}pruneFilterMaps(){this.setState(e=>{var{columnMap:t}=e,n=new Map(e.filterMap),r=new Map(e.filterValueMap),a={};return e.filterValueMap.forEach((l,s)=>{t.has(s)||(r.delete(s),a.filterValueMap=r)}),e.filterMap.forEach((l,s)=>{t.has(s)||(n.delete(s),a.filterMap=n)}),a})}render(){var{columnSelectionValidator:e,glContainer:t,glEventHub:n,inputFilters:r,isLinkerActive:a,links:l,metadata:s,settings:o,Plotly:d,containerRef:h}=this.props,{columnMap:c,filterMap:p,error:v,model:g,isActive:S,isDisconnected:m,isLoaded:b,isLoading:y}=this.state,C=this.getInputFilterColumnMap(c,r),P=this.getLinkedColumnMap(c,l),w=g!=null?this.getWaitingInputMap(g.isFilterRequired(),c,p):new Map,F=g!=null?this.getWaitingFilterMap(g.isFilterRequired(),c,p,P,C):new Map,L=v!=null?"Unable to open chart. ".concat(v):void 0,M=w.size>0,D=c.size>0&&a,E=this.getWidgetPanelDescriptor(s);return u.jsx(Ft,{className:de("iris-chart-panel",{"input-required":M}),componentPanel:this,glContainer:t,glEventHub:n,onHide:this.handleHide,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabBlur:this.handleTabBlur,onTabFocus:this.handleTabFocus,errorMessage:L,isDisconnected:m,isLoading:y,isLoaded:b,descriptor:E,children:u.jsxs("div",{ref:this.panelContainer,className:"chart-panel-container h-100 w-100",children:[u.jsx("div",{className:"chart-container h-100 w-100",children:b&&g&&u.jsx(cr,{isActive:S,model:g,settings:o,onDisconnect:this.handleDisconnect,onReconnect:this.handleReconnect,onUpdate:this.handleUpdate,onError:this.handleError,onSettingsChanged:this.handleSettingsChanged,Plotly:d,containerRef:h})}),u.jsx(nn,{in:M&&!D&&!y,mountOnEnter:!0,unmountOnExit:!0,children:u.jsx(ss,{inputFilterMap:C,linkedColumnMap:P,onAdd:this.handleFilterAdd,onOpenLinker:this.handleOpenLinker,columnMap:c,waitingFilterMap:F,waitingInputMap:w})}),u.jsx(nn,{in:D,mountOnEnter:!0,unmountOnExit:!0,children:u.jsx(Rt,{columns:this.getSelectorColumns(c,P,e),onColumnSelected:this.handleColumnSelected,onMouseEnter:this.handleColumnMouseEnter,onMouseLeave:this.handleColumnMouseLeave})})]})})}}le(zt,"defaultProps",{columnSelectionValidator:null,isLinkerActive:!1,source:null,sourcePanel:null,panelState:null,settings:{},containerRef:null});le(zt,"displayName","ChartPanel");le(zt,"COMPONENT","ChartPanel");var Cs=(i,e)=>{var{localDashboardId:t,metadata:n}=e,r;n!=null&&Xe(n)&&(r=n.sourcePanelId);var a=Vt(i,t),l=Ki(i,t),s=dn(i),o=Gt(i,t),d=s===pe.LINKER&&o===void 0;return{columnSelectionValidator:Et(i,t),isLinkerActive:d,inputFilters:wt(i,t),links:lt(i,t),source:r!=null?a.get(r):void 0,sourcePanel:r!=null?l.get(r):void 0,settings:Ht(i)}},Tn=Ge(Cs,{setActiveTool:Wi,setDashboardIsolatedLinkerPanelId:on},null,{forwardRef:!0})(zt);function ys(i,e,t,n,r){if(e>t)throw new Error("Persisted state ".concat(r," is a newer version than the current version. Persisted version: ").concat(e,". Current version: ").concat(t));for(var a=i,l=e;l<t;){var s=n.filter(d=>d.from===l);if(s.length===0)throw new Error("No migration found for persisted state ".concat(r," from version ").concat(l));if(s.length>1)throw new Error("Multiple migrations found for persisted state ".concat(r," from version ").concat(l));var o=s[0];try{a=o.migrate(a),l+=1}catch(d){throw new Error("Error migrating persisted state ".concat(r," from version ").concat(o.from,": ").concat(d),{cause:d})}}return a}function Er(i,e){var t,[n]=f.useState(()=>ue()),r=f.useContext(ya),{value:a,done:l}=(t=r==null?void 0:r.getInitialState(n))!==null&&t!==void 0?t:{value:void 0,done:!0},[s,o]=f.useState(()=>{if(a==null||l)return typeof i=="function"?i():i;if(a.type!==e.type)throw new Error("usePersistentState type mismatch. Expected ".concat(e.type," but got ").concat(a.type,"."));if(a.version!==e.version){var h;return ys(a.state,a.version,e.version,(h=e.migrations)!==null&&h!==void 0?h:[],e.type)}return a.state}),d={type:e.type,version:e.version,state:s};return f.useDebugValue(d),r==null||r.addState(n,d),f.useEffect(function(){r==null||r.scheduleStateUpdate()},[r,s]),f.useEffect(function(){return()=>{r==null||r.scheduleStateUpdate()}},[r]),[s,o]}function ce(i,e,t){return(e=Ps(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ps(i){var e=ws(i,"string");return typeof e=="symbol"?e:e+""}function ws(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Lt=B.module("DropdownFilter"),Es=150;class be extends f.Component{constructor(e){super(e),ce(this,"dropdownRef",void 0),ce(this,"getCompatibleColumns",O((a,l)=>a!=null?l.filter(s=>{var{type:o}=s;return o!==void 0&&z.isCompatibleType(o,a.columnType)}):[])),ce(this,"getColumnOptions",O((a,l)=>{var s=-1,o=[];return o.push(u.jsx("option",{value:"-1",children:"Select a column"},"placeholder")),a.forEach((d,h)=>{o.push(u.jsx("option",{value:h,children:this.getItemLabel(a,h)},"".concat(d.name,"/").concat(d.type))),l!==null&&d.name===l.name&&d.type===l.type&&(s=h)}),[o,s]})),ce(this,"getSelectedOptionIndex",O((a,l)=>a.indexOf(l))),ce(this,"getValueOptions",O(a=>[u.jsx("option",{value:"-1",children:be.PLACEHOLDER},"-1"),...a.map((l,s)=>u.jsx("option",{value:s,children:l??"(null)"},"".concat(s,"/").concat(l)))])),ce(this,"getItemLabel",se((a,l)=>{var{name:s,type:o}=a[l];if(l>0&&a[l-1].name===s||l<a.length-1&&a[l+1].name===s){var d=o.substring(o.lastIndexOf(".")+1);return"".concat(s," (").concat(d,")")}return s},{max:1e3})),ce(this,"sendUpdate",Ve(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s??void 0})},Es)),this.handleColumnChange=this.handleColumnChange.bind(this),this.handleSettingsCancel=this.handleSettingsCancel.bind(this),this.handleSettingsClick=this.handleSettingsClick.bind(this),this.handleSettingsSave=this.handleSettingsSave.bind(this),this.handleBackgroundClick=this.handleBackgroundClick.bind(this),this.handleDropdownKeyPress=this.handleDropdownKeyPress.bind(this),this.handleValueChange=this.handleValueChange.bind(this),this.dropdownRef=ne.createRef();var{column:t,isValueShown:n,value:r}=e;this.state={column:t,id:ue(),selectedColumn:t,disableCancel:!n,isValueShown:n,value:r}}componentDidUpdate(e,t){var{source:n,values:r,isLoaded:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a&&(n!==e.source&&this.sourceUpdated(),r!==e.values&&s!==""&&!r.includes(s)&&this.resetValue(),o!==t.isValueShown&&o&&this.focusInput(),(l!==t.column||s!==t.value||o!==t.isValueShown)&&this.sendUpdate())}componentWillUnmount(){this.sendUpdate.flush()}handleColumnChange(e){var t=e;if(Lt.debug2("handleColumnChange",t),t!=null&&parseInt(t,10)<0){this.setState({selectedColumn:null});return}var{columns:n,source:r}=this.props,a=this.getCompatibleColumns(r,n);this.setState({selectedColumn:a[parseInt(t,10)]})}handleDropdownKeyPress(e){e.key==="Enter"&&(e.preventDefault(),e.stopPropagation(),Lt.debug2("handleDropdownKeyPress"),this.sendUpdate(),this.sendUpdate.flush())}handleValueChange(e){var t=e,n=parseInt(t,10),r="",{values:a}=this.props;n>=0&&n<a.length?r=a[n]:Lt.debug2("Selected default item"),Lt.debug2("handleValueChange",r),this.setState({value:r})}handleSettingsCancel(){this.setState(e=>{var{column:t}=e;return{selectedColumn:t,isValueShown:!0}})}handleSettingsSave(){this.setState(e=>{var{column:t,selectedColumn:n,value:r}=e;return{column:n,value:t===n?r:"",isValueShown:!0,disableCancel:!1}})}handleSettingsClick(e){e.stopPropagation(),this.showSettings()}handleBackgroundClick(e){e.target!==this.dropdownRef.current&&this.focusInput()}sourceUpdated(){this.setState({column:null,selectedColumn:null,isValueShown:!1,disableCancel:!0,value:""})}showSettings(){var{column:e}=this.state;this.setState({selectedColumn:e,isValueShown:!1})}focusInput(){var e;(e=this.dropdownRef.current)===null||e===void 0||e.focus()}resetValue(){this.setState({value:""})}clearFilter(){this.resetValue()}setFilterState(e){var{name:t,type:n,value:r,isValueShown:a}=e,l=t!=null&&n!=null?{name:t,type:n}:null;this.setState(s=>{var{value:o,isValueShown:d}=s;return{column:l,value:r??o,isValueShown:a??d}})}render(){var e,{columns:t,disableLinking:n,isLinkerActive:r,isLoaded:a,source:l,onColumnSelected:s,onSourceMouseEnter:o,onSourceMouseLeave:d,values:h,settingsError:c}=this.props,{column:p,disableCancel:v,id:g,isValueShown:S,selectedColumn:m,value:b}=this.state,y=l===null,C=this.getCompatibleColumns(l,t),P=l!=null,w=(e=l==null?void 0:l.columnName)!==null&&e!==void 0?e:be.SOURCE_BUTTON_PLACEHOLDER,F=p!=null?"".concat(p.name," Filter"):null,[L,M]=this.getColumnOptions(C,m),D=this.getValueOptions(h),E=this.getSelectedOptionIndex(h,b),j=!P||m==null,R=S&&!r,A="source-column-btn-".concat(g),q="filter-column-select-".concat(g);return u.jsxs(vn,{className:"dropdown-filter fill-parent-absolute",isFlipped:R,children:[u.jsx("div",{className:"dropdown-filter-settings-card",children:u.jsxs("div",{className:"dropdown-filter-card-content",children:[u.jsxs("div",{className:"dropdown-filter-settings-grid",children:[u.jsx("label",{htmlFor:A,children:"Source Column"}),u.jsx(hr,{id:A,isLinked:P,onClick:s,onMouseEnter:o,onMouseLeave:d,className:be.SOURCE_BUTTON_CLASS_NAME,disabled:n,children:w}),u.jsx("div",{className:"text-muted small",children:"Select a source column for the list by linking to a table."}),u.jsx("label",{htmlFor:q,children:"Filter Column"}),u.jsx(bt,{id:q,value:String(M),className:"custom-select",onChange:this.handleColumnChange,disabled:y,children:L}),u.jsx("div",{className:"text-muted small",children:"Dropdown filter control will apply its filter to all columns matching this name in this dashboard."})]}),c&&u.jsx("div",{className:"error-message text-center",children:c}),P&&u.jsxs("div",{className:"dropdown-filter-settings-buttons",children:[u.jsx(N,{kind:"secondary",type:"button",onClick:this.handleSettingsCancel,disabled:v||S||r,tooltip:r?"Cancel disabled while linker open":void 0,children:"Cancel"}),u.jsx(N,{kind:"primary",type:"button",className:"ml-2",onClick:this.handleSettingsSave,disabled:j||S||r,tooltip:r?"Save disabled while linker open":void 0,children:"Save"})]})]})}),u.jsx("div",{className:"dropdown-filter-value-card",onClick:this.handleBackgroundClick,"data-testid":"dropdown-filter-value-background",children:a&&u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"dropdown-filter-column",children:u.jsx("div",{className:"dropdown-filter-column-title",children:F})}),u.jsxs("div",{className:"dropdown-filter-card-content",children:[u.jsx("div",{className:"dropdown-filter-value-input d-flex flex-column justify-content-center",children:u.jsx(bt,{className:"custom-select",value:String(E),ref:this.dropdownRef,onChange:this.handleValueChange,onKeyDown:this.handleDropdownKeyPress,title:"Select Value",children:D})}),c&&u.jsx("div",{className:"error-message mt-3 text-center",children:c})]}),u.jsx("div",{className:"dropdown-filter-menu",children:u.jsx(N,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:u.jsx(oe,{icon:hn,transform:"grow-4"}),tooltip:"Dropdown Filter Settings"})})]})})]})}}ce(be,"defaultProps",{column:null,disableLinking:!1,isLinkerActive:!1,isLoaded:!1,isValueShown:!1,settingsError:null,source:null,value:"",values:[],onColumnSelected:()=>{},onSourceMouseEnter:()=>{},onSourceMouseLeave:()=>{}});ce(be,"PLACEHOLDER","Select a value...");ce(be,"SOURCE_BUTTON_CLASS_NAME","btn-dropdown-filter-selector");ce(be,"SOURCE_BUTTON_PLACEHOLDER","Select a column");function Y(i,e,t){return(e=Ts(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ts(i){var e=Fs(i,"string");return typeof e=="symbol"?e:e+""}function Fs(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var _=B.module("DropdownFilterPanel"),Ds=250,Ms=Object.freeze({name:"Dropdown Filter",type:"DropdownFilter"}),ks=(i,e)=>{var{localDashboardId:t}=e,n=T.getIdFromPanel({props:e}),r=Vt(i,t),a=lt(i,t),l=dn(i),s=Gt(i,t),o=l===pe.LINKER&&(s===void 0||s===n),d=l===pe.LINKER&&s!==void 0&&s!==n;return{columns:un(i,t),columnSelectionValidator:Et(i,t),dh:Xi(i),isLinkerActive:o,disableLinking:d,settings:Ht(i),panelTableMap:r,dashboardLinks:a}},Ls=Ge(ks,null,null,{forwardRef:!0});class ve extends f.Component{constructor(e){super(e),Y(this,"dateTimeFormatter",void 0),Y(this,"dropdownFilterRef",void 0),Y(this,"panelContainer",void 0),Y(this,"pending",void 0),Y(this,"cleanup",void 0),Y(this,"columnFormats",void 0),Y(this,"getCachedValues",se((c,p,v)=>{var{type:g,name:S}=p;return g!==void 0&&z.isDateType(g)?c.map(m=>this.dateTimeFormatter.format(m)):c.map(m=>m!=null&&g!=null?v.getFormattedString(m,g,S):null)},{max:1e3})),Y(this,"getCachedPanelLinks",se((c,p)=>{var v=T.getIdFromPanel(p);return _.debug("getCachedPanelLinks",c,v),c.filter(g=>{var S;return((S=g.end)===null||S===void 0?void 0:S.panelId)===v})},{max:1e3})),Y(this,"getCachedSource",se(c=>{_.debug("getCachedSource",c);var p;if(c.length>0){var[v]=c;p=v.start,c.length>1&&_.error("Filter has more that one link",c)}return p},{max:1e3})),Y(this,"getCachedSourceTable",se((c,p)=>{var v;if(_.debug("getCachedSourceTable",c,p),p==null)return null;var{panelId:g}=p;return(v=c.get(g))!==null&&v!==void 0?v:null},{max:1e3})),Y(this,"getCachedSourceColumn",se((c,p)=>{var v;return _.debug("getCachedSourceColumn",c,p),c==null||p==null?null:(v=c.columns.find(g=>{var{name:S,type:m}=g;return S===p.columnName&&m===p.columnType}))!==null&&v!==void 0?v:null},{max:1e3})),this.handleChange=Ve(this.handleChange.bind(this),Ds),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleColumnSelected=this.handleColumnSelected.bind(this),this.handleSourceFilterChange=this.handleSourceFilterChange.bind(this),this.handleSourceSortChange=this.handleSourceSortChange.bind(this),this.handleSourceSizeChange=this.handleSourceSizeChange.bind(this),this.handleSourceMouseEnter=this.handleSourceMouseEnter.bind(this),this.handleSourceMouseLeave=this.handleSourceMouseLeave.bind(this),this.handleValuesTableUpdate=this.handleValuesTableUpdate.bind(this),this.dropdownFilterRef=ne.createRef(),this.panelContainer=ne.createRef(),this.pending=new zi;var{dh:t,panelState:n,settings:r}=e;this.columnFormats=Vn.getColumnFormats(r),this.dateTimeFormatter=new qi(t,{showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:"yyyy-MM-dd HH:mm:ss.SSSSSSSSS"});var{value:a="",isValueShown:l=!1,name:s,type:o,timestamp:d}=n??{},h=s!=null&&o!=null?{name:s,type:o}:void 0;this.state={column:h,formatter:new $e(t,this.columnFormats),valuesTable:void 0,valuesColumn:void 0,sourceSize:0,value:a,timestamp:d,values:[],isValueShown:l,wasFlipped:!1,skipUpdate:!1,panelState:n,isDisconnected:!1,isLoading:!1,isLoaded:!1,error:null}}componentDidMount(){this.updateValuesTable();var{dashboardLinks:e,panelTableMap:t}=this.props,{column:n,value:r,timestamp:a}=this.state,l=this.getSourceTable(t,e);if(l!==null&&this.startListeningToSource(l),n!=null){var{name:s,type:o}=n;this.sendUpdate(s,o,r,a)}}componentDidUpdate(e,t){var{dashboardLinks:n,panelTableMap:r,settings:a}=this.props,{valuesTable:l}=this.state,s=this.getSource(n),o=this.getSourceTable(r,n),d=this.getSource(e.dashboardLinks),h=this.getSourceTable(e.panelTableMap,e.dashboardLinks);a!==e.settings&&a!==void 0&&this.updateFormatterSettings(a),l!==t.valuesTable&&t.valuesTable!=null&&(_.debug("Table in state modified, closing the old table."),t.valuesTable.close()),(o!==h||s!==d)&&this.updateValuesTable(),o!==h&&(h!==null&&this.stopListeningToSource(h),o!==null&&this.startListeningToSource(o))}componentWillUnmount(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:n}=this.state,r=this.getSourceTable(t,e);this.pending.cancel(),r!==null&&this.stopListeningToSource(r),this.cleanup&&this.cleanup(),n!=null&&n.close()}getCoordinateForColumn(){var e;if(this.panelContainer.current==null)return null;var t=this.panelContainer.current.querySelector(".".concat(be.SOURCE_BUTTON_CLASS_NAME)),n=(e=t==null?void 0:t.getBoundingClientRect())!==null&&e!==void 0?e:null;if(n==null||n.width<=0||n.height<=0)return null;var r=n.left+n.width/2,a=n.bottom;return[r,a]}getSettingsErrorMessage(){var{sourceSize:e}=this.state;if(e>ve.MAX_TABLE_SIZE)return"Table too large, must have fewer than ".concat(ve.MAX_TABLE_SIZE," options.")}getPanelErrorMessage(){var{error:e}=this.state;return e!=null?"".concat(e):void 0}getSource(e){var t=this.getCachedPanelLinks(e,this);return this.getCachedSource(t)}getSourceTable(e,t){var n=this.getSource(t);return this.getCachedSourceTable(e,n)}getValuesColumn(e,t){var n=this.getSource(t);return this.getCachedSourceColumn(e,n)}startListeningToSource(e){var{dh:t}=this.props;_.debug("startListeningToSource"),e.addEventListener(t.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.addEventListener(t.Table.EVENT_SORTCHANGED,this.handleSourceSortChange),e.addEventListener(t.Table.EVENT_SIZECHANGED,this.handleSourceSizeChange),e.addEventListener(t.Table.EVENT_DISCONNECT,this.handleDisconnect),e.addEventListener(t.Table.EVENT_RECONNECT,this.handleReconnect)}stopListeningToSource(e){var{dh:t}=this.props;_.debug("stopListeningToSource"),e.removeEventListener(t.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.removeEventListener(t.Table.EVENT_SORTCHANGED,this.handleSourceSortChange),e.removeEventListener(t.Table.EVENT_SIZECHANGED,this.handleSourceSizeChange),e.removeEventListener(t.Table.EVENT_DISCONNECT,this.handleDisconnect),e.removeEventListener(t.Table.EVENT_RECONNECT,this.handleReconnect)}handleChange(e){var{column:t,isValueShown:n=!1,value:r}=e,{name:a=void 0,type:l=void 0}=t??{},s=!0,o=Date.now();this.setState(d=>{var h,{panelState:c,timestamp:p,wasFlipped:v,skipUpdate:g}=d,S=c!=null&&n!==c.isValueShown&&a===c.name&&l===c.type&&r===c.value;return s=(h=!g&&n&&(!S||!v))!==null&&h!==void 0?h:!1,s||(o=p),{panelState:{isValueShown:n,name:a,type:l,value:r,timestamp:o??void 0},timestamp:o,wasFlipped:S,skipUpdate:!1}},()=>{s&&this.sendUpdate(a??null,l,r,o)})}handleDisconnect(){this.setState({error:new Error("Table disconnected"),isDisconnected:!0,isLoading:!1})}handleReconnect(){this.setState({isDisconnected:!1,error:null})}handleSourceFilterChange(){this.applySourceFilters()}handleSourceSortChange(){this.applySourceSorts()}handleSourceSizeChange(e){var{detail:t}=e;this.setState({sourceSize:t})}handleColumnSelected(){_.debug("handleColumnSelected");var{glEventHub:e}=this.props,t=T.getIdFromPanel(this);k(t),Kt(e,t,ve.SOURCE_COLUMN,{type:"filterSource"})}handleClearAllFilters(){var e;(e=this.dropdownFilterRef)===null||e===void 0||(e=e.current)===null||e===void 0||e.clearFilter()}setPanelState(e){var t,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{dashboardLinks:r}=this.props;if(this.getSource(r)==null){_.debug("Ignore state update for unlinked filter",e);return}this.setState({skipUpdate:!n}),(t=this.dropdownFilterRef)===null||t===void 0||(t=t.current)===null||t===void 0||t.setFilterState(e)}sendUpdate(e,t,n,r){var a,{dashboardLinks:l,glEventHub:s}=this.props,o=(a=this.getSource(l))===null||a===void 0?void 0:a.panelId,d=o==null?[]:[o];_.debug("sendUpdate",{name:e,type:t,value:n,timestamp:r,excludePanelIds:d});var h=T.getIdFromPanel(this);k(h),Pr(s,h,e!=null&&t!=null&&r!=null?{name:e,type:t,value:n??"=null",timestamp:r,excludePanelIds:d}:null)}updateValuesTable(){var{dashboardLinks:e,panelTableMap:t}=this.props,n=this.getSource(e),r=this.getSourceTable(t,e);if(_.debug("updateValuesTable",n,r),this.setState({values:[],valuesTable:void 0,error:null}),n==null){_.debug("Filter unlinked."),this.setState({isLoading:!1,isLoaded:!0,isValueShown:!1,sourceSize:0});return}this.setState({isLoading:!0}),r!=null&&(this.setState({isLoaded:!1,sourceSize:r.size}),this.pending.add(r.copy(),a=>a.close()).then(a=>{this.updateViewportListener(a),this.setState({valuesTable:a})}).catch(a=>{Ne.isCanceled(a)||(_.error(a),this.setState({isLoading:!1,error:a}))}))}applySourceSorts(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:n}=this.state,r=this.getSourceTable(t,e);if(_.debug("applySourceSorts",r==null?void 0:r.sort),n==null||r==null){_.debug("Table not initialized");return}var a=[...r.sort];n.applySort(a),this.setViewport(n)}applySourceFilters(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:n}=this.state,r=this.getSourceTable(t,e);if(_.debug("applySourceFilters",r==null?void 0:r.filter),n==null||r==null){_.debug("Table not initialized");return}var a=[...r.filter];n.applyFilter(a),this.setViewport(n)}updateViewportListener(e){var{dh:t}=this.props;if(_.debug("updateViewportListener",e==null?void 0:e.size),this.cleanup&&this.cleanup(),e==null){this.cleanup=void 0;return}this.cleanup=e.addEventListener(t.Table.EVENT_UPDATED,this.handleValuesTableUpdate),this.setViewport(e)}setViewport(e){var{dashboardLinks:t}=this.props,n=this.getValuesColumn(e,t);if(!n){_.error("values column is null");return}e.setViewport(0,ve.MAX_TABLE_SIZE-1,[n])}updateFormatterSettings(e){var{dh:t}=this.props,n=Vn.getColumnFormats(e);Gi(this.columnFormats,n)||(this.columnFormats=n,this.setState({formatter:new $e(t,n)}))}handleValuesTableUpdate(e){var{detail:t}=e,{rows:n}=t,{dashboardLinks:r}=this.props,{valuesTable:a}=this.state;if(!a){_.error("valuesTable is null");return}var l=this.getValuesColumn(a,r);if(!l){_.error("Values column not found");return}var s=n.map(o=>o.get(l));this.setState({values:s,isLoading:!1,isLoaded:!0,valuesColumn:l})}handleSourceMouseEnter(){var{columnSelectionValidator:e}=this.props;e&&e(this,ve.SOURCE_COLUMN,{type:"filterSource"})}handleSourceMouseLeave(){var{columnSelectionValidator:e}=this.props;e&&e(this,void 0,{type:"filterSource"})}render(){var{columns:e,dashboardLinks:t,disableLinking:n,glContainer:r,glEventHub:a,isLinkerActive:l}=this.props,{column:s,formatter:o,isDisconnected:d,isValueShown:h,value:c,values:p,valuesColumn:v,isLoading:g,isLoaded:S}=this.state,m=this.getSource(t),b=this.getSettingsErrorMessage(),y=this.getPanelErrorMessage(),C=S&&v!=null?this.getCachedValues(p,v,o):G;return u.jsx(Ft,{errorMessage:y,isLoading:g,isLoaded:S,isDisconnected:d,className:"iris-dropdown-filter-panel",componentPanel:this,glContainer:r,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,descriptor:Ms,children:u.jsx("div",{ref:this.panelContainer,className:"dropdown-filter-container h-100 w-100 container",children:u.jsx(be,{ref:this.dropdownFilterRef,column:s,columns:e,isValueShown:h,isLinkerActive:l,disableLinking:n,isLoaded:S,settingsError:b,source:m,value:c,values:C,onChange:this.handleChange,onColumnSelected:this.handleColumnSelected,onSourceMouseEnter:this.handleSourceMouseEnter,onSourceMouseLeave:this.handleSourceMouseLeave})})})}}Y(ve,"displayName","DropdownFilterPanel");Y(ve,"COMPONENT","DropdownFilterPanel");Y(ve,"MAX_TABLE_SIZE",256);Y(ve,"SOURCE_COLUMN",Object.freeze({name:"FilterSource",type:null}));var Ze=Ls(ve);function ti(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Ot(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ti(Object(t),!0).forEach(function(n){vt(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):ti(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function vt(i,e,t){return(e=Os(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Os(i){var e=Ns(i,"string");return typeof e=="symbol"?e:e+""}function Ns(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var U=B.module("FilterSetManager"),js="Enter name...",ni="No Available Filter Sets";class yt extends f.Component{static animateScreenFlash(){var e,t=document.createElement("div");t.classList.add("screen-flash-overlay"),t.addEventListener("animationend",()=>{t.remove()}),(e=document.querySelector("body"))===null||e===void 0||e.appendChild(t)}constructor(e){super(e),vt(this,"renameInputRef",ne.createRef()),vt(this,"dropdownRef",ne.createRef()),vt(this,"editDropdownRef",ne.createRef()),vt(this,"isRenamingExistingSet",O((t,n)=>n!==void 0&&t.some(r=>{var{id:a}=r;return a===n.id}))),this.handleSettingsCancel=this.handleSettingsCancel.bind(this),this.handleSettingsClick=this.handleSettingsClick.bind(this),this.handleSettingsSave=this.handleSettingsSave.bind(this),this.handleBackgroundClick=this.handleBackgroundClick.bind(this),this.handleEditDropdownChange=this.handleEditDropdownChange.bind(this),this.handleFilterChange=this.handleFilterChange.bind(this),this.handleFilterApply=this.handleFilterApply.bind(this),this.handleCaptureNewSet=this.handleCaptureNewSet.bind(this),this.handleNameInputChange=this.handleNameInputChange.bind(this),this.handleNameInputKeyPress=this.handleNameInputKeyPress.bind(this),this.handleRenameConfirm=this.handleRenameConfirm.bind(this),this.handleRenameCancel=this.handleRenameCancel.bind(this),this.handleRestoreFullStateChange=this.handleRestoreFullStateChange.bind(this),this.handleSetDelete=this.handleSetDelete.bind(this),this.handleSetEdit=this.handleSetEdit.bind(this),this.handleSetUpdate=this.handleSetUpdate.bind(this),this.state={editId:void 0,renameSet:void 0,nameInputValue:"",nameInputError:void 0,modifiedFilterSets:[],restoreFullState:!1}}componentDidMount(){var{isValueShown:e}=this.props;e?this.updateSelectedId():this.initSettingsScreen()}componentDidUpdate(e,t){var{isValueShown:n,filterSets:r}=this.props,{modifiedFilterSets:a}=this.state;if(e.isValueShown&&!n&&this.initSettingsScreen(),this.isNameInputScreen()&&!this.isNameInputScreen(t)&&this.focusRenameInput(),r!==e.filterSets)if(!n&&r.length>0&&e.filterSets.length===0&&a.length===0){var{onChange:l}=this.props;l({isValueShown:!0,selectedId:r[0].id})}else this.updateSelectedId()}initSettingsScreen(){var{filterSets:e,selectedId:t}=this.props;U.debug("initSettingsScreen",e,t),this.setState({modifiedFilterSets:[...e],editId:t})}updateSelectedId(){var{isValueShown:e,filterSets:t,selectedId:n,onChange:r}=this.props;if(U.debug("updateSelectedId",t,n),!!e&&!t.some(l=>{var{id:s}=l;return s===n})){var a=t.length===0;r({isValueShown:!a,selectedId:a?void 0:t[0].id})}}handleEditDropdownChange(e){this.setState({editId:e})}handleFilterChange(e){var t=e,{isValueShown:n,onChange:r}=this.props;this.applyFilterSet(t),r({isValueShown:n,selectedId:t})}handleFilterApply(){var{selectedId:e}=this.props;this.applyFilterSet(e)}handleSettingsCancel(){var{onChange:e,selectedId:t,filterSets:n}=this.props;this.setState({modifiedFilterSets:[]}),n.length>0&&e({isValueShown:!0,selectedId:t})}handleSettingsSave(){var{onChange:e,onUpdateSets:t}=this.props,{modifiedFilterSets:n,editId:r}=this.state;this.setState({modifiedFilterSets:[]}),U.debug("Update sets",n,r),t(n),n.length>0&&e({isValueShown:!0,selectedId:r})}handleCaptureNewSet(){var{getFilterState:e}=this.props;yt.animateScreenFlash();var t=ue(),n=e(),r={id:t,title:"",panels:n};U.debug("handleSetCreate",r),this.setState({nameInputValue:"",nameInputError:void 0,renameSet:r})}handleRenameCancel(){this.setState({renameSet:void 0})}handleRestoreFullStateChange(e){this.setState({restoreFullState:e==="true"})}getNameError(e){var t,{renameSet:n,modifiedFilterSets:r}=this.state,a=(t=e==null?void 0:e.trim())!==null&&t!==void 0?t:"";if(a.length===0)return U.debug("Name cannot be empty",a),"Name cannot be empty";if(n!==void 0&&r.some(l=>{var{title:s,id:o}=l;return s===a&&o!==n.id}))return U.debug("Set with this name already exists",a),"Set with this name already exists"}handleRenameConfirm(){var e,{nameInputValue:t,renameSet:n,modifiedFilterSets:r,restoreFullState:a}=this.state;if(n===void 0){U.error("Renamed set undefined.");return}var l=this.getNameError(t);if(U.debug("handleRenameConfirm",t,l),l!==void 0){this.setState({nameInputError:l});return}var s=(e=t==null?void 0:t.trim())!==null&&e!==void 0?e:"",o=Ot(Ot({},n),{},{title:s,restoreFullState:a}),d=r.findIndex(c=>{var{id:p}=c;return p===n.id}),h=[...r];d>=0?(h[d]=o,U.debug("Renamed existing set",h)):(h.push(o),U.debug("Added new set to modified sets",h)),this.setState({editId:o.id,modifiedFilterSets:h,renameSet:void 0})}handleSetDelete(){this.setState(e=>{var{editId:t,modifiedFilterSets:n}=e,r=n.findIndex(o=>{var{id:d}=o;return d===t});if(r<0)return U.error("Unable to find selected filterSet index",n,t),null;var a=n.filter(o=>{var{id:d}=o;return d!==t}),l=Math.max(0,Math.min(a.length-1,r-1)),s=a.length>0?a[l].id:void 0;return U.debug("Deleted selected set",t,n,a),U.debug("New selection",l,s),{modifiedFilterSets:a,editId:s}})}handleSetUpdate(){var{getFilterState:e}=this.props;yt.animateScreenFlash();var t=e();this.setState(n=>{var{modifiedFilterSets:r,editId:a}=n;if(a===void 0)return U.error("Filter for update not selected."),null;var l=[...r],s=l.findIndex(o=>{var{id:d}=o;return d===a});return s<0?(U.error("Selected set for update not found."),null):(l[s]=Ot(Ot({},l[s]),{},{panels:t}),U.debug("Update set",l,t),{modifiedFilterSets:l})})}handleSetEdit(){this.setState(e=>{var{editId:t,modifiedFilterSets:n}=e,r=n.find(s=>{var{id:o}=s;return o===t});if(r===void 0)return U.error("Could not find selected set",t,n),null;var{title:a,restoreFullState:l=!1}=r;return{nameInputValue:a,nameInputError:void 0,renameSet:r,restoreFullState:l}})}handleSettingsClick(e){e.stopPropagation();var{onChange:t,selectedId:n}=this.props;t({isValueShown:!1,selectedId:n})}handleBackgroundClick(e){U.debug("handleBackgroundClick"),e.target!==this.dropdownRef.current&&this.focusInput()}handleNameInputChange(e){var{value:t}=e.target,n=this.getNameError(t);this.setState({nameInputValue:t,nameInputError:n})}handleNameInputKeyPress(e){var{key:t}=e;t==="Enter"&&(e.preventDefault(),this.handleRenameConfirm())}isNameInputScreen(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state,{renameSet:t}=e;return t!==void 0}applyFilterSet(e){var{onApply:t,filterSets:n}=this.props;if(e===void 0){U.debug("No filter selected");return}var r=n.find(a=>{var{id:l}=a;return l===e});if(r===void 0){U.debug("Selected id not found in filterSets",e,n);return}U.debug("Apply filterSet",r),t(r)}focusInput(){var e;(e=this.dropdownRef.current)===null||e===void 0||e.focus()}focusRenameInput(){var e;(e=this.renameInputRef.current)===null||e===void 0||e.focus()}render(){var{nameInputValue:e,nameInputError:t,editId:n,renameSet:r,modifiedFilterSets:a,restoreFullState:l}=this.state,{isValueShown:s,filterSets:o,selectedId:d}=this.props,h=this.isNameInputScreen(),c=this.isRenamingExistingSet(a,r),p=a.length===0,v=!h&&p&&o.length===0,g=!h&&!v,S=u.jsxs("div",{className:"fa-layers mr-3",children:[u.jsx(oe,{icon:Un,mask:An,transform:"shrink-1 down-5 right-7"}),u.jsx(oe,{icon:al,className:"text-primary",transform:"shrink-6 down-5 right-7"})]}),m=u.jsxs("div",{className:"fa-layers",children:[u.jsx(oe,{icon:Un,mask:An,transform:"shrink-1 down-5 right-7"}),u.jsx(oe,{icon:ll,transform:"shrink-1 down-5 right-7"})]});return u.jsx("div",{className:"filter-set-manager fill-parent-absolute",children:u.jsxs(vn,{className:"w-100 h-100",isFlipped:s,children:[u.jsx("div",{className:"filter-set-manager-settings-card fill-parent-absolute",children:u.jsxs("div",{className:"filter-set-manager-card-content",children:[v&&u.jsxs("div",{children:[u.jsx(N,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:S,children:"Capture filter set"}),u.jsx("div",{className:"py-3 text-muted small",children:"Takes a snapshot of the currently applied filters on all panels, allowing you to restore saved filter sets later."})]}),h&&u.jsxs("div",{className:"d-flex flex-column justify-content-center","data-testid":"edit-filter-set-container",children:[u.jsxs("div",{className:"form-group",children:[u.jsx("label",{children:c?"Edit set":"Name captured set"}),u.jsxs("div",{className:"name-input-container",children:[u.jsx("input",{type:"text",className:"input-set-name form-control",placeholder:js,value:e,ref:this.renameInputRef,onChange:this.handleNameInputChange,onKeyPress:this.handleNameInputKeyPress,spellCheck:"false"}),u.jsx(N,{"data-testid":"rename-confirm-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameConfirm,tooltip:"Save","test-id":"button-save",icon:il}),u.jsx(N,{"data-testid":"rename-cancel-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameCancel,tooltip:"Cancel",icon:rl})]}),t!==void 0&&u.jsx("div",{className:"error-message",children:t})]}),u.jsx("div",{className:"form-group",children:u.jsxs(va,{"aria-label":"Restoration options",onChange:this.handleRestoreFullStateChange,value:"".concat(l),children:[u.jsx(_n,{value:"false",children:"Restore only filters"}),u.jsx(_n,{value:"true",children:"Restore full table state"})]})})]}),g&&u.jsxs("div",{className:"filter-set-manager-settings-grid-1",children:[u.jsxs("div",{className:"form-group",children:[u.jsx("label",{children:"Edit filter sets"}),u.jsxs("div",{className:"filter-select-container",children:[u.jsxs(bt,{"data-testid":"settings-card-filter-select",ref:this.editDropdownRef,value:n??"-1",className:"custom-select filter-value-select",onChange:this.handleEditDropdownChange,disabled:p,children:[p&&u.jsx("option",{value:"-1",disabled:!0,children:ni}),a.map(b=>{var{id:y,title:C}=b;return u.jsx("option",{value:y,children:C},y)})]}),u.jsx(N,{kind:"ghost",onClick:this.handleSetUpdate,disabled:p,icon:m,tooltip:"Update"}),u.jsx(N,{kind:"ghost",onClick:this.handleSetEdit,disabled:p,icon:dr,tooltip:"Edit"}),u.jsx(N,{kind:"ghost",onClick:this.handleSetDelete,disabled:p,icon:cn,tooltip:"Delete"})]})]}),u.jsx("div",{children:u.jsx(N,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:S,children:"Capture new filter set"})}),u.jsxs("div",{className:"py-3 text-right",children:[u.jsx(N,{kind:"secondary",onClick:this.handleSettingsCancel,children:"Cancel"})," ",u.jsx(N,{kind:"primary",onClick:this.handleSettingsSave,children:"Save"})]})]})]})},"front"),u.jsxs("div",{className:"filter-set-manager-value-card fill-parent-absolute",onClick:this.handleBackgroundClick,children:[u.jsx("div",{className:"filter-set-manager-column",children:u.jsx("div",{className:"filter-set-manager-column-title",children:"Filter sets"})}),u.jsx("div",{className:"filter-set-manager-card-content",children:u.jsx("div",{className:"filter-set-manager-value-input",children:u.jsxs("div",{className:"filter-select-container",children:[u.jsxs(bt,{"data-testid":"value-card-filter-select",ref:this.dropdownRef,value:d??"-1",className:"custom-select filter-value-select",onChange:this.handleFilterChange,children:[o.length===0&&u.jsx("option",{value:"-1",disabled:!0,children:ni}),o.map(b=>{var{id:y,title:C}=b;return u.jsx("option",{value:y,children:C},y)})]}),u.jsx(N,{"data-testid":"filter-apply-button",kind:"ghost",onClick:this.handleFilterApply,icon:ur,tooltip:"Apply Filter Set"})]})})}),u.jsx("div",{className:"filter-set-manager-menu",children:u.jsx(N,{kind:"ghost",className:"btn btn-link btn-link-icon m-2 px-2",onClick:this.handleSettingsClick,tooltip:"Settings",icon:u.jsx(oe,{icon:hn,transform:"grow-4"})})})]},"back")]})})}}function ii(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function ri(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ii(Object(t),!0).forEach(function(n){Is(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):ii(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Is(i,e,t){return(e=xs(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function xs(i){var e=_s(i,"string");return typeof e=="symbol"?e:e+""}function _s(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function Rs(i){var e,t,n,r,a,{model:l}=i,s=((e=l==null?void 0:l.rowCount)!==null&&e!==void 0?e:0)-((t=l==null?void 0:l.pendingRowCount)!==null&&t!==void 0?t:0)-((n=l==null?void 0:l.floatingBottomRowCount)!==null&&n!==void 0?n:0)-((r=l==null?void 0:l.floatingTopRowCount)!==null&&r!==void 0?r:0),o=l==null?void 0:l.displayString(s,"long"),d=(a=l==null?void 0:l.columnCount)!==null&&a!==void 0?a:0,h=l==null?void 0:l.displayString(d,"long");return u.jsxs(gn,ri(ri({},i),{},{children:[u.jsx("hr",{className:"tab-tooltip-divider"}),u.jsx("span",{children:"Number of Columns"}),u.jsx("span",{className:"tab-tooltip-statistic-value",children:h}),u.jsx("span",{children:"Number of Rows"}),u.jsx("span",{className:"tab-tooltip-statistic-value",children:o})]}))}function Tr(i){if(i==null)return!1;var e=i;return typeof e.table=="string"}function Fr(i){if(i==null)return!1;var e=i;return typeof e.name=="string"}function ai(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function ae(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ai(Object(t),!0).forEach(function(n){V(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):ai(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function V(i,e,t){return(e=As(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function As(i){var e=Us(i,"string");return typeof e=="symbol"?e:e+""}function Us(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var fe=B.module("IrisGridPanel"),$s=500;function li(i){if(i==null)throw new Error("No metadata provided");if(Fr(i))return i.name;if(Tr(i))return i.table;throw new Error("Unable to determine table name from metadata: ".concat(JSON.stringify(i)))}class tt extends f.PureComponent{constructor(e){super(e),V(this,"irisGrid",void 0),V(this,"pluginRef",void 0),V(this,"modelPromise",void 0),V(this,"irisGridState",void 0),V(this,"gridState",void 0),V(this,"pluginState",void 0),V(this,"irisGridUtils",void 0),V(this,"gridStateDehydrator",an.makeMemoizedGridStateDehydrator()),V(this,"irisGridStateDehydrator",an.makeMemoizedIrisGridStateDehydrator()),V(this,"getGridInputFilters",O((n,r)=>H.getInputFiltersForColumns(n,r.filter(a=>{var{value:l,excludePanelIds:s}=a,o=T.getIdFromPanel(this);return l!=null&&(s==null||o!=null&&!s.includes(o))})))),V(this,"getAlwaysFetchColumns",O((n,r)=>{for(var a=T.getIdFromPanel(this),l=new Set(r),s=0;s<n.length;s+=1){var{start:o}=n[s];o!=null&&o.panelId===a&&l.add(o.columnName)}return[...l]})),V(this,"getPluginContent",O((n,r,a)=>{var l;if(!r||!Me(r)||n==null||r.table==null)return null;var s={panel:this};return u.jsx("div",{className:"iris-grid-plugin",children:u.jsx(n,ae({ref:this.pluginRef,filter:this.handlePluginFilter,fetchColumns:this.handlePluginFetchColumns,model:r,table:r.table,tableName:this.getTableName(),selectedRanges:(l=this.irisGrid.current)===null||l===void 0?void 0:l.state.selectedRanges,onStateChange:this.handlePluginStateChange,pluginState:a},s))})})),V(this,"getDehydratedIrisGridPanelState",O((n,r,a,l)=>H.dehydrateIrisGridPanelState(n,{isSelectingPartition:r,partitions:a,advancedSettings:l}))),V(this,"getCachedPanelState",O((n,r,a,l)=>({irisGridPanelState:n,irisGridState:r,gridState:a,pluginState:l}))),V(this,"getWidgetPanelDescriptor",O((n,r)=>{var a=li(n);return ae(ae({type:"Table",displayType:"Table"},n),{},{name:a,description:r})})),V(this,"savePanelState",Ve(()=>{var{irisGridState:n,gridState:r,pluginState:a}=this;k(n);var{onPanelStateUpdate:l}=this.props,{model:s,panelState:o,isSelectingPartition:d,partitions:h,advancedSettings:c}=this.state;k(this.irisGridUtils),k(s),k(r);var p=this.getCachedPanelState(this.getDehydratedIrisGridPanelState(s,d,h,c),this.irisGridStateDehydrator(s,n),this.gridStateDehydrator(s,r),a);p!==o&&(fe.debug("Saving panel state",this,p),this.setState({panelState:p}),l==null||l(p))},$s)),this.handleAdvancedSettingsChange=this.handleAdvancedSettingsChange.bind(this),this.handleColumnsChanged=this.handleColumnsChanged.bind(this),this.handleTableChanged=this.handleTableChanged.bind(this),this.handleColumnSelected=this.handleColumnSelected.bind(this),this.handleDataSelected=this.handleDataSelected.bind(this),this.handleError=this.handleError.bind(this),this.handleGridStateChange=this.handleGridStateChange.bind(this),this.handlePluginStateChange=this.handlePluginStateChange.bind(this),this.handleCreateChart=this.handleCreateChart.bind(this),this.handleShow=this.handleShow.bind(this),this.handleTabClicked=this.handleTabClicked.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.isColumnSelectionValid=this.isColumnSelectionValid.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.handlePluginFilter=this.handlePluginFilter.bind(this),this.handlePluginFetchColumns=this.handlePluginFetchColumns.bind(this),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.irisGrid=ne.createRef(),this.pluginRef=ne.createRef();var{panelState:t}=e;this.pluginState=null,this.irisGridUtils=null,this.state={error:null,isDisconnected:!1,isLoaded:!1,isLoading:!0,isModelReady:!1,model:void 0,advancedFilters:new Map,aggregationSettings:{aggregations:[],showOnTop:!1},advancedSettings:new Map(yl.DEFAULTS),customColumns:[],customColumnFormatMap:new Map,columnAlignmentMap:new Map,isFilterBarShown:!1,quickFilters:new Map,sorts:[],userColumnWidths:new Map,userRowHeights:new Map,reverse:!1,movedColumns:[],movedRows:[],isSelectingPartition:!1,partitions:[],rollupConfig:void 0,showSearchBar:!1,searchValue:"",selectedSearchColumns:void 0,invertSearchColumns:!0,Plugin:void 0,pluginFilters:[],pluginFetchColumns:[],modelQueue:[],pendingDataMap:new Map,frozenColumns:void 0,panelState:t,irisGridStateOverrides:{},gridStateOverrides:{},isStuckToBottom:!1,isStuckToRight:!1,conditionalFormats:[],selectDistinctColumns:[]}}componentDidMount(){this.initModel()}componentDidUpdate(e,t){var{model:n}=this.state,{makeModel:r}=this.props;n!==t.model&&(t.model!=null&&(this.stopModelListening(t.model),t.model.close()),n!=null&&this.startModelListening(n)),r!==e.makeModel&&this.initModel()}componentWillUnmount(){this.savePanelState.cancel(),this.modelPromise!=null&&(this.modelPromise.cancel(),this.modelPromise=void 0);var{model:e}=this.state;e&&(this.stopModelListening(e),e.close())}getTableName(){var{metadata:e}=this.props;return li(e)}initModel(){this.setState({isModelReady:!1,isLoading:!0,error:null,isDisconnected:!1});var{makeModel:e}=this.props;this.modelPromise!=null&&this.modelPromise.cancel(),this.modelPromise=Ne.makeCancelable(e(),t=>t.close()),this.modelPromise.then(this.handleLoadSuccess).catch(this.handleLoadError)}handleLoadSuccess(e){var t=e,{panelState:n,irisGridStateOverrides:r}=this.state,a=[];if(this.irisGridUtils=new H(t.dh),n!=null){var{irisGridState:l}=n,{aggregationSettings:s,customColumns:o,selectDistinctColumns:d=[],rollupConfig:h}=ae(ae({},l),r);o.length>0&&a.push(c=>{c.customColumns=o}),h!=null&&h.columns.length>0&&a.push(c=>{c.rollupConfig=H.getModelRollupConfig(c.originalColumns,h,s)}),d.length>0&&a.push(c=>{c.selectDistinctColumns=d})}this.setState({model:t,modelQueue:a}),this.initModelQueue(t,a)}initModelQueue(e,t){var n=e;if(t.length===0){this.modelInitialized(n);return}var r=t.shift();fe.debug("initModelQueue",r),r&&r(n),this.setState({modelQueue:t})}handleAdvancedSettingsChange(e,t){fe.debug("handleAdvancedSettingsChange",e,t),this.setState(n=>{var{advancedSettings:r}=n;return r.get(e)===t?null:{advancedSettings:new Map(r).set(e,t)}})}handlePluginFilter(e){var t,n,{model:r}=this.state;k(r);var{columns:a,formatter:l}=r,s=(t=(n=this.irisGridUtils)===null||n===void 0?void 0:n.getFiltersFromInputFilters(a,e,l.timeZone))!==null&&t!==void 0?t:[];this.setState({pluginFilters:s})}handlePluginFetchColumns(e){this.setState({pluginFetchColumns:e})}handleContextMenu(e){var t,n,r;return(t=(n=this.pluginRef.current)===null||n===void 0||(r=n.getMenu)===null||r===void 0?void 0:r.call(n,e))!==null&&t!==void 0?t:[]}isColumnSelectionValid(e){var{columnSelectionValidator:t}=this.props;return t&&e?t(this,e,{type:"tableLink"}):!1}handleGridStateChange(e,t){this.irisGridState=e,this.gridState=t,this.setState({isLoaded:!0,isLoading:!1}),this.savePanelState();var{glEventHub:n,onStateChange:r}=this.props;n.emit(Z.STATE_CHANGED,this),r==null||r(e,t)}handlePluginStateChange(e){var{irisGridState:t,gridState:n}=this;this.pluginState=e,t!==null&&n!==null&&this.savePanelState()}handleColumnsChanged(e){var{isModelReady:t,model:n,modelQueue:r}=this.state;t?this.sendColumnsChange(e.detail):(k(n),this.initModelQueue(n,r))}handleTableChanged(e){fe.debug("handleTableChanged",e);var{glEventHub:t}=this.props,{detail:n}=e,r=T.getIdFromPanel(this);k(r),Ut(t,r,n)}handleCreateChart(e,t){this.savePanelState.flush(),this.setState(()=>null,()=>{var{glEventHub:n,inputFilters:r,metadata:a}=this.props,l=this.getTableName(),{panelState:s}=this.state,o=T.getIdFromPanel(this),d;s&&(d=H.extractTableSettings(s,r)),n.emit(Z.CREATE_CHART,{metadata:ae(ae({},a),{},{settings:e,sourcePanelId:o,table:l,tableSettings:d}),table:Me(t)?t.table:void 0})})}handleColumnSelected(e){var{glEventHub:t}=this.props,n=T.getIdFromPanel(this);k(n),Kt(t,n,e,{type:"tableLink"})}handleDataSelected(e,t){var{glEventHub:n}=this.props,r=T.getIdFromPanel(this);k(r),wr(n,r,t)}handleShow(){this.updateGrid()}handleTabClicked(){this.irisGrid.current&&this.irisGrid.current.focus()}handleError(e){fe.error(e),this.setState({error:e,isLoading:!1})}handleDisconnect(){this.setState({error:new Error("Table disconnected"),isDisconnected:!0,isLoading:!1})}handleReconnect(){this.setState({isDisconnected:!1,error:null})}handleLoadError(e){Ne.isCanceled(e)||this.handleError(e)}modelInitialized(e){var{glEventHub:t,loadPlugin:n}=this.props;if(this.modelPromise=void 0,this.loadPanelState(e),this.setState({isModelReady:!0}),Me(e)){var{table:r}=e,{pluginName:a}=r;if(a!==""&&n!=null&&a!=null){var l=n(a);this.setState({Plugin:l})}var s=T.getIdFromPanel(this);k(s),Ut(t,s,r)}this.sendColumnsChange(e.columns)}handleClearAllFilters(){var e=this.irisGrid.current,{isDisconnected:t}=this.state;e!=null&&!t&&e.clearAllFilters()}sendColumnsChange(e){fe.debug2("sendColumnsChange",e);var{glEventHub:t}=this.props,n=T.getIdFromPanel(this);k(n),At(t,n,e)}startModelListening(e){e.addEventListener(x.EVENT.DISCONNECT,this.handleDisconnect),e.addEventListener(x.EVENT.RECONNECT,this.handleReconnect),e.addEventListener(x.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.addEventListener(x.EVENT.TABLE_CHANGED,this.handleTableChanged)}stopModelListening(e){e.removeEventListener(x.EVENT.DISCONNECT,this.handleDisconnect),e.removeEventListener(x.EVENT.RECONNECT,this.handleReconnect),e.removeEventListener(x.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.removeEventListener(x.EVENT.TABLE_CHANGED,this.handleTableChanged)}getCoordinateForColumn(e){var t,n,r,{model:a}=this.state;if(!a)return null;var l=this.irisGrid.current,{gridWrapper:s}=l||{},o=(t=s==null?void 0:s.getBoundingClientRect())!==null&&t!==void 0?t:null;if(o==null||o.width<=0||o.height<=0)return null;k(l);var{metrics:d}=l.state;k(d);var{columnHeaderHeight:h,allColumnXs:c,allColumnWidths:p,right:v,columnHeaderMaxDepth:g}=d,S=a.getColumnIndexByName(e);k(S);var m=l.getVisibleColumn(S),b=(n=c.get(m))!==null&&n!==void 0?n:0,y=(r=p.get(m))!==null&&r!==void 0?r:0,C=ze(m>v?o.right:o.left+b+y*.5,o.left,o.right),P=o.top+h*g;return[C,P]}setFilterMap(e){var t=this.irisGrid.current;t!=null&&t.setFilterMap(e)}setAdvancedFilterMap(e){var t=this.irisGrid.current;t!=null&&t.setAdvancedFilterMap(e)}setFilters(e){var{quickFilters:t,advancedFilters:n}=e;fe.debug("setFilters",t,n);var{model:r,isDisconnected:a}=this.state,l=this.irisGrid.current;if(l==null||a){fe.debug("Ignore setFilters, model disconnected");return}k(r);var{columns:s,formatter:o}=r,d=H.changeFilterColumnNamesToIndexes(r.columns,t).filter(c=>{var[p]=c;return r.isFilterable(p)}),h=H.changeFilterColumnNamesToIndexes(r.columns,n).filter(c=>{var[p]=c;return r.isFilterable(p)});k(this.irisGridUtils),l.clearAllFilters(),l.setFilters({quickFilters:this.irisGridUtils.hydrateQuickFilters(s,d,o.timeZone),advancedFilters:this.irisGridUtils.hydrateAdvancedFilters(s,h,o.timeZone)})}setStateOverrides(e){fe.debug("setStateOverrides",e);var{irisGridState:t,gridState:n}=e;this.setState({irisGridStateOverrides:t,gridStateOverrides:n},()=>{this.initModel()})}unsetFilterValue(){}loadPanelState(e){var{panelState:t,irisGridStateOverrides:n,gridStateOverrides:r}=this.state;if(t!=null)try{var{gridState:a,irisGridState:l,irisGridPanelState:s}=t,o=ae({},n),{quickFilters:d,advancedFilters:h}=o;d&&(o.quickFilters=H.changeFilterColumnNamesToIndexes(e.columns,d)),h&&(o.advancedFilters=H.changeFilterColumnNamesToIndexes(e.columns,h));var{isSelectingPartition:c,partitions:p,advancedSettings:v}=H.hydrateIrisGridPanelState(e,s);k(this.irisGridUtils);var{advancedFilters:g,customColumns:S,customColumnFormatMap:m,columnAlignmentMap:b,isFilterBarShown:y,quickFilters:C,reverse:P,rollupConfig:w,aggregationSettings:F,sorts:L,userColumnWidths:M,userRowHeights:D,showSearchBar:E,searchValue:j,selectDistinctColumns:R,selectedSearchColumns:A,invertSearchColumns:q,pendingDataMap:Ce,frozenColumns:Ie,conditionalFormats:xe,columnHeaderGroups:ie,partitionConfig:He}=this.irisGridUtils.hydrateIrisGridState(e,ae(ae({},l),o)),{isStuckToBottom:Be,isStuckToRight:ot,movedColumns:dt,movedRows:ee}=H.hydrateGridState(e,ae(ae({},a),r),l.customColumns);this.setState({advancedFilters:g,advancedSettings:v,conditionalFormats:xe,customColumns:S,customColumnFormatMap:m,columnAlignmentMap:b,isFilterBarShown:y,isSelectingPartition:c,movedColumns:dt,movedRows:ee,partitions:p,quickFilters:C,reverse:P,rollupConfig:w,aggregationSettings:F,sorts:L,userColumnWidths:M,userRowHeights:D,showSearchBar:E,searchValue:j,selectDistinctColumns:R,selectedSearchColumns:A,invertSearchColumns:q,pendingDataMap:Ce,frozenColumns:Ie,isStuckToBottom:Be,isStuckToRight:ot,columnHeaderGroups:ie,partitionConfig:He})}catch(ut){fe.error("loadPanelState failed to load panelState",t,ut)}}updateGrid(){var e,t,n=(e=(t=this.irisGrid.current)===null||t===void 0?void 0:t.grid)!==null&&e!==void 0?e:null;n&&n.handleResize()}render(){var e,t,{children:n,glContainer:r,glEventHub:a,columnSelectionValidator:l,getDownloadWorker:s,inputFilters:o,links:d,metadata:h,mouseHandlers:c,panelState:p,user:v,renderer:g,settings:S,getMetricCalculator:m,theme:b}=this.props,{advancedFilters:y,aggregationSettings:C,advancedSettings:P,conditionalFormats:w,customColumns:F,customColumnFormatMap:L,columnAlignmentMap:M,error:D,isDisconnected:E,isFilterBarShown:j,isSelectingPartition:R,isStuckToBottom:A,isStuckToRight:q,isLoaded:Ce,isLoading:Ie,isModelReady:xe,model:ie,movedColumns:He,movedRows:Be,partitions:ot,partitionConfig:dt,quickFilters:ee,reverse:ut,rollupConfig:he,sorts:me,userColumnWidths:ye,userRowHeights:Pe,showSearchBar:We,searchValue:Yt,selectDistinctColumns:Yr,selectedSearchColumns:Qr,invertSearchColumns:Jr,Plugin:ea,pluginFilters:ta,pluginFetchColumns:na,pendingDataMap:ia,frozenColumns:ra,columnHeaderGroups:aa}=this.state,la=D!=null?"Unable to open table. ".concat(D):void 0,sa=(e=ie==null?void 0:ie.description)!==null&&e!==void 0?e:void 0,oa=(t=p==null?void 0:p.pluginState)!==null&&t!==void 0?t:null,da=n??this.getPluginContent(ea,ie,oa),{permissions:ua}=v,{canCopy:ha,canDownloadCsv:ca}=ua,xn=this.getWidgetPanelDescriptor(h,sa);return u.jsx(Ft,{errorMessage:la,isDisconnected:E,isLoading:Ie,isLoaded:Ce,className:"iris-grid-panel",glContainer:r,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabFocus:this.handleShow,onTabClicked:this.handleTabClicked,componentPanel:this,descriptor:xn,renderTabTooltip:()=>u.jsx(Rs,{descriptor:xn,model:ie}),children:xe&&ie&&u.jsx(pn,{advancedFilters:y,aggregationSettings:C,advancedSettings:P,alwaysFetchColumns:this.getAlwaysFetchColumns(d,na),columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",copyCursor:"copy",customColumns:F,customColumnFormatMap:L,columnAlignmentMap:M,columnSelectionValidator:this.isColumnSelectionValid,conditionalFormats:w,inputFilters:this.getGridInputFilters(ie.columns,o),applyInputFiltersOnInit:p==null,isFilterBarShown:j,isSelectingColumn:l!=null,isSelectingPartition:R,isStuckToBottom:A,isStuckToRight:q,mouseHandlers:c,movedColumns:He,movedRows:Be,partitions:ot,partitionConfig:dt,quickFilters:ee,renderer:g,reverse:ut,rollupConfig:he,settings:S,sorts:me,userColumnWidths:ye,userRowHeights:Pe,model:ie,showSearchBar:We,searchValue:Yt,selectedSearchColumns:Qr,selectDistinctColumns:Yr,invertSearchColumns:Jr,onColumnSelected:this.handleColumnSelected,onCreateChart:this.handleCreateChart,onDataSelected:this.handleDataSelected,onError:this.handleError,onStateChange:this.handleGridStateChange,onContextMenu:this.handleContextMenu,onAdvancedSettingsChange:this.handleAdvancedSettingsChange,customFilters:ta,pendingDataMap:ia,canCopy:ha,canDownloadCsv:ca,ref:this.irisGrid,getDownloadWorker:s,frozenColumns:ra,theme:b,columnHeaderGroups:aa,getMetricCalculator:m,children:da})})}}V(tt,"defaultProps",{onStateChange:()=>{},onPanelStateUpdate:()=>{}});V(tt,"displayName","IrisGridPanel");V(tt,"COMPONENT","IrisGridPanel");var Vs=(i,e)=>{var{localDashboardId:t=Pa,glContainer:n}=e;return{inputFilters:wt(i,t),links:lt(i,t),columnSelectionValidator:Et(i,t),user:wa(i),settings:Ht(i)}},Fn=Ge(Vs,null,null,{forwardRef:!0})(tt);function ft(i,e,t){return(e=Gs(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Gs(i){var e=Hs(i,"string");return typeof e=="symbol"?e:e+""}function Hs(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var si=B.module("InputFilter"),Bs=150;class nt extends f.Component{constructor(e){super(e),ft(this,"inputRef",void 0),ft(this,"getItemLabel",se((a,l)=>{var{name:s,type:o}=a[l];if(l>0&&a[l-1].name===s||l<a.length-1&&a[l+1].name===s){var d=o.substring(o.lastIndexOf(".")+1);return"".concat(s," (").concat(d,")")}return s},{max:1e3})),ft(this,"sendUpdate",Ve(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s})},Bs)),this.handleColumnChange=this.handleColumnChange.bind(this),this.handleInputKeyPress=this.handleInputKeyPress.bind(this),this.handleValueChange=this.handleValueChange.bind(this),this.handleSettingsCancel=this.handleSettingsCancel.bind(this),this.handleSettingsClick=this.handleSettingsClick.bind(this),this.handleSettingsSave=this.handleSettingsSave.bind(this),this.handleBackgroundClick=this.handleBackgroundClick.bind(this),this.inputRef=ne.createRef();var{column:t,isValueShown:n,value:r}=e;this.state={column:t,selectedColumn:t,value:r,isValueShown:n}}componentDidUpdate(e,t){var{column:n}=this.props,{column:r,value:a,isValueShown:l}=this.state;n!==e.column&&this.setState({column:n,selectedColumn:n}),l!==void 0&&l&&l!==t.isValueShown&&this.focusInput(),(r!==t.column||a!==t.value||l!==t.isValueShown)&&this.sendUpdate()}componentWillUnmount(){this.sendUpdate.flush()}handleColumnChange(e){var{columns:t}=this.props,n=t[parseInt(e,10)];si.debug2("handleColumnChange",n),this.setState({selectedColumn:n,value:void 0})}handleInputKeyPress(e){e.key==="Enter"&&(e.preventDefault(),e.stopPropagation(),this.setState(t=>{var{value:n}=t;return n==null?{value:""}:null},()=>{this.sendUpdate(),this.sendUpdate.flush()}))}handleValueChange(e){var{value:t}=e.target;si.debug2("handleValueChange",t),this.setState({value:t})}handleSettingsCancel(){var{column:e}=this.state;this.setState({selectedColumn:e,isValueShown:!0})}handleSettingsSave(){var{selectedColumn:e}=this.state;this.setState({column:e,isValueShown:!0})}handleSettingsClick(e){var{column:t}=this.state;this.setState({selectedColumn:t,isValueShown:!1}),e.stopPropagation()}handleBackgroundClick(e){e.target!==this.inputRef.current&&this.focusInput()}focusInput(){this.inputRef.current!==null&&(this.inputRef.current.select(),this.inputRef.current.focus())}clearFilter(){this.setState({value:""})}setFilterState(e){var{name:t,type:n,value:r,isValueShown:a}=e,l=t!=null&&n!=null?{name:t,type:n}:void 0,s=a===void 0?{column:l,value:r}:{column:l,value:r,isValueShown:a};this.setState(s)}render(){var{columns:e}=this.props,{column:t,isValueShown:n,selectedColumn:r,value:a}=this.state,l=a==null||a.length===0?nt.PLACEHOLDER.length:a.length,s=null;if(t!=null){var o=e.findIndex(d=>d.name===t.name&&d.type===t.type);s=o>=0?this.getItemLabel(e,o):t.name}return u.jsxs(vn,{className:"input-filter fill-parent-absolute",isFlipped:n??!1,children:[u.jsx("div",{className:"input-filter-settings-card",children:u.jsxs("div",{className:"input-filter-settings-content",children:[u.jsxs("div",{className:"input-filter-settings-grid",children:[u.jsx("label",{children:"Filter Column"}),u.jsxs(bt,{value:String(e.findIndex(d=>d.name===(r==null?void 0:r.name)&&d.type===(r==null?void 0:r.type))),className:"custom-select",onChange:this.handleColumnChange,children:[e.map((d,h)=>u.jsx("option",{value:h,children:this.getItemLabel(e,h)},"".concat(d.name,"/").concat(d.type))),e.length===0&&u.jsx("option",{value:"-1",disabled:!0,children:"No Available Columns"})]}),u.jsx("div",{className:"text-muted small",children:"Input filter control will apply its filter to all columns matching this name in this dashboard."})]}),u.jsxs("div",{className:"input-filter-settings-buttons",children:[u.jsx(N,{kind:"secondary",onClick:this.handleSettingsCancel,disabled:t==null,children:"Cancel"}),u.jsx(N,{kind:"primary",className:"ml-2",onClick:this.handleSettingsSave,disabled:r==null,children:"Save"})]})]})}),u.jsxs("div",{className:"input-filter-value-card",onClick:this.handleBackgroundClick,children:[u.jsx("div",{className:"input-filter-column",children:u.jsxs("div",{className:"input-filter-column-title",children:[s," Filter"]})}),u.jsx("div",{className:"d-flex justify-content-center align-items-center h-100 w-100",children:u.jsx("div",{className:"input-filter-value-input d-flex flex-column justify-content-center",children:u.jsx("input",{type:"text",ref:this.inputRef,placeholder:nt.PLACEHOLDER,value:a??"",onChange:this.handleValueChange,onKeyPress:this.handleInputKeyPress,style:{width:"".concat(l+3,"ch")},spellCheck:"false"})})}),u.jsx("div",{className:"input-filter-menu",children:u.jsx(N,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:u.jsx(oe,{icon:hn,transform:"grow-4"}),tooltip:"Input Filter Settings"})})]})]})}}ft(nt,"PLACEHOLDER","Enter value...");ft(nt,"defaultProps",{column:null,isValueShown:!1,value:null});function qt(i,e,t){return(e=Ws(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ws(i){var e=Ks(i,"string");return typeof e=="symbol"?e:e+""}function Ks(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var zs=250;class Xt extends f.Component{constructor(e){super(e),qt(this,"inputFilterRef",void 0),this.handleChange=Ve(this.handleChange.bind(this),zs),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.inputFilterRef=ne.createRef();var{panelState:t}=e,{value:n,isValueShown:r=!1,name:a,type:l,timestamp:s=Date.now()}=t??{};this.state={columns:[],column:a!=null&&l!=null?{name:a,type:l}:void 0,value:n,timestamp:s,isValueShown:r,wasFlipped:!1,skipUpdate:!1,panelState:t}}componentDidMount(){this.updateColumns();var{column:e,value:t,timestamp:n}=this.state;if(e!=null){var{name:r,type:a}=e;this.sendUpdate(r,a,t,n)}}componentDidUpdate(e){var{columns:t}=this.props;t!==e.columns&&this.updateColumns()}handleChange(e){var{column:t,isValueShown:n=!1,value:r}=e,a,l;t!=null&&({name:a,type:l}=t);var s=!0,o=Date.now();this.setState(d=>{var h,{panelState:c,timestamp:p,wasFlipped:v,skipUpdate:g}=d,S=c!=null&&n!==c.isValueShown&&a===c.name&&l===c.type&&r===c.value;return s=(h=!g&&n&&(!S||!v))!==null&&h!==void 0?h:!1,s||(o=p),{panelState:{isValueShown:n,name:a,type:l,value:r,timestamp:o},timestamp:o,wasFlipped:S,skipUpdate:!1}},()=>{s&&this.sendUpdate(a,l,r,o)})}handleClearAllFilters(){var e;(e=this.inputFilterRef.current)===null||e===void 0||e.clearFilter()}sendUpdate(e,t,n,r){var{glEventHub:a}=this.props,l=T.getIdFromPanel(this);k(l),Pr(a,l,e!=null&&t!=null&&n!=null&&r!=null?{name:e,type:t,value:n,timestamp:r}:null)}setPanelState(e){var t,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState({skipUpdate:!n}),(t=this.inputFilterRef.current)===null||t===void 0||t.setFilterState(e)}updateColumns(){var{columns:e}=this.props;e!=null&&this.setState(t=>{var{column:n}=t;return n==null&&e.length>0?{columns:[...e],column:e[0]}:n!=null&&!e.find(r=>{var{name:a,type:l}=r;return n.name===a&&n.type===l})?{columns:[...e,n]}:{columns:[...e]}})}render(){var{glContainer:e,glEventHub:t}=this.props,{column:n,columns:r,isValueShown:a,value:l}=this.state;return u.jsx(rt,{className:"iris-input-filter-panel",componentPanel:this,glContainer:e,glEventHub:t,onClearAllFilters:this.handleClearAllFilters,isClonable:!0,isRenamable:!0,children:u.jsx(nt,{ref:this.inputFilterRef,column:n,columns:r,onChange:this.handleChange,isValueShown:a,value:l})})}}qt(Xt,"defaultProps",{panelState:null});qt(Xt,"COMPONENT","InputFilterPanel");qt(Xt,"displayName","InputFilterPanel");var qs=(i,e)=>{var{localDashboardId:t}=e;return{columns:un(i,t)}},Ye=Ge(qs,null,null,{forwardRef:!0})(Xt);function oi(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Nt(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?oi(Object(t),!0).forEach(function(n){Dn(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):oi(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Dn(i,e,t){return(e=Xs(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Xs(i){var e=Zs(i,"string");return typeof e=="symbol"?e:e+""}function Zs(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var X=B.module("FilterSetManagerPanel");function Ys(i){return i.setPanelState!=null}class it extends f.Component{static changeFilterIndexesToColumnNames(e,t){return t.map(n=>{var[r,a]=n;if(r>=e.columns.length)return null;var{name:l}=e.columns[r];return{name:l,filter:a}}).filter(n=>n!=null)}constructor(e){super(e),this.handleChange=this.handleChange.bind(this),this.handleFilterApply=this.handleFilterApply.bind(this),this.handleSetsUpdate=this.handleSetsUpdate.bind(this),this.handleGetFilterState=this.handleGetFilterState.bind(this);var{panelState:t,filterSets:n}=e,{selectedId:r=n.length>0?n[0].id:void 0,isValueShown:a=!1}=t??{};this.state={selectedId:r,isValueShown:a,panelState:t}}getFilterState(){var{dashboardOpenedPanelMap:e}=this.props,t=[];return[...e.keys()].forEach(n=>{var r=e.get(n);if(r===void 0){X.error("Could not get panel",r);return}var a=T.getComponentNameFromPanel(r),l=T.getIdFromPanel(r);X.debug("Panel:",r,a);var{glContainer:s=null}=r.props;if(s==null){X.error("Could not get panel container",r);return}var o=T.getComponentConfigFromContainer(s);if(o==null){X.error("Could not get component config from container",s);return}var d=T.getPanelComponentState(o);if(d==null){X.debug("Panel state is null ".concat(l));return}switch(a){case T.getComponentName(tt):{var h;l!=null&&(h=this.getIrisGridPanelFilters(l,d)),h!=null&&t.push({panelId:l,type:a,state:h});break}case T.getComponentName(Ye):case T.getComponentName(Ze):{var{isValueShown:c,name:p,type:v,value:g}=d;t.push({panelId:l,type:a,state:{isValueShown:c,name:p,type:v,value:g}});break}}}),t}getIrisGridPanelFilters(e,t){var{panelTableMap:n}=this.props,r=n.get(e);if(r==null)return X.error("Unable to get table for panel ".concat(e,".")),null;var{irisGridState:a={advancedFilters:void 0,quickFilters:void 0},gridState:l={}}=t,{advancedFilters:s,quickFilters:o}=a,d;s&&(d=it.changeFilterIndexesToColumnNames(r,s));var h;return o&&(h=it.changeFilterIndexesToColumnNames(r,o)),{irisGridState:Nt(Nt({},a),{},{advancedFilters:d,quickFilters:h}),gridState:Nt({},l)}}handleGetFilterState(){return this.getFilterState()}handleChange(e){var{isValueShown:t,selectedId:n}=e;X.debug("handleChange",t,n),this.setState({isValueShown:t,selectedId:n}),this.updatePanelState()}handleFilterApply(e){var{dashboardOpenedPanelMap:t}=this.props,{panels:n,restoreFullState:r=!1}=e;X.debug("Apply filters from filter set",e),n.forEach(a=>{var{panelId:l,type:s,state:o}=a;if(l==null){X.debug("panel is null",l);return}if(!t.has(l)){X.debug("Ignore closed panel",l);return}X.debug("Apply panel filters",l,s,o);var d=t.get(l);switch(s){case T.getComponentName(tt):this.restoreIrisGridFilters(d,o,r);break;case T.getComponentName(Ye):case T.getComponentName(Ze):this.restoreInputFilterState(d,o);break}})}handleSetsUpdate(e){var{setDashboardFilterSets:t,localDashboardId:n}=this.props;X.debug("Saving updated sets",e),t(n,[...e])}updatePanelState(){this.setState(e=>{var{selectedId:t,isValueShown:n}=e;return{panelState:{selectedId:t,isValueShown:n}}})}restoreIrisGridFilters(e,t,n){var{irisGridState:r={},advancedFilters:a=[],quickFilters:l=[]}=t,{advancedFilters:s=a,quickFilters:o=l}=r,{panelTableMap:d}=this.props,h=T.getIdFromPanel(e);if(h==null){X.error("Panel Id is null.");return}var c=d.get(h);if(c==null){X.error("Unable to get table for panel ".concat(h,"."));return}X.debug("restoreIrisGridFilters",h,t,n),n?e.setStateOverrides(t):e.setFilters({quickFilters:o,advancedFilters:s})}restoreInputFilterState(e,t){var n=Nt({},t);delete n.isValueShown,X.debug("restoreInputFilterState",e,n),e&&Ys(e)&&e.setPanelState(n)}render(){var{glContainer:e,glEventHub:t,filterSets:n}=this.props,{isValueShown:r,selectedId:a}=this.state;return u.jsx(rt,{className:"filter-set-manager-panel",componentPanel:this,glContainer:e,glEventHub:t,isClonable:!0,isRenamable:!0,children:u.jsx("div",{className:"input-filter-container h-100 w-100 container",children:u.jsx(yt,{onChange:this.handleChange,onApply:this.handleFilterApply,onUpdateSets:this.handleSetsUpdate,isValueShown:r,filterSets:n,selectedId:a,getFilterState:this.handleGetFilterState})})})}}Dn(it,"defaultProps",{panelState:null});Dn(it,"COMPONENT","FilterSetManagerPanel");var Qs=(i,e)=>{var{localDashboardId:t}=e;return{filterSets:Yi(i,t),dashboardOpenedPanelMap:Ki(i,t),dashboardInputFilters:wt(i,t),panelTableMap:Vt(i,t)}},xt=Ge(Qs,{setDashboardFilterSets:Zi},null,{forwardRef:!0})(it);function Js(i,e,t){return(e=eo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function eo(i){var e=to(i,"string");return typeof e=="symbol"?e:e+""}function to(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Dr extends f.PureComponent{render(){var{isEditing:e,children:t,onDoubleClick:n}=this.props;return u.jsxs("div",{className:"markdown-editor-container h-100 w-100",onDoubleClick:n,children:[u.jsx("div",{className:de("text-muted","edit-hint",{viewing:e===void 0||!e}),children:u.jsxs("span",{children:["double-click to edit ",u.jsx(oe,{icon:dr})]})}),t]})}}Js(Dr,"defaultProps",{isEditing:!1});function no(i,e,t){return(e=io(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function io(i){var e=ro(i,"string");return typeof e=="symbol"?e:e+""}function ro(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var ao=B.module("MarkdownStartPage");class Mr extends f.PureComponent{constructor(e){super(e),this.handleDeleteButtonClick=this.handleDeleteButtonClick.bind(this),this.handleDeleteModalClose=this.handleDeleteModalClose.bind(this),this.state={isDeleteModalShown:!1}}handleDeleteButtonClick(e){this.setState({isDeleteModalShown:!0,toBeDeleted:e})}handleDeleteModalClose(){this.setState({isDeleteModalShown:!1,toBeDeleted:void 0})}handleDeleteMarkdown(e){if(ao.debug("delete markdown: ",e),e!==void 0){var{onDelete:t}=this.props;t(e)}this.setState({isDeleteModalShown:!1,toBeDeleted:void 0})}render(){var{closedMarkdowns:e,onOpen:t,onCreate:n}=this.props,{isDeleteModalShown:r,toBeDeleted:a}=this.state;return u.jsx("div",{className:"markdown-panel-start-page h-100 w-100",children:u.jsxs("div",{className:"markdown-panel-start-page-container",children:[u.jsxs("div",{className:"markdown-panel-start-list",children:[u.jsx("h3",{className:"list-title",children:"Start"}),u.jsx("div",{className:"list-item",children:u.jsx(N,{kind:"ghost",className:"title",onClick:n,children:"New Markdown Note"})})]}),u.jsxs("div",{className:"markdown-panel-start-list",children:[u.jsx("h3",{className:"list-title",children:"Recently Closed from Dashboard"}),e.map(l=>u.jsxs("div",{className:"list-item",children:[u.jsx(N,{kind:"ghost",className:"title",onClick:()=>t(l),children:l.title}),u.jsx("button",{className:"btn-link icon",type:"button",onClick:()=>{this.handleDeleteButtonClick(l)},children:u.jsx(oe,{icon:cn})})]},l.id)),u.jsxs(sl,{isOpen:r,toggle:this.handleDeleteModalClose,className:"modal-dialog-centered markdown-delete-modal",children:[u.jsx(ol,{children:"Are you sure you want to permanently delete this note?"}),u.jsx(dl,{children:"You can't undo this action."}),u.jsxs(Ea,{children:[u.jsx(N,{kind:"secondary",onClick:this.handleDeleteModalClose,children:"Cancel"}),u.jsx(N,{kind:"danger",onClick:()=>{this.handleDeleteMarkdown(a)},children:"Delete"})]})]})]})]})})}}no(Mr,"defaultProps",{closedMarkdowns:[],onOpen:()=>{},onCreate:()=>{},onDelete:()=>{}});function Mn(i,e,t){return(e=lo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function lo(i){var e=so(i,"string");return typeof e=="symbol"?e:e+""}function so(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Se{static getNewMarkdownTitle(e){for(var t="".concat(Se.DEFAULT_TITLE),n=0;e.indexOf(t)>=0;)n+=1,t="".concat(Se.DEFAULT_TITLE,"-").concat(n);return t}}Mn(Se,"DEFAULT_TITLE","Note");Mn(Se,"DEFAULT_CONTENT",`# Markdown Note
5
5
 
6
- This note can be edited using **markdown** for styling.`);Mn(Se,"getClosedMarkdowns",O(i=>i.filter(e=>e.component==="MarkdownPanel"&&e.props.panelState.content!==""&&e.props.panelState.content!==null).reverse()));function gt(i,e,t){return(e=oo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function oo(i){var e=uo(i,"string");return typeof e=="symbol"?e:e+""}function uo(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var ho=f.lazy(()=>Tl(()=>import("./MarkdownEditor-B4WFJDBT.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10]),import.meta.url)),jt=B.module("MarkdownPanel");class kn extends f.Component{constructor(e){super(e),gt(this,"markdownEditor",void 0),gt(this,"editor",void 0),gt(this,"getClosedMarkdowns",O(Se.getClosedMarkdowns)),this.handleContainerDoubleClick=this.handleContainerDoubleClick.bind(this),this.handleCreateMarkdown=this.handleCreateMarkdown.bind(this),this.handleDeleteMarkdown=this.handleDeleteMarkdown.bind(this),this.handleOpenMarkdown=this.handleOpenMarkdown.bind(this),this.handleEditorInitialized=this.handleEditorInitialized.bind(this),this.handleEditorBlur=this.handleEditorBlur.bind(this),this.handleEditorResize=this.handleEditorResize.bind(this);var{panelState:t}=e,n=null;t!=null&&t.content!=null&&(t.content!==""?{content:n}=t:n=Se.DEFAULT_CONTENT),this.state={isStartPageShown:n==null&&this.getClosedMarkdowns(e.closedPanels).length!==0,isEditing:!1,content:n,panelState:t},this.markdownEditor=null}setEditorPosition(e){k(this.markdownEditor);var{container:t}=this.markdownEditor;if(this.editor&&t!=null){var n,r,a=t.getBoundingClientRect().top,l=t.scrollTop,s=t.scrollHeight,o=(n=(r=this.editor.getModel())===null||r===void 0?void 0:r.getLineCount())!==null&&n!==void 0?n:0,d=Math.round((l+e-a)/s*o);d>o&&(d=o),this.editor.revealLine(d),this.editor.setPosition({lineNumber:d,column:1}),this.editor.focus()}}handleContainerDoubleClick(e){var{isEditing:t}=this.state,n=e.clientY;t||this.setState({isEditing:!0},()=>{this.setEditorPosition(n)})}handleEditorInitialized(e){jt.debug("Markdown Editor Initialized..."),this.editor=e}handleCreateMarkdown(){jt.debug("create markdown..."),this.setState({isStartPageShown:!1,content:"",isEditing:!0,panelState:{content:""}},()=>{this.editor!=null&&this.editor.focus!=null&&this.editor.focus()})}handleOpenMarkdown(e){jt.debug("open markdown...",e);var{glContainer:t,glEventHub:n}=this.props,r=T.getComponentConfigFromContainer(t);n.emit(te.REOPEN,e,r)}handleDeleteMarkdown(e){var{glEventHub:t}=this.props;t.emit(te.DELETE,e)}handleEditorBlur(e){var t;jt.debug("markdown content changed, saving...");var{isEditing:n}=this.state;if(!(!n||this.markdownEditor!=null&&this.markdownEditor.container!=null&&this.markdownEditor.container.contains(e.relatedTarget))){var r=(t=this.editor)===null||t===void 0?void 0:t.getValue();this.setState({content:r,isEditing:!1,panelState:{content:r}})}}handleEditorResize(){var{isEditing:e}=this.state;e&&this.editor&&this.editor.layout()}render(){var{glContainer:e,glEventHub:t,closedPanels:n}=this.props,{isEditing:r,isStartPageShown:a,content:l}=this.state,s=this.getClosedMarkdowns(n);return u.jsx(rt,{glContainer:e,glEventHub:t,className:"markdown-panel",componentPanel:this,onResize:this.handleEditorResize,onBlur:this.handleEditorBlur,isClonable:!0,isRenamable:!0,children:a?u.jsx(Mr,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):u.jsx(Dr,{isEditing:r,onDoubleClick:this.handleContainerDoubleClick,children:u.jsx(f.Suspense,{fallback:u.jsx(St,{"data-testid":"markdown-panel-loading"}),children:u.jsx(ho,{ref:o=>{this.markdownEditor=o},isEditing:r,content:l??Se.DEFAULT_CONTENT,onEditorInitialized:this.handleEditorInitialized})})})})}}gt(kn,"defaultProps",{panelState:null});gt(kn,"COMPONENT","MarkdownPanel");var co=(i,e)=>{var{localDashboardId:t}=e;return{closedPanels:Ta(i,t)}},mt=Ge(co,null,null,{forwardRef:!0})(kn);function kr(i){var{onClick:e}=i,t=f.useRef(null),n=f.useCallback(r=>{var a;(a=t.current)===null||a===void 0||a.blur(),e(r)},[e]);return u.jsxs(N,{ref:t,kind:"primary",className:"btn-pandas",onClick:n,tooltip:"Click to refresh pandas dataframe, updates do not occur automatically.",children:["pandas dataframe",u.jsxs("span",{children:[u.jsx(oe,{icon:ur,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}function di(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function ui(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?di(Object(t),!0).forEach(function(n){Pt(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):di(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function hi(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function po(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){hi(a,n,r,l,s,"next",o)}function s(o){hi(a,n,r,l,s,"throw",o)}l(void 0)})}}function Pt(i,e,t){return(e=vo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function vo(i){var e=mo(i,"string");return typeof e=="symbol"?e:e+""}function mo(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Zt extends f.Component{constructor(e){super(e),Pt(this,"irisGridRef",void 0),Pt(this,"model",null),this.irisGridRef=ne.createRef(),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReload=this.handleReload.bind(this),this.handleGridStateChange=this.handleGridStateChange.bind(this),this.handlePanelStateUpdate=this.handlePanelStateUpdate.bind(this);var{panelState:t}=e;this.state={shouldFocusGrid:!1,panelState:t,makeModel:this.wrapMakeModel(e.makeModel)}}componentDidUpdate(e){var{makeModel:t}=e,{makeModel:n}=this.props;t!==n&&this.setState({makeModel:this.wrapMakeModel(n)})}componentWillUnmount(){this.model!=null&&this.stopListening(this.model)}wrapMakeModel(e){var t=this;return po(function*(){var n=yield e();return t.model!=null&&t.stopListening(t.model),t.model=n,t.startListening(n),n})}startListening(e){e.addEventListener(x.EVENT.DISCONNECT,this.handleDisconnect)}stopListening(e){e.removeEventListener(x.EVENT.DISCONNECT,this.handleDisconnect)}handleDisconnect(){var e;(e=this.irisGridRef.current)===null||e===void 0||e.setState({model:void 0})}handleReload(){var e;(e=this.irisGridRef.current)===null||e===void 0||e.initModel(),this.setState({shouldFocusGrid:!0})}handleGridStateChange(){var e,{shouldFocusGrid:t}=this.state;t&&(e=this.irisGridRef.current)!==null&&e!==void 0&&(e=e.irisGrid)!==null&&e!==void 0&&(e=e.current)!==null&&e!==void 0&&e.grid&&(this.irisGridRef.current.irisGrid.current.grid.focus(),this.setState({shouldFocusGrid:!1}))}handlePanelStateUpdate(e){this.setState({panelState:e})}render(){var{makeModel:e}=this.state;return u.jsx(Fn,ui(ui({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},this.props),{},{makeModel:e,children:u.jsx(kr,{onClick:this.handleReload})}))}}Pt(Zt,"defaultProps",{panelState:null});Pt(Zt,"COMPONENT","PandasPanel");function ci(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function pi(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){ci(a,n,r,l,s,"next",o)}function s(o){ci(a,n,r,l,s,"throw",o)}l(void 0)})}}function vi(i,e,t){return(e=fo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function fo(i){var e=go(i,"string");return typeof e=="symbol"?e:e+""}function go(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class bo{constructor(e){vi(this,"items",void 0),vi(this,"onUpdateCallback",void 0),this.items=e}setSearch(e){}setExpanded(e,t){if(e.charAt(e.length-1)==="/")for(var n=0;n<this.items.length;n+=1){var r=this.items[n];Rn(r)&&("".concat(r.filename,"/")===e||r.filename===e)&&(r.isExpanded=t)}return Promise.resolve()}collapseAll(){for(var e=0;e<this.items.length;e+=1){var t=this.items[e];Rn(t)&&(t.isExpanded=!1)}return Promise.resolve()}getViewportData(){return Promise.resolve({items:this.items,offset:0})}getSnapshot(e){return pi(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return pi(function*(){var n,r=yield t.getViewportData();(n=t.onUpdateCallback)===null||n===void 0||n.call(t,r)})()}setFilters(e){}setSorts(e){}setReversed(e){}close(){}onUpdate(e){return this.onUpdateCallback=e,jest.fn()}get size(){return this.items.length}}function mi(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function ht(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){mi(a,n,r,l,s,"next",o)}function s(o){mi(a,n,r,l,s,"throw",o)}l(void 0)})}}function So(i,e,t){return(e=Co(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Co(i){var e=yo(i,"string");return typeof e=="symbol"?e:e+""}function yo(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Po{constructor(e){So(this,"items",void 0),this.items=e}getTable(){var e=this;return ht(function*(){return new bo(e.items)})()}saveFile(e){throw new Error("Method not implemented.")}loadFile(e){throw new Error("Method not implemented.")}copyFile(e,t){return ht(function*(){throw new Error("Method not implemented.")})()}deleteFile(e){var t=this;return ht(function*(){t.items=t.items.filter(n=>n.filename!==e)})()}moveFile(e,t){var n=this;return ht(function*(){for(var r=0;r<n.items.length;r+=1)if(n.items[r].filename===e){n.items[r].filename=t,n.items[r].basename=Fa.getBaseName(t),n.items[r].id=t;break}})()}info(e){var t=this;return ht(function*(){var n=t.items.filter(a=>a.filename===e);if(n.length===0)throw new Da;if(n.length>1)throw new Error("More than one matching file found");var r=n[0];return{filename:r.filename,basename:r.basename,id:r.filename,type:r.type}})()}createDirectory(e){throw new Error("Method not implemented.")}}var wo=rt,Eo=rt;function fi(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function $t(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?fi(Object(t),!0).forEach(function(n){To(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):fi(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function To(i,e,t){return(e=Fo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Fo(i){var e=Do(i,"string");return typeof e=="symbol"?e:e+""}function Do(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function gi(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function Lr(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){gi(a,n,r,l,s,"next",o)}function s(o){gi(a,n,r,l,s,"throw",o)}l(void 0)})}}function Mo(i,e,t,n){return sn.apply(this,arguments)}function sn(){return sn=Lr(function*(i,e,t,n){var r={},a="",l={};if(Xe(e)&&(r=e.settings,a=e.table,l=e.tableSettings),n!=null&&(n.tableSettings!=null&&(l=n.tableSettings),n.table!=null&&(a=n.table),n.settings!=null&&(r=$t($t({},r),n.settings))),a!=null&&a!==""){var s=yield t();return new H(i).applyTableSettings(s,l,Qi(ul.getState())),Je.makeModelFromSettings(i,r,s)}var o=yield t();return Je.makeModel(i,r,o)}),sn.apply(this,arguments)}var Ln=f.forwardRef((i,e)=>{var t=yr(i)?i.panelState:void 0,{fetch:n,metadata:r,localDashboardId:a}=i;k(r);var[l,s]=Dl(r),o=f.useCallback(Lr(function*(){if(s!=null)throw s;return l==null?new Promise(()=>{}):Mo(l,r,n,t)}),[l,s,r,n,t]);return u.jsx(Tn,$t($t({ref:e},i),{},{metadata:r,localDashboardId:a,makeModel:o}))});Ln.displayName="ChartPanelPlugin";function bi(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function ko(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){bi(a,n,r,l,s,"next",o)}function s(o){bi(a,n,r,l,s,"throw",o)}l(void 0)})}}function Or(i){var e=Bt(),[t,n]=f.useState(),{fetch:r}=i;return f.useEffect(()=>{var a=!1;function l(){return s.apply(this,arguments)}function s(){return s=ko(function*(){var o=yield r(),d=yield Je.makeModel(e,void 0,o);a||n(d)}),s.apply(this,arguments)}return l(),()=>{a=!0}},[e,r]),t?u.jsx(cr,{model:t}):null}var Lo={name:"ChartPanel",title:"Chart",type:je.WIDGET_PLUGIN,component:Or,panelComponent:Ln,supportedTypes:"Figure",icon:hl};function Si(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function Oo(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){Si(a,n,r,l,s,"next",o)}function s(o){Si(a,n,r,l,s,"throw",o)}l(void 0)})}}function Nr(i){Tt(i);var{id:e,layout:t}=i,n=f.useCallback(r=>{var{metadata:a,panelId:l=ue(),table:s}=r,{settings:o}=a,d=function(){var v=Oo(function*(){return s});return function(){return v.apply(this,arguments)}}(),h=J.titleFromSettings(o),c={type:"react-component",component:Tn.COMPONENT,props:{localDashboardId:e,id:l,metadata:a,fetch:d},title:h,id:l},{root:p}=t;T.openComponent({root:p,config:c})},[e,t]);return Ue(t.eventHub,Z.CREATE_CHART,n),null}var No={name:"ChartBuilderPlugin",type:je.DASHBOARD_PLUGIN,component:Nr},ct=B.module("FilterPlugin");function jr(i){Tt(i);var{id:e,layout:t,registerComponent:n}=i,r=ma(),[a]=f.useState(()=>new Map),[l]=f.useState(()=>new Map),[s]=f.useState(()=>new Map),o=f.useCallback(()=>{var m=Array.from(a.values()).flat().sort((C,P)=>{var w=ge.toLower(C.name),F=ge.toLower(P.name);if(w!==F)return w>F?1:-1;var L=ge.toLower(C.type),M=ge.toLower(P.type);return L!==M?L>M?1:-1:0}).reduce((C,P)=>((C.length===0||ge.toLower(C[C.length-1].name)!==ge.toLower(P.name)||ge.toLower(C[C.length-1].type)!==ge.toLower(P.type))&&C.push(P),C),[]),b=Array.from(l.values()).flat().sort((C,P)=>C.timestamp-P.timestamp),y=new Map(s);ct.debug("sendUpdate",{columns:m,filters:b,tableMap:y}),r(Ma(e,{columns:m,filters:b,tableMap:y}))},[r,e,a,l,s]),d=f.useCallback((m,b)=>{ct.debug2("handleColumnsChanged",m,b),b==null?a.delete(m):a.set(m,[].concat(b)),o()},[a,o]),h=f.useCallback((m,b)=>{ct.debug2("handleFiltersChanged",m,b),b==null?l.delete(m):l.set(m,[].concat(b??[])),o()},[l,o]),c=f.useCallback((m,b)=>{ct.debug2("handleTableChanged",m,b),b==null?s.delete(m):s.set(m,b),o()},[s,o]),p=f.useCallback(m=>{ct.debug2("handlePanelUnmount",m);var b=T.getIdFromPanel(m);b!=null&&(a.delete(b),s.delete(b),l.delete(b)),o()},[a,l,s,o]),v=f.useCallback(m=>{var{title:b="DropdownFilter",metadata:y={},panelState:C=null,id:P=ue(),focusElement:w=T.DEFAULT_FOCUS_SELECTOR,createNewStack:F=!1,dragEvent:L=void 0}=m,M={type:"react-component",component:Ze.COMPONENT,props:{id:P,metadata:y,panelState:C,localDashboardId:e},title:b,id:P},{root:D}=t;T.openComponent({root:D,config:M,focusElement:w,createNewStack:F,dragEvent:L})},[t,e]),g=f.useCallback(m=>{var{title:b="InputFilter",metadata:y={},panelState:C=null,id:P=ue(),focusElement:w=T.DEFAULT_FOCUS_SELECTOR,createNewStack:F=!1,dragEvent:L=void 0}=m,M={type:"react-component",component:Ye.COMPONENT,props:{id:P,metadata:y,panelState:C,localDashboardId:e},title:b,id:P},{root:D}=t;T.openComponent({root:D,config:M,focusElement:w,createNewStack:F,dragEvent:L})},[t,e]),S=f.useCallback(m=>{var{title:b="FilterSets",metadata:y={},panelState:C=null,id:P=ue(),focusElement:w=T.DEFAULT_FOCUS_SELECTOR,createNewStack:F=!1,dragEvent:L=void 0}=m,M={type:"react-component",component:xt.COMPONENT,props:{id:P,metadata:y,panelState:C,localDashboardId:e},title:b,id:P},{root:D}=t;T.openComponent({root:D,config:M,focusElement:w,createNewStack:F,dragEvent:L})},[t,e]);return f.useEffect(function(){var b=[n(Ze.COMPONENT,Ze),n(Ye.COMPONENT,Ye),n(xt.COMPONENT,xt)];return()=>{b.forEach(y=>y())}},[n]),ds(t.eventHub,d),hs(t.eventHub,h),us(t.eventHub,c),Ue(t.eventHub,De.OPEN_DROPDOWN,v),Ue(t.eventHub,De.OPEN_INPUT,g),Ue(t.eventHub,De.OPEN_FILTER_SET_MANAGER,S),Ue(t.eventHub,te.UNMOUNT,p),null}var jo={name:"FilterPlugin",type:je.DASHBOARD_PLUGIN,component:jr},Io=B.module("@deephaven/app-utils/useTablePlugin");function On(){var i=Ji(),e=f.useCallback(t=>{var n=i.get(t);if(n!=null){if(ka(n))return n.component;if(La(n))return n.TablePlugin}var r="Unable to find table plugin ".concat(t,".");throw Io.error(r),new Error(r)},[i]);return e}function Ci(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function xo(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){Ci(a,n,r,l,s,"next",o)}function s(o){Ci(a,n,r,l,s,"throw",o)}l(void 0)})}}function Ir(i,e,t){var n=Bt(),r=On(),a=f.useMemo(()=>({loadPlugin:r,localDashboardId:e,makeModel:function(){var l=xo(function*(){var o=yield i();return vr.makeModel(n,o)});function s(){return l.apply(this,arguments)}return s}(),metadata:t}),[n,i,e,r,t]);return a}function yi(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Pi(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?yi(Object(t),!0).forEach(function(n){_o(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):yi(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function _o(i,e,t){return(e=Ro(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ro(i){var e=Ao(i,"string");return typeof e=="symbol"?e:e+""}function Ao(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Nn=f.forwardRef((i,e)=>{var{localDashboardId:t,fetch:n,metadata:r}=i,a=Ir(n,t,r);return u.jsx(Fn,Pi(Pi({ref:e},i),a))});Nn.displayName="GridPanelPlugin";function wi(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function en(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){wi(a,n,r,l,s,"next",o)}function s(o){wi(a,n,r,l,s,"throw",o)}l(void 0)})}}function xr(i){var e=Bt(),[t,n]=f.useState(),[r,a]=f.useState(),[l,s]=f.useState(!0),o=f.useCallback(en(function*(){var c=yield i();return vr.makeModel(e,c)}),[e,i]),d=f.useCallback(en(function*(){s(!0),a(void 0);try{var c=yield o();n(c),s(!1)}catch(p){a(p),s(!1)}}),[o]);f.useEffect(()=>{var c=!1;function p(){return v.apply(this,arguments)}function v(){return v=en(function*(){s(!0),a(void 0);try{var g=yield o();c||(n(g),s(!1))}catch(S){c||(a(S),s(!1))}}),v.apply(this,arguments)}return p(),()=>{c=!0}},[o]),f.useEffect(function(){if(!t)return;function p(){a(new Error("Table disconnected")),n(void 0),s(!1)}return t.addEventListener(x.EVENT.DISCONNECT,p),()=>{t.removeEventListener(x.EVENT.DISCONNECT,p)}},[t]);var h=f.useMemo(()=>{if(l)return{reload:d,status:"loading"};if(r!=null)return{error:r,reload:d,status:"error"};if(t!=null)return{model:t,reload:d,status:"success"};throw new Error("Invalid state")},[r,l,t,d]);return h}function _r(i,e){var{eventHub:t}=Wt(),n=er(),r=tr();f.useEffect(function(){r==null||i==null||At(t,r,i)},[t,r,i]),f.useEffect(function(){e==null||r==null||Ut(t,r,e)},[t,r,e]),f.useEffect(function(){if(r!=null)return()=>{At(t,r,null),Ut(t,r,null)}},[t,r]);var a=f.useCallback(o=>wt(o,n),[n]),l=rn(a),s=f.useMemo(()=>H.getInputFiltersForColumns(i??[],l.filter(o=>{var{value:d,excludePanelIds:h}=o;return d!=null&&(h==null||r!=null&&!h.includes(r))})),[i,r,l]);return s}function Rr(i,e){var{eventHub:t}=Wt(),n=er(),r=tr(),a=nr(),l=f.useCallback(m=>lt(m,n),[n]),s=rn(l),o=f.useMemo(()=>{var m=new Set;return s.forEach(b=>{b.start.panelId===r&&m.add(b.start.columnName)}),[...m]},[s,r]),d=f.useCallback(m=>Et(m,n),[n]),h=rn(d),c=f.useCallback(m=>h&&m&&r!=null?h(r,m,{type:"tableLink"}):!1,[h,r]),p=h!=null,v=f.useCallback((m,b)=>{r!=null&&wr(t,r,b)},[t,r]),g=f.useCallback(m=>{var b,y,C;if(!i||!e)return null;var{gridWrapper:P}=e,w=(b=P==null?void 0:P.getBoundingClientRect())!==null&&b!==void 0?b:null;if(w==null||w.width<=0||w.height<=0)return null;var{metrics:F}=e.state;k(F);var{columnHeaderHeight:L,allColumnXs:M,allColumnWidths:D,right:E,columnHeaderMaxDepth:j}=F,R=i.getColumnIndexByName(m);k(R);var A=e.getVisibleColumn(R),q=(y=M.get(A))!==null&&y!==void 0?y:0,Ce=(C=D.get(A))!==null&&C!==void 0?C:0,Ie=ze(A>E?w.right:w.left+q+Ce*.5,w.left,w.right),xe=w.top+L*j;return[Ie,xe]},[i,e]),S=f.useCallback(m=>{r!=null&&Kt(t,r,m,{type:"tableLink"})},[t,r]);return f.useEffect(function(){if(!(!e||a==null||r==null))return Jn(t,r,{getCoordinates:g,setFilterValues:e.setFilterMap,unsetFilterValue:()=>{},panelId:a}),()=>{Jn(t,r,null)}},[t,r,g,e,a]),{alwaysFetchColumns:o,columnSelectionValidator:c,isSelectingColumn:p,onColumnSelected:S,onDataSelected:v}}var Ar=f.forwardRef((i,e)=>{var{name:t,model:n,filter:r,fetchColumns:a,selectedRanges:l,irisGridRef:s,pluginState:o,onStateChange:d}=i,h=On(),c=f.useMemo(()=>h(t),[h,t]),p=Wt(),v=nr(),g=f.useMemo(()=>{var m;if(v==null)return"unknown";var b=T.getContentItemById(p.root,v);return(m=b==null?void 0:b.config.title)!==null&&m!==void 0?m:"unknown"},[p.root,v]),S=f.useMemo(()=>({irisGrid:s,getTableName:()=>g}),[s,g]);return u.jsx("div",{className:"iris-grid-plugin",children:u.jsx(c,{ref:e,filter:r,fetchColumns:a,model:n,table:n.table,tableName:g,selectedRanges:l,onStateChange:d,pluginState:o,panel:S})})});Ar.displayName="TablePluginWrapper";function Ur(i){var{model:e,irisGridRef:t,irisGridUtils:n,selectedRanges:r}=i,[a,l]=f.useState([]),s=f.useMemo(()=>e!=null&&n!=null&&Me(e)?n.getFiltersFromInputFilters(e.table.columns,a,e.formatter.timeZone):[],[e,n,a]),[o,d]=f.useState([]),h=f.useRef(null),[c,p]=Er(void 0,{version:1,type:"GridWidgetTablePluginState"}),v=f.useMemo(()=>e!=null&&Me(e)&&e.table.pluginName!=null?u.jsx(Ar,{ref:h,name:e.table.pluginName,model:e,filter:l,fetchColumns:d,selectedRanges:r,irisGridRef:t,pluginState:c,onStateChange:p}):null,[e,r,t,c,p]),g=f.useCallback(S=>{var m,b,y;return(m=(b=h.current)===null||b===void 0||(y=b.getMenu)===null||y===void 0?void 0:y.call(b,S))!==null&&m!==void 0?m:[]},[]);return{Plugin:v,customFilters:s,alwaysFetchColumns:o,onContextMenu:g}}var Uo=["alwaysFetchColumns"];function $o(i,e){if(i==null)return{};var t,n,r=Vo(i,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(i);for(n=0;n<a.length;n++)t=a[n],e.indexOf(t)===-1&&{}.propertyIsEnumerable.call(i,t)&&(r[t]=i[t])}return r}function Vo(i,e){if(i==null)return{};var t={};for(var n in i)if({}.hasOwnProperty.call(i,n)){if(e.indexOf(n)!==-1)continue;t[n]=i[n]}return t}function Ei(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function pt(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ei(Object(t),!0).forEach(function(n){Go(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Ei(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Go(i,e,t){return(e=Ho(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ho(i){var e=Bo(i,"string");return typeof e=="symbol"?e:e+""}function Bo(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function $r(i){var e,{fetch:t}=i,n=fa(Ht),{eventHub:r}=Wt(),a=xr(t),l=a.status==="success"?a.model:void 0,s=Bt(),o=f.useMemo(()=>new H(s),[s]),[d,h]=Er(void 0,{version:1,type:"GridWidgetPlugin"}),c=f.useRef(d),p=f.useMemo(()=>{if(!(a.status!=="success"||c.current===void 0))return pt(pt({},o.hydrateIrisGridState(a.model,c.current)),H.hydrateGridState(a.model,c.current))},[a,o]),v=f.useMemo(()=>an.makeMemoizedCombinedGridStateDehydrator(),[]),g=f.useCallback((R,A)=>{if(!(a.status!=="success"||R==null||A==null)){var q=v(a.model,R,A);h(q)}},[a,h,v]),S=_r((e=l==null?void 0:l.columns)!==null&&e!==void 0?e:null,l!=null&&Me(l)?l.table:void 0),m=f.useRef(null),b=Rr(a.status==="success"?a.model:null,m.current),{alwaysFetchColumns:y}=b,C=$o(b,Uo),P=f.useCallback(()=>{m.current!=null&&m.current.clearAllFilters()},[]);Ue(r,De.CLEAR_ALL_FILTERS,P);var[w,F]=f.useState([]),{Plugin:L,customFilters:M,alwaysFetchColumns:D,onContextMenu:E}=Ur({model:l,irisGridRef:m,irisGridUtils:o,selectedRanges:w}),j=f.useMemo(()=>{var R=new Set([...y,...D]);return[...R]},[y,D]);return a.status==="loading"?u.jsx(St,{isLoading:!0,"data-testid":"grid-widget-plugin-loading"}):a.status==="error"?u.jsx(St,{"data-testid":"grid-widget-plugin-loading-error",errorMessage:ir(a.error),isLoading:!1}):(k(l,"Model should be defined when fetch is successful"),u.jsx(pn,pt(pt(pt({ref:m,model:l,settings:n,onStateChange:g,onSelectionChanged:F,onContextMenu:E,inputFilters:S,customFilters:M},C),{},{alwaysFetchColumns:j},p),{},{children:L})))}var Wo={name:"IrisGridPanel",title:"Table",type:je.WIDGET_PLUGIN,component:$r,panelComponent:Nn,supportedTypes:["Table","TreeTable","HierarchicalTable","PartitionedTable"],icon:cl};function Ti(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Le(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ti(Object(t),!0).forEach(function(n){Ko(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Ti(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Ko(i,e,t){return(e=zo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function zo(i){var e=qo(i,"string");return typeof e=="symbol"?e:e+""}function qo(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function Vr(i){var e=i;return typeof e.getCoordinateForColumn=="function"}function Fi(i){var e=i;return Vr(i)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function Di(i){return i.description==null||!i.description.startsWith("Preview of type: ")}var Mi=B.module("LinkerUtils");class Ae{static isLinkValid(e,t,n){if(e.panelId==null||t.panelId==null||e.panelId===t.panelId||n!=null&&n!==e.panelId&&n!==t.panelId)return Mi.debug2("Incompatible panel ids",e,t,n),!1;var{columnType:r}=e,{columnType:a}=t,l=a===null||z.isCompatibleType(r,a);return l?!0:(Mi.debug2("Incompatible type",r,a),!1)}static findColumn(e,t){var{columnName:n,columnType:r}=t;return e.find(a=>{var{name:l,type:s}=a;return l===n&&s===r})}static cloneLinksForPanel(e,t,n){var r=[];return e.forEach(a=>{var l;a.start.panelId===t&&a.type!=="filterSource"?r.push(Le(Le({},a),{},{id:ue(),start:Le(Le({},a.start),{},{panelId:n})})):((l=a.end)===null||l===void 0?void 0:l.panelId)===t&&r.push(Le(Le({},a),{},{id:ue(),end:Le(Le({},a.end),{},{panelId:n})}))}),r}}function Gr(i,e,t){return(e=Xo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Xo(i){var e=Zo(i,"string");return typeof e=="symbol"?e:e+""}function Zo(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Yo=B.module("LinkerLink"),ki=.015,Li=1.5,Hr=12,Br=12,Oi=2,It=Math.sqrt((Br*.5)**2+Hr**2),Ni=Math.asin(Br*.5/Hr),ji=15,Oe=Math.PI*.5;class Qe extends f.Component{static makeCirclePath(e,t,n){return"M ".concat(e," ").concat(t," m -").concat(n,",0 a ").concat(n,",").concat(n," 0 1,0 ").concat(n*2,",0 a ").concat(n,",").concat(n," 0 1,0 -").concat(n*2,",0 z")}static getLabelForLinkFilter(e,t){try{if(z.isNumberType(e)||z.isCharType(e))return Pl(t);if(z.isTextType(e))return wl(t);if(z.isDateType(e))return El(t);if(z.isBooleanType(e)){if(t===qe.eq)return"is equal to";if(t===qe.notEq)return"is not equal to"}throw new Error("Unrecognized column type: ".concat(e))}catch(n){return Yo.warn(n),""}}constructor(e){super(e),Gr(this,"getOperators",O((t,n)=>{var{onOperatorChanged:r}=this.props,a=z.getFilterTypes(n);return z.isBooleanType(n)&&(a=[qe.eq,qe.notEq]),a.flatMap((l,s)=>{if(l==="eqIgnoreCase"||l==="notEqIgnoreCase")return[];var o="";return l==="startsWith"?o="a*":l==="endsWith"?o="*z":o=z.getFilterOperatorString(l),[{title:Qe.getLabelForLinkFilter(n,l),icon:u.jsx("b",{children:o}),action:()=>r(t,l),order:s}]})})),this.handleClick=this.handleClick.bind(this),this.handleMouseEnter=this.handleMouseEnter.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleDelete=this.handleDelete.bind(this),this.getDropdownActions=this.getDropdownActions.bind(this),this.state={isHovering:void 0}}handleClick(e){e.stopPropagation(),e.preventDefault();var{id:t,onClick:n,onDelete:r}=this.props;e.altKey?r(t):n(t)}handleMouseEnter(){this.setState({isHovering:!0})}handleMouseLeave(){this.setState({isHovering:!1})}handleDelete(){var{id:e,onDelete:t}=this.props;t(e)}getDropdownActions(){var{id:e,startColumnType:t}=this.props;return t!=null?this.getOperators(e,t):[]}render(){var{className:e,operator:t,isSelected:n,x1:r,y1:a,x2:l,y2:s,id:o,startColumnType:d,type:h}=this.props,{isHovering:c}=this.state,p=Math.sqrt((r-l)**2+(a-s)**2),v=Math.atan2(s-a,l-r),g=Math.sin(v),S=Math.cos(v)+2,m=window.innerWidth,b=window.innerHeight,y=0,C=0,P=Math.max(y,Math.min(r+(l-r)/2+g*(p*ki)**Li,m)),w=Math.max(C,Math.min(a+(s-a)/2+S*(p*ki)**Li,b)),F="M ".concat(r," ").concat(a," Q ").concat(P," ").concat(w," ").concat(l," ").concat(s),L="M ".concat(y," ").concat(C," L ").concat(y," ").concat(b," L ").concat(m," ").concat(b," L ").concat(m," ").concat(C,` z
6
+ This note can be edited using **markdown** for styling.`);Mn(Se,"getClosedMarkdowns",O(i=>i.filter(e=>e.component==="MarkdownPanel"&&e.props.panelState.content!==""&&e.props.panelState.content!==null).reverse()));function gt(i,e,t){return(e=oo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function oo(i){var e=uo(i,"string");return typeof e=="symbol"?e:e+""}function uo(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var ho=f.lazy(()=>Tl(()=>import("./MarkdownEditor-CjiUT8XD.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10]),import.meta.url)),jt=B.module("MarkdownPanel");class kn extends f.Component{constructor(e){super(e),gt(this,"markdownEditor",void 0),gt(this,"editor",void 0),gt(this,"getClosedMarkdowns",O(Se.getClosedMarkdowns)),this.handleContainerDoubleClick=this.handleContainerDoubleClick.bind(this),this.handleCreateMarkdown=this.handleCreateMarkdown.bind(this),this.handleDeleteMarkdown=this.handleDeleteMarkdown.bind(this),this.handleOpenMarkdown=this.handleOpenMarkdown.bind(this),this.handleEditorInitialized=this.handleEditorInitialized.bind(this),this.handleEditorBlur=this.handleEditorBlur.bind(this),this.handleEditorResize=this.handleEditorResize.bind(this);var{panelState:t}=e,n=null;t!=null&&t.content!=null&&(t.content!==""?{content:n}=t:n=Se.DEFAULT_CONTENT),this.state={isStartPageShown:n==null&&this.getClosedMarkdowns(e.closedPanels).length!==0,isEditing:!1,content:n,panelState:t},this.markdownEditor=null}setEditorPosition(e){k(this.markdownEditor);var{container:t}=this.markdownEditor;if(this.editor&&t!=null){var n,r,a=t.getBoundingClientRect().top,l=t.scrollTop,s=t.scrollHeight,o=(n=(r=this.editor.getModel())===null||r===void 0?void 0:r.getLineCount())!==null&&n!==void 0?n:0,d=Math.round((l+e-a)/s*o);d>o&&(d=o),this.editor.revealLine(d),this.editor.setPosition({lineNumber:d,column:1}),this.editor.focus()}}handleContainerDoubleClick(e){var{isEditing:t}=this.state,n=e.clientY;t||this.setState({isEditing:!0},()=>{this.setEditorPosition(n)})}handleEditorInitialized(e){jt.debug("Markdown Editor Initialized..."),this.editor=e}handleCreateMarkdown(){jt.debug("create markdown..."),this.setState({isStartPageShown:!1,content:"",isEditing:!0,panelState:{content:""}},()=>{this.editor!=null&&this.editor.focus!=null&&this.editor.focus()})}handleOpenMarkdown(e){jt.debug("open markdown...",e);var{glContainer:t,glEventHub:n}=this.props,r=T.getComponentConfigFromContainer(t);n.emit(te.REOPEN,e,r)}handleDeleteMarkdown(e){var{glEventHub:t}=this.props;t.emit(te.DELETE,e)}handleEditorBlur(e){var t;jt.debug("markdown content changed, saving...");var{isEditing:n}=this.state;if(!(!n||this.markdownEditor!=null&&this.markdownEditor.container!=null&&this.markdownEditor.container.contains(e.relatedTarget))){var r=(t=this.editor)===null||t===void 0?void 0:t.getValue();this.setState({content:r,isEditing:!1,panelState:{content:r}})}}handleEditorResize(){var{isEditing:e}=this.state;e&&this.editor&&this.editor.layout()}render(){var{glContainer:e,glEventHub:t,closedPanels:n}=this.props,{isEditing:r,isStartPageShown:a,content:l}=this.state,s=this.getClosedMarkdowns(n);return u.jsx(rt,{glContainer:e,glEventHub:t,className:"markdown-panel",componentPanel:this,onResize:this.handleEditorResize,onBlur:this.handleEditorBlur,isClonable:!0,isRenamable:!0,children:a?u.jsx(Mr,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):u.jsx(Dr,{isEditing:r,onDoubleClick:this.handleContainerDoubleClick,children:u.jsx(f.Suspense,{fallback:u.jsx(St,{"data-testid":"markdown-panel-loading"}),children:u.jsx(ho,{ref:o=>{this.markdownEditor=o},isEditing:r,content:l??Se.DEFAULT_CONTENT,onEditorInitialized:this.handleEditorInitialized})})})})}}gt(kn,"defaultProps",{panelState:null});gt(kn,"COMPONENT","MarkdownPanel");var co=(i,e)=>{var{localDashboardId:t}=e;return{closedPanels:Ta(i,t)}},mt=Ge(co,null,null,{forwardRef:!0})(kn);function kr(i){var{onClick:e}=i,t=f.useRef(null),n=f.useCallback(r=>{var a;(a=t.current)===null||a===void 0||a.blur(),e(r)},[e]);return u.jsxs(N,{ref:t,kind:"primary",className:"btn-pandas",onClick:n,tooltip:"Click to refresh pandas dataframe, updates do not occur automatically.",children:["pandas dataframe",u.jsxs("span",{children:[u.jsx(oe,{icon:ur,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}function di(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function ui(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?di(Object(t),!0).forEach(function(n){Pt(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):di(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function hi(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function po(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){hi(a,n,r,l,s,"next",o)}function s(o){hi(a,n,r,l,s,"throw",o)}l(void 0)})}}function Pt(i,e,t){return(e=vo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function vo(i){var e=mo(i,"string");return typeof e=="symbol"?e:e+""}function mo(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Zt extends f.Component{constructor(e){super(e),Pt(this,"irisGridRef",void 0),Pt(this,"model",null),this.irisGridRef=ne.createRef(),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReload=this.handleReload.bind(this),this.handleGridStateChange=this.handleGridStateChange.bind(this),this.handlePanelStateUpdate=this.handlePanelStateUpdate.bind(this);var{panelState:t}=e;this.state={shouldFocusGrid:!1,panelState:t,makeModel:this.wrapMakeModel(e.makeModel)}}componentDidUpdate(e){var{makeModel:t}=e,{makeModel:n}=this.props;t!==n&&this.setState({makeModel:this.wrapMakeModel(n)})}componentWillUnmount(){this.model!=null&&this.stopListening(this.model)}wrapMakeModel(e){var t=this;return po(function*(){var n=yield e();return t.model!=null&&t.stopListening(t.model),t.model=n,t.startListening(n),n})}startListening(e){e.addEventListener(x.EVENT.DISCONNECT,this.handleDisconnect)}stopListening(e){e.removeEventListener(x.EVENT.DISCONNECT,this.handleDisconnect)}handleDisconnect(){var e;(e=this.irisGridRef.current)===null||e===void 0||e.setState({model:void 0})}handleReload(){var e;(e=this.irisGridRef.current)===null||e===void 0||e.initModel(),this.setState({shouldFocusGrid:!0})}handleGridStateChange(){var e,{shouldFocusGrid:t}=this.state;t&&(e=this.irisGridRef.current)!==null&&e!==void 0&&(e=e.irisGrid)!==null&&e!==void 0&&(e=e.current)!==null&&e!==void 0&&e.grid&&(this.irisGridRef.current.irisGrid.current.grid.focus(),this.setState({shouldFocusGrid:!1}))}handlePanelStateUpdate(e){this.setState({panelState:e})}render(){var{makeModel:e}=this.state;return u.jsx(Fn,ui(ui({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},this.props),{},{makeModel:e,children:u.jsx(kr,{onClick:this.handleReload})}))}}Pt(Zt,"defaultProps",{panelState:null});Pt(Zt,"COMPONENT","PandasPanel");function ci(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function pi(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){ci(a,n,r,l,s,"next",o)}function s(o){ci(a,n,r,l,s,"throw",o)}l(void 0)})}}function vi(i,e,t){return(e=fo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function fo(i){var e=go(i,"string");return typeof e=="symbol"?e:e+""}function go(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class bo{constructor(e){vi(this,"items",void 0),vi(this,"onUpdateCallback",void 0),this.items=e}setSearch(e){}setExpanded(e,t){if(e.charAt(e.length-1)==="/")for(var n=0;n<this.items.length;n+=1){var r=this.items[n];Rn(r)&&("".concat(r.filename,"/")===e||r.filename===e)&&(r.isExpanded=t)}return Promise.resolve()}collapseAll(){for(var e=0;e<this.items.length;e+=1){var t=this.items[e];Rn(t)&&(t.isExpanded=!1)}return Promise.resolve()}getViewportData(){return Promise.resolve({items:this.items,offset:0})}getSnapshot(e){return pi(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return pi(function*(){var n,r=yield t.getViewportData();(n=t.onUpdateCallback)===null||n===void 0||n.call(t,r)})()}setFilters(e){}setSorts(e){}setReversed(e){}close(){}onUpdate(e){return this.onUpdateCallback=e,jest.fn()}get size(){return this.items.length}}function mi(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function ht(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){mi(a,n,r,l,s,"next",o)}function s(o){mi(a,n,r,l,s,"throw",o)}l(void 0)})}}function So(i,e,t){return(e=Co(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Co(i){var e=yo(i,"string");return typeof e=="symbol"?e:e+""}function yo(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Po{constructor(e){So(this,"items",void 0),this.items=e}getTable(){var e=this;return ht(function*(){return new bo(e.items)})()}saveFile(e){throw new Error("Method not implemented.")}loadFile(e){throw new Error("Method not implemented.")}copyFile(e,t){return ht(function*(){throw new Error("Method not implemented.")})()}deleteFile(e){var t=this;return ht(function*(){t.items=t.items.filter(n=>n.filename!==e)})()}moveFile(e,t){var n=this;return ht(function*(){for(var r=0;r<n.items.length;r+=1)if(n.items[r].filename===e){n.items[r].filename=t,n.items[r].basename=Fa.getBaseName(t),n.items[r].id=t;break}})()}info(e){var t=this;return ht(function*(){var n=t.items.filter(a=>a.filename===e);if(n.length===0)throw new Da;if(n.length>1)throw new Error("More than one matching file found");var r=n[0];return{filename:r.filename,basename:r.basename,id:r.filename,type:r.type}})()}createDirectory(e){throw new Error("Method not implemented.")}}var wo=rt,Eo=rt;function fi(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function $t(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?fi(Object(t),!0).forEach(function(n){To(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):fi(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function To(i,e,t){return(e=Fo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Fo(i){var e=Do(i,"string");return typeof e=="symbol"?e:e+""}function Do(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function gi(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function Lr(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){gi(a,n,r,l,s,"next",o)}function s(o){gi(a,n,r,l,s,"throw",o)}l(void 0)})}}function Mo(i,e,t,n){return sn.apply(this,arguments)}function sn(){return sn=Lr(function*(i,e,t,n){var r={},a="",l={};if(Xe(e)&&(r=e.settings,a=e.table,l=e.tableSettings),n!=null&&(n.tableSettings!=null&&(l=n.tableSettings),n.table!=null&&(a=n.table),n.settings!=null&&(r=$t($t({},r),n.settings))),a!=null&&a!==""){var s=yield t();return new H(i).applyTableSettings(s,l,Qi(ul.getState())),Je.makeModelFromSettings(i,r,s)}var o=yield t();return Je.makeModel(i,r,o)}),sn.apply(this,arguments)}var Ln=f.forwardRef((i,e)=>{var t=yr(i)?i.panelState:void 0,{fetch:n,metadata:r,localDashboardId:a}=i;k(r);var[l,s]=Dl(r),o=f.useCallback(Lr(function*(){if(s!=null)throw s;return l==null?new Promise(()=>{}):Mo(l,r,n,t)}),[l,s,r,n,t]);return u.jsx(Tn,$t($t({ref:e},i),{},{metadata:r,localDashboardId:a,makeModel:o}))});Ln.displayName="ChartPanelPlugin";function bi(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function ko(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){bi(a,n,r,l,s,"next",o)}function s(o){bi(a,n,r,l,s,"throw",o)}l(void 0)})}}function Or(i){var e=Bt(),[t,n]=f.useState(),{fetch:r}=i;return f.useEffect(()=>{var a=!1;function l(){return s.apply(this,arguments)}function s(){return s=ko(function*(){var o=yield r(),d=yield Je.makeModel(e,void 0,o);a||n(d)}),s.apply(this,arguments)}return l(),()=>{a=!0}},[e,r]),t?u.jsx(cr,{model:t}):null}var Lo={name:"ChartPanel",title:"Chart",type:je.WIDGET_PLUGIN,component:Or,panelComponent:Ln,supportedTypes:"Figure",icon:hl};function Si(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function Oo(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){Si(a,n,r,l,s,"next",o)}function s(o){Si(a,n,r,l,s,"throw",o)}l(void 0)})}}function Nr(i){Tt(i);var{id:e,layout:t}=i,n=f.useCallback(r=>{var{metadata:a,panelId:l=ue(),table:s}=r,{settings:o}=a,d=function(){var v=Oo(function*(){return s});return function(){return v.apply(this,arguments)}}(),h=J.titleFromSettings(o),c={type:"react-component",component:Tn.COMPONENT,props:{localDashboardId:e,id:l,metadata:a,fetch:d},title:h,id:l},{root:p}=t;T.openComponent({root:p,config:c})},[e,t]);return Ue(t.eventHub,Z.CREATE_CHART,n),null}var No={name:"ChartBuilderPlugin",type:je.DASHBOARD_PLUGIN,component:Nr},ct=B.module("FilterPlugin");function jr(i){Tt(i);var{id:e,layout:t,registerComponent:n}=i,r=ma(),[a]=f.useState(()=>new Map),[l]=f.useState(()=>new Map),[s]=f.useState(()=>new Map),o=f.useCallback(()=>{var m=Array.from(a.values()).flat().sort((C,P)=>{var w=ge.toLower(C.name),F=ge.toLower(P.name);if(w!==F)return w>F?1:-1;var L=ge.toLower(C.type),M=ge.toLower(P.type);return L!==M?L>M?1:-1:0}).reduce((C,P)=>((C.length===0||ge.toLower(C[C.length-1].name)!==ge.toLower(P.name)||ge.toLower(C[C.length-1].type)!==ge.toLower(P.type))&&C.push(P),C),[]),b=Array.from(l.values()).flat().sort((C,P)=>C.timestamp-P.timestamp),y=new Map(s);ct.debug("sendUpdate",{columns:m,filters:b,tableMap:y}),r(Ma(e,{columns:m,filters:b,tableMap:y}))},[r,e,a,l,s]),d=f.useCallback((m,b)=>{ct.debug2("handleColumnsChanged",m,b),b==null?a.delete(m):a.set(m,[].concat(b)),o()},[a,o]),h=f.useCallback((m,b)=>{ct.debug2("handleFiltersChanged",m,b),b==null?l.delete(m):l.set(m,[].concat(b??[])),o()},[l,o]),c=f.useCallback((m,b)=>{ct.debug2("handleTableChanged",m,b),b==null?s.delete(m):s.set(m,b),o()},[s,o]),p=f.useCallback(m=>{ct.debug2("handlePanelUnmount",m);var b=T.getIdFromPanel(m);b!=null&&(a.delete(b),s.delete(b),l.delete(b)),o()},[a,l,s,o]),v=f.useCallback(m=>{var{title:b="DropdownFilter",metadata:y={},panelState:C=null,id:P=ue(),focusElement:w=T.DEFAULT_FOCUS_SELECTOR,createNewStack:F=!1,dragEvent:L=void 0}=m,M={type:"react-component",component:Ze.COMPONENT,props:{id:P,metadata:y,panelState:C,localDashboardId:e},title:b,id:P},{root:D}=t;T.openComponent({root:D,config:M,focusElement:w,createNewStack:F,dragEvent:L})},[t,e]),g=f.useCallback(m=>{var{title:b="InputFilter",metadata:y={},panelState:C=null,id:P=ue(),focusElement:w=T.DEFAULT_FOCUS_SELECTOR,createNewStack:F=!1,dragEvent:L=void 0}=m,M={type:"react-component",component:Ye.COMPONENT,props:{id:P,metadata:y,panelState:C,localDashboardId:e},title:b,id:P},{root:D}=t;T.openComponent({root:D,config:M,focusElement:w,createNewStack:F,dragEvent:L})},[t,e]),S=f.useCallback(m=>{var{title:b="FilterSets",metadata:y={},panelState:C=null,id:P=ue(),focusElement:w=T.DEFAULT_FOCUS_SELECTOR,createNewStack:F=!1,dragEvent:L=void 0}=m,M={type:"react-component",component:xt.COMPONENT,props:{id:P,metadata:y,panelState:C,localDashboardId:e},title:b,id:P},{root:D}=t;T.openComponent({root:D,config:M,focusElement:w,createNewStack:F,dragEvent:L})},[t,e]);return f.useEffect(function(){var b=[n(Ze.COMPONENT,Ze),n(Ye.COMPONENT,Ye),n(xt.COMPONENT,xt)];return()=>{b.forEach(y=>y())}},[n]),ds(t.eventHub,d),hs(t.eventHub,h),us(t.eventHub,c),Ue(t.eventHub,De.OPEN_DROPDOWN,v),Ue(t.eventHub,De.OPEN_INPUT,g),Ue(t.eventHub,De.OPEN_FILTER_SET_MANAGER,S),Ue(t.eventHub,te.UNMOUNT,p),null}var jo={name:"FilterPlugin",type:je.DASHBOARD_PLUGIN,component:jr},Io=B.module("@deephaven/app-utils/useTablePlugin");function On(){var i=Ji(),e=f.useCallback(t=>{var n=i.get(t);if(n!=null){if(ka(n))return n.component;if(La(n))return n.TablePlugin}var r="Unable to find table plugin ".concat(t,".");throw Io.error(r),new Error(r)},[i]);return e}function Ci(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function xo(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){Ci(a,n,r,l,s,"next",o)}function s(o){Ci(a,n,r,l,s,"throw",o)}l(void 0)})}}function Ir(i,e,t){var n=Bt(),r=On(),a=f.useMemo(()=>({loadPlugin:r,localDashboardId:e,makeModel:function(){var l=xo(function*(){var o=yield i();return vr.makeModel(n,o)});function s(){return l.apply(this,arguments)}return s}(),metadata:t}),[n,i,e,r,t]);return a}function yi(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Pi(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?yi(Object(t),!0).forEach(function(n){_o(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):yi(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function _o(i,e,t){return(e=Ro(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ro(i){var e=Ao(i,"string");return typeof e=="symbol"?e:e+""}function Ao(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Nn=f.forwardRef((i,e)=>{var{localDashboardId:t,fetch:n,metadata:r}=i,a=Ir(n,t,r);return u.jsx(Fn,Pi(Pi({ref:e},i),a))});Nn.displayName="GridPanelPlugin";function wi(i,e,t,n,r,a,l){try{var s=i[a](l),o=s.value}catch(d){return void t(d)}s.done?e(o):Promise.resolve(o).then(n,r)}function en(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function l(o){wi(a,n,r,l,s,"next",o)}function s(o){wi(a,n,r,l,s,"throw",o)}l(void 0)})}}function xr(i){var e=Bt(),[t,n]=f.useState(),[r,a]=f.useState(),[l,s]=f.useState(!0),o=f.useCallback(en(function*(){var c=yield i();return vr.makeModel(e,c)}),[e,i]),d=f.useCallback(en(function*(){s(!0),a(void 0);try{var c=yield o();n(c),s(!1)}catch(p){a(p),s(!1)}}),[o]);f.useEffect(()=>{var c=!1;function p(){return v.apply(this,arguments)}function v(){return v=en(function*(){s(!0),a(void 0);try{var g=yield o();c||(n(g),s(!1))}catch(S){c||(a(S),s(!1))}}),v.apply(this,arguments)}return p(),()=>{c=!0}},[o]),f.useEffect(function(){if(!t)return;function p(){a(new Error("Table disconnected")),n(void 0),s(!1)}return t.addEventListener(x.EVENT.DISCONNECT,p),()=>{t.removeEventListener(x.EVENT.DISCONNECT,p)}},[t]);var h=f.useMemo(()=>{if(l)return{reload:d,status:"loading"};if(r!=null)return{error:r,reload:d,status:"error"};if(t!=null)return{model:t,reload:d,status:"success"};throw new Error("Invalid state")},[r,l,t,d]);return h}function _r(i,e){var{eventHub:t}=Wt(),n=er(),r=tr();f.useEffect(function(){r==null||i==null||At(t,r,i)},[t,r,i]),f.useEffect(function(){e==null||r==null||Ut(t,r,e)},[t,r,e]),f.useEffect(function(){if(r!=null)return()=>{At(t,r,null),Ut(t,r,null)}},[t,r]);var a=f.useCallback(o=>wt(o,n),[n]),l=rn(a),s=f.useMemo(()=>H.getInputFiltersForColumns(i??[],l.filter(o=>{var{value:d,excludePanelIds:h}=o;return d!=null&&(h==null||r!=null&&!h.includes(r))})),[i,r,l]);return s}function Rr(i,e){var{eventHub:t}=Wt(),n=er(),r=tr(),a=nr(),l=f.useCallback(m=>lt(m,n),[n]),s=rn(l),o=f.useMemo(()=>{var m=new Set;return s.forEach(b=>{b.start.panelId===r&&m.add(b.start.columnName)}),[...m]},[s,r]),d=f.useCallback(m=>Et(m,n),[n]),h=rn(d),c=f.useCallback(m=>h&&m&&r!=null?h(r,m,{type:"tableLink"}):!1,[h,r]),p=h!=null,v=f.useCallback((m,b)=>{r!=null&&wr(t,r,b)},[t,r]),g=f.useCallback(m=>{var b,y,C;if(!i||!e)return null;var{gridWrapper:P}=e,w=(b=P==null?void 0:P.getBoundingClientRect())!==null&&b!==void 0?b:null;if(w==null||w.width<=0||w.height<=0)return null;var{metrics:F}=e.state;k(F);var{columnHeaderHeight:L,allColumnXs:M,allColumnWidths:D,right:E,columnHeaderMaxDepth:j}=F,R=i.getColumnIndexByName(m);k(R);var A=e.getVisibleColumn(R),q=(y=M.get(A))!==null&&y!==void 0?y:0,Ce=(C=D.get(A))!==null&&C!==void 0?C:0,Ie=ze(A>E?w.right:w.left+q+Ce*.5,w.left,w.right),xe=w.top+L*j;return[Ie,xe]},[i,e]),S=f.useCallback(m=>{r!=null&&Kt(t,r,m,{type:"tableLink"})},[t,r]);return f.useEffect(function(){if(!(!e||a==null||r==null))return Jn(t,r,{getCoordinates:g,setFilterValues:e.setFilterMap,unsetFilterValue:()=>{},panelId:a}),()=>{Jn(t,r,null)}},[t,r,g,e,a]),{alwaysFetchColumns:o,columnSelectionValidator:c,isSelectingColumn:p,onColumnSelected:S,onDataSelected:v}}var Ar=f.forwardRef((i,e)=>{var{name:t,model:n,filter:r,fetchColumns:a,selectedRanges:l,irisGridRef:s,pluginState:o,onStateChange:d}=i,h=On(),c=f.useMemo(()=>h(t),[h,t]),p=Wt(),v=nr(),g=f.useMemo(()=>{var m;if(v==null)return"unknown";var b=T.getContentItemById(p.root,v);return(m=b==null?void 0:b.config.title)!==null&&m!==void 0?m:"unknown"},[p.root,v]),S=f.useMemo(()=>({irisGrid:s,getTableName:()=>g}),[s,g]);return u.jsx("div",{className:"iris-grid-plugin",children:u.jsx(c,{ref:e,filter:r,fetchColumns:a,model:n,table:n.table,tableName:g,selectedRanges:l,onStateChange:d,pluginState:o,panel:S})})});Ar.displayName="TablePluginWrapper";function Ur(i){var{model:e,irisGridRef:t,irisGridUtils:n,selectedRanges:r}=i,[a,l]=f.useState([]),s=f.useMemo(()=>e!=null&&n!=null&&Me(e)?n.getFiltersFromInputFilters(e.table.columns,a,e.formatter.timeZone):[],[e,n,a]),[o,d]=f.useState([]),h=f.useRef(null),[c,p]=Er(void 0,{version:1,type:"GridWidgetTablePluginState"}),v=f.useMemo(()=>e!=null&&Me(e)&&e.table.pluginName!=null?u.jsx(Ar,{ref:h,name:e.table.pluginName,model:e,filter:l,fetchColumns:d,selectedRanges:r,irisGridRef:t,pluginState:c,onStateChange:p}):null,[e,r,t,c,p]),g=f.useCallback(S=>{var m,b,y;return(m=(b=h.current)===null||b===void 0||(y=b.getMenu)===null||y===void 0?void 0:y.call(b,S))!==null&&m!==void 0?m:[]},[]);return{Plugin:v,customFilters:s,alwaysFetchColumns:o,onContextMenu:g}}var Uo=["alwaysFetchColumns"];function $o(i,e){if(i==null)return{};var t,n,r=Vo(i,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(i);for(n=0;n<a.length;n++)t=a[n],e.indexOf(t)===-1&&{}.propertyIsEnumerable.call(i,t)&&(r[t]=i[t])}return r}function Vo(i,e){if(i==null)return{};var t={};for(var n in i)if({}.hasOwnProperty.call(i,n)){if(e.indexOf(n)!==-1)continue;t[n]=i[n]}return t}function Ei(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function pt(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ei(Object(t),!0).forEach(function(n){Go(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Ei(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Go(i,e,t){return(e=Ho(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ho(i){var e=Bo(i,"string");return typeof e=="symbol"?e:e+""}function Bo(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function $r(i){var e,{fetch:t}=i,n=fa(Ht),{eventHub:r}=Wt(),a=xr(t),l=a.status==="success"?a.model:void 0,s=Bt(),o=f.useMemo(()=>new H(s),[s]),[d,h]=Er(void 0,{version:1,type:"GridWidgetPlugin"}),c=f.useRef(d),p=f.useMemo(()=>{if(!(a.status!=="success"||c.current===void 0))return pt(pt({},o.hydrateIrisGridState(a.model,c.current)),H.hydrateGridState(a.model,c.current))},[a,o]),v=f.useMemo(()=>an.makeMemoizedCombinedGridStateDehydrator(),[]),g=f.useCallback((R,A)=>{if(!(a.status!=="success"||R==null||A==null)){var q=v(a.model,R,A);h(q)}},[a,h,v]),S=_r((e=l==null?void 0:l.columns)!==null&&e!==void 0?e:null,l!=null&&Me(l)?l.table:void 0),m=f.useRef(null),b=Rr(a.status==="success"?a.model:null,m.current),{alwaysFetchColumns:y}=b,C=$o(b,Uo),P=f.useCallback(()=>{m.current!=null&&m.current.clearAllFilters()},[]);Ue(r,De.CLEAR_ALL_FILTERS,P);var[w,F]=f.useState([]),{Plugin:L,customFilters:M,alwaysFetchColumns:D,onContextMenu:E}=Ur({model:l,irisGridRef:m,irisGridUtils:o,selectedRanges:w}),j=f.useMemo(()=>{var R=new Set([...y,...D]);return[...R]},[y,D]);return a.status==="loading"?u.jsx(St,{isLoading:!0,"data-testid":"grid-widget-plugin-loading"}):a.status==="error"?u.jsx(St,{"data-testid":"grid-widget-plugin-loading-error",errorMessage:ir(a.error),isLoading:!1}):(k(l,"Model should be defined when fetch is successful"),u.jsx(pn,pt(pt(pt({ref:m,model:l,settings:n,onStateChange:g,onSelectionChanged:F,onContextMenu:E,inputFilters:S,customFilters:M},C),{},{alwaysFetchColumns:j},p),{},{children:L})))}var Wo={name:"IrisGridPanel",title:"Table",type:je.WIDGET_PLUGIN,component:$r,panelComponent:Nn,supportedTypes:["Table","TreeTable","HierarchicalTable","PartitionedTable"],icon:cl};function Ti(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Le(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ti(Object(t),!0).forEach(function(n){Ko(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Ti(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Ko(i,e,t){return(e=zo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function zo(i){var e=qo(i,"string");return typeof e=="symbol"?e:e+""}function qo(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function Vr(i){var e=i;return typeof e.getCoordinateForColumn=="function"}function Fi(i){var e=i;return Vr(i)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function Di(i){return i.description==null||!i.description.startsWith("Preview of type: ")}var Mi=B.module("LinkerUtils");class Ae{static isLinkValid(e,t,n){if(e.panelId==null||t.panelId==null||e.panelId===t.panelId||n!=null&&n!==e.panelId&&n!==t.panelId)return Mi.debug2("Incompatible panel ids",e,t,n),!1;var{columnType:r}=e,{columnType:a}=t,l=a===null||z.isCompatibleType(r,a);return l?!0:(Mi.debug2("Incompatible type",r,a),!1)}static findColumn(e,t){var{columnName:n,columnType:r}=t;return e.find(a=>{var{name:l,type:s}=a;return l===n&&s===r})}static cloneLinksForPanel(e,t,n){var r=[];return e.forEach(a=>{var l;a.start.panelId===t&&a.type!=="filterSource"?r.push(Le(Le({},a),{},{id:ue(),start:Le(Le({},a.start),{},{panelId:n})})):((l=a.end)===null||l===void 0?void 0:l.panelId)===t&&r.push(Le(Le({},a),{},{id:ue(),end:Le(Le({},a.end),{},{panelId:n})}))}),r}}function Gr(i,e,t){return(e=Xo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Xo(i){var e=Zo(i,"string");return typeof e=="symbol"?e:e+""}function Zo(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Yo=B.module("LinkerLink"),ki=.015,Li=1.5,Hr=12,Br=12,Oi=2,It=Math.sqrt((Br*.5)**2+Hr**2),Ni=Math.asin(Br*.5/Hr),ji=15,Oe=Math.PI*.5;class Qe extends f.Component{static makeCirclePath(e,t,n){return"M ".concat(e," ").concat(t," m -").concat(n,",0 a ").concat(n,",").concat(n," 0 1,0 ").concat(n*2,",0 a ").concat(n,",").concat(n," 0 1,0 -").concat(n*2,",0 z")}static getLabelForLinkFilter(e,t){try{if(z.isNumberType(e)||z.isCharType(e))return Pl(t);if(z.isTextType(e))return wl(t);if(z.isDateType(e))return El(t);if(z.isBooleanType(e)){if(t===qe.eq)return"is equal to";if(t===qe.notEq)return"is not equal to"}throw new Error("Unrecognized column type: ".concat(e))}catch(n){return Yo.warn(n),""}}constructor(e){super(e),Gr(this,"getOperators",O((t,n)=>{var{onOperatorChanged:r}=this.props,a=z.getFilterTypes(n);return z.isBooleanType(n)&&(a=[qe.eq,qe.notEq]),a.flatMap((l,s)=>{if(l==="eqIgnoreCase"||l==="notEqIgnoreCase")return[];var o="";return l==="startsWith"?o="a*":l==="endsWith"?o="*z":o=z.getFilterOperatorString(l),[{title:Qe.getLabelForLinkFilter(n,l),icon:u.jsx("b",{children:o}),action:()=>r(t,l),order:s}]})})),this.handleClick=this.handleClick.bind(this),this.handleMouseEnter=this.handleMouseEnter.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleDelete=this.handleDelete.bind(this),this.getDropdownActions=this.getDropdownActions.bind(this),this.state={isHovering:void 0}}handleClick(e){e.stopPropagation(),e.preventDefault();var{id:t,onClick:n,onDelete:r}=this.props;e.altKey?r(t):n(t)}handleMouseEnter(){this.setState({isHovering:!0})}handleMouseLeave(){this.setState({isHovering:!1})}handleDelete(){var{id:e,onDelete:t}=this.props;t(e)}getDropdownActions(){var{id:e,startColumnType:t}=this.props;return t!=null?this.getOperators(e,t):[]}render(){var{className:e,operator:t,isSelected:n,x1:r,y1:a,x2:l,y2:s,id:o,startColumnType:d,type:h}=this.props,{isHovering:c}=this.state,p=Math.sqrt((r-l)**2+(a-s)**2),v=Math.atan2(s-a,l-r),g=Math.sin(v),S=Math.cos(v)+2,m=window.innerWidth,b=window.innerHeight,y=0,C=0,P=Math.max(y,Math.min(r+(l-r)/2+g*(p*ki)**Li,m)),w=Math.max(C,Math.min(a+(s-a)/2+S*(p*ki)**Li,b)),F="M ".concat(r," ").concat(a," Q ").concat(P," ").concat(w," ").concat(l," ").concat(s),L="M ".concat(y," ").concat(C," L ").concat(y," ").concat(b," L ").concat(m," ").concat(b," L ").concat(m," ").concat(C,` z
7
7
  `).concat(Qe.makeCirclePath(r,a,ji),`
8
8
  `).concat(Qe.makeCirclePath(l,s,ji)),M="link-select-clip-".concat(o),D=Math.atan2(s-w,l-P),E=D-Ni+Math.PI,j=D+Ni+Math.PI,R=l+Math.cos(D)*Oi,A=s+Math.sin(D)*Oi,q=R+Math.cos(E)*It,Ce=A+Math.sin(E)*It,Ie=R+Math.cos(j)*It,xe=A+Math.sin(j)*It,ie="".concat(R,",").concat(A," ").concat(q,",").concat(Ce," ").concat(Ie,",").concat(xe),He=.25*r+.5*P+.25*l,Be=.25*a+.5*w+.25*s,ot=P-r+(l-P),dt=w-a+(s-w),ee=dt/ot,ut=20,he=ut/Math.sqrt(1+ee**2),me=he*ee,ye=he*-1,Pe=me*-1;Number.isFinite(ee)?ee>0?(he*=-1,me*=-1,ye*=-1,Pe*=-1,ye-=50-10*(Math.abs(v)%Oe),Pe+=10*(Math.abs(v)%Oe),he-=50-10*(Math.abs(v)%Oe),me+=10*(Math.abs(v)%Oe)):ee<0?(ye+=10*(Math.abs(v)%Oe),Pe+=10*(Math.abs(v)%Oe),he+=10*(Math.abs(v)%Oe),me+=10*(Math.abs(v)%Oe)):(ye=15,Pe=10,he=-25,me=10):(ye=10,Pe=5,he=10,me=-35);var We="";t!==void 0&&(t==="startsWith"?We="a*":t==="endsWith"?We="*z":We=z.getFilterOperatorString(t));var Yt=h!=="chartLink"&&h!=="filterSource";return u.jsxs(u.Fragment,{children:[u.jsxs("svg",{className:de(e,{hovering:c}),children:[u.jsx("clipPath",{id:M,children:u.jsx("path",{d:L,clipRule:"evenodd"})}),u.jsx("path",{className:"link-select",d:F,onClick:this.handleClick,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,clipPath:"url(#".concat(M,")"),"data-testid":"link-select"}),u.jsx("path",{className:"link-background",d:F}),u.jsx("path",{className:"link-foreground",d:F}),u.jsx("circle",{className:"link-dot",cx:r,cy:a,r:"5"}),u.jsx("polygon",{className:"link-triangle",points:ie})]}),d!=null&&n&&u.jsxs(u.Fragment,{children:[Yt&&u.jsx(N,{kind:"primary",className:"btn-fab btn-operator",style:{top:Be+(ee>=0?me:Pe),left:He+(ee>=0?he:ye)},onClick:()=>{},icon:u.jsxs("div",{className:"fa-md fa-layers",children:[u.jsx("b",{children:We}),u.jsx(oe,{icon:pl,transform:"right-8 down-9 shrink-5"})]}),tooltip:"Change comparison operator",children:u.jsx(Oa,{actions:this.getDropdownActions,popperOptions:{placement:"bottom-start"}})}),u.jsx(N,{kind:"primary",className:"btn-fab btn-delete",style:{top:Be+(ee<0?me:Pe),left:He+(ee<0?he:ye)},onClick:this.handleDelete,icon:cn,tooltip:"Delete"})]})]})}}Gr(Qe,"defaultProps",{className:"",isSelected:!1,onClick(){},onDelete(){}});function Ii(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function xi(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ii(Object(t),!0).forEach(function(n){jn(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Ii(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function jn(i,e,t){return(e=Qo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Qo(i){var e=Jo(i,"string");return typeof e=="symbol"?e:e+""}function Jo(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var tn=B.module("LinkerOverlayContent");class Wr extends f.Component{constructor(e){super(e),jn(this,"dialogRef",void 0),this.handleBlur=this.handleBlur.bind(this),this.handleResize=this.handleResize.bind(this),this.handleMouseMove=this.handleMouseMove.bind(this),this.handleMouseDown=this.handleMouseDown.bind(this),this.handleMouseUp=this.handleMouseUp.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleKeyUp=this.handleKeyUp.bind(this),this.handleEscapePressed=this.handleEscapePressed.bind(this),this.handleOperatorChanged=this.handleOperatorChanged.bind(this),this.dialogRef=ne.createRef(),this.state={mouse:void 0,dialog:void 0,offset:{x:0,y:0},isDragging:!1,mode:"select"}}componentDidMount(){window.addEventListener("blur",this.handleBlur,!0),window.addEventListener("mousemove",this.handleMouseMove,!0),window.addEventListener("mouseup",this.handleMouseUp,!0),window.addEventListener("keydown",this.handleKeyDown,!0),window.addEventListener("keyup",this.handleKeyUp,!0),window.addEventListener("resize",this.handleResize,!0)}componentDidCatch(e,t){tn.error("componentDidCatch",e,t)}componentWillUnmount(){window.removeEventListener("blur",this.handleBlur,!0),window.removeEventListener("mousemove",this.handleMouseMove,!0),window.removeEventListener("mouseup",this.handleMouseUp,!0),window.removeEventListener("keydown",this.handleKeyDown,!0),window.removeEventListener("keyup",this.handleKeyUp,!0),window.removeEventListener("resize",this.handleResize,!0)}getPointFromLinkPoint(e){var{panelManager:t,linkTargetPropMap:n}=this.props,{panelId:r,columnName:a}=e,l=r,s=n.get(r);if(s!=null){l=s.panelId;var o=s.getCoordinates(a);if(o!=null)return o}var d=t.getOpenedPanelById(l);if(s==null&&d!=null){if(!Vr(d))throw new Error("Panel does not have getCoordinateForColumn method: ".concat(l));try{var h=d.getCoordinateForColumn(a);if(h!=null)return h}catch{tn.error("Could not get coordinate for column",a,d)}}var c=t.getContainerByPanelId(l);if(c==null)throw new Error("Unable to find panel container for id: ".concat(l));return T.getTabPoint(c)}handleOperatorChanged(e,t){var{links:n,onLinksUpdated:r}=this.props,a=n.map(l=>l.id===e?xi(xi({},l),{},{operator:t}):l);r(a)}handleBlur(){this.setState({mode:"select"})}handleResize(){var{dialog:e}=this.state;if(e&&this.dialogRef.current){var t=this.dialogRef.current.getBoundingClientRect(),n=ze(e.x,0,window.innerWidth-t.width),r=ze(e.y,0,window.innerHeight-t.height);this.setState({dialog:{x:n,y:r}})}}handleMouseMove(e){var{offset:t,isDragging:n}=this.state;if(this.setState({mouse:{x:e.clientX,y:e.clientY}}),n&&this.dialogRef.current){var r=this.dialogRef.current.getBoundingClientRect(),a=ze(window.innerWidth-(e.clientX+r.width+t.x),0,window.innerWidth-r.width),l=ze(window.innerHeight-(e.clientY+r.height+t.y),0,window.innerHeight-r.height);this.setState({dialog:{x:a,y:l}})}}handleMouseDown(e){e.preventDefault();var t={x:0,y:0};if(this.dialogRef.current){var n=this.dialogRef.current.getBoundingClientRect();t.x=n.right-(n.width+e.clientX),t.y=n.bottom-(n.height+e.clientY)}this.setState({isDragging:!0,offset:t})}handleMouseUp(){this.setState({isDragging:!1})}handleKeyDown(e){if(e.key==="Alt")e.preventDefault(),this.setState({mode:"delete"});else if(e.key==="Delete"||e.key==="Backspace"){var{selectedIds:t,onLinkDeleted:n}=this.props;e.preventDefault(),t.forEach(r=>n(r))}}handleKeyUp(e){e.key==="Alt"&&(e.preventDefault(),this.setState({mode:"select"}))}handleEscapePressed(){var{onCancel:e}=this.props;e()}render(){var{disabled:e,links:t,selectedIds:n,messageText:r,onLinkSelected:a,onLinkDeleted:l,onAllLinksDeleted:s,onDone:o}=this.props,{mouse:d,dialog:h,isDragging:c,mode:p}=this.state,v=t.map(g=>{try{var S,m,{id:b,type:y,isReversed:C,start:P,end:w,operator:F}=g,L=P.columnType,[M,D]=this.getPointFromLinkPoint(P),E=(S=d==null?void 0:d.x)!==null&&S!==void 0?S:M,j=(m=d==null?void 0:d.y)!==null&&m!==void 0?m:D;if(w!=null&&([E,j]=this.getPointFromLinkPoint(w)),C!=null&&C){var[R,A]=[M,D];[M,D]=[E,j],[E,j]=[R,A]}var q=de("linker-link",{disabled:e},{"link-filter-source":y==="filterSource"},{"link-invalid":y==="invalid"},{interactive:g.end==null},{"link-is-selected":n.has(b)},{"danger-delete":p==="delete"});return{x1:M,y1:D,x2:E,y2:j,id:b,className:q,operator:F,startColumnType:L,type:y}}catch(Ce){return tn.warn("Unable to get point for link",g,Ce),null}}).filter(g=>g!=null);return u.jsxs("div",{className:de("linker-overlay",{"danger-delete":p==="delete"}),children:[v.map(g=>{var{x1:S,y1:m,x2:b,y2:y,id:C,className:P,operator:w,startColumnType:F,type:L}=g;return u.jsx(Qe,{className:P,id:C,x1:S,y1:m,x2:b,y2:y,onClick:a,onDelete:l,isSelected:n.has(C),operator:w??qe.eq,startColumnType:F,type:L,onOperatorChanged:this.handleOperatorChanged},C)}),u.jsxs("div",{className:de("linker-toast-dialog",{dragging:c}),ref:this.dialogRef,style:{bottom:h==null?void 0:h.y,right:h==null?void 0:h.x},"data-testid":"linker-toast-dialog",children:[u.jsx(N,{draggable:!0,kind:"inline",className:"btn-drag-handle",icon:vl,onClick:()=>{},onMouseDown:this.handleMouseDown,children:!c&&u.jsx(Na,{children:"Drag to reposition"})}),u.jsx("div",{className:"toast-body",children:r}),u.jsxs("div",{className:"toast-footer",children:[u.jsx(N,{kind:"secondary",onClick:s,children:"Clear All"}),u.jsx(N,{kind:"primary",onClick:o,children:"Done"})]})]}),u.jsx(Bi,{actions:[{action:this.handleEscapePressed,shortcut:ja.LINKER_CLOSE,isGlobal:!0}]})]})}}jn(Wr,"defaultProps",{disabled:"false"});function _i(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Ri(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?_i(Object(t),!0).forEach(function(n){_t(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):_i(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function _t(i,e,t){return(e=ed(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function ed(i){var e=td(i,"string");return typeof e=="symbol"?e:e+""}function td(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var K=B.module("Linker"),nd=(i,e)=>({activeTool:dn(i),dh:Xi(i),isolatedLinkerPanelId:Gt(i,e.localDashboardId),links:lt(i,e.localDashboardId),timeZone:Qi(i)}),id=Ge(nd,{setActiveTool:Wi,setDashboardLinks:sr,addDashboardLinks:lr,deleteDashboardLinks:ar,setDashboardIsolatedLinkerPanelId:on,setDashboardColumnSelectionValidator:rr});class rd extends f.Component{constructor(e){super(e),_t(this,"linkTargetPropMap",new Map),_t(this,"removerFns",[]),_t(this,"getCachedLinks",O((t,n,r)=>{var a=[...t];return n!=null&&n.start!=null&&a.push(n),r!==void 0?a.filter(l=>{var s,o;return(l==null||(s=l.start)===null||s===void 0?void 0:s.panelId)===r||(l==null||(o=l.end)===null||o===void 0?void 0:o.panelId)===r||(l==null?void 0:l.end)==null}):a})),this.handleCancel=this.handleCancel.bind(this),this.handleDone=this.handleDone.bind(this),this.handlePanelCloned=this.handlePanelCloned.bind(this),this.handleColumnsChanged=this.handleColumnsChanged.bind(this),this.handlePanelClosed=this.handlePanelClosed.bind(this),this.handleLayoutStateChanged=this.handleLayoutStateChanged.bind(this),this.handleAllLinksDeleted=this.handleAllLinksDeleted.bind(this),this.handleLinkDeleted=this.handleLinkDeleted.bind(this),this.handleLinksUpdated=this.handleLinksUpdated.bind(this),this.handleChartColumnSelect=this.handleChartColumnSelect.bind(this),this.handleGridColumnSelect=this.handleGridColumnSelect.bind(this),this.handleUpdateValues=this.handleUpdateValues.bind(this),this.handleStateChange=this.handleStateChange.bind(this),this.handleExited=this.handleExited.bind(this),this.handleLinkPointSelected=this.handleLinkPointSelected.bind(this),this.handleTargetRegistered=this.handleTargetRegistered.bind(this),this.handleLinkSelected=this.handleLinkSelected.bind(this),this.handlePanelDragging=this.handlePanelDragging.bind(this),this.handlePanelDropped=this.handlePanelDropped.bind(this),this.isColumnSelectionValid=this.isColumnSelectionValid.bind(this),this.state={linkInProgress:void 0,selectedIds:new Set,isDraggingPanel:!1}}componentDidMount(){var{layout:e}=this.props;this.startListening(e),this.updateSelectionValidators()}componentDidUpdate(e){var{activeTool:t,layout:n}=this.props;n!==e.layout&&(this.stopListening(e.layout),this.startListening(n)),t!==e.activeTool&&(this.updateSelectionValidators(),t===pe.DEFAULT&&this.reset())}componentDidCatch(e,t){K.error("componentDidCatch",e,t)}componentWillUnmount(){var{layout:e}=this.props;this.stopListening(e)}startListening(e){e.on("stateChanged",this.handleLayoutStateChanged);var{eventHub:t}=e;t.on(Z.COLUMN_SELECTED,this.handleGridColumnSelect),t.on(Z.DATA_SELECTED,this.handleUpdateValues),t.on(Z.STATE_CHANGED,this.handleStateChange),t.on(et.COLUMN_SELECTED,this.handleChartColumnSelect),t.on(te.CLONED,this.handlePanelCloned),this.removerFns=[os(t,this.handleColumnsChanged),cs(t,this.handleLinkPointSelected),ps(t,this.handleUpdateValues),vs(t,this.handleTargetRegistered)],t.on(te.CLOSE,this.handlePanelClosed),t.on(te.CLOSED,this.handlePanelClosed),t.on(te.DRAGGING,this.handlePanelDragging),t.on(te.DROPPED,this.handlePanelDropped)}stopListening(e){e.off("stateChanged",this.handleLayoutStateChanged);var{eventHub:t}=e;t.off(Z.COLUMN_SELECTED,this.handleGridColumnSelect),t.off(Z.DATA_SELECTED,this.handleUpdateValues),t.off(Z.STATE_CHANGED,this.handleStateChange),t.off(et.COLUMN_SELECTED,this.handleChartColumnSelect),t.off(te.CLONED,this.handlePanelCloned),t.off(te.CLOSE,this.handlePanelClosed),t.off(te.CLOSED,this.handlePanelClosed),t.off(te.DRAGGING,this.handlePanelDragging),t.off(te.DROPPED,this.handlePanelDropped),this.removerFns.forEach(n=>n()),this.removerFns=[]}reset(){this.setState({linkInProgress:void 0,selectedIds:new Set})}handleCancel(){var{linkInProgress:e}=this.state;if(e==null){var{setActiveTool:t}=this.props;t(pe.DEFAULT)}this.setState({linkInProgress:void 0})}handleDone(){var{setActiveTool:e}=this.props;e(pe.DEFAULT)}handleChartColumnSelect(e,t){var n=T.getIdFromPanel(e);k(n),this.columnSelected(n,t,"chartLink",!0)}handleColumnsChanged(e,t){K.debug("handleColumnsChanged",e,t);var{links:n}=this.props;if(e==null){K.error("Invalid filter columns source id",e);return}if(t==null){this.deleteLinksForPanelId(e);return}var r=n.filter(a=>{var{start:l,end:s}=a;return l.panelId===e&&Ae.findColumn(t,l)==null||s!=null&&s.panelId===e&&Ae.findColumn(t,s)==null});this.deleteLinks(r)}handleGridColumnSelect(e,t){if(!Di(t)){K.debug2("Column is not filterable");return}var n=T.getIdFromPanel(e);k(n),this.columnSelected(n,t,"tableLink")}handleLinkPointSelected(e,t,n){var{type:r}=n,a=r==="filterSource",l=r==="chartLink"||r==="filterSource";if(!this.isOverlayShown()&&e!=null&&a){var{links:s,localDashboardId:o,setActiveTool:d,setDashboardIsolatedLinkerPanelId:h}=this.props,c=s.filter(p=>{var v,g;return((v=p.start)===null||v===void 0?void 0:v.panelId)===e||((g=p.end)===null||g===void 0?void 0:g.panelId)===e});d(pe.LINKER),h(o,e),c.length===0&&this.columnSelected(e,t,r,l,e);return}this.columnSelected(e,t,r,l)}columnSelected(e,t,n){var r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=arguments.length>4?arguments[4]:void 0;if(!(a===void 0&&!this.isOverlayShown())){var{isolatedLinkerPanelId:l}=this.props,{linkInProgress:s}=this.state,{name:o,type:d}=t;if(s==null||s.start==null){var h={id:ue(),start:{panelId:e,columnName:o,columnType:d},type:"invalid",isReversed:r};r&&(h.endType=n),K.debug("starting link",h),this.setState({linkInProgress:h})}else{var c,{links:p}=this.props,{start:v,id:g,isReversed:S=!1}=s,m={panelId:e,columnName:o,columnType:d},b=!(S&&r)&&Ae.isLinkValid(S?m:v,S?v:m,a??l);if(!b){K.debug("Ignore invalid link connection",s,m);return}var y=(c=s.endType)!==null&&c!==void 0?c:n;switch(y){case"invalid":K.debug("Ignore invalid link connection",s,m);return;case"filterSource":{var C=S!==void 0&&S?v.panelId:m.panelId,P=p.filter(D=>{var{end:E}=D;return(E==null?void 0:E.panelId)===C});this.deleteLinks(P);break}case"chartLink":{var w=S===!0?v:m,F=S===!0?m:v;K.debug("creating chartlink",{existingLinkEnd:w,start:v,end:m});var L=p.filter(D=>{var{end:E,start:j}=D;return(j==null?void 0:j.panelId)===F.panelId&&(E==null?void 0:E.panelId)===w.panelId&&(E==null?void 0:E.columnName)===w.columnName&&(E==null?void 0:E.columnType)===w.columnType});this.deleteLinks(L);break}}var M={start:S?m:v,end:S?v:m,id:g,type:y,operator:qe.eq};K.info("creating link",M),this.setState({linkInProgress:void 0,selectedIds:new Set([g])},()=>{this.addLinks([M])})}}}unsetFilterValueForLink(e){var{panelManager:t}=this.props;if(e.end){var n,{end:r}=e,{panelId:a,columnName:l,columnType:s}=r,{linkTargetPropMap:o}=this,d=(n=o.get(a))===null||n===void 0?void 0:n.unsetFilterValue;if(d){d(l,s);return}var h=t.getOpenedPanelById(a);h?Fi(h)?h.unsetFilterValue(l,s):K.debug("endPanel.unsetFilterValue not implemented",h):K.debug("endPanel no longer exists or target is not a panel. Ignoring unsetFilterValue",a)}}setPanelFilterMap(e,t){var n;K.debug("Set filter data for panel:",e,t);var{panelManager:r}=this.props,{linkTargetPropMap:a}=this,l=(n=a.get(e))===null||n===void 0?void 0:n.setFilterValues;if(l){l(t);return}var s=r.getOpenedPanelById(e);s?Fi(s)?s.setFilterMap(t):K.debug("panel.setFilterMap not implemented",e,s):K.debug("panel no longer exists or target is not a panel. Ignoring setFilterMap",e)}addLinks(e){var{addDashboardLinks:t,localDashboardId:n}=this.props;t(n,e)}deleteLinks(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{localDashboardId:n}=this.props;if(e.forEach(l=>this.unsetFilterValueForLink(l)),t){var{setDashboardLinks:r}=this.props;r(n,[])}else if(e.length>0){var{deleteDashboardLinks:a}=this.props;a(n,e.map(l=>{var{id:s}=l;return s}))}}handleAllLinksDeleted(){var{links:e,isolatedLinkerPanelId:t}=this.props;if(t===void 0)this.deleteLinks(e,!0);else{var n=e.filter(r=>{var a,l;return(r==null||(a=r.start)===null||a===void 0?void 0:a.panelId)===t||(r==null||(l=r.end)===null||l===void 0?void 0:l.panelId)===t});this.deleteLinks(n)}this.reset()}handleLinkDeleted(e){var{links:t}=this.props,n=t.find(r=>r.id===e);n?this.deleteLinks([n]):K.error("Unable to find link to delete",e)}handleTargetRegistered(e,t){var{linkTargetPropMap:n}=this;t==null?n.delete(e):n.set(e,t)}handleUpdateValues(e,t){for(var{dh:n,links:r,timeZone:a}=this.props,l=new Map,s=0;s<r.length;s+=1){var{start:o,end:d,operator:h}=r[s];if(o.panelId===e&&d!=null){var c,p,{panelId:v,columnName:g,columnType:S}=d,m=l.get(v),b=m??new Map,y=(c=(p=b.get(g))===null||p===void 0?void 0:p.filterList)!==null&&c!==void 0?c:[],{visibleIndex:C,isExpandable:P,isGrouped:w}=t[o.columnName],{value:F}=t[o.columnName],L="".concat(F);if(F===null&&P&&w&&(F=void 0),S!=null&&z.isDateType(S)){var M=new qi(n,{timeZone:a,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:Ia.FULL_DATE_FORMAT});L=M.format(F)}y.push({operator:h,text:L,value:F,startColumnIndex:C}),b.set(g,{columnType:S,filterList:y}),l.set(v,b)}}l.forEach((D,E)=>{this.setPanelFilterMap(E,D)})}handlePanelCloned(e,t){var{links:n}=this.props,r=T.getIdFromPanel(e),a=t.id;if(r!=null){var l=Ae.cloneLinksForPanel(n,r,a);this.addLinks(l)}}handlePanelDragging(e){for(var{links:t}=this.props,n=0;n<t.length;n+=1){var r=t[n],{start:a,end:l}=r;if(a.panelId===e||(l==null?void 0:l.panelId)===e){this.setState({isDraggingPanel:!0});return}}}handlePanelDropped(){this.setState({isDraggingPanel:!1})}handlePanelClosed(e){K.debug("Panel ".concat(e," closed, deleting links.")),this.deleteLinksForPanelId(e)}handleLinkSelected(e){this.setState({selectedIds:new Set([e])})}handleLinksUpdated(e){var{localDashboardId:t,setDashboardLinks:n}=this.props;n(t,e)}handleLayoutStateChanged(){this.forceUpdate()}handleStateChange(){this.forceUpdate()}handleExited(){var{localDashboardId:e,setDashboardIsolatedLinkerPanelId:t}=this.props;t(e,void 0)}deleteLinksForPanelId(e){for(var{links:t}=this.props,n=0;n<t.length;n+=1){var r=t[n],{start:a,end:l,id:s}=r;(a.panelId===e||(l==null?void 0:l.panelId)===e)&&this.handleLinkDeleted(s)}}isOverlayShown(){var{activeTool:e}=this.props;return e===pe.LINKER}updateSelectionValidators(){var{activeTool:e,setDashboardColumnSelectionValidator:t,localDashboardId:n}=this.props;switch(e){case pe.LINKER:t(n,this.isColumnSelectionValid);break;default:t(n,void 0);break}}updateLinkInProgressType(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"invalid";this.setState(t=>{var{linkInProgress:n}=t;return n!==void 0?{linkInProgress:Ri(Ri({},n),{},{type:e})}:null})}isColumnSelectionValid(e,t,n){var r,{linkInProgress:a}=this.state,{isolatedLinkerPanelId:l}=this.props,s=typeof e=="string"?n.type==="filterSource"||n.type==="chartLink":T.getComponentNameFromPanel(e)!=="IrisGridPanel";if(t==null)return(a==null?void 0:a.start)!=null&&this.updateLinkInProgressType("invalid"),!1;if(!Di(t))return K.debug2("Column is not filterable",t.description),(a==null?void 0:a.start)!=null&&this.updateLinkInProgressType("invalid"),!1;if((a==null?void 0:a.start)==null)return!0;var{isReversed:o=!1,start:d}=a,h=typeof e=="string"?e:T.getIdFromPanel(e);if(h==null)return!1;if(o&&s)return this.updateLinkInProgressType("invalid"),!1;var c={panelId:h,columnName:t.name,columnType:t.type},p=o?Ae.isLinkValid(c,d,l):Ae.isLinkValid(d,c,l);return this.updateLinkInProgressType(p?(r=a.endType)!==null&&r!==void 0?r:n.type:"invalid"),p}render(){var{links:e,isolatedLinkerPanelId:t,panelManager:n}=this.props,{linkInProgress:r,selectedIds:a,isDraggingPanel:l}=this.state,s=this.isOverlayShown(),o=r!=null&&r.start!=null,d=t===void 0?"Click a column source, then click a column target to create a filter link. The filter comparison operator used by a selected link can be changed. Delete a filter link by clicking the delete button or with alt+click. Click done when finished.":"Create a link between the source column button and a table column by clicking on one, then the other. Delete a filter link by clicking the delete button or with alt+click. Click done when finished.";return l?null:u.jsx(nn,{in:s,mountOnEnter:!0,unmountOnExit:!0,onExited:this.handleExited,children:u.jsx(Wr,{disabled:o,panelManager:n,links:this.getCachedLinks(e,r,t),selectedIds:a,messageText:d,onLinkSelected:this.handleLinkSelected,onLinkDeleted:this.handleLinkDeleted,onAllLinksDeleted:this.handleAllLinksDeleted,onLinksUpdated:this.handleLinksUpdated,onDone:this.handleDone,onCancel:this.handleCancel,linkTargetPropMap:this.linkTargetPropMap})})}}var ad=id(rd);function Kr(i){Tt(i);var{id:e,layout:t,panelManager:n}=i;return u.jsx(ad,{layout:t,localDashboardId:e,panelManager:n})}var ld={name:"LinkerPlugin",type:je.DASHBOARD_PLUGIN,component:Kr};function zr(i){Tt(i);var{id:e,layout:t,panelManager:n,registerComponent:r}=i,a=f.useCallback(function(){var{title:l="",metadata:s={},id:o=ue(),focusElement:d=T.DEFAULT_FOCUS_SELECTOR,createNewStack:h=!1,dragEvent:c=void 0}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},p=n.getOpenedPanelConfigsOfType(mt.COMPONENT),v=p.map(y=>{var C;return(C=y.title)!==null&&C!==void 0?C:""}),g=l!=null&&l!==""?l:Se.getNewMarkdownTitle(v),S=null,m={type:"react-component",component:mt.COMPONENT,props:{id:o,metadata:s,panelState:{content:S},localDashboardId:e},title:g,id:o},{root:b}=t;T.openComponent({root:b,config:m,focusElement:d,createNewStack:h,dragEvent:c})},[e,t,n]);return f.useEffect(function(){var s=[r(mt.COMPONENT,mt)];return()=>{s.forEach(o=>o())}},[r]),Ue(t.eventHub,or.OPEN,a),null}var sd={name:"MarkdownPlugin",type:je.DASHBOARD_PLUGIN,component:zr};function Ai(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Ui(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ai(Object(t),!0).forEach(function(n){od(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Ai(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function od(i,e,t){return(e=dd(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function dd(i){var e=ud(i,"string");return typeof e=="symbol"?e:e+""}function ud(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var In=f.forwardRef((i,e)=>{var{localDashboardId:t,fetch:n,metadata:r}=i,a=Ir(n,t,r);return u.jsx(Zt,Ui(Ui({ref:e},i),a))});In.displayName="PandasPanelPlugin";function qr(i){var{fetch:e}=i,t=xr(e);if(t.status==="loading")return u.jsx(St,{isLoading:!0,"data-testid":"pandas-widget-plugin-loading"});if(t.status==="error")return u.jsx(St,{errorMessage:ir(t.error),isLoading:!1,"data-testid":"pandas-widget-plugin-loading-error"});var{model:n,reload:r}=t;return u.jsx(pn,{model:n,children:u.jsx(kr,{onClick:r})})}var hd={name:"PandasPanel",title:"Pandas",type:je.WIDGET_PLUGIN,component:qr,panelComponent:In,supportedTypes:"pandas.DataFrame",icon:ml};function $i(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Re(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?$i(Object(t),!0).forEach(function(n){cd(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):$i(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function cd(i,e,t){return(e=pd(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function pd(i){var e=vd(i,"string");return typeof e=="symbol"?e:e+""}function vd(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var md=B.module("WidgetLoaderPlugin");function fd(i){var e;function t(n,r){var a,l,s=i.component,{metadata:o}=n,d=Re(Re({},o),{},{type:(a=o==null?void 0:o.type)!==null&&a!==void 0?a:i.type,name:(l=o==null?void 0:o.name)!==null&&l!==void 0?l:"Widget"}),h=Ra(s);return u.jsx(Ft,Re(Re({descriptor:d},n),{},{children:h?u.jsx(s,Re(Re({},n),{},{ref:r})):u.jsx(s,Re({},n))}))}return t.displayName="WidgetLoaderPlugin(".concat((e=i.component.displayName)!==null&&e!==void 0?e:i.name,")"),f.forwardRef(t)}function Xr(i){var e=Ji(),t=f.useMemo(()=>{var s=new Map;return e.forEach(o=>{xa(o)&&[o.supportedTypes].flat().forEach(d=>{if(d!=null&&d!==""){if(s.has(d)){var h;md.warn("Multiple WidgetPlugins handling type ".concat(d,". Replacing ").concat((h=s.get(d))===null||h===void 0?void 0:h.name," with ").concat(o.name," to handle ").concat(d))}s.set(d,o)}})}),s},[e]);Tt(i);var{id:n,layout:r,registerComponent:a}=i,l=f.useCallback(s=>{var o,{dragEvent:d,panelId:h=ue(),fetch:c,widget:p}=s,{type:v}=p,g=v!=null?t.get(v):null;if(g!=null){var S=(o=p.name)!==null&&o!==void 0?o:v,m={localDashboardId:n,metadata:p,fetch:c},b={type:"react-component",component:g.name,props:m,title:S,id:h},{root:y}=r;T.openComponent({root:y,config:b,dragEvent:d})}},[n,r,t]);return f.useEffect(()=>{var s=[...new Set(t.values())].map(o=>{var{panelComponent:d}=o;return d==null?a(o.name,fd(o)):a(o.name,d)});return()=>{s.forEach(o=>o())}},[a,t]),_a(r.eventHub,l),null}var gd={name:"WidgetLoaderPlugin",type:je.DASHBOARD_PLUGIN,component:Xr},bd=I.shape({state:I.shape({panelState:I.shape({})})}),Sd=I.shape({panelId:I.string.isRequired,columnName:I.string.isRequired,columnType:I.string.isRequired}),Vi=I.shape({panelId:I.string.isRequired,columnName:I.string.isRequired}),Zr=I.shape({start:Vi,end:Vi,id:I.string,isReversed:I.bool}),Cd=I.arrayOf(Zr),yd=I.shape({name:I.string.isRequired,operateAs:I.string.isRequired,groups:I.arrayOf(I.string).isRequired,permissions:I.shape({canUsePanels:I.bool.isRequired,canCopy:I.bool.isRequired,canDownloadCsv:I.bool.isRequired,canLogout:I.bool.isRequired}).isRequired}),Pd=Object.freeze({LinkPoint:Sd,Link:Zr,Links:Cd,Panel:bd,User:yd}),wd=(i,e)=>i[e]===null?null:I.bool,Ed=(i,e)=>i[e]===null?null:I.string,Td=Object.freeze({nullableBoolean:wd,nullableString:Ed});const jd=Object.freeze(Object.defineProperty({__proto__:null,ChartBuilderPlugin:Nr,ChartBuilderPluginConfig:No,ChartEvent:et,ChartPanel:Tn,ChartPanelPlugin:Ln,ChartPluginConfig:Lo,ChartWidgetPlugin:Or,CommandHistoryPanel:Aa,CommonPropTypes:Td,ConsoleEvent:Ua,ConsolePanel:$a,ConsolePlugin:Va,ControlType:Ga,CorePanel:wo,DropdownFilterPanel:Ze,FileExplorerPanel:Ha,FilterPlugin:jr,FilterPluginConfig:jo,FilterSetManager:yt,FilterSetManagerPanel:xt,GridPanelPlugin:Nn,GridPluginConfig:Wo,GridWidgetPlugin:$r,InputFilterEvent:De,InputFilterPanel:Ye,IrisGridEvent:Z,IrisGridPanel:Fn,LinkerPlugin:Kr,LinkerPluginConfig:ld,LinkerUtils:Ae,LogPanel:Ba,MarkdownEvent:or,MarkdownPanel:mt,MarkdownPlugin:zr,MarkdownPluginConfig:sd,MockFileStorage:Po,NotebookEvent:Wa,NotebookPanel:Ka,PandasEvent:fn,PandasPanel:Zt,PandasPanelPlugin:In,PandasPluginConfig:hd,PandasWidgetPlugin:qr,Panel:Eo,TabEvent:is,ToolType:pe,UIPropTypes:Pd,WidgetLoaderPlugin:Xr,WidgetLoaderPluginConfig:gd,WidgetPanel:Ft,WidgetPanelTooltip:gn,addDashboardLinks:lr,deleteDashboardLinks:ar,getColumnSelectionValidatorForDashboard:Et,getColumnsForDashboard:un,getDashboardConnection:za,getDashboardConsoleSettings:qa,getDashboardSessionWrapper:Xa,getFilterSetsForDashboard:Yi,getInputFiltersForDashboard:wt,getIsolatedLinkerPanelIdForDashboard:Gt,getLinksForDashboard:lt,getTableMapForDashboard:Vt,isChartPanelDehydratedProps:yr,isChartPanelFigureMetadata:Sr,isChartPanelTableMetadata:Xe,isGLChartPanelState:Cr,isIrisGridPanelMetadata:Fr,isLegacyIrisGridPanelMetadata:Tr,setDashboardColumnSelectionValidator:rr,setDashboardConnection:Za,setDashboardConsoleSettings:Ya,setDashboardFilterSets:Zi,setDashboardIsolatedLinkerPanelId:on,setDashboardLinks:sr,setDashboardSessionWrapper:Qa,useConfigureRuff:Ja,useDashboardColumnFilters:_r,useGridLinker:Rr,useLoadTablePlugin:On,useTablePlugin:Ur},Symbol.toStringTag,{value:"Module"}));export{vn as C,pr as D,Ct as F,Hl as I,Je as a,an as b,vr as c,$l as d,Nl as e,Wt as f,Er as g,jd as h,Kn as i,Dl as u};
9
- //# sourceMappingURL=index-LXmN419B.js.map
9
+ //# sourceMappingURL=index-Bjvh6jhx.js.map