@deephaven/code-studio 0.85.34 → 0.85.35-alpha-pivots.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/build/assets/{AppRoot-b83313bc.js → AppRoot-de4bebc0.js} +3 -3
  2. package/build/assets/{AppRoot-b83313bc.js.map → AppRoot-de4bebc0.js.map} +1 -1
  3. package/build/assets/{Chart-d276a98e.js → Chart-56c64e25.js} +2 -2
  4. package/build/assets/{Chart-d276a98e.js.map → Chart-56c64e25.js.map} +1 -1
  5. package/build/assets/{ControlType-1df80393.js → ControlType-a179c4e6.js} +3 -3
  6. package/build/assets/{ControlType-1df80393.js.map → ControlType-a179c4e6.js.map} +1 -1
  7. package/build/assets/{FontBootstrap-58db5cc1.js → FontBootstrap-7d88a241.js} +2 -2
  8. package/build/assets/{FontBootstrap-58db5cc1.js.map → FontBootstrap-7d88a241.js.map} +1 -1
  9. package/build/assets/{FormatterUtils-582b6b62.js → FormatterUtils-0cfc74e0.js} +2 -2
  10. package/build/assets/{FormatterUtils-582b6b62.js.map → FormatterUtils-0cfc74e0.js.map} +1 -1
  11. package/build/assets/{Grid-228afe65.js → Grid-79d5e8f3.js} +2 -2
  12. package/build/assets/{Grid-228afe65.js.map → Grid-79d5e8f3.js.map} +1 -1
  13. package/build/assets/IrisGrid-e2677537.js +3 -0
  14. package/build/assets/IrisGrid-e2677537.js.map +1 -0
  15. package/build/assets/{IrisGridModel-6ee273d8.js → IrisGridModel-47f7bc83.js} +2 -2
  16. package/build/assets/IrisGridModel-47f7bc83.js.map +1 -0
  17. package/build/assets/{IrisGridShortcuts-11148ae4.js → IrisGridShortcuts-e49d1bda.js} +2 -2
  18. package/build/assets/{IrisGridShortcuts-11148ae4.js.map → IrisGridShortcuts-e49d1bda.js.map} +1 -1
  19. package/build/assets/IrisGridThemeProvider-b92be203.js +11 -0
  20. package/build/assets/IrisGridThemeProvider-b92be203.js.map +1 -0
  21. package/build/assets/{LocalWorkspaceStorage-ca9551bd.js → LocalWorkspaceStorage-fe0fe175.js} +2 -2
  22. package/build/assets/{LocalWorkspaceStorage-ca9551bd.js.map → LocalWorkspaceStorage-fe0fe175.js.map} +1 -1
  23. package/build/assets/{MarkdownEditor-82560c81.js → MarkdownEditor-c28ceda0.js} +2 -2
  24. package/build/assets/{MarkdownEditor-82560c81.js.map → MarkdownEditor-c28ceda0.js.map} +1 -1
  25. package/build/assets/{MarkdownNotebook-d36d3af1.js → MarkdownNotebook-ba1b741d.js} +2 -2
  26. package/build/assets/{MarkdownNotebook-d36d3af1.js.map → MarkdownNotebook-ba1b741d.js.map} +1 -1
  27. package/build/assets/MissingPartitionError-c43aae7d.js +3 -0
  28. package/build/assets/MissingPartitionError-c43aae7d.js.map +1 -0
  29. package/build/assets/{StyleGuideRoot-58ba38f2.js → StyleGuideRoot-d7b5fb8e.js} +2 -2
  30. package/build/assets/{StyleGuideRoot-58ba38f2.js.map → StyleGuideRoot-d7b5fb8e.js.map} +1 -1
  31. package/build/assets/{TokenBoxCellRenderer-6a0ed2b5.js → TokenBoxCellRenderer-2a529249.js} +2 -2
  32. package/build/assets/{TokenBoxCellRenderer-6a0ed2b5.js.map → TokenBoxCellRenderer-2a529249.js.map} +1 -1
  33. package/build/assets/{index-3cf5551f.js → index-35aca2dd.js} +2 -2
  34. package/build/assets/{index-3cf5551f.js.map → index-35aca2dd.js.map} +1 -1
  35. package/build/assets/{index-90837e92.js → index-4251673b.js} +3 -3
  36. package/build/assets/index-4251673b.js.map +1 -0
  37. package/build/assets/index-e3e97007.js +2 -0
  38. package/build/assets/{index-6d507d8f.js.map → index-e3e97007.js.map} +1 -1
  39. package/build/index.html +1 -1
  40. package/package.json +30 -30
  41. package/build/assets/IrisGrid-90c49e93.js +0 -3
  42. package/build/assets/IrisGrid-90c49e93.js.map +0 -1
  43. package/build/assets/IrisGridModel-6ee273d8.js.map +0 -1
  44. package/build/assets/IrisGridThemeProvider-1ec8695d.js +0 -11
  45. package/build/assets/IrisGridThemeProvider-1ec8695d.js.map +0 -1
  46. package/build/assets/MissingPartitionError-f6c0b4f4.js +0 -3
  47. package/build/assets/MissingPartitionError-f6c0b4f4.js.map +0 -1
  48. package/build/assets/index-6d507d8f.js +0 -2
  49. package/build/assets/index-90837e92.js.map +0 -1
