@deephaven/code-studio 0.77.1-beta.0 → 0.77.1-beta.4

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 (50) hide show
  1. package/build/assets/{AppRoot-7ffbd4ba.js → AppRoot-f69a0140.js} +3 -3
  2. package/build/assets/{AppRoot-7ffbd4ba.js.map → AppRoot-f69a0140.js.map} +1 -1
  3. package/build/assets/{Chart-e2a3a19c.js → Chart-19846143.js} +2 -2
  4. package/build/assets/{Chart-e2a3a19c.js.map → Chart-19846143.js.map} +1 -1
  5. package/build/assets/{ControlType-c6032251.js → ControlType-5e65a1f9.js} +3 -3
  6. package/build/assets/{ControlType-c6032251.js.map → ControlType-5e65a1f9.js.map} +1 -1
  7. package/build/assets/FontBootstrap-301270dd.css +1 -0
  8. package/build/assets/{FontBootstrap-bd217cd5.js → FontBootstrap-dafd12df.js} +2 -2
  9. package/build/assets/{FontBootstrap-bd217cd5.js.map → FontBootstrap-dafd12df.js.map} +1 -1
  10. package/build/assets/{FormatterUtils-d6d63795.js → FormatterUtils-84854bf0.js} +2 -2
  11. package/build/assets/{FormatterUtils-d6d63795.js.map → FormatterUtils-84854bf0.js.map} +1 -1
  12. package/build/assets/{Grid-4aafc4c0.js → Grid-2da8c6ae.js} +2 -2
  13. package/build/assets/{Grid-4aafc4c0.js.map → Grid-2da8c6ae.js.map} +1 -1
  14. package/build/assets/{GridRenderer-1283ab17.js → GridRenderer-bc76a490.js} +2 -2
  15. package/build/assets/GridRenderer-bc76a490.js.map +1 -0
  16. package/build/assets/{IrisGrid-d548b68a.js → IrisGrid-4566fcfe.js} +2 -2
  17. package/build/assets/{IrisGrid-d548b68a.js.map → IrisGrid-4566fcfe.js.map} +1 -1
  18. package/build/assets/{IrisGridModel-6326e446.js → IrisGridModel-5eee50a2.js} +2 -2
  19. package/build/assets/{IrisGridModel-6326e446.js.map → IrisGridModel-5eee50a2.js.map} +1 -1
  20. package/build/assets/{IrisGridShortcuts-5f94b7a6.js → IrisGridShortcuts-ce1afae5.js} +2 -2
  21. package/build/assets/{IrisGridShortcuts-5f94b7a6.js.map → IrisGridShortcuts-ce1afae5.js.map} +1 -1
  22. package/build/assets/{IrisGridThemeProvider-47181f2a.css → IrisGridThemeProvider-3984e29a.css} +1 -1
  23. package/build/assets/{IrisGridThemeProvider-ff3e508c.js → IrisGridThemeProvider-3c6c8cb6.js} +2 -2
  24. package/build/assets/{IrisGridThemeProvider-ff3e508c.js.map → IrisGridThemeProvider-3c6c8cb6.js.map} +1 -1
  25. package/build/assets/{MarkdownEditor-4e90cc6f.js → MarkdownEditor-c76b2153.js} +2 -2
  26. package/build/assets/{MarkdownEditor-4e90cc6f.js.map → MarkdownEditor-c76b2153.js.map} +1 -1
  27. package/build/assets/{MarkdownNotebook-d2d8c979.js → MarkdownNotebook-4a4ccc33.js} +2 -2
  28. package/build/assets/{MarkdownNotebook-d2d8c979.js.map → MarkdownNotebook-4a4ccc33.js.map} +1 -1
  29. package/build/assets/{MissingPartitionError-5480c5f4.js → MissingPartitionError-6c767865.js} +2 -2
  30. package/build/assets/{MissingPartitionError-5480c5f4.js.map → MissingPartitionError-6c767865.js.map} +1 -1
  31. package/build/assets/{StyleGuideRoot-a0b841cf.js → StyleGuideRoot-27a8d861.js} +2 -2
  32. package/build/assets/{StyleGuideRoot-a0b841cf.js.map → StyleGuideRoot-27a8d861.js.map} +1 -1
  33. package/build/assets/{index-470b8a54.css → index-13e1b819.css} +1 -1
  34. package/build/assets/index-3a104f6a.css +1 -0
  35. package/build/assets/{index-8aea8687.js → index-49c2275d.js} +2 -2
  36. package/build/assets/{index-8aea8687.js.map → index-49c2275d.js.map} +1 -1
  37. package/build/assets/{index-63bf2b7c.js → index-5f3db412.js} +2 -2
  38. package/build/assets/{index-63bf2b7c.js.map → index-5f3db412.js.map} +1 -1
  39. package/build/assets/{index-ad91f162.js → index-d634bf3b.js} +6 -6
  40. package/build/assets/index-d634bf3b.js.map +1 -0
  41. package/build/assets/useUser-f5667912.js +2 -0
  42. package/build/assets/useUser-f5667912.js.map +1 -0
  43. package/build/index.html +2 -2
  44. package/package.json +30 -30
  45. package/build/assets/FontBootstrap-832a937c.css +0 -1
  46. package/build/assets/GridRenderer-1283ab17.js.map +0 -1
  47. package/build/assets/index-ad91f162.js.map +0 -1
  48. package/build/assets/index-e500652d.css +0 -1
  49. package/build/assets/useUser-5eee6d9c.js +0 -2
  50. package/build/assets/useUser-5eee6d9c.js.map +0 -1
@@ -1,9 +1,9 @@
1
- import{r as T,I as u,K as pe,T as Ze,U as he,bd as ia,$ as An,_ as k,be as Kr,V as I,L as ce,Q as Ye,M as oe,Z as Se,b1 as aa,af as Rt}from"./vendor-2ad5ff96.js";import{F as Ae,c as A,ch as H,P as Ne,ai as se,ci as nn,bI as O,A as la,bO as Wr,aa as sa,al as qr,cj as Ft,ck as De,X as Zr,cl as mn,cm as Yr,H as Ce,ad as X,x as hn,cn as Ht,bW as Xr,a0 as vn,co as Bt,cp as zt,cq as Kt,cr as Dt,cs as fn,S as yt,B as V,ct as gn,i as Qr,b as Jr,a6 as oa,ab as da,cu as ei,cv as ti,aW as ua,ae,bV as ha,cw as jn,an as ca,ap as pa,u as ht,b4 as ma,o as ni,w as va,c1 as He,bS as Mt,bK as Me,_ as fa,aC as ri,cc as ga,ca as Ca,T as Ct,J as ba,s as Sa,G as wa,cx as ii,cy as ai,cz as li,cA as si,b8 as Ea,bU as ya,bY as Pa,af as oi,c0 as Ta,bT as Fa,V as Da,cB as Ma,R as Na,ak as La,E as Oa,W as Ra,U as Ia,ac as _a,ag as ka,cC as xa,a4 as Aa,cD as ja,a5 as Va,au as $a,cE as Ua,av as Ga}from"./ControlType-c6032251.js";import{L as Z,e as M,ai as Ha,aj as Ba,E as Cn,ak as za,al as Ka,am as di,f as bn,an as ui,ao as Vn,t as $n,g as Wa,z as qa,M as Za,b as Ya,c as Xa,H as hi,ap as Qa,aq as Ja,d as el,ar as tl,as as nl}from"./index-8aea8687.js";import{C as rl,b as te,c as _,m as Un,d as $,G as pt,i as je,e as Be,B as Gn,S as ci,L as pi,R as il,a as Hn,I as Sn}from"./IrisGridModel-6326e446.js";import{I as B,f as rn,g as Bn,M as zn,h as al,e as ze,A as ll,j as sl,k as ol,l as dl}from"./MissingPartitionError-5480c5f4.js";import{F as cn}from"./FormatterUtils-d6d63795.js";import{_ as ul}from"./monaco-b5248072.js";function wn(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=T.useRef(null),s=T.useCallback(d=>{d.target===d.currentTarget&&document.body.classList.add("card-flip--is-flipping")},[]),o=T.useCallback(d=>{d.target===d.currentTarget&&document.body.classList.remove("card-flip--is-flipping")},[]);return T.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:pe(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 Kn(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 Wn(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Kn(Object(t),!0).forEach(function(n){q(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Kn(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function q(r,e,t){return e=hl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function hl(r){var e=cl(r,"string");return typeof e=="symbol"?e:String(e)}function cl(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=Z.module("FigureChartModel");class Wt extends rl{constructor(e,t){var n,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(e),n=this,q(this,"chartUtils",void 0),q(this,"dh",void 0),q(this,"figure",void 0),q(this,"settings",void 0),q(this,"data",void 0),q(this,"layout",void 0),q(this,"seriesDataMap",void 0),q(this,"pendingSeries",void 0),q(this,"oneClicks",void 0),q(this,"filterColumnMap",void 0),q(this,"lastFilter",void 0),q(this,"isConnected",void 0),q(this,"seriesToProcess",void 0),q(this,"addPendingSeries",Ze(()=>{for(var a=te.getAxisTypeMap(this.figure),{pendingSeries:l}=this,s=function(){var h,c=l[o],m=n.figure.charts.find(p=>p.series.includes(c));n.addSeries(c,a,(h=m?.showLegend)!==null&&h!==void 0?h:null),c.subscribe()},o=0;o<l.length;o+=1)s();this.pendingSeries=[]},Wt.ADD_SERIES_DEBOUNCE)),q(this,"getTimeZone",he((a,l)=>{if(l!=null){var s=l.getColumnTypeFormatter(a);if(s!=null)return s.dhTimeZone}})),q(this,"getValueTranslator",he((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.unwrapValue(o,s)})),q(this,"getValueParser",he((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.wrapValue(o,a,s)})),q(this,"getRangeParser",he((a,l)=>s=>{var[o,d]=s,h=this.getValueParser(a,l);return o=h(o),d=h(d),[o,d]})),q(this,"getAxisRangeParser",he((a,l)=>s=>{var o=te.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 te(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=te.getAxisTypeMap(this.figure),i=[];this.seriesToProcess=new Set;for(var a=function(){for(var m=t[l],p=0;p<m.series.length;p+=1){var g=m.series[p];i.push(g.name),e.addSeries(g,n,m.showLegend)}var{axes:v,title:f}=m;if(f!=null&&f.length>0&&(t.length>1||e.figure.title!=null)){var C=v.find(D=>D.type===e.dh.plot.AxisType.X),w=v.find(D=>D.type===e.dh.plot.AxisType.Y);if(C==null||w==null)Q.warn("Chart title provided, but unknown how to map to the correct axes for this chart type",m);else{var b,S,E,F,N=((b=(S=n.get(C.type))===null||S===void 0?void 0:S.findIndex(D=>D===C))!==null&&b!==void 0?b:0)+1,y=((E=(F=n.get(w.type))===null||F===void 0?void 0:F.findIndex(D=>D===w))!==null&&E!==void 0?E:0)+1,P={align:"center",x:.5,y:1,yshift:17,text:f,showarrow:!1,xref:"x".concat(N," domain"),yref:"y".concat(y," domain")};e.layout.annotations==null?e.layout.annotations=[P]:e.layout.annotations.push(P)}}},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{dh:i}=this,a=this.chartUtils.makeSeriesDataFromSeries(e,t,te.getSeriesVisibility(e.name,this.settings),n);if(this.seriesDataMap.set(e.name,a),this.seriesToProcess.add(e.name),this.data=[...this.seriesDataMap.values()],e.plotStyle===i.plot.SeriesPlotStyle.STACKED_BAR?this.layout.barmode="stack":e.plotStyle===i.plot.SeriesPlotStyle.PIE&&(this.layout.hiddenlabels=te.getHiddenLabels(this.settings)),this.layout.showlegend=this.data.length>1||e.plotStyle===i.plot.SeriesPlotStyle.PIE?n??void 0:!1,e.oneClick!=null){for(var{oneClick:l}=e,{columns:s}=l,o=0;o<s.length;o+=1)this.filterColumnMap.set(s[o].name,s[o]);this.oneClicks.push(l)}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){Q.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&&(Q.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){Q.debug("Downsample started",e),this.fireDownsampleStart(e.detail)}handleDownsampleFinish(e){Q.debug("Downsample finished",e),this.fireDownsampleFinish(e.detail)}handleDownsampleFail(e){Q.error("Downsample failed",e),this.fireDownsampleFail(e.detail)}handleDownsampleNeeded(e){Q.info("Downsample needed",e),this.fireDownsampleNeeded(e.detail)}handleFigureUpdated(e){var{detail:t}=e,{series:n}=t;Q.debug2("handleFigureUpdated",n);for(var i=0;i<n.length;i+=1){var a=n[i];Q.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),m=t.getArray(a,h,c);this.setDataArrayForSeries(a,h,m)}this.seriesToProcess.delete(a.name),this.cleanSeries(a)}this.seriesToProcess.size===0&&this.fireLoadFinished();var{data:p}=this;this.fireUpdate(p)}handleRequestFailed(e){Q.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()}setDownsamplingDisabled(e){super.setDownsamplingDisabled(e),this.resubscribe()}handleFigureDisconnected(e){Q.debug("Figure disconnected",e),this.isConnected=!1,this.listeners.length>0&&this.unsubscribeFigure(),this.fireDisconnect()}handleFigureReconnected(e){Q.debug("Figure reconnected",e),this.isConnected=!0,this.initAllSeries(),this.fireReconnect(),this.listeners.length>0&&this.subscribeFigure()}handleFigureSeriesAdded(e){var{detail:t}=e;Q.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=te.DEFAULT_MARGIN.t+i*te.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=Wn({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=Wn({},this.layout.title.pad),this.layout.title.pad.t=te.DEFAULT_TITLE_PADDING.t+i*te.SUBTITLE_LINE_HEIGHT*.5)}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)=>{Q.debug("Assigning ".concat(n),this.layout[n],t);var i=this.layout[n];i!=null?Object.assign(i,t):Q.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&&ia(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:m,y:p,yLow:g,yHigh:v}=a;c&&m&&c!==h&&(a.error_x=te.getPlotlyErrorBars(h,c,m)),g&&v&&g!==p&&(a.error_y=te.getPlotlyErrorBars(p,g,v))}else if(i===t.plot.SeriesPlotStyle.TREEMAP){var{ids:f,labels:C}=a;f!==void 0&&C===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){Q.warn("Trying to set a filter, but no one click!");return}Q.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}}q(Wt,"ADD_SERIES_DEBOUNCE",50);const qn=Wt;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 an(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 En{static makeModelFromSettings(e,t,n){return an(function*(){var i=yield En.makeFigureFromSettings(e,t,n);return new qn(e,i,t)})()}static makeFigureFromSettings(e,t,n){return an(function*(){var i=yield n.copy();return i.applyCustomColumns(n.customColumns),i.applyFilter(n.filter),i.applySort(n.sort),e.plot.Figure.create(new te(e).makeFigureSettings(t,i))})()}static makeModel(e,t,n){return an(function*(){return new qn(e,n,t)})()}}const St=En;function Yn(r){return r.setFigure!==void 0}function ln(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=ml(r,"string");return typeof e=="symbol"?e:String(e)}function ml(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 vl extends Error{constructor(e,t){super("".concat(t," can't be empty (on pending row ").concat(e+1,")")),ln(this,"isMissingKey",!0),ln(this,"rowIndex",void 0),ln(this,"columnName",void 0),this.rowIndex=e,this.columnName=t}}const fl=vl;function Xn(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 It(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Xn(Object(t),!0).forEach(function(n){x(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Xn(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}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 Ve(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 x(r,e,t){return e=gl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function gl(r){var e=Cl(r,"string");return typeof e=="symbol"?e:String(e)}function Cl(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=Z.module("IrisGridTableModelTemplate"),bl=150,Sl=0;function qe(r){return r.table!==void 0}class Pt extends _{seekRow(e,t,n,i,a,l,s){throw new Error("Method not implemented.")}export(){throw new Error("Method not implemented.")}columnStatistics(e){throw new Error("Method not implemented.")}get customColumns(){return[]}set customColumns(e){throw new Error("Method not implemented.")}get formatColumns(){return[]}set formatColumns(e){throw new Error("Method not implemented.")}updateFrozenColumns(e){throw new Error("Method not implemented.")}get rollupConfig(){throw new Error("Method not implemented.")}set rollupConfig(e){throw new Error("Method not implemented.")}get selectDistinctColumns(){throw new Error("Method not implemented.")}set selectDistinctColumns(e){throw new Error("Method not implemented.")}get columns(){return this.table.columns}constructor(e,t){var n,i,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Ae(e),l=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),x(this,"dh",void 0),x(this,"irisGridUtils",void 0),x(this,"tableUtils",void 0),x(this,"irisFormatter",void 0),x(this,"inputTable",void 0),x(this,"subscription",void 0),x(this,"table",void 0),x(this,"viewport",void 0),x(this,"viewportData",void 0),x(this,"formattedStringData",void 0),x(this,"pendingStringData",void 0),x(this,"isSaveInProgress",void 0),x(this,"totalsTable",void 0),x(this,"totalsTablePromise",void 0),x(this,"totals",void 0),x(this,"totalsDataMap",void 0),x(this,"pendingNewDataMap",void 0),x(this,"pendingNewRowCount",0),x(this,"_columnHeaderGroupMap",new Map),x(this,"columnHeaderParentMap",new Map),x(this,"_columnHeaderMaxDepth",null),x(this,"_columnHeaderGroups",[]),x(this,"_movedColumns",null),x(this,"getMemoizedInitialMovedColumns",k(s=>{var o,d,h,c;if(!s)return[];var m=[],{groupMap:p}=B.parseColumnHeaderGroups(this,(o=s?.columnGroups)!==null&&o!==void 0?o:[]),g=(y,P)=>{var D=this.getColumnIndexByName(y);if(D==null)throw new Error("Unknown layout hint column: ".concat(y));var R=pt.getVisibleIndex(D,m);m=pt.moveItem(R,P,m)},v=(y,P)=>{var D=p.get(y);if(D==null)throw new Error("Unknown layout hint group: ".concat(y));var R=D.getVisibleRange(m);m=pt.moveRange(R,P,m)},f=(d=s.frontColumns)!==null&&d!==void 0?d:[],C=(h=s.backColumns)!==null&&h!==void 0?h:[],w=(c=s.frozenColumns)!==null&&c!==void 0?c:[];if(f.length>0||C.length>0||w.length>0){var b=new Set,S=0;w?.forEach(y=>{if(b.has(y))throw new Error("Column specified in multiple layout hints: ".concat(y));g(y,S),S+=1}),f.forEach(y=>{if(b.has(y))throw new Error("Column specified in multiple layout hints: ".concat(y));g(y,S),S+=1});var E=this.columnMap.size-1;C?.forEach(y=>{if(b.has(y))throw new Error("Column specified in multiple layout hints: ".concat(y));g(y,E),E-=1})}var F=s?.columnGroups;if(F){var N=[...p.values()];N.sort((y,P)=>y.depth-P.depth),N.forEach(y=>{var P=y.children[0],D=this.getColumnIndexByName(P),R;if(D!=null)R=pt.getVisibleIndex(D,m);else{var j=p.get(P);if(!j)throw new Error("Unknown column ".concat(P," in group ").concat(y.name));var G=j.getVisibleRange(m);[,R]=G}for(var U=1;U<y.children.length;U+=1){var re=y.children[U],de=p.get(re),we=this.getColumnIndexByName(re);if(de){var Le=de.getVisibleRange(m)[0]<R,me=Le?R-de.childIndexes.length+1:R+1;v(re,me),R=me+de.childIndexes.length-1}else if(we!=null){var Ee=pt.getVisibleIndex(we,m)<R,ye=Ee?R:R+1;g(re,ye),R=ye}}})}return this._movedColumns=m,m})),x(this,"getMemoizedInitialColumnHeaderGroups",k(s=>{var o;return B.parseColumnHeaderGroups(this,(o=s?.columnGroups)!==null&&o!==void 0?o:[]).groups})),x(this,"getMemoizedColumnMap",k(s=>{var o=new Map;return s.forEach(d=>o.set(d.name,d)),o})),x(this,"getColumnIndicesByNameMap",k(s=>{var o=new Map;return s.forEach((d,h)=>{var{name:c}=d;return o.set(c,h)}),o})),x(this,"setViewport",An((s,o,d)=>{if(o<s){z.error("Invalid viewport",s,o);return}var{viewport:h}=this;if(h!=null&&h.top===s&&h.bottom===o&&h.columns===d){z.debug2("Ignoring duplicate viewport",h);return}this.viewport={top:s,bottom:o,columns:d},z.debug2("setViewport",this.viewport),this.applyViewport()},bl)),x(this,"applyViewport",An(()=>{if(this.viewport){z.debug2("applyViewport",this.viewport);var{top:s,bottom:o,columns:d}=this.viewport,[h,c]=this.getCachedViewportRowRange(s,o);this.applyBufferedViewport(h,c,d)}},Sl,{leading:!1})),x(this,"getCachedFormattedString",Un((s,o,d,h,c)=>s.getFormattedString(o,d,h,c),{max:1e4})),x(this,"getCachedCustomColumnFormatFlag",Un(cn.isCustomColumnFormatDefined,{max:1e4})),x(this,"getCachedViewportRowRange",k((s,o)=>{var d=o-s,h=Math.max(0,s-d*Pt.ROW_BUFFER_PAGES),c=o+d*Pt.ROW_BUFFER_PAGES;return[h,c]})),x(this,"getCachedPendingErrors",k((s,o,d)=>{var h=new Map;return s.forEach((c,m)=>{for(var{data:p}=c,g=0;g<d;g+=1)if(!p.has(g)){var v;h.has(m)||h.set(m,[]),(v=h.get(m))===null||v===void 0||v.push(new fl(m,o[g].name))}}),h})),this.handleTableDisconnect=this.handleTableDisconnect.bind(this),this.handleTableReconnect=this.handleTableReconnect.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this),this.handleTotalsUpdate=this.handleTotalsUpdate.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handleCustomColumnsChanged=this.handleCustomColumnsChanged.bind(this),this.dh=e,this.irisFormatter=a,this.irisGridUtils=new B(e),this.inputTable=l,this.subscription=null,this.table=t,this.tableUtils=new A(e),this.viewport=null,this.viewportData=null,this.formattedStringData=[],this.pendingStringData=[],this.isSaveInProgress=!1,this.totalsTable=null,this.totalsTablePromise=null,this.totals=null,this.totalsDataMap=null,this.pendingNewDataMap=new Map,this.pendingNewRowCount=0,this.columnHeaderGroups=B.parseColumnHeaderGroups(this,(n=(i=this.layoutHints)===null||i===void 0?void 0:i.columnGroups)!==null&&n!==void 0?n:[]).groups}close(){this.table.close(),this.totalsTable!==null&&this.totalsTable.close(),this.totalsTablePromise!==null&&this.totalsTablePromise.cancel()}startListening(){super.startListening();var{dh:e}=this;this.table.addEventListener(e.Table.EVENT_DISCONNECT,this.handleTableDisconnect),this.table.addEventListener(e.Table.EVENT_RECONNECT,this.handleTableReconnect),this.table.addEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),this.table.addEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed),this.table.addEventListener(e.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleCustomColumnsChanged),this.totalsTable!=null&&this.addTotalsListeners(this.totalsTable),this.applyViewport()}stopListening(){super.stopListening();var{dh:e}=this;this.table.removeEventListener(e.Table.EVENT_DISCONNECT,this.handleTableDisconnect),this.table.removeEventListener(e.Table.EVENT_RECONNECT,this.handleTableReconnect),this.table.removeEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),this.table.removeEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed),this.table.removeEventListener(e.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleCustomColumnsChanged),this.totalsTable!=null&&this.removeTotalsListeners(this.totalsTable),this.closeSubscription()}addTotalsListeners(e){var{dh:t}=this;e.addEventListener(t.Table.EVENT_UPDATED,this.handleTotalsUpdate),e.setViewport(0,0)}removeTotalsListeners(e){var{dh:t}=this;e.removeEventListener(t.Table.EVENT_UPDATED,this.handleTotalsUpdate)}handleTableDisconnect(){this.dispatchEvent(new H(_.EVENT.DISCONNECT))}handleTableReconnect(){this.dispatchEvent(new H(_.EVENT.RECONNECT))}handleTableUpdate(e){this.copyViewportData(e.detail),this.dispatchEvent(new H(_.EVENT.UPDATED))}handleTotalsUpdate(e){this.copyTotalsData(e.detail),this.dispatchEvent(new H(_.EVENT.UPDATED))}handleRequestFailed(e){this.dispatchEvent(new H(_.EVENT.REQUEST_FAILED,e))}handleCustomColumnsChanged(){this.dispatchEvent(new H(_.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get rowCount(){var e,t,n;return Math.max(this.table.size,0)+this.pendingNewRowCount+((e=(t=this.totals)===null||t===void 0||(n=t.operationOrder)===null||n===void 0?void 0:n.length)!==null&&e!==void 0?e:0)}get pendingDataErrors(){var e,t;return this.getCachedPendingErrors(this.pendingNewDataMap,this.columns,(e=(t=this.inputTable)===null||t===void 0?void 0:t.keyColumns.length)!==null&&e!==void 0?e:0)}get pendingDataMap(){return this.pendingNewDataMap}set pendingDataMap(e){e!==this.pendingNewDataMap&&(e.forEach((t,n)=>{if(!B.isValidIndex(n))throw new Error("Invalid rowIndex ".concat(n));var{data:i}=t;i.forEach((a,l)=>{if(!B.isValidIndex(l))throw new Error("Invalid columnIndex ".concat(l))})}),this.pendingNewDataMap=e,this.pendingNewRowCount=Math.max(this.pendingNewRowCount,this.maxPendingDataRow),this.formattedStringData=[],this.dispatchEvent(new H(_.EVENT.PENDING_DATA_UPDATED)))}get pendingRowCount(){return this.pendingNewRowCount}set pendingRowCount(e){e!==this.pendingNewRowCount&&(this.pendingNewRowCount=Math.max(0,e,this.maxPendingDataRow),this.dispatchEvent(new H(_.EVENT.UPDATED)))}get maxPendingDataRow(){return this.pendingNewDataMap.size>0?Math.max(...this.pendingNewDataMap.keys())+1:0}get columnCount(){return this.columns.length}get floatingBottomRowCount(){var e,t,n;return this.totals!=null&&this.totals.showOnTop?0:(e=(t=this.totals)===null||t===void 0||(n=t.operationOrder)===null||n===void 0?void 0:n.length)!==null&&e!==void 0?e:0}get floatingTopRowCount(){var e,t,n;return this.totals!=null&&this.totals.showOnTop&&(e=(t=this.totals)===null||t===void 0||(n=t.operationOrder)===null||n===void 0?void 0:n.length)!==null&&e!==void 0?e:0}get isChartBuilderAvailable(){return!0}get isTotalsAvailable(){return this.table.getTotalsTable!=null}get isEditable(){return!this.isSaveInProgress&&this.inputTable!=null}get isViewportPending(){if(this.viewport==null||this.viewport.columns===void 0||this.viewportData==null)return!0;if(this.viewport.columns.length===0||this.viewportData.rows.length===0)return!1;var e=this.viewport.top<this.viewportData.offset,t=this.viewportData.offset+this.viewportData.rows.length<this.viewport.bottom,n=this.viewportData.rows[0].data.get(this.viewport.columns[0].index)===void 0,i=this.viewportData.rows[0].data.get(this.viewport.columns[this.viewport.columns.length-1].index)===void 0;return e||t||n||i}cacheFormattedValue(e,t,n){this.formattedStringData[e]==null&&(this.formattedStringData[e]=[]),this.formattedStringData[e][t]=n}cachePendingValue(e,t,n){this.pendingStringData[e]==null&&(this.pendingStringData[e]=[]),this.pendingStringData[e][t]=n}clearPendingValue(e,t){var n=this.pendingStringData[e];n!=null&&delete n[t]}textValueForCell(e,t){var n,i;if(((n=this.pendingStringData[e])===null||n===void 0?void 0:n[t])!==void 0)return this.pendingStringData[e][t];if(((i=this.formattedStringData[e])===null||i===void 0?void 0:i[t])===void 0){var a=this.valueForCell(e,t);if(a===null)return null;if(a===void 0)return;var l=this.sourceColumn(e,t),s=this.getCachedCustomColumnFormatFlag(this.formatter,l.name,l.type),o;if(!s){var d=this.formatForCell(e,t);d?.formatString!=null&&(o=d)}var h=this.displayString(a,l.type,l.name,o);this.cacheFormattedValue(e,t,h)}return this.formattedStringData[e][t]}textForCell(e,t){var n,i=this.textValueForCell(e,t);if(i==null&&this.isKeyColumn(e)){var a=this.pendingRow(t);if(a!=null&&this.pendingDataMap.has(a))return"*"}if(A.isTextType((n=this.columns[e])===null||n===void 0?void 0:n.type)){if(i===null)return this.formatter.showNullStrings?"null":"";if(i==="")return this.formatter.showEmptyStrings?"empty":""}return i??""}truncationCharForCell(e){var t=this.columns[e],{type:n}=t;if(A.isNumberType(n)&&this.formatter.truncateNumbersWithPound)return"#"}colorForCell(e,t,n){var i=this.dataForCell(e,t);if(i){var{format:a,value:l}=i;if(l==null||l==="")return M(n.nullStringColor),n.nullStringColor;if(a?.color!=null&&a.color!=="")return a.color;if(this.isPendingRow(t))return M(n.pendingTextColor),n.pendingTextColor;if(l!=null){var s=this.sourceColumn(e,t);if(A.isDateType(s.type)||s.name==="Date")return M(n.dateColor),n.dateColor;if(A.isNumberType(s.type))return l>0?(M(n.positiveNumberColor),n.positiveNumberColor):l<0?(M(n.negativeNumberColor),n.negativeNumberColor):(M(n.zeroNumberColor),n.zeroNumberColor)}}else if(this.isPendingRow(t)&&this.isKeyColumn(e))return M(n.errorTextColor),n.errorTextColor;return n.textColor}backgroundColorForCell(e,t,n){var i,a;return(i=(a=this.formatForCell(e,t))===null||a===void 0?void 0:a.backgroundColor)!==null&&i!==void 0?i:null}textAlignForCell(e){var t=this.columns[e],{type:n}=t;return A.isNumberType(n)?"right":A.isDateType(n)||t.name==="Date"?"center":"left"}textForColumnHeader(e){var t,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,i=this.columnAtDepth(e,n);return rn(i)?i.isNew?"":i.name:(t=i?.displayName)!==null&&t!==void 0?t:i?.name}colorForColumnHeader(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=this.columnAtDepth(e,t);if(rn(n)){var i;return(i=n.color)!==null&&i!==void 0?i:null}return null}getColumnHeaderGroup(e,t){var n=this.columnAtDepth(e,t);if(rn(n))return n}getColumnHeaderParentGroup(e,t){var n,i;return this.columnHeaderParentMap.get((n=(i=this.columnAtDepth(e,t))===null||i===void 0?void 0:i.name)!==null&&n!==void 0?n:"")}columnAtDepth(e){var t,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(n===0)return this.columns[e];var i=(t=this.columns[e])===null||t===void 0?void 0:t.name,a=this.columnHeaderParentMap.get(i);if(a){for(var l=a.depth;l<n;){if(a=this.columnHeaderParentMap.get(a.name),!a)return;l=a.depth}if(a.depth===n)return a}}textForRowFooter(e){var t=this.totalsRow(e);return t!=null&&this.totals?this.totals.operationOrder[t]:""}get initialMovedColumns(){var e;return this.getMemoizedInitialMovedColumns((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get initialColumnHeaderGroups(){var e;return this.getMemoizedInitialColumnHeaderGroups((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get columnMap(){return this.getMemoizedColumnMap(this.table.columns)}get columnHeaderMaxDepth(){var e;return(e=this._columnHeaderMaxDepth)!==null&&e!==void 0?e:1}set columnHeaderMaxDepth(e){this._columnHeaderMaxDepth=e}get columnHeaderGroupMap(){return this._columnHeaderGroupMap}get columnHeaderGroups(){return this._columnHeaderGroups}set columnHeaderGroups(e){if(e!==this._columnHeaderGroups){var{groups:t,maxDepth:n,parentMap:i,groupMap:a}=B.parseColumnHeaderGroups(this,e??this.initialColumnHeaderGroups);this._columnHeaderGroups=t,this.columnHeaderMaxDepth=n,this.columnHeaderParentMap=i,this._columnHeaderGroupMap=a}}row(e){var t,n,i,a,l,s,o,d,h,c,m=(t=(n=this.totals)===null||n===void 0||(i=n.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,p=(a=(l=this.totals)===null||l===void 0?void 0:l.showOnTop)!==null&&a!==void 0?a:!1,g=this.totalsRow(e);if(g!=null){var v,f,C,w=(v=this.totals)===null||v===void 0?void 0:v.operationOrder[g];return M(w),(f=(C=this.totalsDataMap)===null||C===void 0?void 0:C.get(w))!==null&&f!==void 0?f:null}var b=this.pendingRow(e);if(b!=null){var S;return(S=this.pendingNewDataMap.get(b))!==null&&S!==void 0?S:null}var E=(s=(o=this.viewportData)===null||o===void 0?void 0:o.offset)!==null&&s!==void 0?s:0,F=(p?e-m:e)-E;return(d=(h=this.viewportData)===null||h===void 0||(c=h.rows)===null||c===void 0?void 0:c[F])!==null&&d!==void 0?d:null}sourceColumn(e,t){var n=this.totalsRow(t);if(n!=null){var i,a,l,s,o=(i=this.totals)===null||i===void 0?void 0:i.operationOrder[n],d=(a=(l=this.totals)===null||l===void 0?void 0:l.defaultOperation)!==null&&a!==void 0?a:Bn.SUM,h=this.columns[e],c=(s=this.totalsTable)===null||s===void 0?void 0:s.columns.find(m=>{var p;return m.name==="".concat(h.name,"__").concat(o)||(o===d||((p=this.totals)===null||p===void 0?void 0:p.operationOrder.length)===1)&&m.name===h.name});if(c!=null)return c}return this.columns[e]}totalsRow(e){var t,n,i,a,l,s=(t=(n=this.totals)===null||n===void 0||(i=n.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,o=(a=(l=this.totals)===null||l===void 0?void 0:l.showOnTop)!==null&&a!==void 0?a:!1,d=o?e:e-this.table.size;return d>=0&&d<s?d:null}pendingRow(e){var t=e-this.floatingTopRowCount-this.table.size;return t>=0&&t<this.pendingNewRowCount?t:null}isTotalsRow(e){return this.totalsRow(e)!=null}isPendingRow(e){return this.pendingRow(e)!=null}dataForCell(e,t){var n;return(n=this.row(t))===null||n===void 0?void 0:n.data.get(e)}formatForCell(e,t){var n;return(n=this.dataForCell(e,t))===null||n===void 0?void 0:n.format}valueForCell(e,t){var n=this.dataForCell(e,t);if(n){var i;return(i=n.value)!==null&&i!==void 0?i:null}}copyViewportData(e){if(e==null){z.warn("invalid data!");return}this.viewportData=this.extractViewportData(e),this.formattedStringData=[]}copyTotalsData(e){var t,n,i,a=this;if(e==null){z.warn("invalid data!");return}var{columns:l,rows:s}=e;if(s.length!==1){z.error("Unexpected number of rows received for totals table, ignoring update");return}for(var o=new Map,d=s[0],h=(t=(n=this.totals)===null||n===void 0?void 0:n.defaultOperation)!==null&&t!==void 0?t:Bn.SUM,c=(i=this.totals)===null||i===void 0?void 0:i.operationMap,m=function(){var v,f,C=l[p],[w,b=(v=c==null||(f=c[w])===null||f===void 0?void 0:f[0])!==null&&v!==void 0?v:h]=C.name.split("__");o.has(b)||o.set(b,{data:new Map});var{data:S}=o.get(b),E=a.columns.findIndex(F=>F.name===w);S.set(E,{value:d.get(C),format:d.getFormat(C)})},p=0;p<l.length;p+=1)m();z.debug2("copyTotalsData",o),this.totalsDataMap=o,this.formattedStringData=[]}getColumnIndexByName(e){return this.getColumnIndicesByNameMap(this.columns).get(e)}extractViewportData(e){for(var t={offset:e.offset,rows:[]},{columns:n}=e,i=0;i<e.rows.length;i+=1){var a=e.rows[i],l=this.extractViewportRow(a,n);t.rows.push(l)}return t}extractViewportRow(e,t){for(var n=new Map,i=0;i<t.length;i+=1){var a=t[i],l=this.getColumnIndexByName(a.name);M(l),n.set(l,{value:e.get(a),format:e.getFormat(a)})}return{data:n}}closeSubscription(){z.debug2("closeSubscription",this.subscription),this.subscription&&(this.subscription.close(),this.subscription=null),this.setViewport.cancel(),this.applyViewport.cancel()}get filter(){return this.table.filter}set filter(e){this.closeSubscription(),this.table.applyFilter(e),this.applyViewport()}get formatter(){return this.irisFormatter}set formatter(e){this.irisFormatter=e,this.formattedStringData=[],this.dispatchEvent(new H(_.EVENT.FORMATTER_UPDATED))}displayString(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",i=arguments.length>3?arguments[3]:void 0;return this.getCachedFormattedString(this.formatter,e,t,n,i)}get sort(){return this.table.sort}set sort(e){this.closeSubscription(),this.table.applySort(e),this.applyViewport()}set totalsConfig(e){if(z.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 H(_.EVENT.UPDATED));return}this.totalsTablePromise=Ne.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{Ne.isCanceled(t)||(z.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new H(_.EVENT.REQUEST_FAILED,{detail:t})))})}}setTotalsTable(e){z.debug("setTotalsTable",e),this.totalsTable!==null&&(this.listenerCount>0&&this.removeTotalsListeners(this.totalsTable),this.totalsTable.close()),this.totalsTable=e,this.totalsDataMap=null,this.listenerCount>0&&this.totalsTable!=null&&this.addTotalsListeners(this.totalsTable)}applyBufferedViewport(e,t,n){if(this.dispatchEvent(new H(_.EVENT.VIEWPORT_UPDATED)),z.debug2("applyBufferedViewport",e,t,n),this.subscription==null){var i;z.debug2("applyBufferedViewport creating new subscription"),this.subscription=(i=this.table.setViewport(e,t,n))!==null&&i!==void 0?i:null}else z.debug2("applyBufferedViewport using existing subscription"),this.subscription.setViewport(e,t,n)}snapshot(e){var t=arguments,n=this;return Ve(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:P=>P,l=t.length>3&&t[3]!==void 0?t[3]:!0;if(n.subscription==null)throw new Error("No subscription available");var s=l?$.consolidate(e):e;if(!B.isValidSnapshotRanges(s))throw new Error("Invalid snapshot ranges ".concat(e));for(var o=new Set,d=[],h=new Set,c=0;c<s.length;c+=1){var m=s[c];M(m.endRow),M(m.startRow);for(var p=m.startRow;p<=m.endRow&&p<n.floatingTopRowCount;p+=1)o.add(p);m.endRow>=n.floatingTopRowCount&&m.startRow<=n.floatingTopRowCount+n.table.size&&d.push(new $(m.startColumn,Math.min(Math.max(0,m.startRow-n.floatingTopRowCount)),m.endColumn,Math.min(Math.max(0,m.endRow-n.floatingTopRowCount),n.table.size-n.floatingTopRowCount)));for(var g=Math.max(m.startRow,n.floatingTopRowCount+n.table.size);g<=m.endRow&&g<n.floatingTopRowCount+n.table.size+n.floatingBottomRowCount;g+=1)h.add(g)}var v=B.columnsFromRanges(s,n.columns),f=[];i&&f.push(v.map(P=>P.name));for(var C=[...o].sort(),w=function*(){var D=C[b],R=v.map(j=>{var G=n.getColumnIndexByName(j.name);return M(G),a(n.valueForCell(G,D),j)});i&&R.push(n.textForRowFooter(D)),f.push(R)},b=0;b<C.length;b+=1)yield*w();if(d.length>0){var S=n.irisGridUtils.rangeSetFromRanges(d),E=yield n.subscription.snapshot(S,v);f.push(...E.rows.map(P=>v.map(D=>a(P.get(D),D))))}for(var F=[...h].sort(),N=function*(){var D=F[y],R=v.map(j=>{var G=n.getColumnIndexByName(j.name);return M(G),a(n.valueForCell(G,D),j)});i&&R.push(n.textForRowFooter(D)),f.push(R)},y=0;y<F.length;y+=1)yield*N();return f})()}textSnapshot(e){var t=arguments,n=this;return Ve(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:s=>"".concat(s);z.debug2("textSnapshot",e,i);var l=yield n.snapshot(e,i,a,!1);return l.map(s=>s.join(" ")).join(`
2
- `)})()}valuesTable(e){var t=this;return Ve(function*(){var n=null;try{return n=yield t.table.copy(),n.applyFilter([]),n.applySort([]),n.selectDistinct(Array.isArray(e)?e:[e])}finally{n?.close()}})()}isColumnMovable(e,t){if(e<0||e>=this.columnCount)return!1;if(t>0)return!0;var n=this.columns[e].name;return this.frontColumns.includes(n)||this.backColumns.includes(n)||this.frozenColumns.includes(n)||!n?!1:!this.isKeyColumn(e)}isColumnSortable(e){var t;return(t=this.columns[e].isSortable)!==null&&t!==void 0?t:!0}isKeyColumn(e){var t,n;return e<((t=(n=this.inputTable)===null||n===void 0?void 0:n.keyColumns.length)!==null&&t!==void 0?t:0)}isRowMovable(){return!1}isEditableRange(e){if(this.inputTable==null||!$.isBounded(e))return!1;var t=this.isPendingRow(e.startRow)&&this.isPendingRow(e.endRow);return!(!(t||this.inputTable.keyColumns.length!==0&&e.startColumn>=this.inputTable.keyColumns.length&&e.endColumn>=this.inputTable.keyColumns.length)||e.startRow<this.floatingTopRowCount||e.startRow>=this.floatingTopRowCount+this.table.size+this.pendingRowCount||e.endRow>=this.floatingTopRowCount+this.table.size+this.pendingRowCount)}isDeletableRange(e){return this.inputTable!=null&&e.startRow!=null&&e.endRow!=null&&e.startRow>=this.floatingTopRowCount&&e.startRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount&&e.endRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount}isEditableRanges(e){return e.every(t=>this.isEditableRange(t))}isDeletableRanges(e){return e.every(t=>this.isDeletableRange(t))}getTableAreaRange(){return new $(null,this.floatingTopRowCount,null,this.floatingTopRowCount+this.table.size-1)}getPendingAreaRange(){return new $(null,this.floatingTopRowCount+this.table.size,null,this.floatingTopRowCount+this.table.size+this.pendingNewRowCount-1)}setValueForCell(e,t,n){var i=this;return Ve(function*(){return i.setValueForRanges([new $(e,t,e,t)],n)})()}setValueForRanges(e,t){var n=this;return Ve(function*(){if(!n.isEditableRanges(e))throw new Error("Uneditable ranges ".concat(e));try{var i=new Set,a=[];$.forEachCell(e,(v,f)=>{var C=n.columns[v];if(i.add(C),a[v]===void 0){var w=n.tableUtils.makeValue(C.type,t,n.formatter.timeZone);a[v]=w!=null?n.displayString(w,C.type,C.name):null}n.cachePendingValue(v,f,a[v])});var l=n.getPendingAreaRange(),s=e.map(v=>$.intersection(l,v)).filter(v=>v!=null).map(v=>(M(v),$.offset(v,0,-(n.floatingTopRowCount+n.table.size))));if(s.length>0){var o=new Map(n.pendingNewDataMap);$.forEachCell(s,(v,f)=>{o.has(f)||o.set(f,{data:new Map});var C=n.columns[v],w=o.get(f);M(w);var{data:b}=w,S=new Map(b),E=n.tableUtils.makeValue(C.type,t,n.formatter.timeZone);E!=null?S.set(v,{value:E}):S.delete(v),S.size>0?o.set(f,It(It({},w),{},{data:S})):o.delete(f)}),n.pendingDataMap=o}n.dispatchEvent(new H(_.EVENT.UPDATED));var d=n.getTableAreaRange(),h=e.map(v=>$.intersection(d,v)).filter(v=>v!=null);if(h.length>0){var c,m=yield n.snapshot(h.map(v=>{var f,C;return new $(null,(f=v?.startRow)!==null&&f!==void 0?f:null,null,(C=v?.endRow)!==null&&C!==void 0?C:null)})),p=m.map(v=>{for(var f={},C=0;C<n.columns.length;C+=1)f[n.columns[C].name]=v[C];return i.forEach(w=>{f[w.name]=n.tableUtils.makeValue(w.type,t,n.formatter.timeZone)}),f}),g=yield(c=n.inputTable)===null||c===void 0?void 0:c.addRows(p);z.debug("setValueForRanges(",e,",",t,") set tableRanges",h,"result",g)}$.forEachCell(e,(v,f)=>{var C=a[v];M(C),n.cacheFormattedValue(v,f,C)})}catch(v){z.error("Unable to set ranges",e,t,v)}finally{$.forEachCell(e,(v,f)=>{n.clearPendingValue(v,f)})}})()}setValues(){var e=arguments,t=this;return Ve(function*(){var n=e.length>0&&e[0]!==void 0?e[0]:[];if(z.debug("setValues(",n,")"),!n.every(p=>{var g,v;return t.isEditableRange($.makeCell((g=p.column)!==null&&g!==void 0?g:p.x,(v=p.row)!==null&&v!==void 0?v:p.y))}))throw new Error("Uneditable ranges ".concat(n));try{var i=new Map(t.pendingNewDataMap);n.forEach(p=>{var g,v,{text:f}=p,C=(g=p.column)!==null&&g!==void 0?g:p.x,w=(v=p.row)!==null&&v!==void 0?v:p.y,b=t.columns[C],S=t.tableUtils.makeValue(b.type,f,t.formatter.timeZone),E=S!=null?t.displayString(S,b.type,b.name):null;t.cachePendingValue(C,w,E);var F=t.pendingRow(w);if(F!=null){i.has(F)||i.set(F,{data:new Map});var N=i.get(F);M(N);var{data:y}=N,P=new Map(y);S!=null?P.set(C,{value:S}):P.delete(C),P.size>0?i.set(F,It(It({},N),{},{data:P})):i.delete(F)}}),t.pendingDataMap=i,t.dispatchEvent(new H(_.EVENT.UPDATED));var a=n.reduce((p,g)=>{var v,f,C=(v=g.row)!==null&&v!==void 0?v:g.y;return p.has(C)||p.set(C,[]),(f=p.get(C))===null||f===void 0||f.push(g),p},new Map),l=$.consolidate(n.map(p=>{var g,v;return $.makeCell((g=p.column)!==null&&g!==void 0?g:p.x,(v=p.row)!==null&&v!==void 0?v:p.y)})),s=t.getTableAreaRange(),o=l.map(p=>$.intersection(s,p)).filter(p=>p!=null);if(o.length>0){var d,h=yield t.snapshot(o.map(p=>(M(p),new $(null,p.startRow,null,p.endRow)))),c=h.map((p,g)=>{for(var v=null,f=g,C=0;C<o.length;C+=1){var w=o[C];M(w);var b=$.rowCount([w]);if(f<b){M(w.startRow),v=w.startRow+f;break}f-=b}for(var S={},E=0;E<t.columns.length;E+=1)S[t.columns[E].name]=p[E];M(v);var F=a.get(v);return F?.forEach(N=>{var y,P=t.columns[(y=N.column)!==null&&y!==void 0?y:N.x];S[P.name]=t.tableUtils.makeValue(P.type,N.text,t.formatter.timeZone)}),S});z.info("setValues setting tableRanges",o);var m=yield(d=t.inputTable)===null||d===void 0?void 0:d.addRows(c);z.info("setValues set tableRanges",o,"SUCCESS",m)}n.forEach(p=>{var g,v,{text:f}=p,C=(g=p.column)!==null&&g!==void 0?g:p.x,w=(v=p.row)!==null&&v!==void 0?v:p.y,b=t.columns[C],S=t.tableUtils.makeValue(b.type,f,t.formatter.timeZone),E=S!=null?t.displayString(S,b.type,b.name):null;t.cacheFormattedValue(C,w,E)})}finally{n.forEach(p=>{t.clearPendingValue(p.column,p.row)})}})()}commitPending(){var e=this;return Ve(function*(){if(e.pendingNewDataMap.size<=0)throw new Error("No pending changes to commit");try{var t,n,i;e.isSaveInProgress=!0;var a=[];e.pendingNewDataMap.forEach(s=>{var o={};s.data.forEach((d,h)=>{var{value:c}=d,m=e.columns[h];o[m.name]=c}),a.push(o)});var l=yield(t=e.inputTable)===null||t===void 0?void 0:t.addRows(a);z.debug("commitPending()",e.pendingNewDataMap,"result",l),e.pendingNewDataMap=new Map,e.pendingNewRowCount=Math.max(0,((n=(i=e.viewport)===null||i===void 0?void 0:i.bottom)!==null&&n!==void 0?n:0)-e.table.size),e.formattedStringData=[],e.dispatchEvent(new H(_.EVENT.PENDING_DATA_UPDATED))}finally{e.isSaveInProgress=!1}})()}editValueForCell(e,t){return this.textValueForCell(e,t)}delete(e){return Ve(function*(){throw new Error("Delete not implemented")})()}isValidForCell(e,t,n){try{var i=this.columns[e];return this.tableUtils.makeValue(i.type,n,this.formatter.timeZone),!0}catch{return!1}}}x(Pt,"ROW_BUFFER_PAGES",1);const mi=Pt;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 Je(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 Ie(r,e,t){return e=wl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function wl(r){var e=El(r,"string");return typeof e=="symbol"?e:String(e)}function El(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var _e=Z.module("IrisGridTableModel");class yl extends mi{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Ae(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,n,i),Ie(this,"userFrozenColumns",void 0),Ie(this,"customColumnList",void 0),Ie(this,"formatColumnList",void 0),Ie(this,"initialFilters",[]),Ie(this,"getMemoizedFrontColumns",k(a=>a??[])),Ie(this,"getMemoizedBackColumns",k(a=>a??[])),Ie(this,"getMemoizedFrozenColumns",k((a,l)=>{var s;return(s=l??a)!==null&&s!==void 0?s:[]})),Ie(this,"getCachedFilterableColumnSet",k(a=>new Set(a.map((l,s)=>s)))),Ie(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 isValuesTableAvailable(){return this.table.selectDistinct!=null&&this.table.copy!=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 frontColumns(){var e,t;return this.getMemoizedFrontColumns((e=(t=this.layoutHints)===null||t===void 0?void 0:t.frontColumns)!==null&&e!==void 0?e:[])}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(_e.debug2("set customColumns",e,this.customColumnList,e===this.customColumnList),this.customColumnList.length===0&&e.length===0){_e.debug("Ignore empty initial customColumns"),this.customColumnList=e;return}if(this.customColumnList===e){_e.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(_e.debug2("set formatColumns",e,this.formatColumnList,e===this.formatColumnList),this.formatColumnList.length===0&&e.length===0){_e.debug("Ignore empty initial formatColumns"),this.formatColumnList=e;return}if(this.formatColumnList===e){_e.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 H(_.EVENT.TABLE_CHANGED,{detail:this.table}))}get partitionColumns(){return this.getCachedPartitionColumns(this.columns)}partitionKeysTable(){var e=this;return Je(function*(){return e.valuesTable(e.partitionColumns)})()}partitionMergedTable(){var e=this;return Je(function*(){var t=yield e.table.copy();return t.applyFilter([]),t})()}partitionTable(e){var t=this;return Je(function*(){_e.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(_e.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 H(_.EVENT.UPDATED));return}this.totalsTablePromise=Ne.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{Ne.isCanceled(t)||(_e.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new H(_.EVENT.REQUEST_FAILED,{detail:t})))})}}get isFilterRequired(){return this.table.isUncoalesced}get isPartitionRequired(){return this.table.isUncoalesced&&this.isValuesTableAvailable&&this.partitionColumns.length>0}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns).has(e)}export(){var e=this;return Je(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 Je(function*(){var a;if(!i.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));M(i.inputTable);var{keyColumns:l}=i.inputTable;if(l.length===0)throw new Error("No key columns to allow deletion");var s=i.getPendingAreaRange(),o=e.map(b=>$.intersection(s,b)).filter(b=>b!=null).map(b=>(M(b),$.offset(b,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];M(c.startRow),M(c.endRow);for(var m=c.startRow;m<=c.endRow;m+=1)d.delete(m)}n(d),i.formattedStringData=[],i.dispatchEvent(new H(_.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new H(_.EVENT.UPDATED))}var p=i.getTableAreaRange(),g=e.map(b=>$.intersection(p,b)).filter(b=>b!=null);if(!(g.length<=0)){var[v,f]=yield Promise.all([i.snapshot(g.map(b=>(M(b),l.map(S=>{var E=i.getColumnIndexByName(S.name);if(E==null)throw new Error("Key column ".concat(S.name," not found"));return new $(E,b.startRow,E,b.endRow)}))).flat()),i.table.copy()]),C=v.map(b=>{for(var S=[],E=0;E<l.length;E+=1){var F=l[E],N=b[E],y=i.tableUtils.makeFilterRawValue(F.type,N),P=F.filter().eq(y);S.push(P)}return S.reduce((D,R)=>{var j;return(j=D?.and(R))!==null&&j!==void 0?j:R})}),w=C.reduce((b,S)=>{var E;return(E=b?.or(S))!==null&&E!==void 0?E:S});f.applyFilter([w]),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 Je(function*(){return o.table.seekRow(e,t,n,i,a,l,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}const Pl=yl;function Tl(r,e,t){return e=Fl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Fl(r){var e=Dl(r,"string");return typeof e=="symbol"?e:String(e)}function Dl(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 Ml extends _{constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new Ae(e);super(e),Tl(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 se}getColumnIndexByName(e){}get initialMovedColumns(){return se}get initialMovedRows(){return se}get initialColumnHeaderGroups(){return se}get groupedColumns(){return se}formatForCell(e,t){}valueForCell(e,t){}get filter(){return se}set filter(e){}get partition(){return se}set partition(e){}get partitionColumns(){return se}get formatter(){return this.modelFormatter}set formatter(e){this.modelFormatter=e}displayString(e,t,n){return""}get sort(){return se}set sort(e){}get customColumns(){return se}set customColumns(e){}get formatColumns(){return se}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 se}set selectDistinctColumns(e){}get pendingDataMap(){return nn}set pendingDataMap(e){}get pendingRowCount(){return 0}set pendingRowCount(e){}get pendingDataErrors(){return nn}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 se}set columnHeaderGroups(e){}get columnHeaderGroupMap(){return nn}getColumnHeaderParentGroup(e,t){}}const Nl=Ml;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 sn(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 Ll(r,e,t){return e=Ol(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Ol(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 Il extends Nl{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Ae(e);super(e,n),Ll(this,"partitionedTable",void 0),this.partitionedTable=t}get isPartitionRequired(){return!0}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}partitionKeysTable(){var e=this;return sn(function*(){return e.partitionedTable.getKeyTable()})()}partitionMergedTable(){var e=this;return sn(function*(){return e.partitionedTable.getMergedTable()})()}partitionTable(e){var t=this;return sn(function*(){try{var n=yield t.partitionedTable.getTable(e);if(n==null)throw new zn("Partition not found");return n}catch(i){throw al(i)?i:new zn("Unable to retrieve partition")}})()}}const _l=Il;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 kl(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 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 rr(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){tt(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 tt(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=Al(r,"string");return typeof e=="symbol"?e:String(e)}function Al(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 jl=Z.module("IrisGridTreeTableModel");class Vl extends mi{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Ae(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,n,i),tt(this,"virtualColumns",void 0),tt(this,"getCachedColumns",k((a,l)=>[...a,...l])),tt(this,"getCachedGroupColumns",k((a,l)=>[...a,...l])),tt(this,"getCachedFilterableColumnSet",k((a,l,s)=>new Set((l?.length>0?l:a).filter(o=>!s.includes(o)).map(o=>a.findIndex(d=>o.name===d.name))))),tt(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:A.dataType.STRING,constituentType:A.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 virtual column")},formatColor:()=>{throw new Error("Color not implemented for virtual column")},get:()=>{throw new Error("get not implemented for virtual column")},getFormat:()=>{throw new Error("getFormat not implemented for virtual column")},formatNumber:()=>{throw new Error("formatNumber not implemented for virtual column")},formatDate:()=>{throw new Error("formatDate not implemented for virtual column")}}]:[]}applyBufferedViewport(e,t,n){var i=[...this.table.groupedColumns,...n.filter(a=>!this.virtualColumns.includes(a)&&!this.groupedColumns.includes(a))];this.table.setViewport(e,t,i)}textForCell(e,t){var n=this.sourceColumn(e,t),i=this.row(t);if(i!=null&&n!=null){if(!i.hasChildren&&n.constituentType!=null){var a=this.valueForCell(e,t);return this.displayString(a,n.constituentType,n.name)}if(i.hasChildren&&i.depth<=e+1&&this.valueForCell(e,t)===null&&this.getCachedGroupedColumnSet(this.groupedColumns).has(e))return""}return super.textForCell(e,t)}extractViewportRow(e,t){var{isExpanded:n,hasChildren:i,depth:a}=e,l=super.extractViewportRow(e,t),s=new Map(l.data);if(i)for(var o=0;o<this.virtualColumns.length;o+=1){var d=o+(a-1)+(this.virtualColumns.length-1),h=s.get(d);h==null?jl.warn("Missing key data for virtual column",o,a,d,e):s.set(o,h)}return rr(rr({},l),{},{data:s,isExpanded:n,hasChildren:i,depth:a})}snapshot(e,t,n){var i=this;return kl(function*(){var a,l;M(i.viewport),M(i.viewportData);var s=(a=i.viewport.columns)!==null&&a!==void 0?a:i.columns,o=[];t!=null&&t&&o.push(s.map(C=>C.name));for(var d=new $(0,(l=i.viewportData)===null||l===void 0?void 0:l.offset,s.length,i.viewportData.offset+i.viewportData.rows.length),h=0;h<e.length;h+=1){var c=$.intersection(d,e[h]);M(c),M(c.startRow),M(c.endRow);for(var m=c.startRow;m<=c.endRow;m+=1){var p=[],g=i.viewportData.rows[m-i.viewportData.offset];M(c.startColumn),M(c.endColumn);for(var v=c.startColumn;v<=c.endColumn;v+=1){var f;M(n),p.push(n((f=g.data.get(v))===null||f===void 0?void 0:f.value,i.columns[v]))}o.push(p)}}return o})()}get columns(){return this.getCachedColumns(this.virtualColumns,super.columns)}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 hasExpandableRows(){return!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.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 $l=Vl;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 Ul(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)})}}function L(r,e,t){return e=Gl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Gl(r){var e=Hl(r,"string");return typeof e=="symbol"?e:String(e)}function Hl(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 ke=Z.module("IrisGridProxyModel");function et(r,e,t,n){return A.isTreeTable(e)?new $l(r,e,t):A.isPartitionedTable(e)?new _l(r,e,t):new Pl(r,e,t,n)}class Bl extends _{constructor(e,t){var n,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Ae(e),a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),n=this,L(this,"dh",void 0),L(this,"originalModel",void 0),L(this,"model",void 0),L(this,"modelPromise",void 0),L(this,"rollup",void 0),L(this,"partition",void 0),L(this,"selectDistinct",void 0),L(this,"currentViewport",void 0),L(this,"textForCell",function(){return n.model.textForCell(...arguments)}),L(this,"truncationCharForCell",function(){return n.model.truncationCharForCell(...arguments)}),L(this,"textAlignForCell",function(){return n.model.textAlignForCell(...arguments)}),L(this,"colorForCell",function(){return n.model.colorForCell(...arguments)}),L(this,"backgroundColorForCell",function(){return n.model.backgroundColorForCell(...arguments)}),L(this,"textForColumnHeader",function(){return n.model.textForColumnHeader(...arguments)}),L(this,"colorForColumnHeader",function(){return n.model.colorForColumnHeader(...arguments)}),L(this,"textForRowHeader",function(){return n.model.textForRowHeader(...arguments)}),L(this,"textForRowFooter",function(){return n.model.textForRowFooter(...arguments)}),L(this,"isRowMovable",function(){return n.model.isRowMovable(...arguments)}),L(this,"isColumnMovable",function(){return n.model.isColumnMovable(...arguments)}),L(this,"isRowExpandable",function(){return je(n.model)?n.model.isRowExpandable(...arguments):!1}),L(this,"isRowExpanded",function(){return je(n.model)?n.model.isRowExpanded(...arguments):!1}),L(this,"setRowExpanded",function(){if(je(n.model))return n.model.setRowExpanded(...arguments);throw Error("Function setRowExpanded does not exist on IrisGridTableModel")}),L(this,"expandAll",()=>{if(je(this.model))return this.model.expandAll();throw Error("Function expandAll does not exist on IrisGridTableModel")}),L(this,"collapseAll",()=>{if(je(this.model))return this.model.collapseAll();throw Error("Function collapseAll does not exist on IrisGridTableModel")}),L(this,"depthForRow",function(){return je(n.model)?n.model.depthForRow(...arguments):0}),L(this,"getColumnHeaderGroup",function(){return n.model.getColumnHeaderGroup(...arguments)}),L(this,"getColumnHeaderParentGroup",function(){return n.model.getColumnHeaderParentGroup(...arguments)}),L(this,"sourceForCell",function(){return n.model.sourceForCell(...arguments)}),L(this,"getClearFilterRange",function(){return n.model.getClearFilterRange(...arguments)}),L(this,"formatForCell",function(){return n.model.formatForCell(...arguments)}),L(this,"valueForCell",function(){return n.model.valueForCell(...arguments)}),L(this,"renderTypeForCell",function(){return n.model.renderTypeForCell(...arguments)}),L(this,"dataBarOptionsForCell",function(){return n.model.dataBarOptionsForCell(...arguments)}),L(this,"displayString",function(){return n.model.displayString(...arguments)}),L(this,"isEditableRange",function(){return Be(n.model)?n.model.isEditableRange(...arguments):!1}),L(this,"isFilterable",function(){return n.model.isFilterable(...arguments)}),L(this,"setViewport",(s,o,d)=>{this.currentViewport={top:s,bottom:o,columns:d},this.model.setViewport(s,o,d)}),L(this,"snapshot",function(){return n.model.snapshot(...arguments)}),L(this,"textSnapshot",function(){return n.model.textSnapshot(...arguments)}),L(this,"valuesTable",function(){return n.model.valuesTable(...arguments)}),L(this,"editValueForCell",function(){return Be(n.model)?n.model.editValueForCell(...arguments):""}),L(this,"setValueForCell",function(){return Be(n.model)?n.model.setValueForCell(...arguments):Promise.reject(new Error("Model is not editable"))}),L(this,"setValueForRanges",function(){return Be(n.model)?n.model.setValueForRanges(...arguments):Promise.reject(new Error("Model is not editable"))}),L(this,"setValues",function(){return Be(n.model)?n.model.setValues(...arguments):Promise.resolve()}),L(this,"isValidForCell",function(){return Be(n.model)?n.model.isValidForCell(...arguments):!1}),L(this,"delete",function(){return n.model.delete(...arguments)}),L(this,"commitPending",function(){return n.model.commitPending(...arguments)}),this.handleModelEvent=this.handleModelEvent.bind(this);var l=et(e,t,i,a);this.dh=e,this.originalModel=l,this.model=l,this.modelPromise=null,this.rollup=null,this.partition=null,this.selectDistinct=[]}close(){this.originalModel.close(),this.model!==this.originalModel&&this.model.close(),this.modelPromise!=null&&this.modelPromise.cancel()}handleModelEvent(e){ke.debug2("handleModelEvent",e);var{detail:t,type:n}=e;this.dispatchEvent(new H(n,{detail:t}))}setModel(e){ke.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 H(_.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)}qe(e)&&this.dispatchEvent(new H(_.EVENT.TABLE_CHANGED,{detail:e.table}))}setNextModel(e){ke.debug2("setNextModel"),this.modelPromise&&this.modelPromise.cancel(),this.listenerCount>0&&this.removeListeners(this.model),this.modelPromise=Ne.makeCancelable(e,t=>t.close()),this.modelPromise.then(t=>{this.modelPromise=null,this.setModel(t)}).catch(t=>{if(Ne.isCanceled(t)){ke.debug2("setNextModel cancelled");return}ke.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new H(_.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(_.EVENT),n=0;n<t.length;n+=1)e.addEventListener(t[n],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(_.EVENT),n=0;n<t.length;n+=1)e.removeEventListener(t[n],this.handleModelEvent)}get rowCount(){return this.model.rowCount}get columnCount(){return this.model.columnCount}get floatingTopRowCount(){return this.model.floatingTopRowCount}get floatingBottomRowCount(){return this.model.floatingBottomRowCount}get floatingLeftColumnCount(){return this.model.floatingLeftColumnCount}get floatingRightColumnCount(){return this.model.floatingRightColumnCount}isColumnFrozen(e){return this.model.isColumnFrozen(e)}isColumnSortable(e){return this.model.isColumnSortable(e)}get hasExpandableRows(){return je(this.model)?this.model.hasExpandableRows:!1}get isExpandAllAvailable(){if(je(this.model)){var e;return(e=this.model.isExpandAllAvailable)!==null&&e!==void 0?e:!1}return!1}get isExportAvailable(){return this.model.isExportAvailable}get isColumnStatisticsAvailable(){return this.model.isColumnStatisticsAvailable}get isValuesTableAvailable(){return this.model.isValuesTableAvailable}get isCustomColumnsAvailable(){return this.model.isCustomColumnsAvailable&&!(this.isSelectDistinctAvailable&&this.selectDistinctColumns.length>0)}get isFormatColumnsAvailable(){return this.model.isFormatColumnsAvailable}get isChartBuilderAvailable(){return this.model.isChartBuilderAvailable}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 isTotalsAvailable(){return this.model.isTotalsAvailable}get isReversible(){return this.model.isReversible}get columns(){return this.model.columns}get initialMovedColumns(){return this.model.initialMovedColumns}get initialMovedRows(){return this.model.initialMovedRows}get layoutHints(){return this.model.layoutHints}get frontColumns(){return this.model.frontColumns}get backColumns(){return this.model.backColumns}get frozenColumns(){return this.model.frozenColumns}get columnHeaderGroups(){return this.model.columnHeaderGroups}set columnHeaderGroups(e){this.model.columnHeaderGroups=e}get initialColumnHeaderGroups(){return this.model.initialColumnHeaderGroups}get columnHeaderGroupMap(){return this.model.columnHeaderGroupMap}get columnHeaderMaxDepth(){return this.model.columnHeaderMaxDepth}updateFrozenColumns(e){return this.model.updateFrozenColumns(e)}get originalColumns(){return this.originalModel.columns}get groupedColumns(){return this.model.groupedColumns}get partitionColumns(){return ze(this.originalModel)?this.originalModel.partitionColumns:[]}get description(){return this.model.description}get filter(){return this.model.filter}set filter(e){this.model.filter=e}get partitionConfig(){return!ze(this.originalModel)||!this.originalModel.isPartitionRequired?null:this.partition}set partitionConfig(e){if(!this.isPartitionRequired)throw new Error("Partitions are not available");ke.debug("set partitionConfig",e),this.partition=e;var t=Promise.resolve(this.originalModel);e!=null&&ze(this.originalModel)&&(e.mode==="keys"?t=this.originalModel.partitionKeysTable().then(n=>et(this.dh,n,this.formatter)):e.mode==="merged"?t=this.originalModel.partitionMergedTable().then(n=>et(this.dh,n,this.formatter)):t=this.originalModel.partitionTable(e.partitions).then(n=>et(this.dh,n,this.formatter))),this.setNextModel(t)}partitionKeysTable(){if(!ze(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionKeysTable()}partitionMergedTable(){if(!ze(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionMergedTable()}partitionTable(e){if(!ze(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionTable(e)}get formatter(){return this.model.formatter}set formatter(e){this.model.formatter=e}get sort(){return this.model.sort}set sort(e){this.model.sort=e}get customColumns(){return this.model.customColumns}set customColumns(e){this.model.customColumns=e}get formatColumns(){return this.model.formatColumns}set formatColumns(e){this.model.formatColumns=e}get rollupConfig(){return this.rollup}set rollupConfig(e){if(ke.debug("set rollupConfig",e),!this.isRollupAvailable)throw new Error("Rollup Rows are not available");if(!Kr(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);qe(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(n=>et(this.dh,n,this.formatter))),this.setNextModel(t)}}get selectDistinctColumns(){return this.selectDistinct}set selectDistinctColumns(e){if(ke.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){ke.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);qe(this.originalModel)&&t.length>0&&(n=this.originalModel.table.selectDistinct(t).then(i=>et(this.dh,i,this.formatter))),this.setNextModel(n)}get table(){if(qe(this.model))return this.model.table}get totalsConfig(){return this.model.totalsConfig}set totalsConfig(e){this.model.totalsConfig=e}get isFilterRequired(){return this.originalModel.isFilterRequired}get isPartitionRequired(){return ze(this.originalModel)?this.originalModel.isPartitionRequired:!1}get isEditable(){return Be(this.model)&&this.model.isEditable}get isViewportPending(){return this.model.isViewportPending}export(){if(A.isTreeTable(this.model))throw new Error("TreeTable has no 'export' property");return this.model.export()}columnStatistics(e){if(A.isTreeTable(this.model))throw new Error("TreeTable has no 'columnStatistics' function");return this.model.columnStatistics(e)}get pendingDataMap(){return this.model.pendingDataMap}set pendingDataMap(e){this.model.pendingDataMap=e}get pendingRowCount(){return this.model.pendingRowCount}set pendingRowCount(e){this.model.pendingRowCount=e}get pendingDataErrors(){return this.model.pendingDataErrors}getColumnIndexByName(e){return this.model.getColumnIndexByName(e)}seekRow(e,t,n,i,a,l,s){var o=this;return Ul(function*(){return o.model.seekRow(e,t,n,i,a,l,s)})()}get isSeekRowAvailable(){return this.model.isSeekRowAvailable}}const zl=Bl;function ar(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 Kl(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){ar(a,n,i,l,s,"next",o)}function s(o){ar(a,n,i,l,s,"throw",o)}l(void 0)})}}class Wl{static makeModel(e,t){var n=arguments;return Kl(function*(){var i=n.length>2&&n[2]!==void 0?n[2]:new Ae(e),a=null;return!A.isTreeTable(t)&&!A.isPartitionedTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new zl(e,t,i,a)})()}}const yn=Wl;function Pn(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=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)}class qt{}Pn(qt,"OPEN","ChartEvent.OPEN");Pn(qt,"CLOSE","ChartEvent.CLOSE");Pn(qt,"COLUMN_SELECTED","ChartEvent.COLUMN_SELECTED");const $t=qt;function ct(r,e,t){return e=Yl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Yl(r){var e=Xl(r,"string");return typeof e=="symbol"?e:String(e)}function Xl(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Xe{}ct(Xe,"OPEN_GRID","IrisGridEvent.OPEN_GRID");ct(Xe,"CLOSE_GRID","IrisGridEvent.CLOSE_GRID");ct(Xe,"DATA_SELECTED","IrisGridEvent.DATA_SELECTED");ct(Xe,"COLUMN_SELECTED","IrisGridEvent.COLUMN_SELECTED");ct(Xe,"STATE_CHANGED","IrisGridEvent.STATE_CHANGED");ct(Xe,"CREATE_CHART","IrisGridevent.CREATE_CHART");const ue=Xe;function vi(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)}class Tn{}vi(Tn,"OPEN","PandasEvent.OPEN");vi(Tn,"CLOSE","PandasEvent.CLOSE");const es=Tn;function Nt(r){var{widgetType:e,widgetName:t,glContainer:n,description:i,children:a}=r,l=O.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(la,{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]})}Nt.propTypes={glContainer:Wr.Container.isRequired,widgetType:I.string,widgetName:I.string,description:I.string,children:I.node};Nt.defaultProps={widgetType:"",widgetName:"",description:null,children:null};function fi(r,e,t){return e=ts(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ts(r){var e=ns(r,"string");return typeof e=="symbol"?e:String(e)}function ns(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class gi extends T.PureComponent{constructor(e){super(e),fi(this,"getCachedRenderTabTooltip",k((t,n,i,a,l)=>t?()=>u.jsx(Nt,{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 T,I as u,K as pe,T as Ze,U as he,bd as ia,$ as An,_ as k,be as Kr,V as I,L as ce,Q as Ye,M as oe,Z as Se,b1 as aa,b2 as la,af as Rt}from"./vendor-2ad5ff96.js";import{F as Ae,c as A,ch as H,P as Ne,ai as se,ci as rn,bI as O,A as sa,bO as Wr,aa as oa,al as qr,cj as Ft,ck as De,X as Zr,cl as vn,cm as Yr,H as Ce,ad as X,x as cn,cn as Ht,bW as Xr,a0 as fn,co as Bt,cp as zt,cq as Kt,cr as Dt,cs as Wt,S as yt,B as V,ct as gn,i as Qr,b as Jr,a6 as da,ab as ua,cu as ei,cv as ti,aW as ha,ae,bV as ca,cw as jn,an as pa,ap as ma,u as ht,b4 as va,o as ni,w as fa,c1 as He,bS as Mt,bK as Me,_ as ga,aC as ri,cc as Ca,ca as ba,T as Ct,J as Sa,s as wa,G as Ea,cx as ii,cy as ai,cz as li,cA as si,b8 as ya,bU as Pa,bY as Ta,af as oi,c0 as Fa,bT as Da,V as Ma,cB as Na,R as La,ak as Oa,E as Ra,W as Ia,U as _a,ac as ka,ag as xa,cC as Aa,a4 as ja,cD as Va,a5 as $a,au as Ua,cE as Ga,av as Ha}from"./ControlType-5e65a1f9.js";import{L as Z,e as M,ai as Ba,aj as za,E as Cn,ak as Ka,al as Wa,am as di,f as bn,an as ui,ao as Vn,t as $n,g as qa,z as Za,M as Ya,b as Xa,c as Qa,H as hi,ap as Ja,aq as el,d as tl,ar as nl,as as rl}from"./index-49c2275d.js";import{C as il,b as te,c as _,m as Un,d as $,G as pt,i as je,e as Be,B as Gn,S as ci,L as pi,R as al,a as Hn,I as Sn}from"./IrisGridModel-5eee50a2.js";import{I as B,f as an,g as Bn,M as zn,h as ll,e as ze,A as sl,j as ol,k as dl,l as ul}from"./MissingPartitionError-6c767865.js";import{F as pn}from"./FormatterUtils-84854bf0.js";import{_ as hl}from"./monaco-b5248072.js";function wn(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=T.useRef(null),s=T.useCallback(d=>{d.target===d.currentTarget&&document.body.classList.add("card-flip--is-flipping")},[]),o=T.useCallback(d=>{d.target===d.currentTarget&&document.body.classList.remove("card-flip--is-flipping")},[]);return T.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:pe(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 Kn(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 Wn(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Kn(Object(t),!0).forEach(function(n){q(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Kn(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function q(r,e,t){return e=cl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function cl(r){var e=pl(r,"string");return typeof e=="symbol"?e:String(e)}function pl(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Q=Z.module("FigureChartModel");class qt extends il{constructor(e,t){var n,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(e),n=this,q(this,"chartUtils",void 0),q(this,"dh",void 0),q(this,"figure",void 0),q(this,"settings",void 0),q(this,"data",void 0),q(this,"layout",void 0),q(this,"seriesDataMap",void 0),q(this,"pendingSeries",void 0),q(this,"oneClicks",void 0),q(this,"filterColumnMap",void 0),q(this,"lastFilter",void 0),q(this,"isConnected",void 0),q(this,"seriesToProcess",void 0),q(this,"addPendingSeries",Ze(()=>{for(var a=te.getAxisTypeMap(this.figure),{pendingSeries:l}=this,s=function(){var h,c=l[o],m=n.figure.charts.find(p=>p.series.includes(c));n.addSeries(c,a,(h=m?.showLegend)!==null&&h!==void 0?h:null),c.subscribe()},o=0;o<l.length;o+=1)s();this.pendingSeries=[]},qt.ADD_SERIES_DEBOUNCE)),q(this,"getTimeZone",he((a,l)=>{if(l!=null){var s=l.getColumnTypeFormatter(a);if(s!=null)return s.dhTimeZone}})),q(this,"getValueTranslator",he((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.unwrapValue(o,s)})),q(this,"getValueParser",he((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.wrapValue(o,a,s)})),q(this,"getRangeParser",he((a,l)=>s=>{var[o,d]=s,h=this.getValueParser(a,l);return o=h(o),d=h(d),[o,d]})),q(this,"getAxisRangeParser",he((a,l)=>s=>{var o=te.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 te(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=te.getAxisTypeMap(this.figure),i=[];this.seriesToProcess=new Set;for(var a=function(){for(var m=t[l],p=0;p<m.series.length;p+=1){var g=m.series[p];i.push(g.name),e.addSeries(g,n,m.showLegend)}var{axes:v,title:f}=m;if(f!=null&&f.length>0&&(t.length>1||e.figure.title!=null)){var C=v.find(D=>D.type===e.dh.plot.AxisType.X),w=v.find(D=>D.type===e.dh.plot.AxisType.Y);if(C==null||w==null)Q.warn("Chart title provided, but unknown how to map to the correct axes for this chart type",m);else{var b,S,E,F,N=((b=(S=n.get(C.type))===null||S===void 0?void 0:S.findIndex(D=>D===C))!==null&&b!==void 0?b:0)+1,y=((E=(F=n.get(w.type))===null||F===void 0?void 0:F.findIndex(D=>D===w))!==null&&E!==void 0?E:0)+1,P={align:"center",x:.5,y:1,yshift:17,text:f,showarrow:!1,xref:"x".concat(N," domain"),yref:"y".concat(y," domain")};e.layout.annotations==null?e.layout.annotations=[P]:e.layout.annotations.push(P)}}},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{dh:i}=this,a=this.chartUtils.makeSeriesDataFromSeries(e,t,te.getSeriesVisibility(e.name,this.settings),n);if(this.seriesDataMap.set(e.name,a),this.seriesToProcess.add(e.name),this.data=[...this.seriesDataMap.values()],e.plotStyle===i.plot.SeriesPlotStyle.STACKED_BAR?this.layout.barmode="stack":e.plotStyle===i.plot.SeriesPlotStyle.PIE&&(this.layout.hiddenlabels=te.getHiddenLabels(this.settings)),this.layout.showlegend=this.data.length>1||e.plotStyle===i.plot.SeriesPlotStyle.PIE?n??void 0:!1,e.oneClick!=null){for(var{oneClick:l}=e,{columns:s}=l,o=0;o<s.length;o+=1)this.filterColumnMap.set(s[o].name,s[o]);this.oneClicks.push(l)}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){Q.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&&(Q.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){Q.debug("Downsample started",e),this.fireDownsampleStart(e.detail)}handleDownsampleFinish(e){Q.debug("Downsample finished",e),this.fireDownsampleFinish(e.detail)}handleDownsampleFail(e){Q.error("Downsample failed",e),this.fireDownsampleFail(e.detail)}handleDownsampleNeeded(e){Q.info("Downsample needed",e),this.fireDownsampleNeeded(e.detail)}handleFigureUpdated(e){var{detail:t}=e,{series:n}=t;Q.debug2("handleFigureUpdated",n);for(var i=0;i<n.length;i+=1){var a=n[i];Q.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),m=t.getArray(a,h,c);this.setDataArrayForSeries(a,h,m)}this.seriesToProcess.delete(a.name),this.cleanSeries(a)}this.seriesToProcess.size===0&&this.fireLoadFinished();var{data:p}=this;this.fireUpdate(p)}handleRequestFailed(e){Q.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()}setDownsamplingDisabled(e){super.setDownsamplingDisabled(e),this.resubscribe()}handleFigureDisconnected(e){Q.debug("Figure disconnected",e),this.isConnected=!1,this.listeners.length>0&&this.unsubscribeFigure(),this.fireDisconnect()}handleFigureReconnected(e){Q.debug("Figure reconnected",e),this.isConnected=!0,this.initAllSeries(),this.fireReconnect(),this.listeners.length>0&&this.subscribeFigure()}handleFigureSeriesAdded(e){var{detail:t}=e;Q.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=te.DEFAULT_MARGIN.t+i*te.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=Wn({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=Wn({},this.layout.title.pad),this.layout.title.pad.t=te.DEFAULT_TITLE_PADDING.t+i*te.SUBTITLE_LINE_HEIGHT*.5)}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)=>{Q.debug("Assigning ".concat(n),this.layout[n],t);var i=this.layout[n];i!=null?Object.assign(i,t):Q.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&&ia(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:m,y:p,yLow:g,yHigh:v}=a;c&&m&&c!==h&&(a.error_x=te.getPlotlyErrorBars(h,c,m)),g&&v&&g!==p&&(a.error_y=te.getPlotlyErrorBars(p,g,v))}else if(i===t.plot.SeriesPlotStyle.TREEMAP){var{ids:f,labels:C}=a;f!==void 0&&C===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){Q.warn("Trying to set a filter, but no one click!");return}Q.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}}q(qt,"ADD_SERIES_DEBOUNCE",50);const qn=qt;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 ln(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 En{static makeModelFromSettings(e,t,n){return ln(function*(){var i=yield En.makeFigureFromSettings(e,t,n);return new qn(e,i,t)})()}static makeFigureFromSettings(e,t,n){return ln(function*(){var i=yield n.copy();return i.applyCustomColumns(n.customColumns),i.applyFilter(n.filter),i.applySort(n.sort),e.plot.Figure.create(new te(e).makeFigureSettings(t,i))})()}static makeModel(e,t,n){return ln(function*(){return new qn(e,n,t)})()}}const St=En;function Yn(r){return r.setFigure!==void 0}function sn(r,e,t){return e=ml(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ml(r){var e=vl(r,"string");return typeof e=="symbol"?e:String(e)}function vl(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 fl extends Error{constructor(e,t){super("".concat(t," can't be empty (on pending row ").concat(e+1,")")),sn(this,"isMissingKey",!0),sn(this,"rowIndex",void 0),sn(this,"columnName",void 0),this.rowIndex=e,this.columnName=t}}const gl=fl;function Xn(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 It(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Xn(Object(t),!0).forEach(function(n){x(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Xn(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}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 Ve(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 x(r,e,t){return e=Cl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Cl(r){var e=bl(r,"string");return typeof e=="symbol"?e:String(e)}function bl(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=Z.module("IrisGridTableModelTemplate"),Sl=150,wl=0;function qe(r){return r.table!==void 0}class Pt extends _{seekRow(e,t,n,i,a,l,s){throw new Error("Method not implemented.")}export(){throw new Error("Method not implemented.")}columnStatistics(e){throw new Error("Method not implemented.")}get customColumns(){return[]}set customColumns(e){throw new Error("Method not implemented.")}get formatColumns(){return[]}set formatColumns(e){throw new Error("Method not implemented.")}updateFrozenColumns(e){throw new Error("Method not implemented.")}get rollupConfig(){throw new Error("Method not implemented.")}set rollupConfig(e){throw new Error("Method not implemented.")}get selectDistinctColumns(){throw new Error("Method not implemented.")}set selectDistinctColumns(e){throw new Error("Method not implemented.")}get columns(){return this.table.columns}constructor(e,t){var n,i,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Ae(e),l=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),x(this,"dh",void 0),x(this,"irisGridUtils",void 0),x(this,"tableUtils",void 0),x(this,"irisFormatter",void 0),x(this,"inputTable",void 0),x(this,"subscription",void 0),x(this,"table",void 0),x(this,"viewport",void 0),x(this,"viewportData",void 0),x(this,"formattedStringData",void 0),x(this,"pendingStringData",void 0),x(this,"isSaveInProgress",void 0),x(this,"totalsTable",void 0),x(this,"totalsTablePromise",void 0),x(this,"totals",void 0),x(this,"totalsDataMap",void 0),x(this,"pendingNewDataMap",void 0),x(this,"pendingNewRowCount",0),x(this,"_columnHeaderGroupMap",new Map),x(this,"columnHeaderParentMap",new Map),x(this,"_columnHeaderMaxDepth",null),x(this,"_columnHeaderGroups",[]),x(this,"_movedColumns",null),x(this,"getMemoizedInitialMovedColumns",k(s=>{var o,d,h,c;if(!s)return[];var m=[],{groupMap:p}=B.parseColumnHeaderGroups(this,(o=s?.columnGroups)!==null&&o!==void 0?o:[]),g=(y,P)=>{var D=this.getColumnIndexByName(y);if(D==null)throw new Error("Unknown layout hint column: ".concat(y));var R=pt.getVisibleIndex(D,m);m=pt.moveItem(R,P,m)},v=(y,P)=>{var D=p.get(y);if(D==null)throw new Error("Unknown layout hint group: ".concat(y));var R=D.getVisibleRange(m);m=pt.moveRange(R,P,m)},f=(d=s.frontColumns)!==null&&d!==void 0?d:[],C=(h=s.backColumns)!==null&&h!==void 0?h:[],w=(c=s.frozenColumns)!==null&&c!==void 0?c:[];if(f.length>0||C.length>0||w.length>0){var b=new Set,S=0;w?.forEach(y=>{if(b.has(y))throw new Error("Column specified in multiple layout hints: ".concat(y));g(y,S),S+=1}),f.forEach(y=>{if(b.has(y))throw new Error("Column specified in multiple layout hints: ".concat(y));g(y,S),S+=1});var E=this.columnMap.size-1;C?.forEach(y=>{if(b.has(y))throw new Error("Column specified in multiple layout hints: ".concat(y));g(y,E),E-=1})}var F=s?.columnGroups;if(F){var N=[...p.values()];N.sort((y,P)=>y.depth-P.depth),N.forEach(y=>{var P=y.children[0],D=this.getColumnIndexByName(P),R;if(D!=null)R=pt.getVisibleIndex(D,m);else{var j=p.get(P);if(!j)throw new Error("Unknown column ".concat(P," in group ").concat(y.name));var G=j.getVisibleRange(m);[,R]=G}for(var U=1;U<y.children.length;U+=1){var re=y.children[U],de=p.get(re),we=this.getColumnIndexByName(re);if(de){var Le=de.getVisibleRange(m)[0]<R,me=Le?R-de.childIndexes.length+1:R+1;v(re,me),R=me+de.childIndexes.length-1}else if(we!=null){var Ee=pt.getVisibleIndex(we,m)<R,ye=Ee?R:R+1;g(re,ye),R=ye}}})}return this._movedColumns=m,m})),x(this,"getMemoizedInitialColumnHeaderGroups",k(s=>{var o;return B.parseColumnHeaderGroups(this,(o=s?.columnGroups)!==null&&o!==void 0?o:[]).groups})),x(this,"getMemoizedColumnMap",k(s=>{var o=new Map;return s.forEach(d=>o.set(d.name,d)),o})),x(this,"getColumnIndicesByNameMap",k(s=>{var o=new Map;return s.forEach((d,h)=>{var{name:c}=d;return o.set(c,h)}),o})),x(this,"setViewport",An((s,o,d)=>{if(o<s){z.error("Invalid viewport",s,o);return}var{viewport:h}=this;if(h!=null&&h.top===s&&h.bottom===o&&h.columns===d){z.debug2("Ignoring duplicate viewport",h);return}this.viewport={top:s,bottom:o,columns:d},z.debug2("setViewport",this.viewport),this.applyViewport()},Sl)),x(this,"applyViewport",An(()=>{if(this.viewport){z.debug2("applyViewport",this.viewport);var{top:s,bottom:o,columns:d}=this.viewport,[h,c]=this.getCachedViewportRowRange(s,o);this.applyBufferedViewport(h,c,d)}},wl,{leading:!1})),x(this,"getCachedFormattedString",Un((s,o,d,h,c)=>s.getFormattedString(o,d,h,c),{max:1e4})),x(this,"getCachedCustomColumnFormatFlag",Un(pn.isCustomColumnFormatDefined,{max:1e4})),x(this,"getCachedViewportRowRange",k((s,o)=>{var d=o-s,h=Math.max(0,s-d*Pt.ROW_BUFFER_PAGES),c=o+d*Pt.ROW_BUFFER_PAGES;return[h,c]})),x(this,"getCachedPendingErrors",k((s,o,d)=>{var h=new Map;return s.forEach((c,m)=>{for(var{data:p}=c,g=0;g<d;g+=1)if(!p.has(g)){var v;h.has(m)||h.set(m,[]),(v=h.get(m))===null||v===void 0||v.push(new gl(m,o[g].name))}}),h})),this.handleTableDisconnect=this.handleTableDisconnect.bind(this),this.handleTableReconnect=this.handleTableReconnect.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this),this.handleTotalsUpdate=this.handleTotalsUpdate.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handleCustomColumnsChanged=this.handleCustomColumnsChanged.bind(this),this.dh=e,this.irisFormatter=a,this.irisGridUtils=new B(e),this.inputTable=l,this.subscription=null,this.table=t,this.tableUtils=new A(e),this.viewport=null,this.viewportData=null,this.formattedStringData=[],this.pendingStringData=[],this.isSaveInProgress=!1,this.totalsTable=null,this.totalsTablePromise=null,this.totals=null,this.totalsDataMap=null,this.pendingNewDataMap=new Map,this.pendingNewRowCount=0,this.columnHeaderGroups=B.parseColumnHeaderGroups(this,(n=(i=this.layoutHints)===null||i===void 0?void 0:i.columnGroups)!==null&&n!==void 0?n:[]).groups}close(){this.table.close(),this.totalsTable!==null&&this.totalsTable.close(),this.totalsTablePromise!==null&&this.totalsTablePromise.cancel()}startListening(){super.startListening();var{dh:e}=this;this.table.addEventListener(e.Table.EVENT_DISCONNECT,this.handleTableDisconnect),this.table.addEventListener(e.Table.EVENT_RECONNECT,this.handleTableReconnect),this.table.addEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),this.table.addEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed),this.table.addEventListener(e.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleCustomColumnsChanged),this.totalsTable!=null&&this.addTotalsListeners(this.totalsTable),this.applyViewport()}stopListening(){super.stopListening();var{dh:e}=this;this.table.removeEventListener(e.Table.EVENT_DISCONNECT,this.handleTableDisconnect),this.table.removeEventListener(e.Table.EVENT_RECONNECT,this.handleTableReconnect),this.table.removeEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),this.table.removeEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed),this.table.removeEventListener(e.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleCustomColumnsChanged),this.totalsTable!=null&&this.removeTotalsListeners(this.totalsTable),this.closeSubscription()}addTotalsListeners(e){var{dh:t}=this;e.addEventListener(t.Table.EVENT_UPDATED,this.handleTotalsUpdate),e.setViewport(0,0)}removeTotalsListeners(e){var{dh:t}=this;e.removeEventListener(t.Table.EVENT_UPDATED,this.handleTotalsUpdate)}handleTableDisconnect(){this.dispatchEvent(new H(_.EVENT.DISCONNECT))}handleTableReconnect(){this.dispatchEvent(new H(_.EVENT.RECONNECT))}handleTableUpdate(e){this.copyViewportData(e.detail),this.dispatchEvent(new H(_.EVENT.UPDATED))}handleTotalsUpdate(e){this.copyTotalsData(e.detail),this.dispatchEvent(new H(_.EVENT.UPDATED))}handleRequestFailed(e){this.dispatchEvent(new H(_.EVENT.REQUEST_FAILED,e))}handleCustomColumnsChanged(){this.dispatchEvent(new H(_.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get rowCount(){var e,t,n;return Math.max(this.table.size,0)+this.pendingNewRowCount+((e=(t=this.totals)===null||t===void 0||(n=t.operationOrder)===null||n===void 0?void 0:n.length)!==null&&e!==void 0?e:0)}get pendingDataErrors(){var e,t;return this.getCachedPendingErrors(this.pendingNewDataMap,this.columns,(e=(t=this.inputTable)===null||t===void 0?void 0:t.keyColumns.length)!==null&&e!==void 0?e:0)}get pendingDataMap(){return this.pendingNewDataMap}set pendingDataMap(e){e!==this.pendingNewDataMap&&(e.forEach((t,n)=>{if(!B.isValidIndex(n))throw new Error("Invalid rowIndex ".concat(n));var{data:i}=t;i.forEach((a,l)=>{if(!B.isValidIndex(l))throw new Error("Invalid columnIndex ".concat(l))})}),this.pendingNewDataMap=e,this.pendingNewRowCount=Math.max(this.pendingNewRowCount,this.maxPendingDataRow),this.formattedStringData=[],this.dispatchEvent(new H(_.EVENT.PENDING_DATA_UPDATED)))}get pendingRowCount(){return this.pendingNewRowCount}set pendingRowCount(e){e!==this.pendingNewRowCount&&(this.pendingNewRowCount=Math.max(0,e,this.maxPendingDataRow),this.dispatchEvent(new H(_.EVENT.UPDATED)))}get maxPendingDataRow(){return this.pendingNewDataMap.size>0?Math.max(...this.pendingNewDataMap.keys())+1:0}get columnCount(){return this.columns.length}get floatingBottomRowCount(){var e,t,n;return this.totals!=null&&this.totals.showOnTop?0:(e=(t=this.totals)===null||t===void 0||(n=t.operationOrder)===null||n===void 0?void 0:n.length)!==null&&e!==void 0?e:0}get floatingTopRowCount(){var e,t,n;return this.totals!=null&&this.totals.showOnTop&&(e=(t=this.totals)===null||t===void 0||(n=t.operationOrder)===null||n===void 0?void 0:n.length)!==null&&e!==void 0?e:0}get isChartBuilderAvailable(){return!0}get isTotalsAvailable(){return this.table.getTotalsTable!=null}get isEditable(){return!this.isSaveInProgress&&this.inputTable!=null}get isViewportPending(){if(this.viewport==null||this.viewport.columns===void 0||this.viewportData==null)return!0;if(this.viewport.columns.length===0||this.viewportData.rows.length===0)return!1;var e=this.viewport.top<this.viewportData.offset,t=this.viewportData.offset+this.viewportData.rows.length<this.viewport.bottom,n=this.viewportData.rows[0].data.get(this.viewport.columns[0].index)===void 0,i=this.viewportData.rows[0].data.get(this.viewport.columns[this.viewport.columns.length-1].index)===void 0;return e||t||n||i}cacheFormattedValue(e,t,n){this.formattedStringData[e]==null&&(this.formattedStringData[e]=[]),this.formattedStringData[e][t]=n}cachePendingValue(e,t,n){this.pendingStringData[e]==null&&(this.pendingStringData[e]=[]),this.pendingStringData[e][t]=n}clearPendingValue(e,t){var n=this.pendingStringData[e];n!=null&&delete n[t]}textValueForCell(e,t){var n,i;if(((n=this.pendingStringData[e])===null||n===void 0?void 0:n[t])!==void 0)return this.pendingStringData[e][t];if(((i=this.formattedStringData[e])===null||i===void 0?void 0:i[t])===void 0){var a=this.valueForCell(e,t);if(a===null)return null;if(a===void 0)return;var l=this.sourceColumn(e,t),s=this.getCachedCustomColumnFormatFlag(this.formatter,l.name,l.type),o;if(!s){var d=this.formatForCell(e,t);d?.formatString!=null&&(o=d)}var h=this.displayString(a,l.type,l.name,o);this.cacheFormattedValue(e,t,h)}return this.formattedStringData[e][t]}textForCell(e,t){var n,i=this.textValueForCell(e,t);if(i==null&&this.isKeyColumn(e)){var a=this.pendingRow(t);if(a!=null&&this.pendingDataMap.has(a))return"*"}if(A.isTextType((n=this.columns[e])===null||n===void 0?void 0:n.type)){if(i===null)return this.formatter.showNullStrings?"null":"";if(i==="")return this.formatter.showEmptyStrings?"empty":""}return i??""}truncationCharForCell(e){var t=this.columns[e],{type:n}=t;if(A.isNumberType(n)&&this.formatter.truncateNumbersWithPound)return"#"}colorForCell(e,t,n){var i=this.dataForCell(e,t);if(i){var{format:a,value:l}=i;if(l==null||l==="")return M(n.nullStringColor),n.nullStringColor;if(a?.color!=null&&a.color!=="")return a.color;if(this.isPendingRow(t))return M(n.pendingTextColor),n.pendingTextColor;if(l!=null){var s=this.sourceColumn(e,t);if(A.isDateType(s.type)||s.name==="Date")return M(n.dateColor),n.dateColor;if(A.isNumberType(s.type))return l>0?(M(n.positiveNumberColor),n.positiveNumberColor):l<0?(M(n.negativeNumberColor),n.negativeNumberColor):(M(n.zeroNumberColor),n.zeroNumberColor)}}else if(this.isPendingRow(t)&&this.isKeyColumn(e))return M(n.errorTextColor),n.errorTextColor;return n.textColor}backgroundColorForCell(e,t,n){var i,a;return(i=(a=this.formatForCell(e,t))===null||a===void 0?void 0:a.backgroundColor)!==null&&i!==void 0?i:null}textAlignForCell(e){var t=this.columns[e],{type:n}=t;return A.isNumberType(n)?"right":A.isDateType(n)||t.name==="Date"?"center":"left"}textForColumnHeader(e){var t,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,i=this.columnAtDepth(e,n);return an(i)?i.isNew?"":i.name:(t=i?.displayName)!==null&&t!==void 0?t:i?.name}colorForColumnHeader(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=this.columnAtDepth(e,t);if(an(n)){var i;return(i=n.color)!==null&&i!==void 0?i:null}return null}getColumnHeaderGroup(e,t){var n=this.columnAtDepth(e,t);if(an(n))return n}getColumnHeaderParentGroup(e,t){var n,i;return this.columnHeaderParentMap.get((n=(i=this.columnAtDepth(e,t))===null||i===void 0?void 0:i.name)!==null&&n!==void 0?n:"")}columnAtDepth(e){var t,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(n===0)return this.columns[e];var i=(t=this.columns[e])===null||t===void 0?void 0:t.name,a=this.columnHeaderParentMap.get(i);if(a){for(var l=a.depth;l<n;){if(a=this.columnHeaderParentMap.get(a.name),!a)return;l=a.depth}if(a.depth===n)return a}}textForRowFooter(e){var t=this.totalsRow(e);return t!=null&&this.totals?this.totals.operationOrder[t]:""}get initialMovedColumns(){var e;return this.getMemoizedInitialMovedColumns((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get initialColumnHeaderGroups(){var e;return this.getMemoizedInitialColumnHeaderGroups((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get columnMap(){return this.getMemoizedColumnMap(this.table.columns)}get columnHeaderMaxDepth(){var e;return(e=this._columnHeaderMaxDepth)!==null&&e!==void 0?e:1}set columnHeaderMaxDepth(e){this._columnHeaderMaxDepth=e}get columnHeaderGroupMap(){return this._columnHeaderGroupMap}get columnHeaderGroups(){return this._columnHeaderGroups}set columnHeaderGroups(e){if(e!==this._columnHeaderGroups){var{groups:t,maxDepth:n,parentMap:i,groupMap:a}=B.parseColumnHeaderGroups(this,e??this.initialColumnHeaderGroups);this._columnHeaderGroups=t,this.columnHeaderMaxDepth=n,this.columnHeaderParentMap=i,this._columnHeaderGroupMap=a}}row(e){var t,n,i,a,l,s,o,d,h,c,m=(t=(n=this.totals)===null||n===void 0||(i=n.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,p=(a=(l=this.totals)===null||l===void 0?void 0:l.showOnTop)!==null&&a!==void 0?a:!1,g=this.totalsRow(e);if(g!=null){var v,f,C,w=(v=this.totals)===null||v===void 0?void 0:v.operationOrder[g];return M(w),(f=(C=this.totalsDataMap)===null||C===void 0?void 0:C.get(w))!==null&&f!==void 0?f:null}var b=this.pendingRow(e);if(b!=null){var S;return(S=this.pendingNewDataMap.get(b))!==null&&S!==void 0?S:null}var E=(s=(o=this.viewportData)===null||o===void 0?void 0:o.offset)!==null&&s!==void 0?s:0,F=(p?e-m:e)-E;return(d=(h=this.viewportData)===null||h===void 0||(c=h.rows)===null||c===void 0?void 0:c[F])!==null&&d!==void 0?d:null}sourceColumn(e,t){var n=this.totalsRow(t);if(n!=null){var i,a,l,s,o=(i=this.totals)===null||i===void 0?void 0:i.operationOrder[n],d=(a=(l=this.totals)===null||l===void 0?void 0:l.defaultOperation)!==null&&a!==void 0?a:Bn.SUM,h=this.columns[e],c=(s=this.totalsTable)===null||s===void 0?void 0:s.columns.find(m=>{var p;return m.name==="".concat(h.name,"__").concat(o)||(o===d||((p=this.totals)===null||p===void 0?void 0:p.operationOrder.length)===1)&&m.name===h.name});if(c!=null)return c}return this.columns[e]}totalsRow(e){var t,n,i,a,l,s=(t=(n=this.totals)===null||n===void 0||(i=n.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,o=(a=(l=this.totals)===null||l===void 0?void 0:l.showOnTop)!==null&&a!==void 0?a:!1,d=o?e:e-this.table.size;return d>=0&&d<s?d:null}pendingRow(e){var t=e-this.floatingTopRowCount-this.table.size;return t>=0&&t<this.pendingNewRowCount?t:null}isTotalsRow(e){return this.totalsRow(e)!=null}isPendingRow(e){return this.pendingRow(e)!=null}dataForCell(e,t){var n;return(n=this.row(t))===null||n===void 0?void 0:n.data.get(e)}formatForCell(e,t){var n;return(n=this.dataForCell(e,t))===null||n===void 0?void 0:n.format}valueForCell(e,t){var n=this.dataForCell(e,t);if(n){var i;return(i=n.value)!==null&&i!==void 0?i:null}}copyViewportData(e){if(e==null){z.warn("invalid data!");return}this.viewportData=this.extractViewportData(e),this.formattedStringData=[]}copyTotalsData(e){var t,n,i,a=this;if(e==null){z.warn("invalid data!");return}var{columns:l,rows:s}=e;if(s.length!==1){z.error("Unexpected number of rows received for totals table, ignoring update");return}for(var o=new Map,d=s[0],h=(t=(n=this.totals)===null||n===void 0?void 0:n.defaultOperation)!==null&&t!==void 0?t:Bn.SUM,c=(i=this.totals)===null||i===void 0?void 0:i.operationMap,m=function(){var v,f,C=l[p],[w,b=(v=c==null||(f=c[w])===null||f===void 0?void 0:f[0])!==null&&v!==void 0?v:h]=C.name.split("__");o.has(b)||o.set(b,{data:new Map});var{data:S}=o.get(b),E=a.columns.findIndex(F=>F.name===w);S.set(E,{value:d.get(C),format:d.getFormat(C)})},p=0;p<l.length;p+=1)m();z.debug2("copyTotalsData",o),this.totalsDataMap=o,this.formattedStringData=[]}getColumnIndexByName(e){return this.getColumnIndicesByNameMap(this.columns).get(e)}extractViewportData(e){for(var t={offset:e.offset,rows:[]},{columns:n}=e,i=0;i<e.rows.length;i+=1){var a=e.rows[i],l=this.extractViewportRow(a,n);t.rows.push(l)}return t}extractViewportRow(e,t){for(var n=new Map,i=0;i<t.length;i+=1){var a=t[i],l=this.getColumnIndexByName(a.name);M(l),n.set(l,{value:e.get(a),format:e.getFormat(a)})}return{data:n}}closeSubscription(){z.debug2("closeSubscription",this.subscription),this.subscription&&(this.subscription.close(),this.subscription=null),this.setViewport.cancel(),this.applyViewport.cancel()}get filter(){return this.table.filter}set filter(e){this.closeSubscription(),this.table.applyFilter(e),this.applyViewport()}get formatter(){return this.irisFormatter}set formatter(e){this.irisFormatter=e,this.formattedStringData=[],this.dispatchEvent(new H(_.EVENT.FORMATTER_UPDATED))}displayString(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",i=arguments.length>3?arguments[3]:void 0;return this.getCachedFormattedString(this.formatter,e,t,n,i)}get sort(){return this.table.sort}set sort(e){this.closeSubscription(),this.table.applySort(e),this.applyViewport()}set totalsConfig(e){if(z.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 H(_.EVENT.UPDATED));return}this.totalsTablePromise=Ne.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{Ne.isCanceled(t)||(z.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new H(_.EVENT.REQUEST_FAILED,{detail:t})))})}}setTotalsTable(e){z.debug("setTotalsTable",e),this.totalsTable!==null&&(this.listenerCount>0&&this.removeTotalsListeners(this.totalsTable),this.totalsTable.close()),this.totalsTable=e,this.totalsDataMap=null,this.listenerCount>0&&this.totalsTable!=null&&this.addTotalsListeners(this.totalsTable)}applyBufferedViewport(e,t,n){if(this.dispatchEvent(new H(_.EVENT.VIEWPORT_UPDATED)),z.debug2("applyBufferedViewport",e,t,n),this.subscription==null){var i;z.debug2("applyBufferedViewport creating new subscription"),this.subscription=(i=this.table.setViewport(e,t,n))!==null&&i!==void 0?i:null}else z.debug2("applyBufferedViewport using existing subscription"),this.subscription.setViewport(e,t,n)}snapshot(e){var t=arguments,n=this;return Ve(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:P=>P,l=t.length>3&&t[3]!==void 0?t[3]:!0;if(n.subscription==null)throw new Error("No subscription available");var s=l?$.consolidate(e):e;if(!B.isValidSnapshotRanges(s))throw new Error("Invalid snapshot ranges ".concat(e));for(var o=new Set,d=[],h=new Set,c=0;c<s.length;c+=1){var m=s[c];M(m.endRow),M(m.startRow);for(var p=m.startRow;p<=m.endRow&&p<n.floatingTopRowCount;p+=1)o.add(p);m.endRow>=n.floatingTopRowCount&&m.startRow<=n.floatingTopRowCount+n.table.size&&d.push(new $(m.startColumn,Math.min(Math.max(0,m.startRow-n.floatingTopRowCount)),m.endColumn,Math.min(Math.max(0,m.endRow-n.floatingTopRowCount),n.table.size-n.floatingTopRowCount)));for(var g=Math.max(m.startRow,n.floatingTopRowCount+n.table.size);g<=m.endRow&&g<n.floatingTopRowCount+n.table.size+n.floatingBottomRowCount;g+=1)h.add(g)}var v=B.columnsFromRanges(s,n.columns),f=[];i&&f.push(v.map(P=>P.name));for(var C=[...o].sort(),w=function*(){var D=C[b],R=v.map(j=>{var G=n.getColumnIndexByName(j.name);return M(G),a(n.valueForCell(G,D),j)});i&&R.push(n.textForRowFooter(D)),f.push(R)},b=0;b<C.length;b+=1)yield*w();if(d.length>0){var S=n.irisGridUtils.rangeSetFromRanges(d),E=yield n.subscription.snapshot(S,v);f.push(...E.rows.map(P=>v.map(D=>a(P.get(D),D))))}for(var F=[...h].sort(),N=function*(){var D=F[y],R=v.map(j=>{var G=n.getColumnIndexByName(j.name);return M(G),a(n.valueForCell(G,D),j)});i&&R.push(n.textForRowFooter(D)),f.push(R)},y=0;y<F.length;y+=1)yield*N();return f})()}textSnapshot(e){var t=arguments,n=this;return Ve(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:s=>"".concat(s);z.debug2("textSnapshot",e,i);var l=yield n.snapshot(e,i,a,!1);return l.map(s=>s.join(" ")).join(`
2
+ `)})()}valuesTable(e){var t=this;return Ve(function*(){var n=null;try{return n=yield t.table.copy(),n.applyFilter([]),n.applySort([]),n.selectDistinct(Array.isArray(e)?e:[e])}finally{n?.close()}})()}isColumnMovable(e,t){if(e<0||e>=this.columnCount)return!1;if(t>0)return!0;var n=this.columns[e].name;return this.frontColumns.includes(n)||this.backColumns.includes(n)||this.frozenColumns.includes(n)||!n?!1:!this.isKeyColumn(e)}isColumnSortable(e){var t;return(t=this.columns[e].isSortable)!==null&&t!==void 0?t:!0}isKeyColumn(e){var t,n;return e<((t=(n=this.inputTable)===null||n===void 0?void 0:n.keyColumns.length)!==null&&t!==void 0?t:0)}isRowMovable(){return!1}isEditableRange(e){if(this.inputTable==null||!$.isBounded(e))return!1;var t=this.isPendingRow(e.startRow)&&this.isPendingRow(e.endRow);return!(!(t||this.inputTable.keyColumns.length!==0&&e.startColumn>=this.inputTable.keyColumns.length&&e.endColumn>=this.inputTable.keyColumns.length)||e.startRow<this.floatingTopRowCount||e.startRow>=this.floatingTopRowCount+this.table.size+this.pendingRowCount||e.endRow>=this.floatingTopRowCount+this.table.size+this.pendingRowCount)}isDeletableRange(e){return this.inputTable!=null&&e.startRow!=null&&e.endRow!=null&&e.startRow>=this.floatingTopRowCount&&e.startRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount&&e.endRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount}isEditableRanges(e){return e.every(t=>this.isEditableRange(t))}isDeletableRanges(e){return e.every(t=>this.isDeletableRange(t))}getTableAreaRange(){return new $(null,this.floatingTopRowCount,null,this.floatingTopRowCount+this.table.size-1)}getPendingAreaRange(){return new $(null,this.floatingTopRowCount+this.table.size,null,this.floatingTopRowCount+this.table.size+this.pendingNewRowCount-1)}setValueForCell(e,t,n){var i=this;return Ve(function*(){return i.setValueForRanges([new $(e,t,e,t)],n)})()}setValueForRanges(e,t){var n=this;return Ve(function*(){if(!n.isEditableRanges(e))throw new Error("Uneditable ranges ".concat(e));try{var i=new Set,a=[];$.forEachCell(e,(v,f)=>{var C=n.columns[v];if(i.add(C),a[v]===void 0){var w=n.tableUtils.makeValue(C.type,t,n.formatter.timeZone);a[v]=w!=null?n.displayString(w,C.type,C.name):null}n.cachePendingValue(v,f,a[v])});var l=n.getPendingAreaRange(),s=e.map(v=>$.intersection(l,v)).filter(v=>v!=null).map(v=>(M(v),$.offset(v,0,-(n.floatingTopRowCount+n.table.size))));if(s.length>0){var o=new Map(n.pendingNewDataMap);$.forEachCell(s,(v,f)=>{o.has(f)||o.set(f,{data:new Map});var C=n.columns[v],w=o.get(f);M(w);var{data:b}=w,S=new Map(b),E=n.tableUtils.makeValue(C.type,t,n.formatter.timeZone);E!=null?S.set(v,{value:E}):S.delete(v),S.size>0?o.set(f,It(It({},w),{},{data:S})):o.delete(f)}),n.pendingDataMap=o}n.dispatchEvent(new H(_.EVENT.UPDATED));var d=n.getTableAreaRange(),h=e.map(v=>$.intersection(d,v)).filter(v=>v!=null);if(h.length>0){var c,m=yield n.snapshot(h.map(v=>{var f,C;return new $(null,(f=v?.startRow)!==null&&f!==void 0?f:null,null,(C=v?.endRow)!==null&&C!==void 0?C:null)})),p=m.map(v=>{for(var f={},C=0;C<n.columns.length;C+=1)f[n.columns[C].name]=v[C];return i.forEach(w=>{f[w.name]=n.tableUtils.makeValue(w.type,t,n.formatter.timeZone)}),f}),g=yield(c=n.inputTable)===null||c===void 0?void 0:c.addRows(p);z.debug("setValueForRanges(",e,",",t,") set tableRanges",h,"result",g)}$.forEachCell(e,(v,f)=>{var C=a[v];M(C),n.cacheFormattedValue(v,f,C)})}catch(v){z.error("Unable to set ranges",e,t,v)}finally{$.forEachCell(e,(v,f)=>{n.clearPendingValue(v,f)})}})()}setValues(){var e=arguments,t=this;return Ve(function*(){var n=e.length>0&&e[0]!==void 0?e[0]:[];if(z.debug("setValues(",n,")"),!n.every(p=>{var g,v;return t.isEditableRange($.makeCell((g=p.column)!==null&&g!==void 0?g:p.x,(v=p.row)!==null&&v!==void 0?v:p.y))}))throw new Error("Uneditable ranges ".concat(n));try{var i=new Map(t.pendingNewDataMap);n.forEach(p=>{var g,v,{text:f}=p,C=(g=p.column)!==null&&g!==void 0?g:p.x,w=(v=p.row)!==null&&v!==void 0?v:p.y,b=t.columns[C],S=t.tableUtils.makeValue(b.type,f,t.formatter.timeZone),E=S!=null?t.displayString(S,b.type,b.name):null;t.cachePendingValue(C,w,E);var F=t.pendingRow(w);if(F!=null){i.has(F)||i.set(F,{data:new Map});var N=i.get(F);M(N);var{data:y}=N,P=new Map(y);S!=null?P.set(C,{value:S}):P.delete(C),P.size>0?i.set(F,It(It({},N),{},{data:P})):i.delete(F)}}),t.pendingDataMap=i,t.dispatchEvent(new H(_.EVENT.UPDATED));var a=n.reduce((p,g)=>{var v,f,C=(v=g.row)!==null&&v!==void 0?v:g.y;return p.has(C)||p.set(C,[]),(f=p.get(C))===null||f===void 0||f.push(g),p},new Map),l=$.consolidate(n.map(p=>{var g,v;return $.makeCell((g=p.column)!==null&&g!==void 0?g:p.x,(v=p.row)!==null&&v!==void 0?v:p.y)})),s=t.getTableAreaRange(),o=l.map(p=>$.intersection(s,p)).filter(p=>p!=null);if(o.length>0){var d,h=yield t.snapshot(o.map(p=>(M(p),new $(null,p.startRow,null,p.endRow)))),c=h.map((p,g)=>{for(var v=null,f=g,C=0;C<o.length;C+=1){var w=o[C];M(w);var b=$.rowCount([w]);if(f<b){M(w.startRow),v=w.startRow+f;break}f-=b}for(var S={},E=0;E<t.columns.length;E+=1)S[t.columns[E].name]=p[E];M(v);var F=a.get(v);return F?.forEach(N=>{var y,P=t.columns[(y=N.column)!==null&&y!==void 0?y:N.x];S[P.name]=t.tableUtils.makeValue(P.type,N.text,t.formatter.timeZone)}),S});z.info("setValues setting tableRanges",o);var m=yield(d=t.inputTable)===null||d===void 0?void 0:d.addRows(c);z.info("setValues set tableRanges",o,"SUCCESS",m)}n.forEach(p=>{var g,v,{text:f}=p,C=(g=p.column)!==null&&g!==void 0?g:p.x,w=(v=p.row)!==null&&v!==void 0?v:p.y,b=t.columns[C],S=t.tableUtils.makeValue(b.type,f,t.formatter.timeZone),E=S!=null?t.displayString(S,b.type,b.name):null;t.cacheFormattedValue(C,w,E)})}finally{n.forEach(p=>{t.clearPendingValue(p.column,p.row)})}})()}commitPending(){var e=this;return Ve(function*(){if(e.pendingNewDataMap.size<=0)throw new Error("No pending changes to commit");try{var t,n,i;e.isSaveInProgress=!0;var a=[];e.pendingNewDataMap.forEach(s=>{var o={};s.data.forEach((d,h)=>{var{value:c}=d,m=e.columns[h];o[m.name]=c}),a.push(o)});var l=yield(t=e.inputTable)===null||t===void 0?void 0:t.addRows(a);z.debug("commitPending()",e.pendingNewDataMap,"result",l),e.pendingNewDataMap=new Map,e.pendingNewRowCount=Math.max(0,((n=(i=e.viewport)===null||i===void 0?void 0:i.bottom)!==null&&n!==void 0?n:0)-e.table.size),e.formattedStringData=[],e.dispatchEvent(new H(_.EVENT.PENDING_DATA_UPDATED))}finally{e.isSaveInProgress=!1}})()}editValueForCell(e,t){return this.textValueForCell(e,t)}delete(e){return Ve(function*(){throw new Error("Delete not implemented")})()}isValidForCell(e,t,n){try{var i=this.columns[e];return this.tableUtils.makeValue(i.type,n,this.formatter.timeZone),!0}catch{return!1}}}x(Pt,"ROW_BUFFER_PAGES",1);const mi=Pt;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 Je(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 Ie(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=yl(r,"string");return typeof e=="symbol"?e:String(e)}function yl(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 _e=Z.module("IrisGridTableModel");class Pl extends mi{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Ae(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,n,i),Ie(this,"userFrozenColumns",void 0),Ie(this,"customColumnList",void 0),Ie(this,"formatColumnList",void 0),Ie(this,"initialFilters",[]),Ie(this,"getMemoizedFrontColumns",k(a=>a??[])),Ie(this,"getMemoizedBackColumns",k(a=>a??[])),Ie(this,"getMemoizedFrozenColumns",k((a,l)=>{var s;return(s=l??a)!==null&&s!==void 0?s:[]})),Ie(this,"getCachedFilterableColumnSet",k(a=>new Set(a.map((l,s)=>s)))),Ie(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 isValuesTableAvailable(){return this.table.selectDistinct!=null&&this.table.copy!=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 frontColumns(){var e,t;return this.getMemoizedFrontColumns((e=(t=this.layoutHints)===null||t===void 0?void 0:t.frontColumns)!==null&&e!==void 0?e:[])}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(_e.debug2("set customColumns",e,this.customColumnList,e===this.customColumnList),this.customColumnList.length===0&&e.length===0){_e.debug("Ignore empty initial customColumns"),this.customColumnList=e;return}if(this.customColumnList===e){_e.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(_e.debug2("set formatColumns",e,this.formatColumnList,e===this.formatColumnList),this.formatColumnList.length===0&&e.length===0){_e.debug("Ignore empty initial formatColumns"),this.formatColumnList=e;return}if(this.formatColumnList===e){_e.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 H(_.EVENT.TABLE_CHANGED,{detail:this.table}))}get partitionColumns(){return this.getCachedPartitionColumns(this.columns)}partitionKeysTable(){var e=this;return Je(function*(){return e.valuesTable(e.partitionColumns)})()}partitionMergedTable(){var e=this;return Je(function*(){var t=yield e.table.copy();return t.applyFilter([]),t})()}partitionTable(e){var t=this;return Je(function*(){_e.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(_e.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 H(_.EVENT.UPDATED));return}this.totalsTablePromise=Ne.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{Ne.isCanceled(t)||(_e.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new H(_.EVENT.REQUEST_FAILED,{detail:t})))})}}get isFilterRequired(){return this.table.isUncoalesced}get isPartitionRequired(){return this.table.isUncoalesced&&this.isValuesTableAvailable&&this.partitionColumns.length>0}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns).has(e)}export(){var e=this;return Je(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 Je(function*(){var a;if(!i.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));M(i.inputTable);var{keyColumns:l}=i.inputTable;if(l.length===0)throw new Error("No key columns to allow deletion");var s=i.getPendingAreaRange(),o=e.map(b=>$.intersection(s,b)).filter(b=>b!=null).map(b=>(M(b),$.offset(b,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];M(c.startRow),M(c.endRow);for(var m=c.startRow;m<=c.endRow;m+=1)d.delete(m)}n(d),i.formattedStringData=[],i.dispatchEvent(new H(_.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new H(_.EVENT.UPDATED))}var p=i.getTableAreaRange(),g=e.map(b=>$.intersection(p,b)).filter(b=>b!=null);if(!(g.length<=0)){var[v,f]=yield Promise.all([i.snapshot(g.map(b=>(M(b),l.map(S=>{var E=i.getColumnIndexByName(S.name);if(E==null)throw new Error("Key column ".concat(S.name," not found"));return new $(E,b.startRow,E,b.endRow)}))).flat()),i.table.copy()]),C=v.map(b=>{for(var S=[],E=0;E<l.length;E+=1){var F=l[E],N=b[E],y=i.tableUtils.makeFilterRawValue(F.type,N),P=F.filter().eq(y);S.push(P)}return S.reduce((D,R)=>{var j;return(j=D?.and(R))!==null&&j!==void 0?j:R})}),w=C.reduce((b,S)=>{var E;return(E=b?.or(S))!==null&&E!==void 0?E:S});f.applyFilter([w]),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 Je(function*(){return o.table.seekRow(e,t,n,i,a,l,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}const Tl=Pl;function Fl(r,e,t){return e=Dl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Dl(r){var e=Ml(r,"string");return typeof e=="symbol"?e:String(e)}function Ml(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 _{constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new Ae(e);super(e),Fl(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 se}getColumnIndexByName(e){}get initialMovedColumns(){return se}get initialMovedRows(){return se}get initialColumnHeaderGroups(){return se}get groupedColumns(){return se}formatForCell(e,t){}valueForCell(e,t){}get filter(){return se}set filter(e){}get partition(){return se}set partition(e){}get partitionColumns(){return se}get formatter(){return this.modelFormatter}set formatter(e){this.modelFormatter=e}displayString(e,t,n){return""}get sort(){return se}set sort(e){}get customColumns(){return se}set customColumns(e){}get formatColumns(){return se}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 se}set selectDistinctColumns(e){}get pendingDataMap(){return rn}set pendingDataMap(e){}get pendingRowCount(){return 0}set pendingRowCount(e){}get pendingDataErrors(){return rn}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 se}set columnHeaderGroups(e){}get columnHeaderGroupMap(){return rn}getColumnHeaderParentGroup(e,t){}}const Ll=Nl;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 on(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 Ol(r,e,t){return e=Rl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Rl(r){var e=Il(r,"string");return typeof e=="symbol"?e:String(e)}function Il(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 Ll{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Ae(e);super(e,n),Ol(this,"partitionedTable",void 0),this.partitionedTable=t}get isPartitionRequired(){return!0}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}partitionKeysTable(){var e=this;return on(function*(){return e.partitionedTable.getKeyTable()})()}partitionMergedTable(){var e=this;return on(function*(){return e.partitionedTable.getMergedTable()})()}partitionTable(e){var t=this;return on(function*(){try{var n=yield t.partitionedTable.getTable(e);if(n==null)throw new zn("Partition not found");return n}catch(i){throw ll(i)?i:new zn("Unable to retrieve partition")}})()}}const kl=_l;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 xl(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 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 rr(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){tt(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 tt(r,e,t){return e=Al(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Al(r){var e=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)}var Vl=Z.module("IrisGridTreeTableModel");class $l extends mi{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Ae(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,n,i),tt(this,"virtualColumns",void 0),tt(this,"getCachedColumns",k((a,l)=>[...a,...l])),tt(this,"getCachedGroupColumns",k((a,l)=>[...a,...l])),tt(this,"getCachedFilterableColumnSet",k((a,l,s)=>new Set((l?.length>0?l:a).filter(o=>!s.includes(o)).map(o=>a.findIndex(d=>o.name===d.name))))),tt(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:A.dataType.STRING,constituentType:A.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 virtual column")},formatColor:()=>{throw new Error("Color not implemented for virtual column")},get:()=>{throw new Error("get not implemented for virtual column")},getFormat:()=>{throw new Error("getFormat not implemented for virtual column")},formatNumber:()=>{throw new Error("formatNumber not implemented for virtual column")},formatDate:()=>{throw new Error("formatDate not implemented for virtual column")}}]:[]}applyBufferedViewport(e,t,n){var i=[...this.table.groupedColumns,...n.filter(a=>!this.virtualColumns.includes(a)&&!this.groupedColumns.includes(a))];this.table.setViewport(e,t,i)}textForCell(e,t){var n=this.sourceColumn(e,t),i=this.row(t);if(i!=null&&n!=null){if(!i.hasChildren&&n.constituentType!=null){var a=this.valueForCell(e,t);return this.displayString(a,n.constituentType,n.name)}if(i.hasChildren&&i.depth<=e+1&&this.valueForCell(e,t)===null&&this.getCachedGroupedColumnSet(this.groupedColumns).has(e))return""}return super.textForCell(e,t)}extractViewportRow(e,t){var{isExpanded:n,hasChildren:i,depth:a}=e,l=super.extractViewportRow(e,t),s=new Map(l.data);if(i)for(var o=0;o<this.virtualColumns.length;o+=1){var d=o+(a-1)+(this.virtualColumns.length-1),h=s.get(d);h==null?Vl.warn("Missing key data for virtual column",o,a,d,e):s.set(o,h)}return rr(rr({},l),{},{data:s,isExpanded:n,hasChildren:i,depth:a})}snapshot(e,t,n){var i=this;return xl(function*(){var a,l;M(i.viewport),M(i.viewportData);var s=(a=i.viewport.columns)!==null&&a!==void 0?a:i.columns,o=[];t!=null&&t&&o.push(s.map(C=>C.name));for(var d=new $(0,(l=i.viewportData)===null||l===void 0?void 0:l.offset,s.length,i.viewportData.offset+i.viewportData.rows.length),h=0;h<e.length;h+=1){var c=$.intersection(d,e[h]);M(c),M(c.startRow),M(c.endRow);for(var m=c.startRow;m<=c.endRow;m+=1){var p=[],g=i.viewportData.rows[m-i.viewportData.offset];M(c.startColumn),M(c.endColumn);for(var v=c.startColumn;v<=c.endColumn;v+=1){var f;M(n),p.push(n((f=g.data.get(v))===null||f===void 0?void 0:f.value,i.columns[v]))}o.push(p)}}return o})()}get columns(){return this.getCachedColumns(this.virtualColumns,super.columns)}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 hasExpandableRows(){return!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.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 Ul=$l;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 Gl(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)})}}function L(r,e,t){return e=Hl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Hl(r){var e=Bl(r,"string");return typeof e=="symbol"?e:String(e)}function Bl(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 ke=Z.module("IrisGridProxyModel");function et(r,e,t,n){return A.isTreeTable(e)?new Ul(r,e,t):A.isPartitionedTable(e)?new kl(r,e,t):new Tl(r,e,t,n)}class zl extends _{constructor(e,t){var n,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Ae(e),a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),n=this,L(this,"dh",void 0),L(this,"originalModel",void 0),L(this,"model",void 0),L(this,"modelPromise",void 0),L(this,"rollup",void 0),L(this,"partition",void 0),L(this,"selectDistinct",void 0),L(this,"currentViewport",void 0),L(this,"textForCell",function(){return n.model.textForCell(...arguments)}),L(this,"truncationCharForCell",function(){return n.model.truncationCharForCell(...arguments)}),L(this,"textAlignForCell",function(){return n.model.textAlignForCell(...arguments)}),L(this,"colorForCell",function(){return n.model.colorForCell(...arguments)}),L(this,"backgroundColorForCell",function(){return n.model.backgroundColorForCell(...arguments)}),L(this,"textForColumnHeader",function(){return n.model.textForColumnHeader(...arguments)}),L(this,"colorForColumnHeader",function(){return n.model.colorForColumnHeader(...arguments)}),L(this,"textForRowHeader",function(){return n.model.textForRowHeader(...arguments)}),L(this,"textForRowFooter",function(){return n.model.textForRowFooter(...arguments)}),L(this,"isRowMovable",function(){return n.model.isRowMovable(...arguments)}),L(this,"isColumnMovable",function(){return n.model.isColumnMovable(...arguments)}),L(this,"isRowExpandable",function(){return je(n.model)?n.model.isRowExpandable(...arguments):!1}),L(this,"isRowExpanded",function(){return je(n.model)?n.model.isRowExpanded(...arguments):!1}),L(this,"setRowExpanded",function(){if(je(n.model))return n.model.setRowExpanded(...arguments);throw Error("Function setRowExpanded does not exist on IrisGridTableModel")}),L(this,"expandAll",()=>{if(je(this.model))return this.model.expandAll();throw Error("Function expandAll does not exist on IrisGridTableModel")}),L(this,"collapseAll",()=>{if(je(this.model))return this.model.collapseAll();throw Error("Function collapseAll does not exist on IrisGridTableModel")}),L(this,"depthForRow",function(){return je(n.model)?n.model.depthForRow(...arguments):0}),L(this,"getColumnHeaderGroup",function(){return n.model.getColumnHeaderGroup(...arguments)}),L(this,"getColumnHeaderParentGroup",function(){return n.model.getColumnHeaderParentGroup(...arguments)}),L(this,"sourceForCell",function(){return n.model.sourceForCell(...arguments)}),L(this,"getClearFilterRange",function(){return n.model.getClearFilterRange(...arguments)}),L(this,"formatForCell",function(){return n.model.formatForCell(...arguments)}),L(this,"valueForCell",function(){return n.model.valueForCell(...arguments)}),L(this,"renderTypeForCell",function(){return n.model.renderTypeForCell(...arguments)}),L(this,"dataBarOptionsForCell",function(){return n.model.dataBarOptionsForCell(...arguments)}),L(this,"displayString",function(){return n.model.displayString(...arguments)}),L(this,"isEditableRange",function(){return Be(n.model)?n.model.isEditableRange(...arguments):!1}),L(this,"isFilterable",function(){return n.model.isFilterable(...arguments)}),L(this,"setViewport",(s,o,d)=>{this.currentViewport={top:s,bottom:o,columns:d},this.model.setViewport(s,o,d)}),L(this,"snapshot",function(){return n.model.snapshot(...arguments)}),L(this,"textSnapshot",function(){return n.model.textSnapshot(...arguments)}),L(this,"valuesTable",function(){return n.model.valuesTable(...arguments)}),L(this,"editValueForCell",function(){return Be(n.model)?n.model.editValueForCell(...arguments):""}),L(this,"setValueForCell",function(){return Be(n.model)?n.model.setValueForCell(...arguments):Promise.reject(new Error("Model is not editable"))}),L(this,"setValueForRanges",function(){return Be(n.model)?n.model.setValueForRanges(...arguments):Promise.reject(new Error("Model is not editable"))}),L(this,"setValues",function(){return Be(n.model)?n.model.setValues(...arguments):Promise.resolve()}),L(this,"isValidForCell",function(){return Be(n.model)?n.model.isValidForCell(...arguments):!1}),L(this,"delete",function(){return n.model.delete(...arguments)}),L(this,"commitPending",function(){return n.model.commitPending(...arguments)}),this.handleModelEvent=this.handleModelEvent.bind(this);var l=et(e,t,i,a);this.dh=e,this.originalModel=l,this.model=l,this.modelPromise=null,this.rollup=null,this.partition=null,this.selectDistinct=[]}close(){this.originalModel.close(),this.model!==this.originalModel&&this.model.close(),this.modelPromise!=null&&this.modelPromise.cancel()}handleModelEvent(e){ke.debug2("handleModelEvent",e);var{detail:t,type:n}=e;this.dispatchEvent(new H(n,{detail:t}))}setModel(e){ke.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 H(_.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)}qe(e)&&this.dispatchEvent(new H(_.EVENT.TABLE_CHANGED,{detail:e.table}))}setNextModel(e){ke.debug2("setNextModel"),this.modelPromise&&this.modelPromise.cancel(),this.listenerCount>0&&this.removeListeners(this.model),this.modelPromise=Ne.makeCancelable(e,t=>t.close()),this.modelPromise.then(t=>{this.modelPromise=null,this.setModel(t)}).catch(t=>{if(Ne.isCanceled(t)){ke.debug2("setNextModel cancelled");return}ke.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new H(_.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(_.EVENT),n=0;n<t.length;n+=1)e.addEventListener(t[n],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(_.EVENT),n=0;n<t.length;n+=1)e.removeEventListener(t[n],this.handleModelEvent)}get rowCount(){return this.model.rowCount}get columnCount(){return this.model.columnCount}get floatingTopRowCount(){return this.model.floatingTopRowCount}get floatingBottomRowCount(){return this.model.floatingBottomRowCount}get floatingLeftColumnCount(){return this.model.floatingLeftColumnCount}get floatingRightColumnCount(){return this.model.floatingRightColumnCount}isColumnFrozen(e){return this.model.isColumnFrozen(e)}isColumnSortable(e){return this.model.isColumnSortable(e)}get hasExpandableRows(){return je(this.model)?this.model.hasExpandableRows:!1}get isExpandAllAvailable(){if(je(this.model)){var e;return(e=this.model.isExpandAllAvailable)!==null&&e!==void 0?e:!1}return!1}get isExportAvailable(){return this.model.isExportAvailable}get isColumnStatisticsAvailable(){return this.model.isColumnStatisticsAvailable}get isValuesTableAvailable(){return this.model.isValuesTableAvailable}get isCustomColumnsAvailable(){return this.model.isCustomColumnsAvailable&&!(this.isSelectDistinctAvailable&&this.selectDistinctColumns.length>0)}get isFormatColumnsAvailable(){return this.model.isFormatColumnsAvailable}get isChartBuilderAvailable(){return this.model.isChartBuilderAvailable}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 isTotalsAvailable(){return this.model.isTotalsAvailable}get isReversible(){return this.model.isReversible}get columns(){return this.model.columns}get initialMovedColumns(){return this.model.initialMovedColumns}get initialMovedRows(){return this.model.initialMovedRows}get layoutHints(){return this.model.layoutHints}get frontColumns(){return this.model.frontColumns}get backColumns(){return this.model.backColumns}get frozenColumns(){return this.model.frozenColumns}get columnHeaderGroups(){return this.model.columnHeaderGroups}set columnHeaderGroups(e){this.model.columnHeaderGroups=e}get initialColumnHeaderGroups(){return this.model.initialColumnHeaderGroups}get columnHeaderGroupMap(){return this.model.columnHeaderGroupMap}get columnHeaderMaxDepth(){return this.model.columnHeaderMaxDepth}updateFrozenColumns(e){return this.model.updateFrozenColumns(e)}get originalColumns(){return this.originalModel.columns}get groupedColumns(){return this.model.groupedColumns}get partitionColumns(){return ze(this.originalModel)?this.originalModel.partitionColumns:[]}get description(){return this.model.description}get filter(){return this.model.filter}set filter(e){this.model.filter=e}get partitionConfig(){return!ze(this.originalModel)||!this.originalModel.isPartitionRequired?null:this.partition}set partitionConfig(e){if(!this.isPartitionRequired)throw new Error("Partitions are not available");ke.debug("set partitionConfig",e),this.partition=e;var t=Promise.resolve(this.originalModel);e!=null&&ze(this.originalModel)&&(e.mode==="keys"?t=this.originalModel.partitionKeysTable().then(n=>et(this.dh,n,this.formatter)):e.mode==="merged"?t=this.originalModel.partitionMergedTable().then(n=>et(this.dh,n,this.formatter)):t=this.originalModel.partitionTable(e.partitions).then(n=>et(this.dh,n,this.formatter))),this.setNextModel(t)}partitionKeysTable(){if(!ze(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionKeysTable()}partitionMergedTable(){if(!ze(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionMergedTable()}partitionTable(e){if(!ze(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionTable(e)}get formatter(){return this.model.formatter}set formatter(e){this.model.formatter=e}get sort(){return this.model.sort}set sort(e){this.model.sort=e}get customColumns(){return this.model.customColumns}set customColumns(e){this.model.customColumns=e}get formatColumns(){return this.model.formatColumns}set formatColumns(e){this.model.formatColumns=e}get rollupConfig(){return this.rollup}set rollupConfig(e){if(ke.debug("set rollupConfig",e),!this.isRollupAvailable)throw new Error("Rollup Rows are not available");if(!Kr(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);qe(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(n=>et(this.dh,n,this.formatter))),this.setNextModel(t)}}get selectDistinctColumns(){return this.selectDistinct}set selectDistinctColumns(e){if(ke.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){ke.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);qe(this.originalModel)&&t.length>0&&(n=this.originalModel.table.selectDistinct(t).then(i=>et(this.dh,i,this.formatter))),this.setNextModel(n)}get table(){if(qe(this.model))return this.model.table}get totalsConfig(){return this.model.totalsConfig}set totalsConfig(e){this.model.totalsConfig=e}get isFilterRequired(){return this.originalModel.isFilterRequired}get isPartitionRequired(){return ze(this.originalModel)?this.originalModel.isPartitionRequired:!1}get isEditable(){return Be(this.model)&&this.model.isEditable}get isViewportPending(){return this.model.isViewportPending}export(){if(A.isTreeTable(this.model))throw new Error("TreeTable has no 'export' property");return this.model.export()}columnStatistics(e){if(A.isTreeTable(this.model))throw new Error("TreeTable has no 'columnStatistics' function");return this.model.columnStatistics(e)}get pendingDataMap(){return this.model.pendingDataMap}set pendingDataMap(e){this.model.pendingDataMap=e}get pendingRowCount(){return this.model.pendingRowCount}set pendingRowCount(e){this.model.pendingRowCount=e}get pendingDataErrors(){return this.model.pendingDataErrors}getColumnIndexByName(e){return this.model.getColumnIndexByName(e)}seekRow(e,t,n,i,a,l,s){var o=this;return Gl(function*(){return o.model.seekRow(e,t,n,i,a,l,s)})()}get isSeekRowAvailable(){return this.model.isSeekRowAvailable}}const Kl=zl;function ar(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 Wl(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){ar(a,n,i,l,s,"next",o)}function s(o){ar(a,n,i,l,s,"throw",o)}l(void 0)})}}class ql{static makeModel(e,t){var n=arguments;return Wl(function*(){var i=n.length>2&&n[2]!==void 0?n[2]:new Ae(e),a=null;return!A.isTreeTable(t)&&!A.isPartitionedTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new Kl(e,t,i,a)})()}}const yn=ql;function Pn(r,e,t){return e=Zl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Zl(r){var e=Yl(r,"string");return typeof e=="symbol"?e:String(e)}function Yl(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 Zt{}Pn(Zt,"OPEN","ChartEvent.OPEN");Pn(Zt,"CLOSE","ChartEvent.CLOSE");Pn(Zt,"COLUMN_SELECTED","ChartEvent.COLUMN_SELECTED");const $t=Zt;function ct(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=Ql(r,"string");return typeof e=="symbol"?e:String(e)}function Ql(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Xe{}ct(Xe,"OPEN_GRID","IrisGridEvent.OPEN_GRID");ct(Xe,"CLOSE_GRID","IrisGridEvent.CLOSE_GRID");ct(Xe,"DATA_SELECTED","IrisGridEvent.DATA_SELECTED");ct(Xe,"COLUMN_SELECTED","IrisGridEvent.COLUMN_SELECTED");ct(Xe,"STATE_CHANGED","IrisGridEvent.STATE_CHANGED");ct(Xe,"CREATE_CHART","IrisGridevent.CREATE_CHART");const ue=Xe;function vi(r,e,t){return e=Jl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Jl(r){var e=es(r,"string");return typeof e=="symbol"?e:String(e)}function es(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 Tn{}vi(Tn,"OPEN","PandasEvent.OPEN");vi(Tn,"CLOSE","PandasEvent.CLOSE");const ts=Tn;function Nt(r){var{widgetType:e,widgetName:t,glContainer:n,description:i,children:a}=r,l=O.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(sa,{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]})}Nt.propTypes={glContainer:Wr.Container.isRequired,widgetType:I.string,widgetName:I.string,description:I.string,children:I.node};Nt.defaultProps={widgetType:"",widgetName:"",description:null,children:null};function fi(r,e,t){return e=ns(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ns(r){var e=rs(r,"string");return typeof e=="symbol"?e:String(e)}function rs(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class gi extends T.PureComponent{constructor(e){super(e),fi(this,"getCachedRenderTabTooltip",k((t,n,i,a,l)=>t?()=>u.jsx(Nt,{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;oa(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.
3
3
  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.
4
- `).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:m,widgetType:p,widgetName:g,description:v,onClearAllFilters:f,onHide:C,onFocus:w,onBlur:b,onResize:S,onShow:E,onTabBlur:F,onTabFocus:N,onTabClicked:y}=this.props,{isPanelDisconnected:P,isWidgetDisconnected:D,isPanelInactive:R}=this.state,j=this.getErrorMessage(),G=m??this.getCachedRenderTabTooltip(c,l,p,g,v),U=[{title:"Copy ".concat(p," Name"),group:qr.groups.medium,order:20,action:this.handleCopyName}];return u.jsxs(Ft,{className:pe(t,{disconnected:P||D||o,inactive:R}),componentPanel:n,glContainer:l,glEventHub:s,onClearAllFilters:f,onHide:C,onFocus:w,onBlur:b,onResize:S,onShow:E,onSessionClose:this.handleSessionClosed,onSessionOpen:this.handleSessionOpened,onTabBlur:F,onTabFocus:N,onTabClicked:y,renderTabTooltip:G,errorMessage:j,isLoaded:i,isLoading:a,isClonable:d,isRenamable:h,additionalActions:U,children:[e,R&&u.jsx("div",{className:"fill-parent-absolute"})]})}}fi(gi,"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 Lt=gi;function Ci(r){var{columnMap:e,inputFilterMap:t,linkedColumnMap:n,onAdd:i,onOpenLinker:a,waitingFilterMap:l,waitingInputMap:s}=r,o=T.useMemo(()=>{var g=Array.from(s.keys()),v=g.find(w=>t.get(w)!=null),f=g.find(w=>n.get(w)!=null),C=De.join(g.map(w=>'"'.concat(w,'"')));return v!=null&&v&&f!=null&&f?"Use a filter control or linked table to set a value for ".concat(C):v!=null&&v?"Set a filter control value for ".concat(C):"Double click a row in a linked table to set a value for ".concat(C)},[t,n,s]),d=T.useMemo(()=>Array.from(e.values()),[e]),h=T.useCallback(g=>{g.stopPropagation(),g.preventDefault(),i(Array.from(l.values()))},[i,l]),c=T.useCallback(g=>{g.stopPropagation(),g.preventDefault(),a()},[a]),m=l.size>0,p=!m&&s.size>0;return u.jsx("div",{className:"chart-panel-overlay chart-filter-overlay",children:u.jsxs("div",{className:pe("chart-panel-overlay-content chart-filter-overlay-content",{"chart-filter-waiting-filter":m},{"chart-filter-waiting-input":p}),children:[m&&u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"info-message",children:"This plot requires a filter control to be added to the layout or a table link to be created on the following columns:"}),u.jsx("div",{className:"waiting-filter-list",children:d.map(g=>{var v=l.has(g.name),f=v?Ha:Ba;return u.jsxs("div",{className:pe("waiting-filter-item",{"is-invalid":v}),children:[u.jsx(ce,{icon:f}),g.name]},g.name)})}),u.jsxs("div",{children:[u.jsx(Gn,{onClick:h,className:"btn-primary",children:"Add Input Filters"}),u.jsx(Gn,{onClick:c,className:"btn-primary",children:"Open Linker Tool"})]})]}),p&&u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"info-message",children:"Waiting for User Input"}),u.jsx("div",{className:"",children:o})]})]})})}Ci.propTypes={columnMap:I.instanceOf(Map).isRequired,inputFilterMap:I.instanceOf(Map).isRequired,linkedColumnMap:I.instanceOf(Map).isRequired,onAdd:I.func.isRequired,onOpenLinker:I.func.isRequired,waitingFilterMap:I.instanceOf(Map).isRequired,waitingInputMap:I.instanceOf(Map).isRequired};function Tt(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:pe("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(ci,{className:pe("btn-chart-column-selector",Tt.makeButtonClassName(a.name)),onClick:()=>t(a.name),onMouseEnter:()=>{n&&n(a)},onMouseLeave:i,disabled:!a.isValid,isLinked:a.isActive,children:a.name},a.name))})]})})}Tt.makeButtonClassName=r=>"btn-chart-column-selector-".concat(r);Tt.defaultProps={onMouseEnter:()=>{},onMouseLeave:()=>{}};function rt(r){return r.settings!==void 0}function Fn(r){return r.figure!==void 0}function bi(r){if(r==null)return!1;var{settings:e,tableSettings:t}=r;return typeof e=="object"&&typeof t=="object"}function Si(r){return r!=null&&bi(r.panelState)}function lr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function sr(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?lr(Object(t),!0).forEach(function(n){fe(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):lr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function fe(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)}var ie=Z.module("ChartPanel"),as=150;function ls(r){return r.inputFilters!=null}function ss(r){return r.panelState!=null}class Zt extends T.Component{constructor(e){super(e),fe(this,"panelContainer",void 0),fe(this,"pending",void 0),fe(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})),fe(this,"getWaitingFilterMap",k((l,s,o,d,h)=>{if(!l)return new Map;var c=new Map(s);return o.forEach((m,p)=>{c.delete(p)}),h.forEach((m,p)=>{c.delete(p)}),d.forEach((m,p)=>{c.delete(p)}),c})),fe(this,"getInputFilterColumnMap",k((l,s)=>{for(var o=new Map,d=0;d<s.length;d+=1){var h=s[d],{name:c,type:m}=h,p=l.get(c);p!=null&&p.type===m&&o.set(c,h)}return o})),fe(this,"getLinkedColumnMap",k((l,s)=>{for(var o=new Map,d=O.getIdFromPanel(this),h=0;h<s.length;h+=1){var c=s[h],m=null;if(c.start!=null&&c.start.panelId===d&&l.has(c.start.columnName)?m=c.start.columnName:c.end&&c.end.panelId===d&&l.has(c.end.columnName)&&(m=c.end.columnName),m!=null&&l.has(m)){var p=l.get(m);M(p),o.set(m,p)}}return o})),fe(this,"getSelectorColumns",k((l,s,o)=>Array.from(l.values()).map(d=>({name:d.name,type:d.type,isValid:o?o(this,d):!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=Ze(this.updateModelFromSource.bind(this),as),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.panelContainer=oe.createRef(),this.pending=new Yr;var{metadata:t,panelState:n}=e,{filterValueMap:i=[],settings:a={}}=n??{};this.state={settings:a,error:void 0,isActive:!1,isDisconnected:!1,isLoading:!1,isLoaded:!1,isLinked:t!=null&&rt(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){ie.debug("startListeningToSource",e);var{model:t}=this.state;M(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){ie.debug("stopListeningToSource",e);var{model:t}=this.state;M(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;t.emit($t.COLUMN_SELECTED,this,n.get(e))}handleColumnMouseEnter(e){var{type:t,name:n}=e,{columnSelectionValidator:i}=this.props;ie.debug("handleColumnMouseEnter",i,t,n),i&&i(this,{type:t,name:n})}handleColumnMouseLeave(){var{columnSelectionValidator:e}=this.props;ie.debug("handleColumnMouseLeave",e),e&&e(this,void 0)}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(Ce.LINKER)}handleReconnect(){this.setState({isDisconnected:!1,error:void 0}),this.sendColumnChange(),this.updateColumnFilters()}handleLoadSuccess(e){ie.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){Ne.isCanceled(e)||(ie.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){ie.debug2("updateModelFromSource ignoring",n,i,t);return}var{dh:a}=i;if(this.pending.cancel(),rt(e)){var{settings:l}=e;this.pending.add(a.plot.Figure.create(new te(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&&ls(e.props)&&ss(e.state)){var{inputFilters:l}=e.props,{panelState:s}=e.state;s!=null&&(a=B.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=sr(sr({},n),e);return ie.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(X.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;t.emit(X.COLUMNS_CHANGED,this,Array.from(e.getFilterColumnMap().values()))}}getCoordinateForColumn(e){var t,n=Tt.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){ie.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,m=i.get(d);if(!(m==null||m.type!==h)){if(c.length<1){ie.debug("Ignoring empty filterList for column",d);return}var{value:p}=c[0];s.set(d,p),a.get(d)!==p&&(l===null&&(l=new Map(a)),l.set(d,p))}}),{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],m=i.get(d);m!=null&&m.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 ie.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 m=l.get(d);if(a.has(d)){var p=a.get(d);p!==m&&p!=null&&(s=!0,l.set(d,p))}else s=!0,l.delete(d)}}return ie.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;M(n);var i=this.getWaitingInputMap(n.isFilterRequired(),e,t);if(n.setFilter(t),t.size>0&&i.size===0){var a=n.getDefaultTitle(),l=De.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),ie.debug2("updateFilters filters set",t),this.setState({isLoading:!0})}else ie.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:m,filterMap:p,error:g,model:v,isActive:f,isDisconnected:C,isLoaded:w,isLoading:b}=this.state,S;rt(o)?S=o.table:Fn(o)?S=o.figure:S=o.name;var E=this.getInputFilterColumnMap(m,a),F=this.getLinkedColumnMap(m,s),N=v!=null?this.getWaitingInputMap(v.isFilterRequired(),m,p):new Map,y=v!=null?this.getWaitingFilterMap(v.isFilterRequired(),m,p,F,E):new Map,P=g!=null?"Unable to open chart. ".concat(g):void 0,D=N.size>0,R=m.size>0&&l;return u.jsx(Lt,{className:pe("iris-chart-panel",{"input-required":D}),componentPanel:this,glContainer:n,glEventHub:i,onHide:this.handleHide,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabBlur:this.handleTabBlur,onTabFocus:this.handleTabFocus,errorMessage:P,isDisconnected:C,isLoading:b,isLoaded:w,widgetName:(e=S)!==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:w&&v&&u.jsx(pi,{isActive:f,model:v,settings:d,onDisconnect:this.handleDisconnect,onReconnect:this.handleReconnect,onUpdate:this.handleUpdate,onError:this.handleError,onSettingsChanged:this.handleSettingsChanged,Plotly:h,containerRef:c})}),u.jsx(hn,{in:D&&!R&&!b,mountOnEnter:!0,unmountOnExit:!0,children:u.jsx(Ci,{inputFilterMap:E,linkedColumnMap:F,onAdd:this.handleFilterAdd,onOpenLinker:this.handleOpenLinker,columnMap:m,waitingFilterMap:y,waitingInputMap:N})}),u.jsx(hn,{in:R,mountOnEnter:!0,unmountOnExit:!0,children:u.jsx(Tt,{columns:this.getSelectorColumns(m,F,t),onColumnSelected:this.handleColumnSelected,onMouseEnter:this.handleColumnMouseEnter,onMouseLeave:this.handleColumnMouseLeave})})]})})}}fe(Zt,"defaultProps",{columnSelectionValidator:null,isLinkerActive:!1,source:null,sourcePanel:null,panelState:null,settings:{},containerRef:null});fe(Zt,"displayName","ChartPanel");fe(Zt,"COMPONENT","ChartPanel");var os=(r,e)=>{var{localDashboardId:t,metadata:n}=e,i;n!=null&&rt(n)&&(i=n.sourcePanelId);var a=Ht(r,t),l=Xr(r,t),s=vn(r),o=Bt(r,t),d=s===Ce.LINKER&&o===void 0;return{columnSelectionValidator:zt(r,t),isLinkerActive:d,inputFilters:Kt(r,t),links:Dt(r,t),source:i!=null?a.get(i):void 0,sourcePanel:i!=null?l.get(i):void 0,settings:fn(r)}},ds=Ye(os,{setActiveTool:Zr,setDashboardIsolatedLinkerPanelId:mn},null,{forwardRef:!0})(Zt);const Ot=ds;function ge(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)}var _t=Z.module("DropdownFilter"),cs=150;class xe extends T.Component{constructor(e){super(e),ge(this,"dropdownRef",void 0),ge(this,"getCompatibleColumns",k((a,l)=>a!=null?l.filter(s=>{var{type:o}=s;return o!==void 0&&A.isCompatibleType(o,a.columnType)}):[])),ge(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]})),ge(this,"getSelectedOptionIndex",k((a,l)=>a.indexOf(l))),ge(this,"getValueOptions",k(a=>[u.jsx("option",{value:"-1",children:xe.PLACEHOLDER},"-1"),...a.map((l,s)=>u.jsx("option",{value:s,children:l??"(null)"},"".concat(s,"/").concat(l)))])),ge(this,"getItemLabel",he((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})),ge(this,"sendUpdate",Ze(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s??void 0})},cs)),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=oe.createRef();var{column:t,isValueShown:n,value:i}=e;this.state={column:t,id:Se(),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(_t.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(),_t.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]:_t.debug2("Selected default item"),_t.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:m,disableCancel:p,id:g,isValueShown:v,selectedColumn:f,value:C}=this.state,w=l===null,b=this.getCompatibleColumns(l,t),S=l!=null,E=(e=l?.columnName)!==null&&e!==void 0?e:xe.SOURCE_BUTTON_PLACEHOLDER,F=m!=null?"".concat(m.name," Filter"):null,[N,y]=this.getColumnOptions(b,f),P=this.getValueOptions(h),D=this.getSelectedOptionIndex(h,C),R=!S||f==null,j=v&&!i,G="source-column-btn-".concat(g),U="filter-column-select-".concat(g);return u.jsxs(wn,{className:"dropdown-filter fill-parent-absolute",isFlipped:j,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:G,children:"Source Column"}),u.jsx(ci,{id:G,isLinked:S,onClick:s,onMouseEnter:o,onMouseLeave:d,className:xe.SOURCE_BUTTON_CLASS_NAME,disabled:n,children:E}),u.jsx("div",{className:"text-muted small",children:"Select a source column for the list by linking to a table."}),u.jsx("label",{htmlFor:U,children:"Filter Column"}),u.jsx(yt,{id:U,value:String(y),className:"custom-select",onChange:this.handleColumnChange,disabled:w,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}),S&&u.jsxs("div",{className:"dropdown-filter-settings-buttons",children:[u.jsx(V,{kind:"secondary",type:"button",onClick:this.handleSettingsCancel,disabled:p||v||i,tooltip:i?"Cancel disabled while linker open":void 0,children:"Cancel"}),u.jsx(V,{kind:"primary",type:"button",className:"ml-2",onClick:this.handleSettingsSave,disabled:R||v||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:F})}),u.jsxs("div",{className:"dropdown-filter-card-content",children:[u.jsx("div",{className:"dropdown-filter-value-input d-flex flex-column justify-content-center",children:u.jsx(yt,{className:"custom-select",value:String(D),ref:this.dropdownRef,onChange:this.handleValueChange,onKeyDown:this.handleDropdownKeyPress,title:"Select Value",children:P})}),c&&u.jsx("div",{className:"error-message mt-3 text-center",children:c})]}),u.jsx("div",{className:"dropdown-filter-menu",children:u.jsx(V,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:u.jsx(ce,{icon:Cn,transform:"grow-4"}),tooltip:"Dropdown Filter Settings"})})]})})]})}}ge(xe,"defaultProps",{column:null,disableLinking:!1,isLinkerActive:!1,isLoaded:!1,isValueShown:!1,settingsError:null,source:null,value:"",values:[],onColumnSelected:()=>{},onSourceMouseEnter:()=>{},onSourceMouseLeave:()=>{}});ge(xe,"PLACEHOLDER","Select a value...");ge(xe,"SOURCE_BUTTON_CLASS_NAME","btn-dropdown-filter-selector");ge(xe,"SOURCE_BUTTON_PLACEHOLDER","Select a column");const or=xe;function ne(r,e,t){return e=ps(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ps(r){var e=ms(r,"string");return typeof e=="symbol"?e:String(e)}function ms(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var K=Z.module("DropdownFilterPanel"),vs=250,fs=(r,e)=>{var{localDashboardId:t}=e,n=O.getIdFromPanel({props:e}),i=Ht(r,t),a=Dt(r,t),l=vn(r),s=Bt(r,t),o=l===Ce.LINKER&&(s===void 0||s===n),d=l===Ce.LINKER&&s!==void 0&&s!==n;return{columns:gn(r,t),columnSelectionValidator:zt(r,t),dh:Qr(r),isLinkerActive:o,disableLinking:d,settings:fn(r),panelTableMap:i,dashboardLinks:a}},gs=Ye(fs,null,null,{forwardRef:!0});class be extends T.Component{constructor(e){super(e),ne(this,"dateTimeFormatter",void 0),ne(this,"dropdownFilterRef",void 0),ne(this,"panelContainer",void 0),ne(this,"pending",void 0),ne(this,"cleanup",void 0),ne(this,"columnFormats",void 0),ne(this,"getCachedValues",he((c,m,p)=>{var{type:g,name:v}=m;return g!==void 0&&A.isDateType(g)?c.map(f=>this.dateTimeFormatter.format(f)):c.map(f=>f!=null&&g!=null?p.getFormattedString(f,g,v):null)})),ne(this,"getCachedPanelLinks",he((c,m)=>{var p=O.getIdFromPanel(m);return K.debug("getCachedPanelLinks",c,p),c.filter(g=>{var v;return((v=g.end)===null||v===void 0?void 0:v.panelId)===p})})),ne(this,"getCachedSource",he(c=>{K.debug("getCachedSource",c);var m;if(c.length>0){var[p]=c;m=p.start,c.length>1&&K.error("Filter has more that one link",c)}return m})),ne(this,"getCachedSourceTable",he((c,m)=>{var p;if(K.debug("getCachedSourceTable",c,m),m==null)return null;var{panelId:g}=m;return(p=c.get(g))!==null&&p!==void 0?p:null})),ne(this,"getCachedSourceColumn",he((c,m)=>{var p;return K.debug("getCachedSourceColumn",c,m),c==null||m==null?null:(p=c.columns.find(g=>{var{name:v,type:f}=g;return v===m.columnName&&f===m.columnType}))!==null&&p!==void 0?p:null})),this.handleChange=Ze(this.handleChange.bind(this),vs),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=oe.createRef(),this.panelContainer=oe.createRef(),this.pending=new Yr;var{dh:t,panelState:n,settings:i}=e;this.columnFormats=cn.getColumnFormats(i),this.dateTimeFormatter=new Jr(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 Ae(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&&(K.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(or.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>be.MAX_TABLE_SIZE)return"Table too large, must have fewer than ".concat(be.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;K.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;K.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:m,timestamp:p,wasFlipped:g,skipUpdate:v}=d,f=m!=null&&n!==m.isValueShown&&a===m.name&&l===m.type&&i===m.value;return s=(h=!v&&n&&(!f||!g))!==null&&h!==void 0?h:!1,s||(o=p),{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(){K.debug("handleColumnSelected");var{glEventHub:e}=this.props;e.emit(X.COLUMN_SELECTED,this,be.SOURCE_COLUMN)}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){K.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];K.debug("sendUpdate",{name:e,type:t,value:n,timestamp:i,excludePanelIds:d}),s.emit(X.FILTERS_CHANGED,this,{name:e,type:t,value:n??"=null",timestamp:i,excludePanelIds:d})}updateValuesTable(){var{dashboardLinks:e,panelTableMap:t}=this.props,n=this.getSource(e),i=this.getSourceTable(t,e);if(K.debug("updateValuesTable",n,i),this.setState({values:[],valuesTable:void 0,error:null}),n==null){K.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=>{Ne.isCanceled(a)||(K.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(K.debug("applySourceSorts",i?.sort),n==null||i==null){K.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(K.debug("applySourceFilters",i?.filter),n==null||i==null){K.debug("Table not initialized");return}var a=[...i.filter];n.applyFilter(a),this.setViewport(n)}updateViewportListener(e){var{dh:t}=this.props;if(K.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){K.error("values column is null");return}e.setViewport(0,be.MAX_TABLE_SIZE-1,[n])}updateFormatterSettings(e){var{dh:t}=this.props,n=cn.getColumnFormats(e);Kr(this.columnFormats,n)||(this.columnFormats=n,this.setState({formatter:new Ae(t,n)}))}handleValuesTableUpdate(e){var{detail:t}=e,{rows:n}=t,{dashboardLinks:i}=this.props,{valuesTable:a}=this.state;if(!a){K.error("valuesTable is null");return}var l=this.getValuesColumn(a,i);if(!l){K.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,be.SOURCE_COLUMN)}handleSourceMouseLeave(){var{columnSelectionValidator:e}=this.props;e&&e(this,void 0)}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:m,valuesColumn:p,isLoading:g,isLoaded:v}=this.state,f=this.getSource(t),C=this.getSettingsErrorMessage(),w=this.getPanelErrorMessage(),b=v&&p!=null?this.getCachedValues(m,p,o):[];return u.jsx(Lt,{errorMessage:w,isLoading:g,isLoaded:v,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(or,{ref:this.dropdownFilterRef,column:s,columns:e,isValueShown:h,isLinkerActive:l,disableLinking:n,isLoaded:v,settingsError:C,source:f,value:c,values:b,onChange:this.handleChange,onColumnSelected:this.handleColumnSelected,onSourceMouseEnter:this.handleSourceMouseEnter,onSourceMouseLeave:this.handleSourceMouseLeave})})})}}ne(be,"displayName","DropdownFilterPanel");ne(be,"COMPONENT","DropdownFilterPanel");ne(be,"MAX_TABLE_SIZE",256);ne(be,"SOURCE_COLUMN",Object.freeze({name:"FilterSource",type:null}));var Cs=gs(be);const Ge=Cs;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 kt(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){bt(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 bt(r,e,t){return e=bs(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function bs(r){var e=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 W=Z.module("FilterSetManager"),ws="Enter name...",ur="No Available Filter Sets";class Ut extends T.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),bt(this,"renameInputRef",oe.createRef()),bt(this,"dropdownRef",oe.createRef()),bt(this,"editDropdownRef",oe.createRef()),bt(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;W.debug("initSettingsScreen",e,t),this.setState({modifiedFilterSets:[...e],editId:t})}updateSelectedId(){var{isValueShown:e,filterSets:t,selectedId:n,onChange:i}=this.props;if(W.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:[]}),W.debug("Update sets",n,i),t(n),n.length>0&&e({isValueShown:!0,selectedId:i})}handleCaptureNewSet(){var{getFilterState:e}=this.props;Ut.animateScreenFlash();var t=Se(),n=e(),i={id:t,title:"",panels:n};W.debug("handleSetCreate",i),this.setState({nameInputValue:"",nameInputError:void 0,renameSet:i})}handleRenameCancel(){this.setState({renameSet:void 0})}handleRestoreFullStateChange(e){this.setState({restoreFullState:e.target.value==="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 W.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 W.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){W.error("Renamed set undefined.");return}var l=this.getNameError(t);if(W.debug("handleRenameConfirm",t,l),l!==void 0){this.setState({nameInputError:l});return}var s=(e=t?.trim())!==null&&e!==void 0?e:"",o=kt(kt({},n),{},{title:s,restoreFullState:a}),d=i.findIndex(c=>{var{id:m}=c;return m===n.id}),h=[...i];d>=0?(h[d]=o,W.debug("Renamed existing set",h)):(h.push(o),W.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 W.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 W.debug("Deleted selected set",t,n,a),W.debug("New selection",l,s),{modifiedFilterSets:a,editId:s}})}handleSetUpdate(){var{getFilterState:e}=this.props;Ut.animateScreenFlash();var t=e();this.setState(n=>{var{modifiedFilterSets:i,editId:a}=n;if(a===void 0)return W.error("Filter for update not selected."),null;var l=[...i],s=l.findIndex(o=>{var{id:d}=o;return d===a});return s<0?(W.error("Selected set for update not found."),null):(l[s]=kt(kt({},l[s]),{},{panels:t}),W.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 W.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){W.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){W.debug("No filter selected");return}var i=n.find(a=>{var{id:l}=a;return l===e});if(i===void 0){W.debug("Selected id not found in filterSets",e,n);return}W.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),m=a.length===0,p=!h&&m&&o.length===0,g=!h&&!p,v=u.jsxs("div",{className:"fa-layers mr-3",children:[u.jsx(ce,{icon:Vn,mask:$n,transform:"shrink-1 down-5 right-7"}),u.jsx(ce,{icon:Wa,className:"text-primary",transform:"shrink-6 down-5 right-7"})]}),f=u.jsxs("div",{className:"fa-layers",children:[u.jsx(ce,{icon:Vn,mask:$n,transform:"shrink-1 down-5 right-7"}),u.jsx(ce,{icon:qa,transform:"shrink-1 down-5 right-7"})]});return u.jsx("div",{className:"filter-set-manager fill-parent-absolute",children:u.jsxs(wn,{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:[p&&u.jsxs("div",{children:[u.jsx(V,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:v,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:ws,value:e,ref:this.renameInputRef,onChange:this.handleNameInputChange,onKeyPress:this.handleNameInputKeyPress,spellCheck:"false"}),u.jsx(V,{"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:za}),u.jsx(V,{"data-testid":"rename-cancel-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameCancel,tooltip:"Cancel",icon:Ka})]}),t!==void 0&&u.jsx("div",{className:"error-message",children:t})]}),u.jsx("div",{className:"form-group",children:u.jsxs(il,{onChange:this.handleRestoreFullStateChange,value:"".concat(l),children:[u.jsx(Hn,{value:"false",children:"Restore only filters"}),u.jsx(Hn,{value:"true",children:"Restore full table state"})]})})]}),g&&u.jsxs("div",{className:"filter-set-manager-settings-grid-1",children:[u.jsxs("div",{className:"form-group",children:[u.jsx("label",{children:"Edit filter sets"}),u.jsxs("div",{className:"filter-select-container",children:[u.jsxs(yt,{"data-testid":"settings-card-filter-select",ref:this.editDropdownRef,value:n??"-1",className:"custom-select filter-value-select",onChange:this.handleEditDropdownChange,disabled:m,children:[m&&u.jsx("option",{value:"-1",disabled:!0,children:ur}),a.map(C=>{var{id:w,title:b}=C;return u.jsx("option",{value:w,children:b},w)})]}),u.jsx(V,{kind:"ghost",onClick:this.handleSetUpdate,disabled:m,icon:f,tooltip:"Update"}),u.jsx(V,{kind:"ghost",onClick:this.handleSetEdit,disabled:m,icon:di,tooltip:"Edit"}),u.jsx(V,{kind:"ghost",onClick:this.handleSetDelete,disabled:m,icon:bn,tooltip:"Delete"})]})]}),u.jsx("div",{children:u.jsx(V,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:v,children:"Capture new filter set"})}),u.jsxs("div",{className:"py-3 text-right",children:[u.jsx(V,{kind:"secondary",onClick:this.handleSettingsCancel,children:"Cancel"})," ",u.jsx(V,{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(yt,{"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:ur}),o.map(C=>{var{id:w,title:b}=C;return u.jsx("option",{value:w,children:b},w)})]}),u.jsx(V,{"data-testid":"filter-apply-button",kind:"ghost",onClick:this.handleFilterApply,icon:ui,tooltip:"Apply Filter Set"})]})})}),u.jsx("div",{className:"filter-set-manager-menu",children:u.jsx(V,{kind:"ghost",className:"btn btn-link btn-link-icon m-2 px-2",onClick:this.handleSettingsClick,tooltip:"Settings",icon:u.jsx(ce,{icon:Cn,transform:"grow-4"})})})]},"back")]})})}}const wi=Ut;function Dn(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"),m=(a=l?.columnCount)!==null&&a!==void 0?a:0,p=l?.displayString(m,"long");return u.jsxs(Nt,{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:p}),u.jsx("span",{children:"Number of Rows"}),u.jsx("span",{className:"tab-tooltip-statistic-value",children:c})]})}Dn.propTypes={glContainer:Wr.Container.isRequired,widgetName:I.string.isRequired,description:I.string};Dn.defaultProps={description:null};function Ei(r){if(r==null)return!1;var e=r;return typeof e.table=="string"}function yi(r){if(r==null)return!1;var e=r;return typeof e.name=="string"}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 Ke(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){Y(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 Y(r,e,t){return e=Es(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Es(r){var e=ys(r,"string");return typeof e=="symbol"?e:String(e)}function ys(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 Fe=Z.module("IrisGridPanel"),Ps=500;function cr(r){if(r==null)throw new Error("No metadata provided");if(yi(r))return r.name;if(Ei(r))return r.table;throw new Error("Unable to determine table name from metadata: ".concat(JSON.stringify(r)))}class lt extends T.PureComponent{constructor(e){super(e),Y(this,"irisGrid",void 0),Y(this,"pluginRef",void 0),Y(this,"modelPromise",void 0),Y(this,"irisGridState",void 0),Y(this,"gridState",void 0),Y(this,"pluginState",void 0),Y(this,"irisGridUtils",void 0),Y(this,"getGridInputFilters",k((n,i)=>B.getInputFiltersForColumns(n,i.filter(a=>{var{value:l,excludePanelIds:s}=a,o=O.getIdFromPanel(this);return l!=null&&(s==null||o!=null&&!s.includes(o))})))),Y(this,"getAlwaysFetchColumns",k((n,i)=>{for(var a=O.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]})),Y(this,"getPluginContent",k((n,i,a)=>!i||!qe(i)||n==null||i.table==null?null:u.jsx("div",{className:"iris-grid-plugin",children:u.jsx(n,{ref:this.pluginRef,filter:this.handlePluginFilter,fetchColumns:this.handlePluginFetchColumns,model:i,table:i.table,onStateChange:this.handlePluginStateChange,pluginState:a})}))),Y(this,"getDehydratedIrisGridPanelState",k((n,i,a,l)=>B.dehydrateIrisGridPanelState(n,{isSelectingPartition:i,partitions:a,advancedSettings:l}))),Y(this,"getDehydratedIrisGridState",k((n,i,a,l,s,o,d,h,c,m,p,g,v,f,C,w,b,S,E,F,N,y)=>(M(this.irisGridUtils),this.irisGridUtils.dehydrateIrisGridState(n,{advancedFilters:a,aggregationSettings:b,customColumnFormatMap:l,isFilterBarShown:s,metrics:{userColumnWidths:C,userRowHeights:w},quickFilters:o,customColumns:d,reverseType:h,rollupConfig:c,showSearchBar:m,searchValue:p,selectDistinctColumns:g,selectedSearchColumns:v,sorts:i,invertSearchColumns:f,pendingDataMap:S,frozenColumns:E,conditionalFormats:F,columnHeaderGroups:N,partitionConfig:y})))),Y(this,"getDehydratedGridState",k((n,i,a,l,s)=>B.dehydrateGridState(n,{isStuckToBottom:l,isStuckToRight:s,movedColumns:i,movedRows:a}))),Y(this,"getCachedPanelState",k((n,i,a,l)=>({irisGridPanelState:n,irisGridState:i,gridState:a,pluginState:l}))),Y(this,"savePanelState",Ze(()=>{var{irisGridState:n,gridState:i,pluginState:a}=this;M(n);var{onPanelStateUpdate:l}=this.props,{model:s,panelState:o,isSelectingPartition:d,partitions:h,advancedSettings:c}=this.state,{advancedFilters:m,aggregationSettings:p,customColumnFormatMap:g,isFilterBarShown:v,quickFilters:f,customColumns:C,reverseType:w,rollupConfig:b,showSearchBar:S,searchValue:E,selectDistinctColumns:F,selectedSearchColumns:N,sorts:y,invertSearchColumns:P,metrics:D,pendingDataMap:R,frozenColumns:j,conditionalFormats:G,columnHeaderGroups:U,partitionConfig:re}=n;M(s),M(D);var{userColumnWidths:de,userRowHeights:we}=D;M(i);var{isStuckToBottom:Le,isStuckToRight:me,movedColumns:Ee,movedRows:ye}=i,Pe=this.getCachedPanelState(this.getDehydratedIrisGridPanelState(s,d,h,c),this.getDehydratedIrisGridState(s,y,m,g,v,f,C,w,b,S,E,F,N,P,de,we,p,R,j,G,U,re),this.getDehydratedGridState(s,Ee,ye,Le,me),a);Pe!==o&&(Fe.debug("Saving panel state",this,Pe),this.setState({panelState:Pe}),l?.(Pe))},Ps)),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=oe.createRef(),this.pluginRef=oe.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(ll.DEFAULTS),customColumns:[],customColumnFormatMap:new Map,isFilterBarShown:!1,quickFilters:new Map,sorts:[],userColumnWidths:new Map,userRowHeights:new Map,reverseType:A.REVERSE_TYPE.NONE,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 cr(e)}initModel(){this.setState({isModelReady:!1,isLoading:!0,error:null});var{makeModel:e}=this.props;this.modelPromise!=null&&this.modelPromise.cancel(),this.modelPromise=Ne.makeCancelable(e(),t=>t.close()),this.modelPromise.then(this.handleLoadSuccess).catch(this.handleLoadError)}handleLoadSuccess(e){var t=e,{panelState:n,irisGridStateOverrides:i}=this.state,a=[];if(this.irisGridUtils=new B(t.dh),n!=null){var{irisGridState:l}=n,{aggregationSettings:s,customColumns:o,selectDistinctColumns:d=[],rollupConfig:h}=Ke(Ke({},l),i);o.length>0&&a.push(c=>{c.customColumns=o}),h!=null&&h.columns.length>0&&a.push(c=>{c.rollupConfig=B.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();Fe.debug("initModelQueue",i),i&&i(n),this.setState({modelQueue:t})}handleAdvancedSettingsChange(e,t){Fe.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;M(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):!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(ue.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):(M(n),this.initModelQueue(n,i))}handleTableChanged(e){Fe.debug("handleTableChanged",e);var{glEventHub:t}=this.props,{detail:n}=e;t.emit(X.TABLE_CHANGED,this,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=O.getIdFromPanel(this),o;l&&(o=B.extractTableSettings(l,i)),n.emit(ue.CREATE_CHART,{metadata:{settings:e,sourcePanelId:s,table:a,tableSettings:o},table:qe(t)?t.table:void 0})})}handleColumnSelected(e){var{glEventHub:t}=this.props;t.emit(ue.COLUMN_SELECTED,this,e)}handleDataSelected(e,t){var{glEventHub:n}=this.props;n.emit(ue.DATA_SELECTED,this,t)}handleShow(){this.updateGrid()}handleTabClicked(){this.irisGrid.current&&this.irisGrid.current.focus()}handleError(e){Fe.error(e),this.setState({error:e,isLoading:!1})}handleDisconnect(){this.setState({error:new Error("Table disconnected"),isDisconnected:!0,isLoading:!1})}handleReconnect(){this.setState({isDisconnected:!1,error:null})}handleLoadError(e){Ne.isCanceled(e)||this.handleError(e)}modelInitialized(e){var{glEventHub:t,loadPlugin:n}=this.props;if(this.modelPromise=void 0,this.loadPanelState(e),this.setState({isModelReady:!0}),qe(e)){var{table:i}=e,{pluginName:a}=i;if(a!==""&&n!=null&&a!=null){var l=n(a);this.setState({Plugin:l})}t.emit(X.TABLE_CHANGED,this,i)}this.sendColumnsChange(e.columns)}handleClearAllFilters(){var e=this.irisGrid.current,{isDisconnected:t}=this.state;e!=null&&!t&&e.clearAllFilters()}sendColumnsChange(e){Fe.debug2("sendColumnsChange",e);var{glEventHub:t}=this.props;t.emit(X.COLUMNS_CHANGED,this,e)}startModelListening(e){e.addEventListener(_.EVENT.DISCONNECT,this.handleDisconnect),e.addEventListener(_.EVENT.RECONNECT,this.handleReconnect),e.addEventListener(_.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.addEventListener(_.EVENT.TABLE_CHANGED,this.handleTableChanged)}stopModelListening(e){e.removeEventListener(_.EVENT.DISCONNECT,this.handleDisconnect),e.removeEventListener(_.EVENT.RECONNECT,this.handleReconnect),e.removeEventListener(_.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.removeEventListener(_.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;M(l);var{metrics:d}=l.state;M(d);var{columnHeaderHeight:h,allColumnXs:c,allColumnWidths:m,right:p,columnHeaderMaxDepth:g}=d,v=a.getColumnIndexByName(e);M(v);var f=l.getVisibleColumn(v),C=(n=c.get(f))!==null&&n!==void 0?n:0,w=(i=m.get(f))!==null&&i!==void 0?i:0,b=Math.max(o.left,Math.min(f>p?o.right:o.left+C+w*.5,o.right)),S=o.top+h*g;return[b,S]}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;Fe.debug("setFilters",t,n);var{model:i,isDisconnected:a}=this.state,l=this.irisGrid.current;if(l==null||a){Fe.debug("Ignore setFilters, model disconnected");return}M(i);var{columns:s,formatter:o}=i,d=B.changeFilterColumnNamesToIndexes(i.columns,t).filter(c=>{var[m]=c;return i.isFilterable(m)}),h=B.changeFilterColumnNamesToIndexes(i.columns,n).filter(c=>{var[m]=c;return i.isFilterable(m)});M(this.irisGridUtils),l.clearAllFilters(),l.setFilters({quickFilters:this.irisGridUtils.hydrateQuickFilters(s,d,o.timeZone),advancedFilters:this.irisGridUtils.hydrateAdvancedFilters(s,h,o.timeZone)})}setStateOverrides(e){Fe.debug("setStateOverrides",e);var{irisGridState:t,gridState:n}=e;this.setState({irisGridStateOverrides:t,gridStateOverrides:n},()=>{this.initModel()})}unsetFilterValue(){}loadPanelState(e){var{panelState:t,irisGridStateOverrides:n,gridStateOverrides:i}=this.state;if(t!=null)try{var{gridState:a,irisGridState:l,irisGridPanelState:s}=t,o=Ke({},n),{quickFilters:d,advancedFilters:h}=o;d&&(o.quickFilters=B.changeFilterColumnNamesToIndexes(e.columns,d)),h&&(o.advancedFilters=B.changeFilterColumnNamesToIndexes(e.columns,h));var{isSelectingPartition:c,partitions:m,advancedSettings:p}=B.hydrateIrisGridPanelState(e,s);M(this.irisGridUtils);var{advancedFilters:g,customColumns:v,customColumnFormatMap:f,isFilterBarShown:C,quickFilters:w,reverseType:b,rollupConfig:S,aggregationSettings:E,sorts:F,userColumnWidths:N,userRowHeights:y,showSearchBar:P,searchValue:D,selectDistinctColumns:R,selectedSearchColumns:j,invertSearchColumns:G,pendingDataMap:U,frozenColumns:re,conditionalFormats:de,columnHeaderGroups:we,partitionConfig:Le}=this.irisGridUtils.hydrateIrisGridState(e,Ke(Ke({},l),o)),{isStuckToBottom:me,isStuckToRight:Ee,movedColumns:ye,movedRows:Pe}=B.hydrateGridState(e,Ke(Ke({},a),i),l.customColumns);this.setState({advancedFilters:g,advancedSettings:p,conditionalFormats:de,customColumns:v,customColumnFormatMap:f,isFilterBarShown:C,isSelectingPartition:c,movedColumns:ye,movedRows:Pe,partitions:m,quickFilters:w,reverseType:b,rollupConfig:S,aggregationSettings:E,sorts:F,userColumnWidths:N,userRowHeights:y,showSearchBar:P,searchValue:D,selectDistinctColumns:R,selectedSearchColumns:j,invertSearchColumns:G,pendingDataMap:U,frozenColumns:re,isStuckToBottom:me,isStuckToRight:Ee,columnHeaderGroups:we,partitionConfig:Le})}catch(le){Fe.error("loadPanelState failed to load panelState",t,le)}}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:m,settings:p,theme:g}=this.props,{advancedFilters:v,aggregationSettings:f,advancedSettings:C,conditionalFormats:w,customColumns:b,customColumnFormatMap:S,error:E,isDisconnected:F,isFilterBarShown:N,isSelectingPartition:y,isStuckToBottom:P,isStuckToRight:D,isLoaded:R,isLoading:j,isModelReady:G,model:U,movedColumns:re,movedRows:de,partitions:we,partitionConfig:Le,quickFilters:me,reverseType:Ee,rollupConfig:ye,sorts:Pe,userColumnWidths:le,userRowHeights:en,showSearchBar:ve,searchValue:Te,selectDistinctColumns:Oe,selectedSearchColumns:Re,invertSearchColumns:Qe,Plugin:tn,pluginFilters:Wi,pluginFetchColumns:qi,pendingDataMap:Zi,frozenColumns:Yi,columnHeaderGroups:Xi}=this.state,Qi=E!=null?"Unable to open table. ".concat(E):void 0,kn=cr(h),xn=(e=U?.description)!==null&&e!==void 0?e:void 0,Ji=(t=c?.pluginState)!==null&&t!==void 0?t:null,ea=n??this.getPluginContent(tn,U,Ji),{permissions:ta}=m,{canCopy:na,canDownloadCsv:ra}=ta;return u.jsx(Lt,{errorMessage:Qi,isDisconnected:F,isLoading:j,isLoaded:R,className:"iris-grid-panel",glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabFocus:this.handleShow,onTabClicked:this.handleTabClicked,widgetName:kn,widgetType:"Table",description:xn,componentPanel:this,renderTabTooltip:()=>u.jsx(Dn,{model:U,widgetName:kn,glContainer:i,description:xn}),children:G&&U&&u.jsx(Sn,{advancedFilters:v,aggregationSettings:f,advancedSettings:C,alwaysFetchColumns:this.getAlwaysFetchColumns(d,qi),columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",copyCursor:"copy",customColumns:b,customColumnFormatMap:S,columnSelectionValidator:this.isColumnSelectionValid,conditionalFormats:w,inputFilters:this.getGridInputFilters(U.columns,o),applyInputFiltersOnInit:c==null,isFilterBarShown:N,isSelectingColumn:l!=null,isSelectingPartition:y,isStuckToBottom:P,isStuckToRight:D,movedColumns:re,movedRows:de,partitions:we,partitionConfig:Le,quickFilters:me,reverseType:Ee,rollupConfig:ye,settings:p,sorts:Pe,userColumnWidths:le,userRowHeights:en,model:U,showSearchBar:ve,searchValue:Te,selectedSearchColumns:Re,selectDistinctColumns:Oe,invertSearchColumns:Qe,onColumnSelected:this.handleColumnSelected,onCreateChart:this.handleCreateChart,onDataSelected:this.handleDataSelected,onError:this.handleError,onStateChange:this.handleGridStateChange,onContextMenu:this.handleContextMenu,onAdvancedSettingsChange:this.handleAdvancedSettingsChange,customFilters:Wi,pendingDataMap:Zi,canCopy:na,canDownloadCsv:ra,ref:this.irisGrid,getDownloadWorker:s,frozenColumns:Yi,theme:g,columnHeaderGroups:Xi,children:ea})})}}Y(lt,"defaultProps",{onStateChange:()=>{},onPanelStateUpdate:()=>{}});Y(lt,"displayName","IrisGridPanel");Y(lt,"COMPONENT","IrisGridPanel");var Ts=(r,e)=>{var{localDashboardId:t=da}=e;return{inputFilters:Kt(r,t),links:Dt(r,t),columnSelectionValidator:zt(r,t),user:oa(r),settings:fn(r)}},Fs=Ye(Ts,null,null,{forwardRef:!0})(lt);const st=Fs;function wt(r,e,t){return e=Ds(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Ds(r){var e=Ms(r,"string");return typeof e=="symbol"?e:String(e)}function Ms(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var pr=Z.module("InputFilter"),Ns=150;class ot extends T.Component{constructor(e){super(e),wt(this,"inputRef",void 0),wt(this,"getItemLabel",he((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})),wt(this,"sendUpdate",Ze(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s})},Ns)),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=oe.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)];pr.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;pr.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?ot.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(wn,{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(yt,{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(V,{kind:"secondary",onClick:this.handleSettingsCancel,disabled:t==null,children:"Cancel"}),u.jsx(V,{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:ot.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(V,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:u.jsx(ce,{icon:Cn,transform:"grow-4"}),tooltip:"Input Filter Settings"})})]})]})}}wt(ot,"PLACEHOLDER","Enter value...");wt(ot,"defaultProps",{column:null,isValueShown:!1,value:null});const Ls=ot;function Yt(r,e,t){return e=Os(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Os(r){var e=Rs(r,"string");return typeof e=="symbol"?e:String(e)}function Rs(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Is=250;class Xt extends T.Component{constructor(e){super(e),Yt(this,"inputFilterRef",void 0),this.handleChange=Ze(this.handleChange.bind(this),Is),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.inputFilterRef=oe.createRef();var{panelState:t}=e,{value:n,isValueShown:i=!1,name:a,type:l,timestamp:s}=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:m,wasFlipped:p,skipUpdate:g}=d,v=c!=null&&n!==c.isValueShown&&a===c.name&&l===c.type&&i===c.value;return s=(h=!g&&n&&(!v||!p))!==null&&h!==void 0?h:!1,s||(o=m),{panelState:{isValueShown:n,name:a,type:l,value:i,timestamp:o},timestamp:o,wasFlipped:v,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;a.emit(X.FILTERS_CHANGED,this,{name:e,type:t,value:n,timestamp:i})}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(Ft,{className:"iris-input-filter-panel",componentPanel:this,glContainer:e,glEventHub:t,onClearAllFilters:this.handleClearAllFilters,isClonable:!0,isRenamable:!0,children:u.jsx(Ls,{ref:this.inputFilterRef,column:n,columns:i,onChange:this.handleChange,isValueShown:a,value:l})})}}Yt(Xt,"defaultProps",{panelState:null});Yt(Xt,"COMPONENT","InputFilterPanel");Yt(Xt,"displayName","InputFilterPanel");var _s=(r,e)=>{var{localDashboardId:t}=e;return{columns:gn(r,t)}},ks=Ye(_s,null,null,{forwardRef:!0})(Xt);const it=ks;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 xt(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){Mn(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 Mn(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=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 ee=Z.module("FilterSetManagerPanel");function js(r){return r.setPanelState!=null}class dt extends T.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){ee.error("Could not get panel",i);return}var a=O.getComponentNameFromPanel(i),l=O.getIdFromPanel(i);ee.debug("Panel:",i,a);var{glContainer:s=null}=i.props;if(s==null){ee.error("Could not get panel container",i);return}var o=O.getComponentConfigFromContainer(s);if(o==null){ee.error("Could not get component config from container",s);return}var d=O.getPanelComponentState(o);if(d==null){ee.debug("Panel state is null ".concat(l));return}switch(a){case O.getComponentName(lt):{var h;l!=null&&(h=this.getIrisGridPanelFilters(l,d)),h!=null&&t.push({panelId:l,type:a,state:h});break}case O.getComponentName(it):case O.getComponentName(Ge):{var{isValueShown:c,name:m,type:p,value:g}=d;t.push({panelId:l,type:a,state:{isValueShown:c,name:m,type:p,value:g}});break}}}),t}getIrisGridPanelFilters(e,t){var{panelTableMap:n}=this.props,i=n.get(e);if(i==null)return ee.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=dt.changeFilterIndexesToColumnNames(i,s));var h;return o&&(h=dt.changeFilterIndexesToColumnNames(i,o)),{irisGridState:xt(xt({},a),{},{advancedFilters:d,quickFilters:h}),gridState:xt({},l)}}handleGetFilterState(){return this.getFilterState()}handleChange(e){var{isValueShown:t,selectedId:n}=e;ee.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;ee.debug("Apply filters from filter set",e),n.forEach(a=>{var{panelId:l,type:s,state:o}=a;if(l==null){ee.debug("panel is null",l);return}if(!t.has(l)){ee.debug("Ignore closed panel",l);return}ee.debug("Apply panel filters",l,s,o);var d=t.get(l);switch(s){case O.getComponentName(lt):this.restoreIrisGridFilters(d,o,i);break;case O.getComponentName(it):case O.getComponentName(Ge):this.restoreInputFilterState(d,o);break}})}handleSetsUpdate(e){var{setDashboardFilterSets:t,localDashboardId:n}=this.props;ee.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=O.getIdFromPanel(e);if(h==null){ee.error("Panel Id is null.");return}var c=d.get(h);if(c==null){ee.error("Unable to get table for panel ".concat(h,"."));return}ee.debug("restoreIrisGridFilters",h,t,n),n?e.setStateOverrides(t):e.setFilters({quickFilters:o,advancedFilters:s})}restoreInputFilterState(e,t){var n=xt({},t);delete n.isValueShown,ee.debug("restoreInputFilterState",e,n),e&&js(e)&&e.setPanelState(n)}render(){var{glContainer:e,glEventHub:t,filterSets:n}=this.props,{isValueShown:i,selectedId:a}=this.state;return u.jsx(Ft,{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(wi,{onChange:this.handleChange,onApply:this.handleFilterApply,onUpdateSets:this.handleSetsUpdate,isValueShown:i,filterSets:n,selectedId:a,getFilterState:this.handleGetFilterState})})})}}Mn(dt,"defaultProps",{panelState:null});Mn(dt,"COMPONENT","FilterSetManagerPanel");var Vs=(r,e)=>{var{localDashboardId:t}=e;return{filterSets:ti(r,t),dashboardOpenedPanelMap:Xr(r,t),dashboardInputFilters:Kt(r,t),panelTableMap:Ht(r,t)}},$s=Ye(Vs,{setDashboardFilterSets:ei},null,{forwardRef:!0})(dt);const Vt=$s;function Us(r,e,t){return e=Gs(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Gs(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 Pi extends T.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:pe("text-muted","edit-hint",{viewing:e===void 0||!e}),children:u.jsxs("span",{children:["double-click to edit ",u.jsx(ce,{icon:di})]})}),t]})}}Us(Pi,"defaultProps",{isEditing:!1});function Bs(r,e,t){return e=zs(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function zs(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 Ws=Z.module("MarkdownStartPage");class Ti extends T.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(Ws.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(V,{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(V,{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(ce,{icon:bn})})]},l.id)),u.jsxs(Za,{isOpen:i,toggle:this.handleDeleteModalClose,className:"modal-dialog-centered markdown-delete-modal",children:[u.jsx(Ya,{children:"Are you sure you want to permanently delete this note?"}),u.jsx(Xa,{children:"You can't undo this action."}),u.jsxs(ua,{children:[u.jsx(V,{kind:"secondary",onClick:this.handleDeleteModalClose,children:"Cancel"}),u.jsx(V,{kind:"danger",onClick:()=>{this.handleDeleteMarkdown(a)},children:"Delete"})]})]})]})]})})}}Bs(Ti,"defaultProps",{closedMarkdowns:[],onOpen:()=>{},onCreate:()=>{},onDelete:()=>{}});const qs=Ti;function Et(r,e,t){return e=Zs(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Zs(r){var e=Ys(r,"string");return typeof e=="symbol"?e:String(e)}function Ys(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 Xs=T.lazy(()=>ul(()=>import("./MarkdownEditor-4e90cc6f.js"),["./MarkdownEditor-4e90cc6f.js","./vendor-2ad5ff96.js","./helpers-de833af9.js","./vendor-07c93e4f.css","./ControlType-c6032251.js","./index-8aea8687.js","./monaco-b5248072.js","./monaco-f18fde03.css","./index-470b8a54.css","./ControlType-ea767cde.css","./mathjax-eb86e467.js"],import.meta.url)),At=Z.module("MarkdownPanel");class Nn extends T.Component{constructor(e){super(e),Et(this,"markdownEditor",void 0),Et(this,"editor",void 0),Et(this,"getClosedMarkdowns",k(i=>i.filter(a=>a.component==="MarkdownPanel").reverse())),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&&({content:n}=t),this.state={isStartPageShown:n==null,isEditing:!1,content:n,panelState:t},this.markdownEditor=null}setEditorPosition(e){M(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){At.debug("Markdown Editor Initialized..."),this.editor=e}handleCreateMarkdown(){At.debug("create markdown..."),this.setState({isStartPageShown:!1,content:"",isEditing:!0,panelState:{content:""}},()=>{this.editor!=null&&this.editor.focus!=null&&this.editor.focus()})}handleOpenMarkdown(e){At.debug("open markdown...",e);var{glContainer:t,glEventHub:n}=this.props,i=O.getComponentConfigFromContainer(t);n.emit(ae.REOPEN,e,i)}handleDeleteMarkdown(e){var{glEventHub:t}=this.props;t.emit(ae.DELETE,e)}handleEditorBlur(e){var t;At.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(Ft,{glContainer:e,glEventHub:t,className:"markdown-panel",componentPanel:this,onResize:this.handleEditorResize,onBlur:this.handleEditorBlur,isClonable:!0,isRenamable:!0,children:a?u.jsx(qs,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):u.jsx(Pi,{isEditing:i,onDoubleClick:this.handleContainerDoubleClick,children:u.jsx(T.Suspense,{fallback:u.jsx(hi,{}),children:u.jsx(Xs,{ref:o=>{this.markdownEditor=o},isEditing:i,content:l??void 0,onEditorInitialized:this.handleEditorInitialized})})})})}}Et(Nn,"defaultProps",{panelState:null});Et(Nn,"COMPONENT","MarkdownPanel");var Qs=(r,e)=>{var{localDashboardId:t}=e;return{closedPanels:ha(r,t)}},Js=Ye(Qs,null,null,{forwardRef:!0})(Nn);const nt=Js;function Fi(r){var{onClick:e}=r,t=T.useRef(null),n=T.useCallback(i=>{var a;(a=t.current)===null||a===void 0||a.blur(),e(i)},[e]);return u.jsxs(V,{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(ce,{icon:ui,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}function vr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function fr(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?vr(Object(t),!0).forEach(function(n){Qt(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):vr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Qt(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)}class Ln extends T.Component{constructor(e){super(e),Qt(this,"irisGridRef",void 0),this.irisGridRef=oe.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(st,fr(fr({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},this.props),{},{children:u.jsx(Fi,{onClick:this.handleReload})}))}}Qt(Ln,"defaultProps",{panelState:null});Qt(Ln,"COMPONENT","PandasPanel");const Di=Ln;function gr(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function Cr(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){gr(a,n,i,l,s,"next",o)}function s(o){gr(a,n,i,l,s,"throw",o)}l(void 0)})}}function br(r,e,t){return e=no(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function no(r){var e=ro(r,"string");return typeof e=="symbol"?e:String(e)}function ro(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 io{constructor(e){br(this,"items",void 0),br(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];jn(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];jn(t)&&(t.isExpanded=!1)}return Promise.resolve()}getViewportData(){return Promise.resolve({items:this.items,offset:0})}getSnapshot(e){return Cr(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return Cr(function*(){var n,i=yield t.getViewportData();(n=t.onUpdateCallback)===null||n===void 0||n.call(t,i)})()}setFilters(e){}setSorts(e){}setReversed(e){}close(){}onUpdate(e){return this.onUpdateCallback=e,jest.fn()}get size(){return this.items.length}}const ao=io;function Sr(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 mt(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Sr(a,n,i,l,s,"next",o)}function s(o){Sr(a,n,i,l,s,"throw",o)}l(void 0)})}}function lo(r,e,t){return e=so(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function so(r){var e=oo(r,"string");return typeof e=="symbol"?e:String(e)}function oo(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 uo{constructor(e){lo(this,"items",void 0),this.items=e}getTable(){var e=this;return mt(function*(){return new ao(e.items)})()}saveFile(e){throw new Error("Method not implemented.")}loadFile(e){throw new Error("Method not implemented.")}copyFile(e,t){return mt(function*(){throw new Error("Method not implemented.")})()}deleteFile(e){var t=this;return mt(function*(){t.items=t.items.filter(n=>n.filename!==e)})()}moveFile(e,t){var n=this;return mt(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=ca.getBaseName(t),n.items[i].id=t;break}})()}info(e){var t=this;return mt(function*(){var n=t.items.filter(a=>a.filename===e);if(n.length===0)throw new pa;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 ho=uo;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 Gt(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){co(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 co(r,e,t){return e=po(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function po(r){var e=mo(r,"string");return typeof e=="symbol"?e:String(e)}function mo(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}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 vo(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 fo(r,e,t,n,i){return pn.apply(this,arguments)}function pn(){return pn=vo(function*(r,e,t,n,i){var a,l,s,o;if(rt(t)?(a=t.settings,l=t.table,s=void 0,o=t.tableSettings):(a={},l="",s=Fn(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=Gt(Gt({},a),i.settings))),s==null&&l==null){var d=yield n();return St.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 St.makeModel(r,a,h)}var m={name:l,type:r.VariableType.TABLE},p=yield e(m);return new B(r).applyTableSettings(p,o,ni(va.getState())),St.makeModelFromSettings(r,a,p)}),pn.apply(this,arguments)}var On=T.forwardRef((r,e)=>{var t=ht(),n=ma(),i=Si(r)?r.panelState:void 0,{fetch:a,metadata:l,localDashboardId:s}=r,o=T.useMemo(()=>({metadata:l,localDashboardId:s,makeModel:()=>{if(l==null)throw new Error("Metadata is required for chart panel");return fo(t,n,l,a,i)}}),[l,s,t,n,a,i]);return u.jsx(Ot,Gt(Gt({ref:e},r),o))});On.displayName="ChartPanelPlugin";const go=On;function yr(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function Co(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){yr(a,n,i,l,s,"next",o)}function s(o){yr(a,n,i,l,s,"throw",o)}l(void 0)})}}function Mi(r){var e=ht(),[t,n]=T.useState(),{fetch:i}=r;return T.useEffect(()=>{var a=!1;function l(){return s.apply(this,arguments)}function s(){return s=Co(function*(){var o=yield i(),d=yield St.makeModel(e,void 0,o);a||n(d)}),s.apply(this,arguments)}return l(),()=>{a=!0}},[e,i]),t?u.jsx(pi,{model:t}):null}var bo={name:"ChartPanel",title:"Chart",type:He.WIDGET_PLUGIN,component:Mi,panelComponent:On,supportedTypes:"Figure",icon:Qa};const So=bo;function Ni(r){Mt(r);var{id:e,layout:t}=r,n=ht(),i=T.useCallback(a=>{var{metadata:l,panelId:s=Se.generate(),table:o}=a,{settings:d}=l,h=()=>St.makeModelFromSettings(n,d,o),c=te.titleFromSettings(d),m={type:"react-component",component:Ot.COMPONENT,props:{localDashboardId:e,id:s,metadata:l,makeModel:h},title:c,id:s},{root:p}=t;O.openComponent({root:p,config:m})},[n,e,t]);return Me(t.eventHub,ue.CREATE_CHART,i),null}var wo={name:"ChartBuilderPlugin",type:He.DASHBOARD_PLUGIN,component:Ni};const Eo=wo;var vt=Z.module("FilterPlugin");function Pr(r,e){return r.concat(e)}function Li(r){Mt(r);var{id:e,layout:t,registerComponent:n}=r,i=aa(),[a]=T.useState(()=>new Map),[l]=T.useState(()=>new Map),[s]=T.useState(()=>new Map),o=T.useCallback(()=>{var f=Array.from(a.values()).reduce(Pr,[]).sort((b,S)=>{var E=De.toLower(b.name),F=De.toLower(S.name);if(E!==F)return E>F?1:-1;var N=De.toLower(b.type),y=De.toLower(S.type);return N!==y?N>y?1:-1:0}).reduce((b,S)=>((b.length===0||De.toLower(b[b.length-1].name)!==De.toLower(S.name)||De.toLower(b[b.length-1].type)!==De.toLower(S.type))&&b.push(S),b),[]),C=Array.from(l.values()).reduce(Pr,[]).sort((b,S)=>b.timestamp-S.timestamp),w=new Map(s);vt.debug("sendUpdate",{columns:f,filters:C,tableMap:w}),i(fa(e,{columns:f,filters:C,tableMap:w}))},[i,e,a,l,s]),d=T.useCallback((f,C)=>{vt.debug2("handleColumnsChanged",f,C),a.set(f,[].concat(C)),o()},[a,o]),h=T.useCallback((f,C)=>{vt.debug2("handleFiltersChanged",f,C),l.set(f,[].concat(C)),o()},[l,o]),c=T.useCallback((f,C)=>{vt.debug2("handleTableChanged",f,C),s.set(O.getIdFromPanel(f),C),o()},[s,o]),m=T.useCallback(f=>{vt.debug2("handlePanelUnmount",f),a.delete(f),l.delete(f),s.delete(O.getIdFromPanel(f)),o()},[a,l,s,o]),p=T.useCallback(f=>{var{title:C="DropdownFilter",metadata:w={},panelState:b=null,id:S=Se.generate(),focusElement:E=O.DEFAULT_FOCUS_SELECTOR,createNewStack:F=!1,dragEvent:N=null}=f,y={type:"react-component",component:Ge.COMPONENT,props:{id:S,metadata:w,panelState:b,localDashboardId:e},title:C,id:S},{root:P}=t;O.openComponent({root:P,config:y,focusElement:E,createNewStack:F,dragEvent:N})},[t,e]),g=T.useCallback(f=>{var{title:C="InputFilter",metadata:w={},panelState:b=null,id:S=Se.generate(),focusElement:E=O.DEFAULT_FOCUS_SELECTOR,createNewStack:F=!1,dragEvent:N=void 0}=f,y={type:"react-component",component:it.COMPONENT,props:{id:S,metadata:w,panelState:b,localDashboardId:e},title:C,id:S},{root:P}=t;O.openComponent({root:P,config:y,focusElement:E,createNewStack:F,dragEvent:N})},[t,e]),v=T.useCallback(f=>{var{title:C="FilterSets",metadata:w={},panelState:b=null,id:S=Se.generate(),focusElement:E=O.DEFAULT_FOCUS_SELECTOR,createNewStack:F=!1,dragEvent:N=null}=f,y={type:"react-component",component:Vt.COMPONENT,props:{id:S,metadata:w,panelState:b,localDashboardId:e},title:C,id:S},{root:P}=t;O.openComponent({root:P,config:y,focusElement:E,createNewStack:F,dragEvent:N})},[t,e]);return T.useEffect(function(){var C=[n(Ge.COMPONENT,Ge),n(it.COMPONENT,it),n(Vt.COMPONENT,Vt)];return()=>{C.forEach(w=>w())}},[n]),Me(t.eventHub,X.COLUMNS_CHANGED,d),Me(t.eventHub,X.FILTERS_CHANGED,h),Me(t.eventHub,X.TABLE_CHANGED,c),Me(t.eventHub,X.OPEN_DROPDOWN,p),Me(t.eventHub,X.OPEN_INPUT,g),Me(t.eventHub,X.OPEN_FILTER_SET_MANAGER,v),Me(t.eventHub,ae.UNMOUNT,m),null}var yo={name:"FilterPlugin",type:He.DASHBOARD_PLUGIN,component:Li};const Po=yo;var To=Z.module("@deephaven/app-utils/useTablePlugin");function Oi(){var r=ri(),e=T.useCallback(t=>{var n=r.get(t);if(n!=null){if(ga(n))return n.component;if(Ca(n))return n.TablePlugin}var i="Unable to find table plugin ".concat(t,".");throw To.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 Fo(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 Ri(r,e,t){var n=ht(),i=Oi(),a=T.useMemo(()=>({loadPlugin:i,localDashboardId:e,makeModel:function(){var l=Fo(function*(){var o=yield r();return yn.makeModel(n,o)});function s(){return l.apply(this,arguments)}return s}(),metadata:t}),[n,r,e,i,t]);return a}function Fr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Dr(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Fr(Object(t),!0).forEach(function(n){Do(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Fr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function 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=No(r,"string");return typeof e=="symbol"?e:String(e)}function No(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Rn=T.forwardRef((r,e)=>{var{localDashboardId:t,fetch:n,metadata:i}=r,a=Ri(n,t,i);return u.jsx(st,Dr(Dr({ref:e},r),a))});Rn.displayName="GridPanelPlugin";const Lo=Rn;function Mr(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function Oo(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Mr(a,n,i,l,s,"next",o)}function s(o){Mr(a,n,i,l,s,"throw",o)}l(void 0)})}}function Ii(r){var e=ht(),[t,n]=T.useState(),{fetch:i}=r;return T.useEffect(()=>{var a=!1;function l(){return s.apply(this,arguments)}function s(){return s=Oo(function*(){var o=yield i(),d=yield yn.makeModel(e,o);a||n(d)}),s.apply(this,arguments)}return l(),()=>{a=!0}},[e,i]),t?u.jsx(Sn,{model:t}):null}var Ro={name:"IrisGridPanel",title:"Table",type:He.WIDGET_PLUGIN,component:Ii,panelComponent:Rn,supportedTypes:["Table","TreeTable","HierarchicalTable","PartitionedTable"],icon:Ja};const Io=Ro;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 $e(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){_i(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 _i(r,e,t){return e=_o(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function _o(r){var e=ko(r,"string");return typeof e=="symbol"?e:String(e)}function ko(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function ki(r){var e=r;return typeof e.getCoordinateForColumn=="function"}function Lr(r){var e=r;return ki(r)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function Or(r){return r.description==null||!r.description.startsWith("Preview of type: ")}var ft=Z.module("LinkerUtils");class Jt{static getLinkType(e,t,n){var i;if(e?.panelId==null||t?.panelId==null||e.panelId===t.panelId||n!=null&&n!==e.panelId&&n!==t.panelId)return ft.debug2("Incompatible panel ids",e,t,n),"invalid";if(e.panelComponent==null||t.panelComponent==null)return ft.error("PanelComponent should not be null",e,t),"invalid";var a=(i=Jt.ALLOWED_LINKS.get(e.panelComponent))===null||i===void 0?void 0:i.includes(t.panelComponent);if(a===void 0||!a)return ft.debug2("Incompatible panel components",e,t),"invalid";var{columnType:l}=e,{columnType:s}=t,o=s===null||A.isCompatibleType(l,s);if(!o)return ft.debug2("Incompatible type",l,s),"invalid";switch(t.panelComponent){case O.getComponentName(Ot):return"chartLink";case O.getComponentName(st):return"tableLink";case O.getComponentName(Ge):return"filterSource"}return ft.debug2("Incompatible target panel component",t.panelComponent),"invalid"}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($e($e({},a),{},{id:Se.generate(),start:$e($e({},a.start),{},{panelId:n})})):((l=a.end)===null||l===void 0?void 0:l.panelId)===t&&i.push($e($e({},a),{},{id:Se.generate(),end:$e($e({},a.end),{},{panelId:n})}))}),i}}_i(Jt,"ALLOWED_LINKS",new Map([[O.getComponentName(st),[O.getComponentName(st),O.getComponentName(Ot),O.getComponentName(Ge)]]]));const We=Jt;function xi(r,e,t){return e=xo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function xo(r){var e=Ao(r,"string");return typeof e=="symbol"?e:String(e)}function Ao(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 jo=Z.module("LinkerLink"),Rr=.015,Ir=1.5,Ai=12,ji=12,_r=2,jt=Math.sqrt((ji*.5)**2+Ai**2),kr=Math.asin(ji*.5/Ai),xr=15,Ue=Math.PI*.5;class at extends T.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(A.isNumberType(e)||A.isCharType(e))return sl(t);if(A.isTextType(e))return ol(t);if(A.isDateType(e))return dl(t);if(A.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 jo.warn(n),""}}constructor(e){super(e),xi(this,"getOperators",k((t,n)=>{var{onOperatorChanged:i}=this.props,a=A.getFilterTypes(n);return A.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=A.getFilterOperatorString(l),[{title:at.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,m=Math.sqrt((i-l)**2+(a-s)**2),p=Math.atan2(s-a,l-i),g=Math.sin(p),v=Math.cos(p)+2,f=window.innerWidth,C=window.innerHeight,w=0,b=0,S=Math.max(w,Math.min(i+(l-i)/2+g*(m*Rr)**Ir,f)),E=Math.max(b,Math.min(a+(s-a)/2+v*(m*Rr)**Ir,C)),F="M ".concat(i," ").concat(a," Q ").concat(S," ").concat(E," ").concat(l," ").concat(s),N="M ".concat(w," ").concat(b," L ").concat(w," ").concat(C," L ").concat(f," ").concat(C," L ").concat(f," ").concat(b,` z
4
+ `).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:m,widgetType:p,widgetName:g,description:v,onClearAllFilters:f,onHide:C,onFocus:w,onBlur:b,onResize:S,onShow:E,onTabBlur:F,onTabFocus:N,onTabClicked:y}=this.props,{isPanelDisconnected:P,isWidgetDisconnected:D,isPanelInactive:R}=this.state,j=this.getErrorMessage(),G=m??this.getCachedRenderTabTooltip(c,l,p,g,v),U=[{title:"Copy ".concat(p," Name"),group:qr.groups.medium,order:20,action:this.handleCopyName}];return u.jsxs(Ft,{className:pe(t,{disconnected:P||D||o,inactive:R}),componentPanel:n,glContainer:l,glEventHub:s,onClearAllFilters:f,onHide:C,onFocus:w,onBlur:b,onResize:S,onShow:E,onSessionClose:this.handleSessionClosed,onSessionOpen:this.handleSessionOpened,onTabBlur:F,onTabFocus:N,onTabClicked:y,renderTabTooltip:G,errorMessage:j,isLoaded:i,isLoading:a,isClonable:d,isRenamable:h,additionalActions:U,children:[e,R&&u.jsx("div",{className:"fill-parent-absolute"})]})}}fi(gi,"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 Lt=gi;function Ci(r){var{columnMap:e,inputFilterMap:t,linkedColumnMap:n,onAdd:i,onOpenLinker:a,waitingFilterMap:l,waitingInputMap:s}=r,o=T.useMemo(()=>{var g=Array.from(s.keys()),v=g.find(w=>t.get(w)!=null),f=g.find(w=>n.get(w)!=null),C=De.join(g.map(w=>'"'.concat(w,'"')));return v!=null&&v&&f!=null&&f?"Use a filter control or linked table to set a value for ".concat(C):v!=null&&v?"Set a filter control value for ".concat(C):"Double click a row in a linked table to set a value for ".concat(C)},[t,n,s]),d=T.useMemo(()=>Array.from(e.values()),[e]),h=T.useCallback(g=>{g.stopPropagation(),g.preventDefault(),i(Array.from(l.values()))},[i,l]),c=T.useCallback(g=>{g.stopPropagation(),g.preventDefault(),a()},[a]),m=l.size>0,p=!m&&s.size>0;return u.jsx("div",{className:"chart-panel-overlay chart-filter-overlay",children:u.jsxs("div",{className:pe("chart-panel-overlay-content chart-filter-overlay-content",{"chart-filter-waiting-filter":m},{"chart-filter-waiting-input":p}),children:[m&&u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"info-message",children:"This plot requires a filter control to be added to the layout or a table link to be created on the following columns:"}),u.jsx("div",{className:"waiting-filter-list",children:d.map(g=>{var v=l.has(g.name),f=v?Ba:za;return u.jsxs("div",{className:pe("waiting-filter-item",{"is-invalid":v}),children:[u.jsx(ce,{icon:f}),g.name]},g.name)})}),u.jsxs("div",{children:[u.jsx(Gn,{onClick:h,className:"btn-primary",children:"Add Input Filters"}),u.jsx(Gn,{onClick:c,className:"btn-primary",children:"Open Linker Tool"})]})]}),p&&u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"info-message",children:"Waiting for User Input"}),u.jsx("div",{className:"",children:o})]})]})})}Ci.propTypes={columnMap:I.instanceOf(Map).isRequired,inputFilterMap:I.instanceOf(Map).isRequired,linkedColumnMap:I.instanceOf(Map).isRequired,onAdd:I.func.isRequired,onOpenLinker:I.func.isRequired,waitingFilterMap:I.instanceOf(Map).isRequired,waitingInputMap:I.instanceOf(Map).isRequired};function Tt(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:pe("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(ci,{className:pe("btn-chart-column-selector",Tt.makeButtonClassName(a.name)),onClick:()=>t(a.name),onMouseEnter:()=>{n&&n(a)},onMouseLeave:i,disabled:!a.isValid,isLinked:a.isActive,children:a.name},a.name))})]})})}Tt.makeButtonClassName=r=>"btn-chart-column-selector-".concat(r);Tt.defaultProps={onMouseEnter:()=>{},onMouseLeave:()=>{}};function rt(r){return r.settings!==void 0}function Fn(r){return r.figure!==void 0}function bi(r){if(r==null)return!1;var{settings:e,tableSettings:t}=r;return typeof e=="object"&&typeof t=="object"}function Si(r){return r!=null&&bi(r.panelState)}function lr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function sr(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?lr(Object(t),!0).forEach(function(n){fe(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):lr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function fe(r,e,t){return e=is(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function is(r){var e=as(r,"string");return typeof e=="symbol"?e:String(e)}function as(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var ie=Z.module("ChartPanel"),ls=150;function ss(r){return r.inputFilters!=null}function os(r){return r.panelState!=null}class Yt extends T.Component{constructor(e){super(e),fe(this,"panelContainer",void 0),fe(this,"pending",void 0),fe(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})),fe(this,"getWaitingFilterMap",k((l,s,o,d,h)=>{if(!l)return new Map;var c=new Map(s);return o.forEach((m,p)=>{c.delete(p)}),h.forEach((m,p)=>{c.delete(p)}),d.forEach((m,p)=>{c.delete(p)}),c})),fe(this,"getInputFilterColumnMap",k((l,s)=>{for(var o=new Map,d=0;d<s.length;d+=1){var h=s[d],{name:c,type:m}=h,p=l.get(c);p!=null&&p.type===m&&o.set(c,h)}return o})),fe(this,"getLinkedColumnMap",k((l,s)=>{for(var o=new Map,d=O.getIdFromPanel(this),h=0;h<s.length;h+=1){var c=s[h],m=null;if(c.start!=null&&c.start.panelId===d&&l.has(c.start.columnName)?m=c.start.columnName:c.end&&c.end.panelId===d&&l.has(c.end.columnName)&&(m=c.end.columnName),m!=null&&l.has(m)){var p=l.get(m);M(p),o.set(m,p)}}return o})),fe(this,"getSelectorColumns",k((l,s,o)=>Array.from(l.values()).map(d=>({name:d.name,type:d.type,isValid:o?o(this,d):!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=Ze(this.updateModelFromSource.bind(this),ls),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.panelContainer=oe.createRef(),this.pending=new Yr;var{metadata:t,panelState:n}=e,{filterValueMap:i=[],settings:a={}}=n??{};this.state={settings:a,error:void 0,isActive:!1,isDisconnected:!1,isLoading:!1,isLoaded:!1,isLinked:t!=null&&rt(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){ie.debug("startListeningToSource",e);var{model:t}=this.state;M(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){ie.debug("stopListeningToSource",e);var{model:t}=this.state;M(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;t.emit($t.COLUMN_SELECTED,this,n.get(e))}handleColumnMouseEnter(e){var{type:t,name:n}=e,{columnSelectionValidator:i}=this.props;ie.debug("handleColumnMouseEnter",i,t,n),i&&i(this,{type:t,name:n})}handleColumnMouseLeave(){var{columnSelectionValidator:e}=this.props;ie.debug("handleColumnMouseLeave",e),e&&e(this,void 0)}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(Ce.LINKER)}handleReconnect(){this.setState({isDisconnected:!1,error:void 0}),this.sendColumnChange(),this.updateColumnFilters()}handleLoadSuccess(e){ie.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){Ne.isCanceled(e)||(ie.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){ie.debug2("updateModelFromSource ignoring",n,i,t);return}var{dh:a}=i;if(this.pending.cancel(),rt(e)){var{settings:l}=e;this.pending.add(a.plot.Figure.create(new te(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&&ss(e.props)&&os(e.state)){var{inputFilters:l}=e.props,{panelState:s}=e.state;s!=null&&(a=B.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=sr(sr({},n),e);return ie.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(X.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;t.emit(X.COLUMNS_CHANGED,this,Array.from(e.getFilterColumnMap().values()))}}getCoordinateForColumn(e){var t,n=Tt.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){ie.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,m=i.get(d);if(!(m==null||m.type!==h)){if(c.length<1){ie.debug("Ignoring empty filterList for column",d);return}var{value:p}=c[0];s.set(d,p),a.get(d)!==p&&(l===null&&(l=new Map(a)),l.set(d,p))}}),{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],m=i.get(d);m!=null&&m.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 ie.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 m=l.get(d);if(a.has(d)){var p=a.get(d);p!==m&&p!=null&&(s=!0,l.set(d,p))}else s=!0,l.delete(d)}}return ie.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;M(n);var i=this.getWaitingInputMap(n.isFilterRequired(),e,t);if(n.setFilter(t),t.size>0&&i.size===0){var a=n.getDefaultTitle(),l=De.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),ie.debug2("updateFilters filters set",t),this.setState({isLoading:!0})}else ie.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:m,filterMap:p,error:g,model:v,isActive:f,isDisconnected:C,isLoaded:w,isLoading:b}=this.state,S;rt(o)?S=o.table:Fn(o)?S=o.figure:S=o.name;var E=this.getInputFilterColumnMap(m,a),F=this.getLinkedColumnMap(m,s),N=v!=null?this.getWaitingInputMap(v.isFilterRequired(),m,p):new Map,y=v!=null?this.getWaitingFilterMap(v.isFilterRequired(),m,p,F,E):new Map,P=g!=null?"Unable to open chart. ".concat(g):void 0,D=N.size>0,R=m.size>0&&l;return u.jsx(Lt,{className:pe("iris-chart-panel",{"input-required":D}),componentPanel:this,glContainer:n,glEventHub:i,onHide:this.handleHide,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabBlur:this.handleTabBlur,onTabFocus:this.handleTabFocus,errorMessage:P,isDisconnected:C,isLoading:b,isLoaded:w,widgetName:(e=S)!==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:w&&v&&u.jsx(pi,{isActive:f,model:v,settings:d,onDisconnect:this.handleDisconnect,onReconnect:this.handleReconnect,onUpdate:this.handleUpdate,onError:this.handleError,onSettingsChanged:this.handleSettingsChanged,Plotly:h,containerRef:c})}),u.jsx(cn,{in:D&&!R&&!b,mountOnEnter:!0,unmountOnExit:!0,children:u.jsx(Ci,{inputFilterMap:E,linkedColumnMap:F,onAdd:this.handleFilterAdd,onOpenLinker:this.handleOpenLinker,columnMap:m,waitingFilterMap:y,waitingInputMap:N})}),u.jsx(cn,{in:R,mountOnEnter:!0,unmountOnExit:!0,children:u.jsx(Tt,{columns:this.getSelectorColumns(m,F,t),onColumnSelected:this.handleColumnSelected,onMouseEnter:this.handleColumnMouseEnter,onMouseLeave:this.handleColumnMouseLeave})})]})})}}fe(Yt,"defaultProps",{columnSelectionValidator:null,isLinkerActive:!1,source:null,sourcePanel:null,panelState:null,settings:{},containerRef:null});fe(Yt,"displayName","ChartPanel");fe(Yt,"COMPONENT","ChartPanel");var ds=(r,e)=>{var{localDashboardId:t,metadata:n}=e,i;n!=null&&rt(n)&&(i=n.sourcePanelId);var a=Ht(r,t),l=Xr(r,t),s=fn(r),o=Bt(r,t),d=s===Ce.LINKER&&o===void 0;return{columnSelectionValidator:zt(r,t),isLinkerActive:d,inputFilters:Kt(r,t),links:Dt(r,t),source:i!=null?a.get(i):void 0,sourcePanel:i!=null?l.get(i):void 0,settings:Wt(r)}},us=Ye(ds,{setActiveTool:Zr,setDashboardIsolatedLinkerPanelId:vn},null,{forwardRef:!0})(Yt);const Ot=us;function ge(r,e,t){return e=hs(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function hs(r){var e=cs(r,"string");return typeof e=="symbol"?e:String(e)}function cs(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var _t=Z.module("DropdownFilter"),ps=150;class xe extends T.Component{constructor(e){super(e),ge(this,"dropdownRef",void 0),ge(this,"getCompatibleColumns",k((a,l)=>a!=null?l.filter(s=>{var{type:o}=s;return o!==void 0&&A.isCompatibleType(o,a.columnType)}):[])),ge(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]})),ge(this,"getSelectedOptionIndex",k((a,l)=>a.indexOf(l))),ge(this,"getValueOptions",k(a=>[u.jsx("option",{value:"-1",children:xe.PLACEHOLDER},"-1"),...a.map((l,s)=>u.jsx("option",{value:s,children:l??"(null)"},"".concat(s,"/").concat(l)))])),ge(this,"getItemLabel",he((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})),ge(this,"sendUpdate",Ze(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s??void 0})},ps)),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=oe.createRef();var{column:t,isValueShown:n,value:i}=e;this.state={column:t,id:Se(),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(_t.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(),_t.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]:_t.debug2("Selected default item"),_t.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:m,disableCancel:p,id:g,isValueShown:v,selectedColumn:f,value:C}=this.state,w=l===null,b=this.getCompatibleColumns(l,t),S=l!=null,E=(e=l?.columnName)!==null&&e!==void 0?e:xe.SOURCE_BUTTON_PLACEHOLDER,F=m!=null?"".concat(m.name," Filter"):null,[N,y]=this.getColumnOptions(b,f),P=this.getValueOptions(h),D=this.getSelectedOptionIndex(h,C),R=!S||f==null,j=v&&!i,G="source-column-btn-".concat(g),U="filter-column-select-".concat(g);return u.jsxs(wn,{className:"dropdown-filter fill-parent-absolute",isFlipped:j,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:G,children:"Source Column"}),u.jsx(ci,{id:G,isLinked:S,onClick:s,onMouseEnter:o,onMouseLeave:d,className:xe.SOURCE_BUTTON_CLASS_NAME,disabled:n,children:E}),u.jsx("div",{className:"text-muted small",children:"Select a source column for the list by linking to a table."}),u.jsx("label",{htmlFor:U,children:"Filter Column"}),u.jsx(yt,{id:U,value:String(y),className:"custom-select",onChange:this.handleColumnChange,disabled:w,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}),S&&u.jsxs("div",{className:"dropdown-filter-settings-buttons",children:[u.jsx(V,{kind:"secondary",type:"button",onClick:this.handleSettingsCancel,disabled:p||v||i,tooltip:i?"Cancel disabled while linker open":void 0,children:"Cancel"}),u.jsx(V,{kind:"primary",type:"button",className:"ml-2",onClick:this.handleSettingsSave,disabled:R||v||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:F})}),u.jsxs("div",{className:"dropdown-filter-card-content",children:[u.jsx("div",{className:"dropdown-filter-value-input d-flex flex-column justify-content-center",children:u.jsx(yt,{className:"custom-select",value:String(D),ref:this.dropdownRef,onChange:this.handleValueChange,onKeyDown:this.handleDropdownKeyPress,title:"Select Value",children:P})}),c&&u.jsx("div",{className:"error-message mt-3 text-center",children:c})]}),u.jsx("div",{className:"dropdown-filter-menu",children:u.jsx(V,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:u.jsx(ce,{icon:Cn,transform:"grow-4"}),tooltip:"Dropdown Filter Settings"})})]})})]})}}ge(xe,"defaultProps",{column:null,disableLinking:!1,isLinkerActive:!1,isLoaded:!1,isValueShown:!1,settingsError:null,source:null,value:"",values:[],onColumnSelected:()=>{},onSourceMouseEnter:()=>{},onSourceMouseLeave:()=>{}});ge(xe,"PLACEHOLDER","Select a value...");ge(xe,"SOURCE_BUTTON_CLASS_NAME","btn-dropdown-filter-selector");ge(xe,"SOURCE_BUTTON_PLACEHOLDER","Select a column");const or=xe;function ne(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=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 K=Z.module("DropdownFilterPanel"),fs=250,gs=(r,e)=>{var{localDashboardId:t}=e,n=O.getIdFromPanel({props:e}),i=Ht(r,t),a=Dt(r,t),l=fn(r),s=Bt(r,t),o=l===Ce.LINKER&&(s===void 0||s===n),d=l===Ce.LINKER&&s!==void 0&&s!==n;return{columns:gn(r,t),columnSelectionValidator:zt(r,t),dh:Qr(r),isLinkerActive:o,disableLinking:d,settings:Wt(r),panelTableMap:i,dashboardLinks:a}},Cs=Ye(gs,null,null,{forwardRef:!0});class be extends T.Component{constructor(e){super(e),ne(this,"dateTimeFormatter",void 0),ne(this,"dropdownFilterRef",void 0),ne(this,"panelContainer",void 0),ne(this,"pending",void 0),ne(this,"cleanup",void 0),ne(this,"columnFormats",void 0),ne(this,"getCachedValues",he((c,m,p)=>{var{type:g,name:v}=m;return g!==void 0&&A.isDateType(g)?c.map(f=>this.dateTimeFormatter.format(f)):c.map(f=>f!=null&&g!=null?p.getFormattedString(f,g,v):null)})),ne(this,"getCachedPanelLinks",he((c,m)=>{var p=O.getIdFromPanel(m);return K.debug("getCachedPanelLinks",c,p),c.filter(g=>{var v;return((v=g.end)===null||v===void 0?void 0:v.panelId)===p})})),ne(this,"getCachedSource",he(c=>{K.debug("getCachedSource",c);var m;if(c.length>0){var[p]=c;m=p.start,c.length>1&&K.error("Filter has more that one link",c)}return m})),ne(this,"getCachedSourceTable",he((c,m)=>{var p;if(K.debug("getCachedSourceTable",c,m),m==null)return null;var{panelId:g}=m;return(p=c.get(g))!==null&&p!==void 0?p:null})),ne(this,"getCachedSourceColumn",he((c,m)=>{var p;return K.debug("getCachedSourceColumn",c,m),c==null||m==null?null:(p=c.columns.find(g=>{var{name:v,type:f}=g;return v===m.columnName&&f===m.columnType}))!==null&&p!==void 0?p:null})),this.handleChange=Ze(this.handleChange.bind(this),fs),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=oe.createRef(),this.panelContainer=oe.createRef(),this.pending=new Yr;var{dh:t,panelState:n,settings:i}=e;this.columnFormats=pn.getColumnFormats(i),this.dateTimeFormatter=new Jr(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 Ae(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&&(K.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(or.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>be.MAX_TABLE_SIZE)return"Table too large, must have fewer than ".concat(be.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;K.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;K.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:m,timestamp:p,wasFlipped:g,skipUpdate:v}=d,f=m!=null&&n!==m.isValueShown&&a===m.name&&l===m.type&&i===m.value;return s=(h=!v&&n&&(!f||!g))!==null&&h!==void 0?h:!1,s||(o=p),{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(){K.debug("handleColumnSelected");var{glEventHub:e}=this.props;e.emit(X.COLUMN_SELECTED,this,be.SOURCE_COLUMN)}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){K.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];K.debug("sendUpdate",{name:e,type:t,value:n,timestamp:i,excludePanelIds:d}),s.emit(X.FILTERS_CHANGED,this,{name:e,type:t,value:n??"=null",timestamp:i,excludePanelIds:d})}updateValuesTable(){var{dashboardLinks:e,panelTableMap:t}=this.props,n=this.getSource(e),i=this.getSourceTable(t,e);if(K.debug("updateValuesTable",n,i),this.setState({values:[],valuesTable:void 0,error:null}),n==null){K.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=>{Ne.isCanceled(a)||(K.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(K.debug("applySourceSorts",i?.sort),n==null||i==null){K.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(K.debug("applySourceFilters",i?.filter),n==null||i==null){K.debug("Table not initialized");return}var a=[...i.filter];n.applyFilter(a),this.setViewport(n)}updateViewportListener(e){var{dh:t}=this.props;if(K.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){K.error("values column is null");return}e.setViewport(0,be.MAX_TABLE_SIZE-1,[n])}updateFormatterSettings(e){var{dh:t}=this.props,n=pn.getColumnFormats(e);Kr(this.columnFormats,n)||(this.columnFormats=n,this.setState({formatter:new Ae(t,n)}))}handleValuesTableUpdate(e){var{detail:t}=e,{rows:n}=t,{dashboardLinks:i}=this.props,{valuesTable:a}=this.state;if(!a){K.error("valuesTable is null");return}var l=this.getValuesColumn(a,i);if(!l){K.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,be.SOURCE_COLUMN)}handleSourceMouseLeave(){var{columnSelectionValidator:e}=this.props;e&&e(this,void 0)}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:m,valuesColumn:p,isLoading:g,isLoaded:v}=this.state,f=this.getSource(t),C=this.getSettingsErrorMessage(),w=this.getPanelErrorMessage(),b=v&&p!=null?this.getCachedValues(m,p,o):[];return u.jsx(Lt,{errorMessage:w,isLoading:g,isLoaded:v,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(or,{ref:this.dropdownFilterRef,column:s,columns:e,isValueShown:h,isLinkerActive:l,disableLinking:n,isLoaded:v,settingsError:C,source:f,value:c,values:b,onChange:this.handleChange,onColumnSelected:this.handleColumnSelected,onSourceMouseEnter:this.handleSourceMouseEnter,onSourceMouseLeave:this.handleSourceMouseLeave})})})}}ne(be,"displayName","DropdownFilterPanel");ne(be,"COMPONENT","DropdownFilterPanel");ne(be,"MAX_TABLE_SIZE",256);ne(be,"SOURCE_COLUMN",Object.freeze({name:"FilterSource",type:null}));var bs=Cs(be);const Ge=bs;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 kt(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){bt(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 bt(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=ws(r,"string");return typeof e=="symbol"?e:String(e)}function ws(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=Z.module("FilterSetManager"),Es="Enter name...",ur="No Available Filter Sets";class Ut extends T.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),bt(this,"renameInputRef",oe.createRef()),bt(this,"dropdownRef",oe.createRef()),bt(this,"editDropdownRef",oe.createRef()),bt(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;W.debug("initSettingsScreen",e,t),this.setState({modifiedFilterSets:[...e],editId:t})}updateSelectedId(){var{isValueShown:e,filterSets:t,selectedId:n,onChange:i}=this.props;if(W.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:[]}),W.debug("Update sets",n,i),t(n),n.length>0&&e({isValueShown:!0,selectedId:i})}handleCaptureNewSet(){var{getFilterState:e}=this.props;Ut.animateScreenFlash();var t=Se(),n=e(),i={id:t,title:"",panels:n};W.debug("handleSetCreate",i),this.setState({nameInputValue:"",nameInputError:void 0,renameSet:i})}handleRenameCancel(){this.setState({renameSet:void 0})}handleRestoreFullStateChange(e){this.setState({restoreFullState:e.target.value==="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 W.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 W.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){W.error("Renamed set undefined.");return}var l=this.getNameError(t);if(W.debug("handleRenameConfirm",t,l),l!==void 0){this.setState({nameInputError:l});return}var s=(e=t?.trim())!==null&&e!==void 0?e:"",o=kt(kt({},n),{},{title:s,restoreFullState:a}),d=i.findIndex(c=>{var{id:m}=c;return m===n.id}),h=[...i];d>=0?(h[d]=o,W.debug("Renamed existing set",h)):(h.push(o),W.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 W.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 W.debug("Deleted selected set",t,n,a),W.debug("New selection",l,s),{modifiedFilterSets:a,editId:s}})}handleSetUpdate(){var{getFilterState:e}=this.props;Ut.animateScreenFlash();var t=e();this.setState(n=>{var{modifiedFilterSets:i,editId:a}=n;if(a===void 0)return W.error("Filter for update not selected."),null;var l=[...i],s=l.findIndex(o=>{var{id:d}=o;return d===a});return s<0?(W.error("Selected set for update not found."),null):(l[s]=kt(kt({},l[s]),{},{panels:t}),W.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 W.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){W.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){W.debug("No filter selected");return}var i=n.find(a=>{var{id:l}=a;return l===e});if(i===void 0){W.debug("Selected id not found in filterSets",e,n);return}W.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),m=a.length===0,p=!h&&m&&o.length===0,g=!h&&!p,v=u.jsxs("div",{className:"fa-layers mr-3",children:[u.jsx(ce,{icon:Vn,mask:$n,transform:"shrink-1 down-5 right-7"}),u.jsx(ce,{icon:qa,className:"text-primary",transform:"shrink-6 down-5 right-7"})]}),f=u.jsxs("div",{className:"fa-layers",children:[u.jsx(ce,{icon:Vn,mask:$n,transform:"shrink-1 down-5 right-7"}),u.jsx(ce,{icon:Za,transform:"shrink-1 down-5 right-7"})]});return u.jsx("div",{className:"filter-set-manager fill-parent-absolute",children:u.jsxs(wn,{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:[p&&u.jsxs("div",{children:[u.jsx(V,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:v,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:Es,value:e,ref:this.renameInputRef,onChange:this.handleNameInputChange,onKeyPress:this.handleNameInputKeyPress,spellCheck:"false"}),u.jsx(V,{"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:Ka}),u.jsx(V,{"data-testid":"rename-cancel-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameCancel,tooltip:"Cancel",icon:Wa})]}),t!==void 0&&u.jsx("div",{className:"error-message",children:t})]}),u.jsx("div",{className:"form-group",children:u.jsxs(al,{onChange:this.handleRestoreFullStateChange,value:"".concat(l),children:[u.jsx(Hn,{value:"false",children:"Restore only filters"}),u.jsx(Hn,{value:"true",children:"Restore full table state"})]})})]}),g&&u.jsxs("div",{className:"filter-set-manager-settings-grid-1",children:[u.jsxs("div",{className:"form-group",children:[u.jsx("label",{children:"Edit filter sets"}),u.jsxs("div",{className:"filter-select-container",children:[u.jsxs(yt,{"data-testid":"settings-card-filter-select",ref:this.editDropdownRef,value:n??"-1",className:"custom-select filter-value-select",onChange:this.handleEditDropdownChange,disabled:m,children:[m&&u.jsx("option",{value:"-1",disabled:!0,children:ur}),a.map(C=>{var{id:w,title:b}=C;return u.jsx("option",{value:w,children:b},w)})]}),u.jsx(V,{kind:"ghost",onClick:this.handleSetUpdate,disabled:m,icon:f,tooltip:"Update"}),u.jsx(V,{kind:"ghost",onClick:this.handleSetEdit,disabled:m,icon:di,tooltip:"Edit"}),u.jsx(V,{kind:"ghost",onClick:this.handleSetDelete,disabled:m,icon:bn,tooltip:"Delete"})]})]}),u.jsx("div",{children:u.jsx(V,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:v,children:"Capture new filter set"})}),u.jsxs("div",{className:"py-3 text-right",children:[u.jsx(V,{kind:"secondary",onClick:this.handleSettingsCancel,children:"Cancel"})," ",u.jsx(V,{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(yt,{"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:ur}),o.map(C=>{var{id:w,title:b}=C;return u.jsx("option",{value:w,children:b},w)})]}),u.jsx(V,{"data-testid":"filter-apply-button",kind:"ghost",onClick:this.handleFilterApply,icon:ui,tooltip:"Apply Filter Set"})]})})}),u.jsx("div",{className:"filter-set-manager-menu",children:u.jsx(V,{kind:"ghost",className:"btn btn-link btn-link-icon m-2 px-2",onClick:this.handleSettingsClick,tooltip:"Settings",icon:u.jsx(ce,{icon:Cn,transform:"grow-4"})})})]},"back")]})})}}const wi=Ut;function Dn(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"),m=(a=l?.columnCount)!==null&&a!==void 0?a:0,p=l?.displayString(m,"long");return u.jsxs(Nt,{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:p}),u.jsx("span",{children:"Number of Rows"}),u.jsx("span",{className:"tab-tooltip-statistic-value",children:c})]})}Dn.propTypes={glContainer:Wr.Container.isRequired,widgetName:I.string.isRequired,description:I.string};Dn.defaultProps={description:null};function Ei(r){if(r==null)return!1;var e=r;return typeof e.table=="string"}function yi(r){if(r==null)return!1;var e=r;return typeof e.name=="string"}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 Ke(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){Y(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 Y(r,e,t){return e=ys(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ys(r){var e=Ps(r,"string");return typeof e=="symbol"?e:String(e)}function Ps(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 Fe=Z.module("IrisGridPanel"),Ts=500;function cr(r){if(r==null)throw new Error("No metadata provided");if(yi(r))return r.name;if(Ei(r))return r.table;throw new Error("Unable to determine table name from metadata: ".concat(JSON.stringify(r)))}class lt extends T.PureComponent{constructor(e){super(e),Y(this,"irisGrid",void 0),Y(this,"pluginRef",void 0),Y(this,"modelPromise",void 0),Y(this,"irisGridState",void 0),Y(this,"gridState",void 0),Y(this,"pluginState",void 0),Y(this,"irisGridUtils",void 0),Y(this,"getGridInputFilters",k((n,i)=>B.getInputFiltersForColumns(n,i.filter(a=>{var{value:l,excludePanelIds:s}=a,o=O.getIdFromPanel(this);return l!=null&&(s==null||o!=null&&!s.includes(o))})))),Y(this,"getAlwaysFetchColumns",k((n,i)=>{for(var a=O.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]})),Y(this,"getPluginContent",k((n,i,a)=>!i||!qe(i)||n==null||i.table==null?null:u.jsx("div",{className:"iris-grid-plugin",children:u.jsx(n,{ref:this.pluginRef,filter:this.handlePluginFilter,fetchColumns:this.handlePluginFetchColumns,model:i,table:i.table,onStateChange:this.handlePluginStateChange,pluginState:a})}))),Y(this,"getDehydratedIrisGridPanelState",k((n,i,a,l)=>B.dehydrateIrisGridPanelState(n,{isSelectingPartition:i,partitions:a,advancedSettings:l}))),Y(this,"getDehydratedIrisGridState",k((n,i,a,l,s,o,d,h,c,m,p,g,v,f,C,w,b,S,E,F,N,y)=>(M(this.irisGridUtils),this.irisGridUtils.dehydrateIrisGridState(n,{advancedFilters:a,aggregationSettings:b,customColumnFormatMap:l,isFilterBarShown:s,metrics:{userColumnWidths:C,userRowHeights:w},quickFilters:o,customColumns:d,reverseType:h,rollupConfig:c,showSearchBar:m,searchValue:p,selectDistinctColumns:g,selectedSearchColumns:v,sorts:i,invertSearchColumns:f,pendingDataMap:S,frozenColumns:E,conditionalFormats:F,columnHeaderGroups:N,partitionConfig:y})))),Y(this,"getDehydratedGridState",k((n,i,a,l,s)=>B.dehydrateGridState(n,{isStuckToBottom:l,isStuckToRight:s,movedColumns:i,movedRows:a}))),Y(this,"getCachedPanelState",k((n,i,a,l)=>({irisGridPanelState:n,irisGridState:i,gridState:a,pluginState:l}))),Y(this,"savePanelState",Ze(()=>{var{irisGridState:n,gridState:i,pluginState:a}=this;M(n);var{onPanelStateUpdate:l}=this.props,{model:s,panelState:o,isSelectingPartition:d,partitions:h,advancedSettings:c}=this.state,{advancedFilters:m,aggregationSettings:p,customColumnFormatMap:g,isFilterBarShown:v,quickFilters:f,customColumns:C,reverseType:w,rollupConfig:b,showSearchBar:S,searchValue:E,selectDistinctColumns:F,selectedSearchColumns:N,sorts:y,invertSearchColumns:P,metrics:D,pendingDataMap:R,frozenColumns:j,conditionalFormats:G,columnHeaderGroups:U,partitionConfig:re}=n;M(s),M(D);var{userColumnWidths:de,userRowHeights:we}=D;M(i);var{isStuckToBottom:Le,isStuckToRight:me,movedColumns:Ee,movedRows:ye}=i,Pe=this.getCachedPanelState(this.getDehydratedIrisGridPanelState(s,d,h,c),this.getDehydratedIrisGridState(s,y,m,g,v,f,C,w,b,S,E,F,N,P,de,we,p,R,j,G,U,re),this.getDehydratedGridState(s,Ee,ye,Le,me),a);Pe!==o&&(Fe.debug("Saving panel state",this,Pe),this.setState({panelState:Pe}),l?.(Pe))},Ts)),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=oe.createRef(),this.pluginRef=oe.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(sl.DEFAULTS),customColumns:[],customColumnFormatMap:new Map,isFilterBarShown:!1,quickFilters:new Map,sorts:[],userColumnWidths:new Map,userRowHeights:new Map,reverseType:A.REVERSE_TYPE.NONE,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 cr(e)}initModel(){this.setState({isModelReady:!1,isLoading:!0,error:null});var{makeModel:e}=this.props;this.modelPromise!=null&&this.modelPromise.cancel(),this.modelPromise=Ne.makeCancelable(e(),t=>t.close()),this.modelPromise.then(this.handleLoadSuccess).catch(this.handleLoadError)}handleLoadSuccess(e){var t=e,{panelState:n,irisGridStateOverrides:i}=this.state,a=[];if(this.irisGridUtils=new B(t.dh),n!=null){var{irisGridState:l}=n,{aggregationSettings:s,customColumns:o,selectDistinctColumns:d=[],rollupConfig:h}=Ke(Ke({},l),i);o.length>0&&a.push(c=>{c.customColumns=o}),h!=null&&h.columns.length>0&&a.push(c=>{c.rollupConfig=B.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();Fe.debug("initModelQueue",i),i&&i(n),this.setState({modelQueue:t})}handleAdvancedSettingsChange(e,t){Fe.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;M(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):!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(ue.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):(M(n),this.initModelQueue(n,i))}handleTableChanged(e){Fe.debug("handleTableChanged",e);var{glEventHub:t}=this.props,{detail:n}=e;t.emit(X.TABLE_CHANGED,this,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=O.getIdFromPanel(this),o;l&&(o=B.extractTableSettings(l,i)),n.emit(ue.CREATE_CHART,{metadata:{settings:e,sourcePanelId:s,table:a,tableSettings:o},table:qe(t)?t.table:void 0})})}handleColumnSelected(e){var{glEventHub:t}=this.props;t.emit(ue.COLUMN_SELECTED,this,e)}handleDataSelected(e,t){var{glEventHub:n}=this.props;n.emit(ue.DATA_SELECTED,this,t)}handleShow(){this.updateGrid()}handleTabClicked(){this.irisGrid.current&&this.irisGrid.current.focus()}handleError(e){Fe.error(e),this.setState({error:e,isLoading:!1})}handleDisconnect(){this.setState({error:new Error("Table disconnected"),isDisconnected:!0,isLoading:!1})}handleReconnect(){this.setState({isDisconnected:!1,error:null})}handleLoadError(e){Ne.isCanceled(e)||this.handleError(e)}modelInitialized(e){var{glEventHub:t,loadPlugin:n}=this.props;if(this.modelPromise=void 0,this.loadPanelState(e),this.setState({isModelReady:!0}),qe(e)){var{table:i}=e,{pluginName:a}=i;if(a!==""&&n!=null&&a!=null){var l=n(a);this.setState({Plugin:l})}t.emit(X.TABLE_CHANGED,this,i)}this.sendColumnsChange(e.columns)}handleClearAllFilters(){var e=this.irisGrid.current,{isDisconnected:t}=this.state;e!=null&&!t&&e.clearAllFilters()}sendColumnsChange(e){Fe.debug2("sendColumnsChange",e);var{glEventHub:t}=this.props;t.emit(X.COLUMNS_CHANGED,this,e)}startModelListening(e){e.addEventListener(_.EVENT.DISCONNECT,this.handleDisconnect),e.addEventListener(_.EVENT.RECONNECT,this.handleReconnect),e.addEventListener(_.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.addEventListener(_.EVENT.TABLE_CHANGED,this.handleTableChanged)}stopModelListening(e){e.removeEventListener(_.EVENT.DISCONNECT,this.handleDisconnect),e.removeEventListener(_.EVENT.RECONNECT,this.handleReconnect),e.removeEventListener(_.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.removeEventListener(_.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;M(l);var{metrics:d}=l.state;M(d);var{columnHeaderHeight:h,allColumnXs:c,allColumnWidths:m,right:p,columnHeaderMaxDepth:g}=d,v=a.getColumnIndexByName(e);M(v);var f=l.getVisibleColumn(v),C=(n=c.get(f))!==null&&n!==void 0?n:0,w=(i=m.get(f))!==null&&i!==void 0?i:0,b=Math.max(o.left,Math.min(f>p?o.right:o.left+C+w*.5,o.right)),S=o.top+h*g;return[b,S]}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;Fe.debug("setFilters",t,n);var{model:i,isDisconnected:a}=this.state,l=this.irisGrid.current;if(l==null||a){Fe.debug("Ignore setFilters, model disconnected");return}M(i);var{columns:s,formatter:o}=i,d=B.changeFilterColumnNamesToIndexes(i.columns,t).filter(c=>{var[m]=c;return i.isFilterable(m)}),h=B.changeFilterColumnNamesToIndexes(i.columns,n).filter(c=>{var[m]=c;return i.isFilterable(m)});M(this.irisGridUtils),l.clearAllFilters(),l.setFilters({quickFilters:this.irisGridUtils.hydrateQuickFilters(s,d,o.timeZone),advancedFilters:this.irisGridUtils.hydrateAdvancedFilters(s,h,o.timeZone)})}setStateOverrides(e){Fe.debug("setStateOverrides",e);var{irisGridState:t,gridState:n}=e;this.setState({irisGridStateOverrides:t,gridStateOverrides:n},()=>{this.initModel()})}unsetFilterValue(){}loadPanelState(e){var{panelState:t,irisGridStateOverrides:n,gridStateOverrides:i}=this.state;if(t!=null)try{var{gridState:a,irisGridState:l,irisGridPanelState:s}=t,o=Ke({},n),{quickFilters:d,advancedFilters:h}=o;d&&(o.quickFilters=B.changeFilterColumnNamesToIndexes(e.columns,d)),h&&(o.advancedFilters=B.changeFilterColumnNamesToIndexes(e.columns,h));var{isSelectingPartition:c,partitions:m,advancedSettings:p}=B.hydrateIrisGridPanelState(e,s);M(this.irisGridUtils);var{advancedFilters:g,customColumns:v,customColumnFormatMap:f,isFilterBarShown:C,quickFilters:w,reverseType:b,rollupConfig:S,aggregationSettings:E,sorts:F,userColumnWidths:N,userRowHeights:y,showSearchBar:P,searchValue:D,selectDistinctColumns:R,selectedSearchColumns:j,invertSearchColumns:G,pendingDataMap:U,frozenColumns:re,conditionalFormats:de,columnHeaderGroups:we,partitionConfig:Le}=this.irisGridUtils.hydrateIrisGridState(e,Ke(Ke({},l),o)),{isStuckToBottom:me,isStuckToRight:Ee,movedColumns:ye,movedRows:Pe}=B.hydrateGridState(e,Ke(Ke({},a),i),l.customColumns);this.setState({advancedFilters:g,advancedSettings:p,conditionalFormats:de,customColumns:v,customColumnFormatMap:f,isFilterBarShown:C,isSelectingPartition:c,movedColumns:ye,movedRows:Pe,partitions:m,quickFilters:w,reverseType:b,rollupConfig:S,aggregationSettings:E,sorts:F,userColumnWidths:N,userRowHeights:y,showSearchBar:P,searchValue:D,selectDistinctColumns:R,selectedSearchColumns:j,invertSearchColumns:G,pendingDataMap:U,frozenColumns:re,isStuckToBottom:me,isStuckToRight:Ee,columnHeaderGroups:we,partitionConfig:Le})}catch(le){Fe.error("loadPanelState failed to load panelState",t,le)}}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:m,settings:p,theme:g}=this.props,{advancedFilters:v,aggregationSettings:f,advancedSettings:C,conditionalFormats:w,customColumns:b,customColumnFormatMap:S,error:E,isDisconnected:F,isFilterBarShown:N,isSelectingPartition:y,isStuckToBottom:P,isStuckToRight:D,isLoaded:R,isLoading:j,isModelReady:G,model:U,movedColumns:re,movedRows:de,partitions:we,partitionConfig:Le,quickFilters:me,reverseType:Ee,rollupConfig:ye,sorts:Pe,userColumnWidths:le,userRowHeights:tn,showSearchBar:ve,searchValue:Te,selectDistinctColumns:Oe,selectedSearchColumns:Re,invertSearchColumns:Qe,Plugin:nn,pluginFilters:Wi,pluginFetchColumns:qi,pendingDataMap:Zi,frozenColumns:Yi,columnHeaderGroups:Xi}=this.state,Qi=E!=null?"Unable to open table. ".concat(E):void 0,kn=cr(h),xn=(e=U?.description)!==null&&e!==void 0?e:void 0,Ji=(t=c?.pluginState)!==null&&t!==void 0?t:null,ea=n??this.getPluginContent(nn,U,Ji),{permissions:ta}=m,{canCopy:na,canDownloadCsv:ra}=ta;return u.jsx(Lt,{errorMessage:Qi,isDisconnected:F,isLoading:j,isLoaded:R,className:"iris-grid-panel",glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabFocus:this.handleShow,onTabClicked:this.handleTabClicked,widgetName:kn,widgetType:"Table",description:xn,componentPanel:this,renderTabTooltip:()=>u.jsx(Dn,{model:U,widgetName:kn,glContainer:i,description:xn}),children:G&&U&&u.jsx(Sn,{advancedFilters:v,aggregationSettings:f,advancedSettings:C,alwaysFetchColumns:this.getAlwaysFetchColumns(d,qi),columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",copyCursor:"copy",customColumns:b,customColumnFormatMap:S,columnSelectionValidator:this.isColumnSelectionValid,conditionalFormats:w,inputFilters:this.getGridInputFilters(U.columns,o),applyInputFiltersOnInit:c==null,isFilterBarShown:N,isSelectingColumn:l!=null,isSelectingPartition:y,isStuckToBottom:P,isStuckToRight:D,movedColumns:re,movedRows:de,partitions:we,partitionConfig:Le,quickFilters:me,reverseType:Ee,rollupConfig:ye,settings:p,sorts:Pe,userColumnWidths:le,userRowHeights:tn,model:U,showSearchBar:ve,searchValue:Te,selectedSearchColumns:Re,selectDistinctColumns:Oe,invertSearchColumns:Qe,onColumnSelected:this.handleColumnSelected,onCreateChart:this.handleCreateChart,onDataSelected:this.handleDataSelected,onError:this.handleError,onStateChange:this.handleGridStateChange,onContextMenu:this.handleContextMenu,onAdvancedSettingsChange:this.handleAdvancedSettingsChange,customFilters:Wi,pendingDataMap:Zi,canCopy:na,canDownloadCsv:ra,ref:this.irisGrid,getDownloadWorker:s,frozenColumns:Yi,theme:g,columnHeaderGroups:Xi,children:ea})})}}Y(lt,"defaultProps",{onStateChange:()=>{},onPanelStateUpdate:()=>{}});Y(lt,"displayName","IrisGridPanel");Y(lt,"COMPONENT","IrisGridPanel");var Fs=(r,e)=>{var{localDashboardId:t=ua}=e;return{inputFilters:Kt(r,t),links:Dt(r,t),columnSelectionValidator:zt(r,t),user:da(r),settings:Wt(r)}},Ds=Ye(Fs,null,null,{forwardRef:!0})(lt);const st=Ds;function wt(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=Ns(r,"string");return typeof e=="symbol"?e:String(e)}function Ns(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var pr=Z.module("InputFilter"),Ls=150;class ot extends T.Component{constructor(e){super(e),wt(this,"inputRef",void 0),wt(this,"getItemLabel",he((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})),wt(this,"sendUpdate",Ze(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s})},Ls)),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=oe.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)];pr.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;pr.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?ot.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(wn,{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(yt,{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(V,{kind:"secondary",onClick:this.handleSettingsCancel,disabled:t==null,children:"Cancel"}),u.jsx(V,{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:ot.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(V,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:u.jsx(ce,{icon:Cn,transform:"grow-4"}),tooltip:"Input Filter Settings"})})]})]})}}wt(ot,"PLACEHOLDER","Enter value...");wt(ot,"defaultProps",{column:null,isValueShown:!1,value:null});const Os=ot;function Xt(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)}var _s=250;class Qt extends T.Component{constructor(e){super(e),Xt(this,"inputFilterRef",void 0),this.handleChange=Ze(this.handleChange.bind(this),_s),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.inputFilterRef=oe.createRef();var{panelState:t}=e,{value:n,isValueShown:i=!1,name:a,type:l,timestamp:s}=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:m,wasFlipped:p,skipUpdate:g}=d,v=c!=null&&n!==c.isValueShown&&a===c.name&&l===c.type&&i===c.value;return s=(h=!g&&n&&(!v||!p))!==null&&h!==void 0?h:!1,s||(o=m),{panelState:{isValueShown:n,name:a,type:l,value:i,timestamp:o},timestamp:o,wasFlipped:v,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;a.emit(X.FILTERS_CHANGED,this,{name:e,type:t,value:n,timestamp:i})}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(Ft,{className:"iris-input-filter-panel",componentPanel:this,glContainer:e,glEventHub:t,onClearAllFilters:this.handleClearAllFilters,isClonable:!0,isRenamable:!0,children:u.jsx(Os,{ref:this.inputFilterRef,column:n,columns:i,onChange:this.handleChange,isValueShown:a,value:l})})}}Xt(Qt,"defaultProps",{panelState:null});Xt(Qt,"COMPONENT","InputFilterPanel");Xt(Qt,"displayName","InputFilterPanel");var ks=(r,e)=>{var{localDashboardId:t}=e;return{columns:gn(r,t)}},xs=Ye(ks,null,null,{forwardRef:!0})(Qt);const it=xs;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 xt(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){Mn(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 Mn(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=js(r,"string");return typeof e=="symbol"?e:String(e)}function js(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var ee=Z.module("FilterSetManagerPanel");function Vs(r){return r.setPanelState!=null}class dt extends T.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){ee.error("Could not get panel",i);return}var a=O.getComponentNameFromPanel(i),l=O.getIdFromPanel(i);ee.debug("Panel:",i,a);var{glContainer:s=null}=i.props;if(s==null){ee.error("Could not get panel container",i);return}var o=O.getComponentConfigFromContainer(s);if(o==null){ee.error("Could not get component config from container",s);return}var d=O.getPanelComponentState(o);if(d==null){ee.debug("Panel state is null ".concat(l));return}switch(a){case O.getComponentName(lt):{var h;l!=null&&(h=this.getIrisGridPanelFilters(l,d)),h!=null&&t.push({panelId:l,type:a,state:h});break}case O.getComponentName(it):case O.getComponentName(Ge):{var{isValueShown:c,name:m,type:p,value:g}=d;t.push({panelId:l,type:a,state:{isValueShown:c,name:m,type:p,value:g}});break}}}),t}getIrisGridPanelFilters(e,t){var{panelTableMap:n}=this.props,i=n.get(e);if(i==null)return ee.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=dt.changeFilterIndexesToColumnNames(i,s));var h;return o&&(h=dt.changeFilterIndexesToColumnNames(i,o)),{irisGridState:xt(xt({},a),{},{advancedFilters:d,quickFilters:h}),gridState:xt({},l)}}handleGetFilterState(){return this.getFilterState()}handleChange(e){var{isValueShown:t,selectedId:n}=e;ee.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;ee.debug("Apply filters from filter set",e),n.forEach(a=>{var{panelId:l,type:s,state:o}=a;if(l==null){ee.debug("panel is null",l);return}if(!t.has(l)){ee.debug("Ignore closed panel",l);return}ee.debug("Apply panel filters",l,s,o);var d=t.get(l);switch(s){case O.getComponentName(lt):this.restoreIrisGridFilters(d,o,i);break;case O.getComponentName(it):case O.getComponentName(Ge):this.restoreInputFilterState(d,o);break}})}handleSetsUpdate(e){var{setDashboardFilterSets:t,localDashboardId:n}=this.props;ee.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=O.getIdFromPanel(e);if(h==null){ee.error("Panel Id is null.");return}var c=d.get(h);if(c==null){ee.error("Unable to get table for panel ".concat(h,"."));return}ee.debug("restoreIrisGridFilters",h,t,n),n?e.setStateOverrides(t):e.setFilters({quickFilters:o,advancedFilters:s})}restoreInputFilterState(e,t){var n=xt({},t);delete n.isValueShown,ee.debug("restoreInputFilterState",e,n),e&&Vs(e)&&e.setPanelState(n)}render(){var{glContainer:e,glEventHub:t,filterSets:n}=this.props,{isValueShown:i,selectedId:a}=this.state;return u.jsx(Ft,{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(wi,{onChange:this.handleChange,onApply:this.handleFilterApply,onUpdateSets:this.handleSetsUpdate,isValueShown:i,filterSets:n,selectedId:a,getFilterState:this.handleGetFilterState})})})}}Mn(dt,"defaultProps",{panelState:null});Mn(dt,"COMPONENT","FilterSetManagerPanel");var $s=(r,e)=>{var{localDashboardId:t}=e;return{filterSets:ti(r,t),dashboardOpenedPanelMap:Xr(r,t),dashboardInputFilters:Kt(r,t),panelTableMap:Ht(r,t)}},Us=Ye($s,{setDashboardFilterSets:ei},null,{forwardRef:!0})(dt);const Vt=Us;function Gs(r,e,t){return e=Hs(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Hs(r){var e=Bs(r,"string");return typeof e=="symbol"?e:String(e)}function Bs(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 Pi extends T.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:pe("text-muted","edit-hint",{viewing:e===void 0||!e}),children:u.jsxs("span",{children:["double-click to edit ",u.jsx(ce,{icon:di})]})}),t]})}}Gs(Pi,"defaultProps",{isEditing:!1});function zs(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=Ws(r,"string");return typeof e=="symbol"?e:String(e)}function Ws(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 qs=Z.module("MarkdownStartPage");class Ti extends T.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(qs.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(V,{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(V,{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(ce,{icon:bn})})]},l.id)),u.jsxs(Ya,{isOpen:i,toggle:this.handleDeleteModalClose,className:"modal-dialog-centered markdown-delete-modal",children:[u.jsx(Xa,{children:"Are you sure you want to permanently delete this note?"}),u.jsx(Qa,{children:"You can't undo this action."}),u.jsxs(ha,{children:[u.jsx(V,{kind:"secondary",onClick:this.handleDeleteModalClose,children:"Cancel"}),u.jsx(V,{kind:"danger",onClick:()=>{this.handleDeleteMarkdown(a)},children:"Delete"})]})]})]})]})})}}zs(Ti,"defaultProps",{closedMarkdowns:[],onOpen:()=>{},onCreate:()=>{},onDelete:()=>{}});const Zs=Ti;function Et(r,e,t){return e=Ys(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Ys(r){var e=Xs(r,"string");return typeof e=="symbol"?e:String(e)}function Xs(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Qs=T.lazy(()=>hl(()=>import("./MarkdownEditor-c76b2153.js"),["./MarkdownEditor-c76b2153.js","./vendor-2ad5ff96.js","./helpers-de833af9.js","./vendor-07c93e4f.css","./ControlType-5e65a1f9.js","./index-49c2275d.js","./monaco-b5248072.js","./monaco-f18fde03.css","./index-13e1b819.css","./ControlType-ea767cde.css","./mathjax-eb86e467.js"],import.meta.url)),At=Z.module("MarkdownPanel");class Nn extends T.Component{constructor(e){super(e),Et(this,"markdownEditor",void 0),Et(this,"editor",void 0),Et(this,"getClosedMarkdowns",k(i=>i.filter(a=>a.component==="MarkdownPanel").reverse())),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&&({content:n}=t),this.state={isStartPageShown:n==null,isEditing:!1,content:n,panelState:t},this.markdownEditor=null}setEditorPosition(e){M(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){At.debug("Markdown Editor Initialized..."),this.editor=e}handleCreateMarkdown(){At.debug("create markdown..."),this.setState({isStartPageShown:!1,content:"",isEditing:!0,panelState:{content:""}},()=>{this.editor!=null&&this.editor.focus!=null&&this.editor.focus()})}handleOpenMarkdown(e){At.debug("open markdown...",e);var{glContainer:t,glEventHub:n}=this.props,i=O.getComponentConfigFromContainer(t);n.emit(ae.REOPEN,e,i)}handleDeleteMarkdown(e){var{glEventHub:t}=this.props;t.emit(ae.DELETE,e)}handleEditorBlur(e){var t;At.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(Ft,{glContainer:e,glEventHub:t,className:"markdown-panel",componentPanel:this,onResize:this.handleEditorResize,onBlur:this.handleEditorBlur,isClonable:!0,isRenamable:!0,children:a?u.jsx(Zs,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):u.jsx(Pi,{isEditing:i,onDoubleClick:this.handleContainerDoubleClick,children:u.jsx(T.Suspense,{fallback:u.jsx(hi,{}),children:u.jsx(Qs,{ref:o=>{this.markdownEditor=o},isEditing:i,content:l??void 0,onEditorInitialized:this.handleEditorInitialized})})})})}}Et(Nn,"defaultProps",{panelState:null});Et(Nn,"COMPONENT","MarkdownPanel");var Js=(r,e)=>{var{localDashboardId:t}=e;return{closedPanels:ca(r,t)}},eo=Ye(Js,null,null,{forwardRef:!0})(Nn);const nt=eo;function Fi(r){var{onClick:e}=r,t=T.useRef(null),n=T.useCallback(i=>{var a;(a=t.current)===null||a===void 0||a.blur(),e(i)},[e]);return u.jsxs(V,{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(ce,{icon:ui,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}function vr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function fr(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?vr(Object(t),!0).forEach(function(n){Jt(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):vr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Jt(r,e,t){return e=to(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function to(r){var e=no(r,"string");return typeof e=="symbol"?e:String(e)}function no(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 Ln extends T.Component{constructor(e){super(e),Jt(this,"irisGridRef",void 0),this.irisGridRef=oe.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(st,fr(fr({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},this.props),{},{children:u.jsx(Fi,{onClick:this.handleReload})}))}}Jt(Ln,"defaultProps",{panelState:null});Jt(Ln,"COMPONENT","PandasPanel");const Di=Ln;function gr(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function Cr(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){gr(a,n,i,l,s,"next",o)}function s(o){gr(a,n,i,l,s,"throw",o)}l(void 0)})}}function br(r,e,t){return e=ro(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ro(r){var e=io(r,"string");return typeof e=="symbol"?e:String(e)}function io(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class ao{constructor(e){br(this,"items",void 0),br(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];jn(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];jn(t)&&(t.isExpanded=!1)}return Promise.resolve()}getViewportData(){return Promise.resolve({items:this.items,offset:0})}getSnapshot(e){return Cr(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return Cr(function*(){var n,i=yield t.getViewportData();(n=t.onUpdateCallback)===null||n===void 0||n.call(t,i)})()}setFilters(e){}setSorts(e){}setReversed(e){}close(){}onUpdate(e){return this.onUpdateCallback=e,jest.fn()}get size(){return this.items.length}}const lo=ao;function Sr(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 mt(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Sr(a,n,i,l,s,"next",o)}function s(o){Sr(a,n,i,l,s,"throw",o)}l(void 0)})}}function so(r,e,t){return e=oo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function oo(r){var e=uo(r,"string");return typeof e=="symbol"?e:String(e)}function uo(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class ho{constructor(e){so(this,"items",void 0),this.items=e}getTable(){var e=this;return mt(function*(){return new lo(e.items)})()}saveFile(e){throw new Error("Method not implemented.")}loadFile(e){throw new Error("Method not implemented.")}copyFile(e,t){return mt(function*(){throw new Error("Method not implemented.")})()}deleteFile(e){var t=this;return mt(function*(){t.items=t.items.filter(n=>n.filename!==e)})()}moveFile(e,t){var n=this;return mt(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=pa.getBaseName(t),n.items[i].id=t;break}})()}info(e){var t=this;return mt(function*(){var n=t.items.filter(a=>a.filename===e);if(n.length===0)throw new ma;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 co=ho;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 Gt(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){po(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 po(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=vo(r,"string");return typeof e=="symbol"?e:String(e)}function vo(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}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 fo(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 go(r,e,t,n,i){return mn.apply(this,arguments)}function mn(){return mn=fo(function*(r,e,t,n,i){var a,l,s,o;if(rt(t)?(a=t.settings,l=t.table,s=void 0,o=t.tableSettings):(a={},l="",s=Fn(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=Gt(Gt({},a),i.settings))),s==null&&l==null){var d=yield n();return St.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 St.makeModel(r,a,h)}var m={name:l,type:r.VariableType.TABLE},p=yield e(m);return new B(r).applyTableSettings(p,o,ni(fa.getState())),St.makeModelFromSettings(r,a,p)}),mn.apply(this,arguments)}var On=T.forwardRef((r,e)=>{var t=ht(),n=va(),i=Si(r)?r.panelState:void 0,{fetch:a,metadata:l,localDashboardId:s}=r,o=T.useMemo(()=>({metadata:l,localDashboardId:s,makeModel:()=>{if(l==null)throw new Error("Metadata is required for chart panel");return go(t,n,l,a,i)}}),[l,s,t,n,a,i]);return u.jsx(Ot,Gt(Gt({ref:e},r),o))});On.displayName="ChartPanelPlugin";const Co=On;function yr(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function bo(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){yr(a,n,i,l,s,"next",o)}function s(o){yr(a,n,i,l,s,"throw",o)}l(void 0)})}}function Mi(r){var e=ht(),[t,n]=T.useState(),{fetch:i}=r;return T.useEffect(()=>{var a=!1;function l(){return s.apply(this,arguments)}function s(){return s=bo(function*(){var o=yield i(),d=yield St.makeModel(e,void 0,o);a||n(d)}),s.apply(this,arguments)}return l(),()=>{a=!0}},[e,i]),t?u.jsx(pi,{model:t}):null}var So={name:"ChartPanel",title:"Chart",type:He.WIDGET_PLUGIN,component:Mi,panelComponent:On,supportedTypes:"Figure",icon:Ja};const wo=So;function Ni(r){Mt(r);var{id:e,layout:t}=r,n=ht(),i=T.useCallback(a=>{var{metadata:l,panelId:s=Se.generate(),table:o}=a,{settings:d}=l,h=()=>St.makeModelFromSettings(n,d,o),c=te.titleFromSettings(d),m={type:"react-component",component:Ot.COMPONENT,props:{localDashboardId:e,id:s,metadata:l,makeModel:h},title:c,id:s},{root:p}=t;O.openComponent({root:p,config:m})},[n,e,t]);return Me(t.eventHub,ue.CREATE_CHART,i),null}var Eo={name:"ChartBuilderPlugin",type:He.DASHBOARD_PLUGIN,component:Ni};const yo=Eo;var vt=Z.module("FilterPlugin");function Pr(r,e){return r.concat(e)}function Li(r){Mt(r);var{id:e,layout:t,registerComponent:n}=r,i=aa(),[a]=T.useState(()=>new Map),[l]=T.useState(()=>new Map),[s]=T.useState(()=>new Map),o=T.useCallback(()=>{var f=Array.from(a.values()).reduce(Pr,[]).sort((b,S)=>{var E=De.toLower(b.name),F=De.toLower(S.name);if(E!==F)return E>F?1:-1;var N=De.toLower(b.type),y=De.toLower(S.type);return N!==y?N>y?1:-1:0}).reduce((b,S)=>((b.length===0||De.toLower(b[b.length-1].name)!==De.toLower(S.name)||De.toLower(b[b.length-1].type)!==De.toLower(S.type))&&b.push(S),b),[]),C=Array.from(l.values()).reduce(Pr,[]).sort((b,S)=>b.timestamp-S.timestamp),w=new Map(s);vt.debug("sendUpdate",{columns:f,filters:C,tableMap:w}),i(ga(e,{columns:f,filters:C,tableMap:w}))},[i,e,a,l,s]),d=T.useCallback((f,C)=>{vt.debug2("handleColumnsChanged",f,C),a.set(f,[].concat(C)),o()},[a,o]),h=T.useCallback((f,C)=>{vt.debug2("handleFiltersChanged",f,C),l.set(f,[].concat(C)),o()},[l,o]),c=T.useCallback((f,C)=>{vt.debug2("handleTableChanged",f,C),s.set(O.getIdFromPanel(f),C),o()},[s,o]),m=T.useCallback(f=>{vt.debug2("handlePanelUnmount",f),a.delete(f),l.delete(f),s.delete(O.getIdFromPanel(f)),o()},[a,l,s,o]),p=T.useCallback(f=>{var{title:C="DropdownFilter",metadata:w={},panelState:b=null,id:S=Se.generate(),focusElement:E=O.DEFAULT_FOCUS_SELECTOR,createNewStack:F=!1,dragEvent:N=null}=f,y={type:"react-component",component:Ge.COMPONENT,props:{id:S,metadata:w,panelState:b,localDashboardId:e},title:C,id:S},{root:P}=t;O.openComponent({root:P,config:y,focusElement:E,createNewStack:F,dragEvent:N})},[t,e]),g=T.useCallback(f=>{var{title:C="InputFilter",metadata:w={},panelState:b=null,id:S=Se.generate(),focusElement:E=O.DEFAULT_FOCUS_SELECTOR,createNewStack:F=!1,dragEvent:N=void 0}=f,y={type:"react-component",component:it.COMPONENT,props:{id:S,metadata:w,panelState:b,localDashboardId:e},title:C,id:S},{root:P}=t;O.openComponent({root:P,config:y,focusElement:E,createNewStack:F,dragEvent:N})},[t,e]),v=T.useCallback(f=>{var{title:C="FilterSets",metadata:w={},panelState:b=null,id:S=Se.generate(),focusElement:E=O.DEFAULT_FOCUS_SELECTOR,createNewStack:F=!1,dragEvent:N=null}=f,y={type:"react-component",component:Vt.COMPONENT,props:{id:S,metadata:w,panelState:b,localDashboardId:e},title:C,id:S},{root:P}=t;O.openComponent({root:P,config:y,focusElement:E,createNewStack:F,dragEvent:N})},[t,e]);return T.useEffect(function(){var C=[n(Ge.COMPONENT,Ge),n(it.COMPONENT,it),n(Vt.COMPONENT,Vt)];return()=>{C.forEach(w=>w())}},[n]),Me(t.eventHub,X.COLUMNS_CHANGED,d),Me(t.eventHub,X.FILTERS_CHANGED,h),Me(t.eventHub,X.TABLE_CHANGED,c),Me(t.eventHub,X.OPEN_DROPDOWN,p),Me(t.eventHub,X.OPEN_INPUT,g),Me(t.eventHub,X.OPEN_FILTER_SET_MANAGER,v),Me(t.eventHub,ae.UNMOUNT,m),null}var Po={name:"FilterPlugin",type:He.DASHBOARD_PLUGIN,component:Li};const To=Po;var Fo=Z.module("@deephaven/app-utils/useTablePlugin");function Oi(){var r=ri(),e=T.useCallback(t=>{var n=r.get(t);if(n!=null){if(Ca(n))return n.component;if(ba(n))return n.TablePlugin}var i="Unable to find table plugin ".concat(t,".");throw Fo.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 Do(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 Ri(r,e,t){var n=ht(),i=Oi(),a=T.useMemo(()=>({loadPlugin:i,localDashboardId:e,makeModel:function(){var l=Do(function*(){var o=yield r();return yn.makeModel(n,o)});function s(){return l.apply(this,arguments)}return s}(),metadata:t}),[n,r,e,i,t]);return a}function Fr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Dr(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Fr(Object(t),!0).forEach(function(n){Mo(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Fr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Mo(r,e,t){return e=No(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function No(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)}var Rn=T.forwardRef((r,e)=>{var{localDashboardId:t,fetch:n,metadata:i}=r,a=Ri(n,t,i);return u.jsx(st,Dr(Dr({ref:e},r),a))});Rn.displayName="GridPanelPlugin";const Oo=Rn;function Mr(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function Ro(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Mr(a,n,i,l,s,"next",o)}function s(o){Mr(a,n,i,l,s,"throw",o)}l(void 0)})}}function Ii(r){var e=ht(),t=la(Wt),[n,i]=T.useState(),{fetch:a}=r;return T.useEffect(()=>{var l=!1;function s(){return o.apply(this,arguments)}function o(){return o=Ro(function*(){var d=yield a(),h=yield yn.makeModel(e,d);l||i(h)}),o.apply(this,arguments)}return s(),()=>{l=!0}},[e,a]),n?u.jsx(Sn,{model:n,settings:t}):null}var Io={name:"IrisGridPanel",title:"Table",type:He.WIDGET_PLUGIN,component:Ii,panelComponent:Rn,supportedTypes:["Table","TreeTable","HierarchicalTable","PartitionedTable"],icon:el};const _o=Io;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 $e(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){_i(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 _i(r,e,t){return e=ko(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ko(r){var e=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 ki(r){var e=r;return typeof e.getCoordinateForColumn=="function"}function Lr(r){var e=r;return ki(r)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function Or(r){return r.description==null||!r.description.startsWith("Preview of type: ")}var ft=Z.module("LinkerUtils");class en{static getLinkType(e,t,n){var i;if(e?.panelId==null||t?.panelId==null||e.panelId===t.panelId||n!=null&&n!==e.panelId&&n!==t.panelId)return ft.debug2("Incompatible panel ids",e,t,n),"invalid";if(e.panelComponent==null||t.panelComponent==null)return ft.error("PanelComponent should not be null",e,t),"invalid";var a=(i=en.ALLOWED_LINKS.get(e.panelComponent))===null||i===void 0?void 0:i.includes(t.panelComponent);if(a===void 0||!a)return ft.debug2("Incompatible panel components",e,t),"invalid";var{columnType:l}=e,{columnType:s}=t,o=s===null||A.isCompatibleType(l,s);if(!o)return ft.debug2("Incompatible type",l,s),"invalid";switch(t.panelComponent){case O.getComponentName(Ot):return"chartLink";case O.getComponentName(st):return"tableLink";case O.getComponentName(Ge):return"filterSource"}return ft.debug2("Incompatible target panel component",t.panelComponent),"invalid"}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($e($e({},a),{},{id:Se.generate(),start:$e($e({},a.start),{},{panelId:n})})):((l=a.end)===null||l===void 0?void 0:l.panelId)===t&&i.push($e($e({},a),{},{id:Se.generate(),end:$e($e({},a.end),{},{panelId:n})}))}),i}}_i(en,"ALLOWED_LINKS",new Map([[O.getComponentName(st),[O.getComponentName(st),O.getComponentName(Ot),O.getComponentName(Ge)]]]));const We=en;function xi(r,e,t){return e=Ao(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Ao(r){var e=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)}var Vo=Z.module("LinkerLink"),Rr=.015,Ir=1.5,Ai=12,ji=12,_r=2,jt=Math.sqrt((ji*.5)**2+Ai**2),kr=Math.asin(ji*.5/Ai),xr=15,Ue=Math.PI*.5;class at extends T.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(A.isNumberType(e)||A.isCharType(e))return ol(t);if(A.isTextType(e))return dl(t);if(A.isDateType(e))return ul(t);if(A.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 Vo.warn(n),""}}constructor(e){super(e),xi(this,"getOperators",k((t,n)=>{var{onOperatorChanged:i}=this.props,a=A.getFilterTypes(n);return A.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=A.getFilterOperatorString(l),[{title:at.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,m=Math.sqrt((i-l)**2+(a-s)**2),p=Math.atan2(s-a,l-i),g=Math.sin(p),v=Math.cos(p)+2,f=window.innerWidth,C=window.innerHeight,w=0,b=0,S=Math.max(w,Math.min(i+(l-i)/2+g*(m*Rr)**Ir,f)),E=Math.max(b,Math.min(a+(s-a)/2+v*(m*Rr)**Ir,C)),F="M ".concat(i," ").concat(a," Q ").concat(S," ").concat(E," ").concat(l," ").concat(s),N="M ".concat(w," ").concat(b," L ").concat(w," ").concat(C," L ").concat(f," ").concat(C," L ").concat(f," ").concat(b,` z
5
5
  `).concat(at.makeCirclePath(i,a,xr),`
6
- `).concat(at.makeCirclePath(l,s,xr)),y="link-select-clip-".concat(o),P=Math.atan2(s-E,l-S),D=P-kr+Math.PI,R=P+kr+Math.PI,j=l+Math.cos(P)*_r,G=s+Math.sin(P)*_r,U=j+Math.cos(D)*jt,re=G+Math.sin(D)*jt,de=j+Math.cos(R)*jt,we=G+Math.sin(R)*jt,Le="".concat(j,",").concat(G," ").concat(U,",").concat(re," ").concat(de,",").concat(we),me=.25*i+.5*S+.25*l,Ee=.25*a+.5*E+.25*s,ye=S-i+(l-S),Pe=E-a+(s-E),le=Pe/ye,en=20,ve=en/Math.sqrt(1+le**2),Te=ve*le,Oe=ve*-1,Re=Te*-1;Number.isFinite(le)?le>0?(ve*=-1,Te*=-1,Oe*=-1,Re*=-1,Oe-=50-10*(Math.abs(p)%Ue),Re+=10*(Math.abs(p)%Ue),ve-=50-10*(Math.abs(p)%Ue),Te+=10*(Math.abs(p)%Ue)):le<0?(Oe+=10*(Math.abs(p)%Ue),Re+=10*(Math.abs(p)%Ue),ve+=10*(Math.abs(p)%Ue),Te+=10*(Math.abs(p)%Ue)):(Oe=15,Re=10,ve=-25,Te=10):(Oe=10,Re=5,ve=10,Te=-35);var Qe="";t!==void 0&&(t==="startsWith"?Qe="a*":t==="endsWith"?Qe="*z":Qe=A.getFilterOperatorString(t));var tn=h!=="chartLink"&&h!=="filterSource";return u.jsxs(u.Fragment,{children:[u.jsxs("svg",{className:pe(e,{hovering:c}),children:[u.jsx("clipPath",{id:y,children:u.jsx("path",{d:N,clipRule:"evenodd"})}),u.jsx("path",{className:"link-select",d:F,onClick:this.handleClick,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,clipPath:"url(#".concat(y,")"),"data-testid":"link-select"}),u.jsx("path",{className:"link-background",d:F}),u.jsx("path",{className:"link-foreground",d:F}),u.jsx("circle",{className:"link-dot",cx:i,cy:a,r:"5"}),u.jsx("polygon",{className:"link-triangle",points:Le})]}),d!=null&&n&&u.jsxs(u.Fragment,{children:[tn&&u.jsx(V,{kind:"primary",className:"btn-fab btn-operator",style:{top:Ee+(le>=0?Te:Re),left:me+(le>=0?ve:Oe)},onClick:()=>{},icon:u.jsxs("div",{className:"fa-md fa-layers",children:[u.jsx("b",{children:Qe}),u.jsx(ce,{icon:el,transform:"right-8 down-9 shrink-5"})]}),tooltip:"Change comparison operator",children:u.jsx(ba,{actions:this.getDropdownActions,popperOptions:{placement:"bottom-start"}})}),u.jsx(V,{kind:"primary",className:"btn-fab btn-delete",style:{top:Ee+(le<0?Te:Re),left:me+(le<0?ve:Oe)},onClick:this.handleDelete,icon:bn,tooltip:"Delete"})]})]})}}xi(at,"defaultProps",{className:"",isSelected:!1,onClick(){},onDelete(){}});const Vo=at;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 jr(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){In(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 In(r,e,t){return e=$o(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function $o(r){var e=Uo(r,"string");return typeof e=="symbol"?e:String(e)}function Uo(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var on=Z.module("LinkerOverlayContent");class Vi extends T.Component{constructor(e){super(e),In(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=oe.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){on.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}=this.props,{panelId:n,columnName:i}=e,a=t.getOpenedPanelById(n);if(a!=null){if(!ki(a))throw new Error("Panel does not have getCoordinateForColumn method: ".concat(n));try{var l=a.getCoordinateForColumn(i);if(l!=null)return l}catch{on.error("Could not get coordinate for column",i,a)}}var s=t.getContainerByPanelId(n);if(s==null)throw new Error("Unable to find panel container for id: ".concat(n));return O.getTabPoint(s)}handleOperatorChanged(e,t){var{links:n,onLinksUpdated:i}=this.props,a=n.map(l=>l.id===e?jr(jr({},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=Rt(e.x,0,window.innerWidth-t.width),i=Rt(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=Rt(window.innerWidth-(e.clientX+i.width+t.x),0,window.innerWidth-i.width),l=Rt(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:m}=this.state,p=t.map(g=>{try{var v,f,{id:C,type:w,isReversed:b,start:S,end:E,operator:F}=g,N=S.columnType,[y,P]=this.getPointFromLinkPoint(S),D=(v=d?.x)!==null&&v!==void 0?v:y,R=(f=d?.y)!==null&&f!==void 0?f:P;if(E!=null&&([D,R]=this.getPointFromLinkPoint(E)),b!=null&&b){var[j,G]=[y,P];[y,P]=[D,R],[D,R]=[j,G]}var U=pe("linker-link",{disabled:e},{"link-filter-source":w==="filterSource"},{"link-invalid":w==="invalid"},{interactive:g.end==null},{"link-is-selected":n.has(C)},{"danger-delete":m==="delete"});return{x1:y,y1:P,x2:D,y2:R,id:C,className:U,operator:F,startColumnType:N,type:w}}catch(re){return on.warn("Unable to get point for link",g,re),null}}).filter(g=>g!=null);return u.jsxs("div",{className:pe("linker-overlay",{"danger-delete":m==="delete"}),children:[p.map(g=>{var{x1:v,y1:f,x2:C,y2:w,id:b,className:S,operator:E,startColumnType:F,type:N}=g;return u.jsx(Vo,{className:S,id:b,x1:v,y1:f,x2:C,y2:w,onClick:a,onDelete:l,isSelected:n.has(b),operator:E,startColumnType:F,type:N,onOperatorChanged:this.handleOperatorChanged},b)}),u.jsxs("div",{className:pe("linker-toast-dialog",{dragging:c}),ref:this.dialogRef,style:{bottom:h?.y,right:h?.x},"data-testid":"linker-toast-dialog",children:[u.jsx(V,{draggable:!0,kind:"inline",className:"btn-drag-handle",icon:tl,onClick:()=>{},onMouseDown:this.handleMouseDown,children:!c&&u.jsx(Sa,{children:"Drag to reposition"})}),u.jsx("div",{className:"toast-body",children:i}),u.jsxs("div",{className:"toast-footer",children:[u.jsx(V,{kind:"secondary",onClick:s,children:"Clear All"}),u.jsx(V,{kind:"primary",onClick:o,children:"Done"})]})]}),u.jsx(qr,{actions:[{action:this.handleEscapePressed,shortcut:wa.LINKER_CLOSE,isGlobal:!0}]})]})}}In(Vi,"defaultProps",{disabled:"false"});const Go=Vi;function Vr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function $r(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Vr(Object(t),!0).forEach(function(n){$i(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Vr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function $i(r,e,t){return e=Ho(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Ho(r){var e=Bo(r,"string");return typeof e=="symbol"?e:String(e)}function Bo(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 J=Z.module("Linker"),zo=(r,e)=>({activeTool:vn(r),dh:Qr(r),isolatedLinkerPanelId:Bt(r,e.localDashboardId),links:Dt(r,e.localDashboardId),timeZone:ni(r)}),Ko=Ye(zo,{setActiveTool:Zr,setDashboardLinks:ii,addDashboardLinks:ai,deleteDashboardLinks:li,setDashboardIsolatedLinkerPanelId:mn,setDashboardColumnSelectionValidator:si});class Wo extends T.Component{constructor(e){super(e),$i(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.handleFilterColumnSelect=this.handleFilterColumnSelect.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.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===Ce.DEFAULT&&this.reset())}componentDidCatch(e,t){J.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(ue.COLUMN_SELECTED,this.handleGridColumnSelect),t.on(ue.DATA_SELECTED,this.handleUpdateValues),t.on(ue.STATE_CHANGED,this.handleStateChange),t.on($t.COLUMN_SELECTED,this.handleChartColumnSelect),t.on(ae.CLONED,this.handlePanelCloned),t.on(X.COLUMN_SELECTED,this.handleFilterColumnSelect),t.on(X.COLUMNS_CHANGED,this.handleColumnsChanged),t.on(ae.CLOSE,this.handlePanelClosed),t.on(ae.CLOSED,this.handlePanelClosed),t.on(ae.DRAGGING,this.handlePanelDragging),t.on(ae.DROPPED,this.handlePanelDropped)}stopListening(e){e.off("stateChanged",this.handleLayoutStateChanged);var{eventHub:t}=e;t.off(ue.COLUMN_SELECTED,this.handleGridColumnSelect),t.off(ue.DATA_SELECTED,this.handleUpdateValues),t.off(ue.STATE_CHANGED,this.handleStateChange),t.off($t.COLUMN_SELECTED,this.handleChartColumnSelect),t.off(ae.CLONED,this.handlePanelCloned),t.off(X.COLUMN_SELECTED,this.handleFilterColumnSelect),t.off(X.COLUMNS_CHANGED,this.handleColumnsChanged),t.off(ae.CLOSE,this.handlePanelClosed),t.off(ae.CLOSED,this.handlePanelClosed),t.off(ae.DRAGGING,this.handlePanelDragging),t.off(ae.DROPPED,this.handlePanelDropped)}reset(){this.setState({linkInProgress:void 0,selectedIds:new Set})}handleCancel(){var{linkInProgress:e}=this.state;if(e==null){var{setActiveTool:t}=this.props;t(Ce.DEFAULT)}this.setState({linkInProgress:void 0})}handleDone(){var{setActiveTool:e}=this.props;e(Ce.DEFAULT)}handleChartColumnSelect(e,t){this.columnSelected(e,t,!0)}handleFilterColumnSelect(e,t){J.debug("handleFilterColumnSelect",this.isOverlayShown());var{links:n,localDashboardId:i,setActiveTool:a,setDashboardIsolatedLinkerPanelId:l}=this.props,s=O.getIdFromPanel(e),o=n.filter(d=>{var h,c;return((h=d.start)===null||h===void 0?void 0:h.panelId)===s||((c=d.end)===null||c===void 0?void 0:c.panelId)===s});if(!this.isOverlayShown()&&s!=null){a(Ce.LINKER),l(i,s),o.length===0&&this.columnSelected(e,t,!0,s);return}this.columnSelected(e,t,!0)}handleColumnsChanged(e,t){J.debug("handleColumnsChanged",e,t);var{links:n}=this.props,i=O.getIdFromPanel(e);if(i==null){J.error("Invalid panelId",e);return}var a=n.filter(l=>{var{start:s,end:o}=l;return s.panelId===i&&We.findColumn(t,s)==null||o!=null&&o.panelId===i&&We.findColumn(t,o)==null});this.deleteLinks(a)}handleGridColumnSelect(e,t){if(!Or(t)){J.debug2("Column is not filterable");return}this.columnSelected(e,t)}columnSelected(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3?arguments[3]:void 0;if(!(i===void 0&&!this.isOverlayShown())){var{isolatedLinkerPanelId:a}=this.props,{linkInProgress:l}=this.state,s=O.getIdFromPanel(e);if(s!=null){var o=O.getComponentNameFromPanel(e),{name:d,type:h}=t;if(l==null||l.start==null){var c={id:Se.generate(),start:{panelId:s,panelComponent:o,columnName:d,columnType:h},type:"invalid",isReversed:n};J.debug("starting link",c),this.setState({linkInProgress:c})}else{var{links:m}=this.props,{start:p,id:g,isReversed:v}=l,f={panelId:s,panelComponent:o,columnName:d,columnType:h},C=We.getLinkType(v!==void 0&&v?f:p,v!==void 0&&v?p:f,i??a);switch(C){case"invalid":J.debug("Ignore invalid link connection",l,f);return;case"filterSource":{var w=v!==void 0&&v?p.panelId:f.panelId,b=m.filter(y=>{var{end:P}=y;return P?.panelId===w});this.deleteLinks(b);break}case"chartLink":{var S=v===!0?p:f,E=v===!0?f:p;J.debug("creating chartlink",{existingLinkEnd:S,start:p,end:f});var F=m.filter(y=>{var{end:P,start:D}=y;return D?.panelId===E.panelId&&P?.panelId===S.panelId&&P?.columnName===S.columnName&&P?.columnType===S.columnType});this.deleteLinks(F);break}}var N={start:v!==void 0&&v?f:p,end:v!==void 0&&v?p:f,id:g,type:C,operator:Ct.eq};J.info("creating link",N),this.setState({linkInProgress:void 0,selectedIds:new Set([g])},()=>{this.addLinks([N])})}}}}unsetFilterValueForLink(e){var{panelManager:t}=this.props;if(e.end){var{end:n}=e,{panelId:i,columnName:a,columnType:l}=n,s=t.getOpenedPanelById(i);s?Lr(s)?s.unsetFilterValue(a,l):J.debug("endPanel.unsetFilterValue not implemented",s):J.debug("endPanel no longer exists, ignoring unsetFilterValue",i)}}setPanelFilterMap(e,t){J.debug("Set filter data for panel:",e,t);var{panelManager:n}=this.props,i=n.getOpenedPanelById(e);i?Lr(i)?i.setFilterMap(t):J.debug("panel.setFilterMap not implemented",e,i):J.debug("panel no longer exists, 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]):J.error("Unable to find link to delete",e)}handleUpdateValues(e,t){for(var n=O.getIdFromPanel(e),{dh:i,links:a,timeZone:l}=this.props,s=new Map,o=0;o<a.length;o+=1){var{start:d,end:h,operator:c}=a[o];if(d.panelId===n&&h!=null){var{panelId:m,columnName:p,columnType:g}=h,v=s.has(m)?s.get(m):new Map,f=v.has(p)===!0?v.get(p).filterList:[],{visibleIndex:C,isExpandable:w,isGrouped:b}=t[d.columnName],{value:S}=t[d.columnName],E="".concat(S);if(S===null&&w&&b&&(S=void 0),g!=null&&A.isDateType(g)){var F=new Jr(i,{timeZone:l,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:Ea.FULL_DATE_FORMAT});E=F.format(S)}var N={operator:c,text:E,value:S,startColumnIndex:C};f.push(N),v.set(p,{columnType:g,filterList:f}),s.set(m,v)}}s.forEach((y,P)=>{this.setPanelFilterMap(P,y)})}handlePanelCloned(e,t){var{links:n}=this.props,i=O.getIdFromPanel(e),a=t.id;if(i!=null){var l=We.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){J.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===Ce.LINKER}updateSelectionValidators(){var{activeTool:e,setDashboardColumnSelectionValidator:t,localDashboardId:n}=this.props;switch(e){case Ce.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:$r($r({},n),{},{type:e})}:null})}isColumnSelectionValid(e,t){var{linkInProgress:n}=this.state,{isolatedLinkerPanelId:i}=this.props;if(t==null)return n?.start!=null&&this.updateLinkInProgressType(),!1;if(!Or(t))return J.debug2("Column is not filterable",t.description),n?.start!=null&&this.updateLinkInProgressType("invalid"),!1;if(n?.start==null)return!0;var{isReversed:a,start:l}=n,s=O.getIdFromPanel(e);if(s==null)return!1;var o={panelId:s,panelComponent:O.getComponentNameFromPanel(e),columnName:t.name,columnType:t.type},d=a!==void 0&&a?We.getLinkType(o,l,i):We.getLinkType(l,o,i);return this.updateLinkInProgressType(d),d!=="invalid"}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(hn,{in:s,mountOnEnter:!0,unmountOnExit:!0,onExited:this.handleExited,children:u.jsx(Go,{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})})}}var qo=Ko(Wo);const Zo=qo;function Ui(r){Mt(r);var{id:e,layout:t,panelManager:n}=r;return u.jsx(Zo,{layout:t,localDashboardId:e,panelManager:n})}var Yo={name:"LinkerPlugin",type:He.DASHBOARD_PLUGIN,component:Ui};const Xo=Yo;function Gi(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)}class ut{static getNewMarkdownTitle(e){for(var t="".concat(ut.DEFAULT_TITLE),n=0;e.indexOf(t)>=0;)n+=1,t="".concat(ut.DEFAULT_TITLE,"-").concat(n);return t}}Gi(ut,"DEFAULT_TITLE","Note");Gi(ut,"DEFAULT_CONTENT",`# Markdown Note
6
+ `).concat(at.makeCirclePath(l,s,xr)),y="link-select-clip-".concat(o),P=Math.atan2(s-E,l-S),D=P-kr+Math.PI,R=P+kr+Math.PI,j=l+Math.cos(P)*_r,G=s+Math.sin(P)*_r,U=j+Math.cos(D)*jt,re=G+Math.sin(D)*jt,de=j+Math.cos(R)*jt,we=G+Math.sin(R)*jt,Le="".concat(j,",").concat(G," ").concat(U,",").concat(re," ").concat(de,",").concat(we),me=.25*i+.5*S+.25*l,Ee=.25*a+.5*E+.25*s,ye=S-i+(l-S),Pe=E-a+(s-E),le=Pe/ye,tn=20,ve=tn/Math.sqrt(1+le**2),Te=ve*le,Oe=ve*-1,Re=Te*-1;Number.isFinite(le)?le>0?(ve*=-1,Te*=-1,Oe*=-1,Re*=-1,Oe-=50-10*(Math.abs(p)%Ue),Re+=10*(Math.abs(p)%Ue),ve-=50-10*(Math.abs(p)%Ue),Te+=10*(Math.abs(p)%Ue)):le<0?(Oe+=10*(Math.abs(p)%Ue),Re+=10*(Math.abs(p)%Ue),ve+=10*(Math.abs(p)%Ue),Te+=10*(Math.abs(p)%Ue)):(Oe=15,Re=10,ve=-25,Te=10):(Oe=10,Re=5,ve=10,Te=-35);var Qe="";t!==void 0&&(t==="startsWith"?Qe="a*":t==="endsWith"?Qe="*z":Qe=A.getFilterOperatorString(t));var nn=h!=="chartLink"&&h!=="filterSource";return u.jsxs(u.Fragment,{children:[u.jsxs("svg",{className:pe(e,{hovering:c}),children:[u.jsx("clipPath",{id:y,children:u.jsx("path",{d:N,clipRule:"evenodd"})}),u.jsx("path",{className:"link-select",d:F,onClick:this.handleClick,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,clipPath:"url(#".concat(y,")"),"data-testid":"link-select"}),u.jsx("path",{className:"link-background",d:F}),u.jsx("path",{className:"link-foreground",d:F}),u.jsx("circle",{className:"link-dot",cx:i,cy:a,r:"5"}),u.jsx("polygon",{className:"link-triangle",points:Le})]}),d!=null&&n&&u.jsxs(u.Fragment,{children:[nn&&u.jsx(V,{kind:"primary",className:"btn-fab btn-operator",style:{top:Ee+(le>=0?Te:Re),left:me+(le>=0?ve:Oe)},onClick:()=>{},icon:u.jsxs("div",{className:"fa-md fa-layers",children:[u.jsx("b",{children:Qe}),u.jsx(ce,{icon:tl,transform:"right-8 down-9 shrink-5"})]}),tooltip:"Change comparison operator",children:u.jsx(Sa,{actions:this.getDropdownActions,popperOptions:{placement:"bottom-start"}})}),u.jsx(V,{kind:"primary",className:"btn-fab btn-delete",style:{top:Ee+(le<0?Te:Re),left:me+(le<0?ve:Oe)},onClick:this.handleDelete,icon:bn,tooltip:"Delete"})]})]})}}xi(at,"defaultProps",{className:"",isSelected:!1,onClick(){},onDelete(){}});const $o=at;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 jr(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){In(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 In(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=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 dn=Z.module("LinkerOverlayContent");class Vi extends T.Component{constructor(e){super(e),In(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=oe.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){dn.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}=this.props,{panelId:n,columnName:i}=e,a=t.getOpenedPanelById(n);if(a!=null){if(!ki(a))throw new Error("Panel does not have getCoordinateForColumn method: ".concat(n));try{var l=a.getCoordinateForColumn(i);if(l!=null)return l}catch{dn.error("Could not get coordinate for column",i,a)}}var s=t.getContainerByPanelId(n);if(s==null)throw new Error("Unable to find panel container for id: ".concat(n));return O.getTabPoint(s)}handleOperatorChanged(e,t){var{links:n,onLinksUpdated:i}=this.props,a=n.map(l=>l.id===e?jr(jr({},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=Rt(e.x,0,window.innerWidth-t.width),i=Rt(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=Rt(window.innerWidth-(e.clientX+i.width+t.x),0,window.innerWidth-i.width),l=Rt(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:m}=this.state,p=t.map(g=>{try{var v,f,{id:C,type:w,isReversed:b,start:S,end:E,operator:F}=g,N=S.columnType,[y,P]=this.getPointFromLinkPoint(S),D=(v=d?.x)!==null&&v!==void 0?v:y,R=(f=d?.y)!==null&&f!==void 0?f:P;if(E!=null&&([D,R]=this.getPointFromLinkPoint(E)),b!=null&&b){var[j,G]=[y,P];[y,P]=[D,R],[D,R]=[j,G]}var U=pe("linker-link",{disabled:e},{"link-filter-source":w==="filterSource"},{"link-invalid":w==="invalid"},{interactive:g.end==null},{"link-is-selected":n.has(C)},{"danger-delete":m==="delete"});return{x1:y,y1:P,x2:D,y2:R,id:C,className:U,operator:F,startColumnType:N,type:w}}catch(re){return dn.warn("Unable to get point for link",g,re),null}}).filter(g=>g!=null);return u.jsxs("div",{className:pe("linker-overlay",{"danger-delete":m==="delete"}),children:[p.map(g=>{var{x1:v,y1:f,x2:C,y2:w,id:b,className:S,operator:E,startColumnType:F,type:N}=g;return u.jsx($o,{className:S,id:b,x1:v,y1:f,x2:C,y2:w,onClick:a,onDelete:l,isSelected:n.has(b),operator:E,startColumnType:F,type:N,onOperatorChanged:this.handleOperatorChanged},b)}),u.jsxs("div",{className:pe("linker-toast-dialog",{dragging:c}),ref:this.dialogRef,style:{bottom:h?.y,right:h?.x},"data-testid":"linker-toast-dialog",children:[u.jsx(V,{draggable:!0,kind:"inline",className:"btn-drag-handle",icon:nl,onClick:()=>{},onMouseDown:this.handleMouseDown,children:!c&&u.jsx(wa,{children:"Drag to reposition"})}),u.jsx("div",{className:"toast-body",children:i}),u.jsxs("div",{className:"toast-footer",children:[u.jsx(V,{kind:"secondary",onClick:s,children:"Clear All"}),u.jsx(V,{kind:"primary",onClick:o,children:"Done"})]})]}),u.jsx(qr,{actions:[{action:this.handleEscapePressed,shortcut:Ea.LINKER_CLOSE,isGlobal:!0}]})]})}}In(Vi,"defaultProps",{disabled:"false"});const Ho=Vi;function Vr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function $r(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Vr(Object(t),!0).forEach(function(n){$i(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Vr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function $i(r,e,t){return e=Bo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Bo(r){var e=zo(r,"string");return typeof e=="symbol"?e:String(e)}function zo(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 J=Z.module("Linker"),Ko=(r,e)=>({activeTool:fn(r),dh:Qr(r),isolatedLinkerPanelId:Bt(r,e.localDashboardId),links:Dt(r,e.localDashboardId),timeZone:ni(r)}),Wo=Ye(Ko,{setActiveTool:Zr,setDashboardLinks:ii,addDashboardLinks:ai,deleteDashboardLinks:li,setDashboardIsolatedLinkerPanelId:vn,setDashboardColumnSelectionValidator:si});class qo extends T.Component{constructor(e){super(e),$i(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.handleFilterColumnSelect=this.handleFilterColumnSelect.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.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===Ce.DEFAULT&&this.reset())}componentDidCatch(e,t){J.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(ue.COLUMN_SELECTED,this.handleGridColumnSelect),t.on(ue.DATA_SELECTED,this.handleUpdateValues),t.on(ue.STATE_CHANGED,this.handleStateChange),t.on($t.COLUMN_SELECTED,this.handleChartColumnSelect),t.on(ae.CLONED,this.handlePanelCloned),t.on(X.COLUMN_SELECTED,this.handleFilterColumnSelect),t.on(X.COLUMNS_CHANGED,this.handleColumnsChanged),t.on(ae.CLOSE,this.handlePanelClosed),t.on(ae.CLOSED,this.handlePanelClosed),t.on(ae.DRAGGING,this.handlePanelDragging),t.on(ae.DROPPED,this.handlePanelDropped)}stopListening(e){e.off("stateChanged",this.handleLayoutStateChanged);var{eventHub:t}=e;t.off(ue.COLUMN_SELECTED,this.handleGridColumnSelect),t.off(ue.DATA_SELECTED,this.handleUpdateValues),t.off(ue.STATE_CHANGED,this.handleStateChange),t.off($t.COLUMN_SELECTED,this.handleChartColumnSelect),t.off(ae.CLONED,this.handlePanelCloned),t.off(X.COLUMN_SELECTED,this.handleFilterColumnSelect),t.off(X.COLUMNS_CHANGED,this.handleColumnsChanged),t.off(ae.CLOSE,this.handlePanelClosed),t.off(ae.CLOSED,this.handlePanelClosed),t.off(ae.DRAGGING,this.handlePanelDragging),t.off(ae.DROPPED,this.handlePanelDropped)}reset(){this.setState({linkInProgress:void 0,selectedIds:new Set})}handleCancel(){var{linkInProgress:e}=this.state;if(e==null){var{setActiveTool:t}=this.props;t(Ce.DEFAULT)}this.setState({linkInProgress:void 0})}handleDone(){var{setActiveTool:e}=this.props;e(Ce.DEFAULT)}handleChartColumnSelect(e,t){this.columnSelected(e,t,!0)}handleFilterColumnSelect(e,t){J.debug("handleFilterColumnSelect",this.isOverlayShown());var{links:n,localDashboardId:i,setActiveTool:a,setDashboardIsolatedLinkerPanelId:l}=this.props,s=O.getIdFromPanel(e),o=n.filter(d=>{var h,c;return((h=d.start)===null||h===void 0?void 0:h.panelId)===s||((c=d.end)===null||c===void 0?void 0:c.panelId)===s});if(!this.isOverlayShown()&&s!=null){a(Ce.LINKER),l(i,s),o.length===0&&this.columnSelected(e,t,!0,s);return}this.columnSelected(e,t,!0)}handleColumnsChanged(e,t){J.debug("handleColumnsChanged",e,t);var{links:n}=this.props,i=O.getIdFromPanel(e);if(i==null){J.error("Invalid panelId",e);return}var a=n.filter(l=>{var{start:s,end:o}=l;return s.panelId===i&&We.findColumn(t,s)==null||o!=null&&o.panelId===i&&We.findColumn(t,o)==null});this.deleteLinks(a)}handleGridColumnSelect(e,t){if(!Or(t)){J.debug2("Column is not filterable");return}this.columnSelected(e,t)}columnSelected(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3?arguments[3]:void 0;if(!(i===void 0&&!this.isOverlayShown())){var{isolatedLinkerPanelId:a}=this.props,{linkInProgress:l}=this.state,s=O.getIdFromPanel(e);if(s!=null){var o=O.getComponentNameFromPanel(e),{name:d,type:h}=t;if(l==null||l.start==null){var c={id:Se.generate(),start:{panelId:s,panelComponent:o,columnName:d,columnType:h},type:"invalid",isReversed:n};J.debug("starting link",c),this.setState({linkInProgress:c})}else{var{links:m}=this.props,{start:p,id:g,isReversed:v}=l,f={panelId:s,panelComponent:o,columnName:d,columnType:h},C=We.getLinkType(v!==void 0&&v?f:p,v!==void 0&&v?p:f,i??a);switch(C){case"invalid":J.debug("Ignore invalid link connection",l,f);return;case"filterSource":{var w=v!==void 0&&v?p.panelId:f.panelId,b=m.filter(y=>{var{end:P}=y;return P?.panelId===w});this.deleteLinks(b);break}case"chartLink":{var S=v===!0?p:f,E=v===!0?f:p;J.debug("creating chartlink",{existingLinkEnd:S,start:p,end:f});var F=m.filter(y=>{var{end:P,start:D}=y;return D?.panelId===E.panelId&&P?.panelId===S.panelId&&P?.columnName===S.columnName&&P?.columnType===S.columnType});this.deleteLinks(F);break}}var N={start:v!==void 0&&v?f:p,end:v!==void 0&&v?p:f,id:g,type:C,operator:Ct.eq};J.info("creating link",N),this.setState({linkInProgress:void 0,selectedIds:new Set([g])},()=>{this.addLinks([N])})}}}}unsetFilterValueForLink(e){var{panelManager:t}=this.props;if(e.end){var{end:n}=e,{panelId:i,columnName:a,columnType:l}=n,s=t.getOpenedPanelById(i);s?Lr(s)?s.unsetFilterValue(a,l):J.debug("endPanel.unsetFilterValue not implemented",s):J.debug("endPanel no longer exists, ignoring unsetFilterValue",i)}}setPanelFilterMap(e,t){J.debug("Set filter data for panel:",e,t);var{panelManager:n}=this.props,i=n.getOpenedPanelById(e);i?Lr(i)?i.setFilterMap(t):J.debug("panel.setFilterMap not implemented",e,i):J.debug("panel no longer exists, 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]):J.error("Unable to find link to delete",e)}handleUpdateValues(e,t){for(var n=O.getIdFromPanel(e),{dh:i,links:a,timeZone:l}=this.props,s=new Map,o=0;o<a.length;o+=1){var{start:d,end:h,operator:c}=a[o];if(d.panelId===n&&h!=null){var{panelId:m,columnName:p,columnType:g}=h,v=s.has(m)?s.get(m):new Map,f=v.has(p)===!0?v.get(p).filterList:[],{visibleIndex:C,isExpandable:w,isGrouped:b}=t[d.columnName],{value:S}=t[d.columnName],E="".concat(S);if(S===null&&w&&b&&(S=void 0),g!=null&&A.isDateType(g)){var F=new Jr(i,{timeZone:l,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:ya.FULL_DATE_FORMAT});E=F.format(S)}var N={operator:c,text:E,value:S,startColumnIndex:C};f.push(N),v.set(p,{columnType:g,filterList:f}),s.set(m,v)}}s.forEach((y,P)=>{this.setPanelFilterMap(P,y)})}handlePanelCloned(e,t){var{links:n}=this.props,i=O.getIdFromPanel(e),a=t.id;if(i!=null){var l=We.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){J.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===Ce.LINKER}updateSelectionValidators(){var{activeTool:e,setDashboardColumnSelectionValidator:t,localDashboardId:n}=this.props;switch(e){case Ce.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:$r($r({},n),{},{type:e})}:null})}isColumnSelectionValid(e,t){var{linkInProgress:n}=this.state,{isolatedLinkerPanelId:i}=this.props;if(t==null)return n?.start!=null&&this.updateLinkInProgressType(),!1;if(!Or(t))return J.debug2("Column is not filterable",t.description),n?.start!=null&&this.updateLinkInProgressType("invalid"),!1;if(n?.start==null)return!0;var{isReversed:a,start:l}=n,s=O.getIdFromPanel(e);if(s==null)return!1;var o={panelId:s,panelComponent:O.getComponentNameFromPanel(e),columnName:t.name,columnType:t.type},d=a!==void 0&&a?We.getLinkType(o,l,i):We.getLinkType(l,o,i);return this.updateLinkInProgressType(d),d!=="invalid"}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(cn,{in:s,mountOnEnter:!0,unmountOnExit:!0,onExited:this.handleExited,children:u.jsx(Ho,{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})})}}var Zo=Wo(qo);const Yo=Zo;function Ui(r){Mt(r);var{id:e,layout:t,panelManager:n}=r;return u.jsx(Yo,{layout:t,localDashboardId:e,panelManager:n})}var Xo={name:"LinkerPlugin",type:He.DASHBOARD_PLUGIN,component:Ui};const Qo=Xo;function Gi(r,e,t){return e=Jo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Jo(r){var e=ed(r,"string");return typeof e=="symbol"?e:String(e)}function ed(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 ut{static getNewMarkdownTitle(e){for(var t="".concat(ut.DEFAULT_TITLE),n=0;e.indexOf(t)>=0;)n+=1,t="".concat(ut.DEFAULT_TITLE,"-").concat(n);return t}}Gi(ut,"DEFAULT_TITLE","Note");Gi(ut,"DEFAULT_CONTENT",`# Markdown Note
7
7
 
8
- This note can be edited using **markdown** for styling.`);const dn=ut;function Hi(r){Mt(r);var{id:e,layout:t,panelManager:n,registerComponent:i}=r,a=T.useCallback(s=>{var{title:o,componentState:d,props:h}=s,{panelState:c=null}=h;return d!=null&&({panelState:c=null}=d),o==null||c==null||c.content==null||c.content.length===0||c.content===dn.DEFAULT_CONTENT?null:ya(s)},[]),l=T.useCallback(function(){var{title:s="",metadata:o={},id:d=Se.generate(),focusElement:h=O.DEFAULT_FOCUS_SELECTOR,createNewStack:c=!1,dragEvent:m=null}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},p=n.getOpenedPanelConfigsOfType(nt.COMPONENT),g=n.getClosedPanelConfigsOfType(nt.COMPONENT),v=p.map(S=>{var E;return(E=S.title)!==null&&E!==void 0?E:""}),f=s!=null&&s!==""?s:dn.getNewMarkdownTitle(v),C=g.length>0?null:dn.DEFAULT_CONTENT,w={type:"react-component",component:nt.COMPONENT,props:{id:d,metadata:o,panelState:{content:C},localDashboardId:e},title:f,id:d},{root:b}=t;O.openComponent({root:b,config:w,focusElement:h,createNewStack:c,dragEvent:m})},[e,t,n]);return T.useEffect(function(){var o=[i(nt.COMPONENT,nt,Pa,a)];return()=>{o.forEach(d=>d())}},[a,i]),Me(t.eventHub,oi.OPEN,l),null}var ed={name:"MarkdownPlugin",type:He.DASHBOARD_PLUGIN,component:Hi};const td=ed;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 Gr(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){nd(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 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)}var _n=T.forwardRef((r,e)=>{var{localDashboardId:t,fetch:n,metadata:i}=r,a=Ri(n,t,i);return u.jsx(Di,Gr(Gr({ref:e},r),a))});_n.displayName="PandasPanelPlugin";const ad=_n;function Hr(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 un(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Hr(a,n,i,l,s,"next",o)}function s(o){Hr(a,n,i,l,s,"throw",o)}l(void 0)})}}function Bi(r){var e=ht(),[t,n]=T.useState(),[i,a]=T.useState(!0),[l,s]=T.useState(!1),{fetch:o}=r,d=T.useCallback(un(function*(){var c=yield o();return yn.makeModel(e,c)}),[e,o]),h=T.useCallback(un(function*(){a(!0);var c=yield d();n(c),a(!1)}),[d]);return T.useEffect(()=>{var c=!1;function m(){return p.apply(this,arguments)}function p(){return p=un(function*(){var g=yield d();c||(n(g),s(!0),a(!1))}),p.apply(this,arguments)}return m(),a(!0),()=>{c=!0}},[d]),u.jsxs(u.Fragment,{children:[u.jsx(hi,{isLoaded:l,isLoading:i}),t&&u.jsx(Sn,{model:t,children:u.jsx(Fi,{onClick:h})})]})}var ld={name:"PandasPanel",title:"Pandas",type:He.WIDGET_PLUGIN,component:Bi,panelComponent:_n,supportedTypes:"pandas.DataFrame",icon:nl};const sd=ld;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 gt(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){od(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 od(r,e,t){return e=dd(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function dd(r){var e=ud(r,"string");return typeof e=="symbol"?e:String(e)}function ud(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var hd=Z.module("WidgetLoaderPlugin");function cd(r){var e;function t(n,i){var a,l=r.component,{metadata:s}=n,o=Fa(l);return u.jsx(Lt,gt(gt({widgetName:(a=s?.name)!==null&&a!==void 0?a:void 0,widgetType:r.title},n),{},{children:o?u.jsx(l,gt(gt({},n),{},{ref:i})):u.jsx(l,gt({},n))}))}return t.displayName="WidgetLoaderPlugin(".concat((e=r.component.displayName)!==null&&e!==void 0?e:r.name,")"),T.forwardRef(t)}function zi(r){var e=ri(),t=T.useMemo(()=>{var s=new Map;return e.forEach(o=>{Ta(o)&&[o.supportedTypes].flat().forEach(d=>{if(d!=null&&d!==""){if(s.has(d)){var h;hd.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]);Mt(r);var{id:n,layout:i,registerComponent:a}=r,l=T.useCallback(s=>{var o,{dragEvent:d,panelId:h=Se.generate(),fetch:c,widget:m}=s,{type:p}=m,g=p!=null?t.get(p):null;if(g!=null){var v=(o=m.name)!==null&&o!==void 0?o:p,f={localDashboardId:n,metadata:m,fetch:c},C={type:"react-component",component:g.name,props:f,title:v,id:h},{root:w}=i;O.openComponent({root:w,config:C,dragEvent:d})}},[n,i,t]);return T.useEffect(()=>{var s=[...new Set(t.values())].map(o=>{var{panelComponent:d}=o;return d==null?a(o.name,cd(o)):a(o.name,d)});return()=>{s.forEach(o=>o())}},[a,t]),Me(i.eventHub,ae.OPEN,l),null}var pd={name:"WidgetLoaderPlugin",type:He.DASHBOARD_PLUGIN,component:zi};const md=pd;var vd=I.shape({state:I.shape({panelState:I.shape({})})}),fd=I.shape({panelId:I.string.isRequired,columnName:I.string.isRequired,columnType:I.string.isRequired}),zr=I.shape({panelId:I.string.isRequired,columnName:I.string.isRequired}),Ki=I.shape({start:zr,end:zr,id:I.string,isReversed:I.bool}),gd=I.arrayOf(Ki),Cd=I.shape({name:I.string.isRequired,operateAs:I.string.isRequired,groups:I.arrayOf(I.string).isRequired,permissions:I.shape({canUsePanels:I.bool.isRequired,canCopy:I.bool.isRequired,canDownloadCsv:I.bool.isRequired,canLogout:I.bool.isRequired}).isRequired}),bd=Object.freeze({LinkPoint:fd,Link:Ki,Links:gd,Panel:vd,User:Cd});const Sd=bd;var wd=(r,e)=>r[e]===null?null:I.bool,Ed=(r,e)=>r[e]===null?null:I.string,yd=Object.freeze({nullableBoolean:wd,nullableString:Ed});const Pd=yd,Rd=Object.freeze(Object.defineProperty({__proto__:null,ChartBuilderPlugin:Ni,ChartBuilderPluginConfig:Eo,ChartEvent:$t,ChartPanel:Ot,ChartPanelPlugin:go,ChartPluginConfig:So,ChartWidgetPlugin:Mi,CommandHistoryPanel:Da,CommonPropTypes:Pd,ConsoleEvent:Ma,ConsolePanel:Na,ConsolePlugin:La,ControlType:Oa,DropdownFilterPanel:Ge,FileExplorerPanel:Ra,FilterPlugin:Li,FilterPluginConfig:Po,FilterSetManager:wi,FilterSetManagerPanel:Vt,GridPanelPlugin:Lo,GridPluginConfig:Io,GridWidgetPlugin:Ii,InputFilterEvent:X,InputFilterPanel:it,IrisGridEvent:ue,IrisGridPanel:st,LinkerPlugin:Ui,LinkerPluginConfig:Xo,LinkerUtils:We,LogPanel:Ia,MarkdownEvent:oi,MarkdownPanel:nt,MarkdownPlugin:Hi,MarkdownPluginConfig:td,MockFileStorage:ho,NotebookEvent:_a,NotebookPanel:ka,PandasEvent:es,PandasPanel:Di,PandasPanelPlugin:ad,PandasPluginConfig:sd,PandasWidgetPlugin:Bi,Panel:Ft,TabEvent:xa,ToolType:Ce,UIPropTypes:Sd,WidgetLoaderPlugin:zi,WidgetLoaderPluginConfig:md,WidgetPanel:Lt,WidgetPanelTooltip:Nt,addDashboardLinks:ai,deleteDashboardLinks:li,getColumnSelectionValidatorForDashboard:zt,getColumnsForDashboard:gn,getDashboardConnection:Aa,getDashboardConsoleSettings:ja,getDashboardSessionWrapper:Va,getFilterSetsForDashboard:ti,getInputFiltersForDashboard:Kt,getIsolatedLinkerPanelIdForDashboard:Bt,getLinksForDashboard:Dt,getTableMapForDashboard:Ht,isChartPanelDehydratedProps:Si,isChartPanelFigureMetadata:Fn,isChartPanelTableMetadata:rt,isGLChartPanelState:bi,isIrisGridPanelMetadata:yi,isLegacyIrisGridPanelMetadata:Ei,setDashboardColumnSelectionValidator:si,setDashboardConnection:$a,setDashboardConsoleSettings:Ua,setDashboardFilterSets:ei,setDashboardIsolatedLinkerPanelId:mn,setDashboardLinks:ii,setDashboardSessionWrapper:Ga,useLoadTablePlugin:Oi},Symbol.toStringTag,{value:"Module"}));export{wn as C,Rd as D,qn as F,zl as I,St as a,yn as b,_l as c,Pl as d,mi as e,$l as f,qe as g,Yn as i};
9
- //# sourceMappingURL=index-ad91f162.js.map
8
+ This note can be edited using **markdown** for styling.`);const un=ut;function Hi(r){Mt(r);var{id:e,layout:t,panelManager:n,registerComponent:i}=r,a=T.useCallback(s=>{var{title:o,componentState:d,props:h}=s,{panelState:c=null}=h;return d!=null&&({panelState:c=null}=d),o==null||c==null||c.content==null||c.content.length===0||c.content===un.DEFAULT_CONTENT?null:Pa(s)},[]),l=T.useCallback(function(){var{title:s="",metadata:o={},id:d=Se.generate(),focusElement:h=O.DEFAULT_FOCUS_SELECTOR,createNewStack:c=!1,dragEvent:m=null}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},p=n.getOpenedPanelConfigsOfType(nt.COMPONENT),g=n.getClosedPanelConfigsOfType(nt.COMPONENT),v=p.map(S=>{var E;return(E=S.title)!==null&&E!==void 0?E:""}),f=s!=null&&s!==""?s:un.getNewMarkdownTitle(v),C=g.length>0?null:un.DEFAULT_CONTENT,w={type:"react-component",component:nt.COMPONENT,props:{id:d,metadata:o,panelState:{content:C},localDashboardId:e},title:f,id:d},{root:b}=t;O.openComponent({root:b,config:w,focusElement:h,createNewStack:c,dragEvent:m})},[e,t,n]);return T.useEffect(function(){var o=[i(nt.COMPONENT,nt,Ta,a)];return()=>{o.forEach(d=>d())}},[a,i]),Me(t.eventHub,oi.OPEN,l),null}var td={name:"MarkdownPlugin",type:He.DASHBOARD_PLUGIN,component:Hi};const nd=td;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 Gr(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){rd(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 rd(r,e,t){return e=id(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function id(r){var e=ad(r,"string");return typeof e=="symbol"?e:String(e)}function ad(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=T.forwardRef((r,e)=>{var{localDashboardId:t,fetch:n,metadata:i}=r,a=Ri(n,t,i);return u.jsx(Di,Gr(Gr({ref:e},r),a))});_n.displayName="PandasPanelPlugin";const ld=_n;function Hr(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 hn(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Hr(a,n,i,l,s,"next",o)}function s(o){Hr(a,n,i,l,s,"throw",o)}l(void 0)})}}function Bi(r){var e=ht(),[t,n]=T.useState(),[i,a]=T.useState(!0),[l,s]=T.useState(!1),{fetch:o}=r,d=T.useCallback(hn(function*(){var c=yield o();return yn.makeModel(e,c)}),[e,o]),h=T.useCallback(hn(function*(){a(!0);var c=yield d();n(c),a(!1)}),[d]);return T.useEffect(()=>{var c=!1;function m(){return p.apply(this,arguments)}function p(){return p=hn(function*(){var g=yield d();c||(n(g),s(!0),a(!1))}),p.apply(this,arguments)}return m(),a(!0),()=>{c=!0}},[d]),u.jsxs(u.Fragment,{children:[u.jsx(hi,{isLoaded:l,isLoading:i}),t&&u.jsx(Sn,{model:t,children:u.jsx(Fi,{onClick:h})})]})}var sd={name:"PandasPanel",title:"Pandas",type:He.WIDGET_PLUGIN,component:Bi,panelComponent:_n,supportedTypes:"pandas.DataFrame",icon:rl};const od=sd;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 gt(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){dd(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 dd(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 cd=Z.module("WidgetLoaderPlugin");function pd(r){var e;function t(n,i){var a,l=r.component,{metadata:s}=n,o=Da(l);return u.jsx(Lt,gt(gt({widgetName:(a=s?.name)!==null&&a!==void 0?a:void 0,widgetType:r.title},n),{},{children:o?u.jsx(l,gt(gt({},n),{},{ref:i})):u.jsx(l,gt({},n))}))}return t.displayName="WidgetLoaderPlugin(".concat((e=r.component.displayName)!==null&&e!==void 0?e:r.name,")"),T.forwardRef(t)}function zi(r){var e=ri(),t=T.useMemo(()=>{var s=new Map;return e.forEach(o=>{Fa(o)&&[o.supportedTypes].flat().forEach(d=>{if(d!=null&&d!==""){if(s.has(d)){var h;cd.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]);Mt(r);var{id:n,layout:i,registerComponent:a}=r,l=T.useCallback(s=>{var o,{dragEvent:d,panelId:h=Se.generate(),fetch:c,widget:m}=s,{type:p}=m,g=p!=null?t.get(p):null;if(g!=null){var v=(o=m.name)!==null&&o!==void 0?o:p,f={localDashboardId:n,metadata:m,fetch:c},C={type:"react-component",component:g.name,props:f,title:v,id:h},{root:w}=i;O.openComponent({root:w,config:C,dragEvent:d})}},[n,i,t]);return T.useEffect(()=>{var s=[...new Set(t.values())].map(o=>{var{panelComponent:d}=o;return d==null?a(o.name,pd(o)):a(o.name,d)});return()=>{s.forEach(o=>o())}},[a,t]),Me(i.eventHub,ae.OPEN,l),null}var md={name:"WidgetLoaderPlugin",type:He.DASHBOARD_PLUGIN,component:zi};const vd=md;var fd=I.shape({state:I.shape({panelState:I.shape({})})}),gd=I.shape({panelId:I.string.isRequired,columnName:I.string.isRequired,columnType:I.string.isRequired}),zr=I.shape({panelId:I.string.isRequired,columnName:I.string.isRequired}),Ki=I.shape({start:zr,end:zr,id:I.string,isReversed:I.bool}),Cd=I.arrayOf(Ki),bd=I.shape({name:I.string.isRequired,operateAs:I.string.isRequired,groups:I.arrayOf(I.string).isRequired,permissions:I.shape({canUsePanels:I.bool.isRequired,canCopy:I.bool.isRequired,canDownloadCsv:I.bool.isRequired,canLogout:I.bool.isRequired}).isRequired}),Sd=Object.freeze({LinkPoint:gd,Link:Ki,Links:Cd,Panel:fd,User:bd});const wd=Sd;var Ed=(r,e)=>r[e]===null?null:I.bool,yd=(r,e)=>r[e]===null?null:I.string,Pd=Object.freeze({nullableBoolean:Ed,nullableString:yd});const Td=Pd,Id=Object.freeze(Object.defineProperty({__proto__:null,ChartBuilderPlugin:Ni,ChartBuilderPluginConfig:yo,ChartEvent:$t,ChartPanel:Ot,ChartPanelPlugin:Co,ChartPluginConfig:wo,ChartWidgetPlugin:Mi,CommandHistoryPanel:Ma,CommonPropTypes:Td,ConsoleEvent:Na,ConsolePanel:La,ConsolePlugin:Oa,ControlType:Ra,DropdownFilterPanel:Ge,FileExplorerPanel:Ia,FilterPlugin:Li,FilterPluginConfig:To,FilterSetManager:wi,FilterSetManagerPanel:Vt,GridPanelPlugin:Oo,GridPluginConfig:_o,GridWidgetPlugin:Ii,InputFilterEvent:X,InputFilterPanel:it,IrisGridEvent:ue,IrisGridPanel:st,LinkerPlugin:Ui,LinkerPluginConfig:Qo,LinkerUtils:We,LogPanel:_a,MarkdownEvent:oi,MarkdownPanel:nt,MarkdownPlugin:Hi,MarkdownPluginConfig:nd,MockFileStorage:co,NotebookEvent:ka,NotebookPanel:xa,PandasEvent:ts,PandasPanel:Di,PandasPanelPlugin:ld,PandasPluginConfig:od,PandasWidgetPlugin:Bi,Panel:Ft,TabEvent:Aa,ToolType:Ce,UIPropTypes:wd,WidgetLoaderPlugin:zi,WidgetLoaderPluginConfig:vd,WidgetPanel:Lt,WidgetPanelTooltip:Nt,addDashboardLinks:ai,deleteDashboardLinks:li,getColumnSelectionValidatorForDashboard:zt,getColumnsForDashboard:gn,getDashboardConnection:ja,getDashboardConsoleSettings:Va,getDashboardSessionWrapper:$a,getFilterSetsForDashboard:ti,getInputFiltersForDashboard:Kt,getIsolatedLinkerPanelIdForDashboard:Bt,getLinksForDashboard:Dt,getTableMapForDashboard:Ht,isChartPanelDehydratedProps:Si,isChartPanelFigureMetadata:Fn,isChartPanelTableMetadata:rt,isGLChartPanelState:bi,isIrisGridPanelMetadata:yi,isLegacyIrisGridPanelMetadata:Ei,setDashboardColumnSelectionValidator:si,setDashboardConnection:Ua,setDashboardConsoleSettings:Ga,setDashboardFilterSets:ei,setDashboardIsolatedLinkerPanelId:vn,setDashboardLinks:ii,setDashboardSessionWrapper:Ha,useLoadTablePlugin:Oi},Symbol.toStringTag,{value:"Module"}));export{wn as C,Id as D,qn as F,Kl as I,St as a,yn as b,kl as c,Tl as d,mi as e,Ul as f,qe as g,Yn as i};
9
+ //# sourceMappingURL=index-d634bf3b.js.map