@deephaven/code-studio 0.85.31 → 0.85.32

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-816934e1.js → AppRoot-ebba7f82.js} +4 -4
  2. package/build/assets/{AppRoot-816934e1.js.map → AppRoot-ebba7f82.js.map} +1 -1
  3. package/build/assets/{Chart-ed6ce07b.js → Chart-31b98bdf.js} +2 -2
  4. package/build/assets/{Chart-ed6ce07b.js.map → Chart-31b98bdf.js.map} +1 -1
  5. package/build/assets/{ControlType-04435a15.js → ControlType-7a644160.js} +3 -3
  6. package/build/assets/{ControlType-04435a15.js.map → ControlType-7a644160.js.map} +1 -1
  7. package/build/assets/{FontBootstrap-2d91b9e5.js → FontBootstrap-5e60bb4e.js} +2 -2
  8. package/build/assets/{FontBootstrap-2d91b9e5.js.map → FontBootstrap-5e60bb4e.js.map} +1 -1
  9. package/build/assets/{FormatterUtils-37ebf8dc.js → FormatterUtils-baed1012.js} +2 -2
  10. package/build/assets/{FormatterUtils-37ebf8dc.js.map → FormatterUtils-baed1012.js.map} +1 -1
  11. package/build/assets/{Grid-0b5c8d49.js → Grid-860a9c16.js} +2 -2
  12. package/build/assets/{Grid-0b5c8d49.js.map → Grid-860a9c16.js.map} +1 -1
  13. package/build/assets/{IrisGrid-3a2cd499.js → IrisGrid-d45b017b.js} +2 -2
  14. package/build/assets/{IrisGrid-3a2cd499.js.map → IrisGrid-d45b017b.js.map} +1 -1
  15. package/build/assets/{IrisGridModel-51d1e4a7.js → IrisGridModel-0fc1dc91.js} +2 -2
  16. package/build/assets/{IrisGridModel-51d1e4a7.js.map → IrisGridModel-0fc1dc91.js.map} +1 -1
  17. package/build/assets/{IrisGridShortcuts-bc968b91.js → IrisGridShortcuts-c4b59c54.js} +2 -2
  18. package/build/assets/{IrisGridShortcuts-bc968b91.js.map → IrisGridShortcuts-c4b59c54.js.map} +1 -1
  19. package/build/assets/{IrisGridThemeProvider-872eec77.js → IrisGridThemeProvider-e0fb6177.js} +2 -2
  20. package/build/assets/{IrisGridThemeProvider-872eec77.js.map → IrisGridThemeProvider-e0fb6177.js.map} +1 -1
  21. package/build/assets/{LocalWorkspaceStorage-a15c71ba.js → LocalWorkspaceStorage-9fc16a93.js} +2 -2
  22. package/build/assets/{LocalWorkspaceStorage-a15c71ba.js.map → LocalWorkspaceStorage-9fc16a93.js.map} +1 -1
  23. package/build/assets/{MarkdownEditor-082e752c.js → MarkdownEditor-a32a9c3a.js} +2 -2
  24. package/build/assets/{MarkdownEditor-082e752c.js.map → MarkdownEditor-a32a9c3a.js.map} +1 -1
  25. package/build/assets/{MarkdownNotebook-27d09308.js → MarkdownNotebook-dcf83e5c.js} +2 -2
  26. package/build/assets/{MarkdownNotebook-27d09308.js.map → MarkdownNotebook-dcf83e5c.js.map} +1 -1
  27. package/build/assets/{MissingPartitionError-9e55abce.js → MissingPartitionError-24250c44.js} +2 -2
  28. package/build/assets/{MissingPartitionError-9e55abce.js.map → MissingPartitionError-24250c44.js.map} +1 -1
  29. package/build/assets/{StyleGuideRoot-9c0181cd.js → StyleGuideRoot-3d1f4fac.js} +2 -2
  30. package/build/assets/{StyleGuideRoot-9c0181cd.js.map → StyleGuideRoot-3d1f4fac.js.map} +1 -1
  31. package/build/assets/{TokenBoxCellRenderer-3134bec5.js → TokenBoxCellRenderer-9d709524.js} +2 -2
  32. package/build/assets/{TokenBoxCellRenderer-3134bec5.js.map → TokenBoxCellRenderer-9d709524.js.map} +1 -1
  33. package/build/assets/{index-669d2b9e.js → index-6b74db9b.js} +3 -3
  34. package/build/assets/{index-669d2b9e.js.map → index-6b74db9b.js.map} +1 -1
  35. package/build/assets/{index-b495dd89.js → index-6ed3511b.js} +2 -2
  36. package/build/assets/{index-b495dd89.js.map → index-6ed3511b.js.map} +1 -1
  37. package/build/assets/{index-c187df9b.js → index-dd7f33be.js} +2 -2
  38. package/build/assets/{index-c187df9b.js.map → index-dd7f33be.js.map} +1 -1
  39. package/build/index.html +2 -2
  40. package/package.json +14 -14