@@ -1,8 +1,8 @@
1
- import{r as g,J as u,M as ie,a1 as $e,a2 as ne,bz as va,ab as k,bA as qr,a3 as L,N as re,a0 as Ue,V as ee,I as ae,b2 as fa,b1 as Vn,av as We,a5 as ma,ad as ga}from"./vendor-3e5e4180.js";import{F as Le,cD as Pe,P as Oe,af as K,cE as Jt,c as V,bU as ba,bM as T,J as Ca,bT as Xr,a7 as Sa,ai as Zr,cF as yt,cG as ve,B as x,cH as nt,aa as we,U as Yr,cI as dn,cJ as Qr,M as de,w as rn,cK as Vt,c1 as Jr,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 ei,b as ti,a3 as ya,a8 as Pa,cQ as ni,cR as ri,aN as wa,ab as J,c0 as Ea,cS as Gn,cw as Fa,cx as Ta,u as it,aX as Da,o as ii,cd as Ne,bZ as Et,bO as Me,X as Ma,ak as ai,co as La,cm as Oa,c9 as li,ca as si,y as an,cb as Na,cr as oi,T as ct,N as ka,s as Ia,H as xa,cT as di,cU as ui,cV as hi,cW as ci,a$ as Ra,ac as pi,cc as _a,b_ as ja,cB as Aa,cX as $a,cz as Ua,ah as Va,L as Ga,cC as Ha,cA as Ba,a9 as Ka,ad as za,cY as Wa,a1 as qa,cZ as Xa,a2 as Za,aq as Ya,c_ as Qa,ar as Ja}from"./ControlType-1df80393.js";import{L as G,e as F,am as el,an as tl,I as cn,ao as nl,ap as rl,aq as vi,f as pn,ar as fi,as as Hn,w as Bn,g as il,D as al,M as ll,b as sl,c as ol,J as Ct,s as dl,at as ul,au as hl,d as cl,av as pl,aw as vl}from"./index-3cf5551f.js";import{C as fl,a as Z,b as j,G as qe,S as mi,L as gi,I as vn}from"./IrisGridModel-6ee273d8.js";import{I as bi,M as Kn,j as ml,d as _,i as je,h as xe,A as gl,k as bl,l as Cl,m as Sl}from"./MissingPartitionError-f6c0b4f4.js";import{F as zn}from"./FormatterUtils-582b6b62.js";import{_ as yl}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){U(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 U(r,e,t){return e=Pl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Pl(r){var e=wl(r,"string");return typeof e=="symbol"?e:String(e)}function wl(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=G.module("FigureChartModel");class Bt extends fl{constructor(e,t){var n,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(e),n=this,U(this,"chartUtils",void 0),U(this,"dh",void 0),U(this,"figure",void 0),U(this,"settings",void 0),U(this,"data",void 0),U(this,"layout",void 0),U(this,"seriesDataMap",void 0),U(this,"pendingSeries",void 0),U(this,"oneClicks",void 0),U(this,"filterColumnMap",void 0),U(this,"lastFilter",void 0),U(this,"isConnected",void 0),U(this,"seriesToProcess",void 0),U(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)),U(this,"getTimeZone",ne((a,l)=>{if(l!=null){var s=l.getColumnTypeFormatter(a);if(s!=null)return s.dhTimeZone}})),U(this,"getValueTranslator",ne((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.unwrapValue(o,s)})),U(this,"getValueParser",ne((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.wrapValue(o,a,s)})),U(this,"getRangeParser",ne((a,l)=>s=>{var[o,d]=s,h=this.getValueParser(a,l);return o=h(o),d=h(d),[o,d]})),U(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,D,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=(D=n.get(y.type))===null||D===void 0?void 0:D.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&&va(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}}U(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 Re(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=El(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function El(r){var e=Fl(r,"string");return typeof e=="symbol"?e:String(e)}function Fl(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=G.module("IrisGridTableModel");class Tl extends bi{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(j.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get partitionColumns(){return this.getCachedPartitionColumns(this.columns)}partitionKeysTable(){var e=this;return Re(function*(){return e.valuesTable(e.partitionColumns)})()}partitionMergedTable(){var e=this;return Re(function*(){var t=yield e.table.copy();return t.applyFilter([]),t})()}partitionBaseTable(){var e=this;return Re(function*(){return e.partitionKeysTable()})()}partitionTable(e){var t=this;return Re(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(j.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(j.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 Re(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 Re(function*(){var a;if(!i.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));F(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=>(F(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];F(c.startRow),F(c.endRow);for(var p=c.startRow;p<=c.endRow;p+=1)d.delete(p)}n(d),i.formattedStringData=[],i.dispatchEvent(new Pe(j.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new Pe(j.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=>(F(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 D=l[w],N=S[w],O=i.tableUtils.makeNullableEqFilter(D,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 Re(function*(){return o.table.seekRow(e,t,n,i,a,l,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}const Dl=Tl;function Ml(r,e,t){return e=Ll(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Ll(r){var e=Ol(r,"string");return typeof e=="symbol"?e:String(e)}function Ol(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 Nl extends j{constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new Le(e);super(e),Ml(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 kl=Nl;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 Il(r,e,t){return e=xl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function xl(r){var e=Rl(r,"string");return typeof e=="symbol"?e:String(e)}function Rl(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 kl{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Le(e);super(e,n),Il(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 ml(i)?i:new Kn("Unable to retrieve partition")}})()}}const jl=_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 Al(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=$l(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function $l(r){var e=Ul(r,"string");return typeof e=="symbol"?e:String(e)}function Ul(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 Vl=G.module("IrisGridTreeTableModel");function rr(r){return r!=null&&typeof r=="object"&&"hasChildren"in r&&"isExpanded"in r&&"depth"in r&&typeof r.hasChildren=="boolean"&&typeof r.isExpanded=="boolean"&&typeof r.depth=="number"}function Gl(r){return r.layoutHints!==void 0}class Hl extends bi{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:V.dataType.STRING,constituentType:V.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,l=this.valueForCell(e,t),s=this.displayString(l,n.constituentType,n.name);if(V.isTextType((a=this.columns[e])===null||a===void 0?void 0:a.type)){if(l===null)return this.formatter.showNullStrings?"null":"";if(s==="")return this.formatter.showEmptyStrings?"empty":""}return s}if(i.hasChildren&&i.depth<=e+1&&this.valueForCell(e,t)===null&&this.getCachedGroupedColumnSet(this.groupedColumns).has(e))return""}return super.textForCell(e,t)}colorForCell(e,t,n){var i=this.dataForCell(e,t);if(i){var{format:a,value:l}=i;if(l==null||l==="")return F(n.nullStringColor),n.nullStringColor;if(a?.color!=null&&a.color!=="")return a.color;if(l!=null){var s=this.sourceColumn(e,t),o=this.row(t);F(o);var d=s.type;return rr(o)&&o.hasChildren===!1&&s.constituentType!=null&&(d=s.constituentType),_.colorForValue(n,d,s.name,l)}}return n.textColor}textAlignForCell(e,t){var n=this.sourceColumn(e,t),i=this.row(t);F(i);var a=n.type;return rr(i)&&i.hasChildren===!1&&n.constituentType!=null&&(a=n.constituentType),_.textAlignForValue(a,n.name)}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?Vl.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 Al(function*(){var a,l,s=n.length>2&&n[2]!==void 0?n[2]:y=>y;F(i.viewport),F(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]);F(p),F(p.startRow),F(p.endRow);for(var v=p.startRow;v<=p.endRow;v+=1){var m=[],C=i.viewportData.rows[v-i.viewportData.offset];F(p.startColumn),F(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(Gl(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 Bl=Hl;function Se(r,e,t){return e=Kl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Kl(r){var e=zl(r,"string");return typeof e=="symbol"?e:String(e)}function zl(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=G.module("IrisGridProxyModel");function Ke(r,e,t,n){return V.isTreeTable(e)?new Bl(r,e,t):V.isPartitionedTable(e)?new jl(r,e,t):new Dl(r,e,t,n)}class Wl extends j{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(j.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(j.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(j.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(j.EVENT),n=0;n<t.length;n+=1)e.addEventListener(t[n],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(j.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(!qr(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 ql=Wl;function ir(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 Xl(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){ir(a,n,i,l,s,"next",o)}function s(o){ir(a,n,i,l,s,"throw",o)}l(void 0)})}}class Zl{static makeModel(e,t){var n=arguments;return Xl(function*(){var i=n.length>2&&n[2]!==void 0?n[2]:new Le(e),a=null;return!V.isTreeTable(t)&&!V.isPartitionedTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new ql(e,t,i,a)})()}}const Ci=Zl;function ar(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 lr(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ar(Object(t),!0).forEach(function(n){Yl(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):ar(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Yl(r,e,t){return e=Ql(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Ql(r){var e=Jl(r,"string");return typeof e=="symbol"?e:String(e)}function Jl(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 Si(r,e){var t=["isStuckToBottom","isStuckToRight","movedColumns","movedRows"];return r===e||t.every(n=>r[n]===e[n])}function yi(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 es(){return k((r,e)=>_.dehydrateGridState(r,e),(r,e)=>{var[t,n]=r,[i,a]=e;return t===i&&Si(n,a)})}function ts(){return k((r,e)=>{var t=new _(r.dh);return t.dehydrateIrisGridState(r,e)},(r,e)=>{var[t,n]=r,[i,a]=e;return t===i&&yi(n,a)})}function ns(){return k((r,e,t)=>{var n=new _(r.dh);return lr(lr({},n.dehydrateIrisGridState(r,e)),_.dehydrateGridState(r,t))},(r,e)=>{var[t,n,i]=r,[a,l,s]=e;return t===a&&yi(n,l)&&Si(i,s)})}var ln={makeMemoizedGridStateDehydrator:es,makeMemoizedIrisGridStateDehydrator:ts,makeMemoizedCombinedGridStateDehydrator:ns};function gn(){var r=g.useContext(ba);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=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=is(r,"string");return typeof e=="symbol"?e:String(e)}function is(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=as(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function as(r){var e=ls(r,"string");return typeof e=="symbol"?e:String(e)}function ls(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 Pi(r,e,t){return e=ss(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ss(r){var e=os(r,"string");return typeof e=="symbol"?e:String(e)}function os(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{}Pi(Cn,"OPEN","PandasEvent.OPEN");Pi(Cn,"CLOSE","PandasEvent.CLOSE");const ds=Cn;function Ft(r){var{widgetType:e,widgetName:t,glContainer:n,description:i,children:a}=r,l=T.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(Ca,{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:Xr.Container.isRequired,widgetType:L.string,widgetName:L.string,description:L.string,children:L.node};Ft.defaultProps={widgetType:"",widgetName:"",description:null,children:null};function wi(r,e,t){return e=us(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function us(r){var e=hs(r,"string");return typeof e=="symbol"?e:String(e)}function hs(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 Ei extends g.PureComponent{constructor(e){super(e),wi(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;Sa(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 va,ab as k,bA as qr,a3 as L,N as re,a0 as Ue,V as ee,I as ae,b2 as fa,b1 as Vn,av as We,a5 as ma,ad as ga}from"./vendor-3e5e4180.js";import{F as Le,cD as Pe,P as Oe,af as K,cE as Jt,c as V,bU as ba,bM as T,J as Ca,bT as Xr,a7 as Sa,ai as Zr,cF as yt,cG as ve,B as x,cH as nt,aa as we,U as Yr,cI as dn,cJ as Qr,M as de,w as rn,cK as Vt,c1 as Jr,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 ei,b as ti,a3 as ya,a8 as Pa,cQ as ni,cR as ri,aN as wa,ab as J,c0 as Ea,cS as Gn,cw as Fa,cx as Ta,u as it,aX as Da,o as ii,cd as Ne,bZ as Et,bO as Me,X as Ma,ak as ai,co as La,cm as Oa,c9 as li,ca as si,y as an,cb as Na,cr as oi,T as ct,N as ka,s as Ia,H as xa,cT as di,cU as ui,cV as hi,cW as ci,a$ as Ra,ac as pi,cc as _a,b_ as ja,cB as Aa,cX as $a,cz as Ua,ah as Va,L as Ga,cC as Ha,cA as Ba,a9 as Ka,ad as za,cY as Wa,a1 as qa,cZ as Xa,a2 as Za,aq as Ya,c_ as Qa,ar as Ja}from"./ControlType-a179c4e6.js";import{L as G,e as F,am as el,an as tl,I as cn,ao as nl,ap as rl,aq as vi,f as pn,ar as fi,as as Hn,w as Bn,g as il,D as al,M as ll,b as sl,c as ol,J as Ct,s as dl,at as ul,au as hl,d as cl,av as pl,aw as vl}from"./index-35aca2dd.js";import{C as fl,a as Z,b as j,G as qe,S as mi,L as gi,I as vn}from"./IrisGridModel-47f7bc83.js";import{I as bi,M as Kn,k as ml,d as _,e as je,j as xe,A as gl,l as bl,m as Cl,n as Sl}from"./MissingPartitionError-c43aae7d.js";import{F as zn}from"./FormatterUtils-0cfc74e0.js";import{_ as yl}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){U(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 U(r,e,t){return e=Pl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Pl(r){var e=wl(r,"string");return typeof e=="symbol"?e:String(e)}function wl(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=G.module("FigureChartModel");class Bt extends fl{constructor(e,t){var n,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(e),n=this,U(this,"chartUtils",void 0),U(this,"dh",void 0),U(this,"figure",void 0),U(this,"settings",void 0),U(this,"data",void 0),U(this,"layout",void 0),U(this,"seriesDataMap",void 0),U(this,"pendingSeries",void 0),U(this,"oneClicks",void 0),U(this,"filterColumnMap",void 0),U(this,"lastFilter",void 0),U(this,"isConnected",void 0),U(this,"seriesToProcess",void 0),U(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)),U(this,"getTimeZone",ne((a,l)=>{if(l!=null){var s=l.getColumnTypeFormatter(a);if(s!=null)return s.dhTimeZone}})),U(this,"getValueTranslator",ne((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.unwrapValue(o,s)})),U(this,"getValueParser",ne((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.wrapValue(o,a,s)})),U(this,"getRangeParser",ne((a,l)=>s=>{var[o,d]=s,h=this.getValueParser(a,l);return o=h(o),d=h(d),[o,d]})),U(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,D,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=(D=n.get(y.type))===null||D===void 0?void 0:D.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&&va(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}}U(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 Re(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=El(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function El(r){var e=Fl(r,"string");return typeof e=="symbol"?e:String(e)}function Fl(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=G.module("IrisGridTableModel");class Tl extends bi{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 isOrganizeColumnsAvailable(){return!0}get isCustomColumnsAvailable(){return this.table.applyCustomColumns!=null}get isFormatColumnsAvailable(){return this.table.applyCustomColumns!=null}get keyColumnSet(){var e;return this.getMemoizedKeyColumnSet((e=this.inputTable)===null||e===void 0?void 0:e.keys)}get 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(j.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get partitionColumns(){return this.getCachedPartitionColumns(this.columns)}partitionKeysTable(){var e=this;return Re(function*(){return e.valuesTable(e.partitionColumns)})()}partitionMergedTable(){var e=this;return Re(function*(){var t=yield e.table.copy();return t.applyFilter([]),t})()}partitionBaseTable(){var e=this;return Re(function*(){return e.partitionKeysTable()})()}partitionTable(e){var t=this;return Re(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(j.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(j.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 Re(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 Re(function*(){var a;if(!i.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));F(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=>(F(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];F(c.startRow),F(c.endRow);for(var p=c.startRow;p<=c.endRow;p+=1)d.delete(p)}n(d),i.formattedStringData=[],i.dispatchEvent(new Pe(j.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new Pe(j.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=>(F(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 D=l[w],N=S[w],O=i.tableUtils.makeNullableEqFilter(D,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 Re(function*(){return o.table.seekRow(e,t,n,i,a,l,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}const Dl=Tl;function Ml(r,e,t){return e=Ll(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Ll(r){var e=Ol(r,"string");return typeof e=="symbol"?e:String(e)}function Ol(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 Nl extends j{constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new Le(e);super(e),Ml(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 kl=Nl;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 Il(r,e,t){return e=xl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function xl(r){var e=Rl(r,"string");return typeof e=="symbol"?e:String(e)}function Rl(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 kl{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Le(e);super(e,n),Il(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 ml(i)?i:new Kn("Unable to retrieve partition")}})()}}const jl=_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 Al(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=$l(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function $l(r){var e=Ul(r,"string");return typeof e=="symbol"?e:String(e)}function Ul(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 Vl=G.module("IrisGridTreeTableModel");function rr(r){return r!=null&&typeof r=="object"&&"hasChildren"in r&&"isExpanded"in r&&"depth"in r&&typeof r.hasChildren=="boolean"&&typeof r.isExpanded=="boolean"&&typeof r.depth=="number"}function Gl(r){return r.layoutHints!==void 0}class Hl extends bi{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:V.dataType.STRING,constituentType:V.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,l=this.valueForCell(e,t),s=this.displayString(l,n.constituentType,n.name);if(V.isTextType((a=this.columns[e])===null||a===void 0?void 0:a.type)){if(l===null)return this.formatter.showNullStrings?"null":"";if(s==="")return this.formatter.showEmptyStrings?"empty":""}return s}if(i.hasChildren&&i.depth<=e+1&&this.valueForCell(e,t)===null&&this.getCachedGroupedColumnSet(this.groupedColumns).has(e))return""}return super.textForCell(e,t)}colorForCell(e,t,n){var i=this.dataForCell(e,t);if(i){var{format:a,value:l}=i;if(l==null||l==="")return F(n.nullStringColor),n.nullStringColor;if(a?.color!=null&&a.color!=="")return a.color;if(l!=null){var s=this.sourceColumn(e,t),o=this.row(t);F(o);var d=s.type;return rr(o)&&o.hasChildren===!1&&s.constituentType!=null&&(d=s.constituentType),_.colorForValue(n,d,s.name,l)}}return n.textColor}textAlignForCell(e,t){var n=this.sourceColumn(e,t),i=this.row(t);F(i);var a=n.type;return rr(i)&&i.hasChildren===!1&&n.constituentType!=null&&(a=n.constituentType),_.textAlignForValue(a,n.name)}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?Vl.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 Al(function*(){var a,l,s=n.length>2&&n[2]!==void 0?n[2]:y=>y;F(i.viewport),F(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]);F(p),F(p.startRow),F(p.endRow);for(var v=p.startRow;v<=p.endRow;v+=1){var m=[],C=i.viewportData.rows[v-i.viewportData.offset];F(p.startColumn),F(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(Gl(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 Bl=Hl;function Se(r,e,t){return e=Kl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Kl(r){var e=zl(r,"string");return typeof e=="symbol"?e:String(e)}function zl(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=G.module("IrisGridProxyModel");function Ke(r,e,t,n){return V.isTreeTable(e)?new Bl(r,e,t):V.isPartitionedTable(e)?new jl(r,e,t):new Dl(r,e,t,n)}class Wl extends j{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(j.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(j.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(j.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(j.EVENT),n=0;n<t.length;n+=1)e.addEventListener(t[n],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(j.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(!qr(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 ql=Wl;function ir(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 Xl(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){ir(a,n,i,l,s,"next",o)}function s(o){ir(a,n,i,l,s,"throw",o)}l(void 0)})}}class Zl{static makeModel(e,t){var n=arguments;return Xl(function*(){var i=n.length>2&&n[2]!==void 0?n[2]:new Le(e),a=null;return!V.isTreeTable(t)&&!V.isPartitionedTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new ql(e,t,i,a)})()}}const Ci=Zl;function ar(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 lr(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ar(Object(t),!0).forEach(function(n){Yl(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):ar(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Yl(r,e,t){return e=Ql(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Ql(r){var e=Jl(r,"string");return typeof e=="symbol"?e:String(e)}function Jl(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 Si(r,e){var t=["isStuckToBottom","isStuckToRight","movedColumns","movedRows"];return r===e||t.every(n=>r[n]===e[n])}function yi(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 es(){return k((r,e)=>_.dehydrateGridState(r,e),(r,e)=>{var[t,n]=r,[i,a]=e;return t===i&&Si(n,a)})}function ts(){return k((r,e)=>{var t=new _(r.dh);return t.dehydrateIrisGridState(r,e)},(r,e)=>{var[t,n]=r,[i,a]=e;return t===i&&yi(n,a)})}function ns(){return k((r,e,t)=>{var n=new _(r.dh);return lr(lr({},n.dehydrateIrisGridState(r,e)),_.dehydrateGridState(r,t))},(r,e)=>{var[t,n,i]=r,[a,l,s]=e;return t===a&&yi(n,l)&&Si(i,s)})}var ln={makeMemoizedGridStateDehydrator:es,makeMemoizedIrisGridStateDehydrator:ts,makeMemoizedCombinedGridStateDehydrator:ns};function gn(){var r=g.useContext(ba);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=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=is(r,"string");return typeof e=="symbol"?e:String(e)}function is(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=as(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function as(r){var e=ls(r,"string");return typeof e=="symbol"?e:String(e)}function ls(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 Pi(r,e,t){return e=ss(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ss(r){var e=os(r,"string");return typeof e=="symbol"?e:String(e)}function os(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{}Pi(Cn,"OPEN","PandasEvent.OPEN");Pi(Cn,"CLOSE","PandasEvent.CLOSE");const ds=Cn;function Ft(r){var{widgetType:e,widgetName:t,glContainer:n,description:i,children:a}=r,l=T.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(Ca,{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:Xr.Container.isRequired,widgetType:L.string,widgetName:L.string,description:L.string,children:L.node};Ft.defaultProps={widgetType:"",widgetName:"",description:null,children:null};function wi(r,e,t){return e=us(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function us(r){var e=hs(r,"string");return typeof e=="symbol"?e:String(e)}function hs(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 Ei extends g.PureComponent{constructor(e){super(e),wi(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;Sa(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:D,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),A=[{title:"Copy ".concat(v," Name"),group:Zr.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:D,onTabFocus:N,onTabClicked:O,renderTabTooltip:B,errorMessage:q,isLoaded:i,isLoading:a,isClonable:d,isRenamable:h,additionalActions:A,children:[e,I&&u.jsx("div",{className:"fill-parent-absolute"})]})}}wi(Ei,"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=Ei;function Fi(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?el:tl;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})]})]})})}Fi.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(mi,{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 Ti(r){if(r==null)return!1;var{settings:e,tableSettings:t}=r;return typeof e=="object"&&typeof t=="object"}function Di(r){return r!=null&&Ti(r.panelState)}var yn=nt(we.COLUMNS_CHANGED),cs=yn.listen,jt=yn.emit,ps=yn.useListener,Pn=nt(we.TABLE_CHANGED);Pn.listen;var At=Pn.emit,vs=Pn.useListener,wn=nt(we.FILTERS_CHANGED);wn.listen;var Mi=wn.emit,fs=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),ms=Fn.listen,zt=Fn.emit;Fn.useListener;var Tn=nt(En.SOURCE_DATA_SELECTED),gs=Tn.listen,Li=Tn.emit;Tn.useListener;var Dn=nt(En.REGISTER_TARGET),bs=Dn.listen,sr=Dn.emit;Dn.useListener;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 dr(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){se(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 se(r,e,t){return e=Cs(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Cs(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)}var Q=G.module("ChartPanel"),ys=150;function Ps(r){return r.inputFilters!=null}function ws(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=T.getIdFromPanel(this),h=0;h<s.length;h+=1){var c=s[h],p=null;if(c.start!=null&&c.start.panelId===d&&l.has(c.start.columnName)?p=c.start.columnName:c.end&&c.end.panelId===d&&l.has(c.end.columnName)&&(p=c.end.columnName),p!=null&&l.has(p)){var v=l.get(p);F(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),ys),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.panelContainer=ee.createRef(),this.pending=new Qr;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;F(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;F(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=T.getIdFromPanel(this);F(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&&Ps(e.props)&&ws(e.state)){var{inputFilters:l}=e.props,{panelState:s}=e.state;s!=null&&(a=_.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=dr(dr({},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=T.getIdFromPanel(this);F(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;F(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),D=this.getLinkedColumnMap(p,s),N=C!=null?this.getWaitingInputMap(C.isFilterRequired(),p,v):new Map,O=C!=null?this.getWaitingFilterMap(C.isFilterRequired(),p,v,D,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(gi,{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(Fi,{inputFilterMap:w,linkedColumnMap:D,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,D,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 Es=(r,e)=>{var{localDashboardId:t,metadata:n}=e,i;n!=null&&Xe(n)&&(i=n.sourcePanelId);var a=Vt(r,t),l=Jr(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)}},Fs=Ue(Es,{setActiveTool:Yr,setDashboardIsolatedLinkerPanelId:dn},null,{forwardRef:!0})(Wt);const Mn=Fs;var Oi=g.createContext(null);function eu(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(Oi.Provider,{value:c,children:n})}function Ts(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 Ds(r,e){var t,[n]=g.useState(()=>ae()),i=g.useContext(Oi),{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 Ts(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=Ms(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Ms(r){var e=Ls(r,"string");return typeof e=="symbol"?e:String(e)}function Ls(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=G.module("DropdownFilter"),Os=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&&V.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})},Os)),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,D=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),A="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(mi,{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:A,children:"Filter Column"}),u.jsx(bt,{id:A,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:D})}),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 ur=Ee;function Y(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=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 R=G.module("DropdownFilterPanel"),Is=250,xs=(r,e)=>{var{localDashboardId:t}=e,n=T.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:ei(r),isLinkerActive:o,disableLinking:d,settings:Ht(r),panelTableMap:i,dashboardLinks:a}},Rs=Ue(xs,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&&V.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=T.getIdFromPanel(p);return R.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=>{R.debug("getCachedSource",c);var p;if(c.length>0){var[v]=c;p=v.start,c.length>1&&R.error("Filter has more that one link",c)}return p})),Y(this,"getCachedSourceTable",ne((c,p)=>{var v;if(R.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 R.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),Is),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 Qr;var{dh:t,panelState:n,settings:i}=e;this.columnFormats=zn.getColumnFormats(i),this.dateTimeFormatter=new ti(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&&(R.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(ur.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;R.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;R.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(){R.debug("handleColumnSelected");var{glEventHub:e}=this.props,t=T.getIdFromPanel(this);F(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){R.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];R.debug("sendUpdate",{name:e,type:t,value:n,timestamp:i,excludePanelIds:d});var h=T.getIdFromPanel(this);F(h),Mi(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(R.debug("updateValuesTable",n,i),this.setState({values:[],valuesTable:void 0,error:null}),n==null){R.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)||(R.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(R.debug("applySourceSorts",i?.sort),n==null||i==null){R.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(R.debug("applySourceFilters",i?.filter),n==null||i==null){R.debug("Table not initialized");return}var a=[...i.filter];n.applyFilter(a),this.setViewport(n)}updateViewportListener(e){var{dh:t}=this.props;if(R.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){R.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);qr(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){R.error("valuesTable is null");return}var l=this.getValuesColumn(a,i);if(!l){R.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(ur,{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=Rs(ue);const Ze=_s;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 Lt(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){pt(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 pt(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=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)}var $=G.module("FilterSetManager"),$s="Enter name...",cr="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;$.debug("initSettingsScreen",e,t),this.setState({modifiedFilterSets:[...e],editId:t})}updateSelectedId(){var{isValueShown:e,filterSets:t,selectedId:n,onChange:i}=this.props;if($.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:[]}),$.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};$.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 $.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 $.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){$.error("Renamed set undefined.");return}var l=this.getNameError(t);if($.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,$.debug("Renamed existing set",h)):(h.push(o),$.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 $.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 $.debug("Deleted selected set",t,n,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 $.error("Filter for update not selected."),null;var l=[...i],s=l.findIndex(o=>{var{id:d}=o;return d===a});return s<0?($.error("Selected set for update not found."),null):(l[s]=Lt(Lt({},l[s]),{},{panels:t}),$.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 $.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){$.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){$.debug("No filter selected");return}var i=n.find(a=>{var{id:l}=a;return l===e});if(i===void 0){$.debug("Selected id not found in filterSets",e,n);return}$.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:il,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:al,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:$s,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:nl}),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:rl})]}),t!==void 0&&u.jsx("div",{className:"error-message",children:t})]}),u.jsx("div",{className:"form-group",children:u.jsxs(fa,{"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:cr}),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:vi,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:cr}),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:fi,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 Ni=$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:Xr.Container.isRequired,widgetName:L.string.isRequired,description:L.string};Ln.defaultProps={description:null};function ki(r){if(r==null)return!1;var e=r;return typeof e.table=="string"}function Ii(r){if(r==null)return!1;var e=r;return typeof e.name=="string"}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 Fe(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){H(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 H(r,e,t){return e=Us(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Us(r){var e=Vs(r,"string");return typeof e=="symbol"?e:String(e)}function Vs(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=G.module("IrisGridPanel"),Gs=500;function vr(r){if(r==null)throw new Error("No metadata provided");if(Ii(r))return r.name;if(ki(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),H(this,"irisGrid",void 0),H(this,"pluginRef",void 0),H(this,"modelPromise",void 0),H(this,"irisGridState",void 0),H(this,"gridState",void 0),H(this,"pluginState",void 0),H(this,"irisGridUtils",void 0),H(this,"gridStateDehydrator",ln.makeMemoizedGridStateDehydrator()),H(this,"irisGridStateDehydrator",ln.makeMemoizedIrisGridStateDehydrator()),H(this,"getGridInputFilters",k((n,i)=>_.getInputFiltersForColumns(n,i.filter(a=>{var{value:l,excludePanelIds:s}=a,o=T.getIdFromPanel(this);return l!=null&&(s==null||o!=null&&!s.includes(o))})))),H(this,"getAlwaysFetchColumns",k((n,i)=>{for(var a=T.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]})),H(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))})})),H(this,"getDehydratedIrisGridPanelState",k((n,i,a,l)=>_.dehydrateIrisGridPanelState(n,{isSelectingPartition:i,partitions:a,advancedSettings:l}))),H(this,"getCachedPanelState",k((n,i,a,l)=>({irisGridPanelState:n,irisGridState:i,gridState:a,pluginState:l}))),H(this,"savePanelState",$e(()=>{var{irisGridState:n,gridState:i,pluginState:a}=this;F(n);var{onPanelStateUpdate:l}=this.props,{model:s,panelState:o,isSelectingPartition:d,partitions:h,advancedSettings:c}=this.state;F(this.irisGridUtils),F(s),F(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))},Gs)),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(gl.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 vr(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 _(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=_.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;F(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):(F(n),this.initModelQueue(n,i))}handleTableChanged(e){pe.debug("handleTableChanged",e);var{glEventHub:t}=this.props,{detail:n}=e,i=T.getIdFromPanel(this);F(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=T.getIdFromPanel(this),o;l&&(o=_.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=T.getIdFromPanel(this);F(n),zt(t,n,e,{type:"tableLink"})}handleDataSelected(e,t){var{glEventHub:n}=this.props,i=T.getIdFromPanel(this);F(i),Li(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=T.getIdFromPanel(this);F(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=T.getIdFromPanel(this);F(n),jt(t,n,e)}startModelListening(e){e.addEventListener(j.EVENT.DISCONNECT,this.handleDisconnect),e.addEventListener(j.EVENT.RECONNECT,this.handleReconnect),e.addEventListener(j.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.addEventListener(j.EVENT.TABLE_CHANGED,this.handleTableChanged)}stopModelListening(e){e.removeEventListener(j.EVENT.DISCONNECT,this.handleDisconnect),e.removeEventListener(j.EVENT.RECONNECT,this.handleReconnect),e.removeEventListener(j.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.removeEventListener(j.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;F(l);var{metrics:d}=l.state;F(d);var{columnHeaderHeight:h,allColumnXs:c,allColumnWidths:p,right:v,columnHeaderMaxDepth:m}=d,C=a.getColumnIndexByName(e);F(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}F(i);var{columns:s,formatter:o}=i,d=_.changeFilterColumnNamesToIndexes(i.columns,t).filter(c=>{var[p]=c;return i.isFilterable(p)}),h=_.changeFilterColumnNamesToIndexes(i.columns,n).filter(c=>{var[p]=c;return i.isFilterable(p)});F(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=_.changeFilterColumnNamesToIndexes(e.columns,d)),h&&(o.advancedFilters=_.changeFilterColumnNamesToIndexes(e.columns,h));var{isSelectingPartition:c,partitions:p,advancedSettings:v}=_.hydrateIrisGridPanelState(e,s);F(this.irisGridUtils);var{advancedFilters:m,customColumns:C,customColumnFormatMap:f,isFilterBarShown:b,quickFilters:y,reverse:S,rollupConfig:P,aggregationSettings:w,sorts:D,userColumnWidths:N,userRowHeights:O,showSearchBar:M,searchValue:E,selectDistinctColumns:I,selectedSearchColumns:q,invertSearchColumns:B,pendingDataMap:A,frozenColumns:me,conditionalFormats:ke,columnHeaderGroups:Ie,partitionConfig:lt}=this.irisGridUtils.hydrateIrisGridState(e,Fe(Fe({},l),o)),{isStuckToBottom:Ge,isStuckToRight:He,movedColumns:st,movedRows:ot}=_.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:D,userColumnWidths:N,userRowHeights:O,showSearchBar:M,searchValue:E,selectDistinctColumns:I,selectedSearchColumns:q,invertSearchColumns:B,pendingDataMap:A,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:D,isFilterBarShown:N,isSelectingPartition:O,isStuckToBottom:M,isStuckToRight:E,isLoaded:I,isLoading:q,isModelReady:B,model:A,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:ra,pluginFetchColumns:ia,pendingDataMap:aa,frozenColumns:la,columnHeaderGroups:sa}=this.state,oa=w!=null?"Unable to open table. ".concat(w):void 0,$n=vr(h),Un=(e=A?.description)!==null&&e!==void 0?e:void 0,da=(t=c?.pluginState)!==null&&t!==void 0?t:null,ua=n??this.getPluginContent(Qt,A,da),{permissions:ha}=p,{canCopy:ca,canDownloadCsv:pa}=ha;return u.jsx(Tt,{errorMessage:oa,isDisconnected:D,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:A,widgetName:$n,glContainer:i,description:Un}),children:B&&A&&u.jsx(vn,{advancedFilters:C,aggregationSettings:f,advancedSettings:b,alwaysFetchColumns:this.getAlwaysFetchColumns(d,ia),columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",copyCursor:"copy",customColumns:S,customColumnFormatMap:P,columnSelectionValidator:this.isColumnSelectionValid,conditionalFormats:y,inputFilters:this.getGridInputFilters(A.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:A,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:ra,pendingDataMap:aa,canCopy:ca,canDownloadCsv:pa,ref:this.irisGrid,getDownloadWorker:s,frozenColumns:la,theme:m,columnHeaderGroups:sa,children:ua})})}}H(Je,"defaultProps",{onStateChange:()=>{},onPanelStateUpdate:()=>{}});H(Je,"displayName","IrisGridPanel");H(Je,"COMPONENT","IrisGridPanel");var Hs=(r,e)=>{var{localDashboardId:t=Pa,glContainer:n}=e;return{inputFilters:wt(r,t),links:rt(r,t),columnSelectionValidator:Pt(r,t),user:ya(r),settings:Ht(r)}},Bs=Ue(Hs,null,null,{forwardRef:!0})(Je);const On=Bs;function mt(r,e,t){return e=Ks(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Ks(r){var e=zs(r,"string");return typeof e=="symbol"?e:String(e)}function zs(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 fr=G.module("InputFilter"),Ws=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})},Ws)),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)];fr.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;fr.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 qs=et;function qt(r,e,t){return e=Xs(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Xs(r){var e=Zs(r,"string");return typeof e=="symbol"?e:String(e)}function Zs(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 Ys=250;class Xt extends g.Component{constructor(e){super(e),qt(this,"inputFilterRef",void 0),this.handleChange=$e(this.handleChange.bind(this),Ys),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=T.getIdFromPanel(this);F(l),Mi(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(qs,{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 Qs=(r,e)=>{var{localDashboardId:t}=e;return{columns:hn(r,t)}},Js=Ue(Qs,null,null,{forwardRef:!0})(Xt);const Ye=Js;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 Ot(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){Nn(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 Nn(r,e,t){return e=eo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function eo(r){var e=to(r,"string");return typeof e=="symbol"?e:String(e)}function to(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=G.module("FilterSetManagerPanel");function no(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=T.getComponentNameFromPanel(i),l=T.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=T.getComponentConfigFromContainer(s);if(o==null){X.error("Could not get component config from container",s);return}var d=T.getPanelComponentState(o);if(d==null){X.debug("Panel state is null ".concat(l));return}switch(a){case T.getComponentName(Je):{var h;l!=null&&(h=this.getIrisGridPanelFilters(l,d)),h!=null&&t.push({panelId:l,type:a,state:h});break}case T.getComponentName(Ye):case T.getComponentName(Ze):{var{isValueShown:c,name:p,type:v,value: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 T.getComponentName(Je):this.restoreIrisGridFilters(d,o,i);break;case T.getComponentName(Ye):case T.getComponentName(Ze):this.restoreInputFilterState(d,o);break}})}handleSetsUpdate(e){var{setDashboardFilterSets:t,localDashboardId:n}=this.props;X.debug("Saving updated sets",e),t(n,[...e])}updatePanelState(){this.setState(e=>{var{selectedId:t,isValueShown:n}=e;return{panelState:{selectedId:t,isValueShown:n}}})}restoreIrisGridFilters(e,t,n){var{irisGridState:i={},advancedFilters:a=[],quickFilters:l=[]}=t,{advancedFilters:s=a,quickFilters:o=l}=i,{panelTableMap:d}=this.props,h=T.getIdFromPanel(e);if(h==null){X.error("Panel Id is null.");return}var c=d.get(h);if(c==null){X.error("Unable to get table for panel ".concat(h,"."));return}X.debug("restoreIrisGridFilters",h,t,n),n?e.setStateOverrides(t):e.setFilters({quickFilters:o,advancedFilters:s})}restoreInputFilterState(e,t){var n=Ot({},t);delete n.isValueShown,X.debug("restoreInputFilterState",e,n),e&&no(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(Ni,{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 ro=(r,e)=>{var{localDashboardId:t}=e;return{filterSets:ri(r,t),dashboardOpenedPanelMap:Jr(r,t),dashboardInputFilters:wt(r,t),panelTableMap:Vt(r,t)}},io=Ue(ro,{setDashboardFilterSets:ni},null,{forwardRef:!0})(tt);const xt=io;function ao(r,e,t){return e=lo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function lo(r){var e=so(r,"string");return typeof e=="symbol"?e:String(e)}function so(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 xi 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:vi})]})}),t]})}}ao(xi,"defaultProps",{isEditing:!1});function oo(r,e,t){return e=uo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function uo(r){var e=ho(r,"string");return typeof e=="symbol"?e:String(e)}function ho(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 co=G.module("MarkdownStartPage");class Ri 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(co.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(ll,{isOpen:i,toggle:this.handleDeleteModalClose,className:"modal-dialog-centered markdown-delete-modal",children:[u.jsx(sl,{children:"Are you sure you want to permanently delete this note?"}),u.jsx(ol,{children:"You can't undo this action."}),u.jsxs(wa,{children:[u.jsx(x,{kind:"secondary",onClick:this.handleDeleteModalClose,children:"Cancel"}),u.jsx(x,{kind:"danger",onClick:()=>{this.handleDeleteMarkdown(a)},children:"Delete"})]})]})]})]})})}}oo(Ri,"defaultProps",{closedMarkdowns:[],onOpen:()=>{},onCreate:()=>{},onDelete:()=>{}});const po=Ri;function kn(r,e,t){return e=vo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function vo(r){var e=fo(r,"string");return typeof e=="symbol"?e:String(e)}function fo(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 Rt=Ae;function gt(r,e,t){return e=mo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function mo(r){var e=go(r,"string");return typeof e=="symbol"?e:String(e)}function go(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 bo=g.lazy(()=>yl(()=>import("./MarkdownEditor-82560c81.js"),["./MarkdownEditor-82560c81.js","./vendor-3e5e4180.js","./helpers-de833af9.js","./vendor-7509d17c.css","./ControlType-1df80393.js","./index-3cf5551f.js","./monaco-b5248072.js","./monaco-f18fde03.css","./index-7d08f7c0.css","./ControlType-fbf3b3ed.css","./mathjax-d42af1a5.js"],import.meta.url)),Nt=G.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(Rt.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=Rt.DEFAULT_CONTENT),this.state={isStartPageShown:n==null&&this.getClosedMarkdowns(e.closedPanels).length!==0,isEditing:!1,content:n,panelState:t},this.markdownEditor=null}setEditorPosition(e){F(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=T.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(po,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):u.jsx(xi,{isEditing:i,onDoubleClick:this.handleContainerDoubleClick,children:u.jsx(g.Suspense,{fallback:u.jsx(Ct,{}),children:u.jsx(bo,{ref:o=>{this.markdownEditor=o},isEditing:i,content:l??Rt.DEFAULT_CONTENT,onEditorInitialized:this.handleEditorInitialized})})})})}}gt(In,"defaultProps",{panelState:null});gt(In,"COMPONENT","MarkdownPanel");var Co=(r,e)=>{var{localDashboardId:t}=e;return{closedPanels:Ea(r,t)}},So=Ue(Co,null,null,{forwardRef:!0})(In);const vt=So;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:fi,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}function gr(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?gr(Object(t),!0).forEach(function(n){Zt(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):gr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Zt(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=Po(r,"string");return typeof e=="symbol"?e:String(e)}function Po(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,br(br({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 ji=xn;function Cr(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 Sr(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Cr(a,n,i,l,s,"next",o)}function s(o){Cr(a,n,i,l,s,"throw",o)}l(void 0)})}}function yr(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=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)}class Fo{constructor(e){yr(this,"items",void 0),yr(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 Sr(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return Sr(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 To=Fo;function Pr(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){Pr(a,n,i,l,s,"next",o)}function s(o){Pr(a,n,i,l,s,"throw",o)}l(void 0)})}}function Do(r,e,t){return e=Mo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Mo(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 Oo{constructor(e){Do(this,"items",void 0),this.items=e}getTable(){var e=this;return dt(function*(){return new To(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=Fa.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 Ta;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 No=Oo;function wr(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?wr(Object(t),!0).forEach(function(n){ko(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):wr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function ko(r,e,t){return e=Io(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Io(r){var e=xo(r,"string");return typeof e=="symbol"?e:String(e)}function xo(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 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 Ro(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 _o(r,e,t,n,i){return on.apply(this,arguments)}function on(){return on=Ro(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 _(r).applyTableSettings(v,o,ii(dl.getState())),ft.makeModelFromSettings(r,a,v)}),on.apply(this,arguments)}var Rn=g.forwardRef((r,e)=>{var t=it(),n=Da(),i=Di(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))});Rn.displayName="ChartPanelPlugin";const jo=Rn;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 Ao(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 Ai(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=Ao(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(gi,{model:t}):null}var $o={name:"ChartPanel",title:"Chart",type:Ne.WIDGET_PLUGIN,component:Ai,panelComponent:Rn,supportedTypes:"Figure",icon:ul};const Uo=$o;function $i(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;T.openComponent({root:v,config:p})},[n,e,t]);return Me(t.eventHub,fe.CREATE_CHART,i),null}var Vo={name:"ChartBuilderPlugin",type:Ne.DASHBOARD_PLUGIN,component:$i};const Go=Vo;var ut=G.module("FilterPlugin");function Ui(r){Et(r);var{id:e,layout:t,registerComponent:n}=r,i=ma(),[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),D=ve.toLower(P.name);if(w!==D)return w>D?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(Ma(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=T.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=T.DEFAULT_FOCUS_SELECTOR,createNewStack:D=!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;T.openComponent({root:M,config:O,focusElement:w,createNewStack:D,dragEvent:N})},[t,e]),m=g.useCallback(f=>{var{title:b="InputFilter",metadata:y={},panelState:S=null,id:P=ae(),focusElement:w=T.DEFAULT_FOCUS_SELECTOR,createNewStack:D=!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;T.openComponent({root:M,config:O,focusElement:w,createNewStack:D,dragEvent:N})},[t,e]),C=g.useCallback(f=>{var{title:b="FilterSets",metadata:y={},panelState:S=null,id:P=ae(),focusElement:w=T.DEFAULT_FOCUS_SELECTOR,createNewStack:D=!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;T.openComponent({root:M,config:O,focusElement:w,createNewStack:D,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]),ps(t.eventHub,d),fs(t.eventHub,h),vs(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 Ho={name:"FilterPlugin",type:Ne.DASHBOARD_PLUGIN,component:Ui};const Bo=Ho;var Ko=G.module("@deephaven/app-utils/useTablePlugin");function Vi(){var r=ai(),e=g.useCallback(t=>{var n=r.get(t);if(n!=null){if(La(n))return n.component;if(Oa(n))return n.TablePlugin}var i="Unable to find table plugin ".concat(t,".");throw Ko.error(i),new Error(i)},[r]);return e}function Tr(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 zo(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Tr(a,n,i,l,s,"next",o)}function s(o){Tr(a,n,i,l,s,"throw",o)}l(void 0)})}}function Gi(r,e,t){var n=it(),i=Vi(),a=g.useMemo(()=>({loadPlugin:i,localDashboardId:e,makeModel:function(){var l=zo(function*(){var o=yield r();return Ci.makeModel(n,o)});function s(){return l.apply(this,arguments)}return s}(),metadata:t}),[n,r,e,i,t]);return a}function Dr(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 Mr(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Dr(Object(t),!0).forEach(function(n){Wo(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Dr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Wo(r,e,t){return e=qo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function qo(r){var e=Xo(r,"string");return typeof e=="symbol"?e:String(e)}function Xo(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 _n=g.forwardRef((r,e)=>{var{localDashboardId:t,fetch:n,metadata:i}=r,a=Gi(n,t,i);return u.jsx(On,Mr(Mr({ref:e},r),a))});_n.displayName="GridPanelPlugin";const Zo=_n;function Lr(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){Lr(a,n,i,l,s,"next",o)}function s(o){Lr(a,n,i,l,s,"throw",o)}l(void 0)})}}function Hi(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 Ci.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(j.EVENT.DISCONNECT,p),()=>{t.removeEventListener(j.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 Bi(r,e){var{eventHub:t}=gn(),n=li(),i=si();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(()=>_.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 Ki(r,e){var{eventHub:t}=gn(),n=li(),i=si(),a=Na(),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&&Li(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:D}=e.state;F(D);var{columnHeaderHeight:N,allColumnXs:O,allColumnWidths:M,right:E,columnHeaderMaxDepth:I}=D,q=r.getColumnIndexByName(f);F(q);var B=e.getVisibleColumn(q),A=(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+A+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 sr(t,i,{getCoordinates:m,setFilterValues:e.setFilterMap,unsetFilterValue:()=>{},panelId:a}),()=>{sr(t,i,null)}},[t,i,m,e,a]),{alwaysFetchColumns:o,columnSelectionValidator:c,isSelectingColumn:p,onColumnSelected:C,onDataSelected:v}}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 kt(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){Yo(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 Yo(r,e,t){return e=Qo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Qo(r){var e=Jo(r,"string");return typeof e=="symbol"?e:String(e)}function Jo(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{fetch:e}=r,t=ga(Ht),{eventHub:n}=gn(),i=Hi(e),a=it(),l=g.useMemo(()=>new _(a),[a]),[s,o]=Ds(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)),_.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=Bi(i.status==="success"?i.model.columns:null,i.status==="success"&&je(i.model)?i.model.table:void 0),m=g.useRef(null),C=Ki(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:oi(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 ed={name:"IrisGridPanel",title:"Table",type:Ne.WIDGET_PLUGIN,component:zi,panelComponent:_n,supportedTypes:["Table","TreeTable","HierarchicalTable","PartitionedTable"],icon:hl};const td=ed;function Nr(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?Nr(Object(t),!0).forEach(function(n){nd(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Nr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function nd(r,e,t){return e=rd(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function rd(r){var e=id(r,"string");return typeof e=="symbol"?e:String(e)}function id(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 Wi(r){var e=r;return typeof e.getCoordinateForColumn=="function"}function kr(r){var e=r;return Wi(r)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function Ir(r){return r.description==null||!r.description.startsWith("Preview of type: ")}var xr=G.module("LinkerUtils");class ad{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 xr.debug2("Incompatible panel ids",e,t,n),!1;var{columnType:i}=e,{columnType:a}=t,l=a===null||V.isCompatibleType(i,a);return l?!0:(xr.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 _e=ad;function qi(r,e,t){return e=ld(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ld(r){var e=sd(r,"string");return typeof e=="symbol"?e:String(e)}function sd(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 od=G.module("LinkerLink"),Rr=.015,_r=1.5,Xi=12,Zi=12,jr=2,It=Math.sqrt((Zi*.5)**2+Xi**2),Ar=Math.asin(Zi*.5/Xi),$r=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(V.isNumberType(e)||V.isCharType(e))return bl(t);if(V.isTextType(e))return Cl(t);if(V.isDateType(e))return Sl(t);if(V.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 od.warn(n),""}}constructor(e){super(e),qi(this,"getOperators",k((t,n)=>{var{onOperatorChanged:i}=this.props,a=V.getFilterTypes(n);return V.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=V.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*Rr)**_r,f)),w=Math.max(S,Math.min(a+(s-a)/2+C*(p*Rr)**_r,b)),D="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 Rt=Ae;function gt(r,e,t){return e=mo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function mo(r){var e=go(r,"string");return typeof e=="symbol"?e:String(e)}function go(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 bo=g.lazy(()=>yl(()=>import("./MarkdownEditor-c28ceda0.js"),["./MarkdownEditor-c28ceda0.js","./vendor-3e5e4180.js","./helpers-de833af9.js","./vendor-7509d17c.css","./ControlType-a179c4e6.js","./index-35aca2dd.js","./monaco-b5248072.js","./monaco-f18fde03.css","./index-7d08f7c0.css","./ControlType-fbf3b3ed.css","./mathjax-d42af1a5.js"],import.meta.url)),Nt=G.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(Rt.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=Rt.DEFAULT_CONTENT),this.state={isStartPageShown:n==null&&this.getClosedMarkdowns(e.closedPanels).length!==0,isEditing:!1,content:n,panelState:t},this.markdownEditor=null}setEditorPosition(e){F(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=T.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(po,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):u.jsx(xi,{isEditing:i,onDoubleClick:this.handleContainerDoubleClick,children:u.jsx(g.Suspense,{fallback:u.jsx(Ct,{}),children:u.jsx(bo,{ref:o=>{this.markdownEditor=o},isEditing:i,content:l??Rt.DEFAULT_CONTENT,onEditorInitialized:this.handleEditorInitialized})})})})}}gt(In,"defaultProps",{panelState:null});gt(In,"COMPONENT","MarkdownPanel");var Co=(r,e)=>{var{localDashboardId:t}=e;return{closedPanels:Ea(r,t)}},So=Ue(Co,null,null,{forwardRef:!0})(In);const vt=So;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:fi,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}function gr(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?gr(Object(t),!0).forEach(function(n){Zt(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):gr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Zt(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=Po(r,"string");return typeof e=="symbol"?e:String(e)}function Po(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,br(br({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 ji=xn;function Cr(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 Sr(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Cr(a,n,i,l,s,"next",o)}function s(o){Cr(a,n,i,l,s,"throw",o)}l(void 0)})}}function yr(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=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)}class Fo{constructor(e){yr(this,"items",void 0),yr(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 Sr(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return Sr(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 To=Fo;function Pr(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){Pr(a,n,i,l,s,"next",o)}function s(o){Pr(a,n,i,l,s,"throw",o)}l(void 0)})}}function Do(r,e,t){return e=Mo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Mo(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 Oo{constructor(e){Do(this,"items",void 0),this.items=e}getTable(){var e=this;return dt(function*(){return new To(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=Fa.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 Ta;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 No=Oo;function wr(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?wr(Object(t),!0).forEach(function(n){ko(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):wr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function ko(r,e,t){return e=Io(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Io(r){var e=xo(r,"string");return typeof e=="symbol"?e:String(e)}function xo(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 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 Ro(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 _o(r,e,t,n,i){return on.apply(this,arguments)}function on(){return on=Ro(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 _(r).applyTableSettings(v,o,ii(dl.getState())),ft.makeModelFromSettings(r,a,v)}),on.apply(this,arguments)}var Rn=g.forwardRef((r,e)=>{var t=it(),n=Da(),i=Di(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))});Rn.displayName="ChartPanelPlugin";const jo=Rn;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 Ao(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 Ai(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=Ao(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(gi,{model:t}):null}var $o={name:"ChartPanel",title:"Chart",type:Ne.WIDGET_PLUGIN,component:Ai,panelComponent:Rn,supportedTypes:"Figure",icon:ul};const Uo=$o;function $i(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;T.openComponent({root:v,config:p})},[n,e,t]);return Me(t.eventHub,fe.CREATE_CHART,i),null}var Vo={name:"ChartBuilderPlugin",type:Ne.DASHBOARD_PLUGIN,component:$i};const Go=Vo;var ut=G.module("FilterPlugin");function Ui(r){Et(r);var{id:e,layout:t,registerComponent:n}=r,i=ma(),[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),D=ve.toLower(P.name);if(w!==D)return w>D?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(Ma(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=T.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=T.DEFAULT_FOCUS_SELECTOR,createNewStack:D=!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;T.openComponent({root:M,config:O,focusElement:w,createNewStack:D,dragEvent:N})},[t,e]),m=g.useCallback(f=>{var{title:b="InputFilter",metadata:y={},panelState:S=null,id:P=ae(),focusElement:w=T.DEFAULT_FOCUS_SELECTOR,createNewStack:D=!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;T.openComponent({root:M,config:O,focusElement:w,createNewStack:D,dragEvent:N})},[t,e]),C=g.useCallback(f=>{var{title:b="FilterSets",metadata:y={},panelState:S=null,id:P=ae(),focusElement:w=T.DEFAULT_FOCUS_SELECTOR,createNewStack:D=!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;T.openComponent({root:M,config:O,focusElement:w,createNewStack:D,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]),ps(t.eventHub,d),fs(t.eventHub,h),vs(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 Ho={name:"FilterPlugin",type:Ne.DASHBOARD_PLUGIN,component:Ui};const Bo=Ho;var Ko=G.module("@deephaven/app-utils/useTablePlugin");function Vi(){var r=ai(),e=g.useCallback(t=>{var n=r.get(t);if(n!=null){if(La(n))return n.component;if(Oa(n))return n.TablePlugin}var i="Unable to find table plugin ".concat(t,".");throw Ko.error(i),new Error(i)},[r]);return e}function Tr(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 zo(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Tr(a,n,i,l,s,"next",o)}function s(o){Tr(a,n,i,l,s,"throw",o)}l(void 0)})}}function Gi(r,e,t){var n=it(),i=Vi(),a=g.useMemo(()=>({loadPlugin:i,localDashboardId:e,makeModel:function(){var l=zo(function*(){var o=yield r();return Ci.makeModel(n,o)});function s(){return l.apply(this,arguments)}return s}(),metadata:t}),[n,r,e,i,t]);return a}function Dr(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 Mr(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Dr(Object(t),!0).forEach(function(n){Wo(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Dr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Wo(r,e,t){return e=qo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function qo(r){var e=Xo(r,"string");return typeof e=="symbol"?e:String(e)}function Xo(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 _n=g.forwardRef((r,e)=>{var{localDashboardId:t,fetch:n,metadata:i}=r,a=Gi(n,t,i);return u.jsx(On,Mr(Mr({ref:e},r),a))});_n.displayName="GridPanelPlugin";const Zo=_n;function Lr(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){Lr(a,n,i,l,s,"next",o)}function s(o){Lr(a,n,i,l,s,"throw",o)}l(void 0)})}}function Hi(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 Ci.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(j.EVENT.DISCONNECT,p),()=>{t.removeEventListener(j.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 Bi(r,e){var{eventHub:t}=gn(),n=li(),i=si();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(()=>_.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 Ki(r,e){var{eventHub:t}=gn(),n=li(),i=si(),a=Na(),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&&Li(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:D}=e.state;F(D);var{columnHeaderHeight:N,allColumnXs:O,allColumnWidths:M,right:E,columnHeaderMaxDepth:I}=D,q=r.getColumnIndexByName(f);F(q);var B=e.getVisibleColumn(q),A=(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+A+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 sr(t,i,{getCoordinates:m,setFilterValues:e.setFilterMap,unsetFilterValue:()=>{},panelId:a}),()=>{sr(t,i,null)}},[t,i,m,e,a]),{alwaysFetchColumns:o,columnSelectionValidator:c,isSelectingColumn:p,onColumnSelected:C,onDataSelected:v}}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 kt(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){Yo(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 Yo(r,e,t){return e=Qo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Qo(r){var e=Jo(r,"string");return typeof e=="symbol"?e:String(e)}function Jo(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{fetch:e}=r,t=ga(Ht),{eventHub:n}=gn(),i=Hi(e),a=it(),l=g.useMemo(()=>new _(a),[a]),[s,o]=Ds(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)),_.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=Bi(i.status==="success"?i.model.columns:null,i.status==="success"&&je(i.model)?i.model.table:void 0),m=g.useRef(null),C=Ki(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:oi(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 ed={name:"IrisGridPanel",title:"Table",type:Ne.WIDGET_PLUGIN,component:zi,panelComponent:_n,supportedTypes:["Table","TreeTable","HierarchicalTable","PartitionedTable"],icon:hl};const td=ed;function Nr(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?Nr(Object(t),!0).forEach(function(n){nd(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Nr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function nd(r,e,t){return e=rd(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function rd(r){var e=id(r,"string");return typeof e=="symbol"?e:String(e)}function id(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 Wi(r){var e=r;return typeof e.getCoordinateForColumn=="function"}function kr(r){var e=r;return Wi(r)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function Ir(r){return r.description==null||!r.description.startsWith("Preview of type: ")}var xr=G.module("LinkerUtils");class ad{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 xr.debug2("Incompatible panel ids",e,t,n),!1;var{columnType:i}=e,{columnType:a}=t,l=a===null||V.isCompatibleType(i,a);return l?!0:(xr.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 _e=ad;function qi(r,e,t){return e=ld(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ld(r){var e=sd(r,"string");return typeof e=="symbol"?e:String(e)}function sd(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 od=G.module("LinkerLink"),Rr=.015,_r=1.5,Xi=12,Zi=12,jr=2,It=Math.sqrt((Zi*.5)**2+Xi**2),Ar=Math.asin(Zi*.5/Xi),$r=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(V.isNumberType(e)||V.isCharType(e))return bl(t);if(V.isTextType(e))return Cl(t);if(V.isDateType(e))return Sl(t);if(V.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 od.warn(n),""}}constructor(e){super(e),qi(this,"getOperators",k((t,n)=>{var{onOperatorChanged:i}=this.props,a=V.getFilterTypes(n);return V.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=V.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*Rr)**_r,f)),w=Math.max(S,Math.min(a+(s-a)/2+C*(p*Rr)**_r,b)),D="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,$r),`
7
7
  `).concat(Qe.makeCirclePath(l,s,$r)),O="link-select-clip-".concat(o),M=Math.atan2(s-w,l-P),E=M-Ar+Math.PI,I=M+Ar+Math.PI,q=l+Math.cos(M)*jr,B=s+Math.sin(M)*jr,A=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(A,",").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=V.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:D,onClick:this.handleClick,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,clipPath:"url(#".concat(O,")"),"data-testid":"link-select"}),u.jsx("path",{className:"link-background",d:D}),u.jsx("path",{className:"link-foreground",d:D}),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:cl,transform:"right-8 down-9 shrink-5"})]}),tooltip:"Change comparison operator",children:u.jsx(ka,{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"})]})]})}}qi(Qe,"defaultProps",{className:"",isSelected:!1,onClick(){},onDelete(){}});const dd=Qe;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 Vr(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){jn(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 jn(r,e,t){return e=ud(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ud(r){var e=hd(r,"string");return typeof e=="symbol"?e:String(e)}function hd(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=G.module("LinkerOverlayContent");class Yi 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(!Wi(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 T.getTabPoint(c)}handleOperatorChanged(e,t){var{links:n,onLinksUpdated:i}=this.props,a=n.map(l=>l.id===e?Vr(Vr({},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:D}=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 A=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:A,operator:D,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:D,type:N}=m;return u.jsx(dd,{className:P,id:S,x1:C,y1:f,x2:b,y2:y,onClick:a,onDelete:l,isSelected:n.has(S),operator:w,startColumnType:D,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:pl,onClick:()=>{},onMouseDown:this.handleMouseDown,children:!c&&u.jsx(Ia,{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(Zr,{actions:[{action:this.handleEscapePressed,shortcut:xa.LINKER_CLOSE,isGlobal:!0}]})]})}}jn(Yi,"defaultProps",{disabled:"false"});const cd=Yi;function Gr(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 Hr(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Gr(Object(t),!0).forEach(function(n){_t(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Gr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function _t(r,e,t){return e=pd(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function pd(r){var e=vd(r,"string");return typeof e=="symbol"?e:String(e)}function vd(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=G.module("Linker"),fd=(r,e)=>({activeTool:un(r),dh:ei(r),isolatedLinkerPanelId:Gt(r,e.localDashboardId),links:rt(r,e.localDashboardId),timeZone:ii(r)}),md=Ue(fd,{setActiveTool:Yr,setDashboardLinks:di,addDashboardLinks:ui,deleteDashboardLinks:hi,setDashboardIsolatedLinkerPanelId:dn,setDashboardColumnSelectionValidator:ci});class gd extends g.Component{constructor(e){super(e),_t(this,"linkTargetPropMap",new Map),_t(this,"removerFns",[]),_t(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=[cs(t,this.handleColumnsChanged),ms(t,this.handleLinkPointSelected),gs(t,this.handleUpdateValues),bs(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=T.getIdFromPanel(e);F(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&&_e.findColumn(t,l)==null||s!=null&&s.panelId===e&&_e.findColumn(t,s)==null});this.deleteLinks(i)}handleGridColumnSelect(e,t){if(!Ir(t)){W.debug2("Column is not filterable");return}var n=T.getIdFromPanel(e);F(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)&&_e.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,D=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===D.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?kr(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?kr(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:D}=t[o.columnName],N="".concat(D);if(D===null&&P&&w&&(D=void 0),C!=null&&V.isDateType(C)){var O=new ti(n,{timeZone:a,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:Ra.FULL_DATE_FORMAT});N=O.format(D)}y.push({operator:h,text:N,value:D,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=T.getIdFromPanel(e),a=t.id;if(i!=null){var l=_e.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:Hr(Hr({},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":T.getComponentNameFromPanel(e)!=="IrisGridPanel";if(t==null)return a?.start!=null&&this.updateLinkInProgressType("invalid"),!1;if(!Ir(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:T.getIdFromPanel(e);if(h==null)return!1;if(o&&s)return this.updateLinkInProgressType("invalid"),!1;var c={panelId:h,columnName:t.name,columnType:t.type},p=o?_e.isLinkValid(c,d,l):_e.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(cd,{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 bd=md(gd);const Cd=bd;function Qi(r){Et(r);var{id:e,layout:t,panelManager:n}=r;return u.jsx(Cd,{layout:t,localDashboardId:e,panelManager:n})}var Sd={name:"LinkerPlugin",type:Ne.DASHBOARD_PLUGIN,component:Qi};const yd=Sd;function Ji(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=T.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:Rt.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;T.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,pi.OPEN,a),null}var Pd={name:"MarkdownPlugin",type:Ne.DASHBOARD_PLUGIN,component:Ji};const wd=Pd;function Br(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 Kr(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Br(Object(t),!0).forEach(function(n){Ed(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Br(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Ed(r,e,t){return e=Fd(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Fd(r){var e=Td(r,"string");return typeof e=="symbol"?e:String(e)}function Td(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=Gi(n,t,i);return u.jsx(ji,Kr(Kr({ref:e},r),a))});An.displayName="PandasPanelPlugin";const Dd=An;function ea(r){var{fetch:e}=r,t=Hi(e);if(t.status==="loading")return u.jsx(Ct,{isLoading:!0});if(t.status==="error")return u.jsx(Ct,{errorMessage:oi(t.error),isLoading:!1});var{model:n,reload:i}=t;return u.jsx(vn,{model:n,children:u.jsx(_i,{onClick:i})})}var Md={name:"PandasPanel",title:"Pandas",type:Ne.WIDGET_PLUGIN,component:ea,panelComponent:An,supportedTypes:"pandas.DataFrame",icon:vl};const Ld=Md;function zr(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?zr(Object(t),!0).forEach(function(n){Od(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):zr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Od(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=kd(r,"string");return typeof e=="symbol"?e:String(e)}function kd(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 Id=G.module("WidgetLoaderPlugin");function xd(r){var e;function t(n,i){var a,l=r.component,{metadata:s}=n,o=ja(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 ta(r){var e=ai(),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;Id.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;T.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,xd(o)):a(o.name,d)});return()=>{s.forEach(o=>o())}},[a,t]),Me(i.eventHub,J.OPEN,l),null}var Rd={name:"WidgetLoaderPlugin",type:Ne.DASHBOARD_PLUGIN,component:ta};const _d=Rd;var jd=L.shape({state:L.shape({panelState:L.shape({})})}),Ad=L.shape({panelId:L.string.isRequired,columnName:L.string.isRequired,columnType:L.string.isRequired}),Wr=L.shape({panelId:L.string.isRequired,columnName:L.string.isRequired}),na=L.shape({start:Wr,end:Wr,id:L.string,isReversed:L.bool}),$d=L.arrayOf(na),Ud=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}),Vd=Object.freeze({LinkPoint:Ad,Link:na,Links:$d,Panel:jd,User:Ud});const Gd=Vd;var Hd=(r,e)=>r[e]===null?null:L.bool,Bd=(r,e)=>r[e]===null?null:L.string,Kd=Object.freeze({nullableBoolean:Hd,nullableString:Bd});const zd=Kd,tu=Object.freeze(Object.defineProperty({__proto__:null,ChartBuilderPlugin:$i,ChartBuilderPluginConfig:Go,ChartEvent:sn,ChartPanel:Mn,ChartPanelPlugin:jo,ChartPluginConfig:Uo,ChartWidgetPlugin:Ai,CommandHistoryPanel:Aa,CommonPropTypes:zd,ConsoleEvent:$a,ConsolePanel:Ua,ConsolePlugin:Va,ControlType:Ga,DropdownFilterPanel:Ze,FileExplorerPanel:Ha,FilterPlugin:Ui,FilterPluginConfig:Bo,FilterSetManager:Ni,FilterSetManagerPanel:xt,GridPanelPlugin:Zo,GridPluginConfig:td,GridWidgetPlugin:zi,InputFilterEvent:we,InputFilterPanel:Ye,IrisGridEvent:fe,IrisGridPanel:On,LinkerPlugin:Qi,LinkerPluginConfig:yd,LinkerUtils:_e,LogPanel:Ba,MarkdownEvent:pi,MarkdownPanel:vt,MarkdownPlugin:Ji,MarkdownPluginConfig:wd,MockFileStorage:No,NotebookEvent:Ka,NotebookPanel:za,PandasEvent:ds,PandasPanel:ji,PandasPanelPlugin:Dd,PandasPluginConfig:Ld,PandasWidgetPlugin:ea,Panel:yt,TabEvent:Wa,ToolType:de,UIPropTypes:Gd,WidgetLoaderPlugin:ta,WidgetLoaderPluginConfig:_d,WidgetPanel:Tt,WidgetPanelTooltip:Ft,addDashboardLinks:ui,deleteDashboardLinks:hi,getColumnSelectionValidatorForDashboard:Pt,getColumnsForDashboard:hn,getDashboardConnection:qa,getDashboardConsoleSettings:Xa,getDashboardSessionWrapper:Za,getFilterSetsForDashboard:ri,getInputFiltersForDashboard:wt,getIsolatedLinkerPanelIdForDashboard:Gt,getLinksForDashboard:rt,getTableMapForDashboard:Vt,isChartPanelDehydratedProps:Di,isChartPanelFigureMetadata:Sn,isChartPanelTableMetadata:Xe,isGLChartPanelState:Ti,isIrisGridPanelMetadata:Ii,isLegacyIrisGridPanelMetadata:ki,setDashboardColumnSelectionValidator:ci,setDashboardConnection:Ya,setDashboardConsoleSettings:Qa,setDashboardFilterSets:ni,setDashboardIsolatedLinkerPanelId:dn,setDashboardLinks:di,setDashboardSessionWrapper:Ja,useDashboardColumnFilters:Bi,useGridLinker:Ki,useLoadTablePlugin:Vi},Symbol.toStringTag,{value:"Module"}));export{fn as C,tu as D,Xn as F,ql as I,Oi as P,ft as a,ln as b,Ci as c,jl as d,Dl as e,Bl as f,rr as g,eu as h,Yn as i,Ds as j,gn as u};
8
- //# sourceMappingURL=index-90837e92.js.map
8
+ //# sourceMappingURL=index-4251673b.js.map