@deephaven/code-studio 0.72.1-beta.0 → 0.72.1-xcomponent.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/assets/{AppRoot-686447ad.js → AppRoot-11e1f33c.js} +3 -3
- package/build/assets/{AppRoot-686447ad.js.map → AppRoot-11e1f33c.js.map} +1 -1
- package/build/assets/Chart-4231e6bc.js +2 -0
- package/build/assets/Chart-4231e6bc.js.map +1 -0
- package/build/assets/Chart-d34ffe5c.css +1 -0
- package/build/assets/{ControlType-73c58e54.js → ControlType-415a9903.js} +16 -16
- package/build/assets/ControlType-415a9903.js.map +1 -0
- package/build/assets/{FontBootstrap-c6a5ae22.js → FontBootstrap-25660620.js} +2 -2
- package/build/assets/{FontBootstrap-c6a5ae22.js.map → FontBootstrap-25660620.js.map} +1 -1
- package/build/assets/{FormatterUtils-46f1e8b1.js → FormatterUtils-e8ffca2f.js} +2 -2
- package/build/assets/{FormatterUtils-46f1e8b1.js.map → FormatterUtils-e8ffca2f.js.map} +1 -1
- package/build/assets/{Grid-c4d472c3.js → Grid-6d872ae3.js} +2 -2
- package/build/assets/{Grid-c4d472c3.js.map → Grid-6d872ae3.js.map} +1 -1
- package/build/assets/{GridRenderer-c0f86124.js → GridRenderer-bab79eb0.js} +2 -2
- package/build/assets/{GridRenderer-c0f86124.js.map → GridRenderer-bab79eb0.js.map} +1 -1
- package/build/assets/{IrisGrid-602bab4b.js → IrisGrid-3826a20c.js} +2 -2
- package/build/assets/{IrisGrid-602bab4b.js.map → IrisGrid-3826a20c.js.map} +1 -1
- package/build/assets/{IrisGridModel-3ab54b37.js → IrisGridModel-e3f09f93.js} +2 -2
- package/build/assets/{IrisGridModel-3ab54b37.js.map → IrisGridModel-e3f09f93.js.map} +1 -1
- package/build/assets/{IrisGridShortcuts-5dcaf227.js → IrisGridShortcuts-92664e64.js} +2 -2
- package/build/assets/{IrisGridShortcuts-5dcaf227.js.map → IrisGridShortcuts-92664e64.js.map} +1 -1
- package/build/assets/{IrisGridThemeProvider-700784ee.js → IrisGridThemeProvider-093bbb0e.js} +2 -2
- package/build/assets/{IrisGridThemeProvider-700784ee.js.map → IrisGridThemeProvider-093bbb0e.js.map} +1 -1
- package/build/assets/{MarkdownEditor-2f118ef9.js → MarkdownEditor-3fa34469.js} +2 -2
- package/build/assets/{MarkdownEditor-2f118ef9.js.map → MarkdownEditor-3fa34469.js.map} +1 -1
- package/build/assets/{MarkdownNotebook-d4391ec1.js → MarkdownNotebook-af943e95.js} +2 -2
- package/build/assets/{MarkdownNotebook-d4391ec1.js.map → MarkdownNotebook-af943e95.js.map} +1 -1
- package/build/assets/{MissingPartitionError-b18d0caf.js → MissingPartitionError-57c39972.js} +2 -2
- package/build/assets/{MissingPartitionError-b18d0caf.js.map → MissingPartitionError-57c39972.js.map} +1 -1
- package/build/assets/{StyleGuideRoot-c2aef5b8.js → StyleGuideRoot-1203faf4.js} +2 -2
- package/build/assets/{StyleGuideRoot-c2aef5b8.js.map → StyleGuideRoot-1203faf4.js.map} +1 -1
- package/build/assets/{index-7eda1758.js → index-3e91acb7.js} +2 -2
- package/build/assets/{index-7eda1758.js.map → index-3e91acb7.js.map} +1 -1
- package/build/assets/index-8e66685a.js +9 -0
- package/build/assets/index-8e66685a.js.map +1 -0
- package/build/assets/index-d02e69c2.js +2 -0
- package/build/assets/{index-18214492.js.map → index-d02e69c2.js.map} +1 -1
- package/build/assets/{useUser-24b935e9.js → useUser-548657c8.js} +2 -2
- package/build/assets/{useUser-24b935e9.js.map → useUser-548657c8.js.map} +1 -1
- package/build/index.html +1 -1
- package/package.json +30 -30
- package/build/assets/Chart-4a3cd464.css +0 -1
- package/build/assets/Chart-8723ca27.js +0 -2
- package/build/assets/Chart-8723ca27.js.map +0 -1
- package/build/assets/ControlType-73c58e54.js.map +0 -1
- package/build/assets/index-18214492.js +0 -2
- package/build/assets/index-a70beb44.js +0 -9
- package/build/assets/index-a70beb44.js.map +0 -1
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import{r as T,I as u,K as me,M as le,T as Xe,U as ce,bf as ca,$ as jn,_ as I,bg as qr,L as pe,V as k,Q as Ye,Z as Se,b3 as pa,af as Lt}from"./vendor-e4be0cee.js";import{F as je,c as A,cg as G,P as Oe,ak as oe,ch as rn,bJ as L,A as ma,ad as va,an as Zr,ci as Ft,cj as Me,$ as Xr,ck as gn,cl as Yr,H as be,af as Y,x as pn,cm as Ht,bX as Qr,a4 as bn,cn as Bt,co as zt,cp as Kt,cq as Dt,cr as Cn,S as Et,B as $,cs as Sn,i as Jr,b as ei,aa as fa,ab as ga,_ as ba,ar as Ca,ct as ti,cu as ni,a_ as Sa,ai as ae,bW as wa,cv as $n,as as ya,au as Ea,u as ct,X as Pa,o as ri,w as Ta,c2 as Be,bT as Mt,bL as Ne,a2 as Fa,aH as ii,cb as Da,c9 as Ma,T as bt,J as Na,s as Oa,G as La,cw as ai,cx as li,cy as si,cz as oi,ba as Ra,bV as Ia,bZ as xa,ag as di,c1 as _a,bU as ka,V as Aa,cA as ja,R as $a,am as Va,E as Ua,W as Ga,U as Ha,ae as Ba,ah as za,cB as Ka,a8 as Wa,cC as qa,a9 as Za,az as Xa,cD as Ya,aA as Qa}from"./ControlType-415a9903.js";import{L as Z,e as M,aj as Ja,ak as el,F as wn,al as tl,am as nl,an as ui,f as yn,ao as hi,ap as Vn,t as Un,g as rl,z as il,M as al,b as ll,c as sl,B as ci,aq as ol,ar as dl,d as ul,as as hl,at as cl}from"./index-3e91acb7.js";import{C as pl,b as ne,c as _,m as Gn,d as V,G as mt,i as $e,e as ze,B as Hn,S as pi,L as mi,R as ml,a as Bn,I as Wt}from"./IrisGridModel-e3f09f93.js";import{I as H,f as an,g as zn,M as Kn,h as vl,e as Ke,A as fl,j as gl,k as bl,l as Cl}from"./MissingPartitionError-57c39972.js";import{F as mn}from"./FormatterUtils-e8ffca2f.js";import{_ as Sl}from"./monaco-b5248072.js";function En(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:me(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)})]})}var vi=le.createContext(new Map),Qd=vi.Provider;function wl(r){var e,t=T.useContext(vi);return(e=t.get(r))!==null&&e!==void 0?e:r.Original}function Wn(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function yl(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Wn(Object(t),!0).forEach(function(n){El(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Wn(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function El(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=Tl(r,"string");return typeof e=="symbol"?e:String(e)}function Tl(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 fi(r){var e=function(n){var i=wl(e);return u.jsx(i,yl({},n))};return e.Original=r,e}function qn(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 Zn(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?qn(Object(t),!0).forEach(function(n){q(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):qn(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function q(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)}var Q=Z.module("FigureChartModel");class qt extends pl{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",Xe(()=>{for(var a=ne.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",ce((a,l)=>{if(l!=null){var s=l.getColumnTypeFormatter(a);if(s!=null)return s.dhTimeZone}})),q(this,"getValueTranslator",ce((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.unwrapValue(o,s)})),q(this,"getValueParser",ce((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.wrapValue(o,a,s)})),q(this,"getRangeParser",ce((a,l)=>s=>{var[o,d]=s,h=this.getValueParser(a,l);return o=h(o),d=h(d),[o,d]})),q(this,"getAxisRangeParser",ce((a,l)=>s=>{var o=ne.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 ne(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=ne.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 b=v.find(D=>D.type===e.dh.plot.AxisType.X),w=v.find(D=>D.type===e.dh.plot.AxisType.Y);if(b==null||w==null)Q.warn("Chart title provided, but unknown how to map to the correct axes for this chart type",m);else{var C,S,y,F,N=((C=(S=n.get(b.type))===null||S===void 0?void 0:S.findIndex(D=>D===b))!==null&&C!==void 0?C:0)+1,E=((y=(F=n.get(w.type))===null||F===void 0?void 0:F.findIndex(D=>D===w))!==null&&y!==void 0?y:0)+1,P={align:"center",x:.5,y:1,yshift:17,text:f,showarrow:!1,xref:"x".concat(N," domain"),yref:"y".concat(E," 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,ne.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=ne.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=ne.DEFAULT_MARGIN.t+i*ne.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=Zn({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=Zn({},this.layout.title.pad),this.layout.title.pad.t=ne.DEFAULT_TITLE_PADDING.t+i*ne.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&&ca(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=ne.getPlotlyErrorBars(h,c,m)),g&&v&&g!==p&&(a.error_y=ne.getPlotlyErrorBars(p,g,v))}else if(i===t.plot.SeriesPlotStyle.TREEMAP){var{ids:f,labels:b}=a;f!==void 0&&b===void 0&&(a.labels=f)}}}getData(){return this.data}getLayout(){return this.layout}getFilterColumnMap(){return new Map(this.filterColumnMap)}isFilterRequired(){return this.oneClicks.find(e=>e.requireAllFiltersToDisplay)!=null}setFilter(e){var t=this;if(this.oneClicks.length===0){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 Xn=qt;function Yn(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){Yn(a,n,i,l,s,"next",o)}function s(o){Yn(a,n,i,l,s,"throw",o)}l(void 0)})}}class Pn{static makeModelFromSettings(e,t,n){return ln(function*(){var i=yield Pn.makeFigureFromSettings(e,t,n);return new Xn(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 ne(e).makeFigureSettings(t,i))})()}static makeModel(e,t,n){return ln(function*(){return new Xn(e,n,t)})()}}const St=Pn;function Qn(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=Nl(r,"string");return typeof e=="symbol"?e:String(e)}function Nl(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Ol extends 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 Ll=Ol;function Jn(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 Rt(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Jn(Object(t),!0).forEach(function(n){x(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Jn(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return 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 Ve(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 x(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)}var z=Z.module("IrisGridTableModelTemplate"),xl=150,_l=0;function Ze(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 je(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",I(s=>{var o,d,h,c;if(!s)return[];var m=[],{groupMap:p}=H.parseColumnHeaderGroups(this,(o=s?.columnGroups)!==null&&o!==void 0?o:[]),g=(E,P)=>{var D=this.getColumnIndexByName(E);if(D==null)throw new Error("Unknown layout hint column: ".concat(E));var R=mt.getVisibleIndex(D,m);m=mt.moveItem(R,P,m)},v=(E,P)=>{var D=p.get(E);if(D==null)throw new Error("Unknown layout hint group: ".concat(E));var R=D.getVisibleRange(m);m=mt.moveRange(R,P,m)},f=(d=s.frontColumns)!==null&&d!==void 0?d:[],b=(h=s.backColumns)!==null&&h!==void 0?h:[],w=(c=s.frozenColumns)!==null&&c!==void 0?c:[];if(f.length>0||b.length>0||w.length>0){var C=new Set,S=0;w?.forEach(E=>{if(C.has(E))throw new Error("Column specified in multiple layout hints: ".concat(E));g(E,S),S+=1}),f.forEach(E=>{if(C.has(E))throw new Error("Column specified in multiple layout hints: ".concat(E));g(E,S),S+=1});var y=this.columnMap.size-1;b?.forEach(E=>{if(C.has(E))throw new Error("Column specified in multiple layout hints: ".concat(E));g(E,y),y-=1})}var F=s?.columnGroups;if(F){var N=[...p.values()];N.sort((E,P)=>E.depth-P.depth),N.forEach(E=>{var P=E.children[0],D=this.getColumnIndexByName(P),R;if(D!=null)R=mt.getVisibleIndex(D,m);else{var j=p.get(P);if(!j)throw new Error("Unknown column ".concat(P," in group ").concat(E.name));var B=j.getVisibleRange(m);[,R]=B}for(var ee=1;ee<E.children.length;ee+=1){var U=E.children[ee],de=p.get(U),we=this.getColumnIndexByName(U);if(de){var Le=de.getVisibleRange(m)[0]<R,ve=Le?R-de.childIndexes.length+1:R+1;v(U,ve),R=ve+de.childIndexes.length-1}else if(we!=null){var ye=mt.getVisibleIndex(we,m)<R,Ee=ye?R:R+1;g(U,Ee),R=Ee}}})}return this._movedColumns=m,m})),x(this,"getMemoizedInitialColumnHeaderGroups",I(s=>{var o;return H.parseColumnHeaderGroups(this,(o=s?.columnGroups)!==null&&o!==void 0?o:[]).groups})),x(this,"getMemoizedColumnMap",I(s=>{var o=new Map;return s.forEach(d=>o.set(d.name,d)),o})),x(this,"getColumnIndicesByNameMap",I(s=>{var o=new Map;return s.forEach((d,h)=>{var{name:c}=d;return o.set(c,h)}),o})),x(this,"setViewport",jn((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()},xl)),x(this,"applyViewport",jn(()=>{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)}},_l,{leading:!1})),x(this,"getCachedFormattedString",Gn((s,o,d,h,c)=>s.getFormattedString(o,d,h,c),{max:1e4})),x(this,"getCachedCustomColumnFormatFlag",Gn(mn.isCustomColumnFormatDefined,{max:1e4})),x(this,"getCachedViewportRowRange",I((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",I((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 Ll(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 H(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=H.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 G(_.EVENT.DISCONNECT))}handleTableReconnect(){this.dispatchEvent(new G(_.EVENT.RECONNECT))}handleTableUpdate(e){this.copyViewportData(e.detail),this.dispatchEvent(new G(_.EVENT.UPDATED))}handleTotalsUpdate(e){this.copyTotalsData(e.detail),this.dispatchEvent(new G(_.EVENT.UPDATED))}handleRequestFailed(e){this.dispatchEvent(new G(_.EVENT.REQUEST_FAILED,e))}handleCustomColumnsChanged(){this.dispatchEvent(new G(_.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(!H.isValidIndex(n))throw new Error("Invalid rowIndex ".concat(n));var{data:i}=t;i.forEach((a,l)=>{if(!H.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 G(_.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 G(_.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}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}=H.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,b,w=(v=this.totals)===null||v===void 0?void 0:v.operationOrder[g];return M(w),(f=(b=this.totalsDataMap)===null||b===void 0?void 0:b.get(w))!==null&&f!==void 0?f:null}var C=this.pendingRow(e);if(C!=null){var S;return(S=this.pendingNewDataMap.get(C))!==null&&S!==void 0?S:null}var y=(s=(o=this.viewportData)===null||o===void 0?void 0:o.offset)!==null&&s!==void 0?s:0,F=(p?e-m:e)-y;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:zn.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:zn.SUM,c=(i=this.totals)===null||i===void 0?void 0:i.operationMap,m=function(){var v,f,b=l[p],[w,C=(v=c==null||(f=c[w])===null||f===void 0?void 0:f[0])!==null&&v!==void 0?v:h]=b.name.split("__");o.has(C)||o.set(C,{data:new Map});var{data:S}=o.get(C),y=a.columns.findIndex(F=>F.name===w);S.set(y,{value:d.get(b),format:d.getFormat(b)})},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 G(_.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 G(_.EVENT.UPDATED));return}this.totalsTablePromise=Oe.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{Oe.isCanceled(t)||(z.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new G(_.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(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?V.consolidate(e):e;if(!H.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 V(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=H.columnsFromRanges(s,n.columns),f=[];i&&f.push(v.map(P=>P.name));for(var b=[...o].sort(),w=function*(){var D=b[C],R=v.map(j=>{var B=n.getColumnIndexByName(j.name);return M(B),a(n.valueForCell(B,D),j)});i&&R.push(n.textForRowFooter(D)),f.push(R)},C=0;C<b.length;C+=1)yield*w();if(d.length>0){var S=n.irisGridUtils.rangeSetFromRanges(d),y=yield n.subscription.snapshot(S,v);f.push(...y.rows.map(P=>v.map(D=>a(P.get(D),D))))}for(var F=[...h].sort(),N=function*(){var D=F[E],R=v.map(j=>{var B=n.getColumnIndexByName(j.name);return M(B),a(n.valueForCell(B,D),j)});i&&R.push(n.textForRowFooter(D)),f.push(R)},E=0;E<F.length;E+=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||!V.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 V(null,this.floatingTopRowCount,null,this.floatingTopRowCount+this.table.size-1)}getPendingAreaRange(){return new V(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 V(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=[];V.forEachCell(e,(v,f)=>{var b=n.columns[v];if(i.add(b),a[v]===void 0){var w=n.tableUtils.makeValue(b.type,t,n.formatter.timeZone);a[v]=w!=null?n.displayString(w,b.type,b.name):null}n.cachePendingValue(v,f,a[v])});var l=n.getPendingAreaRange(),s=e.map(v=>V.intersection(l,v)).filter(v=>v!=null).map(v=>(M(v),V.offset(v,0,-(n.floatingTopRowCount+n.table.size))));if(s.length>0){var o=new Map(n.pendingNewDataMap);V.forEachCell(s,(v,f)=>{o.has(f)||o.set(f,{data:new Map});var b=n.columns[v],w=o.get(f);M(w);var{data:C}=w,S=new Map(C),y=n.tableUtils.makeValue(b.type,t,n.formatter.timeZone);y!=null?S.set(v,{value:y}):S.delete(v),S.size>0?o.set(f,Rt(Rt({},w),{},{data:S})):o.delete(f)}),n.pendingDataMap=o}n.dispatchEvent(new G(_.EVENT.UPDATED));var d=n.getTableAreaRange(),h=e.map(v=>V.intersection(d,v)).filter(v=>v!=null);if(h.length>0){var c,m=yield n.snapshot(h.map(v=>{var f,b;return new V(null,(f=v?.startRow)!==null&&f!==void 0?f:null,null,(b=v?.endRow)!==null&&b!==void 0?b:null)})),p=m.map(v=>{for(var f={},b=0;b<n.columns.length;b+=1)f[n.columns[b].name]=v[b];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)}V.forEachCell(e,(v,f)=>{var b=a[v];M(b),n.cacheFormattedValue(v,f,b)})}catch(v){z.error("Unable to set ranges",e,t,v)}finally{V.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(V.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,b=(g=p.column)!==null&&g!==void 0?g:p.x,w=(v=p.row)!==null&&v!==void 0?v:p.y,C=t.columns[b],S=t.tableUtils.makeValue(C.type,f,t.formatter.timeZone),y=S!=null?t.displayString(S,C.type,C.name):null;t.cachePendingValue(b,w,y);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:E}=N,P=new Map(E);S!=null?P.set(b,{value:S}):P.delete(b),P.size>0?i.set(F,Rt(Rt({},N),{},{data:P})):i.delete(F)}}),t.pendingDataMap=i,t.dispatchEvent(new G(_.EVENT.UPDATED));var a=n.reduce((p,g)=>{var v,f,b=(v=g.row)!==null&&v!==void 0?v:g.y;return p.has(b)||p.set(b,[]),(f=p.get(b))===null||f===void 0||f.push(g),p},new Map),l=V.consolidate(n.map(p=>{var g,v;return V.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=>V.intersection(s,p)).filter(p=>p!=null);if(o.length>0){var d,h=yield t.snapshot(o.map(p=>(M(p),new V(null,p.startRow,null,p.endRow)))),c=h.map((p,g)=>{for(var v=null,f=g,b=0;b<o.length;b+=1){var w=o[b];M(w);var C=V.rowCount([w]);if(f<C){M(w.startRow),v=w.startRow+f;break}f-=C}for(var S={},y=0;y<t.columns.length;y+=1)S[t.columns[y].name]=p[y];M(v);var F=a.get(v);return F?.forEach(N=>{var E,P=t.columns[(E=N.column)!==null&&E!==void 0?E: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,b=(g=p.column)!==null&&g!==void 0?g:p.x,w=(v=p.row)!==null&&v!==void 0?v:p.y,C=t.columns[b],S=t.tableUtils.makeValue(C.type,f,t.formatter.timeZone),y=S!=null?t.displayString(S,C.type,C.name):null;t.cacheFormattedValue(b,w,y)})}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 G(_.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 gi=Pt;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 et(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 xe(r,e,t){return e=kl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function kl(r){var e=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 _e=Z.module("IrisGridTableModel");class jl extends gi{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new je(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,n,i),xe(this,"userFrozenColumns",void 0),xe(this,"customColumnList",void 0),xe(this,"formatColumnList",void 0),xe(this,"initialFilters",[]),xe(this,"getMemoizedFrontColumns",I(a=>a??[])),xe(this,"getMemoizedBackColumns",I(a=>a??[])),xe(this,"getMemoizedFrozenColumns",I((a,l)=>{var s;return(s=l??a)!==null&&s!==void 0?s:[]})),xe(this,"getCachedFilterableColumnSet",I(a=>new Set(a.map((l,s)=>s)))),xe(this,"getCachedPartitionColumns",I(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 G(_.EVENT.TABLE_CHANGED,{detail:this.table}))}get partitionColumns(){return this.getCachedPartitionColumns(this.columns)}partitionKeysTable(){var e=this;return et(function*(){return e.valuesTable(e.partitionColumns)})()}partitionMergedTable(){var e=this;return et(function*(){var t=yield e.table.copy();return t.applyFilter([]),t})()}partitionTable(e){var t=this;return et(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.makeFilterRawValue(l.type,a);n.push(l.filter().eq(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 G(_.EVENT.UPDATED));return}this.totalsTablePromise=Oe.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{Oe.isCanceled(t)||(_e.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new G(_.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 et(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 et(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(C=>V.intersection(s,C)).filter(C=>C!=null).map(C=>(M(C),V.offset(C,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 G(_.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new G(_.EVENT.UPDATED))}var p=i.getTableAreaRange(),g=e.map(C=>V.intersection(p,C)).filter(C=>C!=null);if(!(g.length<=0)){var[v,f]=yield Promise.all([i.snapshot(g.map(C=>(M(C),l.map(S=>{var y=i.getColumnIndexByName(S.name);if(y==null)throw new Error("Key column ".concat(S.name," not found"));return new V(y,C.startRow,y,C.endRow)}))).flat()),i.table.copy()]),b=v.map(C=>{for(var S=[],y=0;y<l.length;y+=1){var F=l[y],N=C[y],E=i.tableUtils.makeFilterRawValue(F.type,N),P=F.filter().eq(E);S.push(P)}return S.reduce((D,R)=>{var j;return(j=D?.and(R))!==null&&j!==void 0?j:R})}),w=b.reduce((C,S)=>{var y;return(y=C?.or(S))!==null&&y!==void 0?y: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 et(function*(){return o.table.seekRow(e,t,n,i,a,l,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}const bi=jl;function $l(r,e,t){return e=Vl(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Vl(r){var e=Ul(r,"string");return typeof e=="symbol"?e:String(e)}function Ul(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Gl extends _{constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new je(e);super(e),$l(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 oe}getColumnIndexByName(e){}get initialMovedColumns(){return oe}get initialMovedRows(){return oe}get initialColumnHeaderGroups(){return oe}get groupedColumns(){return oe}formatForCell(e,t){}valueForCell(e,t){}get filter(){return oe}set filter(e){}get partition(){return oe}set partition(e){}get partitionColumns(){return oe}get formatter(){return this.modelFormatter}set formatter(e){this.modelFormatter=e}displayString(e,t,n){return""}get sort(){return oe}set sort(e){}get customColumns(){return oe}set customColumns(e){}get formatColumns(){return oe}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 oe}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 oe}set columnHeaderGroups(e){}get columnHeaderGroupMap(){return rn}getColumnHeaderParentGroup(e,t){}}const Hl=Gl;function nr(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){nr(a,n,i,l,s,"next",o)}function s(o){nr(a,n,i,l,s,"throw",o)}l(void 0)})}}function Bl(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=Kl(r,"string");return typeof e=="symbol"?e:String(e)}function Kl(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Wl extends Hl{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new je(e);super(e,n),Bl(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 Kn("Partition not found");return n}catch(i){throw vl(i)?i:new Kn("Unable to retrieve partition")}})()}}const ql=Wl;function rr(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function Zl(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){rr(a,n,i,l,s,"next",o)}function s(o){rr(a,n,i,l,s,"throw",o)}l(void 0)})}}function ir(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function ar(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ir(Object(t),!0).forEach(function(n){nt(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):ir(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function nt(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=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 Ql=Z.module("IrisGridTreeTableModel");class Jl extends gi{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new je(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,n,i),nt(this,"virtualColumns",void 0),nt(this,"getCachedColumns",I((a,l)=>[...a,...l])),nt(this,"getCachedGroupColumns",I((a,l)=>[...a,...l])),nt(this,"getCachedFilterableColumnSet",I((a,l,s)=>new Set((l?.length>0?l:a).filter(o=>!s.includes(o)).map(o=>a.findIndex(d=>o.name===d.name))))),nt(this,"getCachedGroupedColumnSet",I(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?Ql.warn("Missing key data for virtual column",o,a,d,e):s.set(o,h)}return ar(ar({},l),{},{data:s,isExpanded:n,hasChildren:i,depth:a})}snapshot(e,t,n){var i=this;return Zl(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(b=>b.name));for(var d=new V(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=V.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 es=Jl;function lr(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function ts(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){lr(a,n,i,l,s,"next",o)}function s(o){lr(a,n,i,l,s,"throw",o)}l(void 0)})}}function O(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)}var ke=Z.module("IrisGridProxyModel");function tt(r,e,t,n){return A.isTreeTable(e)?new es(r,e,t):A.isPartitionedTable(e)?new ql(r,e,t):new bi(r,e,t,n)}class is extends _{constructor(e,t){var n,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new je(e),a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),n=this,O(this,"dh",void 0),O(this,"originalModel",void 0),O(this,"model",void 0),O(this,"modelPromise",void 0),O(this,"rollup",void 0),O(this,"partition",void 0),O(this,"selectDistinct",void 0),O(this,"currentViewport",void 0),O(this,"textForCell",function(){return n.model.textForCell(...arguments)}),O(this,"truncationCharForCell",function(){return n.model.truncationCharForCell(...arguments)}),O(this,"textAlignForCell",function(){return n.model.textAlignForCell(...arguments)}),O(this,"colorForCell",function(){return n.model.colorForCell(...arguments)}),O(this,"backgroundColorForCell",function(){return n.model.backgroundColorForCell(...arguments)}),O(this,"textForColumnHeader",function(){return n.model.textForColumnHeader(...arguments)}),O(this,"colorForColumnHeader",function(){return n.model.colorForColumnHeader(...arguments)}),O(this,"textForRowHeader",function(){return n.model.textForRowHeader(...arguments)}),O(this,"textForRowFooter",function(){return n.model.textForRowFooter(...arguments)}),O(this,"isRowMovable",function(){return n.model.isRowMovable(...arguments)}),O(this,"isColumnMovable",function(){return n.model.isColumnMovable(...arguments)}),O(this,"isRowExpandable",function(){return $e(n.model)?n.model.isRowExpandable(...arguments):!1}),O(this,"isRowExpanded",function(){return $e(n.model)?n.model.isRowExpanded(...arguments):!1}),O(this,"setRowExpanded",function(){if($e(n.model))return n.model.setRowExpanded(...arguments);throw Error("Function setRowExpanded does not exist on IrisGridTableModel")}),O(this,"expandAll",()=>{if($e(this.model))return this.model.expandAll();throw Error("Function expandAll does not exist on IrisGridTableModel")}),O(this,"collapseAll",()=>{if($e(this.model))return this.model.collapseAll();throw Error("Function collapseAll does not exist on IrisGridTableModel")}),O(this,"depthForRow",function(){return $e(n.model)?n.model.depthForRow(...arguments):0}),O(this,"getColumnHeaderGroup",function(){return n.model.getColumnHeaderGroup(...arguments)}),O(this,"getColumnHeaderParentGroup",function(){return n.model.getColumnHeaderParentGroup(...arguments)}),O(this,"sourceForCell",function(){return n.model.sourceForCell(...arguments)}),O(this,"getClearFilterRange",function(){return n.model.getClearFilterRange(...arguments)}),O(this,"formatForCell",function(){return n.model.formatForCell(...arguments)}),O(this,"valueForCell",function(){return n.model.valueForCell(...arguments)}),O(this,"renderTypeForCell",function(){return n.model.renderTypeForCell(...arguments)}),O(this,"dataBarOptionsForCell",function(){return n.model.dataBarOptionsForCell(...arguments)}),O(this,"displayString",function(){return n.model.displayString(...arguments)}),O(this,"isEditableRange",function(){return ze(n.model)?n.model.isEditableRange(...arguments):!1}),O(this,"isFilterable",function(){return n.model.isFilterable(...arguments)}),O(this,"setViewport",(s,o,d)=>{this.currentViewport={top:s,bottom:o,columns:d},this.model.setViewport(s,o,d)}),O(this,"snapshot",function(){return n.model.snapshot(...arguments)}),O(this,"textSnapshot",function(){return n.model.textSnapshot(...arguments)}),O(this,"valuesTable",function(){return n.model.valuesTable(...arguments)}),O(this,"editValueForCell",function(){return ze(n.model)?n.model.editValueForCell(...arguments):""}),O(this,"setValueForCell",function(){return ze(n.model)?n.model.setValueForCell(...arguments):Promise.reject(new Error("Model is not editable"))}),O(this,"setValueForRanges",function(){return ze(n.model)?n.model.setValueForRanges(...arguments):Promise.reject(new Error("Model is not editable"))}),O(this,"setValues",function(){return ze(n.model)?n.model.setValues(...arguments):Promise.resolve()}),O(this,"isValidForCell",function(){return ze(n.model)?n.model.isValidForCell(...arguments):!1}),O(this,"delete",function(){return n.model.delete(...arguments)}),O(this,"commitPending",function(){return n.model.commitPending(...arguments)}),this.handleModelEvent=this.handleModelEvent.bind(this);var l=tt(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 G(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 G(_.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)}Ze(e)&&this.dispatchEvent(new G(_.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=Oe.makeCancelable(e,t=>t.close()),this.modelPromise.then(t=>{this.modelPromise=null,this.setModel(t)}).catch(t=>{if(Oe.isCanceled(t)){ke.debug2("setNextModel cancelled");return}ke.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new G(_.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 $e(this.model)?this.model.hasExpandableRows:!1}get isExpandAllAvailable(){if($e(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 Ke(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!Ke(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&&Ke(this.originalModel)&&(e.mode==="keys"?t=this.originalModel.partitionKeysTable().then(n=>tt(this.dh,n,this.formatter)):e.mode==="merged"?t=this.originalModel.partitionMergedTable().then(n=>tt(this.dh,n,this.formatter)):t=this.originalModel.partitionTable(e.partitions).then(n=>tt(this.dh,n,this.formatter))),this.setNextModel(t)}partitionKeysTable(){if(!Ke(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionKeysTable()}partitionMergedTable(){if(!Ke(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionMergedTable()}partitionTable(e){if(!Ke(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionTable(e)}get 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(!qr(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);Ze(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(n=>tt(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);Ze(this.originalModel)&&t.length>0&&(n=this.originalModel.table.selectDistinct(t).then(i=>tt(this.dh,i,this.formatter))),this.setNextModel(n)}get table(){if(Ze(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 Ke(this.originalModel)?this.originalModel.isPartitionRequired:!1}get isEditable(){return ze(this.model)&&this.model.isEditable}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 ts(function*(){return o.model.seekRow(e,t,n,i,a,l,s)})()}get isSeekRowAvailable(){return this.model.isSeekRowAvailable}}const as=is;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 ls(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)})}}class ss{static makeModel(e,t){var n=arguments;return ls(function*(){var i=n.length>2&&n[2]!==void 0?n[2]:new je(e),a=null;return!A.isTreeTable(t)&&!A.isPartitionedTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new as(e,t,i,a)})()}}const Tn=ss;function Fn(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=ds(r,"string");return typeof e=="symbol"?e:String(e)}function ds(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{}Fn(Zt,"OPEN","ChartEvent.OPEN");Fn(Zt,"CLOSE","ChartEvent.CLOSE");Fn(Zt,"COLUMN_SELECTED","ChartEvent.COLUMN_SELECTED");const Vt=Zt;function pt(r,e,t){return e=us(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function us(r){var e=hs(r,"string");return typeof e=="symbol"?e:String(e)}function hs(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Qe{}pt(Qe,"OPEN_GRID","IrisGridEvent.OPEN_GRID");pt(Qe,"CLOSE_GRID","IrisGridEvent.CLOSE_GRID");pt(Qe,"DATA_SELECTED","IrisGridEvent.DATA_SELECTED");pt(Qe,"COLUMN_SELECTED","IrisGridEvent.COLUMN_SELECTED");pt(Qe,"STATE_CHANGED","IrisGridEvent.STATE_CHANGED");pt(Qe,"CREATE_CHART","IrisGridevent.CREATE_CHART");const he=Qe;function Ci(r,e,t){return e=cs(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function cs(r){var e=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)}class Dn{}Ci(Dn,"OPEN","PandasEvent.OPEN");Ci(Dn,"CLOSE","PandasEvent.CLOSE");const ms=Dn;function Si(r){return"descriptor"in r}function Mn(r){if(Si(r))return r.descriptor;var{widgetType:e,widgetName:t,description:n,glContainer:i}=r,a=L.getTitleFromContainer(i);return{type:e,name:t,displayName:a??void 0,description:n}}function vs(r){var{children:e}=r,t=Mn(r),{name:n,type:i,description:a,displayName:l}=t;return u.jsxs("div",{className:"tab-tooltip-grid-container",children:[u.jsxs("span",{className:"tab-tooltip-title",children:[i," Name"]}),u.jsxs("div",{className:"tab-tooltip-name-wrapper",children:[u.jsx("span",{className:"tab-tooltip-name",children:n}),u.jsx(ma,{className:"tab-tooltip-copy",tooltip:"Copy name",copy:n})]}),n!==l&&l&&u.jsxs(u.Fragment,{children:[u.jsx("span",{className:"tab-tooltip-title",children:"Display Name"}),u.jsx("span",{className:"tab-tooltip-name",children:l})]}),a&&u.jsx("div",{className:"tab-tooltip-description",children:a}),e]})}const Nn=fi(vs);function vn(r,e,t){return e=fs(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function fs(r){var e=gs(r,"string");return typeof e=="symbol"?e:String(e)}function gs(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class wi extends T.PureComponent{constructor(e){super(e),vn(this,"getCachedRenderTabTooltip",I((t,n)=>t?()=>u.jsx(Nn,{descriptor:n}):void 0)),vn(this,"getCachedPanelDescriptor",I(t=>Mn(t))),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 e,t=this.getPanelDescriptor();va((e=t?.name)!==null&&e!==void 0?e:"")}getErrorMessage(){var{errorMessage:e}=this.props,t=this.getPanelDescriptor(),{isClientDisconnected:n,isPanelDisconnected:i,isWidgetDisconnected:a,isWaitingForReconnect:l}=this.state;if(e)return"".concat(e);if(n&&i&&l)return`Disconnected from server.
|
|
3
|
+
Check your internet connection.`;if(n&&i)return"Disconnected from server.";if(i){var{name:s,type:o}=t;return'Variable "'.concat(s,`" not set.
|
|
4
|
+
`).concat(o," does not exist yet.")}if(a)return"".concat(t.name," is unavailable.")}getPanelDescriptor(){return this.getCachedPanelDescriptor(this.props)}handleSessionClosed(){var{onSessionClose:e}=this.props;this.setState({isPanelDisconnected:!0,isWaitingForReconnect:!1});for(var t=arguments.length,n=new Array(t),i=0;i<t;i++)n[i]=arguments[i];e?.(...n)}handleSessionOpened(){for(var{onSessionOpen:e}=this.props,t=arguments.length,n=new Array(t),i=0;i<t;i++)n[i]=arguments[i];e?.(...n)}render(){var{children:e,className:t,componentPanel:n,isLoaded:i,isLoading:a,glContainer:l,glEventHub:s,isDisconnected:o,isClonable:d,isRenamable:h,showTabTooltip:c=!1,renderTabTooltip:m,onClearAllFilters:p,onHide:g,onFocus:v,onBlur:f,onResize:b,onShow:w,onTabBlur:C,onTabFocus:S,onTabClicked:y}=this.props,F=this.getPanelDescriptor(),{isPanelDisconnected:N,isWidgetDisconnected:E,isPanelInactive:P}=this.state,D=this.getErrorMessage(),R=m??this.getCachedRenderTabTooltip(c,F),j=[{title:"Copy ".concat(F.type," Name"),group:Zr.groups.medium,order:20,action:this.handleCopyName}];return u.jsxs(Ft,{className:me(t,{disconnected:N||E||o,inactive:P}),componentPanel:n,glContainer:l,glEventHub:s,onClearAllFilters:p,onHide:g,onFocus:v,onBlur:f,onResize:b,onShow:w,onSessionClose:this.handleSessionClosed,onSessionOpen:this.handleSessionOpened,onTabBlur:C,onTabFocus:S,onTabClicked:y,renderTabTooltip:R,errorMessage:D,isLoaded:i,isLoading:a,isClonable:d,isRenamable:h,additionalActions:j,children:[e,P&&u.jsx("div",{className:"fill-parent-absolute"})]})}}vn(wi,"defaultProps",{className:"",isClonable:!0,isDisconnected:!1,isLoading:!1,isLoaded:!0,isRenamable:!0,showTabTooltip:!0,widgetName:"Widget",widgetType:"Widget",description:""});const Nt=fi(wi);function yi(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),b=Me.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(b):v!=null&&v?"Set a filter control value for ".concat(b):"Double click a row in a linked table to set a value for ".concat(b)},[t,n,s]),d=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:me("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?Ja:el;return u.jsxs("div",{className:me("waiting-filter-item",{"is-invalid":v}),children:[u.jsx(pe,{icon:f}),g.name]},g.name)})}),u.jsxs("div",{children:[u.jsx(Hn,{onClick:h,className:"btn-primary",children:"Add Input Filters"}),u.jsx(Hn,{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})]})]})})}yi.propTypes={columnMap:k.instanceOf(Map).isRequired,inputFilterMap:k.instanceOf(Map).isRequired,linkedColumnMap:k.instanceOf(Map).isRequired,onAdd:k.func.isRequired,onOpenLinker:k.func.isRequired,waitingFilterMap:k.instanceOf(Map).isRequired,waitingInputMap:k.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:me("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(pi,{className:me("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 it(r){return r.settings!==void 0}function On(r){return r.figure!==void 0}function Ei(r){if(r==null)return!1;var{settings:e,tableSettings:t}=r;return typeof e=="object"&&typeof t=="object"}function Pi(r){return r!=null&&Ei(r.panelState)}function or(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function It(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?or(Object(t),!0).forEach(function(n){ue(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):or(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function ue(r,e,t){return e=bs(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function bs(r){var e=Cs(r,"string");return typeof e=="symbol"?e:String(e)}function Cs(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var ie=Z.module("ChartPanel"),Ss=150;function ws(r){return r.inputFilters!=null}function ys(r){return r.panelState!=null}class Xt extends T.Component{constructor(e){super(e),ue(this,"panelContainer",void 0),ue(this,"pending",void 0),ue(this,"getWaitingInputMap",I((l,s,o)=>{if(!l)return new Map;var d=new Map(s);return o.forEach((h,c)=>{d.delete(c)}),d})),ue(this,"getWaitingFilterMap",I((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})),ue(this,"getInputFilterColumnMap",I((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})),ue(this,"getLinkedColumnMap",I((l,s)=>{for(var o=new Map,d=L.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})),ue(this,"getSelectorColumns",I((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)})))),ue(this,"getWidgetPanelDescriptor",I(l=>{var s="Chart";if(it(l))s=l.table;else if(On(l)){var o;s=(o=l.figure)!==null&&o!==void 0?o:s}else{var d;s=(d=l.name)!==null&&d!==void 0?d:s}return It(It({},l),{},{type:"Chart",name:s})})),this.handleColumnSelected=this.handleColumnSelected.bind(this),this.handleColumnMouseEnter=this.handleColumnMouseEnter.bind(this),this.handleColumnMouseLeave=this.handleColumnMouseLeave.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleFilterAdd=this.handleFilterAdd.bind(this),this.handleHide=this.handleHide.bind(this),this.handleError=this.handleError.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleSettingsChanged=this.handleSettingsChanged.bind(this),this.handleOpenLinker=this.handleOpenLinker.bind(this),this.handleShow=this.handleShow.bind(this),this.handleSourceColumnChange=this.handleSourceColumnChange.bind(this),this.handleSourceFilterChange=this.handleSourceFilterChange.bind(this),this.handleSourceSortChange=this.handleSourceSortChange.bind(this),this.handleTabBlur=this.handleTabBlur.bind(this),this.handleTabFocus=this.handleTabFocus.bind(this),this.handleUpdate=this.handleUpdate.bind(this),this.updateModelFromSource=Xe(this.updateModelFromSource.bind(this),Ss),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.panelContainer=le.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&&it(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&&Qn(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(Vt.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(be.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){Oe.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(),it(e)){var{settings:l}=e;this.pending.add(a.plot.Figure.create(new ne(a).makeFigureSettings(l,t))).then(s=>{Qn(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&&ws(e.props)&&ys(e.state)){var{inputFilters:l}=e.props,{panelState:s}=e.state;s!=null&&(a=H.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=It(It({},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(Y.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(Y.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=Me.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{columnSelectionValidator:e,glContainer:t,glEventHub:n,inputFilters:i,isLinkerActive:a,links:l,metadata:s,settings:o,Plotly:d,containerRef:h}=this.props,{columnMap:c,filterMap:m,error:p,model:g,isActive:v,isDisconnected:f,isLoaded:b,isLoading:w}=this.state,C=this.getInputFilterColumnMap(c,i),S=this.getLinkedColumnMap(c,l),y=g!=null?this.getWaitingInputMap(g.isFilterRequired(),c,m):new Map,F=g!=null?this.getWaitingFilterMap(g.isFilterRequired(),c,m,S,C):new Map,N=p!=null?"Unable to open chart. ".concat(p):void 0,E=y.size>0,P=c.size>0&&a,D=this.getWidgetPanelDescriptor(s);return u.jsx(Nt,{className:me("iris-chart-panel",{"input-required":E}),componentPanel:this,glContainer:t,glEventHub:n,onHide:this.handleHide,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabBlur:this.handleTabBlur,onTabFocus:this.handleTabFocus,errorMessage:N,isDisconnected:f,isLoading:w,isLoaded:b,descriptor:D,children:u.jsxs("div",{ref:this.panelContainer,className:"chart-panel-container h-100 w-100",children:[u.jsx("div",{className:"chart-container h-100 w-100",children:b&&g&&u.jsx(mi,{isActive:v,model:g,settings:o,onDisconnect:this.handleDisconnect,onReconnect:this.handleReconnect,onUpdate:this.handleUpdate,onError:this.handleError,onSettingsChanged:this.handleSettingsChanged,Plotly:d,containerRef:h})}),u.jsx(pn,{in:E&&!P&&!w,mountOnEnter:!0,unmountOnExit:!0,children:u.jsx(yi,{inputFilterMap:C,linkedColumnMap:S,onAdd:this.handleFilterAdd,onOpenLinker:this.handleOpenLinker,columnMap:c,waitingFilterMap:F,waitingInputMap:y})}),u.jsx(pn,{in:P,mountOnEnter:!0,unmountOnExit:!0,children:u.jsx(Tt,{columns:this.getSelectorColumns(c,S,e),onColumnSelected:this.handleColumnSelected,onMouseEnter:this.handleColumnMouseEnter,onMouseLeave:this.handleColumnMouseLeave})})]})})}}ue(Xt,"defaultProps",{columnSelectionValidator:null,isLinkerActive:!1,source:null,sourcePanel:null,panelState:null,settings:{},containerRef:null});ue(Xt,"displayName","ChartPanel");ue(Xt,"COMPONENT","ChartPanel");var Es=(r,e)=>{var{localDashboardId:t,metadata:n}=e,i;n!=null&&it(n)&&(i=n.sourcePanelId);var a=Ht(r,t),l=Qr(r,t),s=bn(r),o=Bt(r,t),d=s===be.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:Cn(r)}},Ps=Ye(Es,{setActiveTool:Xr,setDashboardIsolatedLinkerPanelId:gn},null,{forwardRef:!0})(Xt);const Ot=Ps;function ge(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=Fs(r,"string");return typeof e=="symbol"?e:String(e)}function Fs(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 xt=Z.module("DropdownFilter"),Ds=150;class Ae extends T.Component{constructor(e){super(e),ge(this,"dropdownRef",void 0),ge(this,"getCompatibleColumns",I((a,l)=>a!=null?l.filter(s=>{var{type:o}=s;return o!==void 0&&A.isCompatibleType(o,a.columnType)}):[])),ge(this,"getColumnOptions",I((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",I((a,l)=>a.indexOf(l))),ge(this,"getValueOptions",I(a=>[u.jsx("option",{value:"-1",children:Ae.PLACEHOLDER},"-1"),...a.map((l,s)=>u.jsx("option",{value:s,children:l??"(null)"},"".concat(s,"/").concat(l)))])),ge(this,"getItemLabel",ce((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",Xe(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s??void 0})},Ds)),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=le.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(xt.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(),xt.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]:xt.debug2("Selected default item"),xt.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:b}=this.state,w=l===null,C=this.getCompatibleColumns(l,t),S=l!=null,y=(e=l?.columnName)!==null&&e!==void 0?e:Ae.SOURCE_BUTTON_PLACEHOLDER,F=m!=null?"".concat(m.name," Filter"):null,[N,E]=this.getColumnOptions(C,f),P=this.getValueOptions(h),D=this.getSelectedOptionIndex(h,b),R=!S||f==null,j=v&&!i,B="source-column-btn-".concat(g),ee="filter-column-select-".concat(g);return u.jsxs(En,{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:B,children:"Source Column"}),u.jsx(pi,{id:B,isLinked:S,onClick:s,onMouseEnter:o,onMouseLeave:d,className:Ae.SOURCE_BUTTON_CLASS_NAME,disabled:n,children:y}),u.jsx("div",{className:"text-muted small",children:"Select a source column for the list by linking to a table."}),u.jsx("label",{htmlFor:ee,children:"Filter Column"}),u.jsx(Et,{id:ee,value:String(E),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($,{kind:"secondary",type:"button",onClick:this.handleSettingsCancel,disabled:p||v||i,tooltip:i?"Cancel disabled while linker open":void 0,children:"Cancel"}),u.jsx($,{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(Et,{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($,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:u.jsx(pe,{icon:wn,transform:"grow-4"}),tooltip:"Dropdown Filter Settings"})})]})})]})}}ge(Ae,"defaultProps",{column:null,disableLinking:!1,isLinkerActive:!1,isLoaded:!1,isValueShown:!1,settingsError:null,source:null,value:"",values:[],onColumnSelected:()=>{},onSourceMouseEnter:()=>{},onSourceMouseLeave:()=>{}});ge(Ae,"PLACEHOLDER","Select a value...");ge(Ae,"SOURCE_BUTTON_CLASS_NAME","btn-dropdown-filter-selector");ge(Ae,"SOURCE_BUTTON_PLACEHOLDER","Select a column");const dr=Ae;function re(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 K=Z.module("DropdownFilterPanel"),Os=250,Ls=(r,e)=>{var{localDashboardId:t}=e,n=L.getIdFromPanel({props:e}),i=Ht(r,t),a=Dt(r,t),l=bn(r),s=Bt(r,t),o=l===be.LINKER&&(s===void 0||s===n),d=l===be.LINKER&&s!==void 0&&s!==n;return{columns:Sn(r,t),columnSelectionValidator:zt(r,t),dh:Jr(r),isLinkerActive:o,disableLinking:d,settings:Cn(r),panelTableMap:i,dashboardLinks:a}},Rs=Ye(Ls,null,null,{forwardRef:!0});class Ce extends T.Component{constructor(e){super(e),re(this,"dateTimeFormatter",void 0),re(this,"dropdownFilterRef",void 0),re(this,"panelContainer",void 0),re(this,"pending",void 0),re(this,"cleanup",void 0),re(this,"columnFormats",void 0),re(this,"getCachedValues",ce((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)})),re(this,"getCachedPanelLinks",ce((c,m)=>{var p=L.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})})),re(this,"getCachedSource",ce(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})),re(this,"getCachedSourceTable",ce((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})),re(this,"getCachedSourceColumn",ce((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=Xe(this.handleChange.bind(this),Os),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=le.createRef(),this.panelContainer=le.createRef(),this.pending=new Yr;var{dh:t,panelState:n,settings:i}=e;this.columnFormats=mn.getColumnFormats(i),this.dateTimeFormatter=new ei(t,{showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:"yyyy-MM-dd HH:mm:ss.SSSSSSSSS"});var{value:a="",isValueShown:l=!1,name:s,type:o,timestamp:d}=n??{},h=s!=null&&o!=null?{name:s,type:o}:void 0;this.state={column:h,formatter:new je(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(dr.SOURCE_BUTTON_CLASS_NAME)),n=(e=t?.getBoundingClientRect())!==null&&e!==void 0?e:null;if(n==null||n.width<=0||n.height<=0)return null;var i=n.left+n.width/2,a=n.bottom;return[i,a]}getSettingsErrorMessage(){var{sourceSize:e}=this.state;if(e>Ce.MAX_TABLE_SIZE)return"Table too large, must have fewer than ".concat(Ce.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(Y.COLUMN_SELECTED,this,Ce.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(Y.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=>{Oe.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,Ce.MAX_TABLE_SIZE-1,[n])}updateFormatterSettings(e){var{dh:t}=this.props,n=mn.getColumnFormats(e);qr(this.columnFormats,n)||(this.columnFormats=n,this.setState({formatter:new je(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,Ce.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),b=this.getSettingsErrorMessage(),w=this.getPanelErrorMessage(),C=v&&p!=null?this.getCachedValues(m,p,o):[];return u.jsx(Nt,{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(dr,{ref:this.dropdownFilterRef,column:s,columns:e,isValueShown:h,isLinkerActive:l,disableLinking:n,isLoaded:v,settingsError:b,source:f,value:c,values:C,onChange:this.handleChange,onColumnSelected:this.handleColumnSelected,onSourceMouseEnter:this.handleSourceMouseEnter,onSourceMouseLeave:this.handleSourceMouseLeave})})})}}re(Ce,"displayName","DropdownFilterPanel");re(Ce,"COMPONENT","DropdownFilterPanel");re(Ce,"MAX_TABLE_SIZE",256);re(Ce,"SOURCE_COLUMN",Object.freeze({name:"FilterSource",type:null}));var Is=Rs(Ce);const He=Is;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 _t(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){Ct(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 Ct(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=_s(r,"string");return typeof e=="symbol"?e:String(e)}function _s(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"),ks="Enter name...",hr="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),Ct(this,"renameInputRef",le.createRef()),Ct(this,"dropdownRef",le.createRef()),Ct(this,"editDropdownRef",le.createRef()),Ct(this,"isRenamingExistingSet",I((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=_t(_t({},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]=_t(_t({},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(pe,{icon:Vn,mask:Un,transform:"shrink-1 down-5 right-7"}),u.jsx(pe,{icon:rl,className:"text-primary",transform:"shrink-6 down-5 right-7"})]}),f=u.jsxs("div",{className:"fa-layers",children:[u.jsx(pe,{icon:Vn,mask:Un,transform:"shrink-1 down-5 right-7"}),u.jsx(pe,{icon:il,transform:"shrink-1 down-5 right-7"})]});return u.jsx("div",{className:"filter-set-manager fill-parent-absolute",children:u.jsxs(En,{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($,{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:ks,value:e,ref:this.renameInputRef,onChange:this.handleNameInputChange,onKeyPress:this.handleNameInputKeyPress,spellCheck:"false"}),u.jsx($,{"data-testid":"rename-confirm-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameConfirm,tooltip:"Save","test-id":"button-save",icon:tl}),u.jsx($,{"data-testid":"rename-cancel-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameCancel,tooltip:"Cancel",icon:nl})]}),t!==void 0&&u.jsx("div",{className:"error-message",children:t})]}),u.jsx("div",{className:"form-group",children:u.jsxs(ml,{onChange:this.handleRestoreFullStateChange,value:"".concat(l),children:[u.jsx(Bn,{value:"false",children:"Restore only filters"}),u.jsx(Bn,{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(Et,{"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:hr}),a.map(b=>{var{id:w,title:C}=b;return u.jsx("option",{value:w,children:C},w)})]}),u.jsx($,{kind:"ghost",onClick:this.handleSetUpdate,disabled:m,icon:f,tooltip:"Update"}),u.jsx($,{kind:"ghost",onClick:this.handleSetEdit,disabled:m,icon:ui,tooltip:"Edit"}),u.jsx($,{kind:"ghost",onClick:this.handleSetDelete,disabled:m,icon:yn,tooltip:"Delete"})]})]}),u.jsx("div",{children:u.jsx($,{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($,{kind:"secondary",onClick:this.handleSettingsCancel,children:"Cancel"})," ",u.jsx($,{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(Et,{"data-testid":"value-card-filter-select",ref:this.dropdownRef,value:d??"-1",className:"custom-select filter-value-select",onChange:this.handleFilterChange,children:[o.length===0&&u.jsx("option",{value:"-1",disabled:!0,children:hr}),o.map(b=>{var{id:w,title:C}=b;return u.jsx("option",{value:w,children:C},w)})]}),u.jsx($,{"data-testid":"filter-apply-button",kind:"ghost",onClick:this.handleFilterApply,icon:hi,tooltip:"Apply Filter Set"})]})})}),u.jsx("div",{className:"filter-set-manager-menu",children:u.jsx($,{kind:"ghost",className:"btn btn-link btn-link-icon m-2 px-2",onClick:this.handleSettingsClick,tooltip:"Settings",icon:u.jsx(pe,{icon:wn,transform:"grow-4"})})})]},"back")]})})}}const Ti=Ut;function cr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function pr(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?cr(Object(t),!0).forEach(function(n){As(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):cr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function As(r,e,t){return e=js(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function js(r){var e=$s(r,"string");return typeof e=="symbol"?e:String(e)}function $s(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 Vs(r){var e,t,n,i,a,{model:l}=r,s=((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),o=l?.displayString(s,"long"),d=(a=l?.columnCount)!==null&&a!==void 0?a:0,h=l?.displayString(d,"long");return u.jsxs(Nn,pr(pr({},r),{},{children:[u.jsx("hr",{className:"tab-tooltip-divider"}),u.jsx("span",{children:"Number of Columns"}),u.jsx("span",{className:"tab-tooltip-statistic-value",children:h}),u.jsx("span",{children:"Number of Rows"}),u.jsx("span",{className:"tab-tooltip-statistic-value",children:o})]}))}function Fi(r){if(r==null)return!1;var e=r;return typeof e.table=="string"}function Di(r){if(r==null)return!1;var e=r;return typeof e.name=="string"}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 Fe(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){X(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 X(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=Gs(r,"string");return typeof e=="symbol"?e:String(e)}function Gs(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 De=Z.module("IrisGridPanel"),Hs=500,Bs={IrisGrid:Wt,IrisGridTableModel:bi,ContextMenuRoot:Ca};function dn(r){if(r==null)throw new Error("No metadata provided");if(Di(r))return r.name;if(Fi(r))return r.table;throw new Error("Unable to determine table name from metadata: ".concat(JSON.stringify(r)))}class st extends T.PureComponent{constructor(e){super(e),X(this,"irisGrid",void 0),X(this,"pluginRef",void 0),X(this,"modelPromise",void 0),X(this,"irisGridState",void 0),X(this,"gridState",void 0),X(this,"pluginState",void 0),X(this,"irisGridUtils",void 0),X(this,"getGridInputFilters",I((n,i)=>H.getInputFiltersForColumns(n,i.filter(a=>{var{value:l,excludePanelIds:s}=a,o=L.getIdFromPanel(this);return l!=null&&(s==null||o!=null&&!s.includes(o))})))),X(this,"getAlwaysFetchColumns",I((n,i)=>{for(var a=L.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]})),X(this,"getPluginContent",I((n,i,a,l,s)=>{if(!i||!Ze(i)||n==null||i.table==null)return null;var o={panel:this,onFilter:this.handlePluginFilter,onFetchColumns:this.handlePluginFetchColumns,user:a,workspace:l,components:Bs};return u.jsx("div",{className:"iris-grid-plugin",children:u.jsx(n,Fe({ref:this.pluginRef,filter:this.handlePluginFilter,fetchColumns:this.handlePluginFetchColumns,model:i,table:i.table,onStateChange:this.handlePluginStateChange,pluginState:s},o))})})),X(this,"getDehydratedIrisGridPanelState",I((n,i,a,l)=>H.dehydrateIrisGridPanelState(n,{isSelectingPartition:i,partitions:a,advancedSettings:l}))),X(this,"getDehydratedIrisGridState",I((n,i,a,l,s,o,d,h,c,m,p,g,v,f,b,w,C,S,y,F,N,E)=>(M(this.irisGridUtils),this.irisGridUtils.dehydrateIrisGridState(n,{advancedFilters:a,aggregationSettings:C,customColumnFormatMap:l,isFilterBarShown:s,metrics:{userColumnWidths:b,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:y,conditionalFormats:F,columnHeaderGroups:N,partitionConfig:E})))),X(this,"getDehydratedGridState",I((n,i,a,l,s)=>H.dehydrateGridState(n,{isStuckToBottom:l,isStuckToRight:s,movedColumns:i,movedRows:a}))),X(this,"getCachedPanelState",I((n,i,a,l)=>({irisGridPanelState:n,irisGridState:i,gridState:a,pluginState:l}))),X(this,"getWidgetPanelDescriptor",I((n,i)=>{var a=dn(n);return Fe(Fe({},n),{},{type:"Table",name:a,description:i})})),X(this,"savePanelState",Xe(()=>{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:b,reverseType:w,rollupConfig:C,showSearchBar:S,searchValue:y,selectDistinctColumns:F,selectedSearchColumns:N,sorts:E,invertSearchColumns:P,metrics:D,pendingDataMap:R,frozenColumns:j,conditionalFormats:B,columnHeaderGroups:ee,partitionConfig:U}=n;M(s),M(D);var{userColumnWidths:de,userRowHeights:we}=D;M(i);var{isStuckToBottom:Le,isStuckToRight:ve,movedColumns:ye,movedRows:Ee}=i,Pe=this.getCachedPanelState(this.getDehydratedIrisGridPanelState(s,d,h,c),this.getDehydratedIrisGridState(s,E,m,g,v,f,b,w,C,S,y,F,N,P,de,we,p,R,j,B,ee,U),this.getDehydratedGridState(s,ye,Ee,Le,ve),a);Pe!==o&&(De.debug("Saving panel state",this,Pe),this.setState({panelState:Pe}),l?.(Pe))},Hs)),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=le.createRef(),this.pluginRef=le.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(fl.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 dn(e)}initModel(){this.setState({isModelReady:!1,isLoading:!0,error:null});var{makeModel:e}=this.props;this.modelPromise!=null&&this.modelPromise.cancel(),this.modelPromise=Oe.makeCancelable(e(),t=>t.close()),this.modelPromise.then(this.handleLoadSuccess).catch(this.handleLoadError)}handleLoadSuccess(e){var t=e,{panelState:n,irisGridStateOverrides:i}=this.state,a=[];if(this.irisGridUtils=new H(t.dh),n!=null){var{irisGridState:l}=n,{aggregationSettings:s,customColumns:o,selectDistinctColumns:d=[],rollupConfig:h}=Fe(Fe({},l),i);o.length>0&&a.push(c=>{c.customColumns=o}),h!=null&&h.columns.length>0&&a.push(c=>{c.rollupConfig=H.getModelRollupConfig(c.originalColumns,h,s)}),d.length>0&&a.push(c=>{c.selectDistinctColumns=d})}this.setState({model:t,modelQueue:a}),this.initModelQueue(t,a)}initModelQueue(e,t){var n=e;if(t.length===0){this.modelInitialized(n);return}var i=t.shift();De.debug("initModelQueue",i),i&&i(n),this.setState({modelQueue:t})}handleAdvancedSettingsChange(e,t){De.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(he.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){De.debug("handleTableChanged",e);var{glEventHub:t}=this.props,{detail:n}=e;t.emit(Y.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=L.getIdFromPanel(this),o;l&&(o=H.extractTableSettings(l,i)),n.emit(he.CREATE_CHART,{metadata:{settings:e,sourcePanelId:s,table:a,tableSettings:o},table:Ze(t)?t.table:void 0})})}handleColumnSelected(e){var{glEventHub:t}=this.props;t.emit(he.COLUMN_SELECTED,this,e)}handleDataSelected(e,t){var{glEventHub:n}=this.props;n.emit(he.DATA_SELECTED,this,t)}handleShow(){this.updateGrid()}handleTabClicked(){this.irisGrid.current&&this.irisGrid.current.focus()}handleError(e){De.error(e),this.setState({error:e,isLoading:!1})}handleDisconnect(){this.setState({error:new Error("Table disconnected"),isDisconnected:!0,isLoading:!1})}handleReconnect(){this.setState({isDisconnected:!1,error:null})}handleLoadError(e){Oe.isCanceled(e)||this.handleError(e)}modelInitialized(e){var{glEventHub:t,loadPlugin:n}=this.props;if(this.modelPromise=void 0,this.loadPanelState(e),this.setState({isModelReady:!0}),Ze(e)){var{table:i}=e,{pluginName:a}=i;if(a!==""&&n!=null&&a!=null){var l=n(a);this.setState({Plugin:l})}t.emit(Y.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){De.debug2("sendColumnsChange",e);var{glEventHub:t}=this.props;t.emit(Y.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),b=(n=c.get(f))!==null&&n!==void 0?n:0,w=(i=m.get(f))!==null&&i!==void 0?i:0,C=Math.max(o.left,Math.min(f>p?o.right:o.left+b+w*.5,o.right)),S=o.top+h*g;return[C,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;De.debug("setFilters",t,n);var{model:i,isDisconnected:a}=this.state,l=this.irisGrid.current;if(l==null||a){De.debug("Ignore setFilters, model disconnected");return}M(i);var{columns:s,formatter:o}=i,d=H.changeFilterColumnNamesToIndexes(i.columns,t).filter(c=>{var[m]=c;return i.isFilterable(m)}),h=H.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){De.debug("setStateOverrides",e);var{irisGridState:t,gridState:n}=e;this.setState({irisGridStateOverrides:t,gridStateOverrides:n},()=>{this.initModel()})}unsetFilterValue(){}loadPanelState(e){var{panelState:t,irisGridStateOverrides:n,gridStateOverrides:i}=this.state;if(t!=null)try{var{gridState:a,irisGridState:l,irisGridPanelState:s}=t,o=Fe({},n),{quickFilters:d,advancedFilters:h}=o;d&&(o.quickFilters=H.changeFilterColumnNamesToIndexes(e.columns,d)),h&&(o.advancedFilters=H.changeFilterColumnNamesToIndexes(e.columns,h));var{isSelectingPartition:c,partitions:m,advancedSettings:p}=H.hydrateIrisGridPanelState(e,s);M(this.irisGridUtils);var{advancedFilters:g,customColumns:v,customColumnFormatMap:f,isFilterBarShown:b,quickFilters:w,reverseType:C,rollupConfig:S,aggregationSettings:y,sorts:F,userColumnWidths:N,userRowHeights:E,showSearchBar:P,searchValue:D,selectDistinctColumns:R,selectedSearchColumns:j,invertSearchColumns:B,pendingDataMap:ee,frozenColumns:U,conditionalFormats:de,columnHeaderGroups:we,partitionConfig:Le}=this.irisGridUtils.hydrateIrisGridState(e,Fe(Fe({},l),o)),{isStuckToBottom:ve,isStuckToRight:ye,movedColumns:Ee,movedRows:Pe}=H.hydrateGridState(e,Fe(Fe({},a),i),l.customColumns);this.setState({advancedFilters:g,advancedSettings:p,conditionalFormats:de,customColumns:v,customColumnFormatMap:f,isFilterBarShown:b,isSelectingPartition:c,movedColumns:Ee,movedRows:Pe,partitions:m,quickFilters:w,reverseType:C,rollupConfig:S,aggregationSettings:y,sorts:F,userColumnWidths:N,userRowHeights:E,showSearchBar:P,searchValue:D,selectDistinctColumns:R,selectedSearchColumns:j,invertSearchColumns:B,pendingDataMap:ee,frozenColumns:U,isStuckToBottom:ve,isStuckToRight:ye,columnHeaderGroups:we,partitionConfig:Le})}catch(se){De.error("loadPanelState failed to load panelState",t,se)}}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,workspace:p,settings:g,theme:v}=this.props,{advancedFilters:f,aggregationSettings:b,advancedSettings:w,conditionalFormats:C,customColumns:S,customColumnFormatMap:y,error:F,isDisconnected:N,isFilterBarShown:E,isSelectingPartition:P,isStuckToBottom:D,isStuckToRight:R,isLoaded:j,isLoading:B,isModelReady:ee,model:U,movedColumns:de,movedRows:we,partitions:Le,partitionConfig:ve,quickFilters:ye,reverseType:Ee,rollupConfig:Pe,sorts:se,userColumnWidths:tn,userRowHeights:fe,showSearchBar:Te,searchValue:Re,selectDistinctColumns:Ie,selectedSearchColumns:Je,invertSearchColumns:nn,Plugin:Yi,pluginFilters:Qi,pluginFetchColumns:Ji,pendingDataMap:ea,frozenColumns:ta,columnHeaderGroups:na}=this.state,ra=F!=null?"Unable to open table. ".concat(F):void 0,ia=dn(h),aa=(e=U?.description)!==null&&e!==void 0?e:void 0,la=(t=c?.pluginState)!==null&&t!==void 0?t:null,sa=n??this.getPluginContent(Yi,U,m,p,la),{permissions:oa}=m,{canCopy:da,canDownloadCsv:ua}=oa,ha=this.getWidgetPanelDescriptor(h,U?.description);return u.jsx(Nt,{errorMessage:ra,isDisconnected:N,isLoading:B,isLoaded:j,className:"iris-grid-panel",glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabFocus:this.handleShow,onTabClicked:this.handleTabClicked,widgetName:ia,widgetType:"Table",description:aa,componentPanel:this,renderTabTooltip:()=>u.jsx(Vs,{descriptor:ha,model:U}),children:ee&&U&&u.jsx(Wt,{advancedFilters:f,aggregationSettings:b,advancedSettings:w,alwaysFetchColumns:this.getAlwaysFetchColumns(d,Ji),columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",copyCursor:"copy",customColumns:S,customColumnFormatMap:y,columnSelectionValidator:this.isColumnSelectionValid,conditionalFormats:C,inputFilters:this.getGridInputFilters(U.columns,o),applyInputFiltersOnInit:c==null,isFilterBarShown:E,isSelectingColumn:l!=null,isSelectingPartition:P,isStuckToBottom:D,isStuckToRight:R,movedColumns:de,movedRows:we,partitions:Le,partitionConfig:ve,quickFilters:ye,reverseType:Ee,rollupConfig:Pe,settings:g,sorts:se,userColumnWidths:tn,userRowHeights:fe,model:U,showSearchBar:Te,searchValue:Re,selectedSearchColumns:Je,selectDistinctColumns:Ie,invertSearchColumns:nn,onColumnSelected:this.handleColumnSelected,onCreateChart:this.handleCreateChart,onDataSelected:this.handleDataSelected,onError:this.handleError,onStateChange:this.handleGridStateChange,onContextMenu:this.handleContextMenu,onAdvancedSettingsChange:this.handleAdvancedSettingsChange,customFilters:Qi,pendingDataMap:ea,canCopy:da,canDownloadCsv:ua,ref:this.irisGrid,getDownloadWorker:s,frozenColumns:ta,theme:v,columnHeaderGroups:na,children:sa})})}}X(st,"defaultProps",{onStateChange:()=>{},onPanelStateUpdate:()=>{}});X(st,"displayName","IrisGridPanel");X(st,"COMPONENT","IrisGridPanel");var zs=(r,e)=>{var{localDashboardId:t=ba}=e;return{inputFilters:Kt(r,t),links:Dt(r,t),columnSelectionValidator:zt(r,t),user:fa(r),workspace:ga(r),settings:Cn(r)}},Ks=Ye(zs,null,null,{forwardRef:!0})(st);const ot=Ks;function wt(r,e,t){return e=Ws(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Ws(r){var e=qs(r,"string");return typeof e=="symbol"?e:String(e)}function qs(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var vr=Z.module("InputFilter"),Zs=150;class dt extends T.Component{constructor(e){super(e),wt(this,"inputRef",void 0),wt(this,"getItemLabel",ce((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",Xe(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s})},Zs)),this.handleColumnChange=this.handleColumnChange.bind(this),this.handleInputKeyPress=this.handleInputKeyPress.bind(this),this.handleValueChange=this.handleValueChange.bind(this),this.handleSettingsCancel=this.handleSettingsCancel.bind(this),this.handleSettingsClick=this.handleSettingsClick.bind(this),this.handleSettingsSave=this.handleSettingsSave.bind(this),this.handleBackgroundClick=this.handleBackgroundClick.bind(this),this.inputRef=le.createRef();var{column:t,isValueShown:n,value:i}=e;this.state={column:t,selectedColumn:t,value:i,isValueShown:n}}componentDidUpdate(e,t){var{column:n}=this.props,{column:i,value:a,isValueShown:l}=this.state;n!==e.column&&this.setState({column:n,selectedColumn:n}),l!==void 0&&l&&l!==t.isValueShown&&this.focusInput(),(i!==t.column||a!==t.value||l!==t.isValueShown)&&this.sendUpdate()}componentWillUnmount(){this.sendUpdate.flush()}handleColumnChange(e){var{columns:t}=this.props,n=t[parseInt(e,10)];vr.debug2("handleColumnChange",n),this.setState({selectedColumn:n,value:void 0})}handleInputKeyPress(e){e.key==="Enter"&&(e.preventDefault(),e.stopPropagation(),this.setState(t=>{var{value:n}=t;return n==null?{value:""}:null},()=>{this.sendUpdate(),this.sendUpdate.flush()}))}handleValueChange(e){var{value:t}=e.target;vr.debug2("handleValueChange",t),this.setState({value:t})}handleSettingsCancel(){var{column:e}=this.state;this.setState({selectedColumn:e,isValueShown:!0})}handleSettingsSave(){var{selectedColumn:e}=this.state;this.setState({column:e,isValueShown:!0})}handleSettingsClick(e){var{column:t}=this.state;this.setState({selectedColumn:t,isValueShown:!1}),e.stopPropagation()}handleBackgroundClick(e){e.target!==this.inputRef.current&&this.focusInput()}focusInput(){this.inputRef.current!==null&&(this.inputRef.current.select(),this.inputRef.current.focus())}clearFilter(){this.setState({value:""})}setFilterState(e){var{name:t,type:n,value:i,isValueShown:a}=e,l=t!=null&&n!=null?{name:t,type:n}:void 0,s=a===void 0?{column:l,value:i}:{column:l,value:i,isValueShown:a};this.setState(s)}render(){var{columns:e}=this.props,{column:t,isValueShown:n,selectedColumn:i,value:a}=this.state,l=a==null||a.length===0?dt.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(En,{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(Et,{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($,{kind:"secondary",onClick:this.handleSettingsCancel,disabled:t==null,children:"Cancel"}),u.jsx($,{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:dt.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($,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:u.jsx(pe,{icon:wn,transform:"grow-4"}),tooltip:"Input Filter Settings"})})]})]})}}wt(dt,"PLACEHOLDER","Enter value...");wt(dt,"defaultProps",{column:null,isValueShown:!1,value:null});const Xs=dt;function Yt(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=Qs(r,"string");return typeof e=="symbol"?e:String(e)}function Qs(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 Js=250;class Qt extends T.Component{constructor(e){super(e),Yt(this,"inputFilterRef",void 0),this.handleChange=Xe(this.handleChange.bind(this),Js),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.inputFilterRef=le.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(Y.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(Xs,{ref:this.inputFilterRef,column:n,columns:i,onChange:this.handleChange,isValueShown:a,value:l})})}}Yt(Qt,"defaultProps",{panelState:null});Yt(Qt,"COMPONENT","InputFilterPanel");Yt(Qt,"displayName","InputFilterPanel");var eo=(r,e)=>{var{localDashboardId:t}=e;return{columns:Sn(r,t)}},to=Ye(eo,null,null,{forwardRef:!0})(Qt);const at=to;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 kt(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){Ln(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 Ln(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)}var te=Z.module("FilterSetManagerPanel");function io(r){return r.setPanelState!=null}class ut 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){te.error("Could not get panel",i);return}var a=L.getComponentNameFromPanel(i),l=L.getIdFromPanel(i);te.debug("Panel:",i,a);var{glContainer:s=null}=i.props;if(s==null){te.error("Could not get panel container",i);return}var o=L.getComponentConfigFromContainer(s);if(o==null){te.error("Could not get component config from container",s);return}var d=L.getPanelComponentState(o);if(d==null){te.debug("Panel state is null ".concat(l));return}switch(a){case L.getComponentName(st):{var h;l!=null&&(h=this.getIrisGridPanelFilters(l,d)),h!=null&&t.push({panelId:l,type:a,state:h});break}case L.getComponentName(at):case L.getComponentName(He):{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 te.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=ut.changeFilterIndexesToColumnNames(i,s));var h;return o&&(h=ut.changeFilterIndexesToColumnNames(i,o)),{irisGridState:kt(kt({},a),{},{advancedFilters:d,quickFilters:h}),gridState:kt({},l)}}handleGetFilterState(){return this.getFilterState()}handleChange(e){var{isValueShown:t,selectedId:n}=e;te.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;te.debug("Apply filters from filter set",e),n.forEach(a=>{var{panelId:l,type:s,state:o}=a;if(l==null){te.debug("panel is null",l);return}if(!t.has(l)){te.debug("Ignore closed panel",l);return}te.debug("Apply panel filters",l,s,o);var d=t.get(l);switch(s){case L.getComponentName(st):this.restoreIrisGridFilters(d,o,i);break;case L.getComponentName(at):case L.getComponentName(He):this.restoreInputFilterState(d,o);break}})}handleSetsUpdate(e){var{setDashboardFilterSets:t,localDashboardId:n}=this.props;te.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=L.getIdFromPanel(e);if(h==null){te.error("Panel Id is null.");return}var c=d.get(h);if(c==null){te.error("Unable to get table for panel ".concat(h,"."));return}te.debug("restoreIrisGridFilters",h,t,n),n?e.setStateOverrides(t):e.setFilters({quickFilters:o,advancedFilters:s})}restoreInputFilterState(e,t){var n=kt({},t);delete n.isValueShown,te.debug("restoreInputFilterState",e,n),e&&io(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(Ti,{onChange:this.handleChange,onApply:this.handleFilterApply,onUpdateSets:this.handleSetsUpdate,isValueShown:i,filterSets:n,selectedId:a,getFilterState:this.handleGetFilterState})})})}}Ln(ut,"defaultProps",{panelState:null});Ln(ut,"COMPONENT","FilterSetManagerPanel");var ao=(r,e)=>{var{localDashboardId:t}=e;return{filterSets:ni(r,t),dashboardOpenedPanelMap:Qr(r,t),dashboardInputFilters:Kt(r,t),panelTableMap:Ht(r,t)}},lo=Ye(ao,{setDashboardFilterSets:ti},null,{forwardRef:!0})(ut);const $t=lo;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 Mi 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:me("text-muted","edit-hint",{viewing:e===void 0||!e}),children:u.jsxs("span",{children:["double-click to edit ",u.jsx(pe,{icon:ui})]})}),t]})}}so(Mi,"defaultProps",{isEditing:!1});function ho(r,e,t){return e=co(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function co(r){var e=po(r,"string");return typeof e=="symbol"?e:String(e)}function po(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var mo=Z.module("MarkdownStartPage");class Ni 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(mo.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($,{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($,{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(pe,{icon:yn})})]},l.id)),u.jsxs(al,{isOpen:i,toggle:this.handleDeleteModalClose,className:"modal-dialog-centered markdown-delete-modal",children:[u.jsx(ll,{children:"Are you sure you want to permanently delete this note?"}),u.jsx(sl,{children:"You can't undo this action."}),u.jsxs(Sa,{children:[u.jsx($,{kind:"secondary",onClick:this.handleDeleteModalClose,children:"Cancel"}),u.jsx($,{kind:"danger",onClick:()=>{this.handleDeleteMarkdown(a)},children:"Delete"})]})]})]})]})})}}ho(Ni,"defaultProps",{closedMarkdowns:[],onOpen:()=>{},onCreate:()=>{},onDelete:()=>{}});const vo=Ni;function yt(r,e,t){return e=fo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function fo(r){var e=go(r,"string");return typeof e=="symbol"?e:String(e)}function go(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var bo=T.lazy(()=>Sl(()=>import("./MarkdownEditor-3fa34469.js"),["./MarkdownEditor-3fa34469.js","./vendor-e4be0cee.js","./helpers-de833af9.js","./vendor-006917c0.css","./ControlType-415a9903.js","./index-3e91acb7.js","./monaco-b5248072.js","./monaco-f18fde03.css","./index-470b8a54.css","./ControlType-b8722327.css","./mathjax-5ce50f4a.js"],import.meta.url)),At=Z.module("MarkdownPanel");class Rn extends T.Component{constructor(e){super(e),yt(this,"markdownEditor",void 0),yt(this,"editor",void 0),yt(this,"getClosedMarkdowns",I(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=L.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(vo,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):u.jsx(Mi,{isEditing:i,onDoubleClick:this.handleContainerDoubleClick,children:u.jsx(T.Suspense,{fallback:u.jsx(ci,{}),children:u.jsx(bo,{ref:o=>{this.markdownEditor=o},isEditing:i,content:l??void 0,onEditorInitialized:this.handleEditorInitialized})})})})}}yt(Rn,"defaultProps",{panelState:null});yt(Rn,"COMPONENT","MarkdownPanel");var Co=(r,e)=>{var{localDashboardId:t}=e;return{closedPanels:wa(r,t)}},So=Ye(Co,null,null,{forwardRef:!0})(Rn);const rt=So;function Oi(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($,{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(pe,{icon:hi,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}function gr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function br(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?gr(Object(t),!0).forEach(function(n){Jt(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):gr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Jt(r,e,t){return e=wo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function wo(r){var e=yo(r,"string");return typeof e=="symbol"?e:String(e)}function yo(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class In extends T.Component{constructor(e){super(e),Jt(this,"irisGridRef",void 0),this.irisGridRef=le.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(ot,br(br({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},this.props),{},{children:u.jsx(Oi,{onClick:this.handleReload})}))}}Jt(In,"defaultProps",{panelState:null});Jt(In,"COMPONENT","PandasPanel");const Li=In;function Cr(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function Sr(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Cr(a,n,i,l,s,"next",o)}function s(o){Cr(a,n,i,l,s,"throw",o)}l(void 0)})}}function wr(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=Po(r,"string");return typeof e=="symbol"?e:String(e)}function Po(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class To{constructor(e){wr(this,"items",void 0),wr(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];$n(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];$n(t)&&(t.isExpanded=!1)}return Promise.resolve()}getViewportData(){return Promise.resolve({items:this.items,offset:0})}getSnapshot(e){return Sr(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return Sr(function*(){var n,i=yield t.getViewportData();(n=t.onUpdateCallback)===null||n===void 0||n.call(t,i)})()}setFilters(e){}setSorts(e){}setReversed(e){}close(){}onUpdate(e){return this.onUpdateCallback=e,jest.fn()}get size(){return this.items.length}}const Fo=To;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 vt(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 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)}class Oo{constructor(e){Do(this,"items",void 0),this.items=e}getTable(){var e=this;return vt(function*(){return new Fo(e.items)})()}saveFile(e){throw new Error("Method not implemented.")}loadFile(e){throw new Error("Method not implemented.")}copyFile(e,t){return vt(function*(){throw new Error("Method not implemented.")})()}deleteFile(e){var t=this;return vt(function*(){t.items=t.items.filter(n=>n.filename!==e)})()}moveFile(e,t){var n=this;return vt(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=ya.getBaseName(t),n.items[i].id=t;break}})()}info(e){var t=this;return vt(function*(){var n=t.items.filter(a=>a.filename===e);if(n.length===0)throw new Ea;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 Lo=Oo;function Er(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?Er(Object(t),!0).forEach(function(n){Ro(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Er(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Ro(r,e,t){return e=Io(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Io(r){var e=xo(r,"string");return typeof e=="symbol"?e:String(e)}function xo(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function Pr(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function _o(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Pr(a,n,i,l,s,"next",o)}function s(o){Pr(a,n,i,l,s,"throw",o)}l(void 0)})}}function ko(r,e,t,n,i){return fn.apply(this,arguments)}function fn(){return fn=_o(function*(r,e,t,n,i){var a,l,s,o;if(it(t)?(a=t.settings,l=t.table,s=void 0,o=t.tableSettings):(a={},l="",s=On(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 H(r).applyTableSettings(p,o,ri(Ta.getState())),St.makeModelFromSettings(r,a,p)}),fn.apply(this,arguments)}var xn=T.forwardRef((r,e)=>{var t=ct(),n=Pa(),i=Pi(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 ko(t,n,l,a,i)}}),[l,s,t,n,a,i]);return u.jsx(Ot,Gt(Gt({ref:e},r),o))});xn.displayName="ChartPanelPlugin";const Ao=xn;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 jo(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){var e=ct(),[t,n]=T.useState(),{fetch:i}=r;return T.useEffect(()=>{var a=!1;function l(){return s.apply(this,arguments)}function s(){return s=jo(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(mi,{model:t}):null}var $o={name:"ChartPanel",title:"Chart",type:Be.WIDGET_PLUGIN,component:Ri,panelComponent:xn,supportedTypes:"Figure",icon:ol};const Vo=$o;function Ii(r){Mt(r);var{id:e,layout:t}=r,n=ct(),i=T.useCallback(a=>{var{metadata:l,panelId:s=Se.generate(),table:o}=a,{settings:d}=l,h=()=>St.makeModelFromSettings(n,d,o),c=ne.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;L.openComponent({root:p,config:m})},[n,e,t]);return Ne(t.eventHub,he.CREATE_CHART,i),null}var Uo={name:"ChartBuilderPlugin",type:Be.DASHBOARD_PLUGIN,component:Ii};const Go=Uo;var ft=Z.module("FilterPlugin");function Fr(r,e){return r.concat(e)}function xi(r){Mt(r);var{id:e,layout:t,registerComponent:n}=r,i=pa(),[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(Fr,[]).sort((C,S)=>{var y=Me.toLower(C.name),F=Me.toLower(S.name);if(y!==F)return y>F?1:-1;var N=Me.toLower(C.type),E=Me.toLower(S.type);return N!==E?N>E?1:-1:0}).reduce((C,S)=>((C.length===0||Me.toLower(C[C.length-1].name)!==Me.toLower(S.name)||Me.toLower(C[C.length-1].type)!==Me.toLower(S.type))&&C.push(S),C),[]),b=Array.from(l.values()).reduce(Fr,[]).sort((C,S)=>C.timestamp-S.timestamp),w=new Map(s);ft.debug("sendUpdate",{columns:f,filters:b,tableMap:w}),i(Fa(e,{columns:f,filters:b,tableMap:w}))},[i,e,a,l,s]),d=T.useCallback((f,b)=>{ft.debug2("handleColumnsChanged",f,b),a.set(f,[].concat(b)),o()},[a,o]),h=T.useCallback((f,b)=>{ft.debug2("handleFiltersChanged",f,b),l.set(f,[].concat(b)),o()},[l,o]),c=T.useCallback((f,b)=>{ft.debug2("handleTableChanged",f,b),s.set(L.getIdFromPanel(f),b),o()},[s,o]),m=T.useCallback(f=>{ft.debug2("handlePanelUnmount",f),a.delete(f),l.delete(f),s.delete(L.getIdFromPanel(f)),o()},[a,l,s,o]),p=T.useCallback(f=>{var{title:b="DropdownFilter",metadata:w={},panelState:C=null,id:S=Se.generate(),focusElement:y=L.DEFAULT_FOCUS_SELECTOR,createNewStack:F=!1,dragEvent:N=null}=f,E={type:"react-component",component:He.COMPONENT,props:{id:S,metadata:w,panelState:C,localDashboardId:e},title:b,id:S},{root:P}=t;L.openComponent({root:P,config:E,focusElement:y,createNewStack:F,dragEvent:N})},[t,e]),g=T.useCallback(f=>{var{title:b="InputFilter",metadata:w={},panelState:C=null,id:S=Se.generate(),focusElement:y=L.DEFAULT_FOCUS_SELECTOR,createNewStack:F=!1,dragEvent:N=void 0}=f,E={type:"react-component",component:at.COMPONENT,props:{id:S,metadata:w,panelState:C,localDashboardId:e},title:b,id:S},{root:P}=t;L.openComponent({root:P,config:E,focusElement:y,createNewStack:F,dragEvent:N})},[t,e]),v=T.useCallback(f=>{var{title:b="FilterSets",metadata:w={},panelState:C=null,id:S=Se.generate(),focusElement:y=L.DEFAULT_FOCUS_SELECTOR,createNewStack:F=!1,dragEvent:N=null}=f,E={type:"react-component",component:$t.COMPONENT,props:{id:S,metadata:w,panelState:C,localDashboardId:e},title:b,id:S},{root:P}=t;L.openComponent({root:P,config:E,focusElement:y,createNewStack:F,dragEvent:N})},[t,e]);return T.useEffect(function(){var b=[n(He.COMPONENT,He),n(at.COMPONENT,at),n($t.COMPONENT,$t)];return()=>{b.forEach(w=>w())}},[n]),Ne(t.eventHub,Y.COLUMNS_CHANGED,d),Ne(t.eventHub,Y.FILTERS_CHANGED,h),Ne(t.eventHub,Y.TABLE_CHANGED,c),Ne(t.eventHub,Y.OPEN_DROPDOWN,p),Ne(t.eventHub,Y.OPEN_INPUT,g),Ne(t.eventHub,Y.OPEN_FILTER_SET_MANAGER,v),Ne(t.eventHub,ae.UNMOUNT,m),null}var Ho={name:"FilterPlugin",type:Be.DASHBOARD_PLUGIN,component:xi};const Bo=Ho;var zo=Z.module("@deephaven/app-utils/useTablePlugin");function _i(){var r=ii(),e=T.useCallback(t=>{var n=r.get(t);if(n!=null){if(Da(n))return n.component;if(Ma(n))return n.TablePlugin}var i="Unable to find table plugin ".concat(t,".");throw zo.error(i),new Error(i)},[r]);return e}function Dr(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(d){t(d);return}s.done?e(o):Promise.resolve(o).then(n,i)}function Ko(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Dr(a,n,i,l,s,"next",o)}function s(o){Dr(a,n,i,l,s,"throw",o)}l(void 0)})}}function ki(r,e,t){var n=ct(),i=_i(),a=T.useMemo(()=>({loadPlugin:i,localDashboardId:e,makeModel:function(){var l=Ko(function*(){var o=yield r();return Tn.makeModel(n,o)});function s(){return l.apply(this,arguments)}return s}(),metadata:t}),[n,r,e,i,t]);return a}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 Nr(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){Wo(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 Wo(r,e,t){return e=qo(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function qo(r){var e=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 _n=T.forwardRef((r,e)=>{var{localDashboardId:t,fetch:n,metadata:i}=r,a=ki(n,t,i);return u.jsx(ot,Nr(Nr({ref:e},r),a))});_n.displayName="GridPanelPlugin";const Xo=_n;function Or(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 Yo(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Or(a,n,i,l,s,"next",o)}function s(o){Or(a,n,i,l,s,"throw",o)}l(void 0)})}}function Ai(r){var e=ct(),[t,n]=T.useState(),{fetch:i}=r;return T.useEffect(()=>{var a=!1;function l(){return s.apply(this,arguments)}function s(){return s=Yo(function*(){var o=yield i(),d=yield Tn.makeModel(e,o);a||n(d)}),s.apply(this,arguments)}return l(),()=>{a=!0}},[e,i]),t?u.jsx(Wt,{model:t}):null}var Qo={name:"IrisGridPanel",title:"Table",type:Be.WIDGET_PLUGIN,component:Ai,panelComponent:_n,supportedTypes:["Table","TreeTable","HierarchicalTable","PartitionedTable"],icon:dl};const Jo=Qo;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 Ue(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){ji(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 ji(r,e,t){return e=ed(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ed(r){var e=td(r,"string");return typeof e=="symbol"?e:String(e)}function td(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function $i(r){var e=r;return typeof e.getCoordinateForColumn=="function"}function Rr(r){var e=r;return $i(r)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function Ir(r){return r.description==null||!r.description.startsWith("Preview of type: ")}var gt=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 gt.debug2("Incompatible panel ids",e,t,n),"invalid";if(e.panelComponent==null||t.panelComponent==null)return gt.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 gt.debug2("Incompatible panel components",e,t),"invalid";var{columnType:l}=e,{columnType:s}=t,o=s===null||A.isCompatibleType(l,s);if(!o)return gt.debug2("Incompatible type",l,s),"invalid";switch(t.panelComponent){case L.getComponentName(Ot):return"chartLink";case L.getComponentName(ot):return"tableLink";case L.getComponentName(He):return"filterSource"}return gt.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(Ue(Ue({},a),{},{id:Se.generate(),start:Ue(Ue({},a.start),{},{panelId:n})})):((l=a.end)===null||l===void 0?void 0:l.panelId)===t&&i.push(Ue(Ue({},a),{},{id:Se.generate(),end:Ue(Ue({},a.end),{},{panelId:n})}))}),i}}ji(en,"ALLOWED_LINKS",new Map([[L.getComponentName(ot),[L.getComponentName(ot),L.getComponentName(Ot),L.getComponentName(He)]]]));const qe=en;function Vi(r,e,t){return e=nd(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function nd(r){var e=rd(r,"string");return typeof e=="symbol"?e:String(e)}function rd(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var id=Z.module("LinkerLink"),xr=.015,_r=1.5,Ui=12,Gi=12,kr=2,jt=Math.sqrt((Gi*.5)**2+Ui**2),Ar=Math.asin(Gi*.5/Ui),jr=15,Ge=Math.PI*.5;class lt 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 gl(t);if(A.isTextType(e))return bl(t);if(A.isDateType(e))return Cl(t);if(A.isBooleanType(e)){if(t===bt.eq)return"is equal to";if(t===bt.notEq)return"is not equal to"}throw new Error("Unrecognized column type: ".concat(e))}catch(n){return id.warn(n),""}}constructor(e){super(e),Vi(this,"getOperators",I((t,n)=>{var{onOperatorChanged:i}=this.props,a=A.getFilterTypes(n);return A.isBooleanType(n)&&(a=[bt.eq,bt.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:lt.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,b=window.innerHeight,w=0,C=0,S=Math.max(w,Math.min(i+(l-i)/2+g*(m*xr)**_r,f)),y=Math.max(C,Math.min(a+(s-a)/2+v*(m*xr)**_r,b)),F="M ".concat(i," ").concat(a," Q ").concat(S," ").concat(y," ").concat(l," ").concat(s),N="M ".concat(w," ").concat(C," L ").concat(w," ").concat(b," L ").concat(f," ").concat(b," L ").concat(f," ").concat(C,` z
|
|
5
|
+
`).concat(lt.makeCirclePath(i,a,jr),`
|
|
6
|
+
`).concat(lt.makeCirclePath(l,s,jr)),E="link-select-clip-".concat(o),P=Math.atan2(s-y,l-S),D=P-Ar+Math.PI,R=P+Ar+Math.PI,j=l+Math.cos(P)*kr,B=s+Math.sin(P)*kr,ee=j+Math.cos(D)*jt,U=B+Math.sin(D)*jt,de=j+Math.cos(R)*jt,we=B+Math.sin(R)*jt,Le="".concat(j,",").concat(B," ").concat(ee,",").concat(U," ").concat(de,",").concat(we),ve=.25*i+.5*S+.25*l,ye=.25*a+.5*y+.25*s,Ee=S-i+(l-S),Pe=y-a+(s-y),se=Pe/Ee,tn=20,fe=tn/Math.sqrt(1+se**2),Te=fe*se,Re=fe*-1,Ie=Te*-1;Number.isFinite(se)?se>0?(fe*=-1,Te*=-1,Re*=-1,Ie*=-1,Re-=50-10*(Math.abs(p)%Ge),Ie+=10*(Math.abs(p)%Ge),fe-=50-10*(Math.abs(p)%Ge),Te+=10*(Math.abs(p)%Ge)):se<0?(Re+=10*(Math.abs(p)%Ge),Ie+=10*(Math.abs(p)%Ge),fe+=10*(Math.abs(p)%Ge),Te+=10*(Math.abs(p)%Ge)):(Re=15,Ie=10,fe=-25,Te=10):(Re=10,Ie=5,fe=10,Te=-35);var Je="";t!==void 0&&(t==="startsWith"?Je="a*":t==="endsWith"?Je="*z":Je=A.getFilterOperatorString(t));var nn=h!=="chartLink"&&h!=="filterSource";return u.jsxs(u.Fragment,{children:[u.jsxs("svg",{className:me(e,{hovering:c}),children:[u.jsx("clipPath",{id:E,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(E,")"),"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($,{kind:"primary",className:"btn-fab btn-operator",style:{top:ye+(se>=0?Te:Ie),left:ve+(se>=0?fe:Re)},onClick:()=>{},icon:u.jsxs("div",{className:"fa-md fa-layers",children:[u.jsx("b",{children:Je}),u.jsx(pe,{icon:ul,transform:"right-8 down-9 shrink-5"})]}),tooltip:"Change comparison operator",children:u.jsx(Na,{actions:this.getDropdownActions,popperOptions:{placement:"bottom-start"}})}),u.jsx($,{kind:"primary",className:"btn-fab btn-delete",style:{top:ye+(se<0?Te:Ie),left:ve+(se<0?fe:Re)},onClick:this.handleDelete,icon:yn,tooltip:"Delete"})]})]})}}Vi(lt,"defaultProps",{className:"",isSelected:!1,onClick(){},onDelete(){}});const ad=lt;function $r(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Vr(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?$r(Object(t),!0).forEach(function(n){kn(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):$r(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function kn(r,e,t){return e=ld(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ld(r){var e=sd(r,"string");return typeof e=="symbol"?e:String(e)}function sd(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var un=Z.module("LinkerOverlayContent");class Hi extends T.Component{constructor(e){super(e),kn(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=le.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){un.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(!$i(a))throw new Error("Panel does not have getCoordinateForColumn method: ".concat(n));try{var l=a.getCoordinateForColumn(i);if(l!=null)return l}catch{un.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 L.getTabPoint(s)}handleOperatorChanged(e,t){var{links:n,onLinksUpdated:i}=this.props,a=n.map(l=>l.id===e?Vr(Vr({},l),{},{operator:t}):l);i(a)}handleBlur(){this.setState({mode:"select"})}handleResize(){var{dialog:e}=this.state;if(e&&this.dialogRef.current){var t=this.dialogRef.current.getBoundingClientRect(),n=Lt(e.x,0,window.innerWidth-t.width),i=Lt(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=Lt(window.innerWidth-(e.clientX+i.width+t.x),0,window.innerWidth-i.width),l=Lt(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:b,type:w,isReversed:C,start:S,end:y,operator:F}=g,N=S.columnType,[E,P]=this.getPointFromLinkPoint(S),D=(v=d?.x)!==null&&v!==void 0?v:E,R=(f=d?.y)!==null&&f!==void 0?f:P;if(y!=null&&([D,R]=this.getPointFromLinkPoint(y)),C!=null&&C){var[j,B]=[E,P];[E,P]=[D,R],[D,R]=[j,B]}var ee=me("linker-link",{disabled:e},{"link-filter-source":w==="filterSource"},{"link-invalid":w==="invalid"},{interactive:g.end==null},{"link-is-selected":n.has(b)},{"danger-delete":m==="delete"});return{x1:E,y1:P,x2:D,y2:R,id:b,className:ee,operator:F,startColumnType:N,type:w}}catch(U){return un.warn("Unable to get point for link",g,U),null}}).filter(g=>g!=null);return u.jsxs("div",{className:me("linker-overlay",{"danger-delete":m==="delete"}),children:[p.map(g=>{var{x1:v,y1:f,x2:b,y2:w,id:C,className:S,operator:y,startColumnType:F,type:N}=g;return u.jsx(ad,{className:S,id:C,x1:v,y1:f,x2:b,y2:w,onClick:a,onDelete:l,isSelected:n.has(C),operator:y,startColumnType:F,type:N,onOperatorChanged:this.handleOperatorChanged},C)}),u.jsxs("div",{className:me("linker-toast-dialog",{dragging:c}),ref:this.dialogRef,style:{bottom:h?.y,right:h?.x},"data-testid":"linker-toast-dialog",children:[u.jsx($,{draggable:!0,kind:"inline",className:"btn-drag-handle",icon:hl,onClick:()=>{},onMouseDown:this.handleMouseDown,children:!c&&u.jsx(Oa,{children:"Drag to reposition"})}),u.jsx("div",{className:"toast-body",children:i}),u.jsxs("div",{className:"toast-footer",children:[u.jsx($,{kind:"secondary",onClick:s,children:"Clear All"}),u.jsx($,{kind:"primary",onClick:o,children:"Done"})]})]}),u.jsx(Zr,{actions:[{action:this.handleEscapePressed,shortcut:La.LINKER_CLOSE,isGlobal:!0}]})]})}}kn(Hi,"defaultProps",{disabled:"false"});const od=Hi;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){Bi(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 Bi(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 J=Z.module("Linker"),hd=(r,e)=>({activeTool:bn(r),dh:Jr(r),isolatedLinkerPanelId:Bt(r,e.localDashboardId),links:Dt(r,e.localDashboardId),timeZone:ri(r)}),cd=Ye(hd,{setActiveTool:Xr,setDashboardLinks:ai,addDashboardLinks:li,deleteDashboardLinks:si,setDashboardIsolatedLinkerPanelId:gn,setDashboardColumnSelectionValidator:oi});class pd extends T.Component{constructor(e){super(e),Bi(this,"getCachedLinks",I((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===be.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(he.COLUMN_SELECTED,this.handleGridColumnSelect),t.on(he.DATA_SELECTED,this.handleUpdateValues),t.on(he.STATE_CHANGED,this.handleStateChange),t.on(Vt.COLUMN_SELECTED,this.handleChartColumnSelect),t.on(ae.CLONED,this.handlePanelCloned),t.on(Y.COLUMN_SELECTED,this.handleFilterColumnSelect),t.on(Y.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(he.COLUMN_SELECTED,this.handleGridColumnSelect),t.off(he.DATA_SELECTED,this.handleUpdateValues),t.off(he.STATE_CHANGED,this.handleStateChange),t.off(Vt.COLUMN_SELECTED,this.handleChartColumnSelect),t.off(ae.CLONED,this.handlePanelCloned),t.off(Y.COLUMN_SELECTED,this.handleFilterColumnSelect),t.off(Y.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(be.DEFAULT)}this.setState({linkInProgress:void 0})}handleDone(){var{setActiveTool:e}=this.props;e(be.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=L.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(be.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=L.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&&qe.findColumn(t,s)==null||o!=null&&o.panelId===i&&qe.findColumn(t,o)==null});this.deleteLinks(a)}handleGridColumnSelect(e,t){if(!Ir(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=L.getIdFromPanel(e);if(s!=null){var o=L.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},b=qe.getLinkType(v!==void 0&&v?f:p,v!==void 0&&v?p:f,i??a);switch(b){case"invalid":J.debug("Ignore invalid link connection",l,f);return;case"filterSource":{var w=v!==void 0&&v?p.panelId:f.panelId,C=m.filter(E=>{var{end:P}=E;return P?.panelId===w});this.deleteLinks(C);break}case"chartLink":{var S=v===!0?p:f,y=v===!0?f:p;J.debug("creating chartlink",{existingLinkEnd:S,start:p,end:f});var F=m.filter(E=>{var{end:P,start:D}=E;return D?.panelId===y.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:b,operator:bt.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?Rr(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?Rr(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=L.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:b,isExpandable:w,isGrouped:C}=t[d.columnName],{value:S}=t[d.columnName],y="".concat(S);if(S===null&&w&&C&&(S=void 0),g!=null&&A.isDateType(g)){var F=new ei(i,{timeZone:l,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:Ra.FULL_DATE_FORMAT});y=F.format(S)}var N={operator:c,text:y,value:S,startColumnIndex:b};f.push(N),v.set(p,{columnType:g,filterList:f}),s.set(m,v)}}s.forEach((E,P)=>{this.setPanelFilterMap(P,E)})}handlePanelCloned(e,t){var{links:n}=this.props,i=L.getIdFromPanel(e),a=t.id;if(i!=null){var l=qe.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===be.LINKER}updateSelectionValidators(){var{activeTool:e,setDashboardColumnSelectionValidator:t,localDashboardId:n}=this.props;switch(e){case be.LINKER:t(n,this.isColumnSelectionValid);break;default:t(n,void 0);break}}updateLinkInProgressType(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"invalid";this.setState(t=>{var{linkInProgress:n}=t;return n!==void 0?{linkInProgress:Gr(Gr({},n),{},{type:e})}:null})}isColumnSelectionValid(e,t){var{linkInProgress:n}=this.state,{isolatedLinkerPanelId:i}=this.props;if(t==null)return n?.start!=null&&this.updateLinkInProgressType(),!1;if(!Ir(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=L.getIdFromPanel(e);if(s==null)return!1;var o={panelId:s,panelComponent:L.getComponentNameFromPanel(e),columnName:t.name,columnType:t.type},d=a!==void 0&&a?qe.getLinkType(o,l,i):qe.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(pn,{in:s,mountOnEnter:!0,unmountOnExit:!0,onExited:this.handleExited,children:u.jsx(od,{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 md=cd(pd);const vd=md;function zi(r){Mt(r);var{id:e,layout:t,panelManager:n}=r;return u.jsx(vd,{layout:t,localDashboardId:e,panelManager:n})}var fd={name:"LinkerPlugin",type:Be.DASHBOARD_PLUGIN,component:zi};const gd=fd;function Ki(r,e,t){return e=bd(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function bd(r){var e=Cd(r,"string");return typeof e=="symbol"?e:String(e)}function Cd(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 ht{static getNewMarkdownTitle(e){for(var t="".concat(ht.DEFAULT_TITLE),n=0;e.indexOf(t)>=0;)n+=1,t="".concat(ht.DEFAULT_TITLE,"-").concat(n);return t}}Ki(ht,"DEFAULT_TITLE","Note");Ki(ht,"DEFAULT_CONTENT",`# Markdown Note
|
|
7
|
+
|
|
8
|
+
This note can be edited using **markdown** for styling.`);const hn=ht;function Wi(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===hn.DEFAULT_CONTENT?null:Ia(s)},[]),l=T.useCallback(function(){var{title:s="",metadata:o={},id:d=Se.generate(),focusElement:h=L.DEFAULT_FOCUS_SELECTOR,createNewStack:c=!1,dragEvent:m=null}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},p=n.getOpenedPanelConfigsOfType(rt.COMPONENT),g=n.getClosedPanelConfigsOfType(rt.COMPONENT),v=p.map(S=>{var y;return(y=S.title)!==null&&y!==void 0?y:""}),f=s!=null&&s!==""?s:hn.getNewMarkdownTitle(v),b=g.length>0?null:hn.DEFAULT_CONTENT,w={type:"react-component",component:rt.COMPONENT,props:{id:d,metadata:o,panelState:{content:b},localDashboardId:e},title:f,id:d},{root:C}=t;L.openComponent({root:C,config:w,focusElement:h,createNewStack:c,dragEvent:m})},[e,t,n]);return T.useEffect(function(){var o=[i(rt.COMPONENT,rt,xa,a)];return()=>{o.forEach(d=>d())}},[a,i]),Ne(t.eventHub,di.OPEN,l),null}var Sd={name:"MarkdownPlugin",type:Be.DASHBOARD_PLUGIN,component:Wi};const wd=Sd;function Hr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Br(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Hr(Object(t),!0).forEach(function(n){yd(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 yd(r,e,t){return e=Ed(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Ed(r){var e=Pd(r,"string");return typeof e=="symbol"?e:String(e)}function Pd(r,e){if(typeof r!="object"||r===null)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var An=T.forwardRef((r,e)=>{var{localDashboardId:t,fetch:n,metadata:i}=r,a=ki(n,t,i);return u.jsx(Li,Br(Br({ref:e},r),a))});An.displayName="PandasPanelPlugin";const Td=An;function zr(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 cn(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){zr(a,n,i,l,s,"next",o)}function s(o){zr(a,n,i,l,s,"throw",o)}l(void 0)})}}function qi(r){var e=ct(),[t,n]=T.useState(),[i,a]=T.useState(!0),[l,s]=T.useState(!1),{fetch:o}=r,d=T.useCallback(cn(function*(){var c=yield o();return Tn.makeModel(e,c)}),[e,o]),h=T.useCallback(cn(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=cn(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(ci,{isLoaded:l,isLoading:i}),t&&u.jsx(Wt,{model:t,children:u.jsx(Oi,{onClick:h})})]})}var Fd={name:"PandasPanel",title:"Pandas",type:Be.WIDGET_PLUGIN,component:qi,panelComponent:An,supportedTypes:"pandas.DataFrame",icon:cl};const Dd=Fd;function Kr(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function We(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Kr(Object(t),!0).forEach(function(n){Md(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Kr(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Md(r,e,t){return e=Nd(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Nd(r){var e=Od(r,"string");return typeof e=="symbol"?e:String(e)}function Od(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 Ld=Z.module("WidgetLoaderPlugin");function Rd(r){var e;function t(n,i){var a,l,s=r.component,{metadata:o}=n,d=We(We({},o),{},{type:(a=o?.type)!==null&&a!==void 0?a:r.type,name:(l=o?.name)!==null&&l!==void 0?l:"Widget"}),h=ka(s);return u.jsx(Nt,We(We({descriptor:d},n),{},{children:h?u.jsx(s,We(We({},n),{},{ref:i})):u.jsx(s,We({},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=ii(),t=T.useMemo(()=>{var s=new Map;return e.forEach(o=>{_a(o)&&[o.supportedTypes].flat().forEach(d=>{if(d!=null&&d!==""){if(s.has(d)){var h;Ld.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},b={type:"react-component",component:g.name,props:f,title:v,id:h},{root:w}=i;L.openComponent({root:w,config:b,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,Rd(o)):a(o.name,d)});return()=>{s.forEach(o=>o())}},[a,t]),Ne(i.eventHub,ae.OPEN,l),null}var Id={name:"WidgetLoaderPlugin",type:Be.DASHBOARD_PLUGIN,component:Zi};const xd=Id;var _d=k.shape({state:k.shape({panelState:k.shape({})})}),kd=k.shape({panelId:k.string.isRequired,columnName:k.string.isRequired,columnType:k.string.isRequired}),Wr=k.shape({panelId:k.string.isRequired,columnName:k.string.isRequired}),Xi=k.shape({start:Wr,end:Wr,id:k.string,isReversed:k.bool}),Ad=k.arrayOf(Xi),jd=k.shape({name:k.string.isRequired,operateAs:k.string.isRequired,groups:k.arrayOf(k.string).isRequired,permissions:k.shape({canUsePanels:k.bool.isRequired,canCopy:k.bool.isRequired,canDownloadCsv:k.bool.isRequired,canLogout:k.bool.isRequired}).isRequired}),$d=Object.freeze({LinkPoint:kd,Link:Xi,Links:Ad,Panel:_d,User:jd});const Vd=$d;var Ud=(r,e)=>r[e]===null?null:k.bool,Gd=(r,e)=>r[e]===null?null:k.string,Hd=Object.freeze({nullableBoolean:Ud,nullableString:Gd});const Bd=Hd,Jd=Object.freeze(Object.defineProperty({__proto__:null,ChartBuilderPlugin:Ii,ChartBuilderPluginConfig:Go,ChartEvent:Vt,ChartPanel:Ot,ChartPanelPlugin:Ao,ChartPluginConfig:Vo,ChartWidgetPlugin:Ri,CommandHistoryPanel:Aa,CommonPropTypes:Bd,ConsoleEvent:ja,ConsolePanel:$a,ConsolePlugin:Va,ControlType:Ua,DropdownFilterPanel:He,FileExplorerPanel:Ga,FilterPlugin:xi,FilterPluginConfig:Bo,FilterSetManager:Ti,FilterSetManagerPanel:$t,GridPanelPlugin:Xo,GridPluginConfig:Jo,GridWidgetPlugin:Ai,InputFilterEvent:Y,InputFilterPanel:at,IrisGridEvent:he,IrisGridPanel:ot,LinkerPlugin:zi,LinkerPluginConfig:gd,LinkerUtils:qe,LogPanel:Ha,MarkdownEvent:di,MarkdownPanel:rt,MarkdownPlugin:Wi,MarkdownPluginConfig:wd,MockFileStorage:Lo,NotebookEvent:Ba,NotebookPanel:za,PandasEvent:ms,PandasPanel:Li,PandasPanelPlugin:Td,PandasPluginConfig:Dd,PandasWidgetPlugin:qi,Panel:Ft,TabEvent:Ka,ToolType:be,UIPropTypes:Vd,WidgetLoaderPlugin:Zi,WidgetLoaderPluginConfig:xd,WidgetPanel:Nt,WidgetPanelTooltip:Nn,addDashboardLinks:li,deleteDashboardLinks:si,getColumnSelectionValidatorForDashboard:zt,getColumnsForDashboard:Sn,getDashboardConnection:Wa,getDashboardConsoleSettings:qa,getDashboardSessionWrapper:Za,getFilterSetsForDashboard:ni,getInputFiltersForDashboard:Kt,getIsolatedLinkerPanelIdForDashboard:Bt,getLinksForDashboard:Dt,getTableMapForDashboard:Ht,getWidgetPanelDescriptorFromProps:Mn,isChartPanelDehydratedProps:Pi,isChartPanelFigureMetadata:On,isChartPanelTableMetadata:it,isGLChartPanelState:Ei,isIrisGridPanelMetadata:Di,isLegacyIrisGridPanelMetadata:Fi,isWidgetPanelTooltipPropsV2:Si,setDashboardColumnSelectionValidator:oi,setDashboardConnection:Xa,setDashboardConsoleSettings:Ya,setDashboardFilterSets:ti,setDashboardIsolatedLinkerPanelId:gn,setDashboardLinks:ai,setDashboardSessionWrapper:Qa,useLoadTablePlugin:_i},Symbol.toStringTag,{value:"Module"}));export{En as C,Jd as D,Xn as F,as as I,vi as X,Qd as a,St as b,fi as c,Tn as d,ql as e,bi as f,gi as g,es as h,Qn as i,Ze as j,wl as u};
|
|
9
|
+
//# sourceMappingURL=index-8e66685a.js.map
|