@@ -1,8 +1,8 @@
1
- import{r as g,J as u,M as ie,a1 as $e,a2 as ne,bz as pa,ab as k,bA as Wr,a3 as L,N as re,a0 as Ue,V as ee,I as ae,b2 as va,b1 as Vn,av as We,a5 as fa,ad as ma}from"./vendor-3e5e4180.js";import{F as Le,cD as Pe,P as Oe,af as K,cE as Jt,c as H,bU as ga,bM as F,J as ba,bT as qr,a7 as Ca,ai as Xr,cF as yt,cG as ve,B as x,cH as nt,aa as we,U as Zr,cI as dn,cJ as Yr,M as de,w as rn,cK as Vt,c1 as Qr,Z as un,cL as Gt,cM as Pt,cN as wt,cO as rt,G as Ht,S as bt,cP as hn,i as Jr,b as ei,a3 as Sa,a8 as ya,cQ as ti,cR as ni,aN as Pa,ab as J,c0 as wa,cS as Gn,cw as Ea,cx as Fa,u as it,aX as Ta,o as ri,cd as Ne,bZ as Et,bO as Me,X as Da,ak as ii,co as Ma,cm as La,c9 as ai,ca as li,y as an,cb as Oa,cr as si,T as ct,N as Na,s as ka,H as Ia,cT as oi,cU as di,cV as ui,cW as hi,a$ as xa,ac as ci,cc as _a,b_ as Ra,cB as ja,cX as Aa,cz as $a,ah as Ua,L as Va,cC as Ga,cA as Ha,a9 as Ba,ad as Ka,cY as za,a1 as Wa,cZ as qa,a2 as Xa,aq as Za,c_ as Ya,ar as Qa}from"./ControlType-04435a15.js";import{L as V,e as D,am as Ja,an as el,I as cn,ao as tl,ap as nl,aq as pi,f as pn,ar as vi,as as Hn,w as Bn,g as rl,D as il,M as al,b as ll,c as sl,J as Ct,s as ol,at as dl,au as ul,d as hl,av as cl,aw as pl}from"./index-c187df9b.js";import{C as vl,a as Z,b as R,G as qe,S as fi,L as mi,I as vn}from"./IrisGridModel-51d1e4a7.js";import{I as gi,M as Kn,j as fl,i as je,h as xe,d as U,A as ml,k as gl,l as bl,m as Cl}from"./MissingPartitionError-9e55abce.js";import{F as zn}from"./FormatterUtils-37ebf8dc.js";import{_ as Sl}from"./monaco-b5248072.js";function fn(r){var{className:e,isFlipped:t,children:n,"data-testid":i}=r,a=d=>{if(n.length!==2)throw new Error("CardFlip requires 2 children to function");return n[d]},l=g.useRef(null),s=g.useCallback(d=>{d.target===d.currentTarget&&document.body.classList.add("card-flip--is-flipping")},[]),o=g.useCallback(d=>{d.target===d.currentTarget&&document.body.classList.remove("card-flip--is-flipping")},[]);return g.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:ie(e,{"card-flip--show-front":t,"card-flip--show-back":!t}),"data-testid":i,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 Wn(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function qn(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Wn(Object(t),!0).forEach(function(n){$(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Wn(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function $(r,e,t){return e=yl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function yl(r){var e=Pl(r,"string");return typeof e=="symbol"?e:String(e)}function Pl(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var z=V.module("FigureChartModel");class Bt extends vl{constructor(e,t){var n,i=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",$e(()=>{for(var a=Z.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?.showLegend)!==null&&h!==void 0?h:null),c.subscribe()},o=0;o<l.length;o+=1)s();this.pendingSeries=[]},Bt.ADD_SERIES_DEBOUNCE)),$(this,"getTimeZone",ne((a,l)=>{if(l!=null){var s=l.getColumnTypeFormatter(a);if(s!=null)return s.dhTimeZone}})),$(this,"getValueTranslator",ne((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.unwrapValue(o,s)})),$(this,"getValueParser",ne((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.wrapValue(o,a,s)})),$(this,"getRangeParser",ne((a,l)=>s=>{var[o,d]=s,h=this.getValueParser(a,l);return o=h(o),d=h(d),[o,d]})),$(this,"getAxisRangeParser",ne((a,l)=>s=>{var o=Z.getSourceForAxis(a,s);return o!=null?this.getRangeParser(o.columnType,l):d=>d})),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 Z(e),this.figure=t,this.settings=i,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=Z.getAxisTypeMap(this.figure),i=[];this.seriesToProcess=new Set;for(var a=function(){for(var p=t[l],v=0;v<p.series.length;v+=1){var m=p.series[v];i.push(m.name),e.addSeries(m,n,p.showLegend)}var{axes:C,title:f}=p;if(f!=null&&f.length>0&&(t.length>1||e.figure.title!=null)){var b=C.find(E=>E.type===e.dh.plot.AxisType.X),y=C.find(E=>E.type===e.dh.plot.AxisType.Y);if(b==null||y==null)z.warn("Chart title provided, but unknown how to map to the correct axes for this chart type",p);else{var S,P,w,T,N=((S=(P=n.get(b.type))===null||P===void 0?void 0:P.findIndex(E=>E===b))!==null&&S!==void 0?S:0)+1,O=((w=(T=n.get(y.type))===null||T===void 0?void 0:T.findIndex(E=>E===y))!==null&&w!==void 0?w:0)+1,M={align:"center",x:.5,y:1,yshift:17,text:f,showarrow:!1,xref:"x".concat(N," domain"),yref:"y".concat(O," domain")};e.layout.annotations==null?e.layout.annotations=[M]:e.layout.annotations.push(M)}}},l=0;l<t.length;l+=1)a();for(var s=[...this.seriesDataMap.keys()],o=s.filter(c=>i.indexOf(c)<0),d=0;d<o.length;d+=1){var h=o[d];this.seriesDataMap.delete(h)}}addSeries(e,t,n){var i,a,{dh:l}=this,s=this.chartUtils.makeSeriesDataFromSeries(e,t,Z.getSeriesVisibility(e.name,this.settings),n,(i=(a=this.renderOptions)===null||a===void 0?void 0:a.webgl)!==null&&i!==void 0?i:!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=Z.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){z.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&&(z.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){z.debug("Downsample started",e),this.fireDownsampleStart(e.detail)}handleDownsampleFinish(e){z.debug("Downsample finished",e),this.fireDownsampleFinish(e.detail)}handleDownsampleFail(e){z.error("Downsample failed",e),this.fireDownsampleFail(e.detail)}handleDownsampleNeeded(e){z.info("Downsample needed",e),this.fireDownsampleNeeded(e.detail)}handleFigureUpdated(e){var{detail:t}=e,{series:n}=t;z.debug2("handleFigureUpdated",n);for(var i=0;i<n.length;i+=1){var a=n[i];z.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){z.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){z.debug("Figure disconnected",e),this.isConnected=!1,this.listeners.length>0&&this.unsubscribeFigure(),this.fireDisconnect()}handleFigureReconnected(e){z.debug("Figure reconnected",e),this.isConnected=!0,this.initAllSeries(),this.fireReconnect(),this.listeners.length>0&&this.subscribeFigure()}handleFigureSeriesAdded(e){var{detail:t}=e;z.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 i=(t=(n=(e??"").match(/<br>/g))===null||n===void 0?void 0:n.length)!==null&&t!==void 0?t:0,a=Z.DEFAULT_MARGIN.t+i*Z.SUBTITLE_LINE_HEIGHT;this.layout.margin?this.layout.margin.t=a:this.layout.margin={t:a},typeof this.layout.title=="string"?this.layout.title=e:(this.layout.title=qn({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=qn({},this.layout.title.pad),this.layout.title.pad.t=Z.DEFAULT_TITLE_PADDING.t+i*Z.SUBTITLE_LINE_HEIGHT*.5),this.fireLayoutUpdated({title:this.layout.title})}getPlotWidth(){var e,t,n,i;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=(i=this.layout.margin)===null||i===void 0?void 0:i.r)!==null&&n!==void 0?n:0),0)}getPlotHeight(){var e,t,n,i;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=(i=this.layout.margin)===null||i===void 0?void 0:i.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)=>{z.debug("Assigning ".concat(n),this.layout[n],t);var i=this.layout[n];i!=null?Object.assign(i,t):z.debug("Ignoring null layout.".concat(n))})}}setDataArrayForSeries(e,t,n){var{name:i,plotStyle:a}=e,l=this.seriesDataMap.get(i),s=this.chartUtils.getPlotlyProperty(a,t);l&&pa(l,s,n)}cleanSeries(e){var{dh:t}=this,{name:n,plotStyle:i}=e,a=this.seriesDataMap.get(n);if(a!=null){if(i===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(i===t.plot.SeriesPlotStyle.LINE||i===t.plot.SeriesPlotStyle.ERROR_BAR||i===t.plot.SeriesPlotStyle.BAR){var{x:h,xLow:c,xHigh:p,y:v,yLow:m,yHigh:C}=a;c&&p&&c!==h&&(a.error_x=Z.getPlotlyErrorBars(h,c,p)),m&&C&&m!==v&&(a.error_y=Z.getPlotlyErrorBars(v,m,C))}else if(i===t.plot.SeriesPlotStyle.TREEMAP){var{ids:f,labels:b}=a;f!==void 0&&b===void 0&&(a.labels=f)}}}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){z.warn("Trying to set a filter, but no one click!");return}z.debug("setFilter",e);for(var n=function(){var l=t.oneClicks[i],{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)})},i=0;i<this.oneClicks.length;i+=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}}$(Bt,"ADD_SERIES_DEBOUNCE",50);const Xn=Bt;function Zn(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function en(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Zn(a,n,i,l,s,"next",o)}function s(o){Zn(a,n,i,l,s,"throw",o)}l(void 0)})}}class mn{static makeModelFromSettings(e,t,n){return en(function*(){var i=yield mn.makeFigureFromSettings(e,t,n);return new Xn(e,i,t)})()}static makeFigureFromSettings(e,t,n){return en(function*(){var i=yield n.copy();return i.applyCustomColumns(n.customColumns),i.applyFilter(n.filter),i.applySort(n.sort),e.plot.Figure.create(new Z(e).makeFigureSettings(t,i))})()}static makeModel(e,t,n){return en(function*(){return new Xn(e,n,t)})()}}const ft=mn;function Yn(r){return r.setFigure!==void 0}function Qn(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function _e(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Qn(a,n,i,l,s,"next",o)}function s(o){Qn(a,n,i,l,s,"throw",o)}l(void 0)})}}function ce(r,e,t){return e=wl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function wl(r){var e=El(r,"string");return typeof e=="symbol"?e:String(e)}function El(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Ce=V.module("IrisGridTableModel");class Fl extends gi{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Le(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,n,i),ce(this,"userFrozenColumns",void 0),ce(this,"customColumnList",void 0),ce(this,"formatColumnList",void 0),ce(this,"initialFilters",[]),ce(this,"getMemoizedKeyColumnSet",k(a=>new Set(a??K))),ce(this,"getMemoizedFrontColumns",k(a=>a??K)),ce(this,"getMemoizedBackColumns",k(a=>a??K)),ce(this,"getMemoizedFrozenColumns",k((a,l)=>{var s;return(s=l??a)!==null&&s!==void 0?s:K})),ce(this,"getCachedFilterableColumnSet",k(a=>new Set(a.map((l,s)=>s)))),ce(this,"getCachedPartitionColumns",k(a=>a.filter(l=>l.isPartitionColumn))),this.customColumnList=[],this.formatColumnList=[],this.initialFilters=t.filter}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 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 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(Ce.debug2("set customColumns",e,this.customColumnList,e===this.customColumnList),this.customColumnList.length===0&&e.length===0){Ce.debug("Ignore empty initial customColumns"),this.customColumnList=e;return}if(this.customColumnList===e){Ce.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(Ce.debug2("set formatColumns",e,this.formatColumnList,e===this.formatColumnList),this.formatColumnList.length===0&&e.length===0){Ce.debug("Ignore empty initial formatColumns"),this.formatColumnList=e;return}if(this.formatColumnList===e){Ce.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 Pe(R.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*(){Ce.debug("getting partition table for partitions",e);for(var n=[],i=0;i<t.partitionColumns.length;i+=1){var a=e[i],l=t.partitionColumns[i],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(Ce.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 Pe(R.EVENT.UPDATED));return}this.totalsTablePromise=Oe.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{Oe.isCanceled(t)||(Ce.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new Pe(R.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.isPartitionRequired}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,i=this;return _e(function*(){var a;if(!i.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));D(i.inputTable);var{keyColumns:l}=i.inputTable;if(i.keyColumnSet.size===0)throw new Error("No key columns to allow deletion");var s=i.getPendingAreaRange(),o=e.map(S=>qe.intersection(s,S)).filter(S=>S!=null).map(S=>(D(S),qe.offset(S,0,-(i.floatingTopRowCount+i.table.size))));if(o.length>0){for(var d=new Map(t()),h=0;h<o.length;h+=1){var c=o[h];D(c.startRow),D(c.endRow);for(var p=c.startRow;p<=c.endRow;p+=1)d.delete(p)}n(d),i.formattedStringData=[],i.dispatchEvent(new Pe(R.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new Pe(R.EVENT.UPDATED))}var v=i.getTableAreaRange(),m=e.map(S=>qe.intersection(v,S)).filter(S=>S!=null);if(!(m.length<=0)){var[C,f]=yield Promise.all([i.snapshot(m.map(S=>(D(S),l.map(P=>{var w=i.getColumnIndexByName(P.name);if(w==null)throw new Error("Key column ".concat(P.name," not found"));return new qe(w,S.startRow,w,S.endRow)}))).flat()),i.table.copy()]),b=C.map(S=>{for(var P=[],w=0;w<l.length;w+=1){var T=l[w],N=S[w],O=i.tableUtils.makeNullableEqFilter(T,N);P.push(O)}return P.reduce((M,E)=>{var I;return(I=M?.and(E))!==null&&I!==void 0?I:E})}),y=b.reduce((S,P)=>{var w;return(w=S?.or(P))!==null&&w!==void 0?w:P});f.applyFilter([y]),yield(a=i.inputTable)===null||a===void 0?void 0:a.deleteTable(f),f.close()}})()}seekRow(e,t,n,i,a,l,s){var o=this;return _e(function*(){return o.table.seekRow(e,t,n,i,a,l,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}const Tl=Fl;function Dl(r,e,t){return e=Ml(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Ml(r){var e=Ll(r,"string");return typeof e=="symbol"?e:String(e)}function Ll(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Ol extends R{constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new Le(e);super(e),Dl(this,"modelFormatter",void 0),this.modelFormatter=t}get rowCount(){return 0}get columnCount(){return 0}textForCell(e,t){return""}textForColumnHeader(e,t){}get columns(){return K}getColumnIndexByName(e){}get initialMovedColumns(){return K}get initialMovedRows(){return K}get initialColumnHeaderGroups(){return K}get groupedColumns(){return K}formatForCell(e,t){}valueForCell(e,t){}get filter(){return K}set filter(e){}get partition(){return K}set partition(e){}get partitionColumns(){return K}get formatter(){return this.modelFormatter}set formatter(e){this.modelFormatter=e}displayString(e,t,n){return""}get sort(){return K}set sort(e){}get customColumns(){return K}set customColumns(e){}get formatColumns(){return K}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 K}set selectDistinctColumns(e){}get pendingDataMap(){return Jt}set pendingDataMap(e){}get pendingRowCount(){return 0}set pendingRowCount(e){}get pendingDataErrors(){return Jt}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,i,a,l,s){return Promise.resolve(0)}get columnHeaderGroups(){return K}set columnHeaderGroups(e){}get columnHeaderGroupMap(){return Jt}getColumnHeaderParentGroup(e,t){}}const Nl=Ol;function Jn(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function Dt(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Jn(a,n,i,l,s,"next",o)}function s(o){Jn(a,n,i,l,s,"throw",o)}l(void 0)})}}function kl(r,e,t){return e=Il(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Il(r){var e=xl(r,"string");return typeof e=="symbol"?e:String(e)}function xl(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class _l extends Nl{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Le(e);super(e,n),kl(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 Dt(function*(){return e.partitionedTable.getKeyTable()})()}partitionBaseTable(){var e=this;return Dt(function*(){return e.partitionedTable.getBaseTable()})()}partitionMergedTable(){var e=this;return Dt(function*(){return e.partitionedTable.getMergedTable()})()}partitionTable(e){var t=this;return Dt(function*(){try{var n=yield t.partitionedTable.getTable(e);if(n==null)throw new Kn("Partition not found");return n}catch(i){throw fl(i)?i:new Kn("Unable to retrieve partition")}})()}}const Rl=_l;function er(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function jl(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){er(a,n,i,l,s,"next",o)}function s(o){er(a,n,i,l,s,"throw",o)}l(void 0)})}}function tr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function nr(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?tr(Object(t),!0).forEach(function(n){ze(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):tr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function ze(r,e,t){return e=Al(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Al(r){var e=$l(r,"string");return typeof e=="symbol"?e:String(e)}function $l(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Ul=V.module("IrisGridTreeTableModel");function Vl(r){return r.layoutHints!==void 0}class Gl extends gi{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Le(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,n,i),ze(this,"virtualColumns",void 0),ze(this,"getCachedColumns",k((a,l)=>[...a,...l])),ze(this,"getCachedGroupColumns",k((a,l)=>[...a,...l])),ze(this,"getCachedFilterableColumnSet",k((a,l,s,o,d)=>l?new Set(a.filter(h=>!d.includes(h)&&!s.includes(h)).map(h=>a.findIndex(c=>h.name===c.name))):new Set((o?.length>0?o:a).filter(h=>!d.includes(h)).map(h=>a.findIndex(c=>h.name===c.name))))),ze(this,"getCachedGroupedColumnSet",k(a=>new Set(a.map(l=>this.columns.findIndex(s=>l.name===s.name))))),this.virtualColumns=t.groupedColumns.length>1?[{name:"__DH_UI_GROUP__",displayName:"Group",type:H.dataType.STRING,constituentType:H.dataType.STRING,isPartitionColumn:!1,isSortable:!1,isProxy:!0,description:"Key column",index:-1,filter:()=>{throw new Error("Filter not implemented for virtual column")},sort:()=>{throw new Error("Sort not implemented for virtual column")},formatColor:()=>{throw new Error("Color not implemented for virtual column")},get:()=>{throw new Error("get not implemented for virtual column")},getFormat:()=>{throw new Error("getFormat not implemented for virtual column")},formatNumber:()=>{throw new Error("formatNumber not implemented for virtual column")},formatDate:()=>{throw new Error("formatDate not implemented for virtual column")}}]:[]}applyBufferedViewport(e,t,n){var i=[...this.table.groupedColumns,...n.filter(a=>!this.virtualColumns.includes(a)&&!this.groupedColumns.includes(a))];this.table.setViewport(e,t,i)}textForCell(e,t){var n=this.sourceColumn(e,t),i=this.row(t);if(i!=null&&n!=null){if(!i.hasChildren&&n.constituentType!=null){var a=this.valueForCell(e,t);return this.displayString(a,n.constituentType,n.name)}if(i.hasChildren&&i.depth<=e+1&&this.valueForCell(e,t)===null&&this.getCachedGroupedColumnSet(this.groupedColumns).has(e))return""}return super.textForCell(e,t)}extractViewportRow(e,t){var{isExpanded:n,hasChildren:i,depth:a}=e,l=super.extractViewportRow(e,t),s=new Map(l.data);if(i)for(var o=0;o<this.virtualColumns.length;o+=1){var d=o+(a-1)+(this.virtualColumns.length-1),h=s.get(d);h==null?Ul.warn("Missing key data for virtual column",o,a,d,e):s.set(o,h)}return nr(nr({},l),{},{data:s,isExpanded:n,hasChildren:i,depth:a})}snapshot(e,t){var n=arguments,i=this;return jl(function*(){var a,l,s=n.length>2&&n[2]!==void 0?n[2]:y=>y;D(i.viewport),D(i.viewportData);var o=(a=i.viewport.columns)!==null&&a!==void 0?a:i.columns,d=[];t!=null&&t&&d.push(o.map(y=>y.name));for(var h=new qe(0,(l=i.viewportData)===null||l===void 0?void 0:l.offset,o.length,i.viewportData.offset+i.viewportData.rows.length),c=0;c<e.length;c+=1){var p=qe.intersection(h,e[c]);D(p),D(p.startRow),D(p.endRow);for(var v=p.startRow;v<=p.endRow;v+=1){var m=[],C=i.viewportData.rows[v-i.viewportData.offset];D(p.startColumn),D(p.endColumn);for(var f=p.startColumn;f<=p.endColumn;f+=1){var b;m.push(s((b=C.data.get(f))===null||b===void 0?void 0:b.value,i.columns[f]))}d.push(m)}}return d})()}get columns(){return this.getCachedColumns(this.virtualColumns,super.columns)}get aggregatedColumns(){return this.isAggregatedColumnsAvailable?this.table.aggregatedColumns:K}get groupedColumns(){return this.getCachedGroupColumns(this.virtualColumns,this.table.groupedColumns)}sourceForCell(e,t){if(e>=this.virtualColumns.length)return{column:e,row:t};var n=this.depthForRow(t);return{column:e+n,row:t}}sourceColumn(e,t){if(e>=this.virtualColumns.length)return super.sourceColumn(e,t);var n=this.depthForRow(t);return this.columns[e+n]}getClearFilterRange(e){return e>=this.virtualColumns.length?super.getClearFilterRange(e):[this.virtualColumns.length,this.groupedColumns.length]}get layoutHints(){if(Vl(this.table))return this.table.layoutHints}get hasExpandableRows(){return!0}get isAggregatedColumnsAvailable(){return this.table.aggregatedColumns!==void 0}get isExpandAllAvailable(){return this.table.expandAll!==void 0}get isChartBuilderAvailable(){return!1}get isSelectDistinctAvailable(){return!1}get isReversible(){return!1}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns,this.isAggregatedColumnsAvailable,this.aggregatedColumns,this.groupedColumns,this.virtualColumns).has(e)}isColumnMovable(e){return e>=this.groupedColumns.length}isRowExpandable(e){var t,n=this.row(e);return(t=n?.hasChildren)!==null&&t!==void 0?t:!1}isRowExpanded(e){var t,n=this.row(e);return(t=n?.isExpanded)!==null&&t!==void 0?t:!1}setRowExpanded(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.isExpandAllAvailable?this.table.setExpanded(e,t,n):this.table.setExpanded(e,t)}expandAll(){this.table.expandAll!=null&&this.table.expandAll()}collapseAll(){this.table.collapseAll!=null&&this.table.collapseAll()}depthForRow(e){var t,n=this.row(e);return((t=n?.depth)!==null&&t!==void 0?t:1)-1}updateFrozenColumns(e){if(e.length>0)throw new Error("Cannot freeze columns on a tree table")}}const Hl=Gl;function Se(r,e,t){return e=Bl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Bl(r){var e=Kl(r,"string");return typeof e=="symbol"?e:String(e)}function Kl(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var ye=V.module("IrisGridProxyModel");function Ke(r,e,t,n){return H.isTreeTable(e)?new Hl(r,e,t):H.isPartitionedTable(e)?new Rl(r,e,t):new Tl(r,e,t,n)}class zl extends R{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Le(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),Se(this,"model",void 0),Se(this,"dh",void 0),Se(this,"originalModel",void 0),Se(this,"modelPromise",void 0),Se(this,"rollup",void 0),Se(this,"partition",void 0),Se(this,"selectDistinct",void 0),Se(this,"currentViewport",void 0),Se(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,i);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){ye.debug2("handleModelEvent",e);var{detail:t,type:n}=e;this.dispatchEvent(new Pe(n,{detail:t}))}setModel(e){ye.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 Pe(R.EVENT.COLUMNS_CHANGED,{detail:e.columns}));else if(this.currentViewport!=null){var{top:i,bottom:a,columns:l}=this.currentViewport;e.setViewport(i,a,l)}je(e)&&this.dispatchEvent(new Pe(R.EVENT.TABLE_CHANGED,{detail:e.table}))}setNextModel(e){ye.debug2("setNextModel"),this.modelPromise&&this.modelPromise.cancel(),this.listenerCount>0&&this.removeListeners(this.model),this.modelPromise=Oe.makeCancelable(e,t=>t.close()),this.modelPromise.then(t=>{this.modelPromise=null,this.setModel(t)}).catch(t=>{if(Oe.isCanceled(t)){ye.debug2("setNextModel cancelled");return}ye.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new Pe(R.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(R.EVENT),n=0;n<t.length;n+=1)e.addEventListener(t[n],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(R.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 xe(this.originalModel)?this.originalModel.partitionColumns:[]}get partitionConfig(){return!xe(this.originalModel)||!this.originalModel.isPartitionRequired?null:this.partition}set partitionConfig(e){if(!this.isPartitionRequired)throw new Error("Partitions are not available");ye.debug("set partitionConfig",e),this.partition=e;var t=Promise.resolve(this.originalModel);e!=null&&xe(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(!xe(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionKeysTable()}partitionMergedTable(){if(!xe(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionMergedTable()}partitionTable(e){if(!xe(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionTable(e)}get rollupConfig(){return this.rollup}set rollupConfig(e){if(ye.debug("set rollupConfig",e),!this.isRollupAvailable)throw new Error("Rollup Rows are not available");if(!Wr(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);je(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(ye.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){ye.debug("Ignore same selectDistinctColumns",e);return}this.selectDistinct=e;var t=e.map(i=>this.originalColumns.find(a=>a.name===i)).filter(i=>i!=null),n=Promise.resolve(this.originalModel);je(this.originalModel)&&t.length>0&&(n=this.originalModel.table.selectDistinct(t).then(i=>Ke(this.dh,i,this.formatter))),this.setNextModel(n)}get isFilterRequired(){return this.originalModel.isFilterRequired}get isPartitionRequired(){return xe(this.originalModel)?this.originalModel.isPartitionRequired:!1}get formatter(){return this.originalModel.formatter}set formatter(e){this.originalModel.formatter=e}}const Wl=zl;function rr(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function ql(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){rr(a,n,i,l,s,"next",o)}function s(o){rr(a,n,i,l,s,"throw",o)}l(void 0)})}}class Xl{static makeModel(e,t){var n=arguments;return ql(function*(){var i=n.length>2&&n[2]!==void 0?n[2]:new Le(e),a=null;return!H.isTreeTable(t)&&!H.isPartitionedTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new Wl(e,t,i,a)})()}}const bi=Xl;function ir(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function ar(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ir(Object(t),!0).forEach(function(n){Zl(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):ir(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Zl(r,e,t){return e=Yl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Yl(r){var e=Ql(r,"string");return typeof e=="symbol"?e:String(e)}function Ql(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function Ci(r,e){var t=["isStuckToBottom","isStuckToRight","movedColumns","movedRows"];return r===e||t.every(n=>r[n]===e[n])}function Si(r,e){var t=["advancedFilters","aggregationSettings","customColumnFormatMap","isFilterBarShown","quickFilters","customColumns","reverse","rollupConfig","showSearchBar","searchValue","selectDistinctColumns","selectedSearchColumns","sorts","invertSearchColumns","pendingDataMap","frozenColumns","conditionalFormats","columnHeaderGroups","partitionConfig"];return r===e||r.metrics!=null&&e.metrics!=null&&r.metrics.userColumnWidths===e.metrics.userColumnWidths&&r.metrics.userRowHeights===e.metrics.userRowHeights&&t.every(n=>r[n]===e[n])}function Jl(){return k((r,e)=>U.dehydrateGridState(r,e),(r,e)=>{var[t,n]=r,[i,a]=e;return t===i&&Ci(n,a)})}function es(){return k((r,e)=>{var t=new U(r.dh);return t.dehydrateIrisGridState(r,e)},(r,e)=>{var[t,n]=r,[i,a]=e;return t===i&&Si(n,a)})}function ts(){return k((r,e,t)=>{var n=new U(r.dh);return ar(ar({},n.dehydrateIrisGridState(r,e)),U.dehydrateGridState(r,t))},(r,e)=>{var[t,n,i]=r,[a,l,s]=e;return t===a&&Si(n,l)&&Ci(i,s)})}var ln={makeMemoizedGridStateDehydrator:Jl,makeMemoizedIrisGridStateDehydrator:es,makeMemoizedCombinedGridStateDehydrator:ts};function gn(){var r=g.useContext(ga);if(r==null)throw new Error("LayoutManager not available, did you add a LayoutManagerContext.Provider to the tree?");return r}function bn(r,e,t){return e=ns(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ns(r){var e=rs(r,"string");return typeof e=="symbol"?e:String(e)}function rs(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Kt{}bn(Kt,"OPEN","ChartEvent.OPEN");bn(Kt,"CLOSE","ChartEvent.CLOSE");bn(Kt,"COLUMN_SELECTED","ChartEvent.COLUMN_SELECTED");const sn=Kt;function at(r,e,t){return e=is(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function is(r){var e=as(r,"string");return typeof e=="symbol"?e:String(e)}function as(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Ve{}at(Ve,"OPEN_GRID","IrisGridEvent.OPEN_GRID");at(Ve,"CLOSE_GRID","IrisGridEvent.CLOSE_GRID");at(Ve,"DATA_SELECTED","IrisGridEvent.DATA_SELECTED");at(Ve,"COLUMN_SELECTED","IrisGridEvent.COLUMN_SELECTED");at(Ve,"STATE_CHANGED","IrisGridEvent.STATE_CHANGED");at(Ve,"CREATE_CHART","IrisGridevent.CREATE_CHART");const fe=Ve;function yi(r,e,t){return e=ls(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ls(r){var e=ss(r,"string");return typeof e=="symbol"?e:String(e)}function ss(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Cn{}yi(Cn,"OPEN","PandasEvent.OPEN");yi(Cn,"CLOSE","PandasEvent.CLOSE");const os=Cn;function Ft(r){var{widgetType:e,widgetName:t,glContainer:n,description:i,children:a}=r,l=F.getTitleFromContainer(n);return u.jsxs("div",{className:"tab-tooltip-grid-container",children:[u.jsxs("span",{className:"tab-tooltip-title",children:[e," Name"]}),u.jsxs("div",{className:"tab-tooltip-name-wrapper",children:[u.jsx("span",{className:"tab-tooltip-name",children:t}),u.jsx(ba,{className:"tab-tooltip-copy",tooltip:"Copy name",copy:t})]}),t!==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})]}),i&&u.jsx("div",{className:"tab-tooltip-description",children:i}),a]})}Ft.propTypes={glContainer:qr.Container.isRequired,widgetType:L.string,widgetName:L.string,description:L.string,children:L.node};Ft.defaultProps={widgetType:"",widgetName:"",description:null,children:null};function Pi(r,e,t){return e=ds(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ds(r){var e=us(r,"string");return typeof e=="symbol"?e:String(e)}function us(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class wi extends g.PureComponent{constructor(e){super(e),Pi(this,"getCachedRenderTabTooltip",k((t,n,i,a,l)=>t?()=>u.jsx(Ft,{glContainer:n,widgetType:i,widgetName:a,description:l}):null)),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleSessionOpened=this.handleSessionOpened.bind(this),this.handleCopyName=this.handleCopyName.bind(this),this.state={isClientDisconnected:!1,isPanelDisconnected:!1,isWidgetDisconnected:!1,isWaitingForReconnect:!1,isPanelInactive:!1}}handleCopyName(){var{widgetName:e}=this.props;Ca(e)}getErrorMessage(){var{errorMessage:e}=this.props,{isClientDisconnected:t,isPanelDisconnected:n,isWidgetDisconnected:i,isWaitingForReconnect:a}=this.state;if(e)return"".concat(e);if(t&&n&&a)return`Disconnected from server.
1
+ import{r as g,J as u,M as ie,a1 as $e,a2 as ne,bz as pa,ab as k,bA as Wr,a3 as L,N as re,a0 as Ue,V as ee,I as ae,b2 as va,b1 as Vn,av as We,a5 as fa,ad as ma}from"./vendor-3e5e4180.js";import{F as Le,cD as Pe,P as Oe,af as K,cE as Jt,c as H,bU as ga,bM as F,J as ba,bT as qr,a7 as Ca,ai as Xr,cF as yt,cG as ve,B as x,cH as nt,aa as we,U as Zr,cI as dn,cJ as Yr,M as de,w as rn,cK as Vt,c1 as Qr,Z as un,cL as Gt,cM as Pt,cN as wt,cO as rt,G as Ht,S as bt,cP as hn,i as Jr,b as ei,a3 as Sa,a8 as ya,cQ as ti,cR as ni,aN as Pa,ab as J,c0 as wa,cS as Gn,cw as Ea,cx as Fa,u as it,aX as Ta,o as ri,cd as Ne,bZ as Et,bO as Me,X as Da,ak as ii,co as Ma,cm as La,c9 as ai,ca as li,y as an,cb as Oa,cr as si,T as ct,N as Na,s as ka,H as Ia,cT as oi,cU as di,cV as ui,cW as hi,a$ as xa,ac as ci,cc as _a,b_ as Ra,cB as ja,cX as Aa,cz as $a,ah as Ua,L as Va,cC as Ga,cA as Ha,a9 as Ba,ad as Ka,cY as za,a1 as Wa,cZ as qa,a2 as Xa,aq as Za,c_ as Ya,ar as Qa}from"./ControlType-7a644160.js";import{L as V,e as D,am as Ja,an as el,I as cn,ao as tl,ap as nl,aq as pi,f as pn,ar as vi,as as Hn,w as Bn,g as rl,D as il,M as al,b as ll,c as sl,J as Ct,s as ol,at as dl,au as ul,d as hl,av as cl,aw as pl}from"./index-dd7f33be.js";import{C as vl,a as Z,b as R,G as qe,S as fi,L as mi,I as vn}from"./IrisGridModel-0fc1dc91.js";import{I as gi,M as Kn,j as fl,i as je,h as xe,d as U,A as ml,k as gl,l as bl,m as Cl}from"./MissingPartitionError-24250c44.js";import{F as zn}from"./FormatterUtils-baed1012.js";import{_ as Sl}from"./monaco-b5248072.js";function fn(r){var{className:e,isFlipped:t,children:n,"data-testid":i}=r,a=d=>{if(n.length!==2)throw new Error("CardFlip requires 2 children to function");return n[d]},l=g.useRef(null),s=g.useCallback(d=>{d.target===d.currentTarget&&document.body.classList.add("card-flip--is-flipping")},[]),o=g.useCallback(d=>{d.target===d.currentTarget&&document.body.classList.remove("card-flip--is-flipping")},[]);return g.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:ie(e,{"card-flip--show-front":t,"card-flip--show-back":!t}),"data-testid":i,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 Wn(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function qn(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Wn(Object(t),!0).forEach(function(n){$(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Wn(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function $(r,e,t){return e=yl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function yl(r){var e=Pl(r,"string");return typeof e=="symbol"?e:String(e)}function Pl(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var z=V.module("FigureChartModel");class Bt extends vl{constructor(e,t){var n,i=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",$e(()=>{for(var a=Z.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?.showLegend)!==null&&h!==void 0?h:null),c.subscribe()},o=0;o<l.length;o+=1)s();this.pendingSeries=[]},Bt.ADD_SERIES_DEBOUNCE)),$(this,"getTimeZone",ne((a,l)=>{if(l!=null){var s=l.getColumnTypeFormatter(a);if(s!=null)return s.dhTimeZone}})),$(this,"getValueTranslator",ne((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.unwrapValue(o,s)})),$(this,"getValueParser",ne((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.wrapValue(o,a,s)})),$(this,"getRangeParser",ne((a,l)=>s=>{var[o,d]=s,h=this.getValueParser(a,l);return o=h(o),d=h(d),[o,d]})),$(this,"getAxisRangeParser",ne((a,l)=>s=>{var o=Z.getSourceForAxis(a,s);return o!=null?this.getRangeParser(o.columnType,l):d=>d})),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 Z(e),this.figure=t,this.settings=i,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=Z.getAxisTypeMap(this.figure),i=[];this.seriesToProcess=new Set;for(var a=function(){for(var p=t[l],v=0;v<p.series.length;v+=1){var m=p.series[v];i.push(m.name),e.addSeries(m,n,p.showLegend)}var{axes:C,title:f}=p;if(f!=null&&f.length>0&&(t.length>1||e.figure.title!=null)){var b=C.find(E=>E.type===e.dh.plot.AxisType.X),y=C.find(E=>E.type===e.dh.plot.AxisType.Y);if(b==null||y==null)z.warn("Chart title provided, but unknown how to map to the correct axes for this chart type",p);else{var S,P,w,T,N=((S=(P=n.get(b.type))===null||P===void 0?void 0:P.findIndex(E=>E===b))!==null&&S!==void 0?S:0)+1,O=((w=(T=n.get(y.type))===null||T===void 0?void 0:T.findIndex(E=>E===y))!==null&&w!==void 0?w:0)+1,M={align:"center",x:.5,y:1,yshift:17,text:f,showarrow:!1,xref:"x".concat(N," domain"),yref:"y".concat(O," domain")};e.layout.annotations==null?e.layout.annotations=[M]:e.layout.annotations.push(M)}}},l=0;l<t.length;l+=1)a();for(var s=[...this.seriesDataMap.keys()],o=s.filter(c=>i.indexOf(c)<0),d=0;d<o.length;d+=1){var h=o[d];this.seriesDataMap.delete(h)}}addSeries(e,t,n){var i,a,{dh:l}=this,s=this.chartUtils.makeSeriesDataFromSeries(e,t,Z.getSeriesVisibility(e.name,this.settings),n,(i=(a=this.renderOptions)===null||a===void 0?void 0:a.webgl)!==null&&i!==void 0?i:!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=Z.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){z.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&&(z.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){z.debug("Downsample started",e),this.fireDownsampleStart(e.detail)}handleDownsampleFinish(e){z.debug("Downsample finished",e),this.fireDownsampleFinish(e.detail)}handleDownsampleFail(e){z.error("Downsample failed",e),this.fireDownsampleFail(e.detail)}handleDownsampleNeeded(e){z.info("Downsample needed",e),this.fireDownsampleNeeded(e.detail)}handleFigureUpdated(e){var{detail:t}=e,{series:n}=t;z.debug2("handleFigureUpdated",n);for(var i=0;i<n.length;i+=1){var a=n[i];z.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){z.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){z.debug("Figure disconnected",e),this.isConnected=!1,this.listeners.length>0&&this.unsubscribeFigure(),this.fireDisconnect()}handleFigureReconnected(e){z.debug("Figure reconnected",e),this.isConnected=!0,this.initAllSeries(),this.fireReconnect(),this.listeners.length>0&&this.subscribeFigure()}handleFigureSeriesAdded(e){var{detail:t}=e;z.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 i=(t=(n=(e??"").match(/<br>/g))===null||n===void 0?void 0:n.length)!==null&&t!==void 0?t:0,a=Z.DEFAULT_MARGIN.t+i*Z.SUBTITLE_LINE_HEIGHT;this.layout.margin?this.layout.margin.t=a:this.layout.margin={t:a},typeof this.layout.title=="string"?this.layout.title=e:(this.layout.title=qn({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=qn({},this.layout.title.pad),this.layout.title.pad.t=Z.DEFAULT_TITLE_PADDING.t+i*Z.SUBTITLE_LINE_HEIGHT*.5),this.fireLayoutUpdated({title:this.layout.title})}getPlotWidth(){var e,t,n,i;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=(i=this.layout.margin)===null||i===void 0?void 0:i.r)!==null&&n!==void 0?n:0),0)}getPlotHeight(){var e,t,n,i;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=(i=this.layout.margin)===null||i===void 0?void 0:i.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)=>{z.debug("Assigning ".concat(n),this.layout[n],t);var i=this.layout[n];i!=null?Object.assign(i,t):z.debug("Ignoring null layout.".concat(n))})}}setDataArrayForSeries(e,t,n){var{name:i,plotStyle:a}=e,l=this.seriesDataMap.get(i),s=this.chartUtils.getPlotlyProperty(a,t);l&&pa(l,s,n)}cleanSeries(e){var{dh:t}=this,{name:n,plotStyle:i}=e,a=this.seriesDataMap.get(n);if(a!=null){if(i===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(i===t.plot.SeriesPlotStyle.LINE||i===t.plot.SeriesPlotStyle.ERROR_BAR||i===t.plot.SeriesPlotStyle.BAR){var{x:h,xLow:c,xHigh:p,y:v,yLow:m,yHigh:C}=a;c&&p&&c!==h&&(a.error_x=Z.getPlotlyErrorBars(h,c,p)),m&&C&&m!==v&&(a.error_y=Z.getPlotlyErrorBars(v,m,C))}else if(i===t.plot.SeriesPlotStyle.TREEMAP){var{ids:f,labels:b}=a;f!==void 0&&b===void 0&&(a.labels=f)}}}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){z.warn("Trying to set a filter, but no one click!");return}z.debug("setFilter",e);for(var n=function(){var l=t.oneClicks[i],{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)})},i=0;i<this.oneClicks.length;i+=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}}$(Bt,"ADD_SERIES_DEBOUNCE",50);const Xn=Bt;function Zn(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function en(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Zn(a,n,i,l,s,"next",o)}function s(o){Zn(a,n,i,l,s,"throw",o)}l(void 0)})}}class mn{static makeModelFromSettings(e,t,n){return en(function*(){var i=yield mn.makeFigureFromSettings(e,t,n);return new Xn(e,i,t)})()}static makeFigureFromSettings(e,t,n){return en(function*(){var i=yield n.copy();return i.applyCustomColumns(n.customColumns),i.applyFilter(n.filter),i.applySort(n.sort),e.plot.Figure.create(new Z(e).makeFigureSettings(t,i))})()}static makeModel(e,t,n){return en(function*(){return new Xn(e,n,t)})()}}const ft=mn;function Yn(r){return r.setFigure!==void 0}function Qn(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function _e(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Qn(a,n,i,l,s,"next",o)}function s(o){Qn(a,n,i,l,s,"throw",o)}l(void 0)})}}function ce(r,e,t){return e=wl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function wl(r){var e=El(r,"string");return typeof e=="symbol"?e:String(e)}function El(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Ce=V.module("IrisGridTableModel");class Fl extends gi{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Le(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,n,i),ce(this,"userFrozenColumns",void 0),ce(this,"customColumnList",void 0),ce(this,"formatColumnList",void 0),ce(this,"initialFilters",[]),ce(this,"getMemoizedKeyColumnSet",k(a=>new Set(a??K))),ce(this,"getMemoizedFrontColumns",k(a=>a??K)),ce(this,"getMemoizedBackColumns",k(a=>a??K)),ce(this,"getMemoizedFrozenColumns",k((a,l)=>{var s;return(s=l??a)!==null&&s!==void 0?s:K})),ce(this,"getCachedFilterableColumnSet",k(a=>new Set(a.map((l,s)=>s)))),ce(this,"getCachedPartitionColumns",k(a=>a.filter(l=>l.isPartitionColumn))),this.customColumnList=[],this.formatColumnList=[],this.initialFilters=t.filter}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 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 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(Ce.debug2("set customColumns",e,this.customColumnList,e===this.customColumnList),this.customColumnList.length===0&&e.length===0){Ce.debug("Ignore empty initial customColumns"),this.customColumnList=e;return}if(this.customColumnList===e){Ce.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(Ce.debug2("set formatColumns",e,this.formatColumnList,e===this.formatColumnList),this.formatColumnList.length===0&&e.length===0){Ce.debug("Ignore empty initial formatColumns"),this.formatColumnList=e;return}if(this.formatColumnList===e){Ce.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 Pe(R.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*(){Ce.debug("getting partition table for partitions",e);for(var n=[],i=0;i<t.partitionColumns.length;i+=1){var a=e[i],l=t.partitionColumns[i],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(Ce.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 Pe(R.EVENT.UPDATED));return}this.totalsTablePromise=Oe.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{Oe.isCanceled(t)||(Ce.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new Pe(R.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.isPartitionRequired}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,i=this;return _e(function*(){var a;if(!i.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));D(i.inputTable);var{keyColumns:l}=i.inputTable;if(i.keyColumnSet.size===0)throw new Error("No key columns to allow deletion");var s=i.getPendingAreaRange(),o=e.map(S=>qe.intersection(s,S)).filter(S=>S!=null).map(S=>(D(S),qe.offset(S,0,-(i.floatingTopRowCount+i.table.size))));if(o.length>0){for(var d=new Map(t()),h=0;h<o.length;h+=1){var c=o[h];D(c.startRow),D(c.endRow);for(var p=c.startRow;p<=c.endRow;p+=1)d.delete(p)}n(d),i.formattedStringData=[],i.dispatchEvent(new Pe(R.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new Pe(R.EVENT.UPDATED))}var v=i.getTableAreaRange(),m=e.map(S=>qe.intersection(v,S)).filter(S=>S!=null);if(!(m.length<=0)){var[C,f]=yield Promise.all([i.snapshot(m.map(S=>(D(S),l.map(P=>{var w=i.getColumnIndexByName(P.name);if(w==null)throw new Error("Key column ".concat(P.name," not found"));return new qe(w,S.startRow,w,S.endRow)}))).flat()),i.table.copy()]),b=C.map(S=>{for(var P=[],w=0;w<l.length;w+=1){var T=l[w],N=S[w],O=i.tableUtils.makeNullableEqFilter(T,N);P.push(O)}return P.reduce((M,E)=>{var I;return(I=M?.and(E))!==null&&I!==void 0?I:E})}),y=b.reduce((S,P)=>{var w;return(w=S?.or(P))!==null&&w!==void 0?w:P});f.applyFilter([y]),yield(a=i.inputTable)===null||a===void 0?void 0:a.deleteTable(f),f.close()}})()}seekRow(e,t,n,i,a,l,s){var o=this;return _e(function*(){return o.table.seekRow(e,t,n,i,a,l,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}const Tl=Fl;function Dl(r,e,t){return e=Ml(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Ml(r){var e=Ll(r,"string");return typeof e=="symbol"?e:String(e)}function Ll(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Ol extends R{constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new Le(e);super(e),Dl(this,"modelFormatter",void 0),this.modelFormatter=t}get rowCount(){return 0}get columnCount(){return 0}textForCell(e,t){return""}textForColumnHeader(e,t){}get columns(){return K}getColumnIndexByName(e){}get initialMovedColumns(){return K}get initialMovedRows(){return K}get initialColumnHeaderGroups(){return K}get groupedColumns(){return K}formatForCell(e,t){}valueForCell(e,t){}get filter(){return K}set filter(e){}get partition(){return K}set partition(e){}get partitionColumns(){return K}get formatter(){return this.modelFormatter}set formatter(e){this.modelFormatter=e}displayString(e,t,n){return""}get sort(){return K}set sort(e){}get customColumns(){return K}set customColumns(e){}get formatColumns(){return K}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 K}set selectDistinctColumns(e){}get pendingDataMap(){return Jt}set pendingDataMap(e){}get pendingRowCount(){return 0}set pendingRowCount(e){}get pendingDataErrors(){return Jt}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,i,a,l,s){return Promise.resolve(0)}get columnHeaderGroups(){return K}set columnHeaderGroups(e){}get columnHeaderGroupMap(){return Jt}getColumnHeaderParentGroup(e,t){}}const Nl=Ol;function Jn(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function Dt(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Jn(a,n,i,l,s,"next",o)}function s(o){Jn(a,n,i,l,s,"throw",o)}l(void 0)})}}function kl(r,e,t){return e=Il(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Il(r){var e=xl(r,"string");return typeof e=="symbol"?e:String(e)}function xl(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class _l extends Nl{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Le(e);super(e,n),kl(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 Dt(function*(){return e.partitionedTable.getKeyTable()})()}partitionBaseTable(){var e=this;return Dt(function*(){return e.partitionedTable.getBaseTable()})()}partitionMergedTable(){var e=this;return Dt(function*(){return e.partitionedTable.getMergedTable()})()}partitionTable(e){var t=this;return Dt(function*(){try{var n=yield t.partitionedTable.getTable(e);if(n==null)throw new Kn("Partition not found");return n}catch(i){throw fl(i)?i:new Kn("Unable to retrieve partition")}})()}}const Rl=_l;function er(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function jl(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){er(a,n,i,l,s,"next",o)}function s(o){er(a,n,i,l,s,"throw",o)}l(void 0)})}}function tr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function nr(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?tr(Object(t),!0).forEach(function(n){ze(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):tr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function ze(r,e,t){return e=Al(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Al(r){var e=$l(r,"string");return typeof e=="symbol"?e:String(e)}function $l(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Ul=V.module("IrisGridTreeTableModel");function Vl(r){return r.layoutHints!==void 0}class Gl extends gi{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Le(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,n,i),ze(this,"virtualColumns",void 0),ze(this,"getCachedColumns",k((a,l)=>[...a,...l])),ze(this,"getCachedGroupColumns",k((a,l)=>[...a,...l])),ze(this,"getCachedFilterableColumnSet",k((a,l,s,o,d)=>l?new Set(a.filter(h=>!d.includes(h)&&!s.includes(h)).map(h=>a.findIndex(c=>h.name===c.name))):new Set((o?.length>0?o:a).filter(h=>!d.includes(h)).map(h=>a.findIndex(c=>h.name===c.name))))),ze(this,"getCachedGroupedColumnSet",k(a=>new Set(a.map(l=>this.columns.findIndex(s=>l.name===s.name))))),this.virtualColumns=t.groupedColumns.length>1?[{name:"__DH_UI_GROUP__",displayName:"Group",type:H.dataType.STRING,constituentType:H.dataType.STRING,isPartitionColumn:!1,isSortable:!1,isProxy:!0,description:"Key column",index:-1,filter:()=>{throw new Error("Filter not implemented for virtual column")},sort:()=>{throw new Error("Sort not implemented for virtual column")},formatColor:()=>{throw new Error("Color not implemented for virtual column")},get:()=>{throw new Error("get not implemented for virtual column")},getFormat:()=>{throw new Error("getFormat not implemented for virtual column")},formatNumber:()=>{throw new Error("formatNumber not implemented for virtual column")},formatDate:()=>{throw new Error("formatDate not implemented for virtual column")}}]:[]}applyBufferedViewport(e,t,n){var i=[...this.table.groupedColumns,...n.filter(a=>!this.virtualColumns.includes(a)&&!this.groupedColumns.includes(a))];this.table.setViewport(e,t,i)}textForCell(e,t){var n=this.sourceColumn(e,t),i=this.row(t);if(i!=null&&n!=null){if(!i.hasChildren&&n.constituentType!=null){var a=this.valueForCell(e,t);return this.displayString(a,n.constituentType,n.name)}if(i.hasChildren&&i.depth<=e+1&&this.valueForCell(e,t)===null&&this.getCachedGroupedColumnSet(this.groupedColumns).has(e))return""}return super.textForCell(e,t)}extractViewportRow(e,t){var{isExpanded:n,hasChildren:i,depth:a}=e,l=super.extractViewportRow(e,t),s=new Map(l.data);if(i)for(var o=0;o<this.virtualColumns.length;o+=1){var d=o+(a-1)+(this.virtualColumns.length-1),h=s.get(d);h==null?Ul.warn("Missing key data for virtual column",o,a,d,e):s.set(o,h)}return nr(nr({},l),{},{data:s,isExpanded:n,hasChildren:i,depth:a})}snapshot(e,t){var n=arguments,i=this;return jl(function*(){var a,l,s=n.length>2&&n[2]!==void 0?n[2]:y=>y;D(i.viewport),D(i.viewportData);var o=(a=i.viewport.columns)!==null&&a!==void 0?a:i.columns,d=[];t!=null&&t&&d.push(o.map(y=>y.name));for(var h=new qe(0,(l=i.viewportData)===null||l===void 0?void 0:l.offset,o.length,i.viewportData.offset+i.viewportData.rows.length),c=0;c<e.length;c+=1){var p=qe.intersection(h,e[c]);D(p),D(p.startRow),D(p.endRow);for(var v=p.startRow;v<=p.endRow;v+=1){var m=[],C=i.viewportData.rows[v-i.viewportData.offset];D(p.startColumn),D(p.endColumn);for(var f=p.startColumn;f<=p.endColumn;f+=1){var b;m.push(s((b=C.data.get(f))===null||b===void 0?void 0:b.value,i.columns[f]))}d.push(m)}}return d})()}get columns(){return this.getCachedColumns(this.virtualColumns,super.columns)}get aggregatedColumns(){return this.isAggregatedColumnsAvailable?this.table.aggregatedColumns:K}get groupedColumns(){return this.getCachedGroupColumns(this.virtualColumns,this.table.groupedColumns)}sourceForCell(e,t){if(e>=this.virtualColumns.length)return{column:e,row:t};var n=this.depthForRow(t);return{column:e+n,row:t}}sourceColumn(e,t){if(e>=this.virtualColumns.length)return super.sourceColumn(e,t);var n=this.depthForRow(t);return this.columns[e+n]}getClearFilterRange(e){return e>=this.virtualColumns.length?super.getClearFilterRange(e):[this.virtualColumns.length,this.groupedColumns.length]}get layoutHints(){if(Vl(this.table))return this.table.layoutHints}get hasExpandableRows(){return!0}get isAggregatedColumnsAvailable(){return this.table.aggregatedColumns!==void 0}get isExpandAllAvailable(){return this.table.expandAll!==void 0}get isChartBuilderAvailable(){return!1}get isSelectDistinctAvailable(){return!1}get isReversible(){return!1}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns,this.isAggregatedColumnsAvailable,this.aggregatedColumns,this.groupedColumns,this.virtualColumns).has(e)}isColumnMovable(e){return e>=this.groupedColumns.length}isRowExpandable(e){var t,n=this.row(e);return(t=n?.hasChildren)!==null&&t!==void 0?t:!1}isRowExpanded(e){var t,n=this.row(e);return(t=n?.isExpanded)!==null&&t!==void 0?t:!1}setRowExpanded(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.isExpandAllAvailable?this.table.setExpanded(e,t,n):this.table.setExpanded(e,t)}expandAll(){this.table.expandAll!=null&&this.table.expandAll()}collapseAll(){this.table.collapseAll!=null&&this.table.collapseAll()}depthForRow(e){var t,n=this.row(e);return((t=n?.depth)!==null&&t!==void 0?t:1)-1}updateFrozenColumns(e){if(e.length>0)throw new Error("Cannot freeze columns on a tree table")}}const Hl=Gl;function Se(r,e,t){return e=Bl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Bl(r){var e=Kl(r,"string");return typeof e=="symbol"?e:String(e)}function Kl(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var ye=V.module("IrisGridProxyModel");function Ke(r,e,t,n){return H.isTreeTable(e)?new Hl(r,e,t):H.isPartitionedTable(e)?new Rl(r,e,t):new Tl(r,e,t,n)}class zl extends R{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Le(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),Se(this,"model",void 0),Se(this,"dh",void 0),Se(this,"originalModel",void 0),Se(this,"modelPromise",void 0),Se(this,"rollup",void 0),Se(this,"partition",void 0),Se(this,"selectDistinct",void 0),Se(this,"currentViewport",void 0),Se(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,i);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){ye.debug2("handleModelEvent",e);var{detail:t,type:n}=e;this.dispatchEvent(new Pe(n,{detail:t}))}setModel(e){ye.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 Pe(R.EVENT.COLUMNS_CHANGED,{detail:e.columns}));else if(this.currentViewport!=null){var{top:i,bottom:a,columns:l}=this.currentViewport;e.setViewport(i,a,l)}je(e)&&this.dispatchEvent(new Pe(R.EVENT.TABLE_CHANGED,{detail:e.table}))}setNextModel(e){ye.debug2("setNextModel"),this.modelPromise&&this.modelPromise.cancel(),this.listenerCount>0&&this.removeListeners(this.model),this.modelPromise=Oe.makeCancelable(e,t=>t.close()),this.modelPromise.then(t=>{this.modelPromise=null,this.setModel(t)}).catch(t=>{if(Oe.isCanceled(t)){ye.debug2("setNextModel cancelled");return}ye.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new Pe(R.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(R.EVENT),n=0;n<t.length;n+=1)e.addEventListener(t[n],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(R.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 xe(this.originalModel)?this.originalModel.partitionColumns:[]}get partitionConfig(){return!xe(this.originalModel)||!this.originalModel.isPartitionRequired?null:this.partition}set partitionConfig(e){if(!this.isPartitionRequired)throw new Error("Partitions are not available");ye.debug("set partitionConfig",e),this.partition=e;var t=Promise.resolve(this.originalModel);e!=null&&xe(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(!xe(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionKeysTable()}partitionMergedTable(){if(!xe(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionMergedTable()}partitionTable(e){if(!xe(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionTable(e)}get rollupConfig(){return this.rollup}set rollupConfig(e){if(ye.debug("set rollupConfig",e),!this.isRollupAvailable)throw new Error("Rollup Rows are not available");if(!Wr(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);je(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(ye.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){ye.debug("Ignore same selectDistinctColumns",e);return}this.selectDistinct=e;var t=e.map(i=>this.originalColumns.find(a=>a.name===i)).filter(i=>i!=null),n=Promise.resolve(this.originalModel);je(this.originalModel)&&t.length>0&&(n=this.originalModel.table.selectDistinct(t).then(i=>Ke(this.dh,i,this.formatter))),this.setNextModel(n)}get isFilterRequired(){return this.originalModel.isFilterRequired}get isPartitionRequired(){return xe(this.originalModel)?this.originalModel.isPartitionRequired:!1}get formatter(){return this.originalModel.formatter}set formatter(e){this.originalModel.formatter=e}}const Wl=zl;function rr(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function ql(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){rr(a,n,i,l,s,"next",o)}function s(o){rr(a,n,i,l,s,"throw",o)}l(void 0)})}}class Xl{static makeModel(e,t){var n=arguments;return ql(function*(){var i=n.length>2&&n[2]!==void 0?n[2]:new Le(e),a=null;return!H.isTreeTable(t)&&!H.isPartitionedTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new Wl(e,t,i,a)})()}}const bi=Xl;function ir(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function ar(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ir(Object(t),!0).forEach(function(n){Zl(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):ir(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Zl(r,e,t){return e=Yl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Yl(r){var e=Ql(r,"string");return typeof e=="symbol"?e:String(e)}function Ql(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function Ci(r,e){var t=["isStuckToBottom","isStuckToRight","movedColumns","movedRows"];return r===e||t.every(n=>r[n]===e[n])}function Si(r,e){var t=["advancedFilters","aggregationSettings","customColumnFormatMap","isFilterBarShown","quickFilters","customColumns","reverse","rollupConfig","showSearchBar","searchValue","selectDistinctColumns","selectedSearchColumns","sorts","invertSearchColumns","pendingDataMap","frozenColumns","conditionalFormats","columnHeaderGroups","partitionConfig"];return r===e||r.metrics!=null&&e.metrics!=null&&r.metrics.userColumnWidths===e.metrics.userColumnWidths&&r.metrics.userRowHeights===e.metrics.userRowHeights&&t.every(n=>r[n]===e[n])}function Jl(){return k((r,e)=>U.dehydrateGridState(r,e),(r,e)=>{var[t,n]=r,[i,a]=e;return t===i&&Ci(n,a)})}function es(){return k((r,e)=>{var t=new U(r.dh);return t.dehydrateIrisGridState(r,e)},(r,e)=>{var[t,n]=r,[i,a]=e;return t===i&&Si(n,a)})}function ts(){return k((r,e,t)=>{var n=new U(r.dh);return ar(ar({},n.dehydrateIrisGridState(r,e)),U.dehydrateGridState(r,t))},(r,e)=>{var[t,n,i]=r,[a,l,s]=e;return t===a&&Si(n,l)&&Ci(i,s)})}var ln={makeMemoizedGridStateDehydrator:Jl,makeMemoizedIrisGridStateDehydrator:es,makeMemoizedCombinedGridStateDehydrator:ts};function gn(){var r=g.useContext(ga);if(r==null)throw new Error("LayoutManager not available, did you add a LayoutManagerContext.Provider to the tree?");return r}function bn(r,e,t){return e=ns(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ns(r){var e=rs(r,"string");return typeof e=="symbol"?e:String(e)}function rs(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Kt{}bn(Kt,"OPEN","ChartEvent.OPEN");bn(Kt,"CLOSE","ChartEvent.CLOSE");bn(Kt,"COLUMN_SELECTED","ChartEvent.COLUMN_SELECTED");const sn=Kt;function at(r,e,t){return e=is(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function is(r){var e=as(r,"string");return typeof e=="symbol"?e:String(e)}function as(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Ve{}at(Ve,"OPEN_GRID","IrisGridEvent.OPEN_GRID");at(Ve,"CLOSE_GRID","IrisGridEvent.CLOSE_GRID");at(Ve,"DATA_SELECTED","IrisGridEvent.DATA_SELECTED");at(Ve,"COLUMN_SELECTED","IrisGridEvent.COLUMN_SELECTED");at(Ve,"STATE_CHANGED","IrisGridEvent.STATE_CHANGED");at(Ve,"CREATE_CHART","IrisGridevent.CREATE_CHART");const fe=Ve;function yi(r,e,t){return e=ls(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ls(r){var e=ss(r,"string");return typeof e=="symbol"?e:String(e)}function ss(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Cn{}yi(Cn,"OPEN","PandasEvent.OPEN");yi(Cn,"CLOSE","PandasEvent.CLOSE");const os=Cn;function Ft(r){var{widgetType:e,widgetName:t,glContainer:n,description:i,children:a}=r,l=F.getTitleFromContainer(n);return u.jsxs("div",{className:"tab-tooltip-grid-container",children:[u.jsxs("span",{className:"tab-tooltip-title",children:[e," Name"]}),u.jsxs("div",{className:"tab-tooltip-name-wrapper",children:[u.jsx("span",{className:"tab-tooltip-name",children:t}),u.jsx(ba,{className:"tab-tooltip-copy",tooltip:"Copy name",copy:t})]}),t!==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})]}),i&&u.jsx("div",{className:"tab-tooltip-description",children:i}),a]})}Ft.propTypes={glContainer:qr.Container.isRequired,widgetType:L.string,widgetName:L.string,description:L.string,children:L.node};Ft.defaultProps={widgetType:"",widgetName:"",description:null,children:null};function Pi(r,e,t){return e=ds(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ds(r){var e=us(r,"string");return typeof e=="symbol"?e:String(e)}function us(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class wi extends g.PureComponent{constructor(e){super(e),Pi(this,"getCachedRenderTabTooltip",k((t,n,i,a,l)=>t?()=>u.jsx(Ft,{glContainer:n,widgetType:i,widgetName:a,description:l}):null)),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleSessionOpened=this.handleSessionOpened.bind(this),this.handleCopyName=this.handleCopyName.bind(this),this.state={isClientDisconnected:!1,isPanelDisconnected:!1,isWidgetDisconnected:!1,isWaitingForReconnect:!1,isPanelInactive:!1}}handleCopyName(){var{widgetName:e}=this.props;Ca(e)}getErrorMessage(){var{errorMessage:e}=this.props,{isClientDisconnected:t,isPanelDisconnected:n,isWidgetDisconnected:i,isWaitingForReconnect:a}=this.state;if(e)return"".concat(e);if(t&&n&&a)return`Disconnected from server.
2
2
  Check your internet connection.`;if(t&&n)return"Disconnected from server.";if(n){var{widgetName:l,widgetType:s}=this.props;return'Variable "'.concat(l,`" not set.
3
3
  `).concat(s," does not exist yet.")}if(i){var{widgetName:o}=this.props;return"".concat(o," is unavailable.")}}handleSessionClosed(){var{onSessionClose:e}=this.props;this.setState({isPanelDisconnected:!0,isWaitingForReconnect:!1}),e(...arguments)}handleSessionOpened(){var{onSessionOpen:e}=this.props;e(...arguments)}render(){var{children:e,className:t,componentPanel:n,isLoaded:i,isLoading:a,glContainer:l,glEventHub:s,isDisconnected:o,isClonable:d,isRenamable:h,showTabTooltip:c,renderTabTooltip:p,widgetType:v,widgetName:m,description:C,onClearAllFilters:f,onHide:b,onFocus:y,onBlur:S,onResize:P,onShow:w,onTabBlur:T,onTabFocus:N,onTabClicked:O}=this.props,{isPanelDisconnected:M,isWidgetDisconnected:E,isPanelInactive:I}=this.state,q=this.getErrorMessage(),B=p??this.getCachedRenderTabTooltip(c,l,v,m,C),j=[{title:"Copy ".concat(v," Name"),group:Xr.groups.medium,order:20,action:this.handleCopyName}];return u.jsxs(yt,{className:ie(t,{disconnected:M||E||o,inactive:I}),componentPanel:n,glContainer:l,glEventHub:s,onClearAllFilters:f,onHide:b,onFocus:y,onBlur:S,onResize:P,onShow:w,onSessionClose:this.handleSessionClosed,onSessionOpen:this.handleSessionOpened,onTabBlur:T,onTabFocus:N,onTabClicked:O,renderTabTooltip:B,errorMessage:q,isLoaded:i,isLoading:a,isClonable:d,isRenamable:h,additionalActions:j,children:[e,I&&u.jsx("div",{className:"fill-parent-absolute"})]})}}Pi(wi,"defaultProps",{className:"",errorMessage:null,isClonable:!0,isDisconnected:!1,isLoading:!1,isLoaded:!0,isRenamable:!0,showTabTooltip:!0,widgetName:"Widget",widgetType:"Widget",renderTabTooltip:null,description:"",onFocus:()=>{},onBlur:()=>{},onHide:()=>{},onClearAllFilters:()=>{},onResize:()=>{},onSessionClose:()=>{},onSessionOpen:()=>{},onShow:()=>{},onTabBlur:()=>{},onTabFocus:()=>{},onTabClicked:()=>{}});const Tt=wi;function Ei(r){var{columnMap:e,inputFilterMap:t,linkedColumnMap:n,onAdd:i,onOpenLinker:a,waitingFilterMap:l,waitingInputMap:s}=r,o=g.useMemo(()=>{var m=Array.from(s.keys()),C=m.find(y=>t.get(y)!=null),f=m.find(y=>n.get(y)!=null),b=ve.join(m.map(y=>'"'.concat(y,'"')));return C!=null&&C&&f!=null&&f?"Use a filter control or linked table to set a value for ".concat(b):C!=null&&C?"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=g.useMemo(()=>Array.from(e.values()),[e]),h=g.useCallback(m=>{m.stopPropagation(),m.preventDefault(),i(Array.from(l.values()))},[i,l]),c=g.useCallback(m=>{m.stopPropagation(),m.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:ie("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(m=>{var C=l.has(m.name),f=C?Ja:el;return u.jsxs("div",{className:ie("waiting-filter-item",{"is-invalid":C}),children:[u.jsx(re,{icon:f}),m.name]},m.name)})}),u.jsxs("div",{children:[u.jsx(x,{kind:"primary",onClick:h,children:"Add Input Filters"}),u.jsx(x,{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})]})]})})}Ei.propTypes={columnMap:L.instanceOf(Map).isRequired,inputFilterMap:L.instanceOf(Map).isRequired,linkedColumnMap:L.instanceOf(Map).isRequired,onAdd:L.func.isRequired,onOpenLinker:L.func.isRequired,waitingFilterMap:L.instanceOf(Map).isRequired,waitingInputMap:L.instanceOf(Map).isRequired};function St(r){var{columns:e,onColumnSelected:t,onMouseEnter:n,onMouseLeave:i}=r;return u.jsx("div",{className:"chart-panel-overlay chart-column-selector-overlay",children:u.jsxs("div",{className:ie("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(fi,{className:ie("btn-chart-column-selector",St.makeButtonClassName(a.name)),onClick:()=>t(a.name),onMouseEnter:()=>{n&&n(a)},onMouseLeave:i,disabled:!a.isValid,isLinked:a.isActive,children:a.name},a.name))})]})})}St.makeButtonClassName=r=>"btn-chart-column-selector-".concat(r);St.defaultProps={onMouseEnter:()=>{},onMouseLeave:()=>{}};function Xe(r){return r.settings!==void 0}function Sn(r){return r.figure!==void 0}function Fi(r){if(r==null)return!1;var{settings:e,tableSettings:t}=r;return typeof e=="object"&&typeof t=="object"}function Ti(r){return r!=null&&Fi(r.panelState)}var yn=nt(we.COLUMNS_CHANGED),hs=yn.listen,jt=yn.emit,cs=yn.useListener,Pn=nt(we.TABLE_CHANGED);Pn.listen;var At=Pn.emit,ps=Pn.useListener,wn=nt(we.FILTERS_CHANGED);wn.listen;var Di=wn.emit,vs=wn.useListener,En=Object.freeze({LINK_POINT_SELECTED:"LinkerEvent.LINK_POINT_SELECTED",SOURCE_DATA_SELECTED:"LinkerEvent.SOURCE_DATA_SELECTED",REGISTER_TARGET:"LinkerEvent.REGISTER_TARGET"}),Fn=nt(En.LINK_POINT_SELECTED),fs=Fn.listen,zt=Fn.emit;Fn.useListener;var Tn=nt(En.SOURCE_DATA_SELECTED),ms=Tn.listen,Mi=Tn.emit;Tn.useListener;var Dn=nt(En.REGISTER_TARGET),gs=Dn.listen,lr=Dn.emit;Dn.useListener;function sr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function or(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?sr(Object(t),!0).forEach(function(n){se(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):sr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function se(r,e,t){return e=bs(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function bs(r){var e=Cs(r,"string");return typeof e=="symbol"?e:String(e)}function Cs(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Q=V.module("ChartPanel"),Ss=150;function ys(r){return r.inputFilters!=null}function Ps(r){return r.panelState!=null}class Wt extends g.Component{constructor(e){super(e),se(this,"panelContainer",void 0),se(this,"pending",void 0),se(this,"getWaitingInputMap",k((l,s,o)=>{if(!l)return new Map;var d=new Map(s);return o.forEach((h,c)=>{d.delete(c)}),d})),se(this,"getWaitingFilterMap",k((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})),se(this,"getInputFilterColumnMap",k((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})),se(this,"getLinkedColumnMap",k((l,s)=>{for(var o=new Map,d=F.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);D(v),o.set(p,v)}}return o})),se(this,"getSelectorColumns",k((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)})))),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=$e(this.updateModelFromSource.bind(this),Ss),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.panelContainer=ee.createRef(),this.pending=new Yr;var{metadata:t,panelState:n}=e,{filterValueMap:i=[],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(i),filterValueMap:new Map(i),model:void 0,columnMap:new Map,panelState:n}}componentDidMount(){this.isHidden()||(this.setState({isActive:!0}),this.initModel())}componentDidUpdate(e,t){var{inputFilters:n,source:i,makeModel:a}=this.props,{columnMap:l,model:s,filterMap:o,filterValueMap:d,isLinked:h,settings:c}=this.state;s&&(a!==e.makeModel&&this.initModel(),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&&Yn(s)&&(s.updateSettings(c),this.updatePanelState()),h!==t.isLinked?i&&(h?(this.startListeningToSource(i),this.updateModelFromSource()):this.stopListeningToSource(i)):h&&i!==e.source&&(e.source&&this.stopListeningToSource(e.source),i&&(this.startListeningToSource(i),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});var{makeModel:e}=this.props;this.pending.add(e(),t=>{t.close()}).then(this.handleLoadSuccess,this.handleLoadError)}startListeningToSource(e){Q.debug("startListeningToSource",e);var{model:t}=this.state;D(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;D(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,i=F.getIdFromPanel(this);D(i);var a=n.get(e);a!=null&&zt(t,i,a,{type:"chartLink"})}handleColumnMouseEnter(e){var{type:t,name:n}=e,{columnSelectionValidator:i}=this.props;Q.debug("handleColumnMouseEnter",i,t,n),i&&i(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(de.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:i}=this.props,{filterMap:a,isLinked:l}=this.state;e!==t&&(this.sendColumnChange(),this.updateColumnFilters(),this.updateInputFilters(n,a.size>0||e.isFilterRequired()),i&&l&&(this.startListeningToSource(i),this.updateModelFromSource()))})}handleLoadError(e){Oe.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:i}=this.state;if(!n||!i||!t){Q.debug2("updateModelFromSource ignoring",n,i,t);return}var{dh:a}=i;if(this.pending.cancel(),Xe(e)){var{settings:l}=e;this.pending.add(a.plot.Figure.create(new Z(a).makeFigureSettings(l,t))).then(s=>{Yn(i)&&i.setFigure(s)}).catch(this.handleLoadError)}this.updatePanelState()}updatePanelState(){var{sourcePanel:e}=this.props,{panelState:t,filterValueMap:n,settings:i}=this.state,{tableSettings:a}=t??{};if(e&&ys(e.props)&&Ps(e.state)){var{inputFilters:l}=e.props,{panelState:s}=e.state;s!=null&&(a=U.extractTableSettings(s,l))}this.setState({panelState:{settings:i,tableSettings:a,filterValueMap:Array.from(n)}})}handleError(){this.setState({isLoading:!1})}handleSettingsChanged(e){this.setState(t=>{var{settings:n}=t,i=or(or({},n),e);return Q.debug("Updated settings",i),{settings:i}})}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:i}=e;t.emit(we.OPEN_INPUT,{title:"".concat(n," Filter"),panelState:{name:n,type:i,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=F.getIdFromPanel(this);D(n),jt(t,n,Array.from(e.getFilterColumnMap().values()))}}getCoordinateForColumn(e){var t,n=St.makeButtonClassName(e);if(!this.panelContainer.current)return null;var i=this.panelContainer.current.querySelector(".".concat(n)),a=(t=i?.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 n,{columnMap:i,filterMap:a}=t,l=null,s=new Map(t.filterValueMap);return e.forEach((o,d)=>{var{columnType:h,filterList:c}=o,p=i.get(d);if(!(p==null||p.type!==h)){if(c.length===0){Q.debug("Ignoring empty filterList for column",d);return}var{value:v}=c[0];s.set(d,v),a.get(d)!==v&&(l===null&&(l=new Map(a)),l.set(d,v))}}),{filterValueMap:s,filterMap:(n=l)!==null&&n!==void 0?n:a}})}unsetFilterValue(e){this.setState(t=>{var{inputFilters:n}=this.props,{columnMap:i}=t,{filterMap:a,filterValueMap:l}=t;if(!l.has(e))return null;l=new Map(t.filterValueMap),l.delete(e);var s=this.getInputFilterColumnMap(i,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 i=e.filter(a=>!t.includes(a));i.length>0&&this.updateInputFilters(i)}updateInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState(n=>{for(var{columnMap:i}=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=i.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:i,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=i.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;D(n);var i=this.getWaitingInputMap(n.isFilterRequired(),e,t);if(n.setFilter(t),t.size>0&&i.size===0){var a=n.getDefaultTitle(),l=ve.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",i),n.setTitle(n.getDefaultTitle()),this.setState({isLoading:!1});this.updatePanelState()}pruneFilterMaps(){this.setState(e=>{var{columnMap:t}=e,n=new Map(e.filterMap),i=new Map(e.filterValueMap),a={};return e.filterValueMap.forEach((l,s)=>{t.has(s)||(i.delete(s),a.filterValueMap=i)}),e.filterMap.forEach((l,s)=>{t.has(s)||(n.delete(s),a.filterMap=n)}),a})}render(){var e,{columnSelectionValidator:t,glContainer:n,glEventHub:i,inputFilters:a,isLinkerActive:l,links:s,metadata:o,settings:d,Plotly:h,containerRef:c}=this.props,{columnMap:p,filterMap:v,error:m,model:C,isActive:f,isDisconnected:b,isLoaded:y,isLoading:S}=this.state,P;Xe(o)?P=o.table:Sn(o)?P=o.figure:P=o.name;var w=this.getInputFilterColumnMap(p,a),T=this.getLinkedColumnMap(p,s),N=C!=null?this.getWaitingInputMap(C.isFilterRequired(),p,v):new Map,O=C!=null?this.getWaitingFilterMap(C.isFilterRequired(),p,v,T,w):new Map,M=m!=null?"Unable to open chart. ".concat(m):void 0,E=N.size>0,I=p.size>0&&l;return u.jsx(Tt,{className:ie("iris-chart-panel",{"input-required":E}),componentPanel:this,glContainer:n,glEventHub:i,onHide:this.handleHide,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabBlur:this.handleTabBlur,onTabFocus:this.handleTabFocus,errorMessage:M,isDisconnected:b,isLoading:S,isLoaded:y,widgetName:(e=P)!==null&&e!==void 0?e:void 0,widgetType:"Chart",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:y&&C&&u.jsx(mi,{isActive:f,model:C,settings:d,onDisconnect:this.handleDisconnect,onReconnect:this.handleReconnect,onUpdate:this.handleUpdate,onError:this.handleError,onSettingsChanged:this.handleSettingsChanged,Plotly:h,containerRef:c})}),u.jsx(rn,{in:E&&!I&&!S,mountOnEnter:!0,unmountOnExit:!0,children:u.jsx(Ei,{inputFilterMap:w,linkedColumnMap:T,onAdd:this.handleFilterAdd,onOpenLinker:this.handleOpenLinker,columnMap:p,waitingFilterMap:O,waitingInputMap:N})}),u.jsx(rn,{in:I,mountOnEnter:!0,unmountOnExit:!0,children:u.jsx(St,{columns:this.getSelectorColumns(p,T,t),onColumnSelected:this.handleColumnSelected,onMouseEnter:this.handleColumnMouseEnter,onMouseLeave:this.handleColumnMouseLeave})})]})})}}se(Wt,"defaultProps",{columnSelectionValidator:null,isLinkerActive:!1,source:null,sourcePanel:null,panelState:null,settings:{},containerRef:null});se(Wt,"displayName","ChartPanel");se(Wt,"COMPONENT","ChartPanel");var ws=(r,e)=>{var{localDashboardId:t,metadata:n}=e,i;n!=null&&Xe(n)&&(i=n.sourcePanelId);var a=Vt(r,t),l=Qr(r,t),s=un(r),o=Gt(r,t),d=s===de.LINKER&&o===void 0;return{columnSelectionValidator:Pt(r,t),isLinkerActive:d,inputFilters:wt(r,t),links:rt(r,t),source:i!=null?a.get(i):void 0,sourcePanel:i!=null?l.get(i):void 0,settings:Ht(r)}},Es=Ue(ws,{setActiveTool:Zr,setDashboardIsolatedLinkerPanelId:dn},null,{forwardRef:!0})(Wt);const Mn=Es;var Li=g.createContext(null);function Jd(r){var{initialState:e,onChange:t,children:n}=r,[i,a]=ee.useState(0),l=g.useRef({initial:e,initialStateMap:new Map,state:new Map,isTracking:!0}),s=g.useCallback((p,v)=>{l.current.isTracking&&l.current.state.set(p,v)},[]),o=g.useCallback(()=>{l.current.isTracking||(l.current.isTracking=!0,l.current.state=new Map,a(p=>p+1))},[]),d=g.useRef(l.current.initial[Symbol.iterator]()),h=g.useCallback(function(v){var m=l.current.initialStateMap.get(v);if(m)return m;var{value:C,done:f}=d.current.next(),b={value:C,done:f??!1};return l.current.initialStateMap.set(v,b),b},[]);g.useEffect(function(){l.current.isTracking&&(t([...l.current.state.values()]),l.current.isTracking=!1)},[i,t]);var c=g.useMemo(()=>({addState:s,scheduleStateUpdate:o,getInitialState:h,updateId:i}),[s,h,o,i]);return u.jsx(Li.Provider,{value:c,children:n})}function Fs(r,e,t,n,i){if(e>t)throw new Error("Persisted state ".concat(i," is a newer version than the current version. Persisted version: ").concat(e,". Current version: ").concat(t));for(var a=r,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(i," from version ").concat(l));if(s.length>1)throw new Error("Multiple migrations found for persisted state ".concat(i," 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(i," from version ").concat(o.from,": ").concat(d),{cause:d})}}return a}function Ts(r,e){var t,[n]=g.useState(()=>ae()),i=g.useContext(Li),{value:a,done:l}=(t=i?.getInitialState(n))!==null&&t!==void 0?t:{value:void 0,done:!0},[s,o]=g.useState(()=>{if(a==null||l)return typeof r=="function"?r():r;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 Fs(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 g.useDebugValue(d),i?.addState(n,d),g.useEffect(function(){i?.scheduleStateUpdate()},[i,s]),g.useEffect(function(){return()=>{i?.scheduleStateUpdate()}},[i]),[s,o]}function oe(r,e,t){return e=Ds(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Ds(r){var e=Ms(r,"string");return typeof e=="symbol"?e:String(e)}function Ms(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Mt=V.module("DropdownFilter"),Ls=150;class Ee extends g.Component{constructor(e){super(e),oe(this,"dropdownRef",void 0),oe(this,"getCompatibleColumns",k((a,l)=>a!=null?l.filter(s=>{var{type:o}=s;return o!==void 0&&H.isCompatibleType(o,a.columnType)}):[])),oe(this,"getColumnOptions",k((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]})),oe(this,"getSelectedOptionIndex",k((a,l)=>a.indexOf(l))),oe(this,"getValueOptions",k(a=>[u.jsx("option",{value:"-1",children:Ee.PLACEHOLDER},"-1"),...a.map((l,s)=>u.jsx("option",{value:s,children:l??"(null)"},"".concat(s,"/").concat(l)))])),oe(this,"getItemLabel",ne((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})),oe(this,"sendUpdate",$e(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s??void 0})},Ls)),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=ee.createRef();var{column:t,isValueShown:n,value:i}=e;this.state={column:t,id:ae(),selectedColumn:t,disableCancel:!n,isValueShown:n,value:i}}componentDidUpdate(e,t){var{source:n,values:i,isLoaded:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a&&(n!==e.source&&this.sourceUpdated(),i!==e.values&&s!==""&&!i.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(Mt.debug2("handleColumnChange",t),t!=null&&parseInt(t,10)<0){this.setState({selectedColumn:null});return}var{columns:n,source:i}=this.props,a=this.getCompatibleColumns(i,n);this.setState({selectedColumn:a[parseInt(t,10)]})}handleDropdownKeyPress(e){e.key==="Enter"&&(e.preventDefault(),e.stopPropagation(),Mt.debug2("handleDropdownKeyPress"),this.sendUpdate(),this.sendUpdate.flush())}handleValueChange(e){var t=e,n=parseInt(t,10),i="",{values:a}=this.props;n>=0&&n<a.length?i=a[n]:Mt.debug2("Selected default item"),Mt.debug2("handleValueChange",i),this.setState({value:i})}handleSettingsCancel(){this.setState(e=>{var{column:t}=e;return{selectedColumn:t,isValueShown:!0}})}handleSettingsSave(){this.setState(e=>{var{column:t,selectedColumn:n,value:i}=e;return{column:n,value:t===n?i:"",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:i,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:i??o,isValueShown:a??d}})}render(){var e,{columns:t,disableLinking:n,isLinkerActive:i,isLoaded:a,source:l,onColumnSelected:s,onSourceMouseEnter:o,onSourceMouseLeave:d,values:h,settingsError:c}=this.props,{column:p,disableCancel:v,id:m,isValueShown:C,selectedColumn:f,value:b}=this.state,y=l===null,S=this.getCompatibleColumns(l,t),P=l!=null,w=(e=l?.columnName)!==null&&e!==void 0?e:Ee.SOURCE_BUTTON_PLACEHOLDER,T=p!=null?"".concat(p.name," Filter"):null,[N,O]=this.getColumnOptions(S,f),M=this.getValueOptions(h),E=this.getSelectedOptionIndex(h,b),I=!P||f==null,q=C&&!i,B="source-column-btn-".concat(m),j="filter-column-select-".concat(m);return u.jsxs(fn,{className:"dropdown-filter fill-parent-absolute",isFlipped:q,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:B,children:"Source Column"}),u.jsx(fi,{id:B,isLinked:P,onClick:s,onMouseEnter:o,onMouseLeave:d,className:Ee.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:j,children:"Filter Column"}),u.jsx(bt,{id:j,value:String(O),className:"custom-select",onChange:this.handleColumnChange,disabled:y,children:N}),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(x,{kind:"secondary",type:"button",onClick:this.handleSettingsCancel,disabled:v||C||i,tooltip:i?"Cancel disabled while linker open":void 0,children:"Cancel"}),u.jsx(x,{kind:"primary",type:"button",className:"ml-2",onClick:this.handleSettingsSave,disabled:I||C||i,tooltip:i?"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:T})}),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:M})}),c&&u.jsx("div",{className:"error-message mt-3 text-center",children:c})]}),u.jsx("div",{className:"dropdown-filter-menu",children:u.jsx(x,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:u.jsx(re,{icon:cn,transform:"grow-4"}),tooltip:"Dropdown Filter Settings"})})]})})]})}}oe(Ee,"defaultProps",{column:null,disableLinking:!1,isLinkerActive:!1,isLoaded:!1,isValueShown:!1,settingsError:null,source:null,value:"",values:[],onColumnSelected:()=>{},onSourceMouseEnter:()=>{},onSourceMouseLeave:()=>{}});oe(Ee,"PLACEHOLDER","Select a value...");oe(Ee,"SOURCE_BUTTON_CLASS_NAME","btn-dropdown-filter-selector");oe(Ee,"SOURCE_BUTTON_PLACEHOLDER","Select a column");const dr=Ee;function Y(r,e,t){return e=Os(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Os(r){var e=Ns(r,"string");return typeof e=="symbol"?e:String(e)}function Ns(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var _=V.module("DropdownFilterPanel"),ks=250,Is=(r,e)=>{var{localDashboardId:t}=e,n=F.getIdFromPanel({props:e}),i=Vt(r,t),a=rt(r,t),l=un(r),s=Gt(r,t),o=l===de.LINKER&&(s===void 0||s===n),d=l===de.LINKER&&s!==void 0&&s!==n;return{columns:hn(r,t),columnSelectionValidator:Pt(r,t),dh:Jr(r),isLinkerActive:o,disableLinking:d,settings:Ht(r),panelTableMap:i,dashboardLinks:a}},xs=Ue(Is,null,null,{forwardRef:!0});class ue extends g.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",ne((c,p,v)=>{var{type:m,name:C}=p;return m!==void 0&&H.isDateType(m)?c.map(f=>this.dateTimeFormatter.format(f)):c.map(f=>f!=null&&m!=null?v.getFormattedString(f,m,C):null)})),Y(this,"getCachedPanelLinks",ne((c,p)=>{var v=F.getIdFromPanel(p);return _.debug("getCachedPanelLinks",c,v),c.filter(m=>{var C;return((C=m.end)===null||C===void 0?void 0:C.panelId)===v})})),Y(this,"getCachedSource",ne(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})),Y(this,"getCachedSourceTable",ne((c,p)=>{var v;if(_.debug("getCachedSourceTable",c,p),p==null)return null;var{panelId:m}=p;return(v=c.get(m))!==null&&v!==void 0?v:null})),Y(this,"getCachedSourceColumn",ne((c,p)=>{var v;return _.debug("getCachedSourceColumn",c,p),c==null||p==null?null:(v=c.columns.find(m=>{var{name:C,type:f}=m;return C===p.columnName&&f===p.columnType}))!==null&&v!==void 0?v:null})),this.handleChange=$e(this.handleChange.bind(this),ks),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=ee.createRef(),this.panelContainer=ee.createRef(),this.pending=new Yr;var{dh:t,panelState:n,settings:i}=e;this.columnFormats=zn.getColumnFormats(i),this.dateTimeFormatter=new ei(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 Le(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:i,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,i,a)}}componentDidUpdate(e,t){var{dashboardLinks:n,panelTableMap:i,settings:a}=this.props,{valuesTable:l}=this.state,s=this.getSource(n),o=this.getSourceTable(i,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,i=this.getSourceTable(t,e);this.pending.cancel(),i!==null&&this.stopListeningToSource(i),this.cleanup&&this.cleanup(),n?.close()}getCoordinateForColumn(){var e;if(this.panelContainer.current==null)return null;var t=this.panelContainer.current.querySelector(".".concat(dr.SOURCE_BUTTON_CLASS_NAME)),n=(e=t?.getBoundingClientRect())!==null&&e!==void 0?e:null;if(n==null||n.width<=0||n.height<=0)return null;var i=n.left+n.width/2,a=n.bottom;return[i,a]}getSettingsErrorMessage(){var{sourceSize:e}=this.state;if(e>ue.MAX_TABLE_SIZE)return"Table too large, must have fewer than ".concat(ue.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:i}=e,{name:a=void 0,type:l=void 0}=t??{},s=!0,o=Date.now();this.setState(d=>{var h,c,{panelState:p,timestamp:v,wasFlipped:m,skipUpdate:C}=d,f=p!=null&&n!==p.isValueShown&&a===p.name&&l===p.type&&i===p.value;return s=(h=!C&&n&&(!f||!m))!==null&&h!==void 0?h:!1,s||(o=v),{panelState:{isValueShown:n,name:a,type:l,value:i,timestamp:(c=o)!==null&&c!==void 0?c:void 0},timestamp:o,wasFlipped:f,skipUpdate:!1}},()=>{s&&this.sendUpdate(a??null,l,i,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=F.getIdFromPanel(this);D(t),zt(e,t,ue.SOURCE_COLUMN,{type:"filterSource"})}handleClearAllFilters(){var e,t;(e=this.dropdownFilterRef)===null||e===void 0||(t=e.current)===null||t===void 0||t.clearFilter()}setPanelState(e){var t,n,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{dashboardLinks:a}=this.props;if(this.getSource(a)==null){_.debug("Ignore state update for unlinked filter",e);return}this.setState({skipUpdate:!i}),(t=this.dropdownFilterRef)===null||t===void 0||(n=t.current)===null||n===void 0||n.setFilterState(e)}sendUpdate(e,t,n,i){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:i,excludePanelIds:d});var h=F.getIdFromPanel(this);D(h),Di(s,h,e!=null&&t!=null&&i!=null?{name:e,type:t,value:n??"=null",timestamp:i,excludePanelIds:d}:null)}updateValuesTable(){var{dashboardLinks:e,panelTableMap:t}=this.props,n=this.getSource(e),i=this.getSourceTable(t,e);if(_.debug("updateValuesTable",n,i),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}),i!=null&&(this.setState({isLoaded:!1,sourceSize:i.size}),this.pending.add(i.copy(),a=>a.close()).then(a=>{this.updateViewportListener(a),this.setState({valuesTable:a})}).catch(a=>{Oe.isCanceled(a)||(_.error(a),this.setState({isLoading:!1,error:a}))}))}applySourceSorts(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:n}=this.state,i=this.getSourceTable(t,e);if(_.debug("applySourceSorts",i?.sort),n==null||i==null){_.debug("Table not initialized");return}var a=[...i.sort];n.applySort(a),this.setViewport(n)}applySourceFilters(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:n}=this.state,i=this.getSourceTable(t,e);if(_.debug("applySourceFilters",i?.filter),n==null||i==null){_.debug("Table not initialized");return}var a=[...i.filter];n.applyFilter(a),this.setViewport(n)}updateViewportListener(e){var{dh:t}=this.props;if(_.debug("updateViewportListener",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,ue.MAX_TABLE_SIZE-1,[n])}updateFormatterSettings(e){var{dh:t}=this.props,n=zn.getColumnFormats(e);Wr(this.columnFormats,n)||(this.columnFormats=n,this.setState({formatter:new Le(t,n)}))}handleValuesTableUpdate(e){var{detail:t}=e,{rows:n}=t,{dashboardLinks:i}=this.props,{valuesTable:a}=this.state;if(!a){_.error("valuesTable is null");return}var l=this.getValuesColumn(a,i);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,ue.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:i,glEventHub:a,isLinkerActive:l}=this.props,{column:s,formatter:o,isDisconnected:d,isValueShown:h,value:c,values:p,valuesColumn:v,isLoading:m,isLoaded:C}=this.state,f=this.getSource(t),b=this.getSettingsErrorMessage(),y=this.getPanelErrorMessage(),S=C&&v!=null?this.getCachedValues(p,v,o):[];return u.jsx(Tt,{errorMessage:y,isLoading:m,isLoaded:C,isDisconnected:d,className:"iris-dropdown-filter-panel",componentPanel:this,glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,widgetName:"Dropdown Filter",widgetType:"DropdownFilter",children:u.jsx("div",{ref:this.panelContainer,className:"dropdown-filter-container h-100 w-100 container",children:u.jsx(dr,{ref:this.dropdownFilterRef,column:s,columns:e,isValueShown:h,isLinkerActive:l,disableLinking:n,isLoaded:C,settingsError:b,source:f,value:c,values:S,onChange:this.handleChange,onColumnSelected:this.handleColumnSelected,onSourceMouseEnter:this.handleSourceMouseEnter,onSourceMouseLeave:this.handleSourceMouseLeave})})})}}Y(ue,"displayName","DropdownFilterPanel");Y(ue,"COMPONENT","DropdownFilterPanel");Y(ue,"MAX_TABLE_SIZE",256);Y(ue,"SOURCE_COLUMN",Object.freeze({name:"FilterSource",type:null}));var _s=xs(ue);const Ze=_s;function ur(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Lt(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ur(Object(t),!0).forEach(function(n){pt(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):ur(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function pt(r,e,t){return e=Rs(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Rs(r){var e=js(r,"string");return typeof e=="symbol"?e:String(e)}function js(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var A=V.module("FilterSetManager"),As="Enter name...",hr="No Available Filter Sets";class $t extends g.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),pt(this,"renameInputRef",ee.createRef()),pt(this,"dropdownRef",ee.createRef()),pt(this,"editDropdownRef",ee.createRef()),pt(this,"isRenamingExistingSet",k((t,n)=>n!==void 0&&t.some(i=>{var{id:a}=i;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:i}=this.props,{modifiedFilterSets:a}=this.state;if(e.isValueShown&&!n&&this.initSettingsScreen(),this.isNameInputScreen()&&!this.isNameInputScreen(t)&&this.focusRenameInput(),i!==e.filterSets)if(!n&&i.length>0&&e.filterSets.length===0&&a.length===0){var{onChange:l}=this.props;l({isValueShown:!0,selectedId:i[0].id})}else this.updateSelectedId()}initSettingsScreen(){var{filterSets:e,selectedId:t}=this.props;A.debug("initSettingsScreen",e,t),this.setState({modifiedFilterSets:[...e],editId:t})}updateSelectedId(){var{isValueShown:e,filterSets:t,selectedId:n,onChange:i}=this.props;if(A.debug("updateSelectedId",t,n),!!e&&!t.some(l=>{var{id:s}=l;return s===n})){var a=t.length===0;i({isValueShown:!a,selectedId:a?void 0:t[0].id})}}handleEditDropdownChange(e){this.setState({editId:e})}handleFilterChange(e){var t=e,{isValueShown:n,onChange:i}=this.props;this.applyFilterSet(t),i({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:i}=this.state;this.setState({modifiedFilterSets:[]}),A.debug("Update sets",n,i),t(n),n.length>0&&e({isValueShown:!0,selectedId:i})}handleCaptureNewSet(){var{getFilterState:e}=this.props;$t.animateScreenFlash();var t=ae(),n=e(),i={id:t,title:"",panels:n};A.debug("handleSetCreate",i),this.setState({nameInputValue:"",nameInputError:void 0,renameSet:i})}handleRenameCancel(){this.setState({renameSet:void 0})}handleRestoreFullStateChange(e){this.setState({restoreFullState:e==="true"})}getNameError(e){var t,{renameSet:n,modifiedFilterSets:i}=this.state,a=(t=e?.trim())!==null&&t!==void 0?t:"";if(a.length===0)return A.debug("Name cannot be empty",a),"Name cannot be empty";if(n!==void 0&&i.some(l=>{var{title:s,id:o}=l;return s===a&&o!==n.id}))return A.debug("Set with this name already exists",a),"Set with this name already exists"}handleRenameConfirm(){var e,{nameInputValue:t,renameSet:n,modifiedFilterSets:i,restoreFullState:a}=this.state;if(n===void 0){A.error("Renamed set undefined.");return}var l=this.getNameError(t);if(A.debug("handleRenameConfirm",t,l),l!==void 0){this.setState({nameInputError:l});return}var s=(e=t?.trim())!==null&&e!==void 0?e:"",o=Lt(Lt({},n),{},{title:s,restoreFullState:a}),d=i.findIndex(c=>{var{id:p}=c;return p===n.id}),h=[...i];d>=0?(h[d]=o,A.debug("Renamed existing set",h)):(h.push(o),A.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,i=n.findIndex(o=>{var{id:d}=o;return d===t});if(i<0)return A.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,i-1)),s=a.length>0?a[l].id:void 0;return A.debug("Deleted selected set",t,n,a),A.debug("New selection",l,s),{modifiedFilterSets:a,editId:s}})}handleSetUpdate(){var{getFilterState:e}=this.props;$t.animateScreenFlash();var t=e();this.setState(n=>{var{modifiedFilterSets:i,editId:a}=n;if(a===void 0)return A.error("Filter for update not selected."),null;var l=[...i],s=l.findIndex(o=>{var{id:d}=o;return d===a});return s<0?(A.error("Selected set for update not found."),null):(l[s]=Lt(Lt({},l[s]),{},{panels:t}),A.debug("Update set",l,t),{modifiedFilterSets:l})})}handleSetEdit(){this.setState(e=>{var{editId:t,modifiedFilterSets:n}=e,i=n.find(s=>{var{id:o}=s;return o===t});if(i===void 0)return A.error("Could not find selected set",t,n),null;var{title:a,restoreFullState:l=!1}=i;return{nameInputValue:a,nameInputError:void 0,renameSet:i,restoreFullState:l}})}handleSettingsClick(e){e.stopPropagation();var{onChange:t,selectedId:n}=this.props;t({isValueShown:!1,selectedId:n})}handleBackgroundClick(e){A.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){A.debug("No filter selected");return}var i=n.find(a=>{var{id:l}=a;return l===e});if(i===void 0){A.debug("Selected id not found in filterSets",e,n);return}A.debug("Apply filterSet",i),t(i)}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:i,modifiedFilterSets:a,restoreFullState:l}=this.state,{isValueShown:s,filterSets:o,selectedId:d}=this.props,h=this.isNameInputScreen(),c=this.isRenamingExistingSet(a,i),p=a.length===0,v=!h&&p&&o.length===0,m=!h&&!v,C=u.jsxs("div",{className:"fa-layers mr-3",children:[u.jsx(re,{icon:Hn,mask:Bn,transform:"shrink-1 down-5 right-7"}),u.jsx(re,{icon:rl,className:"text-primary",transform:"shrink-6 down-5 right-7"})]}),f=u.jsxs("div",{className:"fa-layers",children:[u.jsx(re,{icon:Hn,mask:Bn,transform:"shrink-1 down-5 right-7"}),u.jsx(re,{icon:il,transform:"shrink-1 down-5 right-7"})]});return u.jsx("div",{className:"filter-set-manager fill-parent-absolute",children:u.jsxs(fn,{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(x,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:C,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:As,value:e,ref:this.renameInputRef,onChange:this.handleNameInputChange,onKeyPress:this.handleNameInputKeyPress,spellCheck:"false"}),u.jsx(x,{"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:tl}),u.jsx(x,{"data-testid":"rename-cancel-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameCancel,tooltip:"Cancel",icon:nl})]}),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(Vn,{value:"false",children:"Restore only filters"}),u.jsx(Vn,{value:"true",children:"Restore full table state"})]})})]}),m&&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:hr}),a.map(b=>{var{id:y,title:S}=b;return u.jsx("option",{value:y,children:S},y)})]}),u.jsx(x,{kind:"ghost",onClick:this.handleSetUpdate,disabled:p,icon:f,tooltip:"Update"}),u.jsx(x,{kind:"ghost",onClick:this.handleSetEdit,disabled:p,icon:pi,tooltip:"Edit"}),u.jsx(x,{kind:"ghost",onClick:this.handleSetDelete,disabled:p,icon:pn,tooltip:"Delete"})]})]}),u.jsx("div",{children:u.jsx(x,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:C,children:"Capture new filter set"})}),u.jsxs("div",{className:"py-3 text-right",children:[u.jsx(x,{kind:"secondary",onClick:this.handleSettingsCancel,children:"Cancel"})," ",u.jsx(x,{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:hr}),o.map(b=>{var{id:y,title:S}=b;return u.jsx("option",{value:y,children:S},y)})]}),u.jsx(x,{"data-testid":"filter-apply-button",kind:"ghost",onClick:this.handleFilterApply,icon:vi,tooltip:"Apply Filter Set"})]})})}),u.jsx("div",{className:"filter-set-manager-menu",children:u.jsx(x,{kind:"ghost",className:"btn btn-link btn-link-icon m-2 px-2",onClick:this.handleSettingsClick,tooltip:"Settings",icon:u.jsx(re,{icon:cn,transform:"grow-4"})})})]},"back")]})})}}const Oi=$t;function Ln(r){var e,t,n,i,a,{model:l,widgetName:s,glContainer:o,description:d}=r,h=((e=l?.rowCount)!==null&&e!==void 0?e:0)-((t=l?.pendingRowCount)!==null&&t!==void 0?t:0)-((n=l?.floatingBottomRowCount)!==null&&n!==void 0?n:0)-((i=l?.floatingTopRowCount)!==null&&i!==void 0?i:0),c=l?.displayString(h,"long"),p=(a=l?.columnCount)!==null&&a!==void 0?a:0,v=l?.displayString(p,"long");return u.jsxs(Ft,{widgetType:"Table",widgetName:s,glContainer:o,description:d,children:[u.jsx("hr",{className:"tab-tooltip-divider"}),u.jsx("span",{children:"Number of Columns"}),u.jsx("span",{className:"tab-tooltip-statistic-value",children:v}),u.jsx("span",{children:"Number of Rows"}),u.jsx("span",{className:"tab-tooltip-statistic-value",children:c})]})}Ln.propTypes={glContainer:qr.Container.isRequired,widgetName:L.string.isRequired,description:L.string};Ln.defaultProps={description:null};function Ni(r){if(r==null)return!1;var e=r;return typeof e.table=="string"}function ki(r){if(r==null)return!1;var e=r;return typeof e.name=="string"}function cr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Fe(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?cr(Object(t),!0).forEach(function(n){G(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):cr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function G(r,e,t){return e=$s(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function $s(r){var e=Us(r,"string");return typeof e=="symbol"?e:String(e)}function Us(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var pe=V.module("IrisGridPanel"),Vs=500;function pr(r){if(r==null)throw new Error("No metadata provided");if(ki(r))return r.name;if(Ni(r))return r.table;throw new Error("Unable to determine table name from metadata: ".concat(JSON.stringify(r)))}class Je extends g.PureComponent{constructor(e){super(e),G(this,"irisGrid",void 0),G(this,"pluginRef",void 0),G(this,"modelPromise",void 0),G(this,"irisGridState",void 0),G(this,"gridState",void 0),G(this,"pluginState",void 0),G(this,"irisGridUtils",void 0),G(this,"gridStateDehydrator",ln.makeMemoizedGridStateDehydrator()),G(this,"irisGridStateDehydrator",ln.makeMemoizedIrisGridStateDehydrator()),G(this,"getGridInputFilters",k((n,i)=>U.getInputFiltersForColumns(n,i.filter(a=>{var{value:l,excludePanelIds:s}=a,o=F.getIdFromPanel(this);return l!=null&&(s==null||o!=null&&!s.includes(o))})))),G(this,"getAlwaysFetchColumns",k((n,i)=>{for(var a=F.getIdFromPanel(this),l=new Set(i),s=0;s<n.length;s+=1){var{start:o}=n[s];o!=null&&o.panelId===a&&l.add(o.columnName)}return[...l]})),G(this,"getPluginContent",k((n,i,a)=>{if(!i||!je(i)||n==null||i.table==null)return null;var l={panel:this};return u.jsx("div",{className:"iris-grid-plugin",children:u.jsx(n,Fe({ref:this.pluginRef,filter:this.handlePluginFilter,fetchColumns:this.handlePluginFetchColumns,model:i,table:i.table,onStateChange:this.handlePluginStateChange,pluginState:a},l))})})),G(this,"getDehydratedIrisGridPanelState",k((n,i,a,l)=>U.dehydrateIrisGridPanelState(n,{isSelectingPartition:i,partitions:a,advancedSettings:l}))),G(this,"getCachedPanelState",k((n,i,a,l)=>({irisGridPanelState:n,irisGridState:i,gridState:a,pluginState:l}))),G(this,"savePanelState",$e(()=>{var{irisGridState:n,gridState:i,pluginState:a}=this;D(n);var{onPanelStateUpdate:l}=this.props,{model:s,panelState:o,isSelectingPartition:d,partitions:h,advancedSettings:c}=this.state;D(this.irisGridUtils),D(s),D(i);var p=this.getCachedPanelState(this.getDehydratedIrisGridPanelState(s,d,h,c),this.irisGridStateDehydrator(s,n),this.gridStateDehydrator(s,i),a);p!==o&&(pe.debug("Saving panel state",this,p),this.setState({panelState:p}),l?.(p))},Vs)),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=ee.createRef(),this.pluginRef=ee.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(ml.DEFAULTS),customColumns:[],customColumnFormatMap: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:i}=this.props;n!==t.model&&(t.model!=null&&(this.stopModelListening(t.model),t.model.close()),n!=null&&this.startModelListening(n)),i!==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 pr(e)}initModel(){this.setState({isModelReady:!1,isLoading:!0,error:null});var{makeModel:e}=this.props;this.modelPromise!=null&&this.modelPromise.cancel(),this.modelPromise=Oe.makeCancelable(e(),t=>t.close()),this.modelPromise.then(this.handleLoadSuccess).catch(this.handleLoadError)}handleLoadSuccess(e){var t=e,{panelState:n,irisGridStateOverrides:i}=this.state,a=[];if(this.irisGridUtils=new U(t.dh),n!=null){var{irisGridState:l}=n,{aggregationSettings:s,customColumns:o,selectDistinctColumns:d=[],rollupConfig:h}=Fe(Fe({},l),i);o.length>0&&a.push(c=>{c.customColumns=o}),h!=null&&h.columns.length>0&&a.push(c=>{c.rollupConfig=U.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 i=t.shift();pe.debug("initModelQueue",i),i&&i(n),this.setState({modelQueue:t})}handleAdvancedSettingsChange(e,t){pe.debug("handleAdvancedSettingsChange",e,t),this.setState(n=>{var{advancedSettings:i}=n;return i.get(e)===t?null:{advancedSettings:new Map(i).set(e,t)}})}handlePluginFilter(e){var t,n,{model:i}=this.state;D(i);var{columns:a,formatter:l}=i,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,i;return(t=(n=this.pluginRef.current)===null||n===void 0||(i=n.getMenu)===null||i===void 0?void 0:i.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:i}=this.props;n.emit(fe.STATE_CHANGED,this),i?.(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:i}=this.state;t?this.sendColumnsChange(e.detail):(D(n),this.initModelQueue(n,i))}handleTableChanged(e){pe.debug("handleTableChanged",e);var{glEventHub:t}=this.props,{detail:n}=e,i=F.getIdFromPanel(this);D(i),At(t,i,n)}handleCreateChart(e,t){this.savePanelState.flush(),this.setState(()=>null,()=>{var{glEventHub:n,inputFilters:i}=this.props,a=this.getTableName(),{panelState:l}=this.state,s=F.getIdFromPanel(this),o;l&&(o=U.extractTableSettings(l,i)),n.emit(fe.CREATE_CHART,{metadata:{settings:e,sourcePanelId:s,table:a,tableSettings:o},table:je(t)?t.table:void 0})})}handleColumnSelected(e){var{glEventHub:t}=this.props,n=F.getIdFromPanel(this);D(n),zt(t,n,e,{type:"tableLink"})}handleDataSelected(e,t){var{glEventHub:n}=this.props,i=F.getIdFromPanel(this);D(i),Mi(n,i,t)}handleShow(){this.updateGrid()}handleTabClicked(){this.irisGrid.current&&this.irisGrid.current.focus()}handleError(e){pe.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){Oe.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}),je(e)){var{table:i}=e,{pluginName:a}=i;if(a!==""&&n!=null&&a!=null){var l=n(a);this.setState({Plugin:l})}var s=F.getIdFromPanel(this);D(s),At(t,s,i)}this.sendColumnsChange(e.columns)}handleClearAllFilters(){var e=this.irisGrid.current,{isDisconnected:t}=this.state;e!=null&&!t&&e.clearAllFilters()}sendColumnsChange(e){pe.debug2("sendColumnsChange",e);var{glEventHub:t}=this.props,n=F.getIdFromPanel(this);D(n),jt(t,n,e)}startModelListening(e){e.addEventListener(R.EVENT.DISCONNECT,this.handleDisconnect),e.addEventListener(R.EVENT.RECONNECT,this.handleReconnect),e.addEventListener(R.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.addEventListener(R.EVENT.TABLE_CHANGED,this.handleTableChanged)}stopModelListening(e){e.removeEventListener(R.EVENT.DISCONNECT,this.handleDisconnect),e.removeEventListener(R.EVENT.RECONNECT,this.handleReconnect),e.removeEventListener(R.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.removeEventListener(R.EVENT.TABLE_CHANGED,this.handleTableChanged)}getCoordinateForColumn(e){var t,n,i,{model:a}=this.state;if(!a)return null;var l=this.irisGrid.current,{gridWrapper:s}=l||{},o=(t=s?.getBoundingClientRect())!==null&&t!==void 0?t:null;if(o==null||o.width<=0||o.height<=0)return null;D(l);var{metrics:d}=l.state;D(d);var{columnHeaderHeight:h,allColumnXs:c,allColumnWidths:p,right:v,columnHeaderMaxDepth:m}=d,C=a.getColumnIndexByName(e);D(C);var f=l.getVisibleColumn(C),b=(n=c.get(f))!==null&&n!==void 0?n:0,y=(i=p.get(f))!==null&&i!==void 0?i:0,S=We(f>v?o.right:o.left+b+y*.5,o.left,o.right),P=o.top+h*m;return[S,P]}setFilterMap(e){var t=this.irisGrid.current;t?.setFilterMap(e)}setAdvancedFilterMap(e){var t=this.irisGrid.current;t?.setAdvancedFilterMap(e)}setFilters(e){var{quickFilters:t,advancedFilters:n}=e;pe.debug("setFilters",t,n);var{model:i,isDisconnected:a}=this.state,l=this.irisGrid.current;if(l==null||a){pe.debug("Ignore setFilters, model disconnected");return}D(i);var{columns:s,formatter:o}=i,d=U.changeFilterColumnNamesToIndexes(i.columns,t).filter(c=>{var[p]=c;return i.isFilterable(p)}),h=U.changeFilterColumnNamesToIndexes(i.columns,n).filter(c=>{var[p]=c;return i.isFilterable(p)});D(this.irisGridUtils),l.clearAllFilters(),l.setFilters({quickFilters:this.irisGridUtils.hydrateQuickFilters(s,d,o.timeZone),advancedFilters:this.irisGridUtils.hydrateAdvancedFilters(s,h,o.timeZone)})}setStateOverrides(e){pe.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:i}=this.state;if(t!=null)try{var{gridState:a,irisGridState:l,irisGridPanelState:s}=t,o=Fe({},n),{quickFilters:d,advancedFilters:h}=o;d&&(o.quickFilters=U.changeFilterColumnNamesToIndexes(e.columns,d)),h&&(o.advancedFilters=U.changeFilterColumnNamesToIndexes(e.columns,h));var{isSelectingPartition:c,partitions:p,advancedSettings:v}=U.hydrateIrisGridPanelState(e,s);D(this.irisGridUtils);var{advancedFilters:m,customColumns:C,customColumnFormatMap:f,isFilterBarShown:b,quickFilters:y,reverse:S,rollupConfig:P,aggregationSettings:w,sorts:T,userColumnWidths:N,userRowHeights:O,showSearchBar:M,searchValue:E,selectDistinctColumns:I,selectedSearchColumns:q,invertSearchColumns:B,pendingDataMap:j,frozenColumns:me,conditionalFormats:ke,columnHeaderGroups:Ie,partitionConfig:lt}=this.irisGridUtils.hydrateIrisGridState(e,Fe(Fe({},l),o)),{isStuckToBottom:Ge,isStuckToRight:He,movedColumns:st,movedRows:ot}=U.hydrateGridState(e,Fe(Fe({},a),i),l.customColumns);this.setState({advancedFilters:m,advancedSettings:v,conditionalFormats:ke,customColumns:C,customColumnFormatMap:f,isFilterBarShown:b,isSelectingPartition:c,movedColumns:st,movedRows:ot,partitions:p,quickFilters:y,reverse:S,rollupConfig:P,aggregationSettings:w,sorts:T,userColumnWidths:N,userRowHeights:O,showSearchBar:M,searchValue:E,selectDistinctColumns:I,selectedSearchColumns:q,invertSearchColumns:B,pendingDataMap:j,frozenColumns:me,isStuckToBottom:Ge,isStuckToRight:He,columnHeaderGroups:Ie,partitionConfig:lt})}catch(te){pe.error("loadPanelState failed to load panelState",t,te)}}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:i,glEventHub:a,columnSelectionValidator:l,getDownloadWorker:s,inputFilters:o,links:d,metadata:h,panelState:c,user:p,settings:v,theme:m}=this.props,{advancedFilters:C,aggregationSettings:f,advancedSettings:b,conditionalFormats:y,customColumns:S,customColumnFormatMap:P,error:w,isDisconnected:T,isFilterBarShown:N,isSelectingPartition:O,isStuckToBottom:M,isStuckToRight:E,isLoaded:I,isLoading:q,isModelReady:B,model:j,movedColumns:me,movedRows:ke,partitions:Ie,partitionConfig:lt,quickFilters:Ge,reverse:He,rollupConfig:st,sorts:ot,userColumnWidths:te,userRowHeights:Yt,showSearchBar:le,searchValue:he,selectDistinctColumns:ge,selectedSearchColumns:be,invertSearchColumns:Be,Plugin:Qt,pluginFilters:na,pluginFetchColumns:ra,pendingDataMap:ia,frozenColumns:aa,columnHeaderGroups:la}=this.state,sa=w!=null?"Unable to open table. ".concat(w):void 0,$n=pr(h),Un=(e=j?.description)!==null&&e!==void 0?e:void 0,oa=(t=c?.pluginState)!==null&&t!==void 0?t:null,da=n??this.getPluginContent(Qt,j,oa),{permissions:ua}=p,{canCopy:ha,canDownloadCsv:ca}=ua;return u.jsx(Tt,{errorMessage:sa,isDisconnected:T,isLoading:q,isLoaded:I,className:"iris-grid-panel",glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabFocus:this.handleShow,onTabClicked:this.handleTabClicked,widgetName:$n,widgetType:"Table",description:Un,componentPanel:this,renderTabTooltip:()=>u.jsx(Ln,{model:j,widgetName:$n,glContainer:i,description:Un}),children:B&&j&&u.jsx(vn,{advancedFilters:C,aggregationSettings:f,advancedSettings:b,alwaysFetchColumns:this.getAlwaysFetchColumns(d,ra),columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",copyCursor:"copy",customColumns:S,customColumnFormatMap:P,columnSelectionValidator:this.isColumnSelectionValid,conditionalFormats:y,inputFilters:this.getGridInputFilters(j.columns,o),applyInputFiltersOnInit:c==null,isFilterBarShown:N,isSelectingColumn:l!=null,isSelectingPartition:O,isStuckToBottom:M,isStuckToRight:E,movedColumns:me,movedRows:ke,partitions:Ie,partitionConfig:lt,quickFilters:Ge,reverse:He,rollupConfig:st,settings:v,sorts:ot,userColumnWidths:te,userRowHeights:Yt,model:j,showSearchBar:le,searchValue:he,selectedSearchColumns:be,selectDistinctColumns:ge,invertSearchColumns:Be,onColumnSelected:this.handleColumnSelected,onCreateChart:this.handleCreateChart,onDataSelected:this.handleDataSelected,onError:this.handleError,onStateChange:this.handleGridStateChange,onContextMenu:this.handleContextMenu,onAdvancedSettingsChange:this.handleAdvancedSettingsChange,customFilters:na,pendingDataMap:ia,canCopy:ha,canDownloadCsv:ca,ref:this.irisGrid,getDownloadWorker:s,frozenColumns:aa,theme:m,columnHeaderGroups:la,children:da})})}}G(Je,"defaultProps",{onStateChange:()=>{},onPanelStateUpdate:()=>{}});G(Je,"displayName","IrisGridPanel");G(Je,"COMPONENT","IrisGridPanel");var Gs=(r,e)=>{var{localDashboardId:t=ya,glContainer:n}=e;return{inputFilters:wt(r,t),links:rt(r,t),columnSelectionValidator:Pt(r,t),user:Sa(r),settings:Ht(r)}},Hs=Ue(Gs,null,null,{forwardRef:!0})(Je);const On=Hs;function mt(r,e,t){return e=Bs(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Bs(r){var e=Ks(r,"string");return typeof e=="symbol"?e:String(e)}function Ks(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var vr=V.module("InputFilter"),zs=150;class et extends g.Component{constructor(e){super(e),mt(this,"inputRef",void 0),mt(this,"getItemLabel",ne((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})),mt(this,"sendUpdate",$e(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s})},zs)),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=ee.createRef();var{column:t,isValueShown:n,value:i}=e;this.state={column:t,selectedColumn:t,value:i,isValueShown:n}}componentDidUpdate(e,t){var{column:n}=this.props,{column:i,value:a,isValueShown:l}=this.state;n!==e.column&&this.setState({column:n,selectedColumn:n}),l!==void 0&&l&&l!==t.isValueShown&&this.focusInput(),(i!==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)];vr.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;vr.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:i,isValueShown:a}=e,l=t!=null&&n!=null?{name:t,type:n}:void 0,s=a===void 0?{column:l,value:i}:{column:l,value:i,isValueShown:a};this.setState(s)}render(){var{columns:e}=this.props,{column:t,isValueShown:n,selectedColumn:i,value:a}=this.state,l=a==null||a.length===0?et.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(fn,{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===i?.name&&d.type===i?.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(x,{kind:"secondary",onClick:this.handleSettingsCancel,disabled:t==null,children:"Cancel"}),u.jsx(x,{kind:"primary",className:"ml-2",onClick:this.handleSettingsSave,disabled:i==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:et.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(x,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:u.jsx(re,{icon:cn,transform:"grow-4"}),tooltip:"Input Filter Settings"})})]})]})}}mt(et,"PLACEHOLDER","Enter value...");mt(et,"defaultProps",{column:null,isValueShown:!1,value:null});const Ws=et;function qt(r,e,t){return e=qs(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function qs(r){var e=Xs(r,"string");return typeof e=="symbol"?e:String(e)}function Xs(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Zs=250;class Xt extends g.Component{constructor(e){super(e),qt(this,"inputFilterRef",void 0),this.handleChange=$e(this.handleChange.bind(this),Zs),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.inputFilterRef=ee.createRef();var{panelState:t}=e,{value:n,isValueShown:i=!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:i,wasFlipped:!1,skipUpdate:!1,panelState:t}}componentDidMount(){this.updateColumns();var{column:e,value:t,timestamp:n}=this.state;if(e!=null){var{name:i,type:a}=e;this.sendUpdate(i,a,t,n)}}componentDidUpdate(e){var{columns:t}=this.props;t!==e.columns&&this.updateColumns()}handleChange(e){var{column:t,isValueShown:n=!1,value:i}=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:m}=d,C=c!=null&&n!==c.isValueShown&&a===c.name&&l===c.type&&i===c.value;return s=(h=!m&&n&&(!C||!v))!==null&&h!==void 0?h:!1,s||(o=p),{panelState:{isValueShown:n,name:a,type:l,value:i,timestamp:o},timestamp:o,wasFlipped:C,skipUpdate:!1}},()=>{s&&this.sendUpdate(a,l,i,o)})}handleClearAllFilters(){var e;(e=this.inputFilterRef.current)===null||e===void 0||e.clearFilter()}sendUpdate(e,t,n,i){var{glEventHub:a}=this.props,l=F.getIdFromPanel(this);D(l),Di(a,l,e!=null&&t!=null&&n!=null&&i!=null?{name:e,type:t,value:n,timestamp:i}: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(i=>{var{name:a,type:l}=i;return n.name===a&&n.type===l})?{columns:[...e,n]}:{columns:[...e]}})}render(){var{glContainer:e,glEventHub:t}=this.props,{column:n,columns:i,isValueShown:a,value:l}=this.state;return u.jsx(yt,{className:"iris-input-filter-panel",componentPanel:this,glContainer:e,glEventHub:t,onClearAllFilters:this.handleClearAllFilters,isClonable:!0,isRenamable:!0,children:u.jsx(Ws,{ref:this.inputFilterRef,column:n,columns:i,onChange:this.handleChange,isValueShown:a,value:l})})}}qt(Xt,"defaultProps",{panelState:null});qt(Xt,"COMPONENT","InputFilterPanel");qt(Xt,"displayName","InputFilterPanel");var Ys=(r,e)=>{var{localDashboardId:t}=e;return{columns:hn(r,t)}},Qs=Ue(Ys,null,null,{forwardRef:!0})(Xt);const Ye=Qs;function fr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Ot(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?fr(Object(t),!0).forEach(function(n){Nn(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):fr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Nn(r,e,t){return e=Js(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Js(r){var e=eo(r,"string");return typeof e=="symbol"?e:String(e)}function eo(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var X=V.module("FilterSetManagerPanel");function to(r){return r.setPanelState!=null}class tt extends g.Component{static changeFilterIndexesToColumnNames(e,t){return t.map(n=>{var[i,a]=n;if(i>=e.columns.length)return null;var{name:l}=e.columns[i];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:i=n.length>0?n[0].id:void 0,isValueShown:a=!1}=t??{};this.state={selectedId:i,isValueShown:a,panelState:t}}getFilterState(){var{dashboardOpenedPanelMap:e}=this.props,t=[];return[...e.keys()].forEach(n=>{var i=e.get(n);if(i===void 0){X.error("Could not get panel",i);return}var a=F.getComponentNameFromPanel(i),l=F.getIdFromPanel(i);X.debug("Panel:",i,a);var{glContainer:s=null}=i.props;if(s==null){X.error("Could not get panel container",i);return}var o=F.getComponentConfigFromContainer(s);if(o==null){X.error("Could not get component config from container",s);return}var d=F.getPanelComponentState(o);if(d==null){X.debug("Panel state is null ".concat(l));return}switch(a){case F.getComponentName(Je):{var h;l!=null&&(h=this.getIrisGridPanelFilters(l,d)),h!=null&&t.push({panelId:l,type:a,state:h});break}case F.getComponentName(Ye):case F.getComponentName(Ze):{var{isValueShown:c,name:p,type:v,value:m}=d;t.push({panelId:l,type:a,state:{isValueShown:c,name:p,type:v,value:m}});break}}}),t}getIrisGridPanelFilters(e,t){var{panelTableMap:n}=this.props,i=n.get(e);if(i==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=tt.changeFilterIndexesToColumnNames(i,s));var h;return o&&(h=tt.changeFilterIndexesToColumnNames(i,o)),{irisGridState:Ot(Ot({},a),{},{advancedFilters:d,quickFilters:h}),gridState:Ot({},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:i=!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 F.getComponentName(Je):this.restoreIrisGridFilters(d,o,i);break;case F.getComponentName(Ye):case F.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:i={},advancedFilters:a=[],quickFilters:l=[]}=t,{advancedFilters:s=a,quickFilters:o=l}=i,{panelTableMap:d}=this.props,h=F.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=Ot({},t);delete n.isValueShown,X.debug("restoreInputFilterState",e,n),e&&to(e)&&e.setPanelState(n)}render(){var{glContainer:e,glEventHub:t,filterSets:n}=this.props,{isValueShown:i,selectedId:a}=this.state;return u.jsx(yt,{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(Oi,{onChange:this.handleChange,onApply:this.handleFilterApply,onUpdateSets:this.handleSetsUpdate,isValueShown:i,filterSets:n,selectedId:a,getFilterState:this.handleGetFilterState})})})}}Nn(tt,"defaultProps",{panelState:null});Nn(tt,"COMPONENT","FilterSetManagerPanel");var no=(r,e)=>{var{localDashboardId:t}=e;return{filterSets:ni(r,t),dashboardOpenedPanelMap:Qr(r,t),dashboardInputFilters:wt(r,t),panelTableMap:Vt(r,t)}},ro=Ue(no,{setDashboardFilterSets:ti},null,{forwardRef:!0})(tt);const xt=ro;function io(r,e,t){return e=ao(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ao(r){var e=lo(r,"string");return typeof e=="symbol"?e:String(e)}function lo(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Ii extends g.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:ie("text-muted","edit-hint",{viewing:e===void 0||!e}),children:u.jsxs("span",{children:["double-click to edit ",u.jsx(re,{icon:pi})]})}),t]})}}io(Ii,"defaultProps",{isEditing:!1});function so(r,e,t){return e=oo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function oo(r){var e=uo(r,"string");return typeof e=="symbol"?e:String(e)}function uo(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var ho=V.module("MarkdownStartPage");class xi extends g.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(ho.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:i,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(x,{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(x,{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(re,{icon:pn})})]},l.id)),u.jsxs(al,{isOpen:i,toggle:this.handleDeleteModalClose,className:"modal-dialog-centered markdown-delete-modal",children:[u.jsx(ll,{children:"Are you sure you want to permanently delete this note?"}),u.jsx(sl,{children:"You can't undo this action."}),u.jsxs(Pa,{children:[u.jsx(x,{kind:"secondary",onClick:this.handleDeleteModalClose,children:"Cancel"}),u.jsx(x,{kind:"danger",onClick:()=>{this.handleDeleteMarkdown(a)},children:"Delete"})]})]})]})]})})}}so(xi,"defaultProps",{closedMarkdowns:[],onOpen:()=>{},onCreate:()=>{},onDelete:()=>{}});const co=xi;function kn(r,e,t){return e=po(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function po(r){var e=vo(r,"string");return typeof e=="symbol"?e:String(e)}function vo(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Ae{static getNewMarkdownTitle(e){for(var t="".concat(Ae.DEFAULT_TITLE),n=0;e.indexOf(t)>=0;)n+=1,t="".concat(Ae.DEFAULT_TITLE,"-").concat(n);return t}}kn(Ae,"DEFAULT_TITLE","Note");kn(Ae,"DEFAULT_CONTENT",`# Markdown Note
4
4
 
5
- This note can be edited using **markdown** for styling.`);kn(Ae,"getClosedMarkdowns",k(r=>r.filter(e=>e.component==="MarkdownPanel"&&e.props.panelState.content!==""&&e.props.panelState.content!==null).reverse()));const _t=Ae;function gt(r,e,t){return e=fo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function fo(r){var e=mo(r,"string");return typeof e=="symbol"?e:String(e)}function mo(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var go=g.lazy(()=>Sl(()=>import("./MarkdownEditor-082e752c.js"),["./MarkdownEditor-082e752c.js","./vendor-3e5e4180.js","./helpers-de833af9.js","./vendor-7509d17c.css","./ControlType-04435a15.js","./index-c187df9b.js","./monaco-b5248072.js","./monaco-f18fde03.css","./index-7d08f7c0.css","./ControlType-fbf3b3ed.css","./mathjax-d42af1a5.js"],import.meta.url)),Nt=V.module("MarkdownPanel");class In extends g.Component{constructor(e){super(e),gt(this,"markdownEditor",void 0),gt(this,"editor",void 0),gt(this,"getClosedMarkdowns",k(_t.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=_t.DEFAULT_CONTENT),this.state={isStartPageShown:n==null&&this.getClosedMarkdowns(e.closedPanels).length!==0,isEditing:!1,content:n,panelState:t},this.markdownEditor=null}setEditorPosition(e){D(this.markdownEditor);var{container:t}=this.markdownEditor;if(this.editor&&t!=null){var n,i,a=t.getBoundingClientRect().top,l=t.scrollTop,s=t.scrollHeight,o=(n=(i=this.editor.getModel())===null||i===void 0?void 0:i.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){Nt.debug("Markdown Editor Initialized..."),this.editor=e}handleCreateMarkdown(){Nt.debug("create markdown..."),this.setState({isStartPageShown:!1,content:"",isEditing:!0,panelState:{content:""}},()=>{this.editor!=null&&this.editor.focus!=null&&this.editor.focus()})}handleOpenMarkdown(e){Nt.debug("open markdown...",e);var{glContainer:t,glEventHub:n}=this.props,i=F.getComponentConfigFromContainer(t);n.emit(J.REOPEN,e,i)}handleDeleteMarkdown(e){var{glEventHub:t}=this.props;t.emit(J.DELETE,e)}handleEditorBlur(e){var t;Nt.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 i=(t=this.editor)===null||t===void 0?void 0:t.getValue();this.setState({content:i,isEditing:!1,panelState:{content:i}})}}handleEditorResize(){var{isEditing:e}=this.state;e&&this.editor&&this.editor.layout()}render(){var{glContainer:e,glEventHub:t,closedPanels:n}=this.props,{isEditing:i,isStartPageShown:a,content:l}=this.state,s=this.getClosedMarkdowns(n);return u.jsx(yt,{glContainer:e,glEventHub:t,className:"markdown-panel",componentPanel:this,onResize:this.handleEditorResize,onBlur:this.handleEditorBlur,isClonable:!0,isRenamable:!0,children:a?u.jsx(co,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):u.jsx(Ii,{isEditing:i,onDoubleClick:this.handleContainerDoubleClick,children:u.jsx(g.Suspense,{fallback:u.jsx(Ct,{}),children:u.jsx(go,{ref:o=>{this.markdownEditor=o},isEditing:i,content:l??_t.DEFAULT_CONTENT,onEditorInitialized:this.handleEditorInitialized})})})})}}gt(In,"defaultProps",{panelState:null});gt(In,"COMPONENT","MarkdownPanel");var bo=(r,e)=>{var{localDashboardId:t}=e;return{closedPanels:wa(r,t)}},Co=Ue(bo,null,null,{forwardRef:!0})(In);const vt=Co;function _i(r){var{onClick:e}=r,t=g.useRef(null),n=g.useCallback(i=>{var a;(a=t.current)===null||a===void 0||a.blur(),e(i)},[e]);return u.jsxs(x,{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(re,{icon:vi,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}function mr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function gr(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?mr(Object(t),!0).forEach(function(n){Zt(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):mr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Zt(r,e,t){return e=So(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function So(r){var e=yo(r,"string");return typeof e=="symbol"?e:String(e)}function yo(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class xn extends g.Component{constructor(e){super(e),Zt(this,"irisGridRef",void 0),this.irisGridRef=ee.createRef(),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}}handleReload(){var e;(e=this.irisGridRef.current)===null||e===void 0||e.initModel(),this.setState({shouldFocusGrid:!0})}handleGridStateChange(){var e,t,n,{shouldFocusGrid:i}=this.state;i&&(e=this.irisGridRef.current)!==null&&e!==void 0&&(t=e.irisGrid)!==null&&t!==void 0&&(n=t.current)!==null&&n!==void 0&&n.grid&&(this.irisGridRef.current.irisGrid.current.grid.focus(),this.setState({shouldFocusGrid:!1}))}handlePanelStateUpdate(e){this.setState({panelState:e})}render(){return u.jsx(On,gr(gr({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},this.props),{},{children:u.jsx(_i,{onClick:this.handleReload})}))}}Zt(xn,"defaultProps",{panelState:null});Zt(xn,"COMPONENT","PandasPanel");const Ri=xn;function br(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function Cr(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){br(a,n,i,l,s,"next",o)}function s(o){br(a,n,i,l,s,"throw",o)}l(void 0)})}}function Sr(r,e,t){return e=Po(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Po(r){var e=wo(r,"string");return typeof e=="symbol"?e:String(e)}function wo(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Eo{constructor(e){Sr(this,"items",void 0),Sr(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 i=this.items[n];Gn(i)&&("".concat(i.filename,"/")===e||i.filename===e)&&(i.isExpanded=t)}return Promise.resolve()}collapseAll(){for(var e=0;e<this.items.length;e+=1){var t=this.items[e];Gn(t)&&(t.isExpanded=!1)}return Promise.resolve()}getViewportData(){return Promise.resolve({items:this.items,offset:0})}getSnapshot(e){return Cr(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return Cr(function*(){var n,i=yield t.getViewportData();(n=t.onUpdateCallback)===null||n===void 0||n.call(t,i)})()}setFilters(e){}setSorts(e){}setReversed(e){}close(){}onUpdate(e){return this.onUpdateCallback=e,jest.fn()}get size(){return this.items.length}}const Fo=Eo;function yr(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function dt(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){yr(a,n,i,l,s,"next",o)}function s(o){yr(a,n,i,l,s,"throw",o)}l(void 0)})}}function To(r,e,t){return e=Do(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Do(r){var e=Mo(r,"string");return typeof e=="symbol"?e:String(e)}function Mo(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Lo{constructor(e){To(this,"items",void 0),this.items=e}getTable(){var e=this;return dt(function*(){return new Fo(e.items)})()}saveFile(e){throw new Error("Method not implemented.")}loadFile(e){throw new Error("Method not implemented.")}copyFile(e,t){return dt(function*(){throw new Error("Method not implemented.")})()}deleteFile(e){var t=this;return dt(function*(){t.items=t.items.filter(n=>n.filename!==e)})()}moveFile(e,t){var n=this;return dt(function*(){for(var i=0;i<n.items.length;i+=1)if(n.items[i].filename===e){n.items[i].filename=t,n.items[i].basename=Ea.getBaseName(t),n.items[i].id=t;break}})()}info(e){var t=this;return dt(function*(){var n=t.items.filter(a=>a.filename===e);if(n.length===0)throw new Fa;if(n.length>1)throw new Error("More than one matching file found");var i=n[0];return{filename:i.filename,basename:i.basename,id:i.filename,type:i.type}})()}createDirectory(e){throw new Error("Method not implemented.")}}const Oo=Lo;function Pr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Ut(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Pr(Object(t),!0).forEach(function(n){No(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Pr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function No(r,e,t){return e=ko(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ko(r){var e=Io(r,"string");return typeof e=="symbol"?e:String(e)}function Io(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function wr(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function xo(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){wr(a,n,i,l,s,"next",o)}function s(o){wr(a,n,i,l,s,"throw",o)}l(void 0)})}}function _o(r,e,t,n,i){return on.apply(this,arguments)}function on(){return on=xo(function*(r,e,t,n,i){var a,l,s,o;if(Xe(t)?(a=t.settings,l=t.table,s=void 0,o=t.tableSettings):(a={},l="",s=Sn(t)?t.figure:t.name,o={}),i!=null&&(i.tableSettings!=null&&(o=i.tableSettings),i.table!=null&&(l=i.table),i.figure!=null&&(s=i.figure),i.settings!=null&&(a=Ut(Ut({},a),i.settings))),s==null&&l==null){var d=yield n();return ft.makeModel(r,a,d)}if(s!=null){var h;if(t.type===r.VariableType.FIGURE){var c={name:s,type:r.VariableType.FIGURE};h=yield e(c)}else h=yield n();return ft.makeModel(r,a,h)}var p={name:l,type:r.VariableType.TABLE},v=yield e(p);return new U(r).applyTableSettings(v,o,ri(ol.getState())),ft.makeModelFromSettings(r,a,v)}),on.apply(this,arguments)}var _n=g.forwardRef((r,e)=>{var t=it(),n=Ta(),i=Ti(r)?r.panelState:void 0,{fetch:a,metadata:l,localDashboardId:s}=r,o=g.useMemo(()=>({metadata:l,localDashboardId:s,makeModel:()=>{if(l==null)throw new Error("Metadata is required for chart panel");return _o(t,n,l,a,i)}}),[l,s,t,n,a,i]);return u.jsx(Mn,Ut(Ut({ref:e},r),o))});_n.displayName="ChartPanelPlugin";const Ro=_n;function Er(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function jo(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Er(a,n,i,l,s,"next",o)}function s(o){Er(a,n,i,l,s,"throw",o)}l(void 0)})}}function ji(r){var e=it(),[t,n]=g.useState(),{fetch:i}=r;return g.useEffect(()=>{var a=!1;function l(){return s.apply(this,arguments)}function s(){return s=jo(function*(){var o=yield i(),d=yield ft.makeModel(e,void 0,o);a||n(d)}),s.apply(this,arguments)}return l(),()=>{a=!0}},[e,i]),t?u.jsx(mi,{model:t}):null}var Ao={name:"ChartPanel",title:"Chart",type:Ne.WIDGET_PLUGIN,component:ji,panelComponent:_n,supportedTypes:"Figure",icon:dl};const $o=Ao;function Ai(r){Et(r);var{id:e,layout:t}=r,n=it(),i=g.useCallback(a=>{var{metadata:l,panelId:s=ae(),table:o}=a,{settings:d}=l,h=()=>ft.makeModelFromSettings(n,d,o),c=Z.titleFromSettings(d),p={type:"react-component",component:Mn.COMPONENT,props:{localDashboardId:e,id:s,metadata:l,makeModel:h},title:c,id:s},{root:v}=t;F.openComponent({root:v,config:p})},[n,e,t]);return Me(t.eventHub,fe.CREATE_CHART,i),null}var Uo={name:"ChartBuilderPlugin",type:Ne.DASHBOARD_PLUGIN,component:Ai};const Vo=Uo;var ut=V.module("FilterPlugin");function $i(r){Et(r);var{id:e,layout:t,registerComponent:n}=r,i=fa(),[a]=g.useState(()=>new Map),[l]=g.useState(()=>new Map),[s]=g.useState(()=>new Map),o=g.useCallback(()=>{var f=Array.from(a.values()).flat().sort((S,P)=>{var w=ve.toLower(S.name),T=ve.toLower(P.name);if(w!==T)return w>T?1:-1;var N=ve.toLower(S.type),O=ve.toLower(P.type);return N!==O?N>O?1:-1:0}).reduce((S,P)=>((S.length===0||ve.toLower(S[S.length-1].name)!==ve.toLower(P.name)||ve.toLower(S[S.length-1].type)!==ve.toLower(P.type))&&S.push(P),S),[]),b=Array.from(l.values()).flat().sort((S,P)=>S.timestamp-P.timestamp),y=new Map(s);ut.debug("sendUpdate",{columns:f,filters:b,tableMap:y}),i(Da(e,{columns:f,filters:b,tableMap:y}))},[i,e,a,l,s]),d=g.useCallback((f,b)=>{ut.debug2("handleColumnsChanged",f,b),b==null?a.delete(f):a.set(f,[].concat(b)),o()},[a,o]),h=g.useCallback((f,b)=>{ut.debug2("handleFiltersChanged",f,b),b==null?l.delete(f):l.set(f,[].concat(b??[])),o()},[l,o]),c=g.useCallback((f,b)=>{ut.debug2("handleTableChanged",f,b),b==null?s.delete(f):s.set(f,b),o()},[s,o]),p=g.useCallback(f=>{ut.debug2("handlePanelUnmount",f);var b=F.getIdFromPanel(f);b!=null&&(a.delete(b),s.delete(b),l.delete(b)),o()},[a,l,s,o]),v=g.useCallback(f=>{var{title:b="DropdownFilter",metadata:y={},panelState:S=null,id:P=ae(),focusElement:w=F.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:N=null}=f,O={type:"react-component",component:Ze.COMPONENT,props:{id:P,metadata:y,panelState:S,localDashboardId:e},title:b,id:P},{root:M}=t;F.openComponent({root:M,config:O,focusElement:w,createNewStack:T,dragEvent:N})},[t,e]),m=g.useCallback(f=>{var{title:b="InputFilter",metadata:y={},panelState:S=null,id:P=ae(),focusElement:w=F.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:N=void 0}=f,O={type:"react-component",component:Ye.COMPONENT,props:{id:P,metadata:y,panelState:S,localDashboardId:e},title:b,id:P},{root:M}=t;F.openComponent({root:M,config:O,focusElement:w,createNewStack:T,dragEvent:N})},[t,e]),C=g.useCallback(f=>{var{title:b="FilterSets",metadata:y={},panelState:S=null,id:P=ae(),focusElement:w=F.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:N=null}=f,O={type:"react-component",component:xt.COMPONENT,props:{id:P,metadata:y,panelState:S,localDashboardId:e},title:b,id:P},{root:M}=t;F.openComponent({root:M,config:O,focusElement:w,createNewStack:T,dragEvent:N})},[t,e]);return g.useEffect(function(){var b=[n(Ze.COMPONENT,Ze),n(Ye.COMPONENT,Ye),n(xt.COMPONENT,xt)];return()=>{b.forEach(y=>y())}},[n]),cs(t.eventHub,d),vs(t.eventHub,h),ps(t.eventHub,c),Me(t.eventHub,we.OPEN_DROPDOWN,v),Me(t.eventHub,we.OPEN_INPUT,m),Me(t.eventHub,we.OPEN_FILTER_SET_MANAGER,C),Me(t.eventHub,J.UNMOUNT,p),null}var Go={name:"FilterPlugin",type:Ne.DASHBOARD_PLUGIN,component:$i};const Ho=Go;var Bo=V.module("@deephaven/app-utils/useTablePlugin");function Ui(){var r=ii(),e=g.useCallback(t=>{var n=r.get(t);if(n!=null){if(Ma(n))return n.component;if(La(n))return n.TablePlugin}var i="Unable to find table plugin ".concat(t,".");throw Bo.error(i),new Error(i)},[r]);return e}function Fr(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function Ko(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Fr(a,n,i,l,s,"next",o)}function s(o){Fr(a,n,i,l,s,"throw",o)}l(void 0)})}}function Vi(r,e,t){var n=it(),i=Ui(),a=g.useMemo(()=>({loadPlugin:i,localDashboardId:e,makeModel:function(){var l=Ko(function*(){var o=yield r();return bi.makeModel(n,o)});function s(){return l.apply(this,arguments)}return s}(),metadata:t}),[n,r,e,i,t]);return a}function Tr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Dr(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Tr(Object(t),!0).forEach(function(n){zo(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Tr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function zo(r,e,t){return e=Wo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Wo(r){var e=qo(r,"string");return typeof e=="symbol"?e:String(e)}function qo(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Rn=g.forwardRef((r,e)=>{var{localDashboardId:t,fetch:n,metadata:i}=r,a=Vi(n,t,i);return u.jsx(On,Dr(Dr({ref:e},r),a))});Rn.displayName="GridPanelPlugin";const Xo=Rn;function Mr(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function tn(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Mr(a,n,i,l,s,"next",o)}function s(o){Mr(a,n,i,l,s,"throw",o)}l(void 0)})}}function Gi(r){var e=it(),[t,n]=g.useState(),[i,a]=g.useState(),[l,s]=g.useState(!0),o=g.useCallback(tn(function*(){var c=yield r();return bi.makeModel(e,c)}),[e,r]),d=g.useCallback(tn(function*(){s(!0),a(void 0);try{var c=yield o();n(c),s(!1)}catch(p){a(p),s(!1)}}),[o]);g.useEffect(()=>{var c=!1;function p(){return v.apply(this,arguments)}function v(){return v=tn(function*(){s(!0),a(void 0);try{var m=yield o();c||(n(m),s(!1))}catch(C){c||(a(C),s(!1))}}),v.apply(this,arguments)}return p(),()=>{c=!0}},[o]),g.useEffect(function(){if(!t)return;function p(){a(new Error("Table disconnected")),n(void 0),s(!1)}return t.addEventListener(R.EVENT.DISCONNECT,p),()=>{t.removeEventListener(R.EVENT.DISCONNECT,p)}},[t]);var h=g.useMemo(()=>{if(l)return{reload:d,status:"loading"};if(i!=null)return{error:i,reload:d,status:"error"};if(t!=null)return{model:t,reload:d,status:"success"};throw new Error("Invalid state")},[i,l,t,d]);return h}function Hi(r,e){var{eventHub:t}=gn(),n=ai(),i=li();g.useEffect(function(){i==null||r==null||jt(t,i,r)},[t,i,r]),g.useEffect(function(){e==null||i==null||At(t,i,e)},[t,i,e]),g.useEffect(function(){if(i!=null)return()=>{jt(t,i,null),At(t,i,null)}},[t,i]);var a=g.useCallback(o=>wt(o,n),[n]),l=an(a),s=g.useMemo(()=>U.getInputFiltersForColumns(r??[],l.filter(o=>{var{value:d,excludePanelIds:h}=o;return d!=null&&(h==null||i!=null&&!h.includes(i))})),[r,i,l]);return s}function Bi(r,e){var{eventHub:t}=gn(),n=ai(),i=li(),a=Oa(),l=g.useCallback(f=>rt(f,n),[n]),s=an(l),o=g.useMemo(()=>{var f=new Set;return s.forEach(b=>{b.start.panelId===i&&f.add(b.start.columnName)}),[...f]},[s,i]),d=g.useCallback(f=>Pt(f,n),[n]),h=an(d),c=g.useCallback(f=>h&&f&&i!=null?h(i,f,{type:"tableLink"}):!1,[h,i]),p=h!=null,v=g.useCallback((f,b)=>{i!=null&&Mi(t,i,b)},[t,i]),m=g.useCallback(f=>{var b,y,S;if(!r||!e)return null;var{gridWrapper:P}=e,w=(b=P?.getBoundingClientRect())!==null&&b!==void 0?b:null;if(w==null||w.width<=0||w.height<=0)return null;var{metrics:T}=e.state;D(T);var{columnHeaderHeight:N,allColumnXs:O,allColumnWidths:M,right:E,columnHeaderMaxDepth:I}=T,q=r.getColumnIndexByName(f);D(q);var B=e.getVisibleColumn(q),j=(y=O.get(B))!==null&&y!==void 0?y:0,me=(S=M.get(B))!==null&&S!==void 0?S:0,ke=We(B>E?w.right:w.left+j+me*.5,w.left,w.right),Ie=w.top+N*I;return[ke,Ie]},[r,e]),C=g.useCallback(f=>{i!=null&&zt(t,i,f,{type:"tableLink"})},[t,i]);return g.useEffect(function(){if(!(!e||a==null||i==null))return lr(t,i,{getCoordinates:m,setFilterValues:e.setFilterMap,unsetFilterValue:()=>{},panelId:a}),()=>{lr(t,i,null)}},[t,i,m,e,a]),{alwaysFetchColumns:o,columnSelectionValidator:c,isSelectingColumn:p,onColumnSelected:C,onDataSelected:v}}function Lr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function kt(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Lr(Object(t),!0).forEach(function(n){Zo(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Lr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Zo(r,e,t){return e=Yo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Yo(r){var e=Qo(r,"string");return typeof e=="symbol"?e:String(e)}function Qo(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function Ki(r){var{fetch:e}=r,t=ma(Ht),{eventHub:n}=gn(),i=Gi(e),a=it(),l=g.useMemo(()=>new U(a),[a]),[s,o]=Ts(void 0,{version:1,type:"GridWidgetPlugin"}),d=g.useRef(s),h=g.useMemo(()=>{if(!(i.status!=="success"||d.current===void 0))return kt(kt({},l.hydrateIrisGridState(i.model,d.current)),U.hydrateGridState(i.model,d.current))},[i,l]),c=g.useMemo(()=>ln.makeMemoizedCombinedGridStateDehydrator(),[]),p=g.useCallback((y,S)=>{if(!(i.status!=="success"||y==null||S==null)){var P=c(i.model,y,S);o(P)}},[i,o,c]),v=Hi(i.status==="success"?i.model.columns:null,i.status==="success"&&je(i.model)?i.model.table:void 0),m=g.useRef(null),C=Bi(i.status==="success"?i.model:null,m.current),f=g.useCallback(()=>{m.current!=null&&m.current.clearAllFilters()},[]);if(Me(n,we.CLEAR_ALL_FILTERS,f),i.status==="loading")return u.jsx(Ct,{isLoading:!0});if(i.status==="error")return u.jsx(Ct,{errorMessage:si(i.error),isLoading:!1});var{model:b}=i;return u.jsx(vn,kt(kt({ref:m,model:b,settings:t,onStateChange:p,inputFilters:v},C),h))}var Jo={name:"IrisGridPanel",title:"Table",type:Ne.WIDGET_PLUGIN,component:Ki,panelComponent:Rn,supportedTypes:["Table","TreeTable","HierarchicalTable","PartitionedTable"],icon:ul};const ed=Jo;function Or(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Te(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Or(Object(t),!0).forEach(function(n){td(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Or(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function td(r,e,t){return e=nd(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function nd(r){var e=rd(r,"string");return typeof e=="symbol"?e:String(e)}function rd(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function zi(r){var e=r;return typeof e.getCoordinateForColumn=="function"}function Nr(r){var e=r;return zi(r)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function kr(r){return r.description==null||!r.description.startsWith("Preview of type: ")}var Ir=V.module("LinkerUtils");class id{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 Ir.debug2("Incompatible panel ids",e,t,n),!1;var{columnType:i}=e,{columnType:a}=t,l=a===null||H.isCompatibleType(i,a);return l?!0:(Ir.debug2("Incompatible type",i,a),!1)}static findColumn(e,t){var{columnName:n,columnType:i}=t;return e.find(a=>{var{name:l,type:s}=a;return l===n&&s===i})}static cloneLinksForPanel(e,t,n){var i=[];return e.forEach(a=>{var l;a.start.panelId===t&&a.type!=="filterSource"?i.push(Te(Te({},a),{},{id:ae(),start:Te(Te({},a.start),{},{panelId:n})})):((l=a.end)===null||l===void 0?void 0:l.panelId)===t&&i.push(Te(Te({},a),{},{id:ae(),end:Te(Te({},a.end),{},{panelId:n})}))}),i}}const Re=id;function Wi(r,e,t){return e=ad(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ad(r){var e=ld(r,"string");return typeof e=="symbol"?e:String(e)}function ld(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var sd=V.module("LinkerLink"),xr=.015,_r=1.5,qi=12,Xi=12,Rr=2,It=Math.sqrt((Xi*.5)**2+qi**2),jr=Math.asin(Xi*.5/qi),Ar=15,De=Math.PI*.5;class Qe extends g.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(H.isNumberType(e)||H.isCharType(e))return gl(t);if(H.isTextType(e))return bl(t);if(H.isDateType(e))return Cl(t);if(H.isBooleanType(e)){if(t===ct.eq)return"is equal to";if(t===ct.notEq)return"is not equal to"}throw new Error("Unrecognized column type: ".concat(e))}catch(n){return sd.warn(n),""}}constructor(e){super(e),Wi(this,"getOperators",k((t,n)=>{var{onOperatorChanged:i}=this.props,a=H.getFilterTypes(n);return H.isBooleanType(n)&&(a=[ct.eq,ct.notEq]),a.flatMap((l,s)=>{if(l==="eqIgnoreCase"||l==="notEqIgnoreCase")return[];var o="";return l==="startsWith"?o="a*":l==="endsWith"?o="*z":o=H.getFilterOperatorString(l),[{title:Qe.getLabelForLinkFilter(n,l),icon:u.jsx("b",{children:o}),action:()=>i(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:i}=this.props;e.altKey?i(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:i,y1:a,x2:l,y2:s,id:o,startColumnType:d,type:h}=this.props,{isHovering:c}=this.state,p=Math.sqrt((i-l)**2+(a-s)**2),v=Math.atan2(s-a,l-i),m=Math.sin(v),C=Math.cos(v)+2,f=window.innerWidth,b=window.innerHeight,y=0,S=0,P=Math.max(y,Math.min(i+(l-i)/2+m*(p*xr)**_r,f)),w=Math.max(S,Math.min(a+(s-a)/2+C*(p*xr)**_r,b)),T="M ".concat(i," ").concat(a," Q ").concat(P," ").concat(w," ").concat(l," ").concat(s),N="M ".concat(y," ").concat(S," L ").concat(y," ").concat(b," L ").concat(f," ").concat(b," L ").concat(f," ").concat(S,` z
5
+ This note can be edited using **markdown** for styling.`);kn(Ae,"getClosedMarkdowns",k(r=>r.filter(e=>e.component==="MarkdownPanel"&&e.props.panelState.content!==""&&e.props.panelState.content!==null).reverse()));const _t=Ae;function gt(r,e,t){return e=fo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function fo(r){var e=mo(r,"string");return typeof e=="symbol"?e:String(e)}function mo(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var go=g.lazy(()=>Sl(()=>import("./MarkdownEditor-a32a9c3a.js"),["./MarkdownEditor-a32a9c3a.js","./vendor-3e5e4180.js","./helpers-de833af9.js","./vendor-7509d17c.css","./ControlType-7a644160.js","./index-dd7f33be.js","./monaco-b5248072.js","./monaco-f18fde03.css","./index-7d08f7c0.css","./ControlType-fbf3b3ed.css","./mathjax-d42af1a5.js"],import.meta.url)),Nt=V.module("MarkdownPanel");class In extends g.Component{constructor(e){super(e),gt(this,"markdownEditor",void 0),gt(this,"editor",void 0),gt(this,"getClosedMarkdowns",k(_t.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=_t.DEFAULT_CONTENT),this.state={isStartPageShown:n==null&&this.getClosedMarkdowns(e.closedPanels).length!==0,isEditing:!1,content:n,panelState:t},this.markdownEditor=null}setEditorPosition(e){D(this.markdownEditor);var{container:t}=this.markdownEditor;if(this.editor&&t!=null){var n,i,a=t.getBoundingClientRect().top,l=t.scrollTop,s=t.scrollHeight,o=(n=(i=this.editor.getModel())===null||i===void 0?void 0:i.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){Nt.debug("Markdown Editor Initialized..."),this.editor=e}handleCreateMarkdown(){Nt.debug("create markdown..."),this.setState({isStartPageShown:!1,content:"",isEditing:!0,panelState:{content:""}},()=>{this.editor!=null&&this.editor.focus!=null&&this.editor.focus()})}handleOpenMarkdown(e){Nt.debug("open markdown...",e);var{glContainer:t,glEventHub:n}=this.props,i=F.getComponentConfigFromContainer(t);n.emit(J.REOPEN,e,i)}handleDeleteMarkdown(e){var{glEventHub:t}=this.props;t.emit(J.DELETE,e)}handleEditorBlur(e){var t;Nt.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 i=(t=this.editor)===null||t===void 0?void 0:t.getValue();this.setState({content:i,isEditing:!1,panelState:{content:i}})}}handleEditorResize(){var{isEditing:e}=this.state;e&&this.editor&&this.editor.layout()}render(){var{glContainer:e,glEventHub:t,closedPanels:n}=this.props,{isEditing:i,isStartPageShown:a,content:l}=this.state,s=this.getClosedMarkdowns(n);return u.jsx(yt,{glContainer:e,glEventHub:t,className:"markdown-panel",componentPanel:this,onResize:this.handleEditorResize,onBlur:this.handleEditorBlur,isClonable:!0,isRenamable:!0,children:a?u.jsx(co,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):u.jsx(Ii,{isEditing:i,onDoubleClick:this.handleContainerDoubleClick,children:u.jsx(g.Suspense,{fallback:u.jsx(Ct,{}),children:u.jsx(go,{ref:o=>{this.markdownEditor=o},isEditing:i,content:l??_t.DEFAULT_CONTENT,onEditorInitialized:this.handleEditorInitialized})})})})}}gt(In,"defaultProps",{panelState:null});gt(In,"COMPONENT","MarkdownPanel");var bo=(r,e)=>{var{localDashboardId:t}=e;return{closedPanels:wa(r,t)}},Co=Ue(bo,null,null,{forwardRef:!0})(In);const vt=Co;function _i(r){var{onClick:e}=r,t=g.useRef(null),n=g.useCallback(i=>{var a;(a=t.current)===null||a===void 0||a.blur(),e(i)},[e]);return u.jsxs(x,{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(re,{icon:vi,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}function mr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function gr(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?mr(Object(t),!0).forEach(function(n){Zt(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):mr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Zt(r,e,t){return e=So(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function So(r){var e=yo(r,"string");return typeof e=="symbol"?e:String(e)}function yo(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class xn extends g.Component{constructor(e){super(e),Zt(this,"irisGridRef",void 0),this.irisGridRef=ee.createRef(),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}}handleReload(){var e;(e=this.irisGridRef.current)===null||e===void 0||e.initModel(),this.setState({shouldFocusGrid:!0})}handleGridStateChange(){var e,t,n,{shouldFocusGrid:i}=this.state;i&&(e=this.irisGridRef.current)!==null&&e!==void 0&&(t=e.irisGrid)!==null&&t!==void 0&&(n=t.current)!==null&&n!==void 0&&n.grid&&(this.irisGridRef.current.irisGrid.current.grid.focus(),this.setState({shouldFocusGrid:!1}))}handlePanelStateUpdate(e){this.setState({panelState:e})}render(){return u.jsx(On,gr(gr({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},this.props),{},{children:u.jsx(_i,{onClick:this.handleReload})}))}}Zt(xn,"defaultProps",{panelState:null});Zt(xn,"COMPONENT","PandasPanel");const Ri=xn;function br(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function Cr(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){br(a,n,i,l,s,"next",o)}function s(o){br(a,n,i,l,s,"throw",o)}l(void 0)})}}function Sr(r,e,t){return e=Po(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Po(r){var e=wo(r,"string");return typeof e=="symbol"?e:String(e)}function wo(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Eo{constructor(e){Sr(this,"items",void 0),Sr(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 i=this.items[n];Gn(i)&&("".concat(i.filename,"/")===e||i.filename===e)&&(i.isExpanded=t)}return Promise.resolve()}collapseAll(){for(var e=0;e<this.items.length;e+=1){var t=this.items[e];Gn(t)&&(t.isExpanded=!1)}return Promise.resolve()}getViewportData(){return Promise.resolve({items:this.items,offset:0})}getSnapshot(e){return Cr(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return Cr(function*(){var n,i=yield t.getViewportData();(n=t.onUpdateCallback)===null||n===void 0||n.call(t,i)})()}setFilters(e){}setSorts(e){}setReversed(e){}close(){}onUpdate(e){return this.onUpdateCallback=e,jest.fn()}get size(){return this.items.length}}const Fo=Eo;function yr(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function dt(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){yr(a,n,i,l,s,"next",o)}function s(o){yr(a,n,i,l,s,"throw",o)}l(void 0)})}}function To(r,e,t){return e=Do(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Do(r){var e=Mo(r,"string");return typeof e=="symbol"?e:String(e)}function Mo(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Lo{constructor(e){To(this,"items",void 0),this.items=e}getTable(){var e=this;return dt(function*(){return new Fo(e.items)})()}saveFile(e){throw new Error("Method not implemented.")}loadFile(e){throw new Error("Method not implemented.")}copyFile(e,t){return dt(function*(){throw new Error("Method not implemented.")})()}deleteFile(e){var t=this;return dt(function*(){t.items=t.items.filter(n=>n.filename!==e)})()}moveFile(e,t){var n=this;return dt(function*(){for(var i=0;i<n.items.length;i+=1)if(n.items[i].filename===e){n.items[i].filename=t,n.items[i].basename=Ea.getBaseName(t),n.items[i].id=t;break}})()}info(e){var t=this;return dt(function*(){var n=t.items.filter(a=>a.filename===e);if(n.length===0)throw new Fa;if(n.length>1)throw new Error("More than one matching file found");var i=n[0];return{filename:i.filename,basename:i.basename,id:i.filename,type:i.type}})()}createDirectory(e){throw new Error("Method not implemented.")}}const Oo=Lo;function Pr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Ut(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Pr(Object(t),!0).forEach(function(n){No(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Pr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function No(r,e,t){return e=ko(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ko(r){var e=Io(r,"string");return typeof e=="symbol"?e:String(e)}function Io(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function wr(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function xo(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){wr(a,n,i,l,s,"next",o)}function s(o){wr(a,n,i,l,s,"throw",o)}l(void 0)})}}function _o(r,e,t,n,i){return on.apply(this,arguments)}function on(){return on=xo(function*(r,e,t,n,i){var a,l,s,o;if(Xe(t)?(a=t.settings,l=t.table,s=void 0,o=t.tableSettings):(a={},l="",s=Sn(t)?t.figure:t.name,o={}),i!=null&&(i.tableSettings!=null&&(o=i.tableSettings),i.table!=null&&(l=i.table),i.figure!=null&&(s=i.figure),i.settings!=null&&(a=Ut(Ut({},a),i.settings))),s==null&&l==null){var d=yield n();return ft.makeModel(r,a,d)}if(s!=null){var h;if(t.type===r.VariableType.FIGURE){var c={name:s,type:r.VariableType.FIGURE};h=yield e(c)}else h=yield n();return ft.makeModel(r,a,h)}var p={name:l,type:r.VariableType.TABLE},v=yield e(p);return new U(r).applyTableSettings(v,o,ri(ol.getState())),ft.makeModelFromSettings(r,a,v)}),on.apply(this,arguments)}var _n=g.forwardRef((r,e)=>{var t=it(),n=Ta(),i=Ti(r)?r.panelState:void 0,{fetch:a,metadata:l,localDashboardId:s}=r,o=g.useMemo(()=>({metadata:l,localDashboardId:s,makeModel:()=>{if(l==null)throw new Error("Metadata is required for chart panel");return _o(t,n,l,a,i)}}),[l,s,t,n,a,i]);return u.jsx(Mn,Ut(Ut({ref:e},r),o))});_n.displayName="ChartPanelPlugin";const Ro=_n;function Er(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function jo(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Er(a,n,i,l,s,"next",o)}function s(o){Er(a,n,i,l,s,"throw",o)}l(void 0)})}}function ji(r){var e=it(),[t,n]=g.useState(),{fetch:i}=r;return g.useEffect(()=>{var a=!1;function l(){return s.apply(this,arguments)}function s(){return s=jo(function*(){var o=yield i(),d=yield ft.makeModel(e,void 0,o);a||n(d)}),s.apply(this,arguments)}return l(),()=>{a=!0}},[e,i]),t?u.jsx(mi,{model:t}):null}var Ao={name:"ChartPanel",title:"Chart",type:Ne.WIDGET_PLUGIN,component:ji,panelComponent:_n,supportedTypes:"Figure",icon:dl};const $o=Ao;function Ai(r){Et(r);var{id:e,layout:t}=r,n=it(),i=g.useCallback(a=>{var{metadata:l,panelId:s=ae(),table:o}=a,{settings:d}=l,h=()=>ft.makeModelFromSettings(n,d,o),c=Z.titleFromSettings(d),p={type:"react-component",component:Mn.COMPONENT,props:{localDashboardId:e,id:s,metadata:l,makeModel:h},title:c,id:s},{root:v}=t;F.openComponent({root:v,config:p})},[n,e,t]);return Me(t.eventHub,fe.CREATE_CHART,i),null}var Uo={name:"ChartBuilderPlugin",type:Ne.DASHBOARD_PLUGIN,component:Ai};const Vo=Uo;var ut=V.module("FilterPlugin");function $i(r){Et(r);var{id:e,layout:t,registerComponent:n}=r,i=fa(),[a]=g.useState(()=>new Map),[l]=g.useState(()=>new Map),[s]=g.useState(()=>new Map),o=g.useCallback(()=>{var f=Array.from(a.values()).flat().sort((S,P)=>{var w=ve.toLower(S.name),T=ve.toLower(P.name);if(w!==T)return w>T?1:-1;var N=ve.toLower(S.type),O=ve.toLower(P.type);return N!==O?N>O?1:-1:0}).reduce((S,P)=>((S.length===0||ve.toLower(S[S.length-1].name)!==ve.toLower(P.name)||ve.toLower(S[S.length-1].type)!==ve.toLower(P.type))&&S.push(P),S),[]),b=Array.from(l.values()).flat().sort((S,P)=>S.timestamp-P.timestamp),y=new Map(s);ut.debug("sendUpdate",{columns:f,filters:b,tableMap:y}),i(Da(e,{columns:f,filters:b,tableMap:y}))},[i,e,a,l,s]),d=g.useCallback((f,b)=>{ut.debug2("handleColumnsChanged",f,b),b==null?a.delete(f):a.set(f,[].concat(b)),o()},[a,o]),h=g.useCallback((f,b)=>{ut.debug2("handleFiltersChanged",f,b),b==null?l.delete(f):l.set(f,[].concat(b??[])),o()},[l,o]),c=g.useCallback((f,b)=>{ut.debug2("handleTableChanged",f,b),b==null?s.delete(f):s.set(f,b),o()},[s,o]),p=g.useCallback(f=>{ut.debug2("handlePanelUnmount",f);var b=F.getIdFromPanel(f);b!=null&&(a.delete(b),s.delete(b),l.delete(b)),o()},[a,l,s,o]),v=g.useCallback(f=>{var{title:b="DropdownFilter",metadata:y={},panelState:S=null,id:P=ae(),focusElement:w=F.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:N=null}=f,O={type:"react-component",component:Ze.COMPONENT,props:{id:P,metadata:y,panelState:S,localDashboardId:e},title:b,id:P},{root:M}=t;F.openComponent({root:M,config:O,focusElement:w,createNewStack:T,dragEvent:N})},[t,e]),m=g.useCallback(f=>{var{title:b="InputFilter",metadata:y={},panelState:S=null,id:P=ae(),focusElement:w=F.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:N=void 0}=f,O={type:"react-component",component:Ye.COMPONENT,props:{id:P,metadata:y,panelState:S,localDashboardId:e},title:b,id:P},{root:M}=t;F.openComponent({root:M,config:O,focusElement:w,createNewStack:T,dragEvent:N})},[t,e]),C=g.useCallback(f=>{var{title:b="FilterSets",metadata:y={},panelState:S=null,id:P=ae(),focusElement:w=F.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:N=null}=f,O={type:"react-component",component:xt.COMPONENT,props:{id:P,metadata:y,panelState:S,localDashboardId:e},title:b,id:P},{root:M}=t;F.openComponent({root:M,config:O,focusElement:w,createNewStack:T,dragEvent:N})},[t,e]);return g.useEffect(function(){var b=[n(Ze.COMPONENT,Ze),n(Ye.COMPONENT,Ye),n(xt.COMPONENT,xt)];return()=>{b.forEach(y=>y())}},[n]),cs(t.eventHub,d),vs(t.eventHub,h),ps(t.eventHub,c),Me(t.eventHub,we.OPEN_DROPDOWN,v),Me(t.eventHub,we.OPEN_INPUT,m),Me(t.eventHub,we.OPEN_FILTER_SET_MANAGER,C),Me(t.eventHub,J.UNMOUNT,p),null}var Go={name:"FilterPlugin",type:Ne.DASHBOARD_PLUGIN,component:$i};const Ho=Go;var Bo=V.module("@deephaven/app-utils/useTablePlugin");function Ui(){var r=ii(),e=g.useCallback(t=>{var n=r.get(t);if(n!=null){if(Ma(n))return n.component;if(La(n))return n.TablePlugin}var i="Unable to find table plugin ".concat(t,".");throw Bo.error(i),new Error(i)},[r]);return e}function Fr(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function Ko(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Fr(a,n,i,l,s,"next",o)}function s(o){Fr(a,n,i,l,s,"throw",o)}l(void 0)})}}function Vi(r,e,t){var n=it(),i=Ui(),a=g.useMemo(()=>({loadPlugin:i,localDashboardId:e,makeModel:function(){var l=Ko(function*(){var o=yield r();return bi.makeModel(n,o)});function s(){return l.apply(this,arguments)}return s}(),metadata:t}),[n,r,e,i,t]);return a}function Tr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Dr(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Tr(Object(t),!0).forEach(function(n){zo(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Tr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function zo(r,e,t){return e=Wo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Wo(r){var e=qo(r,"string");return typeof e=="symbol"?e:String(e)}function qo(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Rn=g.forwardRef((r,e)=>{var{localDashboardId:t,fetch:n,metadata:i}=r,a=Vi(n,t,i);return u.jsx(On,Dr(Dr({ref:e},r),a))});Rn.displayName="GridPanelPlugin";const Xo=Rn;function Mr(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function tn(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Mr(a,n,i,l,s,"next",o)}function s(o){Mr(a,n,i,l,s,"throw",o)}l(void 0)})}}function Gi(r){var e=it(),[t,n]=g.useState(),[i,a]=g.useState(),[l,s]=g.useState(!0),o=g.useCallback(tn(function*(){var c=yield r();return bi.makeModel(e,c)}),[e,r]),d=g.useCallback(tn(function*(){s(!0),a(void 0);try{var c=yield o();n(c),s(!1)}catch(p){a(p),s(!1)}}),[o]);g.useEffect(()=>{var c=!1;function p(){return v.apply(this,arguments)}function v(){return v=tn(function*(){s(!0),a(void 0);try{var m=yield o();c||(n(m),s(!1))}catch(C){c||(a(C),s(!1))}}),v.apply(this,arguments)}return p(),()=>{c=!0}},[o]),g.useEffect(function(){if(!t)return;function p(){a(new Error("Table disconnected")),n(void 0),s(!1)}return t.addEventListener(R.EVENT.DISCONNECT,p),()=>{t.removeEventListener(R.EVENT.DISCONNECT,p)}},[t]);var h=g.useMemo(()=>{if(l)return{reload:d,status:"loading"};if(i!=null)return{error:i,reload:d,status:"error"};if(t!=null)return{model:t,reload:d,status:"success"};throw new Error("Invalid state")},[i,l,t,d]);return h}function Hi(r,e){var{eventHub:t}=gn(),n=ai(),i=li();g.useEffect(function(){i==null||r==null||jt(t,i,r)},[t,i,r]),g.useEffect(function(){e==null||i==null||At(t,i,e)},[t,i,e]),g.useEffect(function(){if(i!=null)return()=>{jt(t,i,null),At(t,i,null)}},[t,i]);var a=g.useCallback(o=>wt(o,n),[n]),l=an(a),s=g.useMemo(()=>U.getInputFiltersForColumns(r??[],l.filter(o=>{var{value:d,excludePanelIds:h}=o;return d!=null&&(h==null||i!=null&&!h.includes(i))})),[r,i,l]);return s}function Bi(r,e){var{eventHub:t}=gn(),n=ai(),i=li(),a=Oa(),l=g.useCallback(f=>rt(f,n),[n]),s=an(l),o=g.useMemo(()=>{var f=new Set;return s.forEach(b=>{b.start.panelId===i&&f.add(b.start.columnName)}),[...f]},[s,i]),d=g.useCallback(f=>Pt(f,n),[n]),h=an(d),c=g.useCallback(f=>h&&f&&i!=null?h(i,f,{type:"tableLink"}):!1,[h,i]),p=h!=null,v=g.useCallback((f,b)=>{i!=null&&Mi(t,i,b)},[t,i]),m=g.useCallback(f=>{var b,y,S;if(!r||!e)return null;var{gridWrapper:P}=e,w=(b=P?.getBoundingClientRect())!==null&&b!==void 0?b:null;if(w==null||w.width<=0||w.height<=0)return null;var{metrics:T}=e.state;D(T);var{columnHeaderHeight:N,allColumnXs:O,allColumnWidths:M,right:E,columnHeaderMaxDepth:I}=T,q=r.getColumnIndexByName(f);D(q);var B=e.getVisibleColumn(q),j=(y=O.get(B))!==null&&y!==void 0?y:0,me=(S=M.get(B))!==null&&S!==void 0?S:0,ke=We(B>E?w.right:w.left+j+me*.5,w.left,w.right),Ie=w.top+N*I;return[ke,Ie]},[r,e]),C=g.useCallback(f=>{i!=null&&zt(t,i,f,{type:"tableLink"})},[t,i]);return g.useEffect(function(){if(!(!e||a==null||i==null))return lr(t,i,{getCoordinates:m,setFilterValues:e.setFilterMap,unsetFilterValue:()=>{},panelId:a}),()=>{lr(t,i,null)}},[t,i,m,e,a]),{alwaysFetchColumns:o,columnSelectionValidator:c,isSelectingColumn:p,onColumnSelected:C,onDataSelected:v}}function Lr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function kt(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Lr(Object(t),!0).forEach(function(n){Zo(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Lr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Zo(r,e,t){return e=Yo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Yo(r){var e=Qo(r,"string");return typeof e=="symbol"?e:String(e)}function Qo(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function Ki(r){var{fetch:e}=r,t=ma(Ht),{eventHub:n}=gn(),i=Gi(e),a=it(),l=g.useMemo(()=>new U(a),[a]),[s,o]=Ts(void 0,{version:1,type:"GridWidgetPlugin"}),d=g.useRef(s),h=g.useMemo(()=>{if(!(i.status!=="success"||d.current===void 0))return kt(kt({},l.hydrateIrisGridState(i.model,d.current)),U.hydrateGridState(i.model,d.current))},[i,l]),c=g.useMemo(()=>ln.makeMemoizedCombinedGridStateDehydrator(),[]),p=g.useCallback((y,S)=>{if(!(i.status!=="success"||y==null||S==null)){var P=c(i.model,y,S);o(P)}},[i,o,c]),v=Hi(i.status==="success"?i.model.columns:null,i.status==="success"&&je(i.model)?i.model.table:void 0),m=g.useRef(null),C=Bi(i.status==="success"?i.model:null,m.current),f=g.useCallback(()=>{m.current!=null&&m.current.clearAllFilters()},[]);if(Me(n,we.CLEAR_ALL_FILTERS,f),i.status==="loading")return u.jsx(Ct,{isLoading:!0});if(i.status==="error")return u.jsx(Ct,{errorMessage:si(i.error),isLoading:!1});var{model:b}=i;return u.jsx(vn,kt(kt({ref:m,model:b,settings:t,onStateChange:p,inputFilters:v},C),h))}var Jo={name:"IrisGridPanel",title:"Table",type:Ne.WIDGET_PLUGIN,component:Ki,panelComponent:Rn,supportedTypes:["Table","TreeTable","HierarchicalTable","PartitionedTable"],icon:ul};const ed=Jo;function Or(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Te(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Or(Object(t),!0).forEach(function(n){td(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Or(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function td(r,e,t){return e=nd(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function nd(r){var e=rd(r,"string");return typeof e=="symbol"?e:String(e)}function rd(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function zi(r){var e=r;return typeof e.getCoordinateForColumn=="function"}function Nr(r){var e=r;return zi(r)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function kr(r){return r.description==null||!r.description.startsWith("Preview of type: ")}var Ir=V.module("LinkerUtils");class id{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 Ir.debug2("Incompatible panel ids",e,t,n),!1;var{columnType:i}=e,{columnType:a}=t,l=a===null||H.isCompatibleType(i,a);return l?!0:(Ir.debug2("Incompatible type",i,a),!1)}static findColumn(e,t){var{columnName:n,columnType:i}=t;return e.find(a=>{var{name:l,type:s}=a;return l===n&&s===i})}static cloneLinksForPanel(e,t,n){var i=[];return e.forEach(a=>{var l;a.start.panelId===t&&a.type!=="filterSource"?i.push(Te(Te({},a),{},{id:ae(),start:Te(Te({},a.start),{},{panelId:n})})):((l=a.end)===null||l===void 0?void 0:l.panelId)===t&&i.push(Te(Te({},a),{},{id:ae(),end:Te(Te({},a.end),{},{panelId:n})}))}),i}}const Re=id;function Wi(r,e,t){return e=ad(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ad(r){var e=ld(r,"string");return typeof e=="symbol"?e:String(e)}function ld(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var sd=V.module("LinkerLink"),xr=.015,_r=1.5,qi=12,Xi=12,Rr=2,It=Math.sqrt((Xi*.5)**2+qi**2),jr=Math.asin(Xi*.5/qi),Ar=15,De=Math.PI*.5;class Qe extends g.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(H.isNumberType(e)||H.isCharType(e))return gl(t);if(H.isTextType(e))return bl(t);if(H.isDateType(e))return Cl(t);if(H.isBooleanType(e)){if(t===ct.eq)return"is equal to";if(t===ct.notEq)return"is not equal to"}throw new Error("Unrecognized column type: ".concat(e))}catch(n){return sd.warn(n),""}}constructor(e){super(e),Wi(this,"getOperators",k((t,n)=>{var{onOperatorChanged:i}=this.props,a=H.getFilterTypes(n);return H.isBooleanType(n)&&(a=[ct.eq,ct.notEq]),a.flatMap((l,s)=>{if(l==="eqIgnoreCase"||l==="notEqIgnoreCase")return[];var o="";return l==="startsWith"?o="a*":l==="endsWith"?o="*z":o=H.getFilterOperatorString(l),[{title:Qe.getLabelForLinkFilter(n,l),icon:u.jsx("b",{children:o}),action:()=>i(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:i}=this.props;e.altKey?i(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:i,y1:a,x2:l,y2:s,id:o,startColumnType:d,type:h}=this.props,{isHovering:c}=this.state,p=Math.sqrt((i-l)**2+(a-s)**2),v=Math.atan2(s-a,l-i),m=Math.sin(v),C=Math.cos(v)+2,f=window.innerWidth,b=window.innerHeight,y=0,S=0,P=Math.max(y,Math.min(i+(l-i)/2+m*(p*xr)**_r,f)),w=Math.max(S,Math.min(a+(s-a)/2+C*(p*xr)**_r,b)),T="M ".concat(i," ").concat(a," Q ").concat(P," ").concat(w," ").concat(l," ").concat(s),N="M ".concat(y," ").concat(S," L ").concat(y," ").concat(b," L ").concat(f," ").concat(b," L ").concat(f," ").concat(S,` z
6
6
  `).concat(Qe.makeCirclePath(i,a,Ar),`
7
7
  `).concat(Qe.makeCirclePath(l,s,Ar)),O="link-select-clip-".concat(o),M=Math.atan2(s-w,l-P),E=M-jr+Math.PI,I=M+jr+Math.PI,q=l+Math.cos(M)*Rr,B=s+Math.sin(M)*Rr,j=q+Math.cos(E)*It,me=B+Math.sin(E)*It,ke=q+Math.cos(I)*It,Ie=B+Math.sin(I)*It,lt="".concat(q,",").concat(B," ").concat(j,",").concat(me," ").concat(ke,",").concat(Ie),Ge=.25*i+.5*P+.25*l,He=.25*a+.5*w+.25*s,st=P-i+(l-P),ot=w-a+(s-w),te=ot/st,Yt=20,le=Yt/Math.sqrt(1+te**2),he=le*te,ge=le*-1,be=he*-1;Number.isFinite(te)?te>0?(le*=-1,he*=-1,ge*=-1,be*=-1,ge-=50-10*(Math.abs(v)%De),be+=10*(Math.abs(v)%De),le-=50-10*(Math.abs(v)%De),he+=10*(Math.abs(v)%De)):te<0?(ge+=10*(Math.abs(v)%De),be+=10*(Math.abs(v)%De),le+=10*(Math.abs(v)%De),he+=10*(Math.abs(v)%De)):(ge=15,be=10,le=-25,he=10):(ge=10,be=5,le=10,he=-35);var Be="";t!==void 0&&(t==="startsWith"?Be="a*":t==="endsWith"?Be="*z":Be=H.getFilterOperatorString(t));var Qt=h!=="chartLink"&&h!=="filterSource";return u.jsxs(u.Fragment,{children:[u.jsxs("svg",{className:ie(e,{hovering:c}),children:[u.jsx("clipPath",{id:O,children:u.jsx("path",{d:N,clipRule:"evenodd"})}),u.jsx("path",{className:"link-select",d:T,onClick:this.handleClick,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,clipPath:"url(#".concat(O,")"),"data-testid":"link-select"}),u.jsx("path",{className:"link-background",d:T}),u.jsx("path",{className:"link-foreground",d:T}),u.jsx("circle",{className:"link-dot",cx:i,cy:a,r:"5"}),u.jsx("polygon",{className:"link-triangle",points:lt})]}),d!=null&&n&&u.jsxs(u.Fragment,{children:[Qt&&u.jsx(x,{kind:"primary",className:"btn-fab btn-operator",style:{top:He+(te>=0?he:be),left:Ge+(te>=0?le:ge)},onClick:()=>{},icon:u.jsxs("div",{className:"fa-md fa-layers",children:[u.jsx("b",{children:Be}),u.jsx(re,{icon:hl,transform:"right-8 down-9 shrink-5"})]}),tooltip:"Change comparison operator",children:u.jsx(Na,{actions:this.getDropdownActions,popperOptions:{placement:"bottom-start"}})}),u.jsx(x,{kind:"primary",className:"btn-fab btn-delete",style:{top:He+(te<0?he:be),left:Ge+(te<0?le:ge)},onClick:this.handleDelete,icon:pn,tooltip:"Delete"})]})]})}}Wi(Qe,"defaultProps",{className:"",isSelected:!1,onClick(){},onDelete(){}});const od=Qe;function $r(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Ur(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?$r(Object(t),!0).forEach(function(n){jn(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):$r(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function jn(r,e,t){return e=dd(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function dd(r){var e=ud(r,"string");return typeof e=="symbol"?e:String(e)}function ud(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var nn=V.module("LinkerOverlayContent");class Zi extends g.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=ee.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){nn.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:i,columnName:a}=e,l=i,s=n.get(i);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(!zi(d))throw new Error("Panel does not have getCoordinateForColumn method: ".concat(l));try{var h=d.getCoordinateForColumn(a);if(h!=null)return h}catch{nn.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 F.getTabPoint(c)}handleOperatorChanged(e,t){var{links:n,onLinksUpdated:i}=this.props,a=n.map(l=>l.id===e?Ur(Ur({},l),{},{operator:t}):l);i(a)}handleBlur(){this.setState({mode:"select"})}handleResize(){var{dialog:e}=this.state;if(e&&this.dialogRef.current){var t=this.dialogRef.current.getBoundingClientRect(),n=We(e.x,0,window.innerWidth-t.width),i=We(e.y,0,window.innerHeight-t.height);this.setState({dialog:{x:n,y:i}})}}handleMouseMove(e){var{offset:t,isDragging:n}=this.state;if(this.setState({mouse:{x:e.clientX,y:e.clientY}}),n&&this.dialogRef.current){var i=this.dialogRef.current.getBoundingClientRect(),a=We(window.innerWidth-(e.clientX+i.width+t.x),0,window.innerWidth-i.width),l=We(window.innerHeight-(e.clientY+i.height+t.y),0,window.innerHeight-i.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(i=>n(i))}}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:i,onLinkSelected:a,onLinkDeleted:l,onAllLinksDeleted:s,onDone:o}=this.props,{mouse:d,dialog:h,isDragging:c,mode:p}=this.state,v=t.map(m=>{try{var C,f,{id:b,type:y,isReversed:S,start:P,end:w,operator:T}=m,N=P.columnType,[O,M]=this.getPointFromLinkPoint(P),E=(C=d?.x)!==null&&C!==void 0?C:O,I=(f=d?.y)!==null&&f!==void 0?f:M;if(w!=null&&([E,I]=this.getPointFromLinkPoint(w)),S!=null&&S){var[q,B]=[O,M];[O,M]=[E,I],[E,I]=[q,B]}var j=ie("linker-link",{disabled:e},{"link-filter-source":y==="filterSource"},{"link-invalid":y==="invalid"},{interactive:m.end==null},{"link-is-selected":n.has(b)},{"danger-delete":p==="delete"});return{x1:O,y1:M,x2:E,y2:I,id:b,className:j,operator:T,startColumnType:N,type:y}}catch(me){return nn.warn("Unable to get point for link",m,me),null}}).filter(m=>m!=null);return u.jsxs("div",{className:ie("linker-overlay",{"danger-delete":p==="delete"}),children:[v.map(m=>{var{x1:C,y1:f,x2:b,y2:y,id:S,className:P,operator:w,startColumnType:T,type:N}=m;return u.jsx(od,{className:P,id:S,x1:C,y1:f,x2:b,y2:y,onClick:a,onDelete:l,isSelected:n.has(S),operator:w,startColumnType:T,type:N,onOperatorChanged:this.handleOperatorChanged},S)}),u.jsxs("div",{className:ie("linker-toast-dialog",{dragging:c}),ref:this.dialogRef,style:{bottom:h?.y,right:h?.x},"data-testid":"linker-toast-dialog",children:[u.jsx(x,{draggable:!0,kind:"inline",className:"btn-drag-handle",icon:cl,onClick:()=>{},onMouseDown:this.handleMouseDown,children:!c&&u.jsx(ka,{children:"Drag to reposition"})}),u.jsx("div",{className:"toast-body",children:i}),u.jsxs("div",{className:"toast-footer",children:[u.jsx(x,{kind:"secondary",onClick:s,children:"Clear All"}),u.jsx(x,{kind:"primary",onClick:o,children:"Done"})]})]}),u.jsx(Xr,{actions:[{action:this.handleEscapePressed,shortcut:Ia.LINKER_CLOSE,isGlobal:!0}]})]})}}jn(Zi,"defaultProps",{disabled:"false"});const hd=Zi;function Vr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Gr(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Vr(Object(t),!0).forEach(function(n){Rt(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Vr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Rt(r,e,t){return e=cd(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function cd(r){var e=pd(r,"string");return typeof e=="symbol"?e:String(e)}function pd(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var W=V.module("Linker"),vd=(r,e)=>({activeTool:un(r),dh:Jr(r),isolatedLinkerPanelId:Gt(r,e.localDashboardId),links:rt(r,e.localDashboardId),timeZone:ri(r)}),fd=Ue(vd,{setActiveTool:Zr,setDashboardLinks:oi,addDashboardLinks:di,deleteDashboardLinks:ui,setDashboardIsolatedLinkerPanelId:dn,setDashboardColumnSelectionValidator:hi});class md extends g.Component{constructor(e){super(e),Rt(this,"linkTargetPropMap",new Map),Rt(this,"removerFns",[]),Rt(this,"getCachedLinks",k((t,n,i)=>{var a=[...t];return n!=null&&n.start!=null&&a.push(n),i!==void 0?a.filter(l=>{var s,o;return(l==null||(s=l.start)===null||s===void 0?void 0:s.panelId)===i||(l==null||(o=l.end)===null||o===void 0?void 0:o.panelId)===i||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===de.DEFAULT&&this.reset())}componentDidCatch(e,t){W.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(fe.COLUMN_SELECTED,this.handleGridColumnSelect),t.on(fe.DATA_SELECTED,this.handleUpdateValues),t.on(fe.STATE_CHANGED,this.handleStateChange),t.on(sn.COLUMN_SELECTED,this.handleChartColumnSelect),t.on(J.CLONED,this.handlePanelCloned),this.removerFns=[hs(t,this.handleColumnsChanged),fs(t,this.handleLinkPointSelected),ms(t,this.handleUpdateValues),gs(t,this.handleTargetRegistered)],t.on(J.CLOSE,this.handlePanelClosed),t.on(J.CLOSED,this.handlePanelClosed),t.on(J.DRAGGING,this.handlePanelDragging),t.on(J.DROPPED,this.handlePanelDropped)}stopListening(e){e.off("stateChanged",this.handleLayoutStateChanged);var{eventHub:t}=e;t.off(fe.COLUMN_SELECTED,this.handleGridColumnSelect),t.off(fe.DATA_SELECTED,this.handleUpdateValues),t.off(fe.STATE_CHANGED,this.handleStateChange),t.off(sn.COLUMN_SELECTED,this.handleChartColumnSelect),t.off(J.CLONED,this.handlePanelCloned),t.off(J.CLOSE,this.handlePanelClosed),t.off(J.CLOSED,this.handlePanelClosed),t.off(J.DRAGGING,this.handlePanelDragging),t.off(J.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(de.DEFAULT)}this.setState({linkInProgress:void 0})}handleDone(){var{setActiveTool:e}=this.props;e(de.DEFAULT)}handleChartColumnSelect(e,t){var n=F.getIdFromPanel(e);D(n),this.columnSelected(n,t,"chartLink",!0)}handleColumnsChanged(e,t){W.debug("handleColumnsChanged",e,t);var{links:n}=this.props;if(e==null){W.error("Invalid filter columns source id",e);return}if(t==null){this.deleteLinksForPanelId(e);return}var i=n.filter(a=>{var{start:l,end:s}=a;return l.panelId===e&&Re.findColumn(t,l)==null||s!=null&&s.panelId===e&&Re.findColumn(t,s)==null});this.deleteLinks(i)}handleGridColumnSelect(e,t){if(!kr(t)){W.debug2("Column is not filterable");return}var n=F.getIdFromPanel(e);D(n),this.columnSelected(n,t,"tableLink")}handleLinkPointSelected(e,t,n){var{type:i}=n,a=i==="filterSource",l=i==="chartLink"||i==="filterSource";if(!this.isOverlayShown()&&e!=null&&a){var{links:s,localDashboardId:o,setActiveTool:d,setDashboardIsolatedLinkerPanelId:h}=this.props,c=s.filter(p=>{var v,m;return((v=p.start)===null||v===void 0?void 0:v.panelId)===e||((m=p.end)===null||m===void 0?void 0:m.panelId)===e});d(de.LINKER),h(o,e),c.length===0&&this.columnSelected(e,t,i,l,e);return}this.columnSelected(e,t,i,l)}columnSelected(e,t,n){var i=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:ae(),start:{panelId:e,columnName:o,columnType:d},type:"invalid",isReversed:i};i&&(h.endType=n),W.debug("starting link",h),this.setState({linkInProgress:h})}else{var c,{links:p}=this.props,{start:v,id:m,isReversed:C=!1}=s,f={panelId:e,columnName:o,columnType:d},b=!(C&&i)&&Re.isLinkValid(C?f:v,C?v:f,a??l);if(!b){W.debug("Ignore invalid link connection",s,f);return}var y=(c=s.endType)!==null&&c!==void 0?c:n;switch(y){case"invalid":W.debug("Ignore invalid link connection",s,f);return;case"filterSource":{var S=C!==void 0&&C?v.panelId:f.panelId,P=p.filter(M=>{var{end:E}=M;return E?.panelId===S});this.deleteLinks(P);break}case"chartLink":{var w=C===!0?v:f,T=C===!0?f:v;W.debug("creating chartlink",{existingLinkEnd:w,start:v,end:f});var N=p.filter(M=>{var{end:E,start:I}=M;return I?.panelId===T.panelId&&E?.panelId===w.panelId&&E?.columnName===w.columnName&&E?.columnType===w.columnType});this.deleteLinks(N);break}}var O={start:C?f:v,end:C?v:f,id:m,type:y,operator:ct.eq};W.info("creating link",O),this.setState({linkInProgress:void 0,selectedIds:new Set([m])},()=>{this.addLinks([O])})}}}unsetFilterValueForLink(e){var{panelManager:t}=this.props;if(e.end){var n,{end:i}=e,{panelId:a,columnName:l,columnType:s}=i,{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?Nr(h)?h.unsetFilterValue(l,s):W.debug("endPanel.unsetFilterValue not implemented",h):W.debug("endPanel no longer exists or target is not a panel. Ignoring unsetFilterValue",a)}}setPanelFilterMap(e,t){var n;W.debug("Set filter data for panel:",e,t);var{panelManager:i}=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=i.getOpenedPanelById(e);s?Nr(s)?s.setFilterMap(t):W.debug("panel.setFilterMap not implemented",e,s):W.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:i}=this.props;i(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(i=>{var a,l;return(i==null||(a=i.start)===null||a===void 0?void 0:a.panelId)===t||(i==null||(l=i.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(i=>i.id===e);n?this.deleteLinks([n]):W.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:i,timeZone:a}=this.props,l=new Map,s=0;s<i.length;s+=1){var{start:o,end:d,operator:h}=i[s];if(o.panelId===e&&d!=null&&h!=null){var c,p,{panelId:v,columnName:m,columnType:C}=d,f=l.get(v),b=f??new Map,y=(c=(p=b.get(m))===null||p===void 0?void 0:p.filterList)!==null&&c!==void 0?c:[],{visibleIndex:S,isExpandable:P,isGrouped:w}=t[o.columnName],{value:T}=t[o.columnName],N="".concat(T);if(T===null&&P&&w&&(T=void 0),C!=null&&H.isDateType(C)){var O=new ei(n,{timeZone:a,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:xa.FULL_DATE_FORMAT});N=O.format(T)}y.push({operator:h,text:N,value:T,startColumnIndex:S}),b.set(m,{columnType:C,filterList:y}),l.set(v,b)}}l.forEach((M,E)=>{this.setPanelFilterMap(E,M)})}handlePanelCloned(e,t){var{links:n}=this.props,i=F.getIdFromPanel(e),a=t.id;if(i!=null){var l=Re.cloneLinksForPanel(n,i,a);this.addLinks(l)}}handlePanelDragging(e){for(var{links:t}=this.props,n=0;n<t.length;n+=1){var i=t[n],{start:a,end:l}=i;if(a.panelId===e||l?.panelId===e){this.setState({isDraggingPanel:!0});return}}}handlePanelDropped(){this.setState({isDraggingPanel:!1})}handlePanelClosed(e){W.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 i=t[n],{start:a,end:l,id:s}=i;(a.panelId===e||l?.panelId===e)&&this.handleLinkDeleted(s)}}isOverlayShown(){var{activeTool:e}=this.props;return e===de.LINKER}updateSelectionValidators(){var{activeTool:e,setDashboardColumnSelectionValidator:t,localDashboardId:n}=this.props;switch(e){case de.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:Gr(Gr({},n),{},{type:e})}:null})}isColumnSelectionValid(e,t,n){var i,{linkInProgress:a}=this.state,{isolatedLinkerPanelId:l}=this.props,s=typeof e=="string"?n.type==="filterSource"||n.type==="chartLink":F.getComponentNameFromPanel(e)!=="IrisGridPanel";if(t==null)return a?.start!=null&&this.updateLinkInProgressType("invalid"),!1;if(!kr(t))return W.debug2("Column is not filterable",t.description),a?.start!=null&&this.updateLinkInProgressType("invalid"),!1;if(a?.start==null)return!0;var{isReversed:o=!1,start:d}=a,h=typeof e=="string"?e:F.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?Re.isLinkValid(c,d,l):Re.isLinkValid(d,c,l);return this.updateLinkInProgressType(p?(i=a.endType)!==null&&i!==void 0?i:n.type:"invalid"),p}render(){var{links:e,isolatedLinkerPanelId:t,panelManager:n}=this.props,{linkInProgress:i,selectedIds:a,isDraggingPanel:l}=this.state,s=this.isOverlayShown(),o=i!=null&&i.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(rn,{in:s,mountOnEnter:!0,unmountOnExit:!0,onExited:this.handleExited,children:u.jsx(hd,{disabled:o,panelManager:n,links:this.getCachedLinks(e,i,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 gd=fd(md);const bd=gd;function Yi(r){Et(r);var{id:e,layout:t,panelManager:n}=r;return u.jsx(bd,{layout:t,localDashboardId:e,panelManager:n})}var Cd={name:"LinkerPlugin",type:Ne.DASHBOARD_PLUGIN,component:Yi};const Sd=Cd;function Qi(r){Et(r);var{id:e,layout:t,panelManager:n,registerComponent:i}=r,a=g.useCallback(function(){var{title:l="",metadata:s={},id:o=ae(),focusElement:d=F.DEFAULT_FOCUS_SELECTOR,createNewStack:h=!1,dragEvent:c=null}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},p=n.getOpenedPanelConfigsOfType(vt.COMPONENT),v=p.map(y=>{var S;return(S=y.title)!==null&&S!==void 0?S:""}),m=l!=null&&l!==""?l:_t.getNewMarkdownTitle(v),C=null,f={type:"react-component",component:vt.COMPONENT,props:{id:o,metadata:s,panelState:{content:C},localDashboardId:e},title:m,id:o},{root:b}=t;F.openComponent({root:b,config:f,focusElement:d,createNewStack:h,dragEvent:c})},[e,t,n]);return g.useEffect(function(){var s=[i(vt.COMPONENT,vt)];return()=>{s.forEach(o=>o())}},[i]),Me(t.eventHub,ci.OPEN,a),null}var yd={name:"MarkdownPlugin",type:Ne.DASHBOARD_PLUGIN,component:Qi};const Pd=yd;function Hr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Br(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Hr(Object(t),!0).forEach(function(n){wd(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Hr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function wd(r,e,t){return e=Ed(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Ed(r){var e=Fd(r,"string");return typeof e=="symbol"?e:String(e)}function Fd(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var An=g.forwardRef((r,e)=>{var{localDashboardId:t,fetch:n,metadata:i}=r,a=Vi(n,t,i);return u.jsx(Ri,Br(Br({ref:e},r),a))});An.displayName="PandasPanelPlugin";const Td=An;function Ji(r){var{fetch:e}=r,t=Gi(e);if(t.status==="loading")return u.jsx(Ct,{isLoading:!0});if(t.status==="error")return u.jsx(Ct,{errorMessage:si(t.error),isLoading:!1});var{model:n,reload:i}=t;return u.jsx(vn,{model:n,children:u.jsx(_i,{onClick:i})})}var Dd={name:"PandasPanel",title:"Pandas",type:Ne.WIDGET_PLUGIN,component:Ji,panelComponent:An,supportedTypes:"pandas.DataFrame",icon:pl};const Md=Dd;function Kr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function ht(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Kr(Object(t),!0).forEach(function(n){Ld(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Kr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Ld(r,e,t){return e=Od(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Od(r){var e=Nd(r,"string");return typeof e=="symbol"?e:String(e)}function Nd(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var kd=V.module("WidgetLoaderPlugin");function Id(r){var e;function t(n,i){var a,l=r.component,{metadata:s}=n,o=Ra(l);return u.jsx(Tt,ht(ht({widgetName:(a=s?.name)!==null&&a!==void 0?a:void 0,widgetType:r.title},n),{},{children:o?u.jsx(l,ht(ht({},n),{},{ref:i})):u.jsx(l,ht({},n))}))}return t.displayName="WidgetLoaderPlugin(".concat((e=r.component.displayName)!==null&&e!==void 0?e:r.name,")"),g.forwardRef(t)}function ea(r){var e=ii(),t=g.useMemo(()=>{var s=new Map;return e.forEach(o=>{_a(o)&&[o.supportedTypes].flat().forEach(d=>{if(d!=null&&d!==""){if(s.has(d)){var h;kd.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]);Et(r);var{id:n,layout:i,registerComponent:a}=r,l=g.useCallback(s=>{var o,{dragEvent:d,panelId:h=ae(),fetch:c,widget:p}=s,{type:v}=p,m=v!=null?t.get(v):null;if(m!=null){var C=(o=p.name)!==null&&o!==void 0?o:v,f={localDashboardId:n,metadata:p,fetch:c},b={type:"react-component",component:m.name,props:f,title:C,id:h},{root:y}=i;F.openComponent({root:y,config:b,dragEvent:d})}},[n,i,t]);return g.useEffect(()=>{var s=[...new Set(t.values())].map(o=>{var{panelComponent:d}=o;return d==null?a(o.name,Id(o)):a(o.name,d)});return()=>{s.forEach(o=>o())}},[a,t]),Me(i.eventHub,J.OPEN,l),null}var xd={name:"WidgetLoaderPlugin",type:Ne.DASHBOARD_PLUGIN,component:ea};const _d=xd;var Rd=L.shape({state:L.shape({panelState:L.shape({})})}),jd=L.shape({panelId:L.string.isRequired,columnName:L.string.isRequired,columnType:L.string.isRequired}),zr=L.shape({panelId:L.string.isRequired,columnName:L.string.isRequired}),ta=L.shape({start:zr,end:zr,id:L.string,isReversed:L.bool}),Ad=L.arrayOf(ta),$d=L.shape({name:L.string.isRequired,operateAs:L.string.isRequired,groups:L.arrayOf(L.string).isRequired,permissions:L.shape({canUsePanels:L.bool.isRequired,canCopy:L.bool.isRequired,canDownloadCsv:L.bool.isRequired,canLogout:L.bool.isRequired}).isRequired}),Ud=Object.freeze({LinkPoint:jd,Link:ta,Links:Ad,Panel:Rd,User:$d});const Vd=Ud;var Gd=(r,e)=>r[e]===null?null:L.bool,Hd=(r,e)=>r[e]===null?null:L.string,Bd=Object.freeze({nullableBoolean:Gd,nullableString:Hd});const Kd=Bd,eu=Object.freeze(Object.defineProperty({__proto__:null,ChartBuilderPlugin:Ai,ChartBuilderPluginConfig:Vo,ChartEvent:sn,ChartPanel:Mn,ChartPanelPlugin:Ro,ChartPluginConfig:$o,ChartWidgetPlugin:ji,CommandHistoryPanel:ja,CommonPropTypes:Kd,ConsoleEvent:Aa,ConsolePanel:$a,ConsolePlugin:Ua,ControlType:Va,DropdownFilterPanel:Ze,FileExplorerPanel:Ga,FilterPlugin:$i,FilterPluginConfig:Ho,FilterSetManager:Oi,FilterSetManagerPanel:xt,GridPanelPlugin:Xo,GridPluginConfig:ed,GridWidgetPlugin:Ki,InputFilterEvent:we,InputFilterPanel:Ye,IrisGridEvent:fe,IrisGridPanel:On,LinkerPlugin:Yi,LinkerPluginConfig:Sd,LinkerUtils:Re,LogPanel:Ha,MarkdownEvent:ci,MarkdownPanel:vt,MarkdownPlugin:Qi,MarkdownPluginConfig:Pd,MockFileStorage:Oo,NotebookEvent:Ba,NotebookPanel:Ka,PandasEvent:os,PandasPanel:Ri,PandasPanelPlugin:Td,PandasPluginConfig:Md,PandasWidgetPlugin:Ji,Panel:yt,TabEvent:za,ToolType:de,UIPropTypes:Vd,WidgetLoaderPlugin:ea,WidgetLoaderPluginConfig:_d,WidgetPanel:Tt,WidgetPanelTooltip:Ft,addDashboardLinks:di,deleteDashboardLinks:ui,getColumnSelectionValidatorForDashboard:Pt,getColumnsForDashboard:hn,getDashboardConnection:Wa,getDashboardConsoleSettings:qa,getDashboardSessionWrapper:Xa,getFilterSetsForDashboard:ni,getInputFiltersForDashboard:wt,getIsolatedLinkerPanelIdForDashboard:Gt,getLinksForDashboard:rt,getTableMapForDashboard:Vt,isChartPanelDehydratedProps:Ti,isChartPanelFigureMetadata:Sn,isChartPanelTableMetadata:Xe,isGLChartPanelState:Fi,isIrisGridPanelMetadata:ki,isLegacyIrisGridPanelMetadata:Ni,setDashboardColumnSelectionValidator:hi,setDashboardConnection:Za,setDashboardConsoleSettings:Ya,setDashboardFilterSets:ti,setDashboardIsolatedLinkerPanelId:dn,setDashboardLinks:oi,setDashboardSessionWrapper:Qa,useDashboardColumnFilters:Hi,useGridLinker:Bi,useLoadTablePlugin:Ui},Symbol.toStringTag,{value:"Module"}));export{fn as C,eu as D,Xn as F,Wl as I,Li as P,ft as a,ln as b,bi as c,Rl as d,Tl as e,Hl as f,Jd as g,Ts as h,Yn as i,gn as u};
8
- //# sourceMappingURL=index-669d2b9e.js.map
8
+ //# sourceMappingURL=index-6b74db9b.js.